@emailmaker/emailmaker 1.0.97 → 1.0.98

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (185) hide show
  1. package/README.md +1 -1
  2. package/iframe/429.js +1 -1
  3. package/iframe/766.js +1 -1
  4. package/iframe/iframe-eblock.441a4dbc4384f20fcf1e.html +1 -0
  5. package/iframe/iframe.441a4dbc4384f20fcf1e.html +1 -0
  6. package/iframe/js/330.378aec42.js +1 -0
  7. package/iframe/js/{826.c93ee277.js.LICENSE.txt → 330.378aec42.js.LICENSE.txt} +1 -1
  8. package/iframe/sandbox-eblock.js +1 -1
  9. package/iframe/sandbox.js +1 -1
  10. package/package.json +1 -1
  11. package/react/index.js +1 -1
  12. package/react/index.mjs +1 -1
  13. package/translations.pot +267 -250
  14. package/asset-manifest.json +0 -165
  15. package/css.worker.js +0 -2
  16. package/css.worker.js.LICENSE.txt +0 -6
  17. package/editor.worker.js +0 -1
  18. package/emailmaker-esm.js +0 -1
  19. package/emailmaker.d.ts +0 -1826
  20. package/emailmaker.js +0 -1
  21. package/html.worker.js +0 -2
  22. package/html.worker.js.LICENSE.txt +0 -14
  23. package/iframe/iframe-eblock.e8d51b90ab45966000c9.html +0 -1
  24. package/iframe/iframe.e8d51b90ab45966000c9.html +0 -1
  25. package/iframe/js/826.c93ee277.js +0 -1
  26. package/plugin.html +0 -294
  27. package/plugin_blocks_test.html +0 -144
  28. package/plugin_default.html +0 -56
  29. package/plugin_idigital.html +0 -254
  30. package/plugin_nota.html +0 -861
  31. package/plugin_s.html +0 -31
  32. package/static/css/57.3f9e7de8.chunk.css +0 -1
  33. package/static/css/578.fe5765dd.chunk.css +0 -1
  34. package/static/css/6501.e131603e.chunk.css +0 -1
  35. package/static/css/6798.94b6a519.chunk.css +0 -1
  36. package/static/css/8084.15f07f40.chunk.css +0 -1
  37. package/static/js/1303.f6ad7f62.js +0 -2
  38. package/static/js/1303.f6ad7f62.js.LICENSE.txt +0 -11
  39. package/static/js/1538.7a45fa30.chunk.js +0 -2
  40. package/static/js/1538.7a45fa30.chunk.js.LICENSE.txt +0 -23
  41. package/static/js/1654.d922b07e.js +0 -2
  42. package/static/js/1654.d922b07e.js.LICENSE.txt +0 -38
  43. package/static/js/1729.a0be903e.chunk.js +0 -1
  44. package/static/js/1880.a21db601.chunk.js +0 -1
  45. package/static/js/2642.b60a63f6.chunk.js +0 -1
  46. package/static/js/2715.c21845e3.js +0 -2
  47. package/static/js/2715.c21845e3.js.LICENSE.txt +0 -59
  48. package/static/js/3017.6335b77e.chunk.js +0 -1
  49. package/static/js/3019.aaa6d087.chunk.js +0 -2
  50. package/static/js/3019.aaa6d087.chunk.js.LICENSE.txt +0 -6
  51. package/static/js/3085.b9d27236.chunk.js +0 -2
  52. package/static/js/3085.b9d27236.chunk.js.LICENSE.txt +0 -54
  53. package/static/js/3220.db24c24f.js +0 -2
  54. package/static/js/3220.db24c24f.js.LICENSE.txt +0 -39
  55. package/static/js/4309.ae8e4ad0.chunk.js +0 -1
  56. package/static/js/4972.264e4569.js +0 -1
  57. package/static/js/5346.4aaf9222.chunk.js +0 -2
  58. package/static/js/5346.4aaf9222.chunk.js.LICENSE.txt +0 -6
  59. package/static/js/542.c5e7e839.js +0 -2
  60. package/static/js/542.c5e7e839.js.LICENSE.txt +0 -21
  61. package/static/js/57.4cd2b40e.chunk.js +0 -1
  62. package/static/js/578.068dd4e8.chunk.js +0 -2
  63. package/static/js/578.068dd4e8.chunk.js.LICENSE.txt +0 -6
  64. package/static/js/6144.a3bf0881.chunk.js +0 -2
  65. package/static/js/6144.a3bf0881.chunk.js.LICENSE.txt +0 -6
  66. package/static/js/6419.e52a6158.js +0 -2
  67. package/static/js/6419.e52a6158.js.LICENSE.txt +0 -1
  68. package/static/js/6501.7570e270.chunk.js +0 -1
  69. package/static/js/6798.20c2d528.chunk.js +0 -2
  70. package/static/js/6798.20c2d528.chunk.js.LICENSE.txt +0 -39
  71. package/static/js/6819.85c72c79.chunk.js +0 -2
  72. package/static/js/6819.85c72c79.chunk.js.LICENSE.txt +0 -6
  73. package/static/js/6957.5082b810.chunk.js +0 -1
  74. package/static/js/7463.69864ff5.chunk.js +0 -2
  75. package/static/js/7463.69864ff5.chunk.js.LICENSE.txt +0 -6
  76. package/static/js/8084.5458cfaf.chunk.js +0 -1
  77. package/static/js/8473.54e12d36.chunk.js +0 -2
  78. package/static/js/8473.54e12d36.chunk.js.LICENSE.txt +0 -101
  79. package/static/js/8521.a1623fc2.chunk.js +0 -2
  80. package/static/js/8521.a1623fc2.chunk.js.LICENSE.txt +0 -6
  81. package/static/js/9644.1ae95bb7.chunk.js +0 -2
  82. package/static/js/9644.1ae95bb7.chunk.js.LICENSE.txt +0 -6
  83. package/static/js/9960.218c70ae.chunk.js +0 -2
  84. package/static/js/9960.218c70ae.chunk.js.LICENSE.txt +0 -30
  85. package/static/js/9981.656d52eb.js +0 -1
  86. package/static/js/ant-locale/locale-ar_EG-js.a1f4a2ee.chunk.js +0 -1
  87. package/static/js/ant-locale/locale-az_AZ-js.1b3f2ec6.chunk.js +0 -1
  88. package/static/js/ant-locale/locale-bg_BG-js.2f68d816.chunk.js +0 -1
  89. package/static/js/ant-locale/locale-bn_BD-js.38ca14cb.chunk.js +0 -1
  90. package/static/js/ant-locale/locale-by_BY-js.927570db.chunk.js +0 -1
  91. package/static/js/ant-locale/locale-ca_ES-js.e4bdfa2b.chunk.js +0 -1
  92. package/static/js/ant-locale/locale-cs_CZ-js.f1151015.chunk.js +0 -1
  93. package/static/js/ant-locale/locale-da_DK-js.33e12cfb.chunk.js +0 -1
  94. package/static/js/ant-locale/locale-de_DE-js.42497042.chunk.js +0 -1
  95. package/static/js/ant-locale/locale-el_GR-js.007d40b4.chunk.js +0 -1
  96. package/static/js/ant-locale/locale-en_GB-js.6756ba01.chunk.js +0 -1
  97. package/static/js/ant-locale/locale-es_ES-js.43424efe.chunk.js +0 -1
  98. package/static/js/ant-locale/locale-et_EE-js.3694348e.chunk.js +0 -1
  99. package/static/js/ant-locale/locale-eu_ES-js.e2678a29.chunk.js +0 -1
  100. package/static/js/ant-locale/locale-fa_IR-js.3b6bfddc.chunk.js +0 -1
  101. package/static/js/ant-locale/locale-fi_FI-js.8e749864.chunk.js +0 -1
  102. package/static/js/ant-locale/locale-fr_BE-js.2aec36ca.chunk.js +0 -1
  103. package/static/js/ant-locale/locale-fr_CA-js.ba00ca3a.chunk.js +0 -1
  104. package/static/js/ant-locale/locale-fr_FR-js.1e6d0a10.chunk.js +0 -1
  105. package/static/js/ant-locale/locale-ga_IE-js.cc1f0f56.chunk.js +0 -1
  106. package/static/js/ant-locale/locale-gl_ES-js.c1588dec.chunk.js +0 -1
  107. package/static/js/ant-locale/locale-he_IL-js.1be3257a.chunk.js +0 -1
  108. package/static/js/ant-locale/locale-hi_IN-js.8e3ea1dc.chunk.js +0 -1
  109. package/static/js/ant-locale/locale-hr_HR-js.94001d08.chunk.js +0 -1
  110. package/static/js/ant-locale/locale-hu_HU-js.50a3ffc6.chunk.js +0 -1
  111. package/static/js/ant-locale/locale-hy_AM-js.6b20bceb.chunk.js +0 -1
  112. package/static/js/ant-locale/locale-id_ID-js.b380cc8b.chunk.js +0 -1
  113. package/static/js/ant-locale/locale-is_IS-js.995979c0.chunk.js +0 -1
  114. package/static/js/ant-locale/locale-it_IT-js.46a8ce6d.chunk.js +0 -1
  115. package/static/js/ant-locale/locale-ja_JP-js.69f9da33.chunk.js +0 -1
  116. package/static/js/ant-locale/locale-ka_GE-js.8b08646c.chunk.js +0 -1
  117. package/static/js/ant-locale/locale-kk_KZ-js.a1cc2ddc.chunk.js +0 -1
  118. package/static/js/ant-locale/locale-km_KH-js.09c630f9.chunk.js +0 -1
  119. package/static/js/ant-locale/locale-kmr_IQ-js.c25f3afa.chunk.js +0 -1
  120. package/static/js/ant-locale/locale-kn_IN-js.40066823.chunk.js +0 -1
  121. package/static/js/ant-locale/locale-ko_KR-js.68047848.chunk.js +0 -1
  122. package/static/js/ant-locale/locale-ku_IQ-js.594553b1.chunk.js +0 -1
  123. package/static/js/ant-locale/locale-lt_LT-js.08ac662b.chunk.js +0 -1
  124. package/static/js/ant-locale/locale-lv_LV-js.2a33af61.chunk.js +0 -1
  125. package/static/js/ant-locale/locale-mk_MK-js.caa088c9.chunk.js +0 -1
  126. package/static/js/ant-locale/locale-ml_IN-js.3aa233eb.chunk.js +0 -1
  127. package/static/js/ant-locale/locale-mn_MN-js.2550caa5.chunk.js +0 -1
  128. package/static/js/ant-locale/locale-ms_MY-js.924bfbf0.chunk.js +0 -1
  129. package/static/js/ant-locale/locale-my_MM-js.bc3805ae.chunk.js +0 -1
  130. package/static/js/ant-locale/locale-nb_NO-js.471cc88a.chunk.js +0 -1
  131. package/static/js/ant-locale/locale-ne_NP-js.52b65a1a.chunk.js +0 -1
  132. package/static/js/ant-locale/locale-nl_BE-js.2af0a7fe.chunk.js +0 -1
  133. package/static/js/ant-locale/locale-nl_NL-js.453457a0.chunk.js +0 -1
  134. package/static/js/ant-locale/locale-pl_PL-js.1e4b27da.chunk.js +0 -1
  135. package/static/js/ant-locale/locale-pt_BR-js.75dc6403.chunk.js +0 -1
  136. package/static/js/ant-locale/locale-pt_PT-js.b07438c3.chunk.js +0 -1
  137. package/static/js/ant-locale/locale-ro_RO-js.4a05dc9d.chunk.js +0 -1
  138. package/static/js/ant-locale/locale-si_LK-js.3b54f4c4.chunk.js +0 -1
  139. package/static/js/ant-locale/locale-sk_SK-js.cd76b6b1.chunk.js +0 -1
  140. package/static/js/ant-locale/locale-sl_SI-js.8afbce30.chunk.js +0 -1
  141. package/static/js/ant-locale/locale-sr_RS-js.0708405f.chunk.js +0 -1
  142. package/static/js/ant-locale/locale-sv_SE-js.9f47a065.chunk.js +0 -1
  143. package/static/js/ant-locale/locale-ta_IN-js.3b46361c.chunk.js +0 -1
  144. package/static/js/ant-locale/locale-th_TH-js.83e732d3.chunk.js +0 -1
  145. package/static/js/ant-locale/locale-tk_TK-js.63d0b187.chunk.js +0 -1
  146. package/static/js/ant-locale/locale-tr_TR-js.b5e42917.chunk.js +0 -1
  147. package/static/js/ant-locale/locale-uk_UA-js.ef0d8c8e.chunk.js +0 -1
  148. package/static/js/ant-locale/locale-ur_PK-js.904c3e1c.chunk.js +0 -1
  149. package/static/js/ant-locale/locale-vi_VN-js.f0324229.chunk.js +0 -1
  150. package/static/js/ant-locale/locale-zh_CN-js.428a6bc7.chunk.js +0 -1
  151. package/static/js/ant-locale/locale-zh_HK-js.0feb368f.chunk.js +0 -1
  152. package/static/js/ant-locale/locale-zh_TW-js.163140fa.chunk.js +0 -1
  153. package/static/js/emailmaker_core.596eeeca.js +0 -2
  154. package/static/js/emailmaker_core.596eeeca.js.LICENSE.txt +0 -23
  155. package/static/js/mergeTags/locale0.594765fd.chunk.js +0 -1
  156. package/static/js/mergeTags/locale1.7a79e21e.chunk.js +0 -1
  157. package/static/media/ai-image.7c42c2e12001ebf31881.png +0 -0
  158. package/static/media/codicon.f13d28f3e470ec5c0896.ttf +0 -0
  159. package/static/media/empty-image.1827d6561f3c4042dfb3.png +0 -0
  160. package/static/media/fb.ff10384394f8044ec889.png +0 -0
  161. package/static/media/frame_dark.318d7ed53535d80662dc.png +0 -0
  162. package/static/media/frame_light.22a9b4ec728365d8193f.png +0 -0
  163. package/static/media/frame_template_gallery.85693b3950e7689fb3a5.png +0 -0
  164. package/static/media/icon-border-radius.2a56b93a7711558098a622296b7ae2e1.svg +0 -1
  165. package/static/media/icon-create-block.0b077f4000bf7907b9ea871d28c7fb1e.svg +0 -1
  166. package/static/media/icon-menu-block-welcome.1c534a003522feadd2e7.png +0 -0
  167. package/static/media/ig.47a89992b4bec92d4364.png +0 -0
  168. package/static/media/project-email-back-dark.9916625a9a714830b770.svg +0 -29
  169. package/static/media/project-email-back.0ce470def19ce7c063e0.svg +0 -29
  170. package/static/media/sign_up_01.333271584216122b89ba.png +0 -0
  171. package/static/media/sign_up_01_blocks.5538cfdb90d4869794dc.png +0 -0
  172. package/static/media/sign_up_02.d99d2aa6bf1ea74f01fa.png +0 -0
  173. package/static/media/sign_up_02_blocks.837fc2c9a9461fda13be.png +0 -0
  174. package/static/media/sign_up_03.5545ffad60a2cb5e0336.png +0 -0
  175. package/static/media/sign_up_03_blocks.126601f7a6fbea4b6c54.png +0 -0
  176. package/static/media/sign_up_04.398a4ca50d5f5b3cd837.png +0 -0
  177. package/static/media/sign_up_04_blocks.255c5c07b23cbcc256fd.png +0 -0
  178. package/static/media/sign_up_05.4c58df1be2edaa79d52b.png +0 -0
  179. package/static/media/sign_up_05_blocks.431b6844fdf3e14642c2.png +0 -0
  180. package/static/media/tg.10f004529a98df9732b9.png +0 -0
  181. package/static/media/tw.823a7736ac2d82815c71.png +0 -0
  182. package/static/media/video.854adea50295d0a3f7ae.png +0 -0
  183. package/static/media/vk.fe41df919f4e8718e0b3.png +0 -0
  184. package/static/media/yd.c40d05dde64ef695fdf2.png +0 -0
  185. package/static/media/yt.4ac57e55d158b40c7fc1.png +0 -0
@@ -1 +0,0 @@
1
- "use strict";(globalThis.webpackChunkemail_maker=globalThis.webpackChunkemail_maker||[]).push([[4972],{65698:(e,t,i)=>{i.d(t,{I:()=>_,r:()=>d});var n=i(72142),r=i(55977);const s=/^\w[\w\d+.-]*$/,o=/^\//,a=/^\/\//;function l(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&&!s.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!o.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(a.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 ("//")')}const h="",c="/",u=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class d{constructor(e,t,i,n,r,s=!1){"object"===typeof e?(this.scheme=e.scheme||h,this.authority=e.authority||h,this.path=e.path||h,this.query=e.query||h,this.fragment=e.fragment||h):(this.scheme=function(e,t){return e||t?e:"file"}(e,s),this.authority=t||h,this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==c&&(t=c+t):t=c}return t}(this.scheme,i||h),this.query=n||h,this.fragment=r||h,l(this,s))}static isUri(e){return e instanceof d||!!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)}get fsPath(){return _(this,!1)}with(e){if(!e)return this;let{scheme:t,authority:i,path:n,query:r,fragment:s}=e;return void 0===t?t=this.scheme:null===t&&(t=h),void 0===i?i=this.authority:null===i&&(i=h),void 0===n?n=this.path:null===n&&(n=h),void 0===r?r=this.query:null===r&&(r=h),void 0===s?s=this.fragment:null===s&&(s=h),t===this.scheme&&i===this.authority&&n===this.path&&r===this.query&&s===this.fragment?this:new f(t,i,n,r,s)}static parse(e,t=!1){const i=u.exec(e);return i?new f(i[2]||h,y(i[4]||h),y(i[5]||h),y(i[7]||h),y(i[9]||h),t):new f(h,h,h,h,h)}static file(e){let t=h;if(r.uF&&(e=e.replace(/\\/g,c)),e[0]===c&&e[1]===c){const i=e.indexOf(c,2);-1===i?(t=e.substring(2),e=c):(t=e.substring(2,i),e=e.substring(i)||c)}return new f("file",t,e,h,h)}static from(e){const t=new f(e.scheme,e.authority,e.path,e.query,e.fragment);return l(t,!0),t}static joinPath(e,...t){if(!e.path)throw new Error("[UriError]: cannot call joinPath on URI without path");let i;return i=r.uF&&"file"===e.scheme?d.file(n.IN.join(_(e,!0),...t)).path:n.SA.join(e.path,...t),e.with({path:i})}toString(e=!1){return b(this,e)}toJSON(){return this}static revive(e){if(e){if(e instanceof d)return e;{const t=new f(e);return t._formatted=e.external,t._fsPath=e._sep===g?e.fsPath:null,t}}return e}}const g=r.uF?1:void 0;class f extends d{constructor(){super(...arguments),this._formatted=null,this._fsPath=null}get fsPath(){return this._fsPath||(this._fsPath=_(this,!1)),this._fsPath}toString(e=!1){return e?b(this,!0):(this._formatted||(this._formatted=b(this,!1)),this._formatted)}toJSON(){const e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=g),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 p={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 m(e,t){let i,n=-1;for(let r=0;r<e.length;r++){const s=e.charCodeAt(r);if(s>=97&&s<=122||s>=65&&s<=90||s>=48&&s<=57||45===s||46===s||95===s||126===s||t&&47===s)-1!==n&&(i+=encodeURIComponent(e.substring(n,r)),n=-1),void 0!==i&&(i+=e.charAt(r));else{void 0===i&&(i=e.substr(0,r));const t=p[s];void 0!==t?(-1!==n&&(i+=encodeURIComponent(e.substring(n,r)),n=-1),i+=t):-1===n&&(n=r)}}return-1!==n&&(i+=encodeURIComponent(e.substring(n))),void 0!==i?i:e}function k(e){let t;for(let i=0;i<e.length;i++){const n=e.charCodeAt(i);35===n||63===n?(void 0===t&&(t=e.substr(0,i)),t+=p[n]):void 0!==t&&(t+=e[i])}return void 0!==t?t:e}function _(e,t){let i;return i=e.authority&&e.path.length>1&&"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,r.uF&&(i=i.replace(/\//g,"\\")),i}function b(e,t){const i=t?k:m;let n="",{scheme:r,authority:s,path:o,query:a,fragment:l}=e;if(r&&(n+=r,n+=":"),(s||"file"===r)&&(n+=c,n+=c),s){let e=s.indexOf("@");if(-1!==e){const t=s.substr(0,e);s=s.substr(e+1),e=t.indexOf(":"),-1===e?n+=i(t,!1):(n+=i(t.substr(0,e),!1),n+=":",n+=i(t.substr(e+1),!1)),n+="@"}s=s.toLowerCase(),e=s.indexOf(":"),-1===e?n+=i(s,!1):(n+=i(s.substr(0,e),!1),n+=s.substr(e))}if(o){if(o.length>=3&&47===o.charCodeAt(0)&&58===o.charCodeAt(2)){const e=o.charCodeAt(1);e>=65&&e<=90&&(o=`/${String.fromCharCode(e+32)}:${o.substr(3)}`)}else if(o.length>=2&&58===o.charCodeAt(1)){const e=o.charCodeAt(0);e>=65&&e<=90&&(o=`${String.fromCharCode(e+32)}:${o.substr(2)}`)}n+=i(o,!0)}return a&&(n+="?",n+=i(a,!1)),l&&(n+="#",n+=t?l:m(l,!1)),n}function C(e){try{return decodeURIComponent(e)}catch(t){return e.length>3?e.substr(0,3)+C(e.substr(3)):e}}const v=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function y(e){return e.match(v)?e.replace(v,(e=>C(e))):e}},58775:(e,t,i)=>{i.d(t,{IR:()=>u,gk:()=>_});var n=i(75909),r=i(42464),s=i(55808),o=i(55977),a=i(59713),l=i(24638);const h="$initialize";let c=!1;function u(e){o.HZ&&(c||(c=!0))}class d{constructor(e,t,i,n){this.vsWorker=e,this.req=t,this.method=i,this.args=n,this.type=0}}class g{constructor(e,t,i,n){this.vsWorker=e,this.seq=t,this.res=i,this.err=n,this.type=1}}class f{constructor(e,t,i,n){this.vsWorker=e,this.req=t,this.eventName=i,this.arg=n,this.type=2}}class p{constructor(e,t,i){this.vsWorker=e,this.req=t,this.event=i,this.type=3}}class m{constructor(e,t){this.vsWorker=e,this.req=t,this.type=4}}class k{constructor(e){this._workerId=-1,this._handler=e,this._lastSentReq=0,this._pendingReplies=Object.create(null),this._pendingEmitters=new Map,this._pendingEvents=new Map}setWorkerId(e){this._workerId=e}sendMessage(e,t){const i=String(++this._lastSentReq);return new Promise(((n,r)=>{this._pendingReplies[i]={resolve:n,reject:r},this._send(new d(this._workerId,i,e,t))}))}listen(e,t){let i=null;const n=new r.vl({onFirstListenerAdd:()=>{i=String(++this._lastSentReq),this._pendingEmitters.set(i,n),this._send(new f(this._workerId,i,e,t))},onLastListenerRemove:()=>{this._pendingEmitters.delete(i),this._send(new m(this._workerId,i)),i=null}});return n.event}handleMessage(e){e&&e.vsWorker&&(-1!==this._workerId&&e.vsWorker!==this._workerId||this._handleMessage(e))}_handleMessage(e){switch(e.type){case 1:return this._handleReplyMessage(e);case 0:return this._handleRequestMessage(e);case 2:return this._handleSubscribeEventMessage(e);case 3:return this._handleEventMessage(e);case 4:return this._handleUnsubscribeEventMessage(e)}}_handleReplyMessage(e){if(!this._pendingReplies[e.seq])return;const t=this._pendingReplies[e.seq];if(delete this._pendingReplies[e.seq],e.err){let i=e.err;return e.err.$isError&&(i=new Error,i.name=e.err.name,i.message=e.err.message,i.stack=e.err.stack),void t.reject(i)}t.resolve(e.res)}_handleRequestMessage(e){const t=e.req;this._handler.handleMessage(e.method,e.args).then((e=>{this._send(new g(this._workerId,t,e,void 0))}),(e=>{e.detail instanceof Error&&(e.detail=(0,n.cU)(e.detail)),this._send(new g(this._workerId,t,void 0,(0,n.cU)(e)))}))}_handleSubscribeEventMessage(e){const t=e.req,i=this._handler.handleEvent(e.eventName,e.arg)((e=>{this._send(new p(this._workerId,t,e))}));this._pendingEvents.set(t,i)}_handleEventMessage(e){this._pendingEmitters.has(e.req)&&this._pendingEmitters.get(e.req).fire(e.event)}_handleUnsubscribeEventMessage(e){this._pendingEvents.has(e.req)&&(this._pendingEvents.get(e.req).dispose(),this._pendingEvents.delete(e.req))}_send(e){const t=[];if(0===e.type)for(let i=0;i<e.args.length;i++)e.args[i]instanceof ArrayBuffer&&t.push(e.args[i]);else 1===e.type&&e.res instanceof ArrayBuffer&&t.push(e.res);this._handler.sendMessage(e,t)}}class _ extends s.jG{constructor(e,t,i){super();let n=null;this._worker=this._register(e.create("vs/base/common/worker/simpleWorker",(e=>{this._protocol.handleMessage(e)}),(e=>{null===n||void 0===n||n(e)}))),this._protocol=new k({sendMessage:(e,t)=>{this._worker.postMessage(e,t)},handleMessage:(e,t)=>{if("function"!==typeof i[e])return Promise.reject(new Error("Missing method "+e+" on main thread host."));try{return Promise.resolve(i[e].apply(i,t))}catch(n){return Promise.reject(n)}},handleEvent:(e,t)=>{if(C(e)){const n=i[e].call(i,t);if("function"!==typeof n)throw new Error(`Missing dynamic event ${e} on main thread host.`);return n}if(b(e)){const t=i[e];if("function"!==typeof t)throw new Error(`Missing event ${e} on main thread host.`);return t}throw new Error(`Malformed event name ${e}`)}}),this._protocol.setWorkerId(this._worker.getId());let r=null;"undefined"!==typeof o.zQ.require&&"function"===typeof o.zQ.require.getConfig?r=o.zQ.require.getConfig():"undefined"!==typeof o.zQ.requirejs&&(r=o.zQ.requirejs.s.contexts._.config);const s=a.V0(i);this._onModuleLoaded=this._protocol.sendMessage(h,[this._worker.getId(),JSON.parse(JSON.stringify(r)),t,s]);const l=(e,t)=>this._request(e,t),c=(e,t)=>this._protocol.listen(e,t);this._lazyProxy=new Promise(((e,i)=>{n=i,this._onModuleLoaded.then((t=>{e(v(t,l,c))}),(e=>{i(e),this._onError("Worker failed to load "+t,e)}))}))}getProxyObject(){return this._lazyProxy}_request(e,t){return new Promise(((i,n)=>{this._onModuleLoaded.then((()=>{this._protocol.sendMessage(e,t).then(i,n)}),n)}))}_onError(e,t){}}function b(e){return"o"===e[0]&&"n"===e[1]&&l.Wv(e.charCodeAt(2))}function C(e){return/^onDynamic/.test(e)&&l.Wv(e.charCodeAt(9))}function v(e,t,i){const n=e=>function(){const i=Array.prototype.slice.call(arguments,0);return t(e,i)},r=e=>function(t){return i(e,t)},s={};for(const o of e)C(o)?s[o]=r(o):b(o)?s[o]=i(o,void 0):s[o]=n(o);return s}},64796:(e,t,i)=>{i.d(t,{DX:()=>y,E_:()=>x,Fl:()=>I,HW:()=>E,PF:()=>S,aU:()=>B,dS:()=>n,fE:()=>C,gW:()=>D,ih:()=>N,ke:()=>L,ks:()=>w,tc:()=>A,uB:()=>b,xX:()=>T});var n,r=i(35819),s=i(65698),o=i(88459),a=i(55547),l=i(19724),h=i(92320),c=i(93593),u=i(16281),d=i(21181),g=i(34029),f=i(11563),p=i(1097),m=i(45769),k=i(59713),_=i(91823);class b{constructor(e){this.id=e.id,this.precondition=e.precondition,this._kbOpts=e.kbOpts,this._menuOpts=e.menuOpts,this._description=e.description}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?d.M$.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};f.f.registerKeybindingRule(i)}}u.wb.registerCommand({id:this.id,handler:(e,t)=>this.runCommand(e,t),description:this._description})}_registerMenuItem(e){c.ZG.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 C extends b{constructor(){super(...arguments),this._implementations=[]}addImplementation(e,t,i){return this._implementations.push({priority:e,name:t,implementation:i}),this._implementations.sort(((e,t)=>t.priority-e.priority)),{dispose:()=>{for(let e=0;e<this._implementations.length;e++)if(this._implementations[e].implementation===i)return void this._implementations.splice(e,1)}}}runCommand(e,t){const i=e.get(_.rr);i.trace(`Executing Command '${this.id}' which has ${this._implementations.length} bound.`);for(const n of this._implementations){const r=n.implementation(e,t);if(r){if(i.trace(`Command '${this.id}' was handled by '${n.name}'.`),"boolean"===typeof r)return;return r}}i.trace(`The Command '${this.id}' was not handled by any implementation.`)}}class v extends b{constructor(e,t){super(t),this.command=e}runCommand(e,t){return this.command.runCommand(e,t)}}class y extends b{static bindToContribution(e){return class extends y{constructor(e){super(e),this._callback=e.handler}runEditorCommand(t,i,n){const r=e(i);r&&this._callback(r,n)}}}runCommand(e,t){const i=e.get(o.T),n=i.getFocusedCodeEditor()||i.getActiveCodeEditor();if(n)return n.invokeWithinContext((e=>{if(e.get(d.fN).contextMatchesRules((0,k.UH)(this.precondition)))return this.runEditorCommand(e,n,t)}))}}class w extends y{constructor(e){super(w.convertOptions(e)),this.label=e.label,this.alias=e.alias}static convertOptions(e){let t;function i(t){return t.menuId||(t.menuId=c.D8.EditorContext),t.title||(t.title=e.label),t.when=d.M$.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}runEditorCommand(e,t,i){return this.reportTelemetry(e,t),this.run(e,t,i||{})}reportTelemetry(e,t){e.get(m.k).publicLog2("editorActionInvoked",{name:this.label,id:this.id})}}class S extends w{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<this._implementations.length;e++)if(this._implementations[e][1]===t)return void this._implementations.splice(e,1)}}}run(e,t,i){for(const n of this._implementations){const r=n[1](e,t,i);if(r){if("boolean"===typeof r)return;return r}}}}function L(e,t){u.wb.registerCommand(e,(function(e,...i){const n=e.get(g._Y),[r,o]=i;(0,k.j)(s.r.isUri(r)),(0,k.j)(a.y.isIPosition(o));const c=e.get(l.S).getModel(r);if(c){const e=a.y.lift(o);return n.invokeFunction(t,c,e,...i.slice(2))}return e.get(h.b).createModelReference(r).then((e=>new Promise(((r,s)=>{try{r(n.invokeFunction(t,e.object.textEditorModel,a.y.lift(o),i.slice(2)))}catch(l){s(l)}})).finally((()=>{e.dispose()}))))}))}function x(e){return O.INSTANCE.registerEditorCommand(e),e}function I(e){const t=new e;return O.INSTANCE.registerEditorAction(t),t}function D(e){return O.INSTANCE.registerEditorAction(e),e}function T(e){O.INSTANCE.registerEditorAction(e)}function E(e,t){O.INSTANCE.registerEditorContribution(e,t)}!function(e){e.getEditorCommand=function(e){return O.INSTANCE.getEditorCommand(e)},e.getEditorActions=function(){return O.INSTANCE.getEditorActions()},e.getEditorContributions=function(){return O.INSTANCE.getEditorContributions()},e.getSomeEditorContributions=function(e){return O.INSTANCE.getEditorContributions().filter((t=>e.indexOf(t.id)>=0))},e.getDiffEditorContributions=function(){return O.INSTANCE.getDiffEditorContributions()}}(n||(n={}));class O{constructor(){this.editorContributions=[],this.diffEditorContributions=[],this.editorActions=[],this.editorCommands=Object.create(null)}registerEditorContribution(e,t){this.editorContributions.push({id:e,ctor:t})}getEditorContributions(){return this.editorContributions.slice(0)}getDiffEditorContributions(){return this.diffEditorContributions.slice(0)}registerEditorAction(e){e.register(),this.editorActions.push(e)}getEditorActions(){return this.editorActions.slice(0)}registerEditorCommand(e){e.register(),this.editorCommands[e.id]=e}getEditorCommand(e){return this.editorCommands[e]||null}}function M(e){return e.register(),e}O.INSTANCE=new O,p.O.add("editor.contributions",O.INSTANCE);const B=M(new C({id:"undo",precondition:void 0,kbOpts:{weight:0,primary:2104},menuOpts:[{menuId:c.D8.MenubarEditMenu,group:"1_do",title:r.kg({key:"miUndo",comment:["&& denotes a mnemonic"]},"&&Undo"),order:1},{menuId:c.D8.CommandPalette,group:"",title:r.kg("undo","Undo"),order:1}]}));M(new v(B,{id:"default:undo",precondition:void 0}));const N=M(new C({id:"redo",precondition:void 0,kbOpts:{weight:0,primary:2103,secondary:[3128],mac:{primary:3128}},menuOpts:[{menuId:c.D8.MenubarEditMenu,group:"1_do",title:r.kg({key:"miRedo",comment:["&& denotes a mnemonic"]},"&&Redo"),order:2},{menuId:c.D8.CommandPalette,group:"",title:r.kg("redo","Redo"),order:1}]}));M(new v(N,{id:"default:redo",precondition:void 0}));const A=M(new C({id:"editor.action.selectAll",precondition:void 0,kbOpts:{weight:0,kbExpr:null,primary:2079},menuOpts:[{menuId:c.D8.MenubarSelectionMenu,group:"1_basic",title:r.kg({key:"miSelectAll",comment:["&& denotes a mnemonic"]},"&&Select All"),order:1},{menuId:c.D8.CommandPalette,group:"",title:r.kg("selectAll","Select All"),order:1}]}))},72799:(e,t,i)=>{i.d(t,{cw:()=>l,jN:()=>a,nu:()=>o});var n=i(34029),r=i(65698),s=i(59713);const o=(0,n.u1)("IWorkspaceEditService");class a{constructor(e){this.metadata=e}static convert(e){return e.edits.map((e=>{if(l.is(e))return l.lift(e);if(h.is(e))return h.lift(e);throw new Error("Unsupported edit")}))}}class l extends a{constructor(e,t,i=void 0,n){super(n),this.resource=e,this.textEdit=t,this.versionId=i}static is(e){return e instanceof l||(0,s.Gv)(e)&&r.r.isUri(e.resource)&&(0,s.Gv)(e.textEdit)}static lift(e){return e instanceof l?e:new l(e.resource,e.textEdit,e.versionId,e.metadata)}}class h extends a{constructor(e,t,i={},n){super(n),this.oldResource=e,this.newResource=t,this.options=i}static is(e){return e instanceof h||(0,s.Gv)(e)&&(Boolean(e.newResource)||Boolean(e.oldResource))}static lift(e){return e instanceof h?e:new h(e.oldResource,e.newResource,e.options,e.metadata)}}},88459:(e,t,i)=>{i.d(t,{T:()=>n});const n=(0,i(34029).u1)("codeEditorService")},38572:(e,t,i)=>{i.d(t,{Z6:()=>ne,Bc:()=>X});var n=i(20512),r=i(55808),s=i(58775),o=i(66824),a=i(62915),l=i(10884),h=i(88608),c=i(55977),u=i(65698),d=i(55547),g=i(24638);function f(e,t,i,n){return new h.uP(e,t,i).ComputeDiff(n)}class p{constructor(e){const t=[],i=[];for(let n=0,r=e.length;n<r;n++)t[n]=C(e[n],1),i[n]=v(e[n],1);this.lines=e,this._startColumns=t,this._endColumns=i}getElements(){const e=[];for(let t=0,i=this.lines.length;t<i;t++)e[t]=this.lines[t].substring(this._startColumns[t]-1,this._endColumns[t]-1);return e}getStrictElement(e){return this.lines[e]}getStartLineNumber(e){return e+1}getEndLineNumber(e){return e+1}createCharSequence(e,t,i){const n=[],r=[],s=[];let o=0;for(let a=t;a<=i;a++){const t=this.lines[a],l=e?this._startColumns[a]:1,h=e?this._endColumns[a]:t.length+1;for(let e=l;e<h;e++)n[o]=t.charCodeAt(e-1),r[o]=a+1,s[o]=e,o++;!e&&a<i&&(n[o]=10,r[o]=a+1,s[o]=t.length+1,o++)}return new m(n,r,s)}}class m{constructor(e,t,i){this._charCodes=e,this._lineNumbers=t,this._columns=i}toString(){return"["+this._charCodes.map(((e,t)=>(10===e?"\\n":String.fromCharCode(e))+`-(${this._lineNumbers[t]},${this._columns[t]})`)).join(", ")+"]"}_assertIndex(e,t){if(e<0||e>=t.length)throw new Error("Illegal index")}getElements(){return this._charCodes}getStartLineNumber(e){return e>0&&e===this._lineNumbers.length?this.getEndLineNumber(e-1):(this._assertIndex(e,this._lineNumbers),this._lineNumbers[e])}getEndLineNumber(e){return-1===e?this.getStartLineNumber(e+1):(this._assertIndex(e,this._lineNumbers),10===this._charCodes[e]?this._lineNumbers[e]+1:this._lineNumbers[e])}getStartColumn(e){return e>0&&e===this._columns.length?this.getEndColumn(e-1):(this._assertIndex(e,this._columns),this._columns[e])}getEndColumn(e){return-1===e?this.getStartColumn(e+1):(this._assertIndex(e,this._columns),10===this._charCodes[e]?1:this._columns[e]+1)}}class k{constructor(e,t,i,n,r,s,o,a){this.originalStartLineNumber=e,this.originalStartColumn=t,this.originalEndLineNumber=i,this.originalEndColumn=n,this.modifiedStartLineNumber=r,this.modifiedStartColumn=s,this.modifiedEndLineNumber=o,this.modifiedEndColumn=a}static createFromDiffChange(e,t,i){const n=t.getStartLineNumber(e.originalStart),r=t.getStartColumn(e.originalStart),s=t.getEndLineNumber(e.originalStart+e.originalLength-1),o=t.getEndColumn(e.originalStart+e.originalLength-1),a=i.getStartLineNumber(e.modifiedStart),l=i.getStartColumn(e.modifiedStart),h=i.getEndLineNumber(e.modifiedStart+e.modifiedLength-1),c=i.getEndColumn(e.modifiedStart+e.modifiedLength-1);return new k(n,r,s,o,a,l,h,c)}}class _{constructor(e,t,i,n,r){this.originalStartLineNumber=e,this.originalEndLineNumber=t,this.modifiedStartLineNumber=i,this.modifiedEndLineNumber=n,this.charChanges=r}static createFromDiffResult(e,t,i,n,r,s,o){let a,l,h,c,u;if(0===t.originalLength?(a=i.getStartLineNumber(t.originalStart)-1,l=0):(a=i.getStartLineNumber(t.originalStart),l=i.getEndLineNumber(t.originalStart+t.originalLength-1)),0===t.modifiedLength?(h=n.getStartLineNumber(t.modifiedStart)-1,c=0):(h=n.getStartLineNumber(t.modifiedStart),c=n.getEndLineNumber(t.modifiedStart+t.modifiedLength-1)),s&&t.originalLength>0&&t.originalLength<20&&t.modifiedLength>0&&t.modifiedLength<20&&r()){const s=i.createCharSequence(e,t.originalStart,t.originalStart+t.originalLength-1),a=n.createCharSequence(e,t.modifiedStart,t.modifiedStart+t.modifiedLength-1);if(s.getElements().length>0&&a.getElements().length>0){let e=f(s,a,r,!0).changes;o&&(e=function(e){if(e.length<=1)return e;const t=[e[0]];let i=t[0];for(let n=1,r=e.length;n<r;n++){const r=e[n],s=r.originalStart-(i.originalStart+i.originalLength),o=r.modifiedStart-(i.modifiedStart+i.modifiedLength);Math.min(s,o)<3?(i.originalLength=r.originalStart+r.originalLength-i.originalStart,i.modifiedLength=r.modifiedStart+r.modifiedLength-i.modifiedStart):(t.push(r),i=r)}return t}(e)),u=[];for(let t=0,i=e.length;t<i;t++)u.push(k.createFromDiffChange(e[t],s,a))}}return new _(a,l,h,c,u)}}class b{constructor(e,t,i){this.shouldComputeCharChanges=i.shouldComputeCharChanges,this.shouldPostProcessCharChanges=i.shouldPostProcessCharChanges,this.shouldIgnoreTrimWhitespace=i.shouldIgnoreTrimWhitespace,this.shouldMakePrettyDiff=i.shouldMakePrettyDiff,this.originalLines=e,this.modifiedLines=t,this.original=new p(e),this.modified=new p(t),this.continueLineDiff=y(i.maxComputationTime),this.continueCharDiff=y(0===i.maxComputationTime?0:Math.min(i.maxComputationTime,5e3))}computeDiff(){if(1===this.original.lines.length&&0===this.original.lines[0].length)return 1===this.modified.lines.length&&0===this.modified.lines[0].length?{quitEarly:!1,changes:[]}:{quitEarly:!1,changes:[{originalStartLineNumber:1,originalEndLineNumber:1,modifiedStartLineNumber:1,modifiedEndLineNumber:this.modified.lines.length,charChanges:[{modifiedEndColumn:0,modifiedEndLineNumber:0,modifiedStartColumn:0,modifiedStartLineNumber:0,originalEndColumn:0,originalEndLineNumber:0,originalStartColumn:0,originalStartLineNumber:0}]}]};if(1===this.modified.lines.length&&0===this.modified.lines[0].length)return{quitEarly:!1,changes:[{originalStartLineNumber:1,originalEndLineNumber:this.original.lines.length,modifiedStartLineNumber:1,modifiedEndLineNumber:1,charChanges:[{modifiedEndColumn:0,modifiedEndLineNumber:0,modifiedStartColumn:0,modifiedStartLineNumber:0,originalEndColumn:0,originalEndLineNumber:0,originalStartColumn:0,originalStartLineNumber:0}]}]};const e=f(this.original,this.modified,this.continueLineDiff,this.shouldMakePrettyDiff),t=e.changes,i=e.quitEarly;if(this.shouldIgnoreTrimWhitespace){const e=[];for(let i=0,n=t.length;i<n;i++)e.push(_.createFromDiffResult(this.shouldIgnoreTrimWhitespace,t[i],this.original,this.modified,this.continueCharDiff,this.shouldComputeCharChanges,this.shouldPostProcessCharChanges));return{quitEarly:i,changes:e}}const n=[];let r=0,s=0;for(let o=-1,a=t.length;o<a;o++){const e=o+1<a?t[o+1]:null,i=e?e.originalStart:this.originalLines.length,l=e?e.modifiedStart:this.modifiedLines.length;for(;r<i&&s<l;){const e=this.originalLines[r],t=this.modifiedLines[s];if(e!==t){{let i=C(e,1),o=C(t,1);for(;i>1&&o>1;){if(e.charCodeAt(i-2)!==t.charCodeAt(o-2))break;i--,o--}(i>1||o>1)&&this._pushTrimWhitespaceCharChange(n,r+1,1,i,s+1,1,o)}{let i=v(e,1),o=v(t,1);const a=e.length+1,l=t.length+1;for(;i<a&&o<l;){if(e.charCodeAt(i-1)!==e.charCodeAt(o-1))break;i++,o++}(i<a||o<l)&&this._pushTrimWhitespaceCharChange(n,r+1,i,a,s+1,o,l)}}r++,s++}e&&(n.push(_.createFromDiffResult(this.shouldIgnoreTrimWhitespace,e,this.original,this.modified,this.continueCharDiff,this.shouldComputeCharChanges,this.shouldPostProcessCharChanges)),r+=e.originalLength,s+=e.modifiedLength)}return{quitEarly:i,changes:n}}_pushTrimWhitespaceCharChange(e,t,i,n,r,s,o){if(this._mergeTrimWhitespaceCharChange(e,t,i,n,r,s,o))return;let a;this.shouldComputeCharChanges&&(a=[new k(t,i,t,n,r,s,r,o)]),e.push(new _(t,t,r,r,a))}_mergeTrimWhitespaceCharChange(e,t,i,n,r,s,o){const a=e.length;if(0===a)return!1;const l=e[a-1];return 0!==l.originalEndLineNumber&&0!==l.modifiedEndLineNumber&&(l.originalEndLineNumber+1===t&&l.modifiedEndLineNumber+1===r&&(l.originalEndLineNumber=t,l.modifiedEndLineNumber=r,this.shouldComputeCharChanges&&l.charChanges&&l.charChanges.push(new k(t,i,t,n,r,s,r,o)),!0))}}function C(e,t){const i=g.HG(e);return-1===i?t:i+1}function v(e,t){const i=g.lT(e);return-1===i?t:i+2}function y(e){if(0===e)return()=>!0;const t=Date.now();return()=>Date.now()-t<e}var w=i(9772);class S{constructor(e,t,i,n){this._uri=e,this._lines=t,this._eol=i,this._versionId=n,this._lineStarts=null,this._cachedTextValue=null}dispose(){this._lines.length=0}get version(){return this._versionId}getText(){return null===this._cachedTextValue&&(this._cachedTextValue=this._lines.join(this._eol)),this._cachedTextValue}onEvents(e){e.eol&&e.eol!==this._eol&&(this._eol=e.eol,this._lineStarts=null);const t=e.changes;for(const i of t)this._acceptDeleteRange(i.range),this._acceptInsertText(new d.y(i.range.startLineNumber,i.range.startColumn),i.text);this._versionId=e.versionId,this._cachedTextValue=null}_ensureLineStarts(){if(!this._lineStarts){const e=this._eol.length,t=this._lines.length,i=new Uint32Array(t);for(let n=0;n<t;n++)i[n]=this._lines[n].length+e;this._lineStarts=new w.N(i)}}_setLineText(e,t){this._lines[e]=t,this._lineStarts&&this._lineStarts.setValue(e,this._lines[e].length+this._eol.length)}_acceptDeleteRange(e){if(e.startLineNumber!==e.endLineNumber)this._setLineText(e.startLineNumber-1,this._lines[e.startLineNumber-1].substring(0,e.startColumn-1)+this._lines[e.endLineNumber-1].substring(e.endColumn-1)),this._lines.splice(e.startLineNumber,e.endLineNumber-e.startLineNumber),this._lineStarts&&this._lineStarts.removeValues(e.startLineNumber,e.endLineNumber-e.startLineNumber);else{if(e.startColumn===e.endColumn)return;this._setLineText(e.startLineNumber-1,this._lines[e.startLineNumber-1].substring(0,e.startColumn-1)+this._lines[e.startLineNumber-1].substring(e.endColumn-1))}}_acceptInsertText(e,t){if(0===t.length)return;const i=(0,g.uz)(t);if(1===i.length)return void this._setLineText(e.lineNumber-1,this._lines[e.lineNumber-1].substring(0,e.column-1)+i[0]+this._lines[e.lineNumber-1].substring(e.column-1));i[i.length-1]+=this._lines[e.lineNumber-1].substring(e.column-1),this._setLineText(e.lineNumber-1,this._lines[e.lineNumber-1].substring(0,e.column-1)+i[0]);const n=new Uint32Array(i.length-1);for(let r=1;r<i.length;r++)this._lines.splice(e.lineNumber+r-1,0,i[r]),n[r-1]=i[r].length+this._eol.length;this._lineStarts&&this._lineStarts.insertValues(e.lineNumber,n)}}var L=i(52524),x=i(17924);class I{constructor(e,t,i){const n=new Uint8Array(e*t);for(let r=0,s=e*t;r<s;r++)n[r]=i;this._data=n,this.rows=e,this.cols=t}get(e,t){return this._data[e*this.cols+t]}set(e,t,i){this._data[e*this.cols+t]=i}}class D{constructor(e){let t=0,i=0;for(let r=0,s=e.length;r<s;r++){const[n,s,o]=e[r];s>t&&(t=s),n>i&&(i=n),o>i&&(i=o)}t++,i++;const n=new I(i,t,0);for(let r=0,s=e.length;r<s;r++){const[t,i,s]=e[r];n.set(t,i,s)}this._states=n,this._maxCharCode=t}nextState(e,t){return t<0||t>=this._maxCharCode?0:this._states.get(e,t)}}let T=null;let E=null;class O{static _createLink(e,t,i,n,r){let s=r-1;do{const i=t.charCodeAt(s);if(2!==e.get(i))break;s--}while(s>n);if(n>0){const e=t.charCodeAt(n-1),i=t.charCodeAt(s);(40===e&&41===i||91===e&&93===i||123===e&&125===i)&&s--}return{range:{startLineNumber:i,startColumn:n+1,endLineNumber:i,endColumn:s+2},url:t.substring(n,s+1)}}static computeLinks(e,t=function(){return null===T&&(T=new D([[1,104,2],[1,72,2],[1,102,6],[1,70,6],[2,116,3],[2,84,3],[3,116,4],[3,84,4],[4,112,5],[4,80,5],[5,115,9],[5,83,9],[5,58,10],[6,105,7],[6,73,7],[7,108,8],[7,76,8],[8,101,9],[8,69,9],[9,58,10],[10,47,11],[11,47,12]])),T}()){const i=function(){if(null===E){E=new x.V(0);const e=" \t<>'\"\u3001\u3002\uff61\uff64\uff0c\uff0e\uff1a\uff1b\u2018\u3008\u300c\u300e\u3014\uff08\uff3b\uff5b\uff62\uff63\uff5d\uff3d\uff09\u3015\u300f\u300d\u3009\u2019\uff40\uff5e\u2026";for(let i=0;i<e.length;i++)E.set(e.charCodeAt(i),1);const t=".,;:";for(let i=0;i<t.length;i++)E.set(t.charCodeAt(i),2)}return E}(),n=[];for(let r=1,s=e.getLineCount();r<=s;r++){const s=e.getLineContent(r),o=s.length;let a=0,l=0,h=0,c=1,u=!1,d=!1,g=!1,f=!1;for(;a<o;){let e=!1;const o=s.charCodeAt(a);if(13===c){let t;switch(o){case 40:u=!0,t=0;break;case 41:t=u?0:1;break;case 91:g=!0,d=!0,t=0;break;case 93:g=!1,t=d?0:1;break;case 123:f=!0,t=0;break;case 125:t=f?0:1;break;case 39:t=39===h?1:0;break;case 34:t=34===h?1:0;break;case 96:t=96===h?1:0;break;case 42:t=42===h?1:0;break;case 124:t=124===h?1:0;break;case 32:t=g?0:1;break;default:t=i.get(o)}1===t&&(n.push(O._createLink(i,s,r,l,a)),e=!0)}else if(12===c){let t;91===o?(d=!0,t=0):t=i.get(o),1===t?e=!0:c=13}else c=t.nextState(c,o),0===c&&(e=!0);e&&(c=1,u=!1,d=!1,f=!1,l=a+1,h=o),a++}13===c&&n.push(O._createLink(i,s,r,l,o))}return n}}class M{constructor(){this._defaultValueSet=[["true","false"],["True","False"],["Private","Public","Friend","ReadOnly","Partial","Protected","WriteOnly"],["public","protected","private"]]}navigateValueSet(e,t,i,n,r){if(e&&t){const i=this.doNavigateValueSet(t,r);if(i)return{range:e,value:i}}if(i&&n){const e=this.doNavigateValueSet(n,r);if(e)return{range:i,value:e}}return null}doNavigateValueSet(e,t){const i=this.numberReplace(e,t);return null!==i?i:this.textReplace(e,t)}numberReplace(e,t){const i=Math.pow(10,e.length-(e.lastIndexOf(".")+1));let n=Number(e);const r=parseFloat(e);return isNaN(n)||isNaN(r)||n!==r?null:0!==n||t?(n=Math.floor(n*i),n+=t?i:-i,String(n/i)):null}textReplace(e,t){return this.valueSetsReplace(this._defaultValueSet,e,t)}valueSetsReplace(e,t,i){let n=null;for(let r=0,s=e.length;null===n&&r<s;r++)n=this.valueSetReplace(e[r],t,i);return n}valueSetReplace(e,t,i){let n=e.indexOf(t);return n>=0?(n+=i?1:-1,n<0?n=e.length-1:n%=e.length,e[n]):null}}M.INSTANCE=new M;var B=i(85981),N=i(59713),A=i(3499),F=i(77213),R=function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{l(n.next(e))}catch(t){s(t)}}function a(e){try{l(n.throw(e))}catch(t){s(t)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(o,a)}l((n=n.apply(e,t||[])).next())}))};class P extends S{get uri(){return this._uri}get eol(){return this._eol}getValue(){return this.getText()}getLinesContent(){return this._lines.slice(0)}getLineCount(){return this._lines.length}getLineContent(e){return this._lines[e-1]}getWordAtPosition(e,t){const i=(0,L.Th)(e.column,(0,L.Io)(t),this._lines[e.lineNumber-1],0);return i?new a.Q(e.lineNumber,i.startColumn,e.lineNumber,i.endColumn):null}words(e){const t=this._lines,i=this._wordenize.bind(this);let n=0,r="",s=0,o=[];return{*[Symbol.iterator](){for(;;)if(s<o.length){const e=r.substring(o[s].start,o[s].end);s+=1,yield e}else{if(!(n<t.length))break;r=t[n],o=i(r,e),s=0,n+=1}}}}getLineWords(e,t){const i=this._lines[e-1],n=this._wordenize(i,t),r=[];for(const s of n)r.push({word:i.substring(s.start,s.end),startColumn:s.start+1,endColumn:s.end+1});return r}_wordenize(e,t){const i=[];let n;for(t.lastIndex=0;(n=t.exec(e))&&0!==n[0].length;)i.push({start:n.index,end:n.index+n[0].length});return i}getValueInRange(e){if((e=this._validateRange(e)).startLineNumber===e.endLineNumber)return this._lines[e.startLineNumber-1].substring(e.startColumn-1,e.endColumn-1);const t=this._eol,i=e.startLineNumber-1,n=e.endLineNumber-1,r=[];r.push(this._lines[i].substring(e.startColumn-1));for(let s=i+1;s<n;s++)r.push(this._lines[s]);return r.push(this._lines[n].substring(0,e.endColumn-1)),r.join(t)}offsetAt(e){return e=this._validatePosition(e),this._ensureLineStarts(),this._lineStarts.getPrefixSum(e.lineNumber-2)+(e.column-1)}positionAt(e){e=Math.floor(e),e=Math.max(0,e),this._ensureLineStarts();const t=this._lineStarts.getIndexOf(e),i=this._lines[t.index].length;return{lineNumber:1+t.index,column:1+Math.min(t.remainder,i)}}_validateRange(e){const t=this._validatePosition({lineNumber:e.startLineNumber,column:e.startColumn}),i=this._validatePosition({lineNumber:e.endLineNumber,column:e.endColumn});return t.lineNumber!==e.startLineNumber||t.column!==e.startColumn||i.lineNumber!==e.endLineNumber||i.column!==e.endColumn?{startLineNumber:t.lineNumber,startColumn:t.column,endLineNumber:i.lineNumber,endColumn:i.column}:e}_validatePosition(e){if(!d.y.isIPosition(e))throw new Error("bad position");let{lineNumber:t,column:i}=e,n=!1;if(t<1)t=1,i=1,n=!0;else if(t>this._lines.length)t=this._lines.length,i=this._lines[t-1].length+1,n=!0;else{const e=this._lines[t-1].length+1;i<1?(i=1,n=!0):i>e&&(i=e,n=!0)}return n?{lineNumber:t,column:i}:e}}class z{constructor(e,t){this._host=e,this._models=Object.create(null),this._foreignModuleFactory=t,this._foreignModule=null}dispose(){this._models=Object.create(null)}_getModel(e){return this._models[e]}_getModels(){const e=[];return Object.keys(this._models).forEach((t=>e.push(this._models[t]))),e}acceptNewModel(e){this._models[e.url]=new P(u.r.parse(e.url),e.lines,e.EOL,e.versionId)}acceptModelChanged(e,t){if(!this._models[e])return;this._models[e].onEvents(t)}acceptRemovedModel(e){this._models[e]&&delete this._models[e]}computeUnicodeHighlights(e,t,i){return R(this,void 0,void 0,(function*(){const n=this._getModel(e);return n?F.P.computeUnicodeHighlights(n,t,i):{ranges:[],hasMore:!1,ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0}}))}computeDiff(e,t,i,n){return R(this,void 0,void 0,(function*(){const r=this._getModel(e),s=this._getModel(t);return r&&s?z.computeDiff(r,s,i,n):null}))}static computeDiff(e,t,i,n){const r=e.getLinesContent(),s=t.getLinesContent(),o=new b(r,s,{shouldComputeCharChanges:!0,shouldPostProcessCharChanges:!0,shouldIgnoreTrimWhitespace:i,shouldMakePrettyDiff:!0,maxComputationTime:n}).computeDiff(),a=!(o.changes.length>0)&&this._modelsAreIdentical(e,t);return{quitEarly:o.quitEarly,identical:a,changes:o.changes}}static _modelsAreIdentical(e,t){const i=e.getLineCount();if(i!==t.getLineCount())return!1;for(let n=1;n<=i;n++){if(e.getLineContent(n)!==t.getLineContent(n))return!1}return!0}computeMoreMinimalEdits(e,t){return R(this,void 0,void 0,(function*(){const i=this._getModel(e);if(!i)return t;const n=[];let r;t=t.slice(0).sort(((e,t)=>{if(e.range&&t.range)return a.Q.compareRangesUsingStarts(e.range,t.range);return(e.range?0:1)-(t.range?0:1)}));for(let{range:e,text:s,eol:o}of t){if("number"===typeof o&&(r=o),a.Q.isEmpty(e)&&!s)continue;const t=i.getValueInRange(e);if(s=s.replace(/\r\n|\n|\r/g,i.eol),t===s)continue;if(Math.max(s.length,t.length)>z._diffLimit){n.push({range:e,text:s});continue}const l=(0,h.F1)(t,s,!1),c=i.offsetAt(a.Q.lift(e).getStartPosition());for(const e of l){const t=i.positionAt(c+e.originalStart),r=i.positionAt(c+e.originalStart+e.originalLength),o={text:s.substr(e.modifiedStart,e.modifiedLength),range:{startLineNumber:t.lineNumber,startColumn:t.column,endLineNumber:r.lineNumber,endColumn:r.column}};i.getValueInRange(o.range)!==o.text&&n.push(o)}}return"number"===typeof r&&n.push({eol:r,text:"",range:{startLineNumber:0,startColumn:0,endLineNumber:0,endColumn:0}}),n}))}computeLinks(e){return R(this,void 0,void 0,(function*(){const t=this._getModel(e);return t?function(e){return e&&"function"===typeof e.getLineCount&&"function"===typeof e.getLineContent?O.computeLinks(e):[]}(t):null}))}textualSuggest(e,t,i,n){return R(this,void 0,void 0,(function*(){const r=new A.W(!0),s=new RegExp(i,n),o=new Set;e:for(const i of e){const e=this._getModel(i);if(e)for(const i of e.words(s))if(i!==t&&isNaN(Number(i))&&(o.add(i),o.size>z._suggestionsLimit))break e}return{words:Array.from(o),duration:r.elapsed()}}))}computeWordRanges(e,t,i,n){return R(this,void 0,void 0,(function*(){const r=this._getModel(e);if(!r)return Object.create(null);const s=new RegExp(i,n),o=Object.create(null);for(let e=t.startLineNumber;e<t.endLineNumber;e++){const t=r.getLineWords(e,s);for(const i of t){if(!isNaN(Number(i.word)))continue;let t=o[i.word];t||(t=[],o[i.word]=t),t.push({startLineNumber:e,startColumn:i.startColumn,endLineNumber:e,endColumn:i.endColumn})}}return o}))}navigateValueSet(e,t,i,n,r){return R(this,void 0,void 0,(function*(){const s=this._getModel(e);if(!s)return null;const o=new RegExp(n,r);t.startColumn===t.endColumn&&(t={startLineNumber:t.startLineNumber,startColumn:t.startColumn,endLineNumber:t.endLineNumber,endColumn:t.endColumn+1});const a=s.getValueInRange(t),l=s.getWordAtPosition({lineNumber:t.startLineNumber,column:t.startColumn},o);if(!l)return null;const h=s.getValueInRange(l);return M.INSTANCE.navigateValueSet(t,a,l,h,i)}))}loadForeignModule(e,t,i){const n={host:N.kT(i,((e,t)=>this._host.fhr(e,t))),getMirrorModels:()=>this._getModels()};return this._foreignModuleFactory?(this._foreignModule=this._foreignModuleFactory(n,t),Promise.resolve(N.V0(this._foreignModule))):Promise.reject(new Error("Unexpected usage"))}fmr(e,t){if(!this._foreignModule||"function"!==typeof this._foreignModule[e])return Promise.reject(new Error("Missing requestHandler or method: "+e));try{return Promise.resolve(this._foreignModule[e].apply(this._foreignModule,t))}catch(i){return Promise.reject(i)}}}z._diffLimit=1e5,z._suggestionsLimit=1e4,"function"===typeof importScripts&&(c.zQ.monaco=(0,B.r)());var W=i(19724),V=i(42982),H=i(48640),U=i(91823),j=i(75909),K=i(34876),q=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},G=function(e,t){return function(i,n){t(i,n,e)}},$=function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{l(n.next(e))}catch(t){s(t)}}function a(e){try{l(n.throw(e))}catch(t){s(t)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(o,a)}l((n=n.apply(e,t||[])).next())}))};const Q=3e5;function Y(e,t){const i=e.getModel(t);return!!i&&!i.isTooLargeForSyncing()}let X=class extends r.jG{constructor(e,t,i,n,r){super(),this._modelService=e,this._workerManager=this._register(new J(this._modelService,n)),this._logService=i,this._register(r.linkProvider.register({language:"*",hasAccessToAllModels:!0},{provideLinks:(e,t)=>Y(this._modelService,e.uri)?this._workerManager.withWorker().then((t=>t.computeLinks(e.uri))).then((e=>e&&{links:e})):Promise.resolve({links:[]})})),this._register(r.completionProvider.register("*",new Z(this._workerManager,t,this._modelService,n)))}dispose(){super.dispose()}canComputeUnicodeHighlights(e){return Y(this._modelService,e)}computedUnicodeHighlights(e,t,i){return this._workerManager.withWorker().then((n=>n.computedUnicodeHighlights(e,t,i)))}computeDiff(e,t,i,n){return this._workerManager.withWorker().then((r=>r.computeDiff(e,t,i,n)))}computeMoreMinimalEdits(e,t){if((0,H.EI)(t)){if(!Y(this._modelService,e))return Promise.resolve(t);const i=A.W.create(!0),r=this._workerManager.withWorker().then((i=>i.computeMoreMinimalEdits(e,t)));return r.finally((()=>this._logService.trace("FORMAT#computeMoreMinimalEdits",e.toString(!0),i.elapsed()))),Promise.race([r,(0,n.wR)(1e3).then((()=>t))])}return Promise.resolve(void 0)}canNavigateValueSet(e){return Y(this._modelService,e)}navigateValueSet(e,t,i){return this._workerManager.withWorker().then((n=>n.navigateValueSet(e,t,i)))}canComputeWordRanges(e){return Y(this._modelService,e)}computeWordRanges(e,t){return this._workerManager.withWorker().then((i=>i.computeWordRanges(e,t)))}};X=q([G(0,W.S),G(1,V.U),G(2,U.rr),G(3,l.JZ),G(4,K.u)],X);class Z{constructor(e,t,i,n){this.languageConfigurationService=n,this._debugDisplayName="wordbasedCompletions",this._workerManager=e,this._configurationService=t,this._modelService=i}provideCompletionItems(e,t){return $(this,void 0,void 0,(function*(){const i=this._configurationService.getValue(e.uri,t,"editor");if(!i.wordBasedSuggestions)return;const n=[];if("currentDocument"===i.wordBasedSuggestionsMode)Y(this._modelService,e.uri)&&n.push(e.uri);else for(const t of this._modelService.getModels())Y(this._modelService,t.uri)&&(t===e?n.unshift(t.uri):"allDocuments"!==i.wordBasedSuggestionsMode&&t.getLanguageId()!==e.getLanguageId()||n.push(t.uri));if(0===n.length)return;const r=this.languageConfigurationService.getLanguageConfiguration(e.getLanguageId()).getWordDefinition(),s=e.getWordAtPosition(t),o=s?new a.Q(t.lineNumber,s.startColumn,t.lineNumber,s.endColumn):a.Q.fromPositions(t),l=o.setEndPosition(t.lineNumber,t.column),h=yield this._workerManager.withWorker(),c=yield h.textualSuggest(n,null===s||void 0===s?void 0:s.word,r);return c?{duration:c.duration,suggestions:c.words.map((e=>({kind:18,label:e,insertText:e,range:{insert:l,replace:o}})))}:void 0}))}}class J extends r.jG{constructor(e,t){super(),this.languageConfigurationService=t,this._modelService=e,this._editorWorkerClient=null,this._lastWorkerUsedTime=(new Date).getTime();this._register(new n.vb).cancelAndSet((()=>this._checkStopIdleWorker()),Math.round(15e4)),this._register(this._modelService.onModelRemoved((e=>this._checkStopEmptyWorker())))}dispose(){this._editorWorkerClient&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null),super.dispose()}_checkStopEmptyWorker(){if(!this._editorWorkerClient)return;0===this._modelService.getModels().length&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null)}_checkStopIdleWorker(){if(!this._editorWorkerClient)return;(new Date).getTime()-this._lastWorkerUsedTime>Q&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null)}withWorker(){return this._lastWorkerUsedTime=(new Date).getTime(),this._editorWorkerClient||(this._editorWorkerClient=new ne(this._modelService,!1,"editorWorkerService",this.languageConfigurationService)),Promise.resolve(this._editorWorkerClient)}}class ee extends r.jG{constructor(e,t,i){if(super(),this._syncedModels=Object.create(null),this._syncedModelsLastUsedTime=Object.create(null),this._proxy=e,this._modelService=t,!i){const e=new n.vb;e.cancelAndSet((()=>this._checkStopModelSync()),Math.round(3e4)),this._register(e)}}dispose(){for(const e in this._syncedModels)(0,r.AS)(this._syncedModels[e]);this._syncedModels=Object.create(null),this._syncedModelsLastUsedTime=Object.create(null),super.dispose()}ensureSyncedResources(e,t){for(const i of e){const e=i.toString();this._syncedModels[e]||this._beginModelSync(i,t),this._syncedModels[e]&&(this._syncedModelsLastUsedTime[e]=(new Date).getTime())}}_checkStopModelSync(){const e=(new Date).getTime(),t=[];for(const i in this._syncedModelsLastUsedTime){e-this._syncedModelsLastUsedTime[i]>6e4&&t.push(i)}for(const i of t)this._stopModelSync(i)}_beginModelSync(e,t){const i=this._modelService.getModel(e);if(!i)return;if(!t&&i.isTooLargeForSyncing())return;const n=e.toString();this._proxy.acceptNewModel({url:i.uri.toString(),lines:i.getLinesContent(),EOL:i.getEOL(),versionId:i.getVersionId()});const s=new r.Cm;s.add(i.onDidChangeContent((e=>{this._proxy.acceptModelChanged(n.toString(),e)}))),s.add(i.onWillDispose((()=>{this._stopModelSync(n)}))),s.add((0,r.s)((()=>{this._proxy.acceptRemovedModel(n)}))),this._syncedModels[n]=s}_stopModelSync(e){const t=this._syncedModels[e];delete this._syncedModels[e],delete this._syncedModelsLastUsedTime[e],(0,r.AS)(t)}}class te{constructor(e){this._instance=e,this._proxyObj=Promise.resolve(this._instance)}dispose(){this._instance.dispose()}getProxyObject(){return this._proxyObj}}class ie{constructor(e){this._workerClient=e}fhr(e,t){return this._workerClient.fhr(e,t)}}class ne extends r.jG{constructor(e,t,i,n){super(),this.languageConfigurationService=n,this._disposed=!1,this._modelService=e,this._keepIdleModels=t,this._workerFactory=new o.K(i),this._worker=null,this._modelManager=null}fhr(e,t){throw new Error("Not implemented!")}_getOrCreateWorker(){if(!this._worker)try{this._worker=this._register(new s.gk(this._workerFactory,"vs/editor/common/services/editorSimpleWorker",new ie(this)))}catch(e){(0,s.IR)(e),this._worker=new te(new z(new ie(this),null))}return this._worker}_getProxy(){return this._getOrCreateWorker().getProxyObject().then(void 0,(e=>((0,s.IR)(e),this._worker=new te(new z(new ie(this),null)),this._getOrCreateWorker().getProxyObject())))}_getOrCreateModelManager(e){return this._modelManager||(this._modelManager=this._register(new ee(e,this._modelService,this._keepIdleModels))),this._modelManager}_withSyncedResources(e,t=!1){return $(this,void 0,void 0,(function*(){return this._disposed?Promise.reject((0,j.aD)()):this._getProxy().then((i=>(this._getOrCreateModelManager(i).ensureSyncedResources(e,t),i)))}))}computedUnicodeHighlights(e,t,i){return this._withSyncedResources([e]).then((n=>n.computeUnicodeHighlights(e.toString(),t,i)))}computeDiff(e,t,i,n){return this._withSyncedResources([e,t],!0).then((r=>r.computeDiff(e.toString(),t.toString(),i,n)))}computeMoreMinimalEdits(e,t){return this._withSyncedResources([e]).then((i=>i.computeMoreMinimalEdits(e.toString(),t)))}computeLinks(e){return this._withSyncedResources([e]).then((t=>t.computeLinks(e.toString())))}textualSuggest(e,t,i){return $(this,void 0,void 0,(function*(){const n=yield this._withSyncedResources(e),r=i.source,s=(0,g.RH)(i);return n.textualSuggest(e.map((e=>e.toString())),t,r,s)}))}computeWordRanges(e,t){return this._withSyncedResources([e]).then((i=>{const n=this._modelService.getModel(e);if(!n)return Promise.resolve(null);const r=this.languageConfigurationService.getLanguageConfiguration(n.getLanguageId()).getWordDefinition(),s=r.source,o=(0,g.RH)(r);return i.computeWordRanges(e.toString(),t,s,o)}))}navigateValueSet(e,t,i){return this._withSyncedResources([e]).then((n=>{const r=this._modelService.getModel(e);if(!r)return null;const s=this.languageConfigurationService.getLanguageConfiguration(r.getLanguageId()).getWordDefinition(),o=s.source,a=(0,g.RH)(s);return n.navigateValueSet(e.toString(),t,i,o,a)}))}dispose(){super.dispose(),this._disposed=!0}}},84214:(e,t,i)=>{i.d(t,{J:()=>C});var n,r=i(90491),s=i(69549),o=i(47643),a=i(14094),l=i(92410),h=i(46442),c=i(1273),u=i(65698),d=i(88459),g=i(16281);!function(e){e[e.API=0]="API",e[e.USER=1]="USER"}(n||(n={}));var f=i(46025),p=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},m=function(e,t){return function(i,n){t(i,n,e)}},k=function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{l(n.next(e))}catch(t){s(t)}}function a(e){try{l(n.throw(e))}catch(t){s(t)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(o,a)}l((n=n.apply(e,t||[])).next())}))};let _=class{constructor(e){this._commandService=e}open(e,t){return k(this,void 0,void 0,(function*(){if(!(0,f.v$)(e,h.ny.command))return!1;if(!(null===t||void 0===t?void 0:t.allowCommands))return!0;"string"===typeof e&&(e=u.r.parse(e));let i=[];try{i=(0,l.q)(decodeURIComponent(e.query))}catch(n){try{i=(0,l.q)(e.query)}catch(r){}}return Array.isArray(i)||(i=[i]),yield this._commandService.executeCommand(e.path,...i),!0}))}};_=p([m(0,g.wT)],_);let b=class{constructor(e){this._editorService=e}open(e,t){return k(this,void 0,void 0,(function*(){"string"===typeof e&&(e=u.r.parse(e));const{selection:i,uri:r}=(0,f.ew)(e);return(e=r).scheme===h.ny.file&&(e=(0,c.Fd)(e)),yield this._editorService.openCodeEditor({resource:e,options:Object.assign({selection:i,source:(null===t||void 0===t?void 0:t.fromUserGesture)?n.USER:n.API},null===t||void 0===t?void 0:t.editorOptions)},this._editorService.getFocusedCodeEditor(),null===t||void 0===t?void 0:t.openToSide),!0}))}};b=p([m(0,d.T)],b);let C=class{constructor(e,t){this._openers=new o.w,this._validators=new o.w,this._resolvers=new o.w,this._resolvedUriTargets=new a.fT((e=>e.with({path:null,fragment:null,query:null}).toString())),this._externalOpeners=new o.w,this._defaultExternalOpener={openExternal:e=>k(this,void 0,void 0,(function*(){return(0,f.fV)(e,h.ny.http,h.ny.https)?r.jh(e):window.location.href=e,!0}))},this._openers.push({open:(e,t)=>k(this,void 0,void 0,(function*(){return!(!(null===t||void 0===t?void 0:t.openExternal)&&!(0,f.fV)(e,h.ny.mailto,h.ny.http,h.ny.https,h.ny.vsls))&&(yield this._doOpenExternal(e,t),!0)}))}),this._openers.push(new _(t)),this._openers.push(new b(e))}registerOpener(e){return{dispose:this._openers.unshift(e)}}registerValidator(e){return{dispose:this._validators.push(e)}}registerExternalUriResolver(e){return{dispose:this._resolvers.push(e)}}setDefaultExternalOpener(e){this._defaultExternalOpener=e}registerExternalOpener(e){return{dispose:this._externalOpeners.push(e)}}open(e,t){var i;return k(this,void 0,void 0,(function*(){const n="string"===typeof e?u.r.parse(e):e,r=null!==(i=this._resolvedUriTargets.get(n))&&void 0!==i?i:e;for(const e of this._validators)if(!(yield e.shouldOpen(r)))return!1;for(const i of this._openers){if(yield i.open(e,t))return!0}return!1}))}resolveExternalUri(e,t){return k(this,void 0,void 0,(function*(){for(const n of this._resolvers)try{const i=yield n.resolveExternalUri(e,t);if(i)return this._resolvedUriTargets.has(i.resolved)||this._resolvedUriTargets.set(i.resolved,e),i}catch(i){}throw new Error("Could not resolve external URI: "+e.toString())}))}_doOpenExternal(e,t){return k(this,void 0,void 0,(function*(){const i="string"===typeof e?u.r.parse(e):e;let n,r;try{n=(yield this.resolveExternalUri(i,t)).resolved}catch(o){n=i}if(r="string"===typeof e&&i.toString()===n.toString()?e:encodeURI(n.toString(!0)),null===t||void 0===t?void 0:t.allowContributedOpeners){const e="string"===typeof(null===t||void 0===t?void 0:t.allowContributedOpeners)?null===t||void 0===t?void 0:t.allowContributedOpeners:void 0;for(const t of this._externalOpeners){if(yield t.openExternal(r,{sourceUri:i,preferredOpenerId:e},s.X.None))return!0}}return this._defaultExternalOpener.openExternal(r,{sourceUri:i},s.X.None)}))}dispose(){this._validators.clear()}};C=p([m(0,d.T),m(1,g.wT)],C)},43077:(e,t,i)=>{i.d(t,{Gn:()=>f,JJ:()=>l,vf:()=>g});var n=i(6302),r=i(11572),s=i(35819),o=i(11332),a=i(1097);const l=Object.freeze({id:"editor",order:5,type:"object",title:s.kg("editorConfigurationTitle","Editor"),scope:5}),h=Object.assign(Object.assign({},l),{properties:{"editor.tabSize":{type:"number",default:r.R.tabSize,minimum:1,markdownDescription:s.kg("tabSize","The number of spaces a tab is equal to. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.")},"editor.insertSpaces":{type:"boolean",default:r.R.insertSpaces,markdownDescription:s.kg("insertSpaces","Insert spaces when pressing `Tab`. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.")},"editor.detectIndentation":{type:"boolean",default:r.R.detectIndentation,markdownDescription:s.kg("detectIndentation","Controls whether `#editor.tabSize#` and `#editor.insertSpaces#` will be automatically detected when a file is opened based on the file contents.")},"editor.trimAutoWhitespace":{type:"boolean",default:r.R.trimAutoWhitespace,description:s.kg("trimAutoWhitespace","Remove trailing auto inserted whitespace.")},"editor.largeFileOptimizations":{type:"boolean",default:r.R.largeFileOptimizations,description:s.kg("largeFileOptimizations","Special handling for large files to disable certain memory intensive features.")},"editor.wordBasedSuggestions":{type:"boolean",default:!0,description:s.kg("wordBasedSuggestions","Controls whether completions should be computed based on words in the document.")},"editor.wordBasedSuggestionsMode":{enum:["currentDocument","matchingDocuments","allDocuments"],default:"matchingDocuments",enumDescriptions:[s.kg("wordBasedSuggestionsMode.currentDocument","Only suggest words from the active document."),s.kg("wordBasedSuggestionsMode.matchingDocuments","Suggest words from all open documents of the same language."),s.kg("wordBasedSuggestionsMode.allDocuments","Suggest words from all open documents.")],description:s.kg("wordBasedSuggestionsMode","Controls from which documents word based completions are computed.")},"editor.semanticHighlighting.enabled":{enum:[!0,!1,"configuredByTheme"],enumDescriptions:[s.kg("semanticHighlighting.true","Semantic highlighting enabled for all color themes."),s.kg("semanticHighlighting.false","Semantic highlighting disabled for all color themes."),s.kg("semanticHighlighting.configuredByTheme","Semantic highlighting is configured by the current color theme's `semanticHighlighting` setting.")],default:"configuredByTheme",description:s.kg("semanticHighlighting.enabled","Controls whether the semanticHighlighting is shown for the languages that support it.")},"editor.stablePeek":{type:"boolean",default:!1,markdownDescription:s.kg("stablePeek","Keep peek editors open even when double clicking their content or when hitting `Escape`.")},"editor.maxTokenizationLineLength":{type:"integer",default:2e4,description:s.kg("maxTokenizationLineLength","Lines above this length will not be tokenized for performance reasons")},"editor.language.brackets":{type:["array","null"],default:null,description:s.kg("schema.brackets","Defines the bracket symbols that increase or decrease the indentation."),items:{type:"array",items:[{type:"string",description:s.kg("schema.openBracket","The opening bracket character or string sequence.")},{type:"string",description:s.kg("schema.closeBracket","The closing bracket character or string sequence.")}]}},"editor.language.colorizedBracketPairs":{type:["array","null"],default:null,description:s.kg("schema.colorizedBracketPairs","Defines the bracket pairs that are colorized by their nesting level if bracket pair colorization is enabled."),items:{type:"array",items:[{type:"string",description:s.kg("schema.openBracket","The opening bracket character or string sequence.")},{type:"string",description:s.kg("schema.closeBracket","The closing bracket character or string sequence.")}]}},"diffEditor.maxComputationTime":{type:"number",default:5e3,description:s.kg("maxComputationTime","Timeout in milliseconds after which diff computation is cancelled. Use 0 for no timeout.")},"diffEditor.maxFileSize":{type:"number",default:50,description:s.kg("maxFileSize","Maximum file size in MB for which to compute diffs. Use 0 for no limit.")},"diffEditor.renderSideBySide":{type:"boolean",default:!0,description:s.kg("sideBySide","Controls whether the diff editor shows the diff side by side or inline.")},"diffEditor.renderMarginRevertIcon":{type:"boolean",default:!0,description:s.kg("renderMarginRevertIcon","When enabled, the diff editor shows arrows in its glyph margin to revert changes.")},"diffEditor.ignoreTrimWhitespace":{type:"boolean",default:!0,description:s.kg("ignoreTrimWhitespace","When enabled, the diff editor ignores changes in leading or trailing whitespace.")},"diffEditor.renderIndicators":{type:"boolean",default:!0,description:s.kg("renderIndicators","Controls whether the diff editor shows +/- indicators for added/removed changes.")},"diffEditor.codeLens":{type:"boolean",default:!1,description:s.kg("codeLens","Controls whether the editor shows CodeLens.")},"diffEditor.wordWrap":{type:"string",enum:["off","on","inherit"],default:"inherit",markdownEnumDescriptions:[s.kg("wordWrap.off","Lines will never wrap."),s.kg("wordWrap.on","Lines will wrap at the viewport width."),s.kg("wordWrap.inherit","Lines will wrap according to the `#editor.wordWrap#` setting.")]}}});for(const p of n.BE){const e=p.schema;if("undefined"!==typeof e)if("undefined"!==typeof(c=e).type||"undefined"!==typeof c.anyOf)h.properties[`editor.${p.name}`]=e;else for(const t in e)Object.hasOwnProperty.call(e,t)&&(h.properties[t]=e[t])}var c;let u=null;function d(){return null===u&&(u=Object.create(null),Object.keys(h.properties).forEach((e=>{u[e]=!0}))),u}function g(e){return d()[`editor.${e}`]||!1}function f(e){return d()[`diffEditor.${e}`]||!1}a.O.as(o.Fd.Configuration).registerConfiguration(h)},6302:(e,t,i)=>{i.d(t,{$C:()=>E,BE:()=>F,Bc:()=>I,O4:()=>w,Of:()=>B,XR:()=>M,hZ:()=>g,jU:()=>A,lw:()=>c,m9:()=>x,n0:()=>u,qB:()=>P,wA:()=>b,xZ:()=>T,xq:()=>h,zM:()=>k});var n=i(35819),r=i(55977),s=i(52524),o=i(48640),a=i(61460),l=i(11572);const h=8;class c{constructor(e){this._values=e}hasChanged(e){return this._values[e]}}class u{constructor(){this.stableMinimapLayoutInput=null,this.stableFitMaxMinimapScale=0,this.stableFitRemainingWidth=0}}class d{constructor(e,t,i,n){this.id=e,this.name=t,this.defaultValue=i,this.schema=n}applyUpdate(e,t){return f(e,t)}compute(e,t,i){return i}}class g{constructor(e,t){this.newValue=e,this.didChange=t}}function f(e,t){if("object"!==typeof e||"object"!==typeof t||!e||!t)return new g(t,e!==t);if(Array.isArray(e)||Array.isArray(t)){const i=Array.isArray(e)&&Array.isArray(t)&&o.aI(e,t);return new g(t,i)}let i=!1;for(const n in t)if(t.hasOwnProperty(n)){const r=f(e[n],t[n]);r.didChange&&(e[n]=r.newValue,i=!0)}return new g(e,i)}class p{constructor(e){this.schema=void 0,this.id=e,this.name="_never_",this.defaultValue=void 0}applyUpdate(e,t){return f(e,t)}validate(e){return this.defaultValue}}class m{constructor(e,t,i,n){this.id=e,this.name=t,this.defaultValue=i,this.schema=n}applyUpdate(e,t){return f(e,t)}validate(e){return"undefined"===typeof e?this.defaultValue:e}compute(e,t,i){return i}}function k(e,t){return"undefined"===typeof e?t:"false"!==e&&Boolean(e)}class _ extends m{constructor(e,t,i,n=void 0){"undefined"!==typeof n&&(n.type="boolean",n.default=i),super(e,t,i,n)}validate(e){return k(e,this.defaultValue)}}function b(e,t,i,n){if("undefined"===typeof e)return t;let r=parseInt(e,10);return isNaN(r)?t:(r=Math.max(i,r),r=Math.min(n,r),0|r)}class C extends m{constructor(e,t,i,n,r,s=void 0){"undefined"!==typeof s&&(s.type="integer",s.default=i,s.minimum=n,s.maximum=r),super(e,t,i,s),this.minimum=n,this.maximum=r}static clampedInt(e,t,i,n){return b(e,t,i,n)}validate(e){return C.clampedInt(e,this.defaultValue,this.minimum,this.maximum)}}class v extends m{constructor(e,t,i,n,r){"undefined"!==typeof r&&(r.type="number",r.default=i),super(e,t,i,r),this.validationFn=n}static clamp(e,t,i){return e<t?t:e>i?i:e}static float(e,t){if("number"===typeof e)return e;if("undefined"===typeof e)return t;const i=parseFloat(e);return isNaN(i)?t:i}validate(e){return this.validationFn(v.float(e,this.defaultValue))}}class y extends m{static string(e,t){return"string"!==typeof e?t:e}constructor(e,t,i,n=void 0){"undefined"!==typeof n&&(n.type="string",n.default=i),super(e,t,i,n)}validate(e){return y.string(e,this.defaultValue)}}function w(e,t,i){return"string"!==typeof e||-1===i.indexOf(e)?t:e}class S extends m{constructor(e,t,i,n,r=void 0){"undefined"!==typeof r&&(r.type="string",r.enum=n,r.default=i),super(e,t,i,r),this._allowedValues=n}validate(e){return w(e,this.defaultValue,this._allowedValues)}}class L extends d{constructor(e,t,i,n,r,s,o=void 0){"undefined"!==typeof o&&(o.type="string",o.enum=r,o.default=n),super(e,t,i,o),this._allowedValues=r,this._convert=s}validate(e){return"string"!==typeof e||-1===this._allowedValues.indexOf(e)?this.defaultValue:this._convert(e)}}var x;!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"}(x||(x={}));class I extends d{constructor(){super(46,"fontLigatures",I.OFF,{anyOf:[{type:"boolean",description:n.kg("fontLigatures","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:n.kg("fontFeatureSettings","Explicit 'font-feature-settings' CSS property. A boolean can be passed instead if one only needs to turn on/off ligatures.")}],description:n.kg("fontLigaturesGeneral","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"undefined"===typeof e?this.defaultValue:"string"===typeof e?"false"===e?I.OFF:"true"===e?I.ON:e:Boolean(e)?I.ON:I.OFF}}I.OFF='"liga" off, "calt" off',I.ON='"liga" on, "calt" on';class D extends d{constructor(){super(48,"fontWeight",A.fontWeight,{anyOf:[{type:"number",minimum:D.MINIMUM_VALUE,maximum:D.MAXIMUM_VALUE,errorMessage:n.kg("fontWeightErrorMessage",'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:D.SUGGESTION_VALUES}],default:A.fontWeight,description:n.kg("fontWeight",'Controls the font weight. Accepts "normal" and "bold" keywords or numbers between 1 and 1000.')})}validate(e){return"normal"===e||"bold"===e?e:String(C.clampedInt(e,A.fontWeight,D.MINIMUM_VALUE,D.MAXIMUM_VALUE))}}D.SUGGESTION_VALUES=["normal","bold","100","200","300","400","500","600","700","800","900"],D.MINIMUM_VALUE=1,D.MAXIMUM_VALUE=1e3;class T extends p{constructor(){super(132)}compute(e,t,i){return T.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})}static computeContainedMinimapLineCount(e){const t=e.height/e.lineHeight,i=e.scrollBeyondLastLine?t-1:0,n=(e.viewLineCount+i)/(e.pixelRatio*e.height);return{typicalViewportLineCount:t,extraLinesBeyondLastLine:i,desiredRatio:n,minimapLineCount:Math.floor(e.viewLineCount/n)}}static _computeMinimapLayout(e,t){const i=e.outerWidth,n=e.outerHeight,r=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(r*n),minimapCanvasOuterWidth:0,minimapCanvasOuterHeight:n};const s=t.stableMinimapLayoutInput,o=s&&e.outerHeight===s.outerHeight&&e.lineHeight===s.lineHeight&&e.typicalHalfwidthCharacterWidth===s.typicalHalfwidthCharacterWidth&&e.pixelRatio===s.pixelRatio&&e.scrollBeyondLastLine===s.scrollBeyondLastLine&&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,c=e.scrollBeyondLastLine,u=e.minimap.renderCharacters;let d=r>=2?Math.round(2*e.minimap.scale):e.minimap.scale;const g=e.minimap.maxColumn,f=e.minimap.size,p=e.minimap.side,m=e.verticalScrollbarWidth,k=e.viewLineCount,_=e.remainingWidth,b=e.isViewportWrapping,C=u?2:3;let v=Math.floor(r*n);const y=v/r;let w=!1,S=!1,L=C*d,x=d/r,I=1;if("fill"===f||"fit"===f){const{typicalViewportLineCount:i,extraLinesBeyondLastLine:s,desiredRatio:l,minimapLineCount:h}=T.computeContainedMinimapLineCount({viewLineCount:k,scrollBeyondLastLine:c,height:n,lineHeight:a,pixelRatio:r});if(k/h>1)w=!0,S=!0,d=1,L=1,x=d/r;else{let n=!1,h=d+1;if("fit"===f){const e=Math.ceil((k+s)*L);b&&o&&_<=t.stableFitRemainingWidth?(n=!0,h=t.stableFitMaxMinimapScale):n=e>v}if("fill"===f||n){w=!0;const n=d;L=Math.min(a*r,Math.max(1,Math.floor(1/l))),b&&o&&_<=t.stableFitRemainingWidth&&(h=t.stableFitMaxMinimapScale),d=Math.min(h,Math.max(1,Math.floor(L/C))),d>n&&(I=Math.min(2,d/n)),x=d/r/I,v=Math.ceil(Math.max(i,k+s)*L),b?(t.stableMinimapLayoutInput=e,t.stableFitRemainingWidth=_,t.stableFitMaxMinimapScale=d):(t.stableMinimapLayoutInput=null,t.stableFitRemainingWidth=0)}}}const D=Math.floor(g*x),E=Math.min(D,Math.max(0,Math.floor((_-m-2)*x/(l+x)))+h);let O=Math.floor(r*E);const M=O/r;O=Math.floor(O*I);return{renderMinimap:u?1:2,minimapLeft:"left"===p?0:i-E-m,minimapWidth:E,minimapHeightIsEditorHeight:w,minimapIsSampling:S,minimapScale:d,minimapLineHeight:L,minimapCanvasInnerWidth:O,minimapCanvasInnerHeight:v,minimapCanvasOuterWidth:M,minimapCanvasOuterHeight:y}}static computeLayout(e,t){const i=0|t.outerWidth,n=0|t.outerHeight,r=0|t.lineHeight,s=0|t.lineNumbersDigitCount,o=t.typicalHalfwidthCharacterWidth,a=t.maxDigitWidth,l=t.pixelRatio,h=t.viewLineCount,c=e.get(124),d="inherit"===c?e.get(123):c,g="inherit"===d?e.get(119):d,f=e.get(122),p=e.get(2),m=t.isDominatedByLongLines,k=e.get(51),_=0!==e.get(61).renderType,b=e.get(62),v=e.get(95),y=e.get(66),w=e.get(93),S=w.verticalScrollbarSize,L=w.verticalHasArrows,x=w.arrowSize,I=w.horizontalScrollbarSize,D=e.get(59),E=e.get(38),O="never"!==e.get(100);let M;if("string"===typeof D&&/^\d+(\.\d+)?ch$/.test(D)){const e=parseFloat(D.substr(0,D.length-2));M=C.clampedInt(e*o,0,0,1e3)}else M=C.clampedInt(D,0,0,1e3);E&&O&&(M+=16);let B=0;if(_){const e=Math.max(s,b);B=Math.round(e*a)}let N=0;k&&(N=r);let A=0,F=A+N,R=F+B,P=R+M;const z=i-N-B-M;let W=!1,V=!1,H=-1;2!==p&&("inherit"===d&&m?(W=!0,V=!0):"on"===g||"bounded"===g?V=!0:"wordWrapColumn"===g&&(H=f));const U=T._computeMinimapLayout({outerWidth:i,outerHeight:n,lineHeight:r,typicalHalfwidthCharacterWidth:o,pixelRatio:l,scrollBeyondLastLine:v,minimap:y,verticalScrollbarWidth:S,viewLineCount:h,remainingWidth:z,isViewportWrapping:V},t.memory||new u);0!==U.renderMinimap&&0===U.minimapLeft&&(A+=U.minimapWidth,F+=U.minimapWidth,R+=U.minimapWidth,P+=U.minimapWidth);const j=z-U.minimapWidth,K=Math.max(1,Math.floor((j-S-2)/o)),q=L?x:0;return V&&(H=Math.max(1,K),"bounded"===g&&(H=Math.min(H,f))),{width:i,height:n,glyphMarginLeft:A,glyphMarginWidth:N,lineNumbersLeft:F,lineNumbersWidth:B,decorationsLeft:R,decorationsWidth:M,contentLeft:P,contentWidth:j,minimap:U,viewportColumn:K,isWordWrapMinified:W,isViewportWrapping:V,wrappingColumn:H,verticalScrollbarWidth:S,horizontalScrollbarHeight:I,overviewRuler:{top:q,width:S,height:n-2*q,right:0}}}}function E(e){const t=e.get(88);return"editable"===t?e.get(82):"on"!==t}function O(e,t){if("string"!==typeof e)return t;switch(e){case"hidden":return 2;case"visible":return 3;default:return 1}}const M="inUntrustedWorkspace",B={allowedCharacters:"editor.unicodeHighlight.allowedCharacters",invisibleCharacters:"editor.unicodeHighlight.invisibleCharacters",nonBasicASCII:"editor.unicodeHighlight.nonBasicASCII",ambiguousCharacters:"editor.unicodeHighlight.ambiguousCharacters",includeComments:"editor.unicodeHighlight.includeComments",includeStrings:"editor.unicodeHighlight.includeStrings",allowedLocales:"editor.unicodeHighlight.allowedLocales"};function N(e,t,i){const n=i.indexOf(e);return-1===n?t:i[n]}const A={fontFamily:r.zx?"Menlo, Monaco, 'Courier New', monospace":r.j9?"'Droid Sans Mono', 'monospace', monospace":"Consolas, 'Courier New', monospace",fontWeight:"normal",fontSize:r.zx?12:14,lineHeight:0,letterSpacing:0},F=[];function R(e){return F[e.id]=e,e}const P={acceptSuggestionOnCommitCharacter:R(new _(0,"acceptSuggestionOnCommitCharacter",!0,{markdownDescription:n.kg("acceptSuggestionOnCommitCharacter","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:R(new S(1,"acceptSuggestionOnEnter","on",["on","smart","off"],{markdownEnumDescriptions:["",n.kg("acceptSuggestionOnEnterSmart","Only accept a suggestion with `Enter` when it makes a textual change."),""],markdownDescription:n.kg("acceptSuggestionOnEnter","Controls whether suggestions should be accepted on `Enter`, in addition to `Tab`. Helps to avoid ambiguity between inserting new lines or accepting suggestions.")})),accessibilitySupport:R(new class extends d{constructor(){super(2,"accessibilitySupport",0,{type:"string",enum:["auto","on","off"],enumDescriptions:[n.kg("accessibilitySupport.auto","The editor will use platform APIs to detect when a Screen Reader is attached."),n.kg("accessibilitySupport.on","The editor will be permanently optimized for usage with a Screen Reader. Word wrapping will be disabled."),n.kg("accessibilitySupport.off","The editor will never be optimized for usage with a Screen Reader.")],default:"auto",description:n.kg("accessibilitySupport","Controls whether the editor should run in a mode where it is optimized for screen readers. Setting to on will disable word wrapping.")})}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:R(new C(3,"accessibilityPageSize",10,1,1073741824,{description:n.kg("accessibilityPageSize","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.")})),ariaLabel:R(new y(4,"ariaLabel",n.kg("editorViewAccessibleLabel","Editor content"))),autoClosingBrackets:R(new S(5,"autoClosingBrackets","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",n.kg("editor.autoClosingBrackets.languageDefined","Use language configurations to determine when to autoclose brackets."),n.kg("editor.autoClosingBrackets.beforeWhitespace","Autoclose brackets only when the cursor is to the left of whitespace."),""],description:n.kg("autoClosingBrackets","Controls whether the editor should automatically close brackets after the user adds an opening bracket.")})),autoClosingDelete:R(new S(6,"autoClosingDelete","auto",["always","auto","never"],{enumDescriptions:["",n.kg("editor.autoClosingDelete.auto","Remove adjacent closing quotes or brackets only if they were automatically inserted."),""],description:n.kg("autoClosingDelete","Controls whether the editor should remove adjacent closing quotes or brackets when deleting.")})),autoClosingOvertype:R(new S(7,"autoClosingOvertype","auto",["always","auto","never"],{enumDescriptions:["",n.kg("editor.autoClosingOvertype.auto","Type over closing quotes or brackets only if they were automatically inserted."),""],description:n.kg("autoClosingOvertype","Controls whether the editor should type over closing quotes or brackets.")})),autoClosingQuotes:R(new S(8,"autoClosingQuotes","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",n.kg("editor.autoClosingQuotes.languageDefined","Use language configurations to determine when to autoclose quotes."),n.kg("editor.autoClosingQuotes.beforeWhitespace","Autoclose quotes only when the cursor is to the left of whitespace."),""],description:n.kg("autoClosingQuotes","Controls whether the editor should automatically close quotes after the user adds an opening quote.")})),autoIndent:R(new L(9,"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:[n.kg("editor.autoIndent.none","The editor will not insert indentation automatically."),n.kg("editor.autoIndent.keep","The editor will keep the current line's indentation."),n.kg("editor.autoIndent.brackets","The editor will keep the current line's indentation and honor language defined brackets."),n.kg("editor.autoIndent.advanced","The editor will keep the current line's indentation, honor language defined brackets and invoke special onEnterRules defined by languages."),n.kg("editor.autoIndent.full","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:n.kg("autoIndent","Controls whether the editor should automatically adjust the indentation when users type, paste, move or indent lines.")})),automaticLayout:R(new _(10,"automaticLayout",!1)),autoSurround:R(new S(11,"autoSurround","languageDefined",["languageDefined","quotes","brackets","never"],{enumDescriptions:[n.kg("editor.autoSurround.languageDefined","Use language configurations to determine when to automatically surround selections."),n.kg("editor.autoSurround.quotes","Surround with quotes but not brackets."),n.kg("editor.autoSurround.brackets","Surround with brackets but not quotes."),""],description:n.kg("autoSurround","Controls whether the editor should automatically surround selections when typing quotes or brackets.")})),bracketPairColorization:R(new class extends d{constructor(){const e={enabled:l.R.bracketPairColorizationOptions.enabled,independentColorPoolPerBracketType:l.R.bracketPairColorizationOptions.independentColorPoolPerBracketType};super(12,"bracketPairColorization",e,{"editor.bracketPairColorization.enabled":{type:"boolean",default:e.enabled,markdownDescription:n.kg("bracketPairColorization.enabled","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:n.kg("bracketPairColorization.independentColorPoolPerBracketType","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:k(t.enabled,this.defaultValue.enabled),independentColorPoolPerBracketType:k(t.independentColorPoolPerBracketType,this.defaultValue.independentColorPoolPerBracketType)}}}),bracketPairGuides:R(new class extends d{constructor(){const e={bracketPairs:!1,bracketPairsHorizontal:"active",highlightActiveBracketPair:!0,indentation:!0,highlightActiveIndentation:!0};super(13,"guides",e,{"editor.guides.bracketPairs":{type:["boolean","string"],enum:[!0,"active",!1],enumDescriptions:[n.kg("editor.guides.bracketPairs.true","Enables bracket pair guides."),n.kg("editor.guides.bracketPairs.active","Enables bracket pair guides only for the active bracket pair."),n.kg("editor.guides.bracketPairs.false","Disables bracket pair guides.")],default:e.bracketPairs,description:n.kg("editor.guides.bracketPairs","Controls whether bracket pair guides are enabled or not.")},"editor.guides.bracketPairsHorizontal":{type:["boolean","string"],enum:[!0,"active",!1],enumDescriptions:[n.kg("editor.guides.bracketPairsHorizontal.true","Enables horizontal guides as addition to vertical bracket pair guides."),n.kg("editor.guides.bracketPairsHorizontal.active","Enables horizontal guides only for the active bracket pair."),n.kg("editor.guides.bracketPairsHorizontal.false","Disables horizontal bracket pair guides.")],default:e.bracketPairsHorizontal,description:n.kg("editor.guides.bracketPairsHorizontal","Controls whether horizontal bracket pair guides are enabled or not.")},"editor.guides.highlightActiveBracketPair":{type:"boolean",default:e.highlightActiveBracketPair,description:n.kg("editor.guides.highlightActiveBracketPair","Controls whether the editor should highlight the active bracket pair.")},"editor.guides.indentation":{type:"boolean",default:e.indentation,description:n.kg("editor.guides.indentation","Controls whether the editor should render indent guides.")},"editor.guides.highlightActiveIndentation":{type:["boolean","string"],enum:[!0,"always",!1],enumDescriptions:[n.kg("editor.guides.highlightActiveIndentation.true","Highlights the active indent guide."),n.kg("editor.guides.highlightActiveIndentation.always","Highlights the active indent guide even if bracket guides are highlighted."),n.kg("editor.guides.highlightActiveIndentation.false","Do not highlight the active indent guide.")],default:e.highlightActiveIndentation,description:n.kg("editor.guides.highlightActiveIndentation","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:N(t.bracketPairs,this.defaultValue.bracketPairs,[!0,!1,"active"]),bracketPairsHorizontal:N(t.bracketPairsHorizontal,this.defaultValue.bracketPairsHorizontal,[!0,!1,"active"]),highlightActiveBracketPair:k(t.highlightActiveBracketPair,this.defaultValue.highlightActiveBracketPair),indentation:k(t.indentation,this.defaultValue.indentation),highlightActiveIndentation:N(t.highlightActiveIndentation,this.defaultValue.highlightActiveIndentation,[!0,!1,"always"])}}}),stickyTabStops:R(new _(105,"stickyTabStops",!1,{description:n.kg("stickyTabStops","Emulate selection behavior of tab characters when using spaces for indentation. Selection will stick to tab stops.")})),codeLens:R(new _(14,"codeLens",!0,{description:n.kg("codeLens","Controls whether the editor shows CodeLens.")})),codeLensFontFamily:R(new y(15,"codeLensFontFamily","",{description:n.kg("codeLensFontFamily","Controls the font family for CodeLens.")})),codeLensFontSize:R(new C(16,"codeLensFontSize",0,0,100,{type:"number",default:0,minimum:0,maximum:100,markdownDescription:n.kg("codeLensFontSize","Controls the font size in pixels for CodeLens. When set to `0`, 90% of `#editor.fontSize#` is used.")})),colorDecorators:R(new _(17,"colorDecorators",!0,{description:n.kg("colorDecorators","Controls whether the editor should render the inline color decorators and color picker.")})),columnSelection:R(new _(18,"columnSelection",!1,{description:n.kg("columnSelection","Enable that the selection with the mouse and keys is doing column selection.")})),comments:R(new class extends d{constructor(){const e={insertSpace:!0,ignoreEmptyLines:!0};super(19,"comments",e,{"editor.comments.insertSpace":{type:"boolean",default:e.insertSpace,description:n.kg("comments.insertSpace","Controls whether a space character is inserted when commenting.")},"editor.comments.ignoreEmptyLines":{type:"boolean",default:e.ignoreEmptyLines,description:n.kg("comments.ignoreEmptyLines","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:k(t.insertSpace,this.defaultValue.insertSpace),ignoreEmptyLines:k(t.ignoreEmptyLines,this.defaultValue.ignoreEmptyLines)}}}),contextmenu:R(new _(20,"contextmenu",!0)),copyWithSyntaxHighlighting:R(new _(21,"copyWithSyntaxHighlighting",!0,{description:n.kg("copyWithSyntaxHighlighting","Controls whether syntax highlighting should be copied into the clipboard.")})),cursorBlinking:R(new L(22,"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:n.kg("cursorBlinking","Control the cursor animation style.")})),cursorSmoothCaretAnimation:R(new _(23,"cursorSmoothCaretAnimation",!1,{description:n.kg("cursorSmoothCaretAnimation","Controls whether the smooth caret animation should be enabled.")})),cursorStyle:R(new L(24,"cursorStyle",x.Line,"line",["line","block","underline","line-thin","block-outline","underline-thin"],(function(e){switch(e){case"line":return x.Line;case"block":return x.Block;case"underline":return x.Underline;case"line-thin":return x.LineThin;case"block-outline":return x.BlockOutline;case"underline-thin":return x.UnderlineThin}}),{description:n.kg("cursorStyle","Controls the cursor style.")})),cursorSurroundingLines:R(new C(25,"cursorSurroundingLines",0,0,1073741824,{description:n.kg("cursorSurroundingLines","Controls the minimal number of visible leading and trailing lines surrounding the cursor. Known as 'scrollOff' or 'scrollOffset' in some other editors.")})),cursorSurroundingLinesStyle:R(new S(26,"cursorSurroundingLinesStyle","default",["default","all"],{enumDescriptions:[n.kg("cursorSurroundingLinesStyle.default","`cursorSurroundingLines` is enforced only when triggered via the keyboard or API."),n.kg("cursorSurroundingLinesStyle.all","`cursorSurroundingLines` is enforced always.")],description:n.kg("cursorSurroundingLinesStyle","Controls when `cursorSurroundingLines` should be enforced.")})),cursorWidth:R(new C(27,"cursorWidth",0,0,1073741824,{markdownDescription:n.kg("cursorWidth","Controls the width of the cursor when `#editor.cursorStyle#` is set to `line`.")})),disableLayerHinting:R(new _(28,"disableLayerHinting",!1)),disableMonospaceOptimizations:R(new _(29,"disableMonospaceOptimizations",!1)),domReadOnly:R(new _(30,"domReadOnly",!1)),dragAndDrop:R(new _(31,"dragAndDrop",!0,{description:n.kg("dragAndDrop","Controls whether the editor should allow moving selections via drag and drop.")})),emptySelectionClipboard:R(new class extends _{constructor(){super(33,"emptySelectionClipboard",!0,{description:n.kg("emptySelectionClipboard","Controls whether copying without a selection copies the current line.")})}compute(e,t,i){return i&&e.emptySelectionClipboard}}),enableDropIntoEditor:R(new _(32,"enableDropIntoEditor",!0)),extraEditorClassName:R(new y(34,"extraEditorClassName","")),fastScrollSensitivity:R(new v(35,"fastScrollSensitivity",5,(e=>e<=0?5:e),{markdownDescription:n.kg("fastScrollSensitivity","Scrolling speed multiplier when pressing `Alt`.")})),find:R(new class extends d{constructor(){const e={cursorMoveOnType:!0,seedSearchStringFromSelection:"always",autoFindInSelection:"never",globalFindClipboard:!1,addExtraSpaceOnTop:!0,loop:!0};super(36,"find",e,{"editor.find.cursorMoveOnType":{type:"boolean",default:e.cursorMoveOnType,description:n.kg("find.cursorMoveOnType","Controls whether the cursor should jump to find matches while typing.")},"editor.find.seedSearchStringFromSelection":{type:"string",enum:["never","always","selection"],default:e.seedSearchStringFromSelection,enumDescriptions:[n.kg("editor.find.seedSearchStringFromSelection.never","Never seed search string from the editor selection."),n.kg("editor.find.seedSearchStringFromSelection.always","Always seed search string from the editor selection, including word at cursor position."),n.kg("editor.find.seedSearchStringFromSelection.selection","Only seed search string from the editor selection.")],description:n.kg("find.seedSearchStringFromSelection","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:[n.kg("editor.find.autoFindInSelection.never","Never turn on Find in Selection automatically (default)."),n.kg("editor.find.autoFindInSelection.always","Always turn on Find in Selection automatically."),n.kg("editor.find.autoFindInSelection.multiline","Turn on Find in Selection automatically when multiple lines of content are selected.")],description:n.kg("find.autoFindInSelection","Controls the condition for turning on Find in Selection automatically.")},"editor.find.globalFindClipboard":{type:"boolean",default:e.globalFindClipboard,description:n.kg("find.globalFindClipboard","Controls whether the Find Widget should read or modify the shared find clipboard on macOS."),included:r.zx},"editor.find.addExtraSpaceOnTop":{type:"boolean",default:e.addExtraSpaceOnTop,description:n.kg("find.addExtraSpaceOnTop","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:n.kg("find.loop","Controls whether the search automatically restarts from the beginning (or the end) when no further matches can be found.")}})}validate(e){if(!e||"object"!==typeof e)return this.defaultValue;const t=e;return{cursorMoveOnType:k(t.cursorMoveOnType,this.defaultValue.cursorMoveOnType),seedSearchStringFromSelection:"boolean"===typeof e.seedSearchStringFromSelection?e.seedSearchStringFromSelection?"always":"never":w(t.seedSearchStringFromSelection,this.defaultValue.seedSearchStringFromSelection,["never","always","selection"]),autoFindInSelection:"boolean"===typeof e.autoFindInSelection?e.autoFindInSelection?"always":"never":w(t.autoFindInSelection,this.defaultValue.autoFindInSelection,["never","always","multiline"]),globalFindClipboard:k(t.globalFindClipboard,this.defaultValue.globalFindClipboard),addExtraSpaceOnTop:k(t.addExtraSpaceOnTop,this.defaultValue.addExtraSpaceOnTop),loop:k(t.loop,this.defaultValue.loop)}}}),fixedOverflowWidgets:R(new _(37,"fixedOverflowWidgets",!1)),folding:R(new _(38,"folding",!0,{description:n.kg("folding","Controls whether the editor has code folding enabled.")})),foldingStrategy:R(new S(39,"foldingStrategy","auto",["auto","indentation"],{enumDescriptions:[n.kg("foldingStrategy.auto","Use a language-specific folding strategy if available, else the indentation-based one."),n.kg("foldingStrategy.indentation","Use the indentation-based folding strategy.")],description:n.kg("foldingStrategy","Controls the strategy for computing folding ranges.")})),foldingHighlight:R(new _(40,"foldingHighlight",!0,{description:n.kg("foldingHighlight","Controls whether the editor should highlight folded ranges.")})),foldingImportsByDefault:R(new _(41,"foldingImportsByDefault",!1,{description:n.kg("foldingImportsByDefault","Controls whether the editor automatically collapses import ranges.")})),foldingMaximumRegions:R(new C(42,"foldingMaximumRegions",5e3,10,65e3,{description:n.kg("foldingMaximumRegions","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:R(new _(43,"unfoldOnClickAfterEndOfLine",!1,{description:n.kg("unfoldOnClickAfterEndOfLine","Controls whether clicking on the empty content after a folded line will unfold the line.")})),fontFamily:R(new y(44,"fontFamily",A.fontFamily,{description:n.kg("fontFamily","Controls the font family.")})),fontInfo:R(new class extends p{constructor(){super(45)}compute(e,t,i){return e.fontInfo}}),fontLigatures2:R(new I),fontSize:R(new class extends m{constructor(){super(47,"fontSize",A.fontSize,{type:"number",minimum:6,maximum:100,default:A.fontSize,description:n.kg("fontSize","Controls the font size in pixels.")})}validate(e){const t=v.float(e,this.defaultValue);return 0===t?A.fontSize:v.clamp(t,6,100)}compute(e,t,i){return e.fontInfo.fontSize}}),fontWeight:R(new D),formatOnPaste:R(new _(49,"formatOnPaste",!1,{description:n.kg("formatOnPaste","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:R(new _(50,"formatOnType",!1,{description:n.kg("formatOnType","Controls whether the editor should automatically format the line after typing.")})),glyphMargin:R(new _(51,"glyphMargin",!0,{description:n.kg("glyphMargin","Controls whether the editor should render the vertical glyph margin. Glyph margin is mostly used for debugging.")})),gotoLocation:R(new class extends d{constructor(){const e={multiple:"peek",multipleDefinitions:"peek",multipleTypeDefinitions:"peek",multipleDeclarations:"peek",multipleImplementations:"peek",multipleReferences:"peek",alternativeDefinitionCommand:"editor.action.goToReferences",alternativeTypeDefinitionCommand:"editor.action.goToReferences",alternativeDeclarationCommand:"editor.action.goToReferences",alternativeImplementationCommand:"",alternativeReferenceCommand:""},t={type:"string",enum:["peek","gotoAndPeek","goto"],default:e.multiple,enumDescriptions:[n.kg("editor.gotoLocation.multiple.peek","Show peek view of the results (default)"),n.kg("editor.gotoLocation.multiple.gotoAndPeek","Go to the primary result and show a peek view"),n.kg("editor.gotoLocation.multiple.goto","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(52,"gotoLocation",e,{"editor.gotoLocation.multiple":{deprecationMessage:n.kg("editor.gotoLocation.multiple.deprecated","This setting is deprecated, please use separate settings like 'editor.editor.gotoLocation.multipleDefinitions' or 'editor.editor.gotoLocation.multipleImplementations' instead.")},"editor.gotoLocation.multipleDefinitions":Object.assign({description:n.kg("editor.editor.gotoLocation.multipleDefinitions","Controls the behavior the 'Go to Definition'-command when multiple target locations exist.")},t),"editor.gotoLocation.multipleTypeDefinitions":Object.assign({description:n.kg("editor.editor.gotoLocation.multipleTypeDefinitions","Controls the behavior the 'Go to Type Definition'-command when multiple target locations exist.")},t),"editor.gotoLocation.multipleDeclarations":Object.assign({description:n.kg("editor.editor.gotoLocation.multipleDeclarations","Controls the behavior the 'Go to Declaration'-command when multiple target locations exist.")},t),"editor.gotoLocation.multipleImplementations":Object.assign({description:n.kg("editor.editor.gotoLocation.multipleImplemenattions","Controls the behavior the 'Go to Implementations'-command when multiple target locations exist.")},t),"editor.gotoLocation.multipleReferences":Object.assign({description:n.kg("editor.editor.gotoLocation.multipleReferences","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:n.kg("alternativeDefinitionCommand","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:n.kg("alternativeTypeDefinitionCommand","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:n.kg("alternativeDeclarationCommand","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:n.kg("alternativeImplementationCommand","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:n.kg("alternativeReferenceCommand","Alternative command id that is being executed when the result of 'Go to Reference' is the current location.")}})}validate(e){var t,i,n,r,s;if(!e||"object"!==typeof e)return this.defaultValue;const o=e;return{multiple:w(o.multiple,this.defaultValue.multiple,["peek","gotoAndPeek","goto"]),multipleDefinitions:null!==(t=o.multipleDefinitions)&&void 0!==t?t:w(o.multipleDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleTypeDefinitions:null!==(i=o.multipleTypeDefinitions)&&void 0!==i?i:w(o.multipleTypeDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleDeclarations:null!==(n=o.multipleDeclarations)&&void 0!==n?n:w(o.multipleDeclarations,"peek",["peek","gotoAndPeek","goto"]),multipleImplementations:null!==(r=o.multipleImplementations)&&void 0!==r?r:w(o.multipleImplementations,"peek",["peek","gotoAndPeek","goto"]),multipleReferences:null!==(s=o.multipleReferences)&&void 0!==s?s:w(o.multipleReferences,"peek",["peek","gotoAndPeek","goto"]),alternativeDefinitionCommand:y.string(o.alternativeDefinitionCommand,this.defaultValue.alternativeDefinitionCommand),alternativeTypeDefinitionCommand:y.string(o.alternativeTypeDefinitionCommand,this.defaultValue.alternativeTypeDefinitionCommand),alternativeDeclarationCommand:y.string(o.alternativeDeclarationCommand,this.defaultValue.alternativeDeclarationCommand),alternativeImplementationCommand:y.string(o.alternativeImplementationCommand,this.defaultValue.alternativeImplementationCommand),alternativeReferenceCommand:y.string(o.alternativeReferenceCommand,this.defaultValue.alternativeReferenceCommand)}}}),hideCursorInOverviewRuler:R(new _(53,"hideCursorInOverviewRuler",!1,{description:n.kg("hideCursorInOverviewRuler","Controls whether the cursor should be hidden in the overview ruler.")})),hover:R(new class extends d{constructor(){const e={enabled:!0,delay:300,sticky:!0,above:!0};super(54,"hover",e,{"editor.hover.enabled":{type:"boolean",default:e.enabled,description:n.kg("hover.enabled","Controls whether the hover is shown.")},"editor.hover.delay":{type:"number",default:e.delay,minimum:0,maximum:1e4,description:n.kg("hover.delay","Controls the delay in milliseconds after which the hover is shown.")},"editor.hover.sticky":{type:"boolean",default:e.sticky,description:n.kg("hover.sticky","Controls whether the hover should remain visible when mouse is moved over it.")},"editor.hover.above":{type:"boolean",default:e.above,description:n.kg("hover.above","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:k(t.enabled,this.defaultValue.enabled),delay:C.clampedInt(t.delay,this.defaultValue.delay,0,1e4),sticky:k(t.sticky,this.defaultValue.sticky),above:k(t.above,this.defaultValue.above)}}}),inDiffEditor:R(new _(55,"inDiffEditor",!1)),letterSpacing:R(new v(57,"letterSpacing",A.letterSpacing,(e=>v.clamp(e,-5,20)),{description:n.kg("letterSpacing","Controls the letter spacing in pixels.")})),lightbulb:R(new class extends d{constructor(){const e={enabled:!0};super(58,"lightbulb",e,{"editor.lightbulb.enabled":{type:"boolean",default:e.enabled,description:n.kg("codeActions","Enables the code action lightbulb in the editor.")}})}validate(e){if(!e||"object"!==typeof e)return this.defaultValue;return{enabled:k(e.enabled,this.defaultValue.enabled)}}}),lineDecorationsWidth:R(new m(59,"lineDecorationsWidth",10)),lineHeight:R(new class extends v{constructor(){super(60,"lineHeight",A.lineHeight,(e=>v.clamp(e,0,150)),{markdownDescription:n.kg("lineHeight","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.")})}compute(e,t,i){return e.fontInfo.lineHeight}}),lineNumbers:R(new class extends d{constructor(){super(61,"lineNumbers",{renderType:1,renderFn:null},{type:"string",enum:["off","on","relative","interval"],enumDescriptions:[n.kg("lineNumbers.off","Line numbers are not rendered."),n.kg("lineNumbers.on","Line numbers are rendered as absolute number."),n.kg("lineNumbers.relative","Line numbers are rendered as distance in lines to cursor position."),n.kg("lineNumbers.interval","Line numbers are rendered every 10 lines.")],default:"on",description:n.kg("lineNumbers","Controls the display of line numbers.")})}validate(e){let t=this.defaultValue.renderType,i=this.defaultValue.renderFn;return"undefined"!==typeof e&&("function"===typeof e?(t=4,i=e):t="interval"===e?3:"relative"===e?2:"on"===e?1:0),{renderType:t,renderFn:i}}}),lineNumbersMinChars:R(new C(62,"lineNumbersMinChars",5,1,300)),linkedEditing:R(new _(63,"linkedEditing",!1,{description:n.kg("linkedEditing","Controls whether the editor has linked editing enabled. Depending on the language, related symbols, e.g. HTML tags, are updated while editing.")})),links:R(new _(64,"links",!0,{description:n.kg("links","Controls whether the editor should detect links and make them clickable.")})),matchBrackets:R(new S(65,"matchBrackets","always",["always","near","never"],{description:n.kg("matchBrackets","Highlight matching brackets.")})),minimap:R(new class extends d{constructor(){const e={enabled:!0,size:"proportional",side:"right",showSlider:"mouseover",autohide:!1,renderCharacters:!0,maxColumn:120,scale:1};super(66,"minimap",e,{"editor.minimap.enabled":{type:"boolean",default:e.enabled,description:n.kg("minimap.enabled","Controls whether the minimap is shown.")},"editor.minimap.autohide":{type:"boolean",default:e.autohide,description:n.kg("minimap.autohide","Controls whether the minimap is hidden automatically.")},"editor.minimap.size":{type:"string",enum:["proportional","fill","fit"],enumDescriptions:[n.kg("minimap.size.proportional","The minimap has the same size as the editor contents (and might scroll)."),n.kg("minimap.size.fill","The minimap will stretch or shrink as necessary to fill the height of the editor (no scrolling)."),n.kg("minimap.size.fit","The minimap will shrink as necessary to never be larger than the editor (no scrolling).")],default:e.size,description:n.kg("minimap.size","Controls the size of the minimap.")},"editor.minimap.side":{type:"string",enum:["left","right"],default:e.side,description:n.kg("minimap.side","Controls the side where to render the minimap.")},"editor.minimap.showSlider":{type:"string",enum:["always","mouseover"],default:e.showSlider,description:n.kg("minimap.showSlider","Controls when the minimap slider is shown.")},"editor.minimap.scale":{type:"number",default:e.scale,minimum:1,maximum:3,enum:[1,2,3],description:n.kg("minimap.scale","Scale of content drawn in the minimap: 1, 2 or 3.")},"editor.minimap.renderCharacters":{type:"boolean",default:e.renderCharacters,description:n.kg("minimap.renderCharacters","Render the actual characters on a line as opposed to color blocks.")},"editor.minimap.maxColumn":{type:"number",default:e.maxColumn,description:n.kg("minimap.maxColumn","Limit the width of the minimap to render at most a certain number of columns.")}})}validate(e){if(!e||"object"!==typeof e)return this.defaultValue;const t=e;return{enabled:k(t.enabled,this.defaultValue.enabled),autohide:k(t.autohide,this.defaultValue.autohide),size:w(t.size,this.defaultValue.size,["proportional","fill","fit"]),side:w(t.side,this.defaultValue.side,["right","left"]),showSlider:w(t.showSlider,this.defaultValue.showSlider,["always","mouseover"]),renderCharacters:k(t.renderCharacters,this.defaultValue.renderCharacters),scale:C.clampedInt(t.scale,1,1,3),maxColumn:C.clampedInt(t.maxColumn,this.defaultValue.maxColumn,1,1e4)}}}),mouseStyle:R(new S(67,"mouseStyle","text",["text","default","copy"])),mouseWheelScrollSensitivity:R(new v(68,"mouseWheelScrollSensitivity",1,(e=>0===e?1:e),{markdownDescription:n.kg("mouseWheelScrollSensitivity","A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")})),mouseWheelZoom:R(new _(69,"mouseWheelZoom",!1,{markdownDescription:n.kg("mouseWheelZoom","Zoom the font of the editor when using mouse wheel and holding `Ctrl`.")})),multiCursorMergeOverlapping:R(new _(70,"multiCursorMergeOverlapping",!0,{description:n.kg("multiCursorMergeOverlapping","Merge multiple cursors when they are overlapping.")})),multiCursorModifier:R(new L(71,"multiCursorModifier","altKey","alt",["ctrlCmd","alt"],(function(e){return"ctrlCmd"===e?r.zx?"metaKey":"ctrlKey":"altKey"}),{markdownEnumDescriptions:[n.kg("multiCursorModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),n.kg("multiCursorModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],markdownDescription:n.kg({key:"multiCursorModifier",comment:["- `ctrlCmd` refers to a value the setting can take and should not be localized.","- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized."]},"The modifier to be used to add multiple cursors with the mouse. The Go to Definition and Open Link mouse gestures will adapt such that they do not conflict with the [multicursor modifier](https://code.visualstudio.com/docs/editor/codebasics#_multicursor-modifier).")})),multiCursorPaste:R(new S(72,"multiCursorPaste","spread",["spread","full"],{markdownEnumDescriptions:[n.kg("multiCursorPaste.spread","Each cursor pastes a single line of the text."),n.kg("multiCursorPaste.full","Each cursor pastes the full text.")],markdownDescription:n.kg("multiCursorPaste","Controls pasting when the line count of the pasted text matches the cursor count.")})),occurrencesHighlight:R(new _(73,"occurrencesHighlight",!0,{description:n.kg("occurrencesHighlight","Controls whether the editor should highlight semantic symbol occurrences.")})),overviewRulerBorder:R(new _(74,"overviewRulerBorder",!0,{description:n.kg("overviewRulerBorder","Controls whether a border should be drawn around the overview ruler.")})),overviewRulerLanes:R(new C(75,"overviewRulerLanes",3,0,3)),padding:R(new class extends d{constructor(){super(76,"padding",{top:0,bottom:0},{"editor.padding.top":{type:"number",default:0,minimum:0,maximum:1e3,description:n.kg("padding.top","Controls the amount of space between the top edge of the editor and the first line.")},"editor.padding.bottom":{type:"number",default:0,minimum:0,maximum:1e3,description:n.kg("padding.bottom","Controls the amount of space between the bottom edge of the editor and the last line.")}})}validate(e){if(!e||"object"!==typeof e)return this.defaultValue;const t=e;return{top:C.clampedInt(t.top,0,0,1e3),bottom:C.clampedInt(t.bottom,0,0,1e3)}}}),parameterHints:R(new class extends d{constructor(){const e={enabled:!0,cycle:!1};super(77,"parameterHints",e,{"editor.parameterHints.enabled":{type:"boolean",default:e.enabled,description:n.kg("parameterHints.enabled","Enables a pop-up that shows parameter documentation and type information as you type.")},"editor.parameterHints.cycle":{type:"boolean",default:e.cycle,description:n.kg("parameterHints.cycle","Controls whether the parameter hints menu cycles or closes when reaching the end of the list.")}})}validate(e){if(!e||"object"!==typeof e)return this.defaultValue;const t=e;return{enabled:k(t.enabled,this.defaultValue.enabled),cycle:k(t.cycle,this.defaultValue.cycle)}}}),peekWidgetDefaultFocus:R(new S(78,"peekWidgetDefaultFocus","tree",["tree","editor"],{enumDescriptions:[n.kg("peekWidgetDefaultFocus.tree","Focus the tree when opening peek"),n.kg("peekWidgetDefaultFocus.editor","Focus the editor when opening peek")],description:n.kg("peekWidgetDefaultFocus","Controls whether to focus the inline editor or the tree in the peek widget.")})),definitionLinkOpensInPeek:R(new _(79,"definitionLinkOpensInPeek",!1,{description:n.kg("definitionLinkOpensInPeek","Controls whether the Go to Definition mouse gesture always opens the peek widget.")})),quickSuggestions:R(new class extends d{constructor(){const e={other:"on",comments:"off",strings:"off"},t=[{type:"boolean"},{type:"string",enum:["on","inline","off"],enumDescriptions:[n.kg("on","Quick suggestions show inside the suggest widget"),n.kg("inline","Quick suggestions show as ghost text"),n.kg("off","Quick suggestions are disabled")]}];super(80,"quickSuggestions",e,{type:"object",additionalProperties:!1,properties:{strings:{anyOf:t,default:e.strings,description:n.kg("quickSuggestions.strings","Enable quick suggestions inside strings.")},comments:{anyOf:t,default:e.comments,description:n.kg("quickSuggestions.comments","Enable quick suggestions inside comments.")},other:{anyOf:t,default:e.other,description:n.kg("quickSuggestions.other","Enable quick suggestions outside of strings and comments.")}},default:e,markdownDescription:n.kg("quickSuggestions","Controls whether suggestions should automatically show up while typing. This can be controlled for typing in comments, strings, and other code. Quick suggestion can be configured to show as ghost text or with the suggest widget. Also be aware of the '{0}'-setting which controls if suggestions are triggered by special characters.","#editor.suggestOnTriggerCharacters#")}),this.defaultValue=e}validate(e){if("boolean"===typeof e){const t=e?"on":"off";return{comments:t,strings:t,other:t}}if(!e||"object"!==typeof e)return this.defaultValue;const{other:t,comments:i,strings:n}=e,r=["on","inline","off"];let s,o,a;return s="boolean"===typeof t?t?"on":"off":w(t,this.defaultValue.other,r),o="boolean"===typeof i?i?"on":"off":w(i,this.defaultValue.comments,r),a="boolean"===typeof n?n?"on":"off":w(n,this.defaultValue.strings,r),{other:s,comments:o,strings:a}}}),quickSuggestionsDelay:R(new C(81,"quickSuggestionsDelay",10,0,1073741824,{description:n.kg("quickSuggestionsDelay","Controls the delay in milliseconds after which quick suggestions will show up.")})),readOnly:R(new _(82,"readOnly",!1)),renameOnType:R(new _(83,"renameOnType",!1,{description:n.kg("renameOnType","Controls whether the editor auto renames on type."),markdownDeprecationMessage:n.kg("renameOnTypeDeprecate","Deprecated, use `editor.linkedEditing` instead.")})),renderControlCharacters:R(new _(84,"renderControlCharacters",!0,{description:n.kg("renderControlCharacters","Controls whether the editor should render control characters."),restricted:!0})),renderFinalNewline:R(new _(85,"renderFinalNewline",!0,{description:n.kg("renderFinalNewline","Render last line number when the file ends with a newline.")})),renderLineHighlight:R(new S(86,"renderLineHighlight","line",["none","gutter","line","all"],{enumDescriptions:["","","",n.kg("renderLineHighlight.all","Highlights both the gutter and the current line.")],description:n.kg("renderLineHighlight","Controls how the editor should render the current line highlight.")})),renderLineHighlightOnlyWhenFocus:R(new _(87,"renderLineHighlightOnlyWhenFocus",!1,{description:n.kg("renderLineHighlightOnlyWhenFocus","Controls if the editor should render the current line highlight only when the editor is focused.")})),renderValidationDecorations:R(new S(88,"renderValidationDecorations","editable",["editable","on","off"])),renderWhitespace:R(new S(89,"renderWhitespace","selection",["none","boundary","selection","trailing","all"],{enumDescriptions:["",n.kg("renderWhitespace.boundary","Render whitespace characters except for single spaces between words."),n.kg("renderWhitespace.selection","Render whitespace characters only on selected text."),n.kg("renderWhitespace.trailing","Render only trailing whitespace characters."),""],description:n.kg("renderWhitespace","Controls how the editor should render whitespace characters.")})),revealHorizontalRightPadding:R(new C(90,"revealHorizontalRightPadding",30,0,1e3)),roundedSelection:R(new _(91,"roundedSelection",!0,{description:n.kg("roundedSelection","Controls whether selections should have rounded corners.")})),rulers:R(new class extends d{constructor(){const e=[],t={type:"number",description:n.kg("rulers.size","Number of monospace characters at which this editor ruler will render.")};super(92,"rulers",e,{type:"array",items:{anyOf:[t,{type:["object"],properties:{column:t,color:{type:"string",description:n.kg("rulers.color","Color of this editor ruler."),format:"color-hex"}}}]},default:e,description:n.kg("rulers","Render vertical rulers after a certain number of monospace characters. Use multiple values for multiple rulers. No rulers are drawn if array is empty.")})}validate(e){if(Array.isArray(e)){const t=[];for(const i of e)if("number"===typeof i)t.push({column:C.clampedInt(i,0,0,1e4),color:null});else if(i&&"object"===typeof i){const e=i;t.push({column:C.clampedInt(e.column,0,0,1e4),color:e.color})}return t.sort(((e,t)=>e.column-t.column)),t}return this.defaultValue}}),scrollbar:R(new class extends d{constructor(){const e={vertical:1,horizontal:1,arrowSize:11,useShadows:!0,verticalHasArrows:!1,horizontalHasArrows:!1,horizontalScrollbarSize:12,horizontalSliderSize:12,verticalScrollbarSize:14,verticalSliderSize:14,handleMouseWheel:!0,alwaysConsumeMouseWheel:!0,scrollByPage:!1};super(93,"scrollbar",e,{"editor.scrollbar.vertical":{type:"string",enum:["auto","visible","hidden"],enumDescriptions:[n.kg("scrollbar.vertical.auto","The vertical scrollbar will be visible only when necessary."),n.kg("scrollbar.vertical.visible","The vertical scrollbar will always be visible."),n.kg("scrollbar.vertical.fit","The vertical scrollbar will always be hidden.")],default:"auto",description:n.kg("scrollbar.vertical","Controls the visibility of the vertical scrollbar.")},"editor.scrollbar.horizontal":{type:"string",enum:["auto","visible","hidden"],enumDescriptions:[n.kg("scrollbar.horizontal.auto","The horizontal scrollbar will be visible only when necessary."),n.kg("scrollbar.horizontal.visible","The horizontal scrollbar will always be visible."),n.kg("scrollbar.horizontal.fit","The horizontal scrollbar will always be hidden.")],default:"auto",description:n.kg("scrollbar.horizontal","Controls the visibility of the horizontal scrollbar.")},"editor.scrollbar.verticalScrollbarSize":{type:"number",default:e.verticalScrollbarSize,description:n.kg("scrollbar.verticalScrollbarSize","The width of the vertical scrollbar.")},"editor.scrollbar.horizontalScrollbarSize":{type:"number",default:e.horizontalScrollbarSize,description:n.kg("scrollbar.horizontalScrollbarSize","The height of the horizontal scrollbar.")},"editor.scrollbar.scrollByPage":{type:"boolean",default:e.scrollByPage,description:n.kg("scrollbar.scrollByPage","Controls whether clicks scroll by page or jump to click position.")}})}validate(e){if(!e||"object"!==typeof e)return this.defaultValue;const t=e,i=C.clampedInt(t.horizontalScrollbarSize,this.defaultValue.horizontalScrollbarSize,0,1e3),n=C.clampedInt(t.verticalScrollbarSize,this.defaultValue.verticalScrollbarSize,0,1e3);return{arrowSize:C.clampedInt(t.arrowSize,this.defaultValue.arrowSize,0,1e3),vertical:O(t.vertical,this.defaultValue.vertical),horizontal:O(t.horizontal,this.defaultValue.horizontal),useShadows:k(t.useShadows,this.defaultValue.useShadows),verticalHasArrows:k(t.verticalHasArrows,this.defaultValue.verticalHasArrows),horizontalHasArrows:k(t.horizontalHasArrows,this.defaultValue.horizontalHasArrows),handleMouseWheel:k(t.handleMouseWheel,this.defaultValue.handleMouseWheel),alwaysConsumeMouseWheel:k(t.alwaysConsumeMouseWheel,this.defaultValue.alwaysConsumeMouseWheel),horizontalScrollbarSize:i,horizontalSliderSize:C.clampedInt(t.horizontalSliderSize,i,0,1e3),verticalScrollbarSize:n,verticalSliderSize:C.clampedInt(t.verticalSliderSize,n,0,1e3),scrollByPage:k(t.scrollByPage,this.defaultValue.scrollByPage)}}}),scrollBeyondLastColumn:R(new C(94,"scrollBeyondLastColumn",4,0,1073741824,{description:n.kg("scrollBeyondLastColumn","Controls the number of extra characters beyond which the editor will scroll horizontally.")})),scrollBeyondLastLine:R(new _(95,"scrollBeyondLastLine",!0,{description:n.kg("scrollBeyondLastLine","Controls whether the editor will scroll beyond the last line.")})),scrollPredominantAxis:R(new _(96,"scrollPredominantAxis",!0,{description:n.kg("scrollPredominantAxis","Scroll only along the predominant axis when scrolling both vertically and horizontally at the same time. Prevents horizontal drift when scrolling vertically on a trackpad.")})),selectionClipboard:R(new _(97,"selectionClipboard",!0,{description:n.kg("selectionClipboard","Controls whether the Linux primary clipboard should be supported."),included:r.j9})),selectionHighlight:R(new _(98,"selectionHighlight",!0,{description:n.kg("selectionHighlight","Controls whether the editor should highlight matches similar to the selection.")})),selectOnLineNumbers:R(new _(99,"selectOnLineNumbers",!0)),showFoldingControls:R(new S(100,"showFoldingControls","mouseover",["always","never","mouseover"],{enumDescriptions:[n.kg("showFoldingControls.always","Always show the folding controls."),n.kg("showFoldingControls.never","Never show the folding controls and reduce the gutter size."),n.kg("showFoldingControls.mouseover","Only show the folding controls when the mouse is over the gutter.")],description:n.kg("showFoldingControls","Controls when the folding controls on the gutter are shown.")})),showUnused:R(new _(101,"showUnused",!0,{description:n.kg("showUnused","Controls fading out of unused code.")})),showDeprecated:R(new _(127,"showDeprecated",!0,{description:n.kg("showDeprecated","Controls strikethrough deprecated variables.")})),inlayHints:R(new class extends d{constructor(){const e={enabled:"on",fontSize:0,fontFamily:"",padding:!1};super(128,"inlayHints",e,{"editor.inlayHints.enabled":{type:"string",default:e.enabled,description:n.kg("inlayHints.enable","Enables the inlay hints in the editor."),enum:["on","onUnlessPressed","offUnlessPressed","off"],markdownEnumDescriptions:[n.kg("editor.inlayHints.on","Inlay hints are enabled"),n.kg("editor.inlayHints.onUnlessPressed","Inlay hints are showing by default and hide when holding `Ctrl+Alt`"),n.kg("editor.inlayHints.offUnlessPressed","Inlay hints are hidden by default and show when holding `Ctrl+Alt`"),n.kg("editor.inlayHints.off","Inlay hints are disabled")]},"editor.inlayHints.fontSize":{type:"number",default:e.fontSize,markdownDescription:n.kg("inlayHints.fontSize","Controls font size of inlay hints in the editor. As default the {0} is used when the configured value is less than {1} or greater than the editor font size.","`#editor.fontSize#`","`5`")},"editor.inlayHints.fontFamily":{type:"string",default:e.fontFamily,markdownDescription:n.kg("inlayHints.fontFamily","Controls font family of inlay hints in the editor. When set to empty, the {0} is used.","`#editor.fontFamily#`")},"editor.inlayHints.padding":{type:"boolean",default:e.padding,description:n.kg("inlayHints.padding","Enables the padding around the inlay hints in the editor.")}})}validate(e){if(!e||"object"!==typeof e)return this.defaultValue;const t=e;return"boolean"===typeof t.enabled&&(t.enabled=t.enabled?"on":"off"),{enabled:w(t.enabled,this.defaultValue.enabled,["on","off","offUnlessPressed","onUnlessPressed"]),fontSize:C.clampedInt(t.fontSize,this.defaultValue.fontSize,0,100),fontFamily:y.string(t.fontFamily,this.defaultValue.fontFamily),padding:k(t.padding,this.defaultValue.padding)}}}),snippetSuggestions:R(new S(102,"snippetSuggestions","inline",["top","bottom","inline","none"],{enumDescriptions:[n.kg("snippetSuggestions.top","Show snippet suggestions on top of other suggestions."),n.kg("snippetSuggestions.bottom","Show snippet suggestions below other suggestions."),n.kg("snippetSuggestions.inline","Show snippets suggestions with other suggestions."),n.kg("snippetSuggestions.none","Do not show snippet suggestions.")],description:n.kg("snippetSuggestions","Controls whether snippets are shown with other suggestions and how they are sorted.")})),smartSelect:R(new class extends d{constructor(){super(103,"smartSelect",{selectLeadingAndTrailingWhitespace:!0},{"editor.smartSelect.selectLeadingAndTrailingWhitespace":{description:n.kg("selectLeadingAndTrailingWhitespace","Whether leading and trailing whitespace should always be selected."),default:!0,type:"boolean"}})}validate(e){return e&&"object"===typeof e?{selectLeadingAndTrailingWhitespace:k(e.selectLeadingAndTrailingWhitespace,this.defaultValue.selectLeadingAndTrailingWhitespace)}:this.defaultValue}}),smoothScrolling:R(new _(104,"smoothScrolling",!1,{description:n.kg("smoothScrolling","Controls whether the editor will scroll using an animation.")})),stopRenderingLineAfter:R(new C(106,"stopRenderingLineAfter",1e4,-1,1073741824)),suggest:R(new class extends d{constructor(){const e={insertMode:"insert",filterGraceful:!0,snippetsPreventQuickSuggestions:!0,localityBonus:!1,shareSuggestSelections:!1,showIcons:!0,showStatusBar:!1,preview:!1,previewMode:"subwordSmart",showInlineDetails:!0,showMethods:!0,showFunctions:!0,showConstructors:!0,showDeprecated:!0,showFields:!0,showVariables:!0,showClasses:!0,showStructs:!0,showInterfaces:!0,showModules:!0,showProperties:!0,showEvents:!0,showOperators:!0,showUnits:!0,showValues:!0,showConstants:!0,showEnums:!0,showEnumMembers:!0,showKeywords:!0,showWords:!0,showColors:!0,showFiles:!0,showReferences:!0,showFolders:!0,showTypeParameters:!0,showSnippets:!0,showUsers:!0,showIssues:!0};super(107,"suggest",e,{"editor.suggest.insertMode":{type:"string",enum:["insert","replace"],enumDescriptions:[n.kg("suggest.insertMode.insert","Insert suggestion without overwriting text right of the cursor."),n.kg("suggest.insertMode.replace","Insert suggestion and overwrite text right of the cursor.")],default:e.insertMode,description:n.kg("suggest.insertMode","Controls whether words are overwritten when accepting completions. Note that this depends on extensions opting into this feature.")},"editor.suggest.filterGraceful":{type:"boolean",default:e.filterGraceful,description:n.kg("suggest.filterGraceful","Controls whether filtering and sorting suggestions accounts for small typos.")},"editor.suggest.localityBonus":{type:"boolean",default:e.localityBonus,description:n.kg("suggest.localityBonus","Controls whether sorting favors words that appear close to the cursor.")},"editor.suggest.shareSuggestSelections":{type:"boolean",default:e.shareSuggestSelections,markdownDescription:n.kg("suggest.shareSuggestSelections","Controls whether remembered suggestion selections are shared between multiple workspaces and windows (needs `#editor.suggestSelection#`).")},"editor.suggest.snippetsPreventQuickSuggestions":{type:"boolean",default:e.snippetsPreventQuickSuggestions,description:n.kg("suggest.snippetsPreventQuickSuggestions","Controls whether an active snippet prevents quick suggestions.")},"editor.suggest.showIcons":{type:"boolean",default:e.showIcons,description:n.kg("suggest.showIcons","Controls whether to show or hide icons in suggestions.")},"editor.suggest.showStatusBar":{type:"boolean",default:e.showStatusBar,description:n.kg("suggest.showStatusBar","Controls the visibility of the status bar at the bottom of the suggest widget.")},"editor.suggest.preview":{type:"boolean",default:e.preview,description:n.kg("suggest.preview","Controls whether to preview the suggestion outcome in the editor.")},"editor.suggest.showInlineDetails":{type:"boolean",default:e.showInlineDetails,description:n.kg("suggest.showInlineDetails","Controls whether suggest details show inline with the label or only in the details widget")},"editor.suggest.maxVisibleSuggestions":{type:"number",deprecationMessage:n.kg("suggest.maxVisibleSuggestions.dep","This setting is deprecated. The suggest widget can now be resized.")},"editor.suggest.filteredTypes":{type:"object",deprecationMessage:n.kg("deprecated","This setting is deprecated, please use separate settings like 'editor.suggest.showKeywords' or 'editor.suggest.showSnippets' instead.")},"editor.suggest.showMethods":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showMethods","When enabled IntelliSense shows `method`-suggestions.")},"editor.suggest.showFunctions":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showFunctions","When enabled IntelliSense shows `function`-suggestions.")},"editor.suggest.showConstructors":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showConstructors","When enabled IntelliSense shows `constructor`-suggestions.")},"editor.suggest.showDeprecated":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showDeprecated","When enabled IntelliSense shows `deprecated`-suggestions.")},"editor.suggest.showFields":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showFields","When enabled IntelliSense shows `field`-suggestions.")},"editor.suggest.showVariables":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showVariables","When enabled IntelliSense shows `variable`-suggestions.")},"editor.suggest.showClasses":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showClasss","When enabled IntelliSense shows `class`-suggestions.")},"editor.suggest.showStructs":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showStructs","When enabled IntelliSense shows `struct`-suggestions.")},"editor.suggest.showInterfaces":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showInterfaces","When enabled IntelliSense shows `interface`-suggestions.")},"editor.suggest.showModules":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showModules","When enabled IntelliSense shows `module`-suggestions.")},"editor.suggest.showProperties":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showPropertys","When enabled IntelliSense shows `property`-suggestions.")},"editor.suggest.showEvents":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showEvents","When enabled IntelliSense shows `event`-suggestions.")},"editor.suggest.showOperators":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showOperators","When enabled IntelliSense shows `operator`-suggestions.")},"editor.suggest.showUnits":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showUnits","When enabled IntelliSense shows `unit`-suggestions.")},"editor.suggest.showValues":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showValues","When enabled IntelliSense shows `value`-suggestions.")},"editor.suggest.showConstants":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showConstants","When enabled IntelliSense shows `constant`-suggestions.")},"editor.suggest.showEnums":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showEnums","When enabled IntelliSense shows `enum`-suggestions.")},"editor.suggest.showEnumMembers":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showEnumMembers","When enabled IntelliSense shows `enumMember`-suggestions.")},"editor.suggest.showKeywords":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showKeywords","When enabled IntelliSense shows `keyword`-suggestions.")},"editor.suggest.showWords":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showTexts","When enabled IntelliSense shows `text`-suggestions.")},"editor.suggest.showColors":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showColors","When enabled IntelliSense shows `color`-suggestions.")},"editor.suggest.showFiles":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showFiles","When enabled IntelliSense shows `file`-suggestions.")},"editor.suggest.showReferences":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showReferences","When enabled IntelliSense shows `reference`-suggestions.")},"editor.suggest.showCustomcolors":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showCustomcolors","When enabled IntelliSense shows `customcolor`-suggestions.")},"editor.suggest.showFolders":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showFolders","When enabled IntelliSense shows `folder`-suggestions.")},"editor.suggest.showTypeParameters":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showTypeParameters","When enabled IntelliSense shows `typeParameter`-suggestions.")},"editor.suggest.showSnippets":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showSnippets","When enabled IntelliSense shows `snippet`-suggestions.")},"editor.suggest.showUsers":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showUsers","When enabled IntelliSense shows `user`-suggestions.")},"editor.suggest.showIssues":{type:"boolean",default:!0,markdownDescription:n.kg("editor.suggest.showIssues","When enabled IntelliSense shows `issues`-suggestions.")}})}validate(e){if(!e||"object"!==typeof e)return this.defaultValue;const t=e;return{insertMode:w(t.insertMode,this.defaultValue.insertMode,["insert","replace"]),filterGraceful:k(t.filterGraceful,this.defaultValue.filterGraceful),snippetsPreventQuickSuggestions:k(t.snippetsPreventQuickSuggestions,this.defaultValue.filterGraceful),localityBonus:k(t.localityBonus,this.defaultValue.localityBonus),shareSuggestSelections:k(t.shareSuggestSelections,this.defaultValue.shareSuggestSelections),showIcons:k(t.showIcons,this.defaultValue.showIcons),showStatusBar:k(t.showStatusBar,this.defaultValue.showStatusBar),preview:k(t.preview,this.defaultValue.preview),previewMode:w(t.previewMode,this.defaultValue.previewMode,["prefix","subword","subwordSmart"]),showInlineDetails:k(t.showInlineDetails,this.defaultValue.showInlineDetails),showMethods:k(t.showMethods,this.defaultValue.showMethods),showFunctions:k(t.showFunctions,this.defaultValue.showFunctions),showConstructors:k(t.showConstructors,this.defaultValue.showConstructors),showDeprecated:k(t.showDeprecated,this.defaultValue.showDeprecated),showFields:k(t.showFields,this.defaultValue.showFields),showVariables:k(t.showVariables,this.defaultValue.showVariables),showClasses:k(t.showClasses,this.defaultValue.showClasses),showStructs:k(t.showStructs,this.defaultValue.showStructs),showInterfaces:k(t.showInterfaces,this.defaultValue.showInterfaces),showModules:k(t.showModules,this.defaultValue.showModules),showProperties:k(t.showProperties,this.defaultValue.showProperties),showEvents:k(t.showEvents,this.defaultValue.showEvents),showOperators:k(t.showOperators,this.defaultValue.showOperators),showUnits:k(t.showUnits,this.defaultValue.showUnits),showValues:k(t.showValues,this.defaultValue.showValues),showConstants:k(t.showConstants,this.defaultValue.showConstants),showEnums:k(t.showEnums,this.defaultValue.showEnums),showEnumMembers:k(t.showEnumMembers,this.defaultValue.showEnumMembers),showKeywords:k(t.showKeywords,this.defaultValue.showKeywords),showWords:k(t.showWords,this.defaultValue.showWords),showColors:k(t.showColors,this.defaultValue.showColors),showFiles:k(t.showFiles,this.defaultValue.showFiles),showReferences:k(t.showReferences,this.defaultValue.showReferences),showFolders:k(t.showFolders,this.defaultValue.showFolders),showTypeParameters:k(t.showTypeParameters,this.defaultValue.showTypeParameters),showSnippets:k(t.showSnippets,this.defaultValue.showSnippets),showUsers:k(t.showUsers,this.defaultValue.showUsers),showIssues:k(t.showIssues,this.defaultValue.showIssues)}}}),inlineSuggest:R(new class extends d{constructor(){const e={enabled:!0,mode:"subwordSmart"};super(56,"inlineSuggest",e,{"editor.inlineSuggest.enabled":{type:"boolean",default:e.enabled,description:n.kg("inlineSuggest.enabled","Controls whether to automatically show inline suggestions in the editor.")}})}validate(e){if(!e||"object"!==typeof e)return this.defaultValue;const t=e;return{enabled:k(t.enabled,this.defaultValue.enabled),mode:w(t.mode,this.defaultValue.mode,["prefix","subword","subwordSmart"])}}}),suggestFontSize:R(new C(108,"suggestFontSize",0,0,1e3,{markdownDescription:n.kg("suggestFontSize","Font size for the suggest widget. When set to {0}, the value of {1} is used.","`0`","`#editor.fontSize#`")})),suggestLineHeight:R(new C(109,"suggestLineHeight",0,0,1e3,{markdownDescription:n.kg("suggestLineHeight","Line height for the suggest widget. When set to {0}, the value of {1} is used. The minimum value is 8.","`0`","`#editor.lineHeight#`")})),suggestOnTriggerCharacters:R(new _(110,"suggestOnTriggerCharacters",!0,{description:n.kg("suggestOnTriggerCharacters","Controls whether suggestions should automatically show up when typing trigger characters.")})),suggestSelection:R(new S(111,"suggestSelection","first",["first","recentlyUsed","recentlyUsedByPrefix"],{markdownEnumDescriptions:[n.kg("suggestSelection.first","Always select the first suggestion."),n.kg("suggestSelection.recentlyUsed","Select recent suggestions unless further typing selects one, e.g. `console.| -> console.log` because `log` has been completed recently."),n.kg("suggestSelection.recentlyUsedByPrefix","Select suggestions based on previous prefixes that have completed those suggestions, e.g. `co -> console` and `con -> const`.")],description:n.kg("suggestSelection","Controls how suggestions are pre-selected when showing the suggest list.")})),tabCompletion:R(new S(112,"tabCompletion","off",["on","off","onlySnippets"],{enumDescriptions:[n.kg("tabCompletion.on","Tab complete will insert the best matching suggestion when pressing tab."),n.kg("tabCompletion.off","Disable tab completions."),n.kg("tabCompletion.onlySnippets","Tab complete snippets when their prefix match. Works best when 'quickSuggestions' aren't enabled.")],description:n.kg("tabCompletion","Enables tab completions.")})),tabIndex:R(new C(113,"tabIndex",0,-1,1073741824)),unicodeHighlight:R(new class extends d{constructor(){const e={nonBasicASCII:M,invisibleCharacters:!0,ambiguousCharacters:!0,includeComments:M,includeStrings:!0,allowedCharacters:{},allowedLocales:{_os:!0,_vscode:!0}};super(114,"unicodeHighlight",e,{[B.nonBasicASCII]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,M],default:e.nonBasicASCII,description:n.kg("unicodeHighlight.nonBasicASCII","Controls whether all non-basic ASCII characters are highlighted. Only characters between U+0020 and U+007E, tab, line-feed and carriage-return are considered basic ASCII.")},[B.invisibleCharacters]:{restricted:!0,type:"boolean",default:e.invisibleCharacters,description:n.kg("unicodeHighlight.invisibleCharacters","Controls whether characters that just reserve space or have no width at all are highlighted.")},[B.ambiguousCharacters]:{restricted:!0,type:"boolean",default:e.ambiguousCharacters,description:n.kg("unicodeHighlight.ambiguousCharacters","Controls whether characters are highlighted that can be confused with basic ASCII characters, except those that are common in the current user locale.")},[B.includeComments]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,M],default:e.includeComments,description:n.kg("unicodeHighlight.includeComments","Controls whether characters in comments should also be subject to unicode highlighting.")},[B.includeStrings]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,M],default:e.includeStrings,description:n.kg("unicodeHighlight.includeStrings","Controls whether characters in strings should also be subject to unicode highlighting.")},[B.allowedCharacters]:{restricted:!0,type:"object",default:e.allowedCharacters,description:n.kg("unicodeHighlight.allowedCharacters","Defines allowed characters that are not being highlighted."),additionalProperties:{type:"boolean"}},[B.allowedLocales]:{restricted:!0,type:"object",additionalProperties:{type:"boolean"},default:e.allowedLocales,description:n.kg("unicodeHighlight.allowedLocales","Unicode characters that are common in allowed locales are not being highlighted.")}})}applyUpdate(e,t){let i=!1;t.allowedCharacters&&e&&(a.aI(e.allowedCharacters,t.allowedCharacters)||(e=Object.assign(Object.assign({},e),{allowedCharacters:t.allowedCharacters}),i=!0)),t.allowedLocales&&e&&(a.aI(e.allowedLocales,t.allowedLocales)||(e=Object.assign(Object.assign({},e),{allowedLocales:t.allowedLocales}),i=!0));const n=super.applyUpdate(e,t);return i?new g(n.newValue,!0):n}validate(e){if(!e||"object"!==typeof e)return this.defaultValue;const t=e;return{nonBasicASCII:N(t.nonBasicASCII,M,[!0,!1,M]),invisibleCharacters:k(t.invisibleCharacters,this.defaultValue.invisibleCharacters),ambiguousCharacters:k(t.ambiguousCharacters,this.defaultValue.ambiguousCharacters),includeComments:N(t.includeComments,M,[!0,!1,M]),includeStrings:N(t.includeStrings,M,[!0,!1,M]),allowedCharacters:this.validateBooleanMap(e.allowedCharacters,this.defaultValue.allowedCharacters),allowedLocales:this.validateBooleanMap(e.allowedLocales,this.defaultValue.allowedLocales)}}validateBooleanMap(e,t){if("object"!==typeof e||!e)return t;const i={};for(const[n,r]of Object.entries(e))!0===r&&(i[n]=!0);return i}}),unusualLineTerminators:R(new S(115,"unusualLineTerminators","prompt",["auto","off","prompt"],{enumDescriptions:[n.kg("unusualLineTerminators.auto","Unusual line terminators are automatically removed."),n.kg("unusualLineTerminators.off","Unusual line terminators are ignored."),n.kg("unusualLineTerminators.prompt","Unusual line terminators prompt to be removed.")],description:n.kg("unusualLineTerminators","Remove unusual line terminators that might cause problems.")})),useShadowDOM:R(new _(116,"useShadowDOM",!0)),useTabStops:R(new _(117,"useTabStops",!0,{description:n.kg("useTabStops","Inserting and deleting whitespace follows tab stops.")})),wordSeparators:R(new y(118,"wordSeparators",s.J3,{description:n.kg("wordSeparators","Characters that will be used as word separators when doing word related navigations or operations.")})),wordWrap:R(new S(119,"wordWrap","off",["off","on","wordWrapColumn","bounded"],{markdownEnumDescriptions:[n.kg("wordWrap.off","Lines will never wrap."),n.kg("wordWrap.on","Lines will wrap at the viewport width."),n.kg({key:"wordWrap.wordWrapColumn",comment:["- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at `#editor.wordWrapColumn#`."),n.kg({key:"wordWrap.bounded",comment:["- viewport means the edge of the visible window size.","- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at the minimum of viewport and `#editor.wordWrapColumn#`.")],description:n.kg({key:"wordWrap",comment:["- 'off', 'on', 'wordWrapColumn' and 'bounded' refer to values the setting can take and should not be localized.","- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Controls how lines should wrap.")})),wordWrapBreakAfterCharacters:R(new y(120,"wordWrapBreakAfterCharacters"," \t})]?|/&.,;\xa2\xb0\u2032\u2033\u2030\u2103\u3001\u3002\uff61\uff64\uffe0\uff0c\uff0e\uff1a\uff1b\uff1f\uff01\uff05\u30fb\uff65\u309d\u309e\u30fd\u30fe\u30fc\u30a1\u30a3\u30a5\u30a7\u30a9\u30c3\u30e3\u30e5\u30e7\u30ee\u30f5\u30f6\u3041\u3043\u3045\u3047\u3049\u3063\u3083\u3085\u3087\u308e\u3095\u3096\u31f0\u31f1\u31f2\u31f3\u31f4\u31f5\u31f6\u31f7\u31f8\u31f9\u31fa\u31fb\u31fc\u31fd\u31fe\u31ff\u3005\u303b\uff67\uff68\uff69\uff6a\uff6b\uff6c\uff6d\uff6e\uff6f\uff70\u201d\u3009\u300b\u300d\u300f\u3011\u3015\uff09\uff3d\uff5d\uff63")),wordWrapBreakBeforeCharacters:R(new y(121,"wordWrapBreakBeforeCharacters","([{\u2018\u201c\u3008\u300a\u300c\u300e\u3010\u3014\uff08\uff3b\uff5b\uff62\xa3\xa5\uff04\uffe1\uffe5+\uff0b")),wordWrapColumn:R(new C(122,"wordWrapColumn",80,1,1073741824,{markdownDescription:n.kg({key:"wordWrapColumn",comment:["- `editor.wordWrap` refers to a different setting and should not be localized.","- 'wordWrapColumn' and 'bounded' refer to values the different setting can take and should not be localized."]},"Controls the wrapping column of the editor when `#editor.wordWrap#` is `wordWrapColumn` or `bounded`.")})),wordWrapOverride1:R(new S(123,"wordWrapOverride1","inherit",["off","on","inherit"])),wordWrapOverride2:R(new S(124,"wordWrapOverride2","inherit",["off","on","inherit"])),wrappingIndent:R(new L(125,"wrappingIndent",1,"same",["none","same","indent","deepIndent"],(function(e){switch(e){case"none":return 0;case"same":return 1;case"indent":return 2;case"deepIndent":return 3}}),{enumDescriptions:[n.kg("wrappingIndent.none","No indentation. Wrapped lines begin at column 1."),n.kg("wrappingIndent.same","Wrapped lines get the same indentation as the parent."),n.kg("wrappingIndent.indent","Wrapped lines get +1 indentation toward the parent."),n.kg("wrappingIndent.deepIndent","Wrapped lines get +2 indentation toward the parent.")],description:n.kg("wrappingIndent","Controls the indentation of wrapped lines.")})),wrappingStrategy:R(new S(126,"wrappingStrategy","simple",["simple","advanced"],{enumDescriptions:[n.kg("wrappingStrategy.simple","Assumes that all characters are of the same width. This is a fast algorithm that works correctly for monospace fonts and certain scripts (like Latin characters) where glyphs are of equal width."),n.kg("wrappingStrategy.advanced","Delegates wrapping points computation to the browser. This is a slow algorithm, that might cause freezes for large files, but it works correctly in all cases.")],description:n.kg("wrappingStrategy","Controls the algorithm that computes wrapping points.")})),editorClassName:R(new class extends p{constructor(){super(129)}compute(e,t,i){const n=["monaco-editor"];return t.get(34)&&n.push(t.get(34)),e.extraEditorClassName&&n.push(e.extraEditorClassName),"default"===t.get(67)?n.push("mouse-default"):"copy"===t.get(67)&&n.push("mouse-copy"),t.get(101)&&n.push("showUnused"),t.get(127)&&n.push("showDeprecated"),n.join(" ")}}),pixelRatio:R(new class extends p{constructor(){super(130)}compute(e,t,i){return e.pixelRatio}}),tabFocusMode:R(new class extends p{constructor(){super(131)}compute(e,t,i){return!!t.get(82)||e.tabFocusMode}}),layoutInfo:R(new T),wrappingInfo:R(new class extends p{constructor(){super(133)}compute(e,t,i){const n=t.get(132);return{isDominatedByLongLines:e.isDominatedByLongLines,isWordWrapMinified:n.isWordWrapMinified,isViewportWrapping:n.isViewportWrapping,wrappingColumn:n.wrappingColumn}}})}},17924:(e,t,i)=>{i.d(t,{V:()=>r,y:()=>s});var n=i(59166);class r{constructor(e){const t=(0,n.W)(e);this._defaultValue=t,this._asciiMap=r._createAsciiMap(t),this._map=new Map}static _createAsciiMap(e){const t=new Uint8Array(256);for(let i=0;i<256;i++)t[i]=e;return t}set(e,t){const i=(0,n.W)(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}}class s{constructor(){this._actual=new r(0)}add(e){this._actual.set(e,1)}has(e){return 1===this._actual.get(e)}}},61619:(e,t,i)=>{i.d(t,{A:()=>r});var n=i(24638);class r{static _nextVisibleColumn(e,t,i){return 9===e?r.nextRenderTabStop(t,i):n.ne(e)||n.Ss(e)?t+2:t+1}static visibleColumnFromColumn(e,t,i){const r=Math.min(t-1,e.length),s=e.substring(0,r),o=new n.km(s);let a=0;for(;!o.eol();){const e=n.Z5(s,r,o.offset);o.nextGraphemeLength(),a=this._nextVisibleColumn(e,a,i)}return a}static columnFromVisibleColumn(e,t,i){if(t<=0)return 1;const r=e.length,s=new n.km(e);let o=0,a=1;for(;!s.eol();){const l=n.Z5(e,r,s.offset);s.nextGraphemeLength();const h=this._nextVisibleColumn(l,o,i),c=s.offset+1;if(h>=t){return h-t<t-o?c:a}o=h,a=c}return r+1}static nextRenderTabStop(e,t){return e+t-e%t}static nextIndentTabStop(e,t){return e+t-e%t}static prevRenderTabStop(e,t){return Math.max(0,e-1-(e-1)%t)}static prevIndentTabStop(e,t){return Math.max(0,e-1-(e-1)%t)}}},73983:(e,t,i)=>{i.d(t,{k:()=>r});var n=i(62915);class r{static insert(e,t){return{range:new n.Q(e.lineNumber,e.column,e.lineNumber,e.column),text:t,forceMoveMarkers:!0}}static delete(e){return{range:e,text:null}}static replace(e,t){return{range:e,text:t}}static replaceMove(e,t){return{range:e,text:t,forceMoveMarkers:!0}}}},22041:(e,t,i)=>{i.d(t,{$u:()=>S,AQ:()=>R,BD:()=>Q,Bo:()=>G,D0:()=>f,DH:()=>E,Ek:()=>O,I2:()=>q,IW:()=>Y,If:()=>$,Ln:()=>D,Mf:()=>h,P1:()=>te,Pe:()=>J,Qt:()=>b,RH:()=>M,RU:()=>w,WD:()=>ee,WS:()=>Z,WY:()=>ie,Xr:()=>x,aZ:()=>F,bB:()=>X,fj:()=>_,ik:()=>y,kG:()=>l,kM:()=>p,l5:()=>V,lQ:()=>z,n4:()=>K,pw:()=>v,s7:()=>j,sH:()=>H,sN:()=>P,ss:()=>W,v0:()=>k,vp:()=>N,x9:()=>L,yI:()=>A,yw:()=>T,zp:()=>U});var n=i(35819),r=i(74379),s=i(44824),o=i(16974),a=i(59281);const l=(0,s.x1A)("editor.lineHighlightBackground",{dark:null,light:null,hcDark:null,hcLight:null},n.kg("lineHighlight","Background color for the highlight of line at the cursor position.")),h=(0,s.x1A)("editor.lineHighlightBorder",{dark:"#282828",light:"#eeeeee",hcDark:"#f38518",hcLight:s.b1q},n.kg("lineHighlightBorderBox","Background color for the border around the line at the cursor position.")),c=(0,s.x1A)("editor.rangeHighlightBackground",{dark:"#ffffff0b",light:"#fdff0033",hcDark:null,hcLight:null},n.kg("rangeHighlight","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),u=(0,s.x1A)("editor.rangeHighlightBorder",{dark:null,light:null,hcDark:s.buw,hcLight:s.buw},n.kg("rangeHighlightBorder","Background color of the border around highlighted ranges."),!0),d=(0,s.x1A)("editor.symbolHighlightBackground",{dark:s.Ubg,light:s.Ubg,hcDark:null,hcLight:null},n.kg("symbolHighlight","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),g=(0,s.x1A)("editor.symbolHighlightBorder",{dark:null,light:null,hcDark:s.buw,hcLight:s.buw},n.kg("symbolHighlightBorder","Background color of the border around highlighted symbols."),!0),f=(0,s.x1A)("editorCursor.foreground",{dark:"#AEAFAD",light:r.Q1.black,hcDark:r.Q1.white,hcLight:"#0F4A85"},n.kg("caret","Color of the editor cursor.")),p=(0,s.x1A)("editorCursor.background",null,n.kg("editorCursorBackground","The background color of the editor cursor. Allows customizing the color of a character overlapped by a block cursor.")),m=(0,s.x1A)("editorWhitespace.foreground",{dark:"#e3e4e229",light:"#33333333",hcDark:"#e3e4e229",hcLight:"#CCCCCC"},n.kg("editorWhitespaces","Color of whitespace characters in the editor.")),k=(0,s.x1A)("editorIndentGuide.background",{dark:m,light:m,hcDark:m,hcLight:m},n.kg("editorIndentGuides","Color of the editor indentation guides.")),_=(0,s.x1A)("editorIndentGuide.activeBackground",{dark:m,light:m,hcDark:m,hcLight:m},n.kg("editorActiveIndentGuide","Color of the active editor indentation guides.")),b=(0,s.x1A)("editorLineNumber.foreground",{dark:"#858585",light:"#237893",hcDark:r.Q1.white,hcLight:"#292929"},n.kg("editorLineNumbers","Color of editor line numbers.")),C=(0,s.x1A)("editorActiveLineNumber.foreground",{dark:"#c6c6c6",light:"#0B216F",hcDark:s.buw,hcLight:s.buw},n.kg("editorActiveLineNumber","Color of editor active line number"),!1,n.kg("deprecatedEditorActiveLineNumber","Id is deprecated. Use 'editorLineNumber.activeForeground' instead.")),v=(0,s.x1A)("editorLineNumber.activeForeground",{dark:C,light:C,hcDark:C,hcLight:C},n.kg("editorActiveLineNumber","Color of editor active line number")),y=(0,s.x1A)("editorRuler.foreground",{dark:"#5A5A5A",light:r.Q1.lightgrey,hcDark:r.Q1.white,hcLight:"#292929"},n.kg("editorRuler","Color of the editor rulers.")),w=((0,s.x1A)("editorCodeLens.foreground",{dark:"#999999",light:"#919191",hcDark:"#999999",hcLight:"#292929"},n.kg("editorCodeLensForeground","Foreground color of editor CodeLens")),(0,s.x1A)("editorBracketMatch.background",{dark:"#0064001a",light:"#0064001a",hcDark:"#0064001a",hcLight:"#0000"},n.kg("editorBracketMatchBackground","Background color behind matching brackets"))),S=(0,s.x1A)("editorBracketMatch.border",{dark:"#888",light:"#B9B9B9",hcDark:s.b1q,hcLight:s.b1q},n.kg("editorBracketMatchBorder","Color for matching brackets boxes")),L=(0,s.x1A)("editorOverviewRuler.border",{dark:"#7f7f7f4d",light:"#7f7f7f4d",hcDark:"#7f7f7f4d",hcLight:"#666666"},n.kg("editorOverviewRulerBorder","Color of the overview ruler border.")),x=(0,s.x1A)("editorOverviewRuler.background",null,n.kg("editorOverviewRulerBackground","Background color of the editor overview ruler. Only used when the minimap is enabled and placed on the right side of the editor.")),I=(0,s.x1A)("editorGutter.background",{dark:s.YtV,light:s.YtV,hcDark:s.YtV,hcLight:s.YtV},n.kg("editorGutter","Background color of the editor gutter. The gutter contains the glyph margins and the line numbers.")),D=(0,s.x1A)("editorUnnecessaryCode.border",{dark:null,light:null,hcDark:r.Q1.fromHex("#fff").transparent(.8),hcLight:s.b1q},n.kg("unnecessaryCodeBorder","Border color of unnecessary (unused) source code in the editor.")),T=(0,s.x1A)("editorUnnecessaryCode.opacity",{dark:r.Q1.fromHex("#000a"),light:r.Q1.fromHex("#0007"),hcDark:null,hcLight:null},n.kg("unnecessaryCodeOpacity","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.")),E=(0,s.x1A)("editorGhostText.border",{dark:null,light:null,hcDark:r.Q1.fromHex("#fff").transparent(.8),hcLight:r.Q1.fromHex("#292929").transparent(.8)},n.kg("editorGhostTextBorder","Border color of ghost text in the editor.")),O=(0,s.x1A)("editorGhostText.foreground",{dark:r.Q1.fromHex("#ffffff56"),light:r.Q1.fromHex("#0007"),hcDark:null,hcLight:null},n.kg("editorGhostTextForeground","Foreground color of the ghost text in the editor.")),M=(0,s.x1A)("editorGhostText.background",{dark:null,light:null,hcDark:null,hcLight:null},n.kg("editorGhostTextBackground","Background color of the ghost text in the editor.")),B=new r.Q1(new r.bU(0,122,204,.6)),N=(0,s.x1A)("editorOverviewRuler.rangeHighlightForeground",{dark:B,light:B,hcDark:B,hcLight:B},n.kg("overviewRulerRangeHighlight","Overview ruler marker color for range highlights. The color must not be opaque so as not to hide underlying decorations."),!0),A=(0,s.x1A)("editorOverviewRuler.errorForeground",{dark:new r.Q1(new r.bU(255,18,18,.7)),light:new r.Q1(new r.bU(255,18,18,.7)),hcDark:new r.Q1(new r.bU(255,50,50,1)),hcLight:"#B5200D"},n.kg("overviewRuleError","Overview ruler marker color for errors.")),F=(0,s.x1A)("editorOverviewRuler.warningForeground",{dark:s.Hng,light:s.Hng,hcDark:s.Stt,hcLight:s.Stt},n.kg("overviewRuleWarning","Overview ruler marker color for warnings.")),R=(0,s.x1A)("editorOverviewRuler.infoForeground",{dark:s.pOz,light:s.pOz,hcDark:s.IIb,hcLight:s.IIb},n.kg("overviewRuleInfo","Overview ruler marker color for infos.")),P=(0,s.x1A)("editorBracketHighlight.foreground1",{dark:"#FFD700",light:"#0431FAFF",hcDark:"#FFD700",hcLight:"#0431FAFF"},n.kg("editorBracketHighlightForeground1","Foreground color of brackets (1). Requires enabling bracket pair colorization.")),z=(0,s.x1A)("editorBracketHighlight.foreground2",{dark:"#DA70D6",light:"#319331FF",hcDark:"#DA70D6",hcLight:"#319331FF"},n.kg("editorBracketHighlightForeground2","Foreground color of brackets (2). Requires enabling bracket pair colorization.")),W=(0,s.x1A)("editorBracketHighlight.foreground3",{dark:"#179FFF",light:"#7B3814FF",hcDark:"#87CEFA",hcLight:"#7B3814FF"},n.kg("editorBracketHighlightForeground3","Foreground color of brackets (3). Requires enabling bracket pair colorization.")),V=(0,s.x1A)("editorBracketHighlight.foreground4",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},n.kg("editorBracketHighlightForeground4","Foreground color of brackets (4). Requires enabling bracket pair colorization.")),H=(0,s.x1A)("editorBracketHighlight.foreground5",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},n.kg("editorBracketHighlightForeground5","Foreground color of brackets (5). Requires enabling bracket pair colorization.")),U=(0,s.x1A)("editorBracketHighlight.foreground6",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},n.kg("editorBracketHighlightForeground6","Foreground color of brackets (6). Requires enabling bracket pair colorization.")),j=(0,s.x1A)("editorBracketHighlight.unexpectedBracket.foreground",{dark:new r.Q1(new r.bU(255,18,18,.8)),light:new r.Q1(new r.bU(255,18,18,.8)),hcDark:new r.Q1(new r.bU(255,50,50,1)),hcLight:""},n.kg("editorBracketHighlightUnexpectedBracketForeground","Foreground color of unexpected brackets.")),K=(0,s.x1A)("editorBracketPairGuide.background1",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},n.kg("editorBracketPairGuide.background1","Background color of inactive bracket pair guides (1). Requires enabling bracket pair guides.")),q=(0,s.x1A)("editorBracketPairGuide.background2",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},n.kg("editorBracketPairGuide.background2","Background color of inactive bracket pair guides (2). Requires enabling bracket pair guides.")),G=(0,s.x1A)("editorBracketPairGuide.background3",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},n.kg("editorBracketPairGuide.background3","Background color of inactive bracket pair guides (3). Requires enabling bracket pair guides.")),$=(0,s.x1A)("editorBracketPairGuide.background4",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},n.kg("editorBracketPairGuide.background4","Background color of inactive bracket pair guides (4). Requires enabling bracket pair guides.")),Q=(0,s.x1A)("editorBracketPairGuide.background5",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},n.kg("editorBracketPairGuide.background5","Background color of inactive bracket pair guides (5). Requires enabling bracket pair guides.")),Y=(0,s.x1A)("editorBracketPairGuide.background6",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},n.kg("editorBracketPairGuide.background6","Background color of inactive bracket pair guides (6). Requires enabling bracket pair guides.")),X=(0,s.x1A)("editorBracketPairGuide.activeBackground1",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},n.kg("editorBracketPairGuide.activeBackground1","Background color of active bracket pair guides (1). Requires enabling bracket pair guides.")),Z=(0,s.x1A)("editorBracketPairGuide.activeBackground2",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},n.kg("editorBracketPairGuide.activeBackground2","Background color of active bracket pair guides (2). Requires enabling bracket pair guides.")),J=(0,s.x1A)("editorBracketPairGuide.activeBackground3",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},n.kg("editorBracketPairGuide.activeBackground3","Background color of active bracket pair guides (3). Requires enabling bracket pair guides.")),ee=(0,s.x1A)("editorBracketPairGuide.activeBackground4",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},n.kg("editorBracketPairGuide.activeBackground4","Background color of active bracket pair guides (4). Requires enabling bracket pair guides.")),te=(0,s.x1A)("editorBracketPairGuide.activeBackground5",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},n.kg("editorBracketPairGuide.activeBackground5","Background color of active bracket pair guides (5). Requires enabling bracket pair guides.")),ie=(0,s.x1A)("editorBracketPairGuide.activeBackground6",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},n.kg("editorBracketPairGuide.activeBackground6","Background color of active bracket pair guides (6). Requires enabling bracket pair guides."));(0,s.x1A)("editorUnicodeHighlight.border",{dark:"#BD9B03",light:"#CEA33D",hcDark:"#ff0000",hcLight:""},n.kg("editorUnicodeHighlight.border","Border color used to highlight unicode characters.")),(0,s.x1A)("editorUnicodeHighlight.background",{dark:"#bd9b0326",light:"#cea33d14",hcDark:"#00000000",hcLight:""},n.kg("editorUnicodeHighlight.background","Background color used to highlight unicode characters."));(0,o.zy)(((e,t)=>{const i=e.getColor(s.YtV);i&&t.addRule(`.monaco-editor, .monaco-editor-background { background-color: ${i}; }`);const n=e.getColor(l),r=n&&!n.isTransparent()?n:i;r&&t.addRule(`.monaco-editor .inputarea.ime-input { background-color: ${r}; }`);const o=e.getColor(s.By2);o&&t.addRule(`.monaco-editor, .monaco-editor .inputarea.ime-input { color: ${o}; }`);const h=e.getColor(I);h&&t.addRule(`.monaco-editor .margin { background-color: ${h}; }`);const f=e.getColor(c);f&&t.addRule(`.monaco-editor .rangeHighlight { background-color: ${f}; }`);const p=e.getColor(u);p&&t.addRule(`.monaco-editor .rangeHighlight { border: 1px ${(0,a.Bb)(e.type)?"dotted":"solid"} ${p}; }`);const k=e.getColor(d);k&&t.addRule(`.monaco-editor .symbolHighlight { background-color: ${k}; }`);const _=e.getColor(g);_&&t.addRule(`.monaco-editor .symbolHighlight { border: 1px ${(0,a.Bb)(e.type)?"dotted":"solid"} ${_}; }`);const b=e.getColor(m);b&&(t.addRule(`.monaco-editor .mtkw { color: ${b} !important; }`),t.addRule(`.monaco-editor .mtkz { color: ${b} !important; }`))}))},16920:(e,t,i)=>{function n(e){let t=0,i=0,n=0,r=0;for(let s=0,o=e.length;s<o;s++){const a=e.charCodeAt(s);13===a?(0===t&&(i=s),t++,s+1<o&&10===e.charCodeAt(s+1)?(r|=2,s++):r|=3,n=s+1):10===a&&(r|=1,0===t&&(i=s),t++,n=s+1)}return 0===t&&(i=e.length),[t,i,e.length-n,r]}i.d(t,{W:()=>n})},96809:(e,t,i)=>{i.d(t,{P:()=>s});var n=i(24638),r=i(61619);function s(e,t,i){let s=n.HG(e);return-1===s&&(s=e.length),function(e,t,i){let n=0;for(let o=0;o<e.length;o++)"\t"===e.charAt(o)?n=r.A.nextIndentTabStop(n,t):n++;let s="";if(!i){const e=Math.floor(n/t);n%=t;for(let t=0;t<e;t++)s+="\t"}for(let r=0;r<n;r++)s+=" ";return s}(e.substring(0,s),t,i)+e.substring(s)}},55547:(e,t,i)=>{i.d(t,{y:()=>n});class n{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 n(e,t)}delta(e=0,t=0){return this.with(this.lineNumber+e,this.column+t)}equals(e){return n.equals(this,e)}static equals(e,t){return!e&&!t||!!e&&!!t&&e.lineNumber===t.lineNumber&&e.column===t.column}isBefore(e){return n.isBefore(this,e)}static isBefore(e,t){return e.lineNumber<t.lineNumber||!(t.lineNumber<e.lineNumber)&&e.column<t.column}isBeforeOrEqual(e){return n.isBeforeOrEqual(this,e)}static isBeforeOrEqual(e,t){return e.lineNumber<t.lineNumber||!(t.lineNumber<e.lineNumber)&&e.column<=t.column}static compare(e,t){const i=0|e.lineNumber,n=0|t.lineNumber;if(i===n){return(0|e.column)-(0|t.column)}return i-n}clone(){return new n(this.lineNumber,this.column)}toString(){return"("+this.lineNumber+","+this.column+")"}static lift(e){return new n(e.lineNumber,e.column)}static isIPosition(e){return e&&"number"===typeof e.lineNumber&&"number"===typeof e.column}}},62915:(e,t,i)=>{i.d(t,{Q:()=>r});var n=i(55547);class r{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 r.isEmpty(this)}static isEmpty(e){return e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn}containsPosition(e){return r.containsPosition(this,e)}static containsPosition(e,t){return!(t.lineNumber<e.startLineNumber||t.lineNumber>e.endLineNumber)&&(!(t.lineNumber===e.startLineNumber&&t.column<e.startColumn)&&!(t.lineNumber===e.endLineNumber&&t.column>e.endColumn))}static strictContainsPosition(e,t){return!(t.lineNumber<e.startLineNumber||t.lineNumber>e.endLineNumber)&&(!(t.lineNumber===e.startLineNumber&&t.column<=e.startColumn)&&!(t.lineNumber===e.endLineNumber&&t.column>=e.endColumn))}containsRange(e){return r.containsRange(this,e)}static containsRange(e,t){return!(t.startLineNumber<e.startLineNumber||t.endLineNumber<e.startLineNumber)&&(!(t.startLineNumber>e.endLineNumber||t.endLineNumber>e.endLineNumber)&&(!(t.startLineNumber===e.startLineNumber&&t.startColumn<e.startColumn)&&!(t.endLineNumber===e.endLineNumber&&t.endColumn>e.endColumn)))}strictContainsRange(e){return r.strictContainsRange(this,e)}static strictContainsRange(e,t){return!(t.startLineNumber<e.startLineNumber||t.endLineNumber<e.startLineNumber)&&(!(t.startLineNumber>e.endLineNumber||t.endLineNumber>e.endLineNumber)&&(!(t.startLineNumber===e.startLineNumber&&t.startColumn<=e.startColumn)&&!(t.endLineNumber===e.endLineNumber&&t.endColumn>=e.endColumn)))}plusRange(e){return r.plusRange(this,e)}static plusRange(e,t){let i,n,s,o;return t.startLineNumber<e.startLineNumber?(i=t.startLineNumber,n=t.startColumn):t.startLineNumber===e.startLineNumber?(i=t.startLineNumber,n=Math.min(t.startColumn,e.startColumn)):(i=e.startLineNumber,n=e.startColumn),t.endLineNumber>e.endLineNumber?(s=t.endLineNumber,o=t.endColumn):t.endLineNumber===e.endLineNumber?(s=t.endLineNumber,o=Math.max(t.endColumn,e.endColumn)):(s=e.endLineNumber,o=e.endColumn),new r(i,n,s,o)}intersectRanges(e){return r.intersectRanges(this,e)}static intersectRanges(e,t){let i=e.startLineNumber,n=e.startColumn,s=e.endLineNumber,o=e.endColumn;const a=t.startLineNumber,l=t.startColumn,h=t.endLineNumber,c=t.endColumn;return i<a?(i=a,n=l):i===a&&(n=Math.max(n,l)),s>h?(s=h,o=c):s===h&&(o=Math.min(o,c)),i>s||i===s&&n>o?null:new r(i,n,s,o)}equalsRange(e){return r.equalsRange(this,e)}static equalsRange(e,t){return!!e&&!!t&&e.startLineNumber===t.startLineNumber&&e.startColumn===t.startColumn&&e.endLineNumber===t.endLineNumber&&e.endColumn===t.endColumn}getEndPosition(){return r.getEndPosition(this)}static getEndPosition(e){return new n.y(e.endLineNumber,e.endColumn)}getStartPosition(){return r.getStartPosition(this)}static getStartPosition(e){return new n.y(e.startLineNumber,e.startColumn)}toString(){return"["+this.startLineNumber+","+this.startColumn+" -> "+this.endLineNumber+","+this.endColumn+"]"}setEndPosition(e,t){return new r(this.startLineNumber,this.startColumn,e,t)}setStartPosition(e,t){return new r(e,t,this.endLineNumber,this.endColumn)}collapseToStart(){return r.collapseToStart(this)}static collapseToStart(e){return new r(e.startLineNumber,e.startColumn,e.startLineNumber,e.startColumn)}static fromPositions(e,t=e){return new r(e.lineNumber,e.column,t.lineNumber,t.column)}static lift(e){return e?new r(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.endLineNumber<t.startLineNumber||e.endLineNumber===t.startLineNumber&&e.endColumn<t.startColumn)&&!(t.endLineNumber<e.startLineNumber||t.endLineNumber===e.startLineNumber&&t.endColumn<e.startColumn)}static areIntersecting(e,t){return!(e.endLineNumber<t.startLineNumber||e.endLineNumber===t.startLineNumber&&e.endColumn<=t.startColumn)&&!(t.endLineNumber<e.startLineNumber||t.endLineNumber===e.startLineNumber&&t.endColumn<=e.startColumn)}static compareRangesUsingStarts(e,t){if(e&&t){const i=0|e.startLineNumber,n=0|t.startLineNumber;if(i===n){const i=0|e.startColumn,n=0|t.startColumn;if(i===n){const i=0|e.endLineNumber,n=0|t.endLineNumber;if(i===n){return(0|e.endColumn)-(0|t.endColumn)}return i-n}return i-n}return i-n}return(e?1:0)-(t?1:0)}static compareRangesUsingEnds(e,t){return e.endLineNumber===t.endLineNumber?e.endColumn===t.endColumn?e.startLineNumber===t.startLineNumber?e.startColumn-t.startColumn:e.startLineNumber-t.startLineNumber:e.endColumn-t.endColumn:e.endLineNumber-t.endLineNumber}static spansMultipleLines(e){return e.endLineNumber>e.startLineNumber}toJSON(){return this}}},85376:(e,t,i)=>{i.d(t,{L:()=>s});var n=i(55547),r=i(62915);class s extends r.Q{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 s.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 s(this.startLineNumber,this.startColumn,e,t):new s(e,t,this.startLineNumber,this.startColumn)}getPosition(){return new n.y(this.positionLineNumber,this.positionColumn)}getSelectionStart(){return new n.y(this.selectionStartLineNumber,this.selectionStartColumn)}setStartPosition(e,t){return 0===this.getDirection()?new s(e,t,this.endLineNumber,this.endColumn):new s(this.endLineNumber,this.endColumn,e,t)}static fromPositions(e,t=e){return new s(e.lineNumber,e.column,t.lineNumber,t.column)}static fromRange(e,t){return 0===t?new s(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):new s(e.endLineNumber,e.endColumn,e.startLineNumber,e.startColumn)}static liftSelection(e){return new s(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;i<n;i++)if(!this.selectionsEqual(e[i],t[i]))return!1;return!0}static isISelection(e){return e&&"number"===typeof e.selectionStartLineNumber&&"number"===typeof e.selectionStartColumn&&"number"===typeof e.positionLineNumber&&"number"===typeof e.positionColumn}static createWithDirection(e,t,i,n,r){return 0===r?new s(e,t,i,n):new s(i,n,e,t)}}},30039:(e,t,i)=>{i.d(t,{k:()=>o,x:()=>a});var n=i(52756),r=i(59806);function s(e){return e.replace(/\n/g,"\\n").replace(/\r/g,"\\r")}class o{constructor(e,t,i,n){this.oldPosition=e,this.oldText=t,this.newPosition=i,this.newText=n}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}toString(){return 0===this.oldText.length?`(insert@${this.oldPosition} "${s(this.newText)}")`:0===this.newText.length?`(delete@${this.oldPosition} "${s(this.oldText)}")`:`(replace@${this.oldPosition} "${s(this.oldText)}" with "${s(this.newText)}")`}static _writeStringSize(e){return 4+2*e.length}static _writeString(e,t,i){const r=t.length;n.Sw(e,r,i),i+=4;for(let s=0;s<r;s++)n.gN(e,t.charCodeAt(s),i),i+=2;return i}static _readString(e,t){const i=n.bb(e,t);return t+=4,(0,r.Su)(e,t,i)}writeSize(){return 8+o._writeStringSize(this.oldText)+o._writeStringSize(this.newText)}write(e,t){return n.Sw(e,this.oldPosition,t),t+=4,n.Sw(e,this.newPosition,t),t+=4,t=o._writeString(e,this.oldText,t),t=o._writeString(e,this.newText,t)}static read(e,t,i){const r=n.bb(e,t);t+=4;const s=n.bb(e,t);t+=4;const a=o._readString(e,t);t+=o._writeStringSize(a);const l=o._readString(e,t);return t+=o._writeStringSize(l),i.push(new o(r,a,s,l)),t}}function a(e,t){if(null===e||0===e.length)return t;return new l(e,t).compress()}class l{constructor(e,t){this._prevEdits=e,this._currEdits=t,this._result=[],this._resultLen=0,this._prevLen=this._prevEdits.length,this._prevDeltaOffset=0,this._currLen=this._currEdits.length,this._currDeltaOffset=0}compress(){let e=0,t=0,i=this._getPrev(e),n=this._getCurr(t);for(;e<this._prevLen||t<this._currLen;){if(null===i){this._acceptCurr(n),n=this._getCurr(++t);continue}if(null===n){this._acceptPrev(i),i=this._getPrev(++e);continue}if(n.oldEnd<=i.newPosition){this._acceptCurr(n),n=this._getCurr(++t);continue}if(i.newEnd<=n.oldPosition){this._acceptPrev(i),i=this._getPrev(++e);continue}if(n.oldPosition<i.newPosition){const[e,t]=l._splitCurr(n,i.newPosition-n.oldPosition);this._acceptCurr(e),n=t;continue}if(i.newPosition<n.oldPosition){const[e,t]=l._splitPrev(i,n.oldPosition-i.newPosition);this._acceptPrev(e),i=t;continue}let r,s;if(n.oldEnd===i.newEnd)r=i,s=n,i=this._getPrev(++e),n=this._getCurr(++t);else if(n.oldEnd<i.newEnd){const[e,o]=l._splitPrev(i,n.oldLength);r=e,s=n,i=o,n=this._getCurr(++t)}else{const[t,o]=l._splitCurr(n,i.newLength);r=i,s=t,i=this._getPrev(++e),n=o}this._result[this._resultLen++]=new o(r.oldPosition,r.oldText,s.newPosition,s.newText),this._prevDeltaOffset+=r.newLength-r.oldLength,this._currDeltaOffset+=s.newLength-s.oldLength}const r=l._merge(this._result);return l._removeNoOps(r)}_acceptCurr(e){this._result[this._resultLen++]=l._rebaseCurr(this._prevDeltaOffset,e),this._currDeltaOffset+=e.newLength-e.oldLength}_getCurr(e){return e<this._currLen?this._currEdits[e]:null}_acceptPrev(e){this._result[this._resultLen++]=l._rebasePrev(this._currDeltaOffset,e),this._prevDeltaOffset+=e.newLength-e.oldLength}_getPrev(e){return e<this._prevLen?this._prevEdits[e]:null}static _rebaseCurr(e,t){return new o(t.oldPosition-e,t.oldText,t.newPosition,t.newText)}static _rebasePrev(e,t){return new o(t.oldPosition,t.oldText,t.newPosition+e,t.newText)}static _splitPrev(e,t){const i=e.newText.substr(0,t),n=e.newText.substr(t);return[new o(e.oldPosition,e.oldText,e.newPosition,i),new o(e.oldEnd,"",e.newPosition+t,n)]}static _splitCurr(e,t){const i=e.oldText.substr(0,t),n=e.oldText.substr(t);return[new o(e.oldPosition,i,e.newPosition,e.newText),new o(e.oldPosition+t,n,e.newEnd,"")]}static _merge(e){if(0===e.length)return e;const t=[];let i=0,n=e[0];for(let r=1;r<e.length;r++){const s=e[r];n.oldEnd===s.oldPosition?n=new o(n.oldPosition,n.oldText+s.oldText,n.newPosition,n.newText+s.newText):(t[i++]=n,n=s)}return t[i++]=n,t}static _removeNoOps(e){if(0===e.length)return e;const t=[];let i=0;for(let n=0;n<e.length;n++){const r=e[n];r.oldText!==r.newText&&(t[i++]=r)}return t}}},11572:(e,t,i)=>{i.d(t,{R:()=>n});const n={tabSize:4,indentSize:4,insertSpaces:!0,detectIndentation:!0,trimAutoWhitespace:!0,largeFileOptimizations:!0,bracketPairColorizationOptions:{enabled:!0,independentColorPoolPerBracketType:!1}}},52524:(e,t,i)=>{i.d(t,{Io:()=>a,J3:()=>s,Ld:()=>o,Th:()=>h});var n=i(16624),r=i(47643);const s="`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?";const o=function(e=""){let t="(-?\\d*\\.\\d\\w*)|([^";for(const i of s)e.indexOf(i)>=0||(t+="\\"+i);return t+="\\s]+)",new RegExp(t,"g")}();function a(e){let t=o;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 l=new r.w;function h(e,t,i,r,s){if(s||(s=n.f.first(l)),i.length>s.maxLen){let n=e-s.maxLen/2;return n<0?n=0:r+=n,h(e,t,i=i.substring(n,e+s.maxLen/2),r,s)}const o=Date.now(),a=e-1-r;let u=-1,d=null;for(let n=1;!(Date.now()-o>=s.timeBudget);n++){const e=a-s.windowSize*n;t.lastIndex=Math.max(0,e);const r=c(t,i,a,u);if(!r&&d)break;if(d=r,e<=0)break;u=e}if(d){const e={word:d[0],startColumn:r+1+d.index,endColumn:r+1+d.index+d[0].length};return t.lastIndex=0,e}return null}function c(e,t,i,n){let r;for(;r=e.exec(t);){const t=r.index||0;if(t<=i&&e.lastIndex>=i)return r;if(n>0&&t>n)return null}return null}l.unshift({maxLen:1e3,windowSize:15,timeBudget:150})},61244:(e,t,i)=>{i.d(t,{x:()=>n});class n{static getLanguageId(e){return(255&e)>>>0}static getTokenType(e){return(768&e)>>>8}static containsBalancedBrackets(e){return 0!==(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 r=`color: ${t[i]};`;1&n&&(r+="font-style: italic;"),2&n&&(r+="font-weight: bold;");let s="";return 4&n&&(s+=" underline"),8&n&&(s+=" line-through"),s&&(r+=`text-decoration:${s};`),r}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)}}}},43178:(e,t,i)=>{i.d(t,{uB:()=>l,HC:()=>n,Kb:()=>o,rY:()=>b,lO:()=>v,r4:()=>h,qw:()=>r,WA:()=>s,gP:()=>a,ou:()=>k,dG:()=>y,$M:()=>_,Iu:()=>C});var n,r,s,o,a,l,h,c=i(88106),u=i(65698),d=i(62915),g=i(42464),f=i(55808),p=function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{l(n.next(e))}catch(t){s(t)}}function a(e){try{l(n.throw(e))}catch(t){s(t)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(o,a)}l((n=n.apply(e,t||[])).next())}))};class m extends f.jG{constructor(e,t,i){super(),this._registry=e,this._languageId=t,this._factory=i,this._isDisposed=!1,this._resolvePromise=null,this._isResolved=!1}get isResolved(){return this._isResolved}dispose(){this._isDisposed=!0,super.dispose()}resolve(){return p(this,void 0,void 0,(function*(){return this._resolvePromise||(this._resolvePromise=this._create()),this._resolvePromise}))}_create(){return p(this,void 0,void 0,(function*(){const e=yield Promise.resolve(this._factory.createTokenizationSupport());this._isResolved=!0,e&&!this._isDisposed&&this._register(this._registry.register(this._languageId,e))}))}}class k{constructor(e,t,i){this._tokenBrand=void 0,this.offset=e,this.type=t,this.language=i}toString(){return"("+this.offset+", "+this.type+")"}}class _{constructor(e,t){this._tokenizationResultBrand=void 0,this.tokens=e,this.endState=t}}class b{constructor(e,t){this._encodedTokenizationResultBrand=void 0,this.tokens=e,this.endState=t}}function C(e){return e&&u.r.isUri(e.uri)&&d.Q.isIRange(e.range)&&(d.Q.isIRange(e.originSelectionRange)||d.Q.isIRange(e.targetSelectionRange))}!function(e){const t=new Map;t.set(0,c.W6.symbolMethod),t.set(1,c.W6.symbolFunction),t.set(2,c.W6.symbolConstructor),t.set(3,c.W6.symbolField),t.set(4,c.W6.symbolVariable),t.set(5,c.W6.symbolClass),t.set(6,c.W6.symbolStruct),t.set(7,c.W6.symbolInterface),t.set(8,c.W6.symbolModule),t.set(9,c.W6.symbolProperty),t.set(10,c.W6.symbolEvent),t.set(11,c.W6.symbolOperator),t.set(12,c.W6.symbolUnit),t.set(13,c.W6.symbolValue),t.set(15,c.W6.symbolEnum),t.set(14,c.W6.symbolConstant),t.set(15,c.W6.symbolEnum),t.set(16,c.W6.symbolEnumMember),t.set(17,c.W6.symbolKeyword),t.set(27,c.W6.symbolSnippet),t.set(18,c.W6.symbolText),t.set(19,c.W6.symbolColor),t.set(20,c.W6.symbolFile),t.set(21,c.W6.symbolReference),t.set(22,c.W6.symbolCustomColor),t.set(23,c.W6.symbolFolder),t.set(24,c.W6.symbolTypeParameter),t.set(25,c.W6.account),t.set(26,c.W6.issues),e.toIcon=function(e){let i=t.get(e);return i||(i=c.W6.symbolProperty),i};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",27),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),e.fromString=function(e,t){let n=i.get(e);return"undefined"!==typeof n||t||(n=9),n}}(n||(n={})),function(e){e[e.Automatic=0]="Automatic",e[e.Explicit=1]="Explicit"}(r||(r={})),function(e){e[e.Invoke=1]="Invoke",e[e.TriggerCharacter=2]="TriggerCharacter",e[e.ContentChange=3]="ContentChange"}(s||(s={})),function(e){e[e.Text=0]="Text",e[e.Read=1]="Read",e[e.Write=2]="Write"}(o||(o={})),function(e){const t=new Map;t.set(0,c.W6.symbolFile),t.set(1,c.W6.symbolModule),t.set(2,c.W6.symbolNamespace),t.set(3,c.W6.symbolPackage),t.set(4,c.W6.symbolClass),t.set(5,c.W6.symbolMethod),t.set(6,c.W6.symbolProperty),t.set(7,c.W6.symbolField),t.set(8,c.W6.symbolConstructor),t.set(9,c.W6.symbolEnum),t.set(10,c.W6.symbolInterface),t.set(11,c.W6.symbolFunction),t.set(12,c.W6.symbolVariable),t.set(13,c.W6.symbolConstant),t.set(14,c.W6.symbolString),t.set(15,c.W6.symbolNumber),t.set(16,c.W6.symbolBoolean),t.set(17,c.W6.symbolArray),t.set(18,c.W6.symbolObject),t.set(19,c.W6.symbolKey),t.set(20,c.W6.symbolNull),t.set(21,c.W6.symbolEnumMember),t.set(22,c.W6.symbolStruct),t.set(23,c.W6.symbolEvent),t.set(24,c.W6.symbolOperator),t.set(25,c.W6.symbolTypeParameter),e.toIcon=function(e){let i=t.get(e);return i||(i=c.W6.symbolProperty),i}}(a||(a={}));class v{constructor(e){this.value=e}}v.Comment=new v("comment"),v.Imports=new v("imports"),v.Region=new v("region"),function(e){e.is=function(e){return!(!e||"object"!==typeof e)&&("string"===typeof e.id&&"string"===typeof e.title)}}(l||(l={})),function(e){e[e.Type=1]="Type",e[e.Parameter=2]="Parameter"}(h||(h={}));const y=new class{constructor(){this._map=new Map,this._factories=new Map,this._onDidChange=new g.vl,this.onDidChange=this._onDidChange.event,this._colorMap=null}fire(e){this._onDidChange.fire({changedLanguages:e,changedColorMap:!1})}register(e,t){return this._map.set(e,t),this.fire([e]),(0,f.s)((()=>{this._map.get(e)===t&&(this._map.delete(e),this.fire([e]))}))}registerFactory(e,t){var i;null===(i=this._factories.get(e))||void 0===i||i.dispose();const n=new m(this,e,t);return this._factories.set(e,n),(0,f.s)((()=>{const t=this._factories.get(e);t&&t===n&&(this._factories.delete(e),t.dispose())}))}getOrCreate(e){return p(this,void 0,void 0,(function*(){const t=this.get(e);if(t)return t;const i=this._factories.get(e);return!i||i.isResolved?null:(yield i.resolve(),this.get(e))}))}get(e){return this._map.get(e)||null}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._map.keys()),changedColorMap:!0})}getColorMap(){return this._colorMap}getDefaultBackground(){return this._colorMap&&this._colorMap.length>2?this._colorMap[2]:null}}},82500:(e,t,i)=>{var n;i.d(t,{GB:()=>s,i3:()=>r,l:()=>n}),function(e){e[e.None=0]="None",e[e.Indent=1]="Indent",e[e.IndentOutdent=2]="IndentOutdent",e[e.Outdent=3]="Outdent"}(n||(n={}));class r{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<i;t++){switch(e.notIn[t]){case"string":this._inString=!1;break;case"comment":this._inComment=!1;break;case"regex":this._inRegEx=!1}}}isOK(e){switch(e){case 0:return!0;case 1:return this._inComment;case 2:return this._inString;case 3:return this._inRegEx}}shouldAutoClose(e,t){if(0===e.getTokenCount())return!0;const i=e.findTokenIndexAtOffset(t-2),n=e.getStandardTokenType(i);return this.isOK(n)}_findNeutralCharacterInRange(e,t){for(let i=e;i<=t;i++){const e=String.fromCharCode(i);if(!this.open.includes(e)&&!this.close.includes(e))return e}return null}findNeutralCharacter(){return this._neutralCharacterSearched||(this._neutralCharacterSearched=!0,this._neutralCharacter||(this._neutralCharacter=this._findNeutralCharacterInRange(48,57)),this._neutralCharacter||(this._neutralCharacter=this._findNeutralCharacterInRange(97,122)),this._neutralCharacter||(this._neutralCharacter=this._findNeutralCharacterInRange(65,90))),this._neutralCharacter}}class s{constructor(e){this.autoClosingPairsOpenByStart=new Map,this.autoClosingPairsOpenByEnd=new Map,this.autoClosingPairsCloseByStart=new Map,this.autoClosingPairsCloseByEnd=new Map,this.autoClosingPairsCloseSingleChar=new Map;for(const t of e)o(this.autoClosingPairsOpenByStart,t.open.charAt(0),t),o(this.autoClosingPairsOpenByEnd,t.open.charAt(t.open.length-1),t),o(this.autoClosingPairsCloseByStart,t.close.charAt(0),t),o(this.autoClosingPairsCloseByEnd,t.close.charAt(t.close.length-1),t),1===t.close.length&&1===t.open.length&&o(this.autoClosingPairsCloseSingleChar,t.close,t)}}function o(e,t,i){e.has(t)?e.get(t).push(i):e.set(t,[i])}},10884:(e,t,i)=>{i.d(t,{JZ:()=>O,Cw:()=>A,P6:()=>F});var n=i(42464),r=i(55808),s=i(24638),o=i(52524),a=i(82500),l=i(5670);class h{constructor(e){if(e.autoClosingPairs?this._autoClosingPairs=e.autoClosingPairs.map((e=>new a.i3(e))):e.brackets?this._autoClosingPairs=e.brackets.map((e=>new a.i3({open:e[0],close:e[1]}))):this._autoClosingPairs=[],e.__electricCharacterSupport&&e.__electricCharacterSupport.docComment){const t=e.__electricCharacterSupport.docComment;this._autoClosingPairs.push(new a.i3({open:t.open,close:t.close||""}))}this._autoCloseBefore="string"===typeof e.autoCloseBefore?e.autoCloseBefore:h.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED,this._surroundingPairs=e.surroundingPairs||this._autoClosingPairs}getAutoClosingPairs(){return this._autoClosingPairs}getAutoCloseBeforeSet(){return this._autoCloseBefore}getSurroundingPairs(){return this._surroundingPairs}}h.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED=";:.,=}])> \n\t";var c=i(48640),u=i(2350);class d{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(0,c.dM)(e)}onElectricCharacter(e,t,i){if(!this._richEditBrackets||0===this._richEditBrackets.brackets.length)return null;const n=t.findTokenIndexAtOffset(i-1);if((0,l.Yo)(t.getStandardTokenType(n)))return null;const r=this._richEditBrackets.reversedRegex,s=t.getLineContent().substring(0,i-1)+e,o=u.Fu.findPrevBracketInRange(r,1,s,0,s.length);if(!o)return null;const a=s.substring(o.startColumn-1,o.endColumn-1).toLowerCase();if(this._richEditBrackets.textIsOpenBracket[a])return null;const h=t.getActualLineContentBefore(o.startColumn-1);return/^\s*$/.test(h)?{matchOpenBracket:a}:null}}function g(e){return e.global&&(e.lastIndex=0),!0}class f{constructor(e){this._indentationRules=e}shouldIncrease(e){return!!(this._indentationRules&&this._indentationRules.increaseIndentPattern&&g(this._indentationRules.increaseIndentPattern)&&this._indentationRules.increaseIndentPattern.test(e))}shouldDecrease(e){return!!(this._indentationRules&&this._indentationRules.decreaseIndentPattern&&g(this._indentationRules.decreaseIndentPattern)&&this._indentationRules.decreaseIndentPattern.test(e))}shouldIndentNextLine(e){return!!(this._indentationRules&&this._indentationRules.indentNextLinePattern&&g(this._indentationRules.indentNextLinePattern)&&this._indentationRules.indentNextLinePattern.test(e))}shouldIgnore(e){return!!(this._indentationRules&&this._indentationRules.unIndentedLinePattern&&g(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}}var p=i(75909);class m{constructor(e){(e=e||{}).brackets=e.brackets||[["(",")"],["{","}"],["[","]"]],this._brackets=[],e.brackets.forEach((e=>{const t=m._createOpenBracketRegExp(e[0]),i=m._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 r=0,s=this._regExpRules.length;r<s;r++){const e=this._regExpRules[r];if([{reg:e.beforeText,text:i},{reg:e.afterText,text:n},{reg:e.previousLineText,text:t}].every((e=>!e.reg||(e.reg.lastIndex=0,e.reg.test(e.text)))))return e.action}if(e>=2&&i.length>0&&n.length>0)for(let r=0,s=this._brackets.length;r<s;r++){const e=this._brackets[r];if(e.openRegExp.test(i)&&e.closeRegExp.test(n))return{indentAction:a.l.IndentOutdent}}if(e>=2&&i.length>0)for(let r=0,s=this._brackets.length;r<s;r++){if(this._brackets[r].openRegExp.test(i))return{indentAction:a.l.Indent}}return null}static _createOpenBracketRegExp(e){let t=s.bm(e);return/\B/.test(t.charAt(0))||(t="\\b"+t),t+="\\s*$",m._safeRegExp(t)}static _createCloseBracketRegExp(e){let t=s.bm(e);return/\B/.test(t.charAt(t.length-1))||(t+="\\b"),t="^\\s*"+t,m._safeRegExp(t)}static _safeRegExp(e){try{return new RegExp(e)}catch(t){return(0,p.dz)(t),null}}}var k=i(34029),_=i(58471),b=i(76220),C=i(62848),v=i(75303),y=i(810);class w{constructor(e,t){let i;this.languageId=e,i=t.colorizedBracketPairs?S(t.colorizedBracketPairs.map((e=>[e[0],e[1]]))):t.brackets?S(t.brackets.map((e=>[e[0],e[1]])).filter((e=>!("<"===e[0]&&">"===e[1])))):[];const n=new y.V((e=>{const t=new Set;return{info:new x(this,e,t),closing:t}})),r=new y.V((e=>{const t=new Set;return{info:new I(this,e,t),opening:t}}));for(const[s,o]of i){const e=n.get(s),t=r.get(o);e.closing.add(t.info),t.opening.add(e.info)}this._openingBrackets=new Map([...n.cachedValues].map((([e,t])=>[e,t.info]))),this._closingBrackets=new Map([...r.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)}}function S(e){return e.filter((([e,t])=>""!==e&&""!==t))}class L{constructor(e,t){this.config=e,this.bracketText=t}get languageId(){return this.config.languageId}}class x extends L{constructor(e,t,i){super(e,t),this.openedBrackets=i,this.isOpeningBracket=!0}}class I extends L{constructor(e,t,i){super(e,t),this.closedBrackets=i,this.isOpeningBracket=!1}closes(e){if(e.languageId===this.languageId&&e.config!==this.config)throw new p.D7("Brackets from different language configuration cannot be used.");return this.closedBrackets.has(e)}getClosedBrackets(){return[...this.closedBrackets]}}var D=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},T=function(e,t){return function(i,n){t(i,n,e)}};class E{constructor(e){this.languageId=e}affects(e){return!this.languageId||this.languageId===e}}const O=(0,k.u1)("languageConfigurationService");let M=class extends r.jG{constructor(e,t){super(),this.configurationService=e,this.languageService=t,this._registry=this._register(new V),this.onDidChangeEmitter=this._register(new n.vl),this.onDidChange=this.onDidChangeEmitter.event,this.configurations=new Map;const i=new Set(Object.values(B));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 E(void 0));else for(const i of n)this.languageService.isRegisteredLanguageId(i)&&(this.configurations.delete(i),this.onDidChangeEmitter.fire(new E(i)))}))),this._register(this._registry.onDidChange((e=>{this.configurations.delete(e.languageId),this.onDidChangeEmitter.fire(new E(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 r=t.getLanguageConfiguration(e);if(!r){if(!n.isRegisteredLanguageId(e))throw new Error(`Language id "${e}" is not configured nor known`);r=new H(e,{})}const s=function(e,t){const i=t.getValue(B.brackets,{overrideIdentifier:e}),n=t.getValue(B.colorizedBracketPairs,{overrideIdentifier:e});return{brackets:N(i),colorizedBracketPairs:N(n)}}(r.languageId,i),o=P([r.underlyingConfig,s]);return new H(r.languageId,o)}(e,this._registry,this.configurationService,this.languageService),this.configurations.set(e,t)),t}};M=D([T(0,_.pG),T(1,b.L)],M);const B={brackets:"editor.language.brackets",colorizedBracketPairs:"editor.language.colorizedBracketPairs"};function N(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 A(e,t,i){const n=e.getLineContent(t);let r=s.UU(n);return r.length>i-1&&(r=r.substring(0,i-1)),r}function F(e,t,i){e.tokenization.forceTokenization(t);const n=e.tokenization.getLineTokens(t),r="undefined"===typeof i?e.getLineMaxColumn(t)-1:i-1;return(0,l.BQ)(n,r)}class R{constructor(e){this.languageId=e,this._resolved=null,this._entries=[],this._order=0,this._resolved=null}register(e,t){const i=new z(e,t,++this._order);return this._entries.push(i),this._resolved=null,(0,r.s)((()=>{for(let e=0;e<this._entries.length;e++)if(this._entries[e]===i){this._entries.splice(e,1),this._resolved=null;break}}))}getResolvedConfiguration(){if(!this._resolved){const e=this._resolve();e&&(this._resolved=new H(this.languageId,e))}return this._resolved}_resolve(){return 0===this._entries.length?null:(this._entries.sort(z.cmp),P(this._entries.map((e=>e.configuration))))}}function P(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 z{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 W{constructor(e){this.languageId=e}}class V extends r.jG{constructor(){super(),this._entries=new Map,this._onDidChange=this._register(new n.vl),this.onDidChange=this._onDidChange.event,this._register(this.register(v.vH,{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 R(e),this._entries.set(e,n));const s=n.register(t,i);return this._onDidChange.fire(new W(e)),(0,r.s)((()=>{s.dispose(),this._onDidChange.fire(new W(e))}))}getLanguageConfiguration(e){const t=this._entries.get(e);return(null===t||void 0===t?void 0:t.getResolvedConfiguration())||null}}class H{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 m(this.underlyingConfig):null,this.comments=H._handleComments(this.underlyingConfig),this.characterPair=new h(this.underlyingConfig),this.wordDefinition=this.underlyingConfig.wordPattern||o.Ld,this.indentationRules=this.underlyingConfig.indentationRules,this.underlyingConfig.indentationRules?this.indentRulesSupport=new f(this.underlyingConfig.indentationRules):this.indentRulesSupport=null,this.foldingRules=this.underlyingConfig.folding||{},this.bracketsNew=new w(e,this.underlyingConfig)}getWordDefinition(){return(0,o.Io)(this.wordDefinition)}get brackets(){return!this._brackets&&this.underlyingConfig.brackets&&(this._brackets=new u.az(this.languageId,this.underlyingConfig.brackets)),this._brackets}get electricCharacter(){return this._electricCharacter||(this._electricCharacter=new d(this.brackets)),this._electricCharacter}onEnter(e,t,i,n){return this._onEnterSupport?this._onEnterSupport.onEnter(e,t,i,n):null}getAutoClosingPairs(){return new a.GB(this.characterPair.getAutoClosingPairs())}getAutoCloseBeforeSet(){return this.characterPair.getAutoCloseBeforeSet()}getSurroundingPairs(){return this.characterPair.getSurroundingPairs()}static _handleComments(e){const t=e.comments;if(!t)return null;const i={};if(t.lineComment&&(i.lineCommentToken=t.lineComment),t.blockComment){const[e,n]=t.blockComment;i.blockCommentStartToken=e,i.blockCommentEndToken=n}return i}}(0,C.v)(O,M)},75303:(e,t,i)=>{i.d(t,{W6:()=>l,vH:()=>h});var n=i(35819),r=i(42464),s=i(1097),o=i(21298),a=i(11332);const l=new class{constructor(){this._onDidChangeLanguages=new r.vl,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<i;t++)if(this._languages[t]===e)return void this._languages.splice(t,1)}}}getLanguages(){return this._languages}};s.O.add("editor.modesRegistry",l);const h="plaintext";l.registerLanguage({id:h,extensions:[".txt"],aliases:[n.kg("plainText.alias","Plain Text"),"text"],mimetypes:[o.K.text]}),s.O.as(a.Fd.Configuration).registerDefaultConfigurations([{overrides:{"[plaintext]":{"editor.unicodeHighlight.ambiguousCharacters":!1,"editor.unicodeHighlight.invisibleCharacters":!1}}}])},46078:(e,t,i)=>{i.d(t,{$H:()=>s,Lh:()=>o,r3:()=>r});var n=i(43178);const r=new class{clone(){return this}equals(e){return this===e}};function s(e,t){return new n.$M([new n.ou(0,"",e)],t)}function o(e,t){const i=new Uint32Array(2);return i[0]=0,i[1]=(32768|e|2<<24)>>>0,new n.rY(i,null===t?r:t)}},5670:(e,t,i)=>{function n(e,t){const i=e.getCount(),n=e.findTokenIndexAtOffset(t),s=e.getLanguageId(n);let o=n;for(;o+1<i&&e.getLanguageId(o+1)===s;)o++;let a=n;for(;a>0&&e.getLanguageId(a-1)===s;)a--;return new r(e,s,a,o+1,e.getStartOffset(a),e.getEndOffset(o))}i.d(t,{BQ:()=>n,Yo:()=>s});class r{constructor(e,t,i,n,r,s){this._scopedLineTokensBrand=void 0,this._actual=e,this.languageId=t,this._firstTokenIndex=i,this._lastTokenIndex=n,this.firstCharOffset=r,this._lastCharOffset=s}getLineContent(){return this._actual.getLineContent().substring(this.firstCharOffset,this._lastCharOffset)}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)}}function s(e){return 0!==(3&e)}},2350:(e,t,i)=>{i.d(t,{Fu:()=>f,az:()=>a});var n=i(24638),r=i(59806),s=i(62915);class o{constructor(e,t,i,n,r,s){this._richEditBracketBrand=void 0,this.languageId=e,this.index=t,this.open=i,this.close=n,this.forwardRegex=r,this.reversedRegex=s,this._openSet=o._toSet(this.open),this._closeSet=o._toSet(this.close)}isOpen(e){return this._openSet.has(e)}isClose(e){return this._closeSet.has(e)}static _toSet(e){const t=new Set;for(const i of e)t.add(i);return t}}class a{constructor(e,t){this._richEditBracketsBrand=void 0;const i=function(e){const t=e.length;e=e.map((e=>[e[0].toLowerCase(),e[1].toLowerCase()]));const i=[];for(let o=0;o<t;o++)i[o]=o;const n=(e,t)=>{const[i,n]=e,[r,s]=t;return i===r||i===s||n===r||n===s},r=(e,n)=>{const r=Math.min(e,n),s=Math.max(e,n);for(let o=0;o<t;o++)i[o]===s&&(i[o]=r)};for(let o=0;o<t;o++){const s=e[o];for(let a=o+1;a<t;a++)n(s,e[a])&&r(i[o],i[a])}const s=[];for(let o=0;o<t;o++){const n=[],r=[];for(let s=0;s<t;s++)if(i[s]===o){const[t,i]=e[s];n.push(t),r.push(i)}n.length>0&&s.push({open:n,close:r})}return s}(t);this.brackets=i.map(((t,n)=>new o(e,n,t.open,t.close,function(e,t,i,n){let r=[];r=r.concat(e),r=r.concat(t);for(let s=0,o=r.length;s<o;s++)l(r[s],i,n,r);return r=c(r),r.sort(h),r.reverse(),d(r)}(t.open,t.close,i,n),function(e,t,i,n){let r=[];r=r.concat(e),r=r.concat(t);for(let s=0,o=r.length;s<o;s++)l(r[s],i,n,r);return r=c(r),r.sort(h),r.reverse(),d(r.map(g))}(t.open,t.close,i,n)))),this.forwardRegex=function(e){let t=[];for(const i of e){for(const e of i.open)t.push(e);for(const e of i.close)t.push(e)}return t=c(t),d(t)}(this.brackets),this.reversedRegex=function(e){let t=[];for(const i of e){for(const e of i.open)t.push(e);for(const e of i.close)t.push(e)}return t=c(t),d(t.map(g))}(this.brackets),this.textIsBracket={},this.textIsOpenBracket={},this.maxBracketLength=0;for(const n of this.brackets){for(const e of n.open)this.textIsBracket[e]=n,this.textIsOpenBracket[e]=!0,this.maxBracketLength=Math.max(this.maxBracketLength,e.length);for(const e of n.close)this.textIsBracket[e]=n,this.textIsOpenBracket[e]=!1,this.maxBracketLength=Math.max(this.maxBracketLength,e.length)}}}function l(e,t,i,n){for(let r=0,s=t.length;r<s;r++){if(r===i)continue;const s=t[r];for(const t of s.open)t.indexOf(e)>=0&&n.push(t);for(const t of s.close)t.indexOf(e)>=0&&n.push(t)}}function h(e,t){return e.length-t.length}function c(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 u(e){const t=/^[\w ]+$/.test(e);return e=n.bm(e),t?`\\b${e}\\b`:e}function d(e){const t=`(${e.map(u).join(")|(")})`;return n.OS(t,!0)}const g=function(){let e=null,t=null;return function(i){return e!==i&&(e=i,t=function(e){if(r.aI){const t=new Uint16Array(e.length);let i=0;for(let n=e.length-1;n>=0;n--)t[i++]=e.charCodeAt(n);return r.b7().decode(t)}{const t=[];let i=0;for(let n=e.length-1;n>=0;n--)t[i++]=e.charAt(n);return t.join("")}}(e)),t}}();class f{static _findPrevBracketInText(e,t,i,n){const r=i.match(e);if(!r)return null;const o=i.length-(r.index||0),a=r[0].length,l=n+o;return new s.Q(t,l-a+1,t,l+1)}static findPrevBracketInRange(e,t,i,n,r){const s=g(i).substring(i.length-r,i.length-n);return this._findPrevBracketInText(e,t,s,n)}static findNextBracketInText(e,t,i,n){const r=i.match(e);if(!r)return null;const o=r.index||0,a=r[0].length;if(0===a)return null;const l=n+o;return new s.Q(t,l+1,t,l+1+a)}static findNextBracketInRange(e,t,i,n,r){const s=i.substring(n,r);return this.findNextBracketInText(e,t,s,n)}}},89197:(e,t,i)=>{i.d(t,{Gc:()=>k,Nn:()=>a,Xw:()=>l,rh:()=>m,yF:()=>p});var n=i(61619),r=i(92965),s=i(29822);class o{constructor(e){this._length=e}get length(){return this._length}}class a extends o{constructor(e,t,i,n,r){super(e),this.openingBracket=t,this.child=i,this.closingBracket=n,this.missingOpeningBracketIds=r}static create(e,t,i){let n=e.length;return t&&(n=(0,r.QB)(n,t.length)),i&&(n=(0,r.QB)(n,i.length)),new a(n,e,t,i,t?t.missingOpeningBracketIds:s.gV.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=new Array;return e.push(this.openingBracket),this.child&&e.push(this.child),this.closingBracket&&e.push(this.closingBracket),e}canBeReused(e){return null!==this.closingBracket&&!e.intersects(this.missingOpeningBracketIds)}deepClone(){return new a(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((0,r.QB)(e,this.openingBracket.length),t):Number.MAX_SAFE_INTEGER}}class l extends o{constructor(e,t,i){super(e),this.listHeight=t,this._missingOpeningBracketIds=i,this.cachedMinIndentation=-1}static create23(e,t,i,n=!1){let s=e.length,o=e.missingOpeningBracketIds;if(e.listHeight!==t.listHeight)throw new Error("Invalid list heights");if(s=(0,r.QB)(s,t.length),o=o.merge(t.missingOpeningBracketIds),i){if(e.listHeight!==i.listHeight)throw new Error("Invalid list heights");s=(0,r.QB)(s,i.length),o=o.merge(i.missingOpeningBracketIds)}return n?new c(s,e.listHeight+1,e,t,i,o):new h(s,e.listHeight+1,e,t,i,o)}static getEmpty(){return new d(r.Vp,0,[],s.gV.getEmpty())}get kind(){return 4}get missingOpeningBracketIds(){return this._missingOpeningBracketIds}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(){this.throwIfImmutable();if(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;let t,i=this;for(;4===i.kind&&(t=i.childrenLength)>0;)i=i.getChild(t-1);return i.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<e;n++){const e=this.getChild(n);t=(0,r.QB)(t,e.length),i=i.merge(e.missingOpeningBracketIds)}this._length=t,this._missingOpeningBracketIds=i,this.cachedMinIndentation=-1}computeMinIndentation(e,t){if(-1!==this.cachedMinIndentation)return this.cachedMinIndentation;let i=Number.MAX_SAFE_INTEGER,n=e;for(let s=0;s<this.childrenLength;s++){const e=this.getChild(s);e&&(i=Math.min(i,e.computeMinIndentation(n,t)),n=(0,r.QB)(n,e.length))}return this.cachedMinIndentation=i,i}}class h extends l{constructor(e,t,i,n,r,s){super(e,t,s),this._item1=i,this._item2=n,this._item3=r}get childrenLength(){return null!==this._item3?3:2}getChild(e){switch(e){case 0:return this._item1;case 1:return this._item2;case 2:return this._item3}throw new Error("Invalid child index")}setChild(e,t){switch(e){case 0:return void(this._item1=t);case 1:return void(this._item2=t);case 2:return void(this._item3=t)}throw new Error("Invalid child index")}get children(){return this._item3?[this._item1,this._item2,this._item3]:[this._item1,this._item2]}get item1(){return this._item1}get item2(){return this._item2}get item3(){return this._item3}deepClone(){return new h(this.length,this.listHeight,this._item1.deepClone(),this._item2.deepClone(),this._item3?this._item3.deepClone():null,this.missingOpeningBracketIds)}appendChildOfSameHeight(e){if(this._item3)throw new Error("Cannot append to a full (2,3) tree node");this.throwIfImmutable(),this._item3=e,this.handleChildrenChanged()}unappendChild(){if(!this._item3)throw new Error("Cannot remove from a non-full (2,3) tree node");this.throwIfImmutable();const e=this._item3;return this._item3=null,this.handleChildrenChanged(),e}prependChildOfSameHeight(e){if(this._item3)throw new Error("Cannot prepend to a full (2,3) tree node");this.throwIfImmutable(),this._item3=this._item2,this._item2=this._item1,this._item1=e,this.handleChildrenChanged()}unprependChild(){if(!this._item3)throw new Error("Cannot remove from a non-full (2,3) tree node");this.throwIfImmutable();const e=this._item1;return this._item1=this._item2,this._item2=this._item3,this._item3=null,this.handleChildrenChanged(),e}toMutable(){return this}}class c extends h{toMutable(){return new h(this.length,this.listHeight,this.item1,this.item2,this.item3,this.missingOpeningBracketIds)}throwIfImmutable(){throw new Error("this instance is immutable")}}class u extends l{constructor(e,t,i,n){super(e,t,n),this._children=i}get childrenLength(){return this._children.length}getChild(e){return this._children[e]}setChild(e,t){this._children[e]=t}get children(){return this._children}deepClone(){const e=new Array(this._children.length);for(let t=0;t<this._children.length;t++)e[t]=this._children[t].deepClone();return new u(this.length,this.listHeight,e,this.missingOpeningBracketIds)}appendChildOfSameHeight(e){this.throwIfImmutable(),this._children.push(e),this.handleChildrenChanged()}unappendChild(){this.throwIfImmutable();const e=this._children.pop();return this.handleChildrenChanged(),e}prependChildOfSameHeight(e){this.throwIfImmutable(),this._children.unshift(e),this.handleChildrenChanged()}unprependChild(){this.throwIfImmutable();const e=this._children.shift();return this.handleChildrenChanged(),e}toMutable(){return this}}class d extends u{toMutable(){return new u(this.length,this.listHeight,[...this.children],this.missingOpeningBracketIds)}throwIfImmutable(){throw new Error("this instance is immutable")}}const g=[];class f extends o{get listHeight(){return 0}get childrenLength(){return 0}getChild(e){return null}get children(){return g}deepClone(){return this}}class p extends f{get kind(){return 0}get missingOpeningBracketIds(){return s.gV.getEmpty()}canBeReused(e){return!0}computeMinIndentation(e,t){const i=(0,r.l4)(e),s=(0===i.columnCount?i.lineCount:i.lineCount+1)+1,o=(0,r.eu)((0,r.QB)(e,this.length))+1;let a=Number.MAX_SAFE_INTEGER;for(let r=s;r<=o;r++){const e=t.getLineFirstNonWhitespaceColumn(r),i=t.getLineContent(r);if(0===e)continue;const s=n.A.visibleColumnFromColumn(i,e,t.getOptions().tabSize);a=Math.min(a,s)}return a}}class m extends f{constructor(e,t,i){super(e),this.bracketInfo=t,this.bracketIds=i}static create(e,t,i){return new m(e,t,i)}get kind(){return 1}get missingOpeningBracketIds(){return s.gV.getEmpty()}get text(){return this.bracketInfo.bracketText}get languageId(){return this.bracketInfo.languageId}canBeReused(e){return!1}computeMinIndentation(e,t){return Number.MAX_SAFE_INTEGER}}class k extends f{constructor(e,t){super(t),this.missingOpeningBracketIds=e}get kind(){return 3}canBeReused(e){return!e.intersects(this.missingOpeningBracketIds)}computeMinIndentation(e,t){return Number.MAX_SAFE_INTEGER}}},86499:(e,t,i)=>{i.d(t,{W:()=>s,c:()=>r});var n=i(92965);class r{constructor(e,t,i){this.startOffset=e,this.endOffset=t,this.newLength=i}}class s{constructor(e,t){this.documentLength=t,this.nextEditIdx=0,this.deltaOldToNewLineCount=0,this.deltaOldToNewColumnCount=0,this.deltaLineIdxInOld=-1,this.edits=e.map((e=>o.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):this.documentLength;return(0,n.MS)(e,i)}translateOldToCur(e){return e.lineCount===this.deltaLineIdxInOld?(0,n.qe)(e.lineCount+this.deltaOldToNewLineCount,e.columnCount+this.deltaOldToNewColumnCount):(0,n.qe)(e.lineCount+this.deltaOldToNewLineCount,e.columnCount)}translateCurToOld(e){const t=(0,n.l4)(e);return t.lineCount-this.deltaOldToNewLineCount===this.deltaLineIdxInOld?(0,n.qe)(t.lineCount-this.deltaOldToNewLineCount,t.columnCount-this.deltaOldToNewColumnCount):(0,n.qe)(t.lineCount-this.deltaOldToNewLineCount,t.columnCount)}adjustNextEdit(e){for(;this.nextEditIdx<this.edits.length;){const t=this.edits[this.nextEditIdx],i=this.translateOldToCur(t.endOffsetAfterObj);if(!(0,n.vr)(i,e))break;{this.nextEditIdx++;const e=(0,n.l4)(i),r=(0,n.l4)(this.translateOldToCur(t.endOffsetBeforeObj)),s=e.lineCount-r.lineCount;this.deltaOldToNewLineCount+=s;const o=this.deltaLineIdxInOld===t.endOffsetBeforeObj.lineCount?this.deltaOldToNewColumnCount:0,a=e.columnCount-r.columnCount;this.deltaOldToNewColumnCount=o+a,this.deltaLineIdxInOld=t.endOffsetBeforeObj.lineCount}}}}class o{constructor(e,t,i){this.endOffsetBeforeObj=(0,n.l4)(t),this.endOffsetAfterObj=(0,n.l4)((0,n.QB)(e,i)),this.offsetObj=(0,n.l4)(e)}static from(e){return new o(e.startOffset,e.endOffset,e.newLength)}}},78820:(e,t,i)=>{i.d(t,{Z:()=>h});var n=i(24638),r=i(89197),s=i(92965),o=i(29822),a=i(13128);class l{constructor(e){this.map=e,this.hasRegExp=!1,this._regExpGlobal=null}static createFromLanguage(e,t){function i(e){return t.getKey(`${e.languageId}:::${e.bracketText}`)}const n=new Map;for(const l of e.bracketsNew.openingBrackets){const e=(0,s.qe)(0,l.bracketText.length),t=i(l),h=o.gV.getEmpty().add(t,o.FD);n.set(l.bracketText,new a.ou(e,1,t,h,r.rh.create(e,l,h)))}for(const l of e.bracketsNew.closingBrackets){const e=(0,s.qe)(0,l.bracketText.length);let t=o.gV.getEmpty();const h=l.getClosedBrackets();for(const n of h)t=t.add(i(n),o.FD);n.set(l.bracketText,new a.ou(e,2,i(h[0]),t,r.rh.create(e,l,t)))}return new l(n)}getRegExpStr(){if(this.isEmpty)return null;{const e=[...this.map.keys()];return e.sort(),e.reverse(),e.map((e=>function(e){let t=(0,n.bm)(e);/^[\w ]+/.test(e)&&(t=`\\b${t}`);/[\w ]+$/.test(e)&&(t=`${t}\\b`);return 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 h{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=l.createFromLanguage(this.getLanguageConfiguration(e),this.denseKeyProvider),this.languageIdToBracketTokens.set(e,t)),t}}},92965:(e,t,i)=>{i.d(t,{C7:()=>o,MS:()=>p,QB:()=>f,Qx:()=>C,VL:()=>b,Vh:()=>l,Vp:()=>a,eu:()=>d,l4:()=>u,o0:()=>_,qe:()=>c,rR:()=>v,sS:()=>g,vr:()=>k,zG:()=>m});var n=i(24638),r=i(62915);class s{constructor(e,t){this.lineCount=e,this.columnCount=t}toString(){return`${this.lineCount},${this.columnCount}`}}function o(e,t,i,n){return e!==i?c(i-e,n):c(0,n-t)}s.zero=new s(0,0);const a=0;function l(e){return 0===e}const h=Math.pow(2,26);function c(e,t){return e*h+t}function u(e){const t=e,i=Math.floor(t/h);return new s(i,t-i*h)}function d(e){return Math.floor(e/h)}function g(e){return e}function f(e,t){return t<h?e+t:e-e%h+t}function p(e,t){const i=e,n=t;if(n-i<=0)return a;const r=Math.floor(i/h),s=Math.floor(n/h),o=n-s*h;if(r===s){return c(0,o-(i-r*h))}return c(s-r,o)}function m(e,t){return e<t}function k(e,t){return e<=t}function _(e,t){return e>=t}function b(e){return c(e.lineNumber-1,e.column-1)}function C(e,t){const i=e,n=Math.floor(i/h),s=i-n*h,o=t,a=Math.floor(o/h),l=o-a*h;return new r.Q(n+1,s+1,a+1,l+1)}function v(e){const t=(0,n.uz)(e);return c(t.length-1,t[t.length-1].length)}},70562:(e,t,i)=>{i.d(t,{T:()=>g});var n=i(89197),r=i(86499),s=i(29822),o=i(92965);function a(e,t=!1){if(0===e.length)return null;if(1===e.length)return e[0];let i=e.length;for(;i>3;){const r=i>>1;for(let s=0;s<r;s++){const r=s<<1;e[s]=n.Xw.create23(e[r],e[r+1],r+3===i?e[r+2]:null,t)}i=r}return n.Xw.create23(e[0],e[1],i>=3?e[2]:null,t)}function l(e,t){return Math.abs(e.listHeight-t.listHeight)}function h(e,t){return e.listHeight===t.listHeight?n.Xw.create23(e,t,null,!1):e.listHeight>t.listHeight?function(e,t){let i=e=e.toMutable();const r=new Array;let s;for(;;){if(t.listHeight===i.listHeight){s=t;break}if(4!==i.kind)throw new Error("unexpected");r.push(i),i=i.makeLastElementMutable()}for(let o=r.length-1;o>=0;o--){const e=r[o];s?e.childrenLength>=3?s=n.Xw.create23(e.unappendChild(),s,null,!1):(e.appendChildOfSameHeight(s),s=void 0):e.handleChildrenChanged()}return s?n.Xw.create23(e,s,null,!1):e}(e,t):function(e,t){let i=e=e.toMutable();const r=new Array;for(;t.listHeight!==i.listHeight;){if(4!==i.kind)throw new Error("unexpected");r.push(i),i=i.makeFirstElementMutable()}let s=t;for(let o=r.length-1;o>=0;o--){const e=r[o];s?e.childrenLength>=3?s=n.Xw.create23(s,e.unprependChild(),null,!1):(e.prependChildOfSameHeight(s),s=void 0):e.handleChildrenChanged()}return s?n.Xw.create23(s,e,null,!1):e}(t,e)}class c{constructor(e){this.lastOffset=o.Vp,this.nextNodes=[e],this.offsets=[o.Vp],this.idxs=[]}readLongestNodeAt(e,t){if((0,o.zG)(e,this.lastOffset))throw new Error("Invalid offset");for(this.lastOffset=e;;){const i=d(this.nextNodes);if(!i)return;const n=d(this.offsets);if((0,o.zG)(e,n))return;if((0,o.zG)(n,e))if((0,o.QB)(n,i.length)<=e)this.nextNodeAfterCurrent();else{const e=u(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=u(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=d(this.offsets),t=d(this.nextNodes);if(this.nextNodes.pop(),this.offsets.pop(),0===this.idxs.length)break;const i=d(this.nextNodes),n=u(i,this.idxs[this.idxs.length-1]);if(-1!==n){this.nextNodes.push(i.getChild(n)),this.offsets.push((0,o.QB)(e,t.length)),this.idxs[this.idxs.length-1]=n;break}this.idxs.pop()}}}function u(e,t=-1){for(;;){if(++t>=e.childrenLength)return-1;if(e.getChild(t))return t}}function d(e){return e.length>0?e[e.length-1]:void 0}function g(e,t,i,n){return new f(e,t,i,n).parseDocument()}class f{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 c(i):void 0,this.positionMapper=new r.W(t,e.length)}parseDocument(){this._itemsConstructed=0,this._itemsFromCache=0;let e=this.parseList(s.gV.getEmpty());return e||(e=n.Xw.getEmpty()),e}parseList(e){const t=new Array;for(;;){const i=this.tokenizer.peek();if(!i||2===i.kind&&i.bracketIds.intersects(e))break;const n=this.parseChild(e);4===n.kind&&0===n.childrenLength||t.push(n)}const i=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<e.length&&e[t].listHeight===n;)t++;return t-i>=2?a(0===i&&t===e.length?e:e.slice(i,t),!1):e[i]}let n=i(),r=i();if(!r)return n;for(let s=i();s;s=i())l(n,r)<=l(r,s)?(n=h(n,r),r=s):r=h(r,s);return h(n,r)}(t):a(t,this.createImmutableLists);return i}parseChild(e){if(this.oldNodeReader){const t=this.positionMapper.getDistanceToNextChange(this.tokenizer.offset);if(!(0,o.Vh)(t)){const i=this.oldNodeReader.readLongestNodeAt(this.positionMapper.getOffsetBeforeChange(this.tokenizer.offset),(i=>{if(!(0,o.zG)(i.length,t))return!1;return i.canBeReused(e)}));if(i)return this._itemsFromCache++,this.tokenizer.skip(i.length),i}}this._itemsConstructed++;const t=this.tokenizer.read();switch(t.kind){case 2:return new n.Gc(t.bracketIds,t.length);case 0:return t.astNode;case 1:{const i=e.merge(t.bracketIds),r=this.parseList(i),s=this.tokenizer.peek();return s&&2===s.kind&&(s.bracketId===t.bracketId||s.bracketIds.intersects(t.bracketIds))?(this.tokenizer.read(),n.Nn.create(t.astNode,r,s.astNode)):n.Nn.create(t.astNode,r,null)}default:throw new Error("unexpected")}}}},29822:(e,t,i)=>{i.d(t,{FD:()=>s,Mg:()=>o,gV:()=>r});const n=new Array;class r{constructor(e,t){this.items=e,this.additionalItems=t}static create(e,t){if(e<=128&&0===t.length){let i=r.cache[e];return i||(i=new r(e,t),r.cache[e]=i),i}return new r(e,t)}static getEmpty(){return this.empty}add(e,t){const i=t.getKey(e);let n=i>>5;if(0===n){const e=1<<i|this.items;return e===this.items?this:r.create(e,this.additionalItems)}n--;const s=this.additionalItems.slice(0);for(;s.length<n;)s.push(0);return s[n]|=1<<(31&i),r.create(this.items,s)}merge(e){const t=this.items|e.items;if(this.additionalItems===n&&e.additionalItems===n)return t===this.items?this:t===e.items?e:r.create(t,n);const i=new Array;for(let n=0;n<Math.max(this.additionalItems.length,e.additionalItems.length);n++){const t=this.additionalItems[n]||0,r=e.additionalItems[n]||0;i.push(t|r)}return r.create(t,i)}intersects(e){if(0!==(this.items&e.items))return!0;for(let t=0;t<Math.min(this.additionalItems.length,e.additionalItems.length);t++)if(0!==(this.additionalItems[t]&e.additionalItems[t]))return!0;return!1}}r.cache=new Array(129),r.empty=r.create(0,n);const s={getKey:e=>e};class o{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}}},13128:(e,t,i)=>{i.d(t,{_:()=>u,ou:()=>l,tk:()=>h});var n=i(75909),r=i(61244),s=i(89197),o=i(92965),a=i(29822);class l{constructor(e,t,i,n,r){this.length=e,this.kind=t,this.bracketId=i,this.bracketIds=n,this.astNode=r}}class h{constructor(e,t){this.textModel=e,this.bracketTokens=t,this.reader=new c(this.textModel,this.bracketTokens),this._offset=o.Vp,this.didPeek=!1,this.peeked=null,this.textBufferLineCount=e.getLineCount(),this.textBufferLastLineLength=e.getLineLength(this.textBufferLineCount)}get offset(){return this._offset}get length(){return(0,o.qe)(this.textBufferLineCount,this.textBufferLastLineLength)}skip(e){this.didPeek=!1,this._offset=(0,o.QB)(this._offset,e);const t=(0,o.l4)(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=(0,o.QB)(this._offset,e.length)),e}peek(){return this.didPeek||(this.peeked=this.reader.read(),this.didPeek=!0),this.peeked}}class c{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,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+=(0,o.sS)(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,s=n.getCount();let a=null;if(this.lineTokenOffset<s){const l=n.getMetadata(this.lineTokenOffset);for(;this.lineTokenOffset+1<s&&l===n.getMetadata(this.lineTokenOffset+1);)this.lineTokenOffset++;const h=0===r.x.getTokenType(l),c=r.x.containsBalancedBrackets(l),u=n.getEndOffset(this.lineTokenOffset);if(c&&h&&this.lineCharOffset<u){const e=n.getLanguageId(this.lineTokenOffset),t=this.line.substring(this.lineCharOffset,u),i=this.bracketTokens.getSingleLanguageBracketTokens(e),r=i.regExpGlobal;if(r){r.lastIndex=0;const e=r.exec(t);e&&(a=i.getToken(e[0]),a&&(this.lineCharOffset+=e.index))}}if(i+=u-this.lineCharOffset,a){if(e!==this.lineIdx||t!==this.lineCharOffset){this.peekedToken=a;break}return this.lineCharOffset+=(0,o.sS)(a.length),a}this.lineTokenOffset++,this.lineCharOffset=u}else{if(this.lineIdx===this.textBufferLineCount-1)break;if(this.lineIdx++,this.lineTokens=this.textModel.tokenization.getLineTokens(this.lineIdx+1),this.lineTokenOffset=0,this.line=this.lineTokens.getLineContent(),this.lineCharOffset=0,i+=33,i>1e3)break}if(i>1500)break}const n=(0,o.C7)(e,t,this.lineIdx,this.lineCharOffset);return new l(n,0,-1,a.gV.getEmpty(),new s.yF(n))}}class u{constructor(e,t){this.text=e,this._offset=o.Vp,this.idx=0;const i=t.getRegExpStr(),n=i?new RegExp(i+"|\n","gi"):null,r=[];let h,c=0,u=0,d=0,g=0;const f=new Array;for(let k=0;k<60;k++)f.push(new l((0,o.qe)(0,k),0,-1,a.gV.getEmpty(),new s.yF((0,o.qe)(0,k))));const p=new Array;for(let k=0;k<60;k++)p.push(new l((0,o.qe)(1,k),0,-1,a.gV.getEmpty(),new s.yF((0,o.qe)(1,k))));if(n)for(n.lastIndex=0;null!==(h=n.exec(e));){const e=h.index,i=h[0];if("\n"===i)c++,u=e+1;else{if(d!==e){let t;if(g===c){const i=e-d;if(i<f.length)t=f[i];else{const e=(0,o.qe)(0,i);t=new l(e,0,-1,a.gV.getEmpty(),new s.yF(e))}}else{const i=c-g,n=e-u;if(1===i&&n<p.length)t=p[n];else{const e=(0,o.qe)(i,n);t=new l(e,0,-1,a.gV.getEmpty(),new s.yF(e))}}r.push(t)}r.push(t.getToken(i)),d=e+i.length,g=c}}const m=e.length;if(d!==m){const e=g===c?(0,o.qe)(0,m-d):(0,o.qe)(c-g,m-u);r.push(new l(e,0,-1,a.gV.getEmpty(),new s.yF(e)))}this.length=(0,o.qe)(c,m-u),this.tokens=r}get offset(){return this._offset}read(){return this.tokens[this.idx++]||null}peek(){return this.tokens[this.idx]||null}skip(e){throw new n.EM}}},99474:(e,t,i)=>{i.d(t,{Ov:()=>u,Th:()=>p,z8:()=>m});var n=i(35819),r=i(75909),s=i(85376),o=i(65698),a=i(30039),l=i(52756),h=i(1273);function c(e){return e.toString()}class u{constructor(e,t,i,n,r,s,o){this.beforeVersionId=e,this.afterVersionId=t,this.beforeEOL=i,this.afterEOL=n,this.beforeCursorState=r,this.afterCursorState=s,this.changes=o}static create(e,t){const i=e.getAlternativeVersionId(),n=f(e);return new u(i,i,n,n,t,t,[])}append(e,t,i,n,r){t.length>0&&(this.changes=(0,a.x)(this.changes,t)),this.afterEOL=i,this.afterVersionId=n,this.afterCursorState=r}static _writeSelectionsSize(e){return 4+16*(e?e.length:0)}static _writeSelections(e,t,i){if(l.Sw(e,t?t.length:0,i),i+=4,t)for(const n of t)l.Sw(e,n.selectionStartLineNumber,i),i+=4,l.Sw(e,n.selectionStartColumn,i),i+=4,l.Sw(e,n.positionLineNumber,i),i+=4,l.Sw(e,n.positionColumn,i),i+=4;return i}static _readSelections(e,t,i){const n=l.bb(e,t);t+=4;for(let r=0;r<n;r++){const n=l.bb(e,t);t+=4;const r=l.bb(e,t);t+=4;const o=l.bb(e,t);t+=4;const a=l.bb(e,t);t+=4,i.push(new s.L(n,r,o,a))}return t}serialize(){let e=10+u._writeSelectionsSize(this.beforeCursorState)+u._writeSelectionsSize(this.afterCursorState)+4;for(const n of this.changes)e+=n.writeSize();const t=new Uint8Array(e);let i=0;l.Sw(t,this.beforeVersionId,i),i+=4,l.Sw(t,this.afterVersionId,i),i+=4,l.Gs(t,this.beforeEOL,i),i+=1,l.Gs(t,this.afterEOL,i),i+=1,i=u._writeSelections(t,this.beforeCursorState,i),i=u._writeSelections(t,this.afterCursorState,i),l.Sw(t,this.changes.length,i),i+=4;for(const n of this.changes)i=n.write(t,i);return t.buffer}static deserialize(e){const t=new Uint8Array(e);let i=0;const n=l.bb(t,i);i+=4;const r=l.bb(t,i);i+=4;const s=l.pJ(t,i);i+=1;const o=l.pJ(t,i);i+=1;const h=[];i=u._readSelections(t,i,h);const c=[];i=u._readSelections(t,i,c);const d=l.bb(t,i);i+=4;const g=[];for(let l=0;l<d;l++)i=a.k.read(t,i,g);return new u(n,r,s,o,h,c,g)}}class d{constructor(e,t,i,n){this.label=e,this.code=t,this.model=i,this._data=u.create(i,n)}get type(){return 0}get resource(){return o.r.isUri(this.model)?this.model:this.model.uri}toString(){return(this._data instanceof u?this._data:u.deserialize(this._data)).changes.map((e=>e.toString())).join(", ")}matchesResource(e){return(o.r.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 u}append(e,t,i,n,r){this._data instanceof u&&this._data.append(e,t,i,n,r)}close(){this._data instanceof u&&(this._data=this._data.serialize())}open(){this._data instanceof u||(this._data=u.deserialize(this._data))}undo(){if(o.r.isUri(this.model))throw new Error("Invalid SingleModelEditStackElement");this._data instanceof u&&(this._data=this._data.serialize());const e=u.deserialize(this._data);this.model._applyUndo(e.changes,e.beforeEOL,e.beforeVersionId,e.beforeCursorState)}redo(){if(o.r.isUri(this.model))throw new Error("Invalid SingleModelEditStackElement");this._data instanceof u&&(this._data=this._data.serialize());const e=u.deserialize(this._data);this.model._applyRedo(e.changes,e.afterEOL,e.afterVersionId,e.afterCursorState)}heapSize(){return this._data instanceof u&&(this._data=this._data.serialize()),this._data.byteLength+168}}class g{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 n of this._editStackElementsArr){const e=c(n.resource);this._editStackElementsMap.set(e,n)}this._delegate=null}get resources(){return this._editStackElementsArr.map((e=>e.resource))}prepareUndoRedo(){if(this._delegate)return this._delegate.prepareUndoRedo(this)}matchesResource(e){const t=c(e);return this._editStackElementsMap.has(t)}setModel(e){const t=c(o.r.isUri(e)?e:e.uri);this._editStackElementsMap.has(t)&&this._editStackElementsMap.get(t).setModel(e)}canAppend(e){if(!this._isOpen)return!1;const t=c(e.uri);if(this._editStackElementsMap.has(t)){return this._editStackElementsMap.get(t).canAppend(e)}return!1}append(e,t,i,n,r){const s=c(e.uri);this._editStackElementsMap.get(s).append(e,t,i,n,r)}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=c(e);if(this._editStackElementsMap.has(t)){return this._editStackElementsMap.get(t).heapSize()}return 0}split(){return this._editStackElementsArr}toString(){const e=[];for(const t of this._editStackElementsArr)e.push(`${(0,h.P8)(t.resource)}: ${t}`);return`{${e.join(", ")}}`}}function f(e){return"\n"===e.getEOL()?0:1}function p(e){return!!e&&(e instanceof d||e instanceof g)}class m{constructor(e,t){this._model=e,this._undoRedoService=t}pushStackElement(){const e=this._undoRedoService.getLastElement(this._model.uri);p(e)&&e.close()}popStackElement(){const e=this._undoRedoService.getLastElement(this._model.uri);p(e)&&e.open()}clear(){this._undoRedoService.removeElements(this._model.uri)}_getOrCreateEditStackElement(e){const t=this._undoRedoService.getLastElement(this._model.uri);if(p(t)&&t.canAppend(this._model))return t;const i=new d(n.kg("edit","Typing"),"undoredo.textBufferEdit",this._model,e);return this._undoRedoService.pushElement(i),i}pushEOL(e){const t=this._getOrCreateEditStackElement(null);this._model.setEOL(e),t.append(this._model,[],f(this._model),this._model.getAlternativeVersionId(),null)}pushEditOperation(e,t,i){const n=this._getOrCreateEditStackElement(e),r=this._model.applyEdits(t,!0),s=m._computeCursorState(i,r),o=r.map(((e,t)=>({index:t,textChange:e.textChange})));return o.sort(((e,t)=>e.textChange.oldPosition===t.textChange.oldPosition?e.index-t.index:e.textChange.oldPosition-t.textChange.oldPosition)),n.append(this._model,o.map((e=>e.textChange)),f(this._model),this._model.getAlternativeVersionId(),s),s}static _computeCursorState(e,t){try{return e?e(t):null}catch(i){return(0,r.dz)(i),null}}}},5848:(e,t,i)=>{i.d(t,{P:()=>c,k:()=>u});var n=i(48640),r=i(24638),s=i(61619),o=i(62915),a=i(22519),l=i(62579),h=i(32589);class c extends a._{constructor(e,t){super(),this.textModel=e,this.languageConfigurationService=t}getLanguageConfiguration(e){return this.languageConfigurationService.getLanguageConfiguration(e)}_computeIndentLevel(e){return(0,l.G)(this.textModel.getLineContent(e+1),this.textModel.getOptions().tabSize)}getActiveIndentGuide(e,t,i){this.assertNotDisposed();const n=this.textModel.getLineCount();if(e<1||e>n)throw new Error("Illegal value for lineNumber");const r=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,s=Boolean(r&&r.offSide);let o=-2,a=-1,l=-2,h=-1;const c=e=>{if(-1!==o&&(-2===o||o>e-1)){o=-1,a=-1;for(let t=e-2;t>=0;t--){const e=this._computeIndentLevel(t);if(e>=0){o=t,a=e;break}}}if(-2===l){l=-1,h=-1;for(let t=e;t<n;t++){const e=this._computeIndentLevel(t);if(e>=0){l=t,h=e;break}}}};let u=-2,d=-1,g=-2,f=-1;const p=e=>{if(-2===u){u=-1,d=-1;for(let t=e-2;t>=0;t--){const e=this._computeIndentLevel(t);if(e>=0){u=t,d=e;break}}}if(-1!==g&&(-2===g||g<e-1)){g=-1,f=-1;for(let t=e;t<n;t++){const e=this._computeIndentLevel(t);if(e>=0){g=t,f=e;break}}}};let m=0,k=!0,_=0,b=!0,C=0,v=0;for(let y=0;k||b;y++){const r=e-y,o=e+y;y>1&&(r<1||r<t)&&(k=!1),y>1&&(o>n||o>i)&&(b=!1),y>5e4&&(k=!1,b=!1);let g=-1;if(k&&r>=1){const e=this._computeIndentLevel(r-1);e>=0?(l=r-1,h=e,g=Math.ceil(e/this.textModel.getOptions().indentSize)):(c(r),g=this._getIndentLevelForWhitespaceLine(s,a,h))}let w=-1;if(b&&o<=n){const e=this._computeIndentLevel(o-1);e>=0?(u=o-1,d=e,w=Math.ceil(e/this.textModel.getOptions().indentSize)):(p(o),w=this._getIndentLevelForWhitespaceLine(s,d,f))}if(0!==y){if(1===y){if(o<=n&&w>=0&&v+1===w){k=!1,m=o,_=o,C=w;continue}if(r>=1&&g>=0&&g-1===v){b=!1,m=r,_=r,C=g;continue}if(m=e,_=e,C=v,0===C)return{startLineNumber:m,endLineNumber:_,indent:C}}k&&(g>=C?m=r:k=!1),b&&(w>=C?_=o:b=!1)}else v=g}return{startLineNumber:m,endLineNumber:_,indent:C}}getLinesBracketGuides(e,t,i,s){var a;const l=[];for(let n=e;n<=t;n++)l.push([]);const c=!0,d=this.textModel.bracketPairs.getBracketPairsInRangeWithMinIndentation(new o.Q(e,1,t,this.textModel.getLineMaxColumn(t)));let g;if(i&&d.length>0){const r=(e<=i.lineNumber&&i.lineNumber<=t?d:this.textModel.bracketPairs.getBracketPairsInRange(o.Q.fromPositions(i))).filter((e=>o.Q.strictContainsPosition(e.range,i)));g=null===(a=(0,n.Uk)(r,(e=>c)))||void 0===a?void 0:a.range}const f=this.textModel.getOptions().bracketPairColorizationOptions.independentColorPoolPerBracketType,p=new u;for(const n of d){if(!n.closingBracketRange)continue;const i=g&&n.range.equalsRange(g);if(!i&&!s.includeInactive)continue;const o=p.getInlineClassName(n.nestingLevel,n.nestingLevelOfEqualBracketType,f)+(s.highlightActive&&i?" "+p.activeClassName:""),a=n.openingBracketRange.getStartPosition(),c=n.closingBracketRange.getStartPosition(),u=s.horizontalGuides===h.N6.Enabled||s.horizontalGuides===h.N6.EnabledForActive&&i;if(n.range.startLineNumber===n.range.endLineNumber){u&&l[n.range.startLineNumber-e].push(new h.TH(-1,n.openingBracketRange.getEndPosition().column,o,new h.pv(!1,c.column),-1,-1));continue}const d=this.getVisibleColumnFromPosition(c),m=this.getVisibleColumnFromPosition(n.openingBracketRange.getStartPosition()),k=Math.min(m,d,n.minVisibleColumnIndentation+1);let _=!1;r.HG(this.textModel.getLineContent(n.closingBracketRange.startLineNumber))<n.closingBracketRange.startColumn-1&&(_=!0);const b=Math.max(a.lineNumber,e),C=Math.min(c.lineNumber,t),v=_?1:0;for(let t=b;t<C+v;t++)l[t-e].push(new h.TH(k,-1,o,null,t===a.lineNumber?a.column:-1,t===c.lineNumber?c.column:-1));u&&(a.lineNumber>=e&&m>k&&l[a.lineNumber-e].push(new h.TH(k,-1,o,new h.pv(!1,a.column),-1,-1)),c.lineNumber<=t&&d>k&&l[c.lineNumber-e].push(new h.TH(k,-1,o,new h.pv(!_,c.column),-1,-1)))}for(const n of l)n.sort(((e,t)=>e.visibleColumn-t.visibleColumn));return l}getVisibleColumnFromPosition(e){return s.A.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(),r=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,s=Boolean(r&&r.offSide),o=new Array(t-e+1);let a=-2,l=-1,h=-2,c=-1;for(let u=e;u<=t;u++){const t=u-e,r=this._computeIndentLevel(u-1);if(r>=0)a=u-1,l=r,o[t]=Math.ceil(r/n.indentSize);else{if(-2===a){a=-1,l=-1;for(let e=u-2;e>=0;e--){const t=this._computeIndentLevel(e);if(t>=0){a=e,l=t;break}}}if(-1!==h&&(-2===h||h<u-1)){h=-1,c=-1;for(let e=u;e<i;e++){const t=this._computeIndentLevel(e);if(t>=0){h=e,c=t;break}}}o[t]=this._getIndentLevelForWhitespaceLine(s,l,c)}}return o}_getIndentLevelForWhitespaceLine(e,t,i){const n=this.textModel.getOptions();return-1===t||-1===i?0:t<i?1+Math.floor(t/n.indentSize):t===i||e?Math.ceil(i/n.indentSize):1+Math.floor(i/n.indentSize)}}class u{constructor(){this.activeClassName="indent-active"}getInlineClassName(e,t,i){return this.getInlineClassNameOfLevel(i?t:e)}getInlineClassNameOfLevel(e){return"bracket-indent-guide lvl-"+e%30}}},9772:(e,t,i)=>{i.d(t,{N:()=>s,c2:()=>o});var n=i(48640),r=i(59166);class s{constructor(e){this.values=e,this.prefixSum=new Uint32Array(e.length),this.prefixSumValidIndex=new Int32Array(1),this.prefixSumValidIndex[0]=-1}insertValues(e,t){e=(0,r.j)(e);const i=this.values,n=this.prefixSum,s=t.length;return 0!==s&&(this.values=new Uint32Array(i.length+s),this.values.set(i.subarray(0,e),0),this.values.set(i.subarray(e),e+s),this.values.set(t,e),e-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=e-1),this.prefixSum=new Uint32Array(this.values.length),this.prefixSumValidIndex[0]>=0&&this.prefixSum.set(n.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}setValue(e,t){return e=(0,r.j)(e),t=(0,r.j)(t),this.values[e]!==t&&(this.values[e]=t,e-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=e-1),!0)}removeValues(e,t){e=(0,r.j)(e),t=(0,r.j)(t);const i=this.values,n=this.prefixSum;if(e>=i.length)return!1;const s=i.length-e;return t>=s&&(t=s),0!==t&&(this.values=new Uint32Array(i.length-t),this.values.set(i.subarray(0,e),0),this.values.set(i.subarray(e+t),e),this.prefixSum=new Uint32Array(this.values.length),e-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=e-1),this.prefixSumValidIndex[0]>=0&&this.prefixSum.set(n.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}getTotalSum(){return 0===this.values.length?0:this._getPrefixSum(this.values.length-1)}getPrefixSum(e){return e<0?0:(e=(0,r.j)(e),this._getPrefixSum(e))}_getPrefixSum(e){if(e<=this.prefixSumValidIndex[0])return this.prefixSum[e];let t=this.prefixSumValidIndex[0]+1;0===t&&(this.prefixSum[0]=this.values[0],t++),e>=this.values.length&&(e=this.values.length-1);for(let i=t;i<=e;i++)this.prefixSum[i]=this.prefixSum[i-1]+this.values[i];return this.prefixSumValidIndex[0]=Math.max(this.prefixSumValidIndex[0],e),this.prefixSum[e]}getIndexOf(e){e=Math.floor(e),this.getTotalSum();let t=0,i=this.values.length-1,n=0,r=0,s=0;for(;t<=i;)if(n=t+(i-t)/2|0,r=this.prefixSum[n],s=r-this.values[n],e<s)i=n-1;else{if(!(e>=r))break;t=n+1}return new a(n,e-s)}}class o{constructor(e){this._values=e,this._isValid=!1,this._validEndIndex=-1,this._prefixSum=[],this._indexBySum=[]}getTotalSum(){return this._ensureValid(),this._indexBySum.length}getPrefixSum(e){return this._ensureValid(),0===e?0:this._prefixSum[e-1]}getIndexOf(e){this._ensureValid();const t=this._indexBySum[e],i=t>0?this._prefixSum[t-1]:0;return new a(t,e-i)}removeValues(e,t){this._values.splice(e,t),this._invalidate(e)}insertValues(e,t){this._values=(0,n.nK)(this._values,e,t),this._invalidate(e)}_invalidate(e){this._isValid=!1,this._validEndIndex=Math.min(this._validEndIndex,e-1)}_ensureValid(){if(!this._isValid){for(let e=this._validEndIndex+1,t=this._values.length;e<t;e++){const t=this._values[e],i=e>0?this._prefixSum[e-1]:0;this._prefixSum[e]=i+t;for(let n=0;n<t;n++)this._indexBySum[i+n]=e}this._prefixSum.length=this._values.length,this._indexBySum.length=this._prefixSum[this._prefixSum.length-1],this._isValid=!0,this._validEndIndex=this._values.length-1}}setValue(e,t){this._values[e]!==t&&(this._values[e]=t,this._invalidate(e))}}class a{constructor(e,t){this.index=e,this.remainder=t,this._prefixSumIndexOfResultBrand=void 0,this.index=e,this.remainder=t}}},41362:(e,t,i)=>{i.d(t,{Ho:()=>Tt,kI:()=>Et,Bz:()=>vt});var n=i(48640),r=i(74379),s=i(75909),o=i(42464),a=i(55808),l=i(24638),h=i(65698),c=i(16920),u=i(96809),d=i(55547),g=i(62915),f=i(85376),p=i(11572),m=i(76220),k=i(10884),_=i(35065);class b{constructor(e,t,i,n){this.range=e,this.nestingLevel=t,this.nestingLevelOfEqualBracketType=i,this.isInvalid=n}}class C{constructor(e,t,i,n,r,s){this.range=e,this.openingBracketRange=t,this.closingBracketRange=i,this.nestingLevel=n,this.nestingLevelOfEqualBracketType=r,this.bracketPairNode=s}get openingBracketInfo(){return this.bracketPairNode.openingBracket.bracketInfo}}class v extends C{constructor(e,t,i,n,r,s,o){super(e,t,i,n,r,s),this.minVisibleColumnIndentation=o}}var y=i(86499),w=i(78820),S=i(92965),L=i(70562),x=i(29822),I=i(13128);class D extends a.jG{constructor(e,t){if(super(),this.textModel=e,this.getLanguageConfiguration=t,this.didChangeEmitter=new o.vl,this.denseKeyProvider=new x.Mg,this.brackets=new w.Z(this.denseKeyProvider,this.getLanguageConfiguration),this.onDidChange=this.didChangeEmitter.event,0===e.tokenization.backgroundTokenizationState){const e=this.brackets.getSingleLanguageBracketTokens(this.textModel.getLanguageId()),t=new I._(this.textModel.getValue(),e);this.initialAstWithoutTokens=(0,L.T)(t,[],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens}else 2===e.tokenization.backgroundTokenizationState?(this.initialAstWithoutTokens=void 0,this.astWithTokens=this.parseDocumentFromTextBuffer([],void 0,!1)):1===e.tokenization.backgroundTokenizationState&&(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer([],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens)}didLanguageChange(e){return this.brackets.didLanguageChange(e)}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 y.c((0,S.qe)(e.fromLineNumber-1,0),(0,S.qe)(e.toLineNumber,0),(0,S.qe)(e.toLineNumber-e.fromLineNumber+1,0))));this.astWithTokens=this.parseDocumentFromTextBuffer(t,this.astWithTokens,!1),this.initialAstWithoutTokens||this.didChangeEmitter.fire()}handleContentChanged(e){const t=e.changes.map((e=>{const t=g.Q.lift(e.range);return new y.c((0,S.VL)(t.getStartPosition()),(0,S.VL)(t.getEndPosition()),(0,S.rR)(e.text))})).reverse();this.astWithTokens=this.parseDocumentFromTextBuffer(t,this.astWithTokens,!1),this.initialAstWithoutTokens&&(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer(t,this.initialAstWithoutTokens,!1))}parseDocumentFromTextBuffer(e,t,i){const n=t,r=new I.tk(this.textModel,this.brackets);return(0,L.T)(r,e,n,i)}getBracketsInRange(e){const t=(0,S.qe)(e.startLineNumber-1,e.startColumn-1),i=(0,S.qe)(e.endLineNumber-1,e.endColumn-1),n=new Array,r=this.initialAstWithoutTokens||this.astWithTokens;return O(r,S.Vp,r.length,t,i,n,0,new Map),n}getBracketPairsInRange(e,t){const i=new Array,n=(0,S.VL)(e.getStartPosition()),r=(0,S.VL)(e.getEndPosition()),s=this.initialAstWithoutTokens||this.astWithTokens,o=new M(i,t,this.textModel);return B(s,S.Vp,s.length,n,r,o,0,new Map),i}getFirstBracketAfter(e){const t=this.initialAstWithoutTokens||this.astWithTokens;return E(t,S.Vp,t.length,(0,S.VL)(e))}getFirstBracketBefore(e){const t=this.initialAstWithoutTokens||this.astWithTokens;return T(t,S.Vp,t.length,(0,S.VL)(e))}}function T(e,t,i,n){if(4===e.kind||2===e.kind){const r=[];for(const n of e.children)i=(0,S.QB)(t,n.length),r.push({nodeOffsetStart:t,nodeOffsetEnd:i}),t=i;for(let t=r.length-1;t>=0;t--){const{nodeOffsetStart:i,nodeOffsetEnd:s}=r[t];if((0,S.zG)(i,n)){const r=T(e.children[t],i,s,n);if(r)return r}}return null}if(3===e.kind)return null;if(1===e.kind){const n=(0,S.Qx)(t,i);return{bracketInfo:e.bracketInfo,range:n}}return null}function E(e,t,i,n){if(4===e.kind||2===e.kind){for(const r of e.children){if(i=(0,S.QB)(t,r.length),(0,S.zG)(n,i)){const e=E(r,t,i,n);if(e)return e}t=i}return null}if(3===e.kind)return null;if(1===e.kind){const n=(0,S.Qx)(t,i);return{bracketInfo:e.bracketInfo,range:n}}return null}function O(e,t,i,n,r,s,o,a){if(!(o>200))if(4===e.kind)for(const l of e.children)i=(0,S.QB)(t,l.length),(0,S.vr)(t,r)&&(0,S.o0)(i,n)&&O(l,t,i,n,r,s,o,a),t=i;else if(2===e.kind){let l=0;if(a){let t=a.get(e.openingBracket.text);void 0===t&&(t=0),l=t,t++,a.set(e.openingBracket.text,t)}{const a=e.openingBracket;if(i=(0,S.QB)(t,a.length),(0,S.vr)(t,r)&&(0,S.o0)(i,n)){const n=(0,S.Qx)(t,i);s.push(new b(n,o,l,!e.closingBracket))}t=i}if(e.child){const l=e.child;i=(0,S.QB)(t,l.length),(0,S.vr)(t,r)&&(0,S.o0)(i,n)&&O(l,t,i,n,r,s,o+1,a),t=i}if(e.closingBracket){const a=e.closingBracket;if(i=(0,S.QB)(t,a.length),(0,S.vr)(t,r)&&(0,S.o0)(i,n)){const e=(0,S.Qx)(t,i);s.push(new b(e,o,l,!1))}t=i}null===a||void 0===a||a.set(e.openingBracket.text,l)}else if(3===e.kind){const e=(0,S.Qx)(t,i);s.push(new b(e,o-1,0,!0))}else if(1===e.kind){const e=(0,S.Qx)(t,i);s.push(new b(e,o-1,0,!1))}}class M{constructor(e,t,i){this.result=e,this.includeMinIndentation=t,this.textModel=i}}function B(e,t,i,n,r,s,o,a){var l;if(!(o>200))if(2===e.kind){let h=0;if(a){let t=a.get(e.openingBracket.text);void 0===t&&(t=0),h=t,t++,a.set(e.openingBracket.text,t)}const c=(0,S.QB)(t,e.openingBracket.length);let u=-1;if(s.includeMinIndentation&&(u=e.computeMinIndentation(t,s.textModel)),s.result.push(new v((0,S.Qx)(t,i),(0,S.Qx)(t,c),e.closingBracket?(0,S.Qx)((0,S.QB)(c,(null===(l=e.child)||void 0===l?void 0:l.length)||S.Vp),i):void 0,o,h,e,u)),t=c,e.child){const l=e.child;i=(0,S.QB)(t,l.length),(0,S.vr)(t,r)&&(0,S.o0)(i,n)&&B(l,t,i,n,r,s,o+1,a)}null===a||void 0===a||a.set(e.openingBracket.text,h)}else{let i=t;for(const t of e.children){const e=i;i=(0,S.QB)(i,t.length),(0,S.vr)(e,r)&&(0,S.vr)(n,i)&&B(t,e,i,n,r,s,o,a)}}}var N=i(5670),A=i(2350);class F extends a.jG{constructor(e,t){super(),this.textModel=e,this.languageConfigurationService=t,this.bracketPairsTree=this._register(new a.HE),this.onDidChangeEmitter=new o.vl,this.onDidChange=this.onDidChangeEmitter.event,this.bracketsRequested=!1,this._register(this.languageConfigurationService.onDidChange((e=>{var t;e.languageId&&!(null===(t=this.bracketPairsTree.value)||void 0===t?void 0:t.object.didLanguageChange(e.languageId))||(this.bracketPairsTree.clear(),this.updateBracketPairsTree())})))}get canBuildAST(){return this.textModel.getValueLength()<=5e6}handleDidChangeOptions(e){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeLanguage(e){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeContent(e){var t;null===(t=this.bracketPairsTree.value)||void 0===t||t.object.handleContentChanged(e)}handleDidChangeBackgroundTokenizationState(){var e;null===(e=this.bracketPairsTree.value)||void 0===e||e.object.handleDidChangeBackgroundTokenizationState()}handleDidChangeTokens(e){var t;null===(t=this.bracketPairsTree.value)||void 0===t||t.object.handleDidChangeTokens(e)}updateBracketPairsTree(){if(this.bracketsRequested&&this.canBuildAST){if(!this.bracketPairsTree.value){const i=new a.Cm;this.bracketPairsTree.value=(e=i.add(new D(this.textModel,(e=>this.languageConfigurationService.getLanguageConfiguration(e)))),t=i,{object:e,dispose:()=>null===t||void 0===t?void 0: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){var t;return this.bracketsRequested=!0,this.updateBracketPairsTree(),(null===(t=this.bracketPairsTree.value)||void 0===t?void 0:t.object.getBracketPairsInRange(e,!1))||[]}getBracketPairsInRangeWithMinIndentation(e){var t;return this.bracketsRequested=!0,this.updateBracketPairsTree(),(null===(t=this.bracketPairsTree.value)||void 0===t?void 0:t.object.getBracketPairsInRange(e,!0))||[]}getBracketsInRange(e){var t;return this.bracketsRequested=!0,this.updateBracketPairsTree(),(null===(t=this.bracketPairsTree.value)||void 0===t?void 0:t.object.getBracketsInRange(e))||[]}findMatchingBracketUp(e,t,i){const r=this.textModel.validatePosition(t),s=this.textModel.getLanguageIdAtPosition(r.lineNumber,r.column);if(this.canBuildAST){const i=this.languageConfigurationService.getLanguageConfiguration(s).bracketsNew.getClosingBracketInfo(e);if(!i)return null;const r=(0,n.Uk)(this.getBracketPairsInRange(g.Q.fromPositions(t,t))||[],(e=>i.closes(e.openingBracketInfo)));return r?r.openingBracketRange:null}{const t=e.toLowerCase(),n=this.languageConfigurationService.getLanguageConfiguration(s).brackets;if(!n)return null;const o=n.textIsBracket[t];return o?z(this._findMatchingBracketUp(o,r,R(i))):null}}matchBracket(e,t){if(this.canBuildAST){const t=(0,n.Jw)(this.getBracketPairsInRange(g.Q.fromPositions(e,e)).filter((t=>void 0!==t.closingBracketRange&&(t.openingBracketRange.containsPosition(e)||t.closingBracketRange.containsPosition(e)))),(0,n.VE)((t=>t.openingBracketRange.containsPosition(e)?t.openingBracketRange:t.closingBracketRange),g.Q.compareRangesUsingStarts));return t?[t.openingBracketRange,t.closingBracketRange]:null}{const i=R(t);return this._matchBracket(this.textModel.validatePosition(e),i)}}_establishBracketSearchOffsets(e,t,i,n){const r=t.getCount(),s=t.getLanguageId(n);let o=Math.max(0,e.column-1-i.maxBracketLength);for(let l=n-1;l>=0;l--){const e=t.getEndOffset(l);if(e<=o)break;if((0,N.Yo)(t.getStandardTokenType(l))||t.getLanguageId(l)!==s){o=e;break}}let a=Math.min(t.getLineContent().length,e.column-1+i.maxBracketLength);for(let l=n+1;l<r;l++){const e=t.getStartOffset(l);if(e>=a)break;if((0,N.Yo)(t.getStandardTokenType(l))||t.getLanguageId(l)!==s){a=e;break}}return{searchStartOffset:o,searchEndOffset:a}}_matchBracket(e,t){const i=e.lineNumber,n=this.textModel.tokenization.getLineTokens(i),r=this.textModel.getLineContent(i),s=n.findTokenIndexAtOffset(e.column-1);if(s<0)return null;const o=this.languageConfigurationService.getLanguageConfiguration(n.getLanguageId(s)).brackets;if(o&&!(0,N.Yo)(n.getStandardTokenType(s))){let{searchStartOffset:a,searchEndOffset:l}=this._establishBracketSearchOffsets(e,n,o,s),h=null;for(;;){const n=A.Fu.findNextBracketInRange(o.forwardRegex,i,r,a,l);if(!n)break;if(n.startColumn<=e.column&&e.column<=n.endColumn){const e=r.substring(n.startColumn-1,n.endColumn-1).toLowerCase(),i=this._matchFoundBracket(n,o.textIsBracket[e],o.textIsOpenBracket[e],t);if(i){if(i instanceof P)return null;h=i}}a=n.endColumn-1}if(h)return h}if(s>0&&n.getStartOffset(s)===e.column-1){const o=s-1,a=this.languageConfigurationService.getLanguageConfiguration(n.getLanguageId(o)).brackets;if(a&&!(0,N.Yo)(n.getStandardTokenType(o))){const{searchStartOffset:s,searchEndOffset:l}=this._establishBracketSearchOffsets(e,n,a,o),h=A.Fu.findPrevBracketInRange(a.reversedRegex,i,r,s,l);if(h&&h.startColumn<=e.column&&e.column<=h.endColumn){const e=r.substring(h.startColumn-1,h.endColumn-1).toLowerCase(),i=this._matchFoundBracket(h,a.textIsBracket[e],a.textIsOpenBracket[e],t);if(i)return i instanceof P?null:i}}}return null}_matchFoundBracket(e,t,i,n){if(!t)return null;const r=i?this._findMatchingBracketDown(t,e.getEndPosition(),n):this._findMatchingBracketUp(t,e.getStartPosition(),n);return r?r instanceof P?r:[e,r]:null}_findMatchingBracketUp(e,t,i){const n=e.languageId,r=e.reversedRegex;let s=-1,o=0;const a=(t,n,a,l)=>{for(;;){if(i&&++o%100===0&&!i())return P.INSTANCE;const h=A.Fu.findPrevBracketInRange(r,t,n,a,l);if(!h)break;const c=n.substring(h.startColumn-1,h.endColumn-1).toLowerCase();if(e.isOpen(c)?s++:e.isClose(c)&&s--,0===s)return h;l=h.startColumn-1}return null};for(let l=t.lineNumber;l>=1;l--){const e=this.textModel.tokenization.getLineTokens(l),i=e.getCount(),r=this.textModel.getLineContent(l);let s=i-1,o=r.length,h=r.length;l===t.lineNumber&&(s=e.findTokenIndexAtOffset(t.column-1),o=t.column-1,h=t.column-1);let c=!0;for(;s>=0;s--){const t=e.getLanguageId(s)===n&&!(0,N.Yo)(e.getStandardTokenType(s));if(t)c?o=e.getStartOffset(s):(o=e.getStartOffset(s),h=e.getEndOffset(s));else if(c&&o!==h){const e=a(l,r,o,h);if(e)return e}c=t}if(c&&o!==h){const e=a(l,r,o,h);if(e)return e}}return null}_findMatchingBracketDown(e,t,i){const n=e.languageId,r=e.forwardRegex;let s=1,o=0;const a=(t,n,a,l)=>{for(;;){if(i&&++o%100===0&&!i())return P.INSTANCE;const h=A.Fu.findNextBracketInRange(r,t,n,a,l);if(!h)break;const c=n.substring(h.startColumn-1,h.endColumn-1).toLowerCase();if(e.isOpen(c)?s++:e.isClose(c)&&s--,0===s)return h;a=h.endColumn-1}return null},l=this.textModel.getLineCount();for(let h=t.lineNumber;h<=l;h++){const e=this.textModel.tokenization.getLineTokens(h),i=e.getCount(),r=this.textModel.getLineContent(h);let s=0,o=0,l=0;h===t.lineNumber&&(s=e.findTokenIndexAtOffset(t.column-1),o=t.column-1,l=t.column-1);let c=!0;for(;s<i;s++){const t=e.getLanguageId(s)===n&&!(0,N.Yo)(e.getStandardTokenType(s));if(t)c||(o=e.getStartOffset(s)),l=e.getEndOffset(s);else if(c&&o!==l){const e=a(h,r,o,l);if(e)return e}c=t}if(c&&o!==l){const e=a(h,r,o,l);if(e)return e}}return null}findPrevBracket(e){var t;const i=this.textModel.validatePosition(e);if(this.canBuildAST)return this.bracketsRequested=!0,this.updateBracketPairsTree(),(null===(t=this.bracketPairsTree.value)||void 0===t?void 0:t.object.getFirstBracketBefore(i))||null;let n=null,r=null,s=null;for(let o=i.lineNumber;o>=1;o--){const e=this.textModel.tokenization.getLineTokens(o),t=e.getCount(),a=this.textModel.getLineContent(o);let l=t-1,h=a.length,c=a.length;if(o===i.lineNumber){l=e.findTokenIndexAtOffset(i.column-1),h=i.column-1,c=i.column-1;const t=e.getLanguageId(l);n!==t&&(n=t,r=this.languageConfigurationService.getLanguageConfiguration(n).brackets,s=this.languageConfigurationService.getLanguageConfiguration(n).bracketsNew)}let u=!0;for(;l>=0;l--){const t=e.getLanguageId(l);if(n!==t){if(r&&s&&u&&h!==c){const e=A.Fu.findPrevBracketInRange(r.reversedRegex,o,a,h,c);if(e)return this._toFoundBracket(s,e);u=!1}n=t,r=this.languageConfigurationService.getLanguageConfiguration(n).brackets,s=this.languageConfigurationService.getLanguageConfiguration(n).bracketsNew}const i=!!r&&!(0,N.Yo)(e.getStandardTokenType(l));if(i)u?h=e.getStartOffset(l):(h=e.getStartOffset(l),c=e.getEndOffset(l));else if(s&&r&&u&&h!==c){const e=A.Fu.findPrevBracketInRange(r.reversedRegex,o,a,h,c);if(e)return this._toFoundBracket(s,e)}u=i}if(s&&r&&u&&h!==c){const e=A.Fu.findPrevBracketInRange(r.reversedRegex,o,a,h,c);if(e)return this._toFoundBracket(s,e)}}return null}findNextBracket(e){var t;const i=this.textModel.validatePosition(e);if(this.canBuildAST)return this.bracketsRequested=!0,this.updateBracketPairsTree(),(null===(t=this.bracketPairsTree.value)||void 0===t?void 0:t.object.getFirstBracketAfter(i))||null;const n=this.textModel.getLineCount();let r=null,s=null,o=null;for(let a=i.lineNumber;a<=n;a++){const e=this.textModel.tokenization.getLineTokens(a),t=e.getCount(),n=this.textModel.getLineContent(a);let l=0,h=0,c=0;if(a===i.lineNumber){l=e.findTokenIndexAtOffset(i.column-1),h=i.column-1,c=i.column-1;const t=e.getLanguageId(l);r!==t&&(r=t,s=this.languageConfigurationService.getLanguageConfiguration(r).brackets,o=this.languageConfigurationService.getLanguageConfiguration(r).bracketsNew)}let u=!0;for(;l<t;l++){const t=e.getLanguageId(l);if(r!==t){if(o&&s&&u&&h!==c){const e=A.Fu.findNextBracketInRange(s.forwardRegex,a,n,h,c);if(e)return this._toFoundBracket(o,e);u=!1}r=t,s=this.languageConfigurationService.getLanguageConfiguration(r).brackets,o=this.languageConfigurationService.getLanguageConfiguration(r).bracketsNew}const i=!!s&&!(0,N.Yo)(e.getStandardTokenType(l));if(i)u||(h=e.getStartOffset(l)),c=e.getEndOffset(l);else if(o&&s&&u&&h!==c){const e=A.Fu.findNextBracketInRange(s.forwardRegex,a,n,h,c);if(e)return this._toFoundBracket(o,e)}u=i}if(o&&s&&u&&h!==c){const e=A.Fu.findNextBracketInRange(s.forwardRegex,a,n,h,c);if(e)return this._toFoundBracket(o,e)}}return null}findEnclosingBrackets(e,t){const i=this.textModel.validatePosition(e);if(this.canBuildAST){const e=g.Q.fromPositions(i),t=(0,n.Uk)(this.getBracketPairsInRange(g.Q.fromPositions(i,i)),(t=>void 0!==t.closingBracketRange&&t.range.strictContainsRange(e)));return t?[t.openingBracketRange,t.closingBracketRange]:null}const r=R(t),s=this.textModel.getLineCount(),o=new Map;let a=[];const l=(e,t)=>{if(!o.has(e)){const i=[];for(let e=0,n=t?t.brackets.length:0;e<n;e++)i[e]=0;o.set(e,i)}a=o.get(e)};let h=0;const c=(e,t,i,n,s)=>{for(;;){if(r&&++h%100===0&&!r())return P.INSTANCE;const o=A.Fu.findNextBracketInRange(e.forwardRegex,t,i,n,s);if(!o)break;const l=i.substring(o.startColumn-1,o.endColumn-1).toLowerCase(),c=e.textIsBracket[l];if(c&&(c.isOpen(l)?a[c.index]++:c.isClose(l)&&a[c.index]--,-1===a[c.index]))return this._matchFoundBracket(o,c,!1,r);n=o.endColumn-1}return null};let u=null,d=null;for(let n=i.lineNumber;n<=s;n++){const e=this.textModel.tokenization.getLineTokens(n),t=e.getCount(),r=this.textModel.getLineContent(n);let s=0,o=0,a=0;if(n===i.lineNumber){s=e.findTokenIndexAtOffset(i.column-1),o=i.column-1,a=i.column-1;const t=e.getLanguageId(s);u!==t&&(u=t,d=this.languageConfigurationService.getLanguageConfiguration(u).brackets,l(u,d))}let h=!0;for(;s<t;s++){const t=e.getLanguageId(s);if(u!==t){if(d&&h&&o!==a){const e=c(d,n,r,o,a);if(e)return z(e);h=!1}u=t,d=this.languageConfigurationService.getLanguageConfiguration(u).brackets,l(u,d)}const i=!!d&&!(0,N.Yo)(e.getStandardTokenType(s));if(i)h||(o=e.getStartOffset(s)),a=e.getEndOffset(s);else if(d&&h&&o!==a){const e=c(d,n,r,o,a);if(e)return z(e)}h=i}if(d&&h&&o!==a){const e=c(d,n,r,o,a);if(e)return z(e)}}return null}_toFoundBracket(e,t){if(!t)return null;let i=this.textModel.getValueInRange(t);i=i.toLowerCase();const n=e.getBracketInfo(i);return n?{range:t,bracketInfo:n}:null}}function R(e){if("undefined"===typeof e)return()=>!0;{const t=Date.now();return()=>Date.now()-t<=e}}class P{constructor(){this._searchCanceledBrand=void 0}}function z(e){return e instanceof P?null:e}P.INSTANCE=new P;var W=i(22041),V=i(16974);class H extends a.jG{constructor(e){super(),this.textModel=e,this.colorProvider=new U,this.onDidChangeEmitter=new o.vl,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){if(void 0===t)return[];if(!this.colorizationOptions.enabled)return[];const n=new Array,r=this.textModel.bracketPairs.getBracketsInRange(e);for(const s of r)n.push({id:`bracket${s.range.toString()}-${s.nestingLevel}`,options:{description:"BracketPairColorization",inlineClassName:this.colorProvider.getInlineClassName(s,this.colorizationOptions.independentColorPoolPerBracketType)},ownerId:0,range:s.range});return n}getAllDecorations(e,t){return void 0===e?[]:this.colorizationOptions.enabled?this.getDecorationsInRange(new g.Q(1,1,this.textModel.getLineCount(),1),e,t):[]}}class U{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}}(0,V.zy)(((e,t)=>{const i=[W.sN,W.lQ,W.ss,W.l5,W.sH,W.zp],n=new U;t.addRule(`.monaco-editor .${n.unexpectedClosingBracketClassName} { color: ${e.getColor(W.s7)}; }`);const r=i.map((t=>e.getColor(t))).filter((e=>!!e)).filter((e=>!e.isTransparent()));for(let s=0;s<30;s++){const e=r[s%r.length];t.addRule(`.monaco-editor .${n.getInlineClassNameOfLevel(s)} { color: ${e}; }`)}}));var j=i(99474),K=i(5848);class q{constructor(){this.spacesDiff=0,this.looksLikeAlignment=!1}}function G(e,t,i,n,r){let s;for(r.spacesDiff=0,r.looksLikeAlignment=!1,s=0;s<t&&s<n;s++){if(e.charCodeAt(s)!==i.charCodeAt(s))break}let o=0,a=0;for(let d=s;d<t;d++){32===e.charCodeAt(d)?o++:a++}let l=0,h=0;for(let d=s;d<n;d++){32===i.charCodeAt(d)?l++:h++}if(o>0&&a>0)return;if(l>0&&h>0)return;const c=Math.abs(a-h),u=Math.abs(o-l);if(0===c)return r.spacesDiff=u,void(u>0&&0<=l-1&&l-1<e.length&&l<i.length&&32!==i.charCodeAt(l)&&32===e.charCodeAt(l-1)&&44===e.charCodeAt(e.length-1)&&(r.looksLikeAlignment=!0));u%c!==0||(r.spacesDiff=u/c)}function $(e,t,i){const n=Math.min(e.getLineCount(),1e4);let r=0,s=0,o="",a=0;const l=[2,4,6,8,3,5,7],h=[0,0,0,0,0,0,0,0,0],c=new q;for(let g=1;g<=n;g++){const n=e.getLineLength(g),l=e.getLineContent(g),u=n<=65536;let d=!1,f=0,p=0,m=0;for(let t=0,i=n;t<i;t++){const i=u?l.charCodeAt(t):e.getLineCharCode(g,t);if(9===i)m++;else{if(32!==i){d=!0,f=t;break}p++}}if(!d)continue;if(m>0?r++:p>1&&s++,G(o,a,l,f,c),c.looksLikeAlignment&&(!i||t!==c.spacesDiff))continue;const k=c.spacesDiff;k<=8&&h[k]++,o=l,a=f}let u=i;r!==s&&(u=r<s);let d=t;if(u){let e=u?0:.1*n;l.forEach((t=>{const i=h[t];i>e&&(e=i,d=t)})),4===d&&h[4]>0&&h[2]>0&&h[2]>=h[4]/2&&(d=2)}return{insertSpaces:u,tabSize:d}}function Q(e){return(1&e.metadata)>>>0}function Y(e,t){e.metadata=254&e.metadata|t}function X(e){return(2&e.metadata)>>>1===1}function Z(e,t){e.metadata=253&e.metadata|(t?1:0)<<1}function J(e){return(4&e.metadata)>>>2===1}function ee(e,t){e.metadata=251&e.metadata|(t?1:0)<<2}function te(e,t){e.metadata=231&e.metadata|t<<3}function ie(e,t){e.metadata=223&e.metadata|(t?1:0)<<5}class ne{constructor(e,t,i){this.metadata=0,this.parent=this,this.left=this,this.right=this,Y(this,1),this.start=t,this.end=i,this.delta=0,this.maxEnd=i,this.id=e,this.ownerId=0,this.options=null,ee(this,!1),te(this,1),ie(this,!1),this.cachedVersionId=0,this.cachedAbsoluteStart=t,this.cachedAbsoluteEnd=i,this.range=null,Z(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;ee(this,"squiggly-error"===t||"squiggly-warning"===t||"squiggly-info"===t),te(this,this.options.stickiness),ie(this,this.options.collapseOnReplaceEdit)}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 re=new ne(null,0,0);re.parent=re,re.left=re,re.right=re,Y(re,0);class se{constructor(){this.root=re,this.requestNormalizeDelta=!1}intervalSearch(e,t,i,n,r){return this.root===re?[]:function(e,t,i,n,r,s){let o=e.root,a=0,l=0,h=0,c=0;const u=[];let d=0;for(;o!==re;)if(X(o))Z(o.left,!1),Z(o.right,!1),o===o.parent.right&&(a-=o.parent.delta),o=o.parent;else{if(!X(o.left)){if(l=a+o.maxEnd,l<t){Z(o,!0);continue}if(o.left!==re){o=o.left;continue}}if(h=a+o.start,h>i)Z(o,!0);else{if(c=a+o.end,c>=t){o.setCachedOffsets(h,c,s);let e=!0;n&&o.ownerId&&o.ownerId!==n&&(e=!1),r&&J(o)&&(e=!1),e&&(u[d++]=o)}Z(o,!0),o.right===re||X(o.right)||(a+=o.delta,o=o.right)}}return Z(e.root,!1),u}(this,e,t,i,n,r)}search(e,t,i){return this.root===re?[]:function(e,t,i,n){let r=e.root,s=0,o=0,a=0;const l=[];let h=0;for(;r!==re;){if(X(r)){Z(r.left,!1),Z(r.right,!1),r===r.parent.right&&(s-=r.parent.delta),r=r.parent;continue}if(r.left!==re&&!X(r.left)){r=r.left;continue}o=s+r.start,a=s+r.end,r.setCachedOffsets(o,a,n);let e=!0;t&&r.ownerId&&r.ownerId!==t&&(e=!1),i&&J(r)&&(e=!1),e&&(l[h++]=r),Z(r,!0),r.right===re||X(r.right)||(s+=r.delta,r=r.right)}return Z(e.root,!1),l}(this,e,t,i)}collectNodesFromOwner(e){return function(e,t){let i=e.root;const n=[];let r=0;for(;i!==re;)X(i)?(Z(i.left,!1),Z(i.right,!1),i=i.parent):i.left===re||X(i.left)?(i.ownerId===t&&(n[r++]=i),Z(i,!0),i.right===re||X(i.right)||(i=i.right)):i=i.left;return Z(e.root,!1),n}(this,e)}collectNodesPostOrder(){return function(e){let t=e.root;const i=[];let n=0;for(;t!==re;)X(t)?(Z(t.left,!1),Z(t.right,!1),t=t.parent):t.left===re||X(t.left)?t.right===re||X(t.right)?(i[n++]=t,Z(t,!0)):t=t.right:t=t.left;return Z(e.root,!1),i}(this)}insert(e){le(this,e),this._normalizeDeltaIfNecessary()}delete(e){he(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 r=i.start+n,s=i.end+n;i.setCachedOffsets(r,s,t)}acceptReplace(e,t,i,n){const r=function(e,t,i){let n=e.root,r=0,s=0,o=0,a=0;const l=[];let h=0;for(;n!==re;)if(X(n))Z(n.left,!1),Z(n.right,!1),n===n.parent.right&&(r-=n.parent.delta),n=n.parent;else{if(!X(n.left)){if(s=r+n.maxEnd,s<t){Z(n,!0);continue}if(n.left!==re){n=n.left;continue}}o=r+n.start,o>i?Z(n,!0):(a=r+n.end,a>=t&&(n.setCachedOffsets(o,a,0),l[h++]=n),Z(n,!0),n.right===re||X(n.right)||(r+=n.delta,n=n.right))}return Z(e.root,!1),l}(this,e,e+t);for(let s=0,o=r.length;s<o;s++){he(this,r[s])}this._normalizeDeltaIfNecessary(),function(e,t,i,n){let r=e.root,s=0,o=0,a=0;const l=n-(i-t);for(;r!==re;)if(X(r))Z(r.left,!1),Z(r.right,!1),r===r.parent.right&&(s-=r.parent.delta),fe(r),r=r.parent;else{if(!X(r.left)){if(o=s+r.maxEnd,o<t){Z(r,!0);continue}if(r.left!==re){r=r.left;continue}}a=s+r.start,a>i?(r.start+=l,r.end+=l,r.delta+=l,(r.delta<-1073741824||r.delta>1073741824)&&(e.requestNormalizeDelta=!0),Z(r,!0)):(Z(r,!0),r.right===re||X(r.right)||(s+=r.delta,r=r.right))}Z(e.root,!1)}(this,e,e+t,i),this._normalizeDeltaIfNecessary();for(let s=0,o=r.length;s<o;s++){const o=r[s];o.start=o.cachedAbsoluteStart,o.end=o.cachedAbsoluteEnd,ae(o,e,e+t,i,n),o.maxEnd=o.end,le(this,o)}this._normalizeDeltaIfNecessary()}_normalizeDeltaIfNecessary(){this.requestNormalizeDelta&&(this.requestNormalizeDelta=!1,function(e){let t=e.root,i=0;for(;t!==re;)t.left===re||X(t.left)?t.right===re||X(t.right)?(t.start=i+t.start,t.end=i+t.end,t.delta=0,fe(t),Z(t,!0),Z(t.left,!1),Z(t.right,!1),t===t.parent.right&&(i-=t.parent.delta),t=t.parent):(i+=t.delta,t=t.right):t=t.left;Z(e.root,!1)}(this))}}function oe(e,t,i,n){return e<i||!(e>i)&&(1!==n&&(2===n||t))}function ae(e,t,i,n,r){const s=function(e){return(24&e.metadata)>>>3}(e),o=0===s||2===s,a=1===s||2===s,l=i-t,h=n,c=Math.min(l,h),u=e.start;let d=!1;const g=e.end;let f=!1;t<=u&&g<=i&&function(e){return(32&e.metadata)>>>5===1}(e)&&(e.start=t,d=!0,e.end=t,f=!0);{const e=r?1:l>0?2:0;!d&&oe(u,o,t,e)&&(d=!0),!f&&oe(g,a,t,e)&&(f=!0)}if(c>0&&!r){const e=l>h?2:0;!d&&oe(u,o,t+c,e)&&(d=!0),!f&&oe(g,a,t+c,e)&&(f=!0)}{const n=r?1:0;!d&&oe(u,o,i,n)&&(e.start=t+h,d=!0),!f&&oe(g,a,i,n)&&(e.end=t+h,f=!0)}const p=h-l;d||(e.start=Math.max(0,u+p)),f||(e.end=Math.max(0,g+p)),e.start>e.end&&(e.end=e.start)}function le(e,t){if(e.root===re)return t.parent=re,t.left=re,t.right=re,Y(t,0),e.root=t,e.root;!function(e,t){let i=0,n=e.root;const r=t.start,s=t.end;for(;;){if(me(r,s,n.start+i,n.end+i)<0){if(n.left===re){t.start-=i,t.end-=i,t.maxEnd-=i,n.left=t;break}n=n.left}else{if(n.right===re){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}}t.parent=n,t.left=re,t.right=re,Y(t,1)}(e,t),pe(t.parent);let i=t;for(;i!==e.root&&1===Q(i.parent);)if(i.parent===i.parent.parent.left){const t=i.parent.parent.right;1===Q(t)?(Y(i.parent,0),Y(t,0),Y(i.parent.parent,1),i=i.parent.parent):(i===i.parent.right&&(i=i.parent,ue(e,i)),Y(i.parent,0),Y(i.parent.parent,1),de(e,i.parent.parent))}else{const t=i.parent.parent.left;1===Q(t)?(Y(i.parent,0),Y(t,0),Y(i.parent.parent,1),i=i.parent.parent):(i===i.parent.left&&(i=i.parent,de(e,i)),Y(i.parent,0),Y(i.parent.parent,1),ue(e,i.parent.parent))}return Y(e.root,0),t}function he(e,t){let i,n;if(t.left===re?(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===re?(i=t.left,n=t):(n=function(e){for(;e.left!==re;)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,Y(i,0),t.detach(),ce(),fe(i),void(e.root.parent=re);const r=1===Q(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,Y(n,Q(t)),t===e.root?e.root=n:t===t.parent.left?t.parent.left=n:t.parent.right=n,n.left!==re&&(n.left.parent=n),n.right!==re&&(n.right.parent=n)),t.detach(),r)return pe(i.parent),n!==t&&(pe(n),pe(n.parent)),void ce();let s;for(pe(i),pe(i.parent),n!==t&&(pe(n),pe(n.parent));i!==e.root&&0===Q(i);)i===i.parent.left?(s=i.parent.right,1===Q(s)&&(Y(s,0),Y(i.parent,1),ue(e,i.parent),s=i.parent.right),0===Q(s.left)&&0===Q(s.right)?(Y(s,1),i=i.parent):(0===Q(s.right)&&(Y(s.left,0),Y(s,1),de(e,s),s=i.parent.right),Y(s,Q(i.parent)),Y(i.parent,0),Y(s.right,0),ue(e,i.parent),i=e.root)):(s=i.parent.left,1===Q(s)&&(Y(s,0),Y(i.parent,1),de(e,i.parent),s=i.parent.left),0===Q(s.left)&&0===Q(s.right)?(Y(s,1),i=i.parent):(0===Q(s.left)&&(Y(s.right,0),Y(s,1),ue(e,s),s=i.parent.left),Y(s,Q(i.parent)),Y(i.parent,0),Y(s.left,0),de(e,i.parent),i=e.root));Y(i,0),ce()}function ce(){re.parent=re,re.delta=0,re.start=0,re.end=0}function ue(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!==re&&(i.left.parent=t),i.parent=t.parent,t.parent===re?e.root=i:t===t.parent.left?t.parent.left=i:t.parent.right=i,i.left=t,t.parent=i,fe(t),fe(i)}function de(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!==re&&(i.right.parent=t),i.parent=t.parent,t.parent===re?e.root=i:t===t.parent.right?t.parent.right=i:t.parent.left=i,i.right=t,t.parent=i,fe(t),fe(i)}function ge(e){let t=e.end;if(e.left!==re){const i=e.left.maxEnd;i>t&&(t=i)}if(e.right!==re){const i=e.right.maxEnd+e.delta;i>t&&(t=i)}return t}function fe(e){e.maxEnd=ge(e)}function pe(e){for(;e!==re;){const t=ge(e);if(e.maxEnd===t)return;e.maxEnd=t,e=e.parent}}function me(e,t,i,n){return e===i?t-n:e-i}class ke{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!==_e)return be(this.right);let e=this;for(;e.parent!==_e&&e.parent.left!==e;)e=e.parent;return e.parent===_e?_e:e.parent}prev(){if(this.left!==_e)return Ce(this.left);let e=this;for(;e.parent!==_e&&e.parent.right!==e;)e=e.parent;return e.parent===_e?_e:e.parent}detach(){this.parent=null,this.left=null,this.right=null}}const _e=new ke(null,0);function be(e){for(;e.left!==_e;)e=e.left;return e}function Ce(e){for(;e.right!==_e;)e=e.right;return e}function ve(e){return e===_e?0:e.size_left+e.piece.length+ve(e.right)}function ye(e){return e===_e?0:e.lf_left+e.piece.lineFeedCnt+ye(e.right)}function we(){_e.parent=_e}function Se(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!==_e&&(i.left.parent=t),i.parent=t.parent,t.parent===_e?e.root=i:t.parent.left===t?t.parent.left=i:t.parent.right=i,i.left=t,t.parent=i}function Le(e,t){const i=t.left;t.left=i.right,i.right!==_e&&(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===_e?e.root=i:t===t.parent.right?t.parent.right=i:t.parent.left=i,i.right=t,t.parent=i}function xe(e,t){let i,n;if(t.left===_e?(n=t,i=n.right):t.right===_e?(n=t,i=n.left):(n=be(t.right),i=n.right),n===e.root)return e.root=i,i.color=0,t.detach(),we(),void(e.root.parent=_e);const r=1===n.color;if(n===n.parent.left?n.parent.left=i:n.parent.right=i,n===t?(i.parent=n.parent,Te(e,i)):(n.parent===t?i.parent=n:i.parent=n.parent,Te(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!==_e&&(n.left.parent=n),n.right!==_e&&(n.right.parent=n),n.size_left=t.size_left,n.lf_left=t.lf_left,Te(e,n)),t.detach(),i.parent.left===i){const t=ve(i),n=ye(i);if(t!==i.parent.size_left||n!==i.parent.lf_left){const r=t-i.parent.size_left,s=n-i.parent.lf_left;i.parent.size_left=t,i.parent.lf_left=n,De(e,i.parent,r,s)}}if(Te(e,i.parent),r)return void we();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,Se(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,Le(e,s),s=i.parent.right),s.color=i.parent.color,i.parent.color=0,s.right.color=0,Se(e,i.parent),i=e.root)):(s=i.parent.left,1===s.color&&(s.color=0,i.parent.color=1,Le(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,Se(e,s),s=i.parent.left),s.color=i.parent.color,i.parent.color=0,s.left.color=0,Le(e,i.parent),i=e.root));i.color=0,we()}function Ie(e,t){for(Te(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&&Se(e,t=t.parent),t.parent.color=0,t.parent.parent.color=1,Le(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&&Le(e,t=t.parent),t.parent.color=0,t.parent.parent.color=1,Se(e,t.parent.parent))}e.root.color=0}function De(e,t,i,n){for(;t!==e.root&&t!==_e;)t.parent.left===t&&(t.parent.size_left+=i,t.parent.lf_left+=n),t=t.parent}function Te(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=ve((t=t.parent).left)-t.size_left,n=ye(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}}_e.parent=_e,_e.left=_e,_e.right=_e,_e.color=0;var Ee=i(91998);const Oe=65535;function Me(e){let t;return t=e[e.length-1]<65536?new Uint16Array(e.length):new Uint32Array(e.length),t.set(e,0),t}class Be{constructor(e,t,i,n,r){this.lineStarts=e,this.cr=t,this.lf=i,this.crlf=n,this.isBasicASCII=r}}function Ne(e,t=!0){const i=[0];let n=1;for(let r=0,s=e.length;r<s;r++){const t=e.charCodeAt(r);13===t?r+1<s&&10===e.charCodeAt(r+1)?(i[n++]=r+2,r++):i[n++]=r+1:10===t&&(i[n++]=r+1)}return t?Me(i):i}class Ae{constructor(e,t,i,n,r){this.bufferIndex=e,this.start=t,this.end=i,this.lineFeedCnt=n,this.length=r}}class Fe{constructor(e,t){this.buffer=e,this.lineStarts=t}}class Re{constructor(e,t){this._pieces=[],this._tree=e,this._BOM=t,this._index=0,e.root!==_e&&e.iterate(e.root,(e=>(e!==_e&&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 Pe{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&&i.nodeStartLineNumber+i.node.piece.lineFeedCnt>=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<i.length;n++){const r=i[n];(null===r.node.parent||r.nodeStartOffset>=e)&&(i[n]=null,t=!0)}if(t){const e=[];for(const t of i)null!==t&&e.push(t);this._cache=e}}}class ze{constructor(e,t,i){this.create(e,t,i)}create(e,t,i){this._buffers=[new Fe("",[0])],this._lastChangeBufferPos={line:0,column:0},this.root=_e,this._lineCnt=1,this._length=0,this._EOL=t,this._EOLLength=t.length,this._EOLNormalized=i;let n=null;for(let r=0,s=e.length;r<s;r++)if(e[r].buffer.length>0){e[r].lineStarts||(e[r].lineStarts=Ne(e[r].buffer));const t=new Ae(r+1,{line:0,column:0},{line:e[r].lineStarts.length-1,column:e[r].buffer.length-e[r].lineStarts[e[r].lineStarts.length-1]},e[r].lineStarts.length-1,e[r].buffer.length);this._buffers.push(e[r]),n=this.rbInsertRight(n,t)}this._searchCache=new Pe(1),this._lastVisitedLine={lineNumber:0,value:""},this.computeBufferMetadata()}normalizeEOL(e){const t=Oe,i=t-Math.floor(21845),n=2*i;let r="",s=0;const o=[];if(this.iterate(this.root,(t=>{const a=this.getNodeContent(t),l=a.length;if(s<=i||s+l<n)return r+=a,s+=l,!0;const h=r.replace(/\r\n|\r|\n/g,e);return o.push(new Fe(h,Ne(h))),r=a,s=l,!0})),s>0){const t=r.replace(/\r\n|\r|\n/g,e);o.push(new Fe(t,Ne(t)))}this.create(o,e,!0)}getEOL(){return this._EOL}setEOL(e){this._EOL=e,this._EOLLength=this._EOL.length,this.normalizeEOL(e)}createSnapshot(e){return new Re(this,e)}getOffsetAt(e,t){let i=0,n=this.root;for(;n!==_e;)if(n.left!==_e&&n.lf_left+1>=e)n=n.left;else{if(n.lf_left+n.piece.lineFeedCnt+1>=e){i+=n.size_left;return 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!==_e;)if(0!==t.size_left&&t.size_left>=e)t=t.left;else{if(t.size_left+t.piece.length>=e){const r=this.getIndexOf(t,e-t.size_left);if(i+=t.lf_left+r.index,0===r.index){const e=n-this.getOffsetAt(i+1,1);return new d.y(i+1,e+1)}return new d.y(i+1,r.remainder+1)}if(e-=t.size_left+t.piece.length,i+=t.lf_left+t.piece.lineFeedCnt,t.right===_e){const t=n-e-this.getOffsetAt(i+1,1);return new d.y(i+1,t+1)}t=t.right}return new d.y(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),r=this.getValueInRange2(i,n);return t?t===this._EOL&&this._EOLNormalized&&t===this.getEOL()&&this._EOLNormalized?r:r.replace(/\r\n|\r|\n/g,t):r}getValueInRange2(e,t){if(e.node===t.node){const i=e.node,n=this._buffers[i.piece.bufferIndex].buffer,r=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);return n.substring(r+e.remainder,r+t.remainder)}let i=e.node;const n=this._buffers[i.piece.bufferIndex].buffer,r=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);let s=n.substring(r+e.remainder,r+i.piece.length);for(i=i.next();i!==_e;){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,(r=>{if(r===_e)return!0;const s=r.piece;let o=s.length;if(0===o)return!0;const a=this._buffers[s.bufferIndex].buffer,l=this._buffers[s.bufferIndex].lineStarts,h=s.start.line,c=s.end.line;let u=l[h]+s.start.column;if(n&&(10===a.charCodeAt(u)&&(u++,o--),e[t++]=i,i="",n=!1,0===o))return!0;if(h===c)return this._EOLNormalized||13!==a.charCodeAt(u+o-1)?i+=a.substr(u,o):(n=!0,i+=a.substr(u,o-1)),!0;i+=this._EOLNormalized?a.substring(u,Math.max(u,l[h+1]-this._EOLLength)):a.substring(u,l[h+1]).replace(/(\r\n|\r|\n)$/,""),e[t++]=i;for(let n=h+1;n<c;n++)i=this._EOLNormalized?a.substring(l[n],l[n+1]-this._EOLLength):a.substring(l[n],l[n+1]).replace(/(\r\n|\r|\n)$/,""),e[t++]=i;return this._EOLNormalized||13!==a.charCodeAt(l[c]+s.end.column-1)?i=a.substr(l[c],s.end.column):(n=!0,0===s.end.column?t--:i=a.substr(l[c],s.end.column-1)),!0})),n&&(e[t++]=i,i=""),e[t++]=i,e}getLength(){return this._length}getLineCount(){return this._lineCnt}getLineContent(e){return this._lastVisitedLine.lineNumber===e||(this._lastVisitedLine.lineNumber=e,e===this._lineCnt?this._lastVisitedLine.value=this.getLineRawContent(e):this._EOLNormalized?this._lastVisitedLine.value=this.getLineRawContent(e,this._EOLLength):this._lastVisitedLine.value=this.getLineRawContent(e).replace(/(\r\n|\r|\n)$/,"")),this._lastVisitedLine.value}_getCharCode(e){if(e.remainder===e.node.piece.length){const t=e.node.next();if(!t)return 0;const i=this._buffers[t.piece.bufferIndex],n=this.offsetInBuffer(t.piece.bufferIndex,t.piece.start);return i.buffer.charCodeAt(n)}{const t=this._buffers[e.node.piece.bufferIndex],i=this.offsetInBuffer(e.node.piece.bufferIndex,e.node.piece.start)+e.remainder;return t.buffer.charCodeAt(i)}}getLineCharCode(e,t){const i=this.nodeAt2(e,t+1);return this._getCharCode(i)}getLineLength(e){if(e===this.getLineCount()){const t=this.getOffsetAt(e,1);return this.getLength()-t}return this.getOffsetAt(e+1,1)-this.getOffsetAt(e,1)-this._EOLLength}findMatchesInNode(e,t,i,n,r,s,o,a,l,h,c){const u=this._buffers[e.piece.bufferIndex],d=this.offsetInBuffer(e.piece.bufferIndex,e.piece.start),f=this.offsetInBuffer(e.piece.bufferIndex,r),p=this.offsetInBuffer(e.piece.bufferIndex,s);let m;const k={line:0,column:0};let _,b;t._wordSeparators?(_=u.buffer.substring(f,p),b=e=>e+f,t.reset(0)):(_=u.buffer,b=e=>e,t.reset(f));do{if(m=t.next(_),m){if(b(m.index)>=p)return h;this.positionInBuffer(e,b(m.index)-d,k);const t=this.getLineFeedCnt(e.piece.bufferIndex,r,k),s=k.line===r.line?k.column-r.column+n:k.column+1,o=s+m[0].length;if(c[h++]=(0,Ee.dr)(new g.Q(i+t,s,i+t,o),m,a),b(m.index)+m[0].length>=p)return h;if(h>=l)return h}}while(m);return h}findMatchesLineByLine(e,t,i,n){const r=[];let s=0;const o=new Ee.W5(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 h=this.positionInBuffer(a.node,a.remainder);const c=this.positionInBuffer(l.node,l.remainder);if(a.node===l.node)return this.findMatchesInNode(a.node,o,e.startLineNumber,e.startColumn,h,c,t,i,n,s,r),r;let u=e.startLineNumber,d=a.node;for(;d!==l.node;){const l=this.getLineFeedCnt(d.piece.bufferIndex,h,d.piece.end);if(l>=1){const a=this._buffers[d.piece.bufferIndex].lineStarts,c=this.offsetInBuffer(d.piece.bufferIndex,d.piece.start),g=a[h.line+l],f=u===e.startLineNumber?e.startColumn:1;if(s=this.findMatchesInNode(d,o,u,f,h,this.positionInBuffer(d,g-c),t,i,n,s,r),s>=n)return r;u+=l}const c=u===e.startLineNumber?e.startColumn-1:0;if(u===e.endLineNumber){const a=this.getLineContent(u).substring(c,e.endColumn-1);return s=this._findMatchesInLine(t,o,a,e.endLineNumber,c,s,r,i,n),r}if(s=this._findMatchesInLine(t,o,this.getLineContent(u).substr(c),u,c,s,r,i,n),s>=n)return r;u++,a=this.nodeAt2(u,1),d=a.node,h=this.positionInBuffer(a.node,a.remainder)}if(u===e.endLineNumber){const a=u===e.startLineNumber?e.startColumn-1:0,l=this.getLineContent(u).substring(a,e.endColumn-1);return s=this._findMatchesInLine(t,o,l,e.endLineNumber,a,s,r,i,n),r}const g=u===e.startLineNumber?e.startColumn:1;return s=this.findMatchesInNode(l.node,o,u,g,h,c,t,i,n,s,r),r}_findMatchesInLine(e,t,i,n,r,s,o,a,l){const h=e.wordSeparators;if(!a&&e.simpleSearch){const t=e.simpleSearch,a=t.length,c=i.length;let u=-a;for(;-1!==(u=i.indexOf(t,u+a));)if((!h||(0,Ee.wC)(h,i,c,u,a))&&(o[s++]=new _.Dg(new g.Q(n,u+1+r,n,u+1+a+r),null),s>=l))return s;return s}let c;t.reset(0);do{if(c=t.next(i),c&&(o[s++]=(0,Ee.dr)(new g.Q(n,c.index+1+r,n,c.index+1+c[0].length+r),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!==_e){const{node:i,remainder:n,nodeStartOffset:r}=this.nodeAt(e),s=i.piece,o=s.bufferIndex,a=this.positionInBuffer(i,n);if(0===i.piece.bufferIndex&&s.end.line===this._lastChangeBufferPos.line&&s.end.column===this._lastChangeBufferPos.column&&r+s.length===e&&t.length<Oe)return this.appendToNode(i,t),void this.computeBufferMetadata();if(r===e)this.insertContentToNodeLeft(t,i),this._searchCache.validate(e);else if(r+i.piece.length>e){const e=[];let r=new Ae(s.bufferIndex,a,s.end,this.getLineFeedCnt(s.bufferIndex,a,s.end),this.offsetInBuffer(o,s.end)-this.offsetInBuffer(o,a));if(this.shouldCheckCRLF()&&this.endWithCR(t)){if(10===this.nodeCharCodeAt(i,n)){const e={line:r.start.line+1,column:0};r=new Ae(r.bufferIndex,e,r.end,this.getLineFeedCnt(r.bufferIndex,e,r.end),r.length-1),t+="\n"}}if(this.shouldCheckCRLF()&&this.startWithLF(t)){if(13===this.nodeCharCodeAt(i,n-1)){const r=this.positionInBuffer(i,n-1);this.deleteNodeTail(i,r),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);r.length>0&&this.rbInsertRight(i,r);let h=i;for(let t=0;t<l.length;t++)h=this.rbInsertRight(h,l[t]);this.deleteNodes(e)}else this.insertContentToNodeRight(t,i)}else{const e=this.createNewPieces(t);let i=this.rbInsertLeft(null,e[0]);for(let t=1;t<e.length;t++)i=this.rbInsertRight(i,e[t])}this.computeBufferMetadata()}delete(e,t){if(this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",t<=0||this.root===_e)return;const i=this.nodeAt(e),n=this.nodeAt(e+t),r=i.node,s=n.node;if(r===s){const s=this.positionInBuffer(r,i.remainder),o=this.positionInBuffer(r,n.remainder);if(i.nodeStartOffset===e){if(t===r.piece.length){const e=r.next();return xe(this,r),this.validateCRLFWithPrevNode(e),void this.computeBufferMetadata()}return this.deleteNodeHead(r,o),this._searchCache.validate(e),this.validateCRLFWithPrevNode(r),void this.computeBufferMetadata()}return i.nodeStartOffset+r.piece.length===e+t?(this.deleteNodeTail(r,s),this.validateCRLFWithNextNode(r),void this.computeBufferMetadata()):(this.shrinkNode(r,s,o),void this.computeBufferMetadata())}const o=[],a=this.positionInBuffer(r,i.remainder);this.deleteNodeTail(r,a),this._searchCache.validate(e),0===r.piece.length&&o.push(r);const l=this.positionInBuffer(s,n.remainder);this.deleteNodeHead(s,l),0===s.piece.length&&o.push(s);for(let c=r.next();c!==_e&&c!==s;c=c.next())o.push(c);const h=0===r.piece.length?r.prev():r;this.deleteNodes(o),this.validateCRLFWithNextNode(h),this.computeBufferMetadata()}insertContentToNodeLeft(e,t){const i=[];if(this.shouldCheckCRLF()&&this.endWithCR(e)&&this.startWithLF(t)){const n=t.piece,r={line:n.start.line+1,column:0},s=new Ae(n.bufferIndex,r,n.end,this.getLineFeedCnt(n.bufferIndex,r,n.end),n.length-1);t.piece=s,e+="\n",De(this,t,-1,-1),0===t.piece.length&&i.push(t)}const n=this.createNewPieces(e);let r=this.rbInsertLeft(t,n[n.length-1]);for(let s=n.length-2;s>=0;s--)r=this.rbInsertLeft(r,n[s]);this.validateCRLFWithPrevNode(r),this.deleteNodes(i)}insertContentToNodeRight(e,t){this.adjustCarriageReturnFromNext(e,t)&&(e+="\n");const i=this.createNewPieces(e),n=this.rbInsertRight(t,i[0]);let r=n;for(let s=1;s<i.length;s++)r=this.rbInsertRight(r,i[s]);this.validateCRLFWithPrevNode(n)}positionInBuffer(e,t,i){const n=e.piece,r=e.piece.bufferIndex,s=this._buffers[r].lineStarts,o=s[n.start.line]+n.start.column+t;let a=n.start.line,l=n.end.line,h=0,c=0,u=0;for(;a<=l&&(h=a+(l-a)/2|0,u=s[h],h!==l);)if(c=s[h+1],o<u)l=h-1;else{if(!(o>=c))break;a=h+1}return i?(i.line=h,i.column=o-u,null):{line:h,column:o-u}}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 r=n[i.line+1],s=n[i.line]+i.column;if(r>s+1)return i.line-t.line;const o=s-1;return 13===this._buffers[e].buffer.charCodeAt(o)?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;t<e.length;t++)xe(this,e[t])}createNewPieces(e){if(e.length>Oe){const t=[];for(;e.length>Oe;){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,Oe),e=e.substring(Oe));const r=Ne(n);t.push(new Ae(this._buffers.length,{line:0,column:0},{line:r.length-1,column:n.length-r[r.length-1]},r.length-1,n.length)),this._buffers.push(new Fe(n,r))}const i=Ne(e);return t.push(new Ae(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 Fe(e,i)),t}let t=this._buffers[0].buffer.length;const i=Ne(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<i.length;e++)i[e]+=t+1;this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(i.slice(1)),this._buffers[0].buffer+="_"+e,t+=1}else{if(0!==t)for(let e=0;e<i.length;e++)i[e]+=t;this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(i.slice(1)),this._buffers[0].buffer+=e}const r=this._buffers[0].buffer.length,s=this._buffers[0].lineStarts.length-1,o={line:s,column:r-this._buffers[0].lineStarts[s]},a=new Ae(0,n,o,this.getLineFeedCnt(0,n,o),r-t);return this._lastChangeBufferPos=o,[a]}getLineRawContent(e,t=0){let i=this.root,n="";const r=this._searchCache.get2(e);if(r){i=r.node;const s=this.getAccumulatedValue(i,e-r.nodeStartLineNumber-1),o=this._buffers[i.piece.bufferIndex].buffer,a=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);if(r.nodeStartLineNumber+i.piece.lineFeedCnt!==e){const n=this.getAccumulatedValue(i,e-r.nodeStartLineNumber);return o.substring(a+s,a+n-t)}n=o.substring(a+s,a+i.piece.length)}else{let r=0;const s=e;for(;i!==_e;)if(i.left!==_e&&i.lf_left>=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),o=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 r+=i.size_left,this._searchCache.set({node:i,nodeStartOffset:r,nodeStartLineNumber:s-(e-1-i.lf_left)}),a.substring(l+n,l+o-t)}if(i.lf_left+i.piece.lineFeedCnt===e-1){const t=this.getAccumulatedValue(i,e-i.lf_left-2),r=this._buffers[i.piece.bufferIndex].buffer,s=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);n=r.substring(s+t,s+i.piece.length);break}e-=i.lf_left+i.piece.lineFeedCnt,r+=i.size_left+i.piece.length,i=i.right}}for(i=i.next();i!==_e;){const e=this._buffers[i.piece.bufferIndex].buffer;if(i.piece.lineFeedCnt>0){const r=this.getAccumulatedValue(i,0),s=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);return n+=e.substring(s,s+r-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!==_e;)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),r=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!==r)return{index:t,remainder:0}}return{index:r,remainder:n.column}}getAccumulatedValue(e,t){if(t<0)return 0;const i=e.piece,n=this._buffers[i.bufferIndex].lineStarts,r=i.start.line+t+1;return r>i.end.line?n[i.end.line]+i.end.column-n[i.start.line]-i.start.column:n[r]-n[i.start.line]-i.start.column}deleteNodeTail(e,t){const i=e.piece,n=i.lineFeedCnt,r=this.offsetInBuffer(i.bufferIndex,i.end),s=t,o=this.offsetInBuffer(i.bufferIndex,s),a=this.getLineFeedCnt(i.bufferIndex,i.start,s),l=a-n,h=o-r,c=i.length+h;e.piece=new Ae(i.bufferIndex,i.start,s,a,c),De(this,e,h,l)}deleteNodeHead(e,t){const i=e.piece,n=i.lineFeedCnt,r=this.offsetInBuffer(i.bufferIndex,i.start),s=t,o=this.getLineFeedCnt(i.bufferIndex,s,i.end),a=o-n,l=r-this.offsetInBuffer(i.bufferIndex,s),h=i.length+l;e.piece=new Ae(i.bufferIndex,s,i.end,o,h),De(this,e,l,a)}shrinkNode(e,t,i){const n=e.piece,r=n.start,s=n.end,o=n.length,a=n.lineFeedCnt,l=t,h=this.getLineFeedCnt(n.bufferIndex,n.start,l),c=this.offsetInBuffer(n.bufferIndex,t)-this.offsetInBuffer(n.bufferIndex,r);e.piece=new Ae(n.bufferIndex,n.start,l,h,c),De(this,e,c-o,h-a);const u=new Ae(n.bufferIndex,i,s,this.getLineFeedCnt(n.bufferIndex,i,s),this.offsetInBuffer(n.bufferIndex,s)-this.offsetInBuffer(n.bufferIndex,i)),d=this.rbInsertRight(e,u);this.validateCRLFWithPrevNode(d)}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 r=Ne(t,!1);for(let u=0;u<r.length;u++)r[u]+=n;if(i){const e=this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-2];this._buffers[0].lineStarts.pop(),this._lastChangeBufferPos={line:this._lastChangeBufferPos.line-1,column:n-e}}this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(r.slice(1));const s=this._buffers[0].lineStarts.length-1,o={line:s,column:this._buffers[0].buffer.length-this._buffers[0].lineStarts[s]},a=e.piece.length+t.length,l=e.piece.lineFeedCnt,h=this.getLineFeedCnt(0,e.piece.start,o),c=h-l;e.piece=new Ae(e.piece.bufferIndex,e.piece.start,o,h,a),this._lastChangeBufferPos=o,De(this,e,t.length,c)}nodeAt(e){let t=this.root;const i=this._searchCache.get(e);if(i)return{node:i.node,nodeStartOffset:i.nodeStartOffset,remainder:e-i.nodeStartOffset};let n=0;for(;t!==_e;)if(t.size_left>e)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!==_e;)if(i.left!==_e&&i.lf_left>=e-1)i=i.left;else{if(i.lf_left+i.piece.lineFeedCnt>e-1){const r=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(r+t-1,s),nodeStartOffset:n}}if(i.lf_left+i.piece.lineFeedCnt===e-1){const r=this.getAccumulatedValue(i,e-i.lf_left-2);if(r+t-1<=i.piece.length)return{node:i,remainder:r+t-1,nodeStartOffset:n};t-=i.piece.length-r;break}e-=i.lf_left+i.piece.lineFeedCnt,n+=i.size_left+i.piece.length,i=i.right}for(i=i.next();i!==_e;){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===_e||0===e.piece.lineFeedCnt)return!1;const t=e.piece,i=this._buffers[t.bufferIndex].lineStarts,n=t.start.line,r=i[n]+t.start.column;if(n===i.length-1)return!1;return!(i[n+1]>r+1)&&10===this._buffers[t.bufferIndex].buffer.charCodeAt(r)}endWithCR(e){return"string"===typeof e?13===e.charCodeAt(e.length-1):e!==_e&&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 r;r=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,o=e.piece.lineFeedCnt-1;e.piece=new Ae(e.piece.bufferIndex,e.piece.start,r,o,s),De(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,h=this.getLineFeedCnt(t.piece.bufferIndex,a,t.piece.end);t.piece=new Ae(t.piece.bufferIndex,a,t.piece.end,h,l),De(this,t,-1,-1),0===t.piece.length&&i.push(t);const c=this.createNewPieces("\r\n");this.rbInsertRight(e,c[0]);for(let u=0;u<i.length;u++)xe(this,i[u])}adjustCarriageReturnFromNext(e,t){if(this.shouldCheckCRLF()&&this.endWithCR(e)){const i=t.next();if(this.startWithLF(i)){if(e+="\n",1===i.piece.length)xe(this,i);else{const e=i.piece,t={line:e.start.line+1,column:0},n=e.length-1,r=this.getLineFeedCnt(e.bufferIndex,t,e.end);i.piece=new Ae(e.bufferIndex,t,e.end,r,n),De(this,i,-1,-1)}return!0}}return!1}iterate(e,t){if(e===_e)return t(_e);const i=this.iterate(e.left,t);return i?t(e)&&this.iterate(e.right,t):i}getNodeContent(e){if(e===_e)return"";const t=this._buffers[e.piece.bufferIndex],i=e.piece,n=this.offsetInBuffer(i.bufferIndex,i.start),r=this.offsetInBuffer(i.bufferIndex,i.end);return t.buffer.substring(n,r)}getPieceContent(e){const t=this._buffers[e.bufferIndex],i=this.offsetInBuffer(e.bufferIndex,e.start),n=this.offsetInBuffer(e.bufferIndex,e.end);return t.buffer.substring(i,n)}rbInsertRight(e,t){const i=new ke(t,1);i.left=_e,i.right=_e,i.parent=_e,i.size_left=0,i.lf_left=0;if(this.root===_e)this.root=i,i.color=0;else if(e.right===_e)e.right=i,i.parent=e;else{const t=be(e.right);t.left=i,i.parent=t}return Ie(this,i),i}rbInsertLeft(e,t){const i=new ke(t,1);if(i.left=_e,i.right=_e,i.parent=_e,i.size_left=0,i.lf_left=0,this.root===_e)this.root=i,i.color=0;else if(e.left===_e)e.left=i,i.parent=e;else{const t=Ce(e.left);t.right=i,i.parent=t}return Ie(this,i),i}}var We=i(30039);class Ve extends a.jG{constructor(e,t,i,n,r,s,a){super(),this._onDidChangeContent=this._register(new o.vl),this._BOM=t,this._mightContainNonBasicASCII=!s,this._mightContainRTL=n,this._mightContainUnusualLineTerminators=r,this._pieceTree=new ze(e,i,a)}mightContainRTL(){return this._mightContainRTL}mightContainUnusualLineTerminators(){return this._mightContainUnusualLineTerminators}resetMightContainUnusualLineTerminators(){this._mightContainUnusualLineTerminators=!1}mightContainNonBasicASCII(){return this._mightContainNonBasicASCII}getBOM(){return this._BOM}getEOL(){return this._pieceTree.getEOL()}createSnapshot(e){return this._pieceTree.createSnapshot(e?this._BOM:"")}getOffsetAt(e,t){return this._pieceTree.getOffsetAt(e,t)}getPositionAt(e){return this._pieceTree.getPositionAt(e)}getRangeAt(e,t){const i=e+t,n=this.getPositionAt(e),r=this.getPositionAt(i);return new g.Q(n.lineNumber,n.column,r.lineNumber,r.column)}getValueInRange(e,t=0){if(e.isEmpty())return"";const i=this._getEndOfLine(t);return this._pieceTree.getValueInRange(e,i)}getValueLengthInRange(e,t=0){if(e.isEmpty())return 0;if(e.startLineNumber===e.endLineNumber)return e.endColumn-e.startColumn;const i=this.getOffsetAt(e.startLineNumber,e.startColumn);return this.getOffsetAt(e.endLineNumber,e.endColumn)-i}getCharacterCountInRange(e,t=0){if(this._mightContainNonBasicASCII){let i=0;const n=e.startLineNumber,r=e.endLineNumber;for(let t=n;t<=r;t++){const s=this.getLineContent(t),o=t===n?e.startColumn-1:0,a=t===r?e.endColumn-1:s.length;for(let e=o;e<a;e++)l.pc(s.charCodeAt(e))?(i+=1,e+=1):i+=1}return i+=this._getEndOfLine(t).length*(r-n),i}return this.getValueLengthInRange(e,t)}getLength(){return this._pieceTree.getLength()}getLineCount(){return this._pieceTree.getLineCount()}getLinesContent(){return this._pieceTree.getLinesContent()}getLineContent(e){return this._pieceTree.getLineContent(e)}getLineCharCode(e,t){return this._pieceTree.getLineCharCode(e,t)}getLineLength(e){return this._pieceTree.getLineLength(e)}getLineFirstNonWhitespaceColumn(e){const t=l.HG(this.getLineContent(e));return-1===t?0:t+1}getLineLastNonWhitespaceColumn(e){const t=l.lT(this.getLineContent(e));return-1===t?0:t+2}_getEndOfLine(e){switch(e){case 1:return"\n";case 2:return"\r\n";case 0:return this.getEOL();default:throw new Error("Unknown EOL preference")}}setEOL(e){this._pieceTree.setEOL(e)}applyEdits(e,t,i){let n=this._mightContainRTL,r=this._mightContainUnusualLineTerminators,s=this._mightContainNonBasicASCII,o=!0,a=[];for(let m=0;m<e.length;m++){const t=e[m];o&&t._isTracked&&(o=!1);const i=t.range;if(t.text){let e=!0;s||(e=!l.aC(t.text),s=e),!n&&e&&(n=l.E_(t.text)),!r&&e&&(r=l.$X(t.text))}let h="",u=0,d=0,g=0;if(t.text){let e;[u,d,g,e]=(0,c.W)(t.text);const i=this.getEOL();h=0===e||e===("\r\n"===i?2:1)?t.text:t.text.replace(/\r\n|\r|\n/g,i)}a[m]={sortIndex:m,identifier:t.identifier||null,range:i,rangeOffset:this.getOffsetAt(i.startLineNumber,i.startColumn),rangeLength:this.getValueLengthInRange(i),text:h,eolCount:u,firstLineLength:d,lastLineLength:g,forceMoveMarkers:Boolean(t.forceMoveMarkers),isAutoWhitespaceEdit:t.isAutoWhitespaceEdit||!1}}a.sort(Ve._sortOpsAscending);let h=!1;for(let l=0,c=a.length-1;l<c;l++){const e=a[l].range.getEndPosition(),t=a[l+1].range.getStartPosition();if(t.isBeforeOrEqual(e)){if(t.isBefore(e))throw new Error("Overlapping ranges are not allowed!");h=!0}}o&&(a=this._reduceOperations(a));const u=i||t?Ve._getInverseEditRanges(a):[],d=[];if(t)for(let c=0;c<a.length;c++){const e=a[c],t=u[c];if(e.isAutoWhitespaceEdit&&e.range.isEmpty())for(let i=t.startLineNumber;i<=t.endLineNumber;i++){let n="";i===t.startLineNumber&&(n=this.getLineContent(e.range.startLineNumber),-1!==l.HG(n))||d.push({lineNumber:i,oldContent:n})}}let g=null;if(i){let e=0;g=[];for(let t=0;t<a.length;t++){const i=a[t],n=u[t],r=this.getValueInRange(i.range),s=i.rangeOffset+e;e+=i.text.length-r.length,g[t]={sortIndex:i.sortIndex,identifier:i.identifier,range:n,text:r,textChange:new We.k(i.rangeOffset,r,s,i.text)}}h||g.sort(((e,t)=>e.sortIndex-t.sortIndex))}this._mightContainRTL=n,this._mightContainUnusualLineTerminators=r,this._mightContainNonBasicASCII=s;const f=this._doApplyEdits(a);let p=null;if(t&&d.length>0){d.sort(((e,t)=>t.lineNumber-e.lineNumber)),p=[];for(let e=0,t=d.length;e<t;e++){const t=d[e].lineNumber;if(e>0&&d[e-1].lineNumber===t)continue;const i=d[e].oldContent,n=this.getLineContent(t);0!==n.length&&n!==i&&-1===l.HG(n)&&p.push(t)}}return this._onDidChangeContent.fire(),new _.F4(g,f,p)}_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,r=new g.Q(i.startLineNumber,i.startColumn,n.endLineNumber,n.endColumn);let s=i.startLineNumber,o=i.startColumn;const a=[];for(let c=0,f=e.length;c<f;c++){const i=e[c],n=i.range;t=t||i.forceMoveMarkers,a.push(this.getValueInRange(new g.Q(s,o,n.startLineNumber,n.startColumn))),i.text.length>0&&a.push(i.text),s=n.endLineNumber,o=n.endColumn}const l=a.join(""),[h,u,d]=(0,c.W)(l);return{sortIndex:0,identifier:e[0].identifier,range:r,rangeOffset:this.getOffsetAt(r.startLineNumber,r.startColumn),rangeLength:this.getValueLengthInRange(r,0),text:l,eolCount:h,firstLineLength:u,lastLineLength:d,forceMoveMarkers:t,isAutoWhitespaceEdit:!1}}_doApplyEdits(e){e.sort(Ve._sortOpsDescending);const t=[];for(let i=0;i<e.length;i++){const n=e[i],r=n.range.startLineNumber,s=n.range.startColumn,o=n.range.endLineNumber,a=n.range.endColumn;if(r===o&&s===a&&0===n.text.length)continue;n.text?(this._pieceTree.delete(n.rangeOffset,n.rangeLength),this._pieceTree.insert(n.rangeOffset,n.text,!0)):this._pieceTree.delete(n.rangeOffset,n.rangeLength);const l=new g.Q(r,s,o,a);t.push({range:l,rangeLength:n.rangeLength,text:n.text,rangeOffset:n.rangeOffset,forceMoveMarkers:n.forceMoveMarkers})}return t}findMatchesLineByLine(e,t,i,n){return this._pieceTree.findMatchesLineByLine(e,t,i,n)}static _getInverseEditRanges(e){const t=[];let i=0,n=0,r=null;for(let s=0,o=e.length;s<o;s++){const o=e[s];let a,l,h;if(r?r.range.endLineNumber===o.range.startLineNumber?(a=i,l=n+(o.range.startColumn-r.range.endColumn)):(a=i+(o.range.startLineNumber-r.range.endLineNumber),l=o.range.startColumn):(a=o.range.startLineNumber,l=o.range.startColumn),o.text.length>0){const e=o.eolCount+1;h=1===e?new g.Q(a,l,a,l+o.firstLineLength):new g.Q(a,l,a+e-1,o.lastLineLength+1)}else h=new g.Q(a,l,a,l);i=h.endLineNumber,n=h.endColumn,t.push(h),r=o}return t}static _sortOpsAscending(e,t){const i=g.Q.compareRangesUsingEnds(e.range,t.range);return 0===i?e.sortIndex-t.sortIndex:i}static _sortOpsDescending(e,t){const i=g.Q.compareRangesUsingEnds(e.range,t.range);return 0===i?t.sortIndex-e.sortIndex:-i}}class He{constructor(e,t,i,n,r,s,o,a,l){this._chunks=e,this._bom=t,this._cr=i,this._lf=n,this._crlf=r,this._containsRTL=s,this._containsUnusualLineTerminators=o,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 r=0,s=i.length;r<s;r++){const e=i[r].buffer.replace(/\r\n|\r|\n/g,t),n=Ne(e);i[r]=new Fe(e,n)}const n=new Ve(i,this._bom,t,this._containsRTL,this._containsUnusualLineTerminators,this._isBasicASCII,this._normalizeEOL);return{textBuffer:n,disposable:n}}}class Ue{constructor(){this.chunks=[],this.BOM="",this._hasPreviousChar=!1,this._previousChar=0,this._tmpLineStarts=[],this.cr=0,this.lf=0,this.crlf=0,this.containsRTL=!1,this.containsUnusualLineTerminators=!1,this.isBasicASCII=!0}acceptChunk(e){if(0===e.length)return;0===this.chunks.length&&l.LU(e)&&(this.BOM=l.r_,e=e.substr(1));const t=e.charCodeAt(e.length-1);13===t||t>=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,r=0,s=0,o=!0;for(let l=0,h=t.length;l<h;l++){const a=t.charCodeAt(l);13===a?l+1<h&&10===t.charCodeAt(l+1)?(s++,e[i++]=l+2,l++):(n++,e[i++]=l+1):10===a?(r++,e[i++]=l+1):o&&9!==a&&(a<32||a>126)&&(o=!1)}const a=new Be(Me(e),n,r,s,o);return e.length=0,a}(this._tmpLineStarts,e);this.chunks.push(new Fe(e,t.lineStarts)),this.cr+=t.cr,this.lf+=t.lf,this.crlf+=t.crlf,this.isBasicASCII&&(this.isBasicASCII=t.isBasicASCII),this.isBasicASCII||this.containsRTL||(this.containsRTL=l.E_(e)),this.isBasicASCII||this.containsUnusualLineTerminators||(this.containsUnusualLineTerminators=l.$X(e))}finish(e=!0){return this._finish(),new He(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=Ne(e.buffer);e.lineStarts=t,13===this._previousChar&&this.cr++}}}var je=i(52524),Ke=i(22519),qe=i(42219),Ge=i(43178),$e=i(46078),Qe=i(3499);class Ye{constructor(e,t){this._startLineNumber=e,this._tokens=t}get startLineNumber(){return this._startLineNumber}get endLineNumber(){return this._startLineNumber+this._tokens.length-1}getLineTokens(e){return this._tokens[e-this._startLineNumber]}appendLineTokens(e){this._tokens.push(e)}}class Xe{constructor(){this._tokens=[]}add(e,t){if(this._tokens.length>0){const i=this._tokens[this._tokens.length-1];if(i.endLineNumber+1===e)return void i.appendLineTokens(t)}this._tokens.push(new Ye(e,[t]))}finalize(){return this._tokens}}var Ze=i(20512),Je=i(55977);class et{constructor(e){this._default=e,this._store=[]}get(e){return e<this._store.length?this._store[e]:this._default}set(e,t){for(;e>=this._store.length;)this._store[this._store.length]=this._default;this._store[e]=t}delete(e,t){0===t||e>=this._store.length||this._store.splice(e,t)}insert(e,t){if(0===t||e>=this._store.length)return;const i=[];for(let n=0;n<t;n++)i[n]=this._default;this._store=n.nK(this._store,e,i)}}class tt{constructor(e,t){this.tokenizationSupport=e,this.initialState=t,this._lineBeginState=new et(null),this._lineNeedsTokenization=new et(!0),this._firstLineNeedsTokenization=0,this._lineBeginState.set(0,this.initialState)}get invalidLineStartIndex(){return this._firstLineNeedsTokenization}markMustBeTokenized(e){this._lineNeedsTokenization.set(e,!0),this._firstLineNeedsTokenization=Math.min(this._firstLineNeedsTokenization,e)}getBeginState(e){return this._lineBeginState.get(e)}setEndState(e,t,i){if(this._lineNeedsTokenization.set(t,!1),this._firstLineNeedsTokenization=t+1,t===e-1)return;const n=this._lineBeginState.get(t+1);if(null===n||!i.equals(n))return this._lineBeginState.set(t+1,i),void this.markMustBeTokenized(t+1);let r=t+1;for(;r<e&&!this._lineNeedsTokenization.get(r);)r++;this._firstLineNeedsTokenization=r}applyEdits(e,t){this.markMustBeTokenized(e.startLineNumber-1),this._lineBeginState.delete(e.startLineNumber,e.endLineNumber-e.startLineNumber),this._lineNeedsTokenization.delete(e.startLineNumber,e.endLineNumber-e.startLineNumber),this._lineBeginState.insert(e.startLineNumber,t),this._lineNeedsTokenization.insert(e.startLineNumber,t)}}class it extends a.jG{constructor(e,t,i){super(),this._textModel=e,this._tokenizationPart=t,this._languageIdCodec=i,this._isScheduled=!1,this._isDisposed=!1,this._tokenizationStateStore=null,this._register(Ge.dG.onDidChange((e=>{const t=this._textModel.getLanguageId();-1!==e.changedLanguages.indexOf(t)&&(this._resetTokenizationState(),this._tokenizationPart.clearTokens())}))),this._resetTokenizationState()}dispose(){this._isDisposed=!0,super.dispose()}handleDidChangeContent(e){if(e.isFlush)this._resetTokenizationState();else{if(this._tokenizationStateStore)for(let t=0,i=e.changes.length;t<i;t++){const i=e.changes[t],[n]=(0,c.W)(i.text);this._tokenizationStateStore.applyEdits(i.range,n)}this._beginBackgroundTokenization()}}handleDidChangeAttached(){this._beginBackgroundTokenization()}handleDidChangeLanguage(e){this._resetTokenizationState(),this._tokenizationPart.clearTokens()}_resetTokenizationState(){const[e,t]=function(e,t){if(e.isTooLargeForTokenization())return[null,null];const i=Ge.dG.get(t.getLanguageId());if(!i)return[null,null];let n;try{n=i.getInitialState()}catch(r){return(0,s.dz)(r),[null,null]}return[i,n]}(this._textModel,this._tokenizationPart);this._tokenizationStateStore=e&&t?new tt(e,t):null,this._beginBackgroundTokenization()}_beginBackgroundTokenization(){!this._isScheduled&&this._textModel.isAttachedToEditor()&&this._hasLinesToTokenize()&&(this._isScheduled=!0,(0,Ze.cx)((e=>{this._isScheduled=!1,this._backgroundTokenizeWithDeadline(e)})))}_backgroundTokenizeWithDeadline(e){const t=Date.now()+e.timeRemaining(),i=()=>{!this._isDisposed&&this._textModel.isAttachedToEditor()&&this._hasLinesToTokenize()&&(this._backgroundTokenizeForAtLeast1ms(),Date.now()<t?(0,Je._p)(i):this._beginBackgroundTokenization())};i()}_backgroundTokenizeForAtLeast1ms(){const e=this._textModel.getLineCount(),t=new Xe,i=Qe.W.create(!1);do{if(i.elapsed()>1)break;if(this._tokenizeOneInvalidLine(t)>=e)break}while(this._hasLinesToTokenize());this._tokenizationPart.setTokens(t.finalize(),this._isTokenizationComplete())}tokenizeViewport(e,t){const i=new Xe;this._tokenizeViewport(i,e,t),this._tokenizationPart.setTokens(i.finalize(),this._isTokenizationComplete())}reset(){this._resetTokenizationState(),this._tokenizationPart.clearTokens()}forceTokenization(e){const t=new Xe;this._updateTokensUntilLine(t,e),this._tokenizationPart.setTokens(t.finalize(),this._isTokenizationComplete())}getTokenTypeIfInsertingCharacter(e,t){if(!this._tokenizationStateStore)return 0;this.forceTokenization(e.lineNumber);const i=this._tokenizationStateStore.getBeginState(e.lineNumber-1);if(!i)return 0;const n=this._textModel.getLanguageId(),r=this._textModel.getLineContent(e.lineNumber),s=r.substring(0,e.column-1)+t+r.substring(e.column-1),o=nt(this._languageIdCodec,n,this._tokenizationStateStore.tokenizationSupport,s,!0,i),a=new qe.f(o.tokens,s,this._languageIdCodec);if(0===a.getCount())return 0;const l=a.findTokenIndexAtOffset(e.column-1);return a.getStandardTokenType(l)}tokenizeLineWithEdit(e,t,i){const n=e.lineNumber,r=e.column;if(!this._tokenizationStateStore)return null;this.forceTokenization(n);const s=this._tokenizationStateStore.getBeginState(n-1);if(!s)return null;const o=this._textModel.getLineContent(n),a=o.substring(0,r-1)+i+o.substring(r-1+t),l=this._textModel.getLanguageIdAtPosition(n,0),h=nt(this._languageIdCodec,l,this._tokenizationStateStore.tokenizationSupport,a,!0,s);return new qe.f(h.tokens,a,this._languageIdCodec)}isCheapToTokenize(e){if(!this._tokenizationStateStore)return!0;const t=this._tokenizationStateStore.invalidLineStartIndex+1;return!(e>t)&&(e<t||this._textModel.getLineLength(e)<2048)}_hasLinesToTokenize(){return!!this._tokenizationStateStore&&this._tokenizationStateStore.invalidLineStartIndex<this._textModel.getLineCount()}_isTokenizationComplete(){return!!this._tokenizationStateStore&&this._tokenizationStateStore.invalidLineStartIndex>=this._textModel.getLineCount()}_tokenizeOneInvalidLine(e){if(!this._tokenizationStateStore||!this._hasLinesToTokenize())return this._textModel.getLineCount()+1;const t=this._tokenizationStateStore.invalidLineStartIndex+1;return this._updateTokensUntilLine(e,t),t}_updateTokensUntilLine(e,t){if(!this._tokenizationStateStore)return;const i=this._textModel.getLanguageId(),n=this._textModel.getLineCount(),r=t-1;for(let s=this._tokenizationStateStore.invalidLineStartIndex;s<=r;s++){const t=this._textModel.getLineContent(s+1),r=this._tokenizationStateStore.getBeginState(s),o=nt(this._languageIdCodec,i,this._tokenizationStateStore.tokenizationSupport,t,!0,r);e.add(s+1,o.tokens),this._tokenizationStateStore.setEndState(n,s,o.endState),s=this._tokenizationStateStore.invalidLineStartIndex-1}}_tokenizeViewport(e,t,i){if(!this._tokenizationStateStore)return;if(i<=this._tokenizationStateStore.invalidLineStartIndex)return;if(t<=this._tokenizationStateStore.invalidLineStartIndex)return void this._updateTokensUntilLine(e,i);let n=this._textModel.getLineFirstNonWhitespaceColumn(t);const r=[];let s=null;for(let l=t-1;n>1&&l>=1;l--){const e=this._textModel.getLineFirstNonWhitespaceColumn(l);if(0!==e&&e<n){if(s=this._tokenizationStateStore.getBeginState(l-1),s)break;r.push(this._textModel.getLineContent(l)),n=e}}s||(s=this._tokenizationStateStore.initialState);const o=this._textModel.getLanguageId();let a=s;for(let l=r.length-1;l>=0;l--){a=nt(this._languageIdCodec,o,this._tokenizationStateStore.tokenizationSupport,r[l],!1,a).endState}for(let l=t;l<=i;l++){const t=this._textModel.getLineContent(l),i=nt(this._languageIdCodec,o,this._tokenizationStateStore.tokenizationSupport,t,!0,a);e.add(l,i.tokens),this._tokenizationStateStore.markMustBeTokenized(l-1),a=i.endState}}}function nt(e,t,i,n,r,o){let a=null;if(i)try{a=i.tokenizeEncoded(n,r,o.clone())}catch(l){(0,s.dz)(l)}return a||(a=(0,$e.Lh)(e.encodeLanguageId(t),o)),qe.f.convertToEndOffset(a.tokens,n.length),a}const rt=new Uint32Array(0).buffer;class st{static deleteBeginning(e,t){return null===e||e===rt?e:st.delete(e,0,t)}static deleteEnding(e,t){if(null===e||e===rt)return e;const i=ot(e),n=i[i.length-2];return st.delete(e,t,n)}static delete(e,t,i){if(null===e||e===rt||t===i)return e;const n=ot(e),r=n.length>>>1;if(0===t&&n[n.length-2]===i)return rt;const s=qe.f.findIndexInTokensArray(n,t),o=s>0?n[s-1<<1]:0;if(i<n[s<<1]){const o=i-t;for(let e=s;e<r;e++)n[e<<1]-=o;return e}let a,l;o!==t?(n[s<<1]=t,a=s+1<<1,l=t):(a=s<<1,l=o);const h=i-t;for(let u=s+1;u<r;u++){const e=n[u<<1]-h;e>l&&(n[a++]=e,n[a++]=n[1+(u<<1)],l=e)}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===rt)return e;if(e===rt)return t;if(null===e)return e;if(null===t)return null;const i=ot(e),n=ot(t),r=n.length>>>1,s=new Uint32Array(i.length+n.length);s.set(i,0);let o=i.length;const a=i[i.length-2];for(let l=0;l<r;l++)s[o++]=n[l<<1]+a,s[o++]=n[1+(l<<1)];return s.buffer}static insert(e,t,i){if(null===e||e===rt)return e;const n=ot(e),r=n.length>>>1;let s=qe.f.findIndexInTokensArray(n,t);if(s>0){n[s-1<<1]===t&&s--}for(let o=s;o<r;o++)n[o<<1]+=i;return e}}function ot(e){return e instanceof Uint32Array?e:new Uint32Array(e)}var at=i(61244);class lt{constructor(e){this._lineTokens=[],this._len=0,this._languageIdCodec=e}flush(){this._lineTokens=[],this._len=0}getTokens(e,t,i){let n=null;if(t<this._len&&(n=this._lineTokens[t]),null!==n&&n!==rt)return new qe.f(ot(n),i,this._languageIdCodec);const r=new Uint32Array(2);return r[0]=i.length,r[1]=ht(this._languageIdCodec.encodeLanguageId(e)),new qe.f(r,i,this._languageIdCodec)}static _massageTokens(e,t,i){const n=i?ot(i):null;if(0===t){let t=!1;if(n&&n.length>1&&(t=at.x.getLanguageId(n[1])!==e),!t)return rt}if(!n||0===n.length){const i=new Uint32Array(2);return i[0]=t,i[1]=ht(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 n=0;n<t;n++)i[n]=null;this._lineTokens=n.nK(this._lineTokens,e,i),this._len+=t}setTokens(e,t,i,n,r){const s=lt._massageTokens(this._languageIdCodec.encodeLanguageId(e),i,n);this._ensureLine(t);const o=this._lineTokens[t];return this._lineTokens[t]=s,!!r&&!lt._equals(o,s)}static _equals(e,t){if(!e||!t)return!e&&!t;const i=ot(e),n=ot(t);if(i.length!==n.length)return!1;for(let r=0,s=i.length;r<s;r++)if(i[r]!==n[r])return!1;return!0}acceptEdit(e,t,i){this._acceptDeleteRange(e),this._acceptInsertText(new d.y(e.startLineNumber,e.startColumn),t,i)}_acceptDeleteRange(e){const t=e.startLineNumber-1;if(t>=this._len)return;if(e.startLineNumber===e.endLineNumber){if(e.startColumn===e.endColumn)return;return void(this._lineTokens[t]=st.delete(this._lineTokens[t],e.startColumn-1,e.endColumn-1))}this._lineTokens[t]=st.deleteEnding(this._lineTokens[t],e.startColumn-1);const i=e.endLineNumber-1;let n=null;i<this._len&&(n=st.deleteBeginning(this._lineTokens[i],e.endColumn-1)),this._lineTokens[t]=st.append(this._lineTokens[t],n),this._deleteLines(e.startLineNumber,e.endLineNumber-e.startLineNumber)}_acceptInsertText(e,t,i){if(0===t&&0===i)return;const n=e.lineNumber-1;n>=this._len||(0!==t?(this._lineTokens[n]=st.deleteEnding(this._lineTokens[n],e.column-1),this._lineTokens[n]=st.insert(this._lineTokens[n],e.column-1,i),this._insertLines(e.lineNumber,t)):this._lineTokens[n]=st.insert(this._lineTokens[n],e.column-1,i))}}function ht(e){return(32768|e|2<<24|1024)>>>0}class ct{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){this._pieces=e||[],this._isComplete=t}setPartial(e,t){let i=e;if(t.length>0){const n=t[0].getRange(),r=t[t.length-1].getRange();if(!n||!r)return e;i=e.plusRange(n).plusRange(r)}let r=null;for(let n=0,s=this._pieces.length;n<s;n++){const e=this._pieces[n];if(e.endLineNumber<i.startLineNumber)continue;if(e.startLineNumber>i.endLineNumber){r=r||{index:n};break}if(e.removeTokens(i),e.isEmpty()){this._pieces.splice(n,1),n--,s--;continue}if(e.endLineNumber<i.startLineNumber)continue;if(e.startLineNumber>i.endLineNumber){r=r||{index:n};continue}const[t,o]=e.split(i);t.isEmpty()?r=r||{index:n}:o.isEmpty()||(this._pieces.splice(n,1,t,o),n++,s++,r=r||{index:n})}return r=r||{index:this._pieces.length},t.length>0&&(this._pieces=n.nK(this._pieces,r.index,t)),i}isComplete(){return this._isComplete}addSparseTokens(e,t){if(0===t.getLineContent().length)return t;const i=this._pieces;if(0===i.length)return t;const n=i[ct._findFirstPieceWithLine(i,e)].getLineTokens(e);if(!n)return t;const r=t.getCount(),s=n.getCount();let o=0;const a=[];let l=0,h=0;const c=(e,t)=>{e!==h&&(h=e,a[l++]=e,a[l++]=t)};for(let u=0;u<s;u++){const e=n.getStartCharacter(u),i=n.getEndCharacter(u),s=n.getMetadata(u),a=((1&s?2048:0)|(2&s?4096:0)|(4&s?8192:0)|(8&s?16384:0)|(16&s?16744448:0)|(32&s?4278190080:0))>>>0,l=~a>>>0;for(;o<r&&t.getEndOffset(o)<=e;)c(t.getEndOffset(o),t.getMetadata(o)),o++;for(o<r&&t.getStartOffset(o)<e&&c(e,t.getMetadata(o));o<r&&t.getEndOffset(o)<i;)c(t.getEndOffset(o),t.getMetadata(o)&l|s&a),o++;if(o<r)c(i,t.getMetadata(o)&l|s&a),t.getEndOffset(o)===i&&o++;else{const e=Math.min(Math.max(0,o-1),r-1);c(i,t.getMetadata(e)&l|s&a)}}for(;o<r;)c(t.getEndOffset(o),t.getMetadata(o)),o++;return new qe.f(new Uint32Array(a),t.getLineContent(),this._languageIdCodec)}static _findFirstPieceWithLine(e,t){let i=0,n=e.length-1;for(;i<n;){let r=i+Math.floor((n-i)/2);if(e[r].endLineNumber<t)i=r+1;else{if(!(e[r].startLineNumber>t)){for(;r>i&&e[r-1].startLineNumber<=t&&t<=e[r-1].endLineNumber;)r--;return r}n=r-1}}return i}acceptEdit(e,t,i,n,r){for(const s of this._pieces)s.acceptEdit(e,t,i,n,r)}}class ut extends Ke._{constructor(e,t,i,n,r){super(),this._languageService=e,this._languageConfigurationService=t,this._textModel=i,this.bracketPairsTextModelPart=n,this._languageId=r,this._onDidChangeLanguage=this._register(new o.vl),this.onDidChangeLanguage=this._onDidChangeLanguage.event,this._onDidChangeLanguageConfiguration=this._register(new o.vl),this.onDidChangeLanguageConfiguration=this._onDidChangeLanguageConfiguration.event,this._onDidChangeTokens=this._register(new o.vl),this.onDidChangeTokens=this._onDidChangeTokens.event,this._backgroundTokenizationState=0,this._onBackgroundTokenizationStateChanged=this._register(new o.vl),this._tokens=new lt(this._languageService.languageIdCodec),this._semanticTokens=new ct(this._languageService.languageIdCodec),this._tokenization=new it(i,this,this._languageService.languageIdCodec),this._languageRegistryListener=this._languageConfigurationService.onDidChange((e=>{e.affects(this._languageId)&&this._onDidChangeLanguageConfiguration.fire({})}))}acceptEdit(e,t,i,n,r){this._tokens.acceptEdit(e,i,n),this._semanticTokens.acceptEdit(e,i,n,r,t.length>0?t.charCodeAt(0):0)}handleDidChangeAttached(){this._tokenization.handleDidChangeAttached()}flush(){this._tokens.flush(),this._semanticTokens.flush()}handleDidChangeContent(e){this._tokenization.handleDidChangeContent(e)}dispose(){this._languageRegistryListener.dispose(),this._tokenization.dispose(),super.dispose()}get backgroundTokenizationState(){return this._backgroundTokenizationState}handleTokenizationProgress(e){if(2===this._backgroundTokenizationState)return;const t=e?2:1;this._backgroundTokenizationState!==t&&(this._backgroundTokenizationState=t,this.bracketPairsTextModelPart.handleDidChangeBackgroundTokenizationState(),this._onBackgroundTokenizationStateChanged.fire())}setTokens(e,t=!1){if(0!==e.length){const t=[];for(let i=0,n=e.length;i<n;i++){const n=e[i];let r=0,s=0,o=!1;for(let e=n.startLineNumber;e<=n.endLineNumber;e++)if(o)this._tokens.setTokens(this._languageId,e-1,this._textModel.getLineLength(e),n.getLineTokens(e),!1),s=e;else{this._tokens.setTokens(this._languageId,e-1,this._textModel.getLineLength(e),n.getLineTokens(e),!0)&&(o=!0,r=e,s=e)}o&&t.push({fromLineNumber:r,toLineNumber:s})}t.length>0&&this._emitModelTokensChangedEvent({tokenizationSupportChanged:!1,semanticTokensApplied:!1,ranges:t})}this.handleTokenizationProgress(t)}setSemanticTokens(e,t){this._semanticTokens.set(e,t),this._emitModelTokensChangedEvent({tokenizationSupportChanged:!1,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({tokenizationSupportChanged:!1,semanticTokensApplied:!0,ranges:[{fromLineNumber:i.startLineNumber,toLineNumber:i.endLineNumber}]})}tokenizeViewport(e,t){e=Math.max(1,e),t=Math.min(this._textModel.getLineCount(),t),this._tokenization.tokenizeViewport(e,t)}clearTokens(){this._tokens.flush(),this._emitModelTokensChangedEvent({tokenizationSupportChanged:!0,semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]})}_emitModelTokensChangedEvent(e){this._textModel._isDisposing()||(this.bracketPairsTextModelPart.handleDidChangeTokens(e),this._onDidChangeTokens.fire(e))}resetTokenization(){this._tokenization.reset()}forceTokenization(e){if(e<1||e>this._textModel.getLineCount())throw new Error("Illegal value for lineNumber");this._tokenization.forceTokenization(e)}isCheapToTokenize(e){return this._tokenization.isCheapToTokenize(e)}tokenizeIfCheap(e){this.isCheapToTokenize(e)&&this.forceTokenization(e)}getLineTokens(e){if(e<1||e>this._textModel.getLineCount())throw new Error("Illegal value for lineNumber");return this._getLineTokens(e)}_getLineTokens(e){const t=this._textModel.getLineContent(e),i=this._tokens.getTokens(this._languageId,e-1,t);return this._semanticTokens.addSparseTokens(e,i)}getTokenTypeIfInsertingCharacter(e,t,i){const n=this._textModel.validatePosition(new d.y(e,t));return this._tokenization.getTokenTypeIfInsertingCharacter(n,i)}tokenizeLineWithEdit(e,t,i){const n=this._textModel.validatePosition(e);return this._tokenization.tokenizeLineWithEdit(n,t,i)}getLanguageConfiguration(e){return this._languageConfigurationService.getLanguageConfiguration(e)}getWordAtPosition(e){this.assertNotDisposed();const t=this._textModel.validatePosition(e),i=this._textModel.getLineContent(t.lineNumber),n=this._getLineTokens(t.lineNumber),r=n.findTokenIndexAtOffset(t.column-1),[s,o]=ut._findLanguageBoundaries(n,r),a=(0,je.Th)(t.column,this.getLanguageConfiguration(n.getLanguageId(r)).getWordDefinition(),i.substring(s,o),s);if(a&&a.startColumn<=e.column&&e.column<=a.endColumn)return a;if(r>0&&s===t.column-1){const[s,o]=ut._findLanguageBoundaries(n,r-1),a=(0,je.Th)(t.column,this.getLanguageConfiguration(n.getLanguageId(r-1)).getWordDefinition(),i.substring(s,o),s);if(a&&a.startColumn<=e.column&&e.column<=a.endColumn)return a}return null}static _findLanguageBoundaries(e,t){const i=e.getLanguageId(t);let n=0;for(let s=t;s>=0&&e.getLanguageId(s)===i;s--)n=e.getStartOffset(s);let r=e.getLineContent().length;for(let s=t,o=e.getCount();s<o&&e.getLanguageId(s)===i;s++)r=e.getEndOffset(s);return[n,r]}getWordUntilPosition(e){const t=this.getWordAtPosition(e);return t?{word:t.word.substr(0,e.column-t.startColumn),startColumn:t.startColumn,endColumn:e.column}:{word:"",startColumn:e.column,endColumn:e.column}}getLanguageId(){return this._languageId}getLanguageIdAtPosition(e,t){const i=this._textModel.validatePosition(new d.y(e,t)),n=this.getLineTokens(i.lineNumber);return n.getLanguageId(n.findTokenIndexAtOffset(i.column-1))}setLanguageId(e){if(this._languageId===e)return;const t={oldLanguage:this._languageId,newLanguage:e};this._languageId=e,this.bracketPairsTextModelPart.handleDidChangeLanguage(t),this._tokenization.handleDidChangeLanguage(t),this._onDidChangeLanguage.fire(t),this._onDidChangeLanguageConfiguration.fire({})}}var dt=i(74341),gt=i(33105),ft=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},pt=function(e,t){return function(i,n){t(i,n,e)}};function mt(e){const t=new Ue;return t.acceptChunk(e),t.finish()}function kt(e,t){return("string"===typeof e?mt(e):e).create(t)}let _t=0;class bt{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 Ct=()=>{throw new Error("Invalid change accessor")};let vt=class e extends a.jG{constructor(t,i,n,r=null,s,a,c){super(),this._undoRedoService=s,this._languageService=a,this._languageConfigurationService=c,this._onWillDispose=this._register(new o.vl),this.onWillDispose=this._onWillDispose.event,this._onDidChangeDecorations=this._register(new Bt((e=>this.handleBeforeFireDecorationsChangedEvent(e)))),this.onDidChangeDecorations=this._onDidChangeDecorations.event,this._onDidChangeOptions=this._register(new o.vl),this.onDidChangeOptions=this._onDidChangeOptions.event,this._onDidChangeAttached=this._register(new o.vl),this.onDidChangeAttached=this._onDidChangeAttached.event,this._onDidChangeInjectedText=this._register(new o.vl),this._eventEmitter=this._register(new Nt),this._deltaDecorationCallCnt=0,_t++,this.id="$model"+_t,this.isForSimpleWidget=n.isForSimpleWidget,this._associatedResource="undefined"===typeof r||null===r?h.r.parse("inmemory://model/"+_t):r,this._attachedEditorCount=0;const{textBuffer:u,disposable:d}=kt(t,n.defaultEOL);this._buffer=u,this._bufferDisposable=d,this._options=e.resolveOptions(this._buffer,n),this._bracketPairs=this._register(new F(this,this._languageConfigurationService)),this._guidesTextModelPart=this._register(new K.P(this,this._languageConfigurationService)),this._decorationProvider=this._register(new H(this)),this._tokenizationTextModelPart=new ut(this._languageService,this._languageConfigurationService,this,this._bracketPairs,i);const f=this._buffer.getLineCount(),p=this._buffer.getValueLengthInRange(new g.Q(1,1,f,this._buffer.getLineLength(f)+1),0);n.largeFileOptimizations?this._isTooLargeForTokenization=p>e.LARGE_FILE_SIZE_THRESHOLD||f>e.LARGE_FILE_LINE_COUNT_THRESHOLD:this._isTooLargeForTokenization=!1,this._isTooLargeForSyncing=p>e.MODEL_SYNC_LIMIT,this._versionId=1,this._alternativeVersionId=1,this._initialUndoRedoSnapshot=null,this._isDisposed=!1,this.__isDisposing=!1,this._instanceId=l.tk(_t),this._lastDecorationId=0,this._decorations=Object.create(null),this._decorationsTree=new St,this._commandManager=new j.z8(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()})))}static resolveOptions(e,t){if(t.detectIndentation){const i=$(e,t.tabSize,t.insertSpaces);return new _.X2({tabSize:i.tabSize,indentSize:i.tabSize,insertSpaces:i.insertSpaces,trimAutoWhitespace:t.trimAutoWhitespace,defaultEOL:t.defaultEOL,bracketPairColorizationOptions:t.bracketPairColorizationOptions})}return new _.X2({tabSize:t.tabSize,indentSize:t.indentSize,insertSpaces:t.insertSpaces,trimAutoWhitespace:t.trimAutoWhitespace,defaultEOL:t.defaultEOL,bracketPairColorizationOptions:t.bracketPairColorizationOptions})}get onDidChangeLanguage(){return this._tokenizationTextModelPart.onDidChangeLanguage}get onDidChangeLanguageConfiguration(){return this._tokenizationTextModelPart.onDidChangeLanguageConfiguration}get onDidChangeTokens(){return this._tokenizationTextModelPart.onDidChangeTokens}onDidChangeContent(e){return this._eventEmitter.slowEvent((t=>e(t.contentChangedEvent)))}onDidChangeContentOrInjectedText(e){return(0,a.qE)(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}dispose(){this.__isDisposing=!0,this._onWillDispose.fire(),this._tokenizationTextModelPart.dispose(),this._isDisposed=!0,super.dispose(),this._bufferDisposable.dispose(),this.__isDisposing=!1;const e=new Ve([],"","\n",!1,!1,!0,!0);e.dispose(),this._buffer=e,this._bufferDisposable=a.jG.None}_assertNotDisposed(){if(this._isDisposed)throw new Error("Model is disposed!")}_emitContentChangedEvent(e,t){this.__isDisposing||(this._tokenizationTextModelPart.handleDidChangeContent(t),this._bracketPairs.handleDidChangeContent(t),this._eventEmitter.fire(new dt.Ic(e,t)))}setValue(e){if(this._assertNotDisposed(),null===e)return;const{textBuffer:t,disposable:i}=kt(e,this._options.defaultEOL);this._setValueFromTextBuffer(t,i)}_createContentChanged2(e,t,i,n,r,s,o){return{changes:[{range:e,rangeOffset:t,rangeLength:i,text:n}],eol:this._buffer.getEOL(),versionId:this.getVersionId(),isUndoing:r,isRedoing:s,isFlush:o}}_setValueFromTextBuffer(e,t){this._assertNotDisposed();const i=this.getFullModelRange(),n=this.getValueLengthInRange(i),r=this.getLineCount(),s=this.getLineMaxColumn(r);this._buffer=e,this._bufferDisposable.dispose(),this._bufferDisposable=t,this._increaseVersionId(),this._tokenizationTextModelPart.flush(),this._decorations=Object.create(null),this._decorationsTree=new St,this._commandManager.clear(),this._trimAutoWhitespaceLines=null,this._emitContentChangedEvent(new dt.HP([new dt.Wn],this._versionId,!1,!1),this._createContentChanged2(new g.Q(1,1,r,s),0,n,this.getValue(),!1,!1,!0))}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),r=this.getLineCount(),s=this.getLineMaxColumn(r);this._onBeforeEOLChange(),this._buffer.setEOL(t),this._increaseVersionId(),this._onAfterEOLChange(),this._emitContentChangedEvent(new dt.HP([new dt.mS],this._versionId,!1,!1),this._createContentChanged2(new g.Q(1,1,r,s),0,n,this.getValue(),!1,!1,!1))}_onBeforeEOLChange(){this._decorationsTree.ensureAllNodesHaveRanges(this)}_onAfterEOLChange(){const e=this.getVersionId(),t=this._decorationsTree.collectNodesPostOrder();for(let i=0,n=t.length;i<n;i++){const n=t[i],r=n.range,s=n.cachedAbsoluteStart-n.start,o=this._buffer.getOffsetAt(r.startLineNumber,r.startColumn),a=this._buffer.getOffsetAt(r.endLineNumber,r.endColumn);n.cachedAbsoluteStart=o,n.cachedAbsoluteEnd=a,n.cachedVersionId=e,n.start=o-s,n.end=a-s,fe(n)}}onBeforeAttached(){this._attachedEditorCount++,1===this._attachedEditorCount&&(this._tokenizationTextModelPart.handleDidChangeAttached(),this._onDidChangeAttached.fire(void 0))}onBeforeDetached(){this._attachedEditorCount--,0===this._attachedEditorCount&&(this._tokenizationTextModelPart.handleDidChangeAttached(),this._onDidChangeAttached.fire(void 0))}isAttachedToEditor(){return this._attachedEditorCount>0}getAttachedEditorCount(){return this._attachedEditorCount}isTooLargeForSyncing(){return this._isTooLargeForSyncing}isTooLargeForTokenization(){return this._isTooLargeForTokenization}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="undefined"!==typeof e.tabSize?e.tabSize:this._options.tabSize,i="undefined"!==typeof e.indentSize?e.indentSize:this._options.indentSize,n="undefined"!==typeof e.insertSpaces?e.insertSpaces:this._options.insertSpaces,r="undefined"!==typeof e.trimAutoWhitespace?e.trimAutoWhitespace:this._options.trimAutoWhitespace,s="undefined"!==typeof e.bracketColorizationOptions?e.bracketColorizationOptions:this._options.bracketPairColorizationOptions,o=new _.X2({tabSize:t,indentSize:i,insertSpaces:n,defaultEOL:this._options.defaultEOL,trimAutoWhitespace:r,bracketPairColorizationOptions:s});if(this._options.equals(o))return;const a=this._options.createChangeEvent(o);this._options=o,this._bracketPairs.handleDidChangeOptions(a),this._decorationProvider.handleDidChangeOptions(a),this._onDidChangeOptions.fire(a)}detectIndentation(e,t){this._assertNotDisposed();const i=$(this._buffer,t,e);this.updateOptions({insertSpaces:i.insertSpaces,tabSize:i.tabSize,indentSize:i.tabSize})}normalizeIndentation(e){return this._assertNotDisposed(),(0,u.P)(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(l._J.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){this._assertNotDisposed();const i=this.getFullModelRange(),n=this.getValueInRange(i,e);return t?this._buffer.getBOM()+n:n}createSnapshot(e=!1){return new bt(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 Error("Illegal value for lineNumber");return this._buffer.getLineContent(e)}getLineLength(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new Error("Illegal value for lineNumber");return this._buffer.getLineLength(e)}getLinesContent(){return this._assertNotDisposed(),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 Error("Illegal value for lineNumber");return this._buffer.getLineLength(e)+1}getLineFirstNonWhitespaceColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new Error("Illegal value for lineNumber");return this._buffer.getLineFirstNonWhitespaceColumn(e)}getLineLastNonWhitespaceColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new Error("Illegal value for lineNumber");return this._buffer.getLineLastNonWhitespaceColumn(e)}_validateRangeRelaxedNoAllocations(e){const t=this._buffer.getLineCount(),i=e.startLineNumber,n=e.startColumn;let r=Math.floor("number"!==typeof i||isNaN(i)?1:i),s=Math.floor("number"!==typeof n||isNaN(n)?1:n);if(r<1)r=1,s=1;else if(r>t)r=t,s=this.getLineMaxColumn(r);else if(s<=1)s=1;else{const e=this.getLineMaxColumn(r);s>=e&&(s=e)}const o=e.endLineNumber,a=e.endColumn;let l=Math.floor("number"!==typeof o||isNaN(o)?1:o),h=Math.floor("number"!==typeof a||isNaN(a)?1:a);if(l<1)l=1,h=1;else if(l>t)l=t,h=this.getLineMaxColumn(l);else if(h<=1)h=1;else{const e=this.getLineMaxColumn(l);h>=e&&(h=e)}return i===r&&n===s&&o===l&&a===h&&e instanceof g.Q&&!(e instanceof f.L)?e:new g.Q(r,s,l,h)}_isValidPosition(e,t,i){if("number"!==typeof e||"number"!==typeof t)return!1;if(isNaN(e)||isNaN(t))return!1;if(e<1||t<1)return!1;if((0|e)!==e||(0|t)!==t)return!1;if(e>this._buffer.getLineCount())return!1;if(1===t)return!0;if(t>this.getLineMaxColumn(e))return!1;if(1===i){const i=this._buffer.getLineCharCode(e,t-2);if(l.pc(i))return!1}return!0}_validatePosition(e,t,i){const n=Math.floor("number"!==typeof e||isNaN(e)?1:e),r=Math.floor("number"!==typeof t||isNaN(t)?1:t),s=this._buffer.getLineCount();if(n<1)return new d.y(1,1);if(n>s)return new d.y(s,this.getLineMaxColumn(s));if(r<=1)return new d.y(n,1);const o=this.getLineMaxColumn(n);if(r>=o)return new d.y(n,o);if(1===i){const e=this._buffer.getLineCharCode(n,r-2);if(l.pc(e))return new d.y(n,r-1)}return new d.y(n,r)}validatePosition(e){return this._assertNotDisposed(),e instanceof d.y&&this._isValidPosition(e.lineNumber,e.column,1)?e:this._validatePosition(e.lineNumber,e.column,1)}_isValidRange(e,t){const i=e.startLineNumber,n=e.startColumn,r=e.endLineNumber,s=e.endColumn;if(!this._isValidPosition(i,n,0))return!1;if(!this._isValidPosition(r,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(r)?this._buffer.getLineCharCode(r,s-2):0,o=l.pc(e),a=l.pc(t);return!o&&!a}return!0}validateRange(e){if(this._assertNotDisposed(),e instanceof g.Q&&!(e instanceof f.L)&&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,r=t.column,s=i.lineNumber,o=i.column;{const e=r>1?this._buffer.getLineCharCode(n,r-2):0,t=o>1&&o<=this._buffer.getLineLength(s)?this._buffer.getLineCharCode(s,o-2):0,i=l.pc(e),a=l.pc(t);return i||a?n===s&&r===o?new g.Q(n,r-1,s,o-1):i&&a?new g.Q(n,r-1,s,o+1):i?new g.Q(n,r-1,s,o):new g.Q(n,r,s,o+1):new g.Q(n,r,s,o)}}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 g.Q(1,1,e,this.getLineMaxColumn(e))}findMatchesLineByLine(e,t,i,n){return this._buffer.findMatchesLineByLine(e,t,i,n)}findMatches(e,t,i,n,r,s,o=999){this._assertNotDisposed();let a=null;null!==t&&(Array.isArray(t)||(t=[t]),t.every((e=>g.Q.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 h;if(l.push(a.reduce(((e,t)=>g.Q.areIntersecting(e,t)?e.plusRange(t):(l.push(e),t)))),!i&&e.indexOf("\n")<0){const t=new Ee.lt(e,i,n,r).parseSearchRequest();if(!t)return[];h=e=>this.findMatchesLineByLine(e,t,s,o)}else h=t=>Ee.hB.findMatches(this,new Ee.lt(e,i,n,r),t,s,o);return l.map(h).reduce(((e,t)=>e.concat(t)),[])}findNextMatch(e,t,i,n,r,s){this._assertNotDisposed();const o=this.validatePosition(t);if(!i&&e.indexOf("\n")<0){const t=new Ee.lt(e,i,n,r).parseSearchRequest();if(!t)return null;const a=this.getLineCount();let l=new g.Q(o.lineNumber,o.column,a,this.getLineMaxColumn(a)),h=this.findMatchesLineByLine(l,t,s,1);return Ee.hB.findNextMatch(this,new Ee.lt(e,i,n,r),o,s),h.length>0?h[0]:(l=new g.Q(1,1,o.lineNumber,this.getLineMaxColumn(o.lineNumber)),h=this.findMatchesLineByLine(l,t,s,1),h.length>0?h[0]:null)}return Ee.hB.findNextMatch(this,new Ee.lt(e,i,n,r),o,s)}findPreviousMatch(e,t,i,n,r,s){this._assertNotDisposed();const o=this.validatePosition(t);return Ee.hB.findPreviousMatch(this,new Ee.lt(e,i,n,r),o,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 _.Wo?e:new _.Wo(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<n;i++)t[i]=this._validateEditOperation(e[i]);return t}pushEditOperations(e,t,i){try{return this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._pushEditOperations(e,this._validateEditOperations(t),i)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_pushEditOperations(e,t,i){if(this._options.trimAutoWhitespace&&this._trimAutoWhitespaceLines){const i=t.map((e=>({range:this.validateRange(e.range),text:e.text})));let n=!0;if(e)for(let t=0,r=e.length;t<r;t++){const r=e[t];let s=!1;for(let e=0,t=i.length;e<t;e++){const t=i[e].range,n=t.startLineNumber>r.endLineNumber,o=r.startLineNumber>t.endLineNumber;if(!n&&!o){s=!0;break}}if(!s){n=!1;break}}if(n)for(let e=0,r=this._trimAutoWhitespaceLines.length;e<r;e++){const n=this._trimAutoWhitespaceLines[e],r=this.getLineMaxColumn(n);let s=!0;for(let e=0,t=i.length;e<t;e++){const t=i[e].range,o=i[e].text;if(!(n<t.startLineNumber||n>t.endLineNumber)&&(!(n===t.startLineNumber&&t.startColumn===r&&t.isEmpty()&&o&&o.length>0&&"\n"===o.charAt(0))&&!(n===t.startLineNumber&&1===t.startColumn&&t.isEmpty()&&o&&o.length>0&&"\n"===o.charAt(o.length-1)))){s=!1;break}}if(s){const e=new g.Q(n,1,n,r);t.push(new _.Wo(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)}_applyUndo(e,t,i,n){const r=e.map((e=>{const t=this.getPositionAt(e.newPosition),i=this.getPositionAt(e.newEnd);return{range:new g.Q(t.lineNumber,t.column,i.lineNumber,i.column),text:e.oldText}}));this._applyUndoRedoEdits(r,t,!0,!1,i,n)}_applyRedo(e,t,i,n){const r=e.map((e=>{const t=this.getPositionAt(e.oldPosition),i=this.getPositionAt(e.oldEnd);return{range:new g.Q(t.lineNumber,t.column,i.lineNumber,i.column),text:e.newText}}));this._applyUndoRedoEdits(r,t,!1,!0,i,n)}_applyUndoRedoEdits(e,t,i,n,r,s){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._isUndoing=i,this._isRedoing=n,this.applyEdits(e,!1),this.setEOL(t),this._overwriteAlternativeVersionId(r)}finally{this._isUndoing=!1,this._isRedoing=!1,this._eventEmitter.endDeferredEmit(s),this._onDidChangeDecorations.endDeferredEmit()}}applyEdits(e,t=!1){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit();const i=this._validateEditOperations(e);return this._doApplyEdits(i,t)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_doApplyEdits(e,t){const i=this._buffer.getLineCount(),r=this._buffer.applyEdits(e,this._options.trimAutoWhitespace,t),s=this._buffer.getLineCount(),o=r.changes;if(this._trimAutoWhitespaceLines=r.trimAutoWhitespaceLineNumbers,0!==o.length){for(let i=0,n=o.length;i<n;i++){const e=o[i],[t,n,r]=(0,c.W)(e.text);this._tokenizationTextModelPart.acceptEdit(e.range,e.text,t,n,r),this._decorationsTree.acceptReplace(e.rangeOffset,e.rangeLength,e.text.length,e.forceMoveMarkers)}const e=[];this._increaseVersionId();let t=i;for(let i=0,r=o.length;i<r;i++){const r=o[i],[a]=(0,c.W)(r.text);this._onDidChangeDecorations.fire();const l=r.range.startLineNumber,h=r.range.endLineNumber,u=h-l,g=a,f=Math.min(u,g),p=g-u,m=s-t-p+l,k=m,_=m+g,b=this._decorationsTree.getInjectedTextInInterval(this,this.getOffsetAt(new d.y(k,1)),this.getOffsetAt(new d.y(_,this.getLineMaxColumn(_))),0),C=dt.uK.fromDecorations(b),v=new n.j3(C);for(let t=f;t>=0;t--){const i=l+t,n=m+t;v.takeFromEndWhile((e=>e.lineNumber>n));const r=v.takeFromEndWhile((e=>e.lineNumber===n));e.push(new dt.U0(i,this.getLineContent(n),r))}if(f<u){const t=l+f;e.push(new dt.E$(t+1,h))}if(f<g){const i=new n.j3(C),r=l+f,o=g-f,a=s-t-o+r+1,h=[],c=[];for(let e=0;e<o;e++){const t=a+e;c[e]=this.getLineContent(t),i.takeWhile((e=>e.lineNumber<t)),h[e]=i.takeWhile((e=>e.lineNumber===t))}e.push(new dt.bg(r+1,l+g,c,h))}t+=p}this._emitContentChangedEvent(new dt.HP(e,this.getVersionId(),this._isUndoing,this._isRedoing),{changes:o,eol:this._buffer.getEOL(),versionId:this.getVersionId(),isUndoing:this._isUndoing,isRedoing:this._isRedoing,isFlush:!1})}return null===r.reverseEdits?void 0:r.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){if(null===e||0===e.size)return;const t=Array.from(e).map((e=>new dt.U0(e,this.getLineContent(e),this._getInjectedTextInLine(e))));this._onDidChangeInjectedText.fire(new dt.vn(t))}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:(e,t)=>{this._changeDecorationImpl(e,t)},changeDecorationOptions:(e,t)=>{this._changeDecorationOptionsImpl(e,Mt(t))},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(r){(0,s.dz)(r)}return i.addDecoration=Ct,i.changeDecoration=Ct,i.changeDecorationOptions=Ct,i.removeDecoration=Ct,i.deltaDecorations=Ct,n}deltaDecorations(e,t,i=0){if(this._assertNotDisposed(),e||(e=[]),0===e.length&&0===t.length)return[];try{return this._deltaDecorationCallCnt++,this._deltaDecorationCallCnt,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:Ot[i]}])[0]:null;if(!t)return this._decorationsTree.delete(n),delete this._decorations[n.id],null;const r=this._validateRangeRelaxedNoAllocations(t),s=this._buffer.getOffsetAt(r.startLineNumber,r.startColumn),o=this._buffer.getOffsetAt(r.endLineNumber,r.endColumn);return this._decorationsTree.delete(n),n.reset(this.getVersionId(),s,o,r),n.setOptions(Ot[i]),this._decorationsTree.insert(n),n.id}removeAllDecorationsWithOwnerId(e){if(this._isDisposed)return;const t=this._decorationsTree.collectNodesFromOwner(e);for(let i=0,n=t.length;i<n;i++){const e=t[i];this._decorationsTree.delete(e),delete this._decorations[e.id]}}getDecorationOptions(e){const t=this._decorations[e];return t?t.options:null}getDecorationRange(e){const t=this._decorations[e];return t?this._decorationsTree.getNodeRange(this,t):null}getLineDecorations(e,t=0,i=!1){return e<1||e>this.getLineCount()?[]:this.getLinesDecorations(e,e,t,i)}getLinesDecorations(e,t,i=0,r=!1){const s=this.getLineCount(),o=Math.min(s,Math.max(1,e)),a=Math.min(s,Math.max(1,t)),l=this.getLineMaxColumn(a),h=new g.Q(o,1,a,l),c=this._getDecorationsInRange(h,i,r);return(0,n.E4)(c,this._decorationProvider.getDecorationsInRange(h,i,r)),c}getDecorationsInRange(e,t=0,i=!1){const r=this.validateRange(e),s=this._getDecorationsInRange(r,t,i);return(0,n.E4)(s,this._decorationProvider.getDecorationsInRange(r,t,i)),s}getOverviewRulerDecorations(e=0,t=!1){return this._decorationsTree.getAll(this,e,t,!0)}getInjectedTextDecorations(e=0){return this._decorationsTree.getAllInjectedText(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 dt.uK.fromDecorations(n).filter((t=>t.lineNumber===e))}getAllDecorations(e=0,t=!1){let i=this._decorationsTree.getAll(this,e,t,!1);return i=i.concat(this._decorationProvider.getAllDecorations(e,t)),i}_getDecorationsInRange(e,t,i){const n=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),r=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);return this._decorationsTree.getAllInInterval(this,n,r,t,i)}getRangeAt(e,t){return this._buffer.getRangeAt(e,t-e)}_changeDecorationImpl(e,t){const i=this._decorations[e];if(!i)return;if(i.options.after){const t=this.getDecorationRange(e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(t.endLineNumber)}if(i.options.before){const t=this.getDecorationRange(e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(t.startLineNumber)}const n=this._validateRangeRelaxedNoAllocations(t),r=this._buffer.getOffsetAt(n.startLineNumber,n.startColumn),s=this._buffer.getOffsetAt(n.endLineNumber,n.endColumn);this._decorationsTree.delete(i),i.reset(this.getVersionId(),r,s,n),this._decorationsTree.insert(i),this._onDidChangeDecorations.checkAffectedAndFire(i.options),i.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(n.endLineNumber),i.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(n.startLineNumber)}_changeDecorationOptionsImpl(e,t){const i=this._decorations[e];if(!i)return;const n=!(!i.options.overviewRuler||!i.options.overviewRuler.color),r=!(!t.overviewRuler||!t.overviewRuler.color);if(this._onDidChangeDecorations.checkAffectedAndFire(i.options),this._onDidChangeDecorations.checkAffectedAndFire(t),i.options.after||t.after){const e=this._decorationsTree.getNodeRange(this,i);this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.endLineNumber)}if(i.options.before||t.before){const e=this._decorationsTree.getNodeRange(this,i);this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.startLineNumber)}n!==r?(this._decorationsTree.delete(i),i.setOptions(t),this._decorationsTree.insert(i)):i.setOptions(t)}_deltaDecorationsImpl(e,t,i){const n=this.getVersionId(),r=t.length;let s=0;const o=i.length;let a=0;const l=new Array(o);for(;s<r||a<o;){let h=null;if(s<r){do{h=this._decorations[t[s++]]}while(!h&&s<r);if(h){if(h.options.after){const e=this._decorationsTree.getNodeRange(this,h);this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.endLineNumber)}if(h.options.before){const e=this._decorationsTree.getNodeRange(this,h);this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.startLineNumber)}this._decorationsTree.delete(h),this._onDidChangeDecorations.checkAffectedAndFire(h.options)}}if(a<o){if(!h){const e=++this._lastDecorationId,t=`${this._instanceId};${e}`;h=new ne(t,0,0),this._decorations[t]=h}const t=i[a],r=this._validateRangeRelaxedNoAllocations(t.range),s=Mt(t.options),o=this._buffer.getOffsetAt(r.startLineNumber,r.startColumn),c=this._buffer.getOffsetAt(r.endLineNumber,r.endColumn);h.ownerId=e,h.reset(n,o,c,r),h.setOptions(s),h.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(r.endLineNumber),h.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(r.startLineNumber),this._onDidChangeDecorations.checkAffectedAndFire(s),this._decorationsTree.insert(h),l[a]=h.id,a++}else h&&delete this._decorations[h.id]}return l}getLanguageId(){return this.tokenization.getLanguageId()}setMode(e){this.tokenization.setLanguageId(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 function(e){let t=0;for(const i of e){if(" "!==i&&"\t"!==i)break;t++}return t}(this.getLineContent(e))+1}};function yt(e){return!(!e.options.overviewRuler||!e.options.overviewRuler.color)}function wt(e){return!!e.options.after||!!e.options.before}vt.MODEL_SYNC_LIMIT=52428800,vt.LARGE_FILE_SIZE_THRESHOLD=20971520,vt.LARGE_FILE_LINE_COUNT_THRESHOLD=3e5,vt.DEFAULT_CREATION_OPTIONS={isForSimpleWidget:!1,tabSize:p.R.tabSize,indentSize:p.R.indentSize,insertSpaces:p.R.insertSpaces,detectIndentation:!1,defaultEOL:1,trimAutoWhitespace:p.R.trimAutoWhitespace,largeFileOptimizations:p.R.largeFileOptimizations,bracketPairColorizationOptions:p.R.bracketPairColorizationOptions},vt=ft([pt(4,gt.$D),pt(5,m.L),pt(6,k.JZ)],vt);class St{constructor(){this._decorationsTree0=new se,this._decorationsTree1=new se,this._injectedTextDecorationsTree=new se}ensureAllNodesHaveRanges(e){this.getAll(e,0,!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,r){const s=e.getVersionId(),o=this._intervalSearch(t,i,n,r,s);return this._ensureNodesHaveRanges(e,o)}_intervalSearch(e,t,i,n,r){const s=this._decorationsTree0.intervalSearch(e,t,i,n,r),o=this._decorationsTree1.intervalSearch(e,t,i,n,r),a=this._injectedTextDecorationsTree.intervalSearch(e,t,i,n,r);return s.concat(o).concat(a)}getInjectedTextInInterval(e,t,i,n){const r=e.getVersionId(),s=this._injectedTextDecorationsTree.intervalSearch(t,i,n,!1,r);return this._ensureNodesHaveRanges(e,s).filter((e=>e.options.showIfCollapsed||!e.range.isEmpty()))}getAllInjectedText(e,t){const i=e.getVersionId(),n=this._injectedTextDecorationsTree.search(t,!1,i);return this._ensureNodesHaveRanges(e,n).filter((e=>e.options.showIfCollapsed||!e.range.isEmpty()))}getAll(e,t,i,n){const r=e.getVersionId(),s=this._search(t,i,n,r);return this._ensureNodesHaveRanges(e,s)}_search(e,t,i,n){if(i)return this._decorationsTree1.search(e,t,n);{const i=this._decorationsTree0.search(e,t,n),r=this._decorationsTree1.search(e,t,n),s=this._injectedTextDecorationsTree.search(e,t,n);return i.concat(r).concat(s)}}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){wt(e)?this._injectedTextDecorationsTree.insert(e):yt(e)?this._decorationsTree1.insert(e):this._decorationsTree0.insert(e)}delete(e){wt(e)?this._injectedTextDecorationsTree.delete(e):yt(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){wt(e)?this._injectedTextDecorationsTree.resolveNode(e,t):yt(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 Lt(e){return e.replace(/[^a-z0-9\-_]/gi," ")}class xt{constructor(e){this.color=e.color||"",this.darkColor=e.darkColor||""}}class It extends xt{constructor(e){super(e),this._resolvedColor=null,this.position="number"===typeof e.position?e.position:_.A5.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 Dt extends xt{constructor(e){super(e),this.position=e.position}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?r.Q1.fromHex(e):t.getColor(e.id)}}class Tt{constructor(e){this.content=e.content||"",this.inlineClassName=e.inlineClassName||null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.attachedData=e.attachedData||null,this.cursorStops=e.cursorStops||null}static from(e){return e instanceof Tt?e:new Tt(e)}}class Et{constructor(e){var t,i;this.description=e.description,this.blockClassName=e.blockClassName?Lt(e.blockClassName):null,this.stickiness=e.stickiness||0,this.zIndex=e.zIndex||0,this.className=e.className?Lt(e.className):null,this.hoverMessage=e.hoverMessage||null,this.glyphMarginHoverMessage=e.glyphMarginHoverMessage||null,this.isWholeLine=e.isWholeLine||!1,this.showIfCollapsed=e.showIfCollapsed||!1,this.collapseOnReplaceEdit=e.collapseOnReplaceEdit||!1,this.overviewRuler=e.overviewRuler?new It(e.overviewRuler):null,this.minimap=e.minimap?new Dt(e.minimap):null,this.glyphMarginClassName=e.glyphMarginClassName?Lt(e.glyphMarginClassName):null,this.linesDecorationsClassName=e.linesDecorationsClassName?Lt(e.linesDecorationsClassName):null,this.firstLineDecorationClassName=e.firstLineDecorationClassName?Lt(e.firstLineDecorationClassName):null,this.marginClassName=e.marginClassName?Lt(e.marginClassName):null,this.inlineClassName=e.inlineClassName?Lt(e.inlineClassName):null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.beforeContentClassName=e.beforeContentClassName?Lt(e.beforeContentClassName):null,this.afterContentClassName=e.afterContentClassName?Lt(e.afterContentClassName):null,this.after=e.after?Tt.from(e.after):null,this.before=e.before?Tt.from(e.before):null,this.hideInCommentTokens=null!==(t=e.hideInCommentTokens)&&void 0!==t&&t,this.hideInStringTokens=null!==(i=e.hideInStringTokens)&&void 0!==i&&i}static register(e){return new Et(e)}static createDynamic(e){return new Et(e)}}Et.EMPTY=Et.register({description:"empty"});const Ot=[Et.register({description:"tracked-range-always-grows-when-typing-at-edges",stickiness:0}),Et.register({description:"tracked-range-never-grows-when-typing-at-edges",stickiness:1}),Et.register({description:"tracked-range-grows-only-when-typing-before",stickiness:2}),Et.register({description:"tracked-range-grows-only-when-typing-after",stickiness:3})];function Mt(e){return e instanceof Et?e:Et.createDynamic(e)}class Bt extends a.jG{constructor(e){super(),this.handleBeforeFire=e,this._actual=this._register(new o.vl),this.event=this._actual.event,this._affectedInjectedTextLines=null,this._deferredCnt=0,this._shouldFire=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(){var e;if(this._deferredCnt--,0===this._deferredCnt){if(this._shouldFire){this.handleBeforeFire(this._affectedInjectedTextLines);const e={affectsMinimap:this._affectsMinimap,affectsOverviewRuler:this._affectsOverviewRuler};this._shouldFire=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._actual.fire(e)}null===(e=this._affectedInjectedTextLines)||void 0===e||e.clear(),this._affectedInjectedTextLines=null}}recordLineAffectedByInjectedText(e){this._affectedInjectedTextLines||(this._affectedInjectedTextLines=new Set),this._affectedInjectedTextLines.add(e)}checkAffectedAndFire(e){this._affectsMinimap||(this._affectsMinimap=!(!e.minimap||!e.minimap.position)),this._affectsOverviewRuler||(this._affectsOverviewRuler=!(!e.overviewRuler||!e.overviewRuler.color)),this._shouldFire=!0}fire(){this._affectsMinimap=!0,this._affectsOverviewRuler=!0,this._shouldFire=!0}}class Nt extends a.jG{constructor(){super(),this._fastEmitter=this._register(new o.vl),this.fastEvent=this._fastEmitter.event,this._slowEmitter=this._register(new o.vl),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))}}},22519:(e,t,i)=>{i.d(t,{_:()=>r});var n=i(55808);class r extends n.jG{constructor(){super(...arguments),this._isDisposed=!1}dispose(){super.dispose(),this._isDisposed=!0}assertNotDisposed(){if(this._isDisposed)throw new Error("TextModelPart is disposed!")}}},91998:(e,t,i)=>{i.d(t,{W5:()=>g,dr:()=>h,hB:()=>u,lt:()=>l,wC:()=>d});var n=i(24638),r=i(97800),s=i(55547),o=i(62915),a=i(35065);class l{constructor(e,t,i,n){this.searchString=e,this.isRegex=t,this.matchCase=i,this.wordSeparators=n}parseSearchRequest(){if(""===this.searchString)return null;let e;e=this.isRegex?function(e){if(!e||0===e.length)return!1;for(let t=0,i=e.length;t<i;t++){const n=e.charCodeAt(t);if(10===n)return!0;if(92===n){if(t++,t>=i)break;const n=e.charCodeAt(t);if(110===n||114===n||87===n)return!0}}return!1}(this.searchString):this.searchString.indexOf("\n")>=0;let t=null;try{t=n.OS(this.searchString,this.isRegex,{matchCase:this.matchCase,wholeWord:!1,multiline:e,global:!0,unicode:!0})}catch(s){return null}if(!t)return null;let i=!this.isRegex&&!e;return i&&this.searchString.toLowerCase()!==this.searchString.toUpperCase()&&(i=this.matchCase),new a.L5(t,this.wordSeparators?(0,r.i)(this.wordSeparators):null,i?this.searchString:null)}}function h(e,t,i){if(!i)return new a.Dg(e,null);const n=[];for(let r=0,s=t.length;r<s;r++)n[r]=t[r];return new a.Dg(e,n)}class c{constructor(e){const t=[];let i=0;for(let n=0,r=e.length;n<r;n++)10===e.charCodeAt(n)&&(t[i++]=n);this._lineFeedsOffsets=t}findLineFeedCountBeforeOffset(e){const t=this._lineFeedsOffsets;let i=0,n=t.length-1;if(-1===n)return 0;if(e<=t[0])return 0;for(;i<n;){const r=i+((n-i)/2|0);t[r]>=e?n=r-1:t[r+1]>=e?(i=r,n=r):i=r+1}return i+1}}class u{static findMatches(e,t,i,n,r){const s=t.parseSearchRequest();return s?s.regex.multiline?this._doFindMatchesMultiline(e,i,new g(s.wordSeparators,s.regex),n,r):this._doFindMatchesLineByLine(e,i,s,n,r):[]}static _getMultilineMatchRange(e,t,i,n,r,s){let a,l,h=0;if(n?(h=n.findLineFeedCountBeforeOffset(r),a=t+r+h):a=t+r,n){const e=n.findLineFeedCountBeforeOffset(r+s.length)-h;l=a+s.length+e}else l=a+s.length;const c=e.getPositionAt(a),u=e.getPositionAt(l);return new o.Q(c.lineNumber,c.column,u.lineNumber,u.column)}static _doFindMatchesMultiline(e,t,i,n,r){const s=e.getOffsetAt(t.getStartPosition()),o=e.getValueInRange(t,1),a="\r\n"===e.getEOL()?new c(o):null,l=[];let u,d=0;for(i.reset(0);u=i.next(o);)if(l[d++]=h(this._getMultilineMatchRange(e,s,o,a,u.index,u[0]),u,n),d>=r)return l;return l}static _doFindMatchesLineByLine(e,t,i,n,r){const s=[];let o=0;if(t.startLineNumber===t.endLineNumber){const a=e.getLineContent(t.startLineNumber).substring(t.startColumn-1,t.endColumn-1);return o=this._findMatchesInLine(i,a,t.startLineNumber,t.startColumn-1,o,s,n,r),s}const a=e.getLineContent(t.startLineNumber).substring(t.startColumn-1);o=this._findMatchesInLine(i,a,t.startLineNumber,t.startColumn-1,o,s,n,r);for(let l=t.startLineNumber+1;l<t.endLineNumber&&o<r;l++)o=this._findMatchesInLine(i,e.getLineContent(l),l,0,o,s,n,r);if(o<r){const a=e.getLineContent(t.endLineNumber).substring(0,t.endColumn-1);o=this._findMatchesInLine(i,a,t.endLineNumber,0,o,s,n,r)}return s}static _findMatchesInLine(e,t,i,n,r,s,l,c){const u=e.wordSeparators;if(!l&&e.simpleSearch){const l=e.simpleSearch,h=l.length,g=t.length;let f=-h;for(;-1!==(f=t.indexOf(l,f+h));)if((!u||d(u,t,g,f,h))&&(s[r++]=new a.Dg(new o.Q(i,f+1+n,i,f+1+h+n),null),r>=c))return r;return r}const f=new g(e.wordSeparators,e.regex);let p;f.reset(0);do{if(p=f.next(t),p&&(s[r++]=h(new o.Q(i,p.index+1+n,i,p.index+1+p[0].length+n),p,l),r>=c))return r}while(p);return r}static findNextMatch(e,t,i,n){const r=t.parseSearchRequest();if(!r)return null;const s=new g(r.wordSeparators,r.regex);return r.regex.multiline?this._doFindNextMatchMultiline(e,i,s,n):this._doFindNextMatchLineByLine(e,i,s,n)}static _doFindNextMatchMultiline(e,t,i,n){const r=new s.y(t.lineNumber,1),a=e.getOffsetAt(r),l=e.getLineCount(),u=e.getValueInRange(new o.Q(r.lineNumber,r.column,l,e.getLineMaxColumn(l)),1),d="\r\n"===e.getEOL()?new c(u):null;i.reset(t.column-1);const g=i.next(u);return g?h(this._getMultilineMatchRange(e,a,u,d,g.index,g[0]),g,n):1!==t.lineNumber||1!==t.column?this._doFindNextMatchMultiline(e,new s.y(1,1),i,n):null}static _doFindNextMatchLineByLine(e,t,i,n){const r=e.getLineCount(),s=t.lineNumber,o=e.getLineContent(s),a=this._findFirstMatchInLine(i,o,s,t.column,n);if(a)return a;for(let l=1;l<=r;l++){const t=(s+l-1)%r,o=e.getLineContent(t+1),a=this._findFirstMatchInLine(i,o,t+1,1,n);if(a)return a}return null}static _findFirstMatchInLine(e,t,i,n,r){e.reset(n-1);const s=e.next(t);return s?h(new o.Q(i,s.index+1,i,s.index+1+s[0].length),s,r):null}static findPreviousMatch(e,t,i,n){const r=t.parseSearchRequest();if(!r)return null;const s=new g(r.wordSeparators,r.regex);return r.regex.multiline?this._doFindPreviousMatchMultiline(e,i,s,n):this._doFindPreviousMatchLineByLine(e,i,s,n)}static _doFindPreviousMatchMultiline(e,t,i,n){const r=this._doFindMatchesMultiline(e,new o.Q(1,1,t.lineNumber,t.column),i,n,9990);if(r.length>0)return r[r.length-1];const a=e.getLineCount();return t.lineNumber!==a||t.column!==e.getLineMaxColumn(a)?this._doFindPreviousMatchMultiline(e,new s.y(a,e.getLineMaxColumn(a)),i,n):null}static _doFindPreviousMatchLineByLine(e,t,i,n){const r=e.getLineCount(),s=t.lineNumber,o=e.getLineContent(s).substring(0,t.column-1),a=this._findLastMatchInLine(i,o,s,n);if(a)return a;for(let l=1;l<=r;l++){const t=(r+s-l-1)%r,o=e.getLineContent(t+1),a=this._findLastMatchInLine(i,o,t+1,n);if(a)return a}return null}static _findLastMatchInLine(e,t,i,n){let r,s=null;for(e.reset(0);r=e.next(t);)s=h(new o.Q(i,r.index+1,i,r.index+1+r[0].length),r,n);return s}}function d(e,t,i,n,r){return function(e,t,i,n,r){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(r>0){const i=t.charCodeAt(n);if(0!==e.get(i))return!0}return!1}(e,t,0,n,r)&&function(e,t,i,n,r){if(n+r===i)return!0;const s=t.charCodeAt(n+r);if(0!==e.get(s))return!0;if(13===s||10===s)return!0;if(r>0){const i=t.charCodeAt(n+r-1);if(0!==e.get(i))return!0}return!1}(e,t,i,n,r)}class g{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 r=i.index,s=i[0].length;if(r===this._prevMatchStartIndex&&s===this._prevMatchLength){if(0===s){n.Z5(e,t,this._searchRegex.lastIndex)>65535?this._searchRegex.lastIndex+=2:this._searchRegex.lastIndex+=1;continue}return null}if(this._prevMatchStartIndex=r,this._prevMatchLength=s,!this._wordSeparators||d(this._wordSeparators,e,t,r,s))return i}while(i);return null}}},62579:(e,t,i)=>{function n(e,t){let i=0,n=0;const r=e.length;for(;n<r;){const r=e.charCodeAt(n);if(32===r)i++;else{if(9!==r)break;i=i-i%t+t}n++}return n===r?-1:i}i.d(t,{G:()=>n})},85981:(e,t,i)=>{i.d(t,{r:()=>g});var n=i(69549),r=i(42464),s=i(45325),o=i(65698),a=i(55547),l=i(62915),h=i(85376),c=i(43178),u=i(36221);class d{static chord(e,t){return(0,s.m5)(e,t)}}function g(){return{editor:void 0,languages:void 0,CancellationTokenSource:n.Q,Emitter:r.vl,KeyCode:u.DD,KeyMod:d,Position:a.y,Range:l.Q,Selection:h.L,SelectionDirection:u.SB,MarkerSeverity:u.cj,MarkerTag:u.d_,Uri:o.r,Token:c.ou}}d.CtrlCmd=2048,d.Shift=1024,d.Alt=512,d.WinCtrl=256},87594:(e,t,i)=>{i.d(t,{w:()=>n});const n=(0,i(34029).u1)("editorWorkerService")},92278:(e,t,i)=>{i.d(t,{nZ:()=>w,aw:()=>b,WG:()=>v,br:()=>_,BB:()=>p,yS:()=>m});var n=i(69549),r=i(75909),s=i(65698),o=i(19724),a=i(16281),l=i(59713),h=i(52756),c=i(55977);function u(e){const t=new Uint32Array(function(e){let t=0;if(t+=2,"full"===e.type)t+=1+e.data.length;else{t+=1,t+=3*e.deltas.length;for(const i of e.deltas)i.data&&(t+=i.data.length)}return t}(e));let i=0;if(t[i++]=e.id,"full"===e.type)t[i++]=1,t[i++]=e.data.length,t.set(e.data,i),i+=e.data.length;else{t[i++]=2,t[i++]=e.deltas.length;for(const n of e.deltas)t[i++]=n.start,t[i++]=n.deleteCount,n.data?(t[i++]=n.data.length,t.set(n.data,i),i+=n.data.length):t[i++]=0}return function(e){const t=new Uint8Array(e.buffer,e.byteOffset,4*e.length);return c.cm()||function(e){for(let t=0,i=e.length;t<i;t+=4){const i=e[t+0],n=e[t+1],r=e[t+2],s=e[t+3];e[t+0]=s,e[t+1]=r,e[t+2]=n,e[t+3]=i}}(t),h.MB.wrap(t)}(t)}var d=i(62915),g=i(34876),f=function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{l(n.next(e))}catch(t){s(t)}}function a(e){try{l(n.throw(e))}catch(t){s(t)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(o,a)}l((n=n.apply(e,t||[])).next())}))};function p(e){return e&&!!e.data}function m(e){return e&&Array.isArray(e.edits)}class k{constructor(e,t,i){this.provider=e,this.tokens=t,this.error=i}}function _(e,t){return e.has(t)}function b(e,t,i,n,r){return f(this,void 0,void 0,(function*(){const s=function(e,t){const i=e.orderedGroups(t);return i.length>0?i[0]:[]}(e,t),o=yield Promise.all(s.map((e=>f(this,void 0,void 0,(function*(){let s,o=null;try{s=yield e.provideDocumentSemanticTokens(t,e===i?n:null,r)}catch(a){o=a,s=null}return s&&(p(s)||m(s))||(s=null),new k(e,s,o)})))));for(const e of o){if(e.error)throw e.error;if(e.tokens)return e}return o.length>0?o[0]:null}))}class C{constructor(e,t){this.provider=e,this.tokens=t}}function v(e,t){return e.has(t)}function y(e,t){const i=e.orderedGroups(t);return i.length>0?i[0]:[]}function w(e,t,i,n){return f(this,void 0,void 0,(function*(){const s=y(e,t),o=yield Promise.all(s.map((e=>f(this,void 0,void 0,(function*(){let s;try{s=yield e.provideDocumentRangeSemanticTokens(t,i,n)}catch(o){(0,r.M_)(o),s=null}return s&&p(s)||(s=null),new C(e,s)})))));for(const e of o)if(e.tokens)return e;return o.length>0?o[0]:null}))}a.wb.registerCommand("_provideDocumentSemanticTokensLegend",((e,...t)=>f(void 0,void 0,void 0,(function*(){const[i]=t;(0,l.j)(i instanceof s.r);const n=e.get(o.S).getModel(i);if(!n)return;const{documentSemanticTokensProvider:r}=e.get(g.u),h=function(e,t){const i=e.orderedGroups(t);return i.length>0?i[0]:null}(r,n);return h?h[0].getLegend():e.get(a.wT).executeCommand("_provideDocumentRangeSemanticTokensLegend",i)})))),a.wb.registerCommand("_provideDocumentSemanticTokens",((e,...t)=>f(void 0,void 0,void 0,(function*(){const[i]=t;(0,l.j)(i instanceof s.r);const r=e.get(o.S).getModel(i);if(!r)return;const{documentSemanticTokensProvider:h}=e.get(g.u);if(!_(h,r))return e.get(a.wT).executeCommand("_provideDocumentRangeSemanticTokens",i,r.getFullModelRange());const c=yield b(h,r,null,null,n.X.None);if(!c)return;const{provider:d,tokens:f}=c;if(!f||!p(f))return;const m=u({id:0,type:"full",data:f.data});return f.resultId&&d.releaseDocumentSemanticTokens(f.resultId),m})))),a.wb.registerCommand("_provideDocumentRangeSemanticTokensLegend",((e,...t)=>f(void 0,void 0,void 0,(function*(){const[i,r]=t;(0,l.j)(i instanceof s.r);const a=e.get(o.S).getModel(i);if(!a)return;const{documentRangeSemanticTokensProvider:h}=e.get(g.u),c=y(h,a);if(0===c.length)return;if(1===c.length)return c[0].getLegend();if(!r||!d.Q.isIRange(r))return c[0].getLegend();const u=yield w(h,a,d.Q.lift(r),n.X.None);return u?u.provider.getLegend():void 0})))),a.wb.registerCommand("_provideDocumentRangeSemanticTokens",((e,...t)=>f(void 0,void 0,void 0,(function*(){const[i,r]=t;(0,l.j)(i instanceof s.r),(0,l.j)(d.Q.isIRange(r));const a=e.get(o.S).getModel(i);if(!a)return;const{documentRangeSemanticTokensProvider:h}=e.get(g.u),c=yield w(h,a,d.Q.lift(r),n.X.None);return c&&c.tokens?u({id:0,type:"full",data:c.tokens.data}):void 0}))))},40098:(e,t,i)=>{i.d(t,{U:()=>d});var n=i(72302),r=i(14094),s=i(89142),o=i(62848),a=i(34029),l=i(91823),h=i(46025),c=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},u=function(e,t){return function(i,n){t(i,n,e)}};const d=(0,a.u1)("ILanguageFeatureDebounceService");var g;!function(e){const t=new WeakMap;let i=0;e.of=function(e){let n=t.get(e);return void 0===n&&(n=++i,t.set(e,n)),n}}(g||(g={}));class f{constructor(e,t,i,n,s,o){this._logService=e,this._name=t,this._registry=i,this._default=n,this._min=s,this._max=o,this._cache=new r.qK(50,.7)}_key(e){return e.id+this._registry.all(e).reduce(((e,t)=>(0,n.sN)(g.of(t),e)),0)}get(e){const t=this._key(e),i=this._cache.get(t);return i?(0,s.qE)(i.value,this._min,this._max):this.default()}update(e,t){const i=this._key(e);let n=this._cache.get(i);n||(n=new s.mu(6),this._cache.set(i,n));const r=(0,s.qE)(n.update(t),this._min,this._max);return(0,h.v$)(e.uri,"output")||this._logService.trace(`[DEBOUNCE: ${this._name}] for ${e.uri.toString()} is ${r}ms`),r}_overall(){const e=new s.Uq;for(const[,t]of this._cache)e.update(t.value);return e.value}default(){const e=0|this._overall()||this._default;return(0,s.qE)(e,this._min,this._max)}}let p=class{constructor(e){this._logService=e,this._data=new Map}for(e,t,i){var n,r,s;const o=null!==(n=null===i||void 0===i?void 0:i.min)&&void 0!==n?n:50,a=null!==(r=null===i||void 0===i?void 0:i.max)&&void 0!==r?r:Math.pow(o,2),l=null!==(s=null===i||void 0===i?void 0:i.key)&&void 0!==s?s:void 0,h=`${g.of(e)},${o}${l?","+l:""}`;let c=this._data.get(h);return c||(c=new f(this._logService,t,e,0|this._overallAverage()||1.5*o,o,a),this._data.set(h,c)),c}_overallAverage(){const e=new s.Uq;for(const t of this._data.values())e.update(t.default());return e.value}};p=c([u(0,l.rr)],p),(0,o.v)(d,p,!0)},34876:(e,t,i)=>{i.d(t,{u:()=>n});const n=(0,i(34029).u1)("ILanguageFeaturesService")},61873:(e,t,i)=>{var n=i(42464),r=i(55808),s=i(35065),o=i(50892),a=i(72142);function l(e,t,i,n,r,s){if(Array.isArray(e)){let o=0;for(const a of e){const e=l(a,t,i,n,r,s);if(10===e)return e;e>o&&(o=e)}return o}if("string"===typeof e)return n?"*"===e?5:e===i?10:0:0;if(e){const{language:l,pattern:h,scheme:c,hasAccessToAllModels:u,notebookType:d}=e;if(!n&&!u)return 0;d&&r&&(t=r);let g=0;if(c)if(c===t.scheme)g=10;else{if("*"!==c)return 0;g=5}if(l)if(l===i)g=10;else{if("*"!==l)return 0;g=Math.max(g,5)}if(d)if(d===s)g=10;else{if("*"!==d||void 0===s)return 0;g=Math.max(g,5)}if(h){let e;if(e="string"===typeof h?h:Object.assign(Object.assign({},h),{base:(0,a.S8)(h.base)}),e!==t.fsPath&&!(0,o.YW)(e,t.fsPath))return 0;g=10}return g}return 0}function h(e){return"string"!==typeof e&&(Array.isArray(e)?e.every(h):!!e.exclusive)}class c{constructor(e,t,i,n){this.uri=e,this.languageId=t,this.notebookUri=i,this.notebookType=n}equals(e){var t,i;return this.notebookType===e.notebookType&&this.languageId===e.languageId&&this.uri.toString()===e.uri.toString()&&(null===(t=this.notebookUri)||void 0===t?void 0:t.toString())===(null===(i=e.notebookUri)||void 0===i?void 0:i.toString())}}class u{constructor(e){this._notebookInfoResolver=e,this._clock=0,this._entries=[],this._onDidChange=new n.vl,this.onDidChange=this._onDidChange.event}register(e,t){let i={selector:e,provider:t,_score:-1,_time:this._clock++};return this._entries.push(i),this._lastCandidate=void 0,this._onDidChange.fire(this._entries.length),(0,r.s)((()=>{if(i){const e=this._entries.indexOf(i);e>=0&&(this._entries.splice(e,1),this._lastCandidate=void 0,this._onDidChange.fire(this._entries.length),i=void 0)}}))}has(e){return this.all(e).length>0}all(e){if(!e)return[];this._updateScores(e);const t=[];for(const i of this._entries)i._score>0&&t.push(i.provider);return t}ordered(e){const t=[];return this._orderedForEach(e,(e=>t.push(e.provider))),t}orderedGroups(e){const t=[];let i,n;return this._orderedForEach(e,(e=>{i&&n===e._score?i.push(e.provider):(n=e._score,i=[e.provider],t.push(i))})),t}_orderedForEach(e,t){this._updateScores(e);for(const i of this._entries)i._score>0&&t(i)}_updateScores(e){var t,i;const n=null===(t=this._notebookInfoResolver)||void 0===t?void 0:t.call(this,e.uri),r=n?new c(e.uri,e.getLanguageId(),n.uri,n.type):new c(e.uri,e.getLanguageId(),void 0,void 0);if(!(null===(i=this._lastCandidate)||void 0===i?void 0:i.equals(r))){this._lastCandidate=r;for(const t of this._entries)if(t._score=l(t.selector,r.uri,r.languageId,(0,s.vd)(e),r.notebookUri,r.notebookType),h(t.selector)&&t._score>0){for(const e of this._entries)e._score=0;t._score=1e3;break}this._entries.sort(u._compareByScoreAndTime)}}static _compareByScoreAndTime(e,t){return e._score<t._score?1:e._score>t._score?-1:e._time<t._time?1:e._time>t._time?-1:0}}var d=i(34876),g=i(62848);(0,g.v)(d.u,class{constructor(){this.referenceProvider=new u(this._score.bind(this)),this.renameProvider=new u(this._score.bind(this)),this.codeActionProvider=new u(this._score.bind(this)),this.definitionProvider=new u(this._score.bind(this)),this.typeDefinitionProvider=new u(this._score.bind(this)),this.declarationProvider=new u(this._score.bind(this)),this.implementationProvider=new u(this._score.bind(this)),this.documentSymbolProvider=new u(this._score.bind(this)),this.inlayHintsProvider=new u(this._score.bind(this)),this.colorProvider=new u(this._score.bind(this)),this.codeLensProvider=new u(this._score.bind(this)),this.documentFormattingEditProvider=new u(this._score.bind(this)),this.documentRangeFormattingEditProvider=new u(this._score.bind(this)),this.onTypeFormattingEditProvider=new u(this._score.bind(this)),this.signatureHelpProvider=new u(this._score.bind(this)),this.hoverProvider=new u(this._score.bind(this)),this.documentHighlightProvider=new u(this._score.bind(this)),this.selectionRangeProvider=new u(this._score.bind(this)),this.foldingRangeProvider=new u(this._score.bind(this)),this.linkProvider=new u(this._score.bind(this)),this.inlineCompletionsProvider=new u(this._score.bind(this)),this.completionProvider=new u(this._score.bind(this)),this.linkedEditingRangeProvider=new u(this._score.bind(this)),this.documentRangeSemanticTokensProvider=new u(this._score.bind(this)),this.documentSemanticTokensProvider=new u(this._score.bind(this)),this.documentOnDropEditProvider=new u(this._score.bind(this)),this.documentPasteEditProvider=new u(this._score.bind(this))}_score(e){var t;return null===(t=this._notebookTypeResolver)||void 0===t?void 0:t.call(this,e)}},!0)},94411:(e,t,i)=>{i.d(t,{g:()=>I});var n=i(42464),r=i(55808),s=i(75909),o=i(24638),a=i(50892),l=i(21298),h=i(46442),c=i(72142),u=i(1273),d=i(75303);let g=[],f=[],p=[];function m(e,t=!1){!function(e,t,i){const n=function(e,t){return{id:e.id,mime:e.mime,filename:e.filename,extension:e.extension,filepattern:e.filepattern,firstline:e.firstline,userConfigured:t,filenameLowercase:e.filename?e.filename.toLowerCase():void 0,extensionLowercase:e.extension?e.extension.toLowerCase():void 0,filepatternLowercase:e.filepattern?(0,a.qg)(e.filepattern.toLowerCase()):void 0,filepatternOnPath:!!e.filepattern&&e.filepattern.indexOf(c.SA.sep)>=0}}(e,t);g.push(n),n.userConfigured?p.push(n):f.push(n);i&&!n.userConfigured&&g.forEach((e=>{e.mime===n.mime||e.userConfigured||(n.extension&&(e.extension,n.extension),n.filename&&(e.filename,n.filename),n.filepattern&&(e.filepattern,n.filepattern),n.firstline&&(e.firstline,n.firstline))}))}(e,!1,t)}function k(e,t){return function(e,t){let i;if(e)switch(e.scheme){case h.ny.file:i=e.fsPath;break;case h.ny.data:i=u.B6.parseMetaData(e).get(u.B6.META_DATA_LABEL);break;case h.ny.vscodeNotebookCell:i=void 0;break;default:i=e.path}if(!i)return[{id:"unknown",mime:l.K.unknown}];i=i.toLowerCase();const n=(0,c.P8)(i),r=_(i,n,p);if(r)return[r,{id:d.vH,mime:l.K.text}];const s=_(i,n,f);if(s)return[s,{id:d.vH,mime:l.K.text}];if(t){const e=function(e){(0,o.LU)(e)&&(e=e.substr(1));if(e.length>0)for(let t=g.length-1;t>=0;t--){const i=g[t];if(!i.firstline)continue;const n=e.match(i.firstline);if(n&&n.length>0)return i}return}(t);if(e)return[e,{id:d.vH,mime:l.K.text}]}return[{id:"unknown",mime:l.K.unknown}]}(e,t).map((e=>e.id))}function _(e,t,i){var n;let r,s,o;for(let a=i.length-1;a>=0;a--){const l=i[a];if(t===l.filenameLowercase){r=l;break}if(l.filepattern&&(!s||l.filepattern.length>s.filepattern.length)){const i=l.filepatternOnPath?e:t;(null===(n=l.filepatternLowercase)||void 0===n?void 0:n.call(l,i))&&(s=l)}l.extension&&(!o||l.extension.length>o.extension.length)&&t.endsWith(l.extensionLowercase)&&(o=l)}return r||(s||(o||void 0))}var b=i(11332),C=i(1097);const v=Object.prototype.hasOwnProperty,y="vs.editor.nullLanguage";class w{constructor(){this._languageIdToLanguage=[],this._languageToLanguageId=new Map,this._register(y,0),this._register(d.vH,1),this._nextLanguageId=2}_register(e,t){this._languageIdToLanguage[t]=e,this._languageToLanguageId.set(e,t)}register(e){if(this._languageToLanguageId.has(e))return;const t=this._nextLanguageId++;this._register(e,t)}encodeLanguageId(e){return this._languageToLanguageId.get(e)||0}decodeLanguageId(e){return this._languageIdToLanguage[e]||y}}class S extends r.jG{constructor(e=!0,t=!1){super(),this._onDidChange=this._register(new n.vl),this.onDidChange=this._onDidChange.event,S.instanceCount++,this._warnOnOverwrite=t,this.languageIdCodec=new w,this._dynamicLanguages=[],this._languages={},this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},e&&(this._initializeFromRegistry(),this._register(d.W6.onDidChangeLanguages((e=>{this._initializeFromRegistry()}))))}dispose(){S.instanceCount--,super.dispose()}_initializeFromRegistry(){this._languages={},this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},g=g.filter((e=>e.userConfigured)),f=[];const e=[].concat(d.W6.getLanguages()).concat(this._dynamicLanguages);this._registerLanguages(e)}_registerLanguages(e){for(const t of e)this._registerLanguage(t);this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},Object.keys(this._languages).forEach((e=>{const t=this._languages[e];t.name&&(this._nameMap[t.name]=t.identifier),t.aliases.forEach((e=>{this._lowercaseNameMap[e.toLowerCase()]=t.identifier})),t.mimetypes.forEach((e=>{this._mimeTypesMap[e]=t.identifier}))})),C.O.as(b.Fd.Configuration).registerOverrideIdentifiers(this.getRegisteredLanguageIds()),this._onDidChange.fire()}_registerLanguage(e){const t=e.id;let i;v.call(this._languages,t)?i=this._languages[t]:(this.languageIdCodec.register(t),i={identifier:t,name:null,mimetypes:[],aliases:[],extensions:[],filenames:[],configurationFiles:[],icons:[]},this._languages[t]=i),this._mergeLanguage(i,e)}_mergeLanguage(e,t){const i=t.id;let n=null;if(Array.isArray(t.mimetypes)&&t.mimetypes.length>0&&(e.mimetypes.push(...t.mimetypes),n=t.mimetypes[0]),n||(n=`text/x-${i}`,e.mimetypes.push(n)),Array.isArray(t.extensions)){t.configuration?e.extensions=t.extensions.concat(e.extensions):e.extensions=e.extensions.concat(t.extensions);for(const e of t.extensions)m({id:i,mime:n,extension:e},this._warnOnOverwrite)}if(Array.isArray(t.filenames))for(const s of t.filenames)m({id:i,mime:n,filename:s},this._warnOnOverwrite),e.filenames.push(s);if(Array.isArray(t.filenamePatterns))for(const s of t.filenamePatterns)m({id:i,mime:n,filepattern:s},this._warnOnOverwrite);if("string"===typeof t.firstLine&&t.firstLine.length>0){let e=t.firstLine;"^"!==e.charAt(0)&&(e="^"+e);try{const t=new RegExp(e);(0,o.eY)(t)||m({id:i,mime:n,firstline:t},this._warnOnOverwrite)}catch(l){(0,s.dz)(l)}}e.aliases.push(i);let r=null;if("undefined"!==typeof t.aliases&&Array.isArray(t.aliases)&&(r=0===t.aliases.length?[null]:t.aliases),null!==r)for(const s of r)s&&0!==s.length&&e.aliases.push(s);const a=null!==r&&r.length>0;if(a&&null===r[0]);else{const t=(a?r[0]:null)||i;!a&&e.name||(e.name=t)}t.configuration&&e.configurationFiles.push(t.configuration),t.icon&&e.icons.push(t.icon)}isRegisteredLanguageId(e){return!!e&&v.call(this._languages,e)}getRegisteredLanguageIds(){return Object.keys(this._languages)}getLanguageIdByLanguageName(e){const t=e.toLowerCase();return v.call(this._lowercaseNameMap,t)?this._lowercaseNameMap[t]:null}getLanguageIdByMimeType(e){return e&&v.call(this._mimeTypesMap,e)?this._mimeTypesMap[e]:null}guessLanguageIdByFilepathOrFirstLine(e,t){return e||t?k(e,t):[]}}S.instanceCount=0;var L=i(48640),x=i(43178);class I extends r.jG{constructor(e=!1){super(),this._onDidEncounterLanguage=this._register(new n.vl),this.onDidEncounterLanguage=this._onDidEncounterLanguage.event,this._onDidChange=this._register(new n.vl({leakWarningThreshold:200})),this.onDidChange=this._onDidChange.event,I.instanceCount++,this._encounteredLanguages=new Set,this._registry=this._register(new S(!0,e)),this.languageIdCodec=this._registry.languageIdCodec,this._register(this._registry.onDidChange((()=>this._onDidChange.fire())))}dispose(){I.instanceCount--,super.dispose()}isRegisteredLanguageId(e){return this._registry.isRegisteredLanguageId(e)}getLanguageIdByLanguageName(e){return this._registry.getLanguageIdByLanguageName(e)}getLanguageIdByMimeType(e){return this._registry.getLanguageIdByMimeType(e)}guessLanguageIdByFilepathOrFirstLine(e,t){const i=this._registry.guessLanguageIdByFilepathOrFirstLine(e,t);return(0,L.Fy)(i,null)}createById(e){return new D(this.onDidChange,(()=>this._createAndGetLanguageIdentifier(e)))}createByFilepathOrFirstLine(e,t){return new D(this.onDidChange,(()=>{const i=this.guessLanguageIdByFilepathOrFirstLine(e,t);return this._createAndGetLanguageIdentifier(i)}))}_createAndGetLanguageIdentifier(e){return e&&this.isRegisteredLanguageId(e)||(e=d.vH),this._encounteredLanguages.has(e)||(this._encounteredLanguages.add(e),x.dG.getOrCreate(e),this._onDidEncounterLanguage.fire(e)),e}}I.instanceCount=0;class D{constructor(e,t){this._onDidChangeLanguages=e,this._selector=t,this._listener=null,this._emitter=null,this.languageId=this._selector()}_dispose(){this._listener&&(this._listener.dispose(),this._listener=null),this._emitter&&(this._emitter.dispose(),this._emitter=null)}get onDidChange(){return this._listener||(this._listener=this._onDidChangeLanguages((()=>this._evaluate()))),this._emitter||(this._emitter=new n.vl({onLastListenerRemove:()=>{this._dispose()}})),this._emitter.event}_evaluate(){var e;const t=this._selector();t!==this.languageId&&(this.languageId=t,null===(e=this._emitter)||void 0===e||e.fire(this.languageId))}}},90324:(e,t,i)=>{i.d(t,{A:()=>n});const n=(0,i(34029).u1)("markerDecorationsService")},76237:(e,t,i)=>{i.d(t,{D:()=>k});var n=i(40145),r=i(55808),s=i(35065),o=i(16974),a=i(22041),l=i(19724),h=i(62915),c=i(46442),u=i(42464),d=i(44824),g=i(14094),f=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},p=function(e,t){return function(i,n){t(i,n,e)}};class m extends r.jG{constructor(e){super(),this.model=e,this._markersData=new Map,this._register((0,r.s)((()=>{this.model.deltaDecorations([...this._markersData.keys()],[]),this._markersData.clear()})))}update(e,t){const i=[...this._markersData.keys()];this._markersData.clear();const n=this.model.deltaDecorations(i,t);for(let r=0;r<n.length;r++)this._markersData.set(n[r],e[r]);return 0!==i.length||0!==n.length}getMarker(e){return this._markersData.get(e.id)}}let k=class extends r.jG{constructor(e,t){super(),this._markerService=t,this._onDidChangeMarker=this._register(new u.vl),this._markerDecorations=new g.fT,e.getModels().forEach((e=>this._onModelAdded(e))),this._register(e.onModelAdded(this._onModelAdded,this)),this._register(e.onModelRemoved(this._onModelRemoved,this)),this._register(this._markerService.onMarkerChanged(this._handleMarkerChange,this))}dispose(){super.dispose(),this._markerDecorations.forEach((e=>e.dispose())),this._markerDecorations.clear()}getMarker(e,t){const i=this._markerDecorations.get(e);return i&&i.getMarker(t)||null}_handleMarkerChange(e){e.forEach((e=>{const t=this._markerDecorations.get(e);t&&this._updateDecorations(t)}))}_onModelAdded(e){const t=new m(e);this._markerDecorations.set(e.uri,t),this._updateDecorations(t)}_onModelRemoved(e){var t;const i=this._markerDecorations.get(e.uri);i&&(i.dispose(),this._markerDecorations.delete(e.uri)),e.uri.scheme!==c.ny.inMemory&&e.uri.scheme!==c.ny.internal&&e.uri.scheme!==c.ny.vscode||null===(t=this._markerService)||void 0===t||t.read({resource:e.uri}).map((e=>e.owner)).forEach((t=>this._markerService.remove(t,[e.uri])))}_updateDecorations(e){const t=this._markerService.read({resource:e.model.uri,take:500}),i=t.map((t=>({range:this._createDecorationRange(e.model,t),options:this._createDecorationOption(t)})));e.update(t,i)&&this._onDidChangeMarker.fire(e.model)}_createDecorationRange(e,t){let i=h.Q.lift(t);if(t.severity!==n.cj.Hint||this._hasMarkerTag(t,1)||this._hasMarkerTag(t,2)||(i=i.setEndPosition(i.startLineNumber,i.startColumn+2)),i=e.validateRange(i),i.isEmpty()){const t=e.getLineLastNonWhitespaceColumn(i.startLineNumber)||e.getLineMaxColumn(i.startLineNumber);if(1===t||i.endColumn>=t)return i;const n=e.getWordAtPosition(i.getStartPosition());n&&(i=new h.Q(i.startLineNumber,n.startColumn,i.endLineNumber,n.endColumn))}else if(t.endColumn===Number.MAX_VALUE&&1===t.startColumn&&i.startLineNumber===i.endLineNumber){const n=e.getLineFirstNonWhitespaceColumn(t.startLineNumber);n<i.endColumn&&(i=new h.Q(i.startLineNumber,n,i.endLineNumber,i.endColumn),t.startColumn=n)}return i}_createDecorationOption(e){let t,i,r,l,h;switch(e.severity){case n.cj.Hint:t=this._hasMarkerTag(e,2)?void 0:this._hasMarkerTag(e,1)?"squiggly-unnecessary":"squiggly-hint",r=0;break;case n.cj.Warning:t="squiggly-warning",i=(0,o.Yf)(a.aZ),r=20,h={color:(0,o.Yf)(d.uMG),position:s.R3.Inline};break;case n.cj.Info:t="squiggly-info",i=(0,o.Yf)(a.AQ),r=10;break;case n.cj.Error:default:t="squiggly-error",i=(0,o.Yf)(a.yI),r=30,h={color:(0,o.Yf)(d.yLC),position:s.R3.Inline}}return e.tags&&(-1!==e.tags.indexOf(1)&&(l="squiggly-inline-unnecessary"),-1!==e.tags.indexOf(2)&&(l="squiggly-inline-deprecated")),{description:"marker-decoration",stickiness:1,className:t,showIfCollapsed:!0,overviewRuler:{color:i,position:s.A5.Right},minimap:h,zIndex:r,inlineClassName:l}}_hasMarkerTag(e,t){return!!e.tags&&e.tags.indexOf(t)>=0}};k=f([p(0,l.S),p(1,n.DR)],k)},47461:(e,t,i)=>{i.d(t,{JW:()=>F,r8:()=>R,rT:()=>P});var n=i(42464),r=i(55808),s=i(55977),o=i(75909),a=i(41362),l=i(11572),h=i(75303),c=i(76220),u=i(19724),d=i(42982),g=i(58471),f=i(20512),p=i(69549),m=i(16974),k=i(91823),_=i(33105),b=i(72302),C=i(99474),v=i(46442),y=i(5717),w=i(92278),S=i(61460),L=i(10884),x=i(40098),I=i(3499),D=i(34876),T=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},E=function(e,t){return function(i,n){t(i,n,e)}};function O(e){return e.toString()}function M(e){const t=new b.v7,i=e.createSnapshot();let n;for(;n=i.read();)t.update(n);return t.digest()}class B{constructor(e,t,i){this._modelEventListeners=new r.Cm,this.model=e,this._languageSelection=null,this._languageSelectionListener=null,this._modelEventListeners.add(e.onWillDispose((()=>t(e)))),this._modelEventListeners.add(e.onDidChangeLanguage((t=>i(e,t))))}_disposeLanguageSelection(){this._languageSelectionListener&&(this._languageSelectionListener.dispose(),this._languageSelectionListener=null)}dispose(){this._modelEventListeners.dispose(),this._disposeLanguageSelection()}setLanguage(e){this._disposeLanguageSelection(),this._languageSelection=e,this._languageSelectionListener=this._languageSelection.onDidChange((()=>this.model.setMode(e.languageId))),this.model.setMode(e.languageId)}}const N=s.j9||s.zx?1:2;class A{constructor(e,t,i,n,r,s,o,a){this.uri=e,this.initialUndoRedoSnapshot=t,this.time=i,this.sharesUndoRedoStack=n,this.heapSize=r,this.sha1=s,this.versionId=o,this.alternativeVersionId=a}}let F=class e extends r.jG{constructor(e,t,i,r,s,o,a,l,h){super(),this._configurationService=e,this._resourcePropertiesService=t,this._themeService=i,this._logService=r,this._undoRedoService=s,this._languageService=o,this._languageConfigurationService=a,this._languageFeatureDebounceService=l,this._onModelAdded=this._register(new n.vl),this.onModelAdded=this._onModelAdded.event,this._onModelRemoved=this._register(new n.vl),this.onModelRemoved=this._onModelRemoved.event,this._onModelModeChanged=this._register(new n.vl),this.onModelLanguageChanged=this._onModelModeChanged.event,this._modelCreationOptionsByLanguageAndResource=Object.create(null),this._models={},this._disposedModels=new Map,this._disposedModelsHeapSize=0,this._semanticStyling=this._register(new W(this._themeService,this._languageService,this._logService)),this._register(this._configurationService.onDidChangeConfiguration((()=>this._updateModelOptions()))),this._updateModelOptions(),this._register(new z(this._semanticStyling,this,this._themeService,this._configurationService,this._languageFeatureDebounceService,h))}static _readModelOptions(e,t){var i;let n=l.R.tabSize;if(e.editor&&"undefined"!==typeof e.editor.tabSize){const t=parseInt(e.editor.tabSize,10);isNaN(t)||(n=t),n<1&&(n=1)}let r=n;if(e.editor&&"undefined"!==typeof e.editor.indentSize&&"tabSize"!==e.editor.indentSize){const t=parseInt(e.editor.indentSize,10);isNaN(t)||(r=t),r<1&&(r=1)}let s=l.R.insertSpaces;e.editor&&"undefined"!==typeof e.editor.insertSpaces&&(s="false"!==e.editor.insertSpaces&&Boolean(e.editor.insertSpaces));let o=N;const a=e.eol;"\r\n"===a?o=2:"\n"===a&&(o=1);let h=l.R.trimAutoWhitespace;e.editor&&"undefined"!==typeof e.editor.trimAutoWhitespace&&(h="false"!==e.editor.trimAutoWhitespace&&Boolean(e.editor.trimAutoWhitespace));let c=l.R.detectIndentation;e.editor&&"undefined"!==typeof e.editor.detectIndentation&&(c="false"!==e.editor.detectIndentation&&Boolean(e.editor.detectIndentation));let u=l.R.largeFileOptimizations;e.editor&&"undefined"!==typeof e.editor.largeFileOptimizations&&(u="false"!==e.editor.largeFileOptimizations&&Boolean(e.editor.largeFileOptimizations));let d=l.R.bracketPairColorizationOptions;return(null===(i=e.editor)||void 0===i?void 0:i.bracketPairColorization)&&"object"===typeof e.editor.bracketPairColorization&&(d={enabled:!!e.editor.bracketPairColorization.enabled,independentColorPoolPerBracketType:!!e.editor.bracketPairColorization.independentColorPoolPerBracketType}),{isForSimpleWidget:t,tabSize:n,indentSize:r,insertSpaces:s,detectIndentation:c,defaultEOL:o,trimAutoWhitespace:h,largeFileOptimizations:u,bracketPairColorizationOptions:d}}_getEOL(e,t){if(e)return this._resourcePropertiesService.getEOL(e,t);const i=this._configurationService.getValue("files.eol",{overrideIdentifier:t});return i&&"string"===typeof i&&"auto"!==i?i:3===s.OS||2===s.OS?"\n":"\r\n"}_shouldRestoreUndoStack(){const e=this._configurationService.getValue("files.restoreUndoStack");return"boolean"!==typeof e||e}getCreationOptions(t,i,n){let r=this._modelCreationOptionsByLanguageAndResource[t+i];if(!r){const s=this._configurationService.getValue("editor",{overrideIdentifier:t,resource:i}),o=this._getEOL(i,t);r=e._readModelOptions({editor:s,eol:o},n),this._modelCreationOptionsByLanguageAndResource[t+i]=r}return r}_updateModelOptions(){const t=this._modelCreationOptionsByLanguageAndResource;this._modelCreationOptionsByLanguageAndResource=Object.create(null);const i=Object.keys(this._models);for(let n=0,r=i.length;n<r;n++){const r=i[n],s=this._models[r],o=s.model.getLanguageId(),a=s.model.uri,l=t[o+a],h=this.getCreationOptions(o,a,s.model.isForSimpleWidget);e._setModelOptionsForModel(s.model,h,l)}}static _setModelOptionsForModel(e,t,i){i&&i.defaultEOL!==t.defaultEOL&&1===e.getLineCount()&&e.setEOL(1===t.defaultEOL?0:1),i&&i.detectIndentation===t.detectIndentation&&i.insertSpaces===t.insertSpaces&&i.tabSize===t.tabSize&&i.indentSize===t.indentSize&&i.trimAutoWhitespace===t.trimAutoWhitespace&&(0,S.aI)(i.bracketPairColorizationOptions,t.bracketPairColorizationOptions)||(t.detectIndentation?(e.detectIndentation(t.insertSpaces,t.tabSize),e.updateOptions({trimAutoWhitespace:t.trimAutoWhitespace,bracketColorizationOptions:t.bracketPairColorizationOptions})):e.updateOptions({insertSpaces:t.insertSpaces,tabSize:t.tabSize,indentSize:t.indentSize,trimAutoWhitespace:t.trimAutoWhitespace,bracketColorizationOptions:t.bracketPairColorizationOptions}))}_insertDisposedModel(e){this._disposedModels.set(O(e.uri),e),this._disposedModelsHeapSize+=e.heapSize}_removeDisposedModel(e){const t=this._disposedModels.get(O(e));return t&&(this._disposedModelsHeapSize-=t.heapSize),this._disposedModels.delete(O(e)),t}_ensureDisposedModelsHeapSize(e){if(this._disposedModelsHeapSize>e){const t=[];for(this._disposedModels.forEach((e=>{e.sharesUndoRedoStack||t.push(e)})),t.sort(((e,t)=>e.time-t.time));t.length>0&&this._disposedModelsHeapSize>e;){const e=t.shift();this._removeDisposedModel(e.uri),null!==e.initialUndoRedoSnapshot&&this._undoRedoService.restoreSnapshot(e.initialUndoRedoSnapshot)}}}_createModelData(e,t,i,n){const r=this.getCreationOptions(t,i,n),s=new a.Bz(e,t,r,i,this._undoRedoService,this._languageService,this._languageConfigurationService);if(i&&this._disposedModels.has(O(i))){const e=this._removeDisposedModel(i),t=this._undoRedoService.getElements(i),n=M(s)===e.sha1;if(n||e.sharesUndoRedoStack){for(const e of t.past)(0,C.Th)(e)&&e.matchesResource(i)&&e.setModel(s);for(const e of t.future)(0,C.Th)(e)&&e.matchesResource(i)&&e.setModel(s);this._undoRedoService.setElementsValidFlag(i,!0,(e=>(0,C.Th)(e)&&e.matchesResource(i))),n&&(s._overwriteVersionId(e.versionId),s._overwriteAlternativeVersionId(e.alternativeVersionId),s._overwriteInitialUndoRedoSnapshot(e.initialUndoRedoSnapshot))}else null!==e.initialUndoRedoSnapshot&&this._undoRedoService.restoreSnapshot(e.initialUndoRedoSnapshot)}const o=O(s.uri);if(this._models[o])throw new Error("ModelService: Cannot add model because it already exists!");const l=new B(s,(e=>this._onWillDispose(e)),((e,t)=>this._onDidChangeLanguage(e,t)));return this._models[o]=l,l}createModel(e,t,i,n=!1){let r;return t?(r=this._createModelData(e,t.languageId,i,n),this.setMode(r.model,t)):r=this._createModelData(e,h.vH,i,n),this._onModelAdded.fire(r.model),r.model}setMode(e,t){if(!t)return;const i=this._models[O(e.uri)];i&&i.setLanguage(t)}getModels(){const e=[],t=Object.keys(this._models);for(let i=0,n=t.length;i<n;i++){const n=t[i];e.push(this._models[n].model)}return e}getModel(e){const t=O(e),i=this._models[t];return i?i.model:null}getSemanticTokensProviderStyling(e){return this._semanticStyling.get(e)}_schemaShouldMaintainUndoRedoElements(e){return e.scheme===v.ny.file||e.scheme===v.ny.vscodeRemote||e.scheme===v.ny.vscodeUserData||e.scheme===v.ny.vscodeNotebookCell||"fake-fs"===e.scheme}_onWillDispose(t){const i=O(t.uri),n=this._models[i],r=this._undoRedoService.getUriComparisonKey(t.uri)!==t.uri.toString();let s=!1,o=0;if(r||this._shouldRestoreUndoStack()&&this._schemaShouldMaintainUndoRedoElements(t.uri)){const e=this._undoRedoService.getElements(t.uri);if(e.past.length>0||e.future.length>0){for(const i of e.past)(0,C.Th)(i)&&i.matchesResource(t.uri)&&(s=!0,o+=i.heapSize(t.uri),i.setModel(t.uri));for(const i of e.future)(0,C.Th)(i)&&i.matchesResource(t.uri)&&(s=!0,o+=i.heapSize(t.uri),i.setModel(t.uri))}}const a=e.MAX_MEMORY_FOR_CLOSED_FILES_UNDO_STACK;if(s)if(!r&&o>a){const e=n.model.getInitialUndoRedoSnapshot();null!==e&&this._undoRedoService.restoreSnapshot(e)}else this._ensureDisposedModelsHeapSize(a-o),this._undoRedoService.setElementsValidFlag(t.uri,!1,(e=>(0,C.Th)(e)&&e.matchesResource(t.uri))),this._insertDisposedModel(new A(t.uri,n.model.getInitialUndoRedoSnapshot(),Date.now(),r,o,M(t),t.getVersionId(),t.getAlternativeVersionId()));else if(!r){const e=n.model.getInitialUndoRedoSnapshot();null!==e&&this._undoRedoService.restoreSnapshot(e)}delete this._models[i],n.dispose(),delete this._modelCreationOptionsByLanguageAndResource[t.getLanguageId()+t.uri],this._onModelRemoved.fire(t)}_onDidChangeLanguage(t,i){const n=i.oldLanguage,r=t.getLanguageId(),s=this.getCreationOptions(n,t.uri,t.isForSimpleWidget),o=this.getCreationOptions(r,t.uri,t.isForSimpleWidget);e._setModelOptionsForModel(t,o,s),this._onModelModeChanged.fire({model:t,oldLanguageId:n})}};F.MAX_MEMORY_FOR_CLOSED_FILES_UNDO_STACK=20971520,F=T([E(0,g.pG),E(1,d.J),E(2,m.Gy),E(3,k.rr),E(4,_.$D),E(5,c.L),E(6,L.JZ),E(7,x.U),E(8,D.u)],F);const R="editor.semanticHighlighting";function P(e,t,i){var n;const r=null===(n=i.getValue(R,{overrideIdentifier:e.getLanguageId(),resource:e.uri}))||void 0===n?void 0:n.enabled;return"boolean"===typeof r?r:t.getColorTheme().semanticHighlighting}let z=class extends r.jG{constructor(e,t,i,n,r,s){super(),this._watchers=Object.create(null),this._semanticStyling=e;const o=e=>{this._watchers[e.uri.toString()]=new H(e,this._semanticStyling,i,r,s)},a=(e,t)=>{t.dispose(),delete this._watchers[e.uri.toString()]},l=()=>{for(const e of t.getModels()){const t=this._watchers[e.uri.toString()];P(e,i,n)?t||o(e):t&&a(e,t)}};this._register(t.onModelAdded((e=>{P(e,i,n)&&o(e)}))),this._register(t.onModelRemoved((e=>{const t=this._watchers[e.uri.toString()];t&&a(e,t)}))),this._register(n.onDidChangeConfiguration((e=>{e.affectsConfiguration(R)&&l()}))),this._register(i.onDidColorThemeChange(l))}dispose(){for(const e of Object.values(this._watchers))e.dispose();super.dispose()}};z=T([E(1,u.S),E(2,m.Gy),E(3,g.pG),E(4,x.U),E(5,D.u)],z);class W extends r.jG{constructor(e,t,i){super(),this._themeService=e,this._languageService=t,this._logService=i,this._caches=new WeakMap,this._register(this._themeService.onDidColorThemeChange((()=>{this._caches=new WeakMap})))}get(e){return this._caches.has(e)||this._caches.set(e,new y.i(e.getLegend(),this._themeService,this._languageService,this._logService)),this._caches.get(e)}}class V{constructor(e,t,i){this.provider=e,this.resultId=t,this.data=i}dispose(){this.provider.releaseDocumentSemanticTokens(this.resultId)}}let H=class e extends r.jG{constructor(t,i,n,s,o){super(),this._isDisposed=!1,this._model=t,this._semanticStyling=i,this._provider=o.documentSemanticTokensProvider,this._debounceInformation=s.for(this._provider,"DocumentSemanticTokens",{min:e.REQUEST_MIN_DELAY,max:e.REQUEST_MAX_DELAY}),this._fetchDocumentSemanticTokens=this._register(new f.uC((()=>this._fetchDocumentSemanticTokensNow()),e.REQUEST_MIN_DELAY)),this._currentDocumentResponse=null,this._currentDocumentRequestCancellationTokenSource=null,this._documentProvidersChangeListeners=[],this._register(this._model.onDidChangeContent((()=>{this._fetchDocumentSemanticTokens.isScheduled()||this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))}))),this._register(this._model.onDidChangeLanguage((()=>{this._currentDocumentResponse&&(this._currentDocumentResponse.dispose(),this._currentDocumentResponse=null),this._currentDocumentRequestCancellationTokenSource&&(this._currentDocumentRequestCancellationTokenSource.cancel(),this._currentDocumentRequestCancellationTokenSource=null),this._setDocumentSemanticTokens(null,null,null,[]),this._fetchDocumentSemanticTokens.schedule(0)})));const a=()=>{(0,r.AS)(this._documentProvidersChangeListeners),this._documentProvidersChangeListeners=[];for(const e of this._provider.all(t))"function"===typeof e.onDidChange&&this._documentProvidersChangeListeners.push(e.onDidChange((()=>this._fetchDocumentSemanticTokens.schedule(0))))};a(),this._register(this._provider.onDidChange((()=>{a(),this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))}))),this._register(n.onDidColorThemeChange((e=>{this._setDocumentSemanticTokens(null,null,null,[]),this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))}))),this._fetchDocumentSemanticTokens.schedule(0)}dispose(){this._currentDocumentResponse&&(this._currentDocumentResponse.dispose(),this._currentDocumentResponse=null),this._currentDocumentRequestCancellationTokenSource&&(this._currentDocumentRequestCancellationTokenSource.cancel(),this._currentDocumentRequestCancellationTokenSource=null),this._setDocumentSemanticTokens(null,null,null,[]),this._isDisposed=!0,super.dispose()}_fetchDocumentSemanticTokensNow(){if(this._currentDocumentRequestCancellationTokenSource)return;if(!(0,w.br)(this._provider,this._model))return void(this._currentDocumentResponse&&this._model.tokenization.setSemanticTokens(null,!1));const e=new p.Q,t=this._currentDocumentResponse?this._currentDocumentResponse.provider:null,i=this._currentDocumentResponse&&this._currentDocumentResponse.resultId||null,n=(0,w.aw)(this._provider,this._model,t,i,e.token);this._currentDocumentRequestCancellationTokenSource=e;const r=[],s=this._model.onDidChangeContent((e=>{r.push(e)})),a=new I.W(!1);n.then((e=>{if(this._debounceInformation.update(this._model,a.elapsed()),this._currentDocumentRequestCancellationTokenSource=null,s.dispose(),e){const{provider:t,tokens:i}=e,n=this._semanticStyling.get(t);this._setDocumentSemanticTokens(t,i||null,n,r)}else this._setDocumentSemanticTokens(null,null,null,r)}),(e=>{e&&(o.MB(e)||"string"===typeof e.message&&-1!==e.message.indexOf("busy"))||o.dz(e),this._currentDocumentRequestCancellationTokenSource=null,s.dispose(),r.length>0&&(this._fetchDocumentSemanticTokens.isScheduled()||this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model)))}))}static _copy(e,t,i,n,r){r=Math.min(r,i.length-n,e.length-t);for(let s=0;s<r;s++)i[n+s]=e[t+s]}_setDocumentSemanticTokens(t,i,n,r){const s=this._currentDocumentResponse,o=()=>{r.length>0&&!this._fetchDocumentSemanticTokens.isScheduled()&&this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))};if(this._currentDocumentResponse&&(this._currentDocumentResponse.dispose(),this._currentDocumentResponse=null),this._isDisposed)t&&i&&t.releaseDocumentSemanticTokens(i.resultId);else if(t&&n){if(!i)return this._model.tokenization.setSemanticTokens(null,!0),void o();if((0,w.yS)(i)){if(!s)return void this._model.tokenization.setSemanticTokens(null,!0);if(0===i.edits.length)i={resultId:i.resultId,data:s.data};else{let t=0;for(const e of i.edits)t+=(e.data?e.data.length:0)-e.deleteCount;const r=s.data,o=new Uint32Array(r.length+t);let a=r.length,l=o.length;for(let h=i.edits.length-1;h>=0;h--){const t=i.edits[h];if(t.start>r.length)return n.warnInvalidEditStart(s.resultId,i.resultId,h,t.start,r.length),void this._model.tokenization.setSemanticTokens(null,!0);const c=a-(t.start+t.deleteCount);c>0&&(e._copy(r,a-c,o,l-c,c),l-=c),t.data&&(e._copy(t.data,0,o,l-t.data.length,t.data.length),l-=t.data.length),a=t.start}a>0&&e._copy(r,0,o,0,a),i={resultId:i.resultId,data:o}}}if((0,w.BB)(i)){this._currentDocumentResponse=new V(t,i.resultId,i.data);const e=(0,y.b)(i,n,this._model.getLanguageId());if(r.length>0)for(const t of r)for(const i of e)for(const e of t.changes)i.applyEdit(e.range,e.text);this._model.tokenization.setSemanticTokens(e,!0)}else this._model.tokenization.setSemanticTokens(null,!0);o()}else this._model.tokenization.setSemanticTokens(null,!1)}};H.REQUEST_MIN_DELAY=300,H.REQUEST_MAX_DELAY=2e3,H=T([E(2,m.Gy),E(3,x.U),E(4,D.u)],H)},5717:(e,t,i)=>{i.d(t,{i:()=>p,b:()=>m});var n=i(61244),r=i(16974),s=i(91823),o=i(55547),a=i(62915),l=i(16920);class h{constructor(e,t){this._startLineNumber=e,this._tokens=t,this._endLineNumber=this._startLineNumber+this._tokens.getMaxDeltaLine()}static create(e,t){return new h(e,new c(t))}get startLineNumber(){return this._startLineNumber}get endLineNumber(){return this._endLineNumber}toString(){return this._tokens.toString(this._startLineNumber)}_updateEndLineNumber(){this._endLineNumber=this._startLineNumber+this._tokens.getMaxDeltaLine()}isEmpty(){return this._tokens.isEmpty()}getLineTokens(e){return this._startLineNumber<=e&&e<=this._endLineNumber?this._tokens.getLineTokens(e-this._startLineNumber):null}getRange(){const e=this._tokens.getRange();return e?new a.Q(this._startLineNumber+e.startLineNumber,e.startColumn,this._startLineNumber+e.endLineNumber,e.endColumn):e}removeTokens(e){const t=e.startLineNumber-this._startLineNumber,i=e.endLineNumber-this._startLineNumber;this._startLineNumber+=this._tokens.removeTokens(t,e.startColumn-1,i,e.endColumn-1),this._updateEndLineNumber()}split(e){const t=e.startLineNumber-this._startLineNumber,i=e.endLineNumber-this._startLineNumber,[n,r,s]=this._tokens.split(t,e.startColumn-1,i,e.endColumn-1);return[new h(this._startLineNumber,n),new h(this._startLineNumber+s,r)]}applyEdit(e,t){const[i,n,r]=(0,l.W)(t);this.acceptEdit(e,i,n,r,t.length>0?t.charCodeAt(0):0)}acceptEdit(e,t,i,n,r){this._acceptDeleteRange(e),this._acceptInsertText(new o.y(e.startLineNumber,e.startColumn),t,i,n,r),this._updateEndLineNumber()}_acceptDeleteRange(e){if(e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn)return;const t=e.startLineNumber-this._startLineNumber,i=e.endLineNumber-this._startLineNumber;if(i<0){const e=i-t;return void(this._startLineNumber-=e)}const n=this._tokens.getMaxDeltaLine();if(!(t>=n+1)){if(t<0&&i>=n+1)return this._startLineNumber=0,void this._tokens.clear();if(t<0){const n=-t;this._startLineNumber-=n,this._tokens.acceptDeleteRange(e.startColumn-1,0,0,i,e.endColumn-1)}else this._tokens.acceptDeleteRange(0,t,e.startColumn-1,i,e.endColumn-1)}}_acceptInsertText(e,t,i,n,r){if(0===t&&0===i)return;const s=e.lineNumber-this._startLineNumber;if(s<0)return void(this._startLineNumber+=t);s>=this._tokens.getMaxDeltaLine()+1||this._tokens.acceptInsertText(s,e.column-1,t,i,n,r)}}class c{constructor(e){this._tokens=e,this._tokenCount=e.length/4}toString(e){const t=[];for(let i=0;i<this._tokenCount;i++)t.push(`(${this._getDeltaLine(i)+e},${this._getStartCharacter(i)}-${this._getEndCharacter(i)})`);return`[${t.join(",")}]`}getMaxDeltaLine(){const e=this._getTokenCount();return 0===e?-1:this._getDeltaLine(e-1)}getRange(){const e=this._getTokenCount();if(0===e)return null;const t=this._getStartCharacter(0),i=this._getDeltaLine(e-1),n=this._getEndCharacter(e-1);return new a.Q(0,t+1,i,n+1)}_getTokenCount(){return this._tokenCount}_getDeltaLine(e){return this._tokens[4*e]}_getStartCharacter(e){return this._tokens[4*e+1]}_getEndCharacter(e){return this._tokens[4*e+2]}isEmpty(){return 0===this._getTokenCount()}getLineTokens(e){let t=0,i=this._getTokenCount()-1;for(;t<i;){const n=t+Math.floor((i-t)/2),r=this._getDeltaLine(n);if(r<e)t=n+1;else{if(!(r>e)){let r=n;for(;r>t&&this._getDeltaLine(r-1)===e;)r--;let s=n;for(;s<i&&this._getDeltaLine(s+1)===e;)s++;return new u(this._tokens.subarray(4*r,4*s+4))}i=n-1}}return this._getDeltaLine(t)===e?new u(this._tokens.subarray(4*t,4*t+4)):null}clear(){this._tokenCount=0}removeTokens(e,t,i,n){const r=this._tokens,s=this._tokenCount;let o=0,a=!1,l=0;for(let h=0;h<s;h++){const s=4*h,c=r[s],u=r[s+1],d=r[s+2],g=r[s+3];if((c>e||c===e&&d>=t)&&(c<i||c===i&&u<=n))a=!0;else{if(0===o&&(l=c),a){const e=4*o;r[e]=c-l,r[e+1]=u,r[e+2]=d,r[e+3]=g}o++}}return this._tokenCount=o,l}split(e,t,i,n){const r=this._tokens,s=this._tokenCount,o=[],a=[];let l=o,h=0,u=0;for(let c=0;c<s;c++){const s=4*c,o=r[s],d=r[s+1],g=r[s+2],f=r[s+3];if(o>e||o===e&&g>=t){if(o<i||o===i&&d<=n)continue;l!==a&&(l=a,h=0,u=o)}l[h++]=o-u,l[h++]=d,l[h++]=g,l[h++]=f}return[new c(new Uint32Array(o)),new c(new Uint32Array(a)),u]}acceptDeleteRange(e,t,i,n,r){const s=this._tokens,o=this._tokenCount,a=n-t;let l=0,h=!1;for(let c=0;c<o;c++){const u=4*c;let d=s[u],g=s[u+1],f=s[u+2];const p=s[u+3];if(d<t||d===t&&f<=i){l++;continue}if(d===t&&g<i)d===n&&f>r?f-=r-i:f=i;else if(d===t&&g===i){if(!(d===n&&f>r)){h=!0;continue}f-=r-i}else if(d<n||d===n&&g<r){if(!(d===n&&f>r)){h=!0;continue}d===t?(g=i,f=g+(f-r)):(g=0,f=g+(f-r))}else if(d>n){if(0===a&&!h){l=o;break}d-=a}else{if(!(d===n&&g>=r))throw new Error("Not possible!");e&&0===d&&(g+=e,f+=e),d-=a,g-=r-i,f-=r-i}const m=4*l;s[m]=d,s[m+1]=g,s[m+2]=f,s[m+3]=p,l++}this._tokenCount=l}acceptInsertText(e,t,i,n,r,s){const o=0===i&&1===n&&(s>=48&&s<=57||s>=65&&s<=90||s>=97&&s<=122),a=this._tokens,l=this._tokenCount;for(let h=0;h<l;h++){const s=4*h;let l=a[s],c=a[s+1],u=a[s+2];if(!(l<e||l===e&&u<t)){if(l===e&&u===t){if(!o)continue;u+=1}else if(l===e&&c<t&&t<u)0===i?u+=n:u=t;else{if(l===e&&c===t&&o)continue;if(l===e)if(l+=i,0===i)c+=n,u+=n;else{const e=u-c;c=r+(c-t),u=c+e}else l+=i}a[s]=l,a[s+1]=c,a[s+2]=u}}}}class u{constructor(e){this._tokens=e}getCount(){return this._tokens.length/4}getStartCharacter(e){return this._tokens[4*e+1]}getEndCharacter(e){return this._tokens[4*e+2]}getMetadata(e){return this._tokens[4*e+3]}}var d=i(76220),g=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},f=function(e,t){return function(i,n){t(i,n,e)}};let p=class{constructor(e,t,i,n){this._legend=e,this._themeService=t,this._languageService=i,this._logService=n,this._hasWarnedOverlappingTokens=!1,this._hasWarnedInvalidLengthTokens=!1,this._hasWarnedInvalidEditStart=!1,this._hashTable=new _}getMetadata(e,t,i){const r=this._languageService.languageIdCodec.encodeLanguageId(i),o=this._hashTable.get(e,t,r);let a;if(o)a=o.metadata,this._logService.getLevel()===s.$b.Trace&&this._logService.trace(`SemanticTokensProviderStyling [CACHED] ${e} / ${t}: foreground ${n.x.getForeground(a)}, fontStyle ${n.x.getFontStyle(a).toString(2)}`);else{let o=this._legend.tokenTypes[e];const l=[];if(o){let e=t;for(let t=0;e>0&&t<this._legend.tokenModifiers.length;t++)1&e&&l.push(this._legend.tokenModifiers[t]),e>>=1;e>0&&this._logService.getLevel()===s.$b.Trace&&(this._logService.trace(`SemanticTokensProviderStyling: unknown token modifier index: ${t.toString(2)} for legend: ${JSON.stringify(this._legend.tokenModifiers)}`),l.push("not-in-legend"));const n=this._themeService.getColorTheme().getTokenStyleMetadata(o,l,i);if("undefined"===typeof n)a=2147483647;else{if(a=0,"undefined"!==typeof n.italic){a|=1|(n.italic?1:0)<<11}if("undefined"!==typeof n.bold){a|=2|(n.bold?2:0)<<11}if("undefined"!==typeof n.underline){a|=4|(n.underline?4:0)<<11}if("undefined"!==typeof n.strikethrough){a|=8|(n.strikethrough?8:0)<<11}if(n.foreground){a|=16|n.foreground<<15}0===a&&(a=2147483647)}}else this._logService.getLevel()===s.$b.Trace&&this._logService.trace(`SemanticTokensProviderStyling: unknown token type index: ${e} for legend: ${JSON.stringify(this._legend.tokenTypes)}`),a=2147483647,o="not-in-legend";this._hashTable.add(e,t,r,a),this._logService.getLevel()===s.$b.Trace&&this._logService.trace(`SemanticTokensProviderStyling ${e} (${o}) / ${t} (${l.join(" ")}): foreground ${n.x.getForeground(a)}, fontStyle ${n.x.getFontStyle(a).toString(2)}`)}return a}warnOverlappingSemanticTokens(e,t){this._hasWarnedOverlappingTokens||(this._hasWarnedOverlappingTokens=!0)}warnInvalidLengthSemanticTokens(e,t){this._hasWarnedInvalidLengthTokens||(this._hasWarnedInvalidLengthTokens=!0)}warnInvalidEditStart(e,t,i,n,r){this._hasWarnedInvalidEditStart||(this._hasWarnedInvalidEditStart=!0)}};function m(e,t,i){const n=e.data,r=e.data.length/5|0,s=Math.max(Math.ceil(r/1024),400),o=[];let a=0,l=1,c=0;for(;a<r;){const e=a;let u=Math.min(e+s,r);if(u<r){let t=u;for(;t-1>e&&0===n[5*t];)t--;if(t-1===e){let e=u;for(;e+1<r&&0===n[5*e];)e++;u=e}else u=t}let d=new Uint32Array(4*(u-e)),g=0,f=0,p=0,m=0;for(;a<u;){const e=5*a,r=n[e],s=n[e+1],o=l+r|0,h=0===r?c+s|0:s,u=h+n[e+2]|0,k=n[e+3],_=n[e+4];if(u<=h)t.warnInvalidLengthSemanticTokens(o,h+1);else if(p===o&&m>h)t.warnOverlappingSemanticTokens(o,h+1);else{const e=t.getMetadata(k,_,i);2147483647!==e&&(0===f&&(f=o),d[g]=o-f,d[g+1]=h,d[g+2]=u,d[g+3]=e,g+=4,p=o,m=u)}l=o,c=h,a++}g!==d.length&&(d=d.subarray(0,g));const k=h.create(f,d);o.push(k)}return o}p=g([f(1,r.Gy),f(2,d.L),f(3,s.rr)],p);class k{constructor(e,t,i,n){this.tokenTypeIndex=e,this.tokenModifierSet=t,this.languageId=i,this.metadata=n,this.next=null}}class _{constructor(){this._elementsCount=0,this._currentLengthIndex=0,this._currentLength=_._SIZES[this._currentLengthIndex],this._growCount=Math.round(this._currentLengthIndex+1<_._SIZES.length?2/3*this._currentLength:0),this._elements=[],_._nullOutEntries(this._elements,this._currentLength)}static _nullOutEntries(e,t){for(let i=0;i<t;i++)e[i]=null}_hash2(e,t){return(e<<5)-e+t|0}_hashFunc(e,t,i){return this._hash2(this._hash2(e,t),i)%this._currentLength}get(e,t,i){const n=this._hashFunc(e,t,i);let r=this._elements[n];for(;r;){if(r.tokenTypeIndex===e&&r.tokenModifierSet===t&&r.languageId===i)return r;r=r.next}return null}add(e,t,i,n){if(this._elementsCount++,0!==this._growCount&&this._elementsCount>=this._growCount){const e=this._elements;this._currentLengthIndex++,this._currentLength=_._SIZES[this._currentLengthIndex],this._growCount=Math.round(this._currentLengthIndex+1<_._SIZES.length?2/3*this._currentLength:0),this._elements=[],_._nullOutEntries(this._elements,this._currentLength);for(const t of e){let e=t;for(;e;){const t=e.next;e.next=null,this._add(e),e=t}}}this._add(new k(e,t,i,n))}_add(e){const t=this._hashFunc(e.tokenTypeIndex,e.tokenModifierSet,e.languageId);e.next=this._elements[t],this._elements[t]=e}}_._SIZES=[3,7,13,31,61,127,251,509,1021,2039,4093,8191,16381,32749,65521,131071,262139,524287,1048573,2097143]},42982:(e,t,i)=>{i.d(t,{J:()=>s,U:()=>r});var n=i(34029);const r=(0,n.u1)("textResourceConfigurationService"),s=(0,n.u1)("textResourcePropertiesService")},77213:(e,t,i)=>{i.d(t,{P:()=>l});var n=i(62915),r=i(91998),s=i(24638),o=i(59713),a=i(52524);class l{static computeUnicodeHighlights(e,t,i){const l=i?i.startLineNumber:1,c=i?i.endLineNumber:e.getLineCount(),u=new h(t),d=u.getCandidateCodePoints();let g;var f;g="allNonBasicAscii"===d?new RegExp("[^\\t\\n\\r\\x20-\\x7E]","g"):new RegExp(""+(f=Array.from(d),`[${s.bm(f.map((e=>String.fromCodePoint(e))).join(""))}]`),"g");const p=new r.W5(null,g),m=[];let k,_=!1,b=0,C=0,v=0;e:for(let r=l,h=c;r<=h;r++){const t=e.getLineContent(r),i=t.length;p.reset(0);do{if(k=p.next(t),k){let e=k.index,l=k.index+k[0].length;if(e>0){const i=t.charCodeAt(e-1);s.pc(i)&&e--}if(l+1<i){const e=t.charCodeAt(l-1);s.pc(e)&&l++}const h=t.substring(e,l),c=(0,a.Th)(e+1,a.Ld,t,0),d=u.shouldHighlightNonBasicASCII(h,c?c.word:null);if(0!==d){3===d?b++:2===d?C++:1===d?v++:(0,o.xb)(d);const t=1e3;if(m.length>=t){_=!0;break e}m.push(new n.Q(r,e+1,r,l+1))}}}while(k)}return{ranges:m,hasMore:_,ambiguousCharacterCount:b,invisibleCharacterCount:C,nonBasicAsciiCharacterCount:v}}static computeUnicodeHighlightReason(e,t){const i=new h(t);switch(i.shouldHighlightNonBasicASCII(e,null)){case 0:return null;case 2:return{kind:1};case 3:{const n=e.codePointAt(0),r=i.ambiguousCharacters.getPrimaryConfusable(n),o=s.tl.getLocales().filter((e=>!s.tl.getInstance(new Set([...t.allowedLocales,e])).isAmbiguous(n)));return{kind:0,confusableWith:String.fromCodePoint(r),notAmbiguousInLocales:o}}case 1:return{kind:2}}}}class h{constructor(e){this.options=e,this.allowedCodePoints=new Set(e.allowedCodePoints),this.ambiguousCharacters=s.tl.getInstance(new Set(e.allowedLocales))}getCandidateCodePoints(){if(this.options.nonBasicASCII)return"allNonBasicAscii";const e=new Set;if(this.options.invisibleCharacters)for(const t of s.y_.codePoints)c(String.fromCodePoint(t))||e.add(t);if(this.options.ambiguousCharacters)for(const t of this.ambiguousCharacters.getConfusableCodePoints())e.add(t);for(const t of this.allowedCodePoints)e.delete(t);return e}shouldHighlightNonBasicASCII(e,t){const i=e.codePointAt(0);if(this.allowedCodePoints.has(i))return 0;if(this.options.nonBasicASCII)return 1;let n=!1,r=!1;if(t)for(const o of t){const e=o.codePointAt(0),t=s.aC(o);n=n||t,t||this.ambiguousCharacters.isAmbiguous(e)||s.y_.isInvisibleCharacter(e)||(r=!0)}return!n&&r?0:this.options.invisibleCharacters&&!c(e)&&s.y_.isInvisibleCharacter(i)?2:this.options.ambiguousCharacters&&this.ambiguousCharacters.isAmbiguous(i)?3:0}}function c(e){return" "===e||"\n"===e||"\t"===e}},36221:(e,t,i)=>{var n,r,s,o,a,l,h,c,u,d,g,f,p,m,k,_,b,C,v,y,w,S,L,x,I,D,T,E,O,M,B,N,A,F,R,P,z;i.d(t,{A5:()=>x,Ah:()=>T,DD:()=>C,DO:()=>D,Gn:()=>n,H_:()=>A,Ic:()=>I,Io:()=>s,Kb:()=>u,QP:()=>o,Qj:()=>l,R3:()=>w,SB:()=>M,U7:()=>F,VW:()=>k,WA:()=>B,WU:()=>p,XR:()=>O,_E:()=>r,cj:()=>v,dE:()=>L,d_:()=>y,e0:()=>d,h5:()=>h,hS:()=>S,kK:()=>P,kf:()=>f,l:()=>m,m9:()=>R,of:()=>c,ov:()=>E,p2:()=>g,qw:()=>b,r4:()=>_,t7:()=>a,tJ:()=>z,v0:()=>N}),function(e){e[e.Unknown=0]="Unknown",e[e.Disabled=1]="Disabled",e[e.Enabled=2]="Enabled"}(n||(n={})),function(e){e[e.KeepWhitespace=1]="KeepWhitespace",e[e.InsertAsSnippet=4]="InsertAsSnippet"}(r||(r={})),function(e){e[e.Method=0]="Method",e[e.Function=1]="Function",e[e.Constructor=2]="Constructor",e[e.Field=3]="Field",e[e.Variable=4]="Variable",e[e.Class=5]="Class",e[e.Struct=6]="Struct",e[e.Interface=7]="Interface",e[e.Module=8]="Module",e[e.Property=9]="Property",e[e.Event=10]="Event",e[e.Operator=11]="Operator",e[e.Unit=12]="Unit",e[e.Value=13]="Value",e[e.Constant=14]="Constant",e[e.Enum=15]="Enum",e[e.EnumMember=16]="EnumMember",e[e.Keyword=17]="Keyword",e[e.Text=18]="Text",e[e.Color=19]="Color",e[e.File=20]="File",e[e.Reference=21]="Reference",e[e.Customcolor=22]="Customcolor",e[e.Folder=23]="Folder",e[e.TypeParameter=24]="TypeParameter",e[e.User=25]="User",e[e.Issue=26]="Issue",e[e.Snippet=27]="Snippet"}(s||(s={})),function(e){e[e.Deprecated=1]="Deprecated"}(o||(o={})),function(e){e[e.Invoke=0]="Invoke",e[e.TriggerCharacter=1]="TriggerCharacter",e[e.TriggerForIncompleteCompletions=2]="TriggerForIncompleteCompletions"}(a||(a={})),function(e){e[e.EXACT=0]="EXACT",e[e.ABOVE=1]="ABOVE",e[e.BELOW=2]="BELOW"}(l||(l={})),function(e){e[e.NotSet=0]="NotSet",e[e.ContentFlush=1]="ContentFlush",e[e.RecoverFromMarkers=2]="RecoverFromMarkers",e[e.Explicit=3]="Explicit",e[e.Paste=4]="Paste",e[e.Undo=5]="Undo",e[e.Redo=6]="Redo"}(h||(h={})),function(e){e[e.LF=1]="LF",e[e.CRLF=2]="CRLF"}(c||(c={})),function(e){e[e.Text=0]="Text",e[e.Read=1]="Read",e[e.Write=2]="Write"}(u||(u={})),function(e){e[e.None=0]="None",e[e.Keep=1]="Keep",e[e.Brackets=2]="Brackets",e[e.Advanced=3]="Advanced",e[e.Full=4]="Full"}(d||(d={})),function(e){e[e.acceptSuggestionOnCommitCharacter=0]="acceptSuggestionOnCommitCharacter",e[e.acceptSuggestionOnEnter=1]="acceptSuggestionOnEnter",e[e.accessibilitySupport=2]="accessibilitySupport",e[e.accessibilityPageSize=3]="accessibilityPageSize",e[e.ariaLabel=4]="ariaLabel",e[e.autoClosingBrackets=5]="autoClosingBrackets",e[e.autoClosingDelete=6]="autoClosingDelete",e[e.autoClosingOvertype=7]="autoClosingOvertype",e[e.autoClosingQuotes=8]="autoClosingQuotes",e[e.autoIndent=9]="autoIndent",e[e.automaticLayout=10]="automaticLayout",e[e.autoSurround=11]="autoSurround",e[e.bracketPairColorization=12]="bracketPairColorization",e[e.guides=13]="guides",e[e.codeLens=14]="codeLens",e[e.codeLensFontFamily=15]="codeLensFontFamily",e[e.codeLensFontSize=16]="codeLensFontSize",e[e.colorDecorators=17]="colorDecorators",e[e.columnSelection=18]="columnSelection",e[e.comments=19]="comments",e[e.contextmenu=20]="contextmenu",e[e.copyWithSyntaxHighlighting=21]="copyWithSyntaxHighlighting",e[e.cursorBlinking=22]="cursorBlinking",e[e.cursorSmoothCaretAnimation=23]="cursorSmoothCaretAnimation",e[e.cursorStyle=24]="cursorStyle",e[e.cursorSurroundingLines=25]="cursorSurroundingLines",e[e.cursorSurroundingLinesStyle=26]="cursorSurroundingLinesStyle",e[e.cursorWidth=27]="cursorWidth",e[e.disableLayerHinting=28]="disableLayerHinting",e[e.disableMonospaceOptimizations=29]="disableMonospaceOptimizations",e[e.domReadOnly=30]="domReadOnly",e[e.dragAndDrop=31]="dragAndDrop",e[e.enableDropIntoEditor=32]="enableDropIntoEditor",e[e.emptySelectionClipboard=33]="emptySelectionClipboard",e[e.extraEditorClassName=34]="extraEditorClassName",e[e.fastScrollSensitivity=35]="fastScrollSensitivity",e[e.find=36]="find",e[e.fixedOverflowWidgets=37]="fixedOverflowWidgets",e[e.folding=38]="folding",e[e.foldingStrategy=39]="foldingStrategy",e[e.foldingHighlight=40]="foldingHighlight",e[e.foldingImportsByDefault=41]="foldingImportsByDefault",e[e.foldingMaximumRegions=42]="foldingMaximumRegions",e[e.unfoldOnClickAfterEndOfLine=43]="unfoldOnClickAfterEndOfLine",e[e.fontFamily=44]="fontFamily",e[e.fontInfo=45]="fontInfo",e[e.fontLigatures=46]="fontLigatures",e[e.fontSize=47]="fontSize",e[e.fontWeight=48]="fontWeight",e[e.formatOnPaste=49]="formatOnPaste",e[e.formatOnType=50]="formatOnType",e[e.glyphMargin=51]="glyphMargin",e[e.gotoLocation=52]="gotoLocation",e[e.hideCursorInOverviewRuler=53]="hideCursorInOverviewRuler",e[e.hover=54]="hover",e[e.inDiffEditor=55]="inDiffEditor",e[e.inlineSuggest=56]="inlineSuggest",e[e.letterSpacing=57]="letterSpacing",e[e.lightbulb=58]="lightbulb",e[e.lineDecorationsWidth=59]="lineDecorationsWidth",e[e.lineHeight=60]="lineHeight",e[e.lineNumbers=61]="lineNumbers",e[e.lineNumbersMinChars=62]="lineNumbersMinChars",e[e.linkedEditing=63]="linkedEditing",e[e.links=64]="links",e[e.matchBrackets=65]="matchBrackets",e[e.minimap=66]="minimap",e[e.mouseStyle=67]="mouseStyle",e[e.mouseWheelScrollSensitivity=68]="mouseWheelScrollSensitivity",e[e.mouseWheelZoom=69]="mouseWheelZoom",e[e.multiCursorMergeOverlapping=70]="multiCursorMergeOverlapping",e[e.multiCursorModifier=71]="multiCursorModifier",e[e.multiCursorPaste=72]="multiCursorPaste",e[e.occurrencesHighlight=73]="occurrencesHighlight",e[e.overviewRulerBorder=74]="overviewRulerBorder",e[e.overviewRulerLanes=75]="overviewRulerLanes",e[e.padding=76]="padding",e[e.parameterHints=77]="parameterHints",e[e.peekWidgetDefaultFocus=78]="peekWidgetDefaultFocus",e[e.definitionLinkOpensInPeek=79]="definitionLinkOpensInPeek",e[e.quickSuggestions=80]="quickSuggestions",e[e.quickSuggestionsDelay=81]="quickSuggestionsDelay",e[e.readOnly=82]="readOnly",e[e.renameOnType=83]="renameOnType",e[e.renderControlCharacters=84]="renderControlCharacters",e[e.renderFinalNewline=85]="renderFinalNewline",e[e.renderLineHighlight=86]="renderLineHighlight",e[e.renderLineHighlightOnlyWhenFocus=87]="renderLineHighlightOnlyWhenFocus",e[e.renderValidationDecorations=88]="renderValidationDecorations",e[e.renderWhitespace=89]="renderWhitespace",e[e.revealHorizontalRightPadding=90]="revealHorizontalRightPadding",e[e.roundedSelection=91]="roundedSelection",e[e.rulers=92]="rulers",e[e.scrollbar=93]="scrollbar",e[e.scrollBeyondLastColumn=94]="scrollBeyondLastColumn",e[e.scrollBeyondLastLine=95]="scrollBeyondLastLine",e[e.scrollPredominantAxis=96]="scrollPredominantAxis",e[e.selectionClipboard=97]="selectionClipboard",e[e.selectionHighlight=98]="selectionHighlight",e[e.selectOnLineNumbers=99]="selectOnLineNumbers",e[e.showFoldingControls=100]="showFoldingControls",e[e.showUnused=101]="showUnused",e[e.snippetSuggestions=102]="snippetSuggestions",e[e.smartSelect=103]="smartSelect",e[e.smoothScrolling=104]="smoothScrolling",e[e.stickyTabStops=105]="stickyTabStops",e[e.stopRenderingLineAfter=106]="stopRenderingLineAfter",e[e.suggest=107]="suggest",e[e.suggestFontSize=108]="suggestFontSize",e[e.suggestLineHeight=109]="suggestLineHeight",e[e.suggestOnTriggerCharacters=110]="suggestOnTriggerCharacters",e[e.suggestSelection=111]="suggestSelection",e[e.tabCompletion=112]="tabCompletion",e[e.tabIndex=113]="tabIndex",e[e.unicodeHighlighting=114]="unicodeHighlighting",e[e.unusualLineTerminators=115]="unusualLineTerminators",e[e.useShadowDOM=116]="useShadowDOM",e[e.useTabStops=117]="useTabStops",e[e.wordSeparators=118]="wordSeparators",e[e.wordWrap=119]="wordWrap",e[e.wordWrapBreakAfterCharacters=120]="wordWrapBreakAfterCharacters",e[e.wordWrapBreakBeforeCharacters=121]="wordWrapBreakBeforeCharacters",e[e.wordWrapColumn=122]="wordWrapColumn",e[e.wordWrapOverride1=123]="wordWrapOverride1",e[e.wordWrapOverride2=124]="wordWrapOverride2",e[e.wrappingIndent=125]="wrappingIndent",e[e.wrappingStrategy=126]="wrappingStrategy",e[e.showDeprecated=127]="showDeprecated",e[e.inlayHints=128]="inlayHints",e[e.editorClassName=129]="editorClassName",e[e.pixelRatio=130]="pixelRatio",e[e.tabFocusMode=131]="tabFocusMode",e[e.layoutInfo=132]="layoutInfo",e[e.wrappingInfo=133]="wrappingInfo"}(g||(g={})),function(e){e[e.TextDefined=0]="TextDefined",e[e.LF=1]="LF",e[e.CRLF=2]="CRLF"}(f||(f={})),function(e){e[e.LF=0]="LF",e[e.CRLF=1]="CRLF"}(p||(p={})),function(e){e[e.None=0]="None",e[e.Indent=1]="Indent",e[e.IndentOutdent=2]="IndentOutdent",e[e.Outdent=3]="Outdent"}(m||(m={})),function(e){e[e.Both=0]="Both",e[e.Right=1]="Right",e[e.Left=2]="Left",e[e.None=3]="None"}(k||(k={})),function(e){e[e.Type=1]="Type",e[e.Parameter=2]="Parameter"}(_||(_={})),function(e){e[e.Automatic=0]="Automatic",e[e.Explicit=1]="Explicit"}(b||(b={})),function(e){e[e.DependsOnKbLayout=-1]="DependsOnKbLayout",e[e.Unknown=0]="Unknown",e[e.Backspace=1]="Backspace",e[e.Tab=2]="Tab",e[e.Enter=3]="Enter",e[e.Shift=4]="Shift",e[e.Ctrl=5]="Ctrl",e[e.Alt=6]="Alt",e[e.PauseBreak=7]="PauseBreak",e[e.CapsLock=8]="CapsLock",e[e.Escape=9]="Escape",e[e.Space=10]="Space",e[e.PageUp=11]="PageUp",e[e.PageDown=12]="PageDown",e[e.End=13]="End",e[e.Home=14]="Home",e[e.LeftArrow=15]="LeftArrow",e[e.UpArrow=16]="UpArrow",e[e.RightArrow=17]="RightArrow",e[e.DownArrow=18]="DownArrow",e[e.Insert=19]="Insert",e[e.Delete=20]="Delete",e[e.Digit0=21]="Digit0",e[e.Digit1=22]="Digit1",e[e.Digit2=23]="Digit2",e[e.Digit3=24]="Digit3",e[e.Digit4=25]="Digit4",e[e.Digit5=26]="Digit5",e[e.Digit6=27]="Digit6",e[e.Digit7=28]="Digit7",e[e.Digit8=29]="Digit8",e[e.Digit9=30]="Digit9",e[e.KeyA=31]="KeyA",e[e.KeyB=32]="KeyB",e[e.KeyC=33]="KeyC",e[e.KeyD=34]="KeyD",e[e.KeyE=35]="KeyE",e[e.KeyF=36]="KeyF",e[e.KeyG=37]="KeyG",e[e.KeyH=38]="KeyH",e[e.KeyI=39]="KeyI",e[e.KeyJ=40]="KeyJ",e[e.KeyK=41]="KeyK",e[e.KeyL=42]="KeyL",e[e.KeyM=43]="KeyM",e[e.KeyN=44]="KeyN",e[e.KeyO=45]="KeyO",e[e.KeyP=46]="KeyP",e[e.KeyQ=47]="KeyQ",e[e.KeyR=48]="KeyR",e[e.KeyS=49]="KeyS",e[e.KeyT=50]="KeyT",e[e.KeyU=51]="KeyU",e[e.KeyV=52]="KeyV",e[e.KeyW=53]="KeyW",e[e.KeyX=54]="KeyX",e[e.KeyY=55]="KeyY",e[e.KeyZ=56]="KeyZ",e[e.Meta=57]="Meta",e[e.ContextMenu=58]="ContextMenu",e[e.F1=59]="F1",e[e.F2=60]="F2",e[e.F3=61]="F3",e[e.F4=62]="F4",e[e.F5=63]="F5",e[e.F6=64]="F6",e[e.F7=65]="F7",e[e.F8=66]="F8",e[e.F9=67]="F9",e[e.F10=68]="F10",e[e.F11=69]="F11",e[e.F12=70]="F12",e[e.F13=71]="F13",e[e.F14=72]="F14",e[e.F15=73]="F15",e[e.F16=74]="F16",e[e.F17=75]="F17",e[e.F18=76]="F18",e[e.F19=77]="F19",e[e.NumLock=78]="NumLock",e[e.ScrollLock=79]="ScrollLock",e[e.Semicolon=80]="Semicolon",e[e.Equal=81]="Equal",e[e.Comma=82]="Comma",e[e.Minus=83]="Minus",e[e.Period=84]="Period",e[e.Slash=85]="Slash",e[e.Backquote=86]="Backquote",e[e.BracketLeft=87]="BracketLeft",e[e.Backslash=88]="Backslash",e[e.BracketRight=89]="BracketRight",e[e.Quote=90]="Quote",e[e.OEM_8=91]="OEM_8",e[e.IntlBackslash=92]="IntlBackslash",e[e.Numpad0=93]="Numpad0",e[e.Numpad1=94]="Numpad1",e[e.Numpad2=95]="Numpad2",e[e.Numpad3=96]="Numpad3",e[e.Numpad4=97]="Numpad4",e[e.Numpad5=98]="Numpad5",e[e.Numpad6=99]="Numpad6",e[e.Numpad7=100]="Numpad7",e[e.Numpad8=101]="Numpad8",e[e.Numpad9=102]="Numpad9",e[e.NumpadMultiply=103]="NumpadMultiply",e[e.NumpadAdd=104]="NumpadAdd",e[e.NUMPAD_SEPARATOR=105]="NUMPAD_SEPARATOR",e[e.NumpadSubtract=106]="NumpadSubtract",e[e.NumpadDecimal=107]="NumpadDecimal",e[e.NumpadDivide=108]="NumpadDivide",e[e.KEY_IN_COMPOSITION=109]="KEY_IN_COMPOSITION",e[e.ABNT_C1=110]="ABNT_C1",e[e.ABNT_C2=111]="ABNT_C2",e[e.AudioVolumeMute=112]="AudioVolumeMute",e[e.AudioVolumeUp=113]="AudioVolumeUp",e[e.AudioVolumeDown=114]="AudioVolumeDown",e[e.BrowserSearch=115]="BrowserSearch",e[e.BrowserHome=116]="BrowserHome",e[e.BrowserBack=117]="BrowserBack",e[e.BrowserForward=118]="BrowserForward",e[e.MediaTrackNext=119]="MediaTrackNext",e[e.MediaTrackPrevious=120]="MediaTrackPrevious",e[e.MediaStop=121]="MediaStop",e[e.MediaPlayPause=122]="MediaPlayPause",e[e.LaunchMediaPlayer=123]="LaunchMediaPlayer",e[e.LaunchMail=124]="LaunchMail",e[e.LaunchApp2=125]="LaunchApp2",e[e.Clear=126]="Clear",e[e.MAX_VALUE=127]="MAX_VALUE"}(C||(C={})),function(e){e[e.Hint=1]="Hint",e[e.Info=2]="Info",e[e.Warning=4]="Warning",e[e.Error=8]="Error"}(v||(v={})),function(e){e[e.Unnecessary=1]="Unnecessary",e[e.Deprecated=2]="Deprecated"}(y||(y={})),function(e){e[e.Inline=1]="Inline",e[e.Gutter=2]="Gutter"}(w||(w={})),function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.TEXTAREA=1]="TEXTAREA",e[e.GUTTER_GLYPH_MARGIN=2]="GUTTER_GLYPH_MARGIN",e[e.GUTTER_LINE_NUMBERS=3]="GUTTER_LINE_NUMBERS",e[e.GUTTER_LINE_DECORATIONS=4]="GUTTER_LINE_DECORATIONS",e[e.GUTTER_VIEW_ZONE=5]="GUTTER_VIEW_ZONE",e[e.CONTENT_TEXT=6]="CONTENT_TEXT",e[e.CONTENT_EMPTY=7]="CONTENT_EMPTY",e[e.CONTENT_VIEW_ZONE=8]="CONTENT_VIEW_ZONE",e[e.CONTENT_WIDGET=9]="CONTENT_WIDGET",e[e.OVERVIEW_RULER=10]="OVERVIEW_RULER",e[e.SCROLLBAR=11]="SCROLLBAR",e[e.OVERLAY_WIDGET=12]="OVERLAY_WIDGET",e[e.OUTSIDE_EDITOR=13]="OUTSIDE_EDITOR"}(S||(S={})),function(e){e[e.TOP_RIGHT_CORNER=0]="TOP_RIGHT_CORNER",e[e.BOTTOM_RIGHT_CORNER=1]="BOTTOM_RIGHT_CORNER",e[e.TOP_CENTER=2]="TOP_CENTER"}(L||(L={})),function(e){e[e.Left=1]="Left",e[e.Center=2]="Center",e[e.Right=4]="Right",e[e.Full=7]="Full"}(x||(x={})),function(e){e[e.Left=0]="Left",e[e.Right=1]="Right",e[e.None=2]="None",e[e.LeftOfInjectedText=3]="LeftOfInjectedText",e[e.RightOfInjectedText=4]="RightOfInjectedText"}(I||(I={})),function(e){e[e.Off=0]="Off",e[e.On=1]="On",e[e.Relative=2]="Relative",e[e.Interval=3]="Interval",e[e.Custom=4]="Custom"}(D||(D={})),function(e){e[e.None=0]="None",e[e.Text=1]="Text",e[e.Blocks=2]="Blocks"}(T||(T={})),function(e){e[e.Smooth=0]="Smooth",e[e.Immediate=1]="Immediate"}(E||(E={})),function(e){e[e.Auto=1]="Auto",e[e.Hidden=2]="Hidden",e[e.Visible=3]="Visible"}(O||(O={})),function(e){e[e.LTR=0]="LTR",e[e.RTL=1]="RTL"}(M||(M={})),function(e){e[e.Invoke=1]="Invoke",e[e.TriggerCharacter=2]="TriggerCharacter",e[e.ContentChange=3]="ContentChange"}(B||(B={})),function(e){e[e.File=0]="File",e[e.Module=1]="Module",e[e.Namespace=2]="Namespace",e[e.Package=3]="Package",e[e.Class=4]="Class",e[e.Method=5]="Method",e[e.Property=6]="Property",e[e.Field=7]="Field",e[e.Constructor=8]="Constructor",e[e.Enum=9]="Enum",e[e.Interface=10]="Interface",e[e.Function=11]="Function",e[e.Variable=12]="Variable",e[e.Constant=13]="Constant",e[e.String=14]="String",e[e.Number=15]="Number",e[e.Boolean=16]="Boolean",e[e.Array=17]="Array",e[e.Object=18]="Object",e[e.Key=19]="Key",e[e.Null=20]="Null",e[e.EnumMember=21]="EnumMember",e[e.Struct=22]="Struct",e[e.Event=23]="Event",e[e.Operator=24]="Operator",e[e.TypeParameter=25]="TypeParameter"}(N||(N={})),function(e){e[e.Deprecated=1]="Deprecated"}(A||(A={})),function(e){e[e.Hidden=0]="Hidden",e[e.Blink=1]="Blink",e[e.Smooth=2]="Smooth",e[e.Phase=3]="Phase",e[e.Expand=4]="Expand",e[e.Solid=5]="Solid"}(F||(F={})),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"}(R||(R={})),function(e){e[e.AlwaysGrowsWhenTypingAtEdges=0]="AlwaysGrowsWhenTypingAtEdges",e[e.NeverGrowsWhenTypingAtEdges=1]="NeverGrowsWhenTypingAtEdges",e[e.GrowsOnlyWhenTypingBefore=2]="GrowsOnlyWhenTypingBefore",e[e.GrowsOnlyWhenTypingAfter=3]="GrowsOnlyWhenTypingAfter"}(P||(P={})),function(e){e[e.None=0]="None",e[e.Same=1]="Same",e[e.Indent=2]="Indent",e[e.DeepIndent=3]="DeepIndent"}(z||(z={}))},74341:(e,t,i)=>{i.d(t,{E$:()=>o,HP:()=>h,Ic:()=>u,U0:()=>s,Wn:()=>n,bg:()=>a,mS:()=>l,uK:()=>r,vn:()=>c});class n{constructor(){this.changeType=1}}class r{constructor(e,t,i,n,r){this.ownerId=e,this.lineNumber=t,this.column=i,this.options=n,this.order=r}static applyInjectedText(e,t){if(!t||0===t.length)return e;let i="",n=0;for(const r of t)i+=e.substring(n,r.column-1),n=r.column-1,i+=r.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 r(i.ownerId,i.range.startLineNumber,i.range.startColumn,i.options.before,0)),i.options.after&&i.options.after.content.length>0&&t.push(new r(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}}class s{constructor(e,t,i){this.changeType=2,this.lineNumber=e,this.detail=t,this.injectedText=i}}class o{constructor(e,t){this.changeType=3,this.fromLineNumber=e,this.toLineNumber=t}}class a{constructor(e,t,i,n){this.changeType=4,this.injectedTexts=n,this.fromLineNumber=e,this.toLineNumber=t,this.detail=i}}class l{constructor(){this.changeType=5}}class h{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;t<i;t++){if(this.changes[t].changeType===e)return!0}return!1}static merge(e,t){const i=[].concat(e.changes).concat(t.changes),n=t.versionId,r=e.isUndoing||t.isUndoing,s=e.isRedoing||t.isRedoing;return new h(i,n,r,s)}}class c{constructor(e){this.changes=e}}class u{constructor(e,t){this.rawContentChangedEvent=e,this.contentChangedEvent=t}merge(e){const t=h.merge(this.rawContentChangedEvent,e.rawContentChangedEvent),i=u._mergeChangeEvents(this.contentChangedEvent,e.contentChangedEvent);return new u(t,i)}static _mergeChangeEvents(e,t){return{changes:[].concat(e.changes).concat(t.changes),eol:t.eol,versionId:t.versionId,isUndoing:e.isUndoing||t.isUndoing,isRedoing:e.isRedoing||t.isRedoing,isFlush:e.isFlush||t.isFlush}}}},32589:(e,t,i)=>{var n;i.d(t,{N6:()=>n,TH:()=>r,pv:()=>s}),function(e){e[e.Disabled=0]="Disabled",e[e.EnabledForActive=1]="EnabledForActive",e[e.Enabled=2]="Enabled"}(n||(n={}));class r{constructor(e,t,i,n,r,s){if(this.visibleColumn=e,this.column=t,this.className=i,this.horizontalLine=n,this.forWrappedLinesAfterColumn=r,this.forWrappedLinesBeforeOrAtColumn=s,-1!==e===(-1!==t))throw new Error}}class s{constructor(e,t){this.top=e,this.endColumn=t}}},42219:(e,t,i)=>{i.d(t,{f:()=>r});var n=i(61244);class r{constructor(e,t,i){this._lineTokensBrand=void 0,this._tokens=e,this._tokensCount=this._tokens.length>>>1,this._text=t,this._languageIdCodec=i}static createEmpty(e,t){const i=r.defaultTokenMetadata,n=new Uint32Array(2);return n[0]=e.length,n[1]=i,new r(n,e,t)}equals(e){return e instanceof r&&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,r=n+(i<<1);for(let s=n;s<r;s++)if(this._tokens[s]!==e._tokens[s])return!1;return!0}getLineContent(){return this._text}getCount(){return this._tokensCount}getStartOffset(e){return e>0?this._tokens[e-1<<1]:0}getMetadata(e){return this._tokens[1+(e<<1)]}getLanguageId(e){const t=this._tokens[1+(e<<1)],i=n.x.getLanguageId(t);return this._languageIdCodec.decodeLanguageId(i)}getStandardTokenType(e){const t=this._tokens[1+(e<<1)];return n.x.getTokenType(t)}getForeground(e){const t=this._tokens[1+(e<<1)];return n.x.getForeground(t)}getClassName(e){const t=this._tokens[1+(e<<1)];return n.x.getClassNameFromMetadata(t)}getInlineStyle(e,t){const i=this._tokens[1+(e<<1)];return n.x.getInlineStyleFromMetadata(i,t)}getPresentation(e){const t=this._tokens[1+(e<<1)];return n.x.getPresentationFromMetadata(t)}getEndOffset(e){return this._tokens[e<<1]}findTokenIndexAtOffset(e){return r.findIndexInTokensArray(this._tokens,e)}inflate(){return this}sliceAndInflate(e,t,i){return new s(this,e,t,i)}static convertToEndOffset(e,t){const i=(e.length>>>1)-1;for(let n=0;n<i;n++)e[n<<1]=e[n+1<<1];e[i<<1]=t}static findIndexInTokensArray(e,t){if(e.length<=2)return 0;let i=0,n=(e.length>>>1)-1;for(;i<n;){const r=i+Math.floor((n-i)/2),s=e[r<<1];if(s===t)return r+1;s<t?i=r+1:s>t&&(n=r)}return i}withInserted(e){if(0===e.length)return this;let t=0,i=0,n="";const s=new Array;let o=0;for(;;){const r=t<this._tokensCount?this._tokens[t<<1]:-1,a=i<e.length?e[i]:null;if(-1!==r&&(null===a||r<=a.offset)){n+=this._text.substring(o,r);const e=this._tokens[1+(t<<1)];s.push(n.length,e),t++,o=r}else{if(!a)break;if(a.offset>o){n+=this._text.substring(o,a.offset);const e=this._tokens[1+(t<<1)];s.push(n.length,e),o=a.offset}n+=a.text,s.push(n.length,a.tokenMetadata),i++}}return new r(new Uint32Array(s),n,this._languageIdCodec)}}r.defaultTokenMetadata=33587200;class s{constructor(e,t,i,n){this._source=e,this._startOffset=t,this._endOffset=i,this._deltaOffset=n,this._firstTokenIndex=e.findTokenIndexAtOffset(t),this._tokensCount=0;for(let r=this._firstTokenIndex,s=e.getCount();r<s;r++){if(e.getStartOffset(r)>=i)break;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 s&&(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}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}}},61249:(e,t,i)=>{i.d(t,{oC:()=>ye});var n=i(64796),r=i(16974),s=i(69549),o=i(34029),a=i(21181),l=i(88355),h=i(28313),c=i(88459),u=i(90491),d=i(41828),g=i(97061),f=i(44305),p=i(93169),m=i(72240),k=i(24294),_=i(56495),b=i(48640),C=i(20512),v=i(88106),y=i(42464),w=i(55808),S=i(55977),L=i(77721),x=i(59713),I=i(81090);const D={},T=new I.n("quick-input-button-icon-");function E(e){if(!e)return;let t;const i=e.dark.toString();return D[i]?t=D[i]:(t=T.nextId(),u.Wt(`.${t}, .hc-light .${t}`,`background-image: ${u.Tf(e.light||e.dark)}`),u.Wt(`.vs-dark .${t}, .hc-black .${t}`,`background-image: ${u.Tf(e.dark)}`),D[i]=t),t}var O=i(3688),M=i(35819),B=i(24997),N=i(70200);const A=u.$;class F extends w.jG{constructor(e){super(),this.parent=e,this.onKeyDown=e=>u.ko(this.inputBox.inputElement,u.Bx.KEY_DOWN,(t=>{e(new d.Z(t))})),this.onMouseDown=e=>u.ko(this.inputBox.inputElement,u.Bx.MOUSE_DOWN,(t=>{e(new B.P(t))})),this.onDidChange=e=>this.inputBox.onDidChange(e),this.container=u.BC(this.parent,A(".quick-input-box")),this.inputBox=this._register(new N.c(this.container,void 0))}get value(){return this.inputBox.value}set value(e){this.inputBox.value=e}select(e=null){this.inputBox.select(e)}isSelectionAtEnd(){return this.inputBox.isSelectionAtEnd()}get placeholder(){return this.inputBox.inputElement.getAttribute("placeholder")||""}set placeholder(e){this.inputBox.setPlaceHolder(e)}get ariaLabel(){return this.inputBox.getAriaLabel()}set ariaLabel(e){this.inputBox.setAriaLabel(e)}get password(){return"password"===this.inputBox.inputElement.type}set password(e){this.inputBox.inputElement.type=e?"password":"text"}setAttribute(e,t){this.inputBox.inputElement.setAttribute(e,t)}removeAttribute(e){this.inputBox.inputElement.removeAttribute(e)}showDecoration(e){e===L.A.Ignore?this.inputBox.hideMessage():this.inputBox.showMessage({type:e===L.A.Info?1:e===L.A.Warning?2:3,content:""})}stylesForType(e){return this.inputBox.stylesForType(e===L.A.Info?1:e===L.A.Warning?2:3)}setFocus(){this.inputBox.focus()}layout(){this.inputBox.layout()}style(e){this.inputBox.style(e)}}var R=i(54370),P=i(98419),z=i(80540),W=i(1304),V=i(88920),H=i(24638),U=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},j=function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{l(n.next(e))}catch(t){s(t)}}function a(e){try{l(n.throw(e))}catch(t){s(t)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(o,a)}l((n=n.apply(e,t||[])).next())}))};const K=u.$;class q{constructor(e){this.hidden=!1,this._onChecked=new y.vl,this.onChecked=this._onChecked.event,Object.assign(this,e)}get checked(){return!!this._checked}set checked(e){e!==this._checked&&(this._checked=e,this._onChecked.fire(e))}dispose(){this._onChecked.dispose()}}class G{get templateId(){return G.ID}renderTemplate(e){const t=Object.create(null);t.toDisposeElement=[],t.toDisposeTemplate=[],t.entry=u.BC(e,K(".quick-input-list-entry"));const i=u.BC(t.entry,K("label.quick-input-list-label"));t.toDisposeTemplate.push(u.b2(i,u.Bx.CLICK,(e=>{t.checkbox.offsetParent||e.preventDefault()}))),t.checkbox=u.BC(i,K("input.quick-input-list-checkbox")),t.checkbox.type="checkbox",t.toDisposeTemplate.push(u.b2(t.checkbox,u.Bx.CHANGE,(e=>{t.element.checked=t.checkbox.checked})));const n=u.BC(i,K(".quick-input-list-rows")),r=u.BC(n,K(".quick-input-list-row")),s=u.BC(n,K(".quick-input-list-row"));t.label=new R.s(r,{supportHighlights:!0,supportDescriptionHighlights:!0,supportIcons:!0});const o=u.BC(r,K(".quick-input-list-entry-keybinding"));t.keybinding=new P.x(o,S.OS);const a=u.BC(s,K(".quick-input-list-label-meta"));return t.detail=new R.s(a,{supportHighlights:!0,supportIcons:!0}),t.separator=u.BC(t.entry,K(".quick-input-list-separator")),t.actionBar=new g.E(t.entry),t.actionBar.domNode.classList.add("quick-input-list-entry-action-bar"),t.toDisposeTemplate.push(t.actionBar),t}renderElement(e,t,i){i.toDisposeElement=(0,w.AS)(i.toDisposeElement),i.element=e,i.checkbox.checked=e.checked,i.toDisposeElement.push(e.onChecked((e=>i.checkbox.checked=e)));const{labelHighlights:n,descriptionHighlights:r,detailHighlights:s}=e,o=Object.create(null);o.matches=n||[],o.descriptionTitle=e.saneDescription,o.descriptionMatches=r||[],o.extraClasses=e.item.iconClasses,o.italic=e.item.italic,o.strikethrough=e.item.strikethrough,i.label.setLabel(e.saneLabel,e.saneDescription,o),i.keybinding.set(e.item.keybinding),e.saneDetail&&i.detail.setLabel(e.saneDetail,void 0,{matches:s,title:e.saneDetail}),e.separator&&e.separator.label?(i.separator.textContent=e.separator.label,i.separator.style.display=""):i.separator.style.display="none",i.entry.classList.toggle("quick-input-list-separator-border",!!e.separator),i.actionBar.clear();const a=e.item.buttons;a&&a.length?(i.actionBar.push(a.map(((t,i)=>{let n=t.iconClass||(t.iconPath?E(t.iconPath):void 0);t.alwaysVisible&&(n=n?`${n} always-visible`:"always-visible");const r=new _.rc(`id-${i}`,"",n,!0,(()=>j(this,void 0,void 0,(function*(){e.fireButtonTriggered({button:t,item:e.item})}))));return r.tooltip=t.tooltip||"",r})),{icon:!0,label:!1}),i.entry.classList.add("has-actions")):i.entry.classList.remove("has-actions")}disposeElement(e,t,i){i.toDisposeElement=(0,w.AS)(i.toDisposeElement)}disposeTemplate(e){e.toDisposeElement=(0,w.AS)(e.toDisposeElement),e.toDisposeTemplate=(0,w.AS)(e.toDisposeTemplate)}}G.ID="listelement";class ${getHeight(e){return e.saneDetail?44:22}getTemplateId(e){return G.ID}}var Q;!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"}(Q||(Q={}));class Y{constructor(e,t,i){this.parent=e,this.inputElements=[],this.elements=[],this.elementsToIndexes=new Map,this.matchOnDescription=!1,this.matchOnDetail=!1,this.matchOnLabel=!0,this.matchOnLabelMode="fuzzy",this.matchOnMeta=!0,this.sortByLabel=!0,this._onChangedAllVisibleChecked=new y.vl,this.onChangedAllVisibleChecked=this._onChangedAllVisibleChecked.event,this._onChangedCheckedCount=new y.vl,this.onChangedCheckedCount=this._onChangedCheckedCount.event,this._onChangedVisibleCount=new y.vl,this.onChangedVisibleCount=this._onChangedVisibleCount.event,this._onChangedCheckedElements=new y.vl,this.onChangedCheckedElements=this._onChangedCheckedElements.event,this._onButtonTriggered=new y.vl,this.onButtonTriggered=this._onButtonTriggered.event,this._onKeyDown=new y.vl,this.onKeyDown=this._onKeyDown.event,this._onLeave=new y.vl,this.onLeave=this._onLeave.event,this._fireCheckedEvents=!0,this.elementDisposables=[],this.disposables=[],this.id=t,this.container=u.BC(this.parent,K(".quick-input-list"));const n=new $,r=new Z;this.list=i.createList("QuickInput",this.container,n,[new G],{identityProvider:{getId:e=>e.saneLabel},setRowLineHeight:!1,multipleSelectionSupport:!1,horizontalScrolling:!1,accessibilityProvider:r}),this.list.getHTMLElement().id=t,this.disposables.push(this.list),this.disposables.push(this.list.onKeyDown((e=>{const t=new d.Z(e);switch(t.keyCode){case 10:this.toggleCheckbox();break;case 31:(S.zx?e.metaKey:e.ctrlKey)&&this.list.setFocus((0,b.y1)(this.list.length));break;case 16:{const e=this.list.getFocus();1===e.length&&0===e[0]&&this._onLeave.fire();break}case 18:{const e=this.list.getFocus();1===e.length&&e[0]===this.list.length-1&&this._onLeave.fire();break}}this._onKeyDown.fire(t)}))),this.disposables.push(this.list.onMouseDown((e=>{2!==e.browserEvent.button&&e.browserEvent.preventDefault()}))),this.disposables.push(u.ko(this.container,u.Bx.CLICK,(e=>{(e.x||e.y)&&this._onLeave.fire()}))),this.disposables.push(this.list.onMouseMiddleClick((e=>{this._onLeave.fire()}))),this.disposables.push(this.list.onContextMenu((e=>{"number"===typeof e.index&&(e.browserEvent.preventDefault(),this.list.setSelection([e.index]))}))),this.disposables.push(this._onChangedAllVisibleChecked,this._onChangedCheckedCount,this._onChangedVisibleCount,this._onChangedCheckedElements,this._onButtonTriggered,this._onLeave,this._onKeyDown)}get onDidChangeFocus(){return y.Jh.map(this.list.onDidChangeFocus,(e=>e.elements.map((e=>e.item))))}get onDidChangeSelection(){return y.Jh.map(this.list.onDidChangeSelection,(e=>({items:e.elements.map((e=>e.item)),event:e.browserEvent})))}get scrollTop(){return this.list.scrollTop}set scrollTop(e){this.list.scrollTop=e}getAllVisibleChecked(){return this.allVisibleChecked(this.elements,!1)}allVisibleChecked(e,t=!0){for(let i=0,n=e.length;i<n;i++){const n=e[i];if(!n.hidden){if(!n.checked)return!1;t=!0}}return t}getCheckedCount(){let e=0;const t=this.elements;for(let i=0,n=t.length;i<n;i++)t[i].checked&&e++;return e}getVisibleCount(){let e=0;const t=this.elements;for(let i=0,n=t.length;i<n;i++)t[i].hidden||e++;return e}setAllVisibleChecked(e){try{this._fireCheckedEvents=!1,this.elements.forEach((t=>{t.hidden||(t.checked=e)}))}finally{this._fireCheckedEvents=!0,this.fireCheckedEvents()}}setElements(e){this.elementDisposables=(0,w.AS)(this.elementDisposables);const t=e=>this.fireButtonTriggered(e);this.inputElements=e,this.elements=e.reduce(((i,n,r)=>{var s,o,a;if("separator"!==n.type){const l=r&&e[r-1],h=n.label&&n.label.replace(/\r?\n/g," "),c=(0,V._k)(h).text.trim(),u=n.meta&&n.meta.replace(/\r?\n/g," "),d=n.description&&n.description.replace(/\r?\n/g," "),g=n.detail&&n.detail.replace(/\r?\n/g," "),f=n.ariaLabel||[h,d,g].map((e=>(0,v.R$)(e))).filter((e=>!!e)).join(", "),p=this.parent.classList.contains("show-checkboxes");i.push(new q({hasCheckbox:p,index:r,item:n,saneLabel:h,saneSortLabel:c,saneMeta:u,saneAriaLabel:f,saneDescription:d,saneDetail:g,labelHighlights:null===(s=n.highlights)||void 0===s?void 0:s.label,descriptionHighlights:null===(o=n.highlights)||void 0===o?void 0:o.description,detailHighlights:null===(a=n.highlights)||void 0===a?void 0:a.detail,checked:!1,separator:l&&"separator"===l.type?l:void 0,fireButtonTriggered:t}))}return i}),[]),this.elementDisposables.push(...this.elements),this.elementDisposables.push(...this.elements.map((e=>e.onChecked((()=>this.fireCheckedEvents()))))),this.elementsToIndexes=this.elements.reduce(((e,t,i)=>(e.set(t.item,i),e)),new Map),this.list.splice(0,this.list.length),this.list.splice(0,this.list.length,this.elements),this._onChangedVisibleCount.fire(this.elements.length)}getFocusedElements(){return this.list.getFocusedElements().map((e=>e.item))}setFocusedElements(e){if(this.list.setFocus(e.filter((e=>this.elementsToIndexes.has(e))).map((e=>this.elementsToIndexes.get(e)))),e.length>0){const e=this.list.getFocus()[0];"number"===typeof e&&this.list.reveal(e)}}getActiveDescendant(){return this.list.getHTMLElement().getAttribute("aria-activedescendant")}setSelectedElements(e){this.list.setSelection(e.filter((e=>this.elementsToIndexes.has(e))).map((e=>this.elementsToIndexes.get(e))))}getCheckedElements(){return this.elements.filter((e=>e.checked)).map((e=>e.item))}setCheckedElements(e){try{this._fireCheckedEvents=!1;const t=new Set;for(const i of e)t.add(i);for(const e of this.elements)e.checked=t.has(e.item)}finally{this._fireCheckedEvents=!0,this.fireCheckedEvents()}}set enabled(e){this.list.getHTMLElement().style.pointerEvents=e?"":"none"}focus(e){if(!this.list.length)return;switch(e===Q.Next&&this.list.getFocus()[0]===this.list.length-1&&(e=Q.First),e===Q.Previous&&0===this.list.getFocus()[0]&&(e=Q.Last),e===Q.Second&&this.list.length<2&&(e=Q.First),e){case Q.First:this.list.focusFirst();break;case Q.Second:this.list.focusNth(1);break;case Q.Last:this.list.focusLast();break;case Q.Next:this.list.focusNext();break;case Q.Previous:this.list.focusPrevious();break;case Q.NextPage:this.list.focusNextPage();break;case Q.PreviousPage:this.list.focusPreviousPage()}const t=this.list.getFocus()[0];"number"===typeof t&&this.list.reveal(t)}clearFocus(){this.list.setFocus([])}domFocus(){this.list.domFocus()}layout(e){this.list.getHTMLElement().style.maxHeight=e?`calc(${44*Math.floor(e/44)}px)`:"",this.list.layout()}filter(e){if(!(this.sortByLabel||this.matchOnLabel||this.matchOnDescription||this.matchOnDetail))return this.list.layout(),!1;const t=e;if((e=e.trim())&&(this.matchOnLabel||this.matchOnDescription||this.matchOnDetail)){let i;this.elements.forEach((n=>{let r;r="fuzzy"===this.matchOnLabelMode?this.matchOnLabel?(0,x.UH)((0,V.pz)(e,(0,V._k)(n.saneLabel))):void 0:this.matchOnLabel?(0,x.UH)(function(e,t){const{text:i,iconOffsets:n}=t;if(!n||0===n.length)return X(e,i);const r=(0,H.NB)(i," "),s=i.length-r.length,o=X(e,r);if(o)for(const a of o){const e=n[a.start+s]+s;a.start+=e,a.end+=e}return o}(t,(0,V._k)(n.saneLabel))):void 0;const s=this.matchOnDescription?(0,x.UH)((0,V.pz)(e,(0,V._k)(n.saneDescription||""))):void 0,o=this.matchOnDetail?(0,x.UH)((0,V.pz)(e,(0,V._k)(n.saneDetail||""))):void 0,a=this.matchOnMeta?(0,x.UH)((0,V.pz)(e,(0,V._k)(n.saneMeta||""))):void 0;if(r||s||o||a?(n.labelHighlights=r,n.descriptionHighlights=s,n.detailHighlights=o,n.hidden=!1):(n.labelHighlights=void 0,n.descriptionHighlights=void 0,n.detailHighlights=void 0,n.hidden=!n.item.alwaysShow),n.separator=void 0,!this.sortByLabel){const e=n.index&&this.inputElements[n.index-1];i=e&&"separator"===e.type?e:i,i&&!n.hidden&&(n.separator=i,i=void 0)}}))}else this.elements.forEach((e=>{e.labelHighlights=void 0,e.descriptionHighlights=void 0,e.detailHighlights=void 0,e.hidden=!1;const t=e.index&&this.inputElements[e.index-1];e.separator=t&&"separator"===t.type?t:void 0}));const i=this.elements.filter((e=>!e.hidden));if(this.sortByLabel&&e){const t=e.toLowerCase();i.sort(((e,i)=>function(e,t,i){const n=e.labelHighlights||[],r=t.labelHighlights||[];if(n.length&&!r.length)return-1;if(!n.length&&r.length)return 1;if(0===n.length&&0===r.length)return 0;return(0,z.Es)(e.saneSortLabel,t.saneSortLabel,i)}(e,i,t)))}return this.elementsToIndexes=i.reduce(((e,t,i)=>(e.set(t.item,i),e)),new Map),this.list.splice(0,this.list.length,i),this.list.setFocus([]),this.list.layout(),this._onChangedAllVisibleChecked.fire(this.getAllVisibleChecked()),this._onChangedVisibleCount.fire(i.length),!0}toggleCheckbox(){try{this._fireCheckedEvents=!1;const e=this.list.getFocusedElements(),t=this.allVisibleChecked(e);for(const i of e)i.checked=!t}finally{this._fireCheckedEvents=!0,this.fireCheckedEvents()}}display(e){this.container.style.display=e?"":"none"}isDisplayed(){return"none"!==this.container.style.display}dispose(){this.elementDisposables=(0,w.AS)(this.elementDisposables),this.disposables=(0,w.AS)(this.disposables)}fireCheckedEvents(){this._fireCheckedEvents&&(this._onChangedAllVisibleChecked.fire(this.getAllVisibleChecked()),this._onChangedCheckedCount.fire(this.getCheckedCount()),this._onChangedCheckedElements.fire(this.getCheckedElements()))}fireButtonTriggered(e){this._onButtonTriggered.fire(e)}style(e){this.list.style(e)}}function X(e,t){const i=t.toLowerCase().indexOf(e.toLowerCase());return-1!==i?[{start:i,end:i+e.length}]:null}U([W.B],Y.prototype,"onDidChangeFocus",null),U([W.B],Y.prototype,"onDidChangeSelection",null);class Z{getWidgetAriaLabel(){return(0,M.kg)("quickInput","Quick Input")}getAriaLabel(e){var t;return(null===(t=e.separator)||void 0===t?void 0:t.label)?`${e.saneAriaLabel}, ${e.separator.label}`:e.saneAriaLabel}getWidgetRole(){return"listbox"}getRole(e){return e.hasCheckbox?"checkbox":"option"}isChecked(e){if(e.hasCheckbox)return{value:e.checked,onDidChange:e.onChecked}}}var J=function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{l(n.next(e))}catch(t){s(t)}}function a(e){try{l(n.throw(e))}catch(t){s(t)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(o,a)}l((n=n.apply(e,t||[])).next())}))};const ee=u.$,te={iconClass:v.W6.quickInputBack.classNames,tooltip:(0,M.kg)("quickInput.back","Back"),handle:-1};class ie extends w.jG{constructor(e){super(),this.ui=e,this.visible=!1,this._enabled=!0,this._busy=!1,this._ignoreFocusOut=!1,this._buttons=[],this.noValidationMessage=ie.noPromptMessage,this._severity=L.A.Ignore,this.buttonsUpdated=!1,this.onDidTriggerButtonEmitter=this._register(new y.vl),this.onDidHideEmitter=this._register(new y.vl),this.onDisposeEmitter=this._register(new y.vl),this.visibleDisposables=this._register(new w.Cm),this.onDidHide=this.onDidHideEmitter.event}get title(){return this._title}set title(e){this._title=e,this.update()}get description(){return this._description}set description(e){this._description=e,this.update()}get step(){return this._steps}set step(e){this._steps=e,this.update()}get totalSteps(){return this._totalSteps}set totalSteps(e){this._totalSteps=e,this.update()}get enabled(){return this._enabled}set enabled(e){this._enabled=e,this.update()}get contextKey(){return this._contextKey}set contextKey(e){this._contextKey=e,this.update()}get busy(){return this._busy}set busy(e){this._busy=e,this.update()}get ignoreFocusOut(){return this._ignoreFocusOut}set ignoreFocusOut(e){const t=this._ignoreFocusOut!==e&&!S.un;this._ignoreFocusOut=e&&!S.un,t&&this.update()}get buttons(){return this._buttons}set buttons(e){this._buttons=e,this.buttonsUpdated=!0,this.update()}get validationMessage(){return this._validationMessage}set validationMessage(e){this._validationMessage=e,this.update()}get severity(){return this._severity}set severity(e){this._severity=e,this.update()}show(){this.visible||(this.visibleDisposables.add(this.ui.onDidTriggerButton((e=>{-1!==this.buttons.indexOf(e)&&this.onDidTriggerButtonEmitter.fire(e)}))),this.ui.show(this),this.visible=!0,this._lastValidationMessage=void 0,this._lastSeverity=void 0,this.buttons.length&&(this.buttonsUpdated=!0),this.update())}hide(){this.visible&&this.ui.hide()}didHide(e=O.kF.Other){this.visible=!1,this.visibleDisposables.clear(),this.onDidHideEmitter.fire({reason:e})}update(){if(!this.visible)return;const e=this.getTitle();e&&this.ui.title.textContent!==e?this.ui.title.textContent=e:e||"&nbsp;"===this.ui.title.innerHTML||(this.ui.title.innerText="\xa0");const t=this.getDescription();if(this.ui.description1.textContent!==t&&(this.ui.description1.textContent=t),this.ui.description2.textContent!==t&&(this.ui.description2.textContent=t),this.busy&&!this.busyDelay&&(this.busyDelay=new C.pc,this.busyDelay.setIfNotSet((()=>{this.visible&&this.ui.progressBar.infinite()}),800)),!this.busy&&this.busyDelay&&(this.ui.progressBar.stop(),this.busyDelay.cancel(),this.busyDelay=void 0),this.buttonsUpdated){this.buttonsUpdated=!1,this.ui.leftActionBar.clear();const e=this.buttons.filter((e=>e===te));this.ui.leftActionBar.push(e.map(((e,t)=>{const i=new _.rc(`id-${t}`,"",e.iconClass||E(e.iconPath),!0,(()=>J(this,void 0,void 0,(function*(){this.onDidTriggerButtonEmitter.fire(e)}))));return i.tooltip=e.tooltip||"",i})),{icon:!0,label:!1}),this.ui.rightActionBar.clear();const t=this.buttons.filter((e=>e!==te));this.ui.rightActionBar.push(t.map(((e,t)=>{const i=new _.rc(`id-${t}`,"",e.iconClass||E(e.iconPath),!0,(()=>J(this,void 0,void 0,(function*(){this.onDidTriggerButtonEmitter.fire(e)}))));return i.tooltip=e.tooltip||"",i})),{icon:!0,label:!1})}this.ui.ignoreFocusOut=this.ignoreFocusOut,this.ui.setEnabled(this.enabled),this.ui.setContextKey(this.contextKey);const i=this.validationMessage||this.noValidationMessage;this._lastValidationMessage!==i&&(this._lastValidationMessage=i,u.Ln(this.ui.message,...(0,m.n)(i))),this._lastSeverity!==this.severity&&(this._lastSeverity=this.severity,this.showMessageDecoration(this.severity))}getTitle(){return this.title&&this.step?`${this.title} (${this.getSteps()})`:this.title?this.title:this.step?this.getSteps():""}getDescription(){return this.description||""}getSteps(){return this.step&&this.totalSteps?(0,M.kg)("quickInput.steps","{0}/{1}",this.step,this.totalSteps):this.step?String(this.step):""}showMessageDecoration(e){if(this.ui.inputBox.showDecoration(e),e!==L.A.Ignore){const t=this.ui.inputBox.stylesForType(e);this.ui.message.style.color=t.foreground?`${t.foreground}`:"",this.ui.message.style.backgroundColor=t.background?`${t.background}`:"",this.ui.message.style.border=t.border?`1px solid ${t.border}`:"",this.ui.message.style.marginBottom="-2px"}else this.ui.message.style.color="",this.ui.message.style.backgroundColor="",this.ui.message.style.border="",this.ui.message.style.marginBottom=""}dispose(){this.hide(),this.onDisposeEmitter.fire(),super.dispose()}}ie.noPromptMessage=(0,M.kg)("inputModeEntry","Press 'Enter' to confirm your input or 'Escape' to cancel");class ne extends ie{constructor(){super(...arguments),this._value="",this.onDidChangeValueEmitter=this._register(new y.vl),this.onWillAcceptEmitter=this._register(new y.vl),this.onDidAcceptEmitter=this._register(new y.vl),this.onDidCustomEmitter=this._register(new y.vl),this._items=[],this.itemsUpdated=!1,this._canSelectMany=!1,this._canAcceptInBackground=!1,this._matchOnDescription=!1,this._matchOnDetail=!1,this._matchOnLabel=!0,this._matchOnLabelMode="fuzzy",this._sortByLabel=!0,this._autoFocusOnList=!0,this._keepScrollPosition=!1,this._itemActivation=this.ui.isScreenReaderOptimized()?O.C1.NONE:O.C1.FIRST,this._activeItems=[],this.activeItemsUpdated=!1,this.activeItemsToConfirm=[],this.onDidChangeActiveEmitter=this._register(new y.vl),this._selectedItems=[],this.selectedItemsUpdated=!1,this.selectedItemsToConfirm=[],this.onDidChangeSelectionEmitter=this._register(new y.vl),this.onDidTriggerItemButtonEmitter=this._register(new y.vl),this.valueSelectionUpdated=!0,this._ok="default",this._customButton=!1,this.filterValue=e=>e,this.onDidChangeValue=this.onDidChangeValueEmitter.event,this.onWillAccept=this.onWillAcceptEmitter.event,this.onDidAccept=this.onDidAcceptEmitter.event,this.onDidChangeActive=this.onDidChangeActiveEmitter.event,this.onDidChangeSelection=this.onDidChangeSelectionEmitter.event,this.onDidTriggerItemButton=this.onDidTriggerItemButtonEmitter.event}get quickNavigate(){return this._quickNavigate}set quickNavigate(e){this._quickNavigate=e,this.update()}get value(){return this._value}set value(e){this.doSetValue(e)}doSetValue(e,t){if(this._value!==e){if(this._value=e,t||this.update(),this.visible){this.ui.list.filter(this.filterValue(this._value))&&this.trySelectFirst()}this.onDidChangeValueEmitter.fire(this._value)}}set ariaLabel(e){this._ariaLabel=e,this.update()}get ariaLabel(){return this._ariaLabel}get placeholder(){return this._placeholder}set placeholder(e){this._placeholder=e,this.update()}get items(){return this._items}get scrollTop(){return this.ui.list.scrollTop}set scrollTop(e){this.ui.list.scrollTop=e}set items(e){this._items=e,this.itemsUpdated=!0,this.update()}get canSelectMany(){return this._canSelectMany}set canSelectMany(e){this._canSelectMany=e,this.update()}get canAcceptInBackground(){return this._canAcceptInBackground}set canAcceptInBackground(e){this._canAcceptInBackground=e}get matchOnDescription(){return this._matchOnDescription}set matchOnDescription(e){this._matchOnDescription=e,this.update()}get matchOnDetail(){return this._matchOnDetail}set matchOnDetail(e){this._matchOnDetail=e,this.update()}get matchOnLabel(){return this._matchOnLabel}set matchOnLabel(e){this._matchOnLabel=e,this.update()}get matchOnLabelMode(){return this._matchOnLabelMode}set matchOnLabelMode(e){this._matchOnLabelMode=e,this.update()}get sortByLabel(){return this._sortByLabel}set sortByLabel(e){this._sortByLabel=e,this.update()}get autoFocusOnList(){return this._autoFocusOnList}set autoFocusOnList(e){this._autoFocusOnList=e,this.update()}get keepScrollPosition(){return this._keepScrollPosition}set keepScrollPosition(e){this._keepScrollPosition=e}get itemActivation(){return this._itemActivation}set itemActivation(e){this._itemActivation=e}get activeItems(){return this._activeItems}set activeItems(e){this._activeItems=e,this.activeItemsUpdated=!0,this.update()}get selectedItems(){return this._selectedItems}set selectedItems(e){this._selectedItems=e,this.selectedItemsUpdated=!0,this.update()}get keyMods(){return this._quickNavigate?O.Ym:this.ui.keyMods}set valueSelection(e){this._valueSelection=e,this.valueSelectionUpdated=!0,this.update()}get customButton(){return this._customButton}set customButton(e){this._customButton=e,this.update()}get customLabel(){return this._customButtonLabel}set customLabel(e){this._customButtonLabel=e,this.update()}get customHover(){return this._customButtonHover}set customHover(e){this._customButtonHover=e,this.update()}get ok(){return this._ok}set ok(e){this._ok=e,this.update()}get hideInput(){return!!this._hideInput}set hideInput(e){this._hideInput=e,this.update()}trySelectFirst(){this.autoFocusOnList&&(this.canSelectMany||this.ui.list.focus(Q.First))}show(){this.visible||(this.visibleDisposables.add(this.ui.inputBox.onDidChange((e=>{this.doSetValue(e,!0)}))),this.visibleDisposables.add(this.ui.inputBox.onMouseDown((e=>{this.autoFocusOnList||this.ui.list.clearFocus()}))),this.visibleDisposables.add((this._hideInput?this.ui.list:this.ui.inputBox).onKeyDown((e=>{switch(e.keyCode){case 18:this.ui.list.focus(Q.Next),this.canSelectMany&&this.ui.list.domFocus(),u.fs.stop(e,!0);break;case 16:this.ui.list.getFocusedElements().length?this.ui.list.focus(Q.Previous):this.ui.list.focus(Q.Last),this.canSelectMany&&this.ui.list.domFocus(),u.fs.stop(e,!0);break;case 12:this.ui.list.focus(Q.NextPage),this.canSelectMany&&this.ui.list.domFocus(),u.fs.stop(e,!0);break;case 11:this.ui.list.focus(Q.PreviousPage),this.canSelectMany&&this.ui.list.domFocus(),u.fs.stop(e,!0);break;case 17:if(!this._canAcceptInBackground)return;if(!this.ui.inputBox.isSelectionAtEnd())return;this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems),this.handleAccept(!0));break;case 14:!e.ctrlKey&&!e.metaKey||e.shiftKey||e.altKey||(this.ui.list.focus(Q.First),u.fs.stop(e,!0));break;case 13:!e.ctrlKey&&!e.metaKey||e.shiftKey||e.altKey||(this.ui.list.focus(Q.Last),u.fs.stop(e,!0))}}))),this.visibleDisposables.add(this.ui.onDidAccept((()=>{this.canSelectMany?this.ui.list.getCheckedElements().length||(this._selectedItems=[],this.onDidChangeSelectionEmitter.fire(this.selectedItems)):this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems)),this.handleAccept(!1)}))),this.visibleDisposables.add(this.ui.onDidCustom((()=>{this.onDidCustomEmitter.fire()}))),this.visibleDisposables.add(this.ui.list.onDidChangeFocus((e=>{this.activeItemsUpdated||this.activeItemsToConfirm!==this._activeItems&&(0,b.aI)(e,this._activeItems,((e,t)=>e===t))||(this._activeItems=e,this.onDidChangeActiveEmitter.fire(e))}))),this.visibleDisposables.add(this.ui.list.onDidChangeSelection((({items:e,event:t})=>{this.canSelectMany?e.length&&this.ui.list.setSelectedElements([]):this.selectedItemsToConfirm!==this._selectedItems&&(0,b.aI)(e,this._selectedItems,((e,t)=>e===t))||(this._selectedItems=e,this.onDidChangeSelectionEmitter.fire(e),e.length&&this.handleAccept(t instanceof MouseEvent&&1===t.button))}))),this.visibleDisposables.add(this.ui.list.onChangedCheckedElements((e=>{this.canSelectMany&&(this.selectedItemsToConfirm!==this._selectedItems&&(0,b.aI)(e,this._selectedItems,((e,t)=>e===t))||(this._selectedItems=e,this.onDidChangeSelectionEmitter.fire(e)))}))),this.visibleDisposables.add(this.ui.list.onButtonTriggered((e=>this.onDidTriggerItemButtonEmitter.fire(e)))),this.visibleDisposables.add(this.registerQuickNavigation()),this.valueSelectionUpdated=!0),super.show()}handleAccept(e){let t=!1;this.onWillAcceptEmitter.fire({veto:()=>t=!0}),t||this.onDidAcceptEmitter.fire({inBackground:e})}registerQuickNavigation(){return u.ko(this.ui.container,u.Bx.KEY_UP,(e=>{if(this.canSelectMany||!this._quickNavigate)return;const t=new d.Z(e),i=t.keyCode;this._quickNavigate.keybindings.some((e=>{const[n,r]=e.getParts();return!r&&(n.shiftKey&&4===i?!(t.ctrlKey||t.altKey||t.metaKey):!(!n.altKey||6!==i)||(!(!n.ctrlKey||5!==i)||!(!n.metaKey||57!==i)))}))&&(this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems),this.handleAccept(!1)),this._quickNavigate=void 0)}))}update(){if(!this.visible)return;const e=this.keepScrollPosition?this.scrollTop:0,t=!!this._hideInput&&this._items.length>0;this.ui.container.classList.toggle("hidden-input",t&&!this.description);const i={title:!!this.title||!!this.step||!!this.buttons.length,description:!!this.description,checkAll:this.canSelectMany&&!this._hideCheckAll,checkBox:this.canSelectMany,inputBox:!t,progressBar:!t,visibleCount:!0,count:this.canSelectMany,ok:"default"===this.ok?this.canSelectMany:this.ok,list:!0,message:!!this.validationMessage,customButton:this.customButton};this.ui.setVisibilities(i),super.update(),this.ui.inputBox.value!==this.value&&(this.ui.inputBox.value=this.value),this.valueSelectionUpdated&&(this.valueSelectionUpdated=!1,this.ui.inputBox.select(this._valueSelection&&{start:this._valueSelection[0],end:this._valueSelection[1]})),this.ui.inputBox.placeholder!==(this.placeholder||"")&&(this.ui.inputBox.placeholder=this.placeholder||"");let n=this.ariaLabel;if(n||(n=this.placeholder||ne.DEFAULT_ARIA_LABEL,this.title&&(n+=` - ${this.title}`)),this.ui.inputBox.ariaLabel!==n&&(this.ui.inputBox.ariaLabel=n),this.ui.list.matchOnDescription=this.matchOnDescription,this.ui.list.matchOnDetail=this.matchOnDetail,this.ui.list.matchOnLabel=this.matchOnLabel,this.ui.list.matchOnLabelMode=this.matchOnLabelMode,this.ui.list.sortByLabel=this.sortByLabel,this.itemsUpdated)switch(this.itemsUpdated=!1,this.ui.list.setElements(this.items),this.ui.list.filter(this.filterValue(this.ui.inputBox.value)),this.ui.checkAll.checked=this.ui.list.getAllVisibleChecked(),this.ui.visibleCount.setCount(this.ui.list.getVisibleCount()),this.ui.count.setCount(this.ui.list.getCheckedCount()),this._itemActivation){case O.C1.NONE:this._itemActivation=O.C1.FIRST;break;case O.C1.SECOND:this.ui.list.focus(Q.Second),this._itemActivation=O.C1.FIRST;break;case O.C1.LAST:this.ui.list.focus(Q.Last),this._itemActivation=O.C1.FIRST;break;default:this.trySelectFirst()}this.ui.container.classList.contains("show-checkboxes")!==!!this.canSelectMany&&(this.canSelectMany?this.ui.list.clearFocus():this.trySelectFirst()),this.activeItemsUpdated&&(this.activeItemsUpdated=!1,this.activeItemsToConfirm=this._activeItems,this.ui.list.setFocusedElements(this.activeItems),this.activeItemsToConfirm===this._activeItems&&(this.activeItemsToConfirm=null)),this.selectedItemsUpdated&&(this.selectedItemsUpdated=!1,this.selectedItemsToConfirm=this._selectedItems,this.canSelectMany?this.ui.list.setCheckedElements(this.selectedItems):this.ui.list.setSelectedElements(this.selectedItems),this.selectedItemsToConfirm===this._selectedItems&&(this.selectedItemsToConfirm=null)),this.ui.customButton.label=this.customLabel||"",this.ui.customButton.element.title=this.customHover||"",this.ui.setComboboxAccessibility(!0),i.inputBox||(this.ui.list.domFocus(),this.canSelectMany&&this.ui.list.focus(Q.First)),this.keepScrollPosition&&(this.scrollTop=e)}}ne.DEFAULT_ARIA_LABEL=(0,M.kg)("quickInputBox.ariaLabel","Type to narrow down results.");class re extends w.jG{constructor(e){super(),this.options=e,this.comboboxAccessibility=!1,this.enabled=!0,this.onDidAcceptEmitter=this._register(new y.vl),this.onDidCustomEmitter=this._register(new y.vl),this.onDidTriggerButtonEmitter=this._register(new y.vl),this.keyMods={ctrlCmd:!1,alt:!1},this.controller=null,this.onShowEmitter=this._register(new y.vl),this.onShow=this.onShowEmitter.event,this.onHideEmitter=this._register(new y.vl),this.onHide=this.onHideEmitter.event,this.idPrefix=e.idPrefix,this.parentElement=e.container,this.styles=e.styles,this.registerKeyModsListeners()}registerKeyModsListeners(){const e=e=>{this.keyMods.ctrlCmd=e.ctrlKey||e.metaKey,this.keyMods.alt=e.altKey};this._register(u.ko(window,u.Bx.KEY_DOWN,e,!0)),this._register(u.ko(window,u.Bx.KEY_UP,e,!0)),this._register(u.ko(window,u.Bx.MOUSE_DOWN,e,!0))}getUI(){if(this.ui)return this.ui;const e=u.BC(this.parentElement,ee(".quick-input-widget.show-file-icons"));e.tabIndex=-1,e.style.display="none";const t=u.li(e),i=u.BC(e,ee(".quick-input-titlebar")),n=this._register(new g.E(i));n.domNode.classList.add("quick-input-left-action-bar");const r=u.BC(i,ee(".quick-input-title")),s=this._register(new g.E(i));s.domNode.classList.add("quick-input-right-action-bar");const o=u.BC(e,ee(".quick-input-description")),a=u.BC(e,ee(".quick-input-header")),l=u.BC(a,ee("input.quick-input-check-all"));l.type="checkbox",l.setAttribute("aria-label",(0,M.kg)("quickInput.checkAll","Toggle all checkboxes")),this._register(u.b2(l,u.Bx.CHANGE,(e=>{const t=l.checked;D.setAllVisibleChecked(t)}))),this._register(u.ko(l,u.Bx.CLICK,(e=>{(e.x||e.y)&&_.setFocus()})));const h=u.BC(a,ee(".quick-input-description")),c=u.BC(a,ee(".quick-input-and-message")),m=u.BC(c,ee(".quick-input-filter")),_=this._register(new F(m));_.setAttribute("aria-describedby",`${this.idPrefix}message`);const b=u.BC(m,ee(".quick-input-visible-count"));b.setAttribute("aria-live","polite"),b.setAttribute("aria-atomic","true");const C=new p.x(b,{countFormat:(0,M.kg)({key:"quickInput.visibleCount",comment:["This tells the user how many items are shown in a list of items to select from. The items can be anything. Currently not visible, but read by screen readers."]},"{0} Results")}),v=u.BC(m,ee(".quick-input-count"));v.setAttribute("aria-live","polite");const y=new p.x(v,{countFormat:(0,M.kg)({key:"quickInput.countSelected",comment:["This tells the user how many items are selected in a list of items to select from. The items can be anything."]},"{0} Selected")}),w=u.BC(a,ee(".quick-input-action")),S=new f.$(w);S.label=(0,M.kg)("ok","OK"),this._register(S.onDidClick((e=>{this.onDidAcceptEmitter.fire()})));const L=u.BC(a,ee(".quick-input-action")),x=new f.$(L);x.label=(0,M.kg)("custom","Custom"),this._register(x.onDidClick((e=>{this.onDidCustomEmitter.fire()})));const I=u.BC(c,ee(`#${this.idPrefix}message.quick-input-message`)),D=this._register(new Y(e,this.idPrefix+"list",this.options));this._register(D.onChangedAllVisibleChecked((e=>{l.checked=e}))),this._register(D.onChangedVisibleCount((e=>{C.setCount(e)}))),this._register(D.onChangedCheckedCount((e=>{y.setCount(e)}))),this._register(D.onLeave((()=>{setTimeout((()=>{_.setFocus(),this.controller instanceof ne&&this.controller.canSelectMany&&D.clearFocus()}),0)}))),this._register(D.onDidChangeFocus((()=>{this.comboboxAccessibility&&this.getUI().inputBox.setAttribute("aria-activedescendant",this.getUI().list.getActiveDescendant()||"")})));const T=new k.z(e);T.getContainer().classList.add("quick-input-progress");const E=u.w5(e);return this._register(E),this._register(u.ko(e,u.Bx.FOCUS,(e=>{this.previousFocusElement=e.relatedTarget instanceof HTMLElement?e.relatedTarget:void 0}),!0)),this._register(E.onDidBlur((()=>{this.getUI().ignoreFocusOut||this.options.ignoreFocusOut()||this.hide(O.kF.Blur),this.previousFocusElement=void 0}))),this._register(u.ko(e,u.Bx.FOCUS,(e=>{_.setFocus()}))),this._register(u.ko(e,u.Bx.KEY_DOWN,(t=>{const i=new d.Z(t);switch(i.keyCode){case 3:u.fs.stop(t,!0),this.onDidAcceptEmitter.fire();break;case 9:u.fs.stop(t,!0),this.hide(O.kF.Gesture);break;case 2:if(!i.altKey&&!i.ctrlKey&&!i.metaKey){const n=[".action-label.codicon"];e.classList.contains("show-checkboxes")?n.push("input"):n.push("input[type=text]"),this.getUI().list.isDisplayed()&&n.push(".monaco-list");const r=e.querySelectorAll(n.join(", "));i.shiftKey&&i.target===r[0]?(u.fs.stop(t,!0),r[r.length-1].focus()):i.shiftKey||i.target!==r[r.length-1]||(u.fs.stop(t,!0),r[0].focus())}}}))),this.ui={container:e,styleSheet:t,leftActionBar:n,titleBar:i,title:r,description1:o,description2:h,rightActionBar:s,checkAll:l,filterContainer:m,inputBox:_,visibleCountContainer:b,visibleCount:C,countContainer:v,count:y,okContainer:w,ok:S,message:I,customButtonContainer:L,customButton:x,list:D,progressBar:T,onDidAccept:this.onDidAcceptEmitter.event,onDidCustom:this.onDidCustomEmitter.event,onDidTriggerButton:this.onDidTriggerButtonEmitter.event,ignoreFocusOut:!1,keyMods:this.keyMods,isScreenReaderOptimized:()=>this.options.isScreenReaderOptimized(),show:e=>this.show(e),hide:()=>this.hide(),setVisibilities:e=>this.setVisibilities(e),setComboboxAccessibility:e=>this.setComboboxAccessibility(e),setEnabled:e=>this.setEnabled(e),setContextKey:e=>this.options.setContextKey(e)},this.updateStyles(),this.ui}pick(e,t={},i=s.X.None){return new Promise(((n,r)=>{let s=e=>{var i;s=n,null===(i=t.onKeyMods)||void 0===i||i.call(t,o.keyMods),n(e)};if(i.isCancellationRequested)return void s(void 0);const o=this.createQuickPick();let a;const l=[o,o.onDidAccept((()=>{if(o.canSelectMany)s(o.selectedItems.slice()),o.hide();else{const e=o.activeItems[0];e&&(s(e),o.hide())}})),o.onDidChangeActive((e=>{const i=e[0];i&&t.onDidFocus&&t.onDidFocus(i)})),o.onDidChangeSelection((e=>{if(!o.canSelectMany){const t=e[0];t&&(s(t),o.hide())}})),o.onDidTriggerItemButton((e=>t.onDidTriggerItemButton&&t.onDidTriggerItemButton(Object.assign(Object.assign({},e),{removeItem:()=>{const t=o.items.indexOf(e.item);if(-1!==t){const e=o.items.slice(),i=e.splice(t,1),n=o.activeItems.filter((e=>e!==i[0])),r=o.keepScrollPosition;o.keepScrollPosition=!0,o.items=e,n&&(o.activeItems=n),o.keepScrollPosition=r}}})))),o.onDidChangeValue((e=>{!a||e||1===o.activeItems.length&&o.activeItems[0]===a||(o.activeItems=[a])})),i.onCancellationRequested((()=>{o.hide()})),o.onDidHide((()=>{(0,w.AS)(l),s(void 0)}))];o.title=t.title,o.canSelectMany=!!t.canPickMany,o.placeholder=t.placeHolder,o.ignoreFocusOut=!!t.ignoreFocusLost,o.matchOnDescription=!!t.matchOnDescription,o.matchOnDetail=!!t.matchOnDetail,o.matchOnLabel=void 0===t.matchOnLabel||t.matchOnLabel,o.autoFocusOnList=void 0===t.autoFocusOnList||t.autoFocusOnList,o.quickNavigate=t.quickNavigate,o.hideInput=!!t.hideInput,o.contextKey=t.contextKey,o.busy=!0,Promise.all([e,t.activeItem]).then((([e,t])=>{a=t,o.busy=!1,o.items=e,o.canSelectMany&&(o.selectedItems=e.filter((e=>"separator"!==e.type&&e.picked))),a&&(o.activeItems=[a])})),o.show(),Promise.resolve(e).then(void 0,(e=>{r(e),o.hide()}))}))}createQuickPick(){const e=this.getUI();return new ne(e)}show(e){const t=this.getUI();this.onShowEmitter.fire();const i=this.controller;this.controller=e,i&&i.didHide(),this.setEnabled(!0),t.leftActionBar.clear(),t.title.textContent="",t.description1.textContent="",t.description2.textContent="",t.rightActionBar.clear(),t.checkAll.checked=!1,t.inputBox.placeholder="",t.inputBox.password=!1,t.inputBox.showDecoration(L.A.Ignore),t.visibleCount.setCount(0),t.count.setCount(0),u.Ln(t.message),t.progressBar.stop(),t.list.setElements([]),t.list.matchOnDescription=!1,t.list.matchOnDetail=!1,t.list.matchOnLabel=!0,t.list.sortByLabel=!0,t.ignoreFocusOut=!1,this.setComboboxAccessibility(!1),t.inputBox.ariaLabel="";const n=this.options.backKeybindingLabel();te.tooltip=n?(0,M.kg)("quickInput.backWithKeybinding","Back ({0})",n):(0,M.kg)("quickInput.back","Back"),t.container.style.display="",this.updateLayout(),t.inputBox.setFocus()}setVisibilities(e){const t=this.getUI();t.title.style.display=e.title?"":"none",t.description1.style.display=e.description&&(e.inputBox||e.checkAll)?"":"none",t.description2.style.display=!e.description||e.inputBox||e.checkAll?"none":"",t.checkAll.style.display=e.checkAll?"":"none",t.filterContainer.style.display=e.inputBox?"":"none",t.visibleCountContainer.style.display=e.visibleCount?"":"none",t.countContainer.style.display=e.count?"":"none",t.okContainer.style.display=e.ok?"":"none",t.customButtonContainer.style.display=e.customButton?"":"none",t.message.style.display=e.message?"":"none",t.progressBar.getContainer().style.display=e.progressBar?"":"none",t.list.display(!!e.list),t.container.classList[e.checkBox?"add":"remove"]("show-checkboxes"),this.updateLayout()}setComboboxAccessibility(e){if(e!==this.comboboxAccessibility){const t=this.getUI();this.comboboxAccessibility=e,this.comboboxAccessibility?(t.inputBox.setAttribute("role","combobox"),t.inputBox.setAttribute("aria-haspopup","true"),t.inputBox.setAttribute("aria-autocomplete","list"),t.inputBox.setAttribute("aria-activedescendant",t.list.getActiveDescendant()||"")):(t.inputBox.removeAttribute("role"),t.inputBox.removeAttribute("aria-haspopup"),t.inputBox.removeAttribute("aria-autocomplete"),t.inputBox.removeAttribute("aria-activedescendant"))}}setEnabled(e){if(e!==this.enabled){this.enabled=e;for(const t of this.getUI().leftActionBar.viewItems)t.getAction().enabled=e;for(const t of this.getUI().rightActionBar.viewItems)t.getAction().enabled=e;this.getUI().checkAll.disabled=!e,this.getUI().ok.enabled=e,this.getUI().list.enabled=e}}hide(e){var t;const i=this.controller;if(i){const n=!(null===(t=this.ui)||void 0===t?void 0:t.container.contains(document.activeElement));if(this.controller=null,this.onHideEmitter.fire(),this.getUI().container.style.display="none",!n){let e=this.previousFocusElement;for(;e&&!e.offsetParent;)e=(0,x.UH)(e.parentElement);(null===e||void 0===e?void 0:e.offsetParent)?(e.focus(),this.previousFocusElement=void 0):this.options.returnFocus()}i.didHide(e)}}layout(e,t){this.dimension=e,this.titleBarOffset=t,this.updateLayout()}updateLayout(){if(this.ui){this.ui.container.style.top=`${this.titleBarOffset}px`;const e=this.ui.container.style,t=Math.min(.62*this.dimension.width,re.MAX_WIDTH);e.width=t+"px",e.marginLeft="-"+t/2+"px",this.ui.inputBox.layout(),this.ui.list.layout(this.dimension&&.4*this.dimension.height)}}applyStyles(e){this.styles=e,this.updateStyles()}updateStyles(){if(this.ui){const{quickInputTitleBackground:e,quickInputBackground:t,quickInputForeground:i,contrastBorder:n,widgetShadow:r}=this.styles.widget;this.ui.titleBar.style.backgroundColor=e?e.toString():"",this.ui.container.style.backgroundColor=t?t.toString():"",this.ui.container.style.color=i?i.toString():"",this.ui.container.style.border=n?`1px solid ${n}`:"",this.ui.container.style.boxShadow=r?`0 0 8px 2px ${r}`:"",this.ui.inputBox.style(this.styles.inputBox),this.ui.count.style(this.styles.countBadge),this.ui.ok.style(this.styles.button),this.ui.customButton.style(this.styles.button),this.ui.progressBar.style(this.styles.progressBar),this.ui.list.style(this.styles.list);const s=[];this.styles.list.pickerGroupBorder&&s.push(`.quick-input-list .quick-input-list-entry { border-top-color: ${this.styles.list.pickerGroupBorder}; }`),this.styles.list.pickerGroupForeground&&s.push(`.quick-input-list .quick-input-list-separator { color: ${this.styles.list.pickerGroupForeground}; }`),(this.styles.keybindingLabel.keybindingLabelBackground||this.styles.keybindingLabel.keybindingLabelBorder||this.styles.keybindingLabel.keybindingLabelBottomBorder||this.styles.keybindingLabel.keybindingLabelShadow||this.styles.keybindingLabel.keybindingLabelForeground)&&(s.push(".quick-input-list .monaco-keybinding > .monaco-keybinding-key {"),this.styles.keybindingLabel.keybindingLabelBackground&&s.push(`background-color: ${this.styles.keybindingLabel.keybindingLabelBackground};`),this.styles.keybindingLabel.keybindingLabelBorder&&s.push(`border-color: ${this.styles.keybindingLabel.keybindingLabelBorder};`),this.styles.keybindingLabel.keybindingLabelBottomBorder&&s.push(`border-bottom-color: ${this.styles.keybindingLabel.keybindingLabelBottomBorder};`),this.styles.keybindingLabel.keybindingLabelShadow&&s.push(`box-shadow: inset 0 -1px 0 ${this.styles.keybindingLabel.keybindingLabelShadow};`),this.styles.keybindingLabel.keybindingLabelForeground&&s.push(`color: ${this.styles.keybindingLabel.keybindingLabelForeground};`),s.push("}"));const o=s.join("\n");o!==this.ui.styleSheet.textContent&&(this.ui.styleSheet.textContent=o)}}}re.MAX_WIDTH=600;var se=i(8547),oe=i(22407),ae=i(8663),le=i(27563),he=i(31001),ce=i(1097),ue=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},de=function(e,t){return function(i,n){t(i,n,e)}};let ge=class extends w.jG{constructor(e,t){super(),this.quickInputService=e,this.instantiationService=t,this.registry=ce.O.as(le.Fd.Quickaccess),this.mapProviderToDescriptor=new Map,this.lastAcceptedPickerValues=new Map,this.visibleQuickAccess=void 0}show(e="",t){this.doShowOrPick(e,!1,t)}doShowOrPick(e,t,i){var n;const[r,o]=this.getOrInstantiateProvider(e),a=this.visibleQuickAccess,l=null===a||void 0===a?void 0:a.descriptor;if(a&&o&&l===o)return e===o.prefix||(null===i||void 0===i?void 0:i.preserveValue)||(a.picker.value=e),void this.adjustValueSelection(a.picker,o,i);if(o&&!(null===i||void 0===i?void 0:i.preserveValue)){let t;if(a&&l&&l!==o){const e=a.value.substr(l.prefix.length);e&&(t=`${o.prefix}${e}`)}if(!t){const e=null===r||void 0===r?void 0:r.defaultFilterValue;e===le.aJ.LAST?t=this.lastAcceptedPickerValues.get(o):"string"===typeof e&&(t=`${o.prefix}${e}`)}"string"===typeof t&&(e=t)}const h=new w.Cm,c=h.add(this.quickInputService.createQuickPick());let u;c.value=e,this.adjustValueSelection(c,o,i),c.placeholder=null===o||void 0===o?void 0:o.placeholder,c.quickNavigate=null===i||void 0===i?void 0:i.quickNavigateConfiguration,c.hideInput=!!c.quickNavigate&&!a,("number"===typeof(null===i||void 0===i?void 0:i.itemActivation)||(null===i||void 0===i?void 0:i.quickNavigateConfiguration))&&(c.itemActivation=null!==(n=null===i||void 0===i?void 0:i.itemActivation)&&void 0!==n?n:he.C1.SECOND),c.contextKey=null===o||void 0===o?void 0:o.contextKey,c.filterValue=e=>e.substring(o?o.prefix.length:0),(null===o||void 0===o?void 0:o.placeholder)&&(c.ariaLabel=null===o||void 0===o?void 0:o.placeholder),t&&(u=new C.Zv,h.add((0,ae.O)(c.onWillAccept)((e=>{e.veto(),c.hide()})))),h.add(this.registerPickerListeners(c,r,o,e));const d=h.add(new s.Q);return r&&h.add(r.provide(c,d.token)),(0,ae.O)(c.onDidHide)((()=>{0===c.selectedItems.length&&d.cancel(),h.dispose(),null===u||void 0===u||u.complete(c.selectedItems.slice(0))})),c.show(),t?null===u||void 0===u?void 0:u.p:void 0}adjustValueSelection(e,t,i){var n;let r;r=(null===i||void 0===i?void 0:i.preserveValue)?[e.value.length,e.value.length]:[null!==(n=null===t||void 0===t?void 0:t.prefix.length)&&void 0!==n?n:0,e.value.length],e.valueSelection=r}registerPickerListeners(e,t,i,n){const r=new w.Cm,s=this.visibleQuickAccess={picker:e,descriptor:i,value:n};return r.add((0,w.s)((()=>{s===this.visibleQuickAccess&&(this.visibleQuickAccess=void 0)}))),r.add(e.onDidChangeValue((e=>{const[i]=this.getOrInstantiateProvider(e);i!==t?this.show(e,{preserveValue:!0}):s.value=e}))),i&&r.add(e.onDidAccept((()=>{this.lastAcceptedPickerValues.set(i,e.value)}))),r}getOrInstantiateProvider(e){const t=this.registry.getQuickAccessProvider(e);if(!t)return[void 0,void 0];let i=this.mapProviderToDescriptor.get(t);return i||(i=this.instantiationService.createInstance(t.ctor),this.mapProviderToDescriptor.set(t,i)),[i,t]}};ge=ue([de(0,he.GK),de(1,o._Y)],ge);var fe=i(44824),pe=i(46255),me=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},ke=function(e,t){return function(i,n){t(i,n,e)}};let _e=class extends r.lR{constructor(e,t,i,n,r){super(i),this.instantiationService=e,this.contextKeyService=t,this.accessibilityService=n,this.layoutService=r,this.contexts=new Map}get controller(){return this._controller||(this._controller=this._register(this.createController())),this._controller}get quickAccess(){return this._quickAccess||(this._quickAccess=this._register(this.instantiationService.createInstance(ge))),this._quickAccess}createController(e=this.layoutService,t){const i={idPrefix:"quickInput_",container:e.container,ignoreFocusOut:()=>!1,isScreenReaderOptimized:()=>this.accessibilityService.isScreenReaderOptimized(),backKeybindingLabel:()=>{},setContextKey:e=>this.setContextKey(e),returnFocus:()=>e.focus(),createList:(e,t,i,n,r)=>this.instantiationService.createInstance(oe.Ei,e,t,i,n,r),styles:this.computeStyles()},n=this._register(new re(Object.assign(Object.assign({},i),t)));return n.layout(e.dimension,e.offset.quickPickTop),this._register(e.onDidLayout((t=>n.layout(t,e.offset.quickPickTop)))),this._register(n.onShow((()=>this.resetContextKeys()))),this._register(n.onHide((()=>this.resetContextKeys()))),n}setContextKey(e){let t;e&&(t=this.contexts.get(e),t||(t=new a.N1(e,!1).bindTo(this.contextKeyService),this.contexts.set(e,t))),t&&t.get()||(this.resetContextKeys(),null===t||void 0===t||t.set(!0))}resetContextKeys(){this.contexts.forEach((e=>{e.get()&&e.reset()}))}pick(e,t={},i=s.X.None){return this.controller.pick(e,t,i)}createQuickPick(){return this.controller.createQuickPick()}updateStyles(){this.controller.applyStyles(this.computeStyles())}computeStyles(){return{widget:Object.assign({},(0,pe.KC)(this.theme,{quickInputBackground:fe.ELA,quickInputForeground:fe.HJZ,quickInputTitleBackground:fe.er1,contrastBorder:fe.b1q,widgetShadow:fe.f9l})),inputBox:(0,pe.KC)(this.theme,{inputForeground:fe.cws,inputBackground:fe.L4c,inputBorder:fe.Zgs,inputValidationInfoBackground:fe.I$A,inputValidationInfoForeground:fe.L9Z,inputValidationInfoBorder:fe.YSW,inputValidationWarningBackground:fe.ULt,inputValidationWarningForeground:fe.T5N,inputValidationWarningBorder:fe.C1n,inputValidationErrorBackground:fe._$n,inputValidationErrorForeground:fe.h9z,inputValidationErrorBorder:fe.eYZ}),countBadge:(0,pe.KC)(this.theme,{badgeBackground:fe.WMx,badgeForeground:fe.zRE,badgeBorder:fe.b1q}),button:(0,pe.KC)(this.theme,{buttonForeground:fe.G_h,buttonBackground:fe.XJc,buttonHoverBackground:fe.T9h,buttonBorder:fe.b1q}),progressBar:(0,pe.KC)(this.theme,{progressBarBackground:fe.BTi}),keybindingLabel:(0,pe.KC)(this.theme,{keybindingLabelBackground:fe.HDX,keybindingLabelForeground:fe.eUu,keybindingLabelBorder:fe.zUX,keybindingLabelBottomBorder:fe.Qfh,keybindingLabelShadow:fe.f9l}),list:(0,pe.KC)(this.theme,{listBackground:fe.ELA,listInactiveFocusForeground:fe.nH,listInactiveSelectionIconForeground:fe.c7i,listInactiveFocusBackground:fe.AlL,listFocusOutline:fe.buw,listInactiveFocusOutline:fe.buw,pickerGroupBorder:fe.iwL,pickerGroupForeground:fe.NBf})}}};_e=me([ke(0,o._Y),ke(1,a.fN),ke(2,r.Gy),ke(3,l.j),ke(4,se.x)],_e);var be=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},Ce=function(e,t){return function(i,n){t(i,n,e)}};let ve=class extends _e{constructor(e,t,i,n,r,s){super(t,i,n,r,new h.n(e.getContainerDomNode(),s)),this.host=void 0;const o=we.get(e);if(o){const t=o.widget;this.host={_serviceBrand:void 0,get hasContainer(){return!0},get container(){return t.getDomNode()},get dimension(){return e.getLayoutInfo()},get onDidLayout(){return e.onDidLayoutChange},focus:()=>e.focus(),offset:{top:0,quickPickTop:0}}}else this.host=void 0}createController(){return super.createController(this.host)}};ve=be([Ce(1,o._Y),Ce(2,a.fN),Ce(3,r.Gy),Ce(4,l.j),Ce(5,c.T)],ve);let ye=class{constructor(e,t){this.instantiationService=e,this.codeEditorService=t,this.mapEditorToService=new Map}get activeService(){const e=this.codeEditorService.getFocusedCodeEditor();if(!e)throw new Error("Quick input service needs a focused editor to work.");let t=this.mapEditorToService.get(e);if(!t){const i=t=this.instantiationService.createInstance(ve,e);this.mapEditorToService.set(e,t),(0,ae.O)(e.onDidDispose)((()=>{i.dispose(),this.mapEditorToService.delete(e)}))}return t}get quickAccess(){return this.activeService.quickAccess}pick(e,t={},i=s.X.None){return this.activeService.pick(e,t,i)}createQuickPick(){return this.activeService.createQuickPick()}};ye=be([Ce(0,o._Y),Ce(1,c.T)],ye);class we{constructor(e){this.editor=e,this.widget=new Se(this.editor)}static get(e){return e.getContribution(we.ID)}dispose(){this.widget.dispose()}}we.ID="editor.controller.quickInput";class Se{constructor(e){this.codeEditor=e,this.domNode=document.createElement("div"),this.codeEditor.addOverlayWidget(this)}getId(){return Se.ID}getDomNode(){return this.domNode}getPosition(){return{preference:2}}dispose(){this.codeEditor.removeOverlayWidget(this)}}Se.ID="editor.contrib.quickInputWidget",(0,n.HW)(we.ID,we)},96696:(e,t,i)=>{i.d(t,{n:()=>b});var n=i(90491),r=i(46442),s=i(42464),o=i(55808),a=i(47643),l=i(16974),h=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},c=function(e,t){return function(i,n){t(i,n,e)}},u=function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{l(n.next(e))}catch(t){s(t)}}function a(e){try{l(n.throw(e))}catch(t){s(t)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(o,a)}l((n=n.apply(e,t||[])).next())}))};let d=class extends o.jG{constructor(e){super(),this._themeService=e,this._onCodeEditorAdd=this._register(new s.vl),this.onCodeEditorAdd=this._onCodeEditorAdd.event,this._onCodeEditorRemove=this._register(new s.vl),this.onCodeEditorRemove=this._onCodeEditorRemove.event,this._onDiffEditorAdd=this._register(new s.vl),this.onDiffEditorAdd=this._onDiffEditorAdd.event,this._onDiffEditorRemove=this._register(new s.vl),this.onDiffEditorRemove=this._onDiffEditorRemove.event,this._decorationOptionProviders=new Map,this._codeEditorOpenHandlers=new a.w,this._modelProperties=new Map,this._codeEditors=Object.create(null),this._diffEditors=Object.create(null),this._globalStyleSheet=null}addCodeEditor(e){this._codeEditors[e.getId()]=e,this._onCodeEditorAdd.fire(e)}removeCodeEditor(e){delete this._codeEditors[e.getId()]&&this._onCodeEditorRemove.fire(e)}listCodeEditors(){return Object.keys(this._codeEditors).map((e=>this._codeEditors[e]))}addDiffEditor(e){this._diffEditors[e.getId()]=e,this._onDiffEditorAdd.fire(e)}removeDiffEditor(e){delete this._diffEditors[e.getId()]&&this._onDiffEditorRemove.fire(e)}listDiffEditors(){return Object.keys(this._diffEditors).map((e=>this._diffEditors[e]))}getFocusedCodeEditor(){let e=null;const t=this.listCodeEditors();for(const i of t){if(i.hasTextFocus())return i;i.hasWidgetFocus()&&(e=i)}return e}removeDecorationType(e){const t=this._decorationOptionProviders.get(e);t&&(t.refCount--,t.refCount<=0&&(this._decorationOptionProviders.delete(e),t.dispose(),this.listCodeEditors().forEach((t=>t.removeDecorationsByType(e)))))}setModelProperty(e,t,i){const n=e.toString();let r;this._modelProperties.has(n)?r=this._modelProperties.get(n):(r=new Map,this._modelProperties.set(n,r)),r.set(t,i)}getModelProperty(e,t){const i=e.toString();if(this._modelProperties.has(i)){return this._modelProperties.get(i).get(t)}}openCodeEditor(e,t,i){return u(this,void 0,void 0,(function*(){for(const n of this._codeEditorOpenHandlers){const r=yield n(e,t,i);if(null!==r)return r}return null}))}registerCodeEditorOpenHandler(e){const t=this._codeEditorOpenHandlers.unshift(e);return(0,o.s)(t)}};d=h([c(0,l.Gy)],d);var g=i(88459),f=i(21181),p=i(62848),m=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},k=function(e,t){return function(i,n){t(i,n,e)}},_=function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{l(n.next(e))}catch(t){s(t)}}function a(e){try{l(n.throw(e))}catch(t){s(t)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(o,a)}l((n=n.apply(e,t||[])).next())}))};let b=class extends d{constructor(e,t){super(t),this.onCodeEditorAdd((()=>this._checkContextKey())),this.onCodeEditorRemove((()=>this._checkContextKey())),this._editorIsOpen=e.createKey("editorIsOpen",!1),this._activeCodeEditor=null,this.registerCodeEditorOpenHandler(((e,t,i)=>_(this,void 0,void 0,(function*(){return t?this.doOpenEditor(t,e):null}))))}_checkContextKey(){let e=!1;for(const t of this.listCodeEditors())if(!t.isSimpleWidget){e=!0;break}this._editorIsOpen.set(e)}setActiveCodeEditor(e){this._activeCodeEditor=e}getActiveCodeEditor(){return this._activeCodeEditor}doOpenEditor(e,t){if(!this.findModel(e,t.resource)){if(t.resource){const i=t.resource.scheme;if(i===r.ny.http||i===r.ny.https)return(0,n.jh)(t.resource.toString()),e}return null}const i=t.options?t.options.selection:null;if(i)if("number"===typeof i.endLineNumber&&"number"===typeof i.endColumn)e.setSelection(i),e.revealRangeInCenter(i,1);else{const t={lineNumber:i.startLineNumber,column:i.startColumn};e.setPosition(t),e.revealPositionInCenter(t,1)}return e}findModel(e,t){const i=e.getModel();return i&&i.uri.toString()!==t.toString()?null:i}};b=m([k(0,f.fN),k(1,l.Gy)],b),(0,p.v)(g.T,b)},28313:(e,t,i)=>{i.d(t,{n:()=>u});var n=i(90491),r=i(42464),s=i(8547),o=i(88459),a=i(62848),l=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},h=function(e,t){return function(i,n){t(i,n,e)}};let c=class{constructor(e){this._codeEditorService=e,this.onDidLayout=r.Jh.None,this.offset={top:0,quickPickTop:0}}get dimension(){return this._dimension||(this._dimension=n.tG(window.document.body)),this._dimension}get hasContainer(){return!1}get container(){throw new Error("ILayoutService.container is not available in the standalone editor!")}focus(){var e;null===(e=this._codeEditorService.getFocusedCodeEditor())||void 0===e||e.focus()}};c=l([h(0,o.T)],c);let u=class extends c{constructor(e,t){super(t),this._container=e}get hasContainer(){return!1}get container(){return this._container}};u=l([h(1,o.T)],u),(0,a.v)(s.x,c)},85976:(e,t,i)=>{i.d(t,{aQ:()=>E,nr:()=>O,Sx:()=>P,po:()=>T,tj:()=>D});var n=i(90491),r=i(58159),s=i(74379),o=i(42464),a=i(43178),l=i(61244);class h{constructor(e,t,i,n,r){this._parsedThemeRuleBrand=void 0,this.token=e,this.index=t,this.fontStyle=i,this.foreground=n,this.background=r}}const c=/^#?([0-9A-Fa-f]{6})([0-9A-Fa-f]{2})?$/;class u{constructor(){this._lastColorId=0,this._id2color=[],this._color2id=new Map}getId(e){if(null===e)return 0;const t=e.match(c);if(!t)throw new Error("Illegal value for token color: "+e);e=t[1].toUpperCase();let i=this._color2id.get(e);return i||(i=++this._lastColorId,this._color2id.set(e,i),this._id2color[i]=s.Q1.fromHex("#"+e),i)}getColorMap(){return this._id2color.slice(0)}}class d{constructor(e,t){this._colorMap=e,this._root=t,this._cache=new Map}static createFromRawTokenTheme(e,t){return this.createFromParsedTokenTheme(function(e){if(!e||!Array.isArray(e))return[];const t=[];let i=0;for(let n=0,r=e.length;n<r;n++){const r=e[n];let s=-1;if("string"===typeof r.fontStyle){s=0;const e=r.fontStyle.split(" ");for(let t=0,i=e.length;t<i;t++)switch(e[t]){case"italic":s|=1;break;case"bold":s|=2;break;case"underline":s|=4;break;case"strikethrough":s|=8}}let o=null;"string"===typeof r.foreground&&(o=r.foreground);let a=null;"string"===typeof r.background&&(a=r.background),t[i++]=new h(r.token||"",n,s,o,a)}return t}(e),t)}static createFromParsedTokenTheme(e,t){return function(e,t){e.sort(((e,t)=>{const i=function(e,t){return e<t?-1:e>t?1:0}(e.token,t.token);return 0!==i?i:e.index-t.index}));let i=0,n="000000",r="ffffff";for(;e.length>=1&&""===e[0].token;){const t=e.shift();-1!==t.fontStyle&&(i=t.fontStyle),null!==t.foreground&&(n=t.foreground),null!==t.background&&(r=t.background)}const s=new u;for(const c of t)s.getId(c);const o=s.getId(n),a=s.getId(r),l=new f(i,o,a),h=new p(l);for(let c=0,u=e.length;c<u;c++){const t=e[c];h.insert(t.token,t.fontStyle,s.getId(t.foreground),s.getId(t.background))}return new d(s,h)}(e,t)}getColorMap(){return this._colorMap.getColorMap()}_match(e){return this._root.match(e)}match(e,t){let i=this._cache.get(t);if("undefined"===typeof i){const e=this._match(t),n=function(e){const t=e.match(g);if(!t)return 0;switch(t[1]){case"comment":return 1;case"string":return 2;case"regex":case"regexp":return 3}throw new Error("Unexpected match for standard token type!")}(t);i=(e.metadata|n<<8)>>>0,this._cache.set(t,i)}return(i|e)>>>0}}const g=/\b(comment|string|regex|regexp)\b/;class f{constructor(e,t,i){this._themeTrieElementRuleBrand=void 0,this._fontStyle=e,this._foreground=t,this._background=i,this.metadata=(this._fontStyle<<11|this._foreground<<15|this._background<<24)>>>0}clone(){return new f(this._fontStyle,this._foreground,this._background)}acceptOverwrite(e,t,i){-1!==e&&(this._fontStyle=e),0!==t&&(this._foreground=t),0!==i&&(this._background=i),this.metadata=(this._fontStyle<<11|this._foreground<<15|this._background<<24)>>>0}}class p{constructor(e){this._themeTrieElementBrand=void 0,this._mainRule=e,this._children=new Map}match(e){if(""===e)return this._mainRule;const t=e.indexOf(".");let i,n;-1===t?(i=e,n=""):(i=e.substring(0,t),n=e.substring(t+1));const r=this._children.get(i);return"undefined"!==typeof r?r.match(n):this._mainRule}insert(e,t,i,n){if(""===e)return void this._mainRule.acceptOverwrite(t,i,n);const r=e.indexOf(".");let s,o;-1===r?(s=e,o=""):(s=e.substring(0,r),o=e.substring(r+1));let a=this._children.get(s);"undefined"===typeof a&&(a=new p(this._mainRule.clone()),this._children.set(s,a)),a.insert(o,t,i,n)}}var m=i(22041),k=i(44824);const _={base:"vs",inherit:!1,rules:[{token:"",foreground:"000000",background:"fffffe"},{token:"invalid",foreground:"cd3131"},{token:"emphasis",fontStyle:"italic"},{token:"strong",fontStyle:"bold"},{token:"variable",foreground:"001188"},{token:"variable.predefined",foreground:"4864AA"},{token:"constant",foreground:"dd0000"},{token:"comment",foreground:"008000"},{token:"number",foreground:"098658"},{token:"number.hex",foreground:"3030c0"},{token:"regexp",foreground:"800000"},{token:"annotation",foreground:"808080"},{token:"type",foreground:"008080"},{token:"delimiter",foreground:"000000"},{token:"delimiter.html",foreground:"383838"},{token:"delimiter.xml",foreground:"0000FF"},{token:"tag",foreground:"800000"},{token:"tag.id.pug",foreground:"4F76AC"},{token:"tag.class.pug",foreground:"4F76AC"},{token:"meta.scss",foreground:"800000"},{token:"metatag",foreground:"e00000"},{token:"metatag.content.html",foreground:"FF0000"},{token:"metatag.html",foreground:"808080"},{token:"metatag.xml",foreground:"808080"},{token:"metatag.php",fontStyle:"bold"},{token:"key",foreground:"863B00"},{token:"string.key.json",foreground:"A31515"},{token:"string.value.json",foreground:"0451A5"},{token:"attribute.name",foreground:"FF0000"},{token:"attribute.value",foreground:"0451A5"},{token:"attribute.value.number",foreground:"098658"},{token:"attribute.value.unit",foreground:"098658"},{token:"attribute.value.html",foreground:"0000FF"},{token:"attribute.value.xml",foreground:"0000FF"},{token:"string",foreground:"A31515"},{token:"string.html",foreground:"0000FF"},{token:"string.sql",foreground:"FF0000"},{token:"string.yaml",foreground:"0451A5"},{token:"keyword",foreground:"0000FF"},{token:"keyword.json",foreground:"0451A5"},{token:"keyword.flow",foreground:"AF00DB"},{token:"keyword.flow.scss",foreground:"0000FF"},{token:"operator.scss",foreground:"666666"},{token:"operator.sql",foreground:"778899"},{token:"operator.swift",foreground:"666666"},{token:"predefined.sql",foreground:"C700C7"}],colors:{[k.YtV]:"#FFFFFE",[k.By2]:"#000000",[k.tan]:"#E5EBF1",[m.v0]:"#D3D3D3",[m.fj]:"#939393",[k.QwA]:"#ADD6FF4D"}},b={base:"vs-dark",inherit:!1,rules:[{token:"",foreground:"D4D4D4",background:"1E1E1E"},{token:"invalid",foreground:"f44747"},{token:"emphasis",fontStyle:"italic"},{token:"strong",fontStyle:"bold"},{token:"variable",foreground:"74B0DF"},{token:"variable.predefined",foreground:"4864AA"},{token:"variable.parameter",foreground:"9CDCFE"},{token:"constant",foreground:"569CD6"},{token:"comment",foreground:"608B4E"},{token:"number",foreground:"B5CEA8"},{token:"number.hex",foreground:"5BB498"},{token:"regexp",foreground:"B46695"},{token:"annotation",foreground:"cc6666"},{token:"type",foreground:"3DC9B0"},{token:"delimiter",foreground:"DCDCDC"},{token:"delimiter.html",foreground:"808080"},{token:"delimiter.xml",foreground:"808080"},{token:"tag",foreground:"569CD6"},{token:"tag.id.pug",foreground:"4F76AC"},{token:"tag.class.pug",foreground:"4F76AC"},{token:"meta.scss",foreground:"A79873"},{token:"meta.tag",foreground:"CE9178"},{token:"metatag",foreground:"DD6A6F"},{token:"metatag.content.html",foreground:"9CDCFE"},{token:"metatag.html",foreground:"569CD6"},{token:"metatag.xml",foreground:"569CD6"},{token:"metatag.php",fontStyle:"bold"},{token:"key",foreground:"9CDCFE"},{token:"string.key.json",foreground:"9CDCFE"},{token:"string.value.json",foreground:"CE9178"},{token:"attribute.name",foreground:"9CDCFE"},{token:"attribute.value",foreground:"CE9178"},{token:"attribute.value.number.css",foreground:"B5CEA8"},{token:"attribute.value.unit.css",foreground:"B5CEA8"},{token:"attribute.value.hex.css",foreground:"D4D4D4"},{token:"string",foreground:"CE9178"},{token:"string.sql",foreground:"FF0000"},{token:"keyword",foreground:"569CD6"},{token:"keyword.flow",foreground:"C586C0"},{token:"keyword.json",foreground:"CE9178"},{token:"keyword.flow.scss",foreground:"569CD6"},{token:"operator.scss",foreground:"909090"},{token:"operator.sql",foreground:"778899"},{token:"operator.swift",foreground:"909090"},{token:"predefined.sql",foreground:"FF00FF"}],colors:{[k.YtV]:"#1E1E1E",[k.By2]:"#D4D4D4",[k.tan]:"#3A3D41",[m.v0]:"#404040",[m.fj]:"#707070",[k.QwA]:"#ADD6FF26"}},C={base:"hc-black",inherit:!1,rules:[{token:"",foreground:"FFFFFF",background:"000000"},{token:"invalid",foreground:"f44747"},{token:"emphasis",fontStyle:"italic"},{token:"strong",fontStyle:"bold"},{token:"variable",foreground:"1AEBFF"},{token:"variable.parameter",foreground:"9CDCFE"},{token:"constant",foreground:"569CD6"},{token:"comment",foreground:"608B4E"},{token:"number",foreground:"FFFFFF"},{token:"regexp",foreground:"C0C0C0"},{token:"annotation",foreground:"569CD6"},{token:"type",foreground:"3DC9B0"},{token:"delimiter",foreground:"FFFF00"},{token:"delimiter.html",foreground:"FFFF00"},{token:"tag",foreground:"569CD6"},{token:"tag.id.pug",foreground:"4F76AC"},{token:"tag.class.pug",foreground:"4F76AC"},{token:"meta",foreground:"D4D4D4"},{token:"meta.tag",foreground:"CE9178"},{token:"metatag",foreground:"569CD6"},{token:"metatag.content.html",foreground:"1AEBFF"},{token:"metatag.html",foreground:"569CD6"},{token:"metatag.xml",foreground:"569CD6"},{token:"metatag.php",fontStyle:"bold"},{token:"key",foreground:"9CDCFE"},{token:"string.key",foreground:"9CDCFE"},{token:"string.value",foreground:"CE9178"},{token:"attribute.name",foreground:"569CD6"},{token:"attribute.value",foreground:"3FF23F"},{token:"string",foreground:"CE9178"},{token:"string.sql",foreground:"FF0000"},{token:"keyword",foreground:"569CD6"},{token:"keyword.flow",foreground:"C586C0"},{token:"operator.sql",foreground:"778899"},{token:"operator.swift",foreground:"909090"},{token:"predefined.sql",foreground:"FF00FF"}],colors:{[k.YtV]:"#000000",[k.By2]:"#FFFFFF",[m.v0]:"#FFFFFF",[m.fj]:"#FFFFFF"}},v={base:"hc-light",inherit:!1,rules:[{token:"",foreground:"292929",background:"FFFFFF"},{token:"invalid",foreground:"B5200D"},{token:"emphasis",fontStyle:"italic"},{token:"strong",fontStyle:"bold"},{token:"variable",foreground:"264F70"},{token:"variable.predefined",foreground:"4864AA"},{token:"constant",foreground:"dd0000"},{token:"comment",foreground:"008000"},{token:"number",foreground:"098658"},{token:"number.hex",foreground:"3030c0"},{token:"regexp",foreground:"800000"},{token:"annotation",foreground:"808080"},{token:"type",foreground:"008080"},{token:"delimiter",foreground:"000000"},{token:"delimiter.html",foreground:"383838"},{token:"tag",foreground:"800000"},{token:"tag.id.pug",foreground:"4F76AC"},{token:"tag.class.pug",foreground:"4F76AC"},{token:"meta.scss",foreground:"800000"},{token:"metatag",foreground:"e00000"},{token:"metatag.content.html",foreground:"B5200D"},{token:"metatag.html",foreground:"808080"},{token:"metatag.xml",foreground:"808080"},{token:"metatag.php",fontStyle:"bold"},{token:"key",foreground:"863B00"},{token:"string.key.json",foreground:"A31515"},{token:"string.value.json",foreground:"0451A5"},{token:"attribute.name",foreground:"264F78"},{token:"attribute.value",foreground:"0451A5"},{token:"string",foreground:"A31515"},{token:"string.sql",foreground:"B5200D"},{token:"keyword",foreground:"0000FF"},{token:"keyword.flow",foreground:"AF00DB"},{token:"operator.sql",foreground:"778899"},{token:"operator.swift",foreground:"666666"},{token:"predefined.sql",foreground:"C700C7"}],colors:{[k.YtV]:"#FFFFFF",[k.By2]:"#292929",[m.v0]:"#292929",[m.fj]:"#292929"}};var y=i(1097),w=i(16974),S=i(55808),L=i(59281),x=i(62192);class I{getIcon(e){const t=(0,x.HT)();let i=e.defaults;for(;w.L0.isThemeIcon(i);){const e=t.getIcon(i.id);if(!e)return;i=e.defaults}return i}}const D="vs",T="vs-dark",E="hc-black",O="hc-light",M=y.O.as(k.FdG.ColorContribution),B=y.O.as(w.Fd.ThemingContribution);class N{constructor(e,t){this.semanticHighlighting=!1,this.themeData=t;const i=t.base;e.length>0?(A(e)?this.id=e:this.id=i+" "+e,this.themeName=e):(this.id=i,this.themeName=i),this.colors=null,this.defaultColors=Object.create(null),this._tokenTheme=null}get base(){return this.themeData.base}notifyBaseUpdated(){this.themeData.inherit&&(this.colors=null,this._tokenTheme=null)}getColors(){if(!this.colors){const e=new Map;for(const t in this.themeData.colors)e.set(t,s.Q1.fromHex(this.themeData.colors[t]));if(this.themeData.inherit){const t=F(this.themeData.base);for(const i in t.colors)e.has(i)||e.set(i,s.Q1.fromHex(t.colors[i]))}this.colors=e}return this.colors}getColor(e,t){const i=this.getColors().get(e);return i||(!1!==t?this.getDefault(e):void 0)}getDefault(e){let t=this.defaultColors[e];return t||(t=M.resolveDefaultColor(e,this),this.defaultColors[e]=t,t)}defines(e){return Object.prototype.hasOwnProperty.call(this.getColors(),e)}get type(){switch(this.base){case D:return L.zM.LIGHT;case E:return L.zM.HIGH_CONTRAST_DARK;case O:return L.zM.HIGH_CONTRAST_LIGHT;default:return L.zM.DARK}}get tokenTheme(){if(!this._tokenTheme){let e=[],t=[];if(this.themeData.inherit){const i=F(this.themeData.base);e=i.rules,i.encodedTokensColors&&(t=i.encodedTokensColors)}const i=this.themeData.colors["editor.foreground"],n=this.themeData.colors["editor.background"];if(i||n){const t={token:""};i&&(t.foreground=i),n&&(t.background=n),e.push(t)}e=e.concat(this.themeData.rules),this.themeData.encodedTokensColors&&(t=this.themeData.encodedTokensColors),this._tokenTheme=d.createFromRawTokenTheme(e,t)}return this._tokenTheme}getTokenStyleMetadata(e,t,i){const n=this.tokenTheme._match([e].concat(t).join(".")).metadata,r=l.x.getForeground(n),s=l.x.getFontStyle(n);return{foreground:r,italic:Boolean(1&s),bold:Boolean(2&s),underline:Boolean(4&s),strikethrough:Boolean(8&s)}}}function A(e){return e===D||e===T||e===E||e===O}function F(e){switch(e){case D:return _;case T:return b;case E:return C;case O:return v}}function R(e){const t=F(e);return new N(e,t)}class P extends S.jG{constructor(){super(),this._onColorThemeChange=this._register(new o.vl),this.onDidColorThemeChange=this._onColorThemeChange.event,this._onProductIconThemeChange=this._register(new o.vl),this.onDidProductIconThemeChange=this._onProductIconThemeChange.event,this._environment=Object.create(null),this._builtInProductIconTheme=new I,this._autoDetectHighContrast=!0,this._knownThemes=new Map,this._knownThemes.set(D,R(D)),this._knownThemes.set(T,R(T)),this._knownThemes.set(E,R(E)),this._knownThemes.set(O,R(O));const e=function(e){const t=new o.vl,i=(0,x.HT)();return i.onDidChange((()=>t.fire())),null===e||void 0===e||e.onDidProductIconThemeChange((()=>t.fire())),{onDidChange:t.event,getCSS(){const t=e?e.getProductIconTheme():new I,r={},s=e=>{const i=t.getIcon(e);if(!i)return;const s=i.font;return s?(r[s.id]=s.definition,`.codicon-${e.id}:before { content: '${i.fontCharacter}'; font-family: ${(0,n.yt)(s.id)}; }`):`.codicon-${e.id}:before { content: '${i.fontCharacter}'; }`},o=[];for(const e of i.getIcons()){const t=s(e);t&&o.push(t)}for(const e in r){const t=r[e],i=t.weight?`font-weight: ${t.weight};`:"",s=t.style?`font-style: ${t.style};`:"",a=t.src.map((e=>`${(0,n.Tf)(e.location)} format('${e.format}')`)).join(", ");o.push(`@font-face { src: ${a}; font-family: ${(0,n.yt)(e)};${i}${s} font-display: block; }`)}return o.join("\n")}}}(this);this._codiconCSS=e.getCSS(),this._themeCSS="",this._allCSS=`${this._codiconCSS}\n${this._themeCSS}`,this._globalStyleElement=null,this._styleElements=[],this._colorMapOverride=null,this.setTheme(D),this._onOSSchemeChanged(),e.onDidChange((()=>{this._codiconCSS=e.getCSS(),this._updateCSS()})),(0,r.addMatchMediaChangeListener)("(forced-colors: active)",(()=>{this._onOSSchemeChanged()}))}registerEditorContainer(e){return n.Cl(e)?this._registerShadowDomContainer(e):this._registerRegularEditorContainer()}_registerRegularEditorContainer(){return this._globalStyleElement||(this._globalStyleElement=n.li(),this._globalStyleElement.className="monaco-colors",this._globalStyleElement.textContent=this._allCSS,this._styleElements.push(this._globalStyleElement)),S.jG.None}_registerShadowDomContainer(e){const t=n.li(e);return t.className="monaco-colors",t.textContent=this._allCSS,this._styleElements.push(t),{dispose:()=>{for(let e=0;e<this._styleElements.length;e++)if(this._styleElements[e]===t)return void this._styleElements.splice(e,1)}}}defineTheme(e,t){if(!/^[a-z0-9\-]+$/i.test(e))throw new Error("Illegal theme name!");if(!A(t.base)&&!A(e))throw new Error("Illegal theme base!");this._knownThemes.set(e,new N(e,t)),A(e)&&this._knownThemes.forEach((t=>{t.base===e&&t.notifyBaseUpdated()})),this._theme.themeName===e&&this.setTheme(e)}getColorTheme(){return this._theme}setColorMapOverride(e){this._colorMapOverride=e,this._updateThemeOrColorMap()}setTheme(e){let t;t=this._knownThemes.has(e)?this._knownThemes.get(e):this._knownThemes.get(D),this._updateActualTheme(t)}_updateActualTheme(e){e&&this._theme!==e&&(this._theme=e,this._updateThemeOrColorMap())}_onOSSchemeChanged(){if(this._autoDetectHighContrast){const e=window.matchMedia("(forced-colors: active)").matches;if(e!==(0,L.Bb)(this._theme.type)){let t;t=(0,L.HD)(this._theme.type)?e?E:T:e?O:D,this._updateActualTheme(this._knownThemes.get(t))}}}setAutoDetectHighContrast(e){this._autoDetectHighContrast=e,this._onOSSchemeChanged()}_updateThemeOrColorMap(){const e=[],t={},i={addRule:i=>{t[i]||(e.push(i),t[i]=!0)}};B.getThemingParticipants().forEach((e=>e(this._theme,i,this._environment)));const n=[];for(const s of M.getColors()){const e=this._theme.getColor(s.id,!0);e&&n.push(`${(0,k.Bbc)(s.id)}: ${e.toString()};`)}i.addRule(`.monaco-editor { ${n.join("\n")} }`);const r=this._colorMapOverride||this._theme.tokenTheme.getColorMap();i.addRule(function(e){const t=[];for(let i=1,n=e.length;i<n;i++){const n=e[i];t[i]=`.mtk${i} { color: ${n}; }`}return t.push(".mtki { font-style: italic; }"),t.push(".mtkb { font-weight: bold; }"),t.push(".mtku { text-decoration: underline; text-underline-position: under; }"),t.push(".mtks { text-decoration: line-through; }"),t.push(".mtks.mtku { text-decoration: underline line-through; text-underline-position: under; }"),t.join("\n")}(r)),this._themeCSS=e.join("\n"),this._updateCSS(),a.dG.setColorMap(r),this._onColorThemeChange.fire(this._theme)}_updateCSS(){this._allCSS=`${this._codiconCSS}\n${this._themeCSS}`,this._styleElements.forEach((e=>e.textContent=this._allCSS))}getFileIconTheme(){return{hasFileIcons:!1,hasFolderIcons:!1,hidesExplorerArrows:!1}}getProductIconTheme(){return this._builtInProductIconTheme}}},83238:(e,t,i)=>{i.d(t,{L:()=>n});const n=(0,i(34029).u1)("themeService")},78427:(e,t,i)=>{i.d(t,{s:()=>d});var n=i(90491),r=i(42464),s=i(55808),o=i(88355),a=i(58471),l=i(21181),h=i(8547),c=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},u=function(e,t){return function(i,n){t(i,n,e)}};let d=class extends s.jG{constructor(e,t,i){super(),this._contextKeyService=e,this._layoutService=t,this._configurationService=i,this._accessibilitySupport=0,this._onDidChangeScreenReaderOptimized=new r.vl,this._onDidChangeReducedMotion=new r.vl,this._accessibilityModeEnabledContext=o.f.bindTo(this._contextKeyService);const n=()=>this._accessibilityModeEnabledContext.set(this.isScreenReaderOptimized());this._register(this._configurationService.onDidChangeConfiguration((e=>{e.affectsConfiguration("editor.accessibilitySupport")&&(n(),this._onDidChangeScreenReaderOptimized.fire()),e.affectsConfiguration("workbench.reduceMotion")&&(this._configMotionReduced=this._configurationService.getValue("workbench.reduceMotion"),this._onDidChangeReducedMotion.fire())}))),n(),this._register(this.onDidChangeScreenReaderOptimized((()=>n())));const s=window.matchMedia("(prefers-reduced-motion: reduce)");this._systemMotionReduced=s.matches,this._configMotionReduced=this._configurationService.getValue("workbench.reduceMotion"),this.initReducedMotionListeners(s)}initReducedMotionListeners(e){if(!this._layoutService.hasContainer)return;this._register((0,n.ko)(e,"change",(()=>{this._systemMotionReduced=e.matches,"auto"===this._configMotionReduced&&this._onDidChangeReducedMotion.fire()})));const t=()=>{const e=this.isMotionReduced();this._layoutService.container.classList.toggle("reduce-motion",e),this._layoutService.container.classList.toggle("enable-motion",!e)};t(),this._register(this.onDidChangeReducedMotion((()=>t())))}get onDidChangeScreenReaderOptimized(){return this._onDidChangeScreenReaderOptimized.event}isScreenReaderOptimized(){const e=this._configurationService.getValue("editor.accessibilitySupport");return"on"===e||"auto"===e&&2===this._accessibilitySupport}get onDidChangeReducedMotion(){return this._onDidChangeReducedMotion.event}isMotionReduced(){const e=this._configMotionReduced;return"on"===e||"auto"===e&&this._systemMotionReduced}getAccessibilitySupport(){return this._accessibilitySupport}};d=c([u(0,l.fN),u(1,h.x),u(2,a.pG)],d)},88355:(e,t,i)=>{i.d(t,{f:()=>s,j:()=>r});var n=i(21181);const r=(0,i(34029).u1)("accessibilityService"),s=new n.N1("accessibilityModeEnabled",!1)},93593:(e,t,i)=>{i.d(t,{D8:()=>k,Xe:()=>y,Z$:()=>v,ZG:()=>b,ez:()=>_,i1:()=>m,is:()=>p,nI:()=>C});var n=i(56495),r=i(88106),s=i(42464),o=i(16624),a=i(55808),l=i(47643),h=i(16281),c=i(21181),u=i(34029),d=i(16974),g=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},f=function(e,t){return function(i,n){t(i,n,e)}};function p(e){return void 0!==e.command}function m(e){return void 0!==e.submenu}class k{constructor(e){if(k._instances.has(e))throw new TypeError(`MenuId with identifier '${e}' already exists. Use MenuId.for(ident) or a unique identifier`);k._instances.set(e,this),this.id=e}}k._instances=new Map,k.CommandPalette=new k("CommandPalette"),k.DebugBreakpointsContext=new k("DebugBreakpointsContext"),k.DebugCallStackContext=new k("DebugCallStackContext"),k.DebugConsoleContext=new k("DebugConsoleContext"),k.DebugVariablesContext=new k("DebugVariablesContext"),k.DebugWatchContext=new k("DebugWatchContext"),k.DebugToolBar=new k("DebugToolBar"),k.DebugToolBarStop=new k("DebugToolBarStop"),k.EditorContext=new k("EditorContext"),k.SimpleEditorContext=new k("SimpleEditorContext"),k.EditorContextCopy=new k("EditorContextCopy"),k.EditorContextPeek=new k("EditorContextPeek"),k.EditorContextShare=new k("EditorContextShare"),k.EditorTitle=new k("EditorTitle"),k.EditorTitleRun=new k("EditorTitleRun"),k.EditorTitleContext=new k("EditorTitleContext"),k.EmptyEditorGroup=new k("EmptyEditorGroup"),k.EmptyEditorGroupContext=new k("EmptyEditorGroupContext"),k.ExplorerContext=new k("ExplorerContext"),k.ExtensionContext=new k("ExtensionContext"),k.GlobalActivity=new k("GlobalActivity"),k.CommandCenter=new k("CommandCenter"),k.LayoutControlMenuSubmenu=new k("LayoutControlMenuSubmenu"),k.LayoutControlMenu=new k("LayoutControlMenu"),k.MenubarMainMenu=new k("MenubarMainMenu"),k.MenubarAppearanceMenu=new k("MenubarAppearanceMenu"),k.MenubarDebugMenu=new k("MenubarDebugMenu"),k.MenubarEditMenu=new k("MenubarEditMenu"),k.MenubarCopy=new k("MenubarCopy"),k.MenubarFileMenu=new k("MenubarFileMenu"),k.MenubarGoMenu=new k("MenubarGoMenu"),k.MenubarHelpMenu=new k("MenubarHelpMenu"),k.MenubarLayoutMenu=new k("MenubarLayoutMenu"),k.MenubarNewBreakpointMenu=new k("MenubarNewBreakpointMenu"),k.MenubarPanelAlignmentMenu=new k("MenubarPanelAlignmentMenu"),k.MenubarPanelPositionMenu=new k("MenubarPanelPositionMenu"),k.MenubarPreferencesMenu=new k("MenubarPreferencesMenu"),k.MenubarRecentMenu=new k("MenubarRecentMenu"),k.MenubarSelectionMenu=new k("MenubarSelectionMenu"),k.MenubarShare=new k("MenubarShare"),k.MenubarSwitchEditorMenu=new k("MenubarSwitchEditorMenu"),k.MenubarSwitchGroupMenu=new k("MenubarSwitchGroupMenu"),k.MenubarTerminalMenu=new k("MenubarTerminalMenu"),k.MenubarViewMenu=new k("MenubarViewMenu"),k.MenubarHomeMenu=new k("MenubarHomeMenu"),k.OpenEditorsContext=new k("OpenEditorsContext"),k.ProblemsPanelContext=new k("ProblemsPanelContext"),k.SCMChangeContext=new k("SCMChangeContext"),k.SCMResourceContext=new k("SCMResourceContext"),k.SCMResourceFolderContext=new k("SCMResourceFolderContext"),k.SCMResourceGroupContext=new k("SCMResourceGroupContext"),k.SCMSourceControl=new k("SCMSourceControl"),k.SCMTitle=new k("SCMTitle"),k.SearchContext=new k("SearchContext"),k.StatusBarWindowIndicatorMenu=new k("StatusBarWindowIndicatorMenu"),k.StatusBarRemoteIndicatorMenu=new k("StatusBarRemoteIndicatorMenu"),k.TestItem=new k("TestItem"),k.TestItemGutter=new k("TestItemGutter"),k.TestPeekElement=new k("TestPeekElement"),k.TestPeekTitle=new k("TestPeekTitle"),k.TouchBarContext=new k("TouchBarContext"),k.TitleBarContext=new k("TitleBarContext"),k.TitleBarTitleContext=new k("TitleBarTitleContext"),k.TunnelContext=new k("TunnelContext"),k.TunnelPrivacy=new k("TunnelPrivacy"),k.TunnelProtocol=new k("TunnelProtocol"),k.TunnelPortInline=new k("TunnelInline"),k.TunnelTitle=new k("TunnelTitle"),k.TunnelLocalAddressInline=new k("TunnelLocalAddressInline"),k.TunnelOriginInline=new k("TunnelOriginInline"),k.ViewItemContext=new k("ViewItemContext"),k.ViewContainerTitle=new k("ViewContainerTitle"),k.ViewContainerTitleContext=new k("ViewContainerTitleContext"),k.ViewTitle=new k("ViewTitle"),k.ViewTitleContext=new k("ViewTitleContext"),k.CommentThreadTitle=new k("CommentThreadTitle"),k.CommentThreadActions=new k("CommentThreadActions"),k.CommentTitle=new k("CommentTitle"),k.CommentActions=new k("CommentActions"),k.InteractiveToolbar=new k("InteractiveToolbar"),k.InteractiveCellTitle=new k("InteractiveCellTitle"),k.InteractiveCellDelete=new k("InteractiveCellDelete"),k.InteractiveCellExecute=new k("InteractiveCellExecute"),k.InteractiveInputExecute=new k("InteractiveInputExecute"),k.NotebookToolbar=new k("NotebookToolbar"),k.NotebookCellTitle=new k("NotebookCellTitle"),k.NotebookCellDelete=new k("NotebookCellDelete"),k.NotebookCellInsert=new k("NotebookCellInsert"),k.NotebookCellBetween=new k("NotebookCellBetween"),k.NotebookCellListTop=new k("NotebookCellTop"),k.NotebookCellExecute=new k("NotebookCellExecute"),k.NotebookCellExecutePrimary=new k("NotebookCellExecutePrimary"),k.NotebookDiffCellInputTitle=new k("NotebookDiffCellInputTitle"),k.NotebookDiffCellMetadataTitle=new k("NotebookDiffCellMetadataTitle"),k.NotebookDiffCellOutputsTitle=new k("NotebookDiffCellOutputsTitle"),k.NotebookOutputToolbar=new k("NotebookOutputToolbar"),k.NotebookEditorLayoutConfigure=new k("NotebookEditorLayoutConfigure"),k.NotebookKernelSource=new k("NotebookKernelSource"),k.BulkEditTitle=new k("BulkEditTitle"),k.BulkEditContext=new k("BulkEditContext"),k.TimelineItemContext=new k("TimelineItemContext"),k.TimelineTitle=new k("TimelineTitle"),k.TimelineTitleContext=new k("TimelineTitleContext"),k.TimelineFilterSubMenu=new k("TimelineFilterSubMenu"),k.AccountsContext=new k("AccountsContext"),k.PanelTitle=new k("PanelTitle"),k.AuxiliaryBarTitle=new k("AuxiliaryBarTitle"),k.TerminalInstanceContext=new k("TerminalInstanceContext"),k.TerminalEditorInstanceContext=new k("TerminalEditorInstanceContext"),k.TerminalNewDropdownContext=new k("TerminalNewDropdownContext"),k.TerminalTabContext=new k("TerminalTabContext"),k.TerminalTabEmptyAreaContext=new k("TerminalTabEmptyAreaContext"),k.TerminalInlineTabContext=new k("TerminalInlineTabContext"),k.WebviewContext=new k("WebviewContext"),k.InlineCompletionsActions=new k("InlineCompletionsActions"),k.NewFile=new k("NewFile"),k.MergeToolbar=new k("MergeToolbar");const _=(0,u.u1)("menuService"),b=new class{constructor(){this._commands=new Map,this._menuItems=new Map,this._onDidChangeMenu=new s.vl,this.onDidChangeMenu=this._onDidChangeMenu.event,this._commandPaletteChangeEvent={has:e=>e===k.CommandPalette}}addCommand(e){return this.addCommands(o.f.single(e))}addCommands(e){for(const t of e)this._commands.set(t.id,t);return this._onDidChangeMenu.fire(this._commandPaletteChangeEvent),(0,a.s)((()=>{let t=!1;for(const i of e)t=this._commands.delete(i.id)||t;t&&this._onDidChangeMenu.fire(this._commandPaletteChangeEvent)}))}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){return this.appendMenuItems(o.f.single({id:e,item:t}))}appendMenuItems(e){const t=new Set,i=new l.w;for(const{id:n,item:r}of e){let e=this._menuItems.get(n);e||(e=new l.w,this._menuItems.set(n,e)),i.push(e.push(r)),t.add(n)}return this._onDidChangeMenu.fire(t),(0,a.s)((()=>{if(i.size>0){for(const e of i)e();this._onDidChangeMenu.fire(t),i.clear()}}))}getMenuItems(e){let t;return t=this._menuItems.has(e)?[...this._menuItems.get(e)]:[],e===k.CommandPalette&&this._appendImplicitItems(t),t}_appendImplicitItems(e){const t=new Set;for(const i of e)p(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 C extends n.YH{constructor(e,t,i,n,r){super(`submenuitem.${e.submenu.id}`,"string"===typeof e.title?e.title:e.title.value,[],"submenu"),this.item=e,this.hideActions=t,this._menuService=i,this._contextKeyService=n,this._options=r}get actions(){const e=[],t=this._menuService.createMenu(this.item.submenu,this._contextKeyService),i=t.getActions(this._options);t.dispose();for(const[,r]of i)r.length>0&&(e.push(...r),e.push(new n.wv));return e.length&&e.pop(),e}}class v{constructor(e,t){this.hideThis=e,this.toggleAny=t}asList(){let e=[this.hideThis];for(const t of this.toggleAny)e.push(new n.wv),e=e.concat(t);return e}}let y=class e{constructor(t,i,n,s,o,a){var l,h;if(this.hideActions=s,this._commandService=a,this.id=t.id,this.label=(null===n||void 0===n?void 0:n.renderShortTitle)&&t.shortTitle?"string"===typeof t.shortTitle?t.shortTitle:t.shortTitle.value:"string"===typeof t.title?t.title:t.title.value,this.tooltip=null!==(h="string"===typeof t.tooltip?t.tooltip:null===(l=t.tooltip)||void 0===l?void 0:l.value)&&void 0!==h?h:"",this.enabled=!t.precondition||o.contextMatchesRules(t.precondition),this.checked=void 0,t.toggled){const e=t.toggled.condition?t.toggled:{condition:t.toggled};this.checked=o.contextMatchesRules(e.condition),this.checked&&e.tooltip&&(this.tooltip="string"===typeof e.tooltip?e.tooltip:e.tooltip.value),e.title&&(this.label="string"===typeof e.title?e.title:e.title.value)}this.item=t,this.alt=i?new e(i,void 0,n,s,o,a):void 0,this._options=n,d.L0.isThemeIcon(t.icon)&&(this.class=r.j3.asClassName(t.icon))}dispose(){}run(...e){var t,i;let n=[];return(null===(t=this._options)||void 0===t?void 0:t.arg)&&(n=[...n,this._options.arg]),(null===(i=this._options)||void 0===i?void 0:i.shouldForwardArgs)&&(n=[...n,...e]),this._commandService.executeCommand(this.id,...n)}};y=g([f(4,c.fN),f(5,h.wT)],y)},50284:(e,t,i)=>{i.d(t,{$:()=>p});var n=i(20512),r=i(42464),s=i(55808),o=i(93593),a=i(16281),l=i(21181),h=i(56495),c=i(87899),u=i(48640),d=i(35819),g=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},f=function(e,t){return function(i,n){t(i,n,e)}};let p=class{constructor(e,t){this._commandService=e,this._hiddenStates=new m(t)}createMenu(e,t,i){return new k(e,this._hiddenStates,Object.assign({emitEventsForSubmenuChanges:!1,eventDebounceDelay:50},i),this._commandService,t,this)}};p=g([f(0,a.wT),f(1,c.CS)],p);let m=class e{constructor(t){this._storageService=t,this._disposables=new s.Cm,this._onDidChange=new r.vl,this.onDidChange=this._onDidChange.event,this._ignoreChangeEvent=!1;try{const i=t.get(e._key,0,"{}");this._data=JSON.parse(i)}catch(i){this._data=Object.create(null)}this._disposables.add(t.onDidChangeValue((n=>{if(n.key===e._key){if(!this._ignoreChangeEvent)try{const i=t.get(e._key,0,"{}");this._data=JSON.parse(i)}catch(i){}this._onDidChange.fire()}})))}dispose(){this._onDidChange.dispose(),this._disposables.dispose()}isHidden(e,t){var i,n;return null!==(n=null===(i=this._data[e.id])||void 0===i?void 0:i.includes(t))&&void 0!==n&&n}updateHidden(e,t,i){const n=this._data[e.id];if(i)if(n){n.indexOf(t)<0&&n.push(t)}else this._data[e.id]=[t];else if(n){const i=n.indexOf(t);i>=0&&(0,u.UH)(n,i),0===n.length&&delete this._data[e.id]}this._persist()}_persist(){try{this._ignoreChangeEvent=!0;const t=JSON.stringify(this._data);this._storageService.store(e._key,t,0,0)}finally{this._ignoreChangeEvent=!1}}};m._key="menu.hiddenCommands",m=g([f(0,c.CS)],m);let k=class e{constructor(e,t,i,a,l,h){this._id=e,this._hiddenStates=t,this._options=i,this._commandService=a,this._contextKeyService=l,this._menuService=h,this._disposables=new s.Cm,this._menuGroups=[],this._contextKeys=new Set,this._build();const c=new n.uC((()=>{this._build(),this._onDidChange.fire(this)}),i.eventDebounceDelay);this._disposables.add(c),this._disposables.add(o.ZG.onDidChangeMenu((t=>{t.has(e)&&c.schedule()})));const u=this._disposables.add(new s.Cm);this._onDidChange=new r.vl({onFirstListenerAdd:()=>{const e=new n.uC((()=>this._onDidChange.fire(this)),i.eventDebounceDelay);u.add(e),u.add(l.onDidChangeContext((t=>{t.affectsSome(this._contextKeys)&&e.schedule()}))),u.add(t.onDidChange((()=>{e.schedule()})))},onLastListenerRemove:u.clear.bind(u)}),this.onDidChange=this._onDidChange.event}dispose(){this._disposables.dispose(),this._onDidChange.dispose()}_build(){this._menuGroups.length=0,this._contextKeys.clear();const t=o.ZG.getMenuItems(this._id);let i;t.sort(e._compareMenuItems);for(const e of t){const t=e.group||"";i&&i[0]===t||(i=[t,[]],this._menuGroups.push(i)),i[1].push(e),this._collectContextKeys(e)}}_collectContextKeys(t){if(e._fillInKbExprKeys(t.when,this._contextKeys),(0,o.is)(t)){if(t.command.precondition&&e._fillInKbExprKeys(t.command.precondition,this._contextKeys),t.command.toggled){const i=t.command.toggled.condition||t.command.toggled;e._fillInKbExprKeys(i,this._contextKeys)}}else this._options.emitEventsForSubmenuChanges&&o.ZG.getMenuItems(t.submenu).forEach(this._collectContextKeys,this)}getActions(e){const t=[],i=[];for(const n of this._menuGroups){const[r,s]=n,a=[],l=[];for(const t of s)if(this._contextKeyService.contextMatchesRules(t.when)){let n;const r=(0,o.is)(t),s=new o.Z$(new b(this._id,r?t.command:t,this._hiddenStates),i);if(r)this._hiddenStates.isHidden(this._id,t.command.id)||(n=new o.Xe(t.command,t.alt,e,s,this._contextKeyService,this._commandService)),a.push(new _(this._id,t.command,this._hiddenStates));else if(n=new o.nI(t,s,this._menuService,this._contextKeyService,e),0===n.actions.length&&(n.dispose(),n=void 0),n){const e=(t,i)=>i instanceof o.nI?new h.YH(i.id,i.label,i.actions.map((t=>e(i.item.submenu,t)))):i instanceof o.Xe?new _(t,i.item,this._hiddenStates):i;a.push(e(this._id,n))}n&&l.push(n)}l.length>0&&t.push([r,l]),a.length>0&&i.push(a)}return t}static _fillInKbExprKeys(e,t){if(e)for(const i of e.keys())t.add(i)}static _compareMenuItems(t,i){const n=t.group,r=i.group;if(n!==r){if(!n)return 1;if(!r)return-1;if("navigation"===n)return-1;if("navigation"===r)return 1;const e=n.localeCompare(r);if(0!==e)return e}const s=t.order||0,a=i.order||0;return s<a?-1:s>a?1:e._compareTitles((0,o.is)(t)?t.command.title:t.title,(0,o.is)(i)?i.command.title:i.title)}static _compareTitles(e,t){const i="string"===typeof e?e:e.original,n="string"===typeof t?t:t.original;return i.localeCompare(n)}};k=g([f(3,a.wT),f(4,l.fN),f(5,o.ez)],k);class _{constructor(e,t,i){this.enabled=!0,this.tooltip="",this.id=`toggle/${e.id}/${t.id}`,this.label="string"===typeof t.title?t.title:t.title.value;let n=i.isHidden(e,t.id);this.checked=!n,this.run=()=>{n=!n,i.updateHidden(e,t.id,n)}}dispose(){}}class b{constructor(e,t,i){this.enabled=!0,this.tooltip="";const n=(0,o.i1)(t)?t.submenu.id:t.id;this.id=`hide/${e.id}/${n}`,this.label=(0,d.kg)("hide.label","Hide '{0}'","string"===typeof t.title?t.title:t.title.value),this.run=()=>{i.updateHidden(e,n,!0)}}dispose(){}}},51031:(e,t,i)=>{i.d(t,{w:()=>d});var n=i(58159),r=i(90491),s=i(20512),o=i(55808),a=i(8547),l=i(91823),h=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},c=function(e,t){return function(i,n){t(i,n,e)}},u=function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{l(n.next(e))}catch(t){s(t)}}function a(e){try{l(n.throw(e))}catch(t){s(t)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(o,a)}l((n=n.apply(e,t||[])).next())}))};let d=class extends o.jG{constructor(e,t){super(),this.layoutService=e,this.logService=t,this.mapTextToType=new Map,this.findText="",this.resources=[],(n.isSafari||n.isWebkitWebView)&&this.installWebKitWriteTextWorkaround()}installWebKitWriteTextWorkaround(){const e=()=>{const e=new s.Zv;this.webKitPendingClipboardWritePromise&&!this.webKitPendingClipboardWritePromise.isSettled&&this.webKitPendingClipboardWritePromise.cancel(),this.webKitPendingClipboardWritePromise=e,navigator.clipboard.write([new ClipboardItem({"text/plain":e.p})]).catch((t=>u(this,void 0,void 0,(function*(){t instanceof Error&&"NotAllowedError"===t.name&&e.isRejected||this.logService.error(t)}))))};this.layoutService.hasContainer&&(this._register((0,r.ko)(this.layoutService.container,"click",e)),this._register((0,r.ko)(this.layoutService.container,"keydown",e)))}writeText(e,t){return u(this,void 0,void 0,(function*(){if(t)return void this.mapTextToType.set(t,e);if(this.webKitPendingClipboardWritePromise)return this.webKitPendingClipboardWritePromise.complete(e);try{return yield navigator.clipboard.writeText(e)}catch(s){}const i=document.activeElement,n=document.body.appendChild((0,r.$)("textarea",{"aria-hidden":!0}));n.style.height="1px",n.style.width="1px",n.style.position="absolute",n.value=e,n.focus(),n.select(),document.execCommand("copy"),i instanceof HTMLElement&&i.focus(),document.body.removeChild(n)}))}readText(e){return u(this,void 0,void 0,(function*(){if(e)return this.mapTextToType.get(e)||"";try{return yield navigator.clipboard.readText()}catch(t){return""}}))}readFindText(){return u(this,void 0,void 0,(function*(){return this.findText}))}writeFindText(e){return u(this,void 0,void 0,(function*(){this.findText=e}))}readResources(){return u(this,void 0,void 0,(function*(){return this.resources}))}};d=h([c(0,a.x),c(1,l.rr)],d)},43772:(e,t,i)=>{i.d(t,{h:()=>n});const n=(0,i(34029).u1)("clipboardService")},16281:(e,t,i)=>{i.d(t,{wT:()=>l,wb:()=>h});var n=i(42464),r=i(16624),s=i(55808),o=i(47643),a=i(59713);const l=(0,i(34029).u1)("commandService"),h=new class{constructor(){this._commands=new Map,this._onDidRegisterCommand=new n.vl,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.description){const t=[];for(const n of e.description.args)t.push(n.constraint);const i=e.handler;e.handler=function(e,...n){return(0,a.jx)(n,t),i(e,...n)}}const{id:i}=e;let n=this._commands.get(i);n||(n=new o.w,this._commands.set(i,n));const r=n.unshift(e),l=(0,s.s)((()=>{r();const e=this._commands.get(i);(null===e||void 0===e?void 0:e.isEmpty())&&this._commands.delete(i)}));return this._onDidRegisterCommand.fire(i),l}registerCommandAlias(e,t){return h.registerCommand(e,((e,...i)=>e.get(l).executeCommand(t,...i)))}getCommand(e){const t=this._commands.get(e);if(t&&!t.isEmpty())return r.f.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}};h.registerCommand("noop",(()=>{}))},58471:(e,t,i)=>{i.d(t,{Mo:()=>h,ad:()=>r,gD:()=>l,iB:()=>o,kW:()=>s,pG:()=>n});const n=(0,i(34029).u1)("configurationService");function r(e,t){const i=Object.create(null);for(const n in e)s(i,n,e[n],t);return i}function s(e,t,i,n){const r=t.split("."),s=r.pop();let o=e;for(let l=0;l<r.length;l++){const e=r[l];let i=o[e];switch(typeof i){case"undefined":i=o[e]=Object.create(null);break;case"object":break;default:return void n(`Ignoring ${t} as ${r.slice(0,l+1).join(".")} is ${JSON.stringify(i)}`)}o=i}if("object"===typeof o&&null!==o)try{o[s]=i}catch(a){n(`Ignoring ${t} as ${r.join(".")} is ${JSON.stringify(o)}`)}else n(`Ignoring ${t} as ${r.join(".")} is ${JSON.stringify(o)}`)}function o(e,t){a(e,t.split("."))}function a(e,t){const i=t.shift();if(0!==t.length){if(-1!==Object.keys(e).indexOf(i)){const n=e[i];"object"!==typeof n||Array.isArray(n)||(a(n,t),0===Object.keys(n).length&&delete e[i])}}else delete e[i]}function l(e,t,i){const n=function(e,t){let i=e;for(const n of t){if("object"!==typeof i||null===i)return;i=i[n]}return i}(e,t.split("."));return"undefined"===typeof n?i:n}function h(e){return e.replace(/[\[\]]/g,"")}},54925:(e,t,i)=>{i.d(t,{S1:()=>h,Vk:()=>c,Xm:()=>u});var n=i(48640),r=i(14094),s=i(61460),o=i(59713),a=i(65698),l=i(58471);class h{constructor(e={},t=[],i=[]){this._contents=e,this._keys=t,this._overrides=i,this.frozen=!1,this.overrideConfigurations=new Map}get contents(){return this.checkAndFreeze(this._contents)}get overrides(){return this.checkAndFreeze(this._overrides)}get keys(){return this.checkAndFreeze(this._keys)}isEmpty(){return 0===this._keys.length&&0===Object.keys(this._contents).length&&0===this._overrides.length}getValue(e){return e?(0,l.gD)(this.contents,e):this.contents}getOverrideValue(e,t){const i=this.getContentsForOverrideIdentifer(t);return i?e?(0,l.gD)(i,e):i:void 0}override(e){let t=this.overrideConfigurations.get(e);return t||(t=this.createOverrideConfigurationModel(e),this.overrideConfigurations.set(e,t)),t}merge(...e){const t=s.Go(this.contents),i=s.Go(this.overrides),r=[...this.keys];for(const o of e)if(!o.isEmpty()){this.mergeContents(t,o.contents);for(const e of o.overrides){const[t]=i.filter((t=>n.aI(t.identifiers,e.identifiers)));t?(this.mergeContents(t.contents,e.contents),t.keys.push(...e.keys),t.keys=n.dM(t.keys)):i.push(s.Go(e))}for(const e of o.keys)-1===r.indexOf(e)&&r.push(e)}return new h(t,r,i)}freeze(){return this.frozen=!0,this}createOverrideConfigurationModel(e){const t=this.getContentsForOverrideIdentifer(e);if(!t||"object"!==typeof t||!Object.keys(t).length)return this;const i={};for(const r of n.dM([...Object.keys(this.contents),...Object.keys(t)])){let e=this.contents[r];const n=t[r];n&&("object"===typeof e&&"object"===typeof n?(e=s.Go(e),this.mergeContents(e,n)):e=n),i[r]=e}return new h(i,this.keys,this.overrides)}mergeContents(e,t){for(const i of Object.keys(t))i in e&&o.Gv(e[i])&&o.Gv(t[i])?this.mergeContents(e[i],t[i]):e[i]=s.Go(t[i])}checkAndFreeze(e){return this.frozen&&!Object.isFrozen(e)?s.ol(e):e}getContentsForOverrideIdentifer(e){let t=null,i=null;const r=e=>{e&&(i?this.mergeContents(i,e):i=s.Go(e))};for(const s of this.overrides)n.aI(s.identifiers,[e])?t=s.contents:s.identifiers.includes(e)&&r(s.contents);return r(t),i}toJSON(){return{contents:this.contents,overrides:this.overrides,keys:this.keys}}setValue(e,t){this.addKey(e),(0,l.kW)(this.contents,e,t,(e=>{throw new Error(e)}))}removeValue(e){this.removeKey(e)&&(0,l.iB)(this.contents,e)}addKey(e){let t=this.keys.length;for(let i=0;i<t;i++)0===e.indexOf(this.keys[i])&&(t=i);this.keys.splice(t,1,e)}removeKey(e){const t=this.keys.indexOf(e);return-1!==t&&(this.keys.splice(t,1),!0)}}class c{constructor(e,t,i,n,s=new h,o=new h,a=new r.fT,l=new h,c=new r.fT,u=!0){this._defaultConfiguration=e,this._policyConfiguration=t,this._applicationConfiguration=i,this._localUserConfiguration=n,this._remoteUserConfiguration=s,this._workspaceConfiguration=o,this._folderConfigurations=a,this._memoryConfiguration=l,this._memoryConfigurationByResource=c,this._freeze=u,this._workspaceConsolidatedConfiguration=null,this._foldersConsolidatedConfigurations=new r.fT,this._userConfiguration=null}getValue(e,t,i){return this.getConsolidatedConfigurationModel(e,t,i).getValue(e)}updateValue(e,t,i={}){let n;i.resource?(n=this._memoryConfigurationByResource.get(i.resource),n||(n=new h,this._memoryConfigurationByResource.set(i.resource,n))):n=this._memoryConfiguration,void 0===t?n.removeValue(e):n.setValue(e,t),i.resource||(this._workspaceConsolidatedConfiguration=null)}inspect(e,t,i){const r=this.getConsolidatedConfigurationModel(e,t,i),s=this.getFolderConfigurationModelForResource(t.resource,i),o=t.resource&&this._memoryConfigurationByResource.get(t.resource)||this._memoryConfiguration,a=t.overrideIdentifier?this._defaultConfiguration.freeze().override(t.overrideIdentifier).getValue(e):this._defaultConfiguration.freeze().getValue(e),l=this._policyConfiguration.isEmpty()?void 0:this._policyConfiguration.freeze().getValue(e),h=this.applicationConfiguration.isEmpty()?void 0:this.applicationConfiguration.freeze().getValue(e),c=t.overrideIdentifier?this.userConfiguration.freeze().override(t.overrideIdentifier).getValue(e):this.userConfiguration.freeze().getValue(e),u=t.overrideIdentifier?this.localUserConfiguration.freeze().override(t.overrideIdentifier).getValue(e):this.localUserConfiguration.freeze().getValue(e),d=t.overrideIdentifier?this.remoteUserConfiguration.freeze().override(t.overrideIdentifier).getValue(e):this.remoteUserConfiguration.freeze().getValue(e),g=i?t.overrideIdentifier?this._workspaceConfiguration.freeze().override(t.overrideIdentifier).getValue(e):this._workspaceConfiguration.freeze().getValue(e):void 0,f=s?t.overrideIdentifier?s.freeze().override(t.overrideIdentifier).getValue(e):s.freeze().getValue(e):void 0,p=t.overrideIdentifier?o.override(t.overrideIdentifier).getValue(e):o.getValue(e),m=r.getValue(e),k=n.dM(r.overrides.map((e=>e.identifiers)).flat()).filter((t=>void 0!==r.getOverrideValue(e,t)));return{defaultValue:a,policyValue:l,applicationValue:h,userValue:c,userLocalValue:u,userRemoteValue:d,workspaceValue:g,workspaceFolderValue:f,memoryValue:p,value:m,default:void 0!==a?{value:this._defaultConfiguration.freeze().getValue(e),override:t.overrideIdentifier?this._defaultConfiguration.freeze().getOverrideValue(e,t.overrideIdentifier):void 0}:void 0,policy:void 0!==l?{value:l}:void 0,application:void 0!==h?{value:h,override:t.overrideIdentifier?this.applicationConfiguration.freeze().getOverrideValue(e,t.overrideIdentifier):void 0}:void 0,user:void 0!==c?{value:this.userConfiguration.freeze().getValue(e),override:t.overrideIdentifier?this.userConfiguration.freeze().getOverrideValue(e,t.overrideIdentifier):void 0}:void 0,userLocal:void 0!==u?{value:this.localUserConfiguration.freeze().getValue(e),override:t.overrideIdentifier?this.localUserConfiguration.freeze().getOverrideValue(e,t.overrideIdentifier):void 0}:void 0,userRemote:void 0!==d?{value:this.remoteUserConfiguration.freeze().getValue(e),override:t.overrideIdentifier?this.remoteUserConfiguration.freeze().getOverrideValue(e,t.overrideIdentifier):void 0}:void 0,workspace:void 0!==g?{value:this._workspaceConfiguration.freeze().getValue(e),override:t.overrideIdentifier?this._workspaceConfiguration.freeze().getOverrideValue(e,t.overrideIdentifier):void 0}:void 0,workspaceFolder:void 0!==f?{value:null===s||void 0===s?void 0:s.freeze().getValue(e),override:t.overrideIdentifier?null===s||void 0===s?void 0:s.freeze().getOverrideValue(e,t.overrideIdentifier):void 0}:void 0,memory:void 0!==p?{value:o.getValue(e),override:t.overrideIdentifier?o.getOverrideValue(e,t.overrideIdentifier):void 0}:void 0,overrideIdentifiers:k.length?k:void 0}}get applicationConfiguration(){return this._applicationConfiguration}get userConfiguration(){return this._userConfiguration||(this._userConfiguration=this._remoteUserConfiguration.isEmpty()?this._localUserConfiguration:this._localUserConfiguration.merge(this._remoteUserConfiguration),this._freeze&&this._userConfiguration.freeze()),this._userConfiguration}get localUserConfiguration(){return this._localUserConfiguration}get remoteUserConfiguration(){return this._remoteUserConfiguration}getConsolidatedConfigurationModel(e,t,i){let n=this.getConsolidatedConfigurationModelForResource(t,i);return t.overrideIdentifier&&(n=n.override(t.overrideIdentifier)),this._policyConfiguration.isEmpty()||void 0===this._policyConfiguration.getValue(e)||(n=n.merge(this._policyConfiguration)),n}getConsolidatedConfigurationModelForResource({resource:e},t){let i=this.getWorkspaceConsolidatedConfiguration();if(t&&e){const n=t.getFolder(e);n&&(i=this.getFolderConsolidatedConfiguration(n.uri)||i);const r=this._memoryConfigurationByResource.get(e);r&&(i=i.merge(r))}return i}getWorkspaceConsolidatedConfiguration(){return this._workspaceConsolidatedConfiguration||(this._workspaceConsolidatedConfiguration=this._defaultConfiguration.merge(this.applicationConfiguration,this.userConfiguration,this._workspaceConfiguration,this._memoryConfiguration),this._freeze&&(this._workspaceConfiguration=this._workspaceConfiguration.freeze())),this._workspaceConsolidatedConfiguration}getFolderConsolidatedConfiguration(e){let t=this._foldersConsolidatedConfigurations.get(e);if(!t){const i=this.getWorkspaceConsolidatedConfiguration(),n=this._folderConfigurations.get(e);n?(t=i.merge(n),this._freeze&&(t=t.freeze()),this._foldersConsolidatedConfigurations.set(e,t)):t=i}return t}getFolderConfigurationModelForResource(e,t){if(t&&e){const i=t.getFolder(e);if(i)return this._folderConfigurations.get(i.uri)}}toData(){return{defaults:{contents:this._defaultConfiguration.contents,overrides:this._defaultConfiguration.overrides,keys:this._defaultConfiguration.keys},policy:{contents:this._policyConfiguration.contents,overrides:this._policyConfiguration.overrides,keys:this._policyConfiguration.keys},application:{contents:this.applicationConfiguration.contents,overrides:this.applicationConfiguration.overrides,keys:this.applicationConfiguration.keys},user:{contents:this.userConfiguration.contents,overrides:this.userConfiguration.overrides,keys:this.userConfiguration.keys},workspace:{contents:this._workspaceConfiguration.contents,overrides:this._workspaceConfiguration.overrides,keys:this._workspaceConfiguration.keys},folders:[...this._folderConfigurations.keys()].reduce(((e,t)=>{const{contents:i,overrides:n,keys:r}=this._folderConfigurations.get(t);return e.push([t,{contents:i,overrides:n,keys:r}]),e}),[])}}static parse(e){const t=this.parseConfigurationModel(e.defaults),i=this.parseConfigurationModel(e.policy),n=this.parseConfigurationModel(e.application),s=this.parseConfigurationModel(e.user),o=this.parseConfigurationModel(e.workspace),l=e.folders.reduce(((e,t)=>(e.set(a.r.revive(t[0]),this.parseConfigurationModel(t[1])),e)),new r.fT);return new c(t,i,n,s,new h,o,l,new h,new r.fT,!1)}static parseConfigurationModel(e){return new h(e.contents,e.keys,e.overrides).freeze()}}class u{constructor(e,t,i,n){this.change=e,this.previous=t,this.currentConfiguraiton=i,this.currentWorkspace=n,this._previousConfiguration=void 0;const r=new Set;e.keys.forEach((e=>r.add(e))),e.overrides.forEach((([,e])=>e.forEach((e=>r.add(e))))),this.affectedKeys=[...r.values()];const s=new h;this.affectedKeys.forEach((e=>s.setValue(e,{}))),this.affectedKeysTree=s.contents}get previousConfiguration(){return!this._previousConfiguration&&this.previous&&(this._previousConfiguration=c.parse(this.previous.data)),this._previousConfiguration}affectsConfiguration(e,t){var i;if(this.doesAffectedKeysTreeContains(this.affectedKeysTree,e)){if(t){const n=this.previousConfiguration?this.previousConfiguration.getValue(e,t,null===(i=this.previous)||void 0===i?void 0:i.workspace):void 0,r=this.currentConfiguraiton.getValue(e,t,this.currentWorkspace);return!s.aI(n,r)}return!0}return!1}doesAffectedKeysTreeContains(e,t){let i,n=(0,l.ad)({[t]:!0},(()=>{}));for(;"object"===typeof n&&(i=Object.keys(n)[0]);){if(!(e=e[i]))return!1;n=n[i]}return!0}}},11332:(e,t,i)=>{i.d(t,{Fd:()=>c,Gv:()=>w,rC:()=>y});var n=i(48640),r=i(42464),s=i(59713),o=i(35819),a=i(58471),l=i(23982),h=i(1097);const c={Configuration:"base.contributions.configuration"},u={properties:{},patternProperties:{}},d={properties:{},patternProperties:{}},g={properties:{},patternProperties:{}},f={properties:{},patternProperties:{}},p={properties:{},patternProperties:{}},m={properties:{},patternProperties:{}},k="vscode://schemas/settings/resourceLanguage",_=h.O.as(l.F.JSONContribution);const b="\\[([^\\]]+)\\]",C=new RegExp(b,"g"),v=`^(${b})+$`,y=new RegExp(v);function w(e){const t=[];if(y.test(e)){let i=C.exec(e);for(;null===i||void 0===i?void 0:i.length;){const n=i[1].trim();n&&t.push(n),i=C.exec(e)}}return(0,n.dM)(t)}const S=new class{constructor(){this.overrideIdentifiers=new Set,this._onDidSchemaChange=new r.vl,this._onDidUpdateConfiguration=new r.vl,this.configurationDefaultsOverrides=new Map,this.defaultLanguageConfigurationOverridesNode={id:"defaultOverrides",title:o.kg("defaultLanguageConfigurationOverrides.title","Default Language Configuration Overrides"),properties:{}},this.configurationContributors=[this.defaultLanguageConfigurationOverridesNode],this.resourceLanguageSettingsSchema={properties:{},patternProperties:{},additionalProperties:!1,errorMessage:"Unknown editor configuration setting",allowTrailingCommas:!0,allowComments:!0},this.configurationProperties={},this.policyConfigurations=new Map,this.excludedConfigurationProperties={},_.registerSchema(k,this.resourceLanguageSettingsSchema),this.registerOverridePropertyPatternKey()}registerConfiguration(e,t=!0){this.registerConfigurations([e],t)}registerConfigurations(e,t=!0){const i=this.doRegisterConfigurations(e,t);_.registerSchema(k,this.resourceLanguageSettingsSchema),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire({properties:i})}registerDefaultConfigurations(e){var t;const i=[],n=[];for(const{overrides:r,source:l}of e)for(const e in r)if(i.push(e),y.test(e)){const i=this.configurationDefaultsOverrides.get(e),h=null!==(t=null===i||void 0===i?void 0:i.valuesSources)&&void 0!==t?t:new Map;if(l)for(const t of Object.keys(r[e]))h.set(t,l);const c=Object.assign(Object.assign({},(null===i||void 0===i?void 0:i.value)||{}),r[e]);this.configurationDefaultsOverrides.set(e,{source:l,value:c,valuesSources:h});const u=(0,a.Mo)(e),d={type:"object",default:c,description:o.kg("defaultLanguageConfiguration.description","Configure settings to be overridden for the {0} language.",u),$ref:k,defaultDefaultValue:c,source:s.Kg(l)?void 0:l,defaultValueSource:l};n.push(...w(e)),this.configurationProperties[e]=d,this.defaultLanguageConfigurationOverridesNode.properties[e]=d}else{this.configurationDefaultsOverrides.set(e,{value:r[e],source:l});const t=this.configurationProperties[e];t&&(this.updatePropertyDefaultValue(e,t),this.updateSchema(e,t))}this.registerOverrideIdentifiers(n),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire({properties:i,defaultsOverrides:!0})}registerOverrideIdentifiers(e){for(const t of e)this.overrideIdentifiers.add(t);this.updateOverridePropertyPatternKey()}doRegisterConfigurations(e,t){const i=[];return e.forEach((e=>{i.push(...this.validateAndRegisterProperties(e,t,e.extensionInfo,e.restrictedProperties)),this.configurationContributors.push(e),this.registerJSONConfiguration(e)})),i}validateAndRegisterProperties(e,t=!0,i,n,r=3){var o;r=s.z(e.scope)?r:e.scope;const a=[],l=e.properties;if(l)for(const c in l){const e=l[c];t&&L(c,e)?delete l[c]:(e.source=i,e.defaultDefaultValue=l[c].default,this.updatePropertyDefaultValue(c,e),y.test(c)?e.scope=void 0:(e.scope=s.z(e.scope)?r:e.scope,e.restricted=s.z(e.restricted)?!!(null===n||void 0===n?void 0:n.includes(c)):e.restricted),!l[c].hasOwnProperty("included")||l[c].included?(this.configurationProperties[c]=l[c],(null===(o=l[c].policy)||void 0===o?void 0:o.name)&&this.policyConfigurations.set(l[c].policy.name,c),!l[c].deprecationMessage&&l[c].markdownDeprecationMessage&&(l[c].deprecationMessage=l[c].markdownDeprecationMessage),a.push(c)):(this.excludedConfigurationProperties[c]=l[c],delete l[c]))}const h=e.allOf;if(h)for(const s of h)a.push(...this.validateAndRegisterProperties(s,t,i,n,r));return a}getConfigurationProperties(){return this.configurationProperties}getPolicyConfigurations(){return this.policyConfigurations}registerJSONConfiguration(e){const t=e=>{const i=e.properties;if(i)for(const t in i)this.updateSchema(t,i[t]);const n=e.allOf;null===n||void 0===n||n.forEach(t)};t(e)}updateSchema(e,t){switch(u.properties[e]=t,t.scope){case 1:d.properties[e]=t;break;case 2:g.properties[e]=t;break;case 6:f.properties[e]=t;break;case 3:p.properties[e]=t;break;case 4:m.properties[e]=t;break;case 5:m.properties[e]=t,this.resourceLanguageSettingsSchema.properties[e]=t}}updateOverridePropertyPatternKey(){for(const e of this.overrideIdentifiers.values()){const t=`[${e}]`,i={type:"object",description:o.kg("overrideSettings.defaultDescription","Configure editor settings to be overridden for a language."),errorMessage:o.kg("overrideSettings.errorMessage","This setting does not support per-language configuration."),$ref:k};this.updatePropertyDefaultValue(t,i),u.properties[t]=i,d.properties[t]=i,g.properties[t]=i,f.properties[t]=i,p.properties[t]=i,m.properties[t]=i}this._onDidSchemaChange.fire()}registerOverridePropertyPatternKey(){const e={type:"object",description:o.kg("overrideSettings.defaultDescription","Configure editor settings to be overridden for a language."),errorMessage:o.kg("overrideSettings.errorMessage","This setting does not support per-language configuration."),$ref:k};u.patternProperties[v]=e,d.patternProperties[v]=e,g.patternProperties[v]=e,f.patternProperties[v]=e,p.patternProperties[v]=e,m.patternProperties[v]=e,this._onDidSchemaChange.fire()}updatePropertyDefaultValue(e,t){const i=this.configurationDefaultsOverrides.get(e);let n=null===i||void 0===i?void 0:i.value,r=null===i||void 0===i?void 0:i.source;s.b0(n)&&(n=t.defaultDefaultValue,r=void 0),s.b0(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=r}};function L(e,t){var i,n,r,s;return e.trim()?y.test(e)?o.kg("config.property.languageDefault","Cannot register '{0}'. This matches property pattern '\\\\[.*\\\\]$' for describing language specific editor settings. Use 'configurationDefaults' contribution.",e):void 0!==S.getConfigurationProperties()[e]?o.kg("config.property.duplicate","Cannot register '{0}'. This property is already registered.",e):(null===(i=t.policy)||void 0===i?void 0:i.name)&&void 0!==S.getPolicyConfigurations().get(null===(n=t.policy)||void 0===n?void 0:n.name)?o.kg("config.policy.duplicate","Cannot register '{0}'. The associated policy {1} is already registered with {2}.",e,null===(r=t.policy)||void 0===r?void 0:r.name,S.getPolicyConfigurations().get(null===(s=t.policy)||void 0===s?void 0:s.name)):null:o.kg("config.property.empty","Cannot register an empty property")}h.O.add(c.Configuration,S)},66578:(e,t,i)=>{i.d(t,{z:()=>a});var n=i(58471),r=i(54925),s=i(11332),o=i(1097);class a extends r.S1{constructor(e={}){const t=o.O.as(s.Fd.Configuration).getConfigurationProperties(),i=Object.keys(t),r=Object.create(null),a=[];for(const s in t){const i=e[s],o=void 0!==i?i:t[s].default;(0,n.kW)(r,s,o,(e=>{}))}for(const o of Object.keys(r))s.rC.test(o)&&a.push({identifiers:(0,s.Gv)(o),keys:Object.keys(r[o]),contents:(0,n.ad)(r[o],(e=>{}))});super(r,i,a)}}},49539:(e,t,i)=>{i.d(t,{i7:()=>S});var n=i(42464),r=i(16624),s=i(55808),o=i(14094),a=i(61460),l=i(65698),h=i(35819),c=i(16281),u=i(58471),d=i(21181),g=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},f=function(e,t){return function(i,n){t(i,n,e)}};const p="data-keybinding-context";class m{constructor(e,t){this._id=e,this._parent=t,this._value=Object.create(null),this._value._contextId=e}get value(){return Object.assign({},this._value)}setValue(e,t){return this._value[e]!==t&&(this._value[e]=t,!0)}removeValue(e){return e in this._value&&(delete this._value[e],!0)}getValue(e){const t=this._value[e];return"undefined"===typeof t&&this._parent?this._parent.getValue(e):t}}class k extends m{constructor(){super(-1,null)}setValue(e,t){return!1}removeValue(e){return!1}getValue(e){}}k.INSTANCE=new k;class _ extends m{constructor(e,t,i){super(e,null),this._configurationService=t,this._values=o.cB.forConfigKeys(),this._listener=this._configurationService.onDidChangeConfiguration((e=>{if(6===e.source){const e=Array.from(r.f.map(this._values,(([e])=>e)));this._values.clear(),i.fire(new v(e))}else{const t=[];for(const i of e.affectedKeys){const e=`config.${i}`,n=this._values.findSuperstr(e);void 0!==n&&(t.push(...r.f.map(n,(([e])=>e))),this._values.deleteSuperstr(e)),this._values.has(e)&&(t.push(e),this._values.delete(e))}i.fire(new v(t))}}))}dispose(){this._listener.dispose()}getValue(e){if(0!==e.indexOf(_._keyPrefix))return super.getValue(e);if(this._values.has(e))return this._values.get(e);const t=e.substr(_._keyPrefix.length),i=this._configurationService.getValue(t);let n;switch(typeof i){case"number":case"boolean":case"string":n=i;break;default:n=Array.isArray(i)?JSON.stringify(i):i}return this._values.set(e,n),n}setValue(e,t){return super.setValue(e,t)}removeValue(e){return super.removeValue(e)}}_._keyPrefix="config.";class b{constructor(e,t,i){this._service=e,this._key=t,this._defaultValue=i,this.reset()}set(e){this._service.setContext(this._key,e)}reset(){"undefined"===typeof this._defaultValue?this._service.removeContext(this._key):this._service.setContext(this._key,this._defaultValue)}get(){return this._service.getContextKeyValue(this._key)}}class C{constructor(e){this.key=e}affectsSome(e){return e.has(this.key)}allKeysContainedIn(e){return this.affectsSome(e)}}class v{constructor(e){this.keys=e}affectsSome(e){for(const t of this.keys)if(e.has(t))return!0;return!1}allKeysContainedIn(e){return this.keys.every((t=>e.has(t)))}}class y{constructor(e){this.events=e}affectsSome(e){for(const t of this.events)if(t.affectsSome(e))return!0;return!1}allKeysContainedIn(e){return this.events.every((t=>t.allKeysContainedIn(e)))}}class w{constructor(e){this._onDidChangeContext=new n.fV({merge:e=>new y(e)}),this.onDidChangeContext=this._onDidChangeContext.event,this._isDisposed=!1,this._myContextId=e}createKey(e,t){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");return new b(this,e,t)}bufferChangeEvents(e){this._onDidChangeContext.pause();try{e()}finally{this._onDidChangeContext.resume()}}createScoped(e){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");return new L(this,e)}contextMatchesRules(e){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");const t=this.getContextValuesContainer(this._myContextId);return!e||e.evaluate(t)}getContextKeyValue(e){if(!this._isDisposed)return this.getContextValuesContainer(this._myContextId).getValue(e)}setContext(e,t){if(this._isDisposed)return;const i=this.getContextValuesContainer(this._myContextId);i&&i.setValue(e,t)&&this._onDidChangeContext.fire(new C(e))}removeContext(e){this._isDisposed||this.getContextValuesContainer(this._myContextId).removeValue(e)&&this._onDidChangeContext.fire(new C(e))}getContext(e){return this._isDisposed?k.INSTANCE:this.getContextValuesContainer(function(e){for(;e;){if(e.hasAttribute(p)){const t=e.getAttribute(p);return t?parseInt(t,10):NaN}e=e.parentElement}return 0}(e))}}let S=class extends w{constructor(e){super(0),this._contexts=new Map,this._toDispose=new s.Cm,this._lastContextId=0;const t=new _(this._myContextId,e,this._onDidChangeContext);this._contexts.set(this._myContextId,t),this._toDispose.add(t)}dispose(){this._onDidChangeContext.dispose(),this._isDisposed=!0,this._toDispose.dispose()}getContextValuesContainer(e){return this._isDisposed?k.INSTANCE:this._contexts.get(e)||k.INSTANCE}createChildContext(e=this._myContextId){if(this._isDisposed)throw new Error("ContextKeyService has been disposed");const t=++this._lastContextId;return this._contexts.set(t,new m(t,this.getContextValuesContainer(e))),t}disposeContext(e){this._isDisposed||this._contexts.delete(e)}};S=g([f(0,u.pG)],S);class L extends w{constructor(e,t){if(super(e.createChildContext()),this._parentChangeListener=new s.HE,this._parent=e,this._updateParentChangeListener(),this._domNode=t,this._domNode.hasAttribute(p)){let e="";this._domNode.classList&&(e=Array.from(this._domNode.classList.values()).join(", "))}this._domNode.setAttribute(p,String(this._myContextId))}_updateParentChangeListener(){this._parentChangeListener.value=this._parent.onDidChangeContext((e=>{const t=this._parent.getContextValuesContainer(this._myContextId).value;var i;i=t,e.allKeysContainedIn(new Set(Object.keys(i)))||this._onDidChangeContext.fire(e)}))}dispose(){this._isDisposed||(this._onDidChangeContext.dispose(),this._parent.disposeContext(this._myContextId),this._parentChangeListener.dispose(),this._domNode.removeAttribute(p),this._isDisposed=!0)}getContextValuesContainer(e){return this._isDisposed?k.INSTANCE:this._parent.getContextValuesContainer(e)}createChildContext(e=this._myContextId){if(this._isDisposed)throw new Error("ScopedContextKeyService has been disposed");return this._parent.createChildContext(e)}disposeContext(e){this._isDisposed||this._parent.disposeContext(e)}}c.wb.registerCommand(d.Ho,(function(e,t,i){e.get(d.fN).createKey(String(t),function(e){return(0,a.PI)(e,(e=>"object"===typeof e&&1===e.$mid?l.r.revive(e).toString():e instanceof l.r?e.toString():void 0))}(i))})),c.wb.registerCommand({id:"getContextKeyInfo",handler:()=>[...d.N1.all()].sort(((e,t)=>e.key.localeCompare(t.key))),description:{description:(0,h.kg)("getContextKeyInfo","A command that returns information about context keys"),args:[]}}),c.wb.registerCommand("_generateContextKeyInfo",(function(){const e=[],t=new Set;for(const i of d.N1.all())t.has(i.key)||(t.add(i.key),e.push(i));e.sort(((e,t)=>e.key.localeCompare(t.key)))}))},21181:(e,t,i)=>{i.d(t,{Ho:()=>O,M$:()=>l,M0:()=>N,N1:()=>T,fN:()=>E,jQ:()=>h});var n=i(55977),r=i(24638),s=i(34029);const o=new Map;o.set("false",!1),o.set("true",!0),o.set("isMac",n.zx),o.set("isLinux",n.j9),o.set("isWindows",n.uF),o.set("isWeb",n.HZ),o.set("isMacNative",n.zx&&!n.HZ),o.set("isEdge",n.UP),o.set("isFirefox",n.gm),o.set("isChrome",n.H8),o.set("isSafari",n.nr);const a=Object.prototype.hasOwnProperty;class l{static has(e){return g.create(e)}static equals(e,t){return f.create(e,t)}static regex(e,t){return S.create(e,t)}static not(e){return _.create(e)}static and(...e){return I.create(e,null)}static or(...e){return D.create(e,null,!0)}static deserialize(e,t=!1){if(e)return this._deserializeOrExpression(e,t)}static _deserializeOrExpression(e,t){const i=e.split("||");return D.create(i.map((e=>this._deserializeAndExpression(e,t))),null,!0)}static _deserializeAndExpression(e,t){const i=e.split("&&");return I.create(i.map((e=>this._deserializeOne(e,t))),null)}static _deserializeOne(e,t){if((e=e.trim()).indexOf("!=")>=0){const i=e.split("!=");return k.create(i[0].trim(),this._deserializeValue(i[1],t))}if(e.indexOf("==")>=0){const i=e.split("==");return f.create(i[0].trim(),this._deserializeValue(i[1],t))}if(e.indexOf("=~")>=0){const i=e.split("=~");return S.create(i[0].trim(),this._deserializeRegexValue(i[1],t))}if(e.indexOf(" not in ")>=0){const t=e.split(" not in ");return m.create(t[0].trim(),t[1].trim())}if(e.indexOf(" in ")>=0){const t=e.split(" in ");return p.create(t[0].trim(),t[1].trim())}if(/^[^<=>]+>=[^<=>]+$/.test(e)){const t=e.split(">=");return v.create(t[0].trim(),t[1].trim())}if(/^[^<=>]+>[^<=>]+$/.test(e)){const t=e.split(">");return C.create(t[0].trim(),t[1].trim())}if(/^[^<=>]+<=[^<=>]+$/.test(e)){const t=e.split("<=");return w.create(t[0].trim(),t[1].trim())}if(/^[^<=>]+<[^<=>]+$/.test(e)){const t=e.split("<");return y.create(t[0].trim(),t[1].trim())}return/^\!\s*/.test(e)?_.create(e.substr(1).trim()):g.create(e)}static _deserializeValue(e,t){if("true"===(e=e.trim()))return!0;if("false"===e)return!1;const i=/^'([^']*)'$/.exec(e);return i?i[1].trim():e}static _deserializeRegexValue(e,t){if((0,r.AV)(e)){if(t)throw new Error("missing regexp-value for =~-expression");return null}const i=e.indexOf("/"),n=e.lastIndexOf("/");if(i===n||i<0){if(t)throw new Error(`bad regexp-value '${e}', missing /-enclosure`);return null}const s=e.slice(i+1,n),o="i"===e[n+1]?"i":"";try{return new RegExp(s,o)}catch(a){if(t)throw new Error(`bad regexp-value '${e}', parse error: ${a}`);return null}}}function h(e,t){const i=e?e.substituteConstants():void 0,n=t?t.substituteConstants():void 0;return!i&&!n||!(!i||!n)&&i.equals(n)}function c(e,t){return e.cmp(t)}class u{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 d.INSTANCE}}u.INSTANCE=new u;class d{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 u.INSTANCE}}d.INSTANCE=new d;class g{constructor(e,t){this.key=e,this.negated=t,this.type=2}static create(e,t=null){const i=o.get(e);return"boolean"===typeof i?i?d.INSTANCE:u.INSTANCE:new g(e,t)}cmp(e){return e.type!==this.type?this.type-e.type:M(this.key,e.key)}equals(e){return e.type===this.type&&this.key===e.key}substituteConstants(){const e=o.get(this.key);return"boolean"===typeof e?e?d.INSTANCE:u.INSTANCE:this}evaluate(e){return!!e.getValue(this.key)}serialize(){return this.key}keys(){return[this.key]}negate(){return this.negated||(this.negated=_.create(this.key,this)),this.negated}}class f{constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=4}static create(e,t,i=null){if("boolean"===typeof t)return t?g.create(e,i):_.create(e,i);const n=o.get(e);if("boolean"===typeof n){return t===(n?"true":"false")?d.INSTANCE:u.INSTANCE}return new f(e,t,i)}cmp(e){return e.type!==this.type?this.type-e.type:B(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=o.get(this.key);if("boolean"===typeof e){const t=e?"true":"false";return this.value===t?d.INSTANCE:u.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=k.create(this.key,this.value,this)),this.negated}}class p{constructor(e,t){this.key=e,this.valueKey=t,this.type=10,this.negated=null}static create(e,t){return new p(e,t)}cmp(e){return e.type!==this.type?this.type-e.type:B(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&&a.call(t,i)}serialize(){return`${this.key} in '${this.valueKey}'`}keys(){return[this.key,this.valueKey]}negate(){return this.negated||(this.negated=m.create(this.key,this.valueKey)),this.negated}}class m{constructor(e,t){this.key=e,this.valueKey=t,this.type=11,this._negated=p.create(e,t)}static create(e,t){return new m(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 k{constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=5}static create(e,t,i=null){if("boolean"===typeof t)return t?_.create(e,i):g.create(e,i);const n=o.get(e);if("boolean"===typeof n){return t===(n?"true":"false")?u.INSTANCE:d.INSTANCE}return new k(e,t,i)}cmp(e){return e.type!==this.type?this.type-e.type:B(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=o.get(this.key);if("boolean"===typeof e){const t=e?"true":"false";return this.value===t?u.INSTANCE:d.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=f.create(this.key,this.value,this)),this.negated}}class _{constructor(e,t){this.key=e,this.negated=t,this.type=3}static create(e,t=null){const i=o.get(e);return"boolean"===typeof i?i?u.INSTANCE:d.INSTANCE:new _(e,t)}cmp(e){return e.type!==this.type?this.type-e.type:M(this.key,e.key)}equals(e){return e.type===this.type&&this.key===e.key}substituteConstants(){const e=o.get(this.key);return"boolean"===typeof e?e?u.INSTANCE:d.INSTANCE:this}evaluate(e){return!e.getValue(this.key)}serialize(){return`!${this.key}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=g.create(this.key,this)),this.negated}}function b(e,t){if("string"===typeof e){const t=parseFloat(e);isNaN(t)||(e=t)}return"string"===typeof e||"number"===typeof e?t(e):u.INSTANCE}class C{constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=12}static create(e,t,i=null){return b(t,(t=>new C(e,t,i)))}cmp(e){return e.type!==this.type?this.type-e.type:B(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=w.create(this.key,this.value,this)),this.negated}}class v{constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=13}static create(e,t,i=null){return b(t,(t=>new v(e,t,i)))}cmp(e){return e.type!==this.type?this.type-e.type:B(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=y.create(this.key,this.value,this)),this.negated}}class y{constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=14}static create(e,t,i=null){return b(t,(t=>new y(e,t,i)))}cmp(e){return e.type!==this.type?this.type-e.type:B(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=v.create(this.key,this.value,this)),this.negated}}class w{constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=15}static create(e,t,i=null){return b(t,(t=>new w(e,t,i)))}cmp(e){return e.type!==this.type?this.type-e.type:B(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=C.create(this.key,this.value,this)),this.negated}}class S{constructor(e,t){this.key=e,this.regexp=t,this.type=7,this.negated=null}static create(e,t){return new S(e,t)}cmp(e){if(e.type!==this.type)return this.type-e.type;if(this.key<e.key)return-1;if(this.key>e.key)return 1;const t=this.regexp?this.regexp.source:"",i=e.regexp?e.regexp.source:"";return t<i?-1:t>i?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.ignoreCase?"i":""}`:"/invalid/";return`${this.key} =~ ${e}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=L.create(this)),this.negated}}class L{constructor(e){this._actual=e,this.type=8}static create(e){return new L(e)}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(){throw new Error("Method not implemented.")}keys(){return this._actual.keys()}negate(){return this._actual}}function x(e){let t=null;for(let i=0,n=e.length;i<n;i++){const n=e[i].substituteConstants();if(e[i]!==n&&null===t){t=[];for(let n=0;n<i;n++)t[n]=e[n]}null!==t&&(t[i]=n)}return null===t?e:t}class I{constructor(e,t){this.expr=e,this.negated=t,this.type=6}static create(e,t){return I._normalizeArr(e,t)}cmp(e){if(e.type!==this.type)return this.type-e.type;if(this.expr.length<e.expr.length)return-1;if(this.expr.length>e.expr.length)return 1;for(let t=0,i=this.expr.length;t<i;t++){const i=c(this.expr[t],e.expr[t]);if(0!==i)return i}return 0}equals(e){if(e.type===this.type){if(this.expr.length!==e.expr.length)return!1;for(let t=0,i=this.expr.length;t<i;t++)if(!this.expr[t].equals(e.expr[t]))return!1;return!0}return!1}substituteConstants(){const e=x(this.expr);return e===this.expr?this:I.create(e,this.negated)}evaluate(e){for(let t=0,i=this.expr.length;t<i;t++)if(!this.expr[t].evaluate(e))return!1;return!0}static _normalizeArr(e,t){const i=[];let n=!1;for(const r of e)if(r)if(1!==r.type){if(0===r.type)return u.INSTANCE;6!==r.type?i.push(r):i.push(...r.expr)}else n=!0;if(0===i.length&&n)return d.INSTANCE;if(0!==i.length){if(1===i.length)return i[0];i.sort(c);for(let e=1;e<i.length;e++)i[e-1].equals(i[e])&&(i.splice(e,1),e--);if(1===i.length)return i[0];for(;i.length>1;){const e=i[i.length-1];if(9!==e.type)break;i.pop();const t=i.pop(),n=0===i.length,r=D.create(e.expr.map((e=>I.create([e,t],null))),null,n);r&&(i.push(r),i.sort(c))}return 1===i.length?i[0]:new I(i,t)}}serialize(){return this.expr.map((e=>e.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=D.create(e,this,!0)}return this.negated}}class D{constructor(e,t){this.expr=e,this.negated=t,this.type=9}static create(e,t,i){return D._normalizeArr(e,t,i)}cmp(e){if(e.type!==this.type)return this.type-e.type;if(this.expr.length<e.expr.length)return-1;if(this.expr.length>e.expr.length)return 1;for(let t=0,i=this.expr.length;t<i;t++){const i=c(this.expr[t],e.expr[t]);if(0!==i)return i}return 0}equals(e){if(e.type===this.type){if(this.expr.length!==e.expr.length)return!1;for(let t=0,i=this.expr.length;t<i;t++)if(!this.expr[t].equals(e.expr[t]))return!1;return!0}return!1}substituteConstants(){const e=x(this.expr);return e===this.expr?this:D.create(e,this.negated,!1)}evaluate(e){for(let t=0,i=this.expr.length;t<i;t++)if(this.expr[t].evaluate(e))return!0;return!1}static _normalizeArr(e,t,i){let n=[],r=!1;if(e){for(let t=0,i=e.length;t<i;t++){const i=e[t];if(i)if(0!==i.type){if(1===i.type)return d.INSTANCE;9!==i.type?n.push(i):n=n.concat(i.expr)}else r=!0}if(0===n.length&&r)return u.INSTANCE;n.sort(c)}if(0!==n.length){if(1===n.length)return n[0];for(let e=1;e<n.length;e++)n[e-1].equals(n[e])&&(n.splice(e,1),e--);if(1===n.length)return n[0];if(i){for(let e=0;e<n.length;e++)for(let t=e+1;t<n.length;t++)N(n[e],n[t])&&(n.splice(t,1),t--);if(1===n.length)return n[0]}return new D(n,t)}}serialize(){return this.expr.map((e=>e.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 A(t))for(const t of A(i))n.push(I.create([e,t],null));const r=0===e.length;e.unshift(D.create(n,null,r))}this.negated=e[0]}return this.negated}}class T extends g{constructor(e,t,i){super(e,null),this._defaultValue=t,"object"===typeof i?T._info.push(Object.assign(Object.assign({},i),{key:e})):!0!==i&&T._info.push({key:e,description:i,type:null!==t&&void 0!==t?typeof t:void 0})}static all(){return T._info.values()}bindTo(e){return e.createKey(this.key,this._defaultValue)}getValue(e){return e.getContextKeyValue(this.key)}toNegated(){return this.negate()}isEqualTo(e){return f.create(this.key,e)}}T._info=[];const E=(0,s.u1)("contextKeyService"),O="setContext";function M(e,t){return e<t?-1:e>t?1:0}function B(e,t,i,n){return e<i?-1:e>i?1:t<n?-1:t>n?1:0}function N(e,t){if(6===t.type&&9!==e.type&&6!==e.type)for(const n of t.expr)if(e.equals(n))return!0;const i=A(e.negate()).concat(A(t));i.sort(c);for(let n=0;n<i.length;n++){const e=i[n].negate();for(let t=n+1;t<i.length;t++){const n=i[t];if(e.equals(n))return!0}}return!1}function A(e){return 9===e.type?e.expr:[e]}},64024:(e,t,i)=>{i.d(t,{aV:()=>a,nd:()=>o});var n=i(55977),r=i(35819),s=i(21181);new s.N1("isMac",n.zx,(0,r.kg)("isMac","Whether the operating system is macOS")),new s.N1("isLinux",n.j9,(0,r.kg)("isLinux","Whether the operating system is Linux"));const o=new s.N1("isWindows",n.uF,(0,r.kg)("isWindows","Whether the operating system is Windows")),a=(new s.N1("isWeb",n.HZ,(0,r.kg)("isWeb","Whether the platform is a web browser")),new s.N1("isMacNative",n.zx&&!n.HZ,(0,r.kg)("isMacNative","Whether the operating system is macOS on a non-browser platform")),new s.N1("isIOS",n.un,(0,r.kg)("isIOS","Whether the operating system is iOS")),new s.N1("isDevelopment",!1,!0),new s.N1("productQualityType","",(0,r.kg)("productQualityType","Quality type of VS Code")),"inputFocus");new s.N1(a,!1,(0,r.kg)("inputFocus","Whether keyboard focus is inside an input box"))},4235:(e,t,i)=>{i.d(t,{K:()=>b});var n=i(90491),r=i(42464),s=i(55808),o=i(47925),a=i(74349),l=i(45769),h=i(16974),c=i(24997),u=i(65085),d=i(56495),g=i(75909),f=i(46255);class p{constructor(e,t,i,n,r){this.contextViewService=e,this.telemetryService=t,this.notificationService=i,this.keybindingService=n,this.themeService=r,this.focusToReturn=null,this.block=null,this.options={blockMouse:!0}}configure(e){this.options=e}showContextMenu(e){const t=e.getActions();if(!t.length)return;let i;this.focusToReturn=document.activeElement;const r=(0,n.sb)(e.domForShadowRoot)?e.domForShadowRoot:void 0;this.contextViewService.showContextView({getAnchor:()=>e.getAnchor(),canRelayout:!1,anchorAlignment:e.anchorAlignment,anchorAxisAlignment:e.anchorAxisAlignment,render:r=>{const o=e.getMenuClassName?e.getMenuClassName():"";o&&(r.className+=" "+o),this.options.blockMouse&&(this.block=r.appendChild((0,n.$)(".context-view-block")),this.block.style.position="fixed",this.block.style.cursor="initial",this.block.style.left="0",this.block.style.top="0",this.block.style.width="100%",this.block.style.height="100%",this.block.style.zIndex="-1",(0,n.ko)(this.block,n.Bx.MOUSE_DOWN,(e=>e.stopPropagation())));const a=new s.Cm,l=e.actionRunner||new d.LN;return l.onBeforeRun(this.onActionRun,this,a),l.onDidRun(this.onDidActionRun,this,a),i=new u.W1(r,t,{actionViewItemProvider:e.getActionViewItem,context:e.getActionsContext?e.getActionsContext():null,actionRunner:l,getKeyBinding:e.getKeyBinding?e.getKeyBinding:e=>this.keybindingService.lookupKeybinding(e.id)}),a.add((0,f.kg)(i,this.themeService)),i.onDidCancel((()=>this.contextViewService.hideContextView(!0)),null,a),i.onDidBlur((()=>this.contextViewService.hideContextView(!0)),null,a),a.add((0,n.ko)(window,n.Bx.BLUR,(()=>this.contextViewService.hideContextView(!0)))),a.add((0,n.ko)(window,n.Bx.MOUSE_DOWN,(e=>{if(e.defaultPrevented)return;const t=new c.P(e);let i=t.target;if(!t.rightButton){for(;i;){if(i===r)return;i=i.parentElement}this.contextViewService.hideContextView(!0)}}))),(0,s.qE)(a,i)},focus:()=>{null===i||void 0===i||i.focus(!!e.autoSelectFirstItem)},onHide:t=>{var i;null===(i=e.onHide)||void 0===i||i.call(e,!!t),this.block&&(this.block.remove(),this.block=null),this.focusToReturn&&this.focusToReturn.focus()}},r,!!r)}onActionRun(e){this.telemetryService.publicLog2("workbenchActionExecuted",{id:e.action.id,from:"contextMenu"}),this.contextViewService.hideContextView(!1),this.focusToReturn&&this.focusToReturn.focus()}onDidActionRun(e){e.error&&!(0,g.MB)(e.error)&&this.notificationService.error(e.error)}}var m=i(95166),k=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},_=function(e,t){return function(i,n){t(i,n,e)}};let b=class extends s.jG{constructor(e,t,i,n,s){super(),this._onDidShowContextMenu=new r.vl,this._onDidHideContextMenu=new r.vl,this.contextMenuHandler=new p(i,e,t,n,s)}configure(e){this.contextMenuHandler.configure(e)}showContextMenu(e){this.contextMenuHandler.showContextMenu(Object.assign(Object.assign({},e),{onHide:t=>{var i;null===(i=e.onHide)||void 0===i||i.call(e,t),this._onDidHideContextMenu.fire()}})),n.Di.getInstance().resetKeyStatus(),this._onDidShowContextMenu.fire()}};b=k([_(0,l.k),_(1,a.Ot),_(2,m.l),_(3,o.b),_(4,h.Gy)],b)},95166:(e,t,i)=>{i.d(t,{Z:()=>s,l:()=>r});var n=i(34029);const r=(0,n.u1)("contextViewService"),s=(0,n.u1)("contextMenuService")},64355:(e,t,i)=>{i.d(t,{Y:()=>l});var n=i(91043),r=i(55808),s=i(8547),o=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},a=function(e,t){return function(i,n){t(i,n,e)}};let l=class extends r.jG{constructor(e){super(),this.layoutService=e,this.currentViewDisposable=r.jG.None,this.container=e.hasContainer?e.container:null,this.contextView=this._register(new n.vx(this.container,1)),this.layout(),this._register(e.onDidLayout((()=>this.layout())))}setContainer(e,t){this.contextView.setContainer(e,t||1)}showContextView(e,t,i){t?t!==this.container&&(this.container=t,this.setContainer(t,i?3:2)):this.layoutService.hasContainer&&this.container!==this.layoutService.container&&(this.container=this.layoutService.container,this.setContainer(this.container,1)),this.contextView.show(e);const n=(0,r.s)((()=>{this.currentViewDisposable===n&&this.hideContextView()}));return this.currentViewDisposable=n,n}getContextViewElement(){return this.contextView.getViewElement()}layout(){this.contextView.layout()}hideContextView(e){this.contextView.hide(e)}};l=o([a(0,s.x)],l)},90301:(e,t,i)=>{i.d(t,{X:()=>n});const n=(0,i(34029).u1)("dialogService")},96810:(e,t,i)=>{i.d(t,{d:()=>n});class n{constructor(e,t=[],i=!1){this.ctor=e,this.staticArguments=t,this.supportsDelayedInstantiation=i}}},62848:(e,t,i)=>{i.d(t,{N:()=>o,v:()=>s});var n=i(96810);const r=[];function s(e,t,i){t instanceof n.d||(t=new n.d(t,[],i)),r.push([e,t])}function o(){return r}},96621:(e,t,i)=>{i.d(t,{n:()=>u});var n=i(20512),r=i(75909),s=i(96810);class o{constructor(e){this.incoming=new Map,this.outgoing=new Map,this.data=e}}class a{constructor(e){this._hashFn=e,this._nodes=new Map}roots(){const e=[];for(const t of this._nodes.values())0===t.outgoing.size&&e.push(t);return e}insertEdge(e,t){const i=this.lookupOrInsertNode(e),n=this.lookupOrInsertNode(t);i.outgoing.set(this._hashFn(t),n),n.incoming.set(this._hashFn(e),i)}removeNode(e){const t=this._hashFn(e);this._nodes.delete(t);for(const i of this._nodes.values())i.outgoing.delete(t),i.incoming.delete(t)}lookupOrInsertNode(e){const t=this._hashFn(e);let i=this._nodes.get(t);return i||(i=new o(e),this._nodes.set(t,i)),i}isEmpty(){return 0===this._nodes.size}toString(){const e=[];for(const[t,i]of this._nodes)e.push(`${t}, (incoming)[${[...i.incoming.keys()].join(", ")}], (outgoing)[${[...i.outgoing.keys()].join(",")}]`);return e.join("\n")}findCycleSlow(){for(const[e,t]of this._nodes){const i=new Set([e]),n=this._findCycle(t,i);if(n)return n}}_findCycle(e,t){for(const[i,n]of e.outgoing){if(t.has(i))return[...t,i].join(" -> ");t.add(i);const e=this._findCycle(n,t);if(e)return e;t.delete(i)}}}var l=i(34029),h=i(7087);class c extends Error{constructor(e){var t;super("cyclic dependency between services"),this.message=null!==(t=e.findCycleSlow())&&void 0!==t?t:`UNABLE to detect cycle, dumping graph: \n${e.toString()}`}}class u{constructor(e=new h.a,t=!1,i){this._activeInstantiations=new Set,this._services=e,this._strict=t,this._parent=i,this._services.set(l._Y,this)}createChild(e){return new u(e,this._strict,this)}invokeFunction(e,...t){const i=d.traceInvocation(e);let n=!1;try{return e({get:e=>{if(n)throw(0,r.iH)("service accessor is only valid during the invocation of its target method");const t=this._getOrCreateServiceInstance(e,i);if(!t)throw new Error(`[invokeFunction] unknown service '${e}'`);return t}},...t)}finally{n=!0,i.stop()}}createInstance(e,...t){let i,n;return e instanceof s.d?(i=d.traceCreation(e.ctor),n=this._createInstance(e.ctor,e.staticArguments.concat(t),i)):(i=d.traceCreation(e),n=this._createInstance(e,t,i)),i.stop(),n}_createInstance(e,t=[],i){const n=l._$.getServiceDependencies(e).sort(((e,t)=>e.index-t.index)),r=[];for(const o of n){const t=this._getOrCreateServiceInstance(o.id,i);t||this._throwIfStrict(`[createInstance] ${e.name} depends on UNKNOWN service ${o.id}.`,!1),r.push(t)}const s=n.length>0?n[0].index:t.length;if(t.length!==s){const e=s-t.length;t=e>0?t.concat(new Array(e)):t.slice(0,s)}return new e(...[...t,...r])}_setServiceInstance(e,t){if(this._services.get(e)instanceof s.d)this._services.set(e,t);else{if(!this._parent)throw new Error("illegalState - setting UNKNOWN service instance");this._parent._setServiceInstance(e,t)}}_getServiceInstanceOrDescriptor(e){const t=this._services.get(e);return!t&&this._parent?this._parent._getServiceInstanceOrDescriptor(e):t}_getOrCreateServiceInstance(e,t){const i=this._getServiceInstanceOrDescriptor(e);return i instanceof s.d?this._safeCreateAndCacheServiceInstance(e,i,t.branch(e,!0)):(t.branch(e,!1),i)}_safeCreateAndCacheServiceInstance(e,t,i){if(this._activeInstantiations.has(e))throw new Error(`illegal state - RECURSIVELY instantiating service '${e}'`);this._activeInstantiations.add(e);try{return this._createAndCacheServiceInstance(e,t,i)}finally{this._activeInstantiations.delete(e)}}_createAndCacheServiceInstance(e,t,i){const n=new a((e=>e.id.toString()));let r=0;const o=[{id:e,desc:t,_trace:i}];for(;o.length;){const t=o.pop();if(n.lookupOrInsertNode(t),r++>1e3)throw new c(n);for(const i of l._$.getServiceDependencies(t.desc.ctor)){const r=this._getServiceInstanceOrDescriptor(i.id);if(r||this._throwIfStrict(`[createInstance] ${e} depends on ${i.id} which is NOT registered.`,!0),r instanceof s.d){const e={id:i.id,desc:r,_trace:t._trace.branch(i.id,!0)};n.insertEdge(t,e),o.push(e)}}}for(;;){const e=n.roots();if(0===e.length){if(!n.isEmpty())throw new c(n);break}for(const{data:t}of e){if(this._getServiceInstanceOrDescriptor(t.id)instanceof s.d){const e=this._createServiceInstanceWithOwner(t.id,t.desc.ctor,t.desc.staticArguments,t.desc.supportsDelayedInstantiation,t._trace);this._setServiceInstance(t.id,e)}n.removeNode(t)}}return this._getServiceInstanceOrDescriptor(e)}_createServiceInstanceWithOwner(e,t,i=[],n,r){if(this._services.get(e)instanceof s.d)return this._createServiceInstance(t,i,n,r);if(this._parent)return this._parent._createServiceInstanceWithOwner(e,t,i,n,r);throw new Error(`illegalState - creating UNKNOWN service instance ${t.name}`)}_createServiceInstance(e,t=[],i,r){if(i){const i=new n.kb((()=>this._createInstance(e,t,r)));return new Proxy(Object.create(null),{get(e,t){if(t in e)return e[t];const n=i.value;let r=n[t];return"function"!==typeof r||(r=r.bind(n),e[t]=r),r},set:(e,t,n)=>(i.value[t]=n,!0)})}return this._createInstance(e,t,r)}_throwIfStrict(e,t){if(this._strict)throw new Error(e)}}class d{constructor(e,t){this.type=e,this.name=t,this._start=Date.now(),this._dep=[]}static traceInvocation(e){return d._None}static traceCreation(e){return d._None}branch(e,t){const i=new d(2,e.toString());return this._dep.push([e,t,i]),i}stop(){const e=Date.now()-this._start;d._totals+=e;let t=!1;this.type,this.name,function e(i,n){const r=[],s=new Array(i+1).join("\t");for(const[o,a,l]of n._dep)if(a&&l){t=!0,r.push(`${s}CREATES -> ${o}`);const n=e(i+1,l);n&&r.push(n)}else r.push(`${s}uses -> ${o}`);return r.join("\n")}(1,this),e.toFixed(2),d._totals.toFixed(2)}}d._None=new class extends d{constructor(){super(-1,null)}stop(){}branch(){return this}},d._totals=0},7087:(e,t,i)=>{i.d(t,{a:()=>n});class n{constructor(...e){this._entries=new Map;for(const[t,i]of e)this.set(t,i)}set(e,t){const i=this._entries.get(e);return this._entries.set(e,t),i}get(e){return this._entries.get(e)}}},23982:(e,t,i)=>{i.d(t,{F:()=>s});var n=i(42464),r=i(1097);const s={JSONContribution:"base.contributions.json"};const o=new class{constructor(){this._onDidChangeSchema=new n.vl,this.schemasById={}}registerSchema(e,t){var i;this.schemasById[(i=e,i.length>0&&"#"===i.charAt(i.length-1)?i.substring(0,i.length-1):i)]=t,this._onDidChangeSchema.fire(e)}notifySchemaChanged(e){this._onDidChangeSchema.fire(e)}};r.O.add(s.JSONContribution,o)},85484:(e,t,i)=>{i.d(t,{E:()=>l});var n=i(20512),r=i(42464),s=i(55808),o=i(35819);const a=/^(cursor|delete)/;class l extends s.jG{constructor(e,t,i,s,o){super(),this._contextKeyService=e,this._commandService=t,this._telemetryService=i,this._notificationService=s,this._logService=o,this._onDidUpdateKeybindings=this._register(new r.vl),this._currentChord=null,this._currentChordChecker=new n.vb,this._currentChordStatusMessage=null,this._ignoreSingleModifiers=h.EMPTY,this._currentSingleModifier=null,this._currentSingleModifierClearTimeout=new n.pc,this._logging=!1}get onDidUpdateKeybindings(){return this._onDidUpdateKeybindings?this._onDidUpdateKeybindings.event:r.Jh.None}dispose(){super.dispose()}_log(e){this._logging&&this._logService.info(`[KeybindingService]: ${e}`)}getKeybindings(){return this._getResolver().getKeybindings()}lookupKeybinding(e,t){const i=this._getResolver().lookupPrimaryKeybinding(e,t||this._contextKeyService);if(i)return i.resolvedKeybinding}dispatchEvent(e,t){return this._dispatch(e,t)}softDispatch(e,t){this._log("/ Soft dispatching keyboard event");const i=this.resolveKeyboardEvent(e);if(i.isChord())return null;const[n]=i.getDispatchParts();if(null===n)return this._log("\\ Keyboard event cannot be dispatched"),null;const r=this._contextKeyService.getContext(t),s=this._currentChord?this._currentChord.keypress:null;return this._getResolver().resolve(r,s,n)}_enterChordMode(e,t){this._currentChord={keypress:e,label:t},this._currentChordStatusMessage=this._notificationService.status(o.kg("first.chord","({0}) was pressed. Waiting for second key of chord...",t));const i=Date.now();this._currentChordChecker.cancelAndSet((()=>{this._documentHasFocus()?Date.now()-i>5e3&&this._leaveChordMode():this._leaveChordMode()}),500)}_leaveChordMode(){this._currentChordStatusMessage&&(this._currentChordStatusMessage.dispose(),this._currentChordStatusMessage=null),this._currentChordChecker.cancel(),this._currentChord=null}_dispatch(e,t){return this._doDispatch(this.resolveKeyboardEvent(e),t,!1)}_singleModifierDispatch(e,t){const i=this.resolveKeyboardEvent(e),[n]=i.getSingleModifierDispatchParts();if(n)return this._ignoreSingleModifiers.has(n)?(this._log(`+ Ignoring single modifier ${n} due to it being pressed together with other keys.`),this._ignoreSingleModifiers=h.EMPTY,this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1):(this._ignoreSingleModifiers=h.EMPTY,null===this._currentSingleModifier?(this._log(`+ Storing single modifier for possible chord ${n}.`),this._currentSingleModifier=n,this._currentSingleModifierClearTimeout.cancelAndSet((()=>{this._log("+ Clearing single modifier due to 300ms elapsed."),this._currentSingleModifier=null}),300),!1):n===this._currentSingleModifier?(this._log(`/ Dispatching single modifier chord ${n} ${n}`),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,this._doDispatch(i,t,!0)):(this._log(`+ Clearing single modifier due to modifier mismatch: ${this._currentSingleModifier} ${n}`),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1));const[r]=i.getParts();return this._ignoreSingleModifiers=new h(r),null!==this._currentSingleModifier&&this._log("+ Clearing single modifier due to other key up."),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1}_doDispatch(e,t,i=!1){let n=!1;if(e.isChord())return!1;let r=null,s=null;if(i){const[t]=e.getSingleModifierDispatchParts();r=t,s=t}else[r]=e.getDispatchParts(),s=this._currentChord?this._currentChord.keypress:null;if(null===r)return this._log("\\ Keyboard event cannot be dispatched in keydown phase."),n;const l=this._contextKeyService.getContext(t),h=e.getLabel(),c=this._getResolver().resolve(l,s,r);return this._logService.trace("KeybindingService#dispatch",h,null===c||void 0===c?void 0:c.commandId),c&&c.enterChord?(n=!0,this._enterChordMode(r,h),this._log("+ Entering chord mode..."),n):(this._currentChord&&(c&&c.commandId||(this._log(`+ Leaving chord mode: Nothing bound to "${this._currentChord.label} ${h}".`),this._notificationService.status(o.kg("missing.chord","The key combination ({0}, {1}) is not a command.",this._currentChord.label,h),{hideAfter:1e4}),n=!0)),this._leaveChordMode(),c&&c.commandId&&(c.bubble||(n=!0),this._log(`+ Invoking command ${c.commandId}.`),"undefined"===typeof c.commandArgs?this._commandService.executeCommand(c.commandId).then(void 0,(e=>this._notificationService.warn(e))):this._commandService.executeCommand(c.commandId,c.commandArgs).then(void 0,(e=>this._notificationService.warn(e))),a.test(c.commandId)||this._telemetryService.publicLog2("workbenchActionExecuted",{id:c.commandId,from:"keybinding"})),n)}mightProducePrintableCharacter(e){return!e.ctrlKey&&!e.metaKey&&(e.keyCode>=31&&e.keyCode<=56||e.keyCode>=21&&e.keyCode<=30)}}class h{constructor(e){this._ctrlKey=!!e&&e.ctrlKey,this._shiftKey=!!e&&e.shiftKey,this._altKey=!!e&&e.altKey,this._metaKey=!!e&&e.metaKey}has(e){switch(e){case"ctrl":return this._ctrlKey;case"shift":return this._shiftKey;case"alt":return this._altKey;case"meta":return this._metaKey}}}h.EMPTY=new h(null)},47925:(e,t,i)=>{i.d(t,{b:()=>n});const n=(0,i(34029).u1)("keybindingService")},28951:(e,t,i)=>{i.d(t,{f:()=>r});var n=i(21181);class r{constructor(e,t,i){this._log=i,this._defaultKeybindings=e,this._defaultBoundCommands=new Map;for(const n of e){const e=n.command;e&&"-"!==e.charAt(0)&&this._defaultBoundCommands.set(e,!0)}this._map=new Map,this._lookupMap=new Map,this._keybindings=r.handleRemovals([].concat(e).concat(t));for(let n=0,r=this._keybindings.length;n<r;n++){const e=this._keybindings[n];0!==e.keypressParts.length&&(e.when&&0===e.when.type||this._addKeyPress(e.keypressParts[0],e))}}static _isTargetedForRemoval(e,t,i,r){if(t&&e.keypressParts[0]!==t)return!1;if(i&&e.keypressParts[1]!==i)return!1;if(r){if(!e.when)return!1;if(!(0,n.jQ)(r,e.when))return!1}return!0}static handleRemovals(e){const t=new Map;for(let n=0,r=e.length;n<r;n++){const i=e[n];if(i.command&&"-"===i.command.charAt(0)){const e=i.command.substring(1);t.has(e)?t.get(e).push(i):t.set(e,[i])}}if(0===t.size)return e;const i=[];for(let n=0,r=e.length;n<r;n++){const r=e[n];if(!r.command||0===r.command.length){i.push(r);continue}if("-"===r.command.charAt(0))continue;const s=t.get(r.command);if(!s||!r.isDefault){i.push(r);continue}let o=!1;for(const e of s){const t=e.keypressParts[0],i=e.keypressParts[1],n=e.when;if(this._isTargetedForRemoval(r,t,i,n)){o=!0;break}}o||i.push(r)}return i}_addKeyPress(e,t){const i=this._map.get(e);if("undefined"===typeof i)return this._map.set(e,[t]),void this._addToLookupMap(t);for(let n=i.length-1;n>=0;n--){const e=i[n];if(e.command===t.command)continue;const s=e.keypressParts.length>1,o=t.keypressParts.length>1;s&&o&&e.keypressParts[1]!==t.keypressParts[1]||r.whenIsEntirelyIncluded(e.when,t.when)&&this._removeFromLookupMap(e)}i.push(t),this._addToLookupMap(t)}_addToLookupMap(e){if(!e.command)return;let t=this._lookupMap.get(e.command);"undefined"===typeof t?(t=[e],this._lookupMap.set(e.command,t)):t.push(e)}_removeFromLookupMap(e){if(!e.command)return;const t=this._lookupMap.get(e.command);if("undefined"!==typeof t)for(let i=0,n=t.length;i<n;i++)if(t[i]===e)return void t.splice(i,1)}static whenIsEntirelyIncluded(e,t){return!t||1===t.type||!(!e||1===e.type)&&(0,n.M0)(e,t)}getKeybindings(){return this._keybindings}lookupPrimaryKeybinding(e,t){const i=this._lookupMap.get(e);if("undefined"===typeof i||0===i.length)return null;if(1===i.length)return i[0];for(let n=i.length-1;n>=0;n--){const e=i[n];if(t.contextMatchesRules(e.when))return e}return i[i.length-1]}resolve(e,t,i){this._log(`| Resolving ${i}${t?` chorded from ${t}`:""}`);let n=null;if(null!==t){const e=this._map.get(t);if("undefined"===typeof e)return this._log("\\ No keybinding entries."),null;n=[];for(let t=0,r=e.length;t<r;t++){const r=e[t];r.keypressParts[1]===i&&n.push(r)}}else{const e=this._map.get(i);if("undefined"===typeof e)return this._log("\\ No keybinding entries."),null;n=e}const r=this._findCommand(e,n);return r?null===t&&r.keypressParts.length>1&&null!==r.keypressParts[1]?(this._log(`\\ From ${n.length} keybinding entries, matched chord, when: ${s(r.when)}, source: ${o(r)}.`),{enterChord:!0,leaveChord:!1,commandId:null,commandArgs:null,bubble:!1}):(this._log(`\\ From ${n.length} keybinding entries, matched ${r.command}, when: ${s(r.when)}, source: ${o(r)}.`),{enterChord:!1,leaveChord:r.keypressParts.length>1,commandId:r.command,commandArgs:r.commandArgs,bubble:r.bubble}):(this._log(`\\ From ${n.length} keybinding entries, no when clauses matched the context.`),null)}_findCommand(e,t){for(let i=t.length-1;i>=0;i--){const n=t[i];if(r._contextMatchesRules(e,n.when))return n}return null}static _contextMatchesRules(e,t){return!t||t.evaluate(e)}}function s(e){return e?`${e.serialize()}`:"no when condition"}function o(e){return e.extensionId?e.isBuiltinExtension?`built-in extension ${e.extensionId}`:`user extension ${e.extensionId}`:e.isDefault?"built-in":"user"}},11563:(e,t,i)=>{i.d(t,{f:()=>l});var n=i(31401),r=i(55977),s=i(16281),o=i(1097);class a{constructor(){this._coreKeybindings=[],this._extensionKeybindings=[],this._cachedMergedKeybindings=null}static bindToCurrentPlatform(e){if(1===r.OS){if(e&&e.win)return e.win}else if(2===r.OS){if(e&&e.mac)return e.mac}else if(e&&e.linux)return e.linux;return e}registerKeybindingRule(e){const t=a.bindToCurrentPlatform(e);if(t&&t.primary){const i=(0,n.ZU)(t.primary,r.OS);i&&this._registerDefaultKeybinding(i,e.id,e.args,e.weight,0,e.when)}if(t&&Array.isArray(t.secondary))for(let i=0,s=t.secondary.length;i<s;i++){const s=t.secondary[i],o=(0,n.ZU)(s,r.OS);o&&this._registerDefaultKeybinding(o,e.id,e.args,e.weight,-i-1,e.when)}}registerCommandAndKeybindingRule(e){this.registerKeybindingRule(e),s.wb.registerCommand(e)}static _mightProduceChar(e){return e>=21&&e<=30||(e>=31&&e<=56||(80===e||81===e||82===e||83===e||84===e||85===e||86===e||110===e||111===e||87===e||88===e||89===e||90===e||91===e||92===e))}_assertNoCtrlAlt(e,t){e.ctrlKey&&e.altKey&&!e.metaKey&&a._mightProduceChar(e.keyCode)}_registerDefaultKeybinding(e,t,i,n,s,o){1===r.OS&&this._assertNoCtrlAlt(e.parts[0],t),this._coreKeybindings.push({keybinding:e.parts,command:t,commandArgs:i,when:o,weight1:n,weight2:s,extensionId:null,isBuiltinExtension:!1}),this._cachedMergedKeybindings=null}getDefaultKeybindings(){return this._cachedMergedKeybindings||(this._cachedMergedKeybindings=[].concat(this._coreKeybindings).concat(this._extensionKeybindings),this._cachedMergedKeybindings.sort(h)),this._cachedMergedKeybindings.slice(0)}}const l=new a;function h(e,t){return e.weight1!==t.weight1?e.weight1-t.weight1:e.command<t.command?-1:e.command>t.command?1:e.weight2-t.weight2}o.O.add("platform.keybindingsRegistry",l)},80858:(e,t,i)=>{i.d(t,{K:()=>r,u:()=>n});class n{constructor(e,t,i,n,s,o,a){this._resolvedKeybindingItemBrand=void 0,this.resolvedKeybinding=e,this.keypressParts=e?r(e.getDispatchParts()):[],e&&0===this.keypressParts.length&&(this.keypressParts=r(e.getSingleModifierDispatchParts())),this.bubble=!!t&&94===t.charCodeAt(0),this.command=this.bubble?t.substr(1):t,this.commandArgs=i,this.when=n,this.isDefault=s,this.extensionId=o,this.isBuiltinExtension=a}}function r(e){const t=[];for(let i=0,n=e.length;i<n;i++){const n=e[i];if(!n)return t;t.push(n)}return t}},65491:(e,t,i)=>{i.d(t,{j:()=>h});var n=i(45325),r=i(31401),s=i(75909),o=i(40513);class a extends r.z5{constructor(e,t){if(super(),0===t.length)throw(0,s.Qg)("parts");this._os=e,this._parts=t}getLabel(){return o.Of.toLabel(this._os,this._parts,(e=>this._getLabel(e)))}getAriaLabel(){return o.r0.toLabel(this._os,this._parts,(e=>this._getAriaLabel(e)))}getElectronAccelerator(){return this._parts.length>1||this._parts[0].isDuplicateModifierCase()?null:o.rr.toLabel(this._os,this._parts,(e=>this._getElectronAccelerator(e)))}isChord(){return this._parts.length>1}getParts(){return this._parts.map((e=>this._getPart(e)))}_getPart(e){return new r.QB(e.ctrlKey,e.shiftKey,e.altKey,e.metaKey,this._getLabel(e),this._getAriaLabel(e))}getDispatchParts(){return this._parts.map((e=>this._getDispatchPart(e)))}getSingleModifierDispatchParts(){return this._parts.map((e=>this._getSingleModifierDispatchPart(e)))}}var l=i(80858);class h extends a{constructor(e,t){super(t,e.parts)}_keyCodeToUILabel(e){if(2===this._os)switch(e){case 15:return"\u2190";case 16:return"\u2191";case 17:return"\u2192";case 18:return"\u2193"}return n.YM.toString(e)}_getLabel(e){return e.isDuplicateModifierCase()?"":this._keyCodeToUILabel(e.keyCode)}_getAriaLabel(e){return e.isDuplicateModifierCase()?"":n.YM.toString(e.keyCode)}_getElectronAccelerator(e){return n.YM.toElectronAccelerator(e.keyCode)}_getDispatchPart(e){return h.getDispatchStr(e)}static getDispatchStr(e){if(e.isModifierKey())return null;let t="";return e.ctrlKey&&(t+="ctrl+"),e.shiftKey&&(t+="shift+"),e.altKey&&(t+="alt+"),e.metaKey&&(t+="meta+"),t+=n.YM.toString(e.keyCode),t}_getSingleModifierDispatchPart(e){return 5!==e.keyCode||e.shiftKey||e.altKey||e.metaKey?4!==e.keyCode||e.ctrlKey||e.altKey||e.metaKey?6!==e.keyCode||e.ctrlKey||e.shiftKey||e.metaKey?57!==e.keyCode||e.ctrlKey||e.shiftKey||e.altKey?null:"meta":"alt":"shift":"ctrl"}static _scanCodeToKeyCode(e){const t=n.Fo[e];if(-1!==t)return t;switch(e){case 10:return 31;case 11:return 32;case 12:return 33;case 13:return 34;case 14:return 35;case 15:return 36;case 16:return 37;case 17:return 38;case 18:return 39;case 19:return 40;case 20:return 41;case 21:return 42;case 22:return 43;case 23:return 44;case 24:return 45;case 25:return 46;case 26:return 47;case 27:return 48;case 28:return 49;case 29:return 50;case 30:return 51;case 31:return 52;case 32:return 53;case 33:return 54;case 34:return 55;case 35:return 56;case 36:return 22;case 37:return 23;case 38:return 24;case 39:return 25;case 40:return 26;case 41:return 27;case 42:return 28;case 43:return 29;case 44:return 30;case 45:return 21;case 51:return 83;case 52:return 81;case 53:return 87;case 54:return 89;case 55:return 88;case 56:return 0;case 57:return 80;case 58:return 90;case 59:return 86;case 60:return 82;case 61:return 84;case 62:return 85;case 106:return 92}return 0}static _resolveSimpleUserBinding(e){if(!e)return null;if(e instanceof r.h$)return e;const t=this._scanCodeToKeyCode(e.scanCode);return 0===t?null:new r.h$(e.ctrlKey,e.shiftKey,e.altKey,e.metaKey,t)}static resolveUserBinding(e,t){const i=(0,l.K)(e.map((e=>this._resolveSimpleUserBinding(e))));return i.length>0?[new h(new r.p(i),t)]:[]}}},70679:(e,t,i)=>{i.d(t,{L:()=>n});const n=(0,i(34029).u1)("labelService")},8547:(e,t,i)=>{i.d(t,{x:()=>n});const n=(0,i(34029).u1)("layoutService")},22407:(e,t,i)=>{i.d(t,{Ei:()=>ne,Nf:()=>A,PE:()=>x,YD:()=>E,aG:()=>I,cH:()=>R,er:()=>fe});var n=i(90491),r=i(53027),s=i(89232),o=i(21738),a=i(17421),l=i(58767),h=i(42603),c=i(9203),u=i(42464),d=i(55808),g=i(35819),f=i(58471),p=i(11332),m=i(21181),k=i(64024),_=i(95166),b=i(34029),C=i(47925),v=i(1097),y=i(46255),w=i(16974),S=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},L=function(e,t){return function(i,n){t(i,n,e)}};const x=(0,b.u1)("listService");let I=class{constructor(e){this._themeService=e,this.disposables=new d.Cm,this.lists=[],this._lastFocusedWidget=void 0,this._hasCreatedStyleController=!1}get lastFocusedList(){return this._lastFocusedWidget}setLastFocusedList(e){var t,i;e!==this._lastFocusedWidget&&(null===(t=this._lastFocusedWidget)||void 0===t||t.getHTMLElement().classList.remove("last-focused"),this._lastFocusedWidget=e,null===(i=this._lastFocusedWidget)||void 0===i||i.getHTMLElement().classList.add("last-focused"))}register(e,t){if(!this._hasCreatedStyleController){this._hasCreatedStyleController=!0;const e=new s.hb((0,n.li)(),"");this.disposables.add((0,y.DD)(e,this._themeService))}if(this.lists.some((t=>t.widget===e)))throw new Error("Cannot register the same widget multiple times");const i={widget:e,extraContextKeys:t};return this.lists.push(i),e.getHTMLElement()===document.activeElement&&this.setLastFocusedList(e),(0,d.qE)(e.onDidFocus((()=>this.setLastFocusedList(e))),(0,d.s)((()=>this.lists.splice(this.lists.indexOf(i),1))),e.onDidDispose((()=>{this.lists=this.lists.filter((e=>e!==i)),this._lastFocusedWidget===e&&this.setLastFocusedList(void 0)})))}dispose(){this.disposables.dispose()}};I=S([L(0,w.Gy)],I);const D=new m.N1("listFocus",!0),T=new m.N1("listSupportsMultiselect",!0),E=m.M$.and(D,m.M$.not(k.aV)),O=new m.N1("listHasSelectionOrFocus",!1),M=new m.N1("listDoubleSelection",!1),B=new m.N1("listMultiSelection",!1),N=new m.N1("listSelectionNavigation",!1),A=new m.N1("treeElementCanCollapse",!1),F=new m.N1("treeElementHasParent",!1),R=new m.N1("treeElementCanExpand",!1),P=new m.N1("treeElementHasChild",!1),z=new m.N1("treeFindOpen",!1),W="listTypeNavigationMode",V="listAutomaticKeyboardNavigation";function H(e,t){const i=e.createScoped(t.getHTMLElement());return D.bindTo(i),i}const U="workbench.list.multiSelectModifier",j="workbench.list.openMode",K="workbench.list.horizontalScrolling",q="workbench.list.defaultFindMode",G="workbench.list.keyboardNavigation",$="workbench.tree.indent",Q="workbench.tree.renderIndentGuides",Y="workbench.list.smoothScrolling",X="workbench.list.mouseWheelScrollSensitivity",Z="workbench.list.fastScrollSensitivity",J="workbench.tree.expandMode";function ee(e){return"alt"===e.getValue(U)}class te extends d.jG{constructor(e){super(),this.configurationService=e,this.useAltAsMultipleSelectionModifier=ee(e),this.registerListeners()}registerListeners(){this._register(this.configurationService.onDidChangeConfiguration((e=>{e.affectsConfiguration(U)&&(this.useAltAsMultipleSelectionModifier=ee(this.configurationService))})))}isSelectionSingleChangeEvent(e){return this.useAltAsMultipleSelectionModifier?e.browserEvent.altKey:(0,s.tX)(e)}isSelectionRangeChangeEvent(e){return(0,s.mh)(e)}}function ie(e,t,i){var n;const r=e.get(f.pG),s=e.get(C.b),o=new d.Cm;return[Object.assign(Object.assign({},i),{keyboardNavigationDelegate:{mightProducePrintableCharacter:e=>s.mightProducePrintableCharacter(e)},smoothScrolling:Boolean(r.getValue(Y)),mouseWheelScrollSensitivity:r.getValue(X),fastScrollSensitivity:r.getValue(Z),multipleSelectionController:null!==(n=i.multipleSelectionController)&&void 0!==n?n:o.add(new te(r)),keyboardNavigationEventFilter:ce(t,s)}),o]}let ne=class extends s.B8{constructor(e,t,i,n,r,s,o,a,l,h){const c="undefined"!==typeof r.horizontalScrolling?r.horizontalScrolling:Boolean(l.getValue(K)),[u,d]=h.invokeFunction(ie,t,r);super(e,t,i,n,Object.assign(Object.assign(Object.assign({keyboardSupport:!1},(0,y.KC)(a.getColorTheme(),y.IN)),u),{horizontalScrolling:c})),this.disposables.add(d),this.contextKeyService=H(s,this),this.themeService=a,this.listSupportsMultiSelect=T.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(!1!==r.multipleSelectionSupport);N.bindTo(this.contextKeyService).set(Boolean(r.selectionNavigation)),this.listHasSelectionOrFocus=O.bindTo(this.contextKeyService),this.listDoubleSelection=M.bindTo(this.contextKeyService),this.listMultiSelection=B.bindTo(this.contextKeyService),this.horizontalScrolling=r.horizontalScrolling,this._useAltAsMultipleSelectionModifier=ee(l),this.disposables.add(this.contextKeyService),this.disposables.add(o.register(this)),r.overrideStyles&&this.updateStyles(r.overrideStyles),this.disposables.add(this.onDidChangeSelection((()=>{const e=this.getSelection(),t=this.getFocus();this.contextKeyService.bufferChangeEvents((()=>{this.listHasSelectionOrFocus.set(e.length>0||t.length>0),this.listMultiSelection.set(e.length>1),this.listDoubleSelection.set(2===e.length)}))}))),this.disposables.add(this.onDidChangeFocus((()=>{const e=this.getSelection(),t=this.getFocus();this.listHasSelectionOrFocus.set(e.length>0||t.length>0)}))),this.disposables.add(l.onDidChangeConfiguration((e=>{e.affectsConfiguration(U)&&(this._useAltAsMultipleSelectionModifier=ee(l));let t={};if(e.affectsConfiguration(K)&&void 0===this.horizontalScrolling){const e=Boolean(l.getValue(K));t=Object.assign(Object.assign({},t),{horizontalScrolling:e})}if(e.affectsConfiguration(Y)){const e=Boolean(l.getValue(Y));t=Object.assign(Object.assign({},t),{smoothScrolling:e})}if(e.affectsConfiguration(X)){const e=l.getValue(X);t=Object.assign(Object.assign({},t),{mouseWheelScrollSensitivity:e})}if(e.affectsConfiguration(Z)){const e=l.getValue(Z);t=Object.assign(Object.assign({},t),{fastScrollSensitivity:e})}Object.keys(t).length>0&&this.updateOptions(t)}))),this.navigator=new ae(this,Object.assign({configurationService:l},r)),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles&&this.updateStyles(e.overrideStyles),void 0!==e.multipleSelectionSupport&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){var t;null===(t=this._styler)||void 0===t||t.dispose(),this._styler=(0,y.DD)(this,this.themeService,e)}dispose(){var e;null===(e=this._styler)||void 0===e||e.dispose(),super.dispose()}};ne=S([L(5,m.fN),L(6,x),L(7,w.Gy),L(8,f.pG),L(9,b._Y)],ne);let re=class extends r.Y{constructor(e,t,i,n,r,s,o,a,l,h){const c="undefined"!==typeof r.horizontalScrolling?r.horizontalScrolling:Boolean(l.getValue(K)),[u,g]=h.invokeFunction(ie,t,r);super(e,t,i,n,Object.assign(Object.assign(Object.assign({keyboardSupport:!1},(0,y.KC)(a.getColorTheme(),y.IN)),u),{horizontalScrolling:c})),this.disposables=new d.Cm,this.disposables.add(g),this.contextKeyService=H(s,this),this.themeService=a,this.horizontalScrolling=r.horizontalScrolling,this.listSupportsMultiSelect=T.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(!1!==r.multipleSelectionSupport);N.bindTo(this.contextKeyService).set(Boolean(r.selectionNavigation)),this._useAltAsMultipleSelectionModifier=ee(l),this.disposables.add(this.contextKeyService),this.disposables.add(o.register(this)),r.overrideStyles&&this.updateStyles(r.overrideStyles),r.overrideStyles&&this.disposables.add((0,y.DD)(this,a,r.overrideStyles)),this.disposables.add(l.onDidChangeConfiguration((e=>{e.affectsConfiguration(U)&&(this._useAltAsMultipleSelectionModifier=ee(l));let t={};if(e.affectsConfiguration(K)&&void 0===this.horizontalScrolling){const e=Boolean(l.getValue(K));t=Object.assign(Object.assign({},t),{horizontalScrolling:e})}if(e.affectsConfiguration(Y)){const e=Boolean(l.getValue(Y));t=Object.assign(Object.assign({},t),{smoothScrolling:e})}if(e.affectsConfiguration(X)){const e=l.getValue(X);t=Object.assign(Object.assign({},t),{mouseWheelScrollSensitivity:e})}if(e.affectsConfiguration(Z)){const e=l.getValue(Z);t=Object.assign(Object.assign({},t),{fastScrollSensitivity:e})}Object.keys(t).length>0&&this.updateOptions(t)}))),this.navigator=new ae(this,Object.assign({configurationService:l},r)),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles&&this.updateStyles(e.overrideStyles),void 0!==e.multipleSelectionSupport&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){var t;null===(t=this._styler)||void 0===t||t.dispose(),this._styler=(0,y.DD)(this,this.themeService,e)}dispose(){var e;null===(e=this._styler)||void 0===e||e.dispose(),this.disposables.dispose(),super.dispose()}};re=S([L(5,m.fN),L(6,x),L(7,w.Gy),L(8,f.pG),L(9,b._Y)],re);let se=class extends o.X{constructor(e,t,i,n,r,s,o,a,l,h,c){const u="undefined"!==typeof s.horizontalScrolling?s.horizontalScrolling:Boolean(h.getValue(K)),[d,g]=c.invokeFunction(ie,t,s);super(e,t,i,n,r,Object.assign(Object.assign(Object.assign({keyboardSupport:!1},(0,y.KC)(l.getColorTheme(),y.IN)),d),{horizontalScrolling:u})),this.disposables.add(g),this.contextKeyService=H(o,this),this.themeService=l,this.listSupportsMultiSelect=T.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(!1!==s.multipleSelectionSupport);N.bindTo(this.contextKeyService).set(Boolean(s.selectionNavigation)),this.listHasSelectionOrFocus=O.bindTo(this.contextKeyService),this.listDoubleSelection=M.bindTo(this.contextKeyService),this.listMultiSelection=B.bindTo(this.contextKeyService),this.horizontalScrolling=s.horizontalScrolling,this._useAltAsMultipleSelectionModifier=ee(h),this.disposables.add(this.contextKeyService),this.disposables.add(a.register(this)),s.overrideStyles&&this.updateStyles(s.overrideStyles),this.disposables.add(this.onDidChangeSelection((()=>{const e=this.getSelection(),t=this.getFocus();this.contextKeyService.bufferChangeEvents((()=>{this.listHasSelectionOrFocus.set(e.length>0||t.length>0),this.listMultiSelection.set(e.length>1),this.listDoubleSelection.set(2===e.length)}))}))),this.disposables.add(this.onDidChangeFocus((()=>{const e=this.getSelection(),t=this.getFocus();this.listHasSelectionOrFocus.set(e.length>0||t.length>0)}))),this.disposables.add(h.onDidChangeConfiguration((e=>{e.affectsConfiguration(U)&&(this._useAltAsMultipleSelectionModifier=ee(h));let t={};if(e.affectsConfiguration(K)&&void 0===this.horizontalScrolling){const e=Boolean(h.getValue(K));t=Object.assign(Object.assign({},t),{horizontalScrolling:e})}if(e.affectsConfiguration(Y)){const e=Boolean(h.getValue(Y));t=Object.assign(Object.assign({},t),{smoothScrolling:e})}if(e.affectsConfiguration(X)){const e=h.getValue(X);t=Object.assign(Object.assign({},t),{mouseWheelScrollSensitivity:e})}if(e.affectsConfiguration(Z)){const e=h.getValue(Z);t=Object.assign(Object.assign({},t),{fastScrollSensitivity:e})}Object.keys(t).length>0&&this.updateOptions(t)}))),this.navigator=new le(this,Object.assign({configurationService:h},s)),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles&&this.updateStyles(e.overrideStyles),void 0!==e.multipleSelectionSupport&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){var t;null===(t=this._styler)||void 0===t||t.dispose(),this._styler=(0,y.DD)(this,this.themeService,e)}dispose(){var e;null===(e=this._styler)||void 0===e||e.dispose(),this.disposables.dispose(),super.dispose()}};se=S([L(6,m.fN),L(7,x),L(8,w.Gy),L(9,f.pG),L(10,b._Y)],se);class oe extends d.jG{constructor(e,t){var i;super(),this.widget=e,this._onDidOpen=this._register(new u.vl),this.onDidOpen=this._onDidOpen.event,this._register(u.Jh.filter(this.widget.onDidChangeSelection,(e=>e.browserEvent instanceof KeyboardEvent))((e=>this.onSelectionFromKeyboard(e)))),this._register(this.widget.onPointer((e=>this.onPointer(e.element,e.browserEvent)))),this._register(this.widget.onMouseDblClick((e=>this.onMouseDblClick(e.element,e.browserEvent)))),"boolean"!==typeof(null===t||void 0===t?void 0:t.openOnSingleClick)&&(null===t||void 0===t?void 0:t.configurationService)?(this.openOnSingleClick="doubleClick"!==(null===t||void 0===t?void 0:t.configurationService.getValue(j)),this._register(null===t||void 0===t?void 0:t.configurationService.onDidChangeConfiguration((()=>{this.openOnSingleClick="doubleClick"!==(null===t||void 0===t?void 0:t.configurationService.getValue(j))})))):this.openOnSingleClick=null===(i=null===t||void 0===t?void 0:t.openOnSingleClick)||void 0===i||i}onSelectionFromKeyboard(e){if(1!==e.elements.length)return;const t=e.browserEvent,i="boolean"!==typeof t.preserveFocus||t.preserveFocus,n="boolean"===typeof t.pinned?t.pinned:!i;this._open(this.getSelectedElement(),i,n,!1,e.browserEvent)}onPointer(e,t){if(!this.openOnSingleClick)return;if(2===t.detail)return;const i=1===t.button,n=t.ctrlKey||t.metaKey||t.altKey;this._open(e,!0,i,n,t)}onMouseDblClick(e,t){if(!t)return;const i=t.target;if(i.classList.contains("monaco-tl-twistie")||i.classList.contains("monaco-icon-label")&&i.classList.contains("folder-icon")&&t.offsetX<16)return;const n=t.ctrlKey||t.metaKey||t.altKey;this._open(e,!1,!0,n,t)}_open(e,t,i,n,r){e&&this._onDidOpen.fire({editorOptions:{preserveFocus:t,pinned:i,revealIfVisible:!0},sideBySide:n,element:e,browserEvent:r})}}class ae extends oe{constructor(e,t){super(e,t),this.widget=e}getSelectedElement(){return this.widget.getSelectedElements()[0]}}class le extends oe{constructor(e,t){super(e,t)}getSelectedElement(){return this.widget.getSelectedElements()[0]}}class he extends oe{constructor(e,t){super(e,t)}getSelectedElement(){var e;return null!==(e=this.widget.getSelection()[0])&&void 0!==e?e:void 0}}function ce(e,t){let i=!1;return n=>{if(n.toKeybinding().isModifierKey())return!1;if(i)return i=!1,!1;const r=t.softDispatch(n,e);return(null===r||void 0===r?void 0:r.enterChord)?(i=!0,!1):(i=!1,!r)}}let ue=class extends c.u{constructor(e,t,i,n,r,s,o,a,l,h){const{options:c,getTypeNavigationMode:u,disposable:d}=s.invokeFunction(ke,t,r);super(e,t,i,n,c),this.disposables.add(d),this.internals=new _e(this,r,u,r.overrideStyles,o,a,l,h),this.disposables.add(this.internals)}updateOptions(e){super.updateOptions(e),this.internals.updateOptions(e)}};ue=S([L(5,b._Y),L(6,m.fN),L(7,x),L(8,w.Gy),L(9,f.pG)],ue);let de=class extends c._{constructor(e,t,i,n,r,s,o,a,l,h){const{options:c,getTypeNavigationMode:u,disposable:d}=s.invokeFunction(ke,t,r);super(e,t,i,n,c),this.disposables.add(d),this.internals=new _e(this,r,u,r.overrideStyles,o,a,l,h),this.disposables.add(this.internals)}updateOptions(e={}){super.updateOptions(e),e.overrideStyles&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};de=S([L(5,b._Y),L(6,m.fN),L(7,x),L(8,w.Gy),L(9,f.pG)],de);let ge=class extends h.f{constructor(e,t,i,n,r,s,o,a,l,h,c){const{options:u,getTypeNavigationMode:d,disposable:g}=o.invokeFunction(ke,t,s);super(e,t,i,n,r,u),this.disposables.add(g),this.internals=new _e(this,s,d,s.overrideStyles,a,l,h,c),this.disposables.add(this.internals)}updateOptions(e={}){super.updateOptions(e),e.overrideStyles&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};ge=S([L(6,b._Y),L(7,m.fN),L(8,x),L(9,w.Gy),L(10,f.pG)],ge);let fe=class extends l.t{constructor(e,t,i,n,r,s,o,a,l,h,c){const{options:u,getTypeNavigationMode:d,disposable:g}=o.invokeFunction(ke,t,s);super(e,t,i,n,r,u),this.disposables.add(g),this.internals=new _e(this,s,d,s.overrideStyles,a,l,h,c),this.disposables.add(this.internals)}get onDidOpen(){return this.internals.onDidOpen}updateOptions(e={}){super.updateOptions(e),e.overrideStyles&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};fe=S([L(6,b._Y),L(7,m.fN),L(8,x),L(9,w.Gy),L(10,f.pG)],fe);let pe=class extends l.d{constructor(e,t,i,n,r,s,o,a,l,h,c,u){const{options:d,getTypeNavigationMode:g,disposable:f}=a.invokeFunction(ke,t,o);super(e,t,i,n,r,s,d),this.disposables.add(f),this.internals=new _e(this,o,g,o.overrideStyles,l,h,c,u),this.disposables.add(this.internals)}updateOptions(e){super.updateOptions(e),this.internals.updateOptions(e)}};function me(e){const t=e.getValue(q);if("highlight"===t)return a.vD.Highlight;if("filter"===t)return a.vD.Filter;const i=e.getValue(G);return"simple"===i||"highlight"===i?a.vD.Highlight:"filter"===i?a.vD.Filter:void 0}function ke(e,t,i){var n;const r=e.get(f.pG),o=e.get(C.b),a=e.get(_.l),l=e.get(m.fN),h=e.get(b._Y),c=void 0!==i.horizontalScrolling?i.horizontalScrolling:Boolean(r.getValue(K)),[u,d]=h.invokeFunction(ie,t,i),g=i.additionalScrollHeight;return{getTypeNavigationMode:()=>{const e=l.getContextKeyValue(W);if("automatic"===e)return s._C.Automatic;if("trigger"===e)return s._C.Trigger;return!1===l.getContextKeyValue(V)?s._C.Trigger:void 0},disposable:d,options:Object.assign(Object.assign({keyboardSupport:!1},u),{indent:"number"===typeof r.getValue($)?r.getValue($):void 0,renderIndentGuides:r.getValue(Q),smoothScrolling:Boolean(r.getValue(Y)),defaultFindMode:me(r),horizontalScrolling:c,keyboardNavigationEventFilter:ce(t,o),additionalScrollHeight:g,hideTwistiesOfChildlessElements:i.hideTwistiesOfChildlessElements,expandOnlyOnTwistieClick:null!==(n=i.expandOnlyOnTwistieClick)&&void 0!==n?n:"doubleClick"===r.getValue(J),contextViewProvider:a})}}pe=S([L(7,b._Y),L(8,m.fN),L(9,x),L(10,w.Gy),L(11,f.pG)],pe);let _e=class{constructor(e,t,i,n,r,s,o,a){this.tree=e,this.themeService=o,this.disposables=[],this.contextKeyService=H(r,e),this.listSupportsMultiSelect=T.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(!1!==t.multipleSelectionSupport);N.bindTo(this.contextKeyService).set(Boolean(t.selectionNavigation)),this.hasSelectionOrFocus=O.bindTo(this.contextKeyService),this.hasDoubleSelection=M.bindTo(this.contextKeyService),this.hasMultiSelection=B.bindTo(this.contextKeyService),this.treeElementCanCollapse=A.bindTo(this.contextKeyService),this.treeElementHasParent=F.bindTo(this.contextKeyService),this.treeElementCanExpand=R.bindTo(this.contextKeyService),this.treeElementHasChild=P.bindTo(this.contextKeyService),this.treeFindOpen=z.bindTo(this.contextKeyService),this._useAltAsMultipleSelectionModifier=ee(a),this.updateStyleOverrides(n);const l=()=>{const t=e.getFocus()[0];if(!t)return;const i=e.getNode(t);this.treeElementCanCollapse.set(i.collapsible&&!i.collapsed),this.treeElementHasParent.set(!!e.getParentElement(t)),this.treeElementCanExpand.set(i.collapsible&&i.collapsed),this.treeElementHasChild.set(!!e.getFirstElementChild(t))},h=new Set;h.add(W),h.add(V),this.disposables.push(this.contextKeyService,s.register(e),e.onDidChangeSelection((()=>{const t=e.getSelection(),i=e.getFocus();this.contextKeyService.bufferChangeEvents((()=>{this.hasSelectionOrFocus.set(t.length>0||i.length>0),this.hasMultiSelection.set(t.length>1),this.hasDoubleSelection.set(2===t.length)}))})),e.onDidChangeFocus((()=>{const t=e.getSelection(),i=e.getFocus();this.hasSelectionOrFocus.set(t.length>0||i.length>0),l()})),e.onDidChangeCollapseState(l),e.onDidChangeModel(l),e.onDidChangeFindOpenState((e=>this.treeFindOpen.set(e))),a.onDidChangeConfiguration((i=>{let n={};if(i.affectsConfiguration(U)&&(this._useAltAsMultipleSelectionModifier=ee(a)),i.affectsConfiguration($)){const e=a.getValue($);n=Object.assign(Object.assign({},n),{indent:e})}if(i.affectsConfiguration(Q)){const e=a.getValue(Q);n=Object.assign(Object.assign({},n),{renderIndentGuides:e})}if(i.affectsConfiguration(Y)){const e=Boolean(a.getValue(Y));n=Object.assign(Object.assign({},n),{smoothScrolling:e})}if((i.affectsConfiguration(q)||i.affectsConfiguration(G))&&e.updateOptions({defaultFindMode:me(a)}),i.affectsConfiguration(K)&&void 0===t.horizontalScrolling){const e=Boolean(a.getValue(K));n=Object.assign(Object.assign({},n),{horizontalScrolling:e})}if(i.affectsConfiguration(J)&&void 0===t.expandOnlyOnTwistieClick&&(n=Object.assign(Object.assign({},n),{expandOnlyOnTwistieClick:"doubleClick"===a.getValue(J)})),i.affectsConfiguration(X)){const e=a.getValue(X);n=Object.assign(Object.assign({},n),{mouseWheelScrollSensitivity:e})}if(i.affectsConfiguration(Z)){const e=a.getValue(Z);n=Object.assign(Object.assign({},n),{fastScrollSensitivity:e})}Object.keys(n).length>0&&e.updateOptions(n)})),this.contextKeyService.onDidChangeContext((t=>{t.affectsSome(h)&&e.updateOptions({typeNavigationMode:i()})}))),this.navigator=new he(e,Object.assign({configurationService:a},t)),this.disposables.push(this.navigator)}get onDidOpen(){return this.navigator.onDidOpen}updateOptions(e){void 0!==e.multipleSelectionSupport&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyleOverrides(e){(0,d.AS)(this.styler),this.styler=e?(0,y.DD)(this.tree,this.themeService,e):d.jG.None}dispose(){this.disposables=(0,d.AS)(this.disposables),(0,d.AS)(this.styler),this.styler=void 0}};_e=S([L(4,m.fN),L(5,x),L(6,w.Gy),L(7,f.pG)],_e);v.O.as(p.Fd.Configuration).registerConfiguration({id:"workbench",order:7,title:(0,g.kg)("workbenchConfigurationTitle","Workbench"),type:"object",properties:{[U]:{type:"string",enum:["ctrlCmd","alt"],markdownEnumDescriptions:[(0,g.kg)("multiSelectModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),(0,g.kg)("multiSelectModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],default:"ctrlCmd",description:(0,g.kg)({key:"multiSelectModifier",comment:["- `ctrlCmd` refers to a value the setting can take and should not be localized.","- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized."]},"The modifier to be used to add an item in trees and lists to a multi-selection with the mouse (for example in the explorer, open editors and scm view). The 'Open to Side' mouse gestures - if supported - will adapt such that they do not conflict with the multiselect modifier.")},[j]:{type:"string",enum:["singleClick","doubleClick"],default:"singleClick",description:(0,g.kg)({key:"openModeModifier",comment:["`singleClick` and `doubleClick` refers to a value the setting can take and should not be localized."]},"Controls how to open items in trees and lists using the mouse (if supported). Note that some trees and lists might choose to ignore this setting if it is not applicable.")},[K]:{type:"boolean",default:!1,description:(0,g.kg)("horizontalScrolling setting","Controls whether lists and trees support horizontal scrolling in the workbench. Warning: turning on this setting has a performance implication.")},[$]:{type:"number",default:8,minimum:4,maximum:40,description:(0,g.kg)("tree indent setting","Controls tree indentation in pixels.")},[Q]:{type:"string",enum:["none","onHover","always"],default:"onHover",description:(0,g.kg)("render tree indent guides","Controls whether the tree should render indent guides.")},[Y]:{type:"boolean",default:!1,description:(0,g.kg)("list smoothScrolling setting","Controls whether lists and trees have smooth scrolling.")},[X]:{type:"number",default:1,markdownDescription:(0,g.kg)("Mouse Wheel Scroll Sensitivity","A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")},[Z]:{type:"number",default:5,description:(0,g.kg)("Fast Scroll Sensitivity","Scrolling speed multiplier when pressing `Alt`.")},[q]:{type:"string",enum:["highlight","filter"],enumDescriptions:[(0,g.kg)("defaultFindModeSettingKey.highlight","Highlight elements when searching. Further up and down navigation will traverse only the highlighted elements."),(0,g.kg)("defaultFindModeSettingKey.filter","Filter elements when searching.")],default:"highlight",description:(0,g.kg)("defaultFindModeSettingKey","Controls the default find mode for lists and trees in the workbench.")},[G]:{type:"string",enum:["simple","highlight","filter"],enumDescriptions:[(0,g.kg)("keyboardNavigationSettingKey.simple","Simple keyboard navigation focuses elements which match the keyboard input. Matching is done only on prefixes."),(0,g.kg)("keyboardNavigationSettingKey.highlight","Highlight keyboard navigation highlights elements which match the keyboard input. Further up and down navigation will traverse only the highlighted elements."),(0,g.kg)("keyboardNavigationSettingKey.filter","Filter keyboard navigation will filter out and hide all the elements which do not match the keyboard input.")],default:"highlight",description:(0,g.kg)("keyboardNavigationSettingKey","Controls the keyboard navigation style for lists and trees in the workbench. Can be simple, highlight and filter."),deprecated:!0,deprecationMessage:(0,g.kg)("keyboardNavigationSettingKeyDeprecated","Please use 'workbench.list.defaultFindMode' instead.")},[J]:{type:"string",enum:["singleClick","doubleClick"],default:"singleClick",description:(0,g.kg)("expand mode","Controls how tree folders are expanded when clicking the folder names. Note that some trees and lists might choose to ignore this setting if it is not applicable.")}}})},91823:(e,t,i)=>{i.d(t,{$b:()=>o,Cr:()=>h,Kc:()=>c,rr:()=>s});var n=i(42464),r=i(55808);const s=(0,i(34029).u1)("logService");var o;!function(e){e[e.Trace=0]="Trace",e[e.Debug=1]="Debug",e[e.Info=2]="Info",e[e.Warning=3]="Warning",e[e.Error=4]="Error",e[e.Critical=5]="Critical",e[e.Off=6]="Off"}(o||(o={}));const a=o.Info;class l extends r.jG{constructor(){super(...arguments),this.level=a,this._onDidChangeLogLevel=this._register(new n.vl)}setLevel(e){this.level!==e&&(this.level=e,this._onDidChangeLogLevel.fire(this.level))}getLevel(){return this.level}}class h extends l{constructor(e=a){super(),this.setLevel(e)}trace(e,...t){this.getLevel(),o.Trace}debug(e,...t){this.getLevel(),o.Debug}info(e,...t){this.getLevel(),o.Info}error(e,...t){this.getLevel(),o.Error}dispose(){}}class c extends r.jG{constructor(e){super(),this.logger=e,this._register(e)}getLevel(){return this.logger.getLevel()}trace(e,...t){this.logger.trace(e,...t)}debug(e,...t){this.logger.debug(e,...t)}info(e,...t){this.logger.info(e,...t)}error(e,...t){this.logger.error(e,...t)}}},56247:(e,t,i)=>{i.d(t,{m:()=>d});var n=i(48640),r=i(42464),s=i(16624),o=i(14094),a=i(46442),l=i(65698),h=i(40145);class c{constructor(){this._byResource=new o.fT,this._byOwner=new Map}set(e,t,i){let n=this._byResource.get(e);n||(n=new Map,this._byResource.set(e,n)),n.set(t,i);let r=this._byOwner.get(t);r||(r=new o.fT,this._byOwner.set(t,r)),r.set(e,i)}get(e,t){const i=this._byResource.get(e);return null===i||void 0===i?void 0:i.get(t)}delete(e,t){let i=!1,n=!1;const r=this._byResource.get(e);r&&(i=r.delete(t));const s=this._byOwner.get(t);if(s&&(n=s.delete(e)),i!==n)throw new Error("illegal state");return i&&n}values(e){var t,i,n,r;return"string"===typeof e?null!==(i=null===(t=this._byOwner.get(e))||void 0===t?void 0:t.values())&&void 0!==i?i:s.f.empty():l.r.isUri(e)?null!==(r=null===(n=this._byResource.get(e))||void 0===n?void 0:n.values())&&void 0!==r?r:s.f.empty():s.f.map(s.f.concat(...this._byOwner.values()),(e=>e[1]))}}class u{constructor(e){this.errors=0,this.infos=0,this.warnings=0,this.unknowns=0,this._data=new o.fT,this._service=e,this._subscription=e.onMarkerChanged(this._update,this)}dispose(){this._subscription.dispose()}_update(e){for(const t of e){const e=this._data.get(t);e&&this._substract(e);const i=this._resourceStats(t);this._add(i),this._data.set(t,i)}}_resourceStats(e){const t={errors:0,warnings:0,infos:0,unknowns:0};if(e.scheme===a.ny.inMemory||e.scheme===a.ny.walkThrough||e.scheme===a.ny.walkThroughSnippet)return t;for(const{severity:i}of this._service.read({resource:e}))i===h.cj.Error?t.errors+=1:i===h.cj.Warning?t.warnings+=1:i===h.cj.Info?t.infos+=1:t.unknowns+=1;return t}_substract(e){this.errors-=e.errors,this.warnings-=e.warnings,this.infos-=e.infos,this.unknowns-=e.unknowns}_add(e){this.errors+=e.errors,this.warnings+=e.warnings,this.infos+=e.infos,this.unknowns+=e.unknowns}}class d{constructor(){this._onMarkerChanged=new r.uI({delay:0,merge:d._merge}),this.onMarkerChanged=this._onMarkerChanged.event,this._data=new c,this._stats=new u(this)}dispose(){this._stats.dispose(),this._onMarkerChanged.dispose()}remove(e,t){for(const i of t||[])this.changeOne(e,i,[])}changeOne(e,t,i){if((0,n.Ct)(i)){this._data.delete(t,e)&&this._onMarkerChanged.fire([t])}else{const n=[];for(const r of i){const i=d._toMarker(e,t,r);i&&n.push(i)}this._data.set(t,e,n),this._onMarkerChanged.fire([t])}}static _toMarker(e,t,i){let{code:n,severity:r,message:s,source:o,startLineNumber:a,startColumn:l,endLineNumber:h,endColumn:c,relatedInformation:u,tags:d}=i;if(s)return a=a>0?a:1,l=l>0?l:1,h=h>=a?h:a,c=c>0?c:l,{resource:t,owner:e,code:n,severity:r,message:s,source:o,startLineNumber:a,startColumn:l,endLineNumber:h,endColumn:c,relatedInformation:u,tags:d}}changeAll(e,t){const i=[],r=this._data.values(e);if(r)for(const n of r){const t=s.f.first(n);t&&(i.push(t.resource),this._data.delete(t.resource,e))}if((0,n.EI)(t)){const n=new o.fT;for(const{resource:r,marker:s}of t){const t=d._toMarker(e,r,s);if(!t)continue;const o=n.get(r);o?o.push(t):(n.set(r,[t]),i.push(r))}for(const[t,i]of n)this._data.set(t,e,i)}i.length>0&&this._onMarkerChanged.fire(i)}read(e=Object.create(null)){let{owner:t,resource:i,severities:n,take:r}=e;if((!r||r<0)&&(r=-1),t&&i){const e=this._data.get(i,t);if(e){const t=[];for(const i of e)if(d._accept(i,n)){const e=t.push(i);if(r>0&&e===r)break}return t}return[]}if(t||i){const e=this._data.values(null!==i&&void 0!==i?i:t),s=[];for(const t of e)for(const e of t)if(d._accept(e,n)){const t=s.push(e);if(r>0&&t===r)return s}return s}{const e=[];for(const t of this._data.values())for(const i of t)if(d._accept(i,n)){const t=e.push(i);if(r>0&&t===r)return e}return e}}static _accept(e,t){return void 0===t||(t&e.severity)===e.severity}static _merge(e){const t=new o.fT;for(const i of e)for(const e of i)t.set(e,!0);return Array.from(t.keys())}}},40145:(e,t,i)=>{i.d(t,{DR:()=>l,cj:()=>n,oc:()=>r});var n,r,s=i(77721),o=i(35819),a=i(34029);!function(e){e[e.Hint=1]="Hint",e[e.Info=2]="Info",e[e.Warning=4]="Warning",e[e.Error=8]="Error"}(n||(n={})),function(e){e.compare=function(e,t){return t-e};const t=Object.create(null);t[e.Error]=(0,o.kg)("sev.error","Error"),t[e.Warning]=(0,o.kg)("sev.warning","Warning"),t[e.Info]=(0,o.kg)("sev.info","Info"),e.toString=function(e){return t[e]||""},e.fromSeverity=function(t){switch(t){case s.A.Error:return e.Error;case s.A.Warning:return e.Warning;case s.A.Info:return e.Info;case s.A.Ignore:return e.Hint}},e.toSeverity=function(t){switch(t){case e.Error:return s.A.Error;case e.Warning:return s.A.Warning;case e.Info:return s.A.Info;case e.Hint:return s.A.Ignore}}}(n||(n={})),function(e){const t="";function i(e,i){const r=[t];return e.source?r.push(e.source.replace("\xa6","\\\xa6")):r.push(t),e.code?"string"===typeof e.code?r.push(e.code.replace("\xa6","\\\xa6")):r.push(e.code.value.replace("\xa6","\\\xa6")):r.push(t),void 0!==e.severity&&null!==e.severity?r.push(n.toString(e.severity)):r.push(t),e.message&&i?r.push(e.message.replace("\xa6","\\\xa6")):r.push(t),void 0!==e.startLineNumber&&null!==e.startLineNumber?r.push(e.startLineNumber.toString()):r.push(t),void 0!==e.startColumn&&null!==e.startColumn?r.push(e.startColumn.toString()):r.push(t),void 0!==e.endLineNumber&&null!==e.endLineNumber?r.push(e.endLineNumber.toString()):r.push(t),void 0!==e.endColumn&&null!==e.endColumn?r.push(e.endColumn.toString()):r.push(t),r.push(t),r.join("\xa6")}e.makeKey=function(e){return i(e,!0)},e.makeKeyOptionalMessage=i}(r||(r={}));const l=(0,a.u1)("markerService")},74349:(e,t,i)=>{i.d(t,{AI:()=>s,Kz:()=>a,Ot:()=>o});var n=i(77721),r=i(34029),s=n.A;const o=(0,r.u1)("notificationService");class a{}},46025:(e,t,i)=>{i.d(t,{Cr:()=>l,ew:()=>d,fV:()=>u,m5:()=>h,v$:()=>c});var n=i(55808),r=i(24638),s=i(65698),o=i(34029),a=function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{l(n.next(e))}catch(t){s(t)}}function a(e){try{l(n.throw(e))}catch(t){s(t)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(o,a)}l((n=n.apply(e,t||[])).next())}))};const l=(0,o.u1)("openerService"),h=Object.freeze({_serviceBrand:void 0,registerOpener:()=>n.jG.None,registerValidator:()=>n.jG.None,registerExternalUriResolver:()=>n.jG.None,setDefaultExternalOpener(){},registerExternalOpener:()=>n.jG.None,open(){return a(this,void 0,void 0,(function*(){return!1}))},resolveExternalUri(e){return a(this,void 0,void 0,(function*(){return{resolved:e,dispose(){}}}))}});function c(e,t){return s.r.isUri(e)?(0,r.Q_)(e.scheme,t):(0,r.ns)(e,t+":")}function u(e,...t){return t.some((t=>c(e,t)))}function d(e){let t;const i=/^L?(\d+)(?:,(\d+))?(-L?(\d+)(?:,(\d+))?)?/.exec(e.fragment);return i&&(t={startLineNumber:parseInt(i[1]),startColumn:i[2]?parseInt(i[2]):1,endLineNumber:i[4]?parseInt(i[4]):void 0,endColumn:i[4]?i[5]?parseInt(i[5]):1:void 0},e=e.with({fragment:""})),{selection:t,uri:e}}},53229:(e,t,i)=>{i.d(t,{G5:()=>r,N8:()=>o,ke:()=>s});var n=i(34029);const r=(0,n.u1)("progressService");Object.freeze({total(){},worked(){},done(){}});class s{constructor(e){this.callback=e}report(e){this._value=e,this.callback(this._value)}}s.None=Object.freeze({report(){}});const o=(0,n.u1)("editorProgressService")},27563:(e,t,i)=>{i.d(t,{Fd:()=>a,aJ:()=>n});var n,r=i(48640),s=i(55808),o=i(1097);!function(e){e[e.PRESERVE=0]="PRESERVE",e[e.LAST=1]="LAST"}(n||(n={}));const a={Quickaccess:"workbench.contributions.quickaccess"};o.O.add(a.Quickaccess,new class{constructor(){this.providers=[],this.defaultProvider=void 0}registerQuickAccessProvider(e){return 0===e.prefix.length?this.defaultProvider=e:this.providers.push(e),this.providers.sort(((e,t)=>t.prefix.length-e.prefix.length)),(0,s.s)((()=>{this.providers.splice(this.providers.indexOf(e),1),this.defaultProvider===e&&(this.defaultProvider=void 0)}))}getQuickAccessProviders(){return(0,r.Yc)([this.defaultProvider,...this.providers])}getQuickAccessProvider(e){return e&&this.providers.find((t=>e.startsWith(t.prefix)))||void 0||this.defaultProvider}})},31001:(e,t,i)=>{i.d(t,{C1:()=>r.C1,GK:()=>s});var n=i(34029),r=i(3688);const s=(0,n.u1)("quickInputService")},1097:(e,t,i)=>{i.d(t,{O:()=>s});var n=i(46836),r=i(59713);const s=new class{constructor(){this.data=new Map}add(e,t){n.ok(r.Kg(e)),n.ok(r.Gv(t)),n.ok(!this.data.has(e),"There is already an extension with this id"),this.data.set(e,t)}as(e){return this.data.get(e)||null}}},87899:(e,t,i)=>{i.d(t,{CS:()=>g,pc:()=>m,LP:()=>f});var n,r=i(42464),s=i(55808),o=i(59713),a=i(20512),l=function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{l(n.next(e))}catch(t){s(t)}}function a(e){try{l(n.throw(e))}catch(t){s(t)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(o,a)}l((n=n.apply(e,t||[])).next())}))};!function(e){e[e.None=0]="None",e[e.Initialized=1]="Initialized",e[e.Closed=2]="Closed"}(n||(n={}));class h extends s.jG{constructor(e,t=Object.create(null)){super(),this.database=e,this.options=t,this._onDidChangeStorage=this._register(new r.vl),this.onDidChangeStorage=this._onDidChangeStorage.event,this.state=n.None,this.cache=new Map,this.flushDelayer=new a.Th(h.DEFAULT_FLUSH_DELAY),this.pendingDeletes=new Set,this.pendingInserts=new Map,this.whenFlushedCallbacks=[],this.registerListeners()}registerListeners(){this._register(this.database.onDidChangeItemsExternal((e=>this.onDidChangeItemsExternal(e))))}onDidChangeItemsExternal(e){var t,i;null===(t=e.changed)||void 0===t||t.forEach(((e,t)=>this.accept(t,e))),null===(i=e.deleted)||void 0===i||i.forEach((e=>this.accept(e,void 0)))}accept(e,t){if(this.state===n.Closed)return;let i=!1;if((0,o.z)(t))i=this.cache.delete(e);else{this.cache.get(e)!==t&&(this.cache.set(e,t),i=!0)}i&&this._onDidChangeStorage.fire(e)}get(e,t){const i=this.cache.get(e);return(0,o.z)(i)?t:i}getBoolean(e,t){const i=this.get(e);return(0,o.z)(i)?t:"true"===i}getNumber(e,t){const i=this.get(e);return(0,o.z)(i)?t:parseInt(i,10)}set(e,t){return l(this,void 0,void 0,(function*(){if(this.state===n.Closed)return;if((0,o.z)(t))return this.delete(e);const i=String(t);return this.cache.get(e)!==i?(this.cache.set(e,i),this.pendingInserts.set(e,i),this.pendingDeletes.delete(e),this._onDidChangeStorage.fire(e),this.doFlush()):void 0}))}delete(e){return l(this,void 0,void 0,(function*(){if(this.state===n.Closed)return;return this.cache.delete(e)?(this.pendingDeletes.has(e)||this.pendingDeletes.add(e),this.pendingInserts.delete(e),this._onDidChangeStorage.fire(e),this.doFlush()):void 0}))}get hasPending(){return this.pendingInserts.size>0||this.pendingDeletes.size>0}flushPending(){return l(this,void 0,void 0,(function*(){if(!this.hasPending)return;const e={insert:this.pendingInserts,delete:this.pendingDeletes};return this.pendingDeletes=new Set,this.pendingInserts=new Map,this.database.updateItems(e).finally((()=>{var e;if(!this.hasPending)for(;this.whenFlushedCallbacks.length;)null===(e=this.whenFlushedCallbacks.pop())||void 0===e||e()}))}))}doFlush(e){return l(this,void 0,void 0,(function*(){return this.flushDelayer.trigger((()=>this.flushPending()),e)}))}dispose(){this.flushDelayer.dispose(),super.dispose()}}h.DEFAULT_FLUSH_DELAY=100;class c{constructor(){this.onDidChangeItemsExternal=r.Jh.None,this.items=new Map}updateItems(e){var t,i;return l(this,void 0,void 0,(function*(){null===(t=e.insert)||void 0===t||t.forEach(((e,t)=>this.items.set(t,e))),null===(i=e.delete)||void 0===i||i.forEach((e=>this.items.delete(e)))}))}}var u=i(34029);const d="__$__targetStorageMarker",g=(0,u.u1)("storageService");var f;!function(e){e[e.NONE=0]="NONE",e[e.SHUTDOWN=1]="SHUTDOWN"}(f||(f={}));class p extends s.jG{constructor(e={flushInterval:p.DEFAULT_FLUSH_INTERVAL}){super(),this.options=e,this._onDidChangeValue=this._register(new r.fV),this.onDidChangeValue=this._onDidChangeValue.event,this._onDidChangeTarget=this._register(new r.fV),this._onWillSaveState=this._register(new r.vl),this.onWillSaveState=this._onWillSaveState.event,this._workspaceKeyTargets=void 0,this._profileKeyTargets=void 0,this._applicationKeyTargets=void 0}emitDidChangeValue(e,t){if(t===d){switch(e){case-1:this._applicationKeyTargets=void 0;break;case 0:this._profileKeyTargets=void 0;break;case 1:this._workspaceKeyTargets=void 0}this._onDidChangeTarget.fire({scope:e})}else this._onDidChangeValue.fire({scope:e,key:t,target:this.getKeyTargets(e)[t]})}get(e,t,i){var n;return null===(n=this.getStorage(t))||void 0===n?void 0:n.get(e,i)}getBoolean(e,t,i){var n;return null===(n=this.getStorage(t))||void 0===n?void 0:n.getBoolean(e,i)}getNumber(e,t,i){var n;return null===(n=this.getStorage(t))||void 0===n?void 0:n.getNumber(e,i)}store(e,t,i,n){(0,o.z)(t)?this.remove(e,i):this.withPausedEmitters((()=>{var r;this.updateKeyTarget(e,i,n),null===(r=this.getStorage(i))||void 0===r||r.set(e,t)}))}remove(e,t){this.withPausedEmitters((()=>{var i;this.updateKeyTarget(e,t,void 0),null===(i=this.getStorage(t))||void 0===i||i.delete(e)}))}withPausedEmitters(e){this._onDidChangeValue.pause(),this._onDidChangeTarget.pause();try{e()}finally{this._onDidChangeValue.resume(),this._onDidChangeTarget.resume()}}updateKeyTarget(e,t,i){var n,r;const s=this.getKeyTargets(t);"number"===typeof i?s[e]!==i&&(s[e]=i,null===(n=this.getStorage(t))||void 0===n||n.set(d,JSON.stringify(s))):"number"===typeof s[e]&&(delete s[e],null===(r=this.getStorage(t))||void 0===r||r.set(d,JSON.stringify(s)))}get workspaceKeyTargets(){return this._workspaceKeyTargets||(this._workspaceKeyTargets=this.loadKeyTargets(1)),this._workspaceKeyTargets}get profileKeyTargets(){return this._profileKeyTargets||(this._profileKeyTargets=this.loadKeyTargets(0)),this._profileKeyTargets}get applicationKeyTargets(){return this._applicationKeyTargets||(this._applicationKeyTargets=this.loadKeyTargets(-1)),this._applicationKeyTargets}getKeyTargets(e){switch(e){case-1:return this.applicationKeyTargets;case 0:return this.profileKeyTargets;default:return this.workspaceKeyTargets}}loadKeyTargets(e){const t=this.get(d,e);if(t)try{return JSON.parse(t)}catch(i){}return Object.create(null)}}p.DEFAULT_FLUSH_INTERVAL=6e4;class m extends p{constructor(){super(),this.applicationStorage=this._register(new h(new c)),this.profileStorage=this._register(new h(new c)),this.workspaceStorage=this._register(new h(new c)),this._register(this.workspaceStorage.onDidChangeStorage((e=>this.emitDidChangeValue(1,e)))),this._register(this.profileStorage.onDidChangeStorage((e=>this.emitDidChangeValue(0,e)))),this._register(this.applicationStorage.onDidChangeStorage((e=>this.emitDidChangeValue(-1,e))))}getStorage(e){switch(e){case-1:return this.applicationStorage;case 0:return this.profileStorage;default:return this.workspaceStorage}}}},45769:(e,t,i)=>{i.d(t,{k:()=>n});const n=(0,i(34029).u1)("telemetryService")},44824:(e,t,i)=>{i.d(t,{$$0:()=>T,$BZ:()=>st,$Qy:()=>nt,AN$:()=>te,AjU:()=>si,AlL:()=>Wt,B2L:()=>Ge,BTi:()=>Z,Bbc:()=>c,By2:()=>ue,C1n:()=>A,C9U:()=>bt,CMg:()=>Te,CQ3:()=>Ct,CU6:()=>f,CgL:()=>de,D7X:()=>Gt,ECk:()=>Ne,ELA:()=>me,EY1:()=>Ye,FEE:()=>v,FdG:()=>u,FiB:()=>ge,GNm:()=>Je,GVV:()=>pt,G_h:()=>H,Gj6:()=>Ze,H8q:()=>Bt,HDX:()=>ve,HJZ:()=>ke,HWC:()=>he,Hng:()=>ne,HwT:()=>je,I$A:()=>E,IIb:()=>ae,ILr:()=>ci,JO0:()=>Ci,JPj:()=>mi,JVY:()=>fi,K1Z:()=>ui,L4c:()=>S,L9Z:()=>O,MHP:()=>tt,NBf:()=>be,NXK:()=>it,ObF:()=>$t,P6i:()=>He,P9Z:()=>Mt,Q96:()=>Me,QI5:()=>Lt,QRv:()=>wt,Qfh:()=>Se,QwA:()=>De,Rbi:()=>ee,Rig:()=>gi,Rjz:()=>ft,S5J:()=>Ae,S6W:()=>y,SNb:()=>qt,Sj:()=>J,Stt:()=>re,Syz:()=>Ee,T5N:()=>N,T9h:()=>j,U4U:()=>Nt,ULt:()=>B,UPX:()=>p,US:()=>pe,Ubg:()=>Oe,Ux$:()=>Kt,VFX:()=>ct,WL6:()=>Ue,WMx:()=>q,WfR:()=>Re,WmU:()=>ht,XJc:()=>U,Xo2:()=>Pe,Xp1:()=>oi,YSW:()=>M,YZM:()=>ot,YtV:()=>ce,ZEf:()=>Xe,Zgs:()=>x,Ztu:()=>Ve,_$n:()=>F,_NC:()=>Be,_pU:()=>Ke,b1q:()=>_,bNw:()=>ki,bXl:()=>$,buw:()=>b,c1f:()=>D,c6Y:()=>Ut,c7i:()=>zt,cI_:()=>Y,cws:()=>L,dd_:()=>Ht,eMz:()=>xt,eUu:()=>ye,eYZ:()=>P,efJ:()=>ut,er1:()=>_e,f4y:()=>_t,f9l:()=>w,fAP:()=>ni,fED:()=>mt,fiM:()=>Ot,g$2:()=>Vt,gnV:()=>Q,gtq:()=>gt,h9z:()=>R,i61:()=>le,iAJ:()=>St,ijf:()=>vt,iwL:()=>Ce,k5u:()=>At,lO1:()=>yt,ld8:()=>rt,mH6:()=>Fe,mhZ:()=>X,nH:()=>Pt,n__:()=>wi,oZ8:()=>ze,p7Y:()=>dt,pOz:()=>oe,pmr:()=>jt,pnl:()=>Et,qTN:()=>Qe,qaw:()=>at,rB3:()=>di,rRi:()=>We,rm4:()=>xe,sDQ:()=>se,sIe:()=>fe,sbQ:()=>Ft,seu:()=>Le,sjA:()=>qe,t4B:()=>m,tAP:()=>k,tYX:()=>pi,tan:()=>Ie,uMG:()=>hi,uNK:()=>I,uNx:()=>kt,vwp:()=>C,w3C:()=>lt,w3w:()=>et,whs:()=>ie,x1A:()=>g,yHf:()=>$e,yLC:()=>li,yLr:()=>vi,yr0:()=>ai,z5H:()=>ri,zRE:()=>G,zUX:()=>we});var n=i(20512),r=i(74379),s=i(42464),o=i(59713),a=i(35819),l=i(23982),h=i(1097);function c(e){return`--vscode-${e.replace(/\./g,"-")}`}const u={ColorContribution:"base.contributions.colors"};const d=new class{constructor(){this._onDidChangeSchema=new s.vl,this.onDidChangeSchema=this._onDidChangeSchema.event,this.colorSchema={type:"object",properties:{}},this.colorReferenceSchema={type:"string",enum:[],enumDescriptions:[]},this.colorsById={}}registerColor(e,t,i,n=!1,r){const s={id:e,description:i,defaults:t,needsTransparency:n,deprecationMessage:r};this.colorsById[e]=s;const o={type:"string",description:i,format:"color-hex",defaultSnippets:[{body:"${1:#ff0000}"}]};return r&&(o.deprecationMessage=r),this.colorSchema.properties[e]=o,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&&i.defaults){return wi(i.defaults[t.type],t)}}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 g(e,t,i,n,r){return d.registerColor(e,(null===(s=t)||"undefined"===typeof s.hcLight&&(null===s.hcDark||"string"===typeof s.hcDark?s.hcLight=s.hcDark:s.hcLight=s.light),s),i,n,r);var s}h.O.add(u.ColorContribution,d);const f=g("foreground",{dark:"#CCCCCC",light:"#616161",hcDark:"#FFFFFF",hcLight:"#292929"},a.kg("foreground","Overall foreground color. This color is only used if not overridden by a component.")),p=(g("disabledForeground",{dark:"#CCCCCC80",light:"#61616180",hcDark:"#A5A5A5",hcLight:"#7F7F7F"},a.kg("disabledForeground","Overall foreground for disabled elements. This color is only used if not overridden by a component.")),g("errorForeground",{dark:"#F48771",light:"#A1260D",hcDark:"#F48771",hcLight:"#B5200D"},a.kg("errorForeground","Overall foreground color for error messages. This color is only used if not overridden by a component."))),m=(g("descriptionForeground",{light:"#717171",dark:Ci(f,.7),hcDark:Ci(f,.7),hcLight:Ci(f,.7)},a.kg("descriptionForeground","Foreground color for description text providing additional information, for example for a label.")),g("icon.foreground",{dark:"#C5C5C5",light:"#424242",hcDark:"#FFFFFF",hcLight:"#292929"},a.kg("iconForeground","The default color for icons in the workbench."))),k=g("focusBorder",{dark:"#007FD4",light:"#0090F1",hcDark:"#F38518",hcLight:"#0F4A85"},a.kg("focusBorder","Overall border color for focused elements. This color is only used if not overridden by a component.")),_=g("contrastBorder",{light:null,dark:null,hcDark:"#6FC3DF",hcLight:"#0F4A85"},a.kg("contrastBorder","An extra border around elements to separate them from others for greater contrast.")),b=g("contrastActiveBorder",{light:null,dark:null,hcDark:k,hcLight:k},a.kg("activeContrastBorder","An extra border around active elements to separate them from others for greater contrast.")),C=(g("selection.background",{light:null,dark:null,hcDark:null,hcLight:null},a.kg("selectionBackground","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.")),g("textSeparator.foreground",{light:"#0000002e",dark:"#ffffff2e",hcDark:r.Q1.black,hcLight:"#292929"},a.kg("textSeparatorForeground","Color for text separators.")),g("textLink.foreground",{light:"#006AB1",dark:"#3794FF",hcDark:"#3794FF",hcLight:"#0F4A85"},a.kg("textLinkForeground","Foreground color for links in text."))),v=g("textLink.activeForeground",{light:"#006AB1",dark:"#3794FF",hcDark:"#3794FF",hcLight:"#0F4A85"},a.kg("textLinkActiveForeground","Foreground color for links in text when clicked on and on mouse hover.")),y=(g("textPreformat.foreground",{light:"#A31515",dark:"#D7BA7D",hcDark:"#D7BA7D",hcLight:"#292929"},a.kg("textPreformatForeground","Foreground color for preformatted text segments.")),g("textBlockQuote.background",{light:"#7f7f7f1a",dark:"#7f7f7f1a",hcDark:null,hcLight:"#F2F2F2"},a.kg("textBlockQuoteBackground","Background color for block quotes in text.")),g("textBlockQuote.border",{light:"#007acc80",dark:"#007acc80",hcDark:r.Q1.white,hcLight:"#292929"},a.kg("textBlockQuoteBorder","Border color for block quotes in text.")),g("textCodeBlock.background",{light:"#dcdcdc66",dark:"#0a0a0a66",hcDark:r.Q1.black,hcLight:"#F2F2F2"},a.kg("textCodeBlockBackground","Background color for code blocks in text."))),w=g("widget.shadow",{dark:Ci(r.Q1.black,.36),light:Ci(r.Q1.black,.16),hcDark:null,hcLight:null},a.kg("widgetShadow","Shadow color of widgets such as find/replace inside the editor.")),S=g("input.background",{dark:"#3C3C3C",light:r.Q1.white,hcDark:r.Q1.black,hcLight:r.Q1.white},a.kg("inputBoxBackground","Input box background.")),L=g("input.foreground",{dark:f,light:f,hcDark:f,hcLight:f},a.kg("inputBoxForeground","Input box foreground.")),x=g("input.border",{dark:null,light:null,hcDark:_,hcLight:_},a.kg("inputBoxBorder","Input box border.")),I=g("inputOption.activeBorder",{dark:"#007ACC00",light:"#007ACC00",hcDark:_,hcLight:_},a.kg("inputBoxActiveOptionBorder","Border color of activated options in input fields.")),D=(g("inputOption.hoverBackground",{dark:"#5a5d5e80",light:"#b8b8b850",hcDark:null,hcLight:null},a.kg("inputOption.hoverBackground","Background color of activated options in input fields.")),g("inputOption.activeBackground",{dark:Ci(k,.4),light:Ci(k,.2),hcDark:r.Q1.transparent,hcLight:r.Q1.transparent},a.kg("inputOption.activeBackground","Background hover color of options in input fields."))),T=g("inputOption.activeForeground",{dark:r.Q1.white,light:r.Q1.black,hcDark:null,hcLight:f},a.kg("inputOption.activeForeground","Foreground color of activated options in input fields.")),E=(g("input.placeholderForeground",{light:Ci(f,.5),dark:Ci(f,.5),hcDark:Ci(f,.7),hcLight:Ci(f,.7)},a.kg("inputPlaceholderForeground","Input box foreground color for placeholder text.")),g("inputValidation.infoBackground",{dark:"#063B49",light:"#D6ECF2",hcDark:r.Q1.black,hcLight:r.Q1.white},a.kg("inputValidationInfoBackground","Input validation background color for information severity."))),O=g("inputValidation.infoForeground",{dark:null,light:null,hcDark:null,hcLight:f},a.kg("inputValidationInfoForeground","Input validation foreground color for information severity.")),M=g("inputValidation.infoBorder",{dark:"#007acc",light:"#007acc",hcDark:_,hcLight:_},a.kg("inputValidationInfoBorder","Input validation border color for information severity.")),B=g("inputValidation.warningBackground",{dark:"#352A05",light:"#F6F5D2",hcDark:r.Q1.black,hcLight:r.Q1.white},a.kg("inputValidationWarningBackground","Input validation background color for warning severity.")),N=g("inputValidation.warningForeground",{dark:null,light:null,hcDark:null,hcLight:f},a.kg("inputValidationWarningForeground","Input validation foreground color for warning severity.")),A=g("inputValidation.warningBorder",{dark:"#B89500",light:"#B89500",hcDark:_,hcLight:_},a.kg("inputValidationWarningBorder","Input validation border color for warning severity.")),F=g("inputValidation.errorBackground",{dark:"#5A1D1D",light:"#F2DEDE",hcDark:r.Q1.black,hcLight:r.Q1.white},a.kg("inputValidationErrorBackground","Input validation background color for error severity.")),R=g("inputValidation.errorForeground",{dark:null,light:null,hcDark:null,hcLight:f},a.kg("inputValidationErrorForeground","Input validation foreground color for error severity.")),P=g("inputValidation.errorBorder",{dark:"#BE1100",light:"#BE1100",hcDark:_,hcLight:_},a.kg("inputValidationErrorBorder","Input validation border color for error severity.")),z=g("dropdown.background",{dark:"#3C3C3C",light:r.Q1.white,hcDark:r.Q1.black,hcLight:r.Q1.white},a.kg("dropdownBackground","Dropdown background.")),W=(g("dropdown.listBackground",{dark:null,light:null,hcDark:r.Q1.black,hcLight:r.Q1.white},a.kg("dropdownListBackground","Dropdown list background.")),g("dropdown.foreground",{dark:"#F0F0F0",light:null,hcDark:r.Q1.white,hcLight:f},a.kg("dropdownForeground","Dropdown foreground."))),V=g("dropdown.border",{dark:z,light:"#CECECE",hcDark:_,hcLight:_},a.kg("dropdownBorder","Dropdown border.")),H=(g("checkbox.background",{dark:z,light:z,hcDark:z,hcLight:z},a.kg("checkbox.background","Background color of checkbox widget.")),g("checkbox.foreground",{dark:W,light:W,hcDark:W,hcLight:W},a.kg("checkbox.foreground","Foreground color of checkbox widget.")),g("checkbox.border",{dark:V,light:V,hcDark:V,hcLight:V},a.kg("checkbox.border","Border color of checkbox widget.")),g("button.foreground",{dark:r.Q1.white,light:r.Q1.white,hcDark:r.Q1.white,hcLight:r.Q1.white},a.kg("buttonForeground","Button foreground color."))),U=(g("button.separator",{dark:Ci(H,.4),light:Ci(H,.4),hcDark:null,hcLight:Ci(H,.4)},a.kg("buttonSeparator","Button separator color.")),g("button.background",{dark:"#0E639C",light:"#007ACC",hcDark:null,hcLight:"#0F4A85"},a.kg("buttonBackground","Button background color."))),j=g("button.hoverBackground",{dark:bi(U,.2),light:_i(U,.2),hcDark:null,hcLight:null},a.kg("buttonHoverBackground","Button background color when hovering.")),K=(g("button.border",{dark:_,light:_,hcDark:_,hcLight:_},a.kg("buttonBorder","Button border color.")),g("button.secondaryForeground",{dark:r.Q1.white,light:r.Q1.white,hcDark:r.Q1.white,hcLight:f},a.kg("buttonSecondaryForeground","Secondary button foreground color.")),g("button.secondaryBackground",{dark:"#3A3D41",light:"#5F6A79",hcDark:null,hcLight:r.Q1.white},a.kg("buttonSecondaryBackground","Secondary button background color."))),q=(g("button.secondaryHoverBackground",{dark:bi(K,.2),light:_i(K,.2),hcDark:null,hcLight:null},a.kg("buttonSecondaryHoverBackground","Secondary button background color when hovering.")),g("badge.background",{dark:"#4D4D4D",light:"#C4C4C4",hcDark:r.Q1.black,hcLight:"#0F4A85"},a.kg("badgeBackground","Badge background color. Badges are small information labels, e.g. for search results count."))),G=g("badge.foreground",{dark:r.Q1.white,light:"#333",hcDark:r.Q1.white,hcLight:r.Q1.white},a.kg("badgeForeground","Badge foreground color. Badges are small information labels, e.g. for search results count.")),$=g("scrollbar.shadow",{dark:"#000000",light:"#DDDDDD",hcDark:null,hcLight:null},a.kg("scrollbarShadow","Scrollbar shadow to indicate that the view is scrolled.")),Q=g("scrollbarSlider.background",{dark:r.Q1.fromHex("#797979").transparent(.4),light:r.Q1.fromHex("#646464").transparent(.4),hcDark:Ci(_,.6),hcLight:Ci(_,.4)},a.kg("scrollbarSliderBackground","Scrollbar slider background color.")),Y=g("scrollbarSlider.hoverBackground",{dark:r.Q1.fromHex("#646464").transparent(.7),light:r.Q1.fromHex("#646464").transparent(.7),hcDark:Ci(_,.8),hcLight:Ci(_,.8)},a.kg("scrollbarSliderHoverBackground","Scrollbar slider background color when hovering.")),X=g("scrollbarSlider.activeBackground",{dark:r.Q1.fromHex("#BFBFBF").transparent(.4),light:r.Q1.fromHex("#000000").transparent(.6),hcDark:_,hcLight:_},a.kg("scrollbarSliderActiveBackground","Scrollbar slider background color when clicked on.")),Z=g("progressBar.background",{dark:r.Q1.fromHex("#0E70C0"),light:r.Q1.fromHex("#0E70C0"),hcDark:_,hcLight:_},a.kg("progressBarBackground","Background color of the progress bar that can show for long running operations.")),J=g("editorError.background",{dark:null,light:null,hcDark:null,hcLight:null},a.kg("editorError.background","Background color of error text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0),ee=g("editorError.foreground",{dark:"#F14C4C",light:"#E51400",hcDark:"#F48771",hcLight:"#B5200D"},a.kg("editorError.foreground","Foreground color of error squigglies in the editor.")),te=g("editorError.border",{dark:null,light:null,hcDark:r.Q1.fromHex("#E47777").transparent(.8),hcLight:"#B5200D"},a.kg("errorBorder","Border color of error boxes in the editor.")),ie=g("editorWarning.background",{dark:null,light:null,hcDark:null,hcLight:null},a.kg("editorWarning.background","Background color of warning text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0),ne=g("editorWarning.foreground",{dark:"#CCA700",light:"#BF8803",hcDark:"#FFD37",hcLight:"#895503"},a.kg("editorWarning.foreground","Foreground color of warning squigglies in the editor.")),re=g("editorWarning.border",{dark:null,light:null,hcDark:r.Q1.fromHex("#FFCC00").transparent(.8),hcLight:"#"},a.kg("warningBorder","Border color of warning boxes in the editor.")),se=g("editorInfo.background",{dark:null,light:null,hcDark:null,hcLight:null},a.kg("editorInfo.background","Background color of info text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0),oe=g("editorInfo.foreground",{dark:"#3794FF",light:"#1a85ff",hcDark:"#3794FF",hcLight:"#1a85ff"},a.kg("editorInfo.foreground","Foreground color of info squigglies in the editor.")),ae=g("editorInfo.border",{dark:null,light:null,hcDark:r.Q1.fromHex("#3794FF").transparent(.8),hcLight:"#292929"},a.kg("infoBorder","Border color of info boxes in the editor.")),le=g("editorHint.foreground",{dark:r.Q1.fromHex("#eeeeee").transparent(.7),light:"#6c6c6c",hcDark:null,hcLight:null},a.kg("editorHint.foreground","Foreground color of hint squigglies in the editor.")),he=g("editorHint.border",{dark:null,light:null,hcDark:r.Q1.fromHex("#eeeeee").transparent(.8),hcLight:"#292929"},a.kg("hintBorder","Border color of hint boxes in the editor.")),ce=(g("sash.hoverBorder",{dark:k,light:k,hcDark:k,hcLight:k},a.kg("sashActiveBorder","Border color of active sashes.")),g("editor.background",{light:"#fffffe",dark:"#1E1E1E",hcDark:r.Q1.black,hcLight:r.Q1.white},a.kg("editorBackground","Editor background color."))),ue=g("editor.foreground",{light:"#333333",dark:"#BBBBBB",hcDark:r.Q1.white,hcLight:f},a.kg("editorForeground","Editor default foreground color.")),de=g("editorWidget.background",{dark:"#252526",light:"#F3F3F3",hcDark:"#0C141F",hcLight:r.Q1.white},a.kg("editorWidgetBackground","Background color of editor widgets, such as find/replace.")),ge=g("editorWidget.foreground",{dark:f,light:f,hcDark:f,hcLight:f},a.kg("editorWidgetForeground","Foreground color of editor widgets, such as find/replace.")),fe=g("editorWidget.border",{dark:"#454545",light:"#C8C8C8",hcDark:_,hcLight:_},a.kg("editorWidgetBorder","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.")),pe=g("editorWidget.resizeBorder",{light:null,dark:null,hcDark:null,hcLight:null},a.kg("editorWidgetResizeBorder","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.")),me=g("quickInput.background",{dark:de,light:de,hcDark:de,hcLight:de},a.kg("pickerBackground","Quick picker background color. The quick picker widget is the container for pickers like the command palette.")),ke=g("quickInput.foreground",{dark:ge,light:ge,hcDark:ge,hcLight:ge},a.kg("pickerForeground","Quick picker foreground color. The quick picker widget is the container for pickers like the command palette.")),_e=g("quickInputTitle.background",{dark:new r.Q1(new r.bU(255,255,255,.105)),light:new r.Q1(new r.bU(0,0,0,.06)),hcDark:"#000000",hcLight:r.Q1.white},a.kg("pickerTitleBackground","Quick picker title background color. The quick picker widget is the container for pickers like the command palette.")),be=g("pickerGroup.foreground",{dark:"#3794FF",light:"#0066BF",hcDark:r.Q1.white,hcLight:"#0F4A85"},a.kg("pickerGroupForeground","Quick picker color for grouping labels.")),Ce=g("pickerGroup.border",{dark:"#3F3F46",light:"#CCCEDB",hcDark:r.Q1.white,hcLight:"#0F4A85"},a.kg("pickerGroupBorder","Quick picker color for grouping borders.")),ve=g("keybindingLabel.background",{dark:new r.Q1(new r.bU(128,128,128,.17)),light:new r.Q1(new r.bU(221,221,221,.4)),hcDark:r.Q1.transparent,hcLight:r.Q1.transparent},a.kg("keybindingLabelBackground","Keybinding label background color. The keybinding label is used to represent a keyboard shortcut.")),ye=g("keybindingLabel.foreground",{dark:r.Q1.fromHex("#CCCCCC"),light:r.Q1.fromHex("#555555"),hcDark:r.Q1.white,hcLight:f},a.kg("keybindingLabelForeground","Keybinding label foreground color. The keybinding label is used to represent a keyboard shortcut.")),we=g("keybindingLabel.border",{dark:new r.Q1(new r.bU(51,51,51,.6)),light:new r.Q1(new r.bU(204,204,204,.4)),hcDark:new r.Q1(new r.bU(111,195,223)),hcLight:_},a.kg("keybindingLabelBorder","Keybinding label border color. The keybinding label is used to represent a keyboard shortcut.")),Se=g("keybindingLabel.bottomBorder",{dark:new r.Q1(new r.bU(68,68,68,.6)),light:new r.Q1(new r.bU(187,187,187,.4)),hcDark:new r.Q1(new r.bU(111,195,223)),hcLight:f},a.kg("keybindingLabelBottomBorder","Keybinding label border bottom color. The keybinding label is used to represent a keyboard shortcut.")),Le=g("editor.selectionBackground",{light:"#ADD6FF",dark:"#264F78",hcDark:"#f3f518",hcLight:"#0F4A85"},a.kg("editorSelectionBackground","Color of the editor selection.")),xe=g("editor.selectionForeground",{light:null,dark:null,hcDark:"#000000",hcLight:r.Q1.white},a.kg("editorSelectionForeground","Color of the selected text for high contrast.")),Ie=g("editor.inactiveSelectionBackground",{light:Ci(Le,.5),dark:Ci(Le,.5),hcDark:Ci(Le,.7),hcLight:Ci(Le,.5)},a.kg("editorInactiveSelection","Color of the selection in an inactive editor. The color must not be opaque so as not to hide underlying decorations."),!0),De=g("editor.selectionHighlightBackground",{light:yi(Le,ce,.3,.6),dark:yi(Le,ce,.3,.6),hcDark:null,hcLight:null},a.kg("editorSelectionHighlight","Color for regions with the same content as the selection. The color must not be opaque so as not to hide underlying decorations."),!0),Te=g("editor.selectionHighlightBorder",{light:null,dark:null,hcDark:b,hcLight:b},a.kg("editorSelectionHighlightBorder","Border color for regions with the same content as the selection.")),Ee=g("editor.findMatchBackground",{light:"#A8AC94",dark:"#515C6A",hcDark:null,hcLight:null},a.kg("editorFindMatch","Color of the current search match.")),Oe=g("editor.findMatchHighlightBackground",{light:"#EA5C0055",dark:"#EA5C0055",hcDark:null,hcLight:null},a.kg("findMatchHighlight","Color of the other search matches. The color must not be opaque so as not to hide underlying decorations."),!0),Me=g("editor.findRangeHighlightBackground",{dark:"#3a3d4166",light:"#b4b4b44d",hcDark:null,hcLight:null},a.kg("findRangeHighlight","Color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0),Be=g("editor.findMatchBorder",{light:null,dark:null,hcDark:b,hcLight:b},a.kg("editorFindMatchBorder","Border color of the current search match.")),Ne=g("editor.findMatchHighlightBorder",{light:null,dark:null,hcDark:b,hcLight:b},a.kg("findMatchHighlightBorder","Border color of the other search matches.")),Ae=g("editor.findRangeHighlightBorder",{dark:null,light:null,hcDark:Ci(b,.4),hcLight:Ci(b,.4)},a.kg("findRangeHighlightBorder","Border color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0),Fe=(g("searchEditor.findMatchBackground",{light:Ci(Oe,.66),dark:Ci(Oe,.66),hcDark:Oe,hcLight:Oe},a.kg("searchEditor.queryMatch","Color of the Search Editor query matches.")),g("searchEditor.findMatchBorder",{light:Ci(Ne,.66),dark:Ci(Ne,.66),hcDark:Ne,hcLight:Ne},a.kg("searchEditor.editorFindMatchBorder","Border color of the Search Editor query matches.")),g("editor.hoverHighlightBackground",{light:"#ADD6FF26",dark:"#264f7840",hcDark:"#ADD6FF26",hcLight:null},a.kg("hoverHighlight","Highlight below the word for which a hover is shown. The color must not be opaque so as not to hide underlying decorations."),!0)),Re=g("editorHoverWidget.background",{light:de,dark:de,hcDark:de,hcLight:de},a.kg("hoverBackground","Background color of the editor hover.")),Pe=g("editorHoverWidget.foreground",{light:ge,dark:ge,hcDark:ge,hcLight:ge},a.kg("hoverForeground","Foreground color of the editor hover.")),ze=g("editorHoverWidget.border",{light:fe,dark:fe,hcDark:fe,hcLight:fe},a.kg("hoverBorder","Border color of the editor hover.")),We=g("editorHoverWidget.statusBarBackground",{dark:bi(Re,.2),light:_i(Re,.05),hcDark:de,hcLight:de},a.kg("statusBarBackground","Background color of the editor hover status bar.")),Ve=g("editorLink.activeForeground",{dark:"#4E94CE",light:r.Q1.blue,hcDark:r.Q1.cyan,hcLight:"#292929"},a.kg("activeLinkForeground","Color of active links.")),He=g("editorInlayHint.foreground",{dark:Ci(G,.8),light:Ci(G,.8),hcDark:G,hcLight:G},a.kg("editorInlayHintForeground","Foreground color of inline hints")),Ue=g("editorInlayHint.background",{dark:Ci(q,.6),light:Ci(q,.3),hcDark:q,hcLight:q},a.kg("editorInlayHintBackground","Background color of inline hints")),je=g("editorInlayHint.typeForeground",{dark:He,light:He,hcDark:He,hcLight:He},a.kg("editorInlayHintForegroundTypes","Foreground color of inline hints for types")),Ke=g("editorInlayHint.typeBackground",{dark:Ue,light:Ue,hcDark:Ue,hcLight:Ue},a.kg("editorInlayHintBackgroundTypes","Background color of inline hints for types")),qe=g("editorInlayHint.parameterForeground",{dark:He,light:He,hcDark:He,hcLight:He},a.kg("editorInlayHintForegroundParameter","Foreground color of inline hints for parameters")),Ge=g("editorInlayHint.parameterBackground",{dark:Ue,light:Ue,hcDark:Ue,hcLight:Ue},a.kg("editorInlayHintBackgroundParameter","Background color of inline hints for parameters")),$e=g("editorLightBulb.foreground",{dark:"#FFCC00",light:"#DDB100",hcDark:"#FFCC00",hcLight:"#007ACC"},a.kg("editorLightBulbForeground","The color used for the lightbulb actions icon.")),Qe=g("editorLightBulbAutoFix.foreground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},a.kg("editorLightBulbAutoFixForeground","The color used for the lightbulb auto fix actions icon.")),Ye=new r.Q1(new r.bU(155,185,85,.2)),Xe=new r.Q1(new r.bU(255,0,0,.2)),Ze=g("diffEditor.insertedTextBackground",{dark:"#9ccc2c33",light:"#9ccc2c66",hcDark:null,hcLight:null},a.kg("diffEditorInserted","Background color for text that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0),Je=g("diffEditor.removedTextBackground",{dark:"#ff000066",light:"#ff00004d",hcDark:null,hcLight:null},a.kg("diffEditorRemoved","Background color for text that got removed. The color must not be opaque so as not to hide underlying decorations."),!0),et=g("diffEditor.insertedLineBackground",{dark:Ye,light:Ye,hcDark:null,hcLight:null},a.kg("diffEditorInsertedLines","Background color for lines that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0),tt=g("diffEditor.removedLineBackground",{dark:Xe,light:Xe,hcDark:null,hcLight:null},a.kg("diffEditorRemovedLines","Background color for lines that got removed. The color must not be opaque so as not to hide underlying decorations."),!0),it=g("diffEditorGutter.insertedLineBackground",{dark:null,light:null,hcDark:null,hcLight:null},a.kg("diffEditorInsertedLineGutter","Background color for the margin where lines got inserted.")),nt=g("diffEditorGutter.removedLineBackground",{dark:null,light:null,hcDark:null,hcLight:null},a.kg("diffEditorRemovedLineGutter","Background color for the margin where lines got removed.")),rt=g("diffEditorOverview.insertedForeground",{dark:null,light:null,hcDark:null,hcLight:null},a.kg("diffEditorOverviewInserted","Diff overview ruler foreground for inserted content.")),st=g("diffEditorOverview.removedForeground",{dark:null,light:null,hcDark:null,hcLight:null},a.kg("diffEditorOverviewRemoved","Diff overview ruler foreground for removed content.")),ot=g("diffEditor.insertedTextBorder",{dark:null,light:null,hcDark:"#33ff2eff",hcLight:"#374E06"},a.kg("diffEditorInsertedOutline","Outline color for the text that got inserted.")),at=g("diffEditor.removedTextBorder",{dark:null,light:null,hcDark:"#FF008F",hcLight:"#AD0707"},a.kg("diffEditorRemovedOutline","Outline color for text that got removed.")),lt=g("diffEditor.border",{dark:null,light:null,hcDark:_,hcLight:_},a.kg("diffEditorBorder","Border color between the two text editors.")),ht=g("diffEditor.diagonalFill",{dark:"#cccccc33",light:"#22222233",hcDark:null,hcLight:null},a.kg("diffDiagonalFill","Color of the diff editor's diagonal fill. The diagonal fill is used in side-by-side diff views.")),ct=g("list.focusBackground",{dark:null,light:null,hcDark:null,hcLight:null},a.kg("listFocusBackground","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.")),ut=g("list.focusForeground",{dark:null,light:null,hcDark:null,hcLight:null},a.kg("listFocusForeground","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.")),dt=g("list.focusOutline",{dark:k,light:k,hcDark:b,hcLight:b},a.kg("listFocusOutline","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.")),gt=g("list.focusAndSelectionOutline",{dark:null,light:null,hcDark:null,hcLight:null},a.kg("listFocusAndSelectionOutline","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.")),ft=g("list.activeSelectionBackground",{dark:"#04395E",light:"#0060C0",hcDark:null,hcLight:r.Q1.fromHex("#0F4A85").transparent(.1)},a.kg("listActiveSelectionBackground","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.")),pt=g("list.activeSelectionForeground",{dark:r.Q1.white,light:r.Q1.white,hcDark:null,hcLight:null},a.kg("listActiveSelectionForeground","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.")),mt=g("list.activeSelectionIconForeground",{dark:null,light:null,hcDark:null,hcLight:null},a.kg("listActiveSelectionIconForeground","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.")),kt=g("list.inactiveSelectionBackground",{dark:"#37373D",light:"#E4E6F1",hcDark:null,hcLight:r.Q1.fromHex("#0F4A85").transparent(.1)},a.kg("listInactiveSelectionBackground","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.")),_t=g("list.inactiveSelectionForeground",{dark:null,light:null,hcDark:null,hcLight:null},a.kg("listInactiveSelectionForeground","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.")),bt=g("list.inactiveSelectionIconForeground",{dark:null,light:null,hcDark:null,hcLight:null},a.kg("listInactiveSelectionIconForeground","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.")),Ct=g("list.inactiveFocusBackground",{dark:null,light:null,hcDark:null,hcLight:null},a.kg("listInactiveFocusBackground","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.")),vt=g("list.inactiveFocusOutline",{dark:null,light:null,hcDark:null,hcLight:null},a.kg("listInactiveFocusOutline","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.")),yt=g("list.hoverBackground",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:null,hcLight:r.Q1.fromHex("#0F4A85").transparent(.1)},a.kg("listHoverBackground","List/Tree background when hovering over items using the mouse.")),wt=g("list.hoverForeground",{dark:null,light:null,hcDark:null,hcLight:null},a.kg("listHoverForeground","List/Tree foreground when hovering over items using the mouse.")),St=g("list.dropBackground",{dark:"#062F4A",light:"#D6EBFF",hcDark:null,hcLight:null},a.kg("listDropBackground","List/Tree drag and drop background when moving items around using the mouse.")),Lt=g("list.highlightForeground",{dark:"#2AAAFF",light:"#0066BF",hcDark:k,hcLight:k},a.kg("highlight","List/Tree foreground color of the match highlights when searching inside the list/tree.")),xt=g("list.focusHighlightForeground",{dark:Lt,light:(It=ft,Dt=Lt,Tt="#BBE7FF",{op:5,if:It,then:Dt,else:Tt}),hcDark:Lt,hcLight:Lt},a.kg("listFocusHighlightForeground","List/Tree foreground color of the match highlights on actively focused items when searching inside the list/tree."));var It,Dt,Tt;g("list.invalidItemForeground",{dark:"#B89500",light:"#B89500",hcDark:"#B89500",hcLight:"#B5200D"},a.kg("invalidItemForeground","List/Tree foreground color for invalid items, for example an unresolved root in explorer.")),g("list.errorForeground",{dark:"#F88070",light:"#B01011",hcDark:null,hcLight:null},a.kg("listErrorForeground","Foreground color of list items containing errors.")),g("list.warningForeground",{dark:"#CCA700",light:"#855F00",hcDark:null,hcLight:null},a.kg("listWarningForeground","Foreground color of list items containing warnings."));const Et=g("listFilterWidget.background",{light:_i(de,0),dark:bi(de,0),hcDark:de,hcLight:de},a.kg("listFilterWidgetBackground","Background color of the type filter widget in lists and trees.")),Ot=g("listFilterWidget.outline",{dark:r.Q1.transparent,light:r.Q1.transparent,hcDark:"#f38518",hcLight:"#007ACC"},a.kg("listFilterWidgetOutline","Outline color of the type filter widget in lists and trees.")),Mt=g("listFilterWidget.noMatchesOutline",{dark:"#BE1100",light:"#BE1100",hcDark:_,hcLight:_},a.kg("listFilterWidgetNoMatchesOutline","Outline color of the type filter widget in lists and trees, when there are no matches.")),Bt=g("listFilterWidget.shadow",{dark:w,light:w,hcDark:w,hcLight:w},a.kg("listFilterWidgetShadow","Shadown color of the type filter widget in lists and trees.")),Nt=(g("list.filterMatchBackground",{dark:Oe,light:Oe,hcDark:null,hcLight:null},a.kg("listFilterMatchHighlight","Background color of the filtered match.")),g("list.filterMatchBorder",{dark:Ne,light:Ne,hcDark:_,hcLight:b},a.kg("listFilterMatchHighlightBorder","Border color of the filtered match.")),g("tree.indentGuidesStroke",{dark:"#585858",light:"#a9a9a9",hcDark:"#a9a9a9",hcLight:"#a5a5a5"},a.kg("treeIndentGuidesStroke","Tree stroke color for the indentation guides."))),At=g("tree.tableColumnsBorder",{dark:"#CCCCCC20",light:"#61616120",hcDark:null,hcLight:null},a.kg("tableColumnsBorder","Table border color between columns.")),Ft=g("tree.tableOddRowsBackground",{dark:Ci(f,.04),light:Ci(f,.04),hcDark:null,hcLight:null},a.kg("tableOddRowsBackgroundColor","Background color for odd table rows.")),Rt=(g("list.deemphasizedForeground",{dark:"#8C8C8C",light:"#8E8E90",hcDark:"#A7A8A9",hcLight:"#666666"},a.kg("listDeemphasizedForeground","List/Tree foreground color for items that are deemphasized. ")),g("quickInput.list.focusBackground",{dark:null,light:null,hcDark:null,hcLight:null},"",void 0,a.kg("quickInput.list.focusBackground deprecation","Please use quickInputList.focusBackground instead"))),Pt=g("quickInputList.focusForeground",{dark:pt,light:pt,hcDark:pt,hcLight:pt},a.kg("quickInput.listFocusForeground","Quick picker foreground color for the focused item.")),zt=g("quickInputList.focusIconForeground",{dark:mt,light:mt,hcDark:mt,hcLight:mt},a.kg("quickInput.listFocusIconForeground","Quick picker icon foreground color for the focused item.")),Wt=g("quickInputList.focusBackground",{dark:vi(Rt,ft),light:vi(Rt,ft),hcDark:null,hcLight:null},a.kg("quickInput.listFocusBackground","Quick picker background color for the focused item.")),Vt=g("menu.border",{dark:null,light:null,hcDark:_,hcLight:_},a.kg("menuBorder","Border color of menus.")),Ht=g("menu.foreground",{dark:W,light:f,hcDark:W,hcLight:W},a.kg("menuForeground","Foreground color of menu items.")),Ut=g("menu.background",{dark:z,light:z,hcDark:z,hcLight:z},a.kg("menuBackground","Background color of menu items.")),jt=g("menu.selectionForeground",{dark:pt,light:pt,hcDark:pt,hcLight:pt},a.kg("menuSelectionForeground","Foreground color of the selected menu item in menus.")),Kt=g("menu.selectionBackground",{dark:ft,light:ft,hcDark:ft,hcLight:ft},a.kg("menuSelectionBackground","Background color of the selected menu item in menus.")),qt=g("menu.selectionBorder",{dark:null,light:null,hcDark:b,hcLight:b},a.kg("menuSelectionBorder","Border color of the selected menu item in menus.")),Gt=g("menu.separatorBackground",{dark:"#606060",light:"#D4D4D4",hcDark:_,hcLight:_},a.kg("menuSeparatorBackground","Color of a separator menu item in menus.")),$t=g("toolbar.hoverBackground",{dark:"#5a5d5e50",light:"#b8b8b850",hcDark:null,hcLight:null},a.kg("toolbarHoverBackground","Toolbar background when hovering over actions using the mouse")),Qt=(g("toolbar.hoverOutline",{dark:null,light:null,hcDark:b,hcLight:b},a.kg("toolbarHoverOutline","Toolbar outline when hovering over actions using the mouse")),g("toolbar.activeBackground",{dark:bi($t,.1),light:_i($t,.1),hcDark:null,hcLight:null},a.kg("toolbarActiveBackground","Toolbar background when holding the mouse over actions")),g("editor.snippetTabstopHighlightBackground",{dark:new r.Q1(new r.bU(124,124,124,.3)),light:new r.Q1(new r.bU(10,50,100,.2)),hcDark:new r.Q1(new r.bU(124,124,124,.3)),hcLight:new r.Q1(new r.bU(10,50,100,.2))},a.kg("snippetTabstopHighlightBackground","Highlight background color of a snippet tabstop.")),g("editor.snippetTabstopHighlightBorder",{dark:null,light:null,hcDark:null,hcLight:null},a.kg("snippetTabstopHighlightBorder","Highlight border color of a snippet tabstop.")),g("editor.snippetFinalTabstopHighlightBackground",{dark:null,light:null,hcDark:null,hcLight:null},a.kg("snippetFinalTabstopHighlightBackground","Highlight background color of the final tabstop of a snippet.")),g("editor.snippetFinalTabstopHighlightBorder",{dark:"#525252",light:new r.Q1(new r.bU(10,50,100,.5)),hcDark:"#525252",hcLight:"#292929"},a.kg("snippetFinalTabstopHighlightBorder","Highlight border color of the final tabstop of a snippet.")),g("breadcrumb.foreground",{light:Ci(f,.8),dark:Ci(f,.8),hcDark:Ci(f,.8),hcLight:Ci(f,.8)},a.kg("breadcrumbsFocusForeground","Color of focused breadcrumb items.")),g("breadcrumb.background",{light:ce,dark:ce,hcDark:ce,hcLight:ce},a.kg("breadcrumbsBackground","Background color of breadcrumb items.")),g("breadcrumb.focusForeground",{light:_i(f,.2),dark:bi(f,.1),hcDark:bi(f,.1),hcLight:bi(f,.1)},a.kg("breadcrumbsFocusForeground","Color of focused breadcrumb items.")),g("breadcrumb.activeSelectionForeground",{light:_i(f,.2),dark:bi(f,.1),hcDark:bi(f,.1),hcLight:bi(f,.1)},a.kg("breadcrumbsSelectedForeground","Color of selected breadcrumb items.")),g("breadcrumbPicker.background",{light:de,dark:de,hcDark:de,hcLight:de},a.kg("breadcrumbsSelectedBackground","Background color of breadcrumb item picker.")),r.Q1.fromHex("#40C8AE").transparent(.5)),Yt=r.Q1.fromHex("#40A6FF").transparent(.5),Xt=r.Q1.fromHex("#606060").transparent(.4),Zt=.4,Jt=g("merge.currentHeaderBackground",{dark:Qt,light:Qt,hcDark:null,hcLight:null},a.kg("mergeCurrentHeaderBackground","Current header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0),ei=(g("merge.currentContentBackground",{dark:Ci(Jt,Zt),light:Ci(Jt,Zt),hcDark:Ci(Jt,Zt),hcLight:Ci(Jt,Zt)},a.kg("mergeCurrentContentBackground","Current content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0),g("merge.incomingHeaderBackground",{dark:Yt,light:Yt,hcDark:null,hcLight:null},a.kg("mergeIncomingHeaderBackground","Incoming header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0)),ti=(g("merge.incomingContentBackground",{dark:Ci(ei,Zt),light:Ci(ei,Zt),hcDark:Ci(ei,Zt),hcLight:Ci(ei,Zt)},a.kg("mergeIncomingContentBackground","Incoming content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0),g("merge.commonHeaderBackground",{dark:Xt,light:Xt,hcDark:null,hcLight:null},a.kg("mergeCommonHeaderBackground","Common ancestor header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0)),ii=(g("merge.commonContentBackground",{dark:Ci(ti,Zt),light:Ci(ti,Zt),hcDark:Ci(ti,Zt),hcLight:Ci(ti,Zt)},a.kg("mergeCommonContentBackground","Common ancestor content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0),g("merge.border",{dark:null,light:null,hcDark:"#C3DF6F",hcLight:"#007ACC"},a.kg("mergeBorder","Border color on headers and the splitter in inline merge-conflicts."))),ni=(g("editorOverviewRuler.currentContentForeground",{dark:Ci(Jt,1),light:Ci(Jt,1),hcDark:ii,hcLight:ii},a.kg("overviewRulerCurrentContentForeground","Current overview ruler foreground for inline merge-conflicts.")),g("editorOverviewRuler.incomingContentForeground",{dark:Ci(ei,1),light:Ci(ei,1),hcDark:ii,hcLight:ii},a.kg("overviewRulerIncomingContentForeground","Incoming overview ruler foreground for inline merge-conflicts.")),g("editorOverviewRuler.commonContentForeground",{dark:Ci(ti,1),light:Ci(ti,1),hcDark:ii,hcLight:ii},a.kg("overviewRulerCommonContentForeground","Common ancestor overview ruler foreground for inline merge-conflicts.")),g("editorOverviewRuler.findMatchForeground",{dark:"#d186167e",light:"#d186167e",hcDark:"#AB5A00",hcLight:""},a.kg("overviewRulerFindMatchForeground","Overview ruler marker color for find matches. The color must not be opaque so as not to hide underlying decorations."),!0)),ri=g("editorOverviewRuler.selectionHighlightForeground",{dark:"#A0A0A0CC",light:"#A0A0A0CC",hcDark:"#A0A0A0CC",hcLight:"#A0A0A0CC"},a.kg("overviewRulerSelectionHighlightForeground","Overview ruler marker color for selection highlights. The color must not be opaque so as not to hide underlying decorations."),!0),si=g("minimap.findMatchHighlight",{light:"#d18616",dark:"#d18616",hcDark:"#AB5A00",hcLight:"#0F4A85"},a.kg("minimapFindMatchHighlight","Minimap marker color for find matches."),!0),oi=g("minimap.selectionOccurrenceHighlight",{light:"#c9c9c9",dark:"#676767",hcDark:"#ffffff",hcLight:"#0F4A85"},a.kg("minimapSelectionOccurrenceHighlight","Minimap marker color for repeating editor selections."),!0),ai=g("minimap.selectionHighlight",{light:"#ADD6FF",dark:"#264F78",hcDark:"#ffffff",hcLight:"#0F4A85"},a.kg("minimapSelectionHighlight","Minimap marker color for the editor selection."),!0),li=g("minimap.errorHighlight",{dark:new r.Q1(new r.bU(255,18,18,.7)),light:new r.Q1(new r.bU(255,18,18,.7)),hcDark:new r.Q1(new r.bU(255,50,50,1)),hcLight:"#B5200D"},a.kg("minimapError","Minimap marker color for errors.")),hi=g("minimap.warningHighlight",{dark:ne,light:ne,hcDark:re,hcLight:re},a.kg("overviewRuleWarning","Minimap marker color for warnings.")),ci=g("minimap.background",{dark:null,light:null,hcDark:null,hcLight:null},a.kg("minimapBackground","Minimap background color.")),ui=g("minimap.foregroundOpacity",{dark:r.Q1.fromHex("#000f"),light:r.Q1.fromHex("#000f"),hcDark:r.Q1.fromHex("#000f"),hcLight:r.Q1.fromHex("#000f")},a.kg("minimapForegroundOpacity",'Opacity of foreground elements rendered in the minimap. For example, "#000000c0" will render the elements with 75% opacity.')),di=g("minimapSlider.background",{light:Ci(Q,.5),dark:Ci(Q,.5),hcDark:Ci(Q,.5),hcLight:Ci(Q,.5)},a.kg("minimapSliderBackground","Minimap slider background color.")),gi=g("minimapSlider.hoverBackground",{light:Ci(Y,.5),dark:Ci(Y,.5),hcDark:Ci(Y,.5),hcLight:Ci(Y,.5)},a.kg("minimapSliderHoverBackground","Minimap slider background color when hovering.")),fi=g("minimapSlider.activeBackground",{light:Ci(X,.5),dark:Ci(X,.5),hcDark:Ci(X,.5),hcLight:Ci(X,.5)},a.kg("minimapSliderActiveBackground","Minimap slider background color when clicked on.")),pi=g("problemsErrorIcon.foreground",{dark:ee,light:ee,hcDark:ee,hcLight:ee},a.kg("problemsErrorIconForeground","The color used for the problems error icon.")),mi=g("problemsWarningIcon.foreground",{dark:ne,light:ne,hcDark:ne,hcLight:ne},a.kg("problemsWarningIconForeground","The color used for the problems warning icon.")),ki=g("problemsInfoIcon.foreground",{dark:oe,light:oe,hcDark:oe,hcLight:oe},a.kg("problemsInfoIconForeground","The color used for the problems info icon."));g("charts.foreground",{dark:f,light:f,hcDark:f,hcLight:f},a.kg("chartsForeground","The foreground color used in charts.")),g("charts.lines",{dark:Ci(f,.5),light:Ci(f,.5),hcDark:Ci(f,.5),hcLight:Ci(f,.5)},a.kg("chartsLines","The color used for horizontal lines in charts.")),g("charts.red",{dark:ee,light:ee,hcDark:ee,hcLight:ee},a.kg("chartsRed","The red color used in chart visualizations.")),g("charts.blue",{dark:oe,light:oe,hcDark:oe,hcLight:oe},a.kg("chartsBlue","The blue color used in chart visualizations.")),g("charts.yellow",{dark:ne,light:ne,hcDark:ne,hcLight:ne},a.kg("chartsYellow","The yellow color used in chart visualizations.")),g("charts.orange",{dark:si,light:si,hcDark:si,hcLight:si},a.kg("chartsOrange","The orange color used in chart visualizations.")),g("charts.green",{dark:"#89D185",light:"#388A34",hcDark:"#89D185",hcLight:"#374e06"},a.kg("chartsGreen","The green color used in chart visualizations.")),g("charts.purple",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},a.kg("chartsPurple","The purple color used in chart visualizations."));function _i(e,t){return{op:0,value:e,factor:t}}function bi(e,t){return{op:1,value:e,factor:t}}function Ci(e,t){return{op:2,value:e,factor:t}}function vi(...e){return{op:3,values:e}}function yi(e,t,i,n){return{op:4,value:e,background:t,factor:i,transparency:n}}function wi(e,t){if(null!==e)return"string"===typeof e?"#"===e[0]?r.Q1.fromHex(e):t.getColor(e):e instanceof r.Q1?e:"object"===typeof e?function(e,t){var i,n,s;switch(e.op){case 0:return null===(i=wi(e.value,t))||void 0===i?void 0:i.darken(e.factor);case 1:return null===(n=wi(e.value,t))||void 0===n?void 0:n.lighten(e.factor);case 2:return null===(s=wi(e.value,t))||void 0===s?void 0:s.transparent(e.factor);case 3:for(const i of e.values){const e=wi(i,t);if(e)return e}return;case 5:return wi(t.defines(e.if)?e.then:e.else,t);case 4:{const i=wi(e.value,t);if(!i)return;const n=wi(e.background,t);return n?i.isDarkerThan(n)?r.Q1.getLighterColor(i,n,e.factor).transparent(e.transparency):r.Q1.getDarkerColor(i,n,e.factor).transparent(e.transparency):i.transparent(e.factor*e.transparency)}default:throw(0,o.xb)(e)}}(e,t):void 0}const Si="vscode://schemas/workbench-colors",Li=h.O.as(l.F.JSONContribution);Li.registerSchema(Si,d.getColorSchema());const xi=new n.uC((()=>Li.notifySchemaChanged(Si)),200);d.onDidChangeSchema((()=>{xi.isScheduled()||xi.schedule()}))},62192:(e,t,i)=>{i.d(t,{$_:()=>C,HT:()=>m,pU:()=>p});var n=i(20512),r=i(88106),s=i(42464),o=i(59713),a=i(65698),l=i(35819),h=i(23982),c=i(1097),u=i(16974);var d,g;!function(e){e.getDefinition=function(e,t){let i=e.defaults;for(;u.L0.isThemeIcon(i);){const e=f.getIcon(i.id);if(!e)return;i=e.defaults}return i}}(d||(d={})),function(e){e.toJSONObject=function(e){return{weight:e.weight,style:e.style,src:e.src.map((e=>({format:e.format,location:e.location.toString()})))}},e.fromJSONObject=function(e){const t=e=>(0,o.Kg)(e)?e:void 0;if(e&&Array.isArray(e.src)&&e.src.every((e=>(0,o.Kg)(e.format)&&(0,o.Kg)(e.location))))return{weight:t(e.weight),style:t(e.style),src:e.src.map((e=>({format:e.format,location:a.r.parse(e.location)})))}}}(g||(g={}));const f=new class{constructor(){this._onDidChange=new s.vl,this.onDidChange=this._onDidChange.event,this.iconSchema={definitions:{icons:{type:"object",properties:{fontId:{type:"string",description:(0,l.kg)("iconDefinition.fontId","The id of the font to use. If not set, the font that is defined first is used.")},fontCharacter:{type:"string",description:(0,l.kg)("iconDefinition.fontCharacter","The font character associated with the icon definition.")}},additionalProperties:!1,defaultSnippets:[{body:{fontCharacter:"\\\\e030"}}]}},type:"object",properties:{}},this.iconReferenceSchema={type:"string",pattern:`^${r.j3.iconNameExpression}$`,enum:[],enumDescriptions:[]},this.iconsById={},this.iconFontsById={}}registerIcon(e,t,i,n){const r=this.iconsById[e];if(r){if(i&&!r.description){r.description=i,this.iconSchema.properties[e].markdownDescription=`${i} $(${e})`;const t=this.iconReferenceSchema.enum.indexOf(e);-1!==t&&(this.iconReferenceSchema.enumDescriptions[t]=i),this._onDidChange.fire()}return r}const s={id:e,description:i,defaults:t,deprecationMessage:n};this.iconsById[e]=s;const o={$ref:"#/definitions/icons"};return n&&(o.deprecationMessage=n),i&&(o.markdownDescription=`${i}: $(${e})`),this.iconSchema.properties[e]=o,this.iconReferenceSchema.enum.push(e),this.iconReferenceSchema.enumDescriptions.push(i||""),this._onDidChange.fire(),{id:e}}getIcons(){return Object.keys(this.iconsById).map((e=>this.iconsById[e]))}getIcon(e){return this.iconsById[e]}getIconSchema(){return this.iconSchema}toString(){const e=(e,t)=>e.id.localeCompare(t.id),t=e=>{for(;u.L0.isThemeIcon(e.defaults);)e=this.iconsById[e.defaults.id];return`codicon codicon-${e?e.id:""}`},i=[];i.push("| preview | identifier | default codicon ID | description"),i.push("| ----------- | --------------------------------- | --------------------------------- | --------------------------------- |");const n=Object.keys(this.iconsById).map((e=>this.iconsById[e]));for(const r of n.filter((e=>!!e.description)).sort(e))i.push(`|<i class="${t(r)}"></i>|${r.id}|${u.L0.isThemeIcon(r.defaults)?r.defaults.id:r.id}|${r.description||""}|`);i.push("| preview | identifier "),i.push("| ----------- | --------------------------------- |");for(const r of n.filter((e=>!u.L0.isThemeIcon(e.defaults))).sort(e))i.push(`|<i class="${t(r)}"></i>|${r.id}|`);return i.join("\n")}};function p(e,t,i,n){return f.registerIcon(e,t,i,n)}function m(){return f}c.O.add("base.contributions.icons",f),function(){for(const e of r.W6.getAll())f.registerIcon(e.id,e.definition,e.description)}();const k="vscode://schemas/icons",_=c.O.as(h.F.JSONContribution);_.registerSchema(k,f.getIconSchema());const b=new n.uC((()=>_.notifySchemaChanged(k)),200);f.onDidChange((()=>{b.isScheduled()||b.schedule()}));const C=p("widget-close",r.W6.close,(0,l.kg)("widgetClose","Icon for the close action in widgets."));p("goto-previous-location",r.W6.arrowUp,(0,l.kg)("previousChangeIcon","Icon for goto previous editor location.")),p("goto-next-location",r.W6.arrowDown,(0,l.kg)("nextChangeIcon","Icon for goto next editor location.")),u.L0.modify(r.W6.sync,"spin"),u.L0.modify(r.W6.loading,"spin")},46255:(e,t,i)=>{i.d(t,{DD:()=>a,Gd:()=>o,IN:()=>l,KC:()=>r,kg:()=>c});var n=i(44824);function r(e,t){const i=Object.create(null);for(const r in t){const s=t[r];s&&(i[r]=(0,n.n__)(s,e))}return i}function s(e,t,i){function n(){const n=r(e.getColorTheme(),t);"function"===typeof i?i(n):i.style(n)}return n(),e.onDidColorThemeChange(n)}function o(e,t,i){return s(t,{badgeBackground:(null===i||void 0===i?void 0:i.badgeBackground)||n.WMx,badgeForeground:(null===i||void 0===i?void 0:i.badgeForeground)||n.zRE,badgeBorder:n.b1q},e)}function a(e,t,i){return s(t,Object.assign(Object.assign({},l),i||{}),e)}const l={listFocusBackground:n.VFX,listFocusForeground:n.efJ,listFocusOutline:n.p7Y,listActiveSelectionBackground:n.Rjz,listActiveSelectionForeground:n.GVV,listActiveSelectionIconForeground:n.fED,listFocusAndSelectionOutline:n.gtq,listFocusAndSelectionBackground:n.Rjz,listFocusAndSelectionForeground:n.GVV,listInactiveSelectionBackground:n.uNx,listInactiveSelectionIconForeground:n.C9U,listInactiveSelectionForeground:n.f4y,listInactiveFocusBackground:n.CQ3,listInactiveFocusOutline:n.ijf,listHoverBackground:n.lO1,listHoverForeground:n.QRv,listDropBackground:n.iAJ,listSelectionOutline:n.buw,listHoverOutline:n.buw,listFilterWidgetBackground:n.pnl,listFilterWidgetOutline:n.fiM,listFilterWidgetNoMatchesOutline:n.P9Z,listFilterWidgetShadow:n.H8q,treeIndentGuidesStroke:n.U4U,tableColumnsBorder:n.k5u,tableOddRowsBackgroundColor:n.sbQ,inputActiveOptionBorder:n.uNK,inputActiveOptionForeground:n.$$0,inputActiveOptionBackground:n.c1f,inputBackground:n.L4c,inputForeground:n.cws,inputBorder:n.Zgs,inputValidationInfoBackground:n.I$A,inputValidationInfoForeground:n.L9Z,inputValidationInfoBorder:n.YSW,inputValidationWarningBackground:n.ULt,inputValidationWarningForeground:n.T5N,inputValidationWarningBorder:n.C1n,inputValidationErrorBackground:n._$n,inputValidationErrorForeground:n.h9z,inputValidationErrorBorder:n.eYZ},h={shadowColor:n.f9l,borderColor:n.g$2,foregroundColor:n.dd_,backgroundColor:n.c6Y,selectionForegroundColor:n.pmr,selectionBackgroundColor:n.Ux$,selectionBorderColor:n.SNb,separatorColor:n.D7X,scrollbarShadow:n.bXl,scrollbarSliderBackground:n.gnV,scrollbarSliderHoverBackground:n.cI_,scrollbarSliderActiveBackground:n.mhZ};function c(e,t,i){return s(t,Object.assign(Object.assign({},h),i),e)}},59281:(e,t,i)=>{var n;function r(e){return e===n.HIGH_CONTRAST_DARK||e===n.HIGH_CONTRAST_LIGHT}function s(e){return e===n.DARK||e===n.HIGH_CONTRAST_DARK}i.d(t,{Bb:()=>r,HD:()=>s,zM:()=>n}),function(e){e.DARK="dark",e.LIGHT="light",e.HIGH_CONTRAST_DARK="hcDark",e.HIGH_CONTRAST_LIGHT="hcLight"}(n||(n={}))},16974:(e,t,i)=>{i.d(t,{Fd:()=>f,Gy:()=>h,L0:()=>u,Pz:()=>g,Yf:()=>d,lR:()=>k,zy:()=>m});var n=i(88106),r=i(42464),s=i(55808),o=i(34029),a=i(1097),l=i(59281);const h=(0,o.u1)("themeService");var c,u;function d(e){return{id:e}}function g(e){switch(e){case l.zM.DARK:return"vs-dark";case l.zM.HIGH_CONTRAST_DARK:return"hc-black";case l.zM.HIGH_CONTRAST_LIGHT:return"hc-light";default:return"vs"}}!function(e){e.isThemeColor=function(e){return e&&"object"===typeof e&&"string"===typeof e.id}}(c||(c={})),function(e){e.isThemeIcon=function(e){return e&&"object"===typeof e&&"string"===typeof e.id&&("undefined"===typeof e.color||c.isThemeColor(e.color))};const t=new RegExp(`^\\$\\((${n.j3.iconNameExpression}(?:${n.j3.iconModifierExpression})?)\\)$`);e.fromString=function(e){const i=t.exec(e);if(!i)return;const[,n]=i;return{id:n}},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){var i,n;return e.id===t.id&&(null===(i=e.color)||void 0===i?void 0:i.id)===(null===(n=t.color)||void 0===n?void 0:n.id)},e.asThemeIcon=function(e,t){return{id:e.id,color:t?d(t):void 0}},e.asClassNameArray=n.j3.asClassNameArray,e.asClassName=n.j3.asClassName,e.asCSSSelector=n.j3.asCSSSelector}(u||(u={}));const f={ThemingContribution:"base.contributions.theming"};const p=new class{constructor(){this.themingParticipants=[],this.themingParticipants=[],this.onThemingParticipantAddedEmitter=new r.vl}onColorThemeChange(e){return this.themingParticipants.push(e),this.onThemingParticipantAddedEmitter.fire(e),(0,s.s)((()=>{const t=this.themingParticipants.indexOf(e);this.themingParticipants.splice(t,1)}))}getThemingParticipants(){return this.themingParticipants}};function m(e){return p.onColorThemeChange(e)}a.O.add(f.ThemingContribution,p);class k extends s.jG{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(){}}},33105:(e,t,i)=>{i.d(t,{$D:()=>n,I_:()=>s,To:()=>r,Ym:()=>o});const n=(0,i(34029).u1)("undoRedoService");class r{constructor(e,t){this.resource=e,this.elements=t}}class s{constructor(){this.id=s._ID++,this.order=1}nextOrder(){return 0===this.id?0:this.order++}}s._ID=0,s.None=new s;class o{constructor(){this.id=o._ID++,this.order=1}nextOrder(){return 0===this.id?0:this.order++}}o._ID=0,o.None=new o},53166:(e,t,i)=>{var n=i(75909),r=i(55808),s=i(46442),o=i(77721),a=i(35819),l=i(90301),h=i(62848),c=i(74349),u=i(33105),d=function(e,t,i,n){var r,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"===typeof Reflect&&"function"===typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,i,o):r(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o},g=function(e,t){return function(i,n){t(i,n,e)}},f=function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{l(n.next(e))}catch(t){s(t)}}function a(e){try{l(n.throw(e))}catch(t){s(t)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(o,a)}l((n=n.apply(e,t||[])).next())}))};const p=!1;function m(e){return e.scheme===s.ny.file?e.fsPath:e.path}let k=0;class _{constructor(e,t,i,n,r,s,o){this.id=++k,this.type=0,this.actual=e,this.label=e.label,this.confirmBeforeUndo=e.confirmBeforeUndo||!1,this.resourceLabel=t,this.strResource=i,this.resourceLabels=[this.resourceLabel],this.strResources=[this.strResource],this.groupId=n,this.groupOrder=r,this.sourceId=s,this.sourceOrder=o,this.isValid=!0}setValid(e){this.isValid=e}toString(){return`[id:${this.id}] [group:${this.groupId}] [${this.isValid?" VALID":"INVALID"}] ${this.actual.constructor.name} - ${this.actual}`}}class b{constructor(e,t){this.resourceLabel=e,this.reason=t}}class C{constructor(){this.elements=new Map}createMessage(){const e=[],t=[];for(const[,n]of this.elements){(0===n.reason?e:t).push(n.resourceLabel)}const i=[];return e.length>0&&i.push(a.kg({key:"externalRemoval",comment:["{0} is a list of filenames"]},"The following files have been closed and modified on disk: {0}.",e.join(", "))),t.length>0&&i.push(a.kg({key:"noParallelUniverses",comment:["{0} is a list of filenames"]},"The following files have been modified in an incompatible way: {0}.",t.join(", "))),i.join("\n")}get size(){return this.elements.size}has(e){return this.elements.has(e)}set(e,t){this.elements.set(e,t)}delete(e){return this.elements.delete(e)}}class v{constructor(e,t,i,n,r,s,o){this.id=++k,this.type=1,this.actual=e,this.label=e.label,this.confirmBeforeUndo=e.confirmBeforeUndo||!1,this.resourceLabels=t,this.strResources=i,this.groupId=n,this.groupOrder=r,this.sourceId=s,this.sourceOrder=o,this.removedResources=null,this.invalidatedResources=null}canSplit(){return"function"===typeof this.actual.split}removeResource(e,t,i){this.removedResources||(this.removedResources=new C),this.removedResources.has(t)||this.removedResources.set(t,new b(e,i))}setValid(e,t,i){i?this.invalidatedResources&&(this.invalidatedResources.delete(t),0===this.invalidatedResources.size&&(this.invalidatedResources=null)):(this.invalidatedResources||(this.invalidatedResources=new C),this.invalidatedResources.has(t)||this.invalidatedResources.set(t,new b(e,0)))}toString(){return`[id:${this.id}] [group:${this.groupId}] [${this.invalidatedResources?"INVALID":" VALID"}] ${this.actual.constructor.name} - ${this.actual}`}}class y{constructor(e,t){this.resourceLabel=e,this.strResource=t,this._past=[],this._future=[],this.locked=!1,this.versionId=1}dispose(){for(const e of this._past)1===e.type&&e.removeResource(this.resourceLabel,this.strResource,0);for(const e of this._future)1===e.type&&e.removeResource(this.resourceLabel,this.strResource,0);this.versionId++}toString(){const e=[];e.push(`* ${this.strResource}:`);for(let t=0;t<this._past.length;t++)e.push(` * [UNDO] ${this._past[t]}`);for(let t=this._future.length-1;t>=0;t--)e.push(` * [REDO] ${this._future[t]}`);return e.join("\n")}flushAllElements(){this._past=[],this._future=[],this.versionId++}_setElementValidFlag(e,t){1===e.type?e.setValid(this.resourceLabel,this.strResource,t):e.setValid(t)}setElementsValidFlag(e,t){for(const i of this._past)t(i.actual)&&this._setElementValidFlag(i,e);for(const i of this._future)t(i.actual)&&this._setElementValidFlag(i,e)}pushElement(e){for(const t of this._future)1===t.type&&t.removeResource(this.resourceLabel,this.strResource,1);this._future=[],this._past.push(e),this.versionId++}createSnapshot(e){const t=[];for(let i=0,n=this._past.length;i<n;i++)t.push(this._past[i].id);for(let i=this._future.length-1;i>=0;i--)t.push(this._future[i].id);return new u.To(e,t)}restoreSnapshot(e){const t=e.elements.length;let i=!0,n=0,r=-1;for(let o=0,a=this._past.length;o<a;o++,n++){const s=this._past[o];i&&(n>=t||s.id!==e.elements[n])&&(i=!1,r=0),i||1!==s.type||s.removeResource(this.resourceLabel,this.strResource,0)}let s=-1;for(let o=this._future.length-1;o>=0;o--,n++){const r=this._future[o];i&&(n>=t||r.id!==e.elements[n])&&(i=!1,s=o),i||1!==r.type||r.removeResource(this.resourceLabel,this.strResource,0)}-1!==r&&(this._past=this._past.slice(0,r)),-1!==s&&(this._future=this._future.slice(s+1)),this.versionId++}getElements(){const e=[],t=[];for(const i of this._past)e.push(i.actual);for(const i of this._future)t.push(i.actual);return{past:e,future:t}}getClosestPastElement(){return 0===this._past.length?null:this._past[this._past.length-1]}getSecondClosestPastElement(){return this._past.length<2?null:this._past[this._past.length-2]}getClosestFutureElement(){return 0===this._future.length?null:this._future[this._future.length-1]}hasPastElements(){return this._past.length>0}hasFutureElements(){return this._future.length>0}splitPastWorkspaceElement(e,t){for(let i=this._past.length-1;i>=0;i--)if(this._past[i]===e){t.has(this.strResource)?this._past[i]=t.get(this.strResource):this._past.splice(i,1);break}this.versionId++}splitFutureWorkspaceElement(e,t){for(let i=this._future.length-1;i>=0;i--)if(this._future[i]===e){t.has(this.strResource)?this._future[i]=t.get(this.strResource):this._future.splice(i,1);break}this.versionId++}moveBackward(e){this._past.pop(),this._future.push(e),this.versionId++}moveForward(e){this._future.pop(),this._past.push(e),this.versionId++}}class w{constructor(e){this.editStacks=e,this._versionIds=[];for(let t=0,i=this.editStacks.length;t<i;t++)this._versionIds[t]=this.editStacks[t].versionId}isValid(){for(let e=0,t=this.editStacks.length;e<t;e++)if(this._versionIds[e]!==this.editStacks[e].versionId)return!1;return!0}}const S=new y("","");S.locked=!0;let L=class{constructor(e,t){this._dialogService=e,this._notificationService=t,this._editStacks=new Map,this._uriComparisonKeyComputers=[]}getUriComparisonKey(e){for(const t of this._uriComparisonKeyComputers)if(t[0]===e.scheme)return t[1].getComparisonKey(e);return e.toString()}_print(e){const t=[];for(const i of this._editStacks)t.push(i[1].toString())}pushElement(e,t=u.I_.None,i=u.Ym.None){if(0===e.type){const n=m(e.resource),r=this.getUriComparisonKey(e.resource);this._pushElement(new _(e,n,r,t.id,t.nextOrder(),i.id,i.nextOrder()))}else{const n=new Set,r=[],s=[];for(const t of e.resources){const e=m(t),i=this.getUriComparisonKey(t);n.has(i)||(n.add(i),r.push(e),s.push(i))}1===r.length?this._pushElement(new _(e,r[0],s[0],t.id,t.nextOrder(),i.id,i.nextOrder())):this._pushElement(new v(e,r,s,t.id,t.nextOrder(),i.id,i.nextOrder()))}}_pushElement(e){for(let t=0,i=e.strResources.length;t<i;t++){const i=e.resourceLabels[t],n=e.strResources[t];let r;this._editStacks.has(n)?r=this._editStacks.get(n):(r=new y(i,n),this._editStacks.set(n,r)),r.pushElement(e)}}getLastElement(e){const t=this.getUriComparisonKey(e);if(this._editStacks.has(t)){const e=this._editStacks.get(t);if(e.hasFutureElements())return null;const i=e.getClosestPastElement();return i?i.actual:null}return null}_splitPastWorkspaceElement(e,t){const i=e.actual.split(),n=new Map;for(const r of i){const e=m(r.resource),t=this.getUriComparisonKey(r.resource),i=new _(r,e,t,0,0,0,0);n.set(i.strResource,i)}for(const r of e.strResources){if(t&&t.has(r))continue;this._editStacks.get(r).splitPastWorkspaceElement(e,n)}}_splitFutureWorkspaceElement(e,t){const i=e.actual.split(),n=new Map;for(const r of i){const e=m(r.resource),t=this.getUriComparisonKey(r.resource),i=new _(r,e,t,0,0,0,0);n.set(i.strResource,i)}for(const r of e.strResources){if(t&&t.has(r))continue;this._editStacks.get(r).splitFutureWorkspaceElement(e,n)}}removeElements(e){const t="string"===typeof e?e:this.getUriComparisonKey(e);if(this._editStacks.has(t)){this._editStacks.get(t).dispose(),this._editStacks.delete(t)}}setElementsValidFlag(e,t,i){const n=this.getUriComparisonKey(e);if(this._editStacks.has(n)){this._editStacks.get(n).setElementsValidFlag(t,i)}}createSnapshot(e){const t=this.getUriComparisonKey(e);if(this._editStacks.has(t)){return this._editStacks.get(t).createSnapshot(e)}return new u.To(e,[])}restoreSnapshot(e){const t=this.getUriComparisonKey(e.resource);if(this._editStacks.has(t)){const i=this._editStacks.get(t);i.restoreSnapshot(e),i.hasPastElements()||i.hasFutureElements()||(i.dispose(),this._editStacks.delete(t))}}getElements(e){const t=this.getUriComparisonKey(e);if(this._editStacks.has(t)){return this._editStacks.get(t).getElements()}return{past:[],future:[]}}_findClosestUndoElementWithSource(e){if(!e)return[null,null];let t=null,i=null;for(const[n,r]of this._editStacks){const s=r.getClosestPastElement();s&&(s.sourceId===e&&(!t||s.sourceOrder>t.sourceOrder)&&(t=s,i=n))}return[t,i]}canUndo(e){if(e instanceof u.Ym){const[,t]=this._findClosestUndoElementWithSource(e.id);return!!t}const t=this.getUriComparisonKey(e);if(this._editStacks.has(t)){return this._editStacks.get(t).hasPastElements()}return!1}_onError(e,t){(0,n.dz)(e);for(const i of t.strResources)this.removeElements(i);this._notificationService.error(e)}_acquireLocks(e){for(const t of e.editStacks)if(t.locked)throw new Error("Cannot acquire edit stack lock");for(const t of e.editStacks)t.locked=!0;return()=>{for(const t of e.editStacks)t.locked=!1}}_safeInvokeWithLocks(e,t,i,n,r){const s=this._acquireLocks(i);let o;try{o=t()}catch(a){return s(),n.dispose(),this._onError(a,e)}return o?o.then((()=>(s(),n.dispose(),r())),(t=>(s(),n.dispose(),this._onError(t,e)))):(s(),n.dispose(),r())}_invokeWorkspacePrepare(e){return f(this,void 0,void 0,(function*(){if("undefined"===typeof e.actual.prepareUndoRedo)return r.jG.None;const t=e.actual.prepareUndoRedo();return"undefined"===typeof t?r.jG.None:t}))}_invokeResourcePrepare(e,t){if(1!==e.actual.type||"undefined"===typeof e.actual.prepareUndoRedo)return t(r.jG.None);const i=e.actual.prepareUndoRedo();return i?(0,r.Xm)(i)?t(i):i.then((e=>t(e))):t(r.jG.None)}_getAffectedEditStacks(e){const t=[];for(const i of e.strResources)t.push(this._editStacks.get(i)||S);return new w(t)}_tryToSplitAndUndo(e,t,i,n){if(t.canSplit())return this._splitPastWorkspaceElement(t,i),this._notificationService.warn(n),new x(this._undo(e,0,!0));for(const r of t.strResources)this.removeElements(r);return this._notificationService.warn(n),new x}_checkWorkspaceUndo(e,t,i,n){if(t.removedResources)return this._tryToSplitAndUndo(e,t,t.removedResources,a.kg({key:"cannotWorkspaceUndo",comment:["{0} is a label for an operation. {1} is another message."]},"Could not undo '{0}' across all files. {1}",t.label,t.removedResources.createMessage()));if(n&&t.invalidatedResources)return this._tryToSplitAndUndo(e,t,t.invalidatedResources,a.kg({key:"cannotWorkspaceUndo",comment:["{0} is a label for an operation. {1} is another message."]},"Could not undo '{0}' across all files. {1}",t.label,t.invalidatedResources.createMessage()));const r=[];for(const o of i.editStacks)o.getClosestPastElement()!==t&&r.push(o.resourceLabel);if(r.length>0)return this._tryToSplitAndUndo(e,t,null,a.kg({key:"cannotWorkspaceUndoDueToChanges",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not undo '{0}' across all files because changes were made to {1}",t.label,r.join(", ")));const s=[];for(const o of i.editStacks)o.locked&&s.push(o.resourceLabel);return s.length>0?this._tryToSplitAndUndo(e,t,null,a.kg({key:"cannotWorkspaceUndoDueToInProgressUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not undo '{0}' across all files because there is already an undo or redo operation running on {1}",t.label,s.join(", "))):i.isValid()?null:this._tryToSplitAndUndo(e,t,null,a.kg({key:"cannotWorkspaceUndoDueToInMeantimeUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not undo '{0}' across all files because an undo or redo operation occurred in the meantime",t.label))}_workspaceUndo(e,t,i){const n=this._getAffectedEditStacks(t),r=this._checkWorkspaceUndo(e,t,n,!1);return r?r.returnValue:this._confirmAndExecuteWorkspaceUndo(e,t,n,i)}_isPartOfUndoGroup(e){if(!e.groupId)return!1;for(const[,t]of this._editStacks){const i=t.getClosestPastElement();if(i){if(i===e){const i=t.getSecondClosestPastElement();if(i&&i.groupId===e.groupId)return!0}if(i.groupId===e.groupId)return!0}}return!1}_confirmAndExecuteWorkspaceUndo(e,t,i,n){return f(this,void 0,void 0,(function*(){if(t.canSplit()&&!this._isPartOfUndoGroup(t)){const r=yield this._dialogService.show(o.A.Info,a.kg("confirmWorkspace","Would you like to undo '{0}' across all files?",t.label),[a.kg({key:"ok",comment:["{0} denotes a number that is > 1"]},"Undo in {0} Files",i.editStacks.length),a.kg("nok","Undo this File"),a.kg("cancel","Cancel")],{cancelId:2});if(2===r.choice)return;if(1===r.choice)return this._splitPastWorkspaceElement(t,null),this._undo(e,0,!0);const s=this._checkWorkspaceUndo(e,t,i,!1);if(s)return s.returnValue;n=!0}let r;try{r=yield this._invokeWorkspacePrepare(t)}catch(l){return this._onError(l,t)}const s=this._checkWorkspaceUndo(e,t,i,!0);if(s)return r.dispose(),s.returnValue;for(const e of i.editStacks)e.moveBackward(t);return this._safeInvokeWithLocks(t,(()=>t.actual.undo()),i,r,(()=>this._continueUndoInGroup(t.groupId,n)))}))}_resourceUndo(e,t,i){if(t.isValid){if(!e.locked)return this._invokeResourcePrepare(t,(n=>(e.moveBackward(t),this._safeInvokeWithLocks(t,(()=>t.actual.undo()),new w([e]),n,(()=>this._continueUndoInGroup(t.groupId,i))))));{const e=a.kg({key:"cannotResourceUndoDueToInProgressUndoRedo",comment:["{0} is a label for an operation."]},"Could not undo '{0}' because there is already an undo or redo operation running.",t.label);this._notificationService.warn(e)}}else e.flushAllElements()}_findClosestUndoElementInGroup(e){if(!e)return[null,null];let t=null,i=null;for(const[n,r]of this._editStacks){const s=r.getClosestPastElement();s&&(s.groupId===e&&(!t||s.groupOrder>t.groupOrder)&&(t=s,i=n))}return[t,i]}_continueUndoInGroup(e,t){if(!e)return;const[,i]=this._findClosestUndoElementInGroup(e);return i?this._undo(i,0,t):void 0}undo(e){if(e instanceof u.Ym){const[,t]=this._findClosestUndoElementWithSource(e.id);return t?this._undo(t,e.id,!1):void 0}return"string"===typeof e?this._undo(e,0,!1):this._undo(this.getUriComparisonKey(e),0,!1)}_undo(e,t=0,i){if(!this._editStacks.has(e))return;const n=this._editStacks.get(e),r=n.getClosestPastElement();if(!r)return;if(r.groupId){const[e,n]=this._findClosestUndoElementInGroup(r.groupId);if(r!==e&&n)return this._undo(n,t,i)}if((r.sourceId!==t||r.confirmBeforeUndo)&&!i)return this._confirmAndContinueUndo(e,t,r);try{return 1===r.type?this._workspaceUndo(e,r,i):this._resourceUndo(n,r,i)}finally{p}}_confirmAndContinueUndo(e,t,i){return f(this,void 0,void 0,(function*(){if(1!==(yield this._dialogService.show(o.A.Info,a.kg("confirmDifferentSource","Would you like to undo '{0}'?",i.label),[a.kg("confirmDifferentSource.yes","Yes"),a.kg("confirmDifferentSource.no","No")],{cancelId:1})).choice)return this._undo(e,t,!0)}))}_findClosestRedoElementWithSource(e){if(!e)return[null,null];let t=null,i=null;for(const[n,r]of this._editStacks){const s=r.getClosestFutureElement();s&&(s.sourceId===e&&(!t||s.sourceOrder<t.sourceOrder)&&(t=s,i=n))}return[t,i]}canRedo(e){if(e instanceof u.Ym){const[,t]=this._findClosestRedoElementWithSource(e.id);return!!t}const t=this.getUriComparisonKey(e);if(this._editStacks.has(t)){return this._editStacks.get(t).hasFutureElements()}return!1}_tryToSplitAndRedo(e,t,i,n){if(t.canSplit())return this._splitFutureWorkspaceElement(t,i),this._notificationService.warn(n),new x(this._redo(e));for(const r of t.strResources)this.removeElements(r);return this._notificationService.warn(n),new x}_checkWorkspaceRedo(e,t,i,n){if(t.removedResources)return this._tryToSplitAndRedo(e,t,t.removedResources,a.kg({key:"cannotWorkspaceRedo",comment:["{0} is a label for an operation. {1} is another message."]},"Could not redo '{0}' across all files. {1}",t.label,t.removedResources.createMessage()));if(n&&t.invalidatedResources)return this._tryToSplitAndRedo(e,t,t.invalidatedResources,a.kg({key:"cannotWorkspaceRedo",comment:["{0} is a label for an operation. {1} is another message."]},"Could not redo '{0}' across all files. {1}",t.label,t.invalidatedResources.createMessage()));const r=[];for(const o of i.editStacks)o.getClosestFutureElement()!==t&&r.push(o.resourceLabel);if(r.length>0)return this._tryToSplitAndRedo(e,t,null,a.kg({key:"cannotWorkspaceRedoDueToChanges",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not redo '{0}' across all files because changes were made to {1}",t.label,r.join(", ")));const s=[];for(const o of i.editStacks)o.locked&&s.push(o.resourceLabel);return s.length>0?this._tryToSplitAndRedo(e,t,null,a.kg({key:"cannotWorkspaceRedoDueToInProgressUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not redo '{0}' across all files because there is already an undo or redo operation running on {1}",t.label,s.join(", "))):i.isValid()?null:this._tryToSplitAndRedo(e,t,null,a.kg({key:"cannotWorkspaceRedoDueToInMeantimeUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not redo '{0}' across all files because an undo or redo operation occurred in the meantime",t.label))}_workspaceRedo(e,t){const i=this._getAffectedEditStacks(t),n=this._checkWorkspaceRedo(e,t,i,!1);return n?n.returnValue:this._executeWorkspaceRedo(e,t,i)}_executeWorkspaceRedo(e,t,i){return f(this,void 0,void 0,(function*(){let n;try{n=yield this._invokeWorkspacePrepare(t)}catch(s){return this._onError(s,t)}const r=this._checkWorkspaceRedo(e,t,i,!0);if(r)return n.dispose(),r.returnValue;for(const e of i.editStacks)e.moveForward(t);return this._safeInvokeWithLocks(t,(()=>t.actual.redo()),i,n,(()=>this._continueRedoInGroup(t.groupId)))}))}_resourceRedo(e,t){if(t.isValid){if(!e.locked)return this._invokeResourcePrepare(t,(i=>(e.moveForward(t),this._safeInvokeWithLocks(t,(()=>t.actual.redo()),new w([e]),i,(()=>this._continueRedoInGroup(t.groupId))))));{const e=a.kg({key:"cannotResourceRedoDueToInProgressUndoRedo",comment:["{0} is a label for an operation."]},"Could not redo '{0}' because there is already an undo or redo operation running.",t.label);this._notificationService.warn(e)}}else e.flushAllElements()}_findClosestRedoElementInGroup(e){if(!e)return[null,null];let t=null,i=null;for(const[n,r]of this._editStacks){const s=r.getClosestFutureElement();s&&(s.groupId===e&&(!t||s.groupOrder<t.groupOrder)&&(t=s,i=n))}return[t,i]}_continueRedoInGroup(e){if(!e)return;const[,t]=this._findClosestRedoElementInGroup(e);return t?this._redo(t):void 0}redo(e){if(e instanceof u.Ym){const[,t]=this._findClosestRedoElementWithSource(e.id);return t?this._redo(t):void 0}return"string"===typeof e?this._redo(e):this._redo(this.getUriComparisonKey(e))}_redo(e){if(!this._editStacks.has(e))return;const t=this._editStacks.get(e),i=t.getClosestFutureElement();if(i){if(i.groupId){const[e,t]=this._findClosestRedoElementInGroup(i.groupId);if(i!==e&&t)return this._redo(t)}try{return 1===i.type?this._workspaceRedo(e,i):this._resourceRedo(t,i)}finally{p}}}};L=d([g(0,l.X),g(1,c.Ot)],L);class x{constructor(e){this.returnValue=e}}(0,h.v)(u.$D,L)},86377:(e,t,i)=>{i.d(t,{Q_:()=>a,VR:()=>s,jB:()=>o,kF:()=>h,mX:()=>l});var n=i(35819),r=(i(14094),i(65698));const s=(0,i(34029).u1)("contextService");function o(e){const t=e;return"string"===typeof(null===t||void 0===t?void 0:t.id)&&r.r.isUri(t.uri)}function a(e){return e.configuration?{id:e.id,configPath:e.configuration}:1===e.folders.length?{id:e.id,uri:e.folders[0].uri}:void 0}class l{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 h="code-workspace";(0,n.kg)("codeWorkspace","Code Workspace")},25555:(e,t,i)=>{i.d(t,{L:()=>n});const n=(0,i(34029).u1)("workspaceTrustManagementService")}}]);