dsh-codinput 0.3.1 → 0.3.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/client.js CHANGED
@@ -2,7 +2,7 @@ window.__ModuleLoader__.load({ id: "dsh-codinput", factory: (require) => {
2
2
  var module = { exports: {} };
3
3
  var exports = module.exports;
4
4
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
5
- "use strict";var xs=Object.defineProperty;var Fg=Object.getOwnPropertyDescriptor;var zg=Object.getOwnPropertyNames;var Wg=Object.prototype.hasOwnProperty;var Vg=(n,e,t)=>e in n?xs(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t;var Nh=(n,e)=>{for(var t in e)xs(n,t,{get:e[t],enumerable:!0})},$g=(n,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of zg(e))!Wg.call(n,r)&&r!==t&&xs(n,r,{get:()=>e[r],enumerable:!(i=Fg(e,r))||i.enumerable});return n};var Ug=n=>$g(xs({},"__esModule",{value:!0}),n);var ce=(n,e,t)=>Vg(n,typeof e!="symbol"?e+"":e,t);var iv={};Nh(iv,{CodinputBar:()=>oh,apply:()=>nv,inject:()=>tv,name:()=>ev});module.exports=Ug(iv);function Pe(){let n=window;return n.__dshCodinputDebug??=[],n.__dshCodinputErrs??=[],n.__dshCodinputTriggers??={},n.__dshCodinputKeyboard??={},n.__dshCodinputShell??={},n}function Xt(...n){let e=Pe();e.__dshCodinputDebug.push(n.length===1?n[0]:n),e.__dshCodinputDebug.length>400&&e.__dshCodinputDebug.splice(0,e.__dshCodinputDebug.length-400)}function Ie(n,e){let t=Pe();t.__dshCodinputErrs.push({scope:n,error:e instanceof Error?e.stack??e.message:String(e)}),t.__dshCodinputErrs.length>200&&t.__dshCodinputErrs.splice(0,t.__dshCodinputErrs.length-200)}function ll(n){Pe().__dshCodinputSessionId=n}function We(n,e){try{e()}catch(t){Ie(n,t)}}var Ss=require("react"),vs="dsh-codinput",hl={"head.edit":"\u7F16\u8F91","head.preview":"\u9884\u89C8","head.editOnly":"\u4EC5\u7F16\u8F91","head.previewOnly":"\u4EC5\u9884\u89C8","head.split":"\u7F16\u8F91 + \u9884\u89C8","editor.placeholder":"\u63CF\u8FF0\u4F60\u60F3\u8981\u6784\u5EFA\u7684\u5185\u5BB9\uFF0C/ \u8C03\u7528\u6307\u4EE4\uFF0C@ \u6587\u4EF6\u6216\u5BF9\u8BDD","preview.empty":"\u6682\u65E0\u53EF\u9884\u89C8\u5185\u5BB9","tool.command":"\u6307\u4EE4\uFF08/\uFF09","tool.send":"\u53D1\u9001","tool.model":"\u9009\u62E9\u6A21\u578B\uFF0C\u5F53\u524D {name}","tool.modelPlain":"\u9009\u62E9\u6A21\u578B","tool.context":"\u4E0A\u4E0B\u6587\u5DF2\u7528 {percent}%","tool.contextTitle":"\u4E0A\u4E0B\u6587\u5DF2\u7528","attach.group":"\u8349\u7A3F\u9644\u4EF6","attach.uploading":"\u4E0A\u4F20\u4E2D\u2026","attach.failed":"\u4E0A\u4F20\u5931\u8D25","attach.retry":"\u91CD\u8BD5\u4E0A\u4F20","attach.remove":"\u79FB\u9664\u9644\u4EF6 {name}","attach.scrollLeft":"\u5411\u5DE6\u6EDA\u52A8\u9644\u4EF6","attach.scrollRight":"\u5411\u53F3\u6EDA\u52A8\u9644\u4EF6","attach.channelUnavailable":"\u9644\u4EF6\u901A\u9053\u4E0D\u53EF\u7528","attach.pending":"\u5F85\u4E0A\u4F20\u6587\u4EF6 {name}","stats.session":"\u4F1A\u8BDD\u7EDF\u8BA1","stats.usage":"Token \u7528\u91CF","stats.turns":"{turns} \u8F6E {steps} \u6B65","stats.tps":"{tps} tok/s","stats.modelTime":"\u6A21\u578B\u7528\u65F6","stats.toolTime":"\u5DE5\u5177\u8C03\u7528\u7528\u65F6","stats.ttft":"\u9996 token \u5E73\u5747\uFF08TTFT\uFF09","stats.tpsLabel":"\u8F93\u51FA\u901F\u5EA6\uFF08TPS\uFF09","stats.totalTokens":"{tokens} tok","stats.cacheHit":"\u7F13\u5B58\u547D\u4E2D {percent}%","stats.cacheHitLabel":"\u7F13\u5B58\u547D\u4E2D","stats.cacheRead":"\u7F13\u5B58\u8BFB\u53D6","stats.cacheWrite":"\u7F13\u5B58\u5199\u5165","stats.output":"\u8F93\u51FA","stats.uncached":"\u672A\u7F13\u5B58\u8F93\u5165","stats.breakdown":"\u4E0A\u4E0B\u6587\u5206\u6BB5","stats.prompt":"\u7CFB\u7EDF\u63D0\u793A\u8BCD","stats.tools":"\u5DE5\u5177\u5B9A\u4E49","stats.messages":"\u5BF9\u8BDD\u6D88\u606F","menu.model":"\u6A21\u578B","menu.reasoning":"\u63A8\u7406\u7B49\u7EA7","menu.reasoningNone":"\u5F53\u524D\u6A21\u578B\u672A\u63D0\u4F9B\u63A8\u7406\u7B49\u7EA7\u3002","menu.source.command":"\u6307\u4EE4","menu.source.skill":"\u6280\u80FD","menu.source.subagent":"\u5B50\u667A\u80FD\u4F53","menu.drill":"\u8FDB\u5165\u76EE\u5F55","menu.nav":"\u76EE\u5F55\u5BFC\u822A","menu.triggerCandidates":"\u89E6\u53D1\u5019\u9009\u5EFA\u8BAE","menu.empty":"\u6CA1\u6709\u5339\u914D\u9879","menu.loading":"\u52A0\u8F7D\u4E2D\u2026","menu.loadFailed":"\u52A0\u8F7D\u5931\u8D25","menu.refreshingModels":"\u6B63\u5728\u5237\u65B0\u6A21\u578B\u5217\u8868\u2026","menu.noModels":"\u6CA1\u6709\u53EF\u7528\u7684\u6A21\u578B\u3002","menu.filter":"\u7B5B\u9009\u9009\u9879\u2026","popup.ack":"\u6211\u5DF2\u4E86\u89E3\u8BE5\u64CD\u4F5C\u7684\u5F71\u54CD","perm.trigger":"\u8BBF\u95EE\u6A21\u5F0F\uFF0C\u5F53\u524D\uFF1A{name}","perm.confirmTitle":"\u786E\u8BA4\u542F\u7528\u5B8C\u5168\u6743\u9650\uFF1F","perm.confirmEnable":"\u542F\u7528\u5B8C\u5168\u6743\u9650","perm.warning":"\u542F\u7528\u5B8C\u5168\u6743\u9650\u540E\uFF0C\u667A\u80FD\u4F53\u5C06\u51CF\u5C11\u786E\u8BA4\u6B65\u9AA4\uFF0C\u5E76\u4E14\u53EF\u4EE5\u76F4\u63A5\u6267\u884C\u66F4\u591A\u64CD\u4F5C\uFF0C\u5305\u62EC\u654F\u611F\u64CD\u4F5C\u3001\u6587\u4EF6\u4FEE\u6539\u6216\u5916\u90E8\u547D\u4EE4\u3002\u4EC5\u5EFA\u8BAE\u5728\u4F60\u4FE1\u4EFB\u5F53\u524D\u4EFB\u52A1\u65F6\u4F7F\u7528\u3002","perm.ack":"\u6211\u5DF2\u4E86\u89E3\u98CE\u9669\uFF0C\u5E76\u613F\u610F\u7EE7\u7EED","perm.cancel":"\u53D6\u6D88","perm.close":"\u5173\u95ED","perm.switchFailed":"\u6743\u9650\u5207\u6362\u5931\u8D25","perm.channelRejected":"\u547D\u4EE4\u901A\u9053\u62D2\u7EDD","perm.noInputSurface":"\u65E0\u53EF\u7528\u8F93\u5165\u9762","perm.preset.read-only":"\u4EC5\u53EF\u67E5\u770B","perm.preset.workspace-write":"\u5DE5\u4F5C\u533A\u5185\u4FEE\u6539","perm.preset.danger-full-access":"\u5B8C\u5168\u6743\u9650","set.enabled":"\u542F\u7528\u63A5\u7BA1","set.enabledDesc":"\u5173\u95ED\u5373\u6062\u590D\u5B98\u65B9\u8F93\u5165\u6846\uFF0C\u8349\u7A3F\u4E0D\u4E22\uFF1B/codinput \u540C\u6837\u53EF\u5207\u6362","set.lineNumbers":"\u663E\u793A\u884C\u53F7","set.lineNumbersDesc":"\u5F53\u524D\u884C\u4E0E\u884C\u53F7\u9AD8\u4EAE\u5E38\u5F00","set.font":"\u7F16\u8F91\u5668\u5B57\u4F53","set.fontDesc":"CSS font-family\uFF0C\u7559\u7A7A\u6062\u590D\u9ED8\u8BA4","set.sendKey":"\u53D1\u9001\u5FEB\u6377\u952E","set.sendKeyDesc":"\u70B9\u51FB\u540E\u6309\u4E0B\u4EFB\u610F\u7EC4\u5408\u5B8C\u6210\u5F55\u5236\uFF1B\u4E0E\u6362\u884C\u5FEB\u6377\u952E\u4E0D\u5F97\u76F8\u540C","set.lineBreakKey":"\u6362\u884C\u5FEB\u6377\u952E","set.lineBreakKeyDesc":"\u70B9\u51FB\u540E\u6309\u4E0B\u4EFB\u610F\u7EC4\u5408\u5B8C\u6210\u5F55\u5236\uFF1B\u4E0E\u53D1\u9001\u5FEB\u6377\u952E\u4E0D\u5F97\u76F8\u540C","set.defaultView":"\u9ED8\u8BA4\u89C6\u56FE","set.defaultViewDesc":"\u63A5\u7BA1\u9762\u677F\u521D\u59CB\u663E\u793A\u7684\u5F62\u6001","set.recording":"\u6309\u952E\u2026","set.reset":"\u6062\u590D\u9ED8\u8BA4","set.resetAction":"\u91CD\u7F6E","set.resetAll":"\u6E05\u7A7A\u5168\u90E8 Codinput \u504F\u597D","ball.label":"\u5C55\u5F00 Codinput \u8F93\u5165\u9762\u677F","ball.title":"\u5C55\u5F00 Codinput","side.notice":"\u672C\u4F1A\u8BDD\u7684\u8F93\u5165\u9762\u5DF2\u5728\u53E6\u4E00\u4E2A\u5206\u680F\u4E2D\u6253\u5F00\uFF08\u8F93\u5165\u5165\u53E3\u552F\u4E00\uFF09\u3002","side.guideDesc":"\u4EE3\u7801\u7F16\u8F91\u5668\u98CE\u683C\u7684\u8F93\u5165\u9762\u677F\uFF1B\u5F00\u542F\u671F\u95F4\u4E3B\u8F93\u5165\u6846\u7531\u672C\u9762\u677F\u63A5\u7BA1\uFF08\u5171\u7528\u540C\u4E00\u53F0\u8F93\u5165\u673A\uFF09","side.disabled":"Codinput \u63A5\u7BA1\u5DF2\u5173\u95ED\uFF1A\u4E3B\u8F93\u5165\u5728\u539F\u8F93\u5165\u4F4D\uFF08\u5B98\u65B9\u8F93\u5165\u6846\uFF09\u3002\u8F93\u5165 /codinput \u6216\u5230 \u8BBE\u7F6E \u2192 Codinput \u91CD\u65B0\u5F00\u542F\u3002","tool.attach":"\u6587\u4EF6","tool.stop":"\u505C\u6B62","image.preview":"\u539F\u56FE\u9884\u89C8","image.closePreview":"\u5173\u95ED\u539F\u56FE\u9884\u89C8","image.openOriginal":"\u67E5\u770B\u539F\u56FE","image.openOriginalLabel":"{name}\uFF0C\u70B9\u51FB\u67E5\u770B\u539F\u56FE","cmd.enter":"\u8FDB\u5165 Codinput \u8F93\u5165\u63A5\u7BA1","cmd.exit":"\u9000\u51FA Codinput\uFF0C\u6062\u590D\u5B98\u65B9\u8F93\u5165\u6846"},Bh={"head.edit":"Edit","head.preview":"Preview","head.editOnly":"Edit only","head.previewOnly":"Preview only","head.split":"Edit + Preview","editor.placeholder":"Describe what you want to build \u2014 / for commands, @ for files or chats","preview.empty":"Nothing to preview","tool.command":"Commands (/)","tool.send":"Send","tool.model":"Select model, current {name}","tool.modelPlain":"Select model","tool.context":"Context used {percent}%","tool.contextTitle":"Context used","attach.group":"Draft attachments","attach.uploading":"Uploading\u2026","attach.failed":"Upload failed","attach.retry":"Retry upload","attach.remove":"Remove attachment {name}","attach.scrollLeft":"Scroll attachments left","attach.scrollRight":"Scroll attachments right","attach.channelUnavailable":"Attachment channel unavailable","attach.pending":"Pending file {name}","stats.session":"Session stats","stats.usage":"Token usage","stats.turns":"{turns} turns \xB7 {steps} steps","stats.tps":"{tps} tok/s","stats.modelTime":"Model time","stats.toolTime":"Tool call time","stats.ttft":"Avg first token (TTFT)","stats.tpsLabel":"Output speed (TPS)","stats.totalTokens":"{tokens} tok","stats.cacheHit":"Cache hit {percent}%","stats.cacheHitLabel":"Cache hit","stats.cacheRead":"Cache read","stats.cacheWrite":"Cache write","stats.output":"Output","stats.uncached":"Uncached input","stats.breakdown":"Context breakdown","stats.prompt":"System prompt","stats.tools":"Tool definitions","stats.messages":"Conversation","menu.model":"Model","menu.reasoning":"Reasoning effort","menu.reasoningNone":"The current model exposes no reasoning effort.","menu.source.command":"Commands","menu.source.skill":"Skills","menu.source.subagent":"Subagents","menu.drill":"Open folder","menu.nav":"Folder navigation","menu.triggerCandidates":"Trigger suggestions","menu.empty":"No matches","menu.loading":"Loading\u2026","menu.loadFailed":"Failed to load","menu.refreshingModels":"Refreshing model list\u2026","menu.noModels":"No models available.","menu.filter":"Filter options\u2026","popup.ack":"I understand the impact of this action","perm.trigger":"Access mode, current: {name}","perm.confirmTitle":"Enable full access?","perm.confirmEnable":"Enable full access","perm.warning":"With full access the agent skips most confirmations and can perform more actions directly, including sensitive operations, file writes, or external commands. Only use it when you trust the current task.","perm.ack":"I understand the risk and want to continue","perm.cancel":"Cancel","perm.close":"Close","perm.switchFailed":"Failed to switch permission","perm.channelRejected":"Command channel rejected","perm.noInputSurface":"No input surface available","perm.preset.read-only":"Read only","perm.preset.workspace-write":"Write in workspace","perm.preset.danger-full-access":"Full access","set.enabled":"Take over composer","set.enabledDesc":"Turning it off restores the official composer; the draft is kept. /codinput toggles it too.","set.lineNumbers":"Show line numbers","set.lineNumbersDesc":"The current line and its gutter number stay highlighted","set.font":"Editor font","set.fontDesc":"CSS font-family; leave empty for the default","set.sendKey":"Send shortcut","set.sendKeyDesc":"Click, then press any combination to record it; must differ from the line-break shortcut","set.lineBreakKey":"Line-break shortcut","set.lineBreakKeyDesc":"Click, then press any combination to record it; must differ from the send shortcut","set.defaultView":"Default view","set.defaultViewDesc":"Initial layout of the takeover panel","set.recording":"Press keys\u2026","set.reset":"Reset","set.resetAction":"Reset","set.resetAll":"Clear all Codinput preferences","ball.label":"Open the Codinput input panel","ball.title":"Open Codinput","side.notice":"This session's input panel is already open in another split pane (only one input surface exists).","side.guideDesc":"Code-editor style input panel. While enabled it takes over the composer (sharing the same input machine).","side.disabled":"Codinput takeover is off: the composer is back at its original place (official input). Type /codinput or open Settings \u2192 Codinput to re-enable.","tool.attach":"File","tool.stop":"Stop","image.preview":"Original image preview","image.closePreview":"Close original image preview","image.openOriginal":"View original","image.openOriginalLabel":"{name}, click to view the original","cmd.enter":"Enable the Codinput composer takeover","cmd.exit":"Disable Codinput and restore the official composer"},_h=null,ir=null,ks="zh",cl=new Set,al=new Map;function Kg(){for(let n of cl)n()}function jg(n,e){return e?n.replace(/\{(\w+)\}/g,(t,i)=>{let r=e[i];return r===void 0?t:String(r)}):n}function Gg(){return ks.startsWith("zh")?hl:Bh}function Hh(n){let e=n;if(e){_h=e;try{e.register?.(vs,"zh",hl),e.register?.(vs,"en",Bh),ir=e.bind?.(vs)??null}catch{try{ir=e.bind?.(vs)??null}catch{ir=null}}try{let t=e.getSnapshot?.();t?.active&&(ks=t.active),e.subscribe?.(()=>{let i=e.getSnapshot?.();i?.active&&i.active!==ks&&(ks=i.active),Kg()})}catch{}}}function Fh(n){if(!al.has(n)){let e=null;try{e=_h?.bind?.(n)??null}catch{e=null}al.set(n,e)}return al.get(n)??null}function qg(n){return cl.add(n),()=>{cl.delete(n)}}function zh(n,e){if(ir)try{let i=ir(n,e);if(i&&i!==n)return i}catch{}let t=Gg()[n]??hl[n];return t===void 0?void 0:jg(t,e)}function k(n,e){return zh(n,e)??n}function Ti(n,e){return zh(n,e)}function Yt(){let[,n]=(0,Ss.useState)(0);return(0,Ss.useEffect)(()=>qg(()=>n(e=>e+1)),[]),k}var X={};function Wh(n){We("stash.conversation",()=>{n.inject(["conversation"],e=>{X.conversation=e.conversation})}),We("stash.services",()=>{n.inject(["slots","sessions","commandUi"],e=>{X.slots=e.slots,X.sessions=e.sessions,X.commandUi=e.commandUi})}),We("stash.sidebarRight",()=>{n.inject(["slots","sidebarRightTabs","sidebarRight"],e=>{X.sidebarRight=e.sidebarRight})}),We("stash.modelDirectories",()=>{n.inject(["modelDirectories","sessions","remote","remote.session"],e=>{X.modelDirectories=e.modelDirectories})}),We("i18n.install",()=>{n.inject(["locale"],e=>{Hh(e.locale)})})}var Vh="dsh-codinput-styles",Xg=`
5
+ "use strict";var Ds=Object.defineProperty;var a0=Object.getOwnPropertyDescriptor;var c0=Object.getOwnPropertyNames;var h0=Object.prototype.hasOwnProperty;var u0=(n,e,t)=>e in n?Ds(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t;var Xh=(n,e)=>{for(var t in e)Ds(n,t,{get:e[t],enumerable:!0})},d0=(n,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of c0(e))!h0.call(n,r)&&r!==t&&Ds(n,r,{get:()=>e[r],enumerable:!(i=a0(e,r))||i.enumerable});return n};var f0=n=>d0(Ds({},"__esModule",{value:!0}),n);var ce=(n,e,t)=>u0(n,typeof e!="symbol"?e+"":e,t);var Dv={};Xh(Dv,{CodinputBar:()=>kh,apply:()=>Rv,inject:()=>Mv,name:()=>Ev});module.exports=f0(Dv);function Be(){let n=window;return n.__dshCodinputDebug??=[],n.__dshCodinputErrs??=[],n.__dshCodinputTriggers??={},n.__dshCodinputKeyboard??={},n.__dshCodinputShell??={},n}function qt(...n){let e=Be();e.__dshCodinputDebug.push(n.length===1?n[0]:n),e.__dshCodinputDebug.length>400&&e.__dshCodinputDebug.splice(0,e.__dshCodinputDebug.length-400)}function Ee(n,e){let t=Be();t.__dshCodinputErrs.push({scope:n,error:e instanceof Error?e.stack??e.message:String(e)}),t.__dshCodinputErrs.length>200&&t.__dshCodinputErrs.splice(0,t.__dshCodinputErrs.length-200)}function xl(n){Be().__dshCodinputSessionId=n}function $e(n,e){try{e()}catch(t){Ee(n,t)}}var Os=require("react"),Ls="dsh-codinput",Sl={"head.edit":"\u7F16\u8F91","head.preview":"\u9884\u89C8","head.editOnly":"\u4EC5\u7F16\u8F91","head.previewOnly":"\u4EC5\u9884\u89C8","head.split":"\u7F16\u8F91 + \u9884\u89C8","editor.placeholder":"\u63CF\u8FF0\u4F60\u60F3\u8981\u6784\u5EFA\u7684\u5185\u5BB9\uFF0C/ \u8C03\u7528\u6307\u4EE4\uFF0C@ \u6587\u4EF6\u6216\u5BF9\u8BDD","preview.empty":"\u6682\u65E0\u53EF\u9884\u89C8\u5185\u5BB9","tool.command":"\u6307\u4EE4\uFF08/\uFF09","tool.send":"\u53D1\u9001","tool.model":"\u9009\u62E9\u6A21\u578B\uFF0C\u5F53\u524D {name}","tool.modelPlain":"\u9009\u62E9\u6A21\u578B","tool.context":"\u4E0A\u4E0B\u6587\u5DF2\u7528 {percent}%","tool.contextTitle":"\u4E0A\u4E0B\u6587\u5DF2\u7528","attach.group":"\u8349\u7A3F\u9644\u4EF6","attach.uploading":"\u4E0A\u4F20\u4E2D\u2026","attach.failed":"\u4E0A\u4F20\u5931\u8D25","attach.retry":"\u91CD\u8BD5\u4E0A\u4F20","attach.remove":"\u79FB\u9664\u9644\u4EF6 {name}","attach.scrollLeft":"\u5411\u5DE6\u6EDA\u52A8\u9644\u4EF6","attach.scrollRight":"\u5411\u53F3\u6EDA\u52A8\u9644\u4EF6","attach.channelUnavailable":"\u9644\u4EF6\u901A\u9053\u4E0D\u53EF\u7528","attach.pending":"\u5F85\u4E0A\u4F20\u6587\u4EF6 {name}","stats.session":"\u4F1A\u8BDD\u7EDF\u8BA1","stats.usage":"Token \u7528\u91CF","stats.turns":"{turns} \u8F6E {steps} \u6B65","stats.tps":"{tps} tok/s","stats.modelTime":"\u6A21\u578B\u7528\u65F6","stats.toolTime":"\u5DE5\u5177\u8C03\u7528\u7528\u65F6","stats.ttft":"\u9996 token \u5E73\u5747\uFF08TTFT\uFF09","stats.tpsLabel":"\u8F93\u51FA\u901F\u5EA6\uFF08TPS\uFF09","stats.totalTokens":"{tokens} tok","stats.cacheHit":"\u7F13\u5B58\u547D\u4E2D {percent}%","stats.cacheHitLabel":"\u7F13\u5B58\u547D\u4E2D","stats.cacheRead":"\u7F13\u5B58\u8BFB\u53D6","stats.cacheWrite":"\u7F13\u5B58\u5199\u5165","stats.output":"\u8F93\u51FA","stats.uncached":"\u672A\u7F13\u5B58\u8F93\u5165","stats.breakdown":"\u4E0A\u4E0B\u6587\u5206\u6BB5","stats.prompt":"\u7CFB\u7EDF\u63D0\u793A\u8BCD","stats.tools":"\u5DE5\u5177\u5B9A\u4E49","stats.messages":"\u5BF9\u8BDD\u6D88\u606F","menu.model":"\u6A21\u578B","menu.reasoning":"\u63A8\u7406\u7B49\u7EA7","menu.reasoningNone":"\u5F53\u524D\u6A21\u578B\u672A\u63D0\u4F9B\u63A8\u7406\u7B49\u7EA7\u3002","menu.source.command":"\u6307\u4EE4","menu.source.skill":"\u6280\u80FD","menu.source.subagent":"\u5B50\u667A\u80FD\u4F53","menu.drill":"\u8FDB\u5165\u76EE\u5F55","menu.nav":"\u76EE\u5F55\u5BFC\u822A","menu.triggerCandidates":"\u89E6\u53D1\u5019\u9009\u5EFA\u8BAE","menu.empty":"\u6CA1\u6709\u5339\u914D\u9879","menu.loading":"\u52A0\u8F7D\u4E2D\u2026","menu.loadFailed":"\u52A0\u8F7D\u5931\u8D25","menu.refreshingModels":"\u6B63\u5728\u5237\u65B0\u6A21\u578B\u5217\u8868\u2026","menu.noModels":"\u6CA1\u6709\u53EF\u7528\u7684\u6A21\u578B\u3002","menu.filter":"\u7B5B\u9009\u9009\u9879\u2026","popup.ack":"\u6211\u5DF2\u4E86\u89E3\u8BE5\u64CD\u4F5C\u7684\u5F71\u54CD","perm.trigger":"\u8BBF\u95EE\u6A21\u5F0F\uFF0C\u5F53\u524D\uFF1A{name}","perm.confirmTitle":"\u786E\u8BA4\u542F\u7528\u5B8C\u5168\u6743\u9650\uFF1F","perm.confirmEnable":"\u542F\u7528\u5B8C\u5168\u6743\u9650","perm.warning":"\u542F\u7528\u5B8C\u5168\u6743\u9650\u540E\uFF0C\u667A\u80FD\u4F53\u5C06\u51CF\u5C11\u786E\u8BA4\u6B65\u9AA4\uFF0C\u5E76\u4E14\u53EF\u4EE5\u76F4\u63A5\u6267\u884C\u66F4\u591A\u64CD\u4F5C\uFF0C\u5305\u62EC\u654F\u611F\u64CD\u4F5C\u3001\u6587\u4EF6\u4FEE\u6539\u6216\u5916\u90E8\u547D\u4EE4\u3002\u4EC5\u5EFA\u8BAE\u5728\u4F60\u4FE1\u4EFB\u5F53\u524D\u4EFB\u52A1\u65F6\u4F7F\u7528\u3002","perm.ack":"\u6211\u5DF2\u4E86\u89E3\u98CE\u9669\uFF0C\u5E76\u613F\u610F\u7EE7\u7EED","perm.cancel":"\u53D6\u6D88","perm.close":"\u5173\u95ED","perm.switchFailed":"\u6743\u9650\u5207\u6362\u5931\u8D25","perm.channelRejected":"\u547D\u4EE4\u901A\u9053\u62D2\u7EDD","perm.noInputSurface":"\u65E0\u53EF\u7528\u8F93\u5165\u9762","perm.preset.read-only":"\u4EC5\u53EF\u67E5\u770B","perm.preset.workspace-write":"\u5DE5\u4F5C\u533A\u5185\u4FEE\u6539","perm.preset.danger-full-access":"\u5B8C\u5168\u6743\u9650","set.enabled":"\u542F\u7528\u63A5\u7BA1","set.enabledDesc":"\u5173\u95ED\u5373\u6062\u590D\u5B98\u65B9\u8F93\u5165\u6846\uFF0C\u8349\u7A3F\u4E0D\u4E22\uFF1B/codinput \u540C\u6837\u53EF\u5207\u6362","set.lineNumbers":"\u663E\u793A\u884C\u53F7","set.lineNumbersDesc":"\u5F53\u524D\u884C\u4E0E\u884C\u53F7\u9AD8\u4EAE\u5E38\u5F00","set.font":"\u7F16\u8F91\u5668\u5B57\u4F53","set.fontDesc":"CSS font-family\uFF0C\u7559\u7A7A\u6062\u590D\u9ED8\u8BA4","set.sendKey":"\u53D1\u9001\u5FEB\u6377\u952E","set.sendKeyDesc":"\u70B9\u51FB\u540E\u6309\u4E0B\u4EFB\u610F\u7EC4\u5408\u5B8C\u6210\u5F55\u5236\uFF1B\u4E0E\u6362\u884C\u5FEB\u6377\u952E\u4E0D\u5F97\u76F8\u540C","set.lineBreakKey":"\u6362\u884C\u5FEB\u6377\u952E","set.lineBreakKeyDesc":"\u70B9\u51FB\u540E\u6309\u4E0B\u4EFB\u610F\u7EC4\u5408\u5B8C\u6210\u5F55\u5236\uFF1B\u4E0E\u53D1\u9001\u5FEB\u6377\u952E\u4E0D\u5F97\u76F8\u540C","set.defaultView":"\u9ED8\u8BA4\u89C6\u56FE","set.defaultViewDesc":"\u63A5\u7BA1\u9762\u677F\u521D\u59CB\u663E\u793A\u7684\u5F62\u6001","set.recording":"\u6309\u952E\u2026","set.reset":"\u6062\u590D\u9ED8\u8BA4","set.resetAction":"\u91CD\u7F6E","set.resetAll":"\u6E05\u7A7A\u5168\u90E8 Codinput \u504F\u597D","ball.label":"\u5C55\u5F00 Codinput \u8F93\u5165\u9762\u677F","ball.title":"\u5C55\u5F00 Codinput","side.notice":"\u672C\u4F1A\u8BDD\u7684\u8F93\u5165\u9762\u5DF2\u5728\u53E6\u4E00\u4E2A\u5206\u680F\u4E2D\u6253\u5F00\uFF08\u8F93\u5165\u5165\u53E3\u552F\u4E00\uFF09\u3002","side.guideDesc":"\u4EE3\u7801\u7F16\u8F91\u5668\u98CE\u683C\u7684\u8F93\u5165\u9762\u677F\uFF1B\u5F00\u542F\u671F\u95F4\u4E3B\u8F93\u5165\u6846\u7531\u672C\u9762\u677F\u63A5\u7BA1\uFF08\u5171\u7528\u540C\u4E00\u53F0\u8F93\u5165\u673A\uFF09","side.disabled":"Codinput \u63A5\u7BA1\u5DF2\u5173\u95ED\uFF1A\u4E3B\u8F93\u5165\u5728\u539F\u8F93\u5165\u4F4D\uFF08\u5B98\u65B9\u8F93\u5165\u6846\uFF09\u3002\u8F93\u5165 /codinput \u6216\u5230 \u8BBE\u7F6E \u2192 Codinput \u91CD\u65B0\u5F00\u542F\u3002","tool.attach":"\u6587\u4EF6","tool.stop":"\u505C\u6B62","image.preview":"\u539F\u56FE\u9884\u89C8","image.closePreview":"\u5173\u95ED\u539F\u56FE\u9884\u89C8","image.openOriginal":"\u67E5\u770B\u539F\u56FE","image.openOriginalLabel":"{name}\uFF0C\u70B9\u51FB\u67E5\u770B\u539F\u56FE","cmd.enter":"\u8FDB\u5165 Codinput \u8F93\u5165\u63A5\u7BA1","cmd.exit":"\u9000\u51FA Codinput\uFF0C\u6062\u590D\u5B98\u65B9\u8F93\u5165\u6846"},Yh={"head.edit":"Edit","head.preview":"Preview","head.editOnly":"Edit only","head.previewOnly":"Preview only","head.split":"Edit + Preview","editor.placeholder":"Describe what you want to build \u2014 / for commands, @ for files or chats","preview.empty":"Nothing to preview","tool.command":"Commands (/)","tool.send":"Send","tool.model":"Select model, current {name}","tool.modelPlain":"Select model","tool.context":"Context used {percent}%","tool.contextTitle":"Context used","attach.group":"Draft attachments","attach.uploading":"Uploading\u2026","attach.failed":"Upload failed","attach.retry":"Retry upload","attach.remove":"Remove attachment {name}","attach.scrollLeft":"Scroll attachments left","attach.scrollRight":"Scroll attachments right","attach.channelUnavailable":"Attachment channel unavailable","attach.pending":"Pending file {name}","stats.session":"Session stats","stats.usage":"Token usage","stats.turns":"{turns} turns \xB7 {steps} steps","stats.tps":"{tps} tok/s","stats.modelTime":"Model time","stats.toolTime":"Tool call time","stats.ttft":"Avg first token (TTFT)","stats.tpsLabel":"Output speed (TPS)","stats.totalTokens":"{tokens} tok","stats.cacheHit":"Cache hit {percent}%","stats.cacheHitLabel":"Cache hit","stats.cacheRead":"Cache read","stats.cacheWrite":"Cache write","stats.output":"Output","stats.uncached":"Uncached input","stats.breakdown":"Context breakdown","stats.prompt":"System prompt","stats.tools":"Tool definitions","stats.messages":"Conversation","menu.model":"Model","menu.reasoning":"Reasoning effort","menu.reasoningNone":"The current model exposes no reasoning effort.","menu.source.command":"Commands","menu.source.skill":"Skills","menu.source.subagent":"Subagents","menu.drill":"Open folder","menu.nav":"Folder navigation","menu.triggerCandidates":"Trigger suggestions","menu.empty":"No matches","menu.loading":"Loading\u2026","menu.loadFailed":"Failed to load","menu.refreshingModels":"Refreshing model list\u2026","menu.noModels":"No models available.","menu.filter":"Filter options\u2026","popup.ack":"I understand the impact of this action","perm.trigger":"Access mode, current: {name}","perm.confirmTitle":"Enable full access?","perm.confirmEnable":"Enable full access","perm.warning":"With full access the agent skips most confirmations and can perform more actions directly, including sensitive operations, file writes, or external commands. Only use it when you trust the current task.","perm.ack":"I understand the risk and want to continue","perm.cancel":"Cancel","perm.close":"Close","perm.switchFailed":"Failed to switch permission","perm.channelRejected":"Command channel rejected","perm.noInputSurface":"No input surface available","perm.preset.read-only":"Read only","perm.preset.workspace-write":"Write in workspace","perm.preset.danger-full-access":"Full access","set.enabled":"Take over composer","set.enabledDesc":"Turning it off restores the official composer; the draft is kept. /codinput toggles it too.","set.lineNumbers":"Show line numbers","set.lineNumbersDesc":"The current line and its gutter number stay highlighted","set.font":"Editor font","set.fontDesc":"CSS font-family; leave empty for the default","set.sendKey":"Send shortcut","set.sendKeyDesc":"Click, then press any combination to record it; must differ from the line-break shortcut","set.lineBreakKey":"Line-break shortcut","set.lineBreakKeyDesc":"Click, then press any combination to record it; must differ from the send shortcut","set.defaultView":"Default view","set.defaultViewDesc":"Initial layout of the takeover panel","set.recording":"Press keys\u2026","set.reset":"Reset","set.resetAction":"Reset","set.resetAll":"Clear all Codinput preferences","ball.label":"Open the Codinput input panel","ball.title":"Open Codinput","side.notice":"This session's input panel is already open in another split pane (only one input surface exists).","side.guideDesc":"Code-editor style input panel. While enabled it takes over the composer (sharing the same input machine).","side.disabled":"Codinput takeover is off: the composer is back at its original place (official input). Type /codinput or open Settings \u2192 Codinput to re-enable.","tool.attach":"File","tool.stop":"Stop","image.preview":"Original image preview","image.closePreview":"Close original image preview","image.openOriginal":"View original","image.openOriginalLabel":"{name}, click to view the original","cmd.enter":"Enable the Codinput composer takeover","cmd.exit":"Disable Codinput and restore the official composer"},Jh=null,ar=null,Ps="zh",kl=new Set,vl=new Map;function p0(){for(let n of kl)n()}function m0(n,e){return e?n.replace(/\{(\w+)\}/g,(t,i)=>{let r=e[i];return r===void 0?t:String(r)}):n}function g0(){return Ps.startsWith("zh")?Sl:Yh}function Zh(n){let e=n;if(e){Jh=e;try{e.register?.(Ls,"zh",Sl),e.register?.(Ls,"en",Yh),ar=e.bind?.(Ls)??null}catch{try{ar=e.bind?.(Ls)??null}catch{ar=null}}try{let t=e.getSnapshot?.();t?.active&&(Ps=t.active),e.subscribe?.(()=>{let i=e.getSnapshot?.();i?.active&&i.active!==Ps&&(Ps=i.active),p0()})}catch{}}}function Qh(n){if(!vl.has(n)){let e=null;try{e=Jh?.bind?.(n)??null}catch{e=null}vl.set(n,e)}return vl.get(n)??null}function b0(n){return kl.add(n),()=>{kl.delete(n)}}function eu(n,e){if(ar)try{let i=ar(n,e);if(i&&i!==n)return i}catch{}let t=g0()[n]??Sl[n];return t===void 0?void 0:m0(t,e)}function v(n,e){return eu(n,e)??n}function Di(n,e){return eu(n,e)}function Gt(){let[,n]=(0,Os.useState)(0);return(0,Os.useEffect)(()=>b0(()=>n(e=>e+1)),[]),v}var J={};function tu(n){$e("stash.conversation",()=>{n.inject(["conversation"],e=>{J.conversation=e.conversation})}),$e("stash.services",()=>{n.inject(["slots","sessions","commandUi"],e=>{J.slots=e.slots,J.sessions=e.sessions,J.commandUi=e.commandUi})}),$e("stash.sidebarRight",()=>{n.inject(["slots","sidebarRightTabs","sidebarRight"],e=>{J.sidebarRight=e.sidebarRight})}),$e("stash.modelDirectories",()=>{n.inject(["modelDirectories","sessions","remote","remote.session"],e=>{J.modelDirectories=e.modelDirectories})}),$e("i18n.install",()=>{n.inject(["locale"],e=>{Zh(e.locale)})})}var nu="dsh-codinput-styles",y0=`
6
6
  /* ===== \u62D6\u6587\u4EF6\u5165\u5361\u7247\uFF1A\u843D\u533A\u63D0\u793A\uFF08\u7C98\u8D34/\u62D6\u5165\u9644\u4EF6\u5165\u53E3\uFF09===== */
7
7
  .dci-card[data-drop] { outline: 2px solid var(--dsw-alias-state-business-primary, currentColor); outline-offset: -2px; }
8
8
 
@@ -72,7 +72,8 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
72
72
  .dci-preview blockquote { margin: 0.5em 0; padding: 0.1em 0.9em; border-left: 3px solid color-mix(in srgb, currentColor 22%, transparent); opacity: 0.85; }
73
73
  .dci-preview table { border-collapse: collapse; margin: 0.6em 0; }
74
74
  .dci-preview th, .dci-preview td { border: 1px solid color-mix(in srgb, currentColor 18%, transparent); padding: 4px 9px; }
75
- .dci-preview a { color: #4c8dff; } .dci-preview img { max-width: 100%; } .dci-preview hr { border: none;
75
+ /* \u9884\u89C8\u94FE\u63A5\u8D70\u5B98\u65B9 markdown \u540C\u6B3E alias-link token\uFF08\u5B98\u65B9 _markdown_ a \u9010\u503C\u6838\u5BF9\uFF09\u3002 */
76
+ .dci-preview a { color: var(--dsw-alias-link, #4c8dff); } .dci-preview img { max-width: 100%; } .dci-preview hr { border: none;
76
77
  border-top: 1px solid color-mix(in srgb, currentColor 14%, transparent); }
77
78
 
78
79
  /* ===== \u5DE5\u5177\u884C\uFF08\u5B98\u65B9 InputBar .row / .tools / .trailing\uFF09===== */
@@ -97,10 +98,13 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
97
98
  .dci-add:hover:not(:disabled) { background: var(--dsw-alias-interactive-bg-hover-solid, color-mix(in srgb, currentColor 14%, transparent)); }
98
99
  .dci-add:disabled { opacity: 0.5; cursor: default; }
99
100
 
100
- /* \u4E0B\u62C9\u89E6\u53D1\uFF08\u5B98\u65B9 PermissionSelect / ModelSelection .trigger\uFF09*/
101
+ /* \u4E0B\u62C9\u89E6\u53D1\uFF08\u5B98\u65B9 PermissionSelect / ModelSelect .trigger\uFF09\u3002radius \u5B98\u65B9\u8D70
102
+ * --dsw-radius-sm\uFF0C\u65E0 token \u7684\u65E7\u5BBF\u4E3B\uFF080.1.5-rc.3\uFF09\u56DE\u9000\u539F 24px \u89C6\u89C9\uFF1B
103
+ * \u6A21\u578B\u89E6\u53D1\u5668\u5B98\u65B9 font-weight 400\uFF08\u6743\u9650 500\uFF09\uFF0C\u7ECF [data-model] \u533A\u5206\u3002*/
101
104
  .dci-trigger { min-width: 0; max-width: 220px; height: 28px; color: var(--dsw-alias-label-secondary, currentColor); cursor: pointer;
102
- background: transparent; border: none; border-radius: 24px; outline: none; align-items: center; gap: 4px;
105
+ background: transparent; border: none; border-radius: var(--dsw-radius-sm, 24px); outline: none; align-items: center; gap: 4px;
103
106
  padding: 0 4px 0 8px; font-size: 13px; font-weight: 500; line-height: 20px; display: inline-flex; }
107
+ .dci-trigger[data-model] { font-weight: 400; }
104
108
  .dci-trigger:hover:not(:disabled) { background: var(--dsw-alias-interactive-bg-hover, color-mix(in srgb, currentColor 8%, transparent)); }
105
109
  .dci-trigger:focus-visible { box-shadow: 0 0 0 2px var(--dsw-alias-border-l3, transparent); }
106
110
  .dci-trigger:disabled { color: var(--dsw-alias-label-dimmed, currentColor); cursor: default; opacity: 0.5; }
@@ -118,14 +122,19 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
118
122
  .dci-send:hover:not(:disabled) { background: var(--dsw-alias-button-info-hover, color-mix(in srgb, currentColor 70%, transparent)); }
119
123
  .dci-send:disabled { opacity: 0.4; cursor: default; }
120
124
 
121
- /* ===== \u83DC\u5355\uFF08\u5B98\u65B9 primitives Menu\uFF1Ar20 \u5361\u7247 / item r10 / side-top \u5F39\u51FA\uFF09===== */
125
+ /* ===== \u83DC\u5355\uFF08\u5B98\u65B9 primitives Menu / ModelSelect .menu \u9010\u503C\u590D\u523B\uFF1Ar20 \u5361\u7247 / item r10 / \u4E0A\u65B9\u5F39\u51FA\uFF09
126
+ \u5361\u7247 overflow:hidden + max-height:min(360px,100vh-96px)\uFF08\u5B98\u65B9 .menu \u540C\u6B3E\uFF09\uFF0C
127
+ \u5217\u8868\u5728 .dci-viewport \u5185\u6EDA\uFF1B--dsh-scrollbar-thumb(l2) \u7531\u5361\u7247\u6CE8\u5165\uFF08\u5B98\u65B9\u540C\u6B3E\uFF09\uFF0C
128
+ \u5BBF\u4E3B\u5168\u5C40 ::-webkit-scrollbar-thumb{background:var(--dsh-scrollbar-thumb)} \u636E\u6B64\u51FA\u6761\u3002 ===== */
122
129
  .dci-menu { position: fixed; z-index: 1100; box-sizing: border-box; padding: 4px; display: flex; flex-direction: column;
123
- min-width: 218px; max-width: min(360px, 100vw - 24px); max-height: calc(100vh - 24px); overflow-y: auto;
130
+ min-width: 218px; max-width: min(360px, 100vw - 24px); max-height: min(360px, calc(100vh - 96px)); overflow: hidden;
131
+ --dsh-scrollbar-thumb: var(--dsw-alias-scrollbar-bg-l2, color-mix(in srgb, currentColor 18%, transparent));
132
+ --dsh-scrollbar-thumb-hover: var(--dsw-alias-scrollbar-hover-l2, color-mix(in srgb, currentColor 26%, transparent));
124
133
  background: var(--dsw-menu-surface-fill, var(--dsw-specific-menu, rgba(28, 28, 32, 0.98)));
125
134
  backdrop-filter: var(--dsw-menu-backdrop-filter, none); color: var(--dsw-alias-label-primary, #ececf1);
126
135
  --dsw-elevation-stroke-color: var(--dsw-alias-border-l1, transparent);
127
136
  box-shadow: var(--dsw-elevation-prominent, 0 10px 34px rgba(0, 0, 0, 0.35)); border: 0; border-radius: var(--dsw-radius-lg, 20px); font-size: 13px; }
128
- .dci-viewport { display: flex; flex-direction: column; min-height: 0; }
137
+ .dci-viewport { display: flex; flex-direction: column; min-height: 0; overflow-y: auto; }
129
138
  .dci-menuLabel { padding: 8px 10px; font-size: 12px; line-height: 16px; color: var(--dsw-alias-label-tertiary, currentColor);
130
139
  user-select: none; text-align: left; }
131
140
  .dci-item { display: flex; align-items: center; gap: 8px; width: 100%; min-height: 40px; padding: 8px 10px; border: none;
@@ -202,7 +211,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
202
211
  .dci-search { width: calc(100% - 8px); margin: 2px 4px 4px; padding: 5px 9px; font-size: 13px;
203
212
  border-radius: 8px; border: 1px solid var(--dsw-alias-border-l2, color-mix(in srgb, currentColor 18%, transparent));
204
213
  background: transparent; color: inherit; outline: none; }
205
- .dci-error { padding: 6px 10px; color: var(--dsw-alias-state-error-primary, #ff6b6b); font-size: 12px; }
214
+ .dci-error { padding: 6px 10px; color: var(--dsw-alias-state-error-primary, #d54941); font-size: 12px; }
206
215
 
207
216
  /* ===== \u6A21\u578B/\u63A8\u7406\u7B49\u7EA7 cell \u884C\uFF08\u5B98\u65B9 ModelSelection .cell\uFF09===== */
208
217
  .dci-cell { box-sizing: border-box; width: auto; min-width: 100%; height: 40px; color: var(--dsw-alias-label-primary, inherit);
@@ -217,7 +226,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
217
226
  /* ===== \u5B8C\u5168\u6743\u9650\u786E\u8BA4\uFF08\u5B98\u65B9 RiskConfirmation \u8BED\u4E49\uFF09===== */
218
227
  .dci-confirm-warning { display: flex; align-items: flex-start; gap: 10px; color: var(--dsw-alias-label-secondary, currentColor);
219
228
  font-size: 14px; line-height: 22px; padding: 6px 8px 0; }
220
- .dci-confirm-warning svg { flex: none; margin-top: 2px; color: var(--dsw-alias-state-error-primary, #ff6b6b); }
229
+ .dci-confirm-warning svg { flex: none; margin-top: 2px; color: var(--dsw-alias-state-error-primary, #d54941); }
221
230
  .dci-confirm-warning p { margin: 0; }
222
231
  .dci-confirm-ack { display: flex; align-items: flex-start; gap: 10px; margin: 14px 8px 0; cursor: pointer;
223
232
  color: var(--dsw-alias-label-primary, inherit); font-size: 14px; line-height: 22px; }
@@ -229,7 +238,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
229
238
  .dci-btn { border: 1px solid var(--dsw-alias-border-l2, color-mix(in srgb, currentColor 22%, transparent)); border-radius: 10px;
230
239
  background: transparent; color: inherit; padding: 6px 14px; cursor: pointer; font-size: 14px; line-height: 20px; }
231
240
  .dci-btn[data-primary="true"] { background: var(--dsw-alias-button-primary-fill, color-mix(in srgb, currentColor 85%, transparent));
232
- color: #fff; border-color: transparent; }
241
+ color: var(--dsw-alias-label-primary-foreground, #fff); border-color: transparent; }
233
242
  .dci-btn:disabled { opacity: 0.4; cursor: default; }
234
243
 
235
244
  /* ===== \u8349\u7A3F\u9644\u4EF6\u8F68\uFF08\u5B98\u65B9 ComposerAttachments/AttachmentRail/FileCard \u9010\u503C\u590D\u523B\uFF09=====
@@ -505,7 +514,7 @@ button.dci-attach-body { color: inherit; font: inherit; text-align: left; backgr
505
514
  .dci-confirm-warning { display: flex; align-items: flex-start; gap: 10px; color: var(--dsw-alias-label-secondary, inherit);
506
515
  font-size: 14px; line-height: 22px; }
507
516
  .dci-confirm-warning p { margin: 0; }
508
- .dci-confirm-warningIcon { flex: none; margin-top: 2px; color: var(--dsw-alias-state-error-primary, #e5484d); }
517
+ .dci-confirm-warningIcon { flex: none; margin-top: 2px; color: var(--dsw-alias-state-error-primary, #d54941); }
509
518
  .dci-confirm-ack { display: flex; align-items: flex-start; gap: 10px; margin-top: 20px; cursor: pointer;
510
519
  color: var(--dsw-alias-label-primary, inherit); font-size: 14px; line-height: 22px; }
511
520
  .dci-confirm-ack input { flex: none; width: 16px; height: 16px; margin: 3px 0 0; cursor: pointer;
@@ -520,12 +529,12 @@ button.dci-attach-body { color: inherit; font: inherit; text-align: left; backgr
520
529
  .dci-btn-primary:hover:not(:disabled) { background: var(--dsw-alias-button-primary-hover, currentColor); }
521
530
  .dci-btn-cancel { min-width: 72px; }
522
531
  .dci-btn-confirm { min-width: 136px; }
523
- `;function $h(){if(document.getElementById(Vh))return;let n=document.createElement("style");n.id=Vh,n.textContent=Xg,document.head.appendChild(n)}var rr={enabled:!0,lineNumbers:!0,fontFamily:"'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, Consolas, monospace",sendHotkey:"mod+enter",lineBreakHotkey:"enter",defaultEdit:!0,defaultPreview:!1,composerBodyHeight:null,mode:"normal",floatX:null,floatY:null,floatW:null,floatH:null},Uh="dsh-codinput.prefs.v2",Yg="dsh-codinput.permission-applied",ul=new Set;function ue(){try{let n=window.localStorage.getItem(Uh);if(!n)return{...rr};let e=JSON.parse(n),t={...rr,...e&&typeof e=="object"?e:null},i=e;return i.sendKey==="enter"&&(t.sendHotkey="enter",t.lineBreakHotkey="shift-enter"),t.mode=i.mode==="float"||i.mode==="normal"?i.mode:i.floating===!0?"float":"normal",t}catch{return{...rr}}}function lt(n){let e={...ue(),...n};try{window.localStorage.setItem(Uh,JSON.stringify(e))}catch{}for(let t of ul)t();return e}function Tn(n){return ul.add(n),()=>ul.delete(n)}function dl(n){try{window.localStorage.setItem(Yg,n)}catch{}}var Mn=require("react"),sr=new Map,pl=new Set,Jg=1,An=new Map;function Gh(n,e){return n.visible===e.visible&&n.expanded===e.expanded}function Zg(n){if(n.size!==An.size)return!1;for(let[e,t]of n){let i=An.get(e);if(!i||!Gh(i,t)||i.owner!==t.owner)return!1}return!0}function fl(){let n=new Map;for(let[e,t]of sr){let i=n.get(t.sessionId);i?!i.visible&&t.visible&&n.set(t.sessionId,{visible:!0,expanded:t.expanded,owner:e}):n.set(t.sessionId,{visible:t.visible,expanded:t.expanded,owner:e})}if(!Zg(n)){An=n;for(let e of pl)e()}}function qh(n,e){let t=Jg++;sr.set(t,{sessionId:n,...e}),fl();let i=!1;return{token:t,set(r){let s=sr.get(t);s&&!Gh(s,r)&&(sr.set(t,{sessionId:s.sessionId,...r}),fl())},release(){i||(i=!0,sr.delete(t)&&fl())}}}function Kh(n){return n!==void 0&&An.has(n)}function Xh(){return[...An.keys()]}function Yh(){return An.size>0}function Qg(n){return n===void 0?void 0:An.get(n)}function jh(n,e){return e===0||n===void 0?!0:An.get(n)?.owner===e}var ml=new Set;function Jh(n){for(let e of ml)e(n)}function Zh(n){return ml.add(n),()=>{ml.delete(n)}}function Qh(n,e){let[t,i]=(0,Mn.useState)(()=>jh(n,e));return(0,Mn.useEffect)(()=>{let r=()=>{let s=jh(n,e);i(o=>o===s?o:s)};return r(),or(r)},[n,e]),t}function or(n){return pl.add(n),()=>{pl.delete(n)}}function eu(n){let[e,t]=(0,Mn.useState)(()=>Kh(n));return(0,Mn.useEffect)(()=>{let i=()=>{let r=Kh(n);t(s=>s===r?s:r)};return i(),or(i)},[n]),e}function tu(n){let e=()=>{let r=Qg(n);return{carried:r!==void 0,collapsed:r!==void 0&&r.expanded===!1&&r.visible===!1}},[t,i]=(0,Mn.useState)(e);return(0,Mn.useEffect)(()=>{let r=()=>{let s=e();i(o=>o.carried===s.carried&&o.collapsed===s.collapsed?o:s)};return r(),or(r)},[n]),t}var cn=require("react"),gg=require("react-dom");var Wo=require("react"),ug=require("react-dom");var dt=require("react");var De=require("react");function xl(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var Kn=xl();function lu(n){Kn=n}var cr={exec:()=>null};function ae(n,e=""){let t=typeof n=="string"?n:n.source,i={replace:(r,s)=>{let o=typeof s=="string"?s:s.source;return o=o.replace(Ze.caret,"$1"),t=t.replace(r,o),i},getRegex:()=>new RegExp(t,e)};return i}var Ze={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:n=>new RegExp(`^( {0,3}${n})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}#`),htmlBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}<(?:[a-z].*>|!--)`,"i")},e0=/^(?:[ \t]*(?:\n|$))+/,t0=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,n0=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,hr=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,i0=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,vl=/(?:[*+-]|\d{1,9}[.)])/,au=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,cu=ae(au).replace(/bull/g,vl).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),r0=ae(au).replace(/bull/g,vl).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),kl=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,s0=/^[^\n]+/,Sl=/(?!\s*\])(?:\\.|[^\[\]\\])+/,o0=ae(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",Sl).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),l0=ae(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,vl).getRegex(),Ds="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",Cl=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,a0=ae("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",Cl).replace("tag",Ds).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),hu=ae(kl).replace("hr",hr).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Ds).getRegex(),c0=ae(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",hu).getRegex(),Tl={blockquote:c0,code:t0,def:o0,fences:n0,heading:i0,hr,html:a0,lheading:cu,list:l0,newline:e0,paragraph:hu,table:cr,text:s0},nu=ae("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",hr).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Ds).getRegex(),h0={...Tl,lheading:r0,table:nu,paragraph:ae(kl).replace("hr",hr).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",nu).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Ds).getRegex()},u0={...Tl,html:ae(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",Cl).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:cr,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:ae(kl).replace("hr",hr).replace("heading",` *#{1,6} *[^
524
- ]`).replace("lheading",cu).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},d0=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,f0=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,uu=/^( {2,}|\\)\n(?!\s*$)/,p0=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,Rs=/[\p{P}\p{S}]/u,Al=/[\s\p{P}\p{S}]/u,du=/[^\s\p{P}\p{S}]/u,m0=ae(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,Al).getRegex(),fu=/(?!~)[\p{P}\p{S}]/u,g0=/(?!~)[\s\p{P}\p{S}]/u,b0=/(?:[^\s\p{P}\p{S}]|~)/u,y0=/\[[^[\]]*?\]\((?:\\.|[^\\\(\)]|\((?:\\.|[^\\\(\)])*\))*\)|`[^`]*?`|<[^<>]*?>/g,pu=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,w0=ae(pu,"u").replace(/punct/g,Rs).getRegex(),x0=ae(pu,"u").replace(/punct/g,fu).getRegex(),mu="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",v0=ae(mu,"gu").replace(/notPunctSpace/g,du).replace(/punctSpace/g,Al).replace(/punct/g,Rs).getRegex(),k0=ae(mu,"gu").replace(/notPunctSpace/g,b0).replace(/punctSpace/g,g0).replace(/punct/g,fu).getRegex(),S0=ae("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,du).replace(/punctSpace/g,Al).replace(/punct/g,Rs).getRegex(),C0=ae(/\\(punct)/,"gu").replace(/punct/g,Rs).getRegex(),T0=ae(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),A0=ae(Cl).replace("(?:-->|$)","-->").getRegex(),M0=ae("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",A0).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),As=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,E0=ae(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",As).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),gu=ae(/^!?\[(label)\]\[(ref)\]/).replace("label",As).replace("ref",Sl).getRegex(),bu=ae(/^!?\[(ref)\](?:\[\])?/).replace("ref",Sl).getRegex(),D0=ae("reflink|nolink(?!\\()","g").replace("reflink",gu).replace("nolink",bu).getRegex(),Ml={_backpedal:cr,anyPunctuation:C0,autolink:T0,blockSkip:y0,br:uu,code:f0,del:cr,emStrongLDelim:w0,emStrongRDelimAst:v0,emStrongRDelimUnd:S0,escape:d0,link:E0,nolink:bu,punctuation:m0,reflink:gu,reflinkSearch:D0,tag:M0,text:p0,url:cr},R0={...Ml,link:ae(/^!?\[(label)\]\((.*?)\)/).replace("label",As).getRegex(),reflink:ae(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",As).getRegex()},bl={...Ml,emStrongRDelimAst:k0,emStrongLDelim:x0,url:ae(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\.|[^\\])*?(?:\\.|[^\s~\\]))\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/},L0={...bl,br:ae(uu).replace("{2,}","*").getRegex(),text:ae(bl.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},Cs={normal:Tl,gfm:h0,pedantic:u0},lr={normal:Ml,gfm:bl,breaks:L0,pedantic:R0},O0={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},iu=n=>O0[n];function Jt(n,e){if(e){if(Ze.escapeTest.test(n))return n.replace(Ze.escapeReplace,iu)}else if(Ze.escapeTestNoEncode.test(n))return n.replace(Ze.escapeReplaceNoEncode,iu);return n}function ru(n){try{n=encodeURI(n).replace(Ze.percentDecode,"%")}catch{return null}return n}function su(n,e){let t=n.replace(Ze.findPipe,(s,o,l)=>{let a=!1,c=o;for(;--c>=0&&l[c]==="\\";)a=!a;return a?"|":" |"}),i=t.split(Ze.splitPipe),r=0;if(i[0].trim()||i.shift(),i.length>0&&!i.at(-1)?.trim()&&i.pop(),e)if(i.length>e)i.splice(e);else for(;i.length<e;)i.push("");for(;r<i.length;r++)i[r]=i[r].trim().replace(Ze.slashPipe,"|");return i}function ar(n,e,t){let i=n.length;if(i===0)return"";let r=0;for(;r<i;){let s=n.charAt(i-r-1);if(s===e&&!t)r++;else if(s!==e&&t)r++;else break}return n.slice(0,i-r)}function P0(n,e){if(n.indexOf(e[1])===-1)return-1;let t=0;for(let i=0;i<n.length;i++)if(n[i]==="\\")i++;else if(n[i]===e[0])t++;else if(n[i]===e[1]&&(t--,t<0))return i;return t>0?-2:-1}function ou(n,e,t,i,r){let s=e.href,o=e.title||null,l=n[1].replace(r.other.outputLinkReplace,"$1");i.state.inLink=!0;let a={type:n[0].charAt(0)==="!"?"image":"link",raw:t,href:s,title:o,text:l,tokens:i.inlineTokens(l)};return i.state.inLink=!1,a}function I0(n,e,t){let i=n.match(t.other.indentCodeCompensation);if(i===null)return e;let r=i[1];return e.split(`
532
+ `;function iu(){if(document.getElementById(nu))return;let n=document.createElement("style");n.id=nu,n.textContent=y0,document.head.appendChild(n)}var cr={enabled:!0,lineNumbers:!0,fontFamily:"'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, Consolas, monospace",sendHotkey:"mod+enter",lineBreakHotkey:"enter",defaultEdit:!0,defaultPreview:!1,composerBodyHeight:null,mode:"normal",floatX:null,floatY:null,floatW:null,floatH:null},ru="dsh-codinput.prefs.v2",w0="dsh-codinput.permission-applied",Cl=new Set;function ue(){try{let n=window.localStorage.getItem(ru);if(!n)return{...cr};let e=JSON.parse(n),t={...cr,...e&&typeof e=="object"?e:null},i=e;return i.sendKey==="enter"&&(t.sendHotkey="enter",t.lineBreakHotkey="shift-enter"),t.mode=i.mode==="float"||i.mode==="normal"?i.mode:i.floating===!0?"float":"normal",t}catch{return{...cr}}}function lt(n){let e={...ue(),...n};try{window.localStorage.setItem(ru,JSON.stringify(e))}catch{}for(let t of Cl)t();return e}function An(n){return Cl.add(n),()=>Cl.delete(n)}function Tl(n){try{window.localStorage.setItem(w0,n)}catch{}}var Mn=require("react"),hr=new Map,El=new Set,x0=1,En=new Map;function lu(n,e){return n.visible===e.visible&&n.expanded===e.expanded}function v0(n){if(n.size!==En.size)return!1;for(let[e,t]of n){let i=En.get(e);if(!i||!lu(i,t)||i.owner!==t.owner)return!1}return!0}function Al(){let n=new Map;for(let[e,t]of hr){let i=n.get(t.sessionId);i?!i.visible&&t.visible&&n.set(t.sessionId,{visible:!0,expanded:t.expanded,owner:e}):n.set(t.sessionId,{visible:t.visible,expanded:t.expanded,owner:e})}if(!v0(n)){En=n;for(let e of El)e()}}function au(n,e){let t=x0++;hr.set(t,{sessionId:n,...e}),Al();let i=!1;return{token:t,set(r){let s=hr.get(t);s&&!lu(s,r)&&(hr.set(t,{sessionId:s.sessionId,...r}),Al())},release(){i||(i=!0,hr.delete(t)&&Al())}}}function su(n){return n!==void 0&&En.has(n)}function cu(){return[...En.keys()]}function hu(){return En.size>0}function k0(n){return n===void 0?void 0:En.get(n)}function ou(n,e){return e===0||n===void 0?!0:En.get(n)?.owner===e}var Ml=new Set;function uu(n){for(let e of Ml)e(n)}function du(n){return Ml.add(n),()=>{Ml.delete(n)}}function fu(n,e){let[t,i]=(0,Mn.useState)(()=>ou(n,e));return(0,Mn.useEffect)(()=>{let r=()=>{let s=ou(n,e);i(o=>o===s?o:s)};return r(),ur(r)},[n,e]),t}function ur(n){return El.add(n),()=>{El.delete(n)}}function pu(n){let[e,t]=(0,Mn.useState)(()=>su(n));return(0,Mn.useEffect)(()=>{let i=()=>{let r=su(n);t(s=>s===r?s:r)};return i(),ur(i)},[n]),e}function mu(n){let e=()=>{let r=k0(n);return{carried:r!==void 0,collapsed:r!==void 0&&r.expanded===!1&&r.visible===!1}},[t,i]=(0,Mn.useState)(e);return(0,Mn.useEffect)(()=>{let r=()=>{let s=e();i(o=>o.carried===s.carried&&o.collapsed===s.collapsed?o:s)};return r(),ur(r)},[n]),t}var cn=require("react"),Fg=require("react-dom");var nl=require("react"),Ig=require("react-dom");var dt=require("react");var Le=require("react");function Ol(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var Yn=Ol();function vu(n){Yn=n}var pr={exec:()=>null};function ae(n,e=""){let t=typeof n=="string"?n:n.source,i={replace:(r,s)=>{let o=typeof s=="string"?s:s.source;return o=o.replace(et.caret,"$1"),t=t.replace(r,o),i},getRegex:()=>new RegExp(t,e)};return i}var et={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:n=>new RegExp(`^( {0,3}${n})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}#`),htmlBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}<(?:[a-z].*>|!--)`,"i")},S0=/^(?:[ \t]*(?:\n|$))+/,C0=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,T0=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,mr=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,A0=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Il=/(?:[*+-]|\d{1,9}[.)])/,ku=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,Su=ae(ku).replace(/bull/g,Il).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),E0=ae(ku).replace(/bull/g,Il).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),Nl=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,M0=/^[^\n]+/,Bl=/(?!\s*\])(?:\\.|[^\[\]\\])+/,R0=ae(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",Bl).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),D0=ae(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Il).getRegex(),Fs="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",_l=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,L0=ae("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",_l).replace("tag",Fs).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),Cu=ae(Nl).replace("hr",mr).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Fs).getRegex(),P0=ae(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",Cu).getRegex(),Hl={blockquote:P0,code:C0,def:R0,fences:T0,heading:A0,hr:mr,html:L0,lheading:Su,list:D0,newline:S0,paragraph:Cu,table:pr,text:M0},gu=ae("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",mr).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Fs).getRegex(),O0={...Hl,lheading:E0,table:gu,paragraph:ae(Nl).replace("hr",mr).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",gu).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Fs).getRegex()},I0={...Hl,html:ae(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",_l).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:pr,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:ae(Nl).replace("hr",mr).replace("heading",` *#{1,6} *[^
533
+ ]`).replace("lheading",Su).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},N0=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,B0=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Tu=/^( {2,}|\\)\n(?!\s*$)/,_0=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,zs=/[\p{P}\p{S}]/u,Fl=/[\s\p{P}\p{S}]/u,Au=/[^\s\p{P}\p{S}]/u,H0=ae(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,Fl).getRegex(),Eu=/(?!~)[\p{P}\p{S}]/u,F0=/(?!~)[\s\p{P}\p{S}]/u,z0=/(?:[^\s\p{P}\p{S}]|~)/u,W0=/\[[^[\]]*?\]\((?:\\.|[^\\\(\)]|\((?:\\.|[^\\\(\)])*\))*\)|`[^`]*?`|<[^<>]*?>/g,Mu=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,V0=ae(Mu,"u").replace(/punct/g,zs).getRegex(),$0=ae(Mu,"u").replace(/punct/g,Eu).getRegex(),Ru="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",U0=ae(Ru,"gu").replace(/notPunctSpace/g,Au).replace(/punctSpace/g,Fl).replace(/punct/g,zs).getRegex(),j0=ae(Ru,"gu").replace(/notPunctSpace/g,z0).replace(/punctSpace/g,F0).replace(/punct/g,Eu).getRegex(),K0=ae("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,Au).replace(/punctSpace/g,Fl).replace(/punct/g,zs).getRegex(),q0=ae(/\\(punct)/,"gu").replace(/punct/g,zs).getRegex(),G0=ae(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),X0=ae(_l).replace("(?:-->|$)","-->").getRegex(),Y0=ae("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",X0).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Bs=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,J0=ae(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",Bs).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Du=ae(/^!?\[(label)\]\[(ref)\]/).replace("label",Bs).replace("ref",Bl).getRegex(),Lu=ae(/^!?\[(ref)\](?:\[\])?/).replace("ref",Bl).getRegex(),Z0=ae("reflink|nolink(?!\\()","g").replace("reflink",Du).replace("nolink",Lu).getRegex(),zl={_backpedal:pr,anyPunctuation:q0,autolink:G0,blockSkip:W0,br:Tu,code:B0,del:pr,emStrongLDelim:V0,emStrongRDelimAst:U0,emStrongRDelimUnd:K0,escape:N0,link:J0,nolink:Lu,punctuation:H0,reflink:Du,reflinkSearch:Z0,tag:Y0,text:_0,url:pr},Q0={...zl,link:ae(/^!?\[(label)\]\((.*?)\)/).replace("label",Bs).getRegex(),reflink:ae(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Bs).getRegex()},Dl={...zl,emStrongRDelimAst:j0,emStrongLDelim:$0,url:ae(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\.|[^\\])*?(?:\\.|[^\s~\\]))\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/},eb={...Dl,br:ae(Tu).replace("{2,}","*").getRegex(),text:ae(Dl.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},Is={normal:Hl,gfm:O0,pedantic:I0},dr={normal:zl,gfm:Dl,breaks:eb,pedantic:Q0},tb={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},bu=n=>tb[n];function Xt(n,e){if(e){if(et.escapeTest.test(n))return n.replace(et.escapeReplace,bu)}else if(et.escapeTestNoEncode.test(n))return n.replace(et.escapeReplaceNoEncode,bu);return n}function yu(n){try{n=encodeURI(n).replace(et.percentDecode,"%")}catch{return null}return n}function wu(n,e){let t=n.replace(et.findPipe,(s,o,l)=>{let a=!1,c=o;for(;--c>=0&&l[c]==="\\";)a=!a;return a?"|":" |"}),i=t.split(et.splitPipe),r=0;if(i[0].trim()||i.shift(),i.length>0&&!i.at(-1)?.trim()&&i.pop(),e)if(i.length>e)i.splice(e);else for(;i.length<e;)i.push("");for(;r<i.length;r++)i[r]=i[r].trim().replace(et.slashPipe,"|");return i}function fr(n,e,t){let i=n.length;if(i===0)return"";let r=0;for(;r<i;){let s=n.charAt(i-r-1);if(s===e&&!t)r++;else if(s!==e&&t)r++;else break}return n.slice(0,i-r)}function nb(n,e){if(n.indexOf(e[1])===-1)return-1;let t=0;for(let i=0;i<n.length;i++)if(n[i]==="\\")i++;else if(n[i]===e[0])t++;else if(n[i]===e[1]&&(t--,t<0))return i;return t>0?-2:-1}function xu(n,e,t,i,r){let s=e.href,o=e.title||null,l=n[1].replace(r.other.outputLinkReplace,"$1");i.state.inLink=!0;let a={type:n[0].charAt(0)==="!"?"image":"link",raw:t,href:s,title:o,text:l,tokens:i.inlineTokens(l)};return i.state.inLink=!1,a}function ib(n,e,t){let i=n.match(t.other.indentCodeCompensation);if(i===null)return e;let r=i[1];return e.split(`
525
534
  `).map(s=>{let o=s.match(t.other.beginningSpace);if(o===null)return s;let[l]=o;return l.length>=r.length?s.slice(r.length):s}).join(`
526
- `)}var Ms=class{constructor(n){ce(this,"options");ce(this,"rules");ce(this,"lexer");this.options=n||Kn}space(n){let e=this.rules.block.newline.exec(n);if(e&&e[0].length>0)return{type:"space",raw:e[0]}}code(n){let e=this.rules.block.code.exec(n);if(e){let t=e[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?t:ar(t,`
527
- `)}}}fences(n){let e=this.rules.block.fences.exec(n);if(e){let t=e[0],i=I0(t,e[3]||"",this.rules);return{type:"code",raw:t,lang:e[2]?e[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):e[2],text:i}}}heading(n){let e=this.rules.block.heading.exec(n);if(e){let t=e[2].trim();if(this.rules.other.endingHash.test(t)){let i=ar(t,"#");(this.options.pedantic||!i||this.rules.other.endingSpaceChar.test(i))&&(t=i.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:t,tokens:this.lexer.inline(t)}}}hr(n){let e=this.rules.block.hr.exec(n);if(e)return{type:"hr",raw:ar(e[0],`
528
- `)}}blockquote(n){let e=this.rules.block.blockquote.exec(n);if(e){let t=ar(e[0],`
535
+ `)}var _s=class{constructor(n){ce(this,"options");ce(this,"rules");ce(this,"lexer");this.options=n||Yn}space(n){let e=this.rules.block.newline.exec(n);if(e&&e[0].length>0)return{type:"space",raw:e[0]}}code(n){let e=this.rules.block.code.exec(n);if(e){let t=e[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?t:fr(t,`
536
+ `)}}}fences(n){let e=this.rules.block.fences.exec(n);if(e){let t=e[0],i=ib(t,e[3]||"",this.rules);return{type:"code",raw:t,lang:e[2]?e[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):e[2],text:i}}}heading(n){let e=this.rules.block.heading.exec(n);if(e){let t=e[2].trim();if(this.rules.other.endingHash.test(t)){let i=fr(t,"#");(this.options.pedantic||!i||this.rules.other.endingSpaceChar.test(i))&&(t=i.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:t,tokens:this.lexer.inline(t)}}}hr(n){let e=this.rules.block.hr.exec(n);if(e)return{type:"hr",raw:fr(e[0],`
537
+ `)}}blockquote(n){let e=this.rules.block.blockquote.exec(n);if(e){let t=fr(e[0],`
529
538
  `).split(`
530
539
  `),i="",r="",s=[];for(;t.length>0;){let o=!1,l=[],a;for(a=0;a<t.length;a++)if(this.rules.other.blockquoteStart.test(t[a]))l.push(t[a]),o=!0;else if(!o)l.push(t[a]);else break;t=t.slice(a);let c=l.join(`
531
540
  `),h=c.replace(this.rules.other.blockquoteSetextReplace,`
@@ -533,20 +542,20 @@ button.dci-attach-body { color: inherit; font: inherit; text-align: left; backgr
533
542
  ${c}`:c,r=r?`${r}
534
543
  ${h}`:h;let u=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(h,s,!0),this.lexer.state.top=u,t.length===0)break;let d=s.at(-1);if(d?.type==="code")break;if(d?.type==="blockquote"){let f=d,p=f.raw+`
535
544
  `+t.join(`
536
- `),g=this.blockquote(p);s[s.length-1]=g,i=i.substring(0,i.length-f.raw.length)+g.raw,r=r.substring(0,r.length-f.text.length)+g.text;break}else if(d?.type==="list"){let f=d,p=f.raw+`
545
+ `),m=this.blockquote(p);s[s.length-1]=m,i=i.substring(0,i.length-f.raw.length)+m.raw,r=r.substring(0,r.length-f.text.length)+m.text;break}else if(d?.type==="list"){let f=d,p=f.raw+`
537
546
  `+t.join(`
538
- `),g=this.list(p);s[s.length-1]=g,i=i.substring(0,i.length-d.raw.length)+g.raw,r=r.substring(0,r.length-f.raw.length)+g.raw,t=p.substring(s.at(-1).raw.length).split(`
547
+ `),m=this.list(p);s[s.length-1]=m,i=i.substring(0,i.length-d.raw.length)+m.raw,r=r.substring(0,r.length-f.raw.length)+m.raw,t=p.substring(s.at(-1).raw.length).split(`
539
548
  `);continue}}return{type:"blockquote",raw:i,tokens:s,text:r}}}list(n){let e=this.rules.block.list.exec(n);if(e){let t=e[1].trim(),i=t.length>1,r={type:"list",raw:"",ordered:i,start:i?+t.slice(0,-1):"",loose:!1,items:[]};t=i?`\\d{1,9}\\${t.slice(-1)}`:`\\${t}`,this.options.pedantic&&(t=i?t:"[*+-]");let s=this.rules.other.listItemRegex(t),o=!1;for(;n;){let a=!1,c="",h="";if(!(e=s.exec(n))||this.rules.block.hr.test(n))break;c=e[0],n=n.substring(c.length);let u=e[2].split(`
540
- `,1)[0].replace(this.rules.other.listReplaceTabs,y=>" ".repeat(3*y.length)),d=n.split(`
549
+ `,1)[0].replace(this.rules.other.listReplaceTabs,b=>" ".repeat(3*b.length)),d=n.split(`
541
550
  `,1)[0],f=!u.trim(),p=0;if(this.options.pedantic?(p=2,h=u.trimStart()):f?p=e[1].length+1:(p=e[2].search(this.rules.other.nonSpaceChar),p=p>4?1:p,h=u.slice(p),p+=e[1].length),f&&this.rules.other.blankLine.test(d)&&(c+=d+`
542
- `,n=n.substring(d.length+1),a=!0),!a){let y=this.rules.other.nextBulletRegex(p),x=this.rules.other.hrRegex(p),C=this.rules.other.fencesBeginRegex(p),H=this.rules.other.headingBeginRegex(p),S=this.rules.other.htmlBeginRegex(p);for(;n;){let A=n.split(`
543
- `,1)[0],v;if(d=A,this.options.pedantic?(d=d.replace(this.rules.other.listReplaceNesting," "),v=d):v=d.replace(this.rules.other.tabCharGlobal," "),C.test(d)||H.test(d)||S.test(d)||y.test(d)||x.test(d))break;if(v.search(this.rules.other.nonSpaceChar)>=p||!d.trim())h+=`
544
- `+v.slice(p);else{if(f||u.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||C.test(u)||H.test(u)||x.test(u))break;h+=`
545
- `+d}!f&&!d.trim()&&(f=!0),c+=A+`
546
- `,n=n.substring(A.length+1),u=v.slice(p)}}r.loose||(o?r.loose=!0:this.rules.other.doubleBlankLine.test(c)&&(o=!0));let g=null,b;this.options.gfm&&(g=this.rules.other.listIsTask.exec(h),g&&(b=g[0]!=="[ ] ",h=h.replace(this.rules.other.listReplaceTask,""))),r.items.push({type:"list_item",raw:c,task:!!g,checked:b,loose:!1,text:h,tokens:[]}),r.raw+=c}let l=r.items.at(-1);if(l)l.raw=l.raw.trimEnd(),l.text=l.text.trimEnd();else return;r.raw=r.raw.trimEnd();for(let a=0;a<r.items.length;a++)if(this.lexer.state.top=!1,r.items[a].tokens=this.lexer.blockTokens(r.items[a].text,[]),!r.loose){let c=r.items[a].tokens.filter(u=>u.type==="space"),h=c.length>0&&c.some(u=>this.rules.other.anyLine.test(u.raw));r.loose=h}if(r.loose)for(let a=0;a<r.items.length;a++)r.items[a].loose=!0;return r}}html(n){let e=this.rules.block.html.exec(n);if(e)return{type:"html",block:!0,raw:e[0],pre:e[1]==="pre"||e[1]==="script"||e[1]==="style",text:e[0]}}def(n){let e=this.rules.block.def.exec(n);if(e){let t=e[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),i=e[2]?e[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",r=e[3]?e[3].substring(1,e[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):e[3];return{type:"def",tag:t,raw:e[0],href:i,title:r}}}table(n){let e=this.rules.block.table.exec(n);if(!e||!this.rules.other.tableDelimiter.test(e[2]))return;let t=su(e[1]),i=e[2].replace(this.rules.other.tableAlignChars,"").split("|"),r=e[3]?.trim()?e[3].replace(this.rules.other.tableRowBlankLine,"").split(`
547
- `):[],s={type:"table",raw:e[0],header:[],align:[],rows:[]};if(t.length===i.length){for(let o of i)this.rules.other.tableAlignRight.test(o)?s.align.push("right"):this.rules.other.tableAlignCenter.test(o)?s.align.push("center"):this.rules.other.tableAlignLeft.test(o)?s.align.push("left"):s.align.push(null);for(let o=0;o<t.length;o++)s.header.push({text:t[o],tokens:this.lexer.inline(t[o]),header:!0,align:s.align[o]});for(let o of r)s.rows.push(su(o,s.header.length).map((l,a)=>({text:l,tokens:this.lexer.inline(l),header:!1,align:s.align[a]})));return s}}lheading(n){let e=this.rules.block.lheading.exec(n);if(e)return{type:"heading",raw:e[0],depth:e[2].charAt(0)==="="?1:2,text:e[1],tokens:this.lexer.inline(e[1])}}paragraph(n){let e=this.rules.block.paragraph.exec(n);if(e){let t=e[1].charAt(e[1].length-1)===`
548
- `?e[1].slice(0,-1):e[1];return{type:"paragraph",raw:e[0],text:t,tokens:this.lexer.inline(t)}}}text(n){let e=this.rules.block.text.exec(n);if(e)return{type:"text",raw:e[0],text:e[0],tokens:this.lexer.inline(e[0])}}escape(n){let e=this.rules.inline.escape.exec(n);if(e)return{type:"escape",raw:e[0],text:e[1]}}tag(n){let e=this.rules.inline.tag.exec(n);if(e)return!this.lexer.state.inLink&&this.rules.other.startATag.test(e[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:e[0]}}link(n){let e=this.rules.inline.link.exec(n);if(e){let t=e[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(t)){if(!this.rules.other.endAngleBracket.test(t))return;let s=ar(t.slice(0,-1),"\\");if((t.length-s.length)%2===0)return}else{let s=P0(e[2],"()");if(s===-2)return;if(s>-1){let l=(e[0].indexOf("!")===0?5:4)+e[1].length+s;e[2]=e[2].substring(0,s),e[0]=e[0].substring(0,l).trim(),e[3]=""}}let i=e[2],r="";if(this.options.pedantic){let s=this.rules.other.pedanticHrefTitle.exec(i);s&&(i=s[1],r=s[3])}else r=e[3]?e[3].slice(1,-1):"";return i=i.trim(),this.rules.other.startAngleBracket.test(i)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(t)?i=i.slice(1):i=i.slice(1,-1)),ou(e,{href:i&&i.replace(this.rules.inline.anyPunctuation,"$1"),title:r&&r.replace(this.rules.inline.anyPunctuation,"$1")},e[0],this.lexer,this.rules)}}reflink(n,e){let t;if((t=this.rules.inline.reflink.exec(n))||(t=this.rules.inline.nolink.exec(n))){let i=(t[2]||t[1]).replace(this.rules.other.multipleSpaceGlobal," "),r=e[i.toLowerCase()];if(!r){let s=t[0].charAt(0);return{type:"text",raw:s,text:s}}return ou(t,r,t[0],this.lexer,this.rules)}}emStrong(n,e,t=""){let i=this.rules.inline.emStrongLDelim.exec(n);if(!i||i[3]&&t.match(this.rules.other.unicodeAlphaNumeric))return;if(!(i[1]||i[2]||"")||!t||this.rules.inline.punctuation.exec(t)){let s=[...i[0]].length-1,o,l,a=s,c=0,h=i[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(h.lastIndex=0,e=e.slice(-1*n.length+s);(i=h.exec(e))!=null;){if(o=i[1]||i[2]||i[3]||i[4]||i[5]||i[6],!o)continue;if(l=[...o].length,i[3]||i[4]){a+=l;continue}else if((i[5]||i[6])&&s%3&&!((s+l)%3)){c+=l;continue}if(a-=l,a>0)continue;l=Math.min(l,l+a+c);let u=[...i[0]][0].length,d=n.slice(0,s+i.index+u+l);if(Math.min(s,l)%2){let p=d.slice(1,-1);return{type:"em",raw:d,text:p,tokens:this.lexer.inlineTokens(p)}}let f=d.slice(2,-2);return{type:"strong",raw:d,text:f,tokens:this.lexer.inlineTokens(f)}}}}codespan(n){let e=this.rules.inline.code.exec(n);if(e){let t=e[2].replace(this.rules.other.newLineCharGlobal," "),i=this.rules.other.nonSpaceChar.test(t),r=this.rules.other.startingSpaceChar.test(t)&&this.rules.other.endingSpaceChar.test(t);return i&&r&&(t=t.substring(1,t.length-1)),{type:"codespan",raw:e[0],text:t}}}br(n){let e=this.rules.inline.br.exec(n);if(e)return{type:"br",raw:e[0]}}del(n){let e=this.rules.inline.del.exec(n);if(e)return{type:"del",raw:e[0],text:e[2],tokens:this.lexer.inlineTokens(e[2])}}autolink(n){let e=this.rules.inline.autolink.exec(n);if(e){let t,i;return e[2]==="@"?(t=e[1],i="mailto:"+t):(t=e[1],i=t),{type:"link",raw:e[0],text:t,href:i,tokens:[{type:"text",raw:t,text:t}]}}}url(n){let e;if(e=this.rules.inline.url.exec(n)){let t,i;if(e[2]==="@")t=e[0],i="mailto:"+t;else{let r;do r=e[0],e[0]=this.rules.inline._backpedal.exec(e[0])?.[0]??"";while(r!==e[0]);t=e[0],e[1]==="www."?i="http://"+e[0]:i=e[0]}return{type:"link",raw:e[0],text:t,href:i,tokens:[{type:"text",raw:t,text:t}]}}}inlineText(n){let e=this.rules.inline.text.exec(n);if(e){let t=this.lexer.state.inRawBlock;return{type:"text",raw:e[0],text:e[0],escaped:t}}}},hn=class yl{constructor(e){ce(this,"tokens");ce(this,"options");ce(this,"state");ce(this,"tokenizer");ce(this,"inlineQueue");this.tokens=[],this.tokens.links=Object.create(null),this.options=e||Kn,this.options.tokenizer=this.options.tokenizer||new Ms,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let t={other:Ze,block:Cs.normal,inline:lr.normal};this.options.pedantic?(t.block=Cs.pedantic,t.inline=lr.pedantic):this.options.gfm&&(t.block=Cs.gfm,this.options.breaks?t.inline=lr.breaks:t.inline=lr.gfm),this.tokenizer.rules=t}static get rules(){return{block:Cs,inline:lr}}static lex(e,t){return new yl(t).lex(e)}static lexInline(e,t){return new yl(t).inlineTokens(e)}lex(e){e=e.replace(Ze.carriageReturn,`
549
- `),this.blockTokens(e,this.tokens);for(let t=0;t<this.inlineQueue.length;t++){let i=this.inlineQueue[t];this.inlineTokens(i.src,i.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(e,t=[],i=!1){for(this.options.pedantic&&(e=e.replace(Ze.tabCharGlobal," ").replace(Ze.spaceLine,""));e;){let r;if(this.options.extensions?.block?.some(o=>(r=o.call({lexer:this},e,t))?(e=e.substring(r.raw.length),t.push(r),!0):!1))continue;if(r=this.tokenizer.space(e)){e=e.substring(r.raw.length);let o=t.at(-1);r.raw.length===1&&o!==void 0?o.raw+=`
551
+ `,n=n.substring(d.length+1),a=!0),!a){let b=this.rules.other.nextBulletRegex(p),x=this.rules.other.hrRegex(p),k=this.rules.other.fencesBeginRegex(p),_=this.rules.other.headingBeginRegex(p),C=this.rules.other.htmlBeginRegex(p);for(;n;){let S=n.split(`
552
+ `,1)[0],A;if(d=S,this.options.pedantic?(d=d.replace(this.rules.other.listReplaceNesting," "),A=d):A=d.replace(this.rules.other.tabCharGlobal," "),k.test(d)||_.test(d)||C.test(d)||b.test(d)||x.test(d))break;if(A.search(this.rules.other.nonSpaceChar)>=p||!d.trim())h+=`
553
+ `+A.slice(p);else{if(f||u.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||k.test(u)||_.test(u)||x.test(u))break;h+=`
554
+ `+d}!f&&!d.trim()&&(f=!0),c+=S+`
555
+ `,n=n.substring(S.length+1),u=A.slice(p)}}r.loose||(o?r.loose=!0:this.rules.other.doubleBlankLine.test(c)&&(o=!0));let m=null,y;this.options.gfm&&(m=this.rules.other.listIsTask.exec(h),m&&(y=m[0]!=="[ ] ",h=h.replace(this.rules.other.listReplaceTask,""))),r.items.push({type:"list_item",raw:c,task:!!m,checked:y,loose:!1,text:h,tokens:[]}),r.raw+=c}let l=r.items.at(-1);if(l)l.raw=l.raw.trimEnd(),l.text=l.text.trimEnd();else return;r.raw=r.raw.trimEnd();for(let a=0;a<r.items.length;a++)if(this.lexer.state.top=!1,r.items[a].tokens=this.lexer.blockTokens(r.items[a].text,[]),!r.loose){let c=r.items[a].tokens.filter(u=>u.type==="space"),h=c.length>0&&c.some(u=>this.rules.other.anyLine.test(u.raw));r.loose=h}if(r.loose)for(let a=0;a<r.items.length;a++)r.items[a].loose=!0;return r}}html(n){let e=this.rules.block.html.exec(n);if(e)return{type:"html",block:!0,raw:e[0],pre:e[1]==="pre"||e[1]==="script"||e[1]==="style",text:e[0]}}def(n){let e=this.rules.block.def.exec(n);if(e){let t=e[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),i=e[2]?e[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",r=e[3]?e[3].substring(1,e[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):e[3];return{type:"def",tag:t,raw:e[0],href:i,title:r}}}table(n){let e=this.rules.block.table.exec(n);if(!e||!this.rules.other.tableDelimiter.test(e[2]))return;let t=wu(e[1]),i=e[2].replace(this.rules.other.tableAlignChars,"").split("|"),r=e[3]?.trim()?e[3].replace(this.rules.other.tableRowBlankLine,"").split(`
556
+ `):[],s={type:"table",raw:e[0],header:[],align:[],rows:[]};if(t.length===i.length){for(let o of i)this.rules.other.tableAlignRight.test(o)?s.align.push("right"):this.rules.other.tableAlignCenter.test(o)?s.align.push("center"):this.rules.other.tableAlignLeft.test(o)?s.align.push("left"):s.align.push(null);for(let o=0;o<t.length;o++)s.header.push({text:t[o],tokens:this.lexer.inline(t[o]),header:!0,align:s.align[o]});for(let o of r)s.rows.push(wu(o,s.header.length).map((l,a)=>({text:l,tokens:this.lexer.inline(l),header:!1,align:s.align[a]})));return s}}lheading(n){let e=this.rules.block.lheading.exec(n);if(e)return{type:"heading",raw:e[0],depth:e[2].charAt(0)==="="?1:2,text:e[1],tokens:this.lexer.inline(e[1])}}paragraph(n){let e=this.rules.block.paragraph.exec(n);if(e){let t=e[1].charAt(e[1].length-1)===`
557
+ `?e[1].slice(0,-1):e[1];return{type:"paragraph",raw:e[0],text:t,tokens:this.lexer.inline(t)}}}text(n){let e=this.rules.block.text.exec(n);if(e)return{type:"text",raw:e[0],text:e[0],tokens:this.lexer.inline(e[0])}}escape(n){let e=this.rules.inline.escape.exec(n);if(e)return{type:"escape",raw:e[0],text:e[1]}}tag(n){let e=this.rules.inline.tag.exec(n);if(e)return!this.lexer.state.inLink&&this.rules.other.startATag.test(e[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:e[0]}}link(n){let e=this.rules.inline.link.exec(n);if(e){let t=e[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(t)){if(!this.rules.other.endAngleBracket.test(t))return;let s=fr(t.slice(0,-1),"\\");if((t.length-s.length)%2===0)return}else{let s=nb(e[2],"()");if(s===-2)return;if(s>-1){let l=(e[0].indexOf("!")===0?5:4)+e[1].length+s;e[2]=e[2].substring(0,s),e[0]=e[0].substring(0,l).trim(),e[3]=""}}let i=e[2],r="";if(this.options.pedantic){let s=this.rules.other.pedanticHrefTitle.exec(i);s&&(i=s[1],r=s[3])}else r=e[3]?e[3].slice(1,-1):"";return i=i.trim(),this.rules.other.startAngleBracket.test(i)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(t)?i=i.slice(1):i=i.slice(1,-1)),xu(e,{href:i&&i.replace(this.rules.inline.anyPunctuation,"$1"),title:r&&r.replace(this.rules.inline.anyPunctuation,"$1")},e[0],this.lexer,this.rules)}}reflink(n,e){let t;if((t=this.rules.inline.reflink.exec(n))||(t=this.rules.inline.nolink.exec(n))){let i=(t[2]||t[1]).replace(this.rules.other.multipleSpaceGlobal," "),r=e[i.toLowerCase()];if(!r){let s=t[0].charAt(0);return{type:"text",raw:s,text:s}}return xu(t,r,t[0],this.lexer,this.rules)}}emStrong(n,e,t=""){let i=this.rules.inline.emStrongLDelim.exec(n);if(!i||i[3]&&t.match(this.rules.other.unicodeAlphaNumeric))return;if(!(i[1]||i[2]||"")||!t||this.rules.inline.punctuation.exec(t)){let s=[...i[0]].length-1,o,l,a=s,c=0,h=i[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(h.lastIndex=0,e=e.slice(-1*n.length+s);(i=h.exec(e))!=null;){if(o=i[1]||i[2]||i[3]||i[4]||i[5]||i[6],!o)continue;if(l=[...o].length,i[3]||i[4]){a+=l;continue}else if((i[5]||i[6])&&s%3&&!((s+l)%3)){c+=l;continue}if(a-=l,a>0)continue;l=Math.min(l,l+a+c);let u=[...i[0]][0].length,d=n.slice(0,s+i.index+u+l);if(Math.min(s,l)%2){let p=d.slice(1,-1);return{type:"em",raw:d,text:p,tokens:this.lexer.inlineTokens(p)}}let f=d.slice(2,-2);return{type:"strong",raw:d,text:f,tokens:this.lexer.inlineTokens(f)}}}}codespan(n){let e=this.rules.inline.code.exec(n);if(e){let t=e[2].replace(this.rules.other.newLineCharGlobal," "),i=this.rules.other.nonSpaceChar.test(t),r=this.rules.other.startingSpaceChar.test(t)&&this.rules.other.endingSpaceChar.test(t);return i&&r&&(t=t.substring(1,t.length-1)),{type:"codespan",raw:e[0],text:t}}}br(n){let e=this.rules.inline.br.exec(n);if(e)return{type:"br",raw:e[0]}}del(n){let e=this.rules.inline.del.exec(n);if(e)return{type:"del",raw:e[0],text:e[2],tokens:this.lexer.inlineTokens(e[2])}}autolink(n){let e=this.rules.inline.autolink.exec(n);if(e){let t,i;return e[2]==="@"?(t=e[1],i="mailto:"+t):(t=e[1],i=t),{type:"link",raw:e[0],text:t,href:i,tokens:[{type:"text",raw:t,text:t}]}}}url(n){let e;if(e=this.rules.inline.url.exec(n)){let t,i;if(e[2]==="@")t=e[0],i="mailto:"+t;else{let r;do r=e[0],e[0]=this.rules.inline._backpedal.exec(e[0])?.[0]??"";while(r!==e[0]);t=e[0],e[1]==="www."?i="http://"+e[0]:i=e[0]}return{type:"link",raw:e[0],text:t,href:i,tokens:[{type:"text",raw:t,text:t}]}}}inlineText(n){let e=this.rules.inline.text.exec(n);if(e){let t=this.lexer.state.inRawBlock;return{type:"text",raw:e[0],text:e[0],escaped:t}}}},hn=class Ll{constructor(e){ce(this,"tokens");ce(this,"options");ce(this,"state");ce(this,"tokenizer");ce(this,"inlineQueue");this.tokens=[],this.tokens.links=Object.create(null),this.options=e||Yn,this.options.tokenizer=this.options.tokenizer||new _s,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let t={other:et,block:Is.normal,inline:dr.normal};this.options.pedantic?(t.block=Is.pedantic,t.inline=dr.pedantic):this.options.gfm&&(t.block=Is.gfm,this.options.breaks?t.inline=dr.breaks:t.inline=dr.gfm),this.tokenizer.rules=t}static get rules(){return{block:Is,inline:dr}}static lex(e,t){return new Ll(t).lex(e)}static lexInline(e,t){return new Ll(t).inlineTokens(e)}lex(e){e=e.replace(et.carriageReturn,`
558
+ `),this.blockTokens(e,this.tokens);for(let t=0;t<this.inlineQueue.length;t++){let i=this.inlineQueue[t];this.inlineTokens(i.src,i.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(e,t=[],i=!1){for(this.options.pedantic&&(e=e.replace(et.tabCharGlobal," ").replace(et.spaceLine,""));e;){let r;if(this.options.extensions?.block?.some(o=>(r=o.call({lexer:this},e,t))?(e=e.substring(r.raw.length),t.push(r),!0):!1))continue;if(r=this.tokenizer.space(e)){e=e.substring(r.raw.length);let o=t.at(-1);r.raw.length===1&&o!==void 0?o.raw+=`
550
559
  `:t.push(r);continue}if(r=this.tokenizer.code(e)){e=e.substring(r.raw.length);let o=t.at(-1);o?.type==="paragraph"||o?.type==="text"?(o.raw+=`
551
560
  `+r.raw,o.text+=`
552
561
  `+r.text,this.inlineQueue.at(-1).src=o.text):t.push(r);continue}if(r=this.tokenizer.fences(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.heading(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.hr(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.blockquote(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.list(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.html(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.def(e)){e=e.substring(r.raw.length);let o=t.at(-1);o?.type==="paragraph"||o?.type==="text"?(o.raw+=`
@@ -555,16 +564,16 @@ ${h}`:h;let u=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTo
555
564
  `+r.raw,o.text+=`
556
565
  `+r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=o.text):t.push(r),i=s.length!==e.length,e=e.substring(r.raw.length);continue}if(r=this.tokenizer.text(e)){e=e.substring(r.raw.length);let o=t.at(-1);o?.type==="text"?(o.raw+=`
557
566
  `+r.raw,o.text+=`
558
- `+r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=o.text):t.push(r);continue}if(e){let o="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(o);break}else throw new Error(o)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let i=e,r=null;if(this.tokens.links){let l=Object.keys(this.tokens.links);if(l.length>0)for(;(r=this.tokenizer.rules.inline.reflinkSearch.exec(i))!=null;)l.includes(r[0].slice(r[0].lastIndexOf("[")+1,-1))&&(i=i.slice(0,r.index)+"["+"a".repeat(r[0].length-2)+"]"+i.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(r=this.tokenizer.rules.inline.anyPunctuation.exec(i))!=null;)i=i.slice(0,r.index)+"++"+i.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;(r=this.tokenizer.rules.inline.blockSkip.exec(i))!=null;)i=i.slice(0,r.index)+"["+"a".repeat(r[0].length-2)+"]"+i.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);let s=!1,o="";for(;e;){s||(o=""),s=!1;let l;if(this.options.extensions?.inline?.some(c=>(l=c.call({lexer:this},e,t))?(e=e.substring(l.raw.length),t.push(l),!0):!1))continue;if(l=this.tokenizer.escape(e)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.tag(e)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.link(e)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(l.raw.length);let c=t.at(-1);l.type==="text"&&c?.type==="text"?(c.raw+=l.raw,c.text+=l.text):t.push(l);continue}if(l=this.tokenizer.emStrong(e,i,o)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.codespan(e)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.br(e)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.del(e)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.autolink(e)){e=e.substring(l.raw.length),t.push(l);continue}if(!this.state.inLink&&(l=this.tokenizer.url(e))){e=e.substring(l.raw.length),t.push(l);continue}let a=e;if(this.options.extensions?.startInline){let c=1/0,h=e.slice(1),u;this.options.extensions.startInline.forEach(d=>{u=d.call({lexer:this},h),typeof u=="number"&&u>=0&&(c=Math.min(c,u))}),c<1/0&&c>=0&&(a=e.substring(0,c+1))}if(l=this.tokenizer.inlineText(a)){e=e.substring(l.raw.length),l.raw.slice(-1)!=="_"&&(o=l.raw.slice(-1)),s=!0;let c=t.at(-1);c?.type==="text"?(c.raw+=l.raw,c.text+=l.text):t.push(l);continue}if(e){let c="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(c);break}else throw new Error(c)}}return t}},Es=class{constructor(n){ce(this,"options");ce(this,"parser");this.options=n||Kn}space(n){return""}code({text:n,lang:e,escaped:t}){let i=(e||"").match(Ze.notSpaceStart)?.[0],r=n.replace(Ze.endingNewline,"")+`
559
- `;return i?'<pre><code class="language-'+Jt(i)+'">'+(t?r:Jt(r,!0))+`</code></pre>
560
- `:"<pre><code>"+(t?r:Jt(r,!0))+`</code></pre>
567
+ `+r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=o.text):t.push(r);continue}if(e){let o="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(o);break}else throw new Error(o)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let i=e,r=null;if(this.tokens.links){let l=Object.keys(this.tokens.links);if(l.length>0)for(;(r=this.tokenizer.rules.inline.reflinkSearch.exec(i))!=null;)l.includes(r[0].slice(r[0].lastIndexOf("[")+1,-1))&&(i=i.slice(0,r.index)+"["+"a".repeat(r[0].length-2)+"]"+i.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(r=this.tokenizer.rules.inline.anyPunctuation.exec(i))!=null;)i=i.slice(0,r.index)+"++"+i.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;(r=this.tokenizer.rules.inline.blockSkip.exec(i))!=null;)i=i.slice(0,r.index)+"["+"a".repeat(r[0].length-2)+"]"+i.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);let s=!1,o="";for(;e;){s||(o=""),s=!1;let l;if(this.options.extensions?.inline?.some(c=>(l=c.call({lexer:this},e,t))?(e=e.substring(l.raw.length),t.push(l),!0):!1))continue;if(l=this.tokenizer.escape(e)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.tag(e)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.link(e)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(l.raw.length);let c=t.at(-1);l.type==="text"&&c?.type==="text"?(c.raw+=l.raw,c.text+=l.text):t.push(l);continue}if(l=this.tokenizer.emStrong(e,i,o)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.codespan(e)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.br(e)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.del(e)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.autolink(e)){e=e.substring(l.raw.length),t.push(l);continue}if(!this.state.inLink&&(l=this.tokenizer.url(e))){e=e.substring(l.raw.length),t.push(l);continue}let a=e;if(this.options.extensions?.startInline){let c=1/0,h=e.slice(1),u;this.options.extensions.startInline.forEach(d=>{u=d.call({lexer:this},h),typeof u=="number"&&u>=0&&(c=Math.min(c,u))}),c<1/0&&c>=0&&(a=e.substring(0,c+1))}if(l=this.tokenizer.inlineText(a)){e=e.substring(l.raw.length),l.raw.slice(-1)!=="_"&&(o=l.raw.slice(-1)),s=!0;let c=t.at(-1);c?.type==="text"?(c.raw+=l.raw,c.text+=l.text):t.push(l);continue}if(e){let c="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(c);break}else throw new Error(c)}}return t}},Hs=class{constructor(n){ce(this,"options");ce(this,"parser");this.options=n||Yn}space(n){return""}code({text:n,lang:e,escaped:t}){let i=(e||"").match(et.notSpaceStart)?.[0],r=n.replace(et.endingNewline,"")+`
568
+ `;return i?'<pre><code class="language-'+Xt(i)+'">'+(t?r:Xt(r,!0))+`</code></pre>
569
+ `:"<pre><code>"+(t?r:Xt(r,!0))+`</code></pre>
561
570
  `}blockquote({tokens:n}){return`<blockquote>
562
571
  ${this.parser.parse(n)}</blockquote>
563
572
  `}html({text:n}){return n}heading({tokens:n,depth:e}){return`<h${e}>${this.parser.parseInline(n)}</h${e}>
564
573
  `}hr(n){return`<hr>
565
574
  `}list(n){let e=n.ordered,t=n.start,i="";for(let o=0;o<n.items.length;o++){let l=n.items[o];i+=this.listitem(l)}let r=e?"ol":"ul",s=e&&t!==1?' start="'+t+'"':"";return"<"+r+s+`>
566
575
  `+i+"</"+r+`>
567
- `}listitem(n){let e="";if(n.task){let t=this.checkbox({checked:!!n.checked});n.loose?n.tokens[0]?.type==="paragraph"?(n.tokens[0].text=t+" "+n.tokens[0].text,n.tokens[0].tokens&&n.tokens[0].tokens.length>0&&n.tokens[0].tokens[0].type==="text"&&(n.tokens[0].tokens[0].text=t+" "+Jt(n.tokens[0].tokens[0].text),n.tokens[0].tokens[0].escaped=!0)):n.tokens.unshift({type:"text",raw:t+" ",text:t+" ",escaped:!0}):e+=t+" "}return e+=this.parser.parse(n.tokens,!!n.loose),`<li>${e}</li>
576
+ `}listitem(n){let e="";if(n.task){let t=this.checkbox({checked:!!n.checked});n.loose?n.tokens[0]?.type==="paragraph"?(n.tokens[0].text=t+" "+n.tokens[0].text,n.tokens[0].tokens&&n.tokens[0].tokens.length>0&&n.tokens[0].tokens[0].type==="text"&&(n.tokens[0].tokens[0].text=t+" "+Xt(n.tokens[0].tokens[0].text),n.tokens[0].tokens[0].escaped=!0)):n.tokens.unshift({type:"text",raw:t+" ",text:t+" ",escaped:!0}):e+=t+" "}return e+=this.parser.parse(n.tokens,!!n.loose),`<li>${e}</li>
568
577
  `}checkbox({checked:n}){return"<input "+(n?'checked="" ':"")+'disabled="" type="checkbox">'}paragraph({tokens:n}){return`<p>${this.parser.parseInline(n)}</p>
569
578
  `}table(n){let e="",t="";for(let r=0;r<n.header.length;r++)t+=this.tablecell(n.header[r]);e+=this.tablerow({text:t});let i="";for(let r=0;r<n.rows.length;r++){let s=n.rows[r];t="";for(let o=0;o<s.length;o++)t+=this.tablecell(s[o]);i+=this.tablerow({text:t})}return i&&(i=`<tbody>${i}</tbody>`),`<table>
570
579
  <thead>
@@ -573,19 +582,19 @@ ${this.parser.parse(n)}</blockquote>
573
582
  `}tablerow({text:n}){return`<tr>
574
583
  ${n}</tr>
575
584
  `}tablecell(n){let e=this.parser.parseInline(n.tokens),t=n.header?"th":"td";return(n.align?`<${t} align="${n.align}">`:`<${t}>`)+e+`</${t}>
576
- `}strong({tokens:n}){return`<strong>${this.parser.parseInline(n)}</strong>`}em({tokens:n}){return`<em>${this.parser.parseInline(n)}</em>`}codespan({text:n}){return`<code>${Jt(n,!0)}</code>`}br(n){return"<br>"}del({tokens:n}){return`<del>${this.parser.parseInline(n)}</del>`}link({href:n,title:e,tokens:t}){let i=this.parser.parseInline(t),r=ru(n);if(r===null)return i;n=r;let s='<a href="'+n+'"';return e&&(s+=' title="'+Jt(e)+'"'),s+=">"+i+"</a>",s}image({href:n,title:e,text:t,tokens:i}){i&&(t=this.parser.parseInline(i,this.parser.textRenderer));let r=ru(n);if(r===null)return Jt(t);n=r;let s=`<img src="${n}" alt="${t}"`;return e&&(s+=` title="${Jt(e)}"`),s+=">",s}text(n){return"tokens"in n&&n.tokens?this.parser.parseInline(n.tokens):"escaped"in n&&n.escaped?n.text:Jt(n.text)}},El=class{strong({text:n}){return n}em({text:n}){return n}codespan({text:n}){return n}del({text:n}){return n}html({text:n}){return n}text({text:n}){return n}link({text:n}){return""+n}image({text:n}){return""+n}br(){return""}},un=class wl{constructor(e){ce(this,"options");ce(this,"renderer");ce(this,"textRenderer");this.options=e||Kn,this.options.renderer=this.options.renderer||new Es,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new El}static parse(e,t){return new wl(t).parse(e)}static parseInline(e,t){return new wl(t).parseInline(e)}parse(e,t=!0){let i="";for(let r=0;r<e.length;r++){let s=e[r];if(this.options.extensions?.renderers?.[s.type]){let l=s,a=this.options.extensions.renderers[l.type].call({parser:this},l);if(a!==!1||!["space","hr","heading","code","table","blockquote","list","html","paragraph","text"].includes(l.type)){i+=a||"";continue}}let o=s;switch(o.type){case"space":{i+=this.renderer.space(o);continue}case"hr":{i+=this.renderer.hr(o);continue}case"heading":{i+=this.renderer.heading(o);continue}case"code":{i+=this.renderer.code(o);continue}case"table":{i+=this.renderer.table(o);continue}case"blockquote":{i+=this.renderer.blockquote(o);continue}case"list":{i+=this.renderer.list(o);continue}case"html":{i+=this.renderer.html(o);continue}case"paragraph":{i+=this.renderer.paragraph(o);continue}case"text":{let l=o,a=this.renderer.text(l);for(;r+1<e.length&&e[r+1].type==="text";)l=e[++r],a+=`
577
- `+this.renderer.text(l);t?i+=this.renderer.paragraph({type:"paragraph",raw:a,text:a,tokens:[{type:"text",raw:a,text:a,escaped:!0}]}):i+=a;continue}default:{let l='Token with "'+o.type+'" type was not found.';if(this.options.silent)return console.error(l),"";throw new Error(l)}}}return i}parseInline(e,t=this.renderer){let i="";for(let r=0;r<e.length;r++){let s=e[r];if(this.options.extensions?.renderers?.[s.type]){let l=this.options.extensions.renderers[s.type].call({parser:this},s);if(l!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(s.type)){i+=l||"";continue}}let o=s;switch(o.type){case"escape":{i+=t.text(o);break}case"html":{i+=t.html(o);break}case"link":{i+=t.link(o);break}case"image":{i+=t.image(o);break}case"strong":{i+=t.strong(o);break}case"em":{i+=t.em(o);break}case"codespan":{i+=t.codespan(o);break}case"br":{i+=t.br(o);break}case"del":{i+=t.del(o);break}case"text":{i+=t.text(o);break}default:{let l='Token with "'+o.type+'" type was not found.';if(this.options.silent)return console.error(l),"";throw new Error(l)}}}return i}},gl,Ts=(gl=class{constructor(n){ce(this,"options");ce(this,"block");this.options=n||Kn}preprocess(n){return n}postprocess(n){return n}processAllTokens(n){return n}provideLexer(){return this.block?hn.lex:hn.lexInline}provideParser(){return this.block?un.parse:un.parseInline}},ce(gl,"passThroughHooks",new Set(["preprocess","postprocess","processAllTokens"])),gl),N0=class{constructor(...n){ce(this,"defaults",xl());ce(this,"options",this.setOptions);ce(this,"parse",this.parseMarkdown(!0));ce(this,"parseInline",this.parseMarkdown(!1));ce(this,"Parser",un);ce(this,"Renderer",Es);ce(this,"TextRenderer",El);ce(this,"Lexer",hn);ce(this,"Tokenizer",Ms);ce(this,"Hooks",Ts);this.use(...n)}walkTokens(n,e){let t=[];for(let i of n)switch(t=t.concat(e.call(this,i)),i.type){case"table":{let r=i;for(let s of r.header)t=t.concat(this.walkTokens(s.tokens,e));for(let s of r.rows)for(let o of s)t=t.concat(this.walkTokens(o.tokens,e));break}case"list":{let r=i;t=t.concat(this.walkTokens(r.items,e));break}default:{let r=i;this.defaults.extensions?.childTokens?.[r.type]?this.defaults.extensions.childTokens[r.type].forEach(s=>{let o=r[s].flat(1/0);t=t.concat(this.walkTokens(o,e))}):r.tokens&&(t=t.concat(this.walkTokens(r.tokens,e)))}}return t}use(...n){let e=this.defaults.extensions||{renderers:{},childTokens:{}};return n.forEach(t=>{let i={...t};if(i.async=this.defaults.async||i.async||!1,t.extensions&&(t.extensions.forEach(r=>{if(!r.name)throw new Error("extension name required");if("renderer"in r){let s=e.renderers[r.name];s?e.renderers[r.name]=function(...o){let l=r.renderer.apply(this,o);return l===!1&&(l=s.apply(this,o)),l}:e.renderers[r.name]=r.renderer}if("tokenizer"in r){if(!r.level||r.level!=="block"&&r.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let s=e[r.level];s?s.unshift(r.tokenizer):e[r.level]=[r.tokenizer],r.start&&(r.level==="block"?e.startBlock?e.startBlock.push(r.start):e.startBlock=[r.start]:r.level==="inline"&&(e.startInline?e.startInline.push(r.start):e.startInline=[r.start]))}"childTokens"in r&&r.childTokens&&(e.childTokens[r.name]=r.childTokens)}),i.extensions=e),t.renderer){let r=this.defaults.renderer||new Es(this.defaults);for(let s in t.renderer){if(!(s in r))throw new Error(`renderer '${s}' does not exist`);if(["options","parser"].includes(s))continue;let o=s,l=t.renderer[o],a=r[o];r[o]=(...c)=>{let h=l.apply(r,c);return h===!1&&(h=a.apply(r,c)),h||""}}i.renderer=r}if(t.tokenizer){let r=this.defaults.tokenizer||new Ms(this.defaults);for(let s in t.tokenizer){if(!(s in r))throw new Error(`tokenizer '${s}' does not exist`);if(["options","rules","lexer"].includes(s))continue;let o=s,l=t.tokenizer[o],a=r[o];r[o]=(...c)=>{let h=l.apply(r,c);return h===!1&&(h=a.apply(r,c)),h}}i.tokenizer=r}if(t.hooks){let r=this.defaults.hooks||new Ts;for(let s in t.hooks){if(!(s in r))throw new Error(`hook '${s}' does not exist`);if(["options","block"].includes(s))continue;let o=s,l=t.hooks[o],a=r[o];Ts.passThroughHooks.has(s)?r[o]=c=>{if(this.defaults.async)return Promise.resolve(l.call(r,c)).then(u=>a.call(r,u));let h=l.call(r,c);return a.call(r,h)}:r[o]=(...c)=>{let h=l.apply(r,c);return h===!1&&(h=a.apply(r,c)),h}}i.hooks=r}if(t.walkTokens){let r=this.defaults.walkTokens,s=t.walkTokens;i.walkTokens=function(o){let l=[];return l.push(s.call(this,o)),r&&(l=l.concat(r.call(this,o))),l}}this.defaults={...this.defaults,...i}}),this}setOptions(n){return this.defaults={...this.defaults,...n},this}lexer(n,e){return hn.lex(n,e??this.defaults)}parser(n,e){return un.parse(n,e??this.defaults)}parseMarkdown(n){return(t,i)=>{let r={...i},s={...this.defaults,...r},o=this.onError(!!s.silent,!!s.async);if(this.defaults.async===!0&&r.async===!1)return o(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof t>"u"||t===null)return o(new Error("marked(): input parameter is undefined or null"));if(typeof t!="string")return o(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(t)+", string expected"));s.hooks&&(s.hooks.options=s,s.hooks.block=n);let l=s.hooks?s.hooks.provideLexer():n?hn.lex:hn.lexInline,a=s.hooks?s.hooks.provideParser():n?un.parse:un.parseInline;if(s.async)return Promise.resolve(s.hooks?s.hooks.preprocess(t):t).then(c=>l(c,s)).then(c=>s.hooks?s.hooks.processAllTokens(c):c).then(c=>s.walkTokens?Promise.all(this.walkTokens(c,s.walkTokens)).then(()=>c):c).then(c=>a(c,s)).then(c=>s.hooks?s.hooks.postprocess(c):c).catch(o);try{s.hooks&&(t=s.hooks.preprocess(t));let c=l(t,s);s.hooks&&(c=s.hooks.processAllTokens(c)),s.walkTokens&&this.walkTokens(c,s.walkTokens);let h=a(c,s);return s.hooks&&(h=s.hooks.postprocess(h)),h}catch(c){return o(c)}}}onError(n,e){return t=>{if(t.message+=`
578
- Please report this to https://github.com/markedjs/marked.`,n){let i="<p>An error occurred:</p><pre>"+Jt(t.message+"",!0)+"</pre>";return e?Promise.resolve(i):i}if(e)return Promise.reject(t);throw t}}},Un=new N0;function le(n,e){return Un.parse(n,e)}le.options=le.setOptions=function(n){return Un.setOptions(n),le.defaults=Un.defaults,lu(le.defaults),le};le.getDefaults=xl;le.defaults=Kn;le.use=function(...n){return Un.use(...n),le.defaults=Un.defaults,lu(le.defaults),le};le.walkTokens=function(n,e){return Un.walkTokens(n,e)};le.parseInline=Un.parseInline;le.Parser=un;le.parser=un.parse;le.Renderer=Es;le.TextRenderer=El;le.Lexer=hn;le.lexer=hn.lex;le.Tokenizer=Ms;le.Hooks=Ts;le.parse=le;var pv=le.options,mv=le.setOptions,gv=le.use,bv=le.walkTokens,yv=le.parseInline;var wv=un.parse,xv=hn.lex;var Hl={};Nh(Hl,{default:()=>_l});function yu(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,i=Array(e);t<e;t++)i[t]=n[t];return i}function B0(n){if(Array.isArray(n))return n}function _0(n,e){var t=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(t!=null){var i,r,s,o,l=[],a=!0,c=!1;try{if(s=(t=t.call(n)).next,e!==0)for(;!(a=(i=s.call(t)).done)&&(l.push(i.value),l.length!==e);a=!0);}catch(h){c=!0,r=h}finally{try{if(!a&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(c)throw r}}return l}}function H0(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
579
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function F0(n,e){return B0(n)||_0(n,e)||z0(n,e)||H0()}function z0(n,e){if(n){if(typeof n=="string")return yu(n,e);var t={}.toString.call(n).slice(8,-1);return t==="Object"&&n.constructor&&(t=n.constructor.name),t==="Map"||t==="Set"?Array.from(n):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?yu(n,e):void 0}}var Pu=Object.entries,wu=Object.setPrototypeOf,W0=Object.isFrozen,V0=Object.getPrototypeOf,$0=Object.getOwnPropertyDescriptor,Ne=Object.freeze,Fe=Object.seal,Ai=Object.create,Iu=typeof Reflect<"u"&&Reflect,Nl=Iu.apply,Bl=Iu.construct;Ne||(Ne=function(e){return e});Fe||(Fe=function(e){return e});Nl||(Nl=function(e,t){for(var i=arguments.length,r=new Array(i>2?i-2:0),s=2;s<i;s++)r[s-2]=arguments[s];return e.apply(t,r)});Bl||(Bl=function(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),r=1;r<t;r++)i[r-1]=arguments[r];return new e(...i)});var Gn=Re(Array.prototype.forEach),U0=Re(Array.prototype.lastIndexOf),xu=Re(Array.prototype.pop),ur=Re(Array.prototype.push),K0=Re(Array.prototype.splice),Mi=Array.isArray,pr=Re(String.prototype.toLowerCase),Dl=Re(String.prototype.toString),vu=Re(String.prototype.match),dr=Re(String.prototype.replace),ku=Re(String.prototype.indexOf),j0=Re(String.prototype.trim),G0=Re(Number.prototype.toString),q0=Re(Boolean.prototype.toString),Su=typeof BigInt>"u"?null:Re(BigInt.prototype.toString),Cu=typeof Symbol>"u"?null:Re(Symbol.prototype.toString),at=Re(Object.prototype.hasOwnProperty),fr=Re(Object.prototype.toString),Ue=Re(RegExp.prototype.test),jn=X0(TypeError);function Re(n){return function(e){e instanceof RegExp&&(e.lastIndex=0);for(var t=arguments.length,i=new Array(t>1?t-1:0),r=1;r<t;r++)i[r-1]=arguments[r];return Nl(n,e,i)}}function X0(n){return function(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];return Bl(n,t)}}function se(n,e){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:pr;if(wu&&wu(n,null),!Mi(e))return n;let i=e.length;for(;i--;){let r=e[i];if(typeof r=="string"){let s=t(r);s!==r&&(W0(e)||(e[i]=s),r=s)}n[r]=!0}return n}function Y0(n){for(let e=0;e<n.length;e++)at(n,e)||(n[e]=null);return n}function pt(n){let e=Ai(null);for(let i of Pu(n)){var t=F0(i,2);let r=t[0],s=t[1];at(n,r)&&(Mi(s)?e[r]=Y0(s):s&&typeof s=="object"&&s.constructor===Object?e[r]=pt(s):e[r]=s)}return e}function J0(n){switch(typeof n){case"string":return n;case"number":return G0(n);case"boolean":return q0(n);case"bigint":return Su?Su(n):"0";case"symbol":return Cu?Cu(n):"Symbol()";case"undefined":return fr(n);case"function":case"object":{if(n===null)return fr(n);let e=n,t=vt(e,"toString");if(typeof t=="function"){let i=t(e);return typeof i=="string"?i:fr(i)}return fr(n)}default:return fr(n)}}function vt(n,e){for(;n!==null;){let i=$0(n,e);if(i){if(i.get)return Re(i.get);if(typeof i.value=="function")return Re(i.value)}n=V0(n)}function t(){return null}return t}function Z0(n){try{return Ue(n,""),!0}catch{return!1}}var Tu=Ne(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),Rl=Ne(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),Ll=Ne(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),Q0=Ne(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),Ol=Ne(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),eb=Ne(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),Au=Ne(["#text"]),Mu=Ne(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","command","commandfor","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),Pl=Ne(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dominant-baseline","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","pointer-events","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-orientation","text-rendering","textlength","type","u1","u2","unicode","values","vector-effect","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),Eu=Ne(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),Ls=Ne(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),tb=Fe(/{{[\w\W]*|^[\w\W]*}}/g),nb=Fe(/<%[\w\W]*|^[\w\W]*%>/g),ib=Fe(/\${[\w\W]*/g),rb=Fe(/^data-[\-\w.\u00B7-\uFFFF]+$/),sb=Fe(/^aria-[\-\w]+$/),Du=Fe(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),ob=Fe(/^(?:\w+script|data):/i),lb=Fe(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),ab=Fe(/^html$/i),cb=Fe(/^[a-z][.\w]*(-[.\w]+)+$/i),Ru=Fe(/<[/\w!]/g),Lu=Fe(/<[/\w]/g),hb=Fe(/<\/no(script|embed|frames)/i),ub=Fe(/\/>/i),ft={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},Nu=["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"],db=Ne(se({},Nu)),fb=(function(){let n={};return Gn(Nu,e=>{n[e]=Fe(new RegExp("</"+e+"(?=[\\t\\n\\f\\r />])","i"))}),Ne(n)})(),pb=function(){return typeof window>"u"?null:window},mb=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let i=null,r="data-tt-policy-suffix";t&&t.hasAttribute(r)&&(i=t.getAttribute(r));let s="dompurify"+(i?"#"+i:"");try{return e.createPolicy(s,{createHTML(o){return o},createScriptURL(o){return o}})}catch{return console.warn("TrustedTypes policy "+s+" could not be created."),null}},Ou=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},En=function(e,t,i,r){return at(e,t)&&Mi(e[t])?se(r.base?pt(r.base):{},e[t],r.transform):i},Il=function(e,t,i){let r=at(e,t)?e[t]:void 0;return r&&typeof r=="object"?pt(r):i()};function Bu(){let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:pb(),e=E=>Bu(E);if(e.version="3.4.15",e.removed=[],!n||!n.document||n.document.nodeType!==ft.document||!n.Element)return e.isSupported=!1,e;let t=n.document,i=t,r=i.currentScript;n.DocumentFragment;let s=n.HTMLTemplateElement,o=n.Node,l=n.Element,a=n.NodeFilter,c=n.NamedNodeMap;c===void 0&&(n.NamedNodeMap||n.MozNamedAttrMap),n.HTMLFormElement;let h=n.DOMParser,u=n.trustedTypes,d=l.prototype,f=vt(d,"cloneNode"),p=vt(d,"remove"),g=vt(d,"removeAttributeNode"),b=vt(d,"nextSibling"),y=vt(d,"childNodes"),x=vt(d,"parentNode"),C=vt(d,"shadowRoot"),H=vt(d,"attributes"),S=o&&o.prototype?vt(o.prototype,"nodeType"):null,A=o&&o.prototype?vt(o.prototype,"nodeName"):null,v=o&&o.prototype?vt(o.prototype,"ownerDocument"):null,_=function(m){return S?S(m):m.nodeType},B=function(m){return A?A(m):m.nodeName};if(typeof s=="function"){let E=t.createElement("template");E.content&&E.content.ownerDocument&&(t=E.content.ownerDocument)}let z,W="",M,F=!1,K=0,G=function(){if(K>0)throw jn('A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.')},J=function(m){G(),K++;try{return z.createHTML(m)}finally{K--}},Be=function(m){G(),K++;try{return z.createScriptURL(m)}finally{K--}},it=function(){return F||(M=mb(u,r),F=!0),M},Ce=t,_e=Ce.implementation,Xe=Ce.createNodeIterator,He=Ce.createDocumentFragment,Ye=Ce.getElementsByTagName,wt=i.importNode,ie=Ou();e.isSupported=typeof Pu=="function"&&typeof x=="function"&&_e&&_e.createHTMLDocument!==void 0;let vn=tb,kn=nb,Uo=ib,Ko=rb,jo=sb,Go=ob,Qi=lb,ah=cb,qo=Du,ye=null,ls=se({},[...Tu,...Rl,...Ll,...Ol,...Au]),I=null,re=se({},[...Mu,...Pl,...Eu,...Ls]),we=Object.seal(Ai(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Lt=null,xt=null,rt=Object.seal(Ai(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),jt=!0,er=!0,ch=!1,hh=!0,Sn=!1,Wn=!0,Vn=!1,Xo=!1,as=null,cs=null,Yo=!1,wi=!1,hs=!1,us=!1,uh=!0,dh=!1,fh="user-content-",Jo=!0,Zo=!1,xi={},vi=null,ph=se({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","selectedcontent","style","svg","template","thead","title","video","xmp"]),mh=null,gh=se({},["audio","video","img","source","image","track"]),bh=null,yh=se({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ds="http://www.w3.org/1998/Math/MathML",fs="http://www.w3.org/2000/svg",Gt="http://www.w3.org/1999/xhtml",ki=Gt,Qo=!1,el=null,Sg=se({},[ds,fs,Gt],Dl),wh=Ne(["mi","mo","mn","ms","mtext"]),tl=se({},wh),xh=Ne(["annotation-xml"]),nl=se({},xh),Cg=se({},["title","style","font","a","script"]),tr=null,Tg=["application/xhtml+xml","text/html"],Ag="text/html",Ee=null,Si=null,Mg=t.createElement("form"),vh=function(m){return m instanceof RegExp||m instanceof Function},il=function(){let m=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(Si&&Si===m)return;(!m||typeof m!="object")&&(m={}),m=pt(m),tr=Tg.indexOf(m.PARSER_MEDIA_TYPE)===-1?Ag:m.PARSER_MEDIA_TYPE,Ee=tr==="application/xhtml+xml"?Dl:pr,ye=En(m,"ALLOWED_TAGS",ls,{transform:Ee}),I=En(m,"ALLOWED_ATTR",re,{transform:Ee}),el=En(m,"ALLOWED_NAMESPACES",Sg,{transform:Dl}),bh=En(m,"ADD_URI_SAFE_ATTR",yh,{transform:Ee,base:yh}),mh=En(m,"ADD_DATA_URI_TAGS",gh,{transform:Ee,base:gh}),vi=En(m,"FORBID_CONTENTS",ph,{transform:Ee}),Lt=En(m,"FORBID_TAGS",pt({}),{transform:Ee}),xt=En(m,"FORBID_ATTR",pt({}),{transform:Ee}),xi=at(m,"USE_PROFILES")?m.USE_PROFILES&&typeof m.USE_PROFILES=="object"?pt(m.USE_PROFILES):m.USE_PROFILES:!1,jt=m.ALLOW_ARIA_ATTR!==!1,er=m.ALLOW_DATA_ATTR!==!1,ch=m.ALLOW_UNKNOWN_PROTOCOLS||!1,hh=m.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Sn=m.SAFE_FOR_TEMPLATES||!1,Wn=m.SAFE_FOR_XML!==!1,Vn=m.WHOLE_DOCUMENT||!1,wi=m.RETURN_DOM||!1,hs=m.RETURN_DOM_FRAGMENT||!1,us=m.RETURN_TRUSTED_TYPE||!1,Yo=m.FORCE_BODY||!1,uh=m.SANITIZE_DOM!==!1,dh=m.SANITIZE_NAMED_PROPS||!1,Jo=m.KEEP_CONTENT!==!1,Zo=m.IN_PLACE||!1,qo=Z0(m.ALLOWED_URI_REGEXP)?m.ALLOWED_URI_REGEXP:Du,ki=typeof m.NAMESPACE=="string"?m.NAMESPACE:Gt,tl=Il(m,"MATHML_TEXT_INTEGRATION_POINTS",()=>se({},wh)),nl=Il(m,"HTML_INTEGRATION_POINTS",()=>se({},xh));let w=Il(m,"CUSTOM_ELEMENT_HANDLING",()=>Ai(null));if(we=Ai(null),at(w,"tagNameCheck")&&vh(w.tagNameCheck)&&(we.tagNameCheck=w.tagNameCheck),at(w,"attributeNameCheck")&&vh(w.attributeNameCheck)&&(we.attributeNameCheck=w.attributeNameCheck),at(w,"allowCustomizedBuiltInElements")&&typeof w.allowCustomizedBuiltInElements=="boolean"&&(we.allowCustomizedBuiltInElements=w.allowCustomizedBuiltInElements),Fe(we),Sn&&(er=!1),hs&&(wi=!0),xi&&(ye=se({},Au),I=Ai(null),xi.html===!0&&(se(ye,Tu),se(I,Mu)),xi.svg===!0&&(se(ye,Rl),se(I,Pl),se(I,Ls)),xi.svgFilters===!0&&(se(ye,Ll),se(I,Pl),se(I,Ls)),xi.mathMl===!0&&(se(ye,Ol),se(I,Eu),se(I,Ls))),rt.tagCheck=null,rt.attributeCheck=null,at(m,"ADD_TAGS")&&(typeof m.ADD_TAGS=="function"?rt.tagCheck=m.ADD_TAGS:Mi(m.ADD_TAGS)&&(ye===ls&&(ye=pt(ye)),se(ye,m.ADD_TAGS,Ee))),at(m,"ADD_ATTR")&&(typeof m.ADD_ATTR=="function"?rt.attributeCheck=m.ADD_ATTR:Mi(m.ADD_ATTR)&&(I===re&&(I=pt(I)),se(I,m.ADD_ATTR,Ee))),at(m,"ADD_FORBID_CONTENTS")&&Mi(m.ADD_FORBID_CONTENTS)&&(vi===ph&&(vi=pt(vi)),se(vi,m.ADD_FORBID_CONTENTS,Ee)),Jo&&(ye["#text"]=!0),Vn&&se(ye,["html","head","body"]),ye.table&&(se(ye,["tbody"]),delete Lt.tbody),m.TRUSTED_TYPES_POLICY){if(typeof m.TRUSTED_TYPES_POLICY.createHTML!="function")throw jn('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof m.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw jn('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');let T=z;z=m.TRUSTED_TYPES_POLICY;try{W=J("")}catch(N){throw z=T,N}}else m.TRUSTED_TYPES_POLICY===null?(z=void 0,W=""):(z===void 0&&(z=it()),z&&typeof W=="string"&&(W=J("")));Ne&&Ne(m),Si=m},kh=se({},[...Rl,...Ll,...Q0]),Sh=se({},[...Ol,...eb]),Eg=function(m,w,T){return w.namespaceURI===Gt?m==="svg":w.namespaceURI===ds?m==="svg"&&(T==="annotation-xml"||tl[T]):!!kh[m]},Dg=function(m,w,T){return w.namespaceURI===Gt?m==="math":w.namespaceURI===fs?m==="math"&&nl[T]:!!Sh[m]},Rg=function(m,w,T){return w.namespaceURI===fs&&!nl[T]||w.namespaceURI===ds&&!tl[T]?!1:!Sh[m]&&(Cg[m]||!kh[m])},Lg=function(m){let w=x(m);(!w||!w.tagName)&&(w={namespaceURI:ki,tagName:"template"});let T=pr(m.tagName),N=pr(w.tagName);return el[m.namespaceURI]?m.namespaceURI===fs?Eg(T,w,N):m.namespaceURI===ds?Dg(T,w,N):m.namespaceURI===Gt?Rg(T,w,N):!!(tr==="application/xhtml+xml"&&el[m.namespaceURI]):!1},Cn=function(m){ur(e.removed,{element:m});try{x(m).removeChild(m)}catch{if(p(m),!x(m))throw jn("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},Ch=function(m,w,T){try{g(m,w)}catch{try{m.removeAttribute(T)}catch{}}},ps=function(m){ms(m);let w=y(m);if(w){let N=[];Gn(w,V=>{ur(N,V)}),Gn(N,V=>{try{p(V)}catch{}})}let T=H(m);if(T)for(let N=T.length-1;N>=0;--N){let V=T[N],q=V&&V.name;typeof q=="string"&&Ch(m,V,q)}},$n=function(m,w,T){if(!T)try{T=w.getAttributeNode(m)}catch{T=null}ur(e.removed,{attribute:T||null,from:w});try{T?g(w,T):w.removeAttribute(m)}catch{try{w.removeAttribute(m)}catch{}}if(m==="is")if(wi||hs)try{Cn(w)}catch{}else try{w.setAttribute(m,"")}catch{}},Og=function(m){let w=H(m);if(w)for(let T=w.length-1;T>=0;--T){let N=w[T],V=N&&N.name;typeof V!="string"||I[Ee(V)]||Ch(m,N,V)}},ms=function(m){let w=[m];for(;w.length>0;){let T=w.pop();_(T)===ft.element&&Og(T);let V=y(T);if(V)for(let q=V.length-1;q>=0;--q)w.push(V[q])}},Th=function(m,w){return Wn?m==="patchsrc"?!0:m==="for"&&w!=="label"&&w!=="output":!1},Pg=function(m){if(!Wn)return;let w=[m];for(;w.length>0;){let T=w.pop(),N=_(T);if(N===ft.processingInstruction||N===ft.comment&&Ue(Lu,T.data)){try{p(T)}catch{}continue}if(N===ft.element){let q=T,fe=Ee(B(T));try{q.hasAttribute&&q.hasAttribute("patchsrc")&&q.removeAttribute("patchsrc"),q.hasAttribute&&q.hasAttribute("for")&&Th("for",fe)&&q.removeAttribute("for")}catch{}}let V=y(T);if(V)for(let q=V.length-1;q>=0;--q)w.push(V[q])}},Ah=function(m){let w=null,T=null;if(Yo)m="<remove></remove>"+m;else{let q=vu(m,/^[\r\n\t ]+/);T=q&&q[0]}tr==="application/xhtml+xml"&&ki===Gt&&(m='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+m+"</body></html>");let N=z?J(m):m;if(ki===Gt)try{w=new h().parseFromString(N,tr)}catch{}if(!w||!w.documentElement){w=_e.createDocument(ki,"template",null);try{w.documentElement.innerHTML=Qo?W:N}catch{}}let V=w.body||w.documentElement;return m&&T&&V.insertBefore(t.createTextNode(T),V.childNodes[0]||null),ki===Gt?Ye.call(w,Vn?"html":"body")[0]:Vn?w.documentElement:V},Mh=function(m){let w=v?v(m):m.ownerDocument;return Xe.call(w||m,m,a.SHOW_ELEMENT|a.SHOW_COMMENT|a.SHOW_TEXT|a.SHOW_PROCESSING_INSTRUCTION|a.SHOW_CDATA_SECTION,null)},gs=function(m){return m=dr(m,vn," "),m=dr(m,kn," "),m=dr(m,Uo," "),m},rl=function(m){var w;m.normalize();let T=v?v(m):m.ownerDocument,N=Xe.call(T||m,m,a.SHOW_TEXT|a.SHOW_COMMENT|a.SHOW_CDATA_SECTION|a.SHOW_PROCESSING_INSTRUCTION,null),V=N.nextNode();for(;V;)V.data=gs(V.data),V=N.nextNode();let q=(w=m.querySelectorAll)===null||w===void 0?void 0:w.call(m,"template");q&&Gn(q,fe=>{Ci(fe.content)&&rl(fe.content)})},bs=function(m){let w=A?A(m):null;return typeof w!="string"||Ee(w)!=="form"?!1:typeof m.nodeName!="string"||typeof m.textContent!="string"||typeof m.removeChild!="function"||m.attributes!==H(m)||typeof m.removeAttribute!="function"||typeof m.removeAttributeNode!="function"||typeof m.getAttributeNode!="function"||typeof m.setAttribute!="function"||typeof m.namespaceURI!="string"||typeof m.insertBefore!="function"||typeof m.hasChildNodes!="function"||m.nodeType!==S(m)||m.childNodes!==y(m)},Ci=function(m){if(!S||typeof m!="object"||m===null)return!1;try{return S(m)===ft.documentFragment}catch{return!1}},nr=function(m){if(!S||typeof m!="object"||m===null)return!1;try{return typeof S(m)=="number"}catch{return!1}};function qt(E,m,w){E.length!==0&&Gn(E,T=>{T.call(e,m,w,Si)})}let Ig=function(m,w){return!!(Wn&&m.hasChildNodes()&&!nr(m.firstElementChild)&&Ue(Ru,m.textContent)&&Ue(Ru,m.innerHTML)||Wn&&m.namespaceURI===Gt&&db[w]&&(nr(m.firstElementChild)||typeof m.textContent=="string"&&Ue(fb[w],m.textContent))||m.nodeType===ft.processingInstruction||Wn&&m.nodeType===ft.comment&&Ue(Lu,m.data))},ys=function(m,w){if(m instanceof RegExp)return Ue(m,w);if(m instanceof Function){for(var T=arguments.length,N=new Array(T>2?T-2:0),V=2;V<T;V++)N[V-2]=arguments[V];return!!m(w,...N)}return!1},Ng=function(m,w,T){if(!Lt[w]&&Oh(w)&&ys(we.tagNameCheck,w))return!1;if(Jo&&!vi[w]){let N=x(m),V=y(m);if(V&&N){let q=V.length;for(let fe=q-1;fe>=0;--fe){let Te=m===T?f(V[fe],!0):V[fe];N.insertBefore(Te,b(m))}}}return Cn(m),!0},Eh=function(m,w,T,N){return m.length===0?w:w===T||w===N?pt(w):w},Dh=function(m,w){return m===w||x(m)!==null?!1:(Zo&&ms(m),!0)},Rh=function(m,w){if(qt(ie.beforeSanitizeElements,m,null),Dh(m,w))return!0;if(bs(m))return Cn(m),!0;let T=Ee(B(m));if(ye=Eh(ie.uponSanitizeElement,ye,ls,as),qt(ie.uponSanitizeElement,m,{tagName:T,allowedTags:ye}),Dh(m,w))return!0;if(Ig(m,T))return Cn(m),!0;if(Lt[T]||!(rt.tagCheck instanceof Function&&rt.tagCheck(T))&&!ye[T]){let V=Ng(m,T,w);return V===!1&&qt(ie.afterSanitizeElements,m,null),V}if(_(m)===ft.element&&!Lg(m)||(T==="noscript"||T==="noembed"||T==="noframes")&&Ue(hb,m.innerHTML))return Cn(m),!0;if(Sn&&m.nodeType===ft.text){let V=gs(m.textContent);m.textContent!==V&&(ur(e.removed,{element:m.cloneNode()}),m.textContent=V)}return qt(ie.afterSanitizeElements,m,null),!1},Lh=function(m,w,T){if(xt[w]||Th(w,m)||uh&&(w==="id"||w==="name")&&(T in t||T in Mg))return!1;let N=I[w]||rt.attributeCheck instanceof Function&&rt.attributeCheck(w,m);return er&&Ue(Ko,w)||jt&&Ue(jo,w)?!0:N?bh[w]||Ue(qo,dr(T,Qi,""))||(w==="src"||w==="xlink:href"||w==="href")&&m!=="script"&&ku(T,"data:")===0&&mh[m]||ch&&!Ue(Go,dr(T,Qi,""))?!0:!T:Oh(m)&&ys(we.tagNameCheck,m)&&ys(we.attributeNameCheck,w,m)||w==="is"&&we.allowCustomizedBuiltInElements&&ys(we.tagNameCheck,T)},Bg=se({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),Oh=function(m){return!Bg[pr(m)]&&Ue(ah,m)},_g=function(m,w,T,N){if(z&&typeof u=="object"&&typeof u.getAttributeType=="function"&&!T)switch(u.getAttributeType(m,w)){case"TrustedHTML":return J(N);case"TrustedScriptURL":return Be(N)}return N},Hg=function(m,w,T,N){try{return T?m.setAttributeNS(T,w,N):m.setAttribute(w,N),bs(m)?(Cn(m),!1):!0}catch{return $n(w,m),!1}},Ph=function(m){qt(ie.beforeSanitizeAttributes,m,null);let w=m.attributes;if(!w||bs(m))return;I=Eh(ie.uponSanitizeAttribute,I,re,cs);let T={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:I,forceKeepAttr:void 0},N=w.length,V=Ee(m.nodeName);for(;N--;){let q=w[N],fe=q.name,Te=q.namespaceURI,st=q.value,ot=Ee(fe),ol=st,Je=fe==="value"?ol:j0(ol),Ih=!1;if(T.attrName=ot,T.attrValue=Je,T.keepAttr=!0,T.forceKeepAttr=void 0,qt(ie.uponSanitizeAttribute,m,T),Je=T.attrValue,dh&&(ot==="id"||ot==="name")&&ku(Je,fh)!==0&&($n(fe,m,q),Je=fh+Je,Ih=!0),Wn&&Ue(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,Je)){$n(fe,m,q);continue}if(ot==="attributename"&&vu(Je,"href")){$n(fe,m,q);continue}if(!T.forceKeepAttr){if(!T.keepAttr){$n(fe,m,q);continue}if(!hh&&Ue(ub,Je)){$n(fe,m,q);continue}if(Sn&&(Je=gs(Je)),!Lh(V,ot,Je)){$n(fe,m,q);continue}Je=_g(V,ot,Te,Je),Je!==ol&&Hg(m,fe,Te,Je)&&Ih&&xu(e.removed)}}qt(ie.afterSanitizeAttributes,m,null)},ws=function(m){let w=null,T=Mh(m);for(qt(ie.beforeSanitizeShadowDOM,m,null);w=T.nextNode();)if(qt(ie.uponSanitizeShadowNode,w,null),Rh(w,m),Ph(w),Ci(w.content)&&ws(w.content),_(w)===ft.element){let N=C(w);Ci(N)&&(sl(N),ws(N))}qt(ie.afterSanitizeShadowDOM,m,null)},sl=function(m){let w=[{node:m,shadow:null}];for(;w.length>0;){let T=w.pop();if(T.shadow){ws(T.shadow);continue}let N=T.node,q=_(N)===ft.element,fe=y(N);if(fe)for(let Te=fe.length-1;Te>=0;--Te)w.push({node:fe[Te],shadow:null});if(q){let Te=A?A(N):null;if(typeof Te=="string"&&Ee(Te)==="template"){let st=N.content;Ci(st)&&w.push({node:st,shadow:null})}}if(q){let Te=C(N);Ci(Te)&&w.push({node:null,shadow:Te},{node:Te,shadow:null})}}};return e.sanitize=function(E){let m=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},w=null,T=null,N=null,V=null;if(Qo=!E,Qo&&(E="<!-->"),typeof E!="string"&&!nr(E)&&(E=J0(E),typeof E!="string"))throw jn("dirty is not a string, aborting");if(!e.isSupported)return E;Xo?(ye=as,I=cs):il(m),(ie.uponSanitizeElement.length>0||ie.uponSanitizeAttribute.length>0)&&(ye=pt(ye)),ie.uponSanitizeAttribute.length>0&&(I=pt(I)),e.removed=[];let q=Zo&&typeof E!="string"&&nr(E);if(q){Pg(E);let st=B(E);if(typeof st=="string"){let ot=Ee(st);if(!ye[ot]||Lt[ot])throw ps(E),jn("root node is forbidden and cannot be sanitized in-place")}if(bs(E))throw ps(E),jn("root node is clobbered and cannot be sanitized in-place");try{sl(E)}catch(ot){throw ps(E),ot}}else if(nr(E))w=Ah("<!---->"),T=w.ownerDocument.importNode(E,!0),T.nodeType===ft.element&&T.nodeName==="BODY"||T.nodeName==="HTML"?w=T:w.appendChild(T),sl(w);else{if(!wi&&!Sn&&!Vn&&E.indexOf("<")===-1)return z&&us?J(E):E;if(w=Ah(E),!w)return wi?null:us?W:""}w&&Yo&&Cn(w.firstChild);let fe=q?E:w;try{let st=Mh(fe);for(;N=st.nextNode();)Rh(N,fe),Ph(N),Ci(N.content)&&ws(N.content)}catch(st){throw q&&(ps(E),Gn(e.removed,ot=>{ot.element&&ms(ot.element)})),st}if(q)return Gn(e.removed,st=>{st.element&&ms(st.element)}),Sn&&rl(E),E;if(wi){if(Sn&&rl(w),hs)for(V=He.call(w.ownerDocument);w.firstChild;)V.appendChild(w.firstChild);else V=w;return(I.shadowroot||I.shadowrootmode)&&(V=wt.call(i,V,!0)),V}let Te=Vn?w.outerHTML:w.innerHTML;return Vn&&ye["!doctype"]&&w.ownerDocument&&w.ownerDocument.doctype&&w.ownerDocument.doctype.name&&Ue(ab,w.ownerDocument.doctype.name)&&(Te="<!DOCTYPE "+w.ownerDocument.doctype.name+`>
580
- `+Te),Sn&&(Te=gs(Te)),z&&us?J(Te):Te},e.setConfig=function(){let E=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};il(E),Xo=!0,as=ye,cs=I},e.clearConfig=function(){Si=null,Xo=!1,as=null,cs=null,z=M,W=""},e.isValidAttribute=function(E,m,w){Si||il({});let T=Ee(E),N=Ee(m);return Lh(T,N,w)},e.addHook=function(E,m){typeof m=="function"&&at(ie,E)&&ur(ie[E],m)},e.removeHook=function(E,m){if(at(ie,E)){if(m!==void 0){let w=U0(ie[E],m);return w===-1?void 0:K0(ie[E],w,1)[0]}return xu(ie[E])}},e.removeHooks=function(E){at(ie,E)&&(ie[E]=[])},e.removeAllHooks=function(){ie=Ou()},e}var _l=Bu();function Os(n,e,t,i){let r=t?Array.from(t):[];if(!n||!e||r.length===0)return!1;let s=X.conversation;if(!s)return i?.("error",k("attach.channelUnavailable")),!1;try{let o=s.createDrafts(n,r);if(o.length===0)return!1;let l=e.addAttachments(o.map(a=>a.id));return l||s.releaseDraftAttachments(o),l}catch(o){return i?.("error",o instanceof Error?o.message:String(o)),!1}}function _u(n){let e=null,t=X.conversation?.input.shell(n);if(typeof t?.bindFilePicker=="function")return t.bindFilePicker({available:()=>!0,open:()=>{e?.remove();let i=document.createElement("input");e=i,i.type="file",i.multiple=!0,i.style.display="none",i.addEventListener("change",()=>{i.remove(),e===i&&(e=null),Os(n,X.conversation?.input.shell(n)??void 0,i.files)}),document.body.appendChild(i),i.click()}})}function Hu(n){return n!==null&&Array.from(n.types).includes("Files")}var U=require("react/jsx-runtime");function qn(n,e,t){return(0,U.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:e??16,height:e??16,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round",className:t,"aria-hidden":"true",children:n})}var Fu=(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)("path",{d:"M6.8 5.8 2.9 11l4 4.4"}),(0,U.jsx)("path",{d:"M17.2 5.8 21.1 11l-3.9 4.4"}),(0,U.jsx)("path",{d:"M10.7 9.5 12.5 3.9"}),(0,U.jsx)("path",{d:"M16.6 9.4 6.9 14l2.9 1.3.1 2.5q.1.8.7.3l1-2.3 2.2 1.4Z"}),(0,U.jsx)("path",{d:"M9.8 15.3 16.6 9.4"})]});function zu({size:n,className:e}){return qn(Fu,n,e)}function Wu({size:n,className:e}){return qn((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)("path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"}),(0,U.jsx)("path",{d:"m15 5 4 4"})]}),n,e)}function Vu({size:n,className:e}){return qn((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)("path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"}),(0,U.jsx)("circle",{cx:"12",cy:"12",r:"3"})]}),n,e)}function $u({size:n,className:e}){return qn((0,U.jsx)("path",{d:"M18 6 6 18M6 6l12 12"}),n,e)}function Uu({size:n,className:e}){return qn((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)("path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"}),(0,U.jsx)("path",{d:"M14 2v4a2 2 0 0 0 2 2h4"})]}),n,e)}function Ku({size:n,className:e}){return qn((0,U.jsx)("path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z"}),n,e)}function ju({size:n,className:e}){return qn((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)("circle",{cx:"11",cy:"11",r:"8"}),(0,U.jsx)("path",{d:"m21 21-4.3-4.3"})]}),n,e)}function Gu({size:n}){return(0,U.jsx)("svg",{width:n??14,height:n??14,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:(0,U.jsx)("path",{d:"M8.64453 1.5V7.34961H14.5V8.65039H8.64453V14.5H7.34473V8.65039H1.5V7.34961H7.34473V1.5H8.64453Z",fill:"currentColor"})})}var qu="M8.20554 0.899994L14.7901 3.36857V7.01026C14.7901 12 11.0466 14.2103 8.20554 15.3C5.36446 14.2103 1.62012 12 1.62012 7.01026V3.36857L8.20554 0.899994Z",gb="M12.1654 5.7552L8.9447 9.41475C8.73044 9.65816 8.53628 9.8804 8.35774 10.0423C8.1713 10.2114 7.94235 10.3717 7.64016 10.4254C7.48207 10.4535 7.32 10.4552 7.16151 10.4294C6.85843 10.3801 6.62728 10.2223 6.43836 10.0559C6.25752 9.89653 6.06037 9.67732 5.84264 9.43705L4.72925 8.20897L5.63557 7.38707L6.74897 8.61594C6.98603 8.87755 7.12974 9.03533 7.24673 9.13839C7.31033 9.19443 7.34485 9.21476 7.35823 9.22122C7.38068 9.22484 7.40352 9.22515 7.42593 9.22122C7.40522 9.22502 7.42893 9.23294 7.53583 9.136C7.65132 9.03126 7.79316 8.87139 8.02643 8.60638L11.2479 4.94763L12.1654 5.7552Z";function Xu({size:n}){return(0,U.jsxs)("svg",{width:n??16,height:n??16,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[(0,U.jsx)("path",{d:qu,stroke:"currentColor",strokeWidth:"1.31831",strokeLinejoin:"round"}),(0,U.jsx)("path",{d:gb,fill:"currentColor"})]})}function Yu({size:n}){return(0,U.jsxs)("svg",{width:n??16,height:n??16,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[(0,U.jsx)("path",{d:"M8.08887 0.251709C8.20479 0.23085 8.32486 0.241168 8.43652 0.282959L15.0215 2.75171C15.2787 2.84819 15.4492 3.09414 15.4492 3.3689V7.0105C15.4492 7.10986 15.4441 7.2081 15.4414 7.30542C15.0285 7.07175 14.5905 6.87695 14.1309 6.73022V3.82495L8.20508 1.60327L2.2793 3.82495V7.0105C2.27936 9.7171 3.4745 11.5379 5.02734 12.7947C5.01025 12.9942 5 13.1962 5 13.4001C5.00001 13.7617 5.02722 14.1169 5.08008 14.4636C2.91555 13.0393 0.961014 10.752 0.960938 7.0105V3.3689C0.960938 3.09417 1.13146 2.84821 1.38867 2.75171L7.97461 0.282959L8.08887 0.251709Z",fill:"currentColor"}),(0,U.jsx)("path",{d:"M11.3525 5.64688V6.85688H5V5.64688H11.3525Z",fill:"currentColor"}),(0,U.jsx)("path",{d:"M9.5824 8.29376V9.50376H5V8.29376H9.5824Z",fill:"currentColor"}),(0,U.jsx)("path",{d:"M14.6647 15.6852H10.0338C10.3878 15.3751 10.7567 15.0517 11.0772 14.7706C11.2531 14.6164 11.4144 14.4746 11.5511 14.3547H14.6647V15.6852Z",fill:"currentColor"}),(0,U.jsx)("path",{d:"M8.14852 14.1308L7.33925 15.4976C7.22458 15.6912 7.42245 15.9194 7.63037 15.8333L9.09785 15.2254L15.0399 10.0719L14.0905 8.97733L8.14852 14.1308Z",fill:"currentColor"})]})}function Ju({size:n}){return(0,U.jsxs)("svg",{width:n??16,height:n??16,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[(0,U.jsx)("path",{d:qu,stroke:"currentColor",strokeWidth:"1.31831",strokeLinejoin:"round"}),(0,U.jsx)("path",{d:"M9.10094 4.5V8.75939H7.59888V4.5H9.10094Z",fill:"currentColor"}),(0,U.jsx)("path",{d:"M9.10094 9.8114V11.5H7.59888V9.8114H9.10094Z",fill:"currentColor"})]})}function Zu({size:n}){return(0,U.jsxs)("svg",{width:n??18,height:n??18,viewBox:"0 0 14 14",fill:"none","aria-hidden":"true",children:[(0,U.jsx)("path",{d:"M6.3002 3.32843L7.69986 3.32843L7.69986 7.79657H6.3002L6.3002 3.32843Z",fill:"currentColor"}),(0,U.jsx)("path",{d:"M6.3002 9.01935H7.69986V10.6711H6.3002V9.01935Z",fill:"currentColor"}),(0,U.jsx)("path",{d:"M12.6328 6.99976C12.6328 3.88874 10.111 1.36694 7 1.36694C3.88899 1.36695 1.3672 3.88875 1.36719 6.99976C1.36719 10.1108 3.88899 12.6326 7 12.6326C10.111 12.6326 12.6328 10.1108 12.6328 6.99976ZM13.8582 6.99976C13.8582 10.7873 10.7876 13.8579 7 13.8579C3.21244 13.8579 0.141846 10.7873 0.141846 6.99976C0.141857 3.2122 3.21245 0.141612 7 0.141602C10.7876 0.141602 13.8581 3.21219 13.8582 6.99976Z",fill:"currentColor"})]})}function Qu({size:n}){return(0,U.jsx)("svg",{width:n??16,height:n??16,viewBox:"0 0 16 16","aria-hidden":"true",children:(0,U.jsx)("path",{d:"M8.3125 0.980183C8.66767 1.0531 8.97902 1.20418 9.2627 1.43233C9.48724 1.61297 9.73029 1.85793 9.97949 2.10714L14.707 6.83468L13.293 8.24874L9 3.95577V15.0417H7V3.95577L2.70703 8.24874L1.29297 6.83468L6.02051 2.10714C6.26971 1.85793 6.51277 1.61297 6.7373 1.43233C6.97662 1.23986 7.28445 1.04402 7.6875 0.980183C7.8973 0.947006 8.1031 0.95516 8.3125 0.980183Z",fill:"currentColor"})})}function ed({size:n}){return(0,U.jsx)("svg",{width:n??16,height:n??16,viewBox:"0 0 16 16","aria-hidden":"true",children:(0,U.jsx)("rect",{x:"3",y:"3",width:"10",height:"10",rx:"3",fill:"currentColor"})})}function Zt({size:n}){return(0,U.jsx)("svg",{width:n??14,height:n??14,viewBox:"0 0 14 14",fill:"none","aria-hidden":"true",children:(0,U.jsx)("path",{d:"M3.5 5.75L7 9.25L10.5 5.75",stroke:"currentColor",strokeWidth:"1.3",strokeLinecap:"round",strokeLinejoin:"round"})})}function td({size:n=16,className:e}){return(0,U.jsx)("svg",{width:n,height:n,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round",className:e,"aria-hidden":"true",children:Fu})}var Rt=require("react");var zl=[],sd=[];(()=>{let n="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,1n,9,16,o,,x,1i,3,,i,,7,a,2,t,3,1k,,,7,2,2,2,3,9,,a,2,q,,2,3,1k,,,5,4,2,2,3,3,,u,2,3,,b,3,1k,,,8,,3,,3,k,2,m,6,,3,1k,,,7,2,2,2,3,7,3,a,2,u,,1n,5,3,3,,4,9,,14,5,1j,,,7,,3,,4,7,2,b,2,t,3,1k,,,7,,3,,4,7,2,b,2,f,,c,4,1j,2,,7,,3,,4,9,,a,2,t,3,1y,,4,6,,,,8,i,2,1p,,,8,c,8,2q,,,a,b,7,21,2,r,,,,,,4,2,1d,k,,2,5,b,,10,9,,2u,b,,6,n,4,4,3,g,4,d,,,3,6,,f,,jj,3,qa,4,s,3,t,2,u,2,1s,w,9,,19,3,,,39,2,y,,3a,c,4,c,63,5,1l,a,,,,,2,o,2,,1c,1a,2,c,k,5,1b,h,12,9,c,3,u,d,1k,e,1c,k,48,3,,l,4,,6,,2,3,5i,1s,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,n,5,4,,2b,2,1e,i,q,i,d,,12,8,p,d,18,4,1b,e,10,,1v,e,c,,8,2,1a,,1f,,,3,2,2,5,2,,,15,5,5,2,6k,8,,2,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,1t,5,8t,2,25,6,1y,b,1d,4,3e,3,1h,f,15,,2,2,a,4,19,b,7,,1p,3,10,e,g,2,18,,c,3,1c,e,8,4,,2,2k,c,6,,2,,4d,c,l,4,1j,2,,7,2,2,2,3,9,,a,2,2,7,3,5,1v,9,,,2,,,4,,5,,,e,2,2a,i,n,,29,k,6j,7,2,9,r,2,2a,h,2y,d,2t,3,2,a,74,f,6t,6,,2,2,4,,,,2,3x,7,2,7,3,,s,a,14,7,,4,8,,9,b,1a,g,5i,8,5j,8,,8,2a,m,,e,3e,6,3,,,2,,7,,,1u,5,,2,,5,9n,4,9,2,,,1c,7,3,5,n,,44l,,6,f,8ug,i,1xc,5,1n,7,t4,,,1j,7,4,29,,b,2,f57,2,3mp,1a,2,n,f2,5,3,6,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,2s,,4g,7,af,,1p,4,e4,4,72,2,6r,,2,,7,2,5,,d6,7,31,7,240,5".split(",").map(e=>e?parseInt(e,36):1);for(let e=0,t=0;e<n.length;e++)(e%2?sd:zl).push(t=t+n[e])})();function bb(n){if(n<768)return!1;for(let e=0,t=zl.length;;){let i=e+t>>1;if(n<zl[i])t=i;else if(n>=sd[i])e=i+1;else return!0;if(e==t)return!1}}function nd(n){return n>=127462&&n<=127487}var id=8205;function od(n,e,t=!0,i=!0){return(t?ld:yb)(n,e,i)}function ld(n,e,t){if(e==n.length)return e;e&&ad(n.charCodeAt(e))&&cd(n.charCodeAt(e-1))&&e--;let i=Fl(n,e);for(e+=rd(i);e<n.length;){let r=Fl(n,e);if(i==id||r==id||t&&bb(r))e+=rd(r),i=r;else if(nd(r)){let s=0,o=e-2;for(;o>=0&&nd(Fl(n,o));)s++,o-=2;if(s%2==0)break;e+=2}else break}return e}function yb(n,e,t){for(;e>1;){let i=ld(n,e-2,t);if(i<e)return i;e--}return 0}function Fl(n,e){let t=n.charCodeAt(e);if(!cd(t)||e+1==n.length)return t;let i=n.charCodeAt(e+1);return ad(i)?(t-55296<<10)+(i-56320)+65536:t}function ad(n){return n>=56320&&n<57344}function cd(n){return n>=55296&&n<56320}function rd(n){return n<65536?1:2}var te=class n{lineAt(e){if(e<0||e>this.length)throw new RangeError(`Invalid position ${e} in document of length ${this.length}`);return this.lineInner(e,!1,1,0)}line(e){if(e<1||e>this.lines)throw new RangeError(`Invalid line number ${e} in ${this.lines}-line document`);return this.lineInner(e,!0,1,0)}replace(e,t,i){[e,t]=Oi(this,e,t);let r=[];return this.decompose(0,e,r,2),i.length&&i.decompose(0,i.length,r,3),this.decompose(t,this.length,r,1),Di.from(r,this.length-(t-e)+i.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,t=this.length){[e,t]=Oi(this,e,t);let i=[];return this.decompose(e,t,i,0),Di.from(i,t-e)}eq(e){if(e==this)return!0;if(e.length!=this.length||e.lines!=this.lines)return!1;let t=this.scanIdentical(e,1),i=this.length-this.scanIdentical(e,-1),r=new Zn(this),s=new Zn(e);for(let o=t,l=t;;){if(r.next(o),s.next(o),o=0,r.lineBreak!=s.lineBreak||r.done!=s.done||r.value!=s.value)return!1;if(l+=r.value.length,r.done||l>=i)return!0}}iter(e=1){return new Zn(this,e)}iterRange(e,t=this.length){return new _s(this,e,t)}iterLines(e,t){let i;if(e==null)i=this.iter();else{t==null&&(t=this.lines+1);let r=this.line(e).from;i=this.iterRange(r,Math.max(r,t==this.lines+1?this.length:t<=1?0:this.line(t-1).to))}return new Hs(i)}toString(){return this.sliceString(0)}toJSON(){let e=[];return this.flatten(e),e}constructor(){}static of(e){if(e.length==0)throw new RangeError("A document must have at least one line");return e.length==1&&!e[0]?n.empty:e.length<=32?new mt(e):Di.from(mt.split(e,[]))}},mt=class n extends te{constructor(e,t=wb(e)){super(),this.text=e,this.length=t}get lines(){return this.text.length}get children(){return null}lineInner(e,t,i,r){for(let s=0;;s++){let o=this.text[s],l=r+o.length;if((t?i:l)>=e)return new Vl(r,l,i,o);r=l+1,i++}}decompose(e,t,i,r){let s=e<=0&&t>=this.length?this:new n(hd(this.text,e,t),Math.min(t,this.length)-Math.max(0,e));if(r&1){let o=i.pop(),l=Bs(s.text,o.text.slice(),0,s.length);if(l.length<=32)i.push(new n(l,o.length+s.length));else{let a=l.length>>1;i.push(new n(l.slice(0,a)),new n(l.slice(a)))}}else i.push(s)}replace(e,t,i){if(!(i instanceof n))return super.replace(e,t,i);[e,t]=Oi(this,e,t);let r=Bs(this.text,Bs(i.text,hd(this.text,0,e)),t),s=this.length+i.length-(t-e);return r.length<=32?new n(r,s):Di.from(n.split(r,[]),s)}sliceString(e,t=this.length,i=`
581
- `){[e,t]=Oi(this,e,t);let r="";for(let s=0,o=0;s<=t&&o<this.text.length;o++){let l=this.text[o],a=s+l.length;s>e&&o&&(r+=i),e<a&&t>s&&(r+=l.slice(Math.max(0,e-s),t-s)),s=a+1}return r}flatten(e){for(let t of this.text)e.push(t)}scanIdentical(){return 0}static split(e,t){let i=[],r=-1;for(let s of e)i.push(s),r+=s.length+1,i.length==32&&(t.push(new n(i,r)),i=[],r=-1);return r>-1&&t.push(new n(i,r)),t}},Di=class n extends te{constructor(e,t){super(),this.children=e,this.length=t,this.lines=0;for(let i of e)this.lines+=i.lines}lineInner(e,t,i,r){for(let s=0;;s++){let o=this.children[s],l=r+o.length,a=i+o.lines-1;if((t?a:l)>=e)return o.lineInner(e,t,i,r);r=l+1,i=a+1}}decompose(e,t,i,r){for(let s=0,o=0;o<=t&&s<this.children.length;s++){let l=this.children[s],a=o+l.length;if(e<=a&&t>=o){let c=r&((o<=e?1:0)|(a>=t?2:0));o>=e&&a<=t&&!c?i.push(l):l.decompose(e-o,t-o,i,c)}o=a+1}}replace(e,t,i){if([e,t]=Oi(this,e,t),i.lines<this.lines)for(let r=0,s=0;r<this.children.length;r++){let o=this.children[r],l=s+o.length;if(e>=s&&t<=l){let a=o.replace(e-s,t-s,i),c=this.lines-o.lines+a.lines;if(a.lines<c>>4&&a.lines>c>>6){let h=this.children.slice();return h[r]=a,new n(h,this.length-(t-e)+i.length)}return super.replace(s,l,a)}s=l+1}return super.replace(e,t,i)}sliceString(e,t=this.length,i=`
582
- `){[e,t]=Oi(this,e,t);let r="";for(let s=0,o=0;s<this.children.length&&o<=t;s++){let l=this.children[s],a=o+l.length;o>e&&s&&(r+=i),e<a&&t>o&&(r+=l.sliceString(e-o,t-o,i)),o=a+1}return r}flatten(e){for(let t of this.children)t.flatten(e)}scanIdentical(e,t){if(!(e instanceof n))return 0;let i=0,[r,s,o,l]=t>0?[0,0,this.children.length,e.children.length]:[this.children.length-1,e.children.length-1,-1,-1];for(;;r+=t,s+=t){if(r==o||s==l)return i;let a=this.children[r],c=e.children[s];if(a!=c)return i+a.scanIdentical(c,t);i+=a.length+1}}static from(e,t=e.reduce((i,r)=>i+r.length+1,-1)){let i=0;for(let f of e)i+=f.lines;if(i<32){let f=[];for(let p of e)p.flatten(f);return new mt(f,t)}let r=Math.max(32,i>>5),s=r<<1,o=r>>1,l=[],a=0,c=-1,h=[];function u(f){let p;if(f.lines>s&&f instanceof n)for(let g of f.children)u(g);else f.lines>o&&(a>o||!a)?(d(),l.push(f)):f instanceof mt&&a&&(p=h[h.length-1])instanceof mt&&f.lines+p.lines<=32?(a+=f.lines,c+=f.length+1,h[h.length-1]=new mt(p.text.concat(f.text),p.length+1+f.length)):(a+f.lines>r&&d(),a+=f.lines,c+=f.length+1,h.push(f))}function d(){a!=0&&(l.push(h.length==1?h[0]:n.from(h,c)),c=-1,a=h.length=0)}for(let f of e)u(f);return d(),l.length==1?l[0]:new n(l,t)}};te.empty=new mt([""],0);function wb(n){let e=-1;for(let t of n)e+=t.length+1;return e}function Bs(n,e,t=0,i=1e9){for(let r=0,s=0,o=!0;s<n.length&&r<=i;s++){let l=n[s],a=r+l.length;a>=t&&(a>i&&(l=l.slice(0,i-r)),r<t&&(l=l.slice(t-r)),o?(e[e.length-1]+=l,o=!1):e.push(l)),r=a+1}return e}function hd(n,e,t){return Bs(n,[""],e,t)}var Zn=class{constructor(e,t=1){this.dir=t,this.done=!1,this.lineBreak=!1,this.value="",this.nodes=[e],this.offsets=[t>0?1:(e instanceof mt?e.text.length:e.children.length)<<1]}nextInner(e,t){for(this.done=this.lineBreak=!1;;){let i=this.nodes.length-1,r=this.nodes[i],s=this.offsets[i],o=s>>1,l=r instanceof mt?r.text.length:r.children.length;if(o==(t>0?l:0)){if(i==0)return this.done=!0,this.value="",this;t>0&&this.offsets[i-1]++,this.nodes.pop(),this.offsets.pop()}else if((s&1)==(t>0?0:1)){if(this.offsets[i]+=t,e==0)return this.lineBreak=!0,this.value=`
583
- `,this;e--}else if(r instanceof mt){let a=r.text[o+(t<0?-1:0)];if(this.offsets[i]+=t,a.length>Math.max(0,e))return this.value=e==0?a:t>0?a.slice(e):a.slice(0,a.length-e),this;e-=a.length}else{let a=r.children[o+(t<0?-1:0)];e>a.length?(e-=a.length,this.offsets[i]+=t):(t<0&&this.offsets[i]--,this.nodes.push(a),this.offsets.push(t>0?1:(a instanceof mt?a.text.length:a.children.length)<<1))}}}next(e=0){return e<0&&(this.nextInner(-e,-this.dir),e=this.value.length),this.nextInner(e,this.dir)}},_s=class{constructor(e,t,i){this.value="",this.done=!1,this.cursor=new Zn(e,t>i?-1:1),this.pos=t>i?e.length:0,this.from=Math.min(t,i),this.to=Math.max(t,i)}nextInner(e,t){if(t<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;e+=Math.max(0,t<0?this.pos-this.to:this.from-this.pos);let i=t<0?this.pos-this.from:this.to-this.pos;e>i&&(e=i),i-=e;let{value:r}=this.cursor.next(e);return this.pos+=(r.length+e)*t,this.value=r.length<=i?r:t<0?r.slice(r.length-i):r.slice(0,i),this.done=!this.value,this}next(e=0){return e<0?e=Math.max(e,this.from-this.pos):e>0&&(e=Math.min(e,this.to-this.pos)),this.nextInner(e,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&this.value!=""}},Hs=class{constructor(e){this.inner=e,this.afterBreak=!0,this.value="",this.done=!1}next(e=0){let{done:t,lineBreak:i,value:r}=this.inner.next(e);return t&&this.afterBreak?(this.value="",this.afterBreak=!1):t?(this.done=!0,this.value=""):i?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=r,this.afterBreak=!1),this}get lineBreak(){return!1}};typeof Symbol<"u"&&(te.prototype[Symbol.iterator]=function(){return this.iter()},Zn.prototype[Symbol.iterator]=_s.prototype[Symbol.iterator]=Hs.prototype[Symbol.iterator]=function(){return this});var Vl=class{constructor(e,t,i,r){this.from=e,this.to=t,this.number=i,this.text=r}get length(){return this.to-this.from}};function Oi(n,e,t){return e=Math.max(0,Math.min(n.length,e)),[e,Math.max(e,Math.min(n.length,t))]}function ze(n,e,t=!0,i=!0){return od(n,e,t,i)}function xb(n){return n>=56320&&n<57344}function vb(n){return n>=55296&&n<56320}function md(n,e){let t=n.charCodeAt(e);if(!vb(t)||e+1==n.length)return t;let i=n.charCodeAt(e+1);return xb(i)?(t-55296<<10)+(i-56320)+65536:t}function gd(n){return n<65536?1:2}var $l=/\r\n?|\n/,ct=(function(n){return n[n.Simple=0]="Simple",n[n.TrackDel=1]="TrackDel",n[n.TrackBefore=2]="TrackBefore",n[n.TrackAfter=3]="TrackAfter",n})(ct||(ct={})),dn=class n{constructor(e){this.sections=e}get length(){let e=0;for(let t=0;t<this.sections.length;t+=2)e+=this.sections[t];return e}get newLength(){let e=0;for(let t=0;t<this.sections.length;t+=2){let i=this.sections[t+1];e+=i<0?this.sections[t]:i}return e}get empty(){return this.sections.length==0||this.sections.length==2&&this.sections[1]<0}iterGaps(e){for(let t=0,i=0,r=0;t<this.sections.length;){let s=this.sections[t++],o=this.sections[t++];o<0?(e(i,r,s),r+=s):r+=o,i+=s}}iterChangedRanges(e,t=!1){Ul(this,e,t)}get invertedDesc(){let e=[];for(let t=0;t<this.sections.length;){let i=this.sections[t++],r=this.sections[t++];r<0?e.push(i,r):e.push(r,i)}return new n(e)}composeDesc(e){return this.empty?e:e.empty?this:bd(this,e)}mapDesc(e,t=!1){return e.empty?this:Kl(this,e,t)}mapPos(e,t=-1,i=ct.Simple){let r=0,s=0;for(let o=0;o<this.sections.length;){let l=this.sections[o++],a=this.sections[o++],c=r+l;if(a<0){if(c>e)return s+(e-r);s+=l}else{if(i!=ct.Simple&&c>=e&&(i==ct.TrackDel&&r<e&&c>e||i==ct.TrackBefore&&r<e||i==ct.TrackAfter&&c>e))return null;if(c>e||c==e&&t<0&&!l)return e==r||t<0?s:s+a;s+=a}r=c}if(e>r)throw new RangeError(`Position ${e} is out of range for changeset of length ${r}`);return s}touchesRange(e,t=e){for(let i=0,r=0;i<this.sections.length&&r<=t;){let s=this.sections[i++],o=this.sections[i++],l=r+s;if(o>=0&&r<=t&&l>=e)return r<e&&l>t?"cover":!0;r=l}return!1}toString(){let e="";for(let t=0;t<this.sections.length;){let i=this.sections[t++],r=this.sections[t++];e+=(e?" ":"")+i+(r>=0?":"+r:"")}return e}toJSON(){return this.sections}static fromJSON(e){if(!Array.isArray(e)||e.length%2||e.some(t=>typeof t!="number"))throw new RangeError("Invalid JSON representation of ChangeDesc");return new n(e)}static create(e){return new n(e)}},Qe=class n extends dn{constructor(e,t){super(e),this.inserted=t}apply(e){if(this.length!=e.length)throw new RangeError("Applying change set to a document with the wrong length");return Ul(this,(t,i,r,s,o)=>e=e.replace(r,r+(i-t),o),!1),e}mapDesc(e,t=!1){return Kl(this,e,t,!0)}invert(e){let t=this.sections.slice(),i=[];for(let r=0,s=0;r<t.length;r+=2){let o=t[r],l=t[r+1];if(l>=0){t[r]=l,t[r+1]=o;let a=r>>1;for(;i.length<a;)i.push(te.empty);i.push(o?e.slice(s,s+o):te.empty)}s+=o}return new n(t,i)}compose(e){return this.empty?e:e.empty?this:bd(this,e,!0)}map(e,t=!1){return e.empty?this:Kl(this,e,t,!0)}iterChanges(e,t=!1){Ul(this,e,t)}get desc(){return dn.create(this.sections)}filter(e){let t=[],i=[],r=[],s=new ei(this);e:for(let o=0,l=0;;){let a=o==e.length?1e9:e[o++];for(;l<a||l==a&&s.len==0;){if(s.done)break e;let h=Math.min(s.len,a-l);Ke(r,h,-1);let u=s.ins==-1?-1:s.off==0?s.ins:0;Ke(t,h,u),u>0&&Dn(i,t,s.text),s.forward(h),l+=h}let c=e[o++];for(;l<c;){if(s.done)break e;let h=Math.min(s.len,c-l);Ke(t,h,-1),Ke(r,h,s.ins==-1?-1:s.off==0?s.ins:0),s.forward(h),l+=h}}return{changes:new n(t,i),filtered:dn.create(r)}}toJSON(){let e=[];for(let t=0;t<this.sections.length;t+=2){let i=this.sections[t],r=this.sections[t+1];r<0?e.push(i):r==0?e.push([i]):e.push([i].concat(this.inserted[t>>1].toJSON()))}return e}static of(e,t,i){let r=[],s=[],o=0,l=null;function a(h=!1){if(!h&&!r.length)return;o<t&&Ke(r,t-o,-1);let u=new n(r,s);l=l?l.compose(u.map(l)):u,r=[],s=[],o=0}function c(h){if(Array.isArray(h))for(let u of h)c(u);else if(h instanceof n){if(h.length!=t)throw new RangeError(`Mismatched change set length (got ${h.length}, expected ${t})`);a(),l=l?l.compose(h.map(l)):h}else{let{from:u,to:d=u,insert:f}=h;if(u>d||u<0||d>t)throw new RangeError(`Invalid change range ${u} to ${d} (in doc of length ${t})`);let p=f?typeof f=="string"?te.of(f.split(i||$l)):f:te.empty,g=p.length;if(u==d&&g==0)return;u<o&&a(),u>o&&Ke(r,u-o,-1),Ke(r,d-u,g),Dn(s,r,p),o=d}}return c(e),a(!l),l}static empty(e){return new n(e?[e,-1]:[],[])}static fromJSON(e){if(!Array.isArray(e))throw new RangeError("Invalid JSON representation of ChangeSet");let t=[],i=[];for(let r=0;r<e.length;r++){let s=e[r];if(typeof s=="number")t.push(s,-1);else{if(!Array.isArray(s)||typeof s[0]!="number"||s.some((o,l)=>l&&typeof o!="string"))throw new RangeError("Invalid JSON representation of ChangeSet");if(s.length==1)t.push(s[0],0);else{for(;i.length<r;)i.push(te.empty);i[r]=te.of(s.slice(1)),t.push(s[0],i[r].length)}}}return new n(t,i)}static createSet(e,t){return new n(e,t)}};function Ke(n,e,t,i=!1){if(e==0&&t<=0)return;let r=n.length-2;r>=0&&t<=0&&t==n[r+1]?n[r]+=e:r>=0&&e==0&&n[r]==0?n[r+1]+=t:i?(n[r]+=e,n[r+1]+=t):n.push(e,t)}function Dn(n,e,t){if(t.length==0)return;let i=e.length-2>>1;if(i<n.length)n[n.length-1]=n[n.length-1].append(t);else{for(;n.length<i;)n.push(te.empty);n.push(t)}}function Ul(n,e,t){let i=n.inserted;for(let r=0,s=0,o=0;o<n.sections.length;){let l=n.sections[o++],a=n.sections[o++];if(a<0)r+=l,s+=l;else{let c=r,h=s,u=te.empty;for(;c+=l,h+=a,a&&i&&(u=u.append(i[o-2>>1])),!(t||o==n.sections.length||n.sections[o+1]<0);)l=n.sections[o++],a=n.sections[o++];e(r,c,s,h,u),r=c,s=h}}}function Kl(n,e,t,i=!1){let r=[],s=i?[]:null,o=new ei(n),l=new ei(e);for(let a=-1;;){if(o.done&&l.len||l.done&&o.len)throw new Error("Mismatched change set lengths");if(o.ins==-1&&l.ins==-1){let c=Math.min(o.len,l.len);Ke(r,c,-1),o.forward(c),l.forward(c)}else if(l.ins>=0&&(o.ins<0||a==o.i||o.off==0&&(l.len<o.len||l.len==o.len&&!t))){let c=l.len;for(Ke(r,l.ins,-1);c;){let h=Math.min(o.len,c);o.ins>=0&&a<o.i&&o.len<=h&&(Ke(r,0,o.ins),s&&Dn(s,r,o.text),a=o.i),o.forward(h),c-=h}l.next()}else if(o.ins>=0){let c=0,h=o.len;for(;h;)if(l.ins==-1){let u=Math.min(h,l.len);c+=u,h-=u,l.forward(u)}else if(l.ins==0&&l.len<h)h-=l.len,l.next();else break;Ke(r,c,a<o.i?o.ins:0),s&&a<o.i&&Dn(s,r,o.text),a=o.i,o.forward(o.len-h)}else{if(o.done&&l.done)return s?Qe.createSet(r,s):dn.create(r);throw new Error("Mismatched change set lengths")}}}function bd(n,e,t=!1){let i=[],r=t?[]:null,s=new ei(n),o=new ei(e);for(let l=!1;;){if(s.done&&o.done)return r?Qe.createSet(i,r):dn.create(i);if(s.ins==0)Ke(i,s.len,0,l),s.next();else if(o.len==0&&!o.done)Ke(i,0,o.ins,l),r&&Dn(r,i,o.text),o.next();else{if(s.done||o.done)throw new Error("Mismatched change set lengths");{let a=Math.min(s.len2,o.len),c=i.length;if(s.ins==-1){let h=o.ins==-1?-1:o.off?0:o.ins;Ke(i,a,h,l),r&&h&&Dn(r,i,o.text)}else o.ins==-1?(Ke(i,s.off?0:s.len,a,l),r&&Dn(r,i,s.textBit(a))):(Ke(i,s.off?0:s.len,o.off?0:o.ins,l),r&&!o.off&&Dn(r,i,o.text));l=(s.ins>a||o.ins>=0&&o.len>a)&&(l||i.length>c),s.forward2(a),o.forward(a)}}}}var ei=class{constructor(e){this.set=e,this.i=0,this.next()}next(){let{sections:e}=this.set;this.i<e.length?(this.len=e[this.i++],this.ins=e[this.i++]):(this.len=0,this.ins=-2),this.off=0}get done(){return this.ins==-2}get len2(){return this.ins<0?this.len:this.ins}get text(){let{inserted:e}=this.set,t=this.i-2>>1;return t>=e.length?te.empty:e[t]}textBit(e){let{inserted:t}=this.set,i=this.i-2>>1;return i>=t.length&&!e?te.empty:t[i].slice(this.off,e==null?void 0:this.off+e)}forward(e){e==this.len?this.next():(this.len-=e,this.off+=e)}forward2(e){this.ins==-1?this.forward(e):e==this.ins?this.next():(this.ins-=e,this.off+=e)}},Xn=class n{constructor(e,t,i,r){this.from=e,this.to=t,this.flags=i,this.goalColumn=r}get anchor(){return this.flags&32?this.to:this.from}get head(){return this.flags&32?this.from:this.to}get empty(){return this.from==this.to}get assoc(){return this.flags&8?-1:this.flags&16?1:0}get undirectional(){return(this.flags&64)>0}get bidiLevel(){let e=this.flags&7;return e==7?null:e}map(e,t=-1){let i,r;return this.empty?i=r=e.mapPos(this.from,t):(i=e.mapPos(this.from,1),r=e.mapPos(this.to,-1)),i==this.from&&r==this.to?this:new n(i,r,this.flags,this.goalColumn)}extend(e,t=e,i=0){if(e<=this.anchor&&t>=this.anchor)return D.range(e,t,void 0,void 0,i);let r=Math.abs(e-this.anchor)>Math.abs(t-this.anchor)?e:t;return D.range(this.anchor,r,void 0,void 0,i)}eq(e,t=!1){return this.anchor==e.anchor&&this.head==e.head&&this.goalColumn==e.goalColumn&&(!t||!this.empty||this.assoc==e.assoc)}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(e){if(!e||typeof e.anchor!="number"||typeof e.head!="number")throw new RangeError("Invalid JSON representation for SelectionRange");return D.range(e.anchor,e.head)}static create(e,t,i,r){return new n(e,t,i,r)}},D=class n{constructor(e,t){this.ranges=e,this.mainIndex=t}map(e,t=-1){return e.empty?this:n.create(this.ranges.map(i=>i.map(e,t)),this.mainIndex)}eq(e,t=!1){if(this.ranges.length!=e.ranges.length||this.mainIndex!=e.mainIndex)return!1;for(let i=0;i<this.ranges.length;i++)if(!this.ranges[i].eq(e.ranges[i],t))return!1;return!0}get main(){return this.ranges[this.mainIndex]}asSingle(){return this.ranges.length==1?this:new n([this.main],0)}addRange(e,t=!0){return n.create([e].concat(this.ranges),t?0:this.mainIndex+1)}replaceRange(e,t=this.mainIndex){let i=this.ranges.slice();return i[t]=e,n.create(i,this.mainIndex)}toJSON(){return{ranges:this.ranges.map(e=>e.toJSON()),main:this.mainIndex}}static fromJSON(e){if(!e||!Array.isArray(e.ranges)||typeof e.main!="number"||e.main>=e.ranges.length)throw new RangeError("Invalid JSON representation for EditorSelection");return new n(e.ranges.map(t=>Xn.fromJSON(t)),e.main)}static single(e,t=e){return new n([n.range(e,t)],0)}static create(e,t=0){if(e.length==0)throw new RangeError("A selection needs at least one range");for(let i=0,r=0;r<e.length;r++){let s=e[r];if(s.empty?s.from<=i:s.from<i)return n.normalized(e.slice(),t);i=s.to}return new n(e,t)}static cursor(e,t=0,i,r){return Xn.create(e,e,(t==0?0:t<0?8:16)|(i==null?7:Math.min(6,i)),r)}static range(e,t,i,r,s){let o=r==null?7:Math.min(6,r);return!s&&e!=t&&(s=t<e?1:-1),s&&(o|=s<0?8:16),t<e?Xn.create(t,e,o|32,i):Xn.create(e,t,o,i)}static undirectionalRange(e,t){return Xn.create(e,t,64,void 0)}static normalized(e,t=0){let i=e[t];e.sort((r,s)=>r.from-s.from),t=e.indexOf(i);for(let r=1;r<e.length;r++){let s=e[r],o=e[r-1];if(s.empty?s.from<=o.to:s.from<o.to){let l=o.from,a=Math.max(s.to,o.to);r<=t&&t--,e.splice(--r,2,s.anchor>s.head?n.range(a,l):n.range(l,a))}}return new n(e,t)}};function yd(n,e){for(let t of n.ranges)if(t.to>e)throw new RangeError("Selection points outside of document")}var ta=0,$=class n{constructor(e,t,i,r,s){this.combine=e,this.compareInput=t,this.compare=i,this.isStatic=r,this.id=ta++,this.default=e([]),this.extensions=typeof s=="function"?s(this):s}get reader(){return this}static define(e={}){return new n(e.combine||(t=>t),e.compareInput||((t,i)=>t===i),e.compare||(e.combine?(t,i)=>t===i:na),!!e.static,e.enables)}of(e){return new Ri([],this,0,e)}compute(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new Ri(e,this,1,t)}computeN(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new Ri(e,this,2,t)}from(e,t){return t||(t=i=>i),this.compute([e],i=>t(i.field(e)))}};function na(n,e){return n==e||n.length==e.length&&n.every((t,i)=>t===e[i])}var Ri=class{constructor(e,t,i,r){this.dependencies=e,this.facet=t,this.type=i,this.value=r,this.id=ta++}dynamicSlot(e){var t;let i=this.value,r=this.facet.compareInput,s=this.id,o=e[s]>>1,l=this.type==2,a=!1,c=!1,h=[];for(let u of this.dependencies)u=="doc"?a=!0:u=="selection"?c=!0:(((t=e[u.id])!==null&&t!==void 0?t:1)&1)==0&&h.push(e[u.id]);return{create(u){return u.values[o]=i(u),1},update(u,d){if(a&&d.docChanged||c&&(d.docChanged||d.selection)||jl(u,h)){let f=i(u);if(l?!ud(f,u.values[o],r):!r(f,u.values[o]))return u.values[o]=f,1}return 0},reconfigure:(u,d)=>{let f,p=d.config.address[s];if(p!=null){let g=Ws(d,p);if(this.dependencies.every(b=>b instanceof $?d.facet(b)===u.facet(b):b instanceof kt?d.field(b,!1)==u.field(b,!1):!0)||(l?ud(f=i(u),g,r):r(f=i(u),g)))return u.values[o]=g,0}else f=i(u);return u.values[o]=f,1}}}get extension(){return this}};function ud(n,e,t){if(n.length!=e.length)return!1;for(let i=0;i<n.length;i++)if(!t(n[i],e[i]))return!1;return!0}function jl(n,e){let t=!1;for(let i of e)gr(n,i)&1&&(t=!0);return t}function kb(n,e,t){let i=t.map(a=>n[a.id]),r=t.map(a=>a.type),s=i.filter(a=>!(a&1)),o=n[e.id]>>1;function l(a){let c=[];for(let h=0;h<i.length;h++){let u=Ws(a,i[h]);if(r[h]==2)for(let d of u)c.push(d);else c.push(u)}return e.combine(c)}return{create(a){for(let c of i)gr(a,c);return a.values[o]=l(a),1},update(a,c){if(!jl(a,s))return 0;let h=l(a);return e.compare(h,a.values[o])?0:(a.values[o]=h,1)},reconfigure(a,c){let h=jl(a,i),u=c.config.facets[e.id],d=c.facet(e);if(u&&!h&&na(t,u))return a.values[o]=d,0;let f=l(a);return e.compare(f,d)?(a.values[o]=d,0):(a.values[o]=f,1)}}}var Ps=$.define({static:!0}),kt=class n{constructor(e,t,i,r,s){this.id=e,this.createF=t,this.updateF=i,this.compareF=r,this.spec=s,this.provides=void 0}static define(e){let t=new n(ta++,e.create,e.update,e.compare||((i,r)=>i===r),e);return e.provide&&(t.provides=e.provide(t)),t}create(e){let t=e.facet(Ps).find(i=>i.field==this);return(t?.create||this.createF)(e)}slot(e){let t=e[this.id]>>1;return{create:i=>(i.values[t]=this.create(i),1),update:(i,r)=>{let s=i.values[t],o=this.updateF(s,r);return this.compareF(s,o)?0:(i.values[t]=o,1)},reconfigure:(i,r)=>{let s=i.facet(Ps),o=r.facet(Ps),l;return(l=s.find(a=>a.field==this))&&l!=o.find(a=>a.field==this)?(i.values[t]=l.create(i),1):r.config.address[this.id]!=null?(i.values[t]=r.field(this),0):(i.values[t]=this.create(i),1)}}}init(e){return[this,Ps.of({field:this,create:e})]}get extension(){return this}},Yn={lowest:4,low:3,default:2,high:1,highest:0};function mr(n){return e=>new Fs(e,n)}var xr={highest:mr(Yn.highest),high:mr(Yn.high),default:mr(Yn.default),low:mr(Yn.low),lowest:mr(Yn.lowest)},Fs=class{constructor(e,t){this.inner=e,this.prec=t}get extension(){return this}},fn=class n{of(e){return new br(this,e)}reconfigure(e){return n.reconfigure.of({compartment:this,extension:e})}get(e){return e.config.compartments.get(this)}},br=class{constructor(e,t){this.compartment=e,this.inner=t}get extension(){return this}},zs=class n{constructor(e,t,i,r,s,o){for(this.base=e,this.compartments=t,this.dynamicSlots=i,this.address=r,this.staticValues=s,this.facets=o,this.statusTemplate=[];this.statusTemplate.length<i.length;)this.statusTemplate.push(0)}staticFacet(e){let t=this.address[e.id];return t==null?e.default:this.staticValues[t>>1]}static resolve(e,t,i){let r=[],s=Object.create(null),o=new Map;for(let d of Sb(e,t,o))d instanceof kt?r.push(d):(s[d.facet.id]||(s[d.facet.id]=[])).push(d);let l=Object.create(null),a=[],c=[];for(let d of r)l[d.id]=c.length<<1,c.push(f=>d.slot(f));let h=i?.config.facets;for(let d in s){let f=s[d],p=f[0].facet,g=h&&h[d]||[];if(f.every(b=>b.type==0))if(l[p.id]=a.length<<1|1,na(g,f))a.push(i.facet(p));else{let b=p.combine(f.map(y=>y.value));a.push(i&&p.compare(b,i.facet(p))?i.facet(p):b)}else{for(let b of f)b.type==0?(l[b.id]=a.length<<1|1,a.push(b.value)):(l[b.id]=c.length<<1,c.push(y=>b.dynamicSlot(y)));l[p.id]=c.length<<1,c.push(b=>kb(b,p,f))}}let u=c.map(d=>d(l));return new n(e,o,u,l,a,s)}};function Sb(n,e,t){let i=[[],[],[],[],[]],r=new Map;function s(o,l){let a=r.get(o);if(a!=null){if(a<=l)return;let c=i[a].indexOf(o);c>-1&&i[a].splice(c,1),o instanceof br&&t.delete(o.compartment)}if(r.set(o,l),Array.isArray(o))for(let c of o)s(c,l);else if(o instanceof br){if(t.has(o.compartment))throw new RangeError("Duplicate use of compartment in extensions");let c=e.get(o.compartment)||o.inner;t.set(o.compartment,c),s(c,l)}else if(o instanceof Fs)s(o.inner,o.prec);else if(o instanceof kt)i[l].push(o),o.provides&&s(o.provides,l);else if(o instanceof Ri)i[l].push(o),o.facet.extensions&&s(o.facet.extensions,Yn.default);else{let c=o.extension;if(!c)throw new Error(`Unrecognized extension value in extension set (${o}).`);if(c==o)throw new Error(`Unrecognized extension value in extension set (${o}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);s(c,l)}}return s(n,Yn.default),i.reduce((o,l)=>o.concat(l))}function gr(n,e){if(e&1)return 2;let t=e>>1,i=n.status[t];if(i==4)throw new Error("Cyclic dependency between fields and/or facets");if(i&2)return i;n.status[t]=4;let r=n.computeSlot(n,n.config.dynamicSlots[t]);return n.status[t]=2|r}function Ws(n,e){return e&1?n.config.staticValues[e>>1]:n.values[e>>1]}var wd=$.define(),Gl=$.define({combine:n=>n.some(e=>e),static:!0}),xd=$.define({combine:n=>n.length?n[0]:void 0,static:!0}),vd=$.define(),kd=$.define(),Sd=$.define(),Cd=$.define({combine:n=>n.length?n[0]:!1}),ht=class{constructor(e,t){this.type=e,this.value=t}static define(){return new ql}},ql=class{of(e){return new ht(this,e)}},Xl=class{constructor(e){this.map=e}of(e){return new xe(this,e)}},xe=class n{constructor(e,t){this.type=e,this.value=t}map(e){let t=this.type.map(this.value,e);return t===void 0?void 0:t==this.value?this:new n(this.type,t)}is(e){return this.type==e}static define(e={}){return new Xl(e.map||(t=>t))}static mapEffects(e,t){if(!e.length)return e;let i=[];for(let r of e){let s=r.map(t);s&&i.push(s)}return i}};xe.reconfigure=xe.define();xe.appendConfig=xe.define();var Le=class n{constructor(e,t,i,r,s,o){this.startState=e,this.changes=t,this.selection=i,this.effects=r,this.annotations=s,this.scrollIntoView=o,this._doc=null,this._state=null,i&&yd(i,t.newLength),s.some(l=>l.type==n.time)||(this.annotations=s.concat(n.time.of(Date.now())))}static create(e,t,i,r,s,o){return new n(e,t,i,r,s,o)}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(e){for(let t of this.annotations)if(t.type==e)return t.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(e){let t=this.annotation(n.userEvent);return!!(t&&(t==e||t.length>e.length&&t.slice(0,e.length)==e&&t[e.length]=="."))}};Le.time=ht.define();Le.userEvent=ht.define();Le.addToHistory=ht.define();Le.remote=ht.define();function Cb(n,e){let t=[];for(let i=0,r=0;;){let s,o;if(i<n.length&&(r==e.length||e[r]>=n[i]))s=n[i++],o=n[i++];else if(r<e.length)s=e[r++],o=e[r++];else return t;!t.length||t[t.length-1]<s?t.push(s,o):t[t.length-1]<o&&(t[t.length-1]=o)}}function Td(n,e,t){var i;let r,s,o;return t?(r=e.changes,s=Qe.empty(e.changes.length),o=n.changes.compose(e.changes)):(r=e.changes.map(n.changes),s=n.changes.mapDesc(e.changes,!0),o=n.changes.compose(r)),{changes:o,selection:e.selection?e.selection.map(s):(i=n.selection)===null||i===void 0?void 0:i.map(r),effects:xe.mapEffects(n.effects,r).concat(xe.mapEffects(e.effects,s)),annotations:n.annotations.length?n.annotations.concat(e.annotations):e.annotations,scrollIntoView:n.scrollIntoView||e.scrollIntoView}}function Yl(n,e,t){let i=e.selection,r=Li(e.annotations);return e.userEvent&&(r=r.concat(Le.userEvent.of(e.userEvent))),{changes:e.changes instanceof Qe?e.changes:Qe.of(e.changes||[],t,n.facet(xd)),selection:i&&(i instanceof D?i:D.single(i.anchor,i.head)),effects:Li(e.effects),annotations:r,scrollIntoView:!!e.scrollIntoView}}function Ad(n,e,t){let i=Yl(n,e.length?e[0]:{},n.doc.length);e.length&&e[0].filter===!1&&(t=!1);for(let s=1;s<e.length;s++){e[s].filter===!1&&(t=!1);let o=!!e[s].sequential;i=Td(i,Yl(n,e[s],o?i.changes.newLength:n.doc.length),o)}let r=Le.create(n,i.changes,i.selection,i.effects,i.annotations,i.scrollIntoView);return Ab(t?Tb(r):r)}function Tb(n){let e=n.startState,t=!0;for(let r of e.facet(vd)){let s=r(n);if(s===!1){t=!1;break}Array.isArray(s)&&(t=t===!0?s:Cb(t,s))}if(t!==!0){let r,s;if(t===!1)s=n.changes.invertedDesc,r=Qe.empty(e.doc.length);else{let o=n.changes.filter(t);r=o.changes,s=o.filtered.mapDesc(o.changes).invertedDesc}n=Le.create(e,r,n.selection&&n.selection.map(s),xe.mapEffects(n.effects,s),n.annotations,n.scrollIntoView)}let i=e.facet(kd);for(let r=i.length-1;r>=0;r--){let s=i[r](n);s instanceof Le?n=s:Array.isArray(s)&&s.length==1&&s[0]instanceof Le?n=s[0]:n=Ad(e,Li(s),!1)}return n}function Ab(n){let e=n.startState,t=e.facet(Sd),i=n;for(let r=t.length-1;r>=0;r--){let s=t[r](n);s&&Object.keys(s).length&&(i=Td(i,Yl(e,s,n.changes.newLength),!0))}return i==n?n:Le.create(e,n.changes,n.selection,i.effects,i.annotations,i.scrollIntoView)}var Mb=[];function Li(n){return n==null?Mb:Array.isArray(n)?n:[n]}var Ot=(function(n){return n[n.Word=0]="Word",n[n.Space=1]="Space",n[n.Other=2]="Other",n})(Ot||(Ot={})),Eb=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/,Jl;try{Jl=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch{}function Db(n){if(Jl)return Jl.test(n);for(let e=0;e<n.length;e++){let t=n[e];if(/\w/.test(t)||t>"\x80"&&(t.toUpperCase()!=t.toLowerCase()||Eb.test(t)))return!0}return!1}function Rb(n){return e=>{if(!/\S/.test(e))return Ot.Space;if(Db(e))return Ot.Word;for(let t=0;t<n.length;t++)if(e.indexOf(n[t])>-1)return Ot.Word;return Ot.Other}}var ke=class n{constructor(e,t,i,r,s,o){this.config=e,this.doc=t,this.selection=i,this.values=r,this.status=e.statusTemplate.slice(),this.computeSlot=s,o&&(o._state=this);for(let l=0;l<this.config.dynamicSlots.length;l++)gr(this,l<<1);this.computeSlot=null}field(e,t=!0){let i=this.config.address[e.id];if(i==null){if(t)throw new RangeError("Field is not present in this state");return}return gr(this,i),Ws(this,i)}update(...e){return Ad(this,e,!0)}applyTransaction(e){let t=this.config,{base:i,compartments:r}=t;for(let l of e.effects)l.is(fn.reconfigure)?(t&&(r=new Map,t.compartments.forEach((a,c)=>r.set(c,a)),t=null),r.set(l.value.compartment,l.value.extension)):l.is(xe.reconfigure)?(t=null,i=l.value):l.is(xe.appendConfig)&&(t=null,i=Li(i).concat(l.value));let s;t?s=e.startState.values.slice():(t=zs.resolve(i,r,this),s=new n(t,this.doc,this.selection,t.dynamicSlots.map(()=>null),(a,c)=>c.reconfigure(a,this),null).values);let o=e.startState.facet(Gl)?e.newSelection:e.newSelection.asSingle();new n(t,e.newDoc,o,s,(l,a)=>a.update(l,e),e)}replaceSelection(e){return typeof e=="string"&&(e=this.toText(e)),this.changeByRange(t=>({changes:{from:t.from,to:t.to,insert:e},range:D.cursor(t.from+e.length)}))}changeByRange(e){let t=this.selection,i=e(t.ranges[0]),r=this.changes(i.changes),s=[i.range],o=Li(i.effects);for(let l=1;l<t.ranges.length;l++){let a=e(t.ranges[l]),c=this.changes(a.changes),h=c.map(r);for(let d=0;d<l;d++)s[d]=s[d].map(h);let u=r.mapDesc(c,!0);s.push(a.range.map(u)),r=r.compose(h),o=xe.mapEffects(o,h).concat(xe.mapEffects(Li(a.effects),u))}return{changes:r,selection:D.create(s,t.mainIndex),effects:o}}changes(e=[]){return e instanceof Qe?e:Qe.of(e,this.doc.length,this.facet(n.lineSeparator))}toText(e){return te.of(e.split(this.facet(n.lineSeparator)||$l))}sliceDoc(e=0,t=this.doc.length){return this.doc.sliceString(e,t,this.lineBreak)}facet(e){let t=this.config.address[e.id];return t==null?e.default:(gr(this,t),Ws(this,t))}toJSON(e){let t={doc:this.sliceDoc(),selection:this.selection.toJSON()};if(e)for(let i in e){let r=e[i];r instanceof kt&&this.config.address[r.id]!=null&&(t[i]=r.spec.toJSON(this.field(e[i]),this))}return t}static fromJSON(e,t={},i){if(!e||typeof e.doc!="string")throw new RangeError("Invalid JSON representation for EditorState");let r=[];if(i){for(let s in i)if(Object.prototype.hasOwnProperty.call(e,s)){let o=i[s],l=e[s];r.push(o.init(a=>o.spec.fromJSON(l,a)))}}return n.create({doc:e.doc,selection:D.fromJSON(e.selection),extensions:t.extensions?r.concat([t.extensions]):r})}static create(e={}){let t=zs.resolve(e.extensions||[],new Map),i=e.doc instanceof te?e.doc:te.of((e.doc||"").split(t.staticFacet(n.lineSeparator)||$l)),r=e.selection?e.selection instanceof D?e.selection:D.single(e.selection.anchor,e.selection.head):D.single(0);return yd(r,i.length),t.staticFacet(Gl)||(r=r.asSingle()),new n(t,i,r,t.dynamicSlots.map(()=>null),(s,o)=>o.create(s),null)}get tabSize(){return this.facet(n.tabSize)}get lineBreak(){return this.facet(n.lineSeparator)||`
584
- `}get readOnly(){return this.facet(Cd)}phrase(e,...t){for(let i of this.facet(n.phrases))if(Object.prototype.hasOwnProperty.call(i,e)){e=i[e];break}return t.length&&(e=e.replace(/\$(\$|\d*)/g,(i,r)=>{if(r=="$")return"$";let s=+(r||1);return!s||s>t.length?i:t[s-1]})),e}languageDataAt(e,t,i=-1){let r=[];for(let s of this.facet(wd))for(let o of s(this,t,i))Object.prototype.hasOwnProperty.call(o,e)&&r.push(o[e]);return r}charCategorizer(e){let t=this.languageDataAt("wordChars",e);return Rb(t.length?t[0]:"")}wordAt(e){let{text:t,from:i,length:r}=this.doc.lineAt(e),s=this.charCategorizer(e),o=e-i,l=e-i;for(;o>0;){let a=ze(t,o,!1);if(s(t.slice(a,o))!=Ot.Word)break;o=a}for(;l<r;){let a=ze(t,l);if(s(t.slice(l,a))!=Ot.Word)break;l=a}return o==l?null:D.range(o+i,l+i)}};ke.allowMultipleSelections=Gl;ke.tabSize=$.define({combine:n=>n.length?n[0]:4});ke.lineSeparator=xd;ke.readOnly=Cd;ke.phrases=$.define({compare(n,e){let t=Object.keys(n),i=Object.keys(e);return t.length==i.length&&t.every(r=>n[r]==e[r])}});ke.languageData=wd;ke.changeFilter=vd;ke.transactionFilter=kd;ke.transactionExtender=Sd;fn.reconfigure=xe.define();function Pi(n,e,t={}){let i={};for(let r of n)for(let s of Object.keys(r)){let o=r[s],l=i[s];if(l===void 0)i[s]=o;else if(!(l===o||o===void 0))if(Object.hasOwnProperty.call(t,s))i[s]=t[s](l,o);else throw new Error("Config merge conflict for field "+s)}for(let r in e)i[r]===void 0&&(i[r]=e[r]);return i}var Qt=class{eq(e){return this==e}range(e,t=e){return yr.create(e,t,this)}};Qt.prototype.startSide=Qt.prototype.endSide=0;Qt.prototype.point=!1;Qt.prototype.mapMode=ct.TrackDel;function ia(n,e){return n==e||n.constructor==e.constructor&&n.eq(e)}var yr=class n{constructor(e,t,i){this.from=e,this.to=t,this.value=i}static create(e,t,i){return new n(e,t,i)}};function Zl(n,e){return n.from-e.from||n.value.startSide-e.value.startSide}var Ql=class n{constructor(e,t,i,r){this.from=e,this.to=t,this.value=i,this.maxPoint=r}get length(){return Ei(this.to)}findIndex(e,t,i,r=0){let s=i?this.to:this.from;for(let o=r,l=s.length;;){if(o==l)return o;let a=o+l>>1,c=s[a]-e||(i?this.value[a].endSide:this.value[a].startSide)-t;if(a==o)return c>=0?o:l;c>=0?l=a:o=a+1}}between(e,t,i,r){for(let s=this.findIndex(t,-1e9,!0),o=this.findIndex(i,1e9,!1,s);s<o;s++)if(r(this.from[s]+e,this.to[s]+e,this.value[s])===!1)return!1}map(e,t,i,r,s){let o=[],l=[],a=[],c=-1,h=-1;e:for(let u=0;u<this.value.length;u++){let d=this.value[u],f=this.from[u]+e,p=this.to[u]+e,g,b;if(f==p){let y=t.mapPos(f,d.startSide,d.mapMode);if(y==null||(g=b=y,d.startSide!=d.endSide&&(b=t.mapPos(f,d.endSide),b<g)))continue}else if(g=t.mapPos(f,d.startSide),b=t.mapPos(p,d.endSide),g>b||g==b&&d.startSide>0&&d.endSide<=0)continue;if(!((b-g||d.endSide-d.startSide)<0))if(c<0&&(c=g),d.point&&(h=Math.max(h,b-g)),(g-i||d.startSide-r)>=0)o.push(d),l.push(g-c),a.push(b-c),i=b,r=d.endSide;else{if(g==b)for(let y=o.length;y>0;y--){if((g-(a[y-1]+c)||d.startSide-o[y-1].endSide)>=0){o.splice(y,0,d),l.splice(y,0,g-c),a.splice(y,0,b-c);continue e}if((g-(l[y-1]+c)||d.endSide-o[y-1].startSide)>0)break}s(g,b,d)}}return{mapped:o.length?new n(l,a,o,h):null,pos:c}}},he=class n{constructor(e,t,i,r){this.chunkPos=e,this.chunk=t,this.nextLayer=i,this.maxPoint=r}static create(e,t,i,r){return new n(e,t,i,r)}get length(){let e=this.chunk.length-1;return e<0?0:Math.max(this.chunkEnd(e),this.nextLayer.length)}get size(){if(this.isEmpty)return 0;let e=this.nextLayer.size;for(let t of this.chunk)e+=t.value.length;return e}chunkEnd(e){return this.chunkPos[e]+this.chunk[e].length}update(e){let{add:t=[],sort:i=!1,filterFrom:r=0,filterTo:s=this.length}=e,o=e.filter;if(t.length==0&&!o)return this;if(i&&(t=t.slice().sort(Zl)),this.isEmpty)return t.length?n.of(t):this;let l=new Vs(this,null,-1).goto(0),a=0,c=[],h=new Qn;for(;l.value||a<t.length;)if(a<t.length&&(l.from-t[a].from||l.startSide-t[a].value.startSide)>=0){let u=t[a++];h.addInner(u.from,u.to,u.value,!1)||c.push(u)}else l.rangeIndex==1&&l.chunkIndex<this.chunk.length&&(a==t.length||this.chunkEnd(l.chunkIndex)<t[a].from)&&(!o||r>this.chunkEnd(l.chunkIndex)||s<this.chunkPos[l.chunkIndex])&&h.addChunk(this.chunkPos[l.chunkIndex],this.chunk[l.chunkIndex])?l.nextChunk():((!o||r>l.to||s<l.from||o(l.from,l.to,l.value))&&(h.addInner(l.from,l.to,l.value,!1)||c.push(yr.create(l.from,l.to,l.value))),l.next());return h.finishInner(this.nextLayer.isEmpty&&!c.length?n.empty:this.nextLayer.update({add:c,filter:o,filterFrom:r,filterTo:s}))}map(e){if(e.empty||this.isEmpty)return this;let t=[],i=[],r=-1,s,o=(a,c,h)=>{s||(s=new Qn),s.addRange(a,c,h,!1)};for(let a=0;a<this.chunk.length;a++){let c=this.chunkPos[a],h=this.chunk[a],u=e.touchesRange(c,c+h.length);if(u===!1)r=Math.max(r,h.maxPoint),t.push(h),i.push(e.mapPos(c));else if(u===!0){let[d,f]=t.length?[Ei(i)+Ei(t).length,Ei(Ei(t).value).endSide]:[-1,-1],{mapped:p,pos:g}=h.map(c,e,d,f,o);p&&(r=Math.max(r,p.maxPoint),t.push(p),i.push(g))}}let l=this.nextLayer.map(e);return s&&(l=s.finishInner(l)),t.length==0?l:new n(i,t,l||n.empty,r)}between(e,t,i){if(!this.isEmpty){for(let r=0;r<this.chunk.length;r++){let s=this.chunkPos[r],o=this.chunk[r];if(t>=s&&e<=s+o.length&&o.between(s,e-s,t-s,i)===!1)return}this.nextLayer.between(e,t,i)}}iter(e=0){return wr.from([this]).goto(e)}get isEmpty(){return this.nextLayer==this}static iter(e,t=0){return wr.from(e).goto(t)}static compare(e,t,i,r,s=-1){let o=e.filter(u=>u.maxPoint>0||!u.isEmpty&&u.maxPoint>=s),l=t.filter(u=>u.maxPoint>0||!u.isEmpty&&u.maxPoint>=s),a=dd(o,l,i),c=new Jn(o,a,s),h=new Jn(l,a,s);i.iterGaps((u,d,f)=>fd(c,u,h,d,f,r)),i.empty&&i.length==0&&fd(c,0,h,0,0,r)}static eq(e,t,i=0,r){r==null&&(r=999999999);let s=e.filter(h=>!h.isEmpty&&t.indexOf(h)<0),o=t.filter(h=>!h.isEmpty&&e.indexOf(h)<0);if(s.length!=o.length)return!1;if(!s.length)return!0;let l=dd(s,o),a=new Jn(s,l,0).goto(i),c=new Jn(o,l,0).goto(i);for(;;){if(a.to!=c.to||!ea(a.active,c.active)||a.point&&(!c.point||!ia(a.point,c.point)))return!1;if(a.to>r)return!0;a.next(),c.next()}}static spans(e,t,i,r,s=-1){let o=new Jn(e,null,s).goto(t),l=t,a=o.openStart;for(;;){let c=Math.min(o.to,i);if(o.point){let h=o.activeForPoint(o.to),u=o.pointFrom<t?h.length+1:o.point.startSide<0?h.length:Math.min(h.length,a);r.point(l,c,o.point,h,u,o.pointRank),a=Math.min(o.openEnd(c),h.length)}else c>l&&(r.span(l,c,o.active,a),a=o.openEnd(c));if(o.to>i)return a+(o.point&&o.to>i?1:0);l=o.to,o.next()}}static of(e,t=!1){let i=new Qn;for(let r of e instanceof yr?[e]:t?Lb(e):e)i.add(r.from,r.to,r.value);return i.finish()}static join(e){if(!e.length)return n.empty;let t=Ei(e);for(let i=e.length-2;i>=0;i--)for(let r=e[i];r!=n.empty;r=r.nextLayer)t=new n(r.chunkPos,r.chunk,t,Math.max(r.maxPoint,t.maxPoint));return t}};he.empty=new he([],[],null,-1);function Ei(n){return n[n.length-1]}function Lb(n){if(n.length>1)for(let e=n[0],t=1;t<n.length;t++){let i=n[t];if(Zl(e,i)>0)return n.slice().sort(Zl);e=i}return n}he.empty.nextLayer=he.empty;var Qn=class n{finishChunk(e){this.chunks.push(new Ql(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,e&&(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(e,t,i){this.addRange(e,t,i,!0)}addRange(e,t,i,r){this.addInner(e,t,i,r)||(this.nextLayer||(this.nextLayer=new n)).addRange(e,t,i,r)}addInner(e,t,i,r){let s=e-this.lastTo||i.startSide-this.last.endSide;if(r&&s<=0&&(e-this.lastFrom||i.startSide-this.last.startSide)<0)throw new Error("Ranges must be added sorted by `from` position and `startSide`");return s<0?!1:(this.from.length==250&&this.finishChunk(!0),this.chunkStart<0&&(this.chunkStart=e),this.from.push(e-this.chunkStart),this.to.push(t-this.chunkStart),this.last=i,this.lastFrom=e,this.lastTo=t,this.value.push(i),i.point&&(this.maxPoint=Math.max(this.maxPoint,t-e)),!0)}addChunk(e,t){if((e-this.lastTo||t.value[0].startSide-this.last.endSide)<0)return!1;this.from.length&&this.finishChunk(!0),this.setMaxPoint=Math.max(this.setMaxPoint,t.maxPoint),this.chunks.push(t),this.chunkPos.push(e);let i=t.value.length-1;return this.last=t.value[i],this.lastFrom=t.from[i]+e,this.lastTo=t.to[i]+e,!0}finish(){return this.finishInner(he.empty)}finishInner(e){if(this.from.length&&this.finishChunk(!1),this.chunks.length==0)return e;let t=he.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(e):e,this.setMaxPoint);return this.from=null,t}};function dd(n,e,t){let i=new Map;for(let s of n)for(let o=0;o<s.chunk.length;o++)s.chunk[o].maxPoint<=0&&i.set(s.chunk[o],s.chunkPos[o]);let r=new Set;for(let s of e)for(let o=0;o<s.chunk.length;o++){let l=i.get(s.chunk[o]);l!=null&&(t?t.mapPos(l):l)==s.chunkPos[o]&&!t?.touchesRange(l,l+s.chunk[o].length)&&r.add(s.chunk[o])}return r}var Vs=class{constructor(e,t,i,r=0){this.layer=e,this.skip=t,this.minPoint=i,this.rank=r}get startSide(){return this.value?this.value.startSide:0}get endSide(){return this.value?this.value.endSide:0}goto(e,t=-1e9){return this.chunkIndex=this.rangeIndex=0,this.gotoInner(e,t,!1),this}gotoInner(e,t,i){for(;this.chunkIndex<this.layer.chunk.length;){let r=this.layer.chunk[this.chunkIndex];if(!(this.skip&&this.skip.has(r)||this.layer.chunkEnd(this.chunkIndex)<e||r.maxPoint<this.minPoint))break;this.chunkIndex++,i=!1}if(this.chunkIndex<this.layer.chunk.length){let r=this.layer.chunk[this.chunkIndex].findIndex(e-this.layer.chunkPos[this.chunkIndex],t,!0);(!i||this.rangeIndex<r)&&this.setRangeIndex(r)}this.next()}forward(e,t){(this.to-e||this.endSide-t)<0&&this.gotoInner(e,t,!0)}next(){for(;;)if(this.chunkIndex==this.layer.chunk.length){this.from=this.to=1e9,this.value=null;break}else{let e=this.layer.chunkPos[this.chunkIndex],t=this.layer.chunk[this.chunkIndex],i=e+t.from[this.rangeIndex];if(this.from=i,this.to=e+t.to[this.rangeIndex],this.value=t.value[this.rangeIndex],this.setRangeIndex(this.rangeIndex+1),this.minPoint<0||this.value.point&&this.to-this.from>=this.minPoint)break}}setRangeIndex(e){if(e==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=e}nextChunk(){this.chunkIndex++,this.rangeIndex=0,this.next()}compare(e){return this.from-e.from||this.startSide-e.startSide||this.rank-e.rank||this.to-e.to||this.endSide-e.endSide}},wr=class n{constructor(e){this.heap=e}static from(e,t=null,i=-1){let r=[];for(let s=0;s<e.length;s++)for(let o=e[s];!o.isEmpty;o=o.nextLayer)o.maxPoint>=i&&r.push(new Vs(o,t,i,s));return r.length==1?r[0]:new n(r)}get startSide(){return this.value?this.value.startSide:0}goto(e,t=-1e9){for(let i of this.heap)i.goto(e,t);for(let i=this.heap.length>>1;i>=0;i--)Wl(this.heap,i);return this.next(),this}forward(e,t){for(let i of this.heap)i.forward(e,t);for(let i=this.heap.length>>1;i>=0;i--)Wl(this.heap,i);(this.to-e||this.value.endSide-t)<0&&this.next()}next(){if(this.heap.length==0)this.from=this.to=1e9,this.value=null,this.rank=-1;else{let e=this.heap[0];this.from=e.from,this.to=e.to,this.value=e.value,this.rank=e.rank,e.value&&e.next(),Wl(this.heap,0)}}};function Wl(n,e){for(let t=n[e];;){let i=(e<<1)+1;if(i>=n.length)break;let r=n[i];if(i+1<n.length&&r.compare(n[i+1])>=0&&(r=n[i+1],i++),t.compare(r)<0)break;n[i]=t,n[e]=r,e=i}}var Jn=class{constructor(e,t,i){this.minPoint=i,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=wr.from(e,t,i)}goto(e,t=-1e9){return this.cursor.goto(e,t),this.active.length=this.activeTo.length=this.activeRank.length=0,this.minActive=-1,this.to=e,this.endSide=t,this.openStart=-1,this.next(),this}forward(e,t){for(;this.minActive>-1&&(this.activeTo[this.minActive]-e||this.active[this.minActive].endSide-t)<0;)this.removeActive(this.minActive);this.cursor.forward(e,t)}removeActive(e){Is(this.active,e),Is(this.activeTo,e),Is(this.activeRank,e),this.minActive=pd(this.active,this.activeTo)}addActive(e){let t=0,{value:i,to:r,rank:s}=this.cursor;for(;t<this.activeRank.length&&(s-this.activeRank[t]||r-this.activeTo[t])>0;)t++;Ns(this.active,t,i),Ns(this.activeTo,t,r),Ns(this.activeRank,t,s),e&&Ns(e,t,this.cursor.from),this.minActive=pd(this.active,this.activeTo)}next(){let e=this.to,t=this.point;this.point=null;let i=this.openStart<0?[]:null;for(;;){let r=this.minActive;if(r>-1&&(this.activeTo[r]-this.cursor.from||this.active[r].endSide-this.cursor.startSide)<0){if(this.activeTo[r]>e){this.to=this.activeTo[r],this.endSide=this.active[r].endSide;break}this.removeActive(r),i&&Is(i,r)}else if(this.cursor.value)if(this.cursor.from>e){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}else{let s=this.cursor.value;if(!s.point)this.addActive(i),this.cursor.next();else if(t&&this.cursor.to==this.to&&this.cursor.from<this.cursor.to)this.cursor.next();else{this.point=s,this.pointFrom=this.cursor.from,this.pointRank=this.cursor.rank,this.to=this.cursor.to,this.endSide=s.endSide,this.cursor.next(),this.forward(this.to,this.endSide);break}}else{this.to=this.endSide=1e9;break}}if(i){this.openStart=0;for(let r=i.length-1;r>=0&&i[r]<e;r--)this.openStart++}}activeForPoint(e){if(!this.active.length)return this.active;let t=[];for(let i=this.active.length-1;i>=0&&!(this.activeRank[i]<this.pointRank);i--)(this.activeTo[i]>e||this.activeTo[i]==e&&this.active[i].endSide>=this.point.endSide)&&t.push(this.active[i]);return t.reverse()}openEnd(e){let t=0;for(let i=this.activeTo.length-1;i>=0&&this.activeTo[i]>e;i--)t++;return t}};function fd(n,e,t,i,r,s){n.goto(e),t.goto(i);let o=i+r,l=i,a=i-e,c=!!s.boundChange;for(let h=!1;;){let u=n.to+a-t.to,d=u||n.endSide-t.endSide,f=d<0?n.to+a:t.to,p=Math.min(f,o);if(n.point||t.point?(n.point&&t.point&&ia(n.point,t.point)&&ea(n.activeForPoint(n.to),t.activeForPoint(t.to))||s.comparePoint(l,p,n.point,t.point),h=!1):(h&&(s.boundChange(l),h=!1),p>l&&!ea(n.active,t.active)&&s.compareRange(l,p,n.active,t.active),c&&p<o&&(u||n.openEnd(f)!=t.openEnd(f))&&(h=!0)),f>o)break;l=f,d<=0&&n.next(),d>=0&&t.next()}}function ea(n,e){if(n.length!=e.length)return!1;for(let t=0;t<n.length;t++)if(n[t]!=e[t]&&!ia(n[t],e[t]))return!1;return!0}function Is(n,e){for(let t=e,i=n.length-1;t<i;t++)n[t]=n[t+1];n.pop()}function Ns(n,e,t){for(let i=n.length-1;i>=e;i--)n[i+1]=n[i];n[e]=t}function pd(n,e){let t=-1,i=1e9;for(let r=0;r<e.length;r++)(e[r]-i||n[r].endSide-n[t].endSide)<0&&(t=r,i=e[r]);return t}function ti(n,e,t=n.length){let i=0;for(let r=0;r<t&&r<n.length;)n.charCodeAt(r)==9?(i+=e-i%e,r++):(i++,r=ze(n,r));return i}function Md(n,e,t,i){for(let r=0,s=0;;){if(s>=e)return r;if(r==n.length)break;s+=n.charCodeAt(r)==9?t-s%t:1,r=ze(n,r)}return i===!0?-1:n.length}var Ed=typeof Symbol>"u"?"__\u037C":Symbol.for("\u037C"),ra=typeof Symbol>"u"?"__styleSet"+Math.floor(Math.random()*1e8):Symbol("styleSet"),Dd=typeof globalThis<"u"?globalThis:typeof window<"u"?window:{},St=class{constructor(e,t){this.rules=[];let{finish:i}=t||{};function r(o){return/^@/.test(o)?[o]:o.split(/,\s*/)}function s(o,l,a,c){let h=[],u=/^@(\w+)\b/.exec(o[0]),d=u&&u[1]=="keyframes";if(u&&l==null)return a.push(o[0]+";");for(let f in l){let p=l[f];if(/&/.test(f))s(f.split(/,\s*/).map(g=>o.map(b=>g.replace(/&/,b))).reduce((g,b)=>g.concat(b)),p,a);else if(p&&typeof p=="object"){if(!u)throw new RangeError("The value of a property ("+f+") should be a primitive value.");s(r(f),p,h,d)}else p!=null&&h.push(f.replace(/_.*/,"").replace(/[A-Z]/g,g=>"-"+g.toLowerCase())+": "+p+";")}(h.length||d)&&a.push((i&&!u&&!c?o.map(i):o).join(", ")+" {"+h.join(" ")+"}")}for(let o in e)s(r(o),e[o],this.rules)}getRules(){return this.rules.join(`
585
- `)}static newName(){let e=Dd[Ed]||1;return Dd[Ed]=e+1,"\u037C"+e.toString(36)}static mount(e,t,i){let r=e[ra],s=i&&i.nonce;r?s&&r.setNonce(s):r=new sa(e,s),r.mount(Array.isArray(t)?t:[t],e)}},Rd=new Map,sa=class{constructor(e,t){let i=e.ownerDocument||e,r=i.defaultView;if(!e.head&&e.adoptedStyleSheets&&r.CSSStyleSheet){let s=Rd.get(i);if(s)return e[ra]=s;this.sheet=new r.CSSStyleSheet,Rd.set(i,this)}else this.styleTag=i.createElement("style"),t&&this.styleTag.setAttribute("nonce",t);this.modules=[],e[ra]=this}mount(e,t){let i=this.sheet,r=0,s=0;for(let o=0;o<e.length;o++){let l=e[o],a=this.modules.indexOf(l);if(a<s&&a>-1&&(this.modules.splice(a,1),s--,a=-1),a==-1){if(this.modules.splice(s++,0,l),i)for(let c=0;c<l.rules.length;c++)i.insertRule(l.rules[c],r++)}else{for(;s<a;)r+=this.modules[s++].rules.length;r+=l.rules.length,s++}}if(i)t.adoptedStyleSheets.indexOf(this.sheet)<0&&(t.adoptedStyleSheets=[this.sheet,...t.adoptedStyleSheets]);else{let o="";for(let a=0;a<this.modules.length;a++)o+=this.modules[a].getRules()+`
586
- `;this.styleTag.textContent=o;let l=t.head||t;this.styleTag.parentNode!=l&&l.insertBefore(this.styleTag,l.firstChild)}}setNonce(e){this.styleTag&&this.styleTag.getAttribute("nonce")!=e&&this.styleTag.setAttribute("nonce",e)}};var pn={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:"'"},Ii={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},Ob=typeof navigator<"u"&&/Mac/.test(navigator.platform),Pb=typeof navigator<"u"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(Oe=0;Oe<10;Oe++)pn[48+Oe]=pn[96+Oe]=String(Oe);var Oe;for(Oe=1;Oe<=24;Oe++)pn[Oe+111]="F"+Oe;var Oe;for(Oe=65;Oe<=90;Oe++)pn[Oe]=String.fromCharCode(Oe+32),Ii[Oe]=String.fromCharCode(Oe);var Oe;for($s in pn)Ii.hasOwnProperty($s)||(Ii[$s]=pn[$s]);var $s;function Ld(n){var e=Ob&&n.metaKey&&n.shiftKey&&!n.ctrlKey&&!n.altKey||Pb&&n.shiftKey&&n.key&&n.key.length==1||n.key=="Unidentified",t=!e&&n.key||(n.shiftKey?Ii:pn)[n.keyCode]||n.key||"Unidentified";return t=="Esc"&&(t="Escape"),t=="Del"&&(t="Delete"),t=="Left"&&(t="ArrowLeft"),t=="Up"&&(t="ArrowUp"),t=="Right"&&(t="ArrowRight"),t=="Down"&&(t="ArrowDown"),t}var et=typeof navigator<"u"?navigator:{userAgent:"",vendor:"",platform:""},da=typeof document<"u"?document:{documentElement:{style:{}}},fa=/Edge\/(\d+)/.exec(et.userAgent),hf=/MSIE \d/.test(et.userAgent),pa=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(et.userAgent),go=!!(hf||pa||fa),Od=!go&&/gecko\/(\d+)/i.test(et.userAgent),oa=!go&&/Chrome\/(\d+)/.exec(et.userAgent),Pd="webkitFontSmoothing"in da.documentElement.style,ma=!go&&/Apple Computer/.test(et.vendor),Id=ma&&(/Mobile\/\w+/.test(et.userAgent)||et.maxTouchPoints>2),O={mac:Id||/Mac/.test(et.platform),windows:/Win/.test(et.platform),linux:/Linux|X11/.test(et.platform),ie:go,ie_version:hf?da.documentMode||6:pa?+pa[1]:fa?+fa[1]:0,gecko:Od,gecko_version:Od?+(/Firefox\/(\d+)/.exec(et.userAgent)||[0,0])[1]:0,chrome:!!oa,chrome_version:oa?+oa[1]:0,ios:Id,android:/Android\b/.test(et.userAgent),webkit:Pd,webkit_version:Pd?+(/\bAppleWebKit\/(\d+)/.exec(et.userAgent)||[0,0])[1]:0,safari:ma,safari_version:ma?+(/\bVersion\/(\d+(\.\d+)?)/.exec(et.userAgent)||[0,0])[1]:0,tabSize:da.documentElement.style.tabSize!=null?"tab-size":"-moz-tab-size"};function nc(n,e){for(let t in n)t=="class"&&e.class?e.class+=" "+n.class:t=="style"&&e.style?e.style+=";"+n.style:e[t]=n[t];return e}var to=Object.create(null);function ic(n,e,t){if(n==e)return!0;n||(n=to),e||(e=to);let i=Object.keys(n),r=Object.keys(e);if(i.length-(t&&i.indexOf(t)>-1?1:0)!=r.length-(t&&r.indexOf(t)>-1?1:0))return!1;for(let s of i)if(s!=t&&(r.indexOf(s)==-1||n[s]!==e[s]))return!1;return!0}function Ib(n,e){for(let t=n.attributes.length-1;t>=0;t--){let i=n.attributes[t].name;e[i]==null&&n.removeAttribute(i)}for(let t in e){let i=e[t];t=="style"?n.style.cssText=i:n.getAttribute(t)!=i&&n.setAttribute(t,i)}}function Nd(n,e,t){let i=!1;if(e)for(let r in e)t&&r in t||(i=!0,r=="style"?n.style.cssText="":n.removeAttribute(r));if(t)for(let r in t)e&&e[r]==t[r]||(i=!0,r=="style"?n.style.cssText=t[r]:n.setAttribute(r,t[r]));return i}function Nb(n){let e=Object.create(null);for(let t=0;t<n.attributes.length;t++){let i=n.attributes[t];e[i.name]=i.value}return e}var On=class{eq(e){return!1}updateDOM(e,t,i){return!1}compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}get estimatedHeight(){return-1}get lineBreaks(){return 0}ignoreEvent(e){return!0}coordsAt(e,t,i){return null}get isHidden(){return!1}get editable(){return!1}destroy(e){}},Ve=(function(n){return n[n.Text=0]="Text",n[n.WidgetBefore=1]="WidgetBefore",n[n.WidgetAfter=2]="WidgetAfter",n[n.WidgetRange=3]="WidgetRange",n})(Ve||(Ve={})),me=class extends Qt{constructor(e,t,i,r){super(),this.startSide=e,this.endSide=t,this.widget=i,this.spec=r}get heightRelevant(){return!1}static mark(e){return new Pr(e)}static widget(e){let t=Math.max(-1e4,Math.min(1e4,e.side||0)),i=!!e.block;return t+=i&&!e.inlineOrder?t>0?3e8:-4e8:t>0?1e8:-1e8,new si(e,t,t,i,e.widget||null,!1)}static replace(e){let t=!!e.block,i,r;if(e.isBlockGap)i=-5e8,r=4e8;else{let{start:s,end:o}=uf(e,t);i=(s?t?-3e8:-1:5e8)-1,r=(o?t?2e8:1:-6e8)+1}return new si(e,i,r,t,e.widget||null,!0)}static line(e){return new Ir(e)}static set(e,t=!1){return he.of(e,t)}hasHeight(){return this.widget?this.widget.estimatedHeight>-1:!1}};me.none=he.empty;var Pr=class n extends me{constructor(e){let{start:t,end:i}=uf(e);super(t?-1:5e8,i?1:-6e8,null,e),this.tagName=e.tagName||"span",this.attrs=e.class&&e.attributes?nc(e.attributes,{class:e.class}):e.class?{class:e.class}:e.attributes||to}eq(e){return this==e||e instanceof n&&this.tagName==e.tagName&&ic(this.attrs,e.attrs)}range(e,t=e){if(e>=t)throw new RangeError("Mark decorations may not be empty");return super.range(e,t)}};Pr.prototype.point=!1;var Ir=class n extends me{constructor(e){super(-2e8,-2e8,null,e)}eq(e){return e instanceof n&&this.spec.class==e.spec.class&&ic(this.spec.attributes,e.spec.attributes)}range(e,t=e){if(t!=e)throw new RangeError("Line decoration ranges must be zero-length");return super.range(e,t)}};Ir.prototype.mapMode=ct.TrackBefore;Ir.prototype.point=!0;var si=class n extends me{constructor(e,t,i,r,s,o){super(t,i,s,e),this.block=r,this.isReplace=o,this.mapMode=r?t<=0?ct.TrackBefore:ct.TrackAfter:ct.TrackDel}get type(){return this.startSide!=this.endSide?Ve.WidgetRange:this.startSide<=0?Ve.WidgetBefore:Ve.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&(this.widget.estimatedHeight>=5||this.widget.lineBreaks>0)}eq(e){return e instanceof n&&Bb(this.widget,e.widget)&&this.block==e.block&&this.startSide==e.startSide&&this.endSide==e.endSide}range(e,t=e){if(this.isReplace&&(e>t||e==t&&this.startSide>0&&this.endSide<=0))throw new RangeError("Invalid range for replacement decoration");if(!this.isReplace&&t!=e)throw new RangeError("Widget decorations can only have zero-length ranges");return super.range(e,t)}};si.prototype.point=!0;function uf(n,e=!1){let{inclusiveStart:t,inclusiveEnd:i}=n;return t==null&&(t=n.inclusive),i==null&&(i=n.inclusive),{start:t??e,end:i??e}}function Bb(n,e){return n==e||!!(n&&e&&n.compare(e))}function Fi(n,e,t,i=0){let r=t.length-1;r>=0&&t[r]+i>=n?t[r]=Math.max(t[r],e):t.push(n,e)}var no=class n extends Qt{constructor(e,t,i){super(),this.tagName=e,this.attributes=t,this.rank=i}eq(e){return e==this||e instanceof n&&this.tagName==e.tagName&&ic(this.attributes,e.attributes)}static create(e){return new n(e.tagName,e.attributes||to,e.rank==null?50:Math.max(0,Math.min(e.rank,100)))}static set(e,t=!1){return he.of(e,t)}};no.prototype.startSide=no.prototype.endSide=-1;function Nr(n){let e;return n.nodeType==11?e=n.getSelection?n:n.ownerDocument:e=n,e.getSelection()}function ga(n,e){return e?n==e||n.contains(e.nodeType!=1?e.parentNode:e):!1}function Cr(n,e){if(!e.anchorNode)return!1;try{return ga(n,e.anchorNode)}catch{return!1}}function Tr(n){return n.nodeType==3?_r(n,0,n.nodeValue.length).getClientRects():n.nodeType==1?n.getClientRects():[]}function Ar(n,e,t,i){return t?Bd(n,e,t,i,-1)||Bd(n,e,t,i,1):!1}function Pn(n){for(var e=0;;e++)if(n=n.previousSibling,!n)return e}function io(n){return n.nodeType==1&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(n.nodeName)}function Bd(n,e,t,i,r){for(;;){if(n==t&&e==i)return!0;if(e==(r<0?0:bn(n))){if(n.nodeName=="DIV")return!1;let s=n.parentNode;if(!s||s.nodeType!=1)return!1;e=Pn(n)+(r<0?0:1),n=s}else if(n.nodeType==1){if(n=n.childNodes[e+(r<0?-1:0)],n.nodeType==1&&n.contentEditable=="false")return!1;e=r<0?bn(n):0}else return!1}}function bn(n){return n.nodeType==3?n.nodeValue.length:n.childNodes.length}function Br(n,e){let{left:t,right:i}=n;if(t==i)return n;let r=e?t:i;return{left:r,right:r,top:n.top,bottom:n.bottom}}function _b(n){let e=n.visualViewport;return e?{left:0,right:e.width,top:0,bottom:e.height}:{left:0,right:n.innerWidth,top:0,bottom:n.innerHeight}}function df(n,e){let t=e.width/n.offsetWidth,i=e.height/n.offsetHeight;return(t>.995&&t<1.005||!isFinite(t)||Math.abs(e.width-n.offsetWidth)<1)&&(t=1),(i>.995&&i<1.005||!isFinite(i)||Math.abs(e.height-n.offsetHeight)<1)&&(i=1),{scaleX:t,scaleY:i}}function Hb(n,e,t,i,r,s,o,l){let a=n.ownerDocument,c=a.defaultView||window;for(let h=n,u=!1;h&&!u;)if(h.nodeType==1){let d,f=h==a.body,p=1,g=1;if(f)d=_b(c);else{if(/^(fixed|sticky)$/.test(getComputedStyle(h).position)&&(u=!0),h.scrollHeight<=h.clientHeight&&h.scrollWidth<=h.clientWidth){h=h.assignedSlot||h.parentNode;continue}let x=h.getBoundingClientRect();({scaleX:p,scaleY:g}=df(h,x)),d={left:x.left,right:x.left+h.clientWidth*p,top:x.top,bottom:x.top+h.clientHeight*g}}let b=0,y=0;if(r=="nearest")e.top<d.top+o?(y=e.top-(d.top+o),t>0&&e.bottom>d.bottom+y&&(y=e.bottom-d.bottom+o)):e.bottom>d.bottom-o&&(y=e.bottom-d.bottom+o,t<0&&e.top-y<d.top&&(y=e.top-(d.top+o)));else{let x=e.bottom-e.top,C=d.bottom-d.top;y=(r=="center"&&x<=C?e.top+x/2-C/2:r=="start"||r=="center"&&t<0?e.top-o:e.bottom-C+o)-d.top}if(i=="nearest"?e.left<d.left+s?(b=e.left-(d.left+s),t>0&&e.right>d.right+b&&(b=e.right-d.right+s)):e.right>d.right-s&&(b=e.right-d.right+s,t<0&&e.left<d.left+b&&(b=e.left-(d.left+s))):b=(i=="center"?e.left+(e.right-e.left)/2-(d.right-d.left)/2:i=="start"==l?e.left-s:e.right-(d.right-d.left)+s)-d.left,b||y)if(f)c.scrollBy(b,y);else{let x=0,C=0;if(y){let H=h.scrollTop;h.scrollTop+=y/g,C=(h.scrollTop-H)*g}if(b){let H=h.scrollLeft;h.scrollLeft+=b/p,x=(h.scrollLeft-H)*p}e={left:e.left-x,top:e.top-C,right:e.right-x,bottom:e.bottom-C},x&&Math.abs(x-b)<1&&(i="nearest"),C&&Math.abs(C-y)<1&&(r="nearest")}if(f)break;(e.top<d.top||e.bottom>d.bottom||e.left<d.left||e.right>d.right)&&(e={left:Math.max(e.left,d.left),right:Math.min(e.right,d.right),top:Math.max(e.top,d.top),bottom:Math.min(e.bottom,d.bottom)}),h=h.assignedSlot||h.parentNode}else if(h.nodeType==11)h=h.host;else break}function ff(n,e=!0){let t=n.ownerDocument,i=null,r=null;for(let s=n.parentNode;s&&!(s==t.body||(!e||i)&&r);)if(s.nodeType==1)!r&&s.scrollHeight>s.clientHeight&&(r=s),e&&!i&&s.scrollWidth>s.clientWidth&&(i=s),s=s.assignedSlot||s.parentNode;else if(s.nodeType==11)s=s.host;else break;return{x:i,y:r}}var ba=class{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}eq(e){return this.anchorNode==e.anchorNode&&this.anchorOffset==e.anchorOffset&&this.focusNode==e.focusNode&&this.focusOffset==e.focusOffset}setRange(e){let{anchorNode:t,focusNode:i}=e;this.set(t,Math.min(e.anchorOffset,t?bn(t):0),i,Math.min(e.focusOffset,i?bn(i):0))}set(e,t,i,r){this.anchorNode=e,this.anchorOffset=t,this.focusNode=i,this.focusOffset=r}};function pf(n){let e=[];for(let t=n;t;t=t.nodeType==11?t.host:t.parentNode)t.nodeType==1&&e.push({node:t,left:t.scrollLeft,top:t.scrollTop});return e}function mf(n,e=!0){for(let{node:t,left:i,top:r}of n)e&&t.scrollTop!=r&&(t.scrollTop=r),t.scrollLeft!=i&&(t.scrollLeft=i)}var ni=null;O.safari&&O.safari_version>=26&&(ni=!1);function gf(n){if(n.setActive)return n.setActive();if(ni)return n.focus(ni);let e=pf(n);n.focus(ni==null?{get preventScroll(){return ni={preventScroll:!0},!0}}:void 0),ni||(ni=!1,mf(e))}var _d;function _r(n,e,t=e){let i=_d||(_d=document.createRange());return i.setEnd(n,t),i.setStart(n,e),i}function zi(n,e,t,i){let r={key:e,code:e,keyCode:t,which:t,cancelable:!0};i&&({altKey:r.altKey,ctrlKey:r.ctrlKey,shiftKey:r.shiftKey,metaKey:r.metaKey}=i);let s=new KeyboardEvent("keydown",r);s.synthetic=!0,n.dispatchEvent(s);let o=new KeyboardEvent("keyup",r);return o.synthetic=!0,n.dispatchEvent(o),s.defaultPrevented||o.defaultPrevented}function Fb(n){for(;n;){if(n&&(n.nodeType==9||n.nodeType==11&&n.host))return n;n=n.assignedSlot||n.parentNode}return null}function zb(n,e){let t=e.focusNode,i=e.focusOffset;if(!t||e.anchorNode!=t||e.anchorOffset!=i)return!1;for(i=Math.min(i,bn(t));;)if(i){if(t.nodeType!=1)return!1;let r=t.childNodes[i-1];r.contentEditable=="false"?i--:(t=r,i=bn(t))}else{if(t==n)return!0;i=Pn(t),t=t.parentNode}}function bf(n){return n instanceof Window?n.pageYOffset>Math.max(0,n.document.documentElement.scrollHeight-n.innerHeight-4):n.scrollTop>Math.max(1,n.scrollHeight-n.clientHeight-4)}function yf(n,e){for(let t=n,i=e;;){if(t.nodeType==3&&i>0)return{node:t,offset:i};if(t.nodeType==1&&i>0){if(t.contentEditable=="false")return null;t=t.childNodes[i-1],i=bn(t)}else if(t.parentNode&&!io(t))i=Pn(t),t=t.parentNode;else return null}}function wf(n,e){for(let t=n,i=e;;){if(t.nodeType==3&&i<t.nodeValue.length)return{node:t,offset:i};if(t.nodeType==1&&i<t.childNodes.length){if(t.contentEditable=="false")return null;t=t.childNodes[i],i=0}else if(t.parentNode&&!io(t))i=Pn(t)+1,t=t.parentNode;else return null}}var tn=class n{constructor(e,t,i=!0){this.node=e,this.offset=t,this.precise=i}static before(e,t){return new n(e.parentNode,Pn(e),t)}static after(e,t){return new n(e.parentNode,Pn(e)+1,t)}},ge=(function(n){return n[n.LTR=0]="LTR",n[n.RTL=1]="RTL",n})(ge||(ge={})),oi=ge.LTR,rc=ge.RTL;function xf(n){let e=[];for(let t=0;t<n.length;t++)e.push(1<<+n[t]);return e}var Wb=xf("88888888888888888888888888888888888666888888787833333333337888888000000000000000000000000008888880000000000000000000000000088888888888888888888888888888888888887866668888088888663380888308888800000000000000000000000800000000000000000000000000000008"),Vb=xf("4444448826627288999999999992222222222222222222222222222222222222222222222229999999999999999999994444444444644222822222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222999999949999999229989999223333333333"),ya=Object.create(null),en=[];for(let n of["()","[]","{}"]){let e=n.charCodeAt(0),t=n.charCodeAt(1);ya[e]=t,ya[t]=-e}function vf(n){return n<=247?Wb[n]:1424<=n&&n<=1524?2:1536<=n&&n<=1785?Vb[n-1536]:1774<=n&&n<=2220?4:8192<=n&&n<=8204?256:64336<=n&&n<=65023?4:1}var $b=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\ufb50-\ufdff]/,At=class{get dir(){return this.level%2?rc:oi}constructor(e,t,i){this.from=e,this.to=t,this.level=i}side(e,t){return this.dir==t==e?this.to:this.from}forward(e,t){return e==(this.dir==t)}static find(e,t,i,r){let s=-1;for(let o=0;o<e.length;o++){let l=e[o];if(l.from<=t&&l.to>=t){if(l.level==i)return o;(s<0||(r!=0?r<0?l.from<t:l.to>t:e[s].level>l.level))&&(s=o)}}if(s<0)throw new RangeError("Index out of range");return s}};function kf(n,e){if(n.length!=e.length)return!1;for(let t=0;t<n.length;t++){let i=n[t],r=e[t];if(i.from!=r.from||i.to!=r.to||i.direction!=r.direction||!kf(i.inner,r.inner))return!1}return!0}var de=[];function Ub(n,e,t,i,r){for(let s=0;s<=i.length;s++){let o=s?i[s-1].to:e,l=s<i.length?i[s].from:t,a=s?256:r;for(let c=o,h=a,u=a;c<l;c++){let d=vf(n.charCodeAt(c));d==512?d=h:d==8&&u==4&&(d=16),de[c]=d==4?2:d,d&7&&(u=d),h=d}for(let c=o,h=a,u=a;c<l;c++){let d=de[c];if(d==128)c<l-1&&h==de[c+1]&&h&24?d=de[c]=h:de[c]=256;else if(d==64){let f=c+1;for(;f<l&&de[f]==64;)f++;let p=c&&h==8||f<t&&de[f]==8?u==1?1:8:256;for(let g=c;g<f;g++)de[g]=p;c=f-1}else d==8&&u==1&&(de[c]=1);h=d,d&7&&(u=d)}}}function Kb(n,e,t,i,r){let s=r==1?2:1;for(let o=0,l=0,a=0;o<=i.length;o++){let c=o?i[o-1].to:e,h=o<i.length?i[o].from:t;for(let u=c,d,f,p;u<h;u++)if(f=ya[d=n.charCodeAt(u)])if(f<0){for(let g=l-3;g>=0;g-=3)if(en[g+1]==-f){let b=en[g+2],y=b&2?r:b&4?b&1?s:r:0;y&&(de[u]=de[en[g]]=y),l=g;break}}else{if(en.length==189)break;en[l++]=u,en[l++]=d,en[l++]=a}else if((p=de[u])==2||p==1){let g=p==r;a=g?0:1;for(let b=l-3;b>=0;b-=3){let y=en[b+2];if(y&2)break;if(g)en[b+2]|=2;else{if(y&4)break;en[b+2]|=4}}}}}function jb(n,e,t,i){for(let r=0,s=i;r<=t.length;r++){let o=r?t[r-1].to:n,l=r<t.length?t[r].from:e;for(let a=o;a<l;){let c=de[a];if(c==256){let h=a+1;for(;;)if(h==l){if(r==t.length)break;h=t[r++].to,l=r<t.length?t[r].from:e}else if(de[h]==256)h++;else break;let u=s==1,d=(h<e?de[h]:i)==1,f=u==d?u?1:2:i;for(let p=h,g=r,b=g?t[g-1].to:n;p>a;)p==b&&(p=t[--g].from,b=g?t[g-1].to:n),de[--p]=f;a=h}else s=c,a++}}}function wa(n,e,t,i,r,s,o){let l=i%2?2:1;if(i%2==r%2)for(let a=e,c=0;a<t;){let h=!0,u=!1;if(c==s.length||a<s[c].from){let g=de[a];g!=l&&(h=!1,u=g==16)}let d=!h&&l==1?[]:null,f=h?i:i+1,p=a;e:for(;;)if(c<s.length&&p==s[c].from){if(u)break e;let g=s[c];if(!h)for(let b=g.to,y=c+1;;){if(b==t)break e;if(y<s.length&&s[y].from==b)b=s[y++].to;else{if(de[b]==l)break e;break}}if(c++,d)d.push(g);else{g.from>a&&o.push(new At(a,g.from,f));let b=g.direction==oi!=!(f%2);xa(n,b?i+1:i,r,g.inner,g.from,g.to,o),a=g.to}p=g.to}else{if(p==t||(h?de[p]!=l:de[p]==l))break;p++}d?wa(n,a,p,i+1,r,d,o):a<p&&o.push(new At(a,p,f)),a=p}else for(let a=t,c=s.length;a>e;){let h=!0,u=!1;if(!c||a>s[c-1].to){let g=de[a-1];g!=l&&(h=!1,u=g==16)}let d=!h&&l==1?[]:null,f=h?i:i+1,p=a;e:for(;;)if(c&&p==s[c-1].to){if(u)break e;let g=s[--c];if(!h)for(let b=g.from,y=c;;){if(b==e)break e;if(y&&s[y-1].to==b)b=s[--y].from;else{if(de[b-1]==l)break e;break}}if(d)d.push(g);else{g.to<a&&o.push(new At(g.to,a,f));let b=g.direction==oi!=!(f%2);xa(n,b?i+1:i,r,g.inner,g.from,g.to,o),a=g.from}p=g.from}else{if(p==e||(h?de[p-1]!=l:de[p-1]==l))break;p--}d?wa(n,p,a,i+1,r,d,o):p<a&&o.push(new At(p,a,f)),a=p}}function xa(n,e,t,i,r,s,o){let l=e%2?2:1;Ub(n,r,s,i,l),Kb(n,r,s,i,l),jb(r,s,i,l),wa(n,r,s,e,t,i,o)}function Gb(n,e,t){if(!n)return[new At(0,0,e==rc?1:0)];if(e==oi&&!t.length&&!$b.test(n))return Sf(n.length);if(t.length)for(;n.length>de.length;)de[de.length]=256;let i=[],r=e==oi?0:1;return xa(n,r,r,t,0,n.length,i),i}function Sf(n){return[new At(0,n,0)]}var Cf="";function qb(n,e,t,i,r){var s;let o=i.head-n.from,l=At.find(e,o,(s=i.bidiLevel)!==null&&s!==void 0?s:-1,i.assoc),a=e[l],c=a.side(r,t);if(o==c){let d=l+=r?1:-1;if(d<0||d>=e.length)return null;a=e[l=d],o=a.side(!r,t),c=a.side(r,t)}let h=ze(n.text,o,a.forward(r,t));(h<a.from||h>a.to)&&(h=c),Cf=n.text.slice(Math.min(o,h),Math.max(o,h));let u=l==(r?e.length-1:0)?null:e[l+(r?1:-1)];return u&&h==c&&u.level+(r?0:1)<a.level?D.cursor(u.side(!r,t)+n.from,u.forward(r,t)?1:-1,u.level):D.cursor(h+n.from,a.forward(r,t)?-1:1,a.level)}function Xb(n,e,t){for(let i=e;i<t;i++){let r=vf(n.charCodeAt(i));if(r==1)return oi;if(r==2||r==4)return rc}return oi}var Tf=$.define(),Af=$.define(),Mf=$.define(),Ef=$.define(),va=$.define(),Df=$.define(),Rf=$.define(),sc=$.define(),oc=$.define(),Lf=$.define({combine:n=>n.some(e=>e)}),Of=$.define({combine:n=>n.some(e=>e)}),Pf=$.define(),Mr=class n{constructor(e,t,i,r,s,o=!1){this.range=e,this.y=t,this.x=i,this.yMargin=r,this.xMargin=s,this.isSnapshot=o}map(e){return e.empty?this:new n(this.range.map(e),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}clip(e){return this.range.to<=e.doc.length?this:new n(D.cursor(e.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}},Us=xe.define({map:(n,e)=>n.map(e)}),If=xe.define();function It(n,e,t){let i=n.facet(Ef);i.length?i[0](e):window.onerror&&window.onerror(String(e),t,void 0,void 0,e)||(t?console.error(t+":",e):console.error(e))}var mn=$.define({combine:n=>n.length?n[0]:!0}),Yb=0,Bi=$.define({combine(n){return n.filter((e,t)=>{for(let i=0;i<t;i++)if(n[i].plugin==e.plugin)return!1;return!0})}}),Bt=class n{constructor(e,t,i,r,s){this.id=e,this.create=t,this.domEventHandlers=i,this.domEventObservers=r,this.baseExtensions=s(this),this.extension=this.baseExtensions.concat(Bi.of({plugin:this,arg:void 0}))}of(e){return this.baseExtensions.concat(Bi.of({plugin:this,arg:e}))}static define(e,t){let{eventHandlers:i,eventObservers:r,provide:s,decorations:o}=t||{};return new n(Yb++,e,i,r,l=>{let a=[];return o&&a.push(bo.of(c=>{let h=c.plugin(l);return h?o(h):me.none})),s&&a.push(s(l)),a})}static fromClass(e,t){return n.define((i,r)=>new e(i,r),t)}},Er=class{constructor(e){this.spec=e,this.mustUpdate=null,this.value=null}get plugin(){return this.spec&&this.spec.plugin}update(e){if(this.value){if(this.mustUpdate){let t=this.mustUpdate;if(this.mustUpdate=null,this.value.update)try{this.value.update(t)}catch(i){if(It(t.state,i,"CodeMirror plugin crashed"),this.value.destroy)try{this.value.destroy()}catch{}this.deactivate()}}}else if(this.spec)try{this.value=this.spec.plugin.create(e,this.spec.arg)}catch(t){It(e.state,t,"CodeMirror plugin crashed"),this.deactivate()}return this}destroy(e){var t;if(!((t=this.value)===null||t===void 0)&&t.destroy)try{this.value.destroy()}catch(i){It(e.state,i,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}},Nf=$.define(),lc=$.define(),bo=$.define(),Bf=$.define(),ac=$.define(),Hr=$.define(),_f=$.define();function Hd(n,e){let t=n.state.facet(_f);if(!t.length)return t;let i=t.map(s=>s instanceof Function?s(n):s),r=[];return he.spans(i,e.from,e.to,{point(){},span(s,o,l,a){let c=s-e.from,h=o-e.from,u=r;for(let d=l.length-1;d>=0;d--,a--){let f=l[d].spec.bidiIsolate,p;if(f==null&&(f=Xb(e.text,c,h)),a>0&&u.length&&(p=u[u.length-1]).to==c&&p.direction==f)p.to=h,u=p.inner;else{let g={from:c,to:h,direction:f,inner:[]};u.push(g),u=g.inner}}}}),r}var Hf=$.define();function Ff(n){let e=0,t=0,i=0,r=0;for(let s of n.state.facet(Hf)){let o=s(n);o&&(o.left!=null&&(e=Math.max(e,o.left)),o.right!=null&&(t=Math.max(t,o.right)),o.top!=null&&(i=Math.max(i,o.top)),o.bottom!=null&&(r=Math.max(r,o.bottom)))}return{left:e,right:t,top:i,bottom:r}}var vr=$.define(),Nt=class n{constructor(e,t,i,r){this.fromA=e,this.toA=t,this.fromB=i,this.toB=r}join(e){return new n(Math.min(this.fromA,e.fromA),Math.max(this.toA,e.toA),Math.min(this.fromB,e.fromB),Math.max(this.toB,e.toB))}addToSet(e){let t=e.length,i=this;for(;t>0;t--){let r=e[t-1];if(!(r.fromA>i.toA)){if(r.toA<i.fromA)break;i=i.join(r),e.splice(t-1,1)}}return e.splice(t,0,i),e}static extendWithRanges(e,t){if(t.length==0)return e;let i=[];for(let r=0,s=0,o=0;;){let l=r<e.length?e[r].fromB:1e9,a=s<t.length?t[s]:1e9,c=Math.min(l,a);if(c==1e9)break;let h=c+o,u=c,d=h;for(;;)if(s<t.length&&t[s]<=u){let f=t[s+1];s+=2,u=Math.max(u,f);for(let p=r;p<e.length&&e[p].fromB<=u;p++)o=e[p].toA-e[p].toB;d=Math.max(d,f+o)}else if(r<e.length&&e[r].fromB<=u){let f=e[r++];u=Math.max(u,f.toB),d=Math.max(d,f.toA),o=f.toA-f.toB}else break;i.push(new n(h,d,c,u))}return i}},ro=class n{constructor(e,t,i){this.view=e,this.state=t,this.transactions=i,this.flags=0,this.startState=e.state,this.changes=Qe.empty(this.startState.doc.length);for(let s of i)this.changes=this.changes.compose(s.changes);let r=[];this.changes.iterChangedRanges((s,o,l,a)=>r.push(new Nt(s,o,l,a))),this.changedRanges=r}static create(e,t,i){return new n(e,t,i)}get viewportChanged(){return(this.flags&4)>0}get viewportMoved(){return(this.flags&8)>0}get heightChanged(){return(this.flags&2)>0}get geometryChanged(){return this.docChanged||(this.flags&18)>0}get focusChanged(){return(this.flags&1)>0}get docChanged(){return!this.changes.empty}get selectionSet(){return this.transactions.some(e=>e.selection)}get empty(){return this.flags==0&&this.transactions.length==0}},Jb=[],Se=class{constructor(e,t,i=0){this.dom=e,this.length=t,this.flags=i,this.parent=null,e.cmTile=this}get breakAfter(){return this.flags&1}get children(){return Jb}isWidget(){return!1}get isHidden(){return!1}isComposite(){return!1}isLine(){return!1}isText(){return!1}isBlock(){return!1}get domAttrs(){return null}sync(e){if(this.flags|=2,this.flags&4){this.flags&=-5;let t=this.domAttrs;t&&Ib(this.dom,t)}}toString(){return this.constructor.name+(this.children.length?`(${this.children})`:"")+(this.breakAfter?"#":"")}destroy(){this.parent=null}setDOM(e){this.dom=e,e.cmTile=this}get posAtStart(){return this.parent?this.parent.posBefore(this):0}get posAtEnd(){return this.posAtStart+this.length}posBefore(e,t=this.posAtStart){let i=t;for(let r of this.children){if(r==e)return i;i+=r.length+r.breakAfter}throw new RangeError("Invalid child in posBefore")}posAfter(e){return this.posBefore(e)+e.length}covers(e){return!0}coordsIn(e,t,i){return null}domPosFor(e,t){let i=Pn(this.dom),r=this.length?e>0:t>0;return new tn(this.parent.dom,i+(r?1:0),e==0||e==this.length)}markDirty(e){this.flags&=-3,e&&(this.flags|=4),this.parent&&this.parent.flags&2&&this.parent.markDirty(!1)}get overrideDOMText(){return null}get root(){for(let e=this;e;e=e.parent)if(e instanceof Vi)return e;return null}static get(e){return e.cmTile}},Wi=class extends Se{constructor(e){super(e,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(e){this.children.push(e),e.parent=this}sync(e){if(this.flags&2)return;super.sync(e);let t=this.dom,i=null,r,s=e?.node==t?e:null,o=0;for(let l of this.children){if(l.sync(e),o+=l.length+l.breakAfter,r=i?i.nextSibling:t.firstChild,s&&r!=l.dom&&(s.written=!0),l.dom.parentNode==t)for(;r&&r!=l.dom;)r=Fd(r);else t.insertBefore(l.dom,r);i=l.dom}for(r=i?i.nextSibling:t.firstChild,s&&r&&(s.written=!0);r;)r=Fd(r);this.length=o}};function Fd(n){let e=n.nextSibling;return n.parentNode.removeChild(n),e}var Vi=class extends Wi{constructor(e,t){super(t),this.view=e}owns(e){for(;e;e=e.parent)if(e==this)return!0;return!1}isBlock(){return!0}nearest(e){for(;;){if(!e)return null;let t=Se.get(e);if(t&&this.owns(t))return t;e=e.parentNode}}blockTiles(e){for(let t=[],i=this,r=0,s=0;;)if(r==i.children.length){if(!t.length)return;i=i.parent,i.breakAfter&&s++,r=t.pop()}else{let o=i.children[r++];if(o instanceof gn)t.push(r),i=o,r=0;else{let l=s+o.length,a=e(o,s);if(a!==void 0)return a;s=l+o.breakAfter}}}resolveBlock(e,t){let i,r=-1,s,o=-1;if(this.blockTiles((l,a)=>{let c=a+l.length;if(e>=a&&e<=c){if(l.isWidget()&&t>=-1&&t<=1){if(l.flags&32)return!0;l.flags&16&&(i=void 0)}(a<e||e==c&&(t<-1?l.length:l.covers(1)))&&(!i||!l.isWidget()&&i.isWidget())&&(i=l,r=e-a),(c>e||e==a&&(t>1?l.length:l.covers(-1)))&&(!s||!l.isWidget()&&s.isWidget())&&(s=l,o=e-a)}}),!i&&!s)throw new Error("No tile at position "+e);return i&&t<0||!s?{tile:i,offset:r}:{tile:s,offset:o}}},gn=class n extends Wi{constructor(e,t){super(e),this.wrapper=t}isBlock(){return!0}covers(e){return this.children.length?e<0?this.children[0].covers(-1):this.lastChild.covers(1):!1}get domAttrs(){return this.wrapper.attributes}static of(e,t){let i=new n(t||document.createElement(e.tagName),e);return t||(i.flags|=4),i}},$i=class n extends Wi{constructor(e,t){super(e),this.attrs=t}isLine(){return!0}static start(e,t,i){let r=new n(t||document.createElement("div"),e);return(!t||!i)&&(r.flags|=4),r}get domAttrs(){return this.attrs}resolveInline(e,t,i){let r=null,s=-1,o=null,l=-1;function a(h,u){for(let d=0,f=0;d<h.children.length&&f<=u;d++){let p=h.children[d],g=f+p.length;g>=u&&(p.isComposite()?a(p,u-f):(!o||o.isHidden&&(t>0&&!(o.flags&32)||i&&Qb(o,p)))&&(g>u||p.flags&32&&t<=1)?(o=p,l=u-f):(f<u||p.flags&16&&!p.isHidden&&t>=-1)&&(r=p,s=u-f)),f=g}}a(this,e);let c=(t<0?r:o)||r||o;return c?{tile:c,offset:c==r?s:l}:null}coordsIn(e,t,i){let r=this.resolveInline(e,t,!0);return r?r.tile.coordsIn(Math.max(0,r.offset),t,i):Zb(this)}domIn(e,t){let i=this.resolveInline(e,t);if(i){let{tile:r,offset:s}=i;if(this.dom.contains(r.dom))return r.isText()?new tn(r.dom,Math.min(r.dom.nodeValue.length,s)):r.domPosFor(s,r.flags&16?1:r.flags&32?-1:t);let o=i.tile.parent,l=!1;for(let a of o.children){if(l)return new tn(a.dom,0);a==i.tile&&(l=!0)}}return new tn(this.dom,0)}};function Zb(n){let e=n.dom.lastChild;if(!e)return n.dom.getBoundingClientRect();let t=Tr(e);return t[t.length-1]||null}function Qb(n,e){let t=n.coordsIn(0,1),i=e.coordsIn(0,1);return t&&i&&i.top<t.bottom}var ut=class n extends Wi{constructor(e,t){super(e),this.mark=t}get domAttrs(){return this.mark.attrs}static of(e,t){let i=new n(t||document.createElement(e.tagName),e);return t||(i.flags|=4),i}},ii=class n extends Se{constructor(e,t){super(e,t.length),this.text=t}sync(e){this.flags&2||(super.sync(e),this.dom.nodeValue!=this.text&&(e&&e.node==this.dom&&(e.written=!0),this.dom.nodeValue=this.text))}isText(){return!0}toString(){return JSON.stringify(this.text)}coordsIn(e,t,i){let r=this.dom.nodeValue.length;e>r&&(e=r);let s=e,o=e,l=0;e==0&&t<0||e==r&&t>=0?O.chrome||O.gecko||(e?(s--,l=1):o<r&&(o++,l=-1)):t<0?s--:o<r&&o++;let a=_r(this.dom,s,o).getClientRects();if(!a.length)return null;let c=a[(l?l<0:t>=0)?0:a.length-1];return O.safari&&!l&&c.width==0&&(c=Array.prototype.find.call(a,h=>h.width)||c),i==null?c:Br(c,(l?l>0:t<0)==i)}static of(e,t){let i=new n(t||document.createTextNode(e),e);return t||(i.flags|=2),i}},li=class n extends Se{constructor(e,t,i,r){super(e,t,r),this.widget=i}isWidget(){return!0}get isHidden(){return this.widget.isHidden}covers(e){return this.flags&48?!1:(this.flags&(e<0?64:128))>0}coordsIn(e,t){return this.coordsInWidget(e,t,!1)}coordsInWidget(e,t,i){let r=this.widget.coordsAt(this.dom,e,t);if(r)return r;if(i)return Br(this.dom.getBoundingClientRect(),this.length?e==0:t<=0);{let s=this.dom.getClientRects(),o=null;if(!s.length)return null;let l=this.flags&16?!0:this.flags&32?!1:e>0;for(let a=l?s.length-1:0;o=s[a],!(e>0?a==0:a==s.length-1||o.top<o.bottom);a+=l?-1:1);return Br(o,!l)}}get overrideDOMText(){if(!this.length)return te.empty;let{root:e}=this;if(!e)return te.empty;let t=this.posAtStart;return e.view.state.doc.slice(t,t+this.length)}destroy(){super.destroy(),this.widget.destroy(this.dom)}static of(e,t,i,r,s){return s||(s=e.toDOM(t),e.editable||(s.contentEditable="false")),new n(s,i,e,r)}},Ui=class extends Se{constructor(e){let t=document.createElement("img");t.className="cm-widgetBuffer",t.setAttribute("aria-hidden","true"),super(t,0,e)}get isHidden(){return!0}get overrideDOMText(){return te.empty}coordsIn(e,t,i){let r=this.dom.getBoundingClientRect();return i==null?r:Br(r,t>0==i)}},ka=class{constructor(e){this.index=0,this.beforeBreak=!1,this.parents=[],this.tile=e}advance(e,t,i){let{tile:r,index:s,beforeBreak:o,parents:l}=this;for(;e||t>0;)if(r.isComposite())if(o){if(!e)break;i&&i.break(),e--,o=!1}else if(s==r.children.length){if(!e&&!l.length)break;i&&i.leave(r),o=!!r.breakAfter,{tile:r,index:s}=l.pop(),s++}else{let a=r.children[s],c=a.breakAfter;(t>0?a.length<=e:a.length<e)&&(!i||i.skip(a,0,a.length)!==!1||!a.isComposite)?(o=!!c,s++,e-=a.length):(l.push({tile:r,index:s}),r=a,s=0,i&&a.isComposite()&&i.enter(a))}else{let a=r.length;if(s<a&&e){let c=Math.min(e,a-s);i&&i.skip(r,s,s+c),e-=c,s+=c}if(s==a)o=!!r.breakAfter,{tile:r,index:s}=l.pop(),s++;else if(!e)break}return this.tile=r,this.index=s,this.beforeBreak=o,this}get root(){return this.parents.length?this.parents[0].tile:this.tile}},Sa=class{constructor(e,t,i,r){this.from=e,this.to=t,this.wrapper=i,this.rank=r}},Ca=class{constructor(e,t,i){this.cache=e,this.root=t,this.blockWrappers=i,this.curLine=null,this.lastBlock=null,this.afterWidget=null,this.pos=0,this.wrappers=[],this.wrapperPos=0}addText(e,t,i,r){var s;this.flushBuffer();let o=this.ensureMarks(t,i),l=o.lastChild;if(l&&l.isText()&&!(l.flags&8)&&l.length+e.length<512){this.cache.reused.set(l,2);let a=o.children[o.children.length-1]=new ii(l.dom,l.text+e);a.parent=o}else o.append(r||ii.of(e,(s=this.cache.find(ii))===null||s===void 0?void 0:s.dom));this.pos+=e.length,this.afterWidget=null}addComposition(e,t){let i=this.curLine;i.dom!=t.line.dom&&(i.setDOM(this.cache.reused.has(t.line)?la(t.line.dom):t.line.dom),this.cache.reused.set(t.line,2));let r=i;for(let l=t.marks.length-1;l>=0;l--){let a=t.marks[l],c=r.lastChild;if(c instanceof ut&&c.mark.eq(a.mark))c.dom!=a.dom&&c.setDOM(la(a.dom)),r=c;else{let{dom:h}=a;this.cache.reused.get(a)&&Se.get(a.dom)&&(h=la(a.dom));let u=ut.of(a.mark,h);r.append(u),r=u}this.cache.reused.set(a,2)}let s=Se.get(e.text);s&&this.cache.reused.set(s,2);let o=new ii(e.text,e.text.nodeValue);o.flags|=8,this.pos=e.range.toB,r.append(o)}addInlineWidget(e,t,i){let r=this.afterWidget&&e.flags&48&&(this.afterWidget.flags&48)==(e.flags&48);r||this.flushBuffer();let s=this.ensureMarks(t,i);!r&&!(e.flags&16)&&s.append(this.getBuffer(1)),s.append(e),this.pos+=e.length,this.afterWidget=e}addMark(e,t,i){this.flushBuffer(),this.ensureMarks(t,i).append(e),this.pos+=e.length,this.afterWidget=null}addBlockWidget(e){this.getBlockPos().append(e),this.pos+=e.length,this.lastBlock=e,this.endLine()}continueWidget(e){let t=this.afterWidget||this.lastBlock;t.length+=e,this.pos+=e}addLineStart(e,t){var i;e||(e=zf);let r=$i.start(e,t||((i=this.cache.find($i))===null||i===void 0?void 0:i.dom),!!t);this.getBlockPos().append(this.lastBlock=this.curLine=r)}addLine(e){this.getBlockPos().append(e),this.pos+=e.length,this.lastBlock=e,this.endLine()}addBreak(){this.lastBlock.flags|=1,this.endLine(),this.pos++}addLineStartIfNotCovered(e){this.blockPosCovered()||this.addLineStart(e)}ensureLine(e){this.curLine||this.addLineStart(e)}ensureMarks(e,t){var i;let r=this.curLine;for(let s=e.length-1;s>=0;s--){let o=e[s],l;if(t>0&&(l=r.lastChild)&&l instanceof ut&&l.mark.eq(o))r=l,t--;else{let a=ut.of(o,(i=this.cache.find(ut,c=>c.mark.eq(o)))===null||i===void 0?void 0:i.dom);r.append(a),r=a,t=0}}return r}endLine(){if(this.curLine){this.flushBuffer();let e=this.curLine.lastChild;(!e||!zd(this.curLine,!1)||e.dom.nodeName!="BR"&&e.isWidget()&&!(O.ios&&zd(this.curLine,!0)))&&this.curLine.append(this.cache.findWidget(aa,0,32)||new li(aa.toDOM(),0,aa,32)),this.curLine=this.afterWidget=null}}updateBlockWrappers(){this.wrapperPos>this.pos+1e4&&(this.blockWrappers.goto(this.pos),this.wrappers.length=0);for(let e=this.wrappers.length-1;e>=0;e--)this.wrappers[e].to<this.pos&&this.wrappers.splice(e,1);for(let e=this.blockWrappers;e.value&&e.from<=this.pos;e.next())if(e.to>=this.pos){let t=e.rank*102+e.value.rank,i=new Sa(e.from,e.to,e.value,t),r=this.wrappers.length;for(;r>0&&(this.wrappers[r-1].rank-i.rank||this.wrappers[r-1].to-i.to)<0;)r--;this.wrappers.splice(r,0,i)}this.wrapperPos=this.pos}getBlockPos(){var e;this.updateBlockWrappers();let t=this.root;for(let i of this.wrappers){let r=t.lastChild;if(i.from<this.pos&&r instanceof gn&&r.wrapper.eq(i.wrapper))t=r;else{let s=gn.of(i.wrapper,(e=this.cache.find(gn,o=>o.wrapper.eq(i.wrapper)))===null||e===void 0?void 0:e.dom);t.append(s),t=s}}return t}blockPosCovered(){let e=this.lastBlock;return e!=null&&!e.breakAfter&&(!e.isWidget()||(e.flags&160)>0)}getBuffer(e){let t=2|(e<0?16:32),i=this.cache.find(Ui,void 0,1);return i&&(i.flags=t),i||new Ui(t)}flushBuffer(){this.afterWidget&&!(this.afterWidget.flags&32)&&(this.afterWidget.parent.append(this.getBuffer(-1)),this.afterWidget=null)}},Ta=class{constructor(e){this.skipCount=0,this.text="",this.textOff=0,this.cursor=e.iter()}skip(e){this.textOff+e<=this.text.length?this.textOff+=e:(this.skipCount+=e-(this.text.length-this.textOff),this.text="",this.textOff=0)}next(e){if(this.textOff==this.text.length){let{value:r,lineBreak:s,done:o}=this.cursor.next(this.skipCount);if(this.skipCount=0,o)throw new Error("Ran out of text content when drawing inline views");this.text=r;let l=this.textOff=Math.min(e,r.length);return s?null:r.slice(0,l)}let t=Math.min(this.text.length,this.textOff+e),i=this.text.slice(this.textOff,t);return this.textOff=t,i}},so=[li,$i,ii,ut,Ui,gn,Vi];for(let n=0;n<so.length;n++)so[n].bucket=n;var Aa=class{constructor(e){this.view=e,this.buckets=so.map(()=>[]),this.index=so.map(()=>0),this.reused=new Map}add(e){let t=e.constructor.bucket,i=this.buckets[t];i.length<6?i.push(e):i[this.index[t]=(this.index[t]+1)%6]=e}find(e,t,i=2){let r=e.bucket,s=this.buckets[r],o=this.index[r];for(let l=0;l<s.length;l++){let a=(l+o)%s.length,c=s[a];if((!t||t(c))&&!this.reused.has(c))return s.splice(a,1),a<o&&this.index[r]--,this.reused.set(c,i),c}return null}findWidget(e,t,i){let r=this.buckets[0];if(r.length)for(let s=0,o=0;;s++){if(s==r.length){if(o)return null;o=1,s=0}let l=r[s];if(!this.reused.has(l)&&(o==0?l.widget.compare(e):l.widget.constructor==e.constructor&&e.updateDOM(l.dom,this.view,l.widget)))return r.splice(s,1),s<this.index[0]&&this.index[0]--,l.widget==e&&l.length==t&&(l.flags&497)==i?(this.reused.set(l,1),l):(this.reused.set(l,2),new li(l.dom,t,e,l.flags&-498|i))}}reuse(e){return this.reused.set(e,1),e}maybeReuse(e,t=2){if(!this.reused.has(e))return this.reused.set(e,t),e.dom}clear(){for(let e=0;e<this.buckets.length;e++)this.buckets[e].length=this.index[e]=0}},Ma=class{constructor(e,t,i,r,s){this.view=e,this.decorations=r,this.disallowBlockEffectsFor=s,this.openWidget=!1,this.openMarks=0,this.cache=new Aa(e),this.text=new Ta(e.state.doc),this.builder=new Ca(this.cache,new Vi(e,e.contentDOM),he.iter(i)),this.cache.reused.set(t,2),this.old=new ka(t),this.reuseWalker={skip:(o,l,a)=>{if(this.cache.add(o),o.isComposite())return!1},enter:o=>this.cache.add(o),leave:()=>{},break:()=>{}}}run(e,t){let i=t&&this.getCompositionContext(t.text);for(let r=0,s=0,o=0;;){let l=o<e.length?e[o++]:null,a=l?l.fromA:this.old.root.length;if(a>r){let c=a-r;this.preserve(c,!o,!l),r=a,s+=c}if(!l)break;t&&l.fromA<=t.range.fromA&&l.toA>=t.range.toA?(this.forward(l.fromA,t.range.fromA,t.range.fromA<t.range.toA?1:-1),this.emit(s,t.range.fromB),this.builder.flushBuffer(),this.cache.clear(),this.builder.addComposition(t,i),this.text.skip(t.range.toB-t.range.fromB),this.forward(t.range.fromA,l.toA),this.emit(t.range.toB,l.toB)):(this.forward(l.fromA,l.toA),this.emit(s,l.toB)),s=l.toB,r=l.toA}return this.builder.curLine&&this.builder.endLine(),this.builder.root}preserve(e,t,i){let r=ny(this.old),s=this.openMarks;this.old.advance(e,i?1:-1,{skip:(o,l,a)=>{if(o.isWidget())if(this.openWidget)this.builder.continueWidget(a-l);else{let c=a>0||l<o.length?li.of(o.widget,this.view,a-l,o.flags&496,this.cache.maybeReuse(o)):this.cache.reuse(o);c.flags&256?(c.flags&=-2,this.builder.addBlockWidget(c)):(this.builder.ensureLine(null),this.builder.addInlineWidget(c,r,s),s=r.length)}else if(o.isText())this.builder.ensureLine(null),!l&&a==o.length&&!this.cache.reused.has(o)?this.builder.addText(o.text,r,s,this.cache.reuse(o)):(this.cache.add(o),this.builder.addText(o.text.slice(l,a),r,s)),s=r.length;else if(o.isLine())o.flags&=-2,this.cache.reused.set(o,1),this.builder.addLine(o);else if(o instanceof Ui)this.cache.add(o);else if(o instanceof ut)this.builder.ensureLine(null),this.builder.addMark(o,r,s),this.cache.reused.set(o,1),s=r.length;else return!1;this.openWidget=!1},enter:o=>{o.isLine()?this.builder.addLineStart(o.attrs,this.cache.maybeReuse(o)):(this.cache.add(o),o instanceof ut&&r.unshift(o.mark)),this.openWidget=!1},leave:o=>{o.isLine()?r.length&&(r.length=s=0):o instanceof ut&&(r.shift(),s=Math.min(s,r.length))},break:()=>{this.builder.addBreak(),this.openWidget=!1}}),this.text.skip(e)}emit(e,t){let i=null,r=this.builder,s=-1,o=he.spans(this.decorations,e,t,{point:(l,a,c,h,u,d)=>{if(c instanceof si){if(this.disallowBlockEffectsFor[d]){if(c.block)throw new RangeError("Block decorations may not be specified via plugins");if(a>this.view.state.doc.lineAt(l).to)throw new RangeError("Decorations that replace line breaks may not be specified via plugins")}if(s=h.length,u>h.length)r.continueWidget(a-l);else{let f=c.widget||(c.block?In.block:In.inline),p=ey(c),g=this.cache.findWidget(f,a-l,p)||li.of(f,this.view,a-l,p);c.block?(c.startSide>0&&r.addLineStartIfNotCovered(i),r.addBlockWidget(g)):(r.ensureLine(i),r.addInlineWidget(g,h,u))}i=null}else i=ty(i,c);a>l&&this.text.skip(a-l)},span:(l,a,c,h)=>{for(let u=l;u<a;){let d=this.text.next(Math.min(512,a-u));d==null?(r.addLineStartIfNotCovered(i),r.addBreak(),u++):(r.ensureLine(i),r.addText(d,c,u==l?h:c.length),u+=d.length),i=null}s=c.length}});s>-1&&(this.openWidget=o>s),this.openWidget||r.addLineStartIfNotCovered(i),this.openMarks=o}forward(e,t,i=1){t-e<=10?this.old.advance(t-e,i,this.reuseWalker):(this.old.advance(5,-1,this.reuseWalker),this.old.advance(t-e-10,-1),this.old.advance(5,i,this.reuseWalker))}getCompositionContext(e){let t=[],i=null;for(let r=e.parentNode;;r=r.parentNode){let s=Se.get(r);if(r==this.view.contentDOM)break;s instanceof ut?t.push(s):s?.isLine()?i=s:s instanceof gn||(r.nodeName=="DIV"&&!i?i=new $i(r,zf):i||t.push(ut.of(new Pr({tagName:r.nodeName.toLowerCase(),attributes:Nb(r)}),r)))}return i?{line:i,marks:t}:null}};function zd(n,e){let t=i=>{for(let r of i.children)if((e?r.isText():r.length)||t(r))return!0;return!1};return t(n)}function ey(n){let e=n.isReplace?(n.startSide<0?64:0)|(n.endSide>0?128:0):n.startSide>0?32:16;return n.block&&(e|=256),e}var zf={class:"cm-line"};function ty(n,e){let t=e.spec.attributes,i=e.spec.class;return!t&&!i||(n||(n={class:"cm-line"}),t&&nc(t,n),i&&(n.class+=" "+i)),n}function ny(n){let e=[];for(let t=n.parents.length;t>1;t--){let i=t==n.parents.length?n.tile:n.parents[t].tile;i instanceof ut&&e.push(i.mark)}return e}function la(n){let e=Se.get(n);return e&&e.setDOM(n.cloneNode()),n}var In=class extends On{constructor(e){super(),this.tag=e}eq(e){return e.tag==this.tag}toDOM(){return document.createElement(this.tag)}updateDOM(e){return e.nodeName.toLowerCase()==this.tag}get isHidden(){return!0}};In.inline=new In("span");In.block=new In("div");var aa=new class extends On{toDOM(){return document.createElement("br")}get isHidden(){return!0}get editable(){return!0}},oo=class{constructor(e){this.view=e,this.decorations=[],this.blockWrappers=[],this.dynamicDecorationMap=[!1],this.domChanged=null,this.hasComposition=null,this.editContextFormatting=me.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 Vi(e,e.contentDOM),this.updateInner([new Nt(0,0,0,e.state.doc.length)],null)}update(e){var t;let i=e.changedRanges;this.minWidth>0&&i.length&&(i.every(({fromA:h,toA:u})=>u<this.minWidthFrom||h>this.minWidthTo)?(this.minWidthFrom=e.changes.mapPos(this.minWidthFrom,1),this.minWidthTo=e.changes.mapPos(this.minWidthTo,1)):this.minWidth=this.minWidthFrom=this.minWidthTo=0),this.updateEditContextFormatting(e);let r=-1;this.view.inputState.composing>=0&&!this.view.observer.editContext&&(!((t=this.domChanged)===null||t===void 0)&&t.newSel?r=this.domChanged.newSel.head:!hy(e.changes,this.hasComposition)&&!e.selectionSet&&(r=e.state.selection.main.head));let s=r>-1?ry(this.view,e.changes,r):null;if(this.domChanged=null,this.hasComposition){let{from:h,to:u}=this.hasComposition;i=new Nt(h,u,e.changes.mapPos(h,-1),e.changes.mapPos(u,1)).addToSet(i.slice())}this.hasComposition=s?{from:s.range.fromB,to:s.range.toB}:null,(O.ie||O.chrome)&&!s&&e&&e.state.doc.lines!=e.startState.doc.lines&&(this.forceSelection=!0);let o=this.decorations,l=this.blockWrappers;this.updateDeco();let a=ly(o,this.decorations,e.changes);a.length&&(i=Nt.extendWithRanges(i,a));let c=ay(l,this.blockWrappers,e.changes);return c.length&&(i=Nt.extendWithRanges(i,c)),s&&!i.some(h=>h.fromA<=s.range.fromA&&h.toA>=s.range.toA)&&(i=s.range.addToSet(i.slice())),this.tile.flags&2&&i.length==0?!1:(this.updateInner(i,s),e.transactions.length&&(this.lastUpdate=Date.now()),!0)}updateInner(e,t){this.view.viewState.mustMeasureContent=!0;let{observer:i}=this.view;i.ignore(()=>{if(t||e.length){let o=this.tile,l=new Ma(this.view,o,this.blockWrappers,this.decorations,this.dynamicDecorationMap);t&&Se.get(t.text)&&l.cache.reused.set(Se.get(t.text),2),this.tile=l.run(e,t),Ea(o,l.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 s=O.chrome||O.ios?{node:i.selectionRange.focusNode,written:!1}:void 0;this.tile.sync(s),s&&(s.written||i.selectionRange.focusNode!=s.node||!this.tile.dom.contains(s.node))&&(this.forceSelection=!0),this.tile.dom.style.height=""});let r=[];if(this.view.viewport.from||this.view.viewport.to<this.view.state.doc.length)for(let s of this.tile.children)s.isWidget()&&s.widget instanceof Dr&&r.push(s.dom);i.updateGaps(r)}updateEditContextFormatting(e){this.editContextFormatting=this.editContextFormatting.map(e.changes);for(let t of e.transactions)for(let i of t.effects)i.is(If)&&(this.editContextFormatting=i.value)}updateSelection(e=!1,t=!1){(e||!this.view.observer.selectionRange.focusNode)&&this.view.observer.readSelectionRange();let{dom:i}=this.tile,r=this.view.root.activeElement,s=r==i,o=!s&&!(this.view.state.facet(mn)||i.tabIndex>-1)&&Cr(i,this.view.observer.selectionRange)&&!(r&&i.contains(r));if(!(s||t||o))return;let l=this.forceSelection;this.forceSelection=!1;let a=this.view.state.selection.main,c,h;if(a.empty?h=c=this.inlineDOMNearPos(a.anchor,a.assoc||1):(h=this.inlineDOMNearPos(a.head,a.head==a.from?1:-1),c=this.inlineDOMNearPos(a.anchor,a.anchor==a.from?1:-1)),O.gecko&&a.empty&&!this.hasComposition&&iy(c)){let d=document.createTextNode("");this.view.observer.ignore(()=>c.node.insertBefore(d,c.node.childNodes[c.offset]||null)),c=h=new tn(d,0),l=!0}let u=this.view.observer.selectionRange;(l||!u.focusNode||(!Ar(c.node,c.offset,u.anchorNode,u.anchorOffset)||!Ar(h.node,h.offset,u.focusNode,u.focusOffset))&&!this.suppressWidgetCursorChange(u,a))&&(this.view.observer.ignore(()=>{O.android&&O.chrome&&i.contains(u.focusNode)&&cy(u.focusNode,i)&&(i.blur(),i.focus({preventScroll:!0}));let d=Nr(this.view.root);if(d)if(a.empty){if(O.gecko){let f=sy(c.node,c.offset);if(f&&f!=3){let p=(f==1?yf:wf)(c.node,c.offset);p&&(c=new tn(p.node,p.offset))}}d.collapse(c.node,c.offset),a.bidiLevel!=null&&d.caretBidiLevel!==void 0&&(d.caretBidiLevel=a.bidiLevel)}else if(d.extend){d.collapse(c.node,c.offset);try{d.extend(h.node,h.offset)}catch{}}else{let f=document.createRange();a.anchor>a.head&&([c,h]=[h,c]),f.setEnd(h.node,h.offset),f.setStart(c.node,c.offset),d.removeAllRanges(),d.addRange(f)}o&&this.view.root.activeElement==i&&(i.blur(),r&&r.focus())}),this.view.observer.setSelectionRange(c,h)),this.impreciseAnchor=c.precise?null:new tn(u.anchorNode,u.anchorOffset),this.impreciseHead=h.precise?null:new tn(u.focusNode,u.focusOffset)}suppressWidgetCursorChange(e,t){return this.hasComposition&&t.empty&&Ar(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset)&&this.posFromDOM(e.focusNode,e.focusOffset)==t.head}enforceCursorAssoc(){if(this.hasComposition)return;let{view:e}=this,t=e.state.selection.main,i=Nr(e.root),{anchorNode:r,anchorOffset:s}=e.observer.selectionRange;if(!i||!t.empty||!t.assoc||!i.modify)return;let o=this.lineAt(t.head,t.assoc);if(!o)return;let l=o.posAtStart;if(t.head==l||t.head==l+o.length)return;let a=this.coordsAt(t.head,-1),c=this.coordsAt(t.head,1);if(!a||!c||a.bottom>c.top)return;let h=this.domAtPos(t.head+t.assoc,t.assoc);i.collapse(h.node,h.offset),i.modify("move",t.assoc<0?"forward":"backward","lineboundary"),e.observer.readSelectionRange();let u=e.observer.selectionRange;e.docView.posFromDOM(u.anchorNode,u.anchorOffset)!=t.from&&i.collapse(r,s)}posFromDOM(e,t){let i=this.tile.nearest(e);if(!i)return this.tile.dom.compareDocumentPosition(e)&2?0:this.view.state.doc.length;let r=i.posAtStart;if(i.isComposite()){let s;if(e==i.dom)s=i.dom.childNodes[t];else{let o=bn(e)==0?0:t==0?-1:1;for(;;){let l=e.parentNode;if(l==i.dom)break;o==0&&l.firstChild!=l.lastChild&&(e==l.firstChild?o=-1:o=1),e=l}o<0?s=e:s=e.nextSibling}if(s==i.dom.firstChild)return r;for(;s&&!Se.get(s);)s=s.nextSibling;if(!s)return r+i.length;for(let o=0,l=r;;o++){let a=i.children[o];if(a.dom==s)return l;l+=a.length+a.breakAfter}}else return i.isText()?e==i.dom?r+t:r+(t?i.length:0):r}domAtPos(e,t){let{tile:i,offset:r}=this.tile.resolveBlock(e,t);return i.isWidget()?i.domPosFor(r,t):i.domIn(r,t)}inlineDOMNearPos(e,t){let i,r=-1,s=!1,o,l=-1,a=!1;return this.tile.blockTiles((c,h)=>{if(c.isWidget()){if(c.flags&32&&h>=e)return!0;c.flags&16&&(s=!0)}else{let u=h+c.length;if(h<=e&&(i=c,r=e-h,s=u<e),u>=e&&!o&&(o=c,l=e-h,a=h>e),h>e&&o)return!0}}),!i&&!o?this.domAtPos(e,t):(s&&o?i=null:a&&i&&(o=null),i&&t<0||!o?i.domIn(r,t):o.domIn(l,t))}coordsAt(e,t,i){let{tile:r,offset:s}=this.tile.resolveBlock(e,t);return r.isWidget()?r.widget instanceof Dr?null:r.coordsInWidget(s,t,!0):r.coordsIn(s,t,i)}lineAt(e,t){let{tile:i}=this.tile.resolveBlock(e,t);return i.isLine()?i:null}coordsForChar(e){let{tile:t,offset:i}=this.tile.resolveBlock(e,1);if(!t.isLine())return null;function r(s,o){if(s.isComposite())for(let l of s.children){if(l.length>=o){let a=r(l,o);if(a)return a}if(o-=l.length,o<0)break}else if(s.isText()&&o<s.length){let l=ze(s.text,o);if(l==o)return null;let a=_r(s.dom,o,l).getClientRects();for(let c=0;c<a.length;c++){let h=a[c];if(c==a.length-1||h.top<h.bottom&&h.left<h.right)return h}}return null}return r(t,i)}measureVisibleLineHeights(e){let t=[],{from:i,to:r}=e,s=this.view.contentDOM.clientWidth,o=s>Math.max(this.view.scrollDOM.clientWidth,this.minWidth)+1,l=-1,a=this.view.textDirection==ge.LTR,c=0,h=(u,d,f)=>{for(let p=0;p<u.children.length&&!(d>r);p++){let g=u.children[p],b=d+g.length,y=g.dom.getBoundingClientRect(),{height:x}=y;if(f&&!p&&(c+=y.top-f.top),g instanceof gn)b>i&&h(g,d,y);else if(d>=i&&(c>0&&t.push(-c),t.push(x+c),c=0,o)){let C=g.dom.lastChild,H=C?Tr(C):[];if(H.length){let S=H[H.length-1],A=a?S.right-y.left:y.right-S.left;A>l&&(l=A,this.minWidth=s,this.minWidthFrom=d,this.minWidthTo=b)}}f&&p==u.children.length-1&&(c+=f.bottom-y.bottom),d=b+g.breakAfter}};return h(this.tile,0,null),t}textDirectionAt(e){let{tile:t}=this.tile.resolveBlock(e,1);return getComputedStyle(t.dom).direction=="rtl"?ge.RTL:ge.LTR}measureTextSize(){let e=this.tile.blockTiles(o=>{if(o.isLine()&&o.children.length&&o.length<=20){let l=0,a;for(let c of o.children){if(!c.isText()||/[^ -~]/.test(c.text))return;let h=Tr(c.dom);if(h.length!=1)return;l+=h[0].width,a=h[0].height}if(l)return{lineHeight:o.dom.getBoundingClientRect().height,charWidth:l/o.length,textHeight:a}}});if(e)return e;let t=document.createElement("div"),i,r,s;return t.className="cm-line",t.style.width="99999px",t.style.position="absolute",t.textContent="abc def ghi jkl mno pqr stu",this.view.observer.ignore(()=>{this.tile.dom.appendChild(t);let o=Tr(t.firstChild)[0];i=t.getBoundingClientRect().height,r=o&&o.width?o.width/27:7,s=o&&o.height?o.height:i,t.remove()}),{lineHeight:i,charWidth:r,textHeight:s}}computeBlockGapDeco(){let e=[],t=this.view.viewState;for(let i=0,r=0;;r++){let s=r==t.viewports.length?null:t.viewports[r],o=s?s.from-1:this.view.state.doc.length;if(o>i){let l=(t.lineBlockAt(o).bottom-t.lineBlockAt(i).top)/this.view.scaleY;e.push(me.replace({widget:new Dr(l),block:!0,inclusive:!0,isBlockGap:!0}).range(i,o))}if(!s)break;i=s.to+1}return me.set(e)}updateDeco(){let e=1,t=this.view.state.facet(bo).map(s=>(this.dynamicDecorationMap[e++]=typeof s=="function")?s(this.view):s),i=!1,r=this.view.state.facet(ac).map((s,o)=>{let l=typeof s=="function";return l&&(i=!0),l?s(this.view):s});for(r.length&&(this.dynamicDecorationMap[e++]=i,t.push(he.join(r))),this.decorations=[this.editContextFormatting,...t,this.computeBlockGapDeco(),this.view.viewState.lineGapDeco];e<this.decorations.length;)this.dynamicDecorationMap[e++]=!1;this.blockWrappers=this.view.state.facet(Bf).map(s=>typeof s=="function"?s(this.view):s)}scrollIntoView(e){if(e.isSnapshot){let c=this.view.viewState.lineBlockAt(e.range.head);this.view.scrollDOM.scrollTop=c.top-e.yMargin,this.view.scrollDOM.scrollLeft=e.xMargin;return}for(let c of this.view.state.facet(Pf))try{if(c(this.view,e.range,e))return!0}catch(h){It(this.view.state,h,"scroll handler")}let{range:t}=e,i=this.coordsAt(t.head,t.assoc||(t.head>t.anchor?-1:1)),r;if(!i)return;!t.empty&&(r=this.coordsAt(t.anchor,t.anchor>t.head?-1:1))&&(i={left:Math.min(i.left,r.left),top:Math.min(i.top,r.top),right:Math.max(i.right,r.right),bottom:Math.max(i.bottom,r.bottom)});let s=Ff(this.view),o={left:i.left-s.left,top:i.top-s.top,right:i.right+s.right,bottom:i.bottom+s.bottom},{offsetWidth:l,offsetHeight:a}=this.view.scrollDOM;if(Hb(this.view.scrollDOM,o,t.head<t.anchor?-1:1,e.x,e.y,Math.max(Math.min(e.xMargin,l),-l),Math.max(Math.min(e.yMargin,a),-a),this.view.textDirection==ge.LTR),window.visualViewport&&window.innerHeight-window.visualViewport.height>1&&(i.top>window.visualViewport.offsetTop+window.visualViewport.height||i.bottom<window.visualViewport.offsetTop)){let c=this.view.docView.lineAt(t.head,1);if(c){let h=pf(c.dom);c.dom.scrollIntoView({block:"nearest"}),mf(h,!1)}}}lineHasWidget(e){let t=i=>i.isWidget()||i.children.some(t);return t(this.tile.resolveBlock(e,1).tile)}destroy(){Ea(this.tile)}};function Ea(n,e){let t=e?.get(n);if(t!=1){t==null&&n.destroy();for(let i of n.children)Ea(i,e)}}function iy(n){return n.node.nodeType==1&&n.node.firstChild&&(n.offset==0||n.node.childNodes[n.offset-1].contentEditable=="false")&&(n.offset==n.node.childNodes.length||n.node.childNodes[n.offset].contentEditable=="false")}function Wf(n,e){let t=n.observer.selectionRange;if(!t.focusNode)return null;let i=yf(t.focusNode,t.focusOffset),r=wf(t.focusNode,t.focusOffset),s=i||r;if(r&&i&&r.node!=i.node){let l=Se.get(r.node);if(!l||l.isText()&&l.text!=r.node.nodeValue)s=r;else if(n.docView.lastCompositionAfterCursor){let a=Se.get(i.node);!a||a.isText()&&a.text!=i.node.nodeValue||(s=r)}}if(n.docView.lastCompositionAfterCursor=s!=i,!s)return null;let o=e-s.offset;return{from:o,to:o+s.node.nodeValue.length,node:s.node}}function ry(n,e,t){let i=Wf(n,t);if(!i)return null;let{node:r,from:s,to:o}=i,l=r.nodeValue;if(/[\n\r]/.test(l)||n.state.doc.sliceString(i.from,i.to)!=l)return null;let a=e.invertedDesc;return{range:new Nt(a.mapPos(s),a.mapPos(o),s,o),text:r}}function sy(n,e){return n.nodeType!=1?0:(e&&n.childNodes[e-1].contentEditable=="false"?1:0)|(e<n.childNodes.length&&n.childNodes[e].contentEditable=="false"?2:0)}var oy=class{constructor(){this.changes=[]}compareRange(e,t){Fi(e,t,this.changes)}comparePoint(e,t){Fi(e,t,this.changes)}boundChange(e){Fi(e,e,this.changes)}};function ly(n,e,t){let i=new oy;return he.compare(n,e,t,i),i.changes}var Da=class{constructor(){this.changes=[]}compareRange(e,t){Fi(e,t,this.changes)}comparePoint(){}boundChange(e){Fi(e,e,this.changes)}};function ay(n,e,t){let i=new Da;return he.compare(n,e,t,i),i.changes}function cy(n,e){for(let t=n;t&&t!=e;t=t.assignedSlot||t.parentNode)if(t.nodeType==1&&t.contentEditable=="false")return!0;return!1}function hy(n,e){let t=!1;return e&&n.iterChangedRanges((i,r)=>{i<e.to&&r>e.from&&(t=!0)}),t}var Dr=class extends On{constructor(e){super(),this.height=e}toDOM(){let e=document.createElement("div");return e.className="cm-gap",this.updateDOM(e),e}eq(e){return e.height==this.height}updateDOM(e){return e.style.height=this.height+"px",!0}get editable(){return!0}get estimatedHeight(){return this.height}ignoreEvent(){return!1}};function uy(n,e,t=1){let i=n.charCategorizer(e),r=n.doc.lineAt(e),s=e-r.from;if(r.length==0)return D.cursor(e);s==0?t=1:s==r.length&&(t=-1);let o=s,l=s;t<0?o=ze(r.text,s,!1):l=ze(r.text,s);let a=i(r.text.slice(o,l));for(;o>0;){let c=ze(r.text,o,!1);if(i(r.text.slice(c,o))!=a)break;o=c}for(;l<r.length;){let c=ze(r.text,l);if(i(r.text.slice(l,c))!=a)break;l=c}return D.undirectionalRange(o+r.from,l+r.from)}function dy(n,e,t,i,r){let s=Math.round((i-e.left)*n.defaultCharacterWidth);if(n.lineWrapping&&t.height>n.defaultLineHeight*1.5){let l=n.viewState.heightOracle.textHeight,a=Math.floor((r-t.top-(n.defaultLineHeight-l)*.5)/l);s+=a*n.viewState.heightOracle.lineLength}let o=n.state.sliceDoc(t.from,t.to);return t.from+Md(o,s,n.state.tabSize)}function Ra(n,e,t){let i=n.lineBlockAt(e);if(Array.isArray(i.type)){let r;for(let s of i.type){if(s.from>e)break;if(!(s.to<e)){if(s.from<e&&s.to>e)return s;(!r||s.type==Ve.Text&&(r.type!=s.type||(t<0?s.from<e:s.to>e)))&&(r=s)}}return r||i}return i}function fy(n,e,t,i){let r=Ra(n,e.head,e.assoc||-1),s=!i||r.type!=Ve.Text||!(n.lineWrapping||r.widgetLineBreaks)?null:n.coordsAtPos(e.assoc<0&&e.head>r.from?e.head-1:e.head);if(s){let l=n.dom.getBoundingClientRect(),a=n.textDirectionAt(r.from),c=n.posAtCoords({x:t==(a==ge.LTR)?l.right-1:l.left+1,y:(s.top+s.bottom)/2});if(c!=null)return D.cursor(c,t?-1:1)}let o=n.state.doc.lineAt(e.head);return(t?o.to==r.to:o.from==r.from)?n.visualLineSide(o,t):D.cursor(t?r.to:r.from,t?-1:1)}function Wd(n,e,t,i){let r=n.state.doc.lineAt(e.head),s=n.bidiSpans(r),o=n.textDirectionAt(r.from);for(let l=e,a=null;;){let c=qb(r,s,o,l,t),h=Cf;if(!c){if(r.number==(t?n.state.doc.lines:1))return l;h=`
587
- `,r=n.state.doc.line(r.number+(t?1:-1)),s=n.bidiSpans(r),c=n.visualLineSide(r,!t)}if(a){if(!a(h))return l}else{if(!i)return c;a=i(h)}l=c}}function py(n,e,t){let i=n.state.charCategorizer(e),r=i(t);return s=>{let o=i(s);return r==Ot.Space&&(r=o),r==o}}function my(n,e,t,i){let r=e.head,s=t?1:-1;if(r==(t?n.state.doc.length:0))return D.cursor(r,e.assoc);let o=e.goalColumn,l,a=n.contentDOM.getBoundingClientRect(),c=n.coordsAtPos(r,e.assoc||((e.empty?t:e.head==e.from)?1:-1)),h=n.documentTop;if(c)o==null&&(o=c.left-a.left),l=s<0?c.top:c.bottom;else{let p=n.viewState.lineBlockAt(r);o==null&&(o=Math.min(a.right-a.left,n.defaultCharacterWidth*(r-p.from))),l=(s<0?p.top:p.bottom)+h}let u=a.left+o,d=n.viewState.heightOracle.textHeight>>1,f=i??d;for(let p=0;;p+=d){let g=l+(f+p)*s,b=La(n,{x:u,y:g},!1,s);if(t?g>a.bottom:g<a.top)return D.cursor(b.pos,b.assoc);let y=n.coordsAtPos(b.pos,b.assoc),x=y?(y.top+y.bottom)/2:0;if(!y||(t?x>l:x<l))return D.cursor(b.pos,b.assoc,void 0,o)}}function Rr(n,e,t){for(;;){let i=0;for(let r of n)r.between(e-1,e+1,(s,o,l)=>{if(e>s&&e<o){let a=i||t||(e-s<o-e?-1:1);e=a<0?s:o,i=a}});if(!i)return e}}function Vf(n,e){let t=null;for(let i=0;i<e.ranges.length;i++){let r=e.ranges[i],s=null;if(r.empty){let o=Rr(n,r.from,0);o!=r.from&&(s=D.cursor(o,-1))}else{let o=Rr(n,r.from,-1),l=Rr(n,r.to,1);(o!=r.from||l!=r.to)&&(r.undirectional?s=D.undirectionalRange(r.from,r.to):s=D.range(r.from==r.anchor?o:l,r.from==r.head?o:l))}s&&(t||(t=e.ranges.slice()),t[i]=s)}return t?D.create(t,e.mainIndex):e}function ca(n,e,t){let i=Rr(n.state.facet(Hr).map(r=>r(n)),t.from,e.head>t.from?-1:1);return i==t.from?t:D.cursor(i,i<t.from?1:-1)}var Tt=class{constructor(e,t){this.pos=e,this.assoc=t}};function La(n,e,t,i){let r=n.contentDOM.getBoundingClientRect(),s=r.top+n.viewState.paddingTop,{x:o,y:l}=e,a=l-s,c;for(;;){if(a<0)return new Tt(0,1);if(a>n.viewState.docHeight)return new Tt(n.state.doc.length,-1);if(c=n.elementAtHeight(a),i==null)break;if(c.type==Ve.Text){if(i<0?c.to<n.viewport.from:c.from>n.viewport.to)break;let d=n.docView.coordsAt(i<0?c.from:c.to,i>0?-1:1);if(d&&(i<0?d.top<=a+s:d.bottom>=a+s))break}let u=n.viewState.heightOracle.textHeight/2;a=i>0?c.bottom+u:c.top-u}if(n.viewport.from>=c.to||n.viewport.to<=c.from){if(t)return null;if(c.type==Ve.Text){let u=dy(n,r,c,o,l);return new Tt(u,u==c.from?1:-1)}}if(c.type!=Ve.Text)return a<(c.top+c.bottom)/2?new Tt(c.from,1):new Tt(c.to,-1);let h=n.docView.lineAt(c.from,2);return(!h||h.length!=c.length)&&(h=n.docView.lineAt(c.from,-2)),new Oa(n,o,l,n.textDirectionAt(c.from)).scanTile(h,c.from)}var Oa=class{constructor(e,t,i,r){this.view=e,this.x=t,this.y=i,this.baseDir=r,this.line=null,this.spans=null}bidiSpansAt(e){return(!this.line||this.line.from>e||this.line.to<e)&&(this.line=this.view.state.doc.lineAt(e),this.spans=this.view.bidiSpans(this.line)),this}baseDirAt(e,t){let{line:i,spans:r}=this.bidiSpansAt(e);return r[At.find(r,e-i.from,-1,t)].level==this.baseDir}dirAt(e,t){let{line:i,spans:r}=this.bidiSpansAt(e);return r[At.find(r,e-i.from,-1,t)].dir}bidiIn(e,t){let{spans:i,line:r}=this.bidiSpansAt(e);return i.length>1||i.length&&(i[0].level!=this.baseDir||i[0].to+r.from<t)}scan(e,t,i=!1){let r=0,s=e.length-1,o=new Set,l=this.bidiIn(e[0],e[s]),a,c,h=-1,u=1e9,d;e:for(;r<s;){let p=s-r,g=r+s>>1;t:if(o.has(g)){for(let x=1;x<p;x++){let C=g+x;if(C>=s&&(C-=p),!o.has(C)){g=C;break t}}break e}o.add(g);let b=t(g),y=0;if(b)for(let x=0;x<b.length;x++){let C=b[x];if(!(C.width==0&&b.length>1))if(C.bottom<this.y)(!a||a.bottom<C.bottom)&&(a=C),y=1;else if(C.top>this.y)(!c||c.top>C.top)&&(c=C),y=-1;else{let H=C.left>this.x?this.x-C.left:C.right<this.x?this.x-C.right:0,S=Math.abs(H);S<u&&(h=g,u=S,d=C),H&&(y=H<0==(this.baseDir==ge.LTR)?-1:1)}}y==-1&&(!l||this.baseDirAt(e[g],1))?s=g:y==1&&(!l||this.baseDirAt(e[g+1],-1))&&(r=g+1)}if(!d){if(!c&&!a)return{i:0,after:!1};let p=a&&(!c||this.y-a.bottom<c.top-this.y)?a:c;return this.y=(p.top+p.bottom)/2,this.scan(e,t,!0)}if(u&&!i){let{top:p,bottom:g}=d;if(a&&a.bottom>(p+p+g)/3)return this.y=a.bottom-1,this.scan(e,t,!0);if(c&&c.top<(p+g+g)/3)return this.y=c.top+1,this.scan(e,t,!0)}let f=(l?this.dirAt(e[h],1):this.baseDir)==ge.LTR;return{i:h,after:this.x>(d.left+d.right)/2==f}}scanText(e,t){let i=[];for(let s=0;s<e.length;s=ze(e.text,s))i.push(t+s);i.push(t+e.length);let r=this.scan(i,s=>{let o=i[s]-t,l=i[s+1]-t;return _r(e.dom,o,l).getClientRects()});return r.after?new Tt(i[r.i+1],-1):new Tt(i[r.i],1)}scanTile(e,t){if(!e.length)return new Tt(t,1);if(e.children.length==1){let l=e.children[0];if(l.isText())return this.scanText(l,t);if(l.isComposite())return this.scanTile(l,t)}let i=[t];for(let l=0,a=t;l<e.children.length;l++)i.push(a+=e.children[l].length);let r=this.scan(i,l=>{let a=e.children[l];return a.flags&48?null:(a.dom.nodeType==1?a.dom:_r(a.dom,0,a.length)).getClientRects()}),s=e.children[r.i],o=i[r.i];return s.isText()?this.scanText(s,o):s.isComposite()?this.scanTile(s,o):r.after?new Tt(i[r.i+1],-1):new Tt(o,1)}},Ni="\uFFFF",Pa=class{constructor(e,t){this.points=e,this.view=t,this.text="",this.lineSeparator=t.state.facet(ke.lineSeparator)}append(e){this.text+=e}lineBreak(){this.text+=Ni}readRange(e,t){if(!e)return this;let i=e.parentNode;for(let r=e;;){this.findPointBefore(i,r);let s=this.text.length;this.readNode(r);let o=Se.get(r),l=r.nextSibling;if(l==t){o?.breakAfter&&!l&&i!=this.view.contentDOM&&this.lineBreak();break}let a=Se.get(l);(o&&a?o.breakAfter:(o?o.breakAfter:io(r))||io(l)&&(r.nodeName!="BR"||o?.isWidget())&&this.text.length>s)&&!by(l,t)&&this.lineBreak(),r=l}return this.findPointBefore(i,t),this}readTextNode(e){let t=e.nodeValue;for(let i of this.points)i.node==e&&(i.pos=this.text.length+Math.min(i.offset,t.length));for(let i=0,r=this.lineSeparator?null:/\r\n?|\n/g;;){let s=-1,o=1,l;if(this.lineSeparator?(s=t.indexOf(this.lineSeparator,i),o=this.lineSeparator.length):(l=r.exec(t))&&(s=l.index,o=l[0].length),this.append(t.slice(i,s<0?t.length:s)),s<0)break;if(this.lineBreak(),o>1)for(let a of this.points)a.node==e&&a.pos>this.text.length&&(a.pos-=o-1);i=s+o}}readNode(e){let t=Se.get(e),i=t&&t.overrideDOMText;if(i!=null){this.findPointInside(e,i.length);for(let r=i.iter();!r.next().done;)r.lineBreak?this.lineBreak():this.append(r.value)}else e.nodeType==3?this.readTextNode(e):e.nodeName=="BR"?e.nextSibling&&this.lineBreak():e.nodeType==1&&this.readRange(e.firstChild,null)}findPointBefore(e,t){for(let i of this.points)i.node==e&&e.childNodes[i.offset]==t&&(i.pos=this.text.length)}findPointInside(e,t){for(let i of this.points)(e.nodeType==3?i.node==e:e.contains(i.node))&&(i.pos=this.text.length+(gy(e,i.node,i.offset)?t:0))}};function gy(n,e,t){for(;;){if(!e||t<bn(e))return!1;if(e==n)return!0;t=Pn(e)+1,e=e.parentNode}}function by(n,e){let t;for(;!(n==e||!n);n=n.nextSibling){let i=Se.get(n);if(!i?.isWidget())return!1;i&&(t||(t=[])).push(i)}if(t)for(let i of t){let r=i.overrideDOMText;if(r?.length)return!1}return!0}var lo=class{constructor(e,t){this.node=e,this.offset=t,this.pos=-1}},Ia=class{constructor(e,t,i,r){this.typeOver=r,this.bounds=null,this.text="",this.domChanged=t>-1;let{impreciseHead:s,impreciseAnchor:o}=e.docView,l=e.state.selection;if(e.state.readOnly&&t>-1)this.newSel=null;else if(t>-1&&(this.bounds=$f(e.docView.tile,t,i,0))){let a=s||o?[]:wy(e),c=new Pa(a,e);c.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=c.text,this.newSel=xy(a,this.bounds.from)}else{let a=e.observer.selectionRange,c=s&&s.node==a.focusNode&&s.offset==a.focusOffset||!ga(e.contentDOM,a.focusNode)?l.main.head:e.docView.posFromDOM(a.focusNode,a.focusOffset),h=o&&o.node==a.anchorNode&&o.offset==a.anchorOffset||!ga(e.contentDOM,a.anchorNode)?l.main.anchor:e.docView.posFromDOM(a.anchorNode,a.anchorOffset),u=e.viewport;if((O.ios||O.chrome)&&c!=h&&Math.min(c,h)<=l.main.from&&Math.max(c,h)>=l.main.to&&(u.from>0||u.to<e.state.doc.length)){let d=Math.min(c,h),f=Math.max(c,h),p=u.from-d,g=u.to-f;(p==0||p==1||d==0)&&(g==0||g==-1||f==e.state.doc.length)&&(c=0,h=e.state.doc.length)}if(e.inputState.composing>-1&&l.ranges.length>1)this.newSel=l.replaceRange(D.range(h,c));else if(e.lineWrapping&&h==c&&!(l.main.empty&&l.main.head==c)&&e.inputState.lastTouchTime>Date.now()-100){let d=e.coordsAtPos(c,-1),f=0;d&&(f=e.inputState.lastTouchY<=d.bottom?-1:1),this.newSel=D.create([D.cursor(c,f)])}else this.newSel=D.single(h,c)}}};function $f(n,e,t,i){if(n.isComposite()){let r=-1,s=-1,o=-1,l=-1;for(let a=0,c=i,h=i;a<n.children.length;a++){let u=n.children[a],d=c+u.length;if(c<e&&d>t)return $f(u,e,t,c);if(d>=e&&r==-1&&(r=a,s=c),c>t&&u.dom.parentNode==n.dom){o=a,l=h;break}h=d,c=d+u.breakAfter}return{from:s,to:l<0?i+n.length:l,startDOM:(r?n.children[r-1].dom.nextSibling:null)||n.dom.firstChild,endDOM:o<n.children.length&&o>=0?n.children[o].dom:null}}else return n.isText()?{from:i,to:i+n.length,startDOM:n.dom,endDOM:n.dom.nextSibling}:null}function Uf(n,e){let t,{newSel:i}=e,{state:r}=n,s=r.selection.main,o=n.inputState.lastKeyTime>Date.now()-100?n.inputState.lastKeyCode:-1;if(e.bounds){let{from:l,to:a}=e.bounds,c=s.from,h=null;(o===8||O.android&&e.text.length<a-l)&&(c=s.to,h="end");let u=r.doc.sliceString(l,a,Ni),d,f;!s.empty&&s.from>=l&&s.to<=a&&(e.typeOver||u!=e.text)&&u.slice(0,s.from-l)==e.text.slice(0,s.from-l)&&u.slice(s.to-l)==e.text.slice(d=e.text.length-(u.length-(s.to-l)))?t={from:s.from,to:s.to,insert:te.of(e.text.slice(s.from-l,d).split(Ni))}:(f=Kf(u,e.text,c-l,h))&&(O.chrome&&o==13&&f.toB==f.from+2&&e.text.slice(f.from,f.toB)==Ni+Ni&&f.toB--,t={from:l+f.from,to:l+f.toA,insert:te.of(e.text.slice(f.from,f.toB).split(Ni))})}else i&&(!n.hasFocus&&r.facet(mn)||ao(i,s))&&(i=null);if(!t&&!i)return!1;if((O.mac||O.android)&&t&&t.from==t.to&&t.from==s.head-1&&/^\. ?$/.test(t.insert.toString())&&n.contentDOM.getAttribute("autocorrect")=="off"?(i&&t.insert.length==2&&(i=D.single(i.main.anchor-1,i.main.head-1)),t={from:t.from,to:t.to,insert:te.of([t.insert.toString().replace("."," ")])}):r.doc.lineAt(s.from).to<s.to&&n.docView.lineHasWidget(s.to)&&n.inputState.insertingTextAt>Date.now()-50?t={from:s.from,to:s.to,insert:r.toText(n.inputState.insertingText)}:O.chrome&&t&&t.from==t.to&&t.from==s.head&&t.insert.toString()==`
588
- `&&n.lineWrapping&&(i&&(i=D.single(i.main.anchor-1,i.main.head-1)),t={from:s.from,to:s.to,insert:te.of([" "])}),t)return cc(n,t,i,o);if(i&&!ao(i,s)){let l=!1,a="select";return n.inputState.lastSelectionTime>Date.now()-50&&(n.inputState.lastSelectionOrigin=="select"&&(l=!0),a=n.inputState.lastSelectionOrigin,a=="select.pointer"&&(i=Vf(r.facet(Hr).map(c=>c(n)),i))),n.dispatch({selection:i,scrollIntoView:l,userEvent:a}),!0}else return!1}function cc(n,e,t,i=-1){if(O.ios&&n.inputState.flushIOSKey(e))return!0;let r=n.state.selection.main;if(O.android&&(e.to==r.to&&(e.from==r.from||e.from==r.from-1&&n.state.sliceDoc(e.from,r.from)==" ")&&e.insert.length==1&&e.insert.lines==2&&zi(n.contentDOM,"Enter",13)||(e.from==r.from-1&&e.to==r.to&&e.insert.length==0||i==8&&e.insert.length<e.to-e.from&&e.to>r.head)&&zi(n.contentDOM,"Backspace",8)||e.from==r.from&&e.to==r.to+1&&e.insert.length==0&&zi(n.contentDOM,"Delete",46)))return!0;let s=e.insert.toString();n.inputState.composing>=0&&n.inputState.composing++;let o,l=()=>o||(o=yy(n,e,t));return n.state.facet(Df).some(a=>a(n,e.from,e.to,s,l))||n.dispatch(l()),!0}function yy(n,e,t){let i,r=n.state,s=r.selection.main,o=-1;if(e.from==e.to&&e.from<s.from||e.from>s.to){let a=e.from<s.from?-1:1,c=a<0?s.from:s.to,h=Rr(r.facet(Hr).map(u=>u(n)),c,a);e.from==h&&(o=h)}if(o>-1)i={changes:e,selection:D.cursor(e.from+e.insert.length,-1)};else if(e.from>=s.from&&e.to<=s.to&&e.to-e.from>=(s.to-s.from)/3&&(!t||t.main.empty&&t.main.from==e.from+e.insert.length)&&n.inputState.composing<0){let a=s.from<e.from?r.sliceDoc(s.from,e.from):"",c=s.to>e.to?r.sliceDoc(e.to,s.to):"";i=r.replaceSelection(n.state.toText(a+e.insert.sliceString(0,void 0,n.state.lineBreak)+c))}else{let a=r.changes(e),c=t&&t.main.to<=a.newLength?t.main:void 0;if(r.selection.ranges.length>1&&(n.inputState.composing>=0||n.inputState.compositionPendingChange)&&e.to<=s.to+10&&e.to>=s.to-10){let h=n.state.sliceDoc(e.from,e.to),u,d=t&&Wf(n,t.main.head);if(d){let p=e.insert.length-(e.to-e.from);u={from:d.from,to:d.to-p}}else u=n.state.doc.lineAt(s.head);let f=s.to-e.to;i=r.changeByRange(p=>{if(p.from==s.from&&p.to==s.to)return{changes:a,range:c||p.map(a)};let g=p.to-f,b=g-h.length;if(n.state.sliceDoc(b,g)!=h||g>=u.from&&b<=u.to)return{range:p};let y=r.changes({from:b,to:g,insert:e.insert}),x=p.to-s.to;return{changes:y,range:c?D.range(Math.max(0,c.anchor+x),Math.max(0,c.head+x)):p.map(y)}})}else i={changes:a,selection:c&&r.selection.replaceRange(c)}}let l="input.type";return(n.composing||n.inputState.compositionPendingChange&&n.inputState.compositionEndedAt>Date.now()-50)&&(n.inputState.compositionPendingChange=!1,l+=".compose",n.inputState.compositionFirstChange&&(l+=".start",n.inputState.compositionFirstChange=!1)),r.update(i,{userEvent:l,scrollIntoView:!0})}function Kf(n,e,t,i){let r=Math.min(n.length,e.length),s=0;for(;s<r&&n.charCodeAt(s)==e.charCodeAt(s);)s++;if(s==r&&n.length==e.length)return null;let o=n.length,l=e.length;for(;o>0&&l>0&&n.charCodeAt(o-1)==e.charCodeAt(l-1);)o--,l--;if(i=="end"){let a=Math.max(0,s-Math.min(o,l));t-=o+a-s}if(o<s&&n.length<e.length){let a=t<=s&&t>=o?s-t:0;s-=a,l=s+(l-o),o=s}else if(l<s){let a=t<=s&&t>=l?s-t:0;s-=a,o=s+(o-l),l=s}return{from:s,toA:o,toB:l}}function wy(n){let e=[];if(n.root.activeElement!=n.contentDOM)return e;let{anchorNode:t,anchorOffset:i,focusNode:r,focusOffset:s}=n.observer.selectionRange;return t&&(e.push(new lo(t,i)),(r!=t||s!=i)&&e.push(new lo(r,s))),e}function xy(n,e){if(n.length==0)return null;let t=n[0].pos,i=n.length==2?n[1].pos:t;return t>-1&&i>-1?D.single(t+e,i+e):null}function ao(n,e){return e.head==n.main.head&&e.anchor==n.main.anchor}var Na=class{setSelectionOrigin(e){this.lastSelectionOrigin=e,this.lastSelectionTime=Date.now()}constructor(e){this.view=e,this.lastKeyCode=0,this.lastKeyTime=0,this.touchActive=!1,this.lastTouchTime=0,this.lastTouchX=0,this.lastTouchY=0,this.lastFocusTime=0,this.lastScrollTop=0,this.lastScrollLeft=0,this.lastWheelEvent=0,this.pendingIOSKey=void 0,this.lastIOSMomentumScroll=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=e.hasFocus,O.safari&&e.contentDOM.addEventListener("input",()=>null),O.gecko&&Ny(e.contentDOM.ownerDocument)}handleEvent(e){!Ey(this.view,e)||this.ignoreDuringComposition(e)||e.type=="keydown"&&this.keydown(e)||(this.view.updateState!=0?Promise.resolve().then(()=>this.runHandlers(e.type,e)):this.runHandlers(e.type,e))}runHandlers(e,t){let i=this.handlers[e];if(i){for(let r of i.observers)r(this.view,t);for(let r of i.handlers){if(t.defaultPrevented)break;if(r(this.view,t)){t.preventDefault();break}}}}ensureHandlers(e){let t=ky(e),i=this.handlers,r=this.view.contentDOM;for(let s in t)if(s!="scroll"){let o=!t[s].handlers.length,l=i[s];l&&o!=!l.handlers.length&&(r.removeEventListener(s,this.handleEvent),l=null),l||r.addEventListener(s,this.handleEvent,{passive:o})}for(let s in i)s!="scroll"&&!t[s]&&r.removeEventListener(s,this.handleEvent);this.handlers=t}keydown(e){if(this.lastKeyCode=e.keyCode,this.lastKeyTime=Date.now(),e.keyCode==9&&this.tabFocusMode>-1&&(!this.tabFocusMode||Date.now()<=this.tabFocusMode))return!0;if(this.tabFocusMode>0&&e.keyCode!=27&&Gf.indexOf(e.keyCode)<0&&(this.tabFocusMode=-1),O.android&&O.chrome&&!e.synthetic&&(e.keyCode==13||e.keyCode==8))return this.view.observer.delayAndroidKey(e.key,e.keyCode),!0;if(O.ios&&!e.synthetic&&!e.altKey&&!e.metaKey&&(jf.some(t=>t.keyCode==e.keyCode)&&!e.ctrlKey||Sy.indexOf(e.key)>-1&&e.ctrlKey)){let t={ctrlKey:e.ctrlKey,altKey:e.altKey,metaKey:e.metaKey,shiftKey:e.shiftKey};return t.shiftKey&&O.ios&&!/^(off|none)$/.test(this.view.contentDOM.autocapitalize)&&vy(this.view.win)&&(t.shiftKey=!1),this.pendingIOSKey={key:e.key,keyCode:e.keyCode,mods:t},setTimeout(()=>this.flushIOSKey(),50),!0}return e.keyCode!=229&&this.view.observer.forceFlush(),!1}flushIOSKey(e){let t=this.pendingIOSKey;return!t||this.view.observer.pendingRecords().length||t.key=="Enter"&&e&&e.from<e.to&&/^\S+$/.test(e.insert.toString())?!1:(this.pendingIOSKey=void 0,zi(this.view.contentDOM,t.key,t.keyCode,t.mods))}ignoreDuringComposition(e){return!/^key/.test(e.type)||e.synthetic?!1:this.composing>0?!0:O.safari&&!O.ios&&this.compositionPendingKey&&Date.now()-this.compositionEndedAt<100?(this.compositionPendingKey=!1,!0):!1}startMouseSelection(e){this.mouseSelection&&this.mouseSelection.destroy(),this.mouseSelection=e}update(e){this.view.observer.update(e),this.mouseSelection&&this.mouseSelection.update(e),this.draggedContent&&e.docChanged&&(this.draggedContent=this.draggedContent.map(e.changes)),e.transactions.length&&(this.lastKeyCode=this.lastSelectionTime=0)}destroy(){this.mouseSelection&&this.mouseSelection.destroy()}};function vy(n){return n.visualViewport?n.visualViewport.height*n.visualViewport.scale/n.document.documentElement.clientHeight<.85:!1}function Vd(n,e){return(t,i)=>{try{return e.call(n,i,t)}catch(r){It(t.state,r)}}}function ky(n){let e=Object.create(null);function t(i){return e[i]||(e[i]={observers:[],handlers:[]})}for(let i of n){let r=i.spec,s=r&&r.plugin.domEventHandlers,o=r&&r.plugin.domEventObservers;if(s)for(let l in s){let a=s[l];a&&t(l).handlers.push(Vd(i.value,a))}if(o)for(let l in o){let a=o[l];a&&t(l).observers.push(Vd(i.value,a))}}for(let i in _t)t(i).handlers.push(_t[i]);for(let i in tt)t(i).observers.push(tt[i]);return e}var jf=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],Sy="dthko",Gf=[16,17,18,20,91,92,224,225],Ks=6;function js(n){return Math.max(0,n)*.7+8}function Cy(n,e){return Math.max(Math.abs(n.clientX-e.clientX),Math.abs(n.clientY-e.clientY))}var Ba=class{constructor(e,t,i,r){this.view=e,this.startEvent=t,this.style=i,this.mustSelect=r,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=t,this.scrollParents=ff(e.contentDOM),this.atoms=e.state.facet(Hr).map(o=>o(e));let s=e.contentDOM.ownerDocument;s.addEventListener("mousemove",this.move=this.move.bind(this)),s.addEventListener("mouseup",this.up=this.up.bind(this)),this.extend=t.shiftKey,this.multiple=e.state.facet(ke.allowMultipleSelections)&&Ty(e,t),this.dragging=My(e,t)&&Yf(t)==1?null:!1}start(e){this.dragging===!1&&this.select(e)}move(e){if(e.buttons==0)return this.destroy();if(this.dragging||this.dragging==null&&Cy(this.startEvent,e)<10)return;this.select(this.lastEvent=e);let t=0,i=0,r=0,s=0,o=this.view.win.innerWidth,l=this.view.win.innerHeight;this.scrollParents.x&&({left:r,right:o}=this.scrollParents.x.getBoundingClientRect()),this.scrollParents.y&&({top:s,bottom:l}=this.scrollParents.y.getBoundingClientRect());let a=Ff(this.view);e.clientX-a.left<=r+Ks?t=-js(r-e.clientX):e.clientX+a.right>=o-Ks&&(t=js(e.clientX-o)),e.clientY-a.top<=s+Ks?i=-js(s-e.clientY):e.clientY+a.bottom>=l-Ks&&(i=js(e.clientY-l)),this.setScrollSpeed(t,i)}up(e){this.dragging==null&&this.select(this.lastEvent),this.dragging||e.preventDefault(),this.destroy()}destroy(){this.setScrollSpeed(0,0);let e=this.view.contentDOM.ownerDocument;e.removeEventListener("mousemove",this.move),e.removeEventListener("mouseup",this.up),this.view.inputState.mouseSelection=this.view.inputState.draggedContent=null}setScrollSpeed(e,t){this.scrollSpeed={x:e,y:t},e||t?this.scrolling<0&&(this.scrolling=setInterval(()=>this.scroll(),50)):this.scrolling>-1&&(clearInterval(this.scrolling),this.scrolling=-1)}scroll(){let{x:e,y:t}=this.scrollSpeed;e&&this.scrollParents.x&&(this.scrollParents.x.scrollLeft+=e,e=0),t&&this.scrollParents.y&&(this.scrollParents.y.scrollTop+=t,t=0),(e||t)&&this.view.win.scrollBy(e,t),this.dragging===!1&&this.select(this.lastEvent)}select(e){let{view:t}=this,i=Vf(this.atoms,this.style.get(e,this.extend,this.multiple));(this.mustSelect||!i.eq(t.state.selection,this.dragging===!1))&&this.view.dispatch({selection:i,userEvent:"select.pointer"}),this.mustSelect=!1}update(e){e.transactions.some(t=>t.isUserEvent("input.type"))?this.destroy():this.style.update(e)&&setTimeout(()=>this.select(this.lastEvent),20)}};function Ty(n,e){let t=n.state.facet(Tf);return t.length?t[0](e):O.mac?e.metaKey:e.ctrlKey}function Ay(n,e){let t=n.state.facet(Af);return t.length?t[0](e):O.mac?!e.altKey:!e.ctrlKey}function My(n,e){let{main:t}=n.state.selection;if(t.empty)return!1;let i=Nr(n.root);if(!i||i.rangeCount==0)return!0;let r=i.getRangeAt(0).getClientRects();for(let s=0;s<r.length;s++){let o=r[s];if(o.left<=e.clientX&&o.right>=e.clientX&&o.top<=e.clientY&&o.bottom>=e.clientY)return!0}return!1}function Ey(n,e){if(!e.bubbles)return!0;if(e.defaultPrevented)return!1;for(let t=e.target,i;t!=n.contentDOM;t=t.parentNode)if(!t||t.nodeType==11||(i=Se.get(t))&&i.isWidget()&&!i.isHidden&&i.widget.ignoreEvent(e))return!1;return!0}var _t=Object.create(null),tt=Object.create(null),qf=O.ie&&O.ie_version<15||O.ios&&O.webkit_version<604;function Dy(n){let e=n.dom.parentNode;if(!e)return;let t=e.appendChild(document.createElement("textarea"));t.style.cssText="position: fixed; left: -10000px; top: 10px",t.focus(),setTimeout(()=>{n.focus(),t.remove(),Xf(n,t.value)},50)}function yo(n,e,t){for(let i of n.facet(e))t=i(t,n);return t}function Xf(n,e){e=yo(n.state,sc,e);let{state:t}=n,i,r=1,s=t.toText(e),o=s.lines==t.selection.ranges.length;if(_a!=null&&t.selection.ranges.every(a=>a.empty)&&_a==s.toString()){let a=-1;i=t.changeByRange(c=>{let h=t.doc.lineAt(c.from);if(h.from==a)return{range:c};a=h.from;let u=t.toText((o?s.line(r++).text:e)+t.lineBreak);return{changes:{from:h.from,insert:u},range:D.cursor(c.from+u.length)}})}else o?i=t.changeByRange(a=>{let c=s.line(r++);return{changes:{from:a.from,to:a.to,insert:c.text},range:D.cursor(a.from+c.length)}}):i=t.replaceSelection(s);n.dispatch(i,{userEvent:"input.paste",scrollIntoView:!0})}tt.scroll=n=>{let e=n.inputState;e.lastScrollTop=n.scrollDOM.scrollTop,e.lastScrollLeft=n.scrollDOM.scrollLeft,O.ios&&!e.touchActive&&(e.lastIOSMomentumScroll=Date.now())};tt.wheel=tt.mousewheel=n=>{n.inputState.lastWheelEvent=Date.now()};_t.keydown=(n,e)=>(n.inputState.setSelectionOrigin("select"),e.keyCode==27&&n.inputState.tabFocusMode!=0&&(n.inputState.tabFocusMode=Date.now()+2e3),!1);tt.touchstart=(n,e)=>{let t=n.inputState,i=e.targetTouches[0];t.touchActive=!0,t.lastTouchTime=Date.now(),i&&(t.lastTouchX=i.clientX,t.lastTouchY=i.clientY),t.setSelectionOrigin("select.pointer")};tt.touchmove=n=>{n.inputState.setSelectionOrigin("select.pointer")};tt.touchend=(n,e)=>{n.inputState.touchActive=!1};_t.mousedown=(n,e)=>{if(n.observer.flush(),n.inputState.lastTouchTime>Date.now()-2e3)return!1;let t=null;for(let i of n.state.facet(Mf))if(t=i(n,e),t)break;if(!t&&e.button==0&&(t=Ly(n,e)),t){let i=!n.hasFocus;n.inputState.startMouseSelection(new Ba(n,e,t,i)),i&&n.observer.ignore(()=>{gf(n.contentDOM);let s=n.root.activeElement;s&&!s.contains(n.contentDOM)&&s.blur()});let r=n.inputState.mouseSelection;if(r)return r.start(e),r.dragging===!1}else n.inputState.setSelectionOrigin("select.pointer");return!1};function $d(n,e,t,i){if(i==1)return D.cursor(e,t);if(i==2)return uy(n.state,e,t);{let r=n.docView.lineAt(e,t),s=n.state.doc.lineAt(r?r.posAtEnd:e),o=r?r.posAtStart:s.from,l=r?r.posAtEnd:s.to;return l<n.state.doc.length&&l==s.to&&l++,D.undirectionalRange(o,l)}}var Ry=O.ie&&O.ie_version<=11,Ud=null,Kd=0,jd=0;function Yf(n){if(!Ry)return n.detail;let e=Ud,t=jd;return Ud=n,jd=Date.now(),Kd=!e||t>Date.now()-400&&Math.abs(e.clientX-n.clientX)<2&&Math.abs(e.clientY-n.clientY)<2?(Kd+1)%3:1}function Ly(n,e){let t=n.posAndSideAtCoords({x:e.clientX,y:e.clientY},!1),i=Yf(e),r=n.state.selection;return{update(s){s.docChanged&&(t.pos=s.changes.mapPos(t.pos),r=r.map(s.changes))},get(s,o,l){let a=n.posAndSideAtCoords({x:s.clientX,y:s.clientY},!1),c,h=$d(n,a.pos,a.assoc,i);if(t.pos!=a.pos&&!o){let u=$d(n,t.pos,t.assoc,i),d=Math.min(u.from,h.from),f=Math.max(u.to,h.to);h=d<h.from?D.range(d,f,h.assoc):D.range(f,d,h.assoc)}return o?r.replaceRange(r.main.extend(h.from,h.to,h.assoc)):l&&i==1&&r.ranges.length>1&&(c=Oy(r,a.pos))?c:l?r.addRange(h):D.create([h])}}}function Oy(n,e){for(let t=0;t<n.ranges.length;t++){let{from:i,to:r}=n.ranges[t];if(i<=e&&r>=e)return D.create(n.ranges.slice(0,t).concat(n.ranges.slice(t+1)),n.mainIndex==t?0:n.mainIndex-(n.mainIndex>t?1:0))}return null}_t.dragstart=(n,e)=>{let{selection:{main:t}}=n.state;if(e.target.draggable){let r=n.docView.tile.nearest(e.target);if(r&&r.isWidget()){let s=r.posAtStart,o=s+r.length;(s>=t.to||o<=t.from)&&(t=D.undirectionalRange(s,o))}}let{inputState:i}=n;return i.mouseSelection&&(i.mouseSelection.dragging=!0),i.draggedContent=t,e.dataTransfer&&(e.dataTransfer.setData("Text",yo(n.state,oc,n.state.sliceDoc(t.from,t.to))),e.dataTransfer.effectAllowed="copyMove"),!1};_t.dragend=n=>(n.inputState.draggedContent=null,!1);function Gd(n,e,t,i){if(t=yo(n.state,sc,t),!t)return;let r=n.posAtCoords({x:e.clientX,y:e.clientY},!1),{draggedContent:s}=n.inputState,o=i&&s&&Ay(n,e)?{from:s.from,to:s.to}:null,l={from:r,insert:t},a=n.state.changes(o?[o,l]:l);n.focus(),n.dispatch({changes:a,selection:{anchor:a.mapPos(r,-1),head:a.mapPos(r,1)},userEvent:o?"move.drop":"input.drop"}),n.inputState.draggedContent=null}_t.drop=(n,e)=>{if(!e.dataTransfer)return!1;if(n.state.readOnly)return!0;let t=e.dataTransfer.files;if(t&&t.length){let i=Array(t.length),r=0,s=()=>{++r==t.length&&Gd(n,e,i.filter(o=>o!=null).join(n.state.lineBreak),!1)};for(let o=0;o<t.length;o++){let l=new FileReader;l.onerror=s,l.onload=()=>{/[\x00-\x08\x0e-\x1f]{2}/.test(l.result)||(i[o]=l.result),s()},l.readAsText(t[o])}return!0}else{let i=e.dataTransfer.getData("Text");if(i)return Gd(n,e,i,!0),!0}return!1};_t.paste=(n,e)=>{if(n.state.readOnly)return!0;n.observer.flush();let t=qf?null:e.clipboardData;return t?(Xf(n,t.getData("text/plain")||t.getData("text/uri-list")),!0):(Dy(n),!1)};function Py(n,e){let t=n.dom.parentNode;if(!t)return;let i=t.appendChild(document.createElement("textarea"));i.style.cssText="position: fixed; left: -10000px; top: 10px",i.value=e,i.focus(),i.selectionEnd=e.length,i.selectionStart=0,setTimeout(()=>{i.remove(),n.focus()},50)}function Iy(n){let e=[],t=[],i=!1;for(let r of n.selection.ranges)r.empty||(e.push(n.sliceDoc(r.from,r.to)),t.push(r));if(!e.length){let r=-1;for(let{from:s}of n.selection.ranges){let o=n.doc.lineAt(s);o.number>r&&(e.push(o.text),t.push({from:o.from,to:Math.min(n.doc.length,o.to+1)})),r=o.number}i=!0}return{text:yo(n,oc,e.join(n.lineBreak)),ranges:t,linewise:i}}var _a=null;_t.copy=_t.cut=(n,e)=>{if(!Cr(n.contentDOM,n.observer.selectionRange))return!1;let{text:t,ranges:i,linewise:r}=Iy(n.state);if(!t&&!r)return!1;_a=r?t:null,e.type=="cut"&&!n.state.readOnly&&n.dispatch({changes:i,scrollIntoView:!0,userEvent:"delete.cut"});let s=qf?null:e.clipboardData;return s?(s.clearData(),s.setData("text/plain",t),!0):(Py(n,t),!1)};var Jf=ht.define();function Zf(n,e){let t=[];for(let i of n.facet(Rf)){let r=i(n,e);r&&t.push(r)}return t.length?n.update({effects:t,annotations:Jf.of(!0)}):null}function Qf(n){setTimeout(()=>{let e=n.hasFocus;if(e!=n.inputState.notifiedFocused){let t=Zf(n.state,e);t?n.dispatch(t):n.update([])}},10)}tt.focus=n=>{n.inputState.lastFocusTime=Date.now(),!n.scrollDOM.scrollTop&&(n.inputState.lastScrollTop||n.inputState.lastScrollLeft)&&(n.scrollDOM.scrollTop=n.inputState.lastScrollTop,n.scrollDOM.scrollLeft=n.inputState.lastScrollLeft),Qf(n)};tt.blur=n=>{n.observer.clearSelectionRange(),Qf(n)};tt.compositionstart=tt.compositionupdate=n=>{if(!n.observer.editContext&&(n.inputState.compositionFirstChange==null&&(n.inputState.compositionFirstChange=!0),n.inputState.composing<0)){let{main:e}=n.state.selection;!e.empty&&n.lineBlockAt(e.from).from!=n.lineBlockAt(e.to).from&&n.dispatch({changes:n.state.selection.ranges.filter(t=>!t.empty).map(t=>({from:t.from,to:t.to})),userEvent:"input"}),n.inputState.composing=0}};tt.compositionend=n=>{n.observer.editContext||(n.inputState.composing=-1,n.inputState.compositionEndedAt=Date.now(),n.inputState.compositionPendingKey=!0,n.inputState.compositionPendingChange=n.observer.pendingRecords().length>0,n.inputState.compositionFirstChange=null,O.chrome&&O.android?n.observer.flushSoon():n.inputState.compositionPendingChange?Promise.resolve().then(()=>n.observer.flush()):setTimeout(()=>{n.inputState.composing<0&&n.docView.hasComposition&&n.update([])},50))};tt.contextmenu=n=>{n.inputState.lastContextMenu=Date.now()};_t.beforeinput=(n,e)=>{var t,i;if((e.inputType=="insertText"||e.inputType=="insertCompositionText")&&(n.inputState.insertingText=e.data,n.inputState.insertingTextAt=Date.now()),e.inputType=="insertReplacementText"&&n.observer.editContext){let s=(t=e.dataTransfer)===null||t===void 0?void 0:t.getData("text/plain"),o=e.getTargetRanges();if(s&&o.length){let l=o[0],a=n.posAtDOM(l.startContainer,l.startOffset),c=n.posAtDOM(l.endContainer,l.endOffset);return cc(n,{from:a,to:c,insert:n.state.toText(s)},null),!0}}let r;if(O.chrome&&O.android&&(r=jf.find(s=>s.inputType==e.inputType))&&(n.observer.delayAndroidKey(r.key,r.keyCode),r.key=="Backspace"||r.key=="Delete")){let s=((i=window.visualViewport)===null||i===void 0?void 0:i.height)||0;setTimeout(()=>{var o;(((o=window.visualViewport)===null||o===void 0?void 0:o.height)||0)>s+10&&n.hasFocus&&(n.contentDOM.blur(),n.focus())},100)}return O.ios&&e.inputType=="deleteContentForward"&&n.observer.flushSoon(),O.safari&&e.inputType=="insertText"&&n.inputState.composing>=0&&setTimeout(()=>tt.compositionend(n,e),20),!1};var qd=new Set;function Ny(n){qd.has(n)||(qd.add(n),n.addEventListener("copy",()=>{}),n.addEventListener("cut",()=>{}))}var Xd=["pre-wrap","normal","pre-line","break-spaces"],Ki=!1;function Yd(){Ki=!1}var Ha=class{constructor(e){this.lineWrapping=e,this.doc=te.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30}heightForGap(e,t){let i=this.doc.lineAt(t).number-this.doc.lineAt(e).number+1;return this.lineWrapping&&(i+=Math.max(0,Math.ceil((t-e-i*this.lineLength*.5)/this.lineLength))),this.lineHeight*i}heightForLine(e){return this.lineWrapping?(1+Math.max(0,Math.ceil((e-this.lineLength)/Math.max(1,this.lineLength-5))))*this.lineHeight:this.lineHeight}setDoc(e){return this.doc=e,this}mustRefreshForWrapping(e){return Xd.indexOf(e)>-1!=this.lineWrapping}mustRefreshForHeights(e){let t=!1;for(let i=0;i<e.length;i++){let r=e[i];r<0?i++:this.heightSamples[Math.floor(r*10)]||(t=!0,this.heightSamples[Math.floor(r*10)]=!0)}return t}refresh(e,t,i,r,s,o){let l=Xd.indexOf(e)>-1,a=Math.abs(t-this.lineHeight)>.3||this.lineWrapping!=l;if(this.lineWrapping=l,this.lineHeight=t,this.charWidth=i,this.textHeight=r,this.lineLength=s,a){this.heightSamples={};for(let c=0;c<o.length;c++){let h=o[c];h<0?c++:this.heightSamples[Math.floor(h*10)]=!0}}return a}},Fa=class{constructor(e,t){this.from=e,this.heights=t,this.index=0}get more(){return this.index<this.heights.length}},Pt=class n{constructor(e,t,i,r,s){this.from=e,this.length=t,this.top=i,this.height=r,this._content=s}get type(){return typeof this._content=="number"?Ve.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 si?this._content.widget:null}get widgetLineBreaks(){return typeof this._content=="number"?this._content:0}join(e){let t=(Array.isArray(this._content)?this._content:[this]).concat(Array.isArray(e._content)?e._content:[e]);return new n(this.from,this.length+e.length,this.top,this.height+e.height,t)}},pe=(function(n){return n[n.ByPos=0]="ByPos",n[n.ByHeight=1]="ByHeight",n[n.ByPosNoHeight=2]="ByPosNoHeight",n})(pe||(pe={})),Js=.001,gt=class n{constructor(e,t,i=2){this.length=e,this.height=t,this.flags=i}get outdated(){return(this.flags&2)>0}set outdated(e){this.flags=(e?2:0)|this.flags&-3}setHeight(e){this.height!=e&&(Math.abs(this.height-e)>Js&&(Ki=!0),this.height=e)}replace(e,t,i){return n.of(i)}decomposeLeft(e,t){t.push(this)}decomposeRight(e,t){t.push(this)}applyChanges(e,t,i,r){let s=this,o=i.doc;for(let l=r.length-1;l>=0;l--){let{fromA:a,toA:c,fromB:h,toB:u}=r[l],d=s.lineAt(a,pe.ByPosNoHeight,i.setDoc(t),0,0),f=d.to>=c?d:s.lineAt(c,pe.ByPosNoHeight,i,0,0);for(u+=f.to-c,c=f.to;l>0&&d.from<=r[l-1].toA;)a=r[l-1].fromA,h=r[l-1].fromB,l--,a<d.from&&(d=s.lineAt(a,pe.ByPosNoHeight,i,0,0));h+=d.from-a,a=d.from;let p=Wa.build(i.setDoc(o),e,h,u);s=co(s,s.replace(a,c,p))}return s.updateHeight(i,0)}static empty(){return new Ct(0,0,0)}static of(e){if(e.length==1)return e[0];let t=0,i=e.length,r=0,s=0;for(;;)if(t==i)if(r>s*2){let l=e[t-1];l.break?e.splice(--t,1,l.left,null,l.right):e.splice(--t,1,l.left,l.right),i+=1+l.break,r-=l.size}else if(s>r*2){let l=e[i];l.break?e.splice(i,1,l.left,null,l.right):e.splice(i,1,l.left,l.right),i+=2+l.break,s-=l.size}else break;else if(r<s){let l=e[t++];l&&(r+=l.size)}else{let l=e[--i];l&&(s+=l.size)}let o=0;return e[t-1]==null?(o=1,t--):e[t]==null&&(o=1,i++),new za(n.of(e.slice(0,t)),o,n.of(e.slice(i)))}};function co(n,e){return n==e?n:(n.constructor!=e.constructor&&(Ki=!0),e)}gt.prototype.size=1;var By=me.replace({}),ho=class extends gt{constructor(e,t,i){super(e,t),this.deco=i,this.spaceAbove=0}mainBlock(e,t){return new Pt(t,this.length,e+this.spaceAbove,this.height-this.spaceAbove,this.deco||0)}blockAt(e,t,i,r){return this.spaceAbove&&e<i+this.spaceAbove?new Pt(r,0,i,this.spaceAbove,By):this.mainBlock(i,r)}lineAt(e,t,i,r,s){let o=this.mainBlock(r,s);return this.spaceAbove?this.blockAt(0,i,r,s).join(o):o}forEachLine(e,t,i,r,s,o){e<=s+this.length&&t>=s&&o(this.lineAt(0,pe.ByPos,i,r,s))}setMeasuredHeight(e){let t=e.heights[e.index++];t<0?(this.spaceAbove=-t,t=e.heights[e.index++]):this.spaceAbove=0,this.setHeight(t)}updateHeight(e,t=0,i=!1,r){return r&&r.from<=t&&r.more&&this.setMeasuredHeight(r),this.outdated=!1,this}toString(){return`block(${this.length})`}},Ct=class n extends ho{constructor(e,t,i){super(e,t,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0,this.spaceAbove=i}mainBlock(e,t){return new Pt(t,this.length,e+this.spaceAbove,this.height-this.spaceAbove,this.breaks)}replace(e,t,i){let r=i[0];return i.length==1&&(r instanceof n||r instanceof Ln&&r.flags&4)&&Math.abs(this.length-r.length)<10?(r instanceof Ln?r=new n(r.length,this.height,this.spaceAbove):r.height=this.height,this.outdated||(r.outdated=!1),r):gt.of(i)}updateHeight(e,t=0,i=!1,r){return r&&r.from<=t&&r.more?this.setMeasuredHeight(r):(i||this.outdated)&&(this.spaceAbove=0,this.setHeight(Math.max(this.widgetHeight,e.heightForLine(this.length-this.collapsed))+this.breaks*e.lineHeight)),this.outdated=!1,this}toString(){return`line(${this.length}${this.collapsed?-this.collapsed:""}${this.widgetHeight?":"+this.widgetHeight:""})`}},Ln=class n extends gt{constructor(e){super(e,0)}heightMetrics(e,t){let i=e.doc.lineAt(t).number,r=e.doc.lineAt(t+this.length).number,s=r-i+1,o,l=0;if(e.lineWrapping){let a=Math.min(this.height,e.lineHeight*s);o=a/s,this.length>s+1&&(l=(this.height-a)/(this.length-s-1))}else o=this.height/s;return{firstLine:i,lastLine:r,perLine:o,perChar:l}}blockAt(e,t,i,r){let{firstLine:s,lastLine:o,perLine:l,perChar:a}=this.heightMetrics(t,r);if(t.lineWrapping){let c=r+(e<t.lineHeight?0:Math.round(Math.max(0,Math.min(1,(e-i)/this.height))*this.length)),h=t.doc.lineAt(c),u=l+h.length*a,d=Math.max(i,e-u/2);return new Pt(h.from,h.length,d,u,0)}else{let c=Math.max(0,Math.min(o-s,Math.floor((e-i)/l))),{from:h,length:u}=t.doc.line(s+c);return new Pt(h,u,i+l*c,l,0)}}lineAt(e,t,i,r,s){if(t==pe.ByHeight)return this.blockAt(e,i,r,s);if(t==pe.ByPosNoHeight){let{from:f,to:p}=i.doc.lineAt(e);return new Pt(f,p-f,0,0,0)}let{firstLine:o,perLine:l,perChar:a}=this.heightMetrics(i,s),c=i.doc.lineAt(e),h=l+c.length*a,u=c.number-o,d=r+l*u+a*(c.from-s-u);return new Pt(c.from,c.length,Math.max(r,Math.min(d,r+this.height-h)),h,0)}forEachLine(e,t,i,r,s,o){e=Math.max(e,s),t=Math.min(t,s+this.length);let{firstLine:l,perLine:a,perChar:c}=this.heightMetrics(i,s);for(let h=e,u=r;h<=t;){let d=i.doc.lineAt(h);if(h==e){let p=d.number-l;u+=a*p+c*(e-s-p)}let f=a+c*d.length;o(new Pt(d.from,d.length,u,f,0)),u+=f,h=d.to+1}}replace(e,t,i){let r=this.length-t;if(r>0){let s=i[i.length-1];s instanceof n?i[i.length-1]=new n(s.length+r):i.push(null,new n(r-1))}if(e>0){let s=i[0];s instanceof n?i[0]=new n(e+s.length):i.unshift(new n(e-1),null)}return gt.of(i)}decomposeLeft(e,t){t.push(new n(e-1),null)}decomposeRight(e,t){t.push(null,new n(this.length-e-1))}updateHeight(e,t=0,i=!1,r){let s=t+this.length;if(r&&r.from<=t+this.length&&r.more){let o=[],l=Math.max(t,r.from),a=-1;for(r.from>t&&o.push(new n(r.from-t-1).updateHeight(e,t));l<=s&&r.more;){let h=e.doc.lineAt(l).length;o.length&&o.push(null);let u=r.heights[r.index++],d=0;u<0&&(d=-u,u=r.heights[r.index++]),a==-1?a=u:Math.abs(u-a)>=Js&&(a=-2);let f=new Ct(h,u,d);f.outdated=!1,o.push(f),l+=h+1}l<=s&&o.push(null,new n(s-l).updateHeight(e,l));let c=gt.of(o);return(a<0||Math.abs(c.height-this.height)>=Js||Math.abs(a-this.heightMetrics(e,t).perLine)>=Js)&&(Ki=!0),co(this,c)}else(i||this.outdated)&&(this.setHeight(e.heightForGap(t,t+this.length)),this.outdated=!1);return this}toString(){return`gap(${this.length})`}},za=class extends gt{constructor(e,t,i){super(e.length+t+i.length,e.height+i.height,t|(e.outdated||i.outdated?2:0)),this.left=e,this.right=i,this.size=e.size+i.size}get break(){return this.flags&1}blockAt(e,t,i,r){let s=i+this.left.height;return e<s?this.left.blockAt(e,t,i,r):this.right.blockAt(e,t,s,r+this.left.length+this.break)}lineAt(e,t,i,r,s){let o=r+this.left.height,l=s+this.left.length+this.break,a=t==pe.ByHeight?e<o:e<l,c=a?this.left.lineAt(e,t,i,r,s):this.right.lineAt(e,t,i,o,l);if(this.break||(a?c.to<l:c.from>l))return c;let h=t==pe.ByPosNoHeight?pe.ByPosNoHeight:pe.ByPos;return a?c.join(this.right.lineAt(l,h,i,o,l)):this.left.lineAt(l,h,i,r,s).join(c)}forEachLine(e,t,i,r,s,o){let l=r+this.left.height,a=s+this.left.length+this.break;if(this.break)e<a&&this.left.forEachLine(e,t,i,r,s,o),t>=a&&this.right.forEachLine(e,t,i,l,a,o);else{let c=this.lineAt(a,pe.ByPos,i,r,s);e<c.from&&this.left.forEachLine(e,c.from-1,i,r,s,o),c.to>=e&&c.from<=t&&o(c),t>c.to&&this.right.forEachLine(c.to+1,t,i,l,a,o)}}replace(e,t,i){let r=this.left.length+this.break;if(t<r)return this.balanced(this.left.replace(e,t,i),this.right);if(e>this.left.length)return this.balanced(this.left,this.right.replace(e-r,t-r,i));let s=[];e>0&&this.decomposeLeft(e,s);let o=s.length;for(let l of i)s.push(l);if(e>0&&Jd(s,o-1),t<this.length){let l=s.length;this.decomposeRight(t,s),Jd(s,l)}return gt.of(s)}decomposeLeft(e,t){let i=this.left.length;if(e<=i)return this.left.decomposeLeft(e,t);t.push(this.left),this.break&&(i++,e>=i&&t.push(null)),e>i&&this.right.decomposeLeft(e-i,t)}decomposeRight(e,t){let i=this.left.length,r=i+this.break;if(e>=r)return this.right.decomposeRight(e-r,t);e<i&&this.left.decomposeRight(e,t),this.break&&e<r&&t.push(null),t.push(this.right)}balanced(e,t){return e.size>2*t.size||t.size>2*e.size?gt.of(this.break?[e,null,t]:[e,t]):(this.left=co(this.left,e),this.right=co(this.right,t),this.setHeight(e.height+t.height),this.outdated=e.outdated||t.outdated,this.size=e.size+t.size,this.length=e.length+this.break+t.length,this)}updateHeight(e,t=0,i=!1,r){let{left:s,right:o}=this,l=t+s.length+this.break,a=null;return r&&r.from<=t+s.length&&r.more?a=s=s.updateHeight(e,t,i,r):s.updateHeight(e,t,i),r&&r.from<=l+o.length&&r.more?a=o=o.updateHeight(e,l,i,r):o.updateHeight(e,l,i),a?this.balanced(s,o):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}};function Jd(n,e){let t,i;n[e]==null&&(t=n[e-1])instanceof Ln&&(i=n[e+1])instanceof Ln&&n.splice(e-1,3,new Ln(t.length+1+i.length))}var _y=5,Wa=class n{constructor(e,t){this.pos=e,this.oracle=t,this.nodes=[],this.lineStart=-1,this.lineEnd=-1,this.covering=null,this.writtenTo=e}get isCovered(){return this.covering&&this.nodes[this.nodes.length-1]==this.covering}span(e,t){if(this.lineStart>-1){let i=Math.min(t,this.lineEnd),r=this.nodes[this.nodes.length-1];r instanceof Ct?r.length+=i-this.pos:(i>this.pos||!this.isCovered)&&this.nodes.push(new Ct(i-this.pos,-1,0)),this.writtenTo=i,t>i&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=t}point(e,t,i){if(e<t||i.heightRelevant){let r=i.widget?i.widget.estimatedHeight:0,s=i.widget?i.widget.lineBreaks:0;r<0&&(r=this.oracle.lineHeight);let o=t-e;i.block?this.addBlock(new ho(o,r,i)):(o||s||r>=_y)&&this.addLineDeco(r,s,o)}else t>e&&this.span(e,t);this.lineEnd>-1&&this.lineEnd<this.pos&&(this.lineEnd=this.oracle.doc.lineAt(this.pos).to)}enterLine(){if(this.lineStart>-1)return;let{from:e,to:t}=this.oracle.doc.lineAt(this.pos);this.lineStart=e,this.lineEnd=t,this.writtenTo<e&&((this.writtenTo<e-1||this.nodes[this.nodes.length-1]==null)&&this.nodes.push(this.blankContent(this.writtenTo,e-1)),this.nodes.push(null)),this.pos>e&&this.nodes.push(new Ct(this.pos-e,-1,0)),this.writtenTo=this.pos}blankContent(e,t){let i=new Ln(t-e);return this.oracle.doc.lineAt(e).to==t&&(i.flags|=4),i}ensureLine(){this.enterLine();let e=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(e instanceof Ct)return e;let t=new Ct(0,-1,0);return this.nodes.push(t),t}addBlock(e){this.enterLine();let t=e.deco;t&&t.startSide>0&&!this.isCovered&&this.ensureLine(),this.nodes.push(e),this.writtenTo=this.pos=this.pos+e.length,t&&t.endSide>0&&(this.covering=e)}addLineDeco(e,t,i){let r=this.ensureLine();r.length+=i,r.collapsed+=i,r.widgetHeight=Math.max(r.widgetHeight,e),r.breaks+=t,this.writtenTo=this.pos=this.pos+i}finish(e){let t=this.nodes.length==0?null:this.nodes[this.nodes.length-1];this.lineStart>-1&&!(t instanceof Ct)&&!this.isCovered?this.nodes.push(new Ct(0,-1,0)):(this.writtenTo<this.pos||t==null)&&this.nodes.push(this.blankContent(this.writtenTo,this.pos));let i=e;for(let r of this.nodes)r instanceof Ct&&r.updateHeight(this.oracle,i),i+=r?r.length:1;return this.nodes}static build(e,t,i,r){let s=new n(i,e);return he.spans(t,i,r,s,0),s.finish(i)}};function Hy(n,e,t){let i=new Va;return he.compare(n,e,t,i,0),i.changes}var Va=class{constructor(){this.changes=[]}compareRange(){}comparePoint(e,t,i,r){(e<t||i&&i.heightRelevant||r&&r.heightRelevant)&&Fi(e,t,this.changes,5)}};function Fy(n,e){let t=n.getBoundingClientRect(),i=n.ownerDocument,r=i.defaultView||window,s=Math.max(0,t.left),o=Math.min(r.innerWidth,t.right),l=Math.max(0,t.top),a=Math.min(r.innerHeight,t.bottom);for(let c=n.parentNode;c&&c!=i.body;)if(c.nodeType==1){let h=c,u=window.getComputedStyle(h);if((h.scrollHeight>h.clientHeight||h.scrollWidth>h.clientWidth)&&u.overflow!="visible"){let d=h.getBoundingClientRect();s=Math.max(s,d.left),o=Math.min(o,d.right),l=Math.max(l,d.top),a=Math.min(c==n.parentNode?r.innerHeight:a,d.bottom)}c=u.position=="absolute"||u.position=="fixed"?h.offsetParent:h.parentNode}else if(c.nodeType==11)c=c.host;else break;return{left:s-t.left,right:Math.max(s,o)-t.left,top:l-(t.top+e),bottom:Math.max(l,a)-(t.top+e)}}function zy(n){let e=n.getBoundingClientRect(),t=n.ownerDocument.defaultView||window;return e.left<t.innerWidth&&e.right>0&&e.top<t.innerHeight&&e.bottom>0}function Wy(n,e){let t=n.getBoundingClientRect();return{left:0,right:t.right-t.left,top:e,bottom:t.bottom-(t.top+e)}}var Lr=class{constructor(e,t,i,r){this.from=e,this.to=t,this.size=i,this.displaySize=r}static same(e,t){if(e.length!=t.length)return!1;for(let i=0;i<e.length;i++){let r=e[i],s=t[i];if(r.from!=s.from||r.to!=s.to||r.size!=s.size)return!1}return!0}draw(e,t){return me.replace({widget:new $a(this.displaySize*(t?e.scaleY:e.scaleX),t)}).range(this.from,this.to)}},$a=class extends On{constructor(e,t){super(),this.size=e,this.vertical=t}eq(e){return e.size==this.size&&e.vertical==this.vertical}toDOM(){let e=document.createElement("div");return this.vertical?e.style.height=this.size+"px":(e.style.width=this.size+"px",e.style.height="2px",e.style.display="inline-block"),e}get estimatedHeight(){return this.vertical?this.size:-1}},uo=class{constructor(e,t){this.view=e,this.state=t,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.scaleX=1,this.scaleY=1,this.scrollOffset=0,this.scrolledToBottom=!1,this.scrollAnchorPos=0,this.scrollAnchorHeight=-1,this.scaler=Zd,this.scrollTarget=null,this.printing=!1,this.mustMeasureContent=!0,this.defaultTextDirection=ge.LTR,this.visibleRanges=[],this.mustEnforceCursorAssoc=!1;let i=t.facet(lc).some(r=>typeof r!="function"&&r.class=="cm-lineWrapping");this.heightOracle=new Ha(i),this.stateDeco=Qd(t),this.heightMap=gt.empty().applyChanges(this.stateDeco,te.empty,this.heightOracle.setDoc(t.doc),[new Nt(0,0,0,t.doc.length)]);for(let r=0;r<2&&(this.viewport=this.getViewport(0,null),!!this.updateForViewport());r++);this.updateViewportLines(),this.lineGaps=this.ensureLineGaps([]),this.lineGapDeco=me.set(this.lineGaps.map(r=>r.draw(this,!1))),this.scrollParent=e.scrollDOM,this.computeVisibleRanges()}updateForViewport(){let e=[this.viewport],{main:t}=this.state.selection;for(let i=0;i<=1;i++){let r=i?t.head:t.anchor;if(!e.some(({from:s,to:o})=>r>=s&&r<=o)){let{from:s,to:o}=this.lineBlockAt(r);e.push(new _i(s,o))}}return this.viewports=e.sort((i,r)=>i.from-r.from),this.updateScaler()}updateScaler(){let e=this.scaler;return this.scaler=this.heightMap.height<=7e6?Zd:new Ua(this.heightOracle,this.heightMap,this.viewports),e.eq(this.scaler)?0:2}updateViewportLines(){this.viewportLines=[],this.heightMap.forEachLine(this.viewport.from,this.viewport.to,this.heightOracle.setDoc(this.state.doc),0,0,e=>{this.viewportLines.push(kr(e,this.scaler))})}update(e,t=null){this.state=e.state;let i=this.stateDeco;this.stateDeco=Qd(this.state);let r=e.changedRanges,s=Nt.extendWithRanges(r,Hy(i,this.stateDeco,e?e.changes:Qe.empty(this.state.doc.length))),o=this.heightMap.height,l=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollOffset);Yd(),this.heightMap=this.heightMap.applyChanges(this.stateDeco,e.startState.doc,this.heightOracle.setDoc(this.state.doc),s),(this.heightMap.height!=o||Ki)&&(e.flags|=2),l?(this.scrollAnchorPos=e.changes.mapPos(l.from,-1),this.scrollAnchorHeight=l.top):(this.scrollAnchorPos=-1,this.scrollAnchorHeight=o);let a=s.length?this.mapViewport(this.viewport,e.changes):this.viewport;(t&&(t.range.head<a.from||t.range.head>a.to)||!this.viewportIsAppropriate(a))&&(a=this.getViewport(0,t));let c=a.from!=this.viewport.from||a.to!=this.viewport.to;this.viewport=a,e.flags|=this.updateForViewport(),(c||!e.changes.empty||e.flags&2)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps,e.changes))),e.flags|=this.computeVisibleRanges(e.changes),t&&(this.scrollTarget=t),!this.mustEnforceCursorAssoc&&(e.selectionSet||e.focusChanged)&&e.view.lineWrapping&&e.state.selection.main.empty&&e.state.selection.main.assoc&&!e.state.facet(Of)&&(this.mustEnforceCursorAssoc=!0)}measure(){let{view:e}=this,t=e.contentDOM,i=window.getComputedStyle(t),r=this.heightOracle,s=i.whiteSpace;this.defaultTextDirection=i.direction=="rtl"?ge.RTL:ge.LTR;let o=this.heightOracle.mustRefreshForWrapping(s)||this.mustMeasureContent==="refresh",l=t.getBoundingClientRect(),a=o||this.mustMeasureContent||this.contentDOMHeight!=l.height;this.contentDOMHeight=l.height,this.mustMeasureContent=!1;let c=0,h=0;if(l.width&&l.height){let{scaleX:S,scaleY:A}=df(t,l);(S>.005&&Math.abs(this.scaleX-S)>.005||A>.005&&Math.abs(this.scaleY-A)>.005)&&(this.scaleX=S,this.scaleY=A,c|=16,o=a=!0)}let u=(parseInt(i.paddingTop)||0)*this.scaleY,d=(parseInt(i.paddingBottom)||0)*this.scaleY;(this.paddingTop!=u||this.paddingBottom!=d)&&(this.paddingTop=u,this.paddingBottom=d,c|=18),this.editorWidth!=e.scrollDOM.clientWidth&&(r.lineWrapping&&(a=!0),this.editorWidth=e.scrollDOM.clientWidth,c|=16);let f=ff(this.view.contentDOM,!1).y;f!=this.scrollParent&&(this.scrollParent=f,this.scrollAnchorHeight=-1,this.scrollOffset=0);let p=this.getScrollOffset();this.scrollOffset!=p&&(this.scrollAnchorHeight=-1,this.scrollOffset=p),this.scrolledToBottom=bf(this.scrollParent||e.win);let g=(this.printing?Wy:Fy)(t,this.paddingTop),b=g.top-this.pixelViewport.top,y=g.bottom-this.pixelViewport.bottom;this.pixelViewport=g;let x=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if(x!=this.inView&&(this.inView=x,x&&(a=!0)),!this.inView&&!this.scrollTarget&&!zy(e.dom))return 0;let C=l.width;if((this.contentDOMWidth!=C||this.editorHeight!=e.scrollDOM.clientHeight)&&(this.contentDOMWidth=l.width,this.editorHeight=e.scrollDOM.clientHeight,c|=16),a){let S=e.docView.measureVisibleLineHeights(this.viewport);if(r.mustRefreshForHeights(S)&&(o=!0),o||r.lineWrapping&&Math.abs(C-this.contentDOMWidth)>r.charWidth){let{lineHeight:A,charWidth:v,textHeight:_}=e.docView.measureTextSize();o=A>0&&r.refresh(s,A,v,_,Math.max(5,C/v),S),o&&(e.docView.minWidth=0,c|=16)}b>0&&y>0?h=Math.max(b,y):b<0&&y<0&&(h=Math.min(b,y)),Yd();for(let A of this.viewports){let v=A.from==this.viewport.from?S:e.docView.measureVisibleLineHeights(A);this.heightMap=(o?gt.empty().applyChanges(this.stateDeco,te.empty,this.heightOracle,[new Nt(0,0,0,e.state.doc.length)]):this.heightMap).updateHeight(r,0,o,new Fa(A.from,v))}Ki&&(c|=2)}let H=!this.viewportIsAppropriate(this.viewport,h)||this.scrollTarget&&(this.scrollTarget.range.head<this.viewport.from||this.scrollTarget.range.head>this.viewport.to);return H&&(c&2&&(c|=this.updateScaler()),this.viewport=this.getViewport(h,this.scrollTarget),c|=this.updateForViewport()),(c&2||H)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(o?[]:this.lineGaps,e)),c|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,e.docView.enforceCursorAssoc()),c}get visibleTop(){return this.scaler.fromDOM(this.pixelViewport.top)}get visibleBottom(){return this.scaler.fromDOM(this.pixelViewport.bottom)}getViewport(e,t){let i=.5-Math.max(-.5,Math.min(.5,e/1e3/2)),r=this.heightMap,s=this.heightOracle,{visibleTop:o,visibleBottom:l}=this,a=new _i(r.lineAt(o-i*1e3,pe.ByHeight,s,0,0).from,r.lineAt(l+(1-i)*1e3,pe.ByHeight,s,0,0).to);if(t){let{head:c}=t.range;if(c<a.from||c>a.to){let h=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),u=r.lineAt(c,pe.ByPos,s,0,0),d;t.y=="center"?d=(u.top+u.bottom)/2-h/2:t.y=="start"||t.y=="nearest"&&c<a.from?d=u.top:d=u.bottom-h,a=new _i(r.lineAt(d-1e3/2,pe.ByHeight,s,0,0).from,r.lineAt(d+h+1e3/2,pe.ByHeight,s,0,0).to)}}return a}mapViewport(e,t){let i=t.mapPos(e.from,-1),r=t.mapPos(e.to,1);return new _i(this.heightMap.lineAt(i,pe.ByPos,this.heightOracle,0,0).from,this.heightMap.lineAt(r,pe.ByPos,this.heightOracle,0,0).to)}viewportIsAppropriate({from:e,to:t},i=0){if(!this.inView)return!0;let{top:r}=this.heightMap.lineAt(e,pe.ByPos,this.heightOracle,0,0),{bottom:s}=this.heightMap.lineAt(t,pe.ByPos,this.heightOracle,0,0),{visibleTop:o,visibleBottom:l}=this;return(e==0||r<=o-Math.max(10,Math.min(-i,250)))&&(t==this.state.doc.length||s>=l+Math.max(10,Math.min(i,250)))&&r>o-2*1e3&&s<l+2*1e3}mapLineGaps(e,t){if(!e.length||t.empty)return e;let i=[];for(let r of e)t.touchesRange(r.from,r.to)||i.push(new Lr(t.mapPos(r.from),t.mapPos(r.to),r.size,r.displaySize));return i}ensureLineGaps(e,t){let i=this.heightOracle.lineWrapping,r=i?1e4:2e3,s=r>>1,o=r<<1;if(this.defaultTextDirection!=ge.LTR&&!i)return[];let l=[],a=(h,u,d,f)=>{if(u-h<s)return;let p=this.state.selection.main,g=[p.from];p.empty||g.push(p.to);for(let y of g)if(y>h&&y<u){a(h,y-10,d,f),a(y+10,u,d,f);return}let b=$y(e,y=>y.from>=d.from&&y.to<=d.to&&Math.abs(y.from-h)<s&&Math.abs(y.to-u)<s&&!g.some(x=>y.from<x&&y.to>x));if(!b){if(u<d.to&&t&&i&&t.visibleRanges.some(C=>C.from<=u&&C.to>=u)){let C=t.moveToLineBoundary(D.cursor(u),!1,!0).head;C>h&&(u=C)}let y=this.gapSize(d,h,u,f),x=i||y<2e6?y:2e6;b=new Lr(h,u,y,x)}l.push(b)},c=h=>{if(h.length<o||h.type!=Ve.Text)return;let u=Vy(h.from,h.to,this.stateDeco);if(u.total<o)return;let d=this.scrollTarget?this.scrollTarget.range.head:null,f,p;if(i){let g=r/this.heightOracle.lineLength*this.heightOracle.lineHeight,b,y;if(d!=null){let x=qs(u,d),C=((this.visibleBottom-this.visibleTop)/2+g)/h.height;b=x-C,y=x+C}else b=(this.visibleTop-h.top-g)/h.height,y=(this.visibleBottom-h.top+g)/h.height;f=Gs(u,b),p=Gs(u,y)}else{let g=u.total*this.heightOracle.charWidth,b=r*this.heightOracle.charWidth,y=0;if(g>2e6)for(let A of e)A.from>=h.from&&A.from<h.to&&A.size!=A.displaySize&&A.from*this.heightOracle.charWidth+y<this.pixelViewport.left&&(y=A.size-A.displaySize);let x=this.pixelViewport.left+y,C=this.pixelViewport.right+y,H,S;if(d!=null){let A=qs(u,d),v=((C-x)/2+b)/g;H=A-v,S=A+v}else H=(x-b)/g,S=(C+b)/g;f=Gs(u,H),p=Gs(u,S)}f>h.from&&a(h.from,f,h,u),p<h.to&&a(p,h.to,h,u)};for(let h of this.viewportLines)Array.isArray(h.type)?h.type.forEach(c):c(h);return l}gapSize(e,t,i,r){let s=qs(r,i)-qs(r,t);return this.heightOracle.lineWrapping?e.height*s:r.total*this.heightOracle.charWidth*s}updateLineGaps(e){Lr.same(e,this.lineGaps)||(this.lineGaps=e,this.lineGapDeco=me.set(e.map(t=>t.draw(this,this.heightOracle.lineWrapping))))}computeVisibleRanges(e){let t=this.stateDeco;this.lineGaps.length&&(t=t.concat(this.lineGapDeco));let i=[];he.spans(t,this.viewport.from,this.viewport.to,{span(s,o){i.push({from:s,to:o})},point(){}},20);let r=0;if(i.length!=this.visibleRanges.length)r=12;else for(let s=0;s<i.length&&!(r&8);s++){let o=this.visibleRanges[s],l=i[s];(o.from!=l.from||o.to!=l.to)&&(r|=4,e&&e.mapPos(o.from,-1)==l.from&&e.mapPos(o.to,1)==l.to||(r|=8))}return this.visibleRanges=i,r}lineBlockAt(e){return e>=this.viewport.from&&e<=this.viewport.to&&this.viewportLines.find(t=>t.from<=e&&t.to>=e)||kr(this.heightMap.lineAt(e,pe.ByPos,this.heightOracle,0,0),this.scaler)}lineBlockAtHeight(e){return e>=this.viewportLines[0].top&&e<=this.viewportLines[this.viewportLines.length-1].bottom&&this.viewportLines.find(t=>t.top<=e&&t.bottom>=e)||kr(this.heightMap.lineAt(this.scaler.fromDOM(e),pe.ByHeight,this.heightOracle,0,0),this.scaler)}getScrollOffset(){return this.scrollParent==this.view.scrollDOM?this.scrollParent.scrollTop*this.scaleY:(this.scrollParent?this.scrollParent.getBoundingClientRect().top:0)-this.view.contentDOM.getBoundingClientRect().top}scrollAnchorAt(e){let t=this.lineBlockAtHeight(e+8);return t.from>=this.viewport.from||this.viewportLines[0].top-e>200?t:this.viewportLines[0]}elementAtHeight(e){return kr(this.heightMap.blockAt(this.scaler.fromDOM(e),this.heightOracle,0,0),this.scaler)}get docHeight(){return this.scaler.toDOM(this.heightMap.height)}get contentHeight(){return this.docHeight+this.paddingTop+this.paddingBottom}},_i=class{constructor(e,t){this.from=e,this.to=t}};function Vy(n,e,t){let i=[],r=n,s=0;return he.spans(t,n,e,{span(){},point(o,l){o>r&&(i.push({from:r,to:o}),s+=o-r),r=l}},20),r<e&&(i.push({from:r,to:e}),s+=e-r),{total:s,ranges:i}}function Gs({total:n,ranges:e},t){if(t<=0)return e[0].from;if(t>=1)return e[e.length-1].to;let i=Math.floor(n*t);for(let r=0;;r++){let{from:s,to:o}=e[r],l=o-s;if(i<=l)return s+i;i-=l}}function qs(n,e){let t=0;for(let{from:i,to:r}of n.ranges){if(e<=r){t+=e-i;break}t+=r-i}return t/n.total}function $y(n,e){for(let t of n)if(e(t))return t}var Zd={toDOM(n){return n},fromDOM(n){return n},scale:1,eq(n){return n==this}};function Qd(n){let e=n.facet(bo).filter(i=>typeof i!="function"),t=n.facet(ac).filter(i=>typeof i!="function");return t.length&&e.push(he.join(t)),e}var Ua=class n{constructor(e,t,i){let r=0,s=0,o=0;this.viewports=i.map(({from:l,to:a})=>{let c=t.lineAt(l,pe.ByPos,e,0,0).top,h=t.lineAt(a,pe.ByPos,e,0,0).bottom;return r+=h-c,{from:l,to:a,top:c,bottom:h,domTop:0,domBottom:0}}),this.scale=(7e6-r)/(t.height-r);for(let l of this.viewports)l.domTop=o+(l.top-s)*this.scale,o=l.domBottom=l.domTop+(l.bottom-l.top),s=l.bottom}toDOM(e){for(let t=0,i=0,r=0;;t++){let s=t<this.viewports.length?this.viewports[t]:null;if(!s||e<s.top)return r+(e-i)*this.scale;if(e<=s.bottom)return s.domTop+(e-s.top);i=s.bottom,r=s.domBottom}}fromDOM(e){for(let t=0,i=0,r=0;;t++){let s=t<this.viewports.length?this.viewports[t]:null;if(!s||e<s.domTop)return i+(e-r)/this.scale;if(e<=s.domBottom)return s.top+(e-s.domTop);i=s.bottom,r=s.domBottom}}eq(e){return e instanceof n?this.scale==e.scale&&this.viewports.length==e.viewports.length&&this.viewports.every((t,i)=>t.from==e.viewports[i].from&&t.to==e.viewports[i].to):!1}};function kr(n,e){if(e.scale==1)return n;let t=e.toDOM(n.top),i=e.toDOM(n.bottom);return new Pt(n.from,n.length,t,i-t,Array.isArray(n._content)?n._content.map(r=>kr(r,e)):n._content)}var Xs=$.define({combine:n=>n.join(" ")}),Ka=$.define({combine:n=>n.indexOf(!0)>-1}),ja=St.newName(),ep=St.newName(),tp=St.newName(),np={"&light":"."+ep,"&dark":"."+tp};function Ga(n,e,t){return new St(e,{finish(i){return/&/.test(i)?i.replace(/&\w*/,r=>{if(r=="&")return n;if(!t||!t[r])throw new RangeError(`Unsupported selector: ${r}`);return t[r]}):n+" "+i}})}var Uy=Ga("."+ja,{"&":{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":{userSelect:"none",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-selectionHandle":{backgroundColor:"currentColor",width:"1.5px"},".cm-selectionHandle-start::before, .cm-selectionHandle-end::before":{content:'""',backgroundColor:"inherit",borderRadius:"50%",width:"8px",height:"8px",position:"absolute",left:"-3.25px"},".cm-selectionHandle-start::before":{top:"-8px"},".cm-selectionHandle-end::before":{bottom:"-8px"},".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"},".cm-panels-top":{top:"0"},".cm-panels-bottom":{bottom:"0"},"&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":{background:"radial-gradient(circle at 50% 55%, #aaa 20%, transparent 0) no-repeat",backgroundSize:".4em",backgroundPosition:"calc(min(50%, 0px)) 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"}},np),Ky={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},ha=O.ie&&O.ie_version<=11,qa=class{constructor(e){this.view=e,this.active=!1,this.editContext=null,this.selectionRange=new ba,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=e.contentDOM,this.observer=new MutationObserver(t=>{for(let i of t)this.queue.push(i);(O.ie&&O.ie_version<=11||O.ios&&e.composing)&&t.some(i=>i.type=="childList"&&i.removedNodes.length||i.type=="characterData"&&i.oldValue.length>i.target.nodeValue.length)?this.flushSoon():this.flush()}),window.EditContext&&O.android&&e.constructor.EDIT_CONTEXT!==!1&&!(O.chrome&&O.chrome_version<126)&&(this.editContext=new Xa(e),e.state.facet(mn)&&(e.contentDOM.editContext=this.editContext.editContext)),ha&&(this.onCharData=t=>{this.queue.push({target:t.target,type:"characterData",oldValue:t.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")),typeof ResizeObserver=="function"&&(this.resizeScroll=new ResizeObserver(()=>{var t;((t=this.view.docView)===null||t===void 0?void 0:t.lastUpdate)<Date.now()-75&&this.onResize()}),this.resizeScroll.observe(e.scrollDOM)),this.addWindowListeners(this.win=e.win),this.start(),typeof IntersectionObserver=="function"&&(this.intersection=new IntersectionObserver(t=>{this.parentCheck<0&&(this.parentCheck=setTimeout(this.listenForScroll.bind(this),1e3)),t.length>0&&t[t.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(t=>{t.length>0&&t[t.length-1].intersectionRatio>0&&this.onScrollChanged(document.createEvent("Event"))},{})),this.listenForScroll(),this.readSelectionRange()}onScrollChanged(e){this.view.inputState.runHandlers("scroll",e),this.intersecting&&this.view.measure()}onScroll(e){this.intersecting&&this.flush(!1),this.editContext&&this.view.requestMeasure(this.editContext.measureReq),this.onScrollChanged(e)}onResize(){this.resizeTimeout<0&&(this.resizeTimeout=setTimeout(()=>{this.resizeTimeout=-1,this.view.requestMeasure()},50))}onPrint(e){(e.type=="change"||!e.type)&&!e.matches||(this.view.viewState.printing=!0,this.view.measure(),setTimeout(()=>{this.view.viewState.printing=!1,this.view.requestMeasure()},500))}updateGaps(e){if(this.gapIntersection&&(e.length!=this.gaps.length||this.gaps.some((t,i)=>t!=e[i]))){this.gapIntersection.disconnect();for(let t of e)this.gapIntersection.observe(t);this.gaps=e}}onSelectionChange(e){let t=this.selectionChanged;if(!this.readSelectionRange()||this.delayedAndroidKey)return;let{view:i}=this,r=this.selectionRange;if(i.state.facet(mn)?i.root.activeElement!=this.dom:!Cr(this.dom,r))return;let s=r.anchorNode&&i.docView.tile.nearest(r.anchorNode);if(s&&s.isWidget()&&s.widget.ignoreEvent(e)){t||(this.selectionChanged=!1);return}(O.ie&&O.ie_version<=11||O.android&&O.chrome)&&!i.state.selection.main.empty&&r.focusNode&&Ar(r.focusNode,r.focusOffset,r.anchorNode,r.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:e}=this,t=Nr(e.root);if(!t)return!1;let i=O.safari&&e.root.nodeType==11&&e.root.activeElement==this.dom&&jy(this.view,t)||t;if(!i||this.selectionRange.eq(i))return!1;let r=Cr(this.dom,i);return r&&!this.selectionChanged&&e.inputState.lastFocusTime>Date.now()-200&&e.inputState.lastTouchTime<Date.now()-300&&zb(this.dom,i)?(this.view.inputState.lastFocusTime=0,e.docView.updateSelection(),!1):(this.selectionRange.setRange(i),r&&(this.selectionChanged=!0),!0)}setSelectionRange(e,t){this.selectionRange.set(e.node,e.offset,t.node,t.offset),this.selectionChanged=!1}clearSelectionRange(){this.selectionRange.set(null,0,null,0)}listenForScroll(){this.parentCheck=-1;let e=0,t=null;for(let i=this.dom;i;)if(i.nodeType==1)!t&&e<this.scrollTargets.length&&this.scrollTargets[e]==i?e++:t||(t=this.scrollTargets.slice(0,e)),t&&t.push(i),i=i.assignedSlot||i.parentNode;else if(i.nodeType==11)i=i.host;else break;if(e<this.scrollTargets.length&&!t&&(t=this.scrollTargets.slice(0,e)),t){for(let i of this.scrollTargets)i.removeEventListener("scroll",this.onScroll);for(let i of this.scrollTargets=t)i.addEventListener("scroll",this.onScroll)}}ignore(e){if(!this.active)return e();try{return this.stop(),e()}finally{this.start(),this.clear()}}start(){this.active||(this.observer.observe(this.dom,Ky),ha&&this.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.active=!0)}stop(){this.active&&(this.active=!1,this.observer.disconnect(),ha&&this.dom.removeEventListener("DOMCharacterDataModified",this.onCharData))}clear(){this.processRecords(),this.queue.length=0,this.selectionChanged=!1}delayAndroidKey(e,t){var i;if(!this.delayedAndroidKey){let r=()=>{let s=this.delayedAndroidKey;s&&(this.clearDelayedAndroidKey(),this.view.inputState.lastKeyCode=s.keyCode,this.view.inputState.lastKeyTime=Date.now(),!this.flush()&&s.force&&zi(this.dom,s.key,s.keyCode))};this.flushingAndroidKey=this.view.win.requestAnimationFrame(r)}(!this.delayedAndroidKey||e=="Enter")&&(this.delayedAndroidKey={key:e,keyCode:t,force:this.lastChange<Date.now()-50||!!(!((i=this.delayedAndroidKey)===null||i===void 0)&&i.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 e of this.observer.takeRecords())this.queue.push(e);return this.queue}processRecords(){let e=this.pendingRecords();e.length&&(this.queue=[]);let t=-1,i=-1,r=!1;for(let s of e){let o=this.readMutation(s);o&&(o.typeOver&&(r=!0),t==-1?{from:t,to:i}=o:(t=Math.min(o.from,t),i=Math.max(o.to,i)))}return{from:t,to:i,typeOver:r}}readChange(){let{from:e,to:t,typeOver:i}=this.processRecords(),r=this.selectionChanged&&Cr(this.dom,this.selectionRange);if(e<0&&!r)return null;e>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1;let s=new Ia(this.view,e,t,i);return this.view.docView.domChanged={newSel:s.newSel?s.newSel.main:null},s}flush(e=!0){if(this.delayedFlush>=0||this.delayedAndroidKey)return!1;e&&this.readSelectionRange();let t=this.readChange();if(!t)return this.view.requestMeasure(),!1;let i=this.view.state,r=Uf(this.view,t);return this.view.state==i&&(t.domChanged||t.newSel&&!ao(this.view.state.selection,t.newSel.main))&&this.view.update([]),r}readMutation(e){let t=this.view.docView.tile.nearest(e.target);if(!t||t.isWidget())return null;if(t.markDirty(e.type=="attributes"),e.type=="childList"){let i=ef(t,e.previousSibling||e.target.previousSibling,-1),r=ef(t,e.nextSibling||e.target.nextSibling,1);return{from:i?t.posAfter(i):t.posAtStart,to:r?t.posBefore(r):t.posAtEnd,typeOver:!1}}else return e.type=="characterData"?{from:t.posAtStart,to:t.posAtEnd,typeOver:e.target.nodeValue==e.oldValue}:null}setWindow(e){e!=this.win&&(this.removeWindowListeners(this.win),this.win=e,this.addWindowListeners(this.win))}addWindowListeners(e){e.addEventListener("resize",this.onResize),this.printQuery?this.printQuery.addEventListener?this.printQuery.addEventListener("change",this.onPrint):this.printQuery.addListener(this.onPrint):e.addEventListener("beforeprint",this.onPrint),e.addEventListener("scroll",this.onScroll),e.document.addEventListener("selectionchange",this.onSelectionChange)}removeWindowListeners(e){e.removeEventListener("scroll",this.onScroll),e.removeEventListener("resize",this.onResize),this.printQuery?this.printQuery.removeEventListener?this.printQuery.removeEventListener("change",this.onPrint):this.printQuery.removeListener(this.onPrint):e.removeEventListener("beforeprint",this.onPrint),e.document.removeEventListener("selectionchange",this.onSelectionChange)}update(e){this.editContext&&(this.editContext.update(e),e.startState.facet(mn)!=e.state.facet(mn)&&(e.view.contentDOM.editContext=e.state.facet(mn)?this.editContext.editContext:null))}destroy(){var e,t,i;this.stop(),(e=this.intersection)===null||e===void 0||e.disconnect(),(t=this.gapIntersection)===null||t===void 0||t.disconnect(),(i=this.resizeScroll)===null||i===void 0||i.disconnect();for(let r of this.scrollTargets)r.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 ef(n,e,t){for(;e;){let i=Se.get(e);if(i&&i.parent==n)return i;let r=e.parentNode;e=r!=n.dom?r:t>0?e.nextSibling:e.previousSibling}return null}function tf(n,e){let t=e.startContainer,i=e.startOffset,r=e.endContainer,s=e.endOffset,o=n.docView.domAtPos(n.state.selection.main.anchor,1);return Ar(o.node,o.offset,r,s)&&([t,i,r,s]=[r,s,t,i]),{anchorNode:t,anchorOffset:i,focusNode:r,focusOffset:s}}function jy(n,e){if(e.getComposedRanges){let r=e.getComposedRanges(n.root)[0];if(r)return tf(n,r)}let t=null;function i(r){r.preventDefault(),r.stopImmediatePropagation(),t=r.getTargetRanges()[0]}return n.contentDOM.addEventListener("beforeinput",i,!0),n.dom.ownerDocument.execCommand("indent"),n.contentDOM.removeEventListener("beforeinput",i,!0),t?tf(n,t):null}var Xa=class{constructor(e){this.from=0,this.to=0,this.pendingContextChange=null,this.handlers=Object.create(null),this.composing=null,this.resetRange(e.state);let t=this.editContext=new window.EditContext({text:e.state.doc.sliceString(this.from,this.to),selectionStart:this.toContextPos(Math.max(this.from,Math.min(this.to,e.state.selection.main.anchor))),selectionEnd:this.toContextPos(e.state.selection.main.head)});this.handlers.textupdate=i=>{let r=e.state.selection.main,{anchor:s,head:o}=r,l=this.toEditorPos(i.updateRangeStart),a=this.toEditorPos(i.updateRangeEnd);e.inputState.composing>=0&&!this.composing&&(this.composing={contextBase:i.updateRangeStart,editorBase:l,drifted:!1});let c=a-l>i.text.length;l==this.from&&s<this.from?l=s:a==this.to&&s>this.to&&(a=s);let h=Kf(e.state.sliceDoc(l,a),i.text,(c?r.from:r.to)-l,c?"end":null);if(!h){let d=D.single(this.toEditorPos(i.selectionStart),this.toEditorPos(i.selectionEnd));ao(d,r)||e.dispatch({selection:d,userEvent:"select"});return}let u={from:h.from+l,to:h.toA+l,insert:te.of(i.text.slice(h.from,h.toB).split(`
589
- `))};if((O.mac||O.android)&&u.from==o-1&&/^\. ?$/.test(i.text)&&e.contentDOM.getAttribute("autocorrect")=="off"&&(u={from:l,to:a,insert:te.of([i.text.replace("."," ")])}),this.pendingContextChange=u,!e.state.readOnly){let d=this.to-this.from+(u.to-u.from+u.insert.length);cc(e,u,D.single(this.toEditorPos(i.selectionStart,d),this.toEditorPos(i.selectionEnd,d)))}this.pendingContextChange&&(this.revertPending(e.state),this.setSelection(e.state)),u.from<u.to&&!u.insert.length&&e.inputState.composing>=0&&!/[\\p{Alphabetic}\\p{Number}_]/.test(t.text.slice(Math.max(0,i.updateRangeStart-1),Math.min(t.text.length,i.updateRangeStart+1)))&&this.handlers.compositionend(i)},this.handlers.characterboundsupdate=i=>{let r=[],s=null;for(let o=this.toEditorPos(i.rangeStart),l=this.toEditorPos(i.rangeEnd);o<l;o++){let a=e.coordsForChar(o);s=a&&new DOMRect(a.left,a.top,a.right-a.left,a.bottom-a.top)||s||new DOMRect,r.push(s)}t.updateCharacterBounds(i.rangeStart,r)},this.handlers.textformatupdate=i=>{let r=[];for(let s of i.getTextFormats()){let o=s.underlineStyle,l=s.underlineThickness;if(!/none/i.test(o)&&!/none/i.test(l)){let a=this.toEditorPos(s.rangeStart),c=this.toEditorPos(s.rangeEnd);if(a<c){let h=`text-decoration: underline ${/^[a-z]/.test(o)?o+" ":o=="Dashed"?"dashed ":o=="Squiggle"?"wavy ":""}${/thin/i.test(l)?1:2}px`;r.push(me.mark({attributes:{style:h}}).range(a,c))}}}e.dispatch({effects:If.of(me.set(r))})},this.handlers.compositionstart=()=>{e.inputState.composing<0&&(e.inputState.composing=0,e.inputState.compositionFirstChange=!0)},this.handlers.compositionend=()=>{if(e.inputState.composing=-1,e.inputState.compositionFirstChange=null,this.composing){let{drifted:i}=this.composing;this.composing=null,i&&this.reset(e.state)}};for(let i in this.handlers)t.addEventListener(i,this.handlers[i]);this.measureReq={read:i=>{let r=Nr(i.root);r&&r.rangeCount&&this.editContext.updateSelectionBounds(r.getRangeAt(0).getBoundingClientRect())}}}applyEdits(e){let t=0,i=!1,r=this.pendingContextChange;return e.changes.iterChanges((s,o,l,a,c)=>{if(i)return;let h=c.length-(o-s);if(r&&o>=r.to)if(r.from==s&&r.to==o&&r.insert.eq(c)){r=this.pendingContextChange=null,t+=h,this.to+=h;return}else r=null,this.revertPending(e.state);if(s+=t,o+=t,o<=this.from)this.from+=h,this.to+=h;else if(s<this.to){if(s<this.from||o>this.to||this.to-this.from+c.length>3e4){i=!0;return}this.editContext.updateText(this.toContextPos(s),this.toContextPos(o),c.toString()),this.to+=h}t+=h}),r&&!i&&this.revertPending(e.state),!i}update(e){let t=this.pendingContextChange,i=e.startState.selection.main;this.composing&&(this.composing.drifted||!e.changes.touchesRange(i.from,i.to)&&e.transactions.some(r=>!r.isUserEvent("input.type")&&r.changes.touchesRange(this.from,this.to)))?(this.composing.drifted=!0,this.composing.editorBase=e.changes.mapPos(this.composing.editorBase)):!this.applyEdits(e)||!this.rangeIsValid(e.state)?(this.pendingContextChange=null,this.reset(e.state)):(e.docChanged||e.selectionSet||t)&&this.setSelection(e.state),(e.geometryChanged||e.docChanged||e.selectionSet)&&e.view.requestMeasure(this.measureReq)}resetRange(e){let{head:t}=e.selection.main;this.from=Math.max(0,t-1e4),this.to=Math.min(e.doc.length,t+1e4)}reset(e){this.resetRange(e),this.editContext.updateText(0,this.editContext.text.length,e.doc.sliceString(this.from,this.to)),this.setSelection(e)}revertPending(e){let t=this.pendingContextChange;this.pendingContextChange=null,this.editContext.updateText(this.toContextPos(t.from),this.toContextPos(t.from+t.insert.length),e.doc.sliceString(t.from,t.to))}setSelection(e){let{main:t}=e.selection,i=this.toContextPos(Math.max(this.from,Math.min(this.to,t.anchor))),r=this.toContextPos(t.head);(this.editContext.selectionStart!=i||this.editContext.selectionEnd!=r)&&this.editContext.updateSelection(i,r)}rangeIsValid(e){let{head:t}=e.selection.main;return!(this.from>0&&t-this.from<500||this.to<e.doc.length&&this.to-t<500||this.to-this.from>1e4*3)}toEditorPos(e,t=this.to-this.from){e=Math.min(e,t);let i=this.composing;return i&&i.drifted?i.editorBase+(e-i.contextBase):e+this.from}toContextPos(e){let t=this.composing;return t&&t.drifted?t.contextBase+(e-t.editorBase):e-this.from}destroy(){for(let e in this.handlers)this.editContext.removeEventListener(e,this.handlers[e])}},j=class n{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(e={}){var t;this.plugins=[],this.pluginMap=new Map,this.editorAttrs={},this.contentAttrs={},this.bidiCache=[],this.destroyed=!1,this.updateState=2,this.measureScheduled=-1,this.measureRequests=[],this.clearAnnouncement=-1,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),e.parent&&e.parent.appendChild(this.dom);let{dispatch:i}=e;this.dispatchTransactions=e.dispatchTransactions||i&&(r=>r.forEach(s=>i(s,this)))||(r=>this.update(r)),this.dispatch=this.dispatch.bind(this),this._root=e.root||Fb(e.parent)||document,this.viewState=new uo(this,e.state||ke.create(e)),e.scrollTo&&e.scrollTo.is(Us)&&(this.viewState.scrollTarget=e.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(Bi).map(r=>new Er(r));for(let r of this.plugins)r.update(this);this.observer=new qa(this),this.inputState=new Na(this),this.inputState.ensureHandlers(this.plugins),this.docView=new oo(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,this.requestMeasure(),!((t=document.fonts)===null||t===void 0)&&t.ready&&document.fonts.ready.then(()=>{this.viewState.mustMeasureContent="refresh",this.requestMeasure()})}dispatch(...e){let t=e.length==1&&e[0]instanceof Le?e:e.length==1&&Array.isArray(e[0])?e[0]:[this.state.update(...e)];this.dispatchTransactions(t,this)}update(e){if(this.updateState!=0)throw new Error("Calls to EditorView.update are not allowed while an update is in progress");let t=!1,i=!1,r,s=this.state;for(let d of e){if(d.startState!=s)throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state.");s=d.state}if(this.destroyed){this.viewState.state=s;return}let o=this.hasFocus,l=0,a=null;e.some(d=>d.annotation(Jf))?(this.inputState.notifiedFocused=o,l=1):o!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=o,a=Zf(s,o),a||(l=1));let c=this.observer.delayedAndroidKey,h=null;if(c?(this.observer.clearDelayedAndroidKey(),h=this.observer.readChange(),(h&&!this.state.doc.eq(s.doc)||!this.state.selection.eq(s.selection))&&(h=null)):this.observer.clear(),s.facet(ke.phrases)!=this.state.facet(ke.phrases))return this.setState(s);r=ro.create(this,s,e),r.flags|=l;let u=this.viewState.scrollTarget;try{this.updateState=2;for(let d of e){if(u&&(u=u.map(d.changes)),d.scrollIntoView){let{main:f}=d.state.selection,{x:p,y:g}=this.state.facet(n.cursorScrollMargin);u=new Mr(f.empty?f:D.cursor(f.head,f.head>f.anchor?-1:1),"nearest","nearest",g,p)}for(let f of d.effects)f.is(Us)&&(u=f.value.clip(this.state))}this.viewState.update(r,u),this.bidiCache=fo.update(this.bidiCache,r.changes),r.empty||(this.updatePlugins(r),this.inputState.update(r)),t=this.docView.update(r),this.state.facet(vr)!=this.styleModules&&this.mountStyles(),i=this.updateAttrs(),this.showAnnouncements(e),this.docView.updateSelection(t,e.some(d=>d.isUserEvent("select.pointer")))}finally{this.updateState=0}if(r.startState.facet(Xs)!=r.state.facet(Xs)&&(this.viewState.mustMeasureContent=!0),(t||i||u||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),t&&this.docViewUpdate(),!r.empty)for(let d of this.state.facet(va))try{d(r)}catch(f){It(this.state,f,"update listener")}(a||h)&&Promise.resolve().then(()=>{a&&this.state==a.startState&&this.dispatch(a),h&&!Uf(this,h)&&c.force&&zi(this.contentDOM,c.key,c.keyCode)})}setState(e){if(this.updateState!=0)throw new Error("Calls to EditorView.setState are not allowed while an update is in progress");if(this.destroyed){this.viewState.state=e;return}this.updateState=2;let t=this.hasFocus;try{for(let i of this.plugins)i.destroy(this);this.viewState=new uo(this,e),this.plugins=e.facet(Bi).map(i=>new Er(i)),this.pluginMap.clear();for(let i of this.plugins)i.update(this);this.docView.destroy(),this.docView=new oo(this),this.inputState.ensureHandlers(this.plugins),this.mountStyles(),this.updateAttrs(),this.bidiCache=[]}finally{this.updateState=0}t&&this.focus(),this.requestMeasure()}updatePlugins(e){let t=e.startState.facet(Bi),i=e.state.facet(Bi);if(t!=i){let r=[];for(let s of i){let o=t.indexOf(s);if(o<0)r.push(new Er(s));else{let l=this.plugins[o];l.mustUpdate=e,r.push(l)}}for(let s of this.plugins)s.mustUpdate!=e&&s.destroy(this);this.plugins=r,this.pluginMap.clear()}else for(let r of this.plugins)r.mustUpdate=e;for(let r=0;r<this.plugins.length;r++)this.plugins[r].update(this);t!=i&&this.inputState.ensureHandlers(this.plugins)}docViewUpdate(){for(let e of this.plugins){let t=e.value;if(t&&t.docViewUpdate)try{t.docViewUpdate(this)}catch(i){It(this.state,i,"doc view update listener")}}}measure(e=!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,e&&this.observer.forceFlush();let t=null,i=this.viewState.scrollParent,r=this.viewState.getScrollOffset(),{scrollAnchorPos:s,scrollAnchorHeight:o,scaleY:l}=this.viewState;Math.abs(r-this.viewState.scrollOffset)>1&&(o=-1),this.viewState.scrollAnchorHeight=-1;try{for(let a=0;;a++){if(o<0){if(bf(i||this.win))s=-1,o=this.viewState.heightMap.height/this.viewState.scaleY;else{let p=this.viewState.scrollAnchorAt(r);s=p.from,o=p.top}l=this.viewState.scaleY}this.updateState=1;let c=this.viewState.measure();if(!c&&!this.measureRequests.length&&this.viewState.scrollTarget==null)break;if(a>5){console.warn(this.measureRequests.length?"Measure loop restarted more than 5 times":"Viewport failed to stabilize");break}let h=[];c&4||([this.measureRequests,h]=[h,this.measureRequests]);let u=h.map(p=>{try{return p.read(this)}catch(g){return It(this.state,g),nf}}),d=ro.create(this,this.state,[]),f=!1;d.flags|=c,t?t.flags|=c:t=d,this.updateState=2,d.empty||(this.updatePlugins(d),this.inputState.update(d),this.updateAttrs(),f=this.docView.update(d),f&&this.docViewUpdate());for(let p=0;p<h.length;p++)if(u[p]!=nf)try{let g=h[p];g.write&&g.write(u[p],this)}catch(g){It(this.state,g)}if(f&&this.docView.updateSelection(!0),!d.viewportChanged&&this.measureRequests.length==0){if(this.viewState.editorHeight)if(this.viewState.scrollTarget){this.docView.scrollIntoView(this.viewState.scrollTarget),this.viewState.scrollTarget=null,o=-1;continue}else{let g=(s<0?this.viewState.heightMap.height:this.viewState.lineBlockAt(s).top)/this.viewState.scaleY-o/l;if((g>1||g<-1)&&!(O.ios&&this.inputState.lastIOSMomentumScroll>Date.now()-100)&&(i==this.scrollDOM||this.hasFocus||Math.max(this.inputState.lastWheelEvent,this.inputState.lastTouchTime)>Date.now()-100)){r=r+g,i?s<0?i.scrollTop=i.scrollHeight:i.scrollTop+=g:this.win.scrollBy(0,g),o=-1;continue}}break}}}finally{this.updateState=0,this.measureScheduled=-1}if(t&&!t.empty)for(let a of this.state.facet(va))a(t)}get themeClasses(){return ja+" "+(this.state.facet(Ka)?tp:ep)+" "+this.state.facet(Xs)}updateAttrs(){let e=rf(this,Nf,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),t={spellcheck:"false",autocorrect:"off",autocapitalize:"off",writingsuggestions:"false",translate:"no",contenteditable:this.state.facet(mn)?"true":"false",class:"cm-content",style:`${O.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(t["aria-readonly"]="true"),rf(this,lc,t);let i=this.observer.ignore(()=>{let r=Nd(this.contentDOM,this.contentAttrs,t),s=Nd(this.dom,this.editorAttrs,e);return r||s});return this.editorAttrs=e,this.contentAttrs=t,i}showAnnouncements(e){let t=!0;for(let i of e)for(let r of i.effects)if(r.is(n.announce)){t&&(this.announceDOM.textContent="",this.win.clearTimeout(this.clearAnnouncement),this.clearAnnouncement=this.win.setTimeout(()=>{this.announceDOM.textContent="\xA0"},200),t=!1);let s=this.announceDOM.appendChild(document.createElement("div"));s.textContent=r.value}}mountStyles(){this.styleModules=this.state.facet(vr);let e=this.state.facet(n.cspNonce);St.mount(this.root,this.styleModules.concat(Uy).reverse(),e?{nonce:e}:void 0)}readMeasured(){if(this.updateState==2)throw new Error("Reading the editor layout isn't allowed during an update");this.updateState==0&&this.measureScheduled>-1&&this.measure(!1)}requestMeasure(e){if(this.measureScheduled<0&&(this.measureScheduled=this.win.requestAnimationFrame(()=>this.measure())),e){if(this.measureRequests.indexOf(e)>-1)return;if(e.key!=null){for(let t=0;t<this.measureRequests.length;t++)if(this.measureRequests[t].key===e.key){this.measureRequests[t]=e;return}}this.measureRequests.push(e)}}plugin(e){let t=this.pluginMap.get(e);return(t===void 0||t&&t.plugin!=e)&&this.pluginMap.set(e,t=this.plugins.find(i=>i.plugin==e)||null),t&&t.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(e){return this.readMeasured(),this.viewState.elementAtHeight(e)}lineBlockAtHeight(e){return this.readMeasured(),this.viewState.lineBlockAtHeight(e)}get viewportLineBlocks(){return this.viewState.viewportLines}lineBlockAt(e){return this.viewState.lineBlockAt(e)}get contentHeight(){return this.viewState.contentHeight}moveByChar(e,t,i){return ca(this,e,Wd(this,e,t,i))}moveByGroup(e,t){return ca(this,e,Wd(this,e,t,i=>py(this,e.head,i)))}visualLineSide(e,t){let i=this.bidiSpans(e),r=this.textDirectionAt(e.from),s=i[t?i.length-1:0];return D.cursor(s.side(t,r)+e.from,s.forward(!t,r)?1:-1)}moveToLineBoundary(e,t,i=!0){return fy(this,e,t,i)}moveVertically(e,t,i){return ca(this,e,my(this,e,t,i))}domAtPos(e,t=1){return this.docView.domAtPos(e,t)}posAtDOM(e,t=0){return this.docView.posFromDOM(e,t)}posAtCoords(e,t=!0){this.readMeasured();let i=La(this,e,t);return i&&i.pos}posAndSideAtCoords(e,t=!0){return this.readMeasured(),La(this,e,t)}coordsAtPos(e,t=1){this.readMeasured();let i=this.state.doc.lineAt(e),r=this.bidiSpans(i),s=r[At.find(r,e-i.from,-1,t)];return this.docView.coordsAt(e,t,s.dir==ge.RTL)}coordsForChar(e){return this.readMeasured(),this.docView.coordsForChar(e)}get defaultCharacterWidth(){return this.viewState.heightOracle.charWidth}get defaultLineHeight(){return this.viewState.heightOracle.lineHeight}get textDirection(){return this.viewState.defaultTextDirection}textDirectionAt(e){return!this.state.facet(Lf)||e<this.viewport.from||e>this.viewport.to?this.textDirection:(this.readMeasured(),this.docView.textDirectionAt(e))}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(e){if(e.length>Gy)return Sf(e.length);let t=this.textDirectionAt(e.from),i;for(let s of this.bidiCache)if(s.from==e.from&&s.dir==t&&(s.fresh||kf(s.isolates,i=Hd(this,e))))return s.order;i||(i=Hd(this,e));let r=Gb(e.text,t,i);return this.bidiCache.push(new fo(e.from,e.to,t,i,!0,r)),r}get hasFocus(){var e;return(this.dom.ownerDocument.hasFocus()||O.safari&&((e=this.inputState)===null||e===void 0?void 0:e.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{gf(this.contentDOM),this.docView.updateSelection()})}setRoot(e){this._root!=e&&(this._root=e,this.observer.setWindow((e.nodeType==9?e:e.ownerDocument).defaultView||window),this.mountStyles())}destroy(){this.root.activeElement==this.contentDOM&&this.contentDOM.blur();for(let e of this.plugins)e.destroy(this);this.plugins=[],this.inputState.destroy(),this.docView.destroy(),this.dom.remove(),this.observer.destroy(),this.win.clearTimeout(this.clearAnnouncement),this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.destroyed=!0}static scrollIntoView(e,t={}){var i,r,s,o;return Us.of(new Mr(typeof e=="number"?D.cursor(e):e,(i=t.y)!==null&&i!==void 0?i:"nearest",(r=t.x)!==null&&r!==void 0?r:"nearest",(s=t.yMargin)!==null&&s!==void 0?s:5,(o=t.xMargin)!==null&&o!==void 0?o:5))}scrollSnapshot(){let{scrollTop:e,scrollLeft:t}=this.scrollDOM,i=this.viewState.scrollAnchorAt(e);return Us.of(new Mr(D.cursor(i.from),"start","start",i.top-e,t,!0))}setTabFocusMode(e){e==null?this.inputState.tabFocusMode=this.inputState.tabFocusMode<0?0:-1:typeof e=="boolean"?this.inputState.tabFocusMode=e?0:-1:this.inputState.tabFocusMode!=0&&(this.inputState.tabFocusMode=Date.now()+e)}static domEventHandlers(e){return Bt.define(()=>({}),{eventHandlers:e})}static domEventObservers(e){return Bt.define(()=>({}),{eventObservers:e})}static theme(e,t){let i=St.newName(),r=[Xs.of(i),vr.of(Ga(`.${i}`,e))];return t&&t.dark&&r.push(Ka.of(!0)),r}static baseTheme(e){return xr.lowest(vr.of(Ga("."+ja,e,np)))}static findFromDOM(e){var t;let i=e.querySelector(".cm-content"),r=i&&Se.get(i)||Se.get(e);return((t=r?.root)===null||t===void 0?void 0:t.view)||null}};j.styleModule=vr;j.inputHandler=Df;j.clipboardInputFilter=sc;j.clipboardOutputFilter=oc;j.scrollHandler=Pf;j.focusChangeEffect=Rf;j.perLineTextDirection=Lf;j.exceptionSink=Ef;j.updateListener=va;j.editable=mn;j.mouseSelectionStyle=Mf;j.dragMovesSelection=Af;j.clickAddsSelectionRange=Tf;j.decorations=bo;j.blockWrappers=Bf;j.outerDecorations=ac;j.atomicRanges=Hr;j.bidiIsolatedRanges=_f;j.cursorScrollMargin=$.define({combine:n=>{let e=5,t=5;for(let i of n)typeof i=="number"?e=t=i:{x:e,y:t}=i;return{x:e,y:t}}});j.scrollMargins=Hf;j.darkTheme=Ka;j.cspNonce=$.define({combine:n=>n.length?n[0]:""});j.contentAttributes=lc;j.editorAttributes=Nf;j.lineWrapping=j.contentAttributes.of({class:"cm-lineWrapping"});j.announce=xe.define();var Gy=4096,nf={},fo=class n{constructor(e,t,i,r,s,o){this.from=e,this.to=t,this.dir=i,this.isolates=r,this.fresh=s,this.order=o}static update(e,t){if(t.empty&&!e.some(s=>s.fresh))return e;let i=[],r=e.length?e[e.length-1].dir:ge.LTR;for(let s=Math.max(0,e.length-10);s<e.length;s++){let o=e[s];o.dir==r&&!t.touchesRange(o.from,o.to)&&i.push(new n(t.mapPos(o.from,1),t.mapPos(o.to,-1),o.dir,o.isolates,!1,o.order))}return i}};function rf(n,e,t){for(let i=n.state.facet(e),r=i.length-1;r>=0;r--){let s=i[r],o=typeof s=="function"?s(n):s;o&&nc(o,t)}return t}var qy=O.mac?"mac":O.windows?"win":O.linux?"linux":"key";function Xy(n,e){let t=n.split(/-(?!$)/),i=t[t.length-1];i=="Space"&&(i=" ");let r,s,o,l;for(let a=0;a<t.length-1;++a){let c=t[a];if(/^(cmd|meta|m)$/i.test(c))l=!0;else if(/^a(lt)?$/i.test(c))r=!0;else if(/^(c|ctrl|control)$/i.test(c))s=!0;else if(/^s(hift)?$/i.test(c))o=!0;else if(/^mod$/i.test(c))e=="mac"?l=!0:s=!0;else throw new Error("Unrecognized modifier name: "+c)}return r&&(i="Alt-"+i),s&&(i="Ctrl-"+i),l&&(i="Meta-"+i),o&&(i="Shift-"+i),i}function Ys(n,e,t){return e.altKey&&(n="Alt-"+n),e.ctrlKey&&(n="Ctrl-"+n),e.metaKey&&(n="Meta-"+n),t!==!1&&e.shiftKey&&(n="Shift-"+n),n}var Yy=xr.default(j.domEventHandlers({keydown(n,e){return ew(Jy(e.state),n,e,"editor")}})),hc=$.define({enables:Yy}),sf=new WeakMap;function Jy(n){let e=n.facet(hc),t=sf.get(e);return t||sf.set(e,t=Qy(e.reduce((i,r)=>i.concat(r),[]))),t}var Rn=null,Zy=4e3;function Qy(n,e=qy){let t=Object.create(null),i=Object.create(null),r=(o,l)=>{let a=i[o];if(a==null)i[o]=l;else if(a!=l)throw new Error("Key binding "+o+" is used both as a regular binding and as a multi-stroke prefix")},s=(o,l,a,c,h)=>{var u,d;let f=t[o]||(t[o]=Object.create(null)),p=l.split(/ (?!$)/).map(y=>Xy(y,e));for(let y=1;y<p.length;y++){let x=p.slice(0,y).join(" ");r(x,!0),f[x]||(f[x]={preventDefault:!0,stopPropagation:!1,run:[C=>{let H=Rn={view:C,prefix:x,scope:o};return setTimeout(()=>{Rn==H&&(Rn=null)},Zy),!0}]})}let g=p.join(" ");r(g,!1);let b=f[g]||(f[g]={preventDefault:!1,stopPropagation:!1,run:((d=(u=f._any)===null||u===void 0?void 0:u.run)===null||d===void 0?void 0:d.slice())||[]});a&&b.run.push(a),c&&(b.preventDefault=!0),h&&(b.stopPropagation=!0)};for(let o of n){let l=o.scope?o.scope.split(" "):["editor"];if(o.any)for(let c of l){let h=t[c]||(t[c]=Object.create(null));h._any||(h._any={preventDefault:!1,stopPropagation:!1,run:[]});let{any:u}=o;for(let d in h)h[d].run.push(f=>u(f,Ya))}let a=o[e]||o.key;if(a)for(let c of l)s(c,a,o.run,o.preventDefault,o.stopPropagation),o.shift&&s(c,"Shift-"+a,o.shift,o.preventDefault,o.stopPropagation)}return t}var Ya=null;function ew(n,e,t,i){Ya=e;let r=Ld(e),s=md(r,0),o=gd(s)==r.length&&r!=" ",l="",a=!1,c=!1,h=!1;Rn&&Rn.view==t&&Rn.scope==i&&(l=Rn.prefix+" ",Gf.indexOf(e.keyCode)<0&&(c=!0,Rn=null));let u=new Set,d=b=>{if(b){for(let y of b.run)if(!u.has(y)&&(u.add(y),y(t)))return b.stopPropagation&&(h=!0),!0;b.preventDefault&&(b.stopPropagation&&(h=!0),c=!0)}return!1},f=n[i],p,g;return f&&(d(f[l+Ys(r,e,!o)])?a=!0:o&&(e.altKey||e.metaKey||e.ctrlKey)&&!(O.windows&&e.ctrlKey&&e.altKey)&&!(O.mac&&e.altKey&&!(e.ctrlKey||e.metaKey))&&(p=pn[e.keyCode])&&p!=r?(d(f[l+Ys(p,e,!0)])||e.shiftKey&&(g=Ii[e.keyCode])!=r&&g!=p&&d(f[l+Ys(g,e,!1)]))&&(a=!0):o&&e.shiftKey&&d(f[l+Ys(r,e,!0)])&&(a=!0),!a&&d(f._any)&&(a=!0)),c&&(a=!0),a&&h&&e.stopPropagation(),Ya=null,a}var ri=class n{constructor(e,t,i,r,s){this.className=e,this.left=t,this.top=i,this.width=r,this.height=s}draw(){let e=document.createElement("div");return e.className=this.className,this.adjust(e),e}update(e,t){return t.className!=this.className?!1:(this.adjust(e),!0)}adjust(e){e.style.left=this.left+"px",e.style.top=this.top+"px",this.width!=null&&(e.style.width=this.width+"px"),e.style.height=this.height+"px"}eq(e){return this.left==e.left&&this.top==e.top&&this.width==e.width&&this.height==e.height&&this.className==e.className}static forRange(e,t,i){if(i.empty){let r=e.coordsAtPos(i.head,i.assoc||1);if(!r)return[];let s=ip(e);return[new n(t,r.left-s.left,r.top-s.top,null,r.bottom-r.top)]}else return tw(e,t,i)}};function ip(n){let e=n.scrollDOM.getBoundingClientRect();return{left:(n.textDirection==ge.LTR?e.left:e.right-n.scrollDOM.clientWidth*n.scaleX)-n.scrollDOM.scrollLeft*n.scaleX,top:e.top-n.scrollDOM.scrollTop*n.scaleY}}function of(n,e,t,i){let r=n.coordsAtPos(e,t*2);if(!r)return i;let s=n.dom.getBoundingClientRect(),o=(r.top+r.bottom)/2,l=n.posAtCoords({x:s.left+1,y:o}),a=n.posAtCoords({x:s.right-1,y:o});return l==null||a==null?i:{from:Math.max(i.from,Math.min(l,a)),to:Math.min(i.to,Math.max(l,a))}}function tw(n,e,t){if(t.to<=n.viewport.from||t.from>=n.viewport.to)return[];let i=Math.max(t.from,n.viewport.from),r=Math.min(t.to,n.viewport.to),s=n.textDirection==ge.LTR,o=n.contentDOM,l=o.getBoundingClientRect(),a=ip(n),c=o.querySelector(".cm-line"),h=c&&window.getComputedStyle(c),u=l.left+(h?parseInt(h.paddingLeft)+Math.min(0,parseInt(h.textIndent)):0),d=l.right-(h?parseInt(h.paddingRight):0),f=Ra(n,i,1),p=Ra(n,r,-1),g=f.type==Ve.Text?f:null,b=p.type==Ve.Text?p:null;if(g&&(n.lineWrapping||f.widgetLineBreaks)&&(g=of(n,i,1,g)),b&&(n.lineWrapping||p.widgetLineBreaks)&&(b=of(n,r,-1,b)),g&&b&&g.from==b.from&&g.to==b.to)return x(C(t.from,t.to,g));{let S=g?C(t.from,null,g):H(f,!1),A=b?C(null,t.to,b):H(p,!0),v=[];return(g||f).to<(b||p).from-(g&&b?1:0)||f.widgetLineBreaks>1&&S.bottom+n.defaultLineHeight/2<A.top?v.push(y(u,S.bottom,d,A.top)):S.bottom<A.top&&n.elementAtHeight((S.bottom+A.top)/2).type==Ve.Text&&(S.bottom=A.top=(S.bottom+A.top)/2),x(S).concat(v).concat(x(A))}function y(S,A,v,_){return new ri(e,S-a.left,A-a.top,Math.max(0,v-S),_-A)}function x({top:S,bottom:A,horizontal:v}){let _=[];for(let B=0;B<v.length;B+=2)_.push(y(v[B],S,v[B+1],A));return _}function C(S,A,v){let _=1e9,B=-1e9,z=[];function W(K,G,J,Be,it){let Ce=n.coordsAtPos(K,K==v.to?-2:2),_e=n.coordsAtPos(J,J==v.from?2:-2);!Ce||!_e||(_=Math.min(Ce.top,_e.top,_),B=Math.max(Ce.bottom,_e.bottom,B),it==ge.LTR?z.push(s&&G?u:Ce.left,s&&Be?d:_e.right):z.push(!s&&Be?u:_e.left,!s&&G?d:Ce.right))}let M=S??v.from,F=A??v.to;for(let K of n.visibleRanges)if(K.to>M&&K.from<F)for(let G=Math.max(K.from,M),J=Math.min(K.to,F);;){let Be=n.state.doc.lineAt(G);for(let it of n.bidiSpans(Be)){let Ce=it.from+Be.from,_e=it.to+Be.from;if(Ce>=J)break;_e>G&&W(Math.max(Ce,G),S==null&&Ce<=M,Math.min(_e,J),A==null&&_e>=F,it.dir)}if(G=Be.to+1,G>=J)break}return z.length==0&&W(M,S==null,F,A==null,n.textDirection),{top:_,bottom:B,horizontal:z}}function H(S,A){let v=l.top+(A?S.top:S.bottom);return{top:v,bottom:v,horizontal:[]}}}function nw(n,e){return n.constructor==e.constructor&&n.eq(e)}var Ja=class{constructor(e,t){this.view=e,this.layer=t,this.drawn=[],this.scaleX=1,this.scaleY=1,this.measureReq={read:this.measure.bind(this),write:this.draw.bind(this)},this.dom=e.scrollDOM.appendChild(document.createElement("div")),this.dom.classList.add("cm-layer"),t.above&&this.dom.classList.add("cm-layer-above"),t.class&&this.dom.classList.add(t.class),this.scale(),this.dom.setAttribute("aria-hidden","true"),this.setOrder(e.state),e.requestMeasure(this.measureReq),t.mount&&t.mount(this.dom,e)}update(e){e.startState.facet(Zs)!=e.state.facet(Zs)&&this.setOrder(e.state),(this.layer.update(e,this.dom)||e.geometryChanged)&&(this.scale(),e.view.requestMeasure(this.measureReq))}docViewUpdate(e){this.layer.updateOnDocViewUpdate!==!1&&e.requestMeasure(this.measureReq)}setOrder(e){let t=0,i=e.facet(Zs);for(;t<i.length&&i[t]!=this.layer;)t++;this.dom.style.zIndex=String((this.layer.above?150:-1)-t)}measure(){return this.layer.markers(this.view)}scale(){let{scaleX:e,scaleY:t}=this.view;(e!=this.scaleX||t!=this.scaleY)&&(this.scaleX=e,this.scaleY=t,this.dom.style.transform=`scale(${1/e}, ${1/t})`)}draw(e){if(e.length!=this.drawn.length||e.some((t,i)=>!nw(t,this.drawn[i]))){let t=this.dom.firstChild,i=0;for(let r of e)r.update&&t&&r.constructor&&this.drawn[i].constructor&&r.update(t,this.drawn[i])?(t=t.nextSibling,i++):this.dom.insertBefore(r.draw(),t);for(;t;){let r=t.nextSibling;t.remove(),t=r}this.drawn=e,O.webkit&&(this.dom.style.display=this.dom.firstChild?"":"none")}}destroy(){this.layer.destroy&&this.layer.destroy(this.dom,this.view),this.dom.remove()}},Zs=$.define();function rp(n){return[Bt.define(e=>new Ja(e,n)),Zs.of(n)]}var ji=$.define({combine(n){return Pi(n,{cursorBlinkRate:1200,drawRangeCursor:!0,iosSelectionHandles:!0},{cursorBlinkRate:(e,t)=>Math.min(e,t),drawRangeCursor:(e,t)=>e||t})}});function sp(n={}){return[ji.of(n),iw,rw,ow,Of.of(!0)]}function op(n){return n.startState.facet(ji)!=n.state.facet(ji)}var iw=rp({above:!0,markers(n){let{state:e}=n,t=e.facet(ji),i=[];for(let r of e.selection.ranges){let s=r==e.selection.main;if(r.empty||t.drawRangeCursor&&!(s&&O.ios&&t.iosSelectionHandles)){let o=s?"cm-cursor cm-cursor-primary":"cm-cursor cm-cursor-secondary",l=r.empty?r:D.cursor(r.head,r.assoc);for(let a of ri.forRange(n,o,l))i.push(a)}}return i},update(n,e){n.transactions.some(i=>i.selection)&&(e.style.animationName=e.style.animationName=="cm-blink"?"cm-blink2":"cm-blink");let t=op(n);return t&&lf(n.state,e),n.docChanged||n.selectionSet||t},mount(n,e){lf(e.state,n)},class:"cm-cursorLayer"});function lf(n,e){e.style.animationDuration=n.facet(ji).cursorBlinkRate+"ms"}var rw=rp({above:!1,markers(n){let e=[],{main:t,ranges:i}=n.state.selection;for(let r of i)if(!r.empty)for(let s of ri.forRange(n,"cm-selectionBackground",r))e.push(s);if(O.ios&&!t.empty&&n.state.facet(ji).iosSelectionHandles){for(let r of ri.forRange(n,"cm-selectionHandle cm-selectionHandle-start",D.cursor(t.from,1)))e.push(r);for(let r of ri.forRange(n,"cm-selectionHandle cm-selectionHandle-end",D.cursor(t.to,1)))e.push(r)}return e},update(n,e){return n.docChanged||n.selectionSet||n.viewportChanged||op(n)},class:"cm-selectionLayer"}),sw=O.gecko&&O.gecko_version==153?"#ffffff01":"transparent",ow=xr.highest(j.theme({".cm-line":{"& ::selection, &::selection":{backgroundColor:`${sw} !important`},caretColor:"transparent !important"},".cm-content":{caretColor:"transparent !important","& :focus":{caretColor:"initial !important","&::selection, & ::selection":{backgroundColor:"Highlight !important"}}}})),lp=xe.define({map(n,e){return n==null?null:e.mapPos(n)}}),Sr=kt.define({create(){return null},update(n,e){return n!=null&&(n=e.changes.mapPos(n)),e.effects.reduce((t,i)=>i.is(lp)?i.value:t,n)}}),lw=Bt.fromClass(class{constructor(n){this.view=n,this.cursor=null,this.measureReq={read:this.readPos.bind(this),write:this.drawCursor.bind(this)}}update(n){var e;let t=n.state.field(Sr);t==null?this.cursor!=null&&((e=this.cursor)===null||e===void 0||e.remove(),this.cursor=null):(this.cursor||(this.cursor=this.view.scrollDOM.appendChild(document.createElement("div")),this.cursor.className="cm-dropCursor"),(n.startState.field(Sr)!=t||n.docChanged||n.geometryChanged)&&this.view.requestMeasure(this.measureReq))}readPos(){let{view:n}=this,e=n.state.field(Sr),t=e!=null&&n.coordsAtPos(e);if(!t)return null;let i=n.scrollDOM.getBoundingClientRect();return{left:t.left-i.left+n.scrollDOM.scrollLeft*n.scaleX,top:t.top-i.top+n.scrollDOM.scrollTop*n.scaleY,height:t.bottom-t.top}}drawCursor(n){if(this.cursor){let{scaleX:e,scaleY:t}=this.view;n?(this.cursor.style.left=n.left/e+"px",this.cursor.style.top=n.top/t+"px",this.cursor.style.height=n.height/t+"px"):this.cursor.style.left="-100000px"}}destroy(){this.cursor&&this.cursor.remove()}setDropPos(n){this.view.state.field(Sr)!=n&&this.view.dispatch({effects:lp.of(n)})}},{eventObservers:{dragover(n){this.setDropPos(this.view.posAtCoords({x:n.clientX,y:n.clientY}))},dragleave(n){(n.target==this.view.contentDOM||!this.view.contentDOM.contains(n.relatedTarget))&&this.setDropPos(null)},dragend(){this.setDropPos(null)},drop(){this.setDropPos(null)}}});function ap(){return[Sr,lw]}var Uv=/x/.unicode!=null?"gu":"g";function cp(){return cw}var aw=me.line({class:"cm-activeLine"}),cw=Bt.fromClass(class{constructor(n){this.decorations=this.getDeco(n)}update(n){(n.docChanged||n.selectionSet)&&(this.decorations=this.getDeco(n.view))}getDeco(n){let e=-1,t=[];for(let i of n.state.selection.ranges){let r=n.lineBlockAt(i.head);r.from>e&&(t.push(aw.range(r.from)),e=r.from)}return me.set(t)}},{decorations:n=>n.decorations}),Za=class extends On{constructor(e){super(),this.content=e}toDOM(e){let t=document.createElement("span");return t.className="cm-placeholder",t.style.pointerEvents="none",t.appendChild(typeof this.content=="string"?document.createTextNode(this.content):typeof this.content=="function"?this.content(e):this.content.cloneNode(!0)),t.setAttribute("aria-hidden","true"),t}coordsAt(e){let t=e.firstChild?Tr(e.firstChild):[];if(!t.length)return null;let i=window.getComputedStyle(e.parentNode),r=Br(t[0],i.direction!="rtl"),s=parseInt(i.lineHeight);return r.bottom-r.top>s*1.5?{left:r.left,right:r.right,top:r.top,bottom:r.top+s}:r}ignoreEvent(){return!1}};function uc(n){let e=Bt.fromClass(class{constructor(t){this.view=t,this.placeholder=n?me.set([me.widget({widget:new Za(n),side:1}).range(0)]):me.none}get decorations(){return this.view.state.doc.length?me.none:this.placeholder}},{decorations:t=>t.decorations});return typeof n=="string"?[e,j.contentAttributes.of({"aria-placeholder":n})]:e}var Ht=class extends Qt{compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}eq(e){return!1}destroy(e){}};Ht.prototype.elementClass="";Ht.prototype.toDOM=void 0;Ht.prototype.mapMode=ct.TrackBefore;Ht.prototype.startSide=Ht.prototype.endSide=-1;Ht.prototype.point=!0;var Qs=$.define(),hw=$.define();var eo=$.define();var Qa=$.define({combine:n=>n.some(e=>e)});function uw(n){let e=[dw];return n&&n.fixed===!1&&e.push(Qa.of(!0)),e}var dw=Bt.fromClass(class{constructor(n){this.view=n,this.domAfter=null,this.prevViewport=n.viewport,this.dom=document.createElement("div"),this.dom.className="cm-gutters cm-gutters-before",this.dom.setAttribute("aria-hidden","true"),this.dom.style.minHeight=this.view.contentHeight/this.view.scaleY+"px",this.gutters=n.state.facet(eo).map(e=>new po(n,e)),this.fixed=!n.state.facet(Qa);for(let e of this.gutters)e.config.side=="after"?this.getDOMAfter().appendChild(e.dom):this.dom.appendChild(e.dom);this.fixed&&(this.dom.style.position="sticky"),this.syncGutters(!1),n.scrollDOM.insertBefore(this.dom,n.contentDOM)}getDOMAfter(){return this.domAfter||(this.domAfter=document.createElement("div"),this.domAfter.className="cm-gutters cm-gutters-after",this.domAfter.setAttribute("aria-hidden","true"),this.domAfter.style.minHeight=this.view.contentHeight/this.view.scaleY+"px",this.domAfter.style.position=this.fixed?"sticky":"",this.view.scrollDOM.appendChild(this.domAfter)),this.domAfter}update(n){if(this.updateGutters(n)){let e=this.prevViewport,t=n.view.viewport,i=Math.min(e.to,t.to)-Math.max(e.from,t.from);this.syncGutters(i<(t.to-t.from)*.8)}if(n.geometryChanged){let e=this.view.contentHeight/this.view.scaleY+"px";this.dom.style.minHeight=e,this.domAfter&&(this.domAfter.style.minHeight=e)}this.view.state.facet(Qa)!=!this.fixed&&(this.fixed=!this.fixed,this.dom.style.position=this.fixed?"sticky":"",this.domAfter&&(this.domAfter.style.position=this.fixed?"sticky":"")),this.prevViewport=n.view.viewport}syncGutters(n){let e=this.dom.nextSibling;n&&(this.dom.remove(),this.domAfter&&this.domAfter.remove());let t=he.iter(this.view.state.facet(Qs),this.view.viewport.from),i=[],r=this.gutters.map(s=>new tc(s,this.view.viewport,-this.view.documentPadding.top));for(let s of this.view.viewportLineBlocks)if(i.length&&(i=[]),Array.isArray(s.type)){let o=!0;for(let l of s.type)if(l.type==Ve.Text&&o){ec(t,i,l.from);for(let a of r)a.line(this.view,l,i);o=!1}else if(l.widget)for(let a of r)a.widget(this.view,l)}else if(s.type==Ve.Text){ec(t,i,s.from);for(let o of r)o.line(this.view,s,i)}else if(s.widget)for(let o of r)o.widget(this.view,s);for(let s of r)s.finish();n&&(this.view.scrollDOM.insertBefore(this.dom,e),this.domAfter&&this.view.scrollDOM.appendChild(this.domAfter))}updateGutters(n){let e=n.startState.facet(eo),t=n.state.facet(eo),i=n.docChanged||n.heightChanged||n.viewportChanged||!he.eq(n.startState.facet(Qs),n.state.facet(Qs),n.view.viewport.from,n.view.viewport.to);if(e==t)for(let r of this.gutters)r.update(n)&&(i=!0);else{i=!0;let r=[];for(let s of t){let o=e.indexOf(s);o<0?r.push(new po(this.view,s)):(this.gutters[o].update(n),r.push(this.gutters[o]))}for(let s of this.gutters)s.dom.remove(),r.indexOf(s)<0&&s.destroy();for(let s of r)s.config.side=="after"?this.getDOMAfter().appendChild(s.dom):this.dom.appendChild(s.dom);this.gutters=r}return i}destroy(){for(let n of this.gutters)n.destroy();this.dom.remove(),this.domAfter&&this.domAfter.remove()}},{provide:n=>j.scrollMargins.of(e=>{let t=e.plugin(n);if(!t||t.gutters.length==0||!t.fixed)return null;let i=t.dom.offsetWidth*e.scaleX,r=t.domAfter?t.domAfter.offsetWidth*e.scaleX:0;return e.textDirection==ge.LTR?{left:i,right:r}:{right:i,left:r}})});function af(n){return Array.isArray(n)?n:[n]}function ec(n,e,t){for(;n.value&&n.from<=t;)n.from==t&&e.push(n.value),n.next()}var tc=class{constructor(e,t,i){this.gutter=e,this.height=i,this.i=0,this.cursor=he.iter(e.markers,t.from)}addElement(e,t,i){let{gutter:r}=this,s=(t.top-this.height)/e.scaleY,o=t.height/e.scaleY;if(this.i==r.elements.length){let l=new mo(e,o,s,i);r.elements.push(l),r.dom.appendChild(l.dom)}else r.elements[this.i].update(e,o,s,i);this.height=t.bottom,this.i++}line(e,t,i){let r=[];ec(this.cursor,r,t.from),i.length&&(r=r.concat(i));let s=this.gutter.config.lineMarker(e,t,r);s&&r.unshift(s);let o=this.gutter;r.length==0&&!o.config.renderEmptyElements||this.addElement(e,t,r)}widget(e,t){let i=this.gutter.config.widgetMarker(e,t.widget,t),r=i?[i]:null;for(let s of e.state.facet(hw)){let o=s(e,t.widget,t);o&&(r||(r=[])).push(o)}r&&this.addElement(e,t,r)}finish(){let e=this.gutter;for(;e.elements.length>this.i;){let t=e.elements.pop();e.dom.removeChild(t.dom),t.destroy()}}},po=class{constructor(e,t){this.view=e,this.config=t,this.elements=[],this.spacer=null,this.dom=document.createElement("div"),this.dom.className="cm-gutter"+(this.config.class?" "+this.config.class:"");for(let i in t.domEventHandlers)this.dom.addEventListener(i,r=>{let s=r.target,o;if(s!=this.dom&&this.dom.contains(s)){for(;s.parentNode!=this.dom;)s=s.parentNode;let a=s.getBoundingClientRect();o=(a.top+a.bottom)/2}else o=r.clientY;let l=e.lineBlockAtHeight(o-e.documentTop);t.domEventHandlers[i](e,l,r)&&r.preventDefault()});this.markers=af(t.markers(e)),t.initialSpacer&&(this.spacer=new mo(e,0,0,[t.initialSpacer(e)]),this.dom.appendChild(this.spacer.dom),this.spacer.dom.style.cssText+="visibility: hidden; pointer-events: none")}update(e){let t=this.markers;if(this.markers=af(this.config.markers(e.view)),this.spacer&&this.config.updateSpacer){let r=this.config.updateSpacer(this.spacer.markers[0],e);r!=this.spacer.markers[0]&&this.spacer.update(e.view,0,0,[r])}let i=e.view.viewport;return!he.eq(this.markers,t,i.from,i.to)||(this.config.lineMarkerChange?this.config.lineMarkerChange(e):!1)}destroy(){for(let e of this.elements)e.destroy()}},mo=class{constructor(e,t,i,r){this.height=-1,this.above=0,this.markers=[],this.dom=document.createElement("div"),this.dom.className="cm-gutterElement",this.update(e,t,i,r)}update(e,t,i,r){this.height!=t&&(this.height=t,this.dom.style.height=t+"px"),this.above!=i&&(this.dom.style.marginTop=(this.above=i)?i+"px":""),fw(this.markers,r)||this.setMarkers(e,r)}setMarkers(e,t){let i="cm-gutterElement",r=this.dom.firstChild;for(let s=0,o=0;;){let l=o,a=s<t.length?t[s++]:null,c=!1;if(a){let h=a.elementClass;h&&(i+=" "+h);for(let u=o;u<this.markers.length;u++)if(this.markers[u].compare(a)){l=u,c=!0;break}}else l=this.markers.length;for(;o<l;){let h=this.markers[o++];if(h.toDOM){h.destroy(r);let u=r.nextSibling;r.remove(),r=u}}if(!a)break;a.toDOM&&(c?r=r.nextSibling:this.dom.insertBefore(a.toDOM(e),r)),c&&o++}this.dom.className=i,this.markers=t}destroy(){this.setMarkers(null,[])}};function fw(n,e){if(n.length!=e.length)return!1;for(let t=0;t<n.length;t++)if(!n[t].compare(e[t]))return!1;return!0}var pw=$.define(),mw=$.define(),Hi=$.define({combine(n){return Pi(n,{formatNumber:String,domEventHandlers:{}},{domEventHandlers(e,t){let i=Object.assign({},e);for(let r in t){let s=i[r],o=t[r];i[r]=s?(l,a,c)=>s(l,a,c)||o(l,a,c):o}return i}})}}),Or=class extends Ht{constructor(e){super(),this.number=e}eq(e){return this.number==e.number}toDOM(){return document.createTextNode(this.number)}};function ua(n,e){return n.state.facet(Hi).formatNumber(e,n.state)}var gw=eo.compute([Hi],n=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers(e){return e.state.facet(pw)},lineMarker(e,t,i){return i.some(r=>r.toDOM)?null:new Or(ua(e,e.state.doc.lineAt(t.from).number))},widgetMarker:(e,t,i)=>{for(let r of e.state.facet(mw)){let s=r(e,t,i);if(s)return s}return null},lineMarkerChange:e=>e.startState.facet(Hi)!=e.state.facet(Hi),initialSpacer(e){return new Or(ua(e,cf(e.state.doc.lines)))},updateSpacer(e,t){let i=ua(t.view,cf(t.view.state.doc.lines));return i==e.number?e:new Or(i)},domEventHandlers:n.facet(Hi).domEventHandlers,side:"before"}));function dc(n={}){return[Hi.of(n),uw(),gw]}function cf(n){let e=9;for(;e<n;)e=e*10+9;return e}var bw=new class extends Ht{constructor(){super(...arguments),this.elementClass="cm-activeLineGutter"}},yw=Qs.compute(["selection"],n=>{let e=[],t=-1;for(let i of n.selection.ranges){let r=n.doc.lineAt(i.head).from;r>t&&(t=r,e.push(bw.range(r)))}return he.of(e)});function hp(){return yw}var ww=0,Fr=class{constructor(e,t){this.from=e,this.to=t}},ee=class{constructor(e={}){this.id=ww++,this.perNode=!!e.perNode,this.deserialize=e.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")}),this.combine=e.combine||null}add(e){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return typeof e!="function"&&(e=bt.match(e)),t=>{let i=e(t);return i===void 0?null:[this,i]}}};ee.closedBy=new ee({deserialize:n=>n.split(" ")});ee.openedBy=new ee({deserialize:n=>n.split(" ")});ee.group=new ee({deserialize:n=>n.split(" ")});ee.isolate=new ee({deserialize:n=>{if(n&&n!="rtl"&&n!="ltr"&&n!="auto")throw new RangeError("Invalid value for isolate: "+n);return n||"auto"}});ee.contextHash=new ee({perNode:!0});ee.lookAhead=new ee({perNode:!0});ee.mounted=new ee({perNode:!0});var ai=class{constructor(e,t,i,r=!1){this.tree=e,this.overlay=t,this.parser=i,this.bracketed=r}static get(e){return e&&e.props&&e.props[ee.mounted.id]}},xw=Object.create(null),bt=class n{constructor(e,t,i,r=0){this.name=e,this.props=t,this.id=i,this.flags=r}static define(e){let t=e.props&&e.props.length?Object.create(null):xw,i=(e.top?1:0)|(e.skipped?2:0)|(e.error?4:0)|(e.name==null?8:0),r=new n(e.name||"",t,e.id,i);if(e.props){for(let s of e.props)if(Array.isArray(s)||(s=s(r)),s){if(s[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");t[s[0].id]=s[1]}}return r}prop(e){return this.props[e.id]}get isTop(){return(this.flags&1)>0}get isSkipped(){return(this.flags&2)>0}get isError(){return(this.flags&4)>0}get isAnonymous(){return(this.flags&8)>0}is(e){if(typeof e=="string"){if(this.name==e)return!0;let t=this.prop(ee.group);return t?t.indexOf(e)>-1:!1}return this.id==e}static match(e){let t=Object.create(null);for(let i in e)for(let r of i.split(" "))t[r]=e[i];return i=>{for(let r=i.prop(ee.group),s=-1;s<(r?r.length:0);s++){let o=t[s<0?i.name:r[s]];if(o)return o}}}};bt.none=new bt("",Object.create(null),0,8);var wo=new WeakMap,up=new WeakMap,Ae;(function(n){n[n.ExcludeBuffers=1]="ExcludeBuffers",n[n.IncludeAnonymous=2]="IncludeAnonymous",n[n.IgnoreMounts=4]="IgnoreMounts",n[n.IgnoreOverlays=8]="IgnoreOverlays",n[n.EnterBracketed=16]="EnterBracketed"})(Ae||(Ae={}));var $e=class n{constructor(e,t,i,r,s){if(this.type=e,this.children=t,this.positions=i,this.length=r,this.props=null,s&&s.length){this.props=Object.create(null);for(let[o,l]of s)this.props[typeof o=="number"?o:o.id]=l}}toString(){let e=ai.get(this);if(e&&!e.overlay)return e.tree.toString();let t="";for(let i of this.children){let r=i.toString();r&&(t&&(t+=","),t+=r)}return this.type.name?(/\W/.test(this.type.name)&&!this.type.isError?JSON.stringify(this.type.name):this.type.name)+(t.length?"("+t+")":""):t}cursor(e=0){return new Vr(this.topNode,e)}cursorAt(e,t=0,i=0){let r=wo.get(this)||this.topNode,s=new Vr(r);return s.moveTo(e,t),wo.set(this,s._tree),s}get topNode(){return new nn(this,0,0,null)}resolve(e,t=0){let i=zr(wo.get(this)||this.topNode,e,t,!1);return wo.set(this,i),i}resolveInner(e,t=0){let i=zr(up.get(this)||this.topNode,e,t,!0);return up.set(this,i),i}resolveStack(e,t=0){return vw(this,e,t)}iterate(e){let{enter:t,leave:i,from:r=0,to:s=this.length}=e,o=e.mode||0,l=(o&Ae.IncludeAnonymous)>0;for(let a=this.cursor(o|Ae.IncludeAnonymous);;){let c=!1;if(a.from<=s&&a.to>=r&&(!l&&a.type.isAnonymous||t(a)!==!1)){if(a.firstChild())continue;c=!0}for(;c&&i&&(l||!a.type.isAnonymous)&&i(a),!a.nextSibling();){if(!a.parent())return;c=!0}}}prop(e){return e.perNode?this.props?this.props[e.id]:void 0:this.type.prop(e)}get propValues(){let e=[];if(this.props)for(let t in this.props)e.push([+t,this.props[t]]);return e}balance(e={}){return this.children.length<=8?this:wc(bt.none,this.children,this.positions,0,this.children.length,0,this.length,(t,i,r)=>new n(this.type,t,i,r,this.propValues),e.makeTree||((t,i,r)=>new n(bt.none,t,i,r)))}static build(e){return kw(e)}};$e.empty=new $e(bt.none,[],[],0);var fc=class n{constructor(e,t){this.buffer=e,this.index=t}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}get pos(){return this.index}next(){this.index-=4}fork(){return new n(this.buffer,this.index)}},Nn=class n{constructor(e,t,i){this.buffer=e,this.length=t,this.set=i}get type(){return bt.none}toString(){let e=[];for(let t=0;t<this.buffer.length;)e.push(this.childString(t)),t=this.buffer[t+3];return e.join(",")}childString(e){let t=this.buffer[e],i=this.buffer[e+3],r=this.set.types[t],s=r.name;if(/\W/.test(s)&&!r.isError&&(s=JSON.stringify(s)),e+=4,i==e)return s;let o=[];for(;e<i;)o.push(this.childString(e)),e=this.buffer[e+3];return s+"("+o.join(",")+")"}findChild(e,t,i,r,s){let{buffer:o}=this,l=-1;for(let a=e;a!=t&&!(pp(s,r,o[a+1],o[a+2])&&(l=a,i>0));a=o[a+3]);return l}slice(e,t,i){let r=this.buffer,s=new Uint16Array(t-e),o=0;for(let l=e,a=0;l<t;){s[a++]=r[l++],s[a++]=r[l++]-i;let c=s[a++]=r[l++]-i;s[a++]=r[l++]-e,o=Math.max(o,c)}return new n(s,o,this.set)}};function pp(n,e,t,i){switch(n){case-2:return t<e;case-1:return i>=e&&t<e;case 0:return t<e&&i>e;case 1:return t<=e&&i>e;case 2:return i>e;case 4:return!0}}function zr(n,e,t,i){for(var r;n.from==n.to||(t<1?n.from>=e:n.from>e)||(t>-1?n.to<=e:n.to<e);){let o=!i&&n instanceof nn&&n.index<0?null:n.parent;if(!o)return n;n=o}let s=i?0:Ae.IgnoreOverlays;if(i)for(let o=n,l=o.parent;l;o=l,l=o.parent)o instanceof nn&&o.index<0&&((r=l.enter(e,t,s))===null||r===void 0?void 0:r.from)!=o.from&&(n=l);for(;;){let o=n.enter(e,t,s);if(!o)return n;n=o}}var vo=class{cursor(e=0){return new Vr(this,e)}getChild(e,t=null,i=null){let r=dp(this,e,t,i);return r.length?r[0]:null}getChildren(e,t=null,i=null){return dp(this,e,t,i)}resolve(e,t=0){return zr(this,e,t,!1)}resolveInner(e,t=0){return zr(this,e,t,!0)}matchContext(e){return pc(this.parent,e)}enterUnfinishedNodesBefore(e){let t=this.childBefore(e),i=this;for(;t;){let r=t.lastChild;if(!r||r.to!=t.to)break;r.type.isError&&r.from==r.to?(i=t,t=r.prevSibling):t=r}return i}get node(){return this}get next(){return this.parent}},nn=class n extends vo{constructor(e,t,i,r){super(),this._tree=e,this.from=t,this.index=i,this._parent=r}get type(){return this._tree.type}get name(){return this._tree.type.name}get to(){return this.from+this._tree.length}nextChild(e,t,i,r,s=0){for(let o=this;;){for(let{children:l,positions:a}=o._tree,c=t>0?l.length:-1;e!=c;e+=t){let h=l[e],u=a[e]+o.from,d;if(!(!(s&Ae.EnterBracketed&&h instanceof $e&&(d=ai.get(h))&&!d.overlay&&d.bracketed&&i>=u&&i<=u+h.length)&&!pp(r,i,u,u+h.length))){if(h instanceof Nn){if(s&Ae.ExcludeBuffers)continue;let f=h.findChild(0,h.buffer.length,t,i-u,r);if(f>-1)return new Wr(new mc(o,h,e,u),null,f)}else if(s&Ae.IncludeAnonymous||!h.type.isAnonymous||yc(h)){let f;if(!(s&Ae.IgnoreMounts)&&(f=ai.get(h))&&!f.overlay)return new n(f.tree,u,e,o);let p=new n(h,u,e,o);return s&Ae.IncludeAnonymous||!p.type.isAnonymous?p:p.nextChild(t<0?h.children.length-1:0,t,i,r,s)}}}if(s&Ae.IncludeAnonymous||!o.type.isAnonymous||(o.index>=0?e=o.index+t:e=t<0?-1:o._parent._tree.children.length,o=o._parent,!o))return null}}get firstChild(){return this.nextChild(0,1,0,4)}get lastChild(){return this.nextChild(this._tree.children.length-1,-1,0,4)}childAfter(e){return this.nextChild(0,1,e,2)}childBefore(e){return this.nextChild(this._tree.children.length-1,-1,e,-2)}prop(e){return this._tree.prop(e)}enter(e,t,i=0){let r;if(!(i&Ae.IgnoreOverlays)&&(r=ai.get(this._tree))&&r.overlay){let s=e-this.from,o=i&Ae.EnterBracketed&&r.bracketed;for(let{from:l,to:a}of r.overlay)if((t>0||o?l<=s:l<s)&&(t<0||o?a>=s:a>s))return new n(r.tree,r.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,e,t,i)}nextSignificantParent(){let e=this;for(;e.type.isAnonymous&&e._parent;)e=e._parent;return e}get parent(){return this._parent?this._parent.nextSignificantParent():null}get nextSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index+1,1,0,4):null}get prevSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index-1,-1,0,4):null}get tree(){return this._tree}toTree(){return this._tree}toString(){return this._tree.toString()}};function dp(n,e,t,i){let r=n.cursor(),s=[];if(!r.firstChild())return s;if(t!=null){for(let o=!1;!o;)if(o=r.type.is(t),!r.nextSibling())return s}for(;;){if(i!=null&&r.type.is(i))return s;if(r.type.is(e)&&s.push(r.node),!r.nextSibling())return i==null?s:[]}}function pc(n,e,t=e.length-1){for(let i=n;t>=0;i=i.parent){if(!i)return!1;if(!i.type.isAnonymous){if(e[t]&&e[t]!=i.name)return!1;t--}}return!0}var mc=class{constructor(e,t,i,r){this.parent=e,this.buffer=t,this.index=i,this.start=r}},Wr=class n extends vo{get name(){return this.type.name}get from(){return this.context.start+this.context.buffer.buffer[this.index+1]}get to(){return this.context.start+this.context.buffer.buffer[this.index+2]}constructor(e,t,i){super(),this.context=e,this._parent=t,this.index=i,this.type=e.buffer.set.types[e.buffer.buffer[i]]}child(e,t,i){let{buffer:r}=this.context,s=r.findChild(this.index+4,r.buffer[this.index+3],e,t-this.context.start,i);return s<0?null:new n(this.context,this,s)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(e){return this.child(1,e,2)}childBefore(e){return this.child(-1,e,-2)}prop(e){return this.type.prop(e)}enter(e,t,i=0){if(i&Ae.ExcludeBuffers)return null;let{buffer:r}=this.context,s=r.findChild(this.index+4,r.buffer[this.index+3],t>0?1:-1,e-this.context.start,t);return s<0?null:new n(this.context,this,s)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(e){return this._parent?null:this.context.parent.nextChild(this.context.index+e,e,0,4)}get nextSibling(){let{buffer:e}=this.context,t=e.buffer[this.index+3];return t<(this._parent?e.buffer[this._parent.index+3]:e.buffer.length)?new n(this.context,this._parent,t):this.externalSibling(1)}get prevSibling(){let{buffer:e}=this.context,t=this._parent?this._parent.index+4:0;return this.index==t?this.externalSibling(-1):new n(this.context,this._parent,e.findChild(t,this.index,-1,0,4))}get tree(){return null}toTree(){let e=[],t=[],{buffer:i}=this.context,r=this.index+4,s=i.buffer[this.index+3];if(s>r){let o=i.buffer[this.index+1];e.push(i.slice(r,s,o)),t.push(0)}return new $e(this.type,e,t,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}};function mp(n){if(!n.length)return null;let e=0,t=n[0];for(let s=1;s<n.length;s++){let o=n[s];(o.from>t.from||o.to<t.to)&&(t=o,e=s)}let i=t instanceof nn&&t.index<0?null:t.parent,r=n.slice();return i?r[e]=i:r.splice(e,1),new gc(r,t)}var gc=class{constructor(e,t){this.heads=e,this.node=t}get next(){return mp(this.heads)}};function vw(n,e,t){let i=n.resolveInner(e,t),r=null;for(let s=i instanceof nn?i:i.context.parent;s;s=s.parent)if(s.index<0){let o=s.parent;(r||(r=[i])).push(o.resolve(e,t)),s=o}else{let o=ai.get(s.tree);if(o&&o.overlay&&o.overlay[0].from<=e&&o.overlay[o.overlay.length-1].to>=e){let l=new nn(o.tree,o.overlay[0].from+s.from,-1,s);(r||(r=[i])).push(zr(l,e,t,!1))}}return r?mp(r):i}var Vr=class{get name(){return this.type.name}constructor(e,t=0){if(this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,this.mode=t&~Ae.EnterBracketed,e instanceof nn)this.yieldNode(e);else{this._tree=e.context.parent,this.buffer=e.context;for(let i=e._parent;i;i=i._parent)this.stack.unshift(i.index);this.bufferNode=e,this.yieldBuf(e.index)}}yieldNode(e){return e?(this._tree=e,this.type=e.type,this.from=e.from,this.to=e.to,!0):!1}yieldBuf(e,t){this.index=e;let{start:i,buffer:r}=this.buffer;return this.type=t||r.set.types[r.buffer[e]],this.from=i+r.buffer[e+1],this.to=i+r.buffer[e+2],!0}yield(e){return e?e instanceof nn?(this.buffer=null,this.yieldNode(e)):(this.buffer=e.context,this.yieldBuf(e.index,e.type)):!1}toString(){return this.buffer?this.buffer.buffer.childString(this.index):this._tree.toString()}enterChild(e,t,i){if(!this.buffer)return this.yield(this._tree.nextChild(e<0?this._tree._tree.children.length-1:0,e,t,i,this.mode));let{buffer:r}=this.buffer,s=r.findChild(this.index+4,r.buffer[this.index+3],e,t-this.buffer.start,i);return s<0?!1:(this.stack.push(this.index),this.yieldBuf(s))}firstChild(){return this.enterChild(1,0,4)}lastChild(){return this.enterChild(-1,0,4)}childAfter(e){return this.enterChild(1,e,2)}childBefore(e){return this.enterChild(-1,e,-2)}enter(e,t,i=this.mode){return this.buffer?i&Ae.ExcludeBuffers?!1:this.enterChild(1,e,t):this.yield(this._tree.enter(e,t,i))}parent(){if(!this.buffer)return this.yieldNode(this.mode&Ae.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let e=this.mode&Ae.IncludeAnonymous?this.buffer.parent:this.buffer.parent.nextSignificantParent();return this.buffer=null,this.yieldNode(e)}sibling(e){if(!this.buffer)return this._tree._parent?this.yield(this._tree.index<0?null:this._tree._parent.nextChild(this._tree.index+e,e,0,4,this.mode)):!1;let{buffer:t}=this.buffer,i=this.stack.length-1;if(e<0){let r=i<0?0:this.stack[i]+4;if(this.index!=r)return this.yieldBuf(t.findChild(r,this.index,-1,0,4))}else{let r=t.buffer[this.index+3];if(r<(i<0?t.buffer.length:t.buffer[this.stack[i]+3]))return this.yieldBuf(r)}return i<0?this.yield(this.buffer.parent.nextChild(this.buffer.index+e,e,0,4,this.mode)):!1}nextSibling(){return this.sibling(1)}prevSibling(){return this.sibling(-1)}atLastNode(e){let t,i,{buffer:r}=this;if(r){if(e>0){if(this.index<r.buffer.buffer.length)return!1}else for(let s=0;s<this.index;s++)if(r.buffer.buffer[s+3]<this.index)return!1;({index:t,parent:i}=r)}else({index:t,_parent:i}=this._tree);for(;i;{index:t,_parent:i}=i)if(t>-1)for(let s=t+e,o=e<0?-1:i._tree.children.length;s!=o;s+=e){let l=i._tree.children[s];if(this.mode&Ae.IncludeAnonymous||l instanceof Nn||!l.type.isAnonymous||yc(l))return!1}return!0}move(e,t){if(t&&this.enterChild(e,0,4))return!0;for(;;){if(this.sibling(e))return!0;if(this.atLastNode(e)||!this.parent())return!1}}next(e=!0){return this.move(1,e)}prev(e=!0){return this.move(-1,e)}moveTo(e,t=0){for(;(this.from==this.to||(t<1?this.from>=e:this.from>e)||(t>-1?this.to<=e:this.to<e))&&this.parent(););for(;this.enterChild(1,e,t););return this}get node(){if(!this.buffer)return this._tree;let e=this.bufferNode,t=null,i=0;if(e&&e.context==this.buffer)e:for(let r=this.index,s=this.stack.length;s>=0;){for(let o=e;o;o=o._parent)if(o.index==r){if(r==this.index)return o;t=o,i=s+1;break e}r=this.stack[--s]}for(let r=i;r<this.stack.length;r++)t=new Wr(this.buffer,t,this.stack[r]);return this.bufferNode=new Wr(this.buffer,t,this.index)}get tree(){return this.buffer?null:this._tree._tree}iterate(e,t){for(let i=0;;){let r=!1;if(this.type.isAnonymous||e(this)!==!1){if(this.firstChild()){i++;continue}this.type.isAnonymous||(r=!0)}for(;;){if(r&&t&&t(this),r=this.type.isAnonymous,!i)return;if(this.nextSibling())break;this.parent(),i--,r=!0}}}matchContext(e){if(!this.buffer)return pc(this.node.parent,e);let{buffer:t}=this.buffer,{types:i}=t.set;for(let r=e.length-1,s=this.stack.length-1;r>=0;s--){if(s<0)return pc(this._tree,e,r);let o=i[t.buffer[this.stack[s]]];if(!o.isAnonymous){if(e[r]&&e[r]!=o.name)return!1;r--}}return!0}};function yc(n){return n.children.some(e=>e instanceof Nn||!e.type.isAnonymous||yc(e))}function kw(n){var e;let{buffer:t,nodeSet:i,maxBufferLength:r=1024,reused:s=[],minRepeatType:o=i.types.length}=n,l=Array.isArray(t)?new fc(t,t.length):t,a=i.types,c=0,h=0;function u(S,A,v,_,B,z){let{id:W,start:M,end:F,size:K}=l,G=h,J=c;if(K<0)if(l.next(),K==-1){let Xe=s[W];v.push(Xe),_.push(M-S);return}else if(K==-3){c=W;return}else if(K==-4){h=W;return}else throw new RangeError(`Unrecognized record size: ${K}`);let Be=a[W],it,Ce,_e=M-S;if(F-M<=r&&(Ce=b(l.pos-A,B))){let Xe=new Uint16Array(Ce.size-Ce.skip),He=l.pos-Ce.size,Ye=Xe.length;for(;l.pos>He;)Ye=y(Ce.start,Xe,Ye);it=new Nn(Xe,F-Ce.start,i),_e=Ce.start-S}else{let Xe=l.pos-K;l.next();let He=[],Ye=[],wt=W>=o?W:-1,ie=0,vn=F;for(;l.pos>Xe;)wt>=0&&l.id==wt&&l.size>=0?(l.end<=vn-r&&(p(He,Ye,M,ie,l.end,vn,wt,G,J),ie=He.length,vn=l.end),l.next()):z>2500?d(M,Xe,He,Ye):u(M,Xe,He,Ye,wt,z+1);if(wt>=0&&ie>0&&ie<He.length&&p(He,Ye,M,ie,M,vn,wt,G,J),He.reverse(),Ye.reverse(),wt>-1&&ie>0){let kn=f(Be,J);it=wc(Be,He,Ye,0,He.length,0,F-M,kn,kn)}else it=g(Be,He,Ye,F-M,G-F,J)}v.push(it),_.push(_e)}function d(S,A,v,_){let B=[],z=0,W=-1;for(;l.pos>A;){let{id:M,start:F,end:K,size:G}=l;if(G>4)l.next();else{if(W>-1&&F<W)break;W<0&&(W=K-r),B.push(M,F,K),z++,l.next()}}if(z){let M=new Uint16Array(z*4),F=B[B.length-2];for(let K=B.length-3,G=0;K>=0;K-=3)M[G++]=B[K],M[G++]=B[K+1]-F,M[G++]=B[K+2]-F,M[G++]=G;v.push(new Nn(M,B[2]-F,i)),_.push(F-S)}}function f(S,A){return(v,_,B)=>{let z=0,W=v.length-1,M,F;if(W>=0&&(M=v[W])instanceof $e){if(!W&&M.type==S&&M.length==B)return M;(F=M.prop(ee.lookAhead))&&(z=_[W]+M.length+F)}return g(S,v,_,B,z,A)}}function p(S,A,v,_,B,z,W,M,F){let K=[],G=[];for(;S.length>_;)K.push(S.pop()),G.push(A.pop()+v-B);S.push(g(i.types[W],K,G,z-B,M-z,F)),A.push(B-v)}function g(S,A,v,_,B,z,W){if(z){let M=[ee.contextHash,z];W=W?[M].concat(W):[M]}if(B>25){let M=[ee.lookAhead,B];W=W?[M].concat(W):[M]}return new $e(S,A,v,_,W)}function b(S,A){let v=l.fork(),_=0,B=0,z=0,W=v.end-r,M={size:0,start:0,skip:0};e:for(let F=v.pos-S;v.pos>F;){let K=v.size;if(v.id==A&&K>=0){M.size=_,M.start=B,M.skip=z,z+=4,_+=4,v.next();continue}let G=v.pos-K;if(K<0||G<F||v.start<W)break;let J=v.id>=o?4:0,Be=v.start;for(v.next();v.pos>G;){if(v.size<0)if(v.size==-3||v.size==-4)J+=4;else break e;else v.id>=o&&(J+=4);v.next()}B=Be,_+=K,z+=J}return(A<0||_==S)&&(M.size=_,M.start=B,M.skip=z),M.size>4?M:void 0}function y(S,A,v){let{id:_,start:B,end:z,size:W}=l;if(l.next(),W>=0&&_<o){let M=v;if(W>4){let F=l.pos-(W-4);for(;l.pos>F;)v=y(S,A,v)}A[--v]=M,A[--v]=z-S,A[--v]=B-S,A[--v]=_}else W==-3?c=_:W==-4&&(h=_);return v}let x=[],C=[];for(;l.pos>0;)u(n.start||0,n.bufferStart||0,x,C,-1,0);let H=(e=n.length)!==null&&e!==void 0?e:x.length?C[0]+x[0].length:0;return new $e(a[n.topID],x.reverse(),C.reverse(),H)}var fp=new WeakMap;function xo(n,e){if(!n.isAnonymous||e instanceof Nn||e.type!=n)return 1;let t=fp.get(e);if(t==null){t=1;for(let i of e.children){if(i.type!=n||!(i instanceof $e)){t=1;break}t+=xo(n,i)}fp.set(e,t)}return t}function wc(n,e,t,i,r,s,o,l,a){let c=0;for(let p=i;p<r;p++)c+=xo(n,e[p]);let h=Math.ceil(c*1.5/8),u=[],d=[];function f(p,g,b,y,x){for(let C=b;C<y;){let H=C,S=g[C],A=xo(n,p[C]);for(C++;C<y;C++){let v=xo(n,p[C]);if(A+v>=h)break;A+=v}if(C==H+1){if(A>h){let v=p[H];f(v.children,v.positions,0,v.children.length,g[H]+x);continue}u.push(p[H])}else{let v=g[C-1]+p[C-1].length-S;u.push(wc(n,p,g,H,C,S,v,null,a))}d.push(S+x-s)}}return f(e,t,i,r,0),(l||a)(u,d,o)}var ci=class n{constructor(e,t,i,r,s=!1,o=!1){this.from=e,this.to=t,this.tree=i,this.offset=r,this.open=(s?1:0)|(o?2:0)}get openStart(){return(this.open&1)>0}get openEnd(){return(this.open&2)>0}static addTree(e,t=[],i=!1){let r=[new n(0,e.length,e,0,!1,i)];for(let s of t)s.to>e.length&&r.push(s);return r}static applyChanges(e,t,i=128){if(!t.length)return e;let r=[],s=1,o=e.length?e[0]:null;for(let l=0,a=0,c=0;;l++){let h=l<t.length?t[l]:null,u=h?h.fromA:1e9;if(u-a>=i)for(;o&&o.from<u;){let d=o;if(a>=d.from||u<=d.to||c){let f=Math.max(d.from,a)-c,p=Math.min(d.to,u)-c;d=f>=p?null:new n(f,p,d.tree,d.offset+c,l>0,!!h)}if(d&&r.push(d),o.to>u)break;o=s<e.length?e[s++]:null}if(!h)break;a=h.toA,c=h.toA-h.toB}return r}},ko=class{startParse(e,t,i){return typeof e=="string"&&(e=new bc(e)),i=i?i.length?i.map(r=>new Fr(r.from,r.to)):[new Fr(0,0)]:[new Fr(0,e.length)],this.createParse(e,t||[],i)}parse(e,t,i){let r=this.startParse(e,t,i);for(;;){let s=r.advance();if(s)return s}}},bc=class{constructor(e){this.string=e}get length(){return this.string.length}chunk(e){return this.string.slice(e)}get lineChunks(){return!1}read(e,t){return this.string.slice(e,t)}};var Zv=new ee({perNode:!0});var Sw=0,Ft=class n{constructor(e,t,i,r){this.name=e,this.set=t,this.base=i,this.modified=r,this.id=Sw++}toString(){let{name:e}=this;for(let t of this.modified)t.name&&(e=`${t.name}(${e})`);return e}static define(e,t){let i=typeof e=="string"?e:"?";if(e instanceof n&&(t=e),t?.base)throw new Error("Can not derive from a modified tag");let r=new n(i,[],null,[]);if(r.set.push(r),t)for(let s of t.set)r.set.push(s);return r}static defineModifier(e){let t=new Ao(e);return i=>i.modified.indexOf(t)>-1?i:Ao.get(i.base||i,i.modified.concat(t).sort((r,s)=>r.id-s.id))}},Cw=0,Ao=class n{constructor(e){this.name=e,this.instances=[],this.id=Cw++}static get(e,t){if(!t.length)return e;let i=t[0].instances.find(l=>l.base==e&&Tw(t,l.modified));if(i)return i;let r=[],s=new Ft(e.name,r,e,t);for(let l of t)l.instances.push(s);let o=Aw(t);for(let l of e.set)if(!l.modified.length)for(let a of o)r.push(n.get(l,a));return s}};function Tw(n,e){return n.length==e.length&&n.every((t,i)=>t==e[i])}function Aw(n){let e=[[]];for(let t=0;t<n.length;t++)for(let i=0,r=e.length;i<r;i++)e.push(e[i].concat(n[t]));return e.sort((t,i)=>i.length-t.length)}function yp(n){let e=Object.create(null);for(let t in n){let i=n[t];Array.isArray(i)||(i=[i]);for(let r of t.split(" "))if(r){let s=[],o=2,l=r;for(let u=0;;){if(l=="..."&&u>0&&u+3==r.length){o=1;break}let d=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(l);if(!d)throw new RangeError("Invalid path: "+r);if(s.push(d[0]=="*"?"":d[0][0]=='"'?JSON.parse(d[0]):d[0]),u+=d[0].length,u==r.length)break;let f=r[u++];if(u==r.length&&f=="!"){o=0;break}if(f!="/")throw new RangeError("Invalid path: "+r);l=r.slice(u)}let a=s.length-1,c=s[a];if(!c)throw new RangeError("Invalid path: "+r);let h=new Gi(i,o,a>0?s.slice(0,a):null);e[c]=h.sort(e[c])}}return Mw.add(e)}var Mw=new ee({combine(n,e){let t,i,r;for(;n||e;){if(!n||e&&n.depth>=e.depth?(r=e,e=e.next):(r=n,n=n.next),t&&t.mode==r.mode&&!r.context&&!t.context)continue;let s=new Gi(r.tags,r.mode,r.context);t?t.next=s:i=s,t=s}return i}}),Gi=class{constructor(e,t,i,r){this.tags=e,this.mode=t,this.context=i,this.next=r}get opaque(){return this.mode==0}get inherit(){return this.mode==1}sort(e){return!e||e.depth<this.depth?(this.next=e,this):(e.next=this.sort(e.next),e)}get depth(){return this.context?this.context.length:0}};Gi.empty=new Gi([],2,null);function kc(n,e){let t=Object.create(null);for(let s of n)if(!Array.isArray(s.tag))t[s.tag.id]=s.class;else for(let o of s.tag)t[o.id]=s.class;let{scope:i,all:r=null}=e||{};return{style:s=>{let o=r;for(let l of s)for(let a of l.set){let c=t[a.id];if(c){o=o?o+" "+c:c;break}}return o},scope:i}}var R=Ft.define,So=R(),Bn=R(),gp=R(Bn),bp=R(Bn),_n=R(),Co=R(_n),xc=R(_n),on=R(),hi=R(on),rn=R(),sn=R(),vc=R(),$r=R(vc),To=R(),L={comment:So,lineComment:R(So),blockComment:R(So),docComment:R(So),name:Bn,variableName:R(Bn),typeName:gp,tagName:R(gp),propertyName:bp,attributeName:R(bp),className:R(Bn),labelName:R(Bn),namespace:R(Bn),macroName:R(Bn),literal:_n,string:Co,docString:R(Co),character:R(Co),attributeValue:R(Co),number:xc,integer:R(xc),float:R(xc),bool:R(_n),regexp:R(_n),escape:R(_n),color:R(_n),url:R(_n),keyword:rn,self:R(rn),null:R(rn),atom:R(rn),unit:R(rn),modifier:R(rn),operatorKeyword:R(rn),controlKeyword:R(rn),definitionKeyword:R(rn),moduleKeyword:R(rn),operator:sn,derefOperator:R(sn),arithmeticOperator:R(sn),logicOperator:R(sn),bitwiseOperator:R(sn),compareOperator:R(sn),updateOperator:R(sn),definitionOperator:R(sn),typeOperator:R(sn),controlOperator:R(sn),punctuation:vc,separator:R(vc),bracket:$r,angleBracket:R($r),squareBracket:R($r),paren:R($r),brace:R($r),content:on,heading:hi,heading1:R(hi),heading2:R(hi),heading3:R(hi),heading4:R(hi),heading5:R(hi),heading6:R(hi),contentSeparator:R(on),list:R(on),quote:R(on),emphasis:R(on),strong:R(on),link:R(on),monospace:R(on),strikethrough:R(on),inserted:R(),deleted:R(),changed:R(),invalid:R(),meta:To,documentMeta:R(To),annotation:R(To),processingInstruction:R(To),definition:Ft.defineModifier("definition"),constant:Ft.defineModifier("constant"),function:Ft.defineModifier("function"),standard:Ft.defineModifier("standard"),local:Ft.defineModifier("local"),special:Ft.defineModifier("special")};for(let n in L){let e=L[n];e instanceof Ft&&(e.name=n)}var tk=kc([{tag:L.link,class:"tok-link"},{tag:L.heading,class:"tok-heading"},{tag:L.emphasis,class:"tok-emphasis"},{tag:L.strong,class:"tok-strong"},{tag:L.keyword,class:"tok-keyword"},{tag:L.atom,class:"tok-atom"},{tag:L.bool,class:"tok-bool"},{tag:L.url,class:"tok-url"},{tag:L.labelName,class:"tok-labelName"},{tag:L.inserted,class:"tok-inserted"},{tag:L.deleted,class:"tok-deleted"},{tag:L.literal,class:"tok-literal"},{tag:L.string,class:"tok-string"},{tag:L.number,class:"tok-number"},{tag:[L.regexp,L.escape,L.special(L.string)],class:"tok-string2"},{tag:L.variableName,class:"tok-variableName"},{tag:L.local(L.variableName),class:"tok-variableName tok-local"},{tag:L.definition(L.variableName),class:"tok-variableName tok-definition"},{tag:L.special(L.variableName),class:"tok-variableName2"},{tag:L.definition(L.propertyName),class:"tok-propertyName tok-definition"},{tag:L.typeName,class:"tok-typeName"},{tag:L.namespace,class:"tok-namespace"},{tag:L.className,class:"tok-className"},{tag:L.macroName,class:"tok-macroName"},{tag:L.propertyName,class:"tok-propertyName"},{tag:L.operator,class:"tok-operator"},{tag:L.comment,class:"tok-comment"},{tag:L.meta,class:"tok-meta"},{tag:L.invalid,class:"tok-invalid"},{tag:L.punctuation,class:"tok-punctuation"}]);var Sc,Kr=new ee;var Ew=new ee,Mt=class{constructor(e,t,i=[],r=""){this.data=e,this.name=r,ke.prototype.hasOwnProperty("tree")||Object.defineProperty(ke.prototype,"tree",{get(){return yn(this)}}),this.parser=t,this.extension=[qi.of(this),ke.languageData.of((s,o,l)=>{let a=wp(s,o,l),c=a.type.prop(Kr);if(!c)return[];let h=s.facet(c),u=a.type.prop(Ew);if(u){let d=a.resolve(o-a.from,l);for(let f of u)if(f.test(d,s)){let p=s.facet(f.facet);return f.type=="replace"?p:p.concat(h)}}return h})].concat(i)}isActiveAt(e,t,i=-1){return wp(e,t,i).type.prop(Kr)==this.data}findRegions(e){let t=e.facet(qi);if(t?.data==this.data)return[{from:0,to:e.doc.length}];if(!t||!t.allowsNesting)return[];let i=[],r=(s,o)=>{if(s.prop(Kr)==this.data){i.push({from:o,to:o+s.length});return}let l=s.prop(ee.mounted);if(l){if(l.tree.prop(Kr)==this.data){if(l.overlay)for(let a of l.overlay)i.push({from:a.from+o,to:a.to+o});else i.push({from:o,to:o+s.length});return}else if(l.overlay){let a=i.length;if(r(l.tree,l.overlay[0].from+o),i.length>a)return}}for(let a=0;a<s.children.length;a++){let c=s.children[a];c instanceof $e&&r(c,s.positions[a]+o)}};return r(yn(e),0),i}get allowsNesting(){return!0}};Mt.setState=xe.define();function wp(n,e,t){let i=n.facet(qi),r=yn(n).topNode;if(!i||i.allowsNesting)for(let s=r;s;s=s.enter(e,t,Ae.ExcludeBuffers|Ae.EnterBracketed))s.type.isTop&&(r=s);return r}function yn(n){let e=n.field(Mt.state,!1);return e?e.tree:$e.empty}var Ac=class{constructor(e){this.doc=e,this.cursorPos=0,this.string="",this.cursor=e.iter()}get length(){return this.doc.length}syncTo(e){return this.string=this.cursor.next(e-this.cursorPos).value,this.cursorPos=e+this.string.length,this.cursorPos-this.string.length}chunk(e){return this.syncTo(e),this.string}get lineChunks(){return!0}read(e,t){let i=this.cursorPos-this.string.length;return e<i||t>=this.cursorPos?this.doc.sliceString(e,t):this.string.slice(e-i,t-i)}},Ur=null,Mc=class n{constructor(e,t,i=[],r,s,o,l,a){this.parser=e,this.state=t,this.fragments=i,this.tree=r,this.treeLen=s,this.viewport=o,this.skipped=l,this.scheduleOn=a,this.parse=null,this.tempSkipped=[]}static create(e,t,i){return new n(e,t,[],$e.empty,0,i,[],null)}startParse(){return this.parser.startParse(new Ac(this.state.doc),this.fragments)}work(e,t){return t!=null&&t>=this.state.doc.length&&(t=void 0),this.tree!=$e.empty&&this.isDone(t??this.state.doc.length)?(this.takeTree(),!0):this.withContext(()=>{var i;if(typeof e=="number"){let r=Date.now()+e;e=()=>Date.now()>r}for(this.parse||(this.parse=this.startParse()),t!=null&&(this.parse.stoppedAt==null||this.parse.stoppedAt>t)&&t<this.state.doc.length&&this.parse.stopAt(t);;){let r=this.parse.advance();if(r)if(this.fragments=this.withoutTempSkipped(ci.addTree(r,this.fragments,this.parse.stoppedAt!=null)),this.treeLen=(i=this.parse.stoppedAt)!==null&&i!==void 0?i:this.state.doc.length,this.tree=r,this.parse=null,this.treeLen<(t??this.state.doc.length))this.parse=this.startParse();else return!0;if(e())return!1}})}takeTree(){let e,t;this.parse&&(e=this.parse.parsedPos)>=this.treeLen&&((this.parse.stoppedAt==null||this.parse.stoppedAt>e)&&this.parse.stopAt(e),this.withContext(()=>{for(;!(t=this.parse.advance()););}),this.treeLen=e,this.tree=t,this.fragments=this.withoutTempSkipped(ci.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(e){let t=Ur;Ur=this;try{return e()}finally{Ur=t}}withoutTempSkipped(e){for(let t;t=this.tempSkipped.pop();)e=xp(e,t.from,t.to);return e}changes(e,t){let{fragments:i,tree:r,treeLen:s,viewport:o,skipped:l}=this;if(this.takeTree(),!e.empty){let a=[];if(e.iterChangedRanges((c,h,u,d)=>a.push({fromA:c,toA:h,fromB:u,toB:d})),i=ci.applyChanges(i,a),r=$e.empty,s=0,o={from:e.mapPos(o.from,-1),to:e.mapPos(o.to,1)},this.skipped.length){l=[];for(let c of this.skipped){let h=e.mapPos(c.from,1),u=e.mapPos(c.to,-1);h<u&&l.push({from:h,to:u})}}}return new n(this.parser,t,i,r,s,o,l,this.scheduleOn)}updateViewport(e){if(this.viewport.from==e.from&&this.viewport.to==e.to)return!1;this.viewport=e;let t=this.skipped.length;for(let i=0;i<this.skipped.length;i++){let{from:r,to:s}=this.skipped[i];r<e.to&&s>e.from&&(this.fragments=xp(this.fragments,r,s),this.skipped.splice(i--,1))}return this.skipped.length>=t?!1:(this.reset(),!0)}reset(){this.parse&&(this.takeTree(),this.parse=null)}skipUntilInView(e,t){this.skipped.push({from:e,to:t})}static getSkippingParser(e){return new class extends ko{createParse(t,i,r){let s=r[0].from,o=r[r.length-1].to;return{parsedPos:s,advance(){let a=Ur;if(a){for(let c of r)a.tempSkipped.push(c);e&&(a.scheduleOn=a.scheduleOn?Promise.all([a.scheduleOn,e]):e)}return this.parsedPos=o,new $e(bt.none,[],[],o-s)},stoppedAt:null,stopAt(){}}}}}isDone(e){e=Math.min(e,this.state.doc.length);let t=this.fragments;return this.treeLen>=e&&t.length&&t[0].from==0&&t[0].to>=e}static get(){return Ur}};function xp(n,e,t){return ci.applyChanges(n,[{fromA:e,toA:t,fromB:e,toB:t}])}var jr=class n{constructor(e){this.context=e,this.tree=e.tree}apply(e){if(!e.docChanged&&this.tree==this.context.tree)return this;let t=this.context.changes(e.changes,e.state),i=this.context.treeLen==e.startState.doc.length?void 0:Math.max(e.changes.mapPos(this.context.treeLen),t.viewport.to);return t.work(20,i)||t.takeTree(),new n(t)}static init(e){let t=Math.min(3e3,e.doc.length),i=Mc.create(e.facet(qi).parser,e,{from:0,to:t});return i.work(20,t)||i.takeTree(),new n(i)}};Mt.state=kt.define({create:jr.init,update(n,e){for(let t of e.effects)if(t.is(Mt.setState))return t.value;return e.startState.facet(qi)!=e.state.facet(qi)?jr.init(e.state):n.apply(e)}});var Cp=n=>{let e=setTimeout(()=>n(),500);return()=>clearTimeout(e)};typeof requestIdleCallback<"u"&&(Cp=n=>{let e=-1,t=setTimeout(()=>{e=requestIdleCallback(n,{timeout:400})},100);return()=>e<0?clearTimeout(t):cancelIdleCallback(e)});var Cc=typeof navigator<"u"&&(!((Sc=navigator.scheduling)===null||Sc===void 0)&&Sc.isInputPending)?()=>navigator.scheduling.isInputPending():null,Dw=Bt.fromClass(class{constructor(e){this.view=e,this.working=null,this.workScheduled=0,this.chunkEnd=-1,this.chunkBudget=-1,this.work=this.work.bind(this),this.scheduleWork()}update(e){let t=this.view.state.field(Mt.state).context;(t.updateViewport(e.view.viewport)||this.view.viewport.to>t.treeLen)&&this.scheduleWork(),(e.docChanged||e.selectionSet)&&(this.view.hasFocus&&(this.chunkBudget+=50),this.scheduleWork()),this.checkAsyncSchedule(t)}scheduleWork(){if(this.working)return;let{state:e}=this.view,t=e.field(Mt.state);(t.tree!=t.context.tree||!t.context.isDone(e.doc.length))&&(this.working=Cp(this.work))}work(e){this.working=null;let t=Date.now();if(this.chunkEnd<t&&(this.chunkEnd<0||this.view.hasFocus)&&(this.chunkEnd=t+3e4,this.chunkBudget=3e3),this.chunkBudget<=0)return;let{state:i,viewport:{to:r}}=this.view,s=i.field(Mt.state);if(s.tree==s.context.tree&&s.context.isDone(r+1e5))return;let o=Date.now()+Math.min(this.chunkBudget,100,e&&!Cc?Math.max(25,e.timeRemaining()-5):1e9),l=s.context.treeLen<r&&i.doc.length>r+1e3,a=s.context.work(()=>Cc&&Cc()||Date.now()>o,r+(l?0:1e5));this.chunkBudget-=Date.now()-t,(a||this.chunkBudget<=0)&&(s.context.takeTree(),this.view.dispatch({effects:Mt.setState.of(new jr(s.context))})),this.chunkBudget>0&&!(a&&!l)&&this.scheduleWork(),this.checkAsyncSchedule(s.context)}checkAsyncSchedule(e){e.scheduleOn&&(this.workScheduled++,e.scheduleOn.then(()=>this.scheduleWork()).catch(t=>It(this.view.state,t)).then(()=>this.workScheduled--),e.scheduleOn=null)}destroy(){this.working&&this.working()}isWorking(){return!!(this.working||this.workScheduled>0)}},{eventHandlers:{focus(){this.scheduleWork()}}}),qi=$.define({combine(n){return n.length?n[0]:null},enables:n=>[Mt.state,Dw,j.contentAttributes.compute([n],e=>{let t=e.facet(n);return t&&t.name?{"data-language":t.name}:{}})]});var Rw=$.define(),Mo=$.define({combine:n=>{if(!n.length)return" ";let e=n[0];if(!e||/\S/.test(e)||Array.from(e).some(t=>t!=e[0]))throw new Error("Invalid indent unit: "+JSON.stringify(n[0]));return e}});function Gr(n){let e=n.facet(Mo);return e.charCodeAt(0)==9?n.tabSize*e.length:e.length}function qr(n,e){let t="",i=n.tabSize,r=n.facet(Mo)[0];if(r==" "){for(;e>=i;)t+=" ",e-=i;r=" "}for(let s=0;s<e;s++)t+=r;return t}function Oc(n,e){n instanceof ke&&(n=new ui(n));for(let i of n.state.facet(Rw)){let r=i(n,e);if(r!==void 0)return r}let t=yn(n.state);return t.length>=e?Ow(n,t,e):null}var ui=class{constructor(e,t={}){this.state=e,this.options=t,this.unit=Gr(e)}lineAt(e,t=1){let i=this.state.doc.lineAt(e),{simulateBreak:r,simulateDoubleBreak:s}=this.options;return r!=null&&r>=i.from&&r<=i.to?s&&r==e?{text:"",from:e}:(t<0?r<e:r<=e)?{text:i.text.slice(r-i.from),from:r}:{text:i.text.slice(0,r-i.from),from:i.from}:i}textAfterPos(e,t=1){if(this.options.simulateDoubleBreak&&e==this.options.simulateBreak)return"";let{text:i,from:r}=this.lineAt(e,t);return i.slice(e-r,Math.min(i.length,e+100-r))}column(e,t=1){let{text:i,from:r}=this.lineAt(e,t),s=this.countColumn(i,e-r),o=this.options.overrideIndentation?this.options.overrideIndentation(r):-1;return o>-1&&(s+=o-this.countColumn(i,i.search(/\S|$/))),s}countColumn(e,t=e.length){return ti(e,this.state.tabSize,t)}lineIndent(e,t=1){let{text:i,from:r}=this.lineAt(e,t),s=this.options.overrideIndentation;if(s){let o=s(r);if(o>-1)return o}return this.countColumn(i,i.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}},Lw=new ee;function Ow(n,e,t){let i=e.resolveStack(t),r=e.resolveInner(t,-1).resolve(t,0).enterUnfinishedNodesBefore(t);if(r!=i.node){let s=[];for(let o=r;o&&!(o.from<i.node.from||o.to>i.node.to||o.from==i.node.from&&o.type==i.node.type);o=o.parent)s.push(o);for(let o=s.length-1;o>=0;o--)i={node:s[o],next:i}}return Tp(i,n,t)}function Tp(n,e,t){for(let i=n;i;i=i.next){let r=Iw(i.node);if(r)return r(Ec.create(e,t,i))}return 0}function Pw(n){return n.pos==n.options.simulateBreak&&n.options.simulateDoubleBreak}function Iw(n){let e=n.type.prop(Lw);if(e)return e;let t=n.firstChild,i;if(t&&(i=t.type.prop(ee.closedBy))){let r=n.lastChild,s=r&&i.indexOf(r.name)>-1;return o=>Hw(o,!0,1,void 0,s&&!Pw(o)?r.from:void 0)}return n.parent==null?Nw:null}function Nw(){return 0}var Ec=class n extends ui{constructor(e,t,i){super(e.state,e.options),this.base=e,this.pos=t,this.context=i}get node(){return this.context.node}static create(e,t,i){return new n(e,t,i)}get textAfter(){return this.textAfterPos(this.pos)}get baseIndent(){return this.baseIndentFor(this.node)}baseIndentFor(e){let t=this.state.doc.lineAt(e.from);for(;;){let i=e.resolve(t.from);for(;i.parent&&i.parent.from==i.from;)i=i.parent;if(Bw(i,e))break;t=this.state.doc.lineAt(i.from)}return this.lineIndent(t.from)}continue(){return Tp(this.context.next,this.base,this.pos)}};function Bw(n,e){for(let t=e;t;t=t.parent)if(n==t)return!0;return!1}function _w(n){let e=n.node,t=e.childAfter(e.from),i=e.lastChild;if(!t)return null;let r=n.options.simulateBreak,s=n.state.doc.lineAt(t.from),o=r==null||r<=s.from?s.to:Math.min(s.to,r);for(let l=t.to;;){let a=e.childAfter(l);if(!a||a==i)return null;if(!a.type.isSkipped){if(a.from>=o)return null;let c=/^ */.exec(s.text.slice(t.to-s.from))[0].length;return{from:t.from,to:t.to+c}}l=a.to}}function Hw(n,e,t,i,r){let s=n.textAfter,o=s.match(/^\s*/)[0].length,l=i&&s.slice(o,o+i.length)==i||r==n.pos+o,a=e?_w(n):null;return a?l?n.column(a.from):n.column(a.to):n.baseIndent+(l?0:n.unit*t)}var Dc=class n{constructor(e,t){this.specs=e;let i;function r(l){let a=St.newName();return(i||(i=Object.create(null)))["."+a]=l,a}let s=typeof t.all=="string"?t.all:t.all?r(t.all):void 0,o=t.scope;this.scope=o instanceof Mt?l=>l.prop(Kr)==o.data:o?l=>l==o:void 0,this.style=kc(e.map(l=>({tag:l.tag,class:l.class||r(Object.assign({},l,{tag:null}))})),{all:s}).style,this.module=i?new St(i):null,this.themeType=t.themeType}static define(e,t){return new n(e,t||{})}};var dk=Dc.define([{tag:L.meta,color:"#404740"},{tag:L.link,textDecoration:"underline"},{tag:L.heading,textDecoration:"underline",fontWeight:"bold"},{tag:L.emphasis,fontStyle:"italic"},{tag:L.strong,fontWeight:"bold"},{tag:L.strikethrough,textDecoration:"line-through"},{tag:L.keyword,color:"#708"},{tag:[L.atom,L.bool,L.url,L.contentSeparator,L.labelName],color:"#219"},{tag:[L.literal,L.inserted],color:"#164"},{tag:[L.string,L.deleted],color:"#a11"},{tag:[L.regexp,L.escape,L.special(L.string)],color:"#e40"},{tag:L.definition(L.variableName),color:"#00f"},{tag:L.local(L.variableName),color:"#30a"},{tag:[L.typeName,L.namespace],color:"#085"},{tag:L.className,color:"#167"},{tag:[L.special(L.variableName),L.macroName],color:"#256"},{tag:L.definition(L.propertyName),color:"#00c"},{tag:L.comment,color:"#940"},{tag:L.invalid,color:"#f00"}]);var Fw=1e4,zw="()[]{}";var Ww=new ee;function Rc(n,e,t){let i=n.prop(e<0?ee.openedBy:ee.closedBy);if(i)return i;if(n.name.length==1){let r=t.indexOf(n.name);if(r>-1&&r%2==(e<0?1:0))return[t[r+e]]}return null}function Lc(n){let e=n.type.prop(Ww);return e?e(n.node):n}function di(n,e,t,i={}){let r=i.maxScanDistance||Fw,s=i.brackets||zw,o=yn(n),l=o.resolveInner(e,t);for(let a=l;a;a=a.parent){let c=Rc(a.type,t,s);if(c&&a.from<a.to){let h=Lc(a);if(h&&(t>0?e>=h.from&&e<h.to:e>h.from&&e<=h.to))return Vw(n,e,t,a,h,c,s)}}return $w(n,e,t,o,l.type,r,s)}function Vw(n,e,t,i,r,s,o){let l=i.parent,a={from:r.from,to:r.to},c=0,h=l?.cursor();if(h&&(t<0?h.childBefore(i.from):h.childAfter(i.to)))do if(t<0?h.to<=i.from:h.from>=i.to){if(c==0&&s.indexOf(h.type.name)>-1&&h.from<h.to){let u=Lc(h);return{start:a,end:u?{from:u.from,to:u.to}:void 0,matched:!0}}else if(Rc(h.type,t,o))c++;else if(Rc(h.type,-t,o)){if(c==0){let u=Lc(h);return{start:a,end:u&&u.from<u.to?{from:u.from,to:u.to}:void 0,matched:!1}}c--}}while(t<0?h.prevSibling():h.nextSibling());return{start:a,matched:!1}}function $w(n,e,t,i,r,s,o){if(t<0?!e:e==n.doc.length)return null;let l=t<0?n.sliceDoc(e-1,e):n.sliceDoc(e,e+1),a=o.indexOf(l);if(a<0||a%2==0!=t>0)return null;let c={from:t<0?e-1:e,to:t>0?e+1:e},h=n.doc.iterRange(e,t>0?n.doc.length:0),u=0;for(let d=0;!h.next().done&&d<=s;){let f=h.value;t<0&&(d+=f.length);let p=e+d*t;for(let g=t>0?0:f.length-1,b=t>0?f.length:-1;g!=b;g+=t){let y=o.indexOf(f[g]);if(!(y<0||i.resolveInner(p+g,1).type!=r))if(y%2==0==t>0)u++;else{if(u==1)return{start:c,end:{from:p+g,to:p+g+1},matched:y>>1==a>>1};u--}}t>0&&(d+=f.length)}return h.done?{start:c,matched:!1}:null}var Uw=Object.create(null),vp=[bt.none];var kp=[],Sp=Object.create(null),Kw=Object.create(null);for(let[n,e]of[["variable","variableName"],["variable-2","variableName.special"],["string-2","string.special"],["def","variableName.definition"],["tag","tagName"],["attribute","attributeName"],["type","typeName"],["builtin","variableName.standard"],["qualifier","modifier"],["error","invalid"],["header","heading"],["property","propertyName"]])Kw[n]=jw(Uw,e);function Tc(n,e){kp.indexOf(n)>-1||(kp.push(n),console.warn(e))}function jw(n,e){let t=[];for(let l of e.split(" ")){let a=[];for(let c of l.split(".")){let h=n[c]||L[c];h?typeof h=="function"?a.length?a=a.map(h):Tc(c,`Modifier ${c} used at start of tag`):a.length?Tc(c,`Tag ${c} used as modifier`):a=Array.isArray(h)?h:[h]:Tc(c,`Unknown highlighting tag ${c}`)}for(let c of a)t.push(c)}if(!t.length)return 0;let i=e.replace(/ /g,"_"),r=i+" "+t.map(l=>l.id),s=Sp[r];if(s)return s.id;let o=Sp[r]=bt.define({id:vp.length,name:i,props:[yp({[i]:t})]});return vp.push(o),o.id}var fk={rtl:me.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"rtl"},bidiIsolate:ge.RTL}),ltr:me.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"ltr"},bidiIsolate:ge.LTR}),auto:me.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"auto"},bidiIsolate:null})};var Gw=n=>{let{state:e}=n,t=e.doc.lineAt(e.selection.main.from),i=Fc(n.state,t.from);return i.line?qw(n):i.block?Yw(n):!1};function Hc(n,e){return({state:t,dispatch:i})=>{if(t.readOnly)return!1;let r=n(e,t);return r?(i(t.update(r)),!0):!1}}var qw=Hc(Qw,0);var Xw=Hc(Ip,0);var Yw=Hc((n,e)=>Ip(n,e,Zw(e)),0);function Fc(n,e){let t=n.languageDataAt("commentTokens",e,1);return t.length?t[0]:{}}var Xr=50;function Jw(n,{open:e,close:t},i,r){let s=n.sliceDoc(i-Xr,i),o=n.sliceDoc(r,r+Xr),l=/\s*$/.exec(s)[0].length,a=/^\s*/.exec(o)[0].length,c=s.length-l;if(s.slice(c-e.length,c)==e&&o.slice(a,a+t.length)==t)return{open:{pos:i-l,margin:l&&1},close:{pos:r+a,margin:a&&1}};let h,u;r-i<=2*Xr?h=u=n.sliceDoc(i,r):(h=n.sliceDoc(i,i+Xr),u=n.sliceDoc(r-Xr,r));let d=/^\s*/.exec(h)[0].length,f=/\s*$/.exec(u)[0].length,p=u.length-f-t.length;return h.slice(d,d+e.length)==e&&u.slice(p,p+t.length)==t?{open:{pos:i+d+e.length,margin:/\s/.test(h.charAt(d+e.length))?1:0},close:{pos:r-f-t.length,margin:/\s/.test(u.charAt(p-1))?1:0}}:null}function Zw(n){let e=[];for(let t of n.selection.ranges){let i=n.doc.lineAt(t.from),r=t.to<=i.to?i:n.doc.lineAt(t.to);r.from>i.from&&r.from==t.to&&(r=t.to==i.to+1?i:n.doc.lineAt(t.to-1));let s=e.length-1;s>=0&&e[s].to>i.from?e[s].to=r.to:e.push({from:i.from+/^\s*/.exec(i.text)[0].length,to:r.to})}return e}function Ip(n,e,t=e.selection.ranges){let i=t.map(s=>Fc(e,s.from).block);if(!i.every(s=>s))return null;let r=t.map((s,o)=>Jw(e,i[o],s.from,s.to));if(n!=2&&!r.every(s=>s))return{changes:e.changes(t.map((s,o)=>r[o]?[]:[{from:s.from,insert:i[o].open+" "},{from:s.to,insert:" "+i[o].close}]))};if(n!=1&&r.some(s=>s)){let s=[];for(let o=0,l;o<r.length;o++)if(l=r[o]){let a=i[o],{open:c,close:h}=l;s.push({from:c.pos-a.open.length,to:c.pos+c.margin},{from:h.pos-h.margin,to:h.pos+a.close.length})}return{changes:s}}return null}function Qw(n,e,t=e.selection.ranges){let i=[],r=-1;e:for(let{from:s,to:o}of t){let l=i.length,a=1e9,c;for(let h=s;h<=o;){let u=e.doc.lineAt(h);if(c==null&&(c=Fc(e,u.from).line,!c))continue e;if(u.from>r&&(s==o||o>u.from)){r=u.from;let d=/^\s*/.exec(u.text)[0].length,f=d==u.length,p=u.text.slice(d,d+c.length)==c?d:-1;d<u.text.length&&d<a&&(a=d),i.push({line:u,comment:p,token:c,indent:d,empty:f,single:!1})}h=u.to+1}if(a<1e9)for(let h=l;h<i.length;h++)i[h].indent<i[h].line.text.length&&(i[h].indent=a);i.length==l+1&&(i[l].single=!0)}if(n!=2&&i.some(s=>s.comment<0&&(!s.empty||s.single))){let s=[];for(let{line:l,token:a,indent:c,empty:h,single:u}of i)(u||!h)&&s.push({from:l.from+c,insert:a+" "});let o=e.changes(s);return{changes:o,selection:e.selection.map(o,1)}}else if(n!=1&&i.some(s=>s.comment>=0)){let s=[];for(let{line:o,comment:l,token:a}of i)if(l>=0){let c=o.from+l,h=c+a.length;o.text[h-o.from]==" "&&h++,s.push({from:c,to:h})}return{changes:s}}return null}var Ic=ht.define(),ex=ht.define(),tx=$.define(),Np=$.define({combine(n){return Pi(n,{minDepth:100,newGroupDelay:500,joinToEvent:(e,t)=>t},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(e,t)=>(i,r)=>e(i,r)||t(i,r)})}}),Bp=kt.define({create(){return fi.empty},update(n,e){let t=e.state.facet(Np),i=e.annotation(Ic);if(i){let a=zt.fromTransaction(e,i.selection),c=i.side,h=c==0?n.undone:n.done;return a?h=Do(h,h.length,t.minDepth,a):h=zp(h,e.startState.selection),new fi(c==0?i.rest:h,c==0?h:i.rest)}let r=e.annotation(ex);if((r=="full"||r=="before")&&(n=n.isolate()),e.annotation(Le.addToHistory)===!1)return e.changes.empty?n:n.addMapping(e.changes.desc);let s=zt.fromTransaction(e),o=e.annotation(Le.time),l=e.annotation(Le.userEvent);return s?n=n.addChanges(s,o,l,t,e):e.selection&&(n=n.addSelection(e.startState.selection,o,l,t.newGroupDelay)),(r=="full"||r=="after")&&(n=n.isolate()),n},toJSON(n){return{done:n.done.map(e=>e.toJSON()),undone:n.undone.map(e=>e.toJSON())}},fromJSON(n){return new fi(n.done.map(zt.fromJSON),n.undone.map(zt.fromJSON))}});function _p(n={}){return[Bp,Np.of(n),j.domEventHandlers({beforeinput(e,t){let i=e.inputType=="historyUndo"?Hp:e.inputType=="historyRedo"?Nc:null;return i?(e.preventDefault(),i(t)):!1}})]}function Ro(n,e){return function({state:t,dispatch:i}){if(!e&&t.readOnly)return!1;let r=t.field(Bp,!1);if(!r)return!1;let s=r.pop(n,t,e);return s?(i(s),!0):!1}}var Hp=Ro(0,!1),Nc=Ro(1,!1),nx=Ro(0,!0),ix=Ro(1,!0);var zt=class n{constructor(e,t,i,r,s){this.changes=e,this.effects=t,this.mapped=i,this.startSelection=r,this.selectionsAfter=s}setSelAfter(e){return new n(this.changes,this.effects,this.mapped,this.startSelection,e)}toJSON(){var e,t,i;return{changes:(e=this.changes)===null||e===void 0?void 0:e.toJSON(),mapped:(t=this.mapped)===null||t===void 0?void 0:t.toJSON(),startSelection:(i=this.startSelection)===null||i===void 0?void 0:i.toJSON(),selectionsAfter:this.selectionsAfter.map(r=>r.toJSON())}}static fromJSON(e){return new n(e.changes&&Qe.fromJSON(e.changes),[],e.mapped&&dn.fromJSON(e.mapped),e.startSelection&&D.fromJSON(e.startSelection),e.selectionsAfter.map(D.fromJSON))}static fromTransaction(e,t){let i=Et;for(let r of e.startState.facet(tx)){let s=r(e);s.length&&(i=i.concat(s))}return!i.length&&e.changes.empty?null:new n(e.changes.invert(e.startState.doc),i,void 0,t||e.startState.selection,Et)}static selection(e){return new n(void 0,Et,void 0,void 0,e)}};function Do(n,e,t,i){let r=e+1>t+20?e-t-1:0,s=n.slice(r,e);return s.push(i),s}function rx(n,e){let t=[],i=!1;return n.iterChangedRanges((r,s)=>t.push(r,s)),e.iterChangedRanges((r,s,o,l)=>{for(let a=0;a<t.length;){let c=t[a++],h=t[a++];l>=c&&o<=h&&(i=!0)}}),i}function sx(n,e){return n.ranges.length==e.ranges.length&&n.ranges.filter((t,i)=>t.empty!=e.ranges[i].empty).length===0}function Fp(n,e){return n.length?e.length?n.concat(e):n:e}var Et=[],ox=200;function zp(n,e){if(n.length){let t=n[n.length-1],i=t.selectionsAfter.slice(Math.max(0,t.selectionsAfter.length-ox));return i.length&&i[i.length-1].eq(e)?n:(i.push(e),Do(n,n.length-1,1e9,t.setSelAfter(i)))}else return[zt.selection([e])]}function lx(n){let e=n[n.length-1],t=n.slice();return t[n.length-1]=e.setSelAfter(e.selectionsAfter.slice(0,e.selectionsAfter.length-1)),t}function Pc(n,e){if(!n.length)return n;let t=n.length,i=Et;for(;t;){let r=ax(n[t-1],e,i);if(r.changes&&!r.changes.empty||r.effects.length){let s=n.slice(0,t);return s[t-1]=r,s}else e=r.mapped,t--,i=r.selectionsAfter}return i.length?[zt.selection(i)]:Et}function ax(n,e,t){let i=Fp(n.selectionsAfter.length?n.selectionsAfter.map(l=>l.map(e)):Et,t);if(!n.changes)return zt.selection(i);let r=n.changes.map(e),s=e.mapDesc(n.changes,!0),o=n.mapped?n.mapped.composeDesc(s):s;return new zt(r,xe.mapEffects(n.effects,e),o,n.startSelection.map(s),i)}var cx=/^(input\.type|delete)($|\.)/,fi=class n{constructor(e,t,i=0,r=void 0){this.done=e,this.undone=t,this.prevTime=i,this.prevUserEvent=r}isolate(){return this.prevTime?new n(this.done,this.undone):this}addChanges(e,t,i,r,s){let o=this.done,l=o[o.length-1];return l&&l.changes&&!l.changes.empty&&e.changes&&(!i||cx.test(i))&&(!l.selectionsAfter.length&&t-this.prevTime<r.newGroupDelay&&r.joinToEvent(s,rx(l.changes,e.changes))||i=="input.type.compose")?o=Do(o,o.length-1,r.minDepth,new zt(e.changes.compose(l.changes),Fp(xe.mapEffects(e.effects,l.changes),l.effects),l.mapped,l.startSelection,Et)):o=Do(o,o.length,r.minDepth,e),new n(o,Et,t,i)}addSelection(e,t,i,r){let s=this.done.length?this.done[this.done.length-1].selectionsAfter:Et;return s.length>0&&t-this.prevTime<r&&i==this.prevUserEvent&&i&&/^select($|\.)/.test(i)&&sx(s[s.length-1],e)?this:new n(zp(this.done,e),this.undone,t,i)}addMapping(e){return new n(Pc(this.done,e),Pc(this.undone,e),this.prevTime,this.prevUserEvent)}pop(e,t,i){let r=e==0?this.done:this.undone;if(r.length==0)return null;let s=r[r.length-1],o=s.selectionsAfter[0]||(s.startSelection?s.startSelection.map(s.changes.invertedDesc,1):t.selection);if(i&&s.selectionsAfter.length)return t.update({selection:s.selectionsAfter[s.selectionsAfter.length-1],annotations:Ic.of({side:e,rest:lx(r),selection:o}),userEvent:e==0?"select.undo":"select.redo",scrollIntoView:!0});if(s.changes){let l=r.length==1?Et:r.slice(0,r.length-1);return s.mapped&&(l=Pc(l,s.mapped)),t.update({changes:s.changes,selection:s.startSelection,effects:s.effects,annotations:Ic.of({side:e,rest:l,selection:o}),filter:!1,userEvent:e==0?"undo":"redo",scrollIntoView:!0})}else return null}};fi.empty=new fi(Et,Et);var Wp=[{key:"Mod-z",run:Hp,preventDefault:!0},{key:"Mod-y",mac:"Mod-Shift-z",run:Nc,preventDefault:!0},{linux:"Ctrl-Shift-z",run:Nc,preventDefault:!0},{key:"Mod-u",run:nx,preventDefault:!0},{key:"Alt-u",mac:"Mod-Shift-u",run:ix,preventDefault:!0}];function Xi(n,e){return D.create(n.ranges.map(e),n.mainIndex)}function Wt(n,e){return n.update({selection:e,scrollIntoView:!0,userEvent:"select"})}function Vt({state:n,dispatch:e},t){let i=Xi(n.selection,t);return i.eq(n.selection,!0)?!1:(e(Wt(n,i)),!0)}function Lo(n,e){return D.cursor(e?n.to:n.from)}function Vp(n,e){return Vt(n,t=>t.empty?n.moveByChar(t,e):Lo(t,e))}function je(n){return n.textDirectionAt(n.state.selection.main.head)==ge.LTR}var $p=n=>Vp(n,!je(n)),Up=n=>Vp(n,je(n));function Kp(n,e){return Vt(n,t=>t.empty?n.moveByGroup(t,e):Lo(t,e))}var hx=n=>Kp(n,!je(n)),ux=n=>Kp(n,je(n));var xk=typeof Intl<"u"&&Intl.Segmenter?new Intl.Segmenter(void 0,{granularity:"word"}):null;function dx(n,e,t){if(e.type.prop(t))return!0;let i=e.to-e.from;return i&&(i>2||/[^\s,.;:]/.test(n.sliceDoc(e.from,e.to)))||e.firstChild}function Oo(n,e,t){let i=yn(n).resolveInner(e.head),r=t?ee.closedBy:ee.openedBy;for(let a=e.head;;){let c=t?i.childAfter(a):i.childBefore(a);if(!c)break;dx(n,c,r)?i=c:a=t?c.to:c.from}let s=i.type.prop(r),o,l;return s&&(o=t?di(n,i.from,1):di(n,i.to,-1))&&o.matched?l=t?o.end.to:o.end.from:l=t?i.to:i.from,D.cursor(l,t?-1:1)}var fx=n=>Vt(n,e=>Oo(n.state,e,!je(n))),px=n=>Vt(n,e=>Oo(n.state,e,je(n)));function jp(n,e){return Vt(n,t=>{if(!t.empty)return Lo(t,e);let i=n.moveVertically(t,e);return i.head!=t.head?i:n.moveToLineBoundary(t,e)})}var Gp=n=>jp(n,!1),qp=n=>jp(n,!0);function Xp(n){let e=n.scrollDOM.clientHeight<n.scrollDOM.scrollHeight-2,t=0,i=0,r;if(e){for(let s of n.state.facet(j.scrollMargins)){let o=s(n);o?.top&&(t=Math.max(o?.top,t)),o?.bottom&&(i=Math.max(o?.bottom,i))}r=n.scrollDOM.clientHeight-t-i}else r=(n.dom.ownerDocument.defaultView||window).innerHeight;return{marginTop:t,marginBottom:i,selfScroll:e,height:Math.max(n.defaultLineHeight,r-5)}}function Yp(n,e){let t=Xp(n),{state:i}=n,r=Xi(i.selection,o=>o.empty?n.moveVertically(o,e,t.height):Lo(o,e));if(r.eq(i.selection))return!1;let s;if(t.selfScroll){let o=n.coordsAtPos(i.selection.main.head),l=n.scrollDOM.getBoundingClientRect(),a=l.top+t.marginTop,c=l.bottom-t.marginBottom;o&&o.top>a&&o.bottom<c&&(s=j.scrollIntoView(r.main.head,{y:"start",yMargin:o.top-a}))}return n.dispatch(Wt(i,r),{effects:s}),!0}var Ap=n=>Yp(n,!1),Bc=n=>Yp(n,!0);function Hn(n,e,t){let i=n.lineBlockAt(e.head),r=n.moveToLineBoundary(e,t);if(r.head==e.head&&r.head!=(t?i.to:i.from)&&(r=n.moveToLineBoundary(e,t,!1)),!t&&r.head==i.from&&i.length){let s=/^\s*/.exec(n.state.sliceDoc(i.from,Math.min(i.from+100,i.to)))[0].length;s&&e.head!=i.from+s&&(r=D.cursor(i.from+s))}return r}var mx=n=>Vt(n,e=>Hn(n,e,!0)),gx=n=>Vt(n,e=>Hn(n,e,!1)),bx=n=>Vt(n,e=>Hn(n,e,!je(n))),yx=n=>Vt(n,e=>Hn(n,e,je(n))),wx=n=>Vt(n,e=>n.moveToLineBoundary(e,!1,!1)),xx=n=>Vt(n,e=>n.moveToLineBoundary(e,!0,!1));function vx(n,e,t){let i=!1,r=Xi(n.selection,s=>{let o=di(n,s.head,-1)||di(n,s.head,1)||s.head>0&&di(n,s.head-1,1)||s.head<n.doc.length&&di(n,s.head+1,-1);if(!o||!o.end)return s;i=!0;let l=o.start.from==s.head?o.end.to:o.end.from;return t?D.range(s.anchor,l):D.cursor(l)});return i?(e(Wt(n,r)),!0):!1}var kx=({state:n,dispatch:e})=>vx(n,e,!1);function Dt(n,e,t){let i=Xi(n.state.selection,r=>{r.undirectional&&r.head>=r.anchor!=e&&(r=D.range(r.head,r.anchor));let s=t(r);return D.range(r.anchor,s.head,s.goalColumn,s.bidiLevel||void 0,s.assoc)});return i.eq(n.state.selection)?!1:(n.dispatch(Wt(n.state,i)),!0)}function Jp(n,e){return Dt(n,e,t=>n.moveByChar(t,e))}var Zp=n=>Jp(n,!je(n)),Qp=n=>Jp(n,je(n));function em(n,e){return Dt(n,e,t=>n.moveByGroup(t,e))}var Sx=n=>em(n,!je(n)),Cx=n=>em(n,je(n));var Tx=n=>{let e=!je(n);return Dt(n,e,t=>Oo(n.state,t,e))},Ax=n=>{let e=je(n);return Dt(n,e,t=>Oo(n.state,t,e))};function tm(n,e){return Dt(n,e,t=>n.moveVertically(t,e))}var nm=n=>tm(n,!1),im=n=>tm(n,!0);function rm(n,e){return Dt(n,e,t=>n.moveVertically(t,e,Xp(n).height))}var Mp=n=>rm(n,!1),Ep=n=>rm(n,!0),Mx=n=>Dt(n,!0,e=>Hn(n,e,!0)),Ex=n=>Dt(n,!1,e=>Hn(n,e,!1)),Dx=n=>{let e=!je(n);return Dt(n,e,t=>Hn(n,t,e))},Rx=n=>{let e=je(n);return Dt(n,e,t=>Hn(n,t,e))},Lx=n=>Dt(n,!1,e=>D.cursor(n.lineBlockAt(e.head).from)),Ox=n=>Dt(n,!0,e=>D.cursor(n.lineBlockAt(e.head).to)),Dp=({state:n,dispatch:e})=>(e(Wt(n,{anchor:0})),!0),Rp=({state:n,dispatch:e})=>(e(Wt(n,{anchor:n.doc.length})),!0),Lp=({state:n,dispatch:e})=>(e(Wt(n,{anchor:n.selection.main.anchor,head:0})),!0),Op=({state:n,dispatch:e})=>(e(Wt(n,{anchor:n.selection.main.anchor,head:n.doc.length})),!0),Px=({state:n,dispatch:e})=>(e(n.update({selection:{anchor:0,head:n.doc.length},userEvent:"select"})),!0),Ix=({state:n,dispatch:e})=>{let t=Po(n).map(({from:i,to:r})=>D.undirectionalRange(i,Math.min(r+1,n.doc.length)));return e(n.update({selection:D.create(t),userEvent:"select"})),!0},Nx=({state:n,dispatch:e})=>{let t=Xi(n.selection,i=>{let r=yn(n),s=r.resolveStack(i.from,1);if(i.empty){let o=r.resolveStack(i.from,-1);o.node.from>=s.node.from&&o.node.to<=s.node.to&&(s=o)}for(let o=s;o;o=o.next){let{node:l}=o;if((l.from<i.from&&l.to>=i.to||l.to>i.to&&l.from<=i.from)&&o.next)return D.undirectionalRange(l.from,l.to)}return i});return t.eq(n.selection)?!1:(e(Wt(n,t)),!0)};function sm(n,e){let{state:t}=n,i=t.selection,r=t.selection.ranges.slice();for(let s of t.selection.ranges){let o=t.doc.lineAt(s.head);if(e?o.to<n.state.doc.length:o.from>0)for(let l=s;;){let a=n.moveVertically(l,e);if(a.head<o.from||a.head>o.to){r.some(c=>c.head==a.head)||r.push(a);break}else{if(a.head==l.head)break;l=a}}}return r.length==i.ranges.length?!1:(n.dispatch(Wt(t,D.create(r,r.length-1))),!0)}var Bx=n=>sm(n,!1),_x=n=>sm(n,!0),Hx=({state:n,dispatch:e})=>{let t=n.selection,i=null;return t.ranges.length>1?i=D.create([t.main]):t.main.empty||(i=D.create([D.cursor(t.main.head)])),i?(e(Wt(n,i)),!0):!1};function Yr(n,e){if(n.state.readOnly)return!1;let t="delete.selection",{state:i}=n,r=i.changeByRange(s=>{let{from:o,to:l}=s;if(o==l){let a=e(s);a<o?(t="delete.backward",a=Eo(n,a,!1)):a>o&&(t="delete.forward",a=Eo(n,a,!0)),o=Math.min(o,a),l=Math.max(l,a)}else o=Eo(n,o,!1),l=Eo(n,l,!0);return o==l?{range:s}:{changes:{from:o,to:l},range:D.cursor(o,o<s.head?-1:1)}});return r.changes.empty?!1:(n.dispatch(i.update(r,{scrollIntoView:!0,userEvent:t,effects:t=="delete.selection"?j.announce.of(i.phrase("Selection deleted")):void 0})),!0)}function Eo(n,e,t){if(n instanceof j)for(let i of n.state.facet(j.atomicRanges).map(r=>r(n)))i.between(e,e,(r,s)=>{r<e&&s>e&&(e=t?s:r)});return e}var om=(n,e,t)=>Yr(n,i=>{let r=i.from,{state:s}=n,o=s.doc.lineAt(r),l,a;if(t&&!e&&r>o.from&&r<o.from+200&&!/[^ \t]/.test(l=o.text.slice(0,r-o.from))){if(l[l.length-1]==" ")return r-1;let c=ti(l,s.tabSize),h=c%Gr(s)||Gr(s);for(let u=0;u<h&&l[l.length-1-u]==" ";u++)r--;a=r}else a=ze(o.text,r-o.from,e,e)+o.from,a==r&&o.number!=(e?s.doc.lines:1)?a+=e?1:-1:!e&&/[\ufe00-\ufe0f]/.test(o.text.slice(a-o.from,r-o.from))&&(a=ze(o.text,a-o.from,!1,!1)+o.from);return a}),_c=n=>om(n,!1,!0);var lm=n=>om(n,!0,!1),am=(n,e)=>Yr(n,t=>{let i=t.head,{state:r}=n,s=r.doc.lineAt(i),o=r.charCategorizer(i);for(let l=null;;){if(i==(e?s.to:s.from)){i==t.head&&s.number!=(e?r.doc.lines:1)&&(i+=e?1:-1);break}let a=ze(s.text,i-s.from,e)+s.from,c=s.text.slice(Math.min(i,a)-s.from,Math.max(i,a)-s.from),h=o(c);if(l!=null&&h!=l)break;(c!=" "||i!=t.head)&&(l=h),i=a}return i}),cm=n=>am(n,!1),Fx=n=>am(n,!0);var zx=n=>Yr(n,e=>{let t=n.lineBlockAt(e.head).to;return e.head<t?t:Math.min(n.state.doc.length,e.head+1)});var Wx=n=>Yr(n,e=>{let t=n.moveToLineBoundary(e,!1).head;return e.head>t?t:Math.max(0,e.head-1)}),Vx=n=>Yr(n,e=>{let t=n.moveToLineBoundary(e,!0).head;return e.head<t?t:Math.min(n.state.doc.length,e.head+1)});var $x=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=n.changeByRange(i=>({changes:{from:i.from,to:i.to,insert:te.of(["",""])},range:D.cursor(i.from)}));return e(n.update(t,{scrollIntoView:!0,userEvent:"input"})),!0},Ux=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=n.changeByRange(i=>{if(!i.empty||i.from==0||i.from==n.doc.length)return{range:i};let r=i.from,s=n.doc.lineAt(r),o=r==s.from?r-1:ze(s.text,r-s.from,!1)+s.from,l=r==s.to?r+1:ze(s.text,r-s.from,!0)+s.from;return{changes:{from:o,to:l,insert:n.doc.slice(r,l).append(n.doc.slice(o,r))},range:D.cursor(l)}});return t.changes.empty?!1:(e(n.update(t,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function Po(n){let e=[],t=-1;for(let i of n.selection.ranges){let r=n.doc.lineAt(i.from),s=n.doc.lineAt(i.to);if(!i.empty&&i.to==s.from&&(s=n.doc.lineAt(i.to-1)),t>=r.number){let o=e[e.length-1];o.to=s.to,o.ranges.push(i)}else e.push({from:r.from,to:s.to,ranges:[i]});t=s.number+1}return e}function hm(n,e,t){if(n.readOnly)return!1;let i=[],r=[];for(let s of Po(n)){if(t?s.to==n.doc.length:s.from==0)continue;let o=n.doc.lineAt(t?s.to+1:s.from-1),l=o.length+1;if(t){i.push({from:s.to,to:o.to},{from:s.from,insert:o.text+n.lineBreak});for(let a of s.ranges)r.push(D.range(Math.min(n.doc.length,a.anchor+l),Math.min(n.doc.length,a.head+l)))}else{i.push({from:o.from,to:s.from},{from:s.to,insert:n.lineBreak+o.text});for(let a of s.ranges)r.push(D.range(a.anchor-l,a.head-l))}}return i.length?(e(n.update({changes:i,scrollIntoView:!0,selection:D.create(r,n.selection.mainIndex),userEvent:"move.line"})),!0):!1}var Kx=({state:n,dispatch:e})=>hm(n,e,!1),jx=({state:n,dispatch:e})=>hm(n,e,!0);function um(n,e,t){if(n.readOnly)return!1;let i=[];for(let s of Po(n))t?i.push({from:s.from,insert:n.doc.slice(s.from,s.to)+n.lineBreak}):i.push({from:s.to,insert:n.lineBreak+n.doc.slice(s.from,s.to)});let r=n.changes(i);return e(n.update({changes:r,selection:n.selection.map(r,t?1:-1),scrollIntoView:!0,userEvent:"input.copyline"})),!0}var Gx=({state:n,dispatch:e})=>um(n,e,!1),qx=({state:n,dispatch:e})=>um(n,e,!0),Xx=n=>{if(n.state.readOnly)return!1;let{state:e}=n,t=e.changes(Po(e).map(({from:r,to:s})=>(r>0?r--:s<e.doc.length&&s++,{from:r,to:s}))),i=Xi(e.selection,r=>{let s;if(n.lineWrapping){let o=n.lineBlockAt(r.head),l=n.coordsAtPos(r.head,r.assoc||1);l&&(s=o.bottom+n.documentTop-l.bottom+n.defaultLineHeight/2)}return n.moveVertically(r,!0,s)}).map(t);return n.dispatch({changes:t,selection:i,scrollIntoView:!0,userEvent:"delete.line"}),!0};function Yx(n,e){if(/\(\)|\[\]|\{\}/.test(n.sliceDoc(e-1,e+1)))return{from:e,to:e};let t=yn(n).resolveInner(e),i=t.childBefore(e),r=t.childAfter(e),s;return i&&r&&i.to<=e&&r.from>=e&&(s=i.type.prop(ee.closedBy))&&s.indexOf(r.name)>-1&&n.doc.lineAt(i.to).from==n.doc.lineAt(r.from).from&&!/\S/.test(n.sliceDoc(i.to,r.from))?{from:i.to,to:r.from}:null}var Pp=dm(!1),Jx=dm(!0);function dm(n){return({state:e,dispatch:t})=>{if(e.readOnly)return!1;let i=e.changeByRange(r=>{let{from:s,to:o}=r,l=e.doc.lineAt(s),a=!n&&s==o&&Yx(e,s);n&&(s=o=(o<=l.to?l:e.doc.lineAt(o)).to);let c=new ui(e,{simulateBreak:s,simulateDoubleBreak:!!a}),h=Oc(c,s);for(h==null&&(h=ti(/^\s*/.exec(e.doc.lineAt(s).text)[0],e.tabSize));o<l.to&&/\s/.test(l.text[o-l.from]);)o++;a?{from:s,to:o}=a:s>l.from&&s<l.from+100&&!/\S/.test(l.text.slice(0,s))&&(s=l.from);let u=["",qr(e,h)];return a&&u.push(qr(e,c.lineIndent(l.from,-1))),{changes:{from:s,to:o,insert:te.of(u)},range:D.cursor(s+1+u[1].length)}});return t(e.update(i,{scrollIntoView:!0,userEvent:"input"})),!0}}function zc(n,e){let t=-1;return n.changeByRange(i=>{let r=[];for(let o=i.from;o<=i.to;){let l=n.doc.lineAt(o);l.number>t&&(i.empty||i.to>l.from)&&(e(l,r,i),t=l.number),o=l.to+1}let s=n.changes(r);return{changes:r,range:D.range(s.mapPos(i.anchor,1),s.mapPos(i.head,1))}})}var Zx=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=Object.create(null),i=new ui(n,{overrideIndentation:s=>{let o=t[s];return o??-1}}),r=zc(n,(s,o,l)=>{let a=Oc(i,s.from);if(a==null)return;/\S/.test(s.text)||(a=0);let c=/^\s*/.exec(s.text)[0],h=qr(n,a);(c!=h||l.from<s.from+c.length)&&(t[s.from]=a,o.push({from:s.from,to:s.from+c.length,insert:h}))});return r.changes.empty||e(n.update(r,{userEvent:"indent"})),!0},fm=({state:n,dispatch:e})=>n.readOnly?!1:(e(n.update(zc(n,(t,i)=>{i.push({from:t.from,insert:n.facet(Mo)})}),{userEvent:"input.indent"})),!0),pm=({state:n,dispatch:e})=>n.readOnly?!1:(e(n.update(zc(n,(t,i)=>{let r=/^\s*/.exec(t.text)[0];if(!r)return;let s=ti(r,n.tabSize),o=0,l=qr(n,Math.max(0,s-Gr(n)));for(;o<r.length&&o<l.length&&r.charCodeAt(o)==l.charCodeAt(o);)o++;i.push({from:t.from+o,to:t.from+r.length,insert:l.slice(o)})}),{userEvent:"delete.dedent"})),!0),Qx=n=>(n.setTabFocusMode(),!0);var e1=[{key:"Ctrl-b",run:$p,shift:Zp,preventDefault:!0},{key:"Ctrl-f",run:Up,shift:Qp},{key:"Ctrl-p",run:Gp,shift:nm},{key:"Ctrl-n",run:qp,shift:im},{key:"Ctrl-a",run:wx,shift:Lx},{key:"Ctrl-e",run:xx,shift:Ox},{key:"Ctrl-d",run:lm},{key:"Ctrl-h",run:_c},{key:"Ctrl-k",run:zx},{key:"Ctrl-Alt-h",run:cm},{key:"Ctrl-o",run:$x},{key:"Ctrl-t",run:Ux},{key:"Ctrl-v",run:Bc}],t1=[{key:"ArrowLeft",run:$p,shift:Zp,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:hx,shift:Sx,preventDefault:!0},{mac:"Cmd-ArrowLeft",run:bx,shift:Dx,preventDefault:!0},{key:"ArrowRight",run:Up,shift:Qp,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:ux,shift:Cx,preventDefault:!0},{mac:"Cmd-ArrowRight",run:yx,shift:Rx,preventDefault:!0},{key:"ArrowUp",run:Gp,shift:nm,preventDefault:!0},{mac:"Cmd-ArrowUp",run:Dp,shift:Lp},{mac:"Ctrl-ArrowUp",run:Ap,shift:Mp},{key:"ArrowDown",run:qp,shift:im,preventDefault:!0},{mac:"Cmd-ArrowDown",run:Rp,shift:Op},{mac:"Ctrl-ArrowDown",run:Bc,shift:Ep},{key:"PageUp",run:Ap,shift:Mp},{key:"PageDown",run:Bc,shift:Ep},{key:"Home",run:gx,shift:Ex,preventDefault:!0},{key:"Mod-Home",run:Dp,shift:Lp},{key:"End",run:mx,shift:Mx,preventDefault:!0},{key:"Mod-End",run:Rp,shift:Op},{key:"Enter",run:Pp,shift:Pp},{key:"Mod-a",run:Px},{key:"Backspace",run:_c,shift:_c,preventDefault:!0},{key:"Delete",run:lm,preventDefault:!0},{key:"Mod-Backspace",mac:"Alt-Backspace",run:cm,preventDefault:!0},{key:"Mod-Delete",mac:"Alt-Delete",run:Fx,preventDefault:!0},{mac:"Mod-Backspace",run:Wx,preventDefault:!0},{mac:"Mod-Delete",run:Vx,preventDefault:!0}].concat(e1.map(n=>({mac:n.key,run:n.run,shift:n.shift}))),mm=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:fx,shift:Tx},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:px,shift:Ax},{key:"Alt-ArrowUp",run:Kx},{key:"Shift-Alt-ArrowUp",run:Gx},{key:"Alt-ArrowDown",run:jx},{key:"Shift-Alt-ArrowDown",run:qx},{key:"Mod-Alt-ArrowUp",run:Bx},{key:"Mod-Alt-ArrowDown",run:_x},{key:"Escape",run:Hx},{key:"Mod-Enter",run:Jx},{key:"Alt-l",mac:"Ctrl-l",run:Ix},{key:"Mod-i",run:Nx,preventDefault:!0},{key:"Mod-[",run:pm},{key:"Mod-]",run:fm},{key:"Mod-Alt-\\",run:Zx},{key:"Shift-Mod-k",run:Xx},{key:"Shift-Mod-\\",run:kx},{key:"Mod-/",run:Gw},{key:"Alt-A",mac:"Ctrl-A",run:Xw},{key:"Ctrl-m",mac:"Shift-Alt-m",run:Qx}].concat(t1),gm={key:"Tab",run:fm,shift:pm};var bm=new fn,ym=new fn,wm=new fn,Wc=new fn,Vc=ht.define(),ln=null;function xm(n){ln=n}function vm(n){ln===n&&(ln=null)}function km(n){return[j.domEventHandlers({keydown:(e,t)=>ln?.onKeydown(t,e)??!1,compositionstart:()=>(ln?.onCompositionChange(!0),!1),compositionend:()=>(setTimeout(()=>ln?.onCompositionChange(!1),0),!1),focus:()=>(ln?.onFocusChange(!0),!1),blur:()=>(ln?.onFocusChange(!1),!1)}),_p(),sp(),ap(),j.lineWrapping,cp(),hp(),bm.of(n.lineNumbers?dc():[]),ym.of(Tm(n.fontFamily)),wm.of(uc(n.placeholder)),Wc.of(j.editable.of(n.editable)),hc.of([...Wp,...mm,gm]),j.updateListener.of(e=>{e.docChanged&&!e.transactions.some(t=>t.annotation(Vc)===!0)&&ln?.onLocalChange(e.state.doc.toString()),(e.docChanged||e.selectionSet)&&ln?.onCaret(e.state.doc.toString(),e.state.selection.main.head)})]}function $c(n,e){n.dispatch({effects:[bm.reconfigure(e.lineNumbers?dc():[]),ym.reconfigure(Tm(e.fontFamily)),wm.reconfigure(uc(e.placeholder)),Wc.reconfigure(j.editable.of(e.editable))]})}function Sm(n,e){n.dispatch({effects:Wc.reconfigure(j.editable.of(e))})}function Cm(n,e,t){return Tn(()=>{let i=ue();$c(n,{lineNumbers:i.lineNumbers,fontFamily:i.fontFamily,placeholder:e,editable:t})})}function Tm(n){return j.theme({"&":{fontSize:"13px",height:"100%"},"&.cm-focused":{outline:"none"},".cm-scroller":{fontFamily:n,lineHeight:"1.6",overflow:"auto"},".cm-content":{caretColor:"var(--dsw-alias-state-business-primary, currentColor)",paddingBottom:"8px"},".cm-line":{padding:"0 8px"},".cm-cursor, .cm-dropCursor":{borderLeftColor:"var(--dsw-alias-state-business-primary, currentColor)"},".cm-gutters":{backgroundColor:"transparent",border:"none",color:"color-mix(in srgb, currentColor 32%, transparent)"},".cm-activeLineGutter":{backgroundColor:"transparent",color:"currentColor",fontWeight:600},".cm-activeLine":{backgroundColor:"color-mix(in srgb, currentColor 6%, transparent)"},".cm-lineNumbers .cm-gutterElement":{minWidth:"2.2em",padding:"0 6px 0 10px"},".cm-selectionBackground":{backgroundColor:"color-mix(in srgb, currentColor 15%, transparent) !important"},".cm-placeholder":{color:"color-mix(in srgb, currentColor 38%, transparent)"}})}function Am(n,e){return ke.create({doc:e,extensions:n})}var n1=4,pi=new Map;function Mm(n){let e=pi.get(n);return e&&pi.delete(n),e}function Em(n,e){for(pi.delete(n),pi.set(n,e);pi.size>n1;){let t=pi.keys().next().value;if(t===void 0)break;pi.delete(t)}}function i1(n){return n==="plain"?{tier:"plain"}:n==="claimed"?{tier:"claimed"}:{tier:"frozen"}}function Dm(n,e,t,i){if(!(!n||!i))try{n.track(e,t,i1(i.phase),i.draftRev)}catch(r){Xt("track failed",r)}}function Rm(n,e,t){if(!n)return;let i=e?.snapshot,r=i?.draft??"",s=i?.draftRev??0;e?.dismissPopup();let o={trigger:"/",query:"",quoted:!1,position:r.slice(0,t).trim()===""?"leading":"inline",span:{start:t,end:t,draftRev:s}};n.toggleSource("command",o)}var r1={ArrowUp:"up",ArrowDown:"down",Enter:"enter",Escape:"escape",Tab:"tab"};function Lm(n,e,t){if(!n||!n.menu.getSnapshot().open)return!1;let r=r1[e.key];return r?n.arbitrate(r,t)!=="pass":!1}function Om(n){if(!n)return!1;try{return n.onSpace()}catch{return!1}}var s1=new Set(["ctrl","alt","shift","meta","mod"]);function Pm(n,e){let t=e===" "?"space":(e.length===1,e.toLowerCase()),i=[];return n.ctrlKey&&i.push("ctrl"),n.altKey&&i.push("alt"),n.shiftKey&&i.push("shift"),n.metaKey&&i.push("meta"),i.push(t),i.join("+")}function o1(n){let e=new Set(n.toLowerCase().split("+").filter(Boolean)),t=[...e].filter(i=>!s1.has(i)).join("+");return{ctrl:e.has("ctrl"),alt:e.has("alt"),shift:e.has("shift"),meta:e.has("meta"),mod:e.has("mod"),key:t}}function Uc(n,e){let t=o1(n);return!t.key||t.key!==l1(e)?!1:t.mod?e.ctrlKey||e.metaKey?e.altKey===t.alt&&e.shiftKey===t.shift:!1:e.ctrlKey===t.ctrl&&e.altKey===t.alt&&e.shiftKey===t.shift&&e.metaKey===t.meta}function l1(n){let e=n.key;return e===" "?"space":e.toLowerCase()}function Im(n){let e={ctrl:"Ctrl",alt:"Alt",shift:"Shift",meta:"Cmd",mod:"Ctrl/Cmd",enter:"Enter",tab:"Tab",space:"Space",escape:"Esc"};return n.split("+").filter(Boolean).map(t=>e[t]??(t.length===1?t.toUpperCase():t.charAt(0).toUpperCase()+t.slice(1))).join(" + ")}var Jr=require("react/jsx-runtime");function Nm(n){let{state:e,actions:t,triggers:i,keyboard:r,onSendGesture:s,placeholder:o,autoFocus:l,viewRef:a,onCaretMoved:c,disabled:h,solo:u,stateKey:d}=n,f=(0,Rt.useRef)(null),p=(0,Rt.useRef)(!1),[g,b]=(0,Rt.useState)({line:1,col:1}),y=(0,Rt.useRef)(n);y.current=n;let x=e?.draft??"",C=d??"default";(0,Rt.useLayoutEffect)(()=>{let S=f.current;if(!S)return;let A=ue(),v={onKeydown:(M,F)=>{let K=y.current;if(Lm(K.triggers,F,p.current))return F.preventDefault(),!0;if(p.current)return!1;if(F.key===" "&&!F.ctrlKey&&!F.metaKey&&!F.altKey&&Om(K.triggers))return F.preventDefault(),!0;let G=ue();return Uc(G.sendHotkey,F)?(F.preventDefault(),K.onSendGesture(),!0):Uc(G.lineBreakHotkey,F)&&G.lineBreakHotkey!=="enter"?(F.preventDefault(),M.dispatch({changes:{from:M.state.selection.main.head,insert:`
590
- `}}),!0):!1},onLocalChange:M=>{let F=y.current;if(F.actions)try{F.actions.setDraft(M)}catch(K){Xt("setDraft failed",K)}},onCaret:(M,F)=>{let K=y.current;Dm(K.triggers,M,F,K.keyboard?.snapshot??K.state);let J=a.current?.state.doc.lineAt(F);b({line:J?J.number:1,col:F-(J?J.from:0)+1}),K.onCaretMoved?.(F)},onCompositionChange:M=>{p.current=M},onFocusChange:M=>{y.current.onFocusedChange?.(M)}};xm(v);let _=Mm(C),B=new j({state:_?.state??Am(km({lineNumbers:A.lineNumbers,fontFamily:A.fontFamily,placeholder:o,editable:!0}),""),parent:S});_&&(B.scrollDOM.scrollTop=_.scrollTop),a.current=B;let z=B.state.selection.main.head,W=B.state.doc.lineAt(z);return b({line:W.number,col:z-W.from+1}),l&&B.focus(),()=>{a.current=null,Em(C,{state:B.state,scrollTop:B.scrollDOM.scrollTop}),B.destroy(),vm(v)}},[C]),(0,Rt.useEffect)(()=>{let S=a.current;if(!S)return;let A=S.state.doc.toString();if(x===A)return;let v=Math.min(S.state.selection.main.head,x.length);S.dispatch({annotations:[Vc.of(!0),Le.addToHistory.of(!1)],changes:{from:0,to:A.length,insert:x},selection:{anchor:x===""?0:v},scrollIntoView:!0})},[x]),(0,Rt.useEffect)(()=>{let S=a.current;if(!S)return;let A=Cm(S,o,!0);return $c(S,{...a1(o),editable:!0}),A},[o]);let H=h===!0||e!==void 0&&(e.phase==="adjudicating"||e.phase==="submitting");return(0,Rt.useEffect)(()=>{let S=a.current;S&&Sm(S,!H)},[H,a]),(0,Jr.jsxs)("div",{className:"dci-editor-wrap","data-solo":u||void 0,children:[(0,Jr.jsx)("div",{className:"dci-cm-host",ref:f}),(0,Jr.jsxs)("div",{className:"dci-pos",children:[g.line,", ",g.col]})]})}function a1(n){let e=ue();return{lineNumbers:e.lineNumbers,fontFamily:e.fontFamily,placeholder:n}}var yt=require("react");var Zr=require("react");function wn(n){let e=(0,Zr.useCallback)(i=>n?n.subscribe(i):()=>{},[n]),t=(0,Zr.useCallback)(()=>n?.getSnapshot(),[n]);return(0,Zr.useSyncExternalStore)(e,t,t)}var ne=require("react/jsx-runtime"),Kc=400;function c1(n){return Ti(`menu.source.${n}`)??n}function Io(n,e){return`dsh-slash-option-${n}-${e}`}function h1(n){return n==="file"?(0,ne.jsx)(Uu,{size:16}):n==="folder"?(0,ne.jsx)(Ku,{size:16}):n==="session"?(0,ne.jsx)(ju,{size:16}):typeof n=="function"?(0,ne.jsx)(n,{size:16}):null}function Bm({size:n=14}){return(0,ne.jsx)("span",{style:{display:"inline-flex",transform:"rotate(-90deg)"},children:(0,ne.jsx)(Zt,{size:n})})}function _m(n){let{triggers:e,dropdown:t}=n,i=wn(e.menu),r=wn(e.headers),s=(0,yt.useRef)(null),[o,l]=(0,yt.useState)(Kc),[a,c]=(0,yt.useState)(null),h=i?.open===!0,u=h?i.highlight??null:null;if((0,yt.useLayoutEffect)(()=>{if(!h)return;let f=s.current?.closest(".dci-card");if(!f)return;if(t){let g=f.querySelector(".dci-accessory"),b=f.getBoundingClientRect(),y=g?g.getBoundingClientRect().bottom-b.top:36;c(Math.round(y)+2);let C=!!s.current?.closest(".dci-float")?window.innerHeight-(b.top+y)-16:b.height-y-10;l(Math.max(120,Math.min(Kc,C)));return}c(null);let p=f.getBoundingClientRect().top;l(Math.max(120,Math.min(Kc,p-16)))},[h,i?.generation,t]),(0,yt.useEffect)(()=>{u&&document.getElementById(Io(u.source,u.index))?.scrollIntoView({block:"nearest"})},[u]),(0,yt.useEffect)(()=>{if(!h)return;let f=p=>{p.target instanceof Node&&(s.current?.contains(p.target)||s.current?.closest("[data-composer-card]")?.contains(p.target)||e.dismiss())};return document.addEventListener("pointerdown",f,!0),()=>document.removeEventListener("pointerdown",f,!0)},[h,e]),!h||!i)return null;let d=f=>r?.get(f);return(0,ne.jsxs)("div",{ref:s,className:"dci-slash-menu","data-trigger-menu":"","data-dropdown":t||void 0,style:t?{top:a??38,maxHeight:o}:{maxHeight:o},children:[i.groups.map(f=>{let p=d(f.source);return p===void 0||p.length===0?null:(0,ne.jsx)("nav",{className:"dci-slash-crumbs","aria-label":k("menu.nav"),children:p.map((g,b)=>(0,ne.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:2},children:[b>0?(0,ne.jsx)("span",{className:"dci-slash-crumbSeparator","aria-hidden":"true",children:(0,ne.jsx)(Bm,{size:12})}):null,(0,ne.jsx)("button",{type:"button",className:"dci-slash-crumb","data-current":g.current===!0||void 0,"aria-current":g.current===!0?"location":void 0,disabled:g.current===!0,onMouseDown:y=>{y.preventDefault(),e.pickCrumb(f.source,b)},children:g.label})]},`${b}-${g.value}`))},`${f.source}:crumbs`)}),(0,ne.jsx)("div",{className:"dci-slash-viewport",role:"listbox","aria-label":k("menu.triggerCandidates"),"aria-activedescendant":u?Io(u.source,u.index):void 0,children:i.groups.map(f=>{if(f.status==="ready"&&f.items.length===0)return null;let p=f.items.some(g=>g.section!==void 0);return(0,ne.jsxs)(yt.Fragment,{children:[f.showGroupTitle===!1||p?null:(0,ne.jsx)("div",{className:"dci-slash-groupTitle",role:"presentation","data-source":f.source,children:c1(f.source)}),f.status==="pending"&&f.items.length===0?(0,ne.jsxs)("div",{role:"status","aria-label":Ti("menu.loading"),"data-source":f.source,children:[(0,ne.jsx)("div",{className:"dci-slash-skeletonRow",children:(0,ne.jsx)("span",{className:"dci-slash-skeletonBar",style:{width:"32%"}})}),(0,ne.jsx)("div",{className:"dci-slash-skeletonRow",children:(0,ne.jsx)("span",{className:"dci-slash-skeletonBar",style:{width:"48%"}})})]}):f.items.map((g,b)=>{let y=u?.source===f.source&&u.index===b;return(0,ne.jsxs)(yt.Fragment,{children:[g.section!==void 0&&g.section!==f.items[b-1]?.section?(0,ne.jsx)("div",{className:"dci-slash-sectionTitle",role:"presentation",children:g.section}):null,(0,ne.jsxs)("button",{id:Io(f.source,b),type:"button",role:"option","aria-selected":y,className:"dci-slash-item","data-active":y||void 0,onMouseDown:x=>{x.preventDefault(),e.pick(f.source,b)},onMouseMove:y?void 0:()=>e.hover(f.source,b),children:[g.icon!==void 0?(0,ne.jsx)("span",{className:"dci-slash-itemIcon","aria-hidden":"true",children:h1(g.icon)}):null,(0,ne.jsx)("span",{className:"dci-slash-itemName",children:g.label??g.name}),g.label!==void 0&&g.label.toLowerCase()!==g.name.toLowerCase()?(0,ne.jsx)("span",{className:"dci-slash-itemAlias",children:g.name}):null,g.description!==void 0?(0,ne.jsx)("span",{className:"dci-slash-itemDescription",children:g.description}):null,g.drill===!0?(0,ne.jsxs)("span",{className:"dci-slash-trailing",children:[(0,ne.jsx)("span",{className:"dci-slash-drillHintText","aria-hidden":"true",children:"\u8FDB\u5165\u76EE\u5F55"}),(0,ne.jsx)("kbd",{className:"dci-slash-drillHint","aria-hidden":"true",children:"Tab"}),(0,ne.jsx)("span",{role:"button","aria-label":Ti("menu.drill"),className:"dci-slash-drill",onMouseDown:x=>{x.preventDefault(),x.stopPropagation(),e.pick(f.source,b,"drill")},children:(0,ne.jsx)(Bm,{size:14})})]}):null]})]},Io(f.source,b))})]},f.source)})})]})}var Fn=require("react");function Hm(n,e){let t=e.trim().toLowerCase();return t===""?n:n.filter(i=>{let r=typeof i.label=="string"?i.label.toLowerCase():"",s=typeof i.detail=="string"?i.detail.toLowerCase():"";return r.includes(t)||s.includes(t)})}var be=require("react/jsx-runtime");function Fm(n){let{popup:e}=n,t=wn(e.state),i=(0,Fn.useRef)(null),r=(0,Fn.useRef)(null),s=(0,Fn.useMemo)(()=>t?Hm(t.options,t.search):[],[t?.options,t?.search]);if((0,Fn.useEffect)(()=>{if(!t?.open)return;let l=c=>{r.current&&c.target instanceof Node&&r.current.contains(c.target)||e.dismiss()},a=c=>{if(!(!t.open||t.submitting)){if(t.confirming){c.key==="Escape"&&(c.preventDefault(),e.cancelConfirmation());return}c.key==="ArrowDown"?(c.preventDefault(),e.move(1)):c.key==="ArrowUp"?(c.preventDefault(),e.move(-1)):c.key==="Enter"?(c.preventDefault(),e.select(t.active)):c.key==="Escape"&&(c.preventDefault(),e.dismiss({focusComposer:!0}))}};return window.addEventListener("pointerdown",l,!0),window.addEventListener("keydown",a,!0),()=>{window.removeEventListener("pointerdown",l,!0),window.removeEventListener("keydown",a,!0)}},[t?.open,t?.submitting,t?.confirming,t?.active,e]),(0,Fn.useEffect)(()=>{t?.open&&i.current?.focus()},[t?.open]),!t?.open)return null;let o=t.confirming;return(0,be.jsxs)("div",{className:"dci-menu",ref:r,children:[t.command?(0,be.jsx)("div",{className:"dci-group-title",children:t.command}):null,t.status==="failed"?(0,be.jsx)("div",{className:"dci-error",children:t.error??k("menu.loadFailed")}):null,t.status==="failed"?(0,be.jsx)("button",{type:"button",className:"dci-btn",onClick:()=>e.retry(),children:"\u91CD\u8BD5"}):null,t.status==="ready"&&!o?(0,be.jsx)("input",{ref:i,className:"dci-search",type:"text",placeholder:k("menu.filter"),value:t.search,onChange:l=>e.setSearch(l.target.value)}):null,o?(0,be.jsxs)("div",{className:"dci-confirm",children:[(0,be.jsx)("div",{className:"dci-row-name",children:String(o.label??"")}),o.detail?(0,be.jsx)("div",{className:"dci-row-desc",children:String(o.detail)}):null,(0,be.jsxs)("label",{children:[(0,be.jsx)("input",{type:"checkbox",checked:t.acknowledged,onChange:l=>e.acknowledge(l.target.checked)}),(0,be.jsx)("span",{children:k("popup.ack")})]}),(0,be.jsxs)("div",{className:"dci-confirm-actions",children:[(0,be.jsx)("button",{type:"button",className:"dci-btn",onClick:()=>e.cancelConfirmation(),children:"\u53D6\u6D88"}),(0,be.jsx)("button",{type:"button",className:"dci-btn","data-primary":"true",disabled:t.submitting||!t.acknowledged,onClick:()=>void e.confirm(),children:"\u786E\u8BA4"})]})]}):(0,be.jsxs)(be.Fragment,{children:[t.status==="pending"?(0,be.jsx)("div",{className:"dci-empty",children:k("menu.loading")}):null,t.status==="ready"&&s.length===0?(0,be.jsx)("div",{className:"dci-empty",children:k("menu.empty")}):null,s.map((l,a)=>(0,be.jsx)("button",{type:"button",className:"dci-opt","data-active":a===t.active||void 0,onMouseEnter:()=>e.highlight(a),onClick:()=>void e.select(a),children:(0,be.jsxs)("span",{className:"dci-opt-copy",children:[(0,be.jsx)("span",{className:"dci-opt-name",children:String(l.label??"")}),l.detail?(0,be.jsx)("span",{className:"dci-opt-desc",children:String(l.detail)}):null]})},`${String(l.label)}:${a}`))]}),t.error&&t.status==="ready"?(0,be.jsx)("div",{className:"dci-error",children:t.error}):null]})}var mi=require("react");var Qr=require("react"),zm=require("react-dom"),an=require("react/jsx-runtime");function u1({size:n=16}){return(0,an.jsxs)("svg",{width:n,height:n,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",strokeWidth:1,children:[(0,an.jsx)("path",{d:"M2.5 2.5L13.5 13.5",stroke:"currentColor"}),(0,an.jsx)("path",{d:"M13.5 2.5L2.5 13.5",stroke:"currentColor"})]})}function Wm(n){let{src:e,alt:t,labels:i,onClose:r}=n,s=(0,Qr.useRef)(null),o=(0,Qr.useRef)(null);return(0,Qr.useEffect)(()=>{o.current=document.activeElement instanceof HTMLElement?document.activeElement:null,s.current?.focus();let l=a=>{a.key==="Escape"&&(a.stopPropagation(),r()),a.key==="Tab"&&(a.preventDefault(),s.current?.focus())};return window.addEventListener("keydown",l,!0),()=>{window.removeEventListener("keydown",l,!0),o.current?.focus()}},[r]),(0,zm.createPortal)((0,an.jsxs)("div",{className:"dci-lightbox",role:"dialog","aria-modal":"true","aria-label":i.dialog,children:[(0,an.jsx)("div",{className:"dci-lightbox-mask","aria-hidden":"true",onMouseDown:r}),(0,an.jsx)("img",{className:"dci-lightbox-image",src:e,alt:t}),(0,an.jsx)("button",{ref:s,type:"button",className:"dci-lightbox-close","aria-label":i.close,onClick:r,children:(0,an.jsx)(u1,{})})]}),document.body)}var Z=require("react/jsx-runtime"),d1="M8.48924 28H19.5108C21.6479 28 22.7165 28 23.5594 27.6509C24.6833 27.1853 25.5762 26.2924 26.0417 25.1685C26.3909 24.3256 26.3909 23.257 26.3909 21.1199V8.79443C26.3909 8.32877 26.3909 8.09593 26.3471 7.87507C26.2887 7.58058 26.173 7.30042 26.0067 7.05048C25.882 6.86303 25.7177 6.69799 25.3893 6.36792L20.0611 1.01354C19.7304 0.681235 19.5651 0.515081 19.3769 0.38885C19.126 0.220541 18.8443 0.103463 18.5481 0.0443412C18.3259 0 18.0915 0 17.6226 0H8.48924C6.35209 0 5.28351 0 4.4406 0.349145C3.31672 0.814671 2.4238 1.70759 1.95828 2.83147C1.60913 3.67438 1.60913 4.74296 1.60913 6.88011V21.1199C1.60913 23.257 1.60913 24.3256 1.95828 25.1685C2.4238 26.2924 3.31672 27.1853 4.4406 27.6509C5.28351 28 6.35209 28 8.48924 28Z",f1="M26.3909 7.37445L19.0525 0V3.77445C19.0525 4.89271 19.0525 5.45184 19.2352 5.89289C19.4788 6.48096 19.946 6.94818 20.5341 7.19176C20.9751 7.37445 21.5342 7.37445 22.6525 7.37445H26.3909Z";function Vm({size:n=28}){return(0,Z.jsxs)("svg",{width:n,height:n,viewBox:"0 0 28 28",fill:"none","aria-hidden":"true",children:[(0,Z.jsx)("path",{d:d1,fill:"currentColor"}),(0,Z.jsx)("path",{d:f1,fill:"var(--dsw-static-neutral-00, #fff)",fillOpacity:"0.7"})]})}function p1(n){let e=n.split(/[\\/]/).pop()??n,t=e.lastIndexOf(".");return t<0?"":e.slice(t+1)}function m1(n){if(n<1024)return`${n}B`;let e=n/1024;if(e<1024)return`${e<10?e.toFixed(1):Math.round(e)}KB`;let t=e/1024;if(t<1024)return`${t<10?t.toFixed(1):Math.round(t)}MB`;let i=t/1024;return`${i<10?i.toFixed(1):Math.round(i)}GB`}function Km(n){let{state:e,sessionId:t,onRemove:i}=n,r=X.conversation,s=wn(r?.fileUploads),o=(0,mi.useRef)(null),[l,a]=(0,mi.useState)({left:!1,right:!1}),[c,h]=(0,mi.useState)(null),u=e===void 0||typeof r?.resolveDraftAttachments!="function"?[]:r.resolveDraftAttachments(e.attachmentIds)??[];if((0,mi.useEffect)(()=>{let f=o.current;if(!f)return;let p=()=>{let y=f.scrollWidth-f.clientWidth,x={left:f.scrollLeft>1,right:y>1&&f.scrollLeft<y-1};a(C=>C.left===x.left&&C.right===x.right?C:x)};p(),f.addEventListener("scroll",p,{passive:!0});let g=typeof ResizeObserver=="function"?new ResizeObserver(p):null;g?.observe(f);let b=y=>{Math.abs(y.deltaY)<=Math.abs(y.deltaX)||(y.preventDefault(),f.scrollLeft+=y.deltaY)};return f.addEventListener("wheel",b,{passive:!1}),()=>{f.removeEventListener("scroll",p),f.removeEventListener("wheel",b),g?.disconnect()}},[u.length]),u.length===0)return null;let d=f=>{o.current?.scrollBy({left:f*Math.max(120,(o.current?.clientWidth??240)*.8),behavior:"smooth"})};return(0,Z.jsxs)("div",{className:"dci-attach-root",children:[(0,Z.jsx)("div",{className:"dci-attach-rail",ref:o,role:"group","aria-label":k("attach.group"),children:u.map(f=>{let p=s?.[f.id],g=p?.status??"ready",b=f.kind==="image"||f.file.type.startsWith("image/"),y=g==="uploading"&&p?.total?Math.min(100,Math.round((p.loaded??0)/p.total*100)):null;if(b)return(0,Z.jsxs)("div",{className:"dci-attach-item",children:[(0,Z.jsx)("button",{type:"button",className:"dci-attach-thumb",title:k("image.openOriginal"),"aria-label":k("image.openOriginalLabel",{name:f.file.name}),onClick:()=>{f.previewUrl&&h({url:f.previewUrl,name:f.file.name})},children:f.previewUrl?(0,Z.jsx)("img",{src:f.previewUrl,alt:f.file.name}):(0,Z.jsx)(Vm,{size:28})}),(0,Z.jsx)("button",{type:"button",className:"dci-attach-remove","aria-label":k("attach.remove",{name:f.file.name}),onClick:()=>i(f.id),children:(0,Z.jsx)($m,{})}),y!==null?(0,Z.jsx)("span",{className:"dci-attach-progress",children:(0,Z.jsx)("span",{className:"dci-attach-progressBar",style:{width:`${y}%`}})}):null]},f.id);let x=g==="error",C=g==="uploading"?k("attach.uploading"):x?k("attach.failed"):[p1(f.file.name).toUpperCase().slice(0,8),m1(f.file.size)].filter(S=>S!=="").join(" "),H=(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)("span",{className:"dci-attach-name",children:f.file.name}),(0,Z.jsx)("span",{className:x?"dci-attach-meta dci-attach-metaFailed":"dci-attach-meta",children:C})]});return(0,Z.jsxs)("div",{className:x?"dci-attach-card dci-attach-cardFailed":"dci-attach-card",title:f.file.name,children:[(0,Z.jsx)("span",{className:"dci-attach-icon","aria-hidden":"true",children:g==="uploading"?(0,Z.jsx)("span",{className:"dci-attach-spinner"}):(0,Z.jsx)(Vm,{size:28})}),x?(0,Z.jsx)("button",{type:"button",className:"dci-attach-body dci-attach-retry","aria-label":k("attach.retry"),onClick:()=>g1(t,f.id),children:H}):(0,Z.jsx)("span",{className:"dci-attach-body","aria-label":k("attach.pending",{name:f.file.name}),children:H}),(0,Z.jsx)("button",{type:"button",className:x?"dci-attach-removeInline dci-attach-cardFailedRemove":"dci-attach-removeInline","aria-label":k("attach.remove",{name:f.file.name}),onClick:()=>i(f.id),children:(0,Z.jsx)($m,{})}),y!==null?(0,Z.jsx)("span",{className:"dci-attach-progress",children:(0,Z.jsx)("span",{className:"dci-attach-progressBar",style:{width:`${y}%`}})}):null]},f.id)})}),l.left?(0,Z.jsx)("button",{type:"button",className:"dci-attach-arrow dci-attach-arrowLeft","aria-label":k("attach.scrollLeft"),onClick:()=>d(-1),children:(0,Z.jsx)(Um,{dir:"left"})}):null,l.right?(0,Z.jsx)("button",{type:"button",className:"dci-attach-arrow dci-attach-arrowRight","aria-label":k("attach.scrollRight"),onClick:()=>d(1),children:(0,Z.jsx)(Um,{dir:"right"})}):null,c?(0,Z.jsx)(Wm,{src:c.url,alt:c.name,labels:{dialog:k("image.preview"),close:k("image.closePreview")},onClose:()=>h(null)}):null]})}function g1(n,e){let t=X.conversation;if(!(!n||typeof t?.retryFileUpload!="function"))try{t.retryFileUpload(n,e)}catch{}}function $m(){return(0,Z.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none","aria-hidden":"true",children:(0,Z.jsx)("path",{d:"M1.6 1.6L8.4 8.4M8.4 1.6L1.6 8.4",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round"})})}function Um({dir:n}){return(0,Z.jsx)("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none","aria-hidden":"true",style:n==="left"?{transform:"scaleX(-1)"}:void 0,children:(0,Z.jsx)("path",{d:"M5.5 3.5L9 7L5.5 10.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}var Bo=require("react");var $t=require("react");function jm(n){let e=X.modelDirectories;if(!e||typeof e.directoryFor!="function"||!n)return null;try{return e.directoryFor(n)}catch(t){return Xt("directoryFor failed",t),null}}var Yi=require("react"),es=require("react/jsx-runtime");function Ji(n){let{anchor:e,onClose:t,children:i,alignEnd:r,minWidth:s=218,side:o="top"}=n,l=(0,Yi.useRef)(null);return(0,Yi.useLayoutEffect)(()=>{let c=l.current;if(!c)return;let h=c.getBoundingClientRect(),u;o==="top"?(u=Math.max(12,e.top-h.height-4),c.style.bottom="auto"):(u=Math.min(window.innerHeight-h.height-12,e.bottom+4),c.style.bottom="auto"),c.style.top=`${u}px`;let d=e.left;r&&(d=e.right-h.width),d=Math.min(Math.max(12,d),window.innerWidth-h.width-12),c.style.left=`${d}px`},[e,r,o]),(0,Yi.useEffect)(()=>{let c=h=>{l.current&&h.target instanceof Node&&l.current.contains(h.target)||t()};return window.addEventListener("pointerdown",c,!0),()=>window.removeEventListener("pointerdown",c,!0)},[t]),(0,es.jsx)("div",{ref:l,className:"dci-menu",style:o==="bottom"?{top:e.bottom+4,bottom:"auto",...r?{left:"auto",right:window.innerWidth-e.right}:{left:e.left},minWidth:s}:{left:e.left,bottom:window.innerHeight-e.top+4,top:"auto",...r?{left:"auto",right:window.innerWidth-e.right}:{},minWidth:s},children:(0,es.jsx)("div",{className:"dci-viewport",children:i})})}function ts({size:n=16}){return(0,es.jsx)("svg",{width:n,height:n,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:(0,es.jsx)("path",{d:"M3 8.5L6.5 12L13 4.5",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round",strokeLinejoin:"round"})})}var Y=require("react/jsx-runtime");function jc(n,e){if(!n)return null;for(let t of e){if(t.id!==n.provider)continue;let i=t.models.find(r=>r.id===n.model);if(i)return{group:t,model:i}}return null}function b1(n,e){return n?jc(n,e)?.model.name??n.model:k("tool.modelPlain")}function y1(n,e){let t=n?.reasoningEffort;if(!t)return"Default";let i=jc(n,e)?.model.reasoning?.efforts.find(r=>r.id===t);return i?i.name:t.charAt(0).toUpperCase()+t.slice(1)}function Gm(n){let{sessionId:e,onNotify:t}=n,[i,r]=(0,$t.useState)(!1),[s,o]=(0,$t.useState)(!1),[l,a]=(0,$t.useState)("root"),c=(0,$t.useRef)(null),[h,u]=(0,$t.useState)(null),d=jm(e),f=wn(d?.store);(0,$t.useEffect)(()=>{!s||!d||d.load().catch(()=>{})},[s]),(0,$t.useEffect)(()=>{if(!s)return;let v=_=>{A(p.current,_.target)||b()};return window.addEventListener("pointerdown",v,!0),()=>window.removeEventListener("pointerdown",v,!0)},[s]);let p=(0,$t.useRef)(null),g=()=>{let v=c.current;v&&(u(v.getBoundingClientRect()),a("root"),o(!0))},b=()=>{o(!1),a("root")},y=f?.current??null,x=f?.groups??[],C=b1(y,x),H=y1(y,x),S=async(v,_,B)=>{if(!d||i)return;let z={provider:v.id,model:_.id,...B!==void 0?{reasoningEffort:B}:{}};r(!0);try{await d.select(z)}catch(W){t?.("error",W instanceof Error?W.message:String(W))}finally{r(!1),b()}},A=(v,_)=>!!v&&_ instanceof Node&&v.contains(_);return(0,Y.jsxs)("div",{style:{position:"relative",minWidth:0},children:[(0,Y.jsxs)("button",{ref:c,type:"button",className:"dci-trigger",style:{maxWidth:"min(360px, 45cqw)"},"data-open":s,onMouseDown:v=>v.preventDefault(),disabled:!d,onClick:()=>s?b():g(),"aria-label":k("tool.model",{name:`${C} \xB7 ${H}`}),title:k("tool.model",{name:`${C} \xB7 ${H}`}),children:[(0,Y.jsx)("span",{className:"dci-triggerLabel",children:C}),H?(0,Y.jsx)("span",{className:"dci-triggerEffort",children:H}):null,(0,Y.jsx)("span",{className:"dci-chev","data-open":s,children:(0,Y.jsx)(Zt,{size:14})})]}),s&&h?(0,Y.jsx)("div",{ref:p,children:(0,Y.jsxs)(Ji,{anchor:h,onClose:b,alignEnd:!0,minWidth:240,children:[l==="root"?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)("button",{type:"button",className:"dci-cell",onClick:()=>a("models"),children:[(0,Y.jsx)("span",{className:"dci-cellLabel",children:k("menu.model")}),(0,Y.jsx)("span",{className:"dci-cellValue",children:C}),(0,Y.jsx)("span",{className:"dci-cellChevron",style:{transform:"rotate(-90deg)"},"aria-hidden":"true",children:(0,Y.jsx)(Zt,{size:14})})]}),(0,Y.jsxs)("button",{type:"button",className:"dci-cell",onClick:()=>a("efforts"),children:[(0,Y.jsx)("span",{className:"dci-cellLabel",children:k("menu.reasoning")}),(0,Y.jsx)("span",{className:"dci-cellValue",children:H}),(0,Y.jsx)("span",{className:"dci-cellChevron",style:{transform:"rotate(-90deg)"},"aria-hidden":"true",children:(0,Y.jsx)(Zt,{size:14})})]})]}):null,l==="models"?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)("div",{className:"dci-menuLabel",children:k("menu.model")}),x.map(v=>(0,Y.jsxs)("div",{children:[(0,Y.jsx)("div",{className:"dci-menuLabel",children:v.name}),v.models.map(_=>{let B=y!==null&&y.provider===v.id&&y.model===_.id;return(0,Y.jsxs)("button",{type:"button",className:"dci-item",disabled:i,title:_.description,onClick:()=>void S(v,_,_.reasoning?.defaultEffort),children:[(0,Y.jsx)("span",{className:"dci-itemLabel",children:_.name}),B?(0,Y.jsx)("span",{className:"dci-check","aria-hidden":"true",children:(0,Y.jsx)(ts,{size:16})}):null]},_.id)})]},v.id)),x.length===0?(0,Y.jsx)("div",{className:"dci-empty",children:f?.status==="loading"?k("menu.refreshingModels"):k("menu.noModels")}):null]}):null,l==="efforts"?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)("div",{className:"dci-menuLabel",children:k("menu.reasoning")}),(()=>{let v=jc(y,x),_=v?.model.reasoning?.efforts??[];return _.length===0?(0,Y.jsx)("div",{className:"dci-empty",children:k("menu.reasoningNone")}):_.map(B=>{let z=y?.reasoningEffort===B.id;return(0,Y.jsxs)("button",{type:"button",className:"dci-item",disabled:i,title:B.description,onClick:()=>v&&void S(v.group,v.model,B.id),children:[(0,Y.jsx)("span",{className:"dci-itemLabel",children:B.name}),z?(0,Y.jsx)("span",{className:"dci-check","aria-hidden":"true",children:(0,Y.jsx)(ts,{size:16})}):null]},B.id)})})()]}):null]})}):null]})}var Ut=require("react");var No=["read-only","workspace-write","danger-full-access"];function qm(n){return Ti(`perm.preset.${n}`)??n}function gi(){return{title:k("perm.confirmTitle"),description:k("perm.warning"),acknowledgeLabel:k("perm.ack"),cancelLabel:k("perm.cancel"),enableLabel:k("perm.confirmEnable")}}function Gc(n,e){return No.includes(n)&&(e===n||e===qm(n))?qm(n):/^[a-z0-9]+(-[a-z0-9]+)*$/.test(e)?e.split("-").map(i=>i.charAt(0).toUpperCase()+i.slice(1)).join(" "):e}async function w1(n,e){let t=X.sessions?.binding(n)?.session;if(!t||typeof t.command!="function")return null;try{let i=await t.command(`/permission ${e}`);return i?.ok?i.value?.matched===!1?{ok:!1,via:"command",message:k("perm.channelRejected")}:(dl(e),{ok:!0,via:"command"}):{ok:!1,via:"command",message:k("perm.channelRejected")}}catch(i){return Xt("permission command failed",i),{ok:!1,via:"command",message:String(i)}}}function x1(n,e,t){try{return e.setDraft(`/permission ${n}`),e.submit(),setTimeout(()=>{try{e.setDraft(t)}catch(i){Xt("permission draft restore failed",i)}},600),dl(n),{ok:!0,via:"draft-exchange"}}catch(i){return Xt("permission draft-exchange failed",i),{ok:!1,via:"draft-exchange",message:String(i)}}}async function Xm(n,e,t,i){let r=await w1(n,e);return r||(t?x1(e,t,i):{ok:!1,via:"draft-exchange",message:k("perm.noInputSurface")})}var Q=require("react/jsx-runtime"),Ym="danger-full-access";function qc(n){if(n==="read-only")return(0,Q.jsx)(Xu,{size:16});if(n==="workspace-write")return(0,Q.jsx)(Yu,{size:16});if(n===Ym)return(0,Q.jsx)(Ju,{size:16})}function Jm(n){let{sessionId:e,actions:t,currentDraft:i,useProjection:r,disabled:s,onNotify:o}=n,l=r?r("permissions"):void 0,[a,c]=(0,Ut.useState)(null),[h,u]=(0,Ut.useState)(!1),[d,f]=(0,Ut.useState)(null),[p,g]=(0,Ut.useState)(!1),b=(0,Ut.useRef)(null),[y,x]=(0,Ut.useState)(null);if((0,Ut.useEffect)(()=>{s||l===void 0&&(u(!1),g(!1),f(null))},[s,l]),!l||typeof l.currentValue!="string")return null;let C=a!==null||d!==null,H=a??l.currentValue,S=Gc(H,H),A=[...No,...No.includes(H)?[]:[H]].map(M=>({id:M,label:Gc(M,M),icon:qc(M)})),v=()=>u(!1),_=M=>{e&&(c(M),Xm(e,M,t,i).then(F=>{F.ok||o?.("error",F.message??k("perm.switchFailed"))}).finally(()=>c(null)))},B=M=>{if(v(),M!==l.currentValue){if(M===Ym){g(!1),f(M);return}_(M)}},z=()=>{g(!1),f(null)},W=()=>{if(s||!p||d===null)return;let M=d;z(),_(M)};return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)("button",{ref:b,type:"button",className:"dci-trigger","aria-label":k("perm.trigger",{name:S}),title:void 0,disabled:s||C,onMouseDown:M=>M.preventDefault(),onClick:()=>{h||x(b.current?.getBoundingClientRect()??null),u(!h)},children:[qc(H)!==void 0?(0,Q.jsx)("span",{className:"dci-triggerIcon","aria-hidden":"true",children:qc(H)}):null,(0,Q.jsx)("span",{className:"dci-triggerLabel",children:S}),(0,Q.jsx)("span",{className:"dci-chev","data-open":h,children:(0,Q.jsx)(Zt,{size:14})})]}),h&&y?(0,Q.jsx)(Ji,{anchor:y,onClose:v,children:A.map(M=>{let F=M.id===H;return(0,Q.jsxs)("button",{type:"button",className:"dci-item",disabled:C,onClick:()=>B(M.id),children:[M.icon!==void 0?(0,Q.jsx)("span",{className:"dci-itemIcon","aria-hidden":"true",children:M.icon}):null,(0,Q.jsx)("span",{className:"dci-itemLabel",children:M.label}),F?(0,Q.jsx)("span",{className:"dci-check","aria-hidden":"true",children:(0,Q.jsx)(ts,{size:16})}):null]},M.id)})}):null,(0,Q.jsx)(v1,{open:d!==null,acknowledged:p,disabled:s===!0,onAcknowledgedChange:g,onCancel:z,onConfirm:W})]})}function v1(n){let{open:e,acknowledged:t,disabled:i,onAcknowledgedChange:r,onCancel:s,onConfirm:o}=n;return(0,Ut.useEffect)(()=>{if(!e)return;let l=a=>{a.key==="Escape"&&s()};return document.addEventListener("keydown",l),()=>document.removeEventListener("keydown",l)},[e]),e?(0,Q.jsxs)("div",{className:"dci-modal-root",role:"presentation",children:[(0,Q.jsx)("div",{className:"dci-modal-mask","aria-hidden":"true",onClick:s}),(0,Q.jsxs)("div",{className:"dci-modal-dialog dci-confirm",role:"dialog","aria-modal":"true","aria-label":gi().title,children:[(0,Q.jsxs)("div",{className:"dci-modal-content",children:[(0,Q.jsxs)("div",{className:"dci-modal-header",children:[(0,Q.jsx)("h2",{className:"dci-modal-title",children:gi().title}),(0,Q.jsx)("button",{type:"button",className:"dci-modal-close","aria-label":k("perm.close"),onClick:s,children:(0,Q.jsx)($u,{size:14})})]}),(0,Q.jsxs)("div",{className:"dci-modal-body",children:[(0,Q.jsxs)("div",{className:"dci-confirm-warning",children:[(0,Q.jsx)("span",{className:"dci-confirm-warningIcon","aria-hidden":"true",children:(0,Q.jsx)(Zu,{size:18})}),(0,Q.jsx)("p",{children:gi().description})]}),(0,Q.jsxs)("label",{className:"dci-confirm-ack",children:[(0,Q.jsx)("input",{type:"checkbox",checked:t,disabled:i,autoFocus:!0,onChange:l=>r(l.currentTarget.checked)}),(0,Q.jsx)("span",{children:gi().acknowledgeLabel})]})]})]}),(0,Q.jsxs)("div",{className:"dci-modal-footer",children:[(0,Q.jsx)("button",{type:"button",className:"dci-btn dci-btn-outline dci-btn-cancel",onClick:s,children:gi().cancelLabel}),(0,Q.jsx)("button",{type:"button",className:"dci-btn dci-btn-primary dci-btn-confirm",disabled:i||!t,onClick:o,children:gi().enableLabel})]})]})]}):null}var Ge=require("react");var k1="conversation.input.activity",S1="voice-input",Xc=[],Zm=new WeakMap,Qm=new WeakMap,Yc=new Map;function C1(n){let e=X.slots,t=(0,Ge.useCallback)(r=>{if(typeof e?.subscribe!="function")return()=>{};try{return e.subscribe(n,r)??(()=>{})}catch{return()=>{}}},[e,n]),i=(0,Ge.useCallback)(()=>{if(typeof e?.entries!="function")return Xc;try{return e.entries(n)??Xc}catch{return Xc}},[e,n]);return(0,Ge.useSyncExternalStore)(t,i,i)}function T1(n,e){if(typeof n.inject!="function")return null;let t=Qm.get(n);if(t||(t=new Map,Qm.set(n,t)),!t.has(e)){let i=null;try{i=n.inject(e)??null}catch(r){Ie("voice.inject",r),i=null}t.set(e,i)}return t.get(e)??null}function A1(n){let e=n.locale??S1;return Yc.has(e)||Yc.set(e,Fh(e)),Yc.get(e)??null}function M1(n){let e=n;if(!e||typeof e.subscribe!="function"||typeof e.getSnapshot!="function")return null;let t=Zm.get(e);return t||(t=i=>(0,Ge.useSyncExternalStore)(r=>e.subscribe(r)??(()=>{}),()=>i(e.getSnapshot()),()=>i(e.getSnapshot())),Zm.set(e,t)),t}var Jc=class extends Ge.Component{constructor(){super(...arguments);ce(this,"state",{failed:!1})}static getDerivedStateFromError(){return{failed:!0}}componentDidCatch(t){Ie("voice.entry",t)}render(){return this.state.failed?null:this.props.children}};function eg(n){let{sessionId:e,inputActions:t,locked:i,onActiveChange:r}=n,s=C1(k1),o=(0,Ge.useMemo)(()=>{for(let f of s){let p=f;if(p&&typeof p=="object"&&typeof p.component=="function")return p}return null},[s]),l=(0,Ge.useMemo)(()=>o&&e?T1(o,e):null,[o,e]),a=(0,Ge.useMemo)(()=>o?A1(o):null,[o]),c=l?.hooks?.speechReadiness,h=(0,Ge.useMemo)(()=>M1(c),[c]);if(!o||!e||!l||!a||!h)return null;let{hooks:u,...d}=l;return(0,Ge.createElement)(Jc,{children:(0,Ge.createElement)(o.component,{sessionId:e,inputActions:t,locked:i,onActiveChange:r,...d,useSpeechReadiness:h,t:a})})}var nt=require("react/jsx-runtime");function tg(n){n.preventDefault()}function ng(n){let{sessionId:e,state:t,actions:i,triggers:r,caretRef:s,useProjection:o,disabled:l,onNotify:a}=n;Yt();let c=t?.attachmentIds??[],[h,u]=(0,Bo.useState)(!1),d=(0,Bo.useCallback)(p=>u(p),[]),f=()=>{r&&Rm(r,void 0,s.current??0)};return(0,nt.jsxs)("div",{className:"dci-row","data-voice-active":h||void 0,children:[(0,nt.jsxs)("div",{className:"dci-tools",children:[(0,nt.jsx)("button",{type:"button",className:"dci-add","aria-label":k("tool.command"),"aria-haspopup":"listbox",title:k("tool.command"),disabled:!r,onMouseDown:tg,onClick:f,children:(0,nt.jsx)(Gu,{size:14})}),(0,nt.jsx)(Jm,{sessionId:e,actions:i,currentDraft:t?.draft??"",useProjection:o,disabled:l,onNotify:a})]}),(0,nt.jsxs)("div",{className:"dci-trailing",children:[(0,nt.jsx)("div",{className:"dci-standard-controls",children:(0,nt.jsx)(Gm,{sessionId:e,onNotify:a})}),(0,nt.jsx)("div",{className:"dci-voice-seat",children:(0,nt.jsx)(eg,{sessionId:e,inputActions:i,locked:l===!0,onActiveChange:d})}),(0,nt.jsx)("button",{type:"button",className:"dci-send","aria-label":n.primaryStops?k("tool.stop"):k("tool.send"),title:n.primaryStops?k("tool.stop"):k("tool.send"),disabled:n.primaryStops?!n.onStop:n.sendDisabled,onMouseDown:tg,onClick:()=>n.primaryStops?n.onStop?.():n.onSend(),children:n.primaryStops?(0,nt.jsx)(ed,{size:16}):(0,nt.jsx)(Qu,{size:16})})]})]})}var xn=require("react");var ns=["tokenUsage","contextPressure","sessionUsage","usage","sessionStats"];function ve(n){return typeof n=="number"&&Number.isFinite(n)?n:void 0}function E1(n){if(!n||typeof n!="object")return;let e=n,t={cacheReadTokens:ve(e.cacheReadTokens),cacheWriteTokens:ve(e.cacheWriteTokens),outputTokens:ve(e.outputTokens),uncachedInputTokens:ve(e.uncachedInputTokens)};return Object.values(t).some(i=>i!==void 0)?t:void 0}function D1(n){if(!n||typeof n!="object")return;let e=n,t={contextWindow:ve(e.contextWindow),pressureTokens:ve(e.pressureTokens),projectedTokens:ve(e.projectedTokens)};return t.contextWindow!==void 0&&t.pressureTokens!==void 0?t:void 0}function R1(n){if(!n||typeof n!="object")return;let e=n,t={turns:ve(e.turns),steps:ve(e.steps),llmMs:ve(e.llmMs),toolMs:ve(e.toolMs),ttftMs:ve(e.ttftMs),ttftSteps:ve(e.ttftSteps),decodeMs:ve(e.decodeMs),decodeTokens:ve(e.decodeTokens)};return Object.values(t).some(i=>i!==void 0)?t:void 0}function L1(n){if(!Array.isArray(n))return;let e=new Set,t=0,i=0,r=0,s=0,o=0,l=0,a=0;for(let c of n){if(!c||typeof c!="object")continue;let h=c;if(h.kind==="tool-result"){let y=ve(h.callTime),x=ve(h.time);y!==void 0&&x!==void 0&&(r+=Math.max(0,x-y));continue}if(h.kind!=="assistant")continue;e.add(h.turn),t+=1;let u=h.timing,d=ve(u?.stepStartTime),f=ve(u?.firstTokenTime),p=ve(u?.completedTime);d!==void 0&&p!==void 0&&(i+=Math.max(0,p-d)),d!==void 0&&f!==void 0&&(s+=Math.max(0,f-d),o+=1),f!==void 0&&p!==void 0&&(l+=Math.max(0,p-f));let g=h.usage,b=ve(g?.outputTokens);b!==void 0&&b>=0&&(a+=b)}if(n.length!==0)return{turns:e.size,steps:t,llmMs:i,toolMs:r,ttftMs:s,ttftSteps:o,decodeMs:l,decodeTokens:a}}function Zc(n){let e=Math.max(0,n);return e>=10?String(Math.round(e)):String(Math.round(e*10)/10)}function Qc(n,e){if(e<=0)return null;if(n>=e)return"100";for(let t=0;t<20;t++){let i=10**t,r=Math.round(n/e*100*i)/i;if(r<100)return t===0?String(r):r.toFixed(t)}return"99.99"}function _o(n){let e=n/1e3;if(e<60)return`${Math.round(e*10)/10}s`;let t=Math.round(e);return`${Math.floor(t/60)}\u5206${t%60}\u79D2`}function ig(n,e,t){let i=n?n(ns[0]):void 0,r=n?n(ns[1]):void 0,s=n?n(ns[2]):void 0,o=n?n(ns[3]):void 0,l=n?n(ns[4]):void 0,a=E1(i),c=D1(r),h=R1(l)??L1(t)??O1(s,o),u={};if(h&&((h.turns!==void 0||h.steps!==void 0)&&(u.turns=h.turns,u.steps=h.steps),h.llmMs!==void 0&&(u.llmMs=h.llmMs),h.toolMs!==void 0&&(u.toolMs=h.toolMs),h.ttftMs!==void 0&&(u.ttftMs=h.ttftMs),h.ttftSteps!==void 0&&(u.ttftSteps=h.ttftSteps),h.decodeMs!==void 0&&(u.decodeMs=h.decodeMs),h.decodeTokens!==void 0&&(u.decodeTokens=h.decodeTokens),(h.decodeMs??0)>0&&(u.tokensPerSecond=(h.decodeTokens??0)/(h.decodeMs/1e3))),a){let p=(a.cacheReadTokens??0)+(a.cacheWriteTokens??0)+(a.outputTokens??0)+(a.uncachedInputTokens??0);p>0&&(u.totalTokens=p,u.uncachedInputTokens=a.uncachedInputTokens,u.cacheReadTokens=a.cacheReadTokens,u.cacheWriteTokens=a.cacheWriteTokens,u.outputTokens=a.outputTokens);let g=(a.cacheReadTokens??0)+(a.cacheWriteTokens??0)+(a.uncachedInputTokens??0);if(g>0){let b=Qc(a.cacheReadTokens??0,g);b!==null&&(u.cacheHitText=b)}}let d=c?.contextWindow,f=c?.projectedTokens??c?.pressureTokens;return d!==void 0&&d>0&&f!==void 0&&(u.contextPct=f/d*100),Object.keys(u).length>0?u:null}function O1(n,e){let t=i=>{if(!i||typeof i!="object")return;let r=i,s=ve(r.turns)??ve(r.turnCount),o=ve(r.steps)??ve(r.stepCount);return s!==void 0||o!==void 0?{turns:s,steps:o}:void 0};return t(n)??t(e)}function Ho(n){let e=t=>t>=100?String(Math.round(t)):String(Math.round(t*10)/10);return n<1e3?`${n} tok`:n<1e6?`${e(n/1e3)}K tok`:`${e(n/1e6)}M tok`}var P=require("react/jsx-runtime");function eh({size:n=14}){return(0,P.jsxs)("svg",{width:n,height:n,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[(0,P.jsx)("path",{d:"M3.49 13.26A6.375 6.375 0 1 1 12.51 13.26",stroke:"currentColor",strokeWidth:"1.25"}),(0,P.jsx)("path",{d:"M8 8.75L11.4 5.35",stroke:"currentColor",strokeWidth:"1.25"}),(0,P.jsx)("circle",{cx:"8",cy:"8.75",r:"1.55",fill:"currentColor"})]})}function rg({size:n=14}){return(0,P.jsxs)("svg",{width:n,height:n,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[(0,P.jsx)("ellipse",{cx:"8",cy:"3.6",rx:"5.75",ry:"2.4",stroke:"currentColor",strokeWidth:"1.25"}),(0,P.jsx)("path",{d:"M2.25 3.6V12.3A5.75 2.4 0 0 0 13.75 12.3V3.6",stroke:"currentColor",strokeWidth:"1.25"}),(0,P.jsx)("path",{d:"M2.25 7.95A5.75 2.4 0 0 0 13.75 7.95",stroke:"currentColor",strokeWidth:"1.25"})]})}function og(n){let{label:e,icon:t,titleValue:i,rows:r}=n;return(0,P.jsxs)("div",{className:"dci-stat-panel",role:"dialog","aria-label":e,children:[(0,P.jsxs)("div",{className:"dci-stat-panelTitle",children:[(0,P.jsxs)("span",{className:"dci-stat-panelLabel",children:[t,e]}),i!==void 0?(0,P.jsx)("span",{className:"dci-stat-panelValue",children:i}):null]}),(0,P.jsx)("div",{className:"dci-stat-panelRule","aria-hidden":"true"}),(0,P.jsx)("dl",{className:"dci-stat-details",children:r.map(([s,o])=>(0,P.jsxs)("div",{style:{display:"contents"},children:[(0,P.jsx)("dt",{children:s}),(0,P.jsx)("dd",{children:o})]},s))})]})}function is(n){let e=String(n??0),t=[];for(let i=e.length;i>0;i-=3)t.unshift(e.slice(Math.max(0,i-3),i));return`${t.join(",")} tok`}function P1(n){let{stats:e,open:t,onToggle:i}=n,r=k("stats.turns",{turns:e.turns??0,steps:e.steps??0}),s=(e.decodeMs??0)>0?Zc((e.decodeTokens??0)/((e.decodeMs??1)/1e3)):null,o=(e.llmMs??0)>0||(e.toolMs??0)>0||(e.ttftSteps??0)>0||(e.decodeMs??0)>0,l=(0,P.jsxs)("span",{className:"dci-stat-label",children:[r,s!==null?(0,P.jsxs)(P.Fragment,{children:[(0,P.jsx)("span",{className:"dci-stat-sep","aria-hidden":"true",children:"\xB7"}),k("stats.tps",{tps:s})]}):null]});return o?(0,P.jsxs)("span",{className:"dci-stat-anchor",children:[(0,P.jsxs)("button",{type:"button",className:"dci-stat-pill","aria-haspopup":"dialog","aria-expanded":t,"aria-label":s!==null?`${r} \xB7 ${k("stats.tps",{tps:s})}`:r,onClick:i,children:[(0,P.jsx)(eh,{}),l]}),t?(0,P.jsx)(og,{label:k("stats.session"),icon:(0,P.jsx)(eh,{}),rows:[[k("stats.modelTime"),(e.llmMs??0)>0?_o(e.llmMs):"\u2014"],[k("stats.toolTime"),(e.toolMs??0)>0?_o(e.toolMs):"\u2014"],[k("stats.ttft"),(e.ttftSteps??0)>0?_o(e.ttftMs/e.ttftSteps):"\u2014"],[k("stats.tpsLabel"),(e.decodeMs??0)>0?k("stats.tps",{tps:Zc((e.decodeTokens??0)/((e.decodeMs??1)/1e3))}):"\u2014"]]}):null]}):(0,P.jsx)("span",{className:"dci-stat-anchor",children:(0,P.jsxs)("span",{className:"dci-stat-pill",children:[(0,P.jsx)(eh,{}),l]})})}function I1(n){let{stats:e,open:t,onToggle:i}=n;if(e.totalTokens===void 0)return null;let r=e.totalTokens,s=e.cacheHitText??Qc(e.cacheReadTokens??0,(e.cacheReadTokens??0)+(e.cacheWriteTokens??0)+(e.uncachedInputTokens??0));return(0,P.jsxs)("span",{className:"dci-stat-anchor",children:[(0,P.jsxs)("button",{type:"button",className:"dci-stat-pill","aria-haspopup":"dialog","aria-expanded":t,"aria-label":s!==null?`${Ho(r)} \xB7 ${k("stats.cacheHit",{percent:s})}`:Ho(r),onClick:i,children:[(0,P.jsx)(rg,{}),(0,P.jsxs)("span",{className:"dci-stat-label",children:[Ho(r),s!==null?(0,P.jsxs)(P.Fragment,{children:[(0,P.jsx)("span",{className:"dci-stat-sep","aria-hidden":"true",children:"\xB7"}),k("stats.cacheHit",{percent:s})]}):null]})]}),t?(0,P.jsx)(og,{label:k("stats.usage"),icon:(0,P.jsx)(rg,{}),titleValue:is(r),rows:[[k("stats.cacheHitLabel"),s!==null?`${s}%`:"\u2014"],[k("stats.uncached"),is(e.uncachedInputTokens)],[k("stats.cacheRead"),is(e.cacheReadTokens)],...e.cacheWriteTokens?[[k("stats.cacheWrite"),is(e.cacheWriteTokens)]]:[],[k("stats.output"),is(e.outputTokens)]]}):null]})}function th(n){let{useProjection:e,sessionId:t,chatNodes:i}=n,[r,s]=(0,xn.useState)(null),o=(0,xn.useRef)(null),l=ig(e,t,i);(0,xn.useEffect)(()=>{if(r===null)return;let h=u=>{o.current&&u.target instanceof Node&&o.current.contains(u.target)||s(null)};return window.addEventListener("pointerdown",h,!0),()=>window.removeEventListener("pointerdown",h,!0)},[r]);let a=e?e("contextPressure"):void 0,c=a!==void 0&&!!a.contextWindow;return!l&&!c?null:(0,P.jsxs)("div",{className:"dci-stat-root","data-composer-stats":"codinput",ref:o,children:[l?(0,P.jsxs)(P.Fragment,{children:[(0,P.jsx)(P1,{stats:l,open:r==="rounds",onToggle:()=>s(r==="rounds"?null:"rounds")}),(0,P.jsx)(I1,{stats:l,open:r==="tokens",onToggle:()=>s(r==="tokens"?null:"tokens")})]}):null,(0,P.jsx)(N1,{useProjection:e})]})}var sg=2*Math.PI*5.5;function rs(n){return n>=1e6?`${(n/1e6).toFixed(n%1e6===0?0:1)}M`:n>=1e3?`${(n/1e3).toFixed(n%1e3===0?0:1)}K`:`${n}`}function N1(n){let{useProjection:e}=n,[t,i]=(0,xn.useState)(!1),r=(0,xn.useRef)(null),s=e?e("contextPressure"):void 0,o=e?e("contextBreakdown"):void 0;if((0,xn.useEffect)(()=>{if(!t)return;let d=f=>{r.current&&f.target instanceof Node&&r.current.contains(f.target)||i(!1)};return window.addEventListener("pointerdown",d,!0),()=>window.removeEventListener("pointerdown",d,!0)},[t]),!s||!s.contextWindow)return null;let l=s.contextWindow,a=s.projectedTokens??s.pressureTokens??0,c=Math.min(100,Math.round(a/l*100)),h=c/100*sg,u=[["dci-gauge-colorSystem",o?.systemTokens??0],["dci-gauge-colorTools",o?.toolsTokens??0],["dci-gauge-colorMessages",o?.messageTokens??0]];return(0,P.jsxs)("span",{className:"dci-gauge-root",ref:r,children:[(0,P.jsxs)("button",{type:"button",className:"dci-gauge-trigger","aria-label":k("tool.context",{percent:Math.round(c)}),"aria-haspopup":"dialog","aria-expanded":t,title:k("tool.context",{percent:Math.round(c)}),onClick:()=>i(!t),children:[(0,P.jsxs)("svg",{viewBox:"0 0 14 14",width:"14",height:"14","aria-hidden":"true",children:[(0,P.jsx)("circle",{className:"dci-gauge-track",cx:"7",cy:"7",r:"5.5"}),(0,P.jsx)("circle",{className:"dci-gauge-fill",cx:"7",cy:"7",r:"5.5",strokeDasharray:`${h} ${sg}`,transform:"rotate(-90 7 7)"})]}),(0,P.jsxs)("span",{children:[Math.round(c),"%"]})]}),t?(0,P.jsxs)("div",{className:"dci-gauge-panel",role:"dialog","aria-label":k("tool.contextTitle"),children:[(0,P.jsxs)("div",{className:"dci-gauge-header",children:[(0,P.jsx)("span",{className:"dci-gauge-headline",children:k("tool.contextTitle")}),(0,P.jsxs)("span",{className:"dci-gauge-percent",children:[Math.round(c),"%"]}),(0,P.jsxs)("span",{className:"dci-gauge-figures",children:["~",rs(a)," / ",rs(l)]})]}),(0,P.jsx)("div",{className:"dci-gauge-bar",children:u.map(([d,f])=>(0,P.jsx)("div",{className:`dci-gauge-segment ${d}`,style:{width:`${f/l*100}%`}},d))}),(0,P.jsxs)("dl",{className:"dci-gauge-rows",children:[(0,P.jsxs)("div",{className:"dci-gauge-row",children:[(0,P.jsxs)("dt",{children:[(0,P.jsx)("span",{className:"dci-gauge-swatch dci-gauge-colorSystem","aria-hidden":"true"}),k("stats.prompt")]}),(0,P.jsxs)("dd",{children:["~",rs(o?.systemTokens??0)]})]}),(0,P.jsxs)("div",{className:"dci-gauge-row",children:[(0,P.jsxs)("dt",{children:[(0,P.jsx)("span",{className:"dci-gauge-swatch dci-gauge-colorTools","aria-hidden":"true"}),k("stats.tools")]}),(0,P.jsxs)("dd",{children:["~",rs(o?.toolsTokens??0)]})]}),(0,P.jsxs)("div",{className:"dci-gauge-row",children:[(0,P.jsxs)("dt",{children:[(0,P.jsx)("span",{className:"dci-gauge-swatch dci-gauge-colorMessages","aria-hidden":"true"}),k("stats.messages")]}),(0,P.jsxs)("dd",{children:["~",rs(o?.messageTokens??0)]})]})]})]}):null]})}var Me=require("react/jsx-runtime");le.setOptions({gfm:!0,breaks:!0});var B1=_l??Hl;function Fo(n){let{sessionId:e,state:t,actions:i,useProjection:r,placeholder:s,disabled:o,blocked:l,running:a,side:c,hero:h,chatNodes:u,float:d,onDragZonePointerDown:f}=n;Yt();let[p,g]=(0,De.useState)(()=>ue().defaultEdit),[b,y]=(0,De.useState)(()=>ue().defaultPreview),[x,C]=(0,De.useState)(()=>ue().composerBodyHeight),[H,S]=(0,De.useState)(!1),A=(0,De.useRef)(null),v=(0,De.useRef)(null),_=(0,De.useRef)(null),B=(0,De.useRef)(null),z=I=>{I.preventDefault();let re=I.currentTarget,we=I.clientY,Lt=x??Math.max(60,A.current?.querySelector(".dci-body")?.getBoundingClientRect().height??0);re.dataset.dragging="true";let xt=x,rt=er=>{xt=Math.round(Math.min(window.innerHeight-260,Math.max(96,Lt-(er.clientY-we)))),C(xt)},jt=()=>{re.dataset.dragging="false",window.removeEventListener("pointermove",rt),window.removeEventListener("pointerup",jt),window.removeEventListener("pointercancel",jt),lt({composerBodyHeight:xt})};try{re.setPointerCapture(I.pointerId)}catch{}window.addEventListener("pointermove",rt),window.addEventListener("pointerup",jt),window.addEventListener("pointercancel",jt)},[W,M]=(0,De.useState)(0);(0,De.useEffect)(()=>{!p&&!b&&g(!0)},[p,b]);let F=()=>{if(!(!e||!X.conversation))try{return X.conversation.input.inputTriggers(e)??void 0}catch{return}},K=()=>{if(!(!e||!X.conversation))try{return X.conversation.input.keyboard(e)}catch{return}},G=F(),J=K();(0,De.useEffect)(()=>{if(!e||G&&J)return;let I=window.setInterval(()=>M(we=>we+1),300),re=window.setTimeout(()=>window.clearInterval(I),1e4);return()=>{window.clearInterval(I),window.clearTimeout(re)}},[e,G,J]);let Be=(0,De.useMemo)(()=>{if(!(!e||!X.sessions||!X.commandUi)&&typeof X.commandUi.popupFor=="function")try{return X.commandUi.popupFor(X.sessions.scope(e))}catch{return}},[e,W]);(0,De.useEffect)(()=>{if(e)return _u(e)},[e]),(0,De.useEffect)(()=>{if(!e||!X.commandUi)return;let I=X.commandUi;if(typeof I.bindComposerFocus=="function")return I.bindComposerFocus(e,()=>v.current?.focus())},[e]),(0,De.useEffect)(()=>{ll(e??null);let I=Pe();return e&&(G&&(I.__dshCodinputTriggers[e]=G),J&&(I.__dshCodinputKeyboard[e]=J),I.__dshCodinputShell[e]={surface:!0,side:c===!0}),()=>{ll(null)}},[e,G,J,c]);let it=I=>{_.current=I},_e=()=>{if(e)try{X.sessions?.scope(e)?.get?.("conversation")?.cancel?.()?.catch?.(()=>{})}catch{}},Xe=()=>{if(!i)return;let I=t,re=!I||I.draft.trim()==="",we=!I||I.attachmentIds.length===0;if(re&&we){J?.steerQueue();return}i.submit()},He=o===!0||l===!0,Ye=(t?.draft??"").trim()==="",wt=(t?.attachmentIds.length??0)===0,ie=a===!0&&Ye&&wt,vn=He||i===void 0||t!==void 0&&t.phase==="submitting"||Ye&&wt,kn=(0,De.useMemo)(()=>B1.sanitize(le.parse(t?.draft??"")),[t?.draft,b]),Uo=I=>{if(!p||!b)return;let re=I.target,we=v.current?.scrollDOM,Lt=B.current;if(!we||!Lt)return;let xt=re===we?Lt:re===Lt?we:null;if(!xt)return;let rt=re.scrollHeight-re.clientHeight;if(rt<=0)return;let jt=re.scrollTop/rt*(xt.scrollHeight-xt.clientHeight);Math.abs(xt.scrollTop-jt)>1&&(xt.scrollTop=jt)};(0,De.useEffect)(()=>{if(!p||!b)return;let I=v.current?.scrollDOM,re=B.current;if(!I||!re)return;let we=I.scrollHeight-I.clientHeight;we<=0||(re.scrollTop=I.scrollTop/we*(re.scrollHeight-re.clientHeight))},[p,b,kn,e]);let Ko=()=>{!p&&b?g(!0):p&&b&&g(!1)},jo=()=>{!b&&p?y(!0):b&&p&&y(!1)},Go=s??k("editor.placeholder"),Qi=lg(e);return(0,Me.jsxs)("div",{className:"dci-surface","data-side":c||void 0,"data-float":d||void 0,children:[(0,Me.jsxs)("div",{className:"dci-card","data-composer-card":"codinput","data-drop":H||void 0,ref:A,onPasteCapture:I=>{let re=I.clipboardData?.files;!re||re.length===0||(I.preventDefault(),I.stopPropagation(),Os(e,i,re,Qi))},onDragOverCapture:I=>{Hu(I.dataTransfer)&&(I.preventDefault(),I.dataTransfer.dropEffect="copy",H||S(!0))},onDragLeave:I=>{I.currentTarget.contains(I.relatedTarget)||S(!1)},onDropCapture:I=>{S(!1);let re=I.dataTransfer?.files;!re||re.length===0||(I.preventDefault(),I.stopPropagation(),Os(e,i,re,Qi))},children:[(0,Me.jsx)("div",{className:"dci-rip","data-axis":"y","data-side":"top",onPointerDown:z}),(0,Me.jsxs)("div",{className:"dci-accessory",children:[(0,Me.jsx)("button",{type:"button",className:"dci-iconbtn","data-on":p,onClick:Ko,title:k("head.edit"),children:(0,Me.jsx)(Wu,{size:14})}),(0,Me.jsx)("button",{type:"button",className:"dci-iconbtn","data-on":b,onClick:jo,title:k("head.preview"),children:(0,Me.jsx)(Vu,{size:14})}),c?null:(0,Me.jsx)("div",{className:"dci-float-dragzone",onPointerDown:f})]}),i&&(t?.attachmentIds.length??0)>0?(0,Me.jsx)(Km,{state:t,sessionId:e,onRemove:I=>{let re=X.conversation;i.removeAttachment(I);try{re?.releaseDraftAttachment(I)}catch(we){Ie("attachments",we)}}}):null,(0,Me.jsxs)("div",{className:"dci-body","data-split":p&&b,onScrollCapture:Uo,style:!c&&!d&&x!==null?{"--dci-body-h":`${x}px`,"--dci-body-max":`${x}px`}:void 0,children:[p?(0,Me.jsx)(Nm,{state:t,actions:i,triggers:G,keyboard:J,onSendGesture:Xe,placeholder:Go,viewRef:v,onCaretMoved:it,disabled:He,autoFocus:!0,solo:!b,stateKey:e??"hero"}):null,b?(0,Me.jsx)("div",{className:"dci-preview","data-solo":!p,ref:B,children:kn?(0,Me.jsx)("div",{dangerouslySetInnerHTML:{__html:kn}}):(0,Me.jsx)("span",{style:{opacity:.4},children:k("preview.empty")})}):null]}),(0,Me.jsx)(ng,{sessionId:e,state:t,actions:i,triggers:G,caretRef:_,useProjection:r,disabled:He,primaryStops:ie,onStop:_e,onNotify:lg(e),onSend:Xe,sendDisabled:vn}),d&&h!==!0?(0,Me.jsx)(th,{useProjection:r,sessionId:e,chatNodes:u}):null,G?(0,Me.jsx)(_m,{triggers:G,dropdown:c===!0||d===!0}):null]}),!d&&h!==!0?(0,Me.jsx)(th,{useProjection:r,sessionId:e,chatNodes:u}):null,Be?(0,Me.jsx)(Fm,{popup:Be}):null]})}function lg(n){if(n)return(e,t)=>{try{let i=X.sessions?.scope(n);if(!i||!X.conversation)return;X.conversation.input.for(i).notify(e,t)}catch(i){Ie("notify",i)}}}var ss=require("react/jsx-runtime"),ag="dsh-codinput",zo="codinput";function cg(){return{id:ag,kind:zo,priority:"extension",title:()=>"Codinput",keepMounted:!0,guide:[{order:0,title:()=>"Codinput",description:()=>k("side.guideDesc")}]}}function hg(){return{options:{name:"sidebar.right.pane.tab",key:ag,registrant:"dsh-codinput"},component:_1}}function _1(n){let{sessionId:e,useInput:t,inputActions:i,useProjection:r,useSession:s,useTabInfo:o}=n,l=t(S=>S),a=s?s(S=>S?.running)===!0:!1;Yt();let c=o?o():void 0,h=c?.tab.visible===!0,u=c?.sidebar.expanded===!0,d=c?.tab.actions?.close,f=(0,dt.useRef)(d);f.current=d,(0,dt.useEffect)(()=>{let S=Pe().__dshCodinputShell;S["sidebar.tabId"]=c?.tab.id??"none",S["sidebar.closeFace"]=d?"yes":"none"},[c,d]),(0,dt.useEffect)(()=>Zh(S=>{if(!(S!==e||!f.current))try{f.current()}catch(A){Ie("sidebar.closeTab",A)}}),[e]);let[p,g]=(0,dt.useState)(()=>ue().enabled);(0,dt.useEffect)(()=>Tn(()=>g(ue().enabled)),[]);let b=(0,dt.useRef)(!1);(0,dt.useEffect)(()=>{b.current||(b.current=!0,ue().enabled||lt({enabled:!0}))},[]);let y=(0,dt.useRef)(null),[x,C]=(0,dt.useState)(0);(0,dt.useEffect)(()=>{if(!p)return;let S=qh(e,{visible:h,expanded:u});return y.current=S,C(S.token),()=>{y.current=null,S.release()}},[e,p]),(0,dt.useEffect)(()=>{y.current?.set({visible:h,expanded:u})},[h,u]);let H=Qh(e,x);return p?H?(0,ss.jsx)("div",{style:{position:"absolute",inset:0,minHeight:0,display:"flex",flexDirection:"column"},children:(0,ss.jsx)(Fo,{sessionId:e,state:l,actions:i,useProjection:r,running:a,side:!0})}):(0,ss.jsx)("div",{className:"dci-side-notice",role:"note",children:k("side.notice")}):(0,ss.jsx)("div",{className:"dci-side-notice",role:"note",children:k("side.disabled")})}var ih=require("react/jsx-runtime"),H1=36,F1=18,z1=12,W1=8;function nh(){return document.querySelector('[role="banner"]')??document.querySelector("header")}function dg(n){let{sessionId:e}=n;Yt();let{carried:t,collapsed:i}=tu(e),r=t&&i,[s,o]=(0,Wo.useState)(null);return(0,Wo.useEffect)(()=>{if(!r){o(null);return}let l=()=>{let u=nh()?.getBoundingClientRect();if(!u||u.height===0)return;let d={left:Math.round(u.right-z1-H1),top:Math.round(u.bottom+W1)};o(f=>f&&f.left===d.left&&f.top===d.top?f:d)};l();let a=nh(),c=typeof ResizeObserver=="function"?new ResizeObserver(l):null;a&&c&&c.observe(a),window.addEventListener("resize",l);let h=window.setInterval(()=>{nh()&&(l(),window.clearInterval(h))},250);return()=>{c?.disconnect(),window.removeEventListener("resize",l),window.clearInterval(h)}},[r]),!r||!s?null:(0,ug.createPortal)((0,ih.jsx)("button",{type:"button",className:"dci-ball","data-codinput-expand":"true",style:{left:s.left,top:s.top},"aria-label":k("ball.label"),title:k("ball.title"),onClick:()=>V1(e),children:(0,ih.jsx)(zu,{size:F1})}),document.body)}function V1(n){let e=X.sidebarRight;if(e){try{if(n&&typeof e.openTabIn=="function"){e.openTabIn(n,zo);return}if(typeof e.openTab=="function"){e.openTab(zo);return}}catch(t){Ie("ball.openTab",t)}try{typeof e.isExpanded=="function"&&!e.isExpanded()&&e.toggleExpanded?.()}catch(t){Ie("ball.expand",t)}}}var bi=require("react/jsx-runtime");function oh(n){let{variant:e,blocked:t,disabled:i,placeholder:r,sessionId:s,useInput:o,inputActions:l,useProjection:a,useChat:c,useSession:h}=n,u=o(C=>C),d=c?c(C=>C?.legacy?.nodes):void 0,f=h?h(C=>C?.running)===!0:!1,p=eu(s),[g,b]=(0,cn.useState)(()=>ue().mode);if((0,cn.useEffect)(()=>Tn(()=>b(ue().mode)),[]),p)return(0,bi.jsx)(dg,{sessionId:s});let y=g==="float",x=(0,bi.jsx)(Fo,{sessionId:s,state:u,actions:l,useProjection:a,placeholder:r,disabled:i===!0,blocked:t!==void 0,running:f,hero:e==="hero",chatNodes:d,float:y,onDragZonePointerDown:G1});return y?(0,bi.jsx)(X1,{children:x}):x}var qe=12,fg=6,rh=720,Vo=360,os=140,$1=6,U1=12;function zn(n,e,t){return Math.min(t,Math.max(e,n))}function lh(){return Math.max(Vo,window.innerWidth-qe*2)}function K1(){return Math.max(os,window.innerHeight-qe*2)}function pg(){let n=ue();return{x:n.floatX??Math.round((window.innerWidth-Math.min(n.floatW??rh,lh()))/2),y:n.floatY??Math.round(window.innerHeight*.16),w:n.floatW??rh,h:n.floatH}}var Zi=null,sh=new Set;function mg(n,e){for(let t of sh)t(n,e)}function j1(){let e=document.querySelector("[data-composer-seat]")?.getBoundingClientRect(),t=Math.min(window.innerHeight,(e?.bottom??window.innerHeight)+120),i=Math.max(0,t-300);return{left:(e?.left??0)-40,right:(e?.right??window.innerWidth)+40,top:i,bottom:t}}function G1(n){if(n.button!==0)return;let e=n.currentTarget,t=e.closest("[data-composer-card]"),i=!!e.closest(".dci-float"),r=t?.getBoundingClientRect(),s=r?.left??n.clientX,o=r?.top??n.clientY,l=r?.width||Math.min(ue().floatW??rh,lh()),a=y=>zn(y,qe,Math.max(qe,window.innerWidth-l-qe)),c=y=>zn(y,qe,Math.max(qe,window.innerHeight-96)),h=a(n.clientX-s),u=c(n.clientY-o);n.preventDefault();let d=n.clientX,f=n.clientY,p={grabDX:h,grabDY:u,detached:i,fromFloat:i,lastX:a(n.clientX-h),lastY:c(n.clientY-u)},g=y=>{if(Zi){if(!p.detached){if(Math.abs(y.clientX-d)<fg&&Math.abs(y.clientY-f)<fg)return;p.detached=!0,p.lastX=a(y.clientX-p.grabDX),p.lastY=c(y.clientY-p.grabDY),lt({mode:"float",floatX:p.lastX,floatY:p.lastY}),mg(p.lastX,p.lastY);return}p.lastX=a(y.clientX-p.grabDX),p.lastY=c(y.clientY-p.grabDY),mg(p.lastX,p.lastY)}},b=y=>{if(window.removeEventListener("pointermove",g),window.removeEventListener("pointerup",b),window.removeEventListener("pointercancel",b),Zi=null,!p.detached)return;let x=j1();if(y.clientX>=x.left&&y.clientX<=x.right&&y.clientY>=x.top&&y.clientY<=x.bottom){lt({mode:"normal"});return}lt({floatX:p.lastX,floatY:p.lastY})};Zi=p,window.addEventListener("pointermove",g),window.addEventListener("pointerup",b),window.addEventListener("pointercancel",b)}var q1=["n","s","e","w","nw","ne","sw","se"];function X1(n){let{children:e}=n,t=(0,cn.useRef)(null),[i,r]=(0,cn.useState)(()=>Zi?{...pg(),x:Zi.lastX,y:Zi.lastY}:pg()),s=(0,cn.useRef)(i);s.current=i,(0,cn.useLayoutEffect)(()=>{let u=(d,f)=>r(p=>({...p,x:d,y:f}));return sh.add(u),()=>{sh.delete(u)}},[]);let o=u=>d=>{if(d.button!==0)return;d.preventDefault(),d.stopPropagation();let f=s.current,g=t.current?.getBoundingClientRect(),b=g?.width??f.w,y=g?.height??f.h??os,x=f.x,C=f.y,H=x+b,S=C+y,A=d.clientX,v=d.clientY,_=z=>{let W=z.clientX-A,M=z.clientY-v,F=b,K=y,G=x,J=C;u.includes("e")&&(F=zn(b+W,Vo,Math.max(Vo,window.innerWidth-qe-x))),u.includes("w")&&(G=zn(x+W,qe,H-Vo),F=H-G),u.includes("s")&&(K=zn(y+M,os,Math.max(os,window.innerHeight-qe-C))),u.includes("n")&&(J=zn(C+M,qe,S-os),K=S-J),r({x:G,y:J,w:Math.round(F),h:Math.round(K)})},B=()=>{window.removeEventListener("pointermove",_),window.removeEventListener("pointerup",B),window.removeEventListener("pointercancel",B);let z=s.current;lt({floatX:z.x,floatY:z.y,floatW:z.w,floatH:z.h})};try{d.currentTarget.setPointerCapture(d.pointerId)}catch{}window.addEventListener("pointermove",_),window.addEventListener("pointerup",B),window.addEventListener("pointercancel",B)},l=Math.min(i.w,lh()),a=i.h===null?null:Math.min(i.h,K1()),c=zn(i.x,qe,Math.max(qe,window.innerWidth-l-qe)),h=zn(i.y,qe,Math.max(qe,window.innerHeight-96));return(0,gg.createPortal)((0,bi.jsxs)("div",{className:"dci-float",ref:t,"data-sized":a!==null?"true":void 0,style:{left:c,top:h,width:l,height:a??void 0,"--dci-grip-edge":`${$1}px`,"--dci-grip-corner":`${U1}px`},children:[e,q1.map(u=>(0,bi.jsx)("div",{className:"dci-float-grip","data-dir":u,onPointerDown:o(u)},u))]}),document.body)}function bg(){return{options:{name:"conversation.composer.bar",priority:-1,registrant:"dsh-codinput"}}}var Kt=require("react");var oe=require("react/jsx-runtime"),Y1="codinput";function xg(){return{options:{name:"settings.section",id:Y1,order:60,label:()=>"Codinput",registrant:"dsh-codinput"},component:Z1}}function yg(n){let{value:e,conflictWith:t,ariaLabel:i,onChange:r}=n,[s,o]=(0,Kt.useState)(!1),[l,a]=(0,Kt.useState)(!1),c=(0,Kt.useRef)(null);return(0,Kt.useEffect)(()=>{if(!s)return;let h=u=>{c.current&&u.target instanceof Node&&c.current.contains(u.target)||o(!1)};return window.addEventListener("pointerdown",h,!0),()=>window.removeEventListener("pointerdown",h,!0)},[s]),(0,oe.jsx)("button",{ref:c,type:"button",className:"dci-set-selector","data-recording":s||void 0,"data-conflict":l||void 0,"aria-label":i,onClick:()=>o(!0),onBlur:()=>o(!1),onKeyDown:h=>{if(!s)return;if(h.preventDefault(),h.stopPropagation(),h.key==="Escape"){o(!1);return}if(h.key==="Shift"||h.key==="Control"||h.key==="Alt"||h.key==="Meta")return;let u=Pm(h.nativeEvent,h.key);if(t!==void 0&&u===t){a(!0),window.setTimeout(()=>a(!1),1500);return}r(u),o(!1),c.current?.blur()},children:s?k("set.recording"):Im(e)})}function yi(n){let{title:e,desc:t,children:i}=n;return(0,oe.jsxs)("div",{className:"dci-set-row",children:[(0,oe.jsxs)("div",{className:"dci-set-rowText",children:[(0,oe.jsx)("div",{className:"dci-set-title",children:e}),t?(0,oe.jsx)("div",{className:"dci-set-desc",children:t}):null]}),(0,oe.jsx)("div",{className:"dci-set-control",children:i})]})}function J1(n){let{value:e,options:t,onChange:i,ariaLabel:r}=n,[s,o]=(0,Kt.useState)(!1),l=(0,Kt.useRef)(null),[a,c]=(0,Kt.useState)(null),h=t.find(u=>u.value===e);return(0,oe.jsxs)(oe.Fragment,{children:[(0,oe.jsxs)("button",{ref:l,type:"button",className:"dci-set-selector","aria-haspopup":"menu","aria-expanded":s,"aria-label":r,onClick:()=>{s||c(l.current?.getBoundingClientRect()??null),o(!s)},children:[h?.label??e,(0,oe.jsx)(Zt,{size:14})]}),s&&a?(0,oe.jsx)(Ji,{anchor:a,side:"bottom",alignEnd:!0,onClose:()=>o(!1),minWidth:200,children:t.map(u=>(0,oe.jsx)("button",{type:"button",className:"dci-item",onClick:()=>{i(u.value),o(!1)},children:(0,oe.jsx)("span",{className:"dci-itemLabel",children:u.label})},u.value))}):null]})}function wg(n){let{on:e,label:t,onToggle:i}=n;return(0,oe.jsx)("button",{type:"button",role:"switch",className:"dci-switch","aria-checked":e,"aria-label":t,onClick:i})}function Z1(){let[n,e]=(0,Kt.useState)(()=>ue());Yt();let t=i=>{e(lt(i))};return(0,oe.jsxs)("div",{className:"dci-settings",children:[(0,oe.jsx)(yi,{title:k("set.enabled"),desc:k("set.enabledDesc"),children:(0,oe.jsx)(wg,{on:n.enabled,label:k("set.enabled"),onToggle:()=>t({enabled:!n.enabled})})}),(0,oe.jsx)(yi,{title:k("set.lineNumbers"),desc:k("set.lineNumbersDesc"),children:(0,oe.jsx)(wg,{on:n.lineNumbers,label:k("set.lineNumbers"),onToggle:()=>t({lineNumbers:!n.lineNumbers})})}),(0,oe.jsx)(yi,{title:k("set.font"),desc:k("set.fontDesc"),children:(0,oe.jsx)("input",{type:"text",className:"dci-set-input",value:n.fontFamily,spellCheck:!1,"aria-label":k("set.font"),onChange:i=>t({fontFamily:i.target.value})})}),(0,oe.jsx)(yi,{title:k("set.sendKey"),desc:k("set.sendKeyDesc"),children:(0,oe.jsx)(yg,{value:n.sendHotkey,conflictWith:n.lineBreakHotkey,ariaLabel:k("set.sendKey"),onChange:i=>t({sendHotkey:i})})}),(0,oe.jsx)(yi,{title:k("set.lineBreakKey"),desc:k("set.lineBreakKeyDesc"),children:(0,oe.jsx)(yg,{value:n.lineBreakHotkey,conflictWith:n.sendHotkey,ariaLabel:k("set.lineBreakKey"),onChange:i=>t({lineBreakHotkey:i})})}),(0,oe.jsx)(yi,{title:k("set.defaultView"),desc:k("set.defaultViewDesc"),children:(0,oe.jsx)(J1,{value:n.defaultEdit&&n.defaultPreview?"split":n.defaultPreview?"preview":"edit",ariaLabel:k("set.defaultView"),onChange:i=>t({defaultEdit:i!=="preview",defaultPreview:i!=="edit"}),options:[{value:"edit",label:k("head.editOnly")},{value:"split",label:k("head.split")},{value:"preview",label:k("head.previewOnly")}]})}),(0,oe.jsx)(yi,{title:k("set.reset"),desc:k("set.resetAll"),children:(0,oe.jsx)("button",{type:"button",className:"dci-set-selector",onClick:()=>e(lt({...rr})),children:k("set.resetAction")})})]})}function Q1(n){if(n)try{let e=X.sessions?.scope(n);e&&X.conversation&&X.conversation.input.for(e).setDraft("")}catch{}}function vg(n,e,t){let i=n.findIndex(o=>o.name===e);if(i===-1)return[...n];let r=t(n);if(r===i||r===i+1)return[...n];let s=[...n];return s.splice(i,1),s.splice(r>i?r-1:r,0,n[i]),s}function kg(n){We("command.register",()=>{n.inject(["commandUi"],e=>{let t=e.commandUi;if(typeof t?.register!="function"){Pe().__dshCodinputShell.command="commandUi-unavailable";return}let i;if(typeof t.candidates=="function"){let r=t.candidates.bind(t);t.candidates=(s,o)=>Promise.resolve(r(s,o)).then(l=>{if(o.query!==""||!Array.isArray(l))return l;let a=l,c=a.find(h=>h.name==="goal"||h.name==="plan"||h.name==="feedback")?.section;return c!==void 0&&(a=vg(a,"file",h=>{let u=h.findIndex(d=>d.section===c&&d.name!=="file");return u===-1?h.length:u})),a=vg(a,"codinput",h=>{let u=h.find(f=>f.name==="codinput"),d=h.findIndex(f=>f.section===u?.section&&f.name!=="codinput"&&f.name.toLowerCase()>"codinput");return d===-1?h.length:d}),a}),i=()=>{t.candidates=r}}n.effect(()=>i,"dsh-codinput: slash order patch"),n.effect(()=>t.register({name:"codinput",description:()=>ue().enabled?k("cmd.exit"):k("cmd.enter"),icon:td,available:()=>!0,ui:{kind:"action",run:()=>{let r=Pe().__dshCodinputSessionId??void 0;if(lt({enabled:!ue().enabled}),!ue().enabled)for(let s of Xh())Jh(s);setTimeout(()=>Q1(r),80)}}}),"dsh-codinput: /codinput contribution"),Pe().__dshCodinputShell.command="registered"})})}var ev="dsh-codinput",tv=["slots","conversation"];function $o(n,e,t=60){try{n(),Pe().__dshCodinputShell[e]="registered";return}catch(i){if(t<=0){Ie(e,i),Pe().__dshCodinputShell[e]="failed";return}}setTimeout(()=>$o(n,e,t-1),250)}function nv(n){$h(),Wh(n),We("console.hook",()=>{let l=Pe();if(!l.__dshConsoleHooked){l.__dshConsoleHooked=!0;let a=l.console.error.bind(l.console);l.console.error=(...c)=>{let h=c.find(u=>u instanceof Error);h&&l.__dshCodinputErrs.push(h),a(...c)}}}),We("slots.entryErrorHook",()=>{let l=n.slots,a=l._core??l;typeof a.onEntryError=="function"&&a.onEntryError(c=>{let h=c?.error;Ie("slot.entry",h??c),Pe().__dshCodinputErrs.push(h instanceof Error?h:new Error(JSON.stringify(c).slice(0,800)))})});let e=bg(),t=null,i=()=>{if(!t)try{t=n.slots.register(e.options,oh),Pe().__dshCodinputShell.bar="mounted"}catch(l){Ie("bar.register",l)}},r=()=>{let l=t;t=null;try{l?.(),Pe().__dshCodinputShell.bar="unmounted"}catch(a){Ie("bar.dispose",a)}},s=()=>ue().enabled||Yh(),o=()=>{s()?i():r()};$o(()=>{s()&&i()},"bar"),We("bar.prefs",()=>{Tn(o)}),We("bar.sideinput",()=>{or(o)}),We("sidebar.register",()=>{n.inject(["slots","sidebarRightTabs","sidebarRight"],l=>{let a=l.sidebarRightTabs;if(typeof a?.register!="function"){Ie("sidebar",new Error("sidebarRightTabs unavailable"));return}let c=hg();n.effect(()=>a.register(cg()),"dsh-codinput: sidebar tab type"),$o(()=>{n.slots.register(c.options,c.component)},"sidebar.body")})}),We("settings.register",()=>{let l=xg();$o(()=>{n.slots.register(l.options,l.component)},"settings")}),kg(n),We("draggate.install",()=>{let l=window;l.__dshCodinputDragGate||(l.__dshCodinputDragGate=!0,document.addEventListener("pointerdown",a=>{a.target instanceof Element&&(a.target.closest("[data-dockkit-tab-close]")||a.target.closest("[data-dockkit-tab]")&&a.stopPropagation())},{capture:!0}))}),We("diag.boot",()=>{Pe().__dshCodinputShell.apply="done",window.__dshCodinputCtx=n})}
585
+ `}strong({tokens:n}){return`<strong>${this.parser.parseInline(n)}</strong>`}em({tokens:n}){return`<em>${this.parser.parseInline(n)}</em>`}codespan({text:n}){return`<code>${Xt(n,!0)}</code>`}br(n){return"<br>"}del({tokens:n}){return`<del>${this.parser.parseInline(n)}</del>`}link({href:n,title:e,tokens:t}){let i=this.parser.parseInline(t),r=yu(n);if(r===null)return i;n=r;let s='<a href="'+n+'"';return e&&(s+=' title="'+Xt(e)+'"'),s+=">"+i+"</a>",s}image({href:n,title:e,text:t,tokens:i}){i&&(t=this.parser.parseInline(i,this.parser.textRenderer));let r=yu(n);if(r===null)return Xt(t);n=r;let s=`<img src="${n}" alt="${t}"`;return e&&(s+=` title="${Xt(e)}"`),s+=">",s}text(n){return"tokens"in n&&n.tokens?this.parser.parseInline(n.tokens):"escaped"in n&&n.escaped?n.text:Xt(n.text)}},Wl=class{strong({text:n}){return n}em({text:n}){return n}codespan({text:n}){return n}del({text:n}){return n}html({text:n}){return n}text({text:n}){return n}link({text:n}){return""+n}image({text:n}){return""+n}br(){return""}},un=class Pl{constructor(e){ce(this,"options");ce(this,"renderer");ce(this,"textRenderer");this.options=e||Yn,this.options.renderer=this.options.renderer||new Hs,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new Wl}static parse(e,t){return new Pl(t).parse(e)}static parseInline(e,t){return new Pl(t).parseInline(e)}parse(e,t=!0){let i="";for(let r=0;r<e.length;r++){let s=e[r];if(this.options.extensions?.renderers?.[s.type]){let l=s,a=this.options.extensions.renderers[l.type].call({parser:this},l);if(a!==!1||!["space","hr","heading","code","table","blockquote","list","html","paragraph","text"].includes(l.type)){i+=a||"";continue}}let o=s;switch(o.type){case"space":{i+=this.renderer.space(o);continue}case"hr":{i+=this.renderer.hr(o);continue}case"heading":{i+=this.renderer.heading(o);continue}case"code":{i+=this.renderer.code(o);continue}case"table":{i+=this.renderer.table(o);continue}case"blockquote":{i+=this.renderer.blockquote(o);continue}case"list":{i+=this.renderer.list(o);continue}case"html":{i+=this.renderer.html(o);continue}case"paragraph":{i+=this.renderer.paragraph(o);continue}case"text":{let l=o,a=this.renderer.text(l);for(;r+1<e.length&&e[r+1].type==="text";)l=e[++r],a+=`
586
+ `+this.renderer.text(l);t?i+=this.renderer.paragraph({type:"paragraph",raw:a,text:a,tokens:[{type:"text",raw:a,text:a,escaped:!0}]}):i+=a;continue}default:{let l='Token with "'+o.type+'" type was not found.';if(this.options.silent)return console.error(l),"";throw new Error(l)}}}return i}parseInline(e,t=this.renderer){let i="";for(let r=0;r<e.length;r++){let s=e[r];if(this.options.extensions?.renderers?.[s.type]){let l=this.options.extensions.renderers[s.type].call({parser:this},s);if(l!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(s.type)){i+=l||"";continue}}let o=s;switch(o.type){case"escape":{i+=t.text(o);break}case"html":{i+=t.html(o);break}case"link":{i+=t.link(o);break}case"image":{i+=t.image(o);break}case"strong":{i+=t.strong(o);break}case"em":{i+=t.em(o);break}case"codespan":{i+=t.codespan(o);break}case"br":{i+=t.br(o);break}case"del":{i+=t.del(o);break}case"text":{i+=t.text(o);break}default:{let l='Token with "'+o.type+'" type was not found.';if(this.options.silent)return console.error(l),"";throw new Error(l)}}}return i}},Rl,Ns=(Rl=class{constructor(n){ce(this,"options");ce(this,"block");this.options=n||Yn}preprocess(n){return n}postprocess(n){return n}processAllTokens(n){return n}provideLexer(){return this.block?hn.lex:hn.lexInline}provideParser(){return this.block?un.parse:un.parseInline}},ce(Rl,"passThroughHooks",new Set(["preprocess","postprocess","processAllTokens"])),Rl),rb=class{constructor(...n){ce(this,"defaults",Ol());ce(this,"options",this.setOptions);ce(this,"parse",this.parseMarkdown(!0));ce(this,"parseInline",this.parseMarkdown(!1));ce(this,"Parser",un);ce(this,"Renderer",Hs);ce(this,"TextRenderer",Wl);ce(this,"Lexer",hn);ce(this,"Tokenizer",_s);ce(this,"Hooks",Ns);this.use(...n)}walkTokens(n,e){let t=[];for(let i of n)switch(t=t.concat(e.call(this,i)),i.type){case"table":{let r=i;for(let s of r.header)t=t.concat(this.walkTokens(s.tokens,e));for(let s of r.rows)for(let o of s)t=t.concat(this.walkTokens(o.tokens,e));break}case"list":{let r=i;t=t.concat(this.walkTokens(r.items,e));break}default:{let r=i;this.defaults.extensions?.childTokens?.[r.type]?this.defaults.extensions.childTokens[r.type].forEach(s=>{let o=r[s].flat(1/0);t=t.concat(this.walkTokens(o,e))}):r.tokens&&(t=t.concat(this.walkTokens(r.tokens,e)))}}return t}use(...n){let e=this.defaults.extensions||{renderers:{},childTokens:{}};return n.forEach(t=>{let i={...t};if(i.async=this.defaults.async||i.async||!1,t.extensions&&(t.extensions.forEach(r=>{if(!r.name)throw new Error("extension name required");if("renderer"in r){let s=e.renderers[r.name];s?e.renderers[r.name]=function(...o){let l=r.renderer.apply(this,o);return l===!1&&(l=s.apply(this,o)),l}:e.renderers[r.name]=r.renderer}if("tokenizer"in r){if(!r.level||r.level!=="block"&&r.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let s=e[r.level];s?s.unshift(r.tokenizer):e[r.level]=[r.tokenizer],r.start&&(r.level==="block"?e.startBlock?e.startBlock.push(r.start):e.startBlock=[r.start]:r.level==="inline"&&(e.startInline?e.startInline.push(r.start):e.startInline=[r.start]))}"childTokens"in r&&r.childTokens&&(e.childTokens[r.name]=r.childTokens)}),i.extensions=e),t.renderer){let r=this.defaults.renderer||new Hs(this.defaults);for(let s in t.renderer){if(!(s in r))throw new Error(`renderer '${s}' does not exist`);if(["options","parser"].includes(s))continue;let o=s,l=t.renderer[o],a=r[o];r[o]=(...c)=>{let h=l.apply(r,c);return h===!1&&(h=a.apply(r,c)),h||""}}i.renderer=r}if(t.tokenizer){let r=this.defaults.tokenizer||new _s(this.defaults);for(let s in t.tokenizer){if(!(s in r))throw new Error(`tokenizer '${s}' does not exist`);if(["options","rules","lexer"].includes(s))continue;let o=s,l=t.tokenizer[o],a=r[o];r[o]=(...c)=>{let h=l.apply(r,c);return h===!1&&(h=a.apply(r,c)),h}}i.tokenizer=r}if(t.hooks){let r=this.defaults.hooks||new Ns;for(let s in t.hooks){if(!(s in r))throw new Error(`hook '${s}' does not exist`);if(["options","block"].includes(s))continue;let o=s,l=t.hooks[o],a=r[o];Ns.passThroughHooks.has(s)?r[o]=c=>{if(this.defaults.async)return Promise.resolve(l.call(r,c)).then(u=>a.call(r,u));let h=l.call(r,c);return a.call(r,h)}:r[o]=(...c)=>{let h=l.apply(r,c);return h===!1&&(h=a.apply(r,c)),h}}i.hooks=r}if(t.walkTokens){let r=this.defaults.walkTokens,s=t.walkTokens;i.walkTokens=function(o){let l=[];return l.push(s.call(this,o)),r&&(l=l.concat(r.call(this,o))),l}}this.defaults={...this.defaults,...i}}),this}setOptions(n){return this.defaults={...this.defaults,...n},this}lexer(n,e){return hn.lex(n,e??this.defaults)}parser(n,e){return un.parse(n,e??this.defaults)}parseMarkdown(n){return(t,i)=>{let r={...i},s={...this.defaults,...r},o=this.onError(!!s.silent,!!s.async);if(this.defaults.async===!0&&r.async===!1)return o(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof t>"u"||t===null)return o(new Error("marked(): input parameter is undefined or null"));if(typeof t!="string")return o(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(t)+", string expected"));s.hooks&&(s.hooks.options=s,s.hooks.block=n);let l=s.hooks?s.hooks.provideLexer():n?hn.lex:hn.lexInline,a=s.hooks?s.hooks.provideParser():n?un.parse:un.parseInline;if(s.async)return Promise.resolve(s.hooks?s.hooks.preprocess(t):t).then(c=>l(c,s)).then(c=>s.hooks?s.hooks.processAllTokens(c):c).then(c=>s.walkTokens?Promise.all(this.walkTokens(c,s.walkTokens)).then(()=>c):c).then(c=>a(c,s)).then(c=>s.hooks?s.hooks.postprocess(c):c).catch(o);try{s.hooks&&(t=s.hooks.preprocess(t));let c=l(t,s);s.hooks&&(c=s.hooks.processAllTokens(c)),s.walkTokens&&this.walkTokens(c,s.walkTokens);let h=a(c,s);return s.hooks&&(h=s.hooks.postprocess(h)),h}catch(c){return o(c)}}}onError(n,e){return t=>{if(t.message+=`
587
+ Please report this to https://github.com/markedjs/marked.`,n){let i="<p>An error occurred:</p><pre>"+Xt(t.message+"",!0)+"</pre>";return e?Promise.resolve(i):i}if(e)return Promise.reject(t);throw t}}},Xn=new rb;function le(n,e){return Xn.parse(n,e)}le.options=le.setOptions=function(n){return Xn.setOptions(n),le.defaults=Xn.defaults,vu(le.defaults),le};le.getDefaults=Ol;le.defaults=Yn;le.use=function(...n){return Xn.use(...n),le.defaults=Xn.defaults,vu(le.defaults),le};le.walkTokens=function(n,e){return Xn.walkTokens(n,e)};le.parseInline=Xn.parseInline;le.Parser=un;le.parser=un.parse;le.Renderer=Hs;le.TextRenderer=Wl;le.Lexer=hn;le.lexer=hn.lex;le.Tokenizer=_s;le.Hooks=Ns;le.parse=le;var Wv=le.options,Vv=le.setOptions,$v=le.use,Uv=le.walkTokens,jv=le.parseInline;var Kv=un.parse,qv=hn.lex;var Jl={};Xh(Jl,{default:()=>Yl});function Pu(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,i=Array(e);t<e;t++)i[t]=n[t];return i}function sb(n){if(Array.isArray(n))return n}function ob(n,e){var t=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(t!=null){var i,r,s,o,l=[],a=!0,c=!1;try{if(s=(t=t.call(n)).next,e!==0)for(;!(a=(i=s.call(t)).done)&&(l.push(i.value),l.length!==e);a=!0);}catch(h){c=!0,r=h}finally{try{if(!a&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(c)throw r}}return l}}function lb(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
588
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ab(n,e){return sb(n)||ob(n,e)||cb(n,e)||lb()}function cb(n,e){if(n){if(typeof n=="string")return Pu(n,e);var t={}.toString.call(n).slice(8,-1);return t==="Object"&&n.constructor&&(t=n.constructor.name),t==="Map"||t==="Set"?Array.from(n):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Pu(n,e):void 0}}var qu=Object.entries,Ou=Object.setPrototypeOf,hb=Object.isFrozen,ub=Object.getPrototypeOf,db=Object.getOwnPropertyDescriptor,_e=Object.freeze,Fe=Object.seal,Li=Object.create,Gu=typeof Reflect<"u"&&Reflect,Gl=Gu.apply,Xl=Gu.construct;_e||(_e=function(e){return e});Fe||(Fe=function(e){return e});Gl||(Gl=function(e,t){for(var i=arguments.length,r=new Array(i>2?i-2:0),s=2;s<i;s++)r[s-2]=arguments[s];return e.apply(t,r)});Xl||(Xl=function(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),r=1;r<t;r++)i[r-1]=arguments[r];return new e(...i)});var Zn=Oe(Array.prototype.forEach),fb=Oe(Array.prototype.lastIndexOf),Iu=Oe(Array.prototype.pop),gr=Oe(Array.prototype.push),pb=Oe(Array.prototype.splice),Pi=Array.isArray,wr=Oe(String.prototype.toLowerCase),Vl=Oe(String.prototype.toString),Nu=Oe(String.prototype.match),br=Oe(String.prototype.replace),Bu=Oe(String.prototype.indexOf),mb=Oe(String.prototype.trim),gb=Oe(Number.prototype.toString),bb=Oe(Boolean.prototype.toString),_u=typeof BigInt>"u"?null:Oe(BigInt.prototype.toString),Hu=typeof Symbol>"u"?null:Oe(Symbol.prototype.toString),at=Oe(Object.prototype.hasOwnProperty),yr=Oe(Object.prototype.toString),Ge=Oe(RegExp.prototype.test),Jn=yb(TypeError);function Oe(n){return function(e){e instanceof RegExp&&(e.lastIndex=0);for(var t=arguments.length,i=new Array(t>1?t-1:0),r=1;r<t;r++)i[r-1]=arguments[r];return Gl(n,e,i)}}function yb(n){return function(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];return Xl(n,t)}}function se(n,e){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:wr;if(Ou&&Ou(n,null),!Pi(e))return n;let i=e.length;for(;i--;){let r=e[i];if(typeof r=="string"){let s=t(r);s!==r&&(hb(e)||(e[i]=s),r=s)}n[r]=!0}return n}function wb(n){for(let e=0;e<n.length;e++)at(n,e)||(n[e]=null);return n}function pt(n){let e=Li(null);for(let i of qu(n)){var t=ab(i,2);let r=t[0],s=t[1];at(n,r)&&(Pi(s)?e[r]=wb(s):s&&typeof s=="object"&&s.constructor===Object?e[r]=pt(s):e[r]=s)}return e}function xb(n){switch(typeof n){case"string":return n;case"number":return gb(n);case"boolean":return bb(n);case"bigint":return _u?_u(n):"0";case"symbol":return Hu?Hu(n):"Symbol()";case"undefined":return yr(n);case"function":case"object":{if(n===null)return yr(n);let e=n,t=xt(e,"toString");if(typeof t=="function"){let i=t(e);return typeof i=="string"?i:yr(i)}return yr(n)}default:return yr(n)}}function xt(n,e){for(;n!==null;){let i=db(n,e);if(i){if(i.get)return Oe(i.get);if(typeof i.value=="function")return Oe(i.value)}n=ub(n)}function t(){return null}return t}function vb(n){try{return Ge(n,""),!0}catch{return!1}}var Fu=_e(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),$l=_e(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),Ul=_e(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),kb=_e(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),jl=_e(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),Sb=_e(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),zu=_e(["#text"]),Wu=_e(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","command","commandfor","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),Kl=_e(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dominant-baseline","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","pointer-events","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-orientation","text-rendering","textlength","type","u1","u2","unicode","values","vector-effect","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),Vu=_e(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),Ws=_e(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),Cb=Fe(/{{[\w\W]*|^[\w\W]*}}/g),Tb=Fe(/<%[\w\W]*|^[\w\W]*%>/g),Ab=Fe(/\${[\w\W]*/g),Eb=Fe(/^data-[\-\w.\u00B7-\uFFFF]+$/),Mb=Fe(/^aria-[\-\w]+$/),$u=Fe(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Rb=Fe(/^(?:\w+script|data):/i),Db=Fe(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Lb=Fe(/^html$/i),Pb=Fe(/^[a-z][.\w]*(-[.\w]+)+$/i),Uu=Fe(/<[/\w!]/g),ju=Fe(/<[/\w]/g),Ob=Fe(/<\/no(script|embed|frames)/i),Ib=Fe(/\/>/i),ft={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},Xu=["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"],Nb=_e(se({},Xu)),Bb=(function(){let n={};return Zn(Xu,e=>{n[e]=Fe(new RegExp("</"+e+"(?=[\\t\\n\\f\\r />])","i"))}),_e(n)})(),_b=function(){return typeof window>"u"?null:window},Hb=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let i=null,r="data-tt-policy-suffix";t&&t.hasAttribute(r)&&(i=t.getAttribute(r));let s="dompurify"+(i?"#"+i:"");try{return e.createPolicy(s,{createHTML(o){return o},createScriptURL(o){return o}})}catch{return console.warn("TrustedTypes policy "+s+" could not be created."),null}},Ku=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},Rn=function(e,t,i,r){return at(e,t)&&Pi(e[t])?se(r.base?pt(r.base):{},e[t],r.transform):i},ql=function(e,t,i){let r=at(e,t)?e[t]:void 0;return r&&typeof r=="object"?pt(r):i()};function Yu(){let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:_b(),e=M=>Yu(M);if(e.version="3.4.15",e.removed=[],!n||!n.document||n.document.nodeType!==ft.document||!n.Element)return e.isSupported=!1,e;let t=n.document,i=t,r=i.currentScript;n.DocumentFragment;let s=n.HTMLTemplateElement,o=n.Node,l=n.Element,a=n.NodeFilter,c=n.NamedNodeMap;c===void 0&&(n.NamedNodeMap||n.MozNamedAttrMap),n.HTMLFormElement;let h=n.DOMParser,u=n.trustedTypes,d=l.prototype,f=xt(d,"cloneNode"),p=xt(d,"remove"),m=xt(d,"removeAttributeNode"),y=xt(d,"nextSibling"),b=xt(d,"childNodes"),x=xt(d,"parentNode"),k=xt(d,"shadowRoot"),_=xt(d,"attributes"),C=o&&o.prototype?xt(o.prototype,"nodeType"):null,S=o&&o.prototype?xt(o.prototype,"nodeName"):null,A=o&&o.prototype?xt(o.prototype,"ownerDocument"):null,$=function(g){return C?C(g):g.nodeType},F=function(g){return S?S(g):g.nodeName};if(typeof s=="function"){let M=t.createElement("template");M.content&&M.content.ownerDocument&&(t=M.content.ownerDocument)}let R,P="",E,O=!1,z=0,Y=function(){if(z>0)throw Jn('A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.')},G=function(g){Y(),z++;try{return R.createHTML(g)}finally{z--}},Te=function(g){Y(),z++;try{return R.createScriptURL(g)}finally{z--}},Ze=function(){return O||(E=Hb(u,r),O=!0),E},ve=t,We=ve.implementation,rt=ve.createNodeIterator,Ve=ve.createDocumentFragment,qe=ve.getElementsByTagName,wt=i.importNode,ie=Ku();e.isSupported=typeof qu=="function"&&typeof x=="function"&&We&&We.createHTMLDocument!==void 0;let vn=Cb,Si=Tb,sr=Ab,rl=Eb,sl=Mb,ol=Rb,ps=Db,ms=Pb,ll=$u,be=null,gs=se({},[...Fu,...$l,...Ul,...jl,...zu]),ye=null,K=se({},[...Wu,...Kl,...Vu,...Ws]),Z=Object.seal(Li(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Pe=null,kn=null,He=Object.seal(Li(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),Sn=!0,Dt=!0,bs=!1,Ch=!0,Cn=!1,Kn=!0,qn=!1,al=!1,ys=null,ws=null,cl=!1,Ci=!1,xs=!1,vs=!1,Th=!0,Ah=!1,Eh="user-content-",hl=!0,ul=!1,Ti={},Ai=null,Mh=se({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","selectedcontent","style","svg","template","thead","title","video","xmp"]),Rh=null,Dh=se({},["audio","video","img","source","image","track"]),Lh=null,Ph=se({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ks="http://www.w3.org/1998/Math/MathML",Ss="http://www.w3.org/2000/svg",jt="http://www.w3.org/1999/xhtml",Ei=jt,dl=!1,fl=null,Kg=se({},[ks,Ss,jt],Vl),Oh=_e(["mi","mo","mn","ms","mtext"]),pl=se({},Oh),Ih=_e(["annotation-xml"]),ml=se({},Ih),qg=se({},["title","style","font","a","script"]),or=null,Gg=["application/xhtml+xml","text/html"],Xg="text/html",De=null,Mi=null,Yg=t.createElement("form"),Nh=function(g){return g instanceof RegExp||g instanceof Function},gl=function(){let g=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(Mi&&Mi===g)return;(!g||typeof g!="object")&&(g={}),g=pt(g),or=Gg.indexOf(g.PARSER_MEDIA_TYPE)===-1?Xg:g.PARSER_MEDIA_TYPE,De=or==="application/xhtml+xml"?Vl:wr,be=Rn(g,"ALLOWED_TAGS",gs,{transform:De}),ye=Rn(g,"ALLOWED_ATTR",K,{transform:De}),fl=Rn(g,"ALLOWED_NAMESPACES",Kg,{transform:Vl}),Lh=Rn(g,"ADD_URI_SAFE_ATTR",Ph,{transform:De,base:Ph}),Rh=Rn(g,"ADD_DATA_URI_TAGS",Dh,{transform:De,base:Dh}),Ai=Rn(g,"FORBID_CONTENTS",Mh,{transform:De}),Pe=Rn(g,"FORBID_TAGS",pt({}),{transform:De}),kn=Rn(g,"FORBID_ATTR",pt({}),{transform:De}),Ti=at(g,"USE_PROFILES")?g.USE_PROFILES&&typeof g.USE_PROFILES=="object"?pt(g.USE_PROFILES):g.USE_PROFILES:!1,Sn=g.ALLOW_ARIA_ATTR!==!1,Dt=g.ALLOW_DATA_ATTR!==!1,bs=g.ALLOW_UNKNOWN_PROTOCOLS||!1,Ch=g.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Cn=g.SAFE_FOR_TEMPLATES||!1,Kn=g.SAFE_FOR_XML!==!1,qn=g.WHOLE_DOCUMENT||!1,Ci=g.RETURN_DOM||!1,xs=g.RETURN_DOM_FRAGMENT||!1,vs=g.RETURN_TRUSTED_TYPE||!1,cl=g.FORCE_BODY||!1,Th=g.SANITIZE_DOM!==!1,Ah=g.SANITIZE_NAMED_PROPS||!1,hl=g.KEEP_CONTENT!==!1,ul=g.IN_PLACE||!1,ll=vb(g.ALLOWED_URI_REGEXP)?g.ALLOWED_URI_REGEXP:$u,Ei=typeof g.NAMESPACE=="string"?g.NAMESPACE:jt,pl=ql(g,"MATHML_TEXT_INTEGRATION_POINTS",()=>se({},Oh)),ml=ql(g,"HTML_INTEGRATION_POINTS",()=>se({},Ih));let w=ql(g,"CUSTOM_ELEMENT_HANDLING",()=>Li(null));if(Z=Li(null),at(w,"tagNameCheck")&&Nh(w.tagNameCheck)&&(Z.tagNameCheck=w.tagNameCheck),at(w,"attributeNameCheck")&&Nh(w.attributeNameCheck)&&(Z.attributeNameCheck=w.attributeNameCheck),at(w,"allowCustomizedBuiltInElements")&&typeof w.allowCustomizedBuiltInElements=="boolean"&&(Z.allowCustomizedBuiltInElements=w.allowCustomizedBuiltInElements),Fe(Z),Cn&&(Dt=!1),xs&&(Ci=!0),Ti&&(be=se({},zu),ye=Li(null),Ti.html===!0&&(se(be,Fu),se(ye,Wu)),Ti.svg===!0&&(se(be,$l),se(ye,Kl),se(ye,Ws)),Ti.svgFilters===!0&&(se(be,Ul),se(ye,Kl),se(ye,Ws)),Ti.mathMl===!0&&(se(be,jl),se(ye,Vu),se(ye,Ws))),He.tagCheck=null,He.attributeCheck=null,at(g,"ADD_TAGS")&&(typeof g.ADD_TAGS=="function"?He.tagCheck=g.ADD_TAGS:Pi(g.ADD_TAGS)&&(be===gs&&(be=pt(be)),se(be,g.ADD_TAGS,De))),at(g,"ADD_ATTR")&&(typeof g.ADD_ATTR=="function"?He.attributeCheck=g.ADD_ATTR:Pi(g.ADD_ATTR)&&(ye===K&&(ye=pt(ye)),se(ye,g.ADD_ATTR,De))),at(g,"ADD_FORBID_CONTENTS")&&Pi(g.ADD_FORBID_CONTENTS)&&(Ai===Mh&&(Ai=pt(Ai)),se(Ai,g.ADD_FORBID_CONTENTS,De)),hl&&(be["#text"]=!0),qn&&se(be,["html","head","body"]),be.table&&(se(be,["tbody"]),delete Pe.tbody),g.TRUSTED_TYPES_POLICY){if(typeof g.TRUSTED_TYPES_POLICY.createHTML!="function")throw Jn('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof g.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Jn('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');let T=R;R=g.TRUSTED_TYPES_POLICY;try{P=G("")}catch(H){throw R=T,H}}else g.TRUSTED_TYPES_POLICY===null?(R=void 0,P=""):(R===void 0&&(R=Ze()),R&&typeof P=="string"&&(P=G("")));_e&&_e(g),Mi=g},Bh=se({},[...$l,...Ul,...kb]),_h=se({},[...jl,...Sb]),Jg=function(g,w,T){return w.namespaceURI===jt?g==="svg":w.namespaceURI===ks?g==="svg"&&(T==="annotation-xml"||pl[T]):!!Bh[g]},Zg=function(g,w,T){return w.namespaceURI===jt?g==="math":w.namespaceURI===Ss?g==="math"&&ml[T]:!!_h[g]},Qg=function(g,w,T){return w.namespaceURI===Ss&&!ml[T]||w.namespaceURI===ks&&!pl[T]?!1:!_h[g]&&(qg[g]||!Bh[g])},e0=function(g){let w=x(g);(!w||!w.tagName)&&(w={namespaceURI:Ei,tagName:"template"});let T=wr(g.tagName),H=wr(w.tagName);return fl[g.namespaceURI]?g.namespaceURI===Ss?Jg(T,w,H):g.namespaceURI===ks?Zg(T,w,H):g.namespaceURI===jt?Qg(T,w,H):!!(or==="application/xhtml+xml"&&fl[g.namespaceURI]):!1},Tn=function(g){gr(e.removed,{element:g});try{x(g).removeChild(g)}catch{if(p(g),!x(g))throw Jn("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},Hh=function(g,w,T){try{m(g,w)}catch{try{g.removeAttribute(T)}catch{}}},Cs=function(g){Ts(g);let w=b(g);if(w){let H=[];Zn(w,W=>{gr(H,W)}),Zn(H,W=>{try{p(W)}catch{}})}let T=_(g);if(T)for(let H=T.length-1;H>=0;--H){let W=T[H],q=W&&W.name;typeof q=="string"&&Hh(g,W,q)}},Gn=function(g,w,T){if(!T)try{T=w.getAttributeNode(g)}catch{T=null}gr(e.removed,{attribute:T||null,from:w});try{T?m(w,T):w.removeAttribute(g)}catch{try{w.removeAttribute(g)}catch{}}if(g==="is")if(Ci||xs)try{Tn(w)}catch{}else try{w.setAttribute(g,"")}catch{}},t0=function(g){let w=_(g);if(w)for(let T=w.length-1;T>=0;--T){let H=w[T],W=H&&H.name;typeof W!="string"||ye[De(W)]||Hh(g,H,W)}},Ts=function(g){let w=[g];for(;w.length>0;){let T=w.pop();$(T)===ft.element&&t0(T);let W=b(T);if(W)for(let q=W.length-1;q>=0;--q)w.push(W[q])}},Fh=function(g,w){return Kn?g==="patchsrc"?!0:g==="for"&&w!=="label"&&w!=="output":!1},n0=function(g){if(!Kn)return;let w=[g];for(;w.length>0;){let T=w.pop(),H=$(T);if(H===ft.processingInstruction||H===ft.comment&&Ge(ju,T.data)){try{p(T)}catch{}continue}if(H===ft.element){let q=T,fe=De(F(T));try{q.hasAttribute&&q.hasAttribute("patchsrc")&&q.removeAttribute("patchsrc"),q.hasAttribute&&q.hasAttribute("for")&&Fh("for",fe)&&q.removeAttribute("for")}catch{}}let W=b(T);if(W)for(let q=W.length-1;q>=0;--q)w.push(W[q])}},zh=function(g){let w=null,T=null;if(cl)g="<remove></remove>"+g;else{let q=Nu(g,/^[\r\n\t ]+/);T=q&&q[0]}or==="application/xhtml+xml"&&Ei===jt&&(g='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+g+"</body></html>");let H=R?G(g):g;if(Ei===jt)try{w=new h().parseFromString(H,or)}catch{}if(!w||!w.documentElement){w=We.createDocument(Ei,"template",null);try{w.documentElement.innerHTML=dl?P:H}catch{}}let W=w.body||w.documentElement;return g&&T&&W.insertBefore(t.createTextNode(T),W.childNodes[0]||null),Ei===jt?qe.call(w,qn?"html":"body")[0]:qn?w.documentElement:W},Wh=function(g){let w=A?A(g):g.ownerDocument;return rt.call(w||g,g,a.SHOW_ELEMENT|a.SHOW_COMMENT|a.SHOW_TEXT|a.SHOW_PROCESSING_INSTRUCTION|a.SHOW_CDATA_SECTION,null)},As=function(g){return g=br(g,vn," "),g=br(g,Si," "),g=br(g,sr," "),g},bl=function(g){var w;g.normalize();let T=A?A(g):g.ownerDocument,H=rt.call(T||g,g,a.SHOW_TEXT|a.SHOW_COMMENT|a.SHOW_CDATA_SECTION|a.SHOW_PROCESSING_INSTRUCTION,null),W=H.nextNode();for(;W;)W.data=As(W.data),W=H.nextNode();let q=(w=g.querySelectorAll)===null||w===void 0?void 0:w.call(g,"template");q&&Zn(q,fe=>{Ri(fe.content)&&bl(fe.content)})},Es=function(g){let w=S?S(g):null;return typeof w!="string"||De(w)!=="form"?!1:typeof g.nodeName!="string"||typeof g.textContent!="string"||typeof g.removeChild!="function"||g.attributes!==_(g)||typeof g.removeAttribute!="function"||typeof g.removeAttributeNode!="function"||typeof g.getAttributeNode!="function"||typeof g.setAttribute!="function"||typeof g.namespaceURI!="string"||typeof g.insertBefore!="function"||typeof g.hasChildNodes!="function"||g.nodeType!==C(g)||g.childNodes!==b(g)},Ri=function(g){if(!C||typeof g!="object"||g===null)return!1;try{return C(g)===ft.documentFragment}catch{return!1}},lr=function(g){if(!C||typeof g!="object"||g===null)return!1;try{return typeof C(g)=="number"}catch{return!1}};function Kt(M,g,w){M.length!==0&&Zn(M,T=>{T.call(e,g,w,Mi)})}let i0=function(g,w){return!!(Kn&&g.hasChildNodes()&&!lr(g.firstElementChild)&&Ge(Uu,g.textContent)&&Ge(Uu,g.innerHTML)||Kn&&g.namespaceURI===jt&&Nb[w]&&(lr(g.firstElementChild)||typeof g.textContent=="string"&&Ge(Bb[w],g.textContent))||g.nodeType===ft.processingInstruction||Kn&&g.nodeType===ft.comment&&Ge(ju,g.data))},Ms=function(g,w){if(g instanceof RegExp)return Ge(g,w);if(g instanceof Function){for(var T=arguments.length,H=new Array(T>2?T-2:0),W=2;W<T;W++)H[W-2]=arguments[W];return!!g(w,...H)}return!1},r0=function(g,w,T){if(!Pe[w]&&Kh(w)&&Ms(Z.tagNameCheck,w))return!1;if(hl&&!Ai[w]){let H=x(g),W=b(g);if(W&&H){let q=W.length;for(let fe=q-1;fe>=0;--fe){let Ae=g===T?f(W[fe],!0):W[fe];H.insertBefore(Ae,y(g))}}}return Tn(g),!0},Vh=function(g,w,T,H){return g.length===0?w:w===T||w===H?pt(w):w},$h=function(g,w){return g===w||x(g)!==null?!1:(ul&&Ts(g),!0)},Uh=function(g,w){if(Kt(ie.beforeSanitizeElements,g,null),$h(g,w))return!0;if(Es(g))return Tn(g),!0;let T=De(F(g));if(be=Vh(ie.uponSanitizeElement,be,gs,ys),Kt(ie.uponSanitizeElement,g,{tagName:T,allowedTags:be}),$h(g,w))return!0;if(i0(g,T))return Tn(g),!0;if(Pe[T]||!(He.tagCheck instanceof Function&&He.tagCheck(T))&&!be[T]){let W=r0(g,T,w);return W===!1&&Kt(ie.afterSanitizeElements,g,null),W}if($(g)===ft.element&&!e0(g)||(T==="noscript"||T==="noembed"||T==="noframes")&&Ge(Ob,g.innerHTML))return Tn(g),!0;if(Cn&&g.nodeType===ft.text){let W=As(g.textContent);g.textContent!==W&&(gr(e.removed,{element:g.cloneNode()}),g.textContent=W)}return Kt(ie.afterSanitizeElements,g,null),!1},jh=function(g,w,T){if(kn[w]||Fh(w,g)||Th&&(w==="id"||w==="name")&&(T in t||T in Yg))return!1;let H=ye[w]||He.attributeCheck instanceof Function&&He.attributeCheck(w,g);return Dt&&Ge(rl,w)||Sn&&Ge(sl,w)?!0:H?Lh[w]||Ge(ll,br(T,ps,""))||(w==="src"||w==="xlink:href"||w==="href")&&g!=="script"&&Bu(T,"data:")===0&&Rh[g]||bs&&!Ge(ol,br(T,ps,""))?!0:!T:Kh(g)&&Ms(Z.tagNameCheck,g)&&Ms(Z.attributeNameCheck,w,g)||w==="is"&&Z.allowCustomizedBuiltInElements&&Ms(Z.tagNameCheck,T)},s0=se({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),Kh=function(g){return!s0[wr(g)]&&Ge(ms,g)},o0=function(g,w,T,H){if(R&&typeof u=="object"&&typeof u.getAttributeType=="function"&&!T)switch(u.getAttributeType(g,w)){case"TrustedHTML":return G(H);case"TrustedScriptURL":return Te(H)}return H},l0=function(g,w,T,H){try{return T?g.setAttributeNS(T,w,H):g.setAttribute(w,H),Es(g)?(Tn(g),!1):!0}catch{return Gn(w,g),!1}},qh=function(g){Kt(ie.beforeSanitizeAttributes,g,null);let w=g.attributes;if(!w||Es(g))return;ye=Vh(ie.uponSanitizeAttribute,ye,K,ws);let T={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ye,forceKeepAttr:void 0},H=w.length,W=De(g.nodeName);for(;H--;){let q=w[H],fe=q.name,Ae=q.namespaceURI,st=q.value,ot=De(fe),wl=st,Qe=fe==="value"?wl:mb(wl),Gh=!1;if(T.attrName=ot,T.attrValue=Qe,T.keepAttr=!0,T.forceKeepAttr=void 0,Kt(ie.uponSanitizeAttribute,g,T),Qe=T.attrValue,Ah&&(ot==="id"||ot==="name")&&Bu(Qe,Eh)!==0&&(Gn(fe,g,q),Qe=Eh+Qe,Gh=!0),Kn&&Ge(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,Qe)){Gn(fe,g,q);continue}if(ot==="attributename"&&Nu(Qe,"href")){Gn(fe,g,q);continue}if(!T.forceKeepAttr){if(!T.keepAttr){Gn(fe,g,q);continue}if(!Ch&&Ge(Ib,Qe)){Gn(fe,g,q);continue}if(Cn&&(Qe=As(Qe)),!jh(W,ot,Qe)){Gn(fe,g,q);continue}Qe=o0(W,ot,Ae,Qe),Qe!==wl&&l0(g,fe,Ae,Qe)&&Gh&&Iu(e.removed)}}Kt(ie.afterSanitizeAttributes,g,null)},Rs=function(g){let w=null,T=Wh(g);for(Kt(ie.beforeSanitizeShadowDOM,g,null);w=T.nextNode();)if(Kt(ie.uponSanitizeShadowNode,w,null),Uh(w,g),qh(w),Ri(w.content)&&Rs(w.content),$(w)===ft.element){let H=k(w);Ri(H)&&(yl(H),Rs(H))}Kt(ie.afterSanitizeShadowDOM,g,null)},yl=function(g){let w=[{node:g,shadow:null}];for(;w.length>0;){let T=w.pop();if(T.shadow){Rs(T.shadow);continue}let H=T.node,q=$(H)===ft.element,fe=b(H);if(fe)for(let Ae=fe.length-1;Ae>=0;--Ae)w.push({node:fe[Ae],shadow:null});if(q){let Ae=S?S(H):null;if(typeof Ae=="string"&&De(Ae)==="template"){let st=H.content;Ri(st)&&w.push({node:st,shadow:null})}}if(q){let Ae=k(H);Ri(Ae)&&w.push({node:null,shadow:Ae},{node:Ae,shadow:null})}}};return e.sanitize=function(M){let g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},w=null,T=null,H=null,W=null;if(dl=!M,dl&&(M="<!-->"),typeof M!="string"&&!lr(M)&&(M=xb(M),typeof M!="string"))throw Jn("dirty is not a string, aborting");if(!e.isSupported)return M;al?(be=ys,ye=ws):gl(g),(ie.uponSanitizeElement.length>0||ie.uponSanitizeAttribute.length>0)&&(be=pt(be)),ie.uponSanitizeAttribute.length>0&&(ye=pt(ye)),e.removed=[];let q=ul&&typeof M!="string"&&lr(M);if(q){n0(M);let st=F(M);if(typeof st=="string"){let ot=De(st);if(!be[ot]||Pe[ot])throw Cs(M),Jn("root node is forbidden and cannot be sanitized in-place")}if(Es(M))throw Cs(M),Jn("root node is clobbered and cannot be sanitized in-place");try{yl(M)}catch(ot){throw Cs(M),ot}}else if(lr(M))w=zh("<!---->"),T=w.ownerDocument.importNode(M,!0),T.nodeType===ft.element&&T.nodeName==="BODY"||T.nodeName==="HTML"?w=T:w.appendChild(T),yl(w);else{if(!Ci&&!Cn&&!qn&&M.indexOf("<")===-1)return R&&vs?G(M):M;if(w=zh(M),!w)return Ci?null:vs?P:""}w&&cl&&Tn(w.firstChild);let fe=q?M:w;try{let st=Wh(fe);for(;H=st.nextNode();)Uh(H,fe),qh(H),Ri(H.content)&&Rs(H.content)}catch(st){throw q&&(Cs(M),Zn(e.removed,ot=>{ot.element&&Ts(ot.element)})),st}if(q)return Zn(e.removed,st=>{st.element&&Ts(st.element)}),Cn&&bl(M),M;if(Ci){if(Cn&&bl(w),xs)for(W=Ve.call(w.ownerDocument);w.firstChild;)W.appendChild(w.firstChild);else W=w;return(ye.shadowroot||ye.shadowrootmode)&&(W=wt.call(i,W,!0)),W}let Ae=qn?w.outerHTML:w.innerHTML;return qn&&be["!doctype"]&&w.ownerDocument&&w.ownerDocument.doctype&&w.ownerDocument.doctype.name&&Ge(Lb,w.ownerDocument.doctype.name)&&(Ae="<!DOCTYPE "+w.ownerDocument.doctype.name+`>
589
+ `+Ae),Cn&&(Ae=As(Ae)),R&&vs?G(Ae):Ae},e.setConfig=function(){let M=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};gl(M),al=!0,ys=be,ws=ye},e.clearConfig=function(){Mi=null,al=!1,ys=null,ws=null,R=E,P=""},e.isValidAttribute=function(M,g,w){Mi||gl({});let T=De(M),H=De(g);return jh(T,H,w)},e.addHook=function(M,g){typeof g=="function"&&at(ie,M)&&gr(ie[M],g)},e.removeHook=function(M,g){if(at(ie,M)){if(g!==void 0){let w=fb(ie[M],g);return w===-1?void 0:pb(ie[M],w,1)[0]}return Iu(ie[M])}},e.removeHooks=function(M){at(ie,M)&&(ie[M]=[])},e.removeAllHooks=function(){ie=Ku()},e}var Yl=Yu();function Vs(n,e,t,i){let r=t?Array.from(t):[];if(!n||!e||r.length===0)return!1;let s=J.conversation;if(!s)return i?.("error",v("attach.channelUnavailable")),!1;try{let o=s.createDrafts(n,r);if(o.length===0)return!1;let l=e.addAttachments(o.map(a=>a.id));return l||s.releaseDraftAttachments(o),l}catch(o){return i?.("error",o instanceof Error?o.message:String(o)),!1}}function Ju(n){let e=null,t=J.conversation?.input.shell(n);if(typeof t?.bindFilePicker=="function")return t.bindFilePicker({available:()=>!0,open:()=>{e?.remove();let i=document.createElement("input");e=i,i.type="file",i.multiple=!0,i.style.display="none",i.addEventListener("change",()=>{i.remove(),e===i&&(e=null),Vs(n,J.conversation?.input.shell(n)??void 0,i.files)}),document.body.appendChild(i),i.click()}})}function Zu(n){return n!==null&&Array.from(n.types).includes("Files")}var U=require("react/jsx-runtime");function Dn(n,e,t,i="currentColor"){return(0,U.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:e??16,height:e??16,viewBox:"0 0 24 24",fill:"none",stroke:i,strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round",className:t,"aria-hidden":"true",children:n})}var Zl=(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)("path",{d:"M6.8 5.8 2.9 11l4 4.4"}),(0,U.jsx)("path",{d:"M17.2 5.8 21.1 11l-3.9 4.4"}),(0,U.jsx)("path",{d:"M10.7 9.5 12.5 3.9"}),(0,U.jsx)("path",{d:"M16.6 9.4 6.9 14l2.9 1.3.1 2.5q.1.8.7.3l1-2.3 2.2 1.4Z"}),(0,U.jsx)("path",{d:"M9.8 15.3 16.6 9.4"})]});function Qu({size:n,className:e}){return Dn(Zl,n,e)}function Ql({size:n,className:e}){return Dn(Zl,n,e,"#3964FE")}function ed({size:n,className:e}){return Dn((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)("path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"}),(0,U.jsx)("path",{d:"m15 5 4 4"})]}),n,e)}function td({size:n,className:e}){return Dn((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)("path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"}),(0,U.jsx)("circle",{cx:"12",cy:"12",r:"3"})]}),n,e)}function nd({size:n,className:e}){return Dn((0,U.jsx)("path",{d:"M18 6 6 18M6 6l12 12"}),n,e)}function id({size:n,className:e}){return Dn((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)("path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"}),(0,U.jsx)("path",{d:"M14 2v4a2 2 0 0 0 2 2h4"})]}),n,e)}function rd({size:n,className:e}){return Dn((0,U.jsx)("path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z"}),n,e)}function sd({size:n,className:e}){return Dn((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)("circle",{cx:"11",cy:"11",r:"8"}),(0,U.jsx)("path",{d:"m21 21-4.3-4.3"})]}),n,e)}function od({size:n}){return(0,U.jsx)("svg",{width:n??14,height:n??14,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:(0,U.jsx)("path",{d:"M8.64453 1.5V7.34961H14.5V8.65039H8.64453V14.5H7.34473V8.65039H1.5V7.34961H7.34473V1.5H8.64453Z",fill:"currentColor"})})}var ld="M8.20554 0.899994L14.7901 3.36857V7.01026C14.7901 12 11.0466 14.2103 8.20554 15.3C5.36446 14.2103 1.62012 12 1.62012 7.01026V3.36857L8.20554 0.899994Z",Fb="M12.1654 5.7552L8.9447 9.41475C8.73044 9.65816 8.53628 9.8804 8.35774 10.0423C8.1713 10.2114 7.94235 10.3717 7.64016 10.4254C7.48207 10.4535 7.32 10.4552 7.16151 10.4294C6.85843 10.3801 6.62728 10.2223 6.43836 10.0559C6.25752 9.89653 6.06037 9.67732 5.84264 9.43705L4.72925 8.20897L5.63557 7.38707L6.74897 8.61594C6.98603 8.87755 7.12974 9.03533 7.24673 9.13839C7.31033 9.19443 7.34485 9.21476 7.35823 9.22122C7.38068 9.22484 7.40352 9.22515 7.42593 9.22122C7.40522 9.22502 7.42893 9.23294 7.53583 9.136C7.65132 9.03126 7.79316 8.87139 8.02643 8.60638L11.2479 4.94763L12.1654 5.7552Z";function ad({size:n}){return(0,U.jsxs)("svg",{width:n??16,height:n??16,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[(0,U.jsx)("path",{d:ld,stroke:"currentColor",strokeWidth:"1.31831",strokeLinejoin:"round"}),(0,U.jsx)("path",{d:Fb,fill:"currentColor"})]})}function cd({size:n}){return(0,U.jsxs)("svg",{width:n??16,height:n??16,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[(0,U.jsx)("path",{d:"M8.08887 0.251709C8.20479 0.23085 8.32486 0.241168 8.43652 0.282959L15.0215 2.75171C15.2787 2.84819 15.4492 3.09414 15.4492 3.3689V7.0105C15.4492 7.10986 15.4441 7.2081 15.4414 7.30542C15.0285 7.07175 14.5905 6.87695 14.1309 6.73022V3.82495L8.20508 1.60327L2.2793 3.82495V7.0105C2.27936 9.7171 3.4745 11.5379 5.02734 12.7947C5.01025 12.9942 5 13.1962 5 13.4001C5.00001 13.7617 5.02722 14.1169 5.08008 14.4636C2.91555 13.0393 0.961014 10.752 0.960938 7.0105V3.3689C0.960938 3.09417 1.13146 2.84821 1.38867 2.75171L7.97461 0.282959L8.08887 0.251709Z",fill:"currentColor"}),(0,U.jsx)("path",{d:"M11.3525 5.64688V6.85688H5V5.64688H11.3525Z",fill:"currentColor"}),(0,U.jsx)("path",{d:"M9.5824 8.29376V9.50376H5V8.29376H9.5824Z",fill:"currentColor"}),(0,U.jsx)("path",{d:"M14.6647 15.6852H10.0338C10.3878 15.3751 10.7567 15.0517 11.0772 14.7706C11.2531 14.6164 11.4144 14.4746 11.5511 14.3547H14.6647V15.6852Z",fill:"currentColor"}),(0,U.jsx)("path",{d:"M8.14852 14.1308L7.33925 15.4976C7.22458 15.6912 7.42245 15.9194 7.63037 15.8333L9.09785 15.2254L15.0399 10.0719L14.0905 8.97733L8.14852 14.1308Z",fill:"currentColor"})]})}function hd({size:n}){return(0,U.jsxs)("svg",{width:n??16,height:n??16,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[(0,U.jsx)("path",{d:ld,stroke:"currentColor",strokeWidth:"1.31831",strokeLinejoin:"round"}),(0,U.jsx)("path",{d:"M9.10094 4.5V8.75939H7.59888V4.5H9.10094Z",fill:"currentColor"}),(0,U.jsx)("path",{d:"M9.10094 9.8114V11.5H7.59888V9.8114H9.10094Z",fill:"currentColor"})]})}function ud({size:n}){return(0,U.jsxs)("svg",{width:n??18,height:n??18,viewBox:"0 0 14 14",fill:"none","aria-hidden":"true",children:[(0,U.jsx)("path",{d:"M6.3002 3.32843L7.69986 3.32843L7.69986 7.79657H6.3002L6.3002 3.32843Z",fill:"currentColor"}),(0,U.jsx)("path",{d:"M6.3002 9.01935H7.69986V10.6711H6.3002V9.01935Z",fill:"currentColor"}),(0,U.jsx)("path",{d:"M12.6328 6.99976C12.6328 3.88874 10.111 1.36694 7 1.36694C3.88899 1.36695 1.3672 3.88875 1.36719 6.99976C1.36719 10.1108 3.88899 12.6326 7 12.6326C10.111 12.6326 12.6328 10.1108 12.6328 6.99976ZM13.8582 6.99976C13.8582 10.7873 10.7876 13.8579 7 13.8579C3.21244 13.8579 0.141846 10.7873 0.141846 6.99976C0.141857 3.2122 3.21245 0.141612 7 0.141602C10.7876 0.141602 13.8581 3.21219 13.8582 6.99976Z",fill:"currentColor"})]})}function dd({size:n}){return(0,U.jsx)("svg",{width:n??16,height:n??16,viewBox:"0 0 16 16","aria-hidden":"true",children:(0,U.jsx)("path",{d:"M8.3125 0.980183C8.66767 1.0531 8.97902 1.20418 9.2627 1.43233C9.48724 1.61297 9.73029 1.85793 9.97949 2.10714L14.707 6.83468L13.293 8.24874L9 3.95577V15.0417H7V3.95577L2.70703 8.24874L1.29297 6.83468L6.02051 2.10714C6.26971 1.85793 6.51277 1.61297 6.7373 1.43233C6.97662 1.23986 7.28445 1.04402 7.6875 0.980183C7.8973 0.947006 8.1031 0.95516 8.3125 0.980183Z",fill:"currentColor"})})}function fd({size:n}){return(0,U.jsx)("svg",{width:n??16,height:n??16,viewBox:"0 0 16 16","aria-hidden":"true",children:(0,U.jsx)("rect",{x:"3",y:"3",width:"10",height:"10",rx:"3",fill:"currentColor"})})}function Yt({size:n}){return(0,U.jsx)("svg",{width:n??14,height:n??14,viewBox:"0 0 14 14",fill:"none","aria-hidden":"true",children:(0,U.jsx)("path",{d:"M3.5 5.75L7 9.25L10.5 5.75",stroke:"currentColor",strokeWidth:"1.3",strokeLinecap:"round",strokeLinejoin:"round"})})}function pd({size:n=16,className:e}){return(0,U.jsx)("svg",{width:n,height:n,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round",className:e,"aria-hidden":"true",children:Zl})}var Rt=require("react");var ta=[],yd=[];(()=>{let n="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,1n,9,16,o,,x,1i,3,,i,,7,a,2,t,3,1k,,,7,2,2,2,3,9,,a,2,q,,2,3,1k,,,5,4,2,2,3,3,,u,2,3,,b,3,1k,,,8,,3,,3,k,2,m,6,,3,1k,,,7,2,2,2,3,7,3,a,2,u,,1n,5,3,3,,4,9,,14,5,1j,,,7,,3,,4,7,2,b,2,t,3,1k,,,7,,3,,4,7,2,b,2,f,,c,4,1j,2,,7,,3,,4,9,,a,2,t,3,1y,,4,6,,,,8,i,2,1p,,,8,c,8,2q,,,a,b,7,21,2,r,,,,,,4,2,1d,k,,2,5,b,,10,9,,2u,b,,6,n,4,4,3,g,4,d,,,3,6,,f,,jj,3,qa,4,s,3,t,2,u,2,1s,w,9,,19,3,,,39,2,y,,3a,c,4,c,63,5,1l,a,,,,,2,o,2,,1c,1a,2,c,k,5,1b,h,12,9,c,3,u,d,1k,e,1c,k,48,3,,l,4,,6,,2,3,5i,1s,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,n,5,4,,2b,2,1e,i,q,i,d,,12,8,p,d,18,4,1b,e,10,,1v,e,c,,8,2,1a,,1f,,,3,2,2,5,2,,,15,5,5,2,6k,8,,2,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,1t,5,8t,2,25,6,1y,b,1d,4,3e,3,1h,f,15,,2,2,a,4,19,b,7,,1p,3,10,e,g,2,18,,c,3,1c,e,8,4,,2,2k,c,6,,2,,4d,c,l,4,1j,2,,7,2,2,2,3,9,,a,2,2,7,3,5,1v,9,,,2,,,4,,5,,,e,2,2a,i,n,,29,k,6j,7,2,9,r,2,2a,h,2y,d,2t,3,2,a,74,f,6t,6,,2,2,4,,,,2,3x,7,2,7,3,,s,a,14,7,,4,8,,9,b,1a,g,5i,8,5j,8,,8,2a,m,,e,3e,6,3,,,2,,7,,,1u,5,,2,,5,9n,4,9,2,,,1c,7,3,5,n,,44l,,6,f,8ug,i,1xc,5,1n,7,t4,,,1j,7,4,29,,b,2,f57,2,3mp,1a,2,n,f2,5,3,6,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,2s,,4g,7,af,,1p,4,e4,4,72,2,6r,,2,,7,2,5,,d6,7,31,7,240,5".split(",").map(e=>e?parseInt(e,36):1);for(let e=0,t=0;e<n.length;e++)(e%2?yd:ta).push(t=t+n[e])})();function zb(n){if(n<768)return!1;for(let e=0,t=ta.length;;){let i=e+t>>1;if(n<ta[i])t=i;else if(n>=yd[i])e=i+1;else return!0;if(e==t)return!1}}function md(n){return n>=127462&&n<=127487}var gd=8205;function wd(n,e,t=!0,i=!0){return(t?xd:Wb)(n,e,i)}function xd(n,e,t){if(e==n.length)return e;e&&vd(n.charCodeAt(e))&&kd(n.charCodeAt(e-1))&&e--;let i=ea(n,e);for(e+=bd(i);e<n.length;){let r=ea(n,e);if(i==gd||r==gd||t&&zb(r))e+=bd(r),i=r;else if(md(r)){let s=0,o=e-2;for(;o>=0&&md(ea(n,o));)s++,o-=2;if(s%2==0)break;e+=2}else break}return e}function Wb(n,e,t){for(;e>1;){let i=xd(n,e-2,t);if(i<e)return i;e--}return 0}function ea(n,e){let t=n.charCodeAt(e);if(!kd(t)||e+1==n.length)return t;let i=n.charCodeAt(e+1);return vd(i)?(t-55296<<10)+(i-56320)+65536:t}function vd(n){return n>=56320&&n<57344}function kd(n){return n>=55296&&n<56320}function bd(n){return n<65536?1:2}var ne=class n{lineAt(e){if(e<0||e>this.length)throw new RangeError(`Invalid position ${e} in document of length ${this.length}`);return this.lineInner(e,!1,1,0)}line(e){if(e<1||e>this.lines)throw new RangeError(`Invalid line number ${e} in ${this.lines}-line document`);return this.lineInner(e,!0,1,0)}replace(e,t,i){[e,t]=_i(this,e,t);let r=[];return this.decompose(0,e,r,2),i.length&&i.decompose(0,i.length,r,3),this.decompose(t,this.length,r,1),Ii.from(r,this.length-(t-e)+i.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,t=this.length){[e,t]=_i(this,e,t);let i=[];return this.decompose(e,t,i,0),Ii.from(i,t-e)}eq(e){if(e==this)return!0;if(e.length!=this.length||e.lines!=this.lines)return!1;let t=this.scanIdentical(e,1),i=this.length-this.scanIdentical(e,-1),r=new ni(this),s=new ni(e);for(let o=t,l=t;;){if(r.next(o),s.next(o),o=0,r.lineBreak!=s.lineBreak||r.done!=s.done||r.value!=s.value)return!1;if(l+=r.value.length,r.done||l>=i)return!0}}iter(e=1){return new ni(this,e)}iterRange(e,t=this.length){return new qs(this,e,t)}iterLines(e,t){let i;if(e==null)i=this.iter();else{t==null&&(t=this.lines+1);let r=this.line(e).from;i=this.iterRange(r,Math.max(r,t==this.lines+1?this.length:t<=1?0:this.line(t-1).to))}return new Gs(i)}toString(){return this.sliceString(0)}toJSON(){let e=[];return this.flatten(e),e}constructor(){}static of(e){if(e.length==0)throw new RangeError("A document must have at least one line");return e.length==1&&!e[0]?n.empty:e.length<=32?new mt(e):Ii.from(mt.split(e,[]))}},mt=class n extends ne{constructor(e,t=Vb(e)){super(),this.text=e,this.length=t}get lines(){return this.text.length}get children(){return null}lineInner(e,t,i,r){for(let s=0;;s++){let o=this.text[s],l=r+o.length;if((t?i:l)>=e)return new ia(r,l,i,o);r=l+1,i++}}decompose(e,t,i,r){let s=e<=0&&t>=this.length?this:new n(Sd(this.text,e,t),Math.min(t,this.length)-Math.max(0,e));if(r&1){let o=i.pop(),l=Ks(s.text,o.text.slice(),0,s.length);if(l.length<=32)i.push(new n(l,o.length+s.length));else{let a=l.length>>1;i.push(new n(l.slice(0,a)),new n(l.slice(a)))}}else i.push(s)}replace(e,t,i){if(!(i instanceof n))return super.replace(e,t,i);[e,t]=_i(this,e,t);let r=Ks(this.text,Ks(i.text,Sd(this.text,0,e)),t),s=this.length+i.length-(t-e);return r.length<=32?new n(r,s):Ii.from(n.split(r,[]),s)}sliceString(e,t=this.length,i=`
590
+ `){[e,t]=_i(this,e,t);let r="";for(let s=0,o=0;s<=t&&o<this.text.length;o++){let l=this.text[o],a=s+l.length;s>e&&o&&(r+=i),e<a&&t>s&&(r+=l.slice(Math.max(0,e-s),t-s)),s=a+1}return r}flatten(e){for(let t of this.text)e.push(t)}scanIdentical(){return 0}static split(e,t){let i=[],r=-1;for(let s of e)i.push(s),r+=s.length+1,i.length==32&&(t.push(new n(i,r)),i=[],r=-1);return r>-1&&t.push(new n(i,r)),t}},Ii=class n extends ne{constructor(e,t){super(),this.children=e,this.length=t,this.lines=0;for(let i of e)this.lines+=i.lines}lineInner(e,t,i,r){for(let s=0;;s++){let o=this.children[s],l=r+o.length,a=i+o.lines-1;if((t?a:l)>=e)return o.lineInner(e,t,i,r);r=l+1,i=a+1}}decompose(e,t,i,r){for(let s=0,o=0;o<=t&&s<this.children.length;s++){let l=this.children[s],a=o+l.length;if(e<=a&&t>=o){let c=r&((o<=e?1:0)|(a>=t?2:0));o>=e&&a<=t&&!c?i.push(l):l.decompose(e-o,t-o,i,c)}o=a+1}}replace(e,t,i){if([e,t]=_i(this,e,t),i.lines<this.lines)for(let r=0,s=0;r<this.children.length;r++){let o=this.children[r],l=s+o.length;if(e>=s&&t<=l){let a=o.replace(e-s,t-s,i),c=this.lines-o.lines+a.lines;if(a.lines<c>>4&&a.lines>c>>6){let h=this.children.slice();return h[r]=a,new n(h,this.length-(t-e)+i.length)}return super.replace(s,l,a)}s=l+1}return super.replace(e,t,i)}sliceString(e,t=this.length,i=`
591
+ `){[e,t]=_i(this,e,t);let r="";for(let s=0,o=0;s<this.children.length&&o<=t;s++){let l=this.children[s],a=o+l.length;o>e&&s&&(r+=i),e<a&&t>o&&(r+=l.sliceString(e-o,t-o,i)),o=a+1}return r}flatten(e){for(let t of this.children)t.flatten(e)}scanIdentical(e,t){if(!(e instanceof n))return 0;let i=0,[r,s,o,l]=t>0?[0,0,this.children.length,e.children.length]:[this.children.length-1,e.children.length-1,-1,-1];for(;;r+=t,s+=t){if(r==o||s==l)return i;let a=this.children[r],c=e.children[s];if(a!=c)return i+a.scanIdentical(c,t);i+=a.length+1}}static from(e,t=e.reduce((i,r)=>i+r.length+1,-1)){let i=0;for(let f of e)i+=f.lines;if(i<32){let f=[];for(let p of e)p.flatten(f);return new mt(f,t)}let r=Math.max(32,i>>5),s=r<<1,o=r>>1,l=[],a=0,c=-1,h=[];function u(f){let p;if(f.lines>s&&f instanceof n)for(let m of f.children)u(m);else f.lines>o&&(a>o||!a)?(d(),l.push(f)):f instanceof mt&&a&&(p=h[h.length-1])instanceof mt&&f.lines+p.lines<=32?(a+=f.lines,c+=f.length+1,h[h.length-1]=new mt(p.text.concat(f.text),p.length+1+f.length)):(a+f.lines>r&&d(),a+=f.lines,c+=f.length+1,h.push(f))}function d(){a!=0&&(l.push(h.length==1?h[0]:n.from(h,c)),c=-1,a=h.length=0)}for(let f of e)u(f);return d(),l.length==1?l[0]:new n(l,t)}};ne.empty=new mt([""],0);function Vb(n){let e=-1;for(let t of n)e+=t.length+1;return e}function Ks(n,e,t=0,i=1e9){for(let r=0,s=0,o=!0;s<n.length&&r<=i;s++){let l=n[s],a=r+l.length;a>=t&&(a>i&&(l=l.slice(0,i-r)),r<t&&(l=l.slice(t-r)),o?(e[e.length-1]+=l,o=!1):e.push(l)),r=a+1}return e}function Sd(n,e,t){return Ks(n,[""],e,t)}var ni=class{constructor(e,t=1){this.dir=t,this.done=!1,this.lineBreak=!1,this.value="",this.nodes=[e],this.offsets=[t>0?1:(e instanceof mt?e.text.length:e.children.length)<<1]}nextInner(e,t){for(this.done=this.lineBreak=!1;;){let i=this.nodes.length-1,r=this.nodes[i],s=this.offsets[i],o=s>>1,l=r instanceof mt?r.text.length:r.children.length;if(o==(t>0?l:0)){if(i==0)return this.done=!0,this.value="",this;t>0&&this.offsets[i-1]++,this.nodes.pop(),this.offsets.pop()}else if((s&1)==(t>0?0:1)){if(this.offsets[i]+=t,e==0)return this.lineBreak=!0,this.value=`
592
+ `,this;e--}else if(r instanceof mt){let a=r.text[o+(t<0?-1:0)];if(this.offsets[i]+=t,a.length>Math.max(0,e))return this.value=e==0?a:t>0?a.slice(e):a.slice(0,a.length-e),this;e-=a.length}else{let a=r.children[o+(t<0?-1:0)];e>a.length?(e-=a.length,this.offsets[i]+=t):(t<0&&this.offsets[i]--,this.nodes.push(a),this.offsets.push(t>0?1:(a instanceof mt?a.text.length:a.children.length)<<1))}}}next(e=0){return e<0&&(this.nextInner(-e,-this.dir),e=this.value.length),this.nextInner(e,this.dir)}},qs=class{constructor(e,t,i){this.value="",this.done=!1,this.cursor=new ni(e,t>i?-1:1),this.pos=t>i?e.length:0,this.from=Math.min(t,i),this.to=Math.max(t,i)}nextInner(e,t){if(t<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;e+=Math.max(0,t<0?this.pos-this.to:this.from-this.pos);let i=t<0?this.pos-this.from:this.to-this.pos;e>i&&(e=i),i-=e;let{value:r}=this.cursor.next(e);return this.pos+=(r.length+e)*t,this.value=r.length<=i?r:t<0?r.slice(r.length-i):r.slice(0,i),this.done=!this.value,this}next(e=0){return e<0?e=Math.max(e,this.from-this.pos):e>0&&(e=Math.min(e,this.to-this.pos)),this.nextInner(e,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&this.value!=""}},Gs=class{constructor(e){this.inner=e,this.afterBreak=!0,this.value="",this.done=!1}next(e=0){let{done:t,lineBreak:i,value:r}=this.inner.next(e);return t&&this.afterBreak?(this.value="",this.afterBreak=!1):t?(this.done=!0,this.value=""):i?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=r,this.afterBreak=!1),this}get lineBreak(){return!1}};typeof Symbol<"u"&&(ne.prototype[Symbol.iterator]=function(){return this.iter()},ni.prototype[Symbol.iterator]=qs.prototype[Symbol.iterator]=Gs.prototype[Symbol.iterator]=function(){return this});var ia=class{constructor(e,t,i,r){this.from=e,this.to=t,this.number=i,this.text=r}get length(){return this.to-this.from}};function _i(n,e,t){return e=Math.max(0,Math.min(n.length,e)),[e,Math.max(e,Math.min(n.length,t))]}function ze(n,e,t=!0,i=!0){return wd(n,e,t,i)}function $b(n){return n>=56320&&n<57344}function Ub(n){return n>=55296&&n<56320}function Md(n,e){let t=n.charCodeAt(e);if(!Ub(t)||e+1==n.length)return t;let i=n.charCodeAt(e+1);return $b(i)?(t-55296<<10)+(i-56320)+65536:t}function Rd(n){return n<65536?1:2}var ra=/\r\n?|\n/,ct=(function(n){return n[n.Simple=0]="Simple",n[n.TrackDel=1]="TrackDel",n[n.TrackBefore=2]="TrackBefore",n[n.TrackAfter=3]="TrackAfter",n})(ct||(ct={})),dn=class n{constructor(e){this.sections=e}get length(){let e=0;for(let t=0;t<this.sections.length;t+=2)e+=this.sections[t];return e}get newLength(){let e=0;for(let t=0;t<this.sections.length;t+=2){let i=this.sections[t+1];e+=i<0?this.sections[t]:i}return e}get empty(){return this.sections.length==0||this.sections.length==2&&this.sections[1]<0}iterGaps(e){for(let t=0,i=0,r=0;t<this.sections.length;){let s=this.sections[t++],o=this.sections[t++];o<0?(e(i,r,s),r+=s):r+=o,i+=s}}iterChangedRanges(e,t=!1){sa(this,e,t)}get invertedDesc(){let e=[];for(let t=0;t<this.sections.length;){let i=this.sections[t++],r=this.sections[t++];r<0?e.push(i,r):e.push(r,i)}return new n(e)}composeDesc(e){return this.empty?e:e.empty?this:Dd(this,e)}mapDesc(e,t=!1){return e.empty?this:oa(this,e,t)}mapPos(e,t=-1,i=ct.Simple){let r=0,s=0;for(let o=0;o<this.sections.length;){let l=this.sections[o++],a=this.sections[o++],c=r+l;if(a<0){if(c>e)return s+(e-r);s+=l}else{if(i!=ct.Simple&&c>=e&&(i==ct.TrackDel&&r<e&&c>e||i==ct.TrackBefore&&r<e||i==ct.TrackAfter&&c>e))return null;if(c>e||c==e&&t<0&&!l)return e==r||t<0?s:s+a;s+=a}r=c}if(e>r)throw new RangeError(`Position ${e} is out of range for changeset of length ${r}`);return s}touchesRange(e,t=e){for(let i=0,r=0;i<this.sections.length&&r<=t;){let s=this.sections[i++],o=this.sections[i++],l=r+s;if(o>=0&&r<=t&&l>=e)return r<e&&l>t?"cover":!0;r=l}return!1}toString(){let e="";for(let t=0;t<this.sections.length;){let i=this.sections[t++],r=this.sections[t++];e+=(e?" ":"")+i+(r>=0?":"+r:"")}return e}toJSON(){return this.sections}static fromJSON(e){if(!Array.isArray(e)||e.length%2||e.some(t=>typeof t!="number"))throw new RangeError("Invalid JSON representation of ChangeDesc");return new n(e)}static create(e){return new n(e)}},tt=class n extends dn{constructor(e,t){super(e),this.inserted=t}apply(e){if(this.length!=e.length)throw new RangeError("Applying change set to a document with the wrong length");return sa(this,(t,i,r,s,o)=>e=e.replace(r,r+(i-t),o),!1),e}mapDesc(e,t=!1){return oa(this,e,t,!0)}invert(e){let t=this.sections.slice(),i=[];for(let r=0,s=0;r<t.length;r+=2){let o=t[r],l=t[r+1];if(l>=0){t[r]=l,t[r+1]=o;let a=r>>1;for(;i.length<a;)i.push(ne.empty);i.push(o?e.slice(s,s+o):ne.empty)}s+=o}return new n(t,i)}compose(e){return this.empty?e:e.empty?this:Dd(this,e,!0)}map(e,t=!1){return e.empty?this:oa(this,e,t,!0)}iterChanges(e,t=!1){sa(this,e,t)}get desc(){return dn.create(this.sections)}filter(e){let t=[],i=[],r=[],s=new ri(this);e:for(let o=0,l=0;;){let a=o==e.length?1e9:e[o++];for(;l<a||l==a&&s.len==0;){if(s.done)break e;let h=Math.min(s.len,a-l);Xe(r,h,-1);let u=s.ins==-1?-1:s.off==0?s.ins:0;Xe(t,h,u),u>0&&Ln(i,t,s.text),s.forward(h),l+=h}let c=e[o++];for(;l<c;){if(s.done)break e;let h=Math.min(s.len,c-l);Xe(t,h,-1),Xe(r,h,s.ins==-1?-1:s.off==0?s.ins:0),s.forward(h),l+=h}}return{changes:new n(t,i),filtered:dn.create(r)}}toJSON(){let e=[];for(let t=0;t<this.sections.length;t+=2){let i=this.sections[t],r=this.sections[t+1];r<0?e.push(i):r==0?e.push([i]):e.push([i].concat(this.inserted[t>>1].toJSON()))}return e}static of(e,t,i){let r=[],s=[],o=0,l=null;function a(h=!1){if(!h&&!r.length)return;o<t&&Xe(r,t-o,-1);let u=new n(r,s);l=l?l.compose(u.map(l)):u,r=[],s=[],o=0}function c(h){if(Array.isArray(h))for(let u of h)c(u);else if(h instanceof n){if(h.length!=t)throw new RangeError(`Mismatched change set length (got ${h.length}, expected ${t})`);a(),l=l?l.compose(h.map(l)):h}else{let{from:u,to:d=u,insert:f}=h;if(u>d||u<0||d>t)throw new RangeError(`Invalid change range ${u} to ${d} (in doc of length ${t})`);let p=f?typeof f=="string"?ne.of(f.split(i||ra)):f:ne.empty,m=p.length;if(u==d&&m==0)return;u<o&&a(),u>o&&Xe(r,u-o,-1),Xe(r,d-u,m),Ln(s,r,p),o=d}}return c(e),a(!l),l}static empty(e){return new n(e?[e,-1]:[],[])}static fromJSON(e){if(!Array.isArray(e))throw new RangeError("Invalid JSON representation of ChangeSet");let t=[],i=[];for(let r=0;r<e.length;r++){let s=e[r];if(typeof s=="number")t.push(s,-1);else{if(!Array.isArray(s)||typeof s[0]!="number"||s.some((o,l)=>l&&typeof o!="string"))throw new RangeError("Invalid JSON representation of ChangeSet");if(s.length==1)t.push(s[0],0);else{for(;i.length<r;)i.push(ne.empty);i[r]=ne.of(s.slice(1)),t.push(s[0],i[r].length)}}}return new n(t,i)}static createSet(e,t){return new n(e,t)}};function Xe(n,e,t,i=!1){if(e==0&&t<=0)return;let r=n.length-2;r>=0&&t<=0&&t==n[r+1]?n[r]+=e:r>=0&&e==0&&n[r]==0?n[r+1]+=t:i?(n[r]+=e,n[r+1]+=t):n.push(e,t)}function Ln(n,e,t){if(t.length==0)return;let i=e.length-2>>1;if(i<n.length)n[n.length-1]=n[n.length-1].append(t);else{for(;n.length<i;)n.push(ne.empty);n.push(t)}}function sa(n,e,t){let i=n.inserted;for(let r=0,s=0,o=0;o<n.sections.length;){let l=n.sections[o++],a=n.sections[o++];if(a<0)r+=l,s+=l;else{let c=r,h=s,u=ne.empty;for(;c+=l,h+=a,a&&i&&(u=u.append(i[o-2>>1])),!(t||o==n.sections.length||n.sections[o+1]<0);)l=n.sections[o++],a=n.sections[o++];e(r,c,s,h,u),r=c,s=h}}}function oa(n,e,t,i=!1){let r=[],s=i?[]:null,o=new ri(n),l=new ri(e);for(let a=-1;;){if(o.done&&l.len||l.done&&o.len)throw new Error("Mismatched change set lengths");if(o.ins==-1&&l.ins==-1){let c=Math.min(o.len,l.len);Xe(r,c,-1),o.forward(c),l.forward(c)}else if(l.ins>=0&&(o.ins<0||a==o.i||o.off==0&&(l.len<o.len||l.len==o.len&&!t))){let c=l.len;for(Xe(r,l.ins,-1);c;){let h=Math.min(o.len,c);o.ins>=0&&a<o.i&&o.len<=h&&(Xe(r,0,o.ins),s&&Ln(s,r,o.text),a=o.i),o.forward(h),c-=h}l.next()}else if(o.ins>=0){let c=0,h=o.len;for(;h;)if(l.ins==-1){let u=Math.min(h,l.len);c+=u,h-=u,l.forward(u)}else if(l.ins==0&&l.len<h)h-=l.len,l.next();else break;Xe(r,c,a<o.i?o.ins:0),s&&a<o.i&&Ln(s,r,o.text),a=o.i,o.forward(o.len-h)}else{if(o.done&&l.done)return s?tt.createSet(r,s):dn.create(r);throw new Error("Mismatched change set lengths")}}}function Dd(n,e,t=!1){let i=[],r=t?[]:null,s=new ri(n),o=new ri(e);for(let l=!1;;){if(s.done&&o.done)return r?tt.createSet(i,r):dn.create(i);if(s.ins==0)Xe(i,s.len,0,l),s.next();else if(o.len==0&&!o.done)Xe(i,0,o.ins,l),r&&Ln(r,i,o.text),o.next();else{if(s.done||o.done)throw new Error("Mismatched change set lengths");{let a=Math.min(s.len2,o.len),c=i.length;if(s.ins==-1){let h=o.ins==-1?-1:o.off?0:o.ins;Xe(i,a,h,l),r&&h&&Ln(r,i,o.text)}else o.ins==-1?(Xe(i,s.off?0:s.len,a,l),r&&Ln(r,i,s.textBit(a))):(Xe(i,s.off?0:s.len,o.off?0:o.ins,l),r&&!o.off&&Ln(r,i,o.text));l=(s.ins>a||o.ins>=0&&o.len>a)&&(l||i.length>c),s.forward2(a),o.forward(a)}}}}var ri=class{constructor(e){this.set=e,this.i=0,this.next()}next(){let{sections:e}=this.set;this.i<e.length?(this.len=e[this.i++],this.ins=e[this.i++]):(this.len=0,this.ins=-2),this.off=0}get done(){return this.ins==-2}get len2(){return this.ins<0?this.len:this.ins}get text(){let{inserted:e}=this.set,t=this.i-2>>1;return t>=e.length?ne.empty:e[t]}textBit(e){let{inserted:t}=this.set,i=this.i-2>>1;return i>=t.length&&!e?ne.empty:t[i].slice(this.off,e==null?void 0:this.off+e)}forward(e){e==this.len?this.next():(this.len-=e,this.off+=e)}forward2(e){this.ins==-1?this.forward(e):e==this.ins?this.next():(this.ins-=e,this.off+=e)}},Qn=class n{constructor(e,t,i,r){this.from=e,this.to=t,this.flags=i,this.goalColumn=r}get anchor(){return this.flags&32?this.to:this.from}get head(){return this.flags&32?this.from:this.to}get empty(){return this.from==this.to}get assoc(){return this.flags&8?-1:this.flags&16?1:0}get undirectional(){return(this.flags&64)>0}get bidiLevel(){let e=this.flags&7;return e==7?null:e}map(e,t=-1){let i,r;return this.empty?i=r=e.mapPos(this.from,t):(i=e.mapPos(this.from,1),r=e.mapPos(this.to,-1)),i==this.from&&r==this.to?this:new n(i,r,this.flags,this.goalColumn)}extend(e,t=e,i=0){if(e<=this.anchor&&t>=this.anchor)return D.range(e,t,void 0,void 0,i);let r=Math.abs(e-this.anchor)>Math.abs(t-this.anchor)?e:t;return D.range(this.anchor,r,void 0,void 0,i)}eq(e,t=!1){return this.anchor==e.anchor&&this.head==e.head&&this.goalColumn==e.goalColumn&&(!t||!this.empty||this.assoc==e.assoc)}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(e){if(!e||typeof e.anchor!="number"||typeof e.head!="number")throw new RangeError("Invalid JSON representation for SelectionRange");return D.range(e.anchor,e.head)}static create(e,t,i,r){return new n(e,t,i,r)}},D=class n{constructor(e,t){this.ranges=e,this.mainIndex=t}map(e,t=-1){return e.empty?this:n.create(this.ranges.map(i=>i.map(e,t)),this.mainIndex)}eq(e,t=!1){if(this.ranges.length!=e.ranges.length||this.mainIndex!=e.mainIndex)return!1;for(let i=0;i<this.ranges.length;i++)if(!this.ranges[i].eq(e.ranges[i],t))return!1;return!0}get main(){return this.ranges[this.mainIndex]}asSingle(){return this.ranges.length==1?this:new n([this.main],0)}addRange(e,t=!0){return n.create([e].concat(this.ranges),t?0:this.mainIndex+1)}replaceRange(e,t=this.mainIndex){let i=this.ranges.slice();return i[t]=e,n.create(i,this.mainIndex)}toJSON(){return{ranges:this.ranges.map(e=>e.toJSON()),main:this.mainIndex}}static fromJSON(e){if(!e||!Array.isArray(e.ranges)||typeof e.main!="number"||e.main>=e.ranges.length)throw new RangeError("Invalid JSON representation for EditorSelection");return new n(e.ranges.map(t=>Qn.fromJSON(t)),e.main)}static single(e,t=e){return new n([n.range(e,t)],0)}static create(e,t=0){if(e.length==0)throw new RangeError("A selection needs at least one range");for(let i=0,r=0;r<e.length;r++){let s=e[r];if(s.empty?s.from<=i:s.from<i)return n.normalized(e.slice(),t);i=s.to}return new n(e,t)}static cursor(e,t=0,i,r){return Qn.create(e,e,(t==0?0:t<0?8:16)|(i==null?7:Math.min(6,i)),r)}static range(e,t,i,r,s){let o=r==null?7:Math.min(6,r);return!s&&e!=t&&(s=t<e?1:-1),s&&(o|=s<0?8:16),t<e?Qn.create(t,e,o|32,i):Qn.create(e,t,o,i)}static undirectionalRange(e,t){return Qn.create(e,t,64,void 0)}static normalized(e,t=0){let i=e[t];e.sort((r,s)=>r.from-s.from),t=e.indexOf(i);for(let r=1;r<e.length;r++){let s=e[r],o=e[r-1];if(s.empty?s.from<=o.to:s.from<o.to){let l=o.from,a=Math.max(s.to,o.to);r<=t&&t--,e.splice(--r,2,s.anchor>s.head?n.range(a,l):n.range(l,a))}}return new n(e,t)}};function Ld(n,e){for(let t of n.ranges)if(t.to>e)throw new RangeError("Selection points outside of document")}var ga=0,V=class n{constructor(e,t,i,r,s){this.combine=e,this.compareInput=t,this.compare=i,this.isStatic=r,this.id=ga++,this.default=e([]),this.extensions=typeof s=="function"?s(this):s}get reader(){return this}static define(e={}){return new n(e.combine||(t=>t),e.compareInput||((t,i)=>t===i),e.compare||(e.combine?(t,i)=>t===i:ba),!!e.static,e.enables)}of(e){return new Ni([],this,0,e)}compute(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new Ni(e,this,1,t)}computeN(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new Ni(e,this,2,t)}from(e,t){return t||(t=i=>i),this.compute([e],i=>t(i.field(e)))}};function ba(n,e){return n==e||n.length==e.length&&n.every((t,i)=>t===e[i])}var Ni=class{constructor(e,t,i,r){this.dependencies=e,this.facet=t,this.type=i,this.value=r,this.id=ga++}dynamicSlot(e){var t;let i=this.value,r=this.facet.compareInput,s=this.id,o=e[s]>>1,l=this.type==2,a=!1,c=!1,h=[];for(let u of this.dependencies)u=="doc"?a=!0:u=="selection"?c=!0:(((t=e[u.id])!==null&&t!==void 0?t:1)&1)==0&&h.push(e[u.id]);return{create(u){return u.values[o]=i(u),1},update(u,d){if(a&&d.docChanged||c&&(d.docChanged||d.selection)||la(u,h)){let f=i(u);if(l?!Cd(f,u.values[o],r):!r(f,u.values[o]))return u.values[o]=f,1}return 0},reconfigure:(u,d)=>{let f,p=d.config.address[s];if(p!=null){let m=Js(d,p);if(this.dependencies.every(y=>y instanceof V?d.facet(y)===u.facet(y):y instanceof vt?d.field(y,!1)==u.field(y,!1):!0)||(l?Cd(f=i(u),m,r):r(f=i(u),m)))return u.values[o]=m,0}else f=i(u);return u.values[o]=f,1}}}get extension(){return this}};function Cd(n,e,t){if(n.length!=e.length)return!1;for(let i=0;i<n.length;i++)if(!t(n[i],e[i]))return!1;return!0}function la(n,e){let t=!1;for(let i of e)vr(n,i)&1&&(t=!0);return t}function jb(n,e,t){let i=t.map(a=>n[a.id]),r=t.map(a=>a.type),s=i.filter(a=>!(a&1)),o=n[e.id]>>1;function l(a){let c=[];for(let h=0;h<i.length;h++){let u=Js(a,i[h]);if(r[h]==2)for(let d of u)c.push(d);else c.push(u)}return e.combine(c)}return{create(a){for(let c of i)vr(a,c);return a.values[o]=l(a),1},update(a,c){if(!la(a,s))return 0;let h=l(a);return e.compare(h,a.values[o])?0:(a.values[o]=h,1)},reconfigure(a,c){let h=la(a,i),u=c.config.facets[e.id],d=c.facet(e);if(u&&!h&&ba(t,u))return a.values[o]=d,0;let f=l(a);return e.compare(f,d)?(a.values[o]=d,0):(a.values[o]=f,1)}}}var $s=V.define({static:!0}),vt=class n{constructor(e,t,i,r,s){this.id=e,this.createF=t,this.updateF=i,this.compareF=r,this.spec=s,this.provides=void 0}static define(e){let t=new n(ga++,e.create,e.update,e.compare||((i,r)=>i===r),e);return e.provide&&(t.provides=e.provide(t)),t}create(e){let t=e.facet($s).find(i=>i.field==this);return(t?.create||this.createF)(e)}slot(e){let t=e[this.id]>>1;return{create:i=>(i.values[t]=this.create(i),1),update:(i,r)=>{let s=i.values[t],o=this.updateF(s,r);return this.compareF(s,o)?0:(i.values[t]=o,1)},reconfigure:(i,r)=>{let s=i.facet($s),o=r.facet($s),l;return(l=s.find(a=>a.field==this))&&l!=o.find(a=>a.field==this)?(i.values[t]=l.create(i),1):r.config.address[this.id]!=null?(i.values[t]=r.field(this),0):(i.values[t]=this.create(i),1)}}}init(e){return[this,$s.of({field:this,create:e})]}get extension(){return this}},ei={lowest:4,low:3,default:2,high:1,highest:0};function xr(n){return e=>new Xs(e,n)}var Tr={highest:xr(ei.highest),high:xr(ei.high),default:xr(ei.default),low:xr(ei.low),lowest:xr(ei.lowest)},Xs=class{constructor(e,t){this.inner=e,this.prec=t}get extension(){return this}},fn=class n{of(e){return new kr(this,e)}reconfigure(e){return n.reconfigure.of({compartment:this,extension:e})}get(e){return e.config.compartments.get(this)}},kr=class{constructor(e,t){this.compartment=e,this.inner=t}get extension(){return this}},Ys=class n{constructor(e,t,i,r,s,o){for(this.base=e,this.compartments=t,this.dynamicSlots=i,this.address=r,this.staticValues=s,this.facets=o,this.statusTemplate=[];this.statusTemplate.length<i.length;)this.statusTemplate.push(0)}staticFacet(e){let t=this.address[e.id];return t==null?e.default:this.staticValues[t>>1]}static resolve(e,t,i){let r=[],s=Object.create(null),o=new Map;for(let d of Kb(e,t,o))d instanceof vt?r.push(d):(s[d.facet.id]||(s[d.facet.id]=[])).push(d);let l=Object.create(null),a=[],c=[];for(let d of r)l[d.id]=c.length<<1,c.push(f=>d.slot(f));let h=i?.config.facets;for(let d in s){let f=s[d],p=f[0].facet,m=h&&h[d]||[];if(f.every(y=>y.type==0))if(l[p.id]=a.length<<1|1,ba(m,f))a.push(i.facet(p));else{let y=p.combine(f.map(b=>b.value));a.push(i&&p.compare(y,i.facet(p))?i.facet(p):y)}else{for(let y of f)y.type==0?(l[y.id]=a.length<<1|1,a.push(y.value)):(l[y.id]=c.length<<1,c.push(b=>y.dynamicSlot(b)));l[p.id]=c.length<<1,c.push(y=>jb(y,p,f))}}let u=c.map(d=>d(l));return new n(e,o,u,l,a,s)}};function Kb(n,e,t){let i=[[],[],[],[],[]],r=new Map;function s(o,l){let a=r.get(o);if(a!=null){if(a<=l)return;let c=i[a].indexOf(o);c>-1&&i[a].splice(c,1),o instanceof kr&&t.delete(o.compartment)}if(r.set(o,l),Array.isArray(o))for(let c of o)s(c,l);else if(o instanceof kr){if(t.has(o.compartment))throw new RangeError("Duplicate use of compartment in extensions");let c=e.get(o.compartment)||o.inner;t.set(o.compartment,c),s(c,l)}else if(o instanceof Xs)s(o.inner,o.prec);else if(o instanceof vt)i[l].push(o),o.provides&&s(o.provides,l);else if(o instanceof Ni)i[l].push(o),o.facet.extensions&&s(o.facet.extensions,ei.default);else{let c=o.extension;if(!c)throw new Error(`Unrecognized extension value in extension set (${o}).`);if(c==o)throw new Error(`Unrecognized extension value in extension set (${o}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);s(c,l)}}return s(n,ei.default),i.reduce((o,l)=>o.concat(l))}function vr(n,e){if(e&1)return 2;let t=e>>1,i=n.status[t];if(i==4)throw new Error("Cyclic dependency between fields and/or facets");if(i&2)return i;n.status[t]=4;let r=n.computeSlot(n,n.config.dynamicSlots[t]);return n.status[t]=2|r}function Js(n,e){return e&1?n.config.staticValues[e>>1]:n.values[e>>1]}var Pd=V.define(),aa=V.define({combine:n=>n.some(e=>e),static:!0}),Od=V.define({combine:n=>n.length?n[0]:void 0,static:!0}),Id=V.define(),Nd=V.define(),Bd=V.define(),_d=V.define({combine:n=>n.length?n[0]:!1}),ht=class{constructor(e,t){this.type=e,this.value=t}static define(){return new ca}},ca=class{of(e){return new ht(this,e)}},ha=class{constructor(e){this.map=e}of(e){return new we(this,e)}},we=class n{constructor(e,t){this.type=e,this.value=t}map(e){let t=this.type.map(this.value,e);return t===void 0?void 0:t==this.value?this:new n(this.type,t)}is(e){return this.type==e}static define(e={}){return new ha(e.map||(t=>t))}static mapEffects(e,t){if(!e.length)return e;let i=[];for(let r of e){let s=r.map(t);s&&i.push(s)}return i}};we.reconfigure=we.define();we.appendConfig=we.define();var Ie=class n{constructor(e,t,i,r,s,o){this.startState=e,this.changes=t,this.selection=i,this.effects=r,this.annotations=s,this.scrollIntoView=o,this._doc=null,this._state=null,i&&Ld(i,t.newLength),s.some(l=>l.type==n.time)||(this.annotations=s.concat(n.time.of(Date.now())))}static create(e,t,i,r,s,o){return new n(e,t,i,r,s,o)}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(e){for(let t of this.annotations)if(t.type==e)return t.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(e){let t=this.annotation(n.userEvent);return!!(t&&(t==e||t.length>e.length&&t.slice(0,e.length)==e&&t[e.length]=="."))}};Ie.time=ht.define();Ie.userEvent=ht.define();Ie.addToHistory=ht.define();Ie.remote=ht.define();function qb(n,e){let t=[];for(let i=0,r=0;;){let s,o;if(i<n.length&&(r==e.length||e[r]>=n[i]))s=n[i++],o=n[i++];else if(r<e.length)s=e[r++],o=e[r++];else return t;!t.length||t[t.length-1]<s?t.push(s,o):t[t.length-1]<o&&(t[t.length-1]=o)}}function Hd(n,e,t){var i;let r,s,o;return t?(r=e.changes,s=tt.empty(e.changes.length),o=n.changes.compose(e.changes)):(r=e.changes.map(n.changes),s=n.changes.mapDesc(e.changes,!0),o=n.changes.compose(r)),{changes:o,selection:e.selection?e.selection.map(s):(i=n.selection)===null||i===void 0?void 0:i.map(r),effects:we.mapEffects(n.effects,r).concat(we.mapEffects(e.effects,s)),annotations:n.annotations.length?n.annotations.concat(e.annotations):e.annotations,scrollIntoView:n.scrollIntoView||e.scrollIntoView}}function ua(n,e,t){let i=e.selection,r=Bi(e.annotations);return e.userEvent&&(r=r.concat(Ie.userEvent.of(e.userEvent))),{changes:e.changes instanceof tt?e.changes:tt.of(e.changes||[],t,n.facet(Od)),selection:i&&(i instanceof D?i:D.single(i.anchor,i.head)),effects:Bi(e.effects),annotations:r,scrollIntoView:!!e.scrollIntoView}}function Fd(n,e,t){let i=ua(n,e.length?e[0]:{},n.doc.length);e.length&&e[0].filter===!1&&(t=!1);for(let s=1;s<e.length;s++){e[s].filter===!1&&(t=!1);let o=!!e[s].sequential;i=Hd(i,ua(n,e[s],o?i.changes.newLength:n.doc.length),o)}let r=Ie.create(n,i.changes,i.selection,i.effects,i.annotations,i.scrollIntoView);return Xb(t?Gb(r):r)}function Gb(n){let e=n.startState,t=!0;for(let r of e.facet(Id)){let s=r(n);if(s===!1){t=!1;break}Array.isArray(s)&&(t=t===!0?s:qb(t,s))}if(t!==!0){let r,s;if(t===!1)s=n.changes.invertedDesc,r=tt.empty(e.doc.length);else{let o=n.changes.filter(t);r=o.changes,s=o.filtered.mapDesc(o.changes).invertedDesc}n=Ie.create(e,r,n.selection&&n.selection.map(s),we.mapEffects(n.effects,s),n.annotations,n.scrollIntoView)}let i=e.facet(Nd);for(let r=i.length-1;r>=0;r--){let s=i[r](n);s instanceof Ie?n=s:Array.isArray(s)&&s.length==1&&s[0]instanceof Ie?n=s[0]:n=Fd(e,Bi(s),!1)}return n}function Xb(n){let e=n.startState,t=e.facet(Bd),i=n;for(let r=t.length-1;r>=0;r--){let s=t[r](n);s&&Object.keys(s).length&&(i=Hd(i,ua(e,s,n.changes.newLength),!0))}return i==n?n:Ie.create(e,n.changes,n.selection,i.effects,i.annotations,i.scrollIntoView)}var Yb=[];function Bi(n){return n==null?Yb:Array.isArray(n)?n:[n]}var Lt=(function(n){return n[n.Word=0]="Word",n[n.Space=1]="Space",n[n.Other=2]="Other",n})(Lt||(Lt={})),Jb=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/,da;try{da=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch{}function Zb(n){if(da)return da.test(n);for(let e=0;e<n.length;e++){let t=n[e];if(/\w/.test(t)||t>"\x80"&&(t.toUpperCase()!=t.toLowerCase()||Jb.test(t)))return!0}return!1}function Qb(n){return e=>{if(!/\S/.test(e))return Lt.Space;if(Zb(e))return Lt.Word;for(let t=0;t<n.length;t++)if(e.indexOf(n[t])>-1)return Lt.Word;return Lt.Other}}var ke=class n{constructor(e,t,i,r,s,o){this.config=e,this.doc=t,this.selection=i,this.values=r,this.status=e.statusTemplate.slice(),this.computeSlot=s,o&&(o._state=this);for(let l=0;l<this.config.dynamicSlots.length;l++)vr(this,l<<1);this.computeSlot=null}field(e,t=!0){let i=this.config.address[e.id];if(i==null){if(t)throw new RangeError("Field is not present in this state");return}return vr(this,i),Js(this,i)}update(...e){return Fd(this,e,!0)}applyTransaction(e){let t=this.config,{base:i,compartments:r}=t;for(let l of e.effects)l.is(fn.reconfigure)?(t&&(r=new Map,t.compartments.forEach((a,c)=>r.set(c,a)),t=null),r.set(l.value.compartment,l.value.extension)):l.is(we.reconfigure)?(t=null,i=l.value):l.is(we.appendConfig)&&(t=null,i=Bi(i).concat(l.value));let s;t?s=e.startState.values.slice():(t=Ys.resolve(i,r,this),s=new n(t,this.doc,this.selection,t.dynamicSlots.map(()=>null),(a,c)=>c.reconfigure(a,this),null).values);let o=e.startState.facet(aa)?e.newSelection:e.newSelection.asSingle();new n(t,e.newDoc,o,s,(l,a)=>a.update(l,e),e)}replaceSelection(e){return typeof e=="string"&&(e=this.toText(e)),this.changeByRange(t=>({changes:{from:t.from,to:t.to,insert:e},range:D.cursor(t.from+e.length)}))}changeByRange(e){let t=this.selection,i=e(t.ranges[0]),r=this.changes(i.changes),s=[i.range],o=Bi(i.effects);for(let l=1;l<t.ranges.length;l++){let a=e(t.ranges[l]),c=this.changes(a.changes),h=c.map(r);for(let d=0;d<l;d++)s[d]=s[d].map(h);let u=r.mapDesc(c,!0);s.push(a.range.map(u)),r=r.compose(h),o=we.mapEffects(o,h).concat(we.mapEffects(Bi(a.effects),u))}return{changes:r,selection:D.create(s,t.mainIndex),effects:o}}changes(e=[]){return e instanceof tt?e:tt.of(e,this.doc.length,this.facet(n.lineSeparator))}toText(e){return ne.of(e.split(this.facet(n.lineSeparator)||ra))}sliceDoc(e=0,t=this.doc.length){return this.doc.sliceString(e,t,this.lineBreak)}facet(e){let t=this.config.address[e.id];return t==null?e.default:(vr(this,t),Js(this,t))}toJSON(e){let t={doc:this.sliceDoc(),selection:this.selection.toJSON()};if(e)for(let i in e){let r=e[i];r instanceof vt&&this.config.address[r.id]!=null&&(t[i]=r.spec.toJSON(this.field(e[i]),this))}return t}static fromJSON(e,t={},i){if(!e||typeof e.doc!="string")throw new RangeError("Invalid JSON representation for EditorState");let r=[];if(i){for(let s in i)if(Object.prototype.hasOwnProperty.call(e,s)){let o=i[s],l=e[s];r.push(o.init(a=>o.spec.fromJSON(l,a)))}}return n.create({doc:e.doc,selection:D.fromJSON(e.selection),extensions:t.extensions?r.concat([t.extensions]):r})}static create(e={}){let t=Ys.resolve(e.extensions||[],new Map),i=e.doc instanceof ne?e.doc:ne.of((e.doc||"").split(t.staticFacet(n.lineSeparator)||ra)),r=e.selection?e.selection instanceof D?e.selection:D.single(e.selection.anchor,e.selection.head):D.single(0);return Ld(r,i.length),t.staticFacet(aa)||(r=r.asSingle()),new n(t,i,r,t.dynamicSlots.map(()=>null),(s,o)=>o.create(s),null)}get tabSize(){return this.facet(n.tabSize)}get lineBreak(){return this.facet(n.lineSeparator)||`
593
+ `}get readOnly(){return this.facet(_d)}phrase(e,...t){for(let i of this.facet(n.phrases))if(Object.prototype.hasOwnProperty.call(i,e)){e=i[e];break}return t.length&&(e=e.replace(/\$(\$|\d*)/g,(i,r)=>{if(r=="$")return"$";let s=+(r||1);return!s||s>t.length?i:t[s-1]})),e}languageDataAt(e,t,i=-1){let r=[];for(let s of this.facet(Pd))for(let o of s(this,t,i))Object.prototype.hasOwnProperty.call(o,e)&&r.push(o[e]);return r}charCategorizer(e){let t=this.languageDataAt("wordChars",e);return Qb(t.length?t[0]:"")}wordAt(e){let{text:t,from:i,length:r}=this.doc.lineAt(e),s=this.charCategorizer(e),o=e-i,l=e-i;for(;o>0;){let a=ze(t,o,!1);if(s(t.slice(a,o))!=Lt.Word)break;o=a}for(;l<r;){let a=ze(t,l);if(s(t.slice(l,a))!=Lt.Word)break;l=a}return o==l?null:D.range(o+i,l+i)}};ke.allowMultipleSelections=aa;ke.tabSize=V.define({combine:n=>n.length?n[0]:4});ke.lineSeparator=Od;ke.readOnly=_d;ke.phrases=V.define({compare(n,e){let t=Object.keys(n),i=Object.keys(e);return t.length==i.length&&t.every(r=>n[r]==e[r])}});ke.languageData=Pd;ke.changeFilter=Id;ke.transactionFilter=Nd;ke.transactionExtender=Bd;fn.reconfigure=we.define();function Hi(n,e,t={}){let i={};for(let r of n)for(let s of Object.keys(r)){let o=r[s],l=i[s];if(l===void 0)i[s]=o;else if(!(l===o||o===void 0))if(Object.hasOwnProperty.call(t,s))i[s]=t[s](l,o);else throw new Error("Config merge conflict for field "+s)}for(let r in e)i[r]===void 0&&(i[r]=e[r]);return i}var Jt=class{eq(e){return this==e}range(e,t=e){return Sr.create(e,t,this)}};Jt.prototype.startSide=Jt.prototype.endSide=0;Jt.prototype.point=!1;Jt.prototype.mapMode=ct.TrackDel;function ya(n,e){return n==e||n.constructor==e.constructor&&n.eq(e)}var Sr=class n{constructor(e,t,i){this.from=e,this.to=t,this.value=i}static create(e,t,i){return new n(e,t,i)}};function fa(n,e){return n.from-e.from||n.value.startSide-e.value.startSide}var pa=class n{constructor(e,t,i,r){this.from=e,this.to=t,this.value=i,this.maxPoint=r}get length(){return Oi(this.to)}findIndex(e,t,i,r=0){let s=i?this.to:this.from;for(let o=r,l=s.length;;){if(o==l)return o;let a=o+l>>1,c=s[a]-e||(i?this.value[a].endSide:this.value[a].startSide)-t;if(a==o)return c>=0?o:l;c>=0?l=a:o=a+1}}between(e,t,i,r){for(let s=this.findIndex(t,-1e9,!0),o=this.findIndex(i,1e9,!1,s);s<o;s++)if(r(this.from[s]+e,this.to[s]+e,this.value[s])===!1)return!1}map(e,t,i,r,s){let o=[],l=[],a=[],c=-1,h=-1;e:for(let u=0;u<this.value.length;u++){let d=this.value[u],f=this.from[u]+e,p=this.to[u]+e,m,y;if(f==p){let b=t.mapPos(f,d.startSide,d.mapMode);if(b==null||(m=y=b,d.startSide!=d.endSide&&(y=t.mapPos(f,d.endSide),y<m)))continue}else if(m=t.mapPos(f,d.startSide),y=t.mapPos(p,d.endSide),m>y||m==y&&d.startSide>0&&d.endSide<=0)continue;if(!((y-m||d.endSide-d.startSide)<0))if(c<0&&(c=m),d.point&&(h=Math.max(h,y-m)),(m-i||d.startSide-r)>=0)o.push(d),l.push(m-c),a.push(y-c),i=y,r=d.endSide;else{if(m==y)for(let b=o.length;b>0;b--){if((m-(a[b-1]+c)||d.startSide-o[b-1].endSide)>=0){o.splice(b,0,d),l.splice(b,0,m-c),a.splice(b,0,y-c);continue e}if((m-(l[b-1]+c)||d.endSide-o[b-1].startSide)>0)break}s(m,y,d)}}return{mapped:o.length?new n(l,a,o,h):null,pos:c}}},he=class n{constructor(e,t,i,r){this.chunkPos=e,this.chunk=t,this.nextLayer=i,this.maxPoint=r}static create(e,t,i,r){return new n(e,t,i,r)}get length(){let e=this.chunk.length-1;return e<0?0:Math.max(this.chunkEnd(e),this.nextLayer.length)}get size(){if(this.isEmpty)return 0;let e=this.nextLayer.size;for(let t of this.chunk)e+=t.value.length;return e}chunkEnd(e){return this.chunkPos[e]+this.chunk[e].length}update(e){let{add:t=[],sort:i=!1,filterFrom:r=0,filterTo:s=this.length}=e,o=e.filter;if(t.length==0&&!o)return this;if(i&&(t=t.slice().sort(fa)),this.isEmpty)return t.length?n.of(t):this;let l=new Zs(this,null,-1).goto(0),a=0,c=[],h=new ii;for(;l.value||a<t.length;)if(a<t.length&&(l.from-t[a].from||l.startSide-t[a].value.startSide)>=0){let u=t[a++];h.addInner(u.from,u.to,u.value,!1)||c.push(u)}else l.rangeIndex==1&&l.chunkIndex<this.chunk.length&&(a==t.length||this.chunkEnd(l.chunkIndex)<t[a].from)&&(!o||r>this.chunkEnd(l.chunkIndex)||s<this.chunkPos[l.chunkIndex])&&h.addChunk(this.chunkPos[l.chunkIndex],this.chunk[l.chunkIndex])?l.nextChunk():((!o||r>l.to||s<l.from||o(l.from,l.to,l.value))&&(h.addInner(l.from,l.to,l.value,!1)||c.push(Sr.create(l.from,l.to,l.value))),l.next());return h.finishInner(this.nextLayer.isEmpty&&!c.length?n.empty:this.nextLayer.update({add:c,filter:o,filterFrom:r,filterTo:s}))}map(e){if(e.empty||this.isEmpty)return this;let t=[],i=[],r=-1,s,o=(a,c,h)=>{s||(s=new ii),s.addRange(a,c,h,!1)};for(let a=0;a<this.chunk.length;a++){let c=this.chunkPos[a],h=this.chunk[a],u=e.touchesRange(c,c+h.length);if(u===!1)r=Math.max(r,h.maxPoint),t.push(h),i.push(e.mapPos(c));else if(u===!0){let[d,f]=t.length?[Oi(i)+Oi(t).length,Oi(Oi(t).value).endSide]:[-1,-1],{mapped:p,pos:m}=h.map(c,e,d,f,o);p&&(r=Math.max(r,p.maxPoint),t.push(p),i.push(m))}}let l=this.nextLayer.map(e);return s&&(l=s.finishInner(l)),t.length==0?l:new n(i,t,l||n.empty,r)}between(e,t,i){if(!this.isEmpty){for(let r=0;r<this.chunk.length;r++){let s=this.chunkPos[r],o=this.chunk[r];if(t>=s&&e<=s+o.length&&o.between(s,e-s,t-s,i)===!1)return}this.nextLayer.between(e,t,i)}}iter(e=0){return Cr.from([this]).goto(e)}get isEmpty(){return this.nextLayer==this}static iter(e,t=0){return Cr.from(e).goto(t)}static compare(e,t,i,r,s=-1){let o=e.filter(u=>u.maxPoint>0||!u.isEmpty&&u.maxPoint>=s),l=t.filter(u=>u.maxPoint>0||!u.isEmpty&&u.maxPoint>=s),a=Td(o,l,i),c=new ti(o,a,s),h=new ti(l,a,s);i.iterGaps((u,d,f)=>Ad(c,u,h,d,f,r)),i.empty&&i.length==0&&Ad(c,0,h,0,0,r)}static eq(e,t,i=0,r){r==null&&(r=999999999);let s=e.filter(h=>!h.isEmpty&&t.indexOf(h)<0),o=t.filter(h=>!h.isEmpty&&e.indexOf(h)<0);if(s.length!=o.length)return!1;if(!s.length)return!0;let l=Td(s,o),a=new ti(s,l,0).goto(i),c=new ti(o,l,0).goto(i);for(;;){if(a.to!=c.to||!ma(a.active,c.active)||a.point&&(!c.point||!ya(a.point,c.point)))return!1;if(a.to>r)return!0;a.next(),c.next()}}static spans(e,t,i,r,s=-1){let o=new ti(e,null,s).goto(t),l=t,a=o.openStart;for(;;){let c=Math.min(o.to,i);if(o.point){let h=o.activeForPoint(o.to),u=o.pointFrom<t?h.length+1:o.point.startSide<0?h.length:Math.min(h.length,a);r.point(l,c,o.point,h,u,o.pointRank),a=Math.min(o.openEnd(c),h.length)}else c>l&&(r.span(l,c,o.active,a),a=o.openEnd(c));if(o.to>i)return a+(o.point&&o.to>i?1:0);l=o.to,o.next()}}static of(e,t=!1){let i=new ii;for(let r of e instanceof Sr?[e]:t?ey(e):e)i.add(r.from,r.to,r.value);return i.finish()}static join(e){if(!e.length)return n.empty;let t=Oi(e);for(let i=e.length-2;i>=0;i--)for(let r=e[i];r!=n.empty;r=r.nextLayer)t=new n(r.chunkPos,r.chunk,t,Math.max(r.maxPoint,t.maxPoint));return t}};he.empty=new he([],[],null,-1);function Oi(n){return n[n.length-1]}function ey(n){if(n.length>1)for(let e=n[0],t=1;t<n.length;t++){let i=n[t];if(fa(e,i)>0)return n.slice().sort(fa);e=i}return n}he.empty.nextLayer=he.empty;var ii=class n{finishChunk(e){this.chunks.push(new pa(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,e&&(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(e,t,i){this.addRange(e,t,i,!0)}addRange(e,t,i,r){this.addInner(e,t,i,r)||(this.nextLayer||(this.nextLayer=new n)).addRange(e,t,i,r)}addInner(e,t,i,r){let s=e-this.lastTo||i.startSide-this.last.endSide;if(r&&s<=0&&(e-this.lastFrom||i.startSide-this.last.startSide)<0)throw new Error("Ranges must be added sorted by `from` position and `startSide`");return s<0?!1:(this.from.length==250&&this.finishChunk(!0),this.chunkStart<0&&(this.chunkStart=e),this.from.push(e-this.chunkStart),this.to.push(t-this.chunkStart),this.last=i,this.lastFrom=e,this.lastTo=t,this.value.push(i),i.point&&(this.maxPoint=Math.max(this.maxPoint,t-e)),!0)}addChunk(e,t){if((e-this.lastTo||t.value[0].startSide-this.last.endSide)<0)return!1;this.from.length&&this.finishChunk(!0),this.setMaxPoint=Math.max(this.setMaxPoint,t.maxPoint),this.chunks.push(t),this.chunkPos.push(e);let i=t.value.length-1;return this.last=t.value[i],this.lastFrom=t.from[i]+e,this.lastTo=t.to[i]+e,!0}finish(){return this.finishInner(he.empty)}finishInner(e){if(this.from.length&&this.finishChunk(!1),this.chunks.length==0)return e;let t=he.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(e):e,this.setMaxPoint);return this.from=null,t}};function Td(n,e,t){let i=new Map;for(let s of n)for(let o=0;o<s.chunk.length;o++)s.chunk[o].maxPoint<=0&&i.set(s.chunk[o],s.chunkPos[o]);let r=new Set;for(let s of e)for(let o=0;o<s.chunk.length;o++){let l=i.get(s.chunk[o]);l!=null&&(t?t.mapPos(l):l)==s.chunkPos[o]&&!t?.touchesRange(l,l+s.chunk[o].length)&&r.add(s.chunk[o])}return r}var Zs=class{constructor(e,t,i,r=0){this.layer=e,this.skip=t,this.minPoint=i,this.rank=r}get startSide(){return this.value?this.value.startSide:0}get endSide(){return this.value?this.value.endSide:0}goto(e,t=-1e9){return this.chunkIndex=this.rangeIndex=0,this.gotoInner(e,t,!1),this}gotoInner(e,t,i){for(;this.chunkIndex<this.layer.chunk.length;){let r=this.layer.chunk[this.chunkIndex];if(!(this.skip&&this.skip.has(r)||this.layer.chunkEnd(this.chunkIndex)<e||r.maxPoint<this.minPoint))break;this.chunkIndex++,i=!1}if(this.chunkIndex<this.layer.chunk.length){let r=this.layer.chunk[this.chunkIndex].findIndex(e-this.layer.chunkPos[this.chunkIndex],t,!0);(!i||this.rangeIndex<r)&&this.setRangeIndex(r)}this.next()}forward(e,t){(this.to-e||this.endSide-t)<0&&this.gotoInner(e,t,!0)}next(){for(;;)if(this.chunkIndex==this.layer.chunk.length){this.from=this.to=1e9,this.value=null;break}else{let e=this.layer.chunkPos[this.chunkIndex],t=this.layer.chunk[this.chunkIndex],i=e+t.from[this.rangeIndex];if(this.from=i,this.to=e+t.to[this.rangeIndex],this.value=t.value[this.rangeIndex],this.setRangeIndex(this.rangeIndex+1),this.minPoint<0||this.value.point&&this.to-this.from>=this.minPoint)break}}setRangeIndex(e){if(e==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=e}nextChunk(){this.chunkIndex++,this.rangeIndex=0,this.next()}compare(e){return this.from-e.from||this.startSide-e.startSide||this.rank-e.rank||this.to-e.to||this.endSide-e.endSide}},Cr=class n{constructor(e){this.heap=e}static from(e,t=null,i=-1){let r=[];for(let s=0;s<e.length;s++)for(let o=e[s];!o.isEmpty;o=o.nextLayer)o.maxPoint>=i&&r.push(new Zs(o,t,i,s));return r.length==1?r[0]:new n(r)}get startSide(){return this.value?this.value.startSide:0}goto(e,t=-1e9){for(let i of this.heap)i.goto(e,t);for(let i=this.heap.length>>1;i>=0;i--)na(this.heap,i);return this.next(),this}forward(e,t){for(let i of this.heap)i.forward(e,t);for(let i=this.heap.length>>1;i>=0;i--)na(this.heap,i);(this.to-e||this.value.endSide-t)<0&&this.next()}next(){if(this.heap.length==0)this.from=this.to=1e9,this.value=null,this.rank=-1;else{let e=this.heap[0];this.from=e.from,this.to=e.to,this.value=e.value,this.rank=e.rank,e.value&&e.next(),na(this.heap,0)}}};function na(n,e){for(let t=n[e];;){let i=(e<<1)+1;if(i>=n.length)break;let r=n[i];if(i+1<n.length&&r.compare(n[i+1])>=0&&(r=n[i+1],i++),t.compare(r)<0)break;n[i]=t,n[e]=r,e=i}}var ti=class{constructor(e,t,i){this.minPoint=i,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=Cr.from(e,t,i)}goto(e,t=-1e9){return this.cursor.goto(e,t),this.active.length=this.activeTo.length=this.activeRank.length=0,this.minActive=-1,this.to=e,this.endSide=t,this.openStart=-1,this.next(),this}forward(e,t){for(;this.minActive>-1&&(this.activeTo[this.minActive]-e||this.active[this.minActive].endSide-t)<0;)this.removeActive(this.minActive);this.cursor.forward(e,t)}removeActive(e){Us(this.active,e),Us(this.activeTo,e),Us(this.activeRank,e),this.minActive=Ed(this.active,this.activeTo)}addActive(e){let t=0,{value:i,to:r,rank:s}=this.cursor;for(;t<this.activeRank.length&&(s-this.activeRank[t]||r-this.activeTo[t])>0;)t++;js(this.active,t,i),js(this.activeTo,t,r),js(this.activeRank,t,s),e&&js(e,t,this.cursor.from),this.minActive=Ed(this.active,this.activeTo)}next(){let e=this.to,t=this.point;this.point=null;let i=this.openStart<0?[]:null;for(;;){let r=this.minActive;if(r>-1&&(this.activeTo[r]-this.cursor.from||this.active[r].endSide-this.cursor.startSide)<0){if(this.activeTo[r]>e){this.to=this.activeTo[r],this.endSide=this.active[r].endSide;break}this.removeActive(r),i&&Us(i,r)}else if(this.cursor.value)if(this.cursor.from>e){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}else{let s=this.cursor.value;if(!s.point)this.addActive(i),this.cursor.next();else if(t&&this.cursor.to==this.to&&this.cursor.from<this.cursor.to)this.cursor.next();else{this.point=s,this.pointFrom=this.cursor.from,this.pointRank=this.cursor.rank,this.to=this.cursor.to,this.endSide=s.endSide,this.cursor.next(),this.forward(this.to,this.endSide);break}}else{this.to=this.endSide=1e9;break}}if(i){this.openStart=0;for(let r=i.length-1;r>=0&&i[r]<e;r--)this.openStart++}}activeForPoint(e){if(!this.active.length)return this.active;let t=[];for(let i=this.active.length-1;i>=0&&!(this.activeRank[i]<this.pointRank);i--)(this.activeTo[i]>e||this.activeTo[i]==e&&this.active[i].endSide>=this.point.endSide)&&t.push(this.active[i]);return t.reverse()}openEnd(e){let t=0;for(let i=this.activeTo.length-1;i>=0&&this.activeTo[i]>e;i--)t++;return t}};function Ad(n,e,t,i,r,s){n.goto(e),t.goto(i);let o=i+r,l=i,a=i-e,c=!!s.boundChange;for(let h=!1;;){let u=n.to+a-t.to,d=u||n.endSide-t.endSide,f=d<0?n.to+a:t.to,p=Math.min(f,o);if(n.point||t.point?(n.point&&t.point&&ya(n.point,t.point)&&ma(n.activeForPoint(n.to),t.activeForPoint(t.to))||s.comparePoint(l,p,n.point,t.point),h=!1):(h&&(s.boundChange(l),h=!1),p>l&&!ma(n.active,t.active)&&s.compareRange(l,p,n.active,t.active),c&&p<o&&(u||n.openEnd(f)!=t.openEnd(f))&&(h=!0)),f>o)break;l=f,d<=0&&n.next(),d>=0&&t.next()}}function ma(n,e){if(n.length!=e.length)return!1;for(let t=0;t<n.length;t++)if(n[t]!=e[t]&&!ya(n[t],e[t]))return!1;return!0}function Us(n,e){for(let t=e,i=n.length-1;t<i;t++)n[t]=n[t+1];n.pop()}function js(n,e,t){for(let i=n.length-1;i>=e;i--)n[i+1]=n[i];n[e]=t}function Ed(n,e){let t=-1,i=1e9;for(let r=0;r<e.length;r++)(e[r]-i||n[r].endSide-n[t].endSide)<0&&(t=r,i=e[r]);return t}function si(n,e,t=n.length){let i=0;for(let r=0;r<t&&r<n.length;)n.charCodeAt(r)==9?(i+=e-i%e,r++):(i++,r=ze(n,r));return i}function zd(n,e,t,i){for(let r=0,s=0;;){if(s>=e)return r;if(r==n.length)break;s+=n.charCodeAt(r)==9?t-s%t:1,r=ze(n,r)}return i===!0?-1:n.length}var Wd=typeof Symbol>"u"?"__\u037C":Symbol.for("\u037C"),wa=typeof Symbol>"u"?"__styleSet"+Math.floor(Math.random()*1e8):Symbol("styleSet"),Vd=typeof globalThis<"u"?globalThis:typeof window<"u"?window:{},kt=class{constructor(e,t){this.rules=[];let{finish:i}=t||{};function r(o){return/^@/.test(o)?[o]:o.split(/,\s*/)}function s(o,l,a,c){let h=[],u=/^@(\w+)\b/.exec(o[0]),d=u&&u[1]=="keyframes";if(u&&l==null)return a.push(o[0]+";");for(let f in l){let p=l[f];if(/&/.test(f))s(f.split(/,\s*/).map(m=>o.map(y=>m.replace(/&/,y))).reduce((m,y)=>m.concat(y)),p,a);else if(p&&typeof p=="object"){if(!u)throw new RangeError("The value of a property ("+f+") should be a primitive value.");s(r(f),p,h,d)}else p!=null&&h.push(f.replace(/_.*/,"").replace(/[A-Z]/g,m=>"-"+m.toLowerCase())+": "+p+";")}(h.length||d)&&a.push((i&&!u&&!c?o.map(i):o).join(", ")+" {"+h.join(" ")+"}")}for(let o in e)s(r(o),e[o],this.rules)}getRules(){return this.rules.join(`
594
+ `)}static newName(){let e=Vd[Wd]||1;return Vd[Wd]=e+1,"\u037C"+e.toString(36)}static mount(e,t,i){let r=e[wa],s=i&&i.nonce;r?s&&r.setNonce(s):r=new xa(e,s),r.mount(Array.isArray(t)?t:[t],e)}},$d=new Map,xa=class{constructor(e,t){let i=e.ownerDocument||e,r=i.defaultView;if(!e.head&&e.adoptedStyleSheets&&r.CSSStyleSheet){let s=$d.get(i);if(s)return e[wa]=s;this.sheet=new r.CSSStyleSheet,$d.set(i,this)}else this.styleTag=i.createElement("style"),t&&this.styleTag.setAttribute("nonce",t);this.modules=[],e[wa]=this}mount(e,t){let i=this.sheet,r=0,s=0;for(let o=0;o<e.length;o++){let l=e[o],a=this.modules.indexOf(l);if(a<s&&a>-1&&(this.modules.splice(a,1),s--,a=-1),a==-1){if(this.modules.splice(s++,0,l),i)for(let c=0;c<l.rules.length;c++)i.insertRule(l.rules[c],r++)}else{for(;s<a;)r+=this.modules[s++].rules.length;r+=l.rules.length,s++}}if(i)t.adoptedStyleSheets.indexOf(this.sheet)<0&&(t.adoptedStyleSheets=[this.sheet,...t.adoptedStyleSheets]);else{let o="";for(let a=0;a<this.modules.length;a++)o+=this.modules[a].getRules()+`
595
+ `;this.styleTag.textContent=o;let l=t.head||t;this.styleTag.parentNode!=l&&l.insertBefore(this.styleTag,l.firstChild)}}setNonce(e){this.styleTag&&this.styleTag.getAttribute("nonce")!=e&&this.styleTag.setAttribute("nonce",e)}};var pn={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:"'"},Fi={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},ty=typeof navigator<"u"&&/Mac/.test(navigator.platform),ny=typeof navigator<"u"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(Ne=0;Ne<10;Ne++)pn[48+Ne]=pn[96+Ne]=String(Ne);var Ne;for(Ne=1;Ne<=24;Ne++)pn[Ne+111]="F"+Ne;var Ne;for(Ne=65;Ne<=90;Ne++)pn[Ne]=String.fromCharCode(Ne+32),Fi[Ne]=String.fromCharCode(Ne);var Ne;for(Qs in pn)Fi.hasOwnProperty(Qs)||(Fi[Qs]=pn[Qs]);var Qs;function Ud(n){var e=ty&&n.metaKey&&n.shiftKey&&!n.ctrlKey&&!n.altKey||ny&&n.shiftKey&&n.key&&n.key.length==1||n.key=="Unidentified",t=!e&&n.key||(n.shiftKey?Fi:pn)[n.keyCode]||n.key||"Unidentified";return t=="Esc"&&(t="Escape"),t=="Del"&&(t="Delete"),t=="Left"&&(t="ArrowLeft"),t=="Up"&&(t="ArrowUp"),t=="Right"&&(t="ArrowRight"),t=="Down"&&(t="ArrowDown"),t}var nt=typeof navigator<"u"?navigator:{userAgent:"",vendor:"",platform:""},Ea=typeof document<"u"?document:{documentElement:{style:{}}},Ma=/Edge\/(\d+)/.exec(nt.userAgent),Sf=/MSIE \d/.test(nt.userAgent),Ra=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(nt.userAgent),Ao=!!(Sf||Ra||Ma),jd=!Ao&&/gecko\/(\d+)/i.test(nt.userAgent),va=!Ao&&/Chrome\/(\d+)/.exec(nt.userAgent),Kd="webkitFontSmoothing"in Ea.documentElement.style,Da=!Ao&&/Apple Computer/.test(nt.vendor),qd=Da&&(/Mobile\/\w+/.test(nt.userAgent)||nt.maxTouchPoints>2),N={mac:qd||/Mac/.test(nt.platform),windows:/Win/.test(nt.platform),linux:/Linux|X11/.test(nt.platform),ie:Ao,ie_version:Sf?Ea.documentMode||6:Ra?+Ra[1]:Ma?+Ma[1]:0,gecko:jd,gecko_version:jd?+(/Firefox\/(\d+)/.exec(nt.userAgent)||[0,0])[1]:0,chrome:!!va,chrome_version:va?+va[1]:0,ios:qd,android:/Android\b/.test(nt.userAgent),webkit:Kd,webkit_version:Kd?+(/\bAppleWebKit\/(\d+)/.exec(nt.userAgent)||[0,0])[1]:0,safari:Da,safari_version:Da?+(/\bVersion\/(\d+(\.\d+)?)/.exec(nt.userAgent)||[0,0])[1]:0,tabSize:Ea.documentElement.style.tabSize!=null?"tab-size":"-moz-tab-size"};function bc(n,e){for(let t in n)t=="class"&&e.class?e.class+=" "+n.class:t=="style"&&e.style?e.style+=";"+n.style:e[t]=n[t];return e}var uo=Object.create(null);function yc(n,e,t){if(n==e)return!0;n||(n=uo),e||(e=uo);let i=Object.keys(n),r=Object.keys(e);if(i.length-(t&&i.indexOf(t)>-1?1:0)!=r.length-(t&&r.indexOf(t)>-1?1:0))return!1;for(let s of i)if(s!=t&&(r.indexOf(s)==-1||n[s]!==e[s]))return!1;return!0}function iy(n,e){for(let t=n.attributes.length-1;t>=0;t--){let i=n.attributes[t].name;e[i]==null&&n.removeAttribute(i)}for(let t in e){let i=e[t];t=="style"?n.style.cssText=i:n.getAttribute(t)!=i&&n.setAttribute(t,i)}}function Gd(n,e,t){let i=!1;if(e)for(let r in e)t&&r in t||(i=!0,r=="style"?n.style.cssText="":n.removeAttribute(r));if(t)for(let r in t)e&&e[r]==t[r]||(i=!0,r=="style"?n.style.cssText=t[r]:n.setAttribute(r,t[r]));return i}function ry(n){let e=Object.create(null);for(let t=0;t<n.attributes.length;t++){let i=n.attributes[t];e[i.name]=i.value}return e}var In=class{eq(e){return!1}updateDOM(e,t,i){return!1}compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}get estimatedHeight(){return-1}get lineBreaks(){return 0}ignoreEvent(e){return!0}coordsAt(e,t,i){return null}get isHidden(){return!1}get editable(){return!1}destroy(e){}},Ue=(function(n){return n[n.Text=0]="Text",n[n.WidgetBefore=1]="WidgetBefore",n[n.WidgetAfter=2]="WidgetAfter",n[n.WidgetRange=3]="WidgetRange",n})(Ue||(Ue={})),me=class extends Jt{constructor(e,t,i,r){super(),this.startSide=e,this.endSide=t,this.widget=i,this.spec=r}get heightRelevant(){return!1}static mark(e){return new Hr(e)}static widget(e){let t=Math.max(-1e4,Math.min(1e4,e.side||0)),i=!!e.block;return t+=i&&!e.inlineOrder?t>0?3e8:-4e8:t>0?1e8:-1e8,new ci(e,t,t,i,e.widget||null,!1)}static replace(e){let t=!!e.block,i,r;if(e.isBlockGap)i=-5e8,r=4e8;else{let{start:s,end:o}=Cf(e,t);i=(s?t?-3e8:-1:5e8)-1,r=(o?t?2e8:1:-6e8)+1}return new ci(e,i,r,t,e.widget||null,!0)}static line(e){return new Fr(e)}static set(e,t=!1){return he.of(e,t)}hasHeight(){return this.widget?this.widget.estimatedHeight>-1:!1}};me.none=he.empty;var Hr=class n extends me{constructor(e){let{start:t,end:i}=Cf(e);super(t?-1:5e8,i?1:-6e8,null,e),this.tagName=e.tagName||"span",this.attrs=e.class&&e.attributes?bc(e.attributes,{class:e.class}):e.class?{class:e.class}:e.attributes||uo}eq(e){return this==e||e instanceof n&&this.tagName==e.tagName&&yc(this.attrs,e.attrs)}range(e,t=e){if(e>=t)throw new RangeError("Mark decorations may not be empty");return super.range(e,t)}};Hr.prototype.point=!1;var Fr=class n extends me{constructor(e){super(-2e8,-2e8,null,e)}eq(e){return e instanceof n&&this.spec.class==e.spec.class&&yc(this.spec.attributes,e.spec.attributes)}range(e,t=e){if(t!=e)throw new RangeError("Line decoration ranges must be zero-length");return super.range(e,t)}};Fr.prototype.mapMode=ct.TrackBefore;Fr.prototype.point=!0;var ci=class n extends me{constructor(e,t,i,r,s,o){super(t,i,s,e),this.block=r,this.isReplace=o,this.mapMode=r?t<=0?ct.TrackBefore:ct.TrackAfter:ct.TrackDel}get type(){return this.startSide!=this.endSide?Ue.WidgetRange:this.startSide<=0?Ue.WidgetBefore:Ue.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&(this.widget.estimatedHeight>=5||this.widget.lineBreaks>0)}eq(e){return e instanceof n&&sy(this.widget,e.widget)&&this.block==e.block&&this.startSide==e.startSide&&this.endSide==e.endSide}range(e,t=e){if(this.isReplace&&(e>t||e==t&&this.startSide>0&&this.endSide<=0))throw new RangeError("Invalid range for replacement decoration");if(!this.isReplace&&t!=e)throw new RangeError("Widget decorations can only have zero-length ranges");return super.range(e,t)}};ci.prototype.point=!0;function Cf(n,e=!1){let{inclusiveStart:t,inclusiveEnd:i}=n;return t==null&&(t=n.inclusive),i==null&&(i=n.inclusive),{start:t??e,end:i??e}}function sy(n,e){return n==e||!!(n&&e&&n.compare(e))}function Ui(n,e,t,i=0){let r=t.length-1;r>=0&&t[r]+i>=n?t[r]=Math.max(t[r],e):t.push(n,e)}var fo=class n extends Jt{constructor(e,t,i){super(),this.tagName=e,this.attributes=t,this.rank=i}eq(e){return e==this||e instanceof n&&this.tagName==e.tagName&&yc(this.attributes,e.attributes)}static create(e){return new n(e.tagName,e.attributes||uo,e.rank==null?50:Math.max(0,Math.min(e.rank,100)))}static set(e,t=!1){return he.of(e,t)}};fo.prototype.startSide=fo.prototype.endSide=-1;function zr(n){let e;return n.nodeType==11?e=n.getSelection?n:n.ownerDocument:e=n,e.getSelection()}function La(n,e){return e?n==e||n.contains(e.nodeType!=1?e.parentNode:e):!1}function Rr(n,e){if(!e.anchorNode)return!1;try{return La(n,e.anchorNode)}catch{return!1}}function Dr(n){return n.nodeType==3?Vr(n,0,n.nodeValue.length).getClientRects():n.nodeType==1?n.getClientRects():[]}function Lr(n,e,t,i){return t?Xd(n,e,t,i,-1)||Xd(n,e,t,i,1):!1}function Nn(n){for(var e=0;;e++)if(n=n.previousSibling,!n)return e}function po(n){return n.nodeType==1&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(n.nodeName)}function Xd(n,e,t,i,r){for(;;){if(n==t&&e==i)return!0;if(e==(r<0?0:bn(n))){if(n.nodeName=="DIV")return!1;let s=n.parentNode;if(!s||s.nodeType!=1)return!1;e=Nn(n)+(r<0?0:1),n=s}else if(n.nodeType==1){if(n=n.childNodes[e+(r<0?-1:0)],n.nodeType==1&&n.contentEditable=="false")return!1;e=r<0?bn(n):0}else return!1}}function bn(n){return n.nodeType==3?n.nodeValue.length:n.childNodes.length}function Wr(n,e){let{left:t,right:i}=n;if(t==i)return n;let r=e?t:i;return{left:r,right:r,top:n.top,bottom:n.bottom}}function oy(n){let e=n.visualViewport;return e?{left:0,right:e.width,top:0,bottom:e.height}:{left:0,right:n.innerWidth,top:0,bottom:n.innerHeight}}function Tf(n,e){let t=e.width/n.offsetWidth,i=e.height/n.offsetHeight;return(t>.995&&t<1.005||!isFinite(t)||Math.abs(e.width-n.offsetWidth)<1)&&(t=1),(i>.995&&i<1.005||!isFinite(i)||Math.abs(e.height-n.offsetHeight)<1)&&(i=1),{scaleX:t,scaleY:i}}function ly(n,e,t,i,r,s,o,l){let a=n.ownerDocument,c=a.defaultView||window;for(let h=n,u=!1;h&&!u;)if(h.nodeType==1){let d,f=h==a.body,p=1,m=1;if(f)d=oy(c);else{if(/^(fixed|sticky)$/.test(getComputedStyle(h).position)&&(u=!0),h.scrollHeight<=h.clientHeight&&h.scrollWidth<=h.clientWidth){h=h.assignedSlot||h.parentNode;continue}let x=h.getBoundingClientRect();({scaleX:p,scaleY:m}=Tf(h,x)),d={left:x.left,right:x.left+h.clientWidth*p,top:x.top,bottom:x.top+h.clientHeight*m}}let y=0,b=0;if(r=="nearest")e.top<d.top+o?(b=e.top-(d.top+o),t>0&&e.bottom>d.bottom+b&&(b=e.bottom-d.bottom+o)):e.bottom>d.bottom-o&&(b=e.bottom-d.bottom+o,t<0&&e.top-b<d.top&&(b=e.top-(d.top+o)));else{let x=e.bottom-e.top,k=d.bottom-d.top;b=(r=="center"&&x<=k?e.top+x/2-k/2:r=="start"||r=="center"&&t<0?e.top-o:e.bottom-k+o)-d.top}if(i=="nearest"?e.left<d.left+s?(y=e.left-(d.left+s),t>0&&e.right>d.right+y&&(y=e.right-d.right+s)):e.right>d.right-s&&(y=e.right-d.right+s,t<0&&e.left<d.left+y&&(y=e.left-(d.left+s))):y=(i=="center"?e.left+(e.right-e.left)/2-(d.right-d.left)/2:i=="start"==l?e.left-s:e.right-(d.right-d.left)+s)-d.left,y||b)if(f)c.scrollBy(y,b);else{let x=0,k=0;if(b){let _=h.scrollTop;h.scrollTop+=b/m,k=(h.scrollTop-_)*m}if(y){let _=h.scrollLeft;h.scrollLeft+=y/p,x=(h.scrollLeft-_)*p}e={left:e.left-x,top:e.top-k,right:e.right-x,bottom:e.bottom-k},x&&Math.abs(x-y)<1&&(i="nearest"),k&&Math.abs(k-b)<1&&(r="nearest")}if(f)break;(e.top<d.top||e.bottom>d.bottom||e.left<d.left||e.right>d.right)&&(e={left:Math.max(e.left,d.left),right:Math.min(e.right,d.right),top:Math.max(e.top,d.top),bottom:Math.min(e.bottom,d.bottom)}),h=h.assignedSlot||h.parentNode}else if(h.nodeType==11)h=h.host;else break}function Af(n,e=!0){let t=n.ownerDocument,i=null,r=null;for(let s=n.parentNode;s&&!(s==t.body||(!e||i)&&r);)if(s.nodeType==1)!r&&s.scrollHeight>s.clientHeight&&(r=s),e&&!i&&s.scrollWidth>s.clientWidth&&(i=s),s=s.assignedSlot||s.parentNode;else if(s.nodeType==11)s=s.host;else break;return{x:i,y:r}}var Pa=class{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}eq(e){return this.anchorNode==e.anchorNode&&this.anchorOffset==e.anchorOffset&&this.focusNode==e.focusNode&&this.focusOffset==e.focusOffset}setRange(e){let{anchorNode:t,focusNode:i}=e;this.set(t,Math.min(e.anchorOffset,t?bn(t):0),i,Math.min(e.focusOffset,i?bn(i):0))}set(e,t,i,r){this.anchorNode=e,this.anchorOffset=t,this.focusNode=i,this.focusOffset=r}};function Ef(n){let e=[];for(let t=n;t;t=t.nodeType==11?t.host:t.parentNode)t.nodeType==1&&e.push({node:t,left:t.scrollLeft,top:t.scrollTop});return e}function Mf(n,e=!0){for(let{node:t,left:i,top:r}of n)e&&t.scrollTop!=r&&(t.scrollTop=r),t.scrollLeft!=i&&(t.scrollLeft=i)}var oi=null;N.safari&&N.safari_version>=26&&(oi=!1);function Rf(n){if(n.setActive)return n.setActive();if(oi)return n.focus(oi);let e=Ef(n);n.focus(oi==null?{get preventScroll(){return oi={preventScroll:!0},!0}}:void 0),oi||(oi=!1,Mf(e))}var Yd;function Vr(n,e,t=e){let i=Yd||(Yd=document.createRange());return i.setEnd(n,t),i.setStart(n,e),i}function ji(n,e,t,i){let r={key:e,code:e,keyCode:t,which:t,cancelable:!0};i&&({altKey:r.altKey,ctrlKey:r.ctrlKey,shiftKey:r.shiftKey,metaKey:r.metaKey}=i);let s=new KeyboardEvent("keydown",r);s.synthetic=!0,n.dispatchEvent(s);let o=new KeyboardEvent("keyup",r);return o.synthetic=!0,n.dispatchEvent(o),s.defaultPrevented||o.defaultPrevented}function ay(n){for(;n;){if(n&&(n.nodeType==9||n.nodeType==11&&n.host))return n;n=n.assignedSlot||n.parentNode}return null}function cy(n,e){let t=e.focusNode,i=e.focusOffset;if(!t||e.anchorNode!=t||e.anchorOffset!=i)return!1;for(i=Math.min(i,bn(t));;)if(i){if(t.nodeType!=1)return!1;let r=t.childNodes[i-1];r.contentEditable=="false"?i--:(t=r,i=bn(t))}else{if(t==n)return!0;i=Nn(t),t=t.parentNode}}function Df(n){return n instanceof Window?n.pageYOffset>Math.max(0,n.document.documentElement.scrollHeight-n.innerHeight-4):n.scrollTop>Math.max(1,n.scrollHeight-n.clientHeight-4)}function Lf(n,e){for(let t=n,i=e;;){if(t.nodeType==3&&i>0)return{node:t,offset:i};if(t.nodeType==1&&i>0){if(t.contentEditable=="false")return null;t=t.childNodes[i-1],i=bn(t)}else if(t.parentNode&&!po(t))i=Nn(t),t=t.parentNode;else return null}}function Pf(n,e){for(let t=n,i=e;;){if(t.nodeType==3&&i<t.nodeValue.length)return{node:t,offset:i};if(t.nodeType==1&&i<t.childNodes.length){if(t.contentEditable=="false")return null;t=t.childNodes[i],i=0}else if(t.parentNode&&!po(t))i=Nn(t)+1,t=t.parentNode;else return null}}var Qt=class n{constructor(e,t,i=!0){this.node=e,this.offset=t,this.precise=i}static before(e,t){return new n(e.parentNode,Nn(e),t)}static after(e,t){return new n(e.parentNode,Nn(e)+1,t)}},ge=(function(n){return n[n.LTR=0]="LTR",n[n.RTL=1]="RTL",n})(ge||(ge={})),hi=ge.LTR,wc=ge.RTL;function Of(n){let e=[];for(let t=0;t<n.length;t++)e.push(1<<+n[t]);return e}var hy=Of("88888888888888888888888888888888888666888888787833333333337888888000000000000000000000000008888880000000000000000000000000088888888888888888888888888888888888887866668888088888663380888308888800000000000000000000000800000000000000000000000000000008"),uy=Of("4444448826627288999999999992222222222222222222222222222222222222222222222229999999999999999999994444444444644222822222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222999999949999999229989999223333333333"),Oa=Object.create(null),Zt=[];for(let n of["()","[]","{}"]){let e=n.charCodeAt(0),t=n.charCodeAt(1);Oa[e]=t,Oa[t]=-e}function If(n){return n<=247?hy[n]:1424<=n&&n<=1524?2:1536<=n&&n<=1785?uy[n-1536]:1774<=n&&n<=2220?4:8192<=n&&n<=8204?256:64336<=n&&n<=65023?4:1}var dy=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\ufb50-\ufdff]/,Tt=class{get dir(){return this.level%2?wc:hi}constructor(e,t,i){this.from=e,this.to=t,this.level=i}side(e,t){return this.dir==t==e?this.to:this.from}forward(e,t){return e==(this.dir==t)}static find(e,t,i,r){let s=-1;for(let o=0;o<e.length;o++){let l=e[o];if(l.from<=t&&l.to>=t){if(l.level==i)return o;(s<0||(r!=0?r<0?l.from<t:l.to>t:e[s].level>l.level))&&(s=o)}}if(s<0)throw new RangeError("Index out of range");return s}};function Nf(n,e){if(n.length!=e.length)return!1;for(let t=0;t<n.length;t++){let i=n[t],r=e[t];if(i.from!=r.from||i.to!=r.to||i.direction!=r.direction||!Nf(i.inner,r.inner))return!1}return!0}var de=[];function fy(n,e,t,i,r){for(let s=0;s<=i.length;s++){let o=s?i[s-1].to:e,l=s<i.length?i[s].from:t,a=s?256:r;for(let c=o,h=a,u=a;c<l;c++){let d=If(n.charCodeAt(c));d==512?d=h:d==8&&u==4&&(d=16),de[c]=d==4?2:d,d&7&&(u=d),h=d}for(let c=o,h=a,u=a;c<l;c++){let d=de[c];if(d==128)c<l-1&&h==de[c+1]&&h&24?d=de[c]=h:de[c]=256;else if(d==64){let f=c+1;for(;f<l&&de[f]==64;)f++;let p=c&&h==8||f<t&&de[f]==8?u==1?1:8:256;for(let m=c;m<f;m++)de[m]=p;c=f-1}else d==8&&u==1&&(de[c]=1);h=d,d&7&&(u=d)}}}function py(n,e,t,i,r){let s=r==1?2:1;for(let o=0,l=0,a=0;o<=i.length;o++){let c=o?i[o-1].to:e,h=o<i.length?i[o].from:t;for(let u=c,d,f,p;u<h;u++)if(f=Oa[d=n.charCodeAt(u)])if(f<0){for(let m=l-3;m>=0;m-=3)if(Zt[m+1]==-f){let y=Zt[m+2],b=y&2?r:y&4?y&1?s:r:0;b&&(de[u]=de[Zt[m]]=b),l=m;break}}else{if(Zt.length==189)break;Zt[l++]=u,Zt[l++]=d,Zt[l++]=a}else if((p=de[u])==2||p==1){let m=p==r;a=m?0:1;for(let y=l-3;y>=0;y-=3){let b=Zt[y+2];if(b&2)break;if(m)Zt[y+2]|=2;else{if(b&4)break;Zt[y+2]|=4}}}}}function my(n,e,t,i){for(let r=0,s=i;r<=t.length;r++){let o=r?t[r-1].to:n,l=r<t.length?t[r].from:e;for(let a=o;a<l;){let c=de[a];if(c==256){let h=a+1;for(;;)if(h==l){if(r==t.length)break;h=t[r++].to,l=r<t.length?t[r].from:e}else if(de[h]==256)h++;else break;let u=s==1,d=(h<e?de[h]:i)==1,f=u==d?u?1:2:i;for(let p=h,m=r,y=m?t[m-1].to:n;p>a;)p==y&&(p=t[--m].from,y=m?t[m-1].to:n),de[--p]=f;a=h}else s=c,a++}}}function Ia(n,e,t,i,r,s,o){let l=i%2?2:1;if(i%2==r%2)for(let a=e,c=0;a<t;){let h=!0,u=!1;if(c==s.length||a<s[c].from){let m=de[a];m!=l&&(h=!1,u=m==16)}let d=!h&&l==1?[]:null,f=h?i:i+1,p=a;e:for(;;)if(c<s.length&&p==s[c].from){if(u)break e;let m=s[c];if(!h)for(let y=m.to,b=c+1;;){if(y==t)break e;if(b<s.length&&s[b].from==y)y=s[b++].to;else{if(de[y]==l)break e;break}}if(c++,d)d.push(m);else{m.from>a&&o.push(new Tt(a,m.from,f));let y=m.direction==hi!=!(f%2);Na(n,y?i+1:i,r,m.inner,m.from,m.to,o),a=m.to}p=m.to}else{if(p==t||(h?de[p]!=l:de[p]==l))break;p++}d?Ia(n,a,p,i+1,r,d,o):a<p&&o.push(new Tt(a,p,f)),a=p}else for(let a=t,c=s.length;a>e;){let h=!0,u=!1;if(!c||a>s[c-1].to){let m=de[a-1];m!=l&&(h=!1,u=m==16)}let d=!h&&l==1?[]:null,f=h?i:i+1,p=a;e:for(;;)if(c&&p==s[c-1].to){if(u)break e;let m=s[--c];if(!h)for(let y=m.from,b=c;;){if(y==e)break e;if(b&&s[b-1].to==y)y=s[--b].from;else{if(de[y-1]==l)break e;break}}if(d)d.push(m);else{m.to<a&&o.push(new Tt(m.to,a,f));let y=m.direction==hi!=!(f%2);Na(n,y?i+1:i,r,m.inner,m.from,m.to,o),a=m.from}p=m.from}else{if(p==e||(h?de[p-1]!=l:de[p-1]==l))break;p--}d?Ia(n,p,a,i+1,r,d,o):p<a&&o.push(new Tt(p,a,f)),a=p}}function Na(n,e,t,i,r,s,o){let l=e%2?2:1;fy(n,r,s,i,l),py(n,r,s,i,l),my(r,s,i,l),Ia(n,r,s,e,t,i,o)}function gy(n,e,t){if(!n)return[new Tt(0,0,e==wc?1:0)];if(e==hi&&!t.length&&!dy.test(n))return Bf(n.length);if(t.length)for(;n.length>de.length;)de[de.length]=256;let i=[],r=e==hi?0:1;return Na(n,r,r,t,0,n.length,i),i}function Bf(n){return[new Tt(0,n,0)]}var _f="";function by(n,e,t,i,r){var s;let o=i.head-n.from,l=Tt.find(e,o,(s=i.bidiLevel)!==null&&s!==void 0?s:-1,i.assoc),a=e[l],c=a.side(r,t);if(o==c){let d=l+=r?1:-1;if(d<0||d>=e.length)return null;a=e[l=d],o=a.side(!r,t),c=a.side(r,t)}let h=ze(n.text,o,a.forward(r,t));(h<a.from||h>a.to)&&(h=c),_f=n.text.slice(Math.min(o,h),Math.max(o,h));let u=l==(r?e.length-1:0)?null:e[l+(r?1:-1)];return u&&h==c&&u.level+(r?0:1)<a.level?D.cursor(u.side(!r,t)+n.from,u.forward(r,t)?1:-1,u.level):D.cursor(h+n.from,a.forward(r,t)?-1:1,a.level)}function yy(n,e,t){for(let i=e;i<t;i++){let r=If(n.charCodeAt(i));if(r==1)return hi;if(r==2||r==4)return wc}return hi}var Hf=V.define(),Ff=V.define(),zf=V.define(),Wf=V.define(),Ba=V.define(),Vf=V.define(),$f=V.define(),xc=V.define(),vc=V.define(),Uf=V.define({combine:n=>n.some(e=>e)}),jf=V.define({combine:n=>n.some(e=>e)}),Kf=V.define(),Pr=class n{constructor(e,t,i,r,s,o=!1){this.range=e,this.y=t,this.x=i,this.yMargin=r,this.xMargin=s,this.isSnapshot=o}map(e){return e.empty?this:new n(this.range.map(e),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}clip(e){return this.range.to<=e.doc.length?this:new n(D.cursor(e.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}},eo=we.define({map:(n,e)=>n.map(e)}),qf=we.define();function Ot(n,e,t){let i=n.facet(Wf);i.length?i[0](e):window.onerror&&window.onerror(String(e),t,void 0,void 0,e)||(t?console.error(t+":",e):console.error(e))}var mn=V.define({combine:n=>n.length?n[0]:!0}),wy=0,Wi=V.define({combine(n){return n.filter((e,t)=>{for(let i=0;i<t;i++)if(n[i].plugin==e.plugin)return!1;return!0})}}),Nt=class n{constructor(e,t,i,r,s){this.id=e,this.create=t,this.domEventHandlers=i,this.domEventObservers=r,this.baseExtensions=s(this),this.extension=this.baseExtensions.concat(Wi.of({plugin:this,arg:void 0}))}of(e){return this.baseExtensions.concat(Wi.of({plugin:this,arg:e}))}static define(e,t){let{eventHandlers:i,eventObservers:r,provide:s,decorations:o}=t||{};return new n(wy++,e,i,r,l=>{let a=[];return o&&a.push(Eo.of(c=>{let h=c.plugin(l);return h?o(h):me.none})),s&&a.push(s(l)),a})}static fromClass(e,t){return n.define((i,r)=>new e(i,r),t)}},Or=class{constructor(e){this.spec=e,this.mustUpdate=null,this.value=null}get plugin(){return this.spec&&this.spec.plugin}update(e){if(this.value){if(this.mustUpdate){let t=this.mustUpdate;if(this.mustUpdate=null,this.value.update)try{this.value.update(t)}catch(i){if(Ot(t.state,i,"CodeMirror plugin crashed"),this.value.destroy)try{this.value.destroy()}catch{}this.deactivate()}}}else if(this.spec)try{this.value=this.spec.plugin.create(e,this.spec.arg)}catch(t){Ot(e.state,t,"CodeMirror plugin crashed"),this.deactivate()}return this}destroy(e){var t;if(!((t=this.value)===null||t===void 0)&&t.destroy)try{this.value.destroy()}catch(i){Ot(e.state,i,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}},Gf=V.define(),kc=V.define(),Eo=V.define(),Xf=V.define(),Sc=V.define(),$r=V.define(),Yf=V.define();function Jd(n,e){let t=n.state.facet(Yf);if(!t.length)return t;let i=t.map(s=>s instanceof Function?s(n):s),r=[];return he.spans(i,e.from,e.to,{point(){},span(s,o,l,a){let c=s-e.from,h=o-e.from,u=r;for(let d=l.length-1;d>=0;d--,a--){let f=l[d].spec.bidiIsolate,p;if(f==null&&(f=yy(e.text,c,h)),a>0&&u.length&&(p=u[u.length-1]).to==c&&p.direction==f)p.to=h,u=p.inner;else{let m={from:c,to:h,direction:f,inner:[]};u.push(m),u=m.inner}}}}),r}var Jf=V.define();function Zf(n){let e=0,t=0,i=0,r=0;for(let s of n.state.facet(Jf)){let o=s(n);o&&(o.left!=null&&(e=Math.max(e,o.left)),o.right!=null&&(t=Math.max(t,o.right)),o.top!=null&&(i=Math.max(i,o.top)),o.bottom!=null&&(r=Math.max(r,o.bottom)))}return{left:e,right:t,top:i,bottom:r}}var Ar=V.define(),It=class n{constructor(e,t,i,r){this.fromA=e,this.toA=t,this.fromB=i,this.toB=r}join(e){return new n(Math.min(this.fromA,e.fromA),Math.max(this.toA,e.toA),Math.min(this.fromB,e.fromB),Math.max(this.toB,e.toB))}addToSet(e){let t=e.length,i=this;for(;t>0;t--){let r=e[t-1];if(!(r.fromA>i.toA)){if(r.toA<i.fromA)break;i=i.join(r),e.splice(t-1,1)}}return e.splice(t,0,i),e}static extendWithRanges(e,t){if(t.length==0)return e;let i=[];for(let r=0,s=0,o=0;;){let l=r<e.length?e[r].fromB:1e9,a=s<t.length?t[s]:1e9,c=Math.min(l,a);if(c==1e9)break;let h=c+o,u=c,d=h;for(;;)if(s<t.length&&t[s]<=u){let f=t[s+1];s+=2,u=Math.max(u,f);for(let p=r;p<e.length&&e[p].fromB<=u;p++)o=e[p].toA-e[p].toB;d=Math.max(d,f+o)}else if(r<e.length&&e[r].fromB<=u){let f=e[r++];u=Math.max(u,f.toB),d=Math.max(d,f.toA),o=f.toA-f.toB}else break;i.push(new n(h,d,c,u))}return i}},mo=class n{constructor(e,t,i){this.view=e,this.state=t,this.transactions=i,this.flags=0,this.startState=e.state,this.changes=tt.empty(this.startState.doc.length);for(let s of i)this.changes=this.changes.compose(s.changes);let r=[];this.changes.iterChangedRanges((s,o,l,a)=>r.push(new It(s,o,l,a))),this.changedRanges=r}static create(e,t,i){return new n(e,t,i)}get viewportChanged(){return(this.flags&4)>0}get viewportMoved(){return(this.flags&8)>0}get heightChanged(){return(this.flags&2)>0}get geometryChanged(){return this.docChanged||(this.flags&18)>0}get focusChanged(){return(this.flags&1)>0}get docChanged(){return!this.changes.empty}get selectionSet(){return this.transactions.some(e=>e.selection)}get empty(){return this.flags==0&&this.transactions.length==0}},xy=[],Se=class{constructor(e,t,i=0){this.dom=e,this.length=t,this.flags=i,this.parent=null,e.cmTile=this}get breakAfter(){return this.flags&1}get children(){return xy}isWidget(){return!1}get isHidden(){return!1}isComposite(){return!1}isLine(){return!1}isText(){return!1}isBlock(){return!1}get domAttrs(){return null}sync(e){if(this.flags|=2,this.flags&4){this.flags&=-5;let t=this.domAttrs;t&&iy(this.dom,t)}}toString(){return this.constructor.name+(this.children.length?`(${this.children})`:"")+(this.breakAfter?"#":"")}destroy(){this.parent=null}setDOM(e){this.dom=e,e.cmTile=this}get posAtStart(){return this.parent?this.parent.posBefore(this):0}get posAtEnd(){return this.posAtStart+this.length}posBefore(e,t=this.posAtStart){let i=t;for(let r of this.children){if(r==e)return i;i+=r.length+r.breakAfter}throw new RangeError("Invalid child in posBefore")}posAfter(e){return this.posBefore(e)+e.length}covers(e){return!0}coordsIn(e,t,i){return null}domPosFor(e,t){let i=Nn(this.dom),r=this.length?e>0:t>0;return new Qt(this.parent.dom,i+(r?1:0),e==0||e==this.length)}markDirty(e){this.flags&=-3,e&&(this.flags|=4),this.parent&&this.parent.flags&2&&this.parent.markDirty(!1)}get overrideDOMText(){return null}get root(){for(let e=this;e;e=e.parent)if(e instanceof qi)return e;return null}static get(e){return e.cmTile}},Ki=class extends Se{constructor(e){super(e,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(e){this.children.push(e),e.parent=this}sync(e){if(this.flags&2)return;super.sync(e);let t=this.dom,i=null,r,s=e?.node==t?e:null,o=0;for(let l of this.children){if(l.sync(e),o+=l.length+l.breakAfter,r=i?i.nextSibling:t.firstChild,s&&r!=l.dom&&(s.written=!0),l.dom.parentNode==t)for(;r&&r!=l.dom;)r=Zd(r);else t.insertBefore(l.dom,r);i=l.dom}for(r=i?i.nextSibling:t.firstChild,s&&r&&(s.written=!0);r;)r=Zd(r);this.length=o}};function Zd(n){let e=n.nextSibling;return n.parentNode.removeChild(n),e}var qi=class extends Ki{constructor(e,t){super(t),this.view=e}owns(e){for(;e;e=e.parent)if(e==this)return!0;return!1}isBlock(){return!0}nearest(e){for(;;){if(!e)return null;let t=Se.get(e);if(t&&this.owns(t))return t;e=e.parentNode}}blockTiles(e){for(let t=[],i=this,r=0,s=0;;)if(r==i.children.length){if(!t.length)return;i=i.parent,i.breakAfter&&s++,r=t.pop()}else{let o=i.children[r++];if(o instanceof gn)t.push(r),i=o,r=0;else{let l=s+o.length,a=e(o,s);if(a!==void 0)return a;s=l+o.breakAfter}}}resolveBlock(e,t){let i,r=-1,s,o=-1;if(this.blockTiles((l,a)=>{let c=a+l.length;if(e>=a&&e<=c){if(l.isWidget()&&t>=-1&&t<=1){if(l.flags&32)return!0;l.flags&16&&(i=void 0)}(a<e||e==c&&(t<-1?l.length:l.covers(1)))&&(!i||!l.isWidget()&&i.isWidget())&&(i=l,r=e-a),(c>e||e==a&&(t>1?l.length:l.covers(-1)))&&(!s||!l.isWidget()&&s.isWidget())&&(s=l,o=e-a)}}),!i&&!s)throw new Error("No tile at position "+e);return i&&t<0||!s?{tile:i,offset:r}:{tile:s,offset:o}}},gn=class n extends Ki{constructor(e,t){super(e),this.wrapper=t}isBlock(){return!0}covers(e){return this.children.length?e<0?this.children[0].covers(-1):this.lastChild.covers(1):!1}get domAttrs(){return this.wrapper.attributes}static of(e,t){let i=new n(t||document.createElement(e.tagName),e);return t||(i.flags|=4),i}},Gi=class n extends Ki{constructor(e,t){super(e),this.attrs=t}isLine(){return!0}static start(e,t,i){let r=new n(t||document.createElement("div"),e);return(!t||!i)&&(r.flags|=4),r}get domAttrs(){return this.attrs}resolveInline(e,t,i){let r=null,s=-1,o=null,l=-1;function a(h,u){for(let d=0,f=0;d<h.children.length&&f<=u;d++){let p=h.children[d],m=f+p.length;m>=u&&(p.isComposite()?a(p,u-f):(!o||o.isHidden&&(t>0&&!(o.flags&32)||i&&ky(o,p)))&&(m>u||p.flags&32&&t<=1)?(o=p,l=u-f):(f<u||p.flags&16&&!p.isHidden&&t>=-1)&&(r=p,s=u-f)),f=m}}a(this,e);let c=(t<0?r:o)||r||o;return c?{tile:c,offset:c==r?s:l}:null}coordsIn(e,t,i){let r=this.resolveInline(e,t,!0);return r?r.tile.coordsIn(Math.max(0,r.offset),t,i):vy(this)}domIn(e,t){let i=this.resolveInline(e,t);if(i){let{tile:r,offset:s}=i;if(this.dom.contains(r.dom))return r.isText()?new Qt(r.dom,Math.min(r.dom.nodeValue.length,s)):r.domPosFor(s,r.flags&16?1:r.flags&32?-1:t);let o=i.tile.parent,l=!1;for(let a of o.children){if(l)return new Qt(a.dom,0);a==i.tile&&(l=!0)}}return new Qt(this.dom,0)}};function vy(n){let e=n.dom.lastChild;if(!e)return n.dom.getBoundingClientRect();let t=Dr(e);return t[t.length-1]||null}function ky(n,e){let t=n.coordsIn(0,1),i=e.coordsIn(0,1);return t&&i&&i.top<t.bottom}var ut=class n extends Ki{constructor(e,t){super(e),this.mark=t}get domAttrs(){return this.mark.attrs}static of(e,t){let i=new n(t||document.createElement(e.tagName),e);return t||(i.flags|=4),i}},li=class n extends Se{constructor(e,t){super(e,t.length),this.text=t}sync(e){this.flags&2||(super.sync(e),this.dom.nodeValue!=this.text&&(e&&e.node==this.dom&&(e.written=!0),this.dom.nodeValue=this.text))}isText(){return!0}toString(){return JSON.stringify(this.text)}coordsIn(e,t,i){let r=this.dom.nodeValue.length;e>r&&(e=r);let s=e,o=e,l=0;e==0&&t<0||e==r&&t>=0?N.chrome||N.gecko||(e?(s--,l=1):o<r&&(o++,l=-1)):t<0?s--:o<r&&o++;let a=Vr(this.dom,s,o).getClientRects();if(!a.length)return null;let c=a[(l?l<0:t>=0)?0:a.length-1];return N.safari&&!l&&c.width==0&&(c=Array.prototype.find.call(a,h=>h.width)||c),i==null?c:Wr(c,(l?l>0:t<0)==i)}static of(e,t){let i=new n(t||document.createTextNode(e),e);return t||(i.flags|=2),i}},ui=class n extends Se{constructor(e,t,i,r){super(e,t,r),this.widget=i}isWidget(){return!0}get isHidden(){return this.widget.isHidden}covers(e){return this.flags&48?!1:(this.flags&(e<0?64:128))>0}coordsIn(e,t){return this.coordsInWidget(e,t,!1)}coordsInWidget(e,t,i){let r=this.widget.coordsAt(this.dom,e,t);if(r)return r;if(i)return Wr(this.dom.getBoundingClientRect(),this.length?e==0:t<=0);{let s=this.dom.getClientRects(),o=null;if(!s.length)return null;let l=this.flags&16?!0:this.flags&32?!1:e>0;for(let a=l?s.length-1:0;o=s[a],!(e>0?a==0:a==s.length-1||o.top<o.bottom);a+=l?-1:1);return Wr(o,!l)}}get overrideDOMText(){if(!this.length)return ne.empty;let{root:e}=this;if(!e)return ne.empty;let t=this.posAtStart;return e.view.state.doc.slice(t,t+this.length)}destroy(){super.destroy(),this.widget.destroy(this.dom)}static of(e,t,i,r,s){return s||(s=e.toDOM(t),e.editable||(s.contentEditable="false")),new n(s,i,e,r)}},Xi=class extends Se{constructor(e){let t=document.createElement("img");t.className="cm-widgetBuffer",t.setAttribute("aria-hidden","true"),super(t,0,e)}get isHidden(){return!0}get overrideDOMText(){return ne.empty}coordsIn(e,t,i){let r=this.dom.getBoundingClientRect();return i==null?r:Wr(r,t>0==i)}},_a=class{constructor(e){this.index=0,this.beforeBreak=!1,this.parents=[],this.tile=e}advance(e,t,i){let{tile:r,index:s,beforeBreak:o,parents:l}=this;for(;e||t>0;)if(r.isComposite())if(o){if(!e)break;i&&i.break(),e--,o=!1}else if(s==r.children.length){if(!e&&!l.length)break;i&&i.leave(r),o=!!r.breakAfter,{tile:r,index:s}=l.pop(),s++}else{let a=r.children[s],c=a.breakAfter;(t>0?a.length<=e:a.length<e)&&(!i||i.skip(a,0,a.length)!==!1||!a.isComposite)?(o=!!c,s++,e-=a.length):(l.push({tile:r,index:s}),r=a,s=0,i&&a.isComposite()&&i.enter(a))}else{let a=r.length;if(s<a&&e){let c=Math.min(e,a-s);i&&i.skip(r,s,s+c),e-=c,s+=c}if(s==a)o=!!r.breakAfter,{tile:r,index:s}=l.pop(),s++;else if(!e)break}return this.tile=r,this.index=s,this.beforeBreak=o,this}get root(){return this.parents.length?this.parents[0].tile:this.tile}},Ha=class{constructor(e,t,i,r){this.from=e,this.to=t,this.wrapper=i,this.rank=r}},Fa=class{constructor(e,t,i){this.cache=e,this.root=t,this.blockWrappers=i,this.curLine=null,this.lastBlock=null,this.afterWidget=null,this.pos=0,this.wrappers=[],this.wrapperPos=0}addText(e,t,i,r){var s;this.flushBuffer();let o=this.ensureMarks(t,i),l=o.lastChild;if(l&&l.isText()&&!(l.flags&8)&&l.length+e.length<512){this.cache.reused.set(l,2);let a=o.children[o.children.length-1]=new li(l.dom,l.text+e);a.parent=o}else o.append(r||li.of(e,(s=this.cache.find(li))===null||s===void 0?void 0:s.dom));this.pos+=e.length,this.afterWidget=null}addComposition(e,t){let i=this.curLine;i.dom!=t.line.dom&&(i.setDOM(this.cache.reused.has(t.line)?ka(t.line.dom):t.line.dom),this.cache.reused.set(t.line,2));let r=i;for(let l=t.marks.length-1;l>=0;l--){let a=t.marks[l],c=r.lastChild;if(c instanceof ut&&c.mark.eq(a.mark))c.dom!=a.dom&&c.setDOM(ka(a.dom)),r=c;else{let{dom:h}=a;this.cache.reused.get(a)&&Se.get(a.dom)&&(h=ka(a.dom));let u=ut.of(a.mark,h);r.append(u),r=u}this.cache.reused.set(a,2)}let s=Se.get(e.text);s&&this.cache.reused.set(s,2);let o=new li(e.text,e.text.nodeValue);o.flags|=8,this.pos=e.range.toB,r.append(o)}addInlineWidget(e,t,i){let r=this.afterWidget&&e.flags&48&&(this.afterWidget.flags&48)==(e.flags&48);r||this.flushBuffer();let s=this.ensureMarks(t,i);!r&&!(e.flags&16)&&s.append(this.getBuffer(1)),s.append(e),this.pos+=e.length,this.afterWidget=e}addMark(e,t,i){this.flushBuffer(),this.ensureMarks(t,i).append(e),this.pos+=e.length,this.afterWidget=null}addBlockWidget(e){this.getBlockPos().append(e),this.pos+=e.length,this.lastBlock=e,this.endLine()}continueWidget(e){let t=this.afterWidget||this.lastBlock;t.length+=e,this.pos+=e}addLineStart(e,t){var i;e||(e=Qf);let r=Gi.start(e,t||((i=this.cache.find(Gi))===null||i===void 0?void 0:i.dom),!!t);this.getBlockPos().append(this.lastBlock=this.curLine=r)}addLine(e){this.getBlockPos().append(e),this.pos+=e.length,this.lastBlock=e,this.endLine()}addBreak(){this.lastBlock.flags|=1,this.endLine(),this.pos++}addLineStartIfNotCovered(e){this.blockPosCovered()||this.addLineStart(e)}ensureLine(e){this.curLine||this.addLineStart(e)}ensureMarks(e,t){var i;let r=this.curLine;for(let s=e.length-1;s>=0;s--){let o=e[s],l;if(t>0&&(l=r.lastChild)&&l instanceof ut&&l.mark.eq(o))r=l,t--;else{let a=ut.of(o,(i=this.cache.find(ut,c=>c.mark.eq(o)))===null||i===void 0?void 0:i.dom);r.append(a),r=a,t=0}}return r}endLine(){if(this.curLine){this.flushBuffer();let e=this.curLine.lastChild;(!e||!Qd(this.curLine,!1)||e.dom.nodeName!="BR"&&e.isWidget()&&!(N.ios&&Qd(this.curLine,!0)))&&this.curLine.append(this.cache.findWidget(Sa,0,32)||new ui(Sa.toDOM(),0,Sa,32)),this.curLine=this.afterWidget=null}}updateBlockWrappers(){this.wrapperPos>this.pos+1e4&&(this.blockWrappers.goto(this.pos),this.wrappers.length=0);for(let e=this.wrappers.length-1;e>=0;e--)this.wrappers[e].to<this.pos&&this.wrappers.splice(e,1);for(let e=this.blockWrappers;e.value&&e.from<=this.pos;e.next())if(e.to>=this.pos){let t=e.rank*102+e.value.rank,i=new Ha(e.from,e.to,e.value,t),r=this.wrappers.length;for(;r>0&&(this.wrappers[r-1].rank-i.rank||this.wrappers[r-1].to-i.to)<0;)r--;this.wrappers.splice(r,0,i)}this.wrapperPos=this.pos}getBlockPos(){var e;this.updateBlockWrappers();let t=this.root;for(let i of this.wrappers){let r=t.lastChild;if(i.from<this.pos&&r instanceof gn&&r.wrapper.eq(i.wrapper))t=r;else{let s=gn.of(i.wrapper,(e=this.cache.find(gn,o=>o.wrapper.eq(i.wrapper)))===null||e===void 0?void 0:e.dom);t.append(s),t=s}}return t}blockPosCovered(){let e=this.lastBlock;return e!=null&&!e.breakAfter&&(!e.isWidget()||(e.flags&160)>0)}getBuffer(e){let t=2|(e<0?16:32),i=this.cache.find(Xi,void 0,1);return i&&(i.flags=t),i||new Xi(t)}flushBuffer(){this.afterWidget&&!(this.afterWidget.flags&32)&&(this.afterWidget.parent.append(this.getBuffer(-1)),this.afterWidget=null)}},za=class{constructor(e){this.skipCount=0,this.text="",this.textOff=0,this.cursor=e.iter()}skip(e){this.textOff+e<=this.text.length?this.textOff+=e:(this.skipCount+=e-(this.text.length-this.textOff),this.text="",this.textOff=0)}next(e){if(this.textOff==this.text.length){let{value:r,lineBreak:s,done:o}=this.cursor.next(this.skipCount);if(this.skipCount=0,o)throw new Error("Ran out of text content when drawing inline views");this.text=r;let l=this.textOff=Math.min(e,r.length);return s?null:r.slice(0,l)}let t=Math.min(this.text.length,this.textOff+e),i=this.text.slice(this.textOff,t);return this.textOff=t,i}},go=[ui,Gi,li,ut,Xi,gn,qi];for(let n=0;n<go.length;n++)go[n].bucket=n;var Wa=class{constructor(e){this.view=e,this.buckets=go.map(()=>[]),this.index=go.map(()=>0),this.reused=new Map}add(e){let t=e.constructor.bucket,i=this.buckets[t];i.length<6?i.push(e):i[this.index[t]=(this.index[t]+1)%6]=e}find(e,t,i=2){let r=e.bucket,s=this.buckets[r],o=this.index[r];for(let l=0;l<s.length;l++){let a=(l+o)%s.length,c=s[a];if((!t||t(c))&&!this.reused.has(c))return s.splice(a,1),a<o&&this.index[r]--,this.reused.set(c,i),c}return null}findWidget(e,t,i){let r=this.buckets[0];if(r.length)for(let s=0,o=0;;s++){if(s==r.length){if(o)return null;o=1,s=0}let l=r[s];if(!this.reused.has(l)&&(o==0?l.widget.compare(e):l.widget.constructor==e.constructor&&e.updateDOM(l.dom,this.view,l.widget)))return r.splice(s,1),s<this.index[0]&&this.index[0]--,l.widget==e&&l.length==t&&(l.flags&497)==i?(this.reused.set(l,1),l):(this.reused.set(l,2),new ui(l.dom,t,e,l.flags&-498|i))}}reuse(e){return this.reused.set(e,1),e}maybeReuse(e,t=2){if(!this.reused.has(e))return this.reused.set(e,t),e.dom}clear(){for(let e=0;e<this.buckets.length;e++)this.buckets[e].length=this.index[e]=0}},Va=class{constructor(e,t,i,r,s){this.view=e,this.decorations=r,this.disallowBlockEffectsFor=s,this.openWidget=!1,this.openMarks=0,this.cache=new Wa(e),this.text=new za(e.state.doc),this.builder=new Fa(this.cache,new qi(e,e.contentDOM),he.iter(i)),this.cache.reused.set(t,2),this.old=new _a(t),this.reuseWalker={skip:(o,l,a)=>{if(this.cache.add(o),o.isComposite())return!1},enter:o=>this.cache.add(o),leave:()=>{},break:()=>{}}}run(e,t){let i=t&&this.getCompositionContext(t.text);for(let r=0,s=0,o=0;;){let l=o<e.length?e[o++]:null,a=l?l.fromA:this.old.root.length;if(a>r){let c=a-r;this.preserve(c,!o,!l),r=a,s+=c}if(!l)break;t&&l.fromA<=t.range.fromA&&l.toA>=t.range.toA?(this.forward(l.fromA,t.range.fromA,t.range.fromA<t.range.toA?1:-1),this.emit(s,t.range.fromB),this.builder.flushBuffer(),this.cache.clear(),this.builder.addComposition(t,i),this.text.skip(t.range.toB-t.range.fromB),this.forward(t.range.fromA,l.toA),this.emit(t.range.toB,l.toB)):(this.forward(l.fromA,l.toA),this.emit(s,l.toB)),s=l.toB,r=l.toA}return this.builder.curLine&&this.builder.endLine(),this.builder.root}preserve(e,t,i){let r=Ty(this.old),s=this.openMarks;this.old.advance(e,i?1:-1,{skip:(o,l,a)=>{if(o.isWidget())if(this.openWidget)this.builder.continueWidget(a-l);else{let c=a>0||l<o.length?ui.of(o.widget,this.view,a-l,o.flags&496,this.cache.maybeReuse(o)):this.cache.reuse(o);c.flags&256?(c.flags&=-2,this.builder.addBlockWidget(c)):(this.builder.ensureLine(null),this.builder.addInlineWidget(c,r,s),s=r.length)}else if(o.isText())this.builder.ensureLine(null),!l&&a==o.length&&!this.cache.reused.has(o)?this.builder.addText(o.text,r,s,this.cache.reuse(o)):(this.cache.add(o),this.builder.addText(o.text.slice(l,a),r,s)),s=r.length;else if(o.isLine())o.flags&=-2,this.cache.reused.set(o,1),this.builder.addLine(o);else if(o instanceof Xi)this.cache.add(o);else if(o instanceof ut)this.builder.ensureLine(null),this.builder.addMark(o,r,s),this.cache.reused.set(o,1),s=r.length;else return!1;this.openWidget=!1},enter:o=>{o.isLine()?this.builder.addLineStart(o.attrs,this.cache.maybeReuse(o)):(this.cache.add(o),o instanceof ut&&r.unshift(o.mark)),this.openWidget=!1},leave:o=>{o.isLine()?r.length&&(r.length=s=0):o instanceof ut&&(r.shift(),s=Math.min(s,r.length))},break:()=>{this.builder.addBreak(),this.openWidget=!1}}),this.text.skip(e)}emit(e,t){let i=null,r=this.builder,s=-1,o=he.spans(this.decorations,e,t,{point:(l,a,c,h,u,d)=>{if(c instanceof ci){if(this.disallowBlockEffectsFor[d]){if(c.block)throw new RangeError("Block decorations may not be specified via plugins");if(a>this.view.state.doc.lineAt(l).to)throw new RangeError("Decorations that replace line breaks may not be specified via plugins")}if(s=h.length,u>h.length)r.continueWidget(a-l);else{let f=c.widget||(c.block?Bn.block:Bn.inline),p=Sy(c),m=this.cache.findWidget(f,a-l,p)||ui.of(f,this.view,a-l,p);c.block?(c.startSide>0&&r.addLineStartIfNotCovered(i),r.addBlockWidget(m)):(r.ensureLine(i),r.addInlineWidget(m,h,u))}i=null}else i=Cy(i,c);a>l&&this.text.skip(a-l)},span:(l,a,c,h)=>{for(let u=l;u<a;){let d=this.text.next(Math.min(512,a-u));d==null?(r.addLineStartIfNotCovered(i),r.addBreak(),u++):(r.ensureLine(i),r.addText(d,c,u==l?h:c.length),u+=d.length),i=null}s=c.length}});s>-1&&(this.openWidget=o>s),this.openWidget||r.addLineStartIfNotCovered(i),this.openMarks=o}forward(e,t,i=1){t-e<=10?this.old.advance(t-e,i,this.reuseWalker):(this.old.advance(5,-1,this.reuseWalker),this.old.advance(t-e-10,-1),this.old.advance(5,i,this.reuseWalker))}getCompositionContext(e){let t=[],i=null;for(let r=e.parentNode;;r=r.parentNode){let s=Se.get(r);if(r==this.view.contentDOM)break;s instanceof ut?t.push(s):s?.isLine()?i=s:s instanceof gn||(r.nodeName=="DIV"&&!i?i=new Gi(r,Qf):i||t.push(ut.of(new Hr({tagName:r.nodeName.toLowerCase(),attributes:ry(r)}),r)))}return i?{line:i,marks:t}:null}};function Qd(n,e){let t=i=>{for(let r of i.children)if((e?r.isText():r.length)||t(r))return!0;return!1};return t(n)}function Sy(n){let e=n.isReplace?(n.startSide<0?64:0)|(n.endSide>0?128:0):n.startSide>0?32:16;return n.block&&(e|=256),e}var Qf={class:"cm-line"};function Cy(n,e){let t=e.spec.attributes,i=e.spec.class;return!t&&!i||(n||(n={class:"cm-line"}),t&&bc(t,n),i&&(n.class+=" "+i)),n}function Ty(n){let e=[];for(let t=n.parents.length;t>1;t--){let i=t==n.parents.length?n.tile:n.parents[t].tile;i instanceof ut&&e.push(i.mark)}return e}function ka(n){let e=Se.get(n);return e&&e.setDOM(n.cloneNode()),n}var Bn=class extends In{constructor(e){super(),this.tag=e}eq(e){return e.tag==this.tag}toDOM(){return document.createElement(this.tag)}updateDOM(e){return e.nodeName.toLowerCase()==this.tag}get isHidden(){return!0}};Bn.inline=new Bn("span");Bn.block=new Bn("div");var Sa=new class extends In{toDOM(){return document.createElement("br")}get isHidden(){return!0}get editable(){return!0}},bo=class{constructor(e){this.view=e,this.decorations=[],this.blockWrappers=[],this.dynamicDecorationMap=[!1],this.domChanged=null,this.hasComposition=null,this.editContextFormatting=me.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 qi(e,e.contentDOM),this.updateInner([new It(0,0,0,e.state.doc.length)],null)}update(e){var t;let i=e.changedRanges;this.minWidth>0&&i.length&&(i.every(({fromA:h,toA:u})=>u<this.minWidthFrom||h>this.minWidthTo)?(this.minWidthFrom=e.changes.mapPos(this.minWidthFrom,1),this.minWidthTo=e.changes.mapPos(this.minWidthTo,1)):this.minWidth=this.minWidthFrom=this.minWidthTo=0),this.updateEditContextFormatting(e);let r=-1;this.view.inputState.composing>=0&&!this.view.observer.editContext&&(!((t=this.domChanged)===null||t===void 0)&&t.newSel?r=this.domChanged.newSel.head:!Oy(e.changes,this.hasComposition)&&!e.selectionSet&&(r=e.state.selection.main.head));let s=r>-1?Ey(this.view,e.changes,r):null;if(this.domChanged=null,this.hasComposition){let{from:h,to:u}=this.hasComposition;i=new It(h,u,e.changes.mapPos(h,-1),e.changes.mapPos(u,1)).addToSet(i.slice())}this.hasComposition=s?{from:s.range.fromB,to:s.range.toB}:null,(N.ie||N.chrome)&&!s&&e&&e.state.doc.lines!=e.startState.doc.lines&&(this.forceSelection=!0);let o=this.decorations,l=this.blockWrappers;this.updateDeco();let a=Dy(o,this.decorations,e.changes);a.length&&(i=It.extendWithRanges(i,a));let c=Ly(l,this.blockWrappers,e.changes);return c.length&&(i=It.extendWithRanges(i,c)),s&&!i.some(h=>h.fromA<=s.range.fromA&&h.toA>=s.range.toA)&&(i=s.range.addToSet(i.slice())),this.tile.flags&2&&i.length==0?!1:(this.updateInner(i,s),e.transactions.length&&(this.lastUpdate=Date.now()),!0)}updateInner(e,t){this.view.viewState.mustMeasureContent=!0;let{observer:i}=this.view;i.ignore(()=>{if(t||e.length){let o=this.tile,l=new Va(this.view,o,this.blockWrappers,this.decorations,this.dynamicDecorationMap);t&&Se.get(t.text)&&l.cache.reused.set(Se.get(t.text),2),this.tile=l.run(e,t),$a(o,l.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 s=N.chrome||N.ios?{node:i.selectionRange.focusNode,written:!1}:void 0;this.tile.sync(s),s&&(s.written||i.selectionRange.focusNode!=s.node||!this.tile.dom.contains(s.node))&&(this.forceSelection=!0),this.tile.dom.style.height=""});let r=[];if(this.view.viewport.from||this.view.viewport.to<this.view.state.doc.length)for(let s of this.tile.children)s.isWidget()&&s.widget instanceof Ir&&r.push(s.dom);i.updateGaps(r)}updateEditContextFormatting(e){this.editContextFormatting=this.editContextFormatting.map(e.changes);for(let t of e.transactions)for(let i of t.effects)i.is(qf)&&(this.editContextFormatting=i.value)}updateSelection(e=!1,t=!1){(e||!this.view.observer.selectionRange.focusNode)&&this.view.observer.readSelectionRange();let{dom:i}=this.tile,r=this.view.root.activeElement,s=r==i,o=!s&&!(this.view.state.facet(mn)||i.tabIndex>-1)&&Rr(i,this.view.observer.selectionRange)&&!(r&&i.contains(r));if(!(s||t||o))return;let l=this.forceSelection;this.forceSelection=!1;let a=this.view.state.selection.main,c,h;if(a.empty?h=c=this.inlineDOMNearPos(a.anchor,a.assoc||1):(h=this.inlineDOMNearPos(a.head,a.head==a.from?1:-1),c=this.inlineDOMNearPos(a.anchor,a.anchor==a.from?1:-1)),N.gecko&&a.empty&&!this.hasComposition&&Ay(c)){let d=document.createTextNode("");this.view.observer.ignore(()=>c.node.insertBefore(d,c.node.childNodes[c.offset]||null)),c=h=new Qt(d,0),l=!0}let u=this.view.observer.selectionRange;(l||!u.focusNode||(!Lr(c.node,c.offset,u.anchorNode,u.anchorOffset)||!Lr(h.node,h.offset,u.focusNode,u.focusOffset))&&!this.suppressWidgetCursorChange(u,a))&&(this.view.observer.ignore(()=>{N.android&&N.chrome&&i.contains(u.focusNode)&&Py(u.focusNode,i)&&(i.blur(),i.focus({preventScroll:!0}));let d=zr(this.view.root);if(d)if(a.empty){if(N.gecko){let f=My(c.node,c.offset);if(f&&f!=3){let p=(f==1?Lf:Pf)(c.node,c.offset);p&&(c=new Qt(p.node,p.offset))}}d.collapse(c.node,c.offset),a.bidiLevel!=null&&d.caretBidiLevel!==void 0&&(d.caretBidiLevel=a.bidiLevel)}else if(d.extend){d.collapse(c.node,c.offset);try{d.extend(h.node,h.offset)}catch{}}else{let f=document.createRange();a.anchor>a.head&&([c,h]=[h,c]),f.setEnd(h.node,h.offset),f.setStart(c.node,c.offset),d.removeAllRanges(),d.addRange(f)}o&&this.view.root.activeElement==i&&(i.blur(),r&&r.focus())}),this.view.observer.setSelectionRange(c,h)),this.impreciseAnchor=c.precise?null:new Qt(u.anchorNode,u.anchorOffset),this.impreciseHead=h.precise?null:new Qt(u.focusNode,u.focusOffset)}suppressWidgetCursorChange(e,t){return this.hasComposition&&t.empty&&Lr(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset)&&this.posFromDOM(e.focusNode,e.focusOffset)==t.head}enforceCursorAssoc(){if(this.hasComposition)return;let{view:e}=this,t=e.state.selection.main,i=zr(e.root),{anchorNode:r,anchorOffset:s}=e.observer.selectionRange;if(!i||!t.empty||!t.assoc||!i.modify)return;let o=this.lineAt(t.head,t.assoc);if(!o)return;let l=o.posAtStart;if(t.head==l||t.head==l+o.length)return;let a=this.coordsAt(t.head,-1),c=this.coordsAt(t.head,1);if(!a||!c||a.bottom>c.top)return;let h=this.domAtPos(t.head+t.assoc,t.assoc);i.collapse(h.node,h.offset),i.modify("move",t.assoc<0?"forward":"backward","lineboundary"),e.observer.readSelectionRange();let u=e.observer.selectionRange;e.docView.posFromDOM(u.anchorNode,u.anchorOffset)!=t.from&&i.collapse(r,s)}posFromDOM(e,t){let i=this.tile.nearest(e);if(!i)return this.tile.dom.compareDocumentPosition(e)&2?0:this.view.state.doc.length;let r=i.posAtStart;if(i.isComposite()){let s;if(e==i.dom)s=i.dom.childNodes[t];else{let o=bn(e)==0?0:t==0?-1:1;for(;;){let l=e.parentNode;if(l==i.dom)break;o==0&&l.firstChild!=l.lastChild&&(e==l.firstChild?o=-1:o=1),e=l}o<0?s=e:s=e.nextSibling}if(s==i.dom.firstChild)return r;for(;s&&!Se.get(s);)s=s.nextSibling;if(!s)return r+i.length;for(let o=0,l=r;;o++){let a=i.children[o];if(a.dom==s)return l;l+=a.length+a.breakAfter}}else return i.isText()?e==i.dom?r+t:r+(t?i.length:0):r}domAtPos(e,t){let{tile:i,offset:r}=this.tile.resolveBlock(e,t);return i.isWidget()?i.domPosFor(r,t):i.domIn(r,t)}inlineDOMNearPos(e,t){let i,r=-1,s=!1,o,l=-1,a=!1;return this.tile.blockTiles((c,h)=>{if(c.isWidget()){if(c.flags&32&&h>=e)return!0;c.flags&16&&(s=!0)}else{let u=h+c.length;if(h<=e&&(i=c,r=e-h,s=u<e),u>=e&&!o&&(o=c,l=e-h,a=h>e),h>e&&o)return!0}}),!i&&!o?this.domAtPos(e,t):(s&&o?i=null:a&&i&&(o=null),i&&t<0||!o?i.domIn(r,t):o.domIn(l,t))}coordsAt(e,t,i){let{tile:r,offset:s}=this.tile.resolveBlock(e,t);return r.isWidget()?r.widget instanceof Ir?null:r.coordsInWidget(s,t,!0):r.coordsIn(s,t,i)}lineAt(e,t){let{tile:i}=this.tile.resolveBlock(e,t);return i.isLine()?i:null}coordsForChar(e){let{tile:t,offset:i}=this.tile.resolveBlock(e,1);if(!t.isLine())return null;function r(s,o){if(s.isComposite())for(let l of s.children){if(l.length>=o){let a=r(l,o);if(a)return a}if(o-=l.length,o<0)break}else if(s.isText()&&o<s.length){let l=ze(s.text,o);if(l==o)return null;let a=Vr(s.dom,o,l).getClientRects();for(let c=0;c<a.length;c++){let h=a[c];if(c==a.length-1||h.top<h.bottom&&h.left<h.right)return h}}return null}return r(t,i)}measureVisibleLineHeights(e){let t=[],{from:i,to:r}=e,s=this.view.contentDOM.clientWidth,o=s>Math.max(this.view.scrollDOM.clientWidth,this.minWidth)+1,l=-1,a=this.view.textDirection==ge.LTR,c=0,h=(u,d,f)=>{for(let p=0;p<u.children.length&&!(d>r);p++){let m=u.children[p],y=d+m.length,b=m.dom.getBoundingClientRect(),{height:x}=b;if(f&&!p&&(c+=b.top-f.top),m instanceof gn)y>i&&h(m,d,b);else if(d>=i&&(c>0&&t.push(-c),t.push(x+c),c=0,o)){let k=m.dom.lastChild,_=k?Dr(k):[];if(_.length){let C=_[_.length-1],S=a?C.right-b.left:b.right-C.left;S>l&&(l=S,this.minWidth=s,this.minWidthFrom=d,this.minWidthTo=y)}}f&&p==u.children.length-1&&(c+=f.bottom-b.bottom),d=y+m.breakAfter}};return h(this.tile,0,null),t}textDirectionAt(e){let{tile:t}=this.tile.resolveBlock(e,1);return getComputedStyle(t.dom).direction=="rtl"?ge.RTL:ge.LTR}measureTextSize(){let e=this.tile.blockTiles(o=>{if(o.isLine()&&o.children.length&&o.length<=20){let l=0,a;for(let c of o.children){if(!c.isText()||/[^ -~]/.test(c.text))return;let h=Dr(c.dom);if(h.length!=1)return;l+=h[0].width,a=h[0].height}if(l)return{lineHeight:o.dom.getBoundingClientRect().height,charWidth:l/o.length,textHeight:a}}});if(e)return e;let t=document.createElement("div"),i,r,s;return t.className="cm-line",t.style.width="99999px",t.style.position="absolute",t.textContent="abc def ghi jkl mno pqr stu",this.view.observer.ignore(()=>{this.tile.dom.appendChild(t);let o=Dr(t.firstChild)[0];i=t.getBoundingClientRect().height,r=o&&o.width?o.width/27:7,s=o&&o.height?o.height:i,t.remove()}),{lineHeight:i,charWidth:r,textHeight:s}}computeBlockGapDeco(){let e=[],t=this.view.viewState;for(let i=0,r=0;;r++){let s=r==t.viewports.length?null:t.viewports[r],o=s?s.from-1:this.view.state.doc.length;if(o>i){let l=(t.lineBlockAt(o).bottom-t.lineBlockAt(i).top)/this.view.scaleY;e.push(me.replace({widget:new Ir(l),block:!0,inclusive:!0,isBlockGap:!0}).range(i,o))}if(!s)break;i=s.to+1}return me.set(e)}updateDeco(){let e=1,t=this.view.state.facet(Eo).map(s=>(this.dynamicDecorationMap[e++]=typeof s=="function")?s(this.view):s),i=!1,r=this.view.state.facet(Sc).map((s,o)=>{let l=typeof s=="function";return l&&(i=!0),l?s(this.view):s});for(r.length&&(this.dynamicDecorationMap[e++]=i,t.push(he.join(r))),this.decorations=[this.editContextFormatting,...t,this.computeBlockGapDeco(),this.view.viewState.lineGapDeco];e<this.decorations.length;)this.dynamicDecorationMap[e++]=!1;this.blockWrappers=this.view.state.facet(Xf).map(s=>typeof s=="function"?s(this.view):s)}scrollIntoView(e){if(e.isSnapshot){let c=this.view.viewState.lineBlockAt(e.range.head);this.view.scrollDOM.scrollTop=c.top-e.yMargin,this.view.scrollDOM.scrollLeft=e.xMargin;return}for(let c of this.view.state.facet(Kf))try{if(c(this.view,e.range,e))return!0}catch(h){Ot(this.view.state,h,"scroll handler")}let{range:t}=e,i=this.coordsAt(t.head,t.assoc||(t.head>t.anchor?-1:1)),r;if(!i)return;!t.empty&&(r=this.coordsAt(t.anchor,t.anchor>t.head?-1:1))&&(i={left:Math.min(i.left,r.left),top:Math.min(i.top,r.top),right:Math.max(i.right,r.right),bottom:Math.max(i.bottom,r.bottom)});let s=Zf(this.view),o={left:i.left-s.left,top:i.top-s.top,right:i.right+s.right,bottom:i.bottom+s.bottom},{offsetWidth:l,offsetHeight:a}=this.view.scrollDOM;if(ly(this.view.scrollDOM,o,t.head<t.anchor?-1:1,e.x,e.y,Math.max(Math.min(e.xMargin,l),-l),Math.max(Math.min(e.yMargin,a),-a),this.view.textDirection==ge.LTR),window.visualViewport&&window.innerHeight-window.visualViewport.height>1&&(i.top>window.visualViewport.offsetTop+window.visualViewport.height||i.bottom<window.visualViewport.offsetTop)){let c=this.view.docView.lineAt(t.head,1);if(c){let h=Ef(c.dom);c.dom.scrollIntoView({block:"nearest"}),Mf(h,!1)}}}lineHasWidget(e){let t=i=>i.isWidget()||i.children.some(t);return t(this.tile.resolveBlock(e,1).tile)}destroy(){$a(this.tile)}};function $a(n,e){let t=e?.get(n);if(t!=1){t==null&&n.destroy();for(let i of n.children)$a(i,e)}}function Ay(n){return n.node.nodeType==1&&n.node.firstChild&&(n.offset==0||n.node.childNodes[n.offset-1].contentEditable=="false")&&(n.offset==n.node.childNodes.length||n.node.childNodes[n.offset].contentEditable=="false")}function ep(n,e){let t=n.observer.selectionRange;if(!t.focusNode)return null;let i=Lf(t.focusNode,t.focusOffset),r=Pf(t.focusNode,t.focusOffset),s=i||r;if(r&&i&&r.node!=i.node){let l=Se.get(r.node);if(!l||l.isText()&&l.text!=r.node.nodeValue)s=r;else if(n.docView.lastCompositionAfterCursor){let a=Se.get(i.node);!a||a.isText()&&a.text!=i.node.nodeValue||(s=r)}}if(n.docView.lastCompositionAfterCursor=s!=i,!s)return null;let o=e-s.offset;return{from:o,to:o+s.node.nodeValue.length,node:s.node}}function Ey(n,e,t){let i=ep(n,t);if(!i)return null;let{node:r,from:s,to:o}=i,l=r.nodeValue;if(/[\n\r]/.test(l)||n.state.doc.sliceString(i.from,i.to)!=l)return null;let a=e.invertedDesc;return{range:new It(a.mapPos(s),a.mapPos(o),s,o),text:r}}function My(n,e){return n.nodeType!=1?0:(e&&n.childNodes[e-1].contentEditable=="false"?1:0)|(e<n.childNodes.length&&n.childNodes[e].contentEditable=="false"?2:0)}var Ry=class{constructor(){this.changes=[]}compareRange(e,t){Ui(e,t,this.changes)}comparePoint(e,t){Ui(e,t,this.changes)}boundChange(e){Ui(e,e,this.changes)}};function Dy(n,e,t){let i=new Ry;return he.compare(n,e,t,i),i.changes}var Ua=class{constructor(){this.changes=[]}compareRange(e,t){Ui(e,t,this.changes)}comparePoint(){}boundChange(e){Ui(e,e,this.changes)}};function Ly(n,e,t){let i=new Ua;return he.compare(n,e,t,i),i.changes}function Py(n,e){for(let t=n;t&&t!=e;t=t.assignedSlot||t.parentNode)if(t.nodeType==1&&t.contentEditable=="false")return!0;return!1}function Oy(n,e){let t=!1;return e&&n.iterChangedRanges((i,r)=>{i<e.to&&r>e.from&&(t=!0)}),t}var Ir=class extends In{constructor(e){super(),this.height=e}toDOM(){let e=document.createElement("div");return e.className="cm-gap",this.updateDOM(e),e}eq(e){return e.height==this.height}updateDOM(e){return e.style.height=this.height+"px",!0}get editable(){return!0}get estimatedHeight(){return this.height}ignoreEvent(){return!1}};function Iy(n,e,t=1){let i=n.charCategorizer(e),r=n.doc.lineAt(e),s=e-r.from;if(r.length==0)return D.cursor(e);s==0?t=1:s==r.length&&(t=-1);let o=s,l=s;t<0?o=ze(r.text,s,!1):l=ze(r.text,s);let a=i(r.text.slice(o,l));for(;o>0;){let c=ze(r.text,o,!1);if(i(r.text.slice(c,o))!=a)break;o=c}for(;l<r.length;){let c=ze(r.text,l);if(i(r.text.slice(l,c))!=a)break;l=c}return D.undirectionalRange(o+r.from,l+r.from)}function Ny(n,e,t,i,r){let s=Math.round((i-e.left)*n.defaultCharacterWidth);if(n.lineWrapping&&t.height>n.defaultLineHeight*1.5){let l=n.viewState.heightOracle.textHeight,a=Math.floor((r-t.top-(n.defaultLineHeight-l)*.5)/l);s+=a*n.viewState.heightOracle.lineLength}let o=n.state.sliceDoc(t.from,t.to);return t.from+zd(o,s,n.state.tabSize)}function ja(n,e,t){let i=n.lineBlockAt(e);if(Array.isArray(i.type)){let r;for(let s of i.type){if(s.from>e)break;if(!(s.to<e)){if(s.from<e&&s.to>e)return s;(!r||s.type==Ue.Text&&(r.type!=s.type||(t<0?s.from<e:s.to>e)))&&(r=s)}}return r||i}return i}function By(n,e,t,i){let r=ja(n,e.head,e.assoc||-1),s=!i||r.type!=Ue.Text||!(n.lineWrapping||r.widgetLineBreaks)?null:n.coordsAtPos(e.assoc<0&&e.head>r.from?e.head-1:e.head);if(s){let l=n.dom.getBoundingClientRect(),a=n.textDirectionAt(r.from),c=n.posAtCoords({x:t==(a==ge.LTR)?l.right-1:l.left+1,y:(s.top+s.bottom)/2});if(c!=null)return D.cursor(c,t?-1:1)}let o=n.state.doc.lineAt(e.head);return(t?o.to==r.to:o.from==r.from)?n.visualLineSide(o,t):D.cursor(t?r.to:r.from,t?-1:1)}function ef(n,e,t,i){let r=n.state.doc.lineAt(e.head),s=n.bidiSpans(r),o=n.textDirectionAt(r.from);for(let l=e,a=null;;){let c=by(r,s,o,l,t),h=_f;if(!c){if(r.number==(t?n.state.doc.lines:1))return l;h=`
596
+ `,r=n.state.doc.line(r.number+(t?1:-1)),s=n.bidiSpans(r),c=n.visualLineSide(r,!t)}if(a){if(!a(h))return l}else{if(!i)return c;a=i(h)}l=c}}function _y(n,e,t){let i=n.state.charCategorizer(e),r=i(t);return s=>{let o=i(s);return r==Lt.Space&&(r=o),r==o}}function Hy(n,e,t,i){let r=e.head,s=t?1:-1;if(r==(t?n.state.doc.length:0))return D.cursor(r,e.assoc);let o=e.goalColumn,l,a=n.contentDOM.getBoundingClientRect(),c=n.coordsAtPos(r,e.assoc||((e.empty?t:e.head==e.from)?1:-1)),h=n.documentTop;if(c)o==null&&(o=c.left-a.left),l=s<0?c.top:c.bottom;else{let p=n.viewState.lineBlockAt(r);o==null&&(o=Math.min(a.right-a.left,n.defaultCharacterWidth*(r-p.from))),l=(s<0?p.top:p.bottom)+h}let u=a.left+o,d=n.viewState.heightOracle.textHeight>>1,f=i??d;for(let p=0;;p+=d){let m=l+(f+p)*s,y=Ka(n,{x:u,y:m},!1,s);if(t?m>a.bottom:m<a.top)return D.cursor(y.pos,y.assoc);let b=n.coordsAtPos(y.pos,y.assoc),x=b?(b.top+b.bottom)/2:0;if(!b||(t?x>l:x<l))return D.cursor(y.pos,y.assoc,void 0,o)}}function Nr(n,e,t){for(;;){let i=0;for(let r of n)r.between(e-1,e+1,(s,o,l)=>{if(e>s&&e<o){let a=i||t||(e-s<o-e?-1:1);e=a<0?s:o,i=a}});if(!i)return e}}function tp(n,e){let t=null;for(let i=0;i<e.ranges.length;i++){let r=e.ranges[i],s=null;if(r.empty){let o=Nr(n,r.from,0);o!=r.from&&(s=D.cursor(o,-1))}else{let o=Nr(n,r.from,-1),l=Nr(n,r.to,1);(o!=r.from||l!=r.to)&&(r.undirectional?s=D.undirectionalRange(r.from,r.to):s=D.range(r.from==r.anchor?o:l,r.from==r.head?o:l))}s&&(t||(t=e.ranges.slice()),t[i]=s)}return t?D.create(t,e.mainIndex):e}function Ca(n,e,t){let i=Nr(n.state.facet($r).map(r=>r(n)),t.from,e.head>t.from?-1:1);return i==t.from?t:D.cursor(i,i<t.from?1:-1)}var Ct=class{constructor(e,t){this.pos=e,this.assoc=t}};function Ka(n,e,t,i){let r=n.contentDOM.getBoundingClientRect(),s=r.top+n.viewState.paddingTop,{x:o,y:l}=e,a=l-s,c;for(;;){if(a<0)return new Ct(0,1);if(a>n.viewState.docHeight)return new Ct(n.state.doc.length,-1);if(c=n.elementAtHeight(a),i==null)break;if(c.type==Ue.Text){if(i<0?c.to<n.viewport.from:c.from>n.viewport.to)break;let d=n.docView.coordsAt(i<0?c.from:c.to,i>0?-1:1);if(d&&(i<0?d.top<=a+s:d.bottom>=a+s))break}let u=n.viewState.heightOracle.textHeight/2;a=i>0?c.bottom+u:c.top-u}if(n.viewport.from>=c.to||n.viewport.to<=c.from){if(t)return null;if(c.type==Ue.Text){let u=Ny(n,r,c,o,l);return new Ct(u,u==c.from?1:-1)}}if(c.type!=Ue.Text)return a<(c.top+c.bottom)/2?new Ct(c.from,1):new Ct(c.to,-1);let h=n.docView.lineAt(c.from,2);return(!h||h.length!=c.length)&&(h=n.docView.lineAt(c.from,-2)),new qa(n,o,l,n.textDirectionAt(c.from)).scanTile(h,c.from)}var qa=class{constructor(e,t,i,r){this.view=e,this.x=t,this.y=i,this.baseDir=r,this.line=null,this.spans=null}bidiSpansAt(e){return(!this.line||this.line.from>e||this.line.to<e)&&(this.line=this.view.state.doc.lineAt(e),this.spans=this.view.bidiSpans(this.line)),this}baseDirAt(e,t){let{line:i,spans:r}=this.bidiSpansAt(e);return r[Tt.find(r,e-i.from,-1,t)].level==this.baseDir}dirAt(e,t){let{line:i,spans:r}=this.bidiSpansAt(e);return r[Tt.find(r,e-i.from,-1,t)].dir}bidiIn(e,t){let{spans:i,line:r}=this.bidiSpansAt(e);return i.length>1||i.length&&(i[0].level!=this.baseDir||i[0].to+r.from<t)}scan(e,t,i=!1){let r=0,s=e.length-1,o=new Set,l=this.bidiIn(e[0],e[s]),a,c,h=-1,u=1e9,d;e:for(;r<s;){let p=s-r,m=r+s>>1;t:if(o.has(m)){for(let x=1;x<p;x++){let k=m+x;if(k>=s&&(k-=p),!o.has(k)){m=k;break t}}break e}o.add(m);let y=t(m),b=0;if(y)for(let x=0;x<y.length;x++){let k=y[x];if(!(k.width==0&&y.length>1))if(k.bottom<this.y)(!a||a.bottom<k.bottom)&&(a=k),b=1;else if(k.top>this.y)(!c||c.top>k.top)&&(c=k),b=-1;else{let _=k.left>this.x?this.x-k.left:k.right<this.x?this.x-k.right:0,C=Math.abs(_);C<u&&(h=m,u=C,d=k),_&&(b=_<0==(this.baseDir==ge.LTR)?-1:1)}}b==-1&&(!l||this.baseDirAt(e[m],1))?s=m:b==1&&(!l||this.baseDirAt(e[m+1],-1))&&(r=m+1)}if(!d){if(!c&&!a)return{i:0,after:!1};let p=a&&(!c||this.y-a.bottom<c.top-this.y)?a:c;return this.y=(p.top+p.bottom)/2,this.scan(e,t,!0)}if(u&&!i){let{top:p,bottom:m}=d;if(a&&a.bottom>(p+p+m)/3)return this.y=a.bottom-1,this.scan(e,t,!0);if(c&&c.top<(p+m+m)/3)return this.y=c.top+1,this.scan(e,t,!0)}let f=(l?this.dirAt(e[h],1):this.baseDir)==ge.LTR;return{i:h,after:this.x>(d.left+d.right)/2==f}}scanText(e,t){let i=[];for(let s=0;s<e.length;s=ze(e.text,s))i.push(t+s);i.push(t+e.length);let r=this.scan(i,s=>{let o=i[s]-t,l=i[s+1]-t;return Vr(e.dom,o,l).getClientRects()});return r.after?new Ct(i[r.i+1],-1):new Ct(i[r.i],1)}scanTile(e,t){if(!e.length)return new Ct(t,1);if(e.children.length==1){let l=e.children[0];if(l.isText())return this.scanText(l,t);if(l.isComposite())return this.scanTile(l,t)}let i=[t];for(let l=0,a=t;l<e.children.length;l++)i.push(a+=e.children[l].length);let r=this.scan(i,l=>{let a=e.children[l];return a.flags&48?null:(a.dom.nodeType==1?a.dom:Vr(a.dom,0,a.length)).getClientRects()}),s=e.children[r.i],o=i[r.i];return s.isText()?this.scanText(s,o):s.isComposite()?this.scanTile(s,o):r.after?new Ct(i[r.i+1],-1):new Ct(o,1)}},zi="\uFFFF",Ga=class{constructor(e,t){this.points=e,this.view=t,this.text="",this.lineSeparator=t.state.facet(ke.lineSeparator)}append(e){this.text+=e}lineBreak(){this.text+=zi}readRange(e,t){if(!e)return this;let i=e.parentNode;for(let r=e;;){this.findPointBefore(i,r);let s=this.text.length;this.readNode(r);let o=Se.get(r),l=r.nextSibling;if(l==t){o?.breakAfter&&!l&&i!=this.view.contentDOM&&this.lineBreak();break}let a=Se.get(l);(o&&a?o.breakAfter:(o?o.breakAfter:po(r))||po(l)&&(r.nodeName!="BR"||o?.isWidget())&&this.text.length>s)&&!zy(l,t)&&this.lineBreak(),r=l}return this.findPointBefore(i,t),this}readTextNode(e){let t=e.nodeValue;for(let i of this.points)i.node==e&&(i.pos=this.text.length+Math.min(i.offset,t.length));for(let i=0,r=this.lineSeparator?null:/\r\n?|\n/g;;){let s=-1,o=1,l;if(this.lineSeparator?(s=t.indexOf(this.lineSeparator,i),o=this.lineSeparator.length):(l=r.exec(t))&&(s=l.index,o=l[0].length),this.append(t.slice(i,s<0?t.length:s)),s<0)break;if(this.lineBreak(),o>1)for(let a of this.points)a.node==e&&a.pos>this.text.length&&(a.pos-=o-1);i=s+o}}readNode(e){let t=Se.get(e),i=t&&t.overrideDOMText;if(i!=null){this.findPointInside(e,i.length);for(let r=i.iter();!r.next().done;)r.lineBreak?this.lineBreak():this.append(r.value)}else e.nodeType==3?this.readTextNode(e):e.nodeName=="BR"?e.nextSibling&&this.lineBreak():e.nodeType==1&&this.readRange(e.firstChild,null)}findPointBefore(e,t){for(let i of this.points)i.node==e&&e.childNodes[i.offset]==t&&(i.pos=this.text.length)}findPointInside(e,t){for(let i of this.points)(e.nodeType==3?i.node==e:e.contains(i.node))&&(i.pos=this.text.length+(Fy(e,i.node,i.offset)?t:0))}};function Fy(n,e,t){for(;;){if(!e||t<bn(e))return!1;if(e==n)return!0;t=Nn(e)+1,e=e.parentNode}}function zy(n,e){let t;for(;!(n==e||!n);n=n.nextSibling){let i=Se.get(n);if(!i?.isWidget())return!1;i&&(t||(t=[])).push(i)}if(t)for(let i of t){let r=i.overrideDOMText;if(r?.length)return!1}return!0}var yo=class{constructor(e,t){this.node=e,this.offset=t,this.pos=-1}},Xa=class{constructor(e,t,i,r){this.typeOver=r,this.bounds=null,this.text="",this.domChanged=t>-1;let{impreciseHead:s,impreciseAnchor:o}=e.docView,l=e.state.selection;if(e.state.readOnly&&t>-1)this.newSel=null;else if(t>-1&&(this.bounds=np(e.docView.tile,t,i,0))){let a=s||o?[]:Vy(e),c=new Ga(a,e);c.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=c.text,this.newSel=$y(a,this.bounds.from)}else{let a=e.observer.selectionRange,c=s&&s.node==a.focusNode&&s.offset==a.focusOffset||!La(e.contentDOM,a.focusNode)?l.main.head:e.docView.posFromDOM(a.focusNode,a.focusOffset),h=o&&o.node==a.anchorNode&&o.offset==a.anchorOffset||!La(e.contentDOM,a.anchorNode)?l.main.anchor:e.docView.posFromDOM(a.anchorNode,a.anchorOffset),u=e.viewport;if((N.ios||N.chrome)&&c!=h&&Math.min(c,h)<=l.main.from&&Math.max(c,h)>=l.main.to&&(u.from>0||u.to<e.state.doc.length)){let d=Math.min(c,h),f=Math.max(c,h),p=u.from-d,m=u.to-f;(p==0||p==1||d==0)&&(m==0||m==-1||f==e.state.doc.length)&&(c=0,h=e.state.doc.length)}if(e.inputState.composing>-1&&l.ranges.length>1)this.newSel=l.replaceRange(D.range(h,c));else if(e.lineWrapping&&h==c&&!(l.main.empty&&l.main.head==c)&&e.inputState.lastTouchTime>Date.now()-100){let d=e.coordsAtPos(c,-1),f=0;d&&(f=e.inputState.lastTouchY<=d.bottom?-1:1),this.newSel=D.create([D.cursor(c,f)])}else this.newSel=D.single(h,c)}}};function np(n,e,t,i){if(n.isComposite()){let r=-1,s=-1,o=-1,l=-1;for(let a=0,c=i,h=i;a<n.children.length;a++){let u=n.children[a],d=c+u.length;if(c<e&&d>t)return np(u,e,t,c);if(d>=e&&r==-1&&(r=a,s=c),c>t&&u.dom.parentNode==n.dom){o=a,l=h;break}h=d,c=d+u.breakAfter}return{from:s,to:l<0?i+n.length:l,startDOM:(r?n.children[r-1].dom.nextSibling:null)||n.dom.firstChild,endDOM:o<n.children.length&&o>=0?n.children[o].dom:null}}else return n.isText()?{from:i,to:i+n.length,startDOM:n.dom,endDOM:n.dom.nextSibling}:null}function ip(n,e){let t,{newSel:i}=e,{state:r}=n,s=r.selection.main,o=n.inputState.lastKeyTime>Date.now()-100?n.inputState.lastKeyCode:-1;if(e.bounds){let{from:l,to:a}=e.bounds,c=s.from,h=null;(o===8||N.android&&e.text.length<a-l)&&(c=s.to,h="end");let u=r.doc.sliceString(l,a,zi),d,f;!s.empty&&s.from>=l&&s.to<=a&&(e.typeOver||u!=e.text)&&u.slice(0,s.from-l)==e.text.slice(0,s.from-l)&&u.slice(s.to-l)==e.text.slice(d=e.text.length-(u.length-(s.to-l)))?t={from:s.from,to:s.to,insert:ne.of(e.text.slice(s.from-l,d).split(zi))}:(f=rp(u,e.text,c-l,h))&&(N.chrome&&o==13&&f.toB==f.from+2&&e.text.slice(f.from,f.toB)==zi+zi&&f.toB--,t={from:l+f.from,to:l+f.toA,insert:ne.of(e.text.slice(f.from,f.toB).split(zi))})}else i&&(!n.hasFocus&&r.facet(mn)||wo(i,s))&&(i=null);if(!t&&!i)return!1;if((N.mac||N.android)&&t&&t.from==t.to&&t.from==s.head-1&&/^\. ?$/.test(t.insert.toString())&&n.contentDOM.getAttribute("autocorrect")=="off"?(i&&t.insert.length==2&&(i=D.single(i.main.anchor-1,i.main.head-1)),t={from:t.from,to:t.to,insert:ne.of([t.insert.toString().replace("."," ")])}):r.doc.lineAt(s.from).to<s.to&&n.docView.lineHasWidget(s.to)&&n.inputState.insertingTextAt>Date.now()-50?t={from:s.from,to:s.to,insert:r.toText(n.inputState.insertingText)}:N.chrome&&t&&t.from==t.to&&t.from==s.head&&t.insert.toString()==`
597
+ `&&n.lineWrapping&&(i&&(i=D.single(i.main.anchor-1,i.main.head-1)),t={from:s.from,to:s.to,insert:ne.of([" "])}),t)return Cc(n,t,i,o);if(i&&!wo(i,s)){let l=!1,a="select";return n.inputState.lastSelectionTime>Date.now()-50&&(n.inputState.lastSelectionOrigin=="select"&&(l=!0),a=n.inputState.lastSelectionOrigin,a=="select.pointer"&&(i=tp(r.facet($r).map(c=>c(n)),i))),n.dispatch({selection:i,scrollIntoView:l,userEvent:a}),!0}else return!1}function Cc(n,e,t,i=-1){if(N.ios&&n.inputState.flushIOSKey(e))return!0;let r=n.state.selection.main;if(N.android&&(e.to==r.to&&(e.from==r.from||e.from==r.from-1&&n.state.sliceDoc(e.from,r.from)==" ")&&e.insert.length==1&&e.insert.lines==2&&ji(n.contentDOM,"Enter",13)||(e.from==r.from-1&&e.to==r.to&&e.insert.length==0||i==8&&e.insert.length<e.to-e.from&&e.to>r.head)&&ji(n.contentDOM,"Backspace",8)||e.from==r.from&&e.to==r.to+1&&e.insert.length==0&&ji(n.contentDOM,"Delete",46)))return!0;let s=e.insert.toString();n.inputState.composing>=0&&n.inputState.composing++;let o,l=()=>o||(o=Wy(n,e,t));return n.state.facet(Vf).some(a=>a(n,e.from,e.to,s,l))||n.dispatch(l()),!0}function Wy(n,e,t){let i,r=n.state,s=r.selection.main,o=-1;if(e.from==e.to&&e.from<s.from||e.from>s.to){let a=e.from<s.from?-1:1,c=a<0?s.from:s.to,h=Nr(r.facet($r).map(u=>u(n)),c,a);e.from==h&&(o=h)}if(o>-1)i={changes:e,selection:D.cursor(e.from+e.insert.length,-1)};else if(e.from>=s.from&&e.to<=s.to&&e.to-e.from>=(s.to-s.from)/3&&(!t||t.main.empty&&t.main.from==e.from+e.insert.length)&&n.inputState.composing<0){let a=s.from<e.from?r.sliceDoc(s.from,e.from):"",c=s.to>e.to?r.sliceDoc(e.to,s.to):"";i=r.replaceSelection(n.state.toText(a+e.insert.sliceString(0,void 0,n.state.lineBreak)+c))}else{let a=r.changes(e),c=t&&t.main.to<=a.newLength?t.main:void 0;if(r.selection.ranges.length>1&&(n.inputState.composing>=0||n.inputState.compositionPendingChange)&&e.to<=s.to+10&&e.to>=s.to-10){let h=n.state.sliceDoc(e.from,e.to),u,d=t&&ep(n,t.main.head);if(d){let p=e.insert.length-(e.to-e.from);u={from:d.from,to:d.to-p}}else u=n.state.doc.lineAt(s.head);let f=s.to-e.to;i=r.changeByRange(p=>{if(p.from==s.from&&p.to==s.to)return{changes:a,range:c||p.map(a)};let m=p.to-f,y=m-h.length;if(n.state.sliceDoc(y,m)!=h||m>=u.from&&y<=u.to)return{range:p};let b=r.changes({from:y,to:m,insert:e.insert}),x=p.to-s.to;return{changes:b,range:c?D.range(Math.max(0,c.anchor+x),Math.max(0,c.head+x)):p.map(b)}})}else i={changes:a,selection:c&&r.selection.replaceRange(c)}}let l="input.type";return(n.composing||n.inputState.compositionPendingChange&&n.inputState.compositionEndedAt>Date.now()-50)&&(n.inputState.compositionPendingChange=!1,l+=".compose",n.inputState.compositionFirstChange&&(l+=".start",n.inputState.compositionFirstChange=!1)),r.update(i,{userEvent:l,scrollIntoView:!0})}function rp(n,e,t,i){let r=Math.min(n.length,e.length),s=0;for(;s<r&&n.charCodeAt(s)==e.charCodeAt(s);)s++;if(s==r&&n.length==e.length)return null;let o=n.length,l=e.length;for(;o>0&&l>0&&n.charCodeAt(o-1)==e.charCodeAt(l-1);)o--,l--;if(i=="end"){let a=Math.max(0,s-Math.min(o,l));t-=o+a-s}if(o<s&&n.length<e.length){let a=t<=s&&t>=o?s-t:0;s-=a,l=s+(l-o),o=s}else if(l<s){let a=t<=s&&t>=l?s-t:0;s-=a,o=s+(o-l),l=s}return{from:s,toA:o,toB:l}}function Vy(n){let e=[];if(n.root.activeElement!=n.contentDOM)return e;let{anchorNode:t,anchorOffset:i,focusNode:r,focusOffset:s}=n.observer.selectionRange;return t&&(e.push(new yo(t,i)),(r!=t||s!=i)&&e.push(new yo(r,s))),e}function $y(n,e){if(n.length==0)return null;let t=n[0].pos,i=n.length==2?n[1].pos:t;return t>-1&&i>-1?D.single(t+e,i+e):null}function wo(n,e){return e.head==n.main.head&&e.anchor==n.main.anchor}var Ya=class{setSelectionOrigin(e){this.lastSelectionOrigin=e,this.lastSelectionTime=Date.now()}constructor(e){this.view=e,this.lastKeyCode=0,this.lastKeyTime=0,this.touchActive=!1,this.lastTouchTime=0,this.lastTouchX=0,this.lastTouchY=0,this.lastFocusTime=0,this.lastScrollTop=0,this.lastScrollLeft=0,this.lastWheelEvent=0,this.pendingIOSKey=void 0,this.lastIOSMomentumScroll=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=e.hasFocus,N.safari&&e.contentDOM.addEventListener("input",()=>null),N.gecko&&rw(e.contentDOM.ownerDocument)}handleEvent(e){!Jy(this.view,e)||this.ignoreDuringComposition(e)||e.type=="keydown"&&this.keydown(e)||(this.view.updateState!=0?Promise.resolve().then(()=>this.runHandlers(e.type,e)):this.runHandlers(e.type,e))}runHandlers(e,t){let i=this.handlers[e];if(i){for(let r of i.observers)r(this.view,t);for(let r of i.handlers){if(t.defaultPrevented)break;if(r(this.view,t)){t.preventDefault();break}}}}ensureHandlers(e){let t=jy(e),i=this.handlers,r=this.view.contentDOM;for(let s in t)if(s!="scroll"){let o=!t[s].handlers.length,l=i[s];l&&o!=!l.handlers.length&&(r.removeEventListener(s,this.handleEvent),l=null),l||r.addEventListener(s,this.handleEvent,{passive:o})}for(let s in i)s!="scroll"&&!t[s]&&r.removeEventListener(s,this.handleEvent);this.handlers=t}keydown(e){if(this.lastKeyCode=e.keyCode,this.lastKeyTime=Date.now(),e.keyCode==9&&this.tabFocusMode>-1&&(!this.tabFocusMode||Date.now()<=this.tabFocusMode))return!0;if(this.tabFocusMode>0&&e.keyCode!=27&&op.indexOf(e.keyCode)<0&&(this.tabFocusMode=-1),N.android&&N.chrome&&!e.synthetic&&(e.keyCode==13||e.keyCode==8))return this.view.observer.delayAndroidKey(e.key,e.keyCode),!0;if(N.ios&&!e.synthetic&&!e.altKey&&!e.metaKey&&(sp.some(t=>t.keyCode==e.keyCode)&&!e.ctrlKey||Ky.indexOf(e.key)>-1&&e.ctrlKey)){let t={ctrlKey:e.ctrlKey,altKey:e.altKey,metaKey:e.metaKey,shiftKey:e.shiftKey};return t.shiftKey&&N.ios&&!/^(off|none)$/.test(this.view.contentDOM.autocapitalize)&&Uy(this.view.win)&&(t.shiftKey=!1),this.pendingIOSKey={key:e.key,keyCode:e.keyCode,mods:t},setTimeout(()=>this.flushIOSKey(),50),!0}return e.keyCode!=229&&this.view.observer.forceFlush(),!1}flushIOSKey(e){let t=this.pendingIOSKey;return!t||this.view.observer.pendingRecords().length||t.key=="Enter"&&e&&e.from<e.to&&/^\S+$/.test(e.insert.toString())?!1:(this.pendingIOSKey=void 0,ji(this.view.contentDOM,t.key,t.keyCode,t.mods))}ignoreDuringComposition(e){return!/^key/.test(e.type)||e.synthetic?!1:this.composing>0?!0:N.safari&&!N.ios&&this.compositionPendingKey&&Date.now()-this.compositionEndedAt<100?(this.compositionPendingKey=!1,!0):!1}startMouseSelection(e){this.mouseSelection&&this.mouseSelection.destroy(),this.mouseSelection=e}update(e){this.view.observer.update(e),this.mouseSelection&&this.mouseSelection.update(e),this.draggedContent&&e.docChanged&&(this.draggedContent=this.draggedContent.map(e.changes)),e.transactions.length&&(this.lastKeyCode=this.lastSelectionTime=0)}destroy(){this.mouseSelection&&this.mouseSelection.destroy()}};function Uy(n){return n.visualViewport?n.visualViewport.height*n.visualViewport.scale/n.document.documentElement.clientHeight<.85:!1}function tf(n,e){return(t,i)=>{try{return e.call(n,i,t)}catch(r){Ot(t.state,r)}}}function jy(n){let e=Object.create(null);function t(i){return e[i]||(e[i]={observers:[],handlers:[]})}for(let i of n){let r=i.spec,s=r&&r.plugin.domEventHandlers,o=r&&r.plugin.domEventObservers;if(s)for(let l in s){let a=s[l];a&&t(l).handlers.push(tf(i.value,a))}if(o)for(let l in o){let a=o[l];a&&t(l).observers.push(tf(i.value,a))}}for(let i in Bt)t(i).handlers.push(Bt[i]);for(let i in it)t(i).observers.push(it[i]);return e}var sp=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],Ky="dthko",op=[16,17,18,20,91,92,224,225],to=6;function no(n){return Math.max(0,n)*.7+8}function qy(n,e){return Math.max(Math.abs(n.clientX-e.clientX),Math.abs(n.clientY-e.clientY))}var Ja=class{constructor(e,t,i,r){this.view=e,this.startEvent=t,this.style=i,this.mustSelect=r,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=t,this.scrollParents=Af(e.contentDOM),this.atoms=e.state.facet($r).map(o=>o(e));let s=e.contentDOM.ownerDocument;s.addEventListener("mousemove",this.move=this.move.bind(this)),s.addEventListener("mouseup",this.up=this.up.bind(this)),this.extend=t.shiftKey,this.multiple=e.state.facet(ke.allowMultipleSelections)&&Gy(e,t),this.dragging=Yy(e,t)&&cp(t)==1?null:!1}start(e){this.dragging===!1&&this.select(e)}move(e){if(e.buttons==0)return this.destroy();if(this.dragging||this.dragging==null&&qy(this.startEvent,e)<10)return;this.select(this.lastEvent=e);let t=0,i=0,r=0,s=0,o=this.view.win.innerWidth,l=this.view.win.innerHeight;this.scrollParents.x&&({left:r,right:o}=this.scrollParents.x.getBoundingClientRect()),this.scrollParents.y&&({top:s,bottom:l}=this.scrollParents.y.getBoundingClientRect());let a=Zf(this.view);e.clientX-a.left<=r+to?t=-no(r-e.clientX):e.clientX+a.right>=o-to&&(t=no(e.clientX-o)),e.clientY-a.top<=s+to?i=-no(s-e.clientY):e.clientY+a.bottom>=l-to&&(i=no(e.clientY-l)),this.setScrollSpeed(t,i)}up(e){this.dragging==null&&this.select(this.lastEvent),this.dragging||e.preventDefault(),this.destroy()}destroy(){this.setScrollSpeed(0,0);let e=this.view.contentDOM.ownerDocument;e.removeEventListener("mousemove",this.move),e.removeEventListener("mouseup",this.up),this.view.inputState.mouseSelection=this.view.inputState.draggedContent=null}setScrollSpeed(e,t){this.scrollSpeed={x:e,y:t},e||t?this.scrolling<0&&(this.scrolling=setInterval(()=>this.scroll(),50)):this.scrolling>-1&&(clearInterval(this.scrolling),this.scrolling=-1)}scroll(){let{x:e,y:t}=this.scrollSpeed;e&&this.scrollParents.x&&(this.scrollParents.x.scrollLeft+=e,e=0),t&&this.scrollParents.y&&(this.scrollParents.y.scrollTop+=t,t=0),(e||t)&&this.view.win.scrollBy(e,t),this.dragging===!1&&this.select(this.lastEvent)}select(e){let{view:t}=this,i=tp(this.atoms,this.style.get(e,this.extend,this.multiple));(this.mustSelect||!i.eq(t.state.selection,this.dragging===!1))&&this.view.dispatch({selection:i,userEvent:"select.pointer"}),this.mustSelect=!1}update(e){e.transactions.some(t=>t.isUserEvent("input.type"))?this.destroy():this.style.update(e)&&setTimeout(()=>this.select(this.lastEvent),20)}};function Gy(n,e){let t=n.state.facet(Hf);return t.length?t[0](e):N.mac?e.metaKey:e.ctrlKey}function Xy(n,e){let t=n.state.facet(Ff);return t.length?t[0](e):N.mac?!e.altKey:!e.ctrlKey}function Yy(n,e){let{main:t}=n.state.selection;if(t.empty)return!1;let i=zr(n.root);if(!i||i.rangeCount==0)return!0;let r=i.getRangeAt(0).getClientRects();for(let s=0;s<r.length;s++){let o=r[s];if(o.left<=e.clientX&&o.right>=e.clientX&&o.top<=e.clientY&&o.bottom>=e.clientY)return!0}return!1}function Jy(n,e){if(!e.bubbles)return!0;if(e.defaultPrevented)return!1;for(let t=e.target,i;t!=n.contentDOM;t=t.parentNode)if(!t||t.nodeType==11||(i=Se.get(t))&&i.isWidget()&&!i.isHidden&&i.widget.ignoreEvent(e))return!1;return!0}var Bt=Object.create(null),it=Object.create(null),lp=N.ie&&N.ie_version<15||N.ios&&N.webkit_version<604;function Zy(n){let e=n.dom.parentNode;if(!e)return;let t=e.appendChild(document.createElement("textarea"));t.style.cssText="position: fixed; left: -10000px; top: 10px",t.focus(),setTimeout(()=>{n.focus(),t.remove(),ap(n,t.value)},50)}function Mo(n,e,t){for(let i of n.facet(e))t=i(t,n);return t}function ap(n,e){e=Mo(n.state,xc,e);let{state:t}=n,i,r=1,s=t.toText(e),o=s.lines==t.selection.ranges.length;if(Za!=null&&t.selection.ranges.every(a=>a.empty)&&Za==s.toString()){let a=-1;i=t.changeByRange(c=>{let h=t.doc.lineAt(c.from);if(h.from==a)return{range:c};a=h.from;let u=t.toText((o?s.line(r++).text:e)+t.lineBreak);return{changes:{from:h.from,insert:u},range:D.cursor(c.from+u.length)}})}else o?i=t.changeByRange(a=>{let c=s.line(r++);return{changes:{from:a.from,to:a.to,insert:c.text},range:D.cursor(a.from+c.length)}}):i=t.replaceSelection(s);n.dispatch(i,{userEvent:"input.paste",scrollIntoView:!0})}it.scroll=n=>{let e=n.inputState;e.lastScrollTop=n.scrollDOM.scrollTop,e.lastScrollLeft=n.scrollDOM.scrollLeft,N.ios&&!e.touchActive&&(e.lastIOSMomentumScroll=Date.now())};it.wheel=it.mousewheel=n=>{n.inputState.lastWheelEvent=Date.now()};Bt.keydown=(n,e)=>(n.inputState.setSelectionOrigin("select"),e.keyCode==27&&n.inputState.tabFocusMode!=0&&(n.inputState.tabFocusMode=Date.now()+2e3),!1);it.touchstart=(n,e)=>{let t=n.inputState,i=e.targetTouches[0];t.touchActive=!0,t.lastTouchTime=Date.now(),i&&(t.lastTouchX=i.clientX,t.lastTouchY=i.clientY),t.setSelectionOrigin("select.pointer")};it.touchmove=n=>{n.inputState.setSelectionOrigin("select.pointer")};it.touchend=(n,e)=>{n.inputState.touchActive=!1};Bt.mousedown=(n,e)=>{if(n.observer.flush(),n.inputState.lastTouchTime>Date.now()-2e3)return!1;let t=null;for(let i of n.state.facet(zf))if(t=i(n,e),t)break;if(!t&&e.button==0&&(t=ew(n,e)),t){let i=!n.hasFocus;n.inputState.startMouseSelection(new Ja(n,e,t,i)),i&&n.observer.ignore(()=>{Rf(n.contentDOM);let s=n.root.activeElement;s&&!s.contains(n.contentDOM)&&s.blur()});let r=n.inputState.mouseSelection;if(r)return r.start(e),r.dragging===!1}else n.inputState.setSelectionOrigin("select.pointer");return!1};function nf(n,e,t,i){if(i==1)return D.cursor(e,t);if(i==2)return Iy(n.state,e,t);{let r=n.docView.lineAt(e,t),s=n.state.doc.lineAt(r?r.posAtEnd:e),o=r?r.posAtStart:s.from,l=r?r.posAtEnd:s.to;return l<n.state.doc.length&&l==s.to&&l++,D.undirectionalRange(o,l)}}var Qy=N.ie&&N.ie_version<=11,rf=null,sf=0,of=0;function cp(n){if(!Qy)return n.detail;let e=rf,t=of;return rf=n,of=Date.now(),sf=!e||t>Date.now()-400&&Math.abs(e.clientX-n.clientX)<2&&Math.abs(e.clientY-n.clientY)<2?(sf+1)%3:1}function ew(n,e){let t=n.posAndSideAtCoords({x:e.clientX,y:e.clientY},!1),i=cp(e),r=n.state.selection;return{update(s){s.docChanged&&(t.pos=s.changes.mapPos(t.pos),r=r.map(s.changes))},get(s,o,l){let a=n.posAndSideAtCoords({x:s.clientX,y:s.clientY},!1),c,h=nf(n,a.pos,a.assoc,i);if(t.pos!=a.pos&&!o){let u=nf(n,t.pos,t.assoc,i),d=Math.min(u.from,h.from),f=Math.max(u.to,h.to);h=d<h.from?D.range(d,f,h.assoc):D.range(f,d,h.assoc)}return o?r.replaceRange(r.main.extend(h.from,h.to,h.assoc)):l&&i==1&&r.ranges.length>1&&(c=tw(r,a.pos))?c:l?r.addRange(h):D.create([h])}}}function tw(n,e){for(let t=0;t<n.ranges.length;t++){let{from:i,to:r}=n.ranges[t];if(i<=e&&r>=e)return D.create(n.ranges.slice(0,t).concat(n.ranges.slice(t+1)),n.mainIndex==t?0:n.mainIndex-(n.mainIndex>t?1:0))}return null}Bt.dragstart=(n,e)=>{let{selection:{main:t}}=n.state;if(e.target.draggable){let r=n.docView.tile.nearest(e.target);if(r&&r.isWidget()){let s=r.posAtStart,o=s+r.length;(s>=t.to||o<=t.from)&&(t=D.undirectionalRange(s,o))}}let{inputState:i}=n;return i.mouseSelection&&(i.mouseSelection.dragging=!0),i.draggedContent=t,e.dataTransfer&&(e.dataTransfer.setData("Text",Mo(n.state,vc,n.state.sliceDoc(t.from,t.to))),e.dataTransfer.effectAllowed="copyMove"),!1};Bt.dragend=n=>(n.inputState.draggedContent=null,!1);function lf(n,e,t,i){if(t=Mo(n.state,xc,t),!t)return;let r=n.posAtCoords({x:e.clientX,y:e.clientY},!1),{draggedContent:s}=n.inputState,o=i&&s&&Xy(n,e)?{from:s.from,to:s.to}:null,l={from:r,insert:t},a=n.state.changes(o?[o,l]:l);n.focus(),n.dispatch({changes:a,selection:{anchor:a.mapPos(r,-1),head:a.mapPos(r,1)},userEvent:o?"move.drop":"input.drop"}),n.inputState.draggedContent=null}Bt.drop=(n,e)=>{if(!e.dataTransfer)return!1;if(n.state.readOnly)return!0;let t=e.dataTransfer.files;if(t&&t.length){let i=Array(t.length),r=0,s=()=>{++r==t.length&&lf(n,e,i.filter(o=>o!=null).join(n.state.lineBreak),!1)};for(let o=0;o<t.length;o++){let l=new FileReader;l.onerror=s,l.onload=()=>{/[\x00-\x08\x0e-\x1f]{2}/.test(l.result)||(i[o]=l.result),s()},l.readAsText(t[o])}return!0}else{let i=e.dataTransfer.getData("Text");if(i)return lf(n,e,i,!0),!0}return!1};Bt.paste=(n,e)=>{if(n.state.readOnly)return!0;n.observer.flush();let t=lp?null:e.clipboardData;return t?(ap(n,t.getData("text/plain")||t.getData("text/uri-list")),!0):(Zy(n),!1)};function nw(n,e){let t=n.dom.parentNode;if(!t)return;let i=t.appendChild(document.createElement("textarea"));i.style.cssText="position: fixed; left: -10000px; top: 10px",i.value=e,i.focus(),i.selectionEnd=e.length,i.selectionStart=0,setTimeout(()=>{i.remove(),n.focus()},50)}function iw(n){let e=[],t=[],i=!1;for(let r of n.selection.ranges)r.empty||(e.push(n.sliceDoc(r.from,r.to)),t.push(r));if(!e.length){let r=-1;for(let{from:s}of n.selection.ranges){let o=n.doc.lineAt(s);o.number>r&&(e.push(o.text),t.push({from:o.from,to:Math.min(n.doc.length,o.to+1)})),r=o.number}i=!0}return{text:Mo(n,vc,e.join(n.lineBreak)),ranges:t,linewise:i}}var Za=null;Bt.copy=Bt.cut=(n,e)=>{if(!Rr(n.contentDOM,n.observer.selectionRange))return!1;let{text:t,ranges:i,linewise:r}=iw(n.state);if(!t&&!r)return!1;Za=r?t:null,e.type=="cut"&&!n.state.readOnly&&n.dispatch({changes:i,scrollIntoView:!0,userEvent:"delete.cut"});let s=lp?null:e.clipboardData;return s?(s.clearData(),s.setData("text/plain",t),!0):(nw(n,t),!1)};var hp=ht.define();function up(n,e){let t=[];for(let i of n.facet($f)){let r=i(n,e);r&&t.push(r)}return t.length?n.update({effects:t,annotations:hp.of(!0)}):null}function dp(n){setTimeout(()=>{let e=n.hasFocus;if(e!=n.inputState.notifiedFocused){let t=up(n.state,e);t?n.dispatch(t):n.update([])}},10)}it.focus=n=>{n.inputState.lastFocusTime=Date.now(),!n.scrollDOM.scrollTop&&(n.inputState.lastScrollTop||n.inputState.lastScrollLeft)&&(n.scrollDOM.scrollTop=n.inputState.lastScrollTop,n.scrollDOM.scrollLeft=n.inputState.lastScrollLeft),dp(n)};it.blur=n=>{n.observer.clearSelectionRange(),dp(n)};it.compositionstart=it.compositionupdate=n=>{if(!n.observer.editContext&&(n.inputState.compositionFirstChange==null&&(n.inputState.compositionFirstChange=!0),n.inputState.composing<0)){let{main:e}=n.state.selection;!e.empty&&n.lineBlockAt(e.from).from!=n.lineBlockAt(e.to).from&&n.dispatch({changes:n.state.selection.ranges.filter(t=>!t.empty).map(t=>({from:t.from,to:t.to})),userEvent:"input"}),n.inputState.composing=0}};it.compositionend=n=>{n.observer.editContext||(n.inputState.composing=-1,n.inputState.compositionEndedAt=Date.now(),n.inputState.compositionPendingKey=!0,n.inputState.compositionPendingChange=n.observer.pendingRecords().length>0,n.inputState.compositionFirstChange=null,N.chrome&&N.android?n.observer.flushSoon():n.inputState.compositionPendingChange?Promise.resolve().then(()=>n.observer.flush()):setTimeout(()=>{n.inputState.composing<0&&n.docView.hasComposition&&n.update([])},50))};it.contextmenu=n=>{n.inputState.lastContextMenu=Date.now()};Bt.beforeinput=(n,e)=>{var t,i;if((e.inputType=="insertText"||e.inputType=="insertCompositionText")&&(n.inputState.insertingText=e.data,n.inputState.insertingTextAt=Date.now()),e.inputType=="insertReplacementText"&&n.observer.editContext){let s=(t=e.dataTransfer)===null||t===void 0?void 0:t.getData("text/plain"),o=e.getTargetRanges();if(s&&o.length){let l=o[0],a=n.posAtDOM(l.startContainer,l.startOffset),c=n.posAtDOM(l.endContainer,l.endOffset);return Cc(n,{from:a,to:c,insert:n.state.toText(s)},null),!0}}let r;if(N.chrome&&N.android&&(r=sp.find(s=>s.inputType==e.inputType))&&(n.observer.delayAndroidKey(r.key,r.keyCode),r.key=="Backspace"||r.key=="Delete")){let s=((i=window.visualViewport)===null||i===void 0?void 0:i.height)||0;setTimeout(()=>{var o;(((o=window.visualViewport)===null||o===void 0?void 0:o.height)||0)>s+10&&n.hasFocus&&(n.contentDOM.blur(),n.focus())},100)}return N.ios&&e.inputType=="deleteContentForward"&&n.observer.flushSoon(),N.safari&&e.inputType=="insertText"&&n.inputState.composing>=0&&setTimeout(()=>it.compositionend(n,e),20),!1};var af=new Set;function rw(n){af.has(n)||(af.add(n),n.addEventListener("copy",()=>{}),n.addEventListener("cut",()=>{}))}var cf=["pre-wrap","normal","pre-line","break-spaces"],Yi=!1;function hf(){Yi=!1}var Qa=class{constructor(e){this.lineWrapping=e,this.doc=ne.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30}heightForGap(e,t){let i=this.doc.lineAt(t).number-this.doc.lineAt(e).number+1;return this.lineWrapping&&(i+=Math.max(0,Math.ceil((t-e-i*this.lineLength*.5)/this.lineLength))),this.lineHeight*i}heightForLine(e){return this.lineWrapping?(1+Math.max(0,Math.ceil((e-this.lineLength)/Math.max(1,this.lineLength-5))))*this.lineHeight:this.lineHeight}setDoc(e){return this.doc=e,this}mustRefreshForWrapping(e){return cf.indexOf(e)>-1!=this.lineWrapping}mustRefreshForHeights(e){let t=!1;for(let i=0;i<e.length;i++){let r=e[i];r<0?i++:this.heightSamples[Math.floor(r*10)]||(t=!0,this.heightSamples[Math.floor(r*10)]=!0)}return t}refresh(e,t,i,r,s,o){let l=cf.indexOf(e)>-1,a=Math.abs(t-this.lineHeight)>.3||this.lineWrapping!=l;if(this.lineWrapping=l,this.lineHeight=t,this.charWidth=i,this.textHeight=r,this.lineLength=s,a){this.heightSamples={};for(let c=0;c<o.length;c++){let h=o[c];h<0?c++:this.heightSamples[Math.floor(h*10)]=!0}}return a}},ec=class{constructor(e,t){this.from=e,this.heights=t,this.index=0}get more(){return this.index<this.heights.length}},Pt=class n{constructor(e,t,i,r,s){this.from=e,this.length=t,this.top=i,this.height=r,this._content=s}get type(){return typeof this._content=="number"?Ue.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 ci?this._content.widget:null}get widgetLineBreaks(){return typeof this._content=="number"?this._content:0}join(e){let t=(Array.isArray(this._content)?this._content:[this]).concat(Array.isArray(e._content)?e._content:[e]);return new n(this.from,this.length+e.length,this.top,this.height+e.height,t)}},pe=(function(n){return n[n.ByPos=0]="ByPos",n[n.ByHeight=1]="ByHeight",n[n.ByPosNoHeight=2]="ByPosNoHeight",n})(pe||(pe={})),lo=.001,gt=class n{constructor(e,t,i=2){this.length=e,this.height=t,this.flags=i}get outdated(){return(this.flags&2)>0}set outdated(e){this.flags=(e?2:0)|this.flags&-3}setHeight(e){this.height!=e&&(Math.abs(this.height-e)>lo&&(Yi=!0),this.height=e)}replace(e,t,i){return n.of(i)}decomposeLeft(e,t){t.push(this)}decomposeRight(e,t){t.push(this)}applyChanges(e,t,i,r){let s=this,o=i.doc;for(let l=r.length-1;l>=0;l--){let{fromA:a,toA:c,fromB:h,toB:u}=r[l],d=s.lineAt(a,pe.ByPosNoHeight,i.setDoc(t),0,0),f=d.to>=c?d:s.lineAt(c,pe.ByPosNoHeight,i,0,0);for(u+=f.to-c,c=f.to;l>0&&d.from<=r[l-1].toA;)a=r[l-1].fromA,h=r[l-1].fromB,l--,a<d.from&&(d=s.lineAt(a,pe.ByPosNoHeight,i,0,0));h+=d.from-a,a=d.from;let p=nc.build(i.setDoc(o),e,h,u);s=xo(s,s.replace(a,c,p))}return s.updateHeight(i,0)}static empty(){return new St(0,0,0)}static of(e){if(e.length==1)return e[0];let t=0,i=e.length,r=0,s=0;for(;;)if(t==i)if(r>s*2){let l=e[t-1];l.break?e.splice(--t,1,l.left,null,l.right):e.splice(--t,1,l.left,l.right),i+=1+l.break,r-=l.size}else if(s>r*2){let l=e[i];l.break?e.splice(i,1,l.left,null,l.right):e.splice(i,1,l.left,l.right),i+=2+l.break,s-=l.size}else break;else if(r<s){let l=e[t++];l&&(r+=l.size)}else{let l=e[--i];l&&(s+=l.size)}let o=0;return e[t-1]==null?(o=1,t--):e[t]==null&&(o=1,i++),new tc(n.of(e.slice(0,t)),o,n.of(e.slice(i)))}};function xo(n,e){return n==e?n:(n.constructor!=e.constructor&&(Yi=!0),e)}gt.prototype.size=1;var sw=me.replace({}),vo=class extends gt{constructor(e,t,i){super(e,t),this.deco=i,this.spaceAbove=0}mainBlock(e,t){return new Pt(t,this.length,e+this.spaceAbove,this.height-this.spaceAbove,this.deco||0)}blockAt(e,t,i,r){return this.spaceAbove&&e<i+this.spaceAbove?new Pt(r,0,i,this.spaceAbove,sw):this.mainBlock(i,r)}lineAt(e,t,i,r,s){let o=this.mainBlock(r,s);return this.spaceAbove?this.blockAt(0,i,r,s).join(o):o}forEachLine(e,t,i,r,s,o){e<=s+this.length&&t>=s&&o(this.lineAt(0,pe.ByPos,i,r,s))}setMeasuredHeight(e){let t=e.heights[e.index++];t<0?(this.spaceAbove=-t,t=e.heights[e.index++]):this.spaceAbove=0,this.setHeight(t)}updateHeight(e,t=0,i=!1,r){return r&&r.from<=t&&r.more&&this.setMeasuredHeight(r),this.outdated=!1,this}toString(){return`block(${this.length})`}},St=class n extends vo{constructor(e,t,i){super(e,t,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0,this.spaceAbove=i}mainBlock(e,t){return new Pt(t,this.length,e+this.spaceAbove,this.height-this.spaceAbove,this.breaks)}replace(e,t,i){let r=i[0];return i.length==1&&(r instanceof n||r instanceof On&&r.flags&4)&&Math.abs(this.length-r.length)<10?(r instanceof On?r=new n(r.length,this.height,this.spaceAbove):r.height=this.height,this.outdated||(r.outdated=!1),r):gt.of(i)}updateHeight(e,t=0,i=!1,r){return r&&r.from<=t&&r.more?this.setMeasuredHeight(r):(i||this.outdated)&&(this.spaceAbove=0,this.setHeight(Math.max(this.widgetHeight,e.heightForLine(this.length-this.collapsed))+this.breaks*e.lineHeight)),this.outdated=!1,this}toString(){return`line(${this.length}${this.collapsed?-this.collapsed:""}${this.widgetHeight?":"+this.widgetHeight:""})`}},On=class n extends gt{constructor(e){super(e,0)}heightMetrics(e,t){let i=e.doc.lineAt(t).number,r=e.doc.lineAt(t+this.length).number,s=r-i+1,o,l=0;if(e.lineWrapping){let a=Math.min(this.height,e.lineHeight*s);o=a/s,this.length>s+1&&(l=(this.height-a)/(this.length-s-1))}else o=this.height/s;return{firstLine:i,lastLine:r,perLine:o,perChar:l}}blockAt(e,t,i,r){let{firstLine:s,lastLine:o,perLine:l,perChar:a}=this.heightMetrics(t,r);if(t.lineWrapping){let c=r+(e<t.lineHeight?0:Math.round(Math.max(0,Math.min(1,(e-i)/this.height))*this.length)),h=t.doc.lineAt(c),u=l+h.length*a,d=Math.max(i,e-u/2);return new Pt(h.from,h.length,d,u,0)}else{let c=Math.max(0,Math.min(o-s,Math.floor((e-i)/l))),{from:h,length:u}=t.doc.line(s+c);return new Pt(h,u,i+l*c,l,0)}}lineAt(e,t,i,r,s){if(t==pe.ByHeight)return this.blockAt(e,i,r,s);if(t==pe.ByPosNoHeight){let{from:f,to:p}=i.doc.lineAt(e);return new Pt(f,p-f,0,0,0)}let{firstLine:o,perLine:l,perChar:a}=this.heightMetrics(i,s),c=i.doc.lineAt(e),h=l+c.length*a,u=c.number-o,d=r+l*u+a*(c.from-s-u);return new Pt(c.from,c.length,Math.max(r,Math.min(d,r+this.height-h)),h,0)}forEachLine(e,t,i,r,s,o){e=Math.max(e,s),t=Math.min(t,s+this.length);let{firstLine:l,perLine:a,perChar:c}=this.heightMetrics(i,s);for(let h=e,u=r;h<=t;){let d=i.doc.lineAt(h);if(h==e){let p=d.number-l;u+=a*p+c*(e-s-p)}let f=a+c*d.length;o(new Pt(d.from,d.length,u,f,0)),u+=f,h=d.to+1}}replace(e,t,i){let r=this.length-t;if(r>0){let s=i[i.length-1];s instanceof n?i[i.length-1]=new n(s.length+r):i.push(null,new n(r-1))}if(e>0){let s=i[0];s instanceof n?i[0]=new n(e+s.length):i.unshift(new n(e-1),null)}return gt.of(i)}decomposeLeft(e,t){t.push(new n(e-1),null)}decomposeRight(e,t){t.push(null,new n(this.length-e-1))}updateHeight(e,t=0,i=!1,r){let s=t+this.length;if(r&&r.from<=t+this.length&&r.more){let o=[],l=Math.max(t,r.from),a=-1;for(r.from>t&&o.push(new n(r.from-t-1).updateHeight(e,t));l<=s&&r.more;){let h=e.doc.lineAt(l).length;o.length&&o.push(null);let u=r.heights[r.index++],d=0;u<0&&(d=-u,u=r.heights[r.index++]),a==-1?a=u:Math.abs(u-a)>=lo&&(a=-2);let f=new St(h,u,d);f.outdated=!1,o.push(f),l+=h+1}l<=s&&o.push(null,new n(s-l).updateHeight(e,l));let c=gt.of(o);return(a<0||Math.abs(c.height-this.height)>=lo||Math.abs(a-this.heightMetrics(e,t).perLine)>=lo)&&(Yi=!0),xo(this,c)}else(i||this.outdated)&&(this.setHeight(e.heightForGap(t,t+this.length)),this.outdated=!1);return this}toString(){return`gap(${this.length})`}},tc=class extends gt{constructor(e,t,i){super(e.length+t+i.length,e.height+i.height,t|(e.outdated||i.outdated?2:0)),this.left=e,this.right=i,this.size=e.size+i.size}get break(){return this.flags&1}blockAt(e,t,i,r){let s=i+this.left.height;return e<s?this.left.blockAt(e,t,i,r):this.right.blockAt(e,t,s,r+this.left.length+this.break)}lineAt(e,t,i,r,s){let o=r+this.left.height,l=s+this.left.length+this.break,a=t==pe.ByHeight?e<o:e<l,c=a?this.left.lineAt(e,t,i,r,s):this.right.lineAt(e,t,i,o,l);if(this.break||(a?c.to<l:c.from>l))return c;let h=t==pe.ByPosNoHeight?pe.ByPosNoHeight:pe.ByPos;return a?c.join(this.right.lineAt(l,h,i,o,l)):this.left.lineAt(l,h,i,r,s).join(c)}forEachLine(e,t,i,r,s,o){let l=r+this.left.height,a=s+this.left.length+this.break;if(this.break)e<a&&this.left.forEachLine(e,t,i,r,s,o),t>=a&&this.right.forEachLine(e,t,i,l,a,o);else{let c=this.lineAt(a,pe.ByPos,i,r,s);e<c.from&&this.left.forEachLine(e,c.from-1,i,r,s,o),c.to>=e&&c.from<=t&&o(c),t>c.to&&this.right.forEachLine(c.to+1,t,i,l,a,o)}}replace(e,t,i){let r=this.left.length+this.break;if(t<r)return this.balanced(this.left.replace(e,t,i),this.right);if(e>this.left.length)return this.balanced(this.left,this.right.replace(e-r,t-r,i));let s=[];e>0&&this.decomposeLeft(e,s);let o=s.length;for(let l of i)s.push(l);if(e>0&&uf(s,o-1),t<this.length){let l=s.length;this.decomposeRight(t,s),uf(s,l)}return gt.of(s)}decomposeLeft(e,t){let i=this.left.length;if(e<=i)return this.left.decomposeLeft(e,t);t.push(this.left),this.break&&(i++,e>=i&&t.push(null)),e>i&&this.right.decomposeLeft(e-i,t)}decomposeRight(e,t){let i=this.left.length,r=i+this.break;if(e>=r)return this.right.decomposeRight(e-r,t);e<i&&this.left.decomposeRight(e,t),this.break&&e<r&&t.push(null),t.push(this.right)}balanced(e,t){return e.size>2*t.size||t.size>2*e.size?gt.of(this.break?[e,null,t]:[e,t]):(this.left=xo(this.left,e),this.right=xo(this.right,t),this.setHeight(e.height+t.height),this.outdated=e.outdated||t.outdated,this.size=e.size+t.size,this.length=e.length+this.break+t.length,this)}updateHeight(e,t=0,i=!1,r){let{left:s,right:o}=this,l=t+s.length+this.break,a=null;return r&&r.from<=t+s.length&&r.more?a=s=s.updateHeight(e,t,i,r):s.updateHeight(e,t,i),r&&r.from<=l+o.length&&r.more?a=o=o.updateHeight(e,l,i,r):o.updateHeight(e,l,i),a?this.balanced(s,o):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}};function uf(n,e){let t,i;n[e]==null&&(t=n[e-1])instanceof On&&(i=n[e+1])instanceof On&&n.splice(e-1,3,new On(t.length+1+i.length))}var ow=5,nc=class n{constructor(e,t){this.pos=e,this.oracle=t,this.nodes=[],this.lineStart=-1,this.lineEnd=-1,this.covering=null,this.writtenTo=e}get isCovered(){return this.covering&&this.nodes[this.nodes.length-1]==this.covering}span(e,t){if(this.lineStart>-1){let i=Math.min(t,this.lineEnd),r=this.nodes[this.nodes.length-1];r instanceof St?r.length+=i-this.pos:(i>this.pos||!this.isCovered)&&this.nodes.push(new St(i-this.pos,-1,0)),this.writtenTo=i,t>i&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=t}point(e,t,i){if(e<t||i.heightRelevant){let r=i.widget?i.widget.estimatedHeight:0,s=i.widget?i.widget.lineBreaks:0;r<0&&(r=this.oracle.lineHeight);let o=t-e;i.block?this.addBlock(new vo(o,r,i)):(o||s||r>=ow)&&this.addLineDeco(r,s,o)}else t>e&&this.span(e,t);this.lineEnd>-1&&this.lineEnd<this.pos&&(this.lineEnd=this.oracle.doc.lineAt(this.pos).to)}enterLine(){if(this.lineStart>-1)return;let{from:e,to:t}=this.oracle.doc.lineAt(this.pos);this.lineStart=e,this.lineEnd=t,this.writtenTo<e&&((this.writtenTo<e-1||this.nodes[this.nodes.length-1]==null)&&this.nodes.push(this.blankContent(this.writtenTo,e-1)),this.nodes.push(null)),this.pos>e&&this.nodes.push(new St(this.pos-e,-1,0)),this.writtenTo=this.pos}blankContent(e,t){let i=new On(t-e);return this.oracle.doc.lineAt(e).to==t&&(i.flags|=4),i}ensureLine(){this.enterLine();let e=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(e instanceof St)return e;let t=new St(0,-1,0);return this.nodes.push(t),t}addBlock(e){this.enterLine();let t=e.deco;t&&t.startSide>0&&!this.isCovered&&this.ensureLine(),this.nodes.push(e),this.writtenTo=this.pos=this.pos+e.length,t&&t.endSide>0&&(this.covering=e)}addLineDeco(e,t,i){let r=this.ensureLine();r.length+=i,r.collapsed+=i,r.widgetHeight=Math.max(r.widgetHeight,e),r.breaks+=t,this.writtenTo=this.pos=this.pos+i}finish(e){let t=this.nodes.length==0?null:this.nodes[this.nodes.length-1];this.lineStart>-1&&!(t instanceof St)&&!this.isCovered?this.nodes.push(new St(0,-1,0)):(this.writtenTo<this.pos||t==null)&&this.nodes.push(this.blankContent(this.writtenTo,this.pos));let i=e;for(let r of this.nodes)r instanceof St&&r.updateHeight(this.oracle,i),i+=r?r.length:1;return this.nodes}static build(e,t,i,r){let s=new n(i,e);return he.spans(t,i,r,s,0),s.finish(i)}};function lw(n,e,t){let i=new ic;return he.compare(n,e,t,i,0),i.changes}var ic=class{constructor(){this.changes=[]}compareRange(){}comparePoint(e,t,i,r){(e<t||i&&i.heightRelevant||r&&r.heightRelevant)&&Ui(e,t,this.changes,5)}};function aw(n,e){let t=n.getBoundingClientRect(),i=n.ownerDocument,r=i.defaultView||window,s=Math.max(0,t.left),o=Math.min(r.innerWidth,t.right),l=Math.max(0,t.top),a=Math.min(r.innerHeight,t.bottom);for(let c=n.parentNode;c&&c!=i.body;)if(c.nodeType==1){let h=c,u=window.getComputedStyle(h);if((h.scrollHeight>h.clientHeight||h.scrollWidth>h.clientWidth)&&u.overflow!="visible"){let d=h.getBoundingClientRect();s=Math.max(s,d.left),o=Math.min(o,d.right),l=Math.max(l,d.top),a=Math.min(c==n.parentNode?r.innerHeight:a,d.bottom)}c=u.position=="absolute"||u.position=="fixed"?h.offsetParent:h.parentNode}else if(c.nodeType==11)c=c.host;else break;return{left:s-t.left,right:Math.max(s,o)-t.left,top:l-(t.top+e),bottom:Math.max(l,a)-(t.top+e)}}function cw(n){let e=n.getBoundingClientRect(),t=n.ownerDocument.defaultView||window;return e.left<t.innerWidth&&e.right>0&&e.top<t.innerHeight&&e.bottom>0}function hw(n,e){let t=n.getBoundingClientRect();return{left:0,right:t.right-t.left,top:e,bottom:t.bottom-(t.top+e)}}var Br=class{constructor(e,t,i,r){this.from=e,this.to=t,this.size=i,this.displaySize=r}static same(e,t){if(e.length!=t.length)return!1;for(let i=0;i<e.length;i++){let r=e[i],s=t[i];if(r.from!=s.from||r.to!=s.to||r.size!=s.size)return!1}return!0}draw(e,t){return me.replace({widget:new rc(this.displaySize*(t?e.scaleY:e.scaleX),t)}).range(this.from,this.to)}},rc=class extends In{constructor(e,t){super(),this.size=e,this.vertical=t}eq(e){return e.size==this.size&&e.vertical==this.vertical}toDOM(){let e=document.createElement("div");return this.vertical?e.style.height=this.size+"px":(e.style.width=this.size+"px",e.style.height="2px",e.style.display="inline-block"),e}get estimatedHeight(){return this.vertical?this.size:-1}},ko=class{constructor(e,t){this.view=e,this.state=t,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.scaleX=1,this.scaleY=1,this.scrollOffset=0,this.scrolledToBottom=!1,this.scrollAnchorPos=0,this.scrollAnchorHeight=-1,this.scaler=df,this.scrollTarget=null,this.printing=!1,this.mustMeasureContent=!0,this.defaultTextDirection=ge.LTR,this.visibleRanges=[],this.mustEnforceCursorAssoc=!1;let i=t.facet(kc).some(r=>typeof r!="function"&&r.class=="cm-lineWrapping");this.heightOracle=new Qa(i),this.stateDeco=ff(t),this.heightMap=gt.empty().applyChanges(this.stateDeco,ne.empty,this.heightOracle.setDoc(t.doc),[new It(0,0,0,t.doc.length)]);for(let r=0;r<2&&(this.viewport=this.getViewport(0,null),!!this.updateForViewport());r++);this.updateViewportLines(),this.lineGaps=this.ensureLineGaps([]),this.lineGapDeco=me.set(this.lineGaps.map(r=>r.draw(this,!1))),this.scrollParent=e.scrollDOM,this.computeVisibleRanges()}updateForViewport(){let e=[this.viewport],{main:t}=this.state.selection;for(let i=0;i<=1;i++){let r=i?t.head:t.anchor;if(!e.some(({from:s,to:o})=>r>=s&&r<=o)){let{from:s,to:o}=this.lineBlockAt(r);e.push(new Vi(s,o))}}return this.viewports=e.sort((i,r)=>i.from-r.from),this.updateScaler()}updateScaler(){let e=this.scaler;return this.scaler=this.heightMap.height<=7e6?df:new sc(this.heightOracle,this.heightMap,this.viewports),e.eq(this.scaler)?0:2}updateViewportLines(){this.viewportLines=[],this.heightMap.forEachLine(this.viewport.from,this.viewport.to,this.heightOracle.setDoc(this.state.doc),0,0,e=>{this.viewportLines.push(Er(e,this.scaler))})}update(e,t=null){this.state=e.state;let i=this.stateDeco;this.stateDeco=ff(this.state);let r=e.changedRanges,s=It.extendWithRanges(r,lw(i,this.stateDeco,e?e.changes:tt.empty(this.state.doc.length))),o=this.heightMap.height,l=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollOffset);hf(),this.heightMap=this.heightMap.applyChanges(this.stateDeco,e.startState.doc,this.heightOracle.setDoc(this.state.doc),s),(this.heightMap.height!=o||Yi)&&(e.flags|=2),l?(this.scrollAnchorPos=e.changes.mapPos(l.from,-1),this.scrollAnchorHeight=l.top):(this.scrollAnchorPos=-1,this.scrollAnchorHeight=o);let a=s.length?this.mapViewport(this.viewport,e.changes):this.viewport;(t&&(t.range.head<a.from||t.range.head>a.to)||!this.viewportIsAppropriate(a))&&(a=this.getViewport(0,t));let c=a.from!=this.viewport.from||a.to!=this.viewport.to;this.viewport=a,e.flags|=this.updateForViewport(),(c||!e.changes.empty||e.flags&2)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps,e.changes))),e.flags|=this.computeVisibleRanges(e.changes),t&&(this.scrollTarget=t),!this.mustEnforceCursorAssoc&&(e.selectionSet||e.focusChanged)&&e.view.lineWrapping&&e.state.selection.main.empty&&e.state.selection.main.assoc&&!e.state.facet(jf)&&(this.mustEnforceCursorAssoc=!0)}measure(){let{view:e}=this,t=e.contentDOM,i=window.getComputedStyle(t),r=this.heightOracle,s=i.whiteSpace;this.defaultTextDirection=i.direction=="rtl"?ge.RTL:ge.LTR;let o=this.heightOracle.mustRefreshForWrapping(s)||this.mustMeasureContent==="refresh",l=t.getBoundingClientRect(),a=o||this.mustMeasureContent||this.contentDOMHeight!=l.height;this.contentDOMHeight=l.height,this.mustMeasureContent=!1;let c=0,h=0;if(l.width&&l.height){let{scaleX:C,scaleY:S}=Tf(t,l);(C>.005&&Math.abs(this.scaleX-C)>.005||S>.005&&Math.abs(this.scaleY-S)>.005)&&(this.scaleX=C,this.scaleY=S,c|=16,o=a=!0)}let u=(parseInt(i.paddingTop)||0)*this.scaleY,d=(parseInt(i.paddingBottom)||0)*this.scaleY;(this.paddingTop!=u||this.paddingBottom!=d)&&(this.paddingTop=u,this.paddingBottom=d,c|=18),this.editorWidth!=e.scrollDOM.clientWidth&&(r.lineWrapping&&(a=!0),this.editorWidth=e.scrollDOM.clientWidth,c|=16);let f=Af(this.view.contentDOM,!1).y;f!=this.scrollParent&&(this.scrollParent=f,this.scrollAnchorHeight=-1,this.scrollOffset=0);let p=this.getScrollOffset();this.scrollOffset!=p&&(this.scrollAnchorHeight=-1,this.scrollOffset=p),this.scrolledToBottom=Df(this.scrollParent||e.win);let m=(this.printing?hw:aw)(t,this.paddingTop),y=m.top-this.pixelViewport.top,b=m.bottom-this.pixelViewport.bottom;this.pixelViewport=m;let x=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if(x!=this.inView&&(this.inView=x,x&&(a=!0)),!this.inView&&!this.scrollTarget&&!cw(e.dom))return 0;let k=l.width;if((this.contentDOMWidth!=k||this.editorHeight!=e.scrollDOM.clientHeight)&&(this.contentDOMWidth=l.width,this.editorHeight=e.scrollDOM.clientHeight,c|=16),a){let C=e.docView.measureVisibleLineHeights(this.viewport);if(r.mustRefreshForHeights(C)&&(o=!0),o||r.lineWrapping&&Math.abs(k-this.contentDOMWidth)>r.charWidth){let{lineHeight:S,charWidth:A,textHeight:$}=e.docView.measureTextSize();o=S>0&&r.refresh(s,S,A,$,Math.max(5,k/A),C),o&&(e.docView.minWidth=0,c|=16)}y>0&&b>0?h=Math.max(y,b):y<0&&b<0&&(h=Math.min(y,b)),hf();for(let S of this.viewports){let A=S.from==this.viewport.from?C:e.docView.measureVisibleLineHeights(S);this.heightMap=(o?gt.empty().applyChanges(this.stateDeco,ne.empty,this.heightOracle,[new It(0,0,0,e.state.doc.length)]):this.heightMap).updateHeight(r,0,o,new ec(S.from,A))}Yi&&(c|=2)}let _=!this.viewportIsAppropriate(this.viewport,h)||this.scrollTarget&&(this.scrollTarget.range.head<this.viewport.from||this.scrollTarget.range.head>this.viewport.to);return _&&(c&2&&(c|=this.updateScaler()),this.viewport=this.getViewport(h,this.scrollTarget),c|=this.updateForViewport()),(c&2||_)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(o?[]:this.lineGaps,e)),c|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,e.docView.enforceCursorAssoc()),c}get visibleTop(){return this.scaler.fromDOM(this.pixelViewport.top)}get visibleBottom(){return this.scaler.fromDOM(this.pixelViewport.bottom)}getViewport(e,t){let i=.5-Math.max(-.5,Math.min(.5,e/1e3/2)),r=this.heightMap,s=this.heightOracle,{visibleTop:o,visibleBottom:l}=this,a=new Vi(r.lineAt(o-i*1e3,pe.ByHeight,s,0,0).from,r.lineAt(l+(1-i)*1e3,pe.ByHeight,s,0,0).to);if(t){let{head:c}=t.range;if(c<a.from||c>a.to){let h=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),u=r.lineAt(c,pe.ByPos,s,0,0),d;t.y=="center"?d=(u.top+u.bottom)/2-h/2:t.y=="start"||t.y=="nearest"&&c<a.from?d=u.top:d=u.bottom-h,a=new Vi(r.lineAt(d-1e3/2,pe.ByHeight,s,0,0).from,r.lineAt(d+h+1e3/2,pe.ByHeight,s,0,0).to)}}return a}mapViewport(e,t){let i=t.mapPos(e.from,-1),r=t.mapPos(e.to,1);return new Vi(this.heightMap.lineAt(i,pe.ByPos,this.heightOracle,0,0).from,this.heightMap.lineAt(r,pe.ByPos,this.heightOracle,0,0).to)}viewportIsAppropriate({from:e,to:t},i=0){if(!this.inView)return!0;let{top:r}=this.heightMap.lineAt(e,pe.ByPos,this.heightOracle,0,0),{bottom:s}=this.heightMap.lineAt(t,pe.ByPos,this.heightOracle,0,0),{visibleTop:o,visibleBottom:l}=this;return(e==0||r<=o-Math.max(10,Math.min(-i,250)))&&(t==this.state.doc.length||s>=l+Math.max(10,Math.min(i,250)))&&r>o-2*1e3&&s<l+2*1e3}mapLineGaps(e,t){if(!e.length||t.empty)return e;let i=[];for(let r of e)t.touchesRange(r.from,r.to)||i.push(new Br(t.mapPos(r.from),t.mapPos(r.to),r.size,r.displaySize));return i}ensureLineGaps(e,t){let i=this.heightOracle.lineWrapping,r=i?1e4:2e3,s=r>>1,o=r<<1;if(this.defaultTextDirection!=ge.LTR&&!i)return[];let l=[],a=(h,u,d,f)=>{if(u-h<s)return;let p=this.state.selection.main,m=[p.from];p.empty||m.push(p.to);for(let b of m)if(b>h&&b<u){a(h,b-10,d,f),a(b+10,u,d,f);return}let y=dw(e,b=>b.from>=d.from&&b.to<=d.to&&Math.abs(b.from-h)<s&&Math.abs(b.to-u)<s&&!m.some(x=>b.from<x&&b.to>x));if(!y){if(u<d.to&&t&&i&&t.visibleRanges.some(k=>k.from<=u&&k.to>=u)){let k=t.moveToLineBoundary(D.cursor(u),!1,!0).head;k>h&&(u=k)}let b=this.gapSize(d,h,u,f),x=i||b<2e6?b:2e6;y=new Br(h,u,b,x)}l.push(y)},c=h=>{if(h.length<o||h.type!=Ue.Text)return;let u=uw(h.from,h.to,this.stateDeco);if(u.total<o)return;let d=this.scrollTarget?this.scrollTarget.range.head:null,f,p;if(i){let m=r/this.heightOracle.lineLength*this.heightOracle.lineHeight,y,b;if(d!=null){let x=ro(u,d),k=((this.visibleBottom-this.visibleTop)/2+m)/h.height;y=x-k,b=x+k}else y=(this.visibleTop-h.top-m)/h.height,b=(this.visibleBottom-h.top+m)/h.height;f=io(u,y),p=io(u,b)}else{let m=u.total*this.heightOracle.charWidth,y=r*this.heightOracle.charWidth,b=0;if(m>2e6)for(let S of e)S.from>=h.from&&S.from<h.to&&S.size!=S.displaySize&&S.from*this.heightOracle.charWidth+b<this.pixelViewport.left&&(b=S.size-S.displaySize);let x=this.pixelViewport.left+b,k=this.pixelViewport.right+b,_,C;if(d!=null){let S=ro(u,d),A=((k-x)/2+y)/m;_=S-A,C=S+A}else _=(x-y)/m,C=(k+y)/m;f=io(u,_),p=io(u,C)}f>h.from&&a(h.from,f,h,u),p<h.to&&a(p,h.to,h,u)};for(let h of this.viewportLines)Array.isArray(h.type)?h.type.forEach(c):c(h);return l}gapSize(e,t,i,r){let s=ro(r,i)-ro(r,t);return this.heightOracle.lineWrapping?e.height*s:r.total*this.heightOracle.charWidth*s}updateLineGaps(e){Br.same(e,this.lineGaps)||(this.lineGaps=e,this.lineGapDeco=me.set(e.map(t=>t.draw(this,this.heightOracle.lineWrapping))))}computeVisibleRanges(e){let t=this.stateDeco;this.lineGaps.length&&(t=t.concat(this.lineGapDeco));let i=[];he.spans(t,this.viewport.from,this.viewport.to,{span(s,o){i.push({from:s,to:o})},point(){}},20);let r=0;if(i.length!=this.visibleRanges.length)r=12;else for(let s=0;s<i.length&&!(r&8);s++){let o=this.visibleRanges[s],l=i[s];(o.from!=l.from||o.to!=l.to)&&(r|=4,e&&e.mapPos(o.from,-1)==l.from&&e.mapPos(o.to,1)==l.to||(r|=8))}return this.visibleRanges=i,r}lineBlockAt(e){return e>=this.viewport.from&&e<=this.viewport.to&&this.viewportLines.find(t=>t.from<=e&&t.to>=e)||Er(this.heightMap.lineAt(e,pe.ByPos,this.heightOracle,0,0),this.scaler)}lineBlockAtHeight(e){return e>=this.viewportLines[0].top&&e<=this.viewportLines[this.viewportLines.length-1].bottom&&this.viewportLines.find(t=>t.top<=e&&t.bottom>=e)||Er(this.heightMap.lineAt(this.scaler.fromDOM(e),pe.ByHeight,this.heightOracle,0,0),this.scaler)}getScrollOffset(){return this.scrollParent==this.view.scrollDOM?this.scrollParent.scrollTop*this.scaleY:(this.scrollParent?this.scrollParent.getBoundingClientRect().top:0)-this.view.contentDOM.getBoundingClientRect().top}scrollAnchorAt(e){let t=this.lineBlockAtHeight(e+8);return t.from>=this.viewport.from||this.viewportLines[0].top-e>200?t:this.viewportLines[0]}elementAtHeight(e){return Er(this.heightMap.blockAt(this.scaler.fromDOM(e),this.heightOracle,0,0),this.scaler)}get docHeight(){return this.scaler.toDOM(this.heightMap.height)}get contentHeight(){return this.docHeight+this.paddingTop+this.paddingBottom}},Vi=class{constructor(e,t){this.from=e,this.to=t}};function uw(n,e,t){let i=[],r=n,s=0;return he.spans(t,n,e,{span(){},point(o,l){o>r&&(i.push({from:r,to:o}),s+=o-r),r=l}},20),r<e&&(i.push({from:r,to:e}),s+=e-r),{total:s,ranges:i}}function io({total:n,ranges:e},t){if(t<=0)return e[0].from;if(t>=1)return e[e.length-1].to;let i=Math.floor(n*t);for(let r=0;;r++){let{from:s,to:o}=e[r],l=o-s;if(i<=l)return s+i;i-=l}}function ro(n,e){let t=0;for(let{from:i,to:r}of n.ranges){if(e<=r){t+=e-i;break}t+=r-i}return t/n.total}function dw(n,e){for(let t of n)if(e(t))return t}var df={toDOM(n){return n},fromDOM(n){return n},scale:1,eq(n){return n==this}};function ff(n){let e=n.facet(Eo).filter(i=>typeof i!="function"),t=n.facet(Sc).filter(i=>typeof i!="function");return t.length&&e.push(he.join(t)),e}var sc=class n{constructor(e,t,i){let r=0,s=0,o=0;this.viewports=i.map(({from:l,to:a})=>{let c=t.lineAt(l,pe.ByPos,e,0,0).top,h=t.lineAt(a,pe.ByPos,e,0,0).bottom;return r+=h-c,{from:l,to:a,top:c,bottom:h,domTop:0,domBottom:0}}),this.scale=(7e6-r)/(t.height-r);for(let l of this.viewports)l.domTop=o+(l.top-s)*this.scale,o=l.domBottom=l.domTop+(l.bottom-l.top),s=l.bottom}toDOM(e){for(let t=0,i=0,r=0;;t++){let s=t<this.viewports.length?this.viewports[t]:null;if(!s||e<s.top)return r+(e-i)*this.scale;if(e<=s.bottom)return s.domTop+(e-s.top);i=s.bottom,r=s.domBottom}}fromDOM(e){for(let t=0,i=0,r=0;;t++){let s=t<this.viewports.length?this.viewports[t]:null;if(!s||e<s.domTop)return i+(e-r)/this.scale;if(e<=s.domBottom)return s.top+(e-s.domTop);i=s.bottom,r=s.domBottom}}eq(e){return e instanceof n?this.scale==e.scale&&this.viewports.length==e.viewports.length&&this.viewports.every((t,i)=>t.from==e.viewports[i].from&&t.to==e.viewports[i].to):!1}};function Er(n,e){if(e.scale==1)return n;let t=e.toDOM(n.top),i=e.toDOM(n.bottom);return new Pt(n.from,n.length,t,i-t,Array.isArray(n._content)?n._content.map(r=>Er(r,e)):n._content)}var so=V.define({combine:n=>n.join(" ")}),oc=V.define({combine:n=>n.indexOf(!0)>-1}),lc=kt.newName(),fp=kt.newName(),pp=kt.newName(),mp={"&light":"."+fp,"&dark":"."+pp};function ac(n,e,t){return new kt(e,{finish(i){return/&/.test(i)?i.replace(/&\w*/,r=>{if(r=="&")return n;if(!t||!t[r])throw new RangeError(`Unsupported selector: ${r}`);return t[r]}):n+" "+i}})}var fw=ac("."+lc,{"&":{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":{userSelect:"none",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-selectionHandle":{backgroundColor:"currentColor",width:"1.5px"},".cm-selectionHandle-start::before, .cm-selectionHandle-end::before":{content:'""',backgroundColor:"inherit",borderRadius:"50%",width:"8px",height:"8px",position:"absolute",left:"-3.25px"},".cm-selectionHandle-start::before":{top:"-8px"},".cm-selectionHandle-end::before":{bottom:"-8px"},".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"},".cm-panels-top":{top:"0"},".cm-panels-bottom":{bottom:"0"},"&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":{background:"radial-gradient(circle at 50% 55%, #aaa 20%, transparent 0) no-repeat",backgroundSize:".4em",backgroundPosition:"calc(min(50%, 0px)) 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"}},mp),pw={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},Ta=N.ie&&N.ie_version<=11,cc=class{constructor(e){this.view=e,this.active=!1,this.editContext=null,this.selectionRange=new Pa,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=e.contentDOM,this.observer=new MutationObserver(t=>{for(let i of t)this.queue.push(i);(N.ie&&N.ie_version<=11||N.ios&&e.composing)&&t.some(i=>i.type=="childList"&&i.removedNodes.length||i.type=="characterData"&&i.oldValue.length>i.target.nodeValue.length)?this.flushSoon():this.flush()}),window.EditContext&&N.android&&e.constructor.EDIT_CONTEXT!==!1&&!(N.chrome&&N.chrome_version<126)&&(this.editContext=new hc(e),e.state.facet(mn)&&(e.contentDOM.editContext=this.editContext.editContext)),Ta&&(this.onCharData=t=>{this.queue.push({target:t.target,type:"characterData",oldValue:t.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")),typeof ResizeObserver=="function"&&(this.resizeScroll=new ResizeObserver(()=>{var t;((t=this.view.docView)===null||t===void 0?void 0:t.lastUpdate)<Date.now()-75&&this.onResize()}),this.resizeScroll.observe(e.scrollDOM)),this.addWindowListeners(this.win=e.win),this.start(),typeof IntersectionObserver=="function"&&(this.intersection=new IntersectionObserver(t=>{this.parentCheck<0&&(this.parentCheck=setTimeout(this.listenForScroll.bind(this),1e3)),t.length>0&&t[t.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(t=>{t.length>0&&t[t.length-1].intersectionRatio>0&&this.onScrollChanged(document.createEvent("Event"))},{})),this.listenForScroll(),this.readSelectionRange()}onScrollChanged(e){this.view.inputState.runHandlers("scroll",e),this.intersecting&&this.view.measure()}onScroll(e){this.intersecting&&this.flush(!1),this.editContext&&this.view.requestMeasure(this.editContext.measureReq),this.onScrollChanged(e)}onResize(){this.resizeTimeout<0&&(this.resizeTimeout=setTimeout(()=>{this.resizeTimeout=-1,this.view.requestMeasure()},50))}onPrint(e){(e.type=="change"||!e.type)&&!e.matches||(this.view.viewState.printing=!0,this.view.measure(),setTimeout(()=>{this.view.viewState.printing=!1,this.view.requestMeasure()},500))}updateGaps(e){if(this.gapIntersection&&(e.length!=this.gaps.length||this.gaps.some((t,i)=>t!=e[i]))){this.gapIntersection.disconnect();for(let t of e)this.gapIntersection.observe(t);this.gaps=e}}onSelectionChange(e){let t=this.selectionChanged;if(!this.readSelectionRange()||this.delayedAndroidKey)return;let{view:i}=this,r=this.selectionRange;if(i.state.facet(mn)?i.root.activeElement!=this.dom:!Rr(this.dom,r))return;let s=r.anchorNode&&i.docView.tile.nearest(r.anchorNode);if(s&&s.isWidget()&&s.widget.ignoreEvent(e)){t||(this.selectionChanged=!1);return}(N.ie&&N.ie_version<=11||N.android&&N.chrome)&&!i.state.selection.main.empty&&r.focusNode&&Lr(r.focusNode,r.focusOffset,r.anchorNode,r.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:e}=this,t=zr(e.root);if(!t)return!1;let i=N.safari&&e.root.nodeType==11&&e.root.activeElement==this.dom&&mw(this.view,t)||t;if(!i||this.selectionRange.eq(i))return!1;let r=Rr(this.dom,i);return r&&!this.selectionChanged&&e.inputState.lastFocusTime>Date.now()-200&&e.inputState.lastTouchTime<Date.now()-300&&cy(this.dom,i)?(this.view.inputState.lastFocusTime=0,e.docView.updateSelection(),!1):(this.selectionRange.setRange(i),r&&(this.selectionChanged=!0),!0)}setSelectionRange(e,t){this.selectionRange.set(e.node,e.offset,t.node,t.offset),this.selectionChanged=!1}clearSelectionRange(){this.selectionRange.set(null,0,null,0)}listenForScroll(){this.parentCheck=-1;let e=0,t=null;for(let i=this.dom;i;)if(i.nodeType==1)!t&&e<this.scrollTargets.length&&this.scrollTargets[e]==i?e++:t||(t=this.scrollTargets.slice(0,e)),t&&t.push(i),i=i.assignedSlot||i.parentNode;else if(i.nodeType==11)i=i.host;else break;if(e<this.scrollTargets.length&&!t&&(t=this.scrollTargets.slice(0,e)),t){for(let i of this.scrollTargets)i.removeEventListener("scroll",this.onScroll);for(let i of this.scrollTargets=t)i.addEventListener("scroll",this.onScroll)}}ignore(e){if(!this.active)return e();try{return this.stop(),e()}finally{this.start(),this.clear()}}start(){this.active||(this.observer.observe(this.dom,pw),Ta&&this.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.active=!0)}stop(){this.active&&(this.active=!1,this.observer.disconnect(),Ta&&this.dom.removeEventListener("DOMCharacterDataModified",this.onCharData))}clear(){this.processRecords(),this.queue.length=0,this.selectionChanged=!1}delayAndroidKey(e,t){var i;if(!this.delayedAndroidKey){let r=()=>{let s=this.delayedAndroidKey;s&&(this.clearDelayedAndroidKey(),this.view.inputState.lastKeyCode=s.keyCode,this.view.inputState.lastKeyTime=Date.now(),!this.flush()&&s.force&&ji(this.dom,s.key,s.keyCode))};this.flushingAndroidKey=this.view.win.requestAnimationFrame(r)}(!this.delayedAndroidKey||e=="Enter")&&(this.delayedAndroidKey={key:e,keyCode:t,force:this.lastChange<Date.now()-50||!!(!((i=this.delayedAndroidKey)===null||i===void 0)&&i.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 e of this.observer.takeRecords())this.queue.push(e);return this.queue}processRecords(){let e=this.pendingRecords();e.length&&(this.queue=[]);let t=-1,i=-1,r=!1;for(let s of e){let o=this.readMutation(s);o&&(o.typeOver&&(r=!0),t==-1?{from:t,to:i}=o:(t=Math.min(o.from,t),i=Math.max(o.to,i)))}return{from:t,to:i,typeOver:r}}readChange(){let{from:e,to:t,typeOver:i}=this.processRecords(),r=this.selectionChanged&&Rr(this.dom,this.selectionRange);if(e<0&&!r)return null;e>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1;let s=new Xa(this.view,e,t,i);return this.view.docView.domChanged={newSel:s.newSel?s.newSel.main:null},s}flush(e=!0){if(this.delayedFlush>=0||this.delayedAndroidKey)return!1;e&&this.readSelectionRange();let t=this.readChange();if(!t)return this.view.requestMeasure(),!1;let i=this.view.state,r=ip(this.view,t);return this.view.state==i&&(t.domChanged||t.newSel&&!wo(this.view.state.selection,t.newSel.main))&&this.view.update([]),r}readMutation(e){let t=this.view.docView.tile.nearest(e.target);if(!t||t.isWidget())return null;if(t.markDirty(e.type=="attributes"),e.type=="childList"){let i=pf(t,e.previousSibling||e.target.previousSibling,-1),r=pf(t,e.nextSibling||e.target.nextSibling,1);return{from:i?t.posAfter(i):t.posAtStart,to:r?t.posBefore(r):t.posAtEnd,typeOver:!1}}else return e.type=="characterData"?{from:t.posAtStart,to:t.posAtEnd,typeOver:e.target.nodeValue==e.oldValue}:null}setWindow(e){e!=this.win&&(this.removeWindowListeners(this.win),this.win=e,this.addWindowListeners(this.win))}addWindowListeners(e){e.addEventListener("resize",this.onResize),this.printQuery?this.printQuery.addEventListener?this.printQuery.addEventListener("change",this.onPrint):this.printQuery.addListener(this.onPrint):e.addEventListener("beforeprint",this.onPrint),e.addEventListener("scroll",this.onScroll),e.document.addEventListener("selectionchange",this.onSelectionChange)}removeWindowListeners(e){e.removeEventListener("scroll",this.onScroll),e.removeEventListener("resize",this.onResize),this.printQuery?this.printQuery.removeEventListener?this.printQuery.removeEventListener("change",this.onPrint):this.printQuery.removeListener(this.onPrint):e.removeEventListener("beforeprint",this.onPrint),e.document.removeEventListener("selectionchange",this.onSelectionChange)}update(e){this.editContext&&(this.editContext.update(e),e.startState.facet(mn)!=e.state.facet(mn)&&(e.view.contentDOM.editContext=e.state.facet(mn)?this.editContext.editContext:null))}destroy(){var e,t,i;this.stop(),(e=this.intersection)===null||e===void 0||e.disconnect(),(t=this.gapIntersection)===null||t===void 0||t.disconnect(),(i=this.resizeScroll)===null||i===void 0||i.disconnect();for(let r of this.scrollTargets)r.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 pf(n,e,t){for(;e;){let i=Se.get(e);if(i&&i.parent==n)return i;let r=e.parentNode;e=r!=n.dom?r:t>0?e.nextSibling:e.previousSibling}return null}function mf(n,e){let t=e.startContainer,i=e.startOffset,r=e.endContainer,s=e.endOffset,o=n.docView.domAtPos(n.state.selection.main.anchor,1);return Lr(o.node,o.offset,r,s)&&([t,i,r,s]=[r,s,t,i]),{anchorNode:t,anchorOffset:i,focusNode:r,focusOffset:s}}function mw(n,e){if(e.getComposedRanges){let r=e.getComposedRanges(n.root)[0];if(r)return mf(n,r)}let t=null;function i(r){r.preventDefault(),r.stopImmediatePropagation(),t=r.getTargetRanges()[0]}return n.contentDOM.addEventListener("beforeinput",i,!0),n.dom.ownerDocument.execCommand("indent"),n.contentDOM.removeEventListener("beforeinput",i,!0),t?mf(n,t):null}var hc=class{constructor(e){this.from=0,this.to=0,this.pendingContextChange=null,this.handlers=Object.create(null),this.composing=null,this.resetRange(e.state);let t=this.editContext=new window.EditContext({text:e.state.doc.sliceString(this.from,this.to),selectionStart:this.toContextPos(Math.max(this.from,Math.min(this.to,e.state.selection.main.anchor))),selectionEnd:this.toContextPos(e.state.selection.main.head)});this.handlers.textupdate=i=>{let r=e.state.selection.main,{anchor:s,head:o}=r,l=this.toEditorPos(i.updateRangeStart),a=this.toEditorPos(i.updateRangeEnd);e.inputState.composing>=0&&!this.composing&&(this.composing={contextBase:i.updateRangeStart,editorBase:l,drifted:!1});let c=a-l>i.text.length;l==this.from&&s<this.from?l=s:a==this.to&&s>this.to&&(a=s);let h=rp(e.state.sliceDoc(l,a),i.text,(c?r.from:r.to)-l,c?"end":null);if(!h){let d=D.single(this.toEditorPos(i.selectionStart),this.toEditorPos(i.selectionEnd));wo(d,r)||e.dispatch({selection:d,userEvent:"select"});return}let u={from:h.from+l,to:h.toA+l,insert:ne.of(i.text.slice(h.from,h.toB).split(`
598
+ `))};if((N.mac||N.android)&&u.from==o-1&&/^\. ?$/.test(i.text)&&e.contentDOM.getAttribute("autocorrect")=="off"&&(u={from:l,to:a,insert:ne.of([i.text.replace("."," ")])}),this.pendingContextChange=u,!e.state.readOnly){let d=this.to-this.from+(u.to-u.from+u.insert.length);Cc(e,u,D.single(this.toEditorPos(i.selectionStart,d),this.toEditorPos(i.selectionEnd,d)))}this.pendingContextChange&&(this.revertPending(e.state),this.setSelection(e.state)),u.from<u.to&&!u.insert.length&&e.inputState.composing>=0&&!/[\\p{Alphabetic}\\p{Number}_]/.test(t.text.slice(Math.max(0,i.updateRangeStart-1),Math.min(t.text.length,i.updateRangeStart+1)))&&this.handlers.compositionend(i)},this.handlers.characterboundsupdate=i=>{let r=[],s=null;for(let o=this.toEditorPos(i.rangeStart),l=this.toEditorPos(i.rangeEnd);o<l;o++){let a=e.coordsForChar(o);s=a&&new DOMRect(a.left,a.top,a.right-a.left,a.bottom-a.top)||s||new DOMRect,r.push(s)}t.updateCharacterBounds(i.rangeStart,r)},this.handlers.textformatupdate=i=>{let r=[];for(let s of i.getTextFormats()){let o=s.underlineStyle,l=s.underlineThickness;if(!/none/i.test(o)&&!/none/i.test(l)){let a=this.toEditorPos(s.rangeStart),c=this.toEditorPos(s.rangeEnd);if(a<c){let h=`text-decoration: underline ${/^[a-z]/.test(o)?o+" ":o=="Dashed"?"dashed ":o=="Squiggle"?"wavy ":""}${/thin/i.test(l)?1:2}px`;r.push(me.mark({attributes:{style:h}}).range(a,c))}}}e.dispatch({effects:qf.of(me.set(r))})},this.handlers.compositionstart=()=>{e.inputState.composing<0&&(e.inputState.composing=0,e.inputState.compositionFirstChange=!0)},this.handlers.compositionend=()=>{if(e.inputState.composing=-1,e.inputState.compositionFirstChange=null,this.composing){let{drifted:i}=this.composing;this.composing=null,i&&this.reset(e.state)}};for(let i in this.handlers)t.addEventListener(i,this.handlers[i]);this.measureReq={read:i=>{let r=zr(i.root);r&&r.rangeCount&&this.editContext.updateSelectionBounds(r.getRangeAt(0).getBoundingClientRect())}}}applyEdits(e){let t=0,i=!1,r=this.pendingContextChange;return e.changes.iterChanges((s,o,l,a,c)=>{if(i)return;let h=c.length-(o-s);if(r&&o>=r.to)if(r.from==s&&r.to==o&&r.insert.eq(c)){r=this.pendingContextChange=null,t+=h,this.to+=h;return}else r=null,this.revertPending(e.state);if(s+=t,o+=t,o<=this.from)this.from+=h,this.to+=h;else if(s<this.to){if(s<this.from||o>this.to||this.to-this.from+c.length>3e4){i=!0;return}this.editContext.updateText(this.toContextPos(s),this.toContextPos(o),c.toString()),this.to+=h}t+=h}),r&&!i&&this.revertPending(e.state),!i}update(e){let t=this.pendingContextChange,i=e.startState.selection.main;this.composing&&(this.composing.drifted||!e.changes.touchesRange(i.from,i.to)&&e.transactions.some(r=>!r.isUserEvent("input.type")&&r.changes.touchesRange(this.from,this.to)))?(this.composing.drifted=!0,this.composing.editorBase=e.changes.mapPos(this.composing.editorBase)):!this.applyEdits(e)||!this.rangeIsValid(e.state)?(this.pendingContextChange=null,this.reset(e.state)):(e.docChanged||e.selectionSet||t)&&this.setSelection(e.state),(e.geometryChanged||e.docChanged||e.selectionSet)&&e.view.requestMeasure(this.measureReq)}resetRange(e){let{head:t}=e.selection.main;this.from=Math.max(0,t-1e4),this.to=Math.min(e.doc.length,t+1e4)}reset(e){this.resetRange(e),this.editContext.updateText(0,this.editContext.text.length,e.doc.sliceString(this.from,this.to)),this.setSelection(e)}revertPending(e){let t=this.pendingContextChange;this.pendingContextChange=null,this.editContext.updateText(this.toContextPos(t.from),this.toContextPos(t.from+t.insert.length),e.doc.sliceString(t.from,t.to))}setSelection(e){let{main:t}=e.selection,i=this.toContextPos(Math.max(this.from,Math.min(this.to,t.anchor))),r=this.toContextPos(t.head);(this.editContext.selectionStart!=i||this.editContext.selectionEnd!=r)&&this.editContext.updateSelection(i,r)}rangeIsValid(e){let{head:t}=e.selection.main;return!(this.from>0&&t-this.from<500||this.to<e.doc.length&&this.to-t<500||this.to-this.from>1e4*3)}toEditorPos(e,t=this.to-this.from){e=Math.min(e,t);let i=this.composing;return i&&i.drifted?i.editorBase+(e-i.contextBase):e+this.from}toContextPos(e){let t=this.composing;return t&&t.drifted?t.contextBase+(e-t.editorBase):e-this.from}destroy(){for(let e in this.handlers)this.editContext.removeEventListener(e,this.handlers[e])}},j=class n{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(e={}){var t;this.plugins=[],this.pluginMap=new Map,this.editorAttrs={},this.contentAttrs={},this.bidiCache=[],this.destroyed=!1,this.updateState=2,this.measureScheduled=-1,this.measureRequests=[],this.clearAnnouncement=-1,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),e.parent&&e.parent.appendChild(this.dom);let{dispatch:i}=e;this.dispatchTransactions=e.dispatchTransactions||i&&(r=>r.forEach(s=>i(s,this)))||(r=>this.update(r)),this.dispatch=this.dispatch.bind(this),this._root=e.root||ay(e.parent)||document,this.viewState=new ko(this,e.state||ke.create(e)),e.scrollTo&&e.scrollTo.is(eo)&&(this.viewState.scrollTarget=e.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(Wi).map(r=>new Or(r));for(let r of this.plugins)r.update(this);this.observer=new cc(this),this.inputState=new Ya(this),this.inputState.ensureHandlers(this.plugins),this.docView=new bo(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,this.requestMeasure(),!((t=document.fonts)===null||t===void 0)&&t.ready&&document.fonts.ready.then(()=>{this.viewState.mustMeasureContent="refresh",this.requestMeasure()})}dispatch(...e){let t=e.length==1&&e[0]instanceof Ie?e:e.length==1&&Array.isArray(e[0])?e[0]:[this.state.update(...e)];this.dispatchTransactions(t,this)}update(e){if(this.updateState!=0)throw new Error("Calls to EditorView.update are not allowed while an update is in progress");let t=!1,i=!1,r,s=this.state;for(let d of e){if(d.startState!=s)throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state.");s=d.state}if(this.destroyed){this.viewState.state=s;return}let o=this.hasFocus,l=0,a=null;e.some(d=>d.annotation(hp))?(this.inputState.notifiedFocused=o,l=1):o!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=o,a=up(s,o),a||(l=1));let c=this.observer.delayedAndroidKey,h=null;if(c?(this.observer.clearDelayedAndroidKey(),h=this.observer.readChange(),(h&&!this.state.doc.eq(s.doc)||!this.state.selection.eq(s.selection))&&(h=null)):this.observer.clear(),s.facet(ke.phrases)!=this.state.facet(ke.phrases))return this.setState(s);r=mo.create(this,s,e),r.flags|=l;let u=this.viewState.scrollTarget;try{this.updateState=2;for(let d of e){if(u&&(u=u.map(d.changes)),d.scrollIntoView){let{main:f}=d.state.selection,{x:p,y:m}=this.state.facet(n.cursorScrollMargin);u=new Pr(f.empty?f:D.cursor(f.head,f.head>f.anchor?-1:1),"nearest","nearest",m,p)}for(let f of d.effects)f.is(eo)&&(u=f.value.clip(this.state))}this.viewState.update(r,u),this.bidiCache=So.update(this.bidiCache,r.changes),r.empty||(this.updatePlugins(r),this.inputState.update(r)),t=this.docView.update(r),this.state.facet(Ar)!=this.styleModules&&this.mountStyles(),i=this.updateAttrs(),this.showAnnouncements(e),this.docView.updateSelection(t,e.some(d=>d.isUserEvent("select.pointer")))}finally{this.updateState=0}if(r.startState.facet(so)!=r.state.facet(so)&&(this.viewState.mustMeasureContent=!0),(t||i||u||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),t&&this.docViewUpdate(),!r.empty)for(let d of this.state.facet(Ba))try{d(r)}catch(f){Ot(this.state,f,"update listener")}(a||h)&&Promise.resolve().then(()=>{a&&this.state==a.startState&&this.dispatch(a),h&&!ip(this,h)&&c.force&&ji(this.contentDOM,c.key,c.keyCode)})}setState(e){if(this.updateState!=0)throw new Error("Calls to EditorView.setState are not allowed while an update is in progress");if(this.destroyed){this.viewState.state=e;return}this.updateState=2;let t=this.hasFocus;try{for(let i of this.plugins)i.destroy(this);this.viewState=new ko(this,e),this.plugins=e.facet(Wi).map(i=>new Or(i)),this.pluginMap.clear();for(let i of this.plugins)i.update(this);this.docView.destroy(),this.docView=new bo(this),this.inputState.ensureHandlers(this.plugins),this.mountStyles(),this.updateAttrs(),this.bidiCache=[]}finally{this.updateState=0}t&&this.focus(),this.requestMeasure()}updatePlugins(e){let t=e.startState.facet(Wi),i=e.state.facet(Wi);if(t!=i){let r=[];for(let s of i){let o=t.indexOf(s);if(o<0)r.push(new Or(s));else{let l=this.plugins[o];l.mustUpdate=e,r.push(l)}}for(let s of this.plugins)s.mustUpdate!=e&&s.destroy(this);this.plugins=r,this.pluginMap.clear()}else for(let r of this.plugins)r.mustUpdate=e;for(let r=0;r<this.plugins.length;r++)this.plugins[r].update(this);t!=i&&this.inputState.ensureHandlers(this.plugins)}docViewUpdate(){for(let e of this.plugins){let t=e.value;if(t&&t.docViewUpdate)try{t.docViewUpdate(this)}catch(i){Ot(this.state,i,"doc view update listener")}}}measure(e=!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,e&&this.observer.forceFlush();let t=null,i=this.viewState.scrollParent,r=this.viewState.getScrollOffset(),{scrollAnchorPos:s,scrollAnchorHeight:o,scaleY:l}=this.viewState;Math.abs(r-this.viewState.scrollOffset)>1&&(o=-1),this.viewState.scrollAnchorHeight=-1;try{for(let a=0;;a++){if(o<0){if(Df(i||this.win))s=-1,o=this.viewState.heightMap.height/this.viewState.scaleY;else{let p=this.viewState.scrollAnchorAt(r);s=p.from,o=p.top}l=this.viewState.scaleY}this.updateState=1;let c=this.viewState.measure();if(!c&&!this.measureRequests.length&&this.viewState.scrollTarget==null)break;if(a>5){console.warn(this.measureRequests.length?"Measure loop restarted more than 5 times":"Viewport failed to stabilize");break}let h=[];c&4||([this.measureRequests,h]=[h,this.measureRequests]);let u=h.map(p=>{try{return p.read(this)}catch(m){return Ot(this.state,m),gf}}),d=mo.create(this,this.state,[]),f=!1;d.flags|=c,t?t.flags|=c:t=d,this.updateState=2,d.empty||(this.updatePlugins(d),this.inputState.update(d),this.updateAttrs(),f=this.docView.update(d),f&&this.docViewUpdate());for(let p=0;p<h.length;p++)if(u[p]!=gf)try{let m=h[p];m.write&&m.write(u[p],this)}catch(m){Ot(this.state,m)}if(f&&this.docView.updateSelection(!0),!d.viewportChanged&&this.measureRequests.length==0){if(this.viewState.editorHeight)if(this.viewState.scrollTarget){this.docView.scrollIntoView(this.viewState.scrollTarget),this.viewState.scrollTarget=null,o=-1;continue}else{let m=(s<0?this.viewState.heightMap.height:this.viewState.lineBlockAt(s).top)/this.viewState.scaleY-o/l;if((m>1||m<-1)&&!(N.ios&&this.inputState.lastIOSMomentumScroll>Date.now()-100)&&(i==this.scrollDOM||this.hasFocus||Math.max(this.inputState.lastWheelEvent,this.inputState.lastTouchTime)>Date.now()-100)){r=r+m,i?s<0?i.scrollTop=i.scrollHeight:i.scrollTop+=m:this.win.scrollBy(0,m),o=-1;continue}}break}}}finally{this.updateState=0,this.measureScheduled=-1}if(t&&!t.empty)for(let a of this.state.facet(Ba))a(t)}get themeClasses(){return lc+" "+(this.state.facet(oc)?pp:fp)+" "+this.state.facet(so)}updateAttrs(){let e=bf(this,Gf,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),t={spellcheck:"false",autocorrect:"off",autocapitalize:"off",writingsuggestions:"false",translate:"no",contenteditable:this.state.facet(mn)?"true":"false",class:"cm-content",style:`${N.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(t["aria-readonly"]="true"),bf(this,kc,t);let i=this.observer.ignore(()=>{let r=Gd(this.contentDOM,this.contentAttrs,t),s=Gd(this.dom,this.editorAttrs,e);return r||s});return this.editorAttrs=e,this.contentAttrs=t,i}showAnnouncements(e){let t=!0;for(let i of e)for(let r of i.effects)if(r.is(n.announce)){t&&(this.announceDOM.textContent="",this.win.clearTimeout(this.clearAnnouncement),this.clearAnnouncement=this.win.setTimeout(()=>{this.announceDOM.textContent="\xA0"},200),t=!1);let s=this.announceDOM.appendChild(document.createElement("div"));s.textContent=r.value}}mountStyles(){this.styleModules=this.state.facet(Ar);let e=this.state.facet(n.cspNonce);kt.mount(this.root,this.styleModules.concat(fw).reverse(),e?{nonce:e}:void 0)}readMeasured(){if(this.updateState==2)throw new Error("Reading the editor layout isn't allowed during an update");this.updateState==0&&this.measureScheduled>-1&&this.measure(!1)}requestMeasure(e){if(this.measureScheduled<0&&(this.measureScheduled=this.win.requestAnimationFrame(()=>this.measure())),e){if(this.measureRequests.indexOf(e)>-1)return;if(e.key!=null){for(let t=0;t<this.measureRequests.length;t++)if(this.measureRequests[t].key===e.key){this.measureRequests[t]=e;return}}this.measureRequests.push(e)}}plugin(e){let t=this.pluginMap.get(e);return(t===void 0||t&&t.plugin!=e)&&this.pluginMap.set(e,t=this.plugins.find(i=>i.plugin==e)||null),t&&t.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(e){return this.readMeasured(),this.viewState.elementAtHeight(e)}lineBlockAtHeight(e){return this.readMeasured(),this.viewState.lineBlockAtHeight(e)}get viewportLineBlocks(){return this.viewState.viewportLines}lineBlockAt(e){return this.viewState.lineBlockAt(e)}get contentHeight(){return this.viewState.contentHeight}moveByChar(e,t,i){return Ca(this,e,ef(this,e,t,i))}moveByGroup(e,t){return Ca(this,e,ef(this,e,t,i=>_y(this,e.head,i)))}visualLineSide(e,t){let i=this.bidiSpans(e),r=this.textDirectionAt(e.from),s=i[t?i.length-1:0];return D.cursor(s.side(t,r)+e.from,s.forward(!t,r)?1:-1)}moveToLineBoundary(e,t,i=!0){return By(this,e,t,i)}moveVertically(e,t,i){return Ca(this,e,Hy(this,e,t,i))}domAtPos(e,t=1){return this.docView.domAtPos(e,t)}posAtDOM(e,t=0){return this.docView.posFromDOM(e,t)}posAtCoords(e,t=!0){this.readMeasured();let i=Ka(this,e,t);return i&&i.pos}posAndSideAtCoords(e,t=!0){return this.readMeasured(),Ka(this,e,t)}coordsAtPos(e,t=1){this.readMeasured();let i=this.state.doc.lineAt(e),r=this.bidiSpans(i),s=r[Tt.find(r,e-i.from,-1,t)];return this.docView.coordsAt(e,t,s.dir==ge.RTL)}coordsForChar(e){return this.readMeasured(),this.docView.coordsForChar(e)}get defaultCharacterWidth(){return this.viewState.heightOracle.charWidth}get defaultLineHeight(){return this.viewState.heightOracle.lineHeight}get textDirection(){return this.viewState.defaultTextDirection}textDirectionAt(e){return!this.state.facet(Uf)||e<this.viewport.from||e>this.viewport.to?this.textDirection:(this.readMeasured(),this.docView.textDirectionAt(e))}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(e){if(e.length>gw)return Bf(e.length);let t=this.textDirectionAt(e.from),i;for(let s of this.bidiCache)if(s.from==e.from&&s.dir==t&&(s.fresh||Nf(s.isolates,i=Jd(this,e))))return s.order;i||(i=Jd(this,e));let r=gy(e.text,t,i);return this.bidiCache.push(new So(e.from,e.to,t,i,!0,r)),r}get hasFocus(){var e;return(this.dom.ownerDocument.hasFocus()||N.safari&&((e=this.inputState)===null||e===void 0?void 0:e.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{Rf(this.contentDOM),this.docView.updateSelection()})}setRoot(e){this._root!=e&&(this._root=e,this.observer.setWindow((e.nodeType==9?e:e.ownerDocument).defaultView||window),this.mountStyles())}destroy(){this.root.activeElement==this.contentDOM&&this.contentDOM.blur();for(let e of this.plugins)e.destroy(this);this.plugins=[],this.inputState.destroy(),this.docView.destroy(),this.dom.remove(),this.observer.destroy(),this.win.clearTimeout(this.clearAnnouncement),this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.destroyed=!0}static scrollIntoView(e,t={}){var i,r,s,o;return eo.of(new Pr(typeof e=="number"?D.cursor(e):e,(i=t.y)!==null&&i!==void 0?i:"nearest",(r=t.x)!==null&&r!==void 0?r:"nearest",(s=t.yMargin)!==null&&s!==void 0?s:5,(o=t.xMargin)!==null&&o!==void 0?o:5))}scrollSnapshot(){let{scrollTop:e,scrollLeft:t}=this.scrollDOM,i=this.viewState.scrollAnchorAt(e);return eo.of(new Pr(D.cursor(i.from),"start","start",i.top-e,t,!0))}setTabFocusMode(e){e==null?this.inputState.tabFocusMode=this.inputState.tabFocusMode<0?0:-1:typeof e=="boolean"?this.inputState.tabFocusMode=e?0:-1:this.inputState.tabFocusMode!=0&&(this.inputState.tabFocusMode=Date.now()+e)}static domEventHandlers(e){return Nt.define(()=>({}),{eventHandlers:e})}static domEventObservers(e){return Nt.define(()=>({}),{eventObservers:e})}static theme(e,t){let i=kt.newName(),r=[so.of(i),Ar.of(ac(`.${i}`,e))];return t&&t.dark&&r.push(oc.of(!0)),r}static baseTheme(e){return Tr.lowest(Ar.of(ac("."+lc,e,mp)))}static findFromDOM(e){var t;let i=e.querySelector(".cm-content"),r=i&&Se.get(i)||Se.get(e);return((t=r?.root)===null||t===void 0?void 0:t.view)||null}};j.styleModule=Ar;j.inputHandler=Vf;j.clipboardInputFilter=xc;j.clipboardOutputFilter=vc;j.scrollHandler=Kf;j.focusChangeEffect=$f;j.perLineTextDirection=Uf;j.exceptionSink=Wf;j.updateListener=Ba;j.editable=mn;j.mouseSelectionStyle=zf;j.dragMovesSelection=Ff;j.clickAddsSelectionRange=Hf;j.decorations=Eo;j.blockWrappers=Xf;j.outerDecorations=Sc;j.atomicRanges=$r;j.bidiIsolatedRanges=Yf;j.cursorScrollMargin=V.define({combine:n=>{let e=5,t=5;for(let i of n)typeof i=="number"?e=t=i:{x:e,y:t}=i;return{x:e,y:t}}});j.scrollMargins=Jf;j.darkTheme=oc;j.cspNonce=V.define({combine:n=>n.length?n[0]:""});j.contentAttributes=kc;j.editorAttributes=Gf;j.lineWrapping=j.contentAttributes.of({class:"cm-lineWrapping"});j.announce=we.define();var gw=4096,gf={},So=class n{constructor(e,t,i,r,s,o){this.from=e,this.to=t,this.dir=i,this.isolates=r,this.fresh=s,this.order=o}static update(e,t){if(t.empty&&!e.some(s=>s.fresh))return e;let i=[],r=e.length?e[e.length-1].dir:ge.LTR;for(let s=Math.max(0,e.length-10);s<e.length;s++){let o=e[s];o.dir==r&&!t.touchesRange(o.from,o.to)&&i.push(new n(t.mapPos(o.from,1),t.mapPos(o.to,-1),o.dir,o.isolates,!1,o.order))}return i}};function bf(n,e,t){for(let i=n.state.facet(e),r=i.length-1;r>=0;r--){let s=i[r],o=typeof s=="function"?s(n):s;o&&bc(o,t)}return t}var bw=N.mac?"mac":N.windows?"win":N.linux?"linux":"key";function yw(n,e){let t=n.split(/-(?!$)/),i=t[t.length-1];i=="Space"&&(i=" ");let r,s,o,l;for(let a=0;a<t.length-1;++a){let c=t[a];if(/^(cmd|meta|m)$/i.test(c))l=!0;else if(/^a(lt)?$/i.test(c))r=!0;else if(/^(c|ctrl|control)$/i.test(c))s=!0;else if(/^s(hift)?$/i.test(c))o=!0;else if(/^mod$/i.test(c))e=="mac"?l=!0:s=!0;else throw new Error("Unrecognized modifier name: "+c)}return r&&(i="Alt-"+i),s&&(i="Ctrl-"+i),l&&(i="Meta-"+i),o&&(i="Shift-"+i),i}function oo(n,e,t){return e.altKey&&(n="Alt-"+n),e.ctrlKey&&(n="Ctrl-"+n),e.metaKey&&(n="Meta-"+n),t!==!1&&e.shiftKey&&(n="Shift-"+n),n}var ww=Tr.default(j.domEventHandlers({keydown(n,e){return Sw(xw(e.state),n,e,"editor")}})),Tc=V.define({enables:ww}),yf=new WeakMap;function xw(n){let e=n.facet(Tc),t=yf.get(e);return t||yf.set(e,t=kw(e.reduce((i,r)=>i.concat(r),[]))),t}var Pn=null,vw=4e3;function kw(n,e=bw){let t=Object.create(null),i=Object.create(null),r=(o,l)=>{let a=i[o];if(a==null)i[o]=l;else if(a!=l)throw new Error("Key binding "+o+" is used both as a regular binding and as a multi-stroke prefix")},s=(o,l,a,c,h)=>{var u,d;let f=t[o]||(t[o]=Object.create(null)),p=l.split(/ (?!$)/).map(b=>yw(b,e));for(let b=1;b<p.length;b++){let x=p.slice(0,b).join(" ");r(x,!0),f[x]||(f[x]={preventDefault:!0,stopPropagation:!1,run:[k=>{let _=Pn={view:k,prefix:x,scope:o};return setTimeout(()=>{Pn==_&&(Pn=null)},vw),!0}]})}let m=p.join(" ");r(m,!1);let y=f[m]||(f[m]={preventDefault:!1,stopPropagation:!1,run:((d=(u=f._any)===null||u===void 0?void 0:u.run)===null||d===void 0?void 0:d.slice())||[]});a&&y.run.push(a),c&&(y.preventDefault=!0),h&&(y.stopPropagation=!0)};for(let o of n){let l=o.scope?o.scope.split(" "):["editor"];if(o.any)for(let c of l){let h=t[c]||(t[c]=Object.create(null));h._any||(h._any={preventDefault:!1,stopPropagation:!1,run:[]});let{any:u}=o;for(let d in h)h[d].run.push(f=>u(f,uc))}let a=o[e]||o.key;if(a)for(let c of l)s(c,a,o.run,o.preventDefault,o.stopPropagation),o.shift&&s(c,"Shift-"+a,o.shift,o.preventDefault,o.stopPropagation)}return t}var uc=null;function Sw(n,e,t,i){uc=e;let r=Ud(e),s=Md(r,0),o=Rd(s)==r.length&&r!=" ",l="",a=!1,c=!1,h=!1;Pn&&Pn.view==t&&Pn.scope==i&&(l=Pn.prefix+" ",op.indexOf(e.keyCode)<0&&(c=!0,Pn=null));let u=new Set,d=y=>{if(y){for(let b of y.run)if(!u.has(b)&&(u.add(b),b(t)))return y.stopPropagation&&(h=!0),!0;y.preventDefault&&(y.stopPropagation&&(h=!0),c=!0)}return!1},f=n[i],p,m;return f&&(d(f[l+oo(r,e,!o)])?a=!0:o&&(e.altKey||e.metaKey||e.ctrlKey)&&!(N.windows&&e.ctrlKey&&e.altKey)&&!(N.mac&&e.altKey&&!(e.ctrlKey||e.metaKey))&&(p=pn[e.keyCode])&&p!=r?(d(f[l+oo(p,e,!0)])||e.shiftKey&&(m=Fi[e.keyCode])!=r&&m!=p&&d(f[l+oo(m,e,!1)]))&&(a=!0):o&&e.shiftKey&&d(f[l+oo(r,e,!0)])&&(a=!0),!a&&d(f._any)&&(a=!0)),c&&(a=!0),a&&h&&e.stopPropagation(),uc=null,a}var ai=class n{constructor(e,t,i,r,s){this.className=e,this.left=t,this.top=i,this.width=r,this.height=s}draw(){let e=document.createElement("div");return e.className=this.className,this.adjust(e),e}update(e,t){return t.className!=this.className?!1:(this.adjust(e),!0)}adjust(e){e.style.left=this.left+"px",e.style.top=this.top+"px",this.width!=null&&(e.style.width=this.width+"px"),e.style.height=this.height+"px"}eq(e){return this.left==e.left&&this.top==e.top&&this.width==e.width&&this.height==e.height&&this.className==e.className}static forRange(e,t,i){if(i.empty){let r=e.coordsAtPos(i.head,i.assoc||1);if(!r)return[];let s=gp(e);return[new n(t,r.left-s.left,r.top-s.top,null,r.bottom-r.top)]}else return Cw(e,t,i)}};function gp(n){let e=n.scrollDOM.getBoundingClientRect();return{left:(n.textDirection==ge.LTR?e.left:e.right-n.scrollDOM.clientWidth*n.scaleX)-n.scrollDOM.scrollLeft*n.scaleX,top:e.top-n.scrollDOM.scrollTop*n.scaleY}}function wf(n,e,t,i){let r=n.coordsAtPos(e,t*2);if(!r)return i;let s=n.dom.getBoundingClientRect(),o=(r.top+r.bottom)/2,l=n.posAtCoords({x:s.left+1,y:o}),a=n.posAtCoords({x:s.right-1,y:o});return l==null||a==null?i:{from:Math.max(i.from,Math.min(l,a)),to:Math.min(i.to,Math.max(l,a))}}function Cw(n,e,t){if(t.to<=n.viewport.from||t.from>=n.viewport.to)return[];let i=Math.max(t.from,n.viewport.from),r=Math.min(t.to,n.viewport.to),s=n.textDirection==ge.LTR,o=n.contentDOM,l=o.getBoundingClientRect(),a=gp(n),c=o.querySelector(".cm-line"),h=c&&window.getComputedStyle(c),u=l.left+(h?parseInt(h.paddingLeft)+Math.min(0,parseInt(h.textIndent)):0),d=l.right-(h?parseInt(h.paddingRight):0),f=ja(n,i,1),p=ja(n,r,-1),m=f.type==Ue.Text?f:null,y=p.type==Ue.Text?p:null;if(m&&(n.lineWrapping||f.widgetLineBreaks)&&(m=wf(n,i,1,m)),y&&(n.lineWrapping||p.widgetLineBreaks)&&(y=wf(n,r,-1,y)),m&&y&&m.from==y.from&&m.to==y.to)return x(k(t.from,t.to,m));{let C=m?k(t.from,null,m):_(f,!1),S=y?k(null,t.to,y):_(p,!0),A=[];return(m||f).to<(y||p).from-(m&&y?1:0)||f.widgetLineBreaks>1&&C.bottom+n.defaultLineHeight/2<S.top?A.push(b(u,C.bottom,d,S.top)):C.bottom<S.top&&n.elementAtHeight((C.bottom+S.top)/2).type==Ue.Text&&(C.bottom=S.top=(C.bottom+S.top)/2),x(C).concat(A).concat(x(S))}function b(C,S,A,$){return new ai(e,C-a.left,S-a.top,Math.max(0,A-C),$-S)}function x({top:C,bottom:S,horizontal:A}){let $=[];for(let F=0;F<A.length;F+=2)$.push(b(A[F],C,A[F+1],S));return $}function k(C,S,A){let $=1e9,F=-1e9,R=[];function P(z,Y,G,Te,Ze){let ve=n.coordsAtPos(z,z==A.to?-2:2),We=n.coordsAtPos(G,G==A.from?2:-2);!ve||!We||($=Math.min(ve.top,We.top,$),F=Math.max(ve.bottom,We.bottom,F),Ze==ge.LTR?R.push(s&&Y?u:ve.left,s&&Te?d:We.right):R.push(!s&&Te?u:We.left,!s&&Y?d:ve.right))}let E=C??A.from,O=S??A.to;for(let z of n.visibleRanges)if(z.to>E&&z.from<O)for(let Y=Math.max(z.from,E),G=Math.min(z.to,O);;){let Te=n.state.doc.lineAt(Y);for(let Ze of n.bidiSpans(Te)){let ve=Ze.from+Te.from,We=Ze.to+Te.from;if(ve>=G)break;We>Y&&P(Math.max(ve,Y),C==null&&ve<=E,Math.min(We,G),S==null&&We>=O,Ze.dir)}if(Y=Te.to+1,Y>=G)break}return R.length==0&&P(E,C==null,O,S==null,n.textDirection),{top:$,bottom:F,horizontal:R}}function _(C,S){let A=l.top+(S?C.top:C.bottom);return{top:A,bottom:A,horizontal:[]}}}function Tw(n,e){return n.constructor==e.constructor&&n.eq(e)}var dc=class{constructor(e,t){this.view=e,this.layer=t,this.drawn=[],this.scaleX=1,this.scaleY=1,this.measureReq={read:this.measure.bind(this),write:this.draw.bind(this)},this.dom=e.scrollDOM.appendChild(document.createElement("div")),this.dom.classList.add("cm-layer"),t.above&&this.dom.classList.add("cm-layer-above"),t.class&&this.dom.classList.add(t.class),this.scale(),this.dom.setAttribute("aria-hidden","true"),this.setOrder(e.state),e.requestMeasure(this.measureReq),t.mount&&t.mount(this.dom,e)}update(e){e.startState.facet(ao)!=e.state.facet(ao)&&this.setOrder(e.state),(this.layer.update(e,this.dom)||e.geometryChanged)&&(this.scale(),e.view.requestMeasure(this.measureReq))}docViewUpdate(e){this.layer.updateOnDocViewUpdate!==!1&&e.requestMeasure(this.measureReq)}setOrder(e){let t=0,i=e.facet(ao);for(;t<i.length&&i[t]!=this.layer;)t++;this.dom.style.zIndex=String((this.layer.above?150:-1)-t)}measure(){return this.layer.markers(this.view)}scale(){let{scaleX:e,scaleY:t}=this.view;(e!=this.scaleX||t!=this.scaleY)&&(this.scaleX=e,this.scaleY=t,this.dom.style.transform=`scale(${1/e}, ${1/t})`)}draw(e){if(e.length!=this.drawn.length||e.some((t,i)=>!Tw(t,this.drawn[i]))){let t=this.dom.firstChild,i=0;for(let r of e)r.update&&t&&r.constructor&&this.drawn[i].constructor&&r.update(t,this.drawn[i])?(t=t.nextSibling,i++):this.dom.insertBefore(r.draw(),t);for(;t;){let r=t.nextSibling;t.remove(),t=r}this.drawn=e,N.webkit&&(this.dom.style.display=this.dom.firstChild?"":"none")}}destroy(){this.layer.destroy&&this.layer.destroy(this.dom,this.view),this.dom.remove()}},ao=V.define();function bp(n){return[Nt.define(e=>new dc(e,n)),ao.of(n)]}var Ji=V.define({combine(n){return Hi(n,{cursorBlinkRate:1200,drawRangeCursor:!0,iosSelectionHandles:!0},{cursorBlinkRate:(e,t)=>Math.min(e,t),drawRangeCursor:(e,t)=>e||t})}});function yp(n={}){return[Ji.of(n),Aw,Ew,Rw,jf.of(!0)]}function wp(n){return n.startState.facet(Ji)!=n.state.facet(Ji)}var Aw=bp({above:!0,markers(n){let{state:e}=n,t=e.facet(Ji),i=[];for(let r of e.selection.ranges){let s=r==e.selection.main;if(r.empty||t.drawRangeCursor&&!(s&&N.ios&&t.iosSelectionHandles)){let o=s?"cm-cursor cm-cursor-primary":"cm-cursor cm-cursor-secondary",l=r.empty?r:D.cursor(r.head,r.assoc);for(let a of ai.forRange(n,o,l))i.push(a)}}return i},update(n,e){n.transactions.some(i=>i.selection)&&(e.style.animationName=e.style.animationName=="cm-blink"?"cm-blink2":"cm-blink");let t=wp(n);return t&&xf(n.state,e),n.docChanged||n.selectionSet||t},mount(n,e){xf(e.state,n)},class:"cm-cursorLayer"});function xf(n,e){e.style.animationDuration=n.facet(Ji).cursorBlinkRate+"ms"}var Ew=bp({above:!1,markers(n){let e=[],{main:t,ranges:i}=n.state.selection;for(let r of i)if(!r.empty)for(let s of ai.forRange(n,"cm-selectionBackground",r))e.push(s);if(N.ios&&!t.empty&&n.state.facet(Ji).iosSelectionHandles){for(let r of ai.forRange(n,"cm-selectionHandle cm-selectionHandle-start",D.cursor(t.from,1)))e.push(r);for(let r of ai.forRange(n,"cm-selectionHandle cm-selectionHandle-end",D.cursor(t.to,1)))e.push(r)}return e},update(n,e){return n.docChanged||n.selectionSet||n.viewportChanged||wp(n)},class:"cm-selectionLayer"}),Mw=N.gecko&&N.gecko_version==153?"#ffffff01":"transparent",Rw=Tr.highest(j.theme({".cm-line":{"& ::selection, &::selection":{backgroundColor:`${Mw} !important`},caretColor:"transparent !important"},".cm-content":{caretColor:"transparent !important","& :focus":{caretColor:"initial !important","&::selection, & ::selection":{backgroundColor:"Highlight !important"}}}})),xp=we.define({map(n,e){return n==null?null:e.mapPos(n)}}),Mr=vt.define({create(){return null},update(n,e){return n!=null&&(n=e.changes.mapPos(n)),e.effects.reduce((t,i)=>i.is(xp)?i.value:t,n)}}),Dw=Nt.fromClass(class{constructor(n){this.view=n,this.cursor=null,this.measureReq={read:this.readPos.bind(this),write:this.drawCursor.bind(this)}}update(n){var e;let t=n.state.field(Mr);t==null?this.cursor!=null&&((e=this.cursor)===null||e===void 0||e.remove(),this.cursor=null):(this.cursor||(this.cursor=this.view.scrollDOM.appendChild(document.createElement("div")),this.cursor.className="cm-dropCursor"),(n.startState.field(Mr)!=t||n.docChanged||n.geometryChanged)&&this.view.requestMeasure(this.measureReq))}readPos(){let{view:n}=this,e=n.state.field(Mr),t=e!=null&&n.coordsAtPos(e);if(!t)return null;let i=n.scrollDOM.getBoundingClientRect();return{left:t.left-i.left+n.scrollDOM.scrollLeft*n.scaleX,top:t.top-i.top+n.scrollDOM.scrollTop*n.scaleY,height:t.bottom-t.top}}drawCursor(n){if(this.cursor){let{scaleX:e,scaleY:t}=this.view;n?(this.cursor.style.left=n.left/e+"px",this.cursor.style.top=n.top/t+"px",this.cursor.style.height=n.height/t+"px"):this.cursor.style.left="-100000px"}}destroy(){this.cursor&&this.cursor.remove()}setDropPos(n){this.view.state.field(Mr)!=n&&this.view.dispatch({effects:xp.of(n)})}},{eventObservers:{dragover(n){this.setDropPos(this.view.posAtCoords({x:n.clientX,y:n.clientY}))},dragleave(n){(n.target==this.view.contentDOM||!this.view.contentDOM.contains(n.relatedTarget))&&this.setDropPos(null)},dragend(){this.setDropPos(null)},drop(){this.setDropPos(null)}}});function vp(){return[Mr,Dw]}var bk=/x/.unicode!=null?"gu":"g";function kp(){return Pw}var Lw=me.line({class:"cm-activeLine"}),Pw=Nt.fromClass(class{constructor(n){this.decorations=this.getDeco(n)}update(n){(n.docChanged||n.selectionSet)&&(this.decorations=this.getDeco(n.view))}getDeco(n){let e=-1,t=[];for(let i of n.state.selection.ranges){let r=n.lineBlockAt(i.head);r.from>e&&(t.push(Lw.range(r.from)),e=r.from)}return me.set(t)}},{decorations:n=>n.decorations}),fc=class extends In{constructor(e){super(),this.content=e}toDOM(e){let t=document.createElement("span");return t.className="cm-placeholder",t.style.pointerEvents="none",t.appendChild(typeof this.content=="string"?document.createTextNode(this.content):typeof this.content=="function"?this.content(e):this.content.cloneNode(!0)),t.setAttribute("aria-hidden","true"),t}coordsAt(e){let t=e.firstChild?Dr(e.firstChild):[];if(!t.length)return null;let i=window.getComputedStyle(e.parentNode),r=Wr(t[0],i.direction!="rtl"),s=parseInt(i.lineHeight);return r.bottom-r.top>s*1.5?{left:r.left,right:r.right,top:r.top,bottom:r.top+s}:r}ignoreEvent(){return!1}};function Ac(n){let e=Nt.fromClass(class{constructor(t){this.view=t,this.placeholder=n?me.set([me.widget({widget:new fc(n),side:1}).range(0)]):me.none}get decorations(){return this.view.state.doc.length?me.none:this.placeholder}},{decorations:t=>t.decorations});return typeof n=="string"?[e,j.contentAttributes.of({"aria-placeholder":n})]:e}var _t=class extends Jt{compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}eq(e){return!1}destroy(e){}};_t.prototype.elementClass="";_t.prototype.toDOM=void 0;_t.prototype.mapMode=ct.TrackBefore;_t.prototype.startSide=_t.prototype.endSide=-1;_t.prototype.point=!0;var co=V.define(),Ow=V.define();var ho=V.define();var pc=V.define({combine:n=>n.some(e=>e)});function Iw(n){let e=[Nw];return n&&n.fixed===!1&&e.push(pc.of(!0)),e}var Nw=Nt.fromClass(class{constructor(n){this.view=n,this.domAfter=null,this.prevViewport=n.viewport,this.dom=document.createElement("div"),this.dom.className="cm-gutters cm-gutters-before",this.dom.setAttribute("aria-hidden","true"),this.dom.style.minHeight=this.view.contentHeight/this.view.scaleY+"px",this.gutters=n.state.facet(ho).map(e=>new Co(n,e)),this.fixed=!n.state.facet(pc);for(let e of this.gutters)e.config.side=="after"?this.getDOMAfter().appendChild(e.dom):this.dom.appendChild(e.dom);this.fixed&&(this.dom.style.position="sticky"),this.syncGutters(!1),n.scrollDOM.insertBefore(this.dom,n.contentDOM)}getDOMAfter(){return this.domAfter||(this.domAfter=document.createElement("div"),this.domAfter.className="cm-gutters cm-gutters-after",this.domAfter.setAttribute("aria-hidden","true"),this.domAfter.style.minHeight=this.view.contentHeight/this.view.scaleY+"px",this.domAfter.style.position=this.fixed?"sticky":"",this.view.scrollDOM.appendChild(this.domAfter)),this.domAfter}update(n){if(this.updateGutters(n)){let e=this.prevViewport,t=n.view.viewport,i=Math.min(e.to,t.to)-Math.max(e.from,t.from);this.syncGutters(i<(t.to-t.from)*.8)}if(n.geometryChanged){let e=this.view.contentHeight/this.view.scaleY+"px";this.dom.style.minHeight=e,this.domAfter&&(this.domAfter.style.minHeight=e)}this.view.state.facet(pc)!=!this.fixed&&(this.fixed=!this.fixed,this.dom.style.position=this.fixed?"sticky":"",this.domAfter&&(this.domAfter.style.position=this.fixed?"sticky":"")),this.prevViewport=n.view.viewport}syncGutters(n){let e=this.dom.nextSibling;n&&(this.dom.remove(),this.domAfter&&this.domAfter.remove());let t=he.iter(this.view.state.facet(co),this.view.viewport.from),i=[],r=this.gutters.map(s=>new gc(s,this.view.viewport,-this.view.documentPadding.top));for(let s of this.view.viewportLineBlocks)if(i.length&&(i=[]),Array.isArray(s.type)){let o=!0;for(let l of s.type)if(l.type==Ue.Text&&o){mc(t,i,l.from);for(let a of r)a.line(this.view,l,i);o=!1}else if(l.widget)for(let a of r)a.widget(this.view,l)}else if(s.type==Ue.Text){mc(t,i,s.from);for(let o of r)o.line(this.view,s,i)}else if(s.widget)for(let o of r)o.widget(this.view,s);for(let s of r)s.finish();n&&(this.view.scrollDOM.insertBefore(this.dom,e),this.domAfter&&this.view.scrollDOM.appendChild(this.domAfter))}updateGutters(n){let e=n.startState.facet(ho),t=n.state.facet(ho),i=n.docChanged||n.heightChanged||n.viewportChanged||!he.eq(n.startState.facet(co),n.state.facet(co),n.view.viewport.from,n.view.viewport.to);if(e==t)for(let r of this.gutters)r.update(n)&&(i=!0);else{i=!0;let r=[];for(let s of t){let o=e.indexOf(s);o<0?r.push(new Co(this.view,s)):(this.gutters[o].update(n),r.push(this.gutters[o]))}for(let s of this.gutters)s.dom.remove(),r.indexOf(s)<0&&s.destroy();for(let s of r)s.config.side=="after"?this.getDOMAfter().appendChild(s.dom):this.dom.appendChild(s.dom);this.gutters=r}return i}destroy(){for(let n of this.gutters)n.destroy();this.dom.remove(),this.domAfter&&this.domAfter.remove()}},{provide:n=>j.scrollMargins.of(e=>{let t=e.plugin(n);if(!t||t.gutters.length==0||!t.fixed)return null;let i=t.dom.offsetWidth*e.scaleX,r=t.domAfter?t.domAfter.offsetWidth*e.scaleX:0;return e.textDirection==ge.LTR?{left:i,right:r}:{right:i,left:r}})});function vf(n){return Array.isArray(n)?n:[n]}function mc(n,e,t){for(;n.value&&n.from<=t;)n.from==t&&e.push(n.value),n.next()}var gc=class{constructor(e,t,i){this.gutter=e,this.height=i,this.i=0,this.cursor=he.iter(e.markers,t.from)}addElement(e,t,i){let{gutter:r}=this,s=(t.top-this.height)/e.scaleY,o=t.height/e.scaleY;if(this.i==r.elements.length){let l=new To(e,o,s,i);r.elements.push(l),r.dom.appendChild(l.dom)}else r.elements[this.i].update(e,o,s,i);this.height=t.bottom,this.i++}line(e,t,i){let r=[];mc(this.cursor,r,t.from),i.length&&(r=r.concat(i));let s=this.gutter.config.lineMarker(e,t,r);s&&r.unshift(s);let o=this.gutter;r.length==0&&!o.config.renderEmptyElements||this.addElement(e,t,r)}widget(e,t){let i=this.gutter.config.widgetMarker(e,t.widget,t),r=i?[i]:null;for(let s of e.state.facet(Ow)){let o=s(e,t.widget,t);o&&(r||(r=[])).push(o)}r&&this.addElement(e,t,r)}finish(){let e=this.gutter;for(;e.elements.length>this.i;){let t=e.elements.pop();e.dom.removeChild(t.dom),t.destroy()}}},Co=class{constructor(e,t){this.view=e,this.config=t,this.elements=[],this.spacer=null,this.dom=document.createElement("div"),this.dom.className="cm-gutter"+(this.config.class?" "+this.config.class:"");for(let i in t.domEventHandlers)this.dom.addEventListener(i,r=>{let s=r.target,o;if(s!=this.dom&&this.dom.contains(s)){for(;s.parentNode!=this.dom;)s=s.parentNode;let a=s.getBoundingClientRect();o=(a.top+a.bottom)/2}else o=r.clientY;let l=e.lineBlockAtHeight(o-e.documentTop);t.domEventHandlers[i](e,l,r)&&r.preventDefault()});this.markers=vf(t.markers(e)),t.initialSpacer&&(this.spacer=new To(e,0,0,[t.initialSpacer(e)]),this.dom.appendChild(this.spacer.dom),this.spacer.dom.style.cssText+="visibility: hidden; pointer-events: none")}update(e){let t=this.markers;if(this.markers=vf(this.config.markers(e.view)),this.spacer&&this.config.updateSpacer){let r=this.config.updateSpacer(this.spacer.markers[0],e);r!=this.spacer.markers[0]&&this.spacer.update(e.view,0,0,[r])}let i=e.view.viewport;return!he.eq(this.markers,t,i.from,i.to)||(this.config.lineMarkerChange?this.config.lineMarkerChange(e):!1)}destroy(){for(let e of this.elements)e.destroy()}},To=class{constructor(e,t,i,r){this.height=-1,this.above=0,this.markers=[],this.dom=document.createElement("div"),this.dom.className="cm-gutterElement",this.update(e,t,i,r)}update(e,t,i,r){this.height!=t&&(this.height=t,this.dom.style.height=t+"px"),this.above!=i&&(this.dom.style.marginTop=(this.above=i)?i+"px":""),Bw(this.markers,r)||this.setMarkers(e,r)}setMarkers(e,t){let i="cm-gutterElement",r=this.dom.firstChild;for(let s=0,o=0;;){let l=o,a=s<t.length?t[s++]:null,c=!1;if(a){let h=a.elementClass;h&&(i+=" "+h);for(let u=o;u<this.markers.length;u++)if(this.markers[u].compare(a)){l=u,c=!0;break}}else l=this.markers.length;for(;o<l;){let h=this.markers[o++];if(h.toDOM){h.destroy(r);let u=r.nextSibling;r.remove(),r=u}}if(!a)break;a.toDOM&&(c?r=r.nextSibling:this.dom.insertBefore(a.toDOM(e),r)),c&&o++}this.dom.className=i,this.markers=t}destroy(){this.setMarkers(null,[])}};function Bw(n,e){if(n.length!=e.length)return!1;for(let t=0;t<n.length;t++)if(!n[t].compare(e[t]))return!1;return!0}var _w=V.define(),Hw=V.define(),$i=V.define({combine(n){return Hi(n,{formatNumber:String,domEventHandlers:{}},{domEventHandlers(e,t){let i=Object.assign({},e);for(let r in t){let s=i[r],o=t[r];i[r]=s?(l,a,c)=>s(l,a,c)||o(l,a,c):o}return i}})}}),_r=class extends _t{constructor(e){super(),this.number=e}eq(e){return this.number==e.number}toDOM(){return document.createTextNode(this.number)}};function Aa(n,e){return n.state.facet($i).formatNumber(e,n.state)}var Fw=ho.compute([$i],n=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers(e){return e.state.facet(_w)},lineMarker(e,t,i){return i.some(r=>r.toDOM)?null:new _r(Aa(e,e.state.doc.lineAt(t.from).number))},widgetMarker:(e,t,i)=>{for(let r of e.state.facet(Hw)){let s=r(e,t,i);if(s)return s}return null},lineMarkerChange:e=>e.startState.facet($i)!=e.state.facet($i),initialSpacer(e){return new _r(Aa(e,kf(e.state.doc.lines)))},updateSpacer(e,t){let i=Aa(t.view,kf(t.view.state.doc.lines));return i==e.number?e:new _r(i)},domEventHandlers:n.facet($i).domEventHandlers,side:"before"}));function Ec(n={}){return[$i.of(n),Iw(),Fw]}function kf(n){let e=9;for(;e<n;)e=e*10+9;return e}var zw=new class extends _t{constructor(){super(...arguments),this.elementClass="cm-activeLineGutter"}},Ww=co.compute(["selection"],n=>{let e=[],t=-1;for(let i of n.selection.ranges){let r=n.doc.lineAt(i.head).from;r>t&&(t=r,e.push(zw.range(r)))}return he.of(e)});function Sp(){return Ww}var Vw=0,Ur=class{constructor(e,t){this.from=e,this.to=t}},te=class{constructor(e={}){this.id=Vw++,this.perNode=!!e.perNode,this.deserialize=e.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")}),this.combine=e.combine||null}add(e){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return typeof e!="function"&&(e=bt.match(e)),t=>{let i=e(t);return i===void 0?null:[this,i]}}};te.closedBy=new te({deserialize:n=>n.split(" ")});te.openedBy=new te({deserialize:n=>n.split(" ")});te.group=new te({deserialize:n=>n.split(" ")});te.isolate=new te({deserialize:n=>{if(n&&n!="rtl"&&n!="ltr"&&n!="auto")throw new RangeError("Invalid value for isolate: "+n);return n||"auto"}});te.contextHash=new te({perNode:!0});te.lookAhead=new te({perNode:!0});te.mounted=new te({perNode:!0});var di=class{constructor(e,t,i,r=!1){this.tree=e,this.overlay=t,this.parser=i,this.bracketed=r}static get(e){return e&&e.props&&e.props[te.mounted.id]}},$w=Object.create(null),bt=class n{constructor(e,t,i,r=0){this.name=e,this.props=t,this.id=i,this.flags=r}static define(e){let t=e.props&&e.props.length?Object.create(null):$w,i=(e.top?1:0)|(e.skipped?2:0)|(e.error?4:0)|(e.name==null?8:0),r=new n(e.name||"",t,e.id,i);if(e.props){for(let s of e.props)if(Array.isArray(s)||(s=s(r)),s){if(s[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");t[s[0].id]=s[1]}}return r}prop(e){return this.props[e.id]}get isTop(){return(this.flags&1)>0}get isSkipped(){return(this.flags&2)>0}get isError(){return(this.flags&4)>0}get isAnonymous(){return(this.flags&8)>0}is(e){if(typeof e=="string"){if(this.name==e)return!0;let t=this.prop(te.group);return t?t.indexOf(e)>-1:!1}return this.id==e}static match(e){let t=Object.create(null);for(let i in e)for(let r of i.split(" "))t[r]=e[i];return i=>{for(let r=i.prop(te.group),s=-1;s<(r?r.length:0);s++){let o=t[s<0?i.name:r[s]];if(o)return o}}}};bt.none=new bt("",Object.create(null),0,8);var Ro=new WeakMap,Cp=new WeakMap,Me;(function(n){n[n.ExcludeBuffers=1]="ExcludeBuffers",n[n.IncludeAnonymous=2]="IncludeAnonymous",n[n.IgnoreMounts=4]="IgnoreMounts",n[n.IgnoreOverlays=8]="IgnoreOverlays",n[n.EnterBracketed=16]="EnterBracketed"})(Me||(Me={}));var je=class n{constructor(e,t,i,r,s){if(this.type=e,this.children=t,this.positions=i,this.length=r,this.props=null,s&&s.length){this.props=Object.create(null);for(let[o,l]of s)this.props[typeof o=="number"?o:o.id]=l}}toString(){let e=di.get(this);if(e&&!e.overlay)return e.tree.toString();let t="";for(let i of this.children){let r=i.toString();r&&(t&&(t+=","),t+=r)}return this.type.name?(/\W/.test(this.type.name)&&!this.type.isError?JSON.stringify(this.type.name):this.type.name)+(t.length?"("+t+")":""):t}cursor(e=0){return new qr(this.topNode,e)}cursorAt(e,t=0,i=0){let r=Ro.get(this)||this.topNode,s=new qr(r);return s.moveTo(e,t),Ro.set(this,s._tree),s}get topNode(){return new en(this,0,0,null)}resolve(e,t=0){let i=jr(Ro.get(this)||this.topNode,e,t,!1);return Ro.set(this,i),i}resolveInner(e,t=0){let i=jr(Cp.get(this)||this.topNode,e,t,!0);return Cp.set(this,i),i}resolveStack(e,t=0){return Uw(this,e,t)}iterate(e){let{enter:t,leave:i,from:r=0,to:s=this.length}=e,o=e.mode||0,l=(o&Me.IncludeAnonymous)>0;for(let a=this.cursor(o|Me.IncludeAnonymous);;){let c=!1;if(a.from<=s&&a.to>=r&&(!l&&a.type.isAnonymous||t(a)!==!1)){if(a.firstChild())continue;c=!0}for(;c&&i&&(l||!a.type.isAnonymous)&&i(a),!a.nextSibling();){if(!a.parent())return;c=!0}}}prop(e){return e.perNode?this.props?this.props[e.id]:void 0:this.type.prop(e)}get propValues(){let e=[];if(this.props)for(let t in this.props)e.push([+t,this.props[t]]);return e}balance(e={}){return this.children.length<=8?this:Ic(bt.none,this.children,this.positions,0,this.children.length,0,this.length,(t,i,r)=>new n(this.type,t,i,r,this.propValues),e.makeTree||((t,i,r)=>new n(bt.none,t,i,r)))}static build(e){return jw(e)}};je.empty=new je(bt.none,[],[],0);var Mc=class n{constructor(e,t){this.buffer=e,this.index=t}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}get pos(){return this.index}next(){this.index-=4}fork(){return new n(this.buffer,this.index)}},_n=class n{constructor(e,t,i){this.buffer=e,this.length=t,this.set=i}get type(){return bt.none}toString(){let e=[];for(let t=0;t<this.buffer.length;)e.push(this.childString(t)),t=this.buffer[t+3];return e.join(",")}childString(e){let t=this.buffer[e],i=this.buffer[e+3],r=this.set.types[t],s=r.name;if(/\W/.test(s)&&!r.isError&&(s=JSON.stringify(s)),e+=4,i==e)return s;let o=[];for(;e<i;)o.push(this.childString(e)),e=this.buffer[e+3];return s+"("+o.join(",")+")"}findChild(e,t,i,r,s){let{buffer:o}=this,l=-1;for(let a=e;a!=t&&!(Ep(s,r,o[a+1],o[a+2])&&(l=a,i>0));a=o[a+3]);return l}slice(e,t,i){let r=this.buffer,s=new Uint16Array(t-e),o=0;for(let l=e,a=0;l<t;){s[a++]=r[l++],s[a++]=r[l++]-i;let c=s[a++]=r[l++]-i;s[a++]=r[l++]-e,o=Math.max(o,c)}return new n(s,o,this.set)}};function Ep(n,e,t,i){switch(n){case-2:return t<e;case-1:return i>=e&&t<e;case 0:return t<e&&i>e;case 1:return t<=e&&i>e;case 2:return i>e;case 4:return!0}}function jr(n,e,t,i){for(var r;n.from==n.to||(t<1?n.from>=e:n.from>e)||(t>-1?n.to<=e:n.to<e);){let o=!i&&n instanceof en&&n.index<0?null:n.parent;if(!o)return n;n=o}let s=i?0:Me.IgnoreOverlays;if(i)for(let o=n,l=o.parent;l;o=l,l=o.parent)o instanceof en&&o.index<0&&((r=l.enter(e,t,s))===null||r===void 0?void 0:r.from)!=o.from&&(n=l);for(;;){let o=n.enter(e,t,s);if(!o)return n;n=o}}var Lo=class{cursor(e=0){return new qr(this,e)}getChild(e,t=null,i=null){let r=Tp(this,e,t,i);return r.length?r[0]:null}getChildren(e,t=null,i=null){return Tp(this,e,t,i)}resolve(e,t=0){return jr(this,e,t,!1)}resolveInner(e,t=0){return jr(this,e,t,!0)}matchContext(e){return Rc(this.parent,e)}enterUnfinishedNodesBefore(e){let t=this.childBefore(e),i=this;for(;t;){let r=t.lastChild;if(!r||r.to!=t.to)break;r.type.isError&&r.from==r.to?(i=t,t=r.prevSibling):t=r}return i}get node(){return this}get next(){return this.parent}},en=class n extends Lo{constructor(e,t,i,r){super(),this._tree=e,this.from=t,this.index=i,this._parent=r}get type(){return this._tree.type}get name(){return this._tree.type.name}get to(){return this.from+this._tree.length}nextChild(e,t,i,r,s=0){for(let o=this;;){for(let{children:l,positions:a}=o._tree,c=t>0?l.length:-1;e!=c;e+=t){let h=l[e],u=a[e]+o.from,d;if(!(!(s&Me.EnterBracketed&&h instanceof je&&(d=di.get(h))&&!d.overlay&&d.bracketed&&i>=u&&i<=u+h.length)&&!Ep(r,i,u,u+h.length))){if(h instanceof _n){if(s&Me.ExcludeBuffers)continue;let f=h.findChild(0,h.buffer.length,t,i-u,r);if(f>-1)return new Kr(new Dc(o,h,e,u),null,f)}else if(s&Me.IncludeAnonymous||!h.type.isAnonymous||Oc(h)){let f;if(!(s&Me.IgnoreMounts)&&(f=di.get(h))&&!f.overlay)return new n(f.tree,u,e,o);let p=new n(h,u,e,o);return s&Me.IncludeAnonymous||!p.type.isAnonymous?p:p.nextChild(t<0?h.children.length-1:0,t,i,r,s)}}}if(s&Me.IncludeAnonymous||!o.type.isAnonymous||(o.index>=0?e=o.index+t:e=t<0?-1:o._parent._tree.children.length,o=o._parent,!o))return null}}get firstChild(){return this.nextChild(0,1,0,4)}get lastChild(){return this.nextChild(this._tree.children.length-1,-1,0,4)}childAfter(e){return this.nextChild(0,1,e,2)}childBefore(e){return this.nextChild(this._tree.children.length-1,-1,e,-2)}prop(e){return this._tree.prop(e)}enter(e,t,i=0){let r;if(!(i&Me.IgnoreOverlays)&&(r=di.get(this._tree))&&r.overlay){let s=e-this.from,o=i&Me.EnterBracketed&&r.bracketed;for(let{from:l,to:a}of r.overlay)if((t>0||o?l<=s:l<s)&&(t<0||o?a>=s:a>s))return new n(r.tree,r.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,e,t,i)}nextSignificantParent(){let e=this;for(;e.type.isAnonymous&&e._parent;)e=e._parent;return e}get parent(){return this._parent?this._parent.nextSignificantParent():null}get nextSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index+1,1,0,4):null}get prevSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index-1,-1,0,4):null}get tree(){return this._tree}toTree(){return this._tree}toString(){return this._tree.toString()}};function Tp(n,e,t,i){let r=n.cursor(),s=[];if(!r.firstChild())return s;if(t!=null){for(let o=!1;!o;)if(o=r.type.is(t),!r.nextSibling())return s}for(;;){if(i!=null&&r.type.is(i))return s;if(r.type.is(e)&&s.push(r.node),!r.nextSibling())return i==null?s:[]}}function Rc(n,e,t=e.length-1){for(let i=n;t>=0;i=i.parent){if(!i)return!1;if(!i.type.isAnonymous){if(e[t]&&e[t]!=i.name)return!1;t--}}return!0}var Dc=class{constructor(e,t,i,r){this.parent=e,this.buffer=t,this.index=i,this.start=r}},Kr=class n extends Lo{get name(){return this.type.name}get from(){return this.context.start+this.context.buffer.buffer[this.index+1]}get to(){return this.context.start+this.context.buffer.buffer[this.index+2]}constructor(e,t,i){super(),this.context=e,this._parent=t,this.index=i,this.type=e.buffer.set.types[e.buffer.buffer[i]]}child(e,t,i){let{buffer:r}=this.context,s=r.findChild(this.index+4,r.buffer[this.index+3],e,t-this.context.start,i);return s<0?null:new n(this.context,this,s)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(e){return this.child(1,e,2)}childBefore(e){return this.child(-1,e,-2)}prop(e){return this.type.prop(e)}enter(e,t,i=0){if(i&Me.ExcludeBuffers)return null;let{buffer:r}=this.context,s=r.findChild(this.index+4,r.buffer[this.index+3],t>0?1:-1,e-this.context.start,t);return s<0?null:new n(this.context,this,s)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(e){return this._parent?null:this.context.parent.nextChild(this.context.index+e,e,0,4)}get nextSibling(){let{buffer:e}=this.context,t=e.buffer[this.index+3];return t<(this._parent?e.buffer[this._parent.index+3]:e.buffer.length)?new n(this.context,this._parent,t):this.externalSibling(1)}get prevSibling(){let{buffer:e}=this.context,t=this._parent?this._parent.index+4:0;return this.index==t?this.externalSibling(-1):new n(this.context,this._parent,e.findChild(t,this.index,-1,0,4))}get tree(){return null}toTree(){let e=[],t=[],{buffer:i}=this.context,r=this.index+4,s=i.buffer[this.index+3];if(s>r){let o=i.buffer[this.index+1];e.push(i.slice(r,s,o)),t.push(0)}return new je(this.type,e,t,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}};function Mp(n){if(!n.length)return null;let e=0,t=n[0];for(let s=1;s<n.length;s++){let o=n[s];(o.from>t.from||o.to<t.to)&&(t=o,e=s)}let i=t instanceof en&&t.index<0?null:t.parent,r=n.slice();return i?r[e]=i:r.splice(e,1),new Lc(r,t)}var Lc=class{constructor(e,t){this.heads=e,this.node=t}get next(){return Mp(this.heads)}};function Uw(n,e,t){let i=n.resolveInner(e,t),r=null;for(let s=i instanceof en?i:i.context.parent;s;s=s.parent)if(s.index<0){let o=s.parent;(r||(r=[i])).push(o.resolve(e,t)),s=o}else{let o=di.get(s.tree);if(o&&o.overlay&&o.overlay[0].from<=e&&o.overlay[o.overlay.length-1].to>=e){let l=new en(o.tree,o.overlay[0].from+s.from,-1,s);(r||(r=[i])).push(jr(l,e,t,!1))}}return r?Mp(r):i}var qr=class{get name(){return this.type.name}constructor(e,t=0){if(this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,this.mode=t&~Me.EnterBracketed,e instanceof en)this.yieldNode(e);else{this._tree=e.context.parent,this.buffer=e.context;for(let i=e._parent;i;i=i._parent)this.stack.unshift(i.index);this.bufferNode=e,this.yieldBuf(e.index)}}yieldNode(e){return e?(this._tree=e,this.type=e.type,this.from=e.from,this.to=e.to,!0):!1}yieldBuf(e,t){this.index=e;let{start:i,buffer:r}=this.buffer;return this.type=t||r.set.types[r.buffer[e]],this.from=i+r.buffer[e+1],this.to=i+r.buffer[e+2],!0}yield(e){return e?e instanceof en?(this.buffer=null,this.yieldNode(e)):(this.buffer=e.context,this.yieldBuf(e.index,e.type)):!1}toString(){return this.buffer?this.buffer.buffer.childString(this.index):this._tree.toString()}enterChild(e,t,i){if(!this.buffer)return this.yield(this._tree.nextChild(e<0?this._tree._tree.children.length-1:0,e,t,i,this.mode));let{buffer:r}=this.buffer,s=r.findChild(this.index+4,r.buffer[this.index+3],e,t-this.buffer.start,i);return s<0?!1:(this.stack.push(this.index),this.yieldBuf(s))}firstChild(){return this.enterChild(1,0,4)}lastChild(){return this.enterChild(-1,0,4)}childAfter(e){return this.enterChild(1,e,2)}childBefore(e){return this.enterChild(-1,e,-2)}enter(e,t,i=this.mode){return this.buffer?i&Me.ExcludeBuffers?!1:this.enterChild(1,e,t):this.yield(this._tree.enter(e,t,i))}parent(){if(!this.buffer)return this.yieldNode(this.mode&Me.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let e=this.mode&Me.IncludeAnonymous?this.buffer.parent:this.buffer.parent.nextSignificantParent();return this.buffer=null,this.yieldNode(e)}sibling(e){if(!this.buffer)return this._tree._parent?this.yield(this._tree.index<0?null:this._tree._parent.nextChild(this._tree.index+e,e,0,4,this.mode)):!1;let{buffer:t}=this.buffer,i=this.stack.length-1;if(e<0){let r=i<0?0:this.stack[i]+4;if(this.index!=r)return this.yieldBuf(t.findChild(r,this.index,-1,0,4))}else{let r=t.buffer[this.index+3];if(r<(i<0?t.buffer.length:t.buffer[this.stack[i]+3]))return this.yieldBuf(r)}return i<0?this.yield(this.buffer.parent.nextChild(this.buffer.index+e,e,0,4,this.mode)):!1}nextSibling(){return this.sibling(1)}prevSibling(){return this.sibling(-1)}atLastNode(e){let t,i,{buffer:r}=this;if(r){if(e>0){if(this.index<r.buffer.buffer.length)return!1}else for(let s=0;s<this.index;s++)if(r.buffer.buffer[s+3]<this.index)return!1;({index:t,parent:i}=r)}else({index:t,_parent:i}=this._tree);for(;i;{index:t,_parent:i}=i)if(t>-1)for(let s=t+e,o=e<0?-1:i._tree.children.length;s!=o;s+=e){let l=i._tree.children[s];if(this.mode&Me.IncludeAnonymous||l instanceof _n||!l.type.isAnonymous||Oc(l))return!1}return!0}move(e,t){if(t&&this.enterChild(e,0,4))return!0;for(;;){if(this.sibling(e))return!0;if(this.atLastNode(e)||!this.parent())return!1}}next(e=!0){return this.move(1,e)}prev(e=!0){return this.move(-1,e)}moveTo(e,t=0){for(;(this.from==this.to||(t<1?this.from>=e:this.from>e)||(t>-1?this.to<=e:this.to<e))&&this.parent(););for(;this.enterChild(1,e,t););return this}get node(){if(!this.buffer)return this._tree;let e=this.bufferNode,t=null,i=0;if(e&&e.context==this.buffer)e:for(let r=this.index,s=this.stack.length;s>=0;){for(let o=e;o;o=o._parent)if(o.index==r){if(r==this.index)return o;t=o,i=s+1;break e}r=this.stack[--s]}for(let r=i;r<this.stack.length;r++)t=new Kr(this.buffer,t,this.stack[r]);return this.bufferNode=new Kr(this.buffer,t,this.index)}get tree(){return this.buffer?null:this._tree._tree}iterate(e,t){for(let i=0;;){let r=!1;if(this.type.isAnonymous||e(this)!==!1){if(this.firstChild()){i++;continue}this.type.isAnonymous||(r=!0)}for(;;){if(r&&t&&t(this),r=this.type.isAnonymous,!i)return;if(this.nextSibling())break;this.parent(),i--,r=!0}}}matchContext(e){if(!this.buffer)return Rc(this.node.parent,e);let{buffer:t}=this.buffer,{types:i}=t.set;for(let r=e.length-1,s=this.stack.length-1;r>=0;s--){if(s<0)return Rc(this._tree,e,r);let o=i[t.buffer[this.stack[s]]];if(!o.isAnonymous){if(e[r]&&e[r]!=o.name)return!1;r--}}return!0}};function Oc(n){return n.children.some(e=>e instanceof _n||!e.type.isAnonymous||Oc(e))}function jw(n){var e;let{buffer:t,nodeSet:i,maxBufferLength:r=1024,reused:s=[],minRepeatType:o=i.types.length}=n,l=Array.isArray(t)?new Mc(t,t.length):t,a=i.types,c=0,h=0;function u(C,S,A,$,F,R){let{id:P,start:E,end:O,size:z}=l,Y=h,G=c;if(z<0)if(l.next(),z==-1){let rt=s[P];A.push(rt),$.push(E-C);return}else if(z==-3){c=P;return}else if(z==-4){h=P;return}else throw new RangeError(`Unrecognized record size: ${z}`);let Te=a[P],Ze,ve,We=E-C;if(O-E<=r&&(ve=y(l.pos-S,F))){let rt=new Uint16Array(ve.size-ve.skip),Ve=l.pos-ve.size,qe=rt.length;for(;l.pos>Ve;)qe=b(ve.start,rt,qe);Ze=new _n(rt,O-ve.start,i),We=ve.start-C}else{let rt=l.pos-z;l.next();let Ve=[],qe=[],wt=P>=o?P:-1,ie=0,vn=O;for(;l.pos>rt;)wt>=0&&l.id==wt&&l.size>=0?(l.end<=vn-r&&(p(Ve,qe,E,ie,l.end,vn,wt,Y,G),ie=Ve.length,vn=l.end),l.next()):R>2500?d(E,rt,Ve,qe):u(E,rt,Ve,qe,wt,R+1);if(wt>=0&&ie>0&&ie<Ve.length&&p(Ve,qe,E,ie,E,vn,wt,Y,G),Ve.reverse(),qe.reverse(),wt>-1&&ie>0){let Si=f(Te,G);Ze=Ic(Te,Ve,qe,0,Ve.length,0,O-E,Si,Si)}else Ze=m(Te,Ve,qe,O-E,Y-O,G)}A.push(Ze),$.push(We)}function d(C,S,A,$){let F=[],R=0,P=-1;for(;l.pos>S;){let{id:E,start:O,end:z,size:Y}=l;if(Y>4)l.next();else{if(P>-1&&O<P)break;P<0&&(P=z-r),F.push(E,O,z),R++,l.next()}}if(R){let E=new Uint16Array(R*4),O=F[F.length-2];for(let z=F.length-3,Y=0;z>=0;z-=3)E[Y++]=F[z],E[Y++]=F[z+1]-O,E[Y++]=F[z+2]-O,E[Y++]=Y;A.push(new _n(E,F[2]-O,i)),$.push(O-C)}}function f(C,S){return(A,$,F)=>{let R=0,P=A.length-1,E,O;if(P>=0&&(E=A[P])instanceof je){if(!P&&E.type==C&&E.length==F)return E;(O=E.prop(te.lookAhead))&&(R=$[P]+E.length+O)}return m(C,A,$,F,R,S)}}function p(C,S,A,$,F,R,P,E,O){let z=[],Y=[];for(;C.length>$;)z.push(C.pop()),Y.push(S.pop()+A-F);C.push(m(i.types[P],z,Y,R-F,E-R,O)),S.push(F-A)}function m(C,S,A,$,F,R,P){if(R){let E=[te.contextHash,R];P=P?[E].concat(P):[E]}if(F>25){let E=[te.lookAhead,F];P=P?[E].concat(P):[E]}return new je(C,S,A,$,P)}function y(C,S){let A=l.fork(),$=0,F=0,R=0,P=A.end-r,E={size:0,start:0,skip:0};e:for(let O=A.pos-C;A.pos>O;){let z=A.size;if(A.id==S&&z>=0){E.size=$,E.start=F,E.skip=R,R+=4,$+=4,A.next();continue}let Y=A.pos-z;if(z<0||Y<O||A.start<P)break;let G=A.id>=o?4:0,Te=A.start;for(A.next();A.pos>Y;){if(A.size<0)if(A.size==-3||A.size==-4)G+=4;else break e;else A.id>=o&&(G+=4);A.next()}F=Te,$+=z,R+=G}return(S<0||$==C)&&(E.size=$,E.start=F,E.skip=R),E.size>4?E:void 0}function b(C,S,A){let{id:$,start:F,end:R,size:P}=l;if(l.next(),P>=0&&$<o){let E=A;if(P>4){let O=l.pos-(P-4);for(;l.pos>O;)A=b(C,S,A)}S[--A]=E,S[--A]=R-C,S[--A]=F-C,S[--A]=$}else P==-3?c=$:P==-4&&(h=$);return A}let x=[],k=[];for(;l.pos>0;)u(n.start||0,n.bufferStart||0,x,k,-1,0);let _=(e=n.length)!==null&&e!==void 0?e:x.length?k[0]+x[0].length:0;return new je(a[n.topID],x.reverse(),k.reverse(),_)}var Ap=new WeakMap;function Do(n,e){if(!n.isAnonymous||e instanceof _n||e.type!=n)return 1;let t=Ap.get(e);if(t==null){t=1;for(let i of e.children){if(i.type!=n||!(i instanceof je)){t=1;break}t+=Do(n,i)}Ap.set(e,t)}return t}function Ic(n,e,t,i,r,s,o,l,a){let c=0;for(let p=i;p<r;p++)c+=Do(n,e[p]);let h=Math.ceil(c*1.5/8),u=[],d=[];function f(p,m,y,b,x){for(let k=y;k<b;){let _=k,C=m[k],S=Do(n,p[k]);for(k++;k<b;k++){let A=Do(n,p[k]);if(S+A>=h)break;S+=A}if(k==_+1){if(S>h){let A=p[_];f(A.children,A.positions,0,A.children.length,m[_]+x);continue}u.push(p[_])}else{let A=m[k-1]+p[k-1].length-C;u.push(Ic(n,p,m,_,k,C,A,null,a))}d.push(C+x-s)}}return f(e,t,i,r,0),(l||a)(u,d,o)}var fi=class n{constructor(e,t,i,r,s=!1,o=!1){this.from=e,this.to=t,this.tree=i,this.offset=r,this.open=(s?1:0)|(o?2:0)}get openStart(){return(this.open&1)>0}get openEnd(){return(this.open&2)>0}static addTree(e,t=[],i=!1){let r=[new n(0,e.length,e,0,!1,i)];for(let s of t)s.to>e.length&&r.push(s);return r}static applyChanges(e,t,i=128){if(!t.length)return e;let r=[],s=1,o=e.length?e[0]:null;for(let l=0,a=0,c=0;;l++){let h=l<t.length?t[l]:null,u=h?h.fromA:1e9;if(u-a>=i)for(;o&&o.from<u;){let d=o;if(a>=d.from||u<=d.to||c){let f=Math.max(d.from,a)-c,p=Math.min(d.to,u)-c;d=f>=p?null:new n(f,p,d.tree,d.offset+c,l>0,!!h)}if(d&&r.push(d),o.to>u)break;o=s<e.length?e[s++]:null}if(!h)break;a=h.toA,c=h.toA-h.toB}return r}},Po=class{startParse(e,t,i){return typeof e=="string"&&(e=new Pc(e)),i=i?i.length?i.map(r=>new Ur(r.from,r.to)):[new Ur(0,0)]:[new Ur(0,e.length)],this.createParse(e,t||[],i)}parse(e,t,i){let r=this.startParse(e,t,i);for(;;){let s=r.advance();if(s)return s}}},Pc=class{constructor(e){this.string=e}get length(){return this.string.length}chunk(e){return this.string.slice(e)}get lineChunks(){return!1}read(e,t){return this.string.slice(e,t)}};var Tk=new te({perNode:!0});var Kw=0,Ht=class n{constructor(e,t,i,r){this.name=e,this.set=t,this.base=i,this.modified=r,this.id=Kw++}toString(){let{name:e}=this;for(let t of this.modified)t.name&&(e=`${t.name}(${e})`);return e}static define(e,t){let i=typeof e=="string"?e:"?";if(e instanceof n&&(t=e),t?.base)throw new Error("Can not derive from a modified tag");let r=new n(i,[],null,[]);if(r.set.push(r),t)for(let s of t.set)r.set.push(s);return r}static defineModifier(e){let t=new Bo(e);return i=>i.modified.indexOf(t)>-1?i:Bo.get(i.base||i,i.modified.concat(t).sort((r,s)=>r.id-s.id))}},qw=0,Bo=class n{constructor(e){this.name=e,this.instances=[],this.id=qw++}static get(e,t){if(!t.length)return e;let i=t[0].instances.find(l=>l.base==e&&Gw(t,l.modified));if(i)return i;let r=[],s=new Ht(e.name,r,e,t);for(let l of t)l.instances.push(s);let o=Xw(t);for(let l of e.set)if(!l.modified.length)for(let a of o)r.push(n.get(l,a));return s}};function Gw(n,e){return n.length==e.length&&n.every((t,i)=>t==e[i])}function Xw(n){let e=[[]];for(let t=0;t<n.length;t++)for(let i=0,r=e.length;i<r;i++)e.push(e[i].concat(n[t]));return e.sort((t,i)=>i.length-t.length)}function Lp(n){let e=Object.create(null);for(let t in n){let i=n[t];Array.isArray(i)||(i=[i]);for(let r of t.split(" "))if(r){let s=[],o=2,l=r;for(let u=0;;){if(l=="..."&&u>0&&u+3==r.length){o=1;break}let d=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(l);if(!d)throw new RangeError("Invalid path: "+r);if(s.push(d[0]=="*"?"":d[0][0]=='"'?JSON.parse(d[0]):d[0]),u+=d[0].length,u==r.length)break;let f=r[u++];if(u==r.length&&f=="!"){o=0;break}if(f!="/")throw new RangeError("Invalid path: "+r);l=r.slice(u)}let a=s.length-1,c=s[a];if(!c)throw new RangeError("Invalid path: "+r);let h=new Zi(i,o,a>0?s.slice(0,a):null);e[c]=h.sort(e[c])}}return Yw.add(e)}var Yw=new te({combine(n,e){let t,i,r;for(;n||e;){if(!n||e&&n.depth>=e.depth?(r=e,e=e.next):(r=n,n=n.next),t&&t.mode==r.mode&&!r.context&&!t.context)continue;let s=new Zi(r.tags,r.mode,r.context);t?t.next=s:i=s,t=s}return i}}),Zi=class{constructor(e,t,i,r){this.tags=e,this.mode=t,this.context=i,this.next=r}get opaque(){return this.mode==0}get inherit(){return this.mode==1}sort(e){return!e||e.depth<this.depth?(this.next=e,this):(e.next=this.sort(e.next),e)}get depth(){return this.context?this.context.length:0}};Zi.empty=new Zi([],2,null);function _c(n,e){let t=Object.create(null);for(let s of n)if(!Array.isArray(s.tag))t[s.tag.id]=s.class;else for(let o of s.tag)t[o.id]=s.class;let{scope:i,all:r=null}=e||{};return{style:s=>{let o=r;for(let l of s)for(let a of l.set){let c=t[a.id];if(c){o=o?o+" "+c:c;break}}return o},scope:i}}var L=Ht.define,Oo=L(),Hn=L(),Rp=L(Hn),Dp=L(Hn),Fn=L(),Io=L(Fn),Nc=L(Fn),rn=L(),pi=L(rn),tn=L(),nn=L(),Bc=L(),Gr=L(Bc),No=L(),I={comment:Oo,lineComment:L(Oo),blockComment:L(Oo),docComment:L(Oo),name:Hn,variableName:L(Hn),typeName:Rp,tagName:L(Rp),propertyName:Dp,attributeName:L(Dp),className:L(Hn),labelName:L(Hn),namespace:L(Hn),macroName:L(Hn),literal:Fn,string:Io,docString:L(Io),character:L(Io),attributeValue:L(Io),number:Nc,integer:L(Nc),float:L(Nc),bool:L(Fn),regexp:L(Fn),escape:L(Fn),color:L(Fn),url:L(Fn),keyword:tn,self:L(tn),null:L(tn),atom:L(tn),unit:L(tn),modifier:L(tn),operatorKeyword:L(tn),controlKeyword:L(tn),definitionKeyword:L(tn),moduleKeyword:L(tn),operator:nn,derefOperator:L(nn),arithmeticOperator:L(nn),logicOperator:L(nn),bitwiseOperator:L(nn),compareOperator:L(nn),updateOperator:L(nn),definitionOperator:L(nn),typeOperator:L(nn),controlOperator:L(nn),punctuation:Bc,separator:L(Bc),bracket:Gr,angleBracket:L(Gr),squareBracket:L(Gr),paren:L(Gr),brace:L(Gr),content:rn,heading:pi,heading1:L(pi),heading2:L(pi),heading3:L(pi),heading4:L(pi),heading5:L(pi),heading6:L(pi),contentSeparator:L(rn),list:L(rn),quote:L(rn),emphasis:L(rn),strong:L(rn),link:L(rn),monospace:L(rn),strikethrough:L(rn),inserted:L(),deleted:L(),changed:L(),invalid:L(),meta:No,documentMeta:L(No),annotation:L(No),processingInstruction:L(No),definition:Ht.defineModifier("definition"),constant:Ht.defineModifier("constant"),function:Ht.defineModifier("function"),standard:Ht.defineModifier("standard"),local:Ht.defineModifier("local"),special:Ht.defineModifier("special")};for(let n in I){let e=I[n];e instanceof Ht&&(e.name=n)}var Mk=_c([{tag:I.link,class:"tok-link"},{tag:I.heading,class:"tok-heading"},{tag:I.emphasis,class:"tok-emphasis"},{tag:I.strong,class:"tok-strong"},{tag:I.keyword,class:"tok-keyword"},{tag:I.atom,class:"tok-atom"},{tag:I.bool,class:"tok-bool"},{tag:I.url,class:"tok-url"},{tag:I.labelName,class:"tok-labelName"},{tag:I.inserted,class:"tok-inserted"},{tag:I.deleted,class:"tok-deleted"},{tag:I.literal,class:"tok-literal"},{tag:I.string,class:"tok-string"},{tag:I.number,class:"tok-number"},{tag:[I.regexp,I.escape,I.special(I.string)],class:"tok-string2"},{tag:I.variableName,class:"tok-variableName"},{tag:I.local(I.variableName),class:"tok-variableName tok-local"},{tag:I.definition(I.variableName),class:"tok-variableName tok-definition"},{tag:I.special(I.variableName),class:"tok-variableName2"},{tag:I.definition(I.propertyName),class:"tok-propertyName tok-definition"},{tag:I.typeName,class:"tok-typeName"},{tag:I.namespace,class:"tok-namespace"},{tag:I.className,class:"tok-className"},{tag:I.macroName,class:"tok-macroName"},{tag:I.propertyName,class:"tok-propertyName"},{tag:I.operator,class:"tok-operator"},{tag:I.comment,class:"tok-comment"},{tag:I.meta,class:"tok-meta"},{tag:I.invalid,class:"tok-invalid"},{tag:I.punctuation,class:"tok-punctuation"}]);var Hc,Yr=new te;var Jw=new te,At=class{constructor(e,t,i=[],r=""){this.data=e,this.name=r,ke.prototype.hasOwnProperty("tree")||Object.defineProperty(ke.prototype,"tree",{get(){return yn(this)}}),this.parser=t,this.extension=[Qi.of(this),ke.languageData.of((s,o,l)=>{let a=Pp(s,o,l),c=a.type.prop(Yr);if(!c)return[];let h=s.facet(c),u=a.type.prop(Jw);if(u){let d=a.resolve(o-a.from,l);for(let f of u)if(f.test(d,s)){let p=s.facet(f.facet);return f.type=="replace"?p:p.concat(h)}}return h})].concat(i)}isActiveAt(e,t,i=-1){return Pp(e,t,i).type.prop(Yr)==this.data}findRegions(e){let t=e.facet(Qi);if(t?.data==this.data)return[{from:0,to:e.doc.length}];if(!t||!t.allowsNesting)return[];let i=[],r=(s,o)=>{if(s.prop(Yr)==this.data){i.push({from:o,to:o+s.length});return}let l=s.prop(te.mounted);if(l){if(l.tree.prop(Yr)==this.data){if(l.overlay)for(let a of l.overlay)i.push({from:a.from+o,to:a.to+o});else i.push({from:o,to:o+s.length});return}else if(l.overlay){let a=i.length;if(r(l.tree,l.overlay[0].from+o),i.length>a)return}}for(let a=0;a<s.children.length;a++){let c=s.children[a];c instanceof je&&r(c,s.positions[a]+o)}};return r(yn(e),0),i}get allowsNesting(){return!0}};At.setState=we.define();function Pp(n,e,t){let i=n.facet(Qi),r=yn(n).topNode;if(!i||i.allowsNesting)for(let s=r;s;s=s.enter(e,t,Me.ExcludeBuffers|Me.EnterBracketed))s.type.isTop&&(r=s);return r}function yn(n){let e=n.field(At.state,!1);return e?e.tree:je.empty}var Wc=class{constructor(e){this.doc=e,this.cursorPos=0,this.string="",this.cursor=e.iter()}get length(){return this.doc.length}syncTo(e){return this.string=this.cursor.next(e-this.cursorPos).value,this.cursorPos=e+this.string.length,this.cursorPos-this.string.length}chunk(e){return this.syncTo(e),this.string}get lineChunks(){return!0}read(e,t){let i=this.cursorPos-this.string.length;return e<i||t>=this.cursorPos?this.doc.sliceString(e,t):this.string.slice(e-i,t-i)}},Xr=null,Vc=class n{constructor(e,t,i=[],r,s,o,l,a){this.parser=e,this.state=t,this.fragments=i,this.tree=r,this.treeLen=s,this.viewport=o,this.skipped=l,this.scheduleOn=a,this.parse=null,this.tempSkipped=[]}static create(e,t,i){return new n(e,t,[],je.empty,0,i,[],null)}startParse(){return this.parser.startParse(new Wc(this.state.doc),this.fragments)}work(e,t){return t!=null&&t>=this.state.doc.length&&(t=void 0),this.tree!=je.empty&&this.isDone(t??this.state.doc.length)?(this.takeTree(),!0):this.withContext(()=>{var i;if(typeof e=="number"){let r=Date.now()+e;e=()=>Date.now()>r}for(this.parse||(this.parse=this.startParse()),t!=null&&(this.parse.stoppedAt==null||this.parse.stoppedAt>t)&&t<this.state.doc.length&&this.parse.stopAt(t);;){let r=this.parse.advance();if(r)if(this.fragments=this.withoutTempSkipped(fi.addTree(r,this.fragments,this.parse.stoppedAt!=null)),this.treeLen=(i=this.parse.stoppedAt)!==null&&i!==void 0?i:this.state.doc.length,this.tree=r,this.parse=null,this.treeLen<(t??this.state.doc.length))this.parse=this.startParse();else return!0;if(e())return!1}})}takeTree(){let e,t;this.parse&&(e=this.parse.parsedPos)>=this.treeLen&&((this.parse.stoppedAt==null||this.parse.stoppedAt>e)&&this.parse.stopAt(e),this.withContext(()=>{for(;!(t=this.parse.advance()););}),this.treeLen=e,this.tree=t,this.fragments=this.withoutTempSkipped(fi.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(e){let t=Xr;Xr=this;try{return e()}finally{Xr=t}}withoutTempSkipped(e){for(let t;t=this.tempSkipped.pop();)e=Op(e,t.from,t.to);return e}changes(e,t){let{fragments:i,tree:r,treeLen:s,viewport:o,skipped:l}=this;if(this.takeTree(),!e.empty){let a=[];if(e.iterChangedRanges((c,h,u,d)=>a.push({fromA:c,toA:h,fromB:u,toB:d})),i=fi.applyChanges(i,a),r=je.empty,s=0,o={from:e.mapPos(o.from,-1),to:e.mapPos(o.to,1)},this.skipped.length){l=[];for(let c of this.skipped){let h=e.mapPos(c.from,1),u=e.mapPos(c.to,-1);h<u&&l.push({from:h,to:u})}}}return new n(this.parser,t,i,r,s,o,l,this.scheduleOn)}updateViewport(e){if(this.viewport.from==e.from&&this.viewport.to==e.to)return!1;this.viewport=e;let t=this.skipped.length;for(let i=0;i<this.skipped.length;i++){let{from:r,to:s}=this.skipped[i];r<e.to&&s>e.from&&(this.fragments=Op(this.fragments,r,s),this.skipped.splice(i--,1))}return this.skipped.length>=t?!1:(this.reset(),!0)}reset(){this.parse&&(this.takeTree(),this.parse=null)}skipUntilInView(e,t){this.skipped.push({from:e,to:t})}static getSkippingParser(e){return new class extends Po{createParse(t,i,r){let s=r[0].from,o=r[r.length-1].to;return{parsedPos:s,advance(){let a=Xr;if(a){for(let c of r)a.tempSkipped.push(c);e&&(a.scheduleOn=a.scheduleOn?Promise.all([a.scheduleOn,e]):e)}return this.parsedPos=o,new je(bt.none,[],[],o-s)},stoppedAt:null,stopAt(){}}}}}isDone(e){e=Math.min(e,this.state.doc.length);let t=this.fragments;return this.treeLen>=e&&t.length&&t[0].from==0&&t[0].to>=e}static get(){return Xr}};function Op(n,e,t){return fi.applyChanges(n,[{fromA:e,toA:t,fromB:e,toB:t}])}var Jr=class n{constructor(e){this.context=e,this.tree=e.tree}apply(e){if(!e.docChanged&&this.tree==this.context.tree)return this;let t=this.context.changes(e.changes,e.state),i=this.context.treeLen==e.startState.doc.length?void 0:Math.max(e.changes.mapPos(this.context.treeLen),t.viewport.to);return t.work(20,i)||t.takeTree(),new n(t)}static init(e){let t=Math.min(3e3,e.doc.length),i=Vc.create(e.facet(Qi).parser,e,{from:0,to:t});return i.work(20,t)||i.takeTree(),new n(i)}};At.state=vt.define({create:Jr.init,update(n,e){for(let t of e.effects)if(t.is(At.setState))return t.value;return e.startState.facet(Qi)!=e.state.facet(Qi)?Jr.init(e.state):n.apply(e)}});var _p=n=>{let e=setTimeout(()=>n(),500);return()=>clearTimeout(e)};typeof requestIdleCallback<"u"&&(_p=n=>{let e=-1,t=setTimeout(()=>{e=requestIdleCallback(n,{timeout:400})},100);return()=>e<0?clearTimeout(t):cancelIdleCallback(e)});var Fc=typeof navigator<"u"&&(!((Hc=navigator.scheduling)===null||Hc===void 0)&&Hc.isInputPending)?()=>navigator.scheduling.isInputPending():null,Zw=Nt.fromClass(class{constructor(e){this.view=e,this.working=null,this.workScheduled=0,this.chunkEnd=-1,this.chunkBudget=-1,this.work=this.work.bind(this),this.scheduleWork()}update(e){let t=this.view.state.field(At.state).context;(t.updateViewport(e.view.viewport)||this.view.viewport.to>t.treeLen)&&this.scheduleWork(),(e.docChanged||e.selectionSet)&&(this.view.hasFocus&&(this.chunkBudget+=50),this.scheduleWork()),this.checkAsyncSchedule(t)}scheduleWork(){if(this.working)return;let{state:e}=this.view,t=e.field(At.state);(t.tree!=t.context.tree||!t.context.isDone(e.doc.length))&&(this.working=_p(this.work))}work(e){this.working=null;let t=Date.now();if(this.chunkEnd<t&&(this.chunkEnd<0||this.view.hasFocus)&&(this.chunkEnd=t+3e4,this.chunkBudget=3e3),this.chunkBudget<=0)return;let{state:i,viewport:{to:r}}=this.view,s=i.field(At.state);if(s.tree==s.context.tree&&s.context.isDone(r+1e5))return;let o=Date.now()+Math.min(this.chunkBudget,100,e&&!Fc?Math.max(25,e.timeRemaining()-5):1e9),l=s.context.treeLen<r&&i.doc.length>r+1e3,a=s.context.work(()=>Fc&&Fc()||Date.now()>o,r+(l?0:1e5));this.chunkBudget-=Date.now()-t,(a||this.chunkBudget<=0)&&(s.context.takeTree(),this.view.dispatch({effects:At.setState.of(new Jr(s.context))})),this.chunkBudget>0&&!(a&&!l)&&this.scheduleWork(),this.checkAsyncSchedule(s.context)}checkAsyncSchedule(e){e.scheduleOn&&(this.workScheduled++,e.scheduleOn.then(()=>this.scheduleWork()).catch(t=>Ot(this.view.state,t)).then(()=>this.workScheduled--),e.scheduleOn=null)}destroy(){this.working&&this.working()}isWorking(){return!!(this.working||this.workScheduled>0)}},{eventHandlers:{focus(){this.scheduleWork()}}}),Qi=V.define({combine(n){return n.length?n[0]:null},enables:n=>[At.state,Zw,j.contentAttributes.compute([n],e=>{let t=e.facet(n);return t&&t.name?{"data-language":t.name}:{}})]});var Qw=V.define(),_o=V.define({combine:n=>{if(!n.length)return" ";let e=n[0];if(!e||/\S/.test(e)||Array.from(e).some(t=>t!=e[0]))throw new Error("Invalid indent unit: "+JSON.stringify(n[0]));return e}});function Zr(n){let e=n.facet(_o);return e.charCodeAt(0)==9?n.tabSize*e.length:e.length}function Qr(n,e){let t="",i=n.tabSize,r=n.facet(_o)[0];if(r==" "){for(;e>=i;)t+=" ",e-=i;r=" "}for(let s=0;s<e;s++)t+=r;return t}function qc(n,e){n instanceof ke&&(n=new mi(n));for(let i of n.state.facet(Qw)){let r=i(n,e);if(r!==void 0)return r}let t=yn(n.state);return t.length>=e?tx(n,t,e):null}var mi=class{constructor(e,t={}){this.state=e,this.options=t,this.unit=Zr(e)}lineAt(e,t=1){let i=this.state.doc.lineAt(e),{simulateBreak:r,simulateDoubleBreak:s}=this.options;return r!=null&&r>=i.from&&r<=i.to?s&&r==e?{text:"",from:e}:(t<0?r<e:r<=e)?{text:i.text.slice(r-i.from),from:r}:{text:i.text.slice(0,r-i.from),from:i.from}:i}textAfterPos(e,t=1){if(this.options.simulateDoubleBreak&&e==this.options.simulateBreak)return"";let{text:i,from:r}=this.lineAt(e,t);return i.slice(e-r,Math.min(i.length,e+100-r))}column(e,t=1){let{text:i,from:r}=this.lineAt(e,t),s=this.countColumn(i,e-r),o=this.options.overrideIndentation?this.options.overrideIndentation(r):-1;return o>-1&&(s+=o-this.countColumn(i,i.search(/\S|$/))),s}countColumn(e,t=e.length){return si(e,this.state.tabSize,t)}lineIndent(e,t=1){let{text:i,from:r}=this.lineAt(e,t),s=this.options.overrideIndentation;if(s){let o=s(r);if(o>-1)return o}return this.countColumn(i,i.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}},ex=new te;function tx(n,e,t){let i=e.resolveStack(t),r=e.resolveInner(t,-1).resolve(t,0).enterUnfinishedNodesBefore(t);if(r!=i.node){let s=[];for(let o=r;o&&!(o.from<i.node.from||o.to>i.node.to||o.from==i.node.from&&o.type==i.node.type);o=o.parent)s.push(o);for(let o=s.length-1;o>=0;o--)i={node:s[o],next:i}}return Hp(i,n,t)}function Hp(n,e,t){for(let i=n;i;i=i.next){let r=ix(i.node);if(r)return r($c.create(e,t,i))}return 0}function nx(n){return n.pos==n.options.simulateBreak&&n.options.simulateDoubleBreak}function ix(n){let e=n.type.prop(ex);if(e)return e;let t=n.firstChild,i;if(t&&(i=t.type.prop(te.closedBy))){let r=n.lastChild,s=r&&i.indexOf(r.name)>-1;return o=>lx(o,!0,1,void 0,s&&!nx(o)?r.from:void 0)}return n.parent==null?rx:null}function rx(){return 0}var $c=class n extends mi{constructor(e,t,i){super(e.state,e.options),this.base=e,this.pos=t,this.context=i}get node(){return this.context.node}static create(e,t,i){return new n(e,t,i)}get textAfter(){return this.textAfterPos(this.pos)}get baseIndent(){return this.baseIndentFor(this.node)}baseIndentFor(e){let t=this.state.doc.lineAt(e.from);for(;;){let i=e.resolve(t.from);for(;i.parent&&i.parent.from==i.from;)i=i.parent;if(sx(i,e))break;t=this.state.doc.lineAt(i.from)}return this.lineIndent(t.from)}continue(){return Hp(this.context.next,this.base,this.pos)}};function sx(n,e){for(let t=e;t;t=t.parent)if(n==t)return!0;return!1}function ox(n){let e=n.node,t=e.childAfter(e.from),i=e.lastChild;if(!t)return null;let r=n.options.simulateBreak,s=n.state.doc.lineAt(t.from),o=r==null||r<=s.from?s.to:Math.min(s.to,r);for(let l=t.to;;){let a=e.childAfter(l);if(!a||a==i)return null;if(!a.type.isSkipped){if(a.from>=o)return null;let c=/^ */.exec(s.text.slice(t.to-s.from))[0].length;return{from:t.from,to:t.to+c}}l=a.to}}function lx(n,e,t,i,r){let s=n.textAfter,o=s.match(/^\s*/)[0].length,l=i&&s.slice(o,o+i.length)==i||r==n.pos+o,a=e?ox(n):null;return a?l?n.column(a.from):n.column(a.to):n.baseIndent+(l?0:n.unit*t)}var Uc=class n{constructor(e,t){this.specs=e;let i;function r(l){let a=kt.newName();return(i||(i=Object.create(null)))["."+a]=l,a}let s=typeof t.all=="string"?t.all:t.all?r(t.all):void 0,o=t.scope;this.scope=o instanceof At?l=>l.prop(Yr)==o.data:o?l=>l==o:void 0,this.style=_c(e.map(l=>({tag:l.tag,class:l.class||r(Object.assign({},l,{tag:null}))})),{all:s}).style,this.module=i?new kt(i):null,this.themeType=t.themeType}static define(e,t){return new n(e,t||{})}};var Fk=Uc.define([{tag:I.meta,color:"#404740"},{tag:I.link,textDecoration:"underline"},{tag:I.heading,textDecoration:"underline",fontWeight:"bold"},{tag:I.emphasis,fontStyle:"italic"},{tag:I.strong,fontWeight:"bold"},{tag:I.strikethrough,textDecoration:"line-through"},{tag:I.keyword,color:"#708"},{tag:[I.atom,I.bool,I.url,I.contentSeparator,I.labelName],color:"#219"},{tag:[I.literal,I.inserted],color:"#164"},{tag:[I.string,I.deleted],color:"#a11"},{tag:[I.regexp,I.escape,I.special(I.string)],color:"#e40"},{tag:I.definition(I.variableName),color:"#00f"},{tag:I.local(I.variableName),color:"#30a"},{tag:[I.typeName,I.namespace],color:"#085"},{tag:I.className,color:"#167"},{tag:[I.special(I.variableName),I.macroName],color:"#256"},{tag:I.definition(I.propertyName),color:"#00c"},{tag:I.comment,color:"#940"},{tag:I.invalid,color:"#f00"}]);var ax=1e4,cx="()[]{}";var hx=new te;function jc(n,e,t){let i=n.prop(e<0?te.openedBy:te.closedBy);if(i)return i;if(n.name.length==1){let r=t.indexOf(n.name);if(r>-1&&r%2==(e<0?1:0))return[t[r+e]]}return null}function Kc(n){let e=n.type.prop(hx);return e?e(n.node):n}function gi(n,e,t,i={}){let r=i.maxScanDistance||ax,s=i.brackets||cx,o=yn(n),l=o.resolveInner(e,t);for(let a=l;a;a=a.parent){let c=jc(a.type,t,s);if(c&&a.from<a.to){let h=Kc(a);if(h&&(t>0?e>=h.from&&e<h.to:e>h.from&&e<=h.to))return ux(n,e,t,a,h,c,s)}}return dx(n,e,t,o,l.type,r,s)}function ux(n,e,t,i,r,s,o){let l=i.parent,a={from:r.from,to:r.to},c=0,h=l?.cursor();if(h&&(t<0?h.childBefore(i.from):h.childAfter(i.to)))do if(t<0?h.to<=i.from:h.from>=i.to){if(c==0&&s.indexOf(h.type.name)>-1&&h.from<h.to){let u=Kc(h);return{start:a,end:u?{from:u.from,to:u.to}:void 0,matched:!0}}else if(jc(h.type,t,o))c++;else if(jc(h.type,-t,o)){if(c==0){let u=Kc(h);return{start:a,end:u&&u.from<u.to?{from:u.from,to:u.to}:void 0,matched:!1}}c--}}while(t<0?h.prevSibling():h.nextSibling());return{start:a,matched:!1}}function dx(n,e,t,i,r,s,o){if(t<0?!e:e==n.doc.length)return null;let l=t<0?n.sliceDoc(e-1,e):n.sliceDoc(e,e+1),a=o.indexOf(l);if(a<0||a%2==0!=t>0)return null;let c={from:t<0?e-1:e,to:t>0?e+1:e},h=n.doc.iterRange(e,t>0?n.doc.length:0),u=0;for(let d=0;!h.next().done&&d<=s;){let f=h.value;t<0&&(d+=f.length);let p=e+d*t;for(let m=t>0?0:f.length-1,y=t>0?f.length:-1;m!=y;m+=t){let b=o.indexOf(f[m]);if(!(b<0||i.resolveInner(p+m,1).type!=r))if(b%2==0==t>0)u++;else{if(u==1)return{start:c,end:{from:p+m,to:p+m+1},matched:b>>1==a>>1};u--}}t>0&&(d+=f.length)}return h.done?{start:c,matched:!1}:null}var fx=Object.create(null),Ip=[bt.none];var Np=[],Bp=Object.create(null),px=Object.create(null);for(let[n,e]of[["variable","variableName"],["variable-2","variableName.special"],["string-2","string.special"],["def","variableName.definition"],["tag","tagName"],["attribute","attributeName"],["type","typeName"],["builtin","variableName.standard"],["qualifier","modifier"],["error","invalid"],["header","heading"],["property","propertyName"]])px[n]=mx(fx,e);function zc(n,e){Np.indexOf(n)>-1||(Np.push(n),console.warn(e))}function mx(n,e){let t=[];for(let l of e.split(" ")){let a=[];for(let c of l.split(".")){let h=n[c]||I[c];h?typeof h=="function"?a.length?a=a.map(h):zc(c,`Modifier ${c} used at start of tag`):a.length?zc(c,`Tag ${c} used as modifier`):a=Array.isArray(h)?h:[h]:zc(c,`Unknown highlighting tag ${c}`)}for(let c of a)t.push(c)}if(!t.length)return 0;let i=e.replace(/ /g,"_"),r=i+" "+t.map(l=>l.id),s=Bp[r];if(s)return s.id;let o=Bp[r]=bt.define({id:Ip.length,name:i,props:[Lp({[i]:t})]});return Ip.push(o),o.id}var zk={rtl:me.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"rtl"},bidiIsolate:ge.RTL}),ltr:me.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"ltr"},bidiIsolate:ge.LTR}),auto:me.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"auto"},bidiIsolate:null})};var gx=n=>{let{state:e}=n,t=e.doc.lineAt(e.selection.main.from),i=eh(n.state,t.from);return i.line?bx(n):i.block?wx(n):!1};function Qc(n,e){return({state:t,dispatch:i})=>{if(t.readOnly)return!1;let r=n(e,t);return r?(i(t.update(r)),!0):!1}}var bx=Qc(kx,0);var yx=Qc(qp,0);var wx=Qc((n,e)=>qp(n,e,vx(e)),0);function eh(n,e){let t=n.languageDataAt("commentTokens",e,1);return t.length?t[0]:{}}var es=50;function xx(n,{open:e,close:t},i,r){let s=n.sliceDoc(i-es,i),o=n.sliceDoc(r,r+es),l=/\s*$/.exec(s)[0].length,a=/^\s*/.exec(o)[0].length,c=s.length-l;if(s.slice(c-e.length,c)==e&&o.slice(a,a+t.length)==t)return{open:{pos:i-l,margin:l&&1},close:{pos:r+a,margin:a&&1}};let h,u;r-i<=2*es?h=u=n.sliceDoc(i,r):(h=n.sliceDoc(i,i+es),u=n.sliceDoc(r-es,r));let d=/^\s*/.exec(h)[0].length,f=/\s*$/.exec(u)[0].length,p=u.length-f-t.length;return h.slice(d,d+e.length)==e&&u.slice(p,p+t.length)==t?{open:{pos:i+d+e.length,margin:/\s/.test(h.charAt(d+e.length))?1:0},close:{pos:r-f-t.length,margin:/\s/.test(u.charAt(p-1))?1:0}}:null}function vx(n){let e=[];for(let t of n.selection.ranges){let i=n.doc.lineAt(t.from),r=t.to<=i.to?i:n.doc.lineAt(t.to);r.from>i.from&&r.from==t.to&&(r=t.to==i.to+1?i:n.doc.lineAt(t.to-1));let s=e.length-1;s>=0&&e[s].to>i.from?e[s].to=r.to:e.push({from:i.from+/^\s*/.exec(i.text)[0].length,to:r.to})}return e}function qp(n,e,t=e.selection.ranges){let i=t.map(s=>eh(e,s.from).block);if(!i.every(s=>s))return null;let r=t.map((s,o)=>xx(e,i[o],s.from,s.to));if(n!=2&&!r.every(s=>s))return{changes:e.changes(t.map((s,o)=>r[o]?[]:[{from:s.from,insert:i[o].open+" "},{from:s.to,insert:" "+i[o].close}]))};if(n!=1&&r.some(s=>s)){let s=[];for(let o=0,l;o<r.length;o++)if(l=r[o]){let a=i[o],{open:c,close:h}=l;s.push({from:c.pos-a.open.length,to:c.pos+c.margin},{from:h.pos-h.margin,to:h.pos+a.close.length})}return{changes:s}}return null}function kx(n,e,t=e.selection.ranges){let i=[],r=-1;e:for(let{from:s,to:o}of t){let l=i.length,a=1e9,c;for(let h=s;h<=o;){let u=e.doc.lineAt(h);if(c==null&&(c=eh(e,u.from).line,!c))continue e;if(u.from>r&&(s==o||o>u.from)){r=u.from;let d=/^\s*/.exec(u.text)[0].length,f=d==u.length,p=u.text.slice(d,d+c.length)==c?d:-1;d<u.text.length&&d<a&&(a=d),i.push({line:u,comment:p,token:c,indent:d,empty:f,single:!1})}h=u.to+1}if(a<1e9)for(let h=l;h<i.length;h++)i[h].indent<i[h].line.text.length&&(i[h].indent=a);i.length==l+1&&(i[l].single=!0)}if(n!=2&&i.some(s=>s.comment<0&&(!s.empty||s.single))){let s=[];for(let{line:l,token:a,indent:c,empty:h,single:u}of i)(u||!h)&&s.push({from:l.from+c,insert:a+" "});let o=e.changes(s);return{changes:o,selection:e.selection.map(o,1)}}else if(n!=1&&i.some(s=>s.comment>=0)){let s=[];for(let{line:o,comment:l,token:a}of i)if(l>=0){let c=o.from+l,h=c+a.length;o.text[h-o.from]==" "&&h++,s.push({from:c,to:h})}return{changes:s}}return null}var Xc=ht.define(),Sx=ht.define(),Cx=V.define(),Gp=V.define({combine(n){return Hi(n,{minDepth:100,newGroupDelay:500,joinToEvent:(e,t)=>t},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(e,t)=>(i,r)=>e(i,r)||t(i,r)})}}),Xp=vt.define({create(){return bi.empty},update(n,e){let t=e.state.facet(Gp),i=e.annotation(Xc);if(i){let a=Ft.fromTransaction(e,i.selection),c=i.side,h=c==0?n.undone:n.done;return a?h=Fo(h,h.length,t.minDepth,a):h=Qp(h,e.startState.selection),new bi(c==0?i.rest:h,c==0?h:i.rest)}let r=e.annotation(Sx);if((r=="full"||r=="before")&&(n=n.isolate()),e.annotation(Ie.addToHistory)===!1)return e.changes.empty?n:n.addMapping(e.changes.desc);let s=Ft.fromTransaction(e),o=e.annotation(Ie.time),l=e.annotation(Ie.userEvent);return s?n=n.addChanges(s,o,l,t,e):e.selection&&(n=n.addSelection(e.startState.selection,o,l,t.newGroupDelay)),(r=="full"||r=="after")&&(n=n.isolate()),n},toJSON(n){return{done:n.done.map(e=>e.toJSON()),undone:n.undone.map(e=>e.toJSON())}},fromJSON(n){return new bi(n.done.map(Ft.fromJSON),n.undone.map(Ft.fromJSON))}});function Yp(n={}){return[Xp,Gp.of(n),j.domEventHandlers({beforeinput(e,t){let i=e.inputType=="historyUndo"?Jp:e.inputType=="historyRedo"?Yc:null;return i?(e.preventDefault(),i(t)):!1}})]}function zo(n,e){return function({state:t,dispatch:i}){if(!e&&t.readOnly)return!1;let r=t.field(Xp,!1);if(!r)return!1;let s=r.pop(n,t,e);return s?(i(s),!0):!1}}var Jp=zo(0,!1),Yc=zo(1,!1),Tx=zo(0,!0),Ax=zo(1,!0);var Ft=class n{constructor(e,t,i,r,s){this.changes=e,this.effects=t,this.mapped=i,this.startSelection=r,this.selectionsAfter=s}setSelAfter(e){return new n(this.changes,this.effects,this.mapped,this.startSelection,e)}toJSON(){var e,t,i;return{changes:(e=this.changes)===null||e===void 0?void 0:e.toJSON(),mapped:(t=this.mapped)===null||t===void 0?void 0:t.toJSON(),startSelection:(i=this.startSelection)===null||i===void 0?void 0:i.toJSON(),selectionsAfter:this.selectionsAfter.map(r=>r.toJSON())}}static fromJSON(e){return new n(e.changes&&tt.fromJSON(e.changes),[],e.mapped&&dn.fromJSON(e.mapped),e.startSelection&&D.fromJSON(e.startSelection),e.selectionsAfter.map(D.fromJSON))}static fromTransaction(e,t){let i=Et;for(let r of e.startState.facet(Cx)){let s=r(e);s.length&&(i=i.concat(s))}return!i.length&&e.changes.empty?null:new n(e.changes.invert(e.startState.doc),i,void 0,t||e.startState.selection,Et)}static selection(e){return new n(void 0,Et,void 0,void 0,e)}};function Fo(n,e,t,i){let r=e+1>t+20?e-t-1:0,s=n.slice(r,e);return s.push(i),s}function Ex(n,e){let t=[],i=!1;return n.iterChangedRanges((r,s)=>t.push(r,s)),e.iterChangedRanges((r,s,o,l)=>{for(let a=0;a<t.length;){let c=t[a++],h=t[a++];l>=c&&o<=h&&(i=!0)}}),i}function Mx(n,e){return n.ranges.length==e.ranges.length&&n.ranges.filter((t,i)=>t.empty!=e.ranges[i].empty).length===0}function Zp(n,e){return n.length?e.length?n.concat(e):n:e}var Et=[],Rx=200;function Qp(n,e){if(n.length){let t=n[n.length-1],i=t.selectionsAfter.slice(Math.max(0,t.selectionsAfter.length-Rx));return i.length&&i[i.length-1].eq(e)?n:(i.push(e),Fo(n,n.length-1,1e9,t.setSelAfter(i)))}else return[Ft.selection([e])]}function Dx(n){let e=n[n.length-1],t=n.slice();return t[n.length-1]=e.setSelAfter(e.selectionsAfter.slice(0,e.selectionsAfter.length-1)),t}function Gc(n,e){if(!n.length)return n;let t=n.length,i=Et;for(;t;){let r=Lx(n[t-1],e,i);if(r.changes&&!r.changes.empty||r.effects.length){let s=n.slice(0,t);return s[t-1]=r,s}else e=r.mapped,t--,i=r.selectionsAfter}return i.length?[Ft.selection(i)]:Et}function Lx(n,e,t){let i=Zp(n.selectionsAfter.length?n.selectionsAfter.map(l=>l.map(e)):Et,t);if(!n.changes)return Ft.selection(i);let r=n.changes.map(e),s=e.mapDesc(n.changes,!0),o=n.mapped?n.mapped.composeDesc(s):s;return new Ft(r,we.mapEffects(n.effects,e),o,n.startSelection.map(s),i)}var Px=/^(input\.type|delete)($|\.)/,bi=class n{constructor(e,t,i=0,r=void 0){this.done=e,this.undone=t,this.prevTime=i,this.prevUserEvent=r}isolate(){return this.prevTime?new n(this.done,this.undone):this}addChanges(e,t,i,r,s){let o=this.done,l=o[o.length-1];return l&&l.changes&&!l.changes.empty&&e.changes&&(!i||Px.test(i))&&(!l.selectionsAfter.length&&t-this.prevTime<r.newGroupDelay&&r.joinToEvent(s,Ex(l.changes,e.changes))||i=="input.type.compose")?o=Fo(o,o.length-1,r.minDepth,new Ft(e.changes.compose(l.changes),Zp(we.mapEffects(e.effects,l.changes),l.effects),l.mapped,l.startSelection,Et)):o=Fo(o,o.length,r.minDepth,e),new n(o,Et,t,i)}addSelection(e,t,i,r){let s=this.done.length?this.done[this.done.length-1].selectionsAfter:Et;return s.length>0&&t-this.prevTime<r&&i==this.prevUserEvent&&i&&/^select($|\.)/.test(i)&&Mx(s[s.length-1],e)?this:new n(Qp(this.done,e),this.undone,t,i)}addMapping(e){return new n(Gc(this.done,e),Gc(this.undone,e),this.prevTime,this.prevUserEvent)}pop(e,t,i){let r=e==0?this.done:this.undone;if(r.length==0)return null;let s=r[r.length-1],o=s.selectionsAfter[0]||(s.startSelection?s.startSelection.map(s.changes.invertedDesc,1):t.selection);if(i&&s.selectionsAfter.length)return t.update({selection:s.selectionsAfter[s.selectionsAfter.length-1],annotations:Xc.of({side:e,rest:Dx(r),selection:o}),userEvent:e==0?"select.undo":"select.redo",scrollIntoView:!0});if(s.changes){let l=r.length==1?Et:r.slice(0,r.length-1);return s.mapped&&(l=Gc(l,s.mapped)),t.update({changes:s.changes,selection:s.startSelection,effects:s.effects,annotations:Xc.of({side:e,rest:l,selection:o}),filter:!1,userEvent:e==0?"undo":"redo",scrollIntoView:!0})}else return null}};bi.empty=new bi(Et,Et);var em=[{key:"Mod-z",run:Jp,preventDefault:!0},{key:"Mod-y",mac:"Mod-Shift-z",run:Yc,preventDefault:!0},{linux:"Ctrl-Shift-z",run:Yc,preventDefault:!0},{key:"Mod-u",run:Tx,preventDefault:!0},{key:"Alt-u",mac:"Mod-Shift-u",run:Ax,preventDefault:!0}];function er(n,e){return D.create(n.ranges.map(e),n.mainIndex)}function zt(n,e){return n.update({selection:e,scrollIntoView:!0,userEvent:"select"})}function Wt({state:n,dispatch:e},t){let i=er(n.selection,t);return i.eq(n.selection,!0)?!1:(e(zt(n,i)),!0)}function Wo(n,e){return D.cursor(e?n.to:n.from)}function tm(n,e){return Wt(n,t=>t.empty?n.moveByChar(t,e):Wo(t,e))}function Ye(n){return n.textDirectionAt(n.state.selection.main.head)==ge.LTR}var nm=n=>tm(n,!Ye(n)),im=n=>tm(n,Ye(n));function rm(n,e){return Wt(n,t=>t.empty?n.moveByGroup(t,e):Wo(t,e))}var Ox=n=>rm(n,!Ye(n)),Ix=n=>rm(n,Ye(n));var qk=typeof Intl<"u"&&Intl.Segmenter?new Intl.Segmenter(void 0,{granularity:"word"}):null;function Nx(n,e,t){if(e.type.prop(t))return!0;let i=e.to-e.from;return i&&(i>2||/[^\s,.;:]/.test(n.sliceDoc(e.from,e.to)))||e.firstChild}function Vo(n,e,t){let i=yn(n).resolveInner(e.head),r=t?te.closedBy:te.openedBy;for(let a=e.head;;){let c=t?i.childAfter(a):i.childBefore(a);if(!c)break;Nx(n,c,r)?i=c:a=t?c.to:c.from}let s=i.type.prop(r),o,l;return s&&(o=t?gi(n,i.from,1):gi(n,i.to,-1))&&o.matched?l=t?o.end.to:o.end.from:l=t?i.to:i.from,D.cursor(l,t?-1:1)}var Bx=n=>Wt(n,e=>Vo(n.state,e,!Ye(n))),_x=n=>Wt(n,e=>Vo(n.state,e,Ye(n)));function sm(n,e){return Wt(n,t=>{if(!t.empty)return Wo(t,e);let i=n.moveVertically(t,e);return i.head!=t.head?i:n.moveToLineBoundary(t,e)})}var om=n=>sm(n,!1),lm=n=>sm(n,!0);function am(n){let e=n.scrollDOM.clientHeight<n.scrollDOM.scrollHeight-2,t=0,i=0,r;if(e){for(let s of n.state.facet(j.scrollMargins)){let o=s(n);o?.top&&(t=Math.max(o?.top,t)),o?.bottom&&(i=Math.max(o?.bottom,i))}r=n.scrollDOM.clientHeight-t-i}else r=(n.dom.ownerDocument.defaultView||window).innerHeight;return{marginTop:t,marginBottom:i,selfScroll:e,height:Math.max(n.defaultLineHeight,r-5)}}function cm(n,e){let t=am(n),{state:i}=n,r=er(i.selection,o=>o.empty?n.moveVertically(o,e,t.height):Wo(o,e));if(r.eq(i.selection))return!1;let s;if(t.selfScroll){let o=n.coordsAtPos(i.selection.main.head),l=n.scrollDOM.getBoundingClientRect(),a=l.top+t.marginTop,c=l.bottom-t.marginBottom;o&&o.top>a&&o.bottom<c&&(s=j.scrollIntoView(r.main.head,{y:"start",yMargin:o.top-a}))}return n.dispatch(zt(i,r),{effects:s}),!0}var Fp=n=>cm(n,!1),Jc=n=>cm(n,!0);function zn(n,e,t){let i=n.lineBlockAt(e.head),r=n.moveToLineBoundary(e,t);if(r.head==e.head&&r.head!=(t?i.to:i.from)&&(r=n.moveToLineBoundary(e,t,!1)),!t&&r.head==i.from&&i.length){let s=/^\s*/.exec(n.state.sliceDoc(i.from,Math.min(i.from+100,i.to)))[0].length;s&&e.head!=i.from+s&&(r=D.cursor(i.from+s))}return r}var Hx=n=>Wt(n,e=>zn(n,e,!0)),Fx=n=>Wt(n,e=>zn(n,e,!1)),zx=n=>Wt(n,e=>zn(n,e,!Ye(n))),Wx=n=>Wt(n,e=>zn(n,e,Ye(n))),Vx=n=>Wt(n,e=>n.moveToLineBoundary(e,!1,!1)),$x=n=>Wt(n,e=>n.moveToLineBoundary(e,!0,!1));function Ux(n,e,t){let i=!1,r=er(n.selection,s=>{let o=gi(n,s.head,-1)||gi(n,s.head,1)||s.head>0&&gi(n,s.head-1,1)||s.head<n.doc.length&&gi(n,s.head+1,-1);if(!o||!o.end)return s;i=!0;let l=o.start.from==s.head?o.end.to:o.end.from;return t?D.range(s.anchor,l):D.cursor(l)});return i?(e(zt(n,r)),!0):!1}var jx=({state:n,dispatch:e})=>Ux(n,e,!1);function Mt(n,e,t){let i=er(n.state.selection,r=>{r.undirectional&&r.head>=r.anchor!=e&&(r=D.range(r.head,r.anchor));let s=t(r);return D.range(r.anchor,s.head,s.goalColumn,s.bidiLevel||void 0,s.assoc)});return i.eq(n.state.selection)?!1:(n.dispatch(zt(n.state,i)),!0)}function hm(n,e){return Mt(n,e,t=>n.moveByChar(t,e))}var um=n=>hm(n,!Ye(n)),dm=n=>hm(n,Ye(n));function fm(n,e){return Mt(n,e,t=>n.moveByGroup(t,e))}var Kx=n=>fm(n,!Ye(n)),qx=n=>fm(n,Ye(n));var Gx=n=>{let e=!Ye(n);return Mt(n,e,t=>Vo(n.state,t,e))},Xx=n=>{let e=Ye(n);return Mt(n,e,t=>Vo(n.state,t,e))};function pm(n,e){return Mt(n,e,t=>n.moveVertically(t,e))}var mm=n=>pm(n,!1),gm=n=>pm(n,!0);function bm(n,e){return Mt(n,e,t=>n.moveVertically(t,e,am(n).height))}var zp=n=>bm(n,!1),Wp=n=>bm(n,!0),Yx=n=>Mt(n,!0,e=>zn(n,e,!0)),Jx=n=>Mt(n,!1,e=>zn(n,e,!1)),Zx=n=>{let e=!Ye(n);return Mt(n,e,t=>zn(n,t,e))},Qx=n=>{let e=Ye(n);return Mt(n,e,t=>zn(n,t,e))},e1=n=>Mt(n,!1,e=>D.cursor(n.lineBlockAt(e.head).from)),t1=n=>Mt(n,!0,e=>D.cursor(n.lineBlockAt(e.head).to)),Vp=({state:n,dispatch:e})=>(e(zt(n,{anchor:0})),!0),$p=({state:n,dispatch:e})=>(e(zt(n,{anchor:n.doc.length})),!0),Up=({state:n,dispatch:e})=>(e(zt(n,{anchor:n.selection.main.anchor,head:0})),!0),jp=({state:n,dispatch:e})=>(e(zt(n,{anchor:n.selection.main.anchor,head:n.doc.length})),!0),n1=({state:n,dispatch:e})=>(e(n.update({selection:{anchor:0,head:n.doc.length},userEvent:"select"})),!0),i1=({state:n,dispatch:e})=>{let t=$o(n).map(({from:i,to:r})=>D.undirectionalRange(i,Math.min(r+1,n.doc.length)));return e(n.update({selection:D.create(t),userEvent:"select"})),!0},r1=({state:n,dispatch:e})=>{let t=er(n.selection,i=>{let r=yn(n),s=r.resolveStack(i.from,1);if(i.empty){let o=r.resolveStack(i.from,-1);o.node.from>=s.node.from&&o.node.to<=s.node.to&&(s=o)}for(let o=s;o;o=o.next){let{node:l}=o;if((l.from<i.from&&l.to>=i.to||l.to>i.to&&l.from<=i.from)&&o.next)return D.undirectionalRange(l.from,l.to)}return i});return t.eq(n.selection)?!1:(e(zt(n,t)),!0)};function ym(n,e){let{state:t}=n,i=t.selection,r=t.selection.ranges.slice();for(let s of t.selection.ranges){let o=t.doc.lineAt(s.head);if(e?o.to<n.state.doc.length:o.from>0)for(let l=s;;){let a=n.moveVertically(l,e);if(a.head<o.from||a.head>o.to){r.some(c=>c.head==a.head)||r.push(a);break}else{if(a.head==l.head)break;l=a}}}return r.length==i.ranges.length?!1:(n.dispatch(zt(t,D.create(r,r.length-1))),!0)}var s1=n=>ym(n,!1),o1=n=>ym(n,!0),l1=({state:n,dispatch:e})=>{let t=n.selection,i=null;return t.ranges.length>1?i=D.create([t.main]):t.main.empty||(i=D.create([D.cursor(t.main.head)])),i?(e(zt(n,i)),!0):!1};function ts(n,e){if(n.state.readOnly)return!1;let t="delete.selection",{state:i}=n,r=i.changeByRange(s=>{let{from:o,to:l}=s;if(o==l){let a=e(s);a<o?(t="delete.backward",a=Ho(n,a,!1)):a>o&&(t="delete.forward",a=Ho(n,a,!0)),o=Math.min(o,a),l=Math.max(l,a)}else o=Ho(n,o,!1),l=Ho(n,l,!0);return o==l?{range:s}:{changes:{from:o,to:l},range:D.cursor(o,o<s.head?-1:1)}});return r.changes.empty?!1:(n.dispatch(i.update(r,{scrollIntoView:!0,userEvent:t,effects:t=="delete.selection"?j.announce.of(i.phrase("Selection deleted")):void 0})),!0)}function Ho(n,e,t){if(n instanceof j)for(let i of n.state.facet(j.atomicRanges).map(r=>r(n)))i.between(e,e,(r,s)=>{r<e&&s>e&&(e=t?s:r)});return e}var wm=(n,e,t)=>ts(n,i=>{let r=i.from,{state:s}=n,o=s.doc.lineAt(r),l,a;if(t&&!e&&r>o.from&&r<o.from+200&&!/[^ \t]/.test(l=o.text.slice(0,r-o.from))){if(l[l.length-1]==" ")return r-1;let c=si(l,s.tabSize),h=c%Zr(s)||Zr(s);for(let u=0;u<h&&l[l.length-1-u]==" ";u++)r--;a=r}else a=ze(o.text,r-o.from,e,e)+o.from,a==r&&o.number!=(e?s.doc.lines:1)?a+=e?1:-1:!e&&/[\ufe00-\ufe0f]/.test(o.text.slice(a-o.from,r-o.from))&&(a=ze(o.text,a-o.from,!1,!1)+o.from);return a}),Zc=n=>wm(n,!1,!0);var xm=n=>wm(n,!0,!1),vm=(n,e)=>ts(n,t=>{let i=t.head,{state:r}=n,s=r.doc.lineAt(i),o=r.charCategorizer(i);for(let l=null;;){if(i==(e?s.to:s.from)){i==t.head&&s.number!=(e?r.doc.lines:1)&&(i+=e?1:-1);break}let a=ze(s.text,i-s.from,e)+s.from,c=s.text.slice(Math.min(i,a)-s.from,Math.max(i,a)-s.from),h=o(c);if(l!=null&&h!=l)break;(c!=" "||i!=t.head)&&(l=h),i=a}return i}),km=n=>vm(n,!1),a1=n=>vm(n,!0);var c1=n=>ts(n,e=>{let t=n.lineBlockAt(e.head).to;return e.head<t?t:Math.min(n.state.doc.length,e.head+1)});var h1=n=>ts(n,e=>{let t=n.moveToLineBoundary(e,!1).head;return e.head>t?t:Math.max(0,e.head-1)}),u1=n=>ts(n,e=>{let t=n.moveToLineBoundary(e,!0).head;return e.head<t?t:Math.min(n.state.doc.length,e.head+1)});var d1=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=n.changeByRange(i=>({changes:{from:i.from,to:i.to,insert:ne.of(["",""])},range:D.cursor(i.from)}));return e(n.update(t,{scrollIntoView:!0,userEvent:"input"})),!0},f1=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=n.changeByRange(i=>{if(!i.empty||i.from==0||i.from==n.doc.length)return{range:i};let r=i.from,s=n.doc.lineAt(r),o=r==s.from?r-1:ze(s.text,r-s.from,!1)+s.from,l=r==s.to?r+1:ze(s.text,r-s.from,!0)+s.from;return{changes:{from:o,to:l,insert:n.doc.slice(r,l).append(n.doc.slice(o,r))},range:D.cursor(l)}});return t.changes.empty?!1:(e(n.update(t,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function $o(n){let e=[],t=-1;for(let i of n.selection.ranges){let r=n.doc.lineAt(i.from),s=n.doc.lineAt(i.to);if(!i.empty&&i.to==s.from&&(s=n.doc.lineAt(i.to-1)),t>=r.number){let o=e[e.length-1];o.to=s.to,o.ranges.push(i)}else e.push({from:r.from,to:s.to,ranges:[i]});t=s.number+1}return e}function Sm(n,e,t){if(n.readOnly)return!1;let i=[],r=[];for(let s of $o(n)){if(t?s.to==n.doc.length:s.from==0)continue;let o=n.doc.lineAt(t?s.to+1:s.from-1),l=o.length+1;if(t){i.push({from:s.to,to:o.to},{from:s.from,insert:o.text+n.lineBreak});for(let a of s.ranges)r.push(D.range(Math.min(n.doc.length,a.anchor+l),Math.min(n.doc.length,a.head+l)))}else{i.push({from:o.from,to:s.from},{from:s.to,insert:n.lineBreak+o.text});for(let a of s.ranges)r.push(D.range(a.anchor-l,a.head-l))}}return i.length?(e(n.update({changes:i,scrollIntoView:!0,selection:D.create(r,n.selection.mainIndex),userEvent:"move.line"})),!0):!1}var p1=({state:n,dispatch:e})=>Sm(n,e,!1),m1=({state:n,dispatch:e})=>Sm(n,e,!0);function Cm(n,e,t){if(n.readOnly)return!1;let i=[];for(let s of $o(n))t?i.push({from:s.from,insert:n.doc.slice(s.from,s.to)+n.lineBreak}):i.push({from:s.to,insert:n.lineBreak+n.doc.slice(s.from,s.to)});let r=n.changes(i);return e(n.update({changes:r,selection:n.selection.map(r,t?1:-1),scrollIntoView:!0,userEvent:"input.copyline"})),!0}var g1=({state:n,dispatch:e})=>Cm(n,e,!1),b1=({state:n,dispatch:e})=>Cm(n,e,!0),y1=n=>{if(n.state.readOnly)return!1;let{state:e}=n,t=e.changes($o(e).map(({from:r,to:s})=>(r>0?r--:s<e.doc.length&&s++,{from:r,to:s}))),i=er(e.selection,r=>{let s;if(n.lineWrapping){let o=n.lineBlockAt(r.head),l=n.coordsAtPos(r.head,r.assoc||1);l&&(s=o.bottom+n.documentTop-l.bottom+n.defaultLineHeight/2)}return n.moveVertically(r,!0,s)}).map(t);return n.dispatch({changes:t,selection:i,scrollIntoView:!0,userEvent:"delete.line"}),!0};function w1(n,e){if(/\(\)|\[\]|\{\}/.test(n.sliceDoc(e-1,e+1)))return{from:e,to:e};let t=yn(n).resolveInner(e),i=t.childBefore(e),r=t.childAfter(e),s;return i&&r&&i.to<=e&&r.from>=e&&(s=i.type.prop(te.closedBy))&&s.indexOf(r.name)>-1&&n.doc.lineAt(i.to).from==n.doc.lineAt(r.from).from&&!/\S/.test(n.sliceDoc(i.to,r.from))?{from:i.to,to:r.from}:null}var Kp=Tm(!1),x1=Tm(!0);function Tm(n){return({state:e,dispatch:t})=>{if(e.readOnly)return!1;let i=e.changeByRange(r=>{let{from:s,to:o}=r,l=e.doc.lineAt(s),a=!n&&s==o&&w1(e,s);n&&(s=o=(o<=l.to?l:e.doc.lineAt(o)).to);let c=new mi(e,{simulateBreak:s,simulateDoubleBreak:!!a}),h=qc(c,s);for(h==null&&(h=si(/^\s*/.exec(e.doc.lineAt(s).text)[0],e.tabSize));o<l.to&&/\s/.test(l.text[o-l.from]);)o++;a?{from:s,to:o}=a:s>l.from&&s<l.from+100&&!/\S/.test(l.text.slice(0,s))&&(s=l.from);let u=["",Qr(e,h)];return a&&u.push(Qr(e,c.lineIndent(l.from,-1))),{changes:{from:s,to:o,insert:ne.of(u)},range:D.cursor(s+1+u[1].length)}});return t(e.update(i,{scrollIntoView:!0,userEvent:"input"})),!0}}function th(n,e){let t=-1;return n.changeByRange(i=>{let r=[];for(let o=i.from;o<=i.to;){let l=n.doc.lineAt(o);l.number>t&&(i.empty||i.to>l.from)&&(e(l,r,i),t=l.number),o=l.to+1}let s=n.changes(r);return{changes:r,range:D.range(s.mapPos(i.anchor,1),s.mapPos(i.head,1))}})}var v1=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=Object.create(null),i=new mi(n,{overrideIndentation:s=>{let o=t[s];return o??-1}}),r=th(n,(s,o,l)=>{let a=qc(i,s.from);if(a==null)return;/\S/.test(s.text)||(a=0);let c=/^\s*/.exec(s.text)[0],h=Qr(n,a);(c!=h||l.from<s.from+c.length)&&(t[s.from]=a,o.push({from:s.from,to:s.from+c.length,insert:h}))});return r.changes.empty||e(n.update(r,{userEvent:"indent"})),!0},Am=({state:n,dispatch:e})=>n.readOnly?!1:(e(n.update(th(n,(t,i)=>{i.push({from:t.from,insert:n.facet(_o)})}),{userEvent:"input.indent"})),!0),Em=({state:n,dispatch:e})=>n.readOnly?!1:(e(n.update(th(n,(t,i)=>{let r=/^\s*/.exec(t.text)[0];if(!r)return;let s=si(r,n.tabSize),o=0,l=Qr(n,Math.max(0,s-Zr(n)));for(;o<r.length&&o<l.length&&r.charCodeAt(o)==l.charCodeAt(o);)o++;i.push({from:t.from+o,to:t.from+r.length,insert:l.slice(o)})}),{userEvent:"delete.dedent"})),!0),k1=n=>(n.setTabFocusMode(),!0);var S1=[{key:"Ctrl-b",run:nm,shift:um,preventDefault:!0},{key:"Ctrl-f",run:im,shift:dm},{key:"Ctrl-p",run:om,shift:mm},{key:"Ctrl-n",run:lm,shift:gm},{key:"Ctrl-a",run:Vx,shift:e1},{key:"Ctrl-e",run:$x,shift:t1},{key:"Ctrl-d",run:xm},{key:"Ctrl-h",run:Zc},{key:"Ctrl-k",run:c1},{key:"Ctrl-Alt-h",run:km},{key:"Ctrl-o",run:d1},{key:"Ctrl-t",run:f1},{key:"Ctrl-v",run:Jc}],C1=[{key:"ArrowLeft",run:nm,shift:um,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:Ox,shift:Kx,preventDefault:!0},{mac:"Cmd-ArrowLeft",run:zx,shift:Zx,preventDefault:!0},{key:"ArrowRight",run:im,shift:dm,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:Ix,shift:qx,preventDefault:!0},{mac:"Cmd-ArrowRight",run:Wx,shift:Qx,preventDefault:!0},{key:"ArrowUp",run:om,shift:mm,preventDefault:!0},{mac:"Cmd-ArrowUp",run:Vp,shift:Up},{mac:"Ctrl-ArrowUp",run:Fp,shift:zp},{key:"ArrowDown",run:lm,shift:gm,preventDefault:!0},{mac:"Cmd-ArrowDown",run:$p,shift:jp},{mac:"Ctrl-ArrowDown",run:Jc,shift:Wp},{key:"PageUp",run:Fp,shift:zp},{key:"PageDown",run:Jc,shift:Wp},{key:"Home",run:Fx,shift:Jx,preventDefault:!0},{key:"Mod-Home",run:Vp,shift:Up},{key:"End",run:Hx,shift:Yx,preventDefault:!0},{key:"Mod-End",run:$p,shift:jp},{key:"Enter",run:Kp,shift:Kp},{key:"Mod-a",run:n1},{key:"Backspace",run:Zc,shift:Zc,preventDefault:!0},{key:"Delete",run:xm,preventDefault:!0},{key:"Mod-Backspace",mac:"Alt-Backspace",run:km,preventDefault:!0},{key:"Mod-Delete",mac:"Alt-Delete",run:a1,preventDefault:!0},{mac:"Mod-Backspace",run:h1,preventDefault:!0},{mac:"Mod-Delete",run:u1,preventDefault:!0}].concat(S1.map(n=>({mac:n.key,run:n.run,shift:n.shift}))),Mm=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:Bx,shift:Gx},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:_x,shift:Xx},{key:"Alt-ArrowUp",run:p1},{key:"Shift-Alt-ArrowUp",run:g1},{key:"Alt-ArrowDown",run:m1},{key:"Shift-Alt-ArrowDown",run:b1},{key:"Mod-Alt-ArrowUp",run:s1},{key:"Mod-Alt-ArrowDown",run:o1},{key:"Escape",run:l1},{key:"Mod-Enter",run:x1},{key:"Alt-l",mac:"Ctrl-l",run:i1},{key:"Mod-i",run:r1,preventDefault:!0},{key:"Mod-[",run:Em},{key:"Mod-]",run:Am},{key:"Mod-Alt-\\",run:v1},{key:"Shift-Mod-k",run:y1},{key:"Shift-Mod-\\",run:jx},{key:"Mod-/",run:gx},{key:"Alt-A",mac:"Ctrl-A",run:yx},{key:"Ctrl-m",mac:"Shift-Alt-m",run:k1}].concat(C1),Rm={key:"Tab",run:Am,shift:Em};var Dm=new fn,Lm=new fn,Pm=new fn,nh=new fn,ih=ht.define(),sn=null;function Om(n){sn=n}function Im(n){sn===n&&(sn=null)}function Nm(n){return[j.domEventHandlers({keydown:(e,t)=>sn?.onKeydown(t,e)??!1,compositionstart:()=>(sn?.onCompositionChange(!0),!1),compositionend:()=>(setTimeout(()=>sn?.onCompositionChange(!1),0),!1),focus:()=>(sn?.onFocusChange(!0),!1),blur:()=>(sn?.onFocusChange(!1),!1)}),Yp(),yp(),vp(),j.lineWrapping,kp(),Sp(),Dm.of(n.lineNumbers?Ec():[]),Lm.of(Hm(n.fontFamily)),Pm.of(Ac(n.placeholder)),nh.of(j.editable.of(n.editable)),Tc.of([...em,...Mm,Rm]),j.updateListener.of(e=>{e.docChanged&&!e.transactions.some(t=>t.annotation(ih)===!0)&&sn?.onLocalChange(e.state.doc.toString()),(e.docChanged||e.selectionSet)&&sn?.onCaret(e.state.doc.toString(),e.state.selection.main.head)})]}function rh(n,e){n.dispatch({effects:[Dm.reconfigure(e.lineNumbers?Ec():[]),Lm.reconfigure(Hm(e.fontFamily)),Pm.reconfigure(Ac(e.placeholder)),nh.reconfigure(j.editable.of(e.editable))]})}function Bm(n,e){n.dispatch({effects:nh.reconfigure(j.editable.of(e))})}function _m(n,e,t){return An(()=>{let i=ue();rh(n,{lineNumbers:i.lineNumbers,fontFamily:i.fontFamily,placeholder:e,editable:t})})}function Hm(n){return j.theme({"&":{fontSize:"13px",height:"100%"},"&.cm-focused":{outline:"none"},".cm-scroller":{fontFamily:n,lineHeight:"1.6",overflow:"auto"},".cm-content":{caretColor:"var(--dsw-alias-state-business-primary, currentColor)",paddingBottom:"8px"},".cm-line":{padding:"0 8px"},".cm-cursor, .cm-dropCursor":{borderLeftColor:"var(--dsw-alias-state-business-primary, currentColor)"},".cm-gutters":{backgroundColor:"transparent",border:"none",color:"color-mix(in srgb, currentColor 32%, transparent)"},".cm-activeLineGutter":{backgroundColor:"transparent",color:"currentColor",fontWeight:600},".cm-activeLine":{backgroundColor:"color-mix(in srgb, currentColor 6%, transparent)"},".cm-lineNumbers .cm-gutterElement":{minWidth:"2.2em",padding:"0 6px 0 10px"},".cm-selectionBackground":{backgroundColor:"color-mix(in srgb, currentColor 15%, transparent) !important"},".cm-placeholder":{color:"color-mix(in srgb, currentColor 38%, transparent)"}})}function Fm(n,e){return ke.create({doc:e,extensions:n})}var T1=4,yi=new Map;function zm(n){let e=yi.get(n);return e&&yi.delete(n),e}function Wm(n,e){for(yi.delete(n),yi.set(n,e);yi.size>T1;){let t=yi.keys().next().value;if(t===void 0)break;yi.delete(t)}}function A1(n){return n==="plain"?{tier:"plain"}:n==="claimed"?{tier:"claimed"}:{tier:"frozen"}}function Vm(n,e,t,i){if(!(!n||!i))try{n.track(e,t,A1(i.phase),i.draftRev)}catch(r){qt("track failed",r)}}function $m(n,e,t){if(!n)return;let i=e?.snapshot,r=i?.draft??"",s=i?.draftRev??0;e?.dismissPopup();let o={trigger:"/",query:"",quoted:!1,position:r.slice(0,t).trim()===""?"leading":"inline",span:{start:t,end:t,draftRev:s}};n.toggleSource("command",o)}var E1={ArrowUp:"up",ArrowDown:"down",Enter:"enter",Escape:"escape",Tab:"tab"};function Um(n,e,t){if(!n||!n.menu.getSnapshot().open)return!1;let r=E1[e.key];return r?n.arbitrate(r,t)!=="pass":!1}function jm(n){if(!n)return!1;try{return n.onSpace()}catch{return!1}}var M1=new Set(["ctrl","alt","shift","meta","mod"]);function Km(n,e){let t=e===" "?"space":(e.length===1,e.toLowerCase()),i=[];return n.ctrlKey&&i.push("ctrl"),n.altKey&&i.push("alt"),n.shiftKey&&i.push("shift"),n.metaKey&&i.push("meta"),i.push(t),i.join("+")}function R1(n){let e=new Set(n.toLowerCase().split("+").filter(Boolean)),t=[...e].filter(i=>!M1.has(i)).join("+");return{ctrl:e.has("ctrl"),alt:e.has("alt"),shift:e.has("shift"),meta:e.has("meta"),mod:e.has("mod"),key:t}}function sh(n,e){let t=R1(n);return!t.key||t.key!==D1(e)?!1:t.mod?e.ctrlKey||e.metaKey?e.altKey===t.alt&&e.shiftKey===t.shift:!1:e.ctrlKey===t.ctrl&&e.altKey===t.alt&&e.shiftKey===t.shift&&e.metaKey===t.meta}function D1(n){let e=n.key;return e===" "?"space":e.toLowerCase()}function qm(n){let e={ctrl:"Ctrl",alt:"Alt",shift:"Shift",meta:"Cmd",mod:"Ctrl/Cmd",enter:"Enter",tab:"Tab",space:"Space",escape:"Esc"};return n.split("+").filter(Boolean).map(t=>e[t]??(t.length===1?t.toUpperCase():t.charAt(0).toUpperCase()+t.slice(1))).join(" + ")}var ns=require("react/jsx-runtime");function Gm(n){let{state:e,actions:t,triggers:i,keyboard:r,onSendGesture:s,placeholder:o,autoFocus:l,viewRef:a,onCaretMoved:c,disabled:h,solo:u,stateKey:d}=n,f=(0,Rt.useRef)(null),p=(0,Rt.useRef)(!1),[m,y]=(0,Rt.useState)({line:1,col:1}),b=(0,Rt.useRef)(n);b.current=n;let x=e?.draft??"",k=d??"default";(0,Rt.useLayoutEffect)(()=>{let C=f.current;if(!C)return;let S=ue(),A={onKeydown:(E,O)=>{let z=b.current;if(Um(z.triggers,O,p.current))return O.preventDefault(),!0;if(p.current)return!1;if(O.key===" "&&!O.ctrlKey&&!O.metaKey&&!O.altKey&&jm(z.triggers))return O.preventDefault(),!0;let Y=ue();return sh(Y.sendHotkey,O)?(O.preventDefault(),z.onSendGesture(),!0):sh(Y.lineBreakHotkey,O)&&Y.lineBreakHotkey!=="enter"?(O.preventDefault(),E.dispatch({changes:{from:E.state.selection.main.head,insert:`
599
+ `}}),!0):!1},onLocalChange:E=>{let O=b.current;if(O.actions)try{O.actions.setDraft(E)}catch(z){qt("setDraft failed",z)}},onCaret:(E,O)=>{let z=b.current;Vm(z.triggers,E,O,z.keyboard?.snapshot??z.state);let G=a.current?.state.doc.lineAt(O);y({line:G?G.number:1,col:O-(G?G.from:0)+1}),z.onCaretMoved?.(O)},onCompositionChange:E=>{p.current=E},onFocusChange:E=>{b.current.onFocusedChange?.(E)}};Om(A);let $=zm(k),F=new j({state:$?.state??Fm(Nm({lineNumbers:S.lineNumbers,fontFamily:S.fontFamily,placeholder:o,editable:!0}),""),parent:C});$&&(F.scrollDOM.scrollTop=$.scrollTop),a.current=F;let R=F.state.selection.main.head,P=F.state.doc.lineAt(R);return y({line:P.number,col:R-P.from+1}),l&&F.focus(),()=>{a.current=null,Wm(k,{state:F.state,scrollTop:F.scrollDOM.scrollTop}),F.destroy(),Im(A)}},[k]),(0,Rt.useEffect)(()=>{let C=a.current;if(!C)return;let S=C.state.doc.toString();if(x===S)return;let A=Math.min(C.state.selection.main.head,x.length);C.dispatch({annotations:[ih.of(!0),Ie.addToHistory.of(!1)],changes:{from:0,to:S.length,insert:x},selection:{anchor:x===""?0:A},scrollIntoView:!0})},[x]),(0,Rt.useEffect)(()=>{let C=a.current;if(!C)return;let S=_m(C,o,!0);return rh(C,{...L1(o),editable:!0}),S},[o]);let _=h===!0||e!==void 0&&(e.phase==="adjudicating"||e.phase==="submitting");return(0,Rt.useEffect)(()=>{let C=a.current;C&&Bm(C,!_)},[_,a]),(0,ns.jsxs)("div",{className:"dci-editor-wrap","data-solo":u||void 0,children:[(0,ns.jsx)("div",{className:"dci-cm-host",ref:f}),(0,ns.jsxs)("div",{className:"dci-pos",children:[m.line,", ",m.col]})]})}function L1(n){let e=ue();return{lineNumbers:e.lineNumbers,fontFamily:e.fontFamily,placeholder:n}}var yt=require("react");var is=require("react");function wn(n){let e=(0,is.useCallback)(i=>n?n.subscribe(i):()=>{},[n]),t=(0,is.useCallback)(()=>n?.getSnapshot(),[n]);return(0,is.useSyncExternalStore)(e,t,t)}var re=require("react/jsx-runtime"),oh=400;function P1(n){return Di(`menu.source.${n}`)??n}function Uo(n,e){return`dsh-slash-option-${n}-${e}`}function O1(n){return n==="file"?(0,re.jsx)(id,{size:16}):n==="folder"?(0,re.jsx)(rd,{size:16}):n==="session"?(0,re.jsx)(sd,{size:16}):typeof n=="function"?(0,re.jsx)(n,{size:16}):null}function Xm({size:n=14}){return(0,re.jsx)("span",{style:{display:"inline-flex",transform:"rotate(-90deg)"},children:(0,re.jsx)(Yt,{size:n})})}function Ym(n){let{triggers:e,dropdown:t}=n,i=wn(e.menu),r=wn(e.headers),s=(0,yt.useRef)(null),[o,l]=(0,yt.useState)(oh),[a,c]=(0,yt.useState)(null),h=i?.open===!0,u=h?i.highlight??null:null;if((0,yt.useLayoutEffect)(()=>{if(!h)return;let f=s.current?.closest(".dci-card");if(!f)return;if(t){let m=f.querySelector(".dci-accessory"),y=f.getBoundingClientRect(),b=m?m.getBoundingClientRect().bottom-y.top:36;c(Math.round(b)+2);let k=!!s.current?.closest(".dci-float")?window.innerHeight-(y.top+b)-16:y.height-b-10;l(Math.max(120,Math.min(oh,k)));return}c(null);let p=f.getBoundingClientRect().top;l(Math.max(120,Math.min(oh,p-16)))},[h,i?.generation,t]),(0,yt.useEffect)(()=>{u&&document.getElementById(Uo(u.source,u.index))?.scrollIntoView({block:"nearest"})},[u]),(0,yt.useEffect)(()=>{if(!h)return;let f=p=>{p.target instanceof Node&&(s.current?.contains(p.target)||s.current?.closest("[data-composer-card]")?.contains(p.target)||e.dismiss())};return document.addEventListener("pointerdown",f,!0),()=>document.removeEventListener("pointerdown",f,!0)},[h,e]),!h||!i)return null;let d=f=>r?.get(f);return(0,re.jsxs)("div",{ref:s,className:"dci-slash-menu","data-trigger-menu":"","data-dropdown":t||void 0,style:t?{top:a??38,maxHeight:o}:{maxHeight:o},children:[i.groups.map(f=>{let p=d(f.source);return p===void 0||p.length===0?null:(0,re.jsx)("nav",{className:"dci-slash-crumbs","aria-label":v("menu.nav"),children:p.map((m,y)=>(0,re.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:2},children:[y>0?(0,re.jsx)("span",{className:"dci-slash-crumbSeparator","aria-hidden":"true",children:(0,re.jsx)(Xm,{size:12})}):null,(0,re.jsx)("button",{type:"button",className:"dci-slash-crumb","data-current":m.current===!0||void 0,"aria-current":m.current===!0?"location":void 0,disabled:m.current===!0,onMouseDown:b=>{b.preventDefault(),e.pickCrumb(f.source,y)},children:m.label})]},`${y}-${m.value}`))},`${f.source}:crumbs`)}),(0,re.jsx)("div",{className:"dci-slash-viewport",role:"listbox","aria-label":v("menu.triggerCandidates"),"aria-activedescendant":u?Uo(u.source,u.index):void 0,children:i.groups.map(f=>{if(f.status==="ready"&&f.items.length===0)return null;let p=f.items.some(m=>m.section!==void 0);return(0,re.jsxs)(yt.Fragment,{children:[f.showGroupTitle===!1||p?null:(0,re.jsx)("div",{className:"dci-slash-groupTitle",role:"presentation","data-source":f.source,children:P1(f.source)}),f.status==="pending"&&f.items.length===0?(0,re.jsxs)("div",{role:"status","aria-label":Di("menu.loading"),"data-source":f.source,children:[(0,re.jsx)("div",{className:"dci-slash-skeletonRow",children:(0,re.jsx)("span",{className:"dci-slash-skeletonBar",style:{width:"32%"}})}),(0,re.jsx)("div",{className:"dci-slash-skeletonRow",children:(0,re.jsx)("span",{className:"dci-slash-skeletonBar",style:{width:"48%"}})})]}):f.items.map((m,y)=>{let b=u?.source===f.source&&u.index===y;return(0,re.jsxs)(yt.Fragment,{children:[m.section!==void 0&&m.section!==f.items[y-1]?.section?(0,re.jsx)("div",{className:"dci-slash-sectionTitle",role:"presentation",children:m.section}):null,(0,re.jsxs)("button",{id:Uo(f.source,y),type:"button",role:"option","aria-selected":b,className:"dci-slash-item","data-active":b||void 0,onMouseDown:x=>{x.preventDefault(),e.pick(f.source,y)},onMouseMove:b?void 0:()=>e.hover(f.source,y),children:[m.icon!==void 0?(0,re.jsx)("span",{className:"dci-slash-itemIcon","aria-hidden":"true",children:O1(m.icon)}):null,(0,re.jsx)("span",{className:"dci-slash-itemName",children:m.label??m.name}),m.label!==void 0&&m.label.toLowerCase()!==m.name.toLowerCase()?(0,re.jsx)("span",{className:"dci-slash-itemAlias",children:m.name}):null,m.description!==void 0?(0,re.jsx)("span",{className:"dci-slash-itemDescription",children:m.description}):null,m.drill===!0?(0,re.jsxs)("span",{className:"dci-slash-trailing",children:[(0,re.jsx)("span",{className:"dci-slash-drillHintText","aria-hidden":"true",children:"\u8FDB\u5165\u76EE\u5F55"}),(0,re.jsx)("kbd",{className:"dci-slash-drillHint","aria-hidden":"true",children:"Tab"}),(0,re.jsx)("span",{role:"button","aria-label":Di("menu.drill"),className:"dci-slash-drill",onMouseDown:x=>{x.preventDefault(),x.stopPropagation(),e.pick(f.source,y,"drill")},children:(0,re.jsx)(Xm,{size:14})})]}):null]})]},Uo(f.source,y))})]},f.source)})})]})}var Wn=require("react");function Jm(n,e){let t=e.trim().toLowerCase();return t===""?n:n.filter(i=>{let r=typeof i.label=="string"?i.label.toLowerCase():"",s=typeof i.detail=="string"?i.detail.toLowerCase():"";return r.includes(t)||s.includes(t)})}var Ce=require("react/jsx-runtime");function Zm(n){let{popup:e}=n,t=wn(e.state),i=(0,Wn.useRef)(null),r=(0,Wn.useRef)(null),s=(0,Wn.useMemo)(()=>t?Jm(t.options,t.search):[],[t?.options,t?.search]);if((0,Wn.useEffect)(()=>{if(!t?.open)return;let l=c=>{r.current&&c.target instanceof Node&&r.current.contains(c.target)||e.dismiss()},a=c=>{if(!(!t.open||t.submitting)){if(t.confirming){c.key==="Escape"&&(c.preventDefault(),e.cancelConfirmation());return}c.key==="ArrowDown"?(c.preventDefault(),e.move(1)):c.key==="ArrowUp"?(c.preventDefault(),e.move(-1)):c.key==="Enter"?(c.preventDefault(),e.select(t.active)):c.key==="Escape"&&(c.preventDefault(),e.dismiss({focusComposer:!0}))}};return window.addEventListener("pointerdown",l,!0),window.addEventListener("keydown",a,!0),()=>{window.removeEventListener("pointerdown",l,!0),window.removeEventListener("keydown",a,!0)}},[t?.open,t?.submitting,t?.confirming,t?.active,e]),(0,Wn.useEffect)(()=>{t?.open&&i.current?.focus()},[t?.open]),!t?.open)return null;let o=t.confirming;return(0,Ce.jsxs)("div",{className:"dci-menu",ref:r,children:[t.command?(0,Ce.jsx)("div",{className:"dci-group-title",children:t.command}):null,t.status==="failed"?(0,Ce.jsx)("div",{className:"dci-error",children:t.error??v("menu.loadFailed")}):null,t.status==="failed"?(0,Ce.jsx)("button",{type:"button",className:"dci-btn",onClick:()=>e.retry(),children:"\u91CD\u8BD5"}):null,t.status==="ready"&&!o?(0,Ce.jsx)("input",{ref:i,className:"dci-search",type:"text",placeholder:v("menu.filter"),value:t.search,onChange:l=>e.setSearch(l.target.value)}):null,o?(0,Ce.jsxs)("div",{className:"dci-confirm",children:[(0,Ce.jsx)("div",{className:"dci-row-name",children:String(o.label??"")}),o.detail?(0,Ce.jsx)("div",{className:"dci-row-desc",children:String(o.detail)}):null,(0,Ce.jsxs)("label",{children:[(0,Ce.jsx)("input",{type:"checkbox",checked:t.acknowledged,onChange:l=>e.acknowledge(l.target.checked)}),(0,Ce.jsx)("span",{children:v("popup.ack")})]}),(0,Ce.jsxs)("div",{className:"dci-confirm-actions",children:[(0,Ce.jsx)("button",{type:"button",className:"dci-btn",onClick:()=>e.cancelConfirmation(),children:"\u53D6\u6D88"}),(0,Ce.jsx)("button",{type:"button",className:"dci-btn","data-primary":"true",disabled:t.submitting||!t.acknowledged,onClick:()=>void e.confirm(),children:"\u786E\u8BA4"})]})]}):(0,Ce.jsxs)("div",{className:"dci-viewport",children:[t.status==="pending"?(0,Ce.jsx)("div",{className:"dci-empty",children:v("menu.loading")}):null,t.status==="ready"&&s.length===0?(0,Ce.jsx)("div",{className:"dci-empty",children:v("menu.empty")}):null,s.map((l,a)=>(0,Ce.jsx)("button",{type:"button",className:"dci-opt","data-active":a===t.active||void 0,onMouseEnter:()=>e.highlight(a),onClick:()=>void e.select(a),children:(0,Ce.jsxs)("span",{className:"dci-opt-copy",children:[(0,Ce.jsx)("span",{className:"dci-opt-name",children:String(l.label??"")}),l.detail?(0,Ce.jsx)("span",{className:"dci-opt-desc",children:String(l.detail)}):null]})},`${String(l.label)}:${a}`))]}),t.error&&t.status==="ready"?(0,Ce.jsx)("div",{className:"dci-error",children:t.error}):null]})}var wi=require("react");var rs=require("react"),Qm=require("react-dom"),on=require("react/jsx-runtime");function I1({size:n=16}){return(0,on.jsxs)("svg",{width:n,height:n,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",strokeWidth:1,children:[(0,on.jsx)("path",{d:"M2.5 2.5L13.5 13.5",stroke:"currentColor"}),(0,on.jsx)("path",{d:"M13.5 2.5L2.5 13.5",stroke:"currentColor"})]})}function eg(n){let{src:e,alt:t,labels:i,onClose:r}=n,s=(0,rs.useRef)(null),o=(0,rs.useRef)(null);return(0,rs.useEffect)(()=>{o.current=document.activeElement instanceof HTMLElement?document.activeElement:null,s.current?.focus();let l=a=>{a.key==="Escape"&&(a.stopPropagation(),r()),a.key==="Tab"&&(a.preventDefault(),s.current?.focus())};return window.addEventListener("keydown",l,!0),()=>{window.removeEventListener("keydown",l,!0),o.current?.focus()}},[r]),(0,Qm.createPortal)((0,on.jsxs)("div",{className:"dci-lightbox",role:"dialog","aria-modal":"true","aria-label":i.dialog,children:[(0,on.jsx)("div",{className:"dci-lightbox-mask","aria-hidden":"true",onMouseDown:r}),(0,on.jsx)("img",{className:"dci-lightbox-image",src:e,alt:t}),(0,on.jsx)("button",{ref:s,type:"button",className:"dci-lightbox-close","aria-label":i.close,onClick:r,children:(0,on.jsx)(I1,{})})]}),document.body)}var Q=require("react/jsx-runtime"),N1="M8.48924 28H19.5108C21.6479 28 22.7165 28 23.5594 27.6509C24.6833 27.1853 25.5762 26.2924 26.0417 25.1685C26.3909 24.3256 26.3909 23.257 26.3909 21.1199V8.79443C26.3909 8.32877 26.3909 8.09593 26.3471 7.87507C26.2887 7.58058 26.173 7.30042 26.0067 7.05048C25.882 6.86303 25.7177 6.69799 25.3893 6.36792L20.0611 1.01354C19.7304 0.681235 19.5651 0.515081 19.3769 0.38885C19.126 0.220541 18.8443 0.103463 18.5481 0.0443412C18.3259 0 18.0915 0 17.6226 0H8.48924C6.35209 0 5.28351 0 4.4406 0.349145C3.31672 0.814671 2.4238 1.70759 1.95828 2.83147C1.60913 3.67438 1.60913 4.74296 1.60913 6.88011V21.1199C1.60913 23.257 1.60913 24.3256 1.95828 25.1685C2.4238 26.2924 3.31672 27.1853 4.4406 27.6509C5.28351 28 6.35209 28 8.48924 28Z",B1="M26.3909 7.37445L19.0525 0V3.77445C19.0525 4.89271 19.0525 5.45184 19.2352 5.89289C19.4788 6.48096 19.946 6.94818 20.5341 7.19176C20.9751 7.37445 21.5342 7.37445 22.6525 7.37445H26.3909Z";function tg({size:n=28}){return(0,Q.jsxs)("svg",{width:n,height:n,viewBox:"0 0 28 28",fill:"none","aria-hidden":"true",children:[(0,Q.jsx)("path",{d:N1,fill:"currentColor"}),(0,Q.jsx)("path",{d:B1,fill:"var(--dsw-static-neutral-00, #fff)",fillOpacity:"0.7"})]})}function _1(n){let e=n.split(/[\\/]/).pop()??n,t=e.lastIndexOf(".");return t<0?"":e.slice(t+1)}function H1(n){if(n<1024)return`${n}B`;let e=n/1024;if(e<1024)return`${e<10?e.toFixed(1):Math.round(e)}KB`;let t=e/1024;if(t<1024)return`${t<10?t.toFixed(1):Math.round(t)}MB`;let i=t/1024;return`${i<10?i.toFixed(1):Math.round(i)}GB`}function rg(n){let{state:e,sessionId:t,onRemove:i}=n,r=J.conversation,s=wn(r?.fileUploads),o=(0,wi.useRef)(null),[l,a]=(0,wi.useState)({left:!1,right:!1}),[c,h]=(0,wi.useState)(null),u=e===void 0||typeof r?.resolveDraftAttachments!="function"?[]:r.resolveDraftAttachments(e.attachmentIds)??[];if((0,wi.useEffect)(()=>{let f=o.current;if(!f)return;let p=()=>{let b=f.scrollWidth-f.clientWidth,x={left:f.scrollLeft>1,right:b>1&&f.scrollLeft<b-1};a(k=>k.left===x.left&&k.right===x.right?k:x)};p(),f.addEventListener("scroll",p,{passive:!0});let m=typeof ResizeObserver=="function"?new ResizeObserver(p):null;m?.observe(f);let y=b=>{Math.abs(b.deltaY)<=Math.abs(b.deltaX)||(b.preventDefault(),f.scrollLeft+=b.deltaY)};return f.addEventListener("wheel",y,{passive:!1}),()=>{f.removeEventListener("scroll",p),f.removeEventListener("wheel",y),m?.disconnect()}},[u.length]),u.length===0)return null;let d=f=>{o.current?.scrollBy({left:f*Math.max(120,(o.current?.clientWidth??240)*.8),behavior:"smooth"})};return(0,Q.jsxs)("div",{className:"dci-attach-root",children:[(0,Q.jsx)("div",{className:"dci-attach-rail",ref:o,role:"group","aria-label":v("attach.group"),children:u.map(f=>{let p=s?.[f.id],m=p?.status??"ready",y=f.kind==="image"||f.file.type.startsWith("image/"),b=m==="uploading"&&p?.total?Math.min(100,Math.round((p.loaded??0)/p.total*100)):null;if(y)return(0,Q.jsxs)("div",{className:"dci-attach-item",children:[(0,Q.jsx)("button",{type:"button",className:"dci-attach-thumb",title:v("image.openOriginal"),"aria-label":v("image.openOriginalLabel",{name:f.file.name}),onClick:()=>{f.previewUrl&&h({url:f.previewUrl,name:f.file.name})},children:f.previewUrl?(0,Q.jsx)("img",{src:f.previewUrl,alt:f.file.name}):(0,Q.jsx)(tg,{size:28})}),(0,Q.jsx)("button",{type:"button",className:"dci-attach-remove","aria-label":v("attach.remove",{name:f.file.name}),onClick:()=>i(f.id),children:(0,Q.jsx)(ng,{})}),b!==null?(0,Q.jsx)("span",{className:"dci-attach-progress",children:(0,Q.jsx)("span",{className:"dci-attach-progressBar",style:{width:`${b}%`}})}):null]},f.id);let x=m==="error",k=m==="uploading"?v("attach.uploading"):x?v("attach.failed"):[_1(f.file.name).toUpperCase().slice(0,8),H1(f.file.size)].filter(C=>C!=="").join(" "),_=(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)("span",{className:"dci-attach-name",children:f.file.name}),(0,Q.jsx)("span",{className:x?"dci-attach-meta dci-attach-metaFailed":"dci-attach-meta",children:k})]});return(0,Q.jsxs)("div",{className:x?"dci-attach-card dci-attach-cardFailed":"dci-attach-card",title:f.file.name,children:[(0,Q.jsx)("span",{className:"dci-attach-icon","aria-hidden":"true",children:m==="uploading"?(0,Q.jsx)("span",{className:"dci-attach-spinner"}):(0,Q.jsx)(tg,{size:28})}),x?(0,Q.jsx)("button",{type:"button",className:"dci-attach-body dci-attach-retry","aria-label":v("attach.retry"),onClick:()=>F1(t,f.id),children:_}):(0,Q.jsx)("span",{className:"dci-attach-body","aria-label":v("attach.pending",{name:f.file.name}),children:_}),(0,Q.jsx)("button",{type:"button",className:x?"dci-attach-removeInline dci-attach-cardFailedRemove":"dci-attach-removeInline","aria-label":v("attach.remove",{name:f.file.name}),onClick:()=>i(f.id),children:(0,Q.jsx)(ng,{})}),b!==null?(0,Q.jsx)("span",{className:"dci-attach-progress",children:(0,Q.jsx)("span",{className:"dci-attach-progressBar",style:{width:`${b}%`}})}):null]},f.id)})}),l.left?(0,Q.jsx)("button",{type:"button",className:"dci-attach-arrow dci-attach-arrowLeft","aria-label":v("attach.scrollLeft"),onClick:()=>d(-1),children:(0,Q.jsx)(ig,{dir:"left"})}):null,l.right?(0,Q.jsx)("button",{type:"button",className:"dci-attach-arrow dci-attach-arrowRight","aria-label":v("attach.scrollRight"),onClick:()=>d(1),children:(0,Q.jsx)(ig,{dir:"right"})}):null,c?(0,Q.jsx)(eg,{src:c.url,alt:c.name,labels:{dialog:v("image.preview"),close:v("image.closePreview")},onClose:()=>h(null)}):null]})}function F1(n,e){let t=J.conversation;if(!(!n||typeof t?.retryFileUpload!="function"))try{t.retryFileUpload(n,e)}catch{}}function ng(){return(0,Q.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none","aria-hidden":"true",children:(0,Q.jsx)("path",{d:"M1.6 1.6L8.4 8.4M8.4 1.6L1.6 8.4",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round"})})}function ig({dir:n}){return(0,Q.jsx)("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none","aria-hidden":"true",style:n==="left"?{transform:"scaleX(-1)"}:void 0,children:(0,Q.jsx)("path",{d:"M5.5 3.5L9 7L5.5 10.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}var Jo=require("react");var Vt=require("react");function sg(n){let e=J.modelDirectories;if(!e||typeof e.directoryFor!="function"||!n)return null;try{return e.directoryFor(n)}catch(t){return qt("directoryFor failed",t),null}}var ss=require("react");var Vn=require("react");var lh=[];function tr(n){let e=J.slots,t=(0,Vn.useCallback)(r=>{if(typeof e?.subscribe!="function")return()=>{};try{return e.subscribe(n,r)??(()=>{})}catch{return()=>{}}},[e,n]),i=(0,Vn.useCallback)(()=>{if(typeof e?.entries!="function")return lh;try{return e.entries(n)??lh}catch{return lh}},[e,n]);return(0,Vn.useSyncExternalStore)(t,i,i)}function jo(n){for(let e of n){let t=e;if(t&&typeof t=="object"&&typeof t.component=="function")return t}return null}function cg(n){let e=new Map;for(let i of n){let r=i;if(!r||typeof r!="object"||typeof r.component!="function")continue;let s=r.options?.id;e.has(s)||e.set(s,r)}let t=[...e.values()];return t.sort((i,r)=>og(i)-og(r)),t}function og(n){return n.options?.order??0}function hg(n,e){return n.options?.id??`#${e}`}var lg=new WeakMap;function z1(n){let e=n;if(!e||typeof e.subscribe!="function"||typeof e.getSnapshot!="function")return null;let t=lg.get(e);return t||(t=i=>(0,Vn.useSyncExternalStore)(r=>e.subscribe(r)??(()=>{}),()=>i(e.getSnapshot()),()=>i(e.getSnapshot())),lg.set(e,t)),t}function W1(n){return n&&`use${n.charAt(0).toUpperCase()}${n.slice(1)}`}var ag=new WeakMap;function ug(n,e){if(typeof n.inject!="function")return null;let t=ag.get(n);if(t||(t=new Map,ag.set(n,t)),!t.has(e)){let i=null;try{let r=n.inject(e);if(r&&typeof r=="object"){let{hooks:s,keyedHooks:o,...l}=r;for(let[a,c]of Object.entries(s??{})){let h=z1(c);h&&(l[W1(a)]=h)}i=l}}catch(r){Ee("slot.inject",r),i=null}t.set(e,i)}return t.get(e)??null}function nr(n,e){let t=n.locale??e;return t?Qh(t):null}var $n=class extends Vn.Component{constructor(){super(...arguments);ce(this,"state",{failed:!1})}static getDerivedStateFromError(){return{failed:!0}}componentDidCatch(t){Ee("slot.entry",t)}render(){return this.state.failed?this.props.fallback??null:this.props.children}};function Ko(n,e=[]){let{variant:t,blocked:i,disabled:r,placeholder:s,workspacePickerOpen:o,onRequestWorkspace:l,accessory:a,hero:c,...h}=n;for(let u of e)delete h[u];return h}var ah=require("react/jsx-runtime"),V1="conversation.input.model.label";function ch(n){let{provider:e,model:t,placement:i,selected:r,fallback:s}=n,o=tr(V1),l=(0,ss.useMemo)(()=>jo(o),[o]),a=(0,ss.useMemo)(()=>l&&l.locale?nr(l):null,[l]),c=s;return l&&a&&(c=(0,ss.createElement)(l.component,{provider:e,model:t,placement:i,selected:r,t:a})),(0,ah.jsx)("span",{"data-provider-id":e.id,"data-model-id":t.id,children:(0,ah.jsx)($n,{fallback:s,children:c})})}var Un=require("react"),os=require("react/jsx-runtime"),qo=12;function ir(n){let{anchor:e,onClose:t,children:i,alignEnd:r,minWidth:s=218,side:o="top"}=n,l=(0,Un.useRef)(null),[a,c]=(0,Un.useState)(null);return(0,Un.useLayoutEffect)(()=>{let h=l.current;if(!h)return;let u=()=>{let f=h.offsetWidth,p=h.offsetHeight,m=r?e.right-f:e.left,y=o==="top"?e.top-8-p:e.bottom+4;f>0&&(m=Math.min(Math.max(m,qo),window.innerWidth-f-qo)),p>0&&(y=Math.min(Math.max(y,qo),window.innerHeight-p-qo)),c(b=>b&&b.left===m&&b.top===y?b:{left:m,top:y})};u(),window.addEventListener("scroll",u,!0),window.addEventListener("resize",u);let d=typeof ResizeObserver<"u"?new ResizeObserver(u):null;return d?.observe(h),()=>{d?.disconnect(),window.removeEventListener("scroll",u,!0),window.removeEventListener("resize",u)}},[e,r,o]),(0,Un.useEffect)(()=>{let h=u=>{l.current&&u.target instanceof Node&&l.current.contains(u.target)||t()};return window.addEventListener("pointerdown",h,!0),()=>window.removeEventListener("pointerdown",h,!0)},[t]),(0,os.jsx)("div",{ref:l,className:"dci-menu",style:{left:a?.left??0,top:a?.top??0,bottom:"auto",right:"auto",minWidth:s,...a?null:{visibility:"hidden"}},children:(0,os.jsx)("div",{className:"dci-viewport",children:i})})}function ls({size:n=16}){return(0,os.jsx)("svg",{width:n,height:n,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:(0,os.jsx)("path",{d:"M3 8.5L6.5 12L13 4.5",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round",strokeLinejoin:"round"})})}var X=require("react/jsx-runtime");function hh(n,e){if(!n)return null;for(let t of e){if(t.id!==n.provider)continue;let i=t.models.find(r=>r.id===n.model);if(i)return{group:t,model:i}}return null}function $1(n,e){return n?hh(n,e)?.model.name??n.model:v("tool.modelPlain")}function U1(n,e,t){let i=hh(n,e);if(!i)return;let r=i.model.reasoning;if(!r)return t?.retainedEffort;let s=n?.reasoningEffort??r.defaultEffort;return s===void 0?"Default":r.efforts.find(o=>o.id===s)?.name??s}function dg(n){let{sessionId:e,onNotify:t}=n,[i,r]=(0,Vt.useState)(!1),[s,o]=(0,Vt.useState)(!1),[l,a]=(0,Vt.useState)("root"),c=(0,Vt.useRef)(null),[h,u]=(0,Vt.useState)(null),d=sg(e),f=wn(d?.store);(0,Vt.useEffect)(()=>{!s||!d||d.load().catch(()=>{})},[s]),(0,Vt.useEffect)(()=>{if(!s)return;let R=P=>{F(p.current,P.target)||y()};return window.addEventListener("pointerdown",R,!0),()=>window.removeEventListener("pointerdown",R,!0)},[s]);let p=(0,Vt.useRef)(null),m=()=>{let R=c.current;R&&(u(R.getBoundingClientRect()),a("root"),o(!0))},y=()=>{o(!1),a("root")},b=f?.current??null,x=f?.groups??[],k=hh(b,x),_=$1(b,x),C=U1(b,x,f),S=C===void 0?_:`${_} \xB7 ${C}`,A=(R,P)=>(0,X.jsx)(ch,{provider:{id:P.group.id,name:P.group.name},model:P.model,placement:R,selected:!0,fallback:_}),$=async(R,P,E)=>{if(!d||i)return;let O={provider:R.id,model:P.id,...E!==void 0?{reasoningEffort:E}:{}};r(!0);try{await d.select(O)}catch(z){t?.("error",z instanceof Error?z.message:String(z))}finally{r(!1),y()}},F=(R,P)=>!!R&&P instanceof Node&&R.contains(P);return(0,X.jsxs)("div",{style:{position:"relative",minWidth:0},children:[(0,X.jsxs)("button",{ref:c,type:"button",className:"dci-trigger","data-model":"",style:{maxWidth:"min(360px, 45cqw)"},"data-open":s,onMouseDown:R=>R.preventDefault(),disabled:!d,onClick:()=>s?y():m(),"aria-haspopup":"menu","aria-expanded":s,"aria-label":v("tool.model",{name:S}),title:v("tool.model",{name:S}),children:[(0,X.jsx)("span",{className:"dci-triggerLabel",children:k?A("trigger",k):_}),C?(0,X.jsx)("span",{className:"dci-triggerEffort",children:C}):null,(0,X.jsx)("span",{className:"dci-chev","data-open":s,children:(0,X.jsx)(Yt,{size:14})})]}),s&&h?(0,X.jsx)("div",{ref:p,children:(0,X.jsxs)(ir,{anchor:h,onClose:y,alignEnd:!0,minWidth:240,children:[l==="root"?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)("button",{type:"button",className:"dci-cell",onClick:()=>a("models"),children:[(0,X.jsx)("span",{className:"dci-cellLabel",children:v("menu.model")}),(0,X.jsx)("span",{className:"dci-cellValue",children:k?A("menu",k):_}),(0,X.jsx)("span",{className:"dci-cellChevron",style:{transform:"rotate(-90deg)"},"aria-hidden":"true",children:(0,X.jsx)(Yt,{size:14})})]}),k?.model.reasoning?(0,X.jsxs)("button",{type:"button",className:"dci-cell",onClick:()=>a("efforts"),children:[(0,X.jsx)("span",{className:"dci-cellLabel",children:v("menu.reasoning")}),(0,X.jsx)("span",{className:"dci-cellValue",children:C}),(0,X.jsx)("span",{className:"dci-cellChevron",style:{transform:"rotate(-90deg)"},"aria-hidden":"true",children:(0,X.jsx)(Yt,{size:14})})]}):null]}):null,l==="models"?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)("div",{className:"dci-menuLabel",children:v("menu.model")}),x.map(R=>(0,X.jsxs)("div",{children:[(0,X.jsx)("div",{className:"dci-menuLabel",children:R.name}),R.models.map(P=>{let E=b!==null&&b.provider===R.id&&b.model===P.id;return(0,X.jsxs)("button",{type:"button",className:"dci-item",disabled:i,title:P.description,onClick:()=>void $(R,P,P.reasoning?.defaultEffort),children:[(0,X.jsx)("span",{className:"dci-itemLabel",children:(0,X.jsx)(ch,{provider:{id:R.id,name:R.name},model:P,placement:"option",selected:E,fallback:P.name})}),E?(0,X.jsx)("span",{className:"dci-check","aria-hidden":"true",children:(0,X.jsx)(ls,{size:16})}):null]},P.id)})]},R.id)),x.length===0?(0,X.jsx)("div",{className:"dci-empty",children:f?.status==="loading"?v("menu.refreshingModels"):v("menu.noModels")}):null]}):null,l==="efforts"?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)("div",{className:"dci-menuLabel",children:v("menu.reasoning")}),(()=>{let R=k?.model.reasoning;if(!R)return(0,X.jsx)("div",{className:"dci-empty",children:v("menu.reasoningNone")});let P=b?.reasoningEffort??R.defaultEffort;return[...R.defaultEffort===void 0?[{key:"provider-default",effort:void 0,label:"Default"}]:[],...R.efforts.map(O=>({key:`effort:${O.id}`,effort:O.id,label:O.name}))].map(O=>{let z=P===O.effort,Y=O.effort===void 0?void 0:R.efforts.find(G=>G.id===O.effort);return(0,X.jsxs)("button",{type:"button",className:"dci-item",disabled:i,title:Y?.description,onClick:()=>k&&void $(k.group,k.model,O.effort),children:[(0,X.jsx)("span",{className:"dci-itemLabel",children:O.label}),z?(0,X.jsx)("span",{className:"dci-check","aria-hidden":"true",children:(0,X.jsx)(ls,{size:16})}):null]},O.key)})})()]}):null]})}):null]})}var $t=require("react");var Go=["read-only","workspace-write","danger-full-access"];function fg(n){return Di(`perm.preset.${n}`)??n}function xi(){return{title:v("perm.confirmTitle"),description:v("perm.warning"),acknowledgeLabel:v("perm.ack"),cancelLabel:v("perm.cancel"),enableLabel:v("perm.confirmEnable")}}function uh(n,e){return Go.includes(n)&&(e===n||e===fg(n))?fg(n):/^[a-z0-9]+(-[a-z0-9]+)*$/.test(e)?e.split("-").map(i=>i.charAt(0).toUpperCase()+i.slice(1)).join(" "):e}async function j1(n,e){let t=J.sessions?.binding(n)?.session;if(!t||typeof t.command!="function")return null;try{let i=await t.command(`/permission ${e}`);return i?.ok?i.value?.matched===!1?{ok:!1,via:"command",message:v("perm.channelRejected")}:(Tl(e),{ok:!0,via:"command"}):{ok:!1,via:"command",message:v("perm.channelRejected")}}catch(i){return qt("permission command failed",i),{ok:!1,via:"command",message:String(i)}}}function K1(n,e,t){try{return e.setDraft(`/permission ${n}`),e.submit(),setTimeout(()=>{try{e.setDraft(t)}catch(i){qt("permission draft restore failed",i)}},600),Tl(n),{ok:!0,via:"draft-exchange"}}catch(i){return qt("permission draft-exchange failed",i),{ok:!1,via:"draft-exchange",message:String(i)}}}async function pg(n,e,t,i){let r=await j1(n,e);return r||(t?K1(e,t,i):{ok:!1,via:"draft-exchange",message:v("perm.noInputSurface")})}var ee=require("react/jsx-runtime"),mg="danger-full-access";function dh(n){if(n==="read-only")return(0,ee.jsx)(ad,{size:16});if(n==="workspace-write")return(0,ee.jsx)(cd,{size:16});if(n===mg)return(0,ee.jsx)(hd,{size:16})}function gg(n){let{sessionId:e,actions:t,currentDraft:i,useProjection:r,disabled:s,onNotify:o}=n,l=r?r("permissions"):void 0,[a,c]=(0,$t.useState)(null),[h,u]=(0,$t.useState)(!1),[d,f]=(0,$t.useState)(null),[p,m]=(0,$t.useState)(!1),y=(0,$t.useRef)(null),[b,x]=(0,$t.useState)(null);if((0,$t.useEffect)(()=>{s||l===void 0&&(u(!1),m(!1),f(null))},[s,l]),!l||typeof l.currentValue!="string")return null;let k=a!==null||d!==null,_=a??l.currentValue,C=uh(_,_),S=[...Go,...Go.includes(_)?[]:[_]].map(E=>({id:E,label:uh(E,E),icon:dh(E)})),A=()=>u(!1),$=E=>{e&&(c(E),pg(e,E,t,i).then(O=>{O.ok||o?.("error",O.message??v("perm.switchFailed"))}).finally(()=>c(null)))},F=E=>{if(A(),E!==l.currentValue){if(E===mg){m(!1),f(E);return}$(E)}},R=()=>{m(!1),f(null)},P=()=>{if(s||!p||d===null)return;let E=d;R(),$(E)};return(0,ee.jsxs)(ee.Fragment,{children:[(0,ee.jsxs)("button",{ref:y,type:"button",className:"dci-trigger","aria-label":v("perm.trigger",{name:C}),title:void 0,disabled:s||k,onMouseDown:E=>E.preventDefault(),onClick:()=>{h||x(y.current?.getBoundingClientRect()??null),u(!h)},children:[dh(_)!==void 0?(0,ee.jsx)("span",{className:"dci-triggerIcon","aria-hidden":"true",children:dh(_)}):null,(0,ee.jsx)("span",{className:"dci-triggerLabel",children:C}),(0,ee.jsx)("span",{className:"dci-chev","data-open":h,children:(0,ee.jsx)(Yt,{size:14})})]}),h&&b?(0,ee.jsx)(ir,{anchor:b,onClose:A,children:S.map(E=>{let O=E.id===_;return(0,ee.jsxs)("button",{type:"button",className:"dci-item",disabled:k,onClick:()=>F(E.id),children:[E.icon!==void 0?(0,ee.jsx)("span",{className:"dci-itemIcon","aria-hidden":"true",children:E.icon}):null,(0,ee.jsx)("span",{className:"dci-itemLabel",children:E.label}),O?(0,ee.jsx)("span",{className:"dci-check","aria-hidden":"true",children:(0,ee.jsx)(ls,{size:16})}):null]},E.id)})}):null,(0,ee.jsx)(q1,{open:d!==null,acknowledged:p,disabled:s===!0,onAcknowledgedChange:m,onCancel:R,onConfirm:P})]})}function q1(n){let{open:e,acknowledged:t,disabled:i,onAcknowledgedChange:r,onCancel:s,onConfirm:o}=n;return(0,$t.useEffect)(()=>{if(!e)return;let l=a=>{a.key==="Escape"&&s()};return document.addEventListener("keydown",l),()=>document.removeEventListener("keydown",l)},[e]),e?(0,ee.jsxs)("div",{className:"dci-modal-root",role:"presentation",children:[(0,ee.jsx)("div",{className:"dci-modal-mask","aria-hidden":"true",onClick:s}),(0,ee.jsxs)("div",{className:"dci-modal-dialog dci-confirm",role:"dialog","aria-modal":"true","aria-label":xi().title,children:[(0,ee.jsxs)("div",{className:"dci-modal-content",children:[(0,ee.jsxs)("div",{className:"dci-modal-header",children:[(0,ee.jsx)("h2",{className:"dci-modal-title",children:xi().title}),(0,ee.jsx)("button",{type:"button",className:"dci-modal-close","aria-label":v("perm.close"),onClick:s,children:(0,ee.jsx)(nd,{size:14})})]}),(0,ee.jsxs)("div",{className:"dci-modal-body",children:[(0,ee.jsxs)("div",{className:"dci-confirm-warning",children:[(0,ee.jsx)("span",{className:"dci-confirm-warningIcon","aria-hidden":"true",children:(0,ee.jsx)(ud,{size:18})}),(0,ee.jsx)("p",{children:xi().description})]}),(0,ee.jsxs)("label",{className:"dci-confirm-ack",children:[(0,ee.jsx)("input",{type:"checkbox",checked:t,disabled:i,autoFocus:!0,onChange:l=>r(l.currentTarget.checked)}),(0,ee.jsx)("span",{children:xi().acknowledgeLabel})]})]})]}),(0,ee.jsxs)("div",{className:"dci-modal-footer",children:[(0,ee.jsx)("button",{type:"button",className:"dci-btn dci-btn-outline dci-btn-cancel",onClick:s,children:xi().cancelLabel}),(0,ee.jsx)("button",{type:"button",className:"dci-btn dci-btn-primary dci-btn-confirm",disabled:i||!t,onClick:o,children:xi().enableLabel})]})]})]}):null}var ln=require("react");var G1="conversation.input.activity",X1="voice-input",bg=new WeakMap,yg=new WeakMap;function Y1(n,e){if(typeof n.inject!="function")return null;let t=yg.get(n);if(t||(t=new Map,yg.set(n,t)),!t.has(e)){let i=null;try{i=n.inject(e)??null}catch(r){Ee("voice.inject",r),i=null}t.set(e,i)}return t.get(e)??null}function J1(n){let e=n;if(!e||typeof e.subscribe!="function"||typeof e.getSnapshot!="function")return null;let t=bg.get(e);return t||(t=i=>(0,ln.useSyncExternalStore)(r=>e.subscribe(r)??(()=>{}),()=>i(e.getSnapshot()),()=>i(e.getSnapshot())),bg.set(e,t)),t}function wg(n){let{sessionId:e,inputActions:t,locked:i,onActiveChange:r}=n,s=tr(G1),o=(0,ln.useMemo)(()=>jo(s),[s]),l=(0,ln.useMemo)(()=>o&&e?Y1(o,e):null,[o,e]),a=(0,ln.useMemo)(()=>o?nr(o,X1):null,[o]),c=l?.hooks?.speechReadiness,h=(0,ln.useMemo)(()=>J1(c),[c]);if(!o||!e||!l||!a||!h)return null;let{hooks:u,...d}=l;return(0,ln.createElement)($n,{children:(0,ln.createElement)(o.component,{sessionId:e,inputActions:t,locked:i,onActiveChange:r,...d,useSpeechReadiness:h,t:a})})}var as=require("react");var Yo=require("react/jsx-runtime");function Xo(n){let{slot:e,sessionId:t,standard:i}=n,r=tr(e),s=(0,as.useMemo)(()=>cg(r),[r]);return t===void 0||s.length===0?null:(0,Yo.jsx)(Yo.Fragment,{children:s.map((o,l)=>{let a=o.component,c;try{c=nr(o)??void 0}catch{c=void 0}let h=null;try{h=ug(o,t)}catch(u){Ee("slot.seat.inject",u)}return(0,as.createElement)($n,{key:hg(o,l)},(0,as.createElement)(a,{...i??{},sessionId:t,...h??{},...c!==void 0?{t:c}:{}}))})})}var vg=require("react/jsx-runtime"),Z1="conversation.input.left";function xg(n){return(0,vg.jsx)(Xo,{slot:Z1,sessionId:n.sessionId,standard:n.standard})}var Sg=require("react/jsx-runtime"),Q1="conversation.input.right";function kg(n){return(0,Sg.jsx)(Xo,{slot:Q1,sessionId:n.sessionId,standard:n.standard})}var Ke=require("react/jsx-runtime");function Cg(n){n.preventDefault()}function Tg(n){let{sessionId:e,state:t,actions:i,triggers:r,caretRef:s,useProjection:o,disabled:l,onNotify:a,inputStandard:c}=n;Gt();let h=t?.attachmentIds??[],[u,d]=(0,Jo.useState)(!1),f=(0,Jo.useCallback)(m=>d(m),[]),p=()=>{r&&$m(r,void 0,s.current??0)};return(0,Ke.jsxs)("div",{className:"dci-row","data-voice-active":u||void 0,children:[(0,Ke.jsxs)("div",{className:"dci-tools",children:[(0,Ke.jsx)("button",{type:"button",className:"dci-add","aria-label":v("tool.command"),"aria-haspopup":"listbox",title:v("tool.command"),disabled:!r,onMouseDown:Cg,onClick:p,children:(0,Ke.jsx)(od,{size:14})}),(0,Ke.jsx)(gg,{sessionId:e,actions:i,currentDraft:t?.draft??"",useProjection:o,disabled:l,onNotify:a}),t!==void 0&&e!==void 0?(0,Ke.jsx)(xg,{sessionId:e,standard:c}):null]}),(0,Ke.jsxs)("div",{className:"dci-trailing",children:[(0,Ke.jsxs)("div",{className:"dci-standard-controls",children:[t!==void 0&&e!==void 0?(0,Ke.jsx)(kg,{sessionId:e,standard:c}):null,(0,Ke.jsx)(dg,{sessionId:e,onNotify:a})]}),(0,Ke.jsx)("div",{className:"dci-voice-seat",children:(0,Ke.jsx)(wg,{sessionId:e,inputActions:i,locked:l===!0,onActiveChange:f})}),(0,Ke.jsx)("button",{type:"button",className:"dci-send","aria-label":n.primaryStops?v("tool.stop"):v("tool.send"),title:n.primaryStops?v("tool.stop"):v("tool.send"),disabled:n.primaryStops?!n.onStop:n.sendDisabled,onMouseDown:Cg,onClick:()=>n.primaryStops?n.onStop?.():n.onSend(),children:n.primaryStops?(0,Ke.jsx)(fd,{size:16}):(0,Ke.jsx)(dd,{size:16})})]})]})}var xn=require("react");var cs=["tokenUsage","contextPressure","sessionUsage","usage","sessionStats"];function xe(n){return typeof n=="number"&&Number.isFinite(n)?n:void 0}function ev(n){if(!n||typeof n!="object")return;let e=n,t={cacheReadTokens:xe(e.cacheReadTokens),cacheWriteTokens:xe(e.cacheWriteTokens),outputTokens:xe(e.outputTokens),uncachedInputTokens:xe(e.uncachedInputTokens)};return Object.values(t).some(i=>i!==void 0)?t:void 0}function tv(n){if(!n||typeof n!="object")return;let e=n,t={contextWindow:xe(e.contextWindow),pressureTokens:xe(e.pressureTokens),projectedTokens:xe(e.projectedTokens)};return t.contextWindow!==void 0&&t.pressureTokens!==void 0?t:void 0}function nv(n){if(!n||typeof n!="object")return;let e=n,t={turns:xe(e.turns),steps:xe(e.steps),llmMs:xe(e.llmMs),toolMs:xe(e.toolMs),ttftMs:xe(e.ttftMs),ttftSteps:xe(e.ttftSteps),decodeMs:xe(e.decodeMs),decodeTokens:xe(e.decodeTokens)};return Object.values(t).some(i=>i!==void 0)?t:void 0}function iv(n){if(!Array.isArray(n))return;let e=new Set,t=0,i=0,r=0,s=0,o=0,l=0,a=0;for(let c of n){if(!c||typeof c!="object")continue;let h=c;if(h.kind==="tool-result"){let b=xe(h.callTime),x=xe(h.time);b!==void 0&&x!==void 0&&(r+=Math.max(0,x-b));continue}if(h.kind!=="assistant")continue;e.add(h.turn),t+=1;let u=h.timing,d=xe(u?.stepStartTime),f=xe(u?.firstTokenTime),p=xe(u?.completedTime);d!==void 0&&p!==void 0&&(i+=Math.max(0,p-d)),d!==void 0&&f!==void 0&&(s+=Math.max(0,f-d),o+=1),f!==void 0&&p!==void 0&&(l+=Math.max(0,p-f));let m=h.usage,y=xe(m?.outputTokens);y!==void 0&&y>=0&&(a+=y)}if(n.length!==0)return{turns:e.size,steps:t,llmMs:i,toolMs:r,ttftMs:s,ttftSteps:o,decodeMs:l,decodeTokens:a}}function fh(n){let e=Math.max(0,n);return e>=10?String(Math.round(e)):String(Math.round(e*10)/10)}function ph(n,e){if(e<=0)return null;if(n>=e)return"100";for(let t=0;t<20;t++){let i=10**t,r=Math.round(n/e*100*i)/i;if(r<100)return t===0?String(r):r.toFixed(t)}return"99.99"}function Zo(n){let e=n/1e3;if(e<60)return`${Math.round(e*10)/10}s`;let t=Math.round(e);return`${Math.floor(t/60)}\u5206${t%60}\u79D2`}function Ag(n,e,t){let i=n?n(cs[0]):void 0,r=n?n(cs[1]):void 0,s=n?n(cs[2]):void 0,o=n?n(cs[3]):void 0,l=n?n(cs[4]):void 0,a=ev(i),c=tv(r),h=nv(l)??iv(t)??rv(s,o),u={};if(h&&((h.turns!==void 0||h.steps!==void 0)&&(u.turns=h.turns,u.steps=h.steps),h.llmMs!==void 0&&(u.llmMs=h.llmMs),h.toolMs!==void 0&&(u.toolMs=h.toolMs),h.ttftMs!==void 0&&(u.ttftMs=h.ttftMs),h.ttftSteps!==void 0&&(u.ttftSteps=h.ttftSteps),h.decodeMs!==void 0&&(u.decodeMs=h.decodeMs),h.decodeTokens!==void 0&&(u.decodeTokens=h.decodeTokens),(h.decodeMs??0)>0&&(u.tokensPerSecond=(h.decodeTokens??0)/(h.decodeMs/1e3))),a){let p=(a.cacheReadTokens??0)+(a.cacheWriteTokens??0)+(a.outputTokens??0)+(a.uncachedInputTokens??0);p>0&&(u.totalTokens=p,u.uncachedInputTokens=a.uncachedInputTokens,u.cacheReadTokens=a.cacheReadTokens,u.cacheWriteTokens=a.cacheWriteTokens,u.outputTokens=a.outputTokens);let m=(a.cacheReadTokens??0)+(a.cacheWriteTokens??0)+(a.uncachedInputTokens??0);if(m>0){let y=ph(a.cacheReadTokens??0,m);y!==null&&(u.cacheHitText=y)}}let d=c?.contextWindow,f=c?.projectedTokens??c?.pressureTokens;return d!==void 0&&d>0&&f!==void 0&&(u.contextPct=f/d*100),Object.keys(u).length>0?u:null}function rv(n,e){let t=i=>{if(!i||typeof i!="object")return;let r=i,s=xe(r.turns)??xe(r.turnCount),o=xe(r.steps)??xe(r.stepCount);return s!==void 0||o!==void 0?{turns:s,steps:o}:void 0};return t(n)??t(e)}function Qo(n){let e=t=>t>=100?String(Math.round(t)):String(Math.round(t*10)/10);return n<1e3?`${n} tok`:n<1e6?`${e(n/1e3)}K tok`:`${e(n/1e6)}M tok`}var B=require("react/jsx-runtime");function mh({size:n=14}){return(0,B.jsxs)("svg",{width:n,height:n,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[(0,B.jsx)("path",{d:"M3.49 13.26A6.375 6.375 0 1 1 12.51 13.26",stroke:"currentColor",strokeWidth:"1.25"}),(0,B.jsx)("path",{d:"M8 8.75L11.4 5.35",stroke:"currentColor",strokeWidth:"1.25"}),(0,B.jsx)("circle",{cx:"8",cy:"8.75",r:"1.55",fill:"currentColor"})]})}function Eg({size:n=14}){return(0,B.jsxs)("svg",{width:n,height:n,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[(0,B.jsx)("ellipse",{cx:"8",cy:"3.6",rx:"5.75",ry:"2.4",stroke:"currentColor",strokeWidth:"1.25"}),(0,B.jsx)("path",{d:"M2.25 3.6V12.3A5.75 2.4 0 0 0 13.75 12.3V3.6",stroke:"currentColor",strokeWidth:"1.25"}),(0,B.jsx)("path",{d:"M2.25 7.95A5.75 2.4 0 0 0 13.75 7.95",stroke:"currentColor",strokeWidth:"1.25"})]})}function Rg(n){let{label:e,icon:t,titleValue:i,rows:r}=n;return(0,B.jsxs)("div",{className:"dci-stat-panel",role:"dialog","aria-label":e,children:[(0,B.jsxs)("div",{className:"dci-stat-panelTitle",children:[(0,B.jsxs)("span",{className:"dci-stat-panelLabel",children:[t,e]}),i!==void 0?(0,B.jsx)("span",{className:"dci-stat-panelValue",children:i}):null]}),(0,B.jsx)("div",{className:"dci-stat-panelRule","aria-hidden":"true"}),(0,B.jsx)("dl",{className:"dci-stat-details",children:r.map(([s,o])=>(0,B.jsxs)("div",{style:{display:"contents"},children:[(0,B.jsx)("dt",{children:s}),(0,B.jsx)("dd",{children:o})]},s))})]})}function hs(n){let e=String(n??0),t=[];for(let i=e.length;i>0;i-=3)t.unshift(e.slice(Math.max(0,i-3),i));return`${t.join(",")} tok`}function sv(n){let{stats:e,open:t,onToggle:i}=n,r=v("stats.turns",{turns:e.turns??0,steps:e.steps??0}),s=(e.decodeMs??0)>0?fh((e.decodeTokens??0)/((e.decodeMs??1)/1e3)):null,o=(e.llmMs??0)>0||(e.toolMs??0)>0||(e.ttftSteps??0)>0||(e.decodeMs??0)>0,l=(0,B.jsxs)("span",{className:"dci-stat-label",children:[r,s!==null?(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)("span",{className:"dci-stat-sep","aria-hidden":"true",children:"\xB7"}),v("stats.tps",{tps:s})]}):null]});return o?(0,B.jsxs)("span",{className:"dci-stat-anchor",children:[(0,B.jsxs)("button",{type:"button",className:"dci-stat-pill","aria-haspopup":"dialog","aria-expanded":t,"aria-label":s!==null?`${r} \xB7 ${v("stats.tps",{tps:s})}`:r,onClick:i,children:[(0,B.jsx)(mh,{}),l]}),t?(0,B.jsx)(Rg,{label:v("stats.session"),icon:(0,B.jsx)(mh,{}),rows:[[v("stats.modelTime"),(e.llmMs??0)>0?Zo(e.llmMs):"\u2014"],[v("stats.toolTime"),(e.toolMs??0)>0?Zo(e.toolMs):"\u2014"],[v("stats.ttft"),(e.ttftSteps??0)>0?Zo(e.ttftMs/e.ttftSteps):"\u2014"],[v("stats.tpsLabel"),(e.decodeMs??0)>0?v("stats.tps",{tps:fh((e.decodeTokens??0)/((e.decodeMs??1)/1e3))}):"\u2014"]]}):null]}):(0,B.jsx)("span",{className:"dci-stat-anchor",children:(0,B.jsxs)("span",{className:"dci-stat-pill",children:[(0,B.jsx)(mh,{}),l]})})}function ov(n){let{stats:e,open:t,onToggle:i}=n;if(e.totalTokens===void 0)return null;let r=e.totalTokens,s=e.cacheHitText??ph(e.cacheReadTokens??0,(e.cacheReadTokens??0)+(e.cacheWriteTokens??0)+(e.uncachedInputTokens??0));return(0,B.jsxs)("span",{className:"dci-stat-anchor",children:[(0,B.jsxs)("button",{type:"button",className:"dci-stat-pill","aria-haspopup":"dialog","aria-expanded":t,"aria-label":s!==null?`${Qo(r)} \xB7 ${v("stats.cacheHit",{percent:s})}`:Qo(r),onClick:i,children:[(0,B.jsx)(Eg,{}),(0,B.jsxs)("span",{className:"dci-stat-label",children:[Qo(r),s!==null?(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)("span",{className:"dci-stat-sep","aria-hidden":"true",children:"\xB7"}),v("stats.cacheHit",{percent:s})]}):null]})]}),t?(0,B.jsx)(Rg,{label:v("stats.usage"),icon:(0,B.jsx)(Eg,{}),titleValue:hs(r),rows:[[v("stats.cacheHitLabel"),s!==null?`${s}%`:"\u2014"],[v("stats.uncached"),hs(e.uncachedInputTokens)],[v("stats.cacheRead"),hs(e.cacheReadTokens)],...e.cacheWriteTokens?[[v("stats.cacheWrite"),hs(e.cacheWriteTokens)]]:[],[v("stats.output"),hs(e.outputTokens)]]}):null]})}function gh(n){let{useProjection:e,sessionId:t,chatNodes:i}=n,[r,s]=(0,xn.useState)(null),o=(0,xn.useRef)(null),l=Ag(e,t,i);(0,xn.useEffect)(()=>{if(r===null)return;let h=u=>{o.current&&u.target instanceof Node&&o.current.contains(u.target)||s(null)};return window.addEventListener("pointerdown",h,!0),()=>window.removeEventListener("pointerdown",h,!0)},[r]);let a=e?e("contextPressure"):void 0,c=a!==void 0&&!!a.contextWindow;return!l&&!c?null:(0,B.jsxs)("div",{className:"dci-stat-root","data-composer-stats":"codinput",ref:o,children:[l?(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(sv,{stats:l,open:r==="rounds",onToggle:()=>s(r==="rounds"?null:"rounds")}),(0,B.jsx)(ov,{stats:l,open:r==="tokens",onToggle:()=>s(r==="tokens"?null:"tokens")})]}):null,(0,B.jsx)(lv,{useProjection:e})]})}var Mg=2*Math.PI*5.5;function us(n){return n>=1e6?`${(n/1e6).toFixed(n%1e6===0?0:1)}M`:n>=1e3?`${(n/1e3).toFixed(n%1e3===0?0:1)}K`:`${n}`}function lv(n){let{useProjection:e}=n,[t,i]=(0,xn.useState)(!1),r=(0,xn.useRef)(null),s=e?e("contextPressure"):void 0,o=e?e("contextBreakdown"):void 0;if((0,xn.useEffect)(()=>{if(!t)return;let d=f=>{r.current&&f.target instanceof Node&&r.current.contains(f.target)||i(!1)};return window.addEventListener("pointerdown",d,!0),()=>window.removeEventListener("pointerdown",d,!0)},[t]),!s||!s.contextWindow)return null;let l=s.contextWindow,a=s.projectedTokens??s.pressureTokens??0,c=Math.min(100,Math.round(a/l*100)),h=c/100*Mg,u=[["dci-gauge-colorSystem",o?.systemTokens??0],["dci-gauge-colorTools",o?.toolsTokens??0],["dci-gauge-colorMessages",o?.messageTokens??0]];return(0,B.jsxs)("span",{className:"dci-gauge-root",ref:r,children:[(0,B.jsxs)("button",{type:"button",className:"dci-gauge-trigger","aria-label":v("tool.context",{percent:Math.round(c)}),"aria-haspopup":"dialog","aria-expanded":t,title:v("tool.context",{percent:Math.round(c)}),onClick:()=>i(!t),children:[(0,B.jsxs)("svg",{viewBox:"0 0 14 14",width:"14",height:"14","aria-hidden":"true",children:[(0,B.jsx)("circle",{className:"dci-gauge-track",cx:"7",cy:"7",r:"5.5"}),(0,B.jsx)("circle",{className:"dci-gauge-fill",cx:"7",cy:"7",r:"5.5",strokeDasharray:`${h} ${Mg}`,transform:"rotate(-90 7 7)"})]}),(0,B.jsxs)("span",{children:[Math.round(c),"%"]})]}),t?(0,B.jsxs)("div",{className:"dci-gauge-panel",role:"dialog","aria-label":v("tool.contextTitle"),children:[(0,B.jsxs)("div",{className:"dci-gauge-header",children:[(0,B.jsx)("span",{className:"dci-gauge-headline",children:v("tool.contextTitle")}),(0,B.jsxs)("span",{className:"dci-gauge-percent",children:[Math.round(c),"%"]}),(0,B.jsxs)("span",{className:"dci-gauge-figures",children:["~",us(a)," / ",us(l)]})]}),(0,B.jsx)("div",{className:"dci-gauge-bar",children:u.map(([d,f])=>(0,B.jsx)("div",{className:`dci-gauge-segment ${d}`,style:{width:`${f/l*100}%`}},d))}),(0,B.jsxs)("dl",{className:"dci-gauge-rows",children:[(0,B.jsxs)("div",{className:"dci-gauge-row",children:[(0,B.jsxs)("dt",{children:[(0,B.jsx)("span",{className:"dci-gauge-swatch dci-gauge-colorSystem","aria-hidden":"true"}),v("stats.prompt")]}),(0,B.jsxs)("dd",{children:["~",us(o?.systemTokens??0)]})]}),(0,B.jsxs)("div",{className:"dci-gauge-row",children:[(0,B.jsxs)("dt",{children:[(0,B.jsx)("span",{className:"dci-gauge-swatch dci-gauge-colorTools","aria-hidden":"true"}),v("stats.tools")]}),(0,B.jsxs)("dd",{children:["~",us(o?.toolsTokens??0)]})]}),(0,B.jsxs)("div",{className:"dci-gauge-row",children:[(0,B.jsxs)("dt",{children:[(0,B.jsx)("span",{className:"dci-gauge-swatch dci-gauge-colorMessages","aria-hidden":"true"}),v("stats.messages")]}),(0,B.jsxs)("dd",{children:["~",us(o?.messageTokens??0)]})]})]})]}):null]})}var Re=require("react/jsx-runtime");le.setOptions({gfm:!0,breaks:!0});var av=Yl??Jl;function el(n){let{sessionId:e,state:t,actions:i,useProjection:r,inputStandard:s,placeholder:o,disabled:l,blocked:a,running:c,side:h,hero:u,chatNodes:d,float:f,onDragZonePointerDown:p}=n;Gt();let[m,y]=(0,Le.useState)(()=>ue().defaultEdit),[b,x]=(0,Le.useState)(()=>ue().defaultPreview),[k,_]=(0,Le.useState)(()=>ue().composerBodyHeight),[C,S]=(0,Le.useState)(!1),A=(0,Le.useRef)(null),$=(0,Le.useRef)(null),F=(0,Le.useRef)(null),R=(0,Le.useRef)(null),P=K=>{K.preventDefault();let Z=K.currentTarget,Pe=K.clientY,kn=k??Math.max(60,A.current?.querySelector(".dci-body")?.getBoundingClientRect().height??0);Z.dataset.dragging="true";let He=k,Sn=bs=>{He=Math.round(Math.min(window.innerHeight-260,Math.max(96,kn-(bs.clientY-Pe)))),_(He)},Dt=()=>{Z.dataset.dragging="false",window.removeEventListener("pointermove",Sn),window.removeEventListener("pointerup",Dt),window.removeEventListener("pointercancel",Dt),lt({composerBodyHeight:He})};try{Z.setPointerCapture(K.pointerId)}catch{}window.addEventListener("pointermove",Sn),window.addEventListener("pointerup",Dt),window.addEventListener("pointercancel",Dt)},[E,O]=(0,Le.useState)(0);(0,Le.useEffect)(()=>{!m&&!b&&y(!0)},[m,b]);let z=()=>{if(!(!e||!J.conversation))try{return J.conversation.input.inputTriggers(e)??void 0}catch{return}},Y=()=>{if(!(!e||!J.conversation))try{return J.conversation.input.keyboard(e)}catch{return}},G=z(),Te=Y();(0,Le.useEffect)(()=>{if(!e||G&&Te)return;let K=window.setInterval(()=>O(Pe=>Pe+1),300),Z=window.setTimeout(()=>window.clearInterval(K),1e4);return()=>{window.clearInterval(K),window.clearTimeout(Z)}},[e,G,Te]);let Ze=(0,Le.useMemo)(()=>{if(!(!e||!J.sessions||!J.commandUi)&&typeof J.commandUi.popupFor=="function")try{return J.commandUi.popupFor(J.sessions.scope(e))}catch{return}},[e,E]);(0,Le.useEffect)(()=>{if(e)return Ju(e)},[e]),(0,Le.useEffect)(()=>{if(!e||!J.commandUi)return;let K=J.commandUi;if(typeof K.bindComposerFocus=="function")return K.bindComposerFocus(e,()=>$.current?.focus())},[e]),(0,Le.useEffect)(()=>{xl(e??null);let K=Be();return e&&(G&&(K.__dshCodinputTriggers[e]=G),Te&&(K.__dshCodinputKeyboard[e]=Te),K.__dshCodinputShell[e]={surface:!0,side:h===!0}),()=>{xl(null)}},[e,G,Te,h]);let ve=K=>{F.current=K},rt=()=>{if(e)try{J.sessions?.scope(e)?.get?.("conversation")?.cancel?.()?.catch?.(()=>{})}catch{}},Ve=()=>{if(!i)return;let K=t,Z=!K||K.draft.trim()==="",Pe=!K||K.attachmentIds.length===0;if(Z&&Pe){Te?.steerQueue();return}i.submit()},qe=l===!0||a===!0,wt=(t?.draft??"").trim()==="",ie=(t?.attachmentIds.length??0)===0,vn=c===!0&&wt&&ie,Si=qe||i===void 0||t!==void 0&&t.phase==="submitting"||wt&&ie,sr=(0,Le.useMemo)(()=>av.sanitize(le.parse(t?.draft??"")),[t?.draft,b]),rl=K=>{if(!m||!b)return;let Z=K.target,Pe=$.current?.scrollDOM,kn=R.current;if(!Pe||!kn)return;let He=Z===Pe?kn:Z===kn?Pe:null;if(!He)return;let Sn=Z.scrollHeight-Z.clientHeight;if(Sn<=0)return;let Dt=Z.scrollTop/Sn*(He.scrollHeight-He.clientHeight);Math.abs(He.scrollTop-Dt)>1&&(He.scrollTop=Dt)};(0,Le.useEffect)(()=>{if(!m||!b)return;let K=$.current?.scrollDOM,Z=R.current;if(!K||!Z)return;let Pe=K.scrollHeight-K.clientHeight;Pe<=0||(Z.scrollTop=K.scrollTop/Pe*(Z.scrollHeight-Z.clientHeight))},[m,b,sr,e]);let sl=()=>{!m&&b?y(!0):m&&b&&y(!1)},ol=()=>{!b&&m?x(!0):b&&m&&x(!1)},ps=o??v("editor.placeholder"),ms=Dg(e);return(0,Re.jsxs)("div",{className:"dci-surface","data-side":h||void 0,"data-float":f||void 0,children:[(0,Re.jsxs)("div",{className:"dci-card","data-composer-card":"codinput","data-drop":C||void 0,ref:A,onPasteCapture:K=>{let Z=K.clipboardData?.files;!Z||Z.length===0||(K.preventDefault(),K.stopPropagation(),Vs(e,i,Z,ms))},onDragOverCapture:K=>{Zu(K.dataTransfer)&&(K.preventDefault(),K.dataTransfer.dropEffect="copy",C||S(!0))},onDragLeave:K=>{K.currentTarget.contains(K.relatedTarget)||S(!1)},onDropCapture:K=>{S(!1);let Z=K.dataTransfer?.files;!Z||Z.length===0||(K.preventDefault(),K.stopPropagation(),Vs(e,i,Z,ms))},children:[(0,Re.jsx)("div",{className:"dci-rip","data-axis":"y","data-side":"top",onPointerDown:P}),(0,Re.jsxs)("div",{className:"dci-accessory",children:[(0,Re.jsx)("button",{type:"button",className:"dci-iconbtn","data-on":m,onClick:sl,title:v("head.edit"),children:(0,Re.jsx)(ed,{size:14})}),(0,Re.jsx)("button",{type:"button",className:"dci-iconbtn","data-on":b,onClick:ol,title:v("head.preview"),children:(0,Re.jsx)(td,{size:14})}),h?null:(0,Re.jsx)("div",{className:"dci-float-dragzone",onPointerDown:p})]}),i&&(t?.attachmentIds.length??0)>0?(0,Re.jsx)(rg,{state:t,sessionId:e,onRemove:K=>{let Z=J.conversation;i.removeAttachment(K);try{Z?.releaseDraftAttachment(K)}catch(Pe){Ee("attachments",Pe)}}}):null,(0,Re.jsxs)("div",{className:"dci-body","data-split":m&&b,onScrollCapture:rl,style:!h&&!f&&k!==null?{"--dci-body-h":`${k}px`,"--dci-body-max":`${k}px`}:void 0,children:[m?(0,Re.jsx)(Gm,{state:t,actions:i,triggers:G,keyboard:Te,onSendGesture:Ve,placeholder:ps,viewRef:$,onCaretMoved:ve,disabled:qe,autoFocus:!0,solo:!b,stateKey:e??"hero"}):null,b?(0,Re.jsx)("div",{className:"dci-preview","data-solo":!m,ref:R,children:sr?(0,Re.jsx)("div",{dangerouslySetInnerHTML:{__html:sr}}):(0,Re.jsx)("span",{style:{opacity:.4},children:v("preview.empty")})}):null]}),(0,Re.jsx)(Tg,{sessionId:e,state:t,actions:i,triggers:G,caretRef:F,useProjection:r,disabled:qe,primaryStops:vn,onStop:rt,onNotify:Dg(e),onSend:Ve,sendDisabled:Si,inputStandard:s}),f&&u!==!0?(0,Re.jsx)(gh,{useProjection:r,sessionId:e,chatNodes:d}):null,G?(0,Re.jsx)(Ym,{triggers:G,dropdown:h===!0||f===!0}):null]}),!f&&u!==!0?(0,Re.jsx)(gh,{useProjection:r,sessionId:e,chatNodes:d}):null,Ze?(0,Re.jsx)(Zm,{popup:Ze}):null]})}function Dg(n){if(n)return(e,t)=>{try{let i=J.sessions?.scope(n);if(!i||!J.conversation)return;J.conversation.input.for(i).notify(e,t)}catch(i){Ee("notify",i)}}}var an=require("react/jsx-runtime"),bh="dsh-codinput",tl="codinput";function Lg(){return{id:bh,kind:tl,priority:"extension",title:()=>"Codinput",keepMounted:!0,guide:[{order:0,title:()=>"Codinput",description:()=>v("side.guideDesc"),icon:Ql}]}}function Pg(){return{options:{name:"sidebar.right.pane.tab",key:bh,registrant:"dsh-codinput"},component:hv}}function Og(){return{options:{name:"sidebar.right.pane.tab.title",key:bh,registrant:"dsh-codinput"},component:cv}}function cv(n){let e=n.useTabInfo?.().tab.title??"Codinput";return(0,an.jsxs)(an.Fragment,{children:[(0,an.jsx)(Ql,{size:16}),e]})}function hv(n){let{sessionId:e,useInput:t,inputActions:i,useProjection:r,useSession:s,useTabInfo:o}=n,l=t(S=>S),a=Ko(n,["useTabInfo"]),c=s?s(S=>S?.running)===!0:!1;Gt();let h=o?o():void 0,u=h?.tab.visible===!0,d=h?.sidebar.expanded===!0,f=h?.tab.actions?.close,p=(0,dt.useRef)(f);p.current=f,(0,dt.useEffect)(()=>{let S=Be().__dshCodinputShell;S["sidebar.tabId"]=h?.tab.id??"none",S["sidebar.closeFace"]=f?"yes":"none"},[h,f]),(0,dt.useEffect)(()=>du(S=>{if(!(S!==e||!p.current))try{p.current()}catch(A){Ee("sidebar.closeTab",A)}}),[e]);let[m,y]=(0,dt.useState)(()=>ue().enabled);(0,dt.useEffect)(()=>An(()=>y(ue().enabled)),[]);let b=(0,dt.useRef)(!1);(0,dt.useEffect)(()=>{b.current||(b.current=!0,ue().enabled||lt({enabled:!0}))},[]);let x=(0,dt.useRef)(null),[k,_]=(0,dt.useState)(0);(0,dt.useEffect)(()=>{if(!m)return;let S=au(e,{visible:u,expanded:d});return x.current=S,_(S.token),()=>{x.current=null,S.release()}},[e,m]),(0,dt.useEffect)(()=>{x.current?.set({visible:u,expanded:d})},[u,d]);let C=fu(e,k);return m?C?(0,an.jsx)("div",{style:{position:"absolute",inset:0,minHeight:0,display:"flex",flexDirection:"column"},children:(0,an.jsx)(el,{sessionId:e,state:l,actions:i,useProjection:r,inputStandard:a,running:c,side:!0})}):(0,an.jsx)("div",{className:"dci-side-notice",role:"note",children:v("side.notice")}):(0,an.jsx)("div",{className:"dci-side-notice",role:"note",children:v("side.disabled")})}var wh=require("react/jsx-runtime"),uv=36,dv=18,fv=12,pv=8;function yh(){return document.querySelector('[role="banner"]')??document.querySelector("header")}function Ng(n){let{sessionId:e}=n;Gt();let{carried:t,collapsed:i}=mu(e),r=t&&i,[s,o]=(0,nl.useState)(null);return(0,nl.useEffect)(()=>{if(!r){o(null);return}let l=()=>{let u=yh()?.getBoundingClientRect();if(!u||u.height===0)return;let d={left:Math.round(u.right-fv-uv),top:Math.round(u.bottom+pv)};o(f=>f&&f.left===d.left&&f.top===d.top?f:d)};l();let a=yh(),c=typeof ResizeObserver=="function"?new ResizeObserver(l):null;a&&c&&c.observe(a),window.addEventListener("resize",l);let h=window.setInterval(()=>{yh()&&(l(),window.clearInterval(h))},250);return()=>{c?.disconnect(),window.removeEventListener("resize",l),window.clearInterval(h)}},[r]),!r||!s?null:(0,Ig.createPortal)((0,wh.jsx)("button",{type:"button",className:"dci-ball","data-codinput-expand":"true",style:{left:s.left,top:s.top},"aria-label":v("ball.label"),title:v("ball.title"),onClick:()=>mv(e),children:(0,wh.jsx)(Qu,{size:dv})}),document.body)}function mv(n){let e=J.sidebarRight;if(e){try{if(n&&typeof e.openTabIn=="function"){e.openTabIn(n,tl);return}if(typeof e.openTab=="function"){e.openTab(tl);return}}catch(t){Ee("ball.openTab",t)}try{typeof e.isExpanded=="function"&&!e.isExpanded()&&e.toggleExpanded?.()}catch(t){Ee("ball.expand",t)}}}var vi=require("react/jsx-runtime");function kh(n){let{variant:e,blocked:t,disabled:i,placeholder:r,sessionId:s,useInput:o,inputActions:l,useProjection:a,useChat:c,useSession:h}=n,u=o(_=>_),d=Ko(n),f=c?c(_=>_?.legacy?.nodes):void 0,p=h?h(_=>_?.running)===!0:!1,m=pu(s),[y,b]=(0,cn.useState)(()=>ue().mode);if((0,cn.useEffect)(()=>An(()=>b(ue().mode)),[]),m)return(0,vi.jsx)(Ng,{sessionId:s});let x=y==="float",k=(0,vi.jsx)(el,{sessionId:s,state:u,actions:l,useProjection:a,inputStandard:d,placeholder:r,disabled:i===!0,blocked:t!==void 0,running:p,hero:e==="hero",chatNodes:f,float:x,onDragZonePointerDown:xv});return x?(0,vi.jsx)(kv,{children:k}):k}var Je=12,Bg=6,xh=720,il=360,ds=140,gv=6,bv=12;function jn(n,e,t){return Math.min(t,Math.max(e,n))}function Sh(){return Math.max(il,window.innerWidth-Je*2)}function yv(){return Math.max(ds,window.innerHeight-Je*2)}function _g(){let n=ue();return{x:n.floatX??Math.round((window.innerWidth-Math.min(n.floatW??xh,Sh()))/2),y:n.floatY??Math.round(window.innerHeight*.16),w:n.floatW??xh,h:n.floatH}}var rr=null,vh=new Set;function Hg(n,e){for(let t of vh)t(n,e)}function wv(){let e=document.querySelector("[data-composer-seat]")?.getBoundingClientRect(),t=Math.min(window.innerHeight,(e?.bottom??window.innerHeight)+120),i=Math.max(0,t-300);return{left:(e?.left??0)-40,right:(e?.right??window.innerWidth)+40,top:i,bottom:t}}function xv(n){if(n.button!==0)return;let e=n.currentTarget,t=e.closest("[data-composer-card]"),i=!!e.closest(".dci-float"),r=t?.getBoundingClientRect(),s=r?.left??n.clientX,o=r?.top??n.clientY,l=r?.width||Math.min(ue().floatW??xh,Sh()),a=b=>jn(b,Je,Math.max(Je,window.innerWidth-l-Je)),c=b=>jn(b,Je,Math.max(Je,window.innerHeight-96)),h=a(n.clientX-s),u=c(n.clientY-o);n.preventDefault();let d=n.clientX,f=n.clientY,p={grabDX:h,grabDY:u,detached:i,fromFloat:i,lastX:a(n.clientX-h),lastY:c(n.clientY-u)},m=b=>{if(rr){if(!p.detached){if(Math.abs(b.clientX-d)<Bg&&Math.abs(b.clientY-f)<Bg)return;p.detached=!0,p.lastX=a(b.clientX-p.grabDX),p.lastY=c(b.clientY-p.grabDY),lt({mode:"float",floatX:p.lastX,floatY:p.lastY}),Hg(p.lastX,p.lastY);return}p.lastX=a(b.clientX-p.grabDX),p.lastY=c(b.clientY-p.grabDY),Hg(p.lastX,p.lastY)}},y=b=>{if(window.removeEventListener("pointermove",m),window.removeEventListener("pointerup",y),window.removeEventListener("pointercancel",y),rr=null,!p.detached)return;let x=wv();if(b.clientX>=x.left&&b.clientX<=x.right&&b.clientY>=x.top&&b.clientY<=x.bottom){lt({mode:"normal"});return}lt({floatX:p.lastX,floatY:p.lastY})};rr=p,window.addEventListener("pointermove",m),window.addEventListener("pointerup",y),window.addEventListener("pointercancel",y)}var vv=["n","s","e","w","nw","ne","sw","se"];function kv(n){let{children:e}=n,t=(0,cn.useRef)(null),[i,r]=(0,cn.useState)(()=>rr?{..._g(),x:rr.lastX,y:rr.lastY}:_g()),s=(0,cn.useRef)(i);s.current=i,(0,cn.useLayoutEffect)(()=>{let u=(d,f)=>r(p=>({...p,x:d,y:f}));return vh.add(u),()=>{vh.delete(u)}},[]);let o=u=>d=>{if(d.button!==0)return;d.preventDefault(),d.stopPropagation();let f=s.current,m=t.current?.getBoundingClientRect(),y=m?.width??f.w,b=m?.height??f.h??ds,x=f.x,k=f.y,_=x+y,C=k+b,S=d.clientX,A=d.clientY,$=R=>{let P=R.clientX-S,E=R.clientY-A,O=y,z=b,Y=x,G=k;u.includes("e")&&(O=jn(y+P,il,Math.max(il,window.innerWidth-Je-x))),u.includes("w")&&(Y=jn(x+P,Je,_-il),O=_-Y),u.includes("s")&&(z=jn(b+E,ds,Math.max(ds,window.innerHeight-Je-k))),u.includes("n")&&(G=jn(k+E,Je,C-ds),z=C-G),r({x:Y,y:G,w:Math.round(O),h:Math.round(z)})},F=()=>{window.removeEventListener("pointermove",$),window.removeEventListener("pointerup",F),window.removeEventListener("pointercancel",F);let R=s.current;lt({floatX:R.x,floatY:R.y,floatW:R.w,floatH:R.h})};try{d.currentTarget.setPointerCapture(d.pointerId)}catch{}window.addEventListener("pointermove",$),window.addEventListener("pointerup",F),window.addEventListener("pointercancel",F)},l=Math.min(i.w,Sh()),a=i.h===null?null:Math.min(i.h,yv()),c=jn(i.x,Je,Math.max(Je,window.innerWidth-l-Je)),h=jn(i.y,Je,Math.max(Je,window.innerHeight-96));return(0,Fg.createPortal)((0,vi.jsxs)("div",{className:"dci-float",ref:t,"data-sized":a!==null?"true":void 0,style:{left:c,top:h,width:l,height:a??void 0,"--dci-grip-edge":`${gv}px`,"--dci-grip-corner":`${bv}px`},children:[e,vv.map(u=>(0,vi.jsx)("div",{className:"dci-float-grip","data-dir":u,onPointerDown:o(u)},u))]}),document.body)}function zg(){return{options:{name:"conversation.composer.bar",priority:-1,registrant:"dsh-codinput"}}}var Ut=require("react");var oe=require("react/jsx-runtime"),Sv="codinput";function $g(){return{options:{name:"settings.section",id:Sv,order:60,label:()=>"Codinput",registrant:"dsh-codinput"},component:Tv}}function Wg(n){let{value:e,conflictWith:t,ariaLabel:i,onChange:r}=n,[s,o]=(0,Ut.useState)(!1),[l,a]=(0,Ut.useState)(!1),c=(0,Ut.useRef)(null);return(0,Ut.useEffect)(()=>{if(!s)return;let h=u=>{c.current&&u.target instanceof Node&&c.current.contains(u.target)||o(!1)};return window.addEventListener("pointerdown",h,!0),()=>window.removeEventListener("pointerdown",h,!0)},[s]),(0,oe.jsx)("button",{ref:c,type:"button",className:"dci-set-selector","data-recording":s||void 0,"data-conflict":l||void 0,"aria-label":i,onClick:()=>o(!0),onBlur:()=>o(!1),onKeyDown:h=>{if(!s)return;if(h.preventDefault(),h.stopPropagation(),h.key==="Escape"){o(!1);return}if(h.key==="Shift"||h.key==="Control"||h.key==="Alt"||h.key==="Meta")return;let u=Km(h.nativeEvent,h.key);if(t!==void 0&&u===t){a(!0),window.setTimeout(()=>a(!1),1500);return}r(u),o(!1),c.current?.blur()},children:s?v("set.recording"):qm(e)})}function ki(n){let{title:e,desc:t,children:i}=n;return(0,oe.jsxs)("div",{className:"dci-set-row",children:[(0,oe.jsxs)("div",{className:"dci-set-rowText",children:[(0,oe.jsx)("div",{className:"dci-set-title",children:e}),t?(0,oe.jsx)("div",{className:"dci-set-desc",children:t}):null]}),(0,oe.jsx)("div",{className:"dci-set-control",children:i})]})}function Cv(n){let{value:e,options:t,onChange:i,ariaLabel:r}=n,[s,o]=(0,Ut.useState)(!1),l=(0,Ut.useRef)(null),[a,c]=(0,Ut.useState)(null),h=t.find(u=>u.value===e);return(0,oe.jsxs)(oe.Fragment,{children:[(0,oe.jsxs)("button",{ref:l,type:"button",className:"dci-set-selector","aria-haspopup":"menu","aria-expanded":s,"aria-label":r,onClick:()=>{s||c(l.current?.getBoundingClientRect()??null),o(!s)},children:[h?.label??e,(0,oe.jsx)(Yt,{size:14})]}),s&&a?(0,oe.jsx)(ir,{anchor:a,side:"bottom",alignEnd:!0,onClose:()=>o(!1),minWidth:200,children:t.map(u=>(0,oe.jsx)("button",{type:"button",className:"dci-item",onClick:()=>{i(u.value),o(!1)},children:(0,oe.jsx)("span",{className:"dci-itemLabel",children:u.label})},u.value))}):null]})}function Vg(n){let{on:e,label:t,onToggle:i}=n;return(0,oe.jsx)("button",{type:"button",role:"switch",className:"dci-switch","aria-checked":e,"aria-label":t,onClick:i})}function Tv(){let[n,e]=(0,Ut.useState)(()=>ue());Gt();let t=i=>{e(lt(i))};return(0,oe.jsxs)("div",{className:"dci-settings",children:[(0,oe.jsx)(ki,{title:v("set.enabled"),desc:v("set.enabledDesc"),children:(0,oe.jsx)(Vg,{on:n.enabled,label:v("set.enabled"),onToggle:()=>t({enabled:!n.enabled})})}),(0,oe.jsx)(ki,{title:v("set.lineNumbers"),desc:v("set.lineNumbersDesc"),children:(0,oe.jsx)(Vg,{on:n.lineNumbers,label:v("set.lineNumbers"),onToggle:()=>t({lineNumbers:!n.lineNumbers})})}),(0,oe.jsx)(ki,{title:v("set.font"),desc:v("set.fontDesc"),children:(0,oe.jsx)("input",{type:"text",className:"dci-set-input",value:n.fontFamily,spellCheck:!1,"aria-label":v("set.font"),onChange:i=>t({fontFamily:i.target.value})})}),(0,oe.jsx)(ki,{title:v("set.sendKey"),desc:v("set.sendKeyDesc"),children:(0,oe.jsx)(Wg,{value:n.sendHotkey,conflictWith:n.lineBreakHotkey,ariaLabel:v("set.sendKey"),onChange:i=>t({sendHotkey:i})})}),(0,oe.jsx)(ki,{title:v("set.lineBreakKey"),desc:v("set.lineBreakKeyDesc"),children:(0,oe.jsx)(Wg,{value:n.lineBreakHotkey,conflictWith:n.sendHotkey,ariaLabel:v("set.lineBreakKey"),onChange:i=>t({lineBreakHotkey:i})})}),(0,oe.jsx)(ki,{title:v("set.defaultView"),desc:v("set.defaultViewDesc"),children:(0,oe.jsx)(Cv,{value:n.defaultEdit&&n.defaultPreview?"split":n.defaultPreview?"preview":"edit",ariaLabel:v("set.defaultView"),onChange:i=>t({defaultEdit:i!=="preview",defaultPreview:i!=="edit"}),options:[{value:"edit",label:v("head.editOnly")},{value:"split",label:v("head.split")},{value:"preview",label:v("head.previewOnly")}]})}),(0,oe.jsx)(ki,{title:v("set.reset"),desc:v("set.resetAll"),children:(0,oe.jsx)("button",{type:"button",className:"dci-set-selector",onClick:()=>e(lt({...cr})),children:v("set.resetAction")})})]})}function Av(n){if(n)try{let e=J.sessions?.scope(n);e&&J.conversation&&J.conversation.input.for(e).setDraft("")}catch{}}function Ug(n,e,t){let i=n.findIndex(o=>o.name===e);if(i===-1)return[...n];let r=t(n);if(r===i||r===i+1)return[...n];let s=[...n];return s.splice(i,1),s.splice(r>i?r-1:r,0,n[i]),s}function jg(n){$e("command.register",()=>{n.inject(["commandUi"],e=>{let t=e.commandUi;if(typeof t?.register!="function"){Be().__dshCodinputShell.command="commandUi-unavailable";return}let i;if(typeof t.candidates=="function"){let r=t.candidates.bind(t);t.candidates=(s,o)=>Promise.resolve(r(s,o)).then(l=>{if(o.query!==""||!Array.isArray(l))return l;let a=l,c=a.find(h=>h.name==="goal"||h.name==="plan"||h.name==="feedback")?.section;return c!==void 0&&(a=Ug(a,"file",h=>{let u=h.findIndex(d=>d.section===c&&d.name!=="file");return u===-1?h.length:u})),a=Ug(a,"codinput",h=>{let u=h.find(f=>f.name==="codinput"),d=h.findIndex(f=>f.section===u?.section&&f.name!=="codinput"&&f.name.toLowerCase()>"codinput");return d===-1?h.length:d}),a}),i=()=>{t.candidates=r}}n.effect(()=>i,"dsh-codinput: slash order patch"),n.effect(()=>t.register({name:"codinput",description:()=>ue().enabled?v("cmd.exit"):v("cmd.enter"),icon:pd,available:()=>!0,ui:{kind:"action",run:()=>{let r=Be().__dshCodinputSessionId??void 0;if(lt({enabled:!ue().enabled}),!ue().enabled)for(let s of cu())uu(s);setTimeout(()=>Av(r),80)}}}),"dsh-codinput: /codinput contribution"),Be().__dshCodinputShell.command="registered"})})}var Ev="dsh-codinput",Mv=["slots","conversation"];function fs(n,e,t=60){try{n(),Be().__dshCodinputShell[e]="registered";return}catch(i){if(t<=0){Ee(e,i),Be().__dshCodinputShell[e]="failed";return}}setTimeout(()=>fs(n,e,t-1),250)}function Rv(n){iu(),tu(n),$e("console.hook",()=>{let l=Be();if(!l.__dshConsoleHooked){l.__dshConsoleHooked=!0;let a=l.console.error.bind(l.console);l.console.error=(...c)=>{let h=c.find(u=>u instanceof Error);h&&l.__dshCodinputErrs.push(h),a(...c)}}}),$e("slots.entryErrorHook",()=>{let l=n.slots,a=l._core??l;typeof a.onEntryError=="function"&&a.onEntryError(c=>{let h=c?.error;Ee("slot.entry",h??c),Be().__dshCodinputErrs.push(h instanceof Error?h:new Error(JSON.stringify(c).slice(0,800)))})});let e=zg(),t=null,i=()=>{if(!t)try{t=n.slots.register(e.options,kh),Be().__dshCodinputShell.bar="mounted"}catch(l){Ee("bar.register",l)}},r=()=>{let l=t;t=null;try{l?.(),Be().__dshCodinputShell.bar="unmounted"}catch(a){Ee("bar.dispose",a)}},s=()=>ue().enabled||hu(),o=()=>{s()?i():r()};fs(()=>{s()&&i()},"bar"),$e("bar.prefs",()=>{An(o)}),$e("bar.sideinput",()=>{ur(o)}),$e("sidebar.register",()=>{n.inject(["slots","sidebarRightTabs","sidebarRight"],l=>{let a=l.sidebarRightTabs;if(typeof a?.register!="function"){Ee("sidebar",new Error("sidebarRightTabs unavailable"));return}let c=Pg();n.effect(()=>a.register(Lg()),"dsh-codinput: sidebar tab type"),fs(()=>{n.slots.register(c.options,c.component)},"sidebar.body");let h=Og();fs(()=>{n.slots.register(h.options,h.component)},"sidebar.title")})}),$e("settings.register",()=>{let l=$g();fs(()=>{n.slots.register(l.options,l.component)},"settings")}),jg(n),$e("draggate.install",()=>{let l=window;l.__dshCodinputDragGate||(l.__dshCodinputDragGate=!0,document.addEventListener("pointerdown",a=>{a.target instanceof Element&&(a.target.closest("[data-dockkit-tab-close]")||a.target.closest("[data-dockkit-tab]")&&a.stopPropagation())},{capture:!0}))}),$e("diag.boot",()=>{Be().__dshCodinputShell.apply="done",window.__dshCodinputCtx=n})}
591
600
  return module.exports; } })