@xano/xanoscript-monaco-editor 0.1.0 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +77 -126
- package/dist/.vite/manifest.json +54 -54
- package/dist/assets/{editor-BivTGeL1.js → editor-4HUBGwOu.js} +1 -1
- package/dist/assets/{extensionHost.worker-bYZXB0kM.js → extensionHost.worker-BEj8h9xB.js} +7 -7
- package/dist/assets/{files.contribution._fileEditorFactory-vS4ZLYi1.js → files.contribution._fileEditorFactory-YNF_vxMj.js} +1 -1
- package/dist/assets/{iconv-lite-umd-DQaTktu2.js → iconv-lite-umd-BCZHOywd.js} +2 -7
- package/dist/assets/{iconv-lite-umd-DYWd8cEa.js → iconv-lite-umd-BGIeO9cR.js} +2 -7
- package/dist/assets/{index-CrbRjSB_.js → index-9GTRLRSC.js} +1 -1
- package/dist/assets/{index-BGwiFEyd.js → index-B48SQPT2.js} +1 -1
- package/dist/assets/{index-VRHnXpb2.js → index-B7W-kS7G.js} +1 -1
- package/dist/assets/{index-51WpeTZl.js → index-CBODr4QR.js} +3 -3
- package/dist/assets/{index-C3pnKX8a.js → index-Cw1WVxjJ.js} +1 -1
- package/dist/assets/{index-BwfWF2CI.js → index-DSexFukl.js} +47 -47
- package/dist/assets/{index-C25FTAfE.js → index-DV2XmbY1.js} +1 -1
- package/dist/assets/{index-B132pG6E.js → index-DoXiLhIy.js} +2 -2
- package/dist/assets/{index-DgK2LcnW.js → index-r-mEMSNw.js} +2 -2
- package/dist/assets/{index-yPQeQvu7.js → index-sQEJqDvC.js} +1 -1
- package/dist/assets/main--VvQJcub.js +4 -0
- package/dist/assets/main-DUUA0eUQ.js +4 -0
- package/dist/assets/main-DWv94O3B.js +1 -0
- package/dist/assets/main-Du3mMy1c.js +1 -0
- package/dist/assets/{tokenClassificationRegistry-DcBtqg2t.js → tokenClassificationRegistry-CZyxOMX0.js} +1 -1
- package/dist/assets/{views-hUfpm9tT.js → views-Bu3Oa5Y-.js} +3 -3
- package/dist/assets/{views-C4cPu3oQ.css → views-qXWInm-E.css} +1 -1
- package/dist/assets/workbenchThemeService.service-CXlQNmVU.js +1 -0
- package/dist/assets/{worker-BIMDXoFp.js → worker-BiA-ZZ0u.js} +2 -2
- package/dist/index.html +1 -1
- package/dist/logic-assistant-script.js +22301 -16325
- package/dist/logic-assistant-script.js.map +4 -4
- package/dist/worker.js +20541 -14435
- package/dist/worker.js.map +4 -4
- package/package.json +3 -1
- package/dist/assets/main-D6ceXGB_.js +0 -4
- package/dist/assets/main-DNugpDp4.js +0 -4
- package/dist/assets/main-FP17jmvp.js +0 -1
- package/dist/assets/main-b5eBH2vx.js +0 -1
- package/dist/assets/workbenchThemeService.service-qBFVnuYD.js +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{aq as O,ar as _e,N as z,as as nt,at as ot,au as wn,av as xn,aw as vn,ax as Dn,ay as An,az as On,aA as Mn,aB as Pn,aC as Ln,aD as Hn,aE as Fn,aF as Nn,aG as $n,aH as oe,J as Ne,aI as it,aJ as ge,aK as ut,aL as k,aM as H,aN as Bn,aO as ft,ah as j,aP as on,aQ as jn,aR as mt,q as r,aS as gt,aT as pt,x as ne,aU as Ge,aV as Tt,aW as st,aX as Ue,aY as rt,aZ as sn,a_ as St,a$ as Ct,b0 as y,b1 as ee,b2 as Pe,b3 as ue,b4 as Dt,b5 as At,b6 as Gn,b7 as Un,b8 as Kn,b9 as It,E as we,K as Ot,p as yt,ba as zn,ak as rn,D as an,bb as Wn,bc as se,bd as K,be as qn,G as cn,bf as Vn,bg as Mt,bh as at,bi as Jn,bj as Yn,bk as Qn,bl as Ye,bm as Pt,z as Ke,u as ln,bn as Xn,bo as Zn,bp as eo,bq as Lt,d as Et,br as to,bs as no,bt as oo,bu as bt,bv as io,f as kt,g as w,bw as so,bx as ro,h as hn,m as ao,by as co,bz as lo,I as Rt,bA as ho,O as dn,bB as uo,bC as fo,i as mo,bD as go,bE as ct,bF as _t,bG as po,bH as un,Q as To,bI as wt,bJ as So,W as Ae,bK as pe,bL as Te,bM as Co,bN as Io,bO as Se,aj as Ce,bP as Ht,$ as Ft,bQ as fn,bR as Nt,bS as $t,bT as yo,bU as Eo,bV as Bt,bW as bo,j as ko,bX as Ro,bY as xt,bZ as Oe,b_ as _o,a3 as wo,b$ as xo,P as vo,al as Do,c0 as Ao}from"./index-BwfWF2CI.js";import{g as Oo,T as ze,p as jt,S as Gt,a as mn}from"./tokenClassificationRegistry-DcBtqg2t.js";import{I as le}from"./workbenchThemeService.service-qBFVnuYD.js";const Mo="[",Po="]",Le="*",Lo=/\[(.+?)\]/g;var C;(function(i){i.COLOR_THEME="workbench.colorTheme",i.FILE_ICON_THEME="workbench.iconTheme",i.PRODUCT_ICON_THEME="workbench.productIconTheme",i.COLOR_CUSTOMIZATIONS="workbench.colorCustomizations",i.TOKEN_COLOR_CUSTOMIZATIONS="editor.tokenColorCustomizations",i.SEMANTIC_TOKEN_COLOR_CUSTOMIZATIONS="editor.semanticTokenColorCustomizations",i.PREFERRED_DARK_THEME="workbench.preferredDarkColorTheme",i.PREFERRED_LIGHT_THEME="workbench.preferredLightColorTheme",i.PREFERRED_HC_DARK_THEME="workbench.preferredHighContrastColorTheme",i.PREFERRED_HC_LIGHT_THEME="workbench.preferredHighContrastLightColorTheme",i.DETECT_COLOR_SCHEME="window.autoDetectColorScheme",i.DETECT_HC="window.autoDetectHighContrast",i.SYSTEM_COLOR_THEME="window.systemColorTheme"})(C||(C={}));var P;(function(i){i.COLOR_THEME_DARK="Default Dark Modern",i.COLOR_THEME_LIGHT="Default Light Modern",i.COLOR_THEME_HC_DARK="Default High Contrast",i.COLOR_THEME_HC_LIGHT="Default High Contrast Light",i.COLOR_THEME_DARK_OLD="Default Dark+",i.COLOR_THEME_LIGHT_OLD="Default Light+",i.FILE_ICON_THEME="vs-seti",i.PRODUCT_ICON_THEME="Default"})(P||(P={}));const Ho={"activityBar.activeBorder":"#0078d4","activityBar.background":"#181818","activityBar.border":"#2b2b2b","activityBar.foreground":"#d7d7d7","activityBar.inactiveForeground":"#868686","editorGroup.border":"#ffffff17","editorGroupHeader.tabsBackground":"#181818","editorGroupHeader.tabsBorder":"#2b2b2b","statusBar.background":"#181818","statusBar.border":"#2b2b2b","statusBar.foreground":"#cccccc","statusBar.noFolderBackground":"#1f1f1f","tab.activeBackground":"#1f1f1f","tab.activeBorder":"#1f1f1f","tab.activeBorderTop":"#0078d4","tab.activeForeground":"#ffffff","tab.border":"#2b2b2b","textLink.foreground":"#4daafc","titleBar.activeBackground":"#181818","titleBar.activeForeground":"#cccccc","titleBar.border":"#2b2b2b","titleBar.inactiveBackground":"#1f1f1f","titleBar.inactiveForeground":"#9d9d9d","welcomePage.tileBackground":"#2b2b2b"},Fo={"activityBar.activeBorder":"#005FB8","activityBar.background":"#f8f8f8","activityBar.border":"#e5e5e5","activityBar.foreground":"#1f1f1f","activityBar.inactiveForeground":"#616161","editorGroup.border":"#e5e5e5","editorGroupHeader.tabsBackground":"#f8f8f8","editorGroupHeader.tabsBorder":"#e5e5e5","statusBar.background":"#f8f8f8","statusBar.border":"#e5e5e5","statusBar.foreground":"#3b3b3b","statusBar.noFolderBackground":"#f8f8f8","tab.activeBackground":"#ffffff","tab.activeBorder":"#f8f8f8","tab.activeBorderTop":"#005fb8","tab.activeForeground":"#3b3b3b","tab.border":"#e5e5e5","textLink.foreground":"#005fb8","titleBar.activeBackground":"#f8f8f8","titleBar.activeForeground":"#1e1e1e","titleBar.border":"#E5E5E5","titleBar.inactiveBackground":"#f8f8f8","titleBar.inactiveForeground":"#8b949e","welcomePage.tileBackground":"#f3f3f3"};var G;(function(i){function e(n){return n&&{_extensionId:n.extensionId,_extensionIsBuiltin:n.extensionIsBuiltin,_extensionName:n.extensionName,_extensionPublisher:n.extensionPublisher}}i.toJSONObject=e;function t(n){if(n&&O(n._extensionId)&&_e(n._extensionIsBuiltin)&&O(n._extensionName)&&O(n._extensionPublisher))return{extensionId:n._extensionId,extensionIsBuiltin:n._extensionIsBuiltin,extensionName:n._extensionName,extensionPublisher:n._extensionPublisher}}i.fromJSONObject=t;function o(n,s,a=!1){return{extensionPublisher:n,extensionId:`${n}.${s}`,extensionName:s,extensionIsBuiltin:a}}i.fromName=o})(G||(G={}));const lt={};function M(i,e){let t=lt[i];t||(lt[i]=t=[]),t.push(e)}function gn(i,e){for(const t of i)if(e.textMateRules.push(t),!t.scope){const o=t.settings;if(!o)t.settings={};else for(const n in o){const s=n,a=lt[s];if(a){const l=o[s];if(typeof l=="string"){const c=z.fromHex(l);for(const h of a)e.colors[h]=c}}s!=="foreground"&&s!=="background"&&s!=="fontStyle"&&delete o[s]}}}M("background",nt);M("foreground",ot);M("selection",wn);M("inactiveSelection",xn);M("selectionHighlightColor",vn);M("findMatchHighlight",Dn);M("currentFindMatchHighlight",An);M("hoverHighlight",On);M("wordHighlight","editor.wordHighlightBackground");M("wordHighlightStrong","editor.wordHighlightStrongBackground");M("findRangeHighlight",Mn);M("findMatchHighlight","peekViewResult.matchHighlightBackground");M("referenceHighlight","peekViewEditor.matchHighlightBackground");M("lineHighlight",Pn);M("rangeHighlight",Ln);M("caret",Hn);M("invisibles",Fn);M("guide",Nn);M("activeGuide",$n);const No=["ansiBlack","ansiRed","ansiGreen","ansiYellow","ansiBlue","ansiMagenta","ansiCyan","ansiWhite","ansiBrightBlack","ansiBrightRed","ansiBrightGreen","ansiBrightYellow","ansiBrightBlue","ansiBrightMagenta","ansiBrightCyan","ansiBrightWhite"];for(const i of No)M(i,"terminal."+i);var N;(function(i){i[i.BOM=65279]="BOM",i[i.SPACE=32]="SPACE",i[i.TAB=9]="TAB",i[i.CARRIAGE_RETURN=13]="CARRIAGE_RETURN",i[i.LINE_FEED=10]="LINE_FEED",i[i.SLASH=47]="SLASH",i[i.LESS_THAN=60]="LESS_THAN",i[i.QUESTION_MARK=63]="QUESTION_MARK",i[i.EXCLAMATION_MARK=33]="EXCLAMATION_MARK"})(N||(N={}));var b;(function(i){i[i.ROOT_STATE=0]="ROOT_STATE",i[i.DICT_STATE=1]="DICT_STATE",i[i.ARR_STATE=2]="ARR_STATE"})(b||(b={}));function $o(i){return Bo(i)}function Bo(i,e,t){const o=i.length;let n=0;o>0&&i.charCodeAt(0)===N.BOM&&(n=1);function s(g){n=n+g}function a(g){n=g}function l(){for(;n<o;){const g=i.charCodeAt(n);if(g!==N.SPACE&&g!==N.TAB&&g!==N.CARRIAGE_RETURN&&g!==N.LINE_FEED)break;s(1)}}function c(g){return i.substr(n,g.length)===g?(s(g.length),!0):!1}function h(g){const v=i.indexOf(g,n);a(v!==-1?v+g.length:o)}function d(g){const v=i.indexOf(g,n);if(v!==-1){const D=i.substring(n,v);return a(v+g.length),D}else{const D=i.substr(n);return a(o),D}}let f=b.ROOT_STATE,u=null;const m=[],I=[];let p=null;function T(g,v){m.push(f),I.push(u),f=g,u=v}function R(){if(m.length===0)return S("illegal state stack");f=m.pop(),u=I.pop()}function S(g){throw new Error("Near offset "+n+": "+g+" ~~~"+i.substr(n,50)+"~~~")}const E={enterDict:function(){if(p===null)return S("missing <key>");const g={};u[p]=g,p=null,T(b.DICT_STATE,g)},enterArray:function(){if(p===null)return S("missing <key>");const g=[];u[p]=g,p=null,T(b.ARR_STATE,g)}},A={enterDict:function(){const g={};u.push(g),T(b.DICT_STATE,g)},enterArray:function(){const g=[];u.push(g),T(b.ARR_STATE,g)}};function U(){f===b.DICT_STATE?E.enterDict():f===b.ARR_STATE?A.enterDict():(u={},T(b.DICT_STATE,u))}function F(){if(f===b.DICT_STATE)R();else return f===b.ARR_STATE,S("unexpected </dict>")}function ye(){f===b.DICT_STATE?E.enterArray():f===b.ARR_STATE?A.enterArray():(u=[],T(b.ARR_STATE,u))}function de(){if(f===b.DICT_STATE)return S("unexpected </array>");if(f===b.ARR_STATE)R();else return S("unexpected </array>")}function Ee(g){if(f===b.DICT_STATE){if(p!==null)return S("too many <key>");p=g}else return f===b.ARR_STATE,S("unexpected <key>")}function be(g){if(f===b.DICT_STATE){if(p===null)return S("missing <key>");u[p]=g,p=null}else f===b.ARR_STATE?u.push(g):u=g}function J(g){if(isNaN(g))return S("cannot parse float");if(f===b.DICT_STATE){if(p===null)return S("missing <key>");u[p]=g,p=null}else f===b.ARR_STATE?u.push(g):u=g}function ke(g){if(isNaN(g))return S("cannot parse integer");if(f===b.DICT_STATE){if(p===null)return S("missing <key>");u[p]=g,p=null}else f===b.ARR_STATE?u.push(g):u=g}function Re(g){if(f===b.DICT_STATE){if(p===null)return S("missing <key>");u[p]=g,p=null}else f===b.ARR_STATE?u.push(g):u=g}function x(g){if(f===b.DICT_STATE){if(p===null)return S("missing <key>");u[p]=g,p=null}else f===b.ARR_STATE?u.push(g):u=g}function _(g){if(f===b.DICT_STATE){if(p===null)return S("missing <key>");u[p]=g,p=null}else f===b.ARR_STATE?u.push(g):u=g}function Y(g){return g.replace(/&#([0-9]+);/g,function(v,D){return String.fromCodePoint(parseInt(D,10))}).replace(/&#x([0-9a-f]+);/g,function(v,D){return String.fromCodePoint(parseInt(D,16))}).replace(/&|<|>|"|'/g,function(v){switch(v){case"&":return"&";case"<":return"<";case">":return">";case""":return'"';case"'":return"'"}return v})}function Q(){let g=d(">"),v=!1;return g.charCodeAt(g.length-1)===N.SLASH&&(v=!0,g=g.substring(0,g.length-1)),{name:g.trim(),isClosed:v}}function L(g){if(g.isClosed)return"";const v=d("</");return h(">"),Y(v)}for(;n<o&&(l(),!(n>=o));){const g=i.charCodeAt(n);if(s(1),g!==N.LESS_THAN)return S("expected <");if(n>=o)return S("unexpected end of input");const v=i.charCodeAt(n);if(v===N.QUESTION_MARK){s(1),h("?>");continue}if(v===N.EXCLAMATION_MARK){if(s(1),c("--")){h("-->");continue}h(">");continue}if(v===N.SLASH){if(s(1),l(),c("plist")){h(">");continue}if(c("dict")){h(">"),F();continue}if(c("array")){h(">"),de();continue}return S("unexpected closed tag")}const D=Q();switch(D.name){case"dict":U(),D.isClosed&&F();continue;case"array":ye(),D.isClosed&&de();continue;case"key":Ee(L(D));continue;case"string":be(L(D));continue;case"real":J(parseFloat(L(D)));continue;case"integer":ke(parseInt(L(D),10));continue;case"date":Re(new Date(L(D)));continue;case"data":x(L(D));continue;case"true":L(D),_(!0);continue;case"false":L(D),_(!1);continue}if(!/^plist/.test(D.name))return S("unexpected opened tag "+D.name)}return u}function Ut(i,e,t){const o=jo(i);let n=o.next();for(;n!==null;){let c=0;if(n.length===2&&n.charAt(1)===":"){switch(n.charAt(0)){case"R":c=1;break;case"L":c=-1;break;default:console.log(`Unknown priority ${n} in scope selector`)}n=o.next()}const h=a();if(h&&t.push({matcher:h,priority:c}),n!==",")break;n=o.next()}function s(){if(n==="-"){n=o.next();const c=s();return c?h=>c(h)<0?0:-1:null}if(n==="("){n=o.next();const c=l();return n===")"&&(n=o.next()),c}if(Kt(n)){const c=[];do c.push(n),n=o.next();while(Kt(n));return h=>e(c,h)}return null}function a(){let c=s();if(!c)return null;const h=[];for(;c;)h.push(c),c=s();return d=>{let f=h[0](d);for(let u=1;f>=0&&u<h.length;u++)f=Math.min(f,h[u](d));return f}}function l(){let c=a();if(!c)return null;const h=[];for(;c&&(h.push(c),n==="|"||n===",");){do n=o.next();while(n==="|"||n===",");c=a()}return d=>{let f=h[0](d);for(let u=1;u<h.length;u++)f=Math.max(f,h[u](d));return f}}}function Kt(i){return!!i&&!!i.match(/[\w\.:]+/)}function jo(i){const e=/([LR]:|[\w\.:][\w\.:\-]*|[\,\|\-\(\)])/g;let t=e.exec(i);return{next:()=>{if(!t)return null;const o=t[0];return t=e.exec(i),o}}}const Go=oe.as(on.ColorContribution),$e=Oo(),zt={comments:["comment","punctuation.definition.comment"],strings:["string","meta.embedded.assembly"],keywords:["keyword - keyword.operator","keyword.control","storage","storage.type"],numbers:["constant.numeric"],types:["entity.name.type","entity.name.class","support.type","support.class"],functions:["entity.name.function","support.function"],variables:["variable","entity.name.variable"]},q=class q{constructor(e,t,o){this.themeTokenColors=[],this.customTokenColors=[],this.colorMap={},this.customColorMap={},this.semanticTokenRules=[],this.customSemanticTokenRules=[],this.textMateThemingRules=void 0,this.tokenColorIndex=void 0,this.id=e,this.label=t,this.settingsId=o,this.isLoaded=!1}get semanticHighlighting(){return this.customSemanticHighlighting!==void 0?this.customSemanticHighlighting:this.customSemanticHighlightingDeprecated!==void 0?this.customSemanticHighlightingDeprecated:!!this.themeSemanticHighlighting}get tokenColors(){if(!this.textMateThemingRules){let s=function(a){a.scope&&a.settings&&(a.scope==="token.info-token"&&(n=!0),e.push({scope:a.scope,settings:{foreground:fe(a.settings.foreground),background:fe(a.settings.background),fontStyle:a.settings.fontStyle}}))};const e=[],t=this.getColor(ot)||this.getDefault(ot),o=this.getColor(nt)||this.getDefault(nt);e.push({settings:{foreground:fe(t),background:fe(o)}});let n=!1;this.themeTokenColors.forEach(s),this.customTokenColors.forEach(s),n||Ko[this.type].forEach(s),this.textMateThemingRules=e}return this.textMateThemingRules}getColor(e,t){const o=this.customColorMap[e];if(o instanceof z)return o;if(o===void 0){const n=this.colorMap[e];if(n!==void 0)return n}if(t!==!1)return this.getDefault(e)}getTokenStyle(e,t,o,n=!0,s={}){const a={foreground:void 0,bold:void 0,underline:void 0,strikethrough:void 0,italic:void 0},l={foreground:-1,bold:-1,underline:-1,strikethrough:-1,italic:-1};function c(f,u,m){u.foreground&&l.foreground<=f&&(l.foreground=f,a.foreground=u.foreground,s.foreground=m);for(const I of["bold","underline","strikethrough","italic"]){const p=I,T=u[p];T!==void 0&&l[p]<=f&&(l[p]=f,a[p]=T,s[p]=m)}}function h(f){const u=f.selector.match(e,t,o);u>=0&&c(u,f.style,f)}this.semanticTokenRules.forEach(h),this.customSemanticTokenRules.forEach(h);let d=!1;for(const f in l){const u=f;l[u]===-1?d=!0:l[u]=Number.MAX_VALUE}if(d)for(const f of $e.getTokenStylingDefaultRules()){const u=f.selector.match(e,t,o);if(u>=0){let m;if(f.defaults.scopesToProbe&&(m=this.resolveScopes(f.defaults.scopesToProbe),m&&c(u,m,f.defaults.scopesToProbe)),!m&&n!==!1){const I=f.defaults[this.type];m=this.resolveTokenStyleValue(I),m&&c(u,m,I)}}}return ze.fromData(a)}resolveTokenStyleValue(e){if(e!==void 0){if(typeof e=="string"){const{type:t,modifiers:o,language:n}=jt(e,"");return this.getTokenStyle(t,o,n)}else if(typeof e=="object")return e}}getTokenColorIndex(){if(!this.tokenColorIndex){const e=new qo;this.tokenColors.forEach(t=>{e.add(t.settings.foreground),e.add(t.settings.background)}),this.semanticTokenRules.forEach(t=>e.add(t.style.foreground)),$e.getTokenStylingDefaultRules().forEach(t=>{const o=t.defaults[this.type];o&&typeof o=="object"&&e.add(o.foreground)}),this.customSemanticTokenRules.forEach(t=>e.add(t.style.foreground)),this.tokenColorIndex=e}return this.tokenColorIndex}get tokenColorMap(){return this.getTokenColorIndex().asArray()}getTokenStyleMetadata(e,t,o,n=!0,s={}){const{type:a,language:l}=jt(e,o),c=this.getTokenStyle(a,t,l,n,s);if(c)return{foreground:this.getTokenColorIndex().get(c.foreground),bold:c.bold,underline:c.underline,strikethrough:c.strikethrough,italic:c.italic}}getTokenStylingRuleScope(e){if(this.customSemanticTokenRules.indexOf(e)!==-1)return"setting";if(this.semanticTokenRules.indexOf(e)!==-1)return"theme"}getDefault(e){return Go.resolveDefaultColor(e,this)}resolveScopes(e,t){this.themeTokenScopeMatchers||(this.themeTokenScopeMatchers=this.themeTokenColors.map(Jt)),this.customTokenScopeMatchers||(this.customTokenScopeMatchers=this.customTokenColors.map(Jt));for(const o of e){let d=function(f,u){for(let m=0;m<f.length;m++){const I=f[m](o);if(I>=0){const p=u[m],T=u[m].settings;I>=a&&T.foreground&&(n=T.foreground,a=I,h=p),I>=l&&O(T.fontStyle)&&(s=T.fontStyle,l=I,c=p)}}},n,s,a=-1,l=-1,c,h;if(d(this.themeTokenScopeMatchers,this.themeTokenColors),d(this.customTokenScopeMatchers,this.customTokenColors),n!==void 0||s!==void 0)return t&&(t.foreground=h,t.bold=t.italic=t.underline=t.strikethrough=c,t.scope=o),ze.fromSettings(n,s)}}defines(e){const t=this.customColorMap[e];return t instanceof z?!0:t===void 0&&this.colorMap.hasOwnProperty(e)}setCustomizations(e){this.setCustomColors(e.colorCustomizations),this.setCustomTokenColors(e.tokenColorCustomizations),this.setCustomSemanticTokenColors(e.semanticTokenColorCustomizations)}setCustomColors(e){this.customColorMap={},this.overwriteCustomColors(e);const t=this.getThemeSpecificColors(e);Ne(t)&&this.overwriteCustomColors(t),this.tokenColorIndex=void 0,this.textMateThemingRules=void 0,this.customTokenScopeMatchers=void 0}overwriteCustomColors(e){for(const t in e){const o=e[t];o===it?this.customColorMap[t]=it:typeof o=="string"&&(this.customColorMap[t]=z.fromHex(o))}}setCustomTokenColors(e){this.customTokenColors=[],this.customSemanticHighlightingDeprecated=void 0,this.addCustomTokenColors(e);const t=this.getThemeSpecificColors(e);Ne(t)&&this.addCustomTokenColors(t),this.tokenColorIndex=void 0,this.textMateThemingRules=void 0,this.customTokenScopeMatchers=void 0}setCustomSemanticTokenColors(e){if(this.customSemanticTokenRules=[],this.customSemanticHighlighting=void 0,e){this.customSemanticHighlighting=e.enabled,e.rules&&this.readSemanticTokenRules(e.rules);const t=this.getThemeSpecificColors(e);Ne(t)&&(t.enabled!==void 0&&(this.customSemanticHighlighting=t.enabled),t.rules&&this.readSemanticTokenRules(t.rules))}this.tokenColorIndex=void 0,this.textMateThemingRules=void 0}isThemeScope(e){return e.charAt(0)===Mo&&e.charAt(e.length-1)===Po}isThemeScopeMatch(e){const t=e.charAt(0),o=e.charAt(e.length-1),n=e.slice(0,-1),s=e.slice(1,-1),a=e.slice(1);return e===this.settingsId||this.settingsId.includes(s)&&t===Le&&o===Le||this.settingsId.startsWith(n)&&o===Le||this.settingsId.endsWith(a)&&t===Le}getThemeSpecificColors(e){let t;for(const o in e){const n=e[o];if(this.isThemeScope(o)&&n instanceof Object&&!Array.isArray(n)){const s=o.match(Lo)||[];for(const a of s){const l=a.substring(1,a.length-1);if(this.isThemeScopeMatch(l)){t||(t={});const c=n;for(const h in c){const d=t[h],f=c[h];Array.isArray(d)&&Array.isArray(f)?t[h]=d.concat(f):f&&(t[h]=f)}}}}}return t}readSemanticTokenRules(e){for(const t in e)if(!this.isThemeScope(t))try{const o=Tn(t,e[t]);o&&this.customSemanticTokenRules.push(o)}catch{}}addCustomTokenColors(e){for(const t in zt){const o=t,n=e[o];if(n){const s=typeof n=="string"?{foreground:n}:n,a=zt[o];for(const l of a)this.customTokenColors.push({scope:l,settings:s})}}if(Array.isArray(e.textMateRules))for(const t of e.textMateRules)t.scope&&t.settings&&this.customTokenColors.push(t);e.semanticHighlighting!==void 0&&(this.customSemanticHighlightingDeprecated=e.semanticHighlighting)}ensureLoaded(e){return this.isLoaded?Promise.resolve(void 0):this.load(e)}reload(e){return this.load(e)}load(e){if(!this.location)return Promise.resolve(void 0);this.themeTokenColors=[],this.clearCaches();const t={colors:{},textMateRules:[],semanticTokenRules:[],semanticHighlighting:!1};return pn(e,this.location,t).then(o=>{this.isLoaded=!0,this.semanticTokenRules=t.semanticTokenRules,this.colorMap=t.colors,this.themeTokenColors=t.textMateRules,this.themeSemanticHighlighting=t.semanticHighlighting})}clearCaches(){this.tokenColorIndex=void 0,this.textMateThemingRules=void 0,this.themeTokenScopeMatchers=void 0,this.customTokenScopeMatchers=void 0}toStorage(e){const t={};for(const n in this.colorMap)t[n]=z.Format.CSS.formatHexA(this.colorMap[n],!0);const o=JSON.stringify({id:this.id,label:this.label,settingsId:this.settingsId,themeTokenColors:this.themeTokenColors.map(n=>({settings:n.settings,scope:n.scope})),semanticTokenRules:this.semanticTokenRules.map(Gt.toJSONObject),extensionData:G.toJSONObject(this.extensionData),themeSemanticHighlighting:this.themeSemanticHighlighting,colorMap:t,watch:this.watch});e.store(q.STORAGE_KEY,o,ge.PROFILE,ut.USER)}get themeTypeSelector(){return this.classNames[0]}get classNames(){return this.id.split(" ")}get type(){switch(this.themeTypeSelector){case H.VS:return k.LIGHT;case H.HC_BLACK:return k.HIGH_CONTRAST_DARK;case H.HC_LIGHT:return k.HIGH_CONTRAST_LIGHT;default:return k.DARK}}static createUnloadedThemeForThemeType(e,t){return q.createUnloadedTheme(Bn(e),t)}static createUnloadedTheme(e,t){const o=new q(e,"","__"+e);if(o.isLoaded=!1,o.themeTokenColors=[],o.watch=!1,t)for(const n in t)o.colorMap[n]=z.fromHex(t[n]);return o}static createLoadedEmptyTheme(e,t){const o=new q(e,"",t);return o.isLoaded=!0,o.themeTokenColors=[],o.watch=!1,o}static fromStorageData(e){const t=e.get(q.STORAGE_KEY,ge.PROFILE);if(t)try{const o=JSON.parse(t),n=new q("","","");for(const s in o)switch(s){case"colorMap":{const a=o[s];for(const l in a)n.colorMap[l]=z.fromHex(a[l]);break}case"themeTokenColors":case"id":case"label":case"settingsId":case"watch":case"themeSemanticHighlighting":n[s]=o[s];break;case"semanticTokenRules":{const a=o[s];if(Array.isArray(a))for(const l of a){const c=Gt.fromJSONObject($e,l);c&&n.semanticTokenRules.push(c)}break}case"location":break;case"extensionData":n.extensionData=G.fromJSONObject(o.extensionData);break}return!n.id||!n.settingsId?void 0:n}catch{return}}static fromExtensionTheme(e,t,o){const n=e.uiTheme||"vs-dark",s=Uo(o.extensionId,e.path),a=`${n} ${s}`,l=e.label||ft(e.path),c=e.id||l,h=new q(a,l,c);return h.description=e.description,h.watch=e._watch===!0,h.location=t,h.extensionData=o,h.isLoaded=!1,h}};q.STORAGE_KEY="colorThemeData";let te=q;function Uo(i,e){e.startsWith("./")&&(e=e.substr(2));let t=`${i}-${e}`;return t=t.replace(/[^_a-zA-Z0-9-]/g,"-"),t.charAt(0).match(/[0-9-]/)&&(t="_"+t),t}async function pn(i,e,t){if(jn(e)===".json"){const o=await i.readExtensionResource(e),n=[],s=mt(o,n);if(n.length>0)return Promise.reject(new Error(r(12928,"Problems parsing JSON theme file: {0}",n.map(h=>gt(h.error)).join(", "))));if(pt(s)!=="object")return Promise.reject(new Error(r(12929,"Invalid format for JSON theme file: Object expected.")));if(s.include&&await pn(i,ne(Ge(e),s.include),t),Array.isArray(s.settings))return gn(s.settings,t),null;t.semanticHighlighting=t.semanticHighlighting||s.semanticHighlighting;const a=s.colors;if(a){if(typeof a!="object")return Promise.reject(new Error(r(12930,"Problem parsing color theme file: {0}. Property 'colors' is not of type 'object'.",e.toString())));for(const h in a){const d=a[h];d===it?delete t.colors[h]:typeof d=="string"&&(t.colors[h]=z.fromHex(a[h]))}}const l=s.tokenColors;if(l)if(Array.isArray(l))t.textMateRules.push(...l);else if(typeof l=="string")await Wt(i,ne(Ge(e),l),t);else return Promise.reject(new Error(r(12931,"Problem parsing color theme file: {0}. Property 'tokenColors' should be either an array specifying colors or a path to a TextMate theme file",e.toString())));const c=s.semanticTokenColors;if(c&&typeof c=="object")for(const h in c)try{const d=Tn(h,c[h]);d&&t.semanticTokenRules.push(d)}catch{return Promise.reject(new Error(r(12932,"Problem parsing color theme file: {0}. Property 'semanticTokenColors' contains a invalid selector",e.toString())))}}else return Wt(i,e,t)}function Wt(i,e,t){return i.readExtensionResource(e).then(o=>{try{const s=$o(o).settings;return Array.isArray(s)?(gn(s,t),Promise.resolve(null)):Promise.reject(new Error(r(12933,"Problem parsing tmTheme file: {0}. 'settings' is not array.")))}catch(n){return Promise.reject(new Error(r(12934,"Problems parsing tmTheme file: {0}",n.message)))}},o=>Promise.reject(new Error(r(12935,"Problems loading tmTheme file {0}: {1}",e.toString(),o.message))))}const Ko={light:[{scope:"token.info-token",settings:{foreground:"#316bcd"}},{scope:"token.warn-token",settings:{foreground:"#cd9731"}},{scope:"token.error-token",settings:{foreground:"#cd3131"}},{scope:"token.debug-token",settings:{foreground:"#800080"}}],dark:[{scope:"token.info-token",settings:{foreground:"#6796e6"}},{scope:"token.warn-token",settings:{foreground:"#cd9731"}},{scope:"token.error-token",settings:{foreground:"#f44747"}},{scope:"token.debug-token",settings:{foreground:"#b267e6"}}],hcLight:[{scope:"token.info-token",settings:{foreground:"#316bcd"}},{scope:"token.warn-token",settings:{foreground:"#cd9731"}},{scope:"token.error-token",settings:{foreground:"#cd3131"}},{scope:"token.debug-token",settings:{foreground:"#800080"}}],hcDark:[{scope:"token.info-token",settings:{foreground:"#6796e6"}},{scope:"token.warn-token",settings:{foreground:"#008000"}},{scope:"token.error-token",settings:{foreground:"#FF0000"}},{scope:"token.debug-token",settings:{foreground:"#b267e6"}}]},qt=i=>-1;function Vt(i,e){if(e.length<i.length)return-1;let t;return i.every(n=>{for(let s=e.length-1;s>=0;s--)if(zo(e[s],n))return t=(s+1)*65536+n.length,!0;return!1})&&t!==void 0?t:-1}function zo(i,e){if(!i)return!1;if(i===e)return!0;const t=e.length;return i.length>t&&i.substr(0,t)===e&&i[t]==="."}function Jt(i){const e=i.scope;if(!e||!i.settings)return qt;const t=[];if(Array.isArray(e))for(const o of e)Ut(o,Vt,t);else Ut(e,Vt,t);return t.length===0?qt:o=>{let n=t[0].matcher(o);for(let s=1;s<t.length;s++)n=Math.max(n,t[s].matcher(o));return n}}function Tn(i,e){const t=$e.parseTokenSelector(i);let o;if(typeof e=="string"?o=ze.fromSettings(e,void 0):Wo(e)&&(o=ze.fromSettings(e.foreground,e.fontStyle,e.bold,e.underline,e.strikethrough,e.italic)),o)return{selector:t,style:o}}function Wo(i){return i&&(O(i.foreground)||O(i.fontStyle)||_e(i.italic)||_e(i.underline)||_e(i.strikethrough)||_e(i.bold))}class qo{constructor(){this._lastColorId=0,this._id2color=[],this._color2id=Object.create(null)}add(e){if(e=fe(e),e===void 0)return 0;let t=this._color2id[e];return t||(t=++this._lastColorId,this._color2id[e]=t,this._id2color[t]=e,t)}get(e){if(e=fe(e),e===void 0)return 0;const t=this._color2id[e];return t||(console.log(`Color ${e} not in index.`),0)}asArray(){return this._id2color.slice(0)}}function fe(i){if(!i)return;typeof i!="string"&&(i=z.Format.CSS.formatHexA(i,!0));const e=i.length;if(i.charCodeAt(0)!==j.Hash||e!==4&&e!==5&&e!==7&&e!==9)return;const t=[j.Hash];for(let o=1;o<e;o++){const n=Vo(i.charCodeAt(o));if(!n)return;t.push(n),(e===4||e===5)&&t.push(n)}return t.length===9&&t[7]===j.F&&t[8]===j.F&&(t.length=7),String.fromCharCode(...t)}function Vo(i){return i>=j.Digit0&&i<=j.Digit9||i>=j.A&&i<=j.F?i:i>=j.a&&i<=j.f?i-j.a+j.A:0}const Jo="vscode://schemas/icon-theme",Yo={type:"object",allowComments:!0,allowTrailingCommas:!0,definitions:{folderExpanded:{type:"string",description:r(12949,"The folder icon for expanded folders. The expanded folder icon is optional. If not set, the icon defined for folder will be shown.")},folder:{type:"string",description:r(12950,"The folder icon for collapsed folders, and if folderExpanded is not set, also for expanded folders.")},file:{type:"string",description:r(12951,"The default file icon, shown for all files that don't match any extension, filename or language id.")},rootFolder:{type:"string",description:r(12952,"The folder icon for collapsed root folders, and if rootFolderExpanded is not set, also for expanded root folders.")},rootFolderExpanded:{type:"string",description:r(12953,"The folder icon for expanded root folders. The expanded root folder icon is optional. If not set, the icon defined for root folder will be shown.")},rootFolderNames:{type:"object",description:r(12954,"Associates root folder names to icons. The object key is the root folder name. No patterns or wildcards are allowed. Root folder name matching is case insensitive."),additionalProperties:{type:"string",description:r(12955,"The ID of the icon definition for the association.")}},rootFolderNamesExpanded:{type:"object",description:r(12956,"Associates root folder names to icons for expanded root folders. The object key is the root folder name. No patterns or wildcards are allowed. Root folder name matching is case insensitive."),additionalProperties:{type:"string",description:r(12957,"The ID of the icon definition for the association.")}},folderNames:{type:"object",description:r(12958,"Associates folder names to icons. The object key is the folder name, not including any path segments. No patterns or wildcards are allowed. Folder name matching is case insensitive."),additionalProperties:{type:"string",description:r(12955,"The ID of the icon definition for the association.")}},folderNamesExpanded:{type:"object",description:r(12959,"Associates folder names to icons for expanded folders. The object key is the folder name, not including any path segments. No patterns or wildcards are allowed. Folder name matching is case insensitive."),additionalProperties:{type:"string",description:r(12960,"The ID of the icon definition for the association.")}},fileExtensions:{type:"object",description:r(12961,"Associates file extensions to icons. The object key is the file extension name. The extension name is the last segment of a file name after the last dot (not including the dot). Extensions are compared case insensitive."),additionalProperties:{type:"string",description:r(12962,"The ID of the icon definition for the association.")}},fileNames:{type:"object",description:r(12963,"Associates file names to icons. The object key is the full file name, but not including any path segments. File name can include dots and a possible file extension. No patterns or wildcards are allowed. File name matching is case insensitive."),additionalProperties:{type:"string",description:r(12964,"The ID of the icon definition for the association.")}},languageIds:{type:"object",description:r(12965,"Associates languages to icons. The object key is the language id as defined in the language contribution point."),additionalProperties:{type:"string",description:r(12966,"The ID of the icon definition for the association.")}},associations:{type:"object",properties:{folderExpanded:{$ref:"#/definitions/folderExpanded"},folder:{$ref:"#/definitions/folder"},file:{$ref:"#/definitions/file"},folderNames:{$ref:"#/definitions/folderNames"},folderNamesExpanded:{$ref:"#/definitions/folderNamesExpanded"},rootFolder:{$ref:"#/definitions/rootFolder"},rootFolderExpanded:{$ref:"#/definitions/rootFolderExpanded"},rootFolderNames:{$ref:"#/definitions/rootFolderNames"},rootFolderNamesExpanded:{$ref:"#/definitions/rootFolderNamesExpanded"},fileExtensions:{$ref:"#/definitions/fileExtensions"},fileNames:{$ref:"#/definitions/fileNames"},languageIds:{$ref:"#/definitions/languageIds"}}}},properties:{fonts:{type:"array",description:r(12967,"Fonts that are used in the icon definitions."),items:{type:"object",properties:{id:{type:"string",description:r(12968,"The ID of the font."),pattern:Ue.source,patternErrorMessage:st},src:{type:"array",description:r(12969,"The location of the font."),items:{type:"object",properties:{path:{type:"string",description:r(12970,"The font path, relative to the current file icon theme file.")},format:{type:"string",description:r(12971,"The format of the font."),enum:["woff","woff2","truetype","opentype","embedded-opentype","svg"]}},required:["path","format"]}},weight:{type:"string",description:r(12972,"The weight of the font. See https://developer.mozilla.org/en-US/docs/Web/CSS/font-weight for valid values."),pattern:Ct.source},style:{type:"string",description:r(12973,"The style of the font. See https://developer.mozilla.org/en-US/docs/Web/CSS/font-style for valid values."),pattern:St.source},size:{type:"string",description:r(12974,"The default size of the font. We strongly recommend using a percentage value, for example: 125%."),pattern:rt.source}},required:["id","src"]}},iconDefinitions:{type:"object",description:r(12975,"Description of all icons that can be used when associating files to icons."),additionalProperties:{type:"object",description:r(12976,"An icon definition. The object key is the ID of the definition."),properties:{iconPath:{type:"string",description:r(12977,"When using a SVG or PNG: The path to the image. The path is relative to the icon set file.")},fontCharacter:{type:"string",description:r(12978,"When using a glyph font: The character in the font to use.")},fontColor:{type:"string",format:"color-hex",description:r(12979,"When using a glyph font: The color to use."),pattern:sn.source},fontSize:{type:"string",description:r(12980,"When using a font: The font size in percentage to the text font. If not set, defaults to the size in the font definition."),pattern:rt.source},fontId:{type:"string",description:r(12981,"When using a font: The id of the font. If not set, defaults to the first font definition."),pattern:Ue.source,patternErrorMessage:st}}}},folderExpanded:{$ref:"#/definitions/folderExpanded"},folder:{$ref:"#/definitions/folder"},file:{$ref:"#/definitions/file"},folderNames:{$ref:"#/definitions/folderNames"},folderNamesExpanded:{$ref:"#/definitions/folderNamesExpanded"},rootFolder:{$ref:"#/definitions/rootFolder"},rootFolderExpanded:{$ref:"#/definitions/rootFolderExpanded"},rootFolderNames:{$ref:"#/definitions/rootFolderNames"},rootFolderNamesExpanded:{$ref:"#/definitions/rootFolderNamesExpanded"},fileExtensions:{$ref:"#/definitions/fileExtensions"},fileNames:{$ref:"#/definitions/fileNames"},languageIds:{$ref:"#/definitions/languageIds"},light:{$ref:"#/definitions/associations",description:r(12982,"Optional associations for file icons in light color themes.")},highContrast:{$ref:"#/definitions/associations",description:r(12983,"Optional associations for file icons in high contrast color themes.")},hidesExplorerArrows:{type:"boolean",description:r(12984,"Configures whether the file explorer's arrows should be hidden when this theme is active.")},showLanguageModeIcons:{type:"boolean",description:r(12985,"Configures whether the default language icons should be used if the theme does not define an icon for a language.")}}};function Qo(){oe.as(Tt.JSONContribution).registerSchema(Jo,Yo)}const $=class ${constructor(e,t,o){this.id=e,this.label=t,this.settingsId=o,this.isLoaded=!1,this.hasFileIcons=!1,this.hasFolderIcons=!1,this.hidesExplorerArrows=!1}ensureLoaded(e){return this.isLoaded?Promise.resolve(this.styleSheetContent):this.load(e)}reload(e){return this.load(e)}load(e){return e.load(this)}static fromExtensionTheme(e,t,o){const n=o.extensionId+"-"+e.id,s=e.label||ft(e.path),a=e.id,l=new $(n,s,a);return l.description=e.description,l.location=t,l.extensionData=o,l.watch=e._watch,l.isLoaded=!1,l}static get noIconTheme(){let e=$._noIconTheme;return e||(e=$._noIconTheme=new $("","",null),e.hasFileIcons=!1,e.hasFolderIcons=!1,e.hidesExplorerArrows=!1,e.isLoaded=!0,e.extensionData=void 0,e.watch=!1),e}static createUnloadedTheme(e){const t=new $(e,"","__"+e);return t.isLoaded=!1,t.hasFileIcons=!1,t.hasFolderIcons=!1,t.hidesExplorerArrows=!1,t.extensionData=void 0,t.watch=!1,t}static fromStorageData(e){const t=e.get($.STORAGE_KEY,ge.PROFILE);if(t)try{const o=JSON.parse(t),n=new $("","",null);for(const s in o)switch(s){case"id":case"label":case"description":case"settingsId":case"styleSheetContent":case"hasFileIcons":case"hidesExplorerArrows":case"hasFolderIcons":case"watch":n[s]=o[s];break;case"location":break;case"extensionData":n.extensionData=G.fromJSONObject(o.extensionData);break}return n}catch{return}}toStorage(e){const t=JSON.stringify({id:this.id,label:this.label,description:this.description,settingsId:this.settingsId,styleSheetContent:this.styleSheetContent,hasFileIcons:this.hasFileIcons,hasFolderIcons:this.hasFolderIcons,hidesExplorerArrows:this.hidesExplorerArrows,extensionData:G.toJSONObject(this.extensionData),watch:this.watch});e.store($.STORAGE_KEY,t,ge.PROFILE,ut.MACHINE)}};$.STORAGE_KEY="iconThemeData",$._noIconTheme=null;let X=$;class Xo{constructor(e,t){this.fileService=e,this.languageService=t}load(e){return e.location?this.loadIconThemeDocument(e.location).then(t=>{const o=this.processIconThemeDocument(e.id,e.location,t);return e.styleSheetContent=o.content,e.hasFileIcons=o.hasFileIcons,e.hasFolderIcons=o.hasFolderIcons,e.hidesExplorerArrows=o.hidesExplorerArrows,e.isLoaded=!0,e.styleSheetContent}):Promise.resolve(e.styleSheetContent)}loadIconThemeDocument(e){return this.fileService.readExtensionResource(e).then(t=>{const o=[],n=mt(t,o);return o.length>0?Promise.reject(new Error(r(12891,"Problems parsing file icons file: {0}",o.map(s=>gt(s.error)).join(", ")))):pt(n)!=="object"?Promise.reject(new Error(r(12892,"Invalid format for file icons theme file: Object expected."))):Promise.resolve(n)})}processIconThemeDocument(e,t,o){const n={content:"",hasFileIcons:!1,hasFolderIcons:!1,hidesExplorerArrows:!!o.hidesExplorerArrows};let s=!1;if(!o.iconDefinitions)return n;const a={},l={},c=Ge(t);function h(T){return ne(c,T)}function d(T,R){function S(E,A){if(A){let U=a[A];U||(U=a[A]=new ee),U.push(E)}}if(T){let E=y`.show-file-icons`;R&&(E=y`${R} ${E}`);const A=y`.monaco-tl-twistie.collapsible:not(.collapsed) + .monaco-tl-contents`;T.folder&&(S(y`${E} .folder-icon::before`,T.folder),n.hasFolderIcons=!0),T.folderExpanded&&(S(y`${E} ${A} .folder-icon::before`,T.folderExpanded),n.hasFolderIcons=!0);const U=T.rootFolder||T.folder,F=T.rootFolderExpanded||T.folderExpanded;U&&(S(y`${E} .rootfolder-icon::before`,U),n.hasFolderIcons=!0),F&&(S(y`${E} ${A} .rootfolder-icon::before`,F),n.hasFolderIcons=!0),T.file&&(S(y`${E} .file-icon::before`,T.file),n.hasFileIcons=!0);const ye=T.folderNames;if(ye)for(const x in ye){const _=new ee,Y=He(x.toLowerCase(),_);_.push(y`.${W(Y)}-name-folder-icon`),S(y`${E} ${_.join("")}.folder-icon::before`,ye[x]),n.hasFolderIcons=!0}const de=T.folderNamesExpanded;if(de)for(const x in de){const _=new ee,Y=He(x.toLowerCase(),_);_.push(y`.${W(Y)}-name-folder-icon`),S(y`${E} ${A} ${_.join("")}.folder-icon::before`,de[x]),n.hasFolderIcons=!0}const Ee=T.rootFolderNames;if(Ee)for(const x in Ee){const _=x.toLowerCase();S(y`${E} .${W(_)}-root-name-folder-icon.rootfolder-icon::before`,Ee[x]),n.hasFolderIcons=!0}const be=T.rootFolderNamesExpanded;if(be)for(const x in be){const _=x.toLowerCase();S(y`${E} ${A} .${W(_)}-root-name-folder-icon.rootfolder-icon::before`,be[x]),n.hasFolderIcons=!0}const J=T.languageIds;if(J){!J.jsonc&&J.json&&(J.jsonc=J.json);for(const x in J)S(y`${E} .${W(x)}-lang-file-icon.file-icon::before`,J[x]),n.hasFileIcons=!0,s=!0,l[x]=!0}const ke=T.fileExtensions;if(ke)for(const x in ke){const _=new ee,Q=He(x.toLowerCase(),_).split(".");if(Q.length){for(let L=0;L<Q.length;L++)_.push(y`.${W(Q.slice(L).join("."))}-ext-file-icon`);_.push(y`.ext-file-icon`)}S(y`${E} ${_.join("")}.file-icon::before`,ke[x]),n.hasFileIcons=!0,s=!0}const Re=T.fileNames;if(Re)for(const x in Re){const _=new ee,Y=He(x.toLowerCase(),_);_.push(y`.${W(Y)}-name-file-icon`),_.push(y`.name-file-icon`);const Q=Y.split(".");if(Q.length){for(let L=1;L<Q.length;L++)_.push(y`.${W(Q.slice(L).join("."))}-ext-file-icon`);_.push(y`.ext-file-icon`)}S(y`${E} ${_.join("")}.file-icon::before`,Re[x]),n.hasFileIcons=!0,s=!0}}}if(d(o),d(o.light,y`.vs`),d(o.highContrast,y`.hc-black`),d(o.highContrast,y`.hc-light`),!n.hasFileIcons&&!n.hasFolderIcons)return n;const f=o.showLanguageModeIcons===!0||s&&o.showLanguageModeIcons!==!1,u=new ee,m=o.fonts,I=new Map;if(Array.isArray(m)){const T=this.tryNormalizeFontSize(m[0].size)||"150%";m.forEach(R=>{const S=new ee;S.push(...R.src.map(A=>y`${Pe(h(A.path))} format(${ue(A.format)})`)),u.push(y`@font-face { src: ${S.join(", ")}; font-family: ${ue(R.id)}; font-weight: ${Dt(R.weight)}; font-style: ${Dt(R.style)}; font-display: block; }`);const E=this.tryNormalizeFontSize(R.size);E!==void 0&&E!==T&&I.set(R.id,E)}),u.push(y`.show-file-icons .file-icon::before, .show-file-icons .folder-icon::before, .show-file-icons .rootfolder-icon::before { font-family: ${ue(m[0].id)}; font-size: ${At(T)}; }`)}const p=ue("\\2001");for(const T in a){const R=a[T],S=o.iconDefinitions[T];if(S){if(S.iconPath)u.push(y`${R.join(", ")} { content: ${p}; background-image: ${Pe(h(S.iconPath))}; }`);else if(S.fontCharacter||S.fontColor){const E=new ee;S.fontColor&&S.fontColor.match(sn)&&E.push(y`color: ${Gn(S.fontColor)};`),S.fontCharacter&&E.push(y`content: ${ue(S.fontCharacter)};`);const A=S.fontSize??(S.fontId?I.get(S.fontId):void 0);A&&A.match(rt)&&E.push(y`font-size: ${At(A)};`),S.fontId&&E.push(y`font-family: ${ue(S.fontId)};`),f&&E.push(y`background-image: unset;`),u.push(y`${R.join(", ")} { ${E.join(" ")} }`)}}}if(f){for(const T of this.languageService.getRegisteredLanguageIds())if(!l[T]){const R=this.languageService.getIcon(T);if(R){const S=y`.show-file-icons .${W(T)}-lang-file-icon.file-icon::before`;u.push(y`${S} { content: ${p}; background-image: ${Pe(R.dark)}; }`),u.push(y`.vs ${S} { content: ${p}; background-image: ${Pe(R.light)}; }`)}}}return n.content=u.join(`
|
|
1
|
+
import{aq as O,ar as _e,N as z,as as nt,at as ot,au as wn,av as xn,aw as vn,ax as Dn,ay as An,az as On,aA as Mn,aB as Pn,aC as Ln,aD as Hn,aE as Fn,aF as Nn,aG as $n,aH as oe,J as Ne,aI as it,aJ as ge,aK as ut,aL as k,aM as H,aN as Bn,aO as ft,ah as j,aP as on,aQ as jn,aR as mt,q as r,aS as gt,aT as pt,x as ne,aU as Ge,aV as Tt,aW as st,aX as Ue,aY as rt,aZ as sn,a_ as St,a$ as Ct,b0 as y,b1 as ee,b2 as Pe,b3 as ue,b4 as Dt,b5 as At,b6 as Gn,b7 as Un,b8 as Kn,b9 as It,E as we,K as Ot,p as yt,ba as zn,ak as rn,D as an,bb as Wn,bc as se,bd as K,be as qn,G as cn,bf as Vn,bg as Mt,bh as at,bi as Jn,bj as Yn,bk as Qn,bl as Ye,bm as Pt,z as Ke,u as ln,bn as Xn,bo as Zn,bp as eo,bq as Lt,d as Et,br as to,bs as no,bt as oo,bu as bt,bv as io,f as kt,g as w,bw as so,bx as ro,h as hn,m as ao,by as co,bz as lo,I as Rt,bA as ho,O as dn,bB as uo,bC as fo,i as mo,bD as go,bE as ct,bF as _t,bG as po,bH as un,Q as To,bI as wt,bJ as So,W as Ae,bK as pe,bL as Te,bM as Co,bN as Io,bO as Se,aj as Ce,bP as Ht,$ as Ft,bQ as fn,bR as Nt,bS as $t,bT as yo,bU as Eo,bV as Bt,bW as bo,j as ko,bX as Ro,bY as xt,bZ as Oe,b_ as _o,a3 as wo,b$ as xo,P as vo,al as Do,c0 as Ao}from"./index-DSexFukl.js";import{g as Oo,T as ze,p as jt,S as Gt,a as mn}from"./tokenClassificationRegistry-CZyxOMX0.js";import{I as le}from"./workbenchThemeService.service-CXlQNmVU.js";const Mo="[",Po="]",Le="*",Lo=/\[(.+?)\]/g;var C;(function(i){i.COLOR_THEME="workbench.colorTheme",i.FILE_ICON_THEME="workbench.iconTheme",i.PRODUCT_ICON_THEME="workbench.productIconTheme",i.COLOR_CUSTOMIZATIONS="workbench.colorCustomizations",i.TOKEN_COLOR_CUSTOMIZATIONS="editor.tokenColorCustomizations",i.SEMANTIC_TOKEN_COLOR_CUSTOMIZATIONS="editor.semanticTokenColorCustomizations",i.PREFERRED_DARK_THEME="workbench.preferredDarkColorTheme",i.PREFERRED_LIGHT_THEME="workbench.preferredLightColorTheme",i.PREFERRED_HC_DARK_THEME="workbench.preferredHighContrastColorTheme",i.PREFERRED_HC_LIGHT_THEME="workbench.preferredHighContrastLightColorTheme",i.DETECT_COLOR_SCHEME="window.autoDetectColorScheme",i.DETECT_HC="window.autoDetectHighContrast",i.SYSTEM_COLOR_THEME="window.systemColorTheme"})(C||(C={}));var P;(function(i){i.COLOR_THEME_DARK="Default Dark Modern",i.COLOR_THEME_LIGHT="Default Light Modern",i.COLOR_THEME_HC_DARK="Default High Contrast",i.COLOR_THEME_HC_LIGHT="Default High Contrast Light",i.COLOR_THEME_DARK_OLD="Default Dark+",i.COLOR_THEME_LIGHT_OLD="Default Light+",i.FILE_ICON_THEME="vs-seti",i.PRODUCT_ICON_THEME="Default"})(P||(P={}));const Ho={"activityBar.activeBorder":"#0078d4","activityBar.background":"#181818","activityBar.border":"#2b2b2b","activityBar.foreground":"#d7d7d7","activityBar.inactiveForeground":"#868686","editorGroup.border":"#ffffff17","editorGroupHeader.tabsBackground":"#181818","editorGroupHeader.tabsBorder":"#2b2b2b","statusBar.background":"#181818","statusBar.border":"#2b2b2b","statusBar.foreground":"#cccccc","statusBar.noFolderBackground":"#1f1f1f","tab.activeBackground":"#1f1f1f","tab.activeBorder":"#1f1f1f","tab.activeBorderTop":"#0078d4","tab.activeForeground":"#ffffff","tab.border":"#2b2b2b","textLink.foreground":"#4daafc","titleBar.activeBackground":"#181818","titleBar.activeForeground":"#cccccc","titleBar.border":"#2b2b2b","titleBar.inactiveBackground":"#1f1f1f","titleBar.inactiveForeground":"#9d9d9d","welcomePage.tileBackground":"#2b2b2b"},Fo={"activityBar.activeBorder":"#005FB8","activityBar.background":"#f8f8f8","activityBar.border":"#e5e5e5","activityBar.foreground":"#1f1f1f","activityBar.inactiveForeground":"#616161","editorGroup.border":"#e5e5e5","editorGroupHeader.tabsBackground":"#f8f8f8","editorGroupHeader.tabsBorder":"#e5e5e5","statusBar.background":"#f8f8f8","statusBar.border":"#e5e5e5","statusBar.foreground":"#3b3b3b","statusBar.noFolderBackground":"#f8f8f8","tab.activeBackground":"#ffffff","tab.activeBorder":"#f8f8f8","tab.activeBorderTop":"#005fb8","tab.activeForeground":"#3b3b3b","tab.border":"#e5e5e5","textLink.foreground":"#005fb8","titleBar.activeBackground":"#f8f8f8","titleBar.activeForeground":"#1e1e1e","titleBar.border":"#E5E5E5","titleBar.inactiveBackground":"#f8f8f8","titleBar.inactiveForeground":"#8b949e","welcomePage.tileBackground":"#f3f3f3"};var G;(function(i){function e(n){return n&&{_extensionId:n.extensionId,_extensionIsBuiltin:n.extensionIsBuiltin,_extensionName:n.extensionName,_extensionPublisher:n.extensionPublisher}}i.toJSONObject=e;function t(n){if(n&&O(n._extensionId)&&_e(n._extensionIsBuiltin)&&O(n._extensionName)&&O(n._extensionPublisher))return{extensionId:n._extensionId,extensionIsBuiltin:n._extensionIsBuiltin,extensionName:n._extensionName,extensionPublisher:n._extensionPublisher}}i.fromJSONObject=t;function o(n,s,a=!1){return{extensionPublisher:n,extensionId:`${n}.${s}`,extensionName:s,extensionIsBuiltin:a}}i.fromName=o})(G||(G={}));const lt={};function M(i,e){let t=lt[i];t||(lt[i]=t=[]),t.push(e)}function gn(i,e){for(const t of i)if(e.textMateRules.push(t),!t.scope){const o=t.settings;if(!o)t.settings={};else for(const n in o){const s=n,a=lt[s];if(a){const l=o[s];if(typeof l=="string"){const c=z.fromHex(l);for(const h of a)e.colors[h]=c}}s!=="foreground"&&s!=="background"&&s!=="fontStyle"&&delete o[s]}}}M("background",nt);M("foreground",ot);M("selection",wn);M("inactiveSelection",xn);M("selectionHighlightColor",vn);M("findMatchHighlight",Dn);M("currentFindMatchHighlight",An);M("hoverHighlight",On);M("wordHighlight","editor.wordHighlightBackground");M("wordHighlightStrong","editor.wordHighlightStrongBackground");M("findRangeHighlight",Mn);M("findMatchHighlight","peekViewResult.matchHighlightBackground");M("referenceHighlight","peekViewEditor.matchHighlightBackground");M("lineHighlight",Pn);M("rangeHighlight",Ln);M("caret",Hn);M("invisibles",Fn);M("guide",Nn);M("activeGuide",$n);const No=["ansiBlack","ansiRed","ansiGreen","ansiYellow","ansiBlue","ansiMagenta","ansiCyan","ansiWhite","ansiBrightBlack","ansiBrightRed","ansiBrightGreen","ansiBrightYellow","ansiBrightBlue","ansiBrightMagenta","ansiBrightCyan","ansiBrightWhite"];for(const i of No)M(i,"terminal."+i);var N;(function(i){i[i.BOM=65279]="BOM",i[i.SPACE=32]="SPACE",i[i.TAB=9]="TAB",i[i.CARRIAGE_RETURN=13]="CARRIAGE_RETURN",i[i.LINE_FEED=10]="LINE_FEED",i[i.SLASH=47]="SLASH",i[i.LESS_THAN=60]="LESS_THAN",i[i.QUESTION_MARK=63]="QUESTION_MARK",i[i.EXCLAMATION_MARK=33]="EXCLAMATION_MARK"})(N||(N={}));var b;(function(i){i[i.ROOT_STATE=0]="ROOT_STATE",i[i.DICT_STATE=1]="DICT_STATE",i[i.ARR_STATE=2]="ARR_STATE"})(b||(b={}));function $o(i){return Bo(i)}function Bo(i,e,t){const o=i.length;let n=0;o>0&&i.charCodeAt(0)===N.BOM&&(n=1);function s(g){n=n+g}function a(g){n=g}function l(){for(;n<o;){const g=i.charCodeAt(n);if(g!==N.SPACE&&g!==N.TAB&&g!==N.CARRIAGE_RETURN&&g!==N.LINE_FEED)break;s(1)}}function c(g){return i.substr(n,g.length)===g?(s(g.length),!0):!1}function h(g){const v=i.indexOf(g,n);a(v!==-1?v+g.length:o)}function d(g){const v=i.indexOf(g,n);if(v!==-1){const D=i.substring(n,v);return a(v+g.length),D}else{const D=i.substr(n);return a(o),D}}let f=b.ROOT_STATE,u=null;const m=[],I=[];let p=null;function T(g,v){m.push(f),I.push(u),f=g,u=v}function R(){if(m.length===0)return S("illegal state stack");f=m.pop(),u=I.pop()}function S(g){throw new Error("Near offset "+n+": "+g+" ~~~"+i.substr(n,50)+"~~~")}const E={enterDict:function(){if(p===null)return S("missing <key>");const g={};u[p]=g,p=null,T(b.DICT_STATE,g)},enterArray:function(){if(p===null)return S("missing <key>");const g=[];u[p]=g,p=null,T(b.ARR_STATE,g)}},A={enterDict:function(){const g={};u.push(g),T(b.DICT_STATE,g)},enterArray:function(){const g=[];u.push(g),T(b.ARR_STATE,g)}};function U(){f===b.DICT_STATE?E.enterDict():f===b.ARR_STATE?A.enterDict():(u={},T(b.DICT_STATE,u))}function F(){if(f===b.DICT_STATE)R();else return f===b.ARR_STATE,S("unexpected </dict>")}function ye(){f===b.DICT_STATE?E.enterArray():f===b.ARR_STATE?A.enterArray():(u=[],T(b.ARR_STATE,u))}function de(){if(f===b.DICT_STATE)return S("unexpected </array>");if(f===b.ARR_STATE)R();else return S("unexpected </array>")}function Ee(g){if(f===b.DICT_STATE){if(p!==null)return S("too many <key>");p=g}else return f===b.ARR_STATE,S("unexpected <key>")}function be(g){if(f===b.DICT_STATE){if(p===null)return S("missing <key>");u[p]=g,p=null}else f===b.ARR_STATE?u.push(g):u=g}function J(g){if(isNaN(g))return S("cannot parse float");if(f===b.DICT_STATE){if(p===null)return S("missing <key>");u[p]=g,p=null}else f===b.ARR_STATE?u.push(g):u=g}function ke(g){if(isNaN(g))return S("cannot parse integer");if(f===b.DICT_STATE){if(p===null)return S("missing <key>");u[p]=g,p=null}else f===b.ARR_STATE?u.push(g):u=g}function Re(g){if(f===b.DICT_STATE){if(p===null)return S("missing <key>");u[p]=g,p=null}else f===b.ARR_STATE?u.push(g):u=g}function x(g){if(f===b.DICT_STATE){if(p===null)return S("missing <key>");u[p]=g,p=null}else f===b.ARR_STATE?u.push(g):u=g}function _(g){if(f===b.DICT_STATE){if(p===null)return S("missing <key>");u[p]=g,p=null}else f===b.ARR_STATE?u.push(g):u=g}function Y(g){return g.replace(/&#([0-9]+);/g,function(v,D){return String.fromCodePoint(parseInt(D,10))}).replace(/&#x([0-9a-f]+);/g,function(v,D){return String.fromCodePoint(parseInt(D,16))}).replace(/&|<|>|"|'/g,function(v){switch(v){case"&":return"&";case"<":return"<";case">":return">";case""":return'"';case"'":return"'"}return v})}function Q(){let g=d(">"),v=!1;return g.charCodeAt(g.length-1)===N.SLASH&&(v=!0,g=g.substring(0,g.length-1)),{name:g.trim(),isClosed:v}}function L(g){if(g.isClosed)return"";const v=d("</");return h(">"),Y(v)}for(;n<o&&(l(),!(n>=o));){const g=i.charCodeAt(n);if(s(1),g!==N.LESS_THAN)return S("expected <");if(n>=o)return S("unexpected end of input");const v=i.charCodeAt(n);if(v===N.QUESTION_MARK){s(1),h("?>");continue}if(v===N.EXCLAMATION_MARK){if(s(1),c("--")){h("-->");continue}h(">");continue}if(v===N.SLASH){if(s(1),l(),c("plist")){h(">");continue}if(c("dict")){h(">"),F();continue}if(c("array")){h(">"),de();continue}return S("unexpected closed tag")}const D=Q();switch(D.name){case"dict":U(),D.isClosed&&F();continue;case"array":ye(),D.isClosed&&de();continue;case"key":Ee(L(D));continue;case"string":be(L(D));continue;case"real":J(parseFloat(L(D)));continue;case"integer":ke(parseInt(L(D),10));continue;case"date":Re(new Date(L(D)));continue;case"data":x(L(D));continue;case"true":L(D),_(!0);continue;case"false":L(D),_(!1);continue}if(!/^plist/.test(D.name))return S("unexpected opened tag "+D.name)}return u}function Ut(i,e,t){const o=jo(i);let n=o.next();for(;n!==null;){let c=0;if(n.length===2&&n.charAt(1)===":"){switch(n.charAt(0)){case"R":c=1;break;case"L":c=-1;break;default:console.log(`Unknown priority ${n} in scope selector`)}n=o.next()}const h=a();if(h&&t.push({matcher:h,priority:c}),n!==",")break;n=o.next()}function s(){if(n==="-"){n=o.next();const c=s();return c?h=>c(h)<0?0:-1:null}if(n==="("){n=o.next();const c=l();return n===")"&&(n=o.next()),c}if(Kt(n)){const c=[];do c.push(n),n=o.next();while(Kt(n));return h=>e(c,h)}return null}function a(){let c=s();if(!c)return null;const h=[];for(;c;)h.push(c),c=s();return d=>{let f=h[0](d);for(let u=1;f>=0&&u<h.length;u++)f=Math.min(f,h[u](d));return f}}function l(){let c=a();if(!c)return null;const h=[];for(;c&&(h.push(c),n==="|"||n===",");){do n=o.next();while(n==="|"||n===",");c=a()}return d=>{let f=h[0](d);for(let u=1;u<h.length;u++)f=Math.max(f,h[u](d));return f}}}function Kt(i){return!!i&&!!i.match(/[\w\.:]+/)}function jo(i){const e=/([LR]:|[\w\.:][\w\.:\-]*|[\,\|\-\(\)])/g;let t=e.exec(i);return{next:()=>{if(!t)return null;const o=t[0];return t=e.exec(i),o}}}const Go=oe.as(on.ColorContribution),$e=Oo(),zt={comments:["comment","punctuation.definition.comment"],strings:["string","meta.embedded.assembly"],keywords:["keyword - keyword.operator","keyword.control","storage","storage.type"],numbers:["constant.numeric"],types:["entity.name.type","entity.name.class","support.type","support.class"],functions:["entity.name.function","support.function"],variables:["variable","entity.name.variable"]},q=class q{constructor(e,t,o){this.themeTokenColors=[],this.customTokenColors=[],this.colorMap={},this.customColorMap={},this.semanticTokenRules=[],this.customSemanticTokenRules=[],this.textMateThemingRules=void 0,this.tokenColorIndex=void 0,this.id=e,this.label=t,this.settingsId=o,this.isLoaded=!1}get semanticHighlighting(){return this.customSemanticHighlighting!==void 0?this.customSemanticHighlighting:this.customSemanticHighlightingDeprecated!==void 0?this.customSemanticHighlightingDeprecated:!!this.themeSemanticHighlighting}get tokenColors(){if(!this.textMateThemingRules){let s=function(a){a.scope&&a.settings&&(a.scope==="token.info-token"&&(n=!0),e.push({scope:a.scope,settings:{foreground:fe(a.settings.foreground),background:fe(a.settings.background),fontStyle:a.settings.fontStyle}}))};const e=[],t=this.getColor(ot)||this.getDefault(ot),o=this.getColor(nt)||this.getDefault(nt);e.push({settings:{foreground:fe(t),background:fe(o)}});let n=!1;this.themeTokenColors.forEach(s),this.customTokenColors.forEach(s),n||Ko[this.type].forEach(s),this.textMateThemingRules=e}return this.textMateThemingRules}getColor(e,t){const o=this.customColorMap[e];if(o instanceof z)return o;if(o===void 0){const n=this.colorMap[e];if(n!==void 0)return n}if(t!==!1)return this.getDefault(e)}getTokenStyle(e,t,o,n=!0,s={}){const a={foreground:void 0,bold:void 0,underline:void 0,strikethrough:void 0,italic:void 0},l={foreground:-1,bold:-1,underline:-1,strikethrough:-1,italic:-1};function c(f,u,m){u.foreground&&l.foreground<=f&&(l.foreground=f,a.foreground=u.foreground,s.foreground=m);for(const I of["bold","underline","strikethrough","italic"]){const p=I,T=u[p];T!==void 0&&l[p]<=f&&(l[p]=f,a[p]=T,s[p]=m)}}function h(f){const u=f.selector.match(e,t,o);u>=0&&c(u,f.style,f)}this.semanticTokenRules.forEach(h),this.customSemanticTokenRules.forEach(h);let d=!1;for(const f in l){const u=f;l[u]===-1?d=!0:l[u]=Number.MAX_VALUE}if(d)for(const f of $e.getTokenStylingDefaultRules()){const u=f.selector.match(e,t,o);if(u>=0){let m;if(f.defaults.scopesToProbe&&(m=this.resolveScopes(f.defaults.scopesToProbe),m&&c(u,m,f.defaults.scopesToProbe)),!m&&n!==!1){const I=f.defaults[this.type];m=this.resolveTokenStyleValue(I),m&&c(u,m,I)}}}return ze.fromData(a)}resolveTokenStyleValue(e){if(e!==void 0){if(typeof e=="string"){const{type:t,modifiers:o,language:n}=jt(e,"");return this.getTokenStyle(t,o,n)}else if(typeof e=="object")return e}}getTokenColorIndex(){if(!this.tokenColorIndex){const e=new qo;this.tokenColors.forEach(t=>{e.add(t.settings.foreground),e.add(t.settings.background)}),this.semanticTokenRules.forEach(t=>e.add(t.style.foreground)),$e.getTokenStylingDefaultRules().forEach(t=>{const o=t.defaults[this.type];o&&typeof o=="object"&&e.add(o.foreground)}),this.customSemanticTokenRules.forEach(t=>e.add(t.style.foreground)),this.tokenColorIndex=e}return this.tokenColorIndex}get tokenColorMap(){return this.getTokenColorIndex().asArray()}getTokenStyleMetadata(e,t,o,n=!0,s={}){const{type:a,language:l}=jt(e,o),c=this.getTokenStyle(a,t,l,n,s);if(c)return{foreground:this.getTokenColorIndex().get(c.foreground),bold:c.bold,underline:c.underline,strikethrough:c.strikethrough,italic:c.italic}}getTokenStylingRuleScope(e){if(this.customSemanticTokenRules.indexOf(e)!==-1)return"setting";if(this.semanticTokenRules.indexOf(e)!==-1)return"theme"}getDefault(e){return Go.resolveDefaultColor(e,this)}resolveScopes(e,t){this.themeTokenScopeMatchers||(this.themeTokenScopeMatchers=this.themeTokenColors.map(Jt)),this.customTokenScopeMatchers||(this.customTokenScopeMatchers=this.customTokenColors.map(Jt));for(const o of e){let d=function(f,u){for(let m=0;m<f.length;m++){const I=f[m](o);if(I>=0){const p=u[m],T=u[m].settings;I>=a&&T.foreground&&(n=T.foreground,a=I,h=p),I>=l&&O(T.fontStyle)&&(s=T.fontStyle,l=I,c=p)}}},n,s,a=-1,l=-1,c,h;if(d(this.themeTokenScopeMatchers,this.themeTokenColors),d(this.customTokenScopeMatchers,this.customTokenColors),n!==void 0||s!==void 0)return t&&(t.foreground=h,t.bold=t.italic=t.underline=t.strikethrough=c,t.scope=o),ze.fromSettings(n,s)}}defines(e){const t=this.customColorMap[e];return t instanceof z?!0:t===void 0&&this.colorMap.hasOwnProperty(e)}setCustomizations(e){this.setCustomColors(e.colorCustomizations),this.setCustomTokenColors(e.tokenColorCustomizations),this.setCustomSemanticTokenColors(e.semanticTokenColorCustomizations)}setCustomColors(e){this.customColorMap={},this.overwriteCustomColors(e);const t=this.getThemeSpecificColors(e);Ne(t)&&this.overwriteCustomColors(t),this.tokenColorIndex=void 0,this.textMateThemingRules=void 0,this.customTokenScopeMatchers=void 0}overwriteCustomColors(e){for(const t in e){const o=e[t];o===it?this.customColorMap[t]=it:typeof o=="string"&&(this.customColorMap[t]=z.fromHex(o))}}setCustomTokenColors(e){this.customTokenColors=[],this.customSemanticHighlightingDeprecated=void 0,this.addCustomTokenColors(e);const t=this.getThemeSpecificColors(e);Ne(t)&&this.addCustomTokenColors(t),this.tokenColorIndex=void 0,this.textMateThemingRules=void 0,this.customTokenScopeMatchers=void 0}setCustomSemanticTokenColors(e){if(this.customSemanticTokenRules=[],this.customSemanticHighlighting=void 0,e){this.customSemanticHighlighting=e.enabled,e.rules&&this.readSemanticTokenRules(e.rules);const t=this.getThemeSpecificColors(e);Ne(t)&&(t.enabled!==void 0&&(this.customSemanticHighlighting=t.enabled),t.rules&&this.readSemanticTokenRules(t.rules))}this.tokenColorIndex=void 0,this.textMateThemingRules=void 0}isThemeScope(e){return e.charAt(0)===Mo&&e.charAt(e.length-1)===Po}isThemeScopeMatch(e){const t=e.charAt(0),o=e.charAt(e.length-1),n=e.slice(0,-1),s=e.slice(1,-1),a=e.slice(1);return e===this.settingsId||this.settingsId.includes(s)&&t===Le&&o===Le||this.settingsId.startsWith(n)&&o===Le||this.settingsId.endsWith(a)&&t===Le}getThemeSpecificColors(e){let t;for(const o in e){const n=e[o];if(this.isThemeScope(o)&&n instanceof Object&&!Array.isArray(n)){const s=o.match(Lo)||[];for(const a of s){const l=a.substring(1,a.length-1);if(this.isThemeScopeMatch(l)){t||(t={});const c=n;for(const h in c){const d=t[h],f=c[h];Array.isArray(d)&&Array.isArray(f)?t[h]=d.concat(f):f&&(t[h]=f)}}}}}return t}readSemanticTokenRules(e){for(const t in e)if(!this.isThemeScope(t))try{const o=Tn(t,e[t]);o&&this.customSemanticTokenRules.push(o)}catch{}}addCustomTokenColors(e){for(const t in zt){const o=t,n=e[o];if(n){const s=typeof n=="string"?{foreground:n}:n,a=zt[o];for(const l of a)this.customTokenColors.push({scope:l,settings:s})}}if(Array.isArray(e.textMateRules))for(const t of e.textMateRules)t.scope&&t.settings&&this.customTokenColors.push(t);e.semanticHighlighting!==void 0&&(this.customSemanticHighlightingDeprecated=e.semanticHighlighting)}ensureLoaded(e){return this.isLoaded?Promise.resolve(void 0):this.load(e)}reload(e){return this.load(e)}load(e){if(!this.location)return Promise.resolve(void 0);this.themeTokenColors=[],this.clearCaches();const t={colors:{},textMateRules:[],semanticTokenRules:[],semanticHighlighting:!1};return pn(e,this.location,t).then(o=>{this.isLoaded=!0,this.semanticTokenRules=t.semanticTokenRules,this.colorMap=t.colors,this.themeTokenColors=t.textMateRules,this.themeSemanticHighlighting=t.semanticHighlighting})}clearCaches(){this.tokenColorIndex=void 0,this.textMateThemingRules=void 0,this.themeTokenScopeMatchers=void 0,this.customTokenScopeMatchers=void 0}toStorage(e){const t={};for(const n in this.colorMap)t[n]=z.Format.CSS.formatHexA(this.colorMap[n],!0);const o=JSON.stringify({id:this.id,label:this.label,settingsId:this.settingsId,themeTokenColors:this.themeTokenColors.map(n=>({settings:n.settings,scope:n.scope})),semanticTokenRules:this.semanticTokenRules.map(Gt.toJSONObject),extensionData:G.toJSONObject(this.extensionData),themeSemanticHighlighting:this.themeSemanticHighlighting,colorMap:t,watch:this.watch});e.store(q.STORAGE_KEY,o,ge.PROFILE,ut.USER)}get themeTypeSelector(){return this.classNames[0]}get classNames(){return this.id.split(" ")}get type(){switch(this.themeTypeSelector){case H.VS:return k.LIGHT;case H.HC_BLACK:return k.HIGH_CONTRAST_DARK;case H.HC_LIGHT:return k.HIGH_CONTRAST_LIGHT;default:return k.DARK}}static createUnloadedThemeForThemeType(e,t){return q.createUnloadedTheme(Bn(e),t)}static createUnloadedTheme(e,t){const o=new q(e,"","__"+e);if(o.isLoaded=!1,o.themeTokenColors=[],o.watch=!1,t)for(const n in t)o.colorMap[n]=z.fromHex(t[n]);return o}static createLoadedEmptyTheme(e,t){const o=new q(e,"",t);return o.isLoaded=!0,o.themeTokenColors=[],o.watch=!1,o}static fromStorageData(e){const t=e.get(q.STORAGE_KEY,ge.PROFILE);if(t)try{const o=JSON.parse(t),n=new q("","","");for(const s in o)switch(s){case"colorMap":{const a=o[s];for(const l in a)n.colorMap[l]=z.fromHex(a[l]);break}case"themeTokenColors":case"id":case"label":case"settingsId":case"watch":case"themeSemanticHighlighting":n[s]=o[s];break;case"semanticTokenRules":{const a=o[s];if(Array.isArray(a))for(const l of a){const c=Gt.fromJSONObject($e,l);c&&n.semanticTokenRules.push(c)}break}case"location":break;case"extensionData":n.extensionData=G.fromJSONObject(o.extensionData);break}return!n.id||!n.settingsId?void 0:n}catch{return}}static fromExtensionTheme(e,t,o){const n=e.uiTheme||"vs-dark",s=Uo(o.extensionId,e.path),a=`${n} ${s}`,l=e.label||ft(e.path),c=e.id||l,h=new q(a,l,c);return h.description=e.description,h.watch=e._watch===!0,h.location=t,h.extensionData=o,h.isLoaded=!1,h}};q.STORAGE_KEY="colorThemeData";let te=q;function Uo(i,e){e.startsWith("./")&&(e=e.substr(2));let t=`${i}-${e}`;return t=t.replace(/[^_a-zA-Z0-9-]/g,"-"),t.charAt(0).match(/[0-9-]/)&&(t="_"+t),t}async function pn(i,e,t){if(jn(e)===".json"){const o=await i.readExtensionResource(e),n=[],s=mt(o,n);if(n.length>0)return Promise.reject(new Error(r(12928,"Problems parsing JSON theme file: {0}",n.map(h=>gt(h.error)).join(", "))));if(pt(s)!=="object")return Promise.reject(new Error(r(12929,"Invalid format for JSON theme file: Object expected.")));if(s.include&&await pn(i,ne(Ge(e),s.include),t),Array.isArray(s.settings))return gn(s.settings,t),null;t.semanticHighlighting=t.semanticHighlighting||s.semanticHighlighting;const a=s.colors;if(a){if(typeof a!="object")return Promise.reject(new Error(r(12930,"Problem parsing color theme file: {0}. Property 'colors' is not of type 'object'.",e.toString())));for(const h in a){const d=a[h];d===it?delete t.colors[h]:typeof d=="string"&&(t.colors[h]=z.fromHex(a[h]))}}const l=s.tokenColors;if(l)if(Array.isArray(l))t.textMateRules.push(...l);else if(typeof l=="string")await Wt(i,ne(Ge(e),l),t);else return Promise.reject(new Error(r(12931,"Problem parsing color theme file: {0}. Property 'tokenColors' should be either an array specifying colors or a path to a TextMate theme file",e.toString())));const c=s.semanticTokenColors;if(c&&typeof c=="object")for(const h in c)try{const d=Tn(h,c[h]);d&&t.semanticTokenRules.push(d)}catch{return Promise.reject(new Error(r(12932,"Problem parsing color theme file: {0}. Property 'semanticTokenColors' contains a invalid selector",e.toString())))}}else return Wt(i,e,t)}function Wt(i,e,t){return i.readExtensionResource(e).then(o=>{try{const s=$o(o).settings;return Array.isArray(s)?(gn(s,t),Promise.resolve(null)):Promise.reject(new Error(r(12933,"Problem parsing tmTheme file: {0}. 'settings' is not array.")))}catch(n){return Promise.reject(new Error(r(12934,"Problems parsing tmTheme file: {0}",n.message)))}},o=>Promise.reject(new Error(r(12935,"Problems loading tmTheme file {0}: {1}",e.toString(),o.message))))}const Ko={light:[{scope:"token.info-token",settings:{foreground:"#316bcd"}},{scope:"token.warn-token",settings:{foreground:"#cd9731"}},{scope:"token.error-token",settings:{foreground:"#cd3131"}},{scope:"token.debug-token",settings:{foreground:"#800080"}}],dark:[{scope:"token.info-token",settings:{foreground:"#6796e6"}},{scope:"token.warn-token",settings:{foreground:"#cd9731"}},{scope:"token.error-token",settings:{foreground:"#f44747"}},{scope:"token.debug-token",settings:{foreground:"#b267e6"}}],hcLight:[{scope:"token.info-token",settings:{foreground:"#316bcd"}},{scope:"token.warn-token",settings:{foreground:"#cd9731"}},{scope:"token.error-token",settings:{foreground:"#cd3131"}},{scope:"token.debug-token",settings:{foreground:"#800080"}}],hcDark:[{scope:"token.info-token",settings:{foreground:"#6796e6"}},{scope:"token.warn-token",settings:{foreground:"#008000"}},{scope:"token.error-token",settings:{foreground:"#FF0000"}},{scope:"token.debug-token",settings:{foreground:"#b267e6"}}]},qt=i=>-1;function Vt(i,e){if(e.length<i.length)return-1;let t;return i.every(n=>{for(let s=e.length-1;s>=0;s--)if(zo(e[s],n))return t=(s+1)*65536+n.length,!0;return!1})&&t!==void 0?t:-1}function zo(i,e){if(!i)return!1;if(i===e)return!0;const t=e.length;return i.length>t&&i.substr(0,t)===e&&i[t]==="."}function Jt(i){const e=i.scope;if(!e||!i.settings)return qt;const t=[];if(Array.isArray(e))for(const o of e)Ut(o,Vt,t);else Ut(e,Vt,t);return t.length===0?qt:o=>{let n=t[0].matcher(o);for(let s=1;s<t.length;s++)n=Math.max(n,t[s].matcher(o));return n}}function Tn(i,e){const t=$e.parseTokenSelector(i);let o;if(typeof e=="string"?o=ze.fromSettings(e,void 0):Wo(e)&&(o=ze.fromSettings(e.foreground,e.fontStyle,e.bold,e.underline,e.strikethrough,e.italic)),o)return{selector:t,style:o}}function Wo(i){return i&&(O(i.foreground)||O(i.fontStyle)||_e(i.italic)||_e(i.underline)||_e(i.strikethrough)||_e(i.bold))}class qo{constructor(){this._lastColorId=0,this._id2color=[],this._color2id=Object.create(null)}add(e){if(e=fe(e),e===void 0)return 0;let t=this._color2id[e];return t||(t=++this._lastColorId,this._color2id[e]=t,this._id2color[t]=e,t)}get(e){if(e=fe(e),e===void 0)return 0;const t=this._color2id[e];return t||(console.log(`Color ${e} not in index.`),0)}asArray(){return this._id2color.slice(0)}}function fe(i){if(!i)return;typeof i!="string"&&(i=z.Format.CSS.formatHexA(i,!0));const e=i.length;if(i.charCodeAt(0)!==j.Hash||e!==4&&e!==5&&e!==7&&e!==9)return;const t=[j.Hash];for(let o=1;o<e;o++){const n=Vo(i.charCodeAt(o));if(!n)return;t.push(n),(e===4||e===5)&&t.push(n)}return t.length===9&&t[7]===j.F&&t[8]===j.F&&(t.length=7),String.fromCharCode(...t)}function Vo(i){return i>=j.Digit0&&i<=j.Digit9||i>=j.A&&i<=j.F?i:i>=j.a&&i<=j.f?i-j.a+j.A:0}const Jo="vscode://schemas/icon-theme",Yo={type:"object",allowComments:!0,allowTrailingCommas:!0,definitions:{folderExpanded:{type:"string",description:r(12949,"The folder icon for expanded folders. The expanded folder icon is optional. If not set, the icon defined for folder will be shown.")},folder:{type:"string",description:r(12950,"The folder icon for collapsed folders, and if folderExpanded is not set, also for expanded folders.")},file:{type:"string",description:r(12951,"The default file icon, shown for all files that don't match any extension, filename or language id.")},rootFolder:{type:"string",description:r(12952,"The folder icon for collapsed root folders, and if rootFolderExpanded is not set, also for expanded root folders.")},rootFolderExpanded:{type:"string",description:r(12953,"The folder icon for expanded root folders. The expanded root folder icon is optional. If not set, the icon defined for root folder will be shown.")},rootFolderNames:{type:"object",description:r(12954,"Associates root folder names to icons. The object key is the root folder name. No patterns or wildcards are allowed. Root folder name matching is case insensitive."),additionalProperties:{type:"string",description:r(12955,"The ID of the icon definition for the association.")}},rootFolderNamesExpanded:{type:"object",description:r(12956,"Associates root folder names to icons for expanded root folders. The object key is the root folder name. No patterns or wildcards are allowed. Root folder name matching is case insensitive."),additionalProperties:{type:"string",description:r(12957,"The ID of the icon definition for the association.")}},folderNames:{type:"object",description:r(12958,"Associates folder names to icons. The object key is the folder name, not including any path segments. No patterns or wildcards are allowed. Folder name matching is case insensitive."),additionalProperties:{type:"string",description:r(12955,"The ID of the icon definition for the association.")}},folderNamesExpanded:{type:"object",description:r(12959,"Associates folder names to icons for expanded folders. The object key is the folder name, not including any path segments. No patterns or wildcards are allowed. Folder name matching is case insensitive."),additionalProperties:{type:"string",description:r(12960,"The ID of the icon definition for the association.")}},fileExtensions:{type:"object",description:r(12961,"Associates file extensions to icons. The object key is the file extension name. The extension name is the last segment of a file name after the last dot (not including the dot). Extensions are compared case insensitive."),additionalProperties:{type:"string",description:r(12962,"The ID of the icon definition for the association.")}},fileNames:{type:"object",description:r(12963,"Associates file names to icons. The object key is the full file name, but not including any path segments. File name can include dots and a possible file extension. No patterns or wildcards are allowed. File name matching is case insensitive."),additionalProperties:{type:"string",description:r(12964,"The ID of the icon definition for the association.")}},languageIds:{type:"object",description:r(12965,"Associates languages to icons. The object key is the language id as defined in the language contribution point."),additionalProperties:{type:"string",description:r(12966,"The ID of the icon definition for the association.")}},associations:{type:"object",properties:{folderExpanded:{$ref:"#/definitions/folderExpanded"},folder:{$ref:"#/definitions/folder"},file:{$ref:"#/definitions/file"},folderNames:{$ref:"#/definitions/folderNames"},folderNamesExpanded:{$ref:"#/definitions/folderNamesExpanded"},rootFolder:{$ref:"#/definitions/rootFolder"},rootFolderExpanded:{$ref:"#/definitions/rootFolderExpanded"},rootFolderNames:{$ref:"#/definitions/rootFolderNames"},rootFolderNamesExpanded:{$ref:"#/definitions/rootFolderNamesExpanded"},fileExtensions:{$ref:"#/definitions/fileExtensions"},fileNames:{$ref:"#/definitions/fileNames"},languageIds:{$ref:"#/definitions/languageIds"}}}},properties:{fonts:{type:"array",description:r(12967,"Fonts that are used in the icon definitions."),items:{type:"object",properties:{id:{type:"string",description:r(12968,"The ID of the font."),pattern:Ue.source,patternErrorMessage:st},src:{type:"array",description:r(12969,"The location of the font."),items:{type:"object",properties:{path:{type:"string",description:r(12970,"The font path, relative to the current file icon theme file.")},format:{type:"string",description:r(12971,"The format of the font."),enum:["woff","woff2","truetype","opentype","embedded-opentype","svg"]}},required:["path","format"]}},weight:{type:"string",description:r(12972,"The weight of the font. See https://developer.mozilla.org/en-US/docs/Web/CSS/font-weight for valid values."),pattern:Ct.source},style:{type:"string",description:r(12973,"The style of the font. See https://developer.mozilla.org/en-US/docs/Web/CSS/font-style for valid values."),pattern:St.source},size:{type:"string",description:r(12974,"The default size of the font. We strongly recommend using a percentage value, for example: 125%."),pattern:rt.source}},required:["id","src"]}},iconDefinitions:{type:"object",description:r(12975,"Description of all icons that can be used when associating files to icons."),additionalProperties:{type:"object",description:r(12976,"An icon definition. The object key is the ID of the definition."),properties:{iconPath:{type:"string",description:r(12977,"When using a SVG or PNG: The path to the image. The path is relative to the icon set file.")},fontCharacter:{type:"string",description:r(12978,"When using a glyph font: The character in the font to use.")},fontColor:{type:"string",format:"color-hex",description:r(12979,"When using a glyph font: The color to use."),pattern:sn.source},fontSize:{type:"string",description:r(12980,"When using a font: The font size in percentage to the text font. If not set, defaults to the size in the font definition."),pattern:rt.source},fontId:{type:"string",description:r(12981,"When using a font: The id of the font. If not set, defaults to the first font definition."),pattern:Ue.source,patternErrorMessage:st}}}},folderExpanded:{$ref:"#/definitions/folderExpanded"},folder:{$ref:"#/definitions/folder"},file:{$ref:"#/definitions/file"},folderNames:{$ref:"#/definitions/folderNames"},folderNamesExpanded:{$ref:"#/definitions/folderNamesExpanded"},rootFolder:{$ref:"#/definitions/rootFolder"},rootFolderExpanded:{$ref:"#/definitions/rootFolderExpanded"},rootFolderNames:{$ref:"#/definitions/rootFolderNames"},rootFolderNamesExpanded:{$ref:"#/definitions/rootFolderNamesExpanded"},fileExtensions:{$ref:"#/definitions/fileExtensions"},fileNames:{$ref:"#/definitions/fileNames"},languageIds:{$ref:"#/definitions/languageIds"},light:{$ref:"#/definitions/associations",description:r(12982,"Optional associations for file icons in light color themes.")},highContrast:{$ref:"#/definitions/associations",description:r(12983,"Optional associations for file icons in high contrast color themes.")},hidesExplorerArrows:{type:"boolean",description:r(12984,"Configures whether the file explorer's arrows should be hidden when this theme is active.")},showLanguageModeIcons:{type:"boolean",description:r(12985,"Configures whether the default language icons should be used if the theme does not define an icon for a language.")}}};function Qo(){oe.as(Tt.JSONContribution).registerSchema(Jo,Yo)}const $=class ${constructor(e,t,o){this.id=e,this.label=t,this.settingsId=o,this.isLoaded=!1,this.hasFileIcons=!1,this.hasFolderIcons=!1,this.hidesExplorerArrows=!1}ensureLoaded(e){return this.isLoaded?Promise.resolve(this.styleSheetContent):this.load(e)}reload(e){return this.load(e)}load(e){return e.load(this)}static fromExtensionTheme(e,t,o){const n=o.extensionId+"-"+e.id,s=e.label||ft(e.path),a=e.id,l=new $(n,s,a);return l.description=e.description,l.location=t,l.extensionData=o,l.watch=e._watch,l.isLoaded=!1,l}static get noIconTheme(){let e=$._noIconTheme;return e||(e=$._noIconTheme=new $("","",null),e.hasFileIcons=!1,e.hasFolderIcons=!1,e.hidesExplorerArrows=!1,e.isLoaded=!0,e.extensionData=void 0,e.watch=!1),e}static createUnloadedTheme(e){const t=new $(e,"","__"+e);return t.isLoaded=!1,t.hasFileIcons=!1,t.hasFolderIcons=!1,t.hidesExplorerArrows=!1,t.extensionData=void 0,t.watch=!1,t}static fromStorageData(e){const t=e.get($.STORAGE_KEY,ge.PROFILE);if(t)try{const o=JSON.parse(t),n=new $("","",null);for(const s in o)switch(s){case"id":case"label":case"description":case"settingsId":case"styleSheetContent":case"hasFileIcons":case"hidesExplorerArrows":case"hasFolderIcons":case"watch":n[s]=o[s];break;case"location":break;case"extensionData":n.extensionData=G.fromJSONObject(o.extensionData);break}return n}catch{return}}toStorage(e){const t=JSON.stringify({id:this.id,label:this.label,description:this.description,settingsId:this.settingsId,styleSheetContent:this.styleSheetContent,hasFileIcons:this.hasFileIcons,hasFolderIcons:this.hasFolderIcons,hidesExplorerArrows:this.hidesExplorerArrows,extensionData:G.toJSONObject(this.extensionData),watch:this.watch});e.store($.STORAGE_KEY,t,ge.PROFILE,ut.MACHINE)}};$.STORAGE_KEY="iconThemeData",$._noIconTheme=null;let X=$;class Xo{constructor(e,t){this.fileService=e,this.languageService=t}load(e){return e.location?this.loadIconThemeDocument(e.location).then(t=>{const o=this.processIconThemeDocument(e.id,e.location,t);return e.styleSheetContent=o.content,e.hasFileIcons=o.hasFileIcons,e.hasFolderIcons=o.hasFolderIcons,e.hidesExplorerArrows=o.hidesExplorerArrows,e.isLoaded=!0,e.styleSheetContent}):Promise.resolve(e.styleSheetContent)}loadIconThemeDocument(e){return this.fileService.readExtensionResource(e).then(t=>{const o=[],n=mt(t,o);return o.length>0?Promise.reject(new Error(r(12891,"Problems parsing file icons file: {0}",o.map(s=>gt(s.error)).join(", ")))):pt(n)!=="object"?Promise.reject(new Error(r(12892,"Invalid format for file icons theme file: Object expected."))):Promise.resolve(n)})}processIconThemeDocument(e,t,o){const n={content:"",hasFileIcons:!1,hasFolderIcons:!1,hidesExplorerArrows:!!o.hidesExplorerArrows};let s=!1;if(!o.iconDefinitions)return n;const a={},l={},c=Ge(t);function h(T){return ne(c,T)}function d(T,R){function S(E,A){if(A){let U=a[A];U||(U=a[A]=new ee),U.push(E)}}if(T){let E=y`.show-file-icons`;R&&(E=y`${R} ${E}`);const A=y`.monaco-tl-twistie.collapsible:not(.collapsed) + .monaco-tl-contents`;T.folder&&(S(y`${E} .folder-icon::before`,T.folder),n.hasFolderIcons=!0),T.folderExpanded&&(S(y`${E} ${A} .folder-icon::before`,T.folderExpanded),n.hasFolderIcons=!0);const U=T.rootFolder||T.folder,F=T.rootFolderExpanded||T.folderExpanded;U&&(S(y`${E} .rootfolder-icon::before`,U),n.hasFolderIcons=!0),F&&(S(y`${E} ${A} .rootfolder-icon::before`,F),n.hasFolderIcons=!0),T.file&&(S(y`${E} .file-icon::before`,T.file),n.hasFileIcons=!0);const ye=T.folderNames;if(ye)for(const x in ye){const _=new ee,Y=He(x.toLowerCase(),_);_.push(y`.${W(Y)}-name-folder-icon`),S(y`${E} ${_.join("")}.folder-icon::before`,ye[x]),n.hasFolderIcons=!0}const de=T.folderNamesExpanded;if(de)for(const x in de){const _=new ee,Y=He(x.toLowerCase(),_);_.push(y`.${W(Y)}-name-folder-icon`),S(y`${E} ${A} ${_.join("")}.folder-icon::before`,de[x]),n.hasFolderIcons=!0}const Ee=T.rootFolderNames;if(Ee)for(const x in Ee){const _=x.toLowerCase();S(y`${E} .${W(_)}-root-name-folder-icon.rootfolder-icon::before`,Ee[x]),n.hasFolderIcons=!0}const be=T.rootFolderNamesExpanded;if(be)for(const x in be){const _=x.toLowerCase();S(y`${E} ${A} .${W(_)}-root-name-folder-icon.rootfolder-icon::before`,be[x]),n.hasFolderIcons=!0}const J=T.languageIds;if(J){!J.jsonc&&J.json&&(J.jsonc=J.json);for(const x in J)S(y`${E} .${W(x)}-lang-file-icon.file-icon::before`,J[x]),n.hasFileIcons=!0,s=!0,l[x]=!0}const ke=T.fileExtensions;if(ke)for(const x in ke){const _=new ee,Q=He(x.toLowerCase(),_).split(".");if(Q.length){for(let L=0;L<Q.length;L++)_.push(y`.${W(Q.slice(L).join("."))}-ext-file-icon`);_.push(y`.ext-file-icon`)}S(y`${E} ${_.join("")}.file-icon::before`,ke[x]),n.hasFileIcons=!0,s=!0}const Re=T.fileNames;if(Re)for(const x in Re){const _=new ee,Y=He(x.toLowerCase(),_);_.push(y`.${W(Y)}-name-file-icon`),_.push(y`.name-file-icon`);const Q=Y.split(".");if(Q.length){for(let L=1;L<Q.length;L++)_.push(y`.${W(Q.slice(L).join("."))}-ext-file-icon`);_.push(y`.ext-file-icon`)}S(y`${E} ${_.join("")}.file-icon::before`,Re[x]),n.hasFileIcons=!0,s=!0}}}if(d(o),d(o.light,y`.vs`),d(o.highContrast,y`.hc-black`),d(o.highContrast,y`.hc-light`),!n.hasFileIcons&&!n.hasFolderIcons)return n;const f=o.showLanguageModeIcons===!0||s&&o.showLanguageModeIcons!==!1,u=new ee,m=o.fonts,I=new Map;if(Array.isArray(m)){const T=this.tryNormalizeFontSize(m[0].size)||"150%";m.forEach(R=>{const S=new ee;S.push(...R.src.map(A=>y`${Pe(h(A.path))} format(${ue(A.format)})`)),u.push(y`@font-face { src: ${S.join(", ")}; font-family: ${ue(R.id)}; font-weight: ${Dt(R.weight)}; font-style: ${Dt(R.style)}; font-display: block; }`);const E=this.tryNormalizeFontSize(R.size);E!==void 0&&E!==T&&I.set(R.id,E)}),u.push(y`.show-file-icons .file-icon::before, .show-file-icons .folder-icon::before, .show-file-icons .rootfolder-icon::before { font-family: ${ue(m[0].id)}; font-size: ${At(T)}; }`)}const p=ue("\\2001");for(const T in a){const R=a[T],S=o.iconDefinitions[T];if(S){if(S.iconPath)u.push(y`${R.join(", ")} { content: ${p}; background-image: ${Pe(h(S.iconPath))}; }`);else if(S.fontCharacter||S.fontColor){const E=new ee;S.fontColor&&S.fontColor.match(sn)&&E.push(y`color: ${Gn(S.fontColor)};`),S.fontCharacter&&E.push(y`content: ${ue(S.fontCharacter)};`);const A=S.fontSize??(S.fontId?I.get(S.fontId):void 0);A&&A.match(rt)&&E.push(y`font-size: ${At(A)};`),S.fontId&&E.push(y`font-family: ${ue(S.fontId)};`),f&&E.push(y`background-image: unset;`),u.push(y`${R.join(", ")} { ${E.join(" ")} }`)}}}if(f){for(const T of this.languageService.getRegisteredLanguageIds())if(!l[T]){const R=this.languageService.getIcon(T);if(R){const S=y`.show-file-icons .${W(T)}-lang-file-icon.file-icon::before`;u.push(y`${S} { content: ${p}; background-image: ${Pe(R.dark)}; }`),u.push(y`.vs ${S} { content: ${p}; background-image: ${Pe(R.light)}; }`)}}}return n.content=u.join(`
|
|
2
2
|
`),n}tryNormalizeFontSize(e){if(!e)return;const t=13;if(e.endsWith("px")){const o=parseInt(e,10);if(!isNaN(o))return Math.round(o/t*100)+"%"}return e}}function He(i,e){const t=i.lastIndexOf("/");if(t>=0){const o=i.substring(0,t);return e.push(y`.${W(o)}-name-dir-icon`),i.substring(t+1)}return i}function W(i){return i=Un(i),Kn(i,!0)}const Yt=["comment","comment.block","comment.block.documentation","comment.line","constant","constant.character","constant.character.escape","constant.numeric","constant.numeric.integer","constant.numeric.float","constant.numeric.hex","constant.numeric.octal","constant.other","constant.regexp","constant.rgb-value","emphasis","entity","entity.name","entity.name.class","entity.name.function","entity.name.method","entity.name.section","entity.name.selector","entity.name.tag","entity.name.type","entity.other","entity.other.attribute-name","entity.other.inherited-class","invalid","invalid.deprecated","invalid.illegal","keyword","keyword.control","keyword.operator","keyword.operator.new","keyword.operator.assignment","keyword.operator.arithmetic","keyword.operator.logical","keyword.other","markup","markup.bold","markup.changed","markup.deleted","markup.heading","markup.inline.raw","markup.inserted","markup.italic","markup.list","markup.list.numbered","markup.list.unnumbered","markup.other","markup.quote","markup.raw","markup.underline","markup.underline.link","meta","meta.block","meta.cast","meta.class","meta.function","meta.function-call","meta.preprocessor","meta.return-type","meta.selector","meta.tag","meta.type.annotation","meta.type","punctuation.definition.string.begin","punctuation.definition.string.end","punctuation.separator","punctuation.separator.continuation","punctuation.terminator","storage","storage.modifier","storage.type","string","string.interpolated","string.other","string.quoted","string.quoted.double","string.quoted.other","string.quoted.single","string.quoted.triple","string.regexp","string.unquoted","strong","support","support.class","support.constant","support.function","support.other","support.type","support.type.property-name","support.variable","variable","variable.language","variable.name","variable.other","variable.other.readwrite","variable.parameter"],Ve="vscode://schemas/textmate-colors",Zo=`${Ve}#/definitions/colorGroup`,ei={type:"array",definitions:{colorGroup:{default:"#FF0000",anyOf:[{type:"string",format:"color-hex"},{$ref:"#/definitions/settings"}]},settings:{type:"object",description:r(12936,"Colors and styles for the token."),properties:{foreground:{type:"string",description:r(12937,"Foreground color for the token."),format:"color-hex",default:"#ff0000"},background:{type:"string",deprecationMessage:r(12938,"Token background colors are currently not supported.")},fontStyle:{type:"string",description:r(12939,"Font style of the rule: 'italic', 'bold', 'underline', 'strikethrough' or a combination. The empty string unsets inherited settings."),pattern:"^(\\s*\\b(italic|bold|underline|strikethrough))*\\s*$",patternErrorMessage:r(12940,"Font style must be 'italic', 'bold', 'underline', 'strikethrough' or a combination or the empty string."),defaultSnippets:[{label:r(12941,"None (clear inherited style)"),bodyText:'""'},{body:"italic"},{body:"bold"},{body:"underline"},{body:"strikethrough"},{body:"italic bold"},{body:"italic underline"},{body:"italic strikethrough"},{body:"bold underline"},{body:"bold strikethrough"},{body:"underline strikethrough"},{body:"italic bold underline"},{body:"italic bold strikethrough"},{body:"italic underline strikethrough"},{body:"bold underline strikethrough"},{body:"italic bold underline strikethrough"}]}},additionalProperties:!1,defaultSnippets:[{body:{foreground:"${1:#FF0000}",fontStyle:"${2:bold}"}}]}},items:{type:"object",defaultSnippets:[{body:{scope:"${1:keyword.operator}",settings:{foreground:"${2:#FF0000}"}}}],properties:{name:{type:"string",description:r(12942,"Description of the rule.")},scope:{description:r(12943,"Scope selector against which this rule matches."),anyOf:[{enum:Yt},{type:"string"},{type:"array",items:{enum:Yt}},{type:"array",items:{type:"string"}}]},settings:{$ref:"#/definitions/settings"}},required:["settings"],additionalProperties:!1}},Sn="vscode://schemas/color-theme",ti={type:"object",allowComments:!0,allowTrailingCommas:!0,properties:{colors:{description:r(12944,"Colors in the workbench"),$ref:It,additionalProperties:!1},tokenColors:{anyOf:[{type:"string",description:r(12945,"Path to a tmTheme file (relative to the current file).")},{description:r(12946,"Colors for syntax highlighting"),$ref:Ve}]},semanticHighlighting:{type:"boolean",description:r(12947,"Whether semantic highlighting should be enabled for this theme.")},semanticTokenColors:{type:"object",description:r(12948,"Colors for semantic tokens"),$ref:mn}}};function ni(){const i=oe.as(Tt.JSONContribution);i.registerSchema(Sn,ti),i.registerSchema(Ve,ei)}function oi(){return yt.registerExtensionPoint({extensionPoint:"themes",jsonSchema:{description:r(13038,"Contributes textmate color themes."),type:"array",items:{type:"object",defaultSnippets:[{body:{label:"${1:label}",id:"${2:id}",uiTheme:H.VS_DARK,path:"./themes/${3:id}.tmTheme."}}],properties:{id:{description:r(13039,"Id of the color theme as used in the user settings."),type:"string"},label:{description:r(13040,"Label of the color theme as shown in the UI."),type:"string"},uiTheme:{description:r(13041,"Base theme defining the colors around the editor: 'vs' is the light color theme, 'vs-dark' is the dark color theme. 'hc-black' is the dark high contrast theme, 'hc-light' is the light high contrast theme."),enum:[H.VS,H.VS_DARK,H.HC_BLACK,H.HC_LIGHT]},path:{description:r(13042,"Path of the tmTheme file. The path is relative to the extension folder and is typically './colorthemes/awesome-color-theme.json'."),type:"string"}},required:["path","uiTheme"]}}})}function ii(){return yt.registerExtensionPoint({extensionPoint:"iconThemes",jsonSchema:{description:r(13043,"Contributes file icon themes."),type:"array",items:{type:"object",defaultSnippets:[{body:{id:"${1:id}",label:"${2:label}",path:"./fileicons/${3:id}-icon-theme.json"}}],properties:{id:{description:r(13044,"Id of the file icon theme as used in the user settings."),type:"string"},label:{description:r(13045,"Label of the file icon theme as shown in the UI."),type:"string"},path:{description:r(13046,"Path of the file icon theme definition file. The path is relative to the extension folder and is typically './fileicons/awesome-icon-theme.json'."),type:"string"}},required:["path","id"]}}})}function si(){return yt.registerExtensionPoint({extensionPoint:"productIconThemes",jsonSchema:{description:r(13047,"Contributes product icon themes."),type:"array",items:{type:"object",defaultSnippets:[{body:{id:"${1:id}",label:"${2:label}",path:"./producticons/${3:id}-product-icon-theme.json"}}],properties:{id:{description:r(13048,"Id of the product icon theme as used in the user settings."),type:"string"},label:{description:r(13049,"Label of the product icon theme as shown in the UI."),type:"string"},path:{description:r(13050,"Path of the product icon theme definition file. The path is relative to the extension folder and is typically './producticons/awesome-product-icon-theme.json'."),type:"string"}},required:["path","id"]}}})}class ri extends an{constructor(){super(...arguments),this.type="markdown"}shouldRender(e){return!!e.contributes?.themes||!!e.contributes?.iconThemes||!!e.contributes?.productIconThemes}render(e){const t=new Wn;if(e.contributes?.themes){t.appendMarkdown(`### ${r(13051,"Color Themes")}
|
|
3
3
|
|
|
4
4
|
`);for(const o of e.contributes.themes)t.appendMarkdown(`- ${o.label}
|