/*! For license information please see main.bundle.js.LICENSE.txt */ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.MonacoPrompt=t():e.MonacoPrompt=t()}(self,(()=>(()=>{"use strict";var e={69:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .snippet-placeholder {\n\tmin-width: 2px;\n\toutline-style: solid;\n\toutline-width: 1px;\n\tbackground-color: var(--vscode-editor-snippetTabstopHighlightBackground, transparent);\n\toutline-color: var(--vscode-editor-snippetTabstopHighlightBorder, transparent);\n}\n\n.monaco-editor .finish-snippet-placeholder {\n\toutline-style: solid;\n\toutline-width: 1px;\n\tbackground-color: var(--vscode-editor-snippetFinalTabstopHighlightBackground, transparent);\n\toutline-color: var(--vscode-editor-snippetFinalTabstopHighlightBorder, transparent);\n}\n",""]);const a=r},140:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/* Arrows */\n.monaco-scrollable-element > .scrollbar > .scra {\n\tcursor: pointer;\n\tfont-size: 11px !important;\n}\n\n.monaco-scrollable-element > .visible {\n\topacity: 1;\n\n\t/* Background rule added for IE9 - to allow clicks on dom node */\n\tbackground:rgba(0,0,0,0);\n\n\ttransition: opacity 100ms linear;\n\t/* In front of peek view */\n\tz-index: 11;\n}\n.monaco-scrollable-element > .invisible {\n\topacity: 0;\n\tpointer-events: none;\n}\n.monaco-scrollable-element > .invisible.fade {\n\ttransition: opacity 800ms linear;\n}\n\n/* Scrollable Content Inset Shadow */\n.monaco-scrollable-element > .shadow {\n\tposition: absolute;\n\tdisplay: none;\n}\n.monaco-scrollable-element > .shadow.top {\n\tdisplay: block;\n\ttop: 0;\n\tleft: 3px;\n\theight: 3px;\n\twidth: 100%;\n\tbox-shadow: var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset;\n}\n.monaco-scrollable-element > .shadow.left {\n\tdisplay: block;\n\ttop: 3px;\n\tleft: 0;\n\theight: 100%;\n\twidth: 3px;\n\tbox-shadow: var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset;\n}\n.monaco-scrollable-element > .shadow.top-left-corner {\n\tdisplay: block;\n\ttop: 0;\n\tleft: 0;\n\theight: 3px;\n\twidth: 3px;\n}\n.monaco-scrollable-element > .shadow.top.left {\n\tbox-shadow: var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset;\n}\n\n.monaco-scrollable-element > .scrollbar > .slider {\n\tbackground: var(--vscode-scrollbarSlider-background);\n}\n\n.monaco-scrollable-element > .scrollbar > .slider:hover {\n\tbackground: var(--vscode-scrollbarSlider-hoverBackground);\n}\n\n.monaco-scrollable-element > .scrollbar > .slider.active {\n\tbackground: var(--vscode-scrollbarSlider-activeBackground);\n}\n",""]);const a=r},213:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n.monaco-editor .overlayWidgets {\n\tposition: absolute;\n\ttop: 0;\n\tleft:0;\n}",""]);const a=r},233:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/*\n\t@keyframes blink { 50% { border-color: orange; } }\n*/\n\n.monaco-editor {\n\t.inline-edits-view-indicator {\n\t\tdisplay: flex;\n\n\t\tz-index: 34; /* Below the find widget */\n\t\theight: 20px;\n\n\t\tcolor: var(--vscode-inlineEdit-gutterIndicator-primaryForeground);\n\t\tbackground-color: var(--vscode-inlineEdit-gutterIndicator-background);\n\t\tborder: 1px solid var(--vscode-inlineEdit-gutterIndicator-primaryBorder);\n\t\tborder-radius: 3px;\n\n\t\talign-items: center;\n\t\tpadding: 2px;\n\t\tpadding-right: 10px;\n\t\tmargin: 0 4px;\n\n\t\t/*\n\t\tanimation: blink 1s;\n\t\tanimation-iteration-count: 3;\n\t\t*/\n\n\t\topacity: 0;\n\n\t\t&.contained {\n\t\t\ttransition: opacity 0.2s ease-in-out;\n\t\t\ttransition-delay: 0.4s;\n\t\t}\n\n\t\t&.visible {\n\t\t\topacity: 1;\n\t\t}\n\n\t\t&.top {\n\t\t\topacity: 1;\n\n\t\t\t.icon {\n\t\t\t\ttransform: rotate(90deg);\n\t\t\t}\n\t\t}\n\n\t\t&.bottom {\n\t\t\topacity: 1;\n\n\t\t\t.icon {\n\t\t\t\ttransform: rotate(-90deg);\n\t\t\t}\n\t\t}\n\n\t\t.icon {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tmargin: 0 2px;\n\t\t\ttransform: none;\n\t\t\ttransition: transform 0.2s ease-in-out;\n\t\t\t.codicon {\n\t\t\t\tcolor: var(--vscode-inlineEdit-gutterIndicator-primaryForeground);\n\t\t\t}\n\t\t}\n\n\t\t.label {\n\t\t\tmargin: 0 2px;\n\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: center;\n\t\t\twidth: 100%;\n\t\t}\n\t}\n\n\t.inline-edits-view .editorContainer {\n\t\t.preview .monaco-editor {\n\t\t\t.view-overlays .current-line-exact {\n\t\t\t\tborder: none;\n\t\t\t}\n\n\t\t\t.current-line-margin {\n\t\t\t\tborder: none;\n\t\t\t}\n\t\t}\n\n\t\t.inline-edits-view-zone.diagonal-fill {\n\t\t\topacity: 0.5;\n\t\t}\n\t}\n\n\t.strike-through {\n\t\ttext-decoration: line-through;\n\t}\n\n\t.inlineCompletions-line-insert {\n\t\tbackground: var(--vscode-inlineEdit-modifiedChangedLineBackground);\n\t}\n\n\t.inlineCompletions-line-delete {\n\t\tbackground: var(--vscode-inlineEdit-originalChangedLineBackground);\n\t}\n\n\t.inlineCompletions-char-insert {\n\t\tbackground: var(--vscode-inlineEdit-modifiedChangedTextBackground);\n\t\tcursor: pointer;\n\t}\n\n\t.inlineCompletions-char-delete {\n\t\tbackground: var(--vscode-inlineEdit-originalChangedTextBackground);\n\t}\n\n\t.inlineCompletions-char-delete.diff-range-empty {\n\t\tmargin-left: -1px;\n\t\tborder-left: solid var(--vscode-inlineEdit-originalChangedTextBackground) 3px;\n\t}\n\n\t.inlineCompletions-char-insert.diff-range-empty {\n\t\tborder-left: solid var(--vscode-inlineEdit-modifiedChangedTextBackground) 3px;\n\t}\n\n\t.inlineCompletions-char-delete.single-line-inline { /* Editor Decoration */\n\t\tborder: 1px solid var(--vscode-editorHoverWidget-border);\n\t\tmargin: -2px 0 0 -2px;\n\t}\n\n\t.inlineCompletions-char-insert.single-line-inline { /* Inline Decoration */\n\t\tborder-top: 1px solid var(--vscode-inlineEdit-modifiedBorder); /* TODO: Do not set border inline but create overlaywidget (like deletion view) */\n\t\tborder-bottom: 1px solid var(--vscode-inlineEdit-modifiedBorder); /* TODO: Do not set border inline but create overlaywidget (like deletion view) */\n\t}\n\t.inlineCompletions-char-insert.single-line-inline.start {\n\t\tborder-top-left-radius: 4px;\n\t\tborder-bottom-left-radius: 4px;\n\t\tborder-left: 1px solid var(--vscode-inlineEdit-modifiedBorder); /* TODO: Do not set border inline but create overlaywidget (like deletion view) */\n\t}\n\t.inlineCompletions-char-insert.single-line-inline.end {\n\t\tborder-top-right-radius: 4px;\n\t\tborder-bottom-right-radius: 4px;\n\t\tborder-right: 1px solid var(--vscode-inlineEdit-modifiedBorder); /* TODO: Do not set border inline but create overlaywidget (like deletion view) */\n\t}\n\n\t.inlineCompletions-char-delete.single-line-inline.empty,\n\t.inlineCompletions-char-insert.single-line-inline.empty {\n\t\tdisplay: none;\n\t}\n\n\t.inlineCompletions.strike-through {\n\t\ttext-decoration-thickness: 1px;\n\t}\n\n\t/* line replacement bubbles */\n\n\t.inlineCompletions-modified-bubble {\n\t\tbackground: var(--vscode-inlineEdit-modifiedChangedTextBackground);\n\t}\n\n\t.inlineCompletions-original-bubble {\n\t\tbackground: var(--vscode-inlineEdit-originalChangedTextBackground);\n\t}\n\n\t.inlineCompletions-modified-bubble,\n\t.inlineCompletions-original-bubble {\n\t\tpointer-events: none;\n\t\tdisplay: inline-block;\n\t}\n\n\t.inline-edit.ghost-text,\n\t.inline-edit.ghost-text-decoration,\n\t.inline-edit.ghost-text-decoration-preview,\n\t.inline-edit.suggest-preview-text .ghost-text {\n\t\t&.syntax-highlighted {\n\t\t\topacity: 1 !important;\n\t\t}\n\t\tfont-style: normal !important;\n\t}\n\n\t.inline-edit.modified-background.ghost-text,\n\t.inline-edit.modified-background.ghost-text-decoration,\n\t.inline-edit.modified-background.ghost-text-decoration-preview,\n\t.inline-edit.modified-background.suggest-preview-text .ghost-text {\n\t\tbackground: var(--vscode-inlineEdit-modifiedChangedTextBackground) !important;\n\t\tdisplay: inline-block !important;\n\t}\n\n\t.inlineCompletions-original-lines {\n\t\tbackground: var(--vscode-editor-background);\n\t}\n}\n\n.monaco-menu-option {\n\tcolor: var(--vscode-editorActionList-foreground);\n\tfont-size: 13px;\n\tpadding: 0 4px;\n\tline-height: 28px;\n\tdisplay: flex;\n\tgap: 4px;\n\talign-items: center;\n\tborder-radius: 3px;\n\tcursor: pointer;\n\n\t.monaco-keybinding-key {\n\t\tfont-size: 13px;\n\t\topacity: 0.7;\n\t}\n\n\t&.active {\n\t\tbackground: var(--vscode-editorActionList-focusBackground);\n\t\tcolor: var(--vscode-editorActionList-focusForeground);\n\t\toutline: 1px solid var(--vscode-menu-selectionBorder, transparent);\n\t\toutline-offset: -1px;\n\n\t\t.monaco-keybinding-key {\n\t\t\tcolor: var(--vscode-editorActionList-focusForeground);\n\t\t}\n\t}\n}\n",""]);const a=r},245:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .hoverHighlight {\n\tbackground-color: var(--vscode-editor-hoverHighlightBackground);\n}\n\n.monaco-editor .monaco-resizable-hover {\n\tborder: 1px solid var(--vscode-editorHoverWidget-border);\n\tborder-radius: 3px;\n\tbox-sizing: content-box;\n}\n\n.monaco-editor .monaco-resizable-hover > .monaco-hover {\n\tborder: none;\n\tborder-radius: none;\n}\n\n.monaco-editor .monaco-hover {\n\tborder: 1px solid var(--vscode-editorHoverWidget-border);\n\tborder-radius: 3px;\n\tcolor: var(--vscode-editorHoverWidget-foreground);\n\tbackground-color: var(--vscode-editorHoverWidget-background);\n}\n\n.monaco-editor .monaco-hover a {\n\tcolor: var(--vscode-textLink-foreground);\n}\n\n.monaco-editor .monaco-hover a:hover {\n\tcolor: var(--vscode-textLink-activeForeground);\n}\n\n.monaco-editor .monaco-hover .hover-row {\n\tdisplay: flex;\n}\n\n.monaco-editor .monaco-hover .hover-row .hover-row-contents {\n\tmin-width: 0;\n\tdisplay: flex;\n\tflex-direction: column;\n}\n\n.monaco-editor .monaco-hover .hover-row .verbosity-actions {\n\tborder-right: 1px solid var(--vscode-editorHoverWidget-border);\n\twidth: 22px;\n\toverflow-y: clip;\n}\n\n.monaco-editor .monaco-hover .hover-row .verbosity-actions-inner {\n\tdisplay: flex;\n\tflex-direction: column;\n\tpadding-left: 5px;\n\tpadding-right: 5px;\n\tjustify-content: flex-end;\n\tposition: relative;\n}\n\n.monaco-editor .monaco-hover .hover-row .verbosity-actions-inner .codicon {\n\tcursor: pointer;\n\tfont-size: 11px;\n}\n\n.monaco-editor .monaco-hover .hover-row .verbosity-actions-inner .codicon.enabled {\n\tcolor: var(--vscode-textLink-foreground);\n}\n\n.monaco-editor .monaco-hover .hover-row .verbosity-actions-inner .codicon.disabled {\n\topacity: 0.6;\n}\n\n.monaco-editor .monaco-hover .hover-row .actions {\n\tbackground-color: var(--vscode-editorHoverWidget-statusBarBackground);\n}\n\n.monaco-editor .monaco-hover code {\n\tbackground-color: var(--vscode-textCodeBlock-background);\n}\n",""]);const a=r},266:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-mouse-cursor-text {\n\tcursor: text;\n}\n",""]);const a=r},540:e=>{e.exports=function(e){var t=document.createElement("style");return e.setAttributes(t,e.attributes),e.insert(t,e.options),t}},714:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.codicon-wrench-subaction {\n\topacity: 0.5;\n}\n\n@keyframes codicon-spin {\n\t100% {\n\t\ttransform:rotate(360deg);\n\t}\n}\n\n.codicon-sync.codicon-modifier-spin,\n.codicon-loading.codicon-modifier-spin,\n.codicon-gear.codicon-modifier-spin,\n.codicon-notebook-state-executing.codicon-modifier-spin {\n\t/* Use steps to throttle FPS to reduce CPU usage */\n\tanimation: codicon-spin 1.5s steps(30) infinite;\n}\n\n.codicon-modifier-disabled {\n\topacity: 0.4;\n}\n\n/* custom speed & easing for loading icon */\n.codicon-loading,\n.codicon-tree-item-loading::before {\n\tanimation-duration: 1s !important;\n\tanimation-timing-function: cubic-bezier(0.53, 0.21, 0.29, 0.67) !important;\n}\n",""]);const a=r},937:e=>{e.exports='data:image/svg+xml;utf8,%3Csvg viewBox="0 0 24 24" display="inline-block" height="1em" width="1em" vertical-align="text-bottom" xmlns="http://www.w3.org/2000/svg" %3E%3Cpath fill="currentColor" d="M9,20.42L2.79,14.21L5.62,11.38L9,14.77L18.88,4.88L21.71,7.71L9,20.42Z"/%3E%3C/svg%3E'},991:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,'/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .parameter-hints-widget {\n\t/* Must be higher than the sash\'s z-index and terminal canvases but lower than the suggest widget */\n\tz-index: 39;\n\tdisplay: flex;\n\tflex-direction: column;\n\tline-height: 1.5em;\n\tcursor: default;\n\tcolor: var(--vscode-editorHoverWidget-foreground);\n\tbackground-color: var(--vscode-editorHoverWidget-background);\n\tborder: 1px solid var(--vscode-editorHoverWidget-border);\n}\n\n.hc-black .monaco-editor .parameter-hints-widget,\n.hc-light .monaco-editor .parameter-hints-widget {\n\tborder-width: 2px;\n}\n\n.monaco-editor .parameter-hints-widget > .phwrapper {\n\tmax-width: 440px;\n\tdisplay: flex;\n\tflex-direction: row;\n}\n\n.monaco-editor .parameter-hints-widget.multiple {\n\tmin-height: 3.3em;\n\tpadding: 0;\n}\n\n.monaco-editor .parameter-hints-widget.multiple .body::before {\n\tcontent: "";\n\tdisplay: block;\n\theight: 100%;\n\tposition: absolute;\n\topacity: 0.5;\n\tborder-left: 1px solid var(--vscode-editorHoverWidget-border);\n}\n\n.monaco-editor .parameter-hints-widget p,\n.monaco-editor .parameter-hints-widget ul {\n\tmargin: 8px 0;\n}\n\n.monaco-editor .parameter-hints-widget .monaco-scrollable-element,\n.monaco-editor .parameter-hints-widget .body {\n\tdisplay: flex;\n\tflex: 1;\n\tflex-direction: column;\n\tmin-height: 100%;\n}\n\n.monaco-editor .parameter-hints-widget .signature {\n\tpadding: 4px 5px;\n\tposition: relative;\n}\n\n.monaco-editor .parameter-hints-widget .signature.has-docs::after {\n\tcontent: "";\n\tdisplay: block;\n\tposition: absolute;\n\tleft: 0;\n\twidth: 100%;\n\tpadding-top: 4px;\n\topacity: 0.5;\n\tborder-bottom: 1px solid var(--vscode-editorHoverWidget-border);\n}\n\n.monaco-editor .parameter-hints-widget .code {\n\tfont-family: var(--vscode-parameterHintsWidget-editorFontFamily), var(--vscode-parameterHintsWidget-editorFontFamilyDefault);\n}\n\n.monaco-editor .parameter-hints-widget .docs {\n\tpadding: 0 10px 0 5px;\n\twhite-space: pre-wrap;\n}\n\n.monaco-editor .parameter-hints-widget .docs.empty {\n\tdisplay: none;\n}\n\n.monaco-editor .parameter-hints-widget .docs a {\n\tcolor: var(--vscode-textLink-foreground);\n}\n\n.monaco-editor .parameter-hints-widget .docs a:hover {\n\tcolor: var(--vscode-textLink-activeForeground);\n\tcursor: pointer;\n}\n\n.monaco-editor .parameter-hints-widget .docs .markdown-docs {\n\twhite-space: initial;\n}\n\n.monaco-editor .parameter-hints-widget .docs code {\n\tfont-family: var(--monaco-monospace-font);\n\tborder-radius: 3px;\n\tpadding: 0 0.4em;\n\tbackground-color: var(--vscode-textCodeBlock-background);\n}\n\n.monaco-editor .parameter-hints-widget .docs .monaco-tokenized-source,\n.monaco-editor .parameter-hints-widget .docs .code {\n\twhite-space: pre-wrap;\n}\n\n.monaco-editor .parameter-hints-widget .controls {\n\tdisplay: none;\n\tflex-direction: column;\n\talign-items: center;\n\tmin-width: 22px;\n\tjustify-content: flex-end;\n}\n\n.monaco-editor .parameter-hints-widget.multiple .controls {\n\tdisplay: flex;\n\tpadding: 0 2px;\n}\n\n.monaco-editor .parameter-hints-widget.multiple .button {\n\twidth: 16px;\n\theight: 16px;\n\tbackground-repeat: no-repeat;\n\tcursor: pointer;\n}\n\n.monaco-editor .parameter-hints-widget .button.previous {\n\tbottom: 24px;\n}\n\n.monaco-editor .parameter-hints-widget .overloads {\n\ttext-align: center;\n\theight: 12px;\n\tline-height: 12px;\n\tfont-family: var(--monaco-monospace-font);\n}\n\n.monaco-editor .parameter-hints-widget .signature .parameter.active {\n\tcolor: var(--vscode-editorHoverWidget-highlightForeground);\n\tfont-weight: bold;\n}\n\n.monaco-editor .parameter-hints-widget .documentation-parameter > .parameter {\n\tfont-weight: bold;\n\tmargin-right: 0.5em;\n}\n',""]);const a=r},996:e=>{e.exports='data:image/svg+xml;utf8,%3Csvg viewBox="0 0 24 24" display="inline-block" height="1em" width="1em" vertical-align="text-bottom" xmlns="http://www.w3.org/2000/svg" %3E%3Cpath fill="currentColor" d="M7.41,8.58L12,13.17L16.59,8.58L18,10L12,16L6,10L7.41,8.58Z"/%3E%3C/svg%3E'},1029:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .codicon.codicon-symbol-array,\n.monaco-workbench .codicon.codicon-symbol-array { color: var(--vscode-symbolIcon-arrayForeground); }\n.monaco-editor .codicon.codicon-symbol-boolean,\n.monaco-workbench .codicon.codicon-symbol-boolean { color: var(--vscode-symbolIcon-booleanForeground); }\n.monaco-editor .codicon.codicon-symbol-class,\n.monaco-workbench .codicon.codicon-symbol-class { color: var(--vscode-symbolIcon-classForeground); }\n.monaco-editor .codicon.codicon-symbol-method,\n.monaco-workbench .codicon.codicon-symbol-method { color: var(--vscode-symbolIcon-methodForeground); }\n.monaco-editor .codicon.codicon-symbol-color,\n.monaco-workbench .codicon.codicon-symbol-color { color: var(--vscode-symbolIcon-colorForeground); }\n.monaco-editor .codicon.codicon-symbol-constant,\n.monaco-workbench .codicon.codicon-symbol-constant { color: var(--vscode-symbolIcon-constantForeground); }\n.monaco-editor .codicon.codicon-symbol-constructor,\n.monaco-workbench .codicon.codicon-symbol-constructor { color: var(--vscode-symbolIcon-constructorForeground); }\n.monaco-editor .codicon.codicon-symbol-value,\n.monaco-workbench .codicon.codicon-symbol-value,\n.monaco-editor .codicon.codicon-symbol-enum,\n.monaco-workbench .codicon.codicon-symbol-enum { color: var(--vscode-symbolIcon-enumeratorForeground); }\n.monaco-editor .codicon.codicon-symbol-enum-member,\n.monaco-workbench .codicon.codicon-symbol-enum-member { color: var(--vscode-symbolIcon-enumeratorMemberForeground); }\n.monaco-editor .codicon.codicon-symbol-event,\n.monaco-workbench .codicon.codicon-symbol-event { color: var(--vscode-symbolIcon-eventForeground); }\n.monaco-editor .codicon.codicon-symbol-field,\n.monaco-workbench .codicon.codicon-symbol-field { color: var(--vscode-symbolIcon-fieldForeground); }\n.monaco-editor .codicon.codicon-symbol-file,\n.monaco-workbench .codicon.codicon-symbol-file { color: var(--vscode-symbolIcon-fileForeground); }\n.monaco-editor .codicon.codicon-symbol-folder,\n.monaco-workbench .codicon.codicon-symbol-folder { color: var(--vscode-symbolIcon-folderForeground); }\n.monaco-editor .codicon.codicon-symbol-function,\n.monaco-workbench .codicon.codicon-symbol-function { color: var(--vscode-symbolIcon-functionForeground); }\n.monaco-editor .codicon.codicon-symbol-interface,\n.monaco-workbench .codicon.codicon-symbol-interface { color: var(--vscode-symbolIcon-interfaceForeground); }\n.monaco-editor .codicon.codicon-symbol-key,\n.monaco-workbench .codicon.codicon-symbol-key { color: var(--vscode-symbolIcon-keyForeground); }\n.monaco-editor .codicon.codicon-symbol-keyword,\n.monaco-workbench .codicon.codicon-symbol-keyword { color: var(--vscode-symbolIcon-keywordForeground); }\n.monaco-editor .codicon.codicon-symbol-module,\n.monaco-workbench .codicon.codicon-symbol-module { color: var(--vscode-symbolIcon-moduleForeground); }\n.monaco-editor .codicon.codicon-symbol-namespace,\n.monaco-workbench .codicon.codicon-symbol-namespace { color: var(--vscode-symbolIcon-namespaceForeground); }\n.monaco-editor .codicon.codicon-symbol-null,\n.monaco-workbench .codicon.codicon-symbol-null { color: var(--vscode-symbolIcon-nullForeground); }\n.monaco-editor .codicon.codicon-symbol-number,\n.monaco-workbench .codicon.codicon-symbol-number { color: var(--vscode-symbolIcon-numberForeground); }\n.monaco-editor .codicon.codicon-symbol-object,\n.monaco-workbench .codicon.codicon-symbol-object { color: var(--vscode-symbolIcon-objectForeground); }\n.monaco-editor .codicon.codicon-symbol-operator,\n.monaco-workbench .codicon.codicon-symbol-operator { color: var(--vscode-symbolIcon-operatorForeground); }\n.monaco-editor .codicon.codicon-symbol-package,\n.monaco-workbench .codicon.codicon-symbol-package { color: var(--vscode-symbolIcon-packageForeground); }\n.monaco-editor .codicon.codicon-symbol-property,\n.monaco-workbench .codicon.codicon-symbol-property { color: var(--vscode-symbolIcon-propertyForeground); }\n.monaco-editor .codicon.codicon-symbol-reference,\n.monaco-workbench .codicon.codicon-symbol-reference { color: var(--vscode-symbolIcon-referenceForeground); }\n.monaco-editor .codicon.codicon-symbol-snippet,\n.monaco-workbench .codicon.codicon-symbol-snippet { color: var(--vscode-symbolIcon-snippetForeground); }\n.monaco-editor .codicon.codicon-symbol-string,\n.monaco-workbench .codicon.codicon-symbol-string { color: var(--vscode-symbolIcon-stringForeground); }\n.monaco-editor .codicon.codicon-symbol-struct,\n.monaco-workbench .codicon.codicon-symbol-struct { color: var(--vscode-symbolIcon-structForeground); }\n.monaco-editor .codicon.codicon-symbol-text,\n.monaco-workbench .codicon.codicon-symbol-text { color: var(--vscode-symbolIcon-textForeground); }\n.monaco-editor .codicon.codicon-symbol-type-parameter,\n.monaco-workbench .codicon.codicon-symbol-type-parameter { color: var(--vscode-symbolIcon-typeParameterForeground); }\n.monaco-editor .codicon.codicon-symbol-unit,\n.monaco-workbench .codicon.codicon-symbol-unit { color: var(--vscode-symbolIcon-unitForeground); }\n.monaco-editor .codicon.codicon-symbol-variable,\n.monaco-workbench .codicon.codicon-symbol-variable { color: var(--vscode-symbolIcon-variableForeground); }\n",""]);const a=r},1113:e=>{e.exports=function(e,t){if(t.styleSheet)t.styleSheet.cssText=e;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(e))}}},1177:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n.monaco-editor .detected-link,\n.monaco-editor .detected-link-active {\n\ttext-decoration: underline;\n\ttext-underline-position: under;\n}\n\n.monaco-editor .detected-link-active {\n\tcursor: pointer;\n\tcolor: var(--vscode-editorLink-activeForeground) !important;\n}\n",""]);const a=r},1366:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-inputbox {\n\tposition: relative;\n\tdisplay: block;\n\tpadding: 0;\n\tbox-sizing:\tborder-box;\n\tborder-radius: 2px;\n\n\t/* Customizable */\n\tfont-size: inherit;\n}\n\n.monaco-inputbox > .ibwrapper > .input,\n.monaco-inputbox > .ibwrapper > .mirror {\n\n\t/* Customizable */\n\tpadding: 4px 6px;\n}\n\n.monaco-inputbox > .ibwrapper {\n\tposition: relative;\n\twidth: 100%;\n}\n\n.monaco-inputbox > .ibwrapper > .input {\n\tdisplay: inline-block;\n\tbox-sizing:\tborder-box;\n\twidth: 100%;\n\theight: 100%;\n\tline-height: inherit;\n\tborder: none;\n\tfont-family: inherit;\n\tfont-size: inherit;\n\tresize: none;\n\tcolor: inherit;\n}\n\n.monaco-inputbox > .ibwrapper > input {\n\ttext-overflow: ellipsis;\n}\n\n.monaco-inputbox > .ibwrapper > textarea.input {\n\tdisplay: block;\n\tscrollbar-width: none; /* Firefox: hide scrollbars */\n\toutline: none;\n}\n\n.monaco-inputbox > .ibwrapper > textarea.input::-webkit-scrollbar {\n\tdisplay: none; /* Chrome + Safari: hide scrollbar */\n}\n\n.monaco-inputbox > .ibwrapper > textarea.input.empty {\n\twhite-space: nowrap;\n}\n\n.monaco-inputbox > .ibwrapper > .mirror {\n\tposition: absolute;\n\tdisplay: inline-block;\n\twidth: 100%;\n\ttop: 0;\n\tleft: 0;\n\tbox-sizing: border-box;\n\twhite-space: pre-wrap;\n\tvisibility: hidden;\n\tword-wrap: break-word;\n}\n\n/* Context view */\n\n.monaco-inputbox-container {\n\ttext-align: right;\n}\n\n.monaco-inputbox-container .monaco-inputbox-message {\n\tdisplay: inline-block;\n\toverflow: hidden;\n\ttext-align: left;\n\twidth: 100%;\n\tbox-sizing:\tborder-box;\n\tpadding: 0.4em;\n\tfont-size: 12px;\n\tline-height: 17px;\n\tmargin-top: -1px;\n\tword-wrap: break-word;\n}\n\n/* Action bar support */\n.monaco-inputbox .monaco-action-bar {\n\tposition: absolute;\n\tright: 2px;\n\ttop: 4px;\n}\n\n.monaco-inputbox .monaco-action-bar .action-item {\n\tmargin-left: 2px;\n}\n\n.monaco-inputbox .monaco-action-bar .action-item .codicon {\n\tbackground-repeat: no-repeat;\n\twidth: 16px;\n\theight: 16px;\n}\n",""]);const a=r},1446:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.quick-input-widget {\n\tfont-size: 13px;\n}\n\n.quick-input-widget .monaco-highlighted-label .highlight,\n.quick-input-widget .monaco-highlighted-label .highlight {\n\tcolor: #0066BF;\n}\n\n.vs .quick-input-widget .monaco-list-row.focused .monaco-highlighted-label .highlight,\n.vs .quick-input-widget .monaco-list-row.focused .monaco-highlighted-label .highlight {\n\tcolor: #9DDDFF;\n}\n\n.vs-dark .quick-input-widget .monaco-highlighted-label .highlight,\n.vs-dark .quick-input-widget .monaco-highlighted-label .highlight {\n\tcolor: #0097fb;\n}\n\n.hc-black .quick-input-widget .monaco-highlighted-label .highlight,\n.hc-black .quick-input-widget .monaco-highlighted-label .highlight {\n\tcolor: #F38518;\n}\n\n.hc-light .quick-input-widget .monaco-highlighted-label .highlight,\n.hc-light .quick-input-widget .monaco-highlighted-label .highlight {\n\tcolor: #0F4A85;\n}\n\n.monaco-keybinding > .monaco-keybinding-key {\n\tbackground-color: rgba(221, 221, 221, 0.4);\n\tborder: solid 1px rgba(204, 204, 204, 0.4);\n\tborder-bottom-color: rgba(187, 187, 187, 0.4);\n\tbox-shadow: inset 0 -1px 0 rgba(187, 187, 187, 0.4);\n\tcolor: #555;\n}\n\n.hc-black .monaco-keybinding > .monaco-keybinding-key {\n\tbackground-color: transparent;\n\tborder: solid 1px rgb(111, 195, 223);\n\tbox-shadow: none;\n\tcolor: #fff;\n}\n\n.hc-light .monaco-keybinding > .monaco-keybinding-key {\n\tbackground-color: transparent;\n\tborder: solid 1px #0F4A85;\n\tbox-shadow: none;\n\tcolor: #292929;\n}\n\n.vs-dark .monaco-keybinding > .monaco-keybinding-key {\n\tbackground-color: rgba(128, 128, 128, 0.17);\n\tborder: solid 1px rgba(51, 51, 51, 0.6);\n\tborder-bottom-color: rgba(68, 68, 68, 0.6);\n\tbox-shadow: inset 0 -1px 0 rgba(68, 68, 68, 0.6);\n\tcolor: #ccc;\n}\n",""]);const a=r},1469:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .monaco-decoration-css-rule-extractor {\n\tvisibility: hidden;\n\tpointer-events: none;\n}\n",""]);const a=r},1503:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .goto-definition-link {\n\ttext-decoration: underline;\n\tcursor: pointer;\n\tcolor: var(--vscode-editorLink-activeForeground) !important;\n}\n",""]);const a=r},1601:e=>{e.exports=function(e){return e[1]}},1637:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .view-ruler {\n\tposition: absolute;\n\ttop: 0;\n\tbox-shadow: 1px 0 0 0 var(--vscode-editorRuler-foreground) inset;\n}\n",""]);const a=r},1684:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-count-badge {\n\tpadding: 3px 6px;\n\tborder-radius: 11px;\n\tfont-size: 11px;\n\tmin-width: 18px;\n\tmin-height: 18px;\n\tline-height: 11px;\n\tfont-weight: normal;\n\ttext-align: center;\n\tdisplay: inline-block;\n\tbox-sizing: border-box;\n}\n\n.monaco-count-badge.long {\n\tpadding: 2px 3px;\n\tborder-radius: 2px;\n\tmin-height: auto;\n\tline-height: normal;\n}\n",""]);const a=r},1727:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .codelens-decoration {\n\toverflow: hidden;\n\tdisplay: inline-flex !important; /* !important to override inline display:block style */\n\talign-items: center;\n\ttext-overflow: ellipsis;\n\twhite-space: nowrap;\n\tcolor: var(--vscode-editorCodeLens-foreground);\n\tline-height: var(--vscode-editorCodeLens-lineHeight);\n\tfont-size: var(--vscode-editorCodeLens-fontSize);\n\tpadding-right: calc(var(--vscode-editorCodeLens-fontSize)*0.5);\n\tfont-feature-settings: var(--vscode-editorCodeLens-fontFeatureSettings);\n\tfont-family: var(--vscode-editorCodeLens-fontFamily), var(--vscode-editorCodeLens-fontFamilyDefault);\n}\n\n.monaco-editor .codelens-decoration > span,\n.monaco-editor .codelens-decoration > a {\n\tuser-select: none;\n\t-webkit-user-select: none;\n\twhite-space: nowrap;\n\tvertical-align: sub;\n\tdisplay: inline-flex;\n\talign-items: center;\n}\n\n.monaco-editor .codelens-decoration > a {\n\ttext-decoration: none;\n}\n\n.monaco-editor .codelens-decoration > a:hover {\n\tcursor: pointer;\n\tcolor: var(--vscode-editorLink-activeForeground) !important;\n}\n\n.monaco-editor .codelens-decoration > a:hover .codicon {\n\tcolor: var(--vscode-editorLink-activeForeground) !important;\n}\n\n.monaco-editor .codelens-decoration .codicon[class*='codicon-'] {\n\tvertical-align: middle;\n\tcolor: currentColor !important;\n\tcolor: var(--vscode-editorCodeLens-foreground);\n\tline-height: var(--vscode-editorCodeLens-lineHeight);\n\tfont-size: var(--vscode-editorCodeLens-fontSize);\n}\n\n\n.monaco-editor .codelens-decoration > a:hover .codicon::before {\n\tcursor: pointer;\n}\n\n@keyframes fadein {\n\t0% { opacity: 0;}\n\t100% { opacity: 1;}\n}\n\n.monaco-editor .codelens-decoration.fadein {\n\tanimation: fadein 0.1s linear;\n}\n",""]);const a=r},1788:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/* marker zone */\n\n.monaco-editor .peekview-widget .head .peekview-title .severity-icon {\n\tdisplay: inline-block;\n\tvertical-align: text-top;\n\tmargin-right: 4px;\n}\n\n.monaco-editor .marker-widget {\n\ttext-overflow: ellipsis;\n\twhite-space: nowrap;\n}\n\n.monaco-editor .marker-widget > .stale {\n\topacity: 0.6;\n\tfont-style: italic;\n}\n\n.monaco-editor .marker-widget .title {\n\tdisplay: inline-block;\n\tpadding-right: 5px;\n}\n\n.monaco-editor .marker-widget .descriptioncontainer {\n\tposition: absolute;\n\twhite-space: pre;\n\tuser-select: text;\n\t-webkit-user-select: text;\n\tpadding: 8px 12px 0 20px;\n}\n\n.monaco-editor .marker-widget .descriptioncontainer .message {\n\tdisplay: flex;\n\tflex-direction: column;\n}\n\n.monaco-editor .marker-widget .descriptioncontainer .message .details {\n\tpadding-left: 6px;\n}\n\n.monaco-editor .marker-widget .descriptioncontainer .message .source,\n.monaco-editor .marker-widget .descriptioncontainer .message span.code {\n\topacity: 0.6;\n}\n\n.monaco-editor .marker-widget .descriptioncontainer .message a.code-link {\n\topacity: 0.6;\n\tcolor: inherit;\n}\n\n.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:before {\n\tcontent: '(';\n}\n\n.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:after {\n\tcontent: ')';\n}\n\n.monaco-editor .marker-widget .descriptioncontainer .message a.code-link > span {\n\ttext-decoration: underline;\n\t/** Hack to force underline to show **/\n\tborder-bottom: 1px solid transparent;\n\ttext-underline-position: under;\n\tcolor: var(--vscode-textLink-activeForeground);\n}\n\n.monaco-editor .marker-widget .descriptioncontainer .filename {\n\tcursor: pointer;\n\tcolor: var(--vscode-textLink-activeForeground);\n}\n",""]);const a=r},1921:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .diff-hidden-lines-widget {\n\twidth: 100%;\n}\n\n.monaco-editor .diff-hidden-lines {\n\theight: 0px; /* The children each have a fixed height, the transform confuses the browser */\n\ttransform: translate(0px, -10px);\n\tfont-size: 13px;\n\tline-height: 14px;\n}\n\n.monaco-editor .diff-hidden-lines:not(.dragging) .top:hover,\n.monaco-editor .diff-hidden-lines:not(.dragging) .bottom:hover,\n.monaco-editor .diff-hidden-lines .top.dragging,\n.monaco-editor .diff-hidden-lines .bottom.dragging {\n\tbackground-color: var(--vscode-focusBorder);\n}\n\n.monaco-editor .diff-hidden-lines .top,\n.monaco-editor .diff-hidden-lines .bottom {\n\ttransition: background-color 0.1s ease-out;\n\theight: 4px;\n\tbackground-color: transparent;\n\tbackground-clip: padding-box;\n\tborder-bottom: 2px solid transparent;\n\tborder-top: 4px solid transparent;\n\t/*cursor: n-resize;*/\n}\n\n.monaco-editor.draggingUnchangedRegion.canMoveTop:not(.canMoveBottom) *,\n.monaco-editor .diff-hidden-lines .top.canMoveTop:not(.canMoveBottom),\n.monaco-editor .diff-hidden-lines .bottom.canMoveTop:not(.canMoveBottom) {\n\tcursor: n-resize !important;\n}\n\n.monaco-editor.draggingUnchangedRegion:not(.canMoveTop).canMoveBottom *,\n.monaco-editor .diff-hidden-lines .top:not(.canMoveTop).canMoveBottom,\n.monaco-editor .diff-hidden-lines .bottom:not(.canMoveTop).canMoveBottom {\n\tcursor: s-resize !important;\n}\n\n.monaco-editor.draggingUnchangedRegion.canMoveTop.canMoveBottom *,\n.monaco-editor .diff-hidden-lines .top.canMoveTop.canMoveBottom,\n.monaco-editor .diff-hidden-lines .bottom.canMoveTop.canMoveBottom {\n\tcursor: ns-resize !important;\n}\n\n.monaco-editor .diff-hidden-lines .top {\n\ttransform: translate(0px, 4px);\n}\n\n.monaco-editor .diff-hidden-lines .bottom {\n\ttransform: translate(0px, -6px);\n}\n\n.monaco-editor .diff-unchanged-lines {\n\tbackground: var(--vscode-diffEditor-unchangedCodeBackground);\n}\n\n.monaco-editor .noModificationsOverlay {\n\tz-index: 1;\n\tbackground: var(--vscode-editor-background);\n\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-items: center;\n}\n\n\n.monaco-editor .diff-hidden-lines .center {\n\tbackground: var(--vscode-diffEditor-unchangedRegionBackground);\n\tcolor: var(--vscode-diffEditor-unchangedRegionForeground);\n\toverflow: hidden;\n\tdisplay: block;\n\ttext-overflow: ellipsis;\n\twhite-space: nowrap;\n\n\theight: 24px;\n\tbox-shadow: inset 0 -5px 5px -7px var(--vscode-diffEditor-unchangedRegionShadow), inset 0 5px 5px -7px var(--vscode-diffEditor-unchangedRegionShadow);\n}\n\n.monaco-editor .diff-hidden-lines .center span.codicon {\n\tvertical-align: middle;\n}\n\n.monaco-editor .diff-hidden-lines .center a:hover .codicon {\n\tcursor: pointer;\n\tcolor: var(--vscode-editorLink-activeForeground) !important;\n}\n\n.monaco-editor .diff-hidden-lines div.breadcrumb-item {\n\tcursor: pointer;\n}\n\n.monaco-editor .diff-hidden-lines div.breadcrumb-item:hover {\n\tcolor: var(--vscode-editorLink-activeForeground);\n}\n\n.monaco-editor .movedOriginal {\n\tborder: 2px solid var(--vscode-diffEditor-move-border);\n}\n\n.monaco-editor .movedModified {\n\tborder: 2px solid var(--vscode-diffEditor-move-border);\n}\n\n.monaco-editor .movedOriginal.currentMove, .monaco-editor .movedModified.currentMove {\n\tborder: 2px solid var(--vscode-diffEditor-moveActive-border);\n}\n\n.monaco-diff-editor .moved-blocks-lines path.currentMove {\n\tstroke: var(--vscode-diffEditor-moveActive-border);\n}\n\n.monaco-diff-editor .moved-blocks-lines path {\n\tpointer-events: visiblestroke;\n}\n\n.monaco-diff-editor .moved-blocks-lines .arrow {\n\tfill: var(--vscode-diffEditor-move-border);\n}\n\n.monaco-diff-editor .moved-blocks-lines .arrow.currentMove {\n\tfill: var(--vscode-diffEditor-moveActive-border);\n}\n\n.monaco-diff-editor .moved-blocks-lines .arrow-rectangle {\n\tfill: var(--vscode-editor-background);\n}\n\n.monaco-diff-editor .moved-blocks-lines {\n\tposition: absolute;\n\tpointer-events: none;\n}\n\n.monaco-diff-editor .moved-blocks-lines path {\n\tfill: none;\n\tstroke: var(--vscode-diffEditor-move-border);\n\tstroke-width: 2;\n}\n\n.monaco-editor .char-delete.diff-range-empty {\n\tmargin-left: -1px;\n\tborder-left: solid var(--vscode-diffEditor-removedTextBackground) 3px;\n}\n\n.monaco-editor .char-insert.diff-range-empty {\n\tborder-left: solid var(--vscode-diffEditor-insertedTextBackground) 3px;\n}\n\n.monaco-editor .fold-unchanged {\n\tcursor: pointer;\n}\n\n.monaco-diff-editor .diff-moved-code-block {\n\tdisplay: flex;\n\tjustify-content: flex-end;\n\tmargin-top: -4px;\n}\n\n.monaco-diff-editor .diff-moved-code-block .action-bar .action-label.codicon {\n\twidth: 12px;\n\theight: 12px;\n\tfont-size: 12px;\n}\n\n/* ---------- DiffEditor ---------- */\n\n.monaco-diff-editor .diffOverview {\n\tz-index: 9;\n}\n\n.monaco-diff-editor .diffOverview .diffViewport {\n\tz-index: 10;\n}\n\n/* colors not externalized: using transparancy on background */\n.monaco-diff-editor.vs\t\t\t.diffOverview { background: rgba(0, 0, 0, 0.03); }\n.monaco-diff-editor.vs-dark\t\t.diffOverview { background: rgba(255, 255, 255, 0.01); }\n\n.monaco-scrollable-element.modified-in-monaco-diff-editor.vs\t\t.scrollbar { background: rgba(0,0,0,0); }\n.monaco-scrollable-element.modified-in-monaco-diff-editor.vs-dark\t.scrollbar { background: rgba(0,0,0,0); }\n.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-black\t.scrollbar { background: none; }\n.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-light\t.scrollbar { background: none; }\n\n.monaco-scrollable-element.modified-in-monaco-diff-editor .slider {\n\tz-index: 10;\n}\n.modified-in-monaco-diff-editor\t\t\t\t.slider.active { background: rgba(171, 171, 171, .4); }\n.modified-in-monaco-diff-editor.hc-black\t.slider.active { background: none; }\n.modified-in-monaco-diff-editor.hc-light\t.slider.active { background: none; }\n\n/* ---------- Diff ---------- */\n\n.monaco-editor .insert-sign,\n.monaco-diff-editor .insert-sign,\n.monaco-editor .delete-sign,\n.monaco-diff-editor .delete-sign {\n\tfont-size: 11px !important;\n\topacity: 0.7 !important;\n\tdisplay: flex !important;\n\talign-items: center;\n}\n.monaco-editor.hc-black .insert-sign,\n.monaco-diff-editor.hc-black .insert-sign,\n.monaco-editor.hc-black .delete-sign,\n.monaco-diff-editor.hc-black .delete-sign,\n.monaco-editor.hc-light .insert-sign,\n.monaco-diff-editor.hc-light .insert-sign,\n.monaco-editor.hc-light .delete-sign,\n.monaco-diff-editor.hc-light .delete-sign {\n\topacity: 1;\n}\n\n.monaco-editor .inline-deleted-margin-view-zone {\n\ttext-align: right;\n}\n.monaco-editor .inline-added-margin-view-zone {\n\ttext-align: right;\n}\n\n.monaco-editor .arrow-revert-change {\n\tz-index: 10;\n\tposition: absolute;\n}\n\n.monaco-editor .arrow-revert-change:hover {\n\tcursor: pointer;\n}\n\n/* ---------- Inline Diff ---------- */\n\n.monaco-editor .view-zones .view-lines .view-line span {\n\tdisplay: inline-block;\n}\n\n.monaco-editor .margin-view-zones .lightbulb-glyph:hover {\n\tcursor: pointer;\n}\n\n.monaco-editor .char-insert, .monaco-diff-editor .char-insert {\n\tbackground-color: var(--vscode-diffEditor-insertedTextBackground);\n}\n\n.monaco-editor .line-insert, .monaco-diff-editor .line-insert {\n\tbackground-color: var(--vscode-diffEditor-insertedLineBackground, var(--vscode-diffEditor-insertedTextBackground));\n}\n\n.monaco-editor .line-insert,\n.monaco-editor .char-insert {\n\tbox-sizing: border-box;\n\tborder: 1px solid var(--vscode-diffEditor-insertedTextBorder);\n}\n.monaco-editor.hc-black .line-insert, .monaco-editor.hc-light .line-insert,\n.monaco-editor.hc-black .char-insert, .monaco-editor.hc-light .char-insert {\n\tborder-style: dashed;\n}\n\n.monaco-editor .line-delete,\n.monaco-editor .char-delete {\n\tbox-sizing: border-box;\n\tborder: 1px solid var(--vscode-diffEditor-removedTextBorder);\n}\n.monaco-editor.hc-black .line-delete, .monaco-editor.hc-light .line-delete,\n.monaco-editor.hc-black .char-delete, .monaco-editor.hc-light .char-delete {\n\tborder-style: dashed;\n}\n\n.monaco-editor .inline-added-margin-view-zone,\n.monaco-editor .gutter-insert, .monaco-diff-editor .gutter-insert {\n\tbackground-color: var(--vscode-diffEditorGutter-insertedLineBackground, var(--vscode-diffEditor-insertedLineBackground), var(--vscode-diffEditor-insertedTextBackground));\n}\n\n.monaco-editor .char-delete, .monaco-diff-editor .char-delete, .monaco-editor .inline-deleted-text {\n\tbackground-color: var(--vscode-diffEditor-removedTextBackground);\n}\n\n.monaco-editor .inline-deleted-text {\n\ttext-decoration: line-through;\n}\n\n.monaco-editor .line-delete, .monaco-diff-editor .line-delete {\n\tbackground-color: var(--vscode-diffEditor-removedLineBackground, var(--vscode-diffEditor-removedTextBackground));\n}\n\n.monaco-editor .inline-deleted-margin-view-zone,\n.monaco-editor .gutter-delete, .monaco-diff-editor .gutter-delete {\n\tbackground-color: var(--vscode-diffEditorGutter-removedLineBackground, var(--vscode-diffEditor-removedLineBackground), var(--vscode-diffEditor-removedTextBackground));\n}\n\n.monaco-diff-editor.side-by-side .editor.modified {\n\tbox-shadow: -6px 0 5px -5px var(--vscode-scrollbar-shadow);\n\tborder-left: 1px solid var(--vscode-diffEditor-border);\n}\n\n.monaco-diff-editor.side-by-side .editor.original {\n\tbox-shadow: 6px 0 5px -5px var(--vscode-scrollbar-shadow);\n\tborder-right: 1px solid var(--vscode-diffEditor-border);\n}\n\n.monaco-diff-editor .diffViewport {\n\tbackground: var(--vscode-scrollbarSlider-background);\n}\n\n.monaco-diff-editor .diffViewport:hover {\n\tbackground: var(--vscode-scrollbarSlider-hoverBackground);\n}\n\n.monaco-diff-editor .diffViewport:active {\n\tbackground: var(--vscode-scrollbarSlider-activeBackground);\n}\n\n.monaco-editor .diagonal-fill {\n\tbackground-image: linear-gradient(\n\t\t-45deg,\n\t\tvar(--vscode-diffEditor-diagonalFill) 12.5%,\n\t\t#0000 12.5%, #0000 50%,\n\t\tvar(--vscode-diffEditor-diagonalFill) 50%, var(--vscode-diffEditor-diagonalFill) 62.5%,\n\t\t#0000 62.5%, #0000 100%\n\t);\n\tbackground-size: 8px 8px;\n}\n\n.monaco-diff-editor .gutter {\n\tposition: relative;\n\toverflow: hidden;\n\tflex-shrink: 0;\n\tflex-grow: 0;\n\n\t& > div {\n\t\tposition: absolute;\n\t}\n\n\t.gutterItem {\n\t\topacity: 0;\n\t\ttransition: opacity 0.7s;\n\n\t\t&.showAlways {\n\t\t\topacity: 1;\n\t\t\ttransition: none;\n\t\t}\n\n\t\t&.noTransition {\n\t\t\ttransition: none;\n\t\t}\n\t}\n\n\t&:hover .gutterItem {\n\t\topacity: 1;\n\t\ttransition: opacity 0.1s ease-in-out;\n\t}\n\n\t.gutterItem {\n\t\t.background {\n\t\t\tposition: absolute;\n\t\t\theight: 100%;\n\t\t\tleft: 50%;\n\t\t\twidth: 1px;\n\n\t\t\tborder-left: 2px var(--vscode-menu-separatorBackground) solid;\n\t\t}\n\n\t\t.buttons {\n\t\t\tposition: absolute;\n\t\t\t/*height: 100%;*/\n\t\t\twidth: 100%;\n\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: center;\n\t\t\talign-items: center;\n\n\t\t\t.monaco-toolbar {\n\t\t\t\theight: fit-content;\n\t\t\t\t.monaco-action-bar {\n\t\t\t\t\tline-height: 1;\n\n\t\t\t\t\t.actions-container {\n\t\t\t\t\t\twidth: fit-content;\n\t\t\t\t\t\tborder-radius: 4px;\n\t\t\t\t\t\tbackground: var(--vscode-editorGutter-itemBackground);\n\n\t\t\t\t\t\t.action-item {\n\t\t\t\t\t\t\t&:hover {\n\t\t\t\t\t\t\t\tbackground: var(--vscode-toolbar-hoverBackground);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t.action-label {\n\t\t\t\t\t\t\t\tcolor: var(--vscode-editorGutter-itemGlyphForeground);\n\t\t\t\t\t\t\t\tpadding: 1px 2px;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\n\n.monaco-diff-editor .diff-hidden-lines-compact {\n\tdisplay: flex;\n\theight: 11px;\n\t.line-left, .line-right {\n\t\theight: 1px;\n\t\tborder-top: 1px solid;\n\t\tborder-color: var(--vscode-editorCodeLens-foreground);\n\t\topacity: 0.5;\n\t\tmargin: auto;\n\t\twidth: 100%;\n\t}\n\n\t.line-left {\n\t\twidth: 20px;\n\t}\n\n\t.text {\n\t\tcolor: var(--vscode-editorCodeLens-foreground);\n\t\ttext-wrap: nowrap;\n\t\tfont-size: 11px;\n\t\tline-height: 11px;\n\t\tmargin: 0 4px;\n\t}\n}\n",""]);const a=r},1963:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,'/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-tl-row {\n\tdisplay: flex;\n\theight: 100%;\n\talign-items: center;\n\tposition: relative;\n}\n\n.monaco-tl-row.disabled {\n\tcursor: default;\n}\n.monaco-tl-indent {\n\theight: 100%;\n\tposition: absolute;\n\ttop: 0;\n\tleft: 16px;\n\tpointer-events: none;\n}\n\n.hide-arrows .monaco-tl-indent {\n\tleft: 12px;\n}\n\n.monaco-tl-indent > .indent-guide {\n\tdisplay: inline-block;\n\tbox-sizing: border-box;\n\theight: 100%;\n\tborder-left: 1px solid transparent;\n\topacity: 0;\n}\n\n.monaco-workbench:not(.reduce-motion) .monaco-tl-indent > .indent-guide {\n\ttransition: opacity 0.1s linear;\n}\n\n.monaco-tl-twistie,\n.monaco-tl-contents {\n\theight: 100%;\n}\n\n.monaco-tl-twistie {\n\tfont-size: 10px;\n\ttext-align: right;\n\tpadding-right: 6px;\n\tflex-shrink: 0;\n\twidth: 16px;\n\tdisplay: flex !important;\n\talign-items: center;\n\tjustify-content: center;\n\ttransform: translateX(3px);\n}\n\n.monaco-tl-contents {\n\tflex: 1;\n\toverflow: hidden;\n}\n\n.monaco-tl-twistie::before {\n\tborder-radius: 20px;\n}\n\n.monaco-tl-twistie.collapsed::before {\n\ttransform: rotate(-90deg);\n}\n\n.monaco-tl-twistie.codicon-tree-item-loading::before {\n\t/* Use steps to throttle FPS to reduce CPU usage */\n\tanimation: codicon-spin 1.25s steps(30) infinite;\n}\n\n.monaco-tree-type-filter {\n\tposition: absolute;\n\ttop: 0;\n\tright: 0;\n\tdisplay: flex;\n\tpadding: 3px;\n\tmax-width: 200px;\n\tz-index: 100;\n\tmargin: 0 10px 0 6px;\n\tborder: 1px solid var(--vscode-widget-border);\n\tborder-bottom-left-radius: 4px;\n\tborder-bottom-right-radius: 4px;\n}\n\n.monaco-workbench:not(.reduce-motion) .monaco-tree-type-filter {\n\ttransition: top 0.3s;\n}\n\n.monaco-tree-type-filter.disabled {\n\ttop: -40px !important;\n}\n\n.monaco-tree-type-filter-input {\n\tflex: 1;\n}\n\n.monaco-tree-type-filter-input .monaco-inputbox {\n\theight: 23px;\n}\n\n.monaco-tree-type-filter-input .monaco-inputbox > .ibwrapper > .input,\n.monaco-tree-type-filter-input .monaco-inputbox > .ibwrapper > .mirror {\n\tpadding: 2px 4px;\n}\n\n.monaco-tree-type-filter-input .monaco-findInput > .controls {\n\ttop: 2px;\n}\n\n.monaco-tree-type-filter-actionbar {\n\tmargin-left: 4px;\n}\n\n.monaco-tree-type-filter-actionbar .monaco-action-bar .action-label {\n\tpadding: 2px;\n}\n\n.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container{\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\twidth: 100%;\n\theight: 0;\n\tz-index: 13; /* Settings editor uses z-index: 12 */\n\n\t/* Backup color in case the tree does not provide the background color */\n\tbackground-color: var(--vscode-sideBar-background);\n}\n\n.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row.monaco-list-row{\n\tposition: absolute;\n\twidth: 100%;\n\topacity: 1 !important; /* Settings editor uses opacity < 1 */\n\toverflow: hidden;\n\n\t/* Backup color in case the tree does not provide the background color */\n\tbackground-color: var(--vscode-sideBar-background);\n}\n\n.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row:hover{\n\tbackground-color: var(--vscode-list-hoverBackground) !important;\n\tcursor: pointer;\n}\n\n.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container.empty,\n.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container.empty .monaco-tree-sticky-container-shadow {\n\tdisplay: none;\n}\n\n.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-container-shadow {\n\tposition: absolute;\n\tbottom: -3px;\n\tleft: 0px;\n\theight: 0px; /* heigt is 3px and only set when there is a treeStickyScrollShadow color */\n\twidth: 100%;\n}\n\n.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container[tabindex="0"]:focus{\n\toutline: none;\n}\n',""]);const a=r},2035:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .blockDecorations-container {\n\tposition: absolute;\n\ttop: 0;\n\tpointer-events: none;\n}\n\n.monaco-editor .blockDecorations-block {\n\tposition: absolute;\n\tbox-sizing: border-box;\n}\n",""]);const a=r},2171:(e,t,i)=>{i.d(t,{A:()=>u});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s),a=i(4417),l=i.n(a),d=new URL(i(6499),i.b),c=r()(o()),h=l()(d);c.push([e.id,`/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n@font-face {\n\tfont-family: "codicon";\n\tfont-display: block;\n\tsrc: url(${h}) format("truetype");\n}\n\n.codicon[class*='codicon-'] {\n\tfont: normal normal normal 16px/1 codicon;\n\tdisplay: inline-block;\n\ttext-decoration: none;\n\ttext-rendering: auto;\n\ttext-align: center;\n\ttext-transform: none;\n\t-webkit-font-smoothing: antialiased;\n\t-moz-osx-font-smoothing: grayscale;\n\tuser-select: none;\n\t-webkit-user-select: none;\n}\n\n/* icon rules are dynamically created by the platform theme service (see iconsStyleSheet.ts) */\n`,""]);const u=c},2180:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-diff-editor .diff-review {\n\tposition: absolute;\n\n}\n\n.monaco-component.diff-review {\n\tuser-select: none;\n\t-webkit-user-select: none;\n\tz-index: 99;\n\n\n\t.diff-review-line-number {\n\t\ttext-align: right;\n\t\tdisplay: inline-block;\n\t\tcolor: var(--vscode-editorLineNumber-foreground);\n\t}\n\n\t.diff-review-summary {\n\t\tpadding-left: 10px;\n\t}\n\n\t.diff-review-shadow {\n\t\tposition: absolute;\n\t\tbox-shadow: var(--vscode-scrollbar-shadow) 0 -6px 6px -6px inset;\n\t}\n\n\t.diff-review-row {\n\t\twhite-space: pre;\n\t}\n\n\t.diff-review-table {\n\t\tdisplay: table;\n\t\tmin-width: 100%;\n\t}\n\n\t.diff-review-row {\n\t\tdisplay: table-row;\n\t\twidth: 100%;\n\t}\n\n\t.diff-review-spacer {\n\t\tdisplay: inline-block;\n\t\twidth: 10px;\n\t\tvertical-align: middle;\n\t}\n\n\t.diff-review-spacer > .codicon {\n\t\tfont-size: 9px !important;\n\t}\n\n\t.diff-review-actions {\n\t\tdisplay: inline-block;\n\t\tposition: absolute;\n\t\tright: 10px;\n\t\ttop: 2px;\n\t\tz-index: 100;\n\t}\n\n\t.diff-review-actions .action-label {\n\t\twidth: 16px;\n\t\theight: 16px;\n\t\tmargin: 2px 0;\n\t}\n\n\t.revertButton {\n\t\tcursor: pointer;\n\t}\n\n\t.action-label {\n\t\tbackground: var(--vscode-editorActionList-background);\n\t}\n}\n",""]);const a=r},2289:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n.monaco-editor .cursors-layer {\n\tposition: absolute;\n\ttop: 0;\n}\n\n.monaco-editor .cursors-layer > .cursor {\n\tposition: absolute;\n\toverflow: hidden;\n\tbox-sizing: border-box;\n}\n\n/* -- smooth-caret-animation -- */\n.monaco-editor .cursors-layer.cursor-smooth-caret-animation > .cursor {\n\ttransition: all 80ms;\n}\n\n/* -- block-outline-style -- */\n.monaco-editor .cursors-layer.cursor-block-outline-style > .cursor {\n\tbackground: transparent !important;\n\tborder-style: solid;\n\tborder-width: 1px;\n}\n\n/* -- underline-style -- */\n.monaco-editor .cursors-layer.cursor-underline-style > .cursor {\n\tborder-bottom-width: 2px;\n\tborder-bottom-style: solid;\n\tbackground: transparent !important;\n}\n\n/* -- underline-thin-style -- */\n.monaco-editor .cursors-layer.cursor-underline-thin-style > .cursor {\n\tborder-bottom-width: 1px;\n\tborder-bottom-style: solid;\n\tbackground: transparent !important;\n}\n\n@keyframes monaco-cursor-smooth {\n\t0%,\n\t20% {\n\t\topacity: 1;\n\t}\n\t60%,\n\t100% {\n\t\topacity: 0;\n\t}\n}\n\n@keyframes monaco-cursor-phase {\n\t0%,\n\t20% {\n\t\topacity: 1;\n\t}\n\t90%,\n\t100% {\n\t\topacity: 0;\n\t}\n}\n\n@keyframes monaco-cursor-expand {\n\t0%,\n\t20% {\n\t\ttransform: scaleY(1);\n\t}\n\t80%,\n\t100% {\n\t\ttransform: scaleY(0);\n\t}\n}\n\n.cursor-smooth {\n\tanimation: monaco-cursor-smooth 0.5s ease-in-out 0s 20 alternate;\n}\n\n.cursor-phase {\n\tanimation: monaco-cursor-phase 0.5s ease-in-out 0s 20 alternate;\n}\n\n.cursor-expand > .cursor {\n\tanimation: monaco-cursor-expand 0.5s ease-in-out 0s 20 alternate;\n}\n",""]);const a=r},2516:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-custom-toggle {\n\tmargin-left: 2px;\n\tfloat: left;\n\tcursor: pointer;\n\toverflow: hidden;\n\twidth: 20px;\n\theight: 20px;\n\tborder-radius: 3px;\n\tborder: 1px solid transparent;\n\tpadding: 1px;\n\tbox-sizing:\tborder-box;\n\tuser-select: none;\n\t-webkit-user-select: none;\n}\n\n.monaco-custom-toggle:hover {\n\tbackground-color: var(--vscode-inputOption-hoverBackground);\n}\n\n.hc-black .monaco-custom-toggle:hover,\n.hc-light .monaco-custom-toggle:hover {\n\tborder: 1px dashed var(--vscode-focusBorder);\n}\n\n.hc-black .monaco-custom-toggle,\n.hc-light .monaco-custom-toggle {\n\tbackground: none;\n}\n\n.hc-black .monaco-custom-toggle:hover,\n.hc-light .monaco-custom-toggle:hover {\n\tbackground: none;\n}\n\n.monaco-custom-toggle.monaco-checkbox {\n\theight: 18px;\n\twidth: 18px;\n\tborder: 1px solid transparent;\n\tborder-radius: 3px;\n\tmargin-right: 9px;\n\tmargin-left: 0px;\n\tpadding: 0px;\n\topacity: 1;\n\tbackground-size: 16px !important;\n}\n\n.monaco-action-bar .checkbox-action-item {\n\tdisplay: flex;\n\talign-items: center;\n\tborder-radius: 2px;\n\tpadding-right: 2px;\n}\n\n.monaco-action-bar .checkbox-action-item:hover {\n\tbackground-color: var(--vscode-toolbar-hoverBackground);\n}\n\n.monaco-action-bar .checkbox-action-item > .monaco-custom-toggle.monaco-checkbox {\n\tmargin-right: 4px;\n}\n\n.monaco-action-bar .checkbox-action-item > .checkbox-label {\n\tfont-size: 12px;\n}\n",""]);const a=r},2561:e=>{e.exports='data:image/svg+xml;utf8,%3Csvg viewBox="0 0 24 24" display="inline-block" height="1em" width="1em" vertical-align="text-bottom" xmlns="http://www.w3.org/2000/svg" %3E%3Cpath fill="currentColor" d="M12 3.7c4.6 0 8.3 3.7 8.3 8.3s-3.7 8.3-8.3 8.3-8.3-3.7-8.3-8.3S7.4 3.7 12 3.7z"/%3E%3C/svg%3E'},2699:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .native-edit-context {\n\tmargin: 0;\n\tpadding: 0;\n\tposition: absolute;\n\toverflow-y: scroll;\n\tscrollbar-width: none;\n\tz-index: -10;\n\twhite-space: pre-wrap;\n}\n\n.monaco-editor .ime-text-area {\n\tmin-width: 0;\n\tmin-height: 0;\n\tmargin: 0;\n\tpadding: 0;\n\tposition: absolute;\n\toutline: none !important;\n\tresize: none;\n\tborder: none;\n\toverflow: hidden;\n\tcolor: transparent;\n\tbackground-color: transparent;\n\tz-index: -10;\n}\n\n.monaco-editor .edit-context-composition-none {\n\tbackground-color: transparent;\n\tborder-bottom: none;\n}\n\n.monaco-editor :not(.hc-black, .hc-light) .edit-context-composition-secondary {\n\tborder-bottom: 1px solid var(--vscode-editor-compositionBorder);\n}\n\n.monaco-editor :not(.hc-black, .hc-light) .edit-context-composition-primary {\n\tborder-bottom: 2px solid var(--vscode-editor-compositionBorder);\n}\n\n.monaco-editor :is(.hc-black, .hc-light) .edit-context-composition-secondary {\n\tborder: 1px solid var(--vscode-editor-compositionBorder);\n}\n\n.monaco-editor :is(.hc-black, .hc-light) .edit-context-composition-primary {\n\tborder: 2px solid var(--vscode-editor-compositionBorder);\n}\n",""]);const a=r},2755:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .selection-anchor {\n\tbackground-color: #007ACC;\n\twidth: 2px !important;\n}\n",""]);const a=r},2889:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n.monaco-editor .zone-widget {\n\tposition: absolute;\n\tz-index: 10;\n}\n\n\n.monaco-editor .zone-widget .zone-widget-container {\n\tborder-top-style: solid;\n\tborder-bottom-style: solid;\n\tborder-top-width: 0;\n\tborder-bottom-width: 0;\n\tposition: relative;\n}\n",""]);const a=r},2931:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .tokens-inspect-widget {\n\tz-index: 50;\n\tuser-select: text;\n\t-webkit-user-select: text;\n\tpadding: 10px;\n\tcolor: var(--vscode-editorHoverWidget-foreground);\n\tbackground-color: var(--vscode-editorHoverWidget-background);\n\tborder: 1px solid var(--vscode-editorHoverWidget-border);\n}\n.monaco-editor.hc-black .tokens-inspect-widget, .monaco-editor.hc-light .tokens-inspect-widget {\n\tborder-width: 2px;\n}\n\n.monaco-editor .tokens-inspect-widget .tokens-inspect-separator {\n\theight: 1px;\n\tborder: 0;\n\tbackground-color: var(--vscode-editorHoverWidget-border);\n}\n\n.monaco-editor .tokens-inspect-widget .tm-token {\n\tfont-family: var(--monaco-monospace-font);\n}\n\n.monaco-editor .tokens-inspect-widget .tm-token-length {\n\tfont-weight: normal;\n\tfont-size: 60%;\n\tfloat: right;\n}\n\n.monaco-editor .tokens-inspect-widget .tm-metadata-table {\n\twidth: 100%;\n}\n\n.monaco-editor .tokens-inspect-widget .tm-metadata-value {\n\tfont-family: var(--monaco-monospace-font);\n\ttext-align: right;\n}\n\n.monaco-editor .tokens-inspect-widget .tm-token-type {\n\tfont-family: var(--monaco-monospace-font);\n}\n",""]);const a=r},3093:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/*\n\tKeeping name short for faster parsing.\n\tcdr = core decorations rendering (div)\n*/\n.monaco-editor .lines-content .cdr {\n\tposition: absolute;\n\theight: 100%;\n}\n",""]);const a=r},3113:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/* Uncomment to see lines flashing when they're painted */\n/*.monaco-editor .view-lines > .view-line {\n\tbackground-color: none;\n\tanimation-name: flash-background;\n\tanimation-duration: 800ms;\n}\n@keyframes flash-background {\n\t0% { background-color: lightgreen; }\n\t100% { background-color: none }\n}*/\n\n.mtkcontrol {\n\tcolor: rgb(255, 255, 255) !important;\n\tbackground: rgb(150, 0, 0) !important;\n}\n\n.mtkoverflow {\n\tbackground-color: var(--vscode-button-background, var(--vscode-editor-background));\n\tcolor: var(--vscode-button-foreground, var(--vscode-editor-foreground));\n\tborder-width: 1px;\n\tborder-style: solid;\n\tborder-color: var(--vscode-contrastBorder);\n\tborder-radius: 2px;\n\tpadding: 4px;\n\tcursor: pointer;\n}\n.mtkoverflow:hover {\n\tbackground-color: var(--vscode-button-hoverBackground);\n}\n\n.monaco-editor.no-user-select .lines-content,\n.monaco-editor.no-user-select .view-line,\n.monaco-editor.no-user-select .view-lines {\n\tuser-select: none;\n\t-webkit-user-select: none;\n}\n/* Use user-select: text for lookup feature on macOS */\n/* https://github.com/microsoft/vscode/issues/85632 */\n.monaco-editor.mac .lines-content:hover,\n.monaco-editor.mac .view-line:hover,\n.monaco-editor.mac .view-lines:hover {\n\tuser-select: text;\n\t-webkit-user-select: text;\n\t-ms-user-select: text;\n}\n\n.monaco-editor.enable-user-select {\n\tuser-select: initial;\n\t-webkit-user-select: initial;\n}\n\n.monaco-editor .view-lines {\n\twhite-space: nowrap;\n}\n\n.monaco-editor .view-line {\n\tbox-sizing: border-box;\n\tposition: absolute;\n\twidth: 100%;\n}\n\n/* There are view-lines in view-zones. We have to make sure this rule does not apply to them, as they don't set a line height */\n.monaco-editor .lines-content > .view-lines > .view-line > span {\n\ttop: 0;\n\tbottom: 0;\n\tposition: absolute;\n}\n\n.monaco-editor .mtkw {\n\tcolor: var(--vscode-editorWhitespace-foreground) !important;\n}\n\n.monaco-editor .mtkz {\n\tdisplay: inline-block;\n\tcolor: var(--vscode-editorWhitespace-foreground) !important;\n}\n\n/* TODO@tokenization bootstrap fix */\n/*.monaco-editor .view-line > span > span {\n\tfloat: none;\n\tmin-height: inherit;\n\tmargin-left: inherit;\n}*/\n",""]);const a=r},3267:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .zone-widget .codicon.codicon-error,\n.markers-panel .marker-icon.error, .markers-panel .marker-icon .codicon.codicon-error,\n.text-search-provider-messages .providerMessage .codicon.codicon-error,\n.extensions-viewlet > .extensions .codicon.codicon-error,\n.extension-editor .codicon.codicon-error,\n.chat-attached-context-attachment .codicon.codicon-error {\n\tcolor: var(--vscode-problemsErrorIcon-foreground);\n}\n\n.monaco-editor .zone-widget .codicon.codicon-warning,\n.markers-panel .marker-icon.warning, .markers-panel .marker-icon .codicon.codicon-warning,\n.text-search-provider-messages .providerMessage .codicon.codicon-warning,\n.extensions-viewlet > .extensions .codicon.codicon-warning,\n.extension-editor .codicon.codicon-warning,\n.preferences-editor .codicon.codicon-warning {\n\tcolor: var(--vscode-problemsWarningIcon-foreground);\n}\n\n.monaco-editor .zone-widget .codicon.codicon-info,\n.markers-panel .marker-icon.info, .markers-panel .marker-icon .codicon.codicon-info,\n.text-search-provider-messages .providerMessage .codicon.codicon-info,\n.extensions-viewlet > .extensions .codicon.codicon-info,\n.extension-editor .codicon.codicon-info {\n\tcolor: var(--vscode-problemsInfoIcon-foreground);\n}\n",""]);const a=r},3293:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .linked-editing-decoration {\n\tbackground-color: var(--vscode-editor-linkedEditingBackground);\n\n\t/* Ensure decoration is visible even if range is empty */\n\tmin-width: 1px;\n}\n",""]);const a=r},3313:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/*\n\tKeeping name short for faster parsing.\n\tcmdr = core margin decorations rendering (div)\n*/\n.monaco-editor .margin-view-overlays .cmdr {\n\tposition: absolute;\n\tleft: 0;\n\twidth: 100%;\n\theight: 100%;\n}",""]);const a=r},3326:e=>{e.exports='data:image/svg+xml;utf8,%3Csvg viewBox="0 0 24 24" display="inline-block" height="1em" width="1em" vertical-align="text-bottom" xmlns="http://www.w3.org/2000/svg" %3E%3Cpath fill="currentColor" d="M20 14H4V10H20"/%3E%3C/svg%3E'},3345:(e,t,i)=>{i.d(t,{A:()=>u});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s),a=i(4417),l=i.n(a),d=new URL(i(8968),i.b),c=r()(o()),h=l()(d);c.push([e.id,`/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.colorpicker-widget {\n\theight: 190px;\n\tuser-select: none;\n\t-webkit-user-select: none;\n}\n\n/* Decoration */\n\n.colorpicker-color-decoration,\n.hc-light .colorpicker-color-decoration {\n\tborder: solid 0.1em #000;\n\tbox-sizing: border-box;\n\tmargin: 0.1em 0.2em 0 0.2em;\n\twidth: 0.8em;\n\theight: 0.8em;\n\tline-height: 0.8em;\n\tdisplay: inline-block;\n\tcursor: pointer;\n}\n\n.hc-black .colorpicker-color-decoration,\n.vs-dark .colorpicker-color-decoration {\n\tborder: solid 0.1em #eee;\n}\n\n/* Header */\n\n.colorpicker-header {\n\tdisplay: flex;\n\theight: 24px;\n\tposition: relative;\n\tbackground: url(${h});\n\tbackground-size: 9px 9px;\n\timage-rendering: pixelated;\n}\n\n.colorpicker-header .picked-color {\n\twidth: 240px;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tline-height: 24px;\n\tcursor: pointer;\n\tcolor: white;\n\tflex: 1;\n\twhite-space: nowrap;\n\toverflow: hidden;\n}\n\n.colorpicker-header .picked-color .picked-color-presentation {\n\twhite-space: nowrap;\n\tmargin-left: 5px;\n\tmargin-right: 5px;\n}\n\n.colorpicker-header .picked-color .codicon {\n\tcolor: inherit;\n\tfont-size: 14px;\n}\n\n.colorpicker-header .picked-color.light {\n\tcolor: black;\n}\n\n.colorpicker-header .original-color {\n\twidth: 74px;\n\tz-index: inherit;\n\tcursor: pointer;\n}\n\n.standalone-colorpicker {\n\tcolor: var(--vscode-editorHoverWidget-foreground);\n\tbackground-color: var(--vscode-editorHoverWidget-background);\n\tborder: 1px solid var(--vscode-editorHoverWidget-border);\n}\n\n.colorpicker-header.standalone-colorpicker {\n\tborder-bottom: none;\n}\n\n.colorpicker-header .close-button {\n\tcursor: pointer;\n\tbackground-color: var(--vscode-editorHoverWidget-background);\n\tborder-left: 1px solid var(--vscode-editorHoverWidget-border);\n}\n\n.colorpicker-header .close-button-inner-div {\n\twidth: 100%;\n\theight: 100%;\n\ttext-align: center;\n}\n\n.colorpicker-header .close-button-inner-div:hover {\n\tbackground-color: var(--vscode-toolbar-hoverBackground);\n}\n\n.colorpicker-header .close-icon {\n\tpadding: 3px;\n}\n\n/* Body */\n\n.colorpicker-body {\n\tdisplay: flex;\n\tpadding: 8px;\n\tposition: relative;\n}\n\n.colorpicker-body .saturation-wrap {\n\toverflow: hidden;\n\theight: 150px;\n\tposition: relative;\n\tmin-width: 220px;\n\tflex: 1;\n}\n\n.colorpicker-body .saturation-box {\n\theight: 150px;\n\tposition: absolute;\n}\n\n.colorpicker-body .saturation-selection {\n\twidth: 9px;\n\theight: 9px;\n\tmargin: -5px 0 0 -5px;\n\tborder: 1px solid rgb(255, 255, 255);\n\tborder-radius: 100%;\n\tbox-shadow: 0px 0px 2px rgba(0, 0, 0, 0.8);\n\tposition: absolute;\n}\n\n.colorpicker-body .strip {\n\twidth: 25px;\n\theight: 150px;\n}\n\n.colorpicker-body .standalone-strip {\n\twidth: 25px;\n\theight: 122px;\n}\n\n.colorpicker-body .hue-strip {\n\tposition: relative;\n\tmargin-left: 8px;\n\tcursor: grab;\n\tbackground: linear-gradient(to bottom, #ff0000 0%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);\n}\n\n.colorpicker-body .opacity-strip {\n\tposition: relative;\n\tmargin-left: 8px;\n\tcursor: grab;\n\tbackground: url(${h});\n\tbackground-size: 9px 9px;\n\timage-rendering: pixelated;\n}\n\n.colorpicker-body .strip.grabbing {\n\tcursor: grabbing;\n}\n\n.colorpicker-body .slider {\n\tposition: absolute;\n\ttop: 0;\n\tleft: -2px;\n\twidth: calc(100% + 4px);\n\theight: 4px;\n\tbox-sizing: border-box;\n\tborder: 1px solid rgba(255, 255, 255, 0.71);\n\tbox-shadow: 0px 0px 1px rgba(0, 0, 0, 0.85);\n}\n\n.colorpicker-body .strip .overlay {\n\theight: 150px;\n\tpointer-events: none;\n}\n\n.colorpicker-body .standalone-strip .standalone-overlay {\n\theight: 122px;\n\tpointer-events: none;\n}\n\n.standalone-colorpicker-body {\n\tdisplay: block;\n\tborder: 1px solid transparent;\n\tborder-bottom: 1px solid var(--vscode-editorHoverWidget-border);\n\toverflow: hidden;\n}\n\n.colorpicker-body .insert-button {\n\tposition: absolute;\n\theight: 20px;\n\twidth: 58px;\n\tpadding: 0px;\n\tright: 8px;\n\tbottom: 8px;\n\tbackground: var(--vscode-button-background);\n\tcolor: var(--vscode-button-foreground);\n\tborder-radius: 2px;\n\tborder: none;\n\tcursor: pointer;\n}\n\n.colorpicker-body .insert-button:hover{\n\tbackground: var(--vscode-button-hoverBackground);\n}\n`,""]);const u=c},3377:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-workbench .workbench-hover {\n\tposition: relative;\n\tfont-size: 13px;\n\tline-height: 19px;\n\t/* Must be higher than sash's z-index and terminal canvases */\n\tz-index: 40;\n\toverflow: hidden;\n\tmax-width: 700px;\n\tbackground: var(--vscode-editorHoverWidget-background);\n\tborder: 1px solid var(--vscode-editorHoverWidget-border);\n\tborder-radius: 5px;\n\tcolor: var(--vscode-editorHoverWidget-foreground);\n\tbox-shadow: 0 2px 8px var(--vscode-widget-shadow);\n}\n\n.monaco-workbench .workbench-hover .monaco-action-bar .action-item .codicon {\n\t/* Given our font-size, adjust action icons accordingly */\n\twidth: 13px;\n\theight: 13px;\n}\n\n.monaco-workbench .workbench-hover hr {\n\tborder-bottom: none;\n}\n\n.monaco-workbench .workbench-hover.compact {\n\tfont-size: 12px;\n}\n\n.monaco-workbench .workbench-hover.compact .monaco-action-bar .action-item .codicon {\n\t/* Given our font-size, adjust action icons accordingly */\n\twidth: 12px;\n\theight: 12px;\n}\n\n.monaco-workbench .workbench-hover.compact .hover-contents {\n\tpadding: 2px 8px;\n}\n\n.monaco-workbench .workbench-hover-container.locked .workbench-hover {\n\toutline: 1px solid var(--vscode-editorHoverWidget-border);\n}\n.monaco-workbench .workbench-hover-container:focus-within.locked .workbench-hover {\n\toutline-color: var(--vscode-focusBorder);\n}\n\n.monaco-workbench .workbench-hover-pointer {\n\tposition: absolute;\n\t/* Must be higher than workbench hover z-index */\n\tz-index: 41;\n\tpointer-events: none;\n}\n\n.monaco-workbench .workbench-hover-pointer:after {\n\tcontent: '';\n\tposition: absolute;\n\twidth: 5px;\n\theight: 5px;\n\tbackground-color: var(--vscode-editorHoverWidget-background);\n\tborder-right: 1px solid var(--vscode-editorHoverWidget-border);\n\tborder-bottom: 1px solid var(--vscode-editorHoverWidget-border);\n}\n.monaco-workbench .workbench-hover-container:not(:focus-within).locked .workbench-hover-pointer:after {\n\twidth: 4px;\n\theight: 4px;\n\tborder-right-width: 2px;\n\tborder-bottom-width: 2px;\n}\n.monaco-workbench .workbench-hover-container:focus-within .workbench-hover-pointer:after {\n\tborder-right: 1px solid var(--vscode-focusBorder);\n\tborder-bottom: 1px solid var(--vscode-focusBorder);\n}\n\n.monaco-workbench .workbench-hover-pointer.left { left: -3px; }\n.monaco-workbench .workbench-hover-pointer.right { right: 3px; }\n.monaco-workbench .workbench-hover-pointer.top { top: -3px; }\n.monaco-workbench .workbench-hover-pointer.bottom { bottom: 3px; }\n\n.monaco-workbench .workbench-hover-pointer.left:after {\n\ttransform: rotate(135deg);\n}\n\n.monaco-workbench .workbench-hover-pointer.right:after {\n\ttransform: rotate(315deg);\n}\n\n.monaco-workbench .workbench-hover-pointer.top:after {\n\ttransform: rotate(225deg);\n}\n\n.monaco-workbench .workbench-hover-pointer.bottom:after {\n\ttransform: rotate(45deg);\n}\n\n.monaco-workbench .workbench-hover a {\n\tcolor: var(--vscode-textLink-foreground);\n}\n\n.monaco-workbench .workbench-hover a:focus {\n\toutline: 1px solid;\n\toutline-offset: -1px;\n\ttext-decoration: underline;\n\toutline-color: var(--vscode-focusBorder);\n}\n\n.monaco-workbench .workbench-hover a.codicon:focus,\n.monaco-workbench .workbench-hover a.monaco-button:focus {\n\ttext-decoration: none;\n}\n\n.monaco-workbench .workbench-hover a:hover,\n.monaco-workbench .workbench-hover a:active {\n\tcolor: var(--vscode-textLink-activeForeground);\n}\n\n.monaco-workbench .workbench-hover code {\n\tbackground: var(--vscode-textCodeBlock-background);\n}\n\n.monaco-workbench .workbench-hover .hover-row .actions {\n\tbackground: var(--vscode-editorHoverWidget-statusBarBackground);\n}\n\n.monaco-workbench .workbench-hover.right-aligned {\n\t/* The context view service wraps strangely when it's right up against the edge without this */\n\tleft: 1px;\n}\n\n.monaco-workbench .workbench-hover.right-aligned .hover-row.status-bar .actions {\n\tflex-direction: row-reverse;\n}\n\n.monaco-workbench .workbench-hover.right-aligned .hover-row.status-bar .actions .action-container {\n\tmargin-right: 0;\n\tmargin-left: 16px;\n}\n",""]);const a=r},3413:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .margin-view-overlays .gpu-mark {\n\tposition: absolute;\n\ttop: 0;\n\tbottom: 0;\n\tleft: 0;\n\twidth: 100%;\n\tdisplay: inline-block;\n\tborder-left: solid 2px var(--vscode-editorWarning-foreground);\n\topacity: 0.2;\n\ttransition: background-color 0.1s linear;\n}\n\n.monaco-editor .margin-view-overlays .gpu-mark:hover {\n\tbackground-color: var(--vscode-editorWarning-foreground)\n}\n",""]);const a=r},3462:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,'.index__inner___epnFX {\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n}\n\n.index__main___FoijY {\n flex-grow: 1;\n overflow: visible;\n}\n\n.index__header___LlNrw {\n display: flex;\n justify-content: start;\n flex-wrap: wrap;\n}\n\n.index__footer___hVbYe {\n height: 1.5em;\n}\n\n.index__monaco___x5J_G {\n height: 100%;\n}\n\n.index__status___mW72Q {}\n\n.index__ms-choice___x3ep0 {\n height: 100%;\n line-height: normal;\n}\n\n.index__find-lines-table___XYmFv {\n border-spacing: 0;\n}\n\n.index__find-line-number___YqxOF {\n text-align: right;\n vertical-align: text-top;\n white-space: nowrap;\n padding: 0;\n padding-right: 1rem;\n opacity: 0.5;\n}\n\n.index__find-line-active___aDGI4 {\n background-color: rgba(255, 255, 192, 0.1)\n}\n\n.index__find-line-content___W7Sz9 {\n overflow-wrap: anywhere;\n}\n\n.index__dialogOverlay___cwWVl {\n position: fixed;\n top: 0;\n left: 0;\n width: 100vw;\n height: 100vh;\n background: rgba(0, 0, 0, 0.7);\n display: flex;\n justify-content: center;\n align-items: center;\n z-index: 10000;\n}\n\n.index__dialog___EYcU9 {\n background: #222;\n color: #eee;\n padding: 1.5rem;\n border-radius: 8px;\n border: 1px solid #444;\n min-width: 450px;\n box-shadow: 0 4px 20px rgba(0, 0, 0, 0.6);\n font-family: inherit;\n display: flex;\n flex-direction: column;\n gap: 1rem;\n}\n\n.index__dialog___EYcU9 h3 {\n margin: 0;\n padding-bottom: 0.75rem;\n border-bottom: 1px solid #444;\n font-size: 1.2rem;\n}\n\n.index__dialog___EYcU9 input[type="text"] {\n background: #333;\n color: #eee;\n border: 1px solid #555;\n padding: 0.5rem;\n border-radius: 4px;\n outline: none;\n}\n\n.index__dialog___EYcU9 input[type="text"]:focus {\n border-color: #777;\n}\n\n.index__dialog___EYcU9 button {\n background: #444;\n color: #eee;\n border: 1px solid #666;\n padding: 0.5rem 1rem;\n border-radius: 4px;\n cursor: pointer;\n transition: all 0.2s;\n font-size: 0.9rem;\n}\n\n.index__dialog___EYcU9 button:hover {\n background: #555;\n border-color: #888;\n}\n\n.index__dialog___EYcU9 button:active {\n background: #333;\n}\n\n.index__dialog-list___Oop5w {\n max-height: 250px;\n overflow-y: auto;\n border: 1px solid #444;\n padding: 0.5rem;\n background: #1a1a1a;\n border-radius: 4px;\n}\n\n.index__dialog-item___RGIg9 {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 0.5rem;\n border-bottom: 1px solid #333;\n}\n\n.index__dialog-item___RGIg9:last-child {\n border-bottom: none;\n}\n\n.index__dialog-item-label___m3agu {\n flex: 1;\n margin-right: 1rem;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.index__dialog-footer___V492W {\n display: flex;\n justify-content: flex-end;\n margin-top: 0.5rem;\n}',""]),r.locals={inner:"index__inner___epnFX",main:"index__main___FoijY",header:"index__header___LlNrw",footer:"index__footer___hVbYe",monaco:"index__monaco___x5J_G",status:"index__status___mW72Q","ms-choice":"index__ms-choice___x3ep0","find-lines-table":"index__find-lines-table___XYmFv","find-line-number":"index__find-line-number___YqxOF","find-line-active":"index__find-line-active___aDGI4","find-line-content":"index__find-line-content___W7Sz9",dialogOverlay:"index__dialogOverlay___cwWVl",dialog:"index__dialog___EYcU9","dialog-list":"index__dialog-list___Oop5w","dialog-item":"index__dialog-item___RGIg9","dialog-item-label":"index__dialog-item-label___m3agu","dialog-footer":"index__dialog-footer___V492W"};const a=r},3474:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-split-view2 {\n\tposition: relative;\n\twidth: 100%;\n\theight: 100%;\n}\n\n.monaco-split-view2 > .sash-container {\n\tposition: absolute;\n\twidth: 100%;\n\theight: 100%;\n\tpointer-events: none;\n}\n\n.monaco-split-view2 > .sash-container > .monaco-sash {\n\tpointer-events: initial;\n}\n\n.monaco-split-view2 > .monaco-scrollable-element {\n\twidth: 100%;\n\theight: 100%;\n}\n\n.monaco-split-view2 > .monaco-scrollable-element > .split-view-container {\n\twidth: 100%;\n\theight: 100%;\n\twhite-space: nowrap;\n\tposition: relative;\n}\n\n.monaco-split-view2 > .monaco-scrollable-element > .split-view-container > .split-view-view {\n\twhite-space: initial;\n\tposition: absolute;\n}\n\n.monaco-split-view2 > .monaco-scrollable-element > .split-view-container > .split-view-view:not(.visible) {\n\tdisplay: none;\n}\n\n.monaco-split-view2.vertical > .monaco-scrollable-element > .split-view-container > .split-view-view {\n\twidth: 100%;\n}\n\n.monaco-split-view2.horizontal > .monaco-scrollable-element > .split-view-container > .split-view-view {\n\theight: 100%;\n}\n\n.monaco-split-view2.separator-border > .monaco-scrollable-element > .split-view-container > .split-view-view:not(:first-child)::before {\n\tcontent: ' ';\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\tz-index: 5;\n\tpointer-events: none;\n\tbackground-color: var(--separator-border);\n}\n\n.monaco-split-view2.separator-border.horizontal > .monaco-scrollable-element > .split-view-container > .split-view-view:not(:first-child)::before {\n\theight: 100%;\n\twidth: 1px;\n}\n\n.monaco-split-view2.separator-border.vertical > .monaco-scrollable-element > .split-view-container > .split-view-view:not(:first-child)::before {\n\theight: 1px;\n\twidth: 100%;\n}\n",""]);const a=r},3614:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,'/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n/* Default standalone editor fonts */\n.monaco-editor {\n\tfont-family: -apple-system, BlinkMacSystemFont, "Segoe WPC", "Segoe UI", "HelveticaNeue-Light", system-ui, "Ubuntu", "Droid Sans", sans-serif;\n\t--monaco-monospace-font: "SF Mono", Monaco, Menlo, Consolas, "Ubuntu Mono", "Liberation Mono", "DejaVu Sans Mono", "Courier New", monospace;\n}\n\n.monaco-menu .monaco-action-bar.vertical .action-item .action-menu-item:focus .action-label {\n\tstroke-width: 1.2px;\n}\n\n.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,\n.monaco-editor.hc-black .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,\n.monaco-editor.hc-light .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label {\n\tstroke-width: 1.2px;\n}\n\n.monaco-hover p {\n\tmargin: 0;\n}\n\n/* See https://github.com/microsoft/monaco-editor/issues/2168#issuecomment-780078600 */\n.monaco-aria-container {\n\tposition: absolute !important;\n\ttop: 0; /* avoid being placed underneath a sibling element */\n\theight: 1px;\n\twidth: 1px;\n\tmargin: -1px;\n\toverflow: hidden;\n\tpadding: 0;\n\tclip: rect(1px, 1px, 1px, 1px);\n\tclip-path: inset(50%);\n}\n\n.monaco-editor .synthetic-focus, .monaco-diff-editor .synthetic-focus,\n.monaco-editor [tabindex="0"]:focus, .monaco-diff-editor [tabindex="0"]:focus,\n.monaco-editor [tabindex="-1"]:focus, .monaco-diff-editor [tabindex="-1"]:focus,\n.monaco-editor button:focus, .monaco-diff-editor button:focus,\n.monaco-editor input[type=button]:focus, .monaco-diff-editor input[type=button]:focus,\n.monaco-editor input[type=checkbox]:focus, .monaco-diff-editor input[type=checkbox]:focus,\n.monaco-editor input[type=search]:focus, .monaco-diff-editor input[type=search]:focus,\n.monaco-editor input[type=text]:focus, .monaco-diff-editor input[type=text]:focus,\n.monaco-editor select:focus, .monaco-diff-editor select:focus,\n.monaco-editor textarea:focus, .monaco-diff-editor textarea:focus {\n\toutline-width: 1px;\n\toutline-style: solid;\n\toutline-offset: -1px;\n\toutline-color: var(--vscode-focusBorder);\n\topacity: 1\n}\n',""]);const a=r},3717:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor {\n\t.scroll-editor-on-middle-click-dot {\n\t\tcursor: all-scroll;\n\t\tposition: absolute;\n\t\tz-index: 1;\n\t\tbackground-color: var(--vscode-editor-foreground, white);\n\t\tborder: 1px solid var(--vscode-editor-background, black);\n\t\topacity: 0.5;\n\t\twidth: 5px;\n\t\theight: 5px;\n\t\tborder-radius: 50%;\n\t\ttransform: translate(-50%, -50%);\n\n\t\t&.hidden {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\n\t&.scroll-editor-on-middle-click-editor * {\n\t\tcursor: all-scroll;\n\t}\n}\n",""]);const a=r},3777:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .lines-content .core-guide {\n\tposition: absolute;\n\tbox-sizing: border-box;\n\theight: 100%;\n}\n",""]);const a=r},4085:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .suggest-preview-additional-widget {\n\twhite-space: nowrap;\n}\n\n.monaco-editor .suggest-preview-additional-widget .content-spacer {\n\tcolor: transparent;\n\twhite-space: pre;\n}\n\n.monaco-editor .suggest-preview-additional-widget .button {\n\tdisplay: inline-block;\n\tcursor: pointer;\n\ttext-decoration: underline;\n\ttext-underline-position: under;\n}\n\n.monaco-editor .ghost-text-hidden {\n\topacity: 0;\n\tfont-size: 0;\n}\n\n.monaco-editor .ghost-text-decoration,\n.monaco-editor .suggest-preview-text .ghost-text {\n\tfont-style: italic;\n}\n\n.monaco-editor .suggest-preview-text.clickable .view-line {\n\tz-index: 1;\n}\n\n.monaco-editor .ghost-text-decoration.clickable,\n.monaco-editor .ghost-text-decoration-preview.clickable,\n.monaco-editor .suggest-preview-text.clickable .ghost-text {\n\tcursor: pointer;\n}\n\n.monaco-editor .inline-completion-text-to-replace {\n\ttext-decoration: underline;\n\ttext-underline-position: under;\n}\n\n.monaco-editor .ghost-text-decoration,\n.monaco-editor .ghost-text-decoration-preview,\n.monaco-editor .suggest-preview-text .ghost-text {\n\t&.syntax-highlighted {\n\t\topacity: 0.7;\n\t}\n\t&:not(.syntax-highlighted) {\n\t\tcolor: var(--vscode-editorGhostText-foreground);\n\t}\n\tbackground-color: var(--vscode-editorGhostText-background);\n\tborder: 1px solid var(--vscode-editorGhostText-border);\n}\n\n.monaco-editor .ghost-text-decoration.warning,\n.monaco-editor .ghost-text-decoration-preview.warning,\n.monaco-editor .suggest-preview-text .ghost-text.warning {\n\tbackground: var(--monaco-editor-warning-decoration) repeat-x bottom left;\n\tborder-bottom: 4px double var(--vscode-editorWarning-border);\n}\n\n.ghost-text-view-warning-widget-icon {\n\t.codicon {\n\t\tcolor: var(--vscode-editorWarning-foreground) !important;\n\t}\n}\n\n.monaco-editor {\n\t.edits-fadeout-decoration {\n\t\topacity: var(--animation-opacity, 1);\n\t\tbackground-color: var(--vscode-inlineEdit-modifiedChangedTextBackground);\n\t}\n}\n",""]);const a=r},4166:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n:root {\n\t--vscode-sash-size: 4px;\n\t--vscode-sash-hover-size: 4px;\n}\n\n.monaco-sash {\n\tposition: absolute;\n\tz-index: 35;\n\ttouch-action: none;\n}\n\n.monaco-sash.disabled {\n\tpointer-events: none;\n}\n\n.monaco-sash.mac.vertical {\n\tcursor: col-resize;\n}\n\n.monaco-sash.vertical.minimum {\n\tcursor: e-resize;\n}\n\n.monaco-sash.vertical.maximum {\n\tcursor: w-resize;\n}\n\n.monaco-sash.mac.horizontal {\n\tcursor: row-resize;\n}\n\n.monaco-sash.horizontal.minimum {\n\tcursor: s-resize;\n}\n\n.monaco-sash.horizontal.maximum {\n\tcursor: n-resize;\n}\n\n.monaco-sash.disabled {\n\tcursor: default !important;\n\tpointer-events: none !important;\n}\n\n.monaco-sash.vertical {\n\tcursor: ew-resize;\n\ttop: 0;\n\twidth: var(--vscode-sash-size);\n\theight: 100%;\n}\n\n.monaco-sash.horizontal {\n\tcursor: ns-resize;\n\tleft: 0;\n\twidth: 100%;\n\theight: var(--vscode-sash-size);\n}\n\n.monaco-sash:not(.disabled) > .orthogonal-drag-handle {\n\tcontent: \" \";\n\theight: calc(var(--vscode-sash-size) * 2);\n\twidth: calc(var(--vscode-sash-size) * 2);\n\tz-index: 100;\n\tdisplay: block;\n\tcursor: all-scroll;\n\tposition: absolute;\n}\n\n.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)\n\t> .orthogonal-drag-handle.start,\n.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)\n\t> .orthogonal-drag-handle.end {\n\tcursor: nwse-resize;\n}\n\n.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)\n\t> .orthogonal-drag-handle.end,\n.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)\n\t> .orthogonal-drag-handle.start {\n\tcursor: nesw-resize;\n}\n\n.monaco-sash.vertical > .orthogonal-drag-handle.start {\n\tleft: calc(var(--vscode-sash-size) * -0.5);\n\ttop: calc(var(--vscode-sash-size) * -1);\n}\n.monaco-sash.vertical > .orthogonal-drag-handle.end {\n\tleft: calc(var(--vscode-sash-size) * -0.5);\n\tbottom: calc(var(--vscode-sash-size) * -1);\n}\n.monaco-sash.horizontal > .orthogonal-drag-handle.start {\n\ttop: calc(var(--vscode-sash-size) * -0.5);\n\tleft: calc(var(--vscode-sash-size) * -1);\n}\n.monaco-sash.horizontal > .orthogonal-drag-handle.end {\n\ttop: calc(var(--vscode-sash-size) * -0.5);\n\tright: calc(var(--vscode-sash-size) * -1);\n}\n\n.monaco-sash:before {\n\tcontent: '';\n\tpointer-events: none;\n\tposition: absolute;\n\twidth: 100%;\n\theight: 100%;\n\tbackground: transparent;\n}\n\n.monaco-workbench:not(.reduce-motion) .monaco-sash:before {\n\ttransition: background-color 0.1s ease-out;\n}\n\n.monaco-sash.hover:before,\n.monaco-sash.active:before {\n\tbackground: var(--vscode-sash-hoverBorder);\n}\n\n.monaco-sash.vertical:before {\n\twidth: var(--vscode-sash-hover-size);\n\tleft: calc(50% - (var(--vscode-sash-hover-size) / 2));\n}\n\n.monaco-sash.horizontal:before {\n\theight: var(--vscode-sash-hover-size);\n\ttop: calc(50% - (var(--vscode-sash-hover-size) / 2));\n}\n\n.pointer-events-disabled {\n\tpointer-events: none !important;\n}\n\n/** Debug **/\n\n.monaco-sash.debug {\n\tbackground: cyan;\n}\n\n.monaco-sash.debug.disabled {\n\tbackground: rgba(0, 255, 255, 0.2);\n}\n\n.monaco-sash.debug:not(.disabled) > .orthogonal-drag-handle {\n\tbackground: red;\n}\n",""]);const a=r},4169:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .lightBulbWidget {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n}\n\n.monaco-editor .lightBulbWidget:hover{\n\tcursor: pointer;\n}\n\n.monaco-editor .lightBulbWidget.codicon-light-bulb,\n.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle {\n\tcolor: var(--vscode-editorLightBulb-foreground);\n}\n\n.monaco-editor .lightBulbWidget.codicon-lightbulb-autofix,\n.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle-autofix {\n\tcolor: var(--vscode-editorLightBulbAutoFix-foreground, var(--vscode-editorLightBulb-foreground));\n}\n\n.monaco-editor .lightBulbWidget.codicon-sparkle-filled {\n\tcolor: var(--vscode-editorLightBulbAi-foreground, var(--vscode-icon-foreground));\n}\n\n.monaco-editor .lightBulbWidget:before {\n\tposition: relative;\n\tz-index: 2;\n}\n\n.monaco-editor .lightBulbWidget:after {\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\tcontent: '';\n\tdisplay: block;\n\twidth: 100%;\n\theight: 100%;\n\topacity: 0.3;\n\tz-index: 1;\n}\n\n/* gutter decoration */\n.monaco-editor .glyph-margin-widgets .cgmr[class*=\"codicon-gutter-lightbulb\"] {\n\tdisplay: block;\n\tcursor: pointer;\n}\n\n.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb,\n.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-sparkle {\n\tcolor: var(--vscode-editorLightBulb-foreground);\n}\n\n.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-auto-fix,\n.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-aifix-auto-fix {\n\tcolor: var(--vscode-editorLightBulbAutoFix-foreground, var(--vscode-editorLightBulb-foreground));\n}\n\n.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-sparkle-filled {\n\tcolor: var(--vscode-editorLightBulbAi-foreground, var(--vscode-icon-foreground));\n}\n",""]);const a=r},4214:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-drag-image {\n\tdisplay: inline-block;\n\tpadding: 1px 7px;\n\tborder-radius: 10px;\n\tfont-size: 12px;\n\tposition: absolute;\n\tz-index: 1000;\n\n\t/* Default styles */\n\tbackground-color: var(--vscode-list-activeSelectionBackground);\n\tcolor: var(--vscode-list-activeSelectionForeground);\n\toutline: 1px solid var(--vscode-list-focusOutline);\n\toutline-offset: -1px;\n\n\t/*\n\t * Browsers apply an effect to the drag image when the div becomes too\n\t * large which makes them unreadable. Use max width so it does not happen\n\t */\n\tmax-width: 120px;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\twhite-space: nowrap;\n}\n",""]);const a=r},4234:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,'/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-table {\n\tdisplay: flex;\n\tflex-direction: column;\n\tposition: relative;\n\theight: 100%;\n\twidth: 100%;\n\twhite-space: nowrap;\n\toverflow: hidden;\n}\n\n.monaco-table > .monaco-split-view2 {\n\tborder-bottom: 1px solid transparent;\n}\n\n.monaco-table > .monaco-list {\n\tflex: 1;\n}\n\n.monaco-table-tr {\n\tdisplay: flex;\n\theight: 100%;\n}\n\n.monaco-table-th {\n\twidth: 100%;\n\theight: 100%;\n\tfont-weight: bold;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n}\n\n.monaco-table-th,\n.monaco-table-td {\n\tbox-sizing: border-box;\n\tflex-shrink: 0;\n\toverflow: hidden;\n\twhite-space: nowrap;\n\ttext-overflow: ellipsis;\n}\n\n.monaco-table > .monaco-split-view2 .monaco-sash.vertical::before {\n\tcontent: "";\n\tposition: absolute;\n\tleft: calc(var(--vscode-sash-size) / 2);\n\twidth: 0;\n\tborder-left: 1px solid transparent;\n}\n\n.monaco-workbench:not(.reduce-motion) .monaco-table > .monaco-split-view2,\n.monaco-workbench:not(.reduce-motion) .monaco-table > .monaco-split-view2 .monaco-sash.vertical::before {\n\ttransition: border-color 0.2s ease-out;\n}\n',""]);const a=r},4417:e=>{e.exports=function(e,t){return t||(t={}),e?(e=String(e.__esModule?e.default:e),/^['"].*['"]$/.test(e)&&(e=e.slice(1,-1)),t.hash&&(e+=t.hash),/["'() \t\n]|(%20)/.test(e)||t.needQuotes?'"'.concat(e.replace(/"/g,'\\"').replace(/\n/g,"\\n"),'"'):e):e}},4566:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-action-bar {\n\twhite-space: nowrap;\n\theight: 100%;\n}\n\n.monaco-action-bar .actions-container {\n\tdisplay: flex;\n\tmargin: 0 auto;\n\tpadding: 0;\n\theight: 100%;\n\twidth: 100%;\n\talign-items: center;\n}\n\n.monaco-action-bar.vertical .actions-container {\n\tdisplay: inline-block;\n}\n\n.monaco-action-bar .action-item {\n\tdisplay: block;\n\talign-items: center;\n\tjustify-content: center;\n\tcursor: pointer;\n\tposition: relative; /* DO NOT REMOVE - this is the key to preventing the ghosting icon bug in Chrome 42 */\n}\n\n.monaco-action-bar .action-item.disabled {\n\tcursor: default;\n}\n\n.monaco-action-bar .action-item .icon,\n.monaco-action-bar .action-item .codicon {\n\tdisplay: block;\n}\n\n.monaco-action-bar .action-item .codicon {\n\tdisplay: flex;\n\talign-items: center;\n\twidth: 16px;\n\theight: 16px;\n}\n\n.monaco-action-bar .action-label {\n\tdisplay: flex;\n\tfont-size: 11px;\n\tpadding: 3px;\n\tborder-radius: 5px;\n}\n\n.monaco-action-bar .action-item.disabled .action-label:not(.icon) ,\n.monaco-action-bar .action-item.disabled .action-label:not(.icon)::before,\n.monaco-action-bar .action-item.disabled .action-label:not(.icon):hover {\n\tcolor: var(--vscode-disabledForeground);\n}\n\n/* Unable to change color of SVGs, hence opacity is used */\n.monaco-action-bar .action-item.disabled .action-label.icon ,\n.monaco-action-bar .action-item.disabled .action-label.icon::before,\n.monaco-action-bar .action-item.disabled .action-label.icon:hover {\n\topacity: 0.6;\n}\n\n/* Vertical actions */\n\n.monaco-action-bar.vertical {\n\ttext-align: left;\n}\n\n.monaco-action-bar.vertical .action-item {\n\tdisplay: block;\n}\n\n.monaco-action-bar.vertical .action-label.separator {\n\tdisplay: block;\n\tborder-bottom: 1px solid var(--vscode-disabledForeground);\n\tpadding-top: 1px;\n\tmargin-left: .8em;\n\tmargin-right: .8em;\n}\n\n.monaco-action-bar .action-item .action-label.separator {\n\twidth: 1px;\n\theight: 16px;\n\tmargin: 5px 4px !important;\n\tcursor: default;\n\tmin-width: 1px;\n\tpadding: 0;\n\tbackground-color: var(--vscode-disabledForeground);\n}\n\n.secondary-actions .monaco-action-bar .action-label {\n\tmargin-left: 6px;\n}\n\n/* Action Items */\n.monaco-action-bar .action-item.select-container {\n\toverflow: hidden; /* somehow the dropdown overflows its container, we prevent it here to not push */\n\tflex: 1;\n\tmax-width: 170px;\n\tmin-width: 60px;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tmargin-right: 10px;\n}\n\n.monaco-action-bar .action-item.action-dropdown-item {\n\tdisplay: flex;\n}\n\n.monaco-action-bar .action-item.action-dropdown-item > .action-dropdown-item-separator {\n\tdisplay: flex;\n\talign-items: center;\n\tcursor: default;\n}\n\n.monaco-action-bar .action-item.action-dropdown-item > .action-dropdown-item-separator > div {\n\twidth: 1px;\n}\n",""]);const a=r},4646:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-link {\n\tcolor: var(--vscode-textLink-foreground);\n}\n\n.monaco-link:hover {\n\tcolor: var(--vscode-textLink-activeForeground);\n}\n\n",""]);const a=r},4978:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-progress-container {\n\twidth: 100%;\n\theight: 2px;\n\toverflow: hidden; /* keep progress bit in bounds */\n}\n\n.monaco-progress-container .progress-bit {\n\twidth: 2%;\n\theight: 2px;\n\tposition: absolute;\n\tleft: 0;\n\tdisplay: none;\n}\n\n.monaco-progress-container.active .progress-bit {\n\tdisplay: inherit;\n}\n\n.monaco-progress-container.discrete .progress-bit {\n\tleft: 0;\n\ttransition: width 100ms linear;\n}\n\n.monaco-progress-container.discrete.done .progress-bit {\n\twidth: 100%;\n}\n\n.monaco-progress-container.infinite .progress-bit {\n\tanimation-name: progress;\n\tanimation-duration: 4s;\n\tanimation-iteration-count: infinite;\n\ttransform: translate3d(0px, 0px, 0px);\n\tanimation-timing-function: linear;\n}\n\n.monaco-progress-container.infinite.infinite-long-running .progress-bit {\n\t/*\n\t\tThe more smooth `linear` timing function can cause\n\t\thigher GPU consumption as indicated in\n\t\thttps://github.com/microsoft/vscode/issues/97900 &\n\t\thttps://github.com/microsoft/vscode/issues/138396\n\t*/\n\tanimation-timing-function: steps(100);\n}\n\n/**\n * The progress bit has a width: 2% (1/50) of the parent container. The animation moves it from 0% to 100% of\n * that container. Since translateX is relative to the progress bit size, we have to multiple it with\n * its relative size to the parent container:\n * parent width: 5000%\n * bit width: 100%\n * translateX should be as follow:\n * 50%: 5000% * 50% - 50% (set to center) = 2450%\n * 100%: 5000% * 100% - 100% (do not overflow) = 4900%\n */\n@keyframes progress { from { transform: translateX(0%) scaleX(1) } 50% { transform: translateX(2500%) scaleX(3) } to { transform: translateX(4900%) scaleX(1) } }\n",""]);const a=r},5038:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-aria-container {\n\tposition: absolute; /* try to hide from window but not from screen readers */\n\tleft:-999em;\n}",""]);const a=r},5056:(e,t,i)=>{e.exports=function(e){var t=i.nc;t&&e.setAttribute("nonce",t)}},5070:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-select-box {\n\twidth: 100%;\n\tcursor: pointer;\n\tborder-radius: 2px;\n}\n\n.monaco-select-box-dropdown-container {\n\tfont-size: 13px;\n\tfont-weight: normal;\n\ttext-transform: none;\n}\n\n/** Actions */\n\n.monaco-action-bar .action-item.select-container {\n\tcursor: default;\n}\n\n.monaco-action-bar .action-item .monaco-select-box {\n\tcursor: pointer;\n\tmin-width: 100px;\n\tmin-height: 18px;\n\tpadding: 2px 23px 2px 8px;\n}\n\n.mac .monaco-action-bar .action-item .monaco-select-box {\n\tfont-size: 11px;\n\tborder-radius: 3px;\n\tmin-height: 24px;\n}\n",""]);const a=r},5071:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.floating-menu-overlay-widget {\n\tpadding: 0px;\n\tcolor: var(--vscode-button-foreground);\n\tbackground-color: var(--vscode-button-background);\n\tborder-radius: 2px;\n\tborder: 1px solid var(--vscode-contrastBorder);\n\tdisplay: flex;\n\talign-items: center;\n\tz-index: 10;\n\tbox-shadow: 0 2px 8px var(--vscode-widget-shadow);\n\toverflow: hidden;\n\n\t.action-item > .action-label {\n\t\tpadding: 5px;\n\t\tfont-size: 12px;\n\t\tborder-radius: 2px;\n\t}\n\n\t.action-item > .action-label.codicon {\n\t\tcolor: var(--vscode-button-foreground);\n\t}\n\n\t.action-item > .action-label.codicon:not(.separator) {\n\t\tpadding-top: 6px;\n\t\tpadding-bottom: 6px;\n\t}\n\n\t.action-item:first-child > .action-label {\n\t\tpadding-left: 7px;\n\t}\n\n\t.action-item:last-child > .action-label {\n\t\tpadding-right: 7px;\n\t}\n\n\t.action-item .action-label.separator {\n\t\tbackground-color: var(--vscode-menu-separatorBackground);\n\t}\n}\n",""]);const a=r},5072:e=>{var t=[];function i(e){for(var i=-1,n=0;n{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/* Find widget */\n.monaco-editor .find-widget {\n\tposition: absolute;\n\tz-index: 35;\n\theight: 33px;\n\toverflow: hidden;\n\tline-height: 19px;\n\ttransition: transform 200ms linear;\n\tpadding: 0 4px;\n\tbox-sizing: border-box;\n\ttransform: translateY(calc(-100% - 10px)); /* shadow (10px) */\n\tbox-shadow: 0 0 8px 2px var(--vscode-widget-shadow);\n\tcolor: var(--vscode-editorWidget-foreground);\n\tborder-left: 1px solid var(--vscode-widget-border);\n\tborder-right: 1px solid var(--vscode-widget-border);\n\tborder-bottom: 1px solid var(--vscode-widget-border);\n\tborder-bottom-left-radius: 4px;\n\tborder-bottom-right-radius: 4px;\n\tbackground-color: var(--vscode-editorWidget-background);\n}\n\n.monaco-workbench.reduce-motion .monaco-editor .find-widget {\n\ttransition: transform 0ms linear;\n}\n\n.monaco-editor .find-widget textarea {\n\tmargin: 0px;\n}\n\n.monaco-editor .find-widget.hiddenEditor {\n\tdisplay: none;\n}\n\n/* Find widget when replace is toggled on */\n.monaco-editor .find-widget.replaceToggled > .replace-part {\n\tdisplay: flex;\n}\n\n.monaco-editor .find-widget.visible {\n\ttransform: translateY(0);\n}\n\n/* This outline-color rule is used to override the outline color for synthetic-focus find input. */\n.monaco-editor .find-widget .monaco-inputbox.synthetic-focus {\n\toutline: 1px solid -webkit-focus-ring-color;\n\toutline-offset: -1px;\n\toutline-color: var(--vscode-focusBorder);\n}\n\n.monaco-editor .find-widget .monaco-inputbox .input {\n\tbackground-color: transparent;\n\tmin-height: 0;\n}\n\n.monaco-editor .find-widget .monaco-findInput .input {\n\tfont-size: 13px;\n}\n\n.monaco-editor .find-widget > .find-part,\n.monaco-editor .find-widget > .replace-part {\n\tmargin: 3px 25px 0 17px;\n\tfont-size: 12px;\n\tdisplay: flex;\n}\n\n.monaco-editor .find-widget > .find-part .monaco-inputbox,\n.monaco-editor .find-widget > .replace-part .monaco-inputbox {\n\tmin-height: 25px;\n}\n\n\n.monaco-editor .find-widget > .replace-part .monaco-inputbox > .ibwrapper > .mirror {\n\tpadding-right: 22px;\n}\n\n.monaco-editor .find-widget > .find-part .monaco-inputbox > .ibwrapper > .input,\n.monaco-editor .find-widget > .find-part .monaco-inputbox > .ibwrapper > .mirror,\n.monaco-editor .find-widget > .replace-part .monaco-inputbox > .ibwrapper > .input,\n.monaco-editor .find-widget > .replace-part .monaco-inputbox > .ibwrapper > .mirror {\n\tpadding-top: 2px;\n\tpadding-bottom: 2px;\n}\n\n.monaco-editor .find-widget > .find-part .find-actions {\n\theight: 25px;\n\tdisplay: flex;\n\talign-items: center;\n}\n\n.monaco-editor .find-widget > .replace-part .replace-actions {\n\theight: 25px;\n\tdisplay: flex;\n\talign-items: center;\n}\n\n.monaco-editor .find-widget .monaco-findInput {\n\tvertical-align: middle;\n\tdisplay: flex;\n\tflex:1;\n}\n\n.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element {\n\t/* Make sure textarea inherits the width correctly */\n\twidth: 100%;\n}\n\n.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element .scrollbar.vertical {\n\t/* Hide vertical scrollbar */\n\topacity: 0;\n}\n\n.monaco-editor .find-widget .matchesCount {\n\tdisplay: flex;\n\tflex: initial;\n\tmargin: 0 0 0 3px;\n\tpadding: 2px 0 0 2px;\n\theight: 25px;\n\tvertical-align: middle;\n\tbox-sizing: border-box;\n\ttext-align: center;\n\tline-height: 23px;\n}\n\n.monaco-editor .find-widget .button {\n\twidth: 16px;\n\theight: 16px;\n\tpadding: 3px;\n\tborder-radius: 5px;\n\tdisplay: flex;\n\tflex: initial;\n\tmargin-left: 3px;\n\tbackground-position: center center;\n\tbackground-repeat: no-repeat;\n\tcursor: pointer;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n}\n\n/* find in selection button */\n.monaco-editor .find-widget .codicon-find-selection {\n\twidth: 22px;\n\theight: 22px;\n\tpadding: 3px;\n\tborder-radius: 5px;\n}\n\n.monaco-editor .find-widget .button.left {\n\tmargin-left: 0;\n\tmargin-right: 3px;\n}\n\n.monaco-editor .find-widget .button.wide {\n\twidth: auto;\n\tpadding: 1px 6px;\n\ttop: -1px;\n}\n\n.monaco-editor .find-widget .button.toggle {\n\tposition: absolute;\n\ttop: 0;\n\tleft: 3px;\n\twidth: 18px;\n\theight: 100%;\n\tborder-radius: 0;\n\tbox-sizing: border-box;\n}\n\n.monaco-editor .find-widget .button.toggle.disabled {\n\tdisplay: none;\n}\n\n.monaco-editor .find-widget .disabled {\n\tcolor: var(--vscode-disabledForeground);\n\tcursor: default;\n}\n\n.monaco-editor .find-widget > .replace-part {\n\tdisplay: none;\n}\n\n.monaco-editor .find-widget > .replace-part > .monaco-findInput {\n\tposition: relative;\n\tdisplay: flex;\n\tvertical-align: middle;\n\tflex: auto;\n\tflex-grow: 0;\n\tflex-shrink: 0;\n}\n\n.monaco-editor .find-widget > .replace-part > .monaco-findInput > .controls {\n\tposition: absolute;\n\ttop: 3px;\n\tright: 2px;\n}\n\n/* REDUCED */\n.monaco-editor .find-widget.reduced-find-widget .matchesCount {\n\tdisplay:none;\n}\n\n/* NARROW (SMALLER THAN REDUCED) */\n.monaco-editor .find-widget.narrow-find-widget {\n\tmax-width: 257px !important;\n}\n\n/* COLLAPSED (SMALLER THAN NARROW) */\n.monaco-editor .find-widget.collapsed-find-widget {\n\tmax-width: 170px !important;\n}\n\n.monaco-editor .find-widget.collapsed-find-widget .button.previous,\n.monaco-editor .find-widget.collapsed-find-widget .button.next,\n.monaco-editor .find-widget.collapsed-find-widget .button.replace,\n.monaco-editor .find-widget.collapsed-find-widget .button.replace-all,\n.monaco-editor .find-widget.collapsed-find-widget > .find-part .monaco-findInput .controls {\n\tdisplay:none;\n}\n\n.monaco-editor .find-widget.no-results .matchesCount {\n\tcolor: var(--vscode-errorForeground);\n}\n\n.monaco-editor .findMatch {\n\tanimation-duration: 0;\n\tanimation-name: inherit !important;\n\tbackground-color: var(--vscode-editor-findMatchHighlightBackground);\n}\n\n.monaco-editor .currentFindMatch {\n\tbackground-color: var(--vscode-editor-findMatchBackground);\n\tborder: 2px solid var(--vscode-editor-findMatchBorder);\n\tpadding: 1px;\n\tbox-sizing: border-box;\n}\n\n.monaco-editor .findScope {\n\tbackground-color: var(--vscode-editor-findRangeHighlightBackground);\n}\n\n.monaco-editor .find-widget .monaco-sash {\n\tleft: 0 !important;\n\tbackground-color: var(--vscode-editorWidget-resizeBorder, var(--vscode-editorWidget-border));\n}\n\n.monaco-editor.hc-black .find-widget .button:before {\n\tposition: relative;\n\ttop: 1px;\n\tleft: 2px;\n}\n\n/* Action bars */\n.monaco-editor .find-widget .button:not(.disabled):hover,\n.monaco-editor .find-widget .codicon-find-selection:hover {\n\tbackground-color: var(--vscode-toolbar-hoverBackground) !important;\n}\n\n.monaco-editor.findMatch {\n\tbackground-color: var(--vscode-editor-findMatchHighlightBackground);\n}\n\n.monaco-editor.currentFindMatch {\n\tbackground-color: var(--vscode-editor-findMatchBackground);\n}\n\n.monaco-editor.findScope {\n\tbackground-color: var(--vscode-editor-findRangeHighlightBackground);\n}\n\n.monaco-editor.findMatch {\n\tbackground-color: var(--vscode-editorWidget-background);\n}\n\n/* Close button position. */\n.monaco-editor .find-widget > .button.codicon-widget-close {\n\tposition: absolute;\n\ttop: 5px;\n\tright: 4px;\n}\n",""]);const a=r},5405:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,'/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n.monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,\n.monaco-editor .margin-view-overlays .codicon-folding-manual-expanded,\n.monaco-editor .margin-view-overlays .codicon-folding-expanded,\n.monaco-editor .margin-view-overlays .codicon-folding-collapsed {\n\tcursor: pointer;\n\topacity: 0;\n\ttransition: opacity 0.5s;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tfont-size: 140%;\n\tmargin-left: 2px;\n}\n\n.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,\n.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-expanded,\n.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-expanded,\n.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-collapsed {\n\ttransition: initial;\n}\n\n.monaco-editor .margin-view-overlays:hover .codicon,\n.monaco-editor .margin-view-overlays .codicon.codicon-folding-collapsed,\n.monaco-editor .margin-view-overlays .codicon.codicon-folding-manual-collapsed,\n.monaco-editor .margin-view-overlays .codicon.alwaysShowFoldIcons {\n\topacity: 1;\n}\n\n.monaco-editor .inline-folded:after {\n\tcolor: var(--vscode-editor-foldPlaceholderForeground);\n\tmargin: 0.1em 0.2em 0 0.2em;\n\tcontent: "\\22EF"; /* ellipses unicode character */\n\tdisplay: inline;\n\tline-height: 1em;\n\tcursor: pointer;\n}\n\n.monaco-editor .folded-background {\n\tbackground-color: var(--vscode-editor-foldBackground);\n}\n\n.monaco-editor .cldr.codicon.codicon-folding-expanded,\n.monaco-editor .cldr.codicon.codicon-folding-collapsed,\n.monaco-editor .cldr.codicon.codicon-folding-manual-expanded,\n.monaco-editor .cldr.codicon.codicon-folding-manual-collapsed {\n\tcolor: var(--vscode-editorGutter-foldingControlForeground) !important;\n}\n',""]);const a=r},5422:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-keybinding {\n\tdisplay: flex;\n\talign-items: center;\n\tline-height: 10px;\n}\n\n.monaco-keybinding > .monaco-keybinding-key {\n\tdisplay: inline-block;\n\tborder-style: solid;\n\tborder-width: 1px;\n\tborder-radius: 3px;\n\tvertical-align: middle;\n\tfont-size: 11px;\n\tpadding: 3px 5px;\n\tmargin: 0 2px;\n}\n\n.monaco-keybinding > .monaco-keybinding-key:first-child {\n\tmargin-left: 0;\n}\n\n.monaco-keybinding > .monaco-keybinding-key:last-child {\n\tmargin-right: 0;\n}\n\n.monaco-keybinding > .monaco-keybinding-key-separator {\n\tdisplay: inline-block;\n}\n\n.monaco-keybinding > .monaco-keybinding-key-chord-separator {\n\twidth: 6px;\n}\n",""]);const a=r},5669:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .findOptionsWidget {\n\tbackground-color: var(--vscode-editorWidget-background);\n\tcolor: var(--vscode-editorWidget-foreground);\n\tbox-shadow: 0 0 8px 2px var(--vscode-widget-shadow);\n\tborder: 2px solid var(--vscode-contrastBorder);\n}\n",""]);const a=r},6049:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/* -------------------- IE10 remove auto clear button -------------------- */\n\n::-ms-clear {\n\tdisplay: none;\n}\n\n/* All widgets */\n/* I am not a big fan of this rule */\n.monaco-editor .editor-widget input {\n\tcolor: inherit;\n}\n\n/* -------------------- Editor -------------------- */\n\n.monaco-editor {\n\tposition: relative;\n\toverflow: visible;\n\t-webkit-text-size-adjust: 100%;\n\tcolor: var(--vscode-editor-foreground);\n\tbackground-color: var(--vscode-editor-background);\n\toverflow-wrap: initial;\n}\n.monaco-editor-background {\n\tbackground-color: var(--vscode-editor-background);\n}\n.monaco-editor .rangeHighlight {\n\tbackground-color: var(--vscode-editor-rangeHighlightBackground);\n\tbox-sizing: border-box;\n\tborder: 1px solid var(--vscode-editor-rangeHighlightBorder);\n}\n.monaco-editor.hc-black .rangeHighlight, .monaco-editor.hc-light .rangeHighlight {\n\tborder-style: dotted;\n}\n.monaco-editor .symbolHighlight {\n\tbackground-color: var(--vscode-editor-symbolHighlightBackground);\n\tbox-sizing: border-box;\n\tborder: 1px solid var(--vscode-editor-symbolHighlightBorder);\n}\n.monaco-editor.hc-black .symbolHighlight, .monaco-editor.hc-light .symbolHighlight {\n\tborder-style: dotted;\n}\n\n.monaco-editor .editorCanvas {\n\tposition: absolute;\n\twidth: 100%;\n\theight: 100%;\n\tz-index: 0;\n\tpointer-events: none;\n}\n\n/* -------------------- Misc -------------------- */\n\n.monaco-editor .overflow-guard {\n\tposition: relative;\n\toverflow: hidden;\n}\n\n.monaco-editor .view-overlays {\n\tposition: absolute;\n\ttop: 0;\n}\n\n.monaco-editor .view-overlays > div, .monaco-editor .margin-view-overlays > div {\n\tposition: absolute;\n\twidth: 100%;\n}\n\n/*\n.monaco-editor .auto-closed-character {\n\topacity: 0.3;\n}\n*/\n\n\n.monaco-editor .squiggly-error {\n\tborder-bottom: 4px double var(--vscode-editorError-border);\n}\n.monaco-editor .squiggly-error::before {\n\tdisplay: block;\n\tcontent: '';\n\twidth: 100%;\n\theight: 100%;\n\tbackground: var(--vscode-editorError-background);\n}\n.monaco-editor .squiggly-warning {\n\tborder-bottom: 4px double var(--vscode-editorWarning-border);\n}\n.monaco-editor .squiggly-warning::before {\n\tdisplay: block;\n\tcontent: '';\n\twidth: 100%;\n\theight: 100%;\n\tbackground: var(--vscode-editorWarning-background);\n}\n.monaco-editor .squiggly-info {\n\tborder-bottom: 4px double var(--vscode-editorInfo-border);\n}\n.monaco-editor .squiggly-info::before {\n\tdisplay: block;\n\tcontent: '';\n\twidth: 100%;\n\theight: 100%;\n\tbackground: var(--vscode-editorInfo-background);\n}\n.monaco-editor .squiggly-hint {\n\tborder-bottom: 2px dotted var(--vscode-editorHint-border);\n}\n.monaco-editor.showUnused .squiggly-unnecessary {\n\tborder-bottom: 2px dashed var(--vscode-editorUnnecessaryCode-border);\n}\n.monaco-editor.showDeprecated .squiggly-inline-deprecated {\n\ttext-decoration: line-through;\n\ttext-decoration-color: var(--vscode-editor-foreground, inherit);\n}\n",""]);const a=r},6060:e=>{e.exports="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCA1MyAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDguMDM2NCA0LjAxMDQySDQuMDA3NzlMNC4wMDc3OSAzMi4wMjg2SDQ4LjAzNjRWNC4wMTA0MlpNNC4wMDc3OSAwLjAwNzgxMjVDMS43OTcyMSAwLjAwNzgxMjUgMC4wMDUxODc5OSAxLjc5OTg0IDAuMDA1MTg3OTkgNC4wMTA0MlYzMi4wMjg2QzAuMDA1MTg3OTkgMzQuMjM5MiAxLjc5NzIxIDM2LjAzMTIgNC4wMDc3OSAzNi4wMzEySDQ4LjAzNjRDNTAuMjQ3IDM2LjAzMTIgNTIuMDM5IDM0LjIzOTIgNTIuMDM5IDMyLjAyODZWNC4wMTA0MkM1Mi4wMzkgMS43OTk4NCA1MC4yNDcgMC4wMDc4MTI1IDQ4LjAzNjQgMC4wMDc4MTI1SDQuMDA3NzlaTTguMDEwNDIgOC4wMTMwMkgxMi4wMTNWMTIuMDE1Nkg4LjAxMDQyVjguMDEzMDJaTTIwLjAxODIgOC4wMTMwMkgxNi4wMTU2VjEyLjAxNTZIMjAuMDE4MlY4LjAxMzAyWk0yNC4wMjA4IDguMDEzMDJIMjguMDIzNFYxMi4wMTU2SDI0LjAyMDhWOC4wMTMwMlpNMzYuMDI4NiA4LjAxMzAySDMyLjAyNlYxMi4wMTU2SDM2LjAyODZWOC4wMTMwMlpNNDAuMDMxMiA4LjAxMzAySDQ0LjAzMzlWMTIuMDE1Nkg0MC4wMzEyVjguMDEzMDJaTTE2LjAxNTYgMTYuMDE4Mkg4LjAxMDQyVjIwLjAyMDhIMTYuMDE1NlYxNi4wMTgyWk0yMC4wMTgyIDE2LjAxODJIMjQuMDIwOFYyMC4wMjA4SDIwLjAxODJWMTYuMDE4MlpNMzIuMDI2IDE2LjAxODJIMjguMDIzNFYyMC4wMjA4SDMyLjAyNlYxNi4wMTgyWk00NC4wMzM5IDE2LjAxODJWMjAuMDIwOEgzNi4wMjg2VjE2LjAxODJINDQuMDMzOVpNMTIuMDEzIDI0LjAyMzRIOC4wMTA0MlYyOC4wMjZIMTIuMDEzVjI0LjAyMzRaTTE2LjAxNTYgMjQuMDIzNEgzNi4wMjg2VjI4LjAyNkgxNi4wMTU2VjI0LjAyMzRaTTQ0LjAzMzkgMjQuMDIzNEg0MC4wMzEyVjI4LjAyNkg0NC4wMzM5VjI0LjAyMzRaIiBmaWxsPSIjQzVDNUM1Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cmVjdCB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg=="},6065:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.editor-banner {\n\tbox-sizing: border-box;\n\tcursor: default;\n\twidth: 100%;\n\tfont-size: 12px;\n\tdisplay: flex;\n\toverflow: visible;\n\n\theight: 26px;\n\n\tbackground: var(--vscode-banner-background);\n}\n\n\n.editor-banner .icon-container {\n\tdisplay: flex;\n\tflex-shrink: 0;\n\talign-items: center;\n\tpadding: 0 6px 0 10px;\n}\n\n.editor-banner .icon-container.custom-icon {\n\tbackground-repeat: no-repeat;\n\tbackground-position: center center;\n\tbackground-size: 16px;\n\twidth: 16px;\n\tpadding: 0;\n\tmargin: 0 6px 0 10px;\n}\n\n.editor-banner .message-container {\n\tdisplay: flex;\n\talign-items: center;\n\tline-height: 26px;\n\ttext-overflow: ellipsis;\n\twhite-space: nowrap;\n\toverflow: hidden;\n}\n\n.editor-banner .message-container p {\n\tmargin-block-start: 0;\n\tmargin-block-end: 0;\n}\n\n.editor-banner .message-actions-container {\n\tflex-grow: 1;\n\tflex-shrink: 0;\n\tline-height: 26px;\n\tmargin: 0 4px;\n}\n\n.editor-banner .message-actions-container a.monaco-button {\n\twidth: inherit;\n\tmargin: 2px 8px;\n\tpadding: 0px 12px;\n}\n\n.editor-banner .message-actions-container a {\n\tpadding: 3px;\n\tmargin-left: 12px;\n\ttext-decoration: underline;\n}\n\n.editor-banner .action-container {\n\tpadding: 0 10px 0 6px;\n}\n\n.editor-banner {\n\tbackground-color: var(--vscode-banner-background);\n}\n\n.editor-banner,\n.editor-banner .action-container .codicon,\n.editor-banner .message-actions-container .monaco-link {\n\tcolor: var(--vscode-banner-foreground);\n}\n\n.editor-banner .icon-container .codicon {\n\tcolor: var(--vscode-banner-iconForeground);\n}\n",""]);const a=r},6314:e=>{e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var i="",n=void 0!==t[5];return t[4]&&(i+="@supports (".concat(t[4],") {")),t[2]&&(i+="@media ".concat(t[2]," {")),n&&(i+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),i+=e(t),n&&(i+="}"),t[2]&&(i+="}"),t[4]&&(i+="}"),i})).join("")},t.i=function(e,i,n,o,s){"string"==typeof e&&(e=[[null,e,void 0]]);var r={};if(n)for(var a=0;a0?" ".concat(c[5]):""," {").concat(c[1],"}")),c[5]=s),i&&(c[2]?(c[1]="@media ".concat(c[2]," {").concat(c[1],"}"),c[2]=i):c[2]=i),o&&(c[4]?(c[1]="@supports (".concat(c[4],") {").concat(c[1],"}"),c[4]=o):c[4]="".concat(o)),t.push(c))}},t}},6378:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/* -- zone widget */\n.monaco-editor .zone-widget .zone-widget-container.reference-zone-widget {\n\tborder-top-width: 1px;\n\tborder-bottom-width: 1px;\n}\n\n.monaco-editor .reference-zone-widget .inline {\n\tdisplay: inline-block;\n\tvertical-align: top;\n}\n\n.monaco-editor .reference-zone-widget .messages {\n\theight: 100%;\n\twidth: 100%;\n\ttext-align: center;\n\tpadding: 3em 0;\n}\n\n.monaco-editor .reference-zone-widget .ref-tree {\n\tline-height: 23px;\n\tbackground-color: var(--vscode-peekViewResult-background);\n\tcolor: var(--vscode-peekViewResult-lineForeground);\n}\n\n.monaco-editor .reference-zone-widget .ref-tree .reference {\n\ttext-overflow: ellipsis;\n\toverflow: hidden;\n}\n\n.monaco-editor .reference-zone-widget .ref-tree .reference-file {\n\tdisplay: inline-flex;\n\twidth: 100%;\n\theight: 100%;\n\tcolor: var(--vscode-peekViewResult-fileForeground);\n}\n\n.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .selected .reference-file {\n\tcolor: inherit !important;\n}\n\n.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .monaco-list-rows > .monaco-list-row.selected:not(.highlighted) {\n\tbackground-color: var(--vscode-peekViewResult-selectionBackground);\n\tcolor: var(--vscode-peekViewResult-selectionForeground) !important;\n}\n\n.monaco-editor .reference-zone-widget .ref-tree .reference-file .count {\n\tmargin-right: 12px;\n\tmargin-left: auto;\n}\n\n.monaco-editor .reference-zone-widget .ref-tree .referenceMatch .highlight {\n\tbackground-color: var(--vscode-peekViewResult-matchHighlightBackground);\n}\n\n.monaco-editor .reference-zone-widget .preview .reference-decoration {\n\tbackground-color: var(--vscode-peekViewEditor-matchHighlightBackground);\n\tborder: 2px solid var(--vscode-peekViewEditor-matchHighlightBorder);\n\tbox-sizing: border-box;\n}\n\n.monaco-editor .reference-zone-widget .preview .monaco-editor .monaco-editor-background,\n.monaco-editor .reference-zone-widget .preview .monaco-editor .inputarea.ime-input {\n\tbackground-color: var(--vscode-peekViewEditor-background);\n}\n\n.monaco-editor .reference-zone-widget .preview .monaco-editor .margin {\n\tbackground-color: var(--vscode-peekViewEditorGutter-background);\n}\n\n/* High Contrast Theming */\n\n.monaco-editor.hc-black .reference-zone-widget .ref-tree .reference-file,\n.monaco-editor.hc-light .reference-zone-widget .ref-tree .reference-file {\n\tfont-weight: bold;\n}\n\n.monaco-editor.hc-black .reference-zone-widget .ref-tree .referenceMatch .highlight,\n.monaco-editor.hc-light .reference-zone-widget .ref-tree .referenceMatch .highlight {\n\tborder: 1px dotted var(--vscode-contrastActiveBorder, transparent);\n\tbox-sizing: border-box;\n}\n",""]);const a=r},6437:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n\n.monaco-editor.vs .valueSetReplacement {\n\toutline: solid 2px var(--vscode-editorBracketMatch-border);\n}\n",""]);const a=r},6458:(e,t,i)=>{i.d(t,{A:()=>w});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s),a=i(4417),l=i.n(a),d=new URL(i(996),i.b),c=new URL(i(6889),i.b),h=new URL(i(937),i.b),u=new URL(i(3326),i.b),g=new URL(i(2561),i.b),p=r()(o()),m=l()(d),f=l()(c),_=l()(h),v=l()(u),b=l()(g);p.push([e.id,`/*!\n * Multiple-Select-Vanilla styling\n * @author zhixin wen \n * @contributor Ghislain B.\n */.ms-dark-mode{--ms-checkbox-color: rgb(26.2195121951, 188.7804878049, 174.3597560976);--ms-checkbox-hover-color: rgb(28.0853658537, 202.2146341463, 186.7676829268);--ms-checkbox-icon-container-border: 1px solid #797979;--ms-choice-border: 1px solid #757575;--ms-choice-bgcolor: #262b2f;--ms-choice-color: #d4d4d4;--ms-choice-focus-border-color: rgb(23.1097560976, 166.3902439024, 153.6798780488);--ms-choice-focus-box-shadow: 0 0 0 2px rgba(20, 144, 133, 0.2);--ms-drop-background: #2a2f34;--ms-drop-border: 1px solid #585858;--ms-drop-color: #cccccc;--ms-drop-hide-radio-hover-bgcolor: rgb(16.8902439024, 121.6097560976, 112.3201219512);--ms-drop-option-divider-border-top: 1px solid #696969;--ms-drop-scrollbar-color: #828282 #424242;--ms-icon-color: #bcbcbc;--ms-icon-color-hover: #d0d0d0;--ms-option-highlight-bg-color: rgb(13.7804878049, 99.2195121951, 91.6402439024);--ms-ok-button-bg-color: #262b2f;--ms-ok-button-bg-hover-color: #24282c;--ms-ok-button-border-color: #4a4a4a;--ms-ok-button-text-color: rgb(23.1097560976, 166.3902439024, 153.6798780488);--ms-ok-button-text-hover-color: rgb(23.1097560976, 166.3902439024, 153.6798780488);--ms-optgroup-color: #fff;--ms-search-input-bg-color: #2f353a;--ms-search-input-color: #d4d4d4;--ms-search-input-border: 1px solid #757575;--ms-select-all-border-bottom: 1px solid #5d5d5d;--ms-select-all-text-color: #fff;--ms-select-all-text-font-weight: bold}/*!\n * Multiple-Select-Vanilla styling\n * @author zhixin wen \n * @contributor Ghislain B.\n */.ms-icon-caret{--ms-icon-caret-icon-svg: url(${m});-webkit-mask:var(--ms-icon-caret-icon-svg) no-repeat;mask:var(--ms-icon-caret-icon-svg) no-repeat;mask-size:100% 100%;-webkit-mask-size:100% 100%}.ms-icon-close{--ms-icon-close-icon-svg: url(${f});-webkit-mask:var(--ms-icon-close-icon-svg) no-repeat;mask:var(--ms-icon-close-icon-svg) no-repeat;mask-size:100% 100%;-webkit-mask-size:100% 100%}.ms-icon-check{--ms-icon-check-icon-svg: url(${_});-webkit-mask:var(--ms-icon-check-icon-svg) no-repeat;mask:var(--ms-icon-check-icon-svg) no-repeat;mask-size:100% 100%;-webkit-mask-size:100% 100%}.ms-icon-minus{--ms-icon-minus-icon-svg: url(${v});-webkit-mask:var(--ms-icon-minus-icon-svg) no-repeat;mask:var(--ms-icon-minus-icon-svg) no-repeat;mask-size:100% 100%;-webkit-mask-size:100% 100%}.ms-icon-radio{--ms-icon-radio-icon-svg: url(${b});-webkit-mask:var(--ms-icon-radio-icon-svg) no-repeat;mask:var(--ms-icon-radio-icon-svg) no-repeat;mask-size:100% 100%;-webkit-mask-size:100% 100%}.ms-parent .ms-icon,.ms-drop .ms-icon{display:inline-block;background-color:currentColor;flex-shrink:0;color:var(--ms-icon-color, #444);font-size:var(--ms-icon-size, 1em);height:var(--ms-icon-size, 1em);width:var(--ms-icon-size, 1em)}.ms-parent .ms-icon:hover,.ms-drop .ms-icon:hover{color:var(--ms-icon-color-hover, #303030)}.ms-parent .ms-select-all,.ms-parent li:not(.hide-radio),.ms-drop .ms-select-all,.ms-drop li:not(.hide-radio){cursor:pointer}.ms-parent .ms-select-all.disabled,.ms-parent li:not(.hide-radio).disabled,.ms-drop .ms-select-all.disabled,.ms-drop li:not(.hide-radio).disabled{cursor:default}.ms-parent .ms-select-all .icon-checkbox-container,.ms-parent li:not(.hide-radio) .icon-checkbox-container,.ms-drop .ms-select-all .icon-checkbox-container,.ms-drop li:not(.hide-radio) .icon-checkbox-container{display:inline-flex;align-items:center;justify-content:center;height:var(--ms-checkbox-icon-container-height, 1.05rem);width:var(--ms-checkbox-icon-container-width, 1.05rem);border:var(--ms-checkbox-icon-container-border, 1px solid #d0d0d0);border-radius:.125rem}.ms-parent .ms-select-all .icon-checkbox-container div,.ms-parent li:not(.hide-radio) .icon-checkbox-container div,.ms-drop .ms-select-all .icon-checkbox-container div,.ms-drop li:not(.hide-radio) .icon-checkbox-container div{font-size:14px;color:var(--ms-checkbox-color, #149085)}.ms-parent .ms-select-all .icon-checkbox-container div:hover,.ms-parent li:not(.hide-radio) .icon-checkbox-container div:hover,.ms-drop .ms-select-all .icon-checkbox-container div:hover,.ms-drop li:not(.hide-radio) .icon-checkbox-container div:hover{color:var(--ms-checkbox-hover-color, rgb(18.1341463415, 130.5658536585, 120.5920731707))}.ms-parent .ms-select-all .icon-checkbox-container div.ms-icon-uncheck,.ms-parent li:not(.hide-radio) .icon-checkbox-container div.ms-icon-uncheck,.ms-drop .ms-select-all .icon-checkbox-container div.ms-icon-uncheck,.ms-drop li:not(.hide-radio) .icon-checkbox-container div.ms-icon-uncheck{visibility:hidden}.ms-parent .ms-select-all .icon-checkbox-container.radio,.ms-parent li:not(.hide-radio) .icon-checkbox-container.radio,.ms-drop .ms-select-all .icon-checkbox-container.radio,.ms-drop li:not(.hide-radio) .icon-checkbox-container.radio{border-radius:50%}.ms-parent .ms-select-all .icon-checkbox-container+span,.ms-parent li:not(.hide-radio) .icon-checkbox-container+span,.ms-drop .ms-select-all .icon-checkbox-container+span,.ms-drop li:not(.hide-radio) .icon-checkbox-container+span{display:inline-flex;align-items:center;column-gap:var(--ms-label-column-gap, 0);padding-left:var(--ms-label-text-padding-left, 8px)}.ms-offscreen{clip:rect(0 0 0 0) !important;width:1px !important;height:1px !important;border:0 !important;margin:0 !important;padding:0 !important;overflow:hidden !important;position:absolute !important;outline:0 !important;left:auto !important;top:auto !important}.ms-parent{display:inline-block;position:relative;vertical-align:middle}.ms-choice{display:flex;align-items:center;cursor:pointer;width:100%;height:26px;overflow:hidden;padding:var(--ms-choice-padding, 0 6px 0 8px);background-color:var(--ms-choice-bgcolor, #fff);border:var(--ms-choice-border, 1px solid #d0d0d0);border-radius:var(--ms-choice-border-radius, 4px);line-height:var(--ms-choice-line-height, 26px);color:var(--ms-choice-color, #444);text-align:var(--ms-choice-text-align, left);outline:var(--ms-drop-outline, 0);text-decoration:none;user-select:none;white-space:nowrap}.ms-choice:focus{border-color:var(--ms-choice-focus-border-color, rgb(219.8780487805, 250.1219512195, 247.4390243902));box-shadow:var(--ms-choice-focus-box-shadow, 0 0 0 1.5px rgba(20, 144, 133, 0.35))}.ms-choice.disabled{border:var(--ms-choice-disabled-border, 1px solid #ddd);background-color:var(--ms-choice-disabled-bgcolor, #f4f4f4);background-image:none;cursor:default}.ms-choice>span{display:flex;flex:1;align-items:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;column-gap:var(--ms-label-column-gap, 0)}.ms-choice>span.ms-placeholder{color:var(--ms-placeholder-color, #999)}.ms-choice>div.ms-icon-close{margin-right:2px}.ms-choice>div.ms-icon-caret{height:var(--ms-chevron-icon-size, 1.2em);width:var(--ms-chevron-icon-size, 1.2em)}.ms-choice>div.ms-icon-caret.open{transform:scaleY(-1)}.ms-drop{width:auto;min-width:100%;overflow:hidden;display:none;position:absolute;background:var(--ms-drop-background, #fff);border:var(--ms-drop-border, 1px solid #d0d0d0);border-radius:var(--ms-drop-border-radius, 4px);color:var(--ms-drop-color, #000);margin-top:var(--ms-drop-margin-top, -1px);padding:var(--ms-drop-padding, 0);z-index:var(--ms-drop-zindex, 1050)}.ms-drop.bottom{top:100%;box-shadow:var(--ms-drop-bottom-box-shadow, 0 4px 5px rgba(0, 0, 0, 0.15))}.ms-drop.top{bottom:100%;box-shadow:var(--ms-drop-top-box-shadow, 0 -4px 5px rgba(0, 0, 0, 0.15))}.ms-drop .ms-select-all{border-bottom:var(--ms-select-all-border-bottom, 1px solid #ddd);line-height:var(--ms-select-all-line-height, 18px);padding:var(--ms-select-all-padding, 4px);width:100%}.ms-drop .ms-select-all:hover{background-color:var(--ms-select-all-text-hover-color, transparent)}.ms-drop .ms-select-all.highlighted{background-color:var(--ms-option-highlight-bg-color, rgba(20, 144, 133, 0.08))}.ms-drop .ms-select-all label{display:inline-flex;align-items:center;font-weight:var(--ms-select-all-text-font-weight, normal);padding:var(--ms-select-all-label-padding, 4px);border:var(--ms-select-all-label-border, 1px solid transparent);color:var(--ms-select-all-text-color, rgb(16.8902439024, 121.6097560976, 112.3201219512));width:100%}.ms-drop .ms-select-all label:hover{cursor:pointer;border:var(--ms-select-all-label-hover-border, 1px solid transparent)}.ms-drop .ms-select-all label input{opacity:0;width:0;margin-left:0}.ms-drop .ms-select-all label div{display:inline-flex}.ms-drop .ms-ok-button{cursor:pointer;display:block;padding:var(--ms-ok-button-padding, 0);width:var(--ms-ok-button-width, 100%);height:var(--ms-ok-button-height, 26px);border-color:var(--ms-ok-button-border-color, #ccc);border-radius:var(--ms-ok-button-border-radius, 0 0 4px 4px);border-width:var(--ms-ok-button-border-width, 1px 0 0 0);text-align:var(--ms-ok-button-text-align, center);color:var(--ms-ok-button-text-color, #149085);font-weight:var(--ms-ok-button-font-weight, 600);background-color:var(--ms-ok-button-bg-color, #fff)}.ms-drop .ms-ok-button:hover{background-color:var(--ms-ok-button-bg-hover-color, #f9f9f9);color:var(--ms-ok-button-text-hover-color, rgb(16.8902439024, 121.6097560976, 112.3201219512))}.ms-search{display:flex;align-items:center;justify-content:center;box-sizing:border-box;position:relative;white-space:nowrap;width:100%;margin:var(--ms-search-margin, 0);min-height:var(--ms-search-min-height, 26px);padding:var(--ms-search-padding, 4px);z-index:var(--ms-search-zindex, 10000)}.ms-search input{box-shadow:none;font-family:sans-serif;height:auto !important;width:100%;color:var(--ms-search-input-color, #444);background-color:var(--ms-search-input-bg-color, #fff);border:var(--ms-search-input-border, 1px solid #b9b9b9);border-radius:var(--ms-search-input-border-radius, 5px);min-height:var(--ms-search-input-min-height, 24px);outline:var(--ms-search-input-outline, 0);padding:var(--ms-search-input-padding, 0 5px);margin:var(--ms-search-input-margin, 0)}.ms-search input::placeholder{color:var(--ms-search-input-placeholder, #999)}.ms-search span.ms-icon-close{cursor:pointer;height:var(--ms-icon-size, 1em);margin:var(--ms-search-icon-close-margin, 0 4px 0 7px)}.ms-drop ul{overflow:auto;outline:var(--ms-drop-outline, 0);margin:var(--ms-drop-list-margin, 0px);padding:var(--ms-drop-list-padding, 0px);scrollbar-color:var(--ms-drop-scrollbar-color, #c1c1c1 #f1f1f1)}.ms-drop ul>li{cursor:pointer;background-image:none;list-style:none;position:static;align-items:var(--ms-drop-list-item-align-items, center);display:var(--ms-drop-list-item-display, flex);padding:var(--ms-drop-list-item-padding, 0.25rem 8px)}.ms-drop ul>li .disabled{cursor:default;font-weight:normal !important;opacity:var(--ms-drop-list-item-disabled-opacity, 0.35);filter:var(--ms-drop-list-item-disabled-filter, Alpha(Opacity=35))}.ms-drop ul>li.multiple{display:block;float:left}.ms-drop ul>li.group{clear:both}.ms-drop ul>li.multiple label{width:100%;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ms-drop ul>li label{cursor:pointer;display:flex;align-items:center;font-weight:normal;position:relative;white-space:nowrap;flex:0 0 100%;margin-bottom:var(--ms-label-margin-bottom, 0);min-height:var(--ms-label-min-height, 1.25rem);padding:var(--ms-label-padding, 0 0 0 2px)}.ms-drop ul>li label.optgroup{color:var(--ms-optgroup-color, #000);font-weight:var(--ms-drop-optgroup-font-weight, bold)}.ms-drop ul>li.hide-radio{padding:var(--ms-drop-hide-radio-padding, 0)}.ms-drop ul>li.hide-radio:focus,.ms-drop ul>li.hide-radio:hover{background-color:var(--ms-drop-hide-radio-hover-bgcolor, #f8f9fa)}.ms-drop ul>li.hide-radio.selected{color:var(--ms-drop-hide-radio-selected-color, #fff);background-color:var(--ms-drop-hide-radio-selected-bgcolor, #149085)}.ms-drop ul>li.hide-radio label{margin-bottom:var(--ms-drop-hide-radio-label-margin-bottom, 0);padding:var(--ms-drop-hide-radio-label-padding, 5px 8px)}.ms-drop ul>li.hide-radio input{display:none}.ms-drop ul>li.option-level-1 label{padding-left:var(--ms-drop-list-item-level1-padding-left, 8px)}.ms-drop ul>li.option-divider{padding:var(--ms-drop-option-divider-padding, 0);border-top:var(--ms-drop-option-divider-border-top, 1px solid #e9ecef)}.ms-drop ul>li.highlighted{background-color:var(--ms-option-highlight-bg-color, rgba(20, 144, 133, 0.08))}.ms-drop input[type=radio],.ms-drop input[type=checkbox]{opacity:0;width:0;position:absolute;margin-left:var(--ms-drop-input-margin-left, -1.25rem);margin-top:var(--ms-drop-input-margin-top, 0.3rem);accent-color:var(--ms-checkbox-color, #149085)}.ms-drop input:focus{outline:var(--ms-input-focus-outline, none)}.ms-drop .ms-no-results{display:none}.ms-drop .ms-infinite-option{height:var(--ms-infinite-empty-option-height, 20px)}\n`,""]);const w=p},6493:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/* START cover the case that slider is visible on mouseover */\n.monaco-editor .minimap.slider-mouseover .minimap-slider {\n\topacity: 0;\n\ttransition: opacity 100ms linear;\n}\n.monaco-editor .minimap.slider-mouseover:hover .minimap-slider {\n\topacity: 1;\n}\n.monaco-editor .minimap.slider-mouseover .minimap-slider.active {\n\topacity: 1;\n}\n/* END cover the case that slider is visible on mouseover */\n.monaco-editor .minimap-slider .minimap-slider-horizontal {\n\tbackground: var(--vscode-minimapSlider-background);\n}\n.monaco-editor .minimap-slider:hover .minimap-slider-horizontal {\n\tbackground: var(--vscode-minimapSlider-hoverBackground);\n}\n.monaco-editor .minimap-slider.active .minimap-slider-horizontal {\n\tbackground: var(--vscode-minimapSlider-activeBackground);\n}\n.monaco-editor .minimap-shadow-visible {\n\tbox-shadow: var(--vscode-scrollbar-shadow) -6px 0 6px -6px inset;\n}\n.monaco-editor .minimap-shadow-hidden {\n\tposition: absolute;\n\twidth: 0;\n}\n.monaco-editor .minimap-shadow-visible {\n\tposition: absolute;\n\tleft: -6px;\n\twidth: 6px;\n\tpointer-events: none;\n}\n.monaco-editor.no-minimap-shadow .minimap-shadow-visible {\n\tposition: absolute;\n\tleft: -1px;\n\twidth: 1px;\n}\n\n/* 0.5s fade in/out for the minimap */\n.minimap.minimap-autohide-mouseover,\n.minimap.minimap-autohide-scroll {\n\topacity: 0;\n\ttransition: opacity 0.5s;\n}\n.minimap.minimap-autohide-scroll{\n\tpointer-events: none;\n}\n.minimap.minimap-autohide-mouseover:hover,\n.minimap.minimap-autohide-scroll.active {\n\topacity: 1;\n\tpointer-events: auto;\n}\n\n.monaco-editor .minimap {\n\tz-index: 5;\n}\n",""]);const a=r},6499:(e,t,i)=>{e.exports=i.p+"codicon.ttf"},6514:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-component.multiDiffEditor {\n\tbackground: var(--vscode-multiDiffEditor-background);\n\n\tposition: relative;\n\n\theight: 100%;\n\twidth: 100%;\n\n\toverflow-y: hidden;\n\n\t> div {\n\t\tposition: absolute;\n\t\ttop: 0px;\n\t\tleft: 0px;\n\n\t\theight: 100%;\n\t\twidth: 100%;\n\n\t\t&.placeholder {\n\t\t\tvisibility: hidden;\n\n\t\t\t&.visible {\n\t\t\t\tvisibility: visible;\n\t\t\t}\n\n\t\t\tdisplay: grid;\n\t\t\tplace-items: center;\n\t\t\tplace-content: center;\n\t\t}\n\t}\n\n\t.active {\n\t\t--vscode-multiDiffEditor-border: var(--vscode-focusBorder);\n\t}\n\n\t.multiDiffEntry {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tflex: 1;\n\t\toverflow: hidden;\n\n\n\t\t.collapse-button {\n\t\t\tmargin: 0 5px;\n\t\t\tcursor: pointer;\n\n\t\t\ta {\n\t\t\t\tdisplay: block;\n\t\t\t}\n\t\t}\n\n\t\t.header {\n\t\t\tz-index: 1000;\n\t\t\tbackground: var(--vscode-editor-background);\n\n\t\t\t&:not(.collapsed) .header-content {\n\t\t\t\tborder-bottom: 1px solid var(--vscode-sideBarSectionHeader-border);\n\t\t\t}\n\n\t\t\t.header-content {\n\t\t\t\tmargin: 8px 0px 0px 0px;\n\t\t\t\tpadding: 4px 5px;\n\n\t\t\t\tborder-top: 1px solid var(--vscode-multiDiffEditor-border);\n\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\n\t\t\t\tcolor: var(--vscode-foreground);\n\t\t\t\tbackground: var(--vscode-multiDiffEditor-headerBackground);\n\n\t\t\t\t&.shadow {\n\t\t\t\t\tbox-shadow: var(--vscode-scrollbar-shadow) 0px 6px 6px -6px;\n\t\t\t\t}\n\n\t\t\t\t.file-path {\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\tflex: 1;\n\t\t\t\t\tmin-width: 0;\n\n\t\t\t\t\t.title {\n\t\t\t\t\t\tfont-size: 14px;\n\t\t\t\t\t\tline-height: 22px;\n\n\t\t\t\t\t\t&.original {\n\t\t\t\t\t\t\tflex: 1;\n\t\t\t\t\t\t\tmin-width: 0;\n\t\t\t\t\t\t\ttext-overflow: ellipsis;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t.status {\n\t\t\t\t\t\tfont-weight: 600;\n\t\t\t\t\t\topacity: 0.75;\n\t\t\t\t\t\tmargin: 0px 10px;\n\t\t\t\t\t\tline-height: 22px;\n\n\t\t\t\t\t\t/*\n\t\t\t\t\t\t\tTODO@hediet: move colors from git extension to core!\n\t\t\t\t\t\t&.renamed {\n\t\t\t\t\t\t\tcolor: v ar(--vscode-gitDecoration-renamedResourceForeground);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t&.deleted {\n\t\t\t\t\t\t\tcolor: v ar(--vscode-gitDecoration-deletedResourceForeground);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t&.added {\n\t\t\t\t\t\t\tcolor: v ar(--vscode-gitDecoration-addedResourceForeground);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t*/\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t.actions {\n\t\t\t\t\tpadding: 0 8px;\n\t\t\t\t}\n\t\t\t}\n\n\n\t\t}\n\n\t\t.editorParent {\n\t\t\tflex: 1;\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\n\t\t\tborder-bottom: 1px solid var(--vscode-multiDiffEditor-border);\n\t\t\toverflow: hidden;\n\t\t}\n\n\t\t.editorContainer {\n\t\t\tflex: 1;\n\t\t}\n\t}\n}\n",""]);const a=r},6745:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,'/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.action-widget {\n\tfont-size: 13px;\n\tborder-radius: 0;\n\tmin-width: 100px;\n\tmax-width: 80vw;\n\tz-index: 40;\n\tdisplay: block;\n\twidth: 100%;\n\tborder: 1px solid var(--vscode-menu-border) !important;\n\tborder-radius: 5px;\n\tbackground-color: var(--vscode-menu-background);\n\tcolor: var(--vscode-menu-foreground);\n\tpadding: 4px;\n\tbox-shadow: 0 2px 8px var(--vscode-widget-shadow);\n}\n\n.context-view-block {\n\tposition: fixed;\n\tcursor: initial;\n\tleft: 0;\n\ttop: 0;\n\twidth: 100%;\n\theight: 100%;\n\tz-index: -1;\n}\n\n.context-view-pointerBlock {\n\tposition: fixed;\n\tcursor: initial;\n\tleft: 0;\n\ttop: 0;\n\twidth: 100%;\n\theight: 100%;\n\tz-index: 2;\n}\n\n.action-widget .monaco-list {\n\tuser-select: none;\n\t-webkit-user-select: none;\n\tborder: none !important;\n\tborder-width: 0 !important;\n}\n\n.action-widget .monaco-list:focus:before {\n\toutline: 0 !important;\n}\n\n.action-widget .monaco-list .monaco-scrollable-element {\n\toverflow: visible;\n}\n\n/** Styles for each row in the list element **/\n.action-widget .monaco-list .monaco-list-row {\n\tpadding: 0 4px 0 4px;\n\twhite-space: nowrap;\n\tcursor: pointer;\n\ttouch-action: none;\n\twidth: 100%;\n\tborder-radius: 3px;\n}\n\n.action-widget .monaco-list .monaco-list-row.action.focused:not(.option-disabled) {\n\tbackground-color: var(--vscode-list-activeSelectionBackground) !important;\n\tcolor: var(--vscode-list-activeSelectionForeground);\n\toutline: 1px solid var(--vscode-menu-selectionBorder, transparent);\n\toutline-offset: -1px;\n}\n\n.action-widget .monaco-list-row.group-header {\n\tcolor: var(--vscode-descriptionForeground) !important;\n\tfont-weight: 600;\n\tfont-size: 13px;\n}\n\n.action-widget .monaco-list-row.group-header:not(:first-of-type) {\n\tmargin-top: 2px;\n}\n\n.action-widget .monaco-scrollable-element .monaco-list-rows .monaco-list-row.separator {\n\tborder-top: 1px solid var(--vscode-editorHoverWidget-border);\n\tcolor: var(--vscode-descriptionForeground);\n\tfont-size: 12px;\n\tpadding: 0;\n\tmargin: 4px 0 0 0;\n\tcursor: default;\n\tuser-select: none;\n\tborder-radius: 0;\n}\n\n.action-widget .monaco-scrollable-element .monaco-list-rows .monaco-list-row.separator.focused {\n\toutline: 0 solid;\n\tbackground-color: transparent;\n\tborder-radius: 0;\n}\n\n.action-widget .monaco-list-row.separator:first-of-type {\n\tborder-top: none;\n\tmargin-top: 0;\n}\n\n.action-widget .monaco-list .group-header,\n.action-widget .monaco-list .option-disabled,\n.action-widget .monaco-list .option-disabled:before,\n.action-widget .monaco-list .option-disabled .focused,\n.action-widget .monaco-list .option-disabled .focused:before {\n\tcursor: default !important;\n\t-webkit-touch-callout: none;\n\t-webkit-user-select: none;\n\tuser-select: none;\n\tbackground-color: transparent !important;\n\toutline: 0 solid !important;\n}\n\n.action-widget .monaco-list-row.action {\n\tdisplay: flex;\n\tgap: 4px;\n\talign-items: center;\n}\n\n.action-widget .monaco-list-row.action.option-disabled,\n.action-widget .monaco-list:focus .monaco-list-row.focused.action.option-disabled,\n.action-widget .monaco-list-row.action.option-disabled .codicon,\n.action-widget .monaco-list:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused).option-disabled {\n\tcolor: var(--vscode-disabledForeground);\n}\n\n\n.action-widget .monaco-list-row.action:not(.option-disabled) .codicon {\n\tcolor: inherit;\n}\n\n.action-widget .monaco-list-row.action .title {\n\tflex: 1;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n}\n\n.action-widget .monaco-list-row.action .monaco-keybinding > .monaco-keybinding-key {\n\t\tbackground-color: var(--vscode-keybindingLabel-background);\n\t\tcolor: var(--vscode-keybindingLabel-foreground);\n\t\tborder-style: solid;\n\t\tborder-width: 1px;\n\t\tborder-radius: 3px;\n\t\tborder-color: var(--vscode-keybindingLabel-border);\n\t\tborder-bottom-color: var(--vscode-keybindingLabel-bottomBorder);\n\t\tbox-shadow: inset 0 -1px 0 var(--vscode-widget-shadow);\n}\n\n/* Action bar */\n\n.action-widget .action-widget-action-bar {\n\tbackground-color: var(--vscode-menu-background);\n\tborder-top: 1px solid var(--vscode-menu-border);\n\tmargin-top: 2px;\n}\n\n.action-widget .action-widget-action-bar::before {\n\tdisplay: block;\n\tcontent: "";\n\twidth: 100%;\n}\n\n.action-widget .action-widget-action-bar .actions-container {\n\tpadding: 4px 8px 2px 24px;\n}\n\n.action-widget-action-bar .action-label {\n\tcolor: var(--vscode-textLink-activeForeground);\n\tfont-size: 13px;\n\tline-height: 22px;\n\tpadding: 0;\n\tpointer-events: all;\n}\n\n.action-widget-action-bar .action-item {\n\tmargin-right: 16px;\n\tpointer-events: none;\n}\n\n.action-widget-action-bar .action-label:hover {\n\tbackground-color: transparent !important;\n}\n\n.monaco-action-bar .actions-container.highlight-toggled .action-label.checked {\n\t/* The important gives this rule precedence over the hover rule. */\n\tbackground: var(--vscode-actionBar-toggledBackground) !important;\n}\n\n.action-widget .monaco-list .monaco-list-row .description {\n\topacity: 0.7;\n\tmargin-left: 0.5em;\n}\n',""]);const a=r},6835:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .rendered-markdown kbd {\n\tbackground-color: var(--vscode-keybindingLabel-background);\n\tcolor: var(--vscode-keybindingLabel-foreground);\n\tborder-style: solid;\n\tborder-width: 1px;\n\tborder-radius: 3px;\n\tborder-color: var(--vscode-keybindingLabel-border);\n\tborder-bottom-color: var(--vscode-keybindingLabel-bottomBorder);\n\tbox-shadow: inset 0 -1px 0 var(--vscode-widget-shadow);\n\tvertical-align: middle;\n\tpadding: 1px 3px;\n}\n\n.rendered-markdown li:has(input[type=checkbox]) {\n\tlist-style-type: none;\n}\n",""]);const a=r},6889:e=>{e.exports='data:image/svg+xml;utf8,%3Csvg viewBox="0 0 24 24" display="inline-block" height="1em" width="1em" vertical-align="text-bottom" xmlns="http://www.w3.org/2000/svg" %3E%3Cpath fill="currentColor" d="M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z"/%3E%3C/svg%3E'},6953:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .margin-view-overlays .line-numbers {\n\tbottom: 0;\n\tfont-variant-numeric: tabular-nums;\n\tposition: absolute;\n\ttext-align: right;\n\tdisplay: inline-block;\n\tvertical-align: middle;\n\tbox-sizing: border-box;\n\tcursor: default;\n}\n\n.monaco-editor .relative-current-line-number {\n\ttext-align: left;\n\tdisplay: inline-block;\n\twidth: 100%;\n}\n\n.monaco-editor .margin-view-overlays .line-numbers.lh-odd {\n\tmargin-top: 1px;\n}\n\n.monaco-editor .line-numbers {\n\tcolor: var(--vscode-editorLineNumber-foreground);\n}\n\n.monaco-editor .line-numbers.active-line-number {\n\tcolor: var(--vscode-editorLineNumber-activeForeground);\n}\n",""]);const a=r},7160:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/* Suggest widget*/\n\n.monaco-editor .suggest-widget {\n\twidth: 430px;\n\tz-index: 40;\n\tdisplay: flex;\n\tflex-direction: column;\n\tborder-radius: 3px;\n}\n\n.monaco-editor .suggest-widget.message {\n\tflex-direction: row;\n\talign-items: center;\n}\n\n.monaco-editor .suggest-widget,\n.monaco-editor .suggest-details {\n\tflex: 0 1 auto;\n\twidth: 100%;\n\tborder-style: solid;\n\tborder-width: 1px;\n\tborder-color: var(--vscode-editorSuggestWidget-border);\n\tbackground-color: var(--vscode-editorSuggestWidget-background);\n}\n\n.monaco-editor.hc-black .suggest-widget,\n.monaco-editor.hc-black .suggest-details,\n.monaco-editor.hc-light .suggest-widget,\n.monaco-editor.hc-light .suggest-details {\n\tborder-width: 2px;\n}\n\n/* Styles for status bar part */\n\n\n.monaco-editor .suggest-widget .suggest-status-bar {\n\tbox-sizing: border-box;\n\tdisplay: none;\n\tflex-flow: row nowrap;\n\tjustify-content: space-between;\n\twidth: 100%;\n\tfont-size: 80%;\n\tpadding: 0 4px 0 4px;\n\tborder-top: 1px solid var(--vscode-editorSuggestWidget-border);\n\toverflow: hidden;\n}\n\n.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar {\n\tdisplay: flex;\n}\n\n.monaco-editor .suggest-widget .suggest-status-bar .left {\n\tpadding-right: 8px;\n}\n\n.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-label {\n\tcolor: var(--vscode-editorSuggestWidgetStatus-foreground);\n}\n\n.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label {\n\tmargin-right: 0;\n}\n\n.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label::after {\n\tcontent: ', ';\n\tmargin-right: 0.3em;\n}\n\n.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row > .contents > .main > .right > .readMore,\n.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row.focused.string-label > .contents > .main > .right > .readMore {\n\tdisplay: none;\n}\n\n.monaco-editor .suggest-widget.with-status-bar:not(.docs-side) .monaco-list .monaco-list-row:hover > .contents > .main > .right.can-expand-details > .details-label {\n\twidth: 100%;\n}\n\n/* Styles for Message element for when widget is loading or is empty */\n\n.monaco-editor .suggest-widget > .message {\n\tpadding-left: 22px;\n}\n\n/** Styles for the list element **/\n\n.monaco-editor .suggest-widget > .tree {\n\theight: 100%;\n\twidth: 100%;\n}\n\n.monaco-editor .suggest-widget .monaco-list {\n\tuser-select: none;\n\t-webkit-user-select: none;\n}\n\n/** Styles for each row in the list element **/\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row {\n\tdisplay: flex;\n\t-mox-box-sizing: border-box;\n\tbox-sizing: border-box;\n\tpadding-right: 10px;\n\tbackground-repeat: no-repeat;\n\tbackground-position: 2px 2px;\n\twhite-space: nowrap;\n\tcursor: pointer;\n\ttouch-action: none;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused {\n\tcolor: var(--vscode-editorSuggestWidget-selectedForeground);\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused .codicon {\n\tcolor: var(--vscode-editorSuggestWidget-selectedIconForeground);\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents {\n\tflex: 1;\n\theight: 100%;\n\toverflow: hidden;\n\tpadding-left: 2px;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main {\n\tdisplay: flex;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\twhite-space: pre;\n\tjustify-content: space-between;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .left,\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .right {\n\tdisplay: flex;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.focused) > .contents > .main .monaco-icon-label {\n\tcolor: var(--vscode-editorSuggestWidget-foreground);\n}\n\n.monaco-editor .suggest-widget:not(.frozen) .monaco-highlighted-label .highlight {\n\tfont-weight: bold;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main .monaco-highlighted-label .highlight {\n\tcolor: var(--vscode-editorSuggestWidget-highlightForeground);\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused > .contents > .main .monaco-highlighted-label .highlight {\n\tcolor: var(--vscode-editorSuggestWidget-focusHighlightForeground);\n}\n\n/** ReadMore Icon styles **/\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .header > .codicon-close,\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .right > .readMore::before {\n\tcolor: inherit;\n\topacity: 1;\n\tfont-size: 14px;\n\tcursor: pointer;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .header > .codicon-close {\n\tposition: absolute;\n\ttop: 6px;\n\tright: 2px;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .header > .codicon-close:hover,\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .right > .readMore:hover {\n\topacity: 1;\n}\n\n/** signature, qualifier, type/details opacity **/\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .right > .details-label {\n\topacity: 0.7;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .left > .signature-label {\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\topacity: 0.6;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .left > .qualifier-label {\n\tmargin-left: 12px;\n\topacity: 0.4;\n\tfont-size: 85%;\n\tline-height: initial;\n\ttext-overflow: ellipsis;\n\toverflow: hidden;\n\talign-self: center;\n}\n\n/** Type Info and icon next to the label in the focused completion item **/\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .right > .details-label {\n\tfont-size: 85%;\n\tmargin-left: 1.1em;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\twhite-space: nowrap;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .right > .details-label > .monaco-tokenized-source {\n\tdisplay: inline;\n}\n\n/** Details: if using CompletionItem#details, show on focus **/\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .right > .details-label {\n\tdisplay: none;\n}\n\n.monaco-editor .suggest-widget:not(.shows-details) .monaco-list .monaco-list-row.focused > .contents > .main > .right > .details-label {\n\tdisplay: inline;\n}\n\n/** Details: if using CompletionItemLabel#details, always show **/\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label) > .contents > .main > .right > .details-label,\n.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row.focused:not(.string-label) > .contents > .main > .right > .details-label {\n\tdisplay: inline;\n}\n\n/** Ellipsis on hover **/\n\n.monaco-editor .suggest-widget:not(.docs-side) .monaco-list .monaco-list-row.focused:hover > .contents > .main > .right.can-expand-details > .details-label {\n\twidth: calc(100% - 26px);\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .left {\n\tflex-shrink: 1;\n\tflex-grow: 1;\n\toverflow: hidden;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .left > .monaco-icon-label {\n\tflex-shrink: 0;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label) > .contents > .main > .left > .monaco-icon-label {\n\tmax-width: 100%;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label > .contents > .main > .left > .monaco-icon-label {\n\tflex-shrink: 1;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .right {\n\toverflow: hidden;\n\tflex-shrink: 4;\n\tmax-width: 70%;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row > .contents > .main > .right > .readMore {\n\tdisplay: inline-block;\n\tposition: absolute;\n\tright: 10px;\n\twidth: 18px;\n\theight: 18px;\n\tvisibility: hidden;\n}\n\n/** Do NOT display ReadMore when docs is side/below **/\n\n.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row > .contents > .main > .right > .readMore {\n\tdisplay: none !important;\n}\n\n/** Do NOT display ReadMore when using plain CompletionItemLabel (details/documentation might not be resolved) **/\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label > .contents > .main > .right > .readMore {\n\tdisplay: none;\n}\n\n/** Focused item can show ReadMore, but can't when docs is side/below **/\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused.string-label > .contents > .main > .right > .readMore {\n\tdisplay: inline-block;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused:hover > .contents > .main > .right > .readMore {\n\tvisibility: visible;\n}\n\n/** Styles for each row in the list **/\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated {\n\topacity: 0.66;\n\ttext-decoration: unset;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated > .monaco-icon-label-container > .monaco-icon-name-container {\n\ttext-decoration: line-through;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label::before {\n\theight: 100%;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon {\n\tdisplay: block;\n\theight: 16px;\n\twidth: 16px;\n\tmargin-left: 2px;\n\tbackground-repeat: no-repeat;\n\tbackground-size: 80%;\n\tbackground-position: center;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.hide {\n\tdisplay: none;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row .suggest-icon {\n\tdisplay: flex;\n\talign-items: center;\n\tmargin-right: 4px;\n}\n\n.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .icon,\n.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .suggest-icon::before {\n\tdisplay: none;\n}\n\n.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.customcolor .colorspan {\n\tmargin: 0 0 0 0.3em;\n\tborder: 0.1em solid #000;\n\twidth: 0.7em;\n\theight: 0.7em;\n\tdisplay: inline-block;\n}\n\n/** Styles for the docs of the completion item in focus **/\n\n.monaco-editor .suggest-details-container {\n\tz-index: 41;\n}\n\n.monaco-editor .suggest-details {\n\tdisplay: flex;\n\tflex-direction: column;\n\tcursor: default;\n\tcolor: var(--vscode-editorSuggestWidget-foreground);\n}\n\n.monaco-editor .suggest-details:focus {\n\tborder-color: var(--vscode-focusBorder);\n}\n\n.monaco-editor .suggest-details a {\n\tcolor: var(--vscode-textLink-foreground);\n}\n\n.monaco-editor .suggest-details a:hover {\n\tcolor: var(--vscode-textLink-activeForeground);\n}\n\n.monaco-editor .suggest-details code {\n\tbackground-color: var(--vscode-textCodeBlock-background);\n}\n\n.monaco-editor .suggest-details.no-docs {\n\tdisplay: none;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element {\n\tflex: 1;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body {\n\tbox-sizing: border-box;\n\theight: 100%;\n\twidth: 100%;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .header > .type {\n\tflex: 2;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\topacity: 0.7;\n\twhite-space: pre;\n\tmargin: 0 24px 0 0;\n\tpadding: 4px 0 4px 5px;\n}\n\n.monaco-editor .suggest-details.detail-and-doc > .monaco-scrollable-element > .body > .header > .type {\n\tpadding-bottom: 12px;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .header > .type.auto-wrap {\n\twhite-space: normal;\n\tword-break: break-all;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .docs {\n\tmargin: 0;\n\tpadding: 4px 5px;\n\twhite-space: pre-wrap;\n}\n\n.monaco-editor .suggest-details.no-type > .monaco-scrollable-element > .body > .docs {\n\tmargin-right: 24px;\n\toverflow: hidden;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .docs.markdown-docs {\n\tpadding: 0;\n\twhite-space: initial;\n\tmin-height: calc(1rem + 8px);\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .docs.markdown-docs > div,\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .docs.markdown-docs > span:not(:empty) {\n\tpadding: 4px 5px;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .docs.markdown-docs > div > p:first-child {\n\tmargin-top: 0;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .docs.markdown-docs > div > p:last-child {\n\tmargin-bottom: 0;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .docs.markdown-docs .monaco-tokenized-source {\n\twhite-space: pre;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .docs .code {\n\twhite-space: pre-wrap;\n\tword-wrap: break-word;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > .docs.markdown-docs .codicon {\n\tvertical-align: sub;\n}\n\n.monaco-editor .suggest-details > .monaco-scrollable-element > .body > p:empty {\n\tdisplay: none;\n}\n\n.monaco-editor .suggest-details code {\n\tborder-radius: 3px;\n\tpadding: 0 0.4em;\n}\n\n.monaco-editor .suggest-details ul {\n\tpadding-left: 20px;\n}\n\n.monaco-editor .suggest-details ol {\n\tpadding-left: 20px;\n}\n\n.monaco-editor .suggest-details p code {\n\tfont-family: var(--monaco-monospace-font);\n}\n",""]);const a=r},7201:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .monaco-editor-overlaymessage {\n\tpadding-bottom: 8px;\n\tz-index: 10000;\n}\n\n.monaco-editor .monaco-editor-overlaymessage.below {\n\tpadding-bottom: 0;\n\tpadding-top: 8px;\n\tz-index: 10000;\n}\n\n@keyframes fadeIn {\n\tfrom { opacity: 0; }\n\tto { opacity: 1; }\n}\n.monaco-editor .monaco-editor-overlaymessage.fadeIn {\n\tanimation: fadeIn 150ms ease-out;\n}\n\n@keyframes fadeOut {\n\tfrom { opacity: 1; }\n\tto { opacity: 0; }\n}\n.monaco-editor .monaco-editor-overlaymessage.fadeOut {\n\tanimation: fadeOut 100ms ease-out;\n}\n\n.monaco-editor .monaco-editor-overlaymessage .message {\n\tpadding: 2px 4px;\n\tcolor: var(--vscode-editorHoverWidget-foreground);\n\tbackground-color: var(--vscode-editorHoverWidget-background);\n\tborder: 1px solid var(--vscode-inputValidation-infoBorder);\n\tborder-radius: 3px;\n}\n\n.monaco-editor .monaco-editor-overlaymessage .message p {\n\tmargin-block: 0px;\n}\n\n.monaco-editor .monaco-editor-overlaymessage .message a {\n\tcolor: var(--vscode-textLink-foreground);\n}\n\n.monaco-editor .monaco-editor-overlaymessage .message a:hover {\n\tcolor: var(--vscode-textLink-activeForeground);\n}\n\n.monaco-editor.hc-black .monaco-editor-overlaymessage .message,\n.monaco-editor.hc-light .monaco-editor-overlaymessage .message {\n\tborder-width: 2px;\n}\n\n.monaco-editor .monaco-editor-overlaymessage .anchor {\n\twidth: 0 !important;\n\theight: 0 !important;\n\tborder-color: transparent;\n\tborder-style: solid;\n\tz-index: 1000;\n\tborder-width: 8px;\n\tposition: absolute;\n\tleft: 2px;\n}\n\n.monaco-editor .monaco-editor-overlaymessage .anchor.top {\n\tborder-bottom-color: var(--vscode-inputValidation-infoBorder);\n}\n\n.monaco-editor .monaco-editor-overlaymessage .anchor.below {\n\tborder-top-color: var(--vscode-inputValidation-infoBorder);\n}\n\n.monaco-editor .monaco-editor-overlaymessage:not(.below) .anchor.top,\n.monaco-editor .monaco-editor-overlaymessage.below .anchor.below {\n\tdisplay: none;\n}\n\n.monaco-editor .monaco-editor-overlaymessage.below .anchor.top {\n\tdisplay: inherit;\n\ttop: -8px;\n}\n",""]);const a=r},7340:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-list {\n\tposition: relative;\n\theight: 100%;\n\twidth: 100%;\n\twhite-space: nowrap;\n}\n\n.monaco-list.mouse-support {\n\tuser-select: none;\n\t-webkit-user-select: none;\n}\n\n.monaco-list > .monaco-scrollable-element {\n\theight: 100%;\n}\n\n.monaco-list-rows {\n\tposition: relative;\n\twidth: 100%;\n\theight: 100%;\n}\n\n.monaco-list.horizontal-scrolling .monaco-list-rows {\n\twidth: auto;\n\tmin-width: 100%;\n}\n\n.monaco-list-row {\n\tposition: absolute;\n\tbox-sizing: border-box;\n\toverflow: hidden;\n\twidth: 100%;\n}\n\n.monaco-list.mouse-support .monaco-list-row {\n\tcursor: pointer;\n\ttouch-action: none;\n}\n\n/* Make sure the scrollbar renders above overlays (sticky scroll) */\n.monaco-list .monaco-scrollable-element > .scrollbar.vertical,\n.monaco-pane-view > .monaco-split-view2.vertical > .monaco-scrollable-element > .scrollbar.vertical {\n\tz-index: 14;\n}\n\n/* for OS X ballistic scrolling */\n.monaco-list-row.scrolling {\n\tdisplay: none !important;\n}\n\n/* Focus */\n.monaco-list.element-focused,\n.monaco-list.selection-single,\n.monaco-list.selection-multiple {\n\toutline: 0 !important;\n}\n\n/* Filter */\n\n.monaco-list-type-filter-message {\n\tposition: absolute;\n\tbox-sizing: border-box;\n\twidth: 100%;\n\theight: 100%;\n\ttop: 0;\n\tleft: 0;\n\tpadding: 40px 1em 1em 1em;\n\ttext-align: center;\n\twhite-space: normal;\n\topacity: 0.7;\n\tpointer-events: none;\n}\n\n.monaco-list-type-filter-message:empty {\n\tdisplay: none;\n}\n",""]);const a=r},7375:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n.monaco-editor .lines-decorations {\n\tposition: absolute;\n\ttop: 0;\n\tbackground: white;\n}\n\n/*\n\tKeeping name short for faster parsing.\n\tcldr = core lines decorations rendering (div)\n*/\n.monaco-editor .margin-view-overlays .cldr {\n\tposition: absolute;\n\theight: 100%;\n}",""]);const a=r},7492:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.quick-input-widget {\n\tposition: absolute;\n\twidth: 600px;\n\tz-index: 2550;\n\tleft: 50%;\n\t-webkit-app-region: no-drag;\n\tborder-radius: 6px;\n}\n\n.quick-input-titlebar {\n\tcursor: grab;\n\tdisplay: flex;\n\talign-items: center;\n\tborder-top-right-radius: 5px;\n\tborder-top-left-radius: 5px;\n}\n\n.quick-input-left-action-bar {\n\tdisplay: flex;\n\tmargin-left: 4px;\n\tflex: 1;\n}\n\n/* give some space between input and action bar */\n.quick-input-inline-action-bar > .actions-container > .action-item:first-child {\n\tmargin-left: 5px;\n}\n\n/* center horizontally */\n.quick-input-inline-action-bar > .actions-container > .action-item {\n\tmargin-top: 2px;\n}\n\n.quick-input-title {\n\tcursor: grab;\n\tpadding: 3px 0px;\n\ttext-align: center;\n\ttext-overflow: ellipsis;\n\toverflow: hidden;\n}\n\n.quick-input-right-action-bar {\n\tdisplay: flex;\n\tmargin-right: 4px;\n\tflex: 1;\n}\n\n.quick-input-right-action-bar > .actions-container {\n\tjustify-content: flex-end;\n}\n\n.quick-input-right-action-bar > .actions-container > .action-item {\n\tmargin-left: 4px;\n}\n\n.quick-input-titlebar .monaco-action-bar .action-label.codicon {\n\tbackground-position: center;\n\tbackground-repeat: no-repeat;\n\tpadding: 2px;\n}\n\n.quick-input-description {\n\tmargin: 6px 6px 6px 11px;\n}\n\n.quick-input-header .quick-input-description {\n\tmargin: 4px 2px;\n\tflex: 1;\n}\n\n.quick-input-header {\n\tcursor: grab;\n\tdisplay: flex;\n\tpadding: 6px 6px 2px 6px;\n}\n\n.quick-input-widget.hidden-input .quick-input-header {\n\t/* reduce margins and paddings when input box hidden */\n\tpadding: 0;\n\tmargin-bottom: 0;\n}\n\n.quick-input-and-message {\n\tdisplay: flex;\n\tflex-direction: column;\n\tflex-grow: 1;\n\tmin-width: 0;\n\tposition: relative;\n}\n\n.quick-input-check-all {\n\talign-self: center;\n\tmargin: 0;\n}\n\n.quick-input-widget .quick-input-header .monaco-checkbox {\n\tmargin-top: 6px;\n}\n\n.quick-input-filter {\n\tflex-grow: 1;\n\tdisplay: flex;\n\tposition: relative;\n}\n\n.quick-input-box {\n\tflex-grow: 1;\n}\n\n.quick-input-widget.show-checkboxes .quick-input-box,\n.quick-input-widget.show-checkboxes .quick-input-message {\n\tmargin-left: 5px;\n}\n\n.quick-input-visible-count {\n\tposition: absolute;\n\tleft: -10000px;\n}\n\n.quick-input-count {\n\talign-self: center;\n\tposition: absolute;\n\tright: 4px;\n\tdisplay: flex;\n\talign-items: center;\n}\n\n.quick-input-count .monaco-count-badge {\n\tvertical-align: middle;\n\tpadding: 2px 4px;\n\tborder-radius: 2px;\n\tmin-height: auto;\n\tline-height: normal;\n}\n\n.quick-input-action {\n\tmargin-left: 6px;\n}\n\n.quick-input-action .monaco-text-button {\n\tfont-size: 11px;\n\tpadding: 0 6px;\n\tdisplay: flex;\n\theight: 25px;\n\talign-items: center;\n}\n\n.quick-input-message {\n\tmargin-top: -1px;\n\tpadding: 5px;\n\toverflow-wrap: break-word;\n}\n\n.quick-input-message > .codicon {\n\tmargin: 0 0.2em;\n\tvertical-align: text-bottom;\n}\n\n/* Links in descriptions & validations */\n.quick-input-message a {\n\tcolor: inherit;\n}\n\n.quick-input-progress.monaco-progress-container {\n\tposition: relative;\n}\n\n.quick-input-list {\n\tline-height: 22px;\n}\n\n.quick-input-widget.hidden-input .quick-input-list {\n\tmargin-top: 4px;\n\t/* reduce margins when input box hidden */\n\tpadding-bottom: 4px;\n}\n\n.quick-input-list .monaco-list {\n\toverflow: hidden;\n\tmax-height: calc(20 * 22px);\n\tpadding-bottom: 5px;\n}\n\n.quick-input-list .monaco-scrollable-element {\n\tpadding: 0px 6px;\n}\n\n.quick-input-list .quick-input-list-entry {\n\tbox-sizing: border-box;\n\toverflow: hidden;\n\tdisplay: flex;\n\tpadding: 0 6px;\n}\n\n.quick-input-list .quick-input-list-entry.quick-input-list-separator-border {\n\tborder-top-width: 1px;\n\tborder-top-style: solid;\n}\n\n.quick-input-list .monaco-list-row {\n\tborder-radius: 3px;\n}\n\n.quick-input-list .monaco-list-row[data-index=\"0\"] .quick-input-list-entry.quick-input-list-separator-border {\n\tborder-top-style: none;\n}\n\n.quick-input-list .quick-input-list-label {\n\toverflow: hidden;\n\tdisplay: flex;\n\theight: 100%;\n\tflex: 1;\n}\n\n.quick-input-widget .monaco-checkbox {\n\tmargin-right: 0;\n}\n\n.quick-input-widget .quick-input-list .monaco-checkbox,\n.quick-input-widget .quick-input-tree .monaco-checkbox {\n\tmargin-top: 4px;\n}\n\n.quick-input-list .quick-input-list-icon {\n\tbackground-size: 16px;\n\tbackground-position: left center;\n\tbackground-repeat: no-repeat;\n\tpadding-right: 6px;\n\twidth: 16px;\n\theight: 22px;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n}\n\n.quick-input-list .quick-input-list-rows {\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\tdisplay: flex;\n\tflex-direction: column;\n\theight: 100%;\n\tflex: 1;\n\tmargin-left: 5px;\n}\n\n.quick-input-list .quick-input-list-rows > .quick-input-list-row {\n\tdisplay: flex;\n\talign-items: center;\n}\n\n.quick-input-list .quick-input-list-rows > .quick-input-list-row .monaco-icon-label,\n.quick-input-list .quick-input-list-rows > .quick-input-list-row .monaco-icon-label .monaco-icon-label-container > .monaco-icon-name-container {\n\tflex: 1;\n\t/* make sure the icon label grows within the row */\n}\n\n.quick-input-list .quick-input-list-rows > .quick-input-list-row .codicon[class*='codicon-'] {\n\tvertical-align: text-bottom;\n}\n\n.quick-input-list .quick-input-list-rows .monaco-highlighted-label > span {\n\topacity: 1;\n}\n\n.quick-input-list .quick-input-list-entry .quick-input-list-entry-keybinding {\n\tmargin-right: 8px;\n\t/* separate from the separator label or scrollbar if any */\n}\n\n.quick-input-list .quick-input-list-label-meta {\n\topacity: 0.7;\n\tline-height: normal;\n\ttext-overflow: ellipsis;\n\toverflow: hidden;\n}\n\n/* preserve list-like styling instead of tree-like styling */\n.quick-input-list .monaco-list .monaco-list-row .monaco-highlighted-label .highlight {\n\tfont-weight: bold;\n\tbackground-color: unset;\n\tcolor: var(--vscode-list-highlightForeground) !important;\n}\n\n/* preserve list-like styling instead of tree-like styling */\n.quick-input-list .monaco-list .monaco-list-row.focused .monaco-highlighted-label .highlight {\n\tcolor: var(--vscode-list-focusHighlightForeground) !important;\n}\n\n.quick-input-list .quick-input-list-entry .quick-input-list-separator {\n\tmargin-right: 4px;\n\t/* separate from keybindings or actions */\n}\n\n.quick-input-list .quick-input-list-entry-action-bar {\n\tdisplay: flex;\n\tflex: 0;\n\toverflow: visible;\n}\n\n.quick-input-list .quick-input-list-entry-action-bar .action-label {\n\t/*\n\t * By default, actions in the quick input action bar are hidden\n\t * until hovered over them or selected.\n\t */\n\tdisplay: none;\n}\n\n.quick-input-list .quick-input-list-entry-action-bar .action-label.codicon {\n\tmargin-right: 4px;\n\tpadding: 2px;\n}\n\n.quick-input-list .quick-input-list-entry-action-bar {\n\tmargin-top: 1px;\n}\n\n.quick-input-list .quick-input-list-entry-action-bar {\n\tmargin-right: 4px;\n\t/* separate from scrollbar */\n}\n\n.quick-input-list .quick-input-list-entry .quick-input-list-entry-action-bar .action-label.always-visible,\n.quick-input-list .quick-input-list-entry:hover .quick-input-list-entry-action-bar .action-label,\n.quick-input-list .quick-input-list-entry.focus-inside .quick-input-list-entry-action-bar .action-label,\n.quick-input-list .monaco-list-row.focused .quick-input-list-entry-action-bar .action-label,\n.quick-input-list .monaco-list-row.passive-focused .quick-input-list-entry-action-bar .action-label {\n\tdisplay: flex;\n}\n\n.quick-input-list > .monaco-list:focus .monaco-list-row.focused {\n\toutline: 1px solid var(--vscode-list-focusOutline) !important;\n\toutline-offset: -1px;\n}\n\n.quick-input-list > .monaco-list:focus .monaco-list-row.focused .quick-input-list-entry.quick-input-list-separator-border {\n\tborder-color: transparent;\n}\n\n/* focused items in quick pick */\n.quick-input-list .monaco-list-row.focused .monaco-keybinding-key,\n.quick-input-list .monaco-list-row.focused .quick-input-list-entry .quick-input-list-separator {\n\tcolor: inherit\n}\n\n.quick-input-list .monaco-list-row.focused .monaco-keybinding-key {\n\tbackground: none;\n}\n\n.quick-input-list .quick-input-list-separator-as-item {\n\tpadding: 4px 6px;\n\tfont-size: 12px;\n}\n\n/* Quick input separators as full-row item */\n.quick-input-list .quick-input-list-separator-as-item .label-name {\n\tfont-weight: 600;\n}\n\n.quick-input-list .quick-input-list-separator-as-item .label-description {\n\t/* Override default description opacity so we don't have a contrast ratio issue. */\n\topacity: 1 !important;\n}\n\n/* Hide border when the item becomes the sticky one */\n.quick-input-list .monaco-tree-sticky-row .quick-input-list-entry.quick-input-list-separator-as-item.quick-input-list-separator-border {\n\tborder-top-style: none;\n}\n\n/* Give sticky row the same padding as the scrollable list */\n.quick-input-list .monaco-tree-sticky-row {\n\tpadding: 0 5px;\n}\n\n/* Hide the twistie containers so that there isn't blank indent */\n.quick-input-list .monaco-tl-twistie {\n\tdisplay: none !important;\n}\n\n/* Tree */\n\n.quick-input-tree .monaco-list {\n\toverflow: hidden;\n\tmax-height: calc(20 * 22px);\n\tpadding-bottom: 5px;\n}\n\n.quick-input-tree .quick-input-tree-entry {\n\tbox-sizing: border-box;\n\toverflow: hidden;\n\tdisplay: flex;\n\tpadding: 0 6px;\n}\n\n.quick-input-tree .quick-input-tree-label {\n\toverflow: hidden;\n\tdisplay: flex;\n\theight: 100%;\n\tflex: 1;\n}\n\n.quick-input-tree .quick-input-tree-icon {\n\tbackground-size: 16px;\n\tbackground-position: left center;\n\tbackground-repeat: no-repeat;\n\tpadding-right: 6px;\n\twidth: 16px;\n\theight: 22px;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n}\n\n.quick-input-tree .quick-input-tree-rows {\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\tdisplay: flex;\n\tflex-direction: column;\n\theight: 100%;\n\tflex: 1;\n\tmargin-left: 5px;\n}\n\n.quick-input-tree .quick-input-tree-rows > .quick-input-tree-row {\n\tdisplay: flex;\n\talign-items: center;\n}\n\n.quick-input-tree .quick-input-tree-rows > .quick-input-tree-row .monaco-icon-label,\n.quick-input-tree .quick-input-tree-rows > .quick-input-tree-row .monaco-icon-label .monaco-icon-label-container > .monaco-icon-name-container {\n\tflex: 1;\n\t/* make sure the icon label grows within the row */\n}\n\n.quick-input-tree .quick-input-tree-rows > .quick-input-tree-row .codicon[class*='codicon-'] {\n\tvertical-align: text-bottom;\n}\n\n.quick-input-tree .quick-input-tree-rows .monaco-highlighted-label > span {\n\topacity: 1;\n}\n\n.quick-input-tree .quick-input-tree-entry-action-bar {\n\tdisplay: flex;\n\tflex: 0;\n\toverflow: visible;\n}\n\n.quick-input-tree .quick-input-tree-entry-action-bar .action-label {\n\t/*\n\t * By default, actions in the quick input action bar are hidden\n\t * until hovered over them or selected.\n\t */\n\tdisplay: none;\n}\n\n.quick-input-tree .quick-input-tree-entry-action-bar .action-label.codicon {\n\tmargin-right: 4px;\n\tpadding: 2px;\n}\n\n.quick-input-tree .quick-input-tree-entry-action-bar {\n\tmargin-top: 1px;\n}\n\n.quick-input-tree .quick-input-tree-entry-action-bar {\n\tmargin-right: 4px;\n\t/* separate from scrollbar */\n}\n\n.quick-input-tree .quick-input-tree-entry .quick-input-tree-entry-action-bar .action-label.always-visible,\n.quick-input-tree .quick-input-tree-entry:hover .quick-input-tree-entry-action-bar .action-label,\n.quick-input-tree .quick-input-tree-entry.focus-inside .quick-input-tree-entry-action-bar .action-label,\n.quick-input-tree .monaco-list-row.focused .quick-input-tree-entry-action-bar .action-label,\n.quick-input-tree .monaco-list-row.passive-focused .quick-input-tree-entry-action-bar .action-label {\n\tdisplay: flex;\n}\n\n.quick-input-tree > .monaco-list:focus .monaco-list-row.focused {\n\toutline: 1px solid var(--vscode-list-focusOutline) !important;\n\toutline-offset: -1px;\n}\n",""]);const a=r},7584:e=>{e.exports="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCA1MyAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDguMDM2NCA0LjAxMDQySDQuMDA3NzlMNC4wMDc3OSAzMi4wMjg2SDQ4LjAzNjRWNC4wMTA0MlpNNC4wMDc3OSAwLjAwNzgxMjVDMS43OTcyMSAwLjAwNzgxMjUgMC4wMDUxODc5OSAxLjc5OTg0IDAuMDA1MTg3OTkgNC4wMTA0MlYzMi4wMjg2QzAuMDA1MTg3OTkgMzQuMjM5MiAxLjc5NzIxIDM2LjAzMTIgNC4wMDc3OSAzNi4wMzEySDQ4LjAzNjRDNTAuMjQ3IDM2LjAzMTIgNTIuMDM5IDM0LjIzOTIgNTIuMDM5IDMyLjAyODZWNC4wMTA0MkM1Mi4wMzkgMS43OTk4NCA1MC4yNDcgMC4wMDc4MTI1IDQ4LjAzNjQgMC4wMDc4MTI1SDQuMDA3NzlaTTguMDEwNDIgOC4wMTMwMkgxMi4wMTNWMTIuMDE1Nkg4LjAxMDQyVjguMDEzMDJaTTIwLjAxODIgOC4wMTMwMkgxNi4wMTU2VjEyLjAxNTZIMjAuMDE4MlY4LjAxMzAyWk0yNC4wMjA4IDguMDEzMDJIMjguMDIzNFYxMi4wMTU2SDI0LjAyMDhWOC4wMTMwMlpNMzYuMDI4NiA4LjAxMzAySDMyLjAyNlYxMi4wMTU2SDM2LjAyODZWOC4wMTMwMlpNNDAuMDMxMiA4LjAxMzAySDQ0LjAzMzlWMTIuMDE1Nkg0MC4wMzEyVjguMDEzMDJaTTE2LjAxNTYgMTYuMDE4Mkg4LjAxMDQyVjIwLjAyMDhIMTYuMDE1NlYxNi4wMTgyWk0yMC4wMTgyIDE2LjAxODJIMjQuMDIwOFYyMC4wMjA4SDIwLjAxODJWMTYuMDE4MlpNMzIuMDI2IDE2LjAxODJIMjguMDIzNFYyMC4wMjA4SDMyLjAyNlYxNi4wMTgyWk00NC4wMzM5IDE2LjAxODJWMjAuMDIwOEgzNi4wMjg2VjE2LjAxODJINDQuMDMzOVpNMTIuMDEzIDI0LjAyMzRIOC4wMTA0MlYyOC4wMjZIMTIuMDEzVjI0LjAyMzRaTTE2LjAxNTYgMjQuMDIzNEgzNi4wMjg2VjI4LjAyNkgxNi4wMTU2VjI0LjAyMzRaTTQ0LjAzMzkgMjQuMDIzNEg0MC4wMzEyVjI4LjAyNkg0NC4wMzM5VjI0LjAyMzRaIiBmaWxsPSIjNDI0MjQyIi8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cmVjdCB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg=="},7619:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/* Use custom CSS vars to expose padding into parent select for padding calculation */\n.monaco-select-box-dropdown-padding {\n\t--dropdown-padding-top: 1px;\n\t--dropdown-padding-bottom: 1px;\n}\n\n.hc-black .monaco-select-box-dropdown-padding,\n.hc-light .monaco-select-box-dropdown-padding {\n\t--dropdown-padding-top: 3px;\n\t--dropdown-padding-bottom: 4px;\n}\n\n.monaco-select-box-dropdown-container {\n\tdisplay: none;\n\tbox-sizing:\tborder-box;\n}\n\n.monaco-select-box-dropdown-container > .select-box-details-pane > .select-box-description-markdown * {\n\tmargin: 0;\n}\n\n.monaco-select-box-dropdown-container > .select-box-details-pane > .select-box-description-markdown a:focus {\n\toutline: 1px solid -webkit-focus-ring-color;\n\toutline-offset: -1px;\n}\n\n.monaco-select-box-dropdown-container > .select-box-details-pane > .select-box-description-markdown code {\n\tline-height: 15px; /** For some reason, this is needed, otherwise will take up 20px height */\n\tfont-family: var(--monaco-monospace-font);\n}\n\n\n.monaco-select-box-dropdown-container.visible {\n\tdisplay: flex;\n\tflex-direction: column;\n\ttext-align: left;\n\twidth: 1px;\n\toverflow: hidden;\n\tborder-bottom-left-radius: 3px;\n\tborder-bottom-right-radius: 3px;\n}\n\n.monaco-select-box-dropdown-container > .select-box-dropdown-list-container {\n\tflex: 0 0 auto;\n\talign-self: flex-start;\n\tpadding-top: var(--dropdown-padding-top);\n\tpadding-bottom: var(--dropdown-padding-bottom);\n\tpadding-left: 1px;\n\tpadding-right: 1px;\n\twidth: 100%;\n\toverflow: hidden;\n\tbox-sizing:\tborder-box;\n}\n\n.monaco-select-box-dropdown-container > .select-box-details-pane {\n\tpadding: 5px;\n}\n\n.hc-black .monaco-select-box-dropdown-container > .select-box-dropdown-list-container {\n\tpadding-top: var(--dropdown-padding-top);\n\tpadding-bottom: var(--dropdown-padding-bottom);\n}\n\n.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row {\n\tcursor: pointer;\n}\n\n.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row > .option-text {\n\ttext-overflow: ellipsis;\n\toverflow: hidden;\n\tpadding-left: 3.5px;\n\twhite-space: nowrap;\n\tfloat: left;\n}\n\n.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row > .option-detail {\n\ttext-overflow: ellipsis;\n\toverflow: hidden;\n\tpadding-left: 3.5px;\n\twhite-space: nowrap;\n\tfloat: left;\n\topacity: 0.7;\n}\n\n.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row > .option-decorator-right {\n\ttext-overflow: ellipsis;\n\toverflow: hidden;\n\tpadding-right: 10px;\n\twhite-space: nowrap;\n\tfloat: right;\n}\n\n\n/* Accepted CSS hiding technique for accessibility reader text */\n/* https://webaim.org/techniques/css/invisiblecontent/ */\n\n.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row > .visually-hidden {\n\t\tposition: absolute;\n\t\tleft: -10000px;\n\t\ttop: auto;\n\t\twidth: 1px;\n\t\theight: 1px;\n\t\toverflow: hidden;\n}\n\n.monaco-select-box-dropdown-container > .select-box-dropdown-container-width-control {\n\tflex: 1 1 auto;\n\talign-self: flex-start;\n\topacity: 0;\n}\n\n.monaco-select-box-dropdown-container > .select-box-dropdown-container-width-control > .width-control-div {\n\toverflow: hidden;\n\tmax-height: 0px;\n}\n\n.monaco-select-box-dropdown-container > .select-box-dropdown-container-width-control > .width-control-div > .option-text-width-control {\n\tpadding-left: 4px;\n\tpadding-right: 8px;\n\twhite-space: nowrap;\n}\n",""]);const a=r},7659:e=>{var t={};e.exports=function(e,i){var n=function(e){if(void 0===t[e]){var i=document.querySelector(e);if(window.HTMLIFrameElement&&i instanceof window.HTMLIFrameElement)try{i=i.contentDocument.head}catch(e){i=null}t[e]=i}return t[e]}(e);if(!n)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");n.appendChild(i)}},7689:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .sticky-widget {\n\toverflow: hidden;\n\tborder-bottom: 1px solid var(--vscode-editorStickyScroll-border);\n\twidth: 100%;\n\tbox-shadow: var(--vscode-editorStickyScroll-shadow) 0 4px 2px -2px;\n\tz-index: 4;\n\tright: initial !important;\n\tmargin-left: '0px';\n}\n\n.monaco-editor .sticky-widget .sticky-widget-line-numbers {\n\tfloat: left;\n\tbackground-color: var(--vscode-editorStickyScrollGutter-background);\n}\n\n.monaco-editor .sticky-widget.peek .sticky-widget-line-numbers {\n\tbackground-color: var(--vscode-peekViewEditorStickyScrollGutter-background);\n}\n\n.monaco-editor .sticky-widget .sticky-widget-lines-scrollable {\n\tdisplay: inline-block;\n\tposition: absolute;\n\toverflow: hidden;\n\twidth: var(--vscode-editorStickyScroll-scrollableWidth);\n\tbackground-color: var(--vscode-editorStickyScroll-background);\n}\n\n.monaco-editor .sticky-widget.peek .sticky-widget-lines-scrollable {\n\tbackground-color: var(--vscode-peekViewEditorStickyScroll-background);\n}\n\n.monaco-editor .sticky-widget .sticky-widget-lines {\n\tposition: absolute;\n\tbackground-color: inherit;\n}\n\n.monaco-editor .sticky-widget .sticky-line-number,\n.monaco-editor .sticky-widget .sticky-line-content {\n\tcolor: var(--vscode-editorLineNumber-foreground);\n\twhite-space: nowrap;\n\tdisplay: inline-block;\n\tposition: absolute;\n\tbackground-color: inherit;\n}\n\n.monaco-editor .sticky-widget .sticky-line-number .codicon-folding-expanded,\n.monaco-editor .sticky-widget .sticky-line-number .codicon-folding-collapsed {\n\tfloat: right;\n\ttransition: var(--vscode-editorStickyScroll-foldingOpacityTransition);\n\tposition: absolute;\n\tmargin-left: 2px;\n}\n\n.monaco-editor .sticky-widget .sticky-line-content {\n\twidth: var(--vscode-editorStickyScroll-scrollableWidth);\n\tbackground-color: inherit;\n\twhite-space: nowrap;\n}\n\n.monaco-editor .sticky-widget .sticky-line-number-inner {\n\tdisplay: inline-block;\n\ttext-align: right;\n}\n\n.monaco-editor .sticky-widget .sticky-line-content:hover {\n\tbackground-color: var(--vscode-editorStickyScrollHover-background);\n\tcursor: pointer;\n}\n",""]);const a=r},7825:e=>{e.exports=function(e){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var t=e.insertStyleElement(e);return{update:function(i){!function(e,t,i){var n="";i.supports&&(n+="@supports (".concat(i.supports,") {")),i.media&&(n+="@media ".concat(i.media," {"));var o=void 0!==i.layer;o&&(n+="@layer".concat(i.layer.length>0?" ".concat(i.layer):""," {")),n+=i.css,o&&(n+="}"),i.media&&(n+="}"),i.supports&&(n+="}");var s=i.sourceMap;s&&"undefined"!=typeof btoa&&(n+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(s))))," */")),t.styleTagTransform(n,e,t.options)}(t,e,i)},remove:function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(t)}}}},7982:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-toolbar {\n\theight: 100%;\n}\n\n.monaco-toolbar .toolbar-toggle-more {\n\tdisplay: inline-block;\n\tpadding: 0;\n}\n",""]);const a=r},7997:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .bracket-match {\n\tbox-sizing: border-box;\n\tbackground-color: var(--vscode-editorBracketMatch-background);\n\tborder: 1px solid var(--vscode-editorBracketMatch-border);\n}\n",""]);const a=r},8033:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .rename-box {\n\tz-index: 100;\n\tcolor: inherit;\n\tborder-radius: 4px;\n}\n\n.monaco-editor .rename-box.preview {\n\tpadding: 4px 4px 0 4px;\n}\n\n.monaco-editor .rename-box .rename-input-with-button {\n\tpadding: 3px;\n\tborder-radius: 2px;\n\twidth: calc(100% - 8px); /* 4px padding on each side */\n}\n\n.monaco-editor .rename-box .rename-input {\n\twidth: calc(100% - 8px); /* 4px padding on each side */\n\tpadding: 0;\n}\n\n.monaco-editor .rename-box .rename-input:focus {\n\toutline: none;\n}\n\n.monaco-editor .rename-box .rename-suggestions-button {\n\tdisplay: flex;\n\talign-items: center;\n\tpadding: 3px;\n\tbackground-color: transparent;\n\tborder: none;\n\tborder-radius: 5px;\n\tcursor: pointer;\n}\n\n.monaco-editor .rename-box .rename-suggestions-button:hover {\n\tbackground-color: var(--vscode-toolbar-hoverBackground)\n}\n\n.monaco-editor .rename-box .rename-candidate-list-container .monaco-list-row {\n\tborder-radius: 2px;\n}\n\n.monaco-editor .rename-box .rename-label {\n\tdisplay: none;\n\topacity: .8;\n}\n\n.monaco-editor .rename-box.preview .rename-label {\n\tdisplay: inherit;\n}\n",""]);const a=r},8081:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .glyph-margin {\n\tposition: absolute;\n\ttop: 0;\n}\n\n/*\n\tKeeping name short for faster parsing.\n\tcgmr = core glyph margin rendering (div)\n*/\n.monaco-editor .glyph-margin-widgets .cgmr {\n\tposition: absolute;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n}\n\n/*\n\tEnsure spinning icons are pixel-perfectly centered and avoid wobble.\n\tThis is only applied to icons that spin to avoid unnecessary\n\tGPU layers and blurry subpixel AA.\n*/\n.monaco-editor .glyph-margin-widgets .cgmr.codicon-modifier-spin::before {\n\tposition: absolute;\n\ttop: 50%;\n\tleft: 50%;\n\ttransform: translate(-50%, -50%);\n}\n",""]);const a=r},8129:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.inline-editor-progress-decoration {\n\tdisplay: inline-block;\n\twidth: 1em;\n\theight: 1em;\n}\n\n.inline-progress-widget {\n\tdisplay: flex !important;\n\tjustify-content: center;\n\talign-items: center;\n}\n\n.inline-progress-widget .icon {\n\tfont-size: 80% !important;\n}\n\n.inline-progress-widget:hover .icon {\n\tfont-size: 90% !important;\n\tanimation: none;\n}\n\n.inline-progress-widget:hover .icon::before {\n\tcontent: var(--vscode-icon-x-content);\n\tfont-family: var(--vscode-icon-x-font-family);\n}\n",""]);const a=r},8134:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/* ---------- Icon label ---------- */\n\n.monaco-icon-label {\n\tdisplay: flex; /* required for icons support :before rule */\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n}\n\n.monaco-icon-label::before {\n\n\t/* svg icons rendered as background image */\n\tbackground-size: 16px;\n\tbackground-position: left center;\n\tbackground-repeat: no-repeat;\n\tpadding-right: 6px;\n\twidth: 16px;\n\theight: 22px;\n\tline-height: inherit !important;\n\tdisplay: inline-block;\n\n\t/* fonts icons */\n\t-webkit-font-smoothing: antialiased;\n\t-moz-osx-font-smoothing: grayscale;\n\tvertical-align: top;\n\n\tflex-shrink: 0; /* fix for https://github.com/microsoft/vscode/issues/13787 */\n}\n\n.monaco-icon-label-iconpath {\n\twidth: 16px;\n\theight: 16px;\n\tpadding-left: 2px;\n\tmargin-top: 2px;\n\tdisplay: flex;\n}\n\n.monaco-icon-label-container.disabled {\n\tcolor: var(--vscode-disabledForeground);\n}\n.monaco-icon-label > .monaco-icon-label-container {\n\tmin-width: 0;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\tflex: 1;\n}\n\n.monaco-icon-label > .monaco-icon-label-container > .monaco-icon-name-container > .label-name {\n\tcolor: inherit;\n\twhite-space: pre; /* enable to show labels that include multiple whitespaces */\n}\n\n.monaco-icon-label > .monaco-icon-label-container > .monaco-icon-name-container > .label-name > .label-separator {\n\tmargin: 0 2px;\n\topacity: 0.5;\n}\n\n.monaco-icon-label > .monaco-icon-label-container > .monaco-icon-suffix-container > .label-suffix {\n\topacity: .7;\n\twhite-space: pre;\n}\n\n.monaco-icon-label > .monaco-icon-label-container > .monaco-icon-description-container > .label-description {\n\topacity: .7;\n\tmargin-left: 0.5em;\n\tfont-size: 0.9em;\n\twhite-space: pre; /* enable to show labels that include multiple whitespaces */\n}\n\n.monaco-icon-label.nowrap > .monaco-icon-label-container > .monaco-icon-description-container > .label-description{\n\twhite-space: nowrap\n}\n\n.vs .monaco-icon-label > .monaco-icon-label-container > .monaco-icon-description-container > .label-description {\n\topacity: .95;\n}\n\n.monaco-icon-label.italic > .monaco-icon-label-container > .monaco-icon-name-container > .label-name,\n.monaco-icon-label.italic > .monaco-icon-label-container > .monaco-icon-description-container > .label-description {\n\tfont-style: italic;\n}\n\n.monaco-icon-label.deprecated {\n\ttext-decoration: line-through;\n\topacity: 0.66;\n}\n\n.monaco-icon-label.strikethrough > .monaco-icon-label-container > .monaco-icon-name-container > .label-name,\n.monaco-icon-label.strikethrough > .monaco-icon-label-container > .monaco-icon-description-container > .label-description {\n\ttext-decoration: line-through;\n}\n\n.monaco-icon-label::after {\n\topacity: 0.75;\n\tfont-size: 90%;\n\tfont-weight: 600;\n\tmargin: auto 16px 0 5px; /* https://github.com/microsoft/vscode/issues/113223 */\n\ttext-align: center;\n}\n\n/* make sure selection color wins when a label is being selected */\n.monaco-list:focus .selected .monaco-icon-label, /* list */\n.monaco-list:focus .selected .monaco-icon-label::after\n{\n\tcolor: inherit !important;\n}\n\n.monaco-list-row.focused.selected .label-description,\n.monaco-list-row.selected .label-description {\n\topacity: .8;\n}\n",""]);const a=r},8169:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .inputarea {\n\tmin-width: 0;\n\tmin-height: 0;\n\tmargin: 0;\n\tpadding: 0;\n\tposition: absolute;\n\toutline: none !important;\n\tresize: none;\n\tborder: none;\n\toverflow: hidden;\n\tcolor: transparent;\n\tbackground-color: transparent;\n\tz-index: -10;\n}\n/*.monaco-editor .inputarea {\n\tposition: fixed !important;\n\twidth: 800px !important;\n\theight: 500px !important;\n\ttop: initial !important;\n\tleft: initial !important;\n\tbottom: 0 !important;\n\tright: 0 !important;\n\tcolor: black !important;\n\tbackground: white !important;\n\tline-height: 15px !important;\n\tfont-size: 14px !important;\n\tz-index: 10 !important;\n}*/\n.monaco-editor .inputarea.ime-input {\n\tz-index: 10;\n\tcaret-color: var(--vscode-editorCursor-foreground);\n\tcolor: var(--vscode-editor-foreground);\n}\n",""]);const a=r},8189:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .mwh {\n\tposition: absolute;\n\tcolor: var(--vscode-editorWhitespace-foreground) !important;\n}\n",""]);const a=r},8245:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .unicode-highlight {\n\tborder: 1px solid var(--vscode-editorUnicodeHighlight-border);\n\tbackground-color: var(--vscode-editorUnicodeHighlight-background);\n\tbox-sizing: border-box;\n}\n",""]);const a=r},8357:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor.vs .dnd-target,\n.monaco-editor.hc-light .dnd-target {\n\tborder-right: 2px dotted black;\n\tcolor: white; /* opposite of black */\n}\n.monaco-editor.vs-dark .dnd-target {\n\tborder-right: 2px dotted #AEAFAD;\n\tcolor: #51504f; /* opposite of #AEAFAD */\n}\n.monaco-editor.hc-black .dnd-target {\n\tborder-right: 2px dotted #fff;\n\tcolor: #000; /* opposite of #fff */\n}\n\n.monaco-editor.mouse-default .view-lines,\n.monaco-editor.vs-dark.mac.mouse-default .view-lines,\n.monaco-editor.hc-black.mac.mouse-default .view-lines,\n.monaco-editor.hc-light.mac.mouse-default .view-lines {\n\tcursor: default;\n}\n.monaco-editor.mouse-copy .view-lines,\n.monaco-editor.vs-dark.mac.mouse-copy .view-lines,\n.monaco-editor.hc-black.mac.mouse-copy .view-lines,\n.monaco-editor.hc-light.mac.mouse-copy .view-lines {\n\tcursor: copy;\n}\n",""]);const a=r},8405:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .view-overlays .current-line {\n\tdisplay: block;\n\tposition: absolute;\n\tleft: 0;\n\ttop: 0;\n\tbox-sizing: border-box;\n\theight: 100%;\n}\n\n.monaco-editor .margin-view-overlays .current-line {\n\tdisplay: block;\n\tposition: absolute;\n\tleft: 0;\n\ttop: 0;\n\tbox-sizing: border-box;\n\theight: 100%;\n}\n\n.monaco-editor\n\t.margin-view-overlays\n\t.current-line.current-line-margin.current-line-margin-both {\n\tborder-right: 0;\n}\n",""]);const a=r},8474:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n/* ---------- Find input ---------- */\n\n.monaco-findInput {\n\tposition: relative;\n}\n\n.monaco-findInput .monaco-inputbox {\n\tfont-size: 13px;\n\twidth: 100%;\n}\n\n.monaco-findInput > .controls {\n\tposition: absolute;\n\ttop: 3px;\n\tright: 2px;\n}\n\n.vs .monaco-findInput.disabled {\n\tbackground-color: #E1E1E1;\n}\n\n/* Theming */\n.vs-dark .monaco-findInput.disabled {\n\tbackground-color: #333;\n}\n\n/* Highlighting */\n.monaco-findInput.highlight-0 .controls,\n.hc-light .monaco-findInput.highlight-0 .controls {\n\tanimation: monaco-findInput-highlight-0 100ms linear 0s;\n}\n\n.monaco-findInput.highlight-1 .controls,\n.hc-light .monaco-findInput.highlight-1 .controls {\n\tanimation: monaco-findInput-highlight-1 100ms linear 0s;\n}\n\n.hc-black .monaco-findInput.highlight-0 .controls,\n.vs-dark .monaco-findInput.highlight-0 .controls {\n\tanimation: monaco-findInput-highlight-dark-0 100ms linear 0s;\n}\n\n.hc-black .monaco-findInput.highlight-1 .controls,\n.vs-dark .monaco-findInput.highlight-1 .controls {\n\tanimation: monaco-findInput-highlight-dark-1 100ms linear 0s;\n}\n\n@keyframes monaco-findInput-highlight-0 {\n\t0% { background: rgba(253, 255, 0, 0.8); }\n\t100% { background: transparent; }\n}\n@keyframes monaco-findInput-highlight-1 {\n\t0% { background: rgba(253, 255, 0, 0.8); }\n\t/* Made intentionally different such that the CSS minifier does not collapse the two animations into a single one*/\n\t99% { background: transparent; }\n}\n\n@keyframes monaco-findInput-highlight-dark-0 {\n\t0% { background: rgba(255, 255, 255, 0.44); }\n\t100% { background: transparent; }\n}\n@keyframes monaco-findInput-highlight-dark-1 {\n\t0% { background: rgba(255, 255, 255, 0.44); }\n\t/* Made intentionally different such that the CSS minifier does not collapse the two animations into a single one*/\n\t99% { background: transparent; }\n}\n",""]);const a=r},8494:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n.monaco-editor .inlineSuggestionsHints {\n\tpadding: 4px;\n\n\t.warningMessage p {\n\t\tmargin: 0;\n\t}\n}\n\n.monaco-editor .inlineSuggestionsHints.withBorder {\n\tz-index: 39;\n\tcolor: var(--vscode-editorHoverWidget-foreground);\n\tbackground-color: var(--vscode-editorHoverWidget-background);\n\tborder: 1px solid var(--vscode-editorHoverWidget-border);\n}\n\n.monaco-editor .inlineSuggestionsHints a {\n\tcolor: var(--vscode-foreground) !important;\n}\n\n.monaco-editor .inlineSuggestionsHints a:hover {\n\tcolor: var(--vscode-foreground) !important;\n}\n\n.monaco-editor .inlineSuggestionsHints .keybinding {\n\tdisplay: flex;\n\tmargin-left: 4px;\n\topacity: 0.6;\n}\n\n.monaco-editor .inlineSuggestionsHints .keybinding .monaco-keybinding-key {\n\tfont-size: 8px;\n\tpadding: 2px 3px;\n}\n\n.monaco-editor .inlineSuggestionsHints .availableSuggestionCount a {\n\tdisplay: flex;\n\tmin-width: 19px;\n\tjustify-content: center;\n}\n\n.monaco-editor .inlineSuggestionStatusBarItemLabel {\n\tmargin-right: 2px;\n}\n",""]);const a=r},8694:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-hover {\n\tcursor: default;\n\tposition: absolute;\n\toverflow: hidden;\n\tuser-select: text;\n\t-webkit-user-select: text;\n\tbox-sizing: border-box;\n\tline-height: 1.5em;\n\twhite-space: var(--vscode-hover-whiteSpace, normal);\n}\n\n.monaco-hover.fade-in {\n\tanimation: fadein 100ms linear;\n}\n\n.monaco-hover.hidden {\n\tdisplay: none;\n}\n\n.monaco-hover a:hover:not(.disabled) {\n\tcursor: pointer;\n}\n\n.monaco-hover .hover-contents:not(.html-hover-contents) {\n\tpadding: 4px 8px;\n}\n\n.monaco-hover .markdown-hover > .hover-contents:not(.code-hover-contents) {\n\tmax-width: var(--vscode-hover-maxWidth, 500px);\n\tword-wrap: break-word;\n}\n\n.monaco-hover .markdown-hover > .hover-contents:not(.code-hover-contents) hr {\n\tmin-width: 100%;\n}\n\n.monaco-hover p,\n.monaco-hover .code,\n.monaco-hover ul,\n.monaco-hover h1,\n.monaco-hover h2,\n.monaco-hover h3,\n.monaco-hover h4,\n.monaco-hover h5,\n.monaco-hover h6 {\n\tmargin: 8px 0;\n}\n\n.monaco-hover h1,\n.monaco-hover h2,\n.monaco-hover h3,\n.monaco-hover h4,\n.monaco-hover h5,\n.monaco-hover h6 {\n\tline-height: 1.1;\n}\n\n.monaco-hover code {\n\tfont-family: var(--monaco-monospace-font);\n}\n\n.monaco-hover hr {\n\tbox-sizing: border-box;\n\tborder-left: 0px;\n\tborder-right: 0px;\n\tmargin-top: 4px;\n\tmargin-bottom: -4px;\n\tmargin-left: -8px;\n\tmargin-right: -8px;\n\theight: 1px;\n}\n\n.monaco-hover p:first-child,\n.monaco-hover .code:first-child,\n.monaco-hover ul:first-child {\n\tmargin-top: 0;\n}\n\n.monaco-hover p:last-child,\n.monaco-hover .code:last-child,\n.monaco-hover ul:last-child {\n\tmargin-bottom: 0;\n}\n\n/* MarkupContent Layout */\n.monaco-hover ul {\n\tpadding-left: 20px;\n}\n.monaco-hover ol {\n\tpadding-left: 20px;\n}\n\n.monaco-hover li > p {\n\tmargin-bottom: 0;\n}\n\n.monaco-hover li > ul {\n\tmargin-top: 0;\n}\n\n.monaco-hover code {\n\tborder-radius: 3px;\n\tpadding: 0 0.4em;\n}\n\n.monaco-hover .monaco-tokenized-source {\n\twhite-space: var(--vscode-hover-sourceWhiteSpace, pre-wrap);\n}\n\n.monaco-hover .hover-row.status-bar {\n\tfont-size: 12px;\n\tline-height: 22px;\n}\n\n.monaco-hover .hover-row.status-bar .info {\n\tfont-style: italic;\n\tpadding: 0px 8px;\n}\n\n.monaco-hover .hover-row.status-bar .actions {\n\tdisplay: flex;\n\tpadding: 0px 8px;\n\twidth: 100%;\n}\n\n.monaco-hover .hover-row.status-bar .actions .action-container {\n\tmargin-right: 16px;\n\tcursor: pointer;\n\toverflow: hidden;\n\ttext-wrap: nowrap;\n\ttext-overflow: ellipsis;\n}\n\n.monaco-hover .hover-row.status-bar .actions .action-container .action .icon {\n\tpadding-right: 4px;\n\tvertical-align: middle;\n}\n\n.monaco-hover .hover-row.status-bar .actions .action-container a {\n\tcolor: var(--vscode-textLink-foreground);\n\ttext-decoration: var(--text-link-decoration);\n}\n\n.monaco-hover .hover-row.status-bar .actions .action-container a .icon.codicon {\n\tcolor: var(--vscode-textLink-foreground);\n}\n\n.monaco-hover .markdown-hover .hover-contents .codicon {\n\tcolor: inherit;\n\tfont-size: inherit;\n\tvertical-align: middle;\n}\n\n.monaco-hover .hover-contents a.code-link:hover,\n.monaco-hover .hover-contents a.code-link {\n\tcolor: inherit;\n}\n\n.monaco-hover .hover-contents a.code-link:before {\n\tcontent: '(';\n}\n\n.monaco-hover .hover-contents a.code-link:after {\n\tcontent: ')';\n}\n\n.monaco-hover .hover-contents a.code-link > span {\n\ttext-decoration: underline;\n\t/** Hack to force underline to show **/\n\tborder-bottom: 1px solid transparent;\n\ttext-underline-position: under;\n\tcolor: var(--vscode-textLink-foreground);\n}\n\n.monaco-hover .hover-contents a.code-link > span:hover {\n\tcolor: var(--vscode-textLink-activeForeground);\n}\n\n/**\n * Spans in markdown hovers need a margin-bottom to avoid looking cramped:\n * https://github.com/microsoft/vscode/issues/101496\n\n * This was later refined to only apply when the last child of a rendered markdown block (before the\n * border or a `hr`) uses background color:\n * https://github.com/microsoft/vscode/issues/228136\n */\n.monaco-hover .markdown-hover .hover-contents:not(.code-hover-contents):not(.html-hover-contents) p:last-child [style*=\"background-color\"] {\n\tmargin-bottom: 4px;\n\tdisplay: inline-block;\n}\n\n/**\n * Add a slight margin to try vertically align codicons with any text\n * https://github.com/microsoft/vscode/issues/221359\n */\n.monaco-hover .markdown-hover .hover-contents:not(.code-hover-contents):not(.html-hover-contents) span.codicon {\n\tmargin-bottom: 2px;\n}\n\n.monaco-hover-content .action-container a {\n\t-webkit-user-select: none;\n\tuser-select: none;\n}\n\n.monaco-hover-content .action-container.disabled {\n\tpointer-events: none;\n\topacity: 0.4;\n\tcursor: default;\n}\n\n/* Prevent text selection in all button-like elements within hovers */\n.monaco-hover .action-container,\n.monaco-hover .action,\n.monaco-hover button,\n.monaco-hover .monaco-button,\n.monaco-hover .monaco-text-button,\n.monaco-hover [role=\"button\"] {\n\t-webkit-user-select: none;\n\tuser-select: none;\n}\n",""]);const a=r},8731:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .margin {\n\tbackground-color: var(--vscode-editorGutter-background);\n}\n",""]);const a=r},8829:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n/*\n\tKeeping name short for faster parsing.\n\tcslr = core selections layer rendering (div)\n*/\n.monaco-editor .lines-content .cslr {\n\tposition: absolute;\n}\n\n.monaco-editor .focused .selected-text {\n\tbackground-color: var(--vscode-editor-selectionBackground);\n}\n\n.monaco-editor .selected-text {\n\tbackground-color: var(--vscode-editor-inactiveSelectionBackground);\n}\n\n.monaco-editor\t\t\t.top-left-radius\t\t{ border-top-left-radius: 3px; }\n.monaco-editor\t\t\t.bottom-left-radius\t\t{ border-bottom-left-radius: 3px; }\n.monaco-editor\t\t\t.top-right-radius\t\t{ border-top-right-radius: 3px; }\n.monaco-editor\t\t\t.bottom-right-radius\t{ border-bottom-right-radius: 3px; }\n\n.monaco-editor.hc-black .top-left-radius\t\t{ border-top-left-radius: 0; }\n.monaco-editor.hc-black .bottom-left-radius\t\t{ border-bottom-left-radius: 0; }\n.monaco-editor.hc-black .top-right-radius\t\t{ border-top-right-radius: 0; }\n.monaco-editor.hc-black .bottom-right-radius\t{ border-bottom-right-radius: 0; }\n\n.monaco-editor.hc-light .top-left-radius\t\t{ border-top-left-radius: 0; }\n.monaco-editor.hc-light .bottom-left-radius\t\t{ border-bottom-left-radius: 0; }\n.monaco-editor.hc-light .top-right-radius\t\t{ border-top-right-radius: 0; }\n.monaco-editor.hc-light .bottom-right-radius\t{ border-bottom-right-radius: 0; }\n",""]);const a=r},8874:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor {\n\t.editorPlaceholder {\n\t\ttop: 0px;\n\t\tposition: absolute;\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t\ttext-wrap: nowrap;\n\t\tpointer-events: none;\n\n\t\tcolor: var(--vscode-editor-placeholder-foreground);\n\t}\n}\n",""]);const a=r},8880:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-text-button {\n\tbox-sizing: border-box;\n\tdisplay: flex;\n\twidth: 100%;\n\tpadding: 4px;\n\tborder-radius: 2px;\n\ttext-align: center;\n\tcursor: pointer;\n\tjustify-content: center;\n\talign-items: center;\n\tborder: 1px solid var(--vscode-button-border, transparent);\n\tline-height: 18px;\n}\n\n.monaco-text-button:focus {\n\toutline-offset: 2px !important;\n}\n\n.monaco-text-button:hover {\n\ttext-decoration: none !important;\n}\n\n.monaco-button.disabled:focus,\n.monaco-button.disabled {\n\topacity: 0.4 !important;\n\tcursor: default;\n}\n\n.monaco-text-button .codicon {\n\tmargin: 0 0.2em;\n\tcolor: inherit !important;\n}\n\n.monaco-text-button.monaco-text-button-with-short-label {\n\tflex-direction: row;\n\tflex-wrap: wrap;\n\tpadding: 0 4px;\n\toverflow: hidden;\n\theight: 28px;\n}\n\n.monaco-text-button.monaco-text-button-with-short-label > .monaco-button-label {\n\tflex-basis: 100%;\n}\n\n.monaco-text-button.monaco-text-button-with-short-label > .monaco-button-label-short {\n\tflex-grow: 1;\n\twidth: 0;\n\toverflow: hidden;\n}\n\n.monaco-text-button.monaco-text-button-with-short-label > .monaco-button-label,\n.monaco-text-button.monaco-text-button-with-short-label > .monaco-button-label-short {\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-items: center;\n\tfont-weight: normal;\n\tfont-style: inherit;\n\tpadding: 4px 0;\n}\n\n.monaco-button-dropdown {\n\tdisplay: flex;\n\tcursor: pointer;\n}\n\n.monaco-button-dropdown.disabled {\n\tcursor: default;\n}\n\n.monaco-button-dropdown > .monaco-button:focus {\n\toutline-offset: -1px !important;\n}\n\n.monaco-button-dropdown.disabled > .monaco-button.disabled,\n.monaco-button-dropdown.disabled > .monaco-button.disabled:focus,\n.monaco-button-dropdown.disabled > .monaco-button-dropdown-separator {\n\topacity: 0.4 !important;\n}\n\n.monaco-button-dropdown > .monaco-button.monaco-text-button {\n\tborder-right-width: 0 !important;\n}\n\n.monaco-button-dropdown .monaco-button-dropdown-separator {\n\tpadding: 4px 0;\n\tcursor: default;\n}\n\n.monaco-button-dropdown .monaco-button-dropdown-separator > div {\n\theight: 100%;\n\twidth: 1px;\n}\n\n.monaco-button-dropdown > .monaco-button.monaco-dropdown-button {\n\tborder: 1px solid var(--vscode-button-border, transparent);\n\tborder-left-width: 0 !important;\n\tborder-radius: 0 2px 2px 0;\n\tdisplay: flex;\n\talign-items: center;\n}\n\n.monaco-button-dropdown > .monaco-button.monaco-text-button {\n\tborder-radius: 2px 0 0 2px;\n}\n\n.monaco-description-button {\n\tdisplay: flex;\n\tflex-direction: column;\n\talign-items: center;\n\tmargin: 4px 5px; /* allows button focus outline to be visible */\n}\n\n.monaco-description-button .monaco-button-description {\n\tfont-style: italic;\n\tfont-size: 11px;\n\tpadding: 4px 20px;\n}\n\n.monaco-description-button .monaco-button-label,\n.monaco-description-button .monaco-button-description {\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-items: center;\n}\n\n.monaco-description-button .monaco-button-label > .codicon,\n.monaco-description-button .monaco-button-description > .codicon {\n\tmargin: 0 0.2em;\n\tcolor: inherit !important;\n}\n\n/* default color styles - based on CSS variables */\n\n.monaco-button.default-colors,\n.monaco-button-dropdown.default-colors > .monaco-button{\n\tcolor: var(--vscode-button-foreground);\n\tbackground-color: var(--vscode-button-background);\n}\n\n.monaco-button.default-colors:hover,\n.monaco-button-dropdown.default-colors > .monaco-button:hover {\n\tbackground-color: var(--vscode-button-hoverBackground);\n}\n\n.monaco-button.default-colors.secondary,\n.monaco-button-dropdown.default-colors > .monaco-button.secondary {\n\tcolor: var(--vscode-button-secondaryForeground);\n\tbackground-color: var(--vscode-button-secondaryBackground);\n}\n\n.monaco-button.default-colors.secondary:hover,\n.monaco-button-dropdown.default-colors > .monaco-button.secondary:hover {\n\tbackground-color: var(--vscode-button-secondaryHoverBackground);\n}\n\n.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator {\n\tbackground-color: var(--vscode-button-background);\n\tborder-top: 1px solid var(--vscode-button-border);\n\tborder-bottom: 1px solid var(--vscode-button-border);\n}\n\n.monaco-button-dropdown.default-colors .monaco-button.secondary + .monaco-button-dropdown-separator {\n\tbackground-color: var(--vscode-button-secondaryBackground);\n}\n\n.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator > div {\n\tbackground-color: var(--vscode-button-separator);\n}\n",""]);const a=r},8968:e=>{e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII="},8970:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.context-view {\n\tposition: absolute;\n}\n\n.context-view.fixed {\n\tall: initial;\n\tfont-family: inherit;\n\tfont-size: 13px;\n\tposition: fixed;\n\tcolor: inherit;\n}\n",""]);const a=r},9055:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-action-bar .action-item.menu-entry .action-label.icon {\n\twidth: 16px;\n\theight: 16px;\n\tbackground-repeat: no-repeat;\n\tbackground-position: 50%;\n\tbackground-size: 16px;\n}\n\n.monaco-action-bar .action-item.menu-entry.text-only .action-label {\n\tcolor: var(--vscode-descriptionForeground);\n\toverflow: hidden;\n\tborder-radius: 2px;\n}\n\n.monaco-action-bar .action-item.menu-entry.text-only.use-comma:not(:last-of-type) .action-label::after {\n\tcontent: ', ';\n}\n\n.monaco-action-bar .action-item.menu-entry.text-only + .action-item:not(.text-only) > .monaco-dropdown .action-label {\n\tcolor: var(--vscode-descriptionForeground);\n}\n\n.monaco-dropdown-with-default {\n\tdisplay: flex !important;\n\tflex-direction: row;\n\tborder-radius: 5px;\n}\n\n.monaco-dropdown-with-default > .action-container > .action-label {\n\tmargin-right: 0;\n}\n\n.monaco-dropdown-with-default > .action-container.menu-entry > .action-label.icon {\n\twidth: 16px;\n\theight: 16px;\n\tbackground-repeat: no-repeat;\n\tbackground-position: 50%;\n\tbackground-size: 16px;\n}\n\n.monaco-dropdown-with-default:hover {\n\tbackground-color: var(--vscode-toolbar-hoverBackground);\n}\n\n.monaco-dropdown-with-default > .dropdown-action-container > .monaco-dropdown > .dropdown-label .codicon[class*='codicon-'] {\n\tfont-size: 12px;\n\tpadding-left: 0px;\n\tpadding-right: 0px;\n\tline-height: 16px;\n\tmargin-left: -3px;\n}\n\n.monaco-dropdown-with-default > .dropdown-action-container > .monaco-dropdown > .dropdown-label > .action-label {\n\tdisplay: block;\n\tbackground-size: 16px;\n\tbackground-position: center center;\n\tbackground-repeat: no-repeat;\n}\n",""]);const a=r},9133:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .scroll-decoration {\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\theight: 6px;\n\tbox-shadow: var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset;\n}\n",""]);const a=r},9337:(e,t,i)=>{i.d(t,{A:()=>p});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s),a=i(4417),l=i.n(a),d=new URL(i(7584),i.b),c=new URL(i(6060),i.b),h=r()(o()),u=l()(d),g=l()(c);h.push([e.id,`/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .iPadShowKeyboard {\n\twidth: 58px;\n\tmin-width: 0;\n\theight: 36px;\n\tmin-height: 0;\n\tmargin: 0;\n\tpadding: 0;\n\tposition: absolute;\n\tresize: none;\n\toverflow: hidden;\n\tbackground: url(${u}) center center no-repeat;\n\tborder: 4px solid #F6F6F6;\n\tborder-radius: 4px;\n}\n\n.monaco-editor.vs-dark .iPadShowKeyboard {\n\tbackground: url(${g}) center center no-repeat;\n\tborder: 4px solid #252526;\n}`,""]);const p=h},9734:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .peekview-widget .head {\n\tbox-sizing: border-box;\n\tdisplay: flex;\n\tjustify-content: space-between;\n\tflex-wrap: nowrap;\n}\n\n.monaco-editor .peekview-widget .head .peekview-title {\n\tdisplay: flex;\n\talign-items: baseline;\n\tfont-size: 13px;\n\tmargin-left: 20px;\n\tmin-width: 0;\n\ttext-overflow: ellipsis;\n\toverflow: hidden;\n}\n\n.monaco-editor .peekview-widget .head .peekview-title.clickable {\n\tcursor: pointer;\n}\n\n.monaco-editor .peekview-widget .head .peekview-title .dirname:not(:empty) {\n\tfont-size: 0.9em;\n\tmargin-left: 0.5em;\n}\n\n.monaco-editor .peekview-widget .head .peekview-title .meta {\n\twhite-space: nowrap;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n}\n\n.monaco-editor .peekview-widget .head .peekview-title .dirname {\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\twhite-space: nowrap;\n}\n\n.monaco-editor .peekview-widget .head .peekview-title .filename {\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\twhite-space: nowrap;\n}\n\n.monaco-editor .peekview-widget .head .peekview-title .meta:not(:empty)::before {\n\tcontent: '-';\n\tpadding: 0 0.3em;\n}\n\n.monaco-editor .peekview-widget .head .peekview-actions {\n\tflex: 1;\n\ttext-align: right;\n\tpadding-right: 2px;\n}\n\n.monaco-editor .peekview-widget .head .peekview-actions > .monaco-action-bar {\n\tdisplay: inline-block;\n}\n\n.monaco-editor .peekview-widget .head .peekview-actions > .monaco-action-bar,\n.monaco-editor .peekview-widget .head .peekview-actions > .monaco-action-bar > .actions-container {\n\theight: 100%;\n}\n\n.monaco-editor .peekview-widget > .body {\n\tborder-top: 1px solid;\n\tposition: relative;\n}\n\n.monaco-editor .peekview-widget .head .peekview-title .codicon {\n\tmargin-right: 4px;\n\talign-self: center;\n}\n\n.monaco-editor .peekview-widget .monaco-list .monaco-list-row.focused .codicon {\n\tcolor: inherit !important;\n}\n",""]);const a=r},9803:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-editor .focused .selectionHighlight {\n\tbackground-color: var(--vscode-editor-selectionHighlightBackground);\n\tbox-sizing: border-box;\n\tborder: 1px solid var(--vscode-editor-selectionHighlightBorder);\n}\n.monaco-editor.hc-black .focused .selectionHighlight, .monaco-editor.hc-light .focused .selectionHighlight {\n\tborder-style: dotted;\n}\n\n.monaco-editor .wordHighlight {\n\tbackground-color: var(--vscode-editor-wordHighlightBackground);\n\tbox-sizing: border-box;\n\tborder: 1px solid var(--vscode-editor-wordHighlightBorder);\n}\n.monaco-editor.hc-black .wordHighlight, .monaco-editor.hc-light .wordHighlight {\n\tborder-style: dotted;\n}\n\n.monaco-editor .wordHighlightStrong {\n\tbackground-color: var(--vscode-editor-wordHighlightStrongBackground);\n\tbox-sizing: border-box;\n\tborder: 1px solid var(--vscode-editor-wordHighlightStrongBorder);\n}\n.monaco-editor.hc-black .wordHighlightStrong, .monaco-editor.hc-light .wordHighlightStrong {\n\tborder-style: dotted;\n}\n\n.monaco-editor .wordHighlightText {\n\tbackground-color: var(--vscode-editor-wordHighlightTextBackground);\n\tbox-sizing: border-box;\n\tborder: 1px solid var(--vscode-editor-wordHighlightTextBorder);\n}\n.monaco-editor.hc-black .wordHighlightText, .monaco-editor.hc-light .wordHighlightText {\n\tborder-style: dotted;\n}\n",""]);const a=r},9862:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.monaco-dropdown {\n\theight: 100%;\n\tpadding: 0;\n}\n\n.monaco-dropdown > .dropdown-label {\n\tcursor: pointer;\n\theight: 100%;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n}\n\n.monaco-dropdown > .dropdown-label > .action-label.disabled {\n\tcursor: default;\n}\n\n.monaco-dropdown-with-primary {\n\tdisplay: flex !important;\n\tflex-direction: row;\n\tborder-radius: 5px;\n}\n\n.monaco-dropdown-with-primary > .action-container > .action-label {\n\tmargin-right: 0;\n}\n\n.monaco-dropdown-with-primary > .dropdown-action-container > .monaco-dropdown > .dropdown-label .codicon[class*='codicon-'] {\n\tfont-size: 12px;\n\tpadding-left: 0px;\n\tpadding-right: 0px;\n\tline-height: 16px;\n\tmargin-left: -3px;\n}\n\n.monaco-dropdown-with-primary > .dropdown-action-container > .monaco-dropdown > .dropdown-label > .action-label {\n\tdisplay: block;\n\tbackground-size: 16px;\n\tbackground-position: center center;\n\tbackground-repeat: no-repeat;\n}\n",""]);const a=r},9926:(e,t,i)=>{i.d(t,{A:()=>a});var n=i(1601),o=i.n(n),s=i(6314),r=i.n(s)()(o());r.push([e.id,"/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\n.post-edit-widget {\n\tbox-shadow: 0 0 8px 2px var(--vscode-widget-shadow);\n\tborder: 1px solid var(--vscode-widget-border, transparent);\n\tborder-radius: 4px;\n\tcolor: var(--vscode-button-foreground);\n\tbackground-color: var(--vscode-button-background);\n\toverflow: hidden;\n}\n\n.post-edit-widget .monaco-button {\n\tpadding: 2px;\n\tborder: none;\n\tborder-radius: 0;\n}\n\n.post-edit-widget .monaco-button:hover {\n\tbackground-color: var(--vscode-button-hoverBackground) !important;\n}\n\n.post-edit-widget .monaco-button .codicon {\n\tmargin: 0;\n}\n",""]);const a=r}},t={};function i(n){var o=t[n];if(void 0!==o)return o.exports;var s=t[n]={id:n,exports:{}};return e[n](s,s.exports,i),s.exports}i.m=e,i.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},i.d=(e,t)=>{for(var n in t)i.o(t,n)&&!i.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;i.g.importScripts&&(e=i.g.location+"");var t=i.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var n=t.getElementsByTagName("script");if(n.length)for(var o=n.length-1;o>-1&&(!e||!/^http(s?):/.test(e));)e=n[o--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),i.p=e})(),i.b="undefined"!=typeof document&&document.baseURI||self.location.href,i.nc=void 0;var n={};i.r(n),i.d(n,{baseConf:()=>Lve,baseLanguage:()=>Eve,conf:()=>Lve,language:()=>Eve});var o={};i.r(o),i.d(o,{conf:()=>Ive,language:()=>Dve});const s=window;class r{constructor(){this.mapWindowIdToZoomFactor=new Map}static{this.INSTANCE=new r}getZoomFactor(e){return this.mapWindowIdToZoomFactor.get(this.getWindowId(e))??1}getWindowId(e){return e.vscodeWindowId}}function a(e,t,i){"string"==typeof t&&(t=e.matchMedia(t)),t.addEventListener("change",i)}function l(e){return r.INSTANCE.getZoomFactor(e)}const d=navigator.userAgent,c=d.indexOf("Firefox")>=0,h=d.indexOf("AppleWebKit")>=0,u=d.indexOf("Chrome")>=0,g=!u&&d.indexOf("Safari")>=0,p=!u&&!g&&h,m=(d.indexOf("Electron/"),d.indexOf("Android")>=0);let f=!1;if("function"==typeof s.matchMedia){const e=s.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)"),t=s.matchMedia("(display-mode: fullscreen)");f=e.matches,a(s,e,(({matches:e})=>{f&&t.matches||(f=e)}))}function _(){return globalThis._VSCODE_NLS_MESSAGES}function v(){return globalThis._VSCODE_NLS_LANGUAGE}const b="pseudo"===v()||"undefined"!=typeof document&&document.location&&"string"==typeof document.location.hash&&document.location.hash.indexOf("pseudo=true")>=0;function w(e,t){let i;return i=0===t.length?e:e.replace(/\{(\d+)\}/g,((e,i)=>{const n=i[0],o=t[n];let s=e;return"string"==typeof o?s=o:"number"!=typeof o&&"boolean"!=typeof o&&null!=o||(s=String(o)),s})),b&&(i="["+i.replace(/[aouei]/g,"$&$&")+"]"),i}function C(e,t,...i){return w("number"==typeof e?y(e,t):t,i)}function y(e,t){const i=_()?.[e];if("string"!=typeof i){if("string"==typeof t)return t;throw new Error(`!!! NLS MISSING: ${e} !!!`)}return i}function S(e,t,...i){let n;n="number"==typeof e?y(e,t):t;const o=w(n,i);return{value:o,original:t===n?o:w(t,i)}}const x="en";let k,L,E=!1,I=!1,D=!1,N=!1,M=!1,T=!1,R=!1,A=!1,O=!1,P=!1,F=x,B=null,W=null;const H=globalThis;let V;void 0!==H.vscode&&void 0!==H.vscode.process?V=H.vscode.process:"undefined"!=typeof process&&"string"==typeof process?.versions?.node&&(V=process);const z="string"==typeof V?.versions?.electron,U=z&&"renderer"===V?.type;if("object"==typeof V){E="win32"===V.platform,I="darwin"===V.platform,D="linux"===V.platform,N=D&&!!V.env.SNAP&&!!V.env.SNAP_REVISION,R=z,O=!!V.env.CI||!!V.env.BUILD_ARTIFACTSTAGINGDIRECTORY||!!V.env.GITHUB_WORKSPACE,k=x,F=x;const e=V.env.VSCODE_NLS_CONFIG;if(e)try{const t=JSON.parse(e);k=t.userLocale,B=t.osLocale,F=t.resolvedLanguage||x,W=t.languagePack?.translationsConfigFile}catch(e){}M=!0}else"object"!=typeof navigator||U?console.error("Unable to resolve platform."):(L=navigator.userAgent,E=L.indexOf("Windows")>=0,I=L.indexOf("Macintosh")>=0,A=(L.indexOf("Macintosh")>=0||L.indexOf("iPad")>=0||L.indexOf("iPhone")>=0)&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0,D=L.indexOf("Linux")>=0,P=L?.indexOf("Mobi")>=0,T=!0,F=v()||x,k=navigator.language.toLowerCase(),B=k);let j=0;I?j=1:E?j=3:D&&(j=2);const K=E,q=I,$=D,G=M,Y=T,Z=T&&"function"==typeof H.importScripts?H.origin:void 0,Q=A,X=P,J=j,ee=L,te=F,ie="function"==typeof H.postMessage&&!H.importScripts,ne=(()=>{if(ie){const e=[];H.addEventListener("message",(t=>{if(t.data&&t.data.vscodeScheduleAsyncWork)for(let i=0,n=e.length;i{const n=++t;e.push({id:n,callback:i}),H.postMessage({vscodeScheduleAsyncWork:n},"*")}}return e=>setTimeout(e)})(),oe=I||A?2:E?1:3;let se=!0,re=!1;function ae(){if(!re){re=!0;const e=new Uint8Array(2);e[0]=1,e[1]=2;const t=new Uint16Array(e.buffer);se=513===t[0]}return se}const le=!!(ee&&ee.indexOf("Chrome")>=0),de=!!(ee&&ee.indexOf("Firefox")>=0),ce=!!(!le&&ee&&ee.indexOf("Safari")>=0),he=!!(ee&&ee.indexOf("Edg/")>=0),ue=!!(ee&&ee.indexOf("Android")>=0),ge=(G||document.queryCommandSupported&&document.queryCommandSupported("copy")||navigator&&navigator.clipboard&&navigator.clipboard.writeText,G||navigator&&navigator.clipboard&&navigator.clipboard.readText,G||f||navigator.keyboard,"ontouchstart"in s||navigator.maxTouchPoints,s.PointerEvent&&("ontouchstart"in s||navigator.maxTouchPoints>0));class pe{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(e,t){this._keyCodeToStr[e]=t,this._strToKeyCode[t.toLowerCase()]=e}keyCodeToStr(e){return this._keyCodeToStr[e]}strToKeyCode(e){return this._strToKeyCode[e.toLowerCase()]||0}}const me=new pe,fe=new pe,_e=new pe,ve=new Array(230),be={},we=[],Ce=Object.create(null),ye=Object.create(null),Se=[],xe=[];for(let e=0;e<=193;e++)Se[e]=-1;for(let e=0;e<=132;e++)xe[e]=-1;var ke;function Le(e,t){return(e|(65535&t)<<16>>>0)>>>0}!function(){const e="",t=[[1,0,"None",0,"unknown",0,"VK_UNKNOWN",e,e],[1,1,"Hyper",0,e,0,e,e,e],[1,2,"Super",0,e,0,e,e,e],[1,3,"Fn",0,e,0,e,e,e],[1,4,"FnLock",0,e,0,e,e,e],[1,5,"Suspend",0,e,0,e,e,e],[1,6,"Resume",0,e,0,e,e,e],[1,7,"Turbo",0,e,0,e,e,e],[1,8,"Sleep",0,e,0,"VK_SLEEP",e,e],[1,9,"WakeUp",0,e,0,e,e,e],[0,10,"KeyA",31,"A",65,"VK_A",e,e],[0,11,"KeyB",32,"B",66,"VK_B",e,e],[0,12,"KeyC",33,"C",67,"VK_C",e,e],[0,13,"KeyD",34,"D",68,"VK_D",e,e],[0,14,"KeyE",35,"E",69,"VK_E",e,e],[0,15,"KeyF",36,"F",70,"VK_F",e,e],[0,16,"KeyG",37,"G",71,"VK_G",e,e],[0,17,"KeyH",38,"H",72,"VK_H",e,e],[0,18,"KeyI",39,"I",73,"VK_I",e,e],[0,19,"KeyJ",40,"J",74,"VK_J",e,e],[0,20,"KeyK",41,"K",75,"VK_K",e,e],[0,21,"KeyL",42,"L",76,"VK_L",e,e],[0,22,"KeyM",43,"M",77,"VK_M",e,e],[0,23,"KeyN",44,"N",78,"VK_N",e,e],[0,24,"KeyO",45,"O",79,"VK_O",e,e],[0,25,"KeyP",46,"P",80,"VK_P",e,e],[0,26,"KeyQ",47,"Q",81,"VK_Q",e,e],[0,27,"KeyR",48,"R",82,"VK_R",e,e],[0,28,"KeyS",49,"S",83,"VK_S",e,e],[0,29,"KeyT",50,"T",84,"VK_T",e,e],[0,30,"KeyU",51,"U",85,"VK_U",e,e],[0,31,"KeyV",52,"V",86,"VK_V",e,e],[0,32,"KeyW",53,"W",87,"VK_W",e,e],[0,33,"KeyX",54,"X",88,"VK_X",e,e],[0,34,"KeyY",55,"Y",89,"VK_Y",e,e],[0,35,"KeyZ",56,"Z",90,"VK_Z",e,e],[0,36,"Digit1",22,"1",49,"VK_1",e,e],[0,37,"Digit2",23,"2",50,"VK_2",e,e],[0,38,"Digit3",24,"3",51,"VK_3",e,e],[0,39,"Digit4",25,"4",52,"VK_4",e,e],[0,40,"Digit5",26,"5",53,"VK_5",e,e],[0,41,"Digit6",27,"6",54,"VK_6",e,e],[0,42,"Digit7",28,"7",55,"VK_7",e,e],[0,43,"Digit8",29,"8",56,"VK_8",e,e],[0,44,"Digit9",30,"9",57,"VK_9",e,e],[0,45,"Digit0",21,"0",48,"VK_0",e,e],[1,46,"Enter",3,"Enter",13,"VK_RETURN",e,e],[1,47,"Escape",9,"Escape",27,"VK_ESCAPE",e,e],[1,48,"Backspace",1,"Backspace",8,"VK_BACK",e,e],[1,49,"Tab",2,"Tab",9,"VK_TAB",e,e],[1,50,"Space",10,"Space",32,"VK_SPACE",e,e],[0,51,"Minus",88,"-",189,"VK_OEM_MINUS","-","OEM_MINUS"],[0,52,"Equal",86,"=",187,"VK_OEM_PLUS","=","OEM_PLUS"],[0,53,"BracketLeft",92,"[",219,"VK_OEM_4","[","OEM_4"],[0,54,"BracketRight",94,"]",221,"VK_OEM_6","]","OEM_6"],[0,55,"Backslash",93,"\\",220,"VK_OEM_5","\\","OEM_5"],[0,56,"IntlHash",0,e,0,e,e,e],[0,57,"Semicolon",85,";",186,"VK_OEM_1",";","OEM_1"],[0,58,"Quote",95,"'",222,"VK_OEM_7","'","OEM_7"],[0,59,"Backquote",91,"`",192,"VK_OEM_3","`","OEM_3"],[0,60,"Comma",87,",",188,"VK_OEM_COMMA",",","OEM_COMMA"],[0,61,"Period",89,".",190,"VK_OEM_PERIOD",".","OEM_PERIOD"],[0,62,"Slash",90,"/",191,"VK_OEM_2","/","OEM_2"],[1,63,"CapsLock",8,"CapsLock",20,"VK_CAPITAL",e,e],[1,64,"F1",59,"F1",112,"VK_F1",e,e],[1,65,"F2",60,"F2",113,"VK_F2",e,e],[1,66,"F3",61,"F3",114,"VK_F3",e,e],[1,67,"F4",62,"F4",115,"VK_F4",e,e],[1,68,"F5",63,"F5",116,"VK_F5",e,e],[1,69,"F6",64,"F6",117,"VK_F6",e,e],[1,70,"F7",65,"F7",118,"VK_F7",e,e],[1,71,"F8",66,"F8",119,"VK_F8",e,e],[1,72,"F9",67,"F9",120,"VK_F9",e,e],[1,73,"F10",68,"F10",121,"VK_F10",e,e],[1,74,"F11",69,"F11",122,"VK_F11",e,e],[1,75,"F12",70,"F12",123,"VK_F12",e,e],[1,76,"PrintScreen",0,e,0,e,e,e],[1,77,"ScrollLock",84,"ScrollLock",145,"VK_SCROLL",e,e],[1,78,"Pause",7,"PauseBreak",19,"VK_PAUSE",e,e],[1,79,"Insert",19,"Insert",45,"VK_INSERT",e,e],[1,80,"Home",14,"Home",36,"VK_HOME",e,e],[1,81,"PageUp",11,"PageUp",33,"VK_PRIOR",e,e],[1,82,"Delete",20,"Delete",46,"VK_DELETE",e,e],[1,83,"End",13,"End",35,"VK_END",e,e],[1,84,"PageDown",12,"PageDown",34,"VK_NEXT",e,e],[1,85,"ArrowRight",17,"RightArrow",39,"VK_RIGHT","Right",e],[1,86,"ArrowLeft",15,"LeftArrow",37,"VK_LEFT","Left",e],[1,87,"ArrowDown",18,"DownArrow",40,"VK_DOWN","Down",e],[1,88,"ArrowUp",16,"UpArrow",38,"VK_UP","Up",e],[1,89,"NumLock",83,"NumLock",144,"VK_NUMLOCK",e,e],[1,90,"NumpadDivide",113,"NumPad_Divide",111,"VK_DIVIDE",e,e],[1,91,"NumpadMultiply",108,"NumPad_Multiply",106,"VK_MULTIPLY",e,e],[1,92,"NumpadSubtract",111,"NumPad_Subtract",109,"VK_SUBTRACT",e,e],[1,93,"NumpadAdd",109,"NumPad_Add",107,"VK_ADD",e,e],[1,94,"NumpadEnter",3,e,0,e,e,e],[1,95,"Numpad1",99,"NumPad1",97,"VK_NUMPAD1",e,e],[1,96,"Numpad2",100,"NumPad2",98,"VK_NUMPAD2",e,e],[1,97,"Numpad3",101,"NumPad3",99,"VK_NUMPAD3",e,e],[1,98,"Numpad4",102,"NumPad4",100,"VK_NUMPAD4",e,e],[1,99,"Numpad5",103,"NumPad5",101,"VK_NUMPAD5",e,e],[1,100,"Numpad6",104,"NumPad6",102,"VK_NUMPAD6",e,e],[1,101,"Numpad7",105,"NumPad7",103,"VK_NUMPAD7",e,e],[1,102,"Numpad8",106,"NumPad8",104,"VK_NUMPAD8",e,e],[1,103,"Numpad9",107,"NumPad9",105,"VK_NUMPAD9",e,e],[1,104,"Numpad0",98,"NumPad0",96,"VK_NUMPAD0",e,e],[1,105,"NumpadDecimal",112,"NumPad_Decimal",110,"VK_DECIMAL",e,e],[0,106,"IntlBackslash",97,"OEM_102",226,"VK_OEM_102",e,e],[1,107,"ContextMenu",58,"ContextMenu",93,e,e,e],[1,108,"Power",0,e,0,e,e,e],[1,109,"NumpadEqual",0,e,0,e,e,e],[1,110,"F13",71,"F13",124,"VK_F13",e,e],[1,111,"F14",72,"F14",125,"VK_F14",e,e],[1,112,"F15",73,"F15",126,"VK_F15",e,e],[1,113,"F16",74,"F16",127,"VK_F16",e,e],[1,114,"F17",75,"F17",128,"VK_F17",e,e],[1,115,"F18",76,"F18",129,"VK_F18",e,e],[1,116,"F19",77,"F19",130,"VK_F19",e,e],[1,117,"F20",78,"F20",131,"VK_F20",e,e],[1,118,"F21",79,"F21",132,"VK_F21",e,e],[1,119,"F22",80,"F22",133,"VK_F22",e,e],[1,120,"F23",81,"F23",134,"VK_F23",e,e],[1,121,"F24",82,"F24",135,"VK_F24",e,e],[1,122,"Open",0,e,0,e,e,e],[1,123,"Help",0,e,0,e,e,e],[1,124,"Select",0,e,0,e,e,e],[1,125,"Again",0,e,0,e,e,e],[1,126,"Undo",0,e,0,e,e,e],[1,127,"Cut",0,e,0,e,e,e],[1,128,"Copy",0,e,0,e,e,e],[1,129,"Paste",0,e,0,e,e,e],[1,130,"Find",0,e,0,e,e,e],[1,131,"AudioVolumeMute",117,"AudioVolumeMute",173,"VK_VOLUME_MUTE",e,e],[1,132,"AudioVolumeUp",118,"AudioVolumeUp",175,"VK_VOLUME_UP",e,e],[1,133,"AudioVolumeDown",119,"AudioVolumeDown",174,"VK_VOLUME_DOWN",e,e],[1,134,"NumpadComma",110,"NumPad_Separator",108,"VK_SEPARATOR",e,e],[0,135,"IntlRo",115,"ABNT_C1",193,"VK_ABNT_C1",e,e],[1,136,"KanaMode",0,e,0,e,e,e],[0,137,"IntlYen",0,e,0,e,e,e],[1,138,"Convert",0,e,0,e,e,e],[1,139,"NonConvert",0,e,0,e,e,e],[1,140,"Lang1",0,e,0,e,e,e],[1,141,"Lang2",0,e,0,e,e,e],[1,142,"Lang3",0,e,0,e,e,e],[1,143,"Lang4",0,e,0,e,e,e],[1,144,"Lang5",0,e,0,e,e,e],[1,145,"Abort",0,e,0,e,e,e],[1,146,"Props",0,e,0,e,e,e],[1,147,"NumpadParenLeft",0,e,0,e,e,e],[1,148,"NumpadParenRight",0,e,0,e,e,e],[1,149,"NumpadBackspace",0,e,0,e,e,e],[1,150,"NumpadMemoryStore",0,e,0,e,e,e],[1,151,"NumpadMemoryRecall",0,e,0,e,e,e],[1,152,"NumpadMemoryClear",0,e,0,e,e,e],[1,153,"NumpadMemoryAdd",0,e,0,e,e,e],[1,154,"NumpadMemorySubtract",0,e,0,e,e,e],[1,155,"NumpadClear",131,"Clear",12,"VK_CLEAR",e,e],[1,156,"NumpadClearEntry",0,e,0,e,e,e],[1,0,e,5,"Ctrl",17,"VK_CONTROL",e,e],[1,0,e,4,"Shift",16,"VK_SHIFT",e,e],[1,0,e,6,"Alt",18,"VK_MENU",e,e],[1,0,e,57,"Meta",91,"VK_COMMAND",e,e],[1,157,"ControlLeft",5,e,0,"VK_LCONTROL",e,e],[1,158,"ShiftLeft",4,e,0,"VK_LSHIFT",e,e],[1,159,"AltLeft",6,e,0,"VK_LMENU",e,e],[1,160,"MetaLeft",57,e,0,"VK_LWIN",e,e],[1,161,"ControlRight",5,e,0,"VK_RCONTROL",e,e],[1,162,"ShiftRight",4,e,0,"VK_RSHIFT",e,e],[1,163,"AltRight",6,e,0,"VK_RMENU",e,e],[1,164,"MetaRight",57,e,0,"VK_RWIN",e,e],[1,165,"BrightnessUp",0,e,0,e,e,e],[1,166,"BrightnessDown",0,e,0,e,e,e],[1,167,"MediaPlay",0,e,0,e,e,e],[1,168,"MediaRecord",0,e,0,e,e,e],[1,169,"MediaFastForward",0,e,0,e,e,e],[1,170,"MediaRewind",0,e,0,e,e,e],[1,171,"MediaTrackNext",124,"MediaTrackNext",176,"VK_MEDIA_NEXT_TRACK",e,e],[1,172,"MediaTrackPrevious",125,"MediaTrackPrevious",177,"VK_MEDIA_PREV_TRACK",e,e],[1,173,"MediaStop",126,"MediaStop",178,"VK_MEDIA_STOP",e,e],[1,174,"Eject",0,e,0,e,e,e],[1,175,"MediaPlayPause",127,"MediaPlayPause",179,"VK_MEDIA_PLAY_PAUSE",e,e],[1,176,"MediaSelect",128,"LaunchMediaPlayer",181,"VK_MEDIA_LAUNCH_MEDIA_SELECT",e,e],[1,177,"LaunchMail",129,"LaunchMail",180,"VK_MEDIA_LAUNCH_MAIL",e,e],[1,178,"LaunchApp2",130,"LaunchApp2",183,"VK_MEDIA_LAUNCH_APP2",e,e],[1,179,"LaunchApp1",0,e,0,"VK_MEDIA_LAUNCH_APP1",e,e],[1,180,"SelectTask",0,e,0,e,e,e],[1,181,"LaunchScreenSaver",0,e,0,e,e,e],[1,182,"BrowserSearch",120,"BrowserSearch",170,"VK_BROWSER_SEARCH",e,e],[1,183,"BrowserHome",121,"BrowserHome",172,"VK_BROWSER_HOME",e,e],[1,184,"BrowserBack",122,"BrowserBack",166,"VK_BROWSER_BACK",e,e],[1,185,"BrowserForward",123,"BrowserForward",167,"VK_BROWSER_FORWARD",e,e],[1,186,"BrowserStop",0,e,0,"VK_BROWSER_STOP",e,e],[1,187,"BrowserRefresh",0,e,0,"VK_BROWSER_REFRESH",e,e],[1,188,"BrowserFavorites",0,e,0,"VK_BROWSER_FAVORITES",e,e],[1,189,"ZoomToggle",0,e,0,e,e,e],[1,190,"MailReply",0,e,0,e,e,e],[1,191,"MailForward",0,e,0,e,e,e],[1,192,"MailSend",0,e,0,e,e,e],[1,0,e,114,"KeyInComposition",229,e,e,e],[1,0,e,116,"ABNT_C2",194,"VK_ABNT_C2",e,e],[1,0,e,96,"OEM_8",223,"VK_OEM_8",e,e],[1,0,e,0,e,0,"VK_KANA",e,e],[1,0,e,0,e,0,"VK_HANGUL",e,e],[1,0,e,0,e,0,"VK_JUNJA",e,e],[1,0,e,0,e,0,"VK_FINAL",e,e],[1,0,e,0,e,0,"VK_HANJA",e,e],[1,0,e,0,e,0,"VK_KANJI",e,e],[1,0,e,0,e,0,"VK_CONVERT",e,e],[1,0,e,0,e,0,"VK_NONCONVERT",e,e],[1,0,e,0,e,0,"VK_ACCEPT",e,e],[1,0,e,0,e,0,"VK_MODECHANGE",e,e],[1,0,e,0,e,0,"VK_SELECT",e,e],[1,0,e,0,e,0,"VK_PRINT",e,e],[1,0,e,0,e,0,"VK_EXECUTE",e,e],[1,0,e,0,e,0,"VK_SNAPSHOT",e,e],[1,0,e,0,e,0,"VK_HELP",e,e],[1,0,e,0,e,0,"VK_APPS",e,e],[1,0,e,0,e,0,"VK_PROCESSKEY",e,e],[1,0,e,0,e,0,"VK_PACKET",e,e],[1,0,e,0,e,0,"VK_DBE_SBCSCHAR",e,e],[1,0,e,0,e,0,"VK_DBE_DBCSCHAR",e,e],[1,0,e,0,e,0,"VK_ATTN",e,e],[1,0,e,0,e,0,"VK_CRSEL",e,e],[1,0,e,0,e,0,"VK_EXSEL",e,e],[1,0,e,0,e,0,"VK_EREOF",e,e],[1,0,e,0,e,0,"VK_PLAY",e,e],[1,0,e,0,e,0,"VK_ZOOM",e,e],[1,0,e,0,e,0,"VK_NONAME",e,e],[1,0,e,0,e,0,"VK_PA1",e,e],[1,0,e,0,e,0,"VK_OEM_CLEAR",e,e]],i=[],n=[];for(const e of t){const[t,o,s,r,a,l,d,c,h]=e;if(n[o]||(n[o]=!0,we[o]=s,Ce[s]=o,ye[s.toLowerCase()]=o,t&&(Se[o]=r,0!==r&&3!==r&&5!==r&&4!==r&&6!==r&&57!==r&&(xe[r]=o))),!i[r]){if(i[r]=!0,!a)throw new Error(`String representation missing for key code ${r} around scan code ${s}`);me.define(r,a),fe.define(r,c||a),_e.define(r,h||c||a)}l&&(ve[l]=r),d&&(be[d]=r)}xe[3]=46}(),function(e){e.toString=function(e){return me.keyCodeToStr(e)},e.fromString=function(e){return me.strToKeyCode(e)},e.toUserSettingsUS=function(e){return fe.keyCodeToStr(e)},e.toUserSettingsGeneral=function(e){return _e.keyCodeToStr(e)},e.fromUserSettings=function(e){return fe.strToKeyCode(e)||_e.strToKeyCode(e)},e.toElectronAccelerator=function(e){if(e>=98&&e<=113)return null;switch(e){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return me.keyCodeToStr(e)}}(ke||(ke={}));const Ee=new class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout((()=>{if(e.stack){if(Be.isErrorNoTelemetry(e))throw new Be(e.message+"\n\n"+e.stack);throw new Error(e.message+"\n\n"+e.stack)}throw e}),0)}}emit(e){this.listeners.forEach((t=>{t(e)}))}onUnexpectedError(e){this.unexpectedErrorHandler(e),this.emit(e)}onUnexpectedExternalError(e){this.unexpectedErrorHandler(e)}};function Ie(e){Ee.onUnexpectedError(e)}function De(e){Re(e)||Ee.onUnexpectedError(e)}function Ne(e){Re(e)||Ee.onUnexpectedExternalError(e)}function Me(e){if(e instanceof Error){const{name:t,message:i,cause:n}=e;return{$isError:!0,name:t,message:i,stack:e.stacktrace||e.stack,noTelemetry:Be.isErrorNoTelemetry(e),cause:n?Me(n):void 0,code:e.code}}return e}const Te="Canceled";function Re(e){return e instanceof Ae||e instanceof Error&&e.name===Te&&e.message===Te}class Ae extends Error{constructor(){super(Te),this.name=this.message}}function Oe(e){return e?new Error(`Illegal argument: ${e}`):new Error("Illegal argument")}function Pe(e){return e?new Error(`Illegal state: ${e}`):new Error("Illegal state")}class Fe extends Error{constructor(e){super("NotSupported"),e&&(this.message=e)}}class Be extends Error{constructor(e){super(e),this.name="CodeExpectedError"}static fromError(e){if(e instanceof Be)return e;const t=new Be;return t.message=e.message,t.stack=e.stack,t}static isErrorNoTelemetry(e){return"CodeExpectedError"===e.name}}class We extends Error{constructor(e){super(e||"An unexpected bug occurred."),Object.setPrototypeOf(this,We.prototype)}}function He(e,t){if("number"==typeof e){if(0===e)return null;const i=(65535&e)>>>0,n=(4294901760&e)>>>16;return new Ue(0!==n?[Ve(i,t),Ve(n,t)]:[Ve(i,t)])}{const i=[];for(let n=0;n=0;t--)yield e[t]},e.isEmpty=function(e){return!e||!0===e[Symbol.iterator]().next().done},e.first=function(e){return e[Symbol.iterator]().next().value},e.some=function(e,t){let i=0;for(const n of e)if(t(n,i++))return!0;return!1},e.every=function(e,t){let i=0;for(const n of e)if(!t(n,i++))return!1;return!0},e.find=function(e,t){for(const i of e)if(t(i))return i},e.filter=function*(e,t){for(const i of e)t(i)&&(yield i)},e.map=function*(e,t){let i=0;for(const n of e)yield t(n,i++)},e.flatMap=function*(e,t){let i=0;for(const n of e)yield*t(n,i++)},e.concat=function*(...e){for(const t of e)ht(t)?yield*t:yield t},e.reduce=function(e,t,i){let n=i;for(const i of e)n=t(n,i);return n},e.length=function(e){let t=0;for(const i of e)t++;return t},e.slice=function*(e,t,i=e.length){for(t<-e.length&&(t=0),t<0&&(t+=e.length),i<0?i+=e.length:i>e.length&&(i=e.length);to}]},e.asyncToArray=async function(e){const t=[];for await(const i of e)t.push(i);return t},e.asyncToArrayFlat=async function(e){let t=[];for await(const i of e)t=t.concat(i);return t}}(wt||(wt={}));let Ct=null;function yt(e){return Ct?.trackDisposable(e),e}function St(e){Ct?.markAsDisposed(e)}function xt(e,t){Ct?.setParent(e,t)}function kt(e){return Ct?.markAsSingleton(e),e}function Lt(e){return"object"==typeof e&&null!==e&&"function"==typeof e.dispose&&0===e.dispose.length}function Et(e){if(wt.is(e)){const t=[];for(const i of e)if(i)try{i.dispose()}catch(e){t.push(e)}if(1===t.length)throw t[0];if(t.length>1)throw new AggregateError(t,"Encountered errors while disposing of store");return Array.isArray(e)?[]:e}if(e)return e.dispose(),e}function It(...e){const t=Nt((()=>Et(e)));return t}class Dt{constructor(e){this._isDisposed=!1,this._fn=e,yt(this)}dispose(){if(!this._isDisposed){if(!this._fn)throw new Error("Unbound disposable context: Need to use an arrow function to preserve the value of this");this._isDisposed=!0,St(this),this._fn()}}}function Nt(e){return new Dt(e)}class Mt{static{this.DISABLE_DISPOSED_WARNING=!1}constructor(){this._toDispose=new Set,this._isDisposed=!1,yt(this)}dispose(){this._isDisposed||(St(this),this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(0!==this._toDispose.size)try{Et(this._toDispose)}finally{this._toDispose.clear()}}add(e){if(!e||e===Tt.None)return e;if(e===this)throw new Error("Cannot register a disposable on itself!");return xt(e,this),this._isDisposed?Mt.DISABLE_DISPOSED_WARNING||console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(e),e}delete(e){if(e){if(e===this)throw new Error("Cannot dispose a disposable on itself!");this._toDispose.delete(e),e.dispose()}}}class Tt{static{this.None=Object.freeze({dispose(){}})}constructor(){this._store=new Mt,yt(this),xt(this._store,this)}dispose(){St(this),this._store.dispose()}_register(e){if(e===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(e)}}class Rt{constructor(){this._isDisposed=!1,yt(this)}get value(){return this._isDisposed?void 0:this._value}set value(e){this._isDisposed||e===this._value||(this._value?.dispose(),e&&xt(e,this),this._value=e)}clear(){this.value=void 0}dispose(){this._isDisposed=!0,St(this),this._value?.dispose(),this._value=void 0}}class At{constructor(e){this._disposable=e,this._counter=1}acquire(){return this._counter++,this}release(){return 0==--this._counter&&this._disposable.dispose(),this}}class Ot{constructor(e){this.object=e}dispose(){}}class Pt{constructor(){this._store=new Map,this._isDisposed=!1,yt(this)}dispose(){St(this),this._isDisposed=!0,this.clearAndDisposeAll()}clearAndDisposeAll(){if(this._store.size)try{Et(this._store.values())}finally{this._store.clear()}}get(e){return this._store.get(e)}set(e,t,i=!1){this._isDisposed&&console.warn(new Error("Trying to add a disposable to a DisposableMap that has already been disposed of. The added object will be leaked!").stack),i||this._store.get(e)?.dispose(),this._store.set(e,t),xt(t,this)}deleteAndDispose(e){this._store.get(e)?.dispose(),this._store.delete(e)}values(){return this._store.values()}[Symbol.iterator](){return this._store[Symbol.iterator]()}}class Ft{static{this.Undefined=new Ft(void 0)}constructor(e){this.element=e,this.next=Ft.Undefined,this.prev=Ft.Undefined}}class Bt{constructor(){this._first=Ft.Undefined,this._last=Ft.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===Ft.Undefined}clear(){let e=this._first;for(;e!==Ft.Undefined;){const t=e.next;e.prev=Ft.Undefined,e.next=Ft.Undefined,e=t}this._first=Ft.Undefined,this._last=Ft.Undefined,this._size=0}unshift(e){return this._insert(e,!1)}push(e){return this._insert(e,!0)}_insert(e,t){const i=new Ft(e);if(this._first===Ft.Undefined)this._first=i,this._last=i;else if(t){const e=this._last;this._last=i,i.prev=e,e.next=i}else{const e=this._first;this._first=i,i.next=e,e.prev=i}this._size+=1;let n=!1;return()=>{n||(n=!0,this._remove(i))}}shift(){if(this._first!==Ft.Undefined){const e=this._first.element;return this._remove(this._first),e}}pop(){if(this._last!==Ft.Undefined){const e=this._last.element;return this._remove(this._last),e}}_remove(e){if(e.prev!==Ft.Undefined&&e.next!==Ft.Undefined){const t=e.prev;t.next=e.next,e.next.prev=t}else e.prev===Ft.Undefined&&e.next===Ft.Undefined?(this._first=Ft.Undefined,this._last=Ft.Undefined):e.next===Ft.Undefined?(this._last=this._last.prev,this._last.next=Ft.Undefined):e.prev===Ft.Undefined&&(this._first=this._first.next,this._first.prev=Ft.Undefined);this._size-=1}*[Symbol.iterator](){let e=this._first;for(;e!==Ft.Undefined;)yield e.element,e=e.next}}const Wt=globalThis.performance.now.bind(globalThis.performance);class Ht{static create(e){return new Ht(e)}constructor(e){this._now=!1===e?Date.now:Wt,this._startTime=this._now(),this._stopTime=-1}stop(){this._stopTime=this._now()}reset(){this._startTime=this._now(),this._stopTime=-1}elapsed(){return-1!==this._stopTime?this._stopTime-this._startTime:this._now()-this._startTime}}var Vt;!function(e){function t(e){return(t,i=null,n)=>{let o,s=!1;return o=e((e=>{if(!s)return o?o.dispose():s=!0,t.call(i,e)}),null,n),s&&o.dispose(),o}}function i(e,t,i){return o(((i,n=null,o)=>e((e=>i.call(n,t(e))),null,o)),i)}function n(e,t,i){return o(((i,n=null,o)=>e((e=>t(e)&&i.call(n,e)),null,o)),i)}function o(e,t){let i;const n=new Gt({onWillAddFirstListener(){i=e(n.fire,n)},onDidRemoveLastListener(){i?.dispose()}});return t?.add(n),n.event}function s(e,t,i=100,n=!1,o=!1,s,r){let a,l,d,c,h=0;const u=new Gt({leakWarningThreshold:s,onWillAddFirstListener(){a=e((e=>{h++,l=t(l,e),n&&!d&&(u.fire(l),l=void 0),c=()=>{const e=l;l=void 0,d=void 0,(!n||h>1)&&u.fire(e),h=0},"number"==typeof i?(d&&clearTimeout(d),d=setTimeout(c,i)):void 0===d&&(d=null,queueMicrotask(c))}))},onWillRemoveListener(){o&&h>0&&c?.()},onDidRemoveLastListener(){c=void 0,a.dispose()}});return r?.add(u),u.event}e.None=()=>Tt.None,e.defer=function(e,t){return s(e,(()=>{}),0,void 0,!0,void 0,t)},e.once=t,e.onceIf=function(t,i){return e.once(e.filter(t,i))},e.map=i,e.forEach=function(e,t,i){return o(((i,n=null,o)=>e((e=>{t(e),i.call(n,e)}),null,o)),i)},e.filter=n,e.signal=function(e){return e},e.any=function(...e){return(t,i=null,n)=>{return o=It(...e.map((e=>e((e=>t.call(i,e)))))),(s=n)instanceof Array?s.push(o):s&&s.add(o),o;var o,s}},e.reduce=function(e,t,n,o){let s=n;return i(e,(e=>(s=t(s,e),s)),o)},e.debounce=s,e.accumulate=function(t,i=0,n){return e.debounce(t,((e,t)=>e?(e.push(t),e):[t]),i,void 0,!0,void 0,n)},e.latch=function(e,t=(e,t)=>e===t,i){let o,s=!0;return n(e,(e=>{const i=s||!t(e,o);return s=!1,o=e,i}),i)},e.split=function(t,i,n){return[e.filter(t,i,n),e.filter(t,(e=>!i(e)),n)]},e.buffer=function(e,t=!1,i=[],n){let o=i.slice(),s=e((e=>{o?o.push(e):a.fire(e)}));n&&n.add(s);const r=()=>{o?.forEach((e=>a.fire(e))),o=null},a=new Gt({onWillAddFirstListener(){s||(s=e((e=>a.fire(e))),n&&n.add(s))},onDidAddFirstListener(){o&&(t?setTimeout(r):r())},onDidRemoveLastListener(){s&&s.dispose(),s=null}});return n&&n.add(a),a.event},e.chain=function(e,t){return(i,n,o)=>{const s=t(new a);return e((function(e){const t=s.evaluate(e);t!==r&&i.call(n,t)}),void 0,o)}};const r=Symbol("HaltChainable");class a{constructor(){this.steps=[]}map(e){return this.steps.push(e),this}forEach(e){return this.steps.push((t=>(e(t),t))),this}filter(e){return this.steps.push((t=>e(t)?t:r)),this}reduce(e,t){let i=t;return this.steps.push((t=>(i=e(i,t),i))),this}latch(e=(e,t)=>e===t){let t,i=!0;return this.steps.push((n=>{const o=i||!e(n,t);return i=!1,t=n,o?n:r})),this}evaluate(e){for(const t of this.steps)if((e=t(e))===r)break;return e}}e.fromNodeEventEmitter=function(e,t,i=e=>e){const n=(...e)=>o.fire(i(...e)),o=new Gt({onWillAddFirstListener:()=>e.on(t,n),onDidRemoveLastListener:()=>e.removeListener(t,n)});return o.event},e.fromDOMEventEmitter=function(e,t,i=e=>e){const n=(...e)=>o.fire(i(...e)),o=new Gt({onWillAddFirstListener:()=>e.addEventListener(t,n),onDidRemoveLastListener:()=>e.removeEventListener(t,n)});return o.event},e.toPromise=function(e,i){let n;const o=new Promise(((o,s)=>{const r=t(e)(o,null,i);n=()=>r.dispose()}));return o.cancel=n,o},e.forward=function(e,t){return e((e=>t.fire(e)))},e.runAndSubscribe=function(e,t,i){return t(i),e((e=>t(e)))};class l{constructor(e,t){this._observable=e,this._counter=0,this._hasChanged=!1;const i={onWillAddFirstListener:()=>{e.addObserver(this),this._observable.reportChanges()},onDidRemoveLastListener:()=>{e.removeObserver(this)}};this.emitter=new Gt(i),t&&t.add(this.emitter)}beginUpdate(e){this._counter++}handlePossibleChange(e){}handleChange(e,t){this._hasChanged=!0}endUpdate(e){this._counter--,0===this._counter&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}e.fromObservable=function(e,t){return new l(e,t).emitter.event},e.fromObservableLight=function(e){return(t,i,n)=>{let o=0,s=!1;const r={beginUpdate(){o++},endUpdate(){o--,0===o&&(e.reportChanges(),s&&(s=!1,t.call(i)))},handlePossibleChange(){},handleChange(){s=!0}};e.addObserver(r),e.reportChanges();const a={dispose(){e.removeObserver(r)}};return n instanceof Mt?n.add(a):Array.isArray(n)&&n.push(a),a}}}(Vt||(Vt={}));class zt{static{this.all=new Set}static{this._idPool=0}constructor(e){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${e}_${zt._idPool++}`,zt.all.add(this)}start(e){this._stopWatch=new Ht,this.listenerCount=e}stop(){if(this._stopWatch){const e=this._stopWatch.elapsed();this.durations.push(e),this.elapsedOverall+=e,this.invocationCount+=1,this._stopWatch=void 0}}}class Ut{static{this._idPool=1}constructor(e,t,i=(Ut._idPool++).toString(16).padStart(3,"0")){this._errorHandler=e,this.threshold=t,this.name=i,this._warnCountdown=0}dispose(){this._stacks?.clear()}check(e,t){const i=this.threshold;if(i<=0||t{const t=this._stacks.get(e.value)||0;this._stacks.set(e.value,t-1)}}getMostFrequentStack(){if(!this._stacks)return;let e,t=0;for(const[i,n]of this._stacks)(!e||t{if(this._leakageMon&&this._size>this._leakageMon.threshold**2){const e=`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;console.warn(e);const t=this._leakageMon.getMostFrequentStack()??["UNKNOWN stack",-1],i=new qt(`${e}. HINT: Stack shows most frequent listener (${t[1]}-times)`,t[0]);return(this._options?.onListenerError||De)(i),Tt.None}if(this._disposed)return Tt.None;t&&(e=e.bind(t));const n=new $t(e);let o;this._leakageMon&&this._size>=Math.ceil(.2*this._leakageMon.threshold)&&(n.stack=jt.create(),o=this._leakageMon.check(n.stack,this._size+1)),this._listeners?this._listeners instanceof $t?(this._deliveryQueue??=new Yt,this._listeners=[this._listeners,n]):this._listeners.push(n):(this._options?.onWillAddFirstListener?.(this),this._listeners=n,this._options?.onDidAddFirstListener?.(this)),this._options?.onDidAddListener?.(this),this._size++;const s=Nt((()=>{o?.(),this._removeListener(n)}));return i instanceof Mt?i.add(s):Array.isArray(i)&&i.push(s),s},this._event}_removeListener(e){if(this._options?.onWillRemoveListener?.(this),!this._listeners)return;if(1===this._size)return this._listeners=void 0,this._options?.onDidRemoveLastListener?.(this),void(this._size=0);const t=this._listeners,i=t.indexOf(e);if(-1===i)throw console.log("disposed?",this._disposed),console.log("size?",this._size),console.log("arr?",JSON.stringify(this._listeners)),new Error("Attempted to dispose unknown listener");this._size--,t[i]=void 0;const n=this._deliveryQueue.current===this;if(2*this._size<=t.length){let e=0;for(let i=0;i0}}class Yt{constructor(){this.i=-1,this.end=0}enqueue(e,t,i){this.i=0,this.end=i,this.current=e,this.value=t}reset(){this.i=this.end,this.current=void 0,this.value=void 0}}class Zt extends Gt{constructor(e){super(e),this._isPaused=0,this._eventQueue=new Bt,this._mergeFn=e?.merge}pause(){this._isPaused++}resume(){if(0!==this._isPaused&&0==--this._isPaused)if(this._mergeFn){if(this._eventQueue.size>0){const e=Array.from(this._eventQueue);this._eventQueue.clear(),super.fire(this._mergeFn(e))}}else for(;!this._isPaused&&0!==this._eventQueue.size;)super.fire(this._eventQueue.shift())}fire(e){this._size&&(0!==this._isPaused?this._eventQueue.push(e):super.fire(e))}}class Qt extends Zt{constructor(e){super(e),this._delay=e.delay??100}fire(e){this._handle||(this.pause(),this._handle=setTimeout((()=>{this._handle=void 0,this.resume()}),this._delay)),super.fire(e)}}class Xt extends Gt{constructor(e){super(e),this._queuedEvents=[],this._mergeFn=e?.merge}fire(e){this.hasListeners()&&(this._queuedEvents.push(e),1===this._queuedEvents.length&&queueMicrotask((()=>{this._mergeFn?super.fire(this._mergeFn(this._queuedEvents)):this._queuedEvents.forEach((e=>super.fire(e))),this._queuedEvents=[]})))}}class Jt{constructor(){this.hasListeners=!1,this.events=[],this.emitter=new Gt({onWillAddFirstListener:()=>this.onFirstListenerAdd(),onDidRemoveLastListener:()=>this.onLastListenerRemove()})}get event(){return this.emitter.event}add(e){const t={event:e,listener:null};return this.events.push(t),this.hasListeners&&this.hook(t),Nt(et((()=>{this.hasListeners&&this.unhook(t);const e=this.events.indexOf(t);this.events.splice(e,1)})))}onFirstListenerAdd(){this.hasListeners=!0,this.events.forEach((e=>this.hook(e)))}onLastListenerRemove(){this.hasListeners=!1,this.events.forEach((e=>this.unhook(e)))}hook(e){e.listener=e.event((e=>this.emitter.fire(e)))}unhook(e){e.listener?.dispose(),e.listener=null}dispose(){this.emitter.dispose();for(const e of this.events)e.listener?.dispose();this.events=[]}}class ei{constructor(){this.data=[]}wrapEvent(e,t,i){return(n,o,s)=>e((e=>{const s=this.data[this.data.length-1];if(!t)return void(s?s.buffers.push((()=>n.call(o,e))):n.call(o,e));const r=s;r?(r.items??=[],r.items.push(e),0===r.buffers.length&&s.buffers.push((()=>{r.reducedResult??=i?r.items.reduce(t,i):r.items.reduce(t),n.call(o,r.reducedResult)}))):n.call(o,t(i,e))}),void 0,s)}bufferEvents(e){const t={buffers:new Array};this.data.push(t);const i=e();return this.data.pop(),t.buffers.forEach((e=>e())),i}}class ti{constructor(){this.listening=!1,this.inputEvent=Vt.None,this.inputEventListener=Tt.None,this.emitter=new Gt({onDidAddFirstListener:()=>{this.listening=!0,this.inputEventListener=this.inputEvent(this.emitter.fire,this.emitter)},onDidRemoveLastListener:()=>{this.listening=!1,this.inputEventListener.dispose()}}),this.event=this.emitter.event}set input(e){this.inputEvent=e,this.listening&&(this.inputEventListener.dispose(),this.inputEventListener=e(this.emitter.fire,this.emitter))}dispose(){this.inputEventListener.dispose(),this.emitter.dispose()}}const ii=Object.freeze((function(e,t){const i=setTimeout(e.bind(t),0);return{dispose(){clearTimeout(i)}}}));var ni;!function(e){e.isCancellationToken=function(t){return t===e.None||t===e.Cancelled||t instanceof oi||!(!t||"object"!=typeof t)&&"boolean"==typeof t.isCancellationRequested&&"function"==typeof t.onCancellationRequested},e.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:Vt.None}),e.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:ii})}(ni||(ni={}));class oi{constructor(){this._isCancelled=!1,this._emitter=null}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?ii:(this._emitter||(this._emitter=new Gt),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}}class si{constructor(e){this._token=void 0,this._parentListener=void 0,this._parentListener=e&&e.onCancellationRequested(this.cancel,this)}get token(){return this._token||(this._token=new oi),this._token}cancel(){this._token?this._token instanceof oi&&this._token.cancel():this._token=ni.Cancelled}dispose(e=!1){e&&this.cancel(),this._parentListener?.dispose(),this._token?this._token instanceof oi&&this._token.dispose():this._token=ni.None}}function ri(e){const t=new si;return e.add({dispose(){t.cancel()}}),t.token}const ai=Symbol("MicrotaskDelay");function li(e){return!!e&&"function"==typeof e.then}function di(e){const t=new si,i=e(t.token);let n=!1;const o=new Promise(((e,o)=>{const s=t.token.onCancellationRequested((()=>{n=!0,s.dispose(),o(new Ae)}));Promise.resolve(i).then((i=>{s.dispose(),t.dispose(),n?Lt(i)&&i.dispose():e(i)}),(e=>{s.dispose(),t.dispose(),o(e)}))}));return new class{cancel(){t.cancel(),t.dispose()}then(e,t){return o.then(e,t)}catch(e){return this.then(void 0,e)}finally(e){return o.finally(e)}}}function ci(e,t,i){return new Promise(((n,o)=>{const s=t.onCancellationRequested((()=>{s.dispose(),n(i)}));e.then(n,o).finally((()=>s.dispose()))}))}class hi{constructor(){this.isDisposed=!1,this.activePromise=null,this.queuedPromise=null,this.queuedPromiseFactory=null}queue(e){if(this.isDisposed)return Promise.reject(new Error("Throttler is disposed"));if(this.activePromise){if(this.queuedPromiseFactory=e,!this.queuedPromise){const e=()=>{if(this.queuedPromise=null,this.isDisposed)return;const e=this.queue(this.queuedPromiseFactory);return this.queuedPromiseFactory=null,e};this.queuedPromise=new Promise((t=>{this.activePromise.then(e,e).then(t)}))}return new Promise(((e,t)=>{this.queuedPromise.then(e,t)}))}return this.activePromise=e(),new Promise(((e,t)=>{this.activePromise.then((t=>{this.activePromise=null,e(t)}),(e=>{this.activePromise=null,t(e)}))}))}dispose(){this.isDisposed=!0}}class ui{constructor(e){this.defaultDelay=e,this.deferred=null,this.completionPromise=null,this.doResolve=null,this.doReject=null,this.task=null}trigger(e,t=this.defaultDelay){this.task=e,this.cancelTimeout(),this.completionPromise||(this.completionPromise=new Promise(((e,t)=>{this.doResolve=e,this.doReject=t})).then((()=>{if(this.completionPromise=null,this.doResolve=null,this.task){const e=this.task;return this.task=null,e()}})));const i=()=>{this.deferred=null,this.doResolve?.(null)};return this.deferred=t===ai?(e=>{let t=!0;return queueMicrotask((()=>{t&&(t=!1,e())})),{isTriggered:()=>t,dispose:()=>{t=!1}}})(i):((e,t)=>{let i=!0;const n=setTimeout((()=>{i=!1,t()}),e);return{isTriggered:()=>i,dispose:()=>{clearTimeout(n),i=!1}}})(t,i),this.completionPromise}isTriggered(){return!!this.deferred?.isTriggered()}cancel(){this.cancelTimeout(),this.completionPromise&&(this.doReject?.(new Ae),this.completionPromise=null)}cancelTimeout(){this.deferred?.dispose(),this.deferred=null}dispose(){this.cancel()}}class gi{constructor(e){this.delayer=new ui(e),this.throttler=new hi}trigger(e,t){return this.delayer.trigger((()=>this.throttler.queue(e)),t)}cancel(){this.delayer.cancel()}dispose(){this.delayer.dispose(),this.throttler.dispose()}}function pi(e,t){return t?new Promise(((i,n)=>{const o=setTimeout((()=>{s.dispose(),i()}),e),s=t.onCancellationRequested((()=>{clearTimeout(o),s.dispose(),n(new Ae)}))})):di((t=>pi(e,t)))}function mi(e,t=0,i){const n=setTimeout((()=>{e(),i&&o.dispose()}),t),o=Nt((()=>{clearTimeout(n),i?.delete(o)}));return i?.add(o),o}function fi(e,t=e=>!!e,i=null){let n=0;const o=e.length,s=()=>{if(n>=o)return Promise.resolve(i);const r=e[n++];return Promise.resolve(r()).then((e=>t(e)?Promise.resolve(e):s()))};return s()}class _i{constructor(){this._runningTask=void 0,this._pendingTasks=[]}schedule(e){const t=new ki;return this._pendingTasks.push({task:e,deferred:t,setUndefinedWhenCleared:!1}),this._runIfNotRunning(),t.p}_runIfNotRunning(){void 0===this._runningTask&&this._processQueue()}async _processQueue(){if(0===this._pendingTasks.length)return;const e=this._pendingTasks.shift();if(e){if(this._runningTask)throw new We;this._runningTask=e.task;try{const t=await e.task();e.deferred.complete(t)}catch(t){e.deferred.error(t)}finally{this._runningTask=void 0,this._processQueue()}}}clearPending(){const e=this._pendingTasks;this._pendingTasks=[];for(const t of e)t.setUndefinedWhenCleared?t.deferred.complete(void 0):t.deferred.error(new Ae)}}class vi{constructor(e,t){this._isDisposed=!1,this._token=void 0,"function"==typeof e&&"number"==typeof t&&this.setIfNotSet(e,t)}dispose(){this.cancel(),this._isDisposed=!0}cancel(){void 0!==this._token&&(clearTimeout(this._token),this._token=void 0)}cancelAndSet(e,t){if(this._isDisposed)throw new We("Calling 'cancelAndSet' on a disposed TimeoutTimer");this.cancel(),this._token=setTimeout((()=>{this._token=void 0,e()}),t)}setIfNotSet(e,t){if(this._isDisposed)throw new We("Calling 'setIfNotSet' on a disposed TimeoutTimer");void 0===this._token&&(this._token=setTimeout((()=>{this._token=void 0,e()}),t))}}class bi{constructor(){this.disposable=void 0,this.isDisposed=!1}cancel(){this.disposable?.dispose(),this.disposable=void 0}cancelAndSet(e,t,i=globalThis){if(this.isDisposed)throw new We("Calling 'cancelAndSet' on a disposed IntervalTimer");this.cancel();const n=i.setInterval((()=>{e()}),t);this.disposable=Nt((()=>{i.clearInterval(n),this.disposable=void 0}))}dispose(){this.cancel(),this.isDisposed=!0}}class wi{constructor(e,t){this.timeoutToken=void 0,this.runner=e,this.timeout=t,this.timeoutHandler=this.onTimeout.bind(this)}dispose(){this.cancel(),this.runner=null}cancel(){this.isScheduled()&&(clearTimeout(this.timeoutToken),this.timeoutToken=void 0)}schedule(e=this.timeout){this.cancel(),this.timeoutToken=setTimeout(this.timeoutHandler,e)}get delay(){return this.timeout}set delay(e){this.timeout=e}isScheduled(){return void 0!==this.timeoutToken}onTimeout(){this.timeoutToken=void 0,this.runner&&this.doRun()}doRun(){this.runner?.()}}let Ci,yi;!function(){const e=globalThis;yi="function"!=typeof e.requestIdleCallback||"function"!=typeof e.cancelIdleCallback?(e,t,i)=>{ne((()=>{if(n)return;const e=Date.now()+15,i={didTimeout:!0,timeRemaining:()=>Math.max(0,e-Date.now())};t(Object.freeze(i))}));let n=!1;return{dispose(){n||(n=!0)}}}:(e,t,i)=>{const n=e.requestIdleCallback(t,"number"==typeof i?{timeout:i}:void 0);let o=!1;return{dispose(){o||(o=!0,e.cancelIdleCallback(n))}}},Ci=(e,t)=>yi(globalThis,e,t)}();class Si{constructor(e,t){this._didRun=!1,this._executor=()=>{try{this._value=t()}catch(e){this._error=e}finally{this._didRun=!0}},this._handle=yi(e,(()=>this._executor()))}dispose(){this._handle.dispose()}get value(){if(this._didRun||(this._handle.dispose(),this._executor()),this._error)throw this._error;return this._value}get isInitialized(){return this._didRun}}class xi extends Si{constructor(e){super(globalThis,e)}}class ki{get isRejected(){return 1===this.outcome?.outcome}get isSettled(){return!!this.outcome}constructor(){this.p=new Promise(((e,t)=>{this.completeCallback=e,this.errorCallback=t}))}complete(e){return this.isSettled?Promise.resolve():new Promise((t=>{this.completeCallback(e),this.outcome={outcome:0,value:e},t()}))}error(e){return this.isSettled?Promise.resolve():new Promise((t=>{this.errorCallback(e),this.outcome={outcome:1,value:e},t()}))}cancel(){return this.error(new Ae)}}var Li,Ei;!function(e){e.settled=async function(e){let t;const i=await Promise.all(e.map((e=>e.then((e=>e),(e=>{t||(t=e)})))));if(void 0!==t)throw t;return i},e.withAsyncBody=function(e){return new Promise((async(t,i)=>{try{await e(t,i)}catch(e){i(e)}}))}}(Li||(Li={}));class Ii{constructor(){this._unsatisfiedConsumers=[],this._unconsumedValues=[]}get hasFinalValue(){return!!this._finalValue}produce(e){if(this._ensureNoFinalValue(),this._unsatisfiedConsumers.length>0){const t=this._unsatisfiedConsumers.shift();this._resolveOrRejectDeferred(t,e)}else this._unconsumedValues.push(e)}produceFinal(e){this._ensureNoFinalValue(),this._finalValue=e;for(const t of this._unsatisfiedConsumers)this._resolveOrRejectDeferred(t,e);this._unsatisfiedConsumers.length=0}_ensureNoFinalValue(){if(this._finalValue)throw new We("ProducerConsumer: cannot produce after final value has been set")}_resolveOrRejectDeferred(e,t){t.ok?e.complete(t.value):e.error(t.error)}consume(){if(this._unconsumedValues.length>0||this._finalValue){const e=this._unconsumedValues.length>0?this._unconsumedValues.shift():this._finalValue;return e.ok?Promise.resolve(e.value):Promise.reject(e.error)}{const e=new ki;return this._unsatisfiedConsumers.push(e),e.p}}}class Di{constructor(e,t){this._onReturn=t,this._producerConsumer=new Ii,this._iterator={next:()=>this._producerConsumer.consume(),return:()=>(this._onReturn?.(),Promise.resolve({done:!0,value:void 0})),throw:async e=>(this._finishError(e),{done:!0,value:void 0})},queueMicrotask((async()=>{const t=e({emitOne:e=>this._producerConsumer.produce({ok:!0,value:{done:!1,value:e}}),emitMany:e=>{for(const t of e)this._producerConsumer.produce({ok:!0,value:{done:!1,value:t}})},reject:e=>this._finishError(e)});if(!this._producerConsumer.hasFinalValue)try{await t,this._finishOk()}catch(e){this._finishError(e)}}))}static fromArray(e){return new Di((t=>{t.emitMany(e)}))}static fromPromise(e){return new Di((async t=>{t.emitMany(await e)}))}static fromPromisesResolveOrder(e){return new Di((async t=>{await Promise.all(e.map((async e=>t.emitOne(await e))))}))}static merge(e){return new Di((async t=>{await Promise.all(e.map((async e=>{for await(const i of e)t.emitOne(i)})))}))}static{this.EMPTY=Di.fromArray([])}static map(e,t){return new Di((async i=>{for await(const n of e)i.emitOne(t(n))}))}map(e){return Di.map(this,e)}static coalesce(e){return Di.filter(e,(e=>!!e))}coalesce(){return Di.coalesce(this)}static filter(e,t){return new Di((async i=>{for await(const n of e)t(n)&&i.emitOne(n)}))}filter(e){return Di.filter(this,e)}_finishOk(){this._producerConsumer.hasFinalValue||this._producerConsumer.produceFinal({ok:!0,value:{done:!0,value:void 0}})}_finishError(e){this._producerConsumer.hasFinalValue||this._producerConsumer.produceFinal({ok:!1,error:e})}[Symbol.asyncIterator](){return this._iterator}}class Ni extends Di{constructor(e,t){super(t),this._source=e}cancel(){this._source.cancel()}}function Mi(e){return e}Symbol("AsyncReaderEndOfStream");class Ti{constructor(e,t){this.lastCache=void 0,this.lastArgKey=void 0,"function"==typeof e?(this._fn=e,this._computeKey=Mi):(this._fn=t,this._computeKey=e.getCacheKey)}get(e){const t=this._computeKey(e);return this.lastArgKey!==t&&(this.lastArgKey=t,this.lastCache=this._fn(e)),this.lastCache}}class Ri{get cachedValues(){return this._map}constructor(e,t){this._map=new Map,this._map2=new Map,"function"==typeof e?(this._fn=e,this._computeKey=Mi):(this._fn=t,this._computeKey=e.getCacheKey)}get(e){const t=this._computeKey(e);if(this._map2.has(t))return this._map2.get(t);const i=this._fn(e);return this._map.set(e,i),this._map2.set(t,i),i}}!function(e){e[e.Uninitialized=0]="Uninitialized",e[e.Running=1]="Running",e[e.Completed=2]="Completed"}(Ei||(Ei={}));class Ai{constructor(e){this.executor=e,this._state=Ei.Uninitialized}get value(){if(this._state===Ei.Uninitialized){this._state=Ei.Running;try{this._value=this.executor()}catch(e){this._error=e}finally{this._state=Ei.Completed}}else if(this._state===Ei.Running)throw new Error("Cannot read the value of a lazy that is being initialized");if(this._error)throw this._error;return this._value}get rawValue(){return this._value}}function Oi(e){return!e||"string"!=typeof e||0===e.trim().length}const Pi=/{(\d+)}/g;function Fi(e,...t){return 0===t.length?e:e.replace(Pi,(function(e,i){const n=parseInt(i,10);return isNaN(n)||n<0||n>=t.length?e:t[n]}))}function Bi(e){return e.replace(/[<>&]/g,(function(e){switch(e){case"<":return"<";case">":return">";case"&":return"&";default:return e}}))}function Wi(e){return e.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}function Hi(e,t=" "){return zi(Vi(e,t),t)}function Vi(e,t){if(!e||!t)return e;const i=t.length;if(0===i||0===e.length)return e;let n=0;for(;e.indexOf(t,n)===n;)n+=i;return e.substring(n)}function zi(e,t){if(!e||!t)return e;const i=t.length,n=e.length;if(0===i||0===n)return e;let o=n,s=-1;for(;s=e.lastIndexOf(t,o-1),-1!==s&&s+i===o;){if(0===s)return"";o=s}return e.substring(0,o)}function Ui(e,t,i={}){if(!e)throw new Error("Cannot create regex from empty string");t||(e=Wi(e)),i.wholeWord&&(/\B/.test(e.charAt(0))||(e="\\b"+e),/\B/.test(e.charAt(e.length-1))||(e+="\\b"));let n="";return i.global&&(n+="g"),i.matchCase||(n+="i"),i.multiline&&(n+="m"),i.unicode&&(n+="u"),new RegExp(e,n)}function ji(e){return"^"!==e.source&&"^$"!==e.source&&"$"!==e.source&&"^\\s*$"!==e.source&&!(!e.exec("")||0!==e.lastIndex)}function Ki(e){return e.split(/\r\n|\r|\n/)}function qi(e){for(let t=0,i=e.length;t=0;i--){const t=e.charCodeAt(i);if(32!==t&&9!==t)return i}return-1}function Yi(e,t){return et?1:0}function Zi(e,t,i=0,n=e.length,o=0,s=t.length){for(;is)return 1}const r=n-i,a=s-o;return ra?1:0}function Qi(e,t){return Xi(e,t,0,e.length,0,t.length)}function Xi(e,t,i=0,n=e.length,o=0,s=t.length){for(;i=128||a>=128)return Zi(e.toLowerCase(),t.toLowerCase(),i,n,o,s);en(r)&&(r-=32),en(a)&&(a-=32);const l=r-a;if(0!==l)return l}const r=n-i,a=s-o;return ra?1:0}function Ji(e){return e>=48&&e<=57}function en(e){return e>=97&&e<=122}function tn(e){return e>=65&&e<=90}function nn(e,t){return e.length===t.length&&0===Xi(e,t)}function on(e,t){const i=t.length;return!(t.length>e.length)&&0===Xi(e,t,0,i)}function sn(e,t){const i=Math.min(e.length,t.length);let n;for(n=0;n1){const n=e.charCodeAt(t-2);if(an(n))return dn(n,i)}return i}(this._str,this._offset);return this._offset-=e>=65536?2:1,e}nextCodePoint(){const e=cn(this._str,this._len,this._offset);return this._offset+=e>=65536?2:1,e}eol(){return this._offset>=this._len}}class un{get offset(){return this._iterator.offset}constructor(e,t=0){this._iterator=new hn(e,t)}nextGraphemeLength(){const e=En.getInstance(),t=this._iterator,i=t.offset;let n=e.getGraphemeBreakType(t.nextCodePoint());for(;!t.eol();){const i=t.offset,o=e.getGraphemeBreakType(t.nextCodePoint());if(Ln(n,o)){t.setOffset(i);break}n=o}return t.offset-i}prevGraphemeLength(){const e=En.getInstance(),t=this._iterator,i=t.offset;let n=e.getGraphemeBreakType(t.prevCodePoint());for(;t.offset>0;){const i=t.offset,o=e.getGraphemeBreakType(t.prevCodePoint());if(Ln(o,n)){t.setOffset(i);break}n=o}return i-t.offset}eol(){return this._iterator.eol()}}function gn(e,t){return new un(e,t).nextGraphemeLength()}function pn(e,t){return new un(e,t).prevGraphemeLength()}let mn;function fn(e){return mn||(mn=/(?:[\u05BE\u05C0\u05C3\u05C6\u05D0-\u05F4\u0608\u060B\u060D\u061B-\u064A\u066D-\u066F\u0671-\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u0710\u0712-\u072F\u074D-\u07A5\u07B1-\u07EA\u07F4\u07F5\u07FA\u07FE-\u0815\u081A\u0824\u0828\u0830-\u0858\u085E-\u088E\u08A0-\u08C9\u200F\uFB1D\uFB1F-\uFB28\uFB2A-\uFD3D\uFD50-\uFDC7\uFDF0-\uFDFC\uFE70-\uFEFC]|\uD802[\uDC00-\uDD1B\uDD20-\uDE00\uDE10-\uDE35\uDE40-\uDEE4\uDEEB-\uDF35\uDF40-\uDFFF]|\uD803[\uDC00-\uDD23\uDE80-\uDEA9\uDEAD-\uDF45\uDF51-\uDF81\uDF86-\uDFF6]|\uD83A[\uDC00-\uDCCF\uDD00-\uDD43\uDD4B-\uDFFF]|\uD83B[\uDC00-\uDEBB])/),mn.test(e)}const _n=/^[\t\n\r\x20-\x7E]*$/;function vn(e){return _n.test(e)}const bn=/[\u2028\u2029]/;function wn(e){return bn.test(e)}function Cn(e){return e>=11904&&e<=55215||e>=63744&&e<=64255||e>=65281&&e<=65374}function yn(e){return e>=127462&&e<=127487||8986===e||8987===e||9200===e||9203===e||e>=9728&&e<=10175||11088===e||11093===e||e>=127744&&e<=128591||e>=128640&&e<=128764||e>=128992&&e<=129008||e>=129280&&e<=129535||e>=129648&&e<=129782}new RegExp("(?:"+[/(?:\x1b\[|\x9b)[=?>!]?[\d;:]*["$#'* ]?[a-zA-Z@^`{}|~]/.source,/(?:\x1b\]|\x9d).*?(?:\x1b\\|\x07|\x9c)/.source,/\x1b(?:[ #%\(\)\*\+\-\.\/]?[a-zA-Z0-9\|}~@])/.source].join("|")+")","g");const Sn=String.fromCharCode(65279);function xn(e){return!!(e&&e.length>0&&65279===e.charCodeAt(0))}function kn(e){return(e%=52)<26?String.fromCharCode(97+e):String.fromCharCode(65+e-26)}function Ln(e,t){return 0===e?5!==t&&7!==t:!(2===e&&3===t||4!==e&&2!==e&&3!==e&&4!==t&&2!==t&&3!==t&&(8===e&&(8===t||9===t||11===t||12===t)||!(11!==e&&9!==e||9!==t&&10!==t)||(12===e||10===e)&&10===t||5===t||13===t||7===t||1===e||13===e&&14===t||6===e&&6===t))}class En{static{this._INSTANCE=null}static getInstance(){return En._INSTANCE||(En._INSTANCE=new En),En._INSTANCE}constructor(){this._data=JSON.parse("[0,0,0,51229,51255,12,44061,44087,12,127462,127487,6,7083,7085,5,47645,47671,12,54813,54839,12,128678,128678,14,3270,3270,5,9919,9923,14,45853,45879,12,49437,49463,12,53021,53047,12,71216,71218,7,128398,128399,14,129360,129374,14,2519,2519,5,4448,4519,9,9742,9742,14,12336,12336,14,44957,44983,12,46749,46775,12,48541,48567,12,50333,50359,12,52125,52151,12,53917,53943,12,69888,69890,5,73018,73018,5,127990,127990,14,128558,128559,14,128759,128760,14,129653,129655,14,2027,2035,5,2891,2892,7,3761,3761,5,6683,6683,5,8293,8293,4,9825,9826,14,9999,9999,14,43452,43453,5,44509,44535,12,45405,45431,12,46301,46327,12,47197,47223,12,48093,48119,12,48989,49015,12,49885,49911,12,50781,50807,12,51677,51703,12,52573,52599,12,53469,53495,12,54365,54391,12,65279,65279,4,70471,70472,7,72145,72147,7,119173,119179,5,127799,127818,14,128240,128244,14,128512,128512,14,128652,128652,14,128721,128722,14,129292,129292,14,129445,129450,14,129734,129743,14,1476,1477,5,2366,2368,7,2750,2752,7,3076,3076,5,3415,3415,5,4141,4144,5,6109,6109,5,6964,6964,5,7394,7400,5,9197,9198,14,9770,9770,14,9877,9877,14,9968,9969,14,10084,10084,14,43052,43052,5,43713,43713,5,44285,44311,12,44733,44759,12,45181,45207,12,45629,45655,12,46077,46103,12,46525,46551,12,46973,46999,12,47421,47447,12,47869,47895,12,48317,48343,12,48765,48791,12,49213,49239,12,49661,49687,12,50109,50135,12,50557,50583,12,51005,51031,12,51453,51479,12,51901,51927,12,52349,52375,12,52797,52823,12,53245,53271,12,53693,53719,12,54141,54167,12,54589,54615,12,55037,55063,12,69506,69509,5,70191,70193,5,70841,70841,7,71463,71467,5,72330,72342,5,94031,94031,5,123628,123631,5,127763,127765,14,127941,127941,14,128043,128062,14,128302,128317,14,128465,128467,14,128539,128539,14,128640,128640,14,128662,128662,14,128703,128703,14,128745,128745,14,129004,129007,14,129329,129330,14,129402,129402,14,129483,129483,14,129686,129704,14,130048,131069,14,173,173,4,1757,1757,1,2200,2207,5,2434,2435,7,2631,2632,5,2817,2817,5,3008,3008,5,3201,3201,5,3387,3388,5,3542,3542,5,3902,3903,7,4190,4192,5,6002,6003,5,6439,6440,5,6765,6770,7,7019,7027,5,7154,7155,7,8205,8205,13,8505,8505,14,9654,9654,14,9757,9757,14,9792,9792,14,9852,9853,14,9890,9894,14,9937,9937,14,9981,9981,14,10035,10036,14,11035,11036,14,42654,42655,5,43346,43347,7,43587,43587,5,44006,44007,7,44173,44199,12,44397,44423,12,44621,44647,12,44845,44871,12,45069,45095,12,45293,45319,12,45517,45543,12,45741,45767,12,45965,45991,12,46189,46215,12,46413,46439,12,46637,46663,12,46861,46887,12,47085,47111,12,47309,47335,12,47533,47559,12,47757,47783,12,47981,48007,12,48205,48231,12,48429,48455,12,48653,48679,12,48877,48903,12,49101,49127,12,49325,49351,12,49549,49575,12,49773,49799,12,49997,50023,12,50221,50247,12,50445,50471,12,50669,50695,12,50893,50919,12,51117,51143,12,51341,51367,12,51565,51591,12,51789,51815,12,52013,52039,12,52237,52263,12,52461,52487,12,52685,52711,12,52909,52935,12,53133,53159,12,53357,53383,12,53581,53607,12,53805,53831,12,54029,54055,12,54253,54279,12,54477,54503,12,54701,54727,12,54925,54951,12,55149,55175,12,68101,68102,5,69762,69762,7,70067,70069,7,70371,70378,5,70720,70721,7,71087,71087,5,71341,71341,5,71995,71996,5,72249,72249,7,72850,72871,5,73109,73109,5,118576,118598,5,121505,121519,5,127245,127247,14,127568,127569,14,127777,127777,14,127872,127891,14,127956,127967,14,128015,128016,14,128110,128172,14,128259,128259,14,128367,128368,14,128424,128424,14,128488,128488,14,128530,128532,14,128550,128551,14,128566,128566,14,128647,128647,14,128656,128656,14,128667,128673,14,128691,128693,14,128715,128715,14,128728,128732,14,128752,128752,14,128765,128767,14,129096,129103,14,129311,129311,14,129344,129349,14,129394,129394,14,129413,129425,14,129466,129471,14,129511,129535,14,129664,129666,14,129719,129722,14,129760,129767,14,917536,917631,5,13,13,2,1160,1161,5,1564,1564,4,1807,1807,1,2085,2087,5,2307,2307,7,2382,2383,7,2497,2500,5,2563,2563,7,2677,2677,5,2763,2764,7,2879,2879,5,2914,2915,5,3021,3021,5,3142,3144,5,3263,3263,5,3285,3286,5,3398,3400,7,3530,3530,5,3633,3633,5,3864,3865,5,3974,3975,5,4155,4156,7,4229,4230,5,5909,5909,7,6078,6085,7,6277,6278,5,6451,6456,7,6744,6750,5,6846,6846,5,6972,6972,5,7074,7077,5,7146,7148,7,7222,7223,5,7416,7417,5,8234,8238,4,8417,8417,5,9000,9000,14,9203,9203,14,9730,9731,14,9748,9749,14,9762,9763,14,9776,9783,14,9800,9811,14,9831,9831,14,9872,9873,14,9882,9882,14,9900,9903,14,9929,9933,14,9941,9960,14,9974,9974,14,9989,9989,14,10006,10006,14,10062,10062,14,10160,10160,14,11647,11647,5,12953,12953,14,43019,43019,5,43232,43249,5,43443,43443,5,43567,43568,7,43696,43696,5,43765,43765,7,44013,44013,5,44117,44143,12,44229,44255,12,44341,44367,12,44453,44479,12,44565,44591,12,44677,44703,12,44789,44815,12,44901,44927,12,45013,45039,12,45125,45151,12,45237,45263,12,45349,45375,12,45461,45487,12,45573,45599,12,45685,45711,12,45797,45823,12,45909,45935,12,46021,46047,12,46133,46159,12,46245,46271,12,46357,46383,12,46469,46495,12,46581,46607,12,46693,46719,12,46805,46831,12,46917,46943,12,47029,47055,12,47141,47167,12,47253,47279,12,47365,47391,12,47477,47503,12,47589,47615,12,47701,47727,12,47813,47839,12,47925,47951,12,48037,48063,12,48149,48175,12,48261,48287,12,48373,48399,12,48485,48511,12,48597,48623,12,48709,48735,12,48821,48847,12,48933,48959,12,49045,49071,12,49157,49183,12,49269,49295,12,49381,49407,12,49493,49519,12,49605,49631,12,49717,49743,12,49829,49855,12,49941,49967,12,50053,50079,12,50165,50191,12,50277,50303,12,50389,50415,12,50501,50527,12,50613,50639,12,50725,50751,12,50837,50863,12,50949,50975,12,51061,51087,12,51173,51199,12,51285,51311,12,51397,51423,12,51509,51535,12,51621,51647,12,51733,51759,12,51845,51871,12,51957,51983,12,52069,52095,12,52181,52207,12,52293,52319,12,52405,52431,12,52517,52543,12,52629,52655,12,52741,52767,12,52853,52879,12,52965,52991,12,53077,53103,12,53189,53215,12,53301,53327,12,53413,53439,12,53525,53551,12,53637,53663,12,53749,53775,12,53861,53887,12,53973,53999,12,54085,54111,12,54197,54223,12,54309,54335,12,54421,54447,12,54533,54559,12,54645,54671,12,54757,54783,12,54869,54895,12,54981,55007,12,55093,55119,12,55243,55291,10,66045,66045,5,68325,68326,5,69688,69702,5,69817,69818,5,69957,69958,7,70089,70092,5,70198,70199,5,70462,70462,5,70502,70508,5,70750,70750,5,70846,70846,7,71100,71101,5,71230,71230,7,71351,71351,5,71737,71738,5,72000,72000,7,72160,72160,5,72273,72278,5,72752,72758,5,72882,72883,5,73031,73031,5,73461,73462,7,94192,94193,7,119149,119149,7,121403,121452,5,122915,122916,5,126980,126980,14,127358,127359,14,127535,127535,14,127759,127759,14,127771,127771,14,127792,127793,14,127825,127867,14,127897,127899,14,127945,127945,14,127985,127986,14,128000,128007,14,128021,128021,14,128066,128100,14,128184,128235,14,128249,128252,14,128266,128276,14,128335,128335,14,128379,128390,14,128407,128419,14,128444,128444,14,128481,128481,14,128499,128499,14,128526,128526,14,128536,128536,14,128543,128543,14,128556,128556,14,128564,128564,14,128577,128580,14,128643,128645,14,128649,128649,14,128654,128654,14,128660,128660,14,128664,128664,14,128675,128675,14,128686,128689,14,128695,128696,14,128705,128709,14,128717,128719,14,128725,128725,14,128736,128741,14,128747,128748,14,128755,128755,14,128762,128762,14,128981,128991,14,129009,129023,14,129160,129167,14,129296,129304,14,129320,129327,14,129340,129342,14,129356,129356,14,129388,129392,14,129399,129400,14,129404,129407,14,129432,129442,14,129454,129455,14,129473,129474,14,129485,129487,14,129648,129651,14,129659,129660,14,129671,129679,14,129709,129711,14,129728,129730,14,129751,129753,14,129776,129782,14,917505,917505,4,917760,917999,5,10,10,3,127,159,4,768,879,5,1471,1471,5,1536,1541,1,1648,1648,5,1767,1768,5,1840,1866,5,2070,2073,5,2137,2139,5,2274,2274,1,2363,2363,7,2377,2380,7,2402,2403,5,2494,2494,5,2507,2508,7,2558,2558,5,2622,2624,7,2641,2641,5,2691,2691,7,2759,2760,5,2786,2787,5,2876,2876,5,2881,2884,5,2901,2902,5,3006,3006,5,3014,3016,7,3072,3072,5,3134,3136,5,3157,3158,5,3260,3260,5,3266,3266,5,3274,3275,7,3328,3329,5,3391,3392,7,3405,3405,5,3457,3457,5,3536,3537,7,3551,3551,5,3636,3642,5,3764,3772,5,3895,3895,5,3967,3967,7,3993,4028,5,4146,4151,5,4182,4183,7,4226,4226,5,4253,4253,5,4957,4959,5,5940,5940,7,6070,6070,7,6087,6088,7,6158,6158,4,6432,6434,5,6448,6449,7,6679,6680,5,6742,6742,5,6754,6754,5,6783,6783,5,6912,6915,5,6966,6970,5,6978,6978,5,7042,7042,7,7080,7081,5,7143,7143,7,7150,7150,7,7212,7219,5,7380,7392,5,7412,7412,5,8203,8203,4,8232,8232,4,8265,8265,14,8400,8412,5,8421,8432,5,8617,8618,14,9167,9167,14,9200,9200,14,9410,9410,14,9723,9726,14,9733,9733,14,9745,9745,14,9752,9752,14,9760,9760,14,9766,9766,14,9774,9774,14,9786,9786,14,9794,9794,14,9823,9823,14,9828,9828,14,9833,9850,14,9855,9855,14,9875,9875,14,9880,9880,14,9885,9887,14,9896,9897,14,9906,9916,14,9926,9927,14,9935,9935,14,9939,9939,14,9962,9962,14,9972,9972,14,9978,9978,14,9986,9986,14,9997,9997,14,10002,10002,14,10017,10017,14,10055,10055,14,10071,10071,14,10133,10135,14,10548,10549,14,11093,11093,14,12330,12333,5,12441,12442,5,42608,42610,5,43010,43010,5,43045,43046,5,43188,43203,7,43302,43309,5,43392,43394,5,43446,43449,5,43493,43493,5,43571,43572,7,43597,43597,7,43703,43704,5,43756,43757,5,44003,44004,7,44009,44010,7,44033,44059,12,44089,44115,12,44145,44171,12,44201,44227,12,44257,44283,12,44313,44339,12,44369,44395,12,44425,44451,12,44481,44507,12,44537,44563,12,44593,44619,12,44649,44675,12,44705,44731,12,44761,44787,12,44817,44843,12,44873,44899,12,44929,44955,12,44985,45011,12,45041,45067,12,45097,45123,12,45153,45179,12,45209,45235,12,45265,45291,12,45321,45347,12,45377,45403,12,45433,45459,12,45489,45515,12,45545,45571,12,45601,45627,12,45657,45683,12,45713,45739,12,45769,45795,12,45825,45851,12,45881,45907,12,45937,45963,12,45993,46019,12,46049,46075,12,46105,46131,12,46161,46187,12,46217,46243,12,46273,46299,12,46329,46355,12,46385,46411,12,46441,46467,12,46497,46523,12,46553,46579,12,46609,46635,12,46665,46691,12,46721,46747,12,46777,46803,12,46833,46859,12,46889,46915,12,46945,46971,12,47001,47027,12,47057,47083,12,47113,47139,12,47169,47195,12,47225,47251,12,47281,47307,12,47337,47363,12,47393,47419,12,47449,47475,12,47505,47531,12,47561,47587,12,47617,47643,12,47673,47699,12,47729,47755,12,47785,47811,12,47841,47867,12,47897,47923,12,47953,47979,12,48009,48035,12,48065,48091,12,48121,48147,12,48177,48203,12,48233,48259,12,48289,48315,12,48345,48371,12,48401,48427,12,48457,48483,12,48513,48539,12,48569,48595,12,48625,48651,12,48681,48707,12,48737,48763,12,48793,48819,12,48849,48875,12,48905,48931,12,48961,48987,12,49017,49043,12,49073,49099,12,49129,49155,12,49185,49211,12,49241,49267,12,49297,49323,12,49353,49379,12,49409,49435,12,49465,49491,12,49521,49547,12,49577,49603,12,49633,49659,12,49689,49715,12,49745,49771,12,49801,49827,12,49857,49883,12,49913,49939,12,49969,49995,12,50025,50051,12,50081,50107,12,50137,50163,12,50193,50219,12,50249,50275,12,50305,50331,12,50361,50387,12,50417,50443,12,50473,50499,12,50529,50555,12,50585,50611,12,50641,50667,12,50697,50723,12,50753,50779,12,50809,50835,12,50865,50891,12,50921,50947,12,50977,51003,12,51033,51059,12,51089,51115,12,51145,51171,12,51201,51227,12,51257,51283,12,51313,51339,12,51369,51395,12,51425,51451,12,51481,51507,12,51537,51563,12,51593,51619,12,51649,51675,12,51705,51731,12,51761,51787,12,51817,51843,12,51873,51899,12,51929,51955,12,51985,52011,12,52041,52067,12,52097,52123,12,52153,52179,12,52209,52235,12,52265,52291,12,52321,52347,12,52377,52403,12,52433,52459,12,52489,52515,12,52545,52571,12,52601,52627,12,52657,52683,12,52713,52739,12,52769,52795,12,52825,52851,12,52881,52907,12,52937,52963,12,52993,53019,12,53049,53075,12,53105,53131,12,53161,53187,12,53217,53243,12,53273,53299,12,53329,53355,12,53385,53411,12,53441,53467,12,53497,53523,12,53553,53579,12,53609,53635,12,53665,53691,12,53721,53747,12,53777,53803,12,53833,53859,12,53889,53915,12,53945,53971,12,54001,54027,12,54057,54083,12,54113,54139,12,54169,54195,12,54225,54251,12,54281,54307,12,54337,54363,12,54393,54419,12,54449,54475,12,54505,54531,12,54561,54587,12,54617,54643,12,54673,54699,12,54729,54755,12,54785,54811,12,54841,54867,12,54897,54923,12,54953,54979,12,55009,55035,12,55065,55091,12,55121,55147,12,55177,55203,12,65024,65039,5,65520,65528,4,66422,66426,5,68152,68154,5,69291,69292,5,69633,69633,5,69747,69748,5,69811,69814,5,69826,69826,5,69932,69932,7,70016,70017,5,70079,70080,7,70095,70095,5,70196,70196,5,70367,70367,5,70402,70403,7,70464,70464,5,70487,70487,5,70709,70711,7,70725,70725,7,70833,70834,7,70843,70844,7,70849,70849,7,71090,71093,5,71103,71104,5,71227,71228,7,71339,71339,5,71344,71349,5,71458,71461,5,71727,71735,5,71985,71989,7,71998,71998,5,72002,72002,7,72154,72155,5,72193,72202,5,72251,72254,5,72281,72283,5,72344,72345,5,72766,72766,7,72874,72880,5,72885,72886,5,73023,73029,5,73104,73105,5,73111,73111,5,92912,92916,5,94095,94098,5,113824,113827,4,119142,119142,7,119155,119162,4,119362,119364,5,121476,121476,5,122888,122904,5,123184,123190,5,125252,125258,5,127183,127183,14,127340,127343,14,127377,127386,14,127491,127503,14,127548,127551,14,127744,127756,14,127761,127761,14,127769,127769,14,127773,127774,14,127780,127788,14,127796,127797,14,127820,127823,14,127869,127869,14,127894,127895,14,127902,127903,14,127943,127943,14,127947,127950,14,127972,127972,14,127988,127988,14,127992,127994,14,128009,128011,14,128019,128019,14,128023,128041,14,128064,128064,14,128102,128107,14,128174,128181,14,128238,128238,14,128246,128247,14,128254,128254,14,128264,128264,14,128278,128299,14,128329,128330,14,128348,128359,14,128371,128377,14,128392,128393,14,128401,128404,14,128421,128421,14,128433,128434,14,128450,128452,14,128476,128478,14,128483,128483,14,128495,128495,14,128506,128506,14,128519,128520,14,128528,128528,14,128534,128534,14,128538,128538,14,128540,128542,14,128544,128549,14,128552,128555,14,128557,128557,14,128560,128563,14,128565,128565,14,128567,128576,14,128581,128591,14,128641,128642,14,128646,128646,14,128648,128648,14,128650,128651,14,128653,128653,14,128655,128655,14,128657,128659,14,128661,128661,14,128663,128663,14,128665,128666,14,128674,128674,14,128676,128677,14,128679,128685,14,128690,128690,14,128694,128694,14,128697,128702,14,128704,128704,14,128710,128714,14,128716,128716,14,128720,128720,14,128723,128724,14,128726,128727,14,128733,128735,14,128742,128744,14,128746,128746,14,128749,128751,14,128753,128754,14,128756,128758,14,128761,128761,14,128763,128764,14,128884,128895,14,128992,129003,14,129008,129008,14,129036,129039,14,129114,129119,14,129198,129279,14,129293,129295,14,129305,129310,14,129312,129319,14,129328,129328,14,129331,129338,14,129343,129343,14,129351,129355,14,129357,129359,14,129375,129387,14,129393,129393,14,129395,129398,14,129401,129401,14,129403,129403,14,129408,129412,14,129426,129431,14,129443,129444,14,129451,129453,14,129456,129465,14,129472,129472,14,129475,129482,14,129484,129484,14,129488,129510,14,129536,129647,14,129652,129652,14,129656,129658,14,129661,129663,14,129667,129670,14,129680,129685,14,129705,129708,14,129712,129718,14,129723,129727,14,129731,129733,14,129744,129750,14,129754,129759,14,129768,129775,14,129783,129791,14,917504,917504,4,917506,917535,4,917632,917759,4,918000,921599,4,0,9,4,11,12,4,14,31,4,169,169,14,174,174,14,1155,1159,5,1425,1469,5,1473,1474,5,1479,1479,5,1552,1562,5,1611,1631,5,1750,1756,5,1759,1764,5,1770,1773,5,1809,1809,5,1958,1968,5,2045,2045,5,2075,2083,5,2089,2093,5,2192,2193,1,2250,2273,5,2275,2306,5,2362,2362,5,2364,2364,5,2369,2376,5,2381,2381,5,2385,2391,5,2433,2433,5,2492,2492,5,2495,2496,7,2503,2504,7,2509,2509,5,2530,2531,5,2561,2562,5,2620,2620,5,2625,2626,5,2635,2637,5,2672,2673,5,2689,2690,5,2748,2748,5,2753,2757,5,2761,2761,7,2765,2765,5,2810,2815,5,2818,2819,7,2878,2878,5,2880,2880,7,2887,2888,7,2893,2893,5,2903,2903,5,2946,2946,5,3007,3007,7,3009,3010,7,3018,3020,7,3031,3031,5,3073,3075,7,3132,3132,5,3137,3140,7,3146,3149,5,3170,3171,5,3202,3203,7,3262,3262,7,3264,3265,7,3267,3268,7,3271,3272,7,3276,3277,5,3298,3299,5,3330,3331,7,3390,3390,5,3393,3396,5,3402,3404,7,3406,3406,1,3426,3427,5,3458,3459,7,3535,3535,5,3538,3540,5,3544,3550,7,3570,3571,7,3635,3635,7,3655,3662,5,3763,3763,7,3784,3789,5,3893,3893,5,3897,3897,5,3953,3966,5,3968,3972,5,3981,3991,5,4038,4038,5,4145,4145,7,4153,4154,5,4157,4158,5,4184,4185,5,4209,4212,5,4228,4228,7,4237,4237,5,4352,4447,8,4520,4607,10,5906,5908,5,5938,5939,5,5970,5971,5,6068,6069,5,6071,6077,5,6086,6086,5,6089,6099,5,6155,6157,5,6159,6159,5,6313,6313,5,6435,6438,7,6441,6443,7,6450,6450,5,6457,6459,5,6681,6682,7,6741,6741,7,6743,6743,7,6752,6752,5,6757,6764,5,6771,6780,5,6832,6845,5,6847,6862,5,6916,6916,7,6965,6965,5,6971,6971,7,6973,6977,7,6979,6980,7,7040,7041,5,7073,7073,7,7078,7079,7,7082,7082,7,7142,7142,5,7144,7145,5,7149,7149,5,7151,7153,5,7204,7211,7,7220,7221,7,7376,7378,5,7393,7393,7,7405,7405,5,7415,7415,7,7616,7679,5,8204,8204,5,8206,8207,4,8233,8233,4,8252,8252,14,8288,8292,4,8294,8303,4,8413,8416,5,8418,8420,5,8482,8482,14,8596,8601,14,8986,8987,14,9096,9096,14,9193,9196,14,9199,9199,14,9201,9202,14,9208,9210,14,9642,9643,14,9664,9664,14,9728,9729,14,9732,9732,14,9735,9741,14,9743,9744,14,9746,9746,14,9750,9751,14,9753,9756,14,9758,9759,14,9761,9761,14,9764,9765,14,9767,9769,14,9771,9773,14,9775,9775,14,9784,9785,14,9787,9791,14,9793,9793,14,9795,9799,14,9812,9822,14,9824,9824,14,9827,9827,14,9829,9830,14,9832,9832,14,9851,9851,14,9854,9854,14,9856,9861,14,9874,9874,14,9876,9876,14,9878,9879,14,9881,9881,14,9883,9884,14,9888,9889,14,9895,9895,14,9898,9899,14,9904,9905,14,9917,9918,14,9924,9925,14,9928,9928,14,9934,9934,14,9936,9936,14,9938,9938,14,9940,9940,14,9961,9961,14,9963,9967,14,9970,9971,14,9973,9973,14,9975,9977,14,9979,9980,14,9982,9985,14,9987,9988,14,9992,9996,14,9998,9998,14,10000,10001,14,10004,10004,14,10013,10013,14,10024,10024,14,10052,10052,14,10060,10060,14,10067,10069,14,10083,10083,14,10085,10087,14,10145,10145,14,10175,10175,14,11013,11015,14,11088,11088,14,11503,11505,5,11744,11775,5,12334,12335,5,12349,12349,14,12951,12951,14,42607,42607,5,42612,42621,5,42736,42737,5,43014,43014,5,43043,43044,7,43047,43047,7,43136,43137,7,43204,43205,5,43263,43263,5,43335,43345,5,43360,43388,8,43395,43395,7,43444,43445,7,43450,43451,7,43454,43456,7,43561,43566,5,43569,43570,5,43573,43574,5,43596,43596,5,43644,43644,5,43698,43700,5,43710,43711,5,43755,43755,7,43758,43759,7,43766,43766,5,44005,44005,5,44008,44008,5,44012,44012,7,44032,44032,11,44060,44060,11,44088,44088,11,44116,44116,11,44144,44144,11,44172,44172,11,44200,44200,11,44228,44228,11,44256,44256,11,44284,44284,11,44312,44312,11,44340,44340,11,44368,44368,11,44396,44396,11,44424,44424,11,44452,44452,11,44480,44480,11,44508,44508,11,44536,44536,11,44564,44564,11,44592,44592,11,44620,44620,11,44648,44648,11,44676,44676,11,44704,44704,11,44732,44732,11,44760,44760,11,44788,44788,11,44816,44816,11,44844,44844,11,44872,44872,11,44900,44900,11,44928,44928,11,44956,44956,11,44984,44984,11,45012,45012,11,45040,45040,11,45068,45068,11,45096,45096,11,45124,45124,11,45152,45152,11,45180,45180,11,45208,45208,11,45236,45236,11,45264,45264,11,45292,45292,11,45320,45320,11,45348,45348,11,45376,45376,11,45404,45404,11,45432,45432,11,45460,45460,11,45488,45488,11,45516,45516,11,45544,45544,11,45572,45572,11,45600,45600,11,45628,45628,11,45656,45656,11,45684,45684,11,45712,45712,11,45740,45740,11,45768,45768,11,45796,45796,11,45824,45824,11,45852,45852,11,45880,45880,11,45908,45908,11,45936,45936,11,45964,45964,11,45992,45992,11,46020,46020,11,46048,46048,11,46076,46076,11,46104,46104,11,46132,46132,11,46160,46160,11,46188,46188,11,46216,46216,11,46244,46244,11,46272,46272,11,46300,46300,11,46328,46328,11,46356,46356,11,46384,46384,11,46412,46412,11,46440,46440,11,46468,46468,11,46496,46496,11,46524,46524,11,46552,46552,11,46580,46580,11,46608,46608,11,46636,46636,11,46664,46664,11,46692,46692,11,46720,46720,11,46748,46748,11,46776,46776,11,46804,46804,11,46832,46832,11,46860,46860,11,46888,46888,11,46916,46916,11,46944,46944,11,46972,46972,11,47000,47000,11,47028,47028,11,47056,47056,11,47084,47084,11,47112,47112,11,47140,47140,11,47168,47168,11,47196,47196,11,47224,47224,11,47252,47252,11,47280,47280,11,47308,47308,11,47336,47336,11,47364,47364,11,47392,47392,11,47420,47420,11,47448,47448,11,47476,47476,11,47504,47504,11,47532,47532,11,47560,47560,11,47588,47588,11,47616,47616,11,47644,47644,11,47672,47672,11,47700,47700,11,47728,47728,11,47756,47756,11,47784,47784,11,47812,47812,11,47840,47840,11,47868,47868,11,47896,47896,11,47924,47924,11,47952,47952,11,47980,47980,11,48008,48008,11,48036,48036,11,48064,48064,11,48092,48092,11,48120,48120,11,48148,48148,11,48176,48176,11,48204,48204,11,48232,48232,11,48260,48260,11,48288,48288,11,48316,48316,11,48344,48344,11,48372,48372,11,48400,48400,11,48428,48428,11,48456,48456,11,48484,48484,11,48512,48512,11,48540,48540,11,48568,48568,11,48596,48596,11,48624,48624,11,48652,48652,11,48680,48680,11,48708,48708,11,48736,48736,11,48764,48764,11,48792,48792,11,48820,48820,11,48848,48848,11,48876,48876,11,48904,48904,11,48932,48932,11,48960,48960,11,48988,48988,11,49016,49016,11,49044,49044,11,49072,49072,11,49100,49100,11,49128,49128,11,49156,49156,11,49184,49184,11,49212,49212,11,49240,49240,11,49268,49268,11,49296,49296,11,49324,49324,11,49352,49352,11,49380,49380,11,49408,49408,11,49436,49436,11,49464,49464,11,49492,49492,11,49520,49520,11,49548,49548,11,49576,49576,11,49604,49604,11,49632,49632,11,49660,49660,11,49688,49688,11,49716,49716,11,49744,49744,11,49772,49772,11,49800,49800,11,49828,49828,11,49856,49856,11,49884,49884,11,49912,49912,11,49940,49940,11,49968,49968,11,49996,49996,11,50024,50024,11,50052,50052,11,50080,50080,11,50108,50108,11,50136,50136,11,50164,50164,11,50192,50192,11,50220,50220,11,50248,50248,11,50276,50276,11,50304,50304,11,50332,50332,11,50360,50360,11,50388,50388,11,50416,50416,11,50444,50444,11,50472,50472,11,50500,50500,11,50528,50528,11,50556,50556,11,50584,50584,11,50612,50612,11,50640,50640,11,50668,50668,11,50696,50696,11,50724,50724,11,50752,50752,11,50780,50780,11,50808,50808,11,50836,50836,11,50864,50864,11,50892,50892,11,50920,50920,11,50948,50948,11,50976,50976,11,51004,51004,11,51032,51032,11,51060,51060,11,51088,51088,11,51116,51116,11,51144,51144,11,51172,51172,11,51200,51200,11,51228,51228,11,51256,51256,11,51284,51284,11,51312,51312,11,51340,51340,11,51368,51368,11,51396,51396,11,51424,51424,11,51452,51452,11,51480,51480,11,51508,51508,11,51536,51536,11,51564,51564,11,51592,51592,11,51620,51620,11,51648,51648,11,51676,51676,11,51704,51704,11,51732,51732,11,51760,51760,11,51788,51788,11,51816,51816,11,51844,51844,11,51872,51872,11,51900,51900,11,51928,51928,11,51956,51956,11,51984,51984,11,52012,52012,11,52040,52040,11,52068,52068,11,52096,52096,11,52124,52124,11,52152,52152,11,52180,52180,11,52208,52208,11,52236,52236,11,52264,52264,11,52292,52292,11,52320,52320,11,52348,52348,11,52376,52376,11,52404,52404,11,52432,52432,11,52460,52460,11,52488,52488,11,52516,52516,11,52544,52544,11,52572,52572,11,52600,52600,11,52628,52628,11,52656,52656,11,52684,52684,11,52712,52712,11,52740,52740,11,52768,52768,11,52796,52796,11,52824,52824,11,52852,52852,11,52880,52880,11,52908,52908,11,52936,52936,11,52964,52964,11,52992,52992,11,53020,53020,11,53048,53048,11,53076,53076,11,53104,53104,11,53132,53132,11,53160,53160,11,53188,53188,11,53216,53216,11,53244,53244,11,53272,53272,11,53300,53300,11,53328,53328,11,53356,53356,11,53384,53384,11,53412,53412,11,53440,53440,11,53468,53468,11,53496,53496,11,53524,53524,11,53552,53552,11,53580,53580,11,53608,53608,11,53636,53636,11,53664,53664,11,53692,53692,11,53720,53720,11,53748,53748,11,53776,53776,11,53804,53804,11,53832,53832,11,53860,53860,11,53888,53888,11,53916,53916,11,53944,53944,11,53972,53972,11,54000,54000,11,54028,54028,11,54056,54056,11,54084,54084,11,54112,54112,11,54140,54140,11,54168,54168,11,54196,54196,11,54224,54224,11,54252,54252,11,54280,54280,11,54308,54308,11,54336,54336,11,54364,54364,11,54392,54392,11,54420,54420,11,54448,54448,11,54476,54476,11,54504,54504,11,54532,54532,11,54560,54560,11,54588,54588,11,54616,54616,11,54644,54644,11,54672,54672,11,54700,54700,11,54728,54728,11,54756,54756,11,54784,54784,11,54812,54812,11,54840,54840,11,54868,54868,11,54896,54896,11,54924,54924,11,54952,54952,11,54980,54980,11,55008,55008,11,55036,55036,11,55064,55064,11,55092,55092,11,55120,55120,11,55148,55148,11,55176,55176,11,55216,55238,9,64286,64286,5,65056,65071,5,65438,65439,5,65529,65531,4,66272,66272,5,68097,68099,5,68108,68111,5,68159,68159,5,68900,68903,5,69446,69456,5,69632,69632,7,69634,69634,7,69744,69744,5,69759,69761,5,69808,69810,7,69815,69816,7,69821,69821,1,69837,69837,1,69927,69931,5,69933,69940,5,70003,70003,5,70018,70018,7,70070,70078,5,70082,70083,1,70094,70094,7,70188,70190,7,70194,70195,7,70197,70197,7,70206,70206,5,70368,70370,7,70400,70401,5,70459,70460,5,70463,70463,7,70465,70468,7,70475,70477,7,70498,70499,7,70512,70516,5,70712,70719,5,70722,70724,5,70726,70726,5,70832,70832,5,70835,70840,5,70842,70842,5,70845,70845,5,70847,70848,5,70850,70851,5,71088,71089,7,71096,71099,7,71102,71102,7,71132,71133,5,71219,71226,5,71229,71229,5,71231,71232,5,71340,71340,7,71342,71343,7,71350,71350,7,71453,71455,5,71462,71462,7,71724,71726,7,71736,71736,7,71984,71984,5,71991,71992,7,71997,71997,7,71999,71999,1,72001,72001,1,72003,72003,5,72148,72151,5,72156,72159,7,72164,72164,7,72243,72248,5,72250,72250,1,72263,72263,5,72279,72280,7,72324,72329,1,72343,72343,7,72751,72751,7,72760,72765,5,72767,72767,5,72873,72873,7,72881,72881,7,72884,72884,7,73009,73014,5,73020,73021,5,73030,73030,1,73098,73102,7,73107,73108,7,73110,73110,7,73459,73460,5,78896,78904,4,92976,92982,5,94033,94087,7,94180,94180,5,113821,113822,5,118528,118573,5,119141,119141,5,119143,119145,5,119150,119154,5,119163,119170,5,119210,119213,5,121344,121398,5,121461,121461,5,121499,121503,5,122880,122886,5,122907,122913,5,122918,122922,5,123566,123566,5,125136,125142,5,126976,126979,14,126981,127182,14,127184,127231,14,127279,127279,14,127344,127345,14,127374,127374,14,127405,127461,14,127489,127490,14,127514,127514,14,127538,127546,14,127561,127567,14,127570,127743,14,127757,127758,14,127760,127760,14,127762,127762,14,127766,127768,14,127770,127770,14,127772,127772,14,127775,127776,14,127778,127779,14,127789,127791,14,127794,127795,14,127798,127798,14,127819,127819,14,127824,127824,14,127868,127868,14,127870,127871,14,127892,127893,14,127896,127896,14,127900,127901,14,127904,127940,14,127942,127942,14,127944,127944,14,127946,127946,14,127951,127955,14,127968,127971,14,127973,127984,14,127987,127987,14,127989,127989,14,127991,127991,14,127995,127999,5,128008,128008,14,128012,128014,14,128017,128018,14,128020,128020,14,128022,128022,14,128042,128042,14,128063,128063,14,128065,128065,14,128101,128101,14,128108,128109,14,128173,128173,14,128182,128183,14,128236,128237,14,128239,128239,14,128245,128245,14,128248,128248,14,128253,128253,14,128255,128258,14,128260,128263,14,128265,128265,14,128277,128277,14,128300,128301,14,128326,128328,14,128331,128334,14,128336,128347,14,128360,128366,14,128369,128370,14,128378,128378,14,128391,128391,14,128394,128397,14,128400,128400,14,128405,128406,14,128420,128420,14,128422,128423,14,128425,128432,14,128435,128443,14,128445,128449,14,128453,128464,14,128468,128475,14,128479,128480,14,128482,128482,14,128484,128487,14,128489,128494,14,128496,128498,14,128500,128505,14,128507,128511,14,128513,128518,14,128521,128525,14,128527,128527,14,128529,128529,14,128533,128533,14,128535,128535,14,128537,128537,14]")}getGraphemeBreakType(e){if(e<32)return 10===e?3:13===e?2:4;if(e<127)return 0;const t=this._data,i=t.length/3;let n=1;for(;n<=i;)if(et[3*n+1]))return t[3*n+2];n=2*n+1}return 0}}function In(e){return 127995<=e&&e<=127999}class Dn{static{this.ambiguousCharacterData=new Ai((()=>JSON.parse('{"_common":[8232,32,8233,32,5760,32,8192,32,8193,32,8194,32,8195,32,8196,32,8197,32,8198,32,8200,32,8201,32,8202,32,8287,32,8199,32,8239,32,2042,95,65101,95,65102,95,65103,95,8208,45,8209,45,8210,45,65112,45,1748,45,8259,45,727,45,8722,45,10134,45,11450,45,1549,44,1643,44,184,44,42233,44,894,59,2307,58,2691,58,1417,58,1795,58,1796,58,5868,58,65072,58,6147,58,6153,58,8282,58,1475,58,760,58,42889,58,8758,58,720,58,42237,58,451,33,11601,33,660,63,577,63,2429,63,5038,63,42731,63,119149,46,8228,46,1793,46,1794,46,42510,46,68176,46,1632,46,1776,46,42232,46,1373,96,65287,96,8219,96,1523,96,8242,96,1370,96,8175,96,65344,96,900,96,8189,96,8125,96,8127,96,8190,96,697,96,884,96,712,96,714,96,715,96,756,96,699,96,701,96,700,96,702,96,42892,96,1497,96,2036,96,2037,96,5194,96,5836,96,94033,96,94034,96,65339,91,10088,40,10098,40,12308,40,64830,40,65341,93,10089,41,10099,41,12309,41,64831,41,10100,123,119060,123,10101,125,65342,94,8270,42,1645,42,8727,42,66335,42,5941,47,8257,47,8725,47,8260,47,9585,47,10187,47,10744,47,119354,47,12755,47,12339,47,11462,47,20031,47,12035,47,65340,92,65128,92,8726,92,10189,92,10741,92,10745,92,119311,92,119355,92,12756,92,20022,92,12034,92,42872,38,708,94,710,94,5869,43,10133,43,66203,43,8249,60,10094,60,706,60,119350,60,5176,60,5810,60,5120,61,11840,61,12448,61,42239,61,8250,62,10095,62,707,62,119351,62,5171,62,94015,62,8275,126,732,126,8128,126,8764,126,65372,124,65293,45,118002,50,120784,50,120794,50,120804,50,120814,50,120824,50,130034,50,42842,50,423,50,1000,50,42564,50,5311,50,42735,50,119302,51,118003,51,120785,51,120795,51,120805,51,120815,51,120825,51,130035,51,42923,51,540,51,439,51,42858,51,11468,51,1248,51,94011,51,71882,51,118004,52,120786,52,120796,52,120806,52,120816,52,120826,52,130036,52,5070,52,71855,52,118005,53,120787,53,120797,53,120807,53,120817,53,120827,53,130037,53,444,53,71867,53,118006,54,120788,54,120798,54,120808,54,120818,54,120828,54,130038,54,11474,54,5102,54,71893,54,119314,55,118007,55,120789,55,120799,55,120809,55,120819,55,120829,55,130039,55,66770,55,71878,55,2819,56,2538,56,2666,56,125131,56,118008,56,120790,56,120800,56,120810,56,120820,56,120830,56,130040,56,547,56,546,56,66330,56,2663,57,2920,57,2541,57,3437,57,118009,57,120791,57,120801,57,120811,57,120821,57,120831,57,130041,57,42862,57,11466,57,71884,57,71852,57,71894,57,9082,97,65345,97,119834,97,119886,97,119938,97,119990,97,120042,97,120094,97,120146,97,120198,97,120250,97,120302,97,120354,97,120406,97,120458,97,593,97,945,97,120514,97,120572,97,120630,97,120688,97,120746,97,65313,65,117974,65,119808,65,119860,65,119912,65,119964,65,120016,65,120068,65,120120,65,120172,65,120224,65,120276,65,120328,65,120380,65,120432,65,913,65,120488,65,120546,65,120604,65,120662,65,120720,65,5034,65,5573,65,42222,65,94016,65,66208,65,119835,98,119887,98,119939,98,119991,98,120043,98,120095,98,120147,98,120199,98,120251,98,120303,98,120355,98,120407,98,120459,98,388,98,5071,98,5234,98,5551,98,65314,66,8492,66,117975,66,119809,66,119861,66,119913,66,120017,66,120069,66,120121,66,120173,66,120225,66,120277,66,120329,66,120381,66,120433,66,42932,66,914,66,120489,66,120547,66,120605,66,120663,66,120721,66,5108,66,5623,66,42192,66,66178,66,66209,66,66305,66,65347,99,8573,99,119836,99,119888,99,119940,99,119992,99,120044,99,120096,99,120148,99,120200,99,120252,99,120304,99,120356,99,120408,99,120460,99,7428,99,1010,99,11429,99,43951,99,66621,99,128844,67,71913,67,71922,67,65315,67,8557,67,8450,67,8493,67,117976,67,119810,67,119862,67,119914,67,119966,67,120018,67,120174,67,120226,67,120278,67,120330,67,120382,67,120434,67,1017,67,11428,67,5087,67,42202,67,66210,67,66306,67,66581,67,66844,67,8574,100,8518,100,119837,100,119889,100,119941,100,119993,100,120045,100,120097,100,120149,100,120201,100,120253,100,120305,100,120357,100,120409,100,120461,100,1281,100,5095,100,5231,100,42194,100,8558,68,8517,68,117977,68,119811,68,119863,68,119915,68,119967,68,120019,68,120071,68,120123,68,120175,68,120227,68,120279,68,120331,68,120383,68,120435,68,5024,68,5598,68,5610,68,42195,68,8494,101,65349,101,8495,101,8519,101,119838,101,119890,101,119942,101,120046,101,120098,101,120150,101,120202,101,120254,101,120306,101,120358,101,120410,101,120462,101,43826,101,1213,101,8959,69,65317,69,8496,69,117978,69,119812,69,119864,69,119916,69,120020,69,120072,69,120124,69,120176,69,120228,69,120280,69,120332,69,120384,69,120436,69,917,69,120492,69,120550,69,120608,69,120666,69,120724,69,11577,69,5036,69,42224,69,71846,69,71854,69,66182,69,119839,102,119891,102,119943,102,119995,102,120047,102,120099,102,120151,102,120203,102,120255,102,120307,102,120359,102,120411,102,120463,102,43829,102,42905,102,383,102,7837,102,1412,102,119315,70,8497,70,117979,70,119813,70,119865,70,119917,70,120021,70,120073,70,120125,70,120177,70,120229,70,120281,70,120333,70,120385,70,120437,70,42904,70,988,70,120778,70,5556,70,42205,70,71874,70,71842,70,66183,70,66213,70,66853,70,65351,103,8458,103,119840,103,119892,103,119944,103,120048,103,120100,103,120152,103,120204,103,120256,103,120308,103,120360,103,120412,103,120464,103,609,103,7555,103,397,103,1409,103,117980,71,119814,71,119866,71,119918,71,119970,71,120022,71,120074,71,120126,71,120178,71,120230,71,120282,71,120334,71,120386,71,120438,71,1292,71,5056,71,5107,71,42198,71,65352,104,8462,104,119841,104,119945,104,119997,104,120049,104,120101,104,120153,104,120205,104,120257,104,120309,104,120361,104,120413,104,120465,104,1211,104,1392,104,5058,104,65320,72,8459,72,8460,72,8461,72,117981,72,119815,72,119867,72,119919,72,120023,72,120179,72,120231,72,120283,72,120335,72,120387,72,120439,72,919,72,120494,72,120552,72,120610,72,120668,72,120726,72,11406,72,5051,72,5500,72,42215,72,66255,72,731,105,9075,105,65353,105,8560,105,8505,105,8520,105,119842,105,119894,105,119946,105,119998,105,120050,105,120102,105,120154,105,120206,105,120258,105,120310,105,120362,105,120414,105,120466,105,120484,105,618,105,617,105,953,105,8126,105,890,105,120522,105,120580,105,120638,105,120696,105,120754,105,1110,105,42567,105,1231,105,43893,105,5029,105,71875,105,65354,106,8521,106,119843,106,119895,106,119947,106,119999,106,120051,106,120103,106,120155,106,120207,106,120259,106,120311,106,120363,106,120415,106,120467,106,1011,106,1112,106,65322,74,117983,74,119817,74,119869,74,119921,74,119973,74,120025,74,120077,74,120129,74,120181,74,120233,74,120285,74,120337,74,120389,74,120441,74,42930,74,895,74,1032,74,5035,74,5261,74,42201,74,119844,107,119896,107,119948,107,120000,107,120052,107,120104,107,120156,107,120208,107,120260,107,120312,107,120364,107,120416,107,120468,107,8490,75,65323,75,117984,75,119818,75,119870,75,119922,75,119974,75,120026,75,120078,75,120130,75,120182,75,120234,75,120286,75,120338,75,120390,75,120442,75,922,75,120497,75,120555,75,120613,75,120671,75,120729,75,11412,75,5094,75,5845,75,42199,75,66840,75,1472,108,8739,73,9213,73,65512,73,1633,108,1777,73,66336,108,125127,108,118001,108,120783,73,120793,73,120803,73,120813,73,120823,73,130033,73,65321,73,8544,73,8464,73,8465,73,117982,108,119816,73,119868,73,119920,73,120024,73,120128,73,120180,73,120232,73,120284,73,120336,73,120388,73,120440,73,65356,108,8572,73,8467,108,119845,108,119897,108,119949,108,120001,108,120053,108,120105,73,120157,73,120209,73,120261,73,120313,73,120365,73,120417,73,120469,73,448,73,120496,73,120554,73,120612,73,120670,73,120728,73,11410,73,1030,73,1216,73,1493,108,1503,108,1575,108,126464,108,126592,108,65166,108,65165,108,1994,108,11599,73,5825,73,42226,73,93992,73,66186,124,66313,124,119338,76,8556,76,8466,76,117985,76,119819,76,119871,76,119923,76,120027,76,120079,76,120131,76,120183,76,120235,76,120287,76,120339,76,120391,76,120443,76,11472,76,5086,76,5290,76,42209,76,93974,76,71843,76,71858,76,66587,76,66854,76,65325,77,8559,77,8499,77,117986,77,119820,77,119872,77,119924,77,120028,77,120080,77,120132,77,120184,77,120236,77,120288,77,120340,77,120392,77,120444,77,924,77,120499,77,120557,77,120615,77,120673,77,120731,77,1018,77,11416,77,5047,77,5616,77,5846,77,42207,77,66224,77,66321,77,119847,110,119899,110,119951,110,120003,110,120055,110,120107,110,120159,110,120211,110,120263,110,120315,110,120367,110,120419,110,120471,110,1400,110,1404,110,65326,78,8469,78,117987,78,119821,78,119873,78,119925,78,119977,78,120029,78,120081,78,120185,78,120237,78,120289,78,120341,78,120393,78,120445,78,925,78,120500,78,120558,78,120616,78,120674,78,120732,78,11418,78,42208,78,66835,78,3074,111,3202,111,3330,111,3458,111,2406,111,2662,111,2790,111,3046,111,3174,111,3302,111,3430,111,3664,111,3792,111,4160,111,1637,111,1781,111,65359,111,8500,111,119848,111,119900,111,119952,111,120056,111,120108,111,120160,111,120212,111,120264,111,120316,111,120368,111,120420,111,120472,111,7439,111,7441,111,43837,111,959,111,120528,111,120586,111,120644,111,120702,111,120760,111,963,111,120532,111,120590,111,120648,111,120706,111,120764,111,11423,111,4351,111,1413,111,1505,111,1607,111,126500,111,126564,111,126596,111,65259,111,65260,111,65258,111,65257,111,1726,111,64428,111,64429,111,64427,111,64426,111,1729,111,64424,111,64425,111,64423,111,64422,111,1749,111,3360,111,4125,111,66794,111,71880,111,71895,111,66604,111,1984,79,2534,79,2918,79,12295,79,70864,79,71904,79,118000,79,120782,79,120792,79,120802,79,120812,79,120822,79,130032,79,65327,79,117988,79,119822,79,119874,79,119926,79,119978,79,120030,79,120082,79,120134,79,120186,79,120238,79,120290,79,120342,79,120394,79,120446,79,927,79,120502,79,120560,79,120618,79,120676,79,120734,79,11422,79,1365,79,11604,79,4816,79,2848,79,66754,79,42227,79,71861,79,66194,79,66219,79,66564,79,66838,79,9076,112,65360,112,119849,112,119901,112,119953,112,120005,112,120057,112,120109,112,120161,112,120213,112,120265,112,120317,112,120369,112,120421,112,120473,112,961,112,120530,112,120544,112,120588,112,120602,112,120646,112,120660,112,120704,112,120718,112,120762,112,120776,112,11427,112,65328,80,8473,80,117989,80,119823,80,119875,80,119927,80,119979,80,120031,80,120083,80,120187,80,120239,80,120291,80,120343,80,120395,80,120447,80,929,80,120504,80,120562,80,120620,80,120678,80,120736,80,11426,80,5090,80,5229,80,42193,80,66197,80,119850,113,119902,113,119954,113,120006,113,120058,113,120110,113,120162,113,120214,113,120266,113,120318,113,120370,113,120422,113,120474,113,1307,113,1379,113,1382,113,8474,81,117990,81,119824,81,119876,81,119928,81,119980,81,120032,81,120084,81,120188,81,120240,81,120292,81,120344,81,120396,81,120448,81,11605,81,119851,114,119903,114,119955,114,120007,114,120059,114,120111,114,120163,114,120215,114,120267,114,120319,114,120371,114,120423,114,120475,114,43847,114,43848,114,7462,114,11397,114,43905,114,119318,82,8475,82,8476,82,8477,82,117991,82,119825,82,119877,82,119929,82,120033,82,120189,82,120241,82,120293,82,120345,82,120397,82,120449,82,422,82,5025,82,5074,82,66740,82,5511,82,42211,82,94005,82,65363,115,119852,115,119904,115,119956,115,120008,115,120060,115,120112,115,120164,115,120216,115,120268,115,120320,115,120372,115,120424,115,120476,115,42801,115,445,115,1109,115,43946,115,71873,115,66632,115,65331,83,117992,83,119826,83,119878,83,119930,83,119982,83,120034,83,120086,83,120138,83,120190,83,120242,83,120294,83,120346,83,120398,83,120450,83,1029,83,1359,83,5077,83,5082,83,42210,83,94010,83,66198,83,66592,83,119853,116,119905,116,119957,116,120009,116,120061,116,120113,116,120165,116,120217,116,120269,116,120321,116,120373,116,120425,116,120477,116,8868,84,10201,84,128872,84,65332,84,117993,84,119827,84,119879,84,119931,84,119983,84,120035,84,120087,84,120139,84,120191,84,120243,84,120295,84,120347,84,120399,84,120451,84,932,84,120507,84,120565,84,120623,84,120681,84,120739,84,11430,84,5026,84,42196,84,93962,84,71868,84,66199,84,66225,84,66325,84,119854,117,119906,117,119958,117,120010,117,120062,117,120114,117,120166,117,120218,117,120270,117,120322,117,120374,117,120426,117,120478,117,42911,117,7452,117,43854,117,43858,117,651,117,965,117,120534,117,120592,117,120650,117,120708,117,120766,117,1405,117,66806,117,71896,117,8746,85,8899,85,117994,85,119828,85,119880,85,119932,85,119984,85,120036,85,120088,85,120140,85,120192,85,120244,85,120296,85,120348,85,120400,85,120452,85,1357,85,4608,85,66766,85,5196,85,42228,85,94018,85,71864,85,8744,118,8897,118,65366,118,8564,118,119855,118,119907,118,119959,118,120011,118,120063,118,120115,118,120167,118,120219,118,120271,118,120323,118,120375,118,120427,118,120479,118,7456,118,957,118,120526,118,120584,118,120642,118,120700,118,120758,118,1141,118,1496,118,71430,118,43945,118,71872,118,119309,86,1639,86,1783,86,8548,86,117995,86,119829,86,119881,86,119933,86,119985,86,120037,86,120089,86,120141,86,120193,86,120245,86,120297,86,120349,86,120401,86,120453,86,1140,86,11576,86,5081,86,5167,86,42719,86,42214,86,93960,86,71840,86,66845,86,623,119,119856,119,119908,119,119960,119,120012,119,120064,119,120116,119,120168,119,120220,119,120272,119,120324,119,120376,119,120428,119,120480,119,7457,119,1121,119,1309,119,1377,119,71434,119,71438,119,71439,119,43907,119,71910,87,71919,87,117996,87,119830,87,119882,87,119934,87,119986,87,120038,87,120090,87,120142,87,120194,87,120246,87,120298,87,120350,87,120402,87,120454,87,1308,87,5043,87,5076,87,42218,87,5742,120,10539,120,10540,120,10799,120,65368,120,8569,120,119857,120,119909,120,119961,120,120013,120,120065,120,120117,120,120169,120,120221,120,120273,120,120325,120,120377,120,120429,120,120481,120,5441,120,5501,120,5741,88,9587,88,66338,88,71916,88,65336,88,8553,88,117997,88,119831,88,119883,88,119935,88,119987,88,120039,88,120091,88,120143,88,120195,88,120247,88,120299,88,120351,88,120403,88,120455,88,42931,88,935,88,120510,88,120568,88,120626,88,120684,88,120742,88,11436,88,11613,88,5815,88,42219,88,66192,88,66228,88,66327,88,66855,88,611,121,7564,121,65369,121,119858,121,119910,121,119962,121,120014,121,120066,121,120118,121,120170,121,120222,121,120274,121,120326,121,120378,121,120430,121,120482,121,655,121,7935,121,43866,121,947,121,8509,121,120516,121,120574,121,120632,121,120690,121,120748,121,1199,121,4327,121,71900,121,65337,89,117998,89,119832,89,119884,89,119936,89,119988,89,120040,89,120092,89,120144,89,120196,89,120248,89,120300,89,120352,89,120404,89,120456,89,933,89,978,89,120508,89,120566,89,120624,89,120682,89,120740,89,11432,89,1198,89,5033,89,5053,89,42220,89,94019,89,71844,89,66226,89,119859,122,119911,122,119963,122,120015,122,120067,122,120119,122,120171,122,120223,122,120275,122,120327,122,120379,122,120431,122,120483,122,7458,122,43923,122,71876,122,71909,90,66293,90,65338,90,8484,90,8488,90,117999,90,119833,90,119885,90,119937,90,119989,90,120041,90,120197,90,120249,90,120301,90,120353,90,120405,90,120457,90,918,90,120493,90,120551,90,120609,90,120667,90,120725,90,5059,90,42204,90,71849,90,65282,34,65283,35,65284,36,65285,37,65286,38,65290,42,65291,43,65294,46,65295,47,65296,48,65298,50,65299,51,65300,52,65301,53,65302,54,65303,55,65304,56,65305,57,65308,60,65309,61,65310,62,65312,64,65316,68,65318,70,65319,71,65324,76,65329,81,65330,82,65333,85,65334,86,65335,87,65343,95,65346,98,65348,100,65350,102,65355,107,65357,109,65358,110,65361,113,65362,114,65364,116,65365,117,65367,119,65370,122,65371,123,65373,125,119846,109],"_default":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"cs":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"de":[65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"es":[8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"fr":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"it":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"ja":[8211,45,8218,44,65281,33,8216,96,8245,96,180,96,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65292,44,65297,49,65307,59],"ko":[8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"pl":[65374,126,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"pt-BR":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"qps-ploc":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"ru":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,305,105,921,73,1009,112,215,120,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"tr":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"zh-hans":[160,32,65374,126,8218,44,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65297,49],"zh-hant":[8211,45,65374,126,8218,44,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89]}')))}static{this.cache=new Ti({getCacheKey:JSON.stringify},(e=>{function t(e){const t=new Map;for(let i=0;i!e.startsWith("_")&&e in n));0===s.length&&(s=["_default"]);for(const e of s)o=i(o,t(n[e]));const r=function(e,t){const i=new Map(e);for(const[e,n]of t)i.set(e,n);return i}(t(n._common),o);return new Dn(r)}))}static getInstance(e){return Dn.cache.get(Array.from(e))}static{this._locales=new Ai((()=>Object.keys(Dn.ambiguousCharacterData.value).filter((e=>!e.startsWith("_")))))}static getLocales(){return Dn._locales.value}constructor(e){this.confusableDictionary=e}isAmbiguous(e){return this.confusableDictionary.has(e)}getPrimaryConfusable(e){return this.confusableDictionary.get(e)}getConfusableCodePoints(){return new Set(this.confusableDictionary.keys())}}class Nn{static getRawData(){return JSON.parse('{"_common":[11,12,13,127,847,1564,4447,4448,6068,6069,6155,6156,6157,6158,7355,7356,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8204,8205,8206,8207,8234,8235,8236,8237,8238,8239,8287,8288,8289,8290,8291,8292,8293,8294,8295,8296,8297,8298,8299,8300,8301,8302,8303,10240,12644,65024,65025,65026,65027,65028,65029,65030,65031,65032,65033,65034,65035,65036,65037,65038,65039,65279,65440,65520,65521,65522,65523,65524,65525,65526,65527,65528,65532,78844,119155,119156,119157,119158,119159,119160,119161,119162,917504,917505,917506,917507,917508,917509,917510,917511,917512,917513,917514,917515,917516,917517,917518,917519,917520,917521,917522,917523,917524,917525,917526,917527,917528,917529,917530,917531,917532,917533,917534,917535,917536,917537,917538,917539,917540,917541,917542,917543,917544,917545,917546,917547,917548,917549,917550,917551,917552,917553,917554,917555,917556,917557,917558,917559,917560,917561,917562,917563,917564,917565,917566,917567,917568,917569,917570,917571,917572,917573,917574,917575,917576,917577,917578,917579,917580,917581,917582,917583,917584,917585,917586,917587,917588,917589,917590,917591,917592,917593,917594,917595,917596,917597,917598,917599,917600,917601,917602,917603,917604,917605,917606,917607,917608,917609,917610,917611,917612,917613,917614,917615,917616,917617,917618,917619,917620,917621,917622,917623,917624,917625,917626,917627,917628,917629,917630,917631,917760,917761,917762,917763,917764,917765,917766,917767,917768,917769,917770,917771,917772,917773,917774,917775,917776,917777,917778,917779,917780,917781,917782,917783,917784,917785,917786,917787,917788,917789,917790,917791,917792,917793,917794,917795,917796,917797,917798,917799,917800,917801,917802,917803,917804,917805,917806,917807,917808,917809,917810,917811,917812,917813,917814,917815,917816,917817,917818,917819,917820,917821,917822,917823,917824,917825,917826,917827,917828,917829,917830,917831,917832,917833,917834,917835,917836,917837,917838,917839,917840,917841,917842,917843,917844,917845,917846,917847,917848,917849,917850,917851,917852,917853,917854,917855,917856,917857,917858,917859,917860,917861,917862,917863,917864,917865,917866,917867,917868,917869,917870,917871,917872,917873,917874,917875,917876,917877,917878,917879,917880,917881,917882,917883,917884,917885,917886,917887,917888,917889,917890,917891,917892,917893,917894,917895,917896,917897,917898,917899,917900,917901,917902,917903,917904,917905,917906,917907,917908,917909,917910,917911,917912,917913,917914,917915,917916,917917,917918,917919,917920,917921,917922,917923,917924,917925,917926,917927,917928,917929,917930,917931,917932,917933,917934,917935,917936,917937,917938,917939,917940,917941,917942,917943,917944,917945,917946,917947,917948,917949,917950,917951,917952,917953,917954,917955,917956,917957,917958,917959,917960,917961,917962,917963,917964,917965,917966,917967,917968,917969,917970,917971,917972,917973,917974,917975,917976,917977,917978,917979,917980,917981,917982,917983,917984,917985,917986,917987,917988,917989,917990,917991,917992,917993,917994,917995,917996,917997,917998,917999],"cs":[173,8203,12288],"de":[173,8203,12288],"es":[8203,12288],"fr":[173,8203,12288],"it":[160,173,12288],"ja":[173],"ko":[173,12288],"pl":[173,8203,12288],"pt-BR":[173,8203,12288],"qps-ploc":[160,173,8203,12288],"ru":[173,12288],"tr":[160,173,8203,12288],"zh-hans":[160,173,8203,12288],"zh-hant":[173,12288]}')}static{this._data=void 0}static getData(){return this._data||(this._data=new Set([...Object.values(Nn.getRawData())].flat())),this._data}static isInvisibleCharacter(e){return Nn.getData().has(e)}static get codePoints(){return Nn.getData()}}let Mn;const Tn=globalThis.vscode;if(void 0!==Tn&&void 0!==Tn.process){const e=Tn.process;Mn={get platform(){return e.platform},get arch(){return e.arch},get env(){return e.env},cwd:()=>e.cwd()}}else Mn="undefined"!=typeof process&&"string"==typeof process?.versions?.node?{get platform(){return process.platform},get arch(){return process.arch},get env(){return process.env},cwd:()=>process.env.VSCODE_CWD||process.cwd()}:{get platform(){return K?"win32":q?"darwin":"linux"},get arch(){},get env(){return{}},cwd:()=>"/"};const Rn=Mn.cwd,An=Mn.env,On=Mn.platform,Pn=46,Fn=47,Bn=92,Wn=58;class Hn extends Error{constructor(e,t,i){let n;"string"==typeof t&&0===t.indexOf("not ")?(n="must not be",t=t.replace(/^not /,"")):n="must be";const o=-1!==e.indexOf(".")?"property":"argument";let s=`The "${e}" ${o} ${n} of type ${t}`;s+=". Received type "+typeof i,super(s),this.code="ERR_INVALID_ARG_TYPE"}}function Vn(e,t){if("string"!=typeof e)throw new Hn(t,"string",e)}const zn="win32"===On;function Un(e){return e===Fn||e===Bn}function jn(e){return e===Fn}function Kn(e){return e>=65&&e<=90||e>=97&&e<=122}function qn(e,t,i,n){let o="",s=0,r=-1,a=0,l=0;for(let d=0;d<=e.length;++d){if(d2){const e=o.lastIndexOf(i);-1===e?(o="",s=0):(o=o.slice(0,e),s=o.length-1-o.lastIndexOf(i)),r=d,a=0;continue}if(0!==o.length){o="",s=0,r=d,a=0;continue}}t&&(o+=o.length>0?`${i}..`:"..",s=2)}else o.length>0?o+=`${i}${e.slice(r+1,d)}`:o=e.slice(r+1,d),s=d-r-1;r=d,a=0}else l===Pn&&-1!==a?++a:a=-1}return o}function $n(e,t){!function(e){if(null===e||"object"!=typeof e)throw new Hn("pathObject","Object",e)}(t);const i=t.dir||t.root,n=t.base||`${t.name||""}${o=t.ext,o?`${"."===o[0]?"":"."}${o}`:""}`;var o;return i?i===t.root?`${i}${n}`:`${i}${e}${n}`:n}const Gn={resolve(...e){let t="",i="",n=!1;for(let o=e.length-1;o>=-1;o--){let s;if(o>=0){if(s=e[o],Vn(s,`paths[${o}]`),0===s.length)continue}else 0===t.length?s=Rn():(s=An[`=${t}`]||Rn(),(void 0===s||s.slice(0,2).toLowerCase()!==t.toLowerCase()&&s.charCodeAt(2)===Bn)&&(s=`${t}\\`));const r=s.length;let a=0,l="",d=!1;const c=s.charCodeAt(0);if(1===r)Un(c)&&(a=1,d=!0);else if(Un(c))if(d=!0,Un(s.charCodeAt(1))){let e=2,t=e;for(;e2&&Un(s.charCodeAt(2))&&(d=!0,a=3));if(l.length>0)if(t.length>0){if(l.toLowerCase()!==t.toLowerCase())continue}else t=l;if(n){if(t.length>0)break}else if(i=`${s.slice(a)}\\${i}`,n=d,d&&t.length>0)break}return i=qn(i,!n,"\\",Un),n?`${t}\\${i}`:`${t}${i}`||"."},normalize(e){Vn(e,"path");const t=e.length;if(0===t)return".";let i,n=0,o=!1;const s=e.charCodeAt(0);if(1===t)return jn(s)?"\\":e;if(Un(s))if(o=!0,Un(e.charCodeAt(1))){let o=2,s=o;for(;o2&&Un(e.charCodeAt(2))&&(o=!0,n=3));let r=n0&&Un(e.charCodeAt(t-1))&&(r+="\\"),!o&&void 0===i&&e.includes(":")){if(r.length>=2&&Kn(r.charCodeAt(0))&&r.charCodeAt(1)===Wn)return`.\\${r}`;let i=e.indexOf(":");do{if(i===t-1||Un(e.charCodeAt(i+1)))return`.\\${r}`}while(-1!==(i=e.indexOf(":",i+1)))}return void 0===i?o?`\\${r}`:r:o?`${i}\\${r}`:`${i}${r}`},isAbsolute(e){Vn(e,"path");const t=e.length;if(0===t)return!1;const i=e.charCodeAt(0);return Un(i)||t>2&&Kn(i)&&e.charCodeAt(1)===Wn&&Un(e.charCodeAt(2))},join(...e){if(0===e.length)return".";let t,i;for(let n=0;n0&&(void 0===t?t=i=o:t+=`\\${o}`)}if(void 0===t)return".";let n=!0,o=0;if("string"==typeof i&&Un(i.charCodeAt(0))){++o;const e=i.length;e>1&&Un(i.charCodeAt(1))&&(++o,e>2&&(Un(i.charCodeAt(2))?++o:n=!1))}if(n){for(;o=2&&(t=`\\${t.slice(o)}`)}return Gn.normalize(t)},relative(e,t){if(Vn(e,"from"),Vn(t,"to"),e===t)return"";const i=Gn.resolve(e),n=Gn.resolve(t);if(i===n)return"";if((e=i.toLowerCase())===(t=n.toLowerCase()))return"";if(i.length!==e.length||n.length!==t.length){const e=i.split("\\"),t=n.split("\\");""===e[e.length-1]&&e.pop(),""===t[t.length-1]&&t.pop();const o=e.length,s=t.length,r=or?t.slice(a).join("\\"):o>r?"..\\".repeat(o-1-a)+"..":"":"..\\".repeat(o-a)+t.slice(a).join("\\")}let o=0;for(;oo&&e.charCodeAt(s-1)===Bn;)s--;const r=s-o;let a=0;for(;aa&&t.charCodeAt(l-1)===Bn;)l--;const d=l-a,c=rc){if(t.charCodeAt(a+u)===Bn)return n.slice(a+u+1);if(2===u)return n.slice(a+u)}r>c&&(e.charCodeAt(o+u)===Bn?h=u:2===u&&(h=3)),-1===h&&(h=0)}let g="";for(u=o+h+1;u<=s;++u)u!==s&&e.charCodeAt(u)!==Bn||(g+=0===g.length?"..":"\\..");return a+=h,g.length>0?`${g}${n.slice(a,l)}`:(n.charCodeAt(a)===Bn&&++a,n.slice(a,l))},toNamespacedPath(e){if("string"!=typeof e||0===e.length)return e;const t=Gn.resolve(e);if(t.length<=2)return e;if(t.charCodeAt(0)===Bn){if(t.charCodeAt(1)===Bn){const e=t.charCodeAt(2);if(63!==e&&e!==Pn)return`\\\\?\\UNC\\${t.slice(2)}`}}else if(Kn(t.charCodeAt(0))&&t.charCodeAt(1)===Wn&&t.charCodeAt(2)===Bn)return`\\\\?\\${t}`;return t},dirname(e){Vn(e,"path");const t=e.length;if(0===t)return".";let i=-1,n=0;const o=e.charCodeAt(0);if(1===t)return Un(o)?e:".";if(Un(o)){if(i=n=1,Un(e.charCodeAt(1))){let o=2,s=o;for(;o2&&Un(e.charCodeAt(2))?3:2,n=i);let s=-1,r=!0;for(let i=t-1;i>=n;--i)if(Un(e.charCodeAt(i))){if(!r){s=i;break}}else r=!1;if(-1===s){if(-1===i)return".";s=i}return e.slice(0,s)},basename(e,t){void 0!==t&&Vn(t,"suffix"),Vn(e,"path");let i,n=0,o=-1,s=!0;if(e.length>=2&&Kn(e.charCodeAt(0))&&e.charCodeAt(1)===Wn&&(n=2),void 0!==t&&t.length>0&&t.length<=e.length){if(t===e)return"";let r=t.length-1,a=-1;for(i=e.length-1;i>=n;--i){const l=e.charCodeAt(i);if(Un(l)){if(!s){n=i+1;break}}else-1===a&&(s=!1,a=i+1),r>=0&&(l===t.charCodeAt(r)?-1==--r&&(o=i):(r=-1,o=a))}return n===o?o=a:-1===o&&(o=e.length),e.slice(n,o)}for(i=e.length-1;i>=n;--i)if(Un(e.charCodeAt(i))){if(!s){n=i+1;break}}else-1===o&&(s=!1,o=i+1);return-1===o?"":e.slice(n,o)},extname(e){Vn(e,"path");let t=0,i=-1,n=0,o=-1,s=!0,r=0;e.length>=2&&e.charCodeAt(1)===Wn&&Kn(e.charCodeAt(0))&&(t=n=2);for(let a=e.length-1;a>=t;--a){const t=e.charCodeAt(a);if(Un(t)){if(!s){n=a+1;break}}else-1===o&&(s=!1,o=a+1),t===Pn?-1===i?i=a:1!==r&&(r=1):-1!==i&&(r=-1)}return-1===i||-1===o||0===r||1===r&&i===o-1&&i===n+1?"":e.slice(i,o)},format:$n.bind(null,"\\"),parse(e){Vn(e,"path");const t={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return t;const i=e.length;let n=0,o=e.charCodeAt(0);if(1===i)return Un(o)?(t.root=t.dir=e,t):(t.base=t.name=e,t);if(Un(o)){if(n=1,Un(e.charCodeAt(1))){let t=2,o=t;for(;t0&&(t.root=e.slice(0,n));let s=-1,r=n,a=-1,l=!0,d=e.length-1,c=0;for(;d>=n;--d)if(o=e.charCodeAt(d),Un(o)){if(!l){r=d+1;break}}else-1===a&&(l=!1,a=d+1),o===Pn?-1===s?s=d:1!==c&&(c=1):-1!==s&&(c=-1);return-1!==a&&(-1===s||0===c||1===c&&s===a-1&&s===r+1?t.base=t.name=e.slice(r,a):(t.name=e.slice(r,s),t.base=e.slice(r,a),t.ext=e.slice(s,a))),t.dir=r>0&&r!==n?e.slice(0,r-1):t.root,t},sep:"\\",delimiter:";",win32:null,posix:null},Yn=(()=>{if(zn){const e=/\\/g;return()=>{const t=Rn().replace(e,"/");return t.slice(t.indexOf("/"))}}return()=>Rn()})(),Zn={resolve(...e){let t="",i=!1;for(let n=e.length-1;n>=0&&!i;n--){const o=e[n];Vn(o,`paths[${n}]`),0!==o.length&&(t=`${o}/${t}`,i=o.charCodeAt(0)===Fn)}if(!i){const e=Yn();t=`${e}/${t}`,i=e.charCodeAt(0)===Fn}return t=qn(t,!i,"/",jn),i?`/${t}`:t.length>0?t:"."},normalize(e){if(Vn(e,"path"),0===e.length)return".";const t=e.charCodeAt(0)===Fn,i=e.charCodeAt(e.length-1)===Fn;return 0===(e=qn(e,!t,"/",jn)).length?t?"/":i?"./":".":(i&&(e+="/"),t?`/${e}`:e)},isAbsolute:e=>(Vn(e,"path"),e.length>0&&e.charCodeAt(0)===Fn),join(...e){if(0===e.length)return".";const t=[];for(let i=0;i0&&t.push(n)}return 0===t.length?".":Zn.normalize(t.join("/"))},relative(e,t){if(Vn(e,"from"),Vn(t,"to"),e===t)return"";if((e=Zn.resolve(e))===(t=Zn.resolve(t)))return"";const i=e.length,n=i-1,o=t.length-1,s=ns){if(t.charCodeAt(1+a)===Fn)return t.slice(1+a+1);if(0===a)return t.slice(1+a)}else n>s&&(e.charCodeAt(1+a)===Fn?r=a:0===a&&(r=0));let l="";for(a=1+r+1;a<=i;++a)a!==i&&e.charCodeAt(a)!==Fn||(l+=0===l.length?"..":"/..");return`${l}${t.slice(1+r)}`},toNamespacedPath:e=>e,dirname(e){if(Vn(e,"path"),0===e.length)return".";const t=e.charCodeAt(0)===Fn;let i=-1,n=!0;for(let t=e.length-1;t>=1;--t)if(e.charCodeAt(t)===Fn){if(!n){i=t;break}}else n=!1;return-1===i?t?"/":".":t&&1===i?"//":e.slice(0,i)},basename(e,t){void 0!==t&&Vn(t,"suffix"),Vn(e,"path");let i,n=0,o=-1,s=!0;if(void 0!==t&&t.length>0&&t.length<=e.length){if(t===e)return"";let r=t.length-1,a=-1;for(i=e.length-1;i>=0;--i){const l=e.charCodeAt(i);if(l===Fn){if(!s){n=i+1;break}}else-1===a&&(s=!1,a=i+1),r>=0&&(l===t.charCodeAt(r)?-1==--r&&(o=i):(r=-1,o=a))}return n===o?o=a:-1===o&&(o=e.length),e.slice(n,o)}for(i=e.length-1;i>=0;--i)if(e.charCodeAt(i)===Fn){if(!s){n=i+1;break}}else-1===o&&(s=!1,o=i+1);return-1===o?"":e.slice(n,o)},extname(e){Vn(e,"path");let t=-1,i=0,n=-1,o=!0,s=0;for(let r=e.length-1;r>=0;--r){const a=e[r];if("/"!==a)-1===n&&(o=!1,n=r+1),"."===a?-1===t?t=r:1!==s&&(s=1):-1!==t&&(s=-1);else if(!o){i=r+1;break}}return-1===t||-1===n||0===s||1===s&&t===n-1&&t===i+1?"":e.slice(t,n)},format:$n.bind(null,"/"),parse(e){Vn(e,"path");const t={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return t;const i=e.charCodeAt(0)===Fn;let n;i?(t.root="/",n=1):n=0;let o=-1,s=0,r=-1,a=!0,l=e.length-1,d=0;for(;l>=n;--l){const t=e.charCodeAt(l);if(t!==Fn)-1===r&&(a=!1,r=l+1),t===Pn?-1===o?o=l:1!==d&&(d=1):-1!==o&&(d=-1);else if(!a){s=l+1;break}}if(-1!==r){const n=0===s&&i?1:s;-1===o||0===d||1===d&&o===r-1&&o===s+1?t.base=t.name=e.slice(n,r):(t.name=e.slice(n,o),t.base=e.slice(n,r),t.ext=e.slice(o,r))}return s>0?t.dir=e.slice(0,s-1):i&&(t.dir="/"),t},sep:"/",delimiter:":",win32:null,posix:null};Zn.win32=Gn.win32=Gn,Zn.posix=Gn.posix=Zn;const Qn=zn?Gn.normalize:Zn.normalize,Xn=zn?Gn.resolve:Zn.resolve,Jn=zn?Gn.relative:Zn.relative,eo=zn?Gn.dirname:Zn.dirname,to=zn?Gn.basename:Zn.basename,io=zn?Gn.extname:Zn.extname,no=zn?Gn.sep:Zn.sep,oo=/^\w[\w\d+.-]*$/,so=/^\//,ro=/^\/\//,ao="",lo="/",co=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class ho{static isUri(e){return e instanceof ho||!(!e||"object"!=typeof e)&&"string"==typeof e.authority&&"string"==typeof e.fragment&&"string"==typeof e.path&&"string"==typeof e.query&&"string"==typeof e.scheme&&"string"==typeof e.fsPath&&"function"==typeof e.with&&"function"==typeof e.toString}constructor(e,t,i,n,o,s=!1){"object"==typeof e?(this.scheme=e.scheme||ao,this.authority=e.authority||ao,this.path=e.path||ao,this.query=e.query||ao,this.fragment=e.fragment||ao):(this.scheme=function(e,t){return e||t?e:"file"}(e,s),this.authority=t||ao,this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==lo&&(t=lo+t):t=lo}return t}(this.scheme,i||ao),this.query=n||ao,this.fragment=o||ao,function(e,t){if(!e.scheme&&t)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${e.authority}", path: "${e.path}", query: "${e.query}", fragment: "${e.fragment}"}`);if(e.scheme&&!oo.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!so.test(e.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(ro.test(e.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}(this,s))}get fsPath(){return _o(this,!1)}with(e){if(!e)return this;let{scheme:t,authority:i,path:n,query:o,fragment:s}=e;return void 0===t?t=this.scheme:null===t&&(t=ao),void 0===i?i=this.authority:null===i&&(i=ao),void 0===n?n=this.path:null===n&&(n=ao),void 0===o?o=this.query:null===o&&(o=ao),void 0===s?s=this.fragment:null===s&&(s=ao),t===this.scheme&&i===this.authority&&n===this.path&&o===this.query&&s===this.fragment?this:new go(t,i,n,o,s)}static parse(e,t=!1){const i=co.exec(e);return i?new go(i[2]||ao,Co(i[4]||ao),Co(i[5]||ao),Co(i[7]||ao),Co(i[9]||ao),t):new go(ao,ao,ao,ao,ao)}static file(e){let t=ao;if(K&&(e=e.replace(/\\/g,lo)),e[0]===lo&&e[1]===lo){const i=e.indexOf(lo,2);-1===i?(t=e.substring(2),e=lo):(t=e.substring(2,i),e=e.substring(i)||lo)}return new go("file",t,e,ao,ao)}static from(e,t){return new go(e.scheme,e.authority,e.path,e.query,e.fragment,t)}static joinPath(e,...t){if(!e.path)throw new Error("[UriError]: cannot call joinPath on URI without path");let i;return i=K&&"file"===e.scheme?ho.file(Gn.join(_o(e,!0),...t)).path:Zn.join(e.path,...t),e.with({path:i})}toString(e=!1){return vo(this,e)}toJSON(){return this}static revive(e){if(e){if(e instanceof ho)return e;{const t=new go(e);return t._formatted=e.external??null,t._fsPath=e._sep===uo?e.fsPath??null:null,t}}return e}}const uo=K?1:void 0;class go extends ho{constructor(){super(...arguments),this._formatted=null,this._fsPath=null}get fsPath(){return this._fsPath||(this._fsPath=_o(this,!1)),this._fsPath}toString(e=!1){return e?vo(this,!0):(this._formatted||(this._formatted=vo(this,!1)),this._formatted)}toJSON(){const e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=uo),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e}}const po={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function mo(e,t,i){let n,o=-1;for(let s=0;s=97&&r<=122||r>=65&&r<=90||r>=48&&r<=57||45===r||46===r||95===r||126===r||t&&47===r||i&&91===r||i&&93===r||i&&58===r)-1!==o&&(n+=encodeURIComponent(e.substring(o,s)),o=-1),void 0!==n&&(n+=e.charAt(s));else{void 0===n&&(n=e.substr(0,s));const t=po[r];void 0!==t?(-1!==o&&(n+=encodeURIComponent(e.substring(o,s)),o=-1),n+=t):-1===o&&(o=s)}}return-1!==o&&(n+=encodeURIComponent(e.substring(o))),void 0!==n?n:e}function fo(e){let t;for(let i=0;i1&&"file"===e.scheme?`//${e.authority}${e.path}`:47===e.path.charCodeAt(0)&&(e.path.charCodeAt(1)>=65&&e.path.charCodeAt(1)<=90||e.path.charCodeAt(1)>=97&&e.path.charCodeAt(1)<=122)&&58===e.path.charCodeAt(2)?t?e.path.substr(1):e.path[1].toLowerCase()+e.path.substr(2):e.path,K&&(i=i.replace(/\//g,"\\")),i}function vo(e,t){const i=t?fo:mo;let n="",{scheme:o,authority:s,path:r,query:a,fragment:l}=e;if(o&&(n+=o,n+=":"),(s||"file"===o)&&(n+=lo,n+=lo),s){let e=s.indexOf("@");if(-1!==e){const t=s.substr(0,e);s=s.substr(e+1),e=t.lastIndexOf(":"),-1===e?n+=i(t,!1,!1):(n+=i(t.substr(0,e),!1,!1),n+=":",n+=i(t.substr(e+1),!1,!0)),n+="@"}s=s.toLowerCase(),e=s.lastIndexOf(":"),-1===e?n+=i(s,!1,!0):(n+=i(s.substr(0,e),!1,!0),n+=s.substr(e))}if(r){if(r.length>=3&&47===r.charCodeAt(0)&&58===r.charCodeAt(2)){const e=r.charCodeAt(1);e>=65&&e<=90&&(r=`/${String.fromCharCode(e+32)}:${r.substr(3)}`)}else if(r.length>=2&&58===r.charCodeAt(1)){const e=r.charCodeAt(0);e>=65&&e<=90&&(r=`${String.fromCharCode(e+32)}:${r.substr(2)}`)}n+=i(r,!0,!1)}return a&&(n+="?",n+=i(a,!1,!1)),l&&(n+="#",n+=t?l:mo(l,!1,!1)),n}function bo(e){try{return decodeURIComponent(e)}catch{return e.length>3?e.substr(0,3)+bo(e.substr(3)):e}}const wo=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function Co(e){return e.match(wo)?e.replace(wo,(e=>bo(e))):e}var yo;function So(e,t){return ho.isUri(e)?nn(e.scheme,t):on(e,t+":")}function xo(e,...t){return t.some((t=>So(e,t)))}!function(e){e.inMemory="inmemory",e.vscode="vscode",e.internal="private",e.walkThrough="walkThrough",e.walkThroughSnippet="walkThroughSnippet",e.http="http",e.https="https",e.file="file",e.mailto="mailto",e.untitled="untitled",e.data="data",e.command="command",e.vscodeRemote="vscode-remote",e.vscodeRemoteResource="vscode-remote-resource",e.vscodeManagedRemoteResource="vscode-managed-remote-resource",e.vscodeUserData="vscode-userdata",e.vscodeCustomEditor="vscode-custom-editor",e.vscodeNotebookCell="vscode-notebook-cell",e.vscodeNotebookCellMetadata="vscode-notebook-cell-metadata",e.vscodeNotebookCellMetadataDiff="vscode-notebook-cell-metadata-diff",e.vscodeNotebookCellOutput="vscode-notebook-cell-output",e.vscodeNotebookCellOutputDiff="vscode-notebook-cell-output-diff",e.vscodeNotebookMetadata="vscode-notebook-metadata",e.vscodeInteractiveInput="vscode-interactive-input",e.vscodeSettings="vscode-settings",e.vscodeWorkspaceTrust="vscode-workspace-trust",e.vscodeTerminal="vscode-terminal",e.vscodeChatCodeBlock="vscode-chat-code-block",e.vscodeChatCodeCompareBlock="vscode-chat-code-compare-block",e.vscodeChatEditor="vscode-chat-editor",e.vscodeChatInput="chatSessionInput",e.vscodeChatSession="vscode-chat-session",e.webviewPanel="webview-panel",e.vscodeWebview="vscode-webview",e.extension="extension",e.vscodeFileResource="vscode-file",e.tmp="tmp",e.vsls="vsls",e.vscodeSourceControl="vscode-scm",e.commentsInput="comment",e.codeSetting="code-setting",e.outputChannel="output",e.accessibleView="accessible-view",e.chatEditingSnapshotScheme="chat-editing-snapshot-text-model",e.chatEditingModel="chat-editing-text-model"}(yo||(yo={}));const ko=new class{constructor(){this._hosts=Object.create(null),this._ports=Object.create(null),this._connectionTokens=Object.create(null),this._preferredWebSchema="http",this._delegate=null,this._serverRootPath="/"}setPreferredWebSchema(e){this._preferredWebSchema=e}get _remoteResourcesPath(){return Zn.join(this._serverRootPath,yo.vscodeRemoteResource)}rewrite(e){if(this._delegate)try{return this._delegate(e)}catch(t){return De(t),e}const t=e.authority;let i=this._hosts[t];i&&-1!==i.indexOf(":")&&-1===i.indexOf("[")&&(i=`[${i}]`);const n=this._ports[t],o=this._connectionTokens[t];let s=`path=${encodeURIComponent(e.path)}`;return"string"==typeof o&&(s+=`&tkn=${encodeURIComponent(o)}`),ho.from({scheme:Y?this._preferredWebSchema:yo.vscodeRemoteResource,authority:`${i}:${n}`,path:this._remoteResourcesPath,query:s})}};class Lo{static{this.FALLBACK_AUTHORITY="vscode-app"}uriToBrowserUri(e){return e.scheme===yo.vscodeRemote?ko.rewrite(e):e.scheme!==yo.file||!G&&Z!==`${yo.vscodeFileResource}://${Lo.FALLBACK_AUTHORITY}`?e:e.with({scheme:yo.vscodeFileResource,authority:e.authority||Lo.FALLBACK_AUTHORITY,query:null,fragment:null})}}const Eo=new Lo;var Io;Object.freeze({"Cache-Control":"no-cache, no-store"}),Object.freeze({"Document-Policy":"include-js-call-stacks-in-crash-reports"}),function(e){const t=new Map([["1",{"Cross-Origin-Opener-Policy":"same-origin"}],["2",{"Cross-Origin-Embedder-Policy":"require-corp"}],["3",{"Cross-Origin-Opener-Policy":"same-origin","Cross-Origin-Embedder-Policy":"require-corp"}]]);e.CoopAndCoep=Object.freeze(t.get("3"));const i="vscode-coi";e.getHeadersFromQuery=function(e){let n;"string"==typeof e?n=new URL(e).searchParams:e instanceof URL?n=e.searchParams:ho.isUri(e)&&(n=new URL(e.toString(!0)).searchParams);const o=n?.get(i);if(o)return t.get(o)},e.addSearchParam=function(e,t,n){if(!globalThis.crossOriginIsolated)return;const o=t&&n?"3":n?"2":"1";e instanceof URLSearchParams?e.set(i,o):e[i]=o}}(Io||(Io={}));const Do="undefined"!=typeof Buffer;let No;new Ai((()=>new Uint8Array(256)));class Mo{static wrap(e){return Do&&!Buffer.isBuffer(e)&&(e=Buffer.from(e.buffer,e.byteOffset,e.byteLength)),new Mo(e)}constructor(e){this.buffer=e,this.byteLength=this.buffer.byteLength}toString(){return Do?this.buffer.toString():(No||(No=new TextDecoder),No.decode(this.buffer))}}function To(e,t){return(0|e[t+0])>>>0|e[t+1]<<8>>>0}function Ro(e,t,i){e[i+0]=255&t,t>>>=8,e[i+1]=255&t}function Ao(e,t){return e[t]*2**24+65536*e[t+1]+256*e[t+2]+e[t+3]}function Oo(e,t,i){e[i+3]=t,t>>>=8,e[i+2]=t,t>>>=8,e[i+1]=t,t>>>=8,e[i]=t}function Po(e,t){return e[t]}function Fo(e,t,i){e[i]=t}const Bo="0123456789abcdef";function Wo(e){return Ho(e,0)}function Ho(e,t){switch(typeof e){case"object":return null===e?Vo(349,t):Array.isArray(e)?(i=e,n=Vo(104579,n=t),i.reduce(((e,t)=>Ho(t,e)),n)):function(e,t){return t=Vo(181387,t),Object.keys(e).sort().reduce(((t,i)=>(t=zo(i,t),Ho(e[i],t))),t)}(e,t);case"string":return zo(e,t);case"boolean":return function(e,t){return Vo(e?433:863,t)}(e,t);case"number":return Vo(e,t);case"undefined":return Vo(937,t);default:return Vo(617,t)}var i,n}function Vo(e,t){return(t<<5)-t+e|0}function zo(e,t){t=Vo(149417,t);for(let i=0,n=e.length;i>>n)>>>0}function jo(e,t=32){return e instanceof ArrayBuffer?function({buffer:e}){let t="";for(let i=0;i>>4],t+=Bo[15&n]}return t}(Mo.wrap(new Uint8Array(e))):(e>>>0).toString(16).padStart(t/4,"0")}class Ko{static{this._bigBlock32=new DataView(new ArrayBuffer(320))}constructor(){this._h0=1732584193,this._h1=4023233417,this._h2=2562383102,this._h3=271733878,this._h4=3285377520,this._buff=new Uint8Array(67),this._buffDV=new DataView(this._buff.buffer),this._buffLen=0,this._totalLen=0,this._leftoverHighSurrogate=0,this._finished=!1}update(e){const t=e.length;if(0===t)return;const i=this._buff;let n,o,s=this._buffLen,r=this._leftoverHighSurrogate;for(0!==r?(n=r,o=-1,r=0):(n=e.charCodeAt(0),o=0);;){let a=n;if(an(n)){if(!(o+1>>6,e[t++]=128|(63&i)>>>0):i<65536?(e[t++]=224|(61440&i)>>>12,e[t++]=128|(4032&i)>>>6,e[t++]=128|(63&i)>>>0):(e[t++]=240|(1835008&i)>>>18,e[t++]=128|(258048&i)>>>12,e[t++]=128|(4032&i)>>>6,e[t++]=128|(63&i)>>>0),t>=64&&(this._step(),t-=64,this._totalLen+=64,e[0]=e[64],e[1]=e[65],e[2]=e[66]),t}digest(){return this._finished||(this._finished=!0,this._leftoverHighSurrogate&&(this._leftoverHighSurrogate=0,this._buffLen=this._push(this._buff,this._buffLen,65533)),this._totalLen+=this._buffLen,this._wrapUp()),jo(this._h0)+jo(this._h1)+jo(this._h2)+jo(this._h3)+jo(this._h4)}_wrapUp(){this._buff[this._buffLen++]=128,this._buff.subarray(this._buffLen).fill(0),this._buffLen>56&&(this._step(),this._buff.fill(0));const e=8*this._totalLen;this._buffDV.setUint32(56,Math.floor(e/4294967296),!1),this._buffDV.setUint32(60,e%4294967296,!1),this._step()}_step(){const e=Ko._bigBlock32,t=this._buffDV;for(let i=0;i<64;i+=4)e.setUint32(i,t.getUint32(i,!1),!1);for(let t=64;t<320;t+=4)e.setUint32(t,Uo(e.getUint32(t-12,!1)^e.getUint32(t-32,!1)^e.getUint32(t-56,!1)^e.getUint32(t-64,!1),1),!1);let i,n,o,s=this._h0,r=this._h1,a=this._h2,l=this._h3,d=this._h4;for(let t=0;t<80;t++)t<20?(i=r&a|~r&l,n=1518500249):t<40?(i=r^a^l,n=1859775393):t<60?(i=r&a|r&l|a&l,n=2400959708):(i=r^a^l,n=3395469782),o=Uo(s,5)+i+d+n+e.getUint32(4*t,!1)&4294967295,d=l,l=a,a=Uo(r,30),r=s,s=o;this._h0=this._h0+s&4294967295,this._h1=this._h1+r&4294967295,this._h2=this._h2+a&4294967295,this._h3=this._h3+l&4294967295,this._h4=this._h4+d&4294967295}}class qo{constructor(e,t,i){this.owner=e,this.debugNameSource=t,this.referenceFn=i}getDebugName(e){return function(e,t){const i=Go.get(e);if(i)return i;const n=function(e,t){const i=Go.get(e);if(i)return i;const n=t.owner?function(e){const t=Zo.get(e);if(t)return t;const i=Qo(e)??"Object";let n=Yo.get(i)??0;n++,Yo.set(i,n);const o=1===n?i:`${i}#${n}`;return Zo.set(e,o),o}(t.owner)+".":"";let o;const s=t.debugNameSource;if(void 0!==s){if("function"!=typeof s)return n+s;if(o=s(),void 0!==o)return n+o}const r=t.referenceFn;if(void 0!==r&&(o=Xo(r),void 0!==o))return n+o;if(void 0!==t.owner){const i=function(e,t){for(const i in e)if(e[i]===t)return i}(t.owner,e);if(void 0!==i)return n+i}}(e,t);if(n){let t=$o.get(n)??0;t++,$o.set(n,t);const i=1===t?n:`${n}#${t}`;return Go.set(e,i),i}}(e,this)}}const $o=new Map,Go=new WeakMap,Yo=new Map,Zo=new WeakMap;function Qo(e){const t=e.constructor;if(t){if("Object"===t.name)return;return t.name}}function Xo(e){const t=e.toString(),i=/\/\*\*\s*@description\s*([^*]*)\*\//.exec(t),n=i?i[1]:void 0;return n?.trim()}function Jo(e,t,i=(e,t)=>e===t){if(e===t)return!0;if(!e||!t)return!1;if(e.length!==t.length)return!1;for(let n=0,o=e.length;ni(e[n],t)))}function ts(e,t){let i=0,n=e-1;for(;i<=n;){const e=(i+n)/2|0,o=t(e);if(o<0)i=e+1;else{if(!(o>0))return e;n=e-1}}return-(i+1)}function is(e,t,i){if((e|=0)>=t.length)throw new TypeError("invalid index");const n=t[Math.floor(t.length*Math.random())],o=[],s=[],r=[];for(const e of t){const t=i(e,n);t<0?o.push(e):t>0?s.push(e):r.push(e)}return e!!e))}function as(e){let t=0;for(let i=0;i0}function cs(e,t=e=>e){const i=new Set;return e.filter((e=>{const n=t(e);return!i.has(n)&&(i.add(n),!0)}))}function hs(e,t){let i="number"==typeof t?e:0;"number"==typeof t?i=e:(i=0,t=e);const n=[];if(i<=t)for(let e=i;et;e--)n.push(e);return n}function us(e,t,i){const n=e.slice(0,t),o=e.slice(t);return n.concat(i,o)}function gs(e,t){const i=e.indexOf(t);i>-1&&(e.splice(i,1),e.unshift(t))}function ps(e,t){const i=e.indexOf(t);i>-1&&(e.splice(i,1),e.push(t))}function ms(e,t){for(const i of t)e.push(i)}function fs(e){return Array.isArray(e)?e:[e]}function _s(e,t,i,n){const o=vs(e,t);let s=e.splice(o,i);return void 0===s&&(s=[]),function(e,t,i){const n=vs(e,t),o=e.length,s=i.length;e.length=o+s;for(let t=o-1;t>=n;t--)e[t+s]=e[t];for(let t=0;tt(e(i),e(n))}!function(e){e.isLessThan=function(e){return e<0},e.isLessThanOrEqual=function(e){return e<=0},e.isGreaterThan=function(e){return e>0},e.isNeitherLessOrGreaterThan=function(e){return 0===e},e.greaterThan=1,e.lessThan=-1,e.neitherLessOrGreaterThan=0}(bs||(bs={}));const Cs=(e,t)=>e-t,ys=(e,t)=>Cs(e?1:0,t?1:0);function Ss(e){return(t,i)=>-e(t,i)}class xs{constructor(e){this.firstIdx=0,this.items=e,this.lastIdx=this.items.length-1}get length(){return this.lastIdx-this.firstIdx+1}takeWhile(e){let t=this.firstIdx;for(;t=0&&e(this.items[t]);)t--;const i=t===this.lastIdx?null:this.items.slice(t+1,this.lastIdx+1);return this.lastIdx=t,i}peek(){if(0!==this.length)return this.items[this.firstIdx]}dequeue(){const e=this.items[this.firstIdx];return this.firstIdx++,e}takeCount(e){const t=this.items.slice(this.firstIdx,this.firstIdx+e);return this.firstIdx+=e,t}}class ks{static{this.empty=new ks((e=>{}))}constructor(e){this.iterate=e}toArray(){const e=[];return this.iterate((t=>(e.push(t),!0))),e}filter(e){return new ks((t=>this.iterate((i=>!e(i)||t(i)))))}map(e){return new ks((t=>this.iterate((i=>t(e(i))))))}findLast(e){let t;return this.iterate((i=>(e(i)&&(t=i),!0))),t}findLastMaxBy(e){let t,i=!0;return this.iterate((n=>((i||bs.isGreaterThan(e(n,t)))&&(i=!1,t=n),!0))),t}}class Ls{constructor(e){this._indexMap=e}static createSortPermutation(e,t){const i=Array.from(e.keys()).sort(((i,n)=>t(e[i],e[n])));return new Ls(i)}apply(e){return e.map(((t,i)=>e[this._indexMap[i]]))}inverse(){const e=this._indexMap.slice();for(let t=0;te+t),0)}const Is=(e,t)=>e===t;function Ds(e=Is){return(t,i)=>Jo(t,i,e)}function Ns(e,t,i){if(void 0!==i){return null==e||null==t?t===e:i(e,t)}{const t=e;return(e,i)=>null==e||null==i?i===e:t(e,i)}}function Ms(e,t){if(e===t)return!0;if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return!1;for(let i=0;i{i.updateObserver(e,t)}));this._updatingObservers.push({observer:e,observable:t}),e.beginUpdate(t)}finish(){const e=this._updatingObservers;if(e){for(let t=0;t{const e=Xo(o);if(void 0!==e)return e;const t=/^\s*\(?\s*([a-zA-Z_$][a-zA-Z_$0-9]*)\s*\)?\s*=>\s*\1(?:\??)\.([a-zA-Z_$][a-zA-Z_$0-9]*)\s*$/.exec(o.toString());return t?`${this.debugName}.${t[2]}`:n?void 0:`${this.debugName} (mapped)`},debugReferenceFn:o},(e=>o(this.read(e),e)),i)}flatten(){return Ks({owner:void 0,debugName:()=>`${this.debugName} (flattened)`},(e=>this.read(e).read(e)))}recomputeInitiallyAndOnChange(e,t){return e.add(qs(this,t)),this}}class Qs extends Zs{constructor(e){super(),this._observers=new Set,Os()?.handleObservableCreated(this,e)}addObserver(e){const t=this._observers.size;this._observers.add(e),0===t&&this.onFirstObserverAdded(),t!==this._observers.size&&Os()?.handleOnListenerCountChanged(this,this._observers.size)}removeObserver(e){const t=this._observers.delete(e);t&&0===this._observers.size&&this.onLastObserverRemoved(),t&&Os()?.handleOnListenerCountChanged(this,this._observers.size)}onFirstObserverAdded(){}onLastObserverRemoved(){}debugGetObservers(){return this._observers}}function Xs(e,t,i=Us.ofCaller()){let n;return n="string"==typeof e?new qo(void 0,e,void 0):new qo(e,void 0,void 0),new Js(n,t,Is,i)}class Js extends Qs{get debugName(){return this._debugNameData.getDebugName(this)??"ObservableValue"}constructor(e,t,i,n){super(n),this._debugNameData=e,this._equalityComparator=i,this._value=t,Os()?.handleObservableUpdated(this,{hadValue:!1,newValue:t,change:void 0,didChange:!0,oldValue:void 0})}get(){return this._value}set(e,t,i){if(void 0===i&&this._equalityComparator(this._value,e))return;let n;t||(t=n=new zs((()=>{}),(()=>`Setting ${this.debugName}`)));try{const n=this._value;this._setValue(e),Os()?.handleObservableUpdated(this,{oldValue:n,newValue:e,change:i,didChange:!0,hadValue:!0});for(const e of this._observers)t.updateObserver(e,this),e.handleChange(this,i)}finally{n&&n.finish()}}toString(){return`${this.debugName}: ${this._value}`}_setValue(e){this._value=e}debugGetState(){return{value:this._value}}debugSetValue(e){this._value=e}}function er(e,t,i=Us.ofCaller()){let n;return n="string"==typeof e?new qo(void 0,e,void 0):new qo(e,void 0,void 0),new tr(n,t,Is,i)}class tr extends Js{_setValue(e){this._value!==e&&(this._value&&this._value.dispose(),this._value=e)}dispose(){this._value?.dispose()}}class ir extends Qs{get debugName(){return this._debugNameData.getDebugName(this)??"LazyObservableValue"}constructor(e,t,i,n){super(n),this._debugNameData=e,this._equalityComparator=i,this._isUpToDate=!0,this._deltas=[],this._updateCounter=0,this._value=t}get(){return this._update(),this._value}_update(){if(!this._isUpToDate)if(this._isUpToDate=!0,this._deltas.length>0){for(const e of this._deltas){Os()?.handleObservableUpdated(this,{change:e,didChange:!0,oldValue:"(unknown)",newValue:this._value,hadValue:!0});for(const t of this._observers)t.handleChange(this,e)}this._deltas.length=0}else{Os()?.handleObservableUpdated(this,{change:void 0,didChange:!0,oldValue:"(unknown)",newValue:this._value,hadValue:!0});for(const e of this._observers)e.handleChange(this,void 0)}}_beginUpdate(){if(this._updateCounter++,1===this._updateCounter)for(const e of this._observers)e.beginUpdate(this)}_endUpdate(){if(this._updateCounter--,0===this._updateCounter){this._update();const e=[...this._observers];for(const t of e)t.endUpdate(this)}}addObserver(e){const t=!this._observers.has(e)&&this._updateCounter>0;super.addObserver(e),t&&e.beginUpdate(this)}removeObserver(e){const t=this._observers.has(e)&&this._updateCounter>0;super.removeObserver(e),t&&e.endUpdate(this)}set(e,t,i){if(void 0===i&&this._equalityComparator(this._value,e))return;let n;t||(t=n=new zs((()=>{}),(()=>`Setting ${this.debugName}`)));try{if(this._isUpToDate=!1,this._setValue(e),void 0!==i&&this._deltas.push(i),t.updateObserver({beginUpdate:()=>this._beginUpdate(),endUpdate:()=>this._endUpdate(),handleChange:(e,t)=>{},handlePossibleChange:e=>{}},this),this._updateCounter>1)for(const e of this._observers)e.handlePossibleChange(this)}finally{n&&n.finish()}}toString(){return`${this.debugName}: ${this._value}`}_setValue(e){this._value=e}}function nr(e,t,i=Us.ofCaller()){return e.lazy?new ir(new qo(e.owner,e.debugName,void 0),t,e.equalsFn??Is,i):new Js(new qo(e.owner,e.debugName,void 0),t,e.equalsFn??Is,i)}function or(e){switch(e){case 1:return"dependenciesMightHaveChanged";case 2:return"stale";case 3:return"upToDate";default:return""}}class sr{get debugName(){return this._debugNameData.getDebugName(this)??"(anonymous)"}constructor(e,t,i,n){this._debugNameData=e,this._runFn=t,this._changeTracker=i,this._state=2,this._updateCount=0,this._disposed=!1,this._dependencies=new Set,this._dependenciesToBeRemoved=new Set,this._isRunning=!1,this._store=void 0,this._delayedStore=void 0,this._changeSummary=this._changeTracker?.createChangeSummary(void 0),Os()?.handleAutorunCreated(this,n),this._run(),yt(this)}dispose(){if(!this._disposed){this._disposed=!0;for(const e of this._dependencies)e.removeObserver(this);this._dependencies.clear(),void 0!==this._store&&this._store.dispose(),void 0!==this._delayedStore&&this._delayedStore.dispose(),Os()?.handleAutorunDisposed(this),St(this)}}_run(){const e=this._dependenciesToBeRemoved;this._dependenciesToBeRemoved=this._dependencies,this._dependencies=e,this._state=3;try{if(!this._disposed){Os()?.handleAutorunStarted(this);const e=this._changeSummary,t=this._delayedStore;void 0!==t&&(this._delayedStore=void 0);try{this._isRunning=!0,this._changeTracker&&(this._changeTracker.beforeUpdate?.(this,e),this._changeSummary=this._changeTracker.createChangeSummary(e)),void 0!==this._store&&(this._store.dispose(),this._store=void 0),this._runFn(this,e)}catch(e){Ie(e)}finally{this._isRunning=!1,void 0!==t&&t.dispose()}}}finally{this._disposed||Os()?.handleAutorunFinished(this);for(const e of this._dependenciesToBeRemoved)e.removeObserver(this);this._dependenciesToBeRemoved.clear()}}toString(){return`Autorun<${this.debugName}>`}beginUpdate(e){3===this._state&&(this._state=1),this._updateCount++}endUpdate(e){try{if(1===this._updateCount)do{if(1===this._state){this._state=3;for(const e of this._dependencies)if(e.reportChanges(),2===this._state)break}3!==this._state&&this._run()}while(3!==this._state)}finally{this._updateCount--}st((()=>this._updateCount>=0))}handlePossibleChange(e){3===this._state&&this._isDependency(e)&&(this._state=1)}handleChange(e,t){if(this._isDependency(e)){Os()?.handleAutorunDependencyChanged(this,e,t);try{(!this._changeTracker||this._changeTracker.handleChange({changedObservable:e,change:t,didChange:t=>t===e},this._changeSummary))&&(this._state=2)}catch(e){Ie(e)}}}_isDependency(e){return this._dependencies.has(e)&&!this._dependenciesToBeRemoved.has(e)}_ensureNoRunning(){if(!this._isRunning)throw new We("The reader object cannot be used outside its compute function!")}readObservable(e){if(this._ensureNoRunning(),this._disposed)return e.get();e.addObserver(this);const t=e.get();return this._dependencies.add(e),this._dependenciesToBeRemoved.delete(e),t}get store(){if(this._ensureNoRunning(),this._disposed)throw new We("Cannot access store after dispose");return void 0===this._store&&(this._store=new Mt),this._store}debugGetState(){return{isRunning:this._isRunning,updateCount:this._updateCount,dependencies:this._dependencies,state:this._state,stateStr:or(this._state)}}debugRerun(){this._isRunning?this._state=2:this._run()}}function rr(e,t=Us.ofCaller()){return new sr(new qo(void 0,void 0,e),e,void 0,t)}function ar(e,t,i=Us.ofCaller()){return new sr(new qo(e.owner,e.debugName,e.debugReferenceFn??t),t,void 0,i)}function lr(e,t,i=Us.ofCaller()){return new sr(new qo(e.owner,e.debugName,e.debugReferenceFn??t),t,e.changeTracker,i)}function dr(e){const t=new Mt,i=ar({owner:void 0,debugName:void 0,debugReferenceFn:e},(i=>{t.clear(),e(i,t)}));return Nt((()=>{i.dispose(),t.dispose()}))}function cr(e){switch(e){case 0:return"initial";case 1:return"dependenciesMightHaveChanged";case 2:return"stale";case 3:return"upToDate";default:return""}}class hr extends Qs{get debugName(){return this._debugNameData.getDebugName(this)??"(anonymous)"}constructor(e,t,i,n=void 0,o,s){super(s),this._debugNameData=e,this._computeFn=t,this._changeTracker=i,this._handleLastObserverRemoved=n,this._equalityComparator=o,this._state=0,this._value=void 0,this._updateCount=0,this._dependencies=new Set,this._dependenciesToBeRemoved=new Set,this._changeSummary=void 0,this._isUpdating=!1,this._isComputing=!1,this._didReportChange=!1,this._isInBeforeUpdate=!1,this._isReaderValid=!1,this._store=void 0,this._delayedStore=void 0,this._removedObserverToCallEndUpdateOn=null,this._changeSummary=this._changeTracker?.createChangeSummary(void 0)}onLastObserverRemoved(){this._state=0,this._value=void 0,Os()?.handleDerivedCleared(this);for(const e of this._dependencies)e.removeObserver(this);this._dependencies.clear(),void 0!==this._store&&(this._store.dispose(),this._store=void 0),void 0!==this._delayedStore&&(this._delayedStore.dispose(),this._delayedStore=void 0),this._handleLastObserverRemoved?.()}get(){if(this._isComputing,0===this._observers.size){let e;try{let t;this._isReaderValid=!0,this._changeTracker&&(t=this._changeTracker.createChangeSummary(void 0),this._changeTracker.beforeUpdate?.(this,t)),e=this._computeFn(this,t)}finally{this._isReaderValid=!1}return this.onLastObserverRemoved(),e}do{if(1===this._state)for(const e of this._dependencies)if(e.reportChanges(),2===this._state)break;1===this._state&&(this._state=3),3!==this._state&&this._recompute()}while(3!==this._state);return this._value}_recompute(){let e=!1;this._isComputing=!0,this._didReportChange=!1;const t=this._dependenciesToBeRemoved;this._dependenciesToBeRemoved=this._dependencies,this._dependencies=t;try{const t=this._changeSummary;this._isReaderValid=!0,this._changeTracker&&(this._isInBeforeUpdate=!0,this._changeTracker.beforeUpdate?.(this,t),this._isInBeforeUpdate=!1,this._changeSummary=this._changeTracker?.createChangeSummary(t));const i=0!==this._state,n=this._value;this._state=3;const o=this._delayedStore;void 0!==o&&(this._delayedStore=void 0);try{void 0!==this._store&&(this._store.dispose(),this._store=void 0),this._value=this._computeFn(this,t)}finally{this._isReaderValid=!1;for(const e of this._dependenciesToBeRemoved)e.removeObserver(this);this._dependenciesToBeRemoved.clear(),void 0!==o&&o.dispose()}e=this._didReportChange||i&&!this._equalityComparator(n,this._value),Os()?.handleObservableUpdated(this,{oldValue:n,newValue:this._value,change:void 0,didChange:e,hadValue:i})}catch(e){Ie(e)}if(this._isComputing=!1,!this._didReportChange&&e)for(const e of this._observers)e.handleChange(this,void 0);else this._didReportChange=!1}toString(){return`LazyDerived<${this.debugName}>`}beginUpdate(e){if(this._isUpdating)throw new We("Cyclic deriveds are not supported yet!");this._updateCount++,this._isUpdating=!0;try{const e=1===this._updateCount;if(3===this._state&&(this._state=1,!e))for(const e of this._observers)e.handlePossibleChange(this);if(e)for(const e of this._observers)e.beginUpdate(this)}finally{this._isUpdating=!1}}endUpdate(e){if(this._updateCount--,0===this._updateCount){const e=[...this._observers];for(const t of e)t.endUpdate(this);if(this._removedObserverToCallEndUpdateOn){const e=[...this._removedObserverToCallEndUpdateOn];this._removedObserverToCallEndUpdateOn=null;for(const t of e)t.endUpdate(this)}}st((()=>this._updateCount>=0))}handlePossibleChange(e){if(3===this._state&&this._dependencies.has(e)&&!this._dependenciesToBeRemoved.has(e)){this._state=1;for(const e of this._observers)e.handlePossibleChange(this)}}handleChange(e,t){if(this._dependencies.has(e)&&!this._dependenciesToBeRemoved.has(e)||this._isInBeforeUpdate){Os()?.handleDerivedDependencyChanged(this,e,t);let i=!1;try{i=!this._changeTracker||this._changeTracker.handleChange({changedObservable:e,change:t,didChange:t=>t===e},this._changeSummary)}catch(e){Ie(e)}const n=3===this._state;if(i&&(1===this._state||n)&&(this._state=2,n))for(const e of this._observers)e.handlePossibleChange(this)}}_ensureReaderValid(){if(!this._isReaderValid)throw new We("The reader object cannot be used outside its compute function!")}readObservable(e){this._ensureReaderValid(),e.addObserver(this);const t=e.get();return this._dependencies.add(e),this._dependenciesToBeRemoved.delete(e),t}get store(){return this._ensureReaderValid(),void 0===this._store&&(this._store=new Mt),this._store}addObserver(e){const t=!this._observers.has(e)&&this._updateCount>0;super.addObserver(e),t&&(this._removedObserverToCallEndUpdateOn&&this._removedObserverToCallEndUpdateOn.has(e)?this._removedObserverToCallEndUpdateOn.delete(e):e.beginUpdate(this))}removeObserver(e){this._observers.has(e)&&this._updateCount>0&&(this._removedObserverToCallEndUpdateOn||(this._removedObserverToCallEndUpdateOn=new Set),this._removedObserverToCallEndUpdateOn.add(e)),super.removeObserver(e)}debugGetState(){return{state:this._state,stateStr:cr(this._state),updateCount:this._updateCount,isComputing:this._isComputing,dependencies:this._dependencies,value:this._value}}debugSetValue(e){this._value=e}debugRecompute(){this._isComputing?this._state=2:this._recompute()}setValue(e,t,i){this._value=e;const n=this._observers;t.updateObserver(this,this);for(const e of n)e.handleChange(this,i)}}class ur extends hr{constructor(e,t,i,n=void 0,o,s,r){super(e,t,i,n,o,r),this.set=s}}function gr(e,t,i=Us.ofCaller()){return void 0!==t?new hr(new qo(e,void 0,t),t,void 0,void 0,Is,i):new hr(new qo(void 0,void 0,e),e,void 0,void 0,Is,i)}function pr(e,t,i,n=Us.ofCaller()){return new ur(new qo(e,void 0,t),t,void 0,void 0,Is,i,n)}function mr(e,t,i=Us.ofCaller()){return new hr(new qo(e.owner,e.debugName,e.debugReferenceFn),t,void 0,e.onLastObserverRemoved,e.equalsFn??Is,i)}function fr(e,t,i=Us.ofCaller()){return new hr(new qo(e.owner,e.debugName,void 0),t,e.changeTracker,void 0,e.equalityComparer??Is,i)}function _r(e,t,i=Us.ofCaller()){let n,o,s;return void 0===t?(n=e,o=void 0):(o=e,n=t),new hr(new qo(o,void 0,n),(e=>{s?s.clear():s=new Mt;const t=n(e);return t&&s.add(t),t}),void 0,(()=>{s&&(s.dispose(),s=void 0)}),Is,i)}var vr;Ks=mr;class br{constructor(e){this._value=Xs(this,void 0),this.promiseResult=this._value,this.promise=e.then((e=>(Ws((t=>{this._value.set(new wr(e,void 0),t)})),e)),(e=>{throw Ws((t=>{this._value.set(new wr(void 0,e),t)})),e}))}}class wr{constructor(e,t){this.data=e,this.error=t}getDataOrThrow(){if(this.error)throw this.error;return this.data}}function Cr(e,t,i,n){return t||(t=e=>null!=e),new Promise(((o,s)=>{let r=!0,a=!1;const l=e.map((e=>({isFinished:t(e),error:!!i&&i(e),state:e}))),d=rr((e=>{const{isFinished:t,error:i,state:n}=l.read(e);(t||i)&&(r?a=!0:d.dispose(),i?s(!0===i?n:i):o(n))}));if(n){const e=n.onCancellationRequested((()=>{d.dispose(),e.dispose(),s(new Ae)}));if(n.isCancellationRequested)return d.dispose(),e.dispose(),void s(new Ae)}r=!1,a&&d.dispose()}))}function yr(...e){let t,i,n,o;return 2===e.length?[i,n]=e:[t,i,n,o]=e,new xr(new qo(t,void 0,n),i,n,(()=>xr.globalTransaction),Is,o??Us.ofCaller())}function Sr(e,t,i,n=Us.ofCaller()){return new xr(new qo(e.owner,e.debugName,e.debugReferenceFn??i),t,i,(()=>xr.globalTransaction),e.equalsFn??Is,n)}class xr extends Qs{constructor(e,t,i,n,o,s){super(s),this._debugNameData=e,this.event=t,this._getValue=i,this._getTransaction=n,this._equalityComparator=o,this._hasValue=!1,this.handleEvent=e=>{const t=this._getValue(e),i=this._value,n=!this._hasValue||!this._equalityComparator(i,t);let o=!1;n&&(this._value=t,this._hasValue&&(o=!0,Vs(this._getTransaction(),(e=>{Os()?.handleObservableUpdated(this,{oldValue:i,newValue:t,change:void 0,didChange:n,hadValue:this._hasValue});for(const t of this._observers)e.updateObserver(t,this),t.handleChange(this,void 0)}),(()=>{const e=this.getDebugName();return"Event fired"+(e?`: ${e}`:"")}))),this._hasValue=!0),o||Os()?.handleObservableUpdated(this,{oldValue:i,newValue:t,change:void 0,didChange:n,hadValue:this._hasValue})}}getDebugName(){return this._debugNameData.getDebugName(this)}get debugName(){const e=this.getDebugName();return"From Event"+(e?`: ${e}`:"")}onFirstObserverAdded(){this._subscription=this.event(this.handleEvent)}onLastObserverRemoved(){this._subscription.dispose(),this._subscription=void 0,this._hasValue=!1,this._value=void 0}get(){return this._subscription?(this._hasValue||this.handleEvent(void 0),this._value):this._getValue(void 0)}debugSetValue(e){this._value=e}debugGetState(){return{value:this._value,hasValue:this._hasValue}}}function kr(e,t=Us.ofCaller()){return"string"==typeof e?new Lr(e,void 0,t):new Lr(void 0,e,t)}(vr=yr||(yr={})).Observer=xr,vr.batchEventsGlobally=function(e,t){let i=!1;void 0===xr.globalTransaction&&(xr.globalTransaction=e,i=!0);try{t()}finally{i&&(xr.globalTransaction=void 0)}};class Lr extends Qs{get debugName(){return new qo(this._owner,this._debugName,void 0).getDebugName(this)??"Observable Signal"}toString(){return this.debugName}constructor(e,t,i){super(i),this._debugName=e,this._owner=t}trigger(e,t){if(e)for(const i of this._observers)e.updateObserver(i,this),i.handleChange(this,t);else Ws((e=>{this.trigger(e,t)}),(()=>`Trigger signal ${this.debugName}`))}get(){}}function Er(e,t){let i,n,o=!1;return yr((s=>{const r=rr((r=>{const a=e.read(r);o?(n&&clearTimeout(n),n=setTimeout((()=>{i=a,s()}),t)):(o=!0,i=a)}));return{dispose(){r.dispose(),o=!1,i=void 0}}}),(()=>o?i:e.get()))}function Ir(e,t){const i=new Dr(!0,t);e.addObserver(i);try{i.beginUpdate(e)}finally{i.endUpdate(e)}return Nt((()=>{e.removeObserver(i)}))}$s=function(e){const t=new Dr(!1,void 0);return e.addObserver(t),Nt((()=>{e.removeObserver(t)}))},function(e){qs=e}(Ir);class Dr{constructor(e,t){this._forceRecompute=e,this._handleValue=t,this._counter=0}beginUpdate(e){this._counter++}endUpdate(e){1===this._counter&&this._forceRecompute&&(this._handleValue?this._handleValue(e.get()):e.reportChanges()),this._counter--}handlePossibleChange(e){}handleChange(e,t){}}function Nr(e,t){let i;return mr({owner:e,debugReferenceFn:t},(e=>(i=t(e,i),i)))}function Mr(e,t,i,n){let o=new Tr(i,n);return mr({debugReferenceFn:i,owner:e,onLastObserverRemoved:()=>{o.dispose(),o=new Tr(i)}},(e=>(o.setItems(t.read(e)),o.getItems())))}class Tr{constructor(e,t){this._map=e,this._keySelector=t,this._cache=new Map,this._items=[]}dispose(){this._cache.forEach((e=>e.store.dispose())),this._cache.clear()}setItems(e){const t=[],i=new Set(this._cache.keys());for(const n of e){const e=this._keySelector?this._keySelector(n):n;let o=this._cache.get(e);if(o)i.delete(e);else{const t=new Mt;o={out:this._map(n,t),store:t},this._cache.set(e,o)}t.push(o.out)}for(const e of i)this._cache.get(e).store.dispose(),this._cache.delete(e);this._items=t}getItems(){return this._items}}function Rr(e){let t;return{createChangeSummary:e=>({changes:[]}),handleChange(i,n){t||(t=e());for(const e in t)i.didChange(t[e])&&n.changes.push({key:e,change:i.change});return!0},beforeUpdate(i,n){t||(t=e());for(const e in t){if("changes"===e)throw new We('property name "changes" is reserved for change tracking');n[e]=t[e].read(i)}}}}function Ar(e){return new Or(e)}class Or extends Zs{constructor(e){super(),this.value=e}get debugName(){return this.toString()}get(){return this.value}addObserver(e){}removeObserver(e){}toString(){return`Const: ${this.value}`}}function Pr(e,t,i=Us.ofCaller()){return new Fr("string"==typeof e?e:new qo(e,void 0,void 0),t,i)}class Fr extends Qs{constructor(e,t,i){super(i),this.event=t,this.handleEvent=()=>{Ws((e=>{for(const t of this._observers)e.updateObserver(t,this),t.handleChange(this,void 0)}),(()=>this.debugName))},this.debugName="string"==typeof e?e:e.getDebugName(this)??"Observable Signal From Event"}onFirstObserverAdded(){this.subscription=this.event(this.handleEvent)}onLastObserverRemoved(){this.subscription.dispose(),this.subscription=void 0}get(){}}function Br(e,t){let i,n=!0;return function(e,t){const i=new Mt,n=lr({owner:e.owner,debugName:e.debugName,debugReferenceFn:e.debugReferenceFn??t,changeTracker:e.changeTracker},((e,n)=>{i.clear(),t(e,n)}));return Nt((()=>{n.dispose(),i.dispose()}))}({changeTracker:{createChangeSummary:()=>({deltas:[],didChange:!1}),handleChange:(t,i)=>{if(t.didChange(e)){const e=t.change;void 0!==e&&i.deltas.push(e),i.didChange=!0}return!0}}},((o,s)=>{const r=e.read(o),a=i;s.didChange&&(i=r,t(r,a,s.deltas)),n&&(n=!1,i=r)}))}function Wr(e,t){const i=new Mt,n=Br(e,((e,n,o)=>{i.clear(),t(e,n,o,i)}));return{dispose(){n.dispose(),i.dispose()}}}class Hr{constructor(){this.indentation=0,this.changedObservablesSets=new WeakMap}addFilteredObj(e){this._filteredObjects||(this._filteredObjects=new Set),this._filteredObjects.add(e)}_isIncluded(e){return this._filteredObjects?.has(e)??!0}textToConsoleArgs(e){return function(e){const t=new Array,i=[];let n="";!function e(n){if("length"in n)for(const t of n)t&&e(t);else"text"in n?(`%c${n.text}`,t.push(n.style),n.data&&i.push(...n.data)):"data"in n&&i.push(...n.data)}(e);const o=[n,...t];return o.push(...i),o}([Vr(Kr("| ",this.indentation)),e])}formatInfo(e){return e.hadValue?e.didChange?[Vr(" "),Ur(jr(e.oldValue,70),{color:"red",strikeThrough:!0}),Vr(" "),Ur(jr(e.newValue,60),{color:"green"})]:[Vr(" (unchanged)")]:[Vr(" "),Ur(jr(e.newValue,60),{color:"green"}),Vr(" (initial)")]}handleObservableCreated(e){if(e instanceof hr){const t=e;this.changedObservablesSets.set(t,new Set)}}handleOnListenerCountChanged(e,t){}handleObservableUpdated(e,t){this._isIncluded(e)&&(e instanceof hr?this._handleDerivedRecomputed(e,t):console.log(...this.textToConsoleArgs([zr("observable value changed"),Ur(e.debugName,{color:"BlueViolet"}),...this.formatInfo(t)])))}formatChanges(e){if(0!==e.size)return Ur(" (changed deps: "+[...e].map((e=>e.debugName)).join(", ")+")",{color:"gray"})}handleDerivedDependencyChanged(e,t,i){this._isIncluded(e)&&this.changedObservablesSets.get(e)?.add(t)}_handleDerivedRecomputed(e,t){if(!this._isIncluded(e))return;const i=this.changedObservablesSets.get(e);i&&(console.log(...this.textToConsoleArgs([zr("derived recomputed"),Ur(e.debugName,{color:"BlueViolet"}),...this.formatInfo(t),this.formatChanges(i),{data:[{fn:e._debugNameData.referenceFn??e._computeFn}]}])),i.clear())}handleDerivedCleared(e){this._isIncluded(e)&&console.log(...this.textToConsoleArgs([zr("derived cleared"),Ur(e.debugName,{color:"BlueViolet"})]))}handleAutorunCreated(e){this._isIncluded(e)&&this.changedObservablesSets.set(e,new Set)}handleAutorunDisposed(e){}handleAutorunDependencyChanged(e,t,i){this._isIncluded(e)&&this.changedObservablesSets.get(e).add(t)}handleAutorunStarted(e){const t=this.changedObservablesSets.get(e);t&&(this._isIncluded(e)&&console.log(...this.textToConsoleArgs([zr("autorun"),Ur(e.debugName,{color:"BlueViolet"}),this.formatChanges(t),{data:[{fn:e._debugNameData.referenceFn??e._runFn}]}])),t.clear(),this.indentation++)}handleAutorunFinished(e){this.indentation--}handleBeginTransaction(e){let t=e.getDebugName();void 0===t&&"",this._isIncluded(e)&&console.log(...this.textToConsoleArgs([zr("transaction"),Ur(t,{color:"BlueViolet"}),{data:[{fn:e._fn}]}])),this.indentation++}handleEndTransaction(){this.indentation--}}function Vr(e){return Ur(e,{color:"black"})}function zr(e){return Ur(function(e){for(;e.length<10;)0;return e}(`${e}: `),{color:"black",bold:!0})}function Ur(e,t={color:"black"}){const i={color:t.color};return t.strikeThrough&&(i["text-decoration"]="line-through"),t.bold&&(i["font-weight"]="bold"),{text:e,style:Object.entries(n).reduce(((e,[t,i])=>`${e}${t}:${i};`),"")};var n}function jr(e,t){switch(typeof e){case"number":default:return""+e;case"string":return e.length+2<=t?`"${e}"`:`"${e.substr(0,t-7)}"+...`;case"boolean":return e?"true":"false";case"undefined":return"undefined";case"object":return null===e?"null":Array.isArray(e)?function(e,t){let i="[ ",n=!0;for(const o of e){if(n||(i+=", "),i.length-5>t){i+="...";break}n=!1,i+=`${jr(o,t-i.length)}`}return i+=" ]",i}(e,t):function(e,t){if("function"==typeof e.toString&&e.toString!==Object.prototype.toString){const i=e.toString();return i.length<=t?i:i.substring(0,t-3)+"..."}const i=Qo(e);let n=i?i+"(":"{ ",o=!0;for(const[i,s]of Object.entries(e)){if(o||(n+=", "),n.length-5>t){n+="...";break}o=!1,n+=`${i}: ${jr(s,t-n.length)}`}return n+=i?")":" }",n}(e,t);case"symbol":return e.toString();case"function":return`[[Function${e.name?" "+e.name:""}]]`}}function Kr(e,t){let i="";for(let e=1;e<=t;e++)0;return i}class qr{static createClient(e,t){return new qr(e,t)}constructor(e,t){this._channelFactory=e,this._getHandler=t,this._channel=this._channelFactory({handleNotification:e=>{const t=e,i=this._getHandler().notifications[t[0]];if(!i)throw new Error(`Unknown notification "${t[0]}"!`);i(...t[1])},handleRequest:e=>{const t=e;try{return{type:"result",value:this._getHandler().requests[t[0]](...t[1])}}catch(e){return{type:"error",value:e}}}});const i=new Proxy({},{get:(e,t)=>async(...e)=>{const i=await this._channel.sendRequest([t,e]);if("error"===i.type)throw i.value;return i.value}}),n=new Proxy({},{get:(e,t)=>(...e)=>{this._channel.sendNotification([t,e])}});this.api={notifications:n,requests:i}}}class $r{constructor(){this._timeout=void 0}throttle(e,t){void 0===this._timeout&&(this._timeout=setTimeout((()=>{this._timeout=void 0,e()}),t))}dispose(){void 0!==this._timeout&&clearTimeout(this._timeout)}}function Gr(e,t){for(const i in t)e[i]&&"object"==typeof e[i]&&t[i]&&"object"==typeof t[i]?Gr(e[i],t[i]):e[i]=t[i]}function Yr(e,t){for(const i in t)null===t[i]?delete e[i]:e[i]&&"object"==typeof e[i]&&t[i]&&"object"==typeof t[i]?Yr(e[i],t[i]):e[i]=t[i]}class Zr{static{this._instance=void 0}static getInstance(){return void 0===Zr._instance&&(Zr._instance=new Zr),Zr._instance}getTransactionState(){const e=[],t=[...this._activeTransactions];if(0===t.length)return;const i=t.flatMap((e=>e.debugGetUpdatingObservers()??[])).map((e=>e.observer)),n=new Set;for(;i.length>0;){const t=i.shift();if(n.has(t))continue;n.add(t);const o=this._getInfo(t,(e=>{n.has(e)||i.push(e)}));o&&e.push(o)}return{names:t.map((e=>e.getDebugName()??"tx")),affected:e}}_getObservableInfo(e){const t=this._instanceInfos.get(e);if(t)return t;De(new We("No info found"))}_getAutorunInfo(e){const t=this._instanceInfos.get(e);if(t)return t;De(new We("No info found"))}_getInfo(e,t){if(e instanceof hr){const i=[...e.debugGetObservers()];for(const e of i)t(e);const n=this._getObservableInfo(e);if(!n)return;const o=e.debugGetState(),s={name:e.debugName,instanceId:n.instanceId,updateCount:o.updateCount},r=[...n.changedObservables].map((e=>this._instanceInfos.get(e)?.instanceId)).filter(pt);if(o.isComputing)return{...s,type:"observable/derived",state:"updating",changedDependencies:r,initialComputation:!1};switch(o.state){case 0:return{...s,type:"observable/derived",state:"noValue"};case 3:return{...s,type:"observable/derived",state:"upToDate"};case 2:return{...s,type:"observable/derived",state:"stale",changedDependencies:r};case 1:return{...s,type:"observable/derived",state:"possiblyStale"}}}else if(e instanceof sr){const t=this._getAutorunInfo(e);if(!t)return;const i={name:e.debugName,instanceId:t.instanceId,updateCount:t.updateCount},n=[...t.changedObservables].map((e=>this._instanceInfos.get(e).instanceId));if(e.debugGetState().isRunning)return{...i,type:"autorun",state:"updating",changedDependencies:n};switch(e.debugGetState().state){case 3:return{...i,type:"autorun",state:"upToDate"};case 2:return{...i,type:"autorun",state:"stale",changedDependencies:n};case 1:return{...i,type:"autorun",state:"possiblyStale"}}}}_formatObservable(e){const t=this._getObservableInfo(e);if(t)return{name:e.debugName,instanceId:t.instanceId}}_formatObserver(e){if(e instanceof hr)return{name:e.toString(),instanceId:this._getObservableInfo(e)?.instanceId};const t=this._getAutorunInfo(e);return t?{name:e.toString(),instanceId:t.instanceId}:void 0}constructor(){this._declarationId=0,this._instanceId=0,this._declarations=new Map,this._instanceInfos=new WeakMap,this._aliveInstances=new Map,this._activeTransactions=new Set,this._channel=function(e,t){const i=globalThis;let n,o=[];const{channel:s,handler:r}=function(e){let t;return{channel:i=>(t=i,{sendNotification:t=>{e.sendNotification(t)},sendRequest:e=>{throw new Error("not supported")}}),handler:{handleRequest:e=>"notification"===e.type?t?.handleNotification(e.data):t?.handleRequest(e.data)}}}({sendNotification:e=>{n?n.sendNotification(e):o.push(e)}});let a;return(i.$$debugValueEditor_debugChannels??(i.$$debugValueEditor_debugChannels={}))[e]=e=>{a=t(),n=e;for(const t of o)e.sendNotification(t);return o=[],r},qr.createClient(s,(()=>{if(!a)throw new Error("Not supported");return a}))}("observableDevTools",(()=>({notifications:{setDeclarationIdFilter:e=>{},logObservableValue:e=>{console.log("logObservableValue",e)},flushUpdates:()=>{this._flushUpdates()},resetUpdates:()=>{this._pendingChanges=null,this._channel.api.notifications.handleChange(this._fullState,!0)}},requests:{getDeclarations:()=>{const e={};for(const t of this._declarations.values())e[t.id]=t;return{decls:e}},getSummarizedInstances:()=>null,getObservableValueInfo:e=>({observers:[...this._aliveInstances.get(e).debugGetObservers()].map((e=>this._formatObserver(e))).filter(pt)}),getDerivedInfo:e=>{const t=this._aliveInstances.get(e);return{dependencies:[...t.debugGetState().dependencies].map((e=>this._formatObservable(e))).filter(pt),observers:[...t.debugGetObservers()].map((e=>this._formatObserver(e))).filter(pt)}},getAutorunInfo:e=>({dependencies:[...this._aliveInstances.get(e).debugGetState().dependencies].map((e=>this._formatObservable(e))).filter(pt)}),getTransactionState:()=>this.getTransactionState(),setValue:(e,t)=>{const i=this._aliveInstances.get(e);if(i instanceof hr)i.debugSetValue(t);else if(i instanceof Js)i.debugSetValue(t);else{if(!(i instanceof xr))throw new We("Observable is not supported");i.debugSetValue(t)}const n=[...i.debugGetObservers()];for(const e of n)e.beginUpdate(i);for(const e of n)e.handleChange(i,void 0);for(const e of n)e.endUpdate(i)},getValue:e=>{const t=this._aliveInstances.get(e);return t instanceof hr||t instanceof Js?jr(t.debugGetState().value,200):void 0},logValue:e=>{const t=this._aliveInstances.get(e);if(!t||!("get"in t))throw new We("Observable is not supported");console.log("Logged Value:",t.get())},rerun:e=>{const t=this._aliveInstances.get(e);if(t instanceof hr)t.debugRecompute();else{if(!(t instanceof sr))throw new We("Observable is not supported");t.debugRerun()}}}}))),this._pendingChanges=null,this._changeThrottler=new $r,this._fullState={},this._flushUpdates=()=>{null!==this._pendingChanges&&(this._channel.api.notifications.handleChange(this._pendingChanges,!1),this._pendingChanges=null)},Us.enable()}_handleChange(e){Yr(this._fullState,e),null===this._pendingChanges?this._pendingChanges=e:Gr(this._pendingChanges,e),this._changeThrottler.throttle(this._flushUpdates,10)}_getDeclarationId(e,t){if(!t)return-1;let i=this._declarations.get(t.id);return void 0===i&&(i={id:this._declarationId++,type:e,url:t.fileName,line:t.line,column:t.column},this._declarations.set(t.id,i),this._handleChange({decls:{[i.id]:i}})),i.id}handleObservableCreated(e,t){const i={declarationId:this._getDeclarationId("observable/value",t),instanceId:this._instanceId++,listenerCount:0,lastValue:void 0,updateCount:0,changedObservables:new Set};this._instanceInfos.set(e,i)}handleOnListenerCountChanged(e,t){const i=this._getObservableInfo(e);if(i){if(0===i.listenerCount&&t>0){const t=e instanceof hr?"observable/derived":"observable/value";this._aliveInstances.set(i.instanceId,e),this._handleChange({instances:{[i.instanceId]:{instanceId:i.instanceId,declarationId:i.declarationId,formattedValue:i.lastValue,type:t,name:e.debugName}}})}else i.listenerCount>0&&0===t&&(this._handleChange({instances:{[i.instanceId]:null}}),this._aliveInstances.delete(i.instanceId));i.listenerCount=t}}handleObservableUpdated(e,t){if(e instanceof hr)return void this._handleDerivedRecomputed(e,t);const i=this._getObservableInfo(e);i&&t.didChange&&(i.lastValue=jr(t.newValue,30),i.listenerCount>0&&this._handleChange({instances:{[i.instanceId]:{formattedValue:i.lastValue}}}))}handleAutorunCreated(e,t){const i={declarationId:this._getDeclarationId("autorun",t),instanceId:this._instanceId++,updateCount:0,changedObservables:new Set};this._instanceInfos.set(e,i),this._aliveInstances.set(i.instanceId,e),i&&this._handleChange({instances:{[i.instanceId]:{instanceId:i.instanceId,declarationId:i.declarationId,runCount:0,type:"autorun",name:e.debugName}}})}handleAutorunDisposed(e){const t=this._getAutorunInfo(e);t&&(this._handleChange({instances:{[t.instanceId]:null}}),this._instanceInfos.delete(e),this._aliveInstances.delete(t.instanceId))}handleAutorunDependencyChanged(e,t,i){const n=this._getAutorunInfo(e);n&&n.changedObservables.add(t)}handleAutorunStarted(e){}handleAutorunFinished(e){const t=this._getAutorunInfo(e);t&&(t.changedObservables.clear(),t.updateCount++,this._handleChange({instances:{[t.instanceId]:{runCount:t.updateCount}}}))}handleDerivedDependencyChanged(e,t,i){const n=this._getObservableInfo(e);n&&n.changedObservables.add(t)}_handleDerivedRecomputed(e,t){const i=this._getObservableInfo(e);if(!i)return;const n=jr(t.newValue,30);i.updateCount++,i.changedObservables.clear(),i.lastValue=n,i.listenerCount>0&&this._handleChange({instances:{[i.instanceId]:{formattedValue:n,recomputationCount:i.updateCount}}})}handleDerivedCleared(e){const t=this._getObservableInfo(e);t&&(t.lastValue=void 0,t.changedObservables.clear(),t.listenerCount>0&&this._handleChange({instances:{[t.instanceId]:{formattedValue:void 0}}}))}handleBeginTransaction(e){this._activeTransactions.add(e)}handleEndTransaction(e){this._activeTransactions.delete(e)}}function Qr(e,t,i){const n="\t\t".repeat(t),o=[];if(i.has(e.sourceObj))return o.push(`${n}* ${e.type} ${e.name} (already listed)`),o.join("\n");if(i.add(e.sourceObj),o.push(`${n}* ${e.type} ${e.name}:`),o.push(`${n} value: ${jr(e.value,50)}`),o.push(`${n} state: ${e.state}`),e.dependencies.length>0){o.push(`${n} dependencies:`);for(const n of e.dependencies)o.push(Qr(n,t+1,i))}return o.join("\n")}class Xr{static from(e,t){if(e instanceof sr){const i=e.debugGetState();return new Xr(e,t(e.debugName),"autorun",void 0,i.stateStr,Array.from(i.dependencies).map((e=>Xr.from(e,t)||Xr.unknown(e))))}if(e instanceof hr){const i=e.debugGetState();return new Xr(e,t(e.debugName),"derived",i.value,i.stateStr,Array.from(i.dependencies).map((e=>Xr.from(e,t)||Xr.unknown(e))))}if(e instanceof Js){const i=e.debugGetState();return new Xr(e,t(e.debugName),"observableValue",i.value,"upToDate",[])}if(e instanceof xr){const i=e.debugGetState();return new Xr(e,t(e.debugName),"fromEvent",i.value,i.hasValue?"upToDate":"initial",[])}}static unknown(e){return new Xr(e,"(unknown)","unknown",void 0,"unknown",[])}constructor(e,t,i,n,o,s){this.sourceObj=e,this.name=t,this.type=i,this.value=n,this.state=o,this.dependencies=s}}Gs=function(e,t){const i=t?.debugNamePostProcessor??(e=>e),n=Xr.from(e,i);return n?Qr(n,0,new Set).trim():""},An&&An.VSCODE_DEV_DEBUG_OBSERVABLES&&As(Zr.getInstance());const{registerWindow:Jr,getWindow:ea,getDocument:ta,getWindows:ia,getWindowsCount:na,getWindowId:oa,getWindowById:sa,hasWindow:ra,onDidRegisterWindow:aa,onWillUnregisterWindow:la,onDidUnregisterWindow:da}=function(){const e=new Map;!function(e){const t=e;"number"!=typeof t.vscodeWindowId&&Object.defineProperty(t,"vscodeWindowId",{get:()=>1})}(s);const t={window:s,disposables:new Mt};e.set(s.vscodeWindowId,t);const i=new Gt,n=new Gt,o=new Gt;return{onDidRegisterWindow:i.event,onWillUnregisterWindow:o.event,onDidUnregisterWindow:n.event,registerWindow(t){if(e.has(t.vscodeWindowId))return Tt.None;const s=new Mt,r={window:t,disposables:s.add(new Mt)};return e.set(t.vscodeWindowId,r),s.add(Nt((()=>{e.delete(t.vscodeWindowId),n.fire(t)}))),s.add(ua(t,Za.BEFORE_UNLOAD,(()=>{o.fire(t)}))),i.fire(r),s},getWindows:()=>e.values(),getWindowsCount:()=>e.size,getWindowId:e=>e.vscodeWindowId,hasWindow:t=>e.has(t),getWindowById:function(i,n){return("number"==typeof i?e.get(i):void 0)??(n?t:void 0)},getWindow(e){const t=e;if(t?.ownerDocument?.defaultView)return t.ownerDocument.defaultView.window;const i=e;return i?.view?i.view.window:s},getDocument:e=>ea(e).document}}();function ca(e){for(;e.firstChild;)e.firstChild.remove()}class ha{constructor(e,t,i,n){this._node=e,this._type=t,this._handler=i,this._options=n||!1,this._node.addEventListener(this._type,this._handler,this._options)}dispose(){this._handler&&(this._node.removeEventListener(this._type,this._handler,this._options),this._node=null,this._handler=null)}}function ua(e,t,i,n){return new ha(e,t,i,n)}function ga(e,t){return function(i){return t(new Xe(e,i))}}const pa=function(e,t,i,n){let o=i;return"click"===t||"mousedown"===t||"contextmenu"===t?o=ga(ea(e),i):"keydown"!==t&&"keypress"!==t&&"keyup"!==t||(o=function(e){return function(t){return e(new Ge(t))}}(i)),ua(e,t,o,n)};function ma(e,t,i){return ua(e,Q&&ge?Za.POINTER_DOWN:Za.MOUSE_DOWN,t,i)}function fa(e,t,i){return ua(e,Q&&ge?Za.POINTER_UP:Za.MOUSE_UP,t,i)}function _a(e,t,i){return yi(e,t,i)}class va extends Si{constructor(e,t){super(e,t)}}let ba,wa;class Ca extends bi{constructor(e){super(),this.defaultTarget=e&&ea(e)}cancelAndSet(e,t,i){return super.cancelAndSet(e,t,i??this.defaultTarget)}}class ya{constructor(e,t=0){this._runner=e,this.priority=t,this._canceled=!1}dispose(){this._canceled=!0}execute(){if(!this._canceled)try{this._runner()}catch(e){De(e)}}static sort(e,t){return t.priority-e.priority}}function Sa(e){return ea(e).getComputedStyle(e,null)}function xa(e,t,i){const n=ea(e),o=n.document;if(e!==o.body)return new La(e.clientWidth,e.clientHeight);if(Q&&n?.visualViewport)return new La(n.visualViewport.width,n.visualViewport.height);if(n?.innerWidth&&n.innerHeight)return new La(n.innerWidth,n.innerHeight);if(o.body&&o.body.clientWidth&&o.body.clientHeight)return new La(o.body.clientWidth,o.body.clientHeight);if(o.documentElement&&o.documentElement.clientWidth&&o.documentElement.clientHeight)return new La(o.documentElement.clientWidth,o.documentElement.clientHeight);if(i)return xa(i,t);if(t)return t;throw new Error("Unable to figure out browser width and height")}!function(){const e=new Map,t=new Map,i=new Map,n=new Map;wa=(o,s,r=0)=>{const a=oa(o),l=new ya(s,r);let d=e.get(a);return d||(d=[],e.set(a,d)),d.push(l),i.get(a)||(i.set(a,!0),o.requestAnimationFrame((()=>(o=>{i.set(o,!1);const s=e.get(o)??[];for(t.set(o,s),e.set(o,[]),n.set(o,!0);s.length>0;)s.sort(ya.sort),s.shift().execute();n.set(o,!1)})(a)))),l},ba=(e,i,o)=>{const s=oa(e);if(n.get(s)){const e=new ya(i,o);let n=t.get(s);return n||(n=[],t.set(s,n)),n.push(e),e}return wa(e,i,o)}}();class ka{static convertToPixels(e,t){return parseFloat(t)||0}static getDimension(e,t){const i=Sa(e),n=i?i.getPropertyValue(t):"0";return ka.convertToPixels(e,n)}static getBorderLeftWidth(e){return ka.getDimension(e,"border-left-width")}static getBorderRightWidth(e){return ka.getDimension(e,"border-right-width")}static getBorderTopWidth(e){return ka.getDimension(e,"border-top-width")}static getBorderBottomWidth(e){return ka.getDimension(e,"border-bottom-width")}static getPaddingLeft(e){return ka.getDimension(e,"padding-left")}static getPaddingRight(e){return ka.getDimension(e,"padding-right")}static getPaddingTop(e){return ka.getDimension(e,"padding-top")}static getPaddingBottom(e){return ka.getDimension(e,"padding-bottom")}static getMarginLeft(e){return ka.getDimension(e,"margin-left")}static getMarginTop(e){return ka.getDimension(e,"margin-top")}static getMarginRight(e){return ka.getDimension(e,"margin-right")}static getMarginBottom(e){return ka.getDimension(e,"margin-bottom")}}class La{static{this.None=new La(0,0)}constructor(e,t){this.width=e,this.height=t}with(e=this.width,t=this.height){return e!==this.width||t!==this.height?new La(e,t):this}static is(e){return"object"==typeof e&&"number"==typeof e.height&&"number"==typeof e.width}static lift(e){return e instanceof La?e:new La(e.width,e.height)}static equals(e,t){return e===t||!(!e||!t)&&e.width===t.width&&e.height===t.height}}function Ea(e){let t=e.offsetParent,i=e.offsetTop,n=e.offsetLeft;for(;null!==(e=e.parentNode)&&e!==e.ownerDocument.body&&e!==e.ownerDocument.documentElement;){i-=e.scrollTop;const o=Pa(e)?null:Sa(e);o&&(n-="rtl"!==o.direction?e.scrollLeft:-e.scrollLeft),e===t&&(n+=ka.getBorderLeftWidth(e),i+=ka.getBorderTopWidth(e),i+=e.offsetTop,n+=e.offsetLeft,t=e.offsetParent)}return{left:n,top:i}}function Ia(e){const t=e.getBoundingClientRect(),i=ea(e);return{left:t.left+i.scrollX,top:t.top+i.scrollY,width:t.width,height:t.height}}function Da(e){let t=e,i=1;do{const e=Sa(t).zoom;null!=e&&"1"!==e&&(i*=e),t=t.parentElement}while(null!==t&&t!==t.ownerDocument.documentElement);return i}function Na(e){const t=ka.getMarginLeft(e)+ka.getMarginRight(e);return e.offsetWidth+t}function Ma(e){const t=ka.getBorderLeftWidth(e)+ka.getBorderRightWidth(e),i=ka.getPaddingLeft(e)+ka.getPaddingRight(e);return e.offsetWidth-t-i}function Ta(e){const t=ka.getBorderTopWidth(e)+ka.getBorderBottomWidth(e),i=ka.getPaddingTop(e)+ka.getPaddingBottom(e);return e.offsetHeight-t-i}function Ra(e){const t=ka.getMarginTop(e)+ka.getMarginBottom(e);return e.offsetHeight+t}function Aa(e,t){return Boolean(t?.contains(e))}function Oa(e,t,i){return!!function(e,t,i){for(;e&&e.nodeType===e.ELEMENT_NODE;){if(e.classList.contains(t))return e;if(i)if("string"==typeof i){if(e.classList.contains(i))return null}else if(e===i)return null;e=e.parentNode}return null}(e,t,i)}function Pa(e){return e&&!!e.host&&!!e.mode}function Fa(e){return!!Ba(e)}function Ba(e){for(;e.parentNode;){if(e===e.ownerDocument?.body)return null;e=e.parentNode}return Pa(e)?e:null}function Wa(){let e=za().activeElement;for(;e?.shadowRoot;)e=e.shadowRoot.activeElement;return e}function Ha(e){return Wa()===e}function Va(e){return Aa(Wa(),e)}function za(){return na()<=1?s.document:Array.from(ia()).map((({window:e})=>e.document)).find((e=>e.hasFocus()))??s.document}function Ua(){const e=za();return e.defaultView?.window??s}const ja=new class{constructor(){this.mutationObservers=new Map}observe(e,t,i){let n=this.mutationObservers.get(e);n||(n=new Map,this.mutationObservers.set(e,n));const o=Wo(i);let s=n.get(o);if(s)s.users+=1;else{const r=new Gt,a=new MutationObserver((e=>r.fire(e)));a.observe(e,i);const l=s={users:1,observer:a,onDidMutate:r.event};t.add(Nt((()=>{l.users-=1,0===l.users&&(r.dispose(),a.disconnect(),n?.delete(o),0===n?.size&&this.mutationObservers.delete(e))}))),n.set(o,s)}return s.onDidMutate}};function Ka(e){return e instanceof HTMLElement||e instanceof ea(e).HTMLElement}function qa(e){return e instanceof HTMLAnchorElement||e instanceof ea(e).HTMLAnchorElement}function $a(e){return e instanceof SVGElement||e instanceof ea(e).SVGElement}function Ga(e){return e instanceof MouseEvent||e instanceof ea(e).MouseEvent}function Ya(e){return e instanceof KeyboardEvent||e instanceof ea(e).KeyboardEvent}const Za={CLICK:"click",AUXCLICK:"auxclick",DBLCLICK:"dblclick",MOUSE_UP:"mouseup",MOUSE_DOWN:"mousedown",MOUSE_OVER:"mouseover",MOUSE_MOVE:"mousemove",MOUSE_OUT:"mouseout",MOUSE_ENTER:"mouseenter",MOUSE_LEAVE:"mouseleave",MOUSE_WHEEL:"wheel",POINTER_UP:"pointerup",POINTER_DOWN:"pointerdown",POINTER_MOVE:"pointermove",POINTER_LEAVE:"pointerleave",CONTEXT_MENU:"contextmenu",WHEEL:"wheel",KEY_DOWN:"keydown",KEY_PRESS:"keypress",KEY_UP:"keyup",LOAD:"load",BEFORE_UNLOAD:"beforeunload",UNLOAD:"unload",PAGE_SHOW:"pageshow",PAGE_HIDE:"pagehide",PASTE:"paste",ABORT:"abort",ERROR:"error",RESIZE:"resize",SCROLL:"scroll",FULLSCREEN_CHANGE:"fullscreenchange",WK_FULLSCREEN_CHANGE:"webkitfullscreenchange",SELECT:"select",CHANGE:"change",SUBMIT:"submit",RESET:"reset",FOCUS:"focus",FOCUS_IN:"focusin",FOCUS_OUT:"focusout",BLUR:"blur",INPUT:"input",STORAGE:"storage",DRAG_START:"dragstart",DRAG:"drag",DRAG_ENTER:"dragenter",DRAG_LEAVE:"dragleave",DRAG_OVER:"dragover",DROP:"drop",DRAG_END:"dragend",ANIMATION_START:h?"webkitAnimationStart":"animationstart",ANIMATION_END:h?"webkitAnimationEnd":"animationend",ANIMATION_ITERATION:h?"webkitAnimationIteration":"animationiteration"};function Qa(e){const t=e;return!(!t||"function"!=typeof t.preventDefault||"function"!=typeof t.stopPropagation)}const Xa=(e,t)=>(e.preventDefault(),t&&e.stopPropagation(),e);class Ja extends Tt{get onDidFocus(){return this._onDidFocus.event}get onDidBlur(){return this._onDidBlur.event}static hasFocusWithin(e){if(Ka(e)){const t=Ba(e);return Aa(t?t.activeElement:e.ownerDocument.activeElement,e)}{const t=e;return Aa(t.document.activeElement,t.document)}}constructor(e){super(),this._onDidFocus=this._register(new Gt),this._onDidBlur=this._register(new Gt);let t=Ja.hasFocusWithin(e),i=!1;const n=()=>{i=!1,t||(t=!0,this._onDidFocus.fire())},o=()=>{t&&(i=!0,(Ka(e)?ea(e):e).setTimeout((()=>{i&&(i=!1,t=!1,this._onDidBlur.fire())}),0))};this._refreshStateHandler=()=>{Ja.hasFocusWithin(e)!==t&&(t?o():n())},this._register(ua(e,Za.FOCUS,n,!0)),this._register(ua(e,Za.BLUR,o,!0)),Ka(e)&&(this._register(ua(e,Za.FOCUS_IN,(()=>this._refreshStateHandler()))),this._register(ua(e,Za.FOCUS_OUT,(()=>this._refreshStateHandler()))))}}function el(e){return new Ja(e)}function tl(e,...t){if(e.append(...t),1===t.length&&"string"!=typeof t[0])return t[0]}function il(e,t){return e.insertBefore(t,e.firstChild),t}function nl(e,...t){e.textContent="",tl(e,...t)}const ol=/([\w\-]+)?(#([\w\-]+))?((\.([\w\-]+))*)/;var sl;function rl(e,t,i,...n){const o=ol.exec(t);if(!o)throw new Error("Bad use of emmet");const s=o[1]||"div";let r;return r=e!==sl.HTML?document.createElementNS(e,s):document.createElement(s),o[3]&&(r.id=o[3]),o[4]&&(r.className=o[4].replace(/\./g," ").trim()),i&&Object.entries(i).forEach((([e,t])=>{void 0!==t&&(/^on\w+$/.test(e)?r[e]=t:"selected"===e?t&&r.setAttribute(e,"true"):r.setAttribute(e,t))})),r.append(...n),r}function al(e,t,...i){return rl(sl.HTML,e,t,...i)}function ll(...e){for(const t of e)t.style.display="",t.removeAttribute("aria-hidden")}function dl(...e){for(const t of e)t.style.display="none",t.setAttribute("aria-hidden","true")}function cl(e,t){const i=e.devicePixelRatio*t;return Math.max(1,Math.floor(i))/e.devicePixelRatio}function hl(e){s.open(e,"_blank","noopener")}!function(e){e.HTML="http://www.w3.org/1999/xhtml",e.SVG="http://www.w3.org/2000/svg"}(sl||(sl={})),al.SVG=function(e,t,...i){return rl(sl.SVG,e,t,...i)},ko.setPreferredWebSchema(/^https:/.test(s.location.href)?"https":"http");class ul extends Gt{constructor(){super(),this._subscriptions=new Mt,this._keyStatus={altKey:!1,shiftKey:!1,ctrlKey:!1,metaKey:!1},this._subscriptions.add(Vt.runAndSubscribe(aa,(({window:e,disposables:t})=>this.registerListeners(e,t)),{window:s,disposables:this._subscriptions}))}registerListeners(e,t){t.add(ua(e,"keydown",(e=>{if(e.defaultPrevented)return;const t=new Ge(e);if(6!==t.keyCode||!e.repeat){if(e.altKey&&!this._keyStatus.altKey)this._keyStatus.lastKeyPressed="alt";else if(e.ctrlKey&&!this._keyStatus.ctrlKey)this._keyStatus.lastKeyPressed="ctrl";else if(e.metaKey&&!this._keyStatus.metaKey)this._keyStatus.lastKeyPressed="meta";else if(e.shiftKey&&!this._keyStatus.shiftKey)this._keyStatus.lastKeyPressed="shift";else{if(6===t.keyCode)return;this._keyStatus.lastKeyPressed=void 0}this._keyStatus.altKey=e.altKey,this._keyStatus.ctrlKey=e.ctrlKey,this._keyStatus.metaKey=e.metaKey,this._keyStatus.shiftKey=e.shiftKey,this._keyStatus.lastKeyPressed&&(this._keyStatus.event=e,this.fire(this._keyStatus))}}),!0)),t.add(ua(e,"keyup",(e=>{e.defaultPrevented||(!e.altKey&&this._keyStatus.altKey?this._keyStatus.lastKeyReleased="alt":!e.ctrlKey&&this._keyStatus.ctrlKey?this._keyStatus.lastKeyReleased="ctrl":!e.metaKey&&this._keyStatus.metaKey?this._keyStatus.lastKeyReleased="meta":!e.shiftKey&&this._keyStatus.shiftKey?this._keyStatus.lastKeyReleased="shift":this._keyStatus.lastKeyReleased=void 0,this._keyStatus.lastKeyPressed!==this._keyStatus.lastKeyReleased&&(this._keyStatus.lastKeyPressed=void 0),this._keyStatus.altKey=e.altKey,this._keyStatus.ctrlKey=e.ctrlKey,this._keyStatus.metaKey=e.metaKey,this._keyStatus.shiftKey=e.shiftKey,this._keyStatus.lastKeyReleased&&(this._keyStatus.event=e,this.fire(this._keyStatus)))}),!0)),t.add(ua(e.document.body,"mousedown",(()=>{this._keyStatus.lastKeyPressed=void 0}),!0)),t.add(ua(e.document.body,"mouseup",(()=>{this._keyStatus.lastKeyPressed=void 0}),!0)),t.add(ua(e.document.body,"mousemove",(e=>{e.buttons&&(this._keyStatus.lastKeyPressed=void 0)}),!0)),t.add(ua(e,"blur",(()=>{this.resetKeyStatus()})))}get keyStatus(){return this._keyStatus}resetKeyStatus(){this.doResetKeyStatus(),this.fire(this._keyStatus)}doResetKeyStatus(){this._keyStatus={altKey:!1,shiftKey:!1,ctrlKey:!1,metaKey:!1}}static getInstance(){return ul.instance||(ul.instance=new ul),ul.instance}dispose(){super.dispose(),this._subscriptions.dispose()}}class gl extends Tt{constructor(e,t){super(),this.element=e,this.callbacks=t,this.counter=0,this.dragStartTime=0,this.registerListeners()}registerListeners(){this.callbacks.onDragStart&&this._register(ua(this.element,Za.DRAG_START,(e=>{this.callbacks.onDragStart?.(e)}))),this.callbacks.onDrag&&this._register(ua(this.element,Za.DRAG,(e=>{this.callbacks.onDrag?.(e)}))),this._register(ua(this.element,Za.DRAG_ENTER,(e=>{this.counter++,this.dragStartTime=e.timeStamp,this.callbacks.onDragEnter?.(e)}))),this._register(ua(this.element,Za.DRAG_OVER,(e=>{e.preventDefault(),this.callbacks.onDragOver?.(e,e.timeStamp-this.dragStartTime)}))),this._register(ua(this.element,Za.DRAG_LEAVE,(e=>{this.counter--,0===this.counter&&(this.dragStartTime=0,this.callbacks.onDragLeave?.(e))}))),this._register(ua(this.element,Za.DRAG_END,(e=>{this.counter=0,this.dragStartTime=0,this.callbacks.onDragEnd?.(e)}))),this._register(ua(this.element,Za.DROP,(e=>{this.counter=0,this.dragStartTime=0,this.callbacks.onDrop?.(e)})))}}const pl=/(?[\w\-]+)?(?:#(?[\w\-]+))?(?(?:\.(?:[\w\-]+))*)(?:@(?(?:[\w\_])+))?/;function ml(e,...t){let i,n;Array.isArray(t[0])?(i={},n=t[0]):(i=t[0]||{},n=t[1]);const o=pl.exec(e);if(!o||!o.groups)throw new Error("Bad use of h");const s=o.groups.tag||"div",r=document.createElement(s);o.groups.id&&(r.id=o.groups.id);const a=[];if(o.groups.class)for(const e of o.groups.class.split("."))""!==e&&a.push(e);if(void 0!==i.className)for(const e of i.className.split("."))""!==e&&a.push(e);a.length>0&&(r.className=a.join(" "));const l={};if(o.groups.name&&(l[o.groups.name]=r),n)for(const e of n)Ka(e)?r.appendChild(e):"string"==typeof e?r.append(e):"root"in e&&(Object.assign(l,e),r.appendChild(e.root));for(const[e,t]of Object.entries(i))if("className"!==e)if("style"===e)for(const[e,i]of Object.entries(t))r.style.setProperty(fl(e),"number"==typeof i?i+"px":""+i);else"tabIndex"===e?r.tabIndex=t:r.setAttribute(fl(e),t.toString());return l.root=r,l}function fl(e){return e.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function _l(e){return"input"===e.tagName.toLowerCase()||"textarea"===e.tagName.toLowerCase()||Ka(e)&&!!e.editContext}var vl;!function(e){function t(e=void 0){return(t,i,n)=>{const o=i.class;delete i.class;const s=i.ref;delete i.ref;const r=i.obsRef;return delete i.obsRef,new El(t,s,r,e,o,i,n)}}function i(e,i=void 0){const n=t(i);return(t,i)=>n(e,t,i)}e.div=i("div"),e.elem=t(void 0),e.svg=i("svg","http://www.w3.org/2000/svg"),e.svgElem=t("http://www.w3.org/2000/svg"),e.ref=function(){let e;const t=function(t){e=t};return Object.defineProperty(t,"element",{get(){if(!e)throw new We("Make sure the ref is set before accessing the element. Maybe wrong initialization order?");return e}}),t}}(vl||(vl={}));class bl{constructor(e,t,i,n,o,s,r){this._deriveds=[],this._element=n?document.createElementNS(n,e):document.createElement(e),t&&t(this._element),i&&this._deriveds.push(gr((e=>{i(this),e.store.add({dispose:()=>{i(null)}})}))),o&&(Sl(o)?this._deriveds.push(gr(this,(e=>{wl(this._element,yl(o,e))}))):wl(this._element,yl(o,void 0)));for(const[a,l]of Object.entries(s))if("style"===a)for(const[d,c]of Object.entries(l)){const h=fl(d);Dl(c)?this._deriveds.push(mr({owner:this,debugName:()=>`set.style.${h}`},(e=>{this._element.style.setProperty(h,xl(c.read(e)))}))):this._element.style.setProperty(h,xl(c))}else"tabIndex"===a?Dl(l)?this._deriveds.push(gr(this,(e=>{this._element.tabIndex=l.read(e)}))):this._element.tabIndex=l:a.startsWith("on")?this._element[a]=l:Dl(l)?this._deriveds.push(mr({owner:this,debugName:()=>`set.${a}`},(e=>{Il(this._element,a,l.read(e))}))):Il(this._element,a,l);if(r){function u(e,t){return Dl(t)?u(e,t.read(e)):Array.isArray(t)?t.flatMap((t=>u(e,t))):t instanceof bl?(e&&t.readEffect(e),[t._element]):t?[t]:[]}const g=gr(this,(e=>{this._element.replaceChildren(...u(e,r))}));this._deriveds.push(g),kl(r)||g.get()}}readEffect(e){for(const t of this._deriveds)t.read(e)}keepUpdated(e){return gr((e=>{this.readEffect(e)})).recomputeInitiallyAndOnChange(e),this}toDisposableLiveElement(){const e=new Mt;return this.keepUpdated(e),new Ll(this._element,e)}}function wl(e,t){$a(e)?e.setAttribute("class",t):e.className=t}function Cl(e,t,i){if(Dl(e))i(e.read(t));else if(Array.isArray(e))for(const n of e)Cl(n,t,i);else i(e)}function yl(e,t){let i="";return Cl(e,t,(e=>{e&&(0===i.length?i=e:i+=" "+e)})),i}function Sl(e){return!!Dl(e)||!!Array.isArray(e)&&e.some((e=>Sl(e)))}function xl(e){return"number"==typeof e?e+"px":e}function kl(e){return!!Dl(e)||!!Array.isArray(e)&&e.some((e=>kl(e)))}class Ll{constructor(e,t){this.element=e,this._disposable=t}dispose(){this._disposable.dispose()}}class El extends bl{constructor(){super(...arguments),this._isHovered=void 0,this._didMouseMoveDuringHover=void 0}get element(){return this._element}get isHovered(){if(!this._isHovered){const e=Xs("hovered",!1);this._element.addEventListener("mouseenter",(t=>e.set(!0,void 0))),this._element.addEventListener("mouseleave",(t=>e.set(!1,void 0))),this._isHovered=e}return this._isHovered}get didMouseMoveDuringHover(){if(!this._didMouseMoveDuringHover){let e=!1;const t=Xs("didMouseMoveDuringHover",!1);this._element.addEventListener("mouseenter",(t=>{e=!0})),this._element.addEventListener("mousemove",(i=>{e&&t.set(!0,void 0)})),this._element.addEventListener("mouseleave",(i=>{e=!1,t.set(!1,void 0)})),this._didMouseMoveDuringHover=t}return this._didMouseMoveDuringHover}}function Il(e,t,i){null==i?e.removeAttribute(fl(t)):e.setAttribute(fl(t),String(i))}function Dl(e){return!!e&&void 0!==e.read&&void 0!==e.reportChanges}var Nl=i(5072),Ml=i.n(Nl),Tl=i(7825),Rl=i.n(Tl),Al=i(7659),Ol=i.n(Al),Pl=i(5056),Fl=i.n(Pl),Bl=i(540),Wl=i.n(Bl),Hl=i(1113),Vl=i.n(Hl),zl=i(5038),Ul={};let jl,Kl,ql,$l,Gl;function Yl(e){jl&&(Kl.textContent!==e?(ca(ql),Ql(Kl,e)):(ca(Kl),Ql(ql,e)))}function Zl(e){jl&&($l.textContent!==e?(ca(Gl),Ql($l,e)):(ca($l),Ql(Gl,e)))}function Ql(e,t){ca(e),t.length>2e4&&(t=t.substr(0,2e4)),e.textContent=t,e.style.visibility="hidden",e.style.visibility="visible"}var Xl,Jl,ed;Ul.styleTagTransform=Vl(),Ul.setAttributes=Fl(),Ul.insert=Ol().bind(null,"head"),Ul.domAPI=Rl(),Ul.insertStyleElement=Wl(),Ml()(zl.A,Ul),zl.A&&zl.A.locals&&zl.A.locals;class td{constructor(e,t){this.uri=e,this.value=t}}class id{static{this.defaultToKey=e=>e.toString()}constructor(e,t){if(this[Xl]="ResourceMap",e instanceof id)this.map=new Map(e.map),this.toKey=t??id.defaultToKey;else if(function(e){return Array.isArray(e)}(e)){this.map=new Map,this.toKey=t??id.defaultToKey;for(const[t,i]of e)this.set(t,i)}else this.map=new Map,this.toKey=e??id.defaultToKey}set(e,t){return this.map.set(this.toKey(e),new td(e,t)),this}get(e){return this.map.get(this.toKey(e))?.value}has(e){return this.map.has(this.toKey(e))}get size(){return this.map.size}clear(){this.map.clear()}delete(e){return this.map.delete(this.toKey(e))}forEach(e,t){void 0!==t&&(e=e.bind(t));for(const[t,i]of this.map)e(i.value,i.uri,this)}*values(){for(const e of this.map.values())yield e.value}*keys(){for(const e of this.map.values())yield e.uri}*entries(){for(const e of this.map.values())yield[e.uri,e.value]}*[(Xl=Symbol.toStringTag,Symbol.iterator)](){for(const[,e]of this.map)yield[e.uri,e.value]}}class nd{constructor(e,t){this[Jl]="ResourceSet",e&&"function"!=typeof e?(this._map=new id(t),e.forEach(this.add,this)):this._map=new id(e)}get size(){return this._map.size}add(e){return this._map.set(e,e),this}clear(){this._map.clear()}delete(e){return this._map.delete(e)}forEach(e,t){this._map.forEach(((i,n)=>e.call(t,n,n,this)))}has(e){return this._map.has(e)}entries(){return this._map.entries()}keys(){return this._map.keys()}values(){return this._map.keys()}[(Jl=Symbol.toStringTag,Symbol.iterator)](){return this.keys()}}class od{constructor(){this[ed]="LinkedMap",this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){return this._head?.value}get last(){return this._tail?.value}has(e){return this._map.has(e)}get(e,t=0){const i=this._map.get(e);if(i)return 0!==t&&this.touch(i,t),i.value}set(e,t,i=0){let n=this._map.get(e);if(n)n.value=t,0!==i&&this.touch(n,i);else{switch(n={key:e,value:t,next:void 0,previous:void 0},i){case 0:case 2:default:this.addItemLast(n);break;case 1:this.addItemFirst(n)}this._map.set(e,n),this._size++}return this}delete(e){return!!this.remove(e)}remove(e){const t=this._map.get(e);if(t)return this._map.delete(e),this.removeItem(t),this._size--,t.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw new Error("Invalid list");const e=this._head;return this._map.delete(e.key),this.removeItem(e),this._size--,e.value}forEach(e,t){const i=this._state;let n=this._head;for(;n;){if(t?e.bind(t)(n.value,n.key,this):e(n.value,n.key,this),this._state!==i)throw new Error("LinkedMap got modified during iteration.");n=n.next}}keys(){const e=this,t=this._state;let i=this._head;const n={[Symbol.iterator]:()=>n,next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(i){const e={value:i.key,done:!1};return i=i.next,e}return{value:void 0,done:!0}}};return n}values(){const e=this,t=this._state;let i=this._head;const n={[Symbol.iterator]:()=>n,next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(i){const e={value:i.value,done:!1};return i=i.next,e}return{value:void 0,done:!0}}};return n}entries(){const e=this,t=this._state;let i=this._head;const n={[Symbol.iterator]:()=>n,next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(i){const e={value:[i.key,i.value],done:!1};return i=i.next,e}return{value:void 0,done:!0}}};return n}[(ed=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(e){if(e>=this.size)return;if(0===e)return void this.clear();let t=this._head,i=this.size;for(;t&&i>e;)this._map.delete(t.key),t=t.next,i--;this._head=t,this._size=i,t&&(t.previous=void 0),this._state++}trimNew(e){if(e>=this.size)return;if(0===e)return void this.clear();let t=this._tail,i=this.size;for(;t&&i>e;)this._map.delete(t.key),t=t.previous,i--;this._tail=t,this._size=i,t&&(t.next=void 0),this._state++}addItemFirst(e){if(this._head||this._tail){if(!this._head)throw new Error("Invalid list");e.next=this._head,this._head.previous=e}else this._tail=e;this._head=e,this._state++}addItemLast(e){if(this._head||this._tail){if(!this._tail)throw new Error("Invalid list");e.previous=this._tail,this._tail.next=e}else this._head=e;this._tail=e,this._state++}removeItem(e){if(e===this._head&&e===this._tail)this._head=void 0,this._tail=void 0;else if(e===this._head){if(!e.next)throw new Error("Invalid list");e.next.previous=void 0,this._head=e.next}else if(e===this._tail){if(!e.previous)throw new Error("Invalid list");e.previous.next=void 0,this._tail=e.previous}else{const t=e.next,i=e.previous;if(!t||!i)throw new Error("Invalid list");t.previous=i,i.next=t}e.next=void 0,e.previous=void 0,this._state++}touch(e,t){if(!this._head||!this._tail)throw new Error("Invalid list");if(1===t||2===t)if(1===t){if(e===this._head)return;const t=e.next,i=e.previous;e===this._tail?(i.next=void 0,this._tail=i):(t.previous=i,i.next=t),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e,this._state++}else if(2===t){if(e===this._tail)return;const t=e.next,i=e.previous;e===this._head?(t.previous=void 0,this._head=t):(t.previous=i,i.next=t),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e,this._state++}}toJSON(){const e=[];return this.forEach(((t,i)=>{e.push([i,t])})),e}fromJSON(e){this.clear();for(const[t,i]of e)this.set(t,i)}}class sd extends od{constructor(e,t=1){super(),this._limit=e,this._ratio=Math.min(Math.max(0,t),1)}get limit(){return this._limit}set limit(e){this._limit=e,this.checkTrim()}get(e,t=2){return super.get(e,t)}peek(e){return super.get(e,0)}set(e,t){return super.set(e,t,2),this}checkTrim(){this.size>this._limit&&this.trim(Math.round(this._limit*this._ratio))}}class rd extends sd{constructor(e,t=1){super(e,t)}trim(e){this.trimOld(e)}set(e,t){return super.set(e,t),this.checkTrim(),this}}class ad{constructor(e){if(this._m1=new Map,this._m2=new Map,e)for(const[t,i]of e)this.set(t,i)}clear(){this._m1.clear(),this._m2.clear()}set(e,t){this._m1.set(e,t),this._m2.set(t,e)}get(e){return this._m1.get(e)}getKey(e){return this._m2.get(e)}delete(e){const t=this._m1.get(e);return void 0!==t&&(this._m1.delete(e),this._m2.delete(t),!0)}keys(){return this._m1.keys()}values(){return this._m1.values()}}class ld{constructor(){this.map=new Map}add(e,t){let i=this.map.get(e);i||(i=new Set,this.map.set(e,i)),i.add(t)}delete(e,t){const i=this.map.get(e);i&&(i.delete(t),0===i.size&&this.map.delete(e))}forEach(e,t){const i=this.map.get(e);i&&i.forEach(t)}}class dd{constructor(){this._data=new Map}set(e,...t){let i=this._data;for(let e=0;e{let n="";for(const[o,s]of t)n+=`${" ".repeat(i)}${o}: `,s instanceof Map?n+="\n"+e(s,i+1):n+=`${s}\n`;return n};return e(this._data,0)}}let cd=0;const hd=new Uint32Array(10);function ud(e,t,i){var n;e>=i&&e>8&&(hd[cd++]=n>>8&255),n>>16&&(hd[cd++]=n>>16&255)))}const gd=new Uint8Array([114,82,115,101,69,102,97,113,81,116,84,100,119,87,99,122,120,118,103]),pd=new Uint16Array([107,111,105,79,106,112,117,80,104,27496,28520,27752,121,110,27246,28782,27758,98,109,27757,108]),md=new Uint16Array([114,82,29810,115,30579,26483,101,102,29286,24934,29030,29798,30822,30310,26470,97,113,29809,116,84,100,119,99,122,120,118,103]),fd=new Uint16Array([114,82,29810,115,30579,26483,101,69,102,29286,24934,29030,29798,30822,30310,26470,97,113,81,29809,116,84,100,119,87,99,122,120,118,103,107,111,105,79,106,112,117,80,104,27496,28520,27752,121,110,27246,28782,27758,98,109,27757,108]);function _d(...e){return function(t,i){for(let n=0,o=e.length;n0?[{start:0,end:t.length}]:[]:null}function wd(e,t){const i=t.toLowerCase().indexOf(e.toLowerCase());return-1===i?null:[{start:i,end:i+e.length}]}function Cd(e,t){return yd(e.toLowerCase(),t.toLowerCase(),0,0)}function yd(e,t,i,n){if(i===e.length)return[];if(n===t.length)return null;if(e[i]===t[n]){let o=null;return(o=yd(e,t,i+1,n+1))?Rd({start:n,end:n+1},o):null}return yd(e,t,i,n+1)}function Sd(e){return 97<=e&&e<=122}function xd(e){return 65<=e&&e<=90}function kd(e){return 48<=e&&e<=57}function Ld(e){return 32===e||9===e||10===e||13===e}const Ed=new Set;function Id(e){return Ld(e)||Ed.has(e)}function Dd(e,t){return e===t||Id(e)&&Id(t)}"()[]{}<>`'\"-/;:,.?!".split("").forEach((e=>Ed.add(e.charCodeAt(0))));const Nd=new Map;function Md(e){if(Nd.has(e))return Nd.get(e);let t;const i=function(e){const t=function(e){if(cd=0,ud(e,gd,4352),cd>0)return hd.subarray(0,cd);if(ud(e,pd,4449),cd>0)return hd.subarray(0,cd);if(ud(e,md,4520),cd>0)return hd.subarray(0,cd);if(ud(e,fd,12593),cd)return hd.subarray(0,cd);if(e>=44032&&e<=55203){const t=e-44032,i=t%588,n=Math.floor(t/588),o=Math.floor(i/28),s=i%28-1;if(n=0&&(s0)return hd.subarray(0,cd)}}(e);if(t&&t.length>0)return new Uint32Array(t)}(e);return i&&(t=i),Nd.set(e,t),t}function Td(e){return Sd(e)||xd(e)||kd(e)}function Rd(e,t){return 0===t.length?t=[e]:e.end===t[0].start?t[0].start=e.start:t.unshift(e),t}function Ad(e,t){for(let i=t;i0&&!Td(e.charCodeAt(i-1)))return i}return e.length}function Od(e,t,i,n){if(i===e.length)return[];if(n===t.length)return null;if(e[i]!==t[n].toLowerCase())return null;{let o=null,s=n+1;for(o=Od(e,t,i+1,n+1);!o&&(s=Ad(t,s))60&&(t=t.substring(0,60));const i=function(e){let t=0,i=0,n=0,o=0,s=0;for(let r=0;r.2&&t<.8&&n>.6&&o<.2}(i)){if(!function(e){const{upperPercent:t,lowerPercent:i}=e;return 0===i&&t>.6}(i))return null;t=t.toLowerCase()}let n=null,o=0;for(e=e.toLowerCase();o0&&Id(e.charCodeAt(i-1)))return i;return e.length}const Hd=_d(vd,Pd,wd),Vd=_d(vd,Pd,Cd),zd=new rd(1e4);function Ud(e,t,i=!1){if("string"!=typeof e||"string"!=typeof t)return null;let n=zd.get(e);n||(n=new RegExp(e.replace(/[\-\\\{\}\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&").replace(/[\*]/g,".*"),"i"),zd.set(e,n));const o=n.exec(t);return o?[{start:o.index,end:o.index+o[0].length}]:i?Vd(e,t):Hd(e,t)}function jd(e,t){const i=lc(e,e.toLowerCase(),0,t,t.toLowerCase(),0,{firstMatchCanBeWeak:!0,boostFullMatch:!0});return i?qd(i):null}function Kd(e,t,i,n,o,s){const r=Math.min(13,e.length);for(;i1;n--){const o=e[n]+i,s=t[t.length-1];s&&s.end===o?s.end=o+1:t.push({start:o,end:o+1})}return t}const $d=128;function Gd(){const e=[],t=[];for(let e=0;e<=$d;e++)t[e]=0;for(let i=0;i<=$d;i++)e.push(t.slice(0));return e}function Yd(e){const t=[];for(let i=0;i<=e;i++)t[i]=0;return t}const Zd=Yd(2*$d),Qd=Yd(2*$d),Xd=Gd(),Jd=Gd(),ec=Gd(),tc=!1;function ic(e,t,i,n,o){function s(e,t,i=" "){for(;e.lengths(e,3))).join("|")}\n`;for(let n=0;n<=i;n++)r+=0===n?" |":`${t[n-1]}|`,r+=e[n].slice(0,o+1).map((e=>s(e.toString(),3))).join("|")+"\n";return r}function nc(e,t){if(t<0||t>=e.length)return!1;const i=e.codePointAt(t);switch(i){case 95:case 45:case 46:case 32:case 47:case 92:case 39:case 34:case 58:case 36:case 60:case 62:case 40:case 41:case 91:case 93:case 123:case 125:return!0;case void 0:return!1;default:return!!yn(i)}}function oc(e,t){if(t<0||t>=e.length)return!1;switch(e.charCodeAt(t)){case 32:case 9:return!0;default:return!1}}function sc(e,t,i){return t[e]!==i[e]}var rc;!function(e){e.Default=[-100,0],e.isDefault=function(e){return!e||2===e.length&&-100===e[0]&&0===e[1]}}(rc||(rc={}));class ac{static{this.default={boostFullMatch:!0,firstMatchCanBeWeak:!1}}constructor(e,t){this.firstMatchCanBeWeak=e,this.boostFullMatch=t}}function lc(e,t,i,n,o,s,r=ac.default){const a=e.length>$d?$d:e.length,l=n.length>$d?$d:n.length;if(i>=a||s>=l||a-i>l-s)return;if(!function(e,t,i,n,o,s,r=!1){for(;t=i&&a>=n;)o[r]===s[a]&&(Qd[r]=a,r--),a--}(a,l,i,s,t,o);let d=1,c=1,h=i,u=s;const g=[!1];for(d=1,h=i;hr,v=_?Jd[d][c-1]+(Xd[d][c-1]>0?-5:0):0,b=u>r+1&&Xd[d][c-1]>0,w=b?Jd[d][c-2]+(Xd[d][c-2]>0?-5:0):0;if(b&&(!_||w>=v)&&(!m||w>=f))Jd[d][c]=w,ec[d][c]=3,Xd[d][c]=0;else if(_&&(!m||v>=f))Jd[d][c]=v,ec[d][c]=2,Xd[d][c]=0;else{if(!m)throw new Error("not possible");Jd[d][c]=f,ec[d][c]=1,Xd[d][c]=Xd[d-1][c-1]+1}}}if(tc&&function(e,t,i,n){e=e.substr(t),i=i.substr(n),console.log(ic(Jd,e,e.length,i,i.length)),console.log(ic(ec,e,e.length,i,i.length)),console.log(ic(Xd,e,e.length,i,i.length))}(e,i,n,s),!g[0]&&!r.firstMatchCanBeWeak)return;d--,c--;const p=[Jd[d][c],s];let m=0,f=0;for(;d>=1;){let e=c;do{const t=ec[d][e];if(3===t)e-=2;else{if(2!==t)break;e-=1}}while(e>=1);m>1&&t[i+d-1]===o[s+c-1]&&!sc(e+s-1,n,o)&&m+1>Xd[d][e]&&(e=c),e===c?m++:m=1,f||(f=e),d--,c=e-1,p.push(c)}l-s===a&&r.boostFullMatch&&(p[0]+=2);const _=f-a;return p[0]-=_,p}function dc(e,t,i,n,o,s,r,a,l,d,c){if(t[i]!==s[r])return Number.MIN_SAFE_INTEGER;let h=1,u=!1;return r===i-n?h=e[i]===o[r]?7:5:!sc(r,o,s)||0!==r&&sc(r-1,o,s)?!nc(s,r)||0!==r&&nc(s,r-1)?(nc(s,r-1)||oc(s,r-1))&&(h=5,u=!0):h=5:(h=e[i]===o[r]?7:5,u=!0),h>1&&i===n&&(c[0]=!0),u||(u=sc(r,o,s)||nc(s,r-1)||oc(s,r-1)),i===n?r>l&&(h-=u?3:5):h+=d?u?2:0:u?0:1,r+1===a&&(h-=u?3:5),h}function cc(e,t,i,n,o,s,r){return function(e,t,i,n,o,s,r,a){let l=lc(e,t,i,n,o,s,a);if(e.length>=3){const t=Math.min(7,e.length-1);for(let r=i+1;rl[0])&&(l=e))}}}return l}(e,t,i,n,o,s,0,r)}function hc(e,t){if(t+1>=e.length)return;const i=e[t],n=e[t+1];return i!==n?e.slice(0,t)+n+i+e.slice(t+2):void 0}const uc=Object.create(null);function gc(e,t){if(at(t)){const i=uc[t];if(void 0===i)throw new Error(`${e} references an unknown codicon: ${t}`);t=i}return uc[e]=t,{id:e}}function pc(){return uc}const mc={add:gc("add",6e4),plus:gc("plus",6e4),gistNew:gc("gist-new",6e4),repoCreate:gc("repo-create",6e4),lightbulb:gc("lightbulb",60001),lightBulb:gc("light-bulb",60001),repo:gc("repo",60002),repoDelete:gc("repo-delete",60002),gistFork:gc("gist-fork",60003),repoForked:gc("repo-forked",60003),gitPullRequest:gc("git-pull-request",60004),gitPullRequestAbandoned:gc("git-pull-request-abandoned",60004),recordKeys:gc("record-keys",60005),keyboard:gc("keyboard",60005),tag:gc("tag",60006),gitPullRequestLabel:gc("git-pull-request-label",60006),tagAdd:gc("tag-add",60006),tagRemove:gc("tag-remove",60006),person:gc("person",60007),personFollow:gc("person-follow",60007),personOutline:gc("person-outline",60007),personFilled:gc("person-filled",60007),gitBranch:gc("git-branch",60008),gitBranchCreate:gc("git-branch-create",60008),gitBranchDelete:gc("git-branch-delete",60008),sourceControl:gc("source-control",60008),mirror:gc("mirror",60009),mirrorPublic:gc("mirror-public",60009),star:gc("star",60010),starAdd:gc("star-add",60010),starDelete:gc("star-delete",60010),starEmpty:gc("star-empty",60010),comment:gc("comment",60011),commentAdd:gc("comment-add",60011),alert:gc("alert",60012),warning:gc("warning",60012),search:gc("search",60013),searchSave:gc("search-save",60013),logOut:gc("log-out",60014),signOut:gc("sign-out",60014),logIn:gc("log-in",60015),signIn:gc("sign-in",60015),eye:gc("eye",60016),eyeUnwatch:gc("eye-unwatch",60016),eyeWatch:gc("eye-watch",60016),circleFilled:gc("circle-filled",60017),primitiveDot:gc("primitive-dot",60017),closeDirty:gc("close-dirty",60017),debugBreakpoint:gc("debug-breakpoint",60017),debugBreakpointDisabled:gc("debug-breakpoint-disabled",60017),debugHint:gc("debug-hint",60017),terminalDecorationSuccess:gc("terminal-decoration-success",60017),primitiveSquare:gc("primitive-square",60018),edit:gc("edit",60019),pencil:gc("pencil",60019),info:gc("info",60020),issueOpened:gc("issue-opened",60020),gistPrivate:gc("gist-private",60021),gitForkPrivate:gc("git-fork-private",60021),lock:gc("lock",60021),mirrorPrivate:gc("mirror-private",60021),close:gc("close",60022),removeClose:gc("remove-close",60022),x:gc("x",60022),repoSync:gc("repo-sync",60023),sync:gc("sync",60023),clone:gc("clone",60024),desktopDownload:gc("desktop-download",60024),beaker:gc("beaker",60025),microscope:gc("microscope",60025),vm:gc("vm",60026),deviceDesktop:gc("device-desktop",60026),file:gc("file",60027),fileText:gc("file-text",60027),more:gc("more",60028),ellipsis:gc("ellipsis",60028),kebabHorizontal:gc("kebab-horizontal",60028),mailReply:gc("mail-reply",60029),reply:gc("reply",60029),organization:gc("organization",60030),organizationFilled:gc("organization-filled",60030),organizationOutline:gc("organization-outline",60030),newFile:gc("new-file",60031),fileAdd:gc("file-add",60031),newFolder:gc("new-folder",60032),fileDirectoryCreate:gc("file-directory-create",60032),trash:gc("trash",60033),trashcan:gc("trashcan",60033),history:gc("history",60034),clock:gc("clock",60034),folder:gc("folder",60035),fileDirectory:gc("file-directory",60035),symbolFolder:gc("symbol-folder",60035),logoGithub:gc("logo-github",60036),markGithub:gc("mark-github",60036),github:gc("github",60036),terminal:gc("terminal",60037),console:gc("console",60037),repl:gc("repl",60037),zap:gc("zap",60038),symbolEvent:gc("symbol-event",60038),error:gc("error",60039),stop:gc("stop",60039),variable:gc("variable",60040),symbolVariable:gc("symbol-variable",60040),array:gc("array",60042),symbolArray:gc("symbol-array",60042),symbolModule:gc("symbol-module",60043),symbolPackage:gc("symbol-package",60043),symbolNamespace:gc("symbol-namespace",60043),symbolObject:gc("symbol-object",60043),symbolMethod:gc("symbol-method",60044),symbolFunction:gc("symbol-function",60044),symbolConstructor:gc("symbol-constructor",60044),symbolBoolean:gc("symbol-boolean",60047),symbolNull:gc("symbol-null",60047),symbolNumeric:gc("symbol-numeric",60048),symbolNumber:gc("symbol-number",60048),symbolStructure:gc("symbol-structure",60049),symbolStruct:gc("symbol-struct",60049),symbolParameter:gc("symbol-parameter",60050),symbolTypeParameter:gc("symbol-type-parameter",60050),symbolKey:gc("symbol-key",60051),symbolText:gc("symbol-text",60051),symbolReference:gc("symbol-reference",60052),goToFile:gc("go-to-file",60052),symbolEnum:gc("symbol-enum",60053),symbolValue:gc("symbol-value",60053),symbolRuler:gc("symbol-ruler",60054),symbolUnit:gc("symbol-unit",60054),activateBreakpoints:gc("activate-breakpoints",60055),archive:gc("archive",60056),arrowBoth:gc("arrow-both",60057),arrowDown:gc("arrow-down",60058),arrowLeft:gc("arrow-left",60059),arrowRight:gc("arrow-right",60060),arrowSmallDown:gc("arrow-small-down",60061),arrowSmallLeft:gc("arrow-small-left",60062),arrowSmallRight:gc("arrow-small-right",60063),arrowSmallUp:gc("arrow-small-up",60064),arrowUp:gc("arrow-up",60065),bell:gc("bell",60066),bold:gc("bold",60067),book:gc("book",60068),bookmark:gc("bookmark",60069),debugBreakpointConditionalUnverified:gc("debug-breakpoint-conditional-unverified",60070),debugBreakpointConditional:gc("debug-breakpoint-conditional",60071),debugBreakpointConditionalDisabled:gc("debug-breakpoint-conditional-disabled",60071),debugBreakpointDataUnverified:gc("debug-breakpoint-data-unverified",60072),debugBreakpointData:gc("debug-breakpoint-data",60073),debugBreakpointDataDisabled:gc("debug-breakpoint-data-disabled",60073),debugBreakpointLogUnverified:gc("debug-breakpoint-log-unverified",60074),debugBreakpointLog:gc("debug-breakpoint-log",60075),debugBreakpointLogDisabled:gc("debug-breakpoint-log-disabled",60075),briefcase:gc("briefcase",60076),broadcast:gc("broadcast",60077),browser:gc("browser",60078),bug:gc("bug",60079),calendar:gc("calendar",60080),caseSensitive:gc("case-sensitive",60081),check:gc("check",60082),checklist:gc("checklist",60083),chevronDown:gc("chevron-down",60084),chevronLeft:gc("chevron-left",60085),chevronRight:gc("chevron-right",60086),chevronUp:gc("chevron-up",60087),chromeClose:gc("chrome-close",60088),chromeMaximize:gc("chrome-maximize",60089),chromeMinimize:gc("chrome-minimize",60090),chromeRestore:gc("chrome-restore",60091),circleOutline:gc("circle-outline",60092),circle:gc("circle",60092),debugBreakpointUnverified:gc("debug-breakpoint-unverified",60092),terminalDecorationIncomplete:gc("terminal-decoration-incomplete",60092),circleSlash:gc("circle-slash",60093),circuitBoard:gc("circuit-board",60094),clearAll:gc("clear-all",60095),clippy:gc("clippy",60096),closeAll:gc("close-all",60097),cloudDownload:gc("cloud-download",60098),cloudUpload:gc("cloud-upload",60099),code:gc("code",60100),collapseAll:gc("collapse-all",60101),colorMode:gc("color-mode",60102),commentDiscussion:gc("comment-discussion",60103),creditCard:gc("credit-card",60105),dash:gc("dash",60108),dashboard:gc("dashboard",60109),database:gc("database",60110),debugContinue:gc("debug-continue",60111),debugDisconnect:gc("debug-disconnect",60112),debugPause:gc("debug-pause",60113),debugRestart:gc("debug-restart",60114),debugStart:gc("debug-start",60115),debugStepInto:gc("debug-step-into",60116),debugStepOut:gc("debug-step-out",60117),debugStepOver:gc("debug-step-over",60118),debugStop:gc("debug-stop",60119),debug:gc("debug",60120),deviceCameraVideo:gc("device-camera-video",60121),deviceCamera:gc("device-camera",60122),deviceMobile:gc("device-mobile",60123),diffAdded:gc("diff-added",60124),diffIgnored:gc("diff-ignored",60125),diffModified:gc("diff-modified",60126),diffRemoved:gc("diff-removed",60127),diffRenamed:gc("diff-renamed",60128),diff:gc("diff",60129),diffSidebyside:gc("diff-sidebyside",60129),discard:gc("discard",60130),editorLayout:gc("editor-layout",60131),emptyWindow:gc("empty-window",60132),exclude:gc("exclude",60133),extensions:gc("extensions",60134),eyeClosed:gc("eye-closed",60135),fileBinary:gc("file-binary",60136),fileCode:gc("file-code",60137),fileMedia:gc("file-media",60138),filePdf:gc("file-pdf",60139),fileSubmodule:gc("file-submodule",60140),fileSymlinkDirectory:gc("file-symlink-directory",60141),fileSymlinkFile:gc("file-symlink-file",60142),fileZip:gc("file-zip",60143),files:gc("files",60144),filter:gc("filter",60145),flame:gc("flame",60146),foldDown:gc("fold-down",60147),foldUp:gc("fold-up",60148),fold:gc("fold",60149),folderActive:gc("folder-active",60150),folderOpened:gc("folder-opened",60151),gear:gc("gear",60152),gift:gc("gift",60153),gistSecret:gc("gist-secret",60154),gist:gc("gist",60155),gitCommit:gc("git-commit",60156),gitCompare:gc("git-compare",60157),compareChanges:gc("compare-changes",60157),gitMerge:gc("git-merge",60158),githubAction:gc("github-action",60159),githubAlt:gc("github-alt",60160),globe:gc("globe",60161),grabber:gc("grabber",60162),graph:gc("graph",60163),gripper:gc("gripper",60164),heart:gc("heart",60165),home:gc("home",60166),horizontalRule:gc("horizontal-rule",60167),hubot:gc("hubot",60168),inbox:gc("inbox",60169),issueReopened:gc("issue-reopened",60171),issues:gc("issues",60172),italic:gc("italic",60173),jersey:gc("jersey",60174),json:gc("json",60175),kebabVertical:gc("kebab-vertical",60176),key:gc("key",60177),law:gc("law",60178),lightbulbAutofix:gc("lightbulb-autofix",60179),linkExternal:gc("link-external",60180),link:gc("link",60181),listOrdered:gc("list-ordered",60182),listUnordered:gc("list-unordered",60183),liveShare:gc("live-share",60184),loading:gc("loading",60185),location:gc("location",60186),mailRead:gc("mail-read",60187),mail:gc("mail",60188),markdown:gc("markdown",60189),megaphone:gc("megaphone",60190),mention:gc("mention",60191),milestone:gc("milestone",60192),gitPullRequestMilestone:gc("git-pull-request-milestone",60192),mortarBoard:gc("mortar-board",60193),move:gc("move",60194),multipleWindows:gc("multiple-windows",60195),mute:gc("mute",60196),noNewline:gc("no-newline",60197),note:gc("note",60198),octoface:gc("octoface",60199),openPreview:gc("open-preview",60200),package:gc("package",60201),paintcan:gc("paintcan",60202),pin:gc("pin",60203),play:gc("play",60204),run:gc("run",60204),plug:gc("plug",60205),preserveCase:gc("preserve-case",60206),preview:gc("preview",60207),project:gc("project",60208),pulse:gc("pulse",60209),question:gc("question",60210),quote:gc("quote",60211),radioTower:gc("radio-tower",60212),reactions:gc("reactions",60213),references:gc("references",60214),refresh:gc("refresh",60215),regex:gc("regex",60216),remoteExplorer:gc("remote-explorer",60217),remote:gc("remote",60218),remove:gc("remove",60219),replaceAll:gc("replace-all",60220),replace:gc("replace",60221),repoClone:gc("repo-clone",60222),repoForcePush:gc("repo-force-push",60223),repoPull:gc("repo-pull",60224),repoPush:gc("repo-push",60225),report:gc("report",60226),requestChanges:gc("request-changes",60227),rocket:gc("rocket",60228),rootFolderOpened:gc("root-folder-opened",60229),rootFolder:gc("root-folder",60230),rss:gc("rss",60231),ruby:gc("ruby",60232),saveAll:gc("save-all",60233),saveAs:gc("save-as",60234),save:gc("save",60235),screenFull:gc("screen-full",60236),screenNormal:gc("screen-normal",60237),searchStop:gc("search-stop",60238),server:gc("server",60240),settingsGear:gc("settings-gear",60241),settings:gc("settings",60242),shield:gc("shield",60243),smiley:gc("smiley",60244),sortPrecedence:gc("sort-precedence",60245),splitHorizontal:gc("split-horizontal",60246),splitVertical:gc("split-vertical",60247),squirrel:gc("squirrel",60248),starFull:gc("star-full",60249),starHalf:gc("star-half",60250),symbolClass:gc("symbol-class",60251),symbolColor:gc("symbol-color",60252),symbolConstant:gc("symbol-constant",60253),symbolEnumMember:gc("symbol-enum-member",60254),symbolField:gc("symbol-field",60255),symbolFile:gc("symbol-file",60256),symbolInterface:gc("symbol-interface",60257),symbolKeyword:gc("symbol-keyword",60258),symbolMisc:gc("symbol-misc",60259),symbolOperator:gc("symbol-operator",60260),symbolProperty:gc("symbol-property",60261),wrench:gc("wrench",60261),wrenchSubaction:gc("wrench-subaction",60261),symbolSnippet:gc("symbol-snippet",60262),tasklist:gc("tasklist",60263),telescope:gc("telescope",60264),textSize:gc("text-size",60265),threeBars:gc("three-bars",60266),thumbsdown:gc("thumbsdown",60267),thumbsup:gc("thumbsup",60268),tools:gc("tools",60269),triangleDown:gc("triangle-down",60270),triangleLeft:gc("triangle-left",60271),triangleRight:gc("triangle-right",60272),triangleUp:gc("triangle-up",60273),twitter:gc("twitter",60274),unfold:gc("unfold",60275),unlock:gc("unlock",60276),unmute:gc("unmute",60277),unverified:gc("unverified",60278),verified:gc("verified",60279),versions:gc("versions",60280),vmActive:gc("vm-active",60281),vmOutline:gc("vm-outline",60282),vmRunning:gc("vm-running",60283),watch:gc("watch",60284),whitespace:gc("whitespace",60285),wholeWord:gc("whole-word",60286),window:gc("window",60287),wordWrap:gc("word-wrap",60288),zoomIn:gc("zoom-in",60289),zoomOut:gc("zoom-out",60290),listFilter:gc("list-filter",60291),listFlat:gc("list-flat",60292),listSelection:gc("list-selection",60293),selection:gc("selection",60293),listTree:gc("list-tree",60294),debugBreakpointFunctionUnverified:gc("debug-breakpoint-function-unverified",60295),debugBreakpointFunction:gc("debug-breakpoint-function",60296),debugBreakpointFunctionDisabled:gc("debug-breakpoint-function-disabled",60296),debugStackframeActive:gc("debug-stackframe-active",60297),circleSmallFilled:gc("circle-small-filled",60298),debugStackframeDot:gc("debug-stackframe-dot",60298),terminalDecorationMark:gc("terminal-decoration-mark",60298),debugStackframe:gc("debug-stackframe",60299),debugStackframeFocused:gc("debug-stackframe-focused",60299),debugBreakpointUnsupported:gc("debug-breakpoint-unsupported",60300),symbolString:gc("symbol-string",60301),debugReverseContinue:gc("debug-reverse-continue",60302),debugStepBack:gc("debug-step-back",60303),debugRestartFrame:gc("debug-restart-frame",60304),debugAlt:gc("debug-alt",60305),callIncoming:gc("call-incoming",60306),callOutgoing:gc("call-outgoing",60307),menu:gc("menu",60308),expandAll:gc("expand-all",60309),feedback:gc("feedback",60310),gitPullRequestReviewer:gc("git-pull-request-reviewer",60310),groupByRefType:gc("group-by-ref-type",60311),ungroupByRefType:gc("ungroup-by-ref-type",60312),account:gc("account",60313),gitPullRequestAssignee:gc("git-pull-request-assignee",60313),bellDot:gc("bell-dot",60314),debugConsole:gc("debug-console",60315),library:gc("library",60316),output:gc("output",60317),runAll:gc("run-all",60318),syncIgnored:gc("sync-ignored",60319),pinned:gc("pinned",60320),githubInverted:gc("github-inverted",60321),serverProcess:gc("server-process",60322),serverEnvironment:gc("server-environment",60323),pass:gc("pass",60324),issueClosed:gc("issue-closed",60324),stopCircle:gc("stop-circle",60325),playCircle:gc("play-circle",60326),record:gc("record",60327),debugAltSmall:gc("debug-alt-small",60328),vmConnect:gc("vm-connect",60329),cloud:gc("cloud",60330),merge:gc("merge",60331),export:gc("export",60332),graphLeft:gc("graph-left",60333),magnet:gc("magnet",60334),notebook:gc("notebook",60335),redo:gc("redo",60336),checkAll:gc("check-all",60337),pinnedDirty:gc("pinned-dirty",60338),passFilled:gc("pass-filled",60339),circleLargeFilled:gc("circle-large-filled",60340),circleLarge:gc("circle-large",60341),circleLargeOutline:gc("circle-large-outline",60341),combine:gc("combine",60342),gather:gc("gather",60342),table:gc("table",60343),variableGroup:gc("variable-group",60344),typeHierarchy:gc("type-hierarchy",60345),typeHierarchySub:gc("type-hierarchy-sub",60346),typeHierarchySuper:gc("type-hierarchy-super",60347),gitPullRequestCreate:gc("git-pull-request-create",60348),runAbove:gc("run-above",60349),runBelow:gc("run-below",60350),notebookTemplate:gc("notebook-template",60351),debugRerun:gc("debug-rerun",60352),workspaceTrusted:gc("workspace-trusted",60353),workspaceUntrusted:gc("workspace-untrusted",60354),workspaceUnknown:gc("workspace-unknown",60355),terminalCmd:gc("terminal-cmd",60356),terminalDebian:gc("terminal-debian",60357),terminalLinux:gc("terminal-linux",60358),terminalPowershell:gc("terminal-powershell",60359),terminalTmux:gc("terminal-tmux",60360),terminalUbuntu:gc("terminal-ubuntu",60361),terminalBash:gc("terminal-bash",60362),arrowSwap:gc("arrow-swap",60363),copy:gc("copy",60364),personAdd:gc("person-add",60365),filterFilled:gc("filter-filled",60366),wand:gc("wand",60367),debugLineByLine:gc("debug-line-by-line",60368),inspect:gc("inspect",60369),layers:gc("layers",60370),layersDot:gc("layers-dot",60371),layersActive:gc("layers-active",60372),compass:gc("compass",60373),compassDot:gc("compass-dot",60374),compassActive:gc("compass-active",60375),azure:gc("azure",60376),issueDraft:gc("issue-draft",60377),gitPullRequestClosed:gc("git-pull-request-closed",60378),gitPullRequestDraft:gc("git-pull-request-draft",60379),debugAll:gc("debug-all",60380),debugCoverage:gc("debug-coverage",60381),runErrors:gc("run-errors",60382),folderLibrary:gc("folder-library",60383),debugContinueSmall:gc("debug-continue-small",60384),beakerStop:gc("beaker-stop",60385),graphLine:gc("graph-line",60386),graphScatter:gc("graph-scatter",60387),pieChart:gc("pie-chart",60388),bracket:gc("bracket",60175),bracketDot:gc("bracket-dot",60389),bracketError:gc("bracket-error",60390),lockSmall:gc("lock-small",60391),azureDevops:gc("azure-devops",60392),verifiedFilled:gc("verified-filled",60393),newline:gc("newline",60394),layout:gc("layout",60395),layoutActivitybarLeft:gc("layout-activitybar-left",60396),layoutActivitybarRight:gc("layout-activitybar-right",60397),layoutPanelLeft:gc("layout-panel-left",60398),layoutPanelCenter:gc("layout-panel-center",60399),layoutPanelJustify:gc("layout-panel-justify",60400),layoutPanelRight:gc("layout-panel-right",60401),layoutPanel:gc("layout-panel",60402),layoutSidebarLeft:gc("layout-sidebar-left",60403),layoutSidebarRight:gc("layout-sidebar-right",60404),layoutStatusbar:gc("layout-statusbar",60405),layoutMenubar:gc("layout-menubar",60406),layoutCentered:gc("layout-centered",60407),target:gc("target",60408),indent:gc("indent",60409),recordSmall:gc("record-small",60410),errorSmall:gc("error-small",60411),terminalDecorationError:gc("terminal-decoration-error",60411),arrowCircleDown:gc("arrow-circle-down",60412),arrowCircleLeft:gc("arrow-circle-left",60413),arrowCircleRight:gc("arrow-circle-right",60414),arrowCircleUp:gc("arrow-circle-up",60415),layoutSidebarRightOff:gc("layout-sidebar-right-off",60416),layoutPanelOff:gc("layout-panel-off",60417),layoutSidebarLeftOff:gc("layout-sidebar-left-off",60418),blank:gc("blank",60419),heartFilled:gc("heart-filled",60420),map:gc("map",60421),mapHorizontal:gc("map-horizontal",60421),foldHorizontal:gc("fold-horizontal",60421),mapFilled:gc("map-filled",60422),mapHorizontalFilled:gc("map-horizontal-filled",60422),foldHorizontalFilled:gc("fold-horizontal-filled",60422),circleSmall:gc("circle-small",60423),bellSlash:gc("bell-slash",60424),bellSlashDot:gc("bell-slash-dot",60425),commentUnresolved:gc("comment-unresolved",60426),gitPullRequestGoToChanges:gc("git-pull-request-go-to-changes",60427),gitPullRequestNewChanges:gc("git-pull-request-new-changes",60428),searchFuzzy:gc("search-fuzzy",60429),commentDraft:gc("comment-draft",60430),send:gc("send",60431),sparkle:gc("sparkle",60432),insert:gc("insert",60433),mic:gc("mic",60434),thumbsdownFilled:gc("thumbsdown-filled",60435),thumbsupFilled:gc("thumbsup-filled",60436),coffee:gc("coffee",60437),snake:gc("snake",60438),game:gc("game",60439),vr:gc("vr",60440),chip:gc("chip",60441),piano:gc("piano",60442),music:gc("music",60443),micFilled:gc("mic-filled",60444),repoFetch:gc("repo-fetch",60445),copilot:gc("copilot",60446),lightbulbSparkle:gc("lightbulb-sparkle",60447),robot:gc("robot",60448),sparkleFilled:gc("sparkle-filled",60449),diffSingle:gc("diff-single",60450),diffMultiple:gc("diff-multiple",60451),surroundWith:gc("surround-with",60452),share:gc("share",60453),gitStash:gc("git-stash",60454),gitStashApply:gc("git-stash-apply",60455),gitStashPop:gc("git-stash-pop",60456),vscode:gc("vscode",60457),vscodeInsiders:gc("vscode-insiders",60458),codeOss:gc("code-oss",60459),runCoverage:gc("run-coverage",60460),runAllCoverage:gc("run-all-coverage",60461),coverage:gc("coverage",60462),githubProject:gc("github-project",60463),mapVertical:gc("map-vertical",60464),foldVertical:gc("fold-vertical",60464),mapVerticalFilled:gc("map-vertical-filled",60465),foldVerticalFilled:gc("fold-vertical-filled",60465),goToSearch:gc("go-to-search",60466),percentage:gc("percentage",60467),sortPercentage:gc("sort-percentage",60467),attach:gc("attach",60468),goToEditingSession:gc("go-to-editing-session",60469),editSession:gc("edit-session",60470),codeReview:gc("code-review",60471),copilotWarning:gc("copilot-warning",60472),python:gc("python",60473),copilotLarge:gc("copilot-large",60474),copilotWarningLarge:gc("copilot-warning-large",60475),keyboardTab:gc("keyboard-tab",60476),copilotBlocked:gc("copilot-blocked",60477),copilotNotConnected:gc("copilot-not-connected",60478),flag:gc("flag",60479),lightbulbEmpty:gc("lightbulb-empty",60480),symbolMethodArrow:gc("symbol-method-arrow",60481),copilotUnavailable:gc("copilot-unavailable",60482),repoPinned:gc("repo-pinned",60483),keyboardTabAbove:gc("keyboard-tab-above",60484),keyboardTabBelow:gc("keyboard-tab-below",60485),gitPullRequestDone:gc("git-pull-request-done",60486),mcp:gc("mcp",60487),extensionsLarge:gc("extensions-large",60488),layoutPanelDock:gc("layout-panel-dock",60489),layoutSidebarLeftDock:gc("layout-sidebar-left-dock",60490),layoutSidebarRightDock:gc("layout-sidebar-right-dock",60491),copilotInProgress:gc("copilot-in-progress",60492),copilotError:gc("copilot-error",60493),copilotSuccess:gc("copilot-success",60494),chatSparkle:gc("chat-sparkle",60495),searchSparkle:gc("search-sparkle",60496),editSparkle:gc("edit-sparkle",60497),copilotSnooze:gc("copilot-snooze",60498),sendToRemoteAgent:gc("send-to-remote-agent",60499),commentDiscussionSparkle:gc("comment-discussion-sparkle",60500),chatSparkleWarning:gc("chat-sparkle-warning",60501),chatSparkleError:gc("chat-sparkle-error",60502),collection:gc("collection",60503),newCollection:gc("new-collection",60504),thinking:gc("thinking",60505),dialogError:gc("dialog-error","error"),dialogWarning:gc("dialog-warning","warning"),dialogInfo:gc("dialog-info","info"),dialogClose:gc("dialog-close","close"),treeItemExpanded:gc("tree-item-expanded","chevron-down"),treeFilterOnTypeOn:gc("tree-filter-on-type-on","list-filter"),treeFilterOnTypeOff:gc("tree-filter-on-type-off","list-selection"),treeFilterClear:gc("tree-filter-clear","close"),treeItemLoading:gc("tree-item-loading","loading"),menuSelection:gc("menu-selection","check"),menuSubmenu:gc("menu-submenu","chevron-right"),menuBarMore:gc("menubar-more","more"),scrollbarButtonLeft:gc("scrollbar-button-left","triangle-left"),scrollbarButtonRight:gc("scrollbar-button-right","triangle-right"),scrollbarButtonUp:gc("scrollbar-button-up","triangle-up"),scrollbarButtonDown:gc("scrollbar-button-down","triangle-down"),toolBarMore:gc("toolbar-more","more"),quickInputBack:gc("quick-input-back","arrow-left"),dropDownButton:gc("drop-down-button",60084),symbolCustomColor:gc("symbol-customcolor",60252),exportIcon:gc("export",60332),workspaceUnspecified:gc("workspace-unspecified",60355),newLine:gc("newline",60394),thumbsDownFilled:gc("thumbsdown-filled",60435),thumbsUpFilled:gc("thumbsup-filled",60436),gitFetch:gc("git-fetch",60445),lightbulbSparkleAutofix:gc("lightbulb-sparkle-autofix",60447),debugBreakpointPending:gc("debug-breakpoint-pending",60377)};var fc,_c;!function(e){e.isThemeColor=function(e){return!!e&&"object"==typeof e&&"string"==typeof e.id}}(fc||(fc={})),function(e){e.iconNameSegment="[A-Za-z0-9]+",e.iconNameExpression="[A-Za-z0-9-]+",e.iconModifierExpression="~[A-Za-z]+",e.iconNameCharacter="[A-Za-z0-9~-]";const t=new RegExp(`^(${e.iconNameExpression})(${e.iconModifierExpression})?$`);function i(e){const n=t.exec(e.id);if(!n)return i(mc.error);const[,o,s]=n,r=["codicon","codicon-"+o];return s&&r.push("codicon-modifier-"+s.substring(1)),r}e.asClassNameArray=i,e.asClassName=function(e){return i(e).join(" ")},e.asCSSSelector=function(e){return"."+i(e).join(".")},e.isThemeIcon=function(e){return!!e&&"object"==typeof e&&"string"==typeof e.id&&(void 0===e.color||fc.isThemeColor(e.color))};const n=new RegExp(`^\\$\\((${e.iconNameExpression}(?:${e.iconModifierExpression})?)\\)$`);e.fromString=function(e){const t=n.exec(e);if(!t)return;const[,i]=t;return{id:i}},e.fromId=function(e){return{id:e}},e.modify=function(e,t){let i=e.id;const n=i.lastIndexOf("~");return-1!==n&&(i=i.substring(0,n)),t&&(i=`${i}~${t}`),{id:i}},e.getModifier=function(e){const t=e.id.lastIndexOf("~");if(-1!==t)return e.id.substring(t+1)},e.isEqual=function(e,t){return e.id===t.id&&e.color?.id===t.color?.id}}(_c||(_c={}));const vc=new RegExp(`\\$\\(${_c.iconNameExpression}(?:${_c.iconModifierExpression})?\\)`,"g"),bc=new RegExp(`(\\\\)?${vc.source}`,"g"),wc=new RegExp(`\\\\${vc.source}`,"g"),Cc=new RegExp(`(\\s)?(\\\\)?${vc.source}(\\s)?`,"g");function yc(e){return-1===e.indexOf("$(")?e:e.replace(Cc,((e,t,i,n)=>i?e:t||n||""))}function Sc(e){return e?e.replace(/\$\((.*?)\)/g,((e,t)=>` ${t} `)).trim():""}const xc=new RegExp(`\\$\\(${_c.iconNameCharacter}+\\)`,"g");function kc(e){xc.lastIndex=0;let t="";const i=[];let n=0;for(;;){const o=xc.lastIndex,s=xc.exec(e),r=e.substring(o,s?.index);if(r.length>0){t+=r;for(let e=0;ee.length)return!1;if(i){if(!on(e,t))return!1;if(t.length===e.length)return!0;let i=t.length;return t.charAt(t.length-1)===n&&i--,e.charAt(i)===n}return t.charAt(t.length-1)!==n&&(t+=n),0===e.indexOf(t)}function Mc(e){return e>=65&&e<=90||e>=97&&e<=122}function Tc(e){return _o(e,!0)}class Rc{constructor(e){this._ignorePathCasing=e}compare(e,t,i=!1){return e===t?0:Yi(this.getComparisonKey(e,i),this.getComparisonKey(t,i))}isEqual(e,t,i=!1){return e===t||!(!e||!t)&&this.getComparisonKey(e,i)===this.getComparisonKey(t,i)}getComparisonKey(e,t=!1){return e.with({path:this._ignorePathCasing(e)?e.path.toLowerCase():void 0,fragment:t?null:void 0}).toString()}isEqualOrParent(e,t,i=!1){if(e.scheme===t.scheme){if(e.scheme===yo.file)return Nc(Tc(e),Tc(t),this._ignorePathCasing(e))&&e.query===t.query&&(i||e.fragment===t.fragment);if(jc(e.authority,t.authority))return Nc(e.path,t.path,this._ignorePathCasing(e),"/")&&e.query===t.query&&(i||e.fragment===t.fragment)}return!1}joinPath(e,...t){return ho.joinPath(e,...t)}basenameOrAuthority(e){return Fc(e)||e.authority}basename(e){return Zn.basename(e.path)}extname(e){return Zn.extname(e.path)}dirname(e){if(0===e.path.length)return e;let t;return e.scheme===yo.file?t=ho.file(eo(Tc(e))).path:(t=Zn.dirname(e.path),e.authority&&t.length&&47!==t.charCodeAt(0)&&(console.error(`dirname("${e.toString})) resulted in a relative path`),t="/")),e.with({path:t})}normalizePath(e){if(!e.path.length)return e;let t;return t=e.scheme===yo.file?ho.file(Qn(Tc(e))).path:Zn.normalize(e.path),e.with({path:t})}relativePath(e,t){if(e.scheme!==t.scheme||!jc(e.authority,t.authority))return;if(e.scheme===yo.file){const i=Jn(Tc(e),Tc(t));return K?Ic(i):i}let i=e.path||"/";const n=t.path||"/";if(this._ignorePathCasing(e)){let e=0;for(const t=Math.min(i.length,n.length);eDc(i).length&&i[i.length-1]===t}{const t=e.path;return t.length>1&&47===t.charCodeAt(t.length-1)&&!/^[a-zA-Z]:(\/$|\\$)/.test(e.fsPath)}}removeTrailingPathSeparator(e,t=no){return Kc(e,t)?e.with({path:e.path.substr(0,e.path.length-1)}):e}addTrailingPathSeparator(e,t=no){let i=!1;if(e.scheme===yo.file){const n=Tc(e);i=void 0!==n&&n.length===Dc(n).length&&n[n.length-1]===t}else{t="/";const n=e.path;i=1===n.length&&47===n.charCodeAt(n.length-1)}return i||Kc(e,t)?e:e.with({path:e.path+"/"})}}const Ac=new Rc((()=>!1)),Oc=(new Rc((e=>e.scheme!==yo.file||!$)),new Rc((e=>!0)),Ac.isEqual.bind(Ac)),Pc=(Ac.isEqualOrParent.bind(Ac),Ac.getComparisonKey.bind(Ac),Ac.basenameOrAuthority.bind(Ac)),Fc=Ac.basename.bind(Ac),Bc=Ac.extname.bind(Ac),Wc=Ac.dirname.bind(Ac),Hc=Ac.joinPath.bind(Ac),Vc=Ac.normalizePath.bind(Ac),zc=Ac.relativePath.bind(Ac),Uc=Ac.resolvePath.bind(Ac),jc=(Ac.isAbsolutePath.bind(Ac),Ac.isEqualAuthority.bind(Ac)),Kc=Ac.hasTrailingPathSeparator.bind(Ac);var qc;Ac.removeTrailingPathSeparator.bind(Ac),Ac.addTrailingPathSeparator.bind(Ac),function(e){e.META_DATA_LABEL="label",e.META_DATA_DESCRIPTION="description",e.META_DATA_SIZE="size",e.META_DATA_MIME="mime",e.parseMetaData=function(t){const i=new Map;t.path.substring(t.path.indexOf(";")+1,t.path.lastIndexOf(";")).split(";").forEach((e=>{const[t,n]=e.split(":");t&&n&&i.set(t,n)}));const n=t.path.substring(0,t.path.indexOf(";"));return n&&i.set(e.META_DATA_MIME,n),i}}(qc||(qc={}));class $c{constructor(e="",t=!1){if(this.value=e,"string"!=typeof this.value)throw Oe("value");"boolean"==typeof t?(this.isTrusted=t,this.supportThemeIcons=!1,this.supportHtml=!1):(this.isTrusted=t.isTrusted??void 0,this.supportThemeIcons=t.supportThemeIcons??!1,this.supportHtml=t.supportHtml??!1)}appendText(e,t=0){var i;return this.value+=function(e){return e.replace(/[\\`*_{}[\]()#+\-!~]/g,"\\$&")}(this.supportThemeIcons?(i=e,i.replace(bc,((e,t)=>t?e:`\\${e}`))):e).replace(/([ \t]+)/g,((e,t)=>" ".repeat(t.length))).replace(/\>/gm,"\\>").replace(/\n/g,1===t?"\\\n":"\n\n"),this}appendMarkdown(e){return this.value+=e,this}appendCodeblock(e,t){return this.value+=`\n${function(e,t){const i=e.match(/^`+/gm)?.reduce(((e,t)=>e.length>t.length?e:t)).length??0,n=i>=3?i+1:3;return[`${"`".repeat(n)}${t}`,e,`${"`".repeat(n)}`].join("\n")}(t,e)}\n`,this}appendLink(e,t,i){return this.value+="[",this.value+=this._escape(t,"]"),this.value+="](",this.value+=this._escape(String(e),")"),i&&(this.value+=` "${this._escape(this._escape(i,'"'),")")}"`),this.value+=")",this}_escape(e,t){const i=new RegExp(Wi(t),"g");return e.replace(i,((t,i)=>"\\"!==e.charAt(i-1)?`\\${t}`:t))}}function Gc(e){return Yc(e)?!e.value:!Array.isArray(e)||e.every(Gc)}function Yc(e){return e instanceof $c||!(!e||"object"!=typeof e)&&!("string"!=typeof e.value||"boolean"!=typeof e.isTrusted&&"object"!=typeof e.isTrusted&&void 0!==e.isTrusted||"boolean"!=typeof e.supportThemeIcons&&void 0!==e.supportThemeIcons)}function Zc(e){return e.replace(/"/g,""")}function Qc(e){return e?e.replace(/\\([\\`*_{}[\]()#+\-.!~])/g,"$1"):e}function Xc(e,...t){return ho.from({scheme:yo.command,path:e,query:t.length?encodeURIComponent(JSON.stringify(t)):void 0})}var Jc,eh=i(2755),th={};th.styleTagTransform=Vl(),th.setAttributes=Fl(),th.insert=Ol().bind(null,"head"),th.domAPI=Rl(),th.insertStyleElement=Wl(),Ml()(eh.A,th),eh.A&&eh.A.locals&&eh.A.locals,function(e){e.serviceIds=new Map,e.DI_TARGET="$di$target",e.DI_DEPENDENCIES="$di$dependencies",e.getServiceDependencies=function(t){return t[e.DI_DEPENDENCIES]||[]}}(Jc||(Jc={}));const ih=nh("instantiationService");function nh(e){if(Jc.serviceIds.has(e))return Jc.serviceIds.get(e);const t=function(e,i,n){if(3!==arguments.length)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");!function(e,t,i){t[Jc.DI_TARGET]===t?t[Jc.DI_DEPENDENCIES].push({id:e,index:i}):(t[Jc.DI_DEPENDENCIES]=[{id:e,index:i}],t[Jc.DI_TARGET]=t)}(t,e,n)};return t.toString=()=>e,Jc.serviceIds.set(e,t),t}const oh=nh("codeEditorService");class sh{constructor(e,t){this.lineNumber=e,this.column=t}with(e=this.lineNumber,t=this.column){return e===this.lineNumber&&t===this.column?this:new sh(e,t)}delta(e=0,t=0){return this.with(Math.max(1,this.lineNumber+e),Math.max(1,this.column+t))}equals(e){return sh.equals(this,e)}static equals(e,t){return!e&&!t||!!e&&!!t&&e.lineNumber===t.lineNumber&&e.column===t.column}isBefore(e){return sh.isBefore(this,e)}static isBefore(e,t){return e.lineNumbere.run(...t)}}const ph=nh("commandService"),mh=new class{constructor(){this._commands=new Map,this._onDidRegisterCommand=new Gt,this.onDidRegisterCommand=this._onDidRegisterCommand.event}registerCommand(e,t){if(!e)throw new Error("invalid command");if("string"==typeof e){if(!t)throw new Error("invalid command");return this.registerCommand({id:e,handler:t})}if(e.metadata&&Array.isArray(e.metadata.args)){const t=[];for(const i of e.metadata.args)t.push(i.constraint);const i=e.handler;e.handler=function(e,...n){return function(e,t){const i=Math.min(e.length,t.length);for(let n=0;n{o();const e=this._commands.get(i);e?.isEmpty()&&this._commands.delete(i)}));return this._onDidRegisterCommand.fire(i),kt(s)}registerCommandAlias(e,t){return mh.registerCommand(e,((e,...i)=>e.get(ph).executeCommand(t,...i)))}getCommand(e){const t=this._commands.get(e);if(t&&!t.isEmpty())return wt.first(t)}getCommands(){const e=new Map;for(const t of this._commands.keys()){const i=this.getCommand(t);i&&e.set(t,i)}return e}};function fh(...e){switch(e.length){case 1:return C(1678,"Did you mean {0}?",e[0]);case 2:return C(1679,"Did you mean {0} or {1}?",e[0],e[1]);case 3:return C(1680,"Did you mean {0}, {1} or {2}?",e[0],e[1],e[2]);default:return}}mh.registerCommand("noop",(()=>{}));const _h=C(1681,"Did you forget to open or close the quote?"),vh=C(1682,"Did you forget to escape the '/' (slash) character? Put two backslashes before it to escape, e.g., '\\\\/'.");class bh{constructor(){this._input="",this._start=0,this._current=0,this._tokens=[],this._errors=[],this.stringRe=/[a-zA-Z0-9_<>\-\./\\:\*\?\+\[\]\^,#@;"%\$\p{L}-]+/uy}static getLexeme(e){switch(e.type){case 0:return"(";case 1:return")";case 2:return"!";case 3:return e.isTripleEq?"===":"==";case 4:return e.isTripleEq?"!==":"!=";case 5:return"<";case 6:return"<=";case 7:case 8:return">=";case 9:return"=~";case 10:case 17:case 18:case 19:return e.lexeme;case 11:return"true";case 12:return"false";case 13:return"in";case 14:return"not";case 15:return"&&";case 16:return"||";case 20:return"EOF";default:throw Pe(`unhandled token type: ${JSON.stringify(e)}; have you forgotten to add a case?`)}}static{this._regexFlags=new Set(["i","g","s","m","y","u"].map((e=>e.charCodeAt(0))))}static{this._keywords=new Map([["not",14],["in",13],["false",12],["true",11]])}reset(e){return this._input=e,this._start=0,this._current=0,this._tokens=[],this._errors=[],this}scan(){for(;!this._isAtEnd();)switch(this._start=this._current,this._advance()){case 40:this._addToken(0);break;case 41:this._addToken(1);break;case 33:if(this._match(61)){const e=this._match(61);this._tokens.push({type:4,offset:this._start,isTripleEq:e})}else this._addToken(2);break;case 39:this._quotedString();break;case 47:this._regex();break;case 61:if(this._match(61)){const e=this._match(61);this._tokens.push({type:3,offset:this._start,isTripleEq:e})}else this._match(126)?this._addToken(9):this._error(fh("==","=~"));break;case 60:this._addToken(this._match(61)?6:5);break;case 62:this._addToken(this._match(61)?8:7);break;case 38:this._match(38)?this._addToken(15):this._error(fh("&&"));break;case 124:this._match(124)?this._addToken(16):this._error(fh("||"));break;case 32:case 13:case 9:case 10:case 160:break;default:this._string()}return this._start=this._current,this._addToken(20),Array.from(this._tokens)}_match(e){return!this._isAtEnd()&&this._input.charCodeAt(this._current)===e&&(this._current++,!0)}_advance(){return this._input.charCodeAt(this._current++)}_peek(){return this._isAtEnd()?0:this._input.charCodeAt(this._current)}_addToken(e){this._tokens.push({type:e,offset:this._start})}_error(e){const t=this._start,i=this._input.substring(this._start,this._current),n={type:19,offset:this._start,lexeme:i};this._errors.push({offset:t,lexeme:i,additionalInfo:e}),this._tokens.push(n)}_string(){this.stringRe.lastIndex=this._start;const e=this.stringRe.exec(this._input);if(e){this._current=this._start+e[0].length;const t=this._input.substring(this._start,this._current),i=bh._keywords.get(t);i?this._addToken(i):this._tokens.push({type:17,lexeme:t,offset:this._start})}}_quotedString(){for(;39!==this._peek()&&!this._isAtEnd();)this._advance();this._isAtEnd()?this._error(_h):(this._advance(),this._tokens.push({type:18,lexeme:this._input.substring(this._start+1,this._current-1),offset:this._start+1}))}_regex(){let e=this._current,t=!1,i=!1;for(;;){if(e>=this._input.length)return this._current=e,void this._error(vh);const n=this._input.charCodeAt(e);if(t)t=!1;else{if(47===n&&!i){e++;break}91===n?i=!0:92===n?t=!0:93===n&&(i=!1)}e++}for(;e=this._input.length}}const wh=new Map;wh.set("false",!1),wh.set("true",!0),wh.set("isMac",q),wh.set("isLinux",$),wh.set("isWindows",K),wh.set("isWeb",Y),wh.set("isMacNative",q&&!Y),wh.set("isEdge",he),wh.set("isFirefox",de),wh.set("isChrome",le),wh.set("isSafari",ce);const Ch=Object.prototype.hasOwnProperty,yh={regexParsingWithErrorRecovery:!0},Sh=C(1660,"Empty context key expression"),xh=C(1661,"Did you forget to write an expression? You can also put 'false' or 'true' to always evaluate to false or true, respectively."),kh=C(1662,"'in' after 'not'."),Lh=C(1663,"closing parenthesis ')'"),Eh=C(1664,"Unexpected token"),Ih=C(1665,"Did you forget to put && or || before the token?"),Dh=C(1666,"Unexpected end of expression"),Nh=C(1667,"Did you forget to put a context key?");class Mh{static{this._parseError=new Error}constructor(e=yh){this._config=e,this._scanner=new bh,this._tokens=[],this._current=0,this._parsingErrors=[],this._flagsGYRe=/g|y/g}parse(e){if(""!==e){this._tokens=this._scanner.reset(e).scan(),this._current=0,this._parsingErrors=[];try{const e=this._expr();if(!this._isAtEnd()){const e=this._peek(),t=17===e.type?Ih:void 0;throw this._parsingErrors.push({message:Eh,offset:e.offset,lexeme:bh.getLexeme(e),additionalInfo:t}),Mh._parseError}return e}catch(e){if(e!==Mh._parseError)throw e;return}}else this._parsingErrors.push({message:Sh,offset:0,lexeme:"",additionalInfo:xh})}_expr(){return this._or()}_or(){const e=[this._and()];for(;this._matchOne(16);){const t=this._and();e.push(t)}return 1===e.length?e[0]:Th.or(...e)}_and(){const e=[this._term()];for(;this._matchOne(15);){const t=this._term();e.push(t)}return 1===e.length?e[0]:Th.and(...e)}_term(){if(this._matchOne(2)){const e=this._peek();switch(e.type){case 11:return this._advance(),Ah.INSTANCE;case 12:return this._advance(),Oh.INSTANCE;case 0:{this._advance();const e=this._expr();return this._consume(1,Lh),e?.negate()}case 17:return this._advance(),Vh.create(e.lexeme);default:throw this._errExpectedButGot("KEY | true | false | '(' expression ')'",e)}}return this._primary()}_primary(){const e=this._peek();switch(e.type){case 11:return this._advance(),Th.true();case 12:return this._advance(),Th.false();case 0:{this._advance();const e=this._expr();return this._consume(1,Lh),e}case 17:{const t=e.lexeme;if(this._advance(),this._matchOne(9)){const e=this._peek();if(!this._config.regexParsingWithErrorRecovery){if(this._advance(),10!==e.type)throw this._errExpectedButGot("REGEX",e);const i=e.lexeme,n=i.lastIndexOf("/"),o=n===i.length-1?void 0:this._removeFlagsGY(i.substring(n+1));let s;try{s=new RegExp(i.substring(1,n),o)}catch(t){throw this._errExpectedButGot("REGEX",e)}return $h.create(t,s)}switch(e.type){case 10:case 19:{const i=[e.lexeme];this._advance();let n=this._peek(),o=0;for(let t=0;t=0){const s=i.slice(t+1,o),r="i"===i[o+1]?"i":"";try{n=new RegExp(s,r)}catch(t){throw this._errExpectedButGot("REGEX",e)}}}if(null===n)throw this._errExpectedButGot("REGEX",e);return $h.create(t,n)}default:throw this._errExpectedButGot("REGEX",this._peek())}}if(this._matchOne(14)){this._consume(13,kh);const e=this._value();return Th.notIn(t,e)}switch(this._peek().type){case 3:{this._advance();const e=this._value();if(18===this._previous().type)return Th.equals(t,e);switch(e){case"true":return Th.has(t);case"false":return Th.not(t);default:return Th.equals(t,e)}}case 4:{this._advance();const e=this._value();if(18===this._previous().type)return Th.notEquals(t,e);switch(e){case"true":return Th.not(t);case"false":return Th.has(t);default:return Th.notEquals(t,e)}}case 5:return this._advance(),Kh.create(t,this._value());case 6:return this._advance(),qh.create(t,this._value());case 7:return this._advance(),Uh.create(t,this._value());case 8:return this._advance(),jh.create(t,this._value());case 13:return this._advance(),Th.in(t,this._value());default:return Th.has(t)}}case 20:throw this._parsingErrors.push({message:Dh,offset:e.offset,lexeme:"",additionalInfo:Nh}),Mh._parseError;default:throw this._errExpectedButGot("true | false | KEY \n\t| KEY '=~' REGEX \n\t| KEY ('==' | '!=' | '<' | '<=' | '>' | '>=' | 'in' | 'not' 'in') value",this._peek())}}_value(){const e=this._peek();switch(e.type){case 17:case 18:return this._advance(),e.lexeme;case 11:return this._advance(),"true";case 12:return this._advance(),"false";case 13:return this._advance(),"in";default:return""}}_removeFlagsGY(e){return e.replaceAll(this._flagsGYRe,"")}_previous(){return this._tokens[this._current-1]}_matchOne(e){return!!this._check(e)&&(this._advance(),!0)}_advance(){return this._isAtEnd()||this._current++,this._previous()}_consume(e,t){if(this._check(e))return this._advance();throw this._errExpectedButGot(t,this._peek())}_errExpectedButGot(e,t,i){const n=C(1668,"Expected: {0}\nReceived: '{1}'.",e,bh.getLexeme(t)),o=t.offset,s=bh.getLexeme(t);return this._parsingErrors.push({message:n,offset:o,lexeme:s,additionalInfo:i}),Mh._parseError}_check(e){return this._peek().type===e}_peek(){return this._tokens[this._current]}_isAtEnd(){return 20===this._peek().type}}class Th{static false(){return Ah.INSTANCE}static true(){return Oh.INSTANCE}static has(e){return Ph.create(e)}static equals(e,t){return Fh.create(e,t)}static notEquals(e,t){return Hh.create(e,t)}static regex(e,t){return $h.create(e,t)}static in(e,t){return Bh.create(e,t)}static notIn(e,t){return Wh.create(e,t)}static not(e){return Vh.create(e)}static and(...e){return Zh.create(e,null,!0)}static or(...e){return Qh.create(e,null,!0)}static{this._parser=new Mh({regexParsingWithErrorRecovery:!1})}static deserialize(e){if(null!=e)return this._parser.parse(e)}}function Rh(e,t){return e.cmp(t)}class Ah{static{this.INSTANCE=new Ah}constructor(){this.type=0}cmp(e){return this.type-e.type}equals(e){return e.type===this.type}substituteConstants(){return this}evaluate(e){return!1}serialize(){return"false"}keys(){return[]}negate(){return Oh.INSTANCE}}class Oh{static{this.INSTANCE=new Oh}constructor(){this.type=1}cmp(e){return this.type-e.type}equals(e){return e.type===this.type}substituteConstants(){return this}evaluate(e){return!0}serialize(){return"true"}keys(){return[]}negate(){return Ah.INSTANCE}}class Ph{static create(e,t=null){const i=wh.get(e);return"boolean"==typeof i?i?Oh.INSTANCE:Ah.INSTANCE:new Ph(e,t)}constructor(e,t){this.key=e,this.negated=t,this.type=2}cmp(e){return e.type!==this.type?this.type-e.type:eu(this.key,e.key)}equals(e){return e.type===this.type&&this.key===e.key}substituteConstants(){const e=wh.get(this.key);return"boolean"==typeof e?e?Oh.INSTANCE:Ah.INSTANCE:this}evaluate(e){return!!e.getValue(this.key)}serialize(){return this.key}keys(){return[this.key]}negate(){return this.negated||(this.negated=Vh.create(this.key,this)),this.negated}}class Fh{static create(e,t,i=null){if("boolean"==typeof t)return t?Ph.create(e,i):Vh.create(e,i);const n=wh.get(e);return"boolean"==typeof n?t===(n?"true":"false")?Oh.INSTANCE:Ah.INSTANCE:new Fh(e,t,i)}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=4}cmp(e){return e.type!==this.type?this.type-e.type:tu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type&&this.key===e.key&&this.value===e.value}substituteConstants(){const e=wh.get(this.key);if("boolean"==typeof e){const t=e?"true":"false";return this.value===t?Oh.INSTANCE:Ah.INSTANCE}return this}evaluate(e){return e.getValue(this.key)==this.value}serialize(){return`${this.key} == '${this.value}'`}keys(){return[this.key]}negate(){return this.negated||(this.negated=Hh.create(this.key,this.value,this)),this.negated}}class Bh{static create(e,t){return new Bh(e,t)}constructor(e,t){this.key=e,this.valueKey=t,this.type=10,this.negated=null}cmp(e){return e.type!==this.type?this.type-e.type:tu(this.key,this.valueKey,e.key,e.valueKey)}equals(e){return e.type===this.type&&this.key===e.key&&this.valueKey===e.valueKey}substituteConstants(){return this}evaluate(e){const t=e.getValue(this.valueKey),i=e.getValue(this.key);return Array.isArray(t)?t.includes(i):"string"==typeof i&&"object"==typeof t&&null!==t&&Ch.call(t,i)}serialize(){return`${this.key} in '${this.valueKey}'`}keys(){return[this.key,this.valueKey]}negate(){return this.negated||(this.negated=Wh.create(this.key,this.valueKey)),this.negated}}class Wh{static create(e,t){return new Wh(e,t)}constructor(e,t){this.key=e,this.valueKey=t,this.type=11,this._negated=Bh.create(e,t)}cmp(e){return e.type!==this.type?this.type-e.type:this._negated.cmp(e._negated)}equals(e){return e.type===this.type&&this._negated.equals(e._negated)}substituteConstants(){return this}evaluate(e){return!this._negated.evaluate(e)}serialize(){return`${this.key} not in '${this.valueKey}'`}keys(){return this._negated.keys()}negate(){return this._negated}}class Hh{static create(e,t,i=null){if("boolean"==typeof t)return t?Vh.create(e,i):Ph.create(e,i);const n=wh.get(e);return"boolean"==typeof n?t===(n?"true":"false")?Ah.INSTANCE:Oh.INSTANCE:new Hh(e,t,i)}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=5}cmp(e){return e.type!==this.type?this.type-e.type:tu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type&&this.key===e.key&&this.value===e.value}substituteConstants(){const e=wh.get(this.key);if("boolean"==typeof e){const t=e?"true":"false";return this.value===t?Ah.INSTANCE:Oh.INSTANCE}return this}evaluate(e){return e.getValue(this.key)!=this.value}serialize(){return`${this.key} != '${this.value}'`}keys(){return[this.key]}negate(){return this.negated||(this.negated=Fh.create(this.key,this.value,this)),this.negated}}class Vh{static create(e,t=null){const i=wh.get(e);return"boolean"==typeof i?i?Ah.INSTANCE:Oh.INSTANCE:new Vh(e,t)}constructor(e,t){this.key=e,this.negated=t,this.type=3}cmp(e){return e.type!==this.type?this.type-e.type:eu(this.key,e.key)}equals(e){return e.type===this.type&&this.key===e.key}substituteConstants(){const e=wh.get(this.key);return"boolean"==typeof e?e?Ah.INSTANCE:Oh.INSTANCE:this}evaluate(e){return!e.getValue(this.key)}serialize(){return`!${this.key}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=Ph.create(this.key,this)),this.negated}}function zh(e,t){if("string"==typeof e){const t=parseFloat(e);isNaN(t)||(e=t)}return"string"==typeof e||"number"==typeof e?t(e):Ah.INSTANCE}class Uh{static create(e,t,i=null){return zh(t,(t=>new Uh(e,t,i)))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=12}cmp(e){return e.type!==this.type?this.type-e.type:tu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type&&this.key===e.key&&this.value===e.value}substituteConstants(){return this}evaluate(e){return"string"!=typeof this.value&&parseFloat(e.getValue(this.key))>this.value}serialize(){return`${this.key} > ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=qh.create(this.key,this.value,this)),this.negated}}class jh{static create(e,t,i=null){return zh(t,(t=>new jh(e,t,i)))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=13}cmp(e){return e.type!==this.type?this.type-e.type:tu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type&&this.key===e.key&&this.value===e.value}substituteConstants(){return this}evaluate(e){return"string"!=typeof this.value&&parseFloat(e.getValue(this.key))>=this.value}serialize(){return`${this.key} >= ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=Kh.create(this.key,this.value,this)),this.negated}}class Kh{static create(e,t,i=null){return zh(t,(t=>new Kh(e,t,i)))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=14}cmp(e){return e.type!==this.type?this.type-e.type:tu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type&&this.key===e.key&&this.value===e.value}substituteConstants(){return this}evaluate(e){return"string"!=typeof this.value&&parseFloat(e.getValue(this.key))new qh(e,t,i)))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=15}cmp(e){return e.type!==this.type?this.type-e.type:tu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type&&this.key===e.key&&this.value===e.value}substituteConstants(){return this}evaluate(e){return"string"!=typeof this.value&&parseFloat(e.getValue(this.key))<=this.value}serialize(){return`${this.key} <= ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=Uh.create(this.key,this.value,this)),this.negated}}class $h{static create(e,t){return new $h(e,t)}constructor(e,t){this.key=e,this.regexp=t,this.type=7,this.negated=null}cmp(e){if(e.type!==this.type)return this.type-e.type;if(this.keye.key)return 1;const t=this.regexp?this.regexp.source:"",i=e.regexp?e.regexp.source:"";return ti?1:0}equals(e){if(e.type===this.type){const t=this.regexp?this.regexp.source:"",i=e.regexp?e.regexp.source:"";return this.key===e.key&&t===i}return!1}substituteConstants(){return this}evaluate(e){const t=e.getValue(this.key);return!!this.regexp&&this.regexp.test(t)}serialize(){const e=this.regexp?`/${this.regexp.source}/${this.regexp.flags}`:"/invalid/";return`${this.key} =~ ${e}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=Gh.create(this)),this.negated}}class Gh{static create(e){return new Gh(e)}constructor(e){this._actual=e,this.type=8}cmp(e){return e.type!==this.type?this.type-e.type:this._actual.cmp(e._actual)}equals(e){return e.type===this.type&&this._actual.equals(e._actual)}substituteConstants(){return this}evaluate(e){return!this._actual.evaluate(e)}serialize(){return`!(${this._actual.serialize()})`}keys(){return this._actual.keys()}negate(){return this._actual}}function Yh(e){let t=null;for(let i=0,n=e.length;ie.expr.length)return 1;for(let t=0,i=this.expr.length;t1;){const e=n[n.length-1];if(9!==e.type)break;n.pop();const t=n.pop(),o=0===n.length,s=Qh.create(e.expr.map((e=>Zh.create([e,t],null,i))),null,o);s&&(n.push(s),n.sort(Rh))}if(1===n.length)return n[0];if(i){for(let e=0;ee.serialize())).join(" && ")}keys(){const e=[];for(const t of this.expr)e.push(...t.keys());return e}negate(){if(!this.negated){const e=[];for(const t of this.expr)e.push(t.negate());this.negated=Qh.create(e,this,!0)}return this.negated}}class Qh{static create(e,t,i){return Qh._normalizeArr(e,t,i)}constructor(e,t){this.expr=e,this.negated=t,this.type=9}cmp(e){if(e.type!==this.type)return this.type-e.type;if(this.expr.lengthe.expr.length)return 1;for(let t=0,i=this.expr.length;te.serialize())).join(" || ")}keys(){const e=[];for(const t of this.expr)e.push(...t.keys());return e}negate(){if(!this.negated){const e=[];for(const t of this.expr)e.push(t.negate());for(;e.length>1;){const t=e.shift(),i=e.shift(),n=[];for(const e of ou(t))for(const t of ou(i))n.push(Zh.create([e,t],null,!1));e.unshift(Qh.create(n,null,!1))}this.negated=Qh.create(e,this,!0)}return this.negated}}class Xh extends Ph{static{this._info=[]}static all(){return Xh._info.values()}constructor(e,t,i){super(e,null),this._defaultValue=t,"object"==typeof i?Xh._info.push({...i,key:e}):!0!==i&&Xh._info.push({key:e,description:i,type:null!=t?typeof t:void 0})}bindTo(e){return e.createKey(this.key,this._defaultValue)}getValue(e){return e.getContextKeyValue(this.key)}toNegated(){return this.negate()}isEqualTo(e){return Fh.create(this.key,e)}}const Jh=nh("contextKeyService");function eu(e,t){return et?1:0}function tu(e,t,i,n){return ei?1:tn?1:0}function iu(e,t){if(0===e.type||1===t.type)return!0;if(9===e.type)return 9===t.type&&nu(e.expr,t.expr);if(9===t.type){for(const i of t.expr)if(iu(e,i))return!0;return!1}if(6===e.type){if(6===t.type)return nu(t.expr,e.expr);for(const i of e.expr)if(iu(i,t))return!0;return!1}return e.equals(t)}function nu(e,t){let i=0,n=0;for(;i{vt(e.dispose)&&e.dispose()})),this.data.clear()}};class ru{constructor(){this._coreKeybindings=new Bt,this._extensionKeybindings=[],this._cachedMergedKeybindings=null}static bindToCurrentPlatform(e){if(1===oe){if(e&&e.win)return e.win}else if(2===oe){if(e&&e.mac)return e.mac}else if(e&&e.linux)return e.linux;return e}registerKeybindingRule(e){const t=ru.bindToCurrentPlatform(e),i=new Mt;if(t&&t.primary){const n=He(t.primary,oe);n&&i.add(this._registerDefaultKeybinding(n,e.id,e.args,e.weight,0,e.when))}if(t&&Array.isArray(t.secondary))for(let n=0,o=t.secondary.length;n{r(),this._cachedMergedKeybindings=null}))}getDefaultKeybindings(){return this._cachedMergedKeybindings||(this._cachedMergedKeybindings=Array.from(this._coreKeybindings).concat(this._extensionKeybindings),this._cachedMergedKeybindings.sort(lu)),this._cachedMergedKeybindings.slice(0)}}const au=new ru;function lu(e,t){if(e.weight1!==t.weight1)return e.weight1-t.weight1;if(e.command&&t.command){if(e.commandt.command)return 1}return e.weight2-t.weight2}su.add("platform.keybindingsRegistry",au);var du,cu=function(e,t){return function(i,n){t(i,n,e)}};function hu(e){return void 0!==e.command}class uu{static{this._instances=new Map}static{this.CommandPalette=new uu("CommandPalette")}static{this.DebugBreakpointsContext=new uu("DebugBreakpointsContext")}static{this.DebugCallStackContext=new uu("DebugCallStackContext")}static{this.DebugConsoleContext=new uu("DebugConsoleContext")}static{this.DebugVariablesContext=new uu("DebugVariablesContext")}static{this.NotebookVariablesContext=new uu("NotebookVariablesContext")}static{this.DebugHoverContext=new uu("DebugHoverContext")}static{this.DebugWatchContext=new uu("DebugWatchContext")}static{this.DebugToolBar=new uu("DebugToolBar")}static{this.DebugToolBarStop=new uu("DebugToolBarStop")}static{this.DebugDisassemblyContext=new uu("DebugDisassemblyContext")}static{this.DebugCallStackToolbar=new uu("DebugCallStackToolbar")}static{this.DebugCreateConfiguration=new uu("DebugCreateConfiguration")}static{this.EditorContext=new uu("EditorContext")}static{this.SimpleEditorContext=new uu("SimpleEditorContext")}static{this.EditorContent=new uu("EditorContent")}static{this.EditorLineNumberContext=new uu("EditorLineNumberContext")}static{this.EditorContextCopy=new uu("EditorContextCopy")}static{this.EditorContextPeek=new uu("EditorContextPeek")}static{this.EditorContextShare=new uu("EditorContextShare")}static{this.EditorTitle=new uu("EditorTitle")}static{this.CompactWindowEditorTitle=new uu("CompactWindowEditorTitle")}static{this.EditorTitleRun=new uu("EditorTitleRun")}static{this.EditorTitleContext=new uu("EditorTitleContext")}static{this.EditorTitleContextShare=new uu("EditorTitleContextShare")}static{this.EmptyEditorGroup=new uu("EmptyEditorGroup")}static{this.EmptyEditorGroupContext=new uu("EmptyEditorGroupContext")}static{this.EditorTabsBarContext=new uu("EditorTabsBarContext")}static{this.EditorTabsBarShowTabsSubmenu=new uu("EditorTabsBarShowTabsSubmenu")}static{this.EditorTabsBarShowTabsZenModeSubmenu=new uu("EditorTabsBarShowTabsZenModeSubmenu")}static{this.EditorActionsPositionSubmenu=new uu("EditorActionsPositionSubmenu")}static{this.EditorSplitMoveSubmenu=new uu("EditorSplitMoveSubmenu")}static{this.ExplorerContext=new uu("ExplorerContext")}static{this.ExplorerContextShare=new uu("ExplorerContextShare")}static{this.ExtensionContext=new uu("ExtensionContext")}static{this.ExtensionEditorContextMenu=new uu("ExtensionEditorContextMenu")}static{this.GlobalActivity=new uu("GlobalActivity")}static{this.CommandCenter=new uu("CommandCenter")}static{this.CommandCenterCenter=new uu("CommandCenterCenter")}static{this.LayoutControlMenuSubmenu=new uu("LayoutControlMenuSubmenu")}static{this.LayoutControlMenu=new uu("LayoutControlMenu")}static{this.MenubarMainMenu=new uu("MenubarMainMenu")}static{this.MenubarAppearanceMenu=new uu("MenubarAppearanceMenu")}static{this.MenubarDebugMenu=new uu("MenubarDebugMenu")}static{this.MenubarEditMenu=new uu("MenubarEditMenu")}static{this.MenubarCopy=new uu("MenubarCopy")}static{this.MenubarFileMenu=new uu("MenubarFileMenu")}static{this.MenubarGoMenu=new uu("MenubarGoMenu")}static{this.MenubarHelpMenu=new uu("MenubarHelpMenu")}static{this.MenubarLayoutMenu=new uu("MenubarLayoutMenu")}static{this.MenubarNewBreakpointMenu=new uu("MenubarNewBreakpointMenu")}static{this.PanelAlignmentMenu=new uu("PanelAlignmentMenu")}static{this.PanelPositionMenu=new uu("PanelPositionMenu")}static{this.ActivityBarPositionMenu=new uu("ActivityBarPositionMenu")}static{this.MenubarPreferencesMenu=new uu("MenubarPreferencesMenu")}static{this.MenubarRecentMenu=new uu("MenubarRecentMenu")}static{this.MenubarSelectionMenu=new uu("MenubarSelectionMenu")}static{this.MenubarShare=new uu("MenubarShare")}static{this.MenubarSwitchEditorMenu=new uu("MenubarSwitchEditorMenu")}static{this.MenubarSwitchGroupMenu=new uu("MenubarSwitchGroupMenu")}static{this.MenubarTerminalMenu=new uu("MenubarTerminalMenu")}static{this.MenubarTerminalSuggestStatusMenu=new uu("MenubarTerminalSuggestStatusMenu")}static{this.MenubarViewMenu=new uu("MenubarViewMenu")}static{this.MenubarHomeMenu=new uu("MenubarHomeMenu")}static{this.OpenEditorsContext=new uu("OpenEditorsContext")}static{this.OpenEditorsContextShare=new uu("OpenEditorsContextShare")}static{this.ProblemsPanelContext=new uu("ProblemsPanelContext")}static{this.SCMInputBox=new uu("SCMInputBox")}static{this.SCMChangeContext=new uu("SCMChangeContext")}static{this.SCMResourceContext=new uu("SCMResourceContext")}static{this.SCMResourceContextShare=new uu("SCMResourceContextShare")}static{this.SCMResourceFolderContext=new uu("SCMResourceFolderContext")}static{this.SCMResourceGroupContext=new uu("SCMResourceGroupContext")}static{this.SCMSourceControl=new uu("SCMSourceControl")}static{this.SCMSourceControlInline=new uu("SCMSourceControlInline")}static{this.SCMSourceControlTitle=new uu("SCMSourceControlTitle")}static{this.SCMHistoryTitle=new uu("SCMHistoryTitle")}static{this.SCMHistoryItemContext=new uu("SCMHistoryItemContext")}static{this.SCMHistoryItemChangeContext=new uu("SCMHistoryItemChangeContext")}static{this.SCMHistoryItemHover=new uu("SCMHistoryItemHover")}static{this.SCMHistoryItemRefContext=new uu("SCMHistoryItemRefContext")}static{this.SCMQuickDiffDecorations=new uu("SCMQuickDiffDecorations")}static{this.SCMTitle=new uu("SCMTitle")}static{this.SearchContext=new uu("SearchContext")}static{this.SearchActionMenu=new uu("SearchActionContext")}static{this.StatusBarWindowIndicatorMenu=new uu("StatusBarWindowIndicatorMenu")}static{this.StatusBarRemoteIndicatorMenu=new uu("StatusBarRemoteIndicatorMenu")}static{this.StickyScrollContext=new uu("StickyScrollContext")}static{this.TestItem=new uu("TestItem")}static{this.TestItemGutter=new uu("TestItemGutter")}static{this.TestProfilesContext=new uu("TestProfilesContext")}static{this.TestMessageContext=new uu("TestMessageContext")}static{this.TestMessageContent=new uu("TestMessageContent")}static{this.TestPeekElement=new uu("TestPeekElement")}static{this.TestPeekTitle=new uu("TestPeekTitle")}static{this.TestCallStack=new uu("TestCallStack")}static{this.TestCoverageFilterItem=new uu("TestCoverageFilterItem")}static{this.TouchBarContext=new uu("TouchBarContext")}static{this.TitleBar=new uu("TitleBar")}static{this.TitleBarContext=new uu("TitleBarContext")}static{this.TitleBarTitleContext=new uu("TitleBarTitleContext")}static{this.TunnelContext=new uu("TunnelContext")}static{this.TunnelPrivacy=new uu("TunnelPrivacy")}static{this.TunnelProtocol=new uu("TunnelProtocol")}static{this.TunnelPortInline=new uu("TunnelInline")}static{this.TunnelTitle=new uu("TunnelTitle")}static{this.TunnelLocalAddressInline=new uu("TunnelLocalAddressInline")}static{this.TunnelOriginInline=new uu("TunnelOriginInline")}static{this.ViewItemContext=new uu("ViewItemContext")}static{this.ViewContainerTitle=new uu("ViewContainerTitle")}static{this.ViewContainerTitleContext=new uu("ViewContainerTitleContext")}static{this.ViewTitle=new uu("ViewTitle")}static{this.ViewTitleContext=new uu("ViewTitleContext")}static{this.CommentEditorActions=new uu("CommentEditorActions")}static{this.CommentThreadTitle=new uu("CommentThreadTitle")}static{this.CommentThreadActions=new uu("CommentThreadActions")}static{this.CommentThreadAdditionalActions=new uu("CommentThreadAdditionalActions")}static{this.CommentThreadTitleContext=new uu("CommentThreadTitleContext")}static{this.CommentThreadCommentContext=new uu("CommentThreadCommentContext")}static{this.CommentTitle=new uu("CommentTitle")}static{this.CommentActions=new uu("CommentActions")}static{this.CommentsViewThreadActions=new uu("CommentsViewThreadActions")}static{this.InteractiveToolbar=new uu("InteractiveToolbar")}static{this.InteractiveCellTitle=new uu("InteractiveCellTitle")}static{this.InteractiveCellDelete=new uu("InteractiveCellDelete")}static{this.InteractiveCellExecute=new uu("InteractiveCellExecute")}static{this.InteractiveInputExecute=new uu("InteractiveInputExecute")}static{this.InteractiveInputConfig=new uu("InteractiveInputConfig")}static{this.ReplInputExecute=new uu("ReplInputExecute")}static{this.IssueReporter=new uu("IssueReporter")}static{this.NotebookToolbar=new uu("NotebookToolbar")}static{this.NotebookToolbarContext=new uu("NotebookToolbarContext")}static{this.NotebookStickyScrollContext=new uu("NotebookStickyScrollContext")}static{this.NotebookCellTitle=new uu("NotebookCellTitle")}static{this.NotebookCellDelete=new uu("NotebookCellDelete")}static{this.NotebookCellInsert=new uu("NotebookCellInsert")}static{this.NotebookCellBetween=new uu("NotebookCellBetween")}static{this.NotebookCellListTop=new uu("NotebookCellTop")}static{this.NotebookCellExecute=new uu("NotebookCellExecute")}static{this.NotebookCellExecuteGoTo=new uu("NotebookCellExecuteGoTo")}static{this.NotebookCellExecutePrimary=new uu("NotebookCellExecutePrimary")}static{this.NotebookDiffCellInputTitle=new uu("NotebookDiffCellInputTitle")}static{this.NotebookDiffDocumentMetadata=new uu("NotebookDiffDocumentMetadata")}static{this.NotebookDiffCellMetadataTitle=new uu("NotebookDiffCellMetadataTitle")}static{this.NotebookDiffCellOutputsTitle=new uu("NotebookDiffCellOutputsTitle")}static{this.NotebookOutputToolbar=new uu("NotebookOutputToolbar")}static{this.NotebookOutlineFilter=new uu("NotebookOutlineFilter")}static{this.NotebookOutlineActionMenu=new uu("NotebookOutlineActionMenu")}static{this.NotebookEditorLayoutConfigure=new uu("NotebookEditorLayoutConfigure")}static{this.NotebookKernelSource=new uu("NotebookKernelSource")}static{this.BulkEditTitle=new uu("BulkEditTitle")}static{this.BulkEditContext=new uu("BulkEditContext")}static{this.TimelineItemContext=new uu("TimelineItemContext")}static{this.TimelineTitle=new uu("TimelineTitle")}static{this.TimelineTitleContext=new uu("TimelineTitleContext")}static{this.TimelineFilterSubMenu=new uu("TimelineFilterSubMenu")}static{this.AccountsContext=new uu("AccountsContext")}static{this.SidebarTitle=new uu("SidebarTitle")}static{this.PanelTitle=new uu("PanelTitle")}static{this.AuxiliaryBarTitle=new uu("AuxiliaryBarTitle")}static{this.TerminalInstanceContext=new uu("TerminalInstanceContext")}static{this.TerminalEditorInstanceContext=new uu("TerminalEditorInstanceContext")}static{this.TerminalNewDropdownContext=new uu("TerminalNewDropdownContext")}static{this.TerminalTabContext=new uu("TerminalTabContext")}static{this.TerminalTabEmptyAreaContext=new uu("TerminalTabEmptyAreaContext")}static{this.TerminalStickyScrollContext=new uu("TerminalStickyScrollContext")}static{this.WebviewContext=new uu("WebviewContext")}static{this.InlineCompletionsActions=new uu("InlineCompletionsActions")}static{this.InlineEditsActions=new uu("InlineEditsActions")}static{this.NewFile=new uu("NewFile")}static{this.MergeInput1Toolbar=new uu("MergeToolbar1Toolbar")}static{this.MergeInput2Toolbar=new uu("MergeToolbar2Toolbar")}static{this.MergeBaseToolbar=new uu("MergeBaseToolbar")}static{this.MergeInputResultToolbar=new uu("MergeToolbarResultToolbar")}static{this.InlineSuggestionToolbar=new uu("InlineSuggestionToolbar")}static{this.InlineEditToolbar=new uu("InlineEditToolbar")}static{this.ChatContext=new uu("ChatContext")}static{this.ChatCodeBlock=new uu("ChatCodeblock")}static{this.ChatCompareBlock=new uu("ChatCompareBlock")}static{this.ChatMessageTitle=new uu("ChatMessageTitle")}static{this.ChatHistory=new uu("ChatHistory")}static{this.ChatWelcomeHistoryContext=new uu("ChatWelcomeHistoryContext")}static{this.ChatMessageFooter=new uu("ChatMessageFooter")}static{this.ChatExecute=new uu("ChatExecute")}static{this.ChatExecuteSecondary=new uu("ChatExecuteSecondary")}static{this.ChatInput=new uu("ChatInput")}static{this.ChatInputSide=new uu("ChatInputSide")}static{this.ChatModePicker=new uu("ChatModePicker")}static{this.ChatEditingWidgetToolbar=new uu("ChatEditingWidgetToolbar")}static{this.ChatEditingEditorContent=new uu("ChatEditingEditorContent")}static{this.ChatEditingEditorHunk=new uu("ChatEditingEditorHunk")}static{this.ChatEditingDeletedNotebookCell=new uu("ChatEditingDeletedNotebookCell")}static{this.ChatInputAttachmentToolbar=new uu("ChatInputAttachmentToolbar")}static{this.ChatEditingWidgetModifiedFilesToolbar=new uu("ChatEditingWidgetModifiedFilesToolbar")}static{this.ChatInputResourceAttachmentContext=new uu("ChatInputResourceAttachmentContext")}static{this.ChatInputSymbolAttachmentContext=new uu("ChatInputSymbolAttachmentContext")}static{this.ChatInlineResourceAnchorContext=new uu("ChatInlineResourceAnchorContext")}static{this.ChatInlineSymbolAnchorContext=new uu("ChatInlineSymbolAnchorContext")}static{this.ChatMessageCheckpoint=new uu("ChatMessageCheckpoint")}static{this.ChatMessageRestoreCheckpoint=new uu("ChatMessageRestoreCheckpoint")}static{this.ChatEditingCodeBlockContext=new uu("ChatEditingCodeBlockContext")}static{this.ChatTitleBarMenu=new uu("ChatTitleBarMenu")}static{this.ChatAttachmentsContext=new uu("ChatAttachmentsContext")}static{this.ChatToolOutputResourceToolbar=new uu("ChatToolOutputResourceToolbar")}static{this.ChatTextEditorMenu=new uu("ChatTextEditorMenu")}static{this.ChatToolOutputResourceContext=new uu("ChatToolOutputResourceContext")}static{this.ChatMultiDiffContext=new uu("ChatMultiDiffContext")}static{this.ChatSessionsMenu=new uu("ChatSessionsMenu")}static{this.ChatConfirmationMenu=new uu("ChatConfirmationMenu")}static{this.AccessibleView=new uu("AccessibleView")}static{this.MultiDiffEditorFileToolbar=new uu("MultiDiffEditorFileToolbar")}static{this.DiffEditorHunkToolbar=new uu("DiffEditorHunkToolbar")}static{this.DiffEditorSelectionToolbar=new uu("DiffEditorSelectionToolbar")}constructor(e){if(uu._instances.has(e))throw new TypeError(`MenuId with identifier '${e}' already exists. Use MenuId.for(ident) or a unique identifier`);uu._instances.set(e,this),this.id=e}}const gu=nh("menuService");class pu{static{this._all=new Map}static for(e){let t=this._all.get(e);return t||(t=new pu(e),this._all.set(e,t)),t}static merge(e){const t=new Set;for(const i of e)i instanceof pu&&t.add(i.id);return t}constructor(e){this.id=e,this.has=t=>t===e}}const mu=new class{constructor(){this._commands=new Map,this._menuItems=new Map,this._onDidChangeMenu=new Xt({merge:pu.merge}),this.onDidChangeMenu=this._onDidChangeMenu.event}addCommand(e){return this._commands.set(e.id,e),this._onDidChangeMenu.fire(pu.for(uu.CommandPalette)),kt(Nt((()=>{this._commands.delete(e.id)&&this._onDidChangeMenu.fire(pu.for(uu.CommandPalette))})))}getCommand(e){return this._commands.get(e)}getCommands(){const e=new Map;return this._commands.forEach(((t,i)=>e.set(i,t))),e}appendMenuItem(e,t){let i=this._menuItems.get(e);i||(i=new Bt,this._menuItems.set(e,i));const n=i.push(t);return this._onDidChangeMenu.fire(pu.for(e)),kt(Nt((()=>{n(),this._onDidChangeMenu.fire(pu.for(e))})))}appendMenuItems(e){const t=new Mt;for(const{id:i,item:n}of e)t.add(this.appendMenuItem(i,n));return t}getMenuItems(e){let t;return t=this._menuItems.has(e)?[...this._menuItems.get(e)]:[],e===uu.CommandPalette&&this._appendImplicitItems(t),t}_appendImplicitItems(e){const t=new Set;for(const i of e)hu(i)&&(t.add(i.command.id),i.alt&&t.add(i.alt.id));this._commands.forEach(((i,n)=>{t.has(n)||e.push({command:i})}))}};class fu extends hh{constructor(e,t,i){super(`submenuitem.${e.submenu.id}`,"string"==typeof e.title?e.title:e.title.value,i,"submenu"),this.item=e,this.hideActions=t}}let _u=du=class{static label(e,t){return t?.renderShortTitle&&e.shortTitle?"string"==typeof e.shortTitle?e.shortTitle:e.shortTitle.value:"string"==typeof e.title?e.title:e.title.value}constructor(e,t,i,n,o,s,r){let a;if(this.hideActions=n,this.menuKeybinding=o,this._commandService=r,this.id=e.id,this.label=du.label(e,i),this.tooltip=("string"==typeof e.tooltip?e.tooltip:e.tooltip?.value)??"",this.enabled=!e.precondition||s.contextMatchesRules(e.precondition),this.checked=void 0,e.toggled){const t=e.toggled.condition?e.toggled:{condition:e.toggled};this.checked=s.contextMatchesRules(t.condition),this.checked&&t.tooltip&&(this.tooltip="string"==typeof t.tooltip?t.tooltip:t.tooltip.value),this.checked&&_c.isThemeIcon(t.icon)&&(a=t.icon),this.checked&&t.title&&(this.label="string"==typeof t.title?t.title:t.title.value)}a||(a=_c.isThemeIcon(e.icon)?e.icon:void 0),this.item=e,this.alt=t?new du(t,void 0,i,n,void 0,s,r):void 0,this._options=i,this.class=a&&_c.asClassName(a)}run(...e){let t=[];return this._options?.arg&&(t=[...t,this._options.arg]),this._options?.shouldForwardArgs&&(t=[...t,...e]),this._commandService.executeCommand(this.id,...t)}};_u=du=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([cu(5,Jh),cu(6,ph)],_u);class vu{constructor(e){this.desc=e}}function bu(e){const t=[],i=new e,{f1:n,menu:o,keybinding:s,...r}=i.desc;if(mh.getCommand(r.id))throw new Error(`Cannot register two commands with the same id: ${r.id}`);if(t.push(mh.registerCommand({id:r.id,handler:(e,...t)=>i.run(e,...t),metadata:r.metadata??{description:i.desc.title}})),Array.isArray(o))for(const e of o)t.push(mu.appendMenuItem(e.id,{command:{...r,precondition:null===e.precondition?void 0:r.precondition},...e}));else o&&t.push(mu.appendMenuItem(o.id,{command:{...r,precondition:null===o.precondition?void 0:r.precondition},...o}));if(n&&(t.push(mu.appendMenuItem(uu.CommandPalette,{command:r,when:r.precondition})),t.push(mu.addCommand(r))),Array.isArray(s))for(const e of s)t.push(au.registerKeybindingRule({...e,id:r.id,when:r.precondition?Th.and(r.precondition,e.when):e.when}));else s&&t.push(au.registerKeybindingRule({...s,id:r.id,when:r.precondition?Th.and(r.precondition,s.when):s.when}));return{dispose(){Et(t)}}}const wu=nh("telemetryService"),Cu=nh("logService"),yu=nh("loggerService");var Su;!function(e){e[e.Off=0]="Off",e[e.Trace=1]="Trace",e[e.Debug=2]="Debug",e[e.Info=3]="Info",e[e.Warning=4]="Warning",e[e.Error=5]="Error"}(Su||(Su={}));const xu=Su.Info;function ku(e,t){return e!==Su.Off&&e<=t}class Lu extends Tt{constructor(){super(...arguments),this.level=xu,this._onDidChangeLogLevel=this._register(new Gt)}get onDidChangeLogLevel(){return this._onDidChangeLogLevel.event}setLevel(e){this.level!==e&&(this.level=e,this._onDidChangeLogLevel.fire(this.level))}getLevel(){return this.level}checkLogLevel(e){return ku(this.level,e)}canLog(e){return!this._store.isDisposed&&this.checkLogLevel(e)}}class Eu extends Lu{constructor(e=xu,t=!0){super(),this.useColors=t,this.setLevel(e)}trace(e,...t){this.canLog(Su.Trace)&&(this.useColors?console.log("%cTRACE","color: #888",e,...t):console.log(e,...t))}debug(e,...t){this.canLog(Su.Debug)&&(this.useColors?console.log("%cDEBUG","background: #eee; color: #888",e,...t):console.log(e,...t))}info(e,...t){this.canLog(Su.Info)&&(this.useColors?console.log("%c INFO","color: #33f",e,...t):console.log(e,...t))}warn(e,...t){this.canLog(Su.Warning)&&(this.useColors?console.warn("%c WARN","color: #993",e,...t):console.log(e,...t))}error(e,...t){this.canLog(Su.Error)&&(this.useColors?console.error("%c ERR","color: #f33",e,...t):console.error(e,...t))}}class Iu extends Lu{constructor(e){super(),this.loggers=e,e.length&&this.setLevel(e[0].getLevel())}setLevel(e){for(const t of this.loggers)t.setLevel(e);super.setLevel(e)}trace(e,...t){for(const i of this.loggers)i.trace(e,...t)}debug(e,...t){for(const i of this.loggers)i.debug(e,...t)}info(e,...t){for(const i of this.loggers)i.info(e,...t)}warn(e,...t){for(const i of this.loggers)i.warn(e,...t)}error(e,...t){for(const i of this.loggers)i.error(e,...t)}dispose(){for(const e of this.loggers)e.dispose();super.dispose()}}class Du extends Tt{constructor(e,t,i){if(super(),this.logLevel=e,this.logsHome=t,this._loggers=new id,this._onDidChangeLoggers=this._register(new Gt),this._onDidChangeVisibility=this._register(new Gt),i)for(const e of i)this._loggers.set(e.resource,{logger:void 0,info:e})}getLoggerEntry(e){return at(e)?[...this._loggers.values()].find((t=>t.info.id===e)):this._loggers.get(e)}createLogger(e,t){const i=this.toResource(e),n=at(e)?e:t?.id??Wo(i.toString()).toString(16);let o=this._loggers.get(i)?.logger;const s="always"===t?.logLevel?Su.Trace:t?.logLevel;o||(o=this.doCreateLogger(i,s??this.getLogLevel(i)??this.logLevel,{...t,id:n}));const r={logger:o,info:{resource:i,id:n,logLevel:s,name:t?.name,hidden:t?.hidden,group:t?.group,extensionId:t?.extensionId,when:t?.when}};return this.registerLogger(r.info),this._loggers.set(i,r),o}toResource(e){return at(e)?Hc(this.logsHome,`${e}.log`):e}setVisibility(e,t){const i=this.getLoggerEntry(e);i&&t!==!i.info.hidden&&(i.info.hidden=!t,this._loggers.set(i.info.resource,i),this._onDidChangeVisibility.fire([i.info.resource,t]))}getLogLevel(e){let t;return e&&(t=this._loggers.get(e)?.info.logLevel),t??this.logLevel}registerLogger(e){const t=this._loggers.get(e.resource);t?t.info.hidden!==e.hidden&&this.setVisibility(e.resource,!e.hidden):(this._loggers.set(e.resource,{info:e,logger:void 0}),this._onDidChangeLoggers.fire({added:[e],removed:[]}))}dispose(){this._loggers.forEach((e=>e.logger?.dispose())),this._loggers.clear(),super.dispose()}}class Nu{constructor(){this.onDidChangeLogLevel=(new Gt).event}setLevel(e){}getLevel(){return Su.Info}trace(e,...t){}debug(e,...t){}info(e,...t){}warn(e,...t){}error(e,...t){}dispose(){}}new Xh("logLevel",function(e){switch(e){case Su.Trace:return"trace";case Su.Debug:return"debug";case Su.Info:return"info";case Su.Warning:return"warn";case Su.Error:return"error";case Su.Off:return"off"}}(Su.Info));class Mu{constructor(e){this.id=e.id,this.precondition=e.precondition,this._kbOpts=e.kbOpts,this._menuOpts=e.menuOpts,this.metadata=e.metadata}register(){if(Array.isArray(this._menuOpts)?this._menuOpts.forEach(this._registerMenuItem,this):this._menuOpts&&this._registerMenuItem(this._menuOpts),this._kbOpts){const e=Array.isArray(this._kbOpts)?this._kbOpts:[this._kbOpts];for(const t of e){let e=t.kbExpr;this.precondition&&(e=e?Th.and(e,this.precondition):this.precondition);const i={id:this.id,weight:t.weight,args:t.args,when:e,primary:t.primary,secondary:t.secondary,win:t.win,linux:t.linux,mac:t.mac};au.registerKeybindingRule(i)}}mh.registerCommand({id:this.id,handler:(e,t)=>this.runCommand(e,t),metadata:this.metadata})}_registerMenuItem(e){mu.appendMenuItem(e.menuId,{group:e.group,command:{id:this.id,title:e.title,icon:e.icon,precondition:this.precondition},when:e.when,order:e.order})}}class Tu extends Mu{constructor(){super(...arguments),this._implementations=[]}addImplementation(e,t,i,n){return this._implementations.push({priority:e,name:t,implementation:i,when:n}),this._implementations.sort(((e,t)=>t.priority-e.priority)),{dispose:()=>{for(let e=0;e{if(e.get(Jh).contextMatchesRules(i??void 0))return n(e,s,t)}))}runCommand(e,t){return Au.runEditorCommand(e,t,this.precondition,((e,t,i)=>this.runEditorCommand(e,t,i)))}}class Ou extends Au{static convertOptions(e){let t;function i(t){return t.menuId||(t.menuId=uu.EditorContext),t.title||(t.title="string"==typeof e.label?e.label:e.label.value),t.when=Th.and(e.precondition,t.when),t}return t=Array.isArray(e.menuOpts)?e.menuOpts:e.menuOpts?[e.menuOpts]:[],Array.isArray(e.contextMenuOpts)?t.push(...e.contextMenuOpts.map(i)):e.contextMenuOpts&&t.push(i(e.contextMenuOpts)),e.menuOpts=t,e}constructor(e){super(Ou.convertOptions(e)),"string"==typeof e.label?(this.label=e.label,this.alias=e.alias??e.label):(this.label=e.label.value,this.alias=e.alias??e.label.original)}runEditorCommand(e,t,i){return this.reportTelemetry(e,t),this.run(e,t,i||{})}reportTelemetry(e,t){e.get(wu).publicLog2("editorActionInvoked",{name:this.label,id:this.id})}}class Pu extends Ou{constructor(){super(...arguments),this._implementations=[]}addImplementation(e,t){return this._implementations.push([e,t]),this._implementations.sort(((e,t)=>t[0]-e[0])),{dispose:()=>{for(let e=0;e{const i=e.get(Jh),o=e.get(Cu);if(i.contextMatchesRules(this.desc.precondition??void 0))return this.runEditorCommand(e,n,...t);o.debug("[EditorAction2] NOT running command because its precondition is FALSE",this.desc.id,this.desc.precondition?.serialize())}))}}function Bu(e,t){mh.registerCommand(e,(function(e,...i){const n=e.get(ih),[o,s]=i;ft(ho.isUri(o)),ft(sh.isIPosition(s));const r=e.get(rh).getModel(o);if(r){const e=sh.lift(s);return n.invokeFunction(t,r,e,...i.slice(2))}return e.get(ah).createModelReference(o).then((e=>new Promise(((o,r)=>{try{o(n.invokeFunction(t,e.object.textEditorModel,sh.lift(s),i.slice(2)))}catch(e){r(e)}})).finally((()=>{e.dispose()}))))}))}function Wu(e){return ju.INSTANCE.registerEditorCommand(e),e}function Hu(e){const t=new e;return ju.INSTANCE.registerEditorAction(t),t}function Vu(e){return ju.INSTANCE.registerEditorAction(e),e}function zu(e,t,i){ju.INSTANCE.registerEditorContribution(e,t,i)}var Uu;!function(e){e.getEditorCommand=function(e){return ju.INSTANCE.getEditorCommand(e)},e.getEditorActions=function(){return ju.INSTANCE.getEditorActions()},e.getEditorContributions=function(){return ju.INSTANCE.getEditorContributions()},e.getSomeEditorContributions=function(e){return ju.INSTANCE.getEditorContributions().filter((t=>e.indexOf(t.id)>=0))},e.getDiffEditorContributions=function(){return ju.INSTANCE.getDiffEditorContributions()}}(Uu||(Uu={}));class ju{static{this.INSTANCE=new ju}constructor(){this.editorContributions=[],this.diffEditorContributions=[],this.editorActions=[],this.editorCommands=Object.create(null)}registerEditorContribution(e,t,i){this.editorContributions.push({id:e,ctor:t,instantiation:i})}getEditorContributions(){return this.editorContributions.slice(0)}getDiffEditorContributions(){return this.diffEditorContributions.slice(0)}registerEditorAction(e){e.register(),this.editorActions.push(e)}getEditorActions(){return this.editorActions}registerEditorCommand(e){e.register(),this.editorCommands[e.id]=e}getEditorCommand(e){return this.editorCommands[e]||null}}function Ku(e){return e.register(),e}su.add("editor.contributions",ju.INSTANCE);const qu=Ku(new Tu({id:"undo",precondition:void 0,kbOpts:{weight:0,primary:2104},menuOpts:[{menuId:uu.MenubarEditMenu,group:"1_do",title:C(64,"&&Undo"),order:1},{menuId:uu.CommandPalette,group:"",title:C(65,"Undo"),order:1},{menuId:uu.SimpleEditorContext,group:"1_do",title:C(66,"Undo"),order:1}]}));Ku(new Ru(qu,{id:"default:undo",precondition:void 0}));const $u=Ku(new Tu({id:"redo",precondition:void 0,kbOpts:{weight:0,primary:2103,secondary:[3128],mac:{primary:3128}},menuOpts:[{menuId:uu.MenubarEditMenu,group:"1_do",title:C(67,"&&Redo"),order:2},{menuId:uu.CommandPalette,group:"",title:C(68,"Redo"),order:1},{menuId:uu.SimpleEditorContext,group:"1_do",title:C(69,"Redo"),order:2}]}));Ku(new Ru($u,{id:"default:redo",precondition:void 0}));const Gu=Ku(new Tu({id:"editor.action.selectAll",precondition:void 0,kbOpts:{weight:0,kbExpr:null,primary:2079},menuOpts:[{menuId:uu.MenubarSelectionMenu,group:"1_basic",title:C(70,"&&Select All"),order:1},{menuId:uu.CommandPalette,group:"",title:C(71,"Select All"),order:1},{menuId:uu.SimpleEditorContext,group:"9_select",title:C(72,"Select All"),order:1}]}));class Yu{constructor(e,t,i,n){e>i||e===i&&t>n?(this.startLineNumber=i,this.startColumn=n,this.endLineNumber=e,this.endColumn=t):(this.startLineNumber=e,this.startColumn=t,this.endLineNumber=i,this.endColumn=n)}isEmpty(){return Yu.isEmpty(this)}static isEmpty(e){return e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn}containsPosition(e){return Yu.containsPosition(this,e)}static containsPosition(e,t){return!(t.lineNumbere.endLineNumber||t.lineNumber===e.startLineNumber&&t.columne.endColumn)}static strictContainsPosition(e,t){return!(t.lineNumbere.endLineNumber||t.lineNumber===e.startLineNumber&&t.column<=e.startColumn||t.lineNumber===e.endLineNumber&&t.column>=e.endColumn)}containsRange(e){return Yu.containsRange(this,e)}static containsRange(e,t){return!(t.startLineNumbere.endLineNumber||t.endLineNumber>e.endLineNumber||t.startLineNumber===e.startLineNumber&&t.startColumne.endColumn)}strictContainsRange(e){return Yu.strictContainsRange(this,e)}static strictContainsRange(e,t){return!(t.startLineNumbere.endLineNumber||t.endLineNumber>e.endLineNumber||t.startLineNumber===e.startLineNumber&&t.startColumn<=e.startColumn||t.endLineNumber===e.endLineNumber&&t.endColumn>=e.endColumn)}plusRange(e){return Yu.plusRange(this,e)}static plusRange(e,t){let i,n,o,s;return t.startLineNumbere.endLineNumber?(o=t.endLineNumber,s=t.endColumn):t.endLineNumber===e.endLineNumber?(o=t.endLineNumber,s=Math.max(t.endColumn,e.endColumn)):(o=e.endLineNumber,s=e.endColumn),new Yu(i,n,o,s)}intersectRanges(e){return Yu.intersectRanges(this,e)}static intersectRanges(e,t){let i=e.startLineNumber,n=e.startColumn,o=e.endLineNumber,s=e.endColumn;const r=t.startLineNumber,a=t.startColumn,l=t.endLineNumber,d=t.endColumn;return il?(o=l,s=d):o===l&&(s=Math.min(s,d)),i>o||i===o&&n>s?null:new Yu(i,n,o,s)}equalsRange(e){return Yu.equalsRange(this,e)}static equalsRange(e,t){return!e&&!t||!!e&&!!t&&e.startLineNumber===t.startLineNumber&&e.startColumn===t.startColumn&&e.endLineNumber===t.endLineNumber&&e.endColumn===t.endColumn}getEndPosition(){return Yu.getEndPosition(this)}static getEndPosition(e){return new sh(e.endLineNumber,e.endColumn)}getStartPosition(){return Yu.getStartPosition(this)}static getStartPosition(e){return new sh(e.startLineNumber,e.startColumn)}toString(){return"["+this.startLineNumber+","+this.startColumn+" -> "+this.endLineNumber+","+this.endColumn+"]"}setEndPosition(e,t){return new Yu(this.startLineNumber,this.startColumn,e,t)}setStartPosition(e,t){return new Yu(e,t,this.endLineNumber,this.endColumn)}collapseToStart(){return Yu.collapseToStart(this)}static collapseToStart(e){return new Yu(e.startLineNumber,e.startColumn,e.startLineNumber,e.startColumn)}collapseToEnd(){return Yu.collapseToEnd(this)}static collapseToEnd(e){return new Yu(e.endLineNumber,e.endColumn,e.endLineNumber,e.endColumn)}delta(e){return new Yu(this.startLineNumber+e,this.startColumn,this.endLineNumber+e,this.endColumn)}isSingleLine(){return this.startLineNumber===this.endLineNumber}static fromPositions(e,t=e){return new Yu(e.lineNumber,e.column,t.lineNumber,t.column)}static lift(e){return e?new Yu(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):null}static isIRange(e){return e&&"number"==typeof e.startLineNumber&&"number"==typeof e.startColumn&&"number"==typeof e.endLineNumber&&"number"==typeof e.endColumn}static areIntersectingOrTouching(e,t){return!(e.endLineNumbere.startLineNumber}toJSON(){return this}}class Zu extends Yu{constructor(e,t,i,n){super(e,t,i,n),this.selectionStartLineNumber=e,this.selectionStartColumn=t,this.positionLineNumber=i,this.positionColumn=n}toString(){return"["+this.selectionStartLineNumber+","+this.selectionStartColumn+" -> "+this.positionLineNumber+","+this.positionColumn+"]"}equalsSelection(e){return Zu.selectionsEqual(this,e)}static selectionsEqual(e,t){return e.selectionStartLineNumber===t.selectionStartLineNumber&&e.selectionStartColumn===t.selectionStartColumn&&e.positionLineNumber===t.positionLineNumber&&e.positionColumn===t.positionColumn}getDirection(){return this.selectionStartLineNumber===this.startLineNumber&&this.selectionStartColumn===this.startColumn?0:1}setEndPosition(e,t){return 0===this.getDirection()?new Zu(this.startLineNumber,this.startColumn,e,t):new Zu(e,t,this.startLineNumber,this.startColumn)}getPosition(){return new sh(this.positionLineNumber,this.positionColumn)}getSelectionStart(){return new sh(this.selectionStartLineNumber,this.selectionStartColumn)}setStartPosition(e,t){return 0===this.getDirection()?new Zu(e,t,this.endLineNumber,this.endColumn):new Zu(this.endLineNumber,this.endColumn,e,t)}static fromPositions(e,t=e){return new Zu(e.lineNumber,e.column,t.lineNumber,t.column)}static fromRange(e,t){return 0===t?new Zu(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):new Zu(e.endLineNumber,e.endColumn,e.startLineNumber,e.startColumn)}static liftSelection(e){return new Zu(e.selectionStartLineNumber,e.selectionStartColumn,e.positionLineNumber,e.positionColumn)}static selectionsArrEqual(e,t){if(e&&!t||!e&&t)return!1;if(!e&&!t)return!0;if(e.length!==t.length)return!1;for(let i=0,n=e.length;ithis.selectionAnchorSetContextKey.reset()))}setSelectionAnchor(){if(this.editor.hasModel()){const e=this.editor.getPosition();this.editor.changeDecorations((t=>{this.decorationId&&t.removeDecoration(this.decorationId),this.decorationId=t.addDecoration(Zu.fromPositions(e,e),{description:"selection-anchor",stickiness:1,hoverMessage:(new $c).appendText(C(794,"Selection Anchor")),className:"selection-anchor"})})),this.selectionAnchorSetContextKey.set(!!this.decorationId),Yl(C(795,"Anchor set at {0}:{1}",e.lineNumber,e.column))}}goToSelectionAnchor(){if(this.editor.hasModel()&&this.decorationId){const e=this.editor.getModel().getDecorationRange(this.decorationId);e&&this.editor.setPosition(e.getStartPosition())}}selectFromAnchorToCursor(){if(this.editor.hasModel()&&this.decorationId){const e=this.editor.getModel().getDecorationRange(this.decorationId);if(e){const t=this.editor.getPosition();this.editor.setSelection(Zu.fromPositions(e.getStartPosition(),t)),this.cancelSelectionAnchor()}}}cancelSelectionAnchor(){if(this.decorationId){const e=this.decorationId;this.editor.changeDecorations((t=>{t.removeDecoration(e),this.decorationId=void 0})),this.selectionAnchorSetContextKey.set(!1)}}dispose(){this.cancelSelectionAnchor(),this.modelChangeListener.dispose()}};var tg,ig;eg=Xu=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([(tg=1,ig=Jh,function(e,t){ig(e,t,tg)})],eg),zu(eg.ID,eg,4),Hu(class extends Ou{constructor(){super({id:"editor.action.setSelectionAnchor",label:S(796,"Set Selection Anchor"),precondition:void 0,kbOpts:{kbExpr:Qu.editorTextFocus,primary:Le(2089,2080),weight:100}})}async run(e,t){eg.get(t)?.setSelectionAnchor()}}),Hu(class extends Ou{constructor(){super({id:"editor.action.goToSelectionAnchor",label:S(797,"Go to Selection Anchor"),precondition:Ju})}async run(e,t){eg.get(t)?.goToSelectionAnchor()}}),Hu(class extends Ou{constructor(){super({id:"editor.action.selectFromAnchorToCursor",label:S(798,"Select from Anchor to Cursor"),precondition:Ju,kbOpts:{kbExpr:Qu.editorTextFocus,primary:Le(2089,2089),weight:100}})}async run(e,t){eg.get(t)?.selectFromAnchorToCursor()}}),Hu(class extends Ou{constructor(){super({id:"editor.action.cancelSelectionAnchor",label:S(799,"Cancel Selection Anchor"),precondition:Ju,kbOpts:{kbExpr:Qu.editorTextFocus,primary:9,weight:100}})}async run(e,t){eg.get(t)?.cancelSelectionAnchor()}});var ng=i(7997),og={};function sg(e){if(!e||"object"!=typeof e)return e;if(e instanceof RegExp)return e;const t=Array.isArray(e)?[]:{};return Object.entries(e).forEach((([e,i])=>{t[e]=i&&"object"==typeof i?sg(i):i})),t}og.styleTagTransform=Vl(),og.setAttributes=Fl(),og.insert=Ol().bind(null,"head"),og.domAPI=Rl(),og.insertStyleElement=Wl(),Ml()(ng.A,og),ng.A&&ng.A.locals&&ng.A.locals;const rg=Object.prototype.hasOwnProperty;function ag(e,t){return lg(e,t,new Set)}function lg(e,t,i){if(mt(e))return e;const n=t(e);if(void 0!==n)return n;if(Array.isArray(e)){const n=[];for(const o of e)n.push(lg(o,t,i));return n}if(lt(e)){if(i.has(e))throw new Error("Cannot clone recursive data-structure");i.add(e);const n={};for(const o in e)rg.call(e,o)&&(n[o]=lg(e[o],t,i));return i.delete(e),n}return e}function dg(e,t,i=!0){return lt(e)?(lt(t)&&Object.keys(t).forEach((n=>{n in e?i&&(lt(e[n])&<(t[n])?dg(e[n],t[n],i):e[n]=t[n]):e[n]=t[n]})),e):t}function cg(e,t){if(e===t)return!0;if(null==e||null==t)return!1;if(typeof e!=typeof t)return!1;if("object"!=typeof e)return!1;if(Array.isArray(e)!==Array.isArray(t))return!1;let i,n;if(Array.isArray(e)){if(e.length!==t.length)return!1;for(i=0;i0){switch(l=Math.min(d<=.5?c/(2*d):c/(2-2*d),1),s){case t:a=(i-n)/c+(i1&&(i-=1),i<1/6?e+6*(t-e)*i:i<.5?t:i<2/3?e+(t-e)*(2/3-i)*6:e}static toRGBA(e){const t=e.h/360,{s:i,l:n,a:o}=e;let s,r,a;if(0===i)s=r=a=n;else{const e=n<.5?n*(1+i):n+i-n*i,o=2*n-e;s=Sg._hue2rgb(o,e,t+1/3),r=Sg._hue2rgb(o,e,t),a=Sg._hue2rgb(o,e,t-1/3)}return new yg(Math.round(255*s),Math.round(255*r),Math.round(255*a),o)}}class xg{constructor(e,t,i,n){this._hsvaBrand=void 0,this.h=0|Math.max(Math.min(360,e),0),this.s=Cg(Math.max(Math.min(1,t),0),3),this.v=Cg(Math.max(Math.min(1,i),0),3),this.a=Cg(Math.max(Math.min(1,n),0),3)}static equals(e,t){return e.h===t.h&&e.s===t.s&&e.v===t.v&&e.a===t.a}static fromRGBA(e){const t=e.r/255,i=e.g/255,n=e.b/255,o=Math.max(t,i,n),s=o-Math.min(t,i,n),r=0===o?0:s/o;let a;return a=0===s?0:o===t?((i-n)/s%6+6)%6:o===i?(n-t)/s+2:(t-i)/s+4,new xg(Math.round(60*a),r,o,e.a)}static toRGBA(e){const{h:t,s:i,v:n,a:o}=e,s=n*i,r=s*(1-Math.abs(t/60%2-1)),a=n-s;let[l,d,c]=[0,0,0];return t<60?(l=s,d=r):t<120?(l=r,d=s):t<180?(d=s,c=r):t<240?(d=r,c=s):t<300?(l=r,c=s):t<=360&&(l=s,c=r),l=Math.round(255*(l+a)),d=Math.round(255*(d+a)),c=Math.round(255*(c+a)),new yg(l,d,c,o)}}class kg{static fromHex(e){return kg.Format.CSS.parseHex(e)||kg.red}static equals(e,t){return!e&&!t||!(!e||!t)&&e.equals(t)}get hsla(){return this._hsla?this._hsla:Sg.fromRGBA(this.rgba)}get hsva(){return this._hsva?this._hsva:xg.fromRGBA(this.rgba)}constructor(e){if(!e)throw new Error("Color needs a value");if(e instanceof yg)this.rgba=e;else if(e instanceof Sg)this._hsla=e,this.rgba=Sg.toRGBA(e);else{if(!(e instanceof xg))throw new Error("Invalid color ctor argument");this._hsva=e,this.rgba=xg.toRGBA(e)}}equals(e){return!!e&&yg.equals(this.rgba,e.rgba)&&Sg.equals(this.hsla,e.hsla)&&xg.equals(this.hsva,e.hsva)}getRelativeLuminance(){return Cg(.2126*kg._relativeLuminanceForComponent(this.rgba.r)+.7152*kg._relativeLuminanceForComponent(this.rgba.g)+.0722*kg._relativeLuminanceForComponent(this.rgba.b),4)}static _relativeLuminanceForComponent(e){const t=e/255;return t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4)}isLighter(){return(299*this.rgba.r+587*this.rgba.g+114*this.rgba.b)/1e3>=128}isLighterThan(e){return this.getRelativeLuminance()>e.getRelativeLuminance()}isDarkerThan(e){return this.getRelativeLuminance()>>0),this._toNumber32Bit}static getLighterColor(e,t,i){if(e.isLighterThan(t))return e;i=i||.5;const n=e.getRelativeLuminance(),o=t.getRelativeLuminance();return i=i*(o-n)/o,e.lighten(i)}static getDarkerColor(e,t,i){if(e.isDarkerThan(t))return e;i=i||.5;const n=e.getRelativeLuminance();return i=i*(n-t.getRelativeLuminance())/n,e.darken(i)}static{this.white=new kg(new yg(255,255,255,1))}static{this.black=new kg(new yg(0,0,0,1))}static{this.red=new kg(new yg(255,0,0,1))}static{this.blue=new kg(new yg(0,0,255,1))}static{this.green=new kg(new yg(0,255,0,1))}static{this.cyan=new kg(new yg(0,255,255,1))}static{this.lightgrey=new kg(new yg(211,211,211,1))}static{this.transparent=new kg(new yg(0,0,0,0))}}function Lg(e){let t=0,i=0,n=0,o=0;for(let s=0,r=e.length;s(?:\+|-)?\d+), *(?(?:\+|-)?\d+), *(?(?:\+|-)?\d+), *(?(?:\+|-)?\d+(\.\d+)?)\)/);if(!i)throw new Error("Invalid color format "+t);const n=parseInt(i.groups?.r??"0"),o=parseInt(i.groups?.g??"0"),s=parseInt(i.groups?.b??"0"),r=parseFloat(i.groups?.a??"0");return new e(new yg(n,o,s,r))}if(t.startsWith("rgb(")){const i=t.match(/rgb\((?(?:\+|-)?\d+), *(?(?:\+|-)?\d+), *(?(?:\+|-)?\d+)\)/);if(!i)throw new Error("Invalid color format "+t);const n=parseInt(i.groups?.r??"0"),o=parseInt(i.groups?.g??"0"),s=parseInt(i.groups?.b??"0");return new e(new yg(n,o,s))}return function(t){switch(t){case"aliceblue":return new e(new yg(240,248,255,1));case"antiquewhite":return new e(new yg(250,235,215,1));case"aqua":case"cyan":return new e(new yg(0,255,255,1));case"aquamarine":return new e(new yg(127,255,212,1));case"azure":return new e(new yg(240,255,255,1));case"beige":return new e(new yg(245,245,220,1));case"bisque":return new e(new yg(255,228,196,1));case"black":return new e(new yg(0,0,0,1));case"blanchedalmond":return new e(new yg(255,235,205,1));case"blue":return new e(new yg(0,0,255,1));case"blueviolet":return new e(new yg(138,43,226,1));case"brown":return new e(new yg(165,42,42,1));case"burlywood":return new e(new yg(222,184,135,1));case"cadetblue":return new e(new yg(95,158,160,1));case"chartreuse":return new e(new yg(127,255,0,1));case"chocolate":return new e(new yg(210,105,30,1));case"coral":return new e(new yg(255,127,80,1));case"cornflowerblue":return new e(new yg(100,149,237,1));case"cornsilk":return new e(new yg(255,248,220,1));case"crimson":return new e(new yg(220,20,60,1));case"darkblue":return new e(new yg(0,0,139,1));case"darkcyan":return new e(new yg(0,139,139,1));case"darkgoldenrod":return new e(new yg(184,134,11,1));case"darkgray":case"darkgrey":return new e(new yg(169,169,169,1));case"darkgreen":return new e(new yg(0,100,0,1));case"darkkhaki":return new e(new yg(189,183,107,1));case"darkmagenta":return new e(new yg(139,0,139,1));case"darkolivegreen":return new e(new yg(85,107,47,1));case"darkorange":return new e(new yg(255,140,0,1));case"darkorchid":return new e(new yg(153,50,204,1));case"darkred":return new e(new yg(139,0,0,1));case"darksalmon":return new e(new yg(233,150,122,1));case"darkseagreen":return new e(new yg(143,188,143,1));case"darkslateblue":return new e(new yg(72,61,139,1));case"darkslategray":case"darkslategrey":return new e(new yg(47,79,79,1));case"darkturquoise":return new e(new yg(0,206,209,1));case"darkviolet":return new e(new yg(148,0,211,1));case"deeppink":return new e(new yg(255,20,147,1));case"deepskyblue":return new e(new yg(0,191,255,1));case"dimgray":case"dimgrey":return new e(new yg(105,105,105,1));case"dodgerblue":return new e(new yg(30,144,255,1));case"firebrick":return new e(new yg(178,34,34,1));case"floralwhite":return new e(new yg(255,250,240,1));case"forestgreen":return new e(new yg(34,139,34,1));case"fuchsia":case"magenta":return new e(new yg(255,0,255,1));case"gainsboro":return new e(new yg(220,220,220,1));case"ghostwhite":return new e(new yg(248,248,255,1));case"gold":return new e(new yg(255,215,0,1));case"goldenrod":return new e(new yg(218,165,32,1));case"gray":case"grey":return new e(new yg(128,128,128,1));case"green":return new e(new yg(0,128,0,1));case"greenyellow":return new e(new yg(173,255,47,1));case"honeydew":return new e(new yg(240,255,240,1));case"hotpink":return new e(new yg(255,105,180,1));case"indianred":return new e(new yg(205,92,92,1));case"indigo":return new e(new yg(75,0,130,1));case"ivory":return new e(new yg(255,255,240,1));case"khaki":return new e(new yg(240,230,140,1));case"lavender":return new e(new yg(230,230,250,1));case"lavenderblush":return new e(new yg(255,240,245,1));case"lawngreen":return new e(new yg(124,252,0,1));case"lemonchiffon":return new e(new yg(255,250,205,1));case"lightblue":return new e(new yg(173,216,230,1));case"lightcoral":return new e(new yg(240,128,128,1));case"lightcyan":return new e(new yg(224,255,255,1));case"lightgoldenrodyellow":return new e(new yg(250,250,210,1));case"lightgray":case"lightgrey":return new e(new yg(211,211,211,1));case"lightgreen":return new e(new yg(144,238,144,1));case"lightpink":return new e(new yg(255,182,193,1));case"lightsalmon":return new e(new yg(255,160,122,1));case"lightseagreen":return new e(new yg(32,178,170,1));case"lightskyblue":return new e(new yg(135,206,250,1));case"lightslategray":case"lightslategrey":return new e(new yg(119,136,153,1));case"lightsteelblue":return new e(new yg(176,196,222,1));case"lightyellow":return new e(new yg(255,255,224,1));case"lime":return new e(new yg(0,255,0,1));case"limegreen":return new e(new yg(50,205,50,1));case"linen":return new e(new yg(250,240,230,1));case"maroon":return new e(new yg(128,0,0,1));case"mediumaquamarine":return new e(new yg(102,205,170,1));case"mediumblue":return new e(new yg(0,0,205,1));case"mediumorchid":return new e(new yg(186,85,211,1));case"mediumpurple":return new e(new yg(147,112,219,1));case"mediumseagreen":return new e(new yg(60,179,113,1));case"mediumslateblue":return new e(new yg(123,104,238,1));case"mediumspringgreen":return new e(new yg(0,250,154,1));case"mediumturquoise":return new e(new yg(72,209,204,1));case"mediumvioletred":return new e(new yg(199,21,133,1));case"midnightblue":return new e(new yg(25,25,112,1));case"mintcream":return new e(new yg(245,255,250,1));case"mistyrose":return new e(new yg(255,228,225,1));case"moccasin":return new e(new yg(255,228,181,1));case"navajowhite":return new e(new yg(255,222,173,1));case"navy":return new e(new yg(0,0,128,1));case"oldlace":return new e(new yg(253,245,230,1));case"olive":return new e(new yg(128,128,0,1));case"olivedrab":return new e(new yg(107,142,35,1));case"orange":return new e(new yg(255,165,0,1));case"orangered":return new e(new yg(255,69,0,1));case"orchid":return new e(new yg(218,112,214,1));case"palegoldenrod":return new e(new yg(238,232,170,1));case"palegreen":return new e(new yg(152,251,152,1));case"paleturquoise":return new e(new yg(175,238,238,1));case"palevioletred":return new e(new yg(219,112,147,1));case"papayawhip":return new e(new yg(255,239,213,1));case"peachpuff":return new e(new yg(255,218,185,1));case"peru":return new e(new yg(205,133,63,1));case"pink":return new e(new yg(255,192,203,1));case"plum":return new e(new yg(221,160,221,1));case"powderblue":return new e(new yg(176,224,230,1));case"purple":return new e(new yg(128,0,128,1));case"rebeccapurple":return new e(new yg(102,51,153,1));case"red":return new e(new yg(255,0,0,1));case"rosybrown":return new e(new yg(188,143,143,1));case"royalblue":return new e(new yg(65,105,225,1));case"saddlebrown":return new e(new yg(139,69,19,1));case"salmon":return new e(new yg(250,128,114,1));case"sandybrown":return new e(new yg(244,164,96,1));case"seagreen":return new e(new yg(46,139,87,1));case"seashell":return new e(new yg(255,245,238,1));case"sienna":return new e(new yg(160,82,45,1));case"silver":return new e(new yg(192,192,192,1));case"skyblue":return new e(new yg(135,206,235,1));case"slateblue":return new e(new yg(106,90,205,1));case"slategray":case"slategrey":return new e(new yg(112,128,144,1));case"snow":return new e(new yg(255,250,250,1));case"springgreen":return new e(new yg(0,255,127,1));case"steelblue":return new e(new yg(70,130,180,1));case"tan":return new e(new yg(210,180,140,1));case"teal":return new e(new yg(0,128,128,1));case"thistle":return new e(new yg(216,191,216,1));case"tomato":return new e(new yg(255,99,71,1));case"turquoise":return new e(new yg(64,224,208,1));case"violet":return new e(new yg(238,130,238,1));case"wheat":return new e(new yg(245,222,179,1));case"white":return new e(new yg(255,255,255,1));case"whitesmoke":return new e(new yg(245,245,245,1));case"yellow":return new e(new yg(255,255,0,1));case"yellowgreen":return new e(new yg(154,205,50,1));default:return null}}(t)},t.parseHex=n}(i=t.CSS||(t.CSS={}))}(t=e.Format||(e.Format={}))}(kg||(kg={}));class Eg{static _nextVisibleColumn(e,t,i){return 9===e?Eg.nextRenderTabStop(t,i):Cn(e)||yn(e)?t+2:t+1}static visibleColumnFromColumn(e,t,i){const n=Math.min(t-1,e.length),o=e.substring(0,n),s=new un(o);let r=0;for(;!s.eol();){const e=cn(o,n,s.offset);s.nextGraphemeLength(),r=this._nextVisibleColumn(e,r,i)}return r}static columnFromVisibleColumn(e,t,i){if(t<=0)return 1;const n=e.length,o=new un(e);let s=0,r=1;for(;!o.eol();){const a=cn(e,n,o.offset);o.nextGraphemeLength();const l=this._nextVisibleColumn(a,s,i),d=o.offset+1;if(l>=t)return l-t/?",Tg=function(e=""){let t="(-?\\d*\\.\\d\\w*)|([^";for(const i of Mg)e.indexOf(i)>=0||(t+="\\"+i);return t+="\\s]+)",new RegExp(t,"g")}();function Rg(e){let t=Tg;if(e&&e instanceof RegExp)if(e.global)t=e;else{let i="g";e.ignoreCase&&(i+="i"),e.multiline&&(i+="m"),e.unicode&&(i+="u"),t=new RegExp(e.source,i)}return t.lastIndex=0,t}const Ag=new Bt;function Og(e,t,i,n,o){if(t=Rg(t),o||(o=wt.first(Ag)),i.length>o.maxLen){let s=e-o.maxLen/2;return s<0?s=0:n+=s,Og(e,t,i=i.substring(s,e+o.maxLen/2),n,o)}const s=Date.now(),r=e-1-n;let a=-1,l=null;for(let e=1;!(Date.now()-s>=o.timeBudget);e++){const n=r-o.windowSize*e;t.lastIndex=Math.max(0,n);const s=Pg(t,i,r,a);if(!s&&l)break;if(l=s,n<=0)break;a=n}if(l){const e={word:l[0],startColumn:n+1+l.index,endColumn:n+1+l.index+l[0].length};return t.lastIndex=0,e}return null}function Pg(e,t,i,n){let o;for(;o=e.exec(t);){const t=o.index||0;if(t<=i&&e.lastIndex>=i)return o;if(n>0&&t>n)return null}return null}var Fg;Ag.unshift({maxLen:1e3,windowSize:15,timeBudget:150}),function(e){e[e.None=0]="None",e[e.Indent=1]="Indent",e[e.IndentOutdent=2]="IndentOutdent",e[e.Outdent=3]="Outdent"}(Fg||(Fg={}));class Bg{constructor(e){if(this._neutralCharacter=null,this._neutralCharacterSearched=!1,this.open=e.open,this.close=e.close,this._inString=!0,this._inComment=!0,this._inRegEx=!0,Array.isArray(e.notIn))for(let t=0,i=e.notIn.length;t \n\t"}constructor(e){if(e.autoClosingPairs?this._autoClosingPairs=e.autoClosingPairs.map((e=>new Bg(e))):e.brackets?this._autoClosingPairs=e.brackets.map((e=>new Bg({open:e[0],close:e[1]}))):this._autoClosingPairs=[],e.__electricCharacterSupport&&e.__electricCharacterSupport.docComment){const t=e.__electricCharacterSupport.docComment;this._autoClosingPairs.push(new Bg({open:t.open,close:t.close||""}))}this._autoCloseBeforeForQuotes="string"==typeof e.autoCloseBefore?e.autoCloseBefore:Vg.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES,this._autoCloseBeforeForBrackets="string"==typeof e.autoCloseBefore?e.autoCloseBefore:Vg.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_BRACKETS,this._surroundingPairs=e.surroundingPairs||this._autoClosingPairs}getAutoClosingPairs(){return this._autoClosingPairs}getAutoCloseBeforeSet(e){return e?this._autoCloseBeforeForQuotes:this._autoCloseBeforeForBrackets}getSurroundingPairs(){return this._surroundingPairs}}function zg(e,t){const i=e.getCount(),n=e.findTokenIndexAtOffset(t),o=e.getLanguageId(n);let s=n;for(;s+10&&e.getLanguageId(r-1)===o;)r--;return new Ug(e,o,r,s+1,e.getStartOffset(r),e.getEndOffset(s))}class Ug{constructor(e,t,i,n,o,s){this._scopedLineTokensBrand=void 0,this._actual=e,this.languageId=t,this._firstTokenIndex=i,this._lastTokenIndex=n,this.firstCharOffset=o,this._lastCharOffset=s,this.languageIdCodec=e.languageIdCodec}getLineContent(){return this._actual.getLineContent().substring(this.firstCharOffset,this._lastCharOffset)}getLineLength(){return this._lastCharOffset-this.firstCharOffset}getActualLineContentBefore(e){return this._actual.getLineContent().substring(0,this.firstCharOffset+e)}getTokenCount(){return this._lastTokenIndex-this._firstTokenIndex}findTokenIndexAtOffset(e){return this._actual.findTokenIndexAtOffset(e+this.firstCharOffset)-this._firstTokenIndex}getStandardTokenType(e){return this._actual.getStandardTokenType(e+this._firstTokenIndex)}toIViewLineTokens(){return this._actual.sliceAndInflate(this.firstCharOffset,this._lastCharOffset,0)}}function jg(e){return!!(3&e)}let Kg,qg,$g;function Gg(){return Kg||(Kg=new TextDecoder("UTF-16LE")),Kg}function Yg(){return $g||($g=ae()?Gg():(qg||(qg=new TextDecoder("UTF-16BE")),qg)),$g}class Zg{constructor(e){this._capacity=0|e,this._buffer=new Uint16Array(this._capacity),this._completedStrings=null,this._bufferLength=0}reset(){this._completedStrings=null,this._bufferLength=0}build(){return null!==this._completedStrings?(this._flushBuffer(),this._completedStrings.join("")):this._buildBuffer()}_buildBuffer(){if(0===this._bufferLength)return"";const e=new Uint16Array(this._buffer.buffer,0,this._bufferLength);return Yg().decode(e)}_flushBuffer(){const e=this._buildBuffer();this._bufferLength=0,null===this._completedStrings?this._completedStrings=[e]:this._completedStrings[this._completedStrings.length]=e}appendCharCode(e){const t=this._capacity-this._bufferLength;t<=1&&(0===t||an(e))&&this._flushBuffer(),this._buffer[this._bufferLength++]=e}appendASCIICharCode(e){this._bufferLength===this._capacity&&this._flushBuffer(),this._buffer[this._bufferLength++]=e}appendString(e){const t=e.length;if(this._bufferLength+t>=this._capacity)return this._flushBuffer(),void(this._completedStrings[this._completedStrings.length]=e);for(let i=0;i[e[0].toLowerCase(),e[1].toLowerCase()]));const i=[];for(let e=0;e{const[i,n]=e,[o,s]=t;return i===o||i===s||n===o||n===s},o=(e,n)=>{const o=Math.min(e,n),s=Math.max(e,n);for(let e=0;e0&&s.push({open:o,close:r})}return s}(t);this.brackets=i.map(((t,n)=>new Qg(e,n,t.open,t.close,function(e,t,i,n){let o=[];o=o.concat(e),o=o.concat(t);for(let e=0,t=o.length;e=0&&n.push(t);for(const t of s.close)t.indexOf(e)>=0&&n.push(t)}}function ep(e,t){return e.length-t.length}function tp(e){if(e.length<=1)return e;const t=[],i=new Set;for(const n of e)i.has(n)||(t.push(n),i.add(n));return t}function ip(e){const t=/^[\w ]+$/.test(e);return e=Wi(e),t?`\\b${e}\\b`:e}function np(e,t){return Ui(`(${e.map(ip).join(")|(")})`,!0,t)}const op=function(){let e=null,t=null;return function(i){return e!==i&&(e=i,t=function(e){const t=new Uint16Array(e.length);let i=0;for(let n=e.length-1;n>=0;n--)t[i++]=e.charCodeAt(n);return Yg().decode(t)}(e)),t}}();class sp{static _findPrevBracketInText(e,t,i,n){const o=i.match(e);if(!o)return null;const s=i.length-(o.index||0),r=o[0].length,a=n+s;return new Yu(t,a-r+1,t,a+1)}static findPrevBracketInRange(e,t,i,n,o){const s=op(i).substring(i.length-o,i.length-n);return this._findPrevBracketInText(e,t,s,n)}static findNextBracketInText(e,t,i,n){const o=i.match(e);if(!o)return null;const s=o.index||0,r=o[0].length;if(0===r)return null;const a=n+s;return new Yu(t,a+1,t,a+1+r)}static findNextBracketInRange(e,t,i,n,o){const s=i.substring(n,o);return this.findNextBracketInText(e,t,s,n)}}class rp{constructor(e){this._richEditBrackets=e}getElectricCharacters(){const e=[];if(this._richEditBrackets)for(const t of this._richEditBrackets.brackets)for(const i of t.close){const t=i.charAt(i.length-1);e.push(t)}return cs(e)}onElectricCharacter(e,t,i){if(!this._richEditBrackets||0===this._richEditBrackets.brackets.length)return null;const n=t.findTokenIndexAtOffset(i-1);if(jg(t.getStandardTokenType(n)))return null;const o=this._richEditBrackets.reversedRegex,s=t.getLineContent().substring(0,i-1)+e,r=sp.findPrevBracketInRange(o,1,s,0,s.length);if(!r)return null;const a=s.substring(r.startColumn-1,r.endColumn-1).toLowerCase();if(this._richEditBrackets.textIsOpenBracket[a])return null;const l=t.getActualLineContentBefore(r.startColumn-1);return/^\s*$/.test(l)?{matchOpenBracket:a}:null}}function ap(e){return e.global&&(e.lastIndex=0),!0}class lp{constructor(e){this._indentationRules=e}shouldIncrease(e){return!!(this._indentationRules&&this._indentationRules.increaseIndentPattern&&ap(this._indentationRules.increaseIndentPattern)&&this._indentationRules.increaseIndentPattern.test(e))}shouldDecrease(e){return!!(this._indentationRules&&this._indentationRules.decreaseIndentPattern&&ap(this._indentationRules.decreaseIndentPattern)&&this._indentationRules.decreaseIndentPattern.test(e))}shouldIndentNextLine(e){return!!(this._indentationRules&&this._indentationRules.indentNextLinePattern&&ap(this._indentationRules.indentNextLinePattern)&&this._indentationRules.indentNextLinePattern.test(e))}shouldIgnore(e){return!!(this._indentationRules&&this._indentationRules.unIndentedLinePattern&&ap(this._indentationRules.unIndentedLinePattern)&&this._indentationRules.unIndentedLinePattern.test(e))}getIndentMetadata(e){let t=0;return this.shouldIncrease(e)&&(t+=1),this.shouldDecrease(e)&&(t+=2),this.shouldIndentNextLine(e)&&(t+=4),this.shouldIgnore(e)&&(t+=8),t}}class dp{constructor(e){(e=e||{}).brackets=e.brackets||[["(",")"],["{","}"],["[","]"]],this._brackets=[],e.brackets.forEach((e=>{const t=dp._createOpenBracketRegExp(e[0]),i=dp._createCloseBracketRegExp(e[1]);t&&i&&this._brackets.push({open:e[0],openRegExp:t,close:e[1],closeRegExp:i})})),this._regExpRules=e.onEnterRules||[]}onEnter(e,t,i,n){if(e>=3)for(let e=0,o=this._regExpRules.length;e!e.reg||(e.reg.lastIndex=0,e.reg.test(e.text)))))return o.action}if(e>=2&&i.length>0&&n.length>0)for(let e=0,t=this._brackets.length;e=2&&i.length>0)for(let e=0,t=this._brackets.length;e0&&"#"===e.charAt(e.length-1)?e.substring(0,e.length-1):e}(e);this.schemasById[n]=t,this._onDidChangeSchema.fire(e),i&&i.add(Nt((()=>{delete this.schemasById[n],this._onDidChangeSchema.fire(e)})))}notifySchemaChanged(e){this._onDidChangeSchema.fire(e)}};su.add(Cp,yp);const Sp="base.contributions.configuration",xp={properties:{},patternProperties:{}},kp={properties:{},patternProperties:{}},Lp={properties:{},patternProperties:{}},Ep={properties:{},patternProperties:{}},Ip={properties:{},patternProperties:{}},Dp={properties:{},patternProperties:{}},Np={properties:{},patternProperties:{}},Mp="vscode://schemas/settings/resourceLanguage",Tp=su.as(Cp),Rp="\\[([^\\]]+)\\]",Ap=new RegExp(Rp,"g"),Op=`^(${Rp})+$`,Pp=new RegExp(Op);function Fp(e){const t=[];if(Pp.test(e)){let i=Ap.exec(e);for(;i?.length;){const n=i[1].trim();n&&t.push(n),i=Ap.exec(e)}}return cs(t)}const Bp=new class extends Tt{constructor(){super(),this.registeredConfigurationDefaults=[],this.overrideIdentifiers=new Set,this._onDidSchemaChange=this._register(new Gt),this._onDidUpdateConfiguration=this._register(new Gt),this.configurationDefaultsOverrides=new Map,this.defaultLanguageConfigurationOverridesNode={id:"defaultOverrides",title:C(1649,"Default Language Configuration Overrides"),properties:{}},this.configurationContributors=[this.defaultLanguageConfigurationOverridesNode],this.resourceLanguageSettingsSchema={properties:{},patternProperties:{},additionalProperties:!0,allowTrailingCommas:!0,allowComments:!0},this.configurationProperties={},this.policyConfigurations=new Map,this.excludedConfigurationProperties={},Tp.registerSchema(Mp,this.resourceLanguageSettingsSchema),this.registerOverridePropertyPatternKey()}registerConfiguration(e,t=!0){return this.registerConfigurations([e],t),e}registerConfigurations(e,t=!0){const i=new Set;this.doRegisterConfigurations(e,t,i),Tp.registerSchema(Mp,this.resourceLanguageSettingsSchema),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire({properties:i})}registerDefaultConfigurations(e){const t=new Set;this.doRegisterDefaultConfigurations(e,t),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire({properties:t,defaultsOverrides:!0})}doRegisterDefaultConfigurations(e,t){this.registeredConfigurationDefaults.push(...e);const i=[];for(const{overrides:n,source:o}of e)for(const e in n){t.add(e);const s=this.configurationDefaultsOverrides.get(e)??this.configurationDefaultsOverrides.set(e,{configurationDefaultOverrides:[]}).get(e),r=n[e];if(s.configurationDefaultOverrides.push({value:r,source:o}),Pp.test(e)){const t=this.mergeDefaultConfigurationsForOverrideIdentifier(e,r,o,s.configurationDefaultOverrideValue);if(!t)continue;s.configurationDefaultOverrideValue=t,this.updateDefaultOverrideProperty(e,t,o),i.push(...Fp(e))}else{const t=this.mergeDefaultConfigurationsForConfigurationProperty(e,r,o,s.configurationDefaultOverrideValue);if(!t)continue;s.configurationDefaultOverrideValue=t;const i=this.configurationProperties[e];i&&(this.updatePropertyDefaultValue(e,i),this.updateSchema(e,i))}}this.doRegisterOverrideIdentifiers(i)}updateDefaultOverrideProperty(e,t,i){const n={type:"object",default:t.value,description:C(1650,"Configure settings to be overridden for {0}.",(o=e,o.replace(/^\[/,"").replace(/]$/g,"").replace(/\]\[/g,", "))),$ref:Mp,defaultDefaultValue:t.value,source:i,defaultValueSource:i};var o;this.configurationProperties[e]=n,this.defaultLanguageConfigurationOverridesNode.properties[e]=n}mergeDefaultConfigurationsForOverrideIdentifier(e,t,i,n){const o=n?.value||{},s=n?.source??new Map;if(s instanceof Map){for(const e of Object.keys(t)){const n=t[e];if(lt(n)&&(gt(o[e])||lt(o[e]))){if(o[e]={...o[e]??{},...n},i)for(const t in n)s.set(`${e}.${t}`,i)}else o[e]=n,i?s.set(e,i):s.delete(e)}return{value:o,source:s}}console.error("objectConfigurationSources is not a Map")}mergeDefaultConfigurationsForConfigurationProperty(e,t,i,n){const o=this.configurationProperties[e],s=n?.value??o?.defaultDefaultValue;let r=i;if(lt(t)&&(void 0!==o&&"object"===o.type||void 0===o&&(gt(s)||lt(s)))){if(r=n?.source??new Map,!(r instanceof Map))return void console.error("defaultValueSource is not a Map");for(const n in t)i&&r.set(`${e}.${n}`,i);t={...lt(s)?s:{},...t}}return{value:t,source:r}}registerOverrideIdentifiers(e){this.doRegisterOverrideIdentifiers(e),this._onDidSchemaChange.fire()}doRegisterOverrideIdentifiers(e){for(const t of e)this.overrideIdentifiers.add(t);this.updateOverridePropertyPatternKey()}doRegisterConfigurations(e,t,i){e.forEach((e=>{this.validateAndRegisterProperties(e,t,e.extensionInfo,e.restrictedProperties,void 0,i),this.configurationContributors.push(e),this.registerJSONConfiguration(e)}))}validateAndRegisterProperties(e,t=!0,i,n,o=4,s){o=mt(e.scope)?o:e.scope;const r=e.properties;if(r)for(const e in r){const a=r[e];if(t&&Wp(e,a)){delete r[e];continue}a.source=i,a.defaultDefaultValue=r[e].default,this.updatePropertyDefaultValue(e,a),Pp.test(e)?a.scope=void 0:(a.scope=mt(a.scope)?o:a.scope,a.restricted=mt(a.restricted)?!!n?.includes(e):a.restricted),a.experiment?a.tags?.some((e=>"onexp"===e.toLowerCase()))||(a.tags=a.tags??[],a.tags.push("onExP")):a.tags?.some((e=>"onexp"===e.toLowerCase()))&&(console.error(`Invalid tag 'onExP' found for property '${e}'. Please use 'experiment' property instead.`),a.experiment={mode:"startup"});const l=r[e].hasOwnProperty("included")&&!r[e].included,d=r[e].policy?.name;l?(this.excludedConfigurationProperties[e]=r[e],d&&(this.policyConfigurations.set(d,e),s.add(e)),delete r[e]):(s.add(e),d&&this.policyConfigurations.set(d,e),this.configurationProperties[e]=r[e],!r[e].deprecationMessage&&r[e].markdownDeprecationMessage&&(r[e].deprecationMessage=r[e].markdownDeprecationMessage))}const a=e.allOf;if(a)for(const e of a)this.validateAndRegisterProperties(e,t,i,n,o,s)}getConfigurationProperties(){return this.configurationProperties}getPolicyConfigurations(){return this.policyConfigurations}getExcludedConfigurationProperties(){return this.excludedConfigurationProperties}registerJSONConfiguration(e){const t=e=>{const i=e.properties;if(i)for(const e in i)this.updateSchema(e,i[e]);const n=e.allOf;n?.forEach(t)};t(e)}updateSchema(e,t){switch(xp.properties[e]=t,t.scope){case 1:kp.properties[e]=t;break;case 2:Ep.properties[e]=t;break;case 3:Lp.properties[e]=t;break;case 7:Ip.properties[e]=t;break;case 4:Dp.properties[e]=t;break;case 5:Np.properties[e]=t;break;case 6:Np.properties[e]=t,this.resourceLanguageSettingsSchema.properties[e]=t}}updateOverridePropertyPatternKey(){for(const e of this.overrideIdentifiers.values()){const t=`[${e}]`,i={type:"object",description:C(1651,"Configure editor settings to be overridden for a language."),errorMessage:C(1652,"This setting does not support per-language configuration."),$ref:Mp};this.updatePropertyDefaultValue(t,i),xp.properties[t]=i,kp.properties[t]=i,Lp.properties[t]=i,Ep.properties[t]=i,Ip.properties[t]=i,Dp.properties[t]=i,Np.properties[t]=i}}registerOverridePropertyPatternKey(){const e={type:"object",description:C(1653,"Configure editor settings to be overridden for a language."),errorMessage:C(1654,"This setting does not support per-language configuration."),$ref:Mp};xp.patternProperties[Op]=e,kp.patternProperties[Op]=e,Lp.patternProperties[Op]=e,Ep.patternProperties[Op]=e,Ip.patternProperties[Op]=e,Dp.patternProperties[Op]=e,Np.patternProperties[Op]=e,this._onDidSchemaChange.fire()}updatePropertyDefaultValue(e,t){const i=this.configurationDefaultsOverrides.get(e)?.configurationDefaultOverrideValue;let n,o;!i||t.disallowConfigurationDefault&&i.source||(n=i.value,o=i.source),gt(n)&&(n=t.defaultDefaultValue,o=void 0),gt(n)&&(n=function(e){switch(Array.isArray(e)?e[0]:e){case"boolean":return!1;case"integer":case"number":return 0;case"string":return"";case"array":return[];case"object":return{};default:return null}}(t.type)),t.default=n,t.defaultValueSource=o}};function Wp(e,t){return e.trim()?Pp.test(e)?C(1656,"Cannot register '{0}'. This matches property pattern '\\\\[.*\\\\]$' for describing language specific editor settings. Use 'configurationDefaults' contribution.",e):void 0!==Bp.getConfigurationProperties()[e]?C(1657,"Cannot register '{0}'. This property is already registered.",e):t.policy?.name&&void 0!==Bp.getPolicyConfigurations().get(t.policy?.name)?C(1658,"Cannot register '{0}'. The associated policy {1} is already registered with {2}.",e,t.policy?.name,Bp.getPolicyConfigurations().get(t.policy?.name)):null:C(1655,"Cannot register an empty property")}su.add(Sp,Bp);const Hp=new class extends Tt{constructor(){super(),this._onDidChangeLanguages=this._register(new Gt),this.onDidChangeLanguages=this._onDidChangeLanguages.event,this._languages=[]}registerLanguage(e){return this._languages.push(e),this._onDidChangeLanguages.fire(void 0),{dispose:()=>{for(let t=0,i=this._languages.length;t{const t=new Set;return{info:new Kp(this,e,t),closing:t}})),o=new Ri((e=>{const t=new Set,i=new Set;return{info:new qp(this,e,t,i),opening:t,openingColorized:i}}));for(const[e,t]of i){const i=n.get(e),s=o.get(t);i.closing.add(s.info),s.opening.add(i.info)}const s=t.colorizedBracketPairs?Up(t.colorizedBracketPairs):i.filter((e=>!("<"===e[0]&&">"===e[1])));for(const[e,t]of s){const i=n.get(e),s=o.get(t);i.closing.add(s.info),s.openingColorized.add(i.info),s.opening.add(i.info)}this._openingBrackets=new Map([...n.cachedValues].map((([e,t])=>[e,t.info]))),this._closingBrackets=new Map([...o.cachedValues].map((([e,t])=>[e,t.info])))}get openingBrackets(){return[...this._openingBrackets.values()]}get closingBrackets(){return[...this._closingBrackets.values()]}getOpeningBracketInfo(e){return this._openingBrackets.get(e)}getClosingBracketInfo(e){return this._closingBrackets.get(e)}getBracketInfo(e){return this.getOpeningBracketInfo(e)||this.getClosingBracketInfo(e)}getBracketRegExp(e){return np(Array.from([...this._openingBrackets.keys(),...this._closingBrackets.keys()]),e)}}function Up(e){return e.filter((([e,t])=>""!==e&&""!==t))}class jp{constructor(e,t){this.config=e,this.bracketText=t}get languageId(){return this.config.languageId}}class Kp extends jp{constructor(e,t,i){super(e,t),this.openedBrackets=i,this.isOpeningBracket=!0}}class qp extends jp{constructor(e,t,i,n){super(e,t),this.openingBrackets=i,this.openingColorizedBrackets=n,this.isOpeningBracket=!1}closes(e){return e.config===this.config&&this.openingBrackets.has(e)}closesColorized(e){return e.config===this.config&&this.openingColorizedBrackets.has(e)}getOpeningBrackets(){return[...this.openingBrackets]}}var $p=function(e,t){return function(i,n){t(i,n,e)}};class Gp{constructor(e){this.languageId=e}affects(e){return!this.languageId||this.languageId===e}}const Yp=nh("languageConfigurationService");let Zp=class extends Tt{constructor(e,t){super(),this.configurationService=e,this.languageService=t,this._registry=this._register(new om),this.onDidChangeEmitter=this._register(new Gt),this.onDidChange=this.onDidChangeEmitter.event,this.configurations=new Map;const i=new Set(Object.values(Qp));this._register(this.configurationService.onDidChangeConfiguration((e=>{const t=e.change.keys.some((e=>i.has(e))),n=e.change.overrides.filter((([e,t])=>t.some((e=>i.has(e))))).map((([e])=>e));if(t)this.configurations.clear(),this.onDidChangeEmitter.fire(new Gp(void 0));else for(const e of n)this.languageService.isRegisteredLanguageId(e)&&(this.configurations.delete(e),this.onDidChangeEmitter.fire(new Gp(e)))}))),this._register(this._registry.onDidChange((e=>{this.configurations.delete(e.languageId),this.onDidChangeEmitter.fire(new Gp(e.languageId))})))}register(e,t,i){return this._registry.register(e,t,i)}getLanguageConfiguration(e){let t=this.configurations.get(e);return t||(t=function(e,t,i,n){let o=t.getLanguageConfiguration(e);if(!o){if(!n.isRegisteredLanguageId(e))return new sm(e,{});o=new sm(e,{})}const s=function(e,t){const i=t.getValue(Qp.brackets,{overrideIdentifier:e}),n=t.getValue(Qp.colorizedBracketPairs,{overrideIdentifier:e});return{brackets:Xp(i),colorizedBracketPairs:Xp(n)}}(o.languageId,i),r=tm([o.underlyingConfig,s]);return new sm(o.languageId,r)}(e,this._registry,this.configurationService,this.languageService),this.configurations.set(e,t)),t}};Zp=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([$p(0,cp),$p(1,Ng)],Zp);const Qp={brackets:"editor.language.brackets",colorizedBracketPairs:"editor.language.colorizedBracketPairs"};function Xp(e){if(Array.isArray(e))return e.map((e=>{if(Array.isArray(e)&&2===e.length)return[e[0],e[1]]})).filter((e=>!!e))}function Jp(e,t,i){let n=$i(e.getLineContent(t));return n.length>i-1&&(n=n.substring(0,i-1)),n}class em{constructor(e){this.languageId=e,this._resolved=null,this._entries=[],this._order=0,this._resolved=null}register(e,t){const i=new im(e,t,++this._order);return this._entries.push(i),this._resolved=null,kt(Nt((()=>{for(let e=0;ee.configuration))))}}function tm(e){let t={comments:void 0,brackets:void 0,wordPattern:void 0,indentationRules:void 0,onEnterRules:void 0,autoClosingPairs:void 0,surroundingPairs:void 0,autoCloseBefore:void 0,folding:void 0,colorizedBracketPairs:void 0,__electricCharacterSupport:void 0};for(const i of e)t={comments:i.comments||t.comments,brackets:i.brackets||t.brackets,wordPattern:i.wordPattern||t.wordPattern,indentationRules:i.indentationRules||t.indentationRules,onEnterRules:i.onEnterRules||t.onEnterRules,autoClosingPairs:i.autoClosingPairs||t.autoClosingPairs,surroundingPairs:i.surroundingPairs||t.surroundingPairs,autoCloseBefore:i.autoCloseBefore||t.autoCloseBefore,folding:i.folding||t.folding,colorizedBracketPairs:i.colorizedBracketPairs||t.colorizedBracketPairs,__electricCharacterSupport:i.__electricCharacterSupport||t.__electricCharacterSupport};return t}class im{constructor(e,t,i){this.configuration=e,this.priority=t,this.order=i}static cmp(e,t){return e.priority===t.priority?e.order-t.order:e.priority-t.priority}}class nm{constructor(e){this.languageId=e}}class om extends Tt{constructor(){super(),this._entries=new Map,this._onDidChange=this._register(new Gt),this.onDidChange=this._onDidChange.event,this._register(this.register(Vp,{brackets:[["(",")"],["[","]"],["{","}"]],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],colorizedBracketPairs:[],folding:{offSide:!0}},0))}register(e,t,i=0){let n=this._entries.get(e);n||(n=new em(e),this._entries.set(e,n));const o=n.register(t,i);return this._onDidChange.fire(new nm(e)),kt(Nt((()=>{o.dispose(),this._onDidChange.fire(new nm(e))})))}getLanguageConfiguration(e){const t=this._entries.get(e);return t?.getResolvedConfiguration()||null}}class sm{constructor(e,t){this.languageId=e,this.underlyingConfig=t,this._brackets=null,this._electricCharacter=null,this._onEnterSupport=this.underlyingConfig.brackets||this.underlyingConfig.indentationRules||this.underlyingConfig.onEnterRules?new dp(this.underlyingConfig):null,this.comments=sm._handleComments(this.underlyingConfig),this.characterPair=new Vg(this.underlyingConfig),this.wordDefinition=this.underlyingConfig.wordPattern||Tg,this.indentationRules=this.underlyingConfig.indentationRules,this.underlyingConfig.indentationRules?this.indentRulesSupport=new lp(this.underlyingConfig.indentationRules):this.indentRulesSupport=null,this.foldingRules=this.underlyingConfig.folding||{},this.bracketsNew=new zp(e,this.underlyingConfig)}getWordDefinition(){return Rg(this.wordDefinition)}get brackets(){return!this._brackets&&this.underlyingConfig.brackets&&(this._brackets=new Xg(this.languageId,this.underlyingConfig.brackets)),this._brackets}get electricCharacter(){return this._electricCharacter||(this._electricCharacter=new rp(this.brackets)),this._electricCharacter}onEnter(e,t,i,n){return this._onEnterSupport?this._onEnterSupport.onEnter(e,t,i,n):null}getAutoClosingPairs(){return new Wg(this.characterPair.getAutoClosingPairs())}getAutoCloseBeforeSet(e){return this.characterPair.getAutoCloseBeforeSet(e)}getSurroundingPairs(){return this.characterPair.getSurroundingPairs()}static _handleComments(e){const t=e.comments;if(!t)return null;const i={};if(t.lineComment&&("string"==typeof t.lineComment?i.lineCommentToken=t.lineComment:(i.lineCommentToken=t.lineComment.comment,i.lineCommentNoIndent=t.lineComment.noIndent)),t.blockComment){const[e,n]=t.blockComment;i.blockCommentStartToken=e,i.blockCommentEndToken=n}return i}}vp(Yp,Zp,1);class rm{constructor(e,t,i,n){this.range=e,this.nestingLevel=t,this.nestingLevelOfEqualBracketType=i,this.isInvalid=n}}class am{constructor(e,t,i,n,o,s){this.range=e,this.openingBracketRange=t,this.closingBracketRange=i,this.nestingLevel=n,this.nestingLevelOfEqualBracketType=o,this.bracketPairNode=s}get openingBracketInfo(){return this.bracketPairNode.openingBracket.bracketInfo}}class lm extends am{constructor(e,t,i,n,o,s,r){super(e,t,i,n,o,s),this.minVisibleColumnIndentation=r}}class dm{static fromTo(e,t){return new dm(e,t)}static addRange(e,t){let i=0;for(;it))return new dm(e,t)}static ofLength(e){return new dm(0,e)}static ofStartAndLength(e,t){return new dm(e,e+t)}static emptyAt(e){return new dm(e,e)}constructor(e,t){if(this.start=e,this.endExclusive=t,e>t)throw new We(`Invalid range: ${this.toString()}`)}get isEmpty(){return this.start===this.endExclusive}delta(e){return new dm(this.start+e,this.endExclusive+e)}deltaStart(e){return new dm(this.start+e,this.endExclusive)}deltaEnd(e){return new dm(this.start,this.endExclusive+e)}get length(){return this.endExclusive-this.start}toString(){return`[${this.start}, ${this.endExclusive})`}equals(e){return this.start===e.start&&this.endExclusive===e.endExclusive}contains(e){return this.start<=e&&e=e.endExclusive}slice(e){return e.slice(this.start,this.endExclusive)}substring(e){return e.substring(this.start,this.endExclusive)}clip(e){if(this.isEmpty)throw new We(`Invalid clipping range: ${this.toString()}`);return Math.max(this.start,Math.min(this.endExclusive-1,e))}clipCyclic(e){if(this.isEmpty)throw new We(`Invalid clipping range: ${this.toString()}`);return e=this.endExclusive?this.start+(e-this.start)%this.length:e}forEach(e){for(let t=this.start;te.toString())).join(", ")}intersectsStrict(e){let t=0;for(;te+t.length),0)}}function hm(e,t,i=e.length-1){const n=function(e,t,i=e.length-1){for(let n=i;n>=0;n--)if(t(e[n]))return n;return-1}(e,t,i);if(-1!==n)return e[n]}function um(e,t){const i=gm(e,t);return-1===i?void 0:e[i]}function gm(e,t,i=0,n=e.length){let o=i,s=n;for(;o0&&(i=o)}return i}function _m(e,t){if(0===e.length)return;let i=e[0];for(let n=1;n=0&&(i=o)}return i}function vm(e,t){return fm(e,((e,i)=>-t(e,i)))}function bm(e,t){if(0===e.length)return-1;let i=0;for(let n=1;n0&&(i=n);return i}class wm{static ofLength(e,t){return new wm(e,e+t)}static fromRange(e){return new wm(e.startLineNumber,e.endLineNumber)}static fromRangeInclusive(e){return new wm(e.startLineNumber,e.endLineNumber+1)}static{this.compareByStart=ws((e=>e.startLineNumber),Cs)}static joinMany(e){if(0===e.length)return[];let t=new Cm(e[0].slice());for(let i=1;it)throw new We(`startLineNumber ${e} cannot be after endLineNumberExclusive ${t}`);this.startLineNumber=e,this.endLineNumberExclusive=t}contains(e){return this.startLineNumber<=e&&et.endLineNumberExclusive>=e.startLineNumber)),i=gm(this._normalizedRanges,(t=>t.startLineNumber<=e.endLineNumberExclusive))+1;if(t===i)this._normalizedRanges.splice(t,0,e);else if(t===i-1){const i=this._normalizedRanges[t];this._normalizedRanges[t]=i.join(e)}else{const n=this._normalizedRanges[t].join(this._normalizedRanges[i-1]).join(e);this._normalizedRanges.splice(t,i-t,n)}}contains(e){const t=um(this._normalizedRanges,(t=>t.startLineNumber<=e));return!!t&&t.endLineNumberExclusive>e}intersects(e){const t=um(this._normalizedRanges,(t=>t.startLineNumbere.startLineNumber}getUnion(e){if(0===this._normalizedRanges.length)return e;if(0===e._normalizedRanges.length)return this;const t=[];let i=0,n=0,o=null;for(;i=s.startLineNumber?o=new wm(o.startLineNumber,Math.max(o.endLineNumberExclusive,s.endLineNumberExclusive)):(t.push(o),o=s)}return null!==o&&t.push(o),new Cm(t)}subtractFrom(e){const t=pm(this._normalizedRanges,(t=>t.endLineNumberExclusive>=e.startLineNumber)),i=gm(this._normalizedRanges,(t=>t.startLineNumber<=e.endLineNumberExclusive))+1;if(t===i)return new Cm([e]);const n=[];let o=e.startLineNumber;for(let e=t;eo&&n.push(new wm(o,t.startLineNumber)),o=t.endLineNumberExclusive}return oe.toString())).join(", ")}getIntersection(e){const t=[];let i=0,n=0;for(;it.delta(e))))}}class ym{static{this.zero=new ym(0,0)}static betweenPositions(e,t){return e.lineNumber===t.lineNumber?new ym(0,t.column-e.column):new ym(t.lineNumber-e.lineNumber,t.column-1)}static fromPosition(e){return new ym(e.lineNumber-1,e.column-1)}static ofRange(e){return ym.betweenPositions(e.getStartPosition(),e.getEndPosition())}static ofText(e){let t=0,i=0;for(const n of e)"\n"===n?(t++,i=0):i++;return new ym(t,i)}constructor(e,t){this.lineCount=e,this.columnCount=t}isGreaterThanOrEqualTo(e){return this.lineCount!==e.lineCount?this.lineCount>e.lineCount:this.columnCount>=e.columnCount}add(e){return 0===e.lineCount?new ym(this.lineCount,this.columnCount+e.columnCount):new ym(this.lineCount+e.lineCount,e.columnCount)}createRange(e){return 0===this.lineCount?new Yu(e.lineNumber,e.column,e.lineNumber,e.column+this.columnCount):new Yu(e.lineNumber,e.column,e.lineNumber+this.lineCount,this.columnCount+1)}toRange(){return new Yu(1,1,this.lineCount+1,this.columnCount+1)}toLineRange(){return wm.ofLength(1,this.lineCount+1)}addToPosition(e){return 0===this.lineCount?new sh(e.lineNumber,e.column+this.columnCount):new sh(e.lineNumber+this.lineCount,this.columnCount+1)}toString(){return`${this.lineCount},${this.columnCount}`}}function Sm(e){return 0===e}const xm=2**26;function km(e,t){return e*xm+t}function Lm(e){const t=e,i=Math.floor(t/xm);return new ym(i,t-i*xm)}function Em(e,t){let i=e+t;return t>=xm&&(i-=e%xm),i}function Im(e,t){return e.reduce(((e,i)=>Em(e,t(i))),0)}function Dm(e,t){return e===t}function Nm(e,t){const i=e,n=t;if(n-i<=0)return 0;const o=Math.floor(i/xm),s=Math.floor(n/xm),r=n-s*xm;return o===s?km(0,r-(i-o*xm)):km(s-o,r)}function Mm(e,t){return e=t}function Am(e){return km(e.lineNumber-1,e.column-1)}function Om(e,t){const i=e,n=Math.floor(i/xm),o=i-n*xm,s=t,r=Math.floor(s/xm);return new Yu(n+1,o+1,r+1,s-r*xm+1)}class Pm{static fromModelContentChanges(e){const t=e.map((e=>{const t=Yu.lift(e.range);return new Pm(Am(t.getStartPosition()),Am(t.getEndPosition()),function(e){const t=Ki(e);return km(t.length-1,t[t.length-1].length)}(e.text))})).reverse();return t}constructor(e,t,i){this.startOffset=e,this.endOffset=t,this.newLength=i}toString(){return`[${Lm(this.startOffset)}...${Lm(this.endOffset)}) -> ${Lm(this.newLength)}`}}class Fm{constructor(e){this.nextEditIdx=0,this.deltaOldToNewLineCount=0,this.deltaOldToNewColumnCount=0,this.deltaLineIdxInOld=-1,this.edits=e.map((e=>Bm.from(e)))}getOffsetBeforeChange(e){return this.adjustNextEdit(e),this.translateCurToOld(e)}getDistanceToNextChange(e){this.adjustNextEdit(e);const t=this.edits[this.nextEditIdx],i=t?this.translateOldToCur(t.offsetObj):null;return null===i?null:Nm(e,i)}translateOldToCur(e){return e.lineCount===this.deltaLineIdxInOld?km(e.lineCount+this.deltaOldToNewLineCount,e.columnCount+this.deltaOldToNewColumnCount):km(e.lineCount+this.deltaOldToNewLineCount,e.columnCount)}translateCurToOld(e){const t=Lm(e);return t.lineCount-this.deltaOldToNewLineCount===this.deltaLineIdxInOld?km(t.lineCount-this.deltaOldToNewLineCount,t.columnCount-this.deltaOldToNewColumnCount):km(t.lineCount-this.deltaOldToNewLineCount,t.columnCount)}adjustNextEdit(e){for(;this.nextEditIdx>5;if(0===n){const e=1<e};class zm{constructor(){this.items=new Map}getKey(e){let t=this.items.get(e);return void 0===t&&(t=this.items.size,this.items.set(e,t)),t}}class Um{get length(){return this._length}constructor(e){this._length=e}}class jm extends Um{static create(e,t,i){let n=e.length;return t&&(n=Em(n,t.length)),i&&(n=Em(n,i.length)),new jm(n,e,t,i,t?t.missingOpeningBracketIds:Hm.getEmpty())}get kind(){return 2}get listHeight(){return 0}get childrenLength(){return 3}getChild(e){switch(e){case 0:return this.openingBracket;case 1:return this.child;case 2:return this.closingBracket}throw new Error("Invalid child index")}get children(){const e=[];return e.push(this.openingBracket),this.child&&e.push(this.child),this.closingBracket&&e.push(this.closingBracket),e}constructor(e,t,i,n,o){super(e),this.openingBracket=t,this.child=i,this.closingBracket=n,this.missingOpeningBracketIds=o}canBeReused(e){return null!==this.closingBracket&&!e.intersects(this.missingOpeningBracketIds)}deepClone(){return new jm(this.length,this.openingBracket.deepClone(),this.child&&this.child.deepClone(),this.closingBracket&&this.closingBracket.deepClone(),this.missingOpeningBracketIds)}computeMinIndentation(e,t){return this.child?this.child.computeMinIndentation(Em(e,this.openingBracket.length),t):Number.MAX_SAFE_INTEGER}}class Km extends Um{static create23(e,t,i,n=!1){let o=e.length,s=e.missingOpeningBracketIds;if(e.listHeight!==t.listHeight)throw new Error("Invalid list heights");if(o=Em(o,t.length),s=s.merge(t.missingOpeningBracketIds),i){if(e.listHeight!==i.listHeight)throw new Error("Invalid list heights");o=Em(o,i.length),s=s.merge(i.missingOpeningBracketIds)}return n?new $m(o,e.listHeight+1,e,t,i,s):new qm(o,e.listHeight+1,e,t,i,s)}static getEmpty(){return new Ym(0,0,[],Hm.getEmpty())}get kind(){return 4}get missingOpeningBracketIds(){return this._missingOpeningBracketIds}constructor(e,t,i){super(e),this.listHeight=t,this._missingOpeningBracketIds=i,this.cachedMinIndentation=-1}throwIfImmutable(){}makeLastElementMutable(){this.throwIfImmutable();const e=this.childrenLength;if(0===e)return;const t=this.getChild(e-1),i=4===t.kind?t.toMutable():t;return t!==i&&this.setChild(e-1,i),i}makeFirstElementMutable(){if(this.throwIfImmutable(),0===this.childrenLength)return;const e=this.getChild(0),t=4===e.kind?e.toMutable():e;return e!==t&&this.setChild(0,t),t}canBeReused(e){if(e.intersects(this.missingOpeningBracketIds))return!1;if(0===this.childrenLength)return!1;let t=this;for(;4===t.kind;){const e=t.childrenLength;if(0===e)throw new We;t=t.getChild(e-1)}return t.canBeReused(e)}handleChildrenChanged(){this.throwIfImmutable();const e=this.childrenLength;let t=this.getChild(0).length,i=this.getChild(0).missingOpeningBracketIds;for(let n=1;n>>0}static getTokenType(e){return(768&e)>>>8}static containsBalancedBrackets(e){return!!(1024&e)}static getFontStyle(e){return(30720&e)>>>11}static getForeground(e){return(16744448&e)>>>15}static getBackground(e){return(4278190080&e)>>>24}static getClassNameFromMetadata(e){let t="mtk"+this.getForeground(e);const i=this.getFontStyle(e);return 1&i&&(t+=" mtki"),2&i&&(t+=" mtkb"),4&i&&(t+=" mtku"),8&i&&(t+=" mtks"),t}static getInlineStyleFromMetadata(e,t){const i=this.getForeground(e),n=this.getFontStyle(e);let o=`color: ${t[i]};`;1&n&&(o+="font-style: italic;"),2&n&&(o+="font-weight: bold;");let s="";return 4&n&&(s+=" underline"),8&n&&(s+=" line-through"),s&&(o+=`text-decoration:${s};`),o}static getPresentationFromMetadata(e){const t=this.getForeground(e),i=this.getFontStyle(e);return{foreground:t,italic:Boolean(1&i),bold:Boolean(2&i),underline:Boolean(4&i),strikethrough:Boolean(8&i)}}}class nf{constructor(e,t,i,n,o){this.length=e,this.kind=t,this.bracketId=i,this.bracketIds=n,this.astNode=o}}class of{constructor(e,t){this.textModel=e,this.bracketTokens=t,this.reader=new sf(this.textModel,this.bracketTokens),this._offset=0,this.didPeek=!1,this.peeked=null,this.textBufferLineCount=e.getLineCount(),this.textBufferLastLineLength=e.getLineLength(this.textBufferLineCount)}get offset(){return this._offset}get length(){return km(this.textBufferLineCount-1,this.textBufferLastLineLength)}skip(e){this.didPeek=!1,this._offset=Em(this._offset,e);const t=Lm(this._offset);this.reader.setPosition(t.lineCount,t.columnCount)}read(){let e;return this.peeked?(this.didPeek=!1,e=this.peeked):e=this.reader.read(),e&&(this._offset=Em(this._offset,e.length)),e}peek(){return this.didPeek||(this.peeked=this.reader.read(),this.didPeek=!0),this.peeked}}class sf{constructor(e,t){this.textModel=e,this.bracketTokens=t,this.lineIdx=0,this.line=null,this.lineCharOffset=0,this.lineTokens=null,this.lineTokenOffset=0,this.peekedToken=null,this.textBufferLineCount=e.getLineCount(),this.textBufferLastLineLength=e.getLineLength(this.textBufferLineCount)}setPosition(e,t){e===this.lineIdx?(this.lineCharOffset=t,null!==this.line&&(this.lineTokenOffset=0===this.lineCharOffset?0:this.lineTokens.findTokenIndexAtOffset(this.lineCharOffset))):(this.lineIdx=e,this.lineCharOffset=t,this.line=null),this.peekedToken=null}read(){if(this.peekedToken){const e=this.peekedToken;return this.peekedToken=null,this.lineCharOffset+=e.length,e}if(this.lineIdx>this.textBufferLineCount-1||this.lineIdx===this.textBufferLineCount-1&&this.lineCharOffset>=this.textBufferLastLineLength)return null;null===this.line&&(this.lineTokens=this.textModel.tokenization.getLineTokens(this.lineIdx+1),this.line=this.lineTokens.getLineContent(),this.lineTokenOffset=0===this.lineCharOffset?0:this.lineTokens.findTokenIndexAtOffset(this.lineCharOffset));const e=this.lineIdx,t=this.lineCharOffset;let i=0;for(;;){const n=this.lineTokens,o=n.getCount();let s=null;if(this.lineTokenOffset1e3)break}if(i>1500)break}const n=(o=e,s=t,r=this.lineIdx,a=this.lineCharOffset,o!==r?km(r-o,a):km(0,a-s));var o,s,r,a;return new nf(n,0,-1,Hm.getEmpty(),new Xm(n))}}class rf{constructor(e,t){this.text=e,this._offset=0,this.idx=0;const i=t.getRegExpStr(),n=i?new RegExp(i+"|\n","gi"):null,o=[];let s,r=0,a=0,l=0,d=0;const c=[];for(let e=0;e<60;e++)c.push(new nf(km(0,e),0,-1,Hm.getEmpty(),new Xm(km(0,e))));const h=[];for(let e=0;e<60;e++)h.push(new nf(km(1,e),0,-1,Hm.getEmpty(),new Xm(km(1,e))));if(n)for(n.lastIndex=0;null!==(s=n.exec(e));){const e=s.index,i=s[0];if("\n"===i)r++,a=e+1;else{if(l!==e){let t;if(d===r){const i=e-l;if(ifunction(e){let t=Wi(e);return/^[\w ]+/.test(e)&&(t=`\\b${t}`),/[\w ]+$/.test(e)&&(t=`${t}\\b`),t}(e))).join("|")}}get regExpGlobal(){if(!this.hasRegExp){const e=this.getRegExpStr();this._regExpGlobal=e?new RegExp(e,"gi"):null,this.hasRegExp=!0}return this._regExpGlobal}getToken(e){return this.map.get(e.toLowerCase())}findClosingTokenText(e){for(const[t,i]of this.map)if(2===i.kind&&i.bracketIds.intersects(e))return t}get isEmpty(){return 0===this.map.size}}class lf{constructor(e,t){this.denseKeyProvider=e,this.getLanguageConfiguration=t,this.languageIdToBracketTokens=new Map}didLanguageChange(e){return this.languageIdToBracketTokens.has(e)}getSingleLanguageBracketTokens(e){let t=this.languageIdToBracketTokens.get(e);return t||(t=af.createFromLanguage(this.getLanguageConfiguration(e),this.denseKeyProvider),this.languageIdToBracketTokens.set(e,t)),t}}function df(e,t=!1){if(0===e.length)return null;if(1===e.length)return e[0];let i=e.length;for(;i>3;){const n=i>>1;for(let o=0;o=3?e[2]:null,t)}function cf(e,t){return Math.abs(e.listHeight-t.listHeight)}function hf(e,t){return e.listHeight===t.listHeight?Km.create23(e,t,null,!1):e.listHeight>t.listHeight?function(e,t){let i=e=e.toMutable();const n=[];let o;for(;;){if(t.listHeight===i.listHeight){o=t;break}if(4!==i.kind)throw new Error("unexpected");n.push(i),i=i.makeLastElementMutable()}for(let e=n.length-1;e>=0;e--){const t=n[e];o?t.childrenLength>=3?o=Km.create23(t.unappendChild(),o,null,!1):(t.appendChildOfSameHeight(o),o=void 0):t.handleChildrenChanged()}return o?Km.create23(e,o,null,!1):e}(e,t):function(e,t){let i=e=e.toMutable();const n=[];for(;t.listHeight!==i.listHeight;){if(4!==i.kind)throw new Error("unexpected");n.push(i),i=i.makeFirstElementMutable()}let o=t;for(let e=n.length-1;e>=0;e--){const t=n[e];o?t.childrenLength>=3?o=Km.create23(o,t.unprependChild(),null,!1):(t.prependChildOfSameHeight(o),o=void 0):t.handleChildrenChanged()}return o?Km.create23(o,e,null,!1):e}(t,e)}class uf{constructor(e){this.lastOffset=0,this.nextNodes=[e],this.offsets=[0],this.idxs=[]}readLongestNodeAt(e,t){if(Mm(e,this.lastOffset))throw new Error("Invalid offset");for(this.lastOffset=e;;){const i=pf(this.nextNodes);if(!i)return;const n=pf(this.offsets);if(Mm(e,n))return;if(Mm(n,e))if(Em(n,i.length)<=e)this.nextNodeAfterCurrent();else{const e=gf(i);-1!==e?(this.nextNodes.push(i.getChild(e)),this.offsets.push(n),this.idxs.push(e)):this.nextNodeAfterCurrent()}else{if(t(i))return this.nextNodeAfterCurrent(),i;{const e=gf(i);if(-1===e)return void this.nextNodeAfterCurrent();this.nextNodes.push(i.getChild(e)),this.offsets.push(n),this.idxs.push(e)}}}}nextNodeAfterCurrent(){for(;;){const e=pf(this.offsets),t=pf(this.nextNodes);if(this.nextNodes.pop(),this.offsets.pop(),0===this.idxs.length)break;const i=pf(this.nextNodes),n=gf(i,this.idxs[this.idxs.length-1]);if(-1!==n){this.nextNodes.push(i.getChild(n)),this.offsets.push(Em(e,t.length)),this.idxs[this.idxs.length-1]=n;break}this.idxs.pop()}}}function gf(e,t=-1){for(;;){if(++t>=e.childrenLength)return-1;if(e.getChild(t))return t}}function pf(e){return e.length>0?e[e.length-1]:void 0}function mf(e,t,i,n){return new ff(e,t,i,n).parseDocument()}class ff{constructor(e,t,i,n){if(this.tokenizer=e,this.createImmutableLists=n,this._itemsConstructed=0,this._itemsFromCache=0,i&&n)throw new Error("Not supported");this.oldNodeReader=i?new uf(i):void 0,this.positionMapper=new Fm(t)}parseDocument(){this._itemsConstructed=0,this._itemsFromCache=0;let e=this.parseList(Hm.getEmpty(),0);return e||(e=Km.getEmpty()),e}parseList(e,t){const i=[];for(;;){let n=this.tryReadChildFromCache(e);if(!n){const i=this.tokenizer.peek();if(!i||2===i.kind&&i.bracketIds.intersects(e))break;n=this.parseChild(e,t+1)}4===n.kind&&0===n.childrenLength||i.push(n)}const n=this.oldNodeReader?function(e){if(0===e.length)return null;if(1===e.length)return e[0];let t=0;function i(){if(t>=e.length)return null;const i=t,n=e[i].listHeight;for(t++;t=2?df(0===i&&t===e.length?e:e.slice(i,t),!1):e[i]}let n=i(),o=i();if(!o)return n;for(let e=i();e;e=i())cf(n,o)<=cf(o,e)?(n=hf(n,o),o=e):o=hf(o,e);return hf(n,o)}(i):df(i,this.createImmutableLists);return n}tryReadChildFromCache(e){if(this.oldNodeReader){const t=this.positionMapper.getDistanceToNextChange(this.tokenizer.offset);if(null===t||!Sm(t)){const i=this.oldNodeReader.readLongestNodeAt(this.positionMapper.getOffsetBeforeChange(this.tokenizer.offset),(i=>!(null!==t&&!Mm(i.length,t))&&i.canBeReused(e)));if(i)return this._itemsFromCache++,this.tokenizer.skip(i.length),i}}}parseChild(e,t){this._itemsConstructed++;const i=this.tokenizer.read();switch(i.kind){case 2:return new ef(i.bracketIds,i.length);case 0:return i.astNode;case 1:{if(t>300)return new Xm(i.length);const n=e.merge(i.bracketIds),o=this.parseList(n,t+1),s=this.tokenizer.peek();return s&&2===s.kind&&(s.bracketId===i.bracketId||s.bracketIds.intersects(i.bracketIds))?(this.tokenizer.read(),jm.create(i.astNode,o,s.astNode)):jm.create(i.astNode,o,null)}default:throw new Error("unexpected")}}}function _f(e,t){if(0===e.length)return t;if(0===t.length)return e;const i=new xs(bf(e)),n=bf(t);n.push({modified:!1,lengthBefore:void 0,lengthAfter:void 0});let o=i.dequeue();function s(e){if(void 0===e){const e=i.takeWhile((e=>!0))||[];return o&&e.unshift(o),e}const t=[];for(;o&&!Sm(e);){const[n,s]=o.splitAt(e);t.push(n),e=Nm(n.lengthAfter,e),o=s??i.dequeue()}return Sm(e)||t.push(new vf(!1,e,e)),t}const r=[];function a(e,t,i){if(r.length>0&&Dm(r[r.length-1].endOffset,e)){const e=r[r.length-1];r[r.length-1]=new Pm(e.startOffset,t,Em(e.newLength,i))}else r.push({startOffset:e,endOffset:t,newLength:i})}let l=0;for(const e of n){const t=s(e.lengthBefore);if(e.modified){const i=Em(l,Im(t,(e=>e.lengthBefore)));a(l,i,e.lengthAfter),l=i}else for(const e of t){const t=l;l=Em(l,e.lengthBefore),e.modified&&a(t,l,e.lengthAfter)}}return r}class vf{constructor(e,t,i){this.modified=e,this.lengthBefore=t,this.lengthAfter=i}splitAt(e){const t=Nm(e,this.lengthAfter);return Dm(t,0)?[this,void 0]:this.modified?[new vf(this.modified,this.lengthBefore,e),new vf(this.modified,0,t)]:[new vf(this.modified,e,e),new vf(this.modified,t,t)]}toString(){return`${this.modified?"M":"U"}:${Lm(this.lengthBefore)} -> ${Lm(this.lengthAfter)}`}}function bf(e){const t=[];let i=0;for(const n of e){const e=Nm(i,n.startOffset);Sm(e)||t.push(new vf(!1,e,e));const o=Nm(n.startOffset,n.endOffset);t.push(new vf(!0,o,n.newLength)),i=n.endOffset}return t}class wf extends Tt{didLanguageChange(e){return this.brackets.didLanguageChange(e)}constructor(e,t){if(super(),this.textModel=e,this.getLanguageConfiguration=t,this.didChangeEmitter=new Gt,this.denseKeyProvider=new zm,this.brackets=new lf(this.denseKeyProvider,this.getLanguageConfiguration),this.onDidChange=this.didChangeEmitter.event,this.queuedTextEditsForInitialAstWithoutTokens=[],this.queuedTextEdits=[],e.tokenization.hasTokens)2===e.tokenization.backgroundTokenizationState?(this.initialAstWithoutTokens=void 0,this.astWithTokens=this.parseDocumentFromTextBuffer([],void 0,!1)):(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer([],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens);else{const e=this.brackets.getSingleLanguageBracketTokens(this.textModel.getLanguageId()),t=new rf(this.textModel.getValue(),e);this.initialAstWithoutTokens=mf(t,[],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens}}handleDidChangeBackgroundTokenizationState(){if(2===this.textModel.tokenization.backgroundTokenizationState){const e=void 0===this.initialAstWithoutTokens;this.initialAstWithoutTokens=void 0,e||this.didChangeEmitter.fire()}}handleDidChangeTokens({ranges:e}){const t=e.map((e=>new Pm(km(e.fromLineNumber-1,0),km(e.toLineNumber,0),km(e.toLineNumber-e.fromLineNumber+1,0))));this.handleEdits(t,!0),this.initialAstWithoutTokens||this.didChangeEmitter.fire()}handleContentChanged(e){const t=Pm.fromModelContentChanges(e.changes);this.handleEdits(t,!1)}handleEdits(e,t){const i=_f(this.queuedTextEdits,e);this.queuedTextEdits=i,this.initialAstWithoutTokens&&!t&&(this.queuedTextEditsForInitialAstWithoutTokens=_f(this.queuedTextEditsForInitialAstWithoutTokens,e))}flushQueue(){this.queuedTextEdits.length>0&&(this.astWithTokens=this.parseDocumentFromTextBuffer(this.queuedTextEdits,this.astWithTokens,!1),this.queuedTextEdits=[]),this.queuedTextEditsForInitialAstWithoutTokens.length>0&&(this.initialAstWithoutTokens&&(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer(this.queuedTextEditsForInitialAstWithoutTokens,this.initialAstWithoutTokens,!1)),this.queuedTextEditsForInitialAstWithoutTokens=[])}parseDocumentFromTextBuffer(e,t,i){const n=t;return mf(new of(this.textModel,this.brackets),e,n,i)}getBracketsInRange(e,t){this.flushQueue();const i=km(e.startLineNumber-1,e.startColumn-1),n=km(e.endLineNumber-1,e.endColumn-1);return new ks((e=>{const o=this.initialAstWithoutTokens||this.astWithTokens;Sf(o,0,o.length,i,n,e,0,0,new Map,t)}))}getBracketPairsInRange(e,t){this.flushQueue();const i=Am(e.getStartPosition()),n=Am(e.getEndPosition());return new ks((e=>{const o=this.initialAstWithoutTokens||this.astWithTokens,s=new xf(e,t,this.textModel);kf(o,0,o.length,i,n,s,0,new Map)}))}getFirstBracketAfter(e){this.flushQueue();const t=this.initialAstWithoutTokens||this.astWithTokens;return yf(t,0,t.length,Am(e))}getFirstBracketBefore(e){this.flushQueue();const t=this.initialAstWithoutTokens||this.astWithTokens;return Cf(t,0,t.length,Am(e))}}function Cf(e,t,i,n){if(4===e.kind||2===e.kind){const o=[];for(const n of e.children)i=Em(t,n.length),o.push({nodeOffsetStart:t,nodeOffsetEnd:i}),t=i;for(let t=o.length-1;t>=0;t--){const{nodeOffsetStart:i,nodeOffsetEnd:s}=o[t];if(Mm(i,n)){const o=Cf(e.children[t],i,s,n);if(o)return o}}return null}if(3===e.kind)return null;if(1===e.kind){const n=Om(t,i);return{bracketInfo:e.bracketInfo,range:n}}return null}function yf(e,t,i,n){if(4===e.kind||2===e.kind){for(const o of e.children){if(Mm(n,i=Em(t,o.length))){const e=yf(o,t,i,n);if(e)return e}t=i}return null}if(3===e.kind)return null;if(1===e.kind){const n=Om(t,i);return{bracketInfo:e.bracketInfo,range:n}}return null}function Sf(e,t,i,n,o,s,r,a,l,d,c=!1){if(r>200)return!0;e:for(;;)switch(e.kind){case 4:{const a=e.childrenLength;for(let c=0;c200)return!0;let l=!0;if(2===e.kind){let d=0;if(a){let t=a.get(e.openingBracket.text);void 0===t&&(t=0),d=t,t++,a.set(e.openingBracket.text,t)}const c=Em(t,e.openingBracket.length);let h=-1;if(s.includeMinIndentation&&(h=e.computeMinIndentation(t,s.textModel)),l=s.push(new lm(Om(t,i),Om(t,c),e.closingBracket?Om(Em(c,e.child?.length||0),i):void 0,r,d,e,h)),t=c,l&&e.child){const d=e.child;if(i=Em(t,d.length),Tm(t,o)&&Rm(i,n)&&(l=kf(d,t,i,n,o,s,r+1,a),!l))return!1}a?.set(e.openingBracket.text,d)}else{let i=t;for(const t of e.children){const e=i;if(i=Em(i,t.length),Tm(e,o)&&Tm(n,i)&&(l=kf(t,e,i,n,o,s,r,a),!l))return!1}}return l}class Lf extends Tt{get canBuildAST(){return this.textModel.getValueLength()<=5e6}constructor(e,t){super(),this.textModel=e,this.languageConfigurationService=t,this.bracketPairsTree=this._register(new Rt),this.onDidChangeEmitter=new Gt,this.onDidChange=this.onDidChangeEmitter.event,this.bracketsRequested=!1}handleLanguageConfigurationServiceChange(e){e.languageId&&!this.bracketPairsTree.value?.object.didLanguageChange(e.languageId)||(this.bracketPairsTree.clear(),this.updateBracketPairsTree())}handleDidChangeOptions(e){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeLanguage(e){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeContent(e){this.bracketPairsTree.value?.object.handleContentChanged(e)}handleDidChangeBackgroundTokenizationState(){this.bracketPairsTree.value?.object.handleDidChangeBackgroundTokenizationState()}handleDidChangeTokens(e){this.bracketPairsTree.value?.object.handleDidChangeTokens(e)}updateBracketPairsTree(){if(this.bracketsRequested&&this.canBuildAST){if(!this.bracketPairsTree.value){const i=new Mt;this.bracketPairsTree.value=(e=i.add(new wf(this.textModel,(e=>this.languageConfigurationService.getLanguageConfiguration(e)))),t=i,{object:e,dispose:()=>t?.dispose()}),i.add(this.bracketPairsTree.value.object.onDidChange((e=>this.onDidChangeEmitter.fire(e)))),this.onDidChangeEmitter.fire()}}else this.bracketPairsTree.value&&(this.bracketPairsTree.clear(),this.onDidChangeEmitter.fire());var e,t}getBracketPairsInRange(e){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(e,!1)||ks.empty}getBracketPairsInRangeWithMinIndentation(e){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(e,!0)||ks.empty}getBracketsInRange(e,t=!1){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketsInRange(e,t)||ks.empty}findMatchingBracketUp(e,t,i){const n=this.textModel.validatePosition(t),o=this.textModel.getLanguageIdAtPosition(n.lineNumber,n.column);if(this.canBuildAST){const i=this.languageConfigurationService.getLanguageConfiguration(o).bracketsNew.getClosingBracketInfo(e);if(!i)return null;const n=this.getBracketPairsInRange(Yu.fromPositions(t,t)).findLast((e=>i.closes(e.openingBracketInfo)));return n?n.openingBracketRange:null}{const t=e.toLowerCase(),s=this.languageConfigurationService.getLanguageConfiguration(o).brackets;if(!s)return null;const r=s.textIsBracket[t];return r?Df(this._findMatchingBracketUp(r,n,Ef(i))):null}}matchBracket(e,t){if(this.canBuildAST){const t=this.getBracketPairsInRange(Yu.fromPositions(e,e)).filter((t=>void 0!==t.closingBracketRange&&(t.openingBracketRange.containsPosition(e)||t.closingBracketRange.containsPosition(e)))).findLastMaxBy(ws((t=>t.openingBracketRange.containsPosition(e)?t.openingBracketRange:t.closingBracketRange),Yu.compareRangesUsingStarts));return t?[t.openingBracketRange,t.closingBracketRange]:null}{const i=Ef(t);return this._matchBracket(this.textModel.validatePosition(e),i)}}_establishBracketSearchOffsets(e,t,i,n){const o=t.getCount(),s=t.getLanguageId(n);let r=Math.max(0,e.column-1-i.maxBracketLength);for(let e=n-1;e>=0;e--){const i=t.getEndOffset(e);if(i<=r)break;if(jg(t.getStandardTokenType(e))||t.getLanguageId(e)!==s){r=i;break}}let a=Math.min(t.getLineContent().length,e.column-1+i.maxBracketLength);for(let e=n+1;e=a)break;if(jg(t.getStandardTokenType(e))||t.getLanguageId(e)!==s){a=i;break}}return{searchStartOffset:r,searchEndOffset:a}}_matchBracket(e,t){const i=e.lineNumber,n=this.textModel.tokenization.getLineTokens(i),o=this.textModel.getLineContent(i),s=n.findTokenIndexAtOffset(e.column-1);if(s<0)return null;const r=this.languageConfigurationService.getLanguageConfiguration(n.getLanguageId(s)).brackets;if(r&&!jg(n.getStandardTokenType(s))){let{searchStartOffset:a,searchEndOffset:l}=this._establishBracketSearchOffsets(e,n,r,s),d=null;for(;;){const n=sp.findNextBracketInRange(r.forwardRegex,i,o,a,l);if(!n)break;if(n.startColumn<=e.column&&e.column<=n.endColumn){const e=o.substring(n.startColumn-1,n.endColumn-1).toLowerCase(),i=this._matchFoundBracket(n,r.textIsBracket[e],r.textIsOpenBracket[e],t);if(i){if(i instanceof If)return null;d=i}}a=n.endColumn-1}if(d)return d}if(s>0&&n.getStartOffset(s)===e.column-1){const r=s-1,a=this.languageConfigurationService.getLanguageConfiguration(n.getLanguageId(r)).brackets;if(a&&!jg(n.getStandardTokenType(r))){const{searchStartOffset:s,searchEndOffset:l}=this._establishBracketSearchOffsets(e,n,a,r),d=sp.findPrevBracketInRange(a.reversedRegex,i,o,s,l);if(d&&d.startColumn<=e.column&&e.column<=d.endColumn){const e=o.substring(d.startColumn-1,d.endColumn-1).toLowerCase(),i=this._matchFoundBracket(d,a.textIsBracket[e],a.textIsOpenBracket[e],t);if(i)return i instanceof If?null:i}}}return null}_matchFoundBracket(e,t,i,n){if(!t)return null;const o=i?this._findMatchingBracketDown(t,e.getEndPosition(),n):this._findMatchingBracketUp(t,e.getStartPosition(),n);return o?o instanceof If?o:[e,o]:null}_findMatchingBracketUp(e,t,i){const n=e.languageId,o=e.reversedRegex;let s=-1,r=0;const a=(t,n,a,l)=>{for(;;){if(i&&++r%100==0&&!i())return If.INSTANCE;const d=sp.findPrevBracketInRange(o,t,n,a,l);if(!d)break;const c=n.substring(d.startColumn-1,d.endColumn-1).toLowerCase();if(e.isOpen(c)?s++:e.isClose(c)&&s--,0===s)return d;l=d.startColumn-1}return null};for(let e=t.lineNumber;e>=1;e--){const i=this.textModel.tokenization.getLineTokens(e),o=i.getCount(),s=this.textModel.getLineContent(e);let r=o-1,l=s.length,d=s.length;e===t.lineNumber&&(r=i.findTokenIndexAtOffset(t.column-1),l=t.column-1,d=t.column-1);let c=!0;for(;r>=0;r--){const t=i.getLanguageId(r)===n&&!jg(i.getStandardTokenType(r));if(t)c?l=i.getStartOffset(r):(l=i.getStartOffset(r),d=i.getEndOffset(r));else if(c&&l!==d){const t=a(e,s,l,d);if(t)return t}c=t}if(c&&l!==d){const t=a(e,s,l,d);if(t)return t}}return null}_findMatchingBracketDown(e,t,i){const n=e.languageId,o=e.forwardRegex;let s=1,r=0;const a=(t,n,a,l)=>{for(;;){if(i&&++r%100==0&&!i())return If.INSTANCE;const d=sp.findNextBracketInRange(o,t,n,a,l);if(!d)break;const c=n.substring(d.startColumn-1,d.endColumn-1).toLowerCase();if(e.isOpen(c)?s++:e.isClose(c)&&s--,0===s)return d;a=d.endColumn-1}return null},l=this.textModel.getLineCount();for(let e=t.lineNumber;e<=l;e++){const i=this.textModel.tokenization.getLineTokens(e),o=i.getCount(),s=this.textModel.getLineContent(e);let r=0,l=0,d=0;e===t.lineNumber&&(r=i.findTokenIndexAtOffset(t.column-1),l=t.column-1,d=t.column-1);let c=!0;for(;r=1;e--){const s=this.textModel.tokenization.getLineTokens(e),r=s.getCount(),a=this.textModel.getLineContent(e);let l=r-1,d=a.length,c=a.length;if(e===t.lineNumber){l=s.findTokenIndexAtOffset(t.column-1),d=t.column-1,c=t.column-1;const e=s.getLanguageId(l);i!==e&&(i=e,n=this.languageConfigurationService.getLanguageConfiguration(i).brackets,o=this.languageConfigurationService.getLanguageConfiguration(i).bracketsNew)}let h=!0;for(;l>=0;l--){const t=s.getLanguageId(l);if(i!==t){if(n&&o&&h&&d!==c){const t=sp.findPrevBracketInRange(n.reversedRegex,e,a,d,c);if(t)return this._toFoundBracket(o,t);h=!1}i=t,n=this.languageConfigurationService.getLanguageConfiguration(i).brackets,o=this.languageConfigurationService.getLanguageConfiguration(i).bracketsNew}const r=!!n&&!jg(s.getStandardTokenType(l));if(r)h?d=s.getStartOffset(l):(d=s.getStartOffset(l),c=s.getEndOffset(l));else if(o&&n&&h&&d!==c){const t=sp.findPrevBracketInRange(n.reversedRegex,e,a,d,c);if(t)return this._toFoundBracket(o,t)}h=r}if(o&&n&&h&&d!==c){const t=sp.findPrevBracketInRange(n.reversedRegex,e,a,d,c);if(t)return this._toFoundBracket(o,t)}}return null}findNextBracket(e){const t=this.textModel.validatePosition(e);if(this.canBuildAST)return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getFirstBracketAfter(t)||null;const i=this.textModel.getLineCount();let n=null,o=null,s=null;for(let e=t.lineNumber;e<=i;e++){const i=this.textModel.tokenization.getLineTokens(e),r=i.getCount(),a=this.textModel.getLineContent(e);let l=0,d=0,c=0;if(e===t.lineNumber){l=i.findTokenIndexAtOffset(t.column-1),d=t.column-1,c=t.column-1;const e=i.getLanguageId(l);n!==e&&(n=e,o=this.languageConfigurationService.getLanguageConfiguration(n).brackets,s=this.languageConfigurationService.getLanguageConfiguration(n).bracketsNew)}let h=!0;for(;lvoid 0!==t.closingBracketRange&&t.range.strictContainsRange(e)));return t?[t.openingBracketRange,t.closingBracketRange]:null}const n=Ef(t),o=this.textModel.getLineCount(),s=new Map;let r=[];const a=(e,t)=>{if(!s.has(e)){const i=[];for(let e=0,n=t?t.brackets.length:0;e{for(;;){if(n&&++l%100==0&&!n())return If.INSTANCE;const a=sp.findNextBracketInRange(e.forwardRegex,t,i,o,s);if(!a)break;const d=i.substring(a.startColumn-1,a.endColumn-1).toLowerCase(),c=e.textIsBracket[d];if(c&&(c.isOpen(d)?r[c.index]++:c.isClose(d)&&r[c.index]--,-1===r[c.index]))return this._matchFoundBracket(a,c,!1,n);o=a.endColumn-1}return null};let c=null,h=null;for(let e=i.lineNumber;e<=o;e++){const t=this.textModel.tokenization.getLineTokens(e),n=t.getCount(),o=this.textModel.getLineContent(e);let s=0,r=0,l=0;if(e===i.lineNumber){s=t.findTokenIndexAtOffset(i.column-1),r=i.column-1,l=i.column-1;const e=t.getLanguageId(s);c!==e&&(c=e,h=this.languageConfigurationService.getLanguageConfiguration(c).brackets,a(c,h))}let u=!0;for(;s!0;{const t=Date.now();return()=>Date.now()-t<=e}}class If{static{this.INSTANCE=new If}constructor(){this._searchCanceledBrand=void 0}}function Df(e){return e instanceof If?null:e}function Nf(e){return`--vscode-${e.replace(/\./g,"-")}`}function Mf(e){return`var(${Nf(e)})`}function Tf(e,t){return`var(${Nf(e)}, ${t})`}const Rf="base.contributions.colors",Af=new class extends Tt{constructor(){super(),this._onDidChangeSchema=this._register(new Gt),this.onDidChangeSchema=this._onDidChangeSchema.event,this.colorSchema={type:"object",properties:{}},this.colorReferenceSchema={type:"string",enum:[],enumDescriptions:[]},this.colorsById={}}registerColor(e,t,i,n=!1,o){const s={id:e,description:i,defaults:t,needsTransparency:n,deprecationMessage:o};this.colorsById[e]=s;const r={type:"string",format:"color-hex",defaultSnippets:[{body:"${1:#ff0000}"}]};return o&&(r.deprecationMessage=o),n&&(r.pattern="^#(?:(?[0-9a-fA-f]{3}[0-9a-eA-E])|(?:[0-9a-fA-F]{6}(?:(?![fF]{2})(?:[0-9a-fA-F]{2}))))?$",r.patternErrorMessage=C(2004,"This color must be transparent or it will obscure content")),this.colorSchema.properties[e]={description:i,oneOf:[r,{type:"string",const:"default",description:C(2005,"Use the default color.")}]},this.colorReferenceSchema.enum.push(e),this.colorReferenceSchema.enumDescriptions.push(i),this._onDidChangeSchema.fire(),e}getColors(){return Object.keys(this.colorsById).map((e=>this.colorsById[e]))}resolveDefaultColor(e,t){const i=this.colorsById[e];if(i?.defaults)return Vf(null!==(n=i.defaults)&&"object"==typeof n&&"light"in n&&"dark"in n?i.defaults[t.type]:i.defaults,t);var n}getColorSchema(){return this.colorSchema}toString(){return Object.keys(this.colorsById).sort(((e,t)=>{const i=-1===e.indexOf(".")?0:1,n=-1===t.indexOf(".")?0:1;return i!==n?i-n:e.localeCompare(t)})).map((e=>`- \`${e}\`: ${this.colorsById[e].description}`)).join("\n")}};function Of(e,t,i,n,o){return Af.registerColor(e,t,i,n,o)}function Pf(e,t){return{op:0,value:e,factor:t}}function Ff(e,t){return{op:1,value:e,factor:t}}function Bf(e,t){return{op:2,value:e,factor:t}}function Wf(...e){return{op:4,values:e}}function Hf(e,t,i,n){return{op:5,value:e,background:t,factor:i,transparency:n}}function Vf(e,t){if(null!==e)return"string"==typeof e?"#"===e[0]?kg.fromHex(e):t.getColor(e):e instanceof kg?e:"object"==typeof e?function(e,t){switch(e.op){case 0:return Vf(e.value,t)?.darken(e.factor);case 1:return Vf(e.value,t)?.lighten(e.factor);case 2:return Vf(e.value,t)?.transparent(e.factor);case 7:{const i=Vf(e.color,t)||kg.transparent,n=Vf(e.with,t)||kg.transparent;return i.mix(n,e.ratio)}case 3:{const i=Vf(e.background,t);return i?Vf(e.value,t)?.makeOpaque(i):Vf(e.value,t)}case 4:for(const i of e.values){const e=Vf(i,t);if(e)return e}return;case 6:return Vf(t.defines(e.if)?e.then:e.else,t);case 5:{const i=Vf(e.value,t);if(!i)return;const n=Vf(e.background,t);return n?i.isDarkerThan(n)?kg.getLighterColor(i,n,e.factor).transparent(e.transparency):kg.getDarkerColor(i,n,e.factor).transparent(e.transparency):i.transparent(e.factor*e.transparency)}default:throw it()}}(e,t):void 0}su.add(Rf,Af);const zf="vscode://schemas/workbench-colors",Uf=su.as(Cp);Uf.registerSchema(zf,Af.getColorSchema());const jf=new wi((()=>Uf.notifySchemaChanged(zf)),200);Af.onDidChangeSchema((()=>{jf.isScheduled()||jf.schedule()}));const Kf=Of("foreground",{dark:"#CCCCCC",light:"#616161",hcDark:"#FFFFFF",hcLight:"#292929"},C(1756,"Overall foreground color. This color is only used if not overridden by a component.")),qf=(Of("disabledForeground",{dark:"#CCCCCC80",light:"#61616180",hcDark:"#A5A5A5",hcLight:"#7F7F7F"},C(1757,"Overall foreground for disabled elements. This color is only used if not overridden by a component.")),Of("errorForeground",{dark:"#F48771",light:"#A1260D",hcDark:"#F48771",hcLight:"#B5200D"},C(1758,"Overall foreground color for error messages. This color is only used if not overridden by a component.")),Of("descriptionForeground",{light:"#717171",dark:Bf(Kf,.7),hcDark:Bf(Kf,.7),hcLight:Bf(Kf,.7)},C(1759,"Foreground color for description text providing additional information, for example for a label."))),$f=Of("icon.foreground",{dark:"#C5C5C5",light:"#424242",hcDark:"#FFFFFF",hcLight:"#292929"},C(1760,"The default color for icons in the workbench.")),Gf=Of("focusBorder",{dark:"#007FD4",light:"#0090F1",hcDark:"#F38518",hcLight:"#006BBD"},C(1761,"Overall border color for focused elements. This color is only used if not overridden by a component.")),Yf=Of("contrastBorder",{light:null,dark:null,hcDark:"#6FC3DF",hcLight:"#0F4A85"},C(1762,"An extra border around elements to separate them from others for greater contrast.")),Zf=Of("contrastActiveBorder",{light:null,dark:null,hcDark:Gf,hcLight:Gf},C(1763,"An extra border around active elements to separate them from others for greater contrast.")),Qf=(Of("selection.background",null,C(1764,"The background color of text selections in the workbench (e.g. for input fields or text areas). Note that this does not apply to selections within the editor.")),Of("textLink.foreground",{light:"#006AB1",dark:"#3794FF",hcDark:"#21A6FF",hcLight:"#0F4A85"},C(1765,"Foreground color for links in text."))),Xf=(Of("textLink.activeForeground",{light:"#006AB1",dark:"#3794FF",hcDark:"#21A6FF",hcLight:"#0F4A85"},C(1766,"Foreground color for links in text when clicked on and on mouse hover.")),Of("textSeparator.foreground",{light:"#0000002e",dark:"#ffffff2e",hcDark:kg.black,hcLight:"#292929"},C(1767,"Color for text separators.")),Of("textPreformat.foreground",{light:"#A31515",dark:"#D7BA7D",hcDark:"#000000",hcLight:"#FFFFFF"},C(1768,"Foreground color for preformatted text segments.")),Of("textPreformat.background",{light:"#0000001A",dark:"#FFFFFF1A",hcDark:"#FFFFFF",hcLight:"#09345f"},C(1769,"Background color for preformatted text segments.")),Of("textBlockQuote.background",{light:"#f2f2f2",dark:"#222222",hcDark:null,hcLight:"#F2F2F2"},C(1770,"Background color for block quotes in text.")),Of("textBlockQuote.border",{light:"#007acc80",dark:"#007acc80",hcDark:kg.white,hcLight:"#292929"},C(1771,"Border color for block quotes in text.")),Of("textCodeBlock.background",{light:"#dcdcdc66",dark:"#0a0a0a66",hcDark:kg.black,hcLight:"#F2F2F2"},C(1772,"Background color for code blocks in text.")),Of("sash.hoverBorder",Gf,C(1977,"Border color of active sashes.")),Of("badge.background",{dark:"#4D4D4D",light:"#C4C4C4",hcDark:kg.black,hcLight:"#0F4A85"},C(1978,"Badge background color. Badges are small information labels, e.g. for search results count."))),Jf=Of("badge.foreground",{dark:kg.white,light:"#333",hcDark:kg.white,hcLight:kg.white},C(1979,"Badge foreground color. Badges are small information labels, e.g. for search results count.")),e_=(Of("activityWarningBadge.foreground",{dark:kg.black.lighten(.2),light:kg.white,hcDark:null,hcLight:kg.black.lighten(.2)},C(1980,"Foreground color of the warning activity badge")),Of("activityWarningBadge.background",{dark:"#CCA700",light:"#BF8803",hcDark:null,hcLight:"#CCA700"},C(1981,"Background color of the warning activity badge")),Of("activityErrorBadge.foreground",{dark:kg.black.lighten(.2),light:kg.white,hcDark:null,hcLight:kg.black.lighten(.2)},C(1982,"Foreground color of the error activity badge")),Of("activityErrorBadge.background",{dark:"#F14C4C",light:"#E51400",hcDark:null,hcLight:"#F14C4C"},C(1983,"Background color of the error activity badge")),Of("scrollbar.shadow",{dark:"#000000",light:"#DDDDDD",hcDark:null,hcLight:null},C(1984,"Scrollbar shadow to indicate that the view is scrolled."))),t_=Of("scrollbarSlider.background",{dark:kg.fromHex("#797979").transparent(.4),light:kg.fromHex("#646464").transparent(.4),hcDark:Bf(Yf,.6),hcLight:Bf(Yf,.4)},C(1985,"Scrollbar slider background color.")),i_=Of("scrollbarSlider.hoverBackground",{dark:kg.fromHex("#646464").transparent(.7),light:kg.fromHex("#646464").transparent(.7),hcDark:Bf(Yf,.8),hcLight:Bf(Yf,.8)},C(1986,"Scrollbar slider background color when hovering.")),n_=Of("scrollbarSlider.activeBackground",{dark:kg.fromHex("#BFBFBF").transparent(.4),light:kg.fromHex("#000000").transparent(.6),hcDark:Yf,hcLight:Yf},C(1987,"Scrollbar slider background color when clicked on.")),o_=Of("progressBar.background",{dark:kg.fromHex("#0E70C0"),light:kg.fromHex("#0E70C0"),hcDark:Yf,hcLight:Yf},C(1988,"Background color of the progress bar that can show for long running operations.")),s_=(Of("chart.line",{dark:"#236B8E",light:"#236B8E",hcDark:"#236B8E",hcLight:"#236B8E"},C(1989,"Line color for the chart.")),Of("chart.axis",{dark:kg.fromHex("#BFBFBF").transparent(.4),light:kg.fromHex("#000000").transparent(.6),hcDark:Yf,hcLight:Yf},C(1990,"Axis color for the chart.")),Of("chart.guide",{dark:kg.fromHex("#BFBFBF").transparent(.2),light:kg.fromHex("#000000").transparent(.2),hcDark:Yf,hcLight:Yf},C(1991,"Guide line for the chart.")),Of("editor.background",{light:"#ffffff",dark:"#1E1E1E",hcDark:kg.black,hcLight:kg.white},C(1781,"Editor background color."))),r_=Of("editor.foreground",{light:"#333333",dark:"#BBBBBB",hcDark:kg.white,hcLight:Kf},C(1782,"Editor default foreground color.")),a_=(Of("editorStickyScroll.background",s_,C(1783,"Background color of sticky scroll in the editor")),Of("editorStickyScrollGutter.background",s_,C(1784,"Background color of the gutter part of sticky scroll in the editor")),Of("editorStickyScrollHover.background",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:null,hcLight:kg.fromHex("#0F4A85").transparent(.1)},C(1785,"Background color of sticky scroll on hover in the editor")),Of("editorStickyScroll.border",{dark:null,light:null,hcDark:Yf,hcLight:Yf},C(1786,"Border color of sticky scroll in the editor")),Of("editorStickyScroll.shadow",e_,C(1787," Shadow color of sticky scroll in the editor")),Of("editorWidget.background",{dark:"#252526",light:"#F3F3F3",hcDark:"#0C141F",hcLight:kg.white},C(1788,"Background color of editor widgets, such as find/replace."))),l_=Of("editorWidget.foreground",Kf,C(1789,"Foreground color of editor widgets, such as find/replace.")),d_=Of("editorWidget.border",{dark:"#454545",light:"#C8C8C8",hcDark:Yf,hcLight:Yf},C(1790,"Border color of editor widgets. The color is only used if the widget chooses to have a border and if the color is not overridden by a widget.")),c_=(Of("editorWidget.resizeBorder",null,C(1791,"Border color of the resize bar of editor widgets. The color is only used if the widget chooses to have a resize border and if the color is not overridden by a widget.")),Of("editorError.background",null,C(1792,"Background color of error text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0),Of("editorError.foreground",{dark:"#F14C4C",light:"#E51400",hcDark:"#F48771",hcLight:"#B5200D"},C(1793,"Foreground color of error squigglies in the editor."))),h_=Of("editorError.border",{dark:null,light:null,hcDark:kg.fromHex("#E47777").transparent(.8),hcLight:"#B5200D"},C(1794,"If set, color of double underlines for errors in the editor.")),u_=Of("editorWarning.background",null,C(1795,"Background color of warning text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0),g_=Of("editorWarning.foreground",{dark:"#CCA700",light:"#BF8803",hcDark:"#FFD370",hcLight:"#895503"},C(1796,"Foreground color of warning squigglies in the editor.")),p_=Of("editorWarning.border",{dark:null,light:null,hcDark:kg.fromHex("#FFCC00").transparent(.8),hcLight:kg.fromHex("#FFCC00").transparent(.8)},C(1797,"If set, color of double underlines for warnings in the editor.")),m_=(Of("editorInfo.background",null,C(1798,"Background color of info text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0),Of("editorInfo.foreground",{dark:"#3794FF",light:"#1a85ff",hcDark:"#3794FF",hcLight:"#1a85ff"},C(1799,"Foreground color of info squigglies in the editor."))),f_=Of("editorInfo.border",{dark:null,light:null,hcDark:kg.fromHex("#3794FF").transparent(.8),hcLight:"#292929"},C(1800,"If set, color of double underlines for infos in the editor.")),__=Of("editorHint.foreground",{dark:kg.fromHex("#eeeeee").transparent(.7),light:"#6c6c6c",hcDark:null,hcLight:null},C(1801,"Foreground color of hint squigglies in the editor.")),v_=(Of("editorHint.border",{dark:null,light:null,hcDark:kg.fromHex("#eeeeee").transparent(.8),hcLight:"#292929"},C(1802,"If set, color of double underlines for hints in the editor.")),Of("editorLink.activeForeground",{dark:"#4E94CE",light:kg.blue,hcDark:kg.cyan,hcLight:"#292929"},C(1803,"Color of active links."))),b_=Of("editor.selectionBackground",{light:"#ADD6FF",dark:"#264F78",hcDark:"#f3f518",hcLight:"#0F4A85"},C(1804,"Color of the editor selection.")),w_=Of("editor.selectionForeground",{light:null,dark:null,hcDark:"#000000",hcLight:kg.white},C(1805,"Color of the selected text for high contrast.")),C_=Of("editor.inactiveSelectionBackground",{light:Bf(b_,.5),dark:Bf(b_,.5),hcDark:Bf(b_,.7),hcLight:Bf(b_,.5)},C(1806,"Color of the selection in an inactive editor. The color must not be opaque so as not to hide underlying decorations."),!0),y_=Of("editor.selectionHighlightBackground",{light:Hf(b_,s_,.3,.6),dark:Hf(b_,s_,.3,.6),hcDark:null,hcLight:null},C(1807,"Color for regions with the same content as the selection. The color must not be opaque so as not to hide underlying decorations."),!0),S_=(Of("editor.selectionHighlightBorder",{light:null,dark:null,hcDark:Zf,hcLight:Zf},C(1808,"Border color for regions with the same content as the selection.")),Of("editor.compositionBorder",{light:"#000000",dark:"#ffffff",hcLight:"#000000",hcDark:"#ffffff"},C(1809,"The border color for an IME composition.")),Of("editor.findMatchBackground",{light:"#A8AC94",dark:"#515C6A",hcDark:null,hcLight:null},C(1810,"Color of the current search match.")),Of("editor.findMatchForeground",null,C(1811,"Text color of the current search match."))),x_=Of("editor.findMatchHighlightBackground",{light:"#EA5C0055",dark:"#EA5C0055",hcDark:null,hcLight:null},C(1812,"Color of the other search matches. The color must not be opaque so as not to hide underlying decorations."),!0),k_=Of("editor.findMatchHighlightForeground",null,C(1813,"Foreground color of the other search matches."),!0),L_=(Of("editor.findRangeHighlightBackground",{dark:"#3a3d4166",light:"#b4b4b44d",hcDark:null,hcLight:null},C(1814,"Color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0),Of("editor.findMatchBorder",{light:null,dark:null,hcDark:Zf,hcLight:Zf},C(1815,"Border color of the current search match.")),Of("editor.findMatchHighlightBorder",{light:null,dark:null,hcDark:Zf,hcLight:Zf},C(1816,"Border color of the other search matches."))),E_=Of("editor.findRangeHighlightBorder",{dark:null,light:null,hcDark:Bf(Zf,.4),hcLight:Bf(Zf,.4)},C(1817,"Border color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0),I_=(Of("editor.hoverHighlightBackground",{light:"#ADD6FF26",dark:"#264f7840",hcDark:"#ADD6FF26",hcLight:null},C(1818,"Highlight below the word for which a hover is shown. The color must not be opaque so as not to hide underlying decorations."),!0),Of("editorHoverWidget.background",a_,C(1819,"Background color of the editor hover."))),D_=Of("editorHoverWidget.foreground",l_,C(1820,"Foreground color of the editor hover.")),N_=Of("editorHoverWidget.border",d_,C(1821,"Border color of the editor hover.")),M_=(Of("editorHoverWidget.statusBarBackground",{dark:Ff(I_,.2),light:Pf(I_,.05),hcDark:a_,hcLight:a_},C(1822,"Background color of the editor hover status bar.")),Of("editorInlayHint.foreground",{dark:"#969696",light:"#969696",hcDark:kg.white,hcLight:kg.black},C(1823,"Foreground color of inline hints"))),T_=Of("editorInlayHint.background",{dark:Bf(Xf,.1),light:Bf(Xf,.1),hcDark:Bf(kg.white,.1),hcLight:Bf(Xf,.1)},C(1824,"Background color of inline hints")),R_=Of("editorInlayHint.typeForeground",M_,C(1825,"Foreground color of inline hints for types")),A_=Of("editorInlayHint.typeBackground",T_,C(1826,"Background color of inline hints for types")),O_=Of("editorInlayHint.parameterForeground",M_,C(1827,"Foreground color of inline hints for parameters")),P_=Of("editorInlayHint.parameterBackground",T_,C(1828,"Background color of inline hints for parameters")),F_=Of("editorLightBulb.foreground",{dark:"#FFCC00",light:"#DDB100",hcDark:"#FFCC00",hcLight:"#007ACC"},C(1829,"The color used for the lightbulb actions icon.")),B_=(Of("editorLightBulbAutoFix.foreground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},C(1830,"The color used for the lightbulb auto fix actions icon.")),Of("editorLightBulbAi.foreground",F_,C(1831,"The color used for the lightbulb AI icon.")),Of("editor.snippetTabstopHighlightBackground",{dark:new kg(new yg(124,124,124,.3)),light:new kg(new yg(10,50,100,.2)),hcDark:new kg(new yg(124,124,124,.3)),hcLight:new kg(new yg(10,50,100,.2))},C(1832,"Highlight background color of a snippet tabstop.")),Of("editor.snippetTabstopHighlightBorder",null,C(1833,"Highlight border color of a snippet tabstop.")),Of("editor.snippetFinalTabstopHighlightBackground",null,C(1834,"Highlight background color of the final tabstop of a snippet.")),Of("editor.snippetFinalTabstopHighlightBorder",{dark:"#525252",light:new kg(new yg(10,50,100,.5)),hcDark:"#525252",hcLight:"#292929"},C(1835,"Highlight border color of the final tabstop of a snippet.")),new kg(new yg(155,185,85,.2))),W_=new kg(new yg(255,0,0,.2)),H_=Of("diffEditor.insertedTextBackground",{dark:"#9ccc2c33",light:"#9ccc2c40",hcDark:null,hcLight:null},C(1836,"Background color for text that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0),V_=Of("diffEditor.removedTextBackground",{dark:"#ff000033",light:"#ff000033",hcDark:null,hcLight:null},C(1837,"Background color for text that got removed. The color must not be opaque so as not to hide underlying decorations."),!0),z_=Of("diffEditor.insertedLineBackground",{dark:B_,light:B_,hcDark:null,hcLight:null},C(1838,"Background color for lines that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0),U_=(Of("diffEditor.removedLineBackground",{dark:W_,light:W_,hcDark:null,hcLight:null},C(1839,"Background color for lines that got removed. The color must not be opaque so as not to hide underlying decorations."),!0),Of("diffEditorGutter.insertedLineBackground",null,C(1840,"Background color for the margin where lines got inserted.")),Of("diffEditorGutter.removedLineBackground",null,C(1841,"Background color for the margin where lines got removed.")),Of("diffEditorOverview.insertedForeground",null,C(1842,"Diff overview ruler foreground for inserted content."))),j_=Of("diffEditorOverview.removedForeground",null,C(1843,"Diff overview ruler foreground for removed content.")),K_=(Of("diffEditor.insertedTextBorder",{dark:null,light:null,hcDark:"#33ff2eff",hcLight:"#374E06"},C(1844,"Outline color for the text that got inserted.")),Of("diffEditor.removedTextBorder",{dark:null,light:null,hcDark:"#FF008F",hcLight:"#AD0707"},C(1845,"Outline color for text that got removed.")),Of("diffEditor.border",{dark:null,light:null,hcDark:Yf,hcLight:Yf},C(1846,"Border color between the two text editors.")),Of("diffEditor.diagonalFill",{dark:"#cccccc33",light:"#22222233",hcDark:null,hcLight:null},C(1847,"Color of the diff editor's diagonal fill. The diagonal fill is used in side-by-side diff views.")),Of("diffEditor.unchangedRegionBackground","sideBar.background",C(1848,"The background color of unchanged blocks in the diff editor.")),Of("diffEditor.unchangedRegionForeground","foreground",C(1849,"The foreground color of unchanged blocks in the diff editor.")),Of("diffEditor.unchangedCodeBackground",{dark:"#74747429",light:"#b8b8b829",hcDark:null,hcLight:null},C(1850,"The background color of unchanged code in the diff editor.")),Of("widget.shadow",{dark:Bf(kg.black,.36),light:Bf(kg.black,.16),hcDark:null,hcLight:null},C(1851,"Shadow color of widgets such as find/replace inside the editor."))),q_=Of("widget.border",{dark:null,light:null,hcDark:Yf,hcLight:Yf},C(1852,"Border color of widgets such as find/replace inside the editor.")),$_=Of("toolbar.hoverBackground",{dark:"#5a5d5e50",light:"#b8b8b850",hcDark:null,hcLight:null},C(1853,"Toolbar background when hovering over actions using the mouse")),G_=(Of("toolbar.hoverOutline",{dark:null,light:null,hcDark:Zf,hcLight:Zf},C(1854,"Toolbar outline when hovering over actions using the mouse")),Of("toolbar.activeBackground",{dark:Ff($_,.1),light:Pf($_,.1),hcDark:null,hcLight:null},C(1855,"Toolbar background when holding the mouse over actions")),Of("breadcrumb.foreground",Bf(Kf,.8),C(1856,"Color of focused breadcrumb items."))),Y_=Of("breadcrumb.background",s_,C(1857,"Background color of breadcrumb items.")),Z_=Of("breadcrumb.focusForeground",{light:Pf(Kf,.2),dark:Ff(Kf,.1),hcDark:Ff(Kf,.1),hcLight:Ff(Kf,.1)},C(1858,"Color of focused breadcrumb items.")),Q_=Of("breadcrumb.activeSelectionForeground",{light:Pf(Kf,.2),dark:Ff(Kf,.1),hcDark:Ff(Kf,.1),hcLight:Ff(Kf,.1)},C(1859,"Color of selected breadcrumb items.")),X_=(Of("breadcrumbPicker.background",a_,C(1860,"Background color of breadcrumb item picker.")),kg.fromHex("#40C8AE").transparent(.5)),J_=kg.fromHex("#40A6FF").transparent(.5),ev=kg.fromHex("#606060").transparent(.4),tv=Of("merge.currentHeaderBackground",{dark:X_,light:X_,hcDark:null,hcLight:null},C(1861,"Current header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0),iv=(Of("merge.currentContentBackground",Bf(tv,.4),C(1862,"Current content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0),Of("merge.incomingHeaderBackground",{dark:J_,light:J_,hcDark:null,hcLight:null},C(1863,"Incoming header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0)),nv=(Of("merge.incomingContentBackground",Bf(iv,.4),C(1864,"Incoming content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0),Of("merge.commonHeaderBackground",{dark:ev,light:ev,hcDark:null,hcLight:null},C(1865,"Common ancestor header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0)),ov=(Of("merge.commonContentBackground",Bf(nv,.4),C(1866,"Common ancestor content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0),Of("merge.border",{dark:null,light:null,hcDark:"#C3DF6F",hcLight:"#007ACC"},C(1867,"Border color on headers and the splitter in inline merge-conflicts."))),sv=(Of("editorOverviewRuler.currentContentForeground",{dark:Bf(tv,1),light:Bf(tv,1),hcDark:ov,hcLight:ov},C(1868,"Current overview ruler foreground for inline merge-conflicts.")),Of("editorOverviewRuler.incomingContentForeground",{dark:Bf(iv,1),light:Bf(iv,1),hcDark:ov,hcLight:ov},C(1869,"Incoming overview ruler foreground for inline merge-conflicts.")),Of("editorOverviewRuler.commonContentForeground",{dark:Bf(nv,1),light:Bf(nv,1),hcDark:ov,hcLight:ov},C(1870,"Common ancestor overview ruler foreground for inline merge-conflicts.")),Of("editorOverviewRuler.findMatchForeground",{dark:"#d186167e",light:"#d186167e",hcDark:"#AB5A00",hcLight:"#AB5A00"},C(1871,"Overview ruler marker color for find matches. The color must not be opaque so as not to hide underlying decorations."),!0)),rv=Of("editorOverviewRuler.selectionHighlightForeground","#A0A0A0CC",C(1872,"Overview ruler marker color for selection highlights. The color must not be opaque so as not to hide underlying decorations."),!0),av=Of("problemsErrorIcon.foreground",c_,C(1873,"The color used for the problems error icon.")),lv=Of("problemsWarningIcon.foreground",g_,C(1874,"The color used for the problems warning icon.")),dv=Of("problemsInfoIcon.foreground",m_,C(1875,"The color used for the problems info icon.")),cv=Of("minimap.findMatchHighlight",{light:"#d18616",dark:"#d18616",hcDark:"#AB5A00",hcLight:"#0F4A85"},C(1966,"Minimap marker color for find matches."),!0),hv=Of("minimap.selectionOccurrenceHighlight",{light:"#c9c9c9",dark:"#676767",hcDark:"#ffffff",hcLight:"#0F4A85"},C(1967,"Minimap marker color for repeating editor selections."),!0),uv=Of("minimap.selectionHighlight",{light:"#ADD6FF",dark:"#264F78",hcDark:"#ffffff",hcLight:"#0F4A85"},C(1968,"Minimap marker color for the editor selection."),!0),gv=Of("minimap.infoHighlight",{dark:m_,light:m_,hcDark:f_,hcLight:f_},C(1969,"Minimap marker color for infos.")),pv=Of("minimap.warningHighlight",{dark:g_,light:g_,hcDark:p_,hcLight:p_},C(1970,"Minimap marker color for warnings.")),mv=Of("minimap.errorHighlight",{dark:new kg(new yg(255,18,18,.7)),light:new kg(new yg(255,18,18,.7)),hcDark:new kg(new yg(255,50,50,1)),hcLight:"#B5200D"},C(1971,"Minimap marker color for errors.")),fv=Of("minimap.background",null,C(1972,"Minimap background color.")),_v=Of("minimap.foregroundOpacity",kg.fromHex("#000f"),C(1973,'Opacity of foreground elements rendered in the minimap. For example, "#000000c0" will render the elements with 75% opacity.')),vv=(Of("minimapSlider.background",Bf(t_,.5),C(1974,"Minimap slider background color.")),Of("minimapSlider.hoverBackground",Bf(i_,.5),C(1975,"Minimap slider background color when hovering.")),Of("minimapSlider.activeBackground",Bf(n_,.5),C(1976,"Minimap slider background color when clicked on.")),Of("charts.foreground",Kf,C(1773,"The foreground color used in charts.")),Of("charts.lines",Bf(Kf,.5),C(1774,"The color used for horizontal lines in charts.")),Of("charts.red",c_,C(1775,"The red color used in chart visualizations.")),Of("charts.blue",m_,C(1776,"The blue color used in chart visualizations.")),Of("charts.yellow",g_,C(1777,"The yellow color used in chart visualizations.")),Of("charts.orange",cv,C(1778,"The orange color used in chart visualizations.")),Of("charts.green",{dark:"#89D185",light:"#388A34",hcDark:"#89D185",hcLight:"#374e06"},C(1779,"The green color used in chart visualizations.")),Of("charts.purple",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},C(1780,"The purple color used in chart visualizations.")),Of("input.background",{dark:"#3C3C3C",light:kg.white,hcDark:kg.black,hcLight:kg.white},C(1876,"Input box background."))),bv=Of("input.foreground",Kf,C(1877,"Input box foreground.")),wv=Of("input.border",{dark:null,light:null,hcDark:Yf,hcLight:Yf},C(1878,"Input box border.")),Cv=Of("inputOption.activeBorder",{dark:"#007ACC",light:"#007ACC",hcDark:Yf,hcLight:Yf},C(1879,"Border color of activated options in input fields.")),yv=Of("inputOption.hoverBackground",{dark:"#5a5d5e80",light:"#b8b8b850",hcDark:null,hcLight:null},C(1880,"Background color of activated options in input fields.")),Sv=Of("inputOption.activeBackground",{dark:Bf(Gf,.4),light:Bf(Gf,.2),hcDark:kg.transparent,hcLight:kg.transparent},C(1881,"Background hover color of options in input fields.")),xv=Of("inputOption.activeForeground",{dark:kg.white,light:kg.black,hcDark:Kf,hcLight:Kf},C(1882,"Foreground color of activated options in input fields.")),kv=(Of("input.placeholderForeground",{light:Bf(Kf,.5),dark:Bf(Kf,.5),hcDark:Bf(Kf,.7),hcLight:Bf(Kf,.7)},C(1883,"Input box foreground color for placeholder text.")),Of("inputValidation.infoBackground",{dark:"#063B49",light:"#D6ECF2",hcDark:kg.black,hcLight:kg.white},C(1884,"Input validation background color for information severity."))),Lv=Of("inputValidation.infoForeground",{dark:null,light:null,hcDark:null,hcLight:Kf},C(1885,"Input validation foreground color for information severity.")),Ev=Of("inputValidation.infoBorder",{dark:"#007acc",light:"#007acc",hcDark:Yf,hcLight:Yf},C(1886,"Input validation border color for information severity.")),Iv=Of("inputValidation.warningBackground",{dark:"#352A05",light:"#F6F5D2",hcDark:kg.black,hcLight:kg.white},C(1887,"Input validation background color for warning severity.")),Dv=Of("inputValidation.warningForeground",{dark:null,light:null,hcDark:null,hcLight:Kf},C(1888,"Input validation foreground color for warning severity.")),Nv=Of("inputValidation.warningBorder",{dark:"#B89500",light:"#B89500",hcDark:Yf,hcLight:Yf},C(1889,"Input validation border color for warning severity.")),Mv=Of("inputValidation.errorBackground",{dark:"#5A1D1D",light:"#F2DEDE",hcDark:kg.black,hcLight:kg.white},C(1890,"Input validation background color for error severity.")),Tv=Of("inputValidation.errorForeground",{dark:null,light:null,hcDark:null,hcLight:Kf},C(1891,"Input validation foreground color for error severity.")),Rv=Of("inputValidation.errorBorder",{dark:"#BE1100",light:"#BE1100",hcDark:Yf,hcLight:Yf},C(1892,"Input validation border color for error severity.")),Av=Of("dropdown.background",{dark:"#3C3C3C",light:kg.white,hcDark:kg.black,hcLight:kg.white},C(1893,"Dropdown background.")),Ov=Of("dropdown.listBackground",{dark:null,light:null,hcDark:kg.black,hcLight:kg.white},C(1894,"Dropdown list background.")),Pv=Of("dropdown.foreground",{dark:"#F0F0F0",light:Kf,hcDark:kg.white,hcLight:Kf},C(1895,"Dropdown foreground.")),Fv=Of("dropdown.border",{dark:Av,light:"#CECECE",hcDark:Yf,hcLight:Yf},C(1896,"Dropdown border.")),Bv=Of("button.foreground",kg.white,C(1897,"Button foreground color.")),Wv=Of("button.separator",Bf(Bv,.4),C(1898,"Button separator color.")),Hv=Of("button.background",{dark:"#0E639C",light:"#007ACC",hcDark:null,hcLight:"#0F4A85"},C(1899,"Button background color.")),Vv=Of("button.hoverBackground",{dark:Ff(Hv,.2),light:Pf(Hv,.2),hcDark:Hv,hcLight:Hv},C(1900,"Button background color when hovering.")),zv=Of("button.border",Yf,C(1901,"Button border color.")),Uv=Of("button.secondaryForeground",{dark:kg.white,light:kg.white,hcDark:kg.white,hcLight:Kf},C(1902,"Secondary button foreground color.")),jv=Of("button.secondaryBackground",{dark:"#3A3D41",light:"#5F6A79",hcDark:null,hcLight:kg.white},C(1903,"Secondary button background color.")),Kv=Of("button.secondaryHoverBackground",{dark:Ff(jv,.2),light:Pf(jv,.2),hcDark:null,hcLight:null},C(1904,"Secondary button background color when hovering.")),qv=Of("radio.activeForeground",xv,C(1905,"Foreground color of active radio option.")),$v=Of("radio.activeBackground",Sv,C(1906,"Background color of active radio option.")),Gv=Of("radio.activeBorder",Cv,C(1907,"Border color of the active radio option.")),Yv=Of("radio.inactiveForeground",null,C(1908,"Foreground color of inactive radio option.")),Zv=Of("radio.inactiveBackground",null,C(1909,"Background color of inactive radio option.")),Qv=Of("radio.inactiveBorder",{light:Bf(qv,.2),dark:Bf(qv,.2),hcDark:Bf(qv,.4),hcLight:Bf(qv,.2)},C(1910,"Border color of the inactive radio option.")),Xv=Of("radio.inactiveHoverBackground",yv,C(1911,"Background color of inactive active radio option when hovering.")),Jv=Of("checkbox.background",Av,C(1912,"Background color of checkbox widget.")),eb=(Of("checkbox.selectBackground",a_,C(1913,"Background color of checkbox widget when the element it's in is selected.")),Of("checkbox.foreground",Pv,C(1914,"Foreground color of checkbox widget."))),tb=Of("checkbox.border",Fv,C(1915,"Border color of checkbox widget.")),ib=(Of("checkbox.selectBorder",$f,C(1916,"Border color of checkbox widget when the element it's in is selected.")),Of("checkbox.disabled.background",{op:7,color:Jv,with:eb,ratio:.33},C(1917,"Background of a disabled checkbox."))),nb=Of("checkbox.disabled.foreground",{op:7,color:eb,with:Jv,ratio:.33},C(1918,"Foreground of a disabled checkbox.")),ob=Of("keybindingLabel.background",{dark:new kg(new yg(128,128,128,.17)),light:new kg(new yg(221,221,221,.4)),hcDark:kg.transparent,hcLight:kg.transparent},C(1919,"Keybinding label background color. The keybinding label is used to represent a keyboard shortcut.")),sb=Of("keybindingLabel.foreground",{dark:kg.fromHex("#CCCCCC"),light:kg.fromHex("#555555"),hcDark:kg.white,hcLight:Kf},C(1920,"Keybinding label foreground color. The keybinding label is used to represent a keyboard shortcut.")),rb=Of("keybindingLabel.border",{dark:new kg(new yg(51,51,51,.6)),light:new kg(new yg(204,204,204,.4)),hcDark:new kg(new yg(111,195,223)),hcLight:Yf},C(1921,"Keybinding label border color. The keybinding label is used to represent a keyboard shortcut.")),ab=Of("keybindingLabel.bottomBorder",{dark:new kg(new yg(68,68,68,.6)),light:new kg(new yg(187,187,187,.4)),hcDark:new kg(new yg(111,195,223)),hcLight:Kf},C(1922,"Keybinding label border bottom color. The keybinding label is used to represent a keyboard shortcut.")),lb=Of("list.focusBackground",null,C(1923,"List/Tree background color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),db=Of("list.focusForeground",null,C(1924,"List/Tree foreground color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),cb=Of("list.focusOutline",{dark:Gf,light:Gf,hcDark:Zf,hcLight:Zf},C(1925,"List/Tree outline color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),hb=Of("list.focusAndSelectionOutline",null,C(1926,"List/Tree outline color for the focused item when the list/tree is active and selected. An active list/tree has keyboard focus, an inactive does not.")),ub=Of("list.activeSelectionBackground",{dark:"#04395E",light:"#0060C0",hcDark:null,hcLight:kg.fromHex("#0F4A85").transparent(.1)},C(1927,"List/Tree background color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),gb=Of("list.activeSelectionForeground",{dark:kg.white,light:kg.white,hcDark:null,hcLight:null},C(1928,"List/Tree foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),pb=Of("list.activeSelectionIconForeground",null,C(1929,"List/Tree icon foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),mb=Of("list.inactiveSelectionBackground",{dark:"#37373D",light:"#E4E6F1",hcDark:null,hcLight:kg.fromHex("#0F4A85").transparent(.1)},C(1930,"List/Tree background color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),fb=Of("list.inactiveSelectionForeground",null,C(1931,"List/Tree foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),_b=Of("list.inactiveSelectionIconForeground",null,C(1932,"List/Tree icon foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),vb=Of("list.inactiveFocusBackground",null,C(1933,"List/Tree background color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),bb=Of("list.inactiveFocusOutline",null,C(1934,"List/Tree outline color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),wb=Of("list.hoverBackground",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:kg.white.transparent(.1),hcLight:kg.fromHex("#0F4A85").transparent(.1)},C(1935,"List/Tree background when hovering over items using the mouse.")),Cb=Of("list.hoverForeground",null,C(1936,"List/Tree foreground when hovering over items using the mouse.")),yb=Of("list.dropBackground",{dark:"#062F4A",light:"#D6EBFF",hcDark:null,hcLight:null},C(1937,"List/Tree drag and drop background when moving items over other items when using the mouse.")),Sb=Of("list.dropBetweenBackground",{dark:$f,light:$f,hcDark:null,hcLight:null},C(1938,"List/Tree drag and drop border color when moving items between items when using the mouse.")),xb=Of("list.highlightForeground",{dark:"#2AAAFF",light:"#0066BF",hcDark:Gf,hcLight:Gf},C(1939,"List/Tree foreground color of the match highlights when searching inside the list/tree.")),kb=Of("list.focusHighlightForeground",{dark:xb,light:(Lb=ub,Eb=xb,{op:6,if:Lb,then:Eb,else:"#BBE7FF"}),hcDark:xb,hcLight:xb},C(1940,"List/Tree foreground color of the match highlights on actively focused items when searching inside the list/tree."));var Lb,Eb;Of("list.invalidItemForeground",{dark:"#B89500",light:"#B89500",hcDark:"#B89500",hcLight:"#B5200D"},C(1941,"List/Tree foreground color for invalid items, for example an unresolved root in explorer.")),Of("list.errorForeground",{dark:"#F88070",light:"#B01011",hcDark:null,hcLight:null},C(1942,"Foreground color of list items containing errors.")),Of("list.warningForeground",{dark:"#CCA700",light:"#855F00",hcDark:null,hcLight:null},C(1943,"Foreground color of list items containing warnings."));const Ib=Of("listFilterWidget.background",{light:Pf(a_,0),dark:Ff(a_,0),hcDark:a_,hcLight:a_},C(1944,"Background color of the type filter widget in lists and trees.")),Db=Of("listFilterWidget.outline",{dark:kg.transparent,light:kg.transparent,hcDark:"#f38518",hcLight:"#007ACC"},C(1945,"Outline color of the type filter widget in lists and trees.")),Nb=Of("listFilterWidget.noMatchesOutline",{dark:"#BE1100",light:"#BE1100",hcDark:Yf,hcLight:Yf},C(1946,"Outline color of the type filter widget in lists and trees, when there are no matches.")),Mb=Of("listFilterWidget.shadow",K_,C(1947,"Shadow color of the type filter widget in lists and trees.")),Tb=(Of("list.filterMatchBackground",{dark:x_,light:x_,hcDark:null,hcLight:null},C(1948,"Background color of the filtered match.")),Of("list.filterMatchBorder",{dark:L_,light:L_,hcDark:Yf,hcLight:Zf},C(1949,"Border color of the filtered match.")),Of("list.deemphasizedForeground",{dark:"#8C8C8C",light:"#8E8E90",hcDark:"#A7A8A9",hcLight:"#666666"},C(1950,"List/Tree foreground color for items that are deemphasized.")),Of("tree.indentGuidesStroke",{dark:"#585858",light:"#a9a9a9",hcDark:"#a9a9a9",hcLight:"#a5a5a5"},C(1951,"Tree stroke color for the indentation guides."))),Rb=Of("tree.inactiveIndentGuidesStroke",Bf(Tb,.4),C(1952,"Tree stroke color for the indentation guides that are not active.")),Ab=Of("tree.tableColumnsBorder",{dark:"#CCCCCC20",light:"#61616120",hcDark:null,hcLight:null},C(1953,"Table border color between columns.")),Ob=Of("tree.tableOddRowsBackground",{dark:Bf(Kf,.04),light:Bf(Kf,.04),hcDark:null,hcLight:null},C(1954,"Background color for odd table rows.")),Pb=(Of("editorActionList.background",a_,C(1955,"Action List background color.")),Of("editorActionList.foreground",l_,C(1956,"Action List foreground color."))),Fb=(Of("editorActionList.focusForeground",gb,C(1957,"Action List foreground color for the focused item.")),Of("editorActionList.focusBackground",ub,C(1958,"Action List background color for the focused item.")),Of("menu.border",{dark:null,light:null,hcDark:Yf,hcLight:Yf},C(1959,"Border color of menus."))),Bb=Of("menu.foreground",Pv,C(1960,"Foreground color of menu items.")),Wb=Of("menu.background",Av,C(1961,"Background color of menu items.")),Hb=Of("menu.selectionForeground",gb,C(1962,"Foreground color of the selected menu item in menus.")),Vb=Of("menu.selectionBackground",ub,C(1963,"Background color of the selected menu item in menus.")),zb=Of("menu.selectionBorder",{dark:null,light:null,hcDark:Zf,hcLight:Zf},C(1964,"Border color of the selected menu item in menus.")),Ub=Of("menu.separatorBackground",{dark:"#606060",light:"#D4D4D4",hcDark:Yf,hcLight:Yf},C(1965,"Color of a separator menu item in menus.")),jb=Of("quickInput.background",a_,C(1992,"Quick picker background color. The quick picker widget is the container for pickers like the command palette.")),Kb=Of("quickInput.foreground",l_,C(1993,"Quick picker foreground color. The quick picker widget is the container for pickers like the command palette.")),qb=Of("quickInputTitle.background",{dark:new kg(new yg(255,255,255,.105)),light:new kg(new yg(0,0,0,.06)),hcDark:"#000000",hcLight:kg.white},C(1994,"Quick picker title background color. The quick picker widget is the container for pickers like the command palette.")),$b=Of("pickerGroup.foreground",{dark:"#3794FF",light:"#0066BF",hcDark:kg.white,hcLight:"#0F4A85"},C(1995,"Quick picker color for grouping labels.")),Gb=Of("pickerGroup.border",{dark:"#3F3F46",light:"#CCCEDB",hcDark:kg.white,hcLight:"#0F4A85"},C(1996,"Quick picker color for grouping borders.")),Yb=Of("quickInput.list.focusBackground",null,"",void 0,C(1997,"Please use quickInputList.focusBackground instead")),Zb=Of("quickInputList.focusForeground",gb,C(1998,"Quick picker foreground color for the focused item.")),Qb=Of("quickInputList.focusIconForeground",pb,C(1999,"Quick picker icon foreground color for the focused item.")),Xb=Of("quickInputList.focusBackground",{dark:Wf(Yb,ub),light:Wf(Yb,ub),hcDark:null,hcLight:null},C(2e3,"Quick picker background color for the focused item."));var Jb,ew;function tw(e){return e===Jb.HIGH_CONTRAST_DARK||e===Jb.HIGH_CONTRAST_LIGHT}function iw(e){return e===Jb.DARK||e===Jb.HIGH_CONTRAST_DARK}Of("search.resultsInfoForeground",{light:Kf,dark:Bf(Kf,.65),hcDark:Kf,hcLight:Kf},C(2001,"Color of the text in the search viewlet's completion message.")),Of("searchEditor.findMatchBackground",{light:Bf(x_,.66),dark:Bf(x_,.66),hcDark:x_,hcLight:x_},C(2002,"Color of the Search Editor query matches.")),Of("searchEditor.findMatchBorder",{light:Bf(L_,.66),dark:Bf(L_,.66),hcDark:L_,hcLight:L_},C(2003,"Border color of the Search Editor query matches.")),function(e){e.DARK="dark",e.LIGHT="light",e.HIGH_CONTRAST_DARK="hcDark",e.HIGH_CONTRAST_LIGHT="hcLight"}(Jb||(Jb={})),function(e){e.VS="vs",e.VS_DARK="vs-dark",e.HC_BLACK="hc-black",e.HC_LIGHT="hc-light"}(ew||(ew={}));const nw=nh("themeService");function ow(e){return{id:e}}function sw(e){switch(e){case Jb.DARK:return ew.VS_DARK;case Jb.HIGH_CONTRAST_DARK:return ew.HC_BLACK;case Jb.HIGH_CONTRAST_LIGHT:return ew.HC_LIGHT;default:return ew.VS}}const rw="base.contributions.theming",aw=new class extends Tt{constructor(){super(),this.themingParticipants=[],this.themingParticipants=[],this.onThemingParticipantAddedEmitter=this._register(new Gt)}onColorThemeChange(e){return this.themingParticipants.push(e),this.onThemingParticipantAddedEmitter.fire(e),Nt((()=>{const t=this.themingParticipants.indexOf(e);this.themingParticipants.splice(t,1)}))}getThemingParticipants(){return this.themingParticipants}};function lw(e){return aw.onColorThemeChange(e)}su.add(rw,aw);class dw extends Tt{constructor(e){super(),this.themeService=e,this.theme=e.getColorTheme(),this._register(this.themeService.onDidColorThemeChange((e=>this.onThemeChange(e))))}onThemeChange(e){this.theme=e,this.updateStyles()}updateStyles(){}}const cw=Of("editor.lineHighlightBackground",null,C(607,"Background color for the highlight of line at the cursor position.")),hw=Of("editor.lineHighlightBorder",{dark:"#282828",light:"#eeeeee",hcDark:"#f38518",hcLight:Yf},C(608,"Background color for the border around the line at the cursor position.")),uw=(Of("editor.rangeHighlightBackground",{dark:"#ffffff0b",light:"#fdff0033",hcDark:null,hcLight:null},C(609,"Background color of highlighted ranges, like by quick open and find features. The color must not be opaque so as not to hide underlying decorations."),!0),Of("editor.rangeHighlightBorder",{dark:null,light:null,hcDark:Zf,hcLight:Zf},C(610,"Background color of the border around highlighted ranges.")),Of("editor.symbolHighlightBackground",{dark:x_,light:x_,hcDark:null,hcLight:null},C(611,"Background color of highlighted symbol, like for go to definition or go next/previous symbol. The color must not be opaque so as not to hide underlying decorations."),!0),Of("editor.symbolHighlightBorder",{dark:null,light:null,hcDark:Zf,hcLight:Zf},C(612,"Background color of the border around highlighted symbols.")),Of("editorCursor.foreground",{dark:"#AEAFAD",light:kg.black,hcDark:kg.white,hcLight:"#0F4A85"},C(613,"Color of the editor cursor."))),gw=Of("editorCursor.background",null,C(614,"The background color of the editor cursor. Allows customizing the color of a character overlapped by a block cursor.")),pw=Of("editorMultiCursor.primary.foreground",uw,C(615,"Color of the primary editor cursor when multiple cursors are present.")),mw=Of("editorMultiCursor.primary.background",gw,C(616,"The background color of the primary editor cursor when multiple cursors are present. Allows customizing the color of a character overlapped by a block cursor.")),fw=Of("editorMultiCursor.secondary.foreground",uw,C(617,"Color of secondary editor cursors when multiple cursors are present.")),_w=Of("editorMultiCursor.secondary.background",gw,C(618,"The background color of secondary editor cursors when multiple cursors are present. Allows customizing the color of a character overlapped by a block cursor.")),vw=Of("editorWhitespace.foreground",{dark:"#e3e4e229",light:"#33333333",hcDark:"#e3e4e229",hcLight:"#CCCCCC"},C(619,"Color of whitespace characters in the editor.")),bw=Of("editorLineNumber.foreground",{dark:"#858585",light:"#237893",hcDark:kg.white,hcLight:"#292929"},C(620,"Color of editor line numbers.")),ww=Of("editorIndentGuide.background",vw,C(621,"Color of the editor indentation guides."),!1,C(622,"'editorIndentGuide.background' is deprecated. Use 'editorIndentGuide.background1' instead.")),Cw=Of("editorIndentGuide.activeBackground",vw,C(623,"Color of the active editor indentation guides."),!1,C(624,"'editorIndentGuide.activeBackground' is deprecated. Use 'editorIndentGuide.activeBackground1' instead.")),yw=Of("editorIndentGuide.background1",ww,C(625,"Color of the editor indentation guides (1).")),Sw=Of("editorIndentGuide.background2","#00000000",C(626,"Color of the editor indentation guides (2).")),xw=Of("editorIndentGuide.background3","#00000000",C(627,"Color of the editor indentation guides (3).")),kw=Of("editorIndentGuide.background4","#00000000",C(628,"Color of the editor indentation guides (4).")),Lw=Of("editorIndentGuide.background5","#00000000",C(629,"Color of the editor indentation guides (5).")),Ew=Of("editorIndentGuide.background6","#00000000",C(630,"Color of the editor indentation guides (6).")),Iw=Of("editorIndentGuide.activeBackground1",Cw,C(631,"Color of the active editor indentation guides (1).")),Dw=Of("editorIndentGuide.activeBackground2","#00000000",C(632,"Color of the active editor indentation guides (2).")),Nw=Of("editorIndentGuide.activeBackground3","#00000000",C(633,"Color of the active editor indentation guides (3).")),Mw=Of("editorIndentGuide.activeBackground4","#00000000",C(634,"Color of the active editor indentation guides (4).")),Tw=Of("editorIndentGuide.activeBackground5","#00000000",C(635,"Color of the active editor indentation guides (5).")),Rw=Of("editorIndentGuide.activeBackground6","#00000000",C(636,"Color of the active editor indentation guides (6).")),Aw=Of("editorActiveLineNumber.foreground",{dark:"#c6c6c6",light:"#0B216F",hcDark:Zf,hcLight:Zf},C(637,"Color of editor active line number"),!1,C(638,"Id is deprecated. Use 'editorLineNumber.activeForeground' instead.")),Ow=(Of("editorLineNumber.activeForeground",Aw,C(639,"Color of editor active line number")),Of("editorLineNumber.dimmedForeground",null,C(640,"Color of the final editor line when editor.renderFinalNewline is set to dimmed."))),Pw=Of("editorRuler.foreground",{dark:"#5A5A5A",light:kg.lightgrey,hcDark:kg.white,hcLight:"#292929"},C(641,"Color of the editor rulers.")),Fw=(Of("editorCodeLens.foreground",{dark:"#999999",light:"#919191",hcDark:"#999999",hcLight:"#292929"},C(642,"Foreground color of editor CodeLens")),Of("editorBracketMatch.background",{dark:"#0064001a",light:"#0064001a",hcDark:"#0064001a",hcLight:"#0000"},C(643,"Background color behind matching brackets")),Of("editorBracketMatch.border",{dark:"#888",light:"#B9B9B9",hcDark:Yf,hcLight:Yf},C(644,"Color for matching brackets boxes")),Of("editorOverviewRuler.border",{dark:"#7f7f7f4d",light:"#7f7f7f4d",hcDark:"#7f7f7f4d",hcLight:"#666666"},C(645,"Color of the overview ruler border."))),Bw=Of("editorOverviewRuler.background",null,C(646,"Background color of the editor overview ruler.")),Ww=(Of("editorGutter.background",s_,C(647,"Background color of the editor gutter. The gutter contains the glyph margins and the line numbers.")),Of("editorUnnecessaryCode.border",{dark:null,light:null,hcDark:kg.fromHex("#fff").transparent(.8),hcLight:Yf},C(648,"Border color of unnecessary (unused) source code in the editor.")),Of("editorUnnecessaryCode.opacity",{dark:kg.fromHex("#000a"),light:kg.fromHex("#0007"),hcDark:null,hcLight:null},C(649,"Opacity of unnecessary (unused) source code in the editor. For example, \"#000000c0\" will render the code with 75% opacity. For high contrast themes, use the 'editorUnnecessaryCode.border' theme color to underline unnecessary code instead of fading it out."))),Hw=(Of("editorGhostText.border",{dark:null,light:null,hcDark:kg.fromHex("#fff").transparent(.8),hcLight:kg.fromHex("#292929").transparent(.8)},C(650,"Border color of ghost text in the editor.")),Of("editorGhostText.foreground",{dark:kg.fromHex("#ffffff56"),light:kg.fromHex("#0007"),hcDark:null,hcLight:null},C(651,"Foreground color of the ghost text in the editor."))),Vw=(Of("editorGhostText.background",null,C(652,"Background color of the ghost text in the editor.")),Of("editorOverviewRuler.rangeHighlightForeground",new kg(new yg(0,122,204,.6)),C(653,"Overview ruler marker color for range highlights. The color must not be opaque so as not to hide underlying decorations."),!0)),zw=Of("editorOverviewRuler.errorForeground",{dark:new kg(new yg(255,18,18,.7)),light:new kg(new yg(255,18,18,.7)),hcDark:new kg(new yg(255,50,50,1)),hcLight:"#B5200D"},C(654,"Overview ruler marker color for errors.")),Uw=Of("editorOverviewRuler.warningForeground",{dark:g_,light:g_,hcDark:p_,hcLight:p_},C(655,"Overview ruler marker color for warnings.")),jw=Of("editorOverviewRuler.infoForeground",{dark:m_,light:m_,hcDark:f_,hcLight:f_},C(656,"Overview ruler marker color for infos.")),Kw=Of("editorBracketHighlight.foreground1",{dark:"#FFD700",light:"#0431FAFF",hcDark:"#FFD700",hcLight:"#0431FAFF"},C(657,"Foreground color of brackets (1). Requires enabling bracket pair colorization.")),qw=Of("editorBracketHighlight.foreground2",{dark:"#DA70D6",light:"#319331FF",hcDark:"#DA70D6",hcLight:"#319331FF"},C(658,"Foreground color of brackets (2). Requires enabling bracket pair colorization.")),$w=Of("editorBracketHighlight.foreground3",{dark:"#179FFF",light:"#7B3814FF",hcDark:"#87CEFA",hcLight:"#7B3814FF"},C(659,"Foreground color of brackets (3). Requires enabling bracket pair colorization.")),Gw=Of("editorBracketHighlight.foreground4","#00000000",C(660,"Foreground color of brackets (4). Requires enabling bracket pair colorization.")),Yw=Of("editorBracketHighlight.foreground5","#00000000",C(661,"Foreground color of brackets (5). Requires enabling bracket pair colorization.")),Zw=Of("editorBracketHighlight.foreground6","#00000000",C(662,"Foreground color of brackets (6). Requires enabling bracket pair colorization.")),Qw=Of("editorBracketHighlight.unexpectedBracket.foreground",{dark:new kg(new yg(255,18,18,.8)),light:new kg(new yg(255,18,18,.8)),hcDark:new kg(new yg(255,50,50,1)),hcLight:"#B5200D"},C(663,"Foreground color of unexpected brackets.")),Xw=Of("editorBracketPairGuide.background1","#00000000",C(664,"Background color of inactive bracket pair guides (1). Requires enabling bracket pair guides.")),Jw=Of("editorBracketPairGuide.background2","#00000000",C(665,"Background color of inactive bracket pair guides (2). Requires enabling bracket pair guides.")),eC=Of("editorBracketPairGuide.background3","#00000000",C(666,"Background color of inactive bracket pair guides (3). Requires enabling bracket pair guides.")),tC=Of("editorBracketPairGuide.background4","#00000000",C(667,"Background color of inactive bracket pair guides (4). Requires enabling bracket pair guides.")),iC=Of("editorBracketPairGuide.background5","#00000000",C(668,"Background color of inactive bracket pair guides (5). Requires enabling bracket pair guides.")),nC=Of("editorBracketPairGuide.background6","#00000000",C(669,"Background color of inactive bracket pair guides (6). Requires enabling bracket pair guides.")),oC=Of("editorBracketPairGuide.activeBackground1","#00000000",C(670,"Background color of active bracket pair guides (1). Requires enabling bracket pair guides.")),sC=Of("editorBracketPairGuide.activeBackground2","#00000000",C(671,"Background color of active bracket pair guides (2). Requires enabling bracket pair guides.")),rC=Of("editorBracketPairGuide.activeBackground3","#00000000",C(672,"Background color of active bracket pair guides (3). Requires enabling bracket pair guides.")),aC=Of("editorBracketPairGuide.activeBackground4","#00000000",C(673,"Background color of active bracket pair guides (4). Requires enabling bracket pair guides.")),lC=Of("editorBracketPairGuide.activeBackground5","#00000000",C(674,"Background color of active bracket pair guides (5). Requires enabling bracket pair guides.")),dC=Of("editorBracketPairGuide.activeBackground6","#00000000",C(675,"Background color of active bracket pair guides (6). Requires enabling bracket pair guides."));Of("editorUnicodeHighlight.border",g_,C(676,"Border color used to highlight unicode characters.")),Of("editorUnicodeHighlight.background",u_,C(677,"Background color used to highlight unicode characters.")),lw(((e,t)=>{const i=e.getColor(s_),n=e.getColor(cw),o=n&&!n.isTransparent()?n:i;o&&t.addRule(`.monaco-editor .inputarea.ime-input { background-color: ${o}; }`)}));class cC extends Tt{constructor(e){super(),this.textModel=e,this.colorProvider=new hC,this.onDidChangeEmitter=new Gt,this.onDidChange=this.onDidChangeEmitter.event,this.colorizationOptions=e.getOptions().bracketPairColorizationOptions,this._register(e.bracketPairs.onDidChange((e=>{this.onDidChangeEmitter.fire()})))}handleDidChangeOptions(e){this.colorizationOptions=this.textModel.getOptions().bracketPairColorizationOptions}getDecorationsInRange(e,t,i,n){return n||void 0===t?[]:this.colorizationOptions.enabled?this.textModel.bracketPairs.getBracketsInRange(e,!0).map((e=>({id:`bracket${e.range.toString()}-${e.nestingLevel}`,options:{description:"BracketPairColorization",inlineClassName:this.colorProvider.getInlineClassName(e,this.colorizationOptions.independentColorPoolPerBracketType)},ownerId:0,range:e.range}))).toArray():[]}getAllDecorations(e,t){return void 0===e?[]:this.colorizationOptions.enabled?this.getDecorationsInRange(new Yu(1,1,this.textModel.getLineCount(),1),e,t):[]}}class hC{constructor(){this.unexpectedClosingBracketClassName="unexpected-closing-bracket"}getInlineClassName(e,t){return e.isInvalid?this.unexpectedClosingBracketClassName:this.getInlineClassNameOfLevel(t?e.nestingLevelOfEqualBracketType:e.nestingLevel)}getInlineClassNameOfLevel(e){return"bracket-highlighting-"+e%30}}function uC(e){return e.replace(/\n/g,"\\n").replace(/\r/g,"\\r")}lw(((e,t)=>{const i=[Kw,qw,$w,Gw,Yw,Zw],n=new hC;t.addRule(`.monaco-editor .${n.unexpectedClosingBracketClassName} { color: ${e.getColor(Qw)}; }`);const o=i.map((t=>e.getColor(t))).filter((e=>!!e)).filter((e=>!e.isTransparent()));for(let e=0;e<30;e++){const i=o[e%o.length];t.addRule(`.monaco-editor .${n.getInlineClassNameOfLevel(e)} { color: ${i}; }`)}}));class gC{get oldLength(){return this.oldText.length}get oldEnd(){return this.oldPosition+this.oldText.length}get newLength(){return this.newText.length}get newEnd(){return this.newPosition+this.newText.length}constructor(e,t,i,n){this.oldPosition=e,this.oldText=t,this.newPosition=i,this.newText=n}toString(){return 0===this.oldText.length?`(insert@${this.oldPosition} "${uC(this.newText)}")`:0===this.newText.length?`(delete@${this.oldPosition} "${uC(this.oldText)}")`:`(replace@${this.oldPosition} "${uC(this.oldText)}" with "${uC(this.newText)}")`}static _writeStringSize(e){return 4+2*e.length}static _writeString(e,t,i){const n=t.length;Oo(e,n,i),i+=4;for(let o=0;o0&&(65279===n[0]||65534===n[0])?function(e,t,i){const n=[];let o=0;for(let s=0;s{const o=t[i];return void 0!==o?o:(i.match(/\$/g)||[]).length<=e&&null!=n&&""!==n})).map((([e,t])=>`${e}:${t}`)).join("-")}}function bC(e){return new vC(e,_C)}const wC=e=>bC({source:"unknown",name:e.name}),CC=()=>bC({source:"rename"}),yC=e=>bC({source:"inlineCompletionAccept",$nes:e.nes,...MC(e.providerId),$$requestUuid:e.requestUuid,$$languageId:e.languageId}),SC=e=>bC({source:"inlineCompletionPartialAccept",type:e.type,$nes:e.nes,...MC(e.providerId),$$requestUuid:e.requestUuid,$$languageId:e.languageId}),xC=e=>bC({source:"cursor",kind:e.kind,detailedSource:e.detailedSource}),kC=()=>bC({source:"setValue"}),LC=()=>bC({source:"eolChange"}),EC=()=>bC({source:"applyEdits"}),IC=()=>bC({source:"snippet"}),DC=e=>bC({source:"suggest",...MC(e.providerId)}),NC=e=>bC({source:"codeAction",$kind:e.kind,...MC(e.providerId)});function MC(e){return e?{$extensionId:e.extensionId,$extensionVersion:e.extensionVersion,$providerId:e.providerId}:{}}class TC{static fromText(e){const t=ym.ofText(e).lineCount,i=e.length;return new TC(t,0,i,0)}static tryCreate(e,t,i,n){if(void 0!==e&&void 0!==t&&void 0!==i&&void 0!==n)return new TC(e,t,i,n)}constructor(e,t,i,n){this.linesAdded=e,this.linesRemoved=t,this.charsAdded=i,this.charsRemoved=n}}var RC,AC;function OC(e){return e.toString()}!function(e){e.newId=function(){return fC("sgt")}}(RC||(RC={}));class PC{static create(e,t){const i=e.getAlternativeVersionId(),n=WC(e);return new PC(i,i,n,n,t,t,[])}constructor(e,t,i,n,o,s,r){this.beforeVersionId=e,this.afterVersionId=t,this.beforeEOL=i,this.afterEOL=n,this.beforeCursorState=o,this.afterCursorState=s,this.changes=r}append(e,t,i,n,o){var s,r;t.length>0&&(this.changes=(r=t,null===(s=this.changes)||0===s.length?r:new pC(s,r).compress())),this.afterEOL=i,this.afterVersionId=n,this.afterCursorState=o}static _writeSelectionsSize(e){return 4+16*(e?e.length:0)}static _writeSelections(e,t,i){if(Oo(e,t?t.length:0,i),i+=4,t)for(const n of t)Oo(e,n.selectionStartLineNumber,i),i+=4,Oo(e,n.selectionStartColumn,i),i+=4,Oo(e,n.positionLineNumber,i),i+=4,Oo(e,n.positionColumn,i),i+=4;return i}static _readSelections(e,t,i){const n=Ao(e,t);t+=4;for(let o=0;oe.toString())).join(", ")}matchesResource(e){return(ho.isUri(this.model)?this.model:this.model.uri).toString()===e.toString()}setModel(e){this.model=e}canAppend(e){return this.model===e&&this._data instanceof PC}append(e,t,i,n,o){this._data instanceof PC&&this._data.append(e,t,i,n,o)}close(){this._data instanceof PC&&(this._data=this._data.serialize())}open(){this._data instanceof PC||(this._data=PC.deserialize(this._data))}undo(){if(ho.isUri(this.model))throw new Error("Invalid SingleModelEditStackElement");this._data instanceof PC&&(this._data=this._data.serialize());const e=PC.deserialize(this._data);this.model._applyUndo(e.changes,e.beforeEOL,e.beforeVersionId,e.beforeCursorState)}redo(){if(ho.isUri(this.model))throw new Error("Invalid SingleModelEditStackElement");this._data instanceof PC&&(this._data=this._data.serialize());const e=PC.deserialize(this._data);this.model._applyRedo(e.changes,e.afterEOL,e.afterVersionId,e.afterCursorState)}heapSize(){return this._data instanceof PC&&(this._data=this._data.serialize()),this._data.byteLength+168}}class BC{get resources(){return this._editStackElementsArr.map((e=>e.resource))}constructor(e,t,i){this.label=e,this.code=t,this.type=1,this._isOpen=!0,this._editStackElementsArr=i.slice(0),this._editStackElementsMap=new Map;for(const e of this._editStackElementsArr){const t=OC(e.resource);this._editStackElementsMap.set(t,e)}this._delegate=null}prepareUndoRedo(){if(this._delegate)return this._delegate.prepareUndoRedo(this)}matchesResource(e){const t=OC(e);return this._editStackElementsMap.has(t)}setModel(e){const t=OC(ho.isUri(e)?e:e.uri);this._editStackElementsMap.has(t)&&this._editStackElementsMap.get(t).setModel(e)}canAppend(e){if(!this._isOpen)return!1;const t=OC(e.uri);return!!this._editStackElementsMap.has(t)&&this._editStackElementsMap.get(t).canAppend(e)}append(e,t,i,n,o){const s=OC(e.uri);this._editStackElementsMap.get(s).append(e,t,i,n,o)}close(){this._isOpen=!1}open(){}undo(){this._isOpen=!1;for(const e of this._editStackElementsArr)e.undo()}redo(){for(const e of this._editStackElementsArr)e.redo()}heapSize(e){const t=OC(e);return this._editStackElementsMap.has(t)?this._editStackElementsMap.get(t).heapSize():0}split(){return this._editStackElementsArr}toString(){const e=[];for(const t of this._editStackElementsArr)e.push(`${Fc(t.resource)}: ${t}`);return`{${e.join(", ")}}`}}function WC(e){return"\n"===e.getEOL()?0:1}function HC(e){return!!e&&(e instanceof FC||e instanceof BC)}class VC{constructor(e,t){this._model=e,this._undoRedoService=t}pushStackElement(){const e=this._undoRedoService.getLastElement(this._model.uri);HC(e)&&e.close()}popStackElement(){const e=this._undoRedoService.getLastElement(this._model.uri);HC(e)&&e.open()}clear(){this._undoRedoService.removeElements(this._model.uri)}_getOrCreateEditStackElement(e,t){const i=this._undoRedoService.getLastElement(this._model.uri);if(HC(i)&&i.canAppend(this._model))return i;const n=new FC(C(781,"Typing"),"undoredo.textBufferEdit",this._model,e);return this._undoRedoService.pushElement(n,t),n}pushEOL(e){const t=this._getOrCreateEditStackElement(null,void 0);this._model.setEOL(e),t.append(this._model,[],WC(this._model),this._model.getAlternativeVersionId(),null)}pushEditOperation(e,t,i,n,o=wC({name:"pushEditOperation"})){const s=this._getOrCreateEditStackElement(e,n),r=this._model.applyEdits(t,!0,o),a=VC._computeCursorState(i,r),l=r.map(((e,t)=>({index:t,textChange:e.textChange})));return l.sort(((e,t)=>e.textChange.oldPosition===t.textChange.oldPosition?e.index-t.index:e.textChange.oldPosition-t.textChange.oldPosition)),s.append(this._model,l.map((e=>e.textChange)),WC(this._model),this._model.getAlternativeVersionId(),a),a}static _computeCursorState(e,t){try{return e?e(t):null}catch(e){return De(e),null}}}class zC extends Tt{constructor(){super(...arguments),this._isDisposed=!1}dispose(){super.dispose(),this._isDisposed=!0}assertNotDisposed(){if(this._isDisposed)throw new Error("TextModelPart is disposed!")}}function UC(e,t){let i=0,n=0;const o=e.length;for(;nn)throw new We("Illegal value for lineNumber");const o=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,s=Boolean(o&&o.offSide);let r=-2,a=-1,l=-2,d=-1;const c=e=>{if(-1!==r&&(-2===r||r>e-1)){r=-1,a=-1;for(let t=e-2;t>=0;t--){const e=this._computeIndentLevel(t);if(e>=0){r=t,a=e;break}}}if(-2===l){l=-1,d=-1;for(let t=e;t=0){l=t,d=e;break}}}};let h=-2,u=-1,g=-2,p=-1;const m=e=>{if(-2===h){h=-1,u=-1;for(let t=e-2;t>=0;t--){const e=this._computeIndentLevel(t);if(e>=0){h=t,u=e;break}}}if(-1!==g&&(-2===g||g=0){g=t,p=e;break}}}};let f=0,_=!0,v=0,b=!0,w=0,C=0;for(let o=0;_||b;o++){const r=e-o,g=e+o;o>1&&(r<1||r1&&(g>n||g>i)&&(b=!1),o>5e4&&(_=!1,b=!1);let y=-1;if(_&&r>=1){const e=this._computeIndentLevel(r-1);e>=0?(l=r-1,d=e,y=Math.ceil(e/this.textModel.getOptions().indentSize)):(c(r),y=this._getIndentLevelForWhitespaceLine(s,a,d))}let S=-1;if(b&&g<=n){const e=this._computeIndentLevel(g-1);e>=0?(h=g-1,u=e,S=Math.ceil(e/this.textModel.getOptions().indentSize)):(m(g),S=this._getIndentLevelForWhitespaceLine(s,u,p))}if(0!==o){if(1===o){if(g<=n&&S>=0&&C+1===S){_=!1,f=g,v=g,w=S;continue}if(r>=1&&y>=0&&y-1===C){b=!1,f=r,v=r,w=y;continue}if(f=e,v=e,w=C,0===w)return{startLineNumber:f,endLineNumber:v,indent:w}}_&&(y>=w?f=r:_=!1),b&&(S>=w?v=g:b=!1)}else C=y}return{startLineNumber:f,endLineNumber:v,indent:w}}getLinesBracketGuides(e,t,i,n){const o=[];for(let i=e;i<=t;i++)o.push([]);const s=this.textModel.bracketPairs.getBracketPairsInRangeWithMinIndentation(new Yu(e,1,t,this.textModel.getLineMaxColumn(t))).toArray();let r;if(i&&s.length>0){const n=(e<=i.lineNumber&&i.lineNumber<=t?s:this.textModel.bracketPairs.getBracketPairsInRange(Yu.fromPositions(i)).toArray()).filter((e=>Yu.strictContainsPosition(e.range,i)));r=hm(n,(e=>true))?.range}const a=this.textModel.getOptions().bracketPairColorizationOptions.independentColorPoolPerBracketType,l=new $C;for(const i of s){if(!i.closingBracketRange)continue;const s=r&&i.range.equalsRange(r);if(!s&&!n.includeInactive)continue;const d=l.getInlineClassName(i.nestingLevel,i.nestingLevelOfEqualBracketType,a)+(n.highlightActive&&s?" "+l.activeClassName:""),c=i.openingBracketRange.getStartPosition(),h=i.closingBracketRange.getStartPosition(),u=n.horizontalGuides===AC.Enabled||n.horizontalGuides===AC.EnabledForActive&&s;if(i.range.startLineNumber===i.range.endLineNumber){u&&o[i.range.startLineNumber-e].push(new jC(-1,i.openingBracketRange.getEndPosition().column,d,new KC(!1,h.column),-1,-1));continue}const g=this.getVisibleColumnFromPosition(h),p=this.getVisibleColumnFromPosition(i.openingBracketRange.getStartPosition()),m=Math.min(p,g,i.minVisibleColumnIndentation+1);let f=!1;qi(this.textModel.getLineContent(i.closingBracketRange.startLineNumber))=e&&p>m&&o[c.lineNumber-e].push(new jC(m,-1,d,new KC(!1,c.column),-1,-1)),h.lineNumber<=t&&g>m&&o[h.lineNumber-e].push(new jC(m,-1,d,new KC(!f,h.column),-1,-1)))}for(const e of o)e.sort(((e,t)=>e.visibleColumn-t.visibleColumn));return o}getVisibleColumnFromPosition(e){return Eg.visibleColumnFromColumn(this.textModel.getLineContent(e.lineNumber),e.column,this.textModel.getOptions().tabSize)+1}getLinesIndentGuides(e,t){this.assertNotDisposed();const i=this.textModel.getLineCount();if(e<1||e>i)throw new Error("Illegal value for startLineNumber");if(t<1||t>i)throw new Error("Illegal value for endLineNumber");const n=this.textModel.getOptions(),o=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,s=Boolean(o&&o.offSide),r=new Array(t-e+1);let a=-2,l=-1,d=-2,c=-1;for(let o=e;o<=t;o++){const t=o-e,h=this._computeIndentLevel(o-1);if(h>=0)a=o-1,l=h,r[t]=Math.ceil(h/n.indentSize);else{if(-2===a){a=-1,l=-1;for(let e=o-2;e>=0;e--){const t=this._computeIndentLevel(e);if(t>=0){a=e,l=t;break}}}if(-1!==d&&(-2===d||d=0){d=e,c=t;break}}}r[t]=this._getIndentLevelForWhitespaceLine(s,l,c)}}return r}_getIndentLevelForWhitespaceLine(e,t,i){const n=this.textModel.getOptions();return-1===t||-1===i?0:t0&&a>0)return;if(l>0&&d>0)return;const c=Math.abs(a-d),h=Math.abs(r-l);if(0===c)return o.spacesDiff=h,void(h>0&&0<=l-1&&l-10?o++:m>1&&s++,YC(r,a,h,p,c),c.looksLikeAlignment&&(!i||t!==c.spacesDiff))continue;const _=c.spacesDiff;_<=8&&d[_]++,r=h,a=p}let h=i;o!==s&&(h=o{const i=d[t];i>e&&(e=i,u=t)})),4===u&&d[4]>0&&d[2]>0&&d[2]>=d[4]/2&&(u=2)}return{insertSpaces:h,tabSize:u}}function QC(e){return(1&e.metadata)>>>0}function XC(e,t){e.metadata=254&e.metadata|t}function JC(e){return(2&e.metadata)>>>1==1}function ey(e,t){e.metadata=253&e.metadata|(t?1:0)<<1}function ty(e){return(4&e.metadata)>>>2==1}function iy(e,t){e.metadata=251&e.metadata|(t?1:0)<<2}function ny(e){return(64&e.metadata)>>>6==1}function oy(e,t){e.metadata=191&e.metadata|(t?1:0)<<6}function sy(e){return(128&e.metadata)>>>7==1}function ry(e,t){e.metadata=127&e.metadata|(t?1:0)<<7}function ay(e,t){e.metadata=231&e.metadata|t<<3}function ly(e,t){e.metadata=223&e.metadata|(t?1:0)<<5}class dy{constructor(e,t,i){this.metadata=0,this.parent=this,this.left=this,this.right=this,XC(this,1),this.start=t,this.end=i,this.delta=0,this.maxEnd=i,this.id=e,this.ownerId=0,this.options=null,iy(this,!1),oy(this,!1),ay(this,1),ly(this,!1),ry(this,!1),this.cachedVersionId=0,this.cachedAbsoluteStart=t,this.cachedAbsoluteEnd=i,this.range=null,ey(this,!1)}reset(e,t,i,n){this.start=t,this.end=i,this.maxEnd=i,this.cachedVersionId=e,this.cachedAbsoluteStart=t,this.cachedAbsoluteEnd=i,this.range=n}setOptions(e){this.options=e;const t=this.options.className;iy(this,"squiggly-error"===t||"squiggly-warning"===t||"squiggly-info"===t),oy(this,null!==this.options.glyphMarginClassName),ay(this,this.options.stickiness),ly(this,this.options.collapseOnReplaceEdit),ry(this,this.options.affectsFont??!1)}setCachedOffsets(e,t,i){this.cachedVersionId!==i&&(this.range=null),this.cachedVersionId=i,this.cachedAbsoluteStart=e,this.cachedAbsoluteEnd=t}detach(){this.parent=null,this.left=null,this.right=null}}const cy=new dy(null,0,0);cy.parent=cy,cy.left=cy,cy.right=cy,XC(cy,0);class hy{constructor(){this.root=cy,this.requestNormalizeDelta=!1}intervalSearch(e,t,i,n,o,s,r){return this.root===cy?[]:function(e,t,i,n,o,s,r,a){let l=e.root,d=0,c=0,h=0,u=0;const g=[];let p=0;for(;l!==cy;)if(JC(l))ey(l.left,!1),ey(l.right,!1),l===l.parent.right&&(d-=l.parent.delta),l=l.parent;else{if(!JC(l.left)){if(c=d+l.maxEnd,ci)ey(l,!0);else{if(u=d+l.end,u>=t){l.setCachedOffsets(h,u,r);let e=!0;n&&l.ownerId&&l.ownerId!==n&&(e=!1),o&&ty(l)&&(e=!1),s&&sy(l)&&(e=!1),a&&!ny(l)&&(e=!1),e&&(g[p++]=l)}ey(l,!0),l.right===cy||JC(l.right)||(d+=l.delta,l=l.right)}}return ey(e.root,!1),g}(this,e,t,i,n,o,s,r)}search(e,t,i,n,o){return this.root===cy?[]:function(e,t,i,n,o,s){let r=e.root,a=0,l=0,d=0;const c=[];let h=0;for(;r!==cy;){if(JC(r)){ey(r.left,!1),ey(r.right,!1),r===r.parent.right&&(a-=r.parent.delta),r=r.parent;continue}if(r.left!==cy&&!JC(r.left)){r=r.left;continue}l=a+r.start,d=a+r.end,r.setCachedOffsets(l,d,o);let e=!0;t&&r.ownerId&&r.ownerId!==t&&(e=!1),i&&ty(r)&&(e=!1),n&&sy(r)&&(e=!1),s&&!ny(r)&&(e=!1),e&&(c[h++]=r),ey(r,!0),r.right===cy||JC(r.right)||(a+=r.delta,r=r.right)}return ey(e.root,!1),c}(this,e,t,i,n,o)}collectNodesFromOwner(e){return function(e,t){let i=e.root;const n=[];let o=0;for(;i!==cy;)JC(i)?(ey(i.left,!1),ey(i.right,!1),i=i.parent):i.left===cy||JC(i.left)?(i.ownerId===t&&(n[o++]=i),ey(i,!0),i.right===cy||JC(i.right)||(i=i.right)):i=i.left;return ey(e.root,!1),n}(this,e)}collectNodesPostOrder(){return function(e){let t=e.root;const i=[];let n=0;for(;t!==cy;)JC(t)?(ey(t.left,!1),ey(t.right,!1),t=t.parent):t.left===cy||JC(t.left)?t.right===cy||JC(t.right)?(i[n++]=t,ey(t,!0)):t=t.right:t=t.left;return ey(e.root,!1),i}(this)}insert(e){py(this,e),this._normalizeDeltaIfNecessary()}delete(e){my(this,e),this._normalizeDeltaIfNecessary()}resolveNode(e,t){const i=e;let n=0;for(;e!==this.root;)e===e.parent.right&&(n+=e.parent.delta),e=e.parent;const o=i.start+n,s=i.end+n;i.setCachedOffsets(o,s,t)}acceptReplace(e,t,i,n){const o=function(e,t,i){let n=e.root,o=0,s=0,r=0,a=0;const l=[];let d=0;for(;n!==cy;)if(JC(n))ey(n.left,!1),ey(n.right,!1),n===n.parent.right&&(o-=n.parent.delta),n=n.parent;else{if(!JC(n.left)){if(s=o+n.maxEnd,si?ey(n,!0):(a=o+n.end,a>=t&&(n.setCachedOffsets(r,a,0),l[d++]=n),ey(n,!0),n.right===cy||JC(n.right)||(o+=n.delta,n=n.right))}return ey(e.root,!1),l}(this,e,e+t);for(let e=0,t=o.length;ei?(o.start+=l,o.end+=l,o.delta+=l,(o.delta<-1073741824||o.delta>1073741824)&&(e.requestNormalizeDelta=!0),ey(o,!0)):(ey(o,!0),o.right===cy||JC(o.right)||(s+=o.delta,o=o.right))}ey(e.root,!1)}(this,e,e+t,i),this._normalizeDeltaIfNecessary();for(let s=0,r=o.length;si)&&1!==n&&(2===n||t)}function gy(e,t,i,n,o){const s=function(e){return(24&e.metadata)>>>3}(e),r=0===s||2===s,a=1===s||2===s,l=i-t,d=n,c=Math.min(l,d),h=e.start;let u=!1;const g=e.end;let p=!1;t<=h&&g<=i&&function(e){return(32&e.metadata)>>>5==1}(e)&&(e.start=t,u=!0,e.end=t,p=!0);{const e=o?1:l>0?2:0;!u&&uy(h,r,t,e)&&(u=!0),!p&&uy(g,a,t,e)&&(p=!0)}if(c>0&&!o){const e=l>d?2:0;!u&&uy(h,r,t+c,e)&&(u=!0),!p&&uy(g,a,t+c,e)&&(p=!0)}{const n=o?1:0;!u&&uy(h,r,i,n)&&(e.start=t+d,u=!0),!p&&uy(g,a,i,n)&&(e.end=t+d,p=!0)}const m=d-l;u||(e.start=Math.max(0,h+m)),p||(e.end=Math.max(0,g+m)),e.start>e.end&&(e.end=e.start)}function py(e,t){if(e.root===cy)return t.parent=cy,t.left=cy,t.right=cy,XC(t,0),e.root=t,e.root;!function(e,t){let i=0,n=e.root;const o=t.start,s=t.end;for(;;)if(r=o,a=s,l=n.start+i,d=n.end+i,(r===l?a-d:r-l)<0){if(n.left===cy){t.start-=i,t.end-=i,t.maxEnd-=i,n.left=t;break}n=n.left}else{if(n.right===cy){t.start-=i+n.delta,t.end-=i+n.delta,t.maxEnd-=i+n.delta,n.right=t;break}i+=n.delta,n=n.right}var r,a,l,d;t.parent=n,t.left=cy,t.right=cy,XC(t,1)}(e,t),Cy(t.parent);let i=t;for(;i!==e.root&&1===QC(i.parent);)if(i.parent===i.parent.parent.left){const t=i.parent.parent.right;1===QC(t)?(XC(i.parent,0),XC(t,0),XC(i.parent.parent,1),i=i.parent.parent):(i===i.parent.right&&(i=i.parent,_y(e,i)),XC(i.parent,0),XC(i.parent.parent,1),vy(e,i.parent.parent))}else{const t=i.parent.parent.left;1===QC(t)?(XC(i.parent,0),XC(t,0),XC(i.parent.parent,1),i=i.parent.parent):(i===i.parent.left&&(i=i.parent,vy(e,i)),XC(i.parent,0),XC(i.parent.parent,1),_y(e,i.parent.parent))}return XC(e.root,0),t}function my(e,t){let i,n;if(t.left===cy?(i=t.right,n=t,i.delta+=t.delta,(i.delta<-1073741824||i.delta>1073741824)&&(e.requestNormalizeDelta=!0),i.start+=t.delta,i.end+=t.delta):t.right===cy?(i=t.left,n=t):(n=function(e){for(;e.left!==cy;)e=e.left;return e}(t.right),i=n.right,i.start+=n.delta,i.end+=n.delta,i.delta+=n.delta,(i.delta<-1073741824||i.delta>1073741824)&&(e.requestNormalizeDelta=!0),n.start+=t.delta,n.end+=t.delta,n.delta=t.delta,(n.delta<-1073741824||n.delta>1073741824)&&(e.requestNormalizeDelta=!0)),n===e.root)return e.root=i,XC(i,0),t.detach(),fy(),wy(i),void(e.root.parent=cy);const o=1===QC(n);if(n===n.parent.left?n.parent.left=i:n.parent.right=i,n===t?i.parent=n.parent:(n.parent===t?i.parent=n:i.parent=n.parent,n.left=t.left,n.right=t.right,n.parent=t.parent,XC(n,QC(t)),t===e.root?e.root=n:t===t.parent.left?t.parent.left=n:t.parent.right=n,n.left!==cy&&(n.left.parent=n),n.right!==cy&&(n.right.parent=n)),t.detach(),o)return Cy(i.parent),n!==t&&(Cy(n),Cy(n.parent)),void fy();let s;for(Cy(i),Cy(i.parent),n!==t&&(Cy(n),Cy(n.parent));i!==e.root&&0===QC(i);)i===i.parent.left?(s=i.parent.right,1===QC(s)&&(XC(s,0),XC(i.parent,1),_y(e,i.parent),s=i.parent.right),0===QC(s.left)&&0===QC(s.right)?(XC(s,1),i=i.parent):(0===QC(s.right)&&(XC(s.left,0),XC(s,1),vy(e,s),s=i.parent.right),XC(s,QC(i.parent)),XC(i.parent,0),XC(s.right,0),_y(e,i.parent),i=e.root)):(s=i.parent.left,1===QC(s)&&(XC(s,0),XC(i.parent,1),vy(e,i.parent),s=i.parent.left),0===QC(s.left)&&0===QC(s.right)?(XC(s,1),i=i.parent):(0===QC(s.left)&&(XC(s.right,0),XC(s,1),_y(e,s),s=i.parent.left),XC(s,QC(i.parent)),XC(i.parent,0),XC(s.left,0),vy(e,i.parent),i=e.root));XC(i,0),fy()}function fy(){cy.parent=cy,cy.delta=0,cy.start=0,cy.end=0}function _y(e,t){const i=t.right;i.delta+=t.delta,(i.delta<-1073741824||i.delta>1073741824)&&(e.requestNormalizeDelta=!0),i.start+=t.delta,i.end+=t.delta,t.right=i.left,i.left!==cy&&(i.left.parent=t),i.parent=t.parent,t.parent===cy?e.root=i:t===t.parent.left?t.parent.left=i:t.parent.right=i,i.left=t,t.parent=i,wy(t),wy(i)}function vy(e,t){const i=t.left;t.delta-=i.delta,(t.delta<-1073741824||t.delta>1073741824)&&(e.requestNormalizeDelta=!0),t.start-=i.delta,t.end-=i.delta,t.left=i.right,i.right!==cy&&(i.right.parent=t),i.parent=t.parent,t.parent===cy?e.root=i:t===t.parent.right?t.parent.right=i:t.parent.left=i,i.right=t,t.parent=i,wy(t),wy(i)}function by(e){let t=e.end;if(e.left!==cy){const i=e.left.maxEnd;i>t&&(t=i)}if(e.right!==cy){const i=e.right.maxEnd+e.delta;i>t&&(t=i)}return t}function wy(e){e.maxEnd=by(e)}function Cy(e){for(;e!==cy;){const t=by(e);if(e.maxEnd===t)return;e.maxEnd=t,e=e.parent}}class yy{constructor(e,t){this.piece=e,this.color=t,this.size_left=0,this.lf_left=0,this.parent=this,this.left=this,this.right=this}next(){if(this.right!==Sy)return xy(this.right);let e=this;for(;e.parent!==Sy&&e.parent.left!==e;)e=e.parent;return e.parent===Sy?Sy:e.parent}prev(){if(this.left!==Sy)return ky(this.left);let e=this;for(;e.parent!==Sy&&e.parent.right!==e;)e=e.parent;return e.parent===Sy?Sy:e.parent}detach(){this.parent=null,this.left=null,this.right=null}}const Sy=new yy(null,0);function xy(e){for(;e.left!==Sy;)e=e.left;return e}function ky(e){for(;e.right!==Sy;)e=e.right;return e}function Ly(e){return e===Sy?0:e.size_left+e.piece.length+Ly(e.right)}function Ey(e){return e===Sy?0:e.lf_left+e.piece.lineFeedCnt+Ey(e.right)}function Iy(){Sy.parent=Sy}function Dy(e,t){const i=t.right;i.size_left+=t.size_left+(t.piece?t.piece.length:0),i.lf_left+=t.lf_left+(t.piece?t.piece.lineFeedCnt:0),t.right=i.left,i.left!==Sy&&(i.left.parent=t),i.parent=t.parent,t.parent===Sy?e.root=i:t.parent.left===t?t.parent.left=i:t.parent.right=i,i.left=t,t.parent=i}function Ny(e,t){const i=t.left;t.left=i.right,i.right!==Sy&&(i.right.parent=t),i.parent=t.parent,t.size_left-=i.size_left+(i.piece?i.piece.length:0),t.lf_left-=i.lf_left+(i.piece?i.piece.lineFeedCnt:0),t.parent===Sy?e.root=i:t===t.parent.right?t.parent.right=i:t.parent.left=i,i.right=t,t.parent=i}function My(e,t){let i,n;if(t.left===Sy?(n=t,i=n.right):t.right===Sy?(n=t,i=n.left):(n=xy(t.right),i=n.right),n===e.root)return e.root=i,i.color=0,t.detach(),Iy(),void(e.root.parent=Sy);const o=1===n.color;if(n===n.parent.left?n.parent.left=i:n.parent.right=i,n===t?(i.parent=n.parent,Ay(e,i)):(n.parent===t?i.parent=n:i.parent=n.parent,Ay(e,i),n.left=t.left,n.right=t.right,n.parent=t.parent,n.color=t.color,t===e.root?e.root=n:t===t.parent.left?t.parent.left=n:t.parent.right=n,n.left!==Sy&&(n.left.parent=n),n.right!==Sy&&(n.right.parent=n),n.size_left=t.size_left,n.lf_left=t.lf_left,Ay(e,n)),t.detach(),i.parent.left===i){const t=Ly(i),n=Ey(i);if(t!==i.parent.size_left||n!==i.parent.lf_left){const o=t-i.parent.size_left,s=n-i.parent.lf_left;i.parent.size_left=t,i.parent.lf_left=n,Ry(e,i.parent,o,s)}}if(Ay(e,i.parent),o)return void Iy();let s;for(;i!==e.root&&0===i.color;)i===i.parent.left?(s=i.parent.right,1===s.color&&(s.color=0,i.parent.color=1,Dy(e,i.parent),s=i.parent.right),0===s.left.color&&0===s.right.color?(s.color=1,i=i.parent):(0===s.right.color&&(s.left.color=0,s.color=1,Ny(e,s),s=i.parent.right),s.color=i.parent.color,i.parent.color=0,s.right.color=0,Dy(e,i.parent),i=e.root)):(s=i.parent.left,1===s.color&&(s.color=0,i.parent.color=1,Ny(e,i.parent),s=i.parent.left),0===s.left.color&&0===s.right.color?(s.color=1,i=i.parent):(0===s.left.color&&(s.right.color=0,s.color=1,Dy(e,s),s=i.parent.left),s.color=i.parent.color,i.parent.color=0,s.left.color=0,Ny(e,i.parent),i=e.root));i.color=0,Iy()}function Ty(e,t){for(Ay(e,t);t!==e.root&&1===t.parent.color;)if(t.parent===t.parent.parent.left){const i=t.parent.parent.right;1===i.color?(t.parent.color=0,i.color=0,t.parent.parent.color=1,t=t.parent.parent):(t===t.parent.right&&Dy(e,t=t.parent),t.parent.color=0,t.parent.parent.color=1,Ny(e,t.parent.parent))}else{const i=t.parent.parent.left;1===i.color?(t.parent.color=0,i.color=0,t.parent.parent.color=1,t=t.parent.parent):(t===t.parent.left&&Ny(e,t=t.parent),t.parent.color=0,t.parent.parent.color=1,Dy(e,t.parent.parent))}e.root.color=0}function Ry(e,t,i,n){for(;t!==e.root&&t!==Sy;)t.parent.left===t&&(t.parent.size_left+=i,t.parent.lf_left+=n),t=t.parent}function Ay(e,t){let i=0,n=0;if(t!==e.root){for(;t!==e.root&&t===t.parent.right;)t=t.parent;if(t!==e.root)for(i=Ly((t=t.parent).left)-t.size_left,n=Ey(t.left)-t.lf_left,t.size_left+=i,t.lf_left+=n;t!==e.root&&(0!==i||0!==n);)t.parent.left===t&&(t.parent.size_left+=i,t.parent.lf_left+=n),t=t.parent}}Sy.parent=Sy,Sy.left=Sy,Sy.right=Sy,Sy.color=0;const Oy=(e,t)=>new Ai((()=>{try{return new Intl.Collator(e,t)}catch{return new Intl.Collator(void 0,t)}})),Py=(e,t)=>new Ai((()=>{try{return new Intl.Segmenter(e,t)}catch{return new Intl.Segmenter(void 0,t)}})),Fy=(e,t)=>new Ai((()=>{try{return new Intl.NumberFormat(e,t)}catch{return new Intl.NumberFormat(void 0,t)}}));function By(e){return e<0?0:e>255?255:0|e}function Wy(e){return e<0?0:e>4294967295?4294967295:0|e}class Hy{constructor(e){const t=By(e);this._defaultValue=t,this._asciiMap=Hy._createAsciiMap(t),this._map=new Map}static _createAsciiMap(e){const t=new Uint8Array(256);return t.fill(e),t}set(e,t){const i=By(t);e>=0&&e<256?this._asciiMap[e]=i:this._map.set(e,i)}get(e){return e>=0&&e<256?this._asciiMap[e]:this._map.get(e)||this._defaultValue}clear(){this._asciiMap.fill(this._defaultValue),this._map.clear()}}class Vy{constructor(){this._actual=new Hy(0)}add(e){this._actual.set(e,1)}has(e){return 1===this._actual.get(e)}clear(){return this._actual.clear()}}class zy extends Hy{constructor(e,t){super(0),this._segmenter=null,this._cachedLine=null,this._cachedSegments=[],this.intlSegmenterLocales=t,this.intlSegmenterLocales.length>0?this._segmenter=Py(this.intlSegmenterLocales,{granularity:"word"}):this._segmenter=null;for(let t=0,i=e.length;tt)break;i=n}return i}findNextIntlWordAtOrAfterOffset(e,t){for(const i of this._getIntlSegmenterWordsOnLine(e))if(!(i.index=0;let t=null;try{t=Ui(this.searchString,this.isRegex,{matchCase:this.matchCase,wholeWord:!1,multiline:e,global:!0,unicode:!0})}catch(e){return null}if(!t)return null;let i=!this.isRegex&&!e;return i&&this.searchString.toLowerCase()!==this.searchString.toUpperCase()&&(i=this.matchCase),new vg(t,this.wordSeparators?jy(this.wordSeparators,[]):null,i?this.searchString:null)}}function qy(e){if(!e||0===e.length)return!1;for(let t=0,i=e.length;t=i)break;const n=e.charCodeAt(t);if(110===n||114===n||87===n)return!0}}return!1}function $y(e,t,i){if(!i)return new fg(e,null);const n=[];for(let e=0,i=t.length;e=e?n=o-1:t[o+1]>=e?(i=o,n=o):i=o+1}return i+1}}class Yy{static findMatches(e,t,i,n,o){const s=t.parseSearchRequest();return s?s.regex.multiline?this._doFindMatchesMultiline(e,i,new Qy(s.wordSeparators,s.regex),n,o):this._doFindMatchesLineByLine(e,i,s,n,o):[]}static _getMultilineMatchRange(e,t,i,n,o,s){let r,a,l=0;if(n?(l=n.findLineFeedCountBeforeOffset(o),r=t+o+l):r=t+o,n){const e=n.findLineFeedCountBeforeOffset(o+s.length)-l;a=r+s.length+e}else a=r+s.length;const d=e.getPositionAt(r),c=e.getPositionAt(a);return new Yu(d.lineNumber,d.column,c.lineNumber,c.column)}static _doFindMatchesMultiline(e,t,i,n,o){const s=e.getOffsetAt(t.getStartPosition()),r=e.getValueInRange(t,1),a="\r\n"===e.getEOL()?new Gy(r):null,l=[];let d,c=0;for(i.reset(0);d=i.next(r);)if(l[c++]=$y(this._getMultilineMatchRange(e,s,r,a,d.index,d[0]),d,n),c>=o)return l;return l}static _doFindMatchesLineByLine(e,t,i,n,o){const s=[];let r=0;if(t.startLineNumber===t.endLineNumber){const a=e.getLineContent(t.startLineNumber).substring(t.startColumn-1,t.endColumn-1);return r=this._findMatchesInLine(i,a,t.startLineNumber,t.startColumn-1,r,s,n,o),s}const a=e.getLineContent(t.startLineNumber).substring(t.startColumn-1);r=this._findMatchesInLine(i,a,t.startLineNumber,t.startColumn-1,r,s,n,o);for(let a=t.startLineNumber+1;a=a))return o;return o}const d=new Qy(e.wordSeparators,e.regex);let c;d.reset(0);do{if(c=d.next(t),c&&(s[o++]=$y(new Yu(i,c.index+1+n,i,c.index+1+c[0].length+n),c,r),o>=a))return o}while(c);return o}static findNextMatch(e,t,i,n){const o=t.parseSearchRequest();if(!o)return null;const s=new Qy(o.wordSeparators,o.regex);return o.regex.multiline?this._doFindNextMatchMultiline(e,i,s,n):this._doFindNextMatchLineByLine(e,i,s,n)}static _doFindNextMatchMultiline(e,t,i,n){const o=new sh(t.lineNumber,1),s=e.getOffsetAt(o),r=e.getLineCount(),a=e.getValueInRange(new Yu(o.lineNumber,o.column,r,e.getLineMaxColumn(r)),1),l="\r\n"===e.getEOL()?new Gy(a):null;i.reset(t.column-1);const d=i.next(a);return d?$y(this._getMultilineMatchRange(e,s,a,l,d.index,d[0]),d,n):1!==t.lineNumber||1!==t.column?this._doFindNextMatchMultiline(e,new sh(1,1),i,n):null}static _doFindNextMatchLineByLine(e,t,i,n){const o=e.getLineCount(),s=t.lineNumber,r=e.getLineContent(s),a=this._findFirstMatchInLine(i,r,s,t.column,n);if(a)return a;for(let t=1;t<=o;t++){const r=(s+t-1)%o,a=e.getLineContent(r+1),l=this._findFirstMatchInLine(i,a,r+1,1,n);if(l)return l}return null}static _findFirstMatchInLine(e,t,i,n,o){e.reset(n-1);const s=e.next(t);return s?$y(new Yu(i,s.index+1,i,s.index+1+s[0].length),s,o):null}static findPreviousMatch(e,t,i,n){const o=t.parseSearchRequest();if(!o)return null;const s=new Qy(o.wordSeparators,o.regex);return o.regex.multiline?this._doFindPreviousMatchMultiline(e,i,s,n):this._doFindPreviousMatchLineByLine(e,i,s,n)}static _doFindPreviousMatchMultiline(e,t,i,n){const o=this._doFindMatchesMultiline(e,new Yu(1,1,t.lineNumber,t.column),i,n,9990);if(o.length>0)return o[o.length-1];const s=e.getLineCount();return t.lineNumber!==s||t.column!==e.getLineMaxColumn(s)?this._doFindPreviousMatchMultiline(e,new sh(s,e.getLineMaxColumn(s)),i,n):null}static _doFindPreviousMatchLineByLine(e,t,i,n){const o=e.getLineCount(),s=t.lineNumber,r=e.getLineContent(s).substring(0,t.column-1),a=this._findLastMatchInLine(i,r,s,n);if(a)return a;for(let t=1;t<=o;t++){const r=(o+s-t-1)%o,a=e.getLineContent(r+1),l=this._findLastMatchInLine(i,a,r+1,n);if(l)return l}return null}static _findLastMatchInLine(e,t,i,n){let o,s=null;for(e.reset(0);o=e.next(t);)s=$y(new Yu(i,o.index+1,i,o.index+1+o[0].length),o,n);return s}}function Zy(e,t,i,n,o){return function(e,t,i,n,o){if(0===n)return!0;const s=t.charCodeAt(n-1);if(0!==e.get(s))return!0;if(13===s||10===s)return!0;if(o>0){const i=t.charCodeAt(n);if(0!==e.get(i))return!0}return!1}(e,t,0,n,o)&&function(e,t,i,n,o){if(n+o===i)return!0;const s=t.charCodeAt(n+o);if(0!==e.get(s))return!0;if(13===s||10===s)return!0;if(o>0){const i=t.charCodeAt(n+o-1);if(0!==e.get(i))return!0}return!1}(e,t,i,n,o)}class Qy{constructor(e,t){this._wordSeparators=e,this._searchRegex=t,this._prevMatchStartIndex=-1,this._prevMatchLength=0}reset(e){this._searchRegex.lastIndex=e,this._prevMatchStartIndex=-1,this._prevMatchLength=0}next(e){const t=e.length;let i;do{if(this._prevMatchStartIndex+this._prevMatchLength===t)return null;if(i=this._searchRegex.exec(e),!i)return null;const n=i.index,o=i[0].length;if(n===this._prevMatchStartIndex&&o===this._prevMatchLength){if(0===o){cn(e,t,this._searchRegex.lastIndex)>65535?this._searchRegex.lastIndex+=2:this._searchRegex.lastIndex+=1;continue}return null}if(this._prevMatchStartIndex=n,this._prevMatchLength=o,!this._wordSeparators||Zy(this._wordSeparators,e,t,n,o))return i}while(i);return null}}const Xy=65535;function Jy(e){let t;return t=e[e.length-1]<65536?new Uint16Array(e.length):new Uint32Array(e.length),t.set(e,0),t}class eS{constructor(e,t,i,n,o){this.lineStarts=e,this.cr=t,this.lf=i,this.crlf=n,this.isBasicASCII=o}}function tS(e,t=!0){const i=[0];let n=1;for(let t=0,o=e.length;t(e!==Sy&&this._pieces.push(e.piece),!0)))}read(){return 0===this._pieces.length?0===this._index?(this._index++,this._BOM):null:this._index>this._pieces.length-1?null:0===this._index?this._BOM+this._tree.getPieceContent(this._pieces[this._index++]):this._tree.getPieceContent(this._pieces[this._index++])}}class sS{constructor(e){this._limit=e,this._cache=[]}get(e){for(let t=this._cache.length-1;t>=0;t--){const i=this._cache[t];if(i.nodeStartOffset<=e&&i.nodeStartOffset+i.node.piece.length>=e)return i}return null}get2(e){for(let t=this._cache.length-1;t>=0;t--){const i=this._cache[t];if(i.nodeStartLineNumber&&i.nodeStartLineNumber=e)return i}return null}set(e){this._cache.length>=this._limit&&this._cache.shift(),this._cache.push(e)}validate(e){let t=!1;const i=this._cache;for(let n=0;n=e)&&(i[n]=null,t=!0)}if(t){const e=[];for(const t of i)null!==t&&e.push(t);this._cache=e}}}class rS{constructor(e,t,i){this.create(e,t,i)}create(e,t,i){this._buffers=[new nS("",[0])],this._lastChangeBufferPos={line:0,column:0},this.root=Sy,this._lineCnt=1,this._length=0,this._EOL=t,this._EOLLength=t.length,this._EOLNormalized=i;let n=null;for(let t=0,i=e.length;t0){e[t].lineStarts||(e[t].lineStarts=tS(e[t].buffer));const i=new iS(t+1,{line:0,column:0},{line:e[t].lineStarts.length-1,column:e[t].buffer.length-e[t].lineStarts[e[t].lineStarts.length-1]},e[t].lineStarts.length-1,e[t].buffer.length);this._buffers.push(e[t]),n=this.rbInsertRight(n,i)}this._searchCache=new sS(1),this._lastVisitedLine={lineNumber:0,value:""},this.computeBufferMetadata()}normalizeEOL(e){const t=65535-Math.floor(21845),i=2*t;let n="",o=0;const s=[];if(this.iterate(this.root,(r=>{const a=this.getNodeContent(r),l=a.length;if(o<=t||o+l0){const t=n.replace(/\r\n|\r|\n/g,e);s.push(new nS(t,tS(t)))}this.create(s,e,!0)}getEOL(){return this._EOL}setEOL(e){this._EOL=e,this._EOLLength=this._EOL.length,this.normalizeEOL(e)}createSnapshot(e){return new oS(this,e)}getOffsetAt(e,t){let i=0,n=this.root;for(;n!==Sy;)if(n.left!==Sy&&n.lf_left+1>=e)n=n.left;else{if(n.lf_left+n.piece.lineFeedCnt+1>=e)return i+=n.size_left,i+(this.getAccumulatedValue(n,e-n.lf_left-2)+t-1);e-=n.lf_left+n.piece.lineFeedCnt,i+=n.size_left+n.piece.length,n=n.right}return i}getPositionAt(e){e=Math.floor(e),e=Math.max(0,e);let t=this.root,i=0;const n=e;for(;t!==Sy;)if(0!==t.size_left&&t.size_left>=e)t=t.left;else{if(t.size_left+t.piece.length>=e){const o=this.getIndexOf(t,e-t.size_left);if(i+=t.lf_left+o.index,0===o.index){const e=this.getOffsetAt(i+1,1);return new sh(i+1,n-e+1)}return new sh(i+1,o.remainder+1)}if(e-=t.size_left+t.piece.length,i+=t.lf_left+t.piece.lineFeedCnt,t.right===Sy){const t=this.getOffsetAt(i+1,1);return new sh(i+1,n-e-t+1)}t=t.right}return new sh(1,1)}getValueInRange(e,t){if(e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn)return"";const i=this.nodeAt2(e.startLineNumber,e.startColumn),n=this.nodeAt2(e.endLineNumber,e.endColumn),o=this.getValueInRange2(i,n);return t?t===this._EOL&&this._EOLNormalized&&t===this.getEOL()&&this._EOLNormalized?o:o.replace(/\r\n|\r|\n/g,t):o}getValueInRange2(e,t){if(e.node===t.node){const i=e.node,n=this._buffers[i.piece.bufferIndex].buffer,o=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);return n.substring(o+e.remainder,o+t.remainder)}let i=e.node;const n=this._buffers[i.piece.bufferIndex].buffer,o=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);let s=n.substring(o+e.remainder,o+i.piece.length);for(i=i.next();i!==Sy;){const e=this._buffers[i.piece.bufferIndex].buffer,n=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);if(i===t.node){s+=e.substring(n,n+t.remainder);break}s+=e.substr(n,i.piece.length),i=i.next()}return s}getLinesContent(){const e=[];let t=0,i="",n=!1;return this.iterate(this.root,(o=>{if(o===Sy)return!0;const s=o.piece;let r=s.length;if(0===r)return!0;const a=this._buffers[s.bufferIndex].buffer,l=this._buffers[s.bufferIndex].lineStarts,d=s.start.line,c=s.end.line;let h=l[d]+s.start.column;if(n&&(10===a.charCodeAt(h)&&(h++,r--),e[t++]=i,i="",n=!1,0===r))return!0;if(d===c)return this._EOLNormalized||13!==a.charCodeAt(h+r-1)?i+=a.substr(h,r):(n=!0,i+=a.substr(h,r-1)),!0;i+=this._EOLNormalized?a.substring(h,Math.max(h,l[d+1]-this._EOLLength)):a.substring(h,l[d+1]).replace(/(\r\n|\r|\n)$/,""),e[t++]=i;for(let n=d+1;ne+g,t.reset(0)):(_=h.buffer,v=e=>e,t.reset(g));do{if(m=t.next(_),m){if(v(m.index)>=p)return d;this.positionInBuffer(e,v(m.index)-u,f);const t=this.getLineFeedCnt(e.piece.bufferIndex,o,f),s=f.line===o.line?f.column-o.column+n:f.column+1,r=s+m[0].length;if(c[d++]=$y(new Yu(i+t,s,i+t,r),m,a),v(m.index)+m[0].length>=p)return d;if(d>=l)return d}}while(m);return d}findMatchesLineByLine(e,t,i,n){const o=[];let s=0;const r=new Qy(t.wordSeparators,t.regex);let a=this.nodeAt2(e.startLineNumber,e.startColumn);if(null===a)return[];const l=this.nodeAt2(e.endLineNumber,e.endColumn);if(null===l)return[];let d=this.positionInBuffer(a.node,a.remainder);const c=this.positionInBuffer(l.node,l.remainder);if(a.node===l.node)return this.findMatchesInNode(a.node,r,e.startLineNumber,e.startColumn,d,c,t,i,n,s,o),o;let h=e.startLineNumber,u=a.node;for(;u!==l.node;){const l=this.getLineFeedCnt(u.piece.bufferIndex,d,u.piece.end);if(l>=1){const a=this._buffers[u.piece.bufferIndex].lineStarts,c=this.offsetInBuffer(u.piece.bufferIndex,u.piece.start),g=a[d.line+l],p=h===e.startLineNumber?e.startColumn:1;if(s=this.findMatchesInNode(u,r,h,p,d,this.positionInBuffer(u,g-c),t,i,n,s,o),s>=n)return o;h+=l}const c=h===e.startLineNumber?e.startColumn-1:0;if(h===e.endLineNumber){const a=this.getLineContent(h).substring(c,e.endColumn-1);return s=this._findMatchesInLine(t,r,a,e.endLineNumber,c,s,o,i,n),o}if(s=this._findMatchesInLine(t,r,this.getLineContent(h).substr(c),h,c,s,o,i,n),s>=n)return o;h++,a=this.nodeAt2(h,1),u=a.node,d=this.positionInBuffer(a.node,a.remainder)}if(h===e.endLineNumber){const a=h===e.startLineNumber?e.startColumn-1:0,l=this.getLineContent(h).substring(a,e.endColumn-1);return s=this._findMatchesInLine(t,r,l,e.endLineNumber,a,s,o,i,n),o}const g=h===e.startLineNumber?e.startColumn:1;return s=this.findMatchesInNode(l.node,r,h,g,d,c,t,i,n,s,o),o}_findMatchesInLine(e,t,i,n,o,s,r,a,l){const d=e.wordSeparators;if(!a&&e.simpleSearch){const t=e.simpleSearch,a=t.length,c=i.length;let h=-a;for(;-1!==(h=i.indexOf(t,h+a));)if((!d||Zy(d,i,c,h,a))&&(r[s++]=new fg(new Yu(n,h+1+o,n,h+1+a+o),null),s>=l))return s;return s}let c;t.reset(0);do{if(c=t.next(i),c&&(r[s++]=$y(new Yu(n,c.index+1+o,n,c.index+1+c[0].length+o),c,a),s>=l))return s}while(c);return s}insert(e,t,i=!1){if(this._EOLNormalized=this._EOLNormalized&&i,this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",this.root!==Sy){const{node:i,remainder:n,nodeStartOffset:o}=this.nodeAt(e),s=i.piece,r=s.bufferIndex,a=this.positionInBuffer(i,n);if(0===i.piece.bufferIndex&&s.end.line===this._lastChangeBufferPos.line&&s.end.column===this._lastChangeBufferPos.column&&o+s.length===e&&t.lengthe){const e=[];let o=new iS(s.bufferIndex,a,s.end,this.getLineFeedCnt(s.bufferIndex,a,s.end),this.offsetInBuffer(r,s.end)-this.offsetInBuffer(r,a));if(this.shouldCheckCRLF()&&this.endWithCR(t)&&10===this.nodeCharCodeAt(i,n)){const e={line:o.start.line+1,column:0};o=new iS(o.bufferIndex,e,o.end,this.getLineFeedCnt(o.bufferIndex,e,o.end),o.length-1),t+="\n"}if(this.shouldCheckCRLF()&&this.startWithLF(t))if(13===this.nodeCharCodeAt(i,n-1)){const o=this.positionInBuffer(i,n-1);this.deleteNodeTail(i,o),t="\r"+t,0===i.piece.length&&e.push(i)}else this.deleteNodeTail(i,a);else this.deleteNodeTail(i,a);const l=this.createNewPieces(t);o.length>0&&this.rbInsertRight(i,o);let d=i;for(let e=0;e=0;e--)o=this.rbInsertLeft(o,n[e]);this.validateCRLFWithPrevNode(o),this.deleteNodes(i)}insertContentToNodeRight(e,t){this.adjustCarriageReturnFromNext(e,t)&&(e+="\n");const i=this.createNewPieces(e),n=this.rbInsertRight(t,i[0]);let o=n;for(let e=1;e=c))break;a=d+1}return i?(i.line=d,i.column=r-h,null):{line:d,column:r-h}}getLineFeedCnt(e,t,i){if(0===i.column)return i.line-t.line;const n=this._buffers[e].lineStarts;if(i.line===n.length-1)return i.line-t.line;const o=n[i.line+1],s=n[i.line]+i.column;if(o>s+1)return i.line-t.line;const r=s-1;return 13===this._buffers[e].buffer.charCodeAt(r)?i.line-t.line+1:i.line-t.line}offsetInBuffer(e,t){return this._buffers[e].lineStarts[t.line]+t.column}deleteNodes(e){for(let t=0;tXy){const t=[];for(;e.length>Xy;){const i=e.charCodeAt(65534);let n;13===i||i>=55296&&i<=56319?(n=e.substring(0,65534),e=e.substring(65534)):(n=e.substring(0,Xy),e=e.substring(Xy));const o=tS(n);t.push(new iS(this._buffers.length,{line:0,column:0},{line:o.length-1,column:n.length-o[o.length-1]},o.length-1,n.length)),this._buffers.push(new nS(n,o))}const i=tS(e);return t.push(new iS(this._buffers.length,{line:0,column:0},{line:i.length-1,column:e.length-i[i.length-1]},i.length-1,e.length)),this._buffers.push(new nS(e,i)),t}let t=this._buffers[0].buffer.length;const i=tS(e,!1);let n=this._lastChangeBufferPos;if(this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-1]===t&&0!==t&&this.startWithLF(e)&&this.endWithCR(this._buffers[0].buffer)){this._lastChangeBufferPos={line:this._lastChangeBufferPos.line,column:this._lastChangeBufferPos.column+1},n=this._lastChangeBufferPos;for(let e=0;e=e-1)i=i.left;else{if(i.lf_left+i.piece.lineFeedCnt>e-1){const n=this.getAccumulatedValue(i,e-i.lf_left-2),r=this.getAccumulatedValue(i,e-i.lf_left-1),a=this._buffers[i.piece.bufferIndex].buffer,l=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);return o+=i.size_left,this._searchCache.set({node:i,nodeStartOffset:o,nodeStartLineNumber:s-(e-1-i.lf_left)}),a.substring(l+n,l+r-t)}if(i.lf_left+i.piece.lineFeedCnt===e-1){const t=this.getAccumulatedValue(i,e-i.lf_left-2),o=this._buffers[i.piece.bufferIndex].buffer,s=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);n=o.substring(s+t,s+i.piece.length);break}e-=i.lf_left+i.piece.lineFeedCnt,o+=i.size_left+i.piece.length,i=i.right}}for(i=i.next();i!==Sy;){const e=this._buffers[i.piece.bufferIndex].buffer;if(i.piece.lineFeedCnt>0){const o=this.getAccumulatedValue(i,0),s=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);return n+=e.substring(s,s+o-t),n}{const t=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);n+=e.substr(t,i.piece.length)}i=i.next()}return n}computeBufferMetadata(){let e=this.root,t=1,i=0;for(;e!==Sy;)t+=e.lf_left+e.piece.lineFeedCnt,i+=e.size_left+e.piece.length,e=e.right;this._lineCnt=t,this._length=i,this._searchCache.validate(this._length)}getIndexOf(e,t){const i=e.piece,n=this.positionInBuffer(e,t),o=n.line-i.start.line;if(this.offsetInBuffer(i.bufferIndex,i.end)-this.offsetInBuffer(i.bufferIndex,i.start)===t){const t=this.getLineFeedCnt(e.piece.bufferIndex,i.start,n);if(t!==o)return{index:t,remainder:0}}return{index:o,remainder:n.column}}getAccumulatedValue(e,t){if(t<0)return 0;const i=e.piece,n=this._buffers[i.bufferIndex].lineStarts,o=i.start.line+t+1;return o>i.end.line?n[i.end.line]+i.end.column-n[i.start.line]-i.start.column:n[o]-n[i.start.line]-i.start.column}deleteNodeTail(e,t){const i=e.piece,n=i.lineFeedCnt,o=this.offsetInBuffer(i.bufferIndex,i.end),s=t,r=this.offsetInBuffer(i.bufferIndex,s),a=this.getLineFeedCnt(i.bufferIndex,i.start,s),l=a-n,d=r-o,c=i.length+d;e.piece=new iS(i.bufferIndex,i.start,s,a,c),Ry(this,e,d,l)}deleteNodeHead(e,t){const i=e.piece,n=i.lineFeedCnt,o=this.offsetInBuffer(i.bufferIndex,i.start),s=t,r=this.getLineFeedCnt(i.bufferIndex,s,i.end),a=r-n,l=o-this.offsetInBuffer(i.bufferIndex,s),d=i.length+l;e.piece=new iS(i.bufferIndex,s,i.end,r,d),Ry(this,e,l,a)}shrinkNode(e,t,i){const n=e.piece,o=n.start,s=n.end,r=n.length,a=n.lineFeedCnt,l=t,d=this.getLineFeedCnt(n.bufferIndex,n.start,l),c=this.offsetInBuffer(n.bufferIndex,t)-this.offsetInBuffer(n.bufferIndex,o);e.piece=new iS(n.bufferIndex,n.start,l,d,c),Ry(this,e,c-r,d-a);const h=new iS(n.bufferIndex,i,s,this.getLineFeedCnt(n.bufferIndex,i,s),this.offsetInBuffer(n.bufferIndex,s)-this.offsetInBuffer(n.bufferIndex,i)),u=this.rbInsertRight(e,h);this.validateCRLFWithPrevNode(u)}appendToNode(e,t){this.adjustCarriageReturnFromNext(t,e)&&(t+="\n");const i=this.shouldCheckCRLF()&&this.startWithLF(t)&&this.endWithCR(e),n=this._buffers[0].buffer.length;this._buffers[0].buffer+=t;const o=tS(t,!1);for(let e=0;ee)t=t.left;else{if(t.size_left+t.piece.length>=e){n+=t.size_left;const i={node:t,remainder:e-t.size_left,nodeStartOffset:n};return this._searchCache.set(i),i}e-=t.size_left+t.piece.length,n+=t.size_left+t.piece.length,t=t.right}return null}nodeAt2(e,t){let i=this.root,n=0;for(;i!==Sy;)if(i.left!==Sy&&i.lf_left>=e-1)i=i.left;else{if(i.lf_left+i.piece.lineFeedCnt>e-1){const o=this.getAccumulatedValue(i,e-i.lf_left-2),s=this.getAccumulatedValue(i,e-i.lf_left-1);return n+=i.size_left,{node:i,remainder:Math.min(o+t-1,s),nodeStartOffset:n}}if(i.lf_left+i.piece.lineFeedCnt===e-1){const o=this.getAccumulatedValue(i,e-i.lf_left-2);if(o+t-1<=i.piece.length)return{node:i,remainder:o+t-1,nodeStartOffset:n};t-=i.piece.length-o;break}e-=i.lf_left+i.piece.lineFeedCnt,n+=i.size_left+i.piece.length,i=i.right}for(i=i.next();i!==Sy;){if(i.piece.lineFeedCnt>0){const e=this.getAccumulatedValue(i,0),n=this.offsetOfNode(i);return{node:i,remainder:Math.min(t-1,e),nodeStartOffset:n}}if(i.piece.length>=t-1)return{node:i,remainder:t-1,nodeStartOffset:this.offsetOfNode(i)};t-=i.piece.length,i=i.next()}return null}nodeCharCodeAt(e,t){if(e.piece.lineFeedCnt<1)return-1;const i=this._buffers[e.piece.bufferIndex],n=this.offsetInBuffer(e.piece.bufferIndex,e.piece.start)+t;return i.buffer.charCodeAt(n)}offsetOfNode(e){if(!e)return 0;let t=e.size_left;for(;e!==this.root;)e.parent.right===e&&(t+=e.parent.size_left+e.parent.piece.length),e=e.parent;return t}shouldCheckCRLF(){return!(this._EOLNormalized&&"\n"===this._EOL)}startWithLF(e){if("string"==typeof e)return 10===e.charCodeAt(0);if(e===Sy||0===e.piece.lineFeedCnt)return!1;const t=e.piece,i=this._buffers[t.bufferIndex].lineStarts,n=t.start.line,o=i[n]+t.start.column;return n!==i.length-1&&(!(i[n+1]>o+1)&&10===this._buffers[t.bufferIndex].buffer.charCodeAt(o))}endWithCR(e){return"string"==typeof e?13===e.charCodeAt(e.length-1):e!==Sy&&0!==e.piece.lineFeedCnt&&13===this.nodeCharCodeAt(e,e.piece.length-1)}validateCRLFWithPrevNode(e){if(this.shouldCheckCRLF()&&this.startWithLF(e)){const t=e.prev();this.endWithCR(t)&&this.fixCRLF(t,e)}}validateCRLFWithNextNode(e){if(this.shouldCheckCRLF()&&this.endWithCR(e)){const t=e.next();this.startWithLF(t)&&this.fixCRLF(e,t)}}fixCRLF(e,t){const i=[],n=this._buffers[e.piece.bufferIndex].lineStarts;let o;o=0===e.piece.end.column?{line:e.piece.end.line-1,column:n[e.piece.end.line]-n[e.piece.end.line-1]-1}:{line:e.piece.end.line,column:e.piece.end.column-1};const s=e.piece.length-1,r=e.piece.lineFeedCnt-1;e.piece=new iS(e.piece.bufferIndex,e.piece.start,o,r,s),Ry(this,e,-1,-1),0===e.piece.length&&i.push(e);const a={line:t.piece.start.line+1,column:0},l=t.piece.length-1,d=this.getLineFeedCnt(t.piece.bufferIndex,a,t.piece.end);t.piece=new iS(t.piece.bufferIndex,a,t.piece.end,d,l),Ry(this,t,-1,-1),0===t.piece.length&&i.push(t);const c=this.createNewPieces("\r\n");this.rbInsertRight(e,c[0]);for(let e=0;ee.sortIndex-t.sortIndex))}this._mightContainRTL=n,this._mightContainUnusualLineTerminators=o,this._mightContainNonBasicASCII=s;const u=this._doApplyEdits(a);let g=null;if(t&&c.length>0){c.sort(((e,t)=>t.lineNumber-e.lineNumber)),g=[];for(let e=0,t=c.length;e0&&c[e-1].lineNumber===t)continue;const i=c[e].oldContent,n=this.getLineContent(t);0!==n.length&&n!==i&&-1===qi(n)&&g.push(t)}}return this._onDidChangeContent.fire(),new bg(h,u,g)}_reduceOperations(e){return e.length<1e3?e:[this._toSingleEditOperation(e)]}_toSingleEditOperation(e){let t=!1;const i=e[0].range,n=e[e.length-1].range,o=new Yu(i.startLineNumber,i.startColumn,n.endLineNumber,n.endColumn);let s=i.startLineNumber,r=i.startColumn;const a=[];for(let i=0,n=e.length;i0&&a.push(n.text),s=o.endLineNumber,r=o.endColumn}const l=a.join(""),[d,c,h]=Lg(l);return{sortIndex:0,identifier:e[0].identifier,range:o,rangeOffset:this.getOffsetAt(o.startLineNumber,o.startColumn),rangeLength:this.getValueLengthInRange(o,0),text:l,eolCount:d,firstLineLength:c,lastLineLength:h,forceMoveMarkers:t,isAutoWhitespaceEdit:!1}}_doApplyEdits(e){e.sort(aS._sortOpsDescending);const t=[];for(let i=0;i0){const e=r.eolCount+1;d=1===e?new Yu(a,l,a,l+r.firstLineLength):new Yu(a,l,a+e-1,r.lastLineLength+1)}else d=new Yu(a,l,a,l);i=d.endLineNumber,n=d.endColumn,t.push(d),o=r}return t}static _sortOpsAscending(e,t){const i=Yu.compareRangesUsingEnds(e.range,t.range);return 0===i?e.sortIndex-t.sortIndex:i}static _sortOpsDescending(e,t){const i=Yu.compareRangesUsingEnds(e.range,t.range);return 0===i?t.sortIndex-e.sortIndex:-i}}class lS{constructor(e,t,i,n,o,s,r,a,l){this._chunks=e,this._bom=t,this._cr=i,this._lf=n,this._crlf=o,this._containsRTL=s,this._containsUnusualLineTerminators=r,this._isBasicASCII=a,this._normalizeEOL=l}_getEOL(e){const t=this._cr+this._lf+this._crlf,i=this._cr+this._crlf;return 0===t?1===e?"\n":"\r\n":i>t/2?"\r\n":"\n"}create(e){const t=this._getEOL(e),i=this._chunks;if(this._normalizeEOL&&("\r\n"===t&&(this._cr>0||this._lf>0)||"\n"===t&&(this._cr>0||this._crlf>0)))for(let e=0,n=i.length;e=55296&&t<=56319?(this._acceptChunk1(e.substr(0,e.length-1),!1),this._hasPreviousChar=!0,this._previousChar=t):(this._acceptChunk1(e,!1),this._hasPreviousChar=!1,this._previousChar=t)}_acceptChunk1(e,t){(t||0!==e.length)&&(this._hasPreviousChar?this._acceptChunk2(String.fromCharCode(this._previousChar)+e):this._acceptChunk2(e))}_acceptChunk2(e){const t=function(e,t){e.length=0,e[0]=0;let i=1,n=0,o=0,s=0,r=!0;for(let a=0,l=t.length;a126)&&(r=!1)}const a=new eS(Jy(e),n,o,s,r);return e.length=0,a}(this._tmpLineStarts,e);this.chunks.push(new nS(e,t.lineStarts)),this.cr+=t.cr,this.lf+=t.lf,this.crlf+=t.crlf,t.isBasicASCII||(this.isBasicASCII=!1,this.containsRTL||(this.containsRTL=fn(e)),this.containsUnusualLineTerminators||(this.containsUnusualLineTerminators=wn(e)))}finish(e=!0){return this._finish(),new lS(this.chunks,this.BOM,this.cr,this.lf,this.crlf,this.containsRTL,this.containsUnusualLineTerminators,this.isBasicASCII,e)}_finish(){if(0===this.chunks.length&&this._acceptChunk1("",!0),this._hasPreviousChar){this._hasPreviousChar=!1;const e=this.chunks[this.chunks.length-1];e.buffer+=String.fromCharCode(this._previousChar);const t=tS(e.buffer);e.lineStarts=t,13===this._previousChar&&this.cr++}}}class cS{static createEmpty(e,t){const i=cS.defaultTokenMetadata,n=new Uint32Array(2);return n[0]=e.length,n[1]=i,new cS(n,e,t)}static createFromTextAndMetadata(e,t){let i=0,n="";const o=new Array;for(const{text:t,metadata:s}of e)o.push(i+t.length,s),i+=t.length,n+=t;return new cS(new Uint32Array(o),n,t)}static convertToEndOffset(e,t){const i=(e.length>>>1)-1;for(let t=0;t>>1)-1;for(;it&&(n=o)}return i}static{this.defaultTokenMetadata=33587200}constructor(e,t,i){this._lineTokensBrand=void 0,(e.length>1?e[e.length-2]:0)!==t.length&&De(new Error("Token length and text length do not match!")),this._tokens=e,this._tokensCount=this._tokens.length>>>1,this._text=t,this.languageIdCodec=i}getTextLength(){return this._text.length}equals(e){return e instanceof cS&&this.slicedEquals(e,0,this._tokensCount)}slicedEquals(e,t,i){if(this._text!==e._text)return!1;if(this._tokensCount!==e._tokensCount)return!1;const n=t<<1,o=n+(i<<1);for(let t=n;t0?this._tokens[e-1<<1]:0}getMetadata(e){return this._tokens[1+(e<<1)]}getLanguageId(e){const t=this._tokens[1+(e<<1)],i=tf.getLanguageId(t);return this.languageIdCodec.decodeLanguageId(i)}getStandardTokenType(e){const t=this._tokens[1+(e<<1)];return tf.getTokenType(t)}getForeground(e){const t=this._tokens[1+(e<<1)];return tf.getForeground(t)}getClassName(e){const t=this._tokens[1+(e<<1)];return tf.getClassNameFromMetadata(t)}getInlineStyle(e,t){const i=this._tokens[1+(e<<1)];return tf.getInlineStyleFromMetadata(i,t)}getPresentation(e){const t=this._tokens[1+(e<<1)];return tf.getPresentationFromMetadata(t)}getEndOffset(e){return this._tokens[e<<1]}findTokenIndexAtOffset(e){return cS.findIndexInTokensArray(this._tokens,e)}inflate(){return this}sliceAndInflate(e,t,i){return new hS(this,e,t,i)}sliceZeroCopy(e){return this.sliceAndInflate(e.start,e.endExclusive,0)}withInserted(e){if(0===e.length)return this;let t=0,i=0,n="";const o=new Array;let s=0;for(;;){const r=ts){n+=this._text.substring(s,a.offset);const e=this._tokens[1+(t<<1)];o.push(n.length,e),s=a.offset}n+=a.text,o.push(n.length,a.tokenMetadata),i++}}return new cS(new Uint32Array(o),n,this.languageIdCodec)}getTokensInRange(e){const t=new pS,i=this.findTokenIndexAtOffset(e.start),n=this.findTokenIndexAtOffset(e.endExclusive);for(let o=i;o<=n;o++){const i=new dm(this.getStartOffset(o),this.getEndOffset(o)).intersectionLength(e);i>0&&t.add(i,this.getMetadata(o))}return t.build()}getTokenText(e){const t=this.getStartOffset(e),i=this.getEndOffset(e);return this._text.substring(t,i)}forEach(e){const t=this.getCount();for(let i=0;i{e+=`[${this.getTokenText(t)}]{${this.getClassName(t)}}`})),e}}class hS{constructor(e,t,i,n){this._source=e,this._startOffset=t,this._endOffset=i,this._deltaOffset=n,this._firstTokenIndex=e.findTokenIndexAtOffset(t),this.languageIdCodec=e.languageIdCodec,this._tokensCount=0;for(let t=this._firstTokenIndex,n=e.getCount();t=i);t++)this._tokensCount++}getMetadata(e){return this._source.getMetadata(this._firstTokenIndex+e)}getLanguageId(e){return this._source.getLanguageId(this._firstTokenIndex+e)}getLineContent(){return this._source.getLineContent().substring(this._startOffset,this._endOffset)}equals(e){return e instanceof hS&&this._startOffset===e._startOffset&&this._endOffset===e._endOffset&&this._deltaOffset===e._deltaOffset&&this._source.slicedEquals(e._source,this._firstTokenIndex,this._tokensCount)}getCount(){return this._tokensCount}getStandardTokenType(e){return this._source.getStandardTokenType(this._firstTokenIndex+e)}getForeground(e){return this._source.getForeground(this._firstTokenIndex+e)}getEndOffset(e){const t=this._source.getEndOffset(this._firstTokenIndex+e);return Math.min(this._endOffset,t)-this._startOffset+this._deltaOffset}getClassName(e){return this._source.getClassName(this._firstTokenIndex+e)}getInlineStyle(e,t){return this._source.getInlineStyle(this._firstTokenIndex+e,t)}getPresentation(e){return this._source.getPresentation(this._firstTokenIndex+e)}findTokenIndexAtOffset(e){return this._source.findTokenIndexAtOffset(e+this._startOffset-this._deltaOffset)-this._firstTokenIndex}getTokenText(e){const t=this._firstTokenIndex+e,i=this._source.getStartOffset(t),n=this._source.getEndOffset(t);let o=this._source.getTokenText(t);return ithis._endOffset&&(o=o.substring(0,o.length-(n-this._endOffset))),o}forEach(e){for(let t=0;t({text:t.substring(e),metadata:i.metadata}))),t)}forEach(e){let t=0;for(const i of this._tokenInfo)e(new dm(t,t+i.length),i),t+=i.length}map(e){const t=[];let i=0;for(const n of this._tokenInfo){const o=new dm(i,i+n.length);t.push(e(o,n)),i+=n.length}return t}slice(e){const t=[];let i=0;for(const n of this._tokenInfo){const o=i,s=o+n.length;if(s>e.start){if(o>=e.endExclusive)break;const i=Math.max(0,e.start-o),r=Math.max(0,s-e.endExclusive);t.push(new gS(n.length-i-r,n.metadata))}i+=n.length}return uS.create(t)}}class gS{constructor(e,t){this.length=e,this.metadata=t}}class pS{constructor(){this._tokens=[]}add(e,t){this._tokens.push(new gS(e,t))}build(){return uS.create(this._tokens)}}class mS{constructor(){this._onDidChangeVisibleRanges=new Gt,this.onDidChangeVisibleRanges=this._onDidChangeVisibleRanges.event,this._views=new Set,this._viewsChanged=kr(this),this.visibleLineRanges=mr({owner:this,equalsFn:Ds(((e,t)=>e.equals(t)))},(e=>{this._viewsChanged.read(e);const t=wm.joinMany([...this._views].map((t=>t.state.read(e)?.visibleLineRanges??[])));return t}))}attachView(){const e=new _S((t=>{this._onDidChangeVisibleRanges.fire({view:e,state:t})}));return this._views.add(e),this._viewsChanged.trigger(void 0),e}detachView(e){this._views.delete(e),this._onDidChangeVisibleRanges.fire({view:e,state:void 0}),this._viewsChanged.trigger(void 0)}}class fS{constructor(e,t){this.visibleLineRanges=e,this.stabilized=t}equals(e){return this===e||!!Jo(this.visibleLineRanges,e.visibleLineRanges,((e,t)=>e.equals(t)))&&this.stabilized===e.stabilized}}class _S{get state(){return this._state}constructor(e){this.handleStateChange=e,this._state=nr({owner:this,equalsFn:Ns(((e,t)=>e.equals(t)))},void 0)}setVisibleLines(e,t){const i=e.map((e=>new wm(e.startLineNumber,e.endLineNumber+1))),n=new fS(i,t);this._state.set(n,void 0,void 0),this.handleStateChange(n)}}class vS extends Tt{get lineRanges(){return this._lineRanges}constructor(e){super(),this._refreshTokens=e,this.runner=this._register(new wi((()=>this.update()),50)),this._computedLineRanges=[],this._lineRanges=[]}update(){Jo(this._computedLineRanges,this._lineRanges,((e,t)=>e.equals(t)))||(this._computedLineRanges=this._lineRanges,this._refreshTokens())}handleStateChange(e){this._lineRanges=e.visibleLineRanges,e.stabilized?(this.runner.cancel(),this.update()):this.runner.schedule()}}class bS extends Tt{get backgroundTokenizationState(){return this._backgroundTokenizationState}constructor(e,t){super(),this._languageIdCodec=e,this._textModel=t,this._onDidChangeTokens=this._register(new Gt),this.onDidChangeTokens=this._onDidChangeTokens.event}tokenizeIfCheap(e){this.isCheapToTokenize(e)&&this.forceTokenization(e)}}function wS(e,t){const i=e.gotoNextSibling(),n=t.gotoNextSibling();if(i!==n)throw new Error("Trees are out of sync");return i&&n}function CS(e,t){const i=e.gotoParent(),n=t.gotoParent();if(i!==n)throw new Error("Trees are out of sync");return i&&n}function yS(e,t,i){const n=e.gotoFirstChild(),o=t.gotoFirstChild();if(n!==o)throw new Error("Trees are out of sync");if(0===i)return n&&o;for(let n=1;n<=i;n++){const i=e.gotoNextSibling(),n=t.gotoNextSibling();if(i!==n)throw new Error("Trees are out of sync");if(!i||!n)return!1}return n&&o}function SS(e,t){do{if(e.currentNode.nextSibling)return wS(e,t);e.currentNode.parent&&CS(e,t)}while(e.currentNode.nextSibling||e.currentNode.parent);return!1}function xS(e,t){const i=t.walk();i.resetTo(e);const n=e.currentNode;do{if(i.currentNode.previousSibling&&i.currentNode.endIndex-i.currentNode.startIndex!=0)i.gotoPreviousSibling();else{for(;!i.currentNode.previousSibling&&i.currentNode.parent;)i.gotoParent();i.gotoPreviousSibling()}}while(i.currentNode.endIndex>n.startIndex&&(i.currentNode.parent||i.currentNode.previousSibling)&&i.currentNode.id!==n.id);return i.currentNode.id!==n.id&&i.currentNode.endIndex<=n.startIndex?i.currentNode:void 0}var kS=function(e,t){return function(i,n){t(i,n,e)}};let LS=class extends Tt{constructor(e,t,i,n,o,s,r){super(),this.languageId=e,this._ranges=t,this._parser=i,this._parserClass=n,this.textModel=o,this._logService=s,this._telemetryService=r,this._tree=Xs(this,void 0),this.tree=this._tree,this._treeLastParsedVersion=Xs(this,-1),this.treeLastParsedVersion=this._treeLastParsedVersion,this._onDidChangeContentQueue=new _i,this._tree=Xs(this,void 0),this.tree=this._tree,this._register(Nt((()=>{this._tree.get()?.delete(),this._lastFullyParsed?.delete(),this._lastFullyParsedWithEdits?.delete(),this._parser.delete()}))),this.handleContentChange(void 0,this._ranges)}handleContentChange(e,t){const i=this.textModel.getVersionId();let n=[];t&&(n=this._setRanges(t)),e&&this._applyEdits(e.changes),this._onDidChangeContentQueue.clearPending(),this._onDidChangeContentQueue.schedule((async()=>{if(this._store.isDisposed)return;const e=this._lastFullyParsed;let t;this._lastFullyParsedWithEdits&&this._lastFullyParsed&&(t=this._findChangedNodes(this._lastFullyParsedWithEdits,this._lastFullyParsed));const o=await this._parseAndUpdateTree(i);if(o){let s;t?e&&t&&(s=this._findTreeChanges(o,t,n)):this._ranges&&(s=this._ranges.map((e=>({newRange:new Yu(e.startPosition.row+1,e.startPosition.column+1,e.endPosition.row+1,e.endPosition.column+1),oldRangeLength:e.endIndex-e.startIndex,newRangeStartOffset:e.startIndex,newRangeEndOffset:e.endIndex})))),s||(s=[{newRange:this.textModel.getFullModelRange(),newRangeStartOffset:0,newRangeEndOffset:this.textModel.getValueLength()}]);const r=this._tree.get();Ws((e=>{this._tree.set(o,e,{ranges:s,versionId:i}),this._treeLastParsedVersion.set(i,e)})),r?.delete()}}))}_applyEdits(e){for(const t of e){const e=ym.ofRange(Yu.lift(t.range)),i=ym.ofText(t.text),n=0===t.text.length?i:e.add(i),o={startIndex:t.rangeOffset,oldEndIndex:t.rangeOffset+t.rangeLength,newEndIndex:t.rangeOffset+t.text.length,startPosition:{row:t.range.startLineNumber-1,column:t.range.startColumn-1},oldEndPosition:{row:t.range.endLineNumber-1,column:t.range.endColumn-1},newEndPosition:{row:t.range.startLineNumber+n.lineCount-1,column:n.lineCount?n.columnCount:t.range.endColumn+n.columnCount}};this._tree.get()?.edit(o),this._lastFullyParsedWithEdits?.edit(o)}}_findChangedNodes(e,t){if(this._ranges&&this._ranges.every((t=>t.startPosition.row!==e.rootNode.startPosition.row))||0!==e.rootNode.startPosition.row)return[];const i=e.walk(),n=t.walk(),o=[];let s=!0;do{if(i.currentNode.hasChanges){const t=i.currentNode.children,r=[],a=t.filter(((e,t)=>!!(e?.hasChanges||n.currentNode.children.length<=t)&&(r.push(t),!0)));if(0===a.length||i.currentNode.hasError!==n.currentNode.hasError){for(;i.currentNode.parent&&s&&!i.currentNode.isNamed;)s=CS(i,n);const t=i.currentNode,r=xS(i,e)??t;o.push({startIndex:r.startIndex,endIndex:t.endIndex,startPosition:r.startPosition,endPosition:t.endPosition}),s=SS(i,n)}else a.length>=1&&(s=yS(i,n,r[0]))}else s=SS(i,n)}while(s);return i.delete(),n.delete(),o}_findTreeChanges(e,t,i){let n=0;const o=[];for(let s=0;s0&&r.startIndex>=o[o.length-1].newRangeStartOffset&&r.endIndex<=o[o.length-1].newRangeEndOffset)continue;const a=e.walk(),l=()=>a.startIndexr.endIndex;for(;l();){let e=a.gotoFirstChild(),t=!1;for(;e;){if(l()&&a.currentNode.isNamed){t=!0;break}e=a.gotoNextSibling()}if(!t){a.gotoParent();break}if(0===a.currentNode.childCount)break}const d=a.currentNode.startPosition,c=a.currentNode.endPosition,h=a.currentNode.startIndex,u=a.currentNode.endIndex,g={newRange:new Yu(d.row+1,d.column+1,c.row+1,c.column+1),newRangeStartOffset:h,newRangeEndOffset:u};ng.newRangeEndOffset&&(g.newRange=g.newRange.setEndPosition(i[n].endPosition.row+1,i[n].endPosition.column+1),g.newRangeEndOffset=i[n].endIndex),n++):n0&&o[o.length-1].newRangeEndOffset>=g.newRangeStartOffset?(o[o.length-1].newRange=Yu.fromPositions(o[o.length-1].newRange.getStartPosition(),g.newRange.getEndPosition()),o[o.length-1].newRangeEndOffset=g.newRangeEndOffset):o.push(g)}return this._constrainRanges(o)}_constrainRanges(e){if(!this._ranges)return e;const t=[];let i=0,n=0;for(;is.endIndex)n++;else{const e=Math.max(o.newRangeStartOffset,s.startIndex),n=Math.min(o.newRangeEndOffset,s.endIndex),r=o.newRange.intersectRanges(new Yu(s.startPosition.row+1,s.startPosition.column+1,s.endPosition.row+1,s.endPosition.column+1));t.push({newRange:r,newRangeEndOffset:n,newRangeStartOffset:e}),n50&&(e=i,!0)}}();do{const e=performance.now();o=this._parser.parse(((e,t)=>this._parseCallback(e)),this._tree.get(),{progressCallback:s,includedRanges:this._ranges}),t+=performance.now()-e,i++,await new Promise((e=>ne(e)))}while(!this._store.isDisposed&&!o&&n===this.textModel.getVersionId());return this._sendParseTimeTelemetry(e,t,i),o&&n===this.textModel.getVersionId()?o:void 0}_parseCallback(e){try{return this.textModel.getTextBuffer().getNearestChunk(e)}catch(e){this._logService.debug("Error getting chunk for tree-sitter parsing",e)}}_setRanges(e){const t=[];if(this._ranges)for(const i of e){let e=!1;for(let t=0;t=t.startIndex||t.startIndex<=e.startIndex&&t.endIndex>=e.startIndex}LS=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([kS(5,Cu),kS(6,wu)],LS);class DS extends Tt{get isResolved(){return this._isResolved}constructor(e,t,i){super(),this._registry=e,this._languageId=t,this._factory=i,this._isDisposed=!1,this._resolvePromise=null,this._isResolved=!1}dispose(){this._isDisposed=!0,super.dispose()}async resolve(){return this._resolvePromise||(this._resolvePromise=this._create()),this._resolvePromise}async _create(){const e=await this._factory.tokenizationSupport;this._isResolved=!0,e&&!this._isDisposed&&this._register(this._registry.register(this._languageId,e))}}class NS{constructor(e,t,i){this.offset=e,this.type=t,this.language=i,this._tokenBrand=void 0}toString(){return"("+this.offset+", "+this.type+")"}}class MS{constructor(e,t){this.tokens=e,this.endState=t,this._tokenizationResultBrand=void 0}}class TS{constructor(e,t){this.tokens=e,this.endState=t,this._encodedTokenizationResultBrand=void 0}}var RS,AS,OS,PS,FS,BS,WS,HS;!function(e){e[e.Increase=0]="Increase",e[e.Decrease=1]="Decrease"}(RS||(RS={})),function(e){const t=new Map;t.set(0,mc.symbolMethod),t.set(1,mc.symbolFunction),t.set(2,mc.symbolConstructor),t.set(3,mc.symbolField),t.set(4,mc.symbolVariable),t.set(5,mc.symbolClass),t.set(6,mc.symbolStruct),t.set(7,mc.symbolInterface),t.set(8,mc.symbolModule),t.set(9,mc.symbolProperty),t.set(10,mc.symbolEvent),t.set(11,mc.symbolOperator),t.set(12,mc.symbolUnit),t.set(13,mc.symbolValue),t.set(15,mc.symbolEnum),t.set(14,mc.symbolConstant),t.set(15,mc.symbolEnum),t.set(16,mc.symbolEnumMember),t.set(17,mc.symbolKeyword),t.set(28,mc.symbolSnippet),t.set(18,mc.symbolText),t.set(19,mc.symbolColor),t.set(20,mc.symbolFile),t.set(21,mc.symbolReference),t.set(22,mc.symbolCustomColor),t.set(23,mc.symbolFolder),t.set(24,mc.symbolTypeParameter),t.set(25,mc.account),t.set(26,mc.issues),t.set(27,mc.tools),e.toIcon=function(e){let i=t.get(e);return i||(console.info("No codicon found for CompletionItemKind "+e),i=mc.symbolProperty),i},e.toLabel=function(e){switch(e){case 0:return C(724,"Method");case 1:return C(725,"Function");case 2:return C(726,"Constructor");case 3:return C(727,"Field");case 4:return C(728,"Variable");case 5:return C(729,"Class");case 6:return C(730,"Struct");case 7:return C(731,"Interface");case 8:return C(732,"Module");case 9:return C(733,"Property");case 10:return C(734,"Event");case 11:return C(735,"Operator");case 12:return C(736,"Unit");case 13:return C(737,"Value");case 14:return C(738,"Constant");case 15:return C(739,"Enum");case 16:return C(740,"Enum Member");case 17:return C(741,"Keyword");case 18:return C(742,"Text");case 19:return C(743,"Color");case 20:return C(744,"File");case 21:return C(745,"Reference");case 22:return C(746,"Custom Color");case 23:return C(747,"Folder");case 24:return C(748,"Type Parameter");case 25:return C(749,"User");case 26:return C(750,"Issue");case 27:return C(751,"Tool");case 28:return C(752,"Snippet");default:return""}};const i=new Map;i.set("method",0),i.set("function",1),i.set("constructor",2),i.set("field",3),i.set("variable",4),i.set("class",5),i.set("struct",6),i.set("interface",7),i.set("module",8),i.set("property",9),i.set("event",10),i.set("operator",11),i.set("unit",12),i.set("value",13),i.set("constant",14),i.set("enum",15),i.set("enum-member",16),i.set("enumMember",16),i.set("keyword",17),i.set("snippet",28),i.set("text",18),i.set("color",19),i.set("file",20),i.set("reference",21),i.set("customcolor",22),i.set("folder",23),i.set("type-parameter",24),i.set("typeParameter",24),i.set("account",25),i.set("issue",26),i.set("tool",27),e.fromString=function(e,t){let n=i.get(e);return void 0!==n||t||(n=9),n}}(AS||(AS={})),function(e){e[e.Automatic=0]="Automatic",e[e.Explicit=1]="Explicit"}(OS||(OS={}));class VS{constructor(e,t,i,n){this.range=e,this.text=t,this.completionKind=i,this.isSnippetText=n}equals(e){return Yu.lift(this.range).equalsRange(e.range)&&this.text===e.text&&this.completionKind===e.completionKind&&this.isSnippetText===e.isSnippetText}}!function(e){e[e.Code=1]="Code",e[e.Label=2]="Label"}(PS||(PS={}));class zS{static fromExtensionId(e){return new zS(e,void 0,void 0)}constructor(e,t,i){this.extensionId=e,this.extensionVersion=t,this.providerId=i}toString(){let e="";return this.extensionId&&(e+=this.extensionId),this.extensionVersion&&(e+=`@${this.extensionVersion}`),this.providerId&&(e+=`:${this.providerId}`),0===e.length&&(e="unknown"),e}}!function(e){e[e.Accepted=0]="Accepted",e[e.Rejected=1]="Rejected",e[e.Ignored=2]="Ignored"}(FS||(FS={})),function(e){e[e.Automatic=0]="Automatic",e[e.PasteAs=1]="PasteAs"}(BS||(BS={})),function(e){e[e.Invoke=1]="Invoke",e[e.TriggerCharacter=2]="TriggerCharacter",e[e.ContentChange=3]="ContentChange"}(WS||(WS={})),function(e){e[e.Text=0]="Text",e[e.Read=1]="Read",e[e.Write=2]="Write"}(HS||(HS={}));const US={17:C(753,"array"),16:C(754,"boolean"),4:C(755,"class"),13:C(756,"constant"),8:C(757,"constructor"),9:C(758,"enumeration"),21:C(759,"enumeration member"),23:C(760,"event"),7:C(761,"field"),0:C(762,"file"),11:C(763,"function"),10:C(764,"interface"),19:C(765,"key"),5:C(766,"method"),1:C(767,"module"),2:C(768,"namespace"),20:C(769,"null"),15:C(770,"number"),18:C(771,"object"),24:C(772,"operator"),3:C(773,"package"),6:C(774,"property"),14:C(775,"string"),22:C(776,"struct"),25:C(777,"type parameter"),12:C(778,"variable")};var jS,KS,qS,$S,GS;!function(e){const t=new Map;t.set(0,mc.symbolFile),t.set(1,mc.symbolModule),t.set(2,mc.symbolNamespace),t.set(3,mc.symbolPackage),t.set(4,mc.symbolClass),t.set(5,mc.symbolMethod),t.set(6,mc.symbolProperty),t.set(7,mc.symbolField),t.set(8,mc.symbolConstructor),t.set(9,mc.symbolEnum),t.set(10,mc.symbolInterface),t.set(11,mc.symbolFunction),t.set(12,mc.symbolVariable),t.set(13,mc.symbolConstant),t.set(14,mc.symbolString),t.set(15,mc.symbolNumber),t.set(16,mc.symbolBoolean),t.set(17,mc.symbolArray),t.set(18,mc.symbolObject),t.set(19,mc.symbolKey),t.set(20,mc.symbolNull),t.set(21,mc.symbolEnumMember),t.set(22,mc.symbolStruct),t.set(23,mc.symbolEvent),t.set(24,mc.symbolOperator),t.set(25,mc.symbolTypeParameter),e.toIcon=function(e){let i=t.get(e);return i||(console.info("No codicon found for SymbolKind "+e),i=mc.symbolProperty),i};const i=new Map;i.set(0,20),i.set(1,8),i.set(2,8),i.set(3,8),i.set(4,5),i.set(5,0),i.set(6,9),i.set(7,3),i.set(8,2),i.set(9,15),i.set(10,7),i.set(11,1),i.set(12,4),i.set(13,14),i.set(14,18),i.set(15,13),i.set(16,13),i.set(17,13),i.set(18,13),i.set(19,17),i.set(20,13),i.set(21,16),i.set(22,6),i.set(23,10),i.set(24,11),i.set(25,24),e.toCompletionKind=function(e){let t=i.get(e);return void 0===t&&(console.info("No completion kind found for SymbolKind "+e),t=20),t}}(jS||(jS={}));class YS{static{this.Comment=new YS("comment")}static{this.Imports=new YS("imports")}static{this.Region=new YS("region")}static fromValue(e){switch(e){case"comment":return YS.Comment;case"imports":return YS.Imports;case"region":return YS.Region}return new YS(e)}constructor(e){this.value=e}}!function(e){e[e.AIGenerated=1]="AIGenerated"}(KS||(KS={})),function(e){e[e.Invoke=0]="Invoke",e[e.Automatic=1]="Automatic"}(qS||(qS={})),function(e){e.is=function(e){return!(!e||"object"!=typeof e)&&"string"==typeof e.id&&"string"==typeof e.title}}($S||($S={})),function(e){e[e.Type=1]="Type",e[e.Parameter=2]="Parameter"}(GS||(GS={}));class ZS{constructor(e){this.createSupport=e,this._tokenizationSupport=null}dispose(){this._tokenizationSupport&&this._tokenizationSupport.then((e=>{e&&e.dispose()}))}get tokenizationSupport(){return this._tokenizationSupport||(this._tokenizationSupport=this.createSupport()),this._tokenizationSupport}}const QS=new class{constructor(){this._tokenizationSupports=new Map,this._factories=new Map,this._onDidChange=new Gt,this.onDidChange=this._onDidChange.event,this._colorMap=null}handleChange(e){this._onDidChange.fire({changedLanguages:e,changedColorMap:!1})}register(e,t){return this._tokenizationSupports.set(e,t),this.handleChange([e]),Nt((()=>{this._tokenizationSupports.get(e)===t&&(this._tokenizationSupports.delete(e),this.handleChange([e]))}))}get(e){return this._tokenizationSupports.get(e)||null}registerFactory(e,t){this._factories.get(e)?.dispose();const i=new DS(this,e,t);return this._factories.set(e,i),Nt((()=>{const t=this._factories.get(e);t&&t===i&&(this._factories.delete(e),t.dispose())}))}async getOrCreate(e){const t=this.get(e);if(t)return t;const i=this._factories.get(e);return!i||i.isResolved?null:(await i.resolve(),this.get(e))}isResolved(e){if(this.get(e))return!0;const t=this._factories.get(e);return!(t&&!t.isResolved)}setColorMap(e){this._colorMap=e,this._onDidChange.fire({changedLanguages:Array.from(this._tokenizationSupports.keys()),changedColorMap:!0})}getColorMap(){return this._colorMap}getDefaultBackground(){return this._colorMap&&this._colorMap.length>2?this._colorMap[2]:null}},XS=new class{clone(){return this}equals(e){return this===e}};function JS(e,t){return new MS([new NS(0,"",e)],t)}function ex(e,t){const i=new Uint32Array(2);return i[0]=0,i[1]=(32768|e|2<<24)>>>0,new TS(i,null===t?XS:t)}class tx{constructor(e){this._default=e,this._store=[]}get(e){return e=this._store.length;)this._store[this._store.length]=this._default;this._store[e]=t}replace(e,t,i){if(e>=this._store.length)return;if(0===t)return void this.insert(e,i);if(0===i)return void this.delete(e,t);const n=this._store.slice(0,e),o=this._store.slice(e+t),s=function(e,t){const i=[];for(let n=0;n=this._store.length||this._store.splice(e,t)}insert(e,t){if(0===t||e>=this._store.length)return;const i=[];for(let e=0;e0){const i=this._tokens[this._tokens.length-1];if(i.endLineNumber+1===e)return void i.appendLineTokens(t)}this._tokens.push(new ix(e,[t]))}finalize(){return this._tokens}}class ox{constructor(e,t){this.tokenizationSupport=t,this.initialState=this.tokenizationSupport.getInitialState(),this.store=new ax(e)}getStartState(e){return this.store.getStartState(e,this.initialState)}getFirstInvalidLine(){return this.store.getFirstInvalidLine(this.initialState)}}class sx extends ox{constructor(e,t,i,n){super(e,t),this._textModel=i,this._languageIdCodec=n}updateTokensUntilLine(e,t){const i=this._textModel.getLanguageId();for(;;){const n=this.getFirstInvalidLine();if(!n||n.lineNumber>t)break;const o=this._textModel.getLineContent(n.lineNumber),s=cx(this._languageIdCodec,i,this.tokenizationSupport,o,!0,n.startState);e.add(n.lineNumber,s.tokens),this.store.setEndState(n.lineNumber,s.endState)}}getTokenTypeIfInsertingCharacter(e,t){const i=this.getStartState(e.lineNumber);if(!i)return 0;const n=this._textModel.getLanguageId(),o=this._textModel.getLineContent(e.lineNumber),s=o.substring(0,e.column-1)+t+o.substring(e.column-1),r=cx(this._languageIdCodec,n,this.tokenizationSupport,s,!0,i),a=new cS(r.tokens,s,this._languageIdCodec);if(0===a.getCount())return 0;const l=a.findTokenIndexAtOffset(e.column-1);return a.getStandardTokenType(l)}tokenizeLinesAt(e,t){const i=this.getStartState(e);if(!i)return null;const n=this._textModel.getLanguageId(),o=[];let s=i;for(const e of t){const t=cx(this._languageIdCodec,n,this.tokenizationSupport,e,!0,s);o.push(new cS(t.tokens,e,this._languageIdCodec)),s=t.endState}return o}hasAccurateTokensForLine(e){return e1&&r>=1;r--){const t=e.getLineFirstNonWhitespaceColumn(r);if(0!==t&&t0&&i>0&&(i--,t--),this._lineEndStates.replace(e.startLineNumber,i,t)}}class dx{constructor(){this._ranges=[]}get min(){return 0===this._ranges.length?null:this._ranges[0].start}delete(e){const t=this._ranges.findIndex((t=>t.contains(e)));if(-1!==t){const i=this._ranges[t];i.start===e?i.endExclusive===e+1?this._ranges.splice(t,1):this._ranges[t]=new dm(e+1,i.endExclusive):i.endExclusive===e+1?this._ranges[t]=new dm(i.start,e):this._ranges.splice(t,1,new dm(i.start,e),new dm(e+1,i.endExclusive))}}addRange(e){dm.addRange(e,this._ranges)}addRangeAndResize(e,t){let i=0;for(;!(i>=this._ranges.length||e.start<=this._ranges[i].endExclusive);)i++;let n=i;for(;!(n>=this._ranges.length||e.endExclusivee.toString())).join(" + ")}}function cx(e,t,i,n,o,s){let r=null;if(i)try{r=i.tokenizeEncoded(n,o,s.clone())}catch(e){De(e)}return r||(r=ex(e.encodeLanguageId(t),s)),cS.convertToEndOffset(r.tokens,n.length),r}class hx{constructor(e,t){this._tokenizerWithStateStore=e,this._backgroundTokenStore=t,this._isDisposed=!1,this._isScheduled=!1}dispose(){this._isDisposed=!0}handleChanges(){this._beginBackgroundTokenization()}_beginBackgroundTokenization(){!this._isScheduled&&this._tokenizerWithStateStore._textModel.isAttachedToEditor()&&this._hasLinesToTokenize()&&(this._isScheduled=!0,Ci((e=>{this._isScheduled=!1,this._backgroundTokenizeWithDeadline(e)})))}_backgroundTokenizeWithDeadline(e){const t=Date.now()+e.timeRemaining(),i=()=>{!this._isDisposed&&this._tokenizerWithStateStore._textModel.isAttachedToEditor()&&this._hasLinesToTokenize()&&(this._backgroundTokenizeForAtLeast1ms(),Date.now()1)break;if(this._tokenizeOneInvalidLine(t)>=e)break}while(this._hasLinesToTokenize());this._backgroundTokenStore.setTokens(t.finalize()),this.checkFinished()}_hasLinesToTokenize(){return!!this._tokenizerWithStateStore&&!this._tokenizerWithStateStore.store.allStatesValid()}_tokenizeOneInvalidLine(e){const t=this._tokenizerWithStateStore?.getFirstInvalidLine();return t?(this._tokenizerWithStateStore.updateTokensUntilLine(e,t.lineNumber),t.lineNumber):this._tokenizerWithStateStore._textModel.getLineCount()+1}checkFinished(){this._isDisposed||this._tokenizerWithStateStore.store.allStatesValid()&&this._backgroundTokenStore.backgroundTokenizationFinished()}requestTokens(e,t){this._tokenizerWithStateStore.store.invalidateEndStateRange(new wm(e,t))}}class ux{get children(){return this._children}get length(){return this._length}constructor(e){this.height=e,this._children=[],this._length=0}static create(e,t){const i=new ux(e.height+1);return i.appendChild(e),i.appendChild(t),i}canAppendChild(){return this._children.length<3}appendChild(e){if(!this.canAppendChild())throw new Error("Cannot insert more than 3 children in a ListNode");this._children.push(e),this._length+=e.length,this._updateParentLength(e.length),px(e)||(e.parent=this)}_updateParentLength(e){let t=this.parent;for(;t;)t._length+=e,t=t.parent}unappendChild(){const e=this._children.pop();return this._length-=e.length,this._updateParentLength(-e.length),e}prependChild(e){if(this._children.length>=3)throw new Error("Cannot prepend more than 3 children in a ListNode");this._children.unshift(e),this._length+=e.length,this._updateParentLength(e.length),px(e)||(e.parent=this)}unprependChild(){const e=this._children.shift();return this._length-=e.length,this._updateParentLength(-e.length),e}lastChild(){return this._children[this._children.length-1]}dispose(){this._children.splice(0,this._children.length)}}var gx;function px(e){return void 0!==e.token}function mx(e,t){let i=e;const n=[];let o;for(;;){if(t.height===i.height){o=t;break}if(px(i))throw new Error("unexpected");n.push(i),i=i.lastChild()}for(let e=n.length-1;e>=0;e--){const t=n[e];o&&(t.children.length>=3?o=ux.create(t.unappendChild(),o):(t.appendChild(o),o=void 0))}if(o){const t=new ux(o.height+1);return t.appendChild(e),t.appendChild(o),t}return e}!function(e){e[e.None=0]="None",e[e.ViewportGuess=1]="ViewportGuess",e[e.EditGuess=2]="EditGuess",e[e.Accurate=3]="Accurate"}(gx||(gx={}));class fx{constructor(e){this._textModel=e,this._root=this.createEmptyRoot()}createEmptyRoot(){return{length:this._textModel.getValueLength(),token:0,height:0,tokenQuality:gx.None}}buildStore(e,t){this._root=this.createFromUpdates(e,t)}createFromUpdates(e,t){if(0===e.length)return this.createEmptyRoot();let i={length:e[0].length,token:e[0].token,height:0,tokenQuality:t};for(let n=1;n0;){const e=a.pop(),i=e.offset;if(i=o)px(e.node)||(e.node.parent=void 0),r.push(e.node);else if(px(e.node)&&i+e.node.length>o)r.push({length:i+e.node.length-o,token:e.node.token,height:0,tokenQuality:e.node.tokenQuality});else if(!px(e.node)){let t=i+e.node.length;for(let i=e.node.children.length-1;i>=0;i--)t-=e.node.children[i].length,a.push({node:e.node.children[i],offset:t})}}let l;l=i.length>0?s.concat(this.createFromUpdates(i,n),r):s.concat(r);let d=l[0];for(let e=1;eh.height?mx(c,h):function(e,t){let i=e;const n=[];for(;t.height!==i.height;){if(px(i))throw new Error("unexpected");n.push(i),i=i.children[0]}let o=t;for(let e=n.length-1;e>=0;e--){const t=n[e];o&&(t.children.length>=3?o=ux.create(o,t.unprependChild()):(t.prependChild(o),o=void 0))}return o?ux.create(o,e):e}(h,c);var c,h;this._root=d??this.createEmptyRoot()}traverseInOrderInRange(e,t,i){const n=[{node:this._root,offset:0}];for(;n.length>0;){const{node:o,offset:s}=n.pop();if(!(s+o.length<=e||s>=t)){if(i(o,s))return;if(!px(o)){let e=s+o.length;for(let t=o.children.length-1;t>=0;t--)e-=o.children[t].length,n.push({node:o.children[t],offset:e})}}}}getTokenAt(e){let t;return this.traverseInOrderInRange(e,this._root.length,((e,i)=>!!px(e)&&(t={token:e.token,startOffsetInclusive:i,length:e.length},!0))),t}getTokensInRange(e,t){const i=[];return this.traverseInOrderInRange(e,t,((n,o)=>{if(px(n)){let s=n.length,r=o;ot?(r=e,s=t-e):ot&&(s-=o+n.length-t),i.push({token:n.token,startOffsetInclusive:r,length:s})}return!1})),i}markForRefresh(e,t){this.traverseInOrderInRange(e,t,(e=>(px(e)&&(e.tokenQuality=gx.None),!1)))}rangeHasTokens(e,t,i){let n=!0;return this.traverseInOrderInRange(e,t,(e=>(px(e)&&e.tokenQuality(px(e)&&e.tokenQuality!==gx.Accurate&&(i=!0),!1))),i}getNeedsRefresh(){const e=[];return this.traverseInOrderInRange(0,this._textModel.getValueLength(),((t,i)=>(px(t)&&t.tokenQuality!==gx.Accurate&&(e.length>0&&e[e.length-1].endOffset===i?e[e.length-1].endOffset+=t.length:e.push({startOffset:i,endOffset:i+t.length})),!1))),e}dispose(){const e=[[this._root,!1]];for(;e.length>0;){const[t,i]=e.pop();if(px(t));else if(i)t.dispose(),t.parent=void 0;else{e.push([t,!0]);for(let i=t.children.length-1;i>=0;i--)e.push([t.children[i],!1])}}this._root=void 0}}const _x=nh("treeSitterThemeService");let vx=class extends Tt{get _textModel(){return this._tree.textModel}constructor(e,t,i,n,o){var s;super(),this._tree=e,this._highlightingQueries=t,this._languageIdCodec=i,this._visibleLineRanges=n,this._treeSitterThemeService=o,this._onDidChangeTokens=this._register(new Gt),this.onDidChangeTokens=this._onDidChangeTokens.event,this._onDidCompleteBackgroundTokenization=this._register(new Gt),this.onDidChangeBackgroundTokenization=this._onDidCompleteBackgroundTokenization.event,this._encodedLanguageId=this._languageIdCodec.encodeLanguageId(this._tree.languageId),this._register(Br(this._treeSitterThemeService.onChange,(()=>{this._updateTheme()}))),this._tokenStore=this._register(new fx(this._textModel)),this._accurateVersion=this._textModel.getVersionId(),this._guessVersion=this._textModel.getVersionId(),this._tokenStore.buildStore(this._createEmptyTokens(),gx.None),this._register(rr((e=>{const t=this._visibleLineRanges.read(e);this._parseAndTokenizeViewPort(t)}))),this._register(lr({owner:this,changeTracker:(s={tree:this._tree.tree},{createChangeSummary:e=>({changes:[]}),handleChange(e,t){for(const i in s)e.didChange(s[i])&&t.changes.push({key:i,change:e.change});return!0},beforeUpdate(e,t){for(const i in s){if("changes"===i)throw new We('property name "changes" is reserved for change tracking');t[i]=s[i].read(e)}}})},((e,t)=>{const i=t.changes.at(0)?.change;if(t.changes.length>1)throw new We("The tree changed twice in one transaction. This is currently not supported and should not happen.");if(i){if(this.hasTokens())for(const e of i.ranges)this._markForRefresh(e.newRange);this.hasTokens()?this._handleTreeUpdate(i.ranges,i.versionId):this._firstTreeUpdate(i.versionId)}else t.tree&&this._firstTreeUpdate(this._tree.treeLastParsedVersion.read(e))})))}handleContentChanged(e){this._guessVersion=e.versionId;for(const t of e.changes)if(t.text.length>t.rangeLength){const e=t.rangeOffset>0?t.rangeOffset-1:t.rangeOffset,i=this._tokenStore.getTokenAt(e);let n;i?(n={startOffsetInclusive:i.startOffsetInclusive,length:i.length+t.text.length-t.rangeLength,token:i.token},this._tokenStore.markForRefresh(e,t.rangeOffset+(t.text.length>t.rangeLength?t.text.length:t.rangeLength))):n={startOffsetInclusive:e,length:t.text.length,token:0},this._tokenStore.update(i?.length??0,[n],gx.EditGuess)}else if(t.text.length0?n.newTokens[n.newTokens.length-1]:void 0;let o;o=t&&this._guessVersion>=e?t.startOffsetInclusive+t.length-n.newTokens[0].startOffsetInclusive:n.oldRangeLength?n.oldRangeLength:0,this._tokenStore.update(o,n.newTokens,i)}}_markForRefresh(e){this._tokenStore.markForRefresh(this._textModel.getOffsetAt(e.getStartPosition()),this._textModel.getOffsetAt(e.getEndPosition()))}_getNeedsRefresh(){const e=this._tokenStore.getNeedsRefresh();return e?e.map((e=>({range:Yu.fromPositions(this._textModel.getPositionAt(e.startOffset),this._textModel.getPositionAt(e.endOffset)),startOffset:e.startOffset,endOffset:e.endOffset}))):[]}_parseAndTokenizeViewPort(e){const t=e.map((e=>e.toInclusiveRange())).filter(pt);for(const e of t){const t=this._textModel.getOffsetAt(e.getStartPosition()),i=this._textModel.getOffsetAt(e.getEndPosition()),n=this._textModel.getVersionId();if(this._rangeHasTokens(e,gx.ViewportGuess))continue;const o=this._textModel.getValueInRange(e),s=this._forceParseAndTokenizeContent(e,t,i,o,!0);if(!s||this._rangeHasTokens(e,gx.ViewportGuess))continue;if(0===s.length)continue;const r=s[s.length-1],a=r.startOffsetInclusive+r.length-s[0].startOffsetInclusive;this._updateTokensInStore(n,[{newTokens:s,oldRangeLength:a}],gx.ViewportGuess),this._onDidChangeTokens.fire({changes:{semanticTokensApplied:!1,ranges:[{fromLineNumber:e.startLineNumber,toLineNumber:e.endLineNumber}]}})}}_guessTokensForLinesContent(e,t){if(0===t.length)return;const i=t.join(this._textModel.getEOL()),n=new Yu(1,1,e+t.length,t[t.length-1].length+1),o=this._textModel.getOffsetAt({lineNumber:e,column:1}),s=this._forceParseAndTokenizeContent(n,o,o+i.length,i,!1);if(!s)return;const r=new Array(t.length);let a=0,l=0,d=0;for(let e=0;e{const t=e.toInclusiveRange();if(!t)return;const i=this._textModel.getOffsetAt(t.getStartPosition()),n=this._textModel.getOffsetAt(t.getEndPosition());return{newRange:t,newRangeEndOffset:n,newRangeStartOffset:i}})).filter(pt);return this._handleTreeUpdate(t,e)}_handleTreeUpdate(e,t){const i=[],n=1e3;for(let t=0;tn){const o=e[t].newRange.endLineNumber;let s=e[t].newRange.startLineNumber,r=e[t].newRange.startColumn,a=s+n;do{const l=new sh(s,r),d=a===e[t].newRange.endLineNumber?e[t].newRange.endColumn:this._textModel.getLineMaxColumn(a),c=new sh(a,d),h=Yu.fromPositions(l,c);i.push({range:h,startOffset:this._textModel.getOffsetAt(h.getStartPosition()),endOffset:this._textModel.getOffsetAt(h.getEndPosition())}),s=a+1,r=1,ao?a=o:a+=n}while(a<=o)}else if(0===t||i[t-1].endOffsetthis._getCaptures(e.range)));return this._updateTreeForRanges(i,t,o).then((()=>{this._textModel.isDisposed()||this._tree.treeLastParsedVersion.get()!==this._textModel.getVersionId()||this._refreshNeedsRefresh(t)}))}async _updateTreeForRanges(e,t,i){let n;for(let o=0;one(e)))}this._onDidCompleteBackgroundTokenization.fire()}_refreshNeedsRefresh(e){const t=this._getNeedsRefresh();if(0===t.length)return;const i=new Array(t.length);for(let e=0;e({name:e.name,text:e.node.text,node:{startIndex:e.node.startIndex,endIndex:e.node.endIndex,startPosition:{lineNumber:e.node.startPosition.row+1,column:e.node.startPosition.column+1},endPosition:{lineNumber:e.node.endPosition.row+1,column:e.node.endPosition.column+1}},encodedLanguageId:this._encodedLanguageId}))):[]}captureAtRangeWithInjections(e){const t=this.captureAtRange(e);for(let i=0;ie.startLineNumber&&oe.startLineNumber&&se.endColumn?e.endColumn:a:s>e.endLineNumber?e.endColumn:a,u=new Yu(l,c,d,h),g=this._getInjectionCaptures(n,u);g&&g.length>0&&(t.splice(i+1,0,...g),i+=g.length)}return t}tokenizeEncoded(e){const t=this._tokenizeEncoded(e);if(!t)return;const i=this._rangeTokensAsUpdates(this._textModel.getOffsetAt({lineNumber:e,column:1}),t.result);t.versionId===this._textModel.getVersionId()&&this._updateTokensInStore(t.versionId,[{newTokens:i,oldRangeLength:this._textModel.getLineLength(e)}],gx.Accurate)}_getCaptures(e){return this.captureAtRangeWithInjections(e)}_tokenize(e,t,i){const n=this._getCaptures(e),o=this._tokenizeCapturesWithMetadata(n,t,i);if(o)return{...o,versionId:this._tree.treeLastParsedVersion.get()}}_createTokensFromCaptures(e,t,i){const n=this._tree.tree.get(),o=Ht.create(),s=i-t,r=this._languageIdCodec.encodeLanguageId(this._tree.languageId),a=bx[this._tree.languageId]||"source";if(0===e.length)return n?(o.stop(),{endOffsets:[{endOffset:s,scopes:[],encodedLanguageId:r}],captureTime:o.elapsed()}):void 0;const l=Array(e.length);l.fill({endOffset:0,scopes:[a],encodedLanguageId:r});let d=0;const c=()=>{l.push({endOffset:0,scopes:[a],encodedLanguageId:r})},h=(e,t)=>e.name.includes("punctuation")&&e.text?Array.from(e.text.matchAll(wx)).map((e=>t+e.index)):void 0,u=(e,t,i,n)=>{if(void 0!==n){const o=l[n].scopes;let s=l[n].bracket;if((n>0?l[n-1].endOffset:0)!==t){let r;if(s&&s.length>0){r=[];const e=[];for(let n=0;ni&&e.push(o)}0===r.length&&(r=void 0),s=0===e.length?void 0:e}l.splice(n,0,{endOffset:t,scopes:[...o],bracket:r,encodedLanguageId:e.encodedLanguageId}),n++,c(),d++}l.splice(n,0,{endOffset:i,scopes:[...o,e.name],bracket:h(e,t),encodedLanguageId:e.encodedLanguageId}),l[d].bracket=s}else l[d]={endOffset:i,scopes:[a,e.name],bracket:h(e,t),encodedLanguageId:e.encodedLanguageId};d++};for(let n=0;n0?l[d-1].endOffset:r-t-1;const f=g-m;if(p>=0&&p=g){let e=d-1,t=l[e].endOffset,i=e>=2?l[e-1].endOffset:0;do{if(i+m===t){if(i===f){l[e].scopes.push(o.name);const t=l[e].bracket;l[e].bracket=t&&t.length>0?t:h(o,f)}}else if(i<=f){u(o,f,g,e);break}e--,i=e>=1?l[e-1].endOffset:0,t=e>=0?l[e].endOffset:0}while(t>f)}else u(o,f,g)}l[d-1].endOffset0&&(c(),l[d]={endOffset:s,scopes:l[d].scopes,encodedLanguageId:this._encodedLanguageId},d++);for(let e=0;e0,void 0)}const r=n.elapsed();return{endOffsetsAndMetadata:s,captureTime:o.captureTime,metadataTime:r}}_tokenizeEncoded(e){const t=this._textModel.getOffsetAt({lineNumber:e,column:1}),i=e+1<=this._textModel.getLineCount()?this._textModel.getOffsetAt({lineNumber:e+1,column:1}):this._textModel.getValueLength(),n=i-t,o=this._tokenize(new Yu(e,1,e,n+1),t,i);if(o)return{result:o.endOffsetsAndMetadata,captureTime:o.captureTime,metadataTime:o.metadataTime,versionId:o.versionId}}_endOffsetTokensToUint32Array(e){const t=new Uint32Array(2*e.length);for(let i=0;i=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([function(e,t){return function(i,n){t(i,n,e)}}(4,_x)],vx);const bx={css:"source.css",typescript:"source.ts",ini:"source.ini",regex:"source.regex"},wx=/[\{\}\[\]\<\>\(\)]/g,Cx=nh("treeSitterLibraryService");var yx=function(e,t){return function(i,n){t(i,n,e)}};let Sx=class extends bS{constructor(e,t,i,n,o,s){super(t,i),this._languageIdObs=e,this._treeSitterLibraryService=o,this._instantiationService=s,this._backgroundTokenizationState=1,this._onDidChangeBackgroundTokenizationState=this._register(new Gt),this.onDidChangeBackgroundTokenizationState=this._onDidChangeBackgroundTokenizationState.event;const r=new br(this._treeSitterLibraryService.getParserClass()),a=gr(this,(e=>{const t=r.promiseResult?.read(e)?.getDataOrThrow();return t}));this._tree=gr(this,(e=>{const t=a.read(e);if(!t)return;const i=this._languageIdObs.read(e),n=this._treeSitterLibraryService.getLanguage(i,e);if(!n)return;const o=new t;return e.store.add(Nt((()=>{o.delete()}))),o.setLanguage(n),void 0!==this._treeSitterLibraryService.getInjectionQueries(i,e)?e.store.add(this._instantiationService.createInstance(LS,i,void 0,o,t,this._textModel)):void 0})),this._tokenizationImpl=gr(this,(e=>{const t=this._tree.read(e);if(!t)return;const i=this._treeSitterLibraryService.getHighlightingQueries(t.languageId,e);return i?e.store.add(this._instantiationService.createInstance(vx,t,i,this._languageIdCodec,n)):void 0})),this._register(rr((e=>{const t=this._tokenizationImpl.read(e);t&&(e.store.add(t.onDidChangeTokens((e=>{this._onDidChangeTokens.fire(e.changes)}))),e.store.add(t.onDidChangeBackgroundTokenization((e=>{this._backgroundTokenizationState=2,this._onDidChangeBackgroundTokenizationState.fire()}))))})))}getLineTokens(e){const t=this._tokenizationImpl.get();if(!t){const t=this._textModel.getLineContent(e);return cS.createEmpty(t,this._languageIdCodec)}return t.getLineTokens(e)}todo_resetTokenization(e=!0){e&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]})}handleDidChangeAttached(){}handleDidChangeContent(e){if(e.isFlush)this.todo_resetTokenization(!1);else{const t=this._tokenizationImpl.get();t?.handleContentChanged(e)}const t=this._tree.get();t?.handleContentChange(e)}forceTokenization(e){const t=this._tokenizationImpl.get();t&&(t.hasAccurateTokensForLine(e)||t.tokenizeEncoded(e))}hasAccurateTokensForLine(e){const t=this._tokenizationImpl.get();return!!t&&t.hasAccurateTokensForLine(e)}isCheapToTokenize(e){return!0}getTokenTypeIfInsertingCharacter(e,t,i){return 0}tokenizeLinesAt(e,t){const i=this._tokenizationImpl.get();return i?i.tokenizeLinesAt(e,t):null}get hasTokens(){const e=this._tokenizationImpl.get();return!!e&&e.hasTokens()}};Sx=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([yx(4,Cx),yx(5,ih)],Sx);class xx{constructor(e){this._pieces=[],this._isComplete=!1,this._languageIdCodec=e}flush(){this._pieces=[],this._isComplete=!1}isEmpty(){return 0===this._pieces.length}set(e,t,i=void 0){if(this._pieces=e||[],this._isComplete=t,i)for(const e of this._pieces)e.reportIfInvalid(i)}setPartial(e,t){let i=e;if(t.length>0){const n=t[0].getRange(),o=t[t.length-1].getRange();if(!n||!o)return e;i=e.plusRange(n).plusRange(o)}let n=null;for(let e=0,t=this._pieces.length;ei.endLineNumber){n=n||{index:e};break}if(o.removeTokens(i),o.isEmpty()){this._pieces.splice(e,1),e--,t--;continue}if(o.endLineNumberi.endLineNumber){n=n||{index:e};continue}const[s,r]=o.split(i);s.isEmpty()?n=n||{index:e}:r.isEmpty()||(this._pieces.splice(e,1,s,r),e++,t++,n=n||{index:e})}return n=n||{index:this._pieces.length},t.length>0&&(this._pieces=us(this._pieces,n.index,t)),i}isComplete(){return this._isComplete}addSparseTokens(e,t){if(0===t.getTextLength())return t;const i=this._pieces;if(0===i.length)return t;const n=i[xx._findFirstPieceWithLine(i,e)].getLineTokens(e);if(!n)return t;const o=t.getCount(),s=n.getCount();let r=0;const a=[];let l=0,d=0;const c=(e,t)=>{e!==d&&(d=e,a[l++]=e,a[l++]=t)};for(let e=0;e>>0,d=~l>>>0;for(;rt)){for(;o>i&&e[o-1].startLineNumber<=t&&t<=e[o-1].endLineNumber;)o--;return o}n=o-1}}return i}acceptEdit(e,t,i,n,o){for(const s of this._pieces)s.acceptEdit(e,t,i,n,o)}}const kx=new Uint32Array(0).buffer;class Lx{static deleteBeginning(e,t){return null===e||e===kx?e:Lx.delete(e,0,t)}static deleteEnding(e,t){if(null===e||e===kx)return e;const i=Ex(e),n=i[i.length-2];return Lx.delete(e,t,n)}static delete(e,t,i){if(null===e||e===kx||t===i)return e;const n=Ex(e),o=n.length>>>1;if(0===t&&n[n.length-2]===i)return kx;const s=cS.findIndexInTokensArray(n,t),r=s>0?n[s-1<<1]:0;if(il&&(n[a++]=t,n[a++]=n[1+(e<<1)],l=t)}if(a===n.length)return e;const c=new Uint32Array(a);return c.set(n.subarray(0,a),0),c.buffer}static append(e,t){if(t===kx)return e;if(e===kx)return t;if(null===e)return e;if(null===t)return null;const i=Ex(e),n=Ex(t),o=n.length>>>1,s=new Uint32Array(i.length+n.length);s.set(i,0);let r=i.length;const a=i[i.length-2];for(let e=0;e>>1;let s=cS.findIndexInTokensArray(n,t);s>0&&n[s-1<<1]===t&&s--;for(let e=s;e0}getTokens(e,t,i){let n=null;if(t1&&(t=tf.getLanguageId(n[1])!==e),!t)return kx}if(!n||0===n.length){const i=new Uint32Array(2);return i[0]=t,i[1]=Dx(e),i.buffer}return n[n.length-2]=t,0===n.byteOffset&&n.byteLength===n.buffer.byteLength?n.buffer:n}_ensureLine(e){for(;e>=this._len;)this._lineTokens[this._len]=null,this._len++}_deleteLines(e,t){0!==t&&(e+t>this._len&&(t=this._len-e),this._lineTokens.splice(e,t),this._len-=t)}_insertLines(e,t){if(0===t)return;const i=[];for(let e=0;e=this._len)return;if(e.startLineNumber===e.endLineNumber){if(e.startColumn===e.endColumn)return;return void(this._lineTokens[t]=Lx.delete(this._lineTokens[t],e.startColumn-1,e.endColumn-1))}this._lineTokens[t]=Lx.deleteEnding(this._lineTokens[t],e.startColumn-1);const i=e.endLineNumber-1;let n=null;i=this._len||(0!==t?(this._lineTokens[n]=Lx.deleteEnding(this._lineTokens[n],e.column-1),this._lineTokens[n]=Lx.insert(this._lineTokens[n],e.column-1,i),this._insertLines(e.lineNumber,t)):this._lineTokens[n]=Lx.insert(this._lineTokens[n],e.column-1,i))}setMultilineTokens(e,t){if(0===e.length)return{changes:[]};const i=[];for(let n=0,o=e.length;n>>0}class Nx extends bS{constructor(e,t,i,n){super(e,t),this.getLanguageId=i,this._tokenizer=null,this._backgroundTokenizationState=1,this._onDidChangeBackgroundTokenizationState=this._register(new Gt),this.onDidChangeBackgroundTokenizationState=this._onDidChangeBackgroundTokenizationState.event,this._defaultBackgroundTokenizer=null,this._backgroundTokenizer=this._register(new Rt),this._tokens=new Ix(this._languageIdCodec),this._debugBackgroundTokenizer=this._register(new Rt),this._attachedViewStates=this._register(new Pt),this._register(QS.onDidChange((e=>{const t=this.getLanguageId();-1!==e.changedLanguages.indexOf(t)&&this.todo_resetTokenization()}))),this.todo_resetTokenization(),this._register(n.onDidChangeVisibleRanges((({view:e,state:t})=>{if(t){let i=this._attachedViewStates.get(e);i||(i=new vS((()=>this.refreshRanges(i.lineRanges))),this._attachedViewStates.set(e,i)),i.handleStateChange(t)}else this._attachedViewStates.deleteAndDispose(e)})))}todo_resetTokenization(e=!0){this._tokens.flush(),this._debugBackgroundTokens?.flush(),this._debugBackgroundStates&&(this._debugBackgroundStates=new ax(this._textModel.getLineCount())),e&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]});const[t,i]=(()=>{if(this._textModel.isTooLargeForTokenization())return[null,null];const e=QS.get(this.getLanguageId());if(!e)return[null,null];let t;try{t=e.getInitialState()}catch(e){return De(e),[null,null]}return[e,t]})();if(this._tokenizer=t&&i?new sx(this._textModel.getLineCount(),t,this._textModel,this._languageIdCodec):null,this._backgroundTokenizer.clear(),this._defaultBackgroundTokenizer=null,this._tokenizer){const e={setTokens:e=>{this.setTokens(e)},backgroundTokenizationFinished:()=>{2!==this._backgroundTokenizationState&&(this._backgroundTokenizationState=2,this._onDidChangeBackgroundTokenizationState.fire())},setEndState:(e,t)=>{if(!this._tokenizer)return;const i=this._tokenizer.store.getFirstInvalidEndStateLineNumber();null!==i&&e>=i&&this._tokenizer?.store.setEndState(e,t)}};t&&t.createBackgroundTokenizer&&!t.backgroundTokenizerShouldOnlyVerifyTokens&&(this._backgroundTokenizer.value=t.createBackgroundTokenizer(this._textModel,e)),this._backgroundTokenizer.value||this._textModel.isTooLargeForTokenization()||(this._backgroundTokenizer.value=this._defaultBackgroundTokenizer=new hx(this._tokenizer,e),this._defaultBackgroundTokenizer.handleChanges()),t?.backgroundTokenizerShouldOnlyVerifyTokens&&t.createBackgroundTokenizer?(this._debugBackgroundTokens=new Ix(this._languageIdCodec),this._debugBackgroundStates=new ax(this._textModel.getLineCount()),this._debugBackgroundTokenizer.clear(),this._debugBackgroundTokenizer.value=t.createBackgroundTokenizer(this._textModel,{setTokens:e=>{this._debugBackgroundTokens?.setMultilineTokens(e,this._textModel)},backgroundTokenizationFinished(){},setEndState:(e,t)=>{this._debugBackgroundStates?.setEndState(e,t)}})):(this._debugBackgroundTokens=void 0,this._debugBackgroundStates=void 0,this._debugBackgroundTokenizer.value=void 0)}this.refreshAllVisibleLineTokens()}handleDidChangeAttached(){this._defaultBackgroundTokenizer?.handleChanges()}handleDidChangeContent(e){if(e.isFlush)this.todo_resetTokenization(!1);else if(!e.isEolChange){for(const t of e.changes){const[e,i]=Lg(t.text);this._tokens.acceptEdit(t.range,e,i),this._debugBackgroundTokens?.acceptEdit(t.range,e,i)}this._debugBackgroundStates?.acceptChanges(e.changes),this._tokenizer&&this._tokenizer.store.acceptChanges(e.changes),this._defaultBackgroundTokenizer?.handleChanges()}}setTokens(e){const{changes:t}=this._tokens.setMultilineTokens(e,this._textModel);return t.length>0&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:t}),{changes:t}}refreshAllVisibleLineTokens(){const e=wm.joinMany([...this._attachedViewStates].map((([e,t])=>t.lineRanges)));this.refreshRanges(e)}refreshRanges(e){for(const t of e)this.refreshRange(t.startLineNumber,t.endLineNumberExclusive-1)}refreshRange(e,t){if(!this._tokenizer)return;e=Math.max(1,Math.min(this._textModel.getLineCount(),e)),t=Math.min(this._textModel.getLineCount(),t);const i=new nx,{heuristicTokens:n}=this._tokenizer.tokenizeHeuristically(i,e,t),o=this.setTokens(i.finalize());if(n)for(const e of o.changes)this._backgroundTokenizer.value?.requestTokens(e.fromLineNumber,e.toLineNumber+1);this._defaultBackgroundTokenizer?.checkFinished()}forceTokenization(e){const t=new nx;this._tokenizer?.updateTokensUntilLine(t,e),this.setTokens(t.finalize()),this._defaultBackgroundTokenizer?.checkFinished()}hasAccurateTokensForLine(e){return!this._tokenizer||this._tokenizer.hasAccurateTokensForLine(e)}isCheapToTokenize(e){return!this._tokenizer||this._tokenizer.isCheapToTokenize(e)}getLineTokens(e){const t=this._textModel.getLineContent(e),i=this._tokens.getTokens(this._textModel.getLanguageId(),e-1,t);if(this._debugBackgroundTokens&&this._debugBackgroundStates&&this._tokenizer&&this._debugBackgroundStates.getFirstInvalidEndStateLineNumberOrMax()>e&&this._tokenizer.store.getFirstInvalidEndStateLineNumberOrMax()>e){const n=this._debugBackgroundTokens.getTokens(this._textModel.getLanguageId(),e-1,t);!i.equals(n)&&this._debugBackgroundTokenizer.value?.reportMismatchingTokens&&this._debugBackgroundTokenizer.value.reportMismatchingTokens(e)}return i}getTokenTypeIfInsertingCharacter(e,t,i){if(!this._tokenizer)return 0;const n=this._textModel.validatePosition(new sh(e,t));return this.forceTokenization(n.lineNumber),this._tokenizer.getTokenTypeIfInsertingCharacter(n,i)}tokenizeLinesAt(e,t){return this._tokenizer?(this.forceTokenization(e),this._tokenizer.tokenizeLinesAt(e,t)):null}get hasTokens(){return this._tokens.hasTokens}}var Mx,Tx=function(e,t){return function(i,n){t(i,n,e)}};let Rx=Mx=class extends zC{constructor(e,t,i,n,o,s,r,a){super(),this._textModel=e,this._bracketPairsTextModelPart=t,this._languageId=i,this._attachedViews=n,this._languageService=o,this._languageConfigurationService=s,this._instantiationService=r,this._treeSitterLibraryService=a,this._languageIdObs=Xs(this,this._languageId),this._useTreeSitter=gr(this,(e=>{const t=this._languageIdObs.read(e);return this._treeSitterLibraryService.supportsLanguage(t,e)})),this.tokens=gr(this,(e=>{let t;return t=this._useTreeSitter.read(e)?e.store.add(this._instantiationService.createInstance(Sx,this._languageIdObs,this._languageService.languageIdCodec,this._textModel,this._attachedViews.visibleLineRanges)):e.store.add(new Nx(this._languageService.languageIdCodec,this._textModel,(()=>this._languageId),this._attachedViews)),e.store.add(t.onDidChangeTokens((e=>{this._emitModelTokensChangedEvent(e)}))),e.store.add(t.onDidChangeBackgroundTokenizationState((e=>{this._bracketPairsTextModelPart.handleDidChangeBackgroundTokenizationState()}))),t}));let l=!1;this.tokens.recomputeInitiallyAndOnChange(this._store,(e=>{l&&e.todo_resetTokenization(),l=!0})),this._semanticTokens=new xx(this._languageService.languageIdCodec),this._onDidChangeLanguage=this._register(new Gt),this.onDidChangeLanguage=this._onDidChangeLanguage.event,this._onDidChangeLanguageConfiguration=this._register(new Gt),this.onDidChangeLanguageConfiguration=this._onDidChangeLanguageConfiguration.event,this._onDidChangeTokens=this._register(new Gt),this.onDidChangeTokens=this._onDidChangeTokens.event}handleLanguageConfigurationServiceChange(e){e.affects(this._languageId)&&this._onDidChangeLanguageConfiguration.fire({})}handleDidChangeContent(e){if(e.isFlush)this._semanticTokens.flush();else if(!e.isEolChange)for(const t of e.changes){const[e,i,n]=Lg(t.text);this._semanticTokens.acceptEdit(t.range,e,i,n,t.text.length>0?t.text.charCodeAt(0):0)}this.tokens.get().handleDidChangeContent(e)}handleDidChangeAttached(){this.tokens.get().handleDidChangeAttached()}getLineTokens(e){this.validateLineNumber(e);const t=this.tokens.get().getLineTokens(e);return this._semanticTokens.addSparseTokens(e,t)}_emitModelTokensChangedEvent(e){this._textModel._isDisposing()||(this._bracketPairsTextModelPart.handleDidChangeTokens(e),this._onDidChangeTokens.fire(e))}validateLineNumber(e){if(e<1||e>this._textModel.getLineCount())throw new We("Illegal value for lineNumber")}get hasTokens(){return this.tokens.get().hasTokens}resetTokenization(){this.tokens.get().todo_resetTokenization()}get backgroundTokenizationState(){return this.tokens.get().backgroundTokenizationState}forceTokenization(e){this.validateLineNumber(e),this.tokens.get().forceTokenization(e)}hasAccurateTokensForLine(e){return this.validateLineNumber(e),this.tokens.get().hasAccurateTokensForLine(e)}isCheapToTokenize(e){return this.validateLineNumber(e),this.tokens.get().isCheapToTokenize(e)}tokenizeIfCheap(e){this.validateLineNumber(e),this.tokens.get().tokenizeIfCheap(e)}getTokenTypeIfInsertingCharacter(e,t,i){return this.tokens.get().getTokenTypeIfInsertingCharacter(e,t,i)}tokenizeLinesAt(e,t){return this.tokens.get().tokenizeLinesAt(e,t)}setSemanticTokens(e,t){this._semanticTokens.set(e,t,this._textModel),this._emitModelTokensChangedEvent({semanticTokensApplied:null!==e,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]})}hasCompleteSemanticTokens(){return this._semanticTokens.isComplete()}hasSomeSemanticTokens(){return!this._semanticTokens.isEmpty()}setPartialSemanticTokens(e,t){if(this.hasCompleteSemanticTokens())return;const i=this._textModel.validateRange(this._semanticTokens.setPartial(e,t));this._emitModelTokensChangedEvent({semanticTokensApplied:!0,ranges:[{fromLineNumber:i.startLineNumber,toLineNumber:i.endLineNumber}]})}getWordAtPosition(e){this.assertNotDisposed();const t=this._textModel.validatePosition(e),i=this._textModel.getLineContent(t.lineNumber),n=this.getLineTokens(t.lineNumber),o=n.findTokenIndexAtOffset(t.column-1),[s,r]=Mx._findLanguageBoundaries(n,o),a=Og(t.column,this.getLanguageConfiguration(n.getLanguageId(o)).getWordDefinition(),i.substring(s,r),s);if(a&&a.startColumn<=e.column&&e.column<=a.endColumn)return a;if(o>0&&s===t.column-1){const[s,r]=Mx._findLanguageBoundaries(n,o-1),a=Og(t.column,this.getLanguageConfiguration(n.getLanguageId(o-1)).getWordDefinition(),i.substring(s,r),s);if(a&&a.startColumn<=e.column&&e.column<=a.endColumn)return a}return null}getLanguageConfiguration(e){return this._languageConfigurationService.getLanguageConfiguration(e)}static _findLanguageBoundaries(e,t){const i=e.getLanguageId(t);let n=0;for(let o=t;o>=0&&e.getLanguageId(o)===i;o--)n=e.getStartOffset(o);let o=e.getLineContent().length;for(let n=t,s=e.getCount();n=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([Tx(4,Ng),Tx(5,Yp),Tx(6,ih),Tx(7,Cx)],Rx);class Ax{constructor(){this.changeType=1}}class Ox{static applyInjectedText(e,t){if(!t||0===t.length)return e;let i="",n=0;for(const o of t)i+=e.substring(n,o.column-1),n=o.column-1,i+=o.options.content;return i+=e.substring(n),i}static fromDecorations(e){const t=[];for(const i of e)i.options.before&&i.options.before.content.length>0&&t.push(new Ox(i.ownerId,i.range.startLineNumber,i.range.startColumn,i.options.before,0)),i.options.after&&i.options.after.content.length>0&&t.push(new Ox(i.ownerId,i.range.endLineNumber,i.range.endColumn,i.options.after,1));return t.sort(((e,t)=>e.lineNumber===t.lineNumber?e.column===t.column?e.order-t.order:e.column-t.column:e.lineNumber-t.lineNumber)),t}constructor(e,t,i,n,o){this.ownerId=e,this.lineNumber=t,this.column=i,this.options=n,this.order=o}}class Px{constructor(e,t,i){this.changeType=2,this.lineNumber=e,this.detail=t,this.injectedText=i}}class Fx{constructor(e,t,i,n){this.ownerId=e,this.decorationId=t,this.lineNumber=i,this.lineHeight=n}}class Bx{constructor(e,t){this.ownerId=e,this.lineNumber=t}}class Wx{constructor(e,t){this.changeType=3,this.fromLineNumber=e,this.toLineNumber=t}}class Hx{constructor(e,t,i,n){this.changeType=4,this.injectedTexts=n,this.fromLineNumber=e,this.toLineNumber=t,this.detail=i}}class Vx{constructor(){this.changeType=5}}class zx{constructor(e,t,i,n){this.changes=e,this.versionId=t,this.isUndoing=i,this.isRedoing=n,this.resultingSelection=null}containsEvent(e){for(let t=0,i=this.changes.length;te.call(t,i,i,this)))}[Symbol.iterator](){return this.values()}}var ek,tk=function(e,t){return function(i,n){t(i,n,e)}};function ik(e,t){let i;var n;return i="string"==typeof e?function(e){const t=new dS;return t.acceptChunk(e),t.finish()}(e):(n=e)&&"function"==typeof n.read?function(e){const t=new dS;let i;for(;"string"==typeof(i=e.read());)t.acceptChunk(i);return t.finish()}(e):e,i.create(t)}let nk=0;class ok{constructor(e){this._source=e,this._eos=!1}read(){if(this._eos)return null;const e=[];let t=0,i=0;for(;;){const n=this._source.read();if(null===n)return this._eos=!0,0===t?null:e.join("");if(n.length>0&&(e[t++]=n,i+=n.length),i>=65536)return e.join("")}}}const sk=()=>{throw new Error("Invalid change accessor")};let rk=class extends Tt{static{ek=this}static{this._MODEL_SYNC_LIMIT=52428800}static{this.LARGE_FILE_SIZE_THRESHOLD=20971520}static{this.LARGE_FILE_LINE_COUNT_THRESHOLD=3e5}static{this.LARGE_FILE_HEAP_OPERATION_THRESHOLD=268435456}static{this.DEFAULT_CREATION_OPTIONS={isForSimpleWidget:!1,tabSize:Dg.tabSize,indentSize:Dg.indentSize,insertSpaces:Dg.insertSpaces,detectIndentation:!1,defaultEOL:1,trimAutoWhitespace:Dg.trimAutoWhitespace,largeFileOptimizations:Dg.largeFileOptimizations,bracketPairColorizationOptions:Dg.bracketPairColorizationOptions}}static resolveOptions(e,t){if(t.detectIndentation){const i=ZC(e,t.tabSize,t.insertSpaces);return new mg({tabSize:i.tabSize,indentSize:"tabSize",insertSpaces:i.insertSpaces,trimAutoWhitespace:t.trimAutoWhitespace,defaultEOL:t.defaultEOL,bracketPairColorizationOptions:t.bracketPairColorizationOptions})}return new mg(t)}get onDidChangeLanguage(){return this._tokenizationTextModelPart.onDidChangeLanguage}get onDidChangeLanguageConfiguration(){return this._tokenizationTextModelPart.onDidChangeLanguageConfiguration}get onDidChangeTokens(){return this._tokenizationTextModelPart.onDidChangeTokens}get onDidChangeOptions(){return this._onDidChangeOptions.event}get onDidChangeAttached(){return this._onDidChangeAttached.event}get onDidChangeLineHeight(){return this._onDidChangeLineHeight.event}get onDidChangeFont(){return this._onDidChangeFont.event}onDidChangeContent(e){return this._eventEmitter.slowEvent((t=>e(t.contentChangedEvent)))}onDidChangeContentOrInjectedText(e){return It(this._eventEmitter.fastEvent((t=>e(t))),this._onDidChangeInjectedText.event((t=>e(t))))}_isDisposing(){return this.__isDisposing}get tokenization(){return this._tokenizationTextModelPart}get bracketPairs(){return this._bracketPairs}get guides(){return this._guidesTextModelPart}constructor(e,t,i,n=null,o,s,r,a){super(),this._undoRedoService=o,this._languageService=s,this._languageConfigurationService=r,this.instantiationService=a,this._onWillDispose=this._register(new Gt),this.onWillDispose=this._onWillDispose.event,this._onDidChangeDecorations=this._register(new yk(((e,t,i)=>this.handleBeforeFireDecorationsChangedEvent(e,t,i)))),this.onDidChangeDecorations=this._onDidChangeDecorations.event,this._onDidChangeOptions=this._register(new Gt),this._onDidChangeAttached=this._register(new Gt),this._onDidChangeInjectedText=this._register(new Gt),this._onDidChangeLineHeight=this._register(new Gt),this._onDidChangeFont=this._register(new Gt),this._eventEmitter=this._register(new Sk),this._languageSelectionListener=this._register(new Rt),this._deltaDecorationCallCnt=0,this._attachedViews=new mS,nk++,this.id="$model"+nk,this.isForSimpleWidget=i.isForSimpleWidget,this._associatedResource=null==n?ho.parse("inmemory://model/"+nk):n,this._attachedEditorCount=0;const{textBuffer:l,disposable:d}=ik(e,i.defaultEOL);this._buffer=l,this._bufferDisposable=d;const c=this._buffer.getLineCount(),h=this._buffer.getValueLengthInRange(new Yu(1,1,c,this._buffer.getLineLength(c)+1),0);i.largeFileOptimizations?(this._isTooLargeForTokenization=h>ek.LARGE_FILE_SIZE_THRESHOLD||c>ek.LARGE_FILE_LINE_COUNT_THRESHOLD,this._isTooLargeForHeapOperation=h>ek.LARGE_FILE_HEAP_OPERATION_THRESHOLD):(this._isTooLargeForTokenization=!1,this._isTooLargeForHeapOperation=!1),this._options=ek.resolveOptions(this._buffer,i);const u="string"==typeof t?t:t.languageId;"string"!=typeof t&&(this._languageSelectionListener.value=t.onDidChange((()=>this._setLanguage(t.languageId)))),this._bracketPairs=this._register(new Lf(this,this._languageConfigurationService)),this._guidesTextModelPart=this._register(new qC(this,this._languageConfigurationService)),this._decorationProvider=this._register(new cC(this)),this._tokenizationTextModelPart=this.instantiationService.createInstance(Rx,this,this._bracketPairs,u,this._attachedViews),this._isTooLargeForSyncing=h>ek._MODEL_SYNC_LIMIT,this._versionId=1,this._alternativeVersionId=1,this._initialUndoRedoSnapshot=null,this._isDisposed=!1,this.__isDisposing=!1,this._instanceId=kn(nk),this._lastDecorationId=0,this._decorations=Object.create(null),this._decorationsTree=new ck,this._commandManager=new VC(this,this._undoRedoService),this._isUndoing=!1,this._isRedoing=!1,this._trimAutoWhitespaceLines=null,this._register(this._decorationProvider.onDidChange((()=>{this._onDidChangeDecorations.beginDeferredEmit(),this._onDidChangeDecorations.fire(),this._onDidChangeDecorations.endDeferredEmit()}))),this._languageService.requestRichLanguageFeatures(u),this._register(this._languageConfigurationService.onDidChange((e=>{this._bracketPairs.handleLanguageConfigurationServiceChange(e),this._tokenizationTextModelPart.handleLanguageConfigurationServiceChange(e)})))}dispose(){this.__isDisposing=!0,this._onWillDispose.fire(),this._tokenizationTextModelPart.dispose(),this._isDisposed=!0,super.dispose(),this._bufferDisposable.dispose(),this.__isDisposing=!1;const e=new aS([],"","\n",!1,!1,!0,!0);e.dispose(),this._buffer=e,this._bufferDisposable=Tt.None}_assertNotDisposed(){if(this._isDisposed)throw new We("Model is disposed!")}getTextBuffer(){return this._assertNotDisposed(),this._buffer}_emitContentChangedEvent(e,t){this.__isDisposing||(this._tokenizationTextModelPart.handleDidChangeContent(t),this._bracketPairs.handleDidChangeContent(t),this._eventEmitter.fire(new qx(e,t)))}setValue(e,t=kC()){if(this._assertNotDisposed(),null==e)throw Oe();const{textBuffer:i,disposable:n}=ik(e,this._options.defaultEOL);this._setValueFromTextBuffer(i,n,t)}_createContentChanged2(e,t,i,n,o,s,r,a,l,d){return{changes:[{range:e,rangeOffset:t,rangeLength:i,text:o}],eol:this._buffer.getEOL(),isEolChange:l,versionId:this.getVersionId(),isUndoing:s,isRedoing:r,isFlush:a,detailedReasons:[d],detailedReasonsChangeLengths:[1]}}_setValueFromTextBuffer(e,t,i){this._assertNotDisposed();const n=this.getFullModelRange(),o=this.getValueLengthInRange(n),s=this.getLineCount(),r=this.getLineMaxColumn(s);this._buffer=e,this._bufferDisposable.dispose(),this._bufferDisposable=t,this._increaseVersionId(),this._decorations=Object.create(null),this._decorationsTree=new ck,this._commandManager.clear(),this._trimAutoWhitespaceLines=null,this._emitContentChangedEvent(new zx([new Ax],this._versionId,!1,!1),this._createContentChanged2(new Yu(1,1,s,r),0,o,new sh(s,r),this.getValue(),!1,!1,!0,!1,i))}setEOL(e){this._assertNotDisposed();const t=1===e?"\r\n":"\n";if(this._buffer.getEOL()===t)return;const i=this.getFullModelRange(),n=this.getValueLengthInRange(i),o=this.getLineCount(),s=this.getLineMaxColumn(o);this._onBeforeEOLChange(),this._buffer.setEOL(t),this._increaseVersionId(),this._onAfterEOLChange(),this._emitContentChangedEvent(new zx([new Vx],this._versionId,!1,!1),this._createContentChanged2(new Yu(1,1,o,s),0,n,new sh(o,s),this.getValue(),!1,!1,!1,!0,LC()))}_onBeforeEOLChange(){this._decorationsTree.ensureAllNodesHaveRanges(this)}_onAfterEOLChange(){const e=this.getVersionId(),t=this._decorationsTree.collectNodesPostOrder();for(let i=0,n=t.length;i0}getAttachedEditorCount(){return this._attachedEditorCount}isTooLargeForSyncing(){return this._isTooLargeForSyncing}isTooLargeForTokenization(){return this._isTooLargeForTokenization}isTooLargeForHeapOperation(){return this._isTooLargeForHeapOperation}isDisposed(){return this._isDisposed}isDominatedByLongLines(){if(this._assertNotDisposed(),this.isTooLargeForTokenization())return!1;let e=0,t=0;const i=this._buffer.getLineCount();for(let n=1;n<=i;n++){const i=this._buffer.getLineLength(n);i>=1e4?t+=i:e+=i}return t>e}get uri(){return this._associatedResource}getOptions(){return this._assertNotDisposed(),this._options}getFormattingOptions(){return{tabSize:this._options.indentSize,insertSpaces:this._options.insertSpaces}}updateOptions(e){this._assertNotDisposed();const t=void 0!==e.tabSize?e.tabSize:this._options.tabSize,i=void 0!==e.indentSize?e.indentSize:this._options.originalIndentSize,n=void 0!==e.insertSpaces?e.insertSpaces:this._options.insertSpaces,o=void 0!==e.trimAutoWhitespace?e.trimAutoWhitespace:this._options.trimAutoWhitespace,s=void 0!==e.bracketColorizationOptions?e.bracketColorizationOptions:this._options.bracketPairColorizationOptions,r=new mg({tabSize:t,indentSize:i,insertSpaces:n,defaultEOL:this._options.defaultEOL,trimAutoWhitespace:o,bracketPairColorizationOptions:s});if(this._options.equals(r))return;const a=this._options.createChangeEvent(r);this._options=r,this._bracketPairs.handleDidChangeOptions(a),this._decorationProvider.handleDidChangeOptions(a),this._onDidChangeOptions.fire(a)}detectIndentation(e,t){this._assertNotDisposed();const i=ZC(this._buffer,t,e);this.updateOptions({insertSpaces:i.insertSpaces,tabSize:i.tabSize,indentSize:i.tabSize})}normalizeIndentation(e){return this._assertNotDisposed(),Ig(e,this._options.indentSize,this._options.insertSpaces)}getVersionId(){return this._assertNotDisposed(),this._versionId}mightContainRTL(){return this._buffer.mightContainRTL()}mightContainUnusualLineTerminators(){return this._buffer.mightContainUnusualLineTerminators()}removeUnusualLineTerminators(e=null){const t=this.findMatches(bn.source,!1,!0,!1,null,!1,1073741824);this._buffer.resetMightContainUnusualLineTerminators(),this.pushEditOperations(e,t.map((e=>({range:e.range,text:null}))),(()=>null))}mightContainNonBasicASCII(){return this._buffer.mightContainNonBasicASCII()}getAlternativeVersionId(){return this._assertNotDisposed(),this._alternativeVersionId}getInitialUndoRedoSnapshot(){return this._assertNotDisposed(),this._initialUndoRedoSnapshot}getOffsetAt(e){this._assertNotDisposed();const t=this._validatePosition(e.lineNumber,e.column,0);return this._buffer.getOffsetAt(t.lineNumber,t.column)}getPositionAt(e){this._assertNotDisposed();const t=Math.min(this._buffer.getLength(),Math.max(0,e));return this._buffer.getPositionAt(t)}_increaseVersionId(){this._versionId=this._versionId+1,this._alternativeVersionId=this._versionId}_overwriteVersionId(e){this._versionId=e}_overwriteAlternativeVersionId(e){this._alternativeVersionId=e}_overwriteInitialUndoRedoSnapshot(e){this._initialUndoRedoSnapshot=e}getValue(e,t=!1){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new We("Operation would exceed heap memory limits");const i=this.getFullModelRange(),n=this.getValueInRange(i,e);return t?this._buffer.getBOM()+n:n}createSnapshot(e=!1){return new ok(this._buffer.createSnapshot(e))}getValueLength(e,t=!1){this._assertNotDisposed();const i=this.getFullModelRange(),n=this.getValueLengthInRange(i,e);return t?this._buffer.getBOM().length+n:n}getValueInRange(e,t=0){return this._assertNotDisposed(),this._buffer.getValueInRange(this.validateRange(e),t)}getValueLengthInRange(e,t=0){return this._assertNotDisposed(),this._buffer.getValueLengthInRange(this.validateRange(e),t)}getCharacterCountInRange(e,t=0){return this._assertNotDisposed(),this._buffer.getCharacterCountInRange(this.validateRange(e),t)}getLineCount(){return this._assertNotDisposed(),this._buffer.getLineCount()}getLineContent(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new We("Illegal value for lineNumber");return this._buffer.getLineContent(e)}getLineLength(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new We("Illegal value for lineNumber");return this._buffer.getLineLength(e)}getLinesContent(){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new We("Operation would exceed heap memory limits");return this._buffer.getLinesContent()}getEOL(){return this._assertNotDisposed(),this._buffer.getEOL()}getEndOfLineSequence(){return this._assertNotDisposed(),"\n"===this._buffer.getEOL()?0:1}getLineMinColumn(e){return this._assertNotDisposed(),1}getLineMaxColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new We("Illegal value for lineNumber");return this._buffer.getLineLength(e)+1}getLineFirstNonWhitespaceColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new We("Illegal value for lineNumber");return this._buffer.getLineFirstNonWhitespaceColumn(e)}getLineLastNonWhitespaceColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new We("Illegal value for lineNumber");return this._buffer.getLineLastNonWhitespaceColumn(e)}_validateRangeRelaxedNoAllocations(e){const t=this._buffer.getLineCount(),i=e.startLineNumber,n=e.startColumn;let o=Math.floor("number"!=typeof i||isNaN(i)?1:i),s=Math.floor("number"!=typeof n||isNaN(n)?1:n);if(o<1)o=1,s=1;else if(o>t)o=t,s=this.getLineMaxColumn(o);else if(s<=1)s=1;else{const e=this.getLineMaxColumn(o);s>=e&&(s=e)}const r=e.endLineNumber,a=e.endColumn;let l=Math.floor("number"!=typeof r||isNaN(r)?1:r),d=Math.floor("number"!=typeof a||isNaN(a)?1:a);if(l<1)l=1,d=1;else if(l>t)l=t,d=this.getLineMaxColumn(l);else if(d<=1)d=1;else{const e=this.getLineMaxColumn(l);d>=e&&(d=e)}return i===o&&n===s&&r===l&&a===d&&e instanceof Yu&&!(e instanceof Zu)?e:new Yu(o,s,l,d)}_isValidPosition(e,t,i){return"number"==typeof e&&"number"==typeof t&&(!isNaN(e)&&!isNaN(t)&&(!(e<1||t<1)&&((0|e)===e&&(0|t)===t&&(!(e>this._buffer.getLineCount())&&(1===t||!(t>this.getLineMaxColumn(e))&&(1!==i||!an(this._buffer.getLineCharCode(e,t-2))))))))}_validatePosition(e,t,i){const n=Math.floor("number"!=typeof e||isNaN(e)?1:e),o=Math.floor("number"!=typeof t||isNaN(t)?1:t),s=this._buffer.getLineCount();if(n<1)return new sh(1,1);if(n>s)return new sh(s,this.getLineMaxColumn(s));if(o<=1)return new sh(n,1);const r=this.getLineMaxColumn(n);return o>=r?new sh(n,r):1===i&&an(this._buffer.getLineCharCode(n,o-2))?new sh(n,o-1):new sh(n,o)}validatePosition(e){return this._assertNotDisposed(),e instanceof sh&&this._isValidPosition(e.lineNumber,e.column,1)?e:this._validatePosition(e.lineNumber,e.column,1)}isValidRange(e){return this._isValidRange(e,1)}_isValidRange(e,t){const i=e.startLineNumber,n=e.startColumn,o=e.endLineNumber,s=e.endColumn;if(!this._isValidPosition(i,n,0))return!1;if(!this._isValidPosition(o,s,0))return!1;if(1===t){const e=n>1?this._buffer.getLineCharCode(i,n-2):0,t=s>1&&s<=this._buffer.getLineLength(o)?this._buffer.getLineCharCode(o,s-2):0,r=an(e),a=an(t);return!r&&!a}return!0}validateRange(e){if(this._assertNotDisposed(),e instanceof Yu&&!(e instanceof Zu)&&this._isValidRange(e,1))return e;const t=this._validatePosition(e.startLineNumber,e.startColumn,0),i=this._validatePosition(e.endLineNumber,e.endColumn,0),n=t.lineNumber,o=t.column,s=i.lineNumber,r=i.column;{const e=o>1?this._buffer.getLineCharCode(n,o-2):0,t=r>1&&r<=this._buffer.getLineLength(s)?this._buffer.getLineCharCode(s,r-2):0,i=an(e),a=an(t);return i||a?n===s&&o===r?new Yu(n,o-1,s,r-1):i&&a?new Yu(n,o-1,s,r+1):i?new Yu(n,o-1,s,r):new Yu(n,o,s,r+1):new Yu(n,o,s,r)}}modifyPosition(e,t){this._assertNotDisposed();const i=this.getOffsetAt(e)+t;return this.getPositionAt(Math.min(this._buffer.getLength(),Math.max(0,i)))}getFullModelRange(){this._assertNotDisposed();const e=this.getLineCount();return new Yu(1,1,e,this.getLineMaxColumn(e))}findMatchesLineByLine(e,t,i,n){return this._buffer.findMatchesLineByLine(e,t,i,n)}findMatches(e,t,i,n,o,s,r=999){this._assertNotDisposed();let a=null;null!==t&&(Array.isArray(t)||(t=[t]),t.every((e=>Yu.isIRange(e)))&&(a=t.map((e=>this.validateRange(e))))),null===a&&(a=[this.getFullModelRange()]),a=a.sort(((e,t)=>e.startLineNumber-t.startLineNumber||e.startColumn-t.startColumn));const l=[];let d;if(l.push(a.reduce(((e,t)=>Yu.areIntersecting(e,t)?e.plusRange(t):(l.push(e),t)))),!i&&e.indexOf("\n")<0){const t=new Ky(e,i,n,o).parseSearchRequest();if(!t)return[];d=e=>this.findMatchesLineByLine(e,t,s,r)}else d=t=>Yy.findMatches(this,new Ky(e,i,n,o),t,s,r);return l.map(d).reduce(((e,t)=>e.concat(t)),[])}findNextMatch(e,t,i,n,o,s){this._assertNotDisposed();const r=this.validatePosition(t);if(!i&&e.indexOf("\n")<0){const t=new Ky(e,i,n,o).parseSearchRequest();if(!t)return null;const a=this.getLineCount();let l=new Yu(r.lineNumber,r.column,a,this.getLineMaxColumn(a)),d=this.findMatchesLineByLine(l,t,s,1);return Yy.findNextMatch(this,new Ky(e,i,n,o),r,s),d.length>0?d[0]:(l=new Yu(1,1,r.lineNumber,this.getLineMaxColumn(r.lineNumber)),d=this.findMatchesLineByLine(l,t,s,1),d.length>0?d[0]:null)}return Yy.findNextMatch(this,new Ky(e,i,n,o),r,s)}findPreviousMatch(e,t,i,n,o,s){this._assertNotDisposed();const r=this.validatePosition(t);return Yy.findPreviousMatch(this,new Ky(e,i,n,o),r,s)}pushStackElement(){this._commandManager.pushStackElement()}popStackElement(){this._commandManager.popStackElement()}pushEOL(e){if(("\n"===this.getEOL()?0:1)!==e)try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),null===this._initialUndoRedoSnapshot&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEOL(e)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_validateEditOperation(e){return e instanceof _g?e:new _g(e.identifier||null,this.validateRange(e.range),e.text,e.forceMoveMarkers||!1,e.isAutoWhitespaceEdit||!1,e._isTracked||!1)}_validateEditOperations(e){const t=[];for(let i=0,n=e.length;i({range:this.validateRange(e.range),text:e.text})));let n=!0;if(e)for(let t=0,o=e.length;to.endLineNumber,r=o.startLineNumber>t.endLineNumber;if(!n&&!r){s=!0;break}}if(!s){n=!1;break}}if(n)for(let e=0,n=this._trimAutoWhitespaceLines.length;et.endLineNumber||n===t.startLineNumber&&t.startColumn===o&&t.isEmpty()&&r&&r.length>0&&"\n"===r.charAt(0)||n===t.startLineNumber&&1===t.startColumn&&t.isEmpty()&&r&&r.length>0&&"\n"===r.charAt(r.length-1))){s=!1;break}}if(s){const e=new Yu(n,1,n,o);t.push(new _g(null,e,null,!1,!1,!1))}}this._trimAutoWhitespaceLines=null}return null===this._initialUndoRedoSnapshot&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEditOperation(e,t,i,n,o)}_applyUndo(e,t,i,n){const o=e.map((e=>{const t=this.getPositionAt(e.newPosition),i=this.getPositionAt(e.newEnd);return{range:new Yu(t.lineNumber,t.column,i.lineNumber,i.column),text:e.oldText}}));this._applyUndoRedoEdits(o,t,!0,!1,i,n)}_applyRedo(e,t,i,n){const o=e.map((e=>{const t=this.getPositionAt(e.oldPosition),i=this.getPositionAt(e.oldEnd);return{range:new Yu(t.lineNumber,t.column,i.lineNumber,i.column),text:e.newText}}));this._applyUndoRedoEdits(o,t,!1,!0,i,n)}_applyUndoRedoEdits(e,t,i,n,o,s){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._isUndoing=i,this._isRedoing=n,this.applyEdits(e,!1),this.setEOL(t),this._overwriteAlternativeVersionId(o)}finally{this._isUndoing=!1,this._isRedoing=!1,this._eventEmitter.endDeferredEmit(s),this._onDidChangeDecorations.endDeferredEmit()}}applyEdits(e,t,i){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit();const n=this._validateEditOperations(e);return this._doApplyEdits(n,t??!1,i??EC())}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_doApplyEdits(e,t,i){const n=this._buffer.getLineCount(),o=this._buffer.applyEdits(e,this._options.trimAutoWhitespace,t),s=this._buffer.getLineCount(),r=o.changes;if(this._trimAutoWhitespaceLines=o.trimAutoWhitespaceLineNumbers,0!==r.length){for(let e=0,t=r.length;e=0;t--){const i=a+t,n=g+t;v.takeFromEndWhile((e=>e.lineNumber>n));const o=v.takeFromEndWhile((e=>e.lineNumber===n));e.push(new Px(i,this.getLineContent(n),o))}if(he.lineNumbere.lineNumber===t))}e.push(new Hx(n+1,a+c,d,l))}t+=u}this._emitContentChangedEvent(new zx(e,this.getVersionId(),this._isUndoing,this._isRedoing),{changes:r,eol:this._buffer.getEOL(),isEolChange:!1,versionId:this.getVersionId(),isUndoing:this._isUndoing,isRedoing:this._isRedoing,isFlush:!1,detailedReasons:[i],detailedReasonsChangeLengths:[r.length]})}return null===o.reverseEdits?void 0:o.reverseEdits}undo(){return this._undoRedoService.undo(this.uri)}canUndo(){return this._undoRedoService.canUndo(this.uri)}redo(){return this._undoRedoService.redo(this.uri)}canRedo(){return this._undoRedoService.canRedo(this.uri)}handleBeforeFireDecorationsChangedEvent(e,t,i){if(e&&e.size>0){const t=Array.from(e).map((e=>new Px(e,this.getLineContent(e),this._getInjectedTextInLine(e))));this._onDidChangeInjectedText.fire(new Ux(t))}if(t&&t.size>0){const e=Array.from(t).map((e=>new Fx(e.ownerId,e.decorationId,e.lineNumber,e.lineHeight)));this._onDidChangeLineHeight.fire(new jx(e))}if(i&&i.size>0){const e=Array.from(i).map((e=>new Bx(e.ownerId,e.lineNumber)));this._onDidChangeFont.fire(new Kx(e))}}changeDecorations(e,t=0){this._assertNotDisposed();try{return this._onDidChangeDecorations.beginDeferredEmit(),this._changeDecorations(t,e)}finally{this._onDidChangeDecorations.endDeferredEmit()}}_changeDecorations(e,t){const i={addDecoration:(t,i)=>this._deltaDecorationsImpl(e,[],[{range:t,options:i}])[0],changeDecoration:(t,i)=>{this._changeDecorationImpl(e,t,i)},changeDecorationOptions:(t,i)=>{this._changeDecorationOptionsImpl(e,t,bk(i))},removeDecoration:t=>{this._deltaDecorationsImpl(e,[t],[])},deltaDecorations:(t,i)=>0===t.length&&0===i.length?[]:this._deltaDecorationsImpl(e,t,i)};let n=null;try{n=t(i)}catch(e){De(e)}return i.addDecoration=sk,i.changeDecoration=sk,i.changeDecorationOptions=sk,i.removeDecoration=sk,i.deltaDecorations=sk,n}deltaDecorations(e,t,i=0){if(this._assertNotDisposed(),e||(e=[]),0===e.length&&0===t.length)return[];try{return this._deltaDecorationCallCnt++,this._deltaDecorationCallCnt>1&&(console.warn("Invoking deltaDecorations recursively could lead to leaking decorations."),De(new Error("Invoking deltaDecorations recursively could lead to leaking decorations."))),this._onDidChangeDecorations.beginDeferredEmit(),this._deltaDecorationsImpl(i,e,t)}finally{this._onDidChangeDecorations.endDeferredEmit(),this._deltaDecorationCallCnt--}}_getTrackedRange(e){return this.getDecorationRange(e)}_setTrackedRange(e,t,i){const n=e?this._decorations[e]:null;if(!n)return t?this._deltaDecorationsImpl(0,[],[{range:t,options:vk[i]}],!0)[0]:null;if(!t)return this._decorationsTree.delete(n),delete this._decorations[n.id],null;const o=this._validateRangeRelaxedNoAllocations(t),s=this._buffer.getOffsetAt(o.startLineNumber,o.startColumn),r=this._buffer.getOffsetAt(o.endLineNumber,o.endColumn);return this._decorationsTree.delete(n),n.reset(this.getVersionId(),s,r,o),n.setOptions(vk[i]),this._decorationsTree.insert(n),n.id}removeAllDecorationsWithOwnerId(e){if(this._isDisposed)return;const t=this._decorationsTree.collectNodesFromOwner(e);for(let e=0,i=t.length;ethis.getLineCount()?[]:this.getLinesDecorations(e,e,t,i,n)}getLinesDecorations(e,t,i=0,n=!1,o=!1,s=!1){const r=this.getLineCount(),a=Math.min(r,Math.max(1,e)),l=Math.min(r,Math.max(1,t)),d=this.getLineMaxColumn(l),c=new Yu(a,1,l,d),h=this._getDecorationsInRange(c,i,n,o,s);return ms(h,this._decorationProvider.getDecorationsInRange(c,i,n)),h}getDecorationsInRange(e,t=0,i=!1,n=!1,o=!1,s=!1){const r=this.validateRange(e),a=this._getDecorationsInRange(r,t,i,n,s);return ms(a,this._decorationProvider.getDecorationsInRange(r,t,i,o)),a}getOverviewRulerDecorations(e=0,t=!1,i=!1){return this._decorationsTree.getAll(this,e,t,i,!0,!1)}getInjectedTextDecorations(e=0){return this._decorationsTree.getAllInjectedText(this,e)}getCustomLineHeightsDecorations(e=0){return this._decorationsTree.getAllCustomLineHeights(this,e)}_getInjectedTextInLine(e){const t=this._buffer.getOffsetAt(e,1),i=t+this._buffer.getLineLength(e),n=this._decorationsTree.getInjectedTextInInterval(this,t,i,0);return Ox.fromDecorations(n).filter((t=>t.lineNumber===e))}getFontDecorationsInRange(e,t=0){const i=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),n=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);return this._decorationsTree.getFontDecorationsInInterval(this,i,n,t)}getAllDecorations(e=0,t=!1,i=!1){let n=this._decorationsTree.getAll(this,e,t,i,!1,!1);return n=n.concat(this._decorationProvider.getAllDecorations(e,t)),n}getAllMarginDecorations(e=0){return this._decorationsTree.getAll(this,e,!1,!1,!1,!0)}_getDecorationsInRange(e,t,i,n,o){const s=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),r=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);return this._decorationsTree.getAllInInterval(this,s,r,t,i,n,o)}getRangeAt(e,t){return this._buffer.getRangeAt(e,t-e)}_changeDecorationImpl(e,t,i){const n=this._decorations[t];if(!n)return;if(n.options.after){const e=this.getDecorationRange(t);this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.endLineNumber)}if(n.options.before){const e=this.getDecorationRange(t);this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.startLineNumber)}if(null!==n.options.lineHeight){const i=this.getDecorationRange(t);this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(e,t,i.startLineNumber,null)}if(n.options.affectsFont){const i=this.getDecorationRange(t);this._onDidChangeDecorations.recordLineAffectedByFontChange(e,n.id,i.startLineNumber)}const o=this._validateRangeRelaxedNoAllocations(i),s=this._buffer.getOffsetAt(o.startLineNumber,o.startColumn),r=this._buffer.getOffsetAt(o.endLineNumber,o.endColumn);this._decorationsTree.delete(n),n.reset(this.getVersionId(),s,r,o),this._decorationsTree.insert(n),this._onDidChangeDecorations.checkAffectedAndFire(n.options),n.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(o.endLineNumber),n.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(o.startLineNumber),null!==n.options.lineHeight&&this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(e,t,o.startLineNumber,n.options.lineHeight),n.options.affectsFont&&this._onDidChangeDecorations.recordLineAffectedByFontChange(e,n.id,o.startLineNumber)}_changeDecorationOptionsImpl(e,t,i){const n=this._decorations[t];if(!n)return;const o=!(!n.options.overviewRuler||!n.options.overviewRuler.color),s=!(!i.overviewRuler||!i.overviewRuler.color);if(this._onDidChangeDecorations.checkAffectedAndFire(n.options),this._onDidChangeDecorations.checkAffectedAndFire(i),n.options.after||i.after){const e=this._decorationsTree.getNodeRange(this,n);this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.endLineNumber)}if(n.options.before||i.before){const e=this._decorationsTree.getNodeRange(this,n);this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.startLineNumber)}if(null!==n.options.lineHeight||null!==i.lineHeight){const o=this._decorationsTree.getNodeRange(this,n);this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(e,t,o.startLineNumber,i.lineHeight)}if(n.options.affectsFont||i.affectsFont){const i=this._decorationsTree.getNodeRange(this,n);this._onDidChangeDecorations.recordLineAffectedByFontChange(e,t,i.startLineNumber)}const r=o!==s,a=function(e){return!!e.after||!!e.before}(i)!==dk(n);r||a?(this._decorationsTree.delete(n),n.setOptions(i),this._decorationsTree.insert(n)):n.setOptions(i)}_deltaDecorationsImpl(e,t,i,n=!1){const o=this.getVersionId(),s=t.length;let r=0;const a=i.length;let l=0;this._onDidChangeDecorations.beginDeferredEmit();try{const d=new Array(a);for(;rthis._setLanguage(e.languageId,t))),this._setLanguage(e.languageId,t))}_setLanguage(e,t){this.tokenization.setLanguageId(e,t),this._languageService.requestRichLanguageFeatures(e)}getLanguageIdAtPosition(e,t){return this.tokenization.getLanguageIdAtPosition(e,t)}getWordAtPosition(e){return this._tokenizationTextModelPart.getWordAtPosition(e)}getWordUntilPosition(e){return this._tokenizationTextModelPart.getWordUntilPosition(e)}normalizePosition(e,t){return e}getLineIndentColumn(e){return ak(this.getLineContent(e))+1}toString(){return`TextModel(${this.uri.toString()})`}};function ak(e){let t=0;for(const i of e){if(" "!==i&&"\t"!==i)break;t++}return t}function lk(e){return!(!e.options.overviewRuler||!e.options.overviewRuler.color)}function dk(e){return!!e.options.after||!!e.options.before}rk=ek=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([tk(4,$x),tk(5,Ng),tk(6,Yp),tk(7,ih)],rk);class ck{constructor(){this._decorationsTree0=new hy,this._decorationsTree1=new hy,this._injectedTextDecorationsTree=new hy}ensureAllNodesHaveRanges(e){this.getAll(e,0,!1,!1,!1,!1)}_ensureNodesHaveRanges(e,t){for(const i of t)null===i.range&&(i.range=e.getRangeAt(i.cachedAbsoluteStart,i.cachedAbsoluteEnd));return t}getAllInInterval(e,t,i,n,o,s,r){const a=e.getVersionId(),l=this._intervalSearch(t,i,n,o,s,a,r);return this._ensureNodesHaveRanges(e,l)}_intervalSearch(e,t,i,n,o,s,r){const a=this._decorationsTree0.intervalSearch(e,t,i,n,o,s,r),l=this._decorationsTree1.intervalSearch(e,t,i,n,o,s,r),d=this._injectedTextDecorationsTree.intervalSearch(e,t,i,n,o,s,r);return a.concat(l).concat(d)}getInjectedTextInInterval(e,t,i,n){const o=e.getVersionId(),s=this._injectedTextDecorationsTree.intervalSearch(t,i,n,!1,!1,o,!1);return this._ensureNodesHaveRanges(e,s).filter((e=>e.options.showIfCollapsed||!e.range.isEmpty()))}getFontDecorationsInInterval(e,t,i,n){const o=e.getVersionId(),s=this._decorationsTree0.intervalSearch(t,i,n,!1,!1,o,!1);return this._ensureNodesHaveRanges(e,s).filter((e=>e.options.affectsFont))}getAllInjectedText(e,t){const i=e.getVersionId(),n=this._injectedTextDecorationsTree.search(t,!1,!1,i,!1);return this._ensureNodesHaveRanges(e,n).filter((e=>e.options.showIfCollapsed||!e.range.isEmpty()))}getAllCustomLineHeights(e,t){const i=e.getVersionId(),n=this._search(t,!1,!1,!1,i,!1);return this._ensureNodesHaveRanges(e,n).filter((e=>"number"==typeof e.options.lineHeight))}getAll(e,t,i,n,o,s){const r=e.getVersionId(),a=this._search(t,i,n,o,r,s);return this._ensureNodesHaveRanges(e,a)}_search(e,t,i,n,o,s){if(n)return this._decorationsTree1.search(e,t,i,o,s);{const n=this._decorationsTree0.search(e,t,i,o,s),r=this._decorationsTree1.search(e,t,i,o,s),a=this._injectedTextDecorationsTree.search(e,t,i,o,s);return n.concat(r).concat(a)}}collectNodesFromOwner(e){const t=this._decorationsTree0.collectNodesFromOwner(e),i=this._decorationsTree1.collectNodesFromOwner(e),n=this._injectedTextDecorationsTree.collectNodesFromOwner(e);return t.concat(i).concat(n)}collectNodesPostOrder(){const e=this._decorationsTree0.collectNodesPostOrder(),t=this._decorationsTree1.collectNodesPostOrder(),i=this._injectedTextDecorationsTree.collectNodesPostOrder();return e.concat(t).concat(i)}insert(e){dk(e)?this._injectedTextDecorationsTree.insert(e):lk(e)?this._decorationsTree1.insert(e):this._decorationsTree0.insert(e)}delete(e){dk(e)?this._injectedTextDecorationsTree.delete(e):lk(e)?this._decorationsTree1.delete(e):this._decorationsTree0.delete(e)}getNodeRange(e,t){const i=e.getVersionId();return t.cachedVersionId!==i&&this._resolveNode(t,i),null===t.range&&(t.range=e.getRangeAt(t.cachedAbsoluteStart,t.cachedAbsoluteEnd)),t.range}_resolveNode(e,t){dk(e)?this._injectedTextDecorationsTree.resolveNode(e,t):lk(e)?this._decorationsTree1.resolveNode(e,t):this._decorationsTree0.resolveNode(e,t)}acceptReplace(e,t,i,n){this._decorationsTree0.acceptReplace(e,t,i,n),this._decorationsTree1.acceptReplace(e,t,i,n),this._injectedTextDecorationsTree.acceptReplace(e,t,i,n)}}function hk(e){return e.replace(/[^a-z0-9\-_]/gi," ")}class uk{constructor(e){this.color=e.color||"",this.darkColor=e.darkColor||""}}class gk extends uk{constructor(e){super(e),this._resolvedColor=null,this.position="number"==typeof e.position?e.position:hg.Center}getColor(e){return this._resolvedColor||("light"!==e.type&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=null}_resolveColor(e,t){if("string"==typeof e)return e;const i=e?t.getColor(e.id):null;return i?i.toString():""}}class pk{constructor(e){this.position=e?.position??ug.Center,this.persistLane=e?.persistLane}}class mk extends uk{constructor(e){super(e),this.position=e.position,this.sectionHeaderStyle=e.sectionHeaderStyle??null,this.sectionHeaderText=e.sectionHeaderText??null}getColor(e){return this._resolvedColor||("light"!==e.type&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=void 0}_resolveColor(e,t){return"string"==typeof e?kg.fromHex(e):t.getColor(e.id)}}class fk{static from(e){return e instanceof fk?e:new fk(e)}constructor(e){this.content=e.content||"",this.tokens=e.tokens??null,this.inlineClassName=e.inlineClassName||null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.attachedData=e.attachedData||null,this.cursorStops=e.cursorStops||null}}class _k{static register(e){return new _k(e)}static createDynamic(e){return new _k(e)}constructor(e){this.description=e.description,this.blockClassName=e.blockClassName?hk(e.blockClassName):null,this.blockDoesNotCollapse=e.blockDoesNotCollapse??null,this.blockIsAfterEnd=e.blockIsAfterEnd??null,this.blockPadding=e.blockPadding??null,this.stickiness=e.stickiness||0,this.zIndex=e.zIndex||0,this.className=e.className?hk(e.className):null,this.shouldFillLineOnLineBreak=e.shouldFillLineOnLineBreak??null,this.hoverMessage=e.hoverMessage||null,this.glyphMarginHoverMessage=e.glyphMarginHoverMessage||null,this.lineNumberHoverMessage=e.lineNumberHoverMessage||null,this.isWholeLine=e.isWholeLine||!1,this.lineHeight=e.lineHeight?Math.min(e.lineHeight,300):null,this.fontSize=e.fontSize||null,this.affectsFont=!!(e.fontSize||e.fontFamily||e.fontWeight||e.fontStyle),this.showIfCollapsed=e.showIfCollapsed||!1,this.collapseOnReplaceEdit=e.collapseOnReplaceEdit||!1,this.overviewRuler=e.overviewRuler?new gk(e.overviewRuler):null,this.minimap=e.minimap?new mk(e.minimap):null,this.glyphMargin=e.glyphMarginClassName?new pk(e.glyphMargin):null,this.glyphMarginClassName=e.glyphMarginClassName?hk(e.glyphMarginClassName):null,this.linesDecorationsClassName=e.linesDecorationsClassName?hk(e.linesDecorationsClassName):null,this.lineNumberClassName=e.lineNumberClassName?hk(e.lineNumberClassName):null,this.linesDecorationsTooltip=e.linesDecorationsTooltip?e.linesDecorationsTooltip.replace(/[<>"'&]/g,(e=>{switch(e){case"<":return"<";case">":return">";case'"':return""";case"'":return"'";case"&":return"&"}return e})):null,this.firstLineDecorationClassName=e.firstLineDecorationClassName?hk(e.firstLineDecorationClassName):null,this.marginClassName=e.marginClassName?hk(e.marginClassName):null,this.inlineClassName=e.inlineClassName?hk(e.inlineClassName):null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.beforeContentClassName=e.beforeContentClassName?hk(e.beforeContentClassName):null,this.afterContentClassName=e.afterContentClassName?hk(e.afterContentClassName):null,this.after=e.after?fk.from(e.after):null,this.before=e.before?fk.from(e.before):null,this.hideInCommentTokens=e.hideInCommentTokens??!1,this.hideInStringTokens=e.hideInStringTokens??!1,this.textDirection=e.textDirection??null}}_k.EMPTY=_k.register({description:"empty"});const vk=[_k.register({description:"tracked-range-always-grows-when-typing-at-edges",stickiness:0}),_k.register({description:"tracked-range-never-grows-when-typing-at-edges",stickiness:1}),_k.register({description:"tracked-range-grows-only-when-typing-before",stickiness:2}),_k.register({description:"tracked-range-grows-only-when-typing-after",stickiness:3})];function bk(e){return e instanceof _k?e:_k.createDynamic(e)}class wk{static toKey(e){return`${e.ownerId};${e.decorationId};${e.lineNumber}`}constructor(e,t,i,n){this.ownerId=e,this.decorationId=t,this.lineNumber=i,this.lineHeight=n}}class Ck{static toKey(e){return`${e.ownerId};${e.decorationId};${e.lineNumber}`}constructor(e,t,i){this.ownerId=e,this.decorationId=t,this.lineNumber=i}}class yk extends Tt{constructor(e){super(),this.handleBeforeFire=e,this._actual=this._register(new Gt),this.event=this._actual.event,this._affectedInjectedTextLines=null,this._affectedLineHeights=null,this._affectedFontLines=null,this._deferredCnt=0,this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._affectsLineNumber=!1}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(){this._deferredCnt--,0===this._deferredCnt&&(this._shouldFireDeferred&&this.doFire(),this._affectedInjectedTextLines?.clear(),this._affectedInjectedTextLines=null,this._affectedLineHeights?.clear(),this._affectedLineHeights=null,this._affectedFontLines?.clear(),this._affectedFontLines=null)}recordLineAffectedByInjectedText(e){this._affectedInjectedTextLines||(this._affectedInjectedTextLines=new Set),this._affectedInjectedTextLines.add(e)}recordLineAffectedByLineHeightChange(e,t,i,n){this._affectedLineHeights||(this._affectedLineHeights=new Jx([],wk.toKey)),this._affectedLineHeights.add(new wk(e,t,i,n))}recordLineAffectedByFontChange(e,t,i){this._affectedFontLines||(this._affectedFontLines=new Jx([],Ck.toKey)),this._affectedFontLines.add(new Ck(e,t,i))}checkAffectedAndFire(e){this._affectsMinimap||=!!e.minimap?.position,this._affectsOverviewRuler||=!!e.overviewRuler?.color,this._affectsGlyphMargin||=!!e.glyphMarginClassName,this._affectsLineNumber||=!!e.lineNumberClassName,this.tryFire()}fire(){this._affectsMinimap=!0,this._affectsOverviewRuler=!0,this._affectsGlyphMargin=!0,this.tryFire()}tryFire(){0===this._deferredCnt?this.doFire():this._shouldFireDeferred=!0}doFire(){this.handleBeforeFire(this._affectedInjectedTextLines,this._affectedLineHeights,this._affectedFontLines);const e={affectsMinimap:this._affectsMinimap,affectsOverviewRuler:this._affectsOverviewRuler,affectsGlyphMargin:this._affectsGlyphMargin,affectsLineNumber:this._affectsLineNumber};this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._actual.fire(e)}}class Sk extends Tt{constructor(){super(),this._fastEmitter=this._register(new Gt),this.fastEvent=this._fastEmitter.event,this._slowEmitter=this._register(new Gt),this.slowEvent=this._slowEmitter.event,this._deferredCnt=0,this._deferredEvent=null}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(e=null){if(this._deferredCnt--,0===this._deferredCnt&&null!==this._deferredEvent){this._deferredEvent.rawContentChangedEvent.resultingSelection=e;const t=this._deferredEvent;this._deferredEvent=null,this._fastEmitter.fire(t),this._slowEmitter.fire(t)}}fire(e){this._deferredCnt>0?this._deferredEvent?this._deferredEvent=this._deferredEvent.merge(e):this._deferredEvent=e:(this._fastEmitter.fire(e),this._slowEmitter.fire(e))}}const xk=Of("editorOverviewRuler.bracketMatchForeground","#A0A0A0",C(800,"Overview ruler marker color for matching brackets."));class kk{constructor(e,t,i){this.position=e,this.brackets=t,this.options=i}}class Lk extends Tt{static{this.ID="editor.contrib.bracketMatchingController"}static get(e){return e.getContribution(Lk.ID)}constructor(e){super(),this._editor=e,this._lastBracketsData=[],this._lastVersionId=0,this._decorations=this._editor.createDecorationsCollection(),this._updateBracketsSoon=this._register(new wi((()=>this._updateBrackets()),50)),this._matchBrackets=this._editor.getOption(80),this._updateBracketsSoon.schedule(),this._register(e.onDidChangeCursorPosition((e=>{"never"!==this._matchBrackets&&this._updateBracketsSoon.schedule()}))),this._register(e.onDidChangeModelContent((e=>{this._updateBracketsSoon.schedule()}))),this._register(e.onDidChangeModel((e=>{this._lastBracketsData=[],this._updateBracketsSoon.schedule()}))),this._register(e.onDidChangeModelLanguageConfiguration((e=>{this._lastBracketsData=[],this._updateBracketsSoon.schedule()}))),this._register(e.onDidChangeConfiguration((e=>{e.hasChanged(80)&&(this._matchBrackets=this._editor.getOption(80),this._decorations.clear(),this._lastBracketsData=[],this._lastVersionId=0,this._updateBracketsSoon.schedule())}))),this._register(e.onDidBlurEditorWidget((()=>{this._updateBracketsSoon.schedule()}))),this._register(e.onDidFocusEditorWidget((()=>{this._updateBracketsSoon.schedule()})))}jumpToBracket(){if(!this._editor.hasModel())return;const e=this._editor.getModel(),t=this._editor.getSelections().map((t=>{const i=t.getStartPosition(),n=e.bracketPairs.matchBracket(i);let o=null;if(n)n[0].containsPosition(i)&&!n[1].containsPosition(i)?o=n[1].getStartPosition():n[1].containsPosition(i)&&(o=n[0].getStartPosition());else{const t=e.bracketPairs.findEnclosingBrackets(i);if(t)o=t[1].getStartPosition();else{const t=e.bracketPairs.findNextBracket(i);t&&t.range&&(o=t.range.getStartPosition())}}return o?new Zu(o.lineNumber,o.column,o.lineNumber,o.column):new Zu(i.lineNumber,i.column,i.lineNumber,i.column)}));this._editor.setSelections(t),this._editor.revealRange(t[0])}selectToBracket(e){if(!this._editor.hasModel())return;const t=this._editor.getModel(),i=[];this._editor.getSelections().forEach((n=>{const o=n.getStartPosition();let s=t.bracketPairs.matchBracket(o);if(!s&&(s=t.bracketPairs.findEnclosingBrackets(o),!s)){const e=t.bracketPairs.findNextBracket(o);e&&e.range&&(s=t.bracketPairs.matchBracket(e.range.getStartPosition()))}let r=null,a=null;if(s){s.sort(Yu.compareRangesUsingStarts);const[t,i]=s;if(r=e?t.getStartPosition():t.getEndPosition(),a=e?i.getEndPosition():i.getStartPosition(),i.containsPosition(o)){const e=r;r=a,a=e}}r&&a&&i.push(new Zu(r.lineNumber,r.column,a.lineNumber,a.column))})),i.length>0&&(this._editor.setSelections(i),this._editor.revealRange(i[0]))}removeBrackets(e){if(!this._editor.hasModel())return;const t=this._editor.getModel();this._editor.getSelections().forEach((i=>{const n=i.getPosition();let o=t.bracketPairs.matchBracket(n);o||(o=t.bracketPairs.findEnclosingBrackets(n)),o&&(this._editor.pushUndoStop(),this._editor.executeEdits(e,[{range:o[0],text:""},{range:o[1],text:""}]),this._editor.pushUndoStop())}))}static{this._DECORATION_OPTIONS_WITH_OVERVIEW_RULER=_k.register({description:"bracket-match-overview",stickiness:1,className:"bracket-match",overviewRuler:{color:ow(xk),position:hg.Center}})}static{this._DECORATION_OPTIONS_WITHOUT_OVERVIEW_RULER=_k.register({description:"bracket-match-no-overview",stickiness:1,className:"bracket-match"})}_updateBrackets(){if("never"===this._matchBrackets)return;this._recomputeBrackets();const e=[];let t=0;for(const i of this._lastBracketsData){const n=i.brackets;n&&(e[t++]={range:n[0],options:i.options},e[t++]={range:n[1],options:i.options})}this._decorations.set(e)}_recomputeBrackets(){if(!this._editor.hasModel()||!this._editor.hasWidgetFocus())return this._lastBracketsData=[],void(this._lastVersionId=0);const e=this._editor.getSelections();if(e.length>100)return this._lastBracketsData=[],void(this._lastVersionId=0);const t=this._editor.getModel(),i=t.getVersionId();let n=[];this._lastVersionId===i&&(n=this._lastBracketsData);const o=[];let s=0;for(let t=0,i=e.length;t1&&o.sort(sh.compare);const r=[];let a=0,l=0;const d=n.length;for(let e=0,i=o.length;e!0,Dk=()=>!1,Nk=e=>" "===e||"\t"===e;class Mk{static shouldRecreate(e){return e.hasChanged(165)||e.hasChanged(148)||e.hasChanged(45)||e.hasChanged(85)||e.hasChanged(88)||e.hasChanged(89)||e.hasChanged(10)||e.hasChanged(11)||e.hasChanged(15)||e.hasChanged(13)||e.hasChanged(14)||e.hasChanged(20)||e.hasChanged(145)||e.hasChanged(141)||e.hasChanged(59)||e.hasChanged(104)||e.hasChanged(147)||e.hasChanged(93)}constructor(e,t,i,n){this.languageConfigurationService=n,this._cursorMoveConfigurationBrand=void 0,this._languageId=e;const o=i.options,s=o.get(165),r=o.get(59);this.readOnly=o.get(104),this.tabSize=t.tabSize,this.indentSize=t.indentSize,this.insertSpaces=t.insertSpaces,this.stickyTabStops=o.get(132),this.lineHeight=r.lineHeight,this.typicalHalfwidthCharacterWidth=r.typicalHalfwidthCharacterWidth,this.pageSize=Math.max(1,Math.floor(s.height/this.lineHeight)-2),this.useTabStops=o.get(145),this.trimWhitespaceOnDelete=o.get(141),this.wordSeparators=o.get(148),this.emptySelectionClipboard=o.get(45),this.copyWithSyntaxHighlighting=o.get(31),this.multiCursorMergeOverlapping=o.get(85),this.multiCursorPaste=o.get(88),this.multiCursorLimit=o.get(89),this.autoClosingBrackets=o.get(10),this.autoClosingComments=o.get(11),this.autoClosingQuotes=o.get(15),this.autoClosingDelete=o.get(13),this.autoClosingOvertype=o.get(14),this.autoSurround=o.get(20),this.autoIndent=o.get(16),this.wordSegmenterLocales=o.get(147),this.overtypeOnPaste=o.get(93),this.surroundingPairs={},this._electricChars=null,this.shouldAutoCloseBefore={quote:this._getShouldAutoClose(e,this.autoClosingQuotes,!0),comment:this._getShouldAutoClose(e,this.autoClosingComments,!1),bracket:this._getShouldAutoClose(e,this.autoClosingBrackets,!1)},this.autoClosingPairs=this.languageConfigurationService.getLanguageConfiguration(e).getAutoClosingPairs();const a=this.languageConfigurationService.getLanguageConfiguration(e).getSurroundingPairs();if(a)for(const e of a)this.surroundingPairs[e.open]=e.close;const l=this.languageConfigurationService.getLanguageConfiguration(e).comments;this.blockCommentStartToken=l?.blockCommentStartToken??null}get electricChars(){if(!this._electricChars){this._electricChars={};const e=this.languageConfigurationService.getLanguageConfiguration(this._languageId).electricCharacter?.getElectricCharacters();if(e)for(const t of e)this._electricChars[t]=!0}return this._electricChars}get inputMode(){return Ek.getInputMode()}onElectricCharacter(e,t,i){const n=zg(t,i-1),o=this.languageConfigurationService.getLanguageConfiguration(n.languageId).electricCharacter;return o?o.onElectricCharacter(e,n,i-n.firstCharOffset):null}normalizeIndentation(e){return Ig(e,this.indentSize,this.insertSpaces)}_getShouldAutoClose(e,t,i){switch(t){case"beforeWhitespace":return Nk;case"languageDefined":return this._getLanguageDefinedShouldAutoClose(e,i);case"always":return Ik;case"never":return Dk}}_getLanguageDefinedShouldAutoClose(e,t){const i=this.languageConfigurationService.getLanguageConfiguration(e).getAutoCloseBeforeSet(t);return e=>-1!==i.indexOf(e)}visibleColumnFromColumn(e,t){return Eg.visibleColumnFromColumn(e.getLineContent(t.lineNumber),t.column,this.tabSize)}columnFromVisibleColumn(e,t,i){const n=Eg.columnFromVisibleColumn(e.getLineContent(t),i,this.tabSize),o=e.getLineMinColumn(t);if(ns?s:n}}class Tk{static fromModelState(e){return new Rk(e)}static fromViewState(e){return new Ak(e)}static fromModelSelection(e){const t=Zu.liftSelection(e),i=new Ok(Yu.fromPositions(t.getSelectionStart()),0,0,t.getPosition(),0);return Tk.fromModelState(i)}static fromModelSelections(e){const t=[];for(let i=0,n=e.length;io,l=n>s,d=ns)continue;if(pn)continue;if(g0&&n--,Bk.columnSelect(e,t,i.fromViewLineNumber,i.fromViewVisualColumn,i.toViewLineNumber,n)}static columnSelectRight(e,t,i){let n=0;const o=Math.min(i.fromViewLineNumber,i.toViewLineNumber),s=Math.max(i.fromViewLineNumber,i.toViewLineNumber);for(let i=o;i<=s;i++){const o=t.getLineMaxColumn(i),s=e.visibleColumnFromColumn(t,new sh(i,o));n=Math.max(n,s)}let r=i.toViewVisualColumn;return ro&&(s=new sh(o,e.getLineMaxColumn(o)));const r=Yu.fromPositions(i,s);t.addTrackedEditOperation(r,this._text)}computeCursorState(e,t){const i=t.getInverseEditOperations()[0].range;return Zu.fromPositions(i.getEndPosition())}}class Vk{constructor(e,t){this._range=e,this._text=t}getEditOperations(e,t){t.addTrackedEditOperation(this._range,this._text)}computeCursorState(e,t){const i=t.getInverseEditOperations()[0].range;return Zu.fromRange(i,0)}}class zk{constructor(e,t,i=!1){this._range=e,this._text=t,this.insertsAutoWhitespace=i}getEditOperations(e,t){t.addTrackedEditOperation(this._range,this._text)}computeCursorState(e,t){const i=t.getInverseEditOperations()[0].range;return Zu.fromPositions(i.getStartPosition())}}class Uk{constructor(e,t,i,n,o=!1){this._range=e,this._text=t,this._columnDeltaOffset=n,this._lineNumberDeltaOffset=i,this.insertsAutoWhitespace=o}getEditOperations(e,t){t.addTrackedEditOperation(this._range,this._text)}computeCursorState(e,t){const i=t.getInverseEditOperations()[0].range;return Zu.fromPositions(i.getEndPosition().delta(this._lineNumberDeltaOffset,this._columnDeltaOffset))}}class jk{constructor(e){this._range=e}getEditOperations(e,t){const i=e.getValueInRange(this._range),n=this._range.getEndPosition(),o=n.lineNumber;let s=qk(e,n,i.length);s.lineNumber>o&&(s=new sh(o,e.getLineMaxColumn(o)));const r=Yu.fromPositions(n,s);t.addTrackedEditOperation(r,"")}computeCursorState(e,t){const i=t.getInverseEditOperations()[0].range;return Zu.fromPositions(i.getEndPosition())}}class Kk{constructor(e,t,i,n=!1){this._range=e,this._text=t,this._initialSelection=i,this._forceMoveMarkers=n,this._selectionId=null}getEditOperations(e,t){t.addTrackedEditOperation(this._range,this._text,this._forceMoveMarkers),this._selectionId=t.trackSelection(this._initialSelection)}computeCursorState(e,t){return t.getTrackedSelection(this._selectionId)}}function qk(e,t,i){if(i<0)throw new Error("Unexpected negative delta");const n=e.getLineCount();let o=new sh(n,e.getLineMaxColumn(n));for(let s=t.lineNumber;s<=n;s++)if(s===t.lineNumber){const n=i-e.getLineMaxColumn(t.lineNumber)+t.column;if(n<=0){o=new sh(t.lineNumber,t.column+i);break}i=n}else{const t=i-e.getLineMaxColumn(s);if(t<=0){o=new sh(s,i);break}i=t}return o}class $k{static whitespaceVisibleColumn(e,t,i){const n=e.length;let o=0,s=-1,r=-1;for(let a=0;ae.getLineMinColumn(t.lineNumber))return t.delta(void 0,-pn(e.getLineContent(t.lineNumber),t.column-1));if(t.lineNumber>1){const i=t.lineNumber-1;return new sh(i,e.getLineMaxColumn(i))}return t}static leftPositionAtomicSoftTabs(e,t,i){if(t.column<=e.getLineIndentColumn(t.lineNumber)){const n=e.getLineMinColumn(t.lineNumber),o=e.getLineContent(t.lineNumber),s=$k.atomicPosition(o,t.column-1,i,0);if(-1!==s&&s+1>=n)return new sh(t.lineNumber,s+1)}return this.leftPosition(e,t)}static left(e,t,i){const n=e.stickyTabStops?Yk.leftPositionAtomicSoftTabs(t,i,e.tabSize):Yk.leftPosition(t,i);return new Gk(n.lineNumber,n.column,0)}static moveLeft(e,t,i,n,o){let s,r;if(i.hasSelection()&&!n)s=i.selection.startLineNumber,r=i.selection.startColumn;else{const n=i.position.delta(void 0,-(o-1)),a=t.normalizePosition(Yk.clipPositionColumn(n,t),0),l=Yk.left(e,t,a);s=l.lineNumber,r=l.column}return i.move(n,s,r,0)}static clipPositionColumn(e,t){return new sh(e.lineNumber,Yk.clipRange(e.column,t.getLineMinColumn(e.lineNumber),t.getLineMaxColumn(e.lineNumber)))}static clipRange(e,t,i){return ei?i:e}static rightPosition(e,t,i){return id?(i=d,n=r?t.getLineMaxColumn(i):Math.min(t.getLineMaxColumn(i),n)):n=e.columnFromVisibleColumn(t,i,l),o=u?0:l-Eg.visibleColumnFromColumn(t.getLineContent(i),n,e.tabSize),void 0!==a){const e=new sh(i,n),s=t.normalizePosition(e,a);o+=n-s.column,i=s.lineNumber,n=s.column}return new Gk(i,n,o)}static down(e,t,i,n,o,s,r){return this.vertical(e,t,i,n,o,i+s,r,4)}static moveDown(e,t,i,n,o){let s,r;i.hasSelection()&&!n?(s=i.selection.endLineNumber,r=i.selection.endColumn):(s=i.position.lineNumber,r=i.position.column);let a,l=0;do{if(a=Yk.down(e,t,s+l,r,i.leftoverVisibleColumns,o,!0),t.normalizePosition(new sh(a.lineNumber,a.column),2).lineNumber>s)break}while(l++<10&&s+l1&&this._isBlankLine(t,o);)o--;for(;o>1&&!this._isBlankLine(t,o);)o--;return i.move(n,o,t.getLineMinColumn(o),0)}static moveToNextBlankLine(e,t,i,n){const o=t.getLineCount();let s=i.position.lineNumber;for(;s0,i=t.getLineFirstNonWhitespaceColumn(o.lineNumber);if(e&&i>0)return new Yu(o.lineNumber,i,n.lineNumber,n.column)}return new Yu(o.lineNumber,o.column,n.lineNumber,n.column)}static isAutoClosingPairDelete(e,t,i,n,o,s,r){if("never"===t&&"never"===i)return!1;if("never"===e)return!1;for(let a=0,l=s.length;a=c.length+1)return!1;const h=c.charAt(d.column-2),u=n.get(h);if(!u)return!1;if(Fk(h)){if("never"===i)return!1}else if("never"===t)return!1;const g=c.charAt(d.column-1);let p=!1;for(const e of u)e.open===h&&e.close===g&&(p=!0);if(!p)return!1;if("auto"===e){let e=!1;for(let t=0,i=r.length;t1){const e=t.getLineContent(n.lineNumber),o=qi(e),s=-1===o?e.length+1:o+1;if(n.column<=s){const e=i.visibleColumnFromColumn(t,n),o=Eg.prevIndentTabStop(e,i.indentSize),s=i.columnFromVisibleColumn(t,n.lineNumber,o);return new Yu(n.lineNumber,s,n.lineNumber,n.column)}}return Yu.fromPositions(Zk.getPositionAfterDeleteLeft(n,t),n)}static getPositionAfterDeleteLeft(e,t){if(e.column>1){const i=function(e,t){if(0===e)return 0;const i=function(e,t){const i=new hn(t,e);let n=i.prevCodePoint();for(;In(n)||65039===n||8419===n;){if(0===i.offset)return;n=i.prevCodePoint()}if(!yn(n))return;let o=i.offset;return o>0&&8205===i.prevCodePoint()&&(o=i.offset),o}(e,t);if(void 0!==i)return i;const n=new hn(t,e);return n.prevCodePoint(),n.offset}(e.column-1,t.getLineContent(e.lineNumber));return e.with(void 0,i+1)}if(e.lineNumber>1){const i=e.lineNumber-1;return new sh(i,t.getLineMaxColumn(i))}return e}static cut(e,t,i){const n=[];let o=null;i.sort(((e,t)=>sh.compare(e.getStartPosition(),t.getEndPosition())));for(let s=0,r=i.length;s1&&o?.endLineNumber!==e.lineNumber?(i=e.lineNumber-1,a=t.getLineMaxColumn(e.lineNumber-1),l=e.lineNumber,d=t.getLineMaxColumn(e.lineNumber)):(i=e.lineNumber,a=1,l=e.lineNumber,d=t.getLineMaxColumn(e.lineNumber));const c=new Yu(i,a,l,d);o=c,c.isEmpty()?n[s]=null:n[s]=new Wk(c,"")}else n[s]=null;else n[s]=new Wk(r,"")}return new Pk(0,n,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}}class Qk{static _createWord(e,t,i,n,o){return{start:n,end:o,wordType:t,nextCharClass:i}}static _createIntlWord(e,t){return{start:e.index,end:e.index+e.segment.length,wordType:1,nextCharClass:t}}static _findPreviousWordOnLine(e,t,i){const n=t.getLineContent(i.lineNumber);return this._doFindPreviousWordOnLine(n,e,i)}static _doFindPreviousWordOnLine(e,t,i){let n=0;const o=t.findPrevIntlWordBeforeOrAtOffset(e,i.column-2);for(let s=i.column-2;s>=0;s--){const i=e.charCodeAt(s),r=t.get(i);if(o&&s===o.index)return this._createIntlWord(o,r);if(0===r){if(2===n)return this._createWord(e,n,r,s+1,this._findEndOfWord(e,t,n,s+1));n=1}else if(2===r){if(1===n)return this._createWord(e,n,r,s+1,this._findEndOfWord(e,t,n,s+1));n=2}else if(1===r&&0!==n)return this._createWord(e,n,r,s+1,this._findEndOfWord(e,t,n,s+1))}return 0!==n?this._createWord(e,n,1,0,this._findEndOfWord(e,t,n,0)):null}static _findEndOfWord(e,t,i,n){const o=t.findNextIntlWordAtOrAfterOffset(e,n),s=e.length;for(let r=n;r=0;s--){const n=e.charCodeAt(s),r=t.get(n);if(o&&s===o.index)return s;if(1===r)return s+1;if(1===i&&2===r)return s+1;if(2===i&&0===r)return s+1}return 0}static moveWordLeft(e,t,i,n,o){let s=i.lineNumber,r=i.column;1===r&&s>1&&(s-=1,r=t.getLineMaxColumn(s));let a=Qk._findPreviousWordOnLine(e,t,new sh(s,r));if(0===n)return new sh(s,a?a.start+1:1);if(1===n)return!o&&a&&2===a.wordType&&a.end-a.start==1&&0===a.nextCharClass&&(a=Qk._findPreviousWordOnLine(e,t,new sh(s,a.start+1))),new sh(s,a?a.start+1:1);if(3===n){for(;a&&2===a.wordType;)a=Qk._findPreviousWordOnLine(e,t,new sh(s,a.start+1));return new sh(s,a?a.start+1:1)}return a&&r<=a.end+1&&(a=Qk._findPreviousWordOnLine(e,t,new sh(s,a.start+1))),new sh(s,a?a.end+1:1)}static _moveWordPartLeft(e,t){const i=t.lineNumber,n=e.getLineMaxColumn(i);if(1===t.column)return i>1?new sh(i-1,e.getLineMaxColumn(i-1)):t;const o=e.getLineContent(i);for(let e=t.column-1;e>1;e--){const t=o.charCodeAt(e-2),s=o.charCodeAt(e-1);if(95===t&&95!==s)return new sh(i,e);if(45===t&&45!==s)return new sh(i,e);if((en(t)||Ji(t))&&tn(s))return new sh(i,e);if(tn(t)&&tn(s)&&e+1=a.start+1&&(a=Qk._findNextWordOnLine(e,t,new sh(o,a.end+1))),s=a?a.start+1:t.getLineMaxColumn(o);return new sh(o,s)}static _moveWordPartRight(e,t){const i=t.lineNumber,n=e.getLineMaxColumn(i);if(t.column===n)return i1?l=1:(a--,l=n.getLineMaxColumn(a)):(d&&l<=d.end+1&&(d=Qk._findPreviousWordOnLine(i,n,new sh(a,d.start+1))),d?l=d.end+1:l>1?l=1:(a--,l=n.getLineMaxColumn(a))),new Yu(a,l,r.lineNumber,r.column)}static deleteInsideWord(e,t,i){if(!i.isEmpty())return i;const n=new sh(i.positionLineNumber,i.positionColumn);return this._deleteInsideWordWhitespace(t,n)||this._deleteInsideWordDetermineDeleteRange(e,t,n)}static _charAtIsWhitespace(e,t){const i=e.charCodeAt(t);return 32===i||9===i}static _deleteInsideWordWhitespace(e,t){const i=e.getLineContent(t.lineNumber),n=i.length;if(0===n)return null;let o=Math.max(t.column-2,0);if(!this._charAtIsWhitespace(i,o))return null;let s=Math.min(t.column-1,n-1);if(!this._charAtIsWhitespace(i,s))return null;for(;o>0&&this._charAtIsWhitespace(i,o-1);)o--;for(;s+11?new Yu(i.lineNumber-1,t.getLineMaxColumn(i.lineNumber-1),i.lineNumber,1):i.lineNumbere.start+1<=i.column&&i.column<=e.end+1,r=(e,t)=>(e=Math.min(e,i.column),t=Math.max(t,i.column),new Yu(i.lineNumber,e,i.lineNumber,t)),a=e=>{let t=e.start+1,i=e.end+1,s=!1;for(;i-11&&this._charAtIsWhitespace(n,t-2);)t--;return r(t,i)},l=Qk._findPreviousWordOnLine(e,t,i);if(l&&s(l))return a(l);const d=Qk._findNextWordOnLine(e,t,i);return d&&s(d)?a(d):l&&d?r(l.end+1,d.start+1):l?r(l.start+1,l.end+1):d?r(d.start+1,d.end+1):r(1,o+1)}static _deleteWordPartLeft(e,t){if(!t.isEmpty())return t;const i=t.getPosition(),n=Qk._moveWordPartLeft(e,i);return new Yu(i.lineNumber,i.column,n.lineNumber,n.column)}static _findFirstNonWhitespaceChar(e,t){const i=e.length;for(let n=t;n=h.start+1&&(h=Qk._findNextWordOnLine(i,n,new sh(a,h.end+1))),h?l=h.start+1:lBoolean(e)))}class eL{static addCursorDown(e,t,i){const n=[];let o=0;for(let s=0,r=t.length;st&&(i=t,n=e.model.getLineMaxColumn(i)),Tk.fromModelState(new Ok(new Yu(s.lineNumber,1,i,n),2,0,new sh(i,n),0))}const a=t.modelState.selectionStart.getStartPosition().lineNumber;if(s.lineNumbera){const i=e.getLineCount();let n=r.lineNumber+1,o=1;return n>i&&(n=i,o=e.getLineMaxColumn(n)),Tk.fromViewState(t.viewState.move(!0,n,o,0))}{const e=t.modelState.selectionStart.getEndPosition();return Tk.fromModelState(t.modelState.move(!0,e.lineNumber,e.column,0))}}static word(e,t,i,n){const o=e.model.validatePosition(n);return Tk.fromModelState(Qk.word(e.cursorConfig,e.model,t.modelState,i,o))}static cancelSelection(e,t){if(!t.modelState.hasSelection())return new Tk(t.modelState,t.viewState);const i=t.viewState.position.lineNumber,n=t.viewState.position.column;return Tk.fromViewState(new Ok(new Yu(i,n,i,n),0,0,new sh(i,n),0))}static moveTo(e,t,i,n,o){if(i){if(1===t.modelState.selectionStartKind)return this.word(e,t,i,n);if(2===t.modelState.selectionStartKind)return this.line(e,t,i,n,o)}const s=e.model.validatePosition(n),r=o?e.coordinatesConverter.validateViewPosition(new sh(o.lineNumber,o.column),s):e.coordinatesConverter.convertModelPositionToViewPosition(s);return Tk.fromViewState(t.viewState.move(i,r.lineNumber,r.column,0))}static simpleMove(e,t,i,n,o,s){switch(i){case 0:return 4===s?this._moveHalfLineLeft(e,t,n):this._moveLeft(e,t,n,o);case 1:return 4===s?this._moveHalfLineRight(e,t,n):this._moveRight(e,t,n,o);case 2:return 2===s?this._moveUpByViewLines(e,t,n,o):this._moveUpByModelLines(e,t,n,o);case 3:return 2===s?this._moveDownByViewLines(e,t,n,o):this._moveDownByModelLines(e,t,n,o);case 4:return 2===s?t.map((t=>Tk.fromViewState(Yk.moveToPrevBlankLine(e.cursorConfig,e,t.viewState,n)))):t.map((t=>Tk.fromModelState(Yk.moveToPrevBlankLine(e.cursorConfig,e.model,t.modelState,n))));case 5:return 2===s?t.map((t=>Tk.fromViewState(Yk.moveToNextBlankLine(e.cursorConfig,e,t.viewState,n)))):t.map((t=>Tk.fromModelState(Yk.moveToNextBlankLine(e.cursorConfig,e.model,t.modelState,n))));case 6:return this._moveToViewMinColumn(e,t,n);case 7:return this._moveToViewFirstNonWhitespaceColumn(e,t,n);case 8:return this._moveToViewCenterColumn(e,t,n);case 9:return this._moveToViewMaxColumn(e,t,n);case 10:return this._moveToViewLastNonWhitespaceColumn(e,t,n);default:return null}}static viewportMove(e,t,i,n,o){const s=e.getCompletelyVisibleViewRange(),r=e.coordinatesConverter.convertViewRangeToModelRange(s);switch(i){case 11:{const i=this._firstLineNumberInRange(e.model,r,o),s=e.model.getLineFirstNonWhitespaceColumn(i);return[this._moveToModelPosition(e,t[0],n,i,s)]}case 13:{const i=this._lastLineNumberInRange(e.model,r,o),s=e.model.getLineFirstNonWhitespaceColumn(i);return[this._moveToModelPosition(e,t[0],n,i,s)]}case 12:{const i=Math.round((r.startLineNumber+r.endLineNumber)/2),o=e.model.getLineFirstNonWhitespaceColumn(i);return[this._moveToModelPosition(e,t[0],n,i,o)]}case 14:{const i=[];for(let o=0,r=t.length;oi.endLineNumber-1?i.endLineNumber-1:o{const o=e.getTextDirection(t.viewState.position.lineNumber)===gg.RTL;return Tk.fromViewState(o?Yk.moveRight(e.cursorConfig,e,t.viewState,i,n):Yk.moveLeft(e.cursorConfig,e,t.viewState,i,n))}))}static _moveHalfLineLeft(e,t,i){const n=[];for(let o=0,s=t.length;o{const o=e.getTextDirection(t.viewState.position.lineNumber)===gg.RTL;return Tk.fromViewState(o?Yk.moveLeft(e.cursorConfig,e,t.viewState,i,n):Yk.moveRight(e.cursorConfig,e,t.viewState,i,n))}))}static _moveHalfLineRight(e,t,i){const n=[];for(let o=0,s=t.length;o(this.model.tokenization.forceTokenization(e),zg(this.model.tokenization.getLineTokens(e),this.model.getLineMaxColumn(e)-1)))(n);if(t.languageId!==o.languageId)return i;const s=o.toIViewLineTokens();return this.indentationLineProcessor.getProcessedTokens(s)}}class oL{constructor(e,t){this.model=e,this.languageConfigurationService=t}getProcessedLine(e,t){this.model.tokenization.forceTokenization?.(e);const i=this.model.tokenization.getLineTokens(e);let n=this.getProcessedTokens(i).getLineContent();return void 0!==t&&(n=((e,t)=>{const i=$i(e);return t+e.substring(i.length)})(n,t)),n}getProcessedTokens(e){const t=e.getLanguageId(0),i=this.languageConfigurationService.getLanguageConfiguration(t).bracketsNew.getBracketRegExp({global:!0}),n=[];return e.forEach((t=>{const o=e.getStandardTokenType(t);let s=e.getTokenText(t);(e=>2===e||3===e||1===e)(o)&&(s=s.replace(i,""));const r=e.getMetadata(t);n.push({text:s,metadata:r})})),cS.createFromTextAndMetadata(n,e.languageIdCodec)}}function sL(e,t){e.tokenization.forceTokenization(t.lineNumber);const i=e.tokenization.getLineTokens(t.lineNumber),n=zg(i,t.column-1),o=0===n.firstCharOffset,s=i.getLanguageId(0)===n.languageId;return!o&&!s}function rL(e,t,i,n){t.tokenization.forceTokenization(i.startLineNumber);const o=t.getLanguageIdAtPosition(i.startLineNumber,i.startColumn),s=n.getLanguageConfiguration(o);if(!s)return null;const r=new nL(t,n).getProcessedTokenContextAroundRange(i),a=r.previousLineProcessedTokens.getLineContent(),l=r.beforeRangeProcessedTokens.getLineContent(),d=r.afterRangeProcessedTokens.getLineContent(),c=s.onEnter(e,a,l,d);if(!c)return null;const h=c.indentAction;let u=c.appendText;const g=c.removeText||0;u?h===Fg.Indent&&(u="\t"+u):u=h===Fg.Indent||h===Fg.IndentOutdent?"\t":"";let p=Jp(t,i.startLineNumber,i.startColumn);return g&&(p=p.substring(0,p.length-g)),{indentAction:h,appendText:u,removeText:g,indentation:p}}var aL;const lL=Object.create(null);function dL(e,t){if(t<=0)return"";lL[e]||(lL[e]=["",e]);const i=lL[e];for(let n=i.length;n<=t;n++)i[n]=i[n-1]+e;return i[t]}let cL=aL=class{static unshiftIndent(e,t,i,n,o){const s=Eg.visibleColumnFromColumn(e,t,i);if(o){const e=dL(" ",n);return dL(e,Eg.prevIndentTabStop(s,n)/n)}return dL("\t",Eg.prevRenderTabStop(s,i)/i)}static shiftIndent(e,t,i,n,o){const s=Eg.visibleColumnFromColumn(e,t,i);if(o){const e=dL(" ",n);return dL(e,Eg.nextIndentTabStop(s,n)/n)}return dL("\t",Eg.nextRenderTabStop(s,i)/i)}constructor(e,t,i){this._languageConfigurationService=i,this._opts=t,this._selection=e,this._selectionId=null,this._useLastEditRangeForCursorEndPosition=!1,this._selectionStartColumnStaysPut=!1}_addEditOperation(e,t,i){this._useLastEditRangeForCursorEndPosition?e.addTrackedEditOperation(t,i):e.addEditOperation(t,i)}getEditOperations(e,t){const i=this._selection.startLineNumber;let n=this._selection.endLineNumber;1===this._selection.endColumn&&i!==n&&(n-=1);const{tabSize:o,indentSize:s,insertSpaces:r}=this._opts,a=i===n;if(this._opts.useTabStops){this._selection.isEmpty()&&/^\s*$/.test(e.getLineContent(i))&&(this._useLastEditRangeForCursorEndPosition=!0);let l=0,d=0;for(let c=i;c<=n;c++,l=d){d=0;const n=e.getLineContent(c);let h,u=qi(n);if((!this._opts.isUnshift||0!==n.length&&0!==u)&&(a||this._opts.isUnshift||0!==n.length)){if(-1===u&&(u=n.length),c>1&&Eg.visibleColumnFromColumn(n,u+1,o)%s!=0&&e.tokenization.isCheapToTokenize(c-1)){const t=rL(this._opts.autoIndent,e,new Yu(c-1,e.getLineMaxColumn(c-1),c-1,e.getLineMaxColumn(c-1)),this._languageConfigurationService);if(t){if(d=l,t.appendText)for(let e=0,i=t.appendText.length;e=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([function(e,t){return function(i,n){t(i,n,e)}}(2,Yp)],cL);class hL{constructor(e,t,i){this._range=e,this._charBeforeSelection=t,this._charAfterSelection=i}getEditOperations(e,t){t.addTrackedEditOperation(new Yu(this._range.startLineNumber,this._range.startColumn,this._range.startLineNumber,this._range.startColumn),this._charBeforeSelection),t.addTrackedEditOperation(new Yu(this._range.endLineNumber,this._range.endColumn,this._range.endLineNumber,this._range.endColumn),this._charAfterSelection||null)}computeCursorState(e,t){const i=t.getInverseEditOperations(),n=i[0].range,o=i[1].range;return new Zu(n.endLineNumber,n.endColumn,o.endLineNumber,o.endColumn-this._charAfterSelection.length)}}class uL{constructor(e,t,i){this._position=e,this._text=t,this._charAfter=i}getEditOperations(e,t){t.addTrackedEditOperation(new Yu(this._position.lineNumber,this._position.column,this._position.lineNumber,this._position.column),this._text+this._charAfter)}computeCursorState(e,t){const i=t.getInverseEditOperations()[0].range;return new Zu(i.endLineNumber,i.startColumn,i.endLineNumber,i.endColumn-this._charAfter.length)}}function gL(e,t,i,n=!0,o){if(e<4)return null;const s=o.getLanguageConfiguration(t.tokenization.getLanguageId()).indentRulesSupport;if(!s)return null;const r=new iL(t,s,o);if(i<=1)return{indentation:"",action:null};for(let e=i-1;e>0&&""===t.getLineContent(e);e--)if(1===e)return{indentation:"",action:null};const a=function(e,t,i){const n=e.tokenization.getLanguageIdAtPosition(t,0);if(t>1){let o,s=-1;for(o=t-1;o>=1;o--){if(e.tokenization.getLanguageIdAtPosition(o,0)!==n)return s;const t=e.getLineContent(o);if(!i.shouldIgnore(o)&&!/^\s+$/.test(t)&&""!==t)return o;s=o}}return-1}(t,i,r);if(a<0)return null;if(a<1)return{indentation:"",action:null};if(r.shouldIncrease(a)||r.shouldIndentNextLine(a))return{indentation:$i(t.getLineContent(a)),action:Fg.Indent,line:a};if(r.shouldDecrease(a))return{indentation:$i(t.getLineContent(a)),action:null,line:a};{if(1===a)return{indentation:$i(t.getLineContent(a)),action:null,line:a};const e=a-1,i=s.getIndentMetadata(t.getLineContent(e));if(!(3&i)&&4&i){let i=0;for(let t=e-1;t>0;t--)if(!r.shouldIndentNextLine(t)){i=t;break}return{indentation:$i(t.getLineContent(i+1)),action:null,line:i+1}}if(n)return{indentation:$i(t.getLineContent(a)),action:null,line:a};for(let e=a;e>0;e--){if(r.shouldIncrease(e))return{indentation:$i(t.getLineContent(e)),action:Fg.Indent,line:e};if(r.shouldIndentNextLine(e)){let i=0;for(let t=e-1;t>0;t--)if(!r.shouldIndentNextLine(e)){i=t;break}return{indentation:$i(t.getLineContent(i+1)),action:null,line:i+1}}if(r.shouldDecrease(e))return{indentation:$i(t.getLineContent(e)),action:null,line:e}}return{indentation:$i(t.getLineContent(1)),action:null,line:1}}}function pL(e,t,i,n,o,s){if(e<4)return null;const r=s.getLanguageConfiguration(i);if(!r)return null;const a=s.getLanguageConfiguration(i).indentRulesSupport;if(!a)return null;const l=new iL(t,a,s),d=gL(e,t,n,void 0,s);if(d){const i=d.line;if(void 0!==i){let s=!0;for(let e=i;ee.getLineCount()?null:n.getIndentMetadata(e.getLineContent(t)):null}class fL{static getEdits(e,t,i,n,o){if(!o&&this._isAutoIndentType(e,t,i)){const o=[];for(const s of i){const i=this._findActualIndentationForSelection(e,t,s,n);if(null===i)return;o.push({selection:s,indentation:i})}const s=bL.getAutoClosingPairClose(e,t,i,n,!1);return this._getIndentationAndAutoClosingPairEdits(e,t,o,n,s)}}static _isAutoIndentType(e,t,i){if(e.autoIndent<4)return!1;for(let e=0,n=i.length;e0){const a=t.getLineContent(p);if(l.shouldIndentNextLine(a)&&l.shouldIncrease(g)){const a=gL(r,t,i.startLineNumber,!1,s),l=a?.indentation;if(void 0!==l){const s=$i(t.getLineContent(i.startLineNumber)),r=o.shiftIndent(l)===s,a=/^\s*$/.test(u),d=e.autoClosingPairs.autoClosingPairsOpenByEnd.get(n),c=d&&d.length>0;if(r&&c&&a)return l}}}return null}(e,t,i,n,{shiftIndent:t=>BL(e,t),unshiftIndent:t=>WL(e,t)},e.languageConfigurationService);if(null===o)return null;const s=Jp(t,i.startLineNumber,i.startColumn);return o===e.normalizeIndentation(s)?null:o}static _getIndentationAndAutoClosingPairEdits(e,t,i,n,o){const s=i.map((({selection:i,indentation:s})=>{if(null!==o){const r=this._getEditFromIndentationAndSelection(e,t,s,i,n,!1);return new ML(r,i,n,o)}{const o=this._getEditFromIndentationAndSelection(e,t,s,i,n,!0);return FL(o.range,o.text,!1)}}));return new Pk(4,s,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}static _getEditFromIndentationAndSelection(e,t,i,n,o,s=!0){const r=n.startLineNumber,a=t.getLineFirstNonWhitespaceColumn(r);let l=e.normalizeIndentation(i);return 0!==a&&(l+=t.getLineContent(r).substring(a-1,n.startColumn-1)),l+=s?o:"",{range:new Yu(r,1,n.endLineNumber,n.endColumn),text:l}}}class _L{static getEdits(e,t,i,n,o,s){if(PL(t,i,n,o,s))return this._runAutoClosingOvertype(e,n,s)}static _runAutoClosingOvertype(e,t,i){const n=[];for(let e=0,o=t.length;enew Wk(new Yu(e.positionLineNumber,e.positionColumn,e.positionLineNumber,e.positionColumn+1),"",!1)));return new Pk(4,e,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}}class bL{static getEdits(e,t,i,n,o,s){if(!s){const s=this.getAutoClosingPairClose(e,t,i,n,o);if(null!==s)return this._runAutoClosingOpenCharType(i,n,o,s)}}static _runAutoClosingOpenCharType(e,t,i,n){const o=[];for(let s=0,r=e.length;s{const t=e.getPosition();return o?{lineNumber:t.lineNumber,beforeColumn:t.column-n.length,afterColumn:t.column}:{lineNumber:t.lineNumber,beforeColumn:t.column,afterColumn:t.column}})),r=this._findAutoClosingPairOpen(e,t,s.map((e=>new sh(e.lineNumber,e.beforeColumn))),n);if(!r)return null;let a,l;if(Fk(n)?(a=e.autoClosingQuotes,l=e.shouldAutoCloseBefore.quote):e.blockCommentStartToken&&r.open.includes(e.blockCommentStartToken)?(a=e.autoClosingComments,l=e.shouldAutoCloseBefore.comment):(a=e.autoClosingBrackets,l=e.shouldAutoCloseBefore.bracket),"never"===a)return null;const d=this._findContainedAutoClosingPair(e,r),c=d?d.close:"";let h=!0;for(const i of s){const{lineNumber:o,beforeColumn:s,afterColumn:d}=i,u=t.getLineContent(o),g=u.substring(0,s-1),p=u.substring(d-1);if(p.startsWith(c)||(h=!1),p.length>0){const t=p.charAt(0);if(!this._isBeforeClosingBrace(e,p)&&!l(t))return null}if(1===r.open.length&&("'"===n||'"'===n)&&"always"!==a){const t=jy(e.wordSeparators,[]);if(g.length>0){const e=g.charCodeAt(g.length-1);if(0===t.get(e))return null}}if(!t.tokenization.isCheapToTokenize(o))return null;t.tokenization.forceTokenization(o);const m=zg(t.tokenization.getLineTokens(o),s-1);if(!r.shouldAutoClose(m,s-m.firstCharOffset))return null;const f=r.findNeutralCharacter();if(f){const e=t.tokenization.getTokenTypeIfInsertingCharacter(o,s,f);if(!r.isOK(e))return null}}return h?r.close.substring(0,r.close.length-c.length):r.close}static _findContainedAutoClosingPair(e,t){if(t.open.length<=1)return null;const i=t.close.charAt(t.close.length-1),n=e.autoClosingPairs.autoClosingPairsCloseByEnd.get(i)||[];let o=null;for(const e of n)e.open!==t.open&&t.open.includes(e.open)&&t.close.endsWith(e.close)&&(!o||e.open.length>o.open.length)&&(o=e);return o}static _findAutoClosingPairOpen(e,t,i,n){const o=e.autoClosingPairs.autoClosingPairsOpenByEnd.get(n);if(!o)return null;let s=null;for(const e of o)if(null===s||e.open.length>s.open.length){let o=!0;for(const s of i)if(t.getValueInRange(new Yu(s.lineNumber,s.column-e.open.length+1,s.lineNumber,s.column))+n!==e.open){o=!1;break}o&&(s=e)}return s}static _isBeforeClosingBrace(e,t){const i=t.charAt(0),n=e.autoClosingPairs.autoClosingPairsOpenByStart.get(i)||[],o=e.autoClosingPairs.autoClosingPairsCloseByStart.get(i)||[],s=n.some((e=>t.startsWith(e.open))),r=o.some((e=>t.startsWith(e.close)));return!s&&r}}class wL{static getEdits(e,t){if("overtype"!==e.inputMode)return null;const i=t.map((e=>new jk(e.insertedTextRange)));return new Pk(4,i,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}class CL{static getEdits(e,t,i,n,o){if(!o&&this._isSurroundSelectionType(e,t,i,n))return this._runSurroundSelectionType(e,i,n)}static _runSurroundSelectionType(e,t,i){const n=[];for(let o=0,s=t.length;o=4){const o=function(e,t,i,n,o){if(e<4)return null;const s=t.getLanguageIdAtPosition(i.startLineNumber,i.startColumn),r=o.getLanguageConfiguration(s).indentRulesSupport;if(!r)return null;t.tokenization.forceTokenization(i.startLineNumber);const a=new nL(t,o).getProcessedTokenContextAroundRange(i),l=a.afterRangeProcessedTokens,d=a.beforeRangeProcessedTokens,c=$i(d.getLineContent()),h=function(e,t,i){return{tokenization:{getLineTokens:n=>n===t?i:e.tokenization.getLineTokens(n),getLanguageId:()=>e.getLanguageId(),getLanguageIdAtPosition:(t,i)=>e.getLanguageIdAtPosition(t,i)},getLineContent:n=>n===t?i.getLineContent():e.getLineContent(n)}}(t,i.startLineNumber,d),u=sL(t,i.getStartPosition()),g=$i(t.getLineContent(i.startLineNumber)),p=gL(e,h,i.startLineNumber+1,void 0,o);if(!p){const e=u?g:c;return{beforeEnter:e,afterEnter:e}}let m=u?g:p.indentation;return p.action===Fg.Indent&&(m=n.shiftIndent(m)),r.shouldDecrease(l.getLineContent())&&(m=n.unshiftIndent(m)),{beforeEnter:u?g:c,afterEnter:m}}(e.autoIndent,t,n,{unshiftIndent:t=>WL(e,t),shiftIndent:t=>BL(e,t),normalizeIndentation:t=>e.normalizeIndentation(t)},e.languageConfigurationService);if(o){let s=e.visibleColumnFromColumn(t,n.getEndPosition());const r=n.endColumn,a=qi(t.getLineContent(n.endLineNumber));if(n=a>=0?n.setEndPosition(n.endLineNumber,Math.max(n.endColumn,a+1)):n.setEndPosition(n.endLineNumber,t.getLineMaxColumn(n.endLineNumber)),i)return new zk(n,"\n"+e.normalizeIndentation(o.afterEnter),!0);{let t=0;return r<=a+1&&(e.insertSpaces||(s=Math.ceil(s/e.indentSize)),t=Math.min(s+1-e.normalizeIndentation(o.afterEnter).length-1,0)),new Uk(n,"\n"+e.normalizeIndentation(o.afterEnter),0,t,!0)}}}return FL(n,"\n"+e.normalizeIndentation(s),i)}static lineInsertBefore(e,t,i){if(null===t||null===i)return[];const n=[];for(let o=0,s=i.length;othis._compositionType(i,e,o,s,r,a)));return new Pk(4,l,{shouldPushStackElementBefore:RL(e,4),shouldPushStackElementAfter:!1})}static _compositionType(e,t,i,n,o,s){if(!t.isEmpty())return null;const r=t.getPosition(),a=Math.max(1,r.column-n),l=Math.min(e.getLineMaxColumn(r.lineNumber),r.column+o),d=new Yu(r.lineNumber,a,r.lineNumber,l);return new Uk(d,i,0,s)}}class EL{static getEdits(e,t,i){const n=[];for(let e=0,o=t.length;e1){let n;for(n=i-1;n>=1&&!(Gi(t.getLineContent(n))>=0);n--);if(n<1)return null;const s=t.getLineMaxColumn(n),r=rL(e.autoIndent,t,new Yu(n,s,n,s),e.languageConfigurationService);r&&(o=r.indentation+r.appendText)}return n&&(n===Fg.Indent&&(o=BL(e,o)),n===Fg.Outdent&&(o=WL(e,o)),o=e.normalizeIndentation(o)),o||null}static _replaceJumpToNextIndent(e,t,i,n){let o="";const s=i.getStartPosition();if(e.insertSpaces){const i=e.visibleColumnFromColumn(t,s),n=e.indentSize,r=n-i%n;for(let e=0;e2?l.charCodeAt(a.column-2):0)&&d)return!1;if("auto"===e.autoClosingOvertype){let e=!1;for(let t=0,i=n.length;t{const i=e.get(oh).getFocusedCodeEditor();return!(!i||!i.hasTextFocus())&&this._runEditorCommand(e,i,t)})),e.addImplementation(1e3,"generic-dom-input-textarea",((e,t)=>{const i=Wa();return!(!i||!_l(i)||(this.runDOMCommand(i),0))})),e.addImplementation(0,"generic-dom",((e,t)=>{const i=e.get(oh).getActiveCodeEditor();return!!i&&(i.focus(),this._runEditorCommand(e,i,t))}))}_runEditorCommand(e,t,i){return this.runEditorCommand(e,t,i)||!0}}!function(e){class t extends UL{constructor(e){super(e),this._inSelectionMode=e.inSelectionMode}runCoreEditorCommand(e,t){t.position&&(e.model.pushStackElement(),e.setCursorStates(t.source,3,[eL.moveTo(e,e.getPrimaryCursorState(),this._inSelectionMode,t.position,t.viewPosition)])&&2!==t.revealType&&e.revealAllCursors(t.source,!0,!0))}}e.MoveTo=Wu(new t({id:"_moveTo",inSelectionMode:!1,precondition:void 0})),e.MoveToSelect=Wu(new t({id:"_moveToSelect",inSelectionMode:!0,precondition:void 0}));class i extends UL{runCoreEditorCommand(e,t){e.model.pushStackElement();const i=this._getColumnSelectResult(e,e.getPrimaryCursorState(),e.getCursorColumnSelectData(),t);null!==i&&(e.setCursorStates(t.source,3,i.viewStates.map((e=>Tk.fromViewState(e)))),e.setCursorColumnSelectData({isReal:!0,fromViewLineNumber:i.fromLineNumber,fromViewVisualColumn:i.fromVisualColumn,toViewLineNumber:i.toLineNumber,toViewVisualColumn:i.toVisualColumn}),i.reversed?e.revealTopMostCursor(t.source):e.revealBottomMostCursor(t.source))}}e.ColumnSelect=Wu(new class extends i{constructor(){super({id:"columnSelect",precondition:void 0})}_getColumnSelectResult(e,t,i,n){if(void 0===n.position||void 0===n.viewPosition||void 0===n.mouseColumn)return null;const o=e.model.validatePosition(n.position),s=e.coordinatesConverter.validateViewPosition(new sh(n.viewPosition.lineNumber,n.viewPosition.column),o),r=n.doColumnSelect?i.fromViewLineNumber:s.lineNumber,a=n.doColumnSelect?i.fromViewVisualColumn:n.mouseColumn-1;return Bk.columnSelect(e.cursorConfig,e,r,a,s.lineNumber,n.mouseColumn-1)}}),e.CursorColumnSelectLeft=Wu(new class extends i{constructor(){super({id:"cursorColumnSelectLeft",precondition:void 0,kbOpts:{weight:0,kbExpr:Qu.textInputFocus,primary:3599,linux:{primary:0}}})}_getColumnSelectResult(e,t,i,n){return Bk.columnSelectLeft(e.cursorConfig,e,i)}}),e.CursorColumnSelectRight=Wu(new class extends i{constructor(){super({id:"cursorColumnSelectRight",precondition:void 0,kbOpts:{weight:0,kbExpr:Qu.textInputFocus,primary:3601,linux:{primary:0}}})}_getColumnSelectResult(e,t,i,n){return Bk.columnSelectRight(e.cursorConfig,e,i)}});class n extends i{constructor(e){super(e),this._isPaged=e.isPaged}_getColumnSelectResult(e,t,i,n){return Bk.columnSelectUp(e.cursorConfig,e,i,this._isPaged)}}e.CursorColumnSelectUp=Wu(new n({isPaged:!1,id:"cursorColumnSelectUp",precondition:void 0,kbOpts:{weight:0,kbExpr:Qu.textInputFocus,primary:3600,linux:{primary:0}}})),e.CursorColumnSelectPageUp=Wu(new n({isPaged:!0,id:"cursorColumnSelectPageUp",precondition:void 0,kbOpts:{weight:0,kbExpr:Qu.textInputFocus,primary:3595,linux:{primary:0}}}));class o extends i{constructor(e){super(e),this._isPaged=e.isPaged}_getColumnSelectResult(e,t,i,n){return Bk.columnSelectDown(e.cursorConfig,e,i,this._isPaged)}}e.CursorColumnSelectDown=Wu(new o({isPaged:!1,id:"cursorColumnSelectDown",precondition:void 0,kbOpts:{weight:0,kbExpr:Qu.textInputFocus,primary:3602,linux:{primary:0}}})),e.CursorColumnSelectPageDown=Wu(new o({isPaged:!0,id:"cursorColumnSelectPageDown",precondition:void 0,kbOpts:{weight:0,kbExpr:Qu.textInputFocus,primary:3596,linux:{primary:0}}}));class s extends UL{constructor(){super({id:"cursorMove",precondition:void 0,metadata:tL.metadata})}runCoreEditorCommand(e,t){const i=tL.parse(t);i&&this._runCursorMove(e,t.source,i)}_runCursorMove(e,t,i){e.model.pushStackElement(),e.setCursorStates(t,3,s._move(e,e.getCursorStates(),i)),e.revealAllCursors(t,!0)}static _move(e,t,i){const n=i.select,o=i.value;switch(i.direction){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:return eL.simpleMove(e,t,i.direction,n,o,i.unit);case 11:case 13:case 12:case 14:return eL.viewportMove(e,t,i.direction,n,o);default:return null}}}e.CursorMoveImpl=s,e.CursorMove=Wu(new s);class r extends UL{constructor(e){super(e),this._staticArgs=e.args}runCoreEditorCommand(e,t){let i=this._staticArgs;-1===this._staticArgs.value&&(i={direction:this._staticArgs.direction,unit:this._staticArgs.unit,select:this._staticArgs.select,value:t.pageSize||e.cursorConfig.pageSize}),e.model.pushStackElement(),e.setCursorStates(t.source,3,eL.simpleMove(e,e.getCursorStates(),i.direction,i.select,i.value,i.unit)),e.revealAllCursors(t.source,!0)}}e.CursorLeft=Wu(new r({args:{direction:0,unit:0,select:!1,value:1},id:"cursorLeft",precondition:void 0,kbOpts:{weight:0,kbExpr:Qu.textInputFocus,primary:15,mac:{primary:15,secondary:[288]}}})),e.CursorLeftSelect=Wu(new r({args:{direction:0,unit:0,select:!0,value:1},id:"cursorLeftSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:Qu.textInputFocus,primary:1039}})),e.CursorRight=Wu(new r({args:{direction:1,unit:0,select:!1,value:1},id:"cursorRight",precondition:void 0,kbOpts:{weight:0,kbExpr:Qu.textInputFocus,primary:17,mac:{primary:17,secondary:[292]}}})),e.CursorRightSelect=Wu(new r({args:{direction:1,unit:0,select:!0,value:1},id:"cursorRightSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:Qu.textInputFocus,primary:1041}})),e.CursorUp=Wu(new r({args:{direction:2,unit:2,select:!1,value:1},id:"cursorUp",precondition:void 0,kbOpts:{weight:0,kbExpr:Qu.textInputFocus,primary:16,mac:{primary:16,secondary:[302]}}})),e.CursorUpSelect=Wu(new r({args:{direction:2,unit:2,select:!0,value:1},id:"cursorUpSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:Qu.textInputFocus,primary:1040,secondary:[3088],mac:{primary:1040},linux:{primary:1040}}})),e.CursorPageUp=Wu(new r({args:{direction:2,unit:2,select:!1,value:-1},id:"cursorPageUp",precondition:void 0,kbOpts:{weight:0,kbExpr:Qu.textInputFocus,primary:11}})),e.CursorPageUpSelect=Wu(new r({args:{direction:2,unit:2,select:!0,value:-1},id:"cursorPageUpSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:Qu.textInputFocus,primary:1035}})),e.CursorDown=Wu(new r({args:{direction:3,unit:2,select:!1,value:1},id:"cursorDown",precondition:void 0,kbOpts:{weight:0,kbExpr:Qu.textInputFocus,primary:18,mac:{primary:18,secondary:[300]}}})),e.CursorDownSelect=Wu(new r({args:{direction:3,unit:2,select:!0,value:1},id:"cursorDownSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:Qu.textInputFocus,primary:1042,secondary:[3090],mac:{primary:1042},linux:{primary:1042}}})),e.CursorPageDown=Wu(new r({args:{direction:3,unit:2,select:!1,value:-1},id:"cursorPageDown",precondition:void 0,kbOpts:{weight:0,kbExpr:Qu.textInputFocus,primary:12}})),e.CursorPageDownSelect=Wu(new r({args:{direction:3,unit:2,select:!0,value:-1},id:"cursorPageDownSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:Qu.textInputFocus,primary:1036}})),e.CreateCursor=Wu(new class extends UL{constructor(){super({id:"createCursor",precondition:void 0})}runCoreEditorCommand(e,t){if(!t.position)return;let i;i=t.wholeLine?eL.line(e,e.getPrimaryCursorState(),!1,t.position,t.viewPosition):eL.moveTo(e,e.getPrimaryCursorState(),!1,t.position,t.viewPosition);const n=e.getCursorStates();if(n.length>1){const o=i.modelState?i.modelState.position:null,s=i.viewState?i.viewState.position:null;for(let i=0,r=n.length;is&&(o=s);const r=new Yu(o,1,o,e.model.getLineMaxColumn(o));let a=0;if(i.at)switch(i.at){case KL.RawAtArgument.Top:a=3;break;case KL.RawAtArgument.Center:a=1;break;case KL.RawAtArgument.Bottom:a=4}const l=e.coordinatesConverter.convertModelRangeToViewRange(r);e.revealRange(t.source,!1,l,a,0)}}),e.SelectAll=new class extends $L{constructor(){super(Gu)}runDOMCommand(e){c&&(e.focus(),e.select()),e.ownerDocument.execCommand("selectAll")}runEditorCommand(e,t,i){const n=t._getViewModel();n&&this.runCoreEditorCommand(n,i)}runCoreEditorCommand(e,t){e.model.pushStackElement(),e.setCursorStates("keyboard",3,[eL.selectAll(e,e.getPrimaryCursorState())])}},e.SetSelection=Wu(new class extends UL{constructor(){super({id:"setSelection",precondition:void 0})}runCoreEditorCommand(e,t){t.selection&&(e.model.pushStackElement(),e.setCursorStates(t.source,3,[Tk.fromModelSelection(t.selection)]))}})}(qL||(qL={}));const GL=Th.and(Qu.textInputFocus,Qu.columnSelection);function YL(e,t){au.registerKeybindingRule({id:e,primary:t,when:GL,weight:1})}function ZL(e){return e.register(),e}var QL;YL(qL.CursorColumnSelectLeft.id,1039),YL(qL.CursorColumnSelectRight.id,1041),YL(qL.CursorColumnSelectUp.id,1040),YL(qL.CursorColumnSelectPageUp.id,1035),YL(qL.CursorColumnSelectDown.id,1042),YL(qL.CursorColumnSelectPageDown.id,1036),function(e){class t extends Au{runEditorCommand(e,t,i){const n=t._getViewModel();n&&this.runCoreEditingCommand(t,n,i||{})}}e.CoreEditingCommand=t,e.LineBreakInsert=Wu(new class extends t{constructor(){super({id:"lineBreakInsert",precondition:Qu.writable,kbOpts:{weight:0,kbExpr:Qu.textInputFocus,primary:0,mac:{primary:301}}})}runCoreEditingCommand(e,t,i){e.pushUndoStop(),e.executeCommands(this.id,xL.lineBreakInsert(t.cursorConfig,t.model,t.getCursorStates().map((e=>e.modelState.selection))))}}),e.Outdent=Wu(new class extends t{constructor(){super({id:"outdent",precondition:Qu.writable,kbOpts:{weight:0,kbExpr:Th.and(Qu.editorTextFocus,Qu.tabDoesNotMoveFocus),primary:1026}})}runCoreEditingCommand(e,t,i){e.pushUndoStop(),e.executeCommands(this.id,VL.outdent(t.cursorConfig,t.model,t.getCursorStates().map((e=>e.modelState.selection)))),e.pushUndoStop()}}),e.Tab=Wu(new class extends t{constructor(){super({id:"tab",precondition:Qu.writable,kbOpts:{weight:0,kbExpr:Th.and(Qu.editorTextFocus,Qu.tabDoesNotMoveFocus),primary:2}})}runCoreEditingCommand(e,t,i){e.pushUndoStop(),e.executeCommands(this.id,VL.tab(t.cursorConfig,t.model,t.getCursorStates().map((e=>e.modelState.selection)))),e.pushUndoStop()}}),e.DeleteLeft=Wu(new class extends t{constructor(){super({id:"deleteLeft",precondition:void 0,kbOpts:{weight:0,kbExpr:Qu.textInputFocus,primary:1,secondary:[1025],mac:{primary:1,secondary:[1025,294,257]}}})}runCoreEditingCommand(e,t,i){const[n,o]=Zk.deleteLeft(t.getPrevEditOperationType(),t.cursorConfig,t.model,t.getCursorStates().map((e=>e.modelState.selection)),t.getCursorAutoClosedCharacters());n&&e.pushUndoStop(),e.executeCommands(this.id,o),t.setPrevEditOperationType(2)}}),e.DeleteRight=Wu(new class extends t{constructor(){super({id:"deleteRight",precondition:void 0,kbOpts:{weight:0,kbExpr:Qu.textInputFocus,primary:20,mac:{primary:20,secondary:[290,276]}}})}runCoreEditingCommand(e,t,i){const[n,o]=Zk.deleteRight(t.getPrevEditOperationType(),t.cursorConfig,t.model,t.getCursorStates().map((e=>e.modelState.selection)));n&&e.pushUndoStop(),e.executeCommands(this.id,o),t.setPrevEditOperationType(3)}}),e.Undo=new class extends $L{constructor(){super(qu)}runDOMCommand(e){e.ownerDocument.execCommand("undo")}runEditorCommand(e,t,i){if(t.hasModel()&&!0!==t.getOption(104))return t.getModel().undo()}},e.Redo=new class extends $L{constructor(){super($u)}runDOMCommand(e){e.ownerDocument.execCommand("redo")}runEditorCommand(e,t,i){if(t.hasModel()&&!0!==t.getOption(104))return t.getModel().redo()}}}(QL||(QL={}));class XL extends Mu{constructor(e,t,i){super({id:e,precondition:void 0,metadata:i}),this._handlerId=t}runCommand(e,t){const i=e.get(oh).getFocusedCodeEditor();i&&i.trigger("keyboard",this._handlerId,t)}}function JL(e,t){ZL(new XL("default:"+e,e)),ZL(new XL(e,e,t))}JL("type",{description:"Type",args:[{name:"args",schema:{type:"object",required:["text"],properties:{text:{type:"string"}}}}]}),JL("replacePreviousChar"),JL("compositionType"),JL("compositionStart"),JL("compositionEnd"),JL("paste"),JL("cut");class eE{constructor(e,t){this._selection=e,this._isMovingLeft=t}getEditOperations(e,t){if(this._selection.startLineNumber!==this._selection.endLineNumber||this._selection.isEmpty())return;const i=this._selection.startLineNumber,n=this._selection.startColumn,o=this._selection.endColumn;if((!this._isMovingLeft||1!==n)&&(this._isMovingLeft||o!==e.getLineMaxColumn(i)))if(this._isMovingLeft){const s=new Yu(i,n-1,i,n),r=e.getValueInRange(s);t.addEditOperation(s,null),t.addEditOperation(new Yu(i,o,i,o),r)}else{const s=new Yu(i,o,i,o+1),r=e.getValueInRange(s);t.addEditOperation(s,null),t.addEditOperation(new Yu(i,n,i,n),r)}}computeCursorState(e,t){return this._isMovingLeft?new Zu(this._selection.startLineNumber,this._selection.startColumn-1,this._selection.endLineNumber,this._selection.endColumn-1):new Zu(this._selection.startLineNumber,this._selection.startColumn+1,this._selection.endLineNumber,this._selection.endColumn+1)}}class tE extends Ou{constructor(e,t){super(t),this.left=e}run(e,t){if(!t.hasModel())return;const i=[],n=t.getSelections();for(const e of n)i.push(new eE(e,this.left));t.pushUndoStop(),t.executeCommands(this.id,i),t.pushUndoStop()}}Hu(class extends tE{constructor(){super(!0,{id:"editor.action.moveCarretLeftAction",label:S(806,"Move Selected Text Left"),precondition:Qu.writable})}}),Hu(class extends tE{constructor(){super(!1,{id:"editor.action.moveCarretRightAction",label:S(807,"Move Selected Text Right"),precondition:Qu.writable})}}),Hu(class extends Ou{constructor(){super({id:"editor.action.transposeLetters",label:S(808,"Transpose Letters"),precondition:Qu.writable,kbOpts:{kbExpr:Qu.textInputFocus,primary:0,mac:{primary:306},weight:100}})}run(e,t){if(!t.hasModel())return;const i=t.getModel(),n=[],o=t.getSelections();for(const e of o){if(!e.isEmpty())continue;const t=e.startLineNumber,o=e.startColumn,s=i.getLineMaxColumn(t);if(1===t&&(1===o||2===o&&2===s))continue;const r=o===s?e.getPosition():Yk.rightPosition(i,e.getPosition().lineNumber,e.getPosition().column),a=Yk.leftPosition(i,r),l=Yk.leftPosition(i,a),d=i.getValueInRange(Yu.fromPositions(l,a)),c=i.getValueInRange(Yu.fromPositions(a,r)),h=Yu.fromPositions(l,r);n.push(new Wk(h,c+d))}n.length>0&&(t.pushUndoStop(),t.executeCommands(this.id,n),t.pushUndoStop())}});const iE=nh("clipboardService"),nE=nh("productService");function oE(e,t,i,n){const o=e.getPlainTextToCopy(t,i,K),s=e.model.getEOL(),r=i&&1===t.length&&t[0].isEmpty(),a=Array.isArray(o)?o:null,l=Array.isArray(o)?o.join(s):o;let d,c=null;if(rE.forceCopyWithSyntaxHighlighting||n&&l.length<65536){const n=e.getRichTextToCopy(t,i);n&&(d=n.html,c=n.mode)}return{isFromEmptySelection:r,multicursorText:a,text:l,html:d,mode:c}}class sE{static{this.INSTANCE=new sE}constructor(){this._lastState=null}set(e,t){this._lastState={lastCopiedValue:e,data:t}}get(e){return this._lastState&&this._lastState.lastCopiedValue===e?this._lastState.data:(this._lastState=null,null)}}const rE={forceCopyWithSyntaxHighlighting:!1},aE={getTextData(e){const t=e.getData(wp.text);let i=null;const n=e.getData("vscode-editor-data");if("string"==typeof n)try{i=JSON.parse(n),1!==i.version&&(i=null)}catch(e){}return 0===t.length&&null===i&&e.files.length>0?[Array.prototype.slice.call(e.files,0).map((e=>e.name)).join("\n"),null]:[t,i]},setTextData(e,t,i,n){e.setData(wp.text,t),"string"==typeof i&&e.setData("text/html",i),e.setData("vscode-editor-data",JSON.stringify(n))}},lE=new class{constructor(){this._nativeEditContextMapping=new Map}register(e,t){return this._nativeEditContextMapping.set(e,t),{dispose:()=>{this._nativeEditContextMapping.delete(e)}}}get(e){return this._nativeEditContextMapping.get(e)}};function dE(e,t){return{id:t,asString:async()=>e,asFile:()=>{},value:"string"==typeof e?e:void 0}}class cE{constructor(){this._entries=new Map}get size(){let e=0;for(const t of this._entries)e++;return e}has(e){return this._entries.has(this.toKey(e))}matches(e){const t=[...this._entries.keys()];return wt.some(this,(([e,t])=>t.asFile()))&&t.push("files"),gE(hE(e),t)}get(e){return this._entries.get(this.toKey(e))?.[0]}append(e,t){const i=this._entries.get(e);i?i.push(t):this._entries.set(this.toKey(e),[t])}replace(e,t){this._entries.set(this.toKey(e),[t])}delete(e){this._entries.delete(this.toKey(e))}*[Symbol.iterator](){for(const[e,t]of this._entries)for(const i of t)yield[e,i]}toKey(e){return hE(e)}}function hE(e){return e.toLowerCase()}function uE(e,t){return gE(hE(e),t.map(hE))}function gE(e,t){if("*/*"===e)return t.length>0;if(t.includes(e))return!0;const i=e.match(/^([a-z]+)\/([a-z]+|\*)$/i);if(!i)return!1;const[n,o,s]=i;return"*"===s&&t.some((e=>e.startsWith(o+"/")))}const pE=Object.freeze({create:e=>cs(e.map((e=>e.toString()))).join("\r\n"),split:e=>e.split("\r\n"),parse:e=>pE.split(e).filter((e=>!e.startsWith("#")))});class mE{static{this.sep="."}static{this.None=new mE("@@none@@")}static{this.Empty=new mE("")}constructor(e){this.value=e}equals(e){return this.value===e.value}contains(e){return this.equals(e)||""===this.value||e.value.startsWith(this.value+mE.sep)}intersects(e){return this.contains(e)||e.contains(this)}append(...e){return new mE((this.value?[this.value,...e]:e).join(mE.sep))}}const fE=nh("progressService");Object.freeze({total(){},worked(){},done(){}});class _E{static{this.None=Object.freeze({report(){}})}constructor(e){this.callback=e}report(e){this._value=e,this.callback(this._value)}}const vE=nh("editorProgressService"),bE={ctrlCmd:!1,alt:!1};var wE,CE,yE,SE;!function(e){e[e.Blur=1]="Blur",e[e.Gesture=2]="Gesture",e[e.Other=3]="Other"}(wE||(wE={})),function(e){e[e.NONE=0]="NONE",e[e.FIRST=1]="FIRST",e[e.SECOND=2]="SECOND",e[e.LAST=3]="LAST"}(CE||(CE={})),function(e){e[e.First=1]="First",e[e.Second=2]="Second",e[e.Last=3]="Last",e[e.Next=4]="Next",e[e.Previous=5]="Previous",e[e.NextPage=6]="NextPage",e[e.PreviousPage=7]="PreviousPage",e[e.NextSeparator=8]="NextSeparator",e[e.PreviousSeparator=9]="PreviousSeparator"}(yE||(yE={})),function(e){e[e.Title=1]="Title",e[e.Inline=2]="Inline"}(SE||(SE={})),new class{constructor(e){this.options=e}};const xE=nh("quickInputService"),kE={RESOURCES:"ResourceURLs",DOWNLOAD_URL:"DownloadURL",FILES:"Files",TEXT:wp.text,INTERNAL_URI_LIST:"application/vnd.code.uri-list"};su.add("workbench.contributions.dragAndDrop",new class{});class LE{static{this.INSTANCE=new LE}constructor(){}static getInstance(){return LE.INSTANCE}hasData(e){return e&&e===this.proto}getData(e){if(this.hasData(e))return this.data}}function EE(e){if(G&&"function"==typeof globalThis.vscode?.webUtils?.getPathForFile)return globalThis.vscode.webUtils.getPathForFile(e)}function IE(e){const t=new cE;for(const i of e.items){const e=i.type;if("string"===i.kind){const n=new Promise((e=>i.getAsString(e)));t.append(e,dE(n))}else if("file"===i.kind){const n=i.getAsFile();n&&t.append(e,DE(n))}}return t}function DE(e){const t=EE(e),i=t?ho.parse(t):void 0;return function(e,t,i){const n={id:mC(),name:e,uri:t,data:i};return{id:void 0,asString:async()=>"",asFile:()=>n,value:void 0}}(e.name,i,(async()=>new Uint8Array(await e.arrayBuffer())))}const NE=Object.freeze(["CodeEditors","CodeFiles",kE.RESOURCES,kE.INTERNAL_URI_LIST]);function ME(e,t=!1){const i=IE(e),n=i.get(kE.INTERNAL_URI_LIST);if(n)i.replace(wp.uriList,n);else if(t||!i.has(wp.uriList)){const t=[];for(const i of e.items){const e=i.getAsFile();if(e){const i=EE(e);try{i?t.push(ho.file(i).toString()):t.push(ho.parse(e.name,!0).toString())}catch{}}}t.length&&i.replace(wp.uriList,dE(pE.create(t)))}for(const e of NE)i.delete(e);return i}const TE=nh("IWorkspaceEditService");class RE{constructor(e){this.metadata=e}static convert(e){return e.edits.map((e=>{if(AE.is(e))return AE.lift(e);if(OE.is(e))return OE.lift(e);throw new Error("Unsupported edit")}))}}class AE extends RE{static is(e){return e instanceof AE||lt(e)&&ho.isUri(e.resource)&<(e.textEdit)}static lift(e){return e instanceof AE?e:new AE(e.resource,e.textEdit,e.versionId,e.metadata)}constructor(e,t,i=void 0,n){super(n),this.resource=e,this.textEdit=t,this.versionId=i}}class OE extends RE{static is(e){return e instanceof OE||lt(e)&&(Boolean(e.newResource)||Boolean(e.oldResource))}static lift(e){return e instanceof OE?e:new OE(e.oldResource,e.newResource,e.options,e.metadata)}constructor(e,t,i={},n){super(n),this.oldResource=e,this.newResource=t,this.options=i}}const PE=nh("ILanguageFeaturesService"),FE=nh("IEditorCancelService"),BE=new Xh("cancellableOperation",!1,C(934,"Whether the editor runs a cancellable operation, e.g. like 'Peek References'"));vp(FE,class{constructor(){this._tokens=new WeakMap}add(e,t){let i,n=this._tokens.get(e);return n||(n=e.invokeWithinContext((e=>({key:BE.bindTo(e.get(Jh)),tokens:new Bt}))),this._tokens.set(e,n)),n.key.set(!0),i=n.tokens.push(t),()=>{i&&(i(),n.key.set(!n.tokens.isEmpty()),i=void 0)}}cancel(e){const t=this._tokens.get(e);if(!t)return;const i=t.tokens.pop();i&&(i.cancel(),t.key.set(!t.tokens.isEmpty()))}},1);class WE extends si{constructor(e,t){super(t),this.editor=e,this._unregister=e.invokeWithinContext((t=>t.get(FE).add(e,this)))}dispose(){this._unregister(),super.dispose()}}Wu(new class extends Au{constructor(){super({id:"editor.cancelOperation",kbOpts:{weight:100,primary:9},precondition:BE})}runEditorCommand(e,t){e.get(FE).cancel(t)}});class HE{constructor(e,t){if(this.flags=t,1&this.flags){const t=e.getModel();this.modelVersionId=t?Fi("{0}#{1}",t.uri.toString(),t.getVersionId()):null}else this.modelVersionId=null;4&this.flags?this.position=e.getPosition():this.position=null,2&this.flags?this.selection=e.getSelection():this.selection=null,8&this.flags?(this.scrollLeft=e.getScrollLeft(),this.scrollTop=e.getScrollTop()):(this.scrollLeft=-1,this.scrollTop=-1)}_equals(e){if(!(e instanceof HE))return!1;const t=e;return this.modelVersionId===t.modelVersionId&&this.scrollLeft===t.scrollLeft&&this.scrollTop===t.scrollTop&&!(!this.position&&t.position||this.position&&!t.position||this.position&&t.position&&!this.position.equals(t.position))&&!(!this.selection&&t.selection||this.selection&&!t.selection||this.selection&&t.selection&&!this.selection.equalsRange(t.selection))}validate(e){return this._equals(new HE(e,this.flags))}}class VE extends WE{constructor(e,t,i,n){super(e,n),this._listener=new Mt,4&t&&this._listener.add(e.onDidChangeCursorPosition((e=>{i&&Yu.containsPosition(i,e.position)||this.cancel()}))),2&t&&this._listener.add(e.onDidChangeCursorSelection((e=>{i&&Yu.containsRange(i,e.selection)||this.cancel()}))),8&t&&this._listener.add(e.onDidScrollChange((e=>this.cancel()))),1&t&&(this._listener.add(e.onDidChangeModel((e=>this.cancel()))),this._listener.add(e.onDidChangeModelContent((e=>this.cancel()))))}dispose(){this._listener.dispose(),super.dispose()}}class zE extends si{constructor(e,t){super(t),this._listener=e.onDidChangeContent((()=>this.cancel()))}dispose(){this._listener.dispose(),super.dispose()}}var UE=i(8129),jE={};jE.styleTagTransform=Vl(),jE.setAttributes=Fl(),jE.insert=Ol().bind(null,"head"),jE.domAPI=Rl(),jE.insertStyleElement=Wl(),Ml()(UE.A,jE),UE.A&&UE.A.locals&&UE.A.locals;const KE=_k.register({description:"inline-progress-widget",stickiness:1,showIfCollapsed:!0,after:{content:" ",inlineClassName:"inline-editor-progress-decoration",inlineClassNameAffectsLetterSpacing:!0}});class qE extends Tt{static{this.baseId="editor.widget.inlineProgressWidget"}constructor(e,t,i,n,o){super(),this.typeId=e,this.editor=t,this.range=i,this.delegate=o,this.allowEditorOverflow=!1,this.suppressMouseDown=!0,this.create(n),this.editor.addContentWidget(this),this.editor.layoutContentWidget(this)}create(e){this.domNode=al(".inline-progress-widget"),this.domNode.role="button",this.domNode.title=e;const t=al("span.icon");this.domNode.append(t),t.classList.add(..._c.asClassNameArray(mc.loading),"codicon-modifier-spin");const i=()=>{const e=this.editor.getOption(75);this.domNode.style.height=`${e}px`,this.domNode.style.width=`${Math.ceil(.8*e)}px`};i(),this._register(this.editor.onDidChangeConfiguration((e=>{(e.hasChanged(61)||e.hasChanged(75))&&i()}))),this._register(ua(this.domNode,Za.CLICK,(e=>{this.delegate.cancel()})))}getId(){return qE.baseId+"."+this.typeId}getDomNode(){return this.domNode}getPosition(){return{position:{lineNumber:this.range.startLineNumber,column:this.range.startColumn},preference:[0]}}dispose(){super.dispose(),this.editor.removeContentWidget(this)}}let $E=class extends Tt{constructor(e,t,i){super(),this.id=e,this._editor=t,this._instantiationService=i,this._showDelay=500,this._showPromise=this._register(new Rt),this._currentWidget=this._register(new Rt),this._operationIdPool=0,this._currentDecorations=t.createDecorationsCollection()}dispose(){super.dispose(),this._currentDecorations.clear()}async showWhile(e,t,i,n,o){const s=this._operationIdPool++;this._currentOperation=s,this.clear(),this._showPromise.value=mi((()=>{const i=Yu.fromPositions(e);this._currentDecorations.set([{range:i,options:KE}]).length>0&&(this._currentWidget.value=this._instantiationService.createInstance(qE,this.id,this._editor,i,t,n))}),o??this._showDelay);try{return await i}finally{this._currentOperation===s&&(this.clear(),this._currentOperation=void 0)}}clear(){this._showPromise.clear(),this._currentDecorations.clear(),this._currentWidget.clear()}};$E=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([function(e,t){return function(i,n){t(i,n,e)}}(2,ih)],$E);class GE{constructor(e){this._prefix=e,this._lastId=0}nextId(){return this._prefix+ ++this._lastId}}const YE=new GE("id#");let ZE={async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null};function QE(e){ZE=e}const XE=/[&<>"']/,JE=new RegExp(XE.source,"g"),eI=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,tI=new RegExp(eI.source,"g"),iI={"&":"&","<":"<",">":">",'"':""","'":"'"},nI=e=>iI[e];function oI(e,t){if(t){if(XE.test(e))return e.replace(JE,nI)}else if(eI.test(e))return e.replace(tI,nI);return e}const sI=/(^|[^\[])\^/g;function rI(e,t){let i="string"==typeof e?e:e.source;t=t||"";const n={replace:(e,t)=>{let o="string"==typeof t?t:t.source;return o=o.replace(sI,"$1"),i=i.replace(e,o),n},getRegex:()=>new RegExp(i,t)};return n}function aI(e){try{e=encodeURI(e).replace(/%25/g,"%")}catch{return null}return e}const lI={exec:()=>null};function dI(e,t){const i=e.replace(/\|/g,((e,t,i)=>{let n=!1,o=t;for(;--o>=0&&"\\"===i[o];)n=!n;return n?"|":" |"})).split(/ \|/);let n=0;if(i[0].trim()||i.shift(),i.length>0&&!i[i.length-1].trim()&&i.pop(),t)if(i.length>t)i.splice(t);else for(;i.length0)return{type:"space",raw:t[0]}}code(e){const t=this.rules.block.code.exec(e);if(t){const e=t[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?e:cI(e,"\n")}}}fences(e){const t=this.rules.block.fences.exec(e);if(t){const e=t[0],i=function(e,t){const i=e.match(/^(\s+)(?:```)/);if(null===i)return t;const n=i[1];return t.split("\n").map((e=>{const t=e.match(/^\s+/);if(null===t)return e;const[i]=t;return i.length>=n.length?e.slice(n.length):e})).join("\n")}(e,t[3]||"");return{type:"code",raw:e,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):t[2],text:i}}}heading(e){const t=this.rules.block.heading.exec(e);if(t){let e=t[2].trim();if(/#$/.test(e)){const t=cI(e,"#");this.options.pedantic?e=t.trim():t&&!/ $/.test(t)||(e=t.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:e,tokens:this.lexer.inline(e)}}}hr(e){const t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:cI(t[0],"\n")}}blockquote(e){const t=this.rules.block.blockquote.exec(e);if(t){let e=cI(t[0],"\n").split("\n"),i="",n="";const o=[];for(;e.length>0;){let t=!1;const s=[];let r;for(r=0;r/.test(e[r]))s.push(e[r]),t=!0;else{if(t)break;s.push(e[r])}e=e.slice(r);const a=s.join("\n"),l=a.replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,"\n $1").replace(/^ {0,3}>[ \t]?/gm,"");i=i?`${i}\n${a}`:a,n=n?`${n}\n${l}`:l;const d=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(l,o,!0),this.lexer.state.top=d,0===e.length)break;const c=o[o.length-1];if("code"===c?.type)break;if("blockquote"===c?.type){const t=c,s=t.raw+"\n"+e.join("\n"),r=this.blockquote(s);o[o.length-1]=r,i=i.substring(0,i.length-t.raw.length)+r.raw,n=n.substring(0,n.length-t.text.length)+r.text;break}if("list"!==c?.type);else{const t=c,s=t.raw+"\n"+e.join("\n"),r=this.list(s);o[o.length-1]=r,i=i.substring(0,i.length-c.raw.length)+r.raw,n=n.substring(0,n.length-t.raw.length)+r.raw,e=s.substring(o[o.length-1].raw.length).split("\n")}}return{type:"blockquote",raw:i,tokens:o,text:n}}}list(e){let t=this.rules.block.list.exec(e);if(t){let i=t[1].trim();const n=i.length>1,o={type:"list",raw:"",ordered:n,start:n?+i.slice(0,-1):"",loose:!1,items:[]};i=n?`\\d{1,9}\\${i.slice(-1)}`:`\\${i}`,this.options.pedantic&&(i=n?i:"[*+-]");const s=new RegExp(`^( {0,3}${i})((?:[\t ][^\\n]*)?(?:\\n|$))`);let r=!1;for(;e;){let i=!1,n="",a="";if(!(t=s.exec(e)))break;if(this.rules.block.hr.test(e))break;n=t[0],e=e.substring(n.length);let l=t[2].split("\n",1)[0].replace(/^\t+/,(e=>" ".repeat(3*e.length))),d=e.split("\n",1)[0],c=!l.trim(),h=0;if(this.options.pedantic?(h=2,a=l.trimStart()):c?h=t[1].length+1:(h=t[2].search(/[^ ]/),h=h>4?1:h,a=l.slice(h),h+=t[1].length),c&&/^ *$/.test(d)&&(n+=d+"\n",e=e.substring(d.length+1),i=!0),!i){const t=new RegExp(`^ {0,${Math.min(3,h-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ \t][^\\n]*)?(?:\\n|$))`),i=new RegExp(`^ {0,${Math.min(3,h-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),o=new RegExp(`^ {0,${Math.min(3,h-1)}}(?:\`\`\`|~~~)`),s=new RegExp(`^ {0,${Math.min(3,h-1)}}#`);for(;e;){const r=e.split("\n",1)[0];if(d=r,this.options.pedantic&&(d=d.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),o.test(d))break;if(s.test(d))break;if(t.test(d))break;if(i.test(e))break;if(d.search(/[^ ]/)>=h||!d.trim())a+="\n"+d.slice(h);else{if(c)break;if(l.search(/[^ ]/)>=4)break;if(o.test(l))break;if(s.test(l))break;if(i.test(l))break;a+="\n"+d}c||d.trim()||(c=!0),n+=r+"\n",e=e.substring(r.length+1),l=d.slice(h)}}o.loose||(r?o.loose=!0:/\n *\n *$/.test(n)&&(r=!0));let u,g=null;this.options.gfm&&(g=/^\[[ xX]\] /.exec(a),g&&(u="[ ] "!==g[0],a=a.replace(/^\[[ xX]\] +/,""))),o.items.push({type:"list_item",raw:n,task:!!g,checked:u,loose:!1,text:a,tokens:[]}),o.raw+=n}o.items[o.items.length-1].raw=o.items[o.items.length-1].raw.trimEnd(),o.items[o.items.length-1].text=o.items[o.items.length-1].text.trimEnd(),o.raw=o.raw.trimEnd();for(let e=0;e"space"===e.type)),i=t.length>0&&t.some((e=>/\n.*\n/.test(e.raw)));o.loose=i}if(o.loose)for(let e=0;e$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",n=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):t[3];return{type:"def",tag:e,raw:t[0],href:i,title:n}}}table(e){const t=this.rules.block.table.exec(e);if(!t)return;if(!/[:|]/.test(t[2]))return;const i=dI(t[1]),n=t[2].replace(/^\||\| *$/g,"").split("|"),o=t[3]&&t[3].trim()?t[3].replace(/\n[ \t]*$/,"").split("\n"):[],s={type:"table",raw:t[0],header:[],align:[],rows:[]};if(i.length===n.length){for(const e of n)/^ *-+: *$/.test(e)?s.align.push("right"):/^ *:-+: *$/.test(e)?s.align.push("center"):/^ *:-+ *$/.test(e)?s.align.push("left"):s.align.push(null);for(let e=0;e({text:e,tokens:this.lexer.inline(e),header:!1,align:s.align[t]}))));return s}}lheading(e){const t=this.rules.block.lheading.exec(e);if(t)return{type:"heading",raw:t[0],depth:"="===t[2].charAt(0)?1:2,text:t[1],tokens:this.lexer.inline(t[1])}}paragraph(e){const t=this.rules.block.paragraph.exec(e);if(t){const e="\n"===t[1].charAt(t[1].length-1)?t[1].slice(0,-1):t[1];return{type:"paragraph",raw:t[0],text:e,tokens:this.lexer.inline(e)}}}text(e){const t=this.rules.block.text.exec(e);if(t)return{type:"text",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){const t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:oI(t[1])}}tag(e){const t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&/^/i.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){const t=this.rules.inline.link.exec(e);if(t){const e=t[2].trim();if(!this.options.pedantic&&/^$/.test(e))return;const t=cI(e.slice(0,-1),"\\");if((e.length-t.length)%2==0)return}else{const e=function(e,t){if(-1===e.indexOf(t[1]))return-1;let i=0;for(let n=0;n-1){const i=(0===t[0].indexOf("!")?5:4)+t[1].length+e;t[2]=t[2].substring(0,e),t[0]=t[0].substring(0,i).trim(),t[3]=""}}let i=t[2],n="";if(this.options.pedantic){const e=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(i);e&&(i=e[1],n=e[3])}else n=t[3]?t[3].slice(1,-1):"";return i=i.trim(),/^$/.test(e)?i.slice(1):i.slice(1,-1)),hI(t,{href:i?i.replace(this.rules.inline.anyPunctuation,"$1"):i,title:n?n.replace(this.rules.inline.anyPunctuation,"$1"):n},t[0],this.lexer)}}reflink(e,t){let i;if((i=this.rules.inline.reflink.exec(e))||(i=this.rules.inline.nolink.exec(e))){const e=t[(i[2]||i[1]).replace(/\s+/g," ").toLowerCase()];if(!e){const e=i[0].charAt(0);return{type:"text",raw:e,text:e}}return hI(i,e,i[0],this.lexer)}}emStrong(e,t,i=""){let n=this.rules.inline.emStrongLDelim.exec(e);if(n&&(!n[3]||!i.match(/[\p{L}\p{N}]/u))&&(!n[1]&&!n[2]||!i||this.rules.inline.punctuation.exec(i))){const i=[...n[0]].length-1;let o,s,r=i,a=0;const l="*"===n[0][0]?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(l.lastIndex=0,t=t.slice(-1*e.length+i);null!=(n=l.exec(t));){if(o=n[1]||n[2]||n[3]||n[4]||n[5]||n[6],!o)continue;if(s=[...o].length,n[3]||n[4]){r+=s;continue}if((n[5]||n[6])&&i%3&&!((i+s)%3)){a+=s;continue}if(r-=s,r>0)continue;s=Math.min(s,s+r+a);const t=[...n[0]][0].length,l=e.slice(0,i+n.index+t+s);if(Math.min(i,s)%2){const e=l.slice(1,-1);return{type:"em",raw:l,text:e,tokens:this.lexer.inlineTokens(e)}}const d=l.slice(2,-2);return{type:"strong",raw:l,text:d,tokens:this.lexer.inlineTokens(d)}}}}codespan(e){const t=this.rules.inline.code.exec(e);if(t){let e=t[2].replace(/\n/g," ");const i=/[^ ]/.test(e),n=/^ /.test(e)&&/ $/.test(e);return i&&n&&(e=e.substring(1,e.length-1)),e=oI(e,!0),{type:"codespan",raw:t[0],text:e}}}br(e){const t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e){const t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}autolink(e){const t=this.rules.inline.autolink.exec(e);if(t){let e,i;return"@"===t[2]?(e=oI(t[1]),i="mailto:"+e):(e=oI(t[1]),i=e),{type:"link",raw:t[0],text:e,href:i,tokens:[{type:"text",raw:e,text:e}]}}}url(e){let t;if(t=this.rules.inline.url.exec(e)){let e,i;if("@"===t[2])e=oI(t[0]),i="mailto:"+e;else{let n;do{n=t[0],t[0]=this.rules.inline._backpedal.exec(t[0])?.[0]??""}while(n!==t[0]);e=oI(t[0]),i="www."===t[1]?"http://"+t[0]:t[0]}return{type:"link",raw:t[0],text:e,href:i,tokens:[{type:"text",raw:e,text:e}]}}}inlineText(e){const t=this.rules.inline.text.exec(e);if(t){let e;return e=this.lexer.state.inRawBlock?t[0]:oI(t[0]),{type:"text",raw:t[0],text:e}}}}const gI=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,pI=/(?:[*+-]|\d{1,9}[.)])/,mI=rI(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,pI).replace(/blockCode/g,/ {4}/).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/).getRegex(),fI=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,_I=/(?!\s*\])(?:\\.|[^\[\]\\])+/,vI=rI(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",_I).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),bI=rI(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,pI).getRegex(),wI="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",CI=/|$))/,yI=rI("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))","i").replace("comment",CI).replace("tag",wI).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),SI=rI(fI).replace("hr",gI).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",")|<(?:script|pre|style|textarea|!--)").replace("tag",wI).getRegex(),xI={blockquote:rI(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",SI).getRegex(),code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,def:vI,fences:/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,hr:gI,html:yI,lheading:mI,list:bI,newline:/^(?: *(?:\n|$))+/,paragraph:SI,table:lI,text:/^[^\n]+/},kI=rI("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",gI).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",wI).getRegex(),LI={...xI,table:kI,paragraph:rI(fI).replace("hr",gI).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",kI).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",wI).getRegex()},EI={...xI,html:rI("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",CI).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:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:lI,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:rI(fI).replace("hr",gI).replace("heading"," *#{1,6} *[^\n]").replace("lheading",mI).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},II=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,DI=/^( {2,}|\\)\n(?!\s*$)/,NI="\\p{P}\\p{S}",MI=rI(/^((?![*_])[\spunctuation])/,"u").replace(/punctuation/g,NI).getRegex(),TI=rI(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,NI).getRegex(),RI=rI("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,NI).getRegex(),AI=rI("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,NI).getRegex(),OI=rI(/\\([punct])/,"gu").replace(/punct/g,NI).getRegex(),PI=rI(/^<(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(),FI=rI(CI).replace("(?:--\x3e|$)","--\x3e").getRegex(),BI=rI("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",FI).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),WI=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,HI=rI(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",WI).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),VI=rI(/^!?\[(label)\]\[(ref)\]/).replace("label",WI).replace("ref",_I).getRegex(),zI=rI(/^!?\[(ref)\](?:\[\])?/).replace("ref",_I).getRegex(),UI={_backpedal:lI,anyPunctuation:OI,autolink:PI,blockSkip:/\[[^[\]]*?\]\([^\(\)]*?\)|`[^`]*?`|<[^<>]*?>/g,br:DI,code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,del:lI,emStrongLDelim:TI,emStrongRDelimAst:RI,emStrongRDelimUnd:AI,escape:II,link:HI,nolink:zI,punctuation:MI,reflink:VI,reflinkSearch:rI("reflink|nolink(?!\\()","g").replace("reflink",VI).replace("nolink",zI).getRegex(),tag:BI,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\t+" ".repeat(i.length)));e;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some((i=>!!(n=i.call({lexer:this},e,t))&&(e=e.substring(n.raw.length),t.push(n),!0)))))if(n=this.tokenizer.space(e))e=e.substring(n.raw.length),1===n.raw.length&&t.length>0?t[t.length-1].raw+="\n":t.push(n);else if(n=this.tokenizer.code(e))e=e.substring(n.raw.length),o=t[t.length-1],!o||"paragraph"!==o.type&&"text"!==o.type?t.push(n):(o.raw+="\n"+n.raw,o.text+="\n"+n.text,this.inlineQueue[this.inlineQueue.length-1].src=o.text);else if(n=this.tokenizer.fences(e))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.heading(e))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.hr(e))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.blockquote(e))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.list(e))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.html(e))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.def(e))e=e.substring(n.raw.length),o=t[t.length-1],!o||"paragraph"!==o.type&&"text"!==o.type?this.tokens.links[n.tag]||(this.tokens.links[n.tag]={href:n.href,title:n.title}):(o.raw+="\n"+n.raw,o.text+="\n"+n.raw,this.inlineQueue[this.inlineQueue.length-1].src=o.text);else if(n=this.tokenizer.table(e))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.lheading(e))e=e.substring(n.raw.length),t.push(n);else{if(s=e,this.options.extensions&&this.options.extensions.startBlock){let t=1/0;const i=e.slice(1);let n;this.options.extensions.startBlock.forEach((e=>{n=e.call({lexer:this},i),"number"==typeof n&&n>=0&&(t=Math.min(t,n))})),t<1/0&&t>=0&&(s=e.substring(0,t+1))}if(this.state.top&&(n=this.tokenizer.paragraph(s)))o=t[t.length-1],i&&"paragraph"===o?.type?(o.raw+="\n"+n.raw,o.text+="\n"+n.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=o.text):t.push(n),i=s.length!==e.length,e=e.substring(n.raw.length);else if(n=this.tokenizer.text(e))e=e.substring(n.raw.length),o=t[t.length-1],o&&"text"===o.type?(o.raw+="\n"+n.raw,o.text+="\n"+n.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=o.text):t.push(n);else if(e){const t="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(t);break}throw new Error(t)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let i,n,o,s,r,a,l=e;if(this.tokens.links){const e=Object.keys(this.tokens.links);if(e.length>0)for(;null!=(s=this.tokenizer.rules.inline.reflinkSearch.exec(l));)e.includes(s[0].slice(s[0].lastIndexOf("[")+1,-1))&&(l=l.slice(0,s.index)+"["+"a".repeat(s[0].length-2)+"]"+l.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(s=this.tokenizer.rules.inline.blockSkip.exec(l));)l=l.slice(0,s.index)+"["+"a".repeat(s[0].length-2)+"]"+l.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;null!=(s=this.tokenizer.rules.inline.anyPunctuation.exec(l));)l=l.slice(0,s.index)+"++"+l.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;e;)if(r||(a=""),r=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some((n=>!!(i=n.call({lexer:this},e,t))&&(e=e.substring(i.raw.length),t.push(i),!0)))))if(i=this.tokenizer.escape(e))e=e.substring(i.raw.length),t.push(i);else if(i=this.tokenizer.tag(e))e=e.substring(i.raw.length),n=t[t.length-1],n&&"text"===i.type&&"text"===n.type?(n.raw+=i.raw,n.text+=i.text):t.push(i);else if(i=this.tokenizer.link(e))e=e.substring(i.raw.length),t.push(i);else if(i=this.tokenizer.reflink(e,this.tokens.links))e=e.substring(i.raw.length),n=t[t.length-1],n&&"text"===i.type&&"text"===n.type?(n.raw+=i.raw,n.text+=i.text):t.push(i);else if(i=this.tokenizer.emStrong(e,l,a))e=e.substring(i.raw.length),t.push(i);else if(i=this.tokenizer.codespan(e))e=e.substring(i.raw.length),t.push(i);else if(i=this.tokenizer.br(e))e=e.substring(i.raw.length),t.push(i);else if(i=this.tokenizer.del(e))e=e.substring(i.raw.length),t.push(i);else if(i=this.tokenizer.autolink(e))e=e.substring(i.raw.length),t.push(i);else if(this.state.inLink||!(i=this.tokenizer.url(e))){if(o=e,this.options.extensions&&this.options.extensions.startInline){let t=1/0;const i=e.slice(1);let n;this.options.extensions.startInline.forEach((e=>{n=e.call({lexer:this},i),"number"==typeof n&&n>=0&&(t=Math.min(t,n))})),t<1/0&&t>=0&&(o=e.substring(0,t+1))}if(i=this.tokenizer.inlineText(o))e=e.substring(i.raw.length),"_"!==i.raw.slice(-1)&&(a=i.raw.slice(-1)),r=!0,n=t[t.length-1],n&&"text"===n.type?(n.raw+=i.raw,n.text+=i.text):t.push(i);else if(e){const t="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(t);break}throw new Error(t)}}else e=e.substring(i.raw.length),t.push(i);return t}}class ZI{options;parser;constructor(e){this.options=e||ZE}space(e){return""}code({text:e,lang:t,escaped:i}){const n=(t||"").match(/^\S*/)?.[0],o=e.replace(/\n$/,"")+"\n";return n?'
'+(i?o:oI(o,!0))+"
\n":"
"+(i?o:oI(o,!0))+"
\n"}blockquote({tokens:e}){return`
\n${this.parser.parse(e)}
\n`}html({text:e}){return e}heading({tokens:e,depth:t}){return`${this.parser.parseInline(e)}\n`}hr(e){return"
\n"}list(e){const t=e.ordered,i=e.start;let n="";for(let t=0;t\n"+n+"\n"}listitem(e){let t="";if(e.task){const i=this.checkbox({checked:!!e.checked});e.loose?e.tokens.length>0&&"paragraph"===e.tokens[0].type?(e.tokens[0].text=i+" "+e.tokens[0].text,e.tokens[0].tokens&&e.tokens[0].tokens.length>0&&"text"===e.tokens[0].tokens[0].type&&(e.tokens[0].tokens[0].text=i+" "+e.tokens[0].tokens[0].text)):e.tokens.unshift({type:"text",raw:i+" ",text:i+" "}):t+=i+" "}return t+=this.parser.parse(e.tokens,!!e.loose),`
  • ${t}
  • \n`}checkbox({checked:e}){return"'}paragraph({tokens:e}){return`

    ${this.parser.parseInline(e)}

    \n`}table(e){let t="",i="";for(let t=0;t${n}`),"\n\n"+t+"\n"+n+"
    \n"}tablerow({text:e}){return`\n${e}\n`}tablecell(e){const t=this.parser.parseInline(e.tokens),i=e.header?"th":"td";return(e.align?`<${i} align="${e.align}">`:`<${i}>`)+t+`\n`}strong({tokens:e}){return`${this.parser.parseInline(e)}`}em({tokens:e}){return`${this.parser.parseInline(e)}`}codespan({text:e}){return`${e}`}br(e){return"
    "}del({tokens:e}){return`${this.parser.parseInline(e)}`}link({href:e,title:t,tokens:i}){const n=this.parser.parseInline(i),o=aI(e);if(null===o)return n;let s='
    ",s}image({href:e,title:t,text:i}){const n=aI(e);if(null===n)return i;let o=`${i}{const o=e[n].flat(1/0);i=i.concat(this.walkTokens(o,t))})):e.tokens&&(i=i.concat(this.walkTokens(e.tokens,t)))}}return i}use(...e){const t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach((e=>{const i={...e};if(i.async=this.defaults.async||i.async||!1,e.extensions&&(e.extensions.forEach((e=>{if(!e.name)throw new Error("extension name required");if("renderer"in e){const i=t.renderers[e.name];t.renderers[e.name]=i?function(...t){let n=e.renderer.apply(this,t);return!1===n&&(n=i.apply(this,t)),n}:e.renderer}if("tokenizer"in e){if(!e.level||"block"!==e.level&&"inline"!==e.level)throw new Error("extension level must be 'block' or 'inline'");const i=t[e.level];i?i.unshift(e.tokenizer):t[e.level]=[e.tokenizer],e.start&&("block"===e.level?t.startBlock?t.startBlock.push(e.start):t.startBlock=[e.start]:"inline"===e.level&&(t.startInline?t.startInline.push(e.start):t.startInline=[e.start]))}"childTokens"in e&&e.childTokens&&(t.childTokens[e.name]=e.childTokens)})),i.extensions=t),e.renderer){const t=this.defaults.renderer||new ZI(this.defaults);for(const i in e.renderer){if(!(i in t))throw new Error(`renderer '${i}' does not exist`);if(["options","parser"].includes(i))continue;const n=i,o=e.renderer[n],s=t[n];t[n]=(...e)=>{let i=o.apply(t,e);return!1===i&&(i=s.apply(t,e)),i||""}}i.renderer=t}if(e.tokenizer){const t=this.defaults.tokenizer||new uI(this.defaults);for(const i in e.tokenizer){if(!(i in t))throw new Error(`tokenizer '${i}' does not exist`);if(["options","rules","lexer"].includes(i))continue;const n=i,o=e.tokenizer[n],s=t[n];t[n]=(...e)=>{let i=o.apply(t,e);return!1===i&&(i=s.apply(t,e)),i}}i.tokenizer=t}if(e.hooks){const t=this.defaults.hooks||new JI;for(const i in e.hooks){if(!(i in t))throw new Error(`hook '${i}' does not exist`);if("options"===i)continue;const n=i,o=e.hooks[n],s=t[n];JI.passThroughHooks.has(i)?t[n]=e=>{if(this.defaults.async)return Promise.resolve(o.call(t,e)).then((e=>s.call(t,e)));const i=o.call(t,e);return s.call(t,i)}:t[n]=(...e)=>{let i=o.apply(t,e);return!1===i&&(i=s.apply(t,e)),i}}i.hooks=t}if(e.walkTokens){const t=this.defaults.walkTokens,n=e.walkTokens;i.walkTokens=function(e){let i=[];return i.push(n.call(this,e)),t&&(i=i.concat(t.call(this,e))),i}}this.defaults={...this.defaults,...i}})),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return YI.lex(e,t??this.defaults)}parser(e,t){return XI.parse(e,t??this.defaults)}parseMarkdown(e,t){return(i,n)=>{const o={...n},s={...this.defaults,...o},r=this.onError(!!s.silent,!!s.async);if(!0===this.defaults.async&&!1===o.async)return r(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(null==i)return r(new Error("marked(): input parameter is undefined or null"));if("string"!=typeof i)return r(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(i)+", string expected"));if(s.hooks&&(s.hooks.options=s),s.async)return Promise.resolve(s.hooks?s.hooks.preprocess(i):i).then((t=>e(t,s))).then((e=>s.hooks?s.hooks.processAllTokens(e):e)).then((e=>s.walkTokens?Promise.all(this.walkTokens(e,s.walkTokens)).then((()=>e)):e)).then((e=>t(e,s))).then((e=>s.hooks?s.hooks.postprocess(e):e)).catch(r);try{s.hooks&&(i=s.hooks.preprocess(i));let n=e(i,s);s.hooks&&(n=s.hooks.processAllTokens(n)),s.walkTokens&&this.walkTokens(n,s.walkTokens);let o=t(n,s);return s.hooks&&(o=s.hooks.postprocess(o)),o}catch(e){return r(e)}}}onError(e,t){return i=>{if(i.message+="\nPlease report this to https://github.com/markedjs/marked.",e){const e="

    An error occurred:

    "+oI(i.message+"",!0)+"
    ";return t?Promise.resolve(e):e}if(t)return Promise.reject(i);throw i}}}const tD=new eD;function iD(e,t){return tD.parse(e,t)}iD.options=iD.setOptions=function(e){return tD.setOptions(e),iD.defaults=tD.defaults,QE(iD.defaults),iD},iD.getDefaults=function(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}},iD.defaults=ZE,iD.use=function(...e){return tD.use(...e),iD.defaults=tD.defaults,QE(iD.defaults),iD},iD.walkTokens=function(e,t){return tD.walkTokens(e,t)},iD.parseInline=tD.parseInline,iD.Parser=XI,iD.parser=XI.parse,iD.Renderer=ZI,iD.TextRenderer=QI,iD.Lexer=YI,iD.lexer=YI.lex,iD.Tokenizer=uI,iD.Hooks=JI,iD.parse=iD,iD.options,iD.setOptions,iD.use,iD.walkTokens,iD.parseInline;const nD=iD,oD=(XI.parse,YI.lex);function sD(e){let t=JSON.parse(e);return t=aD(t),t}function rD(e,t){return t instanceof RegExp?{$mid:2,source:t.source,flags:t.flags}:t}function aD(e,t=0){if(!e||t>200)return e;if("object"==typeof e){switch(e.$mid){case 1:return ho.revive(e);case 2:return new RegExp(e.source,e.flags);case 17:return new Date(e.source)}if(e instanceof Mo||e instanceof Uint8Array)return e;if(Array.isArray(e))for(let i=0;i1?i-1:0),o=1;o2&&void 0!==arguments[2]?arguments[2]:CD;dD&&dD(e,null);let n=t.length;for(;n--;){let o=t[n];if("string"==typeof o){const e=i(o);e!==o&&(cD(t)||(t[n]=e),o=e)}e[o]=!0}return e}function RD(e){for(let t=0;t/gm),YD=pD(/\${[\w\W]*}/gm),ZD=pD(/^data-[\-\w.\u00B7-\uFFFF]/),QD=pD(/^aria-[\-\w]+$/),XD=pD(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),JD=pD(/^(?:\w+script|data):/i),eN=pD(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),tN=pD(/^html$/i),iN=pD(/^[a-z][.\w]*(-[.\w]+)+$/i);var nN=Object.freeze({__proto__:null,MUSTACHE_EXPR:$D,ERB_EXPR:GD,TMPLIT_EXPR:YD,DATA_ATTR:ZD,ARIA_ATTR:QD,IS_ALLOWED_URI:XD,IS_SCRIPT_OR_DATA:JD,ATTR_WHITESPACE:eN,DOCTYPE_NAME:tN,CUSTOM_ELEMENT:iN});const oN=function(){return"undefined"==typeof window?null:window};var sN=function e(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:oN();const i=t=>e(t);if(i.version="3.1.7",i.removed=[],!t||!t.document||9!==t.document.nodeType)return i.isSupported=!1,i;let{document:n}=t;const o=n,s=o.currentScript,{DocumentFragment:r,HTMLTemplateElement:a,Node:l,Element:d,NodeFilter:c,NamedNodeMap:h=t.NamedNodeMap||t.MozNamedAttrMap,HTMLFormElement:u,DOMParser:g,trustedTypes:p}=t,m=d.prototype,f=OD(m,"cloneNode"),_=OD(m,"remove"),v=OD(m,"nextSibling"),b=OD(m,"childNodes"),w=OD(m,"parentNode");if("function"==typeof a){const e=n.createElement("template");e.content&&e.content.ownerDocument&&(n=e.content.ownerDocument)}let C,y="";const{implementation:S,createNodeIterator:x,createDocumentFragment:k,getElementsByTagName:L}=n,{importNode:E}=o;let I={};i.isSupported="function"==typeof lD&&"function"==typeof w&&S&&void 0!==S.createHTMLDocument;const{MUSTACHE_EXPR:D,ERB_EXPR:N,TMPLIT_EXPR:M,DATA_ATTR:T,ARIA_ATTR:R,IS_SCRIPT_OR_DATA:A,ATTR_WHITESPACE:O,CUSTOM_ELEMENT:P}=nN;let{IS_ALLOWED_URI:F}=nN,B=null;const W=TD({},[...PD,...FD,...BD,...HD,...zD]);let H=null;const V=TD({},[...UD,...jD,...KD,...qD]);let z=Object.seal(mD(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}})),U=null,j=null,K=!0,q=!0,$=!1,G=!0,Y=!1,Z=!0,Q=!1,X=!1,J=!1,ee=!1,te=!1,ie=!1,ne=!0,oe=!1,se=!0,re=!1,ae={},le=null;const de=TD({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let ce=null;const he=TD({},["audio","video","img","source","image","track"]);let ue=null;const ge=TD({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),pe="http://www.w3.org/1998/Math/MathML",me="http://www.w3.org/2000/svg",fe="http://www.w3.org/1999/xhtml";let _e=fe,ve=!1,be=null;const we=TD({},[pe,me,fe],yD);let Ce=null;const ye=["application/xhtml+xml","text/html"];let Se=null,xe=null;const ke=n.createElement("form"),Le=function(e){return e instanceof RegExp||e instanceof Function},Ee=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!xe||xe!==e){if(e&&"object"==typeof e||(e={}),e=AD(e),Ce=-1===ye.indexOf(e.PARSER_MEDIA_TYPE)?"text/html":e.PARSER_MEDIA_TYPE,Se="application/xhtml+xml"===Ce?yD:CD,B=ED(e,"ALLOWED_TAGS")?TD({},e.ALLOWED_TAGS,Se):W,H=ED(e,"ALLOWED_ATTR")?TD({},e.ALLOWED_ATTR,Se):V,be=ED(e,"ALLOWED_NAMESPACES")?TD({},e.ALLOWED_NAMESPACES,yD):we,ue=ED(e,"ADD_URI_SAFE_ATTR")?TD(AD(ge),e.ADD_URI_SAFE_ATTR,Se):ge,ce=ED(e,"ADD_DATA_URI_TAGS")?TD(AD(he),e.ADD_DATA_URI_TAGS,Se):he,le=ED(e,"FORBID_CONTENTS")?TD({},e.FORBID_CONTENTS,Se):de,U=ED(e,"FORBID_TAGS")?TD({},e.FORBID_TAGS,Se):{},j=ED(e,"FORBID_ATTR")?TD({},e.FORBID_ATTR,Se):{},ae=!!ED(e,"USE_PROFILES")&&e.USE_PROFILES,K=!1!==e.ALLOW_ARIA_ATTR,q=!1!==e.ALLOW_DATA_ATTR,$=e.ALLOW_UNKNOWN_PROTOCOLS||!1,G=!1!==e.ALLOW_SELF_CLOSE_IN_ATTR,Y=e.SAFE_FOR_TEMPLATES||!1,Z=!1!==e.SAFE_FOR_XML,Q=e.WHOLE_DOCUMENT||!1,ee=e.RETURN_DOM||!1,te=e.RETURN_DOM_FRAGMENT||!1,ie=e.RETURN_TRUSTED_TYPE||!1,J=e.FORCE_BODY||!1,ne=!1!==e.SANITIZE_DOM,oe=e.SANITIZE_NAMED_PROPS||!1,se=!1!==e.KEEP_CONTENT,re=e.IN_PLACE||!1,F=e.ALLOWED_URI_REGEXP||XD,_e=e.NAMESPACE||fe,z=e.CUSTOM_ELEMENT_HANDLING||{},e.CUSTOM_ELEMENT_HANDLING&&Le(e.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(z.tagNameCheck=e.CUSTOM_ELEMENT_HANDLING.tagNameCheck),e.CUSTOM_ELEMENT_HANDLING&&Le(e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(z.attributeNameCheck=e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),e.CUSTOM_ELEMENT_HANDLING&&"boolean"==typeof e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements&&(z.allowCustomizedBuiltInElements=e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Y&&(q=!1),te&&(ee=!0),ae&&(B=TD({},zD),H=[],!0===ae.html&&(TD(B,PD),TD(H,UD)),!0===ae.svg&&(TD(B,FD),TD(H,jD),TD(H,qD)),!0===ae.svgFilters&&(TD(B,BD),TD(H,jD),TD(H,qD)),!0===ae.mathMl&&(TD(B,HD),TD(H,KD),TD(H,qD))),e.ADD_TAGS&&(B===W&&(B=AD(B)),TD(B,e.ADD_TAGS,Se)),e.ADD_ATTR&&(H===V&&(H=AD(H)),TD(H,e.ADD_ATTR,Se)),e.ADD_URI_SAFE_ATTR&&TD(ue,e.ADD_URI_SAFE_ATTR,Se),e.FORBID_CONTENTS&&(le===de&&(le=AD(le)),TD(le,e.FORBID_CONTENTS,Se)),se&&(B["#text"]=!0),Q&&TD(B,["html","head","body"]),B.table&&(TD(B,["tbody"]),delete U.tbody),e.TRUSTED_TYPES_POLICY){if("function"!=typeof e.TRUSTED_TYPES_POLICY.createHTML)throw DD('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if("function"!=typeof e.TRUSTED_TYPES_POLICY.createScriptURL)throw DD('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');C=e.TRUSTED_TYPES_POLICY,y=C.createHTML("")}else void 0===C&&(C=function(e,t){if("object"!=typeof e||"function"!=typeof e.createPolicy)return null;let i=null;const n="data-tt-policy-suffix";t&&t.hasAttribute(n)&&(i=t.getAttribute(n));const o="dompurify"+(i?"#"+i:"");try{return e.createPolicy(o,{createHTML:e=>e,createScriptURL:e=>e})}catch(e){return console.warn("TrustedTypes policy "+o+" could not be created."),null}}(p,s)),null!==C&&"string"==typeof y&&(y=C.createHTML(""));gD&&gD(e),xe=e}},Ie=TD({},["mi","mo","mn","ms","mtext"]),De=TD({},["annotation-xml"]),Ne=TD({},["title","style","font","a","script"]),Me=TD({},[...FD,...BD,...WD]),Te=TD({},[...HD,...VD]),Re=function(e){wD(i.removed,{element:e});try{w(e).removeChild(e)}catch(t){_(e)}},Ae=function(e,t){try{wD(i.removed,{attribute:t.getAttributeNode(e),from:t})}catch(e){wD(i.removed,{attribute:null,from:t})}if(t.removeAttribute(e),"is"===e&&!H[e])if(ee||te)try{Re(t)}catch(e){}else try{t.setAttribute(e,"")}catch(e){}},Oe=function(e){let t=null,i=null;if(J)e=""+e;else{const t=SD(e,/^[\r\n\t ]+/);i=t&&t[0]}"application/xhtml+xml"===Ce&&_e===fe&&(e=''+e+"");const o=C?C.createHTML(e):e;if(_e===fe)try{t=(new g).parseFromString(o,Ce)}catch(e){}if(!t||!t.documentElement){t=S.createDocument(_e,"template",null);try{t.documentElement.innerHTML=ve?y:o}catch(e){}}const s=t.body||t.documentElement;return e&&i&&s.insertBefore(n.createTextNode(i),s.childNodes[0]||null),_e===fe?L.call(t,Q?"html":"body")[0]:Q?t.documentElement:s},Pe=function(e){return x.call(e.ownerDocument||e,e,c.SHOW_ELEMENT|c.SHOW_COMMENT|c.SHOW_TEXT|c.SHOW_PROCESSING_INSTRUCTION|c.SHOW_CDATA_SECTION,null)},Fe=function(e){return e instanceof u&&("string"!=typeof e.nodeName||"string"!=typeof e.textContent||"function"!=typeof e.removeChild||!(e.attributes instanceof h)||"function"!=typeof e.removeAttribute||"function"!=typeof e.setAttribute||"string"!=typeof e.namespaceURI||"function"!=typeof e.insertBefore||"function"!=typeof e.hasChildNodes)},Be=function(e){return"function"==typeof l&&e instanceof l},We=function(e,t,n){I[e]&&vD(I[e],(e=>{e.call(i,t,n,xe)}))},He=function(e){let t=null;if(We("beforeSanitizeElements",e,null),Fe(e))return Re(e),!0;const n=Se(e.nodeName);if(We("uponSanitizeElement",e,{tagName:n,allowedTags:B}),e.hasChildNodes()&&!Be(e.firstElementChild)&&ID(/<[/\w]/g,e.innerHTML)&&ID(/<[/\w]/g,e.textContent))return Re(e),!0;if(7===e.nodeType)return Re(e),!0;if(Z&&8===e.nodeType&&ID(/<[/\w]/g,e.data))return Re(e),!0;if(!B[n]||U[n]){if(!U[n]&&ze(n)){if(z.tagNameCheck instanceof RegExp&&ID(z.tagNameCheck,n))return!1;if(z.tagNameCheck instanceof Function&&z.tagNameCheck(n))return!1}if(se&&!le[n]){const t=w(e)||e.parentNode,i=b(e)||e.childNodes;if(i&&t)for(let n=i.length-1;n>=0;--n){const o=f(i[n],!0);o.__removalCount=(e.__removalCount||0)+1,t.insertBefore(o,v(e))}}return Re(e),!0}return e instanceof d&&!function(e){let t=w(e);t&&t.tagName||(t={namespaceURI:_e,tagName:"template"});const i=CD(e.tagName),n=CD(t.tagName);return!!be[e.namespaceURI]&&(e.namespaceURI===me?t.namespaceURI===fe?"svg"===i:t.namespaceURI===pe?"svg"===i&&("annotation-xml"===n||Ie[n]):Boolean(Me[i]):e.namespaceURI===pe?t.namespaceURI===fe?"math"===i:t.namespaceURI===me?"math"===i&&De[n]:Boolean(Te[i]):e.namespaceURI===fe?!(t.namespaceURI===me&&!De[n])&&!(t.namespaceURI===pe&&!Ie[n])&&!Te[i]&&(Ne[i]||!Me[i]):!("application/xhtml+xml"!==Ce||!be[e.namespaceURI]))}(e)?(Re(e),!0):"noscript"!==n&&"noembed"!==n&&"noframes"!==n||!ID(/<\/no(script|embed|frames)/i,e.innerHTML)?(Y&&3===e.nodeType&&(t=e.textContent,vD([D,N,M],(e=>{t=xD(t,e," ")})),e.textContent!==t&&(wD(i.removed,{element:e.cloneNode()}),e.textContent=t)),We("afterSanitizeElements",e,null),!1):(Re(e),!0)},Ve=function(e,t,i){if(ne&&("id"===t||"name"===t)&&(i in n||i in ke))return!1;if(q&&!j[t]&&ID(T,t));else if(K&&ID(R,t));else if(!H[t]||j[t]){if(!(ze(e)&&(z.tagNameCheck instanceof RegExp&&ID(z.tagNameCheck,e)||z.tagNameCheck instanceof Function&&z.tagNameCheck(e))&&(z.attributeNameCheck instanceof RegExp&&ID(z.attributeNameCheck,t)||z.attributeNameCheck instanceof Function&&z.attributeNameCheck(t))||"is"===t&&z.allowCustomizedBuiltInElements&&(z.tagNameCheck instanceof RegExp&&ID(z.tagNameCheck,i)||z.tagNameCheck instanceof Function&&z.tagNameCheck(i))))return!1}else if(ue[t]);else if(ID(F,xD(i,O,"")));else if("src"!==t&&"xlink:href"!==t&&"href"!==t||"script"===e||0!==kD(i,"data:")||!ce[e])if($&&!ID(A,xD(i,O,"")));else if(i)return!1;return!0},ze=function(e){return"annotation-xml"!==e&&SD(e,P)},Ue=function(e){We("beforeSanitizeAttributes",e,null);const{attributes:t}=e;if(!t)return;const n={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:H};let o=t.length;for(;o--;){const s=t[o],{name:r,namespaceURI:a,value:l}=s,d=Se(r);let c="value"===r?l:LD(l);if(n.attrName=d,n.attrValue=c,n.keepAttr=!0,n.forceKeepAttr=void 0,We("uponSanitizeAttribute",e,n),c=n.attrValue,n.forceKeepAttr)continue;if(Ae(r,e),!n.keepAttr)continue;if(!G&&ID(/\/>/i,c)){Ae(r,e);continue}Y&&vD([D,N,M],(e=>{c=xD(c,e," ")}));const h=Se(e.nodeName);if(Ve(h,d,c))if(!oe||"id"!==d&&"name"!==d||(Ae(r,e),c="user-content-"+c),Z&&ID(/((--!?|])>)|<\/(style|title)/i,c))Ae(r,e);else{if(C&&"object"==typeof p&&"function"==typeof p.getAttributeType)if(a);else switch(p.getAttributeType(h,d)){case"TrustedHTML":c=C.createHTML(c);break;case"TrustedScriptURL":c=C.createScriptURL(c)}try{a?e.setAttributeNS(a,r,c):e.setAttribute(r,c),Fe(e)?Re(e):bD(i.removed)}catch(e){}}}We("afterSanitizeAttributes",e,null)},je=function e(t){let i=null;const n=Pe(t);for(We("beforeSanitizeShadowDOM",t,null);i=n.nextNode();)We("uponSanitizeShadowNode",i,null),He(i)||(i.content instanceof r&&e(i.content),Ue(i));We("afterSanitizeShadowDOM",t,null)};return i.sanitize=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=null,s=null,a=null,d=null;if(ve=!e,ve&&(e="\x3c!--\x3e"),"string"!=typeof e&&!Be(e)){if("function"!=typeof e.toString)throw DD("toString is not a function");if("string"!=typeof(e=e.toString()))throw DD("dirty is not a string, aborting")}if(!i.isSupported)return e;if(X||Ee(t),i.removed=[],"string"==typeof e&&(re=!1),re){if(e.nodeName){const t=Se(e.nodeName);if(!B[t]||U[t])throw DD("root node is forbidden and cannot be sanitized in-place")}}else if(e instanceof l)n=Oe("\x3c!----\x3e"),s=n.ownerDocument.importNode(e,!0),1===s.nodeType&&"BODY"===s.nodeName||"HTML"===s.nodeName?n=s:n.appendChild(s);else{if(!ee&&!Y&&!Q&&-1===e.indexOf("<"))return C&&ie?C.createHTML(e):e;if(n=Oe(e),!n)return ee?null:ie?y:""}n&&J&&Re(n.firstChild);const c=Pe(re?e:n);for(;a=c.nextNode();)He(a)||(a.content instanceof r&&je(a.content),Ue(a));if(re)return e;if(ee){if(te)for(d=k.call(n.ownerDocument);n.firstChild;)d.appendChild(n.firstChild);else d=n;return(H.shadowroot||H.shadowrootmode)&&(d=E.call(o,d,!0)),d}let h=Q?n.outerHTML:n.innerHTML;return Q&&B["!doctype"]&&n.ownerDocument&&n.ownerDocument.doctype&&n.ownerDocument.doctype.name&&ID(tN,n.ownerDocument.doctype.name)&&(h="\n"+h),Y&&vD([D,N,M],(e=>{h=xD(h,e," ")})),C&&ie?C.createHTML(h):h},i.setConfig=function(){Ee(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}),X=!0},i.clearConfig=function(){xe=null,X=!1},i.isValidAttribute=function(e,t,i){xe||Ee({});const n=Se(e),o=Se(t);return Ve(n,o,i)},i.addHook=function(e,t){"function"==typeof t&&(I[e]=I[e]||[],wD(I[e],t))},i.removeHook=function(e){if(I[e])return bD(I[e])},i.removeHooks=function(e){I[e]&&(I[e]=[])},i.removeAllHooks=function(){I={}},i}();const rN=Object.freeze(["a","abbr","b","bdo","blockquote","br","caption","cite","code","col","colgroup","dd","del","details","dfn","div","dl","dt","em","figcaption","figure","h1","h2","h3","h4","h5","h6","hr","i","img","ins","kbd","label","li","mark","ol","p","pre","q","rp","rt","ruby","s","samp","small","small","source","span","strike","strong","sub","summary","sup","table","tbody","td","tfoot","th","thead","time","tr","tt","u","ul","var","video","wbr"]),aN=Object.freeze(["href","target","src","alt","title","for","name","role","tabindex","x-dispatch","required","checked","placeholder","type","start","width","height","align"]),lN="vscode-relative-path";function dN(e,t){if("*"===t.override)return!0;try{const i=new URL(e,lN+"://");return!!t.override.includes(i.protocol.replace(/:$/,""))||!(!t.allowRelativePaths||i.protocol!==lN+":"||e.trim().toLowerCase().startsWith(lN))}catch(e){return!1}}const cN=Object.freeze({ALLOWED_TAGS:[...rN],ALLOWED_ATTR:[...aN],ALLOW_UNKNOWN_PROTOCOLS:!0});function hN(e,t,i){try{const s={...cN};t?.allowedTags&&(t.allowedTags.override&&(s.ALLOWED_TAGS=[...t.allowedTags.override]),t.allowedTags.augment&&(s.ALLOWED_TAGS=[...s.ALLOWED_TAGS??[],...t.allowedTags.augment]));let r=[...aN];t?.allowedAttributes&&(t.allowedAttributes.override&&(r=[...t.allowedAttributes.override]),t.allowedAttributes.augment&&(r=[...r,...t.allowedAttributes.augment])),r=r.map((e=>"string"==typeof e?e.toLowerCase():{attributeName:e.attributeName.toLowerCase(),shouldKeep:e.shouldKeep}));const a=new Set(r.map((e=>"string"==typeof e?e:e.attributeName))),l=new Map;for(const e of r)"string"==typeof e?l.delete(e):l.set(e.attributeName,e);return s.ALLOWED_ATTR=Array.from(a),n={override:t?.allowedLinkProtocols?.override??[yo.http,yo.https],allowRelativePaths:t?.allowRelativeLinkPaths??!1},o={override:t?.allowedMediaProtocols?.override??[yo.http,yo.https],allowRelativePaths:t?.allowRelativeMediaPaths??!1},sN.addHook("afterSanitizeAttributes",(e=>{for(const t of["href","src"])if(e.hasAttribute(t)){const i=e.getAttribute(t);"href"===t?i.startsWith("#")||dN(i,n)||e.removeAttribute(t):dN(i,o)||e.removeAttribute(t)}})),t?.replaceWithPlaintext&&sN.addHook("uponSanitizeElement",gN),l.size&&sN.addHook("uponSanitizeAttribute",((e,t)=>{const i=l.get(t.attrName);if(i){const n=i.shouldKeep(e,t);"string"==typeof n?(t.keepAttr=!0,t.attrValue=n):t.keepAttr=n}else t.keepAttr=a.has(t.attrName)})),"dom"===i?sN.sanitize(e,{...s,RETURN_DOM_FRAGMENT:!0}):sN.sanitize(e,{...s,RETURN_TRUSTED_TYPE:!0})}finally{sN.removeAllHooks()}var n,o}const uN=["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"];function gN(e,t,i){if(!t.allowedTags[t.tagName]&&"body"!==t.tagName){const t=pN(e);e.nodeType===Node.COMMENT_NODE?e.parentElement?.insertBefore(t,e):e.parentElement?.replaceChild(t,e)}}function pN(e){let t,i;if(e.nodeType===Node.COMMENT_NODE)t=`\x3c!--${e.textContent}--\x3e`;else{const n=e.tagName.toLowerCase(),o=uN.includes(n);t=`<${n}${e.attributes.length?" "+Array.from(e.attributes).map((e=>`${e.name}="${e.value}"`)).join(" "):""}>`,o||(i=``)}const n=document.createDocumentFragment(),o=e.ownerDocument.createTextNode(t);for(n.appendChild(o);e.firstChild;)n.appendChild(e.firstChild);const s=i?e.ownerDocument.createTextNode(i):void 0;return s&&n.appendChild(s),n}function mN(e,t,i){nl(e,hN(t,i,"dom"))}const fN=new RegExp(`(\\\\)?\\$\\((${_c.iconNameExpression}(?:${_c.iconModifierExpression})?)\\)`,"g");function _N(e){const t=new Array;let i,n=0,o=0;for(;null!==(i=fN.exec(e));){o=i.index||0,n{let n=[],o=[];return e&&(({href:e,dimensions:n}=function(e){const t=[],i=e.split("|").map((e=>e.trim()));e=i[0];const n=i[1];if(n){const e=/height=(\d+)/.exec(n),i=/width=(\d+)/.exec(n),o=e?e[1]:"",s=i?i[1]:"",r=isFinite(parseInt(s)),a=isFinite(parseInt(o));r&&t.push(`width="${s}"`),a&&t.push(`height="${o}"`)}return{href:e,dimensions:t}}(e)),o.push(`src="${Zc(e)}"`)),i&&o.push(`alt="${Zc(i)}"`),t&&o.push(`title="${Zc(t)}"`),n.length&&(o=o.concat(n)),""},paragraph({tokens:e}){return`

    ${this.parser.parseInline(e)}

    `},link({href:e,title:t,tokens:i}){let n=this.parser.parseInline(i);return"string"!=typeof e?"":(e===n&&(n=Qc(n)),t="string"==typeof t?Zc(Qc(t)):"",`
    /g,">").replace(/"/g,""").replace(/'/g,"'")}" title="${t||e}" draggable="false">${n}`)}});function wN(e,t={},i){const n=new Mt;let o=!1;const s=new eD(...t.markedExtensions??[]),{renderer:r,codeBlocks:a,syncCodeBlocks:l}=function(e,t,i){const n=new e.Renderer(t.markedOptions);n.image=bN.image,n.link=bN.link,n.paragraph=bN.paragraph;const o=[],s=[];return t.codeBlockRendererSync?n.code=({text:e,lang:i,raw:n})=>{const o=YE.nextId(),r=t.codeBlockRendererSync(xN(i),e,n);return s.push([o,r]),`
    ${Bi(e)}
    `}:t.codeBlockRenderer&&(n.code=({text:e,lang:i})=>{const n=YE.nextId(),s=t.codeBlockRenderer(xN(i),e);return o.push(s.then((e=>[n,e]))),`
    ${Bi(e)}
    `}),i.supportHtml||(n.html=({text:e})=>t.sanitizerConfig?.replaceWithPlaintext?Bi(e):(i.isTrusted?e.match(/^(]+>)|(<\/\s*span>)$/):void 0)?e:""),{renderer:n,codeBlocks:o,syncCodeBlocks:s}}(s,t,e),d=function(e){let t=e.value;return t.length>1e5&&(t=`${t.substr(0,1e5)}…`),e.supportThemeIcons&&(t=t.replace(wc,(e=>`\\${e}`))),t}(e);let c;if(t.fillInIncompleteTokens){const e={...s.defaults,...t.markedOptions,renderer:r},i=function(e){for(let t=0;t"string"==typeof e?e:e.outerHTML)).join(""));const h=document.createElement("div");let u;if(mN(h,c,IN(e,t.sanitizerConfig??{})),function(e,t,i){for(const n of i.querySelectorAll("img, audio, video, source")){const i=n.getAttribute("src");if(i){let o=i;try{e.baseUri&&(o=kN(ho.from(e.baseUri),o))}catch(e){}if(n.setAttribute("src",SN(e,o,!0)),t.sanitizerConfig?.remoteImageIsAllowed){const e=ho.parse(o);e.scheme===yo.file||e.scheme===yo.data||t.sanitizerConfig.remoteImageIsAllowed(e)||n.replaceWith(al("",void 0,n.outerHTML))}}}for(const t of i.querySelectorAll("a")){const i=t.getAttribute("href");if(t.setAttribute("href",""),!i||/^data:|javascript:/i.test(i)||/^command:/i.test(i)&&!e.isTrusted||/^command:(\/\/\/)?_workbench\.downloadResource/i.test(i))t.replaceWith(...t.childNodes);else{let n=SN(e,i,!1);e.baseUri&&(n=kN(ho.from(e.baseUri),i)),t.dataset.href=n}}}(e,t,h),i?(u=i,nl(i,...h.children)):u=h,a.length>0)Promise.all(a).then((e=>{if(o)return;const i=new Map(e),n=u.querySelectorAll("div[data-code]");for(const e of n){const t=i.get(e.dataset.code??"");t&&nl(e,t)}t.asyncRenderCallback?.()}));else if(l.length>0){const e=new Map(l),t=u.querySelectorAll("div[data-code]");for(const i of t){const t=e.get(i.dataset.code??"");t&&nl(i,t)}}if(t.asyncRenderCallback)for(const e of u.getElementsByTagName("img")){const i=n.add(ua(e,"load",(()=>{i.dispose(),t.asyncRenderCallback()})))}if(t.actionHandler){const i=i=>{const n=new Xe(ea(u),i);(n.leftButton||n.middleButton)&&CN(e,t,n)};n.add(ua(u,"click",i)),n.add(ua(u,"auxclick",i)),n.add(ua(u,"keydown",(i=>{const n=new Ge(i);(n.equals(10)||n.equals(3))&&CN(e,t,n)})))}for(const e of[...u.getElementsByTagName("input")])if("checkbox"===e.attributes.getNamedItem("type")?.value)e.setAttribute("disabled","");else if(t.sanitizerConfig?.replaceWithPlaintext){const t=pN(e);e.parentElement?.replaceChild(t,e)}else e.remove();return{element:u,dispose:()=>{o=!0,n.dispose()}}}function CN(e,t,i){const n=i.target.closest("a[data-href]");if(Ka(n))try{let i=n.dataset.href;i&&(e.baseUri&&(i=kN(ho.from(e.baseUri),i)),t.actionHandler?.(i,e))}catch(e){De(e)}finally{i.preventDefault()}}function yN(e,t){let i;try{i=sD(decodeURIComponent(t))}catch(e){}return i?(i=ag(i,(t=>e.uris&&e.uris[t]?ho.revive(e.uris[t]):void 0)),encodeURIComponent(JSON.stringify(i))):t}function SN(e,t,i){const n=e.uris&&e.uris[t];let o=ho.revive(n);return i?t.startsWith(yo.data+":")?t:(o||(o=ho.parse(t)),Eo.uriToBrowserUri(o).toString(!0)):o?ho.parse(t).toString()===o.toString()?t:(o.query&&(o=o.with({query:yN(e,o.query)})),o.toString()):t}function xN(e){if(!e)return"";const t=e.split(/[\s+|:|,|\{|\?]/,1);return t.length?t[0]:e}function kN(e,t){return/^\w[\w\d+.-]*:/.test(t)?t:e.path.endsWith("/")?Uc(e,t).toString():Uc(Wc(e),t).toString()}const LN=Object.freeze([...rN,"input"]),EN=Object.freeze(["align","autoplay","alt","colspan","controls","draggable","height","href","loop","muted","playsinline","poster","rowspan","src","target","title","type","width","start","checked","disabled","value","data-code","data-href",{attributeName:"style",shouldKeep:(e,t)=>"SPAN"===e.tagName&&"style"===t.attrName&&/^(color\:(#[0-9a-fA-F]+|var\(--vscode(-[a-zA-Z0-9]+)+\));)?(background-color\:(#[0-9a-fA-F]+|var\(--vscode(-[a-zA-Z0-9]+)+\));)?(border-radius:[0-9]+px;)?$/.test(t.attrValue)},{attributeName:"class",shouldKeep:(e,t)=>"SPAN"===e.tagName&&"class"===t.attrName&&/^codicon codicon-[a-z\-]+( codicon-modifier-[a-z\-]+)?$/.test(t.attrValue)}]);function IN(e,t){const i=e.isTrusted??!1,n=[yo.http,yo.https,yo.mailto,yo.file,yo.vscodeFileResource,yo.vscodeRemote,yo.vscodeRemoteResource,yo.vscodeNotebookCell];return i&&n.push(yo.command),t.allowedLinkSchemes?.augment&&n.push(...t.allowedLinkSchemes.augment),{allowedTags:{override:t.allowedTags?.override??LN},allowedAttributes:{override:t.allowedAttributes?.override??EN},allowedLinkProtocols:{override:n},allowRelativeLinkPaths:!!e.baseUri,allowedMediaProtocols:{override:[yo.http,yo.https,yo.data,yo.file,yo.vscodeFileResource,yo.vscodeRemote,yo.vscodeRemoteResource]},replaceWithPlaintext:t.replaceWithPlaintext}}const DN=new Map([[""",'"'],[" "," "],["&","&"],["'","'"],["<","<"],[">",">"]]);function NN(){const e=new ZI;return e.code=({text:e})=>Bi(e),e.blockquote=({text:e})=>e+"\n",e.html=e=>"",e.heading=function({tokens:e}){return this.parser.parseInline(e)+"\n"},e.hr=()=>"",e.list=function({items:e}){return e.map((e=>this.listitem(e))).join("\n")+"\n"},e.listitem=({text:e})=>e+"\n",e.paragraph=function({tokens:e}){return this.parser.parseInline(e)+"\n"},e.table=function({header:e,rows:t}){return e.map((e=>this.tablecell(e))).join(" ")+"\n"+t.map((e=>e.map((e=>this.tablecell(e))).join(" "))).join("\n")+"\n"},e.tablerow=({text:e})=>e,e.tablecell=function({tokens:e}){return this.parser.parseInline(e)},e.strong=({text:e})=>e,e.em=({text:e})=>e,e.codespan=({text:e})=>Bi(e),e.br=e=>"\n",e.del=({text:e})=>e,e.image=e=>"",e.text=({text:e})=>e,e.link=({text:e})=>e,e}const MN=new Ai(NN);new Ai((()=>{const e=NN();return e.code=({text:e})=>`\n\`\`\`\n${Bi(e)}\n\`\`\`\n`,e}));function TN(e){let t="";return e.forEach((e=>{t+=e.raw})),t}function RN(e){if(e.tokens)for(let t=e.tokens.length-1;t>=0;t--){const i=e.tokens[t];if("text"===i.type){const n=i.raw.split("\n"),o=n[n.length-1];if(o.includes("`"))return PN(e);if(o.includes("**"))return zN(e,"**");if(o.match(/\*\w/))return zN(e,"*");if(o.match(/(^|\s)__\w/))return VN(e);if(o.match(/(^|\s)_\w/))return FN(e);if(o.match(/(^|\s)\[.*\]\(\w*/)||o.match(/^[^\[]*\]\([^\)]*$/)&&e.tokens.slice(0,t).some((e=>"text"===e.type&&e.raw.match(/\[[^\]]*$/)))){const i=e.tokens.slice(t+1);return"link"===i[0]?.type&&"text"===i[1]?.type&&i[1].raw.match(/^ *"[^"]*$/)||o.match(/^[^"]* +"[^"]*$/)?WN(e):BN(e)}if(o.match(/(^|\s)\[\w*[^\]]*$/))return HN(e)}}}const AN=3;function ON(e){let t,i;for(t=0;t{const t=e.items.at(-1),i=t?.tokens.at(-1);return"heading"===i?.type||"list"===i?.type&&n(i)};let o;if("text"!==i?.type||"inRawBlock"in t){if(n(e)){const t=oD(e.raw.trim()+"  ")[0];if("list"!==t.type)return;return t}}else o=RN(i);if(!o||"paragraph"!==o.type)return;const s=TN(e.items.slice(0,-1)),r=t.raw.match(/^(\s*(-|\d+\.|\*) +)/)?.[0];if(!r)return;const a=r+TN(t.tokens.slice(0,-1))+o.raw,l=oD(s+a)[0];return"list"===l.type?l:void 0}(n);o&&(i=[o],t=e.length-1)}if(!i&&"paragraph"===n?.type){const o=RN(n);o&&(i=[o],t=e.length-1)}if(i){const n=[...e.slice(0,t),...i];return n.links=e.links,n}if("heading"===n?.type){const t=function(e,t){if(e.raw.match(/-\s*$/))return oD(t+"  ")}(n,TN(e));if(t)return t}return null}function PN(e){return zN(e,"`")}function FN(e){return zN(e,"_")}function BN(e){return zN(e,")",!1)}function WN(e){return zN(e,'")',!1)}function HN(e){return zN(e,"](https://microsoft.com)",!1)}function VN(e){return zN(e,"__")}function zN(e,t,i=!0){const n=TN(Array.isArray(e)?e:[e]),o=i?n.trimEnd():n;return oD(o+t)[0]}function UN(e){const t=TN(e),i=t.split("\n");let n,o=!1;for(let e=0;e0){const e=o?i.slice(0,-1).join("\n"):t,s=!!e.match(/\|\s*$/),r=e+(s?"":"|")+`\n|${" --- |".repeat(n)}`;return oD(r)}}var jN=i(7201),KN={};function qN(e,t){const i=globalThis.MonacoEnvironment;if(i?.createTrustedTypesPolicy)try{return i.createTrustedTypesPolicy(e,t)}catch(e){return void De(e)}try{return globalThis.trustedTypes?.createPolicy(e,t)}catch(e){return void De(e)}}KN.styleTagTransform=Vl(),KN.setAttributes=Fl(),KN.insert=Ol().bind(null,"head"),KN.domAPI=Rl(),KN.insertStyleElement=Wl(),Ml()(jN.A,KN),jN.A&&jN.A.locals&&jN.A.locals;const $N=nh("openerService"),GN={getInitialState:()=>XS,tokenizeEncoded:(e,t,i)=>ex(0,i)};function YN(e,t,i,n,o,s,r){let a="
    ",l=n,d=0,c=!0;for(let h=0,u=t.getCount();h0;)r&&c?(g+=" ",c=!1):(g+=" ",c=!0),e--;break}case 60:g+="<",c=!1;break;case 62:g+=">",c=!1;break;case 38:g+="&",c=!1;break;case 0:g+="�",c=!1;break;case 65279:case 8232:case 8233:case 133:g+="�",c=!1;break;case 13:g+="​",c=!1;break;case 32:r&&c?(g+=" ",c=!1):(g+=" ",c=!0);break;default:g+=String.fromCharCode(t),c=!1}}if(a+=`${g}`,u>o||l>=o)break}return a+="
    ",a}function ZN(e,t,i){let n='
    ';const o=Ki(e);let s=i.getInitialState();for(let e=0,r=o.length;e0&&(n+="
    ");const a=i.tokenizeEncoded(r,!0,s);cS.convertToEndOffset(a.tokens,r.length);const l=new cS(a.tokens,r,t).inflate();let d=0;for(let e=0,t=l.getCount();e${Bi(r.substring(d,i))}`,d=i}s=a.endState}return n+="
    ",n}class QN{constructor(e){this.domNode=e,this._maxWidth="",this._width="",this._height="",this._top="",this._left="",this._bottom="",this._right="",this._paddingLeft="",this._fontFamily="",this._fontWeight="",this._fontSize="",this._fontStyle="",this._fontFeatureSettings="",this._fontVariationSettings="",this._textDecoration="",this._lineHeight="",this._letterSpacing="",this._className="",this._display="",this._position="",this._visibility="",this._color="",this._backgroundColor="",this._layerHint=!1,this._contain="none",this._boxShadow=""}focus(){this.domNode.focus()}setMaxWidth(e){const t=XN(e);this._maxWidth!==t&&(this._maxWidth=t,this.domNode.style.maxWidth=this._maxWidth)}setWidth(e){const t=XN(e);this._width!==t&&(this._width=t,this.domNode.style.width=this._width)}setHeight(e){const t=XN(e);this._height!==t&&(this._height=t,this.domNode.style.height=this._height)}setTop(e){const t=XN(e);this._top!==t&&(this._top=t,this.domNode.style.top=this._top)}setLeft(e){const t=XN(e);this._left!==t&&(this._left=t,this.domNode.style.left=this._left)}setBottom(e){const t=XN(e);this._bottom!==t&&(this._bottom=t,this.domNode.style.bottom=this._bottom)}setRight(e){const t=XN(e);this._right!==t&&(this._right=t,this.domNode.style.right=this._right)}setPaddingLeft(e){const t=XN(e);this._paddingLeft!==t&&(this._paddingLeft=t,this.domNode.style.paddingLeft=this._paddingLeft)}setFontFamily(e){this._fontFamily!==e&&(this._fontFamily=e,this.domNode.style.fontFamily=this._fontFamily)}setFontWeight(e){this._fontWeight!==e&&(this._fontWeight=e,this.domNode.style.fontWeight=this._fontWeight)}setFontSize(e){const t=XN(e);this._fontSize!==t&&(this._fontSize=t,this.domNode.style.fontSize=this._fontSize)}setFontStyle(e){this._fontStyle!==e&&(this._fontStyle=e,this.domNode.style.fontStyle=this._fontStyle)}setFontFeatureSettings(e){this._fontFeatureSettings!==e&&(this._fontFeatureSettings=e,this.domNode.style.fontFeatureSettings=this._fontFeatureSettings)}setFontVariationSettings(e){this._fontVariationSettings!==e&&(this._fontVariationSettings=e,this.domNode.style.fontVariationSettings=this._fontVariationSettings)}setTextDecoration(e){this._textDecoration!==e&&(this._textDecoration=e,this.domNode.style.textDecoration=this._textDecoration)}setLineHeight(e){const t=XN(e);this._lineHeight!==t&&(this._lineHeight=t,this.domNode.style.lineHeight=this._lineHeight)}setLetterSpacing(e){const t=XN(e);this._letterSpacing!==t&&(this._letterSpacing=t,this.domNode.style.letterSpacing=this._letterSpacing)}setClassName(e){this._className!==e&&(this._className=e,this.domNode.className=this._className)}toggleClassName(e,t){this.domNode.classList.toggle(e,t),this._className=this.domNode.className}setDisplay(e){this._display!==e&&(this._display=e,this.domNode.style.display=this._display)}setPosition(e){this._position!==e&&(this._position=e,this.domNode.style.position=this._position)}setVisibility(e){this._visibility!==e&&(this._visibility=e,this.domNode.style.visibility=this._visibility)}setColor(e){this._color!==e&&(this._color=e,this.domNode.style.color=this._color)}setBackgroundColor(e){this._backgroundColor!==e&&(this._backgroundColor=e,this.domNode.style.backgroundColor=this._backgroundColor)}setLayerHinting(e){this._layerHint!==e&&(this._layerHint=e,this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":"")}setBoxShadow(e){this._boxShadow!==e&&(this._boxShadow=e,this.domNode.style.boxShadow=e)}setContain(e){this._contain!==e&&(this._contain=e,this.domNode.style.contain=this._contain)}setAttribute(e,t){this.domNode.setAttribute(e,t)}removeAttribute(e){this.domNode.removeAttribute(e)}appendChild(e){this.domNode.appendChild(e.domNode)}removeChild(e){this.domNode.removeChild(e.domNode)}}function XN(e){return"number"==typeof e?`${e}px`:e}function JN(e){return new QN(e)}function eM(e,t){e instanceof QN?(e.setFontFamily(t.getMassagedFontFamily()),e.setFontWeight(t.fontWeight),e.setFontSize(t.fontSize),e.setFontFeatureSettings(t.fontFeatureSettings),e.setFontVariationSettings(t.fontVariationSettings),e.setLineHeight(t.lineHeight),e.setLetterSpacing(t.letterSpacing)):(e.style.fontFamily=t.getMassagedFontFamily(),e.style.fontWeight=t.fontWeight,e.style.fontSize=t.fontSize+"px",e.style.fontFeatureSettings=t.fontFeatureSettings,e.style.fontVariationSettings=t.fontVariationSettings,e.style.lineHeight=t.lineHeight+"px",e.style.letterSpacing=t.letterSpacing+"px")}var tM=i(6835),iM={};iM.styleTagTransform=Vl(),iM.setAttributes=Fl(),iM.insert=Ol().bind(null,"head"),iM.domAPI=Rl(),iM.insertStyleElement=Wl(),Ml()(tM.A,iM),tM.A&&tM.A.locals&&tM.A.locals;var nM,oM=function(e,t){return function(i,n){t(i,n,e)}};let sM=class{static{nM=this}static{this._ttpTokenizer=qN("tokenizeToString",{createHTML:e=>e})}constructor(e,t,i){this._options=e,this._languageService=t,this._openerService=i}render(e,t,i){const n=wN(e,{codeBlockRenderer:(e,t)=>this.renderCodeBlock(e,t),actionHandler:(e,t)=>this.openMarkdownLink(e,t),...t},i);return n.element.classList.add("rendered-markdown"),n}async renderCodeBlock(e,t){let i;e?i=this._languageService.getLanguageIdByLanguageName(e):this._options.editor&&(i=this._options.editor.getModel()?.getLanguageId()),i||(i=Vp);const n=await async function(e,t,i){if(!i)return ZN(t,e.languageIdCodec,GN);const n=await QS.getOrCreate(i);return ZN(t,e.languageIdCodec,n||GN)}(this._languageService,t,i),o=document.createElement("span");return o.innerHTML=nM._ttpTokenizer?.createHTML(n)??n,this._options.editor?eM(o,this._options.editor.getOption(59)):this._options.codeBlockFontFamily&&(o.style.fontFamily=this._options.codeBlockFontFamily),void 0!==this._options.codeBlockFontSize&&(o.style.fontSize=this._options.codeBlockFontSize),o}async openMarkdownLink(e,t){await rM(this._openerService,e,t.isTrusted)}};async function rM(e,t,i,n){try{return await e.open(t,{fromUserGesture:!0,allowContributedOpeners:!0,allowCommands:aM(i),skipValidation:n})}catch(e){return De(e),!1}}function aM(e){return!0===e||!(!e||!Array.isArray(e.enabledCommands))&&e.enabledCommands}sM=nM=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([oM(1,Ng),oM(2,$N)],sM);var lM,dM=function(e,t){return function(i,n){t(i,n,e)}};let cM=class{static{lM=this}static{this.ID="editor.contrib.messageController"}static{this.MESSAGE_VISIBLE=new Xh("messageVisible",!1,C(1277,"Whether the editor is currently showing an inline message"))}static get(e){return e.getContribution(lM.ID)}constructor(e,t,i){this._openerService=i,this._messageWidget=new Rt,this._messageListeners=new Mt,this._mouseOverMessage=!1,this._editor=e,this._visible=lM.MESSAGE_VISIBLE.bindTo(t)}dispose(){this._messageListeners.dispose(),this._messageWidget.dispose(),this._visible.reset()}showMessage(e,t){if(Yl(Yc(e)?e.value:e),this._visible.set(!0),this._messageWidget.clear(),this._messageListeners.clear(),Yc(e)){const i=this._messageListeners.add(wN(e,{actionHandler:(e,t)=>{this.closeMessage(),rM(this._openerService,e,t.isTrusted)}}));this._messageWidget.value=new hM(this._editor,t,i.element)}else this._messageWidget.value=new hM(this._editor,t,e);let i;this._messageListeners.add(Vt.debounce(this._editor.onDidBlurEditorText,((e,t)=>t),0)((()=>{this._mouseOverMessage||this._messageWidget.value&&Aa(Wa(),this._messageWidget.value.getDomNode())||this.closeMessage()}))),this._messageListeners.add(this._editor.onDidChangeCursorPosition((()=>this.closeMessage()))),this._messageListeners.add(this._editor.onDidDispose((()=>this.closeMessage()))),this._messageListeners.add(this._editor.onDidChangeModel((()=>this.closeMessage()))),this._messageListeners.add(ua(this._messageWidget.value.getDomNode(),Za.MOUSE_ENTER,(()=>this._mouseOverMessage=!0),!0)),this._messageListeners.add(ua(this._messageWidget.value.getDomNode(),Za.MOUSE_LEAVE,(()=>this._mouseOverMessage=!1),!0)),this._messageListeners.add(this._editor.onMouseMove((e=>{e.target.position&&(i?i.containsPosition(e.target.position)||this.closeMessage():i=new Yu(t.lineNumber-3,1,e.target.position.lineNumber+3,1))})))}closeMessage(){this._visible.reset(),this._messageListeners.clear(),this._messageWidget.value&&this._messageListeners.add(hM.fadeOut(this._messageWidget.value))}};cM=lM=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([dM(1,Jh),dM(2,$N)],cM),Wu(new(Au.bindToContribution(cM.get))({id:"leaveEditorMessage",precondition:cM.MESSAGE_VISIBLE,handler:e=>e.closeMessage(),kbOpts:{weight:130,primary:9}}));class hM{static fadeOut(e){const t=()=>{e.dispose(),clearTimeout(i),e.getDomNode().removeEventListener("animationend",t)},i=setTimeout(t,110);return e.getDomNode().addEventListener("animationend",t),e.getDomNode().classList.add("fadeOut"),{dispose:t}}constructor(e,{lineNumber:t,column:i},n){this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._editor=e,this._editor.revealLinesInCenterIfOutsideViewport(t,t,0),this._position={lineNumber:t,column:i},this._domNode=document.createElement("div"),this._domNode.classList.add("monaco-editor-overlaymessage"),this._domNode.style.marginLeft="-6px";const o=document.createElement("div");o.classList.add("anchor","top"),this._domNode.appendChild(o);const s=document.createElement("div");"string"==typeof n?(s.classList.add("message"),s.textContent=n):(n.classList.add("message"),s.appendChild(n)),this._domNode.appendChild(s);const r=document.createElement("div");r.classList.add("anchor","below"),this._domNode.appendChild(r),this._editor.addContentWidget(this),this._domNode.classList.add("fadeIn")}dispose(){this._editor.removeContentWidget(this)}getId(){return"messageoverlay"}getDomNode(){return this._domNode}getPosition(){return{position:this._position,preference:[1,2],positionAffinity:1}}afterRender(e){this._domNode.classList.toggle("below",2===e)}}zu(cM.ID,cM,4);class uM{constructor(){this._value="",this._pos=0}reset(e){return this._value=e,this._pos=0,this}next(){return this._pos+=1,this}hasNext(){return this._pos=0;t--,this._valueLen--){const e=this._value.charCodeAt(t);if(!(47===e||this._splitOnBackslash&&92===e))break}return this.next()}hasNext(){return this._to!1,t=()=>!1){return new vM(new mM(e,t))}static forStrings(){return new vM(new uM)}static forConfigKeys(){return new vM(new gM)}constructor(e){this._iter=e}clear(){this._root=void 0}set(e,t){const i=this._iter.reset(e);let n;this._root||(this._root=new _M,this._root.segment=i.value());const o=[];for(n=this._root;;){const e=i.cmp(n.segment);if(e>0)n.left||(n.left=new _M,n.left.segment=i.value()),o.push([-1,n]),n=n.left;else if(e<0)n.right||(n.right=new _M,n.right.segment=i.value()),o.push([1,n]),n=n.right;else{if(!i.hasNext())break;i.next(),n.mid||(n.mid=new _M,n.mid.segment=i.value()),o.push([0,n]),n=n.mid}}const s=fM.unwrap(n.value);n.value=fM.wrap(t),n.key=e;for(let e=o.length-1;e>=0;e--){const t=o[e][1];t.updateHeight();const i=t.balanceFactor();if(i<-1||i>1){const i=o[e][0],n=o[e+1][0];if(1===i&&1===n)o[e][1]=t.rotateLeft();else if(-1===i&&-1===n)o[e][1]=t.rotateRight();else if(1===i&&-1===n)t.right=o[e+1][1]=o[e+1][1].rotateRight(),o[e][1]=t.rotateLeft();else{if(-1!==i||1!==n)throw new Error;t.left=o[e+1][1]=o[e+1][1].rotateLeft(),o[e][1]=t.rotateRight()}if(e>0)switch(o[e-1][0]){case-1:o[e-1][1].left=o[e][1];break;case 1:o[e-1][1].right=o[e][1];break;case 0:o[e-1][1].mid=o[e][1]}else this._root=o[0][1]}}return s}get(e){return fM.unwrap(this._getNode(e)?.value)}_getNode(e){const t=this._iter.reset(e);let i=this._root;for(;i;){const e=t.cmp(i.segment);if(e>0)i=i.left;else if(e<0)i=i.right;else{if(!t.hasNext())break;t.next(),i=i.mid}}return i}has(e){const t=this._getNode(e);return!(void 0===t?.value&&void 0===t?.mid)}delete(e){return this._delete(e,!1)}deleteSuperstr(e){return this._delete(e,!0)}_delete(e,t){const i=this._iter.reset(e),n=[];let o=this._root;for(;o;){const e=i.cmp(o.segment);if(e>0)n.push([-1,o]),o=o.left;else if(e<0)n.push([1,o]),o=o.right;else{if(!i.hasNext())break;i.next(),n.push([0,o]),o=o.mid}}if(o){if(t?(o.left=void 0,o.mid=void 0,o.right=void 0,o.height=1):(o.key=void 0,o.value=void 0),!o.mid&&!o.value)if(o.left&&o.right){const e=[[1,o]],t=this._min(o.right,e);if(t.key){o.key=t.key,o.value=t.value,o.segment=t.segment;const i=t.right;if(e.length>1){const[t,n]=e[e.length-1];switch(t){case-1:n.left=i;break;case 0:nt(!1);case 1:nt(!1)}}else o.right=i;const s=this._balanceByStack(e);if(n.length>0){const[e,t]=n[n.length-1];switch(e){case-1:t.left=s;break;case 0:t.mid=s;break;case 1:t.right=s}}else this._root=s}}else{const e=o.left??o.right;if(n.length>0){const[t,i]=n[n.length-1];switch(t){case-1:i.left=e;break;case 0:i.mid=e;break;case 1:i.right=e}}else this._root=e}this._root=this._balanceByStack(n)??this._root}}_min(e,t){for(;e.left;)t.push([-1,e]),e=e.left;return e}_balanceByStack(e){for(let t=e.length-1;t>=0;t--){const i=e[t][1];i.updateHeight();const n=i.balanceFactor();if(n>1?(i.right.balanceFactor()>=0||(i.right=i.right.rotateRight()),e[t][1]=i.rotateLeft()):n<-1&&(i.left.balanceFactor()<=0||(i.left=i.left.rotateLeft()),e[t][1]=i.rotateRight()),!(t>0))return e[0][1];switch(e[t-1][0]){case-1:e[t-1][1].left=e[t][1];break;case 1:e[t-1][1].right=e[t][1];break;case 0:e[t-1][1].mid=e[t][1]}}}findSubstr(e){const t=this._iter.reset(e);let i,n=this._root;for(;n;){const e=t.cmp(n.segment);if(e>0)n=n.left;else if(e<0)n=n.right;else{if(!t.hasNext())break;t.next(),i=fM.unwrap(n.value)||i,n=n.mid}}return n&&fM.unwrap(n.value)||i}findSuperstr(e){return this._findSuperstrOrElement(e,!1)}_findSuperstrOrElement(e,t){const i=this._iter.reset(e);let n=this._root;for(;n;){const e=i.cmp(n.segment);if(e>0)n=n.left;else if(e<0)n=n.right;else{if(!i.hasNext())return n.mid?this._entries(n.mid):t?fM.unwrap(n.value):void 0;i.next(),n=n.mid}}}forEach(e){for(const[t,i]of this)e(i,t)}*[Symbol.iterator](){yield*this._entries(this._root)}_entries(e){const t=[];return this._dfsEntries(e,t),t[Symbol.iterator]()}_dfsEntries(e,t){e&&(e.left&&this._dfsEntries(e.left,t),void 0!==e.value&&t.push([e.key,fM.unwrap(e.value)]),e.mid&&this._dfsEntries(e.mid,t),e.right&&this._dfsEntries(e.right,t))}}const bM=nh("contextService");function wM(e){const t=e;return"string"==typeof t?.id&&ho.isUri(t.uri)}const CM={id:"empty-window"};class yM{constructor(e,t){this.raw=t,this.uri=e.uri,this.index=e.index,this.name=e.name}toJSON(){return{uri:this.uri,name:this.name,index:this.index}}}const SM=(C(2032,"Code Workspace"),"4064f6ec-cb38-4ad0-af64-ee6467e63c82");var xM=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r},kM=function(e,t){return function(i,n){t(i,n,e)}};class LM{constructor(e){this.copyMimeTypes=[],this.kind=e,this.providedDropEditKinds=[this.kind],this.providedPasteEditKinds=[this.kind]}async provideDocumentPasteEdits(e,t,i,n,o){const s=await this.getEdit(i,o);if(s)return{edits:[{insertText:s.insertText,title:s.title,kind:s.kind,handledMimeType:s.handledMimeType,yieldTo:s.yieldTo}],dispose(){}}}async provideDocumentDropEdits(e,t,i,n){const o=await this.getEdit(i,n);if(o)return{edits:[{insertText:o.insertText,title:o.title,kind:o.kind,handledMimeType:o.handledMimeType,yieldTo:o.yieldTo}],dispose(){}}}}class EM extends LM{static{this.id="text"}constructor(){super(mE.Empty.append("text","plain")),this.id=EM.id,this.dropMimeTypes=[wp.text],this.pasteMimeTypes=[wp.text]}async getEdit(e,t){const i=e.get(wp.text);if(!i)return;if(e.has(wp.uriList))return;const n=await i.asString();return{handledMimeType:wp.text,title:C(921,"Insert Plain Text"),insertText:n,kind:this.kind}}}class IM extends LM{constructor(){super(mE.Empty.append("uri","path","absolute")),this.dropMimeTypes=[wp.uriList],this.pasteMimeTypes=[wp.uriList]}async getEdit(e,t){const i=await MM(e);if(!i.length||t.isCancellationRequested)return;let n=0;const o=i.map((({uri:e,originalText:t})=>e.scheme===yo.file?e.fsPath:(n++,t))).join(" ");let s;return s=n>0?i.length>1?C(922,"Insert Uris"):C(923,"Insert Uri"):i.length>1?C(924,"Insert Paths"):C(925,"Insert Path"),{handledMimeType:wp.uriList,insertText:o,title:s,kind:this.kind}}}let DM=class extends LM{constructor(e){super(mE.Empty.append("uri","path","relative")),this._workspaceContextService=e,this.dropMimeTypes=[wp.uriList],this.pasteMimeTypes=[wp.uriList]}async getEdit(e,t){const i=await MM(e);if(!i.length||t.isCancellationRequested)return;const n=rs(i.map((({uri:e})=>{const t=this._workspaceContextService.getWorkspaceFolder(e);return t?zc(t.uri,e):void 0})));return n.length?{handledMimeType:wp.uriList,insertText:n.join(" "),title:i.length>1?C(926,"Insert Relative Paths"):C(927,"Insert Relative Path"),kind:this.kind}:void 0}};DM=xM([kM(0,bM)],DM);class NM{constructor(){this.kind=new mE("html"),this.providedPasteEditKinds=[this.kind],this.copyMimeTypes=[],this.pasteMimeTypes=["text/html"],this._yieldTo=[{mimeType:wp.text}]}async provideDocumentPasteEdits(e,t,i,n,o){if(n.triggerKind!==BS.PasteAs&&!n.only?.contains(this.kind))return;const s=i.get("text/html"),r=await(s?.asString());return r&&!o.isCancellationRequested?{dispose(){},edits:[{insertText:r,yieldTo:this._yieldTo,title:C(928,"Insert HTML"),kind:this.kind}]}:void 0}}async function MM(e){const t=e.get(wp.uriList);if(!t)return[];const i=await t.asString(),n=[];for(const e of pE.parse(i))try{n.push({uri:ho.parse(e),originalText:e})}catch{}return n}const TM={scheme:"*",hasAccessToAllModels:!0};let RM=class extends Tt{constructor(e,t){super(),this._register(e.documentDropEditProvider.register(TM,new EM)),this._register(e.documentDropEditProvider.register(TM,new IM)),this._register(e.documentDropEditProvider.register(TM,new DM(t)))}};RM=xM([kM(0,PE),kM(1,bM)],RM);let AM=class extends Tt{constructor(e,t){super(),this._register(e.documentPasteEditProvider.register(TM,new EM)),this._register(e.documentPasteEditProvider.register(TM,new IM)),this._register(e.documentPasteEditProvider.register(TM,new DM(t))),this._register(e.documentPasteEditProvider.register(TM,new NM))}};AM=xM([kM(0,PE),kM(1,bM)],AM);class OM{constructor(){this.value="",this.pos=0}static{this._table={36:0,58:1,44:2,123:3,125:4,92:5,47:6,124:7,43:11,45:12,63:13}}static isDigitCharacter(e){return e>=48&&e<=57}static isVariableCharacter(e){return 95===e||e>=97&&e<=122||e>=65&&e<=90}text(e){this.value=e,this.pos=0}tokenText(e){return this.value.substr(e.pos,e.len)}next(){if(this.pos>=this.value.length)return{type:14,pos:this.pos,len:0};const e=this.pos;let t,i=0,n=this.value.charCodeAt(e);if(t=OM._table[n],"number"==typeof t)return this.pos+=1,{type:t,pos:e,len:1};if(OM.isDigitCharacter(n)){t=8;do{i+=1,n=this.value.charCodeAt(e+i)}while(OM.isDigitCharacter(n));return this.pos+=i,{type:t,pos:e,len:i}}if(OM.isVariableCharacter(n)){t=9;do{n=this.value.charCodeAt(e+ ++i)}while(OM.isVariableCharacter(n)||OM.isDigitCharacter(n));return this.pos+=i,{type:t,pos:e,len:i}}t=10;do{i+=1,n=this.value.charCodeAt(e+i)}while(!isNaN(n)&&void 0===OM._table[n]&&!OM.isDigitCharacter(n)&&!OM.isVariableCharacter(n));return this.pos+=i,{type:t,pos:e,len:i}}}class PM{constructor(){this._children=[]}appendChild(e){return e instanceof FM&&this._children[this._children.length-1]instanceof FM?this._children[this._children.length-1].value+=e.value:(e.parent=this,this._children.push(e)),this}replace(e,t){const{parent:i}=e,n=i.children.indexOf(e),o=i.children.slice(0);o.splice(n,1,...t),i._children=o,function e(t,i){for(const n of t)n.parent=i,e(n.children,n)}(t,i)}get children(){return this._children}get rightMostDescendant(){return this._children.length>0?this._children[this._children.length-1].rightMostDescendant:this}get snippet(){let e=this;for(;;){if(!e)return;if(e instanceof KM)return e;e=e.parent}}toString(){return this.children.reduce(((e,t)=>e+t.toString()),"")}len(){return 0}}class FM extends PM{constructor(e){super(),this.value=e}toString(){return this.value}len(){return this.value.length}clone(){return new FM(this.value)}}class BM extends PM{}class WM extends BM{static compareByIndex(e,t){return e.index===t.index?0:e.isFinalTabstop?1:t.isFinalTabstop||e.indext.index?1:0}constructor(e){super(),this.index=e}get isFinalTabstop(){return 0===this.index}get choice(){return 1===this._children.length&&this._children[0]instanceof HM?this._children[0]:void 0}clone(){const e=new WM(this.index);return this.transform&&(e.transform=this.transform.clone()),e._children=this.children.map((e=>e.clone())),e}}class HM extends PM{constructor(){super(...arguments),this.options=[]}appendChild(e){return e instanceof FM&&(e.parent=this,this.options.push(e)),this}toString(){return this.options[0].value}len(){return this.options[0].len()}clone(){const e=new HM;return this.options.forEach(e.appendChild,e),e}}class VM extends PM{constructor(){super(...arguments),this.regexp=new RegExp("")}resolve(e){const t=this;let i=!1,n=e.replace(this.regexp,(function(){return i=!0,t._replace(Array.prototype.slice.call(arguments,0,-2))}));return!i&&this._children.some((e=>e instanceof zM&&Boolean(e.elseValue)))&&(n=this._replace([])),n}_replace(e){let t="";for(const i of this._children)if(i instanceof zM){let n=e[i.index]||"";n=i.resolve(n),t+=n}else t+=i.toString();return t}toString(){return""}clone(){const e=new VM;return e.regexp=new RegExp(this.regexp.source,(this.regexp.ignoreCase?"i":"")+(this.regexp.global?"g":"")),e._children=this.children.map((e=>e.clone())),e}}class zM extends PM{constructor(e,t,i,n){super(),this.index=e,this.shorthandName=t,this.ifValue=i,this.elseValue=n}resolve(e){return"upcase"===this.shorthandName?e?e.toLocaleUpperCase():"":"downcase"===this.shorthandName?e?e.toLocaleLowerCase():"":"capitalize"===this.shorthandName?e?e[0].toLocaleUpperCase()+e.substr(1):"":"pascalcase"===this.shorthandName?e?this._toPascalCase(e):"":"camelcase"===this.shorthandName?e?this._toCamelCase(e):"":Boolean(e)&&"string"==typeof this.ifValue?this.ifValue:Boolean(e)||"string"!=typeof this.elseValue?e||"":this.elseValue}_toPascalCase(e){const t=e.match(/[a-z0-9]+/gi);return t?t.map((e=>e.charAt(0).toUpperCase()+e.substr(1))).join(""):e}_toCamelCase(e){const t=e.match(/[a-z0-9]+/gi);return t?t.map(((e,t)=>0===t?e.charAt(0).toLowerCase()+e.substr(1):e.charAt(0).toUpperCase()+e.substr(1))).join(""):e}clone(){return new zM(this.index,this.shorthandName,this.ifValue,this.elseValue)}}class UM extends BM{constructor(e){super(),this.name=e}resolve(e){let t=e.resolve(this);return this.transform&&(t=this.transform.resolve(t||"")),void 0!==t&&(this._children=[new FM(t)],!0)}clone(){const e=new UM(this.name);return this.transform&&(e.transform=this.transform.clone()),e._children=this.children.map((e=>e.clone())),e}}function jM(e,t){const i=[...e];for(;i.length>0;){const e=i.shift();if(!t(e))break;i.unshift(...e.children)}}class KM extends PM{get placeholderInfo(){if(!this._placeholders){const e=[];let t;this.walk((function(i){return i instanceof WM&&(e.push(i),t=!t||t.indexn===e?(i=!0,!1):(t+=n.len(),!0))),i?t:-1}fullLen(e){let t=0;return jM([e],(e=>(t+=e.len(),!0))),t}enclosingPlaceholders(e){const t=[];let{parent:i}=e;for(;i;)i instanceof WM&&t.push(i),i=i.parent;return t}resolveVariables(e){return this.walk((t=>(t instanceof UM&&t.resolve(e)&&(this._placeholders=void 0),!0))),this}appendChild(e){return this._placeholders=void 0,super.appendChild(e)}replace(e,t){return this._placeholders=void 0,super.replace(e,t)}clone(){const e=new KM;return this._children=this.children.map((e=>e.clone())),e}walk(e){jM(this.children,e)}}class qM{constructor(){this._scanner=new OM,this._token={type:14,pos:0,len:0}}static escape(e){return e.replace(/\$|}|\\/g,"\\$&")}static guessNeedsClipboard(e){return/\${?CLIPBOARD/.test(e)}parse(e,t,i){const n=new KM;return this.parseFragment(e,n),this.ensureFinalTabstop(n,i??!1,t??!1),n}parseFragment(e,t){const i=t.children.length;for(this._scanner.text(e),this._token=this._scanner.next();this._parse(t););const n=new Map,o=[];t.walk((e=>(e instanceof WM&&(e.isFinalTabstop?n.set(0,void 0):!n.has(e.index)&&e.children.length>0?n.set(e.index,e.children):o.push(e)),!0)));const s=(e,i)=>{const o=n.get(e.index);if(!o)return;const r=new WM(e.index);r.transform=e.transform;for(const e of o){const t=e.clone();r.appendChild(t),t instanceof WM&&n.has(t.index)&&!i.has(t.index)&&(i.add(t.index),s(t,i),i.delete(t.index))}t.replace(e,[r])},r=new Set;for(const e of o)s(e,r);return t.children.slice(i)}ensureFinalTabstop(e,t,i){if(t||i&&e.placeholders.length>0){const t=e.placeholders.find((e=>0===e.index));t||e.appendChild(new WM(0))}}_accept(e,t){if(void 0===e||this._token.type===e){const e=!t||this._scanner.tokenText(this._token);return this._token=this._scanner.next(),e}return!1}_backTo(e){return this._scanner.pos=e.pos+e.len,this._token=e,!1}_until(e){const t=this._token;for(;this._token.type!==e;){if(14===this._token.type)return!1;if(5===this._token.type){const e=this._scanner.next();if(0!==e.type&&4!==e.type&&5!==e.type)return!1}this._token=this._scanner.next()}const i=this._scanner.value.substring(t.pos,this._token.pos).replace(/\\(\$|}|\\)/g,"$1");return this._token=this._scanner.next(),i}_parse(e){return this._parseEscaped(e)||this._parseTabstopOrVariableName(e)||this._parseComplexPlaceholder(e)||this._parseComplexVariable(e)||this._parseAnything(e)}_parseEscaped(e){let t;return!!(t=this._accept(5,!0))&&(t=this._accept(0,!0)||this._accept(4,!0)||this._accept(5,!0)||t,e.appendChild(new FM(t)),!0)}_parseTabstopOrVariableName(e){let t;const i=this._token;return this._accept(0)&&(t=this._accept(9,!0)||this._accept(8,!0))?(e.appendChild(/^\d+$/.test(t)?new WM(Number(t)):new UM(t)),!0):this._backTo(i)}_parseComplexPlaceholder(e){let t;const i=this._token;if(!(this._accept(0)&&this._accept(3)&&(t=this._accept(8,!0))))return this._backTo(i);const n=new WM(Number(t));if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(n),!0;if(!this._parse(n))return e.appendChild(new FM("${"+t+":")),n.children.forEach(e.appendChild,e),!0}else{if(!(n.index>0&&this._accept(7)))return this._accept(6)?this._parseTransform(n)?(e.appendChild(n),!0):(this._backTo(i),!1):this._accept(4)?(e.appendChild(n),!0):this._backTo(i);{const t=new HM;for(;;){if(this._parseChoiceElement(t)){if(this._accept(2))continue;if(this._accept(7)&&(n.appendChild(t),this._accept(4)))return e.appendChild(n),!0}return this._backTo(i),!1}}}}_parseChoiceElement(e){const t=this._token,i=[];for(;2!==this._token.type&&7!==this._token.type;){let e;if(e=(e=this._accept(5,!0))?this._accept(2,!0)||this._accept(7,!0)||this._accept(5,!0)||e:this._accept(void 0,!0),!e)return this._backTo(t),!1;i.push(e)}return 0===i.length?(this._backTo(t),!1):(e.appendChild(new FM(i.join(""))),!0)}_parseComplexVariable(e){let t;const i=this._token;if(!(this._accept(0)&&this._accept(3)&&(t=this._accept(9,!0))))return this._backTo(i);const n=new UM(t);if(!this._accept(1))return this._accept(6)?this._parseTransform(n)?(e.appendChild(n),!0):(this._backTo(i),!1):this._accept(4)?(e.appendChild(n),!0):this._backTo(i);for(;;){if(this._accept(4))return e.appendChild(n),!0;if(!this._parse(n))return e.appendChild(new FM("${"+t+":")),n.children.forEach(e.appendChild,e),!0}}_parseTransform(e){const t=new VM;let i="",n="";for(;!this._accept(6);){let e;if(e=this._accept(5,!0))e=this._accept(6,!0)||e,i+=e;else{if(14===this._token.type)return!1;i+=this._accept(void 0,!0)}}for(;!this._accept(6);){let e;if(e=this._accept(5,!0))e=this._accept(5,!0)||this._accept(6,!0)||e,t.appendChild(new FM(e));else if(!this._parseFormatString(t)&&!this._parseAnything(t))return!1}for(;!this._accept(4);){if(14===this._token.type)return!1;n+=this._accept(void 0,!0)}try{t.regexp=new RegExp(i,n)}catch(e){return!1}return e.transform=t,!0}_parseFormatString(e){const t=this._token;if(!this._accept(0))return!1;let i=!1;this._accept(3)&&(i=!0);const n=this._accept(8,!0);if(!n)return this._backTo(t),!1;if(!i)return e.appendChild(new zM(Number(n))),!0;if(this._accept(4))return e.appendChild(new zM(Number(n))),!0;if(!this._accept(1))return this._backTo(t),!1;if(this._accept(6)){const i=this._accept(9,!0);return i&&this._accept(4)?(e.appendChild(new zM(Number(n),i)),!0):(this._backTo(t),!1)}if(this._accept(11)){const t=this._until(4);if(t)return e.appendChild(new zM(Number(n),void 0,t,void 0)),!0}else if(this._accept(12)){const t=this._until(4);if(t)return e.appendChild(new zM(Number(n),void 0,void 0,t)),!0}else if(this._accept(13)){const t=this._until(1);if(t){const i=this._until(4);if(i)return e.appendChild(new zM(Number(n),void 0,t,i)),!0}}else{const t=this._until(4);if(t)return e.appendChild(new zM(Number(n),void 0,void 0,t)),!0}return this._backTo(t),!1}_parseAnything(e){return 14!==this._token.type&&(e.appendChild(new FM(this._scanner.tokenText(this._token))),this._accept(void 0),!0)}}function $M(e,t,i){return("string"==typeof i.insertText?""===i.insertText:""===i.insertText.snippet)?{edits:i.additionalEdit?.edits??[]}:{edits:[...t.map((t=>new AE(e,{range:t,text:"string"==typeof i.insertText?qM.escape(i.insertText)+"$0":i.insertText.snippet,insertAsSnippet:!0}))),...i.additionalEdit?.edits??[]]}}function GM(e){function t(e,t){return"mimeType"in e?e.mimeType===t.handledMimeType:!!t.kind&&e.kind.contains(t.kind)}const i=new Map;for(const n of e)for(const o of n.yieldTo??[])for(const s of e)if(s!==n&&t(o,s)){let e=i.get(n);e||(e=[],i.set(n,e)),e.push(s)}if(!i.size)return Array.from(e);const n=new Set,o=[];return function e(t){if(!t.length)return[];const s=t[0];if(o.includes(s))return console.warn("Yield to cycle detected",s),t;if(n.has(s))return e(t.slice(1));let r=[];const a=i.get(s);return a&&(o.push(s),r=e(a),o.pop()),n.add(s),[...r,s,...e(t.slice(1))]}(Array.from(e))}function YM(e,t,i){let n=null,o=null;if("function"==typeof i.value?(n="value",o=i.value,0!==o.length&&console.warn("Memoize should only be used in functions with zero parameters")):"function"==typeof i.get&&(n="get",o=i.get),!o)throw new Error("not supported");const s=`$memoize$${t}`;i[n]=function(...e){return this.hasOwnProperty(s)||Object.defineProperty(this,s,{configurable:!1,enumerable:!1,writable:!1,value:o.apply(this,e)}),this[s]}}var ZM;!function(e){e.Tap="-monaco-gesturetap",e.Change="-monaco-gesturechange",e.Start="-monaco-gesturestart",e.End="-monaco-gesturesend",e.Contextmenu="-monaco-gesturecontextmenu"}(ZM||(ZM={}));class QM extends Tt{static{this.SCROLL_FRICTION=-.005}static{this.HOLD_DELAY=700}static{this.CLEAR_TAP_COUNT_TIME=400}constructor(){super(),this.dispatched=!1,this.targets=new Bt,this.ignoreTargets=new Bt,this.activeTouches={},this.handle=null,this._lastSetTapCountTime=0,this._register(Vt.runAndSubscribe(aa,(({window:e,disposables:t})=>{t.add(ua(e.document,"touchstart",(e=>this.onTouchStart(e)),{passive:!1})),t.add(ua(e.document,"touchend",(t=>this.onTouchEnd(e,t)))),t.add(ua(e.document,"touchmove",(e=>this.onTouchMove(e)),{passive:!1}))}),{window:s,disposables:this._store}))}static addTarget(e){return QM.isTouchDevice()?(QM.INSTANCE||(QM.INSTANCE=kt(new QM)),Nt(QM.INSTANCE.targets.push(e))):Tt.None}static ignoreTarget(e){return QM.isTouchDevice()?(QM.INSTANCE||(QM.INSTANCE=kt(new QM)),Nt(QM.INSTANCE.ignoreTargets.push(e))):Tt.None}static isTouchDevice(){return"ontouchstart"in s||navigator.maxTouchPoints>0}dispose(){this.handle&&(this.handle.dispose(),this.handle=null),super.dispose()}onTouchStart(e){const t=Date.now();this.handle&&(this.handle.dispose(),this.handle=null);for(let i=0,n=e.targetTouches.length;i=QM.HOLD_DELAY&&Math.abs(r.initialPageX-r.rollingPageX.at(-1))<30&&Math.abs(r.initialPageY-r.rollingPageY.at(-1))<30){const e=this.newGestureEvent(ZM.Contextmenu,r.initialTarget);e.pageX=r.rollingPageX.at(-1),e.pageY=r.rollingPageY.at(-1),this.dispatchEvent(e)}else if(1===n){const t=r.rollingPageX.at(-1),n=r.rollingPageY.at(-1),o=r.rollingTimestamps.at(-1)-r.rollingTimestamps[0],s=t-r.rollingPageX[0],a=n-r.rollingPageY[0],l=[...this.targets].filter((e=>r.initialTarget instanceof Node&&e.contains(r.initialTarget)));this.inertia(e,l,i,Math.abs(s)/o,s>0?1:-1,t,Math.abs(a)/o,a>0?1:-1,n)}this.dispatchEvent(this.newGestureEvent(ZM.End,r.initialTarget)),delete this.activeTouches[s.identifier]}this.dispatched&&(t.preventDefault(),t.stopPropagation(),this.dispatched=!1)}newGestureEvent(e,t){const i=document.createEvent("CustomEvent");return i.initEvent(e,!1,!0),i.initialTarget=t,i.tapCount=0,i}dispatchEvent(e){if(e.type===ZM.Tap){const t=(new Date).getTime();let i=0;i=t-this._lastSetTapCountTime>QM.CLEAR_TAP_COUNT_TIME?1:2,this._lastSetTapCountTime=t,e.tapCount=i}else e.type!==ZM.Change&&e.type!==ZM.Contextmenu||(this._lastSetTapCountTime=0);if(e.initialTarget instanceof Node){for(const t of this.ignoreTargets)if(t.contains(e.initialTarget))return;const t=[];for(const i of this.targets)if(i.contains(e.initialTarget)){let n=0,o=e.initialTarget;for(;o&&o!==i;)n++,o=o.parentElement;t.push([n,i])}t.sort(((e,t)=>e[0]-t[0]));for(const[i,n]of t)n.dispatchEvent(e),this.dispatched=!0}}inertia(e,t,i,n,o,s,r,a,l){this.handle=wa(e,(()=>{const d=Date.now(),c=d-i;let h=0,u=0,g=!0;n+=QM.SCROLL_FRICTION*c,r+=QM.SCROLL_FRICTION*c,n>0&&(g=!1,h=o*n*c),r>0&&(g=!1,u=a*r*c);const p=this.newGestureEvent(ZM.Change);p.translationX=h,p.translationY=u,t.forEach((e=>e.dispatchEvent(p))),g||this.inertia(e,t,d,n,o,s+h,r,a,l+u)}))}onTouchMove(e){const t=Date.now();for(let i=0,n=e.changedTouches.length;i3&&(o.rollingPageX.shift(),o.rollingPageY.shift(),o.rollingTimestamps.shift()),o.rollingPageX.push(n.pageX),o.rollingPageY.push(n.pageY),o.rollingTimestamps.push(t)}this.dispatched&&(e.preventDefault(),e.stopPropagation(),this.dispatched=!1)}}!function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);s>3&&r&&Object.defineProperty(t,i,r)}([YM],QM,"isTouchDevice",null);let XM=()=>({get delay(){return-1},dispose:()=>{},showHover:()=>{}});const JM=new Ai((()=>XM("mouse",!1))),eT=new Ai((()=>XM("element",!1)));function tT(e){return"element"===e?eT.value:JM.value}function iT(){return XM("element",!0)}var nT=i(8880),oT={};oT.styleTagTransform=Vl(),oT.setAttributes=Fl(),oT.insert=Ol().bind(null,"head"),oT.domAPI=Rl(),oT.insertStyleElement=Wl(),Ml()(nT.A,oT),nT.A&&nT.A.locals&&nT.A.locals;let sT={showInstantHover:()=>{},showDelayedHover:()=>{},setupDelayedHover:()=>Tt.None,setupDelayedHoverAtMouse:()=>Tt.None,hideHover:()=>{},showAndFocusLastHover:()=>{},setupManagedHover:()=>({dispose:()=>{},show:()=>{},hide:()=>{},update:()=>{}}),showManagedHover:()=>{}};function rT(){return sT}kg.white.toString(),kg.white.toString();const aT=Object.freeze({allowedTags:{override:["b","i","u","code","span"]},allowedAttributes:{override:["class"]}});class lT extends Tt{get onDidClick(){return this._onDidClick.event}constructor(e,t){super(),this._label="",this._onDidClick=this._register(new Gt),this._onDidEscape=this._register(new Gt),this.options=t,this._element=document.createElement("a"),this._element.classList.add("monaco-button"),this._element.tabIndex=0,this._element.setAttribute("role","button"),this._element.classList.toggle("secondary",!!t.secondary);const i=t.secondary?t.buttonSecondaryBackground:t.buttonBackground,n=t.secondary?t.buttonSecondaryForeground:t.buttonForeground;this._element.style.color=n||"",this._element.style.backgroundColor=i||"",t.supportShortLabel&&(this._labelShortElement=document.createElement("div"),this._labelShortElement.classList.add("monaco-button-label-short"),this._element.appendChild(this._labelShortElement),this._labelElement=document.createElement("div"),this._labelElement.classList.add("monaco-button-label"),this._element.appendChild(this._labelElement),this._element.classList.add("monaco-text-button-with-short-label")),"string"==typeof t.title&&this.setTitle(t.title),"string"==typeof t.ariaLabel&&this._element.setAttribute("aria-label",t.ariaLabel),e.appendChild(this._element),this.enabled=!t.disabled,this._register(QM.addTarget(this._element)),[Za.CLICK,ZM.Tap].forEach((e=>{this._register(ua(this._element,e,(e=>{this.enabled?this._onDidClick.fire(e):Xa(e)})))})),this._register(ua(this._element,Za.KEY_DOWN,(e=>{const t=new Ge(e);let i=!1;this.enabled&&(t.equals(3)||t.equals(10))?(this._onDidClick.fire(e),i=!0):t.equals(9)&&(this._onDidEscape.fire(e),this._element.blur(),i=!0),i&&Xa(t,!0)}))),this._register(ua(this._element,Za.MOUSE_OVER,(e=>{this._element.classList.contains("disabled")||this.updateBackground(!0)}))),this._register(ua(this._element,Za.MOUSE_OUT,(e=>{this.updateBackground(!1)}))),this.focusTracker=this._register(el(this._element)),this._register(this.focusTracker.onDidFocus((()=>{this.enabled&&this.updateBackground(!0)}))),this._register(this.focusTracker.onDidBlur((()=>{this.enabled&&this.updateBackground(!1)})))}dispose(){super.dispose(),this._element.remove()}getContentElements(e){const t=[];for(let i of _N(e))if("string"==typeof i){if(i=i.trim(),""===i)continue;const e=document.createElement("span");e.textContent=i,t.push(e)}else t.push(i);return t}updateBackground(e){let t;t=this.options.secondary?e?this.options.buttonSecondaryHoverBackground:this.options.buttonSecondaryBackground:e?this.options.buttonHoverBackground:this.options.buttonBackground,t&&(this._element.style.backgroundColor=t)}get element(){return this._element}set label(e){if(this._label===e)return;if(Yc(this._label)&&Yc(e)&&function(e,t){return e===t||!(!e||!t)&&e.value===t.value&&e.isTrusted===t.isTrusted&&e.supportThemeIcons===t.supportThemeIcons&&e.supportHtml===t.supportHtml&&(e.baseUri===t.baseUri||!!e.baseUri&&!!t.baseUri&&Oc(ho.from(e.baseUri),ho.from(t.baseUri)))}(this._label,e))return;this._element.classList.add("monaco-text-button");const t=this.options.supportShortLabel?this._labelElement:this._element;if(Yc(e)){const i=wN(e,void 0,document.createElement("span"));i.dispose();const n=i.element.querySelector("p")?.innerHTML;n?mN(t,n,aT):nl(t)}else this.options.supportIcons?nl(t,...this.getContentElements(e)):t.textContent=e;let i="";"string"==typeof this.options.title?i=this.options.title:this.options.title&&(i=function(e){if("string"==typeof e)return e;let t=e.value??"";return t.length>1e5&&(t=`${t.substr(0,1e5)}…`),function(e,t,i={}){return hN(e,IN(t,i),"trusted")}(nD(t,{async:!1,renderer:MN.value}),{isTrusted:!1},{}).toString().replace(/&(#\d+|[a-zA-Z]+);/g,(e=>DN.get(e)??e)).trim()}(e)),this.setTitle(i),this._setAriaLabel(),this._label=e}get label(){return this._label}_setAriaLabel(){"string"==typeof this.options.ariaLabel?this._element.setAttribute("aria-label",this.options.ariaLabel):"string"==typeof this.options.title&&this._element.setAttribute("aria-label",this.options.title)}set icon(e){this._setAriaLabel();const t=Array.from(this._element.classList).filter((e=>e.startsWith("codicon-")));this._element.classList.remove(...t),this._element.classList.add(..._c.asClassNameArray(e))}set enabled(e){e?(this._element.classList.remove("disabled"),this._element.setAttribute("aria-disabled",String(!1)),this._element.tabIndex=0):(this._element.classList.add("disabled"),this._element.setAttribute("aria-disabled",String(!0)))}get enabled(){return!this._element.classList.contains("disabled")}setTitle(e){this._hover||""===e?this._hover&&this._hover.update(e):this._hover=this._register(rT().setupManagedHover(this.options.hoverDelegate??tT("element"),this._element,e))}}function dT(e,t){return t&&(e.stack||e.stacktrace)?C(29,"{0}: {1}",hT(e),cT(e.stack)||cT(e.stacktrace)):hT(e)}function cT(e){return Array.isArray(e)?e.join("\n"):e}function hT(e){return"ERR_UNC_HOST_NOT_ALLOWED"===e.code?`${e.message}. Please update the 'security.allowedUNCHosts' setting if you want to allow this host.`:"string"==typeof e.code&&"number"==typeof e.errno&&"string"==typeof e.syscall?C(30,"A system error occurred ({0})",e.message):e.message||C(31,"An unknown error occurred. Please consult the log for more details.")}function uT(e=null,t=!1){if(!e)return C(32,"An unknown error occurred. Please consult the log for more details.");if(Array.isArray(e)){const i=rs(e),n=uT(i[0],t);return i.length>1?C(33,"{0} ({1} errors in total)",n,i.length):n}if(at(e))return e;if(e.detail){const i=e.detail;if(i.error)return dT(i.error,t);if(i.exception)return dT(i.exception,t)}return e.stack?dT(e,t):e.message?e.message:C(34,"An unknown error occurred. Please consult the log for more details.")}class gT extends Tt{onclick(e,t){this._register(ua(e,Za.CLICK,(i=>t(new Xe(ea(e),i)))))}onmousedown(e,t){this._register(ua(e,Za.MOUSE_DOWN,(i=>t(new Xe(ea(e),i)))))}onmouseover(e,t){this._register(ua(e,Za.MOUSE_OVER,(i=>t(new Xe(ea(e),i)))))}onmouseleave(e,t){this._register(ua(e,Za.MOUSE_LEAVE,(i=>t(new Xe(ea(e),i)))))}onkeydown(e,t){this._register(ua(e,Za.KEY_DOWN,(e=>t(new Ge(e)))))}onkeyup(e,t){this._register(ua(e,Za.KEY_UP,(e=>t(new Ge(e)))))}oninput(e,t){this._register(ua(e,Za.INPUT,t))}onblur(e,t){this._register(ua(e,Za.BLUR,t))}onfocus(e,t){this._register(ua(e,Za.FOCUS,t))}ignoreGesture(e){return QM.ignoreTarget(e)}}var pT=i(5070),mT={};function fT(e,t){if(void 0!==e){const i=e.match(/^\s*var\((.+)\)$/);if(i){const e=i[1].split(",",2);return 2===e.length&&(t=fT(e[1].trim(),t)),`var(${e[0]}, ${t})`}return e}return t}function _T(e){const t=e.replaceAll(/[^_\-a-z0-9]/gi,"");return t!==e&&console.warn(`CSS ident value ${e} modified to ${t} to be safe for CSS`),t}function vT(e){return`'${e.replaceAll(/'/g,"\\000027")}'`}function bT(e){return e?CT`url('${CSS.escape(Eo.uriToBrowserUri(e).toString(!0))}')`:"url('')"}function wT(e,t=!1){const i=CSS.escape(e);return t||i===e||console.warn(`CSS class name ${e} modified to ${i} to be safe for CSS`),i}function CT(e,...t){return e.reduce(((e,i,n)=>e+i+(t[n]||"")),"")}mT.styleTagTransform=Vl(),mT.setAttributes=Fl(),mT.insert=Ol().bind(null,"head"),mT.domAPI=Rl(),mT.insertStyleElement=Wl(),Ml()(pT.A,mT),pT.A&&pT.A.locals&&pT.A.locals;class yT{constructor(){this._parts=[]}push(...e){this._parts.push(...e)}join(e="\n"){return this._parts.join(e)}}const ST=new Map;class xT{constructor(){this._currentCssStyle="",this._styleSheet=void 0}setStyle(e){e!==this._currentCssStyle&&(this._currentCssStyle=e,this._styleSheet?this._styleSheet.textContent=e:this._styleSheet=kT(s.document.head,(t=>t.textContent=e)))}dispose(){this._styleSheet&&(this._styleSheet.remove(),this._styleSheet=void 0)}}function kT(e=s.document.head,t,i){const n=document.createElement("style");if(n.type="text/css",n.media="screen",t?.(n),e.appendChild(n),i&&i.add(Nt((()=>n.remove()))),e===s.document.head){const e=new Set;ST.set(n,e),i&&i.add(Nt((()=>ST.delete(n))));for(const{window:t,disposables:o}of ia()){if(t===s)continue;const r=o.add(LT(n,e,t));i?.add(r)}}return n}function LT(e,t,i){const n=new Mt,o=e.cloneNode(!0);i.document.head.appendChild(o),n.add(Nt((()=>o.remove())));for(const t of DT(e))o.sheet?.insertRule(t.cssText,o.sheet?.cssRules.length);return n.add(ja.observe(e,n,{childList:!0,subtree:c,characterData:c})((()=>{o.textContent=e.textContent}))),t.add(o),n.add(Nt((()=>t.delete(o)))),n}let ET=null;function IT(){return ET||(ET=kT()),ET}function DT(e){return e?.sheet?.rules?e.sheet.rules:e?.sheet?.cssRules?e.sheet.cssRules:[]}function NT(e,t,i=IT()){if(i&&t){i.sheet?.insertRule(`${e} {${t}}`,0);for(const n of ST.get(i)??[])NT(e,t,n)}}function MT(e,t=IT()){if(!t)return;const i=DT(t),n=[];for(let t=0;t=0;e--)t.sheet?.deleteRule(n[e]);for(const i of ST.get(t)??[])MT(e,i)}function TT(e){return"string"==typeof e.selectorText}class RT{get event(){return this.emitter.event}constructor(e,t,i){const n=e=>this.emitter.fire(e);this.emitter=new Gt({onWillAddFirstListener:()=>e.addEventListener(t,n,i),onDidRemoveLastListener:()=>e.removeEventListener(t,n,i)})}dispose(){this.emitter.dispose()}}class AT{constructor(e){this.spliceables=e}splice(e,t,i){this.spliceables.forEach((n=>n.splice(e,t,i)))}}function OT(e,t,i){return Math.min(Math.max(e,t),i)}class PT{constructor(){this._n=1,this._val=0}update(e){return this._val=this._val+(e-this._val)/this._n,this._n+=1,this._val}get value(){return this._val}}class FT{constructor(e){this._n=0,this._val=0,this._values=[],this._index=0,this._sum=0,this._values=new Array(e),this._values.fill(0,0,e)}update(e){const t=this._values[this._index];return this._values[this._index]=e,this._index=(this._index+1)%this._values.length,this._sum-=t,this._sum+=e,this._n{try{e.releasePointerCapture(t)}catch(e){}})))}catch(t){s=ea(e)}this._hooks.add(ua(s,Za.POINTER_MOVE,(e=>{e.buttons===i?(e.preventDefault(),this._pointerMoveCallback(e)):this.stopMonitoring(!0)}))),this._hooks.add(ua(s,Za.POINTER_UP,(e=>this.stopMonitoring(!0))))}}class zT extends gT{constructor(e){super(),this._onActivate=e.onActivate,this.bgDomNode=document.createElement("div"),this.bgDomNode.className="arrow-background",this.bgDomNode.style.position="absolute",this.bgDomNode.style.width=e.bgWidth+"px",this.bgDomNode.style.height=e.bgHeight+"px",void 0!==e.top&&(this.bgDomNode.style.top="0px"),void 0!==e.left&&(this.bgDomNode.style.left="0px"),void 0!==e.bottom&&(this.bgDomNode.style.bottom="0px"),void 0!==e.right&&(this.bgDomNode.style.right="0px"),this.domNode=document.createElement("div"),this.domNode.className=e.className,this.domNode.classList.add(..._c.asClassNameArray(e.icon)),this.domNode.style.position="absolute",this.domNode.style.width="11px",this.domNode.style.height="11px",void 0!==e.top&&(this.domNode.style.top=e.top+"px"),void 0!==e.left&&(this.domNode.style.left=e.left+"px"),void 0!==e.bottom&&(this.domNode.style.bottom=e.bottom+"px"),void 0!==e.right&&(this.domNode.style.right=e.right+"px"),this._pointerMoveMonitor=this._register(new VT),this._register(pa(this.bgDomNode,Za.POINTER_DOWN,(e=>this._arrowPointerDown(e)))),this._register(pa(this.domNode,Za.POINTER_DOWN,(e=>this._arrowPointerDown(e)))),this._pointerdownRepeatTimer=this._register(new Ca),this._pointerdownScheduleRepeatTimer=this._register(new vi)}_arrowPointerDown(e){e.target&&e.target instanceof Element&&(this._onActivate(),this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancelAndSet((()=>{this._pointerdownRepeatTimer.cancelAndSet((()=>this._onActivate()),1e3/24,ea(e))}),200),this._pointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,(e=>{}),(()=>{this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancel()})),e.preventDefault())}}class UT extends Tt{constructor(e,t,i){super(),this._visibility=e,this._visibleClassName=t,this._invisibleClassName=i,this._domNode=null,this._isVisible=!1,this._isNeeded=!1,this._rawShouldBeVisible=!1,this._shouldBeVisible=!1,this._revealTimer=this._register(new vi)}setVisibility(e){this._visibility!==e&&(this._visibility=e,this._updateShouldBeVisible())}setShouldBeVisible(e){this._rawShouldBeVisible=e,this._updateShouldBeVisible()}_applyVisibilitySetting(){return 2!==this._visibility&&(3===this._visibility||this._rawShouldBeVisible)}_updateShouldBeVisible(){const e=this._applyVisibilitySetting();this._shouldBeVisible!==e&&(this._shouldBeVisible=e,this.ensureVisibility())}setIsNeeded(e){this._isNeeded!==e&&(this._isNeeded=e,this.ensureVisibility())}setDomNode(e){this._domNode=e,this._domNode.setClassName(this._invisibleClassName),this.setShouldBeVisible(!1)}ensureVisibility(){this._isNeeded?this._shouldBeVisible?this._reveal():this._hide(!0):this._hide(!1)}_reveal(){this._isVisible||(this._isVisible=!0,this._revealTimer.setIfNotSet((()=>{this._domNode?.setClassName(this._visibleClassName)}),0))}_hide(e){this._revealTimer.cancel(),this._isVisible&&(this._isVisible=!1,this._domNode?.setClassName(this._invisibleClassName+(e?" fade":"")))}}class jT extends gT{constructor(e){super(),this._lazyRender=e.lazyRender,this._host=e.host,this._scrollable=e.scrollable,this._scrollByPage=e.scrollByPage,this._scrollbarState=e.scrollbarState,this._visibilityController=this._register(new UT(e.visibility,"visible scrollbar "+e.extraScrollbarClassName,"invisible scrollbar "+e.extraScrollbarClassName)),this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._pointerMoveMonitor=this._register(new VT),this._shouldRender=!0,this.domNode=JN(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this._visibilityController.setDomNode(this.domNode),this.domNode.setPosition("absolute"),this._register(ua(this.domNode.domNode,Za.POINTER_DOWN,(e=>this._domNodePointerDown(e))))}_createArrow(e){const t=this._register(new zT(e));this.domNode.domNode.appendChild(t.bgDomNode),this.domNode.domNode.appendChild(t.domNode)}_createSlider(e,t,i,n){this.slider=JN(document.createElement("div")),this.slider.setClassName("slider"),this.slider.setPosition("absolute"),this.slider.setTop(e),this.slider.setLeft(t),"number"==typeof i&&this.slider.setWidth(i),"number"==typeof n&&this.slider.setHeight(n),this.slider.setLayerHinting(!0),this.slider.setContain("strict"),this.domNode.domNode.appendChild(this.slider.domNode),this._register(ua(this.slider.domNode,Za.POINTER_DOWN,(e=>{0===e.button&&(e.preventDefault(),this._sliderPointerDown(e))}))),this.onclick(this.slider.domNode,(e=>{e.leftButton&&e.stopPropagation()}))}_onElementSize(e){return this._scrollbarState.setVisibleSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollSize(e){return this._scrollbarState.setScrollSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollPosition(e){return this._scrollbarState.setScrollPosition(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}beginReveal(){this._visibilityController.setShouldBeVisible(!0)}beginHide(){this._visibilityController.setShouldBeVisible(!1)}render(){this._shouldRender&&(this._shouldRender=!1,this._renderDomNode(this._scrollbarState.getRectangleLargeSize(),this._scrollbarState.getRectangleSmallSize()),this._updateSlider(this._scrollbarState.getSliderSize(),this._scrollbarState.getArrowSize()+this._scrollbarState.getSliderPosition()))}_domNodePointerDown(e){e.target===this.domNode.domNode&&this._onPointerDown(e)}delegatePointerDown(e){const t=this.domNode.domNode.getClientRects()[0].top,i=t+this._scrollbarState.getSliderPosition(),n=t+this._scrollbarState.getSliderPosition()+this._scrollbarState.getSliderSize(),o=this._sliderPointerPosition(e);i<=o&&o<=n?0===e.button&&(e.preventDefault(),this._sliderPointerDown(e)):this._onPointerDown(e)}_onPointerDown(e){let t,i;if(e.target===this.domNode.domNode&&"number"==typeof e.offsetX&&"number"==typeof e.offsetY)t=e.offsetX,i=e.offsetY;else{const n=Ia(this.domNode.domNode);t=e.pageX-n.left,i=e.pageY-n.top}const n="mouse"===e.pointerType,o=0===e.button;if(o||!n){const e=this._pointerDownRelativePosition(t,i);this._setDesiredScrollPositionNow(this._scrollByPage?this._scrollbarState.getDesiredScrollPositionFromOffsetPaged(e):this._scrollbarState.getDesiredScrollPositionFromOffset(e))}o&&(e.preventDefault(),this._sliderPointerDown(e))}_sliderPointerDown(e){if(!(e.target&&e.target instanceof Element))return;const t=this._sliderPointerPosition(e),i=this._sliderOrthogonalPointerPosition(e),n=this._scrollbarState.clone();this.slider.toggleClassName("active",!0),this._pointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,(e=>{const o=this._sliderOrthogonalPointerPosition(e),s=Math.abs(o-i);if(K&&s>140)return void this._setDesiredScrollPositionNow(n.getScrollPosition());const r=this._sliderPointerPosition(e)-t;this._setDesiredScrollPositionNow(n.getDesiredScrollPositionFromDelta(r))}),(()=>{this.slider.toggleClassName("active",!1),this._host.onDragEnd()})),this._host.onDragStart()}_setDesiredScrollPositionNow(e){const t={};this.writeScrollPosition(t,e),this._scrollable.setScrollPositionNow(t)}updateScrollbarSize(e){this._updateScrollbarSize(e),this._scrollbarState.setScrollbarSize(e),this._shouldRender=!0,this._lazyRender||this.render()}isNeeded(){return this._scrollbarState.isNeeded()}}class KT{constructor(e,t,i,n,o,s){this._scrollbarSize=Math.round(t),this._oppositeScrollbarSize=Math.round(i),this._arrowSize=Math.round(e),this._visibleSize=n,this._scrollSize=o,this._scrollPosition=s,this._computedAvailableSize=0,this._computedIsNeeded=!1,this._computedSliderSize=0,this._computedSliderRatio=0,this._computedSliderPosition=0,this._refreshComputedValues()}clone(){return new KT(this._arrowSize,this._scrollbarSize,this._oppositeScrollbarSize,this._visibleSize,this._scrollSize,this._scrollPosition)}setVisibleSize(e){const t=Math.round(e);return this._visibleSize!==t&&(this._visibleSize=t,this._refreshComputedValues(),!0)}setScrollSize(e){const t=Math.round(e);return this._scrollSize!==t&&(this._scrollSize=t,this._refreshComputedValues(),!0)}setScrollPosition(e){const t=Math.round(e);return this._scrollPosition!==t&&(this._scrollPosition=t,this._refreshComputedValues(),!0)}setScrollbarSize(e){this._scrollbarSize=Math.round(e)}setOppositeScrollbarSize(e){this._oppositeScrollbarSize=Math.round(e)}static _computeValues(e,t,i,n,o){const s=Math.max(0,i-e),r=Math.max(0,s-2*t),a=n>0&&n>i;if(!a)return{computedAvailableSize:Math.round(s),computedIsNeeded:a,computedSliderSize:Math.round(r),computedSliderRatio:0,computedSliderPosition:0};const l=Math.round(Math.max(20,Math.floor(i*r/n))),d=(r-l)/(n-i),c=o*d;return{computedAvailableSize:Math.round(s),computedIsNeeded:a,computedSliderSize:Math.round(l),computedSliderRatio:d,computedSliderPosition:Math.round(c)}}_refreshComputedValues(){const e=KT._computeValues(this._oppositeScrollbarSize,this._arrowSize,this._visibleSize,this._scrollSize,this._scrollPosition);this._computedAvailableSize=e.computedAvailableSize,this._computedIsNeeded=e.computedIsNeeded,this._computedSliderSize=e.computedSliderSize,this._computedSliderRatio=e.computedSliderRatio,this._computedSliderPosition=e.computedSliderPosition}getArrowSize(){return this._arrowSize}getScrollPosition(){return this._scrollPosition}getRectangleLargeSize(){return this._computedAvailableSize}getRectangleSmallSize(){return this._scrollbarSize}isNeeded(){return this._computedIsNeeded}getSliderSize(){return this._computedSliderSize}getSliderPosition(){return this._computedSliderPosition}getDesiredScrollPositionFromOffset(e){if(!this._computedIsNeeded)return 0;const t=e-this._arrowSize-this._computedSliderSize/2;return Math.round(t/this._computedSliderRatio)}getDesiredScrollPositionFromOffsetPaged(e){if(!this._computedIsNeeded)return 0;const t=e-this._arrowSize;let i=this._scrollPosition;return tthis._host.onMouseWheel(new Je(null,1,0))}),this._createArrow({className:"scra",icon:mc.scrollbarButtonRight,top:i,left:void 0,bottom:void 0,right:e,bgWidth:t.arrowSize,bgHeight:t.horizontalScrollbarSize,onActivate:()=>this._host.onMouseWheel(new Je(null,-1,0))})}this._createSlider(Math.floor((t.horizontalScrollbarSize-t.horizontalSliderSize)/2),0,void 0,t.horizontalSliderSize)}_updateSlider(e,t){this.slider.setWidth(e),this.slider.setLeft(t)}_renderDomNode(e,t){this.domNode.setWidth(e),this.domNode.setHeight(t),this.domNode.setLeft(0),this.domNode.setBottom(0)}onDidScroll(e){return this._shouldRender=this._onElementScrollSize(e.scrollWidth)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(e.scrollLeft)||this._shouldRender,this._shouldRender=this._onElementSize(e.width)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(e,t){return e}_sliderPointerPosition(e){return e.pageX}_sliderOrthogonalPointerPosition(e){return e.pageY}_updateScrollbarSize(e){this.slider.setHeight(e)}writeScrollPosition(e,t){e.scrollLeft=t}updateOptions(e){this.updateScrollbarSize(2===e.horizontal?0:e.horizontalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(2===e.vertical?0:e.verticalScrollbarSize),this._visibilityController.setVisibility(e.horizontal),this._scrollByPage=e.scrollByPage}}class $T extends jT{constructor(e,t,i){const n=e.getScrollDimensions(),o=e.getCurrentScrollPosition();if(super({lazyRender:t.lazyRender,host:i,scrollbarState:new KT(t.verticalHasArrows?t.arrowSize:0,2===t.vertical?0:t.verticalScrollbarSize,0,n.height,n.scrollHeight,o.scrollTop),visibility:t.vertical,extraScrollbarClassName:"vertical",scrollable:e,scrollByPage:t.scrollByPage}),t.verticalHasArrows){const e=(t.arrowSize-11)/2,i=(t.verticalScrollbarSize-11)/2;this._createArrow({className:"scra",icon:mc.scrollbarButtonUp,top:e,left:i,bottom:void 0,right:void 0,bgWidth:t.verticalScrollbarSize,bgHeight:t.arrowSize,onActivate:()=>this._host.onMouseWheel(new Je(null,0,1))}),this._createArrow({className:"scra",icon:mc.scrollbarButtonDown,top:void 0,left:i,bottom:e,right:void 0,bgWidth:t.verticalScrollbarSize,bgHeight:t.arrowSize,onActivate:()=>this._host.onMouseWheel(new Je(null,0,-1))})}this._createSlider(0,Math.floor((t.verticalScrollbarSize-t.verticalSliderSize)/2),t.verticalSliderSize,void 0)}_updateSlider(e,t){this.slider.setHeight(e),this.slider.setTop(t)}_renderDomNode(e,t){this.domNode.setWidth(t),this.domNode.setHeight(e),this.domNode.setRight(0),this.domNode.setTop(0)}onDidScroll(e){return this._shouldRender=this._onElementScrollSize(e.scrollHeight)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(e.scrollTop)||this._shouldRender,this._shouldRender=this._onElementSize(e.height)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(e,t){return t}_sliderPointerPosition(e){return e.pageY}_sliderOrthogonalPointerPosition(e){return e.pageX}_updateScrollbarSize(e){this.slider.setWidth(e)}writeScrollPosition(e,t){e.scrollTop=t}updateOptions(e){this.updateScrollbarSize(2===e.vertical?0:e.verticalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(0),this._visibilityController.setVisibility(e.vertical),this._scrollByPage=e.scrollByPage}}class GT{constructor(e,t,i,n,o,s,r){this._forceIntegerValues=e,this._scrollStateBrand=void 0,this._forceIntegerValues&&(t|=0,i|=0,n|=0,o|=0,s|=0,r|=0),this.rawScrollLeft=n,this.rawScrollTop=r,t<0&&(t=0),n+t>i&&(n=i-t),n<0&&(n=0),o<0&&(o=0),r+o>s&&(r=s-o),r<0&&(r=0),this.width=t,this.scrollWidth=i,this.scrollLeft=n,this.height=o,this.scrollHeight=s,this.scrollTop=r}equals(e){return this.rawScrollLeft===e.rawScrollLeft&&this.rawScrollTop===e.rawScrollTop&&this.width===e.width&&this.scrollWidth===e.scrollWidth&&this.scrollLeft===e.scrollLeft&&this.height===e.height&&this.scrollHeight===e.scrollHeight&&this.scrollTop===e.scrollTop}withScrollDimensions(e,t){return new GT(this._forceIntegerValues,void 0!==e.width?e.width:this.width,void 0!==e.scrollWidth?e.scrollWidth:this.scrollWidth,t?this.rawScrollLeft:this.scrollLeft,void 0!==e.height?e.height:this.height,void 0!==e.scrollHeight?e.scrollHeight:this.scrollHeight,t?this.rawScrollTop:this.scrollTop)}withScrollPosition(e){return new GT(this._forceIntegerValues,this.width,this.scrollWidth,void 0!==e.scrollLeft?e.scrollLeft:this.rawScrollLeft,this.height,this.scrollHeight,void 0!==e.scrollTop?e.scrollTop:this.rawScrollTop)}createScrollEvent(e,t){const i=this.width!==e.width,n=this.scrollWidth!==e.scrollWidth,o=this.scrollLeft!==e.scrollLeft,s=this.height!==e.height,r=this.scrollHeight!==e.scrollHeight,a=this.scrollTop!==e.scrollTop;return{inSmoothScrolling:t,oldWidth:e.width,oldScrollWidth:e.scrollWidth,oldScrollLeft:e.scrollLeft,width:this.width,scrollWidth:this.scrollWidth,scrollLeft:this.scrollLeft,oldHeight:e.height,oldScrollHeight:e.scrollHeight,oldScrollTop:e.scrollTop,height:this.height,scrollHeight:this.scrollHeight,scrollTop:this.scrollTop,widthChanged:i,scrollWidthChanged:n,scrollLeftChanged:o,heightChanged:s,scrollHeightChanged:r,scrollTopChanged:a}}}class YT extends Tt{constructor(e){super(),this._scrollableBrand=void 0,this._onScroll=this._register(new Gt),this.onScroll=this._onScroll.event,this._smoothScrollDuration=e.smoothScrollDuration,this._scheduleAtNextAnimationFrame=e.scheduleAtNextAnimationFrame,this._state=new GT(e.forceIntegerValues,0,0,0,0,0,0),this._smoothScrolling=null}dispose(){this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),super.dispose()}setSmoothScrollDuration(e){this._smoothScrollDuration=e}validateScrollPosition(e){return this._state.withScrollPosition(e)}getScrollDimensions(){return this._state}setScrollDimensions(e,t){const i=this._state.withScrollDimensions(e,t);this._setState(i,Boolean(this._smoothScrolling)),this._smoothScrolling?.acceptScrollDimensions(this._state)}getFutureScrollPosition(){return this._smoothScrolling?this._smoothScrolling.to:this._state}getCurrentScrollPosition(){return this._state}setScrollPositionNow(e){const t=this._state.withScrollPosition(e);this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),this._setState(t,!1)}setScrollPositionSmooth(e,t){if(0===this._smoothScrollDuration)return this.setScrollPositionNow(e);if(this._smoothScrolling){e={scrollLeft:void 0===e.scrollLeft?this._smoothScrolling.to.scrollLeft:e.scrollLeft,scrollTop:void 0===e.scrollTop?this._smoothScrolling.to.scrollTop:e.scrollTop};const i=this._state.withScrollPosition(e);if(this._smoothScrolling.to.scrollLeft===i.scrollLeft&&this._smoothScrolling.to.scrollTop===i.scrollTop)return;let n;n=t?new XT(this._smoothScrolling.from,i,this._smoothScrolling.startTime,this._smoothScrolling.duration):this._smoothScrolling.combine(this._state,i,this._smoothScrollDuration),this._smoothScrolling.dispose(),this._smoothScrolling=n}else{const t=this._state.withScrollPosition(e);this._smoothScrolling=XT.start(this._state,t,this._smoothScrollDuration)}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame((()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())}))}hasPendingScrollAnimation(){return Boolean(this._smoothScrolling)}_performSmoothScrolling(){if(!this._smoothScrolling)return;const e=this._smoothScrolling.tick(),t=this._state.withScrollPosition(e);return this._setState(t,!0),this._smoothScrolling?e.isDone?(this._smoothScrolling.dispose(),void(this._smoothScrolling=null)):void(this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame((()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())}))):void 0}_setState(e,t){const i=this._state;i.equals(e)||(this._state=e,this._onScroll.fire(this._state.createScrollEvent(i,t)))}}class ZT{constructor(e,t,i){this.scrollLeft=e,this.scrollTop=t,this.isDone=i}}function QT(e,t){const i=t-e;return function(t){return e+i*(1-(n=1-t,Math.pow(n,3)));var n}}class XT{constructor(e,t,i,n){this.from=e,this.to=t,this.duration=n,this.startTime=i,this.animationFrameDisposable=null,this._initAnimations()}_initAnimations(){this.scrollLeft=this._initAnimation(this.from.scrollLeft,this.to.scrollLeft,this.to.width),this.scrollTop=this._initAnimation(this.from.scrollTop,this.to.scrollTop,this.to.height)}_initAnimation(e,t,i){if(Math.abs(e-t)>2.5*i){let n,o;return e0&&Math.abs(e.deltaY)>0)return 1;let i=.5;if(this._isAlmostInt(e.deltaX)&&this._isAlmostInt(e.deltaY)||(i+=.25),t){const n=Math.abs(e.deltaX),o=Math.abs(e.deltaY),s=Math.abs(t.deltaX),r=Math.abs(t.deltaY),a=Math.max(Math.min(n,s),1),l=Math.max(Math.min(o,r),1),d=Math.max(n,s),c=Math.max(o,r);d%a==0&&c%l==0&&(i-=.5)}return Math.min(Math.max(i,0),1)}_isAlmostInt(e){const t=100*Number.EPSILON;return Math.abs(Math.round(e)-e)<.01+t}}class oR extends gT{get onScroll(){return this._onScroll.event}get options(){return this._options}constructor(e,t,i){super(),this._inertialTimeout=null,this._inertialSpeed={X:0,Y:0},this._onScroll=this._register(new Gt),this._onWillScroll=this._register(new Gt),e.style.overflow="hidden",this._options=function(e){const t={lazyRender:void 0!==e.lazyRender&&e.lazyRender,className:void 0!==e.className?e.className:"",useShadows:void 0===e.useShadows||e.useShadows,handleMouseWheel:void 0===e.handleMouseWheel||e.handleMouseWheel,flipAxes:void 0!==e.flipAxes&&e.flipAxes,consumeMouseWheelIfScrollbarIsNeeded:void 0!==e.consumeMouseWheelIfScrollbarIsNeeded&&e.consumeMouseWheelIfScrollbarIsNeeded,alwaysConsumeMouseWheel:void 0!==e.alwaysConsumeMouseWheel&&e.alwaysConsumeMouseWheel,scrollYToX:void 0!==e.scrollYToX&&e.scrollYToX,mouseWheelScrollSensitivity:void 0!==e.mouseWheelScrollSensitivity?e.mouseWheelScrollSensitivity:1,fastScrollSensitivity:void 0!==e.fastScrollSensitivity?e.fastScrollSensitivity:5,scrollPredominantAxis:void 0===e.scrollPredominantAxis||e.scrollPredominantAxis,mouseWheelSmoothScroll:void 0===e.mouseWheelSmoothScroll||e.mouseWheelSmoothScroll,inertialScroll:void 0!==e.inertialScroll&&e.inertialScroll,arrowSize:void 0!==e.arrowSize?e.arrowSize:11,listenOnDomNode:void 0!==e.listenOnDomNode?e.listenOnDomNode:null,horizontal:void 0!==e.horizontal?e.horizontal:1,horizontalScrollbarSize:void 0!==e.horizontalScrollbarSize?e.horizontalScrollbarSize:10,horizontalSliderSize:void 0!==e.horizontalSliderSize?e.horizontalSliderSize:0,horizontalHasArrows:void 0!==e.horizontalHasArrows&&e.horizontalHasArrows,vertical:void 0!==e.vertical?e.vertical:1,verticalScrollbarSize:void 0!==e.verticalScrollbarSize?e.verticalScrollbarSize:10,verticalHasArrows:void 0!==e.verticalHasArrows&&e.verticalHasArrows,verticalSliderSize:void 0!==e.verticalSliderSize?e.verticalSliderSize:0,scrollByPage:void 0!==e.scrollByPage&&e.scrollByPage};return t.horizontalSliderSize=void 0!==e.horizontalSliderSize?e.horizontalSliderSize:t.horizontalScrollbarSize,t.verticalSliderSize=void 0!==e.verticalSliderSize?e.verticalSliderSize:t.verticalScrollbarSize,q&&(t.className+=" mac"),t}(t),this._scrollable=i,this._register(this._scrollable.onScroll((e=>{this._onWillScroll.fire(e),this._onDidScroll(e),this._onScroll.fire(e)})));const n={onMouseWheel:e=>this._onMouseWheel(e),onDragStart:()=>this._onDragStart(),onDragEnd:()=>this._onDragEnd()};this._verticalScrollbar=this._register(new $T(this._scrollable,this._options,n)),this._horizontalScrollbar=this._register(new qT(this._scrollable,this._options,n)),this._domNode=document.createElement("div"),this._domNode.className="monaco-scrollable-element "+this._options.className,this._domNode.setAttribute("role","presentation"),this._domNode.style.position="relative",this._domNode.style.overflow="hidden",this._domNode.appendChild(e),this._domNode.appendChild(this._horizontalScrollbar.domNode.domNode),this._domNode.appendChild(this._verticalScrollbar.domNode.domNode),this._options.useShadows?(this._leftShadowDomNode=JN(document.createElement("div")),this._leftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._leftShadowDomNode.domNode),this._topShadowDomNode=JN(document.createElement("div")),this._topShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topShadowDomNode.domNode),this._topLeftShadowDomNode=JN(document.createElement("div")),this._topLeftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topLeftShadowDomNode.domNode)):(this._leftShadowDomNode=null,this._topShadowDomNode=null,this._topLeftShadowDomNode=null),this._listenOnDomNode=this._options.listenOnDomNode||this._domNode,this._mouseWheelToDispose=[],this._setListeningToMouseWheel(this._options.handleMouseWheel),this.onmouseover(this._listenOnDomNode,(e=>this._onMouseOver(e))),this.onmouseleave(this._listenOnDomNode,(e=>this._onMouseLeave(e))),this._hideTimeout=this._register(new vi),this._isDragging=!1,this._mouseIsOver=!1,this._shouldRender=!0,this._revealOnScroll=!0}dispose(){this._mouseWheelToDispose=Et(this._mouseWheelToDispose),this._inertialTimeout&&(this._inertialTimeout.dispose(),this._inertialTimeout=null),super.dispose()}getDomNode(){return this._domNode}getOverviewRulerLayoutInfo(){return{parent:this._domNode,insertBefore:this._verticalScrollbar.domNode.domNode}}delegateVerticalScrollbarPointerDown(e){this._verticalScrollbar.delegatePointerDown(e)}getScrollDimensions(){return this._scrollable.getScrollDimensions()}setScrollDimensions(e){this._scrollable.setScrollDimensions(e,!1)}updateClassName(e){this._options.className=e,q&&(this._options.className+=" mac"),this._domNode.className="monaco-scrollable-element "+this._options.className}updateOptions(e){void 0!==e.handleMouseWheel&&(this._options.handleMouseWheel=e.handleMouseWheel,this._setListeningToMouseWheel(this._options.handleMouseWheel)),void 0!==e.mouseWheelScrollSensitivity&&(this._options.mouseWheelScrollSensitivity=e.mouseWheelScrollSensitivity),void 0!==e.fastScrollSensitivity&&(this._options.fastScrollSensitivity=e.fastScrollSensitivity),void 0!==e.scrollPredominantAxis&&(this._options.scrollPredominantAxis=e.scrollPredominantAxis),void 0!==e.horizontal&&(this._options.horizontal=e.horizontal),void 0!==e.vertical&&(this._options.vertical=e.vertical),void 0!==e.horizontalScrollbarSize&&(this._options.horizontalScrollbarSize=e.horizontalScrollbarSize),void 0!==e.verticalScrollbarSize&&(this._options.verticalScrollbarSize=e.verticalScrollbarSize),void 0!==e.scrollByPage&&(this._options.scrollByPage=e.scrollByPage),this._horizontalScrollbar.updateOptions(this._options),this._verticalScrollbar.updateOptions(this._options),this._options.lazyRender||this._render()}delegateScrollFromMouseWheelEvent(e){this._onMouseWheel(new Je(e))}async _periodicSync(){let e=!1;0===this._inertialSpeed.X&&0===this._inertialSpeed.Y||(this._scrollable.setScrollPositionNow({scrollTop:this._scrollable.getCurrentScrollPosition().scrollTop-100*this._inertialSpeed.Y,scrollLeft:this._scrollable.getCurrentScrollPosition().scrollLeft-100*this._inertialSpeed.X}),this._inertialSpeed.X*=.9,this._inertialSpeed.Y*=.9,Math.abs(this._inertialSpeed.X)<.01&&(this._inertialSpeed.X=0),Math.abs(this._inertialSpeed.Y)<.01&&(this._inertialSpeed.Y=0),e=0!==this._inertialSpeed.X||0!==this._inertialSpeed.Y),e?(this._inertialTimeout||(this._inertialTimeout=new vi),this._inertialTimeout.cancelAndSet((()=>this._periodicSync()),1e3/60)):(this._inertialTimeout?.dispose(),this._inertialTimeout=null)}_setListeningToMouseWheel(e){if(this._mouseWheelToDispose.length>0!==e&&(this._mouseWheelToDispose=Et(this._mouseWheelToDispose),e)){const e=e=>{this._onMouseWheel(new Je(e))};this._mouseWheelToDispose.push(ua(this._listenOnDomNode,Za.MOUSE_WHEEL,e,{passive:!1}))}}_onMouseWheel(e){if(e.browserEvent?.defaultPrevented)return;const t=nR.INSTANCE;t.acceptStandardWheelEvent(e);let i=!1;if(e.deltaY||e.deltaX){let n=e.deltaY*this._options.mouseWheelScrollSensitivity,o=e.deltaX*this._options.mouseWheelScrollSensitivity;this._options.scrollPredominantAxis&&(this._options.scrollYToX&&o+n===0?o=n=0:Math.abs(n)>=Math.abs(o)?o=0:n=0),this._options.flipAxes&&([n,o]=[o,n]);const s=!q&&e.browserEvent&&e.browserEvent.shiftKey;!this._options.scrollYToX&&!s||o||(o=n,n=0),e.browserEvent&&e.browserEvent.altKey&&(o*=this._options.fastScrollSensitivity,n*=this._options.fastScrollSensitivity);const r=this._scrollable.getFutureScrollPosition();let a={};if(n){const e=50*n,t=r.scrollTop-(e<0?Math.floor(e):Math.ceil(e));this._verticalScrollbar.writeScrollPosition(a,t)}if(o){const e=50*o,t=r.scrollLeft-(e<0?Math.floor(e):Math.ceil(e));this._horizontalScrollbar.writeScrollPosition(a,t)}if(a=this._scrollable.validateScrollPosition(a),this._options.inertialScroll&&(o||n)){let e=!1;0===this._inertialSpeed.X&&0===this._inertialSpeed.Y&&(e=!0),this._inertialSpeed.Y=(n<0?-1:1)*Math.abs(n)**1.02,this._inertialSpeed.X=(o<0?-1:1)*Math.abs(o)**1.02,e&&this._periodicSync()}r.scrollLeft===a.scrollLeft&&r.scrollTop===a.scrollTop||(this._options.mouseWheelSmoothScroll&&t.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(a):this._scrollable.setScrollPositionNow(a),i=!0)}let n=i;!n&&this._options.alwaysConsumeMouseWheel&&(n=!0),!n&&this._options.consumeMouseWheelIfScrollbarIsNeeded&&(this._verticalScrollbar.isNeeded()||this._horizontalScrollbar.isNeeded())&&(n=!0),n&&(e.preventDefault(),e.stopPropagation())}_onDidScroll(e){this._shouldRender=this._horizontalScrollbar.onDidScroll(e)||this._shouldRender,this._shouldRender=this._verticalScrollbar.onDidScroll(e)||this._shouldRender,this._options.useShadows&&(this._shouldRender=!0),this._revealOnScroll&&this._reveal(),this._options.lazyRender||this._render()}renderNow(){if(!this._options.lazyRender)throw new Error("Please use `lazyRender` together with `renderNow`!");this._render()}_render(){if(this._shouldRender&&(this._shouldRender=!1,this._horizontalScrollbar.render(),this._verticalScrollbar.render(),this._options.useShadows)){const e=this._scrollable.getCurrentScrollPosition(),t=e.scrollTop>0,i=e.scrollLeft>0,n=i?" left":"",o=t?" top":"",s=i||t?" top-left-corner":"";this._leftShadowDomNode.setClassName(`shadow${n}`),this._topShadowDomNode.setClassName(`shadow${o}`),this._topLeftShadowDomNode.setClassName(`shadow${s}${o}${n}`)}}_onDragStart(){this._isDragging=!0,this._reveal()}_onDragEnd(){this._isDragging=!1,this._hide()}_onMouseLeave(e){this._mouseIsOver=!1,this._hide()}_onMouseOver(e){this._mouseIsOver=!0,this._reveal()}_reveal(){this._verticalScrollbar.beginReveal(),this._horizontalScrollbar.beginReveal(),this._scheduleHide()}_hide(){this._mouseIsOver||this._isDragging||(this._verticalScrollbar.beginHide(),this._horizontalScrollbar.beginHide())}_scheduleHide(){this._mouseIsOver||this._isDragging||this._hideTimeout.cancelAndSet((()=>this._hide()),500)}}class sR extends oR{constructor(e,t){(t=t||{}).mouseWheelSmoothScroll=!1;const i=new YT({forceIntegerValues:!0,smoothScrollDuration:0,scheduleAtNextAnimationFrame:t=>wa(ea(e),t)});super(e,t,i),this._register(i)}setScrollPosition(e){this._scrollable.setScrollPositionNow(e)}}class rR extends oR{constructor(e,t,i){super(e,t,i)}setScrollPosition(e){e.reuseAnimation?this._scrollable.setScrollPositionSmooth(e,e.reuseAnimation):this._scrollable.setScrollPositionNow(e)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}}class aR extends oR{constructor(e,t){(t=t||{}).mouseWheelSmoothScroll=!1;const i=new YT({forceIntegerValues:!1,smoothScrollDuration:0,scheduleAtNextAnimationFrame:t=>wa(ea(e),t)});super(e,t,i),this._register(i),this._element=e,this._register(this.onScroll((e=>{e.scrollTopChanged&&(this._element.scrollTop=e.scrollTop),e.scrollLeftChanged&&(this._element.scrollLeft=e.scrollLeft)}))),this.scanDomNode()}setScrollPosition(e){this._scrollable.setScrollPositionNow(e)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}scanDomNode(){this.setScrollDimensions({width:this._element.clientWidth,scrollWidth:this._element.scrollWidth,height:this._element.clientHeight,scrollHeight:this._element.scrollHeight}),this.setScrollPosition({scrollLeft:this._element.scrollLeft,scrollTop:this._element.scrollTop})}}function lR(e,t){const i=[];for(const n of t){if(e.start>=n.range.end)continue;if(e.end=t.end||t.start>=e.end)return{start:0,end:0};const i=Math.max(e.start,t.start),n=Math.min(e.end,t.end);return n-i<=0?{start:0,end:0}:{start:i,end:n}}function i(e){return e.end-e.start<=0}e.intersect=t,e.isEmpty=i,e.intersects=function(e,n){return!i(t(e,n))},e.relativeComplement=function(e,t){const n=[],o={start:e.start,end:Math.min(t.start,e.end)},s={start:Math.max(t.end,e.start),end:e.end};return i(o)||n.push(o),i(s)||n.push(s),n}}(JT||(JT={}));class cR{get paddingTop(){return this._paddingTop}set paddingTop(e){this._size=this._size+e-this._paddingTop,this._paddingTop=e}constructor(e){this.groups=[],this._size=0,this._paddingTop=0,this._paddingTop=e??0,this._size=this._paddingTop}splice(e,t,i=[]){const n=i.length-t,o=lR({start:0,end:e},this.groups),s=lR({start:e+t,end:Number.POSITIVE_INFINITY},this.groups).map((e=>({range:dR(e.range,n),size:e.size}))),r=i.map(((t,i)=>({range:{start:e+i,end:e+i+1},size:t.size})));this.groups=function(...e){return function(e){const t=[];let i=null;for(const n of e){const e=n.range.start,o=n.range.end,s=n.size;i&&s===i.size?i.range.end=o:(i={range:{start:e,end:o},size:s},t.push(i))}return t}(e.reduce(((e,t)=>e.concat(t)),[]))}(o,r,s),this._size=this._paddingTop+this.groups.reduce(((e,t)=>e+t.size*(t.range.end-t.range.start)),0)}get count(){const e=this.groups.length;return e?this.groups[e-1].range.end:0}get size(){return this._size}indexAt(e){if(e<0)return-1;if(e{for(const i of e)this.getRenderer(t).disposeTemplate(i.templateData),i.templateData=null})),this.cache.clear(),this.transactionNodesPendingRemoval.clear()}getRenderer(e){const t=this.renderers.get(e);if(!t)throw new Error(`No renderer found for ${e}`);return t}}var uR=i(4214),gR={};gR.styleTagTransform=Vl(),gR.setAttributes=Fl(),gR.insert=Ol().bind(null,"head"),gR.domAPI=Rl(),gR.insertStyleElement=Wl(),Ml()(uR.A,gR),uR.A&&uR.A.locals&&uR.A.locals;var pR=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r};const mR={CurrentDragAndDropData:void 0},fR={useShadows:!0,verticalScrollMode:1,setRowLineHeight:!0,setRowHeight:!0,supportDynamicHeights:!1,dnd:{getDragElements:e=>[e],getDragURI:()=>null,onDragStart(){},onDragOver:()=>!1,drop(){},dispose(){}},horizontalScrolling:!1,transformOptimization:!0,alwaysConsumeMouseWheel:!0};class _R{constructor(e){this.elements=e}update(){}getData(){return this.elements}}class vR{constructor(e){this.elements=e}update(){}getData(){return this.elements}}class bR{constructor(){this.types=[],this.files=[]}update(e){if(e.types&&this.types.splice(0,this.types.length,...e.types),e.files){this.files.splice(0,this.files.length);for(let t=0;ti,this.getPosInSet=e?.getPosInSet?e.getPosInSet.bind(e):(e,t)=>t+1,this.getRole=e?.getRole?e.getRole.bind(e):e=>"listitem",this.isChecked=e?.isChecked?e.isChecked.bind(e):e=>{}}}class CR{static{this.InstanceCount=0}get contentHeight(){return this.rangeMap.size}get onDidScroll(){return this.scrollableElement.onScroll}get scrollableElementDomNode(){return this.scrollableElement.getDomNode()}get horizontalScrolling(){return this._horizontalScrolling}set horizontalScrolling(e){if(e!==this._horizontalScrolling){if(e&&this.supportDynamicHeights)throw new Error("Horizontal scrolling and dynamic heights not supported simultaneously");if(this._horizontalScrolling=e,this.domNode.classList.toggle("horizontal-scrolling",this._horizontalScrolling),this._horizontalScrolling){for(const e of this.items)this.measureItemWidth(e);this.updateScrollWidth(),this.scrollableElement.setScrollDimensions({width:Ma(this.domNode)}),this.rowsContainer.style.width=`${Math.max(this.scrollWidth||0,this.renderWidth)}px`}else this.scrollableElementWidthDelayer.cancel(),this.scrollableElement.setScrollDimensions({width:this.renderWidth,scrollWidth:this.renderWidth}),this.rowsContainer.style.width=""}}constructor(e,t,i,n=fR){if(this.virtualDelegate=t,this.domId="list_id_"+ ++CR.InstanceCount,this.renderers=new Map,this.renderWidth=0,this._scrollHeight=0,this.scrollableElementUpdateDisposable=null,this.scrollableElementWidthDelayer=new ui(50),this.splicing=!1,this.dragOverAnimationStopDisposable=Tt.None,this.dragOverMouseY=0,this.canDrop=!1,this.currentDragFeedbackDisposable=Tt.None,this.onDragLeaveTimeout=Tt.None,this.currentSelectionDisposable=Tt.None,this.disposables=new Mt,this._onDidChangeContentHeight=new Gt,this._onDidChangeContentWidth=new Gt,this.onDidChangeContentHeight=Vt.latch(this._onDidChangeContentHeight.event,void 0,this.disposables),this._horizontalScrolling=!1,n.horizontalScrolling&&n.supportDynamicHeights)throw new Error("Horizontal scrolling and dynamic heights not supported simultaneously");this.items=[],this.itemId=0,this.rangeMap=this.createRangeMap(n.paddingTop??0);for(const e of i)this.renderers.set(e.templateId,e);if(this.cache=this.disposables.add(new hR(this.renderers)),this.lastRenderTop=0,this.lastRenderHeight=0,this.domNode=document.createElement("div"),this.domNode.className="monaco-list",this.domNode.classList.add(this.domId),this.domNode.tabIndex=0,this.domNode.classList.toggle("mouse-support","boolean"!=typeof n.mouseSupport||n.mouseSupport),this._horizontalScrolling=n.horizontalScrolling??fR.horizontalScrolling,this.domNode.classList.toggle("horizontal-scrolling",this._horizontalScrolling),this.paddingBottom=void 0===n.paddingBottom?0:n.paddingBottom,this.accessibilityProvider=new wR(n.accessibilityProvider),this.rowsContainer=document.createElement("div"),this.rowsContainer.className="monaco-list-rows",(n.transformOptimization??fR.transformOptimization)&&(this.rowsContainer.style.transform="translate3d(0px, 0px, 0px)",this.rowsContainer.style.overflow="hidden",this.rowsContainer.style.contain="strict"),this.disposables.add(QM.addTarget(this.rowsContainer)),this.scrollable=this.disposables.add(new YT({forceIntegerValues:!0,smoothScrollDuration:n.smoothScrolling?125:0,scheduleAtNextAnimationFrame:e=>wa(ea(this.domNode),e)})),this.scrollableElement=this.disposables.add(new rR(this.rowsContainer,{alwaysConsumeMouseWheel:n.alwaysConsumeMouseWheel??fR.alwaysConsumeMouseWheel,horizontal:1,vertical:n.verticalScrollMode??fR.verticalScrollMode,useShadows:n.useShadows??fR.useShadows,mouseWheelScrollSensitivity:n.mouseWheelScrollSensitivity,fastScrollSensitivity:n.fastScrollSensitivity,scrollByPage:n.scrollByPage},this.scrollable)),this.domNode.appendChild(this.scrollableElement.getDomNode()),e.appendChild(this.domNode),this.scrollableElement.onScroll(this.onScroll,this,this.disposables),this.disposables.add(ua(this.rowsContainer,ZM.Change,(e=>this.onTouchChange(e)))),this.disposables.add(ua(this.scrollableElement.getDomNode(),"scroll",(e=>{const t=e.target,i=t.scrollTop;t.scrollTop=0,n.scrollToActiveElement&&this.setScrollTop(this.scrollTop+i)}))),this.disposables.add(ua(this.domNode,"dragover",(e=>this.onDragOver(this.toDragEvent(e))))),this.disposables.add(ua(this.domNode,"drop",(e=>this.onDrop(this.toDragEvent(e))))),this.disposables.add(ua(this.domNode,"dragleave",(e=>this.onDragLeave(this.toDragEvent(e))))),this.disposables.add(ua(this.domNode,"dragend",(e=>this.onDragEnd(e)))),n.userSelection){if(n.dnd)throw new Error("DND and user selection cannot be used simultaneously");this.disposables.add(ua(this.domNode,"mousedown",(e=>this.onPotentialSelectionStart(e))))}this.setRowLineHeight=n.setRowLineHeight??fR.setRowLineHeight,this.setRowHeight=n.setRowHeight??fR.setRowHeight,this.supportDynamicHeights=n.supportDynamicHeights??fR.supportDynamicHeights,this.dnd=n.dnd??this.disposables.add(fR.dnd),this.layout(n.initialSize?.height,n.initialSize?.width),n.scrollToActiveElement&&this._setupFocusObserver(e)}_setupFocusObserver(e){this.disposables.add(ua(e,"focus",(()=>{const t=Wa();this.activeElement!==t&&null!==t&&(this.activeElement=t,this._scrollToActiveElement(this.activeElement,e))}),!0))}_scrollToActiveElement(e,t){const i=t.getBoundingClientRect(),n=e.getBoundingClientRect().top-i.top;n<0&&this.setScrollTop(this.scrollTop+n)}updateOptions(e){let t;if(void 0!==e.paddingBottom&&(this.paddingBottom=e.paddingBottom,this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight})),void 0!==e.smoothScrolling&&this.scrollable.setSmoothScrollDuration(e.smoothScrolling?125:0),void 0!==e.horizontalScrolling&&(this.horizontalScrolling=e.horizontalScrolling),void 0!==e.scrollByPage&&(t={...t??{},scrollByPage:e.scrollByPage}),void 0!==e.mouseWheelScrollSensitivity&&(t={...t??{},mouseWheelScrollSensitivity:e.mouseWheelScrollSensitivity}),void 0!==e.fastScrollSensitivity&&(t={...t??{},fastScrollSensitivity:e.fastScrollSensitivity}),t&&this.scrollableElement.updateOptions(t),void 0!==e.paddingTop&&e.paddingTop!==this.rangeMap.paddingTop){const t=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),i=e.paddingTop-this.rangeMap.paddingTop;this.rangeMap.paddingTop=e.paddingTop,this.render(t,Math.max(0,this.lastRenderTop+i),this.lastRenderHeight,void 0,void 0,!0),this.setScrollTop(this.lastRenderTop),this.eventuallyUpdateScrollDimensions(),this.supportDynamicHeights&&this._rerender(this.lastRenderTop,this.lastRenderHeight)}}createRangeMap(e){return new cR(e)}splice(e,t,i=[]){if(this.splicing)throw new Error("Can't run recursive splices.");this.splicing=!0;try{return this._splice(e,t,i)}finally{this.splicing=!1,this._onDidChangeContentHeight.fire(this.contentHeight)}}_splice(e,t,i=[]){const n=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),o={start:e,end:e+t},s=JT.intersect(n,o),r=new Map;for(let e=s.end-1;e>=s.start;e--){const t=this.items[e];if(t.dragStartDisposable.dispose(),t.checkedDisposable.dispose(),t.row){let i=r.get(t.templateId);i||(i=[],r.set(t.templateId,i));const n=this.renderers.get(t.templateId);n&&n.disposeElement&&n.disposeElement(t.element,e,t.row.templateData,{height:t.size}),i.unshift(t.row)}t.row=null,t.stale=!0}const a={start:e+t,end:this.items.length},l=JT.intersect(a,n),d=JT.relativeComplement(a,n),c=i.map((e=>({id:String(this.itemId++),element:e,templateId:this.virtualDelegate.getTemplateId(e),size:this.virtualDelegate.getHeight(e),width:void 0,hasDynamicHeight:!!this.virtualDelegate.hasDynamicHeight&&this.virtualDelegate.hasDynamicHeight(e),lastDynamicHeightWidth:void 0,row:null,uri:void 0,dropTarget:!1,dragStartDisposable:Tt.None,checkedDisposable:Tt.None,stale:!1})));let h;0===e&&t>=this.items.length?(this.rangeMap=this.createRangeMap(this.rangeMap.paddingTop),this.rangeMap.splice(0,0,c),h=this.items,this.items=c):(this.rangeMap.splice(e,t,c),h=_s(this.items,e,t,c));const u=i.length-t,g=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),p=dR(l,u),m=JT.intersect(g,p);for(let e=m.start;edR(e,u))),v=[{start:e,end:e+i.length},..._].map((e=>JT.intersect(g,e))).reverse();for(const e of v)for(let t=e.end-1;t>=e.start;t--){const e=this.items[t],i=r.get(e.templateId),n=i?.pop();this.insertItemInDOM(t,n)}for(const e of r.values())for(const t of e)this.cache.release(t);return this.eventuallyUpdateScrollDimensions(),this.supportDynamicHeights&&this._rerender(this.scrollTop,this.renderHeight),h.map((e=>e.element))}eventuallyUpdateScrollDimensions(){this._scrollHeight=this.contentHeight,this.rowsContainer.style.height=`${this._scrollHeight}px`,this.scrollableElementUpdateDisposable||(this.scrollableElementUpdateDisposable=wa(ea(this.domNode),(()=>{this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight}),this.updateScrollWidth(),this.scrollableElementUpdateDisposable=null})))}eventuallyUpdateScrollWidth(){this.horizontalScrolling?this.scrollableElementWidthDelayer.trigger((()=>this.updateScrollWidth())):this.scrollableElementWidthDelayer.cancel()}updateScrollWidth(){if(!this.horizontalScrolling)return;let e=0;for(const t of this.items)void 0!==t.width&&(e=Math.max(e,t.width));this.scrollWidth=e,this.scrollableElement.setScrollDimensions({scrollWidth:0===e?0:e+10}),this._onDidChangeContentWidth.fire(this.scrollWidth)}rerender(){if(this.supportDynamicHeights){for(const e of this.items)e.lastDynamicHeightWidth=void 0;this._rerender(this.lastRenderTop,this.lastRenderHeight)}}get length(){return this.items.length}get renderHeight(){return this.scrollableElement.getScrollDimensions().height}get firstVisibleIndex(){return this.getVisibleRange(this.lastRenderTop,this.lastRenderHeight).start}element(e){return this.items[e].element}indexOf(e){return this.items.findIndex((t=>t.element===e))}domElement(e){const t=this.items[e].row;return t&&t.domNode}elementHeight(e){return this.items[e].size}elementTop(e){return this.rangeMap.positionAt(e)}indexAt(e){return this.rangeMap.indexAt(e)}indexAfter(e){return this.rangeMap.indexAfter(e)}layout(e,t){const i={height:"number"==typeof e?e:Ta(this.domNode)};this.scrollableElementUpdateDisposable&&(this.scrollableElementUpdateDisposable.dispose(),this.scrollableElementUpdateDisposable=null,i.scrollHeight=this.scrollHeight),this.scrollableElement.setScrollDimensions(i),void 0!==t&&(this.renderWidth=t,this.supportDynamicHeights&&this._rerender(this.scrollTop,this.renderHeight)),this.horizontalScrolling&&this.scrollableElement.setScrollDimensions({width:"number"==typeof t?t:Ma(this.domNode)})}render(e,t,i,n,o,s=!1,r=!1){const a=this.getRenderRange(t,i),l=JT.relativeComplement(a,e).reverse(),d=JT.relativeComplement(e,a);if(s){const t=JT.intersect(e,a);for(let e=t.start;e{for(const e of d)for(let t=e.start;t=e.start;t--)this.insertItemInDOM(t)})),void 0!==n&&(this.rowsContainer.style.left=`-${n}px`),this.rowsContainer.style.top=`-${t}px`,this.horizontalScrolling&&void 0!==o&&(this.rowsContainer.style.width=`${Math.max(o,this.renderWidth)}px`),this.lastRenderTop=t,this.lastRenderHeight=i}insertItemInDOM(e,t){const i=this.items[e];if(!i.row)if(t)i.row=t,i.stale=!0;else{const e=this.cache.alloc(i.templateId);i.row=e.row,i.stale||=e.isReusingConnectedDomNode}const n=this.accessibilityProvider.getRole(i.element)||"listitem";i.row.domNode.setAttribute("role",n);const o=this.accessibilityProvider.isChecked(i.element);if("boolean"==typeof o)i.row.domNode.setAttribute("aria-checked",String(!!o));else if(o){const e=e=>i.row.domNode.setAttribute("aria-checked",String(!!e));e(o.value),i.checkedDisposable=o.onDidChange((()=>e(o.value)))}if(i.stale||!i.row.domNode.parentElement){const t=this.items.at(e+1)?.row?.domNode??null;i.row.domNode.parentElement===this.rowsContainer&&i.row.domNode.nextElementSibling===t||this.rowsContainer.insertBefore(i.row.domNode,t),i.stale=!1}this.updateItemInDOM(i,e);const s=this.renderers.get(i.templateId);if(!s)throw new Error(`No renderer found for template id ${i.templateId}`);s?.renderElement(i.element,e,i.row.templateData,{height:i.size});const r=this.dnd.getDragURI(i.element);i.dragStartDisposable.dispose(),i.row.domNode.draggable=!!r,r&&(i.dragStartDisposable=ua(i.row.domNode,"dragstart",(e=>this.onDragStart(i.element,r,e)))),this.horizontalScrolling&&(this.measureItemWidth(i),this.eventuallyUpdateScrollWidth())}measureItemWidth(e){if(!e.row||!e.row.domNode)return;e.row.domNode.style.width="fit-content",e.width=Ma(e.row.domNode);const t=ea(e.row.domNode).getComputedStyle(e.row.domNode);t.paddingLeft&&(e.width+=parseFloat(t.paddingLeft)),t.paddingRight&&(e.width+=parseFloat(t.paddingRight)),e.row.domNode.style.width=""}updateItemInDOM(e,t){e.row.domNode.style.top=`${this.elementTop(t)}px`,this.setRowHeight&&(e.row.domNode.style.height=`${e.size}px`),this.setRowLineHeight&&(e.row.domNode.style.lineHeight=`${e.size}px`),e.row.domNode.setAttribute("data-index",`${t}`),e.row.domNode.setAttribute("data-last-element",t===this.length-1?"true":"false"),e.row.domNode.setAttribute("data-parity",t%2==0?"even":"odd"),e.row.domNode.setAttribute("aria-setsize",String(this.accessibilityProvider.getSetSize(e.element,t,this.length))),e.row.domNode.setAttribute("aria-posinset",String(this.accessibilityProvider.getPosInSet(e.element,t))),e.row.domNode.setAttribute("id",this.getElementDomId(t)),e.row.domNode.classList.toggle("drop-target",e.dropTarget)}removeItemFromDOM(e,t){const i=this.items[e];if(i.dragStartDisposable.dispose(),i.checkedDisposable.dispose(),i.row){const n=this.renderers.get(i.templateId);n&&n.disposeElement&&n.disposeElement(i.element,e,i.row.templateData,{height:i.size,onScroll:t}),this.cache.release(i.row),i.row=null}this.horizontalScrolling&&this.eventuallyUpdateScrollWidth()}getScrollTop(){return this.scrollableElement.getScrollPosition().scrollTop}setScrollTop(e,t){this.scrollableElementUpdateDisposable&&(this.scrollableElementUpdateDisposable.dispose(),this.scrollableElementUpdateDisposable=null,this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight})),this.scrollableElement.setScrollPosition({scrollTop:e,reuseAnimation:t})}get scrollTop(){return this.getScrollTop()}set scrollTop(e){this.setScrollTop(e)}get scrollHeight(){return this._scrollHeight+(this.horizontalScrolling?10:0)+this.paddingBottom}get onMouseClick(){return Vt.map(this.disposables.add(new RT(this.domNode,"click")).event,(e=>this.toMouseEvent(e)),this.disposables)}get onMouseDblClick(){return Vt.map(this.disposables.add(new RT(this.domNode,"dblclick")).event,(e=>this.toMouseEvent(e)),this.disposables)}get onMouseMiddleClick(){return Vt.filter(Vt.map(this.disposables.add(new RT(this.domNode,"auxclick")).event,(e=>this.toMouseEvent(e)),this.disposables),(e=>1===e.browserEvent.button),this.disposables)}get onMouseDown(){return Vt.map(this.disposables.add(new RT(this.domNode,"mousedown")).event,(e=>this.toMouseEvent(e)),this.disposables)}get onMouseOver(){return Vt.map(this.disposables.add(new RT(this.domNode,"mouseover")).event,(e=>this.toMouseEvent(e)),this.disposables)}get onMouseOut(){return Vt.map(this.disposables.add(new RT(this.domNode,"mouseout")).event,(e=>this.toMouseEvent(e)),this.disposables)}get onContextMenu(){return Vt.any(Vt.map(this.disposables.add(new RT(this.domNode,"contextmenu")).event,(e=>this.toMouseEvent(e)),this.disposables),Vt.map(this.disposables.add(new RT(this.domNode,ZM.Contextmenu)).event,(e=>this.toGestureEvent(e)),this.disposables))}get onTouchStart(){return Vt.map(this.disposables.add(new RT(this.domNode,"touchstart")).event,(e=>this.toTouchEvent(e)),this.disposables)}get onTap(){return Vt.map(this.disposables.add(new RT(this.rowsContainer,ZM.Tap)).event,(e=>this.toGestureEvent(e)),this.disposables)}toMouseEvent(e){const t=this.getItemIndexFromEventTarget(e.target||null),i=void 0===t?void 0:this.items[t];return{browserEvent:e,index:t,element:i&&i.element}}toTouchEvent(e){const t=this.getItemIndexFromEventTarget(e.target||null),i=void 0===t?void 0:this.items[t];return{browserEvent:e,index:t,element:i&&i.element}}toGestureEvent(e){const t=this.getItemIndexFromEventTarget(e.initialTarget||null),i=void 0===t?void 0:this.items[t];return{browserEvent:e,index:t,element:i&&i.element}}toDragEvent(e){const t=this.getItemIndexFromEventTarget(e.target||null),i=void 0===t?void 0:this.items[t];return{browserEvent:e,index:t,element:i&&i.element,sector:this.getTargetSector(e,t)}}onScroll(e){try{const t=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight);this.render(t,e.scrollTop,e.height,e.scrollLeft,e.scrollWidth,void 0,!0),this.supportDynamicHeights&&this._rerender(e.scrollTop,e.height,e.inSmoothScrolling)}catch(t){throw console.error("Got bad scroll event:",e),t}}onTouchChange(e){e.preventDefault(),e.stopPropagation(),this.scrollTop-=e.translationY}onDragStart(e,t,i){if(!i.dataTransfer)return;const n=this.dnd.getDragElements(e);let o;i.dataTransfer.effectAllowed="copyMove",i.dataTransfer.setData(kE.TEXT,t),this.dnd.getDragLabel&&(o=this.dnd.getDragLabel(n,i)),void 0===o&&(o=String(n.length)),function(e,t,i,n=[]){if(!e.dataTransfer)return;const o=al(".monaco-drag-image");o.textContent=i,o.classList.add(...n),(e=>{for(;e&&!e.classList.contains("monaco-workbench");)e=e.parentElement;return e||t.ownerDocument.body})(t).appendChild(o),e.dataTransfer.setDragImage(o,-10,-10),setTimeout((()=>o.remove()),0)}(i,this.domNode,o,[this.domId]),this.domNode.classList.add("dragging"),this.currentDragData=new _R(n),mR.CurrentDragAndDropData=new vR(n),this.dnd.onDragStart?.(this.currentDragData,i)}onPotentialSelectionStart(e){this.currentSelectionDisposable.dispose();const t=ta(this.domNode),i=this.currentSelectionDisposable=new Mt,n=i.add(new Mt);n.add(ua(this.domNode,"selectstart",(()=>{n.add(ua(t,"mousemove",(e=>{!1===t.getSelection()?.isCollapsed&&this.setupDragAndDropScrollTopAnimation(e)}))),i.add(Nt((()=>{const e=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight);this.currentSelectionBounds=void 0,this.render(e,this.lastRenderTop,this.lastRenderHeight,void 0,void 0)}))),i.add(ua(t,"selectionchange",(()=>{const e=t.getSelection();if(!e||e.isCollapsed)return void(n.isDisposed&&i.dispose());let o=this.getIndexOfListElement(e.anchorNode),s=this.getIndexOfListElement(e.focusNode);void 0!==o&&void 0!==s&&(s{n.dispose(),this.teardownDragAndDropScrollTopAnimation(),!1!==t.getSelection()?.isCollapsed&&i.dispose()})))}getIndexOfListElement(e){if(e&&this.domNode.contains(e))for(;e&&e!==this.domNode;){if(e.dataset?.index)return Number(e.dataset.index);e=e.parentElement}}onDragOver(e){if(e.browserEvent.preventDefault(),this.onDragLeaveTimeout.dispose(),mR.CurrentDragAndDropData&&"vscode-ui"===mR.CurrentDragAndDropData.getData())return!1;if(this.setupDragAndDropScrollTopAnimation(e.browserEvent),!e.browserEvent.dataTransfer)return!1;if(!this.currentDragData)if(mR.CurrentDragAndDropData)this.currentDragData=mR.CurrentDragAndDropData;else{if(!e.browserEvent.dataTransfer.types)return!1;this.currentDragData=new bR}const t=this.dnd.onDragOver(this.currentDragData,e.element,e.index,e.sector,e.browserEvent);if(this.canDrop="boolean"==typeof t?t:t.accept,!this.canDrop)return this.currentDragFeedback=void 0,this.currentDragFeedbackDisposable.dispose(),!1;let i;e.browserEvent.dataTransfer.dropEffect="boolean"!=typeof t&&0===t.effect?.type?"copy":"move",i="boolean"!=typeof t&&t.feedback?t.feedback:void 0===e.index?[-1]:[e.index],i=cs(i).filter((e=>e>=-1&&ee-t)),i=-1===i[0]?[-1]:i;let n="boolean"!=typeof t&&t.effect&&t.effect.position?t.effect.position:"drop-target";if(o=this.currentDragFeedback,s=i,(Array.isArray(o)&&Array.isArray(s)?Jo(o,s):o===s)&&this.currentDragFeedbackPosition===n)return!0;var o,s;if(this.currentDragFeedback=i,this.currentDragFeedbackPosition=n,this.currentDragFeedbackDisposable.dispose(),-1===i[0])this.domNode.classList.add(n),this.rowsContainer.classList.add(n),this.currentDragFeedbackDisposable=Nt((()=>{this.domNode.classList.remove(n),this.rowsContainer.classList.remove(n)}));else{if(i.length>1&&"drop-target"!==n)throw new Error("Can't use multiple feedbacks with position different than 'over'");"drop-target-after"===n&&i[0]{for(const e of i){const t=this.items[e];t.dropTarget=!1,t.row?.domNode.classList.remove(n)}}))}return!0}onDragLeave(e){this.onDragLeaveTimeout.dispose(),this.onDragLeaveTimeout=mi((()=>this.clearDragOverFeedback()),100,this.disposables),this.currentDragData&&this.dnd.onDragLeave?.(this.currentDragData,e.element,e.index,e.browserEvent)}onDrop(e){if(!this.canDrop)return;const t=this.currentDragData;this.teardownDragAndDropScrollTopAnimation(),this.clearDragOverFeedback(),this.domNode.classList.remove("dragging"),this.currentDragData=void 0,mR.CurrentDragAndDropData=void 0,t&&e.browserEvent.dataTransfer&&(e.browserEvent.preventDefault(),t.update(e.browserEvent.dataTransfer),this.dnd.drop(t,e.element,e.index,e.sector,e.browserEvent))}onDragEnd(e){this.canDrop=!1,this.teardownDragAndDropScrollTopAnimation(),this.clearDragOverFeedback(),this.domNode.classList.remove("dragging"),this.currentDragData=void 0,mR.CurrentDragAndDropData=void 0,this.dnd.onDragEnd?.(e)}clearDragOverFeedback(){this.currentDragFeedback=void 0,this.currentDragFeedbackPosition=void 0,this.currentDragFeedbackDisposable.dispose(),this.currentDragFeedbackDisposable=Tt.None}setupDragAndDropScrollTopAnimation(e){if(!this.dragOverAnimationDisposable){const e=Ea(this.domNode).top;this.dragOverAnimationDisposable=function(e,t){const i=()=>{t(),n=wa(e,i)};let n=wa(e,i);return Nt((()=>n.dispose()))}(ea(this.domNode),this.animateDragAndDropScrollTop.bind(this,e))}this.dragOverAnimationStopDisposable.dispose(),this.dragOverAnimationStopDisposable=mi((()=>{this.dragOverAnimationDisposable&&(this.dragOverAnimationDisposable.dispose(),this.dragOverAnimationDisposable=void 0)}),1e3,this.disposables),this.dragOverMouseY=e.pageY}animateDragAndDropScrollTop(e){if(void 0===this.dragOverMouseY)return;const t=this.dragOverMouseY-e,i=this.renderHeight-35;t<35?this.scrollTop+=Math.max(-14,Math.floor(.3*(t-35))):t>i&&(this.scrollTop+=Math.min(14,Math.floor(.3*(t-i))))}teardownDragAndDropScrollTopAnimation(){this.dragOverAnimationStopDisposable.dispose(),this.dragOverAnimationDisposable&&(this.dragOverAnimationDisposable.dispose(),this.dragOverAnimationDisposable=void 0)}getTargetSector(e,t){if(void 0===t)return;const i=e.offsetY/this.items[t].size;return OT(Math.floor(i/.25),0,3)}getItemIndexFromEventTarget(e){const t=this.scrollableElement.getDomNode();let i=e;for(;(Ka(i)||$a(i))&&i!==this.rowsContainer&&t.contains(i);){const e=i.getAttribute("data-index");if(e){const t=Number(e);if(!isNaN(t))return t}i=i.parentElement}}getVisibleRange(e,t){return{start:this.rangeMap.indexAt(e),end:this.rangeMap.indexAfter(e+t-1)}}getRenderRange(e,t){const i=this.getVisibleRange(e,t);if(this.currentSelectionBounds){const e=this.rangeMap.count;i.start=Math.min(i.start,this.currentSelectionBounds.start,e),i.end=Math.min(Math.max(i.end,this.currentSelectionBounds.end+1),e)}return i}_rerender(e,t,i){const n=this.getRenderRange(e,t);let o,s;e===this.elementTop(n.start)?(o=n.start,s=0):n.end-n.start>1&&(o=n.start+1,s=this.elementTop(o)-e);let r=0;for(;;){const a=this.getRenderRange(e,t);let l=!1;for(let e=a.start;e=e.start;t--)this.insertItemInDOM(t);for(let e=a.start;e=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r};class kR{constructor(e){this.trait=e,this.renderedElements=[]}get templateId(){return`template:${this.trait.name}`}renderTemplate(e){return e}renderElement(e,t,i){const n=this.renderedElements.findIndex((e=>e.templateData===i));if(n>=0){const e=this.renderedElements[n];this.trait.unrender(i),e.index=t}else{const e={index:t,templateData:i};this.renderedElements.push(e)}this.trait.renderIndex(t,i)}splice(e,t,i){const n=[];for(const o of this.renderedElements)o.index=e+t&&n.push({index:o.index+i-t,templateData:o.templateData});this.renderedElements=n}renderIndexes(e){for(const{index:t,templateData:i}of this.renderedElements)e.indexOf(t)>-1&&this.trait.renderIndex(t,i)}disposeTemplate(e){const t=this.renderedElements.findIndex((t=>t.templateData===e));t<0||this.renderedElements.splice(t,1)}}class LR{get onChange(){return this._onChange.event}get name(){return this._trait}get renderer(){return new kR(this)}constructor(e){this._trait=e,this.indexes=[],this.sortedIndexes=[],this._onChange=new Gt}splice(e,t,i){const n=i.length-t,o=e+t,s=[];let r=0;for(;r=o;)s.push(this.sortedIndexes[r++]+n);this.renderer.splice(e,t,i.length),this._set(s,s)}renderIndex(e,t){t.classList.toggle(this._trait,this.contains(e))}unrender(e){e.classList.remove(this._trait)}set(e,t){return this._set(e,[...e].sort(qR),t)}_set(e,t,i){const n=this.indexes,o=this.sortedIndexes;this.indexes=e,this.sortedIndexes=t;const s=KR(o,e);return this.renderer.renderIndexes(s),this._onChange.fire({indexes:e,browserEvent:i}),n}get(){return this.indexes}contains(e){return es(this.sortedIndexes,e,qR)>=0}dispose(){Et(this._onChange)}}xR([YM],LR.prototype,"renderer",null);class ER extends LR{constructor(e){super("selected"),this.setAriaSelected=e}renderIndex(e,t){super.renderIndex(e,t),this.setAriaSelected&&(this.contains(e)?t.setAttribute("aria-selected","true"):t.setAttribute("aria-selected","false"))}}class IR{constructor(e,t,i){this.trait=e,this.view=t,this.identityProvider=i}splice(e,t,i){if(!this.identityProvider)return this.trait.splice(e,t,new Array(i.length).fill(!1));const n=this.trait.get().map((e=>this.identityProvider.getId(this.view.element(e)).toString()));if(0===n.length)return this.trait.splice(e,t,new Array(i.length).fill(!1));const o=new Set(n),s=i.map((e=>o.has(this.identityProvider.getId(e).toString())));this.trait.splice(e,t,s)}}function DR(e,t){return!!e.classList.contains(t)||!e.classList.contains("monaco-list")&&!!e.parentElement&&DR(e.parentElement,t)}function NR(e){return DR(e,"monaco-editor")}function MR(e){return DR(e,"monaco-tree-sticky-row")}function TR(e){return e.classList.contains("monaco-tree-sticky-container")}function RR(e){return!!("A"===e.tagName&&e.classList.contains("monaco-button")||"DIV"===e.tagName&&e.classList.contains("monaco-button-dropdown"))||!e.classList.contains("monaco-list")&&!!e.parentElement&&RR(e.parentElement)}class AR{get onKeyDown(){return Vt.chain(this.disposables.add(new RT(this.view.domNode,"keydown")).event,(e=>e.filter((e=>!_l(e.target))).map((e=>new Ge(e)))))}constructor(e,t,i){this.list=e,this.view=t,this.disposables=new Mt,this.multipleSelectionDisposables=new Mt,this.multipleSelectionSupport=i.multipleSelectionSupport,this.disposables.add(this.onKeyDown((e=>{switch(e.keyCode){case 3:return this.onEnter(e);case 16:return this.onUpArrow(e);case 18:return this.onDownArrow(e);case 11:return this.onPageUpArrow(e);case 12:return this.onPageDownArrow(e);case 9:return this.onEscape(e);case 31:this.multipleSelectionSupport&&(q?e.metaKey:e.ctrlKey)&&this.onCtrlA(e)}})))}updateOptions(e){void 0!==e.multipleSelectionSupport&&(this.multipleSelectionSupport=e.multipleSelectionSupport)}onEnter(e){e.preventDefault(),e.stopPropagation(),this.list.setSelection(this.list.getFocus(),e.browserEvent)}onUpArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusPrevious(1,!1,e.browserEvent);const t=this.list.getFocus()[0];this.list.setAnchor(t),this.list.reveal(t),this.view.domNode.focus()}onDownArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusNext(1,!1,e.browserEvent);const t=this.list.getFocus()[0];this.list.setAnchor(t),this.list.reveal(t),this.view.domNode.focus()}onPageUpArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusPreviousPage(e.browserEvent);const t=this.list.getFocus()[0];this.list.setAnchor(t),this.list.reveal(t),this.view.domNode.focus()}onPageDownArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusNextPage(e.browserEvent);const t=this.list.getFocus()[0];this.list.setAnchor(t),this.list.reveal(t),this.view.domNode.focus()}onCtrlA(e){e.preventDefault(),e.stopPropagation(),this.list.setSelection(hs(this.list.length),e.browserEvent),this.list.setAnchor(void 0),this.view.domNode.focus()}onEscape(e){this.list.getSelection().length&&(e.preventDefault(),e.stopPropagation(),this.list.setSelection([],e.browserEvent),this.list.setAnchor(void 0),this.view.domNode.focus())}dispose(){this.disposables.dispose(),this.multipleSelectionDisposables.dispose()}}xR([YM],AR.prototype,"onKeyDown",null),function(e){e[e.Automatic=0]="Automatic",e[e.Trigger=1]="Trigger"}(yR||(yR={})),function(e){e[e.Idle=0]="Idle",e[e.Typing=1]="Typing"}(SR||(SR={}));const OR=new class{mightProducePrintableCharacter(e){return!(e.ctrlKey||e.metaKey||e.altKey)&&(e.keyCode>=31&&e.keyCode<=56||e.keyCode>=21&&e.keyCode<=30||e.keyCode>=98&&e.keyCode<=107||e.keyCode>=85&&e.keyCode<=95)}};class PR{constructor(e,t,i,n,o){this.list=e,this.view=t,this.keyboardNavigationLabelProvider=i,this.keyboardNavigationEventFilter=n,this.delegate=o,this.enabled=!1,this.state=SR.Idle,this.mode=yR.Automatic,this.triggered=!1,this.previouslyFocused=-1,this.enabledDisposables=new Mt,this.disposables=new Mt,this.updateOptions(e.options)}updateOptions(e){e.typeNavigationEnabled??1?this.enable():this.disable(),this.mode=e.typeNavigationMode??yR.Automatic}enable(){if(this.enabled)return;let e=!1;const t=Vt.chain(this.enabledDisposables.add(new RT(this.view.domNode,"keydown")).event,(t=>t.filter((e=>!_l(e.target))).filter((()=>this.mode===yR.Automatic||this.triggered)).map((e=>new Ge(e))).filter((t=>e||this.keyboardNavigationEventFilter(t))).filter((e=>this.delegate.mightProducePrintableCharacter(e))).forEach((e=>Xa(e,!0))).map((e=>e.browserEvent.key)))),i=Vt.debounce(t,(()=>null),800,void 0,void 0,void 0,this.enabledDisposables),n=Vt.reduce(Vt.any(t,i),((e,t)=>null===t?null:(e||"")+t),void 0,this.enabledDisposables);n(this.onInput,this,this.enabledDisposables),i(this.onClear,this,this.enabledDisposables),t((()=>e=!0),void 0,this.enabledDisposables),i((()=>e=!1),void 0,this.enabledDisposables),this.enabled=!0,this.triggered=!1}disable(){this.enabled&&(this.enabledDisposables.clear(),this.enabled=!1,this.triggered=!1)}onClear(){const e=this.list.getFocus();if(e.length>0&&e[0]===this.previouslyFocused){const t=this.list.options.accessibilityProvider?.getAriaLabel(this.list.element(e[0]));"string"==typeof t?Yl(t):t&&Yl(t.get())}this.previouslyFocused=-1}onInput(e){if(!e)return this.state=SR.Idle,void(this.triggered=!1);const t=this.list.getFocus(),i=t.length>0?t[0]:0,n=this.state===SR.Idle?1:0;this.state=SR.Typing;for(let t=0;t1&&1===t.length)return this.previouslyFocused=i,this.list.setFocus([o]),void this.list.reveal(o)}}else if(void 0===r||vd(e,r))return this.previouslyFocused=i,this.list.setFocus([o]),void this.list.reveal(o)}}dispose(){this.disable(),this.enabledDisposables.dispose(),this.disposables.dispose()}}class FR{constructor(e,t){this.list=e,this.view=t,this.disposables=new Mt;const i=Vt.chain(this.disposables.add(new RT(t.domNode,"keydown")).event,(e=>e.filter((e=>!_l(e.target))).map((e=>new Ge(e))))),n=Vt.chain(i,(e=>e.filter((e=>!(2!==e.keyCode||e.ctrlKey||e.metaKey||e.shiftKey||e.altKey)))));n(this.onTab,this,this.disposables)}onTab(e){if(e.target!==this.view.domNode)return;const t=this.list.getFocus();if(0===t.length)return;const i=this.view.domElement(t[0]);if(!i)return;const n=i.querySelector("[tabIndex]");if(!n||!Ka(n)||-1===n.tabIndex)return;const o=ea(n).getComputedStyle(n);"hidden"!==o.visibility&&"none"!==o.display&&(e.preventDefault(),e.stopPropagation(),n.focus())}dispose(){this.disposables.dispose()}}function BR(e){return q?e.browserEvent.metaKey:e.browserEvent.ctrlKey}function WR(e){return e.browserEvent.shiftKey}const HR={isSelectionSingleChangeEvent:BR,isSelectionRangeChangeEvent:WR};class VR{get onPointer(){return this._onPointer.event}constructor(e){this.list=e,this.disposables=new Mt,this._onPointer=this.disposables.add(new Gt),!1!==e.options.multipleSelectionSupport&&(this.multipleSelectionController=this.list.options.multipleSelectionController||HR),this.mouseSupport=void 0===e.options.mouseSupport||!!e.options.mouseSupport,this.mouseSupport&&(e.onMouseDown(this.onMouseDown,this,this.disposables),e.onContextMenu(this.onContextMenu,this,this.disposables),e.onMouseDblClick(this.onDoubleClick,this,this.disposables),e.onTouchStart(this.onMouseDown,this,this.disposables),this.disposables.add(QM.addTarget(e.getHTMLElement()))),Vt.any(e.onMouseClick,e.onMouseMiddleClick,e.onTap)(this.onViewPointer,this,this.disposables)}updateOptions(e){void 0!==e.multipleSelectionSupport&&(this.multipleSelectionController=void 0,e.multipleSelectionSupport&&(this.multipleSelectionController=this.list.options.multipleSelectionController||HR))}isSelectionSingleChangeEvent(e){return!!this.multipleSelectionController&&this.multipleSelectionController.isSelectionSingleChangeEvent(e)}isSelectionRangeChangeEvent(e){return!!this.multipleSelectionController&&this.multipleSelectionController.isSelectionRangeChangeEvent(e)}isSelectionChangeEvent(e){return this.isSelectionSingleChangeEvent(e)||this.isSelectionRangeChangeEvent(e)}onMouseDown(e){NR(e.browserEvent.target)||Wa()!==e.browserEvent.target&&this.list.domFocus()}onContextMenu(e){if(_l(e.browserEvent.target)||NR(e.browserEvent.target))return;const t=void 0===e.index?[]:[e.index];this.list.setFocus(t,e.browserEvent)}onViewPointer(e){if(!this.mouseSupport)return;if(_l(e.browserEvent.target)||NR(e.browserEvent.target))return;if(e.browserEvent.isHandledByList)return;e.browserEvent.isHandledByList=!0;const t=e.index;return void 0===t?(this.list.setFocus([],e.browserEvent),this.list.setSelection([],e.browserEvent),void this.list.setAnchor(void 0)):this.isSelectionChangeEvent(e)?this.changeSelection(e):(this.list.setFocus([t],e.browserEvent),this.list.setAnchor(t),Ga(i=e.browserEvent)&&2===i.button||this.list.setSelection([t],e.browserEvent),void this._onPointer.fire(e));var i}onDoubleClick(e){if(_l(e.browserEvent.target)||NR(e.browserEvent.target))return;if(this.isSelectionChangeEvent(e))return;if(e.browserEvent.isHandledByList)return;e.browserEvent.isHandledByList=!0;const t=this.list.getFocus();this.list.setSelection(t,e.browserEvent)}changeSelection(e){const t=e.index;let i=this.list.getAnchor();if(this.isSelectionRangeChangeEvent(e)){void 0===i&&(i=this.list.getFocus()[0]??t,this.list.setAnchor(i));const n=hs(Math.min(i,t),Math.max(i,t)+1),o=this.list.getSelection(),s=function(e,t){const i=e.indexOf(t);if(-1===i)return[];const n=[];let o=i-1;for(;o>=0&&e[o]===t-(i-o);)n.push(e[o--]);for(n.reverse(),o=i;o=e.length)i.push(t[o++]);else if(o>=t.length)i.push(e[n++]);else{if(e[n]===t[o]){n++,o++;continue}e[n]e!==t));this.list.setFocus([t]),this.list.setAnchor(t),i.length===n.length?this.list.setSelection([...n,t],e.browserEvent):this.list.setSelection(n,e.browserEvent)}}dispose(){this.disposables.dispose()}}class zR{constructor(e,t){this.styleElement=e,this.selectorSuffix=t}style(e){const t=this.selectorSuffix&&`.${this.selectorSuffix}`,i=[];e.listBackground&&i.push(`.monaco-list${t} .monaco-list-rows { background: ${e.listBackground}; }`),e.listFocusBackground&&(i.push(`.monaco-list${t}:focus .monaco-list-row.focused { background-color: ${e.listFocusBackground}; }`),i.push(`.monaco-list${t}:focus .monaco-list-row.focused:hover { background-color: ${e.listFocusBackground}; }`)),e.listFocusForeground&&i.push(`.monaco-list${t}:focus .monaco-list-row.focused { color: ${e.listFocusForeground}; }`),e.listActiveSelectionBackground&&(i.push(`.monaco-list${t}:focus .monaco-list-row.selected { background-color: ${e.listActiveSelectionBackground}; }`),i.push(`.monaco-list${t}:focus .monaco-list-row.selected:hover { background-color: ${e.listActiveSelectionBackground}; }`)),e.listActiveSelectionForeground&&i.push(`.monaco-list${t}:focus .monaco-list-row.selected { color: ${e.listActiveSelectionForeground}; }`),e.listActiveSelectionIconForeground&&i.push(`.monaco-list${t}:focus .monaco-list-row.selected .codicon { color: ${e.listActiveSelectionIconForeground}; }`),e.listFocusAndSelectionBackground&&i.push(`\n\t\t\t\t.monaco-drag-image${t},\n\t\t\t\t.monaco-list${t}:focus .monaco-list-row.selected.focused { background-color: ${e.listFocusAndSelectionBackground}; }\n\t\t\t`),e.listFocusAndSelectionForeground&&i.push(`\n\t\t\t\t.monaco-drag-image${t},\n\t\t\t\t.monaco-list${t}:focus .monaco-list-row.selected.focused { color: ${e.listFocusAndSelectionForeground}; }\n\t\t\t`),e.listInactiveFocusForeground&&(i.push(`.monaco-list${t} .monaco-list-row.focused { color: ${e.listInactiveFocusForeground}; }`),i.push(`.monaco-list${t} .monaco-list-row.focused:hover { color: ${e.listInactiveFocusForeground}; }`)),e.listInactiveSelectionIconForeground&&i.push(`.monaco-list${t} .monaco-list-row.focused .codicon { color: ${e.listInactiveSelectionIconForeground}; }`),e.listInactiveFocusBackground&&(i.push(`.monaco-list${t} .monaco-list-row.focused { background-color: ${e.listInactiveFocusBackground}; }`),i.push(`.monaco-list${t} .monaco-list-row.focused:hover { background-color: ${e.listInactiveFocusBackground}; }`)),e.listInactiveSelectionBackground&&(i.push(`.monaco-list${t} .monaco-list-row.selected { background-color: ${e.listInactiveSelectionBackground}; }`),i.push(`.monaco-list${t} .monaco-list-row.selected:hover { background-color: ${e.listInactiveSelectionBackground}; }`)),e.listInactiveSelectionForeground&&i.push(`.monaco-list${t} .monaco-list-row.selected { color: ${e.listInactiveSelectionForeground}; }`),e.listHoverBackground&&i.push(`.monaco-list${t}:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused) { background-color: ${e.listHoverBackground}; }`),e.listHoverForeground&&i.push(`.monaco-list${t}:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused) { color: ${e.listHoverForeground}; }`);const n=fT(e.listFocusAndSelectionOutline,fT(e.listSelectionOutline,e.listFocusOutline??""));n&&i.push(`.monaco-list${t}:focus .monaco-list-row.focused.selected { outline: 1px solid ${n}; outline-offset: -1px;}`),e.listFocusOutline&&i.push(`\n\t\t\t\t.monaco-drag-image${t},\n\t\t\t\t.monaco-list${t}:focus .monaco-list-row.focused,\n\t\t\t\t.monaco-workbench.context-menu-visible .monaco-list${t}.last-focused .monaco-list-row.focused { outline: 1px solid ${e.listFocusOutline}; outline-offset: -1px; }\n\t\t\t`);const o=fT(e.listSelectionOutline,e.listInactiveFocusOutline??"");o&&i.push(`.monaco-list${t} .monaco-list-row.focused.selected { outline: 1px dotted ${o}; outline-offset: -1px; }`),e.listSelectionOutline&&i.push(`.monaco-list${t} .monaco-list-row.selected { outline: 1px dotted ${e.listSelectionOutline}; outline-offset: -1px; }`),e.listInactiveFocusOutline&&i.push(`.monaco-list${t} .monaco-list-row.focused { outline: 1px dotted ${e.listInactiveFocusOutline}; outline-offset: -1px; }`),e.listHoverOutline&&i.push(`.monaco-list${t} .monaco-list-row:hover { outline: 1px dashed ${e.listHoverOutline}; outline-offset: -1px; }`),e.listDropOverBackground&&i.push(`\n\t\t\t\t.monaco-list${t}.drop-target,\n\t\t\t\t.monaco-list${t} .monaco-list-rows.drop-target,\n\t\t\t\t.monaco-list${t} .monaco-list-row.drop-target { background-color: ${e.listDropOverBackground} !important; color: inherit !important; }\n\t\t\t`),e.listDropBetweenBackground&&(i.push(`\n\t\t\t.monaco-list${t} .monaco-list-rows.drop-target-before .monaco-list-row:first-child::before,\n\t\t\t.monaco-list${t} .monaco-list-row.drop-target-before::before {\n\t\t\t\tcontent: ""; position: absolute; top: 0px; left: 0px; width: 100%; height: 1px;\n\t\t\t\tbackground-color: ${e.listDropBetweenBackground};\n\t\t\t}`),i.push(`\n\t\t\t.monaco-list${t} .monaco-list-rows.drop-target-after .monaco-list-row:last-child::after,\n\t\t\t.monaco-list${t} .monaco-list-row.drop-target-after::after {\n\t\t\t\tcontent: ""; position: absolute; bottom: 0px; left: 0px; width: 100%; height: 1px;\n\t\t\t\tbackground-color: ${e.listDropBetweenBackground};\n\t\t\t}`)),e.tableColumnsBorder&&i.push(`\n\t\t\t\t.monaco-table > .monaco-split-view2,\n\t\t\t\t.monaco-table > .monaco-split-view2 .monaco-sash.vertical::before,\n\t\t\t\t.monaco-workbench:not(.reduce-motion) .monaco-table:hover > .monaco-split-view2,\n\t\t\t\t.monaco-workbench:not(.reduce-motion) .monaco-table:hover > .monaco-split-view2 .monaco-sash.vertical::before {\n\t\t\t\t\tborder-color: ${e.tableColumnsBorder};\n\t\t\t\t}\n\n\t\t\t\t.monaco-workbench:not(.reduce-motion) .monaco-table > .monaco-split-view2,\n\t\t\t\t.monaco-workbench:not(.reduce-motion) .monaco-table > .monaco-split-view2 .monaco-sash.vertical::before {\n\t\t\t\t\tborder-color: transparent;\n\t\t\t\t}\n\t\t\t`),e.tableOddRowsBackgroundColor&&i.push(`\n\t\t\t\t.monaco-table .monaco-list-row[data-parity=odd]:not(.focused):not(.selected):not(:hover) .monaco-table-tr,\n\t\t\t\t.monaco-table .monaco-list:not(:focus) .monaco-list-row[data-parity=odd].focused:not(.selected):not(:hover) .monaco-table-tr,\n\t\t\t\t.monaco-table .monaco-list:not(.focused) .monaco-list-row[data-parity=odd].focused:not(.selected):not(:hover) .monaco-table-tr {\n\t\t\t\t\tbackground-color: ${e.tableOddRowsBackgroundColor};\n\t\t\t\t}\n\t\t\t`),this.styleElement.textContent=i.join("\n")}}const UR={listFocusBackground:"#7FB0D0",listActiveSelectionBackground:"#0E639C",listActiveSelectionForeground:"#FFFFFF",listActiveSelectionIconForeground:"#FFFFFF",listFocusAndSelectionOutline:"#90C2F9",listFocusAndSelectionBackground:"#094771",listFocusAndSelectionForeground:"#FFFFFF",listInactiveSelectionBackground:"#3F3F46",listInactiveSelectionIconForeground:"#FFFFFF",listHoverBackground:"#2A2D2E",listDropOverBackground:"#383B3D",listDropBetweenBackground:"#EEEEEE",treeIndentGuidesStroke:"#a9a9a9",treeInactiveIndentGuidesStroke:kg.fromHex("#a9a9a9").transparent(.4).toString(),tableColumnsBorder:kg.fromHex("#cccccc").transparent(.2).toString(),tableOddRowsBackgroundColor:kg.fromHex("#cccccc").transparent(.04).toString(),listBackground:void 0,listFocusForeground:void 0,listInactiveSelectionForeground:void 0,listInactiveFocusForeground:void 0,listInactiveFocusBackground:void 0,listHoverForeground:void 0,listFocusOutline:void 0,listInactiveFocusOutline:void 0,listSelectionOutline:void 0,listHoverOutline:void 0,treeStickyScrollBackground:void 0,treeStickyScrollBorder:void 0,treeStickyScrollShadow:void 0},jR={keyboardSupport:!0,mouseSupport:!0,multipleSelectionSupport:!0,dnd:{getDragURI:()=>null,onDragStart(){},onDragOver:()=>!1,drop(){},dispose(){}}};function KR(e,t){const i=[];let n=0,o=0;for(;n=e.length)i.push(t[o++]);else if(o>=t.length)i.push(e[n++]);else{if(e[n]===t[o]){i.push(e[n]),n++,o++;continue}e[n]e-t;class $R{constructor(e,t){this._templateId=e,this.renderers=t}get templateId(){return this._templateId}renderTemplate(e){return this.renderers.map((t=>t.renderTemplate(e)))}renderElement(e,t,i,n){let o=0;for(const s of this.renderers)s.renderElement(e,t,i[o++],n)}disposeElement(e,t,i,n){let o=0;for(const s of this.renderers)s.disposeElement?.(e,t,i[o],n),o+=1}disposeTemplate(e){let t=0;for(const i of this.renderers)i.disposeTemplate(e[t++])}}class GR{constructor(e){this.accessibilityProvider=e,this.templateId="a18n"}renderTemplate(e){return{container:e,disposables:new Mt}}renderElement(e,t,i){const n=this.accessibilityProvider.getAriaLabel(e),o=n&&"string"!=typeof n?n:Ar(n);i.disposables.add(rr((e=>{this.setAriaLabel(e.readObservable(o),i.container)})));const s=this.accessibilityProvider.getAriaLevel&&this.accessibilityProvider.getAriaLevel(e);"number"==typeof s?i.container.setAttribute("aria-level",`${s}`):i.container.removeAttribute("aria-level")}setAriaLabel(e,t){e?t.setAttribute("aria-label",e):t.removeAttribute("aria-label")}disposeElement(e,t,i){i.disposables.clear()}disposeTemplate(e){e.disposables.dispose()}}class YR{constructor(e,t){this.list=e,this.dnd=t}getDragElements(e){const t=this.list.getSelectedElements();return t.indexOf(e)>-1?t:[e]}getDragURI(e){return this.dnd.getDragURI(e)}getDragLabel(e,t){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(e,t)}onDragStart(e,t){this.dnd.onDragStart?.(e,t)}onDragOver(e,t,i,n,o){return this.dnd.onDragOver(e,t,i,n,o)}onDragLeave(e,t,i,n){this.dnd.onDragLeave?.(e,t,i,n)}onDragEnd(e){this.dnd.onDragEnd?.(e)}drop(e,t,i,n,o){this.dnd.drop(e,t,i,n,o)}dispose(){this.dnd.dispose()}}class ZR{get onDidChangeFocus(){return Vt.map(this.eventBufferer.wrapEvent(this.focus.onChange),(e=>this.toListEvent(e)),this.disposables)}get onDidChangeSelection(){return Vt.map(this.eventBufferer.wrapEvent(this.selection.onChange),(e=>this.toListEvent(e)),this.disposables)}get domId(){return this.view.domId}get onDidScroll(){return this.view.onDidScroll}get onMouseClick(){return this.view.onMouseClick}get onMouseDblClick(){return this.view.onMouseDblClick}get onMouseMiddleClick(){return this.view.onMouseMiddleClick}get onPointer(){return this.mouseController.onPointer}get onMouseDown(){return this.view.onMouseDown}get onMouseOver(){return this.view.onMouseOver}get onMouseOut(){return this.view.onMouseOut}get onTouchStart(){return this.view.onTouchStart}get onTap(){return this.view.onTap}get onContextMenu(){let e=!1;const t=Vt.chain(this.disposables.add(new RT(this.view.domNode,"keydown")).event,(t=>t.map((e=>new Ge(e))).filter((t=>e=58===t.keyCode||t.shiftKey&&68===t.keyCode)).map((e=>Xa(e,!0))).filter((()=>!1)))),i=Vt.chain(this.disposables.add(new RT(this.view.domNode,"keyup")).event,(t=>t.forEach((()=>e=!1)).map((e=>new Ge(e))).filter((e=>58===e.keyCode||e.shiftKey&&68===e.keyCode)).map((e=>Xa(e,!0))).map((({browserEvent:e})=>{const t=this.getFocus(),i=t.length?t[0]:void 0;return{index:i,element:void 0!==i?this.view.element(i):void 0,anchor:void 0!==i?this.view.domElement(i):this.view.domNode,browserEvent:e}})))),n=Vt.chain(this.view.onContextMenu,(t=>t.filter((t=>!e)).map((({element:e,index:t,browserEvent:i})=>({element:e,index:t,anchor:new Xe(ea(this.view.domNode),i),browserEvent:i})))));return Vt.any(t,i,n)}get onKeyDown(){return this.disposables.add(new RT(this.view.domNode,"keydown")).event}get onDidFocus(){return Vt.signal(this.disposables.add(new RT(this.view.domNode,"focus",!0)).event)}get onDidBlur(){return Vt.signal(this.disposables.add(new RT(this.view.domNode,"blur",!0)).event)}constructor(e,t,i,n,o=jR){this.user=e,this._options=o,this.focus=new LR("focused"),this.anchor=new LR("anchor"),this.eventBufferer=new ei,this._ariaLabel="",this.disposables=new Mt,this._onDidDispose=new Gt,this.onDidDispose=this._onDidDispose.event;const s=this._options.accessibilityProvider&&this._options.accessibilityProvider.getWidgetRole?this._options.accessibilityProvider?.getWidgetRole():"list";this.selection=new ER("listbox"!==s);const r=[this.focus.renderer,this.selection.renderer];this.accessibilityProvider=o.accessibilityProvider,this.accessibilityProvider&&(r.push(new GR(this.accessibilityProvider)),this.accessibilityProvider.onDidChangeActiveDescendant?.(this.onDidChangeActiveDescendant,this,this.disposables)),n=n.map((e=>new $R(e.templateId,[...r,e])));const a={...o,dnd:o.dnd&&new YR(this,o.dnd)};if(this.view=this.createListView(t,i,n,a),this.view.domNode.setAttribute("role",s),o.styleController)this.styleController=o.styleController(this.view.domId);else{const e=kT(this.view.domNode);this.styleController=new zR(e,this.view.domId)}if(this.spliceable=new AT([new IR(this.focus,this.view,o.identityProvider),new IR(this.selection,this.view,o.identityProvider),new IR(this.anchor,this.view,o.identityProvider),this.view]),this.disposables.add(this.focus),this.disposables.add(this.selection),this.disposables.add(this.anchor),this.disposables.add(this.view),this.disposables.add(this._onDidDispose),this.disposables.add(new FR(this,this.view)),("boolean"!=typeof o.keyboardSupport||o.keyboardSupport)&&(this.keyboardController=new AR(this,this.view,o),this.disposables.add(this.keyboardController)),o.keyboardNavigationLabelProvider){const e=o.keyboardNavigationDelegate||OR;this.typeNavigationController=new PR(this,this.view,o.keyboardNavigationLabelProvider,o.keyboardNavigationEventFilter??(()=>!0),e),this.disposables.add(this.typeNavigationController)}if(this.mouseController=this.createMouseController(o),this.disposables.add(this.mouseController),this.onDidChangeFocus(this._onFocusChange,this,this.disposables),this.onDidChangeSelection(this._onSelectionChange,this,this.disposables),this.accessibilityProvider){const e=this.accessibilityProvider.getWidgetAriaLabel(),t=e&&"string"!=typeof e?e:Ar(e);this.disposables.add(rr((e=>{this.ariaLabel=e.readObservable(t)})))}!1!==this._options.multipleSelectionSupport&&this.view.domNode.setAttribute("aria-multiselectable","true")}createListView(e,t,i,n){return new CR(e,t,i,n)}createMouseController(e){return new VR(this)}updateOptions(e={}){this._options={...this._options,...e},this.typeNavigationController?.updateOptions(this._options),void 0!==this._options.multipleSelectionController&&(this._options.multipleSelectionSupport?this.view.domNode.setAttribute("aria-multiselectable","true"):this.view.domNode.removeAttribute("aria-multiselectable")),this.mouseController.updateOptions(e),this.keyboardController?.updateOptions(e),this.view.updateOptions(e)}get options(){return this._options}splice(e,t,i=[]){if(e<0||e>this.view.length)throw new HT(this.user,`Invalid start index: ${e}`);if(t<0)throw new HT(this.user,`Invalid delete count: ${t}`);0===t&&0===i.length||this.eventBufferer.bufferEvents((()=>this.spliceable.splice(e,t,i)))}rerender(){this.view.rerender()}element(e){return this.view.element(e)}indexOf(e){return this.view.indexOf(e)}indexAt(e){return this.view.indexAt(e)}get length(){return this.view.length}get contentHeight(){return this.view.contentHeight}get onDidChangeContentHeight(){return this.view.onDidChangeContentHeight}get scrollTop(){return this.view.getScrollTop()}set scrollTop(e){this.view.setScrollTop(e)}get scrollHeight(){return this.view.scrollHeight}get renderHeight(){return this.view.renderHeight}get firstVisibleIndex(){return this.view.firstVisibleIndex}get ariaLabel(){return this._ariaLabel}set ariaLabel(e){this._ariaLabel=e,this.view.domNode.setAttribute("aria-label",e)}domFocus(){this.view.domNode.focus({preventScroll:!0})}layout(e,t){this.view.layout(e,t)}setSelection(e,t){for(const t of e)if(t<0||t>=this.length)throw new HT(this.user,`Invalid index ${t}`);this.selection.set(e,t)}getSelection(){return this.selection.get()}getSelectedElements(){return this.getSelection().map((e=>this.view.element(e)))}setAnchor(e){if(void 0!==e){if(e<0||e>=this.length)throw new HT(this.user,`Invalid index ${e}`);this.anchor.set([e])}else this.anchor.set([])}getAnchor(){return this.anchor.get().at(0)}getAnchorElement(){const e=this.getAnchor();return void 0===e?void 0:this.element(e)}setFocus(e,t){for(const t of e)if(t<0||t>=this.length)throw new HT(this.user,`Invalid index ${t}`);this.focus.set(e,t)}focusNext(e=1,t=!1,i,n){if(0===this.length)return;const o=this.focus.get(),s=this.findNextIndex(o.length>0?o[0]+e:0,t,n);s>-1&&this.setFocus([s],i)}focusPrevious(e=1,t=!1,i,n){if(0===this.length)return;const o=this.focus.get(),s=this.findPreviousIndex(o.length>0?o[0]-e:0,t,n);s>-1&&this.setFocus([s],i)}async focusNextPage(e,t){let i=this.view.indexAt(this.view.getScrollTop()+this.view.renderHeight);i=0===i?0:i-1;const n=this.getFocus()[0];if(n!==i&&(void 0===n||i>n)){const o=this.findPreviousIndex(i,!1,t);o>-1&&n!==o?this.setFocus([o],e):this.setFocus([i],e)}else{const o=this.view.getScrollTop();let s=o+this.view.renderHeight;i>n&&(s-=this.view.elementHeight(i)),this.view.setScrollTop(s),this.view.getScrollTop()!==o&&(this.setFocus([]),await pi(0),await this.focusNextPage(e,t))}}async focusPreviousPage(e,t,i=()=>0){let n;const o=i(),s=this.view.getScrollTop()+o;n=0===s?this.view.indexAt(s):this.view.indexAfter(s-1);const r=this.getFocus()[0];if(r!==n&&(void 0===r||r>=n)){const i=this.findNextIndex(n,!1,t);i>-1&&r!==i?this.setFocus([i],e):this.setFocus([n],e)}else{const n=s;this.view.setScrollTop(s-this.view.renderHeight-o),this.view.getScrollTop()+i()!==n&&(this.setFocus([]),await pi(0),await this.focusPreviousPage(e,t,i))}}focusLast(e,t){if(0===this.length)return;const i=this.findPreviousIndex(this.length-1,!1,t);i>-1&&this.setFocus([i],e)}focusFirst(e,t){this.focusNth(0,e,t)}focusNth(e,t,i){if(0===this.length)return;const n=this.findNextIndex(e,!1,i);n>-1&&this.setFocus([n],t)}findNextIndex(e,t=!1,i){for(let n=0;n=this.length&&!t)return-1;if(e%=this.length,!i||i(this.element(e)))return e;e++}return-1}findPreviousIndex(e,t=!1,i){for(let n=0;nthis.view.element(e)))}reveal(e,t,i=0){if(e<0||e>=this.length)throw new HT(this.user,`Invalid index ${e}`);const n=this.view.getScrollTop(),o=this.view.elementTop(e),s=this.view.elementHeight(e);if(ct(t)){const e=s-this.view.renderHeight+i;this.view.setScrollTop(e*OT(t,0,1)+o-i)}else{const e=o+s,t=n+this.view.renderHeight;o=t||(o=t&&s>=this.view.renderHeight?this.view.setScrollTop(o-i):e>=t&&this.view.setScrollTop(e-this.view.renderHeight))}}getRelativeTop(e,t=0){if(e<0||e>=this.length)throw new HT(this.user,`Invalid index ${e}`);const i=this.view.getScrollTop(),n=this.view.elementTop(e),o=this.view.elementHeight(e);if(ni+this.view.renderHeight)return null;const s=o-this.view.renderHeight+t;return Math.abs((i+t-n)/s)}getHTMLElement(){return this.view.domNode}getScrollableElement(){return this.view.scrollableElementDomNode}getElementID(e){return this.view.getElementDomId(e)}getElementTop(e){return this.view.elementTop(e)}style(e){this.styleController.style(e)}toListEvent({indexes:e,browserEvent:t}){return{indexes:e,elements:e.map((e=>this.view.element(e))),browserEvent:t}}_onFocusChange(){const e=this.focus.get();this.view.domNode.classList.toggle("element-focused",e.length>0),this.onDidChangeActiveDescendant()}onDidChangeActiveDescendant(){const e=this.focus.get();if(e.length>0){let t;this.accessibilityProvider?.getActiveDescendantId&&(t=this.accessibilityProvider.getActiveDescendantId(this.view.element(e[0]))),this.view.domNode.setAttribute("aria-activedescendant",t||this.view.getElementDomId(e[0]))}else this.view.domNode.removeAttribute("aria-activedescendant")}_onSelectionChange(){const e=this.selection.get();this.view.domNode.classList.toggle("selection-none",0===e.length),this.view.domNode.classList.toggle("selection-single",1===e.length),this.view.domNode.classList.toggle("selection-multiple",e.length>1)}dispose(){this._onDidDispose.fire(),this.disposables.dispose(),this._onDidDispose.dispose()}}xR([YM],ZR.prototype,"onDidChangeFocus",null),xR([YM],ZR.prototype,"onDidChangeSelection",null),xR([YM],ZR.prototype,"onContextMenu",null),xR([YM],ZR.prototype,"onKeyDown",null),xR([YM],ZR.prototype,"onDidFocus",null),xR([YM],ZR.prototype,"onDidBlur",null);var QR=i(7619),XR={};XR.styleTagTransform=Vl(),XR.setAttributes=Fl(),XR.insert=Ol().bind(null,"head"),XR.domAPI=Rl(),XR.insertStyleElement=Wl(),Ml()(QR.A,XR),QR.A&&QR.A.locals&&QR.A.locals;const JR=al,eA="selectOption.entry.template";class tA{get templateId(){return eA}renderTemplate(e){const t=Object.create(null);return t.root=e,t.text=tl(e,JR(".option-text")),t.detail=tl(e,JR(".option-detail")),t.decoratorRight=tl(e,JR(".option-decorator-right")),t}renderElement(e,t,i){const n=i,o=e.text,s=e.detail,r=e.decoratorRight,a=e.isDisabled;n.text.textContent=o,n.detail.textContent=s||"",n.decoratorRight.textContent=r||"",a?n.root.classList.add("option-disabled"):n.root.classList.remove("option-disabled")}disposeTemplate(e){}}class iA extends Tt{static{this.DEFAULT_DROPDOWN_MINIMUM_BOTTOM_MARGIN=32}static{this.DEFAULT_DROPDOWN_MINIMUM_TOP_MARGIN=2}static{this.DEFAULT_MINIMUM_VISIBLE_OPTIONS=3}constructor(e,t,i,n,o){super(),this.options=[],this._currentSelection=0,this._hasDetails=!1,this._skipLayout=!1,this._sticky=!1,this._isVisible=!1,this.styles=n,this.selectBoxOptions=o||Object.create(null),"number"!=typeof this.selectBoxOptions.minBottomMargin?this.selectBoxOptions.minBottomMargin=iA.DEFAULT_DROPDOWN_MINIMUM_BOTTOM_MARGIN:this.selectBoxOptions.minBottomMargin<0&&(this.selectBoxOptions.minBottomMargin=0),this.selectElement=document.createElement("select"),this.selectElement.className="monaco-select-box monaco-select-box-dropdown-padding","string"==typeof this.selectBoxOptions.ariaLabel&&this.selectElement.setAttribute("aria-label",this.selectBoxOptions.ariaLabel),"string"==typeof this.selectBoxOptions.ariaDescription&&this.selectElement.setAttribute("aria-description",this.selectBoxOptions.ariaDescription),this._onDidSelect=new Gt,this._register(this._onDidSelect),this.registerListeners(),this.constructSelectDropDown(i),this.selected=t||0,e&&this.setOptions(e,t),this.initStyleSheet()}setTitle(e){!this._hover&&e?this._hover=this._register(rT().setupManagedHover(tT("mouse"),this.selectElement,e)):this._hover&&this._hover.update(e)}getHeight(){return 22}getTemplateId(){return eA}constructSelectDropDown(e){this.contextViewProvider=e,this.selectDropDownContainer=al(".monaco-select-box-dropdown-container"),this.selectDropDownContainer.classList.add("monaco-select-box-dropdown-padding"),this.selectionDetailsPane=tl(this.selectDropDownContainer,JR(".select-box-details-pane"));const t=tl(this.selectDropDownContainer,JR(".select-box-dropdown-container-width-control")),i=tl(t,JR(".width-control-div"));this.widthControlElement=document.createElement("span"),this.widthControlElement.className="option-text-width-control",tl(i,this.widthControlElement),this._dropDownPosition=0,this.styleElement=kT(this.selectDropDownContainer),this.selectDropDownContainer.setAttribute("draggable","true"),this._register(ua(this.selectDropDownContainer,Za.DRAG_START,(e=>{Xa(e,!0)})))}registerListeners(){let e;this._register(pa(this.selectElement,"change",(e=>{this.selected=e.target.selectedIndex,this._onDidSelect.fire({index:e.target.selectedIndex,selected:e.target.value}),this.options[this.selected]&&this.options[this.selected].text&&this.setTitle(this.options[this.selected].text)}))),this._register(ua(this.selectElement,Za.CLICK,(e=>{Xa(e),this._isVisible?this.hideSelectDropDown(!0):this.showSelectDropDown()}))),this._register(ua(this.selectElement,Za.MOUSE_DOWN,(e=>{Xa(e)}))),this._register(ua(this.selectElement,"touchstart",(t=>{e=this._isVisible}))),this._register(ua(this.selectElement,"touchend",(t=>{Xa(t),e?this.hideSelectDropDown(!0):this.showSelectDropDown()}))),this._register(ua(this.selectElement,Za.KEY_DOWN,(e=>{const t=new Ge(e);let i=!1;q?18!==t.keyCode&&16!==t.keyCode&&10!==t.keyCode&&3!==t.keyCode||(i=!0):(18===t.keyCode&&t.altKey||16===t.keyCode&&t.altKey||10===t.keyCode||3===t.keyCode)&&(i=!0),i&&(this.showSelectDropDown(),Xa(e,!0))})))}get onDidSelect(){return this._onDidSelect.event}setOptions(e,t){Jo(this.options,e)||(this.options=e,this.selectElement.options.length=0,this._hasDetails=!1,this._cachedMaxDetailsHeight=void 0,this.options.forEach(((e,t)=>{this.selectElement.add(this.createOption(e.text,t,e.isDisabled)),"string"==typeof e.description&&(this._hasDetails=!0)}))),void 0!==t&&(this.select(t),this._currentSelection=this.selected)}setOptionsList(){this.selectList?.splice(0,this.selectList.length,this.options)}select(e){e>=0&&ethis.options.length-1?this.select(this.options.length-1):this.selected<0&&(this.selected=0),this.selectElement.selectedIndex=this.selected,this.options[this.selected]&&this.options[this.selected].text&&this.setTitle(this.options[this.selected].text)}focus(){this.selectElement&&(this.selectElement.tabIndex=0,this.selectElement.focus())}blur(){this.selectElement&&(this.selectElement.tabIndex=-1,this.selectElement.blur())}setFocusable(e){this.selectElement.tabIndex=e?0:-1}render(e){this.container=e,e.classList.add("select-container"),e.appendChild(this.selectElement),this.styleSelectElement()}initStyleSheet(){const e=[];this.styles.listFocusBackground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { background-color: ${this.styles.listFocusBackground} !important; }`),this.styles.listFocusForeground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { color: ${this.styles.listFocusForeground} !important; }`),this.styles.decoratorRightForeground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.focused) .option-decorator-right { color: ${this.styles.decoratorRightForeground}; }`),this.styles.selectBackground&&this.styles.selectBorder&&this.styles.selectBorder!==this.styles.selectBackground?(e.push(`.monaco-select-box-dropdown-container { border: 1px solid ${this.styles.selectBorder} } `),e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-top { border-top: 1px solid ${this.styles.selectBorder} } `),e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-bottom { border-bottom: 1px solid ${this.styles.selectBorder} } `)):this.styles.selectListBorder&&(e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-top { border-top: 1px solid ${this.styles.selectListBorder} } `),e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-bottom { border-bottom: 1px solid ${this.styles.selectListBorder} } `)),this.styles.listHoverForeground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { color: ${this.styles.listHoverForeground} !important; }`),this.styles.listHoverBackground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { background-color: ${this.styles.listHoverBackground} !important; }`),this.styles.listFocusOutline&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { outline: 1.6px dotted ${this.styles.listFocusOutline} !important; outline-offset: -1.6px !important; }`),this.styles.listHoverOutline&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { outline: 1.6px dashed ${this.styles.listHoverOutline} !important; outline-offset: -1.6px !important; }`),e.push(".monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.option-disabled.focused { background-color: transparent !important; color: inherit !important; outline: none !important; }"),e.push(".monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.option-disabled:hover { background-color: transparent !important; color: inherit !important; outline: none !important; }"),this.styleElement.textContent=e.join("\n")}styleSelectElement(){const e=this.styles.selectBackground??"",t=this.styles.selectForeground??"",i=this.styles.selectBorder??"";this.selectElement.style.backgroundColor=e,this.selectElement.style.color=t,this.selectElement.style.borderColor=i}styleList(){const e=this.styles.selectBackground??"",t=fT(this.styles.selectListBackground,e);this.selectDropDownListContainer.style.backgroundColor=t,this.selectionDetailsPane.style.backgroundColor=t;const i=this.styles.focusBorder??"";this.selectDropDownContainer.style.outlineColor=i,this.selectDropDownContainer.style.outlineOffset="-1px",this.selectList.style(this.styles)}createOption(e,t,i){const n=document.createElement("option");return n.value=e,n.text=e,n.disabled=!!i,n}showSelectDropDown(){this.selectionDetailsPane.textContent="",this.contextViewProvider&&!this._isVisible&&(this.createSelectList(this.selectDropDownContainer),this.setOptionsList(),this.contextViewProvider.showContextView({getAnchor:()=>this.selectElement,render:e=>this.renderSelectDropDown(e,!0),layout:()=>{this.layoutSelectDropDown()},onHide:()=>{this.selectDropDownContainer.classList.remove("visible"),this.selectElement.classList.remove("synthetic-focus")},anchorPosition:this._dropDownPosition},this.selectBoxOptions.optionsAsChildren?this.container:void 0),this._isVisible=!0,this.hideSelectDropDown(!1),this.contextViewProvider.showContextView({getAnchor:()=>this.selectElement,render:e=>this.renderSelectDropDown(e),layout:()=>this.layoutSelectDropDown(),onHide:()=>{this.selectDropDownContainer.classList.remove("visible"),this.selectElement.classList.remove("synthetic-focus")},anchorPosition:this._dropDownPosition},this.selectBoxOptions.optionsAsChildren?this.container:void 0),this._currentSelection=this.selected,this._isVisible=!0,this.selectElement.setAttribute("aria-expanded","true"))}hideSelectDropDown(e){this.contextViewProvider&&this._isVisible&&(this._isVisible=!1,this.selectElement.setAttribute("aria-expanded","false"),e&&this.selectElement.focus(),this.contextViewProvider.hideContextView())}renderSelectDropDown(e,t){return e.appendChild(this.selectDropDownContainer),this.layoutSelectDropDown(t),{dispose:()=>{this.selectDropDownContainer.remove()}}}measureMaxDetailsHeight(){let e=0;return this.options.forEach(((t,i)=>{this.updateDetail(i),this.selectionDetailsPane.offsetHeight>e&&(e=this.selectionDetailsPane.offsetHeight)})),e}layoutSelectDropDown(e){if(this._skipLayout)return!1;if(this.selectList){this.selectDropDownContainer.classList.add("visible");const t=ea(this.selectElement),i=Ia(this.selectElement),n=ea(this.selectElement).getComputedStyle(this.selectElement),o=parseFloat(n.getPropertyValue("--dropdown-padding-top"))+parseFloat(n.getPropertyValue("--dropdown-padding-bottom")),s=t.innerHeight-i.top-i.height-(this.selectBoxOptions.minBottomMargin||0),r=i.top-iA.DEFAULT_DROPDOWN_MINIMUM_TOP_MARGIN,a=this.selectElement.offsetWidth,l=this.setWidthControlElement(this.widthControlElement),d=Math.max(l,Math.round(a)).toString()+"px";this.selectDropDownContainer.style.width=d,this.selectList.getHTMLElement().style.height="",this.selectList.layout();let c=this.selectList.contentHeight;this._hasDetails&&void 0===this._cachedMaxDetailsHeight&&(this._cachedMaxDetailsHeight=this.measureMaxDetailsHeight());const h=this._hasDetails?this._cachedMaxDetailsHeight:0,u=c+o+h,g=Math.floor((s-o-h)/this.getHeight()),p=Math.floor((r-o-h)/this.getHeight());if(e)return!(i.top+i.height>t.innerHeight-22||i.topg&&this.options.length>g?(this._dropDownPosition=1,this.selectDropDownListContainer.remove(),this.selectionDetailsPane.remove(),this.selectDropDownContainer.appendChild(this.selectionDetailsPane),this.selectDropDownContainer.appendChild(this.selectDropDownListContainer),this.selectionDetailsPane.classList.remove("border-top"),this.selectionDetailsPane.classList.add("border-bottom")):(this._dropDownPosition=0,this.selectDropDownListContainer.remove(),this.selectionDetailsPane.remove(),this.selectDropDownContainer.appendChild(this.selectDropDownListContainer),this.selectDropDownContainer.appendChild(this.selectionDetailsPane),this.selectionDetailsPane.classList.remove("border-bottom"),this.selectionDetailsPane.classList.add("border-top")),0));if(i.top+i.height>t.innerHeight-22||i.tops&&(c=g*this.getHeight())}else u>r&&(c=p*this.getHeight());return this.selectList.layout(c),this.selectList.domFocus(),this.selectList.length>0&&(this.selectList.setFocus([this.selected||0]),this.selectList.reveal(this.selectList.getFocus()[0]||0)),this._hasDetails?(this.selectList.getHTMLElement().style.height=c+o+"px",this.selectDropDownContainer.style.height=""):this.selectDropDownContainer.style.height=c+o+"px",this.updateDetail(this.selected),this.selectDropDownContainer.style.width=d,this.selectDropDownListContainer.setAttribute("tabindex","0"),this.selectElement.classList.add("synthetic-focus"),this.selectDropDownContainer.classList.add("synthetic-focus"),!0}return!1}setWidthControlElement(e){let t=0;if(e){let i=0,n=0;this.options.forEach(((e,t)=>{const o=e.detail?e.detail.length:0,s=e.decoratorRight?e.decoratorRight.length:0,r=e.text.length+o+s;r>n&&(i=t,n=r)})),e.textContent=this.options[i].text+(this.options[i].decoratorRight?this.options[i].decoratorRight+" ":""),t=Na(e)}return t}createSelectList(e){if(this.selectList)return;this.selectDropDownListContainer=tl(e,JR(".select-box-dropdown-list-container")),this.listRenderer=new tA,this.selectList=this._register(new ZR("SelectBoxCustom",this.selectDropDownListContainer,this,[this.listRenderer],{useShadows:!1,verticalScrollMode:3,keyboardSupport:!1,mouseSupport:!1,accessibilityProvider:{getAriaLabel:e=>{let t=e.text;return e.detail&&(t+=`. ${e.detail}`),e.decoratorRight&&(t+=`. ${e.decoratorRight}`),e.description&&(t+=`. ${e.description}`),t},getWidgetAriaLabel:()=>C(16,"Select Box"),getRole:()=>q?"":"option",getWidgetRole:()=>"listbox"}})),this.selectBoxOptions.ariaLabel&&(this.selectList.ariaLabel=this.selectBoxOptions.ariaLabel);const t=this._register(new RT(this.selectDropDownListContainer,"keydown")),i=Vt.chain(t.event,(e=>e.filter((()=>this.selectList.length>0)).map((e=>new Ge(e)))));this._register(Vt.chain(i,(e=>e.filter((e=>3===e.keyCode))))(this.onEnter,this)),this._register(Vt.chain(i,(e=>e.filter((e=>2===e.keyCode))))(this.onEnter,this)),this._register(Vt.chain(i,(e=>e.filter((e=>9===e.keyCode))))(this.onEscape,this)),this._register(Vt.chain(i,(e=>e.filter((e=>16===e.keyCode))))(this.onUpArrow,this)),this._register(Vt.chain(i,(e=>e.filter((e=>18===e.keyCode))))(this.onDownArrow,this)),this._register(Vt.chain(i,(e=>e.filter((e=>12===e.keyCode))))(this.onPageDown,this)),this._register(Vt.chain(i,(e=>e.filter((e=>11===e.keyCode))))(this.onPageUp,this)),this._register(Vt.chain(i,(e=>e.filter((e=>14===e.keyCode))))(this.onHome,this)),this._register(Vt.chain(i,(e=>e.filter((e=>13===e.keyCode))))(this.onEnd,this)),this._register(Vt.chain(i,(e=>e.filter((e=>e.keyCode>=21&&e.keyCode<=56||e.keyCode>=85&&e.keyCode<=113))))(this.onCharacter,this)),this._register(ua(this.selectList.getHTMLElement(),Za.POINTER_UP,(e=>this.onPointerUp(e)))),this._register(this.selectList.onMouseOver((e=>void 0!==e.index&&this.selectList.setFocus([e.index])))),this._register(this.selectList.onDidChangeFocus((e=>this.onListFocus(e)))),this._register(ua(this.selectDropDownContainer,Za.FOCUS_OUT,(e=>{this._isVisible&&!Aa(e.relatedTarget,this.selectDropDownContainer)&&this.onListBlur()}))),this.selectList.getHTMLElement().setAttribute("aria-label",this.selectBoxOptions.ariaLabel||""),this.selectList.getHTMLElement().setAttribute("aria-expanded","true"),this.styleList()}onPointerUp(e){if(!this.selectList.length)return;Xa(e);const t=e.target;if(!t)return;if(t.classList.contains("slider"))return;const i=t.closest(".monaco-list-row");if(!i)return;const n=Number(i.getAttribute("data-index")),o=i.classList.contains("option-disabled");n>=0&&n{for(let t=0;tthis.selected+2)this.selected+=2;else{if(t)return;this.selected++}this.select(this.selected),this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selectList.getFocus()[0])}}onUpArrow(e){this.selected>0&&(Xa(e,!0),this.options[this.selected-1].isDisabled&&this.selected>1?this.selected-=2:this.selected--,this.select(this.selected),this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selectList.getFocus()[0]))}onPageUp(e){Xa(e),this.selectList.focusPreviousPage(),setTimeout((()=>{this.selected=this.selectList.getFocus()[0],this.options[this.selected].isDisabled&&this.selected{this.selected=this.selectList.getFocus()[0],this.options[this.selected].isDisabled&&this.selected>0&&(this.selected--,this.selectList.setFocus([this.selected])),this.selectList.reveal(this.selected),this.select(this.selected)}),1)}onHome(e){Xa(e),this.options.length<2||(this.selected=0,this.options[this.selected].isDisabled&&this.selected>1&&this.selected++,this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selected),this.select(this.selected))}onEnd(e){Xa(e),this.options.length<2||(this.selected=this.options.length-1,this.options[this.selected].isDisabled&&this.selected>1&&this.selected--,this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selected),this.select(this.selected))}onCharacter(e){const t=ke.toString(e.keyCode);let i=-1;for(let n=0;n{this._register(ua(this.selectElement,e,(e=>{this.selectElement.focus()})))})),this._register(pa(this.selectElement,"click",(e=>{Xa(e,!0)}))),this._register(pa(this.selectElement,"change",(e=>{this.selectElement.title=e.target.value,this._onDidSelect.fire({index:e.target.selectedIndex,selected:e.target.value})}))),this._register(pa(this.selectElement,"keydown",(e=>{let t=!1;q?18!==e.keyCode&&16!==e.keyCode&&10!==e.keyCode||(t=!0):(18===e.keyCode&&e.altKey||10===e.keyCode||3===e.keyCode)&&(t=!0),t&&e.stopPropagation()})))}get onDidSelect(){return this._onDidSelect.event}setOptions(e,t){this.options&&Jo(this.options,e)||(this.options=e,this.selectElement.options.length=0,this.options.forEach(((e,t)=>{this.selectElement.add(this.createOption(e.text,t,e.isDisabled))}))),void 0!==t&&this.select(t)}select(e){0===this.options.length?this.selected=0:e>=0&&ethis.options.length-1?this.select(this.options.length-1):this.selected<0&&(this.selected=0),this.selectElement.selectedIndex=this.selected,this.selected{this.element&&this.handleActionChangeEvent(e)})))}handleActionChangeEvent(e){void 0!==e.enabled&&this.updateEnabled(),void 0!==e.checked&&this.updateChecked(),void 0!==e.class&&this.updateClass(),void 0!==e.label&&(this.updateLabel(),this.updateTooltip()),void 0!==e.tooltip&&this.updateTooltip()}get actionRunner(){return this._actionRunner||(this._actionRunner=this._register(new dh)),this._actionRunner}set actionRunner(e){this._actionRunner=e}isEnabled(){return this._action.enabled}setActionContext(e){this._context=e}render(e){const t=this.element=e;this._register(QM.addTarget(e));const i=this.options&&this.options.draggable;i&&(e.draggable=!0,c&&this._register(ua(e,Za.DRAG_START,(e=>e.dataTransfer?.setData(kE.TEXT,this._action.label))))),this._register(ua(t,ZM.Tap,(e=>this.onClick(e,!0)))),this._register(ua(t,Za.MOUSE_DOWN,(e=>{i||Xa(e,!0),this._action.enabled&&0===e.button&&t.classList.add("active")}))),q&&this._register(ua(t,Za.CONTEXT_MENU,(e=>{0===e.button&&!0===e.ctrlKey&&this.onClick(e)}))),this._register(ua(t,Za.CLICK,(e=>{Xa(e,!0),this.options&&this.options.isMenu||this.onClick(e)}))),this._register(ua(t,Za.DBLCLICK,(e=>{Xa(e,!0)}))),[Za.MOUSE_UP,Za.MOUSE_OUT].forEach((e=>{this._register(ua(t,e,(e=>{Xa(e),t.classList.remove("active")})))}))}onClick(e,t=!1){Xa(e,!0);const i=mt(this._context)?this.options?.useEventAsContext?e:{preserveFocus:t}:this._context;this.actionRunner.run(this._action,i)}focus(){this.element&&(this.element.tabIndex=0,this.element.focus(),this.element.classList.add("focused"))}blur(){this.element&&(this.element.blur(),this.element.tabIndex=-1,this.element.classList.remove("focused"))}setFocusable(e){this.element&&(this.element.tabIndex=e?0:-1)}get trapsArrowNavigation(){return!1}updateEnabled(){}updateLabel(){}getClass(){return this.action.class}getTooltip(){return this.action.tooltip}getHoverContents(){return this.getTooltip()}updateTooltip(){if(!this.element)return;const e=this.getHoverContents()??"";if(this.updateAriaLabel(),this.customHover||""===e)this.customHover&&this.customHover.update(e);else{const t=this.options.hoverDelegate??tT("element");this.customHover=this._store.add(rT().setupManagedHover(t,this.element,e))}}updateAriaLabel(){if(this.element){const e=this.getTooltip()??"";this.element.setAttribute("aria-label",e)}}updateClass(){}updateChecked(){}dispose(){this.element&&(this.element.remove(),this.element=void 0),this._context=void 0,super.dispose()}}class lA extends aA{constructor(e,t,i){super(e,t,i={...i,icon:void 0!==i.icon&&i.icon,label:void 0===i.label||i.label}),this.options=i,this.cssClass=""}render(e){super.render(e),ft(this.element);const t=document.createElement("a");if(t.classList.add("action-label"),t.setAttribute("role",this.getDefaultAriaRole()),this.label=t,this.element.appendChild(t),this.options.label&&this.options.keybinding&&!this.options.keybindingNotRenderedWithLabel){const e=document.createElement("span");e.classList.add("keybinding"),e.textContent=this.options.keybinding,this.element.appendChild(e)}this.updateClass(),this.updateLabel(),this.updateTooltip(),this.updateEnabled(),this.updateChecked()}getDefaultAriaRole(){return this._action.id===ch.ID?"presentation":this.options.isMenu?"menuitem":this.options.isTabList?"tab":"button"}focus(){this.label&&(this.label.tabIndex=0,this.label.focus())}blur(){this.label&&(this.label.tabIndex=-1)}setFocusable(e){this.label&&(this.label.tabIndex=e?0:-1)}updateLabel(){this.options.label&&this.label&&(this.label.textContent=this.action.label)}getTooltip(){let e=null;return this.action.tooltip?e=this.action.tooltip:this.action.label&&(e=this.action.label,this.options.keybinding&&(e=C(0,"{0} ({1})",e,this.options.keybinding))),e??void 0}updateClass(){this.cssClass&&this.label&&this.label.classList.remove(...this.cssClass.split(" ")),this.options.icon?(this.cssClass=this.getClass(),this.label&&(this.label.classList.add("codicon"),this.cssClass&&this.label.classList.add(...this.cssClass.split(" "))),this.updateEnabled()):this.label?.classList.remove("codicon")}updateEnabled(){this.action.enabled?(this.label&&(this.label.removeAttribute("aria-disabled"),this.label.classList.remove("disabled")),this.element?.classList.remove("disabled")):(this.label&&(this.label.setAttribute("aria-disabled","true"),this.label.classList.add("disabled")),this.element?.classList.add("disabled"))}updateAriaLabel(){if(this.label){const e=this.getTooltip()??"";this.label.setAttribute("aria-label",e)}}updateChecked(){this.label&&(void 0!==this.action.checked?(this.label.classList.toggle("checked",this.action.checked),this.options.isTabList?this.label.setAttribute("aria-selected",this.action.checked?"true":"false"):(this.label.setAttribute("aria-checked",this.action.checked?"true":"false"),this.label.setAttribute("role","checkbox"))):(this.label.classList.remove("checked"),this.label.removeAttribute(this.options.isTabList?"aria-selected":"aria-checked"),this.label.setAttribute("role",this.getDefaultAriaRole())))}}class dA extends aA{constructor(e,t,i,n,o,s,r){super(e,t),this.selectBox=new oA(i,n,o,s,r),this.selectBox.setFocusable(!1),this._register(this.selectBox),this.registerListeners()}select(e){this.selectBox.select(e)}registerListeners(){this._register(this.selectBox.onDidSelect((e=>this.runAction(e.selected,e.index))))}runAction(e,t){this.actionRunner.run(this._action,this.getActionContext(e,t))}getActionContext(e,t){return e}setFocusable(e){this.selectBox.setFocusable(e)}focus(){this.selectBox?.focus()}blur(){this.selectBox?.blur()}render(e){this.selectBox.render(e)}}class cA extends Tt{get onDidBlur(){return this._onDidBlur.event}get onDidCancel(){return this._onDidCancel.event}get onDidRun(){return this._onDidRun.event}get onWillRun(){return this._onWillRun.event}constructor(e,t={}){let i,n;switch(super(),this._actionRunnerDisposables=this._register(new Mt),this.viewItemDisposables=this._register(new Pt),this.triggerKeyDown=!1,this.focusable=!0,this._onDidBlur=this._register(new Gt),this._onDidCancel=this._register(new Gt({onWillAddFirstListener:()=>this.cancelHasListener=!0})),this.cancelHasListener=!1,this._onDidRun=this._register(new Gt),this._onWillRun=this._register(new Gt),this.options=t,this._context=t.context??null,this._orientation=this.options.orientation??0,this._triggerKeys={keyDown:this.options.triggerKeys?.keyDown??!1,keys:this.options.triggerKeys?.keys??[3,10]},this._hoverDelegate=t.hoverDelegate??this._register(iT()),this.options.actionRunner?this._actionRunner=this.options.actionRunner:(this._actionRunner=new dh,this._actionRunnerDisposables.add(this._actionRunner)),this._actionRunnerDisposables.add(this._actionRunner.onDidRun((e=>this._onDidRun.fire(e)))),this._actionRunnerDisposables.add(this._actionRunner.onWillRun((e=>this._onWillRun.fire(e)))),this.viewItems=[],this.focusedItem=void 0,this.domNode=document.createElement("div"),this.domNode.className="monaco-action-bar",this._orientation){case 0:i=[15],n=[17];break;case 1:i=[16],n=[18],this.domNode.className+=" vertical"}this._register(ua(this.domNode,Za.KEY_DOWN,(e=>{const t=new Ge(e);let o=!0;const s="number"==typeof this.focusedItem?this.viewItems[this.focusedItem]:void 0;i&&(t.equals(i[0])||t.equals(i[1]))?o=this.focusPrevious():n&&(t.equals(n[0])||t.equals(n[1]))?o=this.focusNext():t.equals(9)&&this.cancelHasListener?this._onDidCancel.fire():t.equals(14)?o=this.focusFirst():t.equals(13)?o=this.focusLast():t.equals(2)&&s instanceof aA&&s.trapsArrowNavigation?o=this.focusNext(void 0,!0):this.isTriggerKeyEvent(t)?this._triggerKeys.keyDown?this.doTrigger(t):this.triggerKeyDown=!0:o=!1,o&&(t.preventDefault(),t.stopPropagation())}))),this._register(ua(this.domNode,Za.KEY_UP,(e=>{const t=new Ge(e);this.isTriggerKeyEvent(t)?(!this._triggerKeys.keyDown&&this.triggerKeyDown&&(this.triggerKeyDown=!1,this.doTrigger(t)),t.preventDefault(),t.stopPropagation()):(t.equals(2)||t.equals(1026)||t.equals(16)||t.equals(18)||t.equals(15)||t.equals(17))&&this.updateFocusedItem()}))),this.focusTracker=this._register(el(this.domNode)),this._register(this.focusTracker.onDidBlur((()=>{Wa()!==this.domNode&&Aa(Wa(),this.domNode)||(this._onDidBlur.fire(),this.previouslyFocusedItem=this.focusedItem,this.focusedItem=void 0,this.triggerKeyDown=!1)}))),this._register(this.focusTracker.onDidFocus((()=>this.updateFocusedItem()))),this.actionsList=document.createElement("ul"),this.actionsList.className="actions-container",this.options.highlightToggledItems&&this.actionsList.classList.add("highlight-toggled"),this.actionsList.setAttribute("role",this.options.ariaRole||"toolbar"),this.options.ariaLabel&&this.actionsList.setAttribute("aria-label",this.options.ariaLabel),this.domNode.appendChild(this.actionsList),e.appendChild(this.domNode)}refreshRole(){this.length()>=1?this.actionsList.setAttribute("role",this.options.ariaRole||"toolbar"):this.actionsList.setAttribute("role","presentation")}setFocusable(e){if(this.focusable=e,this.focusable){const e=this.viewItems.find((e=>e instanceof aA&&e.isEnabled()));e instanceof aA&&e.setFocusable(!0)}else this.viewItems.forEach((e=>{e instanceof aA&&e.setFocusable(!1)}))}isTriggerKeyEvent(e){let t=!1;return this._triggerKeys.keys.forEach((i=>{t=t||e.equals(i)})),t}updateFocusedItem(){for(let e=0;et.setActionContext(e)))}get actionRunner(){return this._actionRunner}set actionRunner(e){this._actionRunner=e,this._actionRunnerDisposables.clear(),this._actionRunnerDisposables.add(this._actionRunner.onDidRun((e=>this._onDidRun.fire(e)))),this._actionRunnerDisposables.add(this._actionRunner.onWillRun((e=>this._onWillRun.fire(e)))),this.viewItems.forEach((t=>t.actionRunner=e))}getContainer(){return this.domNode}getAction(e){if("number"==typeof e)return this.viewItems[e]?.action;if(Ka(e)){for(;e.parentElement!==this.actionsList;){if(!e.parentElement)return;e=e.parentElement}for(let t=0;t{const i=document.createElement("li");let o;i.className="action-item",i.setAttribute("role","presentation");const s={hoverDelegate:this._hoverDelegate,...t,isTabList:"tablist"===this.options.ariaRole};this.options.actionViewItemProvider&&(o=this.options.actionViewItemProvider(e,s)),o||(o=new lA(this.context,e,s)),this.options.allowContextMenu||this.viewItemDisposables.set(o,ua(i,Za.CONTEXT_MENU,(e=>{Xa(e,!0)}))),o.actionRunner=this._actionRunner,o.setActionContext(this.context),o.render(i),null===n||n<0||n>=this.actionsList.children.length?(this.actionsList.appendChild(i),this.viewItems.push(o)):(this.actionsList.insertBefore(i,this.actionsList.children[n]),this.viewItems.splice(n,0,o),n++)})),this.focusable){let e=!1;for(const t of this.viewItems){if(!(t instanceof aA))continue;let i;i=!(e||t.action.id===ch.ID||!t.isEnabled()&&this.options.focusOnlyEnabledItems),i?(t.setFocusable(!0),e=!0):t.setFocusable(!1)}}"number"==typeof this.focusedItem&&this.focus(this.focusedItem),this.refreshRole()}clear(){this.isEmpty()||(this.viewItems=Et(this.viewItems),this.viewItemDisposables.clearAndDisposeAll(),ca(this.actionsList),this.refreshRole())}length(){return this.viewItems.length}isEmpty(){return 0===this.viewItems.length}focus(e){let t,i=!1;if(void 0===e?i=!0:"number"==typeof e?t=e:"boolean"==typeof e&&(i=e),i&&void 0===this.focusedItem){const e=this.viewItems.findIndex((e=>e.isEnabled()));this.focusedItem=-1===e?void 0:e,this.updateFocus(void 0,void 0,!0)}else void 0!==t&&(this.focusedItem=t),this.updateFocus(void 0,void 0,!0)}focusFirst(){return this.focusedItem=this.length()-1,this.focusNext(!0)}focusLast(){return this.focusedItem=0,this.focusPrevious(!0)}focusNext(e,t){if(void 0===this.focusedItem)this.focusedItem=this.viewItems.length-1;else if(this.viewItems.length<=1)return!1;const i=this.focusedItem;let n;do{if(!e&&this.options.preventLoopNavigation&&this.focusedItem+1>=this.viewItems.length)return this.focusedItem=i,!1;this.focusedItem=(this.focusedItem+1)%this.viewItems.length,n=this.viewItems[this.focusedItem]}while(this.focusedItem!==i&&(this.options.focusOnlyEnabledItems&&!n.isEnabled()||n.action.id===ch.ID));return this.updateFocus(void 0,void 0,t),!0}focusPrevious(e){if(void 0===this.focusedItem)this.focusedItem=0;else if(this.viewItems.length<=1)return!1;const t=this.focusedItem;let i;do{if(this.focusedItem=this.focusedItem-1,this.focusedItem<0){if(!e&&this.options.preventLoopNavigation)return this.focusedItem=t,!1;this.focusedItem=this.viewItems.length-1}i=this.viewItems[this.focusedItem]}while(this.focusedItem!==t&&(this.options.focusOnlyEnabledItems&&!i.isEnabled()||i.action.id===ch.ID));return this.updateFocus(!0),!0}updateFocus(e,t,i=!1){void 0===this.focusedItem&&this.actionsList.focus({preventScroll:t}),void 0!==this.previouslyFocusedItem&&this.previouslyFocusedItem!==this.focusedItem&&this.viewItems[this.previouslyFocusedItem]?.blur();const n=void 0!==this.focusedItem?this.viewItems[this.focusedItem]:void 0;if(n){let o=!0;vt(n.focus)||(o=!1),this.options.focusOnlyEnabledItems&&vt(n.isEnabled)&&!n.isEnabled()&&(o=!1),n.action.id===ch.ID&&(o=!1),o?(i||this.previouslyFocusedItem!==this.focusedItem)&&(n.focus(e),this.previouslyFocusedItem=this.focusedItem):(this.actionsList.focus({preventScroll:t}),this.previouslyFocusedItem=void 0),o&&n.showHover?.()}}doTrigger(e){if(void 0===this.focusedItem)return;const t=this.viewItems[this.focusedItem];if(t instanceof aA){const i=null===t._context||void 0===t._context?e:t._context;this.run(t._action,i)}}async run(e,t){await this._actionRunner.run(e,t)}dispose(){this._context=void 0,this.viewItems=Et(this.viewItems),this.getContainer().remove(),super.dispose()}}var hA=i(6745),uA={};uA.styleTagTransform=Vl(),uA.setAttributes=Fl(),uA.insert=Ol().bind(null,"head"),uA.domAPI=Rl(),uA.insertStyleElement=Wl(),Ml()(hA.A,uA),hA.A&&hA.A.locals&&hA.A.locals;class gA{constructor(e,t,i=t){this.modifierLabels=[null],this.modifierLabels[2]=e,this.modifierLabels[1]=t,this.modifierLabels[3]=i}toLabel(e,t,i){if(0===t.length)return null;const n=[];for(let o=0,s=t.length;o=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r},VA=function(e,t){return function(i,n){t(i,n,e)}};const zA="acceptSelectedCodeAction",UA="previewSelectedCodeAction";class jA{get templateId(){return"header"}renderTemplate(e){e.classList.add("group-header");const t=document.createElement("span");return e.append(t),{container:e,text:t}}renderElement(e,t,i){i.text.textContent=e.group?.title??e.label??""}disposeTemplate(e){}}class KA{get templateId(){return"separator"}renderTemplate(e){e.classList.add("separator");const t=document.createElement("span");return e.append(t),{container:e,text:t}}renderElement(e,t,i){i.text.textContent=e.label??""}disposeTemplate(e){}}let qA=class{get templateId(){return"action"}constructor(e,t){this._supportsPreview=e,this._keybindingService=t}renderTemplate(e){e.classList.add(this.templateId);const t=document.createElement("div");t.className="icon",e.append(t);const i=document.createElement("span");i.className="title",e.append(i);const n=document.createElement("span");return n.className="description",e.append(n),{container:e,icon:t,text:i,description:n,keybinding:new SA(e,oe)}}renderElement(e,t,i){if(e.group?.icon?(i.icon.className=_c.asClassName(e.group.icon),e.group.icon.color&&(i.icon.style.color=Mf(e.group.icon.color.id))):(i.icon.className=_c.asClassName(mc.lightBulb),i.icon.style.color="var(--vscode-editorLightBulb-foreground)"),!e.item||!e.label)return;!function(e,...t){e?ll(...t):dl(...t)}(!e.hideIcon,i.icon),i.text.textContent=QA(e.label),e.keybinding?(i.description.textContent=e.keybinding.getLabel(),i.description.style.display="inline",i.description.style.letterSpacing="0.5px"):e.description?(i.description.textContent=QA(e.description),i.description.style.display="inline"):(i.description.textContent="",i.description.style.display="none");const n=this._keybindingService.lookupKeybinding(zA)?.getLabel(),o=this._keybindingService.lookupKeybinding(UA)?.getLabel();i.container.classList.toggle("option-disabled",e.disabled),e.tooltip?i.container.title=e.tooltip:e.disabled?i.container.title=e.label:n&&o?this._supportsPreview&&e.canPreview?i.container.title=C(1638,"{0} to Apply, {1} to Preview",n,o):i.container.title=C(1639,"{0} to Apply",n):i.container.title=""}disposeTemplate(e){e.keybinding.dispose()}};qA=HA([VA(1,LA)],qA);class $A extends UIEvent{constructor(){super("acceptSelectedAction")}}class GA extends UIEvent{constructor(){super("previewSelectedAction")}}function YA(e){if("action"===e.kind)return e.label}let ZA=class extends Tt{constructor(e,t,i,n,o,s,r,a){super(),this._delegate=n,this._contextViewService=s,this._keybindingService=r,this._layoutService=a,this._actionLineHeight=28,this._headerLineHeight=28,this._separatorLineHeight=8,this.cts=this._register(new si),this.domNode=document.createElement("div"),this.domNode.classList.add("actionList");const l={getHeight:e=>{switch(e.kind){case"header":return this._headerLineHeight;case"separator":return this._separatorLineHeight;default:return this._actionLineHeight}},getTemplateId:e=>e.kind};this._list=this._register(new ZR(e,this.domNode,l,[new qA(t,this._keybindingService),new jA,new KA],{keyboardSupport:!1,typeNavigationEnabled:!0,keyboardNavigationLabelProvider:{getKeyboardNavigationLabel:YA},accessibilityProvider:{getAriaLabel:e=>{if("action"===e.kind){let t=e.label?QA(e?.label):"";return e.description&&(t=t+", "+QA(e.description)),e.disabled&&(t=C(1640,"{0}, Disabled Reason: {1}",t,e.disabled)),t}return null},getWidgetAriaLabel:()=>C(1641,"Action Widget"),getRole:e=>"action"===e.kind?"option":"separator",getWidgetRole:()=>"listbox",...o}})),this._list.style(OA),this._register(this._list.onMouseClick((e=>this.onListClick(e)))),this._register(this._list.onMouseOver((e=>this.onListHover(e)))),this._register(this._list.onDidChangeFocus((()=>this.onFocus()))),this._register(this._list.onDidChangeSelection((e=>this.onListSelection(e)))),this._allMenuItems=i,this._list.splice(0,this._list.length,this._allMenuItems),this._list.length&&this.focusNext()}focusCondition(e){return!e.disabled&&"action"===e.kind}hide(e){this._delegate.onHide(e),this.cts.cancel(),this._contextViewService.hideContextView()}layout(e){const t=this._allMenuItems.filter((e=>"header"===e.kind)).length,i=this._allMenuItems.filter((e=>"separator"===e.kind)).length,n=this._allMenuItems.length*this._actionLineHeight+t*this._headerLineHeight-t*this._actionLineHeight+i*this._separatorLineHeight-i*this._actionLineHeight;this._list.layout(n);let o=e;if(this._allMenuItems.length>=50)o=380;else{const t=this._allMenuItems.map(((e,t)=>{const i=this.domNode.ownerDocument.getElementById(this._list.getElementID(t));if(i){i.style.width="auto";const e=i.getBoundingClientRect().width;return i.style.width="",e}return 0}));o=Math.max(...t,e)}const s=Math.min(n,.7*this._layoutService.getContainer(ea(this.domNode)).clientHeight);return this._list.layout(s,o),this.domNode.style.height=`${s}px`,this._list.domFocus(),o}focusPrevious(){this._list.focusPrevious(1,!0,void 0,this.focusCondition)}focusNext(){this._list.focusNext(1,!0,void 0,this.focusCondition)}acceptSelected(e){const t=this._list.getFocus();if(0===t.length)return;const i=t[0],n=this._list.element(i);if(!this.focusCondition(n))return;const o=e?new GA:new $A;this._list.setSelection([i],o)}onListSelection(e){if(!e.elements.length)return;const t=e.elements[0];t.item&&this.focusCondition(t)?this._delegate.onSelect(t.item,e.browserEvent instanceof GA):this._list.setSelection([])}onFocus(){const e=this._list.getFocus();if(0===e.length)return;const t=e[0],i=this._list.element(t);this._delegate.onFocus?.(i.item)}async onListHover(e){const t=e.element;if(t&&t.item&&this.focusCondition(t)){if(this._delegate.onHover&&!t.disabled&&"action"===t.kind){const e=await this._delegate.onHover(t.item,this.cts.token);t.canPreview=e?e.canPreview:void 0}e.index&&this._list.splice(e.index,1,[t])}this._list.setFocus("number"==typeof e.index?[e.index]:[])}onListClick(e){e.element&&this.focusCondition(e.element)&&this._list.setFocus([])}};function QA(e){return e.replace(/\r\n|\r|\n/g," ")}ZA=HA([VA(5,xA),VA(6,LA),VA(7,WA)],ZA);var XA=function(e,t){return function(i,n){t(i,n,e)}};Of("actionBar.toggledBackground",Sv,C(1642,"Background color for toggled action items in action bar."));const JA={Visible:new Xh("codeActionMenuVisible",!1,C(1643,"Whether the action widget list is visible"))},eO=nh("actionWidgetService");let tO=class extends Tt{get isVisible(){return JA.Visible.getValue(this._contextKeyService)||!1}constructor(e,t,i){super(),this._contextViewService=e,this._contextKeyService=t,this._instantiationService=i,this._list=this._register(new Rt)}show(e,t,i,n,o,s,r,a){const l=JA.Visible.bindTo(this._contextKeyService),d=this._instantiationService.createInstance(ZA,e,t,i,n,a);this._contextViewService.showContextView({getAnchor:()=>o,render:e=>(l.set(!0),this._renderWidget(e,d,r??[])),onHide:e=>{l.reset(),this._onWidgetClosed(e)}},s,!1)}acceptSelected(e){this._list.value?.acceptSelected(e)}focusPrevious(){this._list?.value?.focusPrevious()}focusNext(){this._list?.value?.focusNext()}hide(e){this._list.value?.hide(e),this._list.clear()}_renderWidget(e,t,i){const n=document.createElement("div");if(n.classList.add("action-widget"),e.appendChild(n),this._list.value=t,!this._list.value)throw new Error("List has no value");n.appendChild(this._list.value.domNode);const o=new Mt,s=document.createElement("div"),r=e.appendChild(s);r.classList.add("context-view-block"),o.add(ua(r,Za.MOUSE_DOWN,(e=>e.stopPropagation())));const a=document.createElement("div"),l=e.appendChild(a);l.classList.add("context-view-pointerBlock"),o.add(ua(l,Za.POINTER_MOVE,(()=>l.remove()))),o.add(ua(l,Za.MOUSE_DOWN,(()=>l.remove())));let d=0;if(i.length){const e=this._createActionBar(".action-widget-action-bar",i);e&&(n.appendChild(e.getContainer().parentElement),o.add(e),d=e.getContainer().offsetWidth)}const c=this._list.value?.layout(d);n.style.width=`${c}px`;const h=o.add(el(e));return o.add(h.onDidBlur((()=>this.hide(!0)))),o}_createActionBar(e,t){if(!t.length)return;const i=al(e),n=new cA(i);return n.push(t,{icon:!1,label:!0}),n}_onWidgetClosed(e){this._list.value?.hide(e)}};tO=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([XA(0,xA),XA(1,Jh),XA(2,ih)],tO),vp(eO,tO,1);const iO=1100;var nO;bu(class extends vu{constructor(){super({id:"hideCodeActionWidget",title:S(1644,"Hide action widget"),precondition:JA.Visible,keybinding:{weight:iO,primary:9,secondary:[1033]}})}run(e){e.get(eO).hide(!0)}}),bu(class extends vu{constructor(){super({id:"selectPrevCodeAction",title:S(1645,"Select previous action"),precondition:JA.Visible,keybinding:{weight:iO,primary:16,secondary:[2064],mac:{primary:16,secondary:[2064,302]}}})}run(e){const t=e.get(eO);t instanceof tO&&t.focusPrevious()}}),bu(class extends vu{constructor(){super({id:"selectNextCodeAction",title:S(1646,"Select next action"),precondition:JA.Visible,keybinding:{weight:iO,primary:18,secondary:[2066],mac:{primary:18,secondary:[2066,300]}}})}run(e){const t=e.get(eO);t instanceof tO&&t.focusNext()}}),bu(class extends vu{constructor(){super({id:zA,title:S(1647,"Accept selected action"),precondition:JA.Visible,keybinding:{weight:iO,primary:3,secondary:[2137]}})}run(e){const t=e.get(eO);t instanceof tO&&t.acceptSelected()}}),bu(class extends vu{constructor(){super({id:UA,title:S(1648,"Preview selected action"),precondition:JA.Visible,keybinding:{weight:iO,primary:2051}})}run(e){const t=e.get(eO);t instanceof tO&&t.acceptSelected(!0)}}),function(e){e[e.Ignore=0]="Ignore",e[e.Info=1]="Info",e[e.Warning=2]="Warning",e[e.Error=3]="Error"}(nO||(nO={})),function(e){const t="error",i="warning",n="info";e.fromValue=function(o){return o?nn(t,o)?e.Error:nn(i,o)||nn("warn",o)?e.Warning:nn(n,o)?e.Info:e.Ignore:e.Ignore},e.toString=function(o){switch(o){case e.Error:return t;case e.Warning:return i;case e.Info:return n;default:return"ignore"}}}(nO||(nO={}));const oO=nO;var sO=oO;const rO=nh("notificationService");class aO{}var lO=i(9926),dO={};dO.styleTagTransform=Vl(),dO.setAttributes=Fl(),dO.insert=Ol().bind(null,"head"),dO.domAPI=Rl(),dO.insertStyleElement=Wl(),Ml()(lO.A,dO),lO.A&&lO.A.locals&&lO.A.locals;var cO,hO=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r},uO=function(e,t){return function(i,n){t(i,n,e)}};let gO=class extends Tt{static{cO=this}static{this.baseId="editor.widget.postEditWidget"}constructor(e,t,i,n,o,s,r,a,l,d,c){super(),this.typeId=e,this.editor=t,this.showCommand=n,this.range=o,this.edits=s,this.onSelectNewEdit=r,this.additionalActions=a,this._keybindingService=d,this._actionWidgetService=c,this.allowEditorOverflow=!0,this.suppressMouseDown=!0,this.create(),this.visibleContext=i.bindTo(l),this.visibleContext.set(!0),this._register(Nt((()=>this.visibleContext.reset()))),this.editor.addContentWidget(this),this.editor.layoutContentWidget(this),this._register(Nt((()=>this.editor.removeContentWidget(this)))),this._register(this.editor.onDidChangeCursorPosition((e=>{this.dispose()}))),this._register(Vt.runAndSubscribe(d.onDidUpdateKeybindings,(()=>{this._updateButtonTitle()})))}_updateButtonTitle(){const e=this._keybindingService.lookupKeybinding(this.showCommand.id)?.getLabel();this.button.element.title=this.showCommand.label+(e?` (${e})`:"")}create(){this.domNode=al(".post-edit-widget"),this.button=this._register(new lT(this.domNode,{supportIcons:!0})),this.button.label="$(insert)",this._register(ua(this.domNode,Za.CLICK,(()=>this.showSelector())))}getId(){return cO.baseId+"."+this.typeId}getDomNode(){return this.domNode}getPosition(){return{position:this.range.getEndPosition(),preference:[2]}}showSelector(){const e=Ia(this.button.element),t={x:e.left+e.width,y:e.top+e.height};this._actionWidgetService.show("postEditWidget",!1,this.edits.allEdits.map(((e,t)=>({kind:"action",item:e,label:e.title,disabled:!1,canPreview:!1,group:{title:"",icon:_c.fromId(t===this.edits.activeEditIndex?mc.check.id:mc.blank.id)}}))),{onHide:()=>{this.editor.focus()},onSelect:e=>{this._actionWidgetService.hide(!1);const t=this.edits.allEdits.findIndex((t=>t===e));if(t!==this.edits.activeEditIndex)return this.onSelectNewEdit(t)}},t,this.editor.getDomNode()??void 0,this.additionalActions)}};gO=cO=hO([uO(8,Jh),uO(9,LA),uO(10,eO)],gO);let pO=class extends Tt{constructor(e,t,i,n,o,s,r,a){super(),this._id=e,this._editor=t,this._visibleContext=i,this._showCommand=n,this._getAdditionalActions=o,this._instantiationService=s,this._bulkEditService=r,this._notificationService=a,this._currentWidget=this._register(new Rt),this._register(Vt.any(t.onDidChangeModel,t.onDidChangeModelContent)((()=>this.clear())))}async applyEditAndShowIfNeeded(e,t,i,n,o){if(!e.length||!this._editor.hasModel())return;const s=this._editor.getModel(),r=t.allEdits.at(t.activeEditIndex);if(!r)return;const a=async s=>{const r=this._editor.getModel();r&&(await r.undo(),this.applyEditAndShowIfNeeded(e,{activeEditIndex:s,allEdits:t.allEdits},i,n,o))},l=(n,o)=>{Re(n)||(this._notificationService.error(o),i&&this.show(e[0],t,a))},d=new VE(this._editor,3,void 0,o);let c;try{c=await function(e,t){return new Promise(((i,n)=>{const o=t.onCancellationRequested((()=>{o.dispose(),n(new Ae)}));e.then(i,n).finally((()=>o.dispose()))}))}(n(r,d.token),d.token)}catch(e){return l(e,C(932,"Error resolving edit '{0}':\n{1}",r.title,uT(e)))}finally{d.dispose()}if(o.isCancellationRequested)return;const h=$M(s.uri,e,c),u=e[0],g=s.deltaDecorations([],[{range:u,options:{description:"paste-line-suffix",stickiness:0}}]);let p,m;this._editor.focus();try{p=await this._bulkEditService.apply(h,{editor:this._editor,token:o}),m=s.getDecorationRange(g[0])}catch(e){return l(e,C(933,"Error applying edit '{0}':\n{1}",r.title,uT(e)))}finally{s.deltaDecorations(g,[])}o.isCancellationRequested||i&&p.isApplied&&t.allEdits.length>1&&this.show(m??u,t,a)}show(e,t,i){this.clear(),this._editor.hasModel()&&(this._currentWidget.value=this._instantiationService.createInstance(gO,this._id,this._editor,this._visibleContext,this._showCommand,e,t,i,this._getAdditionalActions()))}clear(){this._currentWidget.clear()}tryShowSelector(){this._currentWidget.value?.showSelector()}};pO=hO([uO(5,ih),uO(6,TE),uO(7,rO)],pO);var mO,fO=function(e,t){return function(i,n){t(i,n,e)}};const _O="editor.changePasteType",vO=new Xh("pasteWidgetVisible",!1,C(912,"Whether the paste widget is showing")),bO="application/vnd.code.copymetadata";let wO=class extends Tt{static{mO=this}static{this.ID="editor.contrib.copyPasteActionController"}static get(e){return e.getContribution(mO.ID)}constructor(e,t,i,n,o,s,r,a,l,d){super(),this._logService=i,this._bulkEditService=n,this._clipboardService=o,this._commandService=s,this._configService=r,this._languageFeaturesService=a,this._quickInputService=l,this._progressService=d,this._editor=e;const c=e.getContainerDomNode();this._register(ua(c,"copy",(e=>this.handleCopy(e)))),this._register(ua(c,"cut",(e=>this.handleCopy(e)))),this._register(ua(c,"paste",(e=>this.handlePaste(e)),!0)),this._pasteProgressManager=this._register(new $E("pasteIntoEditor",e,t)),this._postPasteWidgetManager=this._register(t.createInstance(pO,"pasteIntoEditor",e,vO,{id:_O,label:C(913,"Show paste options...")},(()=>mO._configureDefaultAction?[mO._configureDefaultAction]:[])))}changePasteType(){this._postPasteWidgetManager.tryShowSelector()}async pasteAs(e){this._logService.trace("CopyPasteController.pasteAs"),this._editor.focus();try{this._logService.trace("Before calling editor.action.clipboardPasteAction"),this._pasteAsActionContext={preferred:e},await this._commandService.executeCommand("editor.action.clipboardPasteAction")}finally{this._pasteAsActionContext=void 0}}clearWidgets(){this._postPasteWidgetManager.clear()}isPasteAsEnabled(){return this._editor.getOption(97).enabled}async finishedPaste(){await this._currentPasteOperation}handleCopy(e){let t=null;if(e.clipboardData){const[i,n]=aE.getTextData(e.clipboardData),o=n||sE.INSTANCE.get(i);t=o?.id||null,this._logService.trace("CopyPasteController#handleCopy for id : ",t," with text.length : ",i.length)}else this._logService.trace("CopyPasteController#handleCopy");if(!this._editor.hasTextFocus())return;if(this._clipboardService.clearInternalState?.(),!e.clipboardData||!this.isPasteAsEnabled())return;const i=this._editor.getModel(),n=this._editor.getSelections();if(!i||!n?.length)return;const o=this._editor.getOption(45);let s=n;const r=1===n.length&&n[0].isEmpty();if(r){if(!o)return;s=[new Yu(s[0].startLineNumber,1,s[0].startLineNumber,1+i.getLineLength(s[0].startLineNumber))]}const a=this._editor._getViewModel()?.getPlainTextToCopy(n,o,K),l={multicursorText:Array.isArray(a)?a:null,pasteOnNewLine:r,mode:null},d=this._languageFeaturesService.documentPasteEditProvider.ordered(i).filter((e=>!!e.prepareDocumentPaste));if(!d.length)return void this.setCopyMetadata(e.clipboardData,{defaultPastePayload:l});const c=IE(e.clipboardData),h=d.flatMap((e=>e.copyMimeTypes??[])),u=t??mC();this.setCopyMetadata(e.clipboardData,{id:u,providerCopyMimeTypes:h,defaultPastePayload:l});const g=d.map((e=>({providerMimeTypes:e.copyMimeTypes,operation:di((t=>e.prepareDocumentPaste(i,s,c,t).catch((e=>{console.error(e)}))))})));mO._currentCopyOperation?.operations.forEach((e=>e.operation.cancel())),mO._currentCopyOperation={handle:u,operations:g}}async handlePaste(e){if(e.clipboardData){const[t,i]=aE.getTextData(e.clipboardData),n=i||sE.INSTANCE.get(t);this._logService.trace("CopyPasteController#handlePaste for id : ",n?.id)}else this._logService.trace("CopyPasteController#handlePaste");if(!e.clipboardData||!this._editor.hasTextFocus())return;cM.get(this._editor)?.closeMessage(),this._currentPasteOperation?.cancel(),this._currentPasteOperation=void 0;const t=this._editor.getModel(),i=this._editor.getSelections();if(!i?.length||!t)return;if(this._editor.getOption(104)||!this.isPasteAsEnabled()&&!this._pasteAsActionContext)return;const n=this.fetchCopyMetadata(e);this._logService.trace("CopyPasteController#handlePaste with metadata : ",n?.id," and text.length : ",e.clipboardData.getData("text/plain").length);const o=ME(e.clipboardData);o.delete(bO);const s=Array.from(e.clipboardData.files).map((e=>e.type)),r=[...e.clipboardData.types,...s,...n?.providerCopyMimeTypes??[],wp.uriList],a=this._languageFeaturesService.documentPasteEditProvider.ordered(t).filter((e=>{const t=this._pasteAsActionContext?.preferred;return!(t&&!this.providerMatchesPreference(e,t))&&e.pasteMimeTypes?.some((e=>uE(e,r)))}));a.length?(e.preventDefault(),e.stopImmediatePropagation(),this._pasteAsActionContext?this.showPasteAsPick(this._pasteAsActionContext.preferred,a,i,o,n):this.doPasteInline(a,i,o,n,e)):this._pasteAsActionContext?.preferred&&(this.showPasteAsNoEditMessage(i,this._pasteAsActionContext.preferred),e.preventDefault(),e.stopImmediatePropagation())}showPasteAsNoEditMessage(e,t){const i="only"in t?t.only.value:"preferences"in t?t.preferences.length?t.preferences.map((e=>e.value)).join(", "):C(914,"empty"):t.providerId;cM.get(this._editor)?.showMessage(C(915,"No paste edits for '{0}' found",i),e[0].getStartPosition())}doPasteInline(e,t,i,n,o){this._logService.trace("CopyPasteController#doPasteInline");const s=this._editor;if(!s.hasModel())return;const r=new VE(s,3,void 0),a=di((async s=>{const l=this._editor;if(!l.hasModel())return;const d=l.getModel(),c=new Mt,h=c.add(new si(s));c.add(r.token.onCancellationRequested((()=>h.cancel())));const u=h.token;try{if(await this.mergeInDataFromCopy(e,i,n,u),u.isCancellationRequested)return;const s=e.filter((e=>this.isSupportedPasteProvider(e,i)));if(!s.length||1===s.length&&s[0]instanceof EM)return this.applyDefaultPasteHandler(i,n,u,o);const r={triggerKind:BS.Automatic},a=await this.getPasteEdits(s,i,d,t,r,u);if(c.add(a),u.isCancellationRequested)return;if(1===a.edits.length&&a.edits[0].provider instanceof EM)return this.applyDefaultPasteHandler(i,n,u,o);if(a.edits.length){const e="afterPaste"===l.getOption(97).showPasteSelector;return this._postPasteWidgetManager.applyEditAndShowIfNeeded(t,{activeEditIndex:this.getInitialActiveEditIndex(d,a.edits),allEdits:a.edits},e,(async(e,i)=>{if(!e.provider.resolveDocumentPasteEdit)return e;const n=e.provider.resolveDocumentPasteEdit(e,i),o=new ki,s=await this._pasteProgressManager.showWhile(t[0].getEndPosition(),C(916,"Resolving paste edit for '{0}'. Click to cancel",e.title),ci(Promise.race([o.p,n]),i),{cancel:()=>o.cancel()},0);return s&&(e.insertText=s.insertText,e.additionalEdit=s.additionalEdit),e}),u)}await this.applyDefaultPasteHandler(i,n,u,o)}finally{c.dispose(),this._currentPasteOperation===a&&(this._currentPasteOperation=void 0)}}));this._pasteProgressManager.showWhile(t[0].getEndPosition(),C(917,"Running paste handlers. Click to cancel and do basic paste"),a,{cancel:async()=>{a.cancel(),r.token.isCancellationRequested||await this.applyDefaultPasteHandler(i,n,r.token,o)}}).finally((()=>{r.dispose()})),this._currentPasteOperation=a}showPasteAsPick(e,t,i,n,o){this._logService.trace("CopyPasteController#showPasteAsPick");const s=di((async r=>{const a=this._editor;if(!a.hasModel())return;const l=a.getModel(),d=new Mt,c=d.add(new VE(a,3,void 0,r));try{if(await this.mergeInDataFromCopy(t,n,o,c.token),c.token.isCancellationRequested)return;let s=t.filter((t=>this.isSupportedPasteProvider(t,n,e)));e&&(s=s.filter((t=>this.providerMatchesPreference(t,e))));const r={triggerKind:BS.PasteAs,only:e&&"only"in e?e.only:void 0};let a,h=d.add(await this.getPasteEdits(s,n,l,i,r,c.token));if(c.token.isCancellationRequested)return;if(e&&(h={edits:h.edits.filter((t=>"only"in e?e.only.contains(t.kind):"preferences"in e?e.preferences.some((e=>e.contains(t.kind))):e.providerId===t.provider.id)),dispose:h.dispose}),!h.edits.length)return void(e&&this.showPasteAsNoEditMessage(i,e));if(e)a=h.edits.at(0);else{const e={id:"editor.pasteAs.default",label:C(918,"Configure default paste action"),edit:void 0},t=await this._quickInputService.pick([...h.edits.map((e=>({label:e.title,description:e.kind?.value,edit:e}))),...mO._configureDefaultAction?[{type:"separator"},{label:mO._configureDefaultAction.label,edit:void 0}]:[]],{placeHolder:C(919,"Select Paste Action")});if(t===e)return void mO._configureDefaultAction?.run();a=t?.edit}if(!a)return;const u=$M(l.uri,i,a);await this._bulkEditService.apply(u,{editor:this._editor})}finally{d.dispose(),this._currentPasteOperation===s&&(this._currentPasteOperation=void 0)}}));this._progressService.withProgress({location:10,title:C(920,"Running paste handlers")},(()=>s))}setCopyMetadata(e,t){this._logService.trace("CopyPasteController#setCopyMetadata new id : ",t.id),e.setData(bO,JSON.stringify(t))}fetchCopyMetadata(e){if(this._logService.trace("CopyPasteController#fetchCopyMetadata"),!e.clipboardData)return;const t=e.clipboardData.getData(bO);if(t)try{return JSON.parse(t)}catch{return}const[i,n]=aE.getTextData(e.clipboardData);return n?{defaultPastePayload:{mode:n.mode,multicursorText:n.multicursorText??null,pasteOnNewLine:!!n.isFromEmptySelection}}:void 0}async mergeInDataFromCopy(e,t,i,n){if(this._logService.trace("CopyPasteController#mergeInDataFromCopy with metadata : ",i?.id),i?.id&&mO._currentCopyOperation?.handle===i.id){const i=mO._currentCopyOperation.operations.filter((t=>e.some((e=>e.pasteMimeTypes.some((e=>uE(e,t.providerMimeTypes))))))).map((e=>e.operation)),o=await Promise.all(i);if(n.isCancellationRequested)return;for(const e of o.reverse())if(e)for(const[i,n]of e)t.replace(i,n)}if(!t.has(wp.uriList)){const e=await this._clipboardService.readResources();if(n.isCancellationRequested)return;e.length&&t.append(wp.uriList,dE(pE.create(e)))}}async getPasteEdits(e,t,i,n,o,s){const r=new Mt,a=await ci(Promise.all(e.map((async e=>{try{const a=await(e.provideDocumentPasteEdits?.(i,n,t,o,s));return a&&r.add(a),a?.edits?.map((t=>({...t,provider:e})))}catch(e){return void(Re(e)||console.error(e))}}))),s),l=rs(a??[]).flat().filter((e=>!o.only||o.only.contains(e.kind)));return{edits:GM(l),dispose:()=>r.dispose()}}async applyDefaultPasteHandler(e,t,i,n){const o=e.get(wp.text)??e.get("text"),s=await(o?.asString())??"";if(i.isCancellationRequested)return;const r={clipboardEvent:n,text:s,pasteOnNewLine:t?.defaultPastePayload.pasteOnNewLine??!1,multicursorText:t?.defaultPastePayload.multicursorText??null,mode:null};this._logService.trace("CopyPasteController#applyDefaultPasteHandler for id : ",t?.id),this._editor.trigger("keyboard","paste",r)}isSupportedPasteProvider(e,t,i){return!!e.pasteMimeTypes?.some((e=>t.matches(e)))&&(!i||this.providerMatchesPreference(e,i))}providerMatchesPreference(e,t){return"only"in t?e.providedPasteEditKinds.some((e=>t.only.contains(e))):"preferences"in t?t.preferences.some((e=>t.preferences.some((t=>t.contains(e))))):e.id===t.providerId}getInitialActiveEditIndex(e,t){const i=this._configService.getValue("editor.pasteAs.preferences",{resource:e.uri});for(const e of Array.isArray(i)?i:[]){const i=new mE(e),n=t.findIndex((e=>i.contains(e.kind)));if(n>=0)return n}return 0}};wO=mO=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([fO(1,ih),fO(2,Cu),fO(3,TE),fO(4,iE),fO(5,ph),fO(6,cp),fO(7,PE),fO(8,xE),fO(9,fE)],wO);const CO="9_cutcopypaste",yO=G||document.queryCommandSupported("cut"),SO=G||document.queryCommandSupported("copy"),xO=void 0!==navigator.clipboard&&!c||document.queryCommandSupported("paste");function kO(e){return e.register(),e}const LO=yO?kO(new Tu({id:"editor.action.clipboardCutAction",precondition:void 0,kbOpts:G?{primary:2102,win:{primary:2102,secondary:[1044]},weight:100}:void 0,menuOpts:[{menuId:uu.MenubarEditMenu,group:"2_ccp",title:C(809,"Cu&&t"),order:1},{menuId:uu.EditorContext,group:CO,title:C(810,"Cut"),when:Qu.writable,order:1},{menuId:uu.CommandPalette,group:"",title:C(811,"Cut"),order:1},{menuId:uu.SimpleEditorContext,group:CO,title:C(812,"Cut"),when:Qu.writable,order:1}]})):void 0,EO=SO?kO(new Tu({id:"editor.action.clipboardCopyAction",precondition:void 0,kbOpts:G?{primary:2081,win:{primary:2081,secondary:[2067]},weight:100}:void 0,menuOpts:[{menuId:uu.MenubarEditMenu,group:"2_ccp",title:C(813,"&&Copy"),order:2},{menuId:uu.EditorContext,group:CO,title:C(814,"Copy"),order:2},{menuId:uu.CommandPalette,group:"",title:C(815,"Copy"),order:1},{menuId:uu.SimpleEditorContext,group:CO,title:C(816,"Copy"),order:2}]})):void 0;mu.appendMenuItem(uu.MenubarEditMenu,{submenu:uu.MenubarCopy,title:S(821,"Copy As"),group:"2_ccp",order:3}),mu.appendMenuItem(uu.EditorContext,{submenu:uu.EditorContextCopy,title:S(822,"Copy As"),group:CO,order:3}),mu.appendMenuItem(uu.EditorContext,{submenu:uu.EditorContextShare,title:S(823,"Share"),group:"11_share",order:-1,when:Th.and(Th.notEquals("resourceScheme","output"),Qu.editorTextFocus)}),mu.appendMenuItem(uu.ExplorerContext,{submenu:uu.ExplorerContextShare,title:S(824,"Share"),group:"11_share",order:-1});const IO=xO?kO(new Tu({id:"editor.action.clipboardPasteAction",precondition:void 0,kbOpts:G?{primary:2100,win:{primary:2100,secondary:[1043]},linux:{primary:2100,secondary:[1043]},weight:100}:void 0,menuOpts:[{menuId:uu.MenubarEditMenu,group:"2_ccp",title:C(817,"&&Paste"),order:4},{menuId:uu.EditorContext,group:CO,title:C(818,"Paste"),when:Qu.writable,order:4},{menuId:uu.CommandPalette,group:"",title:C(819,"Paste"),order:1},{menuId:uu.SimpleEditorContext,group:CO,title:C(820,"Paste"),when:Qu.writable,order:4}]})):void 0;function DO(e,t){e&&(e.addImplementation(1e4,"code-editor",((e,i)=>{const n=e.get(Cu);n.trace("registerExecCommandImpl (addImplementation code-editor for : ",t,")");const o=e.get(oh).getFocusedCodeEditor();if(o&&o.hasTextFocus()){const e=o.getOption(45),i=o.getSelection();return i&&i.isEmpty()&&!e||(o.getOption(170)&&"cut"===t?(NO(o),n.trace("registerExecCommandImpl (before execCommand copy)"),o.getContainerDomNode().ownerDocument.execCommand("copy"),o.trigger(void 0,"cut",void 0),n.trace("registerExecCommandImpl (after execCommand copy)")):(NO(o),n.trace("registerExecCommandImpl (before execCommand "+t+")"),o.getContainerDomNode().ownerDocument.execCommand(t),n.trace("registerExecCommandImpl (after execCommand "+t+")"))),!0}return!1})),e.addImplementation(0,"generic-dom",((e,i)=>{const n=e.get(Cu);return n.trace("registerExecCommandImpl (addImplementation generic-dom for : ",t,")"),n.trace("registerExecCommandImpl (before execCommand "+t+")"),za().execCommand(t),n.trace("registerExecCommandImpl (after execCommand "+t+")"),!0})))}function NO(e){if(e.getOption(170)){const t=lE.get(e.getId());t&&t.onWillCopy()}}DO(LO,"cut"),DO(EO,"copy"),IO&&(IO.addImplementation(1e4,"code-editor",((e,t)=>{const i=e.get(Cu);i.trace("registerExecCommandImpl (addImplementation code-editor for : paste)");const n=e.get(oh),o=e.get(iE),s=e.get(wu),r=e.get(nE),a=n.getFocusedCodeEditor();if(a&&a.hasModel()&&a.hasTextFocus()){if(a.getOption(170)){const e=lE.get(a.getId());e&&e.onWillPaste()}const e=Ht.create(!0);i.trace("registerExecCommandImpl (before triggerPaste)");const t=o.triggerPaste(Ua().vscodeWindowId);return t?(i.trace("registerExecCommandImpl (triggerPaste defined)"),t.then((async()=>{if(i.trace("registerExecCommandImpl (after triggerPaste)"),"stable"!==r.quality){const t=e.elapsed();s.publicLog2("editorAsyncPaste",{duration:t})}return wO.get(a)?.finishedPaste()??Promise.resolve()}))):(i.trace("registerExecCommandImpl (triggerPaste undefined)"),!Y||(i.trace("registerExecCommandImpl (Paste handling on web)"),(async()=>{const e=await o.readText();if(""!==e){const t=sE.INSTANCE.get(e);let n=!1,o=null,s=null;t&&(n=a.getOption(45)&&!!t.isFromEmptySelection,o=void 0!==t.multicursorText?t.multicursorText:null,s=t.mode),i.trace("registerExecCommandImpl (clipboardText.length : ",e.length," id : ",t?.id,")"),a.trigger("keyboard","paste",{text:e,pasteOnNewLine:n,multicursorText:o,mode:s})}})()))}return!1})),IO.addImplementation(0,"generic-dom",((e,t)=>(e.get(Cu).trace("registerExecCommandImpl (addImplementation generic-dom for : paste)"),e.get(iE).triggerPaste(Ua().vscodeWindowId)??!1)))),SO&&Hu(class extends Ou{constructor(){super({id:"editor.action.clipboardCopyWithSyntaxHighlightingAction",label:S(825,"Copy with Syntax Highlighting"),precondition:void 0,kbOpts:{kbExpr:Qu.textInputFocus,primary:0,weight:100}})}run(e,t){const i=e.get(Cu);i.trace("ExecCommandCopyWithSyntaxHighlightingAction#run"),t.hasModel()&&(!t.getOption(45)&&t.getSelection().isEmpty()||(rE.forceCopyWithSyntaxHighlighting=!0,t.focus(),i.trace("ExecCommandCopyWithSyntaxHighlightingAction (before execCommand copy)"),t.getContainerDomNode().ownerDocument.execCommand("copy"),i.trace("ExecCommandCopyWithSyntaxHighlightingAction (after execCommand copy)"),rE.forceCopyWithSyntaxHighlighting=!1))}});const MO={enableSplitViewResizing:!0,splitViewDefaultRatio:.5,renderSideBySide:!0,renderMarginRevertIcon:!0,renderGutterMenu:!0,maxComputationTime:5e3,maxFileSize:50,ignoreTrimWhitespace:!0,renderIndicators:!0,originalEditable:!1,diffCodeLens:!1,renderOverviewRuler:!0,diffWordWrap:"inherit",diffAlgorithm:"advanced",accessibilityVerbose:!1,experimental:{showMoves:!1,showEmptyDecorations:!0,useTrueInlineView:!1},hideUnchangedRegions:{enabled:!1,contextLineCount:3,minimumLineCount:3,revealLineCount:20},isInEmbeddedEditor:!1,onlyShowAccessibleDiffViewer:!1,renderSideBySideInlineBreakpoint:900,useInlineViewWhenSpaceIsLimited:!0,compactMode:!1};class TO{constructor(e){this._values=e}hasChanged(e){return this._values[e]}}class RO{constructor(){this.stableMinimapLayoutInput=null,this.stableFitMaxMinimapScale=0,this.stableFitRemainingWidth=0}}class AO{constructor(e,t,i,n){this.id=e,this.name=t,this.defaultValue=i,this.schema=n}applyUpdate(e,t){return PO(e,t)}compute(e,t,i){return i}}class OO{constructor(e,t){this.newValue=e,this.didChange=t}}function PO(e,t){if("object"!=typeof e||"object"!=typeof t||!e||!t)return new OO(t,e!==t);if(Array.isArray(e)||Array.isArray(t)){const i=Array.isArray(e)&&Array.isArray(t)&&Jo(e,t);return new OO(t,!i)}let i=!1;for(const n in t)if(t.hasOwnProperty(n)){const o=PO(e[n],t[n]);o.didChange&&(e[n]=o.newValue,i=!0)}return new OO(e,i)}class FO{constructor(e){this.schema=void 0,this.id=e,this.name="_never_",this.defaultValue=void 0}applyUpdate(e,t){return PO(e,t)}validate(e){return this.defaultValue}}class BO{constructor(e,t,i,n){this.id=e,this.name=t,this.defaultValue=i,this.schema=n}applyUpdate(e,t){return PO(e,t)}validate(e){return void 0===e?this.defaultValue:e}compute(e,t,i){return i}}function WO(e,t){return void 0===e?t:"false"!==e&&Boolean(e)}class HO extends BO{constructor(e,t,i,n=void 0){void 0!==n&&(n.type="boolean",n.default=i),super(e,t,i,n)}validate(e){return WO(e,this.defaultValue)}}function VO(e,t,i,n){if(void 0===e)return t;let o=parseInt(e,10);return isNaN(o)?t:(o=Math.max(i,o),o=Math.min(n,o),0|o)}class zO extends BO{static clampedInt(e,t,i,n){return VO(e,t,i,n)}constructor(e,t,i,n,o,s=void 0){void 0!==s&&(s.type="integer",s.default=i,s.minimum=n,s.maximum=o),super(e,t,i,s),this.minimum=n,this.maximum=o}validate(e){return zO.clampedInt(e,this.defaultValue,this.minimum,this.maximum)}}function UO(e,t,i,n){if(void 0===e)return t;const o=jO.float(e,t);return jO.clamp(o,i,n)}class jO extends BO{static clamp(e,t,i){return ei?i:e}static float(e,t){if("number"==typeof e)return e;if(void 0===e)return t;const i=parseFloat(e);return isNaN(i)?t:i}constructor(e,t,i,n,o,s,r){void 0!==o&&(o.type="number",o.default=i,o.minimum=s,o.maximum=r),super(e,t,i,o),this.validationFn=n,this.minimum=s,this.maximum=r}validate(e){return this.validationFn(jO.float(e,this.defaultValue))}}class KO extends BO{static string(e,t){return"string"!=typeof e?t:e}constructor(e,t,i,n=void 0){void 0!==n&&(n.type="string",n.default=i),super(e,t,i,n)}validate(e){return KO.string(e,this.defaultValue)}}function qO(e,t,i,n){return"string"!=typeof e?t:n&&e in n?n[e]:-1===i.indexOf(e)?t:e}class $O extends BO{constructor(e,t,i,n,o=void 0){void 0!==o&&(o.type="string",o.enum=n,o.default=i),super(e,t,i,o),this._allowedValues=n}validate(e){return qO(e,this.defaultValue,this._allowedValues)}}class GO extends AO{constructor(e,t,i,n,o,s,r=void 0){void 0!==r&&(r.type="string",r.enum=o,r.default=n),super(e,t,i,r),this._allowedValues=o,this._convert=s}validate(e){return"string"!=typeof e||-1===this._allowedValues.indexOf(e)?this.defaultValue:this._convert(e)}}var YO,ZO;function QO(e){switch(e){case"line":return YO.Line;case"block":return YO.Block;case"underline":return YO.Underline;case"line-thin":return YO.LineThin;case"block-outline":return YO.BlockOutline;case"underline-thin":return YO.UnderlineThin}}!function(e){e[e.Line=1]="Line",e[e.Block=2]="Block",e[e.Underline=3]="Underline",e[e.LineThin=4]="LineThin",e[e.BlockOutline=5]="BlockOutline",e[e.UnderlineThin=6]="UnderlineThin"}(YO||(YO={}));class XO extends AO{static{this.OFF='"liga" off, "calt" off'}static{this.ON='"liga" on, "calt" on'}constructor(){super(60,"fontLigatures",XO.OFF,{anyOf:[{type:"boolean",description:C(224,"Enables/Disables font ligatures ('calt' and 'liga' font features). Change this to a string for fine-grained control of the 'font-feature-settings' CSS property.")},{type:"string",description:C(225,"Explicit 'font-feature-settings' CSS property. A boolean can be passed instead if one only needs to turn on/off ligatures.")}],description:C(226,"Configures font ligatures or font features. Can be either a boolean to enable/disable ligatures or a string for the value of the CSS 'font-feature-settings' property."),default:!1})}validate(e){return void 0===e?this.defaultValue:"string"==typeof e?"false"===e||0===e.length?XO.OFF:"true"===e?XO.ON:e:Boolean(e)?XO.ON:XO.OFF}}class JO extends AO{static{this.OFF="normal"}static{this.TRANSLATE="translate"}constructor(){super(63,"fontVariations",JO.OFF,{anyOf:[{type:"boolean",description:C(227,"Enables/Disables the translation from font-weight to font-variation-settings. Change this to a string for fine-grained control of the 'font-variation-settings' CSS property.")},{type:"string",description:C(228,"Explicit 'font-variation-settings' CSS property. A boolean can be passed instead if one only needs to translate font-weight to font-variation-settings.")}],description:C(229,"Configures font variations. Can be either a boolean to enable/disable the translation from font-weight to font-variation-settings or a string for the value of the CSS 'font-variation-settings' property."),default:!1})}validate(e){return void 0===e?this.defaultValue:"string"==typeof e?"false"===e?JO.OFF:"true"===e?JO.TRANSLATE:e:Boolean(e)?JO.TRANSLATE:JO.OFF}compute(e,t,i){return e.fontInfo.fontVariationSettings}}class eP extends AO{static{this.SUGGESTION_VALUES=["normal","bold","100","200","300","400","500","600","700","800","900"]}static{this.MINIMUM_VALUE=1}static{this.MAXIMUM_VALUE=1e3}constructor(){super(62,"fontWeight",pP.fontWeight,{anyOf:[{type:"number",minimum:eP.MINIMUM_VALUE,maximum:eP.MAXIMUM_VALUE,errorMessage:C(231,'Only "normal" and "bold" keywords or numbers between 1 and 1000 are allowed.')},{type:"string",pattern:"^(normal|bold|1000|[1-9][0-9]{0,2})$"},{enum:eP.SUGGESTION_VALUES}],default:pP.fontWeight,description:C(232,'Controls the font weight. Accepts "normal" and "bold" keywords or numbers between 1 and 1000.')})}validate(e){return"normal"===e||"bold"===e?e:String(zO.clampedInt(e,pP.fontWeight,eP.MINIMUM_VALUE,eP.MAXIMUM_VALUE))}}class tP extends FO{constructor(){super(165)}compute(e,t,i){return tP.computeLayout(t,{memory:e.memory,outerWidth:e.outerWidth,outerHeight:e.outerHeight,isDominatedByLongLines:e.isDominatedByLongLines,lineHeight:e.fontInfo.lineHeight,viewLineCount:e.viewLineCount,lineNumbersDigitCount:e.lineNumbersDigitCount,typicalHalfwidthCharacterWidth:e.fontInfo.typicalHalfwidthCharacterWidth,maxDigitWidth:e.fontInfo.maxDigitWidth,pixelRatio:e.pixelRatio,glyphMarginDecorationLaneCount:e.glyphMarginDecorationLaneCount})}static computeContainedMinimapLineCount(e){const t=e.height/e.lineHeight,i=Math.floor(e.paddingTop/e.lineHeight);let n=Math.floor(e.paddingBottom/e.lineHeight);e.scrollBeyondLastLine&&(n=Math.max(n,t-1));const o=(i+e.viewLineCount+n)/(e.pixelRatio*e.height);return{typicalViewportLineCount:t,extraLinesBeforeFirstLine:i,extraLinesBeyondLastLine:n,desiredRatio:o,minimapLineCount:Math.floor(e.viewLineCount/o)}}static _computeMinimapLayout(e,t){const i=e.outerWidth,n=e.outerHeight,o=e.pixelRatio;if(!e.minimap.enabled)return{renderMinimap:0,minimapLeft:0,minimapWidth:0,minimapHeightIsEditorHeight:!1,minimapIsSampling:!1,minimapScale:1,minimapLineHeight:1,minimapCanvasInnerWidth:0,minimapCanvasInnerHeight:Math.floor(o*n),minimapCanvasOuterWidth:0,minimapCanvasOuterHeight:n};const s=t.stableMinimapLayoutInput,r=s&&e.outerHeight===s.outerHeight&&e.lineHeight===s.lineHeight&&e.typicalHalfwidthCharacterWidth===s.typicalHalfwidthCharacterWidth&&e.pixelRatio===s.pixelRatio&&e.scrollBeyondLastLine===s.scrollBeyondLastLine&&e.paddingTop===s.paddingTop&&e.paddingBottom===s.paddingBottom&&e.minimap.enabled===s.minimap.enabled&&e.minimap.side===s.minimap.side&&e.minimap.size===s.minimap.size&&e.minimap.showSlider===s.minimap.showSlider&&e.minimap.renderCharacters===s.minimap.renderCharacters&&e.minimap.maxColumn===s.minimap.maxColumn&&e.minimap.scale===s.minimap.scale&&e.verticalScrollbarWidth===s.verticalScrollbarWidth&&e.isViewportWrapping===s.isViewportWrapping,a=e.lineHeight,l=e.typicalHalfwidthCharacterWidth,d=e.scrollBeyondLastLine,c=e.minimap.renderCharacters;let h=o>=2?Math.round(2*e.minimap.scale):e.minimap.scale;const u=e.minimap.maxColumn,g=e.minimap.size,p=e.minimap.side,m=e.verticalScrollbarWidth,f=e.viewLineCount,_=e.remainingWidth,v=e.isViewportWrapping,b=c?2:3;let w=Math.floor(o*n);const C=w/o;let y=!1,S=!1,x=b*h,k=h/o,L=1;if("fill"===g||"fit"===g){const{typicalViewportLineCount:i,extraLinesBeforeFirstLine:s,extraLinesBeyondLastLine:l,desiredRatio:c,minimapLineCount:u}=tP.computeContainedMinimapLineCount({viewLineCount:f,scrollBeyondLastLine:d,paddingTop:e.paddingTop,paddingBottom:e.paddingBottom,height:n,lineHeight:a,pixelRatio:o});if(f/u>1)y=!0,S=!0,h=1,x=1,k=h/o;else{let n=!1,d=h+1;if("fit"===g){const e=Math.ceil((s+f+l)*x);v&&r&&_<=t.stableFitRemainingWidth?(n=!0,d=t.stableFitMaxMinimapScale):n=e>w}if("fill"===g||n){y=!0;const n=h;x=Math.min(a*o,Math.max(1,Math.floor(1/c))),v&&r&&_<=t.stableFitRemainingWidth&&(d=t.stableFitMaxMinimapScale),h=Math.min(d,Math.max(1,Math.floor(x/b))),h>n&&(L=Math.min(2,h/n)),k=h/o/L,w=Math.ceil(Math.max(i,s+f+l)*x),v?(t.stableMinimapLayoutInput=e,t.stableFitRemainingWidth=_,t.stableFitMaxMinimapScale=h):(t.stableMinimapLayoutInput=null,t.stableFitRemainingWidth=0)}}}const E=Math.floor(u*k),I=Math.min(E,Math.max(0,Math.floor((_-m-2)*k/(l+k)))+8);let D=Math.floor(o*I);const N=D/o;return D=Math.floor(D*L),{renderMinimap:c?1:2,minimapLeft:"left"===p?0:i-I-m,minimapWidth:I,minimapHeightIsEditorHeight:y,minimapIsSampling:S,minimapScale:h,minimapLineHeight:x,minimapCanvasInnerWidth:D,minimapCanvasInnerHeight:w,minimapCanvasOuterWidth:N,minimapCanvasOuterHeight:C}}static computeLayout(e,t){const i=0|t.outerWidth,n=0|t.outerHeight,o=0|t.lineHeight,s=0|t.lineNumbersDigitCount,r=t.typicalHalfwidthCharacterWidth,a=t.maxDigitWidth,l=t.pixelRatio,d=t.viewLineCount,c=e.get(154),h="inherit"===c?e.get(153):c,u="inherit"===h?e.get(149):h,g=e.get(152),p=t.isDominatedByLongLines,m=e.get(66),f=0!==e.get(76).renderType,_=e.get(77),v=e.get(119),b=e.get(96),w=e.get(81),C=e.get(117),y=C.verticalScrollbarSize,S=C.verticalHasArrows,x=C.arrowSize,k=C.horizontalScrollbarSize,L=e.get(52),E="never"!==e.get(126);let I=e.get(74);L&&E&&(I+=16);let D=0;if(f){const e=Math.max(s,_);D=Math.round(e*a)}let N=0;m&&(N=o*t.glyphMarginDecorationLaneCount);let M=0,T=M+N,R=T+D,A=R+I;const O=i-N-D-I;let P=!1,F=!1,B=-1;2===e.get(2)&&"inherit"===h&&p?(P=!0,F=!0):"on"===u||"bounded"===u?F=!0:"wordWrapColumn"===u&&(B=g);const W=tP._computeMinimapLayout({outerWidth:i,outerHeight:n,lineHeight:o,typicalHalfwidthCharacterWidth:r,pixelRatio:l,scrollBeyondLastLine:v,paddingTop:b.top,paddingBottom:b.bottom,minimap:w,verticalScrollbarWidth:y,viewLineCount:d,remainingWidth:O,isViewportWrapping:F},t.memory||new RO);0!==W.renderMinimap&&0===W.minimapLeft&&(M+=W.minimapWidth,T+=W.minimapWidth,R+=W.minimapWidth,A+=W.minimapWidth);const H=O-W.minimapWidth,V=Math.max(1,Math.floor((H-y-2)/r)),z=S?x:0;return F&&(B=Math.max(1,V),"bounded"===u&&(B=Math.min(B,g))),{width:i,height:n,glyphMarginLeft:M,glyphMarginWidth:N,glyphMarginDecorationLaneCount:t.glyphMarginDecorationLaneCount,lineNumbersLeft:T,lineNumbersWidth:D,decorationsLeft:R,decorationsWidth:I,contentLeft:A,contentWidth:H,minimap:W,viewportColumn:V,isWordWrapMinified:P,isViewportWrapping:F,wrappingColumn:B,verticalScrollbarWidth:y,horizontalScrollbarHeight:k,overviewRuler:{top:z,width:y,height:n-2*z,right:0}}}}function iP(e){const t=e.get(112);return"editable"===t?e.get(104):"on"!==t}function nP(e){return!e.get(172)}function oP(e,t){if("string"!=typeof e)return t;switch(e){case"hidden":return 2;case"visible":return 3;default:return 1}}!function(e){e.Off="off",e.OnCode="onCode",e.On="on"}(ZO||(ZO={}));const sP="inUntrustedWorkspace",rP="editor.unicodeHighlight.allowedCharacters",aP="editor.unicodeHighlight.invisibleCharacters",lP="editor.unicodeHighlight.nonBasicASCII",dP="editor.unicodeHighlight.ambiguousCharacters",cP="editor.unicodeHighlight.includeComments",hP="editor.unicodeHighlight.includeStrings",uP="editor.unicodeHighlight.allowedLocales";function gP(e,t,i){const n=i.indexOf(e);return-1===n?t:i[n]}const pP={fontFamily:q?"Menlo, Monaco, 'Courier New', monospace":K?"Consolas, 'Courier New', monospace":"'Droid Sans Mono', 'monospace', monospace",fontWeight:"normal",fontSize:q?12:14,lineHeight:0,letterSpacing:0},mP=[];function fP(e){return mP[e.id]=e,e}const _P={acceptSuggestionOnCommitCharacter:fP(new HO(0,"acceptSuggestionOnCommitCharacter",!0,{markdownDescription:C(429,"Controls whether suggestions should be accepted on commit characters. For example, in JavaScript, the semi-colon (`;`) can be a commit character that accepts a suggestion and types that character.")})),acceptSuggestionOnEnter:fP(new $O(1,"acceptSuggestionOnEnter","on",["on","smart","off"],{markdownEnumDescriptions:["",C(430,"Only accept a suggestion with `Enter` when it makes a textual change."),""],markdownDescription:C(431,"Controls whether suggestions should be accepted on `Enter`, in addition to `Tab`. Helps to avoid ambiguity between inserting new lines or accepting suggestions.")})),accessibilitySupport:fP(new class extends AO{constructor(){super(2,"accessibilitySupport",0,{type:"string",enum:["auto","on","off"],enumDescriptions:[C(198,"Use platform APIs to detect when a Screen Reader is attached."),C(199,"Optimize for usage with a Screen Reader."),C(200,"Assume a screen reader is not attached.")],default:"auto",tags:["accessibility"],description:C(201,"Controls if the UI should run in a mode where it is optimized for screen readers.")})}validate(e){switch(e){case"auto":return 0;case"off":return 1;case"on":return 2}return this.defaultValue}compute(e,t,i){return 0===i?e.accessibilitySupport:i}}),accessibilityPageSize:fP(new zO(3,"accessibilityPageSize",500,1,1073741824,{description:C(432,"Controls the number of lines in the editor that can be read out by a screen reader at once. When we detect a screen reader we automatically set the default to be 500. Warning: this has a performance implication for numbers larger than the default."),tags:["accessibility"]})),allowOverflow:fP(new HO(4,"allowOverflow",!0)),allowVariableLineHeights:fP(new HO(5,"allowVariableLineHeights",!0,{description:C(433,"Controls whether to allow using variable line heights in the editor.")})),allowVariableFonts:fP(new HO(6,"allowVariableFonts",!0,{description:C(434,"Controls whether to allow using variable fonts in the editor.")})),allowVariableFontsInAccessibilityMode:fP(new HO(7,"allowVariableFontsInAccessibilityMode",!1,{description:C(435,"Controls whether to allow using variable fonts in the editor in the accessibility mode."),tags:["accessibility"]})),ariaLabel:fP(new KO(8,"ariaLabel",C(436,"Editor content"))),ariaRequired:fP(new HO(9,"ariaRequired",!1,void 0)),screenReaderAnnounceInlineSuggestion:fP(new HO(12,"screenReaderAnnounceInlineSuggestion",!0,{description:C(437,"Control whether inline suggestions are announced by a screen reader."),tags:["accessibility"]})),autoClosingBrackets:fP(new $O(10,"autoClosingBrackets","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",C(438,"Use language configurations to determine when to autoclose brackets."),C(439,"Autoclose brackets only when the cursor is to the left of whitespace."),""],description:C(440,"Controls whether the editor should automatically close brackets after the user adds an opening bracket.")})),autoClosingComments:fP(new $O(11,"autoClosingComments","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",C(441,"Use language configurations to determine when to autoclose comments."),C(442,"Autoclose comments only when the cursor is to the left of whitespace."),""],description:C(443,"Controls whether the editor should automatically close comments after the user adds an opening comment.")})),autoClosingDelete:fP(new $O(13,"autoClosingDelete","auto",["always","auto","never"],{enumDescriptions:["",C(444,"Remove adjacent closing quotes or brackets only if they were automatically inserted."),""],description:C(445,"Controls whether the editor should remove adjacent closing quotes or brackets when deleting.")})),autoClosingOvertype:fP(new $O(14,"autoClosingOvertype","auto",["always","auto","never"],{enumDescriptions:["",C(446,"Type over closing quotes or brackets only if they were automatically inserted."),""],description:C(447,"Controls whether the editor should type over closing quotes or brackets.")})),autoClosingQuotes:fP(new $O(15,"autoClosingQuotes","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",C(448,"Use language configurations to determine when to autoclose quotes."),C(449,"Autoclose quotes only when the cursor is to the left of whitespace."),""],description:C(450,"Controls whether the editor should automatically close quotes after the user adds an opening quote.")})),autoIndent:fP(new GO(16,"autoIndent",4,"full",["none","keep","brackets","advanced","full"],(function(e){switch(e){case"none":return 0;case"keep":return 1;case"brackets":return 2;case"advanced":return 3;case"full":return 4}}),{enumDescriptions:[C(451,"The editor will not insert indentation automatically."),C(452,"The editor will keep the current line's indentation."),C(453,"The editor will keep the current line's indentation and honor language defined brackets."),C(454,"The editor will keep the current line's indentation, honor language defined brackets and invoke special onEnterRules defined by languages."),C(455,"The editor will keep the current line's indentation, honor language defined brackets, invoke special onEnterRules defined by languages, and honor indentationRules defined by languages.")],description:C(456,"Controls whether the editor should automatically adjust the indentation when users type, paste, move or indent lines.")})),autoIndentOnPaste:fP(new HO(17,"autoIndentOnPaste",!1,{description:C(457,"Controls whether the editor should automatically auto-indent the pasted content.")})),autoIndentOnPasteWithinString:fP(new HO(18,"autoIndentOnPasteWithinString",!0,{description:C(458,"Controls whether the editor should automatically auto-indent the pasted content when pasted within a string. This takes effect when autoIndentOnPaste is true.")})),automaticLayout:fP(new HO(19,"automaticLayout",!1)),autoSurround:fP(new $O(20,"autoSurround","languageDefined",["languageDefined","quotes","brackets","never"],{enumDescriptions:[C(459,"Use language configurations to determine when to automatically surround selections."),C(460,"Surround with quotes but not brackets."),C(461,"Surround with brackets but not quotes."),""],description:C(462,"Controls whether the editor should automatically surround selections when typing quotes or brackets.")})),bracketPairColorization:fP(new class extends AO{constructor(){const e={enabled:Dg.bracketPairColorizationOptions.enabled,independentColorPoolPerBracketType:Dg.bracketPairColorizationOptions.independentColorPoolPerBracketType};super(21,"bracketPairColorization",e,{"editor.bracketPairColorization.enabled":{type:"boolean",default:e.enabled,markdownDescription:C(349,"Controls whether bracket pair colorization is enabled or not. Use {0} to override the bracket highlight colors.","`#workbench.colorCustomizations#`")},"editor.bracketPairColorization.independentColorPoolPerBracketType":{type:"boolean",default:e.independentColorPoolPerBracketType,description:C(350,"Controls whether each bracket type has its own independent color pool.")}})}validate(e){if(!e||"object"!=typeof e)return this.defaultValue;const t=e;return{enabled:WO(t.enabled,this.defaultValue.enabled),independentColorPoolPerBracketType:WO(t.independentColorPoolPerBracketType,this.defaultValue.independentColorPoolPerBracketType)}}}),bracketPairGuides:fP(new class extends AO{constructor(){const e={bracketPairs:!1,bracketPairsHorizontal:"active",highlightActiveBracketPair:!0,indentation:!0,highlightActiveIndentation:!0};super(22,"guides",e,{"editor.guides.bracketPairs":{type:["boolean","string"],enum:[!0,"active",!1],enumDescriptions:[C(351,"Enables bracket pair guides."),C(352,"Enables bracket pair guides only for the active bracket pair."),C(353,"Disables bracket pair guides.")],default:e.bracketPairs,description:C(354,"Controls whether bracket pair guides are enabled or not.")},"editor.guides.bracketPairsHorizontal":{type:["boolean","string"],enum:[!0,"active",!1],enumDescriptions:[C(355,"Enables horizontal guides as addition to vertical bracket pair guides."),C(356,"Enables horizontal guides only for the active bracket pair."),C(357,"Disables horizontal bracket pair guides.")],default:e.bracketPairsHorizontal,description:C(358,"Controls whether horizontal bracket pair guides are enabled or not.")},"editor.guides.highlightActiveBracketPair":{type:"boolean",default:e.highlightActiveBracketPair,description:C(359,"Controls whether the editor should highlight the active bracket pair.")},"editor.guides.indentation":{type:"boolean",default:e.indentation,description:C(360,"Controls whether the editor should render indent guides.")},"editor.guides.highlightActiveIndentation":{type:["boolean","string"],enum:[!0,"always",!1],enumDescriptions:[C(361,"Highlights the active indent guide."),C(362,"Highlights the active indent guide even if bracket guides are highlighted."),C(363,"Do not highlight the active indent guide.")],default:e.highlightActiveIndentation,description:C(364,"Controls whether the editor should highlight the active indent guide.")}})}validate(e){if(!e||"object"!=typeof e)return this.defaultValue;const t=e;return{bracketPairs:gP(t.bracketPairs,this.defaultValue.bracketPairs,[!0,!1,"active"]),bracketPairsHorizontal:gP(t.bracketPairsHorizontal,this.defaultValue.bracketPairsHorizontal,[!0,!1,"active"]),highlightActiveBracketPair:WO(t.highlightActiveBracketPair,this.defaultValue.highlightActiveBracketPair),indentation:WO(t.indentation,this.defaultValue.indentation),highlightActiveIndentation:gP(t.highlightActiveIndentation,this.defaultValue.highlightActiveIndentation,[!0,!1,"always"])}}}),stickyTabStops:fP(new HO(132,"stickyTabStops",!1,{description:C(463,"Emulate selection behavior of tab characters when using spaces for indentation. Selection will stick to tab stops.")})),codeLens:fP(new HO(23,"codeLens",!0,{description:C(464,"Controls whether the editor shows CodeLens.")})),codeLensFontFamily:fP(new KO(24,"codeLensFontFamily","",{description:C(465,"Controls the font family for CodeLens.")})),codeLensFontSize:fP(new zO(25,"codeLensFontSize",0,0,100,{type:"number",default:0,minimum:0,maximum:100,markdownDescription:C(466,"Controls the font size in pixels for CodeLens. When set to 0, 90% of `#editor.fontSize#` is used.")})),colorDecorators:fP(new HO(26,"colorDecorators",!0,{description:C(467,"Controls whether the editor should render the inline color decorators and color picker.")})),colorDecoratorActivatedOn:fP(new $O(168,"colorDecoratorsActivatedOn","clickAndHover",["clickAndHover","hover","click"],{enumDescriptions:[C(468,"Make the color picker appear both on click and hover of the color decorator"),C(469,"Make the color picker appear on hover of the color decorator"),C(470,"Make the color picker appear on click of the color decorator")],description:C(471,"Controls the condition to make a color picker appear from a color decorator.")})),colorDecoratorsLimit:fP(new zO(27,"colorDecoratorsLimit",500,1,1e6,{markdownDescription:C(472,"Controls the max number of color decorators that can be rendered in an editor at once.")})),columnSelection:fP(new HO(28,"columnSelection",!1,{description:C(473,"Enable that the selection with the mouse and keys is doing column selection.")})),comments:fP(new class extends AO{constructor(){const e={insertSpace:!0,ignoreEmptyLines:!0};super(29,"comments",e,{"editor.comments.insertSpace":{type:"boolean",default:e.insertSpace,description:C(202,"Controls whether a space character is inserted when commenting.")},"editor.comments.ignoreEmptyLines":{type:"boolean",default:e.ignoreEmptyLines,description:C(203,"Controls if empty lines should be ignored with toggle, add or remove actions for line comments.")}})}validate(e){if(!e||"object"!=typeof e)return this.defaultValue;const t=e;return{insertSpace:WO(t.insertSpace,this.defaultValue.insertSpace),ignoreEmptyLines:WO(t.ignoreEmptyLines,this.defaultValue.ignoreEmptyLines)}}}),contextmenu:fP(new HO(30,"contextmenu",!0)),copyWithSyntaxHighlighting:fP(new HO(31,"copyWithSyntaxHighlighting",!0,{description:C(474,"Controls whether syntax highlighting should be copied into the clipboard.")})),cursorBlinking:fP(new GO(32,"cursorBlinking",1,"blink",["blink","smooth","phase","expand","solid"],(function(e){switch(e){case"blink":return 1;case"smooth":return 2;case"phase":return 3;case"expand":return 4;case"solid":return 5}}),{description:C(475,"Control the cursor animation style.")})),cursorSmoothCaretAnimation:fP(new $O(33,"cursorSmoothCaretAnimation","off",["off","explicit","on"],{enumDescriptions:[C(476,"Smooth caret animation is disabled."),C(477,"Smooth caret animation is enabled only when the user moves the cursor with an explicit gesture."),C(478,"Smooth caret animation is always enabled.")],description:C(479,"Controls whether the smooth caret animation should be enabled.")})),cursorStyle:fP(new GO(34,"cursorStyle",YO.Line,"line",["line","block","underline","line-thin","block-outline","underline-thin"],QO,{description:C(480,"Controls the cursor style in insert input mode.")})),overtypeCursorStyle:fP(new GO(92,"overtypeCursorStyle",YO.Block,"block",["line","block","underline","line-thin","block-outline","underline-thin"],QO,{description:C(481,"Controls the cursor style in overtype input mode.")})),cursorSurroundingLines:fP(new zO(35,"cursorSurroundingLines",0,0,1073741824,{description:C(482,"Controls the minimal number of visible leading lines (minimum 0) and trailing lines (minimum 1) surrounding the cursor. Known as 'scrollOff' or 'scrollOffset' in some other editors.")})),cursorSurroundingLinesStyle:fP(new $O(36,"cursorSurroundingLinesStyle","default",["default","all"],{enumDescriptions:[C(483,"`cursorSurroundingLines` is enforced only when triggered via the keyboard or API."),C(484,"`cursorSurroundingLines` is enforced always.")],markdownDescription:C(485,"Controls when `#editor.cursorSurroundingLines#` should be enforced.")})),cursorWidth:fP(new zO(37,"cursorWidth",0,0,1073741824,{markdownDescription:C(486,"Controls the width of the cursor when `#editor.cursorStyle#` is set to `line`.")})),cursorHeight:fP(new zO(38,"cursorHeight",0,0,1073741824,{markdownDescription:C(487,"Controls the height of the cursor when `#editor.cursorStyle#` is set to `line`. Cursor's max height depends on line height.")})),disableLayerHinting:fP(new HO(39,"disableLayerHinting",!1)),disableMonospaceOptimizations:fP(new HO(40,"disableMonospaceOptimizations",!1)),domReadOnly:fP(new HO(41,"domReadOnly",!1)),dragAndDrop:fP(new HO(42,"dragAndDrop",!0,{description:C(488,"Controls whether the editor should allow moving selections via drag and drop.")})),emptySelectionClipboard:fP(new class extends HO{constructor(){super(45,"emptySelectionClipboard",!0,{description:C(204,"Controls whether copying without a selection copies the current line.")})}compute(e,t,i){return i&&e.emptySelectionClipboard}}),dropIntoEditor:fP(new class extends AO{constructor(){const e={enabled:!0,showDropSelector:"afterDrop"};super(43,"dropIntoEditor",e,{"editor.dropIntoEditor.enabled":{type:"boolean",default:e.enabled,markdownDescription:C(421,"Controls whether you can drag and drop a file into a text editor by holding down the `Shift` key (instead of opening the file in an editor).")},"editor.dropIntoEditor.showDropSelector":{type:"string",markdownDescription:C(422,"Controls if a widget is shown when dropping files into the editor. This widget lets you control how the file is dropped."),enum:["afterDrop","never"],enumDescriptions:[C(423,"Show the drop selector widget after a file is dropped into the editor."),C(424,"Never show the drop selector widget. Instead the default drop provider is always used.")],default:"afterDrop"}})}validate(e){if(!e||"object"!=typeof e)return this.defaultValue;const t=e;return{enabled:WO(t.enabled,this.defaultValue.enabled),showDropSelector:qO(t.showDropSelector,this.defaultValue.showDropSelector,["afterDrop","never"])}}}),editContext:fP(new HO(44,"editContext",!0,{description:C(489,"Sets whether the EditContext API should be used instead of the text area to power input in the editor."),included:le||he||G})),renderRichScreenReaderContent:fP(new HO(107,"renderRichScreenReaderContent",!1,{markdownDescription:C(490,"Whether to render rich screen reader content when the `#editor.editContext#` setting is enabled.")})),stickyScroll:fP(new class extends AO{constructor(){const e={enabled:!0,maxLineCount:5,defaultModel:"outlineModel",scrollWithEditor:!0};super(131,"stickyScroll",e,{"editor.stickyScroll.enabled":{type:"boolean",default:e.enabled,description:C(259,"Shows the nested current scopes during the scroll at the top of the editor.")},"editor.stickyScroll.maxLineCount":{type:"number",default:e.maxLineCount,minimum:1,maximum:20,description:C(260,"Defines the maximum number of sticky lines to show.")},"editor.stickyScroll.defaultModel":{type:"string",enum:["outlineModel","foldingProviderModel","indentationModel"],default:e.defaultModel,description:C(261,"Defines the model to use for determining which lines to stick. If the outline model does not exist, it will fall back on the folding provider model which falls back on the indentation model. This order is respected in all three cases.")},"editor.stickyScroll.scrollWithEditor":{type:"boolean",default:e.scrollWithEditor,description:C(262,"Enable scrolling of Sticky Scroll with the editor's horizontal scrollbar.")}})}validate(e){if(!e||"object"!=typeof e)return this.defaultValue;const t=e;return{enabled:WO(t.enabled,this.defaultValue.enabled),maxLineCount:zO.clampedInt(t.maxLineCount,this.defaultValue.maxLineCount,1,20),defaultModel:qO(t.defaultModel,this.defaultValue.defaultModel,["outlineModel","foldingProviderModel","indentationModel"]),scrollWithEditor:WO(t.scrollWithEditor,this.defaultValue.scrollWithEditor)}}}),experimentalGpuAcceleration:fP(new $O(46,"experimentalGpuAcceleration","off",["off","on"],{tags:["experimental"],enumDescriptions:[C(491,"Use regular DOM-based rendering."),C(492,"Use GPU acceleration.")],description:C(493,"Controls whether to use the experimental GPU acceleration to render the editor.")})),experimentalWhitespaceRendering:fP(new $O(47,"experimentalWhitespaceRendering","svg",["svg","font","off"],{enumDescriptions:[C(494,"Use a new rendering method with svgs."),C(495,"Use a new rendering method with font characters."),C(496,"Use the stable rendering method.")],description:C(497,"Controls whether whitespace is rendered with a new, experimental method.")})),extraEditorClassName:fP(new KO(48,"extraEditorClassName","")),fastScrollSensitivity:fP(new jO(49,"fastScrollSensitivity",5,(e=>e<=0?5:e),{markdownDescription:C(498,"Scrolling speed multiplier when pressing `Alt`.")})),find:fP(new class extends AO{constructor(){const e={cursorMoveOnType:!0,findOnType:!0,seedSearchStringFromSelection:"always",autoFindInSelection:"never",globalFindClipboard:!1,addExtraSpaceOnTop:!0,loop:!0,history:"workspace",replaceHistory:"workspace"};super(50,"find",e,{"editor.find.cursorMoveOnType":{type:"boolean",default:e.cursorMoveOnType,description:C(205,"Controls whether the cursor should jump to find matches while typing.")},"editor.find.seedSearchStringFromSelection":{type:"string",enum:["never","always","selection"],default:e.seedSearchStringFromSelection,enumDescriptions:[C(206,"Never seed search string from the editor selection."),C(207,"Always seed search string from the editor selection, including word at cursor position."),C(208,"Only seed search string from the editor selection.")],description:C(209,"Controls whether the search string in the Find Widget is seeded from the editor selection.")},"editor.find.autoFindInSelection":{type:"string",enum:["never","always","multiline"],default:e.autoFindInSelection,enumDescriptions:[C(210,"Never turn on Find in Selection automatically (default)."),C(211,"Always turn on Find in Selection automatically."),C(212,"Turn on Find in Selection automatically when multiple lines of content are selected.")],description:C(213,"Controls the condition for turning on Find in Selection automatically.")},"editor.find.globalFindClipboard":{type:"boolean",default:e.globalFindClipboard,description:C(214,"Controls whether the Find Widget should read or modify the shared find clipboard on macOS."),included:q},"editor.find.addExtraSpaceOnTop":{type:"boolean",default:e.addExtraSpaceOnTop,description:C(215,"Controls whether the Find Widget should add extra lines on top of the editor. When true, you can scroll beyond the first line when the Find Widget is visible.")},"editor.find.loop":{type:"boolean",default:e.loop,description:C(216,"Controls whether the search automatically restarts from the beginning (or the end) when no further matches can be found.")},"editor.find.history":{type:"string",enum:["never","workspace"],default:"workspace",enumDescriptions:[C(217,"Do not store search history from the find widget."),C(218,"Store search history across the active workspace")],description:C(219,"Controls how the find widget history should be stored")},"editor.find.replaceHistory":{type:"string",enum:["never","workspace"],default:"workspace",enumDescriptions:[C(220,"Do not store history from the replace widget."),C(221,"Store replace history across the active workspace")],description:C(222,"Controls how the replace widget history should be stored")},"editor.find.findOnType":{type:"boolean",default:e.findOnType,description:C(223,"Controls whether the Find Widget should search as you type.")}})}validate(e){if(!e||"object"!=typeof e)return this.defaultValue;const t=e;return{cursorMoveOnType:WO(t.cursorMoveOnType,this.defaultValue.cursorMoveOnType),findOnType:WO(t.findOnType,this.defaultValue.findOnType),seedSearchStringFromSelection:"boolean"==typeof e.seedSearchStringFromSelection?e.seedSearchStringFromSelection?"always":"never":qO(t.seedSearchStringFromSelection,this.defaultValue.seedSearchStringFromSelection,["never","always","selection"]),autoFindInSelection:"boolean"==typeof e.autoFindInSelection?e.autoFindInSelection?"always":"never":qO(t.autoFindInSelection,this.defaultValue.autoFindInSelection,["never","always","multiline"]),globalFindClipboard:WO(t.globalFindClipboard,this.defaultValue.globalFindClipboard),addExtraSpaceOnTop:WO(t.addExtraSpaceOnTop,this.defaultValue.addExtraSpaceOnTop),loop:WO(t.loop,this.defaultValue.loop),history:qO(t.history,this.defaultValue.history,["never","workspace"]),replaceHistory:qO(t.replaceHistory,this.defaultValue.replaceHistory,["never","workspace"])}}}),fixedOverflowWidgets:fP(new HO(51,"fixedOverflowWidgets",!1)),folding:fP(new HO(52,"folding",!0,{description:C(499,"Controls whether the editor has code folding enabled.")})),foldingStrategy:fP(new $O(53,"foldingStrategy","auto",["auto","indentation"],{enumDescriptions:[C(500,"Use a language-specific folding strategy if available, else the indentation-based one."),C(501,"Use the indentation-based folding strategy.")],description:C(502,"Controls the strategy for computing folding ranges.")})),foldingHighlight:fP(new HO(54,"foldingHighlight",!0,{description:C(503,"Controls whether the editor should highlight folded ranges.")})),foldingImportsByDefault:fP(new HO(55,"foldingImportsByDefault",!1,{description:C(504,"Controls whether the editor automatically collapses import ranges.")})),foldingMaximumRegions:fP(new zO(56,"foldingMaximumRegions",5e3,10,65e3,{description:C(505,"The maximum number of foldable regions. Increasing this value may result in the editor becoming less responsive when the current source has a large number of foldable regions.")})),unfoldOnClickAfterEndOfLine:fP(new HO(57,"unfoldOnClickAfterEndOfLine",!1,{description:C(506,"Controls whether clicking on the empty content after a folded line will unfold the line.")})),fontFamily:fP(new KO(58,"fontFamily",pP.fontFamily,{description:C(507,"Controls the font family.")})),fontInfo:fP(new class extends FO{constructor(){super(59)}compute(e,t,i){return e.fontInfo}}),fontLigatures2:fP(new XO),fontSize:fP(new class extends BO{constructor(){super(61,"fontSize",pP.fontSize,{type:"number",minimum:6,maximum:100,default:pP.fontSize,description:C(230,"Controls the font size in pixels.")})}validate(e){const t=jO.float(e,this.defaultValue);return 0===t?pP.fontSize:jO.clamp(t,6,100)}compute(e,t,i){return e.fontInfo.fontSize}}),fontWeight:fP(new eP),fontVariations:fP(new JO),formatOnPaste:fP(new HO(64,"formatOnPaste",!1,{description:C(508,"Controls whether the editor should automatically format the pasted content. A formatter must be available and the formatter should be able to format a range in a document.")})),formatOnType:fP(new HO(65,"formatOnType",!1,{description:C(509,"Controls whether the editor should automatically format the line after typing.")})),glyphMargin:fP(new HO(66,"glyphMargin",!0,{description:C(510,"Controls whether the editor should render the vertical glyph margin. Glyph margin is mostly used for debugging.")})),gotoLocation:fP(new class extends AO{constructor(){const e={multiple:"peek",multipleDefinitions:"peek",multipleTypeDefinitions:"peek",multipleDeclarations:"peek",multipleImplementations:"peek",multipleReferences:"peek",multipleTests:"peek",alternativeDefinitionCommand:"editor.action.goToReferences",alternativeTypeDefinitionCommand:"editor.action.goToReferences",alternativeDeclarationCommand:"editor.action.goToReferences",alternativeImplementationCommand:"",alternativeReferenceCommand:"",alternativeTestsCommand:""},t={type:"string",enum:["peek","gotoAndPeek","goto"],default:e.multiple,enumDescriptions:[C(233,"Show Peek view of the results (default)"),C(234,"Go to the primary result and show a Peek view"),C(235,"Go to the primary result and enable Peek-less navigation to others")]},i=["","editor.action.referenceSearch.trigger","editor.action.goToReferences","editor.action.peekImplementation","editor.action.goToImplementation","editor.action.peekTypeDefinition","editor.action.goToTypeDefinition","editor.action.peekDeclaration","editor.action.revealDeclaration","editor.action.peekDefinition","editor.action.revealDefinitionAside","editor.action.revealDefinition"];super(67,"gotoLocation",e,{"editor.gotoLocation.multiple":{deprecationMessage:C(236,"This setting is deprecated, please use separate settings like 'editor.editor.gotoLocation.multipleDefinitions' or 'editor.editor.gotoLocation.multipleImplementations' instead.")},"editor.gotoLocation.multipleDefinitions":{description:C(237,"Controls the behavior the 'Go to Definition'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleTypeDefinitions":{description:C(238,"Controls the behavior the 'Go to Type Definition'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleDeclarations":{description:C(239,"Controls the behavior the 'Go to Declaration'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleImplementations":{description:C(240,"Controls the behavior the 'Go to Implementations'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleReferences":{description:C(241,"Controls the behavior the 'Go to References'-command when multiple target locations exist."),...t},"editor.gotoLocation.alternativeDefinitionCommand":{type:"string",default:e.alternativeDefinitionCommand,enum:i,description:C(242,"Alternative command id that is being executed when the result of 'Go to Definition' is the current location.")},"editor.gotoLocation.alternativeTypeDefinitionCommand":{type:"string",default:e.alternativeTypeDefinitionCommand,enum:i,description:C(243,"Alternative command id that is being executed when the result of 'Go to Type Definition' is the current location.")},"editor.gotoLocation.alternativeDeclarationCommand":{type:"string",default:e.alternativeDeclarationCommand,enum:i,description:C(244,"Alternative command id that is being executed when the result of 'Go to Declaration' is the current location.")},"editor.gotoLocation.alternativeImplementationCommand":{type:"string",default:e.alternativeImplementationCommand,enum:i,description:C(245,"Alternative command id that is being executed when the result of 'Go to Implementation' is the current location.")},"editor.gotoLocation.alternativeReferenceCommand":{type:"string",default:e.alternativeReferenceCommand,enum:i,description:C(246,"Alternative command id that is being executed when the result of 'Go to Reference' is the current location.")}})}validate(e){if(!e||"object"!=typeof e)return this.defaultValue;const t=e;return{multiple:qO(t.multiple,this.defaultValue.multiple,["peek","gotoAndPeek","goto"]),multipleDefinitions:t.multipleDefinitions??qO(t.multipleDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleTypeDefinitions:t.multipleTypeDefinitions??qO(t.multipleTypeDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleDeclarations:t.multipleDeclarations??qO(t.multipleDeclarations,"peek",["peek","gotoAndPeek","goto"]),multipleImplementations:t.multipleImplementations??qO(t.multipleImplementations,"peek",["peek","gotoAndPeek","goto"]),multipleReferences:t.multipleReferences??qO(t.multipleReferences,"peek",["peek","gotoAndPeek","goto"]),multipleTests:t.multipleTests??qO(t.multipleTests,"peek",["peek","gotoAndPeek","goto"]),alternativeDefinitionCommand:KO.string(t.alternativeDefinitionCommand,this.defaultValue.alternativeDefinitionCommand),alternativeTypeDefinitionCommand:KO.string(t.alternativeTypeDefinitionCommand,this.defaultValue.alternativeTypeDefinitionCommand),alternativeDeclarationCommand:KO.string(t.alternativeDeclarationCommand,this.defaultValue.alternativeDeclarationCommand),alternativeImplementationCommand:KO.string(t.alternativeImplementationCommand,this.defaultValue.alternativeImplementationCommand),alternativeReferenceCommand:KO.string(t.alternativeReferenceCommand,this.defaultValue.alternativeReferenceCommand),alternativeTestsCommand:KO.string(t.alternativeTestsCommand,this.defaultValue.alternativeTestsCommand)}}}),hideCursorInOverviewRuler:fP(new HO(68,"hideCursorInOverviewRuler",!1,{description:C(511,"Controls whether the cursor should be hidden in the overview ruler.")})),hover:fP(new class extends AO{constructor(){const e={enabled:!0,delay:300,hidingDelay:300,sticky:!0,above:!0};super(69,"hover",e,{"editor.hover.enabled":{type:"boolean",default:e.enabled,description:C(247,"Controls whether the hover is shown.")},"editor.hover.delay":{type:"number",default:e.delay,minimum:0,maximum:1e4,description:C(248,"Controls the delay in milliseconds after which the hover is shown.")},"editor.hover.sticky":{type:"boolean",default:e.sticky,description:C(249,"Controls whether the hover should remain visible when mouse is moved over it.")},"editor.hover.hidingDelay":{type:"integer",minimum:0,default:e.hidingDelay,markdownDescription:C(250,"Controls the delay in milliseconds after which the hover is hidden. Requires `#editor.hover.sticky#` to be enabled.")},"editor.hover.above":{type:"boolean",default:e.above,description:C(251,"Prefer showing hovers above the line, if there's space.")}})}validate(e){if(!e||"object"!=typeof e)return this.defaultValue;const t=e;return{enabled:WO(t.enabled,this.defaultValue.enabled),delay:zO.clampedInt(t.delay,this.defaultValue.delay,0,1e4),sticky:WO(t.sticky,this.defaultValue.sticky),hidingDelay:zO.clampedInt(t.hidingDelay,this.defaultValue.hidingDelay,0,6e5),above:WO(t.above,this.defaultValue.above)}}}),inDiffEditor:fP(new HO(70,"inDiffEditor",!1)),inertialScroll:fP(new HO(158,"inertialScroll",!1,{description:C(512,"Make scrolling inertial - mostly useful with touchpad on linux.")})),letterSpacing:fP(new jO(72,"letterSpacing",pP.letterSpacing,(e=>jO.clamp(e,-5,20)),{description:C(513,"Controls the letter spacing in pixels.")})),lightbulb:fP(new class extends AO{constructor(){const e={enabled:ZO.OnCode};super(73,"lightbulb",e,{"editor.lightbulb.enabled":{type:"string",enum:[ZO.Off,ZO.OnCode,ZO.On],default:e.enabled,enumDescriptions:[C(255,"Disable the code action menu."),C(256,"Show the code action menu when the cursor is on lines with code."),C(257,"Show the code action menu when the cursor is on lines with code or on empty lines.")],description:C(258,"Enables the Code Action lightbulb in the editor.")}})}validate(e){return e&&"object"==typeof e?{enabled:qO(e.enabled,this.defaultValue.enabled,[ZO.Off,ZO.OnCode,ZO.On])}:this.defaultValue}}),lineDecorationsWidth:fP(new class extends AO{constructor(){super(74,"lineDecorationsWidth",10)}validate(e){return"string"==typeof e&&/^\d+(\.\d+)?ch$/.test(e)?-parseFloat(e.substring(0,e.length-2)):zO.clampedInt(e,this.defaultValue,0,1e3)}compute(e,t,i){return i<0?zO.clampedInt(-i*e.fontInfo.typicalHalfwidthCharacterWidth,this.defaultValue,0,1e3):i}}),lineHeight:fP(new class extends jO{constructor(){super(75,"lineHeight",pP.lineHeight,(e=>jO.clamp(e,0,150)),{markdownDescription:C(272,"Controls the line height. \n - Use 0 to automatically compute the line height from the font size.\n - Values between 0 and 8 will be used as a multiplier with the font size.\n - Values greater than or equal to 8 will be used as effective values.")},0,150)}compute(e,t,i){return e.fontInfo.lineHeight}}),lineNumbers:fP(new class extends AO{constructor(){super(76,"lineNumbers",{renderType:1,renderFn:null},{type:"string",enum:["off","on","relative","interval"],enumDescriptions:[C(303,"Line numbers are not rendered."),C(304,"Line numbers are rendered as absolute number."),C(305,"Line numbers are rendered as distance in lines to cursor position."),C(306,"Line numbers are rendered every 10 lines.")],default:"on",description:C(307,"Controls the display of line numbers.")})}validate(e){let t=this.defaultValue.renderType,i=this.defaultValue.renderFn;return void 0!==e&&("function"==typeof e?(t=4,i=e):t="interval"===e?3:"relative"===e?2:"on"===e?1:0),{renderType:t,renderFn:i}}}),lineNumbersMinChars:fP(new zO(77,"lineNumbersMinChars",5,1,300)),linkedEditing:fP(new HO(78,"linkedEditing",!1,{description:C(514,"Controls whether the editor has linked editing enabled. Depending on the language, related symbols such as HTML tags, are updated while editing.")})),links:fP(new HO(79,"links",!0,{description:C(515,"Controls whether the editor should detect links and make them clickable.")})),matchBrackets:fP(new $O(80,"matchBrackets","always",["always","near","never"],{description:C(516,"Highlight matching brackets.")})),minimap:fP(new class extends AO{constructor(){const e={enabled:!0,size:"proportional",side:"right",showSlider:"mouseover",autohide:"none",renderCharacters:!0,maxColumn:120,scale:1,showRegionSectionHeaders:!0,showMarkSectionHeaders:!0,markSectionHeaderRegex:"\\bMARK:\\s*(?-?)\\s*(?