@emailmaker/emailmaker 1.0.107-dev.3 → 1.0.107-dev.4

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 (325) hide show
  1. package/README.md +1 -1
  2. package/cli/dist/lib/cli/project.js +2 -16
  3. package/cli/dist/lib/config.js +20 -29
  4. package/cli/dist/lib/local-test.js +3 -19
  5. package/cli/dist/lib/paths.js +11 -0
  6. package/cli/dist/lib/resolveNpmSpawn.d.ts +20 -0
  7. package/cli/dist/lib/resolveNpmSpawn.js +71 -0
  8. package/cli/dist/lib/template-engine/context/pluginPackageJsonData.js +21 -19
  9. package/cli/dist/lib/template-engine/context/standVitePackageJsonData.js +7 -8
  10. package/cli/dist/lib/template-engine/resolveVariantDir.d.ts +5 -1
  11. package/cli/dist/lib/template-engine/resolveVariantDir.js +22 -0
  12. package/cli/dist/lib/templates/shared/i18n.js +2 -2
  13. package/cli/dist/lib/templates/shared/paths.js +3 -4
  14. package/cli/dist/lib/types/package-config.d.ts +1 -0
  15. package/cli/lib/cli/project.ts +2 -18
  16. package/cli/lib/config.ts +19 -30
  17. package/cli/lib/local-test.ts +3 -22
  18. package/cli/lib/paths.ts +15 -0
  19. package/cli/lib/resolveNpmSpawn.ts +72 -0
  20. package/cli/lib/template-engine/buildStandIndexHtml.test.ts +1 -0
  21. package/cli/lib/template-engine/context/pluginPackageJsonData.ts +23 -23
  22. package/cli/lib/template-engine/context/standVitePackageJsonData.ts +7 -12
  23. package/cli/lib/template-engine/pluginEtaParity.test.ts +1 -0
  24. package/cli/lib/template-engine/resolveVariantDir.ts +22 -0
  25. package/cli/lib/template-engine/standAdvancedViteDevHostEta.test.ts +4 -3
  26. package/cli/lib/template-engine/standWebpackDevHostEta.test.ts +7 -6
  27. package/cli/lib/templates/shared/i18n.ts +2 -2
  28. package/cli/lib/templates/shared/paths.ts +3 -4
  29. package/cli/lib/types/package-config.ts +1 -0
  30. package/cli/package.json +1 -1
  31. package/cli/project-templates/plugin/assets/vite/{plugin-build.config.mjs → plugin-build.config.ts} +7 -5
  32. package/cli/project-templates/plugin/assets/vite/{sandbox-build.config.mjs → sandbox-build.config.ts} +7 -5
  33. package/cli/project-templates/plugin/assets/webpack/{plugin-build.legacy.module.cjs → plugin-build.legacy.module.ts} +20 -7
  34. package/cli/project-templates/plugin/assets/webpack/{plugin-build.legacy.umd.cjs → plugin-build.legacy.umd.ts} +20 -7
  35. package/cli/project-templates/plugin/assets/webpack/{plugin-build.modern.module.cjs → plugin-build.modern.module.ts} +9 -4
  36. package/cli/project-templates/plugin/assets/webpack/{plugin-build.modern.umd.cjs → plugin-build.modern.umd.ts} +9 -4
  37. package/cli/project-templates/plugin/assets/webpack/{sandbox-build.config.cjs → sandbox-build.config.ts} +13 -3
  38. package/cli/project-templates/plugin/bundler-vite/release.html.eta +1 -0
  39. package/cli/project-templates/plugin/bundler-webpack/public/release.html.eta +1 -0
  40. package/cli/project-templates/plugin/shared-base/public/demo/product-1.svg +10 -0
  41. package/cli/project-templates/plugin/shared-base/public/demo/product-2.svg +10 -0
  42. package/cli/project-templates/plugin/shared-base/scripts/build-runner.ts +22 -0
  43. package/cli/project-templates/plugin/shared-base/scripts/build-types.ts +17 -0
  44. package/cli/project-templates/plugin/shared-base/scripts/clean.ts +16 -0
  45. package/cli/project-templates/plugin/shared-base/scripts/dev-runner.ts +52 -0
  46. package/cli/project-templates/plugin/shared-base/scripts/npmRun.ts +61 -0
  47. package/cli/project-templates/plugin/shared-base/scripts/release-runner.ts +18 -0
  48. package/cli/project-templates/plugin/shared-base/scripts/scriptRuntime.ts +10 -0
  49. package/cli/project-templates/plugin/shared-base/src/dev/hostApp.tsx.eta +1 -0
  50. package/cli/project-templates/plugin/shared-base/src/dev-release.tsx.eta +1 -0
  51. package/cli/project-templates/plugin/shared-base/src/dev.tsx.eta +1 -1
  52. package/cli/project-templates/shared/partials/plugin-dev-host-app-advanced.eta +93 -0
  53. package/cli/project-templates/shared/partials/plugin-dev-host-app-minimal.eta +54 -0
  54. package/cli/project-templates/shared/partials/plugin-dev-tsx-advanced.eta +3 -2
  55. package/cli/project-templates/shared/partials/plugin-dev-tsx-debug.eta +18 -0
  56. package/cli/project-templates/shared/partials/plugin-dev-tsx-release.eta +33 -0
  57. package/cli/project-templates/shared/partials/plugin-dev-tsx-runtime-helpers.eta +8 -8
  58. package/cli/project-templates/shared/partials/plugin-index-ts.eta +0 -1
  59. package/cli/project-templates/shared/partials/plugin-vite-dev-host.eta +9 -5
  60. package/cli/project-templates/shared/partials/plugin-vite-plugin-build.eta +7 -5
  61. package/cli/project-templates/shared/partials/plugin-vite-release-html.eta +12 -0
  62. package/cli/project-templates/shared/partials/plugin-vite-sandbox-build.eta +7 -5
  63. package/cli/project-templates/shared/partials/plugin-webpack-dev-host-legacy.eta +12 -5
  64. package/cli/project-templates/shared/partials/plugin-webpack-dev-host-modern.eta +13 -6
  65. package/cli/project-templates/shared/partials/plugin-webpack-release-html.eta +12 -0
  66. package/cli/project-templates/shared/partials/plugin-webpack-sandbox-build.eta +13 -3
  67. package/cli/project-templates/shared/partials/plugin-wp-legacy-module.eta +28 -10
  68. package/cli/project-templates/shared/partials/plugin-wp-legacy-umd.eta +28 -10
  69. package/cli/project-templates/shared/partials/plugin-wp-modern-module.eta +9 -4
  70. package/cli/project-templates/shared/partials/plugin-wp-modern-umd.eta +9 -4
  71. package/cli/project-templates/shared/partials/stand-dev-host-vite-memory.eta +3 -3
  72. package/cli/project-templates/shared/partials/stand-dev-host-vite-subpath.eta +8 -4
  73. package/cli/project-templates/shared/partials/stand-dev-host-vite-umd.eta +5 -5
  74. package/cli/project-templates/shared/partials/stand-dev-host-vite.eta +3 -3
  75. package/cli/project-templates/shared/partials/stand-dev-host-webpack-subpath.eta +8 -4
  76. package/cli/project-templates/shared/partials/stand-dev-host-webpack-umd.eta +9 -3
  77. package/cli/project-templates/shared/partials/stand-dev-host-webpack.eta +8 -4
  78. package/cli/project-templates/shared/partials/stand-dev-storage-middleware.eta +370 -0
  79. package/cli/project-templates/shared/stand-vite-base/config/lib/createViteStandConfig.ts +80 -0
  80. package/cli/project-templates/shared/stand-vite-base/scripts/devStorageMiddleware.ts.eta +1 -0
  81. package/cli/project-templates/shared/stand-webpack-base/config/lib/{createWebpackStandConfig.cjs → createWebpackStandConfig.ts} +31 -19
  82. package/cli/project-templates/{stand/advanced/umd/vite/config/lib/umdServeMiddleware.mjs → shared/stand-webpack-base/config/lib/umdServeMiddleware.ts} +19 -11
  83. package/cli/project-templates/shared/stand-webpack-base/scripts/devStorageMiddleware.ts.eta +1 -0
  84. package/cli/project-templates/stand/advanced/memory-usage/vite/config/lib/{createMemoryUsageStandConfig.mjs → createMemoryUsageStandConfig.ts} +25 -20
  85. package/cli/project-templates/stand/advanced/umd/vite/config/lib/umdServeMiddleware.ts +68 -0
  86. package/cli/project-templates/stand/react-adapter/webpack/README.md.eta +1 -0
  87. package/cli/project-templates/stand/react-adapter/webpack/config/dev-host.ts.eta +1 -0
  88. package/cli/project-templates/stand/react-adapter/webpack/package.json.eta +1 -0
  89. package/cli/project-templates/stand/react-adapter/webpack/public/index.html.eta +1 -0
  90. package/cli/project-templates/stand/react-adapter/webpack/src/dev/editorConfig.ts.eta +1 -0
  91. package/cli/project-templates/stand/react-adapter/webpack/src/dev/email.html.eta +1 -0
  92. package/cli/project-templates/stand/react-adapter/webpack/src/dev/getAuthToken.ts.eta +1 -0
  93. package/cli/project-templates/stand/react-adapter/webpack/src/dev/oauthCredentials.ts +9 -0
  94. package/cli/project-templates/stand/react-adapter/webpack/src/dev/storageProvider.ts.eta +1 -0
  95. package/cli/project-templates/stand/react-adapter/webpack/src/index.tsx.eta +1 -0
  96. package/cli/scripts/cli-matrix-smoke.ts +19 -10
  97. package/cli/scripts/verify-global-cli.ts +1 -1
  98. package/cli/scripts/vite-plugin-version-matrix.ts +299 -0
  99. package/cli/tsconfig.json +2 -2
  100. package/emailmaker-core.aa9efbce.js +1 -0
  101. package/emailmaker-esm.js +788 -153
  102. package/emailmaker.d.ts +32 -0
  103. package/emailmaker.js +4 -4
  104. package/iframe/js/amp.BGJMqoms.js +1 -1
  105. package/iframe/js/chunk.oX6nCJbK.js +1 -1
  106. package/iframe/js/iframe-eblock.js +1 -1
  107. package/iframe/js/iframe.js +1 -1
  108. package/iframe/js/rules.BSaCN7eK.js +1 -1
  109. package/iframe/js/sanitize-html.Dy7Uwo8P.js +1 -1
  110. package/images/integrations/activecampaign.svg +4 -0
  111. package/images/integrations/bento.svg +9 -0
  112. package/images/integrations/brevo.svg +7 -0
  113. package/images/integrations/campaign_monitor.svg +10 -0
  114. package/images/integrations/constant_contact.svg +24 -0
  115. package/images/integrations/dotdigital.svg +144 -0
  116. package/images/integrations/getresponse.svg +23 -0
  117. package/images/integrations/hubspot.svg +3 -0
  118. package/images/integrations/klaviyo.svg +10 -0
  119. package/images/integrations/mailchimp.svg +9 -0
  120. package/images/integrations/salesforce.svg +20 -0
  121. package/js/browser-image-compression.js +9 -0
  122. package/package.json +2 -5
  123. package/runtime/@ant-design/cssinjs/index.js +1 -1
  124. package/runtime/@ant-design/icons/index.js +1 -1
  125. package/runtime/@ant-design/pro-layout/index.js +1 -1
  126. package/runtime/README.md +13 -13
  127. package/runtime/antd/index.js +1 -1
  128. package/runtime/app-core/index.js +1 -2
  129. package/runtime/classnames/index.js +1 -1
  130. package/runtime/core/index.js +6 -6
  131. package/runtime/dayjs/index.js +1 -1
  132. package/runtime/di/index.js +1 -2
  133. package/runtime/disposable/index.js +1 -2
  134. package/runtime/errors-runtime/index.js +1 -2
  135. package/runtime/guid/index.js +1 -2
  136. package/runtime/index.js +2 -4
  137. package/runtime/package.json +2 -3
  138. package/runtime/prop-types/index.js +1 -1
  139. package/runtime/react/index.js +1 -1
  140. package/runtime/react/jsx-dev-runtime/index.js +1 -1
  141. package/runtime/react/jsx-runtime/index.js +1 -1
  142. package/runtime/react-dom/client/index.js +1 -1
  143. package/runtime/react-dom/index.js +1 -1
  144. package/runtime/react-router-dom/index.js +1 -1
  145. package/runtime/uuid/index.js +1 -1
  146. package/static/amd/{8fc2a596.js → 19aeb269.js} +88 -88
  147. package/static/core/192ec827.js +1 -0
  148. package/static/core/22c1de2e2.js +1 -0
  149. package/static/core/24faedf0.js +1 -0
  150. package/static/core/29231645.js +1 -0
  151. package/static/core/2a3177fc2.js +1 -0
  152. package/static/core/346aabd2.js +3 -0
  153. package/static/core/3b800ed6.js +1 -0
  154. package/static/core/3e840e90.js +1 -0
  155. package/static/core/40cc9fd7.js +1 -0
  156. package/static/core/421bdec22.js +1 -0
  157. package/static/core/4aaa358b2.js +903 -0
  158. package/static/core/50ff48bc.js +4 -0
  159. package/static/core/5282795d2.js +6 -0
  160. package/static/core/563a283d.js +1 -0
  161. package/static/core/5d47e095.js +47 -0
  162. package/static/core/5f574386.js +1 -0
  163. package/static/core/67a41193.js +1 -0
  164. package/static/core/698dace4.js +7 -0
  165. package/static/core/6b648e2d.js +1 -0
  166. package/static/core/7629adfd.js +1 -0
  167. package/static/core/7717f2932.js +3 -0
  168. package/static/core/776cb34a.js +1 -0
  169. package/static/core/78a1e31e.js +1 -0
  170. package/static/core/7d56d643.js +1 -0
  171. package/static/core/841752212.js +40 -0
  172. package/static/core/8477e97e.js +1 -0
  173. package/static/core/8756d562.js +1 -0
  174. package/static/core/91d328d8.js +1 -0
  175. package/static/core/9270dbb6.js +6 -0
  176. package/static/core/96371334.js +566 -0
  177. package/static/core/9b9ddaef2.js +168 -0
  178. package/static/core/af1da4b4.js +1 -0
  179. package/static/core/b5096b152.js +471 -0
  180. package/static/core/bde6775a.js +1 -0
  181. package/static/core/bf1b888c.js +4 -0
  182. package/static/core/cec8d739.js +11 -0
  183. package/static/core/cf45bf332.js +598 -0
  184. package/static/core/cfac3d32.js +1 -0
  185. package/static/core/d21c95cf2.js +1 -0
  186. package/static/core/dbd9ca52.js +1 -0
  187. package/static/core/dc590181.js +1 -0
  188. package/static/core/e0039d55.js +1 -0
  189. package/static/core/e4071c1a.js +4 -0
  190. package/static/core/ef87b75c.js +41 -0
  191. package/static/core/f47701f32.js +20 -0
  192. package/static/core/f83d7ac42.js +3 -0
  193. package/static/core/fcc67e6b.js +1 -0
  194. package/static/core/fd40d85c.js +1 -0
  195. package/static/core/fe638847.js +1 -0
  196. package/static/esm/{e8401d17.js → 203c9644.js} +3 -3
  197. package/static/esm/4b679053.js +27 -0
  198. package/static/esm/{b273a6c2.js → f31a26c6.js} +1 -1
  199. package/static/runtime/disposable-CD74igiJ.js +1 -0
  200. package/static/runtime/guid-C0wuVR8v.js +1 -0
  201. package/vite/index.d.ts +17 -6
  202. package/vite/index.js +315 -270
  203. package/vite/pluginDev/index.d.ts +10 -19
  204. package/vite/pluginDev/index.js +251 -204
  205. package/webpack/index.d.ts +24 -5
  206. package/webpack/index.js +168 -144
  207. package/webpack/pluginDev/index.d.ts +21 -22
  208. package/webpack/pluginDev/index.js +242 -177
  209. package/cli/dist/lib/template-engine/buildStandIndexHtml.test.d.ts +0 -2
  210. package/cli/dist/lib/template-engine/buildStandIndexHtml.test.js +0 -89
  211. package/cli/dist/lib/template-engine/emitEtaTree.test.d.ts +0 -2
  212. package/cli/dist/lib/template-engine/emitEtaTree.test.js +0 -34
  213. package/cli/dist/lib/template-engine/pluginEtaParity.test.d.ts +0 -2
  214. package/cli/dist/lib/template-engine/pluginEtaParity.test.js +0 -105
  215. package/cli/dist/lib/template-engine/resolveVariantDir.test.d.ts +0 -2
  216. package/cli/dist/lib/template-engine/resolveVariantDir.test.js +0 -52
  217. package/cli/dist/lib/template-engine/standAdvancedViteDevHostEta.test.d.ts +0 -2
  218. package/cli/dist/lib/template-engine/standAdvancedViteDevHostEta.test.js +0 -67
  219. package/cli/dist/lib/template-engine/standWebpackDevHostEta.test.d.ts +0 -2
  220. package/cli/dist/lib/template-engine/standWebpackDevHostEta.test.js +0 -83
  221. package/cli/dist/lib/template-engine/storageProviderEta.test.d.ts +0 -2
  222. package/cli/dist/lib/template-engine/storageProviderEta.test.js +0 -26
  223. package/cli/project-templates/plugin/shared-base/scripts/build-types.cjs +0 -8
  224. package/cli/project-templates/plugin/shared-base/scripts/clean.cjs +0 -6
  225. package/cli/project-templates/plugin/shared-base/scripts/dev-runner.cjs +0 -48
  226. package/cli/project-templates/plugin/shared-base/scripts/release-runner.cjs +0 -63
  227. package/cli/project-templates/shared/stand-vite-base/config/lib/createViteStandConfig.mjs +0 -80
  228. package/cli/project-templates/shared/stand-vite-base/scripts/devStorageMiddleware.cjs +0 -235
  229. package/cli/project-templates/shared/stand-webpack-base/config/lib/umdServeMiddleware.cjs +0 -38
  230. package/cli/project-templates/shared/stand-webpack-base/scripts/devStorageMiddleware.cjs +0 -235
  231. package/emailmaker-core.80d62b88.js +0 -569
  232. package/runtime/_core/app-core/index.js +0 -1
  233. package/runtime/_core/chunks/app-core-DphKKh8f.js +0 -1
  234. package/runtime/_core/chunks/chunk-oqAt0Dze.js +0 -1
  235. package/runtime/_core/chunks/di-BHUzE57z.js +0 -1
  236. package/runtime/_core/chunks/disposable-PhM3rJkj.js +0 -1
  237. package/runtime/_core/chunks/errors-runtime-VjCOXaQX.js +0 -1
  238. package/runtime/_core/chunks/guid-D2-FTZQG.js +0 -1
  239. package/runtime/_core/di/index.js +0 -1
  240. package/runtime/_core/disposable/index.js +0 -1
  241. package/runtime/_core/errors-runtime/index.js +0 -1
  242. package/runtime/_core/guid/index.js +0 -1
  243. package/runtime/_core/index.js +0 -1
  244. package/shared/hostBootstrap.js +0 -47
  245. package/shared/pluginDevOptions.js +0 -31
  246. package/shared/runtimeManifest.js +0 -72
  247. package/shared/stringCase.js +0 -16
  248. package/static/core/2360f32a.js +0 -3
  249. package/static/core/2687db56.js +0 -3
  250. package/static/core/2b250af6.js +0 -1261
  251. package/static/core/3469930c.js +0 -302
  252. package/static/core/34ce9042.js +0 -201
  253. package/static/core/4091ba5b.js +0 -25
  254. package/static/core/41ce3a6a.js +0 -173
  255. package/static/core/4ac4908c.js +0 -2213
  256. package/static/core/519096c1.js +0 -2597
  257. package/static/core/5fa1772b.js +0 -116550
  258. package/static/core/61312909.js +0 -3
  259. package/static/core/62a98c07.js +0 -75301
  260. package/static/core/6309c0f2.js +0 -3
  261. package/static/core/68d9f440.js +0 -3
  262. package/static/core/73b645ab.js +0 -2
  263. package/static/core/81019351.js +0 -280
  264. package/static/core/835b37ef.js +0 -591
  265. package/static/core/91242fb3.js +0 -3
  266. package/static/core/972b15b0.js +0 -92399
  267. package/static/core/974ef468.js +0 -493
  268. package/static/core/a17614422.js +0 -38078
  269. package/static/core/a2fa7b5b.js +0 -4232
  270. package/static/core/a513adfd.js +0 -89857
  271. package/static/core/a7c73a9b.js +0 -3813
  272. package/static/core/b64c7c90.js +0 -228
  273. package/static/core/cdc9ba92.js +0 -4711
  274. package/static/core/d1db685d.js +0 -2193
  275. package/static/core/d661febc.js +0 -3
  276. package/static/core/d6d2d2d0.js +0 -23
  277. package/static/core/df1a1225.js +0 -607
  278. package/static/core/e5bff179.js +0 -1302
  279. package/static/core/e5d602f5.js +0 -2
  280. package/static/core/eb029366.js +0 -1532
  281. package/static/core/f46c035a.js +0 -2
  282. package/static/core/f8b9d89a.js +0 -461
  283. package/static/core/fd897ad7.js +0 -3
  284. package/static/core/fdd890c7.js +0 -6168
  285. package/static/esm/29eb18ff.js +0 -164
  286. package/vite/mime-types.js +0 -179
  287. package/vite/utils.js +0 -44
  288. /package/cli/project-templates/plugin/bundler-vite/config/{dev-host.mjs.eta → dev-host.ts.eta} +0 -0
  289. /package/cli/project-templates/plugin/bundler-vite/config/{plugin-build.mjs.eta → plugin-build.ts.eta} +0 -0
  290. /package/cli/project-templates/plugin/bundler-vite/config/{sandbox-build.mjs.eta → sandbox-build.ts.eta} +0 -0
  291. /package/cli/project-templates/plugin/bundler-webpack/config/{dev-host.cjs.eta → dev-host.ts.eta} +0 -0
  292. /package/cli/project-templates/plugin/bundler-webpack/config/{plugin-build.cjs.eta → plugin-build.ts.eta} +0 -0
  293. /package/cli/project-templates/plugin/bundler-webpack/config/{sandbox-build.cjs.eta → sandbox-build.ts.eta} +0 -0
  294. /package/cli/project-templates/stand/advanced/memory-usage/vite/config/{dev-host.mjs.eta → dev-host.ts.eta} +0 -0
  295. /package/cli/project-templates/stand/advanced/shadow-dom/vite/config/{dev-host.mjs.eta → dev-host.ts.eta} +0 -0
  296. /package/cli/project-templates/stand/advanced/shadow-dom/webpack/config/{dev-host.cjs.eta → dev-host.ts.eta} +0 -0
  297. /package/cli/project-templates/stand/advanced/subpath/vite/config/{dev-host.mjs.eta → dev-host.ts.eta} +0 -0
  298. /package/cli/project-templates/stand/advanced/subpath/webpack/config/{dev-host.cjs.eta → dev-host.ts.eta} +0 -0
  299. /package/cli/project-templates/stand/advanced/umd/vite/config/{dev-host.mjs.eta → dev-host.ts.eta} +0 -0
  300. /package/cli/project-templates/stand/advanced/umd/webpack/config/{dev-host.cjs.eta → dev-host.ts.eta} +0 -0
  301. /package/cli/project-templates/stand/closed-loop/vite/config/{dev-host.mjs.eta → dev-host.ts.eta} +0 -0
  302. /package/cli/project-templates/stand/closed-loop/webpack/config/{dev-host.cjs.eta → dev-host.ts.eta} +0 -0
  303. /package/cli/project-templates/stand/oauth/vite/config/{dev-host.mjs.eta → dev-host.ts.eta} +0 -0
  304. /package/cli/project-templates/stand/oauth/webpack/config/{dev-host.cjs.eta → dev-host.ts.eta} +0 -0
  305. /package/cli/project-templates/stand/react-adapter/vite/config/{dev-host.mjs.eta → dev-host.ts.eta} +0 -0
  306. /package/iframe/{iframe-eblock.80d62b88.html → iframe-eblock.aa9efbce.html} +0 -0
  307. /package/iframe/{iframe.80d62b88.html → iframe.aa9efbce.html} +0 -0
  308. /package/{runtime/chunks → static/runtime}/DownloadOutlined-a2ZUz7zB.js +0 -0
  309. /package/{runtime/chunks → static/runtime}/chunk-D-iEO58U.js +0 -0
  310. /package/{runtime/chunks → static/runtime}/classnames-DBEldvch.js +0 -0
  311. /package/{runtime/chunks → static/runtime}/client-5XqXGmAI.js +0 -0
  312. /package/{runtime/chunks → static/runtime}/dayjs.min-CO3mzOeV.js +0 -0
  313. /package/{runtime/_core/chunks/defineProperty-BGJFuFMq.js → static/runtime/defineProperty-CGNmw-jw.js} +0 -0
  314. /package/{runtime/chunks → static/runtime}/dist-Cns8cA2n.js +0 -0
  315. /package/{runtime/chunks → static/runtime}/dist-Ct0xRt3Y.js +0 -0
  316. /package/{runtime/chunks → static/runtime}/es-0FFT3fCz.js +0 -0
  317. /package/{runtime/chunks → static/runtime}/es-BwJ3eGbx.js +0 -0
  318. /package/{runtime/chunks → static/runtime}/es-D8EsVtRL.js +0 -0
  319. /package/{runtime/chunks → static/runtime}/es-Da4O25Kw.js +0 -0
  320. /package/{runtime/chunks → static/runtime}/jsx-dev-runtime-V4_MuHNS.js +0 -0
  321. /package/{runtime/chunks → static/runtime}/jsx-runtime-DBeCoE0b.js +0 -0
  322. /package/{runtime/chunks → static/runtime}/objectWithoutProperties-Bk0EDksJ.js +0 -0
  323. /package/{runtime/chunks → static/runtime}/prop-types-DxD5wgQ0.js +0 -0
  324. /package/{runtime/chunks → static/runtime}/react-TEeeBWTl.js +0 -0
  325. /package/{runtime/chunks → static/runtime}/react-dom-BKKa1g6U.js +0 -0
@@ -0,0 +1,168 @@
1
+ (function(){try{if(typeof document<`u`){var e=document.createElement(`style`);e.setAttribute(`data-emailmaker`,`true`),e.appendChild(document.createTextNode(`/*!-----------------------------------------------------------
2
+ * Copyright (c) Microsoft Corporation. All rights reserved.
3
+ * Version: 0.34.0-dev.20220720(a3cc2f87ac360eaf9297f339624aef40a9a8074d)
4
+ * Released under the MIT license
5
+ * https://github.com/microsoft/vscode/blob/main/LICENSE.txt
6
+ *-----------------------------------------------------------*/
7
+ .monaco-action-bar{white-space:nowrap;height:100%}.monaco-action-bar .actions-container{align-items:center;width:100%;height:100%;margin:0 auto;padding:0;display:flex}.monaco-action-bar.vertical .actions-container{display:inline-block}.monaco-action-bar .action-item{cursor:pointer;justify-content:center;align-items:center;display:block;position:relative}.monaco-action-bar .action-item.disabled{cursor:default}.monaco-action-bar .action-item .codicon,.monaco-action-bar .action-item .icon{display:block}.monaco-action-bar .action-item .codicon{align-items:center;width:16px;height:16px;display:flex}.monaco-action-bar .action-label{border-radius:5px;padding:3px;font-size:11px}.monaco-action-bar .action-item.disabled .action-label,.monaco-action-bar .action-item.disabled .action-label:before,.monaco-action-bar .action-item.disabled .action-label:hover{opacity:.6}.monaco-action-bar.vertical{text-align:left}.monaco-action-bar.vertical .action-item{display:block}.monaco-action-bar.vertical .action-label.separator{border-bottom:1px solid #bbb;margin-left:.8em;margin-right:.8em;padding-top:1px;display:block}.monaco-action-bar .action-item .action-label.separator{cursor:default;background-color:#bbb;width:1px;min-width:1px;height:16px;padding:0;margin:5px 4px!important}.secondary-actions .monaco-action-bar .action-label{margin-left:6px}.monaco-action-bar .action-item.select-container{flex:1;justify-content:center;align-items:center;min-width:60px;max-width:170px;margin-right:10px;display:flex;overflow:hidden}.monaco-action-bar .action-item.action-dropdown-item{display:flex}.monaco-action-bar .action-item.action-dropdown-item>.action-label{margin-right:1px}.monaco-aria-container{position:absolute;left:-999em}.monaco-text-button{box-sizing:border-box;text-align:center;cursor:pointer;justify-content:center;align-items:center;width:100%;padding:4px;display:flex}.monaco-text-button:focus{outline-offset:2px!important}.monaco-text-button:hover{text-decoration:none!important}.monaco-button.disabled,.monaco-button.disabled:focus{cursor:default;opacity:.4!important}.monaco-text-button>.codicon{margin:0 .2em;color:inherit!important}.monaco-button-dropdown{cursor:pointer;display:flex}.monaco-button-dropdown.disabled{cursor:default}.monaco-button-dropdown>.monaco-button:focus{outline-offset:-1px!important}.monaco-button-dropdown.disabled>.monaco-button-dropdown-separator,.monaco-button-dropdown.disabled>.monaco-button.disabled,.monaco-button-dropdown.disabled>.monaco-button.disabled:focus{opacity:.4!important}.monaco-button-dropdown .monaco-button-dropdown-separator{cursor:default;padding:4px 0}.monaco-button-dropdown .monaco-button-dropdown-separator>div{width:1px;height:100%}.monaco-description-button{flex-direction:column}.monaco-description-button .monaco-button-label{font-weight:500}.monaco-description-button .monaco-button-description{font-style:italic}.monaco-description-button .monaco-button-description,.monaco-description-button .monaco-button-label{justify-content:center;align-items:center;display:flex}.monaco-description-button .monaco-button-description>.codicon,.monaco-description-button .monaco-button-label>.codicon{margin:0 .2em;color:inherit!important}@font-face{font-family:codicon;font-display:block;src:url(data:font/ttf;base64,AAEAAAALAIAAAwAwR1NVQiCLJXoAAAE4AAAAVE9TLzI3T0Y2AAABjAAAAGBjbWFwHhKOSAAACHgAABh8Z2x5ZqYPJPYAACQ8AADclGhlYWRYl6BTAAAA4AAAADZoaGVhAlsCzgAAALwAAAAkaG10eOnZ//4AAAHsAAAGjGxvY2GuU+eaAAAg9AAAA0htYXhwAsQBgQAAARgAAAAgbmFtZdNa5AQAAQDQAAAB9XBvc3SSan5MAAECyAAAFuwAAQAAASwAAAAAASz////+AS4AAQAAAAAAAAAAAAAAAAAAAaMAAQAAAAEAAG70y1JfDzz1AAsBLAAAAAB8JbCAAAAAAHwlsID////9AS4BLQAAAAgAAgAAAAAAAAABAAABowF1ABcAAAAAAAIAAAAKAAoAAAD/AAAAAAAAAAEAAAAKADAAPgACREZMVAAObGF0bgAaAAQAAAAAAAAAAQAAAAQAAAAAAAAAAQAAAAFsaWdhAAgAAAABAAAAAQAEAAQAAAABAAgAAQAGAAAAAQAAAAQBKwGQAAUAAAC+ANIAAAAqAL4A0gAAAJAADgBNAAACAAUDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFBmRWQAwOpg7AoBLAAAABsBRwADAAAAAQAAAAAAAAAAAAAAAAACAAAAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLP//ASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAA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AADqcAAA6nAAAACIAADqcQAA6nEAAAA0AADqcgAA6nIAAAEVAADqcwAA6nMAAAB9AADqdAAA6nQAAAC9AADqdQAA6nUAAADqAADqdgAA6nYAAAA/AADqdwAA6ncAAAFtAADqeAAA6ngAAAByAADqeQAA6nkAAAAWAADqegAA6noAAAGWAADqewAA6nsAAACSAADqfAAA6nwAAAB/AADqfQAA6n0AAAEoAADqfgAA6n4AAAEEAADqfwAA6n8AAAD7AADqgAAA6oAAAAD8AADqgQAA6oEAAAGAAADqggAA6oIAAAC3AADqgwAA6oMAAACdAADqhAAA6oQAAACrAADqhQAA6oUAAAF6AADqhgAA6oYAAAFaAADqhwAA6ocAAACCAADqiAAA6ogAAAFrAADqigAA6ooAAAFTAADqiwAA6osAAAFiAADqjAAA6owAAAFgAADqjwAA6o8AAAFUAADqkAAA6pAAAAFjAADqkQAA6pEAAAFqAADqkgAA6pIAAAFlAADqkwAA6pMAAAFeAADqlAAA6pQAAACtAADqlQAA6pUAAAFZAADqlgAA6pYAAAFnAADqlwAA6pcAAAACAADqmAAA6pgAAAAEAADqmQAA6pkAAAAFAADqmgAA6poAAAAKAADqmwAA6psAAAALAADqnAAA6pwAAAAMAADqnQAA6p0AAAANAADqngAA6p4AAAAOAADqnwAA6p8AAAAPAADqoAAA6qAAAAAQAADqoQAA6qEAAAASAADqogAA6qIAAAAaAADqowAA6qMAAAAcAADqpAAA6qQAAAAdAADqpQAA6qUAAAAeAADqpgAA6qYAAABVAADqpwAA6qcAAABWAADqqAAA6qgAAABXAADqqQAA6qkAAABYAADqqgAA6qoAAABbAADqqwAA6qsAAABcAADqrAAA6qwAAAAhAADqrQAA6q0AAAAiAADqrgAA6q4AAAAjAADqrwAA6q8AAAAkAADqsAAA6rAAAAAlAADqsQAA6rEAAAAoAADqsgAA6rIAAAAqAADqswAA6rMAAAArAADqtAAA6rQAAAAsAADqtQAA6rUAAAAtAADqtgAA6rYAAAAuAADqtwAA6rcAAAAvAADquAAA6rgAAAAwAADquQAA6rkAAAAxAADqugAA6roAAAAyAADquwAA6rsAAAAzAADqvAAA6rwAAAA3AADqvQAA6r0AAAA4AADqvgAA6r4AAAA7AADqvwAA6r8AAAA8AADqwAAA6sAAAAA9AADqwQAA6sEAAAA+AADqwgAA6sIAAABAAADqwwAA6sMAAABBAADqxAAA6sQAAABDAADqxQAA6sUAAABEAADqxgAA6sYAAABFAADqxwAA6scAAABHAADqyQAA6skAAABOAADqzAAA6swAAABPAADqzQAA6s0AAABQAADqzgAA6s4AAABRAADqzwAA6s8AAABgAADq0AAA6tAAAABiAADq0QAA6tEAAABkAADq0gAA6tIAAABnAADq0wAA6tMAAABrAADq1AAA6tQAAABtAADq1QAA6tUAAABuAADq1gAA6tYAAABvAADq1wAA6tcAAABwAADq2AAA6tgAAABxAADq2QAA6tkAAABzAADq2gAA6toAAAB0AADq2wAA6tsAAAB1AADq3AAA6twAAAB2AADq3QAA6t0AAAB3AADq3gAA6t4AAAB4AADq3wAA6t8AAAB5AADq4AAA6uAAAAB6AADq4QAA6uEAAAB7AADq4gAA6uIAAAB8AADq4wAA6uMAAAB+AADq5AAA6uQAAACAAADq5QAA6uUAAACDAADq5gAA6uYAAACGAADq5wAA6ucAAACHAADq6AAA6ugAAACKAADq6QAA6ukAAACLAADq6gAA6uoAAACMAADq6wAA6usAAACNAADq7AAA6uwAAACOAADq7QAA6u0AAACPAADq7gAA6u4AAACQAADq7wAA6u8AAACRAADq8AAA6vAAAACTAADq8QAA6vEAAACVAADq8gAA6vIAAACWAADq8wAA6vMAAACXAADq9AAA6vQAAACYAADq9QAA6vUAAACZAADq9gAA6vYAAACaAADq9wAA6vcAAACcAADq+AAA6vgAAACeAADq+QAA6vkAAACfAADq+gAA6voAAACgAADq+wAA6vsAAACLAADq/AAA6vwAAAChAADq/QAA6v0AAACiAADq/gAA6v4AAACjAADq/wAA6v8AAACoAADrAAAA6wAAAACpAADrAQAA6wEAAACsAADrAgAA6wIAAACuAADrAwAA6wMAAACyAADrBAAA6wQAAACzAADrBQAA6wUAAAC2AADrBgAA6wYAAAC4AADrBwAA6wcAAAC5AADrCAAA6wgAAAC6AADrCQAA6wkAAAC7AADrCwAA6wsAAADAAADrDAAA6wwAAADBAADrDQAA6w0AAADCAADrDgAA6w4AAADDAADrDwAA6w8AAADEAADrEAAA6xAAAADFAADrEQAA6xEAAADGAADrEgAA6xIAAADHAADrEwAA6xMAAADcAADrFAAA6xQAAADeAADrFQAA6xUAAADfAADrFgAA6xYAAADiAADrFwAA6xcAAADlAADrGAAA6xgAAADmAADrGQAA6xkAAADnAADrGgAA6xoAAADoAADrGwAA6xsAAADsAADrHAAA6xwAAADtAADrHQAA6x0AAADwAADrHgAA6x4AAADxAADrHwAA6x8AAADyAADrIAAA6yAAAAD1AADrIQAA6yEAAAD3AADrIgAA6yIAAAD4AADrIwAA6yMAAAD5AADrJAAA6yQAAAD6AADrJQAA6yUAAAD+AADrJgAA6yYAAAD/AADrJwAA6ycAAAECAADrKAAA6ygAAAEDAADrKQAA6ykAAAEGAADrKgAA6yoAAAEHAADrKwAA6ysAAAENAADrLAAA6ywAAAERAADrLQAA6y0AAAESAADrLgAA6y4AAAETAADrLwAA6y8AAAEUAADrMAAA6zAAAAEWAADrMQAA6zEAAAEXAADrMgAA6zIAAAEYAADrMwAA6zMAAAEZAADrNAAA6zQAAAEaAADrNQAA6zUAAAEbAADrNgAA6zYAAAEgAADrNwAA6zcAAAEhAADrOAAA6zgAAAEiAADrOQAA6zkAAAEjAADrOgAA6zoAAAEkAADrOwAA6zsAAAElAADrPAAA6zwAAAEmAADrPQAA6z0AAAEnAADrPgAA6z4AAAEpAADrPwAA6z8AAAEqAADrQAAA60AAAAEsAADrQQAA60EAAAEtAADrQgAA60IAAAEvAADrQwAA60MAAAEwAADrRAAA60QAAAExAADrRQAA60UAAAEyAADrRgAA60YAAAEzAADrRwAA60cAAAE0AADrSAAA60gAAAE1AADrSQAA60kAAAE6AADrSgAA60oAAAE7AADrSwAA60sAAAE8AADrTAAA60wAAAE9AADrTQAA600AAAE+AADrTgAA604AAAE/AADrUAAA61AAAAFDAADrUQAA61EAAAFEAADrUgAA61IAAAFFAADrUwAA61MAAAFGAADrVAAA61QAAAFJAADrVQAA61UAAAFKAADrVgAA61YAAAFMAADrVwAA61cAAAFNAADrWAAA61gAAAFOAADrWQAA61kAAAFQAADrWgAA61oAAAFRAADrWwAA61sAAAFVAADrXAAA61wAAAFWAADrXQAA610AAAFXAADrXgAA614AAAFYAADrXwAA618AAAFbAADrYAAA62AAAAFcAADrYQAA62EAAAFdAADrYgAA62IAAAFfAADrYwAA62MAAAFhAADrZAAA62QAAAFkAADrZQAA62UAAAFmAADrZgAA62YAAAFoAADrZwAA62cAAAFxAADraAAA62gAAAFyAADraQAA62kAAAF7AADragAA62oAAAF8AADrawAA62sAAAF9AADrbAAA62wAAAF+AADrbQAA620AAAF/AADrbgAA624AAAGBAADrbwAA628AAAGCAADrcAAA63AAAAGDAADrcQAA63EAAAGEAADrcgAA63IAAAGFAADrcwAA63MAAAGJAADrdAAA63QAAAGLAADrdQAA63UAAAGMAADrdgAA63YAAAGNAADrdwAA63cAAAGQAADreAAA63gAAAGRAADreQAA63kAAAGSAADregAA63oAAAGUAADrewAA63sAAAGVAADrfAAA63wAAAGZAADrfQAA630AAAGaAADrfgAA634AAAGbAADrfwAA638AAAGcAADrgAAA64AAAAGdAADrgQAA64EAAAGhAADrggAA64IAAAGiAADrgwAA64MAAADgAADrhAAA64QAAADhAADrhQAA64UAAADjAADrhgAA64YAAADkAADrhwAA64cAAABZAADriAAA64gAAABaAADriQAA64kAAABpAADrigAA64oAAAA5AADriwAA64sAAABqAADrjAAA64wAAABdAADrjQAA640AAAFpAADrjgAA644AAABoAADrjwAA648AAABsAADrkAAA65AAAABmAADrkQAA65EAAABUAADrkgAA65IAAAAmAADrkwAA65MAAAAnAADrlAAA65QAAADzAADrlQAA65UAAACEAADrlgAA65YAAACJAADrlwAA65cAAAC0AADrmAAA65gAAAGKAADrmQAA65kAAAABAADrmgAA65oAAAAXAADrmwAA65sAAABeAADrnAAA65wAAADbAADrnQAA650AAAEFAADrngAA654AAAE3AADrnwAA658AAAFsAADroAAA66AAAAEPAADroQAA66EAAACqAADrogAA66IAAAFCAADrowAA66MAAAFBAADrpAAA66QAAAEJAADrpQAA66UAAAFSAADrpgAA66YAAAEQAADrpwAA66cAAAEeAADrqAAA66gAAABTAADrqQAA66kAAAGTAADrqgAA66oAAABCAADrqwAA66sAAAD0AADrrAAA66wAAACFAADrrQAA660AAACvAADrrgAA664AAADrAADrrwAA668AAAEBAADrsAAA67AAAAEfAADrsQAA67EAAAApAADrsgAA67IAAAEOAADrswAA67MAAAEIAADrtAAA67QAAAA1AADrtQAA67UAAAA2AADrtgAA67YAAABGAADrtwAA67cAAAFuAADruAAA67gAAAGOAADruQAA67kAAAGIAADrugAA67oAAAGGAADruwAA67sAAAGHAADrvAAA67wAAAClAADrvQAA670AAAE2AADrvgAA674AAAE4AADrvwAA678AAAEAAADrwAAA68AAAABlAADrwQAA68EAAAGeAADrwgAA68IAAAGgAADrwwAA68MAAAGfAADrxAAA68QAAAF0AADrxQAA68UAAAF1AADrxgAA68YAAAF2AADrxwAA68cAAAF3AADryAAA68gAAAF4AADryQAA68kAAAF5AADrygAA68oAAAFzAADrywAA68sAAAARAADrzAAA68wAAABNAADrzQAA680AAAEKAADrzgAA684AAACUAADrzwAA688AAAGXAADr0AAA69AAAABjAADr0QAA69EAAAC+AADr0gAA69IAAADKAADr0wAA69MAAADJAADr1AAA69QAAADIAADr1QAA69UAAABMAADr1gAA69YAAABLAADr1wAA69cAAABKAADr2AAA69gAAAAUAADr2QAA69kAAAC/AADr2gAA69oAAACkAADr2wAA69sAAACmAADr3AAA69wAAABSAADr3QAA690AAABhAADr3gAA694AAAE5AADr3wAA698AAACbAADr4AAA6+AAAABfAADr4QAA6+EAAAAVAADr4gAA6+IAAACwAADr4wAA6+MAAACxAADr5AAA6+QAAAEMAADr5QAA6+UAAAAfAADr5gAA6+YAAAAgAADr5wAA6+cAAADpAADr6AAA6+gAAAATAADr6QAA6+kAAAGPAADr6gAA6+oAAAD9AADr6wAA6+sAAADaAADr7AAA6+wAAADLAADr7QAA6+0AAADMAADr7gAA6+4AAADR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AaEBogGjAaQBpQGmAacBqAGpAaoBqwGsAa0BrgGvAbABsQGyAbMBtAG1AbYBtwG4AbkBugG7AbwBvQG+Ab8BwAHBAcIBwwHEAcUBxgHHAcgByQHKAcsBzAHNAc4BzwHQAdEB0gHTAdQB1QHWAdcB2AHZAdoB2wHcAd0B3gHfAeAB4QHiAeMB5AHlAeYB5wHoAekB6gHrAewB7QHuAe8B8AHxAfIB8wH0AfUB9gH3AfgB+QH6AfsB/AH9Af4B/wIAAgECAgIDAgQCBQIGAgcCCAIJAgoCCwIMAg0CDgIPAhACEQISAhMCFAIVAhYCFwIYAhkCGgIbAhwCHQIeAh8CIAIhAiICIwIkAiUCJgInAigCKQIqAisCLAItAi4CLwIwAjECMgIzAjQCNQI2AjcCOAI5AjoCOwI8Aj0CPgI/AkACQQJCAkMCRAJFAkYCRwJIAkkCSgJLAkwCTQJOAk8CUAJRAlICUwJUAlUCVgJXAlgCWQJaAlsCXAJdAl4CXwJgAmECYgJjAmQCZQJmAmcCaAJpAmoCawJsAm0CbgJvAnACcQJyAnMCdAJ1AnYCdwJ4AnkCegJ7AnwCfQJ+An8CgAKBAoICgwKEAoUChgKHAogCiQKKAosCjAKNAo4CjwKQApECkgKTApQClQKWApcCmAKZApoCmwKcAp0CngKfAqACoQKiAqMCpAAHYWNjb3VudBRhY3RpdmF0ZS1icmVha3BvaW50cwNhZGQHYXJjaGl2ZQphcnJvdy1ib3RoEWFycm93LWNpcmNsZS1kb3duEWFycm93LWNpcmNsZS1sZWZ0EmFycm93LWNpcmNsZS1yaWdodA9hcnJvdy1jaXJjbGUtdXAKYXJyb3ctZG93bgphcnJvdy1sZWZ0C2Fycm93LXJpZ2h0EGFycm93LXNtYWxsLWRvd24QYXJyb3ctc21hbGwtbGVmdBFhcnJvdy1zbWFsbC1yaWdodA5hcnJvdy1zbWFsbC11cAphcnJvdy1zd2FwCGFycm93LXVwDGF6dXJlLWRldm9wcwVhenVyZQtiZWFrZXItc3RvcAZiZWFrZXIIYmVsbC1kb3QOYmVsbC1zbGFzaC1kb3QKYmVsbC1zbGFzaARiZWxsBWJsYW5rBGJvbGQEYm9vawhib29rbWFyawticmFja2V0LWRvdA1icmFja2V0LWVycm9yCWJyaWVmY2FzZQlicm9hZGNhc3QHYnJvd3NlcgNidWcIY2FsZW5kYXINY2FsbC1pbmNvbWluZw1jYWxsLW91dGdvaW5nDmNhc2Utc2Vuc2l0aXZlCWNoZWNrLWFsbAVjaGVjawljaGVja2xpc3QMY2hldnJvbi1kb3duDGNoZXZyb24tbGVmdA1jaGV2cm9uLXJpZ2h0CmNoZXZyb24tdXAMY2hyb21lLWNsb3NlD2Nocm9tZS1tYXhpbWl6ZQ9jaHJvbWUtbWluaW1pemUOY2hyb21lLXJlc3RvcmUNY2lyY2xlLWZpbGxlZBNjaXJjbGUtbGFyZ2UtZmlsbGVkFGNpcmNsZS1sYXJnZS1vdXRsaW5lDmNpcmNsZS1vdXRsaW5lDGNpcmNsZS1zbGFzaBNjaXJjbGUtc21hbGwtZmlsbGVkDGNpcmNsZS1zbWFsbA1jaXJjdWl0LWJvYXJkCWNsZWFyLWFsbAZjbGlwcHkJY2xvc2UtYWxsBWNsb3NlDmNsb3VkLWRvd25sb2FkDGNsb3VkLXVwbG9hZAVjbG91ZARjb2RlDGNvbGxhcHNlLWFsbApjb2xvci1tb2RlB2NvbWJpbmUSY29tbWVudC1kaXNjdXNzaW9uEmNvbW1lbnQtdW5yZXNvbHZlZAdjb21tZW50DmNvbXBhc3MtYWN0aXZlC2NvbXBhc3MtZG90B2NvbXBhc3MEY29weQtjcmVkaXQtY2FyZARkYXNoCWRhc2hib2FyZAhkYXRhYmFzZQlkZWJ1Zy1hbGwPZGVidWctYWx0LXNtYWxsCWRlYnVnLWFsdCdkZWJ1Zy1icmVha3BvaW50LWNvbmRpdGlvbmFsLXVudmVyaWZpZWQcZGVidWctYnJlYWtwb2ludC1jb25kaXRpb25hbCBkZWJ1Zy1icmVha3BvaW50LWRhdGEtdW52ZXJpZmllZBVkZWJ1Zy1icmVha3BvaW50LWRhdGEkZGVidWctYnJlYWtwb2ludC1mdW5jdGlvbi11bnZlcmlmaWVkGWRlYnVnLWJyZWFrcG9pbnQtZnVuY3Rpb24fZGVidWctYnJlYWtwb2ludC1sb2ctdW52ZXJpZmllZBRkZWJ1Zy1icmVha3BvaW50LWxvZxxkZWJ1Zy1icmVha3BvaW50LXVuc3VwcG9ydGVkDWRlYnVnLWNvbnNvbGUUZGVidWctY29udGludWUtc21hbGwOZGVidWctY29udGludWUOZGVidWctY292ZXJhZ2UQZGVidWctZGlzY29ubmVjdBJkZWJ1Zy1saW5lLWJ5LWxpbmULZGVidWctcGF1c2ULZGVidWctcmVydW4TZGVidWctcmVzdGFydC1mcmFtZQ1kZWJ1Zy1yZXN0YXJ0FmRlYnVnLXJldmVyc2UtY29udGludWUXZGVidWctc3RhY2tmcmFtZS1hY3RpdmUQZGVidWctc3RhY2tmcmFtZQtkZWJ1Zy1zdGFydA9kZWJ1Zy1zdGVwLWJhY2sPZGVidWctc3RlcC1pbnRvDmRlYnVnLXN0ZXAtb3V0D2RlYnVnLXN0ZXAtb3ZlcgpkZWJ1Zy1zdG9wBWRlYnVnEGRlc2t0b3AtZG93bmxvYWQTZGV2aWNlLWNhbWVyYS12aWRlbw1kZXZpY2UtY2FtZXJhDWRldmljZS1tb2JpbGUKZGlmZi1hZGRlZAxkaWZmLWlnbm9yZWQNZGlmZi1tb2RpZmllZAxkaWZmLXJlbW92ZWQMZGlmZi1yZW5hbWVkBGRpZmYHZGlzY2FyZARlZGl0DWVkaXRvci1sYXlvdXQIZWxsaXBzaXMMZW1wdHktd2luZG93C2Vycm9yLXNtYWxsBWVycm9yB2V4Y2x1ZGUKZXhwYW5kLWFsbAZleHBvcnQKZXh0ZW5zaW9ucwpleWUtY2xvc2VkA2V5ZQhmZWVkYmFjawtmaWxlLWJpbmFyeQlmaWxlLWNvZGUKZmlsZS1tZWRpYQhmaWxlLXBkZg5maWxlLXN1Ym1vZHVsZRZmaWxlLXN5bWxpbmstZGlyZWN0b3J5EWZpbGUtc3ltbGluay1maWxlCGZpbGUtemlwBGZpbGUFZmlsZXMNZmlsdGVyLWZpbGxlZAZmaWx0ZXIFZmxhbWUJZm9sZC1kb3duB2ZvbGQtdXAEZm9sZA1mb2xkZXItYWN0aXZlDmZvbGRlci1saWJyYXJ5DWZvbGRlci1vcGVuZWQGZm9sZGVyBGdlYXIEZ2lmdAtnaXN0LXNlY3JldApnaXQtY29tbWl0C2dpdC1jb21wYXJlCWdpdC1tZXJnZRdnaXQtcHVsbC1yZXF1ZXN0LWNsb3NlZBdnaXQtcHVsbC1yZXF1ZXN0LWNyZWF0ZRZnaXQtcHVsbC1yZXF1ZXN0LWRyYWZ0EGdpdC1wdWxsLXJlcXVlc3QNZ2l0aHViLWFjdGlvbgpnaXRodWItYWx0D2dpdGh1Yi1pbnZlcnRlZAZnaXRodWIFZ2xvYmUKZ28tdG8tZmlsZQdncmFiYmVyCmdyYXBoLWxlZnQKZ3JhcGgtbGluZQ1ncmFwaC1zY2F0dGVyBWdyYXBoB2dyaXBwZXIRZ3JvdXAtYnktcmVmLXR5cGUMaGVhcnQtZmlsbGVkBWhlYXJ0B2hpc3RvcnkEaG9tZQ9ob3Jpem9udGFsLXJ1bGUFaHVib3QFaW5ib3gGaW5kZW50BGluZm8HaW5zcGVjdAtpc3N1ZS1kcmFmdA5pc3N1ZS1yZW9wZW5lZAZpc3N1ZXMGaXRhbGljBmplcnNleQRqc29uDmtlYmFiLXZlcnRpY2FsA2tleQNsYXcNbGF5ZXJzLWFjdGl2ZQpsYXllcnMtZG90BmxheWVycxdsYXlvdXQtYWN0aXZpdHliYXItbGVmdBhsYXlvdXQtYWN0aXZpdHliYXItcmlnaHQPbGF5b3V0LWNlbnRlcmVkDmxheW91dC1tZW51YmFyE2xheW91dC1wYW5lbC1jZW50ZXIUbGF5b3V0LXBhbmVsLWp1c3RpZnkRbGF5b3V0LXBhbmVsLWxlZnQQbGF5b3V0LXBhbmVsLW9mZhJsYXlvdXQtcGFuZWwtcmlnaHQMbGF5b3V0LXBhbmVsF2xheW91dC1zaWRlYmFyLWxlZnQtb2ZmE2xheW91dC1zaWRlYmFyLWxlZnQYbGF5b3V0LXNpZGViYXItcmlnaHQtb2ZmFGxheW91dC1zaWRlYmFyLXJpZ2h0EGxheW91dC1zdGF0dXNiYXIGbGF5b3V0B2xpYnJhcnkRbGlnaHRidWxiLWF1dG9maXgJbGlnaHRidWxiDWxpbmstZXh0ZXJuYWwEbGluawtsaXN0LWZpbHRlcglsaXN0LWZsYXQMbGlzdC1vcmRlcmVkDmxpc3Qtc2VsZWN0aW9uCWxpc3QtdHJlZQ5saXN0LXVub3JkZXJlZApsaXZlLXNoYXJlB2xvYWRpbmcIbG9jYXRpb24KbG9jay1zbWFsbARsb2NrBm1hZ25ldAltYWlsLXJlYWQEbWFpbAptYXAtZmlsbGVkA21hcAhtYXJrZG93bgltZWdhcGhvbmUHbWVudGlvbgRtZW51BW1lcmdlCW1pbGVzdG9uZQZtaXJyb3IMbW9ydGFyLWJvYXJkBG1vdmUQbXVsdGlwbGUtd2luZG93cwRtdXRlCG5ldy1maWxlCm5ldy1mb2xkZXIHbmV3bGluZQpuby1uZXdsaW5lBG5vdGURbm90ZWJvb2stdGVtcGxhdGUIbm90ZWJvb2sIb2N0b2ZhY2UMb3Blbi1wcmV2aWV3DG9yZ2FuaXphdGlvbgZvdXRwdXQHcGFja2FnZQhwYWludGNhbgtwYXNzLWZpbGxlZARwYXNzCnBlcnNvbi1hZGQGcGVyc29uCXBpZS1jaGFydANwaW4McGlubmVkLWRpcnR5BnBpbm5lZAtwbGF5LWNpcmNsZQRwbGF5BHBsdWcNcHJlc2VydmUtY2FzZQdwcmV2aWV3EHByaW1pdGl2ZS1zcXVhcmUHcHJvamVjdAVwdWxzZQhxdWVzdGlvbgVxdW90ZQtyYWRpby10b3dlcglyZWFjdGlvbnMLcmVjb3JkLWtleXMMcmVjb3JkLXNtYWxsBnJlY29yZARyZWRvCnJlZmVyZW5jZXMHcmVmcmVzaAVyZWdleA9yZW1vdGUtZXhwbG9yZXIGcmVtb3RlBnJlbW92ZQtyZXBsYWNlLWFsbAdyZXBsYWNlBXJlcGx5CnJlcG8tY2xvbmUPcmVwby1mb3JjZS1wdXNoC3JlcG8tZm9ya2VkCXJlcG8tcHVsbAlyZXBvLXB1c2gEcmVwbwZyZXBvcnQPcmVxdWVzdC1jaGFuZ2VzBnJvY2tldBJyb290LWZvbGRlci1vcGVuZWQLcm9vdC1mb2xkZXIDcnNzBHJ1YnkJcnVuLWFib3ZlB3J1bi1hbGwJcnVuLWJlbG93CnJ1bi1lcnJvcnMIc2F2ZS1hbGwHc2F2ZS1hcwRzYXZlC3NjcmVlbi1mdWxsDXNjcmVlbi1ub3JtYWwLc2VhcmNoLXN0b3AGc2VhcmNoEnNlcnZlci1lbnZpcm9ubWVudA5zZXJ2ZXItcHJvY2VzcwZzZXJ2ZXINc2V0dGluZ3MtZ2VhcghzZXR0aW5ncwZzaGllbGQHc2lnbi1pbghzaWduLW91dAZzbWlsZXkPc29ydC1wcmVjZWRlbmNlDnNvdXJjZS1jb250cm9sEHNwbGl0LWhvcml6b250YWwOc3BsaXQtdmVydGljYWwIc3F1aXJyZWwKc3Rhci1lbXB0eQlzdGFyLWZ1bGwJc3Rhci1oYWxmC3N0b3AtY2lyY2xlDHN5bWJvbC1hcnJheQ5zeW1ib2wtYm9vbGVhbgxzeW1ib2wtY2xhc3MMc3ltYm9sLWNvbG9yD3N5bWJvbC1jb25zdGFudBJzeW1ib2wtZW51bS1tZW1iZXILc3ltYm9sLWVudW0Mc3ltYm9sLWV2ZW50DHN5bWJvbC1maWVsZAtzeW1ib2wtZmlsZRBzeW1ib2wtaW50ZXJmYWNlCnN5bWJvbC1rZXkOc3ltYm9sLWtleXdvcmQNc3ltYm9sLW1ldGhvZAtzeW1ib2wtbWlzYxBzeW1ib2wtbmFtZXNwYWNlDnN5bWJvbC1udW1lcmljD3N5bWJvbC1vcGVyYXRvchBzeW1ib2wtcGFyYW1ldGVyD3N5bWJvbC1wcm9wZXJ0eQxzeW1ib2wtcnVsZXIOc3ltYm9sLXNuaXBwZXQNc3ltYm9sLXN0cmluZxBzeW1ib2wtc3RydWN0dXJlD3N5bWJvbC12YXJpYWJsZQxzeW5jLWlnbm9yZWQEc3luYwV0YWJsZQN0YWcGdGFyZ2V0CHRhc2tsaXN0CXRlbGVzY29wZQ10ZXJtaW5hbC1iYXNoDHRlcm1pbmFsLWNtZA90ZXJtaW5hbC1kZWJpYW4OdGVybWluYWwtbGludXgTdGVybWluYWwtcG93ZXJzaGVsbA10ZXJtaW5hbC10bXV4D3Rlcm1pbmFsLXVidW50dQh0ZXJtaW5hbAl0ZXh0LXNpemUKdGhyZWUtYmFycwp0aHVtYnNkb3duCHRodW1ic3VwBXRvb2xzBXRyYXNoDXRyaWFuZ2xlLWRvd24NdHJpYW5nbGUtbGVmdA50cmlhbmdsZS1yaWdodAt0cmlhbmdsZS11cAd0d2l0dGVyEnR5cGUtaGllcmFyY2h5LXN1YhR0eXBlLWhpZXJhcmNoeS1zdXBlcg50eXBlLWhpZXJhcmNoeQZ1bmZvbGQTdW5ncm91cC1ieS1yZWYtdHlwZQZ1bmxvY2sGdW5tdXRlCnVudmVyaWZpZWQOdmFyaWFibGUtZ3JvdXAPdmVyaWZpZWQtZmlsbGVkCHZlcmlmaWVkCHZlcnNpb25zCXZtLWFjdGl2ZQp2bS1jb25uZWN0CnZtLW91dGxpbmUKdm0tcnVubmluZwJ2bQR3YW5kB3dhcm5pbmcFd2F0Y2gKd2hpdGVzcGFjZQp3aG9sZS13b3JkBndpbmRvdwl3b3JkLXdyYXARd29ya3NwYWNlLXRydXN0ZWQRd29ya3NwYWNlLXVua25vd24Td29ya3NwYWNlLXVudHJ1c3RlZAd6b29tLWluCHpvb20tb3V0AAA=)format("truetype")}.codicon[class*=codicon-]{text-rendering:auto;text-align:center;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-user-select:none;user-select:none;font:16px/1 codicon;text-decoration:none;display:inline-block}.codicon-wrench-subaction{opacity:.5}@keyframes codicon-spin{to{transform:rotate(1turn)}}.codicon-gear.codicon-modifier-spin,.codicon-loading.codicon-modifier-spin,.codicon-notebook-state-executing.codicon-modifier-spin,.codicon-sync.codicon-modifier-spin{animation:1.5s steps(30,end) infinite codicon-spin}.codicon-modifier-disabled{opacity:.4}.codicon-loading,.codicon-tree-item-loading:before{animation-duration:1s!important;animation-timing-function:cubic-bezier(.53,.21,.29,.67)!important}.context-view{position:absolute}.context-view.fixed{all:initial;color:inherit;font-family:inherit;font-size:13px;position:fixed}.monaco-count-badge{text-align:center;box-sizing:border-box;border-radius:11px;min-width:18px;min-height:18px;padding:3px 6px;font-size:11px;font-weight:400;line-height:11px;display:inline-block}.monaco-count-badge.long{border-radius:2px;min-height:auto;padding:2px 3px;line-height:normal}.monaco-dropdown{height:100%;padding:0}.monaco-dropdown>.dropdown-label{cursor:pointer;justify-content:center;align-items:center;height:100%;display:flex}.monaco-dropdown>.dropdown-label>.action-label.disabled{cursor:default}.monaco-dropdown-with-primary{border-radius:5px;flex-direction:row;display:flex!important}.monaco-dropdown-with-primary>.action-container>.action-label{margin-right:0}.monaco-dropdown-with-primary>.dropdown-action-container>.monaco-dropdown>.dropdown-label .codicon[class*=codicon-]{margin-left:-3px;padding-left:0;padding-right:0;font-size:12px;line-height:16px}.monaco-dropdown-with-primary>.dropdown-action-container>.monaco-dropdown>.dropdown-label>.action-label{background-position:50%;background-repeat:no-repeat;background-size:16px;display:block}.monaco-findInput{position:relative}.monaco-findInput .monaco-inputbox{width:100%;font-size:13px}.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.vs .monaco-findInput.disabled{background-color:#e1e1e1}.vs-dark .monaco-findInput.disabled{background-color:#333}.hc-light .monaco-findInput.highlight-0 .controls,.monaco-findInput.highlight-0 .controls{animation:.1s linear monaco-findInput-highlight-0}.hc-light .monaco-findInput.highlight-1 .controls,.monaco-findInput.highlight-1 .controls{animation:.1s linear monaco-findInput-highlight-1}.hc-black .monaco-findInput.highlight-0 .controls,.vs-dark .monaco-findInput.highlight-0 .controls{animation:.1s linear monaco-findInput-highlight-dark-0}.hc-black .monaco-findInput.highlight-1 .controls,.vs-dark .monaco-findInput.highlight-1 .controls{animation:.1s linear monaco-findInput-highlight-dark-1}@keyframes monaco-findInput-highlight-0{0%{background:#fdff00cc}to{background:0 0}}@keyframes monaco-findInput-highlight-1{0%{background:#fdff00cc}99%{background:0 0}}@keyframes monaco-findInput-highlight-dark-0{0%{background:#ffffff70}to{background:0 0}}@keyframes monaco-findInput-highlight-dark-1{0%{background:#ffffff70}99%{background:0 0}}.monaco-hover{cursor:default;z-index:50;-webkit-user-select:text;user-select:text;box-sizing:initial;line-height:1.5em;animation:.1s linear fadein;position:absolute;overflow:hidden}.monaco-hover.hidden{display:none}.monaco-hover a:hover{cursor:pointer}.monaco-hover .hover-contents:not(.html-hover-contents){padding:4px 8px}.monaco-hover .markdown-hover>.hover-contents:not(.code-hover-contents){word-wrap:break-word;max-width:500px}.monaco-hover .markdown-hover>.hover-contents:not(.code-hover-contents) hr{min-width:100%}.monaco-hover .code,.monaco-hover p,.monaco-hover ul{margin:8px 0}.monaco-hover code{font-family:var(--monaco-monospace-font)}.monaco-hover hr{box-sizing:border-box;border-left:0;border-right:0;height:1px;margin:4px -8px -4px}.monaco-hover .code:first-child,.monaco-hover p:first-child,.monaco-hover ul:first-child{margin-top:0}.monaco-hover .code:last-child,.monaco-hover p:last-child,.monaco-hover ul:last-child{margin-bottom:0}.monaco-hover ol,.monaco-hover ul{padding-left:20px}.monaco-hover li>p{margin-bottom:0}.monaco-hover li>ul{margin-top:0}.monaco-hover code{border-radius:3px;padding:0 .4em}.monaco-hover .monaco-tokenized-source{white-space:pre-wrap}.monaco-hover .hover-row.status-bar{font-size:12px;line-height:22px}.monaco-hover .hover-row.status-bar .actions{padding:0 8px;display:flex}.monaco-hover .hover-row.status-bar .actions .action-container{cursor:pointer;margin-right:16px}.monaco-hover .hover-row.status-bar .actions .action-container .action .icon{padding-right:4px}.monaco-hover .markdown-hover .hover-contents .codicon{color:inherit;font-size:inherit;vertical-align:middle}.monaco-hover .hover-contents a.code-link,.monaco-hover .hover-contents a.code-link:hover{color:inherit}.monaco-hover .hover-contents a.code-link:before{content:"("}.monaco-hover .hover-contents a.code-link:after{content:")"}.monaco-hover .hover-contents a.code-link>span{text-underline-position:under;border-bottom:1px solid #0000;text-decoration:underline}.monaco-hover .markdown-hover .hover-contents:not(.code-hover-contents):not(.html-hover-contents) span{margin-bottom:4px;display:inline-block}.monaco-hover-content .action-container a{-webkit-user-select:none;user-select:none}.monaco-hover-content .action-container.disabled{pointer-events:none;opacity:.4;cursor:default}.monaco-icon-label{text-overflow:ellipsis;display:flex;overflow:hidden}.monaco-icon-label:before{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;vertical-align:top;background-position:0;background-repeat:no-repeat;background-size:16px;flex-shrink:0;width:16px;height:22px;padding-right:6px;display:inline-block;line-height:inherit!important}.monaco-icon-label>.monaco-icon-label-container{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{color:inherit;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name>.label-separator{opacity:.5;margin:0 2px}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:.7;white-space:pre;margin-left:.5em;font-size:.9em}.monaco-icon-label.nowrap>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{white-space:nowrap}.vs .monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:.95}.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-description-container>.label-description,.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{font-style:italic}.monaco-icon-label.deprecated{opacity:.66;text-decoration:line-through}.monaco-icon-label.italic:after{font-style:italic}.monaco-icon-label.strikethrough>.monaco-icon-label-container>.monaco-icon-description-container>.label-description,.monaco-icon-label.strikethrough>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{text-decoration:line-through}.monaco-icon-label:after{opacity:.75;text-align:center;margin:auto 16px 0 5px;font-size:90%;font-weight:600}.monaco-list:focus .selected .monaco-icon-label,.monaco-list:focus .selected .monaco-icon-label:after{color:inherit!important}.monaco-list-row.focused.selected .label-description,.monaco-list-row.selected .label-description{opacity:.8}.monaco-inputbox{box-sizing:border-box;font-size:inherit;padding:0;display:block;position:relative}.monaco-inputbox.idle{border:1px solid #0000}.monaco-inputbox>.ibwrapper>.input,.monaco-inputbox>.ibwrapper>.mirror{padding:4px}.monaco-inputbox>.ibwrapper{width:100%;height:100%;position:relative}.monaco-inputbox>.ibwrapper>.input{box-sizing:border-box;width:100%;height:100%;line-height:inherit;font-family:inherit;font-size:inherit;resize:none;color:inherit;border:none;display:inline-block}.monaco-inputbox>.ibwrapper>input{text-overflow:ellipsis}.monaco-inputbox>.ibwrapper>textarea.input{-ms-overflow-style:none;scrollbar-width:none;outline:none;display:block}.monaco-inputbox>.ibwrapper>textarea.input::-webkit-scrollbar{display:none}.monaco-inputbox>.ibwrapper>textarea.input.empty{white-space:nowrap}.monaco-inputbox>.ibwrapper>.mirror{box-sizing:border-box;white-space:pre-wrap;visibility:hidden;word-wrap:break-word;width:100%;display:inline-block;position:absolute;top:0;left:0}.monaco-inputbox-container{text-align:right}.monaco-inputbox-container .monaco-inputbox-message{text-align:left;box-sizing:border-box;word-wrap:break-word;width:100%;margin-top:-1px;padding:.4em;font-size:12px;line-height:17px;display:inline-block;overflow:hidden}.monaco-inputbox .monaco-action-bar{position:absolute;top:4px;right:2px}.monaco-inputbox .monaco-action-bar .action-item{margin-left:2px}.monaco-inputbox .monaco-action-bar .action-item .codicon{background-repeat:no-repeat;width:16px;height:16px}.monaco-keybinding{align-items:center;line-height:10px;display:flex}.monaco-keybinding>.monaco-keybinding-key{vertical-align:middle;border-style:solid;border-width:1px;border-radius:3px;margin:0 2px;padding:3px 5px;font-size:11px;display:inline-block}.monaco-keybinding>.monaco-keybinding-key:first-child{margin-left:0}.monaco-keybinding>.monaco-keybinding-key:last-child{margin-right:0}.monaco-keybinding>.monaco-keybinding-key-separator{display:inline-block}.monaco-keybinding>.monaco-keybinding-key-chord-separator{width:6px}.monaco-list{white-space:nowrap;width:100%;height:100%;position:relative}.monaco-list.mouse-support{-webkit-user-select:none;user-select:none}.monaco-list>.monaco-scrollable-element{height:100%}.monaco-list-rows{width:100%;height:100%;position:relative}.monaco-list.horizontal-scrolling .monaco-list-rows{width:auto;min-width:100%}.monaco-list-row{box-sizing:border-box;width:100%;position:absolute;overflow:hidden}.monaco-list.mouse-support .monaco-list-row{cursor:pointer;touch-action:none}.monaco-list-row.scrolling{display:none!important}.monaco-list.element-focused,.monaco-list.selection-multiple,.monaco-list.selection-single{outline:0!important}.monaco-drag-image{z-index:1000;border-radius:10px;padding:1px 7px;font-size:12px;display:inline-block;position:absolute}.monaco-list-type-filter-message{box-sizing:border-box;text-align:center;white-space:normal;opacity:.7;pointer-events:none;width:100%;height:100%;padding:40px 1em 1em;position:absolute;top:0;left:0}.monaco-list-type-filter-message:empty{display:none}.monaco-mouse-cursor-text{cursor:text}.monaco-progress-container{width:100%;height:5px;overflow:hidden}.monaco-progress-container .progress-bit{width:2%;height:5px;display:none;position:absolute;left:0}.monaco-progress-container.active .progress-bit{display:inherit}.monaco-progress-container.discrete .progress-bit{transition:width .1s linear;left:0}.monaco-progress-container.discrete.done .progress-bit{width:100%}.monaco-progress-container.infinite .progress-bit{animation-name:progress;animation-duration:4s;animation-timing-function:linear;animation-iteration-count:infinite;transform:translateZ(0)}.monaco-progress-container.infinite.infinite-long-running .progress-bit{animation-timing-function:steps(100,end)}@keyframes progress{0%{transform:translate(0)scaleX(1)}50%{transform:translate(2500%)scaleX(3)}to{transform:translate(4900%)scaleX(1)}}:root{--sash-size:4px}.monaco-sash{z-index:35;touch-action:none;position:absolute}.monaco-sash.disabled{pointer-events:none}.monaco-sash.mac.vertical{cursor:col-resize}.monaco-sash.vertical.minimum{cursor:e-resize}.monaco-sash.vertical.maximum{cursor:w-resize}.monaco-sash.mac.horizontal{cursor:row-resize}.monaco-sash.horizontal.minimum{cursor:s-resize}.monaco-sash.horizontal.maximum{cursor:n-resize}.monaco-sash.disabled{cursor:default!important;pointer-events:none!important}.monaco-sash.vertical{cursor:ew-resize;width:var(--sash-size);height:100%;top:0}.monaco-sash.horizontal{cursor:ns-resize;width:100%;height:var(--sash-size);left:0}.monaco-sash:not(.disabled)>.orthogonal-drag-handle{content:" ";height:calc(var(--sash-size)*2);width:calc(var(--sash-size)*2);z-index:100;cursor:all-scroll;display:block;position:absolute}.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)>.orthogonal-drag-handle.start,.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)>.orthogonal-drag-handle.end{cursor:nwse-resize}.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)>.orthogonal-drag-handle.end,.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)>.orthogonal-drag-handle.start{cursor:nesw-resize}.monaco-sash.vertical>.orthogonal-drag-handle.start{left:calc(var(--sash-size)*-.5);top:calc(var(--sash-size)*-1)}.monaco-sash.vertical>.orthogonal-drag-handle.end{left:calc(var(--sash-size)*-.5);bottom:calc(var(--sash-size)*-1)}.monaco-sash.horizontal>.orthogonal-drag-handle.start{top:calc(var(--sash-size)*-.5);left:calc(var(--sash-size)*-1)}.monaco-sash.horizontal>.orthogonal-drag-handle.end{top:calc(var(--sash-size)*-.5);right:calc(var(--sash-size)*-1)}.monaco-sash:before{content:"";pointer-events:none;background:0 0;width:100%;height:100%;transition:background-color .1s ease-out;position:absolute}.monaco-sash.vertical:before{width:var(--sash-hover-size);left:calc(50% - var(--sash-hover-size)/2)}.monaco-sash.horizontal:before{height:var(--sash-hover-size);top:calc(50% - var(--sash-hover-size)/2)}.pointer-events-disabled{pointer-events:none!important}.monaco-sash.debug{background:#0ff}.monaco-sash.debug.disabled{background:#0ff3}.monaco-sash.debug:not(.disabled)>.orthogonal-drag-handle{background:red}.monaco-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.monaco-scrollable-element>.visible{opacity:1;background:0 0;transition:opacity .1s linear}.monaco-scrollable-element>.invisible{opacity:0;pointer-events:none}.monaco-scrollable-element>.invisible.fade{transition:opacity .8s linear}.monaco-scrollable-element>.shadow{display:none;position:absolute}.monaco-scrollable-element>.shadow.top{width:100%;height:3px;display:block;top:0;left:3px}.monaco-scrollable-element>.shadow.left{width:3px;height:100%;display:block;top:3px;left:0}.monaco-scrollable-element>.shadow.top-left-corner{width:3px;height:3px;display:block;top:0;left:0}.monaco-split-view2{width:100%;height:100%;position:relative}.monaco-split-view2>.sash-container{pointer-events:none;width:100%;height:100%;position:absolute}.monaco-split-view2>.sash-container>.monaco-sash{pointer-events:auto}.monaco-split-view2>.monaco-scrollable-element{width:100%;height:100%}.monaco-split-view2>.monaco-scrollable-element>.split-view-container{white-space:nowrap;width:100%;height:100%;position:relative}.monaco-split-view2>.monaco-scrollable-element>.split-view-container>.split-view-view{white-space:normal;position:absolute}.monaco-split-view2>.monaco-scrollable-element>.split-view-container>.split-view-view:not(.visible){display:none}.monaco-split-view2.vertical>.monaco-scrollable-element>.split-view-container>.split-view-view{width:100%}.monaco-split-view2.horizontal>.monaco-scrollable-element>.split-view-container>.split-view-view{height:100%}.monaco-split-view2.separator-border>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{content:" ";z-index:5;pointer-events:none;background-color:var(--separator-border);position:absolute;top:0;left:0}.monaco-split-view2.separator-border.horizontal>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{width:1px;height:100%}.monaco-split-view2.separator-border.vertical>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{width:100%;height:1px}.monaco-table{white-space:nowrap;flex-direction:column;width:100%;height:100%;display:flex;position:relative}.monaco-table>.monaco-split-view2{border-bottom:1px solid #0000}.monaco-table>.monaco-list{flex:1}.monaco-table-tr{height:100%;display:flex}.monaco-table-th{text-overflow:ellipsis;width:100%;height:100%;font-weight:700;overflow:hidden}.monaco-table-td,.monaco-table-th{box-sizing:border-box;white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;overflow:hidden}.monaco-table>.monaco-split-view2 .monaco-sash.vertical:before{content:"";left:calc(var(--sash-size)/2);border-left:1px solid #0000;width:0;position:absolute}.monaco-table>.monaco-split-view2,.monaco-table>.monaco-split-view2 .monaco-sash.vertical:before{transition:border-color .2s ease-out}.monaco-custom-toggle{float:left;cursor:pointer;box-sizing:border-box;-webkit-user-select:none;user-select:none;border:1px solid #0000;border-radius:3px;width:20px;height:20px;margin-left:2px;padding:1px;overflow:hidden}.monaco-custom-toggle:hover{background-color:var(--vscode-inputOption-hoverBackground)}.hc-black .monaco-custom-toggle:hover,.hc-light .monaco-custom-toggle:hover{border:1px dashed var(--vscode-focusBorder)}.hc-black .monaco-custom-toggle,.hc-black .monaco-custom-toggle:hover,.hc-light .monaco-custom-toggle,.hc-light .monaco-custom-toggle:hover{background:0 0}.monaco-custom-toggle.monaco-checkbox{opacity:1;border:1px solid #0000;border-radius:3px;width:18px;height:18px;margin-left:0;margin-right:9px;padding:0;background-size:16px!important}.monaco-custom-toggle.monaco-checkbox:not(.checked):before{visibility:hidden}.monaco-tl-row{align-items:center;height:100%;display:flex;position:relative}.monaco-tl-indent{pointer-events:none;height:100%;position:absolute;top:0;left:16px}.hide-arrows .monaco-tl-indent{left:12px}.monaco-tl-indent>.indent-guide{box-sizing:border-box;border-left:1px solid #0000;height:100%;transition:border-color .1s linear;display:inline-block}.monaco-tl-contents,.monaco-tl-twistie{height:100%}.monaco-tl-twistie{text-align:right;flex-shrink:0;justify-content:center;align-items:center;width:16px;padding-right:6px;font-size:10px;transform:translate(3px);display:flex!important}.monaco-tl-contents{flex:1;overflow:hidden}.monaco-tl-twistie:before{border-radius:20px}.monaco-tl-twistie.collapsed:before{transform:rotate(-90deg)}.monaco-tl-twistie.codicon-tree-item-loading:before{animation:1.25s steps(30,end) infinite codicon-spin}.monaco-tree-type-filter{z-index:100;width:160px;padding:3px;transition:top .3s;display:flex;position:absolute;top:0}.monaco-tree-type-filter.disabled{top:-40px}.monaco-tree-type-filter-grab{cursor:grab;justify-content:center;align-items:center;display:flex!important}.monaco-tree-type-filter-grab.grabbing{cursor:grabbing}.monaco-tree-type-filter-input{flex:1}.monaco-tree-type-filter-input .monaco-inputbox>.ibwrapper>.input,.monaco-tree-type-filter-input .monaco-inputbox>.ibwrapper>.mirror{padding:2px}.monaco-tree-type-filter-actionbar{margin-left:4px}.monaco-tree-type-filter-actionbar .monaco-action-bar .action-label{padding:2px}.quick-input-widget{z-index:2550;-webkit-app-region:no-drag;width:600px;margin-left:-300px;padding:0 1px 1px;position:absolute;left:50%}.quick-input-titlebar{align-items:center;display:flex}.quick-input-left-action-bar{flex:1;margin-left:4px;display:flex}.quick-input-title{text-align:center;text-overflow:ellipsis;padding:3px 0;overflow:hidden}.quick-input-right-action-bar{flex:1;margin-right:4px;display:flex}.quick-input-right-action-bar>.actions-container{justify-content:flex-end}.quick-input-titlebar .monaco-action-bar .action-label.codicon{background-position:50%;background-repeat:no-repeat;padding:2px}.quick-input-description{margin:6px}.quick-input-header .quick-input-description{margin:4px 2px}.quick-input-header{margin-bottom:-2px;padding:6px 6px 0;display:flex}.quick-input-widget.hidden-input .quick-input-header{margin-bottom:0;padding:0}.quick-input-and-message{flex-direction:column;flex-grow:1;min-width:0;display:flex;position:relative}.quick-input-check-all{align-self:center;margin:0}.quick-input-filter{flex-grow:1;display:flex;position:relative}.quick-input-box{flex-grow:1}.quick-input-widget.show-checkboxes .quick-input-box,.quick-input-widget.show-checkboxes .quick-input-message{margin-left:5px}.quick-input-visible-count{position:absolute;left:-10000px}.quick-input-count{align-self:center;align-items:center;display:flex;position:absolute;right:4px}.quick-input-count .monaco-count-badge{vertical-align:middle;border-radius:2px;min-height:auto;padding:2px 4px;line-height:normal}.quick-input-action{margin-left:6px}.quick-input-action .monaco-text-button{align-items:center;height:27.5px;padding:0 6px;font-size:11px;display:flex}.quick-input-message{overflow-wrap:break-word;margin-top:-1px;padding:5px}.quick-input-message>.codicon{vertical-align:text-bottom;margin:0 .2em}.quick-input-progress.monaco-progress-container{position:relative}.quick-input-progress.monaco-progress-container,.quick-input-progress.monaco-progress-container .progress-bit{height:2px}.quick-input-list{margin-top:6px;line-height:22px}.quick-input-widget.hidden-input .quick-input-list{margin-top:0}.quick-input-list .monaco-list{max-height:440px;overflow:hidden}.quick-input-list .quick-input-list-entry{box-sizing:border-box;height:100%;padding:0 6px;display:flex;overflow:hidden}.quick-input-list .quick-input-list-entry.quick-input-list-separator-border{border-top-style:solid;border-top-width:1px}.quick-input-list .monaco-list-row[data-index="0"] .quick-input-list-entry.quick-input-list-separator-border{border-top-style:none}.quick-input-list .quick-input-list-label{flex:1;height:100%;display:flex;overflow:hidden}.quick-input-list .quick-input-list-checkbox{align-self:center;margin:0}.quick-input-list .quick-input-list-rows{text-overflow:ellipsis;flex-direction:column;flex:1;height:100%;margin-left:5px;display:flex;overflow:hidden}.quick-input-widget.show-checkboxes .quick-input-list .quick-input-list-rows{margin-left:10px}.quick-input-widget .quick-input-list .quick-input-list-checkbox{display:none}.quick-input-widget.show-checkboxes .quick-input-list .quick-input-list-checkbox{display:inline}.quick-input-list .quick-input-list-rows>.quick-input-list-row{align-items:center;display:flex}.quick-input-list .quick-input-list-rows>.quick-input-list-row .monaco-icon-label,.quick-input-list .quick-input-list-rows>.quick-input-list-row .monaco-icon-label .monaco-icon-label-container>.monaco-icon-name-container{flex:1}.quick-input-list .quick-input-list-rows>.quick-input-list-row .codicon[class*=codicon-]{vertical-align:text-bottom}.quick-input-list .quick-input-list-rows .monaco-highlighted-label span{opacity:1}.quick-input-list .quick-input-list-entry .quick-input-list-entry-keybinding{margin-right:8px}.quick-input-list .quick-input-list-label-meta{opacity:.7;text-overflow:ellipsis;line-height:normal;overflow:hidden}.quick-input-list .monaco-highlighted-label .highlight{font-weight:700}.quick-input-list .quick-input-list-entry .quick-input-list-separator{margin-right:8px}.quick-input-list .quick-input-list-entry-action-bar{flex:0;display:flex;overflow:visible}.quick-input-list .quick-input-list-entry-action-bar .action-label{display:none}.quick-input-list .quick-input-list-entry-action-bar .action-label.codicon{margin-right:4px;padding:0 2px 2px}.quick-input-list .quick-input-list-entry-action-bar{margin-top:1px;margin-right:4px}.quick-input-list .monaco-list-row.focused .quick-input-list-entry-action-bar .action-label,.quick-input-list .quick-input-list-entry .quick-input-list-entry-action-bar .action-label.always-visible,.quick-input-list .quick-input-list-entry:hover .quick-input-list-entry-action-bar .action-label{display:flex}.quick-input-list .monaco-list-row.focused .monaco-keybinding-key,.quick-input-list .monaco-list-row.focused .quick-input-list-entry .quick-input-list-separator{color:inherit}.quick-input-list .monaco-list-row.focused .monaco-keybinding-key{background:0 0}.monaco-editor .inputarea{resize:none;color:#0000;background-color:#0000;border:none;min-width:0;min-height:0;margin:0;padding:0;position:absolute;overflow:hidden;outline:none!important}.monaco-editor .inputarea.ime-input{z-index:10}.monaco-editor .blockDecorations-container{position:absolute;top:0}.monaco-editor .blockDecorations-block{box-sizing:border-box;position:absolute}.monaco-editor .margin-view-overlays .current-line,.monaco-editor .view-overlays .current-line{box-sizing:border-box;display:block;position:absolute;top:0;left:0}.monaco-editor .margin-view-overlays .current-line.current-line-margin.current-line-margin-both{border-right:0}.monaco-editor .lines-content .cdr{position:absolute}.monaco-editor .glyph-margin{position:absolute;top:0}.monaco-editor .margin-view-overlays .cgmr{justify-content:center;align-items:center;display:flex;position:absolute}.monaco-editor .lines-content .core-guide{box-sizing:border-box;position:absolute}.monaco-editor .margin-view-overlays .line-numbers{font-variant-numeric:tabular-nums;text-align:right;vertical-align:middle;box-sizing:border-box;cursor:default;height:100%;display:inline-block;position:absolute}.monaco-editor .relative-current-line-number{text-align:left;width:100%;display:inline-block}.monaco-editor .margin-view-overlays .line-numbers.lh-odd{margin-top:1px}.mtkcontrol{color:#fff!important;background:#960000!important}.monaco-editor.no-user-select .lines-content,.monaco-editor.no-user-select .view-line,.monaco-editor.no-user-select .view-lines{-webkit-user-select:none;user-select:none}.monaco-editor.enable-user-select{user-select:initial;-webkit-user-select:initial;-ms-user-select:initial}.monaco-editor .view-lines{white-space:nowrap}.monaco-editor .view-line{width:100%;position:absolute}.monaco-editor .mtkz{display:inline-block}.monaco-editor .lines-decorations{background:#fff;position:absolute;top:0}.monaco-editor .margin-view-overlays .cldr{height:100%;position:absolute}.monaco-editor .margin-view-overlays .cmdr{width:100%;height:100%;position:absolute;left:0}.monaco-editor .minimap.slider-mouseover .minimap-slider{opacity:0;transition:opacity .1s linear}.monaco-editor .minimap.slider-mouseover .minimap-slider.active,.monaco-editor .minimap.slider-mouseover:hover .minimap-slider{opacity:1}.monaco-editor .minimap-shadow-hidden{width:0;position:absolute}.monaco-editor .minimap-shadow-visible{width:6px;position:absolute;left:-6px}.monaco-editor.no-minimap-shadow .minimap-shadow-visible{width:1px;position:absolute;left:-1px}.minimap.autohide{opacity:0;transition:opacity .5s}.minimap.autohide:hover{opacity:1}.monaco-editor .overlayWidgets{position:absolute;top:0;left:0}.monaco-editor .view-ruler{position:absolute;top:0}.monaco-editor .scroll-decoration{height:6px;position:absolute;top:0;left:0}.monaco-editor .lines-content .cslr{position:absolute}.monaco-editor .top-left-radius{border-top-left-radius:3px}.monaco-editor .bottom-left-radius{border-bottom-left-radius:3px}.monaco-editor .top-right-radius{border-top-right-radius:3px}.monaco-editor .bottom-right-radius{border-bottom-right-radius:3px}.monaco-editor.hc-black .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-black .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-black .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-black .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor.hc-light .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-light .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-light .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-light .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor .cursors-layer{position:absolute;top:0}.monaco-editor .cursors-layer>.cursor{position:absolute;overflow:hidden}.monaco-editor .cursors-layer.cursor-smooth-caret-animation>.cursor{transition:all 80ms}.monaco-editor .cursors-layer.cursor-block-outline-style>.cursor{box-sizing:border-box;border-style:solid;border-width:1px;background:0 0!important}.monaco-editor .cursors-layer.cursor-underline-style>.cursor{box-sizing:border-box;border-bottom-style:solid;border-bottom-width:2px;background:0 0!important}.monaco-editor .cursors-layer.cursor-underline-thin-style>.cursor{box-sizing:border-box;border-bottom-style:solid;border-bottom-width:1px;background:0 0!important}@keyframes monaco-cursor-smooth{0%,20%{opacity:1}60%,to{opacity:0}}@keyframes monaco-cursor-phase{0%,20%{opacity:1}90%,to{opacity:0}}@keyframes monaco-cursor-expand{0%,20%{transform:scaleY(1)}80%,to{transform:scaleY(0)}}.cursor-smooth{animation:.5s ease-in-out 20 alternate monaco-cursor-smooth}.cursor-phase{animation:.5s ease-in-out 20 alternate monaco-cursor-phase}.cursor-expand>.cursor{animation:.5s ease-in-out 20 alternate monaco-cursor-expand}.monaco-diff-editor .diffOverview{z-index:9}.monaco-diff-editor .diffOverview .diffViewport{z-index:10}.monaco-diff-editor.vs .diffOverview{background:#00000008}.monaco-diff-editor.vs-dark .diffOverview{background:#ffffff03}.monaco-scrollable-element.modified-in-monaco-diff-editor.vs-dark .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.vs .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-black .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-light .scrollbar{background:0 0}.monaco-scrollable-element.modified-in-monaco-diff-editor .slider{z-index:10}.modified-in-monaco-diff-editor .slider.active{background:#ababab66}.modified-in-monaco-diff-editor.hc-black .slider.active,.modified-in-monaco-diff-editor.hc-light .slider.active{background:0 0}.monaco-diff-editor .delete-sign,.monaco-diff-editor .insert-sign,.monaco-editor .delete-sign,.monaco-editor .insert-sign{align-items:center;opacity:.7!important;font-size:11px!important;display:flex!important}.monaco-diff-editor.hc-black .delete-sign,.monaco-diff-editor.hc-black .insert-sign,.monaco-diff-editor.hc-light .delete-sign,.monaco-diff-editor.hc-light .insert-sign,.monaco-editor.hc-black .delete-sign,.monaco-editor.hc-black .insert-sign,.monaco-editor.hc-light .delete-sign,.monaco-editor.hc-light .insert-sign{opacity:1}.monaco-editor .inline-added-margin-view-zone,.monaco-editor .inline-deleted-margin-view-zone{text-align:right}.monaco-editor .arrow-revert-change{z-index:10;position:absolute}.monaco-editor .arrow-revert-change:hover{cursor:pointer}.monaco-editor .view-zones .view-lines .view-line span{display:inline-block}.monaco-editor .margin-view-zones .lightbulb-glyph:hover{cursor:pointer}.monaco-diff-editor .diff-review-line-number{text-align:right;display:inline-block}.monaco-diff-editor .diff-review{-webkit-user-select:none;user-select:none;position:absolute}.monaco-diff-editor .diff-review-summary{padding-left:10px}.monaco-diff-editor .diff-review-shadow{position:absolute}.monaco-diff-editor .diff-review-row{white-space:pre}.monaco-diff-editor .diff-review-table{min-width:100%;display:table}.monaco-diff-editor .diff-review-row{width:100%;display:table-row}.monaco-diff-editor .diff-review-spacer{vertical-align:middle;width:10px;display:inline-block}.monaco-diff-editor .diff-review-spacer>.codicon{font-size:9px!important}.monaco-diff-editor .diff-review-actions{display:inline-block;position:absolute;top:2px;right:10px}.monaco-diff-editor .diff-review-actions .action-label{width:16px;height:16px;margin:2px 0}::-ms-clear{display:none}.monaco-editor .editor-widget input{color:inherit}.monaco-editor{-webkit-text-size-adjust:100%;position:relative;overflow:visible}.monaco-editor .overflow-guard{position:relative;overflow:hidden}.monaco-editor .view-overlays{position:absolute;top:0}.monaco-editor .selection-anchor{background-color:#007acc;width:2px!important}.monaco-editor .bracket-match{box-sizing:border-box}.monaco-editor .contentWidgets .codicon-light-bulb,.monaco-editor .contentWidgets .codicon-lightbulb-autofix{justify-content:center;align-items:center;display:flex}.monaco-editor .contentWidgets .codicon-light-bulb:hover,.monaco-editor .contentWidgets .codicon-lightbulb-autofix:hover{cursor:pointer}.monaco-editor .codelens-decoration{text-overflow:ellipsis;white-space:nowrap;color:var(--vscode-editorCodeLens-foreground);display:inline-block;overflow:hidden}.monaco-editor .codelens-decoration>a,.monaco-editor .codelens-decoration>span{-webkit-user-select:none;user-select:none;white-space:nowrap;vertical-align:sub}.monaco-editor .codelens-decoration>a{text-decoration:none}.monaco-editor .codelens-decoration>a:hover{cursor:pointer}.monaco-editor .codelens-decoration>a:hover,.monaco-editor .codelens-decoration>a:hover .codicon{color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .codelens-decoration .codicon{vertical-align:middle;color:var(--vscode-editorCodeLens-foreground);color:currentColor!important}.monaco-editor .codelens-decoration>a:hover .codicon:before{cursor:pointer}@keyframes fadein{0%{opacity:0;visibility:visible}to{opacity:1}}.monaco-editor .codelens-decoration.fadein{animation:.1s linear fadein}.colorpicker-widget{-webkit-user-select:none;user-select:none;height:190px}.colorpicker-color-decoration,.hc-light .colorpicker-color-decoration{box-sizing:border-box;cursor:pointer;border:.1em solid #000;width:.8em;height:.8em;margin:.1em .2em 0;line-height:.8em;display:inline-block}.hc-black .colorpicker-color-decoration,.vs-dark .colorpicker-color-decoration{border:.1em solid #eee}.colorpicker-header{height:24px;image-rendering:pixelated;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=) 0 0/9px 9px;display:flex;position:relative}.colorpicker-header .picked-color{cursor:pointer;color:#fff;flex:1;justify-content:center;align-items:center;width:216px;line-height:24px;display:flex}.colorpicker-header .picked-color .codicon{color:inherit;font-size:14px;position:absolute;left:8px}.colorpicker-header .picked-color.light{color:#000}.colorpicker-header .original-color{width:74px;z-index:inherit;cursor:pointer}.colorpicker-body{padding:8px;display:flex;position:relative}.colorpicker-body .saturation-wrap{flex:1;min-width:220px;height:150px;position:relative;overflow:hidden}.colorpicker-body .saturation-box{height:150px;position:absolute}.colorpicker-body .saturation-selection{border:1px solid #fff;border-radius:100%;width:9px;height:9px;margin:-5px 0 0 -5px;position:absolute;box-shadow:0 0 2px #000c}.colorpicker-body .strip{width:25px;height:150px}.colorpicker-body .hue-strip{cursor:grab;background:linear-gradient(red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red);margin-left:8px;position:relative}.colorpicker-body .opacity-strip{cursor:grab;image-rendering:pixelated;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=) 0 0/9px 9px;margin-left:8px;position:relative}.colorpicker-body .strip.grabbing{cursor:grabbing}.colorpicker-body .slider{box-sizing:border-box;border:1px solid #ffffffb5;width:calc(100% + 4px);height:4px;position:absolute;top:0;left:-2px;box-shadow:0 0 1px #000000d9}.colorpicker-body .strip .overlay{pointer-events:none;height:150px}.monaco-editor.hc-light .dnd-target,.monaco-editor.vs .dnd-target{color:#fff;border-right:2px dotted #000}.monaco-editor.vs-dark .dnd-target{color:#51504f;border-right:2px dotted #aeafad}.monaco-editor.hc-black .dnd-target{color:#000;border-right:2px dotted #fff}.monaco-editor.hc-black.mac.mouse-default .view-lines,.monaco-editor.hc-light.mac.mouse-default .view-lines,.monaco-editor.mouse-default .view-lines,.monaco-editor.vs-dark.mac.mouse-default .view-lines{cursor:default}.monaco-editor.hc-black.mac.mouse-copy .view-lines,.monaco-editor.hc-light.mac.mouse-copy .view-lines,.monaco-editor.mouse-copy .view-lines,.monaco-editor.vs-dark.mac.mouse-copy .view-lines{cursor:copy}.monaco-editor .find-widget{z-index:35;box-sizing:border-box;height:33px;padding:0 4px;line-height:19px;transition:transform .2s linear;position:absolute;overflow:hidden;transform:translateY(calc(-100% - 10px))}.monaco-workbench.reduce-motion .monaco-editor .find-widget{transition:transform linear}.monaco-editor .find-widget textarea{margin:0}.monaco-editor .find-widget.hiddenEditor{display:none}.monaco-editor .find-widget.replaceToggled>.replace-part{display:flex}.monaco-editor .find-widget.visible{transform:translateY(0)}.monaco-editor .find-widget .monaco-inputbox.synthetic-focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px}.monaco-editor .find-widget .monaco-inputbox .input{background-color:#0000;min-height:0}.monaco-editor .find-widget .monaco-findInput .input{font-size:13px}.monaco-editor .find-widget>.find-part,.monaco-editor .find-widget>.replace-part{margin:4px 0 0 17px;font-size:12px;display:flex}.monaco-editor .find-widget>.find-part .monaco-inputbox,.monaco-editor .find-widget>.replace-part .monaco-inputbox{min-height:25px}.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.mirror{padding-right:22px}.monaco-editor .find-widget>.find-part .monaco-inputbox>.ibwrapper>.input,.monaco-editor .find-widget>.find-part .monaco-inputbox>.ibwrapper>.mirror,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.input,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.mirror{padding-top:2px;padding-bottom:2px}.monaco-editor .find-widget>.find-part .find-actions,.monaco-editor .find-widget>.replace-part .replace-actions{align-items:center;height:25px;display:flex}.monaco-editor .find-widget .monaco-findInput{vertical-align:middle;flex:1;display:flex}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element{width:100%}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element .scrollbar.vertical{opacity:0}.monaco-editor .find-widget .matchesCount{flex:initial;vertical-align:middle;box-sizing:border-box;text-align:center;height:25px;margin:0 0 0 3px;padding:2px 0 0 2px;line-height:23px;display:flex}.monaco-editor .find-widget .button{flex:initial;cursor:pointer;background-position:50%;background-repeat:no-repeat;border-radius:5px;justify-content:center;align-items:center;width:16px;height:16px;margin-left:3px;padding:3px;display:flex}.monaco-editor .find-widget .codicon-find-selection{border-radius:5px;width:22px;height:22px;padding:3px}.monaco-editor .find-widget .button.left{margin-left:0;margin-right:3px}.monaco-editor .find-widget .button.wide{width:auto;padding:1px 6px;top:-1px}.monaco-editor .find-widget .button.toggle{box-sizing:border-box;border-radius:0;width:18px;height:100%;position:absolute;top:0;left:3px}.monaco-editor .find-widget .button.toggle.disabled{display:none}.monaco-editor .find-widget .disabled{color:var(--vscode-disabledForeground);cursor:default}.monaco-editor .find-widget>.replace-part{display:none}.monaco-editor .find-widget>.replace-part>.monaco-findInput{vertical-align:middle;flex:none;display:flex;position:relative}.monaco-editor .find-widget>.replace-part>.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.monaco-editor .find-widget.reduced-find-widget .matchesCount{display:none}.monaco-editor .find-widget.narrow-find-widget{max-width:257px!important}.monaco-editor .find-widget.collapsed-find-widget{max-width:170px!important}.monaco-editor .find-widget.collapsed-find-widget .button.next,.monaco-editor .find-widget.collapsed-find-widget .button.previous,.monaco-editor .find-widget.collapsed-find-widget .button.replace,.monaco-editor .find-widget.collapsed-find-widget .button.replace-all,.monaco-editor .find-widget.collapsed-find-widget>.find-part .monaco-findInput .controls{display:none}.monaco-editor .findMatch{animation-duration:0;animation-name:inherit!important}.monaco-editor .find-widget .monaco-sash{left:0!important}.monaco-editor.hc-black .find-widget .button:before{position:relative;top:1px;left:2px}.monaco-editor .margin-view-overlays .codicon-folding-collapsed,.monaco-editor .margin-view-overlays .codicon-folding-expanded{cursor:pointer;opacity:0;justify-content:center;align-items:center;margin-left:2px;font-size:140%;transition:opacity .5s;display:flex}.monaco-editor .margin-view-overlays .codicon.alwaysShowFoldIcons,.monaco-editor .margin-view-overlays .codicon.codicon-folding-collapsed,.monaco-editor .margin-view-overlays:hover .codicon{opacity:1}.monaco-editor .inline-folded:after{color:gray;content:"⋯";cursor:pointer;margin:.1em .2em 0;line-height:1em;display:inline}.monaco-editor .peekview-widget .head .peekview-title .severity-icon{vertical-align:text-top;margin-right:4px;display:inline-block}.monaco-editor .marker-widget{text-overflow:ellipsis;white-space:nowrap}.monaco-editor .marker-widget>.stale{opacity:.6;font-style:italic}.monaco-editor .marker-widget .title{padding-right:5px;display:inline-block}.monaco-editor .marker-widget .descriptioncontainer{white-space:pre;-webkit-user-select:text;user-select:text;padding:8px 12px 0 20px;position:absolute}.monaco-editor .marker-widget .descriptioncontainer .message{flex-direction:column;display:flex}.monaco-editor .marker-widget .descriptioncontainer .message .details{padding-left:6px}.monaco-editor .marker-widget .descriptioncontainer .message .source,.monaco-editor .marker-widget .descriptioncontainer .message span.code{opacity:.6}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link{opacity:.6;color:inherit}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:before{content:"("}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:after{content:")"}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link>span{text-underline-position:under;color:var(--vscode-textLink-activeForeground);border-bottom:1px solid #0000;text-decoration:underline}.monaco-editor .marker-widget .descriptioncontainer .filename{cursor:pointer}.monaco-editor .goto-definition-link{cursor:pointer;text-decoration:underline}.monaco-editor .zone-widget .zone-widget-container.reference-zone-widget{border-top-width:1px;border-bottom-width:1px}.monaco-editor .reference-zone-widget .inline{vertical-align:top;display:inline-block}.monaco-editor .reference-zone-widget .messages{text-align:center;width:100%;height:100%;padding:3em 0}.monaco-editor .reference-zone-widget .ref-tree{background-color:var(--vscode-peekViewResult-background);color:var(--vscode-peekViewResult-lineForeground);line-height:23px}.monaco-editor .reference-zone-widget .ref-tree .reference{text-overflow:ellipsis;overflow:hidden}.monaco-editor .reference-zone-widget .ref-tree .reference-file{width:100%;height:100%;color:var(--vscode-peekViewResult-fileForeground);display:inline-flex}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .selected .reference-file{color:inherit!important}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .monaco-list-rows>.monaco-list-row.selected:not(.highlighted){background-color:var(--vscode-peekViewResult-selectionBackground);color:var(--vscode-peekViewResult-selectionForeground)!important}.monaco-editor .reference-zone-widget .ref-tree .reference-file .count{margin-left:auto;margin-right:12px}.monaco-editor .reference-zone-widget .ref-tree .referenceMatch .highlight{background-color:var(--vscode-peekViewResult-matchHighlightBackground)}.monaco-editor .reference-zone-widget .preview .reference-decoration{background-color:var(--vscode-peekViewEditor-matchHighlightBackground);border:2px solid var(--vscode-peekViewEditor-matchHighlightBorder);box-sizing:border-box}.monaco-editor .reference-zone-widget .preview .monaco-editor .inputarea.ime-input,.monaco-editor .reference-zone-widget .preview .monaco-editor .monaco-editor-background{background-color:var(--vscode-peekViewEditor-background)}.monaco-editor .reference-zone-widget .preview .monaco-editor .margin{background-color:var(--vscode-peekViewEditorGutter-background)}.monaco-editor.hc-black .reference-zone-widget .ref-tree .reference-file,.monaco-editor.hc-light .reference-zone-widget .ref-tree .reference-file{font-weight:700}.monaco-editor.hc-black .reference-zone-widget .ref-tree .referenceMatch .highlight,.monaco-editor.hc-light .reference-zone-widget .ref-tree .referenceMatch .highlight{border:1px dotted var(--vscode-contrastActiveBorder,transparent);box-sizing:border-box}.monaco-editor .suggest-preview-additional-widget{white-space:nowrap}.monaco-editor .suggest-preview-additional-widget .content-spacer{color:#0000;white-space:pre}.monaco-editor .suggest-preview-additional-widget .button{cursor:pointer;text-underline-position:under;text-decoration:underline;display:inline-block}.monaco-editor .ghost-text-hidden{opacity:0;font-size:0}.monaco-editor .ghost-text-decoration,.monaco-editor .suggest-preview-text{font-style:italic}.monaco-editor .detected-link,.monaco-editor .detected-link-active,.monaco-editor .inline-completion-text-to-replace{text-underline-position:under;text-decoration:underline}.monaco-editor .detected-link-active{cursor:pointer}.monaco-editor .monaco-editor-overlaymessage{z-index:10000;padding-bottom:8px}.monaco-editor .monaco-editor-overlaymessage.below{z-index:10000;padding-top:8px;padding-bottom:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.monaco-editor .monaco-editor-overlaymessage.fadeIn{animation:.15s ease-out fadeIn}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.monaco-editor .monaco-editor-overlaymessage.fadeOut{animation:.1s ease-out fadeOut}.monaco-editor .monaco-editor-overlaymessage .message{color:var(--vscode-inputValidation-infoForeground);background-color:var(--vscode-inputValidation-infoBackground);border:1px solid var(--vscode-inputValidation-infoBorder);padding:1px 4px}.monaco-editor.hc-black .monaco-editor-overlaymessage .message,.monaco-editor.hc-light .monaco-editor-overlaymessage .message{border-width:2px}.monaco-editor .monaco-editor-overlaymessage .anchor{z-index:1000;border:8px solid #0000;position:absolute;width:0!important;height:0!important}.monaco-editor .monaco-editor-overlaymessage .anchor.top{border-bottom-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage .anchor.below{border-top-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage.below .anchor.below,.monaco-editor .monaco-editor-overlaymessage:not(.below) .anchor.top{display:none}.monaco-editor .monaco-editor-overlaymessage.below .anchor.top{display:inherit;top:-8px}.monaco-editor .parameter-hints-widget{z-index:39;cursor:default;flex-direction:column;line-height:1.5em;display:flex}.monaco-editor .parameter-hints-widget>.phwrapper{flex-direction:row;max-width:440px;display:flex}.monaco-editor .parameter-hints-widget.multiple{min-height:3.3em;padding:0}.monaco-editor .parameter-hints-widget.visible{transition:left 50ms ease-in-out}.monaco-editor .parameter-hints-widget p,.monaco-editor .parameter-hints-widget ul{margin:8px 0}.monaco-editor .parameter-hints-widget .body,.monaco-editor .parameter-hints-widget .monaco-scrollable-element{flex-direction:column;flex:1;min-height:100%;display:flex}.monaco-editor .parameter-hints-widget .signature{padding:4px 5px}.monaco-editor .parameter-hints-widget .docs{white-space:pre-wrap;padding:0 10px 0 5px}.monaco-editor .parameter-hints-widget .docs.empty{display:none}.monaco-editor .parameter-hints-widget .docs .markdown-docs{white-space:normal}.monaco-editor .parameter-hints-widget .docs .markdown-docs a:hover{cursor:pointer}.monaco-editor .parameter-hints-widget .docs .markdown-docs code{font-family:var(--monaco-monospace-font)}.monaco-editor .parameter-hints-widget .docs .code,.monaco-editor .parameter-hints-widget .docs .monaco-tokenized-source{white-space:pre-wrap}.monaco-editor .parameter-hints-widget .docs code{border-radius:3px;padding:0 .4em}.monaco-editor .parameter-hints-widget .controls{flex-direction:column;justify-content:flex-end;align-items:center;min-width:22px;display:none}.monaco-editor .parameter-hints-widget.multiple .controls{padding:0 2px;display:flex}.monaco-editor .parameter-hints-widget.multiple .button{cursor:pointer;background-repeat:no-repeat;width:16px;height:16px}.monaco-editor .parameter-hints-widget .button.previous{bottom:24px}.monaco-editor .parameter-hints-widget .overloads{text-align:center;height:12px;line-height:12px;font-family:var(--monaco-monospace-font)}.monaco-editor .parameter-hints-widget .signature .parameter.active{font-weight:700}.monaco-editor .parameter-hints-widget .documentation-parameter>.parameter{margin-right:.5em;font-weight:700}.monaco-editor .peekview-widget .head{box-sizing:border-box;flex-wrap:nowrap;justify-content:space-between;display:flex}.monaco-editor .peekview-widget .head .peekview-title{text-overflow:ellipsis;align-items:center;min-width:0;margin-left:20px;font-size:13px;display:flex;overflow:hidden}.monaco-editor .peekview-widget .head .peekview-title.clickable{cursor:pointer}.monaco-editor .peekview-widget .head .peekview-title .dirname:not(:empty){text-overflow:ellipsis;margin-left:.5em;font-size:.9em;overflow:hidden}.monaco-editor .peekview-widget .head .peekview-title .meta{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.monaco-editor .peekview-widget .head .peekview-title .dirname{white-space:nowrap}.monaco-editor .peekview-widget .head .peekview-title .filename{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.monaco-editor .peekview-widget .head .peekview-title .meta:not(:empty):before{content:"-";padding:0 .3em}.monaco-editor .peekview-widget .head .peekview-actions{text-align:right;flex:1;padding-right:2px}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar{display:inline-block}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar,.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar>.actions-container{height:100%}.monaco-editor .peekview-widget>.body{border-top:1px solid;position:relative}.monaco-editor .peekview-widget .head .peekview-title .codicon{margin-right:4px}.monaco-editor .peekview-widget .monaco-list .monaco-list-row.focused .codicon{color:inherit!important}.monaco-editor .rename-box{z-index:100;color:inherit}.monaco-editor .rename-box.preview{padding:3px 3px 0}.monaco-editor .rename-box .rename-input{width:calc(100% - 6px);padding:3px}.monaco-editor .rename-box .rename-label{opacity:.8;display:none}.monaco-editor .rename-box.preview .rename-label{display:inherit}.monaco-editor .snippet-placeholder{background-color:var(--vscode-editor-snippetTabstopHighlightBackground,transparent);outline-width:1px;outline-style:solid;outline-color:var(--vscode-editor-snippetTabstopHighlightBorder,transparent);min-width:2px}.monaco-editor .finish-snippet-placeholder{background-color:var(--vscode-editor-snippetFinalTabstopHighlightBackground,transparent);outline-width:1px;outline-style:solid;outline-color:var(--vscode-editor-snippetFinalTabstopHighlightBorder,transparent)}.monaco-editor .suggest-widget{z-index:40;flex-direction:column;width:430px;display:flex}.monaco-editor .suggest-widget.message{flex-direction:row;align-items:center}.monaco-editor .suggest-details,.monaco-editor .suggest-widget{border:1px solid var(--vscode-editorSuggestWidget-border);background-color:var(--vscode-editorSuggestWidget-background);flex:0 auto;width:100%}.monaco-editor.hc-black .suggest-details,.monaco-editor.hc-black .suggest-widget,.monaco-editor.hc-light .suggest-details,.monaco-editor.hc-light .suggest-widget{border-width:2px}.monaco-editor .suggest-widget .suggest-status-bar{box-sizing:border-box;border-top:1px solid var(--vscode-editorSuggestWidget-border);flex-flow:row;justify-content:space-between;width:100%;padding:0 4px;font-size:80%;display:none;overflow:hidden}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar{display:flex}.monaco-editor .suggest-widget .suggest-status-bar .left{padding-right:8px}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-label{color:var(--vscode-editorSuggestWidgetStatus-foreground)}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label{margin-right:0}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label:after{content:", ";margin-right:.3em}.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row.focused.string-label>.contents>.main>.right>.readMore,.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget.with-status-bar:not(.docs-side) .monaco-list .monaco-list-row:hover>.contents>.main>.right.can-expand-details>.details-label{width:100%}.monaco-editor .suggest-widget>.message{padding-left:22px}.monaco-editor .suggest-widget>.tree{width:100%;height:100%}.monaco-editor .suggest-widget .monaco-list{-webkit-user-select:none;user-select:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row{-mox-box-sizing:border-box;box-sizing:border-box;white-space:nowrap;cursor:pointer;touch-action:none;background-position:2px 2px;background-repeat:no-repeat;padding-right:10px;display:flex}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused{color:var(--vscode-editorSuggestWidget-selectedForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused .codicon{color:var(--vscode-editorSuggestWidget-selectedIconForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents{flex:1;height:100%;padding-left:2px;overflow:hidden}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main{text-overflow:ellipsis;white-space:pre;justify-content:space-between;display:flex;overflow:hidden}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{display:flex}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.focused)>.contents>.main .monaco-icon-label{color:var(--vscode-editorSuggestWidget-foreground)}.monaco-editor .suggest-widget:not(.frozen) .monaco-highlighted-label .highlight{font-weight:700}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main .monaco-highlighted-label .highlight{color:var(--vscode-editorSuggestWidget-highlightForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused>.contents>.main .monaco-highlighted-label .highlight{color:var(--vscode-editorSuggestWidget-focusHighlightForeground)}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:before{color:inherit;opacity:1;cursor:pointer;font-size:14px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close{position:absolute;top:6px;right:2px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close:hover,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:hover{opacity:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{opacity:.7}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.signature-label{text-overflow:ellipsis;opacity:.6;overflow:hidden}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.qualifier-label{opacity:.4;text-overflow:ellipsis;align-self:center;margin-left:12px;font-size:85%;line-height:normal;overflow:hidden}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{text-overflow:ellipsis;white-space:nowrap;margin-left:1.1em;font-size:85%;overflow:hidden}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label>.monaco-tokenized-source{display:inline}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{display:none}.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row.focused:not(.string-label)>.contents>.main>.right>.details-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label)>.contents>.main>.right>.details-label,.monaco-editor .suggest-widget:not(.shows-details) .monaco-list .monaco-list-row.focused>.contents>.main>.right>.details-label{display:inline}.monaco-editor .suggest-widget:not(.docs-side) .monaco-list .monaco-list-row.focused:hover>.contents>.main>.right.can-expand-details>.details-label{width:calc(100% - 26px)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left{flex-grow:1;flex-shrink:1;overflow:hidden}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.monaco-icon-label{flex-shrink:0}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label)>.contents>.main>.left>.monaco-icon-label{max-width:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label>.contents>.main>.left>.monaco-icon-label{flex-shrink:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{flex-shrink:4;max-width:70%;overflow:hidden}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{visibility:hidden;width:18px;height:18px;display:inline-block;position:absolute;right:10px}.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none!important}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused.string-label>.contents>.main>.right>.readMore{display:inline-block}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused:hover>.contents>.main>.right>.readMore{visibility:visible}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated{opacity:.66;-webkit-text-decoration:unset;text-decoration:unset}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated>.monaco-icon-label-container>.monaco-icon-name-container{text-decoration:line-through}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label:before{height:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon{background-position:50%;background-repeat:no-repeat;background-size:80%;width:16px;height:16px;margin-left:2px;display:block}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.hide{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .suggest-icon{align-items:center;margin-right:4px;display:flex}.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .icon,.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .suggest-icon:before{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.customcolor .colorspan{border:.1em solid #000;width:.7em;height:.7em;margin:0 0 0 .3em;display:inline-block}.monaco-editor .suggest-details-container{z-index:41}.monaco-editor .suggest-details{cursor:default;color:var(--vscode-editorSuggestWidget-foreground);flex-direction:column;display:flex}.monaco-editor .suggest-details.focused{border-color:var(--vscode-focusBorder)}.monaco-editor .suggest-details a{color:var(--vscode-textLink-foreground)}.monaco-editor .suggest-details a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .suggest-details code{background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .suggest-details.no-docs{display:none}.monaco-editor .suggest-details>.monaco-scrollable-element{flex:1}.monaco-editor .suggest-details>.monaco-scrollable-element>.body{box-sizing:border-box;width:100%;height:100%}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.type{text-overflow:ellipsis;opacity:.7;white-space:pre;flex:2;margin:0 24px 0 0;padding:4px 0 12px 5px;overflow:hidden}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.type.auto-wrap{white-space:normal;word-break:break-all}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs{white-space:pre-wrap;margin:0;padding:4px 5px}.monaco-editor .suggest-details.no-type>.monaco-scrollable-element>.body>.docs{margin-right:24px;overflow:hidden}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs{white-space:normal;min-height:calc(1rem + 8px);padding:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div,.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>span:not(:empty){padding:4px 5px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:first-child{margin-top:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:last-child{margin-bottom:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs .monaco-tokenized-source{white-space:pre}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs .code{white-space:pre-wrap;word-wrap:break-word}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs .codicon{vertical-align:sub}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>p:empty{display:none}.monaco-editor .suggest-details code{border-radius:3px;padding:0 .4em}.monaco-editor .suggest-details ol,.monaco-editor .suggest-details ul{padding-left:20px}.monaco-editor .suggest-details p code{font-family:var(--monaco-monospace-font)}.editor-banner{box-sizing:border-box;cursor:default;background:var(--vscode-banner-background);width:100%;height:26px;font-size:12px;display:flex;overflow:visible}.editor-banner .icon-container{flex-shrink:0;align-items:center;padding:0 6px 0 10px;display:flex}.editor-banner .icon-container.custom-icon{background-position:50%;background-repeat:no-repeat;background-size:16px;width:16px;margin:0 6px 0 10px;padding:0}.editor-banner .message-container{text-overflow:ellipsis;white-space:nowrap;align-items:center;line-height:26px;display:flex;overflow:hidden}.editor-banner .message-container p{margin-block:0}.editor-banner .message-actions-container{flex-grow:1;flex-shrink:0;margin:0 4px;line-height:26px}.editor-banner .message-actions-container a.monaco-button{width:inherit;margin:2px 8px;padding:0 12px}.editor-banner .message-actions-container a{margin-left:12px;padding:3px;text-decoration:underline}.editor-banner .action-container{padding:0 10px 0 6px}.editor-banner{background-color:var(--vscode-banner-background)}.editor-banner,.editor-banner .action-container .codicon,.editor-banner .message-actions-container .monaco-link{color:var(--vscode-banner-foreground)}.editor-banner .icon-container .codicon{color:var(--vscode-banner-iconForeground)}.monaco-editor .unicode-highlight{border:1px solid var(--vscode-editorUnicodeHighlight-border);background-color:var(--vscode-editorUnicodeHighlight-background);box-sizing:border-box}.monaco-editor .zone-widget{z-index:10;position:absolute}.monaco-editor .zone-widget .zone-widget-container{border-top-style:solid;border-top-width:0;border-bottom-style:solid;border-bottom-width:0;position:relative}.monaco-editor .accessibilityHelpWidget{vertical-align:middle;padding:10px;overflow:scroll}.monaco-editor .iPadShowKeyboard{resize:none;background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00OC4wMzYgNC4wMUg0LjAwOFYzMi4wM2g0NC4wMjhWNC4wMXpNNC4wMDguMDA4QTQuMDAzIDQuMDAzIDAgMDAuMDA1IDQuMDFWMzIuMDNhNC4wMDMgNC4wMDMgMCAwMDQuMDAzIDQuMDAyaDQ0LjAyOGE0LjAwMyA0LjAwMyAwIDAwNC4wMDMtNC4wMDJWNC4wMUE0LjAwMyA0LjAwMyAwIDAwNDguMDM2LjAwOEg0LjAwOHpNOC4wMSA4LjAxM2g0LjAwM3Y0LjAwM0g4LjAxVjguMDEzem0xMi4wMDggMGgtNC4wMDJ2NC4wMDNoNC4wMDJWOC4wMTN6bTQuMDAzIDBoNC4wMDJ2NC4wMDNoLTQuMDAyVjguMDEzem0xMi4wMDggMGgtNC4wMDN2NC4wMDNoNC4wMDNWOC4wMTN6bTQuMDAyIDBoNC4wMDN2NC4wMDNINDAuMDNWOC4wMTN6bS0yNC4wMTUgOC4wMDVIOC4wMXY0LjAwM2g4LjAwNnYtNC4wMDN6bTQuMDAyIDBoNC4wMDN2NC4wMDNoLTQuMDAzdi00LjAwM3ptMTIuMDA4IDBoLTQuMDAzdjQuMDAzaDQuMDAzdi00LjAwM3ptMTIuMDA4IDB2NC4wMDNoLTguMDA1di00LjAwM2g4LjAwNXptLTMyLjAyMSA4LjAwNUg4LjAxdjQuMDAzaDQuMDAzdi00LjAwM3ptNC4wMDMgMGgyMC4wMTN2NC4wMDNIMTYuMDE2di00LjAwM3ptMjguMDE4IDBINDAuMDN2NC4wMDNoNC4wMDN2LTQuMDAzeiIgZmlsbD0iIzQyNDI0MiIvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9ImNsaXAwIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMCAwaDUzdjM2SDB6Ii8+PC9jbGlwUGF0aD48L2RlZnM+PC9zdmc+) 50% no-repeat;border:4px solid #f6f6f6;border-radius:4px;width:58px;min-width:0;height:36px;min-height:0;margin:0;padding:0;position:absolute;overflow:hidden}.monaco-editor.vs-dark .iPadShowKeyboard{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00OC4wMzYgNC4wMUg0LjAwOFYzMi4wM2g0NC4wMjhWNC4wMXpNNC4wMDguMDA4QTQuMDAzIDQuMDAzIDAgMDAuMDA1IDQuMDFWMzIuMDNhNC4wMDMgNC4wMDMgMCAwMDQuMDAzIDQuMDAyaDQ0LjAyOGE0LjAwMyA0LjAwMyAwIDAwNC4wMDMtNC4wMDJWNC4wMUE0LjAwMyA0LjAwMyAwIDAwNDguMDM2LjAwOEg0LjAwOHpNOC4wMSA4LjAxM2g0LjAwM3Y0LjAwM0g4LjAxVjguMDEzem0xMi4wMDggMGgtNC4wMDJ2NC4wMDNoNC4wMDJWOC4wMTN6bTQuMDAzIDBoNC4wMDJ2NC4wMDNoLTQuMDAyVjguMDEzem0xMi4wMDggMGgtNC4wMDN2NC4wMDNoNC4wMDNWOC4wMTN6bTQuMDAyIDBoNC4wMDN2NC4wMDNINDAuMDNWOC4wMTN6bS0yNC4wMTUgOC4wMDVIOC4wMXY0LjAwM2g4LjAwNnYtNC4wMDN6bTQuMDAyIDBoNC4wMDN2NC4wMDNoLTQuMDAzdi00LjAwM3ptMTIuMDA4IDBoLTQuMDAzdjQuMDAzaDQuMDAzdi00LjAwM3ptMTIuMDA4IDB2NC4wMDNoLTguMDA1di00LjAwM2g4LjAwNXptLTMyLjAyMSA4LjAwNUg4LjAxdjQuMDAzaDQuMDAzdi00LjAwM3ptNC4wMDMgMGgyMC4wMTN2NC4wMDNIMTYuMDE2di00LjAwM3ptMjguMDE4IDBINDAuMDN2NC4wMDNoNC4wMDN2LTQuMDAzeiIgZmlsbD0iI0M1QzVDNSIvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9ImNsaXAwIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMCAwaDUzdjM2SDB6Ii8+PC9jbGlwUGF0aD48L2RlZnM+PC9zdmc+) 50% no-repeat;border:4px solid #252526}.monaco-editor .tokens-inspect-widget{z-index:50;-webkit-user-select:text;user-select:text;padding:10px}.tokens-inspect-separator{border:0;height:1px}.monaco-editor .tokens-inspect-widget .tm-token{font-family:var(--monaco-monospace-font)}.monaco-editor .tokens-inspect-widget .tm-token-length{float:right;font-size:60%;font-weight:400}.monaco-editor .tokens-inspect-widget .tm-metadata-table{width:100%}.monaco-editor .tokens-inspect-widget .tm-metadata-value{font-family:var(--monaco-monospace-font);text-align:right}.monaco-editor .tokens-inspect-widget .tm-token-type{font-family:var(--monaco-monospace-font)}.quick-input-widget{font-size:13px}.quick-input-widget .monaco-highlighted-label .highlight{color:#0066bf}.vs .quick-input-widget .monaco-list-row.focused .monaco-highlighted-label .highlight{color:#9dddff}.vs-dark .quick-input-widget .monaco-highlighted-label .highlight{color:#0097fb}.hc-black .quick-input-widget .monaco-highlighted-label .highlight{color:#f38518}.hc-light .quick-input-widget .monaco-highlighted-label .highlight{color:#0f4a85}.monaco-keybinding>.monaco-keybinding-key{color:#555;background-color:#ddd6;border:1px solid #ccc6;border-bottom-color:#bbb6;box-shadow:inset 0 -1px #bbb6}.hc-black .monaco-keybinding>.monaco-keybinding-key{box-shadow:none;color:#fff;background-color:#0000;border:1px solid #6fc3df}.hc-light .monaco-keybinding>.monaco-keybinding-key{box-shadow:none;color:#292929;background-color:#0000;border:1px solid #0f4a85}.vs-dark .monaco-keybinding>.monaco-keybinding-key{color:#ccc;background-color:#8080802b;border:1px solid #3339;border-bottom-color:#4449;box-shadow:inset 0 -1px #4449}.monaco-editor{--monaco-monospace-font:"SF Mono",Monaco,Menlo,Consolas,"Ubuntu Mono","Liberation Mono","DejaVu Sans Mono","Courier New",monospace;font-family:-apple-system,BlinkMacSystemFont,Segoe WPC,Segoe UI,HelveticaNeue-Light,system-ui,Ubuntu,Droid Sans,sans-serif}.monaco-editor.hc-black .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.hc-light .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-menu .monaco-action-bar.vertical .action-item .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-hover p{margin:0}.monaco-aria-container{clip:rect(1px,1px,1px,1px);clip-path:inset(50%);width:1px;height:1px;margin:-1px;padding:0;top:0;overflow:hidden;position:absolute!important}.monaco-editor.hc-black,.monaco-editor.hc-light{-ms-high-contrast-adjust:none}@media screen and (-ms-high-contrast:active){.monaco-editor.vs-dark .view-overlays .current-line,.monaco-editor.vs .view-overlays .current-line{border-left:0;border-right:0;border-color:windowtext!important}.monaco-editor.vs-dark .cursor,.monaco-editor.vs .cursor{background-color:windowtext!important}.monaco-editor.vs-dark .dnd-target,.monaco-editor.vs .dnd-target{border-color:windowtext!important}.monaco-editor.vs-dark .selected-text,.monaco-editor.vs .selected-text{background-color:highlight!important}.monaco-editor.vs-dark .view-line,.monaco-editor.vs .view-line{-ms-high-contrast-adjust:none}.monaco-editor.vs-dark .view-line span,.monaco-editor.vs .view-line span{color:windowtext!important}.monaco-editor.vs-dark .view-line span.inline-selected-text,.monaco-editor.vs .view-line span.inline-selected-text{color:highlighttext!important}.monaco-editor.vs-dark .view-overlays,.monaco-editor.vs .view-overlays{-ms-high-contrast-adjust:none}.monaco-editor.vs-dark .reference-decoration,.monaco-editor.vs-dark .selectionHighlight,.monaco-editor.vs-dark .wordHighlight,.monaco-editor.vs-dark .wordHighlightStrong,.monaco-editor.vs .reference-decoration,.monaco-editor.vs .selectionHighlight,.monaco-editor.vs .wordHighlight,.monaco-editor.vs .wordHighlightStrong{box-sizing:border-box;background:0 0!important;border:2px dotted highlight!important}.monaco-editor.vs-dark .rangeHighlight,.monaco-editor.vs .rangeHighlight{box-sizing:border-box;background:0 0!important;border:1px dotted activeborder!important}.monaco-editor.vs-dark .bracket-match,.monaco-editor.vs .bracket-match{background:0 0!important;border-color:windowtext!important}.monaco-editor.vs-dark .currentFindMatch,.monaco-editor.vs-dark .findMatch,.monaco-editor.vs .currentFindMatch,.monaco-editor.vs .findMatch{box-sizing:border-box;background:0 0!important;border:2px dotted activeborder!important}.monaco-editor.vs-dark .find-widget,.monaco-editor.vs .find-widget{border:1px solid windowtext}.monaco-editor.vs-dark .monaco-list .monaco-list-row,.monaco-editor.vs .monaco-list .monaco-list-row{-ms-high-contrast-adjust:none;color:windowtext!important}.monaco-editor.vs-dark .monaco-list .monaco-list-row.focused,.monaco-editor.vs .monaco-list .monaco-list-row.focused{color:highlighttext!important;background-color:highlight!important}.monaco-editor.vs-dark .monaco-list .monaco-list-row:hover,.monaco-editor.vs .monaco-list .monaco-list-row:hover{box-sizing:border-box;border:1px solid highlight;background:0 0!important}.monaco-editor.vs-dark .monaco-scrollable-element>.scrollbar,.monaco-editor.vs .monaco-scrollable-element>.scrollbar{-ms-high-contrast-adjust:none;box-sizing:border-box;border:1px solid windowtext;background:background!important}.monaco-editor.vs-dark .monaco-scrollable-element>.scrollbar>.slider,.monaco-editor.vs .monaco-scrollable-element>.scrollbar>.slider{background:windowtext!important}.monaco-editor.vs-dark .monaco-scrollable-element>.scrollbar>.slider.active,.monaco-editor.vs-dark .monaco-scrollable-element>.scrollbar>.slider:hover,.monaco-editor.vs .monaco-scrollable-element>.scrollbar>.slider.active,.monaco-editor.vs .monaco-scrollable-element>.scrollbar>.slider:hover{background:highlight!important}.monaco-editor.vs-dark .decorationsOverviewRuler,.monaco-editor.vs .decorationsOverviewRuler{opacity:0}.monaco-editor.vs-dark .minimap,.monaco-editor.vs .minimap{display:none}.monaco-editor.vs-dark .squiggly-d-error,.monaco-editor.vs .squiggly-d-error{border-bottom:4px double #e47777;background:0 0!important}.monaco-editor.vs-dark .squiggly-b-info,.monaco-editor.vs-dark .squiggly-c-warning,.monaco-editor.vs .squiggly-b-info,.monaco-editor.vs .squiggly-c-warning{border-bottom:4px double #71b771}.monaco-editor.vs-dark .squiggly-a-hint,.monaco-editor.vs .squiggly-a-hint{border-bottom:4px double #6c6c6c}.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.vs .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label{-ms-high-contrast-adjust:none;color:highlighttext!important;background-color:highlight!important}.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:hover .action-label,.monaco-editor.vs .monaco-menu .monaco-action-bar.vertical .action-menu-item:hover .action-label{-ms-high-contrast-adjust:none;box-sizing:border-box;border:1px solid highlight;background:0 0!important}.monaco-diff-editor.vs-dark .diffOverviewRuler,.monaco-diff-editor.vs .diffOverviewRuler{display:none}.monaco-editor.vs-dark .line-delete,.monaco-editor.vs-dark .line-insert,.monaco-editor.vs .line-delete,.monaco-editor.vs .line-insert{box-sizing:border-box;background:0 0!important;border:1px solid highlight!important}.monaco-editor.vs-dark .char-delete,.monaco-editor.vs-dark .char-insert,.monaco-editor.vs .char-delete,.monaco-editor.vs .char-insert{background:0 0!important}}.monaco-action-bar .action-item.menu-entry .action-label.icon{background-position:50%;background-repeat:no-repeat;background-size:16px;width:16px;height:16px}.monaco-dropdown-with-default{border-radius:5px;flex-direction:row;display:flex!important}.monaco-dropdown-with-default>.action-container>.action-label{margin-right:0}.monaco-dropdown-with-default>.action-container.menu-entry>.action-label.icon{background-position:50%;background-repeat:no-repeat;background-size:16px;width:16px;height:16px}.monaco-dropdown-with-default>.dropdown-action-container>.monaco-dropdown>.dropdown-label .codicon[class*=codicon-]{margin-left:-3px;padding-left:0;padding-right:0;font-size:12px;line-height:16px}.monaco-dropdown-with-default>.dropdown-action-container>.monaco-dropdown>.dropdown-label>.action-label{background-position:50%;background-repeat:no-repeat;background-size:16px;display:block}.blocks-app .user-list{z-index:10;background:#fff0;padding:1px;display:flex;position:absolute;bottom:10px;left:10px}.blocks-app .user{text-align:center;align-items:center;width:0;height:35px;margin-left:20px;transition:all .4s cubic-bezier(.645,.045,.355,1);display:flex;position:relative}.blocks-app .user:first-child{margin-left:0}.blocks-app .user-list.open .user:not(:first-child){margin-left:38px}.blocks-app .user:before{content:"";background:var(--user-color,white);border:1.5px solid var(--border-color,white);border-radius:50%;width:34px;height:34px;transition:all .2s cubic-bezier(.645,.045,.355,1);display:block;position:absolute}.blocks-app .user div{width:34px;color:var(--text-color,white);cursor:default;border-radius:50%;font-weight:600;line-height:40px;text-decoration:none;position:absolute}`)),document.head.appendChild(e)}}catch(e){console.error(`vite-plugin-css-injected-by-js`,e)}})();__emailmaker__.define(`static/core/9b9ddaef2.js`,[`require`,`exports`,`module`,`static/core/91d328d8.js`,`static/core/ef87b75c.js`,`static/core/96371334.js`,`static/core/24faedf0.js`,`static/core/5d47e095.js`,`static/core/f83d7ac42.js`,`react`,`prop-types`,`antd`,`@ant-design/icons`,`react/jsx-runtime`],function(e,t,n){let r=e(`./91d328d8.js`),i=e(`./5d47e095.js`),a=e(`./ef87b75c.js`),o=e(`./96371334.js`),s=e(`./24faedf0.js`),c=e(`./f83d7ac42.js`),l=e(`react`);l=r.u(l);let u=e(`prop-types`);u=r.u(u);let d=e(`antd`),f=e(`@ant-design/icons`),p=e(`react/jsx-runtime`);var m=`emailmaker`.replace(/-/g,``)+`emailmakerMonacoEnvironment`,h=`__monaco_worker_url_initialized__`;function g(){if(window[h])return;let e=`monacoeditorwork/`,t=`.bundle.js`,n={editorWorkerService:`${e}editor.worker${t}`,html:`${e}html.worker${t}`,css:`${e}css.worker${t}`,typescript:`${e}ts.worker${t}`,json:`${e}json.worker${t}`,javascript:`${e}ts.worker${t}`,less:`${e}css.worker${t}`,scss:`${e}css.worker${t}`,handlebars:`${e}html.worker${t}`,razor:`${e}html.worker${t}`};function r(e){return e.replace(/\/$/,``)}function i(e,t){/^(\/\/)/.test(e)&&(e=window.location.protocol+e);let n=`/*`+t+`*/importScripts("`+e+`");`,r=new Blob([n],{type:`application/javascript`});return URL.createObjectURL(r)}let a=(e,t)=>{let a=c.t(),o=n[t];o||`${t}`;let s=(a?r(a)+`/`:``)+(o||n.editorWorkerService);`${t}${s}`;let l=new URL(s,window.location.origin),u=l.protocol;if(u===`http:`||u===`https:`){if(l.protocol!==window.location.protocol||l.hostname!==window.location.hostname||l.hostname===`localhost`&&(l.port||`80`)!==(window.location.port||`80`))return i(s,t)}else if(u===`file:`)return i(s,t);return s},o=window[m]||window.emailmakerMonacoEnvironment;o||(o={},window.emailmakerMonacoEnvironment=o),o.getWorkerUrl=a,window[h]=!0}g();var _=Object.defineProperty,v=Object.getOwnPropertyDescriptor,ee=Object.getOwnPropertyNames,te=Object.prototype.hasOwnProperty,y=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let i of ee(t))!te.call(e,i)&&i!==n&&_(e,i,{get:()=>t[i],enumerable:!(r=v(t,i))||r.enumerable});return e},b=(e,t,n)=>(y(e,t,`default`),n&&y(n,t,`default`)),x={};b(x,o.m);var ne={},re={},ie=class{static getOrCreate(e){return re[e]||(re[e]=new ie(e)),re[e]}_languageId;_loadingTriggered;_lazyLoadPromise;_lazyLoadPromiseResolve;_lazyLoadPromiseReject;constructor(e){this._languageId=e,this._loadingTriggered=!1,this._lazyLoadPromise=new Promise((e,t)=>{this._lazyLoadPromiseResolve=e,this._lazyLoadPromiseReject=t})}load(){return this._loadingTriggered||(this._loadingTriggered=!0,ne[this._languageId].loader().then(e=>this._lazyLoadPromiseResolve(e),e=>this._lazyLoadPromiseReject(e))),this._lazyLoadPromise}};function S(e){let t=e.id;ne[t]=e,x.languages.register(e);let n=ie.getOrCreate(t);x.languages.registerTokensProviderFactory(t,{create:async()=>(await n.load()).language}),x.languages.onLanguage(t,async()=>{let e=await n.load();x.languages.setLanguageConfiguration(t,e.conf)})}S({id:`css`,extensions:[`.css`],aliases:[`CSS`,`css`],mimetypes:[`text/css`],loader:()=>Promise.resolve().then(()=>e(`./346aabd2.js`))}),S({id:`html`,extensions:[`.html`,`.htm`,`.shtml`,`.xhtml`,`.mdoc`,`.jsp`,`.asp`,`.aspx`,`.jshtm`],aliases:[`HTML`,`htm`,`html`,`xhtml`],mimetypes:[`text/html`,`text/x-jshtm`,`text/template`,`text/ng-template`],loader:()=>Promise.resolve().then(()=>e(`./cfac3d32.js`))}),S({id:`javascript`,extensions:[`.js`,`.es6`,`.jsx`,`.mjs`,`.cjs`],firstLine:`^#!.*\\bnode`,filenames:[`jakefile`],aliases:[`JavaScript`,`javascript`,`js`],mimetypes:[`text/javascript`],loader:()=>Promise.resolve().then(()=>e(`./563a283d.js`))}),S({id:`typescript`,extensions:[`.ts`,`.tsx`],aliases:[`TypeScript`,`ts`,`typescript`],mimetypes:[`text/typescript`],loader:()=>Promise.resolve().then(()=>e(`./8756d562.js`))});var C=Object.defineProperty,ae=Object.getOwnPropertyDescriptor,oe=Object.getOwnPropertyNames,se=Object.prototype.hasOwnProperty,ce=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let i of oe(t))!se.call(e,i)&&i!==n&&C(e,i,{get:()=>t[i],enumerable:!(r=ae(t,i))||r.enumerable});return e},le=(e,t,n)=>(ce(e,t,`default`),n&&ce(n,t,`default`)),ue={};le(ue,o.m);var de=class{_onDidChange=new ue.Emitter;_options;_modeConfiguration;_languageId;constructor(e,t,n){this._languageId=e,this.setOptions(t),this.setModeConfiguration(n)}get onDidChange(){return this._onDidChange.event}get languageId(){return this._languageId}get modeConfiguration(){return this._modeConfiguration}get diagnosticsOptions(){return this.options}get options(){return this._options}setOptions(e){this._options=e||Object.create(null),this._onDidChange.fire(this)}setDiagnosticsOptions(e){this.setOptions(e)}setModeConfiguration(e){this._modeConfiguration=e||Object.create(null),this._onDidChange.fire(this)}},fe={validate:!0,lint:{compatibleVendorPrefixes:`ignore`,vendorPrefix:`warning`,duplicateProperties:`warning`,emptyRules:`warning`,importStatement:`ignore`,boxModel:`ignore`,universalSelector:`ignore`,zeroUnits:`ignore`,fontFaceProperties:`warning`,hexColorLength:`error`,argumentsInColorFunction:`error`,unknownProperties:`warning`,ieHack:`ignore`,unknownVendorSpecificProperties:`ignore`,propertyIgnoredDueToDisplay:`warning`,important:`ignore`,float:`ignore`,idSelector:`ignore`},data:{useDefaultDataProvider:!0},format:{newlineBetweenSelectors:!0,newlineBetweenRules:!0,spaceAroundSelectorSeparator:!1,braceStyle:`collapse`,maxPreserveNewLines:void 0,preserveNewLines:!0}},w={completionItems:!0,hovers:!0,documentSymbols:!0,definitions:!0,references:!0,documentHighlights:!0,rename:!0,colors:!0,foldingRanges:!0,diagnostics:!0,selectionRanges:!0,documentFormattingEdits:!0,documentRangeFormattingEdits:!0},T=new de(`css`,fe,w),pe=new de(`scss`,fe,w),me=new de(`less`,fe,w);ue.languages.css={cssDefaults:T,lessDefaults:me,scssDefaults:pe};function he(){return Promise.resolve().then(()=>e(`./50ff48bc.js`))}ue.languages.onLanguage(`less`,()=>{he().then(e=>e.setupMode(me))}),ue.languages.onLanguage(`scss`,()=>{he().then(e=>e.setupMode(pe))}),ue.languages.onLanguage(`css`,()=>{he().then(e=>e.setupMode(T))});var ge=Object.defineProperty,_e=Object.getOwnPropertyDescriptor,ve=Object.getOwnPropertyNames,ye=Object.prototype.hasOwnProperty,E=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let i of ve(t))!ye.call(e,i)&&i!==n&&ge(e,i,{get:()=>t[i],enumerable:!(r=_e(t,i))||r.enumerable});return e},be=(e,t,n)=>(E(e,t,`default`),n&&E(n,t,`default`)),xe={};be(xe,o.m);var Se=class{_onDidChange=new xe.Emitter;_options;_modeConfiguration;_languageId;_extraLibs;constructor(e,t,n){this._languageId=e,this.setOptions(t),this.setModeConfiguration(n),this._extraLibs=Object.create(null)}getExtraLibs(){return this._extraLibs}addExtraLib(e,t){let n;if(n=t===void 0?`ts:extralib-${Math.random().toString(36).substring(2,15)}`:t,this._extraLibs[n]&&this._extraLibs[n].content===e)return{dispose:()=>{}};let r=1;return this._extraLibs[n]&&(r=this._extraLibs[n].version+1),this._extraLibs[n]={content:e,version:r},{dispose:()=>{let e=this._extraLibs[n];e&&e.version===r&&delete this._extraLibs[n]}}}get onDidChange(){return this._onDidChange.event}get languageId(){return this._languageId}get options(){return this._options}get modeConfiguration(){return this._modeConfiguration}setOptions(e){this._options=e||Object.create(null),this._onDidChange.fire(this)}setModeConfiguration(e){this._modeConfiguration=e||Object.create(null),this._onDidChange.fire(this)}},Ce={format:{tabSize:4,insertSpaces:!1,wrapLineLength:120,unformatted:`default": "a, abbr, acronym, b, bdo, big, br, button, cite, code, dfn, em, i, img, input, kbd, label, map, object, q, samp, select, small, span, strong, sub, sup, textarea, tt, var`,contentUnformatted:`pre`,indentInnerHtml:!1,preserveNewLines:!0,maxPreserveNewLines:void 0,indentHandlebars:!1,endWithNewline:!1,extraLiners:`head, body, /html`,wrapAttributes:`auto`},suggest:{},data:{useDefaultDataProvider:!0}};function we(e){return{completionItems:!0,hovers:!0,documentSymbols:!0,links:!0,documentHighlights:!0,rename:!0,colors:!0,signatureHelp:!0,foldingRanges:!0,selectionRanges:!0,diagnostics:e===Te,documentFormattingEdits:e===Te,documentRangeFormattingEdits:e===Te}}var Te=`html`,Ee=`handlebars`,De=`razor`,Oe=Fe(Te,Ce,we(Te)),ke=Oe.defaults,Ae=Fe(Ee,Ce,we(Ee)),je=Ae.defaults,Me=Fe(De,Ce,we(De)),Ne=Me.defaults;xe.languages.html={htmlDefaults:ke,razorDefaults:Ne,handlebarDefaults:je,htmlLanguageService:Oe,handlebarLanguageService:Ae,razorLanguageService:Me,registerHTMLLanguageService:Fe};function Pe(){return Promise.resolve().then(()=>e(`./e4071c1a.js`))}function Fe(e,t=Ce,n=we(e)){let r=new Se(e,t,n),i,a=xe.languages.onLanguage(e,async()=>{i=(await Pe()).setupMode(r)});return{defaults:r,dispose(){a.dispose(),i?.dispose(),i=void 0}}}var Ie=Object.defineProperty,Le=Object.getOwnPropertyDescriptor,Re=Object.getOwnPropertyNames,ze=Object.prototype.hasOwnProperty,Be=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let i of Re(t))!ze.call(e,i)&&i!==n&&Ie(e,i,{get:()=>t[i],enumerable:!(r=Le(t,i))||r.enumerable});return e},Ve=(e,t,n)=>(Be(e,t,`default`),n&&Be(n,t,`default`)),He={};Ve(He,o.m);var Ue=new class{_onDidChange=new He.Emitter;_diagnosticsOptions;_modeConfiguration;_languageId;constructor(e,t,n){this._languageId=e,this.setDiagnosticsOptions(t),this.setModeConfiguration(n)}get onDidChange(){return this._onDidChange.event}get languageId(){return this._languageId}get modeConfiguration(){return this._modeConfiguration}get diagnosticsOptions(){return this._diagnosticsOptions}setDiagnosticsOptions(e){this._diagnosticsOptions=e||Object.create(null),this._onDidChange.fire(this)}setModeConfiguration(e){this._modeConfiguration=e||Object.create(null),this._onDidChange.fire(this)}}(`json`,{validate:!0,allowComments:!0,schemas:[],enableSchemaRequest:!1,schemaRequest:`warning`,schemaValidation:`warning`,comments:`error`,trailingCommas:`error`},{documentFormattingEdits:!0,documentRangeFormattingEdits:!0,completionItems:!0,hovers:!0,documentSymbols:!0,tokens:!0,colors:!0,foldingRanges:!0,diagnostics:!0,selectionRanges:!0});He.languages.json={jsonDefaults:Ue};function We(){return Promise.resolve().then(()=>e(`./9270dbb6.js`))}He.languages.register({id:`json`,extensions:[`.json`,`.bowerrc`,`.jshintrc`,`.jscsrc`,`.eslintrc`,`.babelrc`,`.har`],aliases:[`JSON`,`json`],mimetypes:[`application/json`]}),He.languages.onLanguage(`json`,()=>{We().then(e=>e.setupMode(Ue))});var Ge=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Ke=function(e,t){return function(n,r){t(n,r,e)}},qe=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Je=new a.Da(`selectionAnchorSet`,!1),Ye=class e{constructor(e,t){this.editor=e,this.selectionAnchorSetContextKey=Je.bindTo(t),this.modelChangeListener=e.onDidChangeModel(()=>this.selectionAnchorSetContextKey.reset())}static get(t){return t.getContribution(e.ID)}setSelectionAnchor(){if(this.editor.hasModel()){let e=this.editor.getPosition();this.editor.changeDecorations(t=>{this.decorationId&&t.removeDecoration(this.decorationId),this.decorationId=t.addDecoration(a.Dl.fromPositions(e,e),{description:`selection-anchor`,stickiness:1,hoverMessage:new o.Jt().appendText(a.Td(`selectionAnchor`,`Selection Anchor`)),className:`selection-anchor`})}),this.selectionAnchorSetContextKey.set(!!this.decorationId),o.Zn(a.Td(`anchorSet`,`Anchor set at {0}:{1}`,e.lineNumber,e.column))}}goToSelectionAnchor(){if(this.editor.hasModel()&&this.decorationId){let e=this.editor.getModel().getDecorationRange(this.decorationId);e&&this.editor.setPosition(e.getStartPosition())}}selectFromAnchorToCursor(){if(this.editor.hasModel()&&this.decorationId){let e=this.editor.getModel().getDecorationRange(this.decorationId);if(e){let t=this.editor.getPosition();this.editor.setSelection(a.Dl.fromPositions(e.getStartPosition(),t)),this.cancelSelectionAnchor()}}}cancelSelectionAnchor(){if(this.decorationId){let e=this.decorationId;this.editor.changeDecorations(t=>{t.removeDecoration(e),this.decorationId=void 0}),this.selectionAnchorSetContextKey.set(!1)}}dispose(){this.cancelSelectionAnchor(),this.modelChangeListener.dispose()}};Ye.ID=`editor.contrib.selectionAnchorController`,Ye=Ge([Ke(1,a.Ea)],Ye);var Xe=class extends a.Gi{constructor(){super({id:`editor.action.setSelectionAnchor`,label:a.Td(`setSelectionAnchor`,`Set Selection Anchor`),alias:`Set Selection Anchor`,precondition:void 0,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:a.Rl(2089,2080),weight:100}})}run(e,t){var n;return qe(this,void 0,void 0,function*(){(n=Ye.get(t))==null||n.setSelectionAnchor()})}},Ze=class extends a.Gi{constructor(){super({id:`editor.action.goToSelectionAnchor`,label:a.Td(`goToSelectionAnchor`,`Go to Selection Anchor`),alias:`Go to Selection Anchor`,precondition:Je})}run(e,t){var n;return qe(this,void 0,void 0,function*(){(n=Ye.get(t))==null||n.goToSelectionAnchor()})}},Qe=class extends a.Gi{constructor(){super({id:`editor.action.selectFromAnchorToCursor`,label:a.Td(`selectFromAnchorToCursor`,`Select from Anchor to Cursor`),alias:`Select from Anchor to Cursor`,precondition:Je,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:a.Rl(2089,2089),weight:100}})}run(e,t){var n;return qe(this,void 0,void 0,function*(){(n=Ye.get(t))==null||n.selectFromAnchorToCursor()})}},$e=class extends a.Gi{constructor(){super({id:`editor.action.cancelSelectionAnchor`,label:a.Td(`cancelSelectionAnchor`,`Cancel Selection Anchor`),alias:`Cancel Selection Anchor`,precondition:Je,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:9,weight:100}})}run(e,t){var n;return qe(this,void 0,void 0,function*(){(n=Ye.get(t))==null||n.cancelSelectionAnchor()})}};a.ta(Ye.ID,Ye),a.$i(Xe),a.$i(Ze),a.$i(Qe),a.$i($e);var et=a.Ti(`editorOverviewRuler.bracketMatchForeground`,{dark:`#A0A0A0`,light:`#A0A0A0`,hcDark:`#A0A0A0`,hcLight:`#A0A0A0`},a.Td(`overviewRulerBracketMatchForeground`,`Overview ruler marker color for matching brackets.`)),tt=class extends a.Gi{constructor(){super({id:`editor.action.jumpToBracket`,label:a.Td(`smartSelect.jumpBracket`,`Go to Bracket`),alias:`Go to Bracket`,precondition:void 0,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:3160,weight:100}})}run(e,t){var n;(n=it.get(t))==null||n.jumpToBracket()}},nt=class extends a.Gi{constructor(){super({id:`editor.action.selectToBracket`,label:a.Td(`smartSelect.selectToBracket`,`Select to Bracket`),alias:`Select to Bracket`,precondition:void 0,description:{description:`Select to Bracket`,args:[{name:`args`,schema:{type:`object`,properties:{selectBrackets:{type:`boolean`,default:!0}}}}]}})}run(e,t,n){var r;let i=!0;n&&n.selectBrackets===!1&&(i=!1),(r=it.get(t))==null||r.selectToBracket(i)}},rt=class{constructor(e,t,n){this.position=e,this.brackets=t,this.options=n}},it=class e extends a.Xl{constructor(e){super(),this._editor=e,this._lastBracketsData=[],this._lastVersionId=0,this._decorations=this._editor.createDecorationsCollection(),this._updateBracketsSoon=this._register(new a.ys(()=>this._updateBrackets(),50)),this._matchBrackets=this._editor.getOption(65),this._updateBracketsSoon.schedule(),this._register(e.onDidChangeCursorPosition(e=>{this._matchBrackets!==`never`&&this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeModelContent(e=>{this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeModel(e=>{this._lastBracketsData=[],this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeModelLanguageConfiguration(e=>{this._lastBracketsData=[],this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeConfiguration(e=>{e.hasChanged(65)&&(this._matchBrackets=this._editor.getOption(65),this._decorations.clear(),this._lastBracketsData=[],this._lastVersionId=0,this._updateBracketsSoon.schedule())})),this._register(e.onDidBlurEditorWidget(()=>{this._updateBracketsSoon.schedule()})),this._register(e.onDidFocusEditorWidget(()=>{this._updateBracketsSoon.schedule()}))}static get(t){return t.getContribution(e.ID)}jumpToBracket(){if(!this._editor.hasModel())return;let e=this._editor.getModel(),t=this._editor.getSelections().map(t=>{let n=t.getStartPosition(),r=e.bracketPairs.matchBracket(n),i=null;if(r)r[0].containsPosition(n)&&!r[1].containsPosition(n)?i=r[1].getStartPosition():r[1].containsPosition(n)&&(i=r[0].getStartPosition());else{let t=e.bracketPairs.findEnclosingBrackets(n);if(t)i=t[1].getStartPosition();else{let t=e.bracketPairs.findNextBracket(n);t&&t.range&&(i=t.range.getStartPosition())}}return i?new a.Dl(i.lineNumber,i.column,i.lineNumber,i.column):new a.Dl(n.lineNumber,n.column,n.lineNumber,n.column)});this._editor.setSelections(t),this._editor.revealRange(t[0])}selectToBracket(e){if(!this._editor.hasModel())return;let t=this._editor.getModel(),n=[];this._editor.getSelections().forEach(r=>{let i=r.getStartPosition(),o=t.bracketPairs.matchBracket(i);if(!o&&(o=t.bracketPairs.findEnclosingBrackets(i),!o)){let e=t.bracketPairs.findNextBracket(i);e&&e.range&&(o=t.bracketPairs.matchBracket(e.range.getStartPosition()))}let s=null,c=null;if(o){o.sort(a.Ol.compareRangesUsingStarts);let[t,n]=o;if(s=e?t.getStartPosition():t.getEndPosition(),c=e?n.getEndPosition():n.getStartPosition(),n.containsPosition(i)){let e=s;s=c,c=e}}s&&c&&n.push(new a.Dl(s.lineNumber,s.column,c.lineNumber,c.column))}),n.length>0&&(this._editor.setSelections(n),this._editor.revealRange(n[0]))}_updateBrackets(){if(this._matchBrackets===`never`)return;this._recomputeBrackets();let e=[],t=0;for(let n of this._lastBracketsData){let r=n.brackets;r&&(e[t++]={range:r[0],options:n.options},e[t++]={range:r[1],options:n.options})}this._decorations.set(e)}_recomputeBrackets(){if(!this._editor.hasModel()||!this._editor.hasWidgetFocus()){this._lastBracketsData=[],this._lastVersionId=0;return}let t=this._editor.getSelections();if(t.length>100){this._lastBracketsData=[],this._lastVersionId=0;return}let n=this._editor.getModel(),r=n.getVersionId(),i=[];this._lastVersionId===r&&(i=this._lastBracketsData);let o=[],s=0;for(let e=0,n=t.length;e<n;e++){let n=t[e];n.isEmpty()&&(o[s++]=n.getStartPosition())}o.length>1&&o.sort(a.kl.compare);let c=[],l=0,u=0,d=i.length;for(let t=0,r=o.length;t<r;t++){let r=o[t];for(;u<d&&i[u].position.isBefore(r);)u++;if(u<d&&i[u].position.equals(r))c[l++]=i[u];else{let t=n.bracketPairs.matchBracket(r,20),i=e._DECORATION_OPTIONS_WITH_OVERVIEW_RULER;!t&&this._matchBrackets===`always`&&(t=n.bracketPairs.findEnclosingBrackets(r,20),i=e._DECORATION_OPTIONS_WITHOUT_OVERVIEW_RULER),c[l++]=new rt(r,t,i)}}this._lastBracketsData=c,this._lastVersionId=r}};it.ID=`editor.contrib.bracketMatchingController`,it._DECORATION_OPTIONS_WITH_OVERVIEW_RULER=a.f.register({description:`bracket-match-overview`,stickiness:1,className:`bracket-match`,overviewRuler:{color:a.xa(et),position:a.sc.Center}}),it._DECORATION_OPTIONS_WITHOUT_OVERVIEW_RULER=a.f.register({description:`bracket-match-no-overview`,stickiness:1,className:`bracket-match`}),a.ta(it.ID,it),a.$i(nt),a.$i(tt),a.ba((e,t)=>{let n=e.getColor(a.it);n&&t.addRule(`.monaco-editor .bracket-match { background-color: ${n}; }`);let r=e.getColor(a.at);r&&t.addRule(`.monaco-editor .bracket-match { border: 1px solid ${r}; }`)}),a.da.appendMenuItem(a.ca.MenubarGoMenu,{group:`5_infile_nav`,command:{id:`editor.action.jumpToBracket`,title:a.Td({key:`miGoToBracket`,comment:[`&& denotes a mnemonic`]},`Go to &&Bracket`)},order:2});var at=class{constructor(e,t){this._selection=e,this._isMovingLeft=t}getEditOperations(e,t){if(this._selection.startLineNumber!==this._selection.endLineNumber||this._selection.isEmpty())return;let n=this._selection.startLineNumber,r=this._selection.startColumn,i=this._selection.endColumn;if(!(this._isMovingLeft&&r===1)&&!(!this._isMovingLeft&&i===e.getLineMaxColumn(n)))if(this._isMovingLeft){let o=new a.Ol(n,r-1,n,r),s=e.getValueInRange(o);t.addEditOperation(o,null),t.addEditOperation(new a.Ol(n,i,n,i),s)}else{let o=new a.Ol(n,i,n,i+1),s=e.getValueInRange(o);t.addEditOperation(o,null),t.addEditOperation(new a.Ol(n,r,n,r),s)}}computeCursorState(e,t){return this._isMovingLeft?new a.Dl(this._selection.startLineNumber,this._selection.startColumn-1,this._selection.endLineNumber,this._selection.endColumn-1):new a.Dl(this._selection.startLineNumber,this._selection.startColumn+1,this._selection.endLineNumber,this._selection.endColumn+1)}},ot=class extends a.Gi{constructor(e,t){super(t),this.left=e}run(e,t){if(!t.hasModel())return;let n=[],r=t.getSelections();for(let e of r)n.push(new at(e,this.left));t.pushUndoStop(),t.executeCommands(this.id,n),t.pushUndoStop()}},st=class extends ot{constructor(){super(!0,{id:`editor.action.moveCarretLeftAction`,label:a.Td(`caret.moveLeft`,`Move Selected Text Left`),alias:`Move Selected Text Left`,precondition:o.kn.writable})}},ct=class extends ot{constructor(){super(!1,{id:`editor.action.moveCarretRightAction`,label:a.Td(`caret.moveRight`,`Move Selected Text Right`),alias:`Move Selected Text Right`,precondition:o.kn.writable})}};a.$i(st),a.$i(ct);var lt=class extends a.Gi{constructor(){super({id:`editor.action.transposeLetters`,label:a.Td(`transposeLetters.label`,`Transpose Letters`),alias:`Transpose Letters`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.textInputFocus,primary:0,mac:{primary:306},weight:100}})}run(e,t){if(!t.hasModel())return;let n=t.getModel(),r=[],i=t.getSelections();for(let e of i){if(!e.isEmpty())continue;let t=e.startLineNumber,i=e.startColumn,s=n.getLineMaxColumn(t);if(t===1&&(i===1||i===2&&s===2))continue;let c=i===s?e.getPosition():o.Rn.rightPosition(n,e.getPosition().lineNumber,e.getPosition().column),l=o.Rn.leftPosition(n,c),u=o.Rn.leftPosition(n,l),d=n.getValueInRange(a.Ol.fromPositions(u,l)),f=n.getValueInRange(a.Ol.fromPositions(l,c)),p=a.Ol.fromPositions(u,c);r.push(new o.zn(p,f+d))}r.length>0&&(t.pushUndoStop(),t.executeCommands(this.id,r),t.pushUndoStop())}};a.$i(lt);var ut=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},dt=`9_cutcopypaste`,ft=a.xd||document.queryCommandSupported(`cut`),pt=a.xd||document.queryCommandSupported(`copy`),mt=navigator.clipboard===void 0||a.bc?document.queryCommandSupported(`paste`):!0;function ht(e){return e.register(),e}var gt=ft?ht(new a.Ji({id:`editor.action.clipboardCutAction`,precondition:void 0,kbOpts:a.xd?{primary:2102,win:{primary:2102,secondary:[1044]},weight:100}:void 0,menuOpts:[{menuId:a.ca.MenubarEditMenu,group:`2_ccp`,title:a.Td({key:`miCut`,comment:[`&& denotes a mnemonic`]},`Cu&&t`),order:1},{menuId:a.ca.EditorContext,group:dt,title:a.Td(`actions.clipboard.cutLabel`,`Cut`),when:o.kn.writable,order:1},{menuId:a.ca.CommandPalette,group:``,title:a.Td(`actions.clipboard.cutLabel`,`Cut`),order:1},{menuId:a.ca.SimpleEditorContext,group:dt,title:a.Td(`actions.clipboard.cutLabel`,`Cut`),when:o.kn.writable,order:1}]})):void 0,_t=pt?ht(new a.Ji({id:`editor.action.clipboardCopyAction`,precondition:void 0,kbOpts:a.xd?{primary:2081,win:{primary:2081,secondary:[2067]},weight:100}:void 0,menuOpts:[{menuId:a.ca.MenubarEditMenu,group:`2_ccp`,title:a.Td({key:`miCopy`,comment:[`&& denotes a mnemonic`]},`&&Copy`),order:2},{menuId:a.ca.EditorContext,group:dt,title:a.Td(`actions.clipboard.copyLabel`,`Copy`),order:2},{menuId:a.ca.CommandPalette,group:``,title:a.Td(`actions.clipboard.copyLabel`,`Copy`),order:1},{menuId:a.ca.SimpleEditorContext,group:dt,title:a.Td(`actions.clipboard.copyLabel`,`Copy`),order:2}]})):void 0;a.da.appendMenuItem(a.ca.MenubarEditMenu,{submenu:a.ca.MenubarCopy,title:{value:a.Td(`copy as`,`Copy As`),original:`Copy As`},group:`2_ccp`,order:3}),a.da.appendMenuItem(a.ca.EditorContext,{submenu:a.ca.EditorContextCopy,title:{value:a.Td(`copy as`,`Copy As`),original:`Copy As`},group:dt,order:3}),a.da.appendMenuItem(a.ca.EditorContext,{submenu:a.ca.EditorContextShare,title:{value:a.Td(`share`,`Share`),original:`Share`},group:`11_share`,order:-1});var vt=mt?ht(new a.Ji({id:`editor.action.clipboardPasteAction`,precondition:void 0,kbOpts:a.xd?{primary:2100,win:{primary:2100,secondary:[1043]},linux:{primary:2100,secondary:[1043]},weight:100}:void 0,menuOpts:[{menuId:a.ca.MenubarEditMenu,group:`2_ccp`,title:a.Td({key:`miPaste`,comment:[`&& denotes a mnemonic`]},`&&Paste`),order:4},{menuId:a.ca.EditorContext,group:dt,title:a.Td(`actions.clipboard.pasteLabel`,`Paste`),when:o.kn.writable,order:4},{menuId:a.ca.CommandPalette,group:``,title:a.Td(`actions.clipboard.pasteLabel`,`Paste`),order:1},{menuId:a.ca.SimpleEditorContext,group:dt,title:a.Td(`actions.clipboard.pasteLabel`,`Paste`),when:o.kn.writable,order:4}]})):void 0,yt=class extends a.Gi{constructor(){super({id:`editor.action.clipboardCopyWithSyntaxHighlightingAction`,label:a.Td(`actions.clipboard.copyWithSyntaxHighlightingLabel`,`Copy With Syntax Highlighting`),alias:`Copy With Syntax Highlighting`,precondition:void 0,kbOpts:{kbExpr:o.kn.textInputFocus,primary:0,weight:100}})}run(e,t){t.hasModel()&&(!t.getOption(33)&&t.getSelection().isEmpty()||(o.Un.forceCopyWithSyntaxHighlighting=!0,t.focus(),document.execCommand(`copy`),o.Un.forceCopyWithSyntaxHighlighting=!1))}};function bt(e,t){e&&(e.addImplementation(1e4,`code-editor`,(e,n)=>{let r=e.get(a.dc).getFocusedCodeEditor();if(r&&r.hasTextFocus()){let e=r.getOption(33),n=r.getSelection();return n&&n.isEmpty()&&!e||document.execCommand(t),!0}return!1}),e.addImplementation(0,`generic-dom`,(e,n)=>(document.execCommand(t),!0)))}bt(gt,`cut`),bt(_t,`copy`),vt&&(vt.addImplementation(1e4,`code-editor`,(e,t)=>{let n=e.get(a.dc),r=e.get(o.zt),i=n.getFocusedCodeEditor();return i&&i.hasTextFocus()?!document.execCommand(`paste`)&&a.Sd?ut(void 0,void 0,void 0,function*(){let e=yield r.readText();if(e!==``){let t=o.Wn.INSTANCE.get(e),n=!1,r=null,a=null;t&&(n=i.getOption(33)&&!!t.isFromEmptySelection,r=t.multicursorText===void 0?null:t.multicursorText,a=t.mode),i.trigger(`keyboard`,`paste`,{text:e,pasteOnNewLine:n,multicursorText:r,mode:a})}}):!0:!1}),vt.addImplementation(0,`generic-dom`,(e,t)=>(document.execCommand(`paste`),!0))),pt&&a.$i(yt);var D=class e{constructor(e){this.value=e}equals(e){return this.value===e.value}contains(t){return this.equals(t)||this.value===``||t.value.startsWith(this.value+e.sep)}intersects(e){return this.contains(e)||e.contains(this)}append(t){return new e(this.value+e.sep+t)}};D.sep=`.`,D.None=new D(`@@none@@`),D.Empty=new D(``),D.QuickFix=new D(`quickfix`),D.Refactor=new D(`refactor`),D.Source=new D(`source`),D.SourceOrganizeImports=D.Source.append(`organizeImports`),D.SourceFixAll=D.Source.append(`fixAll`);var O;(function(e){e.Refactor=`refactor`,e.RefactorPreview=`refactor preview`,e.Lightbulb=`lightbulb`,e.Default=`other (default)`,e.SourceAction=`source action`,e.QuickFix=`quick fix action`,e.FixAll=`fix all`,e.OrganizeImports=`organize imports`,e.AutoFix=`auto fix`,e.QuickFixHover=`quick fix hover window`,e.OnSave=`save participants`,e.ProblemsView=`problems view`})(O||={});function xt(e,t){return!(e.include&&!e.include.intersects(t)||e.excludes&&e.excludes.some(n=>Ct(t,n,e.include))||!e.includeSourceActions&&D.Source.contains(t))}function St(e,t){let n=t.kind?new D(t.kind):void 0;return!(e.include&&(!n||!e.include.contains(n))||e.excludes&&n&&e.excludes.some(t=>Ct(n,t,e.include))||!e.includeSourceActions&&n&&D.Source.contains(n)||e.onlyIncludePreferredActions&&!t.isPreferred)}function Ct(e,t,n){return!(!t.contains(e)||n&&t.contains(n))}var wt=class e{constructor(e,t,n){this.kind=e,this.apply=t,this.preferred=n}static fromUser(t,n){return!t||typeof t!=`object`?new e(n.kind,n.apply,!1):new e(e.getKindFromUser(t,n.kind),e.getApplyFromUser(t,n.apply),e.getPreferredUser(t))}static getApplyFromUser(e,t){switch(typeof e.apply==`string`?e.apply.toLowerCase():``){case`first`:return`first`;case`never`:return`never`;case`ifsingle`:return`ifSingle`;default:return t}}static getKindFromUser(e,t){return typeof e.kind==`string`?new D(e.kind):t}static getPreferredUser(e){return typeof e.preferred==`boolean`?e.preferred:!1}},Tt=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Et=`editor.action.codeAction`,Dt=`editor.action.refactor`,Ot=`editor.action.refactor.preview`,kt=`editor.action.sourceAction`,At=`editor.action.organizeImports`,jt=`editor.action.fixAll`,Mt=class{constructor(e,t){this.action=e,this.provider=t}resolve(e){return Tt(this,void 0,void 0,function*(){if(this.provider?.resolveCodeAction&&!this.action.edit){let t;try{t=yield this.provider.resolveCodeAction(this.action,e)}catch(e){a.pu(e)}t&&(this.action.edit=t.edit)}return this})}},Nt=class e extends a.Xl{constructor(t,n,r){super(),this.documentation=n,this._register(r),this.allActions=[...t].sort(e.codeActionsComparator),this.validActions=this.allActions.filter(({action:e})=>!e.disabled)}static codeActionsComparator({action:e},{action:t}){return e.isPreferred&&!t.isPreferred?-1:!e.isPreferred&&t.isPreferred?1:a.$u(e.diagnostics)?a.$u(t.diagnostics)?e.diagnostics[0].message.localeCompare(t.diagnostics[0].message):-1:a.$u(t.diagnostics)?1:0}get hasAutoFix(){return this.validActions.some(({action:e})=>!!e.kind&&D.QuickFix.contains(new D(e.kind))&&!!e.isPreferred)}},Pt={actions:[],documentation:void 0};function Ft(e,t,n,r,i,s){let c=r.filter||{},l={only:c.include?.value,trigger:r.type},u=new o.E(t,s),d=It(e,t,c),f=new a.Zl,p=d.map(e=>Tt(this,void 0,void 0,function*(){try{i.report(e);let r=yield e.provideCodeActions(t,n,l,u.token);if(r&&f.add(r),u.token.isCancellationRequested)return Pt;let a=(r?.actions||[]).filter(e=>e&&St(c,e)),o=Lt(e,a,c.include);return{actions:a.map(t=>new Mt(t,e)),documentation:o}}catch(e){if(a.du(e))throw e;return a.pu(e),Pt}})),m=e.onDidChange(()=>{a.Wu(e.all(t),d)||u.cancel()});return Promise.all(p).then(e=>new Nt(e.map(e=>e.actions).flat(),a.Vu(e.map(e=>e.documentation)),f)).finally(()=>{m.dispose(),u.dispose()})}function It(e,t,n){return e.all(t).filter(e=>e.providedCodeActionKinds?e.providedCodeActionKinds.some(e=>xt(n,new D(e))):!0)}function Lt(e,t,n){if(!e.documentation)return;let r=e.documentation.map(e=>({kind:new D(e.kind),command:e.command}));if(n){let e;for(let t of r)t.kind.contains(n)&&(e?e.kind.contains(t.kind)&&(e=t):e=t);if(e)return e?.command}for(let e of t)if(e.kind){for(let t of r)if(t.kind.contains(new D(e.kind)))return t.command}}a.ja.registerCommand(`_executeCodeActionProvider`,function(e,t,n,r,i){return Tt(this,void 0,void 0,function*(){if(!(t instanceof a.Al))throw a.lu();let{codeActionProvider:s}=e.get(a.Zo),c=e.get(a.As).getModel(t);if(!c)throw a.lu();let l=a.Dl.isISelection(n)?a.Dl.liftSelection(n):a.Ol.isIRange(n)?c.validateRange(n):void 0;if(!l)throw a.lu();let u=typeof r==`string`?new D(r):void 0,d=yield Ft(s,c,l,{type:1,triggerAction:O.Default,filter:{includeSourceActions:!0,include:u}},o.Rt.None,a.Bl.None),f=[],p=Math.min(d.validActions.length,typeof i==`number`?i:0);for(let e=0;e<p;e++)f.push(d.validActions[e].resolve(a.Bl.None));try{return yield Promise.all(f),d.validActions.map(e=>e.action)}finally{setTimeout(()=>d.dispose(),100)}})});var Rt=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},zt=function(e,t){return function(n,r){t(n,r,e)}},k=class e{constructor(t,n){this._messageWidget=new a.$l,this._messageListeners=new a.Zl,this._editor=t,this._visible=e.MESSAGE_VISIBLE.bindTo(n),this._editorListener=this._editor.onDidAttemptReadOnlyEdit(()=>this._onDidAttemptReadOnlyEdit())}static get(t){return t.getContribution(e.ID)}dispose(){this._editorListener.dispose(),this._messageListeners.dispose(),this._messageWidget.dispose(),this._visible.reset()}showMessage(e,t){o.Zn(e),this._visible.set(!0),this._messageWidget.clear(),this._messageListeners.clear(),this._messageWidget.value=new Bt(this._editor,t,e),this._messageListeners.add(this._editor.onDidBlurEditorText(()=>this.closeMessage())),this._messageListeners.add(this._editor.onDidChangeCursorPosition(()=>this.closeMessage())),this._messageListeners.add(this._editor.onDidDispose(()=>this.closeMessage())),this._messageListeners.add(this._editor.onDidChangeModel(()=>this.closeMessage())),this._messageListeners.add(new a.xs(()=>this.closeMessage(),3e3));let n;this._messageListeners.add(this._editor.onMouseMove(e=>{e.target.position&&(n?n.containsPosition(e.target.position)||this.closeMessage():n=new a.Ol(t.lineNumber-3,1,e.target.position.lineNumber+3,1))}))}closeMessage(){this._visible.reset(),this._messageListeners.clear(),this._messageWidget.value&&this._messageListeners.add(Bt.fadeOut(this._messageWidget.value))}_onDidAttemptReadOnlyEdit(){this._editor.hasModel()&&(this._editor.isSimpleWidget?this.showMessage(a.Td(`editor.simple.readonly`,`Cannot edit in read-only input`),this._editor.getPosition()):this.showMessage(a.Td(`editor.readonly`,`Cannot edit in read-only editor`),this._editor.getPosition()))}};k.ID=`editor.contrib.messageController`,k.MESSAGE_VISIBLE=new a.Da(`messageVisible`,!1,a.Td(`messageVisible`,`Whether the editor is currently showing an inline message`)),k=Rt([zt(1,a.Ea)],k),a.ea(new(a.Ki.bindToContribution(k.get))({id:`leaveEditorMessage`,precondition:k.MESSAGE_VISIBLE,handler:e=>e.closeMessage(),kbOpts:{weight:130,primary:9}}));var Bt=class{constructor(e,{lineNumber:t,column:n},r){this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._editor=e,this._editor.revealLinesInCenterIfOutsideViewport(t,t,0),this._position={lineNumber:t,column:n},this._domNode=document.createElement(`div`),this._domNode.classList.add(`monaco-editor-overlaymessage`),this._domNode.style.marginLeft=`-6px`;let i=document.createElement(`div`);i.classList.add(`anchor`,`top`),this._domNode.appendChild(i);let a=document.createElement(`div`);a.classList.add(`message`),a.textContent=r,this._domNode.appendChild(a);let o=document.createElement(`div`);o.classList.add(`anchor`,`below`),this._domNode.appendChild(o),this._editor.addContentWidget(this),this._domNode.classList.add(`fadeIn`)}static fadeOut(e){let t=()=>{e.dispose(),clearTimeout(n),e.getDomNode().removeEventListener(`animationend`,t)},n=setTimeout(t,110);return e.getDomNode().addEventListener(`animationend`,t),e.getDomNode().classList.add(`fadeOut`),{dispose:t}}dispose(){this._editor.removeContentWidget(this)}getId(){return`messageoverlay`}getDomNode(){return this._domNode}getPosition(){return{position:this._position,preference:[1,2],positionAffinity:1}}afterRender(e){this._domNode.classList.toggle(`below`,e===2)}};a.ta(k.ID,k);var Vt=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Ht=function(e,t){return function(n,r){t(n,r,e)}},Ut=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Wt=class extends a.Na{constructor(e,t){super(e.command?e.command.id:e.title,Gt(e.title),void 0,!e.disabled,t),this.action=e}};function Gt(e){return e.replace(/\r\n|\r|\n/g,` `)}var Kt=class extends a.Xl{constructor(e,t,n,r,i,o){super(),this._editor=e,this._delegate=t,this._contextMenuService=n,this._languageFeaturesService=i,this._telemetryService=o,this._visible=!1,this._showingActions=this._register(new a.$l),this._keybindingResolver=new qt({getKeybindings:()=>r.getKeybindings()})}get isVisible(){return this._visible}show(e,t,n,r){return Ut(this,void 0,void 0,function*(){let i=r.includeDisabledActions?t.allActions:t.validActions;if(!i.length){this._visible=!1;return}if(!this._editor.getDomNode())throw this._visible=!1,a.cu();this._visible=!0,this._showingActions.value=t;let o=this.getMenuActions(e,i,t.documentation),s=a.kl.isIPosition(n)?this._toCoords(n):n||{x:0,y:0},c=this._keybindingResolver.getResolver(),l=this._editor.getOption(116);this._contextMenuService.showContextMenu({domForShadowRoot:l?this._editor.getDomNode():void 0,getAnchor:()=>s,getActions:()=>o,onHide:n=>{let i=r.fromLightbulb?O.Lightbulb:e.triggerAction;this._telemetryService.publicLog2(`codeAction.applyCodeAction`,{codeActionFrom:i,validCodeActions:t.validActions.length,cancelled:n}),this._visible=!1,this._editor.focus()},autoSelectFirstItem:!0,getKeyBinding:e=>e instanceof Wt?c(e.action):void 0})})}getMenuActions(e,t,n){let r=t=>new Wt(t.action,()=>this._delegate.onSelectCodeAction(t,e)),i=t.map(r),o=[...n],s=this._editor.getModel();if(s&&i.length)for(let n of this._languageFeaturesService.codeActionProvider.all(s))n._getAdditionalMenuItems&&o.push(...n._getAdditionalMenuItems({trigger:e.type,only:e.filter?.include?.value},t.map(e=>e.action)));return o.length&&i.push(new a.Ia,...o.map(e=>r(new Mt({title:e.title,command:e},void 0)))),i}_toCoords(e){if(!this._editor.hasModel())return{x:0,y:0};this._editor.revealPosition(e,1),this._editor.render();let t=this._editor.getScrolledVisiblePosition(e),n=a.uo(this._editor.getDomNode());return{x:n.left+t.left,y:n.top+t.top+t.height}}};Kt=Vt([Ht(2,o.Bt),Ht(3,o.At),Ht(4,a.Zo),Ht(5,a.aa)],Kt);var qt=class e{constructor(e){this._keybindingProvider=e}getResolver(){let t=new a.ul(()=>this._keybindingProvider.getKeybindings().filter(t=>e.codeActionCommands.indexOf(t.command)>=0).filter(e=>e.resolvedKeybinding).map(e=>{let t=e.commandArgs;return e.command===`editor.action.organizeImports`?t={kind:D.SourceOrganizeImports.value}:e.command===`editor.action.fixAll`&&(t={kind:D.SourceFixAll.value}),Object.assign({resolvedKeybinding:e.resolvedKeybinding},wt.fromUser(t,{kind:D.None,apply:`never`}))}));return e=>{if(e.kind)return this.bestKeybindingForCodeAction(e,t.getValue())?.resolvedKeybinding}}bestKeybindingForCodeAction(e,t){if(!e.kind)return;let n=new D(e.kind);return t.filter(e=>e.kind.contains(n)).filter(t=>t.preferred?e.isPreferred:!0).reduceRight((e,t)=>e?e.kind.contains(t.kind)?t:e:t,void 0)}};qt.codeActionCommands=[Dt,Et,kt,At,jt];var Jt=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Yt=function(e,t){return function(n,r){t(n,r,e)}},Xt;(function(e){e.Hidden={type:0};class t{constructor(e,t,n,r){this.actions=e,this.trigger=t,this.editorPosition=n,this.widgetPosition=r,this.type=1}}e.Showing=t})(Xt||={});var Zt=class e extends a.Xl{constructor(e,t,n,r){super(),this._editor=e,this._quickFixActionId=t,this._preferredFixActionId=n,this._keybindingService=r,this._onClick=this._register(new a.Ul),this.onClick=this._onClick.event,this._state=Xt.Hidden,this._domNode=document.createElement(`div`),this._domNode.className=a.Tl.lightBulb.classNames,this._editor.addContentWidget(this),this._register(this._editor.onDidChangeModelContent(e=>{let t=this._editor.getModel();(this.state.type!==1||!t||this.state.editorPosition.lineNumber>=t.getLineCount())&&this.hide()})),o.Kn.ignoreTarget(this._domNode),this._register(a.qa(this._domNode,e=>{if(this.state.type!==1)return;this._editor.focus(),e.preventDefault();let{top:t,height:n}=a.uo(this._domNode),r=this._editor.getOption(60),i=Math.floor(r/3);this.state.widgetPosition.position!==null&&this.state.widgetPosition.position.lineNumber<this.state.editorPosition.lineNumber&&(i+=r),this._onClick.fire({x:e.posx,y:t+n+i,actions:this.state.actions,trigger:this.state.trigger})})),this._register(a.Ka(this._domNode,`mouseenter`,e=>{(e.buttons&1)==1&&this.hide()})),this._register(this._editor.onDidChangeConfiguration(e=>{e.hasChanged(58)&&!this._editor.getOption(58).enabled&&this.hide()})),this._updateLightBulbTitleAndIcon(),this._register(this._keybindingService.onDidUpdateKeybindings(this._updateLightBulbTitleAndIcon,this))}dispose(){super.dispose(),this._editor.removeContentWidget(this)}getId(){return`LightBulbWidget`}getDomNode(){return this._domNode}getPosition(){return this._state.type===1?this._state.widgetPosition:null}update(t,n,r){if(t.validActions.length<=0)return this.hide();let i=this._editor.getOptions();if(!i.get(58).enabled)return this.hide();let o=this._editor.getModel();if(!o)return this.hide();let{lineNumber:s,column:c}=o.validatePosition(r),l=o.getOptions().tabSize,u=i.get(45),d=a.J(o.getLineContent(s),l),f=u.spaceWidth*d>22,p=e=>e>2&&this._editor.getTopForLineNumber(e)===this._editor.getTopForLineNumber(e-1),m=s;if(!f){if(s>1&&!p(s-1))--m;else if(!p(s+1))m+=1;else if(c*u.spaceWidth<22)return this.hide()}this.state=new Xt.Showing(t,n,r,{position:{lineNumber:m,column:1},preference:e._posPref}),this._editor.layoutContentWidget(this)}hide(){this.state=Xt.Hidden,this._editor.layoutContentWidget(this)}get state(){return this._state}set state(e){this._state=e,this._updateLightBulbTitleAndIcon()}_updateLightBulbTitleAndIcon(){if(this.state.type===1&&this.state.actions.hasAutoFix){this._domNode.classList.remove(...a.Tl.lightBulb.classNamesArray),this._domNode.classList.add(...a.Tl.lightbulbAutofix.classNamesArray);let e=this._keybindingService.lookupKeybinding(this._preferredFixActionId);if(e){this.title=a.Td(`preferredcodeActionWithKb`,`Show Code Actions. Preferred Quick Fix Available ({0})`,e.getLabel());return}}this._domNode.classList.remove(...a.Tl.lightbulbAutofix.classNamesArray),this._domNode.classList.add(...a.Tl.lightBulb.classNamesArray);let e=this._keybindingService.lookupKeybinding(this._quickFixActionId);e?this.title=a.Td(`codeActionWithKb`,`Show Code Actions ({0})`,e.getLabel()):this.title=a.Td(`codeAction`,`Show Code Actions`)}set title(e){this._domNode.title=e}};Zt._posPref=[0],Zt=Jt([Yt(3,o.At)],Zt),a.ba((e,t)=>{let n=e.getColor(a.gn)?.transparent(.7),r=e.getColor(a.Gn);r&&t.addRule(`
8
+ .monaco-editor .contentWidgets ${a.Tl.lightBulb.cssSelector} {
9
+ color: ${r};
10
+ background-color: ${n};
11
+ }`);let i=e.getColor(a.Wn);i&&t.addRule(`
12
+ .monaco-editor .contentWidgets ${a.Tl.lightbulbAutofix.cssSelector} {
13
+ color: ${i};
14
+ background-color: ${n};
15
+ }`)});var Qt=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},$t=function(e,t){return function(n,r){t(n,r,e)}},en=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},tn=function(e,t,n,r,i){if(r===`m`)throw TypeError(`Private method is not writable`);if(r===`a`&&!i)throw TypeError(`Private accessor was defined without a setter`);if(typeof t==`function`?e!==t||!i:!t.has(e))throw TypeError(`Cannot write private member to an object whose class did not declare it`);return r===`a`?i.call(e,n):i?i.value=n:t.set(e,n),n},nn=function(e,t,n,r){if(n===`a`&&!r)throw TypeError(`Private accessor was defined without a getter`);if(typeof t==`function`?e!==t||!r:!t.has(e))throw TypeError(`Cannot read private member from an object whose class did not declare it`);return n===`m`?r:n===`a`?r.call(e):r?r.value:t.get(e)},rn,an=class extends a.Xl{constructor(e,t,n,r,i){super(),this._editor=e,this.delegate=r,this._activeCodeActions=this._register(new a.$l),rn.set(this,!1),this._codeActionWidget=new a.ul(()=>this._register(i.createInstance(Kt,this._editor,{onSelectCodeAction:(e,t)=>en(this,void 0,void 0,function*(){this.delegate.applyCodeAction(e,!0,!!t.preview)})}))),this._lightBulbWidget=new a.ul(()=>{let e=this._register(i.createInstance(Zt,this._editor,t,n));return this._register(e.onClick(e=>this.showCodeActionList(e.trigger,e.actions,e,{includeDisabledActions:!1,fromLightbulb:!0}))),e})}dispose(){tn(this,rn,!0,`f`),super.dispose()}update(e){var t,n,r;return en(this,void 0,void 0,function*(){if(e.type!==1){(t=this._lightBulbWidget.rawValue)==null||t.hide();return}let i;try{i=yield e.actions}catch(e){a.fu(e);return}if(!nn(this,rn,`f`))if(this._lightBulbWidget.getValue().update(i,e.trigger,e.position),e.trigger.type===1){if(e.trigger.filter?.include){let t=this.tryGetValidActionToApply(e.trigger,i);if(t){try{this._lightBulbWidget.getValue().hide(),yield this.delegate.applyCodeAction(t,!1,!1)}finally{i.dispose()}return}if(e.trigger.context){let t=this.getInvalidActionThatWouldHaveBeenApplied(e.trigger,i);if(t&&t.action.disabled){(n=k.get(this._editor))==null||n.showMessage(t.action.disabled,e.trigger.context.position),i.dispose();return}}}let t=!!e.trigger.filter?.include;if(e.trigger.context&&(!i.allActions.length||!t&&!i.validActions.length)){(r=k.get(this._editor))==null||r.showMessage(e.trigger.context.notAvailableMessage,e.trigger.context.position),this._activeCodeActions.value=i,i.dispose();return}this._activeCodeActions.value=i,this._codeActionWidget.getValue().show(e.trigger,i,e.position,{includeDisabledActions:t,fromLightbulb:!1})}else this._codeActionWidget.getValue().isVisible?i.dispose():this._activeCodeActions.value=i})}getInvalidActionThatWouldHaveBeenApplied(e,t){if(t.allActions.length&&(e.autoApply===`first`&&t.validActions.length===0||e.autoApply===`ifSingle`&&t.allActions.length===1))return t.allActions.find(({action:e})=>e.disabled)}tryGetValidActionToApply(e,t){if(t.validActions.length&&(e.autoApply===`first`&&t.validActions.length>0||e.autoApply===`ifSingle`&&t.validActions.length===1))return t.validActions[0]}showCodeActionList(e,t,n,r){return en(this,void 0,void 0,function*(){this._codeActionWidget.getValue().show(e,t,n,r)})}};rn=new WeakMap,an=Qt([$t(4,a.fc)],an);var on=function(e,t,n,r){if(n===`a`&&!r)throw TypeError(`Private accessor was defined without a getter`);if(typeof t==`function`?e!==t||!r:!t.has(e))throw TypeError(`Cannot read private member from an object whose class did not declare it`);return n===`m`?r:n===`a`?r.call(e):r?r.value:t.get(e)},sn=function(e,t,n,r,i){if(r===`m`)throw TypeError(`Private method is not writable`);if(r===`a`&&!i)throw TypeError(`Private accessor was defined without a setter`);if(typeof t==`function`?e!==t||!i:!t.has(e))throw TypeError(`Cannot write private member to an object whose class did not declare it`);return r===`a`?i.call(e,n):i?i.value=n:t.set(e,n),n},cn,ln=new a.Da(`supportedCodeAction`,``),un=class extends a.Xl{constructor(e,t,n,r=250){super(),this._editor=e,this._markerService=t,this._signalChange=n,this._delay=r,this._autoTriggerTimer=this._register(new a.xs),this._register(this._markerService.onMarkerChanged(e=>this._onMarkerChanges(e))),this._register(this._editor.onDidChangeCursorPosition(()=>this._onCursorChange()))}trigger(e){let t=this._getRangeOfSelectionUnlessWhitespaceEnclosed(e);return this._createEventAndSignalChange(e,t)}_onMarkerChanges(e){let t=this._editor.getModel();t&&e.some(e=>a.E(e,t.uri))&&this._autoTriggerTimer.cancelAndSet(()=>{this.trigger({type:2,triggerAction:O.Default})},this._delay)}_onCursorChange(){this._autoTriggerTimer.cancelAndSet(()=>{this.trigger({type:2,triggerAction:O.Default})},this._delay)}_getRangeOfMarker(e){let t=this._editor.getModel();if(t)for(let n of this._markerService.read({resource:t.uri})){let r=t.validateRange(n);if(a.Ol.intersectRanges(r,e))return a.Ol.lift(r)}}_getRangeOfSelectionUnlessWhitespaceEnclosed(e){if(!this._editor.hasModel())return;let t=this._editor.getModel(),n=this._editor.getSelection();if(n.isEmpty()&&e.type===2){let{lineNumber:e,column:r}=n.getPosition(),i=t.getLineContent(e);if(i.length===0)return;if(r===1){if(/\s/.test(i[0]))return}else if(r===t.getLineMaxColumn(e)){if(/\s/.test(i[i.length-1]))return}else if(/\s/.test(i[r-2])&&/\s/.test(i[r-1]))return}return n}_createEventAndSignalChange(e,t){let n=this._editor.getModel();if(!t||!n){this._signalChange(void 0);return}let r=this._getRangeOfMarker(t),i={trigger:e,selection:t,position:r?r.getStartPosition():t.getStartPosition()};return this._signalChange(i),i}},dn;(function(e){e.Empty={type:0};class t{constructor(e,t,n,r){this.trigger=e,this.rangeOrSelection=t,this.position=n,this._cancellablePromise=r,this.type=1,this.actions=r.catch(e=>{if(a.du(e))return fn;throw e})}cancel(){this._cancellablePromise.cancel()}}e.Triggered=t})(dn||={});var fn={allActions:[],validActions:[],dispose:()=>{},documentation:[],hasAutoFix:!1},pn=class extends a.Xl{constructor(e,t,n,r,i){super(),this._editor=e,this._registry=t,this._markerService=n,this._progressService=i,this._codeActionOracle=this._register(new a.$l),this._state=dn.Empty,this._onDidChangeState=this._register(new a.Ul),this.onDidChangeState=this._onDidChangeState.event,cn.set(this,!1),this._supportedCodeActions=ln.bindTo(r),this._register(this._editor.onDidChangeModel(()=>this._update())),this._register(this._editor.onDidChangeModelLanguage(()=>this._update())),this._register(this._registry.onDidChange(()=>this._update())),this._update()}dispose(){on(this,cn,`f`)||(sn(this,cn,!0,`f`),super.dispose(),this.setState(dn.Empty,!0))}_update(){if(on(this,cn,`f`))return;this._codeActionOracle.value=void 0,this.setState(dn.Empty);let e=this._editor.getModel();if(e&&this._registry.has(e)&&!this._editor.getOption(82)){let t=[];for(let n of this._registry.all(e))Array.isArray(n.providedCodeActionKinds)&&t.push(...n.providedCodeActionKinds);this._supportedCodeActions.set(t.join(` `)),this._codeActionOracle.value=new un(this._editor,this._markerService,t=>{var n;if(!t){this.setState(dn.Empty);return}let r=a.Cs(n=>Ft(this._registry,e,t.selection,t.trigger,o.Rt.None,n));t.trigger.type===1&&((n=this._progressService)==null||n.showWhile(r,250)),this.setState(new dn.Triggered(t.trigger,t.selection,t.position,r))},void 0),this._codeActionOracle.value.trigger({type:2,triggerAction:O.Default})}else this._supportedCodeActions.reset()}trigger(e){var t;(t=this._codeActionOracle.value)==null||t.trigger(e)}setState(e,t){e!==this._state&&(this._state.type===1&&this._state.cancel(),this._state=e,!t&&!on(this,cn,`f`)&&this._onDidChangeState.fire(e))}};cn=new WeakMap;var mn=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},hn=function(e,t){return function(n,r){t(n,r,e)}},gn=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};function _n(e){return a.Ta.regex(ln.keys()[0],RegExp(`(\\s|^)`+a.Ic(e.value)+`\\b`))}function vn(e,t,n,r){let i=wt.fromUser(t,{kind:D.Refactor,apply:`never`});return wn(e,typeof t?.kind==`string`?i.preferred?a.Td(`editor.action.refactor.noneMessage.preferred.kind`,`No preferred refactorings for '{0}' available`,t.kind):a.Td(`editor.action.refactor.noneMessage.kind`,`No refactorings for '{0}' available`,t.kind):i.preferred?a.Td(`editor.action.refactor.noneMessage.preferred`,`No preferred refactorings available`):a.Td(`editor.action.refactor.noneMessage`,`No refactorings available`),{include:D.Refactor.contains(i.kind)?i.kind:D.None,onlyIncludePreferredActions:i.preferred},i.apply,n,r)}var yn={type:`object`,defaultSnippets:[{body:{kind:``}}],properties:{kind:{type:`string`,description:a.Td(`args.schema.kind`,`Kind of the code action to run.`)},apply:{type:`string`,description:a.Td(`args.schema.apply`,`Controls when the returned actions are applied.`),default:`ifSingle`,enum:[`first`,`ifSingle`,`never`],enumDescriptions:[a.Td(`args.schema.apply.first`,`Always apply the first returned code action.`),a.Td(`args.schema.apply.ifSingle`,`Apply the first returned code action if it is the only one.`),a.Td(`args.schema.apply.never`,`Do not apply the returned code actions.`)]},preferred:{type:`boolean`,default:!1,description:a.Td(`args.schema.preferred`,`Controls if only preferred code actions should be returned.`)}}},bn=class e extends a.Xl{constructor(e,t,n,r,i,o){super(),this._instantiationService=i,this._editor=e,this._model=this._register(new pn(this._editor,o.codeActionProvider,t,n,r)),this._register(this._model.onDidChangeState(e=>this.update(e))),this._ui=new a.ul(()=>this._register(new an(e,Tn.Id,Mn.Id,{applyCodeAction:(e,t,n)=>gn(this,void 0,void 0,function*(){try{yield this._applyCodeAction(e,n)}finally{t&&this._trigger({type:2,triggerAction:O.QuickFix,filter:{}})}})},this._instantiationService)))}static get(t){return t.getContribution(e.ID)}update(e){this._ui.getValue().update(e)}showCodeActions(e,t,n){return this._ui.getValue().showCodeActionList(e,t,n,{includeDisabledActions:!1,fromLightbulb:!1})}manualTriggerAtCurrentPosition(e,t,n,r,i){var a;if(!this._editor.hasModel())return;(a=k.get(this._editor))==null||a.closeMessage();let o=this._editor.getPosition();this._trigger({type:1,triggerAction:t,filter:n,autoApply:r,context:{notAvailableMessage:e,position:o},preview:i})}_trigger(e){return this._model.trigger(e)}_applyCodeAction(e,t){return this._instantiationService.invokeFunction(Sn,e,xn.FromCodeActions,{preview:t,editor:this._editor})}};bn.ID=`editor.contrib.quickFixController`,bn=mn([hn(1,o.dt),hn(2,a.Ea),hn(3,o.It),hn(4,a.fc),hn(5,a.Zo)],bn);var xn;(function(e){e.OnSave=`onSave`,e.FromProblemsView=`fromProblemsView`,e.FromCodeActions=`fromCodeActions`})(xn||={});function Sn(e,t,n,r){return gn(this,void 0,void 0,function*(){let i=e.get(o.Nt),s=e.get(a.Ma),c=e.get(a.aa),l=e.get(o.vn);if(c.publicLog2(`codeAction.applyCodeAction`,{codeActionTitle:t.action.title,codeActionKind:t.action.kind,codeActionIsPreferred:!!t.action.isPreferred,reason:n}),yield t.resolve(a.Bl.None),t.action.edit&&(yield i.apply(o.Pt.convert(t.action.edit),{editor:r?.editor,label:t.action.title,quotableLabel:t.action.title,code:`undoredo.codeAction`,respectAutoSaveConfig:!0,showPreview:r?.preview})),t.action.command)try{yield s.executeCommand(t.action.command.id,...t.action.command.arguments||[])}catch(e){let t=Cn(e);l.error(typeof t==`string`?t:a.Td(`applyCodeActionFailed`,`An unknown error occurred while applying the code action`))}})}function Cn(e){if(typeof e==`string`)return e;if(e instanceof Error&&typeof e.message==`string`)return e.message}function wn(e,t,n,r,i=!1,a=O.Default){e.hasModel()&&bn.get(e)?.manualTriggerAtCurrentPosition(t,a,n,r,i)}var Tn=class e extends a.Gi{constructor(){super({id:e.Id,label:a.Td(`quickfix.trigger.label`,`Quick Fix...`),alias:`Quick Fix...`,precondition:a.Ta.and(o.kn.writable,o.kn.hasCodeActionsProvider),kbOpts:{kbExpr:o.kn.editorTextFocus,primary:2132,weight:100}})}run(e,t){return wn(t,a.Td(`editor.action.quickFix.noneMessage`,`No code actions available`),void 0,void 0,!1,O.QuickFix)}};Tn.Id=`editor.action.quickFix`;var En=class extends a.Ki{constructor(){super({id:Et,precondition:a.Ta.and(o.kn.writable,o.kn.hasCodeActionsProvider),description:{description:`Trigger a code action`,args:[{name:`args`,schema:yn}]}})}runEditorCommand(e,t,n){let r=wt.fromUser(n,{kind:D.Empty,apply:`ifSingle`});return wn(t,typeof n?.kind==`string`?r.preferred?a.Td(`editor.action.codeAction.noneMessage.preferred.kind`,`No preferred code actions for '{0}' available`,n.kind):a.Td(`editor.action.codeAction.noneMessage.kind`,`No code actions for '{0}' available`,n.kind):r.preferred?a.Td(`editor.action.codeAction.noneMessage.preferred`,`No preferred code actions available`):a.Td(`editor.action.codeAction.noneMessage`,`No code actions available`),{include:r.kind,includeSourceActions:!0,onlyIncludePreferredActions:r.preferred},r.apply)}},Dn=class extends a.Gi{constructor(){super({id:Dt,label:a.Td(`refactor.label`,`Refactor...`),alias:`Refactor...`,precondition:a.Ta.and(o.kn.writable,o.kn.hasCodeActionsProvider),kbOpts:{kbExpr:o.kn.editorTextFocus,primary:3120,mac:{primary:1328},weight:100},contextMenuOpts:{group:`1_modification`,order:2,when:a.Ta.and(o.kn.writable,_n(D.Refactor))},description:{description:`Refactor...`,args:[{name:`args`,schema:yn}]}})}run(e,t,n){return vn(t,n,!1,O.Refactor)}},On=class extends a.Gi{constructor(){super({id:Ot,label:a.Td(`refactor.preview.label`,`Refactor with Preview...`),alias:`Refactor Preview...`,precondition:a.Ta.and(o.kn.writable,o.kn.hasCodeActionsProvider),description:{description:`Refactor Preview...`,args:[{name:`args`,schema:yn}]}})}run(e,t,n){return vn(t,n,!0,O.RefactorPreview)}},kn=class extends a.Gi{constructor(){super({id:kt,label:a.Td(`source.label`,`Source Action...`),alias:`Source Action...`,precondition:a.Ta.and(o.kn.writable,o.kn.hasCodeActionsProvider),contextMenuOpts:{group:`1_modification`,order:2.1,when:a.Ta.and(o.kn.writable,_n(D.Source))},description:{description:`Source Action...`,args:[{name:`args`,schema:yn}]}})}run(e,t,n){let r=wt.fromUser(n,{kind:D.Source,apply:`never`});return wn(t,typeof n?.kind==`string`?r.preferred?a.Td(`editor.action.source.noneMessage.preferred.kind`,`No preferred source actions for '{0}' available`,n.kind):a.Td(`editor.action.source.noneMessage.kind`,`No source actions for '{0}' available`,n.kind):r.preferred?a.Td(`editor.action.source.noneMessage.preferred`,`No preferred source actions available`):a.Td(`editor.action.source.noneMessage`,`No source actions available`),{include:D.Source.contains(r.kind)?r.kind:D.None,includeSourceActions:!0,onlyIncludePreferredActions:r.preferred},r.apply,void 0,O.SourceAction)}},An=class extends a.Gi{constructor(){super({id:At,label:a.Td(`organizeImports.label`,`Organize Imports`),alias:`Organize Imports`,precondition:a.Ta.and(o.kn.writable,_n(D.SourceOrganizeImports)),kbOpts:{kbExpr:o.kn.editorTextFocus,primary:1581,weight:100}})}run(e,t){return wn(t,a.Td(`editor.action.organize.noneMessage`,`No organize imports action available`),{include:D.SourceOrganizeImports,includeSourceActions:!0},`ifSingle`,void 0,O.OrganizeImports)}},jn=class extends a.Gi{constructor(){super({id:jt,label:a.Td(`fixAll.label`,`Fix All`),alias:`Fix All`,precondition:a.Ta.and(o.kn.writable,_n(D.SourceFixAll))})}run(e,t){return wn(t,a.Td(`fixAll.noneMessage`,`No fix all action available`),{include:D.SourceFixAll,includeSourceActions:!0},`ifSingle`,void 0,O.FixAll)}},Mn=class e extends a.Gi{constructor(){super({id:e.Id,label:a.Td(`autoFix.label`,`Auto Fix...`),alias:`Auto Fix...`,precondition:a.Ta.and(o.kn.writable,_n(D.QuickFix)),kbOpts:{kbExpr:o.kn.editorTextFocus,primary:1620,mac:{primary:2644},weight:100}})}run(e,t){return wn(t,a.Td(`editor.action.autoFix.noneMessage`,`No auto fixes available`),{include:D.QuickFix,onlyIncludePreferredActions:!0},`ifSingle`,void 0,O.AutoFix)}};Mn.Id=`editor.action.autoFix`,a.ta(bn.ID,bn),a.$i(Tn),a.$i(Dn),a.$i(On),a.$i(kn),a.$i(An),a.$i(Mn),a.$i(jn),a.ea(new En);var Nn=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Pn=class{constructor(){this.lenses=[],this._disposables=new a.Zl}dispose(){this._disposables.dispose()}get isDisposed(){return this._disposables.isDisposed}add(e,t){this._disposables.add(e);for(let n of e.lenses)this.lenses.push({symbol:n,provider:t})}};function Fn(e,t,n){return Nn(this,void 0,void 0,function*(){let r=e.ordered(t),i=new Map,o=new Pn,s=r.map((e,r)=>Nn(this,void 0,void 0,function*(){i.set(e,r);try{let r=yield Promise.resolve(e.provideCodeLenses(t,n));r&&o.add(r,e)}catch(e){a.pu(e)}}));return yield Promise.all(s),o.lenses=o.lenses.sort((e,t)=>e.symbol.range.startLineNumber<t.symbol.range.startLineNumber?-1:e.symbol.range.startLineNumber>t.symbol.range.startLineNumber?1:i.get(e.provider)<i.get(t.provider)?-1:i.get(e.provider)>i.get(t.provider)?1:e.symbol.range.startColumn<t.symbol.range.startColumn?-1:e.symbol.range.startColumn>t.symbol.range.startColumn?1:0),o})}a.ja.registerCommand(`_executeCodeLensProvider`,function(e,...t){let[n,r]=t;a.Cu(a.Al.isUri(n)),a.Cu(typeof r==`number`||!r);let{codeLensProvider:i}=e.get(a.Zo),o=e.get(a.As).getModel(n);if(!o)throw a.lu();let s=[],c=new a.Zl;return Fn(i,o,a.Bl.None).then(e=>{c.add(e);let t=[];for(let n of e.lenses)r==null||n.symbol.command?s.push(n.symbol):r-- >0&&n.provider.resolveCodeLens&&t.push(Promise.resolve(n.provider.resolveCodeLens(o,n.symbol,a.Bl.None)).then(e=>s.push(e||n.symbol)));return Promise.all(t)}).then(()=>s).finally(()=>{setTimeout(()=>c.dispose(),100)})});var In=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Ln=function(e,t){return function(n,r){t(n,r,e)}},Rn=a.mc(`ICodeLensCache`),zn=class{constructor(e,t){this.lineCount=e,this.data=t}},Bn=class{constructor(e){this._fakeProvider=new class{provideCodeLenses(){throw Error(`not supported`)}},this._cache=new a.c(20,.75),a.Os(()=>e.remove(`codelens/cache`,1));let t=`codelens/cache2`,n=e.get(t,1,`{}`);this._deserialize(n),a.ou(e.onWillSaveState)(n=>{n.reason===o.k.SHUTDOWN&&e.store(t,this._serialize(),1,1)})}put(e,t){let n=t.lenses.map(e=>({range:e.symbol.range,command:e.symbol.command&&{id:``,title:e.symbol.command?.title}})),r=new Pn;r.add({lenses:n,dispose:()=>{}},this._fakeProvider);let i=new zn(e.getLineCount(),r);this._cache.set(e.uri.toString(),i)}get(e){let t=this._cache.get(e.uri.toString());return t&&t.lineCount===e.getLineCount()?t.data:void 0}delete(e){this._cache.delete(e.uri.toString())}_serialize(){let e=Object.create(null);for(let[t,n]of this._cache){let r=new Set;for(let e of n.data.lenses)r.add(e.symbol.range.startLineNumber);e[t]={lineCount:n.lineCount,lines:[...r.values()]}}return JSON.stringify(e)}_deserialize(e){try{let t=JSON.parse(e);for(let e in t){let n=t[e],r=[];for(let e of n.lines)r.push({range:new a.Ol(e,1,e,11)});let i=new Pn;i.add({lenses:r,dispose(){}},this._fakeProvider),this._cache.set(e,new zn(n.lineCount,i))}}catch{}}};Bn=In([Ln(0,o.O)],Bn),a.Ks(Rn,Bn);var Vn=class{constructor(e,t,n){this.afterColumn=1073741824,this.afterLineNumber=e,this.heightInPx=t,this._onHeight=n,this.suppressMouseDown=!0,this.domNode=document.createElement(`div`)}onComputedHeight(e){this._lastHeight===void 0?this._lastHeight=e:this._lastHeight!==e&&(this._lastHeight=e,this._onHeight())}isVisible(){return this._lastHeight!==0&&this.domNode.hasAttribute(`monaco-visible-view-zone`)}},Hn=class e{constructor(t,n,r){this.allowEditorOverflow=!1,this.suppressMouseDown=!0,this._commands=new Map,this._isEmpty=!0,this._editor=t,this._id=`codelens.widget-${e._idPool++}`,this.updatePosition(r),this._domNode=document.createElement(`span`),this._domNode.className=`codelens-decoration ${n}`}withCommands(e,t){this._commands.clear();let n=[],r=!1;for(let t=0;t<e.length;t++){let i=e[t];if(i&&(r=!0,i.command)){let r=o.it(i.command.title.trim());i.command.id?(n.push(a.za(`a`,{id:String(t),title:i.command.tooltip,role:`button`},...r)),this._commands.set(String(t),i.command)):n.push(a.za(`span`,{title:i.command.tooltip},...r)),t+1<e.length&&n.push(a.za(`span`,void 0,`\xA0|\xA0`))}}r?(a.Eo(this._domNode,...n),this._isEmpty&&t&&this._domNode.classList.add(`fadein`),this._isEmpty=!1):a.Eo(this._domNode,a.za(`span`,void 0,`no commands`))}getCommand(e){return e.parentElement===this._domNode?this._commands.get(e.id):void 0}getId(){return this._id}getDomNode(){return this._domNode}updatePosition(e){this._widgetPosition={position:{lineNumber:e,column:this._editor.getModel().getLineFirstNonWhitespaceColumn(e)},preference:[1]}}getPosition(){return this._widgetPosition||null}};Hn._idPool=0;var Un=class{constructor(){this._removeDecorations=[],this._addDecorations=[],this._addDecorationsCallbacks=[]}addDecoration(e,t){this._addDecorations.push(e),this._addDecorationsCallbacks.push(t)}removeDecoration(e){this._removeDecorations.push(e)}commit(e){let t=e.deltaDecorations(this._removeDecorations,this._addDecorations);for(let e=0,n=t.length;e<n;e++)this._addDecorationsCallbacks[e](t[e])}},Wn=class{constructor(e,t,n,r,i,o,s){this._isDisposed=!1,this._editor=t,this._className=n,this._data=e,this._decorationIds=[];let c,l=[];this._data.forEach((e,t)=>{e.symbol.command&&l.push(e.symbol),r.addDecoration({range:e.symbol.range,options:a.f.EMPTY},e=>this._decorationIds[t]=e),c=c?a.Ol.plusRange(c,e.symbol.range):a.Ol.lift(e.symbol.range)}),this._viewZone=new Vn(c.startLineNumber-1,o,s),this._viewZoneId=i.addZone(this._viewZone),l.length>0&&(this._createContentWidgetIfNecessary(),this._contentWidget.withCommands(l,!1))}_createContentWidgetIfNecessary(){this._contentWidget?this._editor.layoutContentWidget(this._contentWidget):(this._contentWidget=new Hn(this._editor,this._className,this._viewZone.afterLineNumber+1),this._editor.addContentWidget(this._contentWidget))}dispose(e,t){this._decorationIds.forEach(e.removeDecoration,e),this._decorationIds=[],t?.removeZone(this._viewZoneId),this._contentWidget&&=(this._editor.removeContentWidget(this._contentWidget),void 0),this._isDisposed=!0}isDisposed(){return this._isDisposed}isValid(){return this._decorationIds.some((e,t)=>{let n=this._editor.getModel().getDecorationRange(e),r=this._data[t].symbol;return!!(n&&a.Ol.isEmpty(r.range)===n.isEmpty())})}updateCodeLensSymbols(e,t){this._decorationIds.forEach(t.removeDecoration,t),this._decorationIds=[],this._data=e,this._data.forEach((e,n)=>{t.addDecoration({range:e.symbol.range,options:a.f.EMPTY},e=>this._decorationIds[n]=e)})}updateHeight(e,t){this._viewZone.heightInPx=e,t.layoutZone(this._viewZoneId),this._contentWidget&&this._editor.layoutContentWidget(this._contentWidget)}computeIfNecessary(e){if(!this._viewZone.isVisible())return null;for(let t=0;t<this._decorationIds.length;t++){let n=e.getDecorationRange(this._decorationIds[t]);n&&(this._data[t].symbol.range=n)}return this._data}updateCommands(e){this._createContentWidgetIfNecessary(),this._contentWidget.withCommands(e,!0);for(let t=0;t<this._data.length;t++){let n=e[t];if(n){let{symbol:e}=this._data[t];e.command=n.command||e.command}}}getCommand(e){return this._contentWidget?.getCommand(e)}getLineNumber(){let e=this._editor.getModel().getDecorationRange(this._decorationIds[0]);return e?e.startLineNumber:-1}update(e){if(this.isValid()){let t=this._editor.getModel().getDecorationRange(this._decorationIds[0]);t&&(this._viewZone.afterLineNumber=t.startLineNumber-1,e.layoutZone(this._viewZoneId),this._contentWidget&&(this._contentWidget.updatePosition(t.startLineNumber),this._editor.layoutContentWidget(this._contentWidget)))}}},Gn=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Kn=function(e,t){return function(n,r){t(n,r,e)}},qn=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Jn=class{constructor(e,t,n,r,i,o){this._editor=e,this._languageFeaturesService=t,this._commandService=r,this._notificationService=i,this._codeLensCache=o,this._disposables=new a.Zl,this._localToDispose=new a.Zl,this._lenses=[],this._oldCodeLensModels=new a.Zl,this._provideCodeLensDebounce=n.for(t.codeLensProvider,`CodeLensProvide`,{min:250}),this._resolveCodeLensesDebounce=n.for(t.codeLensProvider,`CodeLensResolve`,{min:250,salt:`resolve`}),this._resolveCodeLensesScheduler=new a.ys(()=>this._resolveCodeLensesInViewport(),this._resolveCodeLensesDebounce.default()),this._disposables.add(this._editor.onDidChangeModel(()=>this._onModelChange())),this._disposables.add(this._editor.onDidChangeModelLanguage(()=>this._onModelChange())),this._disposables.add(this._editor.onDidChangeConfiguration(e=>{(e.hasChanged(45)||e.hasChanged(16)||e.hasChanged(15))&&this._updateLensStyle(),e.hasChanged(14)&&this._onModelChange()})),this._disposables.add(t.codeLensProvider.onDidChange(this._onModelChange,this)),this._onModelChange(),this._styleClassName=`_`+a.us(this._editor.getId()).toString(16),this._styleElement=a.ro(a.Co(this._editor.getContainerDomNode())?this._editor.getContainerDomNode():void 0),this._updateLensStyle()}dispose(){var e;this._localDispose(),this._disposables.dispose(),this._oldCodeLensModels.dispose(),(e=this._currentCodeLensModel)==null||e.dispose(),this._styleElement.remove()}_getLayoutInfo(){let e=Math.max(1.3,this._editor.getOption(60)/this._editor.getOption(47)),t=this._editor.getOption(16);return(!t||t<5)&&(t=this._editor.getOption(47)*.9|0),{fontSize:t,codeLensHeight:t*e|0}}_updateLensStyle(){let{codeLensHeight:e,fontSize:t}=this._getLayoutInfo(),n=this._editor.getOption(15),r=this._editor.getOption(45),i=`--codelens-font-family${this._styleClassName}`,a=`--codelens-font-features${this._styleClassName}`,s=`
16
+ .monaco-editor .codelens-decoration.${this._styleClassName} { line-height: ${e}px; font-size: ${t}px; padding-right: ${Math.round(t*.5)}px; font-feature-settings: var(${a}) }
17
+ .monaco-editor .codelens-decoration.${this._styleClassName} span.codicon { line-height: ${e}px; font-size: ${t}px; }
18
+ `;n&&(s+=`.monaco-editor .codelens-decoration.${this._styleClassName} { font-family: var(${i}), ${o.lr.fontFamily}}`),this._styleElement.textContent=s,this._editor.getContainerDomNode().style.setProperty(i,n??`inherit`),this._editor.getContainerDomNode().style.setProperty(a,r.fontFeatureSettings),this._editor.changeViewZones(t=>{for(let n of this._lenses)n.updateHeight(e,t)})}_localDispose(){var e,t,n;(e=this._getCodeLensModelPromise)==null||e.cancel(),this._getCodeLensModelPromise=void 0,(t=this._resolveCodeLensesPromise)==null||t.cancel(),this._resolveCodeLensesPromise=void 0,this._localToDispose.clear(),this._oldCodeLensModels.clear(),(n=this._currentCodeLensModel)==null||n.dispose()}_onModelChange(){this._localDispose();let e=this._editor.getModel();if(!e||!this._editor.getOption(14))return;let t=this._codeLensCache.get(e);if(t&&this._renderCodeLensSymbols(t),!this._languageFeaturesService.codeLensProvider.has(e)){t&&this._localToDispose.add(a.ws(()=>{t===this._codeLensCache.get(e)&&(this._codeLensCache.delete(e),this._onModelChange())},30*1e3));return}for(let t of this._languageFeaturesService.codeLensProvider.all(e))if(typeof t.onDidChange==`function`){let e=t.onDidChange(()=>n.schedule());this._localToDispose.add(e)}let n=new a.ys(()=>{var t;let r=Date.now();(t=this._getCodeLensModelPromise)==null||t.cancel(),this._getCodeLensModelPromise=a.Cs(t=>Fn(this._languageFeaturesService.codeLensProvider,e,t)),this._getCodeLensModelPromise.then(t=>{this._currentCodeLensModel&&this._oldCodeLensModels.add(this._currentCodeLensModel),this._currentCodeLensModel=t,this._codeLensCache.put(e,t),n.delay=this._provideCodeLensDebounce.update(e,Date.now()-r),this._renderCodeLensSymbols(t),this._resolveCodeLensesInViewportSoon()},a.fu)},this._provideCodeLensDebounce.get(e));this._localToDispose.add(n),this._localToDispose.add(a.au(()=>this._resolveCodeLensesScheduler.cancel())),this._localToDispose.add(this._editor.onDidChangeModelContent(()=>{this._editor.changeDecorations(e=>{this._editor.changeViewZones(t=>{let n=[],r=-1;this._lenses.forEach(e=>{!e.isValid()||r===e.getLineNumber()?n.push(e):(e.update(t),r=e.getLineNumber())});let i=new Un;n.forEach(e=>{e.dispose(i,t),this._lenses.splice(this._lenses.indexOf(e),1)}),i.commit(e)})}),n.schedule()})),this._localToDispose.add(this._editor.onDidFocusEditorWidget(()=>{n.schedule()})),this._localToDispose.add(this._editor.onDidScrollChange(e=>{e.scrollTopChanged&&this._lenses.length>0&&this._resolveCodeLensesInViewportSoon()})),this._localToDispose.add(this._editor.onDidLayoutChange(()=>{this._resolveCodeLensesInViewportSoon()})),this._localToDispose.add(a.au(()=>{if(this._editor.getModel()){let e=o.pn.capture(this._editor);this._editor.changeDecorations(e=>{this._editor.changeViewZones(t=>{this._disposeAllLenses(e,t)})}),e.restore(this._editor)}else this._disposeAllLenses(void 0,void 0)})),this._localToDispose.add(this._editor.onMouseDown(e=>{if(e.target.type!==9)return;let t=e.target.element;if(t?.tagName===`SPAN`&&(t=t.parentElement),t?.tagName===`A`)for(let e of this._lenses){let n=e.getCommand(t);if(n){this._commandService.executeCommand(n.id,...n.arguments||[]).catch(e=>this._notificationService.error(e));break}}})),n.schedule()}_disposeAllLenses(e,t){let n=new Un;for(let e of this._lenses)e.dispose(n,t);e&&n.commit(e),this._lenses.length=0}_renderCodeLensSymbols(e){if(!this._editor.hasModel())return;let t=this._editor.getModel().getLineCount(),n=[],r;for(let i of e.lenses){let e=i.symbol.range.startLineNumber;e<1||e>t||(r&&r[r.length-1].symbol.range.startLineNumber===e?r.push(i):(r=[i],n.push(r)))}let i=o.pn.capture(this._editor),a=this._getLayoutInfo();this._editor.changeDecorations(e=>{this._editor.changeViewZones(t=>{let r=new Un,i=0,o=0;for(;o<n.length&&i<this._lenses.length;){let e=n[o][0].symbol.range.startLineNumber,s=this._lenses[i].getLineNumber();s<e?(this._lenses[i].dispose(r,t),this._lenses.splice(i,1)):s===e?(this._lenses[i].updateCodeLensSymbols(n[o],r),o++,i++):(this._lenses.splice(i,0,new Wn(n[o],this._editor,this._styleClassName,r,t,a.codeLensHeight,()=>this._resolveCodeLensesInViewportSoon())),i++,o++)}for(;i<this._lenses.length;)this._lenses[i].dispose(r,t),this._lenses.splice(i,1);for(;o<n.length;)this._lenses.push(new Wn(n[o],this._editor,this._styleClassName,r,t,a.codeLensHeight,()=>this._resolveCodeLensesInViewportSoon())),o++;r.commit(e)})}),i.restore(this._editor)}_resolveCodeLensesInViewportSoon(){this._editor.getModel()&&this._resolveCodeLensesScheduler.schedule()}_resolveCodeLensesInViewport(){var e;(e=this._resolveCodeLensesPromise)==null||e.cancel(),this._resolveCodeLensesPromise=void 0;let t=this._editor.getModel();if(!t)return;let n=[],r=[];if(this._lenses.forEach(e=>{let i=e.computeIfNecessary(t);i&&(n.push(i),r.push(e))}),n.length===0)return;let i=Date.now(),o=a.Cs(e=>{let i=n.map((n,i)=>{let o=Array(n.length),s=n.map((n,r)=>!n.symbol.command&&typeof n.provider.resolveCodeLens==`function`?Promise.resolve(n.provider.resolveCodeLens(t,n.symbol,e)).then(e=>{o[r]=e},a.pu):(o[r]=n.symbol,Promise.resolve(void 0)));return Promise.all(s).then(()=>{!e.isCancellationRequested&&!r[i].isDisposed()&&r[i].updateCommands(o)})});return Promise.all(i)});this._resolveCodeLensesPromise=o,this._resolveCodeLensesPromise.then(()=>{let e=this._resolveCodeLensesDebounce.update(t,Date.now()-i);this._resolveCodeLensesScheduler.delay=e,this._currentCodeLensModel&&this._codeLensCache.put(t,this._currentCodeLensModel),this._oldCodeLensModels.clear(),o===this._resolveCodeLensesPromise&&(this._resolveCodeLensesPromise=void 0)},e=>{a.fu(e),o===this._resolveCodeLensesPromise&&(this._resolveCodeLensesPromise=void 0)})}getModel(){return this._currentCodeLensModel}};Jn.ID=`css.editor.codeLens`,Jn=Gn([Kn(1,a.Zo),Kn(2,a.t),Kn(3,a.Ma),Kn(4,o.vn),Kn(5,Rn)],Jn),a.ta(Jn.ID,Jn),a.$i(class extends a.Gi{constructor(){super({id:`codelens.showLensesInCurrentLine`,precondition:o.kn.hasCodeLensProvider,label:a.Td(`showLensOnLine`,`Show CodeLens Commands For Current Line`),alias:`Show CodeLens Commands For Current Line`})}run(e,t){return qn(this,void 0,void 0,function*(){if(!t.hasModel())return;let n=e.get(o.P),r=e.get(a.Ma),i=e.get(o.vn),s=t.getSelection().positionLineNumber,c=t.getContribution(Jn.ID);if(!c)return;let l=c.getModel();if(!l)return;let u=[];for(let e of l.lenses)e.symbol.command&&e.symbol.range.startLineNumber===s&&u.push({label:e.symbol.command.title,command:e.symbol.command});if(u.length===0)return;let d=yield n.pick(u,{canPickMany:!1});if(d){if(l.isDisposed)return yield r.executeCommand(this.id);try{yield r.executeCommand(d.command.id,...d.command.arguments||[])}catch(e){i.error(e)}}})}});var Yn=class{constructor(e,t,n){this.presentationIndex=n,this._onColorFlushed=new a.Ul,this.onColorFlushed=this._onColorFlushed.event,this._onDidChangeColor=new a.Ul,this.onDidChangeColor=this._onDidChangeColor.event,this._onDidChangePresentation=new a.Ul,this.onDidChangePresentation=this._onDidChangePresentation.event,this.originalColor=e,this._color=e,this._colorPresentations=t}get color(){return this._color}set color(e){this._color.equals(e)||(this._color=e,this._onDidChangeColor.fire(e))}get presentation(){return this.colorPresentations[this.presentationIndex]}get colorPresentations(){return this._colorPresentations}set colorPresentations(e){this._colorPresentations=e,this.presentationIndex>e.length-1&&(this.presentationIndex=0),this._onDidChangePresentation.fire(this.presentation)}selectNextColorPresentation(){this.presentationIndex=(this.presentationIndex+1)%this.colorPresentations.length,this.flushColor(),this._onDidChangePresentation.fire(this.presentation)}guessColorPresentation(e,t){for(let e=0;e<this.colorPresentations.length;e++)if(t.toLowerCase()===this.colorPresentations[e].label){this.presentationIndex=e,this._onDidChangePresentation.fire(this.presentation);break}}flushColor(){this._onColorFlushed.fire(this._color)}},A=a.za,Xn=class extends a.Xl{constructor(e,t,n){super(),this.model=t,this.domNode=A(`.colorpicker-header`),a.Xa(e,this.domNode),this.pickedColorNode=a.Xa(this.domNode,A(`.picked-color`));let r=a.Td(`clickToToggleColorOptions`,`Click to toggle color options (rgb/hsl/hex)`);this.pickedColorNode.setAttribute(`title`,r);let i=a.Xa(this.domNode,A(`.original-color`));i.style.backgroundColor=a.Bi.Format.CSS.format(this.model.originalColor)||``,this.backgroundColor=n.getColorTheme().getColor(a.kn)||a.Bi.white,this._register(a.ba((e,t)=>{this.backgroundColor=e.getColor(a.kn)||a.Bi.white})),this._register(a.Ka(this.pickedColorNode,a.Ua.CLICK,()=>this.model.selectNextColorPresentation())),this._register(a.Ka(i,a.Ua.CLICK,()=>{this.model.color=this.model.originalColor,this.model.flushColor()})),this._register(t.onDidChangeColor(this.onDidChangeColor,this)),this._register(t.onDidChangePresentation(this.onDidChangePresentation,this)),this.pickedColorNode.style.backgroundColor=a.Bi.Format.CSS.format(t.color)||``,this.pickedColorNode.classList.toggle(`light`,t.color.rgba.a<.5?this.backgroundColor.isLighter():t.color.isLighter()),this.onDidChangeColor(this.model.color)}onDidChangeColor(e){this.pickedColorNode.style.backgroundColor=a.Bi.Format.CSS.format(e)||``,this.pickedColorNode.classList.toggle(`light`,e.rgba.a<.5?this.backgroundColor.isLighter():e.isLighter()),this.onDidChangePresentation()}onDidChangePresentation(){this.pickedColorNode.textContent=this.model.presentation?this.model.presentation.label:``,this.pickedColorNode.prepend(A(`.codicon.codicon-color-mode`))}},Zn=class extends a.Xl{constructor(e,t,n){super(),this.model=t,this.pixelRatio=n,this.domNode=A(`.colorpicker-body`),a.Xa(e,this.domNode),this.saturationBox=new Qn(this.domNode,this.model,this.pixelRatio),this._register(this.saturationBox),this._register(this.saturationBox.onDidChange(this.onDidSaturationValueChange,this)),this._register(this.saturationBox.onColorFlushed(this.flushColor,this)),this.opacityStrip=new er(this.domNode,this.model),this._register(this.opacityStrip),this._register(this.opacityStrip.onDidChange(this.onDidOpacityChange,this)),this._register(this.opacityStrip.onColorFlushed(this.flushColor,this)),this.hueStrip=new tr(this.domNode,this.model),this._register(this.hueStrip),this._register(this.hueStrip.onDidChange(this.onDidHueChange,this)),this._register(this.hueStrip.onColorFlushed(this.flushColor,this))}flushColor(){this.model.flushColor()}onDidSaturationValueChange({s:e,v:t}){let n=this.model.color.hsva;this.model.color=new a.Bi(new a.Vi(n.h,e,t,n.a))}onDidOpacityChange(e){let t=this.model.color.hsva;this.model.color=new a.Bi(new a.Vi(t.h,t.s,t.v,e))}onDidHueChange(e){let t=this.model.color.hsva,n=(1-e)*360;this.model.color=new a.Bi(new a.Vi(n===360?0:n,t.s,t.v,t.a))}layout(){this.saturationBox.layout(),this.opacityStrip.layout(),this.hueStrip.layout()}},Qn=class extends a.Xl{constructor(e,t,n){super(),this.model=t,this.pixelRatio=n,this._onDidChange=new a.Ul,this.onDidChange=this._onDidChange.event,this._onColorFlushed=new a.Ul,this.onColorFlushed=this._onColorFlushed.event,this.domNode=A(`.saturation-wrap`),a.Xa(e,this.domNode),this.canvas=document.createElement(`canvas`),this.canvas.className=`saturation-box`,a.Xa(this.domNode,this.canvas),this.selection=A(`.saturation-selection`),a.Xa(this.domNode,this.selection),this.layout(),this._register(a.Ka(this.domNode,a.Ua.POINTER_DOWN,e=>this.onPointerDown(e))),this._register(this.model.onDidChangeColor(this.onDidChangeColor,this)),this.monitor=null}onPointerDown(e){if(!e.target||!(e.target instanceof Element))return;this.monitor=this._register(new a.Ui);let t=a.uo(this.domNode);e.target!==this.selection&&this.onDidChangePosition(e.offsetX,e.offsetY),this.monitor.startMonitoring(e.target,e.pointerId,e.buttons,e=>this.onDidChangePosition(e.pageX-t.left,e.pageY-t.top),()=>null);let n=a.Ka(document,a.Ua.POINTER_UP,()=>{this._onColorFlushed.fire(),n.dispose(),this.monitor&&=(this.monitor.stopMonitoring(!0),null)},!0)}onDidChangePosition(e,t){let n=Math.max(0,Math.min(1,e/this.width)),r=Math.max(0,Math.min(1,1-t/this.height));this.paintSelection(n,r),this._onDidChange.fire({s:n,v:r})}layout(){this.width=this.domNode.offsetWidth,this.height=this.domNode.offsetHeight,this.canvas.width=this.width*this.pixelRatio,this.canvas.height=this.height*this.pixelRatio,this.paint();let e=this.model.color.hsva;this.paintSelection(e.s,e.v)}paint(){let e=this.model.color.hsva,t=new a.Bi(new a.Vi(e.h,1,1,1)),n=this.canvas.getContext(`2d`),r=n.createLinearGradient(0,0,this.canvas.width,0);r.addColorStop(0,`rgba(255, 255, 255, 1)`),r.addColorStop(.5,`rgba(255, 255, 255, 0.5)`),r.addColorStop(1,`rgba(255, 255, 255, 0)`);let i=n.createLinearGradient(0,0,0,this.canvas.height);i.addColorStop(0,`rgba(0, 0, 0, 0)`),i.addColorStop(1,`rgba(0, 0, 0, 1)`),n.rect(0,0,this.canvas.width,this.canvas.height),n.fillStyle=a.Bi.Format.CSS.format(t),n.fill(),n.fillStyle=r,n.fill(),n.fillStyle=i,n.fill()}paintSelection(e,t){this.selection.style.left=`${e*this.width}px`,this.selection.style.top=`${this.height-t*this.height}px`}onDidChangeColor(){this.monitor&&this.monitor.isMonitoring()||this.paint()}},$n=class extends a.Xl{constructor(e,t){super(),this.model=t,this._onDidChange=new a.Ul,this.onDidChange=this._onDidChange.event,this._onColorFlushed=new a.Ul,this.onColorFlushed=this._onColorFlushed.event,this.domNode=a.Xa(e,A(`.strip`)),this.overlay=a.Xa(this.domNode,A(`.overlay`)),this.slider=a.Xa(this.domNode,A(`.slider`)),this.slider.style.top=`0px`,this._register(a.Ka(this.domNode,a.Ua.POINTER_DOWN,e=>this.onPointerDown(e))),this.layout()}layout(){this.height=this.domNode.offsetHeight-this.slider.offsetHeight;let e=this.getValue(this.model.color);this.updateSliderPosition(e)}onPointerDown(e){if(!e.target||!(e.target instanceof Element))return;let t=this._register(new a.Ui),n=a.uo(this.domNode);this.domNode.classList.add(`grabbing`),e.target!==this.slider&&this.onDidChangeTop(e.offsetY),t.startMonitoring(e.target,e.pointerId,e.buttons,e=>this.onDidChangeTop(e.pageY-n.top),()=>null);let r=a.Ka(document,a.Ua.POINTER_UP,()=>{this._onColorFlushed.fire(),r.dispose(),t.stopMonitoring(!0),this.domNode.classList.remove(`grabbing`)},!0)}onDidChangeTop(e){let t=Math.max(0,Math.min(1,1-e/this.height));this.updateSliderPosition(t),this._onDidChange.fire(t)}updateSliderPosition(e){this.slider.style.top=`${(1-e)*this.height}px`}},er=class extends $n{constructor(e,t){super(e,t),this.domNode.classList.add(`opacity-strip`),this._register(t.onDidChangeColor(this.onDidChangeColor,this)),this.onDidChangeColor(this.model.color)}onDidChangeColor(e){let{r:t,g:n,b:r}=e.rgba,i=new a.Bi(new a.Hi(t,n,r,1)),o=new a.Bi(new a.Hi(t,n,r,0));this.overlay.style.background=`linear-gradient(to bottom, ${i} 0%, ${o} 100%)`}getValue(e){return e.hsva.a}},tr=class extends $n{constructor(e,t){super(e,t),this.domNode.classList.add(`hue-strip`)}getValue(e){return 1-e.hsva.h/360}},nr=class extends o.Dn{constructor(e,t,n,r){super(),this.model=t,this.pixelRatio=n,this._register(a.hc.onDidChange(()=>this.layout()));let i=A(`.colorpicker-widget`);e.appendChild(i);let o=new Xn(i,this.model,r);this.body=new Zn(i,this.model,this.pixelRatio),this._register(o),this._register(this.body)}layout(){this.body.layout()}},rr=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},ir=function(e,t){return function(n,r){t(n,r,e)}},ar=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},or=class{constructor(e,t,n,r){this.owner=e,this.range=t,this.model=n,this.provider=r,this.forceShowAtRange=!0}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}},sr=class{constructor(e,t){this._editor=e,this._themeService=t,this.hoverOrdinal=1}computeSync(e,t){return[]}computeAsync(e,t,n){return a.fs.fromPromise(this._computeAsync(e,t,n))}_computeAsync(e,t,n){return ar(this,void 0,void 0,function*(){if(!this._editor.hasModel())return[];let e=s.n.get(this._editor);if(!e)return[];for(let n of t){if(!e.isColorDecoration(n))continue;let t=e.getColorData(n.range.getStartPosition());if(t)return[yield this._createColorHover(this._editor.getModel(),t.colorInfo,t.provider)]}return[]})}_createColorHover(e,t,n){return ar(this,void 0,void 0,function*(){let r=e.getValueInRange(t.range),{red:i,green:o,blue:c,alpha:l}=t.color,u=new a.Bi(new a.Hi(Math.round(i*255),Math.round(o*255),Math.round(c*255),l)),d=yield s.r(e,t,n,a.Bl.None),f=new Yn(u,[],0);return f.colorPresentations=d||[],f.guessColorPresentation(u,r),new or(this,a.Ol.lift(t.range),f,n)})}renderHoverParts(e,t){if(t.length===0||!this._editor.hasModel())return a.Xl.None;let n=new a.Zl,r=t[0],i=this._editor.getModel(),o=r.model,c=n.add(new nr(e.fragment,o,this._editor.getOption(130),this._themeService));e.setColorPicker(c);let l=new a.Ol(r.range.startLineNumber,r.range.startColumn,r.range.endLineNumber,r.range.endColumn),u=()=>{let t,n;if(o.presentation.textEdit){t=[o.presentation.textEdit],n=new a.Ol(o.presentation.textEdit.range.startLineNumber,o.presentation.textEdit.range.startColumn,o.presentation.textEdit.range.endLineNumber,o.presentation.textEdit.range.endColumn);let e=this._editor.getModel()._setTrackedRange(null,n,3);this._editor.pushUndoStop(),this._editor.executeEdits(`colorpicker`,t),n=this._editor.getModel()._getTrackedRange(e)||n}else t=[{range:l,text:o.presentation.label,forceMoveMarkers:!1}],n=l.setEndPosition(l.endLineNumber,l.startColumn+o.presentation.label.length),this._editor.pushUndoStop(),this._editor.executeEdits(`colorpicker`,t);o.presentation.additionalTextEdits&&(t=[...o.presentation.additionalTextEdits],this._editor.executeEdits(`colorpicker`,t),e.hide()),this._editor.pushUndoStop(),l=n},d=e=>s.r(i,{range:l,color:{red:e.rgba.r/255,green:e.rgba.g/255,blue:e.rgba.b/255,alpha:e.rgba.a}},r.provider,a.Bl.None).then(e=>{o.colorPresentations=e||[]});return n.add(o.onColorFlushed(e=>{d(e).then(u)})),n.add(o.onDidChangeColor(d)),n}};sr=rr([ir(1,a.ga)],sr);function cr(e,t){return!!e[t]}var lr=class{constructor(e,t){this.target=e.target,this.hasTriggerModifier=cr(e.event,t.triggerModifier),this.hasSideBySideModifier=cr(e.event,t.triggerSideBySideModifier),this.isNoneOrSingleMouseDown=e.event.detail<=1}},ur=class{constructor(e,t){this.keyCodeIsTriggerKey=e.keyCode===t.triggerKey,this.keyCodeIsSideBySideKey=e.keyCode===t.triggerSideBySideKey,this.hasTriggerModifier=cr(e,t.triggerModifier)}},dr=class{constructor(e,t,n,r){this.triggerKey=e,this.triggerModifier=t,this.triggerSideBySideKey=n,this.triggerSideBySideModifier=r}equals(e){return this.triggerKey===e.triggerKey&&this.triggerModifier===e.triggerModifier&&this.triggerSideBySideKey===e.triggerSideBySideKey&&this.triggerSideBySideModifier===e.triggerSideBySideModifier}};function fr(e){return e===`altKey`?a.bd?new dr(57,`metaKey`,6,`altKey`):new dr(5,`ctrlKey`,6,`altKey`):a.bd?new dr(6,`altKey`,57,`metaKey`):new dr(6,`altKey`,5,`ctrlKey`)}var pr=class extends a.Xl{constructor(e){super(),this._onMouseMoveOrRelevantKeyDown=this._register(new a.Ul),this.onMouseMoveOrRelevantKeyDown=this._onMouseMoveOrRelevantKeyDown.event,this._onExecute=this._register(new a.Ul),this.onExecute=this._onExecute.event,this._onCancel=this._register(new a.Ul),this.onCancel=this._onCancel.event,this._editor=e,this._opts=fr(this._editor.getOption(71)),this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._lineNumberOnMouseDown=0,this._register(this._editor.onDidChangeConfiguration(e=>{if(e.hasChanged(71)){let e=fr(this._editor.getOption(71));if(this._opts.equals(e))return;this._opts=e,this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._lineNumberOnMouseDown=0,this._onCancel.fire()}})),this._register(this._editor.onMouseMove(e=>this._onEditorMouseMove(new lr(e,this._opts)))),this._register(this._editor.onMouseDown(e=>this._onEditorMouseDown(new lr(e,this._opts)))),this._register(this._editor.onMouseUp(e=>this._onEditorMouseUp(new lr(e,this._opts)))),this._register(this._editor.onKeyDown(e=>this._onEditorKeyDown(new ur(e,this._opts)))),this._register(this._editor.onKeyUp(e=>this._onEditorKeyUp(new ur(e,this._opts)))),this._register(this._editor.onMouseDrag(()=>this._resetHandler())),this._register(this._editor.onDidChangeCursorSelection(e=>this._onDidChangeCursorSelection(e))),this._register(this._editor.onDidChangeModel(e=>this._resetHandler())),this._register(this._editor.onDidChangeModelContent(()=>this._resetHandler())),this._register(this._editor.onDidScrollChange(e=>{(e.scrollTopChanged||e.scrollLeftChanged)&&this._resetHandler()}))}_onDidChangeCursorSelection(e){e.selection&&e.selection.startColumn!==e.selection.endColumn&&this._resetHandler()}_onEditorMouseMove(e){this._lastMouseMoveEvent=e,this._onMouseMoveOrRelevantKeyDown.fire([e,null])}_onEditorMouseDown(e){this._hasTriggerKeyOnMouseDown=e.hasTriggerModifier,this._lineNumberOnMouseDown=e.target.position?e.target.position.lineNumber:0}_onEditorMouseUp(e){let t=e.target.position?e.target.position.lineNumber:0;this._hasTriggerKeyOnMouseDown&&this._lineNumberOnMouseDown&&this._lineNumberOnMouseDown===t&&this._onExecute.fire(e)}_onEditorKeyDown(e){this._lastMouseMoveEvent&&(e.keyCodeIsTriggerKey||e.keyCodeIsSideBySideKey&&e.hasTriggerModifier)?this._onMouseMoveOrRelevantKeyDown.fire([this._lastMouseMoveEvent,e]):e.hasTriggerModifier&&this._onCancel.fire()}_onEditorKeyUp(e){e.keyCodeIsTriggerKey&&this._onCancel.fire()}_resetHandler(){this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._onCancel.fire()}},mr=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},hr=function(e,t){return function(n,r){t(n,r,e)}},gr=class extends o._n{constructor(e,t,n,r,i,a,o,s,c,l,u,d){super(e,Object.assign(Object.assign({},n.getRawOptions()),{overflowWidgetsDomNode:n.getOverflowWidgetsDomNode()}),{},r,i,a,o,s,c,l,u,d),this._parentEditor=n,this._overwriteOptions=t,super.updateOptions(this._overwriteOptions),this._register(n.onDidChangeConfiguration(e=>this._onParentConfigurationChanged(e)))}getParentEditor(){return this._parentEditor}_onParentConfigurationChanged(e){super.updateOptions(this._parentEditor.getRawOptions()),super.updateOptions(this._overwriteOptions)}updateOptions(e){a.bu(this._overwriteOptions,e,!0),super.updateOptions(this._overwriteOptions)}};gr=mr([hr(3,a.fc),hr(4,a.dc),hr(5,a.Ma),hr(6,a.Ea),hr(7,a.ga),hr(8,o.vn),hr(9,o.Jn),hr(10,a.Ps),hr(11,a.Zo)],gr);var _r=new a.Bi(new a.Hi(0,122,204)),vr={showArrow:!0,showFrame:!0,className:``,frameColor:_r,arrowColor:_r,keepEditorSelection:!1},yr=`vs.editor.contrib.zoneWidget`,br=class{constructor(e,t,n,r,i,a){this.id=``,this.domNode=e,this.afterLineNumber=t,this.afterColumn=n,this.heightInLines=r,this._onDomNodeTop=i,this._onComputedHeight=a}onDomNodeTop(e){this._onDomNodeTop(e)}onComputedHeight(e){this._onComputedHeight(e)}},xr=class{constructor(e,t){this._id=e,this._domNode=t}getId(){return this._id}getDomNode(){return this._domNode}getPosition(){return null}},Sr=class e{constructor(t){this._editor=t,this._ruleName=e._IdGenerator.nextId(),this._decorations=this._editor.createDecorationsCollection(),this._color=null,this._height=-1}dispose(){this.hide(),a.To(this._ruleName)}set color(e){this._color!==e&&(this._color=e,this._updateStyle())}set height(e){this._height!==e&&(this._height=e,this._updateStyle())}_updateStyle(){a.To(this._ruleName),a.to(`.monaco-editor ${this._ruleName}`,`border-style: solid; border-color: transparent; border-bottom-color: ${this._color}; border-width: ${this._height}px; bottom: -${this._height}px; margin-left: -${this._height}px; `)}show(e){e.column===1&&(e={lineNumber:e.lineNumber,column:2}),this._decorations.set([{range:a.Ol.fromPositions(e),options:{description:`zone-widget-arrow`,className:this._ruleName,stickiness:1}}])}hide(){this._decorations.clear()}};Sr._IdGenerator=new o.tt(`.arrow-decoration-`);var Cr=class{constructor(e,t={}){this._arrow=null,this._overlayWidget=null,this._resizeSash=null,this._viewZone=null,this._disposables=new a.Zl,this.container=null,this._isShowing=!1,this.editor=e,this._positionMarkerId=this.editor.createDecorationsCollection(),this.options=a._u(t),a.bu(this.options,vr,!1),this.domNode=document.createElement(`div`),this.options.isAccessible||(this.domNode.setAttribute(`aria-hidden`,`true`),this.domNode.setAttribute(`role`,`presentation`)),this._disposables.add(this.editor.onDidLayoutChange(e=>{let t=this._getWidth(e);this.domNode.style.width=t+`px`,this.domNode.style.left=this._getLeft(e)+`px`,this._onWidth(t)}))}dispose(){this._overlayWidget&&=(this.editor.removeOverlayWidget(this._overlayWidget),null),this._viewZone&&this.editor.changeViewZones(e=>{this._viewZone&&e.removeZone(this._viewZone.id),this._viewZone=null}),this._positionMarkerId.clear(),this._disposables.dispose()}create(){this.domNode.classList.add(`zone-widget`),this.options.className&&this.domNode.classList.add(this.options.className),this.container=document.createElement(`div`),this.container.classList.add(`zone-widget-container`),this.domNode.appendChild(this.container),this.options.showArrow&&(this._arrow=new Sr(this.editor),this._disposables.add(this._arrow)),this._fillContainer(this.container),this._initSash(),this._applyStyles()}style(e){e.frameColor&&(this.options.frameColor=e.frameColor),e.arrowColor&&(this.options.arrowColor=e.arrowColor),this._applyStyles()}_applyStyles(){if(this.container&&this.options.frameColor){let e=this.options.frameColor.toString();this.container.style.borderTopColor=e,this.container.style.borderBottomColor=e}if(this._arrow&&this.options.arrowColor){let e=this.options.arrowColor.toString();this._arrow.color=e}}_getWidth(e){return e.width-e.minimap.minimapWidth-e.verticalScrollbarWidth}_getLeft(e){return e.minimap.minimapWidth>0&&e.minimap.minimapLeft===0?e.minimap.minimapWidth:0}_onViewZoneTop(e){this.domNode.style.top=e+`px`}_onViewZoneHeight(e){if(this.domNode.style.height=`${e}px`,this.container){let t=e-this._decoratingElementsHeight();this.container.style.height=`${t}px`;let n=this.editor.getLayoutInfo();this._doLayout(t,this._getWidth(n))}this._resizeSash&&this._resizeSash.layout()}get position(){let e=this._positionMarkerId.getRange(0);if(e)return e.getStartPosition()}show(e,t){let n=a.Ol.isIRange(e)?a.Ol.lift(e):a.Ol.fromPositions(e);this._isShowing=!0,this._showImpl(n,t),this._isShowing=!1,this._positionMarkerId.set([{range:n,options:a.f.EMPTY}])}hide(){this._viewZone&&=(this.editor.changeViewZones(e=>{this._viewZone&&e.removeZone(this._viewZone.id)}),null),this._overlayWidget&&=(this.editor.removeOverlayWidget(this._overlayWidget),null),this._arrow&&this._arrow.hide()}_decoratingElementsHeight(){let e=this.editor.getOption(60),t=0;if(this.options.showArrow){let n=Math.round(e/3);t+=2*n}if(this.options.showFrame){let n=Math.round(e/9);t+=2*n}return t}_showImpl(e,t){let n=e.getStartPosition(),r=this.editor.getLayoutInfo(),i=this._getWidth(r);this.domNode.style.width=`${i}px`,this.domNode.style.left=this._getLeft(r)+`px`;let a=document.createElement(`div`);a.style.overflow=`hidden`;let o=this.editor.getOption(60),s=Math.max(12,this.editor.getLayoutInfo().height/o*.8);t=Math.min(t,s);let c=0,l=0;if(this._arrow&&this.options.showArrow&&(c=Math.round(o/3),this._arrow.height=c,this._arrow.show(n)),this.options.showFrame&&(l=Math.round(o/9)),this.editor.changeViewZones(e=>{this._viewZone&&e.removeZone(this._viewZone.id),this._overlayWidget&&=(this.editor.removeOverlayWidget(this._overlayWidget),null),this.domNode.style.top=`-1000px`,this._viewZone=new br(a,n.lineNumber,n.column,t,e=>this._onViewZoneTop(e),e=>this._onViewZoneHeight(e)),this._viewZone.id=e.addZone(this._viewZone),this._overlayWidget=new xr(yr+this._viewZone.id,this.domNode),this.editor.addOverlayWidget(this._overlayWidget)}),this.container&&this.options.showFrame){let e=this.options.frameWidth?this.options.frameWidth:l;this.container.style.borderTopWidth=e+`px`,this.container.style.borderBottomWidth=e+`px`}let u=t*o-this._decoratingElementsHeight();this.container&&(this.container.style.top=c+`px`,this.container.style.height=u+`px`,this.container.style.overflow=`hidden`),this._doLayout(u,i),this.options.keepEditorSelection||this.editor.setSelection(e);let d=this.editor.getModel();if(d){let t=e.endLineNumber+1;t<=d.getLineCount()?this.revealLine(t,!1):this.revealLine(d.getLineCount(),!0)}}revealLine(e,t){t?this.editor.revealLineInCenter(e,0):this.editor.revealLine(e,0)}setCssClass(e,t){this.container&&(t&&this.container.classList.remove(t),this.container.classList.add(e))}_onWidth(e){}_doLayout(e,t){}_relayout(e){this._viewZone&&this._viewZone.heightInLines!==e&&this.editor.changeViewZones(t=>{this._viewZone&&(this._viewZone.heightInLines=e,t.layoutZone(this._viewZone.id))})}_initSash(){if(this._resizeSash)return;this._resizeSash=this._disposables.add(new o.hn(this.domNode,this,{orientation:1})),this.options.isResizeable||(this._resizeSash.state=0);let e;this._disposables.add(this._resizeSash.onDidStart(t=>{this._viewZone&&(e={startY:t.startY,heightInLines:this._viewZone.heightInLines})})),this._disposables.add(this._resizeSash.onDidEnd(()=>{e=void 0})),this._disposables.add(this._resizeSash.onDidChange(t=>{if(e){let n=(t.currentY-e.startY)/this.editor.getOption(60),r=n<0?Math.ceil(n):Math.floor(n),i=e.heightInLines+r;i>5&&i<35&&this._relayout(i)}}))}getHorizontalSashLeft(){return 0}getHorizontalSashTop(){return(this.domNode.style.height===null?0:parseInt(this.domNode.style.height))-this._decoratingElementsHeight()/2}getHorizontalSashWidth(){let e=this.editor.getLayoutInfo();return e.width-e.minimap.minimapWidth}},wr=class extends a.Pa{constructor(e,t){super(),this._onDidChangeVisibility=this._register(new a.Ul),this.onDidChangeVisibility=this._onDidChangeVisibility.event,this._element=a.Xa(e,a.za(`.monaco-dropdown`)),this._label=a.Xa(this._element,a.za(`.dropdown-label`));let n=t.labelRenderer;n||=e=>(e.textContent=t.label||``,null);for(let e of[a.Ua.CLICK,a.Ua.MOUSE_DOWN,o.Gn.Tap])this._register(a.Ka(this.element,e,e=>a.Ha.stop(e,!0)));for(let e of[a.Ua.MOUSE_DOWN,o.Gn.Tap])this._register(a.Ka(this._label,e,e=>{e instanceof MouseEvent&&(e.detail>1||e.button!==0)||(this.visible?this.hide():this.show())}));this._register(a.Ka(this._label,a.Ua.KEY_UP,e=>{let t=new a.Ho(e);(t.equals(3)||t.equals(10))&&(a.Ha.stop(e,!0),this.visible?this.hide():this.show())}));let r=n(this._label);r&&this._register(r),this._register(o.Kn.addTarget(this._label))}get element(){return this._element}show(){this.visible||(this.visible=!0,this._onDidChangeVisibility.fire(!0))}hide(){this.visible&&(this.visible=!1,this._onDidChangeVisibility.fire(!1))}dispose(){super.dispose(),this.hide(),this.boxContainer&&=(this.boxContainer.remove(),void 0),this.contents&&=(this.contents.remove(),void 0),this._label&&=(this._label.remove(),void 0)}},Tr=class extends wr{constructor(e,t){super(e,t),this._actions=[],this._contextMenuProvider=t.contextMenuProvider,this.actions=t.actions||[],this.actionProvider=t.actionProvider,this.menuClassName=t.menuClassName||``,this.menuAsChild=!!t.menuAsChild}set menuOptions(e){this._menuOptions=e}get menuOptions(){return this._menuOptions}get actions(){return this.actionProvider?this.actionProvider.getActions():this._actions}set actions(e){this._actions=e}show(){super.show(),this.element.classList.add(`active`),this._contextMenuProvider.showContextMenu({getAnchor:()=>this.element,getActions:()=>this.actions,getActionsContext:()=>this.menuOptions?this.menuOptions.context:null,getActionViewItem:e=>this.menuOptions&&this.menuOptions.actionViewItemProvider?this.menuOptions.actionViewItemProvider(e):void 0,getKeyBinding:e=>this.menuOptions&&this.menuOptions.getKeyBinding?this.menuOptions.getKeyBinding(e):void 0,getMenuClassName:()=>this.menuClassName,onHide:()=>this.onHide(),actionRunner:this.menuOptions?this.menuOptions.actionRunner:void 0,anchorAlignment:this.menuOptions?this.menuOptions.anchorAlignment:0,domForShadowRoot:this.menuAsChild?this.element:void 0})}hide(){super.hide()}onHide(){this.hide(),this.element.classList.remove(`active`)}},Er=class extends o.qt{constructor(e,t,n,r=Object.create(null)){super(null,e,r),this.actionItem=null,this._onDidChangeVisibility=this._register(new a.Ul),this.menuActionsOrProvider=t,this.contextMenuProvider=n,this.options=r,this.options.actionRunner&&(this.actionRunner=this.options.actionRunner)}render(e){this.actionItem=e;let t=e=>{this.element=a.Xa(e,a.za(`a.action-label`));let t=[];return typeof this.options.classNames==`string`?t=this.options.classNames.split(/\s+/g).filter(e=>!!e):this.options.classNames&&(t=this.options.classNames),t.find(e=>e===`icon`)||t.push(`codicon`),this.element.classList.add(...t),this.element.setAttribute(`role`,`button`),this.element.setAttribute(`aria-haspopup`,`true`),this.element.setAttribute(`aria-expanded`,`false`),this.element.title=this._action.label||``,this.element.ariaLabel=this._action.label||``,null},n=Array.isArray(this.menuActionsOrProvider),r={contextMenuProvider:this.contextMenuProvider,labelRenderer:t,menuAsChild:this.options.menuAsChild,actions:n?this.menuActionsOrProvider:void 0,actionProvider:n?void 0:this.menuActionsOrProvider};if(this.dropdownMenu=this._register(new Tr(e,r)),this._register(this.dropdownMenu.onDidChangeVisibility(e=>{var t;(t=this.element)==null||t.setAttribute(`aria-expanded`,`${e}`),this._onDidChangeVisibility.fire(e)})),this.dropdownMenu.menuOptions={actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,getKeyBinding:this.options.keybindingProvider,context:this._context},this.options.anchorAlignmentProvider){let e=this;this.dropdownMenu.menuOptions=Object.assign(Object.assign({},this.dropdownMenu.menuOptions),{get anchorAlignment(){return e.options.anchorAlignmentProvider()}})}this.updateEnabled()}setActionContext(e){super.setActionContext(e),this.dropdownMenu&&(this.dropdownMenu.menuOptions?this.dropdownMenu.menuOptions.context=e:this.dropdownMenu.menuOptions={context:e})}updateEnabled(){var e,t;let n=!this.getAction().enabled;(e=this.actionItem)==null||e.classList.toggle(`disabled`,n),(t=this.element)==null||t.classList.toggle(`disabled`,n)}},Dr=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},j=function(e,t){return function(n,r){t(n,r,e)}},Or=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};function kr(e,t,n,r,i,a,o){let s=e.getActions(t);return jr(s,n,!1,typeof r==`string`?e=>e===r:r,i,a,o),Ar(s)}function Ar(e){let t=new a.Zl;for(let[,n]of e)for(let e of n)t.add(e);return t}function jr(e,t,n,r=e=>e===`navigation`,i=2**53-1,o=()=>!1,s=!1){let c,l;Array.isArray(t)?(c=t,l=t):(c=t.primary,l=t.secondary);let u=new Set;for(let[t,i]of e){let e;r(t)?(e=c,e.length>0&&s&&e.push(new a.Ia)):(e=l,e.length>0&&e.push(new a.Ia));for(let r of i){n&&(r=r instanceof a.la&&r.alt?r.alt:r);let i=e.push(r);r instanceof a.La&&u.add({group:t,action:r,index:i-1})}}for(let{group:e,action:t,index:n}of u){let a=r(e)?c:l,s=t.actions;(s.length<=1||a.length+s.length-2<=i)&&o(t,e,a.length)&&a.splice(n,1,...s)}if(c!==l&&c.length>i){let e=c.splice(i,c.length-i);l.unshift(...e,new a.Ia)}}function Mr(e,t,n){return a.Cu(t.element),a.Ka(t.element,`contextmenu`,r=>{n.hideActions&&(r.preventDefault(),r.stopPropagation(),e.showContextMenu({getAnchor:()=>t.element,getActions:()=>n.hideActions.asList()}))},!0)}var Nr=class extends o.Kt{constructor(e,t,n,r,i,o,s){super(void 0,e,{icon:!!(e.class||e.item.icon),label:!e.class&&!e.item.icon,draggable:t?.draggable,keybinding:t?.keybinding,hoverDelegate:t?.hoverDelegate}),this._keybindingService=n,this._notificationService=r,this._contextKeyService=i,this._themeService=o,this._contextMenuService=s,this._wantsAltCommand=!1,this._itemClassDispose=this._register(new a.$l),this._altKey=a.Wa.getInstance()}get _menuItemAction(){return this._action}get _commandAction(){return this._wantsAltCommand&&this._menuItemAction.alt||this._menuItemAction}onClick(e){return Or(this,void 0,void 0,function*(){e.preventDefault(),e.stopPropagation();try{yield this.actionRunner.run(this._commandAction,this._context)}catch(e){this._notificationService.error(e)}})}render(e){super.render(e),e.classList.add(`menu-entry`),this._updateItemClass(this._menuItemAction.item);let t=!1,n=this._altKey.keyStatus.altKey||(a.Cd||a.vd)&&this._altKey.keyStatus.shiftKey,r=()=>{let e=t&&n&&!!this._commandAction.alt?.enabled;e!==this._wantsAltCommand&&(this._wantsAltCommand=e,this.updateLabel(),this.updateTooltip(),this.updateClass())};this._menuItemAction.alt&&this._register(this._altKey.event(e=>{n=e.altKey||(a.Cd||a.vd)&&e.shiftKey,r()})),this._register(a.Ka(e,`mouseleave`,e=>{t=!1,r()})),this._register(a.Ka(e,`mouseenter`,e=>{t=!0,r()})),this._register(Mr(this._contextMenuService,this,this._menuItemAction))}updateLabel(){this.options.label&&this.label&&(this.label.textContent=this._commandAction.label)}getTooltip(){let e=this._keybindingService.lookupKeybinding(this._commandAction.id,this._contextKeyService),t=e&&e.getLabel(),n=this._commandAction.tooltip||this._commandAction.label,r=t?a.Td(`titleAndKb`,`{0} ({1})`,n,t):n;if(!this._wantsAltCommand&&this._menuItemAction.alt?.enabled){let e=this._menuItemAction.alt.tooltip||this._menuItemAction.alt.label,t=this._keybindingService.lookupKeybinding(this._menuItemAction.alt.id,this._contextKeyService),n=t&&t.getLabel(),i=n?a.Td(`titleAndKb`,`{0} ({1})`,e,n):e;r=a.Td(`titleAndKbAndAlt`,`{0}
19
+ [{1}] {2}`,r,o.kt.modifierLabels[a.hd].altKey,i)}return r}updateClass(){this.options.icon&&(this._commandAction===this._menuItemAction?this._updateItemClass(this._menuItemAction.item):this._menuItemAction.alt&&this._updateItemClass(this._menuItemAction.alt.item))}_updateItemClass(e){this._itemClassDispose.value=void 0;let{element:t,label:n}=this;if(!t||!n)return;let r=this._commandAction.checked&&e.toggled?.icon?e.toggled.icon:e.icon;if(r)if(a.va.isThemeIcon(r)){let e=a.va.asClassNameArray(r);n.classList.add(...e),this._itemClassDispose.value=a.au(()=>{n.classList.remove(...e)})}else n.style.backgroundImage=a.Ca(this._themeService.getColorTheme().type)?a.Qa(r.dark):a.Qa(r.light),n.classList.add(`icon`),this._itemClassDispose.value=a.tu(a.au(()=>{n.style.backgroundImage=``,n.classList.remove(`icon`)}),this._themeService.onDidColorThemeChange(()=>{this.updateClass()}))}};Nr=Dr([j(2,o.At),j(3,o.vn),j(4,a.Ea),j(5,a.ga),j(6,o.Bt)],Nr);var Pr=class extends Er{constructor(e,t,n,r){let i=Object.assign({},t??Object.create(null),{menuAsChild:t?.menuAsChild??!1,classNames:t?.classNames??(a.va.isThemeIcon(e.item.icon)?a.va.asClassName(e.item.icon):void 0)});super(e,{getActions:()=>e.actions},n,i),this._contextMenuService=n,this._themeService=r}render(e){super.render(e),a.Cu(this.element),e.classList.add(`menu-entry`);let t=this._action,{icon:n}=t.item;if(n&&!a.va.isThemeIcon(n)){this.element.classList.add(`icon`);let e=()=>{this.element&&(this.element.style.backgroundImage=a.Ca(this._themeService.getColorTheme().type)?a.Qa(n.dark):a.Qa(n.light))};e(),this._register(this._themeService.onDidColorThemeChange(()=>{e()}))}this._register(Mr(this._contextMenuService,this,t))}};Pr=Dr([j(2,o.Bt),j(3,a.ga)],Pr);var Fr=class extends o.qt{constructor(e,t,n,r,i,o,s,c){super(null,e),this._keybindingService=n,this._notificationService=r,this._contextMenuService=i,this._menuService=o,this._instaService=s,this._storageService=c,this._container=null,this._options=t,this._storageKey=`${e.item.submenu.id}_lastActionId`;let l,u=c.get(this._storageKey,1);u&&(l=e.actions.find(e=>u===e.id)),l||=e.actions[0],this._defaultAction=this._instaService.createInstance(Nr,l,{keybinding:this._getDefaultActionKeybindingLabel(l)});let d=Object.assign({},t??Object.create(null),{menuAsChild:t?.menuAsChild??!0,classNames:t?.classNames??[`codicon`,`codicon-chevron-down`],actionRunner:t?.actionRunner??new a.Pa});this._dropdown=new Er(e,e.actions,this._contextMenuService,d),this._dropdown.actionRunner.onDidRun(e=>{e.action instanceof a.la&&this.update(e.action)})}update(e){this._storageService.store(this._storageKey,e.id,1,0),this._defaultAction.dispose(),this._defaultAction=this._instaService.createInstance(Nr,e,{keybinding:this._getDefaultActionKeybindingLabel(e)}),this._defaultAction.actionRunner=new class extends a.Pa{runAction(e,t){return Or(this,void 0,void 0,function*(){yield e.run(void 0)})}},this._container&&this._defaultAction.render(a.wo(this._container,a.za(`.action-container`)))}_getDefaultActionKeybindingLabel(e){let t;if(this._options?.renderKeybindingWithDefaultActionLabel){let n=this._keybindingService.lookupKeybinding(e.id);n&&(t=`(${n.getLabel()})`)}return t}setActionContext(e){super.setActionContext(e),this._defaultAction.setActionContext(e),this._dropdown.setActionContext(e)}render(e){this._container=e,super.render(this._container),this._container.classList.add(`monaco-dropdown-with-default`);let t=a.za(`.action-container`);this._defaultAction.render(a.Xa(this._container,t)),this._register(a.Ka(t,a.Ua.KEY_DOWN,e=>{let t=new a.Ho(e);t.equals(17)&&(this._defaultAction.element.tabIndex=-1,this._dropdown.focus(),t.stopPropagation())}));let n=a.za(`.dropdown-action-container`);this._dropdown.render(a.Xa(this._container,n)),this._register(a.Ka(n,a.Ua.KEY_DOWN,e=>{var t;let n=new a.Ho(e);n.equals(15)&&(this._defaultAction.element.tabIndex=0,this._dropdown.setFocusable(!1),(t=this._defaultAction.element)==null||t.focus(),n.stopPropagation())})),this._register(Mr(this._contextMenuService,this,this.action))}focus(e){e?this._dropdown.focus():(this._defaultAction.element.tabIndex=0,this._defaultAction.element.focus())}blur(){this._defaultAction.element.tabIndex=-1,this._dropdown.blur(),this._container.blur()}setFocusable(e){e?this._defaultAction.element.tabIndex=0:(this._defaultAction.element.tabIndex=-1,this._dropdown.setFocusable(!1))}dispose(){this._defaultAction.dispose(),this._dropdown.dispose(),super.dispose()}};Fr=Dr([j(2,o.At),j(3,o.vn),j(4,o.Bt),j(5,a.sa),j(6,a.fc),j(7,o.O)],Fr);function Ir(e,t,n){if(t instanceof a.la)return e.createInstance(Nr,t,n);if(t instanceof a.fa)return t.item.rememberDefaultAction?e.createInstance(Fr,t,n):e.createInstance(Pr,t,n)}var Lr=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Rr=function(e,t){return function(n,r){t(n,r,e)}},zr=a.mc(`IPeekViewService`);a.Ks(zr,class{constructor(){this._widgets=new Map}addExclusiveWidget(e,t){let n=this._widgets.get(e);n&&(n.listener.dispose(),n.widget.dispose()),this._widgets.set(e,{widget:t,listener:t.onDidClose(()=>{let n=this._widgets.get(e);n&&n.widget===t&&(n.listener.dispose(),this._widgets.delete(e))})})}});var M;(function(e){e.inPeekEditor=new a.Da(`inReferenceSearchEditor`,!0,a.Td(`inReferenceSearchEditor`,`Whether the current code editor is embedded inside peek`)),e.notInPeekEditor=e.inPeekEditor.toNegated()})(M||={});var Br=class{constructor(e,t){e instanceof gr&&M.inPeekEditor.bindTo(t)}dispose(){}};Br.ID=`editor.contrib.referenceController`,Br=Lr([Rr(1,a.Ea)],Br),a.ta(Br.ID,Br);function Vr(e){let t=e.get(a.dc).getFocusedCodeEditor();return t instanceof gr?t.getParentEditor():t}var Hr={headerBackgroundColor:a.Bi.white,primaryHeadingColor:a.Bi.fromHex(`#333333`),secondaryHeadingColor:a.Bi.fromHex(`#6c6c6cb3`)},Ur=class extends Cr{constructor(e,t,n){super(e,t),this.instantiationService=n,this._onDidClose=new a.Ul,this.onDidClose=this._onDidClose.event,a.bu(this.options,Hr,!1)}dispose(){this.disposed||(this.disposed=!0,super.dispose(),this._onDidClose.fire(this))}style(e){let t=this.options;e.headerBackgroundColor&&(t.headerBackgroundColor=e.headerBackgroundColor),e.primaryHeadingColor&&(t.primaryHeadingColor=e.primaryHeadingColor),e.secondaryHeadingColor&&(t.secondaryHeadingColor=e.secondaryHeadingColor),super.style(e)}_applyStyles(){super._applyStyles();let e=this.options;this._headElement&&e.headerBackgroundColor&&(this._headElement.style.backgroundColor=e.headerBackgroundColor.toString()),this._primaryHeading&&e.primaryHeadingColor&&(this._primaryHeading.style.color=e.primaryHeadingColor.toString()),this._secondaryHeading&&e.secondaryHeadingColor&&(this._secondaryHeading.style.color=e.secondaryHeadingColor.toString()),this._bodyElement&&e.frameColor&&(this._bodyElement.style.borderColor=e.frameColor.toString())}_fillContainer(e){this.setCssClass(`peekview-widget`),this._headElement=a.za(`.head`),this._bodyElement=a.za(`.body`),this._fillHead(this._headElement),this._fillBody(this._bodyElement),e.appendChild(this._headElement),e.appendChild(this._bodyElement)}_fillHead(e,t){let n=a.za(`.peekview-title`);this.options.supportOnTitleClick&&(n.classList.add(`clickable`),a.Ja(n,`click`,e=>this._onTitleClick(e))),a.Xa(this._headElement,n),this._fillTitleIcon(n),this._primaryHeading=a.za(`span.filename`),this._secondaryHeading=a.za(`span.dirname`),this._metaHeading=a.za(`span.meta`),a.Xa(n,this._primaryHeading,this._secondaryHeading,this._metaHeading);let r=a.za(`.peekview-actions`);a.Xa(this._headElement,r),this._actionbarWidget=new o.Gt(r,this._getActionBarOptions()),this._disposables.add(this._actionbarWidget),t||this._actionbarWidget.push(new a.Na(`peekview.close`,a.Td(`label.close`,`Close`),a.Tl.close.classNames,!0,()=>(this.dispose(),Promise.resolve())),{label:!1,icon:!0})}_fillTitleIcon(e){}_getActionBarOptions(){return{actionViewItemProvider:Ir.bind(void 0,this.instantiationService),orientation:0}}_onTitleClick(e){}setTitle(e,t){this._primaryHeading&&this._secondaryHeading&&(this._primaryHeading.innerText=e,this._primaryHeading.setAttribute(`title`,e),t?this._secondaryHeading.innerText=t:a.$a(this._secondaryHeading))}setMetaTitle(e){this._metaHeading&&(e?(this._metaHeading.innerText=e,a.jo(this._metaHeading)):a.vo(this._metaHeading))}_doLayout(e,t){if(!this._isShowing&&e<0){this.dispose();return}let n=Math.ceil(this.editor.getOption(60)*1.2),r=Math.round(e-(n+2));this._doLayoutHead(n,t),this._doLayoutBody(r,t)}_doLayoutHead(e,t){this._headElement&&(this._headElement.style.height=`${e}px`,this._headElement.style.lineHeight=this._headElement.style.height)}_doLayoutBody(e,t){this._bodyElement&&(this._bodyElement.style.height=`${e}px`)}};Ur=Lr([Rr(2,a.fc)],Ur);var Wr=a.Ti(`peekViewTitle.background`,{dark:a.Li(a.Ln,.1),light:a.Li(a.Ln,.1),hcDark:null,hcLight:null},a.Td(`peekViewTitleBackground`,`Background color of the peek view title area.`)),Gr=a.Ti(`peekViewTitleLabel.foreground`,{dark:a.Bi.white,light:a.Bi.black,hcDark:a.Bi.white,hcLight:a.En},a.Td(`peekViewTitleForeground`,`Color of the peek view title.`)),Kr=a.Ti(`peekViewTitleDescription.foreground`,{dark:`#ccccccb3`,light:`#616161`,hcDark:`#FFFFFF99`,hcLight:`#292929`},a.Td(`peekViewTitleInfoForeground`,`Color of the peek view title info.`)),qr=a.Ti(`peekView.border`,{dark:a.Ln,light:a.Ln,hcDark:a.en,hcLight:a.en},a.Td(`peekViewBorder`,`Color of the peek view borders and arrow.`)),Jr=a.Ti(`peekViewResult.background`,{dark:`#252526`,light:`#F3F3F3`,hcDark:a.Bi.black,hcLight:a.Bi.white},a.Td(`peekViewResultsBackground`,`Background color of the peek view result list.`));a.Ti(`peekViewResult.lineForeground`,{dark:`#bbbbbb`,light:`#646465`,hcDark:a.Bi.white,hcLight:a.En},a.Td(`peekViewResultsMatchForeground`,`Foreground color for line nodes in the peek view result list.`)),a.Ti(`peekViewResult.fileForeground`,{dark:a.Bi.white,light:`#1E1E1E`,hcDark:a.Bi.white,hcLight:a.En},a.Td(`peekViewResultsFileForeground`,`Foreground color for file nodes in the peek view result list.`)),a.Ti(`peekViewResult.selectionBackground`,{dark:`#3399ff33`,light:`#3399ff33`,hcDark:null,hcLight:null},a.Td(`peekViewResultsSelectionBackground`,`Background color of the selected entry in the peek view result list.`)),a.Ti(`peekViewResult.selectionForeground`,{dark:a.Bi.white,light:`#6C6C6C`,hcDark:a.Bi.white,hcLight:a.En},a.Td(`peekViewResultsSelectionForeground`,`Foreground color of the selected entry in the peek view result list.`));var Yr=a.Ti(`peekViewEditor.background`,{dark:`#001F33`,light:`#F2F8FC`,hcDark:a.Bi.black,hcLight:a.Bi.white},a.Td(`peekViewEditorBackground`,`Background color of the peek view editor.`));a.Ti(`peekViewEditorGutter.background`,{dark:Yr,light:Yr,hcDark:Yr,hcLight:Yr},a.Td(`peekViewEditorGutterBackground`,`Background color of the gutter in the peek view editor.`)),a.Ti(`peekViewResult.matchHighlightBackground`,{dark:`#ea5c004d`,light:`#ea5c004d`,hcDark:null,hcLight:null},a.Td(`peekViewResultsMatchHighlight`,`Match highlight color in the peek view result list.`)),a.Ti(`peekViewEditor.matchHighlightBackground`,{dark:`#ff8f0099`,light:`#f5d802de`,hcDark:null,hcLight:null},a.Td(`peekViewEditorMatchHighlight`,`Match highlight color in the peek view editor.`)),a.Ti(`peekViewEditor.matchHighlightBorder`,{dark:null,light:null,hcDark:a.qt,hcLight:a.qt},a.Td(`peekViewEditorMatchHighlightBorder`,`Match highlight border in the peek view editor.`));var Xr=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Zr=class{constructor(e,t,n,r){this.isProviderFirst=e,this.parent=t,this.link=n,this._rangeCallback=r,this.id=o.nt.nextId()}get uri(){return this.link.uri}get range(){return this._range??this.link.targetSelectionRange??this.link.range}set range(e){this._range=e,this._rangeCallback(this)}get ariaMessage(){let e=this.parent.getPreview(this)?.preview(this.range);return e?a.Td({key:`aria.oneReference.preview`,comment:[`Placeholders are: 0: filename, 1:line number, 2: column number, 3: preview snippet of source code`]},`symbol in {0} on line {1} at column {2}, {3}`,a.x(this.uri),this.range.startLineNumber,this.range.startColumn,e.value):a.Td(`aria.oneReference`,`symbol in {0} on line {1} at column {2}`,a.x(this.uri),this.range.startLineNumber,this.range.startColumn)}},Qr=class{constructor(e){this._modelReference=e}dispose(){this._modelReference.dispose()}preview(e,t=8){let n=this._modelReference.object.textEditorModel;if(!n)return;let{startLineNumber:r,startColumn:i,endLineNumber:o,endColumn:s}=e,c=new a.Ol(r,n.getWordUntilPosition({lineNumber:r,column:i-t}).startColumn,r,i),l=new a.Ol(o,s,o,1073741824),u=n.getValueInRange(c).replace(/^\s+/,``),d=n.getValueInRange(e),f=n.getValueInRange(l).replace(/\s+$/,``);return{value:u+d+f,highlight:{start:u.length,end:u.length+d.length}}}},$r=class{constructor(e,t){this.parent=e,this.uri=t,this.children=[],this._previews=new a.l}dispose(){a.nu(this._previews.values()),this._previews.clear()}getPreview(e){return this._previews.get(e.uri)}get ariaMessage(){let e=this.children.length;return e===1?a.Td(`aria.fileReferences.1`,`1 symbol in {0}, full path {1}`,a.x(this.uri),this.uri.fsPath):a.Td(`aria.fileReferences.N`,`{0} symbols in {1}, full path {2}`,e,a.x(this.uri),this.uri.fsPath)}resolve(e){return Xr(this,void 0,void 0,function*(){if(this._previews.size!==0)return this;for(let t of this.children)if(!this._previews.has(t.uri))try{let n=yield e.createModelReference(t.uri);this._previews.set(t.uri,new Qr(n))}catch(e){a.fu(e)}return this})}},N=class e{constructor(t,n){this.groups=[],this.references=[],this._onDidChangeReferenceRange=new a.Ul,this.onDidChangeReferenceRange=this._onDidChangeReferenceRange.event,this._links=t,this._title=n;let[r]=t;t.sort(e._compareReferences);let i;for(let n of t)if((!i||!a.w.isEqual(i.uri,n.uri,!0))&&(i=new $r(this,n.uri),this.groups.push(i)),i.children.length===0||e._compareReferences(n,i.children[i.children.length-1])!==0){let e=new Zr(r===n,i,n,e=>this._onDidChangeReferenceRange.fire(e));this.references.push(e),i.children.push(e)}}dispose(){a.nu(this.groups),this._onDidChangeReferenceRange.dispose(),this.groups.length=0}clone(){return new e(this._links,this._title)}get title(){return this._title}get isEmpty(){return this.groups.length===0}get ariaMessage(){return this.isEmpty?a.Td(`aria.result.0`,`No results found`):this.references.length===1?a.Td(`aria.result.1`,`Found 1 symbol in {0}`,this.references[0].uri.fsPath):this.groups.length===1?a.Td(`aria.result.n1`,`Found {0} symbols in {1}`,this.references.length,this.groups[0].uri.fsPath):a.Td(`aria.result.nm`,`Found {0} symbols in {1} files`,this.references.length,this.groups.length)}nextOrPreviousReference(e,t){let{parent:n}=e,r=n.children.indexOf(e),i=n.children.length,a=n.parent.groups.length;return a===1||t&&r+1<i||!t&&r>0?(r=t?(r+1)%i:(r+i-1)%i,n.children[r]):(r=n.parent.groups.indexOf(n),t?(r=(r+1)%a,n.parent.groups[r].children[0]):(r=(r+a-1)%a,n.parent.groups[r].children[n.parent.groups[r].children.length-1]))}nearestReference(e,t){let n=this.references.map((n,r)=>({idx:r,prefixLen:a.Dc(n.uri.toString(),e.toString()),offsetDist:Math.abs(n.range.startLineNumber-t.lineNumber)*100+Math.abs(n.range.startColumn-t.column)})).sort((e,t)=>e.prefixLen>t.prefixLen?-1:e.prefixLen<t.prefixLen?1:e.offsetDist<t.offsetDist?-1:e.offsetDist>t.offsetDist?1:0)[0];if(n)return this.references[n.idx]}referenceAt(e,t){for(let n of this.references)if(n.uri.toString()===e.toString()&&a.Ol.containsPosition(n.range,t))return n}firstReference(){for(let e of this.references)if(e.isProviderFirst)return e;return this.references[0]}static _compareReferences(e,t){return a.w.compare(e.uri,t.uri)||a.Ol.compareRangesUsingStarts(e.range,t.range)}},ei=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},ti=function(e,t){return function(n,r){t(n,r,e)}},ni=class{constructor(e){this._resolverService=e}hasChildren(e){return e instanceof N||e instanceof $r}getChildren(e){if(e instanceof N)return e.groups;if(e instanceof $r)return e.resolve(this._resolverService).then(e=>e.children);throw Error(`bad tree`)}};ni=ei([ti(0,a.Ra)],ni);var ri=class{getHeight(){return 23}getTemplateId(e){return e instanceof $r?si.id:li.id}},ii=class{constructor(e){this._keybindingService=e}getKeyboardNavigationLabel(e){if(e instanceof Zr){let t=e.parent.getPreview(e)?.preview(e.range);if(t)return t.value}return a.x(e.uri)}};ii=ei([ti(0,o.At)],ii);var ai=class{getId(e){return e instanceof Zr?e.id:e.uri}},oi=class extends a.Xl{constructor(e,t,n){super(),this._labelService=t;let r=document.createElement(`div`);r.classList.add(`reference-file`),this.file=this._register(new o.X(r,{supportHighlights:!0})),this.badge=new o.rt(a.Xa(r,a.za(`.count`))),this._register(o.mt(this.badge,n)),e.appendChild(r)}set(e,t){let n=a.C(e.uri);this.file.setLabel(this._labelService.getUriBasenameLabel(e.uri),this._labelService.getUriLabel(n,{relative:!0}),{title:this._labelService.getUriLabel(e.uri),matches:t});let r=e.children.length;this.badge.setCount(r),r>1?this.badge.setTitleFormat(a.Td(`referencesCount`,`{0} references`,r)):this.badge.setTitleFormat(a.Td(`referenceCount`,`{0} reference`,r))}};oi=ei([ti(1,o.Ot),ti(2,a.ga)],oi);var si=class e{constructor(t){this._instantiationService=t,this.templateId=e.id}renderTemplate(e){return this._instantiationService.createInstance(oi,e)}renderElement(e,t,n){n.set(e.element,o.in(e.filterData))}disposeTemplate(e){e.dispose()}};si.id=`FileReferencesRenderer`,si=ei([ti(0,a.fc)],si);var ci=class{constructor(e){this.label=new o.Z(e)}set(e,t){let n=e.parent.getPreview(e)?.preview(e.range);if(!n||!n.value)this.label.set(`${a.x(e.uri)}:${e.range.startLineNumber+1}:${e.range.startColumn+1}`);else{let{value:e,highlight:r}=n;t&&!o.tn.isDefault(t)?(this.label.element.classList.toggle(`referenceMatch`,!1),this.label.set(e,o.in(t))):(this.label.element.classList.toggle(`referenceMatch`,!0),this.label.set(e,[r]))}}},li=class e{constructor(){this.templateId=e.id}renderTemplate(e){return new ci(e)}renderElement(e,t,n){n.set(e.element,e.filterData)}disposeTemplate(){}};li.id=`OneReferenceRenderer`;var ui=class{getWidgetAriaLabel(){return a.Td(`treeAriaLabel`,`References`)}getAriaLabel(e){return e.ariaMessage}},di=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},fi=function(e,t){return function(n,r){t(n,r,e)}},pi=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},mi=class e{constructor(e,t){this._editor=e,this._model=t,this._decorations=new Map,this._decorationIgnoreSet=new Set,this._callOnDispose=new a.Zl,this._callOnModelChange=new a.Zl,this._callOnDispose.add(this._editor.onDidChangeModel(()=>this._onModelChanged())),this._onModelChanged()}dispose(){this._callOnModelChange.dispose(),this._callOnDispose.dispose(),this.removeDecorations()}_onModelChanged(){this._callOnModelChange.clear();let e=this._editor.getModel();if(e){for(let t of this._model.references)if(t.uri.toString()===e.uri.toString()){this._addDecorations(t.parent);return}}}_addDecorations(t){if(!this._editor.hasModel())return;this._callOnModelChange.add(this._editor.getModel().onDidChangeDecorations(()=>this._onDecorationChanged()));let n=[],r=[];for(let i=0,a=t.children.length;i<a;i++){let a=t.children[i];this._decorationIgnoreSet.has(a.id)||a.uri.toString()===this._editor.getModel().uri.toString()&&(n.push({range:a.range,options:e.DecorationOptions}),r.push(i))}this._editor.changeDecorations(e=>{let i=e.deltaDecorations([],n);for(let e=0;e<i.length;e++)this._decorations.set(i[e],t.children[r[e]])})}_onDecorationChanged(){let e=[],t=this._editor.getModel();if(t){for(let[n,r]of this._decorations){let i=t.getDecorationRange(n);if(!i)continue;let o=!1;a.Ol.equalsRange(i,r.range)||((a.Ol.spansMultipleLines(i)||r.range.endColumn-r.range.startColumn!==i.endColumn-i.startColumn)&&(o=!0),o?(this._decorationIgnoreSet.add(r.id),e.push(n)):r.range=i)}for(let t=0,n=e.length;t<n;t++)this._decorations.delete(e[t]);this._editor.removeDecorations(e)}}removeDecorations(){this._editor.removeDecorations([...this._decorations.keys()]),this._decorations.clear()}};mi.DecorationOptions=a.f.register({description:`reference-decoration`,stickiness:1,className:`reference-decoration`});var hi=class{constructor(){this.ratio=.7,this.heightInLines=18}static fromJSON(e){let t,n;try{let r=JSON.parse(e);t=r.ratio,n=r.heightInLines}catch{}return{ratio:t||.7,heightInLines:n||18}}},gi=class extends o.L{},_i=class extends Ur{constructor(e,t,n,r,i,o,s,c,l,u,d,f){super(e,{showFrame:!1,showArrow:!0,isResizeable:!0,isAccessible:!0,supportOnTitleClick:!0},o),this._defaultTreeKeyboardSupport=t,this.layoutData=n,this._textModelResolverService=i,this._instantiationService=o,this._peekViewService=s,this._uriLabel=c,this._undoRedoService=l,this._keybindingService=u,this._languageService=d,this._languageConfigurationService=f,this._disposeOnNewModel=new a.Zl,this._callOnDispose=new a.Zl,this._onDidSelectReference=new a.Ul,this.onDidSelectReference=this._onDidSelectReference.event,this._dim=new a.Ba(0,0),this._applyTheme(r.getColorTheme()),this._callOnDispose.add(r.onDidColorThemeChange(this._applyTheme.bind(this))),this._peekViewService.addExclusiveWidget(e,this),this.create()}dispose(){this.setModel(void 0),this._callOnDispose.dispose(),this._disposeOnNewModel.dispose(),a.nu(this._preview),a.nu(this._previewNotAvailableMessage),a.nu(this._tree),a.nu(this._previewModelReference),this._splitView.dispose(),super.dispose()}_applyTheme(e){let t=e.getColor(qr)||a.Bi.transparent;this.style({arrowColor:t,frameColor:t,headerBackgroundColor:e.getColor(Wr)||a.Bi.transparent,primaryHeadingColor:e.getColor(Gr),secondaryHeadingColor:e.getColor(Kr)})}show(e){super.show(e,this.layoutData.heightInLines||18)}focusOnReferenceTree(){this._tree.domFocus()}focusOnPreviewEditor(){this._preview.focus()}isPreviewEditorFocused(){return this._preview.hasTextFocus()}_onTitleClick(e){this._preview&&this._preview.getModel()&&this._onDidSelectReference.fire({element:this._getFocusedReference(),kind:e.ctrlKey||e.metaKey||e.altKey?`side`:`open`,source:`title`})}_fillBody(e){this.setCssClass(`reference-zone-widget`),this._messageContainer=a.Xa(e,a.za(`div.messages`)),a.vo(this._messageContainer),this._splitView=new o.J(e,{orientation:1}),this._previewContainer=a.Xa(e,a.za(`div.preview.inline`)),this._preview=this._instantiationService.createInstance(gr,this._previewContainer,{scrollBeyondLastLine:!1,scrollbar:{verticalScrollbarSize:14,horizontal:`auto`,useShadows:!0,verticalHasArrows:!1,horizontalHasArrows:!1,alwaysConsumeMouseWheel:!1},overviewRulerLanes:2,fixedOverflowWidgets:!0,minimap:{enabled:!1}},this.editor),a.vo(this._previewContainer),this._previewNotAvailableMessage=new a.p(a.Td(`missingPreviewMessage`,`no preview available`),a.Rs,a.p.DEFAULT_CREATION_OPTIONS,null,this._undoRedoService,this._languageService,this._languageConfigurationService),this._treeContainer=a.Xa(e,a.za(`div.ref-tree.inline`));let t={keyboardSupport:this._defaultTreeKeyboardSupport,accessibilityProvider:new ui,keyboardNavigationLabelProvider:this._instantiationService.createInstance(ii),identityProvider:new ai,openOnSingleClick:!0,selectionNavigation:!0,overrideStyles:{listBackground:Jr}};this._defaultTreeKeyboardSupport&&this._callOnDispose.add(a.Ja(this._treeContainer,`keydown`,e=>{e.equals(9)&&(this._keybindingService.dispatchEvent(e,e.target),e.stopPropagation())},!0)),this._tree=this._instantiationService.createInstance(gi,`ReferencesWidget`,this._treeContainer,new ri,[this._instantiationService.createInstance(si),this._instantiationService.createInstance(li)],this._instantiationService.createInstance(ni),t),this._splitView.addView({onDidChange:a.Wl.None,element:this._previewContainer,minimumSize:200,maximumSize:Number.MAX_VALUE,layout:e=>{this._preview.layout({height:this._dim.height,width:e})}},o.q.Distribute),this._splitView.addView({onDidChange:a.Wl.None,element:this._treeContainer,minimumSize:100,maximumSize:Number.MAX_VALUE,layout:e=>{this._treeContainer.style.height=`${this._dim.height}px`,this._treeContainer.style.width=`${e}px`,this._tree.layout(this._dim.height,e)}},o.q.Distribute),this._disposables.add(this._splitView.onDidSashChange(()=>{this._dim.width&&(this.layoutData.ratio=this._splitView.getViewSize(0)/this._dim.width)},void 0));let n=(e,t)=>{e instanceof Zr&&(t===`show`&&this._revealReference(e,!1),this._onDidSelectReference.fire({element:e,kind:t,source:`tree`}))};this._tree.onDidOpen(e=>{e.sideBySide?n(e.element,`side`):e.editorOptions.pinned?n(e.element,`goto`):n(e.element,`show`)}),a.vo(this._treeContainer)}_onWidth(e){this._dim&&this._doLayoutBody(this._dim.height,e)}_doLayoutBody(e,t){super._doLayoutBody(e,t),this._dim=new a.Ba(t,e),this.layoutData.heightInLines=this._viewZone?this._viewZone.heightInLines:this.layoutData.heightInLines,this._splitView.layout(t),this._splitView.resizeView(0,t*this.layoutData.ratio)}setSelection(e){return this._revealReference(e,!0).then(()=>{this._model&&(this._tree.setSelection([e]),this._tree.setFocus([e]))})}setModel(e){return this._disposeOnNewModel.clear(),this._model=e,this._model?this._onNewModel():Promise.resolve()}_onNewModel(){return this._model?this._model.isEmpty?(this.setTitle(``),this._messageContainer.innerText=a.Td(`noResults`,`No results`),a.jo(this._messageContainer),Promise.resolve(void 0)):(a.vo(this._messageContainer),this._decorationsManager=new mi(this._preview,this._model),this._disposeOnNewModel.add(this._decorationsManager),this._disposeOnNewModel.add(this._model.onDidChangeReferenceRange(e=>this._tree.rerender(e))),this._disposeOnNewModel.add(this._preview.onMouseDown(e=>{let{event:t,target:n}=e;if(t.detail!==2)return;let r=this._getFocusedReference();r&&this._onDidSelectReference.fire({element:{uri:r.uri,range:n.range},kind:t.ctrlKey||t.metaKey||t.altKey?`side`:`open`,source:`editor`})})),this.container.classList.add(`results-loaded`),a.jo(this._treeContainer),a.jo(this._previewContainer),this._splitView.layout(this._dim.width),this.focusOnReferenceTree(),this._tree.setInput(this._model.groups.length===1?this._model.groups[0]:this._model)):Promise.resolve(void 0)}_getFocusedReference(){let[e]=this._tree.getFocus();if(e instanceof Zr)return e;if(e instanceof $r&&e.children.length>0)return e.children[0]}revealReference(e){return pi(this,void 0,void 0,function*(){yield this._revealReference(e,!1),this._onDidSelectReference.fire({element:e,kind:`goto`,source:`tree`})})}_revealReference(e,t){return pi(this,void 0,void 0,function*(){if(this._revealedReference===e)return;this._revealedReference=e,e.uri.scheme===a.Io.inMemory?this.setTitle(a.Td(`peekView.alternateTitle`,`References`)):this.setTitle(a.S(e.uri),this._uriLabel.getUriLabel(a.C(e.uri)));let n=this._textModelResolverService.createModelReference(e.uri);this._tree.getInput()===e.parent?this._tree.reveal(e):(t&&this._tree.reveal(e.parent),yield this._tree.expand(e.parent),this._tree.reveal(e));let r=yield n;if(!this._model){r.dispose();return}a.nu(this._previewModelReference);let i=r.object;if(i){let t=this._preview.getModel()===i.textEditorModel?0:1,n=a.Ol.lift(e.range).collapseToStart();this._previewModelReference=r,this._preview.setModel(i.textEditorModel),this._preview.setSelection(n),this._preview.revealRangeInCenter(n,t)}else this._preview.setModel(this._previewNotAvailableMessage),r.dispose()})}};_i=di([fi(3,a.ga),fi(4,a.Ra),fi(5,a.fc),fi(6,zr),fi(7,o.Ot),fi(8,a.m),fi(9,o.At),fi(10,a.Js),fi(11,a.Ps)],_i);var vi=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},yi=function(e,t){return function(n,r){t(n,r,e)}},bi=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},xi=new a.Da(`referenceSearchVisible`,!1,a.Td(`referenceSearchVisible`,`Whether reference peek is visible, like 'Peek References' or 'Peek Definition'`)),Si=class e{constructor(e,t,n,r,i,o,s,c){this._defaultTreeKeyboardSupport=e,this._editor=t,this._editorService=r,this._notificationService=i,this._instantiationService=o,this._storageService=s,this._configurationService=c,this._disposables=new a.Zl,this._requestIdPool=0,this._ignoreModelChangeEvent=!1,this._referenceSearchVisible=xi.bindTo(n)}static get(t){return t.getContribution(e.ID)}dispose(){var e,t;this._referenceSearchVisible.reset(),this._disposables.dispose(),(e=this._widget)==null||e.dispose(),(t=this._model)==null||t.dispose(),this._widget=void 0,this._model=void 0}toggleWidget(e,t,n){let r;if(this._widget&&(r=this._widget.position),this.closeWidget(),r&&e.containsPosition(r))return;this._peekMode=n,this._referenceSearchVisible.set(!0),this._disposables.add(this._editor.onDidChangeModelLanguage(()=>{this.closeWidget()})),this._disposables.add(this._editor.onDidChangeModel(()=>{this._ignoreModelChangeEvent||this.closeWidget()}));let i=`peekViewLayout`,o=hi.fromJSON(this._storageService.get(i,0,`{}`));this._widget=this._instantiationService.createInstance(_i,this._editor,this._defaultTreeKeyboardSupport,o),this._widget.setTitle(a.Td(`labelLoading`,`Loading...`)),this._widget.show(e),this._disposables.add(this._widget.onDidClose(()=>{t.cancel(),this._widget&&=(this._storageService.store(i,JSON.stringify(this._widget.layoutData),0,1),void 0),this.closeWidget()})),this._disposables.add(this._widget.onDidSelectReference(e=>{let{element:t,kind:r}=e;if(t)switch(r){case`open`:(e.source!==`editor`||!this._configurationService.getValue(`editor.stablePeek`))&&this.openReference(t,!1,!1);break;case`side`:this.openReference(t,!0,!1);break;case`goto`:n?this._gotoReference(t):this.openReference(t,!1,!0);break}}));let s=++this._requestIdPool;t.then(t=>{var n;if(s!==this._requestIdPool||!this._widget){t.dispose();return}return(n=this._model)==null||n.dispose(),this._model=t,this._widget.setModel(this._model).then(()=>{if(this._widget&&this._model&&this._editor.hasModel()){this._model.isEmpty?this._widget.setMetaTitle(``):this._widget.setMetaTitle(a.Td(`metaTitle.N`,`{0} ({1})`,this._model.title,this._model.references.length));let t=this._editor.getModel().uri,n=new a.kl(e.startLineNumber,e.startColumn),r=this._model.nearestReference(t,n);if(r)return this._widget.setSelection(r).then(()=>{this._widget&&this._editor.getOption(78)===`editor`&&this._widget.focusOnPreviewEditor()})}})},e=>{this._notificationService.error(e)})}changeFocusBetweenPreviewAndReferences(){this._widget&&(this._widget.isPreviewEditorFocused()?this._widget.focusOnReferenceTree():this._widget.focusOnPreviewEditor())}goToNextOrPreviousReference(e){return bi(this,void 0,void 0,function*(){if(!this._editor.hasModel()||!this._model||!this._widget)return;let t=this._widget.position;if(!t)return;let n=this._model.nearestReference(this._editor.getModel().uri,t);if(!n)return;let r=this._model.nextOrPreviousReference(n,e),i=this._editor.hasTextFocus(),a=this._widget.isPreviewEditorFocused();yield this._widget.setSelection(r),yield this._gotoReference(r),i?this._editor.focus():this._widget&&a&&this._widget.focusOnPreviewEditor()})}revealReference(e){return bi(this,void 0,void 0,function*(){!this._editor.hasModel()||!this._model||!this._widget||(yield this._widget.revealReference(e))})}closeWidget(e=!0){var t,n;(t=this._widget)==null||t.dispose(),(n=this._model)==null||n.dispose(),this._referenceSearchVisible.reset(),this._disposables.clear(),this._widget=void 0,this._model=void 0,e&&this._editor.focus(),this._requestIdPool+=1}_gotoReference(t){this._widget&&this._widget.hide(),this._ignoreModelChangeEvent=!0;let n=a.Ol.lift(t.range).collapseToStart();return this._editorService.openCodeEditor({resource:t.uri,options:{selection:n,selectionSource:`code.jump`}},this._editor).then(t=>{if(this._ignoreModelChangeEvent=!1,!t||!this._widget){this.closeWidget();return}if(this._editor===t)this._widget.show(n),this._widget.focusOnReferenceTree();else{let r=e.get(t),i=this._model.clone();this.closeWidget(),t.focus(),r?.toggleWidget(n,a.Cs(e=>Promise.resolve(i)),this._peekMode??!1)}},e=>{this._ignoreModelChangeEvent=!1,a.fu(e)})}openReference(e,t,n){t||this.closeWidget();let{uri:r,range:i}=e;this._editorService.openCodeEditor({resource:r,options:{selection:i,selectionSource:`code.jump`,pinned:n}},this._editor,t)}};Si.ID=`editor.contrib.referencesController`,Si=vi([yi(2,a.Ea),yi(3,a.dc),yi(4,o.vn),yi(5,a.fc),yi(6,o.O),yi(7,a.Ys)],Si);function Ci(e,t){let n=Vr(e);if(!n)return;let r=Si.get(n);r&&t(r)}a.oa.registerCommandAndKeybindingRule({id:`togglePeekWidgetFocus`,weight:100,primary:a.Rl(2089,60),when:a.Ta.or(xi,M.inPeekEditor),handler(e){Ci(e,e=>{e.changeFocusBetweenPreviewAndReferences()})}}),a.oa.registerCommandAndKeybindingRule({id:`goToNextReference`,weight:90,primary:62,secondary:[70],when:a.Ta.or(xi,M.inPeekEditor),handler(e){Ci(e,e=>{e.goToNextOrPreviousReference(!0)})}}),a.oa.registerCommandAndKeybindingRule({id:`goToPreviousReference`,weight:90,primary:1086,secondary:[1094],when:a.Ta.or(xi,M.inPeekEditor),handler(e){Ci(e,e=>{e.goToNextOrPreviousReference(!1)})}}),a.ja.registerCommandAlias(`goToNextReferenceFromEmbeddedEditor`,`goToNextReference`),a.ja.registerCommandAlias(`goToPreviousReferenceFromEmbeddedEditor`,`goToPreviousReference`),a.ja.registerCommandAlias(`closeReferenceSearchEditor`,`closeReferenceSearch`),a.ja.registerCommand(`closeReferenceSearch`,e=>Ci(e,e=>e.closeWidget())),a.oa.registerKeybindingRule({id:`closeReferenceSearch`,weight:-1,primary:9,secondary:[1033],when:a.Ta.and(M.inPeekEditor,a.Ta.not(`config.editor.stablePeek`))}),a.oa.registerKeybindingRule({id:`closeReferenceSearch`,weight:250,primary:9,secondary:[1033],when:a.Ta.and(xi,a.Ta.not(`config.editor.stablePeek`))}),a.oa.registerCommandAndKeybindingRule({id:`revealReference`,weight:200,primary:3,mac:{primary:3,secondary:[2066]},when:a.Ta.and(xi,o.R,o.z.negate(),o.B.negate()),handler(e){let t=e.get(o.I).lastFocusedList?.getFocus();Array.isArray(t)&&t[0]instanceof Zr&&Ci(e,e=>e.revealReference(t[0]))}}),a.oa.registerCommandAndKeybindingRule({id:`openReferenceToSide`,weight:100,primary:2051,mac:{primary:259},when:a.Ta.and(xi,o.R,o.z.negate(),o.B.negate()),handler(e){let t=e.get(o.I).lastFocusedList?.getFocus();Array.isArray(t)&&t[0]instanceof Zr&&Ci(e,e=>e.openReference(t[0],!0,!0))}}),a.ja.registerCommand(`openReference`,e=>{let t=e.get(o.I).lastFocusedList?.getFocus();Array.isArray(t)&&t[0]instanceof Zr&&Ci(e,e=>e.openReference(t[0],!1,!0))});var wi=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Ti=function(e,t){return function(n,r){t(n,r,e)}},Ei=new a.Da(`hasSymbols`,!1,a.Td(`hasSymbols`,`Whether there are symbol locations that can be navigated via keyboard-only.`)),Di=a.mc(`ISymbolNavigationService`),Oi=class{constructor(e,t,n,r){this._editorService=t,this._notificationService=n,this._keybindingService=r,this._currentModel=void 0,this._currentIdx=-1,this._ignoreEditorChange=!1,this._ctxHasSymbols=Ei.bindTo(e)}reset(){var e,t;this._ctxHasSymbols.reset(),(e=this._currentState)==null||e.dispose(),(t=this._currentMessage)==null||t.dispose(),this._currentModel=void 0,this._currentIdx=-1}put(e){let t=e.parent.parent;if(t.references.length<=1){this.reset();return}this._currentModel=t,this._currentIdx=t.references.indexOf(e),this._ctxHasSymbols.set(!0),this._showMessage();let n=new ki(this._editorService);this._currentState=a.tu(n,n.onDidChange(e=>{if(this._ignoreEditorChange)return;let n=this._editorService.getActiveCodeEditor();if(!n)return;let r=n.getModel(),i=n.getPosition();if(!r||!i)return;let o=!1,s=!1;for(let e of t.references)if(a.E(e.uri,r.uri))o=!0,s||=a.Ol.containsPosition(e.range,i);else if(o)break;(!o||!s)&&this.reset()}))}revealNext(e){if(!this._currentModel)return Promise.resolve();this._currentIdx+=1,this._currentIdx%=this._currentModel.references.length;let t=this._currentModel.references[this._currentIdx];return this._showMessage(),this._ignoreEditorChange=!0,this._editorService.openCodeEditor({resource:t.uri,options:{selection:a.Ol.collapseToStart(t.range),selectionRevealType:3}},e).finally(()=>{this._ignoreEditorChange=!1})}_showMessage(){var e;(e=this._currentMessage)==null||e.dispose();let t=this._keybindingService.lookupKeybinding(`editor.gotoNextSymbolFromResult`),n=t?a.Td(`location.kb`,`Symbol {0} of {1}, {2} for next`,this._currentIdx+1,this._currentModel.references.length,t.getLabel()):a.Td(`location`,`Symbol {0} of {1}`,this._currentIdx+1,this._currentModel.references.length);this._currentMessage=this._notificationService.status(n)}};Oi=wi([Ti(0,a.Ea),Ti(1,a.dc),Ti(2,o.vn),Ti(3,o.At)],Oi),a.Ks(Di,Oi,!0),a.ea(new class extends a.Ki{constructor(){super({id:`editor.gotoNextSymbolFromResult`,precondition:Ei,kbOpts:{weight:100,primary:70}})}runEditorCommand(e,t){return e.get(Di).revealNext(t)}}),a.oa.registerCommandAndKeybindingRule({id:`editor.gotoNextSymbolFromResult.cancel`,weight:100,when:Ei,primary:9,handler(e){e.get(Di).reset()}});var ki=class{constructor(e){this._listener=new Map,this._disposables=new a.Zl,this._onDidChange=new a.Ul,this.onDidChange=this._onDidChange.event,this._disposables.add(e.onCodeEditorRemove(this._onDidRemoveEditor,this)),this._disposables.add(e.onCodeEditorAdd(this._onDidAddEditor,this)),e.listCodeEditors().forEach(this._onDidAddEditor,this)}dispose(){this._disposables.dispose(),this._onDidChange.dispose(),a.nu(this._listener.values())}_onDidAddEditor(e){this._listener.set(e,a.tu(e.onDidChangeCursorPosition(t=>this._onDidChange.fire({editor:e})),e.onDidChangeModelContent(t=>this._onDidChange.fire({editor:e}))))}_onDidRemoveEditor(e){var t;(t=this._listener.get(e))==null||t.dispose(),this._listener.delete(e)}};ki=wi([Ti(0,a.dc)],ki);var Ai=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};function ji(e,t,n,r){let i=n.ordered(e).map(n=>Promise.resolve(r(n,e,t)).then(void 0,e=>{a.pu(e)}));return Promise.all(i).then(e=>{let t=[];for(let n of e)Array.isArray(n)?t.push(...n):n&&t.push(n);return t})}function Mi(e,t,n,r){return ji(t,n,e,(e,t,n)=>e.provideDefinition(t,n,r))}function Ni(e,t,n,r){return ji(t,n,e,(e,t,n)=>e.provideDeclaration(t,n,r))}function Pi(e,t,n,r){return ji(t,n,e,(e,t,n)=>e.provideImplementation(t,n,r))}function Fi(e,t,n,r){return ji(t,n,e,(e,t,n)=>e.provideTypeDefinition(t,n,r))}function Ii(e,t,n,r,i){return ji(t,n,e,(e,t,n)=>Ai(this,void 0,void 0,function*(){let a=yield e.provideReferences(t,n,{includeDeclaration:!0},i);if(!r||!a||a.length!==2)return a;let o=yield e.provideReferences(t,n,{includeDeclaration:!1},i);return o&&o.length===1?o:a}))}function Li(e){return Ai(this,void 0,void 0,function*(){let t=new N(yield e(),``),n=t.references.map(e=>e.link);return t.dispose(),n})}a.ra(`_executeDefinitionProvider`,(e,t,n)=>{let r=Mi(e.get(a.Zo).definitionProvider,t,n,a.Bl.None);return Li(()=>r)}),a.ra(`_executeTypeDefinitionProvider`,(e,t,n)=>{let r=Fi(e.get(a.Zo).typeDefinitionProvider,t,n,a.Bl.None);return Li(()=>r)}),a.ra(`_executeDeclarationProvider`,(e,t,n)=>{let r=Ni(e.get(a.Zo).declarationProvider,t,n,a.Bl.None);return Li(()=>r)}),a.ra(`_executeReferenceProvider`,(e,t,n)=>{let r=Ii(e.get(a.Zo).referenceProvider,t,n,!1,a.Bl.None);return Li(()=>r)}),a.ra(`_executeImplementationProvider`,(e,t,n)=>{let r=Pi(e.get(a.Zo).implementationProvider,t,n,a.Bl.None);return Li(()=>r)});var P=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Ri,zi,Bi,Vi,Hi,Ui,Wi,Gi;a.da.appendMenuItem(a.ca.EditorContext,{submenu:a.ca.EditorContextPeek,title:a.Td(`peek.submenu`,`Peek`),group:`navigation`,order:100});var Ki=new Set;function F(e){let t=new e;return a.na(t),Ki.add(t.id),t}var qi=class e{constructor(e,t){this.model=e,this.position=t}static is(t){return!t||typeof t!=`object`?!1:!!(t instanceof e||a.kl.isIPosition(t.position)&&t.model)}},Ji=class e extends a.Gi{constructor(e,t){super(t),this.configuration=e}run(t,n,r){if(!n.hasModel())return Promise.resolve(void 0);let i=t.get(o.vn),s=t.get(a.dc),c=t.get(o.It),l=t.get(Di),u=t.get(a.Zo),d=n.getModel(),f=n.getPosition(),p=qi.is(r)?r:new qi(d,f),m=new o.T(n,5),h=a.Ds(this._getLocationModel(u,p.model,p.position,m.token),m.token).then(t=>P(this,void 0,void 0,function*(){var r;if(!t||m.token.isCancellationRequested)return;o.Zn(t.ariaMessage);let i;if(t.referenceAt(d.uri,f)){let t=this._getAlternativeCommand(n);!e._activeAlternativeCommands.has(t)&&Ki.has(t)&&(i=n.getAction(t))}let a=t.references.length;if(a===0){if(!this.configuration.muteMessage){let e=d.getWordAtPosition(f);(r=k.get(n))==null||r.showMessage(this._getNoResultFoundMessage(e),f)}}else if(a===1&&i)e._activeAlternativeCommands.add(this.id),i.run().finally(()=>{e._activeAlternativeCommands.delete(this.id)});else return this._onResult(s,l,n,t)}),e=>{i.error(e)}).finally(()=>{m.dispose()});return c.showWhile(h,250),h}_onResult(e,t,n,r){return P(this,void 0,void 0,function*(){let i=this._getGoToPreference(n);if(!(n instanceof gr)&&(this.configuration.openInPeek||i===`peek`&&r.references.length>1))this._openInPeek(n,r);else{let a=r.firstReference(),o=r.references.length>1&&i===`gotoAndPeek`,s=yield this._openReference(n,e,a,this.configuration.openToSide,!o);o&&s?this._openInPeek(s,r):r.dispose(),i===`goto`&&t.put(a)}})}_openReference(e,t,n,r,i){return P(this,void 0,void 0,function*(){let o;if(a.Cl(n)&&(o=n.targetSelectionRange),o||=n.range,!o)return;let s=yield t.openCodeEditor({resource:n.uri,options:{selection:a.Ol.collapseToStart(o),selectionRevealType:3,selectionSource:`code.jump`}},e,r);if(s){if(i){let e=s.getModel(),t=s.createDecorationsCollection([{range:o,options:{description:`symbol-navigate-action-highlight`,className:`symbolHighlight`}}]);setTimeout(()=>{s.getModel()===e&&t.clear()},350)}return s}})}_openInPeek(e,t){let n=Si.get(e);n&&e.hasModel()?n.toggleWidget(e.getSelection(),a.Cs(e=>Promise.resolve(t)),this.configuration.openInPeek):t.dispose()}};Ji._activeAlternativeCommands=new Set;var Yi=class extends Ji{_getLocationModel(e,t,n,r){return P(this,void 0,void 0,function*(){return new N(yield Mi(e.definitionProvider,t,n,r),a.Td(`def.title`,`Definitions`))})}_getNoResultFoundMessage(e){return e&&e.word?a.Td(`noResultWord`,`No definition found for '{0}'`,e.word):a.Td(`generic.noResults`,`No definition found`)}_getAlternativeCommand(e){return e.getOption(52).alternativeDefinitionCommand}_getGoToPreference(e){return e.getOption(52).multipleDefinitions}},Xi=a.Sd&&!a.Sc()?2118:70;F((Ri=class e extends Yi{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:e.id,label:a.Td(`actions.goToDecl.label`,`Go to Definition`),alias:`Go to Definition`,precondition:a.Ta.and(o.kn.hasDefinitionProvider,o.kn.isInWalkThroughSnippet.toNegated()),kbOpts:{kbExpr:o.kn.editorTextFocus,primary:Xi,weight:100},contextMenuOpts:{group:`navigation`,order:1.1}}),a.ja.registerCommandAlias(`editor.action.goToDeclaration`,e.id)}},Ri.id=`editor.action.revealDefinition`,Ri)),F((zi=class e extends Yi{constructor(){super({openToSide:!0,openInPeek:!1,muteMessage:!1},{id:e.id,label:a.Td(`actions.goToDeclToSide.label`,`Open Definition to the Side`),alias:`Open Definition to the Side`,precondition:a.Ta.and(o.kn.hasDefinitionProvider,o.kn.isInWalkThroughSnippet.toNegated()),kbOpts:{kbExpr:o.kn.editorTextFocus,primary:a.Rl(2089,Xi),weight:100}}),a.ja.registerCommandAlias(`editor.action.openDeclarationToTheSide`,e.id)}},zi.id=`editor.action.revealDefinitionAside`,zi)),F((Bi=class e extends Yi{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:e.id,label:a.Td(`actions.previewDecl.label`,`Peek Definition`),alias:`Peek Definition`,precondition:a.Ta.and(o.kn.hasDefinitionProvider,M.notInPeekEditor,o.kn.isInWalkThroughSnippet.toNegated()),kbOpts:{kbExpr:o.kn.editorTextFocus,primary:582,linux:{primary:3140},weight:100},contextMenuOpts:{menuId:a.ca.EditorContextPeek,group:`peek`,order:2}}),a.ja.registerCommandAlias(`editor.action.previewDeclaration`,e.id)}},Bi.id=`editor.action.peekDefinition`,Bi));var Zi=class extends Ji{_getLocationModel(e,t,n,r){return P(this,void 0,void 0,function*(){return new N(yield Ni(e.declarationProvider,t,n,r),a.Td(`decl.title`,`Declarations`))})}_getNoResultFoundMessage(e){return e&&e.word?a.Td(`decl.noResultWord`,`No declaration found for '{0}'`,e.word):a.Td(`decl.generic.noResults`,`No declaration found`)}_getAlternativeCommand(e){return e.getOption(52).alternativeDeclarationCommand}_getGoToPreference(e){return e.getOption(52).multipleDeclarations}};F((Vi=class e extends Zi{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:e.id,label:a.Td(`actions.goToDeclaration.label`,`Go to Declaration`),alias:`Go to Declaration`,precondition:a.Ta.and(o.kn.hasDeclarationProvider,o.kn.isInWalkThroughSnippet.toNegated()),contextMenuOpts:{group:`navigation`,order:1.3}})}_getNoResultFoundMessage(e){return e&&e.word?a.Td(`decl.noResultWord`,`No declaration found for '{0}'`,e.word):a.Td(`decl.generic.noResults`,`No declaration found`)}},Vi.id=`editor.action.revealDeclaration`,Vi)),F(class extends Zi{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:`editor.action.peekDeclaration`,label:a.Td(`actions.peekDecl.label`,`Peek Declaration`),alias:`Peek Declaration`,precondition:a.Ta.and(o.kn.hasDeclarationProvider,M.notInPeekEditor,o.kn.isInWalkThroughSnippet.toNegated()),contextMenuOpts:{menuId:a.ca.EditorContextPeek,group:`peek`,order:3}})}});var Qi=class extends Ji{_getLocationModel(e,t,n,r){return P(this,void 0,void 0,function*(){return new N(yield Fi(e.typeDefinitionProvider,t,n,r),a.Td(`typedef.title`,`Type Definitions`))})}_getNoResultFoundMessage(e){return e&&e.word?a.Td(`goToTypeDefinition.noResultWord`,`No type definition found for '{0}'`,e.word):a.Td(`goToTypeDefinition.generic.noResults`,`No type definition found`)}_getAlternativeCommand(e){return e.getOption(52).alternativeTypeDefinitionCommand}_getGoToPreference(e){return e.getOption(52).multipleTypeDefinitions}};F((Hi=class e extends Qi{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:e.ID,label:a.Td(`actions.goToTypeDefinition.label`,`Go to Type Definition`),alias:`Go to Type Definition`,precondition:a.Ta.and(o.kn.hasTypeDefinitionProvider,o.kn.isInWalkThroughSnippet.toNegated()),kbOpts:{kbExpr:o.kn.editorTextFocus,primary:0,weight:100},contextMenuOpts:{group:`navigation`,order:1.4}})}},Hi.ID=`editor.action.goToTypeDefinition`,Hi)),F((Ui=class e extends Qi{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:e.ID,label:a.Td(`actions.peekTypeDefinition.label`,`Peek Type Definition`),alias:`Peek Type Definition`,precondition:a.Ta.and(o.kn.hasTypeDefinitionProvider,M.notInPeekEditor,o.kn.isInWalkThroughSnippet.toNegated()),contextMenuOpts:{menuId:a.ca.EditorContextPeek,group:`peek`,order:4}})}},Ui.ID=`editor.action.peekTypeDefinition`,Ui));var $i=class extends Ji{_getLocationModel(e,t,n,r){return P(this,void 0,void 0,function*(){return new N(yield Pi(e.implementationProvider,t,n,r),a.Td(`impl.title`,`Implementations`))})}_getNoResultFoundMessage(e){return e&&e.word?a.Td(`goToImplementation.noResultWord`,`No implementation found for '{0}'`,e.word):a.Td(`goToImplementation.generic.noResults`,`No implementation found`)}_getAlternativeCommand(e){return e.getOption(52).alternativeImplementationCommand}_getGoToPreference(e){return e.getOption(52).multipleImplementations}};F((Wi=class e extends $i{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:e.ID,label:a.Td(`actions.goToImplementation.label`,`Go to Implementations`),alias:`Go to Implementations`,precondition:a.Ta.and(o.kn.hasImplementationProvider,o.kn.isInWalkThroughSnippet.toNegated()),kbOpts:{kbExpr:o.kn.editorTextFocus,primary:2118,weight:100},contextMenuOpts:{group:`navigation`,order:1.45}})}},Wi.ID=`editor.action.goToImplementation`,Wi)),F((Gi=class e extends $i{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:e.ID,label:a.Td(`actions.peekImplementation.label`,`Peek Implementations`),alias:`Peek Implementations`,precondition:a.Ta.and(o.kn.hasImplementationProvider,M.notInPeekEditor,o.kn.isInWalkThroughSnippet.toNegated()),kbOpts:{kbExpr:o.kn.editorTextFocus,primary:3142,weight:100},contextMenuOpts:{menuId:a.ca.EditorContextPeek,group:`peek`,order:5}})}},Gi.ID=`editor.action.peekImplementation`,Gi));var ea=class extends Ji{_getNoResultFoundMessage(e){return e?a.Td(`references.no`,`No references found for '{0}'`,e.word):a.Td(`references.noGeneric`,`No references found`)}_getAlternativeCommand(e){return e.getOption(52).alternativeReferenceCommand}_getGoToPreference(e){return e.getOption(52).multipleReferences}};F(class extends ea{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:`editor.action.goToReferences`,label:a.Td(`goToReferences.label`,`Go to References`),alias:`Go to References`,precondition:a.Ta.and(o.kn.hasReferenceProvider,M.notInPeekEditor,o.kn.isInWalkThroughSnippet.toNegated()),kbOpts:{kbExpr:o.kn.editorTextFocus,primary:1094,weight:100},contextMenuOpts:{group:`navigation`,order:1.45}})}_getLocationModel(e,t,n,r){return P(this,void 0,void 0,function*(){return new N(yield Ii(e.referenceProvider,t,n,!0,r),a.Td(`ref.title`,`References`))})}}),F(class extends ea{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:`editor.action.referenceSearch.trigger`,label:a.Td(`references.action.label`,`Peek References`),alias:`Peek References`,precondition:a.Ta.and(o.kn.hasReferenceProvider,M.notInPeekEditor,o.kn.isInWalkThroughSnippet.toNegated()),contextMenuOpts:{menuId:a.ca.EditorContextPeek,group:`peek`,order:6}})}_getLocationModel(e,t,n,r){return P(this,void 0,void 0,function*(){return new N(yield Ii(e.referenceProvider,t,n,!1,r),a.Td(`ref.title`,`References`))})}});var ta=class extends Ji{constructor(e,t,n){super(e,{id:`editor.action.goToLocation`,label:a.Td(`label.generic`,`Go to Any Symbol`),alias:`Go to Any Symbol`,precondition:a.Ta.and(M.notInPeekEditor,o.kn.isInWalkThroughSnippet.toNegated())}),this._references=t,this._gotoMultipleBehaviour=n}_getLocationModel(e,t,n,r){return P(this,void 0,void 0,function*(){return new N(this._references,a.Td(`generic.title`,`Locations`))})}_getNoResultFoundMessage(e){return e&&a.Td(`generic.noResult`,`No results for '{0}'`,e.word)||``}_getGoToPreference(e){return this._gotoMultipleBehaviour??e.getOption(52).multipleReferences}_getAlternativeCommand(){return``}};a.ja.registerCommand({id:`editor.action.goToLocations`,description:{description:`Go to locations from a position in a file`,args:[{name:`uri`,description:`The text document in which to start`,constraint:a.Al},{name:`position`,description:`The position at which to start`,constraint:a.kl.isIPosition},{name:`locations`,description:`An array of locations.`,constraint:Array},{name:`multiple`,description:"Define what to do when having multiple results, either `peek`, `gotoAndPeek`, or `goto"},{name:`noResultsMessage`,description:`Human readable message that shows when locations is empty.`}]},handler:(e,t,n,r,i,s,c)=>P(void 0,void 0,void 0,function*(){a.Cu(a.Al.isUri(t)),a.Cu(a.kl.isIPosition(n)),a.Cu(Array.isArray(r)),a.Cu(i===void 0||typeof i==`string`),a.Cu(c===void 0||typeof c==`boolean`);let l=e.get(a.dc),u=yield l.openCodeEditor({resource:t},l.getFocusedCodeEditor());if(o.S(u))return u.setPosition(n),u.revealPositionInCenterIfOutsideViewport(n,0),u.invokeWithinContext(e=>{let t=new class extends ta{_getNoResultFoundMessage(e){return s||super._getNoResultFoundMessage(e)}}({muteMessage:!s,openInPeek:!!c,openToSide:!1},r,i);e.get(a.fc).invokeFunction(t.run.bind(t),u)})})}),a.ja.registerCommand({id:`editor.action.peekLocations`,description:{description:`Peek locations from a position in a file`,args:[{name:`uri`,description:`The text document in which to start`,constraint:a.Al},{name:`position`,description:`The position at which to start`,constraint:a.kl.isIPosition},{name:`locations`,description:`An array of locations.`,constraint:Array},{name:`multiple`,description:"Define what to do when having multiple results, either `peek`, `gotoAndPeek`, or `goto"}]},handler:(e,t,n,r,i)=>P(void 0,void 0,void 0,function*(){e.get(a.Ma).executeCommand(`editor.action.goToLocations`,t,n,r,i,void 0,!0)})}),a.ja.registerCommand({id:`editor.action.findReferences`,handler:(e,t,n)=>{a.Cu(a.Al.isUri(t)),a.Cu(a.kl.isIPosition(n));let r=e.get(a.Zo),i=e.get(a.dc);return i.openCodeEditor({resource:t},i.getFocusedCodeEditor()).then(e=>{if(!o.S(e)||!e.hasModel())return;let t=Si.get(e);if(!t)return;let i=a.Cs(t=>Ii(r.referenceProvider,e.getModel(),a.kl.lift(n),!1,t).then(e=>new N(e,a.Td(`ref.title`,`References`)))),s=new a.Ol(n.lineNumber,n.column,n.lineNumber,n.column);return Promise.resolve(t.toggleWidget(s,i,!1))})}}),a.ja.registerCommandAlias(`editor.action.showReferences`,`editor.action.peekLocations`),a.da.appendMenuItems([{id:a.ca.MenubarGoMenu,item:{command:{id:`editor.action.revealDefinition`,title:a.Td({key:`miGotoDefinition`,comment:[`&& denotes a mnemonic`]},`Go to &&Definition`)},group:`4_symbol_nav`,order:2}},{id:a.ca.MenubarGoMenu,item:{command:{id:`editor.action.revealDeclaration`,title:a.Td({key:`miGotoDeclaration`,comment:[`&& denotes a mnemonic`]},`Go to &&Declaration`)},group:`4_symbol_nav`,order:3}},{id:a.ca.MenubarGoMenu,item:{command:{id:`editor.action.goToTypeDefinition`,title:a.Td({key:`miGotoTypeDefinition`,comment:[`&& denotes a mnemonic`]},`Go to &&Type Definition`)},group:`4_symbol_nav`,order:3}},{id:a.ca.MenubarGoMenu,item:{command:{id:`editor.action.goToImplementation`,title:a.Td({key:`miGotoImplementation`,comment:[`&& denotes a mnemonic`]},`Go to &&Implementations`)},group:`4_symbol_nav`,order:4}},{id:a.ca.MenubarGoMenu,item:{command:{id:`editor.action.goToReferences`,title:a.Td({key:`miGotoReference`,comment:[`&& denotes a mnemonic`]},`Go to &&References`)},group:`4_symbol_nav`,order:5}}]);var na=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},ra=function(e,t){return function(n,r){t(n,r,e)}},ia=class e{constructor(e,t,n,r){this.textModelResolverService=t,this.languageService=n,this.languageFeaturesService=r,this.toUnhook=new a.Zl,this.toUnhookForKeyboard=new a.Zl,this.currentWordAtPosition=null,this.previousPromise=null,this.editor=e,this.linkDecorations=this.editor.createDecorationsCollection();let i=new pr(e);this.toUnhook.add(i),this.toUnhook.add(i.onMouseMoveOrRelevantKeyDown(([e,t])=>{this.startFindDefinitionFromMouse(e,a.Iu(t))})),this.toUnhook.add(i.onExecute(e=>{this.isEnabled(e)&&this.gotoDefinition(e.target.position,e.hasSideBySideModifier).then(()=>{this.removeLinkDecorations()},e=>{this.removeLinkDecorations(),a.fu(e)})})),this.toUnhook.add(i.onCancel(()=>{this.removeLinkDecorations(),this.currentWordAtPosition=null}))}static get(t){return t.getContribution(e.ID)}startFindDefinitionFromCursor(e){return this.startFindDefinition(e).then(()=>{this.toUnhookForKeyboard.add(this.editor.onDidChangeCursorPosition(()=>{this.currentWordAtPosition=null,this.removeLinkDecorations(),this.toUnhookForKeyboard.clear()})),this.toUnhookForKeyboard.add(this.editor.onKeyDown(e=>{e&&(this.currentWordAtPosition=null,this.removeLinkDecorations(),this.toUnhookForKeyboard.clear())}))})}startFindDefinitionFromMouse(e,t){if(e.target.type===9&&this.linkDecorations.length>0)return;if(!this.editor.hasModel()||!this.isEnabled(e,t)){this.currentWordAtPosition=null,this.removeLinkDecorations();return}let n=e.target.position;this.startFindDefinition(n)}startFindDefinition(e){this.toUnhookForKeyboard.clear();let t=e?this.editor.getModel()?.getWordAtPosition(e):null;if(!t)return this.currentWordAtPosition=null,this.removeLinkDecorations(),Promise.resolve(0);if(this.currentWordAtPosition&&this.currentWordAtPosition.startColumn===t.startColumn&&this.currentWordAtPosition.endColumn===t.endColumn&&this.currentWordAtPosition.word===t.word)return Promise.resolve(0);this.currentWordAtPosition=t;let n=new o.w(this.editor,15);return this.previousPromise&&=(this.previousPromise.cancel(),null),this.previousPromise=a.Cs(t=>this.findDefinition(e,t)),this.previousPromise.then(r=>{if(!r||!r.length||!n.validate(this.editor)){this.removeLinkDecorations();return}if(r.length>1)this.addDecoration(new a.Ol(e.lineNumber,t.startColumn,e.lineNumber,t.endColumn),new o.Jt().appendText(a.Td(`multipleResults`,`Click to show {0} definitions.`,r.length)));else{let n=r[0];if(!n.uri)return;this.textModelResolverService.createModelReference(n.uri).then(r=>{if(!r.object||!r.object.textEditorModel){r.dispose();return}let{object:{textEditorModel:i}}=r,{startLineNumber:s}=n.range;if(s<1||s>i.getLineCount()){r.dispose();return}let c=this.getPreviewValue(i,s,n),l;l=n.originSelectionRange?a.Ol.lift(n.originSelectionRange):new a.Ol(e.lineNumber,t.startColumn,e.lineNumber,t.endColumn);let u=this.languageService.guessLanguageIdByFilepathOrFirstLine(i.uri);this.addDecoration(l,new o.Jt().appendCodeblock(u||``,c)),r.dispose()})}}).then(void 0,a.fu)}getPreviewValue(t,n,r){let i=r.range;return i.endLineNumber-i.startLineNumber>=e.MAX_SOURCE_PREVIEW_LINES&&(i=this.getPreviewRangeBasedOnIndentation(t,n)),this.stripIndentationFromPreviewRange(t,n,i)}stripIndentationFromPreviewRange(e,t,n){let r=e.getLineFirstNonWhitespaceColumn(t);for(let i=t+1;i<n.endLineNumber;i++){let t=e.getLineFirstNonWhitespaceColumn(i);r=Math.min(r,t)}return e.getValueInRange(n).replace(RegExp(`^\\s{${r-1}}`,`gm`),``).trim()}getPreviewRangeBasedOnIndentation(t,n){let r=t.getLineFirstNonWhitespaceColumn(n),i=Math.min(t.getLineCount(),n+e.MAX_SOURCE_PREVIEW_LINES),o=n+1;for(;o<i&&r!==t.getLineFirstNonWhitespaceColumn(o);o++);return new a.Ol(n,1,o+1,1)}addDecoration(e,t){let n={range:e,options:{description:`goto-definition-link`,inlineClassName:`goto-definition-link`,hoverMessage:t}};this.linkDecorations.set([n])}removeLinkDecorations(){this.linkDecorations.clear()}isEnabled(e,t){return this.editor.hasModel()&&e.isNoneOrSingleMouseDown&&e.target.type===6&&(e.hasTriggerModifier||(t?t.keyCodeIsTriggerKey:!1))&&this.languageFeaturesService.definitionProvider.has(this.editor.getModel())}findDefinition(e,t){let n=this.editor.getModel();return n?Mi(this.languageFeaturesService.definitionProvider,n,e,t):Promise.resolve(null)}gotoDefinition(e,t){return this.editor.setPosition(e),this.editor.invokeWithinContext(e=>new Yi({openToSide:t,openInPeek:!t&&this.editor.getOption(79)&&!this.isInPeekEditor(e),muteMessage:!0},{alias:``,label:``,id:``,precondition:void 0}).run(e,this.editor))}isInPeekEditor(e){let t=e.get(a.Ea);return M.inPeekEditor.getValue(t)}dispose(){this.toUnhook.dispose()}};ia.ID=`editor.contrib.gotodefinitionatposition`,ia.MAX_SOURCE_PREVIEW_LINES=8,ia=na([ra(1,a.Ra),ra(2,a.Js),ra(3,a.Zo)],ia),a.ta(ia.ID,ia),a.ba((e,t)=>{let n=e.getColor(a.hn);n&&t.addRule(`.monaco-editor .goto-definition-link { color: ${n} !important; }`)});var aa=a.za,oa=class extends a.Xl{constructor(){super(),this.containerDomNode=document.createElement(`div`),this.containerDomNode.className=`monaco-hover`,this.containerDomNode.tabIndex=0,this.containerDomNode.setAttribute(`role`,`tooltip`),this.contentsDomNode=document.createElement(`div`),this.contentsDomNode.className=`monaco-hover-content`,this.scrollbar=this._register(new o.Tn(this.contentsDomNode,{consumeMouseWheelIfScrollbarIsNeeded:!0})),this.containerDomNode.appendChild(this.scrollbar.getDomNode())}onContentsChanged(){this.scrollbar.scanDomNode()}},sa=class e extends a.Xl{constructor(e,t,n){super(),this.actionContainer=a.Xa(e,aa(`div.action-container`)),this.actionContainer.setAttribute(`tabindex`,`0`),this.action=a.Xa(this.actionContainer,aa(`a.action`)),this.action.setAttribute(`role`,`button`),t.iconClass&&a.Xa(this.action,aa(`span.icon.${t.iconClass}`));let r=a.Xa(this.action,aa(`span`));r.textContent=n?`${t.label} (${n})`:t.label,this._register(a.Ka(this.actionContainer,a.Ua.CLICK,e=>{e.stopPropagation(),e.preventDefault(),t.run(this.actionContainer)})),this._register(a.Ka(this.actionContainer,a.Ua.KEY_UP,e=>{new a.Ho(e).equals(3)&&(e.stopPropagation(),e.preventDefault(),t.run(this.actionContainer))})),this.setEnabled(!0)}static render(t,n,r){return new e(t,n,r)}setEnabled(e){e?(this.actionContainer.classList.remove(`disabled`),this.actionContainer.removeAttribute(`aria-disabled`)):(this.actionContainer.classList.add(`disabled`),this.actionContainer.setAttribute(`aria-disabled`,`true`))}},ca=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},la=function(e){if(!Symbol.asyncIterator)throw TypeError(`Symbol.asyncIterator is not defined.`);var t=e[Symbol.asyncIterator],n;return t?t.call(e):(e=typeof __values==`function`?__values(e):e[Symbol.iterator](),n={},r(`next`),r(`throw`),r(`return`),n[Symbol.asyncIterator]=function(){return this},n);function r(t){n[t]=e[t]&&function(n){return new Promise(function(r,a){n=e[t](n),i(r,a,n.done,n.value)})}}function i(e,t,n,r){Promise.resolve(r).then(function(t){e({value:t,done:n})},t)}},ua=class{constructor(e,t,n){this.value=e,this.isComplete=t,this.hasLoadingMessage=n}},da=class extends a.Xl{constructor(e,t){super(),this._editor=e,this._computer=t,this._onResult=this._register(new a.Ul),this.onResult=this._onResult.event,this._firstWaitScheduler=this._register(new a.ys(()=>this._triggerAsyncComputation(),0)),this._secondWaitScheduler=this._register(new a.ys(()=>this._triggerSyncComputation(),0)),this._loadingMessageScheduler=this._register(new a.ys(()=>this._triggerLoadingMessage(),0)),this._state=0,this._asyncIterable=null,this._asyncIterableDone=!1,this._result=[]}dispose(){this._asyncIterable&&=(this._asyncIterable.cancel(),null),super.dispose()}get _hoverTime(){return this._editor.getOption(54).delay}get _firstWaitTime(){return this._hoverTime/2}get _secondWaitTime(){return this._hoverTime-this._firstWaitTime}get _loadingMessageTime(){return 3*this._hoverTime}_setState(e,t=!0){this._state=e,t&&this._fireResult()}_triggerAsyncComputation(){this._setState(2),this._secondWaitScheduler.schedule(this._secondWaitTime),this._computer.computeAsync?(this._asyncIterableDone=!1,this._asyncIterable=a.Ss(e=>this._computer.computeAsync(e)),ca(this,void 0,void 0,function*(){var e,t;try{try{for(var n=la(this._asyncIterable),r;r=yield n.next(),!r.done;){let e=r.value;e&&(this._result.push(e),this._fireResult())}}catch(t){e={error:t}}finally{try{r&&!r.done&&(t=n.return)&&(yield t.call(n))}finally{if(e)throw e.error}}this._asyncIterableDone=!0,(this._state===3||this._state===4)&&this._setState(0)}catch(e){a.fu(e)}})):this._asyncIterableDone=!0}_triggerSyncComputation(){this._computer.computeSync&&(this._result=this._result.concat(this._computer.computeSync())),this._setState(this._asyncIterableDone?0:3)}_triggerLoadingMessage(){this._state===3&&this._setState(4)}_fireResult(){if(this._state===1||this._state===2)return;let e=this._state===0,t=this._state===4;this._onResult.fire(new ua(this._result.slice(0),e,t))}start(e){if(e===0)this._state===0&&(this._setState(1),this._firstWaitScheduler.schedule(this._firstWaitTime),this._loadingMessageScheduler.schedule(this._loadingMessageTime));else switch(this._state){case 0:this._triggerAsyncComputation(),this._secondWaitScheduler.cancel(),this._triggerSyncComputation();break;case 2:this._secondWaitScheduler.cancel(),this._triggerSyncComputation();break}}cancel(){this._firstWaitScheduler.cancel(),this._secondWaitScheduler.cancel(),this._loadingMessageScheduler.cancel(),this._asyncIterable&&=(this._asyncIterable.cancel(),null),this._result=[],this._setState(0,!1)}},fa=class{constructor(e,t){this.priority=e,this.range=t,this.type=1}equals(e){return e.type===1&&this.range.equalsRange(e.range)}canAdoptVisibleHover(e,t){return e.type===1&&t.lineNumber===this.range.startLineNumber}},pa=class{constructor(e,t,n){this.priority=e,this.owner=t,this.range=n,this.type=2}equals(e){return e.type===2&&this.owner===e.owner}canAdoptVisibleHover(e,t){return e.type===2&&this.owner===e.owner}},ma=new class{constructor(){this._participants=[]}register(e){this._participants.push(e)}getAll(){return this._participants}},ha=class e{constructor(){this.value=``,this.pos=0}static isDigitCharacter(e){return e>=48&&e<=57}static isVariableCharacter(e){return e===95||e>=97&&e<=122||e>=65&&e<=90}text(e){this.value=e,this.pos=0}tokenText(e){return this.value.substr(e.pos,e.len)}next(){if(this.pos>=this.value.length)return{type:14,pos:this.pos,len:0};let t=this.pos,n=0,r=this.value.charCodeAt(t),i;if(i=e._table[r],typeof i==`number`)return this.pos+=1,{type:i,pos:t,len:1};if(e.isDigitCharacter(r)){i=8;do n+=1,r=this.value.charCodeAt(t+n);while(e.isDigitCharacter(r));return this.pos+=n,{type:i,pos:t,len:n}}if(e.isVariableCharacter(r)){i=9;do r=this.value.charCodeAt(t+ ++n);while(e.isVariableCharacter(r)||e.isDigitCharacter(r));return this.pos+=n,{type:i,pos:t,len:n}}i=10;do n+=1,r=this.value.charCodeAt(t+n);while(!isNaN(r)&&e._table[r]===void 0&&!e.isDigitCharacter(r)&&!e.isVariableCharacter(r));return this.pos+=n,{type:i,pos:t,len:n}}};ha._table={36:0,58:1,44:2,123:3,125:4,92:5,47:6,124:7,43:11,45:12,63:13};var ga=class{constructor(){this._children=[]}appendChild(e){return e instanceof I&&this._children[this._children.length-1]instanceof I?this._children[this._children.length-1].value+=e.value:(e.parent=this,this._children.push(e)),this}replace(e,t){let{parent:n}=e,r=n.children.indexOf(e),i=n.children.slice(0);i.splice(r,1,...t),n._children=i,(function e(t,n){for(let r of t)r.parent=n,e(r.children,r)})(t,n)}get children(){return this._children}get snippet(){let e=this;for(;;){if(!e)return;if(e instanceof wa)return e;e=e.parent}}toString(){return this.children.reduce((e,t)=>e+t.toString(),``)}len(){return 0}},I=class e extends ga{constructor(e){super(),this.value=e}toString(){return this.value}len(){return this.value.length}clone(){return new e(this.value)}},_a=class extends ga{},va=class e extends _a{constructor(e){super(),this.index=e}static compareByIndex(e,t){return e.index===t.index?0:e.isFinalTabstop?1:t.isFinalTabstop||e.index<t.index?-1:e.index>t.index?1:0}get isFinalTabstop(){return this.index===0}get choice(){return this._children.length===1&&this._children[0]instanceof ya?this._children[0]:void 0}clone(){let t=new e(this.index);return this.transform&&(t.transform=this.transform.clone()),t._children=this.children.map(e=>e.clone()),t}},ya=class e extends ga{constructor(){super(...arguments),this.options=[]}appendChild(e){return e instanceof I&&(e.parent=this,this.options.push(e)),this}toString(){return this.options[0].value}len(){return this.options[0].len()}clone(){let t=new e;return this.options.forEach(t.appendChild,t),t}},ba=class e extends ga{constructor(){super(...arguments),this.regexp=RegExp(``)}resolve(e){let t=this,n=!1,r=e.replace(this.regexp,function(){return n=!0,t._replace(Array.prototype.slice.call(arguments,0,-2))});return!n&&this._children.some(e=>e instanceof xa&&!!e.elseValue)&&(r=this._replace([])),r}_replace(e){let t=``;for(let n of this._children)if(n instanceof xa){let r=e[n.index]||``;r=n.resolve(r),t+=r}else t+=n.toString();return t}toString(){return``}clone(){let t=new e;return t.regexp=new RegExp(this.regexp.source,(this.regexp.ignoreCase?`i`:``)+(this.regexp.global?`g`:``)),t._children=this.children.map(e=>e.clone()),t}},xa=class e extends ga{constructor(e,t,n,r){super(),this.index=e,this.shorthandName=t,this.ifValue=n,this.elseValue=r}resolve(e){return this.shorthandName===`upcase`?e?e.toLocaleUpperCase():``:this.shorthandName===`downcase`?e?e.toLocaleLowerCase():``:this.shorthandName===`capitalize`?e?e[0].toLocaleUpperCase()+e.substr(1):``:this.shorthandName===`pascalcase`?e?this._toPascalCase(e):``:this.shorthandName===`camelcase`?e?this._toCamelCase(e):``:e&&typeof this.ifValue==`string`?this.ifValue:!e&&typeof this.elseValue==`string`?this.elseValue:e||``}_toPascalCase(e){let t=e.match(/[a-z0-9]+/gi);return t?t.map(e=>e.charAt(0).toUpperCase()+e.substr(1)).join(``):e}_toCamelCase(e){let t=e.match(/[a-z0-9]+/gi);return t?t.map((e,t)=>t===0?e.charAt(0).toLowerCase()+e.substr(1):e.charAt(0).toUpperCase()+e.substr(1)).join(``):e}clone(){return new e(this.index,this.shorthandName,this.ifValue,this.elseValue)}},Sa=class e extends _a{constructor(e){super(),this.name=e}resolve(e){let t=e.resolve(this);return this.transform&&(t=this.transform.resolve(t||``)),t===void 0?!1:(this._children=[new I(t)],!0)}clone(){let t=new e(this.name);return this.transform&&(t.transform=this.transform.clone()),t._children=this.children.map(e=>e.clone()),t}};function Ca(e,t){let n=[...e];for(;n.length>0;){let e=n.shift();if(!t(e))break;n.unshift(...e.children)}}var wa=class e extends ga{get placeholderInfo(){if(!this._placeholders){let e=[],t;this.walk(function(n){return n instanceof va&&(e.push(n),t=!t||t.index<n.index?n:t),!0}),this._placeholders={all:e,last:t}}return this._placeholders}get placeholders(){let{all:e}=this.placeholderInfo;return e}offset(e){let t=0,n=!1;return this.walk(r=>r===e?(n=!0,!1):(t+=r.len(),!0)),n?t:-1}fullLen(e){let t=0;return Ca([e],e=>(t+=e.len(),!0)),t}enclosingPlaceholders(e){let t=[],{parent:n}=e;for(;n;)n instanceof va&&t.push(n),n=n.parent;return t}resolveVariables(e){return this.walk(t=>(t instanceof Sa&&t.resolve(e)&&(this._placeholders=void 0),!0)),this}appendChild(e){return this._placeholders=void 0,super.appendChild(e)}replace(e,t){return this._placeholders=void 0,super.replace(e,t)}clone(){let t=new e;return this._children=this.children.map(e=>e.clone()),t}walk(e){Ca(this.children,e)}},Ta=class{constructor(){this._scanner=new ha,this._token={type:14,pos:0,len:0}}static escape(e){return e.replace(/\$|}|\\/g,`\\$&`)}static guessNeedsClipboard(e){return/\${?CLIPBOARD/.test(e)}parse(e,t,n){let r=new wa;return this.parseFragment(e,r),this.ensureFinalTabstop(r,n??!1,t??!1),r}parseFragment(e,t){let n=t.children.length;for(this._scanner.text(e),this._token=this._scanner.next();this._parse(t););let r=new Map,i=[];t.walk(e=>(e instanceof va&&(e.isFinalTabstop?r.set(0,void 0):!r.has(e.index)&&e.children.length>0?r.set(e.index,e.children):i.push(e)),!0));for(let e of i){let n=r.get(e.index);if(n){let r=new va(e.index);r.transform=e.transform;for(let e of n)r.appendChild(e.clone());t.replace(e,[r])}}return t.children.slice(n)}ensureFinalTabstop(e,t,n){(t||n&&e.placeholders.length>0)&&(e.placeholders.find(e=>e.index===0)||e.appendChild(new va(0)))}_accept(e,t){if(e===void 0||this._token.type===e){let e=t?this._scanner.tokenText(this._token):!0;return this._token=this._scanner.next(),e}return!1}_backTo(e){return this._scanner.pos=e.pos+e.len,this._token=e,!1}_until(e){let t=this._token;for(;this._token.type!==e;){if(this._token.type===14)return!1;if(this._token.type===5){let e=this._scanner.next();if(e.type!==0&&e.type!==4&&e.type!==5)return!1}this._token=this._scanner.next()}let n=this._scanner.value.substring(t.pos,this._token.pos).replace(/\\(\$|}|\\)/g,`$1`);return this._token=this._scanner.next(),n}_parse(e){return this._parseEscaped(e)||this._parseTabstopOrVariableName(e)||this._parseComplexPlaceholder(e)||this._parseComplexVariable(e)||this._parseAnything(e)}_parseEscaped(e){let t;return(t=this._accept(5,!0))?(t=this._accept(0,!0)||this._accept(4,!0)||this._accept(5,!0)||t,e.appendChild(new I(t)),!0):!1}_parseTabstopOrVariableName(e){let t,n=this._token;return this._accept(0)&&(t=this._accept(9,!0)||this._accept(8,!0))?(e.appendChild(/^\d+$/.test(t)?new va(Number(t)):new Sa(t)),!0):this._backTo(n)}_parseComplexPlaceholder(e){let t,n=this._token;if(!(this._accept(0)&&this._accept(3)&&(t=this._accept(8,!0))))return this._backTo(n);let r=new va(Number(t));if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(r),!0;if(!this._parse(r))return e.appendChild(new I("${"+t+`:`)),r.children.forEach(e.appendChild,e),!0}else if(r.index>0&&this._accept(7)){let t=new ya;for(;;){if(this._parseChoiceElement(t)){if(this._accept(2))continue;if(this._accept(7)&&(r.appendChild(t),this._accept(4)))return e.appendChild(r),!0}return this._backTo(n),!1}}else if(this._accept(6))return this._parseTransform(r)?(e.appendChild(r),!0):(this._backTo(n),!1);else if(this._accept(4))return e.appendChild(r),!0;else return this._backTo(n)}_parseChoiceElement(e){let t=this._token,n=[];for(;!(this._token.type===2||this._token.type===7);){let e;if(e=(e=this._accept(5,!0))?this._accept(2,!0)||this._accept(7,!0)||this._accept(5,!0)||e:this._accept(void 0,!0),!e)return this._backTo(t),!1;n.push(e)}return n.length===0?(this._backTo(t),!1):(e.appendChild(new I(n.join(``))),!0)}_parseComplexVariable(e){let t,n=this._token;if(!(this._accept(0)&&this._accept(3)&&(t=this._accept(9,!0))))return this._backTo(n);let r=new Sa(t);if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(r),!0;if(!this._parse(r))return e.appendChild(new I("${"+t+`:`)),r.children.forEach(e.appendChild,e),!0}else if(this._accept(6))return this._parseTransform(r)?(e.appendChild(r),!0):(this._backTo(n),!1);else if(this._accept(4))return e.appendChild(r),!0;else return this._backTo(n)}_parseTransform(e){let t=new ba,n=``,r=``;for(;!this._accept(6);){let e;if(e=this._accept(5,!0)){e=this._accept(6,!0)||e,n+=e;continue}if(this._token.type!==14){n+=this._accept(void 0,!0);continue}return!1}for(;!this._accept(6);){let e;if(e=this._accept(5,!0)){e=this._accept(5,!0)||this._accept(6,!0)||e,t.appendChild(new I(e));continue}if(!(this._parseFormatString(t)||this._parseAnything(t)))return!1}for(;!this._accept(4);){if(this._token.type!==14){r+=this._accept(void 0,!0);continue}return!1}try{t.regexp=new RegExp(n,r)}catch{return!1}return e.transform=t,!0}_parseFormatString(e){let t=this._token;if(!this._accept(0))return!1;let n=!1;this._accept(3)&&(n=!0);let r=this._accept(8,!0);if(!r)return this._backTo(t),!1;if(!n||this._accept(4))return e.appendChild(new xa(Number(r))),!0;if(!this._accept(1))return this._backTo(t),!1;if(this._accept(6)){let n=this._accept(9,!0);return!n||!this._accept(4)?(this._backTo(t),!1):(e.appendChild(new xa(Number(r),n)),!0)}else if(this._accept(11)){let t=this._until(4);if(t)return e.appendChild(new xa(Number(r),void 0,t,void 0)),!0}else if(this._accept(12)){let t=this._until(4);if(t)return e.appendChild(new xa(Number(r),void 0,void 0,t)),!0}else if(this._accept(13)){let t=this._until(1);if(t){let n=this._until(4);if(n)return e.appendChild(new xa(Number(r),void 0,t,n)),!0}}else{let t=this._until(4);if(t)return e.appendChild(new xa(Number(r),void 0,void 0,t)),!0}return this._backTo(t),!1}_parseAnything(e){return this._token.type===14?!1:(e.appendChild(new I(this._scanner.tokenText(this._token))),this._accept(void 0),!0)}},Ea=a.Td(`defaultLabel`,`input`),Da=a.Td(`label.preserveCaseToggle`,`Preserve Case`),Oa=class extends o.K{constructor(e){super({icon:a.Tl.preserveCase,title:Da+e.appendTitle,isChecked:e.isChecked,inputActiveOptionBorder:e.inputActiveOptionBorder,inputActiveOptionForeground:e.inputActiveOptionForeground,inputActiveOptionBackground:e.inputActiveOptionBackground})}},ka=class extends o.Dn{constructor(e,t,n,r){super(),this._showOptionButtons=n,this.fixFocusOnOptionClickEnabled=!0,this.cachedOptionsWidth=0,this._onDidOptionChange=this._register(new a.Ul),this.onDidOptionChange=this._onDidOptionChange.event,this._onKeyDown=this._register(new a.Ul),this.onKeyDown=this._onKeyDown.event,this._onMouseDown=this._register(new a.Ul),this._onInput=this._register(new a.Ul),this._onKeyUp=this._register(new a.Ul),this._onPreserveCaseKeyDown=this._register(new a.Ul),this.onPreserveCaseKeyDown=this._onPreserveCaseKeyDown.event,this.contextViewProvider=t,this.placeholder=r.placeholder||``,this.validation=r.validation,this.label=r.label||Ea,this.inputActiveOptionBorder=r.inputActiveOptionBorder,this.inputActiveOptionForeground=r.inputActiveOptionForeground,this.inputActiveOptionBackground=r.inputActiveOptionBackground,this.inputBackground=r.inputBackground,this.inputForeground=r.inputForeground,this.inputBorder=r.inputBorder,this.inputValidationInfoBorder=r.inputValidationInfoBorder,this.inputValidationInfoBackground=r.inputValidationInfoBackground,this.inputValidationInfoForeground=r.inputValidationInfoForeground,this.inputValidationWarningBorder=r.inputValidationWarningBorder,this.inputValidationWarningBackground=r.inputValidationWarningBackground,this.inputValidationWarningForeground=r.inputValidationWarningForeground,this.inputValidationErrorBorder=r.inputValidationErrorBorder,this.inputValidationErrorBackground=r.inputValidationErrorBackground,this.inputValidationErrorForeground=r.inputValidationErrorForeground;let i=r.appendPreserveCaseLabel||``,s=r.history||[],c=!!r.flexibleHeight,l=!!r.flexibleWidth,u=r.flexibleMaxHeight;this.domNode=document.createElement(`div`),this.domNode.classList.add(`monaco-findInput`),this.inputBox=this._register(new o.Q(this.domNode,this.contextViewProvider,{ariaLabel:this.label||``,placeholder:this.placeholder||``,validationOptions:{validation:this.validation},inputBackground:this.inputBackground,inputForeground:this.inputForeground,inputBorder:this.inputBorder,inputValidationInfoBackground:this.inputValidationInfoBackground,inputValidationInfoForeground:this.inputValidationInfoForeground,inputValidationInfoBorder:this.inputValidationInfoBorder,inputValidationWarningBackground:this.inputValidationWarningBackground,inputValidationWarningForeground:this.inputValidationWarningForeground,inputValidationWarningBorder:this.inputValidationWarningBorder,inputValidationErrorBackground:this.inputValidationErrorBackground,inputValidationErrorForeground:this.inputValidationErrorForeground,inputValidationErrorBorder:this.inputValidationErrorBorder,history:s,showHistoryHint:r.showHistoryHint,flexibleHeight:c,flexibleWidth:l,flexibleMaxHeight:u})),this.preserveCase=this._register(new Oa({appendTitle:i,isChecked:!1,inputActiveOptionBorder:this.inputActiveOptionBorder,inputActiveOptionForeground:this.inputActiveOptionForeground,inputActiveOptionBackground:this.inputActiveOptionBackground})),this._register(this.preserveCase.onChange(e=>{this._onDidOptionChange.fire(e),!e&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.preserveCase.onKeyDown(e=>{this._onPreserveCaseKeyDown.fire(e)})),this._showOptionButtons?this.cachedOptionsWidth=this.preserveCase.width():this.cachedOptionsWidth=0;let d=[this.preserveCase.domNode];this.onkeydown(this.domNode,e=>{if(e.equals(15)||e.equals(17)||e.equals(9)){let t=d.indexOf(document.activeElement);if(t>=0){let n=-1;e.equals(17)?n=(t+1)%d.length:e.equals(15)&&(n=t===0?d.length-1:t-1),e.equals(9)?(d[t].blur(),this.inputBox.focus()):n>=0&&d[n].focus(),a.Ha.stop(e,!0)}}});let f=document.createElement(`div`);f.className=`controls`,f.style.display=this._showOptionButtons?`block`:`none`,f.appendChild(this.preserveCase.domNode),this.domNode.appendChild(f),e?.appendChild(this.domNode),this.onkeydown(this.inputBox.inputElement,e=>this._onKeyDown.fire(e)),this.onkeyup(this.inputBox.inputElement,e=>this._onKeyUp.fire(e)),this.oninput(this.inputBox.inputElement,e=>this._onInput.fire()),this.onmousedown(this.inputBox.inputElement,e=>this._onMouseDown.fire(e))}enable(){this.domNode.classList.remove(`disabled`),this.inputBox.enable(),this.preserveCase.enable()}disable(){this.domNode.classList.add(`disabled`),this.inputBox.disable(),this.preserveCase.disable()}setEnabled(e){e?this.enable():this.disable()}style(e){this.inputActiveOptionBorder=e.inputActiveOptionBorder,this.inputActiveOptionForeground=e.inputActiveOptionForeground,this.inputActiveOptionBackground=e.inputActiveOptionBackground,this.inputBackground=e.inputBackground,this.inputForeground=e.inputForeground,this.inputBorder=e.inputBorder,this.inputValidationInfoBackground=e.inputValidationInfoBackground,this.inputValidationInfoForeground=e.inputValidationInfoForeground,this.inputValidationInfoBorder=e.inputValidationInfoBorder,this.inputValidationWarningBackground=e.inputValidationWarningBackground,this.inputValidationWarningForeground=e.inputValidationWarningForeground,this.inputValidationWarningBorder=e.inputValidationWarningBorder,this.inputValidationErrorBackground=e.inputValidationErrorBackground,this.inputValidationErrorForeground=e.inputValidationErrorForeground,this.inputValidationErrorBorder=e.inputValidationErrorBorder,this.applyStyles()}applyStyles(){if(this.domNode){let e={inputActiveOptionBorder:this.inputActiveOptionBorder,inputActiveOptionForeground:this.inputActiveOptionForeground,inputActiveOptionBackground:this.inputActiveOptionBackground};this.preserveCase.style(e);let t={inputBackground:this.inputBackground,inputForeground:this.inputForeground,inputBorder:this.inputBorder,inputValidationInfoBackground:this.inputValidationInfoBackground,inputValidationInfoForeground:this.inputValidationInfoForeground,inputValidationInfoBorder:this.inputValidationInfoBorder,inputValidationWarningBackground:this.inputValidationWarningBackground,inputValidationWarningForeground:this.inputValidationWarningForeground,inputValidationWarningBorder:this.inputValidationWarningBorder,inputValidationErrorBackground:this.inputValidationErrorBackground,inputValidationErrorForeground:this.inputValidationErrorForeground,inputValidationErrorBorder:this.inputValidationErrorBorder};this.inputBox.style(t)}}select(){this.inputBox.select()}focus(){this.inputBox.focus()}getPreserveCase(){return this.preserveCase.checked}setPreserveCase(e){this.preserveCase.checked=e}focusOnPreserve(){this.preserveCase.focus()}validate(){this.inputBox&&this.inputBox.validate()}set width(e){this.inputBox.paddingRight=this.cachedOptionsWidth,this.inputBox.width=e,this.domNode.style.width=e+`px`}dispose(){super.dispose()}},Aa=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},ja=function(e,t){return function(n,r){t(n,r,e)}},Ma=new a.Da(`suggestWidgetVisible`,!1,a.Td(`suggestWidgetVisible`,`Whether suggestion are visible`)),Na=`historyNavigationWidgetFocus`,Pa=`historyNavigationForwardsEnabled`,Fa=`historyNavigationBackwardsEnabled`,Ia=void 0,La=[];function Ra(e,t){if(La.includes(t))throw Error(`Cannot register the same widget multiple times`);La.push(t);let n=new a.Zl,r=n.add(e.createScoped(t.element)),i=new a.Da(Na,!1).bindTo(r),o=new a.Da(Pa,!0).bindTo(r),s=new a.Da(Fa,!0).bindTo(r),c=()=>{i.set(!0),Ia=t},l=()=>{i.set(!1),Ia===t&&(Ia=void 0)};return t.element===document.activeElement&&c(),n.add(t.onDidFocus(()=>c())),n.add(t.onDidBlur(()=>l())),n.add(a.au(()=>{La.splice(La.indexOf(t),1),l()})),{scopedContextKeyService:r,historyNavigationForwardsEnablement:o,historyNavigationBackwardsEnablement:s,dispose(){n.dispose()}}}var za=class extends o.H{constructor(e,t,n,r,i=!1){super(e,t,i,n),this._register(Ra(r,this.inputBox))}};za=Aa([ja(3,a.Ea)],za);var Ba=class extends ka{constructor(e,t,n,r,i=!1){super(e,t,i,n),this._register(Ra(r,this.inputBox))}};Ba=Aa([ja(3,a.Ea)],Ba),a.oa.registerCommandAndKeybindingRule({id:`history.showPrevious`,weight:200,when:a.Ta.and(a.Ta.has(Na),a.Ta.equals(Fa,!0),Ma.isEqualTo(!1)),primary:16,secondary:[528],handler:e=>{Ia&&Ia.showPreviousValue()}}),a.oa.registerCommandAndKeybindingRule({id:`history.showNext`,weight:200,when:a.Ta.and(a.Ta.has(Na),a.Ta.equals(Pa,!0),Ma.isEqualTo(!1)),primary:18,secondary:[530],handler:e=>{Ia&&Ia.showNextValue()}});var Va=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},L={Visible:Ma,HasFocusedSuggestion:new a.Da(`suggestWidgetHasFocusedSuggestion`,!1,a.Td(`suggestWidgetHasSelection`,`Whether any suggestion is focused`)),DetailsVisible:new a.Da(`suggestWidgetDetailsVisible`,!1,a.Td(`suggestWidgetDetailsVisible`,`Whether suggestion details are visible`)),MultipleSuggestions:new a.Da(`suggestWidgetMultipleSuggestions`,!1,a.Td(`suggestWidgetMultipleSuggestions`,`Whether there are multiple suggestions to pick from`)),MakesTextEdit:new a.Da(`suggestionMakesTextEdit`,!0,a.Td(`suggestionMakesTextEdit`,`Whether inserting the current suggestion yields in a change or has everything already been typed`)),AcceptSuggestionsOnEnter:new a.Da(`acceptSuggestionOnEnter`,!0,a.Td(`acceptSuggestionOnEnter`,`Whether suggestions are inserted when pressing Enter`)),HasInsertAndReplaceRange:new a.Da(`suggestionHasInsertAndReplaceRange`,!1,a.Td(`suggestionHasInsertAndReplaceRange`,`Whether the current suggestion has insert and replace behaviour`)),InsertMode:new a.Da(`suggestionInsertMode`,void 0,{type:`string`,description:a.Td(`suggestionInsertMode`,`Whether the default behaviour is to insert or replace`)}),CanResolve:new a.Da(`suggestionCanResolve`,!1,a.Td(`suggestionCanResolve`,`Whether the current suggestion supports to resolve further details`))},Ha=new a.ca(`suggestWidgetStatusBar`),Ua=class{constructor(e,t,n,r){this.position=e,this.completion=t,this.container=n,this.provider=r,this.isInvalid=!1,this.score=o.tn.Default,this.distance=0,this.textLabel=typeof t.label==`string`?t.label:t.label.label,this.labelLow=this.textLabel.toLowerCase(),this.isInvalid=!this.textLabel,this.sortTextLow=t.sortText&&t.sortText.toLowerCase(),this.filterTextLow=t.filterText&&t.filterText.toLowerCase(),this.extensionId=t.extensionId,a.Ol.isIRange(t.range)?(this.editStart=new a.kl(t.range.startLineNumber,t.range.startColumn),this.editInsertEnd=new a.kl(t.range.endLineNumber,t.range.endColumn),this.editReplaceEnd=new a.kl(t.range.endLineNumber,t.range.endColumn),this.isInvalid=this.isInvalid||a.Ol.spansMultipleLines(t.range)||t.range.startLineNumber!==e.lineNumber):(this.editStart=new a.kl(t.range.insert.startLineNumber,t.range.insert.startColumn),this.editInsertEnd=new a.kl(t.range.insert.endLineNumber,t.range.insert.endColumn),this.editReplaceEnd=new a.kl(t.range.replace.endLineNumber,t.range.replace.endColumn),this.isInvalid=this.isInvalid||a.Ol.spansMultipleLines(t.range.insert)||a.Ol.spansMultipleLines(t.range.replace)||t.range.insert.startLineNumber!==e.lineNumber||t.range.replace.startLineNumber!==e.lineNumber||t.range.insert.startColumn!==t.range.replace.startColumn),typeof r.resolveCompletionItem!=`function`&&(this._resolveCache=Promise.resolve(),this._isResolved=!0)}get isResolved(){return!!this._isResolved}resolve(e){return Va(this,void 0,void 0,function*(){if(!this._resolveCache){let t=e.onCancellationRequested(()=>{this._resolveCache=void 0,this._isResolved=!1});this._resolveCache=Promise.resolve(this.provider.resolveCompletionItem(this.completion,e)).then(e=>{Object.assign(this.completion,e),this._isResolved=!0,t.dispose()},e=>{a.du(e)&&(this._resolveCache=void 0,this._isResolved=!1)})}return this._resolveCache})}},Wa=class{constructor(e=2,t=new Set,n=new Set,r=!0){this.snippetSortOrder=e,this.kindFilter=t,this.providerFilter=n,this.showDeprecated=r}};Wa.default=new Wa;var Ga;function Ka(){return Ga}var qa=class{constructor(e,t,n,r){this.items=e,this.needsClipboard=t,this.durations=n,this.disposable=r}};function Ja(e,t,n,r=Wa.default,i={triggerKind:0},o=a.Bl.None){return Va(this,void 0,void 0,function*(){let s=new a.Yl(!0);n=n.clone();let c=t.getWordAtPosition(n),l=c?new a.Ol(n.lineNumber,c.startColumn,n.lineNumber,c.endColumn):a.Ol.fromPositions(n),u={replace:l,insert:l.setEndPosition(n.lineNumber,n.column)},d=[],f=new a.Zl,p=[],m=!1,h=(e,t,i)=>{let o=!1;if(!t)return o;for(let i of t.suggestions)if(!r.kindFilter.has(i.kind)){if(!r.showDeprecated&&(i?.tags)?.includes(1))continue;i.range||=u,i.sortText||=typeof i.label==`string`?i.label:i.label.label,!m&&i.insertTextRules&&i.insertTextRules&4&&(m=Ta.guessNeedsClipboard(i.insertText)),d.push(new Ua(n,i,t,e)),o=!0}return a.ru(t)&&f.add(t),p.push({providerName:e._debugDisplayName??`unknown_provider`,elapsedProvider:t.duration??-1,elapsedOverall:i.elapsed()}),o},g=Va(this,void 0,void 0,function*(){});for(let s of e.orderedGroups(t)){let e=!1;if(yield Promise.all(s.map(s=>Va(this,void 0,void 0,function*(){if(!(r.providerFilter.size>0&&!r.providerFilter.has(s)))try{let r=new a.Yl(!0);e=h(s,yield s.provideCompletionItems(t,n,i,o),r)||e}catch(e){a.pu(e)}}))),e||o.isCancellationRequested)break}return yield g,o.isCancellationRequested?(f.dispose(),Promise.reject(new a.su)):new qa(d.sort($a(r.snippetSortOrder)),m,{entries:p,elapsed:s.elapsed()},f)})}function Ya(e,t){if(e.sortTextLow&&t.sortTextLow){if(e.sortTextLow<t.sortTextLow)return-1;if(e.sortTextLow>t.sortTextLow)return 1}return e.textLabel<t.textLabel?-1:e.textLabel>t.textLabel?1:e.completion.kind-t.completion.kind}function Xa(e,t){if(e.completion.kind!==t.completion.kind){if(e.completion.kind===27)return-1;if(t.completion.kind===27)return 1}return Ya(e,t)}function Za(e,t){if(e.completion.kind!==t.completion.kind){if(e.completion.kind===27)return 1;if(t.completion.kind===27)return-1}return Ya(e,t)}var Qa=new Map;Qa.set(0,Xa),Qa.set(2,Za),Qa.set(1,Ya);function $a(e){return Qa.get(e)}a.ja.registerCommand(`_executeCompletionItemProvider`,(e,...t)=>Va(void 0,void 0,void 0,function*(){let[n,r,i,o]=t;a.Cu(a.Al.isUri(n)),a.Cu(a.kl.isIPosition(r)),a.Cu(typeof i==`string`||!i),a.Cu(typeof o==`number`||!o);let{completionProvider:s}=e.get(a.Zo),c=yield e.get(a.Ra).createModelReference(n);try{let e={incomplete:!1,suggestions:[]},t=[],n=yield Ja(s,c.object.textEditorModel,a.kl.lift(r),void 0,{triggerCharacter:i,triggerKind:i?1:0});for(let r of n.items)t.length<(o??0)&&t.push(r.resolve(a.Bl.None)),e.incomplete=e.incomplete||r.container.incomplete,e.suggestions.push(r.completion);try{return yield Promise.all(t),e}finally{setTimeout(()=>n.disposable.dispose(),100)}}finally{c.dispose()}}));function eo(e,t){var n;(n=e.getContribution(`editor.contrib.suggestController`))==null||n.triggerSuggest(new Set().add(t),void 0,!0)}var to=class{static isAllOff(e){return e.other===`off`&&e.comments===`off`&&e.strings===`off`}static isAllOn(e){return e.other===`on`&&e.comments===`on`&&e.strings===`on`}static valueFor(e,t){switch(t){case 1:return e.comments;case 2:return e.strings;default:return e.other}}},no=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},ro=function(e,t){return function(n,r){t(n,r,e)}},io=a.za,ao=class e extends a.Xl{constructor(e,t,n){super(),this._editor=e,this._instantiationService=t,this._keybindingService=n,this._widget=this._register(this._instantiationService.createInstance(so,this._editor)),this._isChangingDecorations=!1,this._messages=[],this._messagesAreComplete=!1,this._participants=[];for(let e of ma.getAll())this._participants.push(this._instantiationService.createInstance(e,this._editor));this._participants.sort((e,t)=>e.hoverOrdinal-t.hoverOrdinal),this._computer=new lo(this._editor,this._participants),this._hoverOperation=this._register(new da(this._editor,this._computer)),this._register(this._hoverOperation.onResult(e=>{this._withResult(e.value,e.isComplete,e.hasLoadingMessage)})),this._register(this._editor.onDidChangeModelDecorations(()=>{this._isChangingDecorations||this._onModelDecorationsChanged()})),this._register(a.Ja(this._widget.getDomNode(),`keydown`,e=>{e.equals(9)&&this.hide()})),this._register(a.xl.onDidChange(()=>{this._widget.position&&this._computer.anchor&&this._messages.length>0&&(this._widget.clear(),this._renderMessages(this._computer.anchor,this._messages))}))}_onModelDecorationsChanged(){this._widget.position&&(this._hoverOperation.cancel(),this._widget.isColorPickerVisible||this._hoverOperation.start(0))}maybeShowAt(e){let t=[];for(let n of this._participants)if(n.suggestHoverAnchor){let r=n.suggestHoverAnchor(e);r&&t.push(r)}let n=e.target;if(n.type===6&&t.push(new fa(0,n.range)),n.type===7){let e=this._editor.getOption(45).typicalHalfwidthCharacterWidth/2;!n.detail.isAfterLines&&typeof n.detail.horizontalDistanceToText==`number`&&n.detail.horizontalDistanceToText<e&&t.push(new fa(0,n.range))}return t.length===0?!1:(t.sort((e,t)=>t.priority-e.priority),this._startShowingAt(t[0],0,!1),!0)}startShowingAtRange(e,t,n){this._startShowingAt(new fa(0,e),t,n)}_startShowingAt(e,t,n){if(!(this._computer.anchor&&this._computer.anchor.equals(e))){if(this._hoverOperation.cancel(),this._widget.position)if(!this._computer.anchor||!e.canAdoptVisibleHover(this._computer.anchor,this._widget.position))this.hide();else{let t=this._messages.filter(t=>t.isValidForHoverAnchor(e));if(t.length===0)this.hide();else if(t.length===this._messages.length&&this._messagesAreComplete)return;else this._renderMessages(e,t)}this._computer.anchor=e,this._computer.shouldFocus=n,this._hoverOperation.start(t)}}hide(){this._computer.anchor=null,this._hoverOperation.cancel(),this._widget.hide()}isColorPickerVisible(){return this._widget.isColorPickerVisible}containsNode(e){return this._widget.getDomNode().contains(e)}_addLoadingMessage(e){if(this._computer.anchor){for(let t of this._participants)if(t.createLoadingMessage){let n=t.createLoadingMessage(this._computer.anchor);if(n)return e.slice(0).concat([n])}}return e}_withResult(e,t,n){this._messages=n?this._addLoadingMessage(e):e,this._messagesAreComplete=t,this._computer.anchor&&this._messages.length>0?this._renderMessages(this._computer.anchor,this._messages):t&&this.hide()}_renderMessages(t,n){let{showAtPosition:r,showAtRange:i,highlightRange:o}=e.computeHoverRanges(t.range,n),s=new a.Zl,c=s.add(new co(this._keybindingService)),l=document.createDocumentFragment(),u=null,d={fragment:l,statusBar:c,setColorPicker:e=>u=e,onContentsChanged:()=>this._widget.onContentsChanged(),hide:()=>this.hide()};for(let e of this._participants){let t=n.filter(t=>t.owner===e);t.length>0&&s.add(e.renderHoverParts(d,t))}if(c.hasContent&&l.appendChild(c.hoverElement),l.hasChildNodes()){if(o){let t=this._editor.createDecorationsCollection();try{this._isChangingDecorations=!0,t.set([{range:o,options:e._DECORATION_OPTIONS}])}finally{this._isChangingDecorations=!1}s.add(a.au(()=>{try{this._isChangingDecorations=!0,t.clear()}finally{this._isChangingDecorations=!1}}))}this._widget.showAt(l,new oo(u,r,i,this._editor.getOption(54).above,this._computer.shouldFocus,s))}else s.dispose()}static computeHoverRanges(e,t){let n=e.startLineNumber,r=e.startColumn,i=e.endColumn,o=t[0].range,s=null;for(let e of t)o=a.Ol.plusRange(o,e.range),e.range.startLineNumber===n&&e.range.endLineNumber===n&&(r=Math.min(r,e.range.startColumn),i=Math.max(i,e.range.endColumn)),e.forceShowAtRange&&(s=e.range);return{showAtPosition:s?s.getStartPosition():new a.kl(e.startLineNumber,r),showAtRange:s||new a.Ol(n,r,n,i),highlightRange:o}}};ao._DECORATION_OPTIONS=a.f.register({description:`content-hover-highlight`,className:`hoverHighlight`}),ao=no([ro(1,a.fc),ro(2,o.At)],ao);var oo=class{constructor(e,t,n,r,i,a){this.colorPicker=e,this.showAtPosition=t,this.showAtRange=n,this.preferAbove=r,this.stoleFocus=i,this.disposables=a}},so=class e extends a.Xl{constructor(e,t){super(),this._editor=e,this._contextKeyService=t,this.allowEditorOverflow=!0,this._hoverVisibleKey=o.kn.hoverVisible.bindTo(this._contextKeyService),this._hover=this._register(new oa),this._visibleData=null,this._register(this._editor.onDidLayoutChange(()=>this._layout())),this._register(this._editor.onDidChangeConfiguration(e=>{e.hasChanged(45)&&this._updateFont()})),this._setVisibleData(null),this._layout(),this._editor.addContentWidget(this)}get position(){return this._visibleData?.showAtPosition??null}get isColorPickerVisible(){return!!this._visibleData?.colorPicker}dispose(){this._editor.removeContentWidget(this),this._visibleData&&this._visibleData.disposables.dispose(),super.dispose()}getId(){return e.ID}getDomNode(){return this._hover.containerDomNode}getPosition(){if(!this._visibleData)return null;let e=this._visibleData.preferAbove;return!e&&this._contextKeyService.getContextKeyValue(L.Visible.key)&&(e=!0),{position:this._visibleData.showAtPosition,range:this._visibleData.showAtRange,preference:e?[1,2]:[2,1]}}_setVisibleData(e){this._visibleData&&this._visibleData.disposables.dispose(),this._visibleData=e,this._hoverVisibleKey.set(!!this._visibleData),this._hover.containerDomNode.classList.toggle(`hidden`,!this._visibleData)}_layout(){let e=Math.max(this._editor.getLayoutInfo().height/4,250),{fontSize:t,lineHeight:n}=this._editor.getOption(45);this._hover.contentsDomNode.style.fontSize=`${t}px`,this._hover.contentsDomNode.style.lineHeight=`${n/t}`,this._hover.contentsDomNode.style.maxHeight=`${e}px`,this._hover.contentsDomNode.style.maxWidth=`${Math.max(this._editor.getLayoutInfo().width*.66,500)}px`}_updateFont(){Array.prototype.slice.call(this._hover.contentsDomNode.getElementsByClassName(`code`)).forEach(e=>this._editor.applyFontInfo(e))}showAt(e,t){this._setVisibleData(t),this._hover.contentsDomNode.textContent=``,this._hover.contentsDomNode.appendChild(e),this._hover.contentsDomNode.style.paddingBottom=``,this._updateFont(),this.onContentsChanged(),this._editor.render(),this.onContentsChanged(),t.stoleFocus&&this._hover.containerDomNode.focus(),t.colorPicker&&t.colorPicker.layout()}hide(){if(this._visibleData){let e=this._visibleData.stoleFocus;this._setVisibleData(null),this._editor.layoutContentWidget(this),e&&this._editor.focus()}}onContentsChanged(){this._editor.layoutContentWidget(this),this._hover.onContentsChanged();let e=this._hover.scrollbar.getScrollDimensions();if(e.scrollWidth>e.width){let e=`${this._hover.scrollbar.options.horizontalScrollbarSize}px`;this._hover.contentsDomNode.style.paddingBottom!==e&&(this._hover.contentsDomNode.style.paddingBottom=e,this._editor.layoutContentWidget(this),this._hover.onContentsChanged())}}clear(){this._hover.contentsDomNode.textContent=``}};so.ID=`editor.contrib.contentHoverWidget`,so=no([ro(1,a.Ea)],so);var co=class extends a.Xl{constructor(e){super(),this._keybindingService=e,this._hasContent=!1,this.hoverElement=io(`div.hover-row.status-bar`),this.actionsElement=a.Xa(this.hoverElement,io(`div.actions`))}get hasContent(){return this._hasContent}addAction(e){let t=this._keybindingService.lookupKeybinding(e.commandId),n=t?t.getLabel():null;return this._hasContent=!0,this._register(sa.render(this.actionsElement,e,n))}append(e){let t=a.Xa(this.actionsElement,e);return this._hasContent=!0,t}};co=no([ro(0,o.At)],co);var lo=class e{constructor(e,t){this._editor=e,this._participants=t,this._anchor=null,this._shouldFocus=!1}get anchor(){return this._anchor}set anchor(e){this._anchor=e}get shouldFocus(){return this._shouldFocus}set shouldFocus(e){this._shouldFocus=e}static _getLineDecorations(e,t){if(t.type!==1)return[];let n=e.getModel(),r=t.range.startLineNumber;if(r>n.getLineCount())return[];let i=n.getLineMaxColumn(r);return e.getLineDecorations(r).filter(e=>{if(e.options.isWholeLine)return!0;let n=e.range.startLineNumber===r?e.range.startColumn:1,a=e.range.endLineNumber===r?e.range.endColumn:i;if(e.options.showIfCollapsed){if(n>t.range.startColumn+1||t.range.endColumn-1>a)return!1}else if(n>t.range.startColumn||t.range.endColumn>a)return!1;return!0})}computeAsync(t){let n=this._anchor;if(!this._editor.hasModel()||!n)return a.fs.EMPTY;let r=e._getLineDecorations(this._editor,n);return a.fs.merge(this._participants.map(e=>e.computeAsync?e.computeAsync(n,r,t):a.fs.EMPTY))}computeSync(){if(!this._editor.hasModel()||!this._anchor)return[];let t=e._getLineDecorations(this._editor,this._anchor),n=[];for(let e of this._participants)n=n.concat(e.computeSync(this._anchor,t));return a.Vu(n)}},uo={};(function(){function e(e,t){t(uo)}e.amd=!0,(function(r,i){typeof t==`object`&&n!==void 0?i(t):typeof e==`function`&&e.amd?e([`exports`],i):(r=typeof globalThis<`u`?globalThis:r||self,i(r.marked={}))})(this,(function(e){"use strict";function t(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function n(e,n,r){return n&&t(e.prototype,n),r&&t(e,r),Object.defineProperty(e,`prototype`,{writable:!1}),e}function r(e,t){if(e){if(typeof e==`string`)return i(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`)return Array.from(e);if(n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return i(e,t)}}function i(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function a(e,t){var n=typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n)return(n=n.call(e)).next.bind(n);if(Array.isArray(e)||(n=r(e))||t&&e&&typeof e.length==`number`){n&&(e=n);var i=0;return function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}}}throw TypeError(`Invalid attempt to iterate non-iterable instance.
20
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function o(){return{baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:``,highlight:null,langPrefix:`language-`,mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}}e.defaults=o();function s(t){e.defaults=t}var c=/[&<>"']/,l=/[&<>"']/g,u=/[<>"']|&(?!#?\w+;)/,d=/[<>"']|&(?!#?\w+;)/g,f={"&":`&amp;`,"<":`&lt;`,">":`&gt;`,'"':`&quot;`,"'":`&#39;`},p=function(e){return f[e]};function m(e,t){if(t){if(c.test(e))return e.replace(l,p)}else if(u.test(e))return e.replace(d,p);return e}var h=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;function g(e){return e.replace(h,function(e,t){return t=t.toLowerCase(),t===`colon`?`:`:t.charAt(0)===`#`?t.charAt(1)===`x`?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):``})}var _=/(^|[^\[])\^/g;function v(e,t){e=typeof e==`string`?e:e.source,t||=``;var n={replace:function(t,r){return r=r.source||r,r=r.replace(_,`$1`),e=e.replace(t,r),n},getRegex:function(){return new RegExp(e,t)}};return n}var ee=/[^\w:]/g,te=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;function y(e,t,n){if(e){var r;try{r=decodeURIComponent(g(n)).replace(ee,``).toLowerCase()}catch{return null}if(r.indexOf(`javascript:`)===0||r.indexOf(`vbscript:`)===0||r.indexOf(`data:`)===0)return null}t&&!te.test(n)&&(n=ie(t,n));try{n=encodeURI(n).replace(/%25/g,`%`)}catch{return null}return n}var b={},x=/^[^:]+:\/*[^/]*$/,ne=/^([^:]+:)[\s\S]*$/,re=/^([^:]+:\/*[^/]*)[\s\S]*$/;function ie(e,t){b[` `+e]||(x.test(e)?b[` `+e]=e+`/`:b[` `+e]=oe(e,`/`,!0)),e=b[` `+e];var n=e.indexOf(`:`)===-1;return t.substring(0,2)===`//`?n?t:e.replace(ne,`$1`)+t:t.charAt(0)===`/`?n?t:e.replace(re,`$1`)+t:e+t}var S={exec:function(){}};function C(e){for(var t=1,n,r;t<arguments.length;t++)for(r in n=arguments[t],n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r]);return e}function ae(e,t){var n=e.replace(/\|/g,function(e,t,n){for(var r=!1,i=t;--i>=0&&n[i]===`\\`;)r=!r;return r?`|`:` |`}).split(/ \|/),r=0;if(n[0].trim()||n.shift(),n.length>0&&!n[n.length-1].trim()&&n.pop(),n.length>t)n.splice(t);else for(;n.length<t;)n.push(``);for(;r<n.length;r++)n[r]=n[r].trim().replace(/\\\|/g,`|`);return n}function oe(e,t,n){var r=e.length;if(r===0)return``;for(var i=0;i<r;){var a=e.charAt(r-i-1);if(a===t&&!n)i++;else if(a!==t&&n)i++;else break}return e.slice(0,r-i)}function se(e,t){if(e.indexOf(t[1])===-1)return-1;for(var n=e.length,r=0,i=0;i<n;i++)if(e[i]===`\\`)i++;else if(e[i]===t[0])r++;else if(e[i]===t[1]&&(r--,r<0))return i;return-1}function ce(e){e&&e.sanitize&&e.silent}function le(e,t){if(t<1)return``;for(var n=``;t>1;)t&1&&(n+=e),t>>=1,e+=e;return n+e}function ue(e,t,n,r){var i=t.href,a=t.title?m(t.title):null,o=e[1].replace(/\\([\[\]])/g,`$1`);if(e[0].charAt(0)!==`!`){r.state.inLink=!0;var s={type:`link`,raw:n,href:i,title:a,text:o,tokens:r.inlineTokens(o,[])};return r.state.inLink=!1,s}return{type:`image`,raw:n,href:i,title:a,text:m(o)}}function de(e,t){var n=e.match(/^(\s+)(?:```)/);if(n===null)return t;var r=n[1];return t.split(`
21
+ `).map(function(e){var t=e.match(/^\s+/);return t===null?e:t[0].length>=r.length?e.slice(r.length):e}).join(`
22
+ `)}var fe=function(){function t(t){this.options=t||e.defaults}var n=t.prototype;return n.space=function(e){var t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:`space`,raw:t[0]}},n.code=function(e){var t=this.rules.block.code.exec(e);if(t){var n=t[0].replace(/^ {1,4}/gm,``);return{type:`code`,raw:t[0],codeBlockStyle:`indented`,text:this.options.pedantic?n:oe(n,`
23
+ `)}}},n.fences=function(e){var t=this.rules.block.fences.exec(e);if(t){var n=t[0],r=de(n,t[3]||``);return{type:`code`,raw:n,lang:t[2]?t[2].trim():t[2],text:r}}},n.heading=function(e){var t=this.rules.block.heading.exec(e);if(t){var n=t[2].trim();if(/#$/.test(n)){var r=oe(n,`#`);(this.options.pedantic||!r||/ $/.test(r))&&(n=r.trim())}var i={type:`heading`,raw:t[0],depth:t[1].length,text:n,tokens:[]};return this.lexer.inline(i.text,i.tokens),i}},n.hr=function(e){var t=this.rules.block.hr.exec(e);if(t)return{type:`hr`,raw:t[0]}},n.blockquote=function(e){var t=this.rules.block.blockquote.exec(e);if(t){var n=t[0].replace(/^ *>[ \t]?/gm,``);return{type:`blockquote`,raw:t[0],tokens:this.lexer.blockTokens(n,[]),text:n}}},n.list=function(e){var t=this.rules.block.list.exec(e);if(t){var n,r,i,o,s,c,l,u,d,f,p,m,h=t[1].trim(),g=h.length>1,_={type:`list`,raw:``,ordered:g,start:g?+h.slice(0,-1):``,loose:!1,items:[]};h=g?`\\d{1,9}\\`+h.slice(-1):`\\`+h,this.options.pedantic&&(h=g?h:`[*+-]`);for(var v=RegExp(`^( {0,3}`+h+`)((?:[ ][^\\n]*)?(?:\\n|$))`);e&&(m=!1,!(!(t=v.exec(e))||this.rules.block.hr.test(e)));){if(n=t[0],e=e.substring(n.length),u=t[2].split(`
24
+ `,1)[0],d=e.split(`
25
+ `,1)[0],this.options.pedantic?(o=2,p=u.trimLeft()):(o=t[2].search(/[^ ]/),o=o>4?1:o,p=u.slice(o),o+=t[1].length),c=!1,!u&&/^ *$/.test(d)&&(n+=d+`
26
+ `,e=e.substring(d.length+1),m=!0),!m)for(var ee=RegExp(`^ {0,`+Math.min(3,o-1)+`}(?:[*+-]|\\d{1,9}[.)])((?: [^\\n]*)?(?:\\n|$))`),te=RegExp(`^ {0,`+Math.min(3,o-1)+`}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`);e&&(f=e.split(`
27
+ `,1)[0],u=f,this.options.pedantic&&(u=u.replace(/^ {1,4}(?=( {4})*[^ ])/g,` `)),!(ee.test(u)||te.test(e)));){if(u.search(/[^ ]/)>=o||!u.trim())p+=`
28
+ `+u.slice(o);else if(!c)p+=`
29
+ `+u;else break;!c&&!u.trim()&&(c=!0),n+=f+`
30
+ `,e=e.substring(f.length+1)}_.loose||(l?_.loose=!0:/\n *\n *$/.test(n)&&(l=!0)),this.options.gfm&&(r=/^\[[ xX]\] /.exec(p),r&&(i=r[0]!==`[ ] `,p=p.replace(/^\[[ xX]\] +/,``))),_.items.push({type:`list_item`,raw:n,task:!!r,checked:i,loose:!1,text:p}),_.raw+=n}_.items[_.items.length-1].raw=n.trimRight(),_.items[_.items.length-1].text=p.trimRight(),_.raw=_.raw.trimRight();var y=_.items.length;for(s=0;s<y;s++){this.lexer.state.top=!1,_.items[s].tokens=this.lexer.blockTokens(_.items[s].text,[]);var b=_.items[s].tokens.filter(function(e){return e.type===`space`}),x=b.every(function(e){for(var t=e.raw.split(``),n=0,r=a(t),i;!(i=r()).done;)if(i.value===`
31
+ `&&(n+=1),n>1)return!0;return!1});!_.loose&&b.length&&x&&(_.loose=!0,_.items[s].loose=!0)}return _}},n.html=function(e){var t=this.rules.block.html.exec(e);if(t){var n={type:`html`,raw:t[0],pre:!this.options.sanitizer&&(t[1]===`pre`||t[1]===`script`||t[1]===`style`),text:t[0]};return this.options.sanitize&&(n.type=`paragraph`,n.text=this.options.sanitizer?this.options.sanitizer(t[0]):m(t[0]),n.tokens=[],this.lexer.inline(n.text,n.tokens)),n}},n.def=function(e){var t=this.rules.block.def.exec(e);if(t)return t[3]&&=t[3].substring(1,t[3].length-1),{type:`def`,tag:t[1].toLowerCase().replace(/\s+/g,` `),raw:t[0],href:t[2],title:t[3]}},n.table=function(e){var t=this.rules.block.table.exec(e);if(t){var n={type:`table`,header:ae(t[1]).map(function(e){return{text:e}}),align:t[2].replace(/^ *|\| *$/g,``).split(/ *\| */),rows:t[3]&&t[3].trim()?t[3].replace(/\n[ \t]*$/,``).split(`
32
+ `):[]};if(n.header.length===n.align.length){n.raw=t[0];var r=n.align.length,i,a,o,s;for(i=0;i<r;i++)/^ *-+: *$/.test(n.align[i])?n.align[i]=`right`:/^ *:-+: *$/.test(n.align[i])?n.align[i]=`center`:/^ *:-+ *$/.test(n.align[i])?n.align[i]=`left`:n.align[i]=null;for(r=n.rows.length,i=0;i<r;i++)n.rows[i]=ae(n.rows[i],n.header.length).map(function(e){return{text:e}});for(r=n.header.length,a=0;a<r;a++)n.header[a].tokens=[],this.lexer.inline(n.header[a].text,n.header[a].tokens);for(r=n.rows.length,a=0;a<r;a++)for(s=n.rows[a],o=0;o<s.length;o++)s[o].tokens=[],this.lexer.inline(s[o].text,s[o].tokens);return n}}},n.lheading=function(e){var t=this.rules.block.lheading.exec(e);if(t){var n={type:`heading`,raw:t[0],depth:t[2].charAt(0)===`=`?1:2,text:t[1],tokens:[]};return this.lexer.inline(n.text,n.tokens),n}},n.paragraph=function(e){var t=this.rules.block.paragraph.exec(e);if(t){var n={type:`paragraph`,raw:t[0],text:t[1].charAt(t[1].length-1)===`
33
+ `?t[1].slice(0,-1):t[1],tokens:[]};return this.lexer.inline(n.text,n.tokens),n}},n.text=function(e){var t=this.rules.block.text.exec(e);if(t){var n={type:`text`,raw:t[0],text:t[0],tokens:[]};return this.lexer.inline(n.text,n.tokens),n}},n.escape=function(e){var t=this.rules.inline.escape.exec(e);if(t)return{type:`escape`,raw:t[0],text:m(t[1])}},n.tag=function(e){var t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&/^<a /i.test(t[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&/^<\/a>/i.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:this.options.sanitize?`text`:`html`,raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(t[0]):m(t[0]):t[0]}},n.link=function(e){var t=this.rules.inline.link.exec(e);if(t){var n=t[2].trim();if(!this.options.pedantic&&/^</.test(n)){if(!/>$/.test(n))return;var r=oe(n.slice(0,-1),`\\`);if((n.length-r.length)%2==0)return}else{var i=se(t[2],`()`);if(i>-1){var a=(t[0].indexOf(`!`)===0?5:4)+t[1].length+i;t[2]=t[2].substring(0,i),t[0]=t[0].substring(0,a).trim(),t[3]=``}}var o=t[2],s=``;if(this.options.pedantic){var c=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(o);c&&(o=c[1],s=c[3])}else s=t[3]?t[3].slice(1,-1):``;return o=o.trim(),/^</.test(o)&&(o=this.options.pedantic&&!/>$/.test(n)?o.slice(1):o.slice(1,-1)),ue(t,{href:o&&o.replace(this.rules.inline._escapes,`$1`),title:s&&s.replace(this.rules.inline._escapes,`$1`)},t[0],this.lexer)}},n.reflink=function(e,t){var n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){var r=(n[2]||n[1]).replace(/\s+/g,` `);if(r=t[r.toLowerCase()],!r||!r.href){var i=n[0].charAt(0);return{type:`text`,raw:i,text:i}}return ue(n,r,n[0],this.lexer)}},n.emStrong=function(e,t,n){n===void 0&&(n=``);var r=this.rules.inline.emStrong.lDelim.exec(e);if(r&&!(r[3]&&n.match(/(?:[0-9A-Za-z\xAA\xB2\xB3\xB5\xB9\xBA\xBC-\xBE\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u0660-\u0669\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0966-\u096F\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09E6-\u09F1\u09F4-\u09F9\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AE6-\u0AEF\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B66-\u0B6F\u0B71-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0BE6-\u0BF2\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C66-\u0C6F\u0C78-\u0C7E\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CE6-\u0CEF\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D58-\u0D61\u0D66-\u0D78\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DE6-\u0DEF\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F20-\u0F33\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F-\u1049\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u1090-\u1099\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1369-\u137C\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A16\u1A20-\u1A54\u1A80-\u1A89\u1A90-\u1A99\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B50-\u1B59\u1B83-\u1BA0\u1BAE-\u1BE5\u1C00-\u1C23\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2070\u2071\u2074-\u2079\u207F-\u2089\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2150-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2CFD\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u3192-\u3195\u31A0-\u31BF\u31F0-\u31FF\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA830-\uA835\uA840-\uA873\uA882-\uA8B3\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA900-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF-\uA9D9\uA9E0-\uA9E4\uA9E6-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA50-\uAA59\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDE80-\uDE9C\uDEA0-\uDED0\uDEE1-\uDEFB\uDF00-\uDF23\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC58-\uDC76\uDC79-\uDC9E\uDCA7-\uDCAF\uDCE0-\uDCF2\uDCF4\uDCF5\uDCFB-\uDD1B\uDD20-\uDD39\uDD80-\uDDB7\uDDBC-\uDDCF\uDDD2-\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE40-\uDE48\uDE60-\uDE7E\uDE80-\uDE9F\uDEC0-\uDEC7\uDEC9-\uDEE4\uDEEB-\uDEEF\uDF00-\uDF35\uDF40-\uDF55\uDF58-\uDF72\uDF78-\uDF91\uDFA9-\uDFAF]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDCFA-\uDD23\uDD30-\uDD39\uDE60-\uDE7E\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF27\uDF30-\uDF45\uDF51-\uDF54\uDF70-\uDF81\uDFB0-\uDFCB\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC52-\uDC6F\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD03-\uDD26\uDD36-\uDD3F\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDD0-\uDDDA\uDDDC\uDDE1-\uDDF4\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDEF0-\uDEF9\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC50-\uDC59\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE50-\uDE59\uDE80-\uDEAA\uDEB8\uDEC0-\uDEC9\uDF00-\uDF1A\uDF30-\uDF3B\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCF2\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDD50-\uDD59\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC50-\uDC6C\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD50-\uDD59\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDDA0-\uDDA9\uDEE0-\uDEF2\uDFB0\uDFC0-\uDFD4]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDE70-\uDEBE\uDEC0-\uDEC9\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF50-\uDF59\uDF5B-\uDF61\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE96\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD834[\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD837[\uDF00-\uDF1E]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD40-\uDD49\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB\uDEF0-\uDEF9]|\uD839[\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDCC7-\uDCCF\uDD00-\uDD43\uDD4B\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF38\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])/))){var i=r[1]||r[2]||``;if(!i||i&&(n===``||this.rules.inline.punctuation.exec(n))){var a=r[0].length-1,o,s,c=a,l=0,u=r[0][0]===`*`?this.rules.inline.emStrong.rDelimAst:this.rules.inline.emStrong.rDelimUnd;for(u.lastIndex=0,t=t.slice(-1*e.length+a);(r=u.exec(t))!=null;)if(o=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],o){if(s=o.length,r[3]||r[4]){c+=s;continue}else if((r[5]||r[6])&&a%3&&!((a+s)%3)){l+=s;continue}if(c-=s,!(c>0)){if(s=Math.min(s,s+c+l),Math.min(a,s)%2){var d=e.slice(1,a+r.index+s);return{type:`em`,raw:e.slice(0,a+r.index+s+1),text:d,tokens:this.lexer.inlineTokens(d,[])}}var f=e.slice(2,a+r.index+s-1);return{type:`strong`,raw:e.slice(0,a+r.index+s+1),text:f,tokens:this.lexer.inlineTokens(f,[])}}}}}},n.codespan=function(e){var t=this.rules.inline.code.exec(e);if(t){var n=t[2].replace(/\n/g,` `),r=/[^ ]/.test(n),i=/^ /.test(n)&&/ $/.test(n);return r&&i&&(n=n.substring(1,n.length-1)),n=m(n,!0),{type:`codespan`,raw:t[0],text:n}}},n.br=function(e){var t=this.rules.inline.br.exec(e);if(t)return{type:`br`,raw:t[0]}},n.del=function(e){var t=this.rules.inline.del.exec(e);if(t)return{type:`del`,raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2],[])}},n.autolink=function(e,t){var n=this.rules.inline.autolink.exec(e);if(n){var r,i;return n[2]===`@`?(r=m(this.options.mangle?t(n[1]):n[1]),i=`mailto:`+r):(r=m(n[1]),i=r),{type:`link`,raw:n[0],text:r,href:i,tokens:[{type:`text`,raw:r,text:r}]}}},n.url=function(e,t){var n;if(n=this.rules.inline.url.exec(e)){var r,i;if(n[2]===`@`)r=m(this.options.mangle?t(n[0]):n[0]),i=`mailto:`+r;else{var a;do a=n[0],n[0]=this.rules.inline._backpedal.exec(n[0])[0];while(a!==n[0]);r=m(n[0]),i=n[1]===`www.`?`http://`+r:r}return{type:`link`,raw:n[0],text:r,href:i,tokens:[{type:`text`,raw:r,text:r}]}}},n.inlineText=function(e,t){var n=this.rules.inline.text.exec(e);if(n){var r=this.lexer.state.inRawBlock?this.options.sanitize?this.options.sanitizer?this.options.sanitizer(n[0]):m(n[0]):n[0]:m(this.options.smartypants?t(n[0]):n[0]);return{type:`text`,raw:n[0],text:r}}},t}(),w={newline:/^(?: *(?:\n|$))+/,code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?=\n|$)|$)/,hr:/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/,html:`^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))`,def:/^ {0,3}\[(label)\]: *(?:\n *)?<?([^\s>]+)>?(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/,table:S,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,text:/^[^\n]+/};w._label=/(?!\s*\])(?:\\.|[^\[\]\\])+/,w._title=/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/,w.def=v(w.def).replace(`label`,w._label).replace(`title`,w._title).getRegex(),w.bullet=/(?:[*+-]|\d{1,9}[.)])/,w.listItemStart=v(/^( *)(bull) */).replace(`bull`,w.bullet).getRegex(),w.list=v(w.list).replace(/bull/g,w.bullet).replace(`hr`,`\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))`).replace(`def`,`\\n+(?=`+w.def.source+`)`).getRegex(),w._tag=`address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul`,w._comment=/<!--(?!-?>)[\s\S]*?(?:-->|$)/,w.html=v(w.html,`i`).replace(`comment`,w._comment).replace(`tag`,w._tag).replace(`attribute`,/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),w.paragraph=v(w._paragraph).replace(`hr`,w.hr).replace(`heading`,` {0,3}#{1,6} `).replace(`|lheading`,``).replace(`|table`,``).replace(`blockquote`,` {0,3}>`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace(`list`,` {0,3}(?:[*+-]|1[.)]) `).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,w._tag).getRegex(),w.blockquote=v(w.blockquote).replace(`paragraph`,w.paragraph).getRegex(),w.normal=C({},w),w.gfm=C({},w.normal,{table:`^ *([^\\n ].*\\|.*)\\n {0,3}(?:\\| *)?(:?-+:? *(?:\\| *:?-+:? *)*)(?:\\| *)?(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)`}),w.gfm.table=v(w.gfm.table).replace(`hr`,w.hr).replace(`heading`,` {0,3}#{1,6} `).replace(`blockquote`,` {0,3}>`).replace(`code`,` {4}[^\\n]`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace(`list`,` {0,3}(?:[*+-]|1[.)]) `).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,w._tag).getRegex(),w.gfm.paragraph=v(w._paragraph).replace(`hr`,w.hr).replace(`heading`,` {0,3}#{1,6} `).replace(`|lheading`,``).replace(`table`,w.gfm.table).replace(`blockquote`,` {0,3}>`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace(`list`,` {0,3}(?:[*+-]|1[.)]) `).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,w._tag).getRegex(),w.pedantic=C({},w.normal,{html:v(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace(`comment`,w._comment).replace(/tag/g,`(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b`).getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:S,paragraph:v(w.normal._paragraph).replace(`hr`,w.hr).replace(`heading`,` *#{1,6} *[^
34
+ ]`).replace(`lheading`,w.lheading).replace(`blockquote`,` {0,3}>`).replace(`|fences`,``).replace(`|list`,``).replace(`|html`,``).getRegex()});var T={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:S,tag:`^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>`,link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(ref)\]/,nolink:/^!?\[(ref)\](?:\[\])?/,reflinkSearch:`reflink|nolink(?!\\()`,emStrong:{lDelim:/^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/,rDelimAst:/^[^_*]*?\_\_[^_*]*?\*[^_*]*?(?=\_\_)|[^*]+(?=[^*])|[punct_](\*+)(?=[\s]|$)|[^punct*_\s](\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|[^punct*_\s](\*+)(?=[^punct*_\s])/,rDelimUnd:/^[^_*]*?\*\*[^_*]*?\_[^_*]*?(?=\*\*)|[^_]+(?=[^_])|[punct*](\_+)(?=[\s]|$)|[^punct*_\s](\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:S,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,punctuation:/^([\spunctuation])/};T._punctuation=`!"#$%&'()+\\-.,/:;<=>?@\\[\\]\`^{|}~`,T.punctuation=v(T.punctuation).replace(/punctuation/g,T._punctuation).getRegex(),T.blockSkip=/\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g,T.escapedEmSt=/\\\*|\\_/g,T._comment=v(w._comment).replace(`(?:-->|$)`,`-->`).getRegex(),T.emStrong.lDelim=v(T.emStrong.lDelim).replace(/punct/g,T._punctuation).getRegex(),T.emStrong.rDelimAst=v(T.emStrong.rDelimAst,`g`).replace(/punct/g,T._punctuation).getRegex(),T.emStrong.rDelimUnd=v(T.emStrong.rDelimUnd,`g`).replace(/punct/g,T._punctuation).getRegex(),T._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,T._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,T._email=/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/,T.autolink=v(T.autolink).replace(`scheme`,T._scheme).replace(`email`,T._email).getRegex(),T._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,T.tag=v(T.tag).replace(`comment`,T._comment).replace(`attribute`,T._attribute).getRegex(),T._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,T._href=/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/,T._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,T.link=v(T.link).replace(`label`,T._label).replace(`href`,T._href).replace(`title`,T._title).getRegex(),T.reflink=v(T.reflink).replace(`label`,T._label).replace(`ref`,w._label).getRegex(),T.nolink=v(T.nolink).replace(`ref`,w._label).getRegex(),T.reflinkSearch=v(T.reflinkSearch,`g`).replace(`reflink`,T.reflink).replace(`nolink`,T.nolink).getRegex(),T.normal=C({},T),T.pedantic=C({},T.normal,{strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:v(/^!?\[(label)\]\((.*?)\)/).replace(`label`,T._label).getRegex(),reflink:v(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace(`label`,T._label).getRegex()}),T.gfm=C({},T.normal,{escape:v(T.escape).replace(`])`,`~|])`).getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/}),T.gfm.url=v(T.gfm.url,`i`).replace(`email`,T.gfm._extended_email).getRegex(),T.breaks=C({},T.gfm,{br:v(T.br).replace(`{2,}`,`*`).getRegex(),text:v(T.gfm.text).replace(`\\b_`,`\\b_| {2,}\\n`).replace(/\{2,\}/g,`*`).getRegex()});function pe(e){return e.replace(/---/g,`—`).replace(/--/g,`–`).replace(/(^|[-\u2014/(\[{"\s])'/g,`$1‘`).replace(/'/g,`’`).replace(/(^|[-\u2014/(\[{\u2018\s])"/g,`$1“`).replace(/"/g,`”`).replace(/\.{3}/g,`…`)}function me(e){var t=``,n,r,i=e.length;for(n=0;n<i;n++)r=e.charCodeAt(n),Math.random()>.5&&(r=`x`+r.toString(16)),t+=`&#`+r+`;`;return t}var he=function(){function t(t){this.tokens=[],this.tokens.links=Object.create(null),this.options=t||e.defaults,this.options.tokenizer=this.options.tokenizer||new fe,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};var n={block:w.normal,inline:T.normal};this.options.pedantic?(n.block=w.pedantic,n.inline=T.pedantic):this.options.gfm&&(n.block=w.gfm,this.options.breaks?n.inline=T.breaks:n.inline=T.gfm),this.tokenizer.rules=n}t.lex=function(e,n){return new t(n).lex(e)},t.lexInline=function(e,n){return new t(n).inlineTokens(e)};var r=t.prototype;return r.lex=function(e){e=e.replace(/\r\n|\r/g,`
35
+ `),this.blockTokens(e,this.tokens);for(var t;t=this.inlineQueue.shift();)this.inlineTokens(t.src,t.tokens);return this.tokens},r.blockTokens=function(e,t){var n=this;t===void 0&&(t=[]),e=this.options.pedantic?e.replace(/\t/g,` `).replace(/^ +$/gm,``):e.replace(/^( *)(\t+)/gm,function(e,t,n){return t+` `.repeat(n.length)});for(var r,i,a,o;e;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(function(i){return(r=i.call({lexer:n},e,t))?(e=e.substring(r.raw.length),t.push(r),!0):!1}))){if(r=this.tokenizer.space(e)){e=e.substring(r.raw.length),r.raw.length===1&&t.length>0?t[t.length-1].raw+=`
36
+ `:t.push(r);continue}if(r=this.tokenizer.code(e)){e=e.substring(r.raw.length),i=t[t.length-1],i&&(i.type===`paragraph`||i.type===`text`)?(i.raw+=`
37
+ `+r.raw,i.text+=`
38
+ `+r.text,this.inlineQueue[this.inlineQueue.length-1].src=i.text):t.push(r);continue}if(r=this.tokenizer.fences(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.heading(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.hr(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.blockquote(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.list(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.html(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.def(e)){e=e.substring(r.raw.length),i=t[t.length-1],i&&(i.type===`paragraph`||i.type===`text`)?(i.raw+=`
39
+ `+r.raw,i.text+=`
40
+ `+r.raw,this.inlineQueue[this.inlineQueue.length-1].src=i.text):this.tokens.links[r.tag]||(this.tokens.links[r.tag]={href:r.href,title:r.title});continue}if(r=this.tokenizer.table(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.lheading(e)){e=e.substring(r.raw.length),t.push(r);continue}if(a=e,this.options.extensions&&this.options.extensions.startBlock&&(function(){var t=1/0,r=e.slice(1),i=void 0;n.options.extensions.startBlock.forEach(function(e){i=e.call({lexer:this},r),typeof i==`number`&&i>=0&&(t=Math.min(t,i))}),t<1/0&&t>=0&&(a=e.substring(0,t+1))})(),this.state.top&&(r=this.tokenizer.paragraph(a))){i=t[t.length-1],o&&i.type===`paragraph`?(i.raw+=`
41
+ `+r.raw,i.text+=`
42
+ `+r.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=i.text):t.push(r),o=a.length!==e.length,e=e.substring(r.raw.length);continue}if(r=this.tokenizer.text(e)){e=e.substring(r.raw.length),i=t[t.length-1],i&&i.type===`text`?(i.raw+=`
43
+ `+r.raw,i.text+=`
44
+ `+r.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=i.text):t.push(r);continue}if(e){var s=`Infinite loop on byte: `+e.charCodeAt(0);if(this.options.silent){console.error(s);break}else throw Error(s)}}return this.state.top=!0,t},r.inline=function(e,t){this.inlineQueue.push({src:e,tokens:t})},r.inlineTokens=function(e,t){var n=this;t===void 0&&(t=[]);var r,i,a,o=e,s,c,l;if(this.tokens.links){var u=Object.keys(this.tokens.links);if(u.length>0)for(;(s=this.tokenizer.rules.inline.reflinkSearch.exec(o))!=null;)u.includes(s[0].slice(s[0].lastIndexOf(`[`)+1,-1))&&(o=o.slice(0,s.index)+`[`+le(`a`,s[0].length-2)+`]`+o.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(s=this.tokenizer.rules.inline.blockSkip.exec(o))!=null;)o=o.slice(0,s.index)+`[`+le(`a`,s[0].length-2)+`]`+o.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(s=this.tokenizer.rules.inline.escapedEmSt.exec(o))!=null;)o=o.slice(0,s.index)+`++`+o.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex);for(;e;)if(c||(l=``),c=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(function(i){return(r=i.call({lexer:n},e,t))?(e=e.substring(r.raw.length),t.push(r),!0):!1}))){if(r=this.tokenizer.escape(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.tag(e)){e=e.substring(r.raw.length),i=t[t.length-1],i&&r.type===`text`&&i.type===`text`?(i.raw+=r.raw,i.text+=r.text):t.push(r);continue}if(r=this.tokenizer.link(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(r.raw.length),i=t[t.length-1],i&&r.type===`text`&&i.type===`text`?(i.raw+=r.raw,i.text+=r.text):t.push(r);continue}if(r=this.tokenizer.emStrong(e,o,l)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.codespan(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.br(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.del(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.autolink(e,me)){e=e.substring(r.raw.length),t.push(r);continue}if(!this.state.inLink&&(r=this.tokenizer.url(e,me))){e=e.substring(r.raw.length),t.push(r);continue}if(a=e,this.options.extensions&&this.options.extensions.startInline&&(function(){var t=1/0,r=e.slice(1),i=void 0;n.options.extensions.startInline.forEach(function(e){i=e.call({lexer:this},r),typeof i==`number`&&i>=0&&(t=Math.min(t,i))}),t<1/0&&t>=0&&(a=e.substring(0,t+1))})(),r=this.tokenizer.inlineText(a,pe)){e=e.substring(r.raw.length),r.raw.slice(-1)!==`_`&&(l=r.raw.slice(-1)),c=!0,i=t[t.length-1],i&&i.type===`text`?(i.raw+=r.raw,i.text+=r.text):t.push(r);continue}if(e){var d=`Infinite loop on byte: `+e.charCodeAt(0);if(this.options.silent){console.error(d);break}else throw Error(d)}}return t},n(t,null,[{key:`rules`,get:function(){return{block:w,inline:T}}}]),t}(),ge=function(){function t(t){this.options=t||e.defaults}var n=t.prototype;return n.code=function(e,t,n){var r=(t||``).match(/\S*/)[0];if(this.options.highlight){var i=this.options.highlight(e,r);i!=null&&i!==e&&(n=!0,e=i)}return e=e.replace(/\n$/,``)+`
45
+ `,r?`<pre><code class="`+this.options.langPrefix+m(r,!0)+`">`+(n?e:m(e,!0))+`</code></pre>
46
+ `:`<pre><code>`+(n?e:m(e,!0))+`</code></pre>
47
+ `},n.blockquote=function(e){return`<blockquote>
48
+ `+e+`</blockquote>
49
+ `},n.html=function(e){return e},n.heading=function(e,t,n,r){if(this.options.headerIds){var i=this.options.headerPrefix+r.slug(n);return`<h`+t+` id="`+i+`">`+e+`</h`+t+`>
50
+ `}return`<h`+t+`>`+e+`</h`+t+`>
51
+ `},n.hr=function(){return this.options.xhtml?`<hr/>
52
+ `:`<hr>
53
+ `},n.list=function(e,t,n){var r=t?`ol`:`ul`,i=t&&n!==1?` start="`+n+`"`:``;return`<`+r+i+`>
54
+ `+e+`</`+r+`>
55
+ `},n.listitem=function(e){return`<li>`+e+`</li>
56
+ `},n.checkbox=function(e){return`<input `+(e?`checked="" `:``)+`disabled="" type="checkbox"`+(this.options.xhtml?` /`:``)+`> `},n.paragraph=function(e){return`<p>`+e+`</p>
57
+ `},n.table=function(e,t){return t&&=`<tbody>`+t+`</tbody>`,`<table>
58
+ <thead>
59
+ `+e+`</thead>
60
+ `+t+`</table>
61
+ `},n.tablerow=function(e){return`<tr>
62
+ `+e+`</tr>
63
+ `},n.tablecell=function(e,t){var n=t.header?`th`:`td`;return(t.align?`<`+n+` align="`+t.align+`">`:`<`+n+`>`)+e+(`</`+n+`>
64
+ `)},n.strong=function(e){return`<strong>`+e+`</strong>`},n.em=function(e){return`<em>`+e+`</em>`},n.codespan=function(e){return`<code>`+e+`</code>`},n.br=function(){return this.options.xhtml?`<br/>`:`<br>`},n.del=function(e){return`<del>`+e+`</del>`},n.link=function(e,t,n){if(e=y(this.options.sanitize,this.options.baseUrl,e),e===null)return n;var r=`<a href="`+m(e)+`"`;return t&&(r+=` title="`+t+`"`),r+=`>`+n+`</a>`,r},n.image=function(e,t,n){if(e=y(this.options.sanitize,this.options.baseUrl,e),e===null)return n;var r=`<img src="`+e+`" alt="`+n+`"`;return t&&(r+=` title="`+t+`"`),r+=this.options.xhtml?`/>`:`>`,r},n.text=function(e){return e},t}(),_e=function(){function e(){}var t=e.prototype;return t.strong=function(e){return e},t.em=function(e){return e},t.codespan=function(e){return e},t.del=function(e){return e},t.html=function(e){return e},t.text=function(e){return e},t.link=function(e,t,n){return``+n},t.image=function(e,t,n){return``+n},t.br=function(){return``},e}(),ve=function(){function e(){this.seen={}}var t=e.prototype;return t.serialize=function(e){return e.toLowerCase().trim().replace(/<[!\/a-z].*?>/gi,``).replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,``).replace(/\s/g,`-`)},t.getNextSafeSlug=function(e,t){var n=e,r=0;if(this.seen.hasOwnProperty(n)){r=this.seen[e];do r++,n=e+`-`+r;while(this.seen.hasOwnProperty(n))}return t||(this.seen[e]=r,this.seen[n]=0),n},t.slug=function(e,t){t===void 0&&(t={});var n=this.serialize(e);return this.getNextSafeSlug(n,t.dryrun)},e}(),ye=function(){function t(t){this.options=t||e.defaults,this.options.renderer=this.options.renderer||new ge,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new _e,this.slugger=new ve}t.parse=function(e,n){return new t(n).parse(e)},t.parseInline=function(e,n){return new t(n).parseInline(e)};var n=t.prototype;return n.parse=function(e,t){t===void 0&&(t=!0);var n=``,r,i,a,o,s,c,l,u,d,f,p,m,h,_,v,ee,te,y,b,x=e.length;for(r=0;r<x;r++){if(f=e[r],this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[f.type]&&(b=this.options.extensions.renderers[f.type].call({parser:this},f),b!==!1||![`space`,`hr`,`heading`,`code`,`table`,`blockquote`,`list`,`html`,`paragraph`,`text`].includes(f.type))){n+=b||``;continue}switch(f.type){case`space`:continue;case`hr`:n+=this.renderer.hr();continue;case`heading`:n+=this.renderer.heading(this.parseInline(f.tokens),f.depth,g(this.parseInline(f.tokens,this.textRenderer)),this.slugger);continue;case`code`:n+=this.renderer.code(f.text,f.lang,f.escaped);continue;case`table`:for(u=``,l=``,o=f.header.length,i=0;i<o;i++)l+=this.renderer.tablecell(this.parseInline(f.header[i].tokens),{header:!0,align:f.align[i]});for(u+=this.renderer.tablerow(l),d=``,o=f.rows.length,i=0;i<o;i++){for(c=f.rows[i],l=``,s=c.length,a=0;a<s;a++)l+=this.renderer.tablecell(this.parseInline(c[a].tokens),{header:!1,align:f.align[a]});d+=this.renderer.tablerow(l)}n+=this.renderer.table(u,d);continue;case`blockquote`:d=this.parse(f.tokens),n+=this.renderer.blockquote(d);continue;case`list`:for(p=f.ordered,m=f.start,h=f.loose,o=f.items.length,d=``,i=0;i<o;i++)v=f.items[i],ee=v.checked,te=v.task,_=``,v.task&&(y=this.renderer.checkbox(ee),h?v.tokens.length>0&&v.tokens[0].type===`paragraph`?(v.tokens[0].text=y+` `+v.tokens[0].text,v.tokens[0].tokens&&v.tokens[0].tokens.length>0&&v.tokens[0].tokens[0].type===`text`&&(v.tokens[0].tokens[0].text=y+` `+v.tokens[0].tokens[0].text)):v.tokens.unshift({type:`text`,text:y}):_+=y),_+=this.parse(v.tokens,h),d+=this.renderer.listitem(_,te,ee);n+=this.renderer.list(d,p,m);continue;case`html`:n+=this.renderer.html(f.text);continue;case`paragraph`:n+=this.renderer.paragraph(this.parseInline(f.tokens));continue;case`text`:for(d=f.tokens?this.parseInline(f.tokens):f.text;r+1<x&&e[r+1].type===`text`;)f=e[++r],d+=`
65
+ `+(f.tokens?this.parseInline(f.tokens):f.text);n+=t?this.renderer.paragraph(d):d;continue;default:var ne=`Token with "`+f.type+`" type was not found.`;if(this.options.silent){console.error(ne);return}else throw Error(ne)}}return n},n.parseInline=function(e,t){t||=this.renderer;var n=``,r,i,a,o=e.length;for(r=0;r<o;r++){if(i=e[r],this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[i.type]&&(a=this.options.extensions.renderers[i.type].call({parser:this},i),a!==!1||![`escape`,`html`,`link`,`image`,`strong`,`em`,`codespan`,`br`,`del`,`text`].includes(i.type))){n+=a||``;continue}switch(i.type){case`escape`:n+=t.text(i.text);break;case`html`:n+=t.html(i.text);break;case`link`:n+=t.link(i.href,i.title,this.parseInline(i.tokens,t));break;case`image`:n+=t.image(i.href,i.title,i.text);break;case`strong`:n+=t.strong(this.parseInline(i.tokens,t));break;case`em`:n+=t.em(this.parseInline(i.tokens,t));break;case`codespan`:n+=t.codespan(i.text);break;case`br`:n+=t.br();break;case`del`:n+=t.del(this.parseInline(i.tokens,t));break;case`text`:n+=t.text(i.text);break;default:var s=`Token with "`+i.type+`" type was not found.`;if(this.options.silent){console.error(s);return}else throw Error(s)}}return n},t}();function E(e,t,n){if(e==null)throw Error(`marked(): input parameter is undefined or null`);if(typeof e!=`string`)throw Error(`marked(): input parameter is of type `+Object.prototype.toString.call(e)+`, string expected`);if(typeof t==`function`&&(n=t,t=null),t=C({},E.defaults,t||{}),ce(t),n){var r=t.highlight,i;try{i=he.lex(e,t)}catch(e){return n(e)}var a=function(e){var a;if(!e)try{t.walkTokens&&E.walkTokens(i,t.walkTokens),a=ye.parse(i,t)}catch(t){e=t}return t.highlight=r,e?n(e):n(null,a)};if(!r||r.length<3||(delete t.highlight,!i.length))return a();var o=0;E.walkTokens(i,function(e){e.type===`code`&&(o++,setTimeout(function(){r(e.text,e.lang,function(t,n){if(t)return a(t);n!=null&&n!==e.text&&(e.text=n,e.escaped=!0),o--,o===0&&a()})},0))}),o===0&&a();return}try{var s=he.lex(e,t);return t.walkTokens&&E.walkTokens(s,t.walkTokens),ye.parse(s,t)}catch(e){if(e.message+=`
66
+ Please report this to https://github.com/markedjs/marked.`,t.silent)return`<p>An error occurred:</p><pre>`+m(e.message+``,!0)+`</pre>`;throw e}}E.options=E.setOptions=function(e){return C(E.defaults,e),s(E.defaults),E},E.getDefaults=o,E.defaults=e.defaults,E.use=function(){var e=[...arguments],t=C.apply(void 0,[{}].concat(e)),n=E.defaults.extensions||{renderers:{},childTokens:{}},r;e.forEach(function(e){if(e.extensions&&(r=!0,e.extensions.forEach(function(e){if(!e.name)throw Error(`extension name required`);if(e.renderer){var t=n.renderers?n.renderers[e.name]:null;t?n.renderers[e.name]=function(){var n=[...arguments],r=e.renderer.apply(this,n);return r===!1&&(r=t.apply(this,n)),r}:n.renderers[e.name]=e.renderer}if(e.tokenizer){if(!e.level||e.level!==`block`&&e.level!==`inline`)throw Error(`extension level must be 'block' or 'inline'`);n[e.level]?n[e.level].unshift(e.tokenizer):n[e.level]=[e.tokenizer],e.start&&(e.level===`block`?n.startBlock?n.startBlock.push(e.start):n.startBlock=[e.start]:e.level===`inline`&&(n.startInline?n.startInline.push(e.start):n.startInline=[e.start]))}e.childTokens&&(n.childTokens[e.name]=e.childTokens)})),e.renderer&&(function(){var n=E.defaults.renderer||new ge,r=function(t){var r=n[t];n[t]=function(){var i=[...arguments],a=e.renderer[t].apply(n,i);return a===!1&&(a=r.apply(n,i)),a}};for(var i in e.renderer)r(i);t.renderer=n})(),e.tokenizer&&(function(){var n=E.defaults.tokenizer||new fe,r=function(t){var r=n[t];n[t]=function(){var i=[...arguments],a=e.tokenizer[t].apply(n,i);return a===!1&&(a=r.apply(n,i)),a}};for(var i in e.tokenizer)r(i);t.tokenizer=n})(),e.walkTokens){var i=E.defaults.walkTokens;t.walkTokens=function(t){e.walkTokens.call(this,t),i&&i.call(this,t)}}r&&(t.extensions=n),E.setOptions(t)})},E.walkTokens=function(e,t){for(var n=function(){var e=i.value;switch(t.call(E,e),e.type){case`table`:for(var n=a(e.header),r;!(r=n()).done;){var o=r.value;E.walkTokens(o.tokens,t)}for(var s=a(e.rows),c;!(c=s()).done;)for(var l=c.value,u=a(l),d;!(d=u()).done;){var f=d.value;E.walkTokens(f.tokens,t)}break;case`list`:E.walkTokens(e.items,t);break;default:E.defaults.extensions&&E.defaults.extensions.childTokens&&E.defaults.extensions.childTokens[e.type]?E.defaults.extensions.childTokens[e.type].forEach(function(n){E.walkTokens(e[n],t)}):e.tokens&&E.walkTokens(e.tokens,t)}},r=a(e),i;!(i=r()).done;)n()},E.parseInline=function(e,t){if(e==null)throw Error(`marked.parseInline(): input parameter is undefined or null`);if(typeof e!=`string`)throw Error(`marked.parseInline(): input parameter is of type `+Object.prototype.toString.call(e)+`, string expected`);t=C({},E.defaults,t||{}),ce(t);try{var n=he.lexInline(e,t);return t.walkTokens&&E.walkTokens(n,t.walkTokens),ye.parseInline(n,t)}catch(e){if(e.message+=`
67
+ Please report this to https://github.com/markedjs/marked.`,t.silent)return`<p>An error occurred:</p><pre>`+m(e.message+``,!0)+`</pre>`;throw e}},E.Parser=ye,E.parser=ye.parse,E.Renderer=ge,E.TextRenderer=_e,E.Lexer=he,E.lexer=he.lex,E.Tokenizer=fe,E.Slugger=ve,E.parse=E;var be=E.options,xe=E.setOptions,Se=E.use,Ce=E.walkTokens,we=E.parseInline,Te=E,Ee=ye.parse,De=he.lex;e.Lexer=he,e.Parser=ye,e.Renderer=ge,e.Slugger=ve,e.TextRenderer=_e,e.Tokenizer=fe,e.getDefaults=o,e.lexer=De,e.marked=E,e.options=be,e.parse=Te,e.parseInline=we,e.parser=Ee,e.setOptions=xe,e.use=Se,e.walkTokens=Ce,Object.defineProperty(e,`__esModule`,{value:!0})}))})();var fo=uo||t;function po(e,t={},n={}){let r=new a.Zl,i=!1,s=o.$(t),c=function(t){let n;try{n=o.pt(decodeURIComponent(t))}catch{}return n?(n=a.gu(n,t=>{if(e.uris&&e.uris[t])return a.Al.revive(e.uris[t])}),encodeURIComponent(JSON.stringify(n))):t},l=function(t,n){let r=e.uris&&e.uris[t],i=a.Al.revive(r);return n?t.startsWith(a.Io.data+`:`)?t:(i||=a.Al.parse(t),a.Fo.asBrowserUri(i).toString(!0)):!i||a.Al.parse(t).toString()===i.toString()?t:(i.query&&(i=i.with({query:c(i.query)})),i.toString())},u=new fo.Renderer;u.image=(e,t,n)=>{let r=[],i=[];return e&&({href:e,dimensions:r}=o.Zt(e),i.push(`src="${o.Yt(e)}"`)),n&&i.push(`alt="${o.Yt(n)}"`),t&&i.push(`title="${o.Yt(t)}"`),r.length&&(i=i.concat(r)),`<img `+i.join(` `)+`>`},u.link=(e,t,n)=>typeof e==`string`?(e===n&&(n=o.Qt(n)),t=typeof t==`string`?o.Yt(o.Qt(t)):``,e=o.Qt(e),e=e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`&quot;`).replace(/'/g,`&#39;`),`<a href="${e}" title="${t||e}">${n}</a>`):``,u.paragraph=e=>`<p>${e}</p>`;let d=[];if(t.codeBlockRenderer&&(u.code=(e,n)=>{let r=o.nt.nextId(),i=t.codeBlockRenderer(n??``,e);return d.push(i.then(e=>[r,e])),`<div class="code" data-code="${r}">${a.Fc(e)}</div>`}),t.actionHandler){let n=t.actionHandler.disposables.add(new o.gn(s,`click`)),r=t.actionHandler.disposables.add(new o.gn(s,`auxclick`));t.actionHandler.disposables.add(a.Wl.any(n.event,r.event)(n=>{let r=new a.Bo(n);if(!r.leftButton&&!r.middleButton)return;let i=r.target;if(!(i.tagName!==`A`&&(i=i.parentElement,!i||i.tagName!==`A`)))try{let n=i.dataset.href;n&&(e.baseUri&&(n=mo(a.Al.from(e.baseUri),n)),t.actionHandler.callback(n,r))}catch(e){a.fu(e)}finally{r.preventDefault()}}))}e.supportHtml||(n.sanitizer=t=>e.isTrusted&&t.match(/^(<span[^>]+>)|(<\/\s*span>)$/)?t:``,n.sanitize=!0,n.silent=!0),n.renderer=u;let f=e.value??``;f.length>1e5&&(f=`${f.substr(0,1e5)}…`),e.supportThemeIcons&&(f=o.$t(f));let p=fo.parse(f,n);e.supportThemeIcons&&(p=o.it(p).map(e=>typeof e==`string`?e:e.outerHTML).join(``));let m=new DOMParser().parseFromString(ho(e,p),`text/html`);if(m.body.querySelectorAll(`img`).forEach(t=>{let n=t.getAttribute(`src`);if(n){let r=n;try{e.baseUri&&(r=mo(a.Al.from(e.baseUri),r))}catch{}t.src=l(r,!0)}}),m.body.querySelectorAll(`a`).forEach(t=>{let n=t.getAttribute(`href`);if(t.setAttribute(`href`,``),!n||/^data:|javascript:/i.test(n)||/^command:/i.test(n)&&!e.isTrusted||/^command:(\/\/\/)?_workbench\.downloadResource/i.test(n))t.replaceWith(...t.childNodes);else{let r=l(n,!1);e.baseUri&&(r=mo(a.Al.from(e.baseUri),n)),t.dataset.href=r}}),s.innerHTML=ho(e,m.body.innerHTML),d.length>0&&Promise.all(d).then(e=>{var n;if(i)return;let r=new Map(e),o=s.querySelectorAll(`div[data-code]`);for(let e of o){let t=r.get(e.dataset.code??``);t&&a.Eo(e,t)}(n=t.asyncRenderCallback)==null||n.call(t)}),t.asyncRenderCallback)for(let e of s.getElementsByTagName(`img`)){let n=r.add(a.Ka(e,`load`,()=>{n.dispose(),t.asyncRenderCallback()}))}return{element:s,dispose:()=>{i=!0,r.dispose()}}}function mo(e,t){return/^\w[\w\d+.-]*:/.test(t)?t:e.path.endsWith(`/`)?a.j(e,t).toString():a.j(a.C(e),t).toString()}function ho(e,t){let{config:n,allowedSchemes:r}=go(e);a.Lo(`uponSanitizeAttribute`,(e,t)=>{if(t.attrName===`style`||t.attrName===`class`){if(e.tagName===`SPAN`){if(t.attrName===`style`){t.keepAttr=/^(color\:#[0-9a-fA-F]+;)?(background-color\:#[0-9a-fA-F]+;)?$/.test(t.attrValue);return}else if(t.attrName===`class`){t.keepAttr=/^codicon codicon-[a-z\-]+( codicon-modifier-[a-z\-]+)?$/.test(t.attrValue);return}}t.keepAttr=!1;return}});let i=a.yo(r);try{return a.zo(t,Object.assign(Object.assign({},n),{RETURN_TRUSTED_TYPE:!0}))}finally{a.Ro(`uponSanitizeAttribute`),i.dispose()}}function go(e){let t=[a.Io.http,a.Io.https,a.Io.mailto,a.Io.data,a.Io.file,a.Io.vscodeFileResource,a.Io.vscodeRemote,a.Io.vscodeRemoteResource];return e.isTrusted&&t.push(a.Io.command),{config:{ALLOWED_TAGS:`ul.li.p.b.i.code.blockquote.ol.h1.h2.h3.h4.h5.h6.hr.em.pre.table.thead.tbody.tr.th.td.div.del.a.strong.br.img.span`.split(`.`),ALLOWED_ATTR:[`href`,`data-href`,`target`,`title`,`src`,`alt`,`class`,`style`,`data-code`,`width`,`height`,`align`],ALLOW_UNKNOWN_PROTOCOLS:!0},allowedSchemes:t}}var _o=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},vo=function(e,t){return function(n,r){t(n,r,e)}},yo=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},bo=class e{constructor(e,t,n){this._options=e,this._languageService=t,this._openerService=n,this._onDidRenderAsync=new a.Ul,this.onDidRenderAsync=this._onDidRenderAsync.event}dispose(){this._onDidRenderAsync.dispose()}render(e,t,n){if(!e)return{element:document.createElement(`span`),dispose:()=>{}};let r=new a.Zl;return{element:r.add(po(e,Object.assign(Object.assign({},this._getRenderOptions(e,r)),t),n)).element,dispose:()=>r.dispose()}}_getRenderOptions(t,n){return{codeBlockRenderer:(t,n)=>yo(this,void 0,void 0,function*(){let r;t?r=this._languageService.getLanguageIdByLanguageName(t):this._options.editor&&(r=this._options.editor.getModel()?.getLanguageId()),r||=a.Rs;let i=yield o.wn(this._languageService,n,r),s=document.createElement(`span`);return s.innerHTML=e._ttpTokenizer?.createHTML(i)??i,this._options.editor?o.or(s,this._options.editor.getOption(45)):this._options.codeBlockFontFamily&&(s.style.fontFamily=this._options.codeBlockFontFamily),this._options.codeBlockFontSize!==void 0&&(s.style.fontSize=this._options.codeBlockFontSize),s}),asyncRenderCallback:()=>this._onDidRenderAsync.fire(),actionHandler:{callback:e=>this._openerService.open(e,{fromUserGesture:!0,allowContributedOpeners:!0,allowCommands:t.isTrusted}).catch(a.fu),disposables:n}}}};bo._ttpTokenizer=window.trustedTypes?.createPolicy(`tokenizeToString`,{createHTML(e){return e}}),bo=_o([vo(1,a.Js),vo(2,a.n)],bo);var xo=a.za,So=class e extends a.Xl{constructor(e,t,n=a.r){super(),this._renderDisposeables=this._register(new a.Zl),this._editor=e,this._isVisible=!1,this._messages=[],this._hover=this._register(new oa),this._hover.containerDomNode.classList.toggle(`hidden`,!this._isVisible),this._markdownRenderer=this._register(new bo({editor:this._editor},t,n)),this._computer=new Co(this._editor),this._hoverOperation=this._register(new da(this._editor,this._computer)),this._register(this._hoverOperation.onResult(e=>{this._withResult(e.value)})),this._register(this._editor.onDidChangeModelDecorations(()=>this._onModelDecorationsChanged())),this._register(this._editor.onDidChangeConfiguration(e=>{e.hasChanged(45)&&this._updateFont()})),this._editor.addOverlayWidget(this)}dispose(){this._editor.removeOverlayWidget(this),super.dispose()}getId(){return e.ID}getDomNode(){return this._hover.containerDomNode}getPosition(){return null}_updateFont(){Array.prototype.slice.call(this._hover.contentsDomNode.getElementsByClassName(`code`)).forEach(e=>this._editor.applyFontInfo(e))}_onModelDecorationsChanged(){this._isVisible&&(this._hoverOperation.cancel(),this._hoverOperation.start(0))}startShowingAt(e){this._computer.lineNumber!==e&&(this._hoverOperation.cancel(),this.hide(),this._computer.lineNumber=e,this._hoverOperation.start(0))}hide(){this._computer.lineNumber=-1,this._hoverOperation.cancel(),this._isVisible&&(this._isVisible=!1,this._hover.containerDomNode.classList.toggle(`hidden`,!this._isVisible))}_withResult(e){this._messages=e,this._messages.length>0?this._renderMessages(this._computer.lineNumber,this._messages):this.hide()}_renderMessages(e,t){this._renderDisposeables.clear();let n=document.createDocumentFragment();for(let e of t){let t=xo(`div.hover-row.markdown-hover`),r=a.Xa(t,xo(`div.hover-contents`)),i=this._renderDisposeables.add(this._markdownRenderer.render(e.value));r.appendChild(i.element),n.appendChild(t)}this._updateContents(n),this._showAt(e)}_updateContents(e){this._hover.contentsDomNode.textContent=``,this._hover.contentsDomNode.appendChild(e),this._updateFont()}_showAt(e){this._isVisible||(this._isVisible=!0,this._hover.containerDomNode.classList.toggle(`hidden`,!this._isVisible));let t=this._editor.getLayoutInfo(),n=this._editor.getTopForLineNumber(e),r=this._editor.getScrollTop(),i=this._editor.getOption(60),a=this._hover.containerDomNode.clientHeight,o=n-r-(a-i)/2;this._hover.containerDomNode.style.left=`${t.glyphMarginLeft+t.glyphMarginWidth}px`,this._hover.containerDomNode.style.top=`${Math.max(Math.round(o),0)}px`}};So.ID=`editor.contrib.modesGlyphHoverWidget`;var Co=class{constructor(e){this._editor=e,this._lineNumber=-1}get lineNumber(){return this._lineNumber}set lineNumber(e){this._lineNumber=e}computeSync(){let e=e=>({value:e}),t=this._editor.getLineDecorations(this._lineNumber),n=[];if(!t)return n;for(let r of t){if(!r.options.glyphMarginClassName)continue;let t=r.options.glyphMarginHoverMessage;!t||o.Xt(t)||n.push(...a.zu(t).map(e))}return n}},wo=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},To=class{constructor(e,t,n){this.provider=e,this.hover=t,this.ordinal=n}};function Eo(e,t,n,r,i){return wo(this,void 0,void 0,function*(){try{let a=yield Promise.resolve(e.provideHover(n,r,i));if(a&&ko(a))return new To(e,a,t)}catch(e){a.pu(e)}})}function Do(e,t,n,r){let i=e.ordered(t).map((e,i)=>Eo(e,i,t,n,r));return a.fs.fromPromises(i).coalesce()}function Oo(e,t,n,r){return Do(e,t,n,r).map(e=>e.hover).toPromise()}a.ra(`_executeHoverProvider`,(e,t,n)=>Oo(e.get(a.Zo).hoverProvider,t,n,a.Bl.None));function ko(e){let t=e.range!==void 0,n=e.contents!==void 0&&e.contents&&e.contents.length>0;return t&&n}var Ao=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},jo=function(e,t){return function(n,r){t(n,r,e)}},Mo=a.za,No=class{constructor(e,t,n,r){this.owner=e,this.range=t,this.contents=n,this.ordinal=r}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}},Po=class{constructor(e,t,n,r,i){this._editor=e,this._languageService=t,this._openerService=n,this._configurationService=r,this._languageFeaturesService=i,this.hoverOrdinal=2}createLoadingMessage(e){return new No(this,e.range,[new o.Jt().appendText(a.Td(`modesContentHover.loading`,`Loading...`))],2e3)}computeSync(e,t){if(!this._editor.hasModel()||e.type!==1)return[];let n=this._editor.getModel(),r=e.range.startLineNumber,i=n.getLineMaxColumn(r),s=[],c=1e3,l=n.getLineLength(r),u=n.getLanguageIdAtPosition(e.range.startLineNumber,e.range.startColumn),d=this._configurationService.getValue(`editor.maxTokenizationLineLength`,{overrideIdentifier:u});typeof d==`number`&&l>=d&&s.push(new No(this,e.range,[{value:a.Td(`too many characters`,"Tokenization is skipped for long lines for performance reasons. This can be configured via `editor.maxTokenizationLineLength`.")}],c++));for(let n of t){let t=n.range.startLineNumber===r?n.range.startColumn:1,l=n.range.endLineNumber===r?n.range.endColumn:i,u=n.options.hoverMessage;if(!u||o.Xt(u))continue;let d=new a.Ol(e.range.startLineNumber,t,e.range.startLineNumber,l);s.push(new No(this,d,a.zu(u),c++))}return s}computeAsync(e,t,n){if(!this._editor.hasModel()||e.type!==1)return a.fs.EMPTY;let r=this._editor.getModel();if(!this._languageFeaturesService.hoverProvider.has(r))return a.fs.EMPTY;let i=new a.kl(e.range.startLineNumber,e.range.startColumn);return Do(this._languageFeaturesService.hoverProvider,r,i,n).filter(e=>!o.Xt(e.hover.contents)).map(t=>{let n=t.hover.range?a.Ol.lift(t.hover.range):e.range;return new No(this,n,t.hover.contents,t.ordinal)})}renderHoverParts(e,t){return Fo(e,t,this._editor,this._languageService,this._openerService)}};Po=Ao([jo(1,a.Js),jo(2,a.n),jo(3,a.Ys),jo(4,a.Zo)],Po);function Fo(e,t,n,r,i){t.sort((e,t)=>e.ordinal-t.ordinal);let s=new a.Zl;for(let c of t)for(let t of c.contents){if(o.Xt(t))continue;let c=Mo(`div.hover-row.markdown-hover`),l=a.Xa(c,Mo(`div.hover-contents`)),u=s.add(new bo({editor:n},r,i));s.add(u.onDidRenderAsync(()=>{l.className=`hover-contents code-hover-contents`,e.onContentsChanged()}));let d=s.add(u.render(t));l.appendChild(d.element),e.fragment.appendChild(c)}return s}var Io=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Lo=function(e,t){return function(n,r){t(n,r,e)}},Ro=class{constructor(e,t,n){this.marker=e,this.index=t,this.total=n}},zo=class{constructor(e,t,n){this._markerService=t,this._configService=n,this._onDidChange=new a.Ul,this.onDidChange=this._onDidChange.event,this._dispoables=new a.Zl,this._markers=[],this._nextIdx=-1,a.Al.isUri(e)?this._resourceFilter=t=>t.toString()===e.toString():e&&(this._resourceFilter=e);let r=this._configService.getValue(`problems.sortOrder`),i=(e,t)=>{let n=a.kc(e.resource.toString(),t.resource.toString());return n===0&&(n=r===`position`?a.Ol.compareRangesUsingStarts(e,t)||o.ft.compare(e.severity,t.severity):o.ft.compare(e.severity,t.severity)||a.Ol.compareRangesUsingStarts(e,t)),n},s=()=>{this._markers=this._markerService.read({resource:a.Al.isUri(e)?e:void 0,severities:o.ft.Error|o.ft.Warning|o.ft.Info}),typeof e==`function`&&(this._markers=this._markers.filter(e=>this._resourceFilter(e.resource))),this._markers.sort(i)};s(),this._dispoables.add(t.onMarkerChanged(e=>{(!this._resourceFilter||e.some(e=>this._resourceFilter(e)))&&(s(),this._nextIdx=-1,this._onDidChange.fire())}))}dispose(){this._dispoables.dispose(),this._onDidChange.dispose()}matches(e){return!this._resourceFilter&&!e?!0:!this._resourceFilter||!e?!1:this._resourceFilter(e)}get selected(){let e=this._markers[this._nextIdx];return e&&new Ro(e,this._nextIdx+1,this._markers.length)}_initIdx(e,t,n){let r=!1,i=this._markers.findIndex(t=>t.resource.toString()===e.uri.toString());i<0&&(i=a.Bu(this._markers,{resource:e.uri},(e,t)=>a.kc(e.resource.toString(),t.resource.toString())),i<0&&(i=~i));for(let n=i;n<this._markers.length;n++){let i=a.Ol.lift(this._markers[n]);if(i.isEmpty()){let t=e.getWordAtPosition(i.getStartPosition());t&&(i=new a.Ol(i.startLineNumber,t.startColumn,i.startLineNumber,t.endColumn))}if(t&&(i.containsPosition(t)||t.isBeforeOrEqual(i.getStartPosition()))){this._nextIdx=n,r=!0;break}if(this._markers[n].resource.toString()!==e.uri.toString())break}r||(this._nextIdx=n?0:this._markers.length-1),this._nextIdx<0&&(this._nextIdx=this._markers.length-1)}resetIndex(){this._nextIdx=-1}move(e,t,n){if(this._markers.length===0)return!1;let r=this._nextIdx;return this._nextIdx===-1?this._initIdx(t,n,e):e?this._nextIdx=(this._nextIdx+1)%this._markers.length:e||(this._nextIdx=(this._nextIdx-1+this._markers.length)%this._markers.length),r!==this._nextIdx}find(e,t){let n=this._markers.findIndex(t=>t.resource.toString()===e.toString());if(!(n<0)){for(;n<this._markers.length;n++)if(a.Ol.containsPosition(this._markers[n],t))return new Ro(this._markers[n],n+1,this._markers.length)}}};zo=Io([Lo(1,o.dt),Lo(2,a.Ys)],zo);var Bo=a.mc(`IMarkerNavigationService`),Vo=class{constructor(e,t){this._markerService=e,this._configService=t,this._provider=new a.pd}getMarkerList(e){for(let t of this._provider){let n=t.getMarkerList(e);if(n)return n}return new zo(e,this._markerService,this._configService)}};Vo=Io([Lo(0,o.dt),Lo(1,a.Ys)],Vo),a.Ks(Bo,Vo,!0);var Ho;(function(e){function t(e){switch(e){case o.bn.Ignore:return`severity-ignore `+a.Tl.info.classNames;case o.bn.Info:return a.Tl.info.classNames;case o.bn.Warning:return a.Tl.warning.classNames;case o.bn.Error:return a.Tl.error.classNames;default:return``}}e.className=t})(Ho||={}),a.ba((e,t)=>{let n=e.getColor(a.hi);if(n){let e=a.Tl.error.cssSelector;t.addRule(`
68
+ .monaco-editor .zone-widget ${e},
69
+ .markers-panel .marker-icon${e},
70
+ .text-search-provider-messages .providerMessage ${e},
71
+ .extensions-viewlet > .extensions ${e} {
72
+ color: ${n};
73
+ }
74
+ `)}let r=e.getColor(a._i);if(r){let e=a.Tl.warning.cssSelector;t.addRule(`
75
+ .monaco-editor .zone-widget ${e},
76
+ .markers-panel .marker-icon${e},
77
+ .extensions-viewlet > .extensions ${e},
78
+ .extension-editor ${e},
79
+ .text-search-provider-messages .providerMessage ${e},
80
+ .preferences-editor ${e} {
81
+ color: ${r};
82
+ }
83
+ `)}let i=e.getColor(a.gi);if(i){let e=a.Tl.info.cssSelector;t.addRule(`
84
+ .monaco-editor .zone-widget ${e},
85
+ .markers-panel .marker-icon${e},
86
+ .extensions-viewlet > .extensions ${e},
87
+ .text-search-provider-messages .providerMessage ${e},
88
+ .extension-editor ${e} {
89
+ color: ${i};
90
+ }
91
+ `)}});var Uo=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Wo=function(e,t){return function(n,r){t(n,r,e)}},Go=class{constructor(e,t,n,r,i){this._openerService=r,this._labelService=i,this._lines=0,this._longestLineLength=0,this._relatedDiagnostics=new WeakMap,this._disposables=new a.Zl,this._editor=t;let s=document.createElement(`div`);s.className=`descriptioncontainer`,this._messageBlock=document.createElement(`div`),this._messageBlock.classList.add(`message`),this._messageBlock.setAttribute(`aria-live`,`assertive`),this._messageBlock.setAttribute(`role`,`alert`),s.appendChild(this._messageBlock),this._relatedBlock=document.createElement(`div`),s.appendChild(this._relatedBlock),this._disposables.add(a.Ja(this._relatedBlock,`click`,e=>{e.preventDefault();let t=this._relatedDiagnostics.get(e.target);t&&n(t)})),this._scrollable=new o.En(s,{horizontal:1,vertical:1,useShadows:!1,horizontalScrollbarSize:6,verticalScrollbarSize:6}),e.appendChild(this._scrollable.getDomNode()),this._disposables.add(this._scrollable.onScroll(e=>{s.style.left=`-${e.scrollLeft}px`,s.style.top=`-${e.scrollTop}px`})),this._disposables.add(this._scrollable)}dispose(){a.nu(this._disposables)}update(e){let{source:t,message:n,relatedInformation:r,code:i}=e,o=(t?.length||0)+2;i&&(typeof i==`string`?o+=i.length:o+=i.value.length);let s=a.al(n);this._lines=s.length,this._longestLineLength=0;for(let e of s)this._longestLineLength=Math.max(e.length+o,this._longestLineLength);a.$a(this._messageBlock),this._messageBlock.setAttribute(`aria-label`,this.getAriaLabel(e)),this._editor.applyFontInfo(this._messageBlock);let c=this._messageBlock;for(let e of s)c=document.createElement(`div`),c.innerText=e,e===``&&(c.style.height=this._messageBlock.style.lineHeight),this._messageBlock.appendChild(c);if(t||i){let e=document.createElement(`span`);if(e.classList.add(`details`),c.appendChild(e),t){let n=document.createElement(`span`);n.innerText=t,n.classList.add(`source`),e.appendChild(n)}if(i)if(typeof i==`string`){let t=document.createElement(`span`);t.innerText=`(${i})`,t.classList.add(`code`),e.appendChild(t)}else{this._codeLink=a.za(`a.code-link`),this._codeLink.setAttribute(`href`,`${i.target.toString()}`),this._codeLink.onclick=e=>{this._openerService.open(i.target,{allowCommands:!0}),e.preventDefault(),e.stopPropagation()};let t=a.Xa(this._codeLink,a.za(`span`));t.innerText=i.value,e.appendChild(this._codeLink)}}if(a.$a(this._relatedBlock),this._editor.applyFontInfo(this._relatedBlock),a.$u(r)){let e=this._relatedBlock.appendChild(document.createElement(`div`));e.style.paddingTop=`${Math.floor(this._editor.getOption(60)*.66)}px`,this._lines+=1;for(let t of r){let n=document.createElement(`div`),r=document.createElement(`a`);r.classList.add(`filename`),r.innerText=`${this._labelService.getUriBasenameLabel(t.resource)}(${t.startLineNumber}, ${t.startColumn}): `,r.title=this._labelService.getUriLabel(t.resource),this._relatedDiagnostics.set(r,t);let i=document.createElement(`span`);i.innerText=t.message,n.appendChild(r),n.appendChild(i),this._lines+=1,e.appendChild(n)}}let l=this._editor.getOption(45),u=Math.ceil(l.typicalFullwidthCharacterWidth*this._longestLineLength*.75),d=l.lineHeight*this._lines;this._scrollable.setScrollDimensions({scrollWidth:u,scrollHeight:d})}layout(e,t){this._scrollable.getDomNode().style.height=`${e}px`,this._scrollable.getDomNode().style.width=`${t}px`,this._scrollable.setScrollDimensions({width:t,height:e})}getHeightInLines(){return Math.min(17,this._lines)}getAriaLabel(e){let t=``;switch(e.severity){case o.ft.Error:t=a.Td(`Error`,`Error`);break;case o.ft.Warning:t=a.Td(`Warning`,`Warning`);break;case o.ft.Info:t=a.Td(`Info`,`Info`);break;case o.ft.Hint:t=a.Td(`Hint`,`Hint`);break}let n=a.Td(`marker aria`,`{0} at {1}. `,t,e.startLineNumber+`:`+e.startColumn),r=this._editor.getModel();return r&&e.startLineNumber<=r.getLineCount()&&e.startLineNumber>=1&&(n=`${r.getLineContent(e.startLineNumber)}, ${n}`),n}},Ko=class e extends Ur{constructor(e,t,n,r,i,s,c){super(e,{showArrow:!0,showFrame:!0,isAccessible:!0,frameWidth:1},i),this._themeService=t,this._openerService=n,this._menuService=r,this._contextKeyService=s,this._labelService=c,this._callOnDispose=new a.Zl,this._onDidSelectRelatedInformation=new a.Ul,this.onDidSelectRelatedInformation=this._onDidSelectRelatedInformation.event,this._severity=o.ft.Warning,this._backgroundColor=a.Bi.white,this._applyTheme(t.getColorTheme()),this._callOnDispose.add(t.onDidColorThemeChange(this._applyTheme.bind(this))),this.create()}_applyTheme(e){this._backgroundColor=e.getColor(ns);let t=Xo,n=Zo;this._severity===o.ft.Warning?(t=Qo,n=$o):this._severity===o.ft.Info&&(t=es,n=ts);let r=e.getColor(t),i=e.getColor(n);this.style({arrowColor:r,frameColor:r,headerBackgroundColor:i,primaryHeadingColor:e.getColor(Gr),secondaryHeadingColor:e.getColor(Kr)})}_applyStyles(){this._parentContainer&&(this._parentContainer.style.backgroundColor=this._backgroundColor?this._backgroundColor.toString():``),super._applyStyles()}dispose(){this._callOnDispose.dispose(),super.dispose()}_fillHead(t){super._fillHead(t),this._disposables.add(this._actionbarWidget.actionRunner.onBeforeRun(e=>this.editor.focus()));let n=[],r=this._menuService.createMenu(e.TitleMenu,this._contextKeyService);kr(r,void 0,n),this._actionbarWidget.push(n,{label:!1,icon:!0,index:0}),r.dispose()}_fillTitleIcon(e){this._icon=a.Xa(e,a.za(``))}_fillBody(e){this._parentContainer=e,e.classList.add(`marker-widget`),this._parentContainer.tabIndex=0,this._parentContainer.setAttribute(`role`,`tooltip`),this._container=document.createElement(`div`),e.appendChild(this._container),this._message=new Go(this._container,this.editor,e=>this._onDidSelectRelatedInformation.fire(e),this._openerService,this._labelService),this._disposables.add(this._message)}show(){throw Error(`call showAtMarker`)}showAtMarker(e,t,n){this._container.classList.remove(`stale`),this._message.update(e),this._severity=e.severity,this._applyTheme(this._themeService.getColorTheme());let r=a.Ol.lift(e),i=this.editor.getPosition(),s=i&&r.containsPosition(i)?i:r.getStartPosition();super.show(s,this.computeRequiredHeight());let c=this.editor.getModel();if(c){let e=n>1?a.Td(`problems`,`{0} of {1} problems`,t,n):a.Td(`change`,`{0} of {1} problem`,t,n);this.setTitle(a.x(c.uri),e)}this._icon.className=`codicon ${Ho.className(o.ft.toSeverity(this._severity))}`,this.editor.revealPositionNearTop(s,0),this.editor.focus()}updateMarker(e){this._container.classList.remove(`stale`),this._message.update(e)}showStale(){this._container.classList.add(`stale`),this._relayout()}_doLayoutBody(e,t){super._doLayoutBody(e,t),this._heightInPixel=e,this._message.layout(e,t),this._container.style.height=`${e}px`}_onWidth(e){this._message.layout(this._heightInPixel,e)}_relayout(){super._relayout(this.computeRequiredHeight())}computeRequiredHeight(){return 3+this._message.getHeightInLines()}};Ko.TitleMenu=new a.ca(`gotoErrorTitleMenu`),Ko=Uo([Wo(1,a.ga),Wo(2,a.n),Wo(3,a.sa),Wo(4,a.fc),Wo(5,a.Ea),Wo(6,o.Ot)],Ko);var qo=a.ui(a.yn,a.vn),Jo=a.ui(a.Qn,a.Zn),Yo=a.ui(a.Ln,a.In),Xo=a.Ti(`editorMarkerNavigationError.background`,{dark:qo,light:qo,hcDark:a.en,hcLight:a.en},a.Td(`editorMarkerNavigationError`,`Editor marker navigation widget error color.`)),Zo=a.Ti(`editorMarkerNavigationError.headerBackground`,{dark:a.Li(Xo,.1),light:a.Li(Xo,.1),hcDark:null,hcLight:null},a.Td(`editorMarkerNavigationErrorHeaderBackground`,`Editor marker navigation widget error heading background.`)),Qo=a.Ti(`editorMarkerNavigationWarning.background`,{dark:Jo,light:Jo,hcDark:a.en,hcLight:a.en},a.Td(`editorMarkerNavigationWarning`,`Editor marker navigation widget warning color.`)),$o=a.Ti(`editorMarkerNavigationWarning.headerBackground`,{dark:a.Li(Qo,.1),light:a.Li(Qo,.1),hcDark:`#0C141F`,hcLight:a.Li(Qo,.2)},a.Td(`editorMarkerNavigationWarningBackground`,`Editor marker navigation widget warning heading background.`)),es=a.Ti(`editorMarkerNavigationInfo.background`,{dark:Yo,light:Yo,hcDark:a.en,hcLight:a.en},a.Td(`editorMarkerNavigationInfo`,`Editor marker navigation widget info color.`)),ts=a.Ti(`editorMarkerNavigationInfo.headerBackground`,{dark:a.Li(es,.1),light:a.Li(es,.1),hcDark:null,hcLight:null},a.Td(`editorMarkerNavigationInfoHeaderBackground`,`Editor marker navigation widget info heading background.`)),ns=a.Ti(`editorMarkerNavigation.background`,{dark:a.gn,light:a.gn,hcDark:a.gn,hcLight:a.gn},a.Td(`editorMarkerNavigationBackground`,`Editor marker navigation widget background.`)),rs=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},is=function(e,t){return function(n,r){t(n,r,e)}},as=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},os=class e{constructor(e,t,n,r,i){this._markerNavigationService=t,this._contextKeyService=n,this._editorService=r,this._instantiationService=i,this._sessionDispoables=new a.Zl,this._editor=e,this._widgetVisible=fs.bindTo(this._contextKeyService)}static get(t){return t.getContribution(e.ID)}dispose(){this._cleanUp(),this._sessionDispoables.dispose()}_cleanUp(){this._widgetVisible.reset(),this._sessionDispoables.clear(),this._widget=void 0,this._model=void 0}_getOrCreateModel(e){if(this._model&&this._model.matches(e))return this._model;let t=!1;return this._model&&(t=!0,this._cleanUp()),this._model=this._markerNavigationService.getMarkerList(e),t&&this._model.move(!0,this._editor.getModel(),this._editor.getPosition()),this._widget=this._instantiationService.createInstance(Ko,this._editor),this._widget.onDidClose(()=>this.close(),this,this._sessionDispoables),this._widgetVisible.set(!0),this._sessionDispoables.add(this._model),this._sessionDispoables.add(this._widget),this._sessionDispoables.add(this._editor.onDidChangeCursorPosition(e=>{var t;(!this._model?.selected||!a.Ol.containsPosition(this._model?.selected.marker,e.position))&&((t=this._model)==null||t.resetIndex())})),this._sessionDispoables.add(this._model.onDidChange(()=>{if(!this._widget||!this._widget.position||!this._model)return;let e=this._model.find(this._editor.getModel().uri,this._widget.position);e?this._widget.updateMarker(e.marker):this._widget.showStale()})),this._sessionDispoables.add(this._widget.onDidSelectRelatedInformation(e=>{this._editorService.openCodeEditor({resource:e.resource,options:{pinned:!0,revealIfOpened:!0,selection:a.Ol.lift(e).collapseToStart()}},this._editor),this.close(!1)})),this._sessionDispoables.add(this._editor.onDidChangeModel(()=>this._cleanUp())),this._model}close(e=!0){this._cleanUp(),e&&this._editor.focus()}showAtMarker(e){if(this._editor.hasModel()){let t=this._getOrCreateModel(this._editor.getModel().uri);t.resetIndex(),t.move(!0,this._editor.getModel(),new a.kl(e.startLineNumber,e.startColumn)),t.selected&&this._widget.showAtMarker(t.selected.marker,t.selected.index,t.selected.total)}}nagivate(t,n){var r,i;return as(this,void 0,void 0,function*(){if(this._editor.hasModel()){let a=this._getOrCreateModel(n?void 0:this._editor.getModel().uri);if(a.move(t,this._editor.getModel(),this._editor.getPosition()),!a.selected)return;if(a.selected.marker.resource.toString()!==this._editor.getModel().uri.toString()){this._cleanUp();let o=yield this._editorService.openCodeEditor({resource:a.selected.marker.resource,options:{pinned:!1,revealIfOpened:!0,selectionRevealType:2,selection:a.selected.marker}},this._editor);o&&((r=e.get(o))==null||r.close(),(i=e.get(o))==null||i.nagivate(t,n))}else this._widget.showAtMarker(a.selected.marker,a.selected.index,a.selected.total)}})}};os.ID=`editor.contrib.markerController`,os=rs([is(1,Bo),is(2,a.Ea),is(3,a.dc),is(4,a.fc)],os);var ss=class extends a.Gi{constructor(e,t,n){super(n),this._next=e,this._multiFile=t}run(e,t){var n;return as(this,void 0,void 0,function*(){t.hasModel()&&((n=os.get(t))==null||n.nagivate(this._next,this._multiFile))})}},cs=class e extends ss{constructor(){super(!0,!1,{id:e.ID,label:e.LABEL,alias:`Go to Next Problem (Error, Warning, Info)`,precondition:void 0,kbOpts:{kbExpr:o.kn.focus,primary:578,weight:100},menuOpts:{menuId:Ko.TitleMenu,title:e.LABEL,icon:o.Ut(`marker-navigation-next`,a.Tl.arrowDown,a.Td(`nextMarkerIcon`,`Icon for goto next marker.`)),group:`navigation`,order:1}})}};cs.ID=`editor.action.marker.next`,cs.LABEL=a.Td(`markerAction.next.label`,`Go to Next Problem (Error, Warning, Info)`);var ls=class e extends ss{constructor(){super(!1,!1,{id:e.ID,label:e.LABEL,alias:`Go to Previous Problem (Error, Warning, Info)`,precondition:void 0,kbOpts:{kbExpr:o.kn.focus,primary:1602,weight:100},menuOpts:{menuId:Ko.TitleMenu,title:e.LABEL,icon:o.Ut(`marker-navigation-previous`,a.Tl.arrowUp,a.Td(`previousMarkerIcon`,`Icon for goto previous marker.`)),group:`navigation`,order:2}})}};ls.ID=`editor.action.marker.prev`,ls.LABEL=a.Td(`markerAction.previous.label`,`Go to Previous Problem (Error, Warning, Info)`);var us=class extends ss{constructor(){super(!0,!0,{id:`editor.action.marker.nextInFiles`,label:a.Td(`markerAction.nextInFiles.label`,`Go to Next Problem in Files (Error, Warning, Info)`),alias:`Go to Next Problem in Files (Error, Warning, Info)`,precondition:void 0,kbOpts:{kbExpr:o.kn.focus,primary:66,weight:100},menuOpts:{menuId:a.ca.MenubarGoMenu,title:a.Td({key:`miGotoNextProblem`,comment:[`&& denotes a mnemonic`]},`Next &&Problem`),group:`6_problem_nav`,order:1}})}},ds=class extends ss{constructor(){super(!1,!0,{id:`editor.action.marker.prevInFiles`,label:a.Td(`markerAction.previousInFiles.label`,`Go to Previous Problem in Files (Error, Warning, Info)`),alias:`Go to Previous Problem in Files (Error, Warning, Info)`,precondition:void 0,kbOpts:{kbExpr:o.kn.focus,primary:1090,weight:100},menuOpts:{menuId:a.ca.MenubarGoMenu,title:a.Td({key:`miGotoPreviousProblem`,comment:[`&& denotes a mnemonic`]},`Previous &&Problem`),group:`6_problem_nav`,order:2}})}};a.ta(os.ID,os),a.$i(cs),a.$i(ls),a.$i(us),a.$i(ds);var fs=new a.Da(`markersNavigationVisible`,!1);a.ea(new(a.Ki.bindToContribution(os.get))({id:`closeMarkersNavigation`,precondition:fs,handler:e=>e.close(),kbOpts:{weight:150,kbExpr:o.kn.focus,primary:9,secondary:[1033]}}));var ps=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},ms=function(e,t){return function(n,r){t(n,r,e)}},R=a.za,hs=class{constructor(e,t,n){this.owner=e,this.range=t,this.marker=n}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}},gs={type:1,filter:{include:D.QuickFix},triggerAction:O.QuickFixHover},_s=class{constructor(e,t,n,r){this._editor=e,this._markerDecorationsService=t,this._openerService=n,this._languageFeaturesService=r,this.hoverOrdinal=5,this.recentMarkerCodeActionsInfo=void 0}computeSync(e,t){if(!this._editor.hasModel()||e.type!==1)return[];let n=this._editor.getModel(),r=e.range.startLineNumber,i=n.getLineMaxColumn(r),o=[];for(let s of t){let t=s.range.startLineNumber===r?s.range.startColumn:1,c=s.range.endLineNumber===r?s.range.endColumn:i,l=this._markerDecorationsService.getMarker(n.uri,s);if(!l)continue;let u=new a.Ol(e.range.startLineNumber,t,e.range.startLineNumber,c);o.push(new hs(this,u,l))}return o}renderHoverParts(e,t){if(!t.length)return a.Xl.None;let n=new a.Zl;t.forEach(t=>e.fragment.appendChild(this.renderMarkerHover(t,n)));let r=t.length===1?t[0]:t.sort((e,t)=>o.ft.compare(e.marker.severity,t.marker.severity))[0];return this.renderMarkerStatusbar(e,r,n),n}renderMarkerHover(e,t){let n=R(`div.hover-row`),r=a.Xa(n,R(`div.marker.hover-contents`)),{source:i,message:o,code:s,relatedInformation:c}=e.marker;this._editor.applyFontInfo(r);let l=a.Xa(r,R(`span`));if(l.style.whiteSpace=`pre-wrap`,l.innerText=o,i||s)if(s&&typeof s!=`string`){let e=R(`span`);if(i){let t=a.Xa(e,R(`span`));t.innerText=i}let n=a.Xa(e,R(`a.code-link`));n.setAttribute(`href`,s.target.toString()),t.add(a.Ka(n,`click`,e=>{this._openerService.open(s.target,{allowCommands:!0}),e.preventDefault(),e.stopPropagation()}));let o=a.Xa(n,R(`span`));o.innerText=s.value;let c=a.Xa(r,e);c.style.opacity=`0.6`,c.style.paddingLeft=`6px`}else{let e=a.Xa(r,R(`span`));e.style.opacity=`0.6`,e.style.paddingLeft=`6px`,e.innerText=i&&s?`${i}(${s})`:i||`(${s})`}if(a.$u(c))for(let{message:e,resource:n,startLineNumber:i,startColumn:o}of c){let s=a.Xa(r,R(`div`));s.style.marginTop=`8px`;let c=a.Xa(s,R(`a`));c.innerText=`${a.x(n)}(${i}, ${o}): `,c.style.cursor=`pointer`,t.add(a.Ka(c,`click`,e=>{e.stopPropagation(),e.preventDefault(),this._openerService&&this._openerService.open(n,{fromUserGesture:!0,editorOptions:{selection:{startLineNumber:i,startColumn:o}}}).catch(a.fu)}));let l=a.Xa(s,R(`span`));l.innerText=e,this._editor.applyFontInfo(l)}return n}renderMarkerStatusbar(e,t,n){if((t.marker.severity===o.ft.Error||t.marker.severity===o.ft.Warning||t.marker.severity===o.ft.Info)&&e.statusBar.addAction({label:a.Td(`view problem`,`View Problem`),commandId:cs.ID,run:()=>{var n;e.hide(),(n=os.get(this._editor))==null||n.showAtMarker(t.marker),this._editor.focus()}}),!this._editor.getOption(82)){let r=e.statusBar.append(R(`div`));this.recentMarkerCodeActionsInfo&&(o.ut.makeKey(this.recentMarkerCodeActionsInfo.marker)===o.ut.makeKey(t.marker)?this.recentMarkerCodeActionsInfo.hasCodeActions||(r.textContent=a.Td(`noQuickFixes`,`No quick fixes available`)):this.recentMarkerCodeActionsInfo=void 0);let i=this.recentMarkerCodeActionsInfo&&!this.recentMarkerCodeActionsInfo.hasCodeActions?a.Xl.None:n.add(a.ws(()=>r.textContent=a.Td(`checkingForQuickFixes`,`Checking for quick fixes...`),200));r.textContent||=`\xA0`;let s=this.getCodeActions(t.marker);n.add(a.au(()=>s.cancel())),s.then(o=>{if(i.dispose(),this.recentMarkerCodeActionsInfo={marker:t.marker,hasCodeActions:o.validActions.length>0},!this.recentMarkerCodeActionsInfo.hasCodeActions){o.dispose(),r.textContent=a.Td(`noQuickFixes`,`No quick fixes available`);return}r.style.display=`none`;let s=!1;n.add(a.au(()=>{s||o.dispose()})),e.statusBar.addAction({label:a.Td(`quick fixes`,`Quick Fix...`),commandId:Tn.Id,run:t=>{s=!0;let n=bn.get(this._editor),r=a.uo(t);e.hide(),n?.showCodeActions(gs,o,{x:r.left+6,y:r.top+r.height+6,width:r.width,height:r.height})}})},a.fu)}}getCodeActions(e){return a.Cs(t=>Ft(this._languageFeaturesService.codeActionProvider,this._editor.getModel(),new a.Ol(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn),gs,o.Rt.None,t))}};_s=ps([ms(1,o.Xn),ms(2,a.n),ms(3,a.Zo)],_s),a.ba((e,t)=>{let n=e.getColor(a.Fi);n&&t.addRule(`.monaco-hover .hover-contents a.code-link span { color: ${n}; }`);let r=e.getColor(a.Pi);r&&t.addRule(`.monaco-hover .hover-contents a.code-link span:hover { color: ${r}; }`)});var vs=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},ys=function(e,t){return function(n,r){t(n,r,e)}},bs=class e{constructor(e,t,n,r,i){this._editor=e,this._instantiationService=t,this._openerService=n,this._languageService=r,this._toUnhook=new a.Zl,this._isMouseDown=!1,this._hoverClicked=!1,this._contentWidget=null,this._glyphWidget=null,this._hookEvents(),this._didChangeConfigurationHandler=this._editor.onDidChangeConfiguration(e=>{e.hasChanged(54)&&(this._unhookEvents(),this._hookEvents())})}static get(t){return t.getContribution(e.ID)}_hookEvents(){let e=()=>this._hideWidgets(),t=this._editor.getOption(54);this._isHoverEnabled=t.enabled,this._isHoverSticky=t.sticky,this._isHoverEnabled?(this._toUnhook.add(this._editor.onMouseDown(e=>this._onEditorMouseDown(e))),this._toUnhook.add(this._editor.onMouseUp(e=>this._onEditorMouseUp(e))),this._toUnhook.add(this._editor.onMouseMove(e=>this._onEditorMouseMove(e))),this._toUnhook.add(this._editor.onKeyDown(e=>this._onKeyDown(e)))):(this._toUnhook.add(this._editor.onMouseMove(e=>this._onEditorMouseMove(e))),this._toUnhook.add(this._editor.onKeyDown(e=>this._onKeyDown(e)))),this._toUnhook.add(this._editor.onMouseLeave(e=>this._onEditorMouseLeave(e))),this._toUnhook.add(this._editor.onDidChangeModel(e)),this._toUnhook.add(this._editor.onDidScrollChange(e=>this._onEditorScrollChanged(e)))}_unhookEvents(){this._toUnhook.clear()}_onEditorScrollChanged(e){(e.scrollTopChanged||e.scrollLeftChanged)&&this._hideWidgets()}_onEditorMouseDown(e){this._isMouseDown=!0;let t=e.target;if(t.type===9&&t.detail===so.ID){this._hoverClicked=!0;return}t.type===12&&t.detail===So.ID||(t.type!==12&&(this._hoverClicked=!1),this._hideWidgets())}_onEditorMouseUp(e){this._isMouseDown=!1}_onEditorMouseLeave(e){let t=e.event.browserEvent.relatedTarget;this._contentWidget?.containsNode(t)||this._hideWidgets()}_onEditorMouseMove(e){var t,n;let r=e.target;if(!(this._isMouseDown&&this._hoverClicked)&&!(this._isHoverSticky&&r.type===9&&r.detail===so.ID)&&!(this._isHoverSticky&&!e.event.browserEvent.view?.getSelection()?.isCollapsed)&&!(!this._isHoverSticky&&r.type===9&&r.detail===so.ID&&this._contentWidget?.isColorPickerVisible())&&!(this._isHoverSticky&&r.type===12&&r.detail===So.ID)){if(!this._isHoverEnabled){this._hideWidgets();return}if(this._getOrCreateContentWidget().maybeShowAt(e)){(t=this._glyphWidget)==null||t.hide();return}if(r.type===2&&r.position){(n=this._contentWidget)==null||n.hide(),this._glyphWidget||=new So(this._editor,this._languageService,this._openerService),this._glyphWidget.startShowingAt(r.position.lineNumber);return}this._hideWidgets()}}_onKeyDown(e){e.keyCode!==5&&e.keyCode!==6&&e.keyCode!==57&&e.keyCode!==4&&this._hideWidgets()}_hideWidgets(){var e,t;this._isMouseDown&&this._hoverClicked&&this._contentWidget?.isColorPickerVisible()||(this._hoverClicked=!1,(e=this._glyphWidget)==null||e.hide(),(t=this._contentWidget)==null||t.hide())}_getOrCreateContentWidget(){return this._contentWidget||=this._instantiationService.createInstance(ao,this._editor),this._contentWidget}isColorPickerVisible(){return this._contentWidget?.isColorPickerVisible()||!1}showContentHover(e,t,n){this._getOrCreateContentWidget().startShowingAtRange(e,t,n)}dispose(){var e,t;this._unhookEvents(),this._toUnhook.dispose(),this._didChangeConfigurationHandler.dispose(),(e=this._glyphWidget)==null||e.dispose(),(t=this._contentWidget)==null||t.dispose()}};bs.ID=`editor.contrib.hover`,bs=vs([ys(1,a.fc),ys(2,a.n),ys(3,a.Js),ys(4,a.Ea)],bs);var xs=class extends a.Gi{constructor(){super({id:`editor.action.showHover`,label:a.Td({key:`showHover`,comment:[`Label for action that will trigger the showing of a hover in the editor.`,`This allows for users to show the hover without using the mouse.`]},`Show Hover`),alias:`Show Hover`,precondition:void 0,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:a.Rl(2089,2087),weight:100}})}run(e,t){if(!t.hasModel())return;let n=bs.get(t);if(!n)return;let r=t.getPosition(),i=new a.Ol(r.lineNumber,r.column,r.lineNumber,r.column),o=t.getOption(2)===2;n.showContentHover(i,1,o)}},Ss=class extends a.Gi{constructor(){super({id:`editor.action.showDefinitionPreviewHover`,label:a.Td({key:`showDefinitionPreviewHover`,comment:[`Label for action that will trigger the showing of definition preview hover in the editor.`,`This allows for users to show the definition preview hover without using the mouse.`]},`Show Definition Preview Hover`),alias:`Show Definition Preview Hover`,precondition:void 0})}run(e,t){let n=bs.get(t);if(!n)return;let r=t.getPosition();if(!r)return;let i=new a.Ol(r.lineNumber,r.column,r.lineNumber,r.column),o=ia.get(t);o&&o.startFindDefinitionFromCursor(r).then(()=>{n.showContentHover(i,1,!0)})}};a.ta(bs.ID,bs),a.$i(xs),a.$i(Ss),ma.register(Po),ma.register(_s),a.ba((e,t)=>{let n=e.getColor(a.Mn);n&&t.addRule(`.monaco-editor .hoverHighlight { background-color: ${n}; }`);let r=e.getColor(a.kn);r&&t.addRule(`.monaco-editor .monaco-hover { background-color: ${r}; }`);let i=e.getColor(a.An);i&&(t.addRule(`.monaco-editor .monaco-hover { border: 1px solid ${i}; }`),t.addRule(`.monaco-editor .monaco-hover .hover-row:not(:first-child):not(:empty) { border-top: 1px solid ${i.transparent(.5)}; }`),t.addRule(`.monaco-editor .monaco-hover hr { border-top: 1px solid ${i.transparent(.5)}; }`),t.addRule(`.monaco-editor .monaco-hover hr { border-bottom: 0px solid ${i.transparent(.5)}; }`));let o=e.getColor(a.Fi);o&&t.addRule(`.monaco-editor .monaco-hover a { color: ${o}; }`);let s=e.getColor(a.Pi);s&&t.addRule(`.monaco-editor .monaco-hover a:hover { color: ${s}; }`);let c=e.getColor(a.jn);c&&t.addRule(`.monaco-editor .monaco-hover { color: ${c}; }`);let l=e.getColor(a.Nn);l&&t.addRule(`.monaco-editor .monaco-hover .hover-row .actions { background-color: ${l}; }`);let u=e.getColor(a.Ni);u&&t.addRule(`.monaco-editor .monaco-hover code { background-color: ${u}; }`)});var Cs=class extends a.Xl{constructor(e){super(),this._editor=e,this._register(e.onMouseDown(e=>this.onMouseDown(e)))}dispose(){super.dispose()}onMouseDown(e){let t=e.target;if(t.type!==6||!t.detail.injectedText||t.detail.injectedText.options.attachedData!==s.t||!t.range)return;let n=this._editor.getContribution(bs.ID);if(n&&!n.isColorPickerVisible()){let e=new a.Ol(t.range.startLineNumber,t.range.startColumn+1,t.range.endLineNumber,t.range.endColumn+1);n.showContentHover(e,1,!1)}}};Cs.ID=`editor.contrib.colorContribution`,a.ta(Cs.ID,Cs),ma.register(sr);var ws=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};function Ts(e){return{asString:()=>ws(this,void 0,void 0,function*(){return e}),asFile:()=>void 0,value:typeof e==`string`?e:void 0}}function Es(e,t,n){return{asString:()=>ws(this,void 0,void 0,function*(){return``}),asFile:()=>({name:e,uri:t,data:n}),value:void 0}}var Ds=class{constructor(){this._entries=new Map}get size(){return this._entries.size}has(e){return this._entries.has(this.toKey(e))}get(e){return this._entries.get(this.toKey(e))?.[0]}append(e,t){let n=this._entries.get(e);n?n.push(t):this._entries.set(this.toKey(e),[t])}replace(e,t){this._entries.set(this.toKey(e),[t])}delete(e){this._entries.delete(this.toKey(e))}*entries(){for(let[e,t]of this._entries.entries())for(let n of t)yield[e,n]}values(){return Array.from(this._entries.values()).flat()}forEach(e){for(let[t,n]of this.entries())e(n,t)}toKey(e){return e.toLowerCase()}},Os=(function(){if(typeof crypto==`object`&&typeof crypto.randomUUID==`function`)return crypto.randomUUID.bind(crypto);let e;e=typeof crypto==`object`&&typeof crypto.getRandomValues==`function`?crypto.getRandomValues.bind(crypto):function(e){for(let t=0;t<e.length;t++)e[t]=Math.floor(Math.random()*256);return e};let t=new Uint8Array(16),n=[];for(let e=0;e<256;e++)n.push(e.toString(16).padStart(2,`0`));return function(){e(t),t[6]=t[6]&15|64,t[8]=t[8]&63|128;let r=0,i=``;return i+=n[t[r++]],i+=n[t[r++]],i+=n[t[r++]],i+=n[t[r++]],i+=`-`,i+=n[t[r++]],i+=n[t[r++]],i+=`-`,i+=n[t[r++]],i+=n[t[r++]],i+=`-`,i+=n[t[r++]],i+=n[t[r++]],i+=`-`,i+=n[t[r++]],i+=n[t[r++]],i+=n[t[r++]],i+=n[t[r++]],i+=n[t[r++]],i+=n[t[r++]],i}})(),ks={EDITORS:`CodeEditors`,FILES:`CodeFiles`};function As(e){let t=[];if(e.dataTransfer&&e.dataTransfer.types.length>0){let n=e.dataTransfer.getData(ks.EDITORS);if(n)try{t.push(...o.pt(n))}catch{}else try{let n=e.dataTransfer.getData(o.fn.RESOURCES);t.push(...js(n))}catch{}if(e.dataTransfer?.files)for(let n=0;n<e.dataTransfer.files.length;n++){let r=e.dataTransfer.files[n];if(r&&r.path)try{t.push({resource:a.Al.file(r.path),isExternal:!0,allowWorkspaceOpen:!0})}catch{}}let r=e.dataTransfer.getData(ks.FILES);if(r)try{let e=JSON.parse(r);for(let n of e)t.push({resource:a.Al.file(n),isExternal:!0,allowWorkspaceOpen:!0})}catch{}let i=a.Ws.as(Ns.DragAndDropContribution).getAll();for(let n of i){let r=e.dataTransfer.getData(n.dataFormatKey);if(r)try{t.push(...n.getEditorInputs(r))}catch{}}}return t}function js(e){let t=[];if(e){let n=JSON.parse(e);for(let e of n)if(e.indexOf(`:`)>0){let{selection:n,uri:r}=a.i(a.Al.parse(e));t.push({resource:r,options:{selection:n}})}}return t}var Ms=class{constructor(){this._contributions=new Map}getAll(){return this._contributions.values()}},Ns={DragAndDropContribution:`workbench.contributions.dragAndDrop`};a.Ws.add(Ns.DragAndDropContribution,new Ms);var Ps=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};function Fs(e){let t=new Ds;for(let n of e.items){let e=n.type;if(n.kind===`string`){let r=new Promise(e=>n.getAsString(e));t.append(e,Ts(r))}else if(n.kind===`file`){let r=n.getAsFile();r&&t.append(e,Is(r))}}return t}function Is(e){let t=e.path?a.Al.parse(e.path):void 0;return Es(e.name,t,()=>Ps(this,void 0,void 0,function*(){return new Uint8Array(yield e.arrayBuffer())}))}var Ls=Object.freeze([ks.EDITORS,ks.FILES,o.fn.RESOURCES]);function Rs(e,t,n=!1){if(t.dataTransfer&&(n||!e.has(a.Us.uriList))){let n=As(t).filter(e=>e.resource).map(e=>e.resource.toString());for(let e of t.dataTransfer?.items){let t=e.getAsFile();t&&n.push(t.path?a.Al.file(t.path).toString():t.name)}n.length&&e.replace(a.Us.uriList,Ts(zs.create(n)))}for(let t of Ls)e.delete(t)}var zs=Object.freeze({create:e=>a.Uu(e.map(e=>e.toString())).join(`\r
92
+ `),parse:e=>e.split(`\r
93
+ `).filter(e=>!e.startsWith(`#`))});function Bs(e,t=a.Cd){return a.M(e,t)?e.charAt(0).toUpperCase()+e.slice(1):e}var Vs=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Hs=function(e,t){return function(n,r){t(n,r,e)}};Object.freeze({CURRENT_YEAR:!0,CURRENT_YEAR_SHORT:!0,CURRENT_MONTH:!0,CURRENT_DATE:!0,CURRENT_HOUR:!0,CURRENT_MINUTE:!0,CURRENT_SECOND:!0,CURRENT_DAY_NAME:!0,CURRENT_DAY_NAME_SHORT:!0,CURRENT_MONTH_NAME:!0,CURRENT_MONTH_NAME_SHORT:!0,CURRENT_SECONDS_UNIX:!0,SELECTION:!0,CLIPBOARD:!0,TM_SELECTED_TEXT:!0,TM_CURRENT_LINE:!0,TM_CURRENT_WORD:!0,TM_LINE_INDEX:!0,TM_LINE_NUMBER:!0,TM_FILENAME:!0,TM_FILENAME_BASE:!0,TM_DIRECTORY:!0,TM_FILEPATH:!0,CURSOR_INDEX:!0,CURSOR_NUMBER:!0,RELATIVE_FILEPATH:!0,BLOCK_COMMENT_START:!0,BLOCK_COMMENT_END:!0,LINE_COMMENT:!0,WORKSPACE_NAME:!0,WORKSPACE_FOLDER:!0,RANDOM:!0,RANDOM_HEX:!0,UUID:!0});var Us=class{constructor(e){this._delegates=e}resolve(e){for(let t of this._delegates){let n=t.resolve(e);if(n!==void 0)return n}}},Ws=class{constructor(e,t,n,r){this._model=e,this._selection=t,this._selectionIdx=n,this._overtypingCapturer=r}resolve(e){let{name:t}=e;if(t===`SELECTION`||t===`TM_SELECTED_TEXT`){let t=this._model.getValueInRange(this._selection)||void 0,n=this._selection.startLineNumber!==this._selection.endLineNumber;if(!t&&this._overtypingCapturer){let e=this._overtypingCapturer.getLastOvertypedInfo(this._selectionIdx);e&&(t=e.value,n=e.multiline)}if(t&&n&&e.snippet){let n=a.Bc(this._model.getLineContent(this._selection.startLineNumber),0,this._selection.startColumn-1),r=n;e.snippet.walk(t=>t===e?!1:(t instanceof I&&(r=a.Bc(a.al(t.value).pop())),!0));let i=a.Dc(r,n);t=t.replace(/(\r\n|\r|\n)(.*)/g,(e,t,n)=>`${t}${r.substr(i)}${n}`)}return t}else if(t===`TM_CURRENT_LINE`)return this._model.getLineContent(this._selection.positionLineNumber);else if(t===`TM_CURRENT_WORD`){let e=this._model.getWordAtPosition({lineNumber:this._selection.positionLineNumber,column:this._selection.positionColumn});return e&&e.word||void 0}else if(t===`TM_LINE_INDEX`)return String(this._selection.positionLineNumber-1);else if(t===`TM_LINE_NUMBER`)return String(this._selection.positionLineNumber);else if(t===`CURSOR_INDEX`)return String(this._selectionIdx);else if(t===`CURSOR_NUMBER`)return String(this._selectionIdx+1)}},Gs=class{constructor(e,t){this._labelService=e,this._model=t}resolve(e){let{name:t}=e;if(t===`TM_FILENAME`)return a.jl(this._model.uri.fsPath);if(t===`TM_FILENAME_BASE`){let e=a.jl(this._model.uri.fsPath),t=e.lastIndexOf(`.`);return t<=0?e:e.slice(0,t)}else if(t===`TM_DIRECTORY`)return a.Ml(this._model.uri.fsPath)===`.`?``:this._labelService.getUriLabel(a.C(this._model.uri));else if(t===`TM_FILEPATH`)return this._labelService.getUriLabel(this._model.uri);else if(t===`RELATIVE_FILEPATH`)return this._labelService.getUriLabel(this._model.uri,{relative:!0,noPrefix:!0})}},Ks=class{constructor(e,t,n,r){this._readClipboardText=e,this._selectionIdx=t,this._selectionCount=n,this._spread=r}resolve(e){if(e.name!==`CLIPBOARD`)return;let t=this._readClipboardText();if(t){if(this._spread){let e=t.split(/\r\n|\n|\r/).filter(e=>!a.Gc(e));if(e.length===this._selectionCount)return e[this._selectionIdx]}return t}}},qs=class{constructor(e,t,n){this._model=e,this._selection=t,this._languageConfigurationService=n}resolve(e){let{name:t}=e,n=this._model.getLanguageIdAtPosition(this._selection.selectionStartLineNumber,this._selection.selectionStartColumn),r=this._languageConfigurationService.getLanguageConfiguration(n).comments;if(r){if(t===`LINE_COMMENT`)return r.lineCommentToken||void 0;if(t===`BLOCK_COMMENT_START`)return r.blockCommentStartToken||void 0;if(t===`BLOCK_COMMENT_END`)return r.blockCommentEndToken||void 0}}};qs=Vs([Hs(2,a.Ps)],qs);var Js=class e{constructor(){this._date=new Date}resolve(t){let{name:n}=t;if(n===`CURRENT_YEAR`)return String(this._date.getFullYear());if(n===`CURRENT_YEAR_SHORT`)return String(this._date.getFullYear()).slice(-2);if(n===`CURRENT_MONTH`)return String(this._date.getMonth().valueOf()+1).padStart(2,`0`);if(n===`CURRENT_DATE`)return String(this._date.getDate().valueOf()).padStart(2,`0`);if(n===`CURRENT_HOUR`)return String(this._date.getHours().valueOf()).padStart(2,`0`);if(n===`CURRENT_MINUTE`)return String(this._date.getMinutes().valueOf()).padStart(2,`0`);if(n===`CURRENT_SECOND`)return String(this._date.getSeconds().valueOf()).padStart(2,`0`);if(n===`CURRENT_DAY_NAME`)return e.dayNames[this._date.getDay()];if(n===`CURRENT_DAY_NAME_SHORT`)return e.dayNamesShort[this._date.getDay()];if(n===`CURRENT_MONTH_NAME`)return e.monthNames[this._date.getMonth()];if(n===`CURRENT_MONTH_NAME_SHORT`)return e.monthNamesShort[this._date.getMonth()];if(n===`CURRENT_SECONDS_UNIX`)return String(Math.floor(this._date.getTime()/1e3))}};Js.dayNames=[a.Td(`Sunday`,`Sunday`),a.Td(`Monday`,`Monday`),a.Td(`Tuesday`,`Tuesday`),a.Td(`Wednesday`,`Wednesday`),a.Td(`Thursday`,`Thursday`),a.Td(`Friday`,`Friday`),a.Td(`Saturday`,`Saturday`)],Js.dayNamesShort=[a.Td(`SundayShort`,`Sun`),a.Td(`MondayShort`,`Mon`),a.Td(`TuesdayShort`,`Tue`),a.Td(`WednesdayShort`,`Wed`),a.Td(`ThursdayShort`,`Thu`),a.Td(`FridayShort`,`Fri`),a.Td(`SaturdayShort`,`Sat`)],Js.monthNames=[a.Td(`January`,`January`),a.Td(`February`,`February`),a.Td(`March`,`March`),a.Td(`April`,`April`),a.Td(`May`,`May`),a.Td(`June`,`June`),a.Td(`July`,`July`),a.Td(`August`,`August`),a.Td(`September`,`September`),a.Td(`October`,`October`),a.Td(`November`,`November`),a.Td(`December`,`December`)],Js.monthNamesShort=[a.Td(`JanuaryShort`,`Jan`),a.Td(`FebruaryShort`,`Feb`),a.Td(`MarchShort`,`Mar`),a.Td(`AprilShort`,`Apr`),a.Td(`MayShort`,`May`),a.Td(`JuneShort`,`Jun`),a.Td(`JulyShort`,`Jul`),a.Td(`AugustShort`,`Aug`),a.Td(`SeptemberShort`,`Sep`),a.Td(`OctoberShort`,`Oct`),a.Td(`NovemberShort`,`Nov`),a.Td(`DecemberShort`,`Dec`)];var Ys=class{constructor(e){this._workspaceService=e}resolve(e){if(!this._workspaceService)return;let t=o.Dt(this._workspaceService.getWorkspace());if(t){if(e.name===`WORKSPACE_NAME`)return this._resolveWorkspaceName(t);if(e.name===`WORKSPACE_FOLDER`)return this._resoveWorkspacePath(t)}}_resolveWorkspaceName(e){if(o.Et(e))return a.jl(e.uri.path);let t=a.jl(e.configPath.path);return t.endsWith(`code-workspace`)&&(t=t.substr(0,t.length-o.Tt.length-1)),t}_resoveWorkspacePath(e){if(o.Et(e))return Bs(e.uri.fsPath);let t=a.jl(e.configPath.path),n=e.configPath.fsPath;return n.endsWith(t)&&(n=n.substr(0,n.length-t.length-1)),n?Bs(n):`/`}},Xs=class{resolve(e){let{name:t}=e;if(t===`RANDOM`)return Math.random().toString().slice(-6);if(t===`RANDOM_HEX`)return Math.random().toString(16).slice(-6);if(t===`UUID`)return Os()}},Zs=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Qs=function(e,t){return function(n,r){t(n,r,e)}},$s=class e{constructor(e,t,n){this._editor=e,this._snippet=t,this._snippetLineLeadingWhitespace=n,this._offset=-1,this._nestingLevel=1,this._placeholderGroups=a.Zu(t.placeholders,va.compareByIndex),this._placeholderGroupsIdx=-1}initialize(e){this._offset=e.newPosition}dispose(){this._placeholderDecorations&&this._editor.removeDecorations([...this._placeholderDecorations.values()]),this._placeholderGroups.length=0}_initDecorations(){if(this._offset===-1)throw Error(`Snippet not initialized!`);if(this._placeholderDecorations)return;this._placeholderDecorations=new Map;let t=this._editor.getModel();this._editor.changeDecorations(n=>{for(let r of this._snippet.placeholders){let i=this._snippet.offset(r),o=this._snippet.fullLen(r),s=a.Ol.fromPositions(t.getPositionAt(this._offset+i),t.getPositionAt(this._offset+i+o)),c=r.isFinalTabstop?e._decor.inactiveFinal:e._decor.inactive,l=n.addDecoration(s,c);this._placeholderDecorations.set(r,l)}})}move(t){if(!this._editor.hasModel())return[];if(this._initDecorations(),this._placeholderGroupsIdx>=0){let e=[];for(let t of this._placeholderGroups[this._placeholderGroupsIdx])if(t.transform){let n=this._placeholderDecorations.get(t),r=this._editor.getModel().getDecorationRange(n),i=this._editor.getModel().getValueInRange(r),a=t.transform.resolve(i).split(/\r\n|\r|\n/);for(let e=1;e<a.length;e++)a[e]=this._editor.getModel().normalizeIndentation(this._snippetLineLeadingWhitespace+a[e]);e.push(o.jt.replace(r,a.join(this._editor.getModel().getEOL())))}e.length>0&&this._editor.executeEdits(`snippet.placeholderTransform`,e)}let n=!1;t===!0&&this._placeholderGroupsIdx<this._placeholderGroups.length-1?(this._placeholderGroupsIdx+=1,n=!0):t===!1&&this._placeholderGroupsIdx>0&&(--this._placeholderGroupsIdx,n=!0);let r=this._editor.getModel().changeDecorations(t=>{let r=new Set,i=[];for(let o of this._placeholderGroups[this._placeholderGroupsIdx]){let s=this._placeholderDecorations.get(o),c=this._editor.getModel().getDecorationRange(s);i.push(new a.Dl(c.startLineNumber,c.startColumn,c.endLineNumber,c.endColumn)),n&&=this._hasPlaceholderBeenCollapsed(o),t.changeDecorationOptions(s,o.isFinalTabstop?e._decor.activeFinal:e._decor.active),r.add(o);for(let n of this._snippet.enclosingPlaceholders(o)){let i=this._placeholderDecorations.get(n);t.changeDecorationOptions(i,n.isFinalTabstop?e._decor.activeFinal:e._decor.active),r.add(n)}}for(let[n,i]of this._placeholderDecorations)r.has(n)||t.changeDecorationOptions(i,n.isFinalTabstop?e._decor.inactiveFinal:e._decor.inactive);return i});return n?this.move(t):r??[]}_hasPlaceholderBeenCollapsed(e){let t=e;for(;t;){if(t instanceof va){let e=this._placeholderDecorations.get(t);if(this._editor.getModel().getDecorationRange(e).isEmpty()&&t.toString().length>0)return!0}t=t.parent}return!1}get isAtFirstPlaceholder(){return this._placeholderGroupsIdx<=0||this._placeholderGroups.length===0}get isAtLastPlaceholder(){return this._placeholderGroupsIdx===this._placeholderGroups.length-1}get hasPlaceholder(){return this._snippet.placeholders.length>0}get isTrivialSnippet(){return this._snippet.placeholders.length===0||this._snippet.placeholders.length===1&&this._snippet.placeholders[0].isFinalTabstop}computePossibleSelections(){let e=new Map;for(let t of this._placeholderGroups){let n;for(let r of t){if(r.isFinalTabstop)break;n||(n=[],e.set(r.index,n));let t=this._placeholderDecorations.get(r),i=this._editor.getModel().getDecorationRange(t);if(!i){e.delete(r.index);break}n.push(i)}}return e}get activeChoice(){if(!this._placeholderDecorations)return;let e=this._placeholderGroups[this._placeholderGroupsIdx][0];if(!e?.choice)return;let t=this._placeholderDecorations.get(e);if(!t)return;let n=this._editor.getModel().getDecorationRange(t);if(n)return{range:n,choice:e.choice}}get hasChoice(){let e=!1;return this._snippet.walk(t=>(e=t instanceof ya,!e)),e}merge(t){let n=this._editor.getModel();this._nestingLevel*=10,this._editor.changeDecorations(r=>{for(let i of this._placeholderGroups[this._placeholderGroupsIdx]){let o=t.shift();console.assert(o._offset!==-1),console.assert(!o._placeholderDecorations);let s=o._snippet.placeholderInfo.last.index;for(let e of o._snippet.placeholderInfo.all)e.isFinalTabstop?e.index=i.index+(s+1)/this._nestingLevel:e.index=i.index+e.index/this._nestingLevel;this._snippet.replace(i,o._snippet.children);let c=this._placeholderDecorations.get(i);r.removeDecoration(c),this._placeholderDecorations.delete(i);for(let t of o._snippet.placeholders){let i=o._snippet.offset(t),s=o._snippet.fullLen(t),c=a.Ol.fromPositions(n.getPositionAt(o._offset+i),n.getPositionAt(o._offset+i+s)),l=r.addDecoration(c,e._decor.inactive);this._placeholderDecorations.set(t,l)}}this._placeholderGroups=a.Zu(this._snippet.placeholders,va.compareByIndex)})}};$s._decor={active:a.f.register({description:`snippet-placeholder-1`,stickiness:0,className:`snippet-placeholder`}),inactive:a.f.register({description:`snippet-placeholder-2`,stickiness:1,className:`snippet-placeholder`}),activeFinal:a.f.register({description:`snippet-placeholder-3`,stickiness:1,className:`finish-snippet-placeholder`}),inactiveFinal:a.f.register({description:`snippet-placeholder-4`,stickiness:1,className:`finish-snippet-placeholder`})};var ec={overwriteBefore:0,overwriteAfter:0,adjustWhitespace:!0,clipboardText:void 0,overtypingCapturer:void 0},tc=class e{constructor(e,t,n=ec,r){this._editor=e,this._template=t,this._options=n,this._languageConfigurationService=r,this._templateMerges=[],this._snippets=[]}static adjustWhitespace(e,t,n,r,i){let o=a.Bc(e.getLineContent(t.lineNumber),0,t.column-1),s;return n.walk(t=>{if(!(t instanceof I)||t.parent instanceof ya)return!0;let i=t.value.split(/\r\n|\r|\n/);if(r){let r=n.offset(t);if(r===0)i[0]=e.normalizeIndentation(i[0]);else{s??=n.toString();let t=s.charCodeAt(r-1);(t===10||t===13)&&(i[0]=e.normalizeIndentation(o+i[0]))}for(let t=1;t<i.length;t++)i[t]=e.normalizeIndentation(o+i[t])}let a=i.join(e.getEOL());return a!==t.value&&(t.parent.replace(t,[new I(a)]),s=void 0),!0}),o}static adjustSelection(e,t,n,r){if(n!==0||r!==0){let{positionLineNumber:i,positionColumn:o}=t,s=o-n,c=o+r,l=e.validateRange({startLineNumber:i,startColumn:s,endLineNumber:i,endColumn:c});t=a.Dl.createWithDirection(l.startLineNumber,l.startColumn,l.endLineNumber,l.endColumn,t.getDirection())}return t}static createEditsAndSnippetsFromSelections(t,n,r,i,s,c,l,u,d){let f=[],p=[];if(!t.hasModel())return{edits:f,snippets:p};let m=t.getModel(),h=t.invokeWithinContext(e=>e.get(o.wt)),g=t.invokeWithinContext(e=>new Gs(e.get(o.Ot),m)),_=()=>l,v=m.getValueInRange(e.adjustSelection(m,t.getSelection(),r,0)),ee=m.getValueInRange(e.adjustSelection(m,t.getSelection(),0,i)),te=m.getLineFirstNonWhitespaceColumn(t.getSelection().positionLineNumber),y=t.getSelections().map((e,t)=>({selection:e,idx:t})).sort((e,t)=>a.Ol.compareRangesUsingStarts(e.selection,t.selection));for(let{selection:a,idx:l}of y){let b=e.adjustSelection(m,a,r,0),x=e.adjustSelection(m,a,0,i);v!==m.getValueInRange(b)&&(b=a),ee!==m.getValueInRange(x)&&(x=a);let ne=a.setStartPosition(b.startLineNumber,b.startColumn).setEndPosition(x.endLineNumber,x.endColumn),re=new Ta().parse(n,!0,s),ie=ne.getStartPosition(),S=e.adjustWhitespace(m,ie,re,c||l>0&&te!==m.getLineFirstNonWhitespaceColumn(a.positionLineNumber),!0);re.resolveVariables(new Us([g,new Ks(_,l,y.length,t.getOption(72)===`spread`),new Ws(m,a,l,u),new qs(m,a,d),new Js,new Ys(h),new Xs])),f[l]=o.jt.replace(ne,re.toString()),f[l].identifier={major:l,minor:0},f[l]._isTracked=!0,p[l]=new $s(t,re,S)}return{edits:f,snippets:p}}static createEditsAndSnippetsFromEdits(e,t,n,r,i,s,c){if(!e.hasModel()||t.length===0)return{edits:[],snippets:[]};let l=[],u=e.getModel(),d=new Ta,f=new wa,p=new Us([e.invokeWithinContext(e=>new Gs(e.get(o.Ot),u)),new Ks(()=>i,0,e.getSelections().length,e.getOption(72)===`spread`),new Ws(u,e.getSelection(),0,s),new qs(u,e.getSelection(),c),new Js,new Ys(e.invokeWithinContext(e=>e.get(o.wt))),new Xs]);t=t.sort((e,t)=>a.Ol.compareRangesUsingStarts(e.range,t.range));let m=0;for(let e=0;e<t.length;e++){let{range:n,template:r}=t[e];if(e>0){let r=t[e-1].range,i=a.Ol.fromPositions(r.getEndPosition(),n.getStartPosition()),o=new I(u.getValueInRange(i));f.appendChild(o),m+=o.value.length}d.parseFragment(r,f),f.resolveVariables(p);let i=f.toString(),s=i.slice(m);m=i.length;let c=o.jt.replace(n,s);c.identifier={major:e,minor:0},c._isTracked=!0,l.push(c)}return d.ensureFinalTabstop(f,n,!0),{edits:l,snippets:[new $s(e,f,``)]}}dispose(){a.nu(this._snippets)}_logInfo(){return`template="${this._template}", merged_templates="${this._templateMerges.join(` -> `)}"`}insert(){if(!this._editor.hasModel())return;let{edits:t,snippets:n}=typeof this._template==`string`?e.createEditsAndSnippetsFromSelections(this._editor,this._template,this._options.overwriteBefore,this._options.overwriteAfter,!1,this._options.adjustWhitespace,this._options.clipboardText,this._options.overtypingCapturer,this._languageConfigurationService):e.createEditsAndSnippetsFromEdits(this._editor,this._template,!1,this._options.adjustWhitespace,this._options.clipboardText,this._options.overtypingCapturer,this._languageConfigurationService);this._snippets=n,this._editor.executeEdits(`snippet`,t,e=>{let t=e.filter(e=>!!e.identifier);for(let e=0;e<n.length;e++)n[e].initialize(t[e].textChange);return this._snippets[0].hasPlaceholder?this._move(!0):t.map(e=>a.Dl.fromPositions(e.range.getEndPosition()))}),this._editor.revealRange(this._editor.getSelections()[0])}merge(t,n=ec){if(!this._editor.hasModel())return;this._templateMerges.push([this._snippets[0]._nestingLevel,this._snippets[0]._placeholderGroupsIdx,t]);let{edits:r,snippets:i}=e.createEditsAndSnippetsFromSelections(this._editor,t,n.overwriteBefore,n.overwriteAfter,!0,n.adjustWhitespace,n.clipboardText,n.overtypingCapturer,this._languageConfigurationService);this._editor.executeEdits(`snippet`,r,e=>{let t=e.filter(e=>!!e.identifier);for(let e=0;e<i.length;e++)i[e].initialize(t[e].textChange);let n=i[0].isTrivialSnippet;if(!n){for(let e of this._snippets)e.merge(i);console.assert(i.length===0)}return this._snippets[0].hasPlaceholder&&!n?this._move(void 0):t.map(e=>a.Dl.fromPositions(e.range.getEndPosition()))})}next(){let e=this._move(!0);this._editor.setSelections(e),this._editor.revealPositionInCenterIfOutsideViewport(e[0].getPosition())}prev(){let e=this._move(!1);this._editor.setSelections(e),this._editor.revealPositionInCenterIfOutsideViewport(e[0].getPosition())}_move(e){let t=[];for(let n of this._snippets){let r=n.move(e);t.push(...r)}return t}get isAtFirstPlaceholder(){return this._snippets[0].isAtFirstPlaceholder}get isAtLastPlaceholder(){return this._snippets[0].isAtLastPlaceholder}get hasPlaceholder(){return this._snippets[0].hasPlaceholder}get hasChoice(){return this._snippets[0].hasChoice}get activeChoice(){return this._snippets[0].activeChoice}isSelectionWithinPlaceholders(){if(!this.hasPlaceholder)return!1;let e=this._editor.getSelections();if(e.length<this._snippets.length)return!1;let t=new Map;for(let n of this._snippets){let r=n.computePossibleSelections();if(t.size===0)for(let[n,i]of r){i.sort(a.Ol.compareRangesUsingStarts);for(let r of e)if(i[0].containsRange(r)){t.set(n,[]);break}}if(t.size===0)return!1;t.forEach((e,t)=>{e.push(...r.get(t))})}e.sort(a.Ol.compareRangesUsingStarts);for(let[n,r]of t){if(r.length!==e.length){t.delete(n);continue}r.sort(a.Ol.compareRangesUsingStarts);for(let i=0;i<r.length;i++)if(!r[i].containsRange(e[i])){t.delete(n);continue}}return t.size>0}};tc=Zs([Qs(3,a.Ps)],tc);var nc=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},rc=function(e,t){return function(n,r){t(n,r,e)}},ic={overwriteBefore:0,overwriteAfter:0,undoStopBefore:!0,undoStopAfter:!0,adjustWhitespace:!0,clipboardText:void 0,overtypingCapturer:void 0},z=class e{constructor(t,n,r,i,o){this._editor=t,this._logService=n,this._languageFeaturesService=r,this._languageConfigurationService=o,this._snippetListener=new a.Zl,this._modelVersionId=-1,this._inSnippet=e.InSnippetMode.bindTo(i),this._hasNextTabstop=e.HasNextTabstop.bindTo(i),this._hasPrevTabstop=e.HasPrevTabstop.bindTo(i)}static get(t){return t.getContribution(e.ID)}dispose(){var e;this._inSnippet.reset(),this._hasPrevTabstop.reset(),this._hasNextTabstop.reset(),(e=this._session)==null||e.dispose(),this._snippetListener.dispose()}apply(e,t){try{this._doInsert(e,t===void 0?ic:Object.assign(Object.assign({},ic),t))}catch(t){this.cancel(),this._logService.error(t),this._logService.error(`snippet_error`),this._logService.error(`insert_edits=`,e),this._logService.error(`existing_template=`,this._session?this._session._logInfo():`<no_session>`)}}insert(e,t){try{this._doInsert(e,t===void 0?ic:Object.assign(Object.assign({},ic),t))}catch(t){this.cancel(),this._logService.error(t),this._logService.error(`snippet_error`),this._logService.error(`insert_template=`,e),this._logService.error(`existing_template=`,this._session?this._session._logInfo():`<no_session>`)}}_doInsert(e,t){if(this._editor.hasModel()){if(this._snippetListener.clear(),t.undoStopBefore&&this._editor.getModel().pushStackElement(),this._session&&typeof e!=`string`&&this.cancel(),this._session?(a.Cu(typeof e==`string`),this._session.merge(e,t)):(this._modelVersionId=this._editor.getModel().getAlternativeVersionId(),this._session=new tc(this._editor,e,t,this._languageConfigurationService),this._session.insert()),t.undoStopAfter&&this._editor.getModel().pushStackElement(),this._session?.hasChoice){this._choiceCompletionItemProvider={provideCompletionItems:(e,t)=>{if(!this._session||e!==this._editor.getModel()||!a.kl.equals(this._editor.getPosition(),t))return;let{activeChoice:n}=this._session;if(!n||n.choice.options.length===0)return;let r=e.getValueInRange(n.range),i=!!n.choice.options.find(e=>e.value===r),o=[];for(let e=0;e<n.choice.options.length;e++){let t=n.choice.options[e];o.push({kind:13,label:t.value,insertText:t.value,sortText:`a`.repeat(e+1),range:n.range,filterText:i?`${r}_${t.value}`:void 0,command:{id:`jumpToNextSnippetPlaceholder`,title:a.Td(`next`,`Go to next placeholder...`)}})}return{suggestions:o}}};let e=this._languageFeaturesService.completionProvider.register({language:this._editor.getModel().getLanguageId(),pattern:this._editor.getModel().uri.fsPath,scheme:this._editor.getModel().uri.scheme},this._choiceCompletionItemProvider);this._snippetListener.add(e)}this._updateState(),this._snippetListener.add(this._editor.onDidChangeModelContent(e=>e.isFlush&&this.cancel())),this._snippetListener.add(this._editor.onDidChangeModel(()=>this.cancel())),this._snippetListener.add(this._editor.onDidChangeCursorSelection(()=>this._updateState()))}}_updateState(){if(!(!this._session||!this._editor.hasModel())){if(this._modelVersionId===this._editor.getModel().getAlternativeVersionId()||!this._session.hasPlaceholder)return this.cancel();if(this._session.isAtLastPlaceholder||!this._session.isSelectionWithinPlaceholders())return this._editor.getModel().pushStackElement(),this.cancel();this._inSnippet.set(!0),this._hasPrevTabstop.set(!this._session.isAtFirstPlaceholder),this._hasNextTabstop.set(!this._session.isAtLastPlaceholder),this._handleChoice()}}_handleChoice(){if(!this._session||!this._editor.hasModel()){this._currentChoice=void 0;return}let{activeChoice:e}=this._session;if(!e||!this._choiceCompletionItemProvider){this._currentChoice=void 0;return}this._currentChoice!==e.choice&&(this._currentChoice=e.choice,queueMicrotask(()=>{eo(this._editor,this._choiceCompletionItemProvider)}))}finish(){for(;this._inSnippet.get();)this.next()}cancel(e=!1){var t;this._inSnippet.reset(),this._hasPrevTabstop.reset(),this._hasNextTabstop.reset(),this._snippetListener.clear(),this._currentChoice=void 0,(t=this._session)==null||t.dispose(),this._session=void 0,this._modelVersionId=-1,e&&this._editor.setSelections([this._editor.getSelection()])}prev(){this._session&&this._session.prev(),this._updateState()}next(){this._session&&this._session.next(),this._updateState()}isInSnippet(){return!!this._inSnippet.get()}};z.ID=`snippetController2`,z.InSnippetMode=new a.Da(`inSnippetMode`,!1,a.Td(`inSnippetMode`,`Whether the editor in current in snippet mode`)),z.HasNextTabstop=new a.Da(`hasNextTabstop`,!1,a.Td(`hasNextTabstop`,`Whether there is a next tab stop when in snippet mode`)),z.HasPrevTabstop=new a.Da(`hasPrevTabstop`,!1,a.Td(`hasPrevTabstop`,`Whether there is a previous tab stop when in snippet mode`)),z=nc([rc(1,a.$o),rc(2,a.Zo),rc(3,a.Ea),rc(4,a.Ps)],z),a.ta(z.ID,z);var ac=a.Ki.bindToContribution(z.get);a.ea(new ac({id:`jumpToNextSnippetPlaceholder`,precondition:a.Ta.and(z.InSnippetMode,z.HasNextTabstop),handler:e=>e.next(),kbOpts:{weight:130,kbExpr:o.kn.editorTextFocus,primary:2}})),a.ea(new ac({id:`jumpToPrevSnippetPlaceholder`,precondition:a.Ta.and(z.InSnippetMode,z.HasPrevTabstop),handler:e=>e.prev(),kbOpts:{weight:130,kbExpr:o.kn.editorTextFocus,primary:1026}})),a.ea(new ac({id:`leaveSnippet`,precondition:z.InSnippetMode,handler:e=>e.cancel(!0),kbOpts:{weight:130,kbExpr:o.kn.editorTextFocus,primary:9,secondary:[1033]}})),a.ea(new ac({id:`acceptSnippet`,precondition:z.InSnippetMode,handler:e=>e.finish()}));function oc(e,t,n){let r=z.get(e);return r?(e.focus(),r.apply(n.map(e=>({range:a.Dl.liftSelection(e),template:t}))),r.isInSnippet()):!1}var sc=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},cc=function(e,t){return function(n,r){t(n,r,e)}},lc=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},uc=`application/vnd.code.copyMetadata`,dc=class extends a.Xl{constructor(e,t,n,r,i){super(),this._bulkEditService=t,this._clipboardService=n,this._configurationService=r,this._languageFeaturesService=i,this._editor=e;let o=e.getContainerDomNode();this._register(a.Ka(o,`copy`,e=>this.handleCopy(e))),this._register(a.Ka(o,`cut`,e=>this.handleCopy(e))),this._register(a.Ka(o,`paste`,e=>this.handlePaste(e),!0))}arePasteActionsEnabled(e){return this._configurationService.getValue(`editor.experimental.pasteActions.enabled`,{resource:e.uri})}handleCopy(e){var t;if(!e.clipboardData||!this._editor.hasTextFocus())return;let n=this._editor.getModel(),r=this._editor.getSelections();if(!n||!r?.length||!this.arePasteActionsEnabled(n))return;let i=[...r],o=r[0],s=o.isEmpty();if(s){if(!this._editor.getOption(33))return;i[0]=new a.Ol(o.startLineNumber,0,o.startLineNumber,n.getLineLength(o.startLineNumber))}let c=this._languageFeaturesService.documentPasteEditProvider.ordered(n).filter(e=>!!e.prepareDocumentPaste);if(!c.length){this.setCopyMetadata(e.clipboardData,{wasFromEmptySelection:s});return}let l=Fs(e.clipboardData),u=Os();this.setCopyMetadata(e.clipboardData,{id:u,wasFromEmptySelection:s});let d=a.Cs(e=>lc(this,void 0,void 0,function*(){let t=yield Promise.all(c.map(t=>t.prepareDocumentPaste(n,i,l,e)));for(let e of t)e?.forEach((e,t)=>{l.replace(t,e)});return l}));(t=this._currentClipboardItem)==null||t.dataTransferPromise.cancel(),this._currentClipboardItem={handle:u,dataTransferPromise:d}}setCopyMetadata(e,t){e.setData(uc,JSON.stringify(t))}handlePaste(e){return lc(this,void 0,void 0,function*(){if(!e.clipboardData||!this._editor.hasTextFocus())return;let t=this._editor.getSelections();if(!t?.length||!this._editor.hasModel())return;let n=this._editor.getModel();if(!this.arePasteActionsEnabled(n))return;let r,i=e.clipboardData?.getData(uc);i&&typeof i==`string`&&(r=JSON.parse(i));let s=this._languageFeaturesService.documentPasteEditProvider.ordered(n);if(!s.length)return;e.preventDefault(),e.stopImmediatePropagation();let c=n.getVersionId(),l=new o.T(this._editor,3);try{let i=Fs(e.clipboardData);if(r?.id&&this._currentClipboardItem?.handle===r.id&&(yield this._currentClipboardItem.dataTransferPromise).forEach((e,t)=>{i.replace(t,e)}),!i.has(a.Us.uriList)){let e=yield this._clipboardService.readResources();e.length&&i.append(a.Us.uriList,Ts(zs.create(e)))}i.delete(uc);for(let e of s){if(!e.pasteMimeTypes.some(e=>e.toLowerCase()===o.fn.FILES.toLowerCase()?[...i.values()].some(e=>e.asFile()):i.has(e)))continue;let r=yield e.provideDocumentPasteEdits(n,t,i,l.token);if(c!==n.getVersionId())return;if(r){oc(this._editor,typeof r.insertText==`string`?Ta.escape(r.insertText):r.insertText.snippet,t),r.additionalEdit&&(yield this._bulkEditService.apply(o.Pt.convert(r.additionalEdit),{editor:this._editor}));return}}let u=i.get(a.Us.text)??i.get(`text`);if(!u)return;let d=yield u.asString();if(c!==n.getVersionId())return;this._editor.trigger(`keyboard`,`paste`,{text:d,pasteOnNewLine:r?.wasFromEmptySelection,multicursorText:null})}finally{l.dispose()}})}};dc.ID=`editor.contrib.copyPasteActionController`,dc=sc([cc(1,o.Nt),cc(2,o.zt),cc(3,a.Ys),cc(4,a.Zo)],dc),a.ta(dc.ID,dc),a.Ws.as(a.zs.Configuration).registerConfiguration(Object.assign(Object.assign({},o.Mt),{properties:{"editor.experimental.pasteActions.enabled":{type:`boolean`,scope:5,description:a.Td(`pasteActions`,`Enable/disable running edits from extensions on paste.`),default:!1}}}));var fc=class e{constructor(e,t,n){this.languageConfigurationService=n,this._selection=e,this._insertSpace=t,this._usedEndToken=null}static _haystackHasNeedleAtOffset(e,t,n){if(n<0)return!1;let r=t.length,i=e.length;if(n+r>i)return!1;for(let i=0;i<r;i++){let r=e.charCodeAt(n+i),a=t.charCodeAt(i);if(r!==a&&!(r>=65&&r<=90&&r+32===a)&&!(a>=65&&a<=90&&a+32===r))return!1}return!0}_createOperationsForBlockComment(t,n,r,i,o,s){let c=t.startLineNumber,l=t.startColumn,u=t.endLineNumber,d=t.endColumn,f=o.getLineContent(c),p=o.getLineContent(u),m=f.lastIndexOf(n,l-1+n.length),h=p.indexOf(r,d-1-r.length);if(m!==-1&&h!==-1)if(c===u)f.substring(m+n.length,h).indexOf(r)>=0&&(m=-1,h=-1);else{let e=f.substring(m+n.length),t=p.substring(0,h);(e.indexOf(r)>=0||t.indexOf(r)>=0)&&(m=-1,h=-1)}let g;m!==-1&&h!==-1?(i&&m+n.length<f.length&&f.charCodeAt(m+n.length)===32&&(n+=` `),i&&h>0&&p.charCodeAt(h-1)===32&&(r=` `+r,--h),g=e._createRemoveBlockCommentOperations(new a.Ol(c,m+n.length+1,u,h+1),n,r)):(g=e._createAddBlockCommentOperations(t,n,r,this._insertSpace),this._usedEndToken=g.length===1?r:null);for(let e of g)s.addTrackedEditOperation(e.range,e.text)}static _createRemoveBlockCommentOperations(e,t,n){let r=[];return a.Ol.isEmpty(e)?r.push(o.jt.delete(new a.Ol(e.startLineNumber,e.startColumn-t.length,e.endLineNumber,e.endColumn+n.length))):(r.push(o.jt.delete(new a.Ol(e.startLineNumber,e.startColumn-t.length,e.startLineNumber,e.startColumn))),r.push(o.jt.delete(new a.Ol(e.endLineNumber,e.endColumn,e.endLineNumber,e.endColumn+n.length)))),r}static _createAddBlockCommentOperations(e,t,n,r){let i=[];return a.Ol.isEmpty(e)?i.push(o.jt.replace(new a.Ol(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn),t+` `+n)):(i.push(o.jt.insert(new a.kl(e.startLineNumber,e.startColumn),t+(r?` `:``))),i.push(o.jt.insert(new a.kl(e.endLineNumber,e.endColumn),(r?` `:``)+n))),i}getEditOperations(e,t){let n=this._selection.startLineNumber,r=this._selection.startColumn;e.tokenization.tokenizeIfCheap(n);let i=e.getLanguageIdAtPosition(n,r),a=this.languageConfigurationService.getLanguageConfiguration(i).comments;!a||!a.blockCommentStartToken||!a.blockCommentEndToken||this._createOperationsForBlockComment(this._selection,a.blockCommentStartToken,a.blockCommentEndToken,this._insertSpace,e,t)}computeCursorState(e,t){let n=t.getInverseEditOperations();if(n.length===2){let e=n[0],t=n[1];return new a.Dl(e.range.endLineNumber,e.range.endColumn,t.range.startLineNumber,t.range.startColumn)}else{let e=n[0].range,t=this._usedEndToken?-this._usedEndToken.length-1:0;return new a.Dl(e.endLineNumber,e.endColumn+t,e.endLineNumber,e.endColumn+t)}}},pc=class e{constructor(e,t,n,r,i,a,o){this.languageConfigurationService=e,this._selection=t,this._tabSize=n,this._type=r,this._insertSpace=i,this._selectionId=null,this._deltaColumn=0,this._moveEndPositionDown=!1,this._ignoreEmptyLines=a,this._ignoreFirstLine=o||!1}static _gatherPreflightCommentStrings(e,t,n,r){e.tokenization.tokenizeIfCheap(t);let i=e.getLanguageIdAtPosition(t,1),a=r.getLanguageConfiguration(i).comments,o=a?a.lineCommentToken:null;if(!o)return null;let s=[];for(let e=0,r=n-t+1;e<r;e++)s[e]={ignore:!1,commentStr:o,commentStrOffset:0,commentStrLength:o.length};return s}static _analyzeLines(e,t,n,r,i,o,s,c){let l=!0,u;u=e===0?!0:e!==1;for(let c=0,d=r.length;c<d;c++){let d=r[c],f=i+c;if(f===i&&s){d.ignore=!0;continue}let p=n.getLineContent(f),m=a.Lc(p);if(m===-1){d.ignore=o,d.commentStrOffset=p.length;continue}if(l=!1,d.ignore=!1,d.commentStrOffset=m,u&&!fc._haystackHasNeedleAtOffset(p,d.commentStr,m)&&(e===0?u=!1:e===1||(d.ignore=!0)),u&&t){let e=m+d.commentStrLength;e<p.length&&p.charCodeAt(e)===32&&(d.commentStrLength+=1)}}if(e===0&&l){u=!1;for(let e=0,t=r.length;e<t;e++)r[e].ignore=!1}return{supported:!0,shouldRemoveComments:u,lines:r}}static _gatherPreflightData(t,n,r,i,a,o,s,c){let l=e._gatherPreflightCommentStrings(r,i,a,c);return l===null?{supported:!1}:e._analyzeLines(t,n,r,l,i,o,s,c)}_executeLineComments(t,n,r,i){let o;r.shouldRemoveComments?o=e._createRemoveLineCommentsOperations(r.lines,i.startLineNumber):(e._normalizeInsertionPoint(t,r.lines,i.startLineNumber,this._tabSize),o=this._createAddLineCommentsOperations(r.lines,i.startLineNumber));let s=new a.kl(i.positionLineNumber,i.positionColumn);for(let e=0,r=o.length;e<r;e++)n.addEditOperation(o[e].range,o[e].text),a.Ol.isEmpty(o[e].range)&&a.Ol.getStartPosition(o[e].range).equals(s)&&t.getLineContent(s.lineNumber).length+1===s.column&&(this._deltaColumn=(o[e].text||``).length);this._selectionId=n.trackSelection(i)}_attemptRemoveBlockComment(e,t,n,r){let i=t.startLineNumber,o=t.endLineNumber,s=r.length+Math.max(e.getLineFirstNonWhitespaceColumn(t.startLineNumber),t.startColumn),c=e.getLineContent(i).lastIndexOf(n,s-1),l=e.getLineContent(o).indexOf(r,t.endColumn-1-n.length);return c!==-1&&l===-1&&(l=e.getLineContent(i).indexOf(r,c+n.length),o=i),c===-1&&l!==-1&&(c=e.getLineContent(o).lastIndexOf(n,l),i=o),t.isEmpty()&&(c===-1||l===-1)&&(c=e.getLineContent(i).indexOf(n),c!==-1&&(l=e.getLineContent(i).indexOf(r,c+n.length))),c!==-1&&e.getLineContent(i).charCodeAt(c+n.length)===32&&(n+=` `),l!==-1&&e.getLineContent(o).charCodeAt(l-1)===32&&(r=` `+r,--l),c!==-1&&l!==-1?fc._createRemoveBlockCommentOperations(new a.Ol(i,c+n.length+1,o,l+1),n,r):null}_executeBlockComment(e,t,n){e.tokenization.tokenizeIfCheap(n.startLineNumber);let r=e.getLanguageIdAtPosition(n.startLineNumber,1),i=this.languageConfigurationService.getLanguageConfiguration(r).comments;if(!i||!i.blockCommentStartToken||!i.blockCommentEndToken)return;let o=i.blockCommentStartToken,s=i.blockCommentEndToken,c=this._attemptRemoveBlockComment(e,n,o,s);if(!c){if(n.isEmpty()){let t=e.getLineContent(n.startLineNumber),r=a.Lc(t);r===-1&&(r=t.length),c=fc._createAddBlockCommentOperations(new a.Ol(n.startLineNumber,r+1,n.startLineNumber,t.length+1),o,s,this._insertSpace)}else c=fc._createAddBlockCommentOperations(new a.Ol(n.startLineNumber,e.getLineFirstNonWhitespaceColumn(n.startLineNumber),n.endLineNumber,e.getLineMaxColumn(n.endLineNumber)),o,s,this._insertSpace);c.length===1&&(this._deltaColumn=o.length+1)}this._selectionId=t.trackSelection(n);for(let e of c)t.addEditOperation(e.range,e.text)}getEditOperations(t,n){let r=this._selection;if(this._moveEndPositionDown=!1,r.startLineNumber===r.endLineNumber&&this._ignoreFirstLine){n.addEditOperation(new a.Ol(r.startLineNumber,t.getLineMaxColumn(r.startLineNumber),r.startLineNumber+1,1),r.startLineNumber===t.getLineCount()?``:`
94
+ `),this._selectionId=n.trackSelection(r);return}r.startLineNumber<r.endLineNumber&&r.endColumn===1&&(this._moveEndPositionDown=!0,r=r.setEndPosition(r.endLineNumber-1,t.getLineMaxColumn(r.endLineNumber-1)));let i=e._gatherPreflightData(this._type,this._insertSpace,t,r.startLineNumber,r.endLineNumber,this._ignoreEmptyLines,this._ignoreFirstLine,this.languageConfigurationService);return i.supported?this._executeLineComments(t,n,i,r):this._executeBlockComment(t,n,r)}computeCursorState(e,t){let n=t.getTrackedSelection(this._selectionId);return this._moveEndPositionDown&&(n=n.setEndPosition(n.endLineNumber+1,1)),new a.Dl(n.selectionStartLineNumber,n.selectionStartColumn+this._deltaColumn,n.positionLineNumber,n.positionColumn+this._deltaColumn)}static _createRemoveLineCommentsOperations(e,t){let n=[];for(let r=0,i=e.length;r<i;r++){let i=e[r];i.ignore||n.push(o.jt.delete(new a.Ol(t+r,i.commentStrOffset+1,t+r,i.commentStrOffset+i.commentStrLength+1)))}return n}_createAddLineCommentsOperations(e,t){let n=[],r=this._insertSpace?` `:``;for(let i=0,s=e.length;i<s;i++){let s=e[i];s.ignore||n.push(o.jt.insert(new a.kl(t+i,s.commentStrOffset+1),s.commentStr+r))}return n}static nextVisibleColumn(e,t,n,r){return n?e+(t-e%t):e+r}static _normalizeInsertionPoint(t,n,r,i){let a=1073741824,o,s;for(let o=0,s=n.length;o<s;o++){if(n[o].ignore)continue;let s=t.getLineContent(r+o),c=0;for(let t=0,r=n[o].commentStrOffset;c<a&&t<r;t++)c=e.nextVisibleColumn(c,i,s.charCodeAt(t)===9,1);c<a&&(a=c)}a=Math.floor(a/i)*i;for(let c=0,l=n.length;c<l;c++){if(n[c].ignore)continue;let l=t.getLineContent(r+c),u=0;for(o=0,s=n[c].commentStrOffset;u<a&&o<s;o++)u=e.nextVisibleColumn(u,i,l.charCodeAt(o)===9,1);u>a?n[c].commentStrOffset=o-1:n[c].commentStrOffset=o}}},mc=class extends a.Gi{constructor(e,t){super(t),this._type=e}run(e,t){let n=e.get(a.Ps);if(!t.hasModel())return;let r=t.getModel(),i=[],o=r.getOptions(),s=t.getOption(19),c=t.getSelections().map((e,t)=>({selection:e,index:t,ignoreFirstLine:!1}));c.sort((e,t)=>a.Ol.compareRangesUsingStarts(e.selection,t.selection));let l=c[0];for(let e=1;e<c.length;e++){let t=c[e];l.selection.endLineNumber===t.selection.startLineNumber&&(l.index<t.index?t.ignoreFirstLine=!0:(l.ignoreFirstLine=!0,l=t))}for(let e of c)i.push(new pc(n,e.selection,o.tabSize,this._type,s.insertSpace,s.ignoreEmptyLines,e.ignoreFirstLine));t.pushUndoStop(),t.executeCommands(this.id,i),t.pushUndoStop()}},hc=class extends mc{constructor(){super(0,{id:`editor.action.commentLine`,label:a.Td(`comment.line`,`Toggle Line Comment`),alias:`Toggle Line Comment`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:2133,weight:100},menuOpts:{menuId:a.ca.MenubarEditMenu,group:`5_insert`,title:a.Td({key:`miToggleLineComment`,comment:[`&& denotes a mnemonic`]},`&&Toggle Line Comment`),order:1}})}},gc=class extends mc{constructor(){super(1,{id:`editor.action.addCommentLine`,label:a.Td(`comment.line.add`,`Add Line Comment`),alias:`Add Line Comment`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:a.Rl(2089,2081),weight:100}})}},_c=class extends mc{constructor(){super(2,{id:`editor.action.removeCommentLine`,label:a.Td(`comment.line.remove`,`Remove Line Comment`),alias:`Remove Line Comment`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:a.Rl(2089,2099),weight:100}})}},vc=class extends a.Gi{constructor(){super({id:`editor.action.blockComment`,label:a.Td(`comment.block`,`Toggle Block Comment`),alias:`Toggle Block Comment`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:1567,linux:{primary:3103},weight:100},menuOpts:{menuId:a.ca.MenubarEditMenu,group:`5_insert`,title:a.Td({key:`miToggleBlockComment`,comment:[`&& denotes a mnemonic`]},`Toggle &&Block Comment`),order:2}})}run(e,t){let n=e.get(a.Ps);if(!t.hasModel())return;let r=t.getOption(19),i=[],o=t.getSelections();for(let e of o)i.push(new fc(e,r.insertSpace,n));t.pushUndoStop(),t.executeCommands(this.id,i),t.pushUndoStop()}};a.$i(hc),a.$i(gc),a.$i(_c),a.$i(vc);var yc=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},bc=function(e,t){return function(n,r){t(n,r,e)}},xc=class e{constructor(e,t,n,r,i,o,s){this._contextMenuService=t,this._contextViewService=n,this._contextKeyService=r,this._keybindingService=i,this._menuService=o,this._configurationService=s,this._toDispose=new a.Zl,this._contextMenuIsBeingShownCount=0,this._editor=e,this._toDispose.add(this._editor.onContextMenu(e=>this._onContextMenu(e))),this._toDispose.add(this._editor.onMouseWheel(e=>{if(this._contextMenuIsBeingShownCount>0){let t=this._contextViewService.getContextViewElement(),n=e.srcElement;n.shadowRoot&&a.po(t)===n.shadowRoot||this._contextViewService.hideContextView()}})),this._toDispose.add(this._editor.onKeyDown(e=>{this._editor.getOption(20)&&e.keyCode===58&&(e.preventDefault(),e.stopPropagation(),this.showContextMenu())}))}static get(t){return t.getContribution(e.ID)}_onContextMenu(e){if(!this._editor.hasModel())return;if(!this._editor.getOption(20)){this._editor.focus(),e.target.position&&!this._editor.getSelection().containsPosition(e.target.position)&&this._editor.setPosition(e.target.position);return}if(e.target.type===12||e.target.type===6&&e.target.detail.injectedText)return;if(e.event.preventDefault(),e.event.stopPropagation(),e.target.type===11)return this._showScrollbarContextMenu({x:e.event.posx-1,width:2,y:e.event.posy-1,height:2});if(e.target.type!==6&&e.target.type!==7&&e.target.type!==1)return;if(this._editor.focus(),e.target.position){let t=!1;for(let n of this._editor.getSelections())if(n.containsPosition(e.target.position)){t=!0;break}t||this._editor.setPosition(e.target.position)}let t=null;e.target.type!==1&&(t={x:e.event.posx-1,width:2,y:e.event.posy-1,height:2}),this.showContextMenu(t)}showContextMenu(e){if(!this._editor.getOption(20)||!this._editor.hasModel())return;let t=this._getMenuActions(this._editor.getModel(),this._editor.isSimpleWidget?a.ca.SimpleEditorContext:a.ca.EditorContext);t.length>0&&this._doShowContextMenu(t,e)}_getMenuActions(e,t){let n=[],r=this._menuService.createMenu(t,this._contextKeyService),i=r.getActions({arg:e.uri});r.dispose();for(let t of i){let[,r]=t,i=0;for(let t of r)if(t instanceof a.fa){let r=this._getMenuActions(e,t.item.submenu);r.length>0&&(n.push(new a.La(t.id,t.label,r)),i++)}else n.push(t),i++;i&&n.push(new a.Ia)}return n.length&&n.pop(),n}_doShowContextMenu(e,t=null){if(!this._editor.hasModel())return;let n=this._editor.getOption(54);if(this._editor.updateOptions({hover:{enabled:!1}}),!t){this._editor.revealPosition(this._editor.getPosition(),1),this._editor.render();let e=this._editor.getScrolledVisiblePosition(this._editor.getPosition()),n=a.uo(this._editor.getDomNode());t={x:n.left+e.left,y:n.top+e.top+e.height}}let r=this._editor.getOption(116)&&!a._d;this._contextMenuIsBeingShownCount++,this._contextMenuService.showContextMenu({domForShadowRoot:r?this._editor.getDomNode():void 0,getAnchor:()=>t,getActions:()=>e,getActionViewItem:e=>{let t=this._keybindingFor(e);if(t)return new o.Kt(e,e,{label:!0,keybinding:t.getLabel(),isMenu:!0});let n=e;return typeof n.getActionViewItem==`function`?n.getActionViewItem():new o.Kt(e,e,{icon:!0,label:!0,isMenu:!0})},getKeyBinding:e=>this._keybindingFor(e),onHide:e=>{this._contextMenuIsBeingShownCount--,this._editor.focus(),this._editor.updateOptions({hover:n})}})}_showScrollbarContextMenu(e){if(!this._editor.hasModel())return;let t=this._editor.getOption(66),n=0,r=e=>({id:`menu-action-${++n}`,label:e.label,tooltip:``,class:void 0,enabled:e.enabled===void 0?!0:e.enabled,checked:e.checked,run:e.run,dispose:()=>null}),i=(e,t)=>new a.La(`menu-action-${++n}`,e,t,void 0),o=(e,t,n,a,o)=>{if(!t)return r({label:e,enabled:t,run:()=>{}});let s=e=>()=>{this._configurationService.updateValue(n,e)},c=[];for(let e of o)c.push(r({label:e.label,checked:a===e.value,run:s(e.value)}));return i(e,c)},s=[];s.push(r({label:a.Td(`context.minimap.showMinimap`,`Show Minimap`),checked:t.enabled,run:()=>{this._configurationService.updateValue(`editor.minimap.enabled`,!t.enabled)}})),s.push(new a.Ia),s.push(r({label:a.Td(`context.minimap.renderCharacters`,`Render Characters`),enabled:t.enabled,checked:t.renderCharacters,run:()=>{this._configurationService.updateValue(`editor.minimap.renderCharacters`,!t.renderCharacters)}})),s.push(o(a.Td(`context.minimap.size`,`Size`),t.enabled,`editor.minimap.size`,t.size,[{label:a.Td(`context.minimap.size.proportional`,`Proportional`),value:`proportional`},{label:a.Td(`context.minimap.size.fill`,`Fill`),value:`fill`},{label:a.Td(`context.minimap.size.fit`,`Fit`),value:`fit`}])),s.push(o(a.Td(`context.minimap.scale`,`Scale`),t.enabled,`editor.minimap.scale`,t.scale,[{label:a.Td(`context.minimap.scale.1`,`1`),value:1},{label:a.Td(`context.minimap.scale.2`,`2`),value:2},{label:a.Td(`context.minimap.scale.3`,`3`),value:3}])),s.push(o(a.Td(`context.minimap.slider`,`Slider`),t.enabled,`editor.minimap.showSlider`,t.showSlider,[{label:a.Td(`context.minimap.slider.mouseover`,`Mouse Over`),value:`mouseover`},{label:a.Td(`context.minimap.slider.always`,`Always`),value:`always`}]));let c=this._editor.getOption(116)&&!a._d;this._contextMenuIsBeingShownCount++,this._contextMenuService.showContextMenu({domForShadowRoot:c?this._editor.getDomNode():void 0,getAnchor:()=>e,getActions:()=>s,onHide:e=>{this._contextMenuIsBeingShownCount--,this._editor.focus()}})}_keybindingFor(e){return this._keybindingService.lookupKeybinding(e.id)}dispose(){this._contextMenuIsBeingShownCount>0&&this._contextViewService.hideContextView(),this._toDispose.dispose()}};xc.ID=`editor.contrib.contextmenu`,xc=yc([bc(1,o.Bt),bc(2,o.Vt),bc(3,a.Ea),bc(4,o.At),bc(5,a.sa),bc(6,a.Ys)],xc);var Sc=class extends a.Gi{constructor(){super({id:`editor.action.showContextMenu`,label:a.Td(`action.showContextMenu.label`,`Show Editor Context Menu`),alias:`Show Editor Context Menu`,precondition:void 0,kbOpts:{kbExpr:o.kn.textInputFocus,primary:1092,weight:100}})}run(e,t){var n;(n=xc.get(t))==null||n.showContextMenu()}};a.ta(xc.ID,xc),a.$i(Sc);var Cc=class{constructor(e){this.selections=e}equals(e){let t=this.selections.length;if(t!==e.selections.length)return!1;for(let n=0;n<t;n++)if(!this.selections[n].equalsSelection(e.selections[n]))return!1;return!0}},wc=class{constructor(e,t,n){this.cursorState=e,this.scrollTop=t,this.scrollLeft=n}},Tc=class e extends a.Xl{constructor(e){super(),this._editor=e,this._isCursorUndoRedo=!1,this._undoStack=[],this._redoStack=[],this._register(e.onDidChangeModel(e=>{this._undoStack=[],this._redoStack=[]})),this._register(e.onDidChangeModelContent(e=>{this._undoStack=[],this._redoStack=[]})),this._register(e.onDidChangeCursorSelection(t=>{if(this._isCursorUndoRedo||!t.oldSelections||t.oldModelVersionId!==t.modelVersionId)return;let n=new Cc(t.oldSelections);this._undoStack.length>0&&this._undoStack[this._undoStack.length-1].cursorState.equals(n)||(this._undoStack.push(new wc(n,e.getScrollTop(),e.getScrollLeft())),this._redoStack=[],this._undoStack.length>50&&this._undoStack.shift())}))}static get(t){return t.getContribution(e.ID)}cursorUndo(){!this._editor.hasModel()||this._undoStack.length===0||(this._redoStack.push(new wc(new Cc(this._editor.getSelections()),this._editor.getScrollTop(),this._editor.getScrollLeft())),this._applyState(this._undoStack.pop()))}cursorRedo(){!this._editor.hasModel()||this._redoStack.length===0||(this._undoStack.push(new wc(new Cc(this._editor.getSelections()),this._editor.getScrollTop(),this._editor.getScrollLeft())),this._applyState(this._redoStack.pop()))}_applyState(e){this._isCursorUndoRedo=!0,this._editor.setSelections(e.cursorState.selections),this._editor.setScrollPosition({scrollTop:e.scrollTop,scrollLeft:e.scrollLeft}),this._isCursorUndoRedo=!1}};Tc.ID=`editor.contrib.cursorUndoRedoController`;var Ec=class extends a.Gi{constructor(){super({id:`cursorUndo`,label:a.Td(`cursor.undo`,`Cursor Undo`),alias:`Cursor Undo`,precondition:void 0,kbOpts:{kbExpr:o.kn.textInputFocus,primary:2099,weight:100}})}run(e,t,n){var r;(r=Tc.get(t))==null||r.cursorUndo()}},Dc=class extends a.Gi{constructor(){super({id:`cursorRedo`,label:a.Td(`cursor.redo`,`Cursor Redo`),alias:`Cursor Redo`,precondition:void 0})}run(e,t,n){var r;(r=Tc.get(t))==null||r.cursorRedo()}};a.ta(Tc.ID,Tc),a.$i(Ec),a.$i(Dc);var Oc=class{constructor(e,t,n){this.selection=e,this.targetPosition=t,this.copy=n,this.targetSelection=null}getEditOperations(e,t){let n=e.getValueInRange(this.selection);if(this.copy||t.addEditOperation(this.selection,null),t.addEditOperation(new a.Ol(this.targetPosition.lineNumber,this.targetPosition.column,this.targetPosition.lineNumber,this.targetPosition.column),n),this.selection.containsPosition(this.targetPosition)&&!(this.copy&&(this.selection.getEndPosition().equals(this.targetPosition)||this.selection.getStartPosition().equals(this.targetPosition)))){this.targetSelection=this.selection;return}if(this.copy){this.targetSelection=new a.Dl(this.targetPosition.lineNumber,this.targetPosition.column,this.selection.endLineNumber-this.selection.startLineNumber+this.targetPosition.lineNumber,this.selection.startLineNumber===this.selection.endLineNumber?this.targetPosition.column+this.selection.endColumn-this.selection.startColumn:this.selection.endColumn);return}if(this.targetPosition.lineNumber>this.selection.endLineNumber){this.targetSelection=new a.Dl(this.targetPosition.lineNumber-this.selection.endLineNumber+this.selection.startLineNumber,this.targetPosition.column,this.targetPosition.lineNumber,this.selection.startLineNumber===this.selection.endLineNumber?this.targetPosition.column+this.selection.endColumn-this.selection.startColumn:this.selection.endColumn);return}if(this.targetPosition.lineNumber<this.selection.endLineNumber){this.targetSelection=new a.Dl(this.targetPosition.lineNumber,this.targetPosition.column,this.targetPosition.lineNumber+this.selection.endLineNumber-this.selection.startLineNumber,this.selection.startLineNumber===this.selection.endLineNumber?this.targetPosition.column+this.selection.endColumn-this.selection.startColumn:this.selection.endColumn);return}this.selection.endColumn<=this.targetPosition.column?this.targetSelection=new a.Dl(this.targetPosition.lineNumber-this.selection.endLineNumber+this.selection.startLineNumber,(this.selection.startLineNumber,this.selection.endLineNumber,this.targetPosition.column-this.selection.endColumn+this.selection.startColumn),this.targetPosition.lineNumber,this.selection.startLineNumber===this.selection.endLineNumber?this.targetPosition.column:this.selection.endColumn):this.targetSelection=new a.Dl(this.targetPosition.lineNumber-this.selection.endLineNumber+this.selection.startLineNumber,this.targetPosition.column,this.targetPosition.lineNumber,this.targetPosition.column+this.selection.endColumn-this.selection.startColumn)}computeCursorState(e,t){return this.targetSelection}};function kc(e){return a.bd?e.altKey:e.ctrlKey}var Ac=class e extends a.Xl{constructor(e){super(),this._editor=e,this._dndDecorationIds=this._editor.createDecorationsCollection(),this._register(this._editor.onMouseDown(e=>this._onEditorMouseDown(e))),this._register(this._editor.onMouseUp(e=>this._onEditorMouseUp(e))),this._register(this._editor.onMouseDrag(e=>this._onEditorMouseDrag(e))),this._register(this._editor.onMouseDrop(e=>this._onEditorMouseDrop(e))),this._register(this._editor.onMouseDropCanceled(()=>this._onEditorMouseDropCanceled())),this._register(this._editor.onKeyDown(e=>this.onEditorKeyDown(e))),this._register(this._editor.onKeyUp(e=>this.onEditorKeyUp(e))),this._register(this._editor.onDidBlurEditorWidget(()=>this.onEditorBlur())),this._register(this._editor.onDidBlurEditorText(()=>this.onEditorBlur())),this._mouseDown=!1,this._modifierPressed=!1,this._dragSelection=null}onEditorBlur(){this._removeDecoration(),this._dragSelection=null,this._mouseDown=!1,this._modifierPressed=!1}onEditorKeyDown(e){!this._editor.getOption(31)||this._editor.getOption(18)||(kc(e)&&(this._modifierPressed=!0),this._mouseDown&&kc(e)&&this._editor.updateOptions({mouseStyle:`copy`}))}onEditorKeyUp(t){!this._editor.getOption(31)||this._editor.getOption(18)||(kc(t)&&(this._modifierPressed=!1),this._mouseDown&&t.keyCode===e.TRIGGER_KEY_VALUE&&this._editor.updateOptions({mouseStyle:`default`}))}_onEditorMouseDown(e){this._mouseDown=!0}_onEditorMouseUp(e){this._mouseDown=!1,this._editor.updateOptions({mouseStyle:`text`})}_onEditorMouseDrag(e){let t=e.target;if(this._dragSelection===null){let e=(this._editor.getSelections()||[]).filter(e=>t.position&&e.containsPosition(t.position));if(e.length===1)this._dragSelection=e[0];else return}kc(e.event)?this._editor.updateOptions({mouseStyle:`copy`}):this._editor.updateOptions({mouseStyle:`default`}),t.position&&(this._dragSelection.containsPosition(t.position)?this._removeDecoration():this.showAt(t.position))}_onEditorMouseDropCanceled(){this._editor.updateOptions({mouseStyle:`text`}),this._removeDecoration(),this._dragSelection=null,this._mouseDown=!1}_onEditorMouseDrop(t){if(t.target&&(this._hitContent(t.target)||this._hitMargin(t.target))&&t.target.position){let n=new a.kl(t.target.position.lineNumber,t.target.position.column);if(this._dragSelection===null){let e=null;if(t.event.shiftKey){let t=this._editor.getSelection();if(t){let{selectionStartLineNumber:r,selectionStartColumn:i}=t;e=[new a.Dl(r,i,n.lineNumber,n.column)]}}else e=(this._editor.getSelections()||[]).map(e=>e.containsPosition(n)?new a.Dl(n.lineNumber,n.column,n.lineNumber,n.column):e);this._editor.setSelections(e||[],`mouse`,3)}else (!this._dragSelection.containsPosition(n)||(kc(t.event)||this._modifierPressed)&&(this._dragSelection.getEndPosition().equals(n)||this._dragSelection.getStartPosition().equals(n)))&&(this._editor.pushUndoStop(),this._editor.executeCommand(e.ID,new Oc(this._dragSelection,n,kc(t.event)||this._modifierPressed)),this._editor.pushUndoStop())}this._editor.updateOptions({mouseStyle:`text`}),this._removeDecoration(),this._dragSelection=null,this._mouseDown=!1}showAt(t){this._dndDecorationIds.set([{range:new a.Ol(t.lineNumber,t.column,t.lineNumber,t.column),options:e._DECORATION_OPTIONS}]),this._editor.revealPosition(t,1)}_removeDecoration(){this._dndDecorationIds.clear()}_hitContent(e){return e.type===6||e.type===7}_hitMargin(e){return e.type===2||e.type===3||e.type===4}dispose(){this._removeDecoration(),this._dragSelection=null,this._mouseDown=!1,this._modifierPressed=!1,super.dispose()}};Ac.ID=`editor.contrib.dragAndDrop`,Ac.TRIGGER_KEY_VALUE=a.bd?6:5,Ac._DECORATION_OPTIONS=a.f.register({description:`dnd-target`,className:`dnd-target`}),a.ta(Ac.ID,Ac);var jc=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Mc=function(e,t){return function(n,r){t(n,r,e)}},Nc=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Pc=class extends a.Xl{constructor(e,t,n,r,i,a){super(),this._bulkEditService=t,this._configurationService=n,this._languageFeaturesService=r,this._progressService=i,this._register(e.onDropIntoEditor(t=>this.onDropIntoEditor(e,t.position,t.event))),this._languageFeaturesService.documentOnDropEditProvider.register(`*`,new Fc(a)),this._register(this._configurationService.onDidChangeConfiguration(t=>{t.affectsConfiguration(`workbench.editor.dropIntoEditor.enabled`)&&this.updateEditorOptions(e)})),this.updateEditorOptions(e)}updateEditorOptions(e){e.updateOptions({enableDropIntoEditor:this._configurationService.getValue(`workbench.editor.dropIntoEditor.enabled`)})}onDropIntoEditor(e,t,n){return Nc(this,void 0,void 0,function*(){if(!n.dataTransfer||!e.hasModel())return;let r=e.getModel(),i=r.getVersionId(),s=yield this.extractDataTransferData(n);if(s.size===0||e.getModel().getVersionId()!==i)return;let c=new o.T(e,1);try{let n=this._languageFeaturesService.documentOnDropEditProvider.ordered(r),l=yield this._progressService.withProgress({location:15,delay:750,title:a.Td(`dropProgressTitle`,`Running drop handlers...`),cancellable:!0},()=>a.Ds(Nc(this,void 0,void 0,function*(){for(let e of n){let n=yield e.provideDocumentOnDropEdits(r,t,s,c.token);if(c.token.isCancellationRequested)return;if(n)return n}}),c.token),()=>{c.cancel()});if(c.token.isCancellationRequested||e.getModel().getVersionId()!==i)return;if(l){let n=new a.Ol(t.lineNumber,t.column,t.lineNumber,t.column);oc(e,typeof l.insertText==`string`?Ta.escape(l.insertText):l.insertText.snippet,[a.Dl.fromRange(n,0)]),l.additionalEdit&&(yield this._bulkEditService.apply(o.Pt.convert(l.additionalEdit),{editor:e}));return}}finally{c.dispose()}})}extractDataTransferData(e){return Nc(this,void 0,void 0,function*(){if(!e.dataTransfer)return new Ds;let t=Fs(e.dataTransfer);return Rs(t,e),t})}};Pc.ID=`editor.contrib.dropIntoEditorController`,Pc=jc([Mc(1,o.Nt),Mc(2,a.Ys),Mc(3,a.Zo),Mc(4,o.Lt),Mc(5,o.wt)],Pc);var Fc=class{constructor(e){this._workspaceContextService=e}provideDocumentOnDropEdits(e,t,n,r){return Nc(this,void 0,void 0,function*(){let e=n.get(a.Us.uriList);if(e){let t=yield e.asString(),n=this.getUriListInsertText(t);if(n)return{insertText:n}}let t=n.get(`text`)??n.get(a.Us.text);if(t)return{insertText:yield t.asString()}})}getUriListInsertText(e){let t=[];for(let n of zs.parse(e))try{t.push(a.Al.parse(n))}catch{}if(t.length)return t.map(e=>{let t=this._workspaceContextService.getWorkspaceFolder(e);if(t){let n=a.A(t.uri,e);if(n)return n}return e.fsPath}).join(` `)}};Fc=jc([Mc(0,o.wt)],Fc),a.ta(Pc.ID,Pc);var Ic=class e{constructor(e){this._editor=e,this._decorations=[],this._overviewRulerApproximateDecorations=[],this._findScopeDecorationIds=[],this._rangeHighlightDecorationId=null,this._highlightedDecorationId=null,this._startPosition=this._editor.getPosition()}dispose(){this._editor.removeDecorations(this._allDecorations()),this._decorations=[],this._overviewRulerApproximateDecorations=[],this._findScopeDecorationIds=[],this._rangeHighlightDecorationId=null,this._highlightedDecorationId=null}reset(){this._decorations=[],this._overviewRulerApproximateDecorations=[],this._findScopeDecorationIds=[],this._rangeHighlightDecorationId=null,this._highlightedDecorationId=null}getCount(){return this._decorations.length}getFindScope(){return this._findScopeDecorationIds[0]?this._editor.getModel().getDecorationRange(this._findScopeDecorationIds[0]):null}getFindScopes(){if(this._findScopeDecorationIds.length){let e=this._findScopeDecorationIds.map(e=>this._editor.getModel().getDecorationRange(e)).filter(e=>!!e);if(e.length)return e}return null}getStartPosition(){return this._startPosition}setStartPosition(e){this._startPosition=e,this.setCurrentFindMatch(null)}_getDecorationIndex(e){let t=this._decorations.indexOf(e);return t>=0?t+1:1}getCurrentMatchesPosition(t){let n=this._editor.getModel().getDecorationsInRange(t);for(let t of n){let n=t.options;if(n===e._FIND_MATCH_DECORATION||n===e._CURRENT_FIND_MATCH_DECORATION)return this._getDecorationIndex(t.id)}return 0}setCurrentFindMatch(t){let n=null,r=0;if(t)for(let e=0,i=this._decorations.length;e<i;e++){let i=this._editor.getModel().getDecorationRange(this._decorations[e]);if(t.equalsRange(i)){n=this._decorations[e],r=e+1;break}}return(this._highlightedDecorationId!==null||n!==null)&&this._editor.changeDecorations(t=>{if(this._highlightedDecorationId!==null&&(t.changeDecorationOptions(this._highlightedDecorationId,e._FIND_MATCH_DECORATION),this._highlightedDecorationId=null),n!==null&&(this._highlightedDecorationId=n,t.changeDecorationOptions(this._highlightedDecorationId,e._CURRENT_FIND_MATCH_DECORATION)),this._rangeHighlightDecorationId!==null&&(t.removeDecoration(this._rangeHighlightDecorationId),this._rangeHighlightDecorationId=null),n!==null){let r=this._editor.getModel().getDecorationRange(n);if(r.startLineNumber!==r.endLineNumber&&r.endColumn===1){let e=r.endLineNumber-1,t=this._editor.getModel().getLineMaxColumn(e);r=new a.Ol(r.startLineNumber,r.startColumn,e,t)}this._rangeHighlightDecorationId=t.addDecoration(r,e._RANGE_HIGHLIGHT_DECORATION)}}),r}set(t,n){this._editor.changeDecorations(r=>{let i=e._FIND_MATCH_DECORATION,o=[];if(t.length>1e3){i=e._FIND_MATCH_NO_OVERVIEW_DECORATION;let n=this._editor.getModel().getLineCount(),r=this._editor.getLayoutInfo().height/n,s=Math.max(2,Math.ceil(3/r)),c=t[0].range.startLineNumber,l=t[0].range.endLineNumber;for(let n=1,r=t.length;n<r;n++){let r=t[n].range;l+s>=r.startLineNumber?r.endLineNumber>l&&(l=r.endLineNumber):(o.push({range:new a.Ol(c,1,l,1),options:e._FIND_MATCH_ONLY_OVERVIEW_DECORATION}),c=r.startLineNumber,l=r.endLineNumber)}o.push({range:new a.Ol(c,1,l,1),options:e._FIND_MATCH_ONLY_OVERVIEW_DECORATION})}let s=Array(t.length);for(let e=0,n=t.length;e<n;e++)s[e]={range:t[e].range,options:i};this._decorations=r.deltaDecorations(this._decorations,s),this._overviewRulerApproximateDecorations=r.deltaDecorations(this._overviewRulerApproximateDecorations,o),this._rangeHighlightDecorationId&&=(r.removeDecoration(this._rangeHighlightDecorationId),null),this._findScopeDecorationIds.length&&(this._findScopeDecorationIds.forEach(e=>r.removeDecoration(e)),this._findScopeDecorationIds=[]),n?.length&&(this._findScopeDecorationIds=n.map(t=>r.addDecoration(t,e._FIND_SCOPE_DECORATION)))})}matchBeforePosition(e){if(this._decorations.length===0)return null;for(let t=this._decorations.length-1;t>=0;t--){let n=this._decorations[t],r=this._editor.getModel().getDecorationRange(n);if(!(!r||r.endLineNumber>e.lineNumber)&&(r.endLineNumber<e.lineNumber||!(r.endColumn>e.column)))return r}return this._editor.getModel().getDecorationRange(this._decorations[this._decorations.length-1])}matchAfterPosition(e){if(this._decorations.length===0)return null;for(let t=0,n=this._decorations.length;t<n;t++){let n=this._decorations[t],r=this._editor.getModel().getDecorationRange(n);if(!(!r||r.startLineNumber<e.lineNumber)&&(r.startLineNumber>e.lineNumber||!(r.startColumn<e.column)))return r}return this._editor.getModel().getDecorationRange(this._decorations[0])}_allDecorations(){let e=[];return e=e.concat(this._decorations),e=e.concat(this._overviewRulerApproximateDecorations),this._findScopeDecorationIds.length&&e.push(...this._findScopeDecorationIds),this._rangeHighlightDecorationId&&e.push(this._rangeHighlightDecorationId),e}};Ic._CURRENT_FIND_MATCH_DECORATION=a.f.register({description:`current-find-match`,stickiness:1,zIndex:13,className:`currentFindMatch`,showIfCollapsed:!0,overviewRuler:{color:a.xa(a.di),position:a.sc.Center},minimap:{color:a.xa(a.ni),position:a.oc.Inline}}),Ic._FIND_MATCH_DECORATION=a.f.register({description:`find-match`,stickiness:1,zIndex:10,className:`findMatch`,showIfCollapsed:!0,overviewRuler:{color:a.xa(a.di),position:a.sc.Center},minimap:{color:a.xa(a.ni),position:a.oc.Inline}}),Ic._FIND_MATCH_NO_OVERVIEW_DECORATION=a.f.register({description:`find-match-no-overview`,stickiness:1,className:`findMatch`,showIfCollapsed:!0}),Ic._FIND_MATCH_ONLY_OVERVIEW_DECORATION=a.f.register({description:`find-match-only-overview`,stickiness:1,overviewRuler:{color:a.xa(a.di),position:a.sc.Center}}),Ic._RANGE_HIGHLIGHT_DECORATION=a.f.register({description:`find-range-highlight`,stickiness:1,className:`rangeHighlight`,isWholeLine:!0}),Ic._FIND_SCOPE_DECORATION=a.f.register({description:`find-scope`,className:`findScope`,isWholeLine:!0});var Lc=class{constructor(e,t,n){this._editorSelection=e,this._ranges=t,this._replaceStrings=n,this._trackedEditorSelectionId=null}getEditOperations(e,t){if(this._ranges.length>0){let e=[];for(let t=0;t<this._ranges.length;t++)e.push({range:this._ranges[t],text:this._replaceStrings[t]});e.sort((e,t)=>a.Ol.compareRangesUsingStarts(e.range,t.range));let n=[],r=e[0];for(let t=1;t<e.length;t++)r.range.endLineNumber===e[t].range.startLineNumber&&r.range.endColumn===e[t].range.startColumn?(r.range=r.range.plusRange(e[t].range),r.text+=e[t].text):(n.push(r),r=e[t]);n.push(r);for(let e of n)t.addEditOperation(e.range,e.text)}this._trackedEditorSelectionId=t.trackSelection(this._editorSelection)}computeCursorState(e,t){return t.getTrackedSelection(this._trackedEditorSelectionId)}};function Rc(e,t){if(e&&e[0]!==``){let n=zc(e,t,`-`),r=zc(e,t,`_`);return n&&!r?Bc(e,t,`-`):!n&&r?Bc(e,t,`_`):e[0].toUpperCase()===e[0]?t.toUpperCase():e[0].toLowerCase()===e[0]?t.toLowerCase():a.Mc(e[0][0])&&t.length>0?t[0].toUpperCase()+t.substr(1):e[0][0].toUpperCase()!==e[0][0]&&t.length>0?t[0].toLowerCase()+t.substr(1):t}else return t}function zc(e,t,n){return e[0].indexOf(n)!==-1&&t.indexOf(n)!==-1&&e[0].split(n).length===t.split(n).length}function Bc(e,t,n){let r=t.split(n),i=e[0].split(n),a=``;return r.forEach((e,t)=>{a+=Rc([i[t]],e)+n}),a.slice(0,-1)}var Vc=class{constructor(e){this.staticValue=e,this.kind=0}},Hc=class{constructor(e){this.pieces=e,this.kind=1}},Uc=class e{constructor(e){!e||e.length===0?this._state=new Vc(``):e.length===1&&e[0].staticValue!==null?this._state=new Vc(e[0].staticValue):this._state=new Hc(e)}static fromStaticValue(t){return new e([Wc.staticValue(t)])}get hasReplacementPatterns(){return this._state.kind===1}buildReplaceString(t,n){if(this._state.kind===0)return n?Rc(t,this._state.staticValue):this._state.staticValue;let r=``;for(let n=0,i=this._state.pieces.length;n<i;n++){let i=this._state.pieces[n];if(i.staticValue!==null){r+=i.staticValue;continue}let a=e._substitute(i.matchIndex,t);if(i.caseOps!==null&&i.caseOps.length>0){let e=[],t=i.caseOps.length,n=0;for(let r=0,o=a.length;r<o;r++){if(n>=t){e.push(a.slice(r));break}switch(i.caseOps[n]){case`U`:e.push(a[r].toUpperCase());break;case`u`:e.push(a[r].toUpperCase()),n++;break;case`L`:e.push(a[r].toLowerCase());break;case`l`:e.push(a[r].toLowerCase()),n++;break;default:e.push(a[r])}}a=e.join(``)}r+=a}return r}static _substitute(e,t){if(t===null)return``;if(e===0)return t[0];let n=``;for(;e>0;){if(e<t.length)return(t[e]||``)+n;n=String(e%10)+n,e=Math.floor(e/10)}return`$`+n}},Wc=class e{constructor(e,t,n){this.staticValue=e,this.matchIndex=t,!n||n.length===0?this.caseOps=null:this.caseOps=n.slice(0)}static staticValue(t){return new e(t,-1,null)}static caseOps(t,n){return new e(null,t,n)}},Gc=class{constructor(e){this._source=e,this._lastCharIndex=0,this._result=[],this._resultLen=0,this._currentStaticPiece=``}emitUnchanged(e){this._emitStatic(this._source.substring(this._lastCharIndex,e)),this._lastCharIndex=e}emitStatic(e,t){this._emitStatic(e),this._lastCharIndex=t}_emitStatic(e){e.length!==0&&(this._currentStaticPiece+=e)}emitMatchIndex(e,t,n){this._currentStaticPiece.length!==0&&(this._result[this._resultLen++]=Wc.staticValue(this._currentStaticPiece),this._currentStaticPiece=``),this._result[this._resultLen++]=Wc.caseOps(e,n),this._lastCharIndex=t}finalize(){return this.emitUnchanged(this._source.length),this._currentStaticPiece.length!==0&&(this._result[this._resultLen++]=Wc.staticValue(this._currentStaticPiece),this._currentStaticPiece=``),new Uc(this._result)}};function Kc(e){if(!e||e.length===0)return new Uc(null);let t=[],n=new Gc(e);for(let r=0,i=e.length;r<i;r++){let a=e.charCodeAt(r);if(a===92){if(r++,r>=i)break;let a=e.charCodeAt(r);switch(a){case 92:n.emitUnchanged(r-1),n.emitStatic(`\\`,r+1);break;case 110:n.emitUnchanged(r-1),n.emitStatic(`
95
+ `,r+1);break;case 116:n.emitUnchanged(r-1),n.emitStatic(` `,r+1);break;case 117:case 85:case 108:case 76:n.emitUnchanged(r-1),n.emitStatic(``,r+1),t.push(String.fromCharCode(a));break}continue}if(a===36){if(r++,r>=i)break;let a=e.charCodeAt(r);if(a===36){n.emitUnchanged(r-1),n.emitStatic(`$`,r+1);continue}if(a===48||a===38){n.emitUnchanged(r-1),n.emitMatchIndex(0,r+1,t),t.length=0;continue}if(49<=a&&a<=57){let o=a-48;if(r+1<i){let i=e.charCodeAt(r+1);if(48<=i&&i<=57){r++,o=o*10+(i-48),n.emitUnchanged(r-2),n.emitMatchIndex(o,r+1,t),t.length=0;continue}}n.emitUnchanged(r-1),n.emitMatchIndex(o,r+1,t),t.length=0;continue}}}return n.finalize()}var qc=new a.Da(`findWidgetVisible`,!1);qc.toNegated();var Jc=new a.Da(`findInputFocussed`,!1),Yc=new a.Da(`replaceInputFocussed`,!1),Xc={primary:545,mac:{primary:2593}},Zc={primary:565,mac:{primary:2613}},Qc={primary:560,mac:{primary:2608}},$c={primary:554,mac:{primary:2602}},el={primary:558,mac:{primary:2606}},B={StartFindAction:`actions.find`,StartFindWithSelection:`actions.findWithSelection`,StartFindWithArgs:`editor.actions.findWithArgs`,NextMatchFindAction:`editor.action.nextMatchFindAction`,PreviousMatchFindAction:`editor.action.previousMatchFindAction`,NextSelectionMatchFindAction:`editor.action.nextSelectionMatchFindAction`,PreviousSelectionMatchFindAction:`editor.action.previousSelectionMatchFindAction`,StartFindReplaceAction:`editor.action.startFindReplaceAction`,CloseFindWidgetCommand:`closeFindWidget`,ToggleCaseSensitiveCommand:`toggleFindCaseSensitive`,ToggleWholeWordCommand:`toggleFindWholeWord`,ToggleRegexCommand:`toggleFindRegex`,ToggleSearchScopeCommand:`toggleFindInSelection`,TogglePreserveCaseCommand:`togglePreserveCase`,ReplaceOneAction:`editor.action.replaceOne`,ReplaceAllAction:`editor.action.replaceAll`,SelectAllMatchesAction:`editor.action.selectAllMatches`},tl=19999,nl=240,rl=class e{constructor(e,t){this._toDispose=new a.Zl,this._editor=e,this._state=t,this._isDisposed=!1,this._startSearchingTimer=new a.xs,this._decorations=new Ic(e),this._toDispose.add(this._decorations),this._updateDecorationsScheduler=new a.ys(()=>this.research(!1),100),this._toDispose.add(this._updateDecorationsScheduler),this._toDispose.add(this._editor.onDidChangeCursorPosition(e=>{(e.reason===3||e.reason===5||e.reason===6)&&this._decorations.setStartPosition(this._editor.getPosition())})),this._ignoreModelContentChanged=!1,this._toDispose.add(this._editor.onDidChangeModelContent(e=>{this._ignoreModelContentChanged||(e.isFlush&&this._decorations.reset(),this._decorations.setStartPosition(this._editor.getPosition()),this._updateDecorationsScheduler.schedule())})),this._toDispose.add(this._state.onFindReplaceStateChange(e=>this._onStateChanged(e))),this.research(!1,this._state.searchScope)}dispose(){this._isDisposed=!0,a.nu(this._startSearchingTimer),this._toDispose.dispose()}_onStateChanged(e){this._isDisposed||this._editor.hasModel()&&(e.searchString||e.isReplaceRevealed||e.isRegex||e.wholeWord||e.matchCase||e.searchScope)&&(this._editor.getModel().isTooLargeForSyncing()?(this._startSearchingTimer.cancel(),this._startSearchingTimer.setIfNotSet(()=>{e.searchScope?this.research(e.moveCursor,this._state.searchScope):this.research(e.moveCursor)},nl)):e.searchScope?this.research(e.moveCursor,this._state.searchScope):this.research(e.moveCursor))}static _getSearchRange(e,t){return t||e.getFullModelRange()}research(e,t){let n=null;t===void 0?n=this._decorations.getFindScopes():t!==null&&(n=Array.isArray(t)?t:[t]),n!==null&&(n=n.map(e=>{if(e.startLineNumber!==e.endLineNumber){let t=e.endLineNumber;return e.endColumn===1&&--t,new a.Ol(e.startLineNumber,1,t,this._editor.getModel().getLineMaxColumn(t))}return e}));let r=this._findMatches(n,!1,tl);this._decorations.set(r,n);let i=this._editor.getSelection(),o=this._decorations.getCurrentMatchesPosition(i);if(o===0&&r.length>0){let e=a.Gu(r.map(e=>e.range),e=>a.Ol.compareRangesUsingStarts(e,i)>=0);o=e>0?e-1+1:o}this._state.changeMatchInfo(o,this._decorations.getCount(),void 0),e&&this._editor.getOption(36).cursorMoveOnType&&this._moveToNextMatch(this._decorations.getStartPosition())}_hasMatches(){return this._state.matchesCount>0}_cannotFind(){if(!this._hasMatches()){let e=this._decorations.getFindScope();return e&&this._editor.revealRangeInCenterIfOutsideViewport(e,0),!0}return!1}_setCurrentFindMatch(e){let t=this._decorations.setCurrentFindMatch(e);this._state.changeMatchInfo(t,this._decorations.getCount(),e),this._editor.setSelection(e),this._editor.revealRangeInCenterIfOutsideViewport(e,0)}_prevSearchPosition(e){let t=this._state.isRegex&&(this._state.searchString.indexOf(`^`)>=0||this._state.searchString.indexOf(`$`)>=0),{lineNumber:n,column:r}=e,i=this._editor.getModel();return t||r===1?(n===1?n=i.getLineCount():n--,r=i.getLineMaxColumn(n)):r--,new a.kl(n,r)}_moveToPrevMatch(t,n=!1){if(!this._state.canNavigateBack()){let e=this._decorations.matchAfterPosition(t);e&&this._setCurrentFindMatch(e);return}if(this._decorations.getCount()<19999){let e=this._decorations.matchBeforePosition(t);e&&e.isEmpty()&&e.getStartPosition().equals(t)&&(t=this._prevSearchPosition(t),e=this._decorations.matchBeforePosition(t)),e&&this._setCurrentFindMatch(e);return}if(this._cannotFind())return;let r=this._decorations.getFindScope(),i=e._getSearchRange(this._editor.getModel(),r);i.getEndPosition().isBefore(t)&&(t=i.getEndPosition()),t.isBefore(i.getStartPosition())&&(t=i.getEndPosition());let{lineNumber:o,column:s}=t,c=this._editor.getModel(),l=new a.kl(o,s),u=c.findPreviousMatch(this._state.searchString,l,this._state.isRegex,this._state.matchCase,this._state.wholeWord?this._editor.getOption(118):null,!1);if(u&&u.range.isEmpty()&&u.range.getStartPosition().equals(l)&&(l=this._prevSearchPosition(l),u=c.findPreviousMatch(this._state.searchString,l,this._state.isRegex,this._state.matchCase,this._state.wholeWord?this._editor.getOption(118):null,!1)),u){if(!n&&!i.containsRange(u.range))return this._moveToPrevMatch(u.range.getStartPosition(),!0);this._setCurrentFindMatch(u.range)}}moveToPrevMatch(){this._moveToPrevMatch(this._editor.getSelection().getStartPosition())}_nextSearchPosition(e){let t=this._state.isRegex&&(this._state.searchString.indexOf(`^`)>=0||this._state.searchString.indexOf(`$`)>=0),{lineNumber:n,column:r}=e,i=this._editor.getModel();return t||r===i.getLineMaxColumn(n)?(n===i.getLineCount()?n=1:n++,r=1):r++,new a.kl(n,r)}_moveToNextMatch(e){if(!this._state.canNavigateForward()){let t=this._decorations.matchBeforePosition(e);t&&this._setCurrentFindMatch(t);return}if(this._decorations.getCount()<19999){let t=this._decorations.matchAfterPosition(e);t&&t.isEmpty()&&t.getStartPosition().equals(e)&&(e=this._nextSearchPosition(e),t=this._decorations.matchAfterPosition(e)),t&&this._setCurrentFindMatch(t);return}let t=this._getNextMatch(e,!1,!0);t&&this._setCurrentFindMatch(t.range)}_getNextMatch(t,n,r,i=!1){if(this._cannotFind())return null;let o=this._decorations.getFindScope(),s=e._getSearchRange(this._editor.getModel(),o);s.getEndPosition().isBefore(t)&&(t=s.getStartPosition()),t.isBefore(s.getStartPosition())&&(t=s.getStartPosition());let{lineNumber:c,column:l}=t,u=this._editor.getModel(),d=new a.kl(c,l),f=u.findNextMatch(this._state.searchString,d,this._state.isRegex,this._state.matchCase,this._state.wholeWord?this._editor.getOption(118):null,n);return r&&f&&f.range.isEmpty()&&f.range.getStartPosition().equals(d)&&(d=this._nextSearchPosition(d),f=u.findNextMatch(this._state.searchString,d,this._state.isRegex,this._state.matchCase,this._state.wholeWord?this._editor.getOption(118):null,n)),f?!i&&!s.containsRange(f.range)?this._getNextMatch(f.range.getEndPosition(),n,r,!0):f:null}moveToNextMatch(){this._moveToNextMatch(this._editor.getSelection().getEndPosition())}_getReplacePattern(){return this._state.isRegex?Kc(this._state.replaceString):Uc.fromStaticValue(this._state.replaceString)}replace(){if(!this._hasMatches())return;let e=this._getReplacePattern(),t=this._editor.getSelection(),n=this._getNextMatch(t.getStartPosition(),!0,!1);if(n)if(t.equalsRange(n.range)){let r=e.buildReplaceString(n.matches,this._state.preserveCase),i=new o.zn(t,r);this._executeEditorCommand(`replace`,i),this._decorations.setStartPosition(new a.kl(t.startLineNumber,t.startColumn+r.length)),this.research(!0)}else this._decorations.setStartPosition(this._editor.getPosition()),this._setCurrentFindMatch(n.range)}_findMatches(t,n,r){let i=(t||[null]).map(t=>e._getSearchRange(this._editor.getModel(),t));return this._editor.getModel().findMatches(this._state.searchString,i,this._state.isRegex,this._state.matchCase,this._state.wholeWord?this._editor.getOption(118):null,n,r)}replaceAll(){if(!this._hasMatches())return;let e=this._decorations.getFindScopes();e===null&&this._state.matchesCount>=19999?this._largeReplaceAll():this._regularReplaceAll(e),this.research(!1)}_largeReplaceAll(){let e=new a.ns(this._state.searchString,this._state.isRegex,this._state.matchCase,this._state.wholeWord?this._editor.getOption(118):null).parseSearchRequest();if(!e)return;let t=e.regex;if(!t.multiline){let e=`mu`;t.ignoreCase&&(e+=`i`),t.global&&(e+=`g`),t=new RegExp(t.source,e)}let n=this._editor.getModel(),r=n.getValue(1),i=n.getFullModelRange(),s=this._getReplacePattern(),c,l=this._state.preserveCase;c=s.hasReplacementPatterns||l?r.replace(t,function(){return s.buildReplaceString(arguments,l)}):r.replace(t,s.buildReplaceString(null,l));let u=new o.Bn(i,c,this._editor.getSelection());this._executeEditorCommand(`replaceAll`,u)}_regularReplaceAll(e){let t=this._getReplacePattern(),n=this._findMatches(e,t.hasReplacementPatterns||this._state.preserveCase,1073741824),r=[];for(let e=0,i=n.length;e<i;e++)r[e]=t.buildReplaceString(n[e].matches,this._state.preserveCase);let i=new Lc(this._editor.getSelection(),n.map(e=>e.range),r);this._executeEditorCommand(`replaceAll`,i)}selectAllMatches(){if(!this._hasMatches())return;let e=this._decorations.getFindScopes(),t=this._findMatches(e,!1,1073741824).map(e=>new a.Dl(e.range.startLineNumber,e.range.startColumn,e.range.endLineNumber,e.range.endColumn)),n=this._editor.getSelection();for(let e=0,r=t.length;e<r;e++)if(t[e].equalsRange(n)){t=[n].concat(t.slice(0,e),t.slice(e+1));break}this._editor.setSelections(t)}_executeEditorCommand(e,t){try{this._ignoreModelContentChanged=!0,this._editor.pushUndoStop(),this._editor.executeCommand(e,t),this._editor.pushUndoStop()}finally{this._ignoreModelContentChanged=!1}}},il=class e extends o.Dn{constructor(e,t,n,r){super(),this._hideSoon=this._register(new a.ys(()=>this._hide(),2e3)),this._isVisible=!1,this._editor=e,this._state=t,this._keybindingService=n,this._domNode=document.createElement(`div`),this._domNode.className=`findOptionsWidget`,this._domNode.style.display=`none`,this._domNode.style.top=`10px`,this._domNode.setAttribute(`role`,`presentation`),this._domNode.setAttribute(`aria-hidden`,`true`);let i=r.getColorTheme().getColor(a.cr),s=r.getColorTheme().getColor(a.lr),c=r.getColorTheme().getColor(a.sr);this.caseSensitive=this._register(new o.U({appendTitle:this._keybindingLabelFor(B.ToggleCaseSensitiveCommand),isChecked:this._state.matchCase,inputActiveOptionBorder:i,inputActiveOptionForeground:s,inputActiveOptionBackground:c})),this._domNode.appendChild(this.caseSensitive.domNode),this._register(this.caseSensitive.onChange(()=>{this._state.change({matchCase:this.caseSensitive.checked},!1)})),this.wholeWords=this._register(new o.G({appendTitle:this._keybindingLabelFor(B.ToggleWholeWordCommand),isChecked:this._state.wholeWord,inputActiveOptionBorder:i,inputActiveOptionForeground:s,inputActiveOptionBackground:c})),this._domNode.appendChild(this.wholeWords.domNode),this._register(this.wholeWords.onChange(()=>{this._state.change({wholeWord:this.wholeWords.checked},!1)})),this.regex=this._register(new o.W({appendTitle:this._keybindingLabelFor(B.ToggleRegexCommand),isChecked:this._state.isRegex,inputActiveOptionBorder:i,inputActiveOptionForeground:s,inputActiveOptionBackground:c})),this._domNode.appendChild(this.regex.domNode),this._register(this.regex.onChange(()=>{this._state.change({isRegex:this.regex.checked},!1)})),this._editor.addOverlayWidget(this),this._register(this._state.onFindReplaceStateChange(e=>{let t=!1;e.isRegex&&(this.regex.checked=this._state.isRegex,t=!0),e.wholeWord&&(this.wholeWords.checked=this._state.wholeWord,t=!0),e.matchCase&&(this.caseSensitive.checked=this._state.matchCase,t=!0),!this._state.isRevealed&&t&&this._revealTemporarily()})),this._register(a.Ka(this._domNode,a.Ua.MOUSE_LEAVE,e=>this._onMouseLeave())),this._register(a.Ka(this._domNode,`mouseover`,e=>this._onMouseOver())),this._applyTheme(r.getColorTheme()),this._register(r.onDidColorThemeChange(this._applyTheme.bind(this)))}_keybindingLabelFor(e){let t=this._keybindingService.lookupKeybinding(e);return t?` (${t.getLabel()})`:``}dispose(){this._editor.removeOverlayWidget(this),super.dispose()}getId(){return e.ID}getDomNode(){return this._domNode}getPosition(){return{preference:0}}highlightFindOptions(){this._revealTemporarily()}_revealTemporarily(){this._show(),this._hideSoon.schedule()}_onMouseLeave(){this._hideSoon.schedule()}_onMouseOver(){this._hideSoon.cancel()}_show(){this._isVisible||(this._isVisible=!0,this._domNode.style.display=`block`)}_hide(){this._isVisible&&(this._isVisible=!1,this._domNode.style.display=`none`)}_applyTheme(e){let t={inputActiveOptionBorder:e.getColor(a.cr),inputActiveOptionForeground:e.getColor(a.lr),inputActiveOptionBackground:e.getColor(a.sr)};this.caseSensitive.style(t),this.wholeWords.style(t),this.regex.style(t)}};il.ID=`editor.contrib.findOptionsWidget`,a.ba((e,t)=>{let n=e.getColor(a.$n);n&&t.addRule(`.monaco-editor .findOptionsWidget { background-color: ${n}; }`);let r=e.getColor(a.tr);r&&t.addRule(`.monaco-editor .findOptionsWidget { color: ${r}; }`);let i=e.getColor(a.zi);i&&t.addRule(`.monaco-editor .findOptionsWidget { box-shadow: 0 0 8px 2px ${i}; }`);let o=e.getColor(a.en);o&&t.addRule(`.monaco-editor .findOptionsWidget { border: 2px solid ${o}; }`)});function al(e,t){return e===1?!0:e===2?!1:t}var ol=class extends a.Xl{constructor(){super(),this._onFindReplaceStateChange=this._register(new a.Ul),this.onFindReplaceStateChange=this._onFindReplaceStateChange.event,this._searchString=``,this._replaceString=``,this._isRevealed=!1,this._isReplaceRevealed=!1,this._isRegex=!1,this._isRegexOverride=0,this._wholeWord=!1,this._wholeWordOverride=0,this._matchCase=!1,this._matchCaseOverride=0,this._preserveCase=!1,this._preserveCaseOverride=0,this._searchScope=null,this._matchesPosition=0,this._matchesCount=0,this._currentMatch=null,this._loop=!0,this._isSearching=!1,this._filters=null}get searchString(){return this._searchString}get replaceString(){return this._replaceString}get isRevealed(){return this._isRevealed}get isReplaceRevealed(){return this._isReplaceRevealed}get isRegex(){return al(this._isRegexOverride,this._isRegex)}get wholeWord(){return al(this._wholeWordOverride,this._wholeWord)}get matchCase(){return al(this._matchCaseOverride,this._matchCase)}get preserveCase(){return al(this._preserveCaseOverride,this._preserveCase)}get actualIsRegex(){return this._isRegex}get actualWholeWord(){return this._wholeWord}get actualMatchCase(){return this._matchCase}get actualPreserveCase(){return this._preserveCase}get searchScope(){return this._searchScope}get matchesPosition(){return this._matchesPosition}get matchesCount(){return this._matchesCount}get currentMatch(){return this._currentMatch}changeMatchInfo(e,t,n){let r={moveCursor:!1,updateHistory:!1,searchString:!1,replaceString:!1,isRevealed:!1,isReplaceRevealed:!1,isRegex:!1,wholeWord:!1,matchCase:!1,preserveCase:!1,searchScope:!1,matchesPosition:!1,matchesCount:!1,currentMatch:!1,loop:!1,isSearching:!1,filters:!1},i=!1;t===0&&(e=0),e>t&&(e=t),this._matchesPosition!==e&&(this._matchesPosition=e,r.matchesPosition=!0,i=!0),this._matchesCount!==t&&(this._matchesCount=t,r.matchesCount=!0,i=!0),n!==void 0&&(a.Ol.equalsRange(this._currentMatch,n)||(this._currentMatch=n,r.currentMatch=!0,i=!0)),i&&this._onFindReplaceStateChange.fire(r)}change(e,t,n=!0){let r={moveCursor:t,updateHistory:n,searchString:!1,replaceString:!1,isRevealed:!1,isReplaceRevealed:!1,isRegex:!1,wholeWord:!1,matchCase:!1,preserveCase:!1,searchScope:!1,matchesPosition:!1,matchesCount:!1,currentMatch:!1,loop:!1,isSearching:!1,filters:!1},i=!1,o=this.isRegex,s=this.wholeWord,c=this.matchCase,l=this.preserveCase;e.searchString!==void 0&&this._searchString!==e.searchString&&(this._searchString=e.searchString,r.searchString=!0,i=!0),e.replaceString!==void 0&&this._replaceString!==e.replaceString&&(this._replaceString=e.replaceString,r.replaceString=!0,i=!0),e.isRevealed!==void 0&&this._isRevealed!==e.isRevealed&&(this._isRevealed=e.isRevealed,r.isRevealed=!0,i=!0),e.isReplaceRevealed!==void 0&&this._isReplaceRevealed!==e.isReplaceRevealed&&(this._isReplaceRevealed=e.isReplaceRevealed,r.isReplaceRevealed=!0,i=!0),e.isRegex!==void 0&&(this._isRegex=e.isRegex),e.wholeWord!==void 0&&(this._wholeWord=e.wholeWord),e.matchCase!==void 0&&(this._matchCase=e.matchCase),e.preserveCase!==void 0&&(this._preserveCase=e.preserveCase),e.searchScope!==void 0&&(e.searchScope?.every(e=>this._searchScope?.some(t=>!a.Ol.equalsRange(t,e)))||(this._searchScope=e.searchScope,r.searchScope=!0,i=!0)),e.loop!==void 0&&this._loop!==e.loop&&(this._loop=e.loop,r.loop=!0,i=!0),e.isSearching!==void 0&&this._isSearching!==e.isSearching&&(this._isSearching=e.isSearching,r.isSearching=!0,i=!0),e.filters!==void 0&&(this._filters?this._filters.update(e.filters):this._filters=e.filters,r.filters=!0,i=!0),this._isRegexOverride=e.isRegexOverride===void 0?0:e.isRegexOverride,this._wholeWordOverride=e.wholeWordOverride===void 0?0:e.wholeWordOverride,this._matchCaseOverride=e.matchCaseOverride===void 0?0:e.matchCaseOverride,this._preserveCaseOverride=e.preserveCaseOverride===void 0?0:e.preserveCaseOverride,o!==this.isRegex&&(i=!0,r.isRegex=!0),s!==this.wholeWord&&(i=!0,r.wholeWord=!0),c!==this.matchCase&&(i=!0,r.matchCase=!0),l!==this.preserveCase&&(i=!0,r.preserveCase=!0),i&&this._onFindReplaceStateChange.fire(r)}canNavigateBack(){return this.canNavigateInLoop()||this.matchesPosition!==1}canNavigateForward(){return this.canNavigateInLoop()||this.matchesPosition<this.matchesCount}canNavigateInLoop(){return this._loop||this.matchesCount>=19999}};function sl(e){return e.lookupKeybinding(`history.showPrevious`)?.getElectronAccelerator()===`Up`&&e.lookupKeybinding(`history.showNext`)?.getElectronAccelerator()===`Down`}var cl=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},ll=o.Ut(`find-selection`,a.Tl.selection,a.Td(`findSelectionIcon`,`Icon for 'Find in Selection' in the editor find widget.`)),ul=o.Ut(`find-collapsed`,a.Tl.chevronRight,a.Td(`findCollapsedIcon`,`Icon to indicate that the editor find widget is collapsed.`)),dl=o.Ut(`find-expanded`,a.Tl.chevronDown,a.Td(`findExpandedIcon`,`Icon to indicate that the editor find widget is expanded.`)),fl=o.Ut(`find-replace`,a.Tl.replace,a.Td(`findReplaceIcon`,`Icon for 'Replace' in the editor find widget.`)),pl=o.Ut(`find-replace-all`,a.Tl.replaceAll,a.Td(`findReplaceAllIcon`,`Icon for 'Replace All' in the editor find widget.`)),ml=o.Ut(`find-previous-match`,a.Tl.arrowUp,a.Td(`findPreviousMatchIcon`,`Icon for 'Find Previous' in the editor find widget.`)),hl=o.Ut(`find-next-match`,a.Tl.arrowDown,a.Td(`findNextMatchIcon`,`Icon for 'Find Next' in the editor find widget.`)),gl=a.Td(`label.find`,`Find`),_l=a.Td(`placeholder.find`,`Find`),vl=a.Td(`label.previousMatchButton`,`Previous Match`),yl=a.Td(`label.nextMatchButton`,`Next Match`),bl=a.Td(`label.toggleSelectionFind`,`Find in Selection`),xl=a.Td(`label.closeButton`,`Close`),Sl=a.Td(`label.replace`,`Replace`),Cl=a.Td(`placeholder.replace`,`Replace`),wl=a.Td(`label.replaceButton`,`Replace`),Tl=a.Td(`label.replaceAllButton`,`Replace All`),El=a.Td(`label.toggleReplaceButton`,`Toggle Replace`),Dl=a.Td(`title.matchesCountLimit`,`Only the first {0} results are highlighted, but all find operations work on the entire text.`,tl),Ol=a.Td(`label.matchesLocation`,`{0} of {1}`),kl=a.Td(`label.noResults`,`No results`),Al=419,jl=221,Ml=69,Nl=33,Pl=`ctrlEnterReplaceAll.windows.donotask`,Fl=a.bd?256:2048,Il=class{constructor(e){this.afterLineNumber=e,this.heightInPx=Nl,this.suppressMouseDown=!1,this.domNode=document.createElement(`div`),this.domNode.className=`dock-find-viewzone`}};function Ll(e,t,n){let r=!!t.match(/\n/);if(n&&r&&n.selectionStart>0){e.stopPropagation();return}}function Rl(e,t,n){let r=!!t.match(/\n/);if(n&&r&&n.selectionEnd<n.value.length){e.stopPropagation();return}}var zl=class e extends o.Dn{constructor(e,t,n,r,i,o,s,c,l){super(),this._cachedHeight=null,this._revealTimeouts=[],this._codeEditor=e,this._controller=t,this._state=n,this._contextViewProvider=r,this._keybindingService=i,this._contextKeyService=o,this._storageService=c,this._notificationService=l,this._ctrlEnterReplaceAllWarningPrompted=!!c.getBoolean(Pl,0),this._isVisible=!1,this._isReplaceVisible=!1,this._ignoreChangeEvent=!1,this._updateHistoryDelayer=new a.ms(500),this._register(a.au(()=>this._updateHistoryDelayer.cancel())),this._register(this._state.onFindReplaceStateChange(e=>this._onStateChanged(e))),this._buildDomNode(),this._updateButtons(),this._tryUpdateWidgetWidth(),this._findInput.inputBox.layout(),this._register(this._codeEditor.onDidChangeConfiguration(e=>{if(e.hasChanged(82)&&(this._codeEditor.getOption(82)&&this._state.change({isReplaceRevealed:!1},!1),this._updateButtons()),e.hasChanged(132)&&this._tryUpdateWidgetWidth(),e.hasChanged(2)&&this.updateAccessibilitySupport(),e.hasChanged(36)){let e=this._codeEditor.getOption(36).addExtraSpaceOnTop;e&&!this._viewZone&&(this._viewZone=new Il(0),this._showViewZone()),!e&&this._viewZone&&this._removeViewZone()}})),this.updateAccessibilitySupport(),this._register(this._codeEditor.onDidChangeCursorSelection(()=>{this._isVisible&&this._updateToggleSelectionFindButton()})),this._register(this._codeEditor.onDidFocusEditorWidget(()=>cl(this,void 0,void 0,function*(){if(this._isVisible){let e=yield this._controller.getGlobalBufferTerm();e&&e!==this._state.searchString&&(this._state.change({searchString:e},!1),this._findInput.select())}}))),this._findInputFocused=Jc.bindTo(o),this._findFocusTracker=this._register(a.No(this._findInput.inputBox.inputElement)),this._register(this._findFocusTracker.onDidFocus(()=>{this._findInputFocused.set(!0),this._updateSearchScope()})),this._register(this._findFocusTracker.onDidBlur(()=>{this._findInputFocused.set(!1)})),this._replaceInputFocused=Yc.bindTo(o),this._replaceFocusTracker=this._register(a.No(this._replaceInput.inputBox.inputElement)),this._register(this._replaceFocusTracker.onDidFocus(()=>{this._replaceInputFocused.set(!0),this._updateSearchScope()})),this._register(this._replaceFocusTracker.onDidBlur(()=>{this._replaceInputFocused.set(!1)})),this._codeEditor.addOverlayWidget(this),this._codeEditor.getOption(36).addExtraSpaceOnTop&&(this._viewZone=new Il(0)),this._applyTheme(s.getColorTheme()),this._register(s.onDidColorThemeChange(this._applyTheme.bind(this))),this._register(this._codeEditor.onDidChangeModel(()=>{this._isVisible&&(this._viewZoneId=void 0)})),this._register(this._codeEditor.onDidScrollChange(e=>{if(e.scrollTopChanged){this._layoutViewZone();return}setTimeout(()=>{this._layoutViewZone()},0)}))}getId(){return e.ID}getDomNode(){return this._domNode}getPosition(){return this._isVisible?{preference:0}:null}_onStateChanged(e){if(e.searchString){try{this._ignoreChangeEvent=!0,this._findInput.setValue(this._state.searchString)}finally{this._ignoreChangeEvent=!1}this._updateButtons()}if(e.replaceString&&(this._replaceInput.inputBox.value=this._state.replaceString),e.isRevealed&&(this._state.isRevealed?this._reveal():this._hide(!0)),e.isReplaceRevealed&&(this._state.isReplaceRevealed?!this._codeEditor.getOption(82)&&!this._isReplaceVisible&&(this._isReplaceVisible=!0,this._replaceInput.width=a.go(this._findInput.domNode),this._updateButtons(),this._replaceInput.inputBox.layout()):this._isReplaceVisible&&(this._isReplaceVisible=!1,this._updateButtons())),(e.isRevealed||e.isReplaceRevealed)&&(this._state.isRevealed||this._state.isReplaceRevealed)&&this._tryUpdateHeight()&&this._showViewZone(),e.isRegex&&this._findInput.setRegex(this._state.isRegex),e.wholeWord&&this._findInput.setWholeWords(this._state.wholeWord),e.matchCase&&this._findInput.setCaseSensitive(this._state.matchCase),e.preserveCase&&this._replaceInput.setPreserveCase(this._state.preserveCase),e.searchScope&&(this._state.searchScope?this._toggleSelectionFind.checked=!0:this._toggleSelectionFind.checked=!1,this._updateToggleSelectionFindButton()),e.searchString||e.matchesCount||e.matchesPosition){let e=this._state.searchString.length>0&&this._state.matchesCount===0;this._domNode.classList.toggle(`no-results`,e),this._updateMatchesCount(),this._updateButtons()}(e.searchString||e.currentMatch)&&this._layoutViewZone(),e.updateHistory&&this._delayedUpdateHistory(),e.loop&&this._updateButtons()}_delayedUpdateHistory(){this._updateHistoryDelayer.trigger(this._updateHistory.bind(this)).then(void 0,a.fu)}_updateHistory(){this._state.searchString&&this._findInput.inputBox.addToHistory(),this._state.replaceString&&this._replaceInput.inputBox.addToHistory()}_updateMatchesCount(){this._matchesCount.style.minWidth=Ml+`px`,this._state.matchesCount>=19999?this._matchesCount.title=Dl:this._matchesCount.title=``,this._matchesCount.firstChild&&this._matchesCount.removeChild(this._matchesCount.firstChild);let e;if(this._state.matchesCount>0){let t=String(this._state.matchesCount);this._state.matchesCount>=19999&&(t+=`+`);let n=String(this._state.matchesPosition);n===`0`&&(n=`?`),e=a.Rc(Ol,n,t)}else e=kl;this._matchesCount.appendChild(document.createTextNode(e)),o.Zn(this._getAriaLabel(e,this._state.currentMatch,this._state.searchString)),Ml=Math.max(Ml,this._matchesCount.clientWidth)}_getAriaLabel(e,t,n){if(e===kl)return n===``?a.Td(`ariaSearchNoResultEmpty`,`{0} found`,e):a.Td(`ariaSearchNoResult`,`{0} found for '{1}'`,e,n);if(t){let r=a.Td(`ariaSearchNoResultWithLineNum`,`{0} found for '{1}', at {2}`,e,n,t.startLineNumber+`:`+t.startColumn),i=this._codeEditor.getModel();return i&&t.startLineNumber<=i.getLineCount()&&t.startLineNumber>=1?`${i.getLineContent(t.startLineNumber)}, ${r}`:r}return a.Td(`ariaSearchNoResultWithLineNumNoCurrentMatch`,`{0} found for '{1}'`,e,n)}_updateToggleSelectionFindButton(){let e=this._codeEditor.getSelection(),t=e?e.startLineNumber!==e.endLineNumber||e.startColumn!==e.endColumn:!1,n=this._toggleSelectionFind.checked;this._isVisible&&(n||t)?this._toggleSelectionFind.enable():this._toggleSelectionFind.disable()}_updateButtons(){this._findInput.setEnabled(this._isVisible),this._replaceInput.setEnabled(this._isVisible&&this._isReplaceVisible),this._updateToggleSelectionFindButton(),this._closeBtn.setEnabled(this._isVisible);let e=this._state.searchString.length>0,t=!!this._state.matchesCount;this._prevBtn.setEnabled(this._isVisible&&e&&t&&this._state.canNavigateBack()),this._nextBtn.setEnabled(this._isVisible&&e&&t&&this._state.canNavigateForward()),this._replaceBtn.setEnabled(this._isVisible&&this._isReplaceVisible&&e),this._replaceAllBtn.setEnabled(this._isVisible&&this._isReplaceVisible&&e),this._domNode.classList.toggle(`replaceToggled`,this._isReplaceVisible),this._toggleReplaceBtn.setExpanded(this._isReplaceVisible);let n=!this._codeEditor.getOption(82);this._toggleReplaceBtn.setEnabled(this._isVisible&&n)}_reveal(){if(this._revealTimeouts.forEach(e=>{clearTimeout(e)}),this._revealTimeouts=[],!this._isVisible){this._isVisible=!0;let e=this._codeEditor.getSelection();switch(this._codeEditor.getOption(36).autoFindInSelection){case`always`:this._toggleSelectionFind.checked=!0;break;case`never`:this._toggleSelectionFind.checked=!1;break;case`multiline`:{let t=!!e&&e.startLineNumber!==e.endLineNumber;this._toggleSelectionFind.checked=t;break}default:break}this._tryUpdateWidgetWidth(),this._updateButtons(),this._revealTimeouts.push(setTimeout(()=>{this._domNode.classList.add(`visible`),this._domNode.setAttribute(`aria-hidden`,`false`)},0)),this._revealTimeouts.push(setTimeout(()=>{this._findInput.validate()},200)),this._codeEditor.layoutOverlayWidget(this);let t=!0;if(this._codeEditor.getOption(36).seedSearchStringFromSelection&&e){let n=this._codeEditor.getDomNode();if(n){let r=a.uo(n),i=this._codeEditor.getScrolledVisiblePosition(e.getStartPosition()),o=r.left+(i?i.left:0),s=i?i.top:0;if(this._viewZone&&s<this._viewZone.heightInPx){e.endLineNumber>e.startLineNumber&&(t=!1);let n=a.mo(this._domNode).left;o>n&&(t=!1);let i=this._codeEditor.getScrolledVisiblePosition(e.getEndPosition());r.left+(i?i.left:0)>n&&(t=!1)}}}this._showViewZone(t)}}_hide(e){this._revealTimeouts.forEach(e=>{clearTimeout(e)}),this._revealTimeouts=[],this._isVisible&&(this._isVisible=!1,this._updateButtons(),this._domNode.classList.remove(`visible`),this._domNode.setAttribute(`aria-hidden`,`true`),this._findInput.clearMessage(),e&&this._codeEditor.focus(),this._codeEditor.layoutOverlayWidget(this),this._removeViewZone())}_layoutViewZone(e){if(!this._codeEditor.getOption(36).addExtraSpaceOnTop){this._removeViewZone();return}if(!this._isVisible)return;let t=this._viewZone;this._viewZoneId!==void 0||!t||this._codeEditor.changeViewZones(n=>{t.heightInPx=this._getHeight(),this._viewZoneId=n.addZone(t),this._codeEditor.setScrollTop(e||this._codeEditor.getScrollTop()+t.heightInPx)})}_showViewZone(e=!0){if(!this._isVisible||!this._codeEditor.getOption(36).addExtraSpaceOnTop)return;this._viewZone===void 0&&(this._viewZone=new Il(0));let t=this._viewZone;this._codeEditor.changeViewZones(n=>{if(this._viewZoneId!==void 0){let r=this._getHeight();if(r===t.heightInPx)return;let i=r-t.heightInPx;t.heightInPx=r,n.layoutZone(this._viewZoneId),e&&this._codeEditor.setScrollTop(this._codeEditor.getScrollTop()+i);return}else{let r=this._getHeight();if(r-=this._codeEditor.getOption(76).top,r<=0)return;t.heightInPx=r,this._viewZoneId=n.addZone(t),e&&this._codeEditor.setScrollTop(this._codeEditor.getScrollTop()+r)}})}_removeViewZone(){this._codeEditor.changeViewZones(e=>{this._viewZoneId!==void 0&&(e.removeZone(this._viewZoneId),this._viewZoneId=void 0,this._viewZone&&=(this._codeEditor.setScrollTop(this._codeEditor.getScrollTop()-this._viewZone.heightInPx),void 0))})}_applyTheme(e){let t={inputActiveOptionBorder:e.getColor(a.cr),inputActiveOptionBackground:e.getColor(a.sr),inputActiveOptionForeground:e.getColor(a.lr),inputBackground:e.getColor(a.ur),inputForeground:e.getColor(a.fr),inputBorder:e.getColor(a.dr),inputValidationInfoBackground:e.getColor(a.gr),inputValidationInfoForeground:e.getColor(a.vr),inputValidationInfoBorder:e.getColor(a._r),inputValidationWarningBackground:e.getColor(a.yr),inputValidationWarningForeground:e.getColor(a.xr),inputValidationWarningBorder:e.getColor(a.br),inputValidationErrorBackground:e.getColor(a.pr),inputValidationErrorForeground:e.getColor(a.hr),inputValidationErrorBorder:e.getColor(a.mr)};this._findInput.style(t),this._replaceInput.style(t),this._toggleSelectionFind.style(t)}_tryUpdateWidgetWidth(){if(!this._isVisible||!a.So(this._domNode))return;let e=this._codeEditor.getLayoutInfo();if(e.contentWidth<=0){this._domNode.classList.add(`hiddenEditor`);return}else this._domNode.classList.contains(`hiddenEditor`)&&this._domNode.classList.remove(`hiddenEditor`);let t=e.width,n=e.minimap.minimapWidth,r=!1,i=!1,o=!1;if(this._resized&&a.go(this._domNode)>Al){this._domNode.style.maxWidth=`${t-28-n-15}px`,this._replaceInput.width=a.go(this._findInput.domNode);return}if(Al+28+n>=t&&(i=!0),Al+28+n-Ml>=t&&(o=!0),Al+28+n-Ml>=t+50&&(r=!0),this._domNode.classList.toggle(`collapsed-find-widget`,r),this._domNode.classList.toggle(`narrow-find-widget`,o),this._domNode.classList.toggle(`reduced-find-widget`,i),!o&&!r&&(this._domNode.style.maxWidth=`${t-28-n-15}px`),this._resized){this._findInput.inputBox.layout();let e=this._findInput.inputBox.element.clientWidth;e>0&&(this._replaceInput.width=e)}else this._isReplaceVisible&&(this._replaceInput.width=a.go(this._findInput.domNode))}_getHeight(){let e=0;return e+=4,e+=this._findInput.inputBox.height+2,this._isReplaceVisible&&(e+=4,e+=this._replaceInput.inputBox.height+2),e+=4,e}_tryUpdateHeight(){let e=this._getHeight();return this._cachedHeight!==null&&this._cachedHeight===e?!1:(this._cachedHeight=e,this._domNode.style.height=`${e}px`,!0)}focusFindInput(){this._findInput.select(),this._findInput.focus()}focusReplaceInput(){this._replaceInput.select(),this._replaceInput.focus()}highlightFindOptions(){this._findInput.highlightFindOptions()}_updateSearchScope(){if(this._codeEditor.hasModel()&&this._toggleSelectionFind.checked){let e=this._codeEditor.getSelections();e.map(e=>{e.endColumn===1&&e.endLineNumber>e.startLineNumber&&(e=e.setEndPosition(e.endLineNumber-1,this._codeEditor.getModel().getLineMaxColumn(e.endLineNumber-1)));let t=this._state.currentMatch;return e.startLineNumber!==e.endLineNumber&&!a.Ol.equalsRange(e,t)?e:null}).filter(e=>!!e),e.length&&this._state.change({searchScope:e},!0)}}_onFindInputMouseDown(e){e.middleButton&&e.stopPropagation()}_onFindInputKeyDown(e){if(e.equals(Fl|3))if(this._keybindingService.dispatchEvent(e,e.target)){e.preventDefault();return}else{this._findInput.inputBox.insertAtCursor(`
96
+ `),e.preventDefault();return}if(e.equals(2)){this._isReplaceVisible?this._replaceInput.focus():this._findInput.focusOnCaseSensitive(),e.preventDefault();return}if(e.equals(2066)){this._codeEditor.focus(),e.preventDefault();return}if(e.equals(16))return Ll(e,this._findInput.getValue(),this._findInput.domNode.querySelector(`textarea`));if(e.equals(18))return Rl(e,this._findInput.getValue(),this._findInput.domNode.querySelector(`textarea`))}_onReplaceInputKeyDown(e){if(e.equals(Fl|3))if(this._keybindingService.dispatchEvent(e,e.target)){e.preventDefault();return}else{a.Cd&&a.xd&&!this._ctrlEnterReplaceAllWarningPrompted&&(this._notificationService.info(a.Td(`ctrlEnter.keybindingChanged`,`Ctrl+Enter now inserts line break instead of replacing all. You can modify the keybinding for editor.action.replaceAll to override this behavior.`)),this._ctrlEnterReplaceAllWarningPrompted=!0,this._storageService.store(Pl,!0,0,0)),this._replaceInput.inputBox.insertAtCursor(`
97
+ `),e.preventDefault();return}if(e.equals(2)){this._findInput.focusOnCaseSensitive(),e.preventDefault();return}if(e.equals(1026)){this._findInput.focus(),e.preventDefault();return}if(e.equals(2066)){this._codeEditor.focus(),e.preventDefault();return}if(e.equals(16))return Ll(e,this._replaceInput.inputBox.value,this._replaceInput.inputBox.element.querySelector(`textarea`));if(e.equals(18))return Rl(e,this._replaceInput.inputBox.value,this._replaceInput.inputBox.element.querySelector(`textarea`))}getVerticalSashLeft(e){return 0}_keybindingLabelFor(e){let t=this._keybindingService.lookupKeybinding(e);return t?` (${t.getLabel()})`:``}_buildDomNode(){this._findInput=this._register(new za(null,this._contextViewProvider,{width:jl,label:gl,placeholder:_l,appendCaseSensitiveLabel:this._keybindingLabelFor(B.ToggleCaseSensitiveCommand),appendWholeWordsLabel:this._keybindingLabelFor(B.ToggleWholeWordCommand),appendRegexLabel:this._keybindingLabelFor(B.ToggleRegexCommand),validation:e=>{if(e.length===0||!this._findInput.getRegex())return null;try{return new RegExp(e,`gu`),null}catch(e){return{content:e.message}}},flexibleHeight:!0,flexibleWidth:!0,flexibleMaxHeight:118,showHistoryHint:()=>sl(this._keybindingService)},this._contextKeyService,!0)),this._findInput.setRegex(!!this._state.isRegex),this._findInput.setCaseSensitive(!!this._state.matchCase),this._findInput.setWholeWords(!!this._state.wholeWord),this._register(this._findInput.onKeyDown(e=>this._onFindInputKeyDown(e))),this._register(this._findInput.inputBox.onDidChange(()=>{this._ignoreChangeEvent||this._state.change({searchString:this._findInput.getValue()},!0)})),this._register(this._findInput.onDidOptionChange(()=>{this._state.change({isRegex:this._findInput.getRegex(),wholeWord:this._findInput.getWholeWords(),matchCase:this._findInput.getCaseSensitive()},!0)})),this._register(this._findInput.onCaseSensitiveKeyDown(e=>{e.equals(1026)&&this._isReplaceVisible&&(this._replaceInput.focus(),e.preventDefault())})),this._register(this._findInput.onRegexKeyDown(e=>{e.equals(2)&&this._isReplaceVisible&&(this._replaceInput.focusOnPreserve(),e.preventDefault())})),this._register(this._findInput.inputBox.onDidHeightChange(e=>{this._tryUpdateHeight()&&this._showViewZone()})),a.vd&&this._register(this._findInput.onMouseDown(e=>this._onFindInputMouseDown(e))),this._matchesCount=document.createElement(`div`),this._matchesCount.className=`matchesCount`,this._updateMatchesCount(),this._prevBtn=this._register(new Bl({label:vl+this._keybindingLabelFor(B.PreviousMatchFindAction),icon:ml,onTrigger:()=>{this._codeEditor.getAction(B.PreviousMatchFindAction).run().then(void 0,a.fu)}})),this._nextBtn=this._register(new Bl({label:yl+this._keybindingLabelFor(B.NextMatchFindAction),icon:hl,onTrigger:()=>{this._codeEditor.getAction(B.NextMatchFindAction).run().then(void 0,a.fu)}}));let e=document.createElement(`div`);e.className=`find-part`,e.appendChild(this._findInput.domNode);let t=document.createElement(`div`);t.className=`find-actions`,e.appendChild(t),t.appendChild(this._matchesCount),t.appendChild(this._prevBtn.domNode),t.appendChild(this._nextBtn.domNode),this._toggleSelectionFind=this._register(new o.K({icon:ll,title:bl+this._keybindingLabelFor(B.ToggleSearchScopeCommand),isChecked:!1})),this._register(this._toggleSelectionFind.onChange(()=>{if(this._toggleSelectionFind.checked){if(this._codeEditor.hasModel()){let e=this._codeEditor.getSelections();e.map(e=>(e.endColumn===1&&e.endLineNumber>e.startLineNumber&&(e=e.setEndPosition(e.endLineNumber-1,this._codeEditor.getModel().getLineMaxColumn(e.endLineNumber-1))),e.isEmpty()?null:e)).filter(e=>!!e),e.length&&this._state.change({searchScope:e},!0)}}else this._state.change({searchScope:null},!0)})),t.appendChild(this._toggleSelectionFind.domNode),this._closeBtn=this._register(new Bl({label:xl+this._keybindingLabelFor(B.CloseFindWidgetCommand),icon:o.Wt,onTrigger:()=>{this._state.change({isRevealed:!1,searchScope:null},!1)},onKeyDown:e=>{e.equals(2)&&this._isReplaceVisible&&(this._replaceBtn.isEnabled()?this._replaceBtn.focus():this._codeEditor.focus(),e.preventDefault())}})),t.appendChild(this._closeBtn.domNode),this._replaceInput=this._register(new Ba(null,void 0,{label:Sl,placeholder:Cl,appendPreserveCaseLabel:this._keybindingLabelFor(B.TogglePreserveCaseCommand),history:[],flexibleHeight:!0,flexibleWidth:!0,flexibleMaxHeight:118,showHistoryHint:()=>sl(this._keybindingService)},this._contextKeyService,!0)),this._replaceInput.setPreserveCase(!!this._state.preserveCase),this._register(this._replaceInput.onKeyDown(e=>this._onReplaceInputKeyDown(e))),this._register(this._replaceInput.inputBox.onDidChange(()=>{this._state.change({replaceString:this._replaceInput.inputBox.value},!1)})),this._register(this._replaceInput.inputBox.onDidHeightChange(e=>{this._isReplaceVisible&&this._tryUpdateHeight()&&this._showViewZone()})),this._register(this._replaceInput.onDidOptionChange(()=>{this._state.change({preserveCase:this._replaceInput.getPreserveCase()},!0)})),this._register(this._replaceInput.onPreserveCaseKeyDown(e=>{e.equals(2)&&(this._prevBtn.isEnabled()?this._prevBtn.focus():this._nextBtn.isEnabled()?this._nextBtn.focus():this._toggleSelectionFind.enabled?this._toggleSelectionFind.focus():this._closeBtn.isEnabled()&&this._closeBtn.focus(),e.preventDefault())})),this._replaceBtn=this._register(new Bl({label:wl+this._keybindingLabelFor(B.ReplaceOneAction),icon:fl,onTrigger:()=>{this._controller.replace()},onKeyDown:e=>{e.equals(1026)&&(this._closeBtn.focus(),e.preventDefault())}})),this._replaceAllBtn=this._register(new Bl({label:Tl+this._keybindingLabelFor(B.ReplaceAllAction),icon:pl,onTrigger:()=>{this._controller.replaceAll()}}));let n=document.createElement(`div`);n.className=`replace-part`,n.appendChild(this._replaceInput.domNode);let r=document.createElement(`div`);r.className=`replace-actions`,n.appendChild(r),r.appendChild(this._replaceBtn.domNode),r.appendChild(this._replaceAllBtn.domNode),this._toggleReplaceBtn=this._register(new Bl({label:El,className:`codicon toggle left`,onTrigger:()=>{this._state.change({isReplaceRevealed:!this._isReplaceVisible},!1),this._isReplaceVisible&&(this._replaceInput.width=a.go(this._findInput.domNode),this._replaceInput.inputBox.layout()),this._showViewZone()}})),this._toggleReplaceBtn.setExpanded(this._isReplaceVisible),this._domNode=document.createElement(`div`),this._domNode.className=`editor-widget find-widget`,this._domNode.setAttribute(`aria-hidden`,`true`),this._domNode.style.width=`${Al}px`,this._domNode.appendChild(this._toggleReplaceBtn.domNode),this._domNode.appendChild(e),this._domNode.appendChild(n),this._resizeSash=new o.hn(this._domNode,this,{orientation:0,size:2}),this._resized=!1;let i=Al;this._register(this._resizeSash.onDidStart(()=>{i=a.go(this._domNode)})),this._register(this._resizeSash.onDidChange(e=>{this._resized=!0;let t=i+e.startX-e.currentX;t<Al||t>(parseFloat(a.so(this._domNode).maxWidth)||0)||(this._domNode.style.width=`${t}px`,this._isReplaceVisible&&(this._replaceInput.width=a.go(this._findInput.domNode)),this._findInput.inputBox.layout(),this._tryUpdateHeight())})),this._register(this._resizeSash.onDidReset(()=>{let e=a.go(this._domNode);if(e<Al)return;let t=Al;if(!this._resized||e===Al){let e=this._codeEditor.getLayoutInfo();t=e.width-28-e.minimap.minimapWidth-15,this._resized=!0}this._domNode.style.width=`${t}px`,this._isReplaceVisible&&(this._replaceInput.width=a.go(this._findInput.domNode)),this._findInput.inputBox.layout()}))}updateAccessibilitySupport(){let e=this._codeEditor.getOption(2);this._findInput.setFocusInputOnOptionClick(e!==2)}};zl.ID=`editor.contrib.findWidget`;var Bl=class extends o.Dn{constructor(e){super(),this._opts=e;let t=`button`;this._opts.className&&(t=t+` `+this._opts.className),this._opts.icon&&(t=t+` `+a.va.asClassName(this._opts.icon)),this._domNode=document.createElement(`div`),this._domNode.title=this._opts.label,this._domNode.tabIndex=0,this._domNode.className=t,this._domNode.setAttribute(`role`,`button`),this._domNode.setAttribute(`aria-label`,this._opts.label),this.onclick(this._domNode,e=>{this._opts.onTrigger(),e.preventDefault()}),this.onkeydown(this._domNode,e=>{var t,n;if(e.equals(10)||e.equals(3)){this._opts.onTrigger(),e.preventDefault();return}(n=(t=this._opts).onKeyDown)==null||n.call(t,e)})}get domNode(){return this._domNode}isEnabled(){return this._domNode.tabIndex>=0}focus(){this._domNode.focus()}setEnabled(e){this._domNode.classList.toggle(`disabled`,!e),this._domNode.setAttribute(`aria-disabled`,String(!e)),this._domNode.tabIndex=e?0:-1}setExpanded(e){this._domNode.setAttribute(`aria-expanded`,String(!!e)),e?(this._domNode.classList.remove(...a.va.asClassNameArray(ul)),this._domNode.classList.add(...a.va.asClassNameArray(dl))):(this._domNode.classList.remove(...a.va.asClassNameArray(dl)),this._domNode.classList.add(...a.va.asClassNameArray(ul)))}};a.ba((e,t)=>{let n=(e,n)=>{n&&t.addRule(`.monaco-editor ${e} { background-color: ${n}; }`)};n(`.findMatch`,e.getColor(a.Sn)),n(`.currentFindMatch`,e.getColor(a.bn)),n(`.findScope`,e.getColor(a.wn)),n(`.find-widget`,e.getColor(a.$n));let r=e.getColor(a.zi);r&&t.addRule(`.monaco-editor .find-widget { box-shadow: 0 0 8px 2px ${r}; }`);let i=e.getColor(a.Cn);i&&t.addRule(`.monaco-editor .findMatch { border: 1px ${a.wa(e.type)?`dotted`:`solid`} ${i}; box-sizing: border-box; }`);let o=e.getColor(a.xn);o&&t.addRule(`.monaco-editor .currentFindMatch { border: 2px solid ${o}; padding: 1px; box-sizing: border-box; }`);let s=e.getColor(a.Tn);s&&t.addRule(`.monaco-editor .findScope { border: 1px ${a.wa(e.type)?`dashed`:`solid`} ${s}; }`);let c=e.getColor(a.en);c&&t.addRule(`.monaco-editor .find-widget { border: 1px solid ${c}; }`);let l=e.getColor(a.tr);l&&t.addRule(`.monaco-editor .find-widget { color: ${l}; }`);let u=e.getColor(a.rr);u&&t.addRule(`.monaco-editor .find-widget.no-results .matchesCount { color: ${u}; }`);let d=e.getColor(a.nr);if(d)t.addRule(`.monaco-editor .find-widget .monaco-sash { background-color: ${d}; }`);else{let n=e.getColor(a.er);n&&t.addRule(`.monaco-editor .find-widget .monaco-sash { background-color: ${n}; }`)}let f=e.getColor(a.Ii);f&&t.addRule(`
98
+ .monaco-editor .find-widget .button:not(.disabled):hover,
99
+ .monaco-editor .find-widget .codicon-find-selection:hover {
100
+ background-color: ${f} !important;
101
+ }
102
+ `);let p=e.getColor(a.ir);p&&t.addRule(`.monaco-editor .find-widget .monaco-inputbox.synthetic-focus { outline-color: ${p}; }`)});var Vl=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Hl=function(e,t){return function(n,r){t(n,r,e)}},Ul=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Wl=524288;function Gl(e,t=`single`,n=!1){if(!e.hasModel())return null;let r=e.getSelection();if(t===`single`&&r.startLineNumber===r.endLineNumber||t===`multiple`){if(r.isEmpty()){let t=e.getConfiguredWordAtPosition(r.getStartPosition());if(t&&!1===n)return t.word}else if(e.getModel().getValueLengthInRange(r)<Wl)return e.getModel().getValueInRange(r)}return null}var V=class e extends a.Xl{constructor(e,t,n,r){super(),this._editor=e,this._findWidgetVisible=qc.bindTo(t),this._contextKeyService=t,this._storageService=n,this._clipboardService=r,this._updateHistoryDelayer=new a.ms(500),this._state=this._register(new ol),this.loadQueryState(),this._register(this._state.onFindReplaceStateChange(e=>this._onStateChanged(e))),this._model=null,this._register(this._editor.onDidChangeModel(()=>{let e=this._editor.getModel()&&this._state.isRevealed;this.disposeModel(),this._state.change({searchScope:null,matchCase:this._storageService.getBoolean(`editor.matchCase`,1,!1),wholeWord:this._storageService.getBoolean(`editor.wholeWord`,1,!1),isRegex:this._storageService.getBoolean(`editor.isRegex`,1,!1),preserveCase:this._storageService.getBoolean(`editor.preserveCase`,1,!1)},!1),e&&this._start({forceRevealReplace:!1,seedSearchStringFromSelection:`none`,seedSearchStringFromNonEmptySelection:!1,seedSearchStringFromGlobalClipboard:!1,shouldFocus:0,shouldAnimate:!1,updateSearchScope:!1,loop:this._editor.getOption(36).loop})}))}get editor(){return this._editor}static get(t){return t.getContribution(e.ID)}dispose(){this.disposeModel(),super.dispose()}disposeModel(){this._model&&=(this._model.dispose(),null)}_onStateChanged(e){this.saveQueryState(e),e.isRevealed&&(this._state.isRevealed?this._findWidgetVisible.set(!0):(this._findWidgetVisible.reset(),this.disposeModel())),e.searchString&&this.setGlobalBufferTerm(this._state.searchString)}saveQueryState(e){e.isRegex&&this._storageService.store(`editor.isRegex`,this._state.actualIsRegex,1,0),e.wholeWord&&this._storageService.store(`editor.wholeWord`,this._state.actualWholeWord,1,0),e.matchCase&&this._storageService.store(`editor.matchCase`,this._state.actualMatchCase,1,0),e.preserveCase&&this._storageService.store(`editor.preserveCase`,this._state.actualPreserveCase,1,0)}loadQueryState(){this._state.change({matchCase:this._storageService.getBoolean(`editor.matchCase`,1,this._state.matchCase),wholeWord:this._storageService.getBoolean(`editor.wholeWord`,1,this._state.wholeWord),isRegex:this._storageService.getBoolean(`editor.isRegex`,1,this._state.isRegex),preserveCase:this._storageService.getBoolean(`editor.preserveCase`,1,this._state.preserveCase)},!1)}isFindInputFocused(){return!!Jc.getValue(this._contextKeyService)}getState(){return this._state}closeFindWidget(){this._state.change({isRevealed:!1,searchScope:null},!1),this._editor.focus()}toggleCaseSensitive(){this._state.change({matchCase:!this._state.matchCase},!1),this._state.isRevealed||this.highlightFindOptions()}toggleWholeWords(){this._state.change({wholeWord:!this._state.wholeWord},!1),this._state.isRevealed||this.highlightFindOptions()}toggleRegex(){this._state.change({isRegex:!this._state.isRegex},!1),this._state.isRevealed||this.highlightFindOptions()}togglePreserveCase(){this._state.change({preserveCase:!this._state.preserveCase},!1),this._state.isRevealed||this.highlightFindOptions()}toggleSearchScope(){if(this._state.searchScope)this._state.change({searchScope:null},!0);else if(this._editor.hasModel()){let e=this._editor.getSelections();e.map(e=>(e.endColumn===1&&e.endLineNumber>e.startLineNumber&&(e=e.setEndPosition(e.endLineNumber-1,this._editor.getModel().getLineMaxColumn(e.endLineNumber-1))),e.isEmpty()?null:e)).filter(e=>!!e),e.length&&this._state.change({searchScope:e},!0)}}setSearchString(e){this._state.isRegex&&(e=a.Ic(e)),this._state.change({searchString:e},!1)}highlightFindOptions(e=!1){}_start(e,t){return Ul(this,void 0,void 0,function*(){if(this.disposeModel(),!this._editor.hasModel())return;let n=Object.assign(Object.assign({},t),{isRevealed:!0});if(e.seedSearchStringFromSelection===`single`){let t=Gl(this._editor,e.seedSearchStringFromSelection,e.seedSearchStringFromNonEmptySelection);t&&(this._state.isRegex?n.searchString=a.Ic(t):n.searchString=t)}else if(e.seedSearchStringFromSelection===`multiple`&&!e.updateSearchScope){let t=Gl(this._editor,e.seedSearchStringFromSelection);t&&(n.searchString=t)}if(!n.searchString&&e.seedSearchStringFromGlobalClipboard){let e=yield this.getGlobalBufferTerm();if(!this._editor.hasModel())return;e&&(n.searchString=e)}if(e.forceRevealReplace||n.isReplaceRevealed?n.isReplaceRevealed=!0:this._findWidgetVisible.get()||(n.isReplaceRevealed=!1),e.updateSearchScope){let e=this._editor.getSelections();e.some(e=>!e.isEmpty())&&(n.searchScope=e)}n.loop=e.loop,this._state.change(n,!1),this._model||=new rl(this._editor,this._state)})}start(e,t){return this._start(e,t)}moveToNextMatch(){return this._model?(this._model.moveToNextMatch(),!0):!1}moveToPrevMatch(){return this._model?(this._model.moveToPrevMatch(),!0):!1}replace(){return this._model?(this._model.replace(),!0):!1}replaceAll(){return this._model?(this._model.replaceAll(),!0):!1}selectAllMatches(){return this._model?(this._model.selectAllMatches(),this._editor.focus(),!0):!1}getGlobalBufferTerm(){return Ul(this,void 0,void 0,function*(){return this._editor.getOption(36).globalFindClipboard&&this._editor.hasModel()&&!this._editor.getModel().isTooLargeForSyncing()?this._clipboardService.readFindText():``})}setGlobalBufferTerm(e){this._editor.getOption(36).globalFindClipboard&&this._editor.hasModel()&&!this._editor.getModel().isTooLargeForSyncing()&&this._clipboardService.writeFindText(e)}};V.ID=`editor.contrib.findController`,V=Vl([Hl(1,a.Ea),Hl(2,o.O),Hl(3,o.zt)],V);var Kl=class extends V{constructor(e,t,n,r,i,a,o,s){super(e,n,o,s),this._contextViewService=t,this._keybindingService=r,this._themeService=i,this._notificationService=a,this._widget=null,this._findOptionsWidget=null}_start(e,t){let n=Object.create(null,{_start:{get:()=>super._start}});return Ul(this,void 0,void 0,function*(){this._widget||this._createFindWidget();let r=this._editor.getSelection(),i=!1;switch(this._editor.getOption(36).autoFindInSelection){case`always`:i=!0;break;case`never`:i=!1;break;case`multiline`:i=!!r&&r.startLineNumber!==r.endLineNumber;break;default:break}e.updateSearchScope=e.updateSearchScope||i,yield n._start.call(this,e,t),this._widget&&(e.shouldFocus===2?this._widget.focusReplaceInput():e.shouldFocus===1&&this._widget.focusFindInput())})}highlightFindOptions(e=!1){this._widget||this._createFindWidget(),this._state.isRevealed&&!e?this._widget.highlightFindOptions():this._findOptionsWidget.highlightFindOptions()}_createFindWidget(){this._widget=this._register(new zl(this._editor,this,this._state,this._contextViewService,this._keybindingService,this._contextKeyService,this._themeService,this._storageService,this._notificationService)),this._findOptionsWidget=this._register(new il(this._editor,this._state,this._keybindingService,this._themeService))}};Kl=Vl([Hl(1,o.Vt),Hl(2,a.Ea),Hl(3,o.At),Hl(4,a.ga),Hl(5,o.vn),Hl(6,o.O),Hl(7,o.zt)],Kl),a.ia(new a.Yi({id:B.StartFindAction,label:a.Td(`startFindAction`,`Find`),alias:`Find`,precondition:a.Ta.or(o.kn.focus,a.Ta.has(`editorIsOpen`)),kbOpts:{kbExpr:null,primary:2084,weight:100},menuOpts:{menuId:a.ca.MenubarEditMenu,group:`3_find`,title:a.Td({key:`miFind`,comment:[`&& denotes a mnemonic`]},`&&Find`),order:1}})).addImplementation(0,(e,t,n)=>{let r=V.get(t);return r?r.start({forceRevealReplace:!1,seedSearchStringFromSelection:t.getOption(36).seedSearchStringFromSelection===`never`?`none`:`single`,seedSearchStringFromNonEmptySelection:t.getOption(36).seedSearchStringFromSelection===`selection`,seedSearchStringFromGlobalClipboard:t.getOption(36).globalFindClipboard,shouldFocus:1,shouldAnimate:!0,updateSearchScope:!1,loop:t.getOption(36).loop}):!1});var ql={description:`Open a new In-Editor Find Widget.`,args:[{name:`Open a new In-Editor Find Widget args`,schema:{properties:{searchString:{type:`string`},replaceString:{type:`string`},regex:{type:`boolean`},regexOverride:{type:`number`,description:a.Td(`actions.find.isRegexOverride`,`Overrides "Use Regular Expression" flag.
103
+ The flag will not be saved for the future.
104
+ 0: Do Nothing
105
+ 1: True
106
+ 2: False`)},wholeWord:{type:`boolean`},wholeWordOverride:{type:`number`,description:a.Td(`actions.find.wholeWordOverride`,`Overrides "Match Whole Word" flag.
107
+ The flag will not be saved for the future.
108
+ 0: Do Nothing
109
+ 1: True
110
+ 2: False`)},matchCase:{type:`boolean`},matchCaseOverride:{type:`number`,description:a.Td(`actions.find.matchCaseOverride`,`Overrides "Math Case" flag.
111
+ The flag will not be saved for the future.
112
+ 0: Do Nothing
113
+ 1: True
114
+ 2: False`)},preserveCase:{type:`boolean`},preserveCaseOverride:{type:`number`,description:a.Td(`actions.find.preserveCaseOverride`,`Overrides "Preserve Case" flag.
115
+ The flag will not be saved for the future.
116
+ 0: Do Nothing
117
+ 1: True
118
+ 2: False`)},findInSelection:{type:`boolean`}}}}]},Jl=class extends a.Gi{constructor(){super({id:B.StartFindWithArgs,label:a.Td(`startFindWithArgsAction`,`Find With Arguments`),alias:`Find With Arguments`,precondition:void 0,kbOpts:{kbExpr:null,primary:0,weight:100},description:ql})}run(e,t,n){return Ul(this,void 0,void 0,function*(){let e=V.get(t);if(e){let r=n?{searchString:n.searchString,replaceString:n.replaceString,isReplaceRevealed:n.replaceString!==void 0,isRegex:n.isRegex,wholeWord:n.matchWholeWord,matchCase:n.isCaseSensitive,preserveCase:n.preserveCase}:{};yield e.start({forceRevealReplace:!1,seedSearchStringFromSelection:e.getState().searchString.length===0&&t.getOption(36).seedSearchStringFromSelection!==`never`?`single`:`none`,seedSearchStringFromNonEmptySelection:t.getOption(36).seedSearchStringFromSelection===`selection`,seedSearchStringFromGlobalClipboard:!0,shouldFocus:1,shouldAnimate:!0,updateSearchScope:n?.findInSelection||!1,loop:t.getOption(36).loop},r),e.setGlobalBufferTerm(e.getState().searchString)}})}},Yl=class extends a.Gi{constructor(){super({id:B.StartFindWithSelection,label:a.Td(`startFindWithSelectionAction`,`Find With Selection`),alias:`Find With Selection`,precondition:void 0,kbOpts:{kbExpr:null,primary:0,mac:{primary:2083},weight:100}})}run(e,t){return Ul(this,void 0,void 0,function*(){let e=V.get(t);e&&(yield e.start({forceRevealReplace:!1,seedSearchStringFromSelection:`multiple`,seedSearchStringFromNonEmptySelection:!1,seedSearchStringFromGlobalClipboard:!1,shouldFocus:0,shouldAnimate:!0,updateSearchScope:!1,loop:t.getOption(36).loop}),e.setGlobalBufferTerm(e.getState().searchString))})}},Xl=class extends a.Gi{run(e,t){return Ul(this,void 0,void 0,function*(){let e=V.get(t);e&&!this._run(e)&&(yield e.start({forceRevealReplace:!1,seedSearchStringFromSelection:e.getState().searchString.length===0&&t.getOption(36).seedSearchStringFromSelection!==`never`?`single`:`none`,seedSearchStringFromNonEmptySelection:t.getOption(36).seedSearchStringFromSelection===`selection`,seedSearchStringFromGlobalClipboard:!0,shouldFocus:0,shouldAnimate:!0,updateSearchScope:!1,loop:t.getOption(36).loop}),this._run(e))})}},Zl=class extends Xl{constructor(){super({id:B.NextMatchFindAction,label:a.Td(`findNextMatchAction`,`Find Next`),alias:`Find Next`,precondition:void 0,kbOpts:[{kbExpr:o.kn.focus,primary:61,mac:{primary:2085,secondary:[61]},weight:100},{kbExpr:a.Ta.and(o.kn.focus,Jc),primary:3,weight:100}]})}_run(e){return e.moveToNextMatch()?(e.editor.pushUndoStop(),!0):!1}},Ql=class extends Xl{constructor(){super({id:B.PreviousMatchFindAction,label:a.Td(`findPreviousMatchAction`,`Find Previous`),alias:`Find Previous`,precondition:void 0,kbOpts:[{kbExpr:o.kn.focus,primary:1085,mac:{primary:3109,secondary:[1085]},weight:100},{kbExpr:a.Ta.and(o.kn.focus,Jc),primary:1027,weight:100}]})}_run(e){return e.moveToPrevMatch()}},$l=class extends a.Gi{run(e,t){return Ul(this,void 0,void 0,function*(){let e=V.get(t);if(!e)return;let n=t.getOption(36).seedSearchStringFromSelection===`selection`,r=null;t.getOption(36).seedSearchStringFromSelection!==`never`&&(r=Gl(t,`single`,n)),r&&e.setSearchString(r),this._run(e)||(yield e.start({forceRevealReplace:!1,seedSearchStringFromSelection:t.getOption(36).seedSearchStringFromSelection===`never`?`none`:`single`,seedSearchStringFromNonEmptySelection:n,seedSearchStringFromGlobalClipboard:!1,shouldFocus:0,shouldAnimate:!0,updateSearchScope:!1,loop:t.getOption(36).loop}),this._run(e))})}},eu=class extends $l{constructor(){super({id:B.NextSelectionMatchFindAction,label:a.Td(`nextSelectionMatchFindAction`,`Find Next Selection`),alias:`Find Next Selection`,precondition:void 0,kbOpts:{kbExpr:o.kn.focus,primary:2109,weight:100}})}_run(e){return e.moveToNextMatch()}},tu=class extends $l{constructor(){super({id:B.PreviousSelectionMatchFindAction,label:a.Td(`previousSelectionMatchFindAction`,`Find Previous Selection`),alias:`Find Previous Selection`,precondition:void 0,kbOpts:{kbExpr:o.kn.focus,primary:3133,weight:100}})}_run(e){return e.moveToPrevMatch()}};a.ia(new a.Yi({id:B.StartFindReplaceAction,label:a.Td(`startReplace`,`Replace`),alias:`Replace`,precondition:a.Ta.or(o.kn.focus,a.Ta.has(`editorIsOpen`)),kbOpts:{kbExpr:null,primary:2086,mac:{primary:2596},weight:100},menuOpts:{menuId:a.ca.MenubarEditMenu,group:`3_find`,title:a.Td({key:`miReplace`,comment:[`&& denotes a mnemonic`]},`&&Replace`),order:2}})).addImplementation(0,(e,t,n)=>{if(!t.hasModel()||t.getOption(82))return!1;let r=V.get(t);if(!r)return!1;let i=t.getSelection(),a=r.isFindInputFocused(),o=!i.isEmpty()&&i.startLineNumber===i.endLineNumber&&t.getOption(36).seedSearchStringFromSelection!==`never`&&!a,s=a||o?2:1;return r.start({forceRevealReplace:!0,seedSearchStringFromSelection:o?`single`:`none`,seedSearchStringFromNonEmptySelection:t.getOption(36).seedSearchStringFromSelection===`selection`,seedSearchStringFromGlobalClipboard:t.getOption(36).seedSearchStringFromSelection!==`never`,shouldFocus:s,shouldAnimate:!0,updateSearchScope:!1,loop:t.getOption(36).loop})}),a.ta(V.ID,Kl),a.$i(Jl),a.$i(Yl),a.$i(Zl),a.$i(Ql),a.$i(eu),a.$i(tu);var H=a.Ki.bindToContribution(V.get);a.ea(new H({id:B.CloseFindWidgetCommand,precondition:qc,handler:e=>e.closeFindWidget(),kbOpts:{weight:105,kbExpr:a.Ta.and(o.kn.focus,a.Ta.not(`isComposing`)),primary:9,secondary:[1033]}})),a.ea(new H({id:B.ToggleCaseSensitiveCommand,precondition:void 0,handler:e=>e.toggleCaseSensitive(),kbOpts:{weight:105,kbExpr:o.kn.focus,primary:Xc.primary,mac:Xc.mac,win:Xc.win,linux:Xc.linux}})),a.ea(new H({id:B.ToggleWholeWordCommand,precondition:void 0,handler:e=>e.toggleWholeWords(),kbOpts:{weight:105,kbExpr:o.kn.focus,primary:Zc.primary,mac:Zc.mac,win:Zc.win,linux:Zc.linux}})),a.ea(new H({id:B.ToggleRegexCommand,precondition:void 0,handler:e=>e.toggleRegex(),kbOpts:{weight:105,kbExpr:o.kn.focus,primary:Qc.primary,mac:Qc.mac,win:Qc.win,linux:Qc.linux}})),a.ea(new H({id:B.ToggleSearchScopeCommand,precondition:void 0,handler:e=>e.toggleSearchScope(),kbOpts:{weight:105,kbExpr:o.kn.focus,primary:$c.primary,mac:$c.mac,win:$c.win,linux:$c.linux}})),a.ea(new H({id:B.TogglePreserveCaseCommand,precondition:void 0,handler:e=>e.togglePreserveCase(),kbOpts:{weight:105,kbExpr:o.kn.focus,primary:el.primary,mac:el.mac,win:el.win,linux:el.linux}})),a.ea(new H({id:B.ReplaceOneAction,precondition:qc,handler:e=>e.replace(),kbOpts:{weight:105,kbExpr:o.kn.focus,primary:3094}})),a.ea(new H({id:B.ReplaceOneAction,precondition:qc,handler:e=>e.replace(),kbOpts:{weight:105,kbExpr:a.Ta.and(o.kn.focus,Yc),primary:3}})),a.ea(new H({id:B.ReplaceAllAction,precondition:qc,handler:e=>e.replaceAll(),kbOpts:{weight:105,kbExpr:o.kn.focus,primary:2563}})),a.ea(new H({id:B.ReplaceAllAction,precondition:qc,handler:e=>e.replaceAll(),kbOpts:{weight:105,kbExpr:a.Ta.and(o.kn.focus,Yc),primary:void 0,mac:{primary:2051}}})),a.ea(new H({id:B.SelectAllMatchesAction,precondition:qc,handler:e=>e.selectAllMatches(),kbOpts:{weight:105,kbExpr:o.kn.focus,primary:515}}));var nu=16777215,ru=4278190080,U=class e{constructor(e,t,n){if(e.length!==t.length||e.length>65535)throw Error(`invalid startIndexes or endIndexes size`);this._startIndexes=e,this._endIndexes=t;let r=Math.ceil(e.length/32);this._collapseStates=new Uint32Array(r),this._manualStates=new Uint32Array(r),this._types=n,this._parentsComputed=!1}ensureParentIndices(){if(!this._parentsComputed){this._parentsComputed=!0;let e=[],t=(t,n)=>{let r=e[e.length-1];return this.getStartLineNumber(r)<=t&&this.getEndLineNumber(r)>=n};for(let n=0,r=this._startIndexes.length;n<r;n++){let r=this._startIndexes[n],i=this._endIndexes[n];if(r>16777215||i>16777215)throw Error(`startLineNumber or endLineNumber must not exceed `+nu);for(;e.length>0&&!t(r,i);)e.pop();let a=e.length>0?e[e.length-1]:-1;e.push(n),this._startIndexes[n]=r+((a&255)<<24),this._endIndexes[n]=i+((a&65280)<<16)}}}get length(){return this._startIndexes.length}getStartLineNumber(e){return this._startIndexes[e]&nu}getEndLineNumber(e){return this._endIndexes[e]&nu}getType(e){return this._types?this._types[e]:void 0}hasTypes(){return!!this._types}isCollapsed(e){let t=e/32|0,n=e%32;return(this._collapseStates[t]&1<<n)!=0}setCollapsed(e,t){let n=e/32|0,r=e%32,i=this._collapseStates[n];t?this._collapseStates[n]=i|1<<r:this._collapseStates[n]=i&~(1<<r)}isManualSelection(e){let t=e/32|0,n=e%32;return(this._manualStates[t]&1<<n)!=0}setManualSelection(e,t){let n=e/32|0,r=e%32,i=this._manualStates[n];t?this._manualStates[n]=i|1<<r:this._manualStates[n]=i&~(1<<r)}setCollapsedAllOfType(e,t){let n=!1;if(this._types)for(let r=0;r<this._types.length;r++)this._types[r]===e&&(this.setCollapsed(r,t),n=!0);return n}toRegion(e){return new iu(this,e)}getParentIndex(e){this.ensureParentIndices();let t=((this._startIndexes[e]&ru)>>>24)+((this._endIndexes[e]&ru)>>>16);return t===65535?-1:t}contains(e,t){return this.getStartLineNumber(e)<=t&&this.getEndLineNumber(e)>=t}findIndex(e){let t=0,n=this._startIndexes.length;if(n===0)return-1;for(;t<n;){let r=Math.floor((t+n)/2);e<this.getStartLineNumber(r)?n=r:t=r+1}return t-1}findRange(e){let t=this.findIndex(e);if(t>=0){if(this.getEndLineNumber(t)>=e)return t;for(t=this.getParentIndex(t);t!==-1;){if(this.contains(t,e))return t;t=this.getParentIndex(t)}}return-1}toString(){let e=[];for(let t=0;t<this.length;t++)e[t]=`[${this.isManualSelection(t)?`*`:` `}${this.isCollapsed(t)?`+`:`-`}] ${this.getStartLineNumber(t)}/${this.getEndLineNumber(t)}`;return e.join(`, `)}toFoldRange(e){return{startLineNumber:this._startIndexes[e]&nu,endLineNumber:this._endIndexes[e]&nu,type:this._types?this._types[e]:void 0,isCollapsed:this.isCollapsed(e),isManualSelection:this.isManualSelection(e)}}static fromFoldRanges(t){let n=t.length,r=new Uint32Array(n),i=new Uint32Array(n),a=[],o=!1;for(let e=0;e<n;e++){let n=t[e];r[e]=n.startLineNumber,i[e]=n.endLineNumber,a.push(n.type),n.type&&(o=!0)}o||(a=void 0);let s=new e(r,i,a);for(let e=0;e<n;e++)t[e].isCollapsed&&s.setCollapsed(e,!0),t[e].isManualSelection&&s.setManualSelection(e,!0);return s}static sanitizeAndMerge(e,t,n){n??=Number.MAX_VALUE;let r=this._trySanitizeAndMerge(1,e,t,n);return r||=this._trySanitizeAndMerge(2,e,t,n),r}static _trySanitizeAndMerge(e,t,n,r){let i=(e,t)=>Array.isArray(e)?(n=>n<t?e[n]:void 0):(n=>n<t?e.toFoldRange(n):void 0),a=i(t,t.length),o=i(n,n.length),s=0,c=0,l=a(0),u=o(0),d=[],f,p=0,m=[],h=0;for(;l||u;){let t;if(u&&(!l||l.startLineNumber>=u.startLineNumber)){if(l&&l.startLineNumber===u.startLineNumber&&l.endLineNumber===u.endLineNumber)t=u,t.isCollapsed=t.isCollapsed||l.isCollapsed,t.isManualSelection=l.isManualSelection&&u.isManualSelection,t.type||=l.type,l=a(++s);else if(u.isCollapsed&&!u.isManualSelection&&e===1){if(++h>1)return null}else t=u,t.isCollapsed&&(t.isManualSelection=!0);u=o(++c)}else{let n=c,r=u;for(;;){if(!r||r.startLineNumber>l.endLineNumber){t=l;break}if(r.endLineNumber>l.endLineNumber&&(!r.isCollapsed||r.isManualSelection||e===2))break;r=o(++n)}l=a(++s)}if(t){for(;f&&f.endLineNumber<t.startLineNumber;)f=d.pop();t.endLineNumber>t.startLineNumber&&t.startLineNumber>p&&t.endLineNumber<=r&&(!f||f.endLineNumber>=t.endLineNumber)&&(m.push(t),p=t.startLineNumber,f&&d.push(f),f=t)}}return m}},iu=class{constructor(e,t){this.ranges=e,this.index=t}get startLineNumber(){return this.ranges.getStartLineNumber(this.index)}get endLineNumber(){return this.ranges.getEndLineNumber(this.index)}get regionIndex(){return this.index}get parentIndex(){return this.ranges.getParentIndex(this.index)}get isCollapsed(){return this.ranges.isCollapsed(this.index)}containedBy(e){return e.startLineNumber<=this.startLineNumber&&e.endLineNumber>=this.endLineNumber}containsLine(e){return this.startLineNumber<=e&&e<=this.endLineNumber}},au=class{constructor(e,t,n){this._updateEventEmitter=new a.Ul,this.onDidChange=this._updateEventEmitter.event,this._textModel=e,this._decorationProvider=t,this._triggerRecomputeRanges=n,this._regions=new U(new Uint32Array,new Uint32Array),this._editorDecorationIds=[]}get regions(){return this._regions}get textModel(){return this._textModel}toggleCollapseState(e){if(!e.length)return;e=e.sort((e,t)=>e.regionIndex-t.regionIndex);let t={};this._decorationProvider.changeDecorations(n=>{let r=0,i=-1,a=-1,o=e=>{for(;r<e;){let e=this._regions.getEndLineNumber(r),t=this._regions.isCollapsed(r),o=this.regions.isManualSelection(r);e<=i&&n.changeDecorationOptions(this._editorDecorationIds[r],this._decorationProvider.getDecorationOption(t,e<=a,o)),t&&e>a&&(a=e),r++}};for(let n of e){let e=n.regionIndex,r=this._editorDecorationIds[e];if(r&&!t[r]){t[r]=!0,o(e);let n=!this._regions.isCollapsed(e);this._regions.setCollapsed(e,n),i=Math.max(i,this._regions.getEndLineNumber(e))}}o(this._regions.length)}),this._updateEventEmitter.fire({model:this,collapseStateChanged:e})}update(e,t=[]){let n=this._currentHiddenRegions(t),r=U.sanitizeAndMerge(e,n,this._textModel.getLineCount());this.updatePost(U.fromFoldRanges(r))}updatePost(e){let t=[],n=-1;for(let r=0,i=e.length;r<i;r++){let i=e.getStartLineNumber(r),a=e.getEndLineNumber(r),o=e.isCollapsed(r),s=e.isManualSelection(r),c={startLineNumber:i,startColumn:this._textModel.getLineMaxColumn(i),endLineNumber:a,endColumn:this._textModel.getLineMaxColumn(a)+1};t.push({range:c,options:this._decorationProvider.getDecorationOption(o,a<=n,s)}),o&&a>n&&(n=a)}this._decorationProvider.changeDecorations(e=>this._editorDecorationIds=e.deltaDecorations(this._editorDecorationIds,t)),this._regions=e,this._updateEventEmitter.fire({model:this})}_currentHiddenRegions(e=[]){let t=(t,n)=>{for(let r of e)if(t<r&&r<=n)return!0;return!1},n=[];for(let e=0,r=this._regions.length;e<r;e++)if(this.regions.isCollapsed(e)){let r=this._regions.toFoldRange(e),i=this._textModel.getDecorationRange(this._editorDecorationIds[e]);i&&!t(i.startLineNumber,i.endLineNumber)&&i.endLineNumber-i.startLineNumber===r.endLineNumber-r.startLineNumber&&n.push({startLineNumber:i.startLineNumber,endLineNumber:i.endLineNumber,type:r.type,isCollapsed:!0,isManualSelection:r.isManualSelection})}return n}getMemento(){let e=this._currentHiddenRegions(),t=[];for(let n=0,r=e.length;n<r;n++){let r=e[n],i=this._getLinesChecksum(r.startLineNumber+1,r.endLineNumber);t.push({startLineNumber:r.startLineNumber,endLineNumber:r.endLineNumber,checksum:i})}return t.length>0?t:void 0}applyMemento(e){if(!Array.isArray(e))return;let t=[],n=this._textModel.getLineCount();for(let r of e){if(r.startLineNumber>=r.endLineNumber||r.startLineNumber<1||r.endLineNumber>n)continue;let e=this._getLinesChecksum(r.startLineNumber+1,r.endLineNumber);(!r.checksum||e===r.checksum)&&t.push({startLineNumber:r.startLineNumber,endLineNumber:r.endLineNumber,type:void 0,isCollapsed:!0,isManualSelection:!0})}let r=U.sanitizeAndMerge(this._regions,t,n);this.updatePost(U.fromFoldRanges(r))}_getLinesChecksum(e,t){return a.us(this._textModel.getLineContent(e)+this._textModel.getLineContent(t))%1e6}dispose(){this._decorationProvider.removeDecorations(this._editorDecorationIds)}getAllRegionsAtLine(e,t){let n=[];if(this._regions){let r=this._regions.findRange(e),i=1;for(;r>=0;){let e=this._regions.toRegion(r);(!t||t(e,i))&&n.push(e),i++,r=e.parentIndex}}return n}getRegionAtLine(e){if(this._regions){let t=this._regions.findRange(e);if(t>=0)return this._regions.toRegion(t)}return null}getRegionsInside(e,t){let n=[],r=e?e.regionIndex+1:0,i=e?e.endLineNumber:Number.MAX_VALUE;if(t&&t.length===2){let e=[];for(let a=r,o=this._regions.length;a<o;a++){let r=this._regions.toRegion(a);if(this._regions.getStartLineNumber(a)<i){for(;e.length>0&&!r.containedBy(e[e.length-1]);)e.pop();e.push(r),t(r,e.length)&&n.push(r)}else break}}else for(let e=r,a=this._regions.length;e<a;e++){let r=this._regions.toRegion(e);if(this._regions.getStartLineNumber(e)<i)(!t||t(r))&&n.push(r);else break}return n}};function ou(e,t,n){let r=[];for(let i of n){let n=e.getRegionAtLine(i);if(n){let i=!n.isCollapsed;if(r.push(n),t>1){let a=e.getRegionsInside(n,(e,n)=>e.isCollapsed!==i&&n<t);r.push(...a)}}}e.toggleCollapseState(r)}function su(e,t,n=Number.MAX_VALUE,r){let i=[];if(r&&r.length>0)for(let a of r){let r=e.getRegionAtLine(a);if(r&&(r.isCollapsed!==t&&i.push(r),n>1)){let a=e.getRegionsInside(r,(e,r)=>e.isCollapsed!==t&&r<n);i.push(...a)}}else{let r=e.getRegionsInside(null,(e,r)=>e.isCollapsed!==t&&r<n);i.push(...r)}e.toggleCollapseState(i)}function cu(e,t,n,r){let i=[];for(let a of r){let r=e.getAllRegionsAtLine(a,(e,r)=>e.isCollapsed!==t&&r<=n);i.push(...r)}e.toggleCollapseState(i)}function lu(e,t,n){let r=[];for(let i of n){let n=e.getAllRegionsAtLine(i,e=>e.isCollapsed!==t);n.length>0&&r.push(n[0])}e.toggleCollapseState(r)}function uu(e,t,n,r){let i=e.getRegionsInside(null,(e,i)=>i===t&&e.isCollapsed!==n&&!r.some(t=>e.containsLine(t)));e.toggleCollapseState(i)}function du(e,t,n){let r=[];for(let t of n){let n=e.getAllRegionsAtLine(t,void 0);n.length>0&&r.push(n[0])}let i=e.getRegionsInside(null,e=>r.every(t=>!t.containedBy(e)&&!e.containedBy(t))&&e.isCollapsed!==t);e.toggleCollapseState(i)}function fu(e,t,n){let r=e.textModel,i=e.regions,a=[];for(let e=i.length-1;e>=0;e--)if(n!==i.isCollapsed(e)){let n=i.getStartLineNumber(e);t.test(r.getLineContent(n))&&a.push(i.toRegion(e))}e.toggleCollapseState(a)}function pu(e,t,n){let r=e.regions,i=[];for(let e=r.length-1;e>=0;e--)n!==r.isCollapsed(e)&&t===r.getType(e)&&i.push(r.toRegion(e));e.toggleCollapseState(i)}function mu(e,t){let n=null,r=t.getRegionAtLine(e);if(r!==null&&(n=r.startLineNumber,e===n)){let e=r.parentIndex;n=e===-1?null:t.regions.getStartLineNumber(e)}return n}function hu(e,t){let n=t.getRegionAtLine(e);if(n!==null&&n.startLineNumber===e){if(e!==n.startLineNumber)return n.startLineNumber;{let e=n.parentIndex,r=0;for(e!==-1&&(r=t.regions.getStartLineNumber(n.parentIndex));n!==null;)if(n.regionIndex>0){if(n=t.regions.toRegion(n.regionIndex-1),n.startLineNumber<=r)return null;if(n.parentIndex===e)return n.startLineNumber}else return null}}else if(t.regions.length>0)for(n=t.regions.toRegion(t.regions.length-1);n!==null;){if(n.startLineNumber<e)return n.startLineNumber;n=n.regionIndex>0?t.regions.toRegion(n.regionIndex-1):null}return null}function gu(e,t){let n=t.getRegionAtLine(e);if(n!==null&&n.startLineNumber===e){let e=n.parentIndex,r=0;if(e!==-1)r=t.regions.getEndLineNumber(n.parentIndex);else if(t.regions.length===0)return null;else r=t.regions.getEndLineNumber(t.regions.length-1);for(;n!==null;)if(n.regionIndex<t.regions.length){if(n=t.regions.toRegion(n.regionIndex+1),n.startLineNumber>=r)return null;if(n.parentIndex===e)return n.startLineNumber}else return null}else if(t.regions.length>0)for(n=t.regions.toRegion(0);n!==null;){if(n.startLineNumber>e)return n.startLineNumber;n=n.regionIndex<t.regions.length?t.regions.toRegion(n.regionIndex+1):null}return null}var _u=class{constructor(e){this._updateEventEmitter=new a.Ul,this._hasLineChanges=!1,this._foldingModel=e,this._foldingModelListener=e.onDidChange(e=>this.updateHiddenRanges()),this._hiddenRanges=[],e.regions.length&&this.updateHiddenRanges()}get onDidChange(){return this._updateEventEmitter.event}get hiddenRanges(){return this._hiddenRanges}notifyChangeModelContent(e){this._hiddenRanges.length&&!this._hasLineChanges&&(this._hasLineChanges=e.changes.some(e=>e.range.endLineNumber!==e.range.startLineNumber||a.B(e.text)[0]!==0))}updateHiddenRanges(){let e=!1,t=[],n=0,r=0,i=Number.MAX_VALUE,o=-1,s=this._foldingModel.regions;for(;n<s.length;n++){if(!s.isCollapsed(n))continue;let c=s.getStartLineNumber(n)+1,l=s.getEndLineNumber(n);i<=c&&l<=o||(!e&&r<this._hiddenRanges.length&&this._hiddenRanges[r].startLineNumber===c&&this._hiddenRanges[r].endLineNumber===l?(t.push(this._hiddenRanges[r]),r++):(e=!0,t.push(new a.Ol(c,1,l,1))),i=c,o=l)}(this._hasLineChanges||e||r<this._hiddenRanges.length)&&this.applyHiddenRanges(t)}applyHiddenRanges(e){this._hiddenRanges=e,this._hasLineChanges=!1,this._updateEventEmitter.fire(e)}hasRanges(){return this._hiddenRanges.length>0}isHidden(e){return yu(this._hiddenRanges,e)!==null}adjustSelections(e){let t=!1,n=this._foldingModel.textModel,r=null,i=e=>((!r||!vu(e,r))&&(r=yu(this._hiddenRanges,e)),r?r.startLineNumber-1:null);for(let r=0,a=e.length;r<a;r++){let a=e[r],o=i(a.startLineNumber);o&&(a=a.setStartPosition(o,n.getLineMaxColumn(o)),t=!0);let s=i(a.endLineNumber);s&&(a=a.setEndPosition(s,n.getLineMaxColumn(s)),t=!0),e[r]=a}return t}dispose(){this.hiddenRanges.length>0&&(this._hiddenRanges=[],this._updateEventEmitter.fire(this._hiddenRanges)),this._foldingModelListener&&=(this._foldingModelListener.dispose(),null)}};function vu(e,t){return e>=t.startLineNumber&&e<=t.endLineNumber}function yu(e,t){let n=a.Gu(e,e=>t<e.startLineNumber)-1;return n>=0&&e[n].endLineNumber>=t?e[n]:null}var bu=5e3,xu=`indent`,Su=class{constructor(e,t,n){this.editorModel=e,this.languageConfigurationService=t,this.maxFoldingRegions=n,this.id=xu}dispose(){}compute(e,t){let n=this.languageConfigurationService.getLanguageConfiguration(this.editorModel.getLanguageId()).foldingRules,r=n&&!!n.offSide,i=n&&n.markers;return Promise.resolve(wu(this.editorModel,r,i,this.maxFoldingRegions,t))}},Cu=class{constructor(e,t){this._notifyTooManyRegions=t,this._startIndexes=[],this._endIndexes=[],this._indentOccurrences=[],this._length=0,this._foldingRangesLimit=e}insertFirst(e,t,n){if(e>16777215||t>16777215)return;let r=this._length;this._startIndexes[r]=e,this._endIndexes[r]=t,this._length++,n<1e3&&(this._indentOccurrences[n]=(this._indentOccurrences[n]||0)+1)}toIndentRanges(e){var t;if(this._length<=this._foldingRangesLimit){let e=new Uint32Array(this._length),t=new Uint32Array(this._length);for(let n=this._length-1,r=0;n>=0;n--,r++)e[r]=this._startIndexes[n],t[r]=this._endIndexes[n];return new U(e,t)}else{(t=this._notifyTooManyRegions)==null||t.call(this,this._foldingRangesLimit);let n=0,r=this._indentOccurrences.length;for(let e=0;e<this._indentOccurrences.length;e++){let t=this._indentOccurrences[e];if(t){if(t+n>this._foldingRangesLimit){r=e;break}n+=t}}let i=e.getOptions().tabSize,o=new Uint32Array(this._foldingRangesLimit),s=new Uint32Array(this._foldingRangesLimit);for(let t=this._length-1,c=0;t>=0;t--){let l=this._startIndexes[t],u=a.J(e.getLineContent(l),i);(u<r||u===r&&n++<this._foldingRangesLimit)&&(o[c]=l,s[c]=this._endIndexes[t],c++)}return new U(o,s)}}};function wu(e,t,n,r,i){let o=e.getOptions().tabSize;r??=bu;let s=new Cu(r,i),c;n&&(c=RegExp(`(${n.start.source})|(?:${n.end.source})`));let l=[],u=e.getLineCount()+1;l.push({indent:-1,endAbove:u,line:u});for(let n=e.getLineCount();n>0;n--){let r=e.getLineContent(n),i=a.J(r,o),u=l[l.length-1];if(i===-1){t&&(u.endAbove=n);continue}let d;if(c&&(d=r.match(c)))if(d[1]){let e=l.length-1;for(;e>0&&l[e].indent!==-2;)e--;if(e>0){l.length=e+1,u=l[e],s.insertFirst(n,u.line,i),u.line=n,u.indent=i,u.endAbove=n;continue}}else{l.push({indent:-2,endAbove:n,line:n});continue}if(u.indent>i){do l.pop(),u=l[l.length-1];while(u.indent>i);let e=u.endAbove-1;e-n>=1&&s.insertFirst(n,e,i)}u.indent===i?u.endAbove=n:l.push({indent:i,endAbove:n,line:n})}return s.toIndentRanges(e)}var Tu=o.Ut(`folding-expanded`,a.Tl.chevronDown,a.Td(`foldingExpandedIcon`,`Icon for expanded ranges in the editor glyph margin.`)),Eu=o.Ut(`folding-collapsed`,a.Tl.chevronRight,a.Td(`foldingCollapsedIcon`,`Icon for collapsed ranges in the editor glyph margin.`)),Du=o.Ut(`folding-manual`,a.Tl.ellipsis,a.Td(`foldingManualIcon`,`Icon for manually collapsed ranges in the editor glyph margin.`)),Ou=class e{constructor(e){this.editor=e,this.showFoldingControls=`mouseover`,this.showFoldingHighlights=!0}getDecorationOption(t,n,r){return n||this.showFoldingControls===`never`||r&&!t?e.HIDDEN_RANGE_DECORATION:t?r?this.showFoldingHighlights?e.MANUALLY_COLLAPSED_HIGHLIGHTED_VISUAL_DECORATION:e.MANUALLY_COLLAPSED_VISUAL_DECORATION:this.showFoldingHighlights?e.COLLAPSED_HIGHLIGHTED_VISUAL_DECORATION:e.COLLAPSED_VISUAL_DECORATION:this.showFoldingControls===`mouseover`?e.EXPANDED_AUTO_HIDE_VISUAL_DECORATION:e.EXPANDED_VISUAL_DECORATION}changeDecorations(e){return this.editor.changeDecorations(e)}removeDecorations(e){this.editor.removeDecorations(e)}};Ou.COLLAPSED_VISUAL_DECORATION=a.f.register({description:`folding-collapsed-visual-decoration`,stickiness:1,afterContentClassName:`inline-folded`,isWholeLine:!0,firstLineDecorationClassName:a.va.asClassName(Eu)}),Ou.COLLAPSED_HIGHLIGHTED_VISUAL_DECORATION=a.f.register({description:`folding-collapsed-highlighted-visual-decoration`,stickiness:1,afterContentClassName:`inline-folded`,className:`folded-background`,isWholeLine:!0,firstLineDecorationClassName:a.va.asClassName(Eu)}),Ou.MANUALLY_COLLAPSED_VISUAL_DECORATION=a.f.register({description:`folding-manually-collapsed-visual-decoration`,stickiness:1,afterContentClassName:`inline-folded`,isWholeLine:!0,firstLineDecorationClassName:a.va.asClassName(Du)}),Ou.MANUALLY_COLLAPSED_HIGHLIGHTED_VISUAL_DECORATION=a.f.register({description:`folding-manually-collapsed-highlighted-visual-decoration`,stickiness:1,afterContentClassName:`inline-folded`,className:`folded-background`,isWholeLine:!0,firstLineDecorationClassName:a.va.asClassName(Du)}),Ou.EXPANDED_AUTO_HIDE_VISUAL_DECORATION=a.f.register({description:`folding-expanded-auto-hide-visual-decoration`,stickiness:1,isWholeLine:!0,firstLineDecorationClassName:a.va.asClassName(Tu)}),Ou.EXPANDED_VISUAL_DECORATION=a.f.register({description:`folding-expanded-visual-decoration`,stickiness:1,isWholeLine:!0,firstLineDecorationClassName:`alwaysShowFoldIcons `+a.va.asClassName(Tu)}),Ou.HIDDEN_RANGE_DECORATION=a.f.register({description:`folding-hidden-range-decoration`,stickiness:1});var ku={},Au=`syntax`,ju=class{constructor(e,t,n,r){this.editorModel=e,this.providers=t,this.limit=r,this.id=Au;for(let e of t)typeof e.onDidChange==`function`&&(this.disposables||=new a.Zl,this.disposables.add(e.onDidChange(n)))}compute(e,t){return Mu(this.providers,this.editorModel,e).then(e=>e?Pu(e,this.limit,t):null)}dispose(){var e;(e=this.disposables)==null||e.dispose()}};function Mu(e,t,n){let r=null,i=e.map((e,i)=>Promise.resolve(e.provideFoldingRanges(t,ku,n)).then(e=>{if(!n.isCancellationRequested&&Array.isArray(e)){Array.isArray(r)||(r=[]);let n=t.getLineCount();for(let t of e)t.start>0&&t.end>t.start&&t.end<=n&&r.push({start:t.start,end:t.end,rank:i,kind:t.kind})}},a.pu));return Promise.all(i).then(e=>r)}var Nu=class{constructor(e,t){this._notifyTooManyRegions=t,this._startIndexes=[],this._endIndexes=[],this._nestingLevels=[],this._nestingLevelCounts=[],this._types=[],this._length=0,this._foldingRangesLimit=e}add(e,t,n,r){if(e>16777215||t>16777215)return;let i=this._length;this._startIndexes[i]=e,this._endIndexes[i]=t,this._nestingLevels[i]=r,this._types[i]=n,this._length++,r<30&&(this._nestingLevelCounts[r]=(this._nestingLevelCounts[r]||0)+1)}toIndentRanges(){var e;if(this._length<=this._foldingRangesLimit){let e=new Uint32Array(this._length),t=new Uint32Array(this._length);for(let n=0;n<this._length;n++)e[n]=this._startIndexes[n],t[n]=this._endIndexes[n];return new U(e,t,this._types)}else{(e=this._notifyTooManyRegions)==null||e.call(this,this._foldingRangesLimit);let t=0,n=this._nestingLevelCounts.length;for(let e=0;e<this._nestingLevelCounts.length;e++){let r=this._nestingLevelCounts[e];if(r){if(r+t>this._foldingRangesLimit){n=e;break}t+=r}}let r=new Uint32Array(this._foldingRangesLimit),i=new Uint32Array(this._foldingRangesLimit),a=[];for(let e=0,o=0;e<this._length;e++){let s=this._nestingLevels[e];(s<n||s===n&&t++<this._foldingRangesLimit)&&(r[o]=this._startIndexes[e],i[o]=this._endIndexes[e],a[o]=this._types[e],o++)}return new U(r,i,a)}}};function Pu(e,t,n){let r=e.sort((e,t)=>{let n=e.start-t.start;return n===0&&(n=e.rank-t.rank),n}),i=new Nu(t,n),a,o=[];for(let e of r)if(!a)a=e,i.add(e.start,e.end,e.kind&&e.kind.value,o.length);else if(e.start>a.start)if(e.end<=a.end)o.push(a),a=e,i.add(e.start,e.end,e.kind&&e.kind.value,o.length);else{if(e.start>a.end){do a=o.pop();while(a&&e.start>a.end);a&&o.push(a),a=e}i.add(e.start,e.end,e.kind&&e.kind.value,o.length)}return i.toIndentRanges()}var Fu=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Iu=function(e,t){return function(n,r){t(n,r,e)}},W=new a.Da(`foldingEnabled`,!1),Lu=class e extends a.Xl{constructor(e,t,n,r,i,s){super(),this.contextKeyService=t,this.languageConfigurationService=n,this.languageFeaturesService=s,this._tooManyRegionsNotified=!1,this.localToDispose=this._register(new a.Zl),this.editor=e;let c=this.editor.getOptions();this._isEnabled=c.get(38),this._useFoldingProviders=c.get(39)!==`indentation`,this._unfoldOnClickAfterEndOfLine=c.get(43),this._restoringViewState=!1,this._currentModelHasFoldedImports=!1,this._foldingImportsByDefault=c.get(41),this._maxFoldingRegions=c.get(42),this.updateDebounceInfo=i.for(s.foldingRangeProvider,`Folding`,{min:200}),this.foldingModel=null,this.hiddenRangeModel=null,this.rangeProvider=null,this.foldingRegionPromise=null,this.foldingModelPromise=null,this.updateScheduler=null,this.cursorChangedScheduler=null,this.mouseDownInfo=null,this.foldingDecorationProvider=new Ou(e),this.foldingDecorationProvider.showFoldingControls=c.get(100),this.foldingDecorationProvider.showFoldingHighlights=c.get(40),this.foldingEnabled=W.bindTo(this.contextKeyService),this.foldingEnabled.set(this._isEnabled),this._notifyTooManyRegions=e=>{this._tooManyRegionsNotified||=(r.notify({severity:o.bn.Warning,sticky:!0,message:a.Td(`maximum fold ranges`,`The number of foldable regions is limited to a maximum of {0}. Increase configuration option ['Folding Maximum Regions'](command:workbench.action.openSettings?["editor.foldingMaximumRegions"]) to enable more.`,e)}),!0)},this._register(this.editor.onDidChangeModel(()=>this.onModelChanged())),this._register(this.editor.onDidChangeConfiguration(e=>{if(e.hasChanged(38)&&(this._isEnabled=this.editor.getOptions().get(38),this.foldingEnabled.set(this._isEnabled),this.onModelChanged()),e.hasChanged(42)&&(this._maxFoldingRegions=this.editor.getOptions().get(42),this._tooManyRegionsNotified=!1,this.onModelChanged()),e.hasChanged(100)||e.hasChanged(40)){let e=this.editor.getOptions();this.foldingDecorationProvider.showFoldingControls=e.get(100),this.foldingDecorationProvider.showFoldingHighlights=e.get(40),this.triggerFoldingModelChanged()}e.hasChanged(39)&&(this._useFoldingProviders=this.editor.getOptions().get(39)!==`indentation`,this.onFoldingStrategyChanged()),e.hasChanged(43)&&(this._unfoldOnClickAfterEndOfLine=this.editor.getOptions().get(43)),e.hasChanged(41)&&(this._foldingImportsByDefault=this.editor.getOptions().get(41))})),this.onModelChanged()}static get(t){return t.getContribution(e.ID)}saveViewState(){let e=this.editor.getModel();if(!e||!this._isEnabled||e.isTooLargeForTokenization())return{};if(this.foldingModel){let t=this.foldingModel.getMemento(),n=this.rangeProvider?this.rangeProvider.id:void 0;return{collapsedRegions:t,lineCount:e.getLineCount(),provider:n,foldedImports:this._currentModelHasFoldedImports}}}restoreViewState(e){let t=this.editor.getModel();if(!(!t||!this._isEnabled||t.isTooLargeForTokenization()||!this.hiddenRangeModel)&&!(!e||e.lineCount!==t.getLineCount())&&(this._currentModelHasFoldedImports=!!e.foldedImports,e.collapsedRegions&&e.collapsedRegions.length>0&&this.foldingModel)){this._restoringViewState=!0;try{this.foldingModel.applyMemento(e.collapsedRegions)}finally{this._restoringViewState=!1}}}onModelChanged(){this.localToDispose.clear();let e=this.editor.getModel();!this._isEnabled||!e||e.isTooLargeForTokenization()||(this._currentModelHasFoldedImports=!1,this.foldingModel=new au(e,this.foldingDecorationProvider,this.triggerFoldingModelChanged.bind(this)),this.localToDispose.add(this.foldingModel),this.hiddenRangeModel=new _u(this.foldingModel),this.localToDispose.add(this.hiddenRangeModel),this.localToDispose.add(this.hiddenRangeModel.onDidChange(e=>this.onHiddenRangesChanges(e))),this.updateScheduler=new a.ms(this.updateDebounceInfo.get(e)),this.cursorChangedScheduler=new a.ys(()=>this.revealCursor(),200),this.localToDispose.add(this.cursorChangedScheduler),this.localToDispose.add(this.languageFeaturesService.foldingRangeProvider.onDidChange(()=>this.onFoldingStrategyChanged())),this.localToDispose.add(this.editor.onDidChangeModelLanguageConfiguration(()=>this.onFoldingStrategyChanged())),this.localToDispose.add(this.editor.onDidChangeModelContent(e=>this.onDidChangeModelContent(e))),this.localToDispose.add(this.editor.onDidChangeCursorPosition(()=>this.onCursorPositionChanged())),this.localToDispose.add(this.editor.onMouseDown(e=>this.onEditorMouseDown(e))),this.localToDispose.add(this.editor.onMouseUp(e=>this.onEditorMouseUp(e))),this.localToDispose.add({dispose:()=>{this.foldingRegionPromise&&=(this.foldingRegionPromise.cancel(),null),this.updateScheduler&&this.updateScheduler.cancel(),this.updateScheduler=null,this.foldingModel=null,this.foldingModelPromise=null,this.hiddenRangeModel=null,this.cursorChangedScheduler=null,this.rangeProvider&&this.rangeProvider.dispose(),this.rangeProvider=null}}),this.triggerFoldingModelChanged())}onFoldingStrategyChanged(){this.rangeProvider&&this.rangeProvider.dispose(),this.rangeProvider=null,this.triggerFoldingModelChanged()}getRangeProvider(e){if(this.rangeProvider)return this.rangeProvider;if(this.rangeProvider=new Su(e,this.languageConfigurationService,this._maxFoldingRegions),this._useFoldingProviders&&this.foldingModel){let t=this.languageFeaturesService.foldingRangeProvider.ordered(this.foldingModel.textModel);t.length>0&&(this.rangeProvider=new ju(e,t,()=>this.triggerFoldingModelChanged(),this._maxFoldingRegions))}return this.rangeProvider}getFoldingModel(){return this.foldingModelPromise}onDidChangeModelContent(e){var t;(t=this.hiddenRangeModel)==null||t.notifyChangeModelContent(e),this.triggerFoldingModelChanged()}triggerFoldingModelChanged(){this.updateScheduler&&(this.foldingRegionPromise&&=(this.foldingRegionPromise.cancel(),null),this.foldingModelPromise=this.updateScheduler.trigger(()=>{let e=this.foldingModel;if(!e)return null;let t=new a.Yl(!0),n=this.getRangeProvider(e.textModel),r=this.foldingRegionPromise=a.Cs(e=>n.compute(e,this._notifyTooManyRegions));return r.then(n=>{if(n&&r===this.foldingRegionPromise){let r;if(this._foldingImportsByDefault&&!this._currentModelHasFoldedImports){let e=n.setCollapsedAllOfType(a.hl.Imports.value,!0);e&&(r=o.pn.capture(this.editor),this._currentModelHasFoldedImports=e)}let i=this.editor.getSelections(),s=i?i.map(e=>e.startLineNumber):[];e.update(n,s),r?.restore(this.editor);let c=this.updateDebounceInfo.update(e.textModel,t.elapsed());this.updateScheduler&&(this.updateScheduler.defaultDelay=c)}return e})}).then(void 0,e=>(a.fu(e),null)))}onHiddenRangesChanges(e){if(this.hiddenRangeModel&&e.length&&!this._restoringViewState){let e=this.editor.getSelections();e&&this.hiddenRangeModel.adjustSelections(e)&&this.editor.setSelections(e)}this.editor.setHiddenAreas(e)}onCursorPositionChanged(){this.hiddenRangeModel&&this.hiddenRangeModel.hasRanges()&&this.cursorChangedScheduler.schedule()}revealCursor(){let e=this.getFoldingModel();e&&e.then(e=>{if(e){let t=this.editor.getSelections();if(t&&t.length>0){let n=[];for(let r of t){let t=r.selectionStartLineNumber;this.hiddenRangeModel&&this.hiddenRangeModel.isHidden(t)&&n.push(...e.getAllRegionsAtLine(t,e=>e.isCollapsed&&t>e.startLineNumber))}n.length&&(e.toggleCollapseState(n),this.reveal(t[0].getPosition()))}}}).then(void 0,a.fu)}onEditorMouseDown(e){if(this.mouseDownInfo=null,!this.hiddenRangeModel||!e.target||!e.target.range||!e.event.leftButton&&!e.event.middleButton)return;let t=e.target.range,n=!1;switch(e.target.type){case 4:{let t=e.target.detail,r=e.target.element.offsetLeft;if(t.offsetX-r<5)return;n=!0;break}case 7:if(this._unfoldOnClickAfterEndOfLine&&this.hiddenRangeModel.hasRanges()&&!e.target.detail.isAfterLines)break;return;case 6:if(this.hiddenRangeModel.hasRanges()){let e=this.editor.getModel();if(e&&t.startColumn===e.getLineMaxColumn(t.startLineNumber))break}return;default:return}this.mouseDownInfo={lineNumber:t.startLineNumber,iconClicked:n}}onEditorMouseUp(e){let t=this.foldingModel;if(!t||!this.mouseDownInfo||!e.target)return;let n=this.mouseDownInfo.lineNumber,r=this.mouseDownInfo.iconClicked,i=e.target.range;if(!i||i.startLineNumber!==n)return;if(r){if(e.target.type!==4)return}else{let e=this.editor.getModel();if(!e||i.startColumn!==e.getLineMaxColumn(n))return}let a=t.getRegionAtLine(n);if(a&&a.startLineNumber===n){let i=a.isCollapsed;if(r||i){let r=e.event.altKey,o=[];if(r){let e=t.getRegionsInside(null,e=>!e.containedBy(a)&&!a.containedBy(e));for(let t of e)t.isCollapsed&&o.push(t);o.length===0&&(o=e)}else{let n=e.event.middleButton||e.event.shiftKey;if(n)for(let e of t.getRegionsInside(a))e.isCollapsed===i&&o.push(e);(i||!n||o.length===0)&&o.push(a)}t.toggleCollapseState(o),this.reveal({lineNumber:n,column:1})}}}reveal(e){this.editor.revealPositionInCenterIfOutsideViewport(e,0)}};Lu.ID=`editor.contrib.folding`,Lu=Fu([Iu(1,a.Ea),Iu(2,a.Ps),Iu(3,o.vn),Iu(4,a.t),Iu(5,a.Zo)],Lu);var G=class extends a.Gi{runEditorCommand(e,t,n){let r=e.get(a.Ps),i=Lu.get(t);if(!i)return;let o=i.getFoldingModel();if(o)return this.reportTelemetry(e,t),o.then(e=>{if(e){this.invoke(i,e,t,n,r);let a=t.getSelection();a&&i.reveal(a.getStartPosition())}})}getSelectedLines(e){let t=e.getSelections();return t?t.map(e=>e.startLineNumber):[]}getLineNumbers(e,t){return e&&e.selectionLines?e.selectionLines.map(e=>e+1):this.getSelectedLines(t)}run(e,t){}};function Ru(e){if(!a.Pu(e)){if(!a.Mu(e))return!1;let t=e;if(!a.Pu(t.levels)&&!a.ju(t.levels)||!a.Pu(t.direction)&&!a.Nu(t.direction)||!a.Pu(t.selectionLines)&&(!a.Eu(t.selectionLines)||!t.selectionLines.every(a.ju)))return!1}return!0}var zu=class extends G{constructor(){super({id:`editor.unfold`,label:a.Td(`unfoldAction.label`,`Unfold`),alias:`Unfold`,precondition:W,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:3161,mac:{primary:2649},weight:100},description:{description:`Unfold the content in the editor`,args:[{name:`Unfold editor argument`,description:`Property-value pairs that can be passed through this argument:
119
+ * 'levels': Number of levels to unfold. If not set, defaults to 1.
120
+ * 'direction': If 'up', unfold given number of levels up otherwise unfolds down.
121
+ * 'selectionLines': Array of the start lines (0-based) of the editor selections to apply the unfold action to. If not set, the active selection(s) will be used.
122
+ `,constraint:Ru,schema:{type:`object`,properties:{levels:{type:`number`,default:1},direction:{type:`string`,enum:[`up`,`down`],default:`down`},selectionLines:{type:`array`,items:{type:`number`}}}}}]}})}invoke(e,t,n,r){let i=r&&r.levels||1,a=this.getLineNumbers(r,n);r&&r.direction===`up`?cu(t,!1,i,a):su(t,!1,i,a)}},Bu=class extends G{constructor(){super({id:`editor.unfoldRecursively`,label:a.Td(`unFoldRecursivelyAction.label`,`Unfold Recursively`),alias:`Unfold Recursively`,precondition:W,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:a.Rl(2089,2137),weight:100}})}invoke(e,t,n,r){su(t,!1,Number.MAX_VALUE,this.getSelectedLines(n))}},Vu=class extends G{constructor(){super({id:`editor.fold`,label:a.Td(`foldAction.label`,`Fold`),alias:`Fold`,precondition:W,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:3159,mac:{primary:2647},weight:100},description:{description:`Fold the content in the editor`,args:[{name:`Fold editor argument`,description:`Property-value pairs that can be passed through this argument:
123
+ * 'levels': Number of levels to fold.
124
+ * 'direction': If 'up', folds given number of levels up otherwise folds down.
125
+ * 'selectionLines': Array of the start lines (0-based) of the editor selections to apply the fold action to. If not set, the active selection(s) will be used.
126
+ If no levels or direction is set, folds the region at the locations or if already collapsed, the first uncollapsed parent instead.
127
+ `,constraint:Ru,schema:{type:`object`,properties:{levels:{type:`number`},direction:{type:`string`,enum:[`up`,`down`]},selectionLines:{type:`array`,items:{type:`number`}}}}}]}})}invoke(e,t,n,r){let i=this.getLineNumbers(r,n),a=r&&r.levels,o=r&&r.direction;typeof a!=`number`&&typeof o!=`string`?lu(t,!0,i):o===`up`?cu(t,!0,a||1,i):su(t,!0,a||1,i)}},Hu=class extends G{constructor(){super({id:`editor.toggleFold`,label:a.Td(`toggleFoldAction.label`,`Toggle Fold`),alias:`Toggle Fold`,precondition:W,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:a.Rl(2089,2090),weight:100}})}invoke(e,t,n){ou(t,1,this.getSelectedLines(n))}},Uu=class extends G{constructor(){super({id:`editor.foldRecursively`,label:a.Td(`foldRecursivelyAction.label`,`Fold Recursively`),alias:`Fold Recursively`,precondition:W,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:a.Rl(2089,2135),weight:100}})}invoke(e,t,n){let r=this.getSelectedLines(n);su(t,!0,Number.MAX_VALUE,r)}},Wu=class extends G{constructor(){super({id:`editor.foldAllBlockComments`,label:a.Td(`foldAllBlockComments.label`,`Fold All Block Comments`),alias:`Fold All Block Comments`,precondition:W,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:a.Rl(2089,2133),weight:100}})}invoke(e,t,n,r,i){if(t.regions.hasTypes())pu(t,a.hl.Comment.value,!0);else{let e=n.getModel();if(!e)return;let r=i.getLanguageConfiguration(e.getLanguageId()).comments;r&&r.blockCommentStartToken&&fu(t,RegExp(`^\\s*`+a.Ic(r.blockCommentStartToken)),!0)}}},Gu=class extends G{constructor(){super({id:`editor.foldAllMarkerRegions`,label:a.Td(`foldAllMarkerRegions.label`,`Fold All Regions`),alias:`Fold All Regions`,precondition:W,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:a.Rl(2089,2077),weight:100}})}invoke(e,t,n,r,i){if(t.regions.hasTypes())pu(t,a.hl.Region.value,!0);else{let e=n.getModel();if(!e)return;let r=i.getLanguageConfiguration(e.getLanguageId()).foldingRules;r&&r.markers&&r.markers.start&&fu(t,new RegExp(r.markers.start),!0)}}},Ku=class extends G{constructor(){super({id:`editor.unfoldAllMarkerRegions`,label:a.Td(`unfoldAllMarkerRegions.label`,`Unfold All Regions`),alias:`Unfold All Regions`,precondition:W,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:a.Rl(2089,2078),weight:100}})}invoke(e,t,n,r,i){if(t.regions.hasTypes())pu(t,a.hl.Region.value,!1);else{let e=n.getModel();if(!e)return;let r=i.getLanguageConfiguration(e.getLanguageId()).foldingRules;r&&r.markers&&r.markers.start&&fu(t,new RegExp(r.markers.start),!1)}}},qu=class extends G{constructor(){super({id:`editor.foldAllExcept`,label:a.Td(`foldAllExcept.label`,`Fold All Regions Except Selected`),alias:`Fold All Regions Except Selected`,precondition:W,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:a.Rl(2089,2131),weight:100}})}invoke(e,t,n){du(t,!0,this.getSelectedLines(n))}},Ju=class extends G{constructor(){super({id:`editor.unfoldAllExcept`,label:a.Td(`unfoldAllExcept.label`,`Unfold All Regions Except Selected`),alias:`Unfold All Regions Except Selected`,precondition:W,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:a.Rl(2089,2129),weight:100}})}invoke(e,t,n){du(t,!1,this.getSelectedLines(n))}},Yu=class extends G{constructor(){super({id:`editor.foldAll`,label:a.Td(`foldAllAction.label`,`Fold All`),alias:`Fold All`,precondition:W,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:a.Rl(2089,2069),weight:100}})}invoke(e,t,n){su(t,!0)}},Xu=class extends G{constructor(){super({id:`editor.unfoldAll`,label:a.Td(`unfoldAllAction.label`,`Unfold All`),alias:`Unfold All`,precondition:W,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:a.Rl(2089,2088),weight:100}})}invoke(e,t,n){su(t,!1)}},Zu=class e extends G{getFoldingLevel(){return parseInt(this.id.substr(e.ID_PREFIX.length))}invoke(e,t,n){uu(t,this.getFoldingLevel(),!0,this.getSelectedLines(n))}};Zu.ID_PREFIX=`editor.foldLevel`,Zu.ID=e=>Zu.ID_PREFIX+e;var Qu=class extends G{constructor(){super({id:`editor.gotoParentFold`,label:a.Td(`gotoParentFold.label`,`Go to Parent Fold`),alias:`Go to Parent Fold`,precondition:W,kbOpts:{kbExpr:o.kn.editorTextFocus,weight:100}})}invoke(e,t,n){let r=this.getSelectedLines(n);if(r.length>0){let e=mu(r[0],t);e!==null&&n.setSelection({startLineNumber:e,startColumn:1,endLineNumber:e,endColumn:1})}}},$u=class extends G{constructor(){super({id:`editor.gotoPreviousFold`,label:a.Td(`gotoPreviousFold.label`,`Go to Previous Folding Range`),alias:`Go to Previous Folding Range`,precondition:W,kbOpts:{kbExpr:o.kn.editorTextFocus,weight:100}})}invoke(e,t,n){let r=this.getSelectedLines(n);if(r.length>0){let e=hu(r[0],t);e!==null&&n.setSelection({startLineNumber:e,startColumn:1,endLineNumber:e,endColumn:1})}}},ed=class extends G{constructor(){super({id:`editor.gotoNextFold`,label:a.Td(`gotoNextFold.label`,`Go to Next Folding Range`),alias:`Go to Next Folding Range`,precondition:W,kbOpts:{kbExpr:o.kn.editorTextFocus,weight:100}})}invoke(e,t,n){let r=this.getSelectedLines(n);if(r.length>0){let e=gu(r[0],t);e!==null&&n.setSelection({startLineNumber:e,startColumn:1,endLineNumber:e,endColumn:1})}}},td=class extends G{constructor(){super({id:`editor.foldSelected`,label:a.Td(`foldSelectedAction.label`,`Fold Selected Lines`),alias:`Fold Selected Lines`,precondition:W,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:a.Rl(2089,2132),weight:100}})}invoke(e,t,n){let r=[],i=n.getSelections();if(i){for(let e of i){let t=e.endLineNumber;e.endColumn===1&&--t,t>e.startLineNumber&&(r.push({startLineNumber:e.startLineNumber,endLineNumber:t,type:void 0,isCollapsed:!0,isManualSelection:!0}),n.setSelection({startLineNumber:e.startLineNumber,startColumn:1,endLineNumber:e.startLineNumber,endColumn:1}))}if(r.length>0){r.sort((e,t)=>e.startLineNumber-t.startLineNumber);let e=U.sanitizeAndMerge(t.regions,r,n.getModel()?.getLineCount());t.updatePost(U.fromFoldRanges(e))}}}};a.ta(Lu.ID,Lu),a.$i(zu),a.$i(Bu),a.$i(Vu),a.$i(Uu),a.$i(Yu),a.$i(Xu),a.$i(Wu),a.$i(Gu),a.$i(Ku),a.$i(qu),a.$i(Ju),a.$i(Hu),a.$i(Qu),a.$i($u),a.$i(ed),a.$i(td);for(let e=1;e<=7;e++)a.na(new Zu({id:Zu.ID(e),label:a.Td(`foldLevelAction.label`,`Fold Level {0}`,e),alias:`Fold Level ${e}`,precondition:W,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:a.Rl(2089,2048|21+e),weight:100}}));var nd=a.Ti(`editor.foldBackground`,{light:a.Li(a.Kn,.3),dark:a.Li(a.Kn,.3),hcDark:null,hcLight:null},a.Td(`foldBackgroundBackground`,`Background color behind folded ranges. The color must not be opaque so as not to hide underlying decorations.`),!0),rd=a.Ti(`editorGutter.foldingControlForeground`,{dark:a.or,light:a.or,hcDark:a.or,hcLight:a.or},a.Td(`editorGutter.foldingControlForeground`,`Color of the folding control in the editor gutter.`));a.ba((e,t)=>{let n=e.getColor(nd);n&&t.addRule(`.monaco-editor .folded-background { background-color: ${n}; }`);let r=e.getColor(rd);r&&t.addRule(`
128
+ .monaco-editor .cldr${a.va.asCSSSelector(Tu)},
129
+ .monaco-editor .cldr${a.va.asCSSSelector(Eu)},
130
+ .monaco-editor .cldr${a.va.asCSSSelector(Du)} {
131
+ color: ${r} !important;
132
+ }
133
+ `)});var id=class extends a.Gi{constructor(){super({id:`editor.action.fontZoomIn`,label:a.Td(`EditorFontZoomIn.label`,`Editor Font Zoom In`),alias:`Editor Font Zoom In`,precondition:void 0})}run(e,t){o.ar.setZoomLevel(o.ar.getZoomLevel()+1)}},ad=class extends a.Gi{constructor(){super({id:`editor.action.fontZoomOut`,label:a.Td(`EditorFontZoomOut.label`,`Editor Font Zoom Out`),alias:`Editor Font Zoom Out`,precondition:void 0})}run(e,t){o.ar.setZoomLevel(o.ar.getZoomLevel()-1)}},od=class extends a.Gi{constructor(){super({id:`editor.action.fontZoomReset`,label:a.Td(`EditorFontZoomReset.label`,`Editor Font Zoom Reset`),alias:`Editor Font Zoom Reset`,precondition:void 0})}run(e,t){o.ar.setZoomLevel(0)}};a.$i(id),a.$i(ad),a.$i(od);var sd=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},cd=function(e,t){return function(n,r){t(n,r,e)}},ld=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},ud=class{constructor(e,t,n){this._editor=e,this._languageFeaturesService=t,this._workerService=n,this._disposables=new a.Zl,this._sessionDisposables=new a.Zl,this._disposables.add(t.onTypeFormattingEditProvider.onDidChange(this._update,this)),this._disposables.add(e.onDidChangeModel(()=>this._update())),this._disposables.add(e.onDidChangeModelLanguage(()=>this._update())),this._disposables.add(e.onDidChangeConfiguration(e=>{e.hasChanged(50)&&this._update()}))}dispose(){this._disposables.dispose(),this._sessionDisposables.dispose()}_update(){if(this._sessionDisposables.clear(),!this._editor.getOption(50)||!this._editor.hasModel())return;let e=this._editor.getModel(),[t]=this._languageFeaturesService.onTypeFormattingEditProvider.ordered(e);if(!t||!t.autoFormatTriggerCharacters)return;let n=new a.os;for(let e of t.autoFormatTriggerCharacters)n.add(e.charCodeAt(0));this._sessionDisposables.add(this._editor.onDidType(e=>{let t=e.charCodeAt(e.length-1);n.has(t)&&this._trigger(String.fromCharCode(t))}))}_trigger(e){if(!this._editor.hasModel()||this._editor.getSelections().length>1||!this._editor.getSelection().isEmpty())return;let t=this._editor.getModel(),n=this._editor.getPosition(),r=new a.Vl,i=this._editor.onDidChangeModelContent(e=>{if(e.isFlush){r.cancel(),i.dispose();return}for(let t=0,a=e.changes.length;t<a;t++)if(e.changes[t].range.endLineNumber<=n.lineNumber){r.cancel(),i.dispose();return}});o.y(this._workerService,this._languageFeaturesService,t,n,e,t.getFormattingOptions(),r.token).then(e=>{r.token.isCancellationRequested||a.$u(e)&&(o.b.execute(this._editor,e,!0),o.g(e))}).finally(()=>{i.dispose()})}};ud.ID=`editor.contrib.autoFormat`,ud=sd([cd(1,a.Zo),cd(2,o.Ht)],ud);var dd=class{constructor(e,t,n){this.editor=e,this._languageFeaturesService=t,this._instantiationService=n,this._callOnDispose=new a.Zl,this._callOnModel=new a.Zl,this._callOnDispose.add(e.onDidChangeConfiguration(()=>this._update())),this._callOnDispose.add(e.onDidChangeModel(()=>this._update())),this._callOnDispose.add(e.onDidChangeModelLanguage(()=>this._update())),this._callOnDispose.add(t.documentRangeFormattingEditProvider.onDidChange(this._update,this))}dispose(){this._callOnDispose.dispose(),this._callOnModel.dispose()}_update(){this._callOnModel.clear(),this.editor.getOption(49)&&this.editor.hasModel()&&this._languageFeaturesService.documentRangeFormattingEditProvider.has(this.editor.getModel())&&this._callOnModel.add(this.editor.onDidPaste(({range:e})=>this._trigger(e)))}_trigger(e){this.editor.hasModel()&&(this.editor.getSelections().length>1||this._instantiationService.invokeFunction(o._,this.editor,e,2,o.Rt.None,a.Bl.None).catch(a.fu))}};dd.ID=`editor.contrib.formatOnPaste`,dd=sd([cd(1,a.Zo),cd(2,a.fc)],dd);var fd=class extends a.Gi{constructor(){super({id:`editor.action.formatDocument`,label:a.Td(`formatDocument.label`,`Format Document`),alias:`Format Document`,precondition:a.Ta.and(o.kn.notInCompositeEditor,o.kn.writable,o.kn.hasDocumentFormattingProvider),kbOpts:{kbExpr:o.kn.editorTextFocus,primary:1572,linux:{primary:3111},weight:100},contextMenuOpts:{group:`1_modification`,order:1.3}})}run(e,t){return ld(this,void 0,void 0,function*(){if(t.hasModel()){let n=e.get(a.fc);yield e.get(o.It).showWhile(n.invokeFunction(o.v,t,1,o.Rt.None,a.Bl.None),250)}})}},pd=class extends a.Gi{constructor(){super({id:`editor.action.formatSelection`,label:a.Td(`formatSelection.label`,`Format Selection`),alias:`Format Selection`,precondition:a.Ta.and(o.kn.writable,o.kn.hasDocumentSelectionFormattingProvider),kbOpts:{kbExpr:o.kn.editorTextFocus,primary:a.Rl(2089,2084),weight:100},contextMenuOpts:{when:o.kn.hasNonEmptySelection,group:`1_modification`,order:1.31}})}run(e,t){return ld(this,void 0,void 0,function*(){if(!t.hasModel())return;let n=e.get(a.fc),r=t.getModel(),i=t.getSelections().map(e=>e.isEmpty()?new a.Ol(e.startLineNumber,1,e.startLineNumber,r.getLineMaxColumn(e.startLineNumber)):e);yield e.get(o.It).showWhile(n.invokeFunction(o._,t,i,1,o.Rt.None,a.Bl.None),250)})}};a.ta(ud.ID,ud),a.ta(dd.ID,dd),a.$i(fd),a.$i(pd),a.ja.registerCommand(`editor.action.format`,e=>ld(void 0,void 0,void 0,function*(){let t=e.get(a.dc).getFocusedCodeEditor();if(!t||!t.hasModel())return;let n=e.get(a.Ma);t.getSelection().isEmpty()?yield n.executeCommand(`editor.action.formatDocument`):yield n.executeCommand(`editor.action.formatSelection`)}));var md=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},hd=function(e,t){return function(n,r){t(n,r,e)}},gd=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},_d=class{remove(){var e;(e=this.parent)==null||e.children.delete(this.id)}static findId(e,t){let n;typeof e==`string`?n=`${t.id}/${e}`:(n=`${t.id}/${e.name}`,t.children.get(n)!==void 0&&(n=`${t.id}/${e.name}_${e.range.startLineNumber}_${e.range.startColumn}`));let r=n;for(let e=0;t.children.get(r)!==void 0;e++)r=`${n}_${e}`;return r}static empty(e){return e.children.size===0}},vd=class extends _d{constructor(e,t,n){super(),this.id=e,this.parent=t,this.symbol=n,this.children=new Map}},yd=class extends _d{constructor(e,t,n,r){super(),this.id=e,this.parent=t,this.label=n,this.order=r,this.children=new Map}},bd=class e extends _d{constructor(e){super(),this.uri=e,this.id=`root`,this.parent=void 0,this._groups=new Map,this.children=new Map,this.id=`root`,this.parent=void 0}static create(t,n,r){let i=new a.Vl(r),o=new e(n.uri),s=t.ordered(n),c=s.map((t,r)=>{let s=_d.findId(`provider_${r}`,o),c=new yd(s,o,t.displayName??`Unknown Outline Provider`,r);return Promise.resolve(t.provideDocumentSymbols(n,i.token)).then(t=>{for(let n of t||[])e._makeOutlineElement(n,c);return c},e=>(a.pu(e),c)).then(e=>{_d.empty(e)?e.remove():o._groups.set(s,e)})}),l=t.onDidChange(()=>{a.Wu(t.ordered(n),s)||i.cancel()});return Promise.all(c).then(()=>i.token.isCancellationRequested&&!r.isCancellationRequested?e.create(t,n,r):o._compact()).finally(()=>{l.dispose()})}static _makeOutlineElement(t,n){let r=new vd(_d.findId(t,n),n,t);if(t.children)for(let n of t.children)e._makeOutlineElement(n,r);n.children.set(r.id,r)}_compact(){let e=0;for(let[t,n]of this._groups)n.children.size===0?this._groups.delete(t):e+=1;if(e!==1)this.children=this._groups;else{let e=a.md.first(this._groups.values());for(let[,t]of e.children)t.parent=this,this.children.set(t.id,t)}return this}getTopLevelSymbols(){let e=[];for(let t of this.children.values())t instanceof vd?e.push(t.symbol):e.push(...a.md.map(t.children.values(),e=>e.symbol));return e.sort((e,t)=>a.Ol.compareRangesUsingStarts(e.range,t.range))}asListOfDocumentSymbols(){let t=this.getTopLevelSymbols(),n=[];return e._flattenDocumentSymbols(n,t,``),n.sort((e,t)=>a.kl.compare(a.Ol.getStartPosition(e.range),a.Ol.getStartPosition(t.range))||a.kl.compare(a.Ol.getEndPosition(t.range),a.Ol.getEndPosition(e.range)))}static _flattenDocumentSymbols(t,n,r){for(let i of n)t.push({kind:i.kind,tags:i.tags,name:i.name,detail:i.detail,containerName:i.containerName||r,range:i.range,selectionRange:i.selectionRange,children:void 0}),i.children&&e._flattenDocumentSymbols(t,i.children,i.name)}},xd=a.mc(`IOutlineModelService`),Sd=class{constructor(e,t,n){this._languageFeaturesService=e,this._disposables=new a.Zl,this._cache=new a.c(10,.7),this._debounceInformation=t.for(e.documentSymbolProvider,`DocumentSymbols`,{min:350}),this._disposables.add(n.onModelRemoved(e=>{this._cache.delete(e.id)}))}dispose(){this._disposables.dispose()}getOrCreate(e,t){return gd(this,void 0,void 0,function*(){let n=this._languageFeaturesService.documentSymbolProvider,r=n.ordered(e),i=this._cache.get(e.id);if(!i||i.versionId!==e.getVersionId()||!a.Wu(i.provider,r)){let t=new a.Vl;i={versionId:e.getVersionId(),provider:r,promiseCnt:0,source:t,promise:bd.create(n,e,t.token),model:void 0},this._cache.set(e.id,i);let o=Date.now();i.promise.then(t=>{i.model=t,this._debounceInformation.update(e,Date.now()-o)}).catch(t=>{this._cache.delete(e.id)})}if(i.model)return i.model;i.promiseCnt+=1;let o=t.onCancellationRequested(()=>{--i.promiseCnt===0&&(i.source.cancel(),this._cache.delete(e.id))});try{return yield i.promise}finally{o.dispose()}})}};Sd=md([hd(0,a.Zo),hd(1,a.t),hd(2,a.As)],Sd),a.Ks(xd,Sd,!0);var Cd=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};a.ja.registerCommand(`_executeDocumentSymbolProvider`,function(e,...t){return Cd(this,void 0,void 0,function*(){let[n]=t;a.Cu(a.Al.isUri(n));let r=e.get(xd),i=yield e.get(a.Ra).createModelReference(n);try{return(yield r.getOrCreate(i.object.textEditorModel,a.Bl.None)).getTopLevelSymbols()}finally{i.dispose()}})});var wd=`editor.action.inlineSuggest.commit`;function Td(e,t){return{object:e,dispose:()=>t?.dispose()}}function Ed(e,t){let n=new Dd(e),r=t.map(e=>{let t=a.Ol.lift(e.range);return{startOffset:n.getOffset(t.getStartPosition()),endOffset:n.getOffset(t.getEndPosition()),text:e.text}});r.sort((e,t)=>t.startOffset-e.startOffset);for(let t of r)e=e.substring(0,t.startOffset)+t.text+e.substring(t.endOffset);return e}var Dd=class{constructor(e){this.lineStartOffsetByLineIdx=[],this.lineStartOffsetByLineIdx.push(0);for(let t=0;t<e.length;t++)e.charAt(t)===`
134
+ `&&this.lineStartOffsetByLineIdx.push(t+1)}getOffset(e){return this.lineStartOffsetByLineIdx[e.lineNumber-1]+e.column-1}},Od=[];function kd(){return Od}var Ad=class{constructor(e,t,n=0){this.lineNumber=e,this.parts=t,this.additionalReservedLineCount=n}renderForScreenReader(e){if(this.parts.length===0)return``;let t=this.parts[this.parts.length-1];return Ed(e.substr(0,t.column-1),this.parts.map(e=>({range:{startLineNumber:1,endLineNumber:1,startColumn:e.column,endColumn:e.column},text:e.lines.join(`
135
+ `)}))).substring(this.parts[0].column-1)}isEmpty(){return this.parts.every(e=>e.lines.length===0)}},jd=class{constructor(e,t,n){this.column=e,this.lines=t,this.preview=n}},Md=class{constructor(e,t,n,r,i=0){this.lineNumber=e,this.columnStart=t,this.length=n,this.newLines=r,this.additionalReservedLineCount=i,this.parts=[new jd(this.columnStart+this.length,this.newLines,!1)]}renderForScreenReader(e){return this.newLines.join(`
136
+ `)}},Nd=class extends a.Xl{constructor(e){super(),this.editor=e,this._expanded=void 0,this.onDidChangeEmitter=new a.Ul,this.onDidChange=this.onDidChangeEmitter.event,this._register(e.onDidChangeConfiguration(e=>{e.hasChanged(107)&&this._expanded===void 0&&this.onDidChangeEmitter.fire()}))}setExpanded(e){this._expanded=!0,this.onDidChangeEmitter.fire()}};function Pd(e,t){if(!t)return t;let n=e.getValueInRange(t.range),r=a.Dc(n,t.insertText),i=e.getOffsetAt(t.range.getStartPosition())+r,o=e.getPositionAt(i),s=n.substr(r),c=a.Oc(s,t.insertText),l=e.getPositionAt(Math.max(i,e.getOffsetAt(t.range.getEndPosition())-c));return{range:a.Ol.fromPositions(o,l),insertText:t.insertText.substr(r,t.insertText.length-r-c),snippetInfo:t.snippetInfo,filterText:t.filterText,additionalTextEdits:t.additionalTextEdits}}function Fd(e,t){return e===t?!0:!e||!t?!1:e.range.equalsRange(t.range)&&e.insertText===t.insertText&&e.command===t.command}function Id(e,t,n,r,i=0){if(e.range.startLineNumber!==e.range.endLineNumber)return;let o=t.getLineContent(e.range.startLineNumber),s=a.Bc(o).length;if(e.range.startColumn-1<=s){let t=a.Bc(e.insertText).length,n=o.substring(e.range.startColumn-1,s);e={range:a.Ol.fromPositions(e.range.getStartPosition().delta(0,n.length),e.range.getEndPosition()),insertText:e.insertText.startsWith(n)?e.insertText.substring(n.length):e.insertText.substring(t),command:e.command,snippetInfo:void 0,filterText:e.filterText,additionalTextEdits:e.additionalTextEdits}}let c=t.getValueInRange(e.range),l=Rd(c,e.insertText);if(!l)return;let u=e.range.startLineNumber,d=[];if(n===`prefix`){let e=l.filter(e=>e.originalLength===0);if(e.length>1||e.length===1&&e[0].originalStart!==c.length)return}let f=e.insertText.length-i;for(let t of l){let i=e.range.startColumn+t.originalStart+t.originalLength;if(n===`subwordSmart`&&r&&r.lineNumber===e.range.startLineNumber&&i<r.column||t.originalLength>0)return;if(t.modifiedLength===0)continue;let o=t.modifiedStart+t.modifiedLength,s=Math.max(t.modifiedStart,Math.min(o,f)),c=e.insertText.substring(t.modifiedStart,s),l=e.insertText.substring(s,Math.max(t.modifiedStart,o));if(c.length>0){let e=a.al(c);d.push(new jd(i,e,!1))}if(l.length>0){let e=a.al(l);d.push(new jd(i,e,!0))}}return new Ad(u,d,0)}var Ld=void 0;function Rd(e,t){if(Ld?.originalValue===e&&Ld?.newValue===t)return Ld?.changes;{let n=Bd(e,t,!0);if(n){let r=zd(n);if(r>0){let i=Bd(e,t,!1);i&&zd(i)<r&&(n=i)}}return Ld={originalValue:e,newValue:t,changes:n},n}}function zd(e){let t=0;for(let n of e)t+=Math.max(n.originalLength-n.modifiedLength,0);return t}function Bd(e,t,n){if(e.length>5e3||t.length>5e3)return;function r(e){let t=0;for(let n=0,r=e.length;n<r;n++){let r=e.charCodeAt(n);r>t&&(t=r)}return t}let i=Math.max(r(e),r(t));function a(e){if(e<0)throw Error(`unexpected`);return i+e+1}function s(e){let t=0,r=0,i=new Int32Array(e.length);for(let o=0,s=e.length;o<s;o++)n&&e[o]===`(`?(i[o]=a(2*(r*100+t)),t++):n&&e[o]===`)`?(t=Math.max(t-1,0),i[o]=a(2*(r*100+t)+1),t===0&&r++):i[o]=e.charCodeAt(o);return i}let c=s(e),l=s(t);return new o.ir({getElements:()=>c},{getElements:()=>l}).ComputeDiff(!1).changes}function Vd(e,t){let n=new a.F(new a.L,e=>t.getLanguageConfiguration(e)),r=a.P(new a.I(new Hd([e]),n),[],void 0,!0),i=``,o=e.getLineContent();function s(e,t){if(e.kind===2)if(s(e.openingBracket,t),t=a.R(t,e.openingBracket.length),e.child&&(s(e.child,t),t=a.R(t,e.child.length)),e.closingBracket)s(e.closingBracket,t),t=a.R(t,e.closingBracket.length);else{let t=n.getSingleLanguageBracketTokens(e.openingBracket.languageId).findClosingTokenText(e.openingBracket.bracketIds);i+=t}else if(e.kind!==3){if(e.kind===0||e.kind===1)i+=o.substring(a.z(t),a.z(a.R(t,e.length)));else if(e.kind===4)for(let n of e.children)s(n,t),t=a.R(t,n.length)}}return s(r,0),i}var Hd=class{constructor(e){this.lines=e,this.tokenization={getLineTokens:e=>this.lines[e-1]}}getLineCount(){return this.lines.length}getLineLength(e){return this.lines[e-1].getLineContent().length}},Ud=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Wd=function(e,t){return function(n,r){t(n,r,e)}},Gd=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Kd=class extends a.Xl{constructor(e,t,n,r,i,s,c){super(),this.editor=e,this.cache=t,this.commandService=n,this.languageConfigurationService=r,this.languageFeaturesService=i,this.debounceService=s,this.onDidChangeEmitter=new a.Ul,this.onDidChange=this.onDidChangeEmitter.event,this.completionSession=this._register(new a.$l),this.active=!1,this.disposed=!1,this.debounceValue=this.debounceService.for(this.languageFeaturesService.inlineCompletionsProvider,`InlineCompletionsDebounce`,{min:50,max:50}),this._register(n.onDidExecuteCommand(t=>{new Set([o.On.Tab.id,o.On.DeleteLeft.id,o.On.DeleteRight.id,`editor.action.inlineSuggest.commit`,`acceptSelectedSuggestion`]).has(t.commandId)&&e.hasTextFocus()&&this.handleUserInput()})),this._register(this.editor.onDidType(e=>{this.handleUserInput()})),this._register(this.editor.onDidChangeCursorPosition(e=>{(e.reason===3||this.session&&!this.session.isValid)&&this.hide()})),this._register(a.au(()=>{this.disposed=!0})),this._register(this.editor.onDidBlurEditorWidget(()=>{c.getValue(`editor.inlineSuggest.hideOnBlur`)||this.hide()}))}handleUserInput(){this.session&&!this.session.isValid&&this.hide(),setTimeout(()=>{this.disposed||this.startSessionIfTriggered()},0)}get session(){return this.completionSession.value}get ghostText(){return this.session?.ghostText}get minReservedLineCount(){return this.session?this.session.minReservedLineCount:0}setExpanded(e){var t;(t=this.session)==null||t.setExpanded(e)}setActive(e){var t;this.active=e,e&&((t=this.session)==null||t.scheduleAutomaticUpdate())}startSessionIfTriggered(){this.editor.getOption(56).enabled&&(this.session&&this.session.isValid||this.trigger(a._l.Automatic))}trigger(e){if(this.completionSession.value){e===a._l.Explicit&&this.completionSession.value.ensureUpdateWithExplicitContext();return}this.completionSession.value=new qd(this.editor,this.editor.getPosition(),()=>this.active,this.commandService,this.cache,e,this.languageConfigurationService,this.languageFeaturesService.inlineCompletionsProvider,this.debounceValue),this.completionSession.value.takeOwnership(this.completionSession.value.onDidChange(()=>{this.onDidChangeEmitter.fire()}))}hide(){this.completionSession.clear(),this.onDidChangeEmitter.fire()}commitCurrentSuggestion(){var e;(e=this.session)==null||e.commitCurrentCompletion()}showNext(){var e;(e=this.session)==null||e.showNextInlineCompletion()}showPrevious(){var e;(e=this.session)==null||e.showPreviousInlineCompletion()}hasMultipleInlineCompletions(){return Gd(this,void 0,void 0,function*(){let e=yield this.session?.hasMultipleInlineCompletions();return e===void 0?!1:e})}};Kd=Ud([Wd(2,a.Ma),Wd(3,a.Ps),Wd(4,a.Zo),Wd(5,a.t),Wd(6,a.Ys)],Kd);var qd=class extends Nd{constructor(e,t,n,r,i,o,s,c,l){super(e),this.triggerPosition=t,this.shouldUpdate=n,this.commandService=r,this.cache=i,this.initialTriggerKind=o,this.languageConfigurationService=s,this.registry=c,this.debounce=l,this.minReservedLineCount=0,this.updateOperation=this._register(new a.$l),this.updateSoon=this._register(new a.ys(()=>{let e=this.initialTriggerKind;return this.initialTriggerKind=a._l.Automatic,this.update(e)},50)),this.filteredCompletions=[],this.currentlySelectedCompletionId=void 0;let u;this._register(this.onDidChange(()=>{var e;let t=this.currentCompletion;if(t&&t.sourceInlineCompletion!==u){u=t.sourceInlineCompletion;let n=t.sourceProvider;(e=n.handleItemDidShow)==null||e.call(n,t.sourceInlineCompletions,u)}})),this._register(a.au(()=>{this.cache.clear()})),this._register(this.editor.onDidChangeCursorPosition(e=>{var t;e.reason!==3&&((t=this.cache.value)==null||t.updateRanges(),this.cache.value&&(this.updateFilteredInlineCompletions(),this.onDidChangeEmitter.fire()))})),this._register(this.editor.onDidChangeModelContent(e=>{var t;(t=this.cache.value)==null||t.updateRanges(),this.updateFilteredInlineCompletions(),this.scheduleAutomaticUpdate()})),this._register(this.registry.onDidChange(()=>{this.updateSoon.schedule(this.debounce.get(this.editor.getModel()))})),this.scheduleAutomaticUpdate()}updateFilteredInlineCompletions(){if(!this.cache.value){this.filteredCompletions=[];return}let e=this.editor.getModel(),t=e.validatePosition(this.editor.getPosition());this.filteredCompletions=this.cache.value.completions.filter(n=>{let r=e.getValueInRange(n.synchronizedRange).toLowerCase(),i=n.inlineCompletion.filterText.toLowerCase(),a=e.getLineIndentColumn(n.synchronizedRange.startLineNumber),s=Math.max(0,t.column-n.synchronizedRange.startColumn),c=i.substring(0,s),l=i.substring(s),u=r.substring(0,s),d=r.substring(s);return n.synchronizedRange.startColumn<=a&&(u=u.trimStart(),u.length===0&&(d=d.trimStart()),c=c.trimStart(),c.length===0&&(l=l.trimStart())),c.startsWith(u)&&o.ln(d,l)})}fixAndGetIndexOfCurrentSelection(){if(!this.currentlySelectedCompletionId||!this.cache.value||this.cache.value.completions.length===0)return 0;let e=this.filteredCompletions.findIndex(e=>e.semanticId===this.currentlySelectedCompletionId);return e===-1?(this.currentlySelectedCompletionId=void 0,0):e}get currentCachedCompletion(){if(this.cache.value)return this.filteredCompletions[this.fixAndGetIndexOfCurrentSelection()]}showNextInlineCompletion(){return Gd(this,void 0,void 0,function*(){yield this.ensureUpdateWithExplicitContext();let e=this.filteredCompletions||[];e.length>0?this.currentlySelectedCompletionId=e[(this.fixAndGetIndexOfCurrentSelection()+1)%e.length].semanticId:this.currentlySelectedCompletionId=void 0,this.onDidChangeEmitter.fire()})}showPreviousInlineCompletion(){return Gd(this,void 0,void 0,function*(){yield this.ensureUpdateWithExplicitContext();let e=this.filteredCompletions||[];e.length>0?this.currentlySelectedCompletionId=e[(this.fixAndGetIndexOfCurrentSelection()+e.length-1)%e.length].semanticId:this.currentlySelectedCompletionId=void 0,this.onDidChangeEmitter.fire()})}ensureUpdateWithExplicitContext(){return Gd(this,void 0,void 0,function*(){this.updateOperation.value?this.updateOperation.value.triggerKind===a._l.Explicit?yield this.updateOperation.value.promise:yield this.update(a._l.Explicit):this.cache.value?.triggerKind!==a._l.Explicit&&(yield this.update(a._l.Explicit))})}hasMultipleInlineCompletions(){return Gd(this,void 0,void 0,function*(){return yield this.ensureUpdateWithExplicitContext(),(this.cache.value?.completions.length||0)>1})}get ghostText(){let e=this.currentCompletion;if(!e)return;let t=this.editor.getPosition();if(e.range.getEndPosition().isBefore(t))return;let n=this.editor.getOptions().get(56).mode,r=Id(e,this.editor.getModel(),n,t);return r?r.isEmpty()?void 0:r:new Md(e.range.startLineNumber,e.range.startColumn,e.range.endColumn-e.range.startColumn,e.insertText.split(`
137
+ `),0)}get currentCompletion(){let e=this.currentCachedCompletion;if(e)return e.toLiveInlineCompletion()}get isValid(){return this.editor.getPosition().lineNumber===this.triggerPosition.lineNumber}scheduleAutomaticUpdate(){this.updateOperation.clear(),this.updateSoon.schedule(this.debounce.get(this.editor.getModel()))}update(e){return Gd(this,void 0,void 0,function*(){if(!this.shouldUpdate())return;let t=this.editor.getPosition(),n=new Date,r=a.Cs(r=>Gd(this,void 0,void 0,function*(){let i;try{i=yield Zd(this.registry,t,this.editor.getModel(),{triggerKind:e,selectedSuggestionInfo:void 0},r,this.languageConfigurationService);let a=new Date;this.debounce.update(this.editor.getModel(),a.getTime()-n.getTime())}catch(e){a.fu(e);return}r.isCancellationRequested||(this.cache.setValue(this.editor,i,e),this.updateFilteredInlineCompletions(),this.onDidChangeEmitter.fire())})),i=new Jd(r,e);this.updateOperation.value=i,yield r,this.updateOperation.value===i&&this.updateOperation.clear()})}takeOwnership(e){this._register(e)}commitCurrentCompletion(){if(!this.ghostText)return;let e=this.currentCompletion;e&&this.commit(e)}commit(e){var t;let n=this.cache.clearAndLeak();e.snippetInfo?(this.editor.executeEdits(`inlineSuggestion.accept`,[o.jt.replaceMove(e.range,``),...e.additionalTextEdits]),this.editor.setPosition(e.snippetInfo.range.getStartPosition()),(t=z.get(this.editor))==null||t.insert(e.snippetInfo.snippet)):this.editor.executeEdits(`inlineSuggestion.accept`,[o.jt.replaceMove(e.range,e.insertText),...e.additionalTextEdits]),e.command?this.commandService.executeCommand(e.command.id,...e.command.arguments||[]).finally(()=>{n?.dispose()}).then(void 0,a.pu):n?.dispose(),this.onDidChangeEmitter.fire()}get commands(){return[...new Set(this.cache.value?.completions.map(e=>e.inlineCompletion.sourceInlineCompletions)||[])].flatMap(e=>e.commands||[])}},Jd=class{constructor(e,t){this.promise=e,this.triggerKind=t}dispose(){this.promise.cancel()}},Yd=class extends a.Xl{constructor(e,t,n,r){super(),this.editor=t,this.onChange=n,this.triggerKind=r,this.isDisposing=!1;let i=t.changeDecorations(t=>t.deltaDecorations([],e.items.map(e=>({range:e.range,options:{description:`inline-completion-tracking-range`}}))));this._register(a.au(()=>{this.isDisposing=!0,t.removeDecorations(i)})),this.completions=e.items.map((e,t)=>new Xd(e,i[t])),this._register(t.onDidChangeModelContent(()=>{this.updateRanges()})),this._register(e)}updateRanges(){if(this.isDisposing)return;let e=!1,t=this.editor.getModel();for(let n of this.completions){let r=t.getDecorationRange(n.decorationId);if(!r){a.fu(Error(`Decoration has no range`));continue}n.synchronizedRange.equalsRange(r)||(e=!0,n.synchronizedRange=r)}e&&this.onChange()}},Xd=class{constructor(e,t){this.inlineCompletion=e,this.decorationId=t,this.semanticId=JSON.stringify({text:this.inlineCompletion.insertText,abbreviation:this.inlineCompletion.filterText,startLine:this.inlineCompletion.range.startLineNumber,startColumn:this.inlineCompletion.range.startColumn,command:this.inlineCompletion.command}),this.synchronizedRange=e.range}toLiveInlineCompletion(){return{insertText:this.inlineCompletion.insertText,range:this.synchronizedRange,command:this.inlineCompletion.command,sourceProvider:this.inlineCompletion.sourceProvider,sourceInlineCompletions:this.inlineCompletion.sourceInlineCompletions,sourceInlineCompletion:this.inlineCompletion.sourceInlineCompletion,snippetInfo:this.inlineCompletion.snippetInfo,filterText:this.inlineCompletion.filterText,additionalTextEdits:this.inlineCompletion.additionalTextEdits}}};function Zd(e,t,n,r,i=a.Bl.None,o){return Gd(this,void 0,void 0,function*(){let s=Qd(t,n),c=e.all(n),l=yield Promise.all(c.map(e=>Gd(this,void 0,void 0,function*(){let o=yield Promise.resolve(e.provideInlineCompletions(n,t,r,i)).catch(a.pu);return{completions:o,provider:e,dispose:()=>{o&&e.freeInlineCompletions(o)}}}))),u=new Map;for(let e of l){let t=e.completions;if(t)for(let r of t.items){let i=r.range?a.Ol.lift(r.range):s;if(i.startLineNumber!==i.endLineNumber)continue;let c,l;typeof r.insertText==`string`?(c=r.insertText,o&&r.completeBracketPairs&&(c=$d(c,i.getStartPosition(),n,o)),l=void 0):`snippet`in r.insertText?(c=new Ta().parse(r.insertText.snippet).toString(),l={snippet:r.insertText.snippet,range:i}):a.Su(r.insertText);let d={insertText:c,snippetInfo:l,range:i,command:r.command,sourceProvider:e.provider,sourceInlineCompletions:t,sourceInlineCompletion:r,filterText:r.filterText||c,additionalTextEdits:r.additionalTextEdits||kd()};u.set(JSON.stringify({insertText:c,range:r.range}),d)}}return{items:[...u.values()],dispose:()=>{for(let e of l)e.dispose()}}})}function Qd(e,t){let n=t.getWordAtPosition(e),r=t.getLineMaxColumn(e.lineNumber);return n?new a.Ol(e.lineNumber,n.startColumn,e.lineNumber,r):a.Ol.fromPositions(e,e.with(void 0,r))}function $d(e,t,n,r){let i=n.getLineContent(t.lineNumber).substring(0,t.column-1)+e,a=n.tokenization.tokenizeLineWithEdit(t,i.length-(t.column-1),e)?.sliceAndInflate(t.column-1,i.length,0);return a?Vd(a,r):e}var ef=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},tf=function(e,t){return function(n,r){t(n,r,e)}},nf=class{constructor(e){this.name=e}select(e,t,n){if(n.length===0)return 0;let r=n[0].score[0];for(let e=0;e<n.length;e++){let{score:t,completion:i}=n[e];if(t[0]!==r)break;if(i.preselect)return e}return 0}},rf=class extends nf{constructor(){super(`first`)}memorize(e,t,n){}toJSON(){}fromJSON(){}},af=class extends nf{constructor(){super(`recentlyUsed`),this._cache=new a.c(300,.66),this._seq=0}memorize(e,t,n){let r=`${e.getLanguageId()}/${n.textLabel}`;this._cache.set(r,{touch:this._seq++,type:n.completion.kind,insertText:n.completion.insertText})}select(e,t,n){if(n.length===0)return 0;let r=e.getLineContent(t.lineNumber).substr(t.column-10,t.column-1);if(/\s$/.test(r))return super.select(e,t,n);let i=n[0].score[0],a=-1,o=-1,s=-1;for(let t=0;t<n.length&&n[t].score[0]===i;t++){let r=`${e.getLanguageId()}/${n[t].textLabel}`,i=this._cache.peek(r);if(i&&i.touch>s&&i.type===n[t].completion.kind&&i.insertText===n[t].completion.insertText&&(s=i.touch,o=t),n[t].completion.preselect&&a===-1)return a=t}return o===-1?a===-1?0:a:o}toJSON(){return this._cache.toJSON()}fromJSON(e){this._cache.clear();for(let[t,n]of e)n.touch=0,n.type=typeof n.type==`number`?n.type:a.fl.fromString(n.type),this._cache.set(t,n);this._seq=this._cache.size}},of=class extends nf{constructor(){super(`recentlyUsedByPrefix`),this._trie=a.u.forStrings(),this._seq=0}memorize(e,t,n){let{word:r}=e.getWordUntilPosition(t),i=`${e.getLanguageId()}/${r}`;this._trie.set(i,{type:n.completion.kind,insertText:n.completion.insertText,touch:this._seq++})}select(e,t,n){let{word:r}=e.getWordUntilPosition(t);if(!r)return super.select(e,t,n);let i=`${e.getLanguageId()}/${r}`,a=this._trie.get(i);if(a||=this._trie.findSubstr(i),a)for(let e=0;e<n.length;e++){let{kind:t,insertText:r}=n[e].completion;if(t===a.type&&r===a.insertText)return e}return super.select(e,t,n)}toJSON(){let e=[];return this._trie.forEach((t,n)=>e.push([n,t])),e.sort((e,t)=>-(e[1].touch-t[1].touch)).forEach((e,t)=>e[1].touch=t),e.slice(0,200)}fromJSON(e){if(this._trie.clear(),e.length>0){this._seq=e[0][1].touch+1;for(let[t,n]of e)n.type=typeof n.type==`number`?n.type:a.fl.fromString(n.type),this._trie.set(t,n)}}},sf=class e{constructor(e,t){this._storageService=e,this._configService=t,this._disposables=new a.Zl,this._persistSoon=new a.ys(()=>this._saveState(),500),this._disposables.add(e.onWillSaveState(e=>{e.reason===o.k.SHUTDOWN&&this._saveState()}))}dispose(){this._disposables.dispose(),this._persistSoon.dispose()}memorize(e,t,n){this._withStrategy(e,t).memorize(e,t,n),this._persistSoon.schedule()}select(e,t,n){return this._withStrategy(e,t).select(e,t,n)}_withStrategy(t,n){let r=this._configService.getValue(`editor.suggestSelection`,{overrideIdentifier:t.getLanguageIdAtPosition(n.lineNumber,n.column),resource:t.uri});if(this._strategy?.name!==r){this._saveState(),this._strategy=new((e._strategyCtors.get(r))||rf);try{let t=this._configService.getValue(`editor.suggest.shareSuggestSelections`)?0:1,n=this._storageService.get(`${e._storagePrefix}/${r}`,t);n&&this._strategy.fromJSON(JSON.parse(n))}catch{}}return this._strategy}_saveState(){if(this._strategy){let t=this._configService.getValue(`editor.suggest.shareSuggestSelections`)?0:1,n=JSON.stringify(this._strategy);this._storageService.store(`${e._storagePrefix}/${this._strategy.name}`,n,t,1)}}};sf._strategyCtors=new Map([[`recentlyUsedByPrefix`,of],[`recentlyUsed`,af],[`first`,rf]]),sf._storagePrefix=`suggest/memories`,sf=ef([tf(0,o.O),tf(1,a.Ys)],sf);var cf=a.mc(`ISuggestMemories`);a.Ks(cf,sf,!0);var lf=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},uf=function(e,t){return function(n,r){t(n,r,e)}},df=class e{constructor(t,n){this._editor=t,this._enabled=!1,this._ckAtEnd=e.AtEnd.bindTo(n),this._configListener=this._editor.onDidChangeConfiguration(e=>e.hasChanged(112)&&this._update()),this._update()}dispose(){var e;this._configListener.dispose(),(e=this._selectionListener)==null||e.dispose(),this._ckAtEnd.reset()}_update(){let e=this._editor.getOption(112)===`on`;if(this._enabled!==e)if(this._enabled=e,this._enabled){let e=()=>{if(!this._editor.hasModel()){this._ckAtEnd.set(!1);return}let e=this._editor.getModel(),t=this._editor.getSelection(),n=e.getWordAtPosition(t.getStartPosition());if(!n){this._ckAtEnd.set(!1);return}this._ckAtEnd.set(n.endColumn===t.getStartPosition().column)};this._selectionListener=this._editor.onDidChangeCursorSelection(e),e()}else this._selectionListener&&=(this._ckAtEnd.reset(),this._selectionListener.dispose(),void 0)}};df.AtEnd=new a.Da(`atEndOfWord`,!1),df=lf([uf(1,a.Ea)],df);var ff=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},pf=function(e,t){return function(n,r){t(n,r,e)}},mf=class e{constructor(t,n){this._editor=t,this._index=0,this._ckOtherSuggestions=e.OtherSuggestions.bindTo(n)}dispose(){this.reset()}reset(){var e;this._ckOtherSuggestions.reset(),(e=this._listener)==null||e.dispose(),this._model=void 0,this._acceptNext=void 0,this._ignore=!1}set({model:t,index:n},r){if(t.items.length===0){this.reset();return}if(e._moveIndex(!0,t,n)===n){this.reset();return}this._acceptNext=r,this._model=t,this._index=n,this._listener=this._editor.onDidChangeCursorPosition(()=>{this._ignore||this.reset()}),this._ckOtherSuggestions.set(!0)}static _moveIndex(e,t,n){let r=n;for(;r=(r+t.items.length+(e?1:-1))%t.items.length,!(r===n||!t.items[r].completion.additionalTextEdits););return r}next(){this._move(!0)}prev(){this._move(!1)}_move(t){if(this._model)try{this._ignore=!0,this._index=e._moveIndex(t,this._model,this._index),this._acceptNext({index:this._index,item:this._model.items[this._index],model:this._model})}finally{this._ignore=!1}}};mf.OtherSuggestions=new a.Da(`hasOtherSuggestions`,!1),mf=ff([pf(1,a.Ea)],mf);var hf=class{constructor(e,t,n){this._disposables=new a.Zl,this._disposables.add(t.onDidShow(()=>this._onItem(t.getFocusedItem()))),this._disposables.add(t.onDidFocus(this._onItem,this)),this._disposables.add(t.onDidHide(this.reset,this)),this._disposables.add(e.onWillType(r=>{if(this._active&&!t.isFrozen()){let t=r.charCodeAt(r.length-1);this._active.acceptCharacters.has(t)&&e.getOption(0)&&n(this._active.item)}}))}_onItem(e){if(!e||!a.$u(e.item.completion.commitCharacters)){this.reset();return}if(this._active&&this._active.item.item===e.item)return;let t=new a.os;for(let n of e.item.completion.commitCharacters)n.length>0&&t.add(n.charCodeAt(0));this._active={acceptCharacters:t,item:e}}reset(){this._active=void 0}dispose(){this._disposables.dispose()}},gf=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},_f=class e{provideSelectionRanges(t,n){return gf(this,void 0,void 0,function*(){let r=[];for(let i of n){let n=[];r.push(n);let a=new Map;yield new Promise(n=>e._bracketsRightYield(n,0,t,i,a)),yield new Promise(r=>e._bracketsLeftYield(r,0,t,i,a,n))}return r})}static _bracketsRightYield(t,n,r,i,o){let s=new Map,c=Date.now();for(;;){if(n>=e._maxRounds){t();break}if(!i){t();break}let l=r.bracketPairs.findNextBracket(i);if(!l){t();break}if(Date.now()-c>e._maxDuration){setTimeout(()=>e._bracketsRightYield(t,n+1,r,i,o));break}if(l.bracketInfo.isOpeningBracket){let e=l.bracketInfo.bracketText,t=s.has(e)?s.get(e):0;s.set(e,t+1)}else{let e=l.bracketInfo.getClosedBrackets()[0].bracketText,t=s.has(e)?s.get(e):0;if(--t,s.set(e,Math.max(0,t)),t<0){let t=o.get(e);t||(t=new a.pd,o.set(e,t)),t.push(l.range)}}i=l.range.getEndPosition()}}static _bracketsLeftYield(t,n,r,i,o,s){let c=new Map,l=Date.now();for(;;){if(n>=e._maxRounds&&o.size===0){t();break}if(!i){t();break}let u=r.bracketPairs.findPrevBracket(i);if(!u){t();break}if(Date.now()-l>e._maxDuration){setTimeout(()=>e._bracketsLeftYield(t,n+1,r,i,o,s));break}if(u.bracketInfo.isOpeningBracket){let t=u.bracketInfo.bracketText,n=c.has(t)?c.get(t):0;if(--n,c.set(t,Math.max(0,n)),n<0){let n=o.get(t);if(n){let i=n.shift();n.size===0&&o.delete(t);let c=a.Ol.fromPositions(u.range.getEndPosition(),i.getStartPosition()),l=a.Ol.fromPositions(u.range.getStartPosition(),i.getEndPosition());s.push({range:c}),s.push({range:l}),e._addBracketLeading(r,l,s)}}}else{let e=u.bracketInfo.getClosedBrackets()[0].bracketText,t=c.has(e)?c.get(e):0;c.set(e,t+1)}i=u.range.getStartPosition()}}static _addBracketLeading(e,t,n){if(t.startLineNumber===t.endLineNumber)return;let r=t.startLineNumber,i=e.getLineFirstNonWhitespaceColumn(r);i!==0&&i!==t.startColumn&&(n.push({range:a.Ol.fromPositions(new a.kl(r,i),t.getEndPosition())}),n.push({range:a.Ol.fromPositions(new a.kl(r,1),t.getEndPosition())}));let o=r-1;if(o>0){let r=e.getLineFirstNonWhitespaceColumn(o);r===t.startColumn&&r!==e.getLineLastNonWhitespaceColumn(o)&&(n.push({range:a.Ol.fromPositions(new a.kl(o,r),t.getEndPosition())}),n.push({range:a.Ol.fromPositions(new a.kl(o,1),t.getEndPosition())}))}}};_f._maxDuration=30,_f._maxRounds=2;var vf=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},yf=class e{static create(t,n){return vf(this,void 0,void 0,function*(){if(!n.getOption(107).localityBonus||!n.hasModel())return e.None;let r=n.getModel(),i=n.getPosition();if(!t.canComputeWordRanges(r.uri))return e.None;let[o]=yield new _f().provideSelectionRanges(r,[i]);if(o.length===0)return e.None;let s=yield t.computeWordRanges(r.uri,o[0].range);if(!s)return e.None;let c=r.getWordUntilPosition(i);return delete s[c.word],new class extends e{distance(e,t){if(!i.equals(n.getPosition()))return 0;if(t.kind===17)return 2<<20;let r=s[typeof t.label==`string`?t.label:t.label.label];if(a.Qu(r))return 2<<20;let c=a.Bu(r,a.Ol.fromPositions(e),a.Ol.compareRangesUsingStarts),l=c>=0?r[c]:r[Math.max(0,~c-1)],u=o.length;for(let e of o){if(!a.Ol.containsRange(e.range,l))break;--u}return u}}})}};yf.None=new class extends yf{distance(){return 0}};var bf=class{constructor(e,t){this.leadingLineContent=e,this.characterCountDelta=t}},xf=class e{constructor(t,n,r,i,a,s,c=o.nn.default,l=void 0){this.clipboardText=l,this._snippetCompareFn=e._compareCompletionItems,this._items=t,this._column=n,this._wordDistance=i,this._options=a,this._refilterKind=1,this._lineContext=r,this._fuzzyScoreOptions=c,s===`top`?this._snippetCompareFn=e._compareCompletionItemsSnippetsUp:s===`bottom`&&(this._snippetCompareFn=e._compareCompletionItemsSnippetsDown)}get lineContext(){return this._lineContext}set lineContext(e){(this._lineContext.leadingLineContent!==e.leadingLineContent||this._lineContext.characterCountDelta!==e.characterCountDelta)&&(this._refilterKind=this._lineContext.characterCountDelta<e.characterCountDelta&&this._filteredItems?2:1,this._lineContext=e)}get items(){return this._ensureCachedState(),this._filteredItems}get allProvider(){return this._ensureCachedState(),this._providerInfo.keys()}get incomplete(){this._ensureCachedState();let e=new Set;for(let[t,n]of this._providerInfo)n&&e.add(t);return e}adopt(e){let t=[];for(let n=0;n<this._items.length;)e.has(this._items[n].provider)?n++:(t.push(this._items[n]),this._items[n]=this._items[this._items.length-1],this._items.pop());return this._refilterKind=1,t}get stats(){return this._ensureCachedState(),this._stats}_ensureCachedState(){this._refilterKind!==0&&this._createCachedState()}_createCachedState(){this._providerInfo=new Map;let e=[],{leadingLineContent:t,characterCountDelta:n}=this._lineContext,r=``,i=``,s=this._refilterKind===1?this._items:this._filteredItems,c=[],l=!this._options.filterGraceful||s.length>2e3?o.an:o.on;for(let u=0;u<s.length;u++){let d=s[u];if(d.isInvalid)continue;this._providerInfo.set(d.provider,!!d.container.incomplete);let f=d.position.column-d.editStart.column,p=f+n-(d.position.column-this._column);if(r.length!==p&&(r=p===0?``:t.slice(-p),i=r.toLowerCase()),d.word=r,p===0)d.score=o.tn.Default;else{let e=0;for(;e<f;){let t=r.charCodeAt(e);if(t===32||t===9)e+=1;else break}if(e>=p)d.score=o.tn.Default;else if(typeof d.completion.filterText==`string`){let t=l(r,i,e,d.completion.filterText,d.filterTextLow,0,this._fuzzyScoreOptions);if(!t)continue;a.Ac(d.completion.filterText,d.textLabel)===0?d.score=t:(d.score=o.rn(r,i,e,d.textLabel,d.labelLow,0),d.score[0]=t[0])}else{let t=l(r,i,e,d.textLabel,d.labelLow,0,this._fuzzyScoreOptions);if(!t)continue;d.score=t}}d.idx=u,d.distance=this._wordDistance.distance(d.position,d.completion),c.push(d),e.push(d.textLabel.length)}this._filteredItems=c.sort(this._snippetCompareFn),this._refilterKind=0,this._stats={pLabelLen:e.length?a.rd(e.length-.85,e,(e,t)=>e-t):0}}static _compareCompletionItems(e,t){return e.score[0]>t.score[0]?-1:e.score[0]<t.score[0]?1:e.distance<t.distance?-1:e.distance>t.distance?1:e.idx<t.idx?-1:e.idx>t.idx?1:0}static _compareCompletionItemsSnippetsDown(t,n){if(t.completion.kind!==n.completion.kind){if(t.completion.kind===27)return 1;if(n.completion.kind===27)return-1}return e._compareCompletionItems(t,n)}static _compareCompletionItemsSnippetsUp(t,n){if(t.completion.kind!==n.completion.kind){if(t.completion.kind===27)return-1;if(n.completion.kind===27)return 1}return e._compareCompletionItems(t,n)}},Sf=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Cf=function(e,t){return function(n,r){t(n,r,e)}},wf=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Tf=class{constructor(e,t,n,r,i){this.leadingLineContent=e.getLineContent(t.lineNumber).substr(0,t.column-1),this.leadingWord=e.getWordUntilPosition(t),this.lineNumber=t.lineNumber,this.column=t.column,this.auto=n,this.shy=r,this.noSelect=i}static shouldAutoTrigger(e){if(!e.hasModel())return!1;let t=e.getModel(),n=e.getPosition();t.tokenization.tokenizeIfCheap(n.lineNumber);let r=t.getWordAtPosition(n);return!(!r||r.endColumn!==n.column||!isNaN(Number(r.word)))}};function Ef(e,t,n){if(!t.getContextKeyValue(`inlineSuggestionVisible`))return!0;let r=n.getValue(`editor.inlineSuggest.allowQuickSuggestions`);return r===void 0?!1:!!r}function Df(e,t,n){if(!t.getContextKeyValue(`inlineSuggestionVisible`))return!0;let r=n.getValue(`editor.inlineSuggest.allowSuggestOnTriggerCharacters`);return r===void 0?!1:!!r}var Of=class e{constructor(e,t,n,r,i,o,s,c){this._editor=e,this._editorWorkerService=t,this._clipboardService=n,this._telemetryService=r,this._logService=i,this._contextKeyService=o,this._configurationService=s,this._languageFeaturesService=c,this._toDispose=new a.Zl,this._triggerCharacterListener=new a.Zl,this._triggerQuickSuggest=new a.xs,this._state=0,this._completionDisposables=new a.Zl,this._onDidCancel=new a.Ul,this._onDidTrigger=new a.Ul,this._onDidSuggest=new a.Ul,this.onDidCancel=this._onDidCancel.event,this.onDidTrigger=this._onDidTrigger.event,this.onDidSuggest=this._onDidSuggest.event,this._telemetryGate=0,this._currentSelection=this._editor.getSelection()||new a.Dl(1,1,1,1),this._toDispose.add(this._editor.onDidChangeModel(()=>{this._updateTriggerCharacters(),this.cancel()})),this._toDispose.add(this._editor.onDidChangeModelLanguage(()=>{this._updateTriggerCharacters(),this.cancel()})),this._toDispose.add(this._editor.onDidChangeConfiguration(()=>{this._updateTriggerCharacters()})),this._toDispose.add(this._languageFeaturesService.completionProvider.onDidChange(()=>{this._updateTriggerCharacters(),this._updateActiveSuggestSession()}));let l=!1;this._toDispose.add(this._editor.onDidCompositionStart(()=>{l=!0})),this._toDispose.add(this._editor.onDidCompositionEnd(()=>{l=!1,this._onCompositionEnd()})),this._toDispose.add(this._editor.onDidChangeCursorSelection(e=>{l||this._onCursorChange(e)})),this._toDispose.add(this._editor.onDidChangeModelContent(()=>{l||this._refilterCompletionItems()})),this._updateTriggerCharacters()}dispose(){a.nu(this._triggerCharacterListener),a.nu([this._onDidCancel,this._onDidSuggest,this._onDidTrigger,this._triggerQuickSuggest]),this._toDispose.dispose(),this._completionDisposables.dispose(),this.cancel()}_updateTriggerCharacters(){if(this._triggerCharacterListener.clear(),this._editor.getOption(82)||!this._editor.hasModel()||!this._editor.getOption(110))return;let e=new Map;for(let t of this._languageFeaturesService.completionProvider.all(this._editor.getModel()))for(let n of t.triggerCharacters||[]){let r=e.get(n);r||(r=new Set,r.add(Ka()),e.set(n,r)),r.add(t)}let t=t=>{if(!Df(this._editor,this._contextKeyService,this._configurationService)||Tf.shouldAutoTrigger(this._editor))return;if(!t){let e=this._editor.getPosition();t=this._editor.getModel().getLineContent(e.lineNumber).substr(0,e.column-1)}let n=``;a.Jc(t.charCodeAt(t.length-1))?a.qc(t.charCodeAt(t.length-2))&&(n=t.substr(t.length-2)):n=t.charAt(t.length-1);let r=e.get(n);if(r){let e=this._completionModel?{items:this._completionModel.adopt(r),clipboardText:this._completionModel.clipboardText}:void 0;this.trigger({auto:!0,shy:!1,noSelect:!1,triggerCharacter:n},!!this._completionModel,r,e)}};this._triggerCharacterListener.add(this._editor.onDidType(t)),this._triggerCharacterListener.add(this._editor.onDidCompositionEnd(()=>t()))}get state(){return this._state}cancel(e=!1){var t;this._state!==0&&(this._triggerQuickSuggest.cancel(),(t=this._requestToken)==null||t.cancel(),this._requestToken=void 0,this._state=0,this._completionModel=void 0,this._context=void 0,this._onDidCancel.fire({retrigger:e}))}clear(){this._completionDisposables.clear()}_updateActiveSuggestSession(){this._state!==0&&(!this._editor.hasModel()||!this._languageFeaturesService.completionProvider.has(this._editor.getModel())?this.cancel():this.trigger({auto:this._state===2,shy:!1,noSelect:!1},!0))}_onCursorChange(e){if(!this._editor.hasModel())return;let t=this._currentSelection;if(this._currentSelection=this._editor.getSelection(),!e.selection.isEmpty()||e.reason!==0&&e.reason!==3||e.source!==`keyboard`&&e.source!==`deleteLeft`){this.cancel();return}this._state===0&&e.reason===0?(t.containsRange(this._currentSelection)||t.getEndPosition().isBeforeOrEqual(this._currentSelection.getPosition()))&&this._doTriggerQuickSuggest():this._state!==0&&e.reason===3&&this._refilterCompletionItems()}_onCompositionEnd(){this._state===0?this._doTriggerQuickSuggest():this._refilterCompletionItems()}_doTriggerQuickSuggest(){to.isAllOff(this._editor.getOption(80))||this._editor.getOption(107).snippetsPreventQuickSuggestions&&z.get(this._editor)?.isInSnippet()||(this.cancel(),this._triggerQuickSuggest.cancelAndSet(()=>{if(this._state!==0||!Tf.shouldAutoTrigger(this._editor)||!this._editor.hasModel()||!this._editor.hasWidgetFocus())return;let e=this._editor.getModel(),t=this._editor.getPosition(),n=this._editor.getOption(80);if(!to.isAllOff(n)){if(!to.isAllOn(n)){e.tokenization.tokenizeIfCheap(t.lineNumber);let r=e.tokenization.getLineTokens(t.lineNumber),i=r.getStandardTokenType(r.findTokenIndexAtOffset(Math.max(t.column-1-1,0)));if(to.valueFor(n,i)!==`on`)return}Ef(this._editor,this._contextKeyService,this._configurationService)&&this._languageFeaturesService.completionProvider.has(e)&&this.trigger({auto:!0,shy:!1,noSelect:!1})}},this._editor.getOption(81)))}_refilterCompletionItems(){Promise.resolve().then(()=>{if(this._state===0||!this._editor.hasModel())return;let e=new Tf(this._editor.getModel(),this._editor.getPosition(),this._state===2,!1,!1);this._onNewContext(e)})}trigger(t,n=!1,r,i,o){if(!this._editor.hasModel())return;let s=this._editor.getModel(),c=t.auto,l=new Tf(s,this._editor.getPosition(),c,t.shy,t.noSelect);this.cancel(n),this._state=c?2:1,this._onDidTrigger.fire({auto:c,shy:t.shy,position:this._editor.getPosition()}),this._context=l;let u={triggerKind:t.triggerKind??0};t.triggerCharacter&&(u={triggerKind:1,triggerCharacter:t.triggerCharacter}),this._requestToken=new a.Vl;let d=this._editor.getOption(102),f=1;switch(d){case`top`:f=0;break;case`bottom`:f=2;break}let{itemKind:p,showDeprecated:m}=e._createSuggestFilter(this._editor),h=new Wa(f,o?new Set:p,r,m),g=yf.create(this._editorWorkerService,this._editor),_=Ja(this._languageFeaturesService.completionProvider,s,this._editor.getPosition(),h,u,this._requestToken.token);Promise.all([_,g]).then(([e,n])=>wf(this,void 0,void 0,function*(){var r;if((r=this._requestToken)==null||r.dispose(),!this._editor.hasModel())return;let a=i?.clipboardText;if(!a&&e.needsClipboard&&(a=yield this._clipboardService.readText()),this._state===0)return;let o=this._editor.getModel(),s=e.items;if(i){let e=$a(f);s=s.concat(i.items).sort(e)}let l=new Tf(o,this._editor.getPosition(),c,t.shy,t.noSelect);this._completionModel=new xf(s,this._context.column,{leadingLineContent:l.leadingLineContent,characterCountDelta:l.column-this._context.column},n,this._editor.getOption(107),this._editor.getOption(102),void 0,a),this._completionDisposables.add(e.disposable),this._onNewContext(l),this._reportDurationsTelemetry(e.durations)})).catch(a.fu)}_reportDurationsTelemetry(e){this._telemetryGate++%230==0&&setTimeout(()=>{this._telemetryService.publicLog2(`suggest.durations.json`,{data:JSON.stringify(e)}),this._logService.debug(`suggest.durations.json`,e)})}static _createSuggestFilter(e){let t=new Set;e.getOption(102)===`none`&&t.add(27);let n=e.getOption(107);return n.showMethods||t.add(0),n.showFunctions||t.add(1),n.showConstructors||t.add(2),n.showFields||t.add(3),n.showVariables||t.add(4),n.showClasses||t.add(5),n.showStructs||t.add(6),n.showInterfaces||t.add(7),n.showModules||t.add(8),n.showProperties||t.add(9),n.showEvents||t.add(10),n.showOperators||t.add(11),n.showUnits||t.add(12),n.showValues||t.add(13),n.showConstants||t.add(14),n.showEnums||t.add(15),n.showEnumMembers||t.add(16),n.showKeywords||t.add(17),n.showWords||t.add(18),n.showColors||t.add(19),n.showFiles||t.add(20),n.showReferences||t.add(21),n.showColors||t.add(22),n.showFolders||t.add(23),n.showTypeParameters||t.add(24),n.showSnippets||t.add(27),n.showUsers||t.add(25),n.showIssues||t.add(26),{itemKind:t,showDeprecated:n.showDeprecated}}_onNewContext(e){if(this._context){if(e.lineNumber!==this._context.lineNumber){this.cancel();return}if(a.Bc(e.leadingLineContent)!==a.Bc(this._context.leadingLineContent)){this.cancel();return}if(e.column<this._context.column){e.leadingWord.word?this.trigger({auto:this._context.auto,shy:!1,noSelect:!1},!0):this.cancel();return}if(this._completionModel){if(e.leadingWord.word.length!==0&&e.leadingWord.startColumn>this._context.leadingWord.startColumn){let e=new Set(this._languageFeaturesService.completionProvider.all(this._editor.getModel()));for(let t of this._completionModel.allProvider)e.delete(t);let t=this._completionModel.adopt(new Set);this.trigger({auto:this._context.auto,shy:!1,noSelect:!1},!0,e,{items:t,clipboardText:this._completionModel.clipboardText});return}if(e.column>this._context.column&&this._completionModel.incomplete.size>0&&e.leadingWord.word.length!==0){let{incomplete:e}=this._completionModel,t=this._completionModel.adopt(e);this.trigger({auto:this._state===2,shy:!1,noSelect:!1,triggerKind:2},!0,e,{items:t,clipboardText:this._completionModel.clipboardText})}else{let t=this._completionModel.lineContext,n=!1;if(this._completionModel.lineContext={leadingLineContent:e.leadingLineContent,characterCountDelta:e.column-this._context.column},this._completionModel.items.length===0){if(Tf.shouldAutoTrigger(this._editor)&&this._context.leadingWord.endColumn<e.leadingWord.startColumn){this.trigger({auto:this._context.auto,shy:!1,noSelect:!1},!0);return}if(this._context.auto){this.cancel();return}else if(this._completionModel.lineContext=t,n=this._completionModel.items.length>0,n&&e.leadingWord.word.length===0){this.cancel();return}}this._onDidSuggest.fire({completionModel:this._completionModel,auto:this._context.auto,shy:this._context.shy,noSelect:this._context.noSelect,isFrozen:n})}}}}};Of=Sf([Cf(1,o.Ht),Cf(2,o.zt),Cf(3,a.aa),Cf(4,a.$o),Cf(5,a.Ea),Cf(6,a.Ys),Cf(7,a.Zo)],Of);var kf=class e{constructor(t,n){this._disposables=new a.Zl,this._lastOvertyped=[],this._empty=!0,this._disposables.add(t.onWillType(()=>{if(!this._empty||!t.hasModel())return;let n=t.getSelections(),r=n.length,i=!1;for(let e=0;e<r;e++)if(!n[e].isEmpty()){i=!0;break}if(!i)return;this._lastOvertyped=[];let a=t.getModel();for(let t=0;t<r;t++){let r=n[t];if(a.getValueLengthInRange(r)>e._maxSelectionLength)return;this._lastOvertyped[t]={value:a.getValueInRange(r),multiline:r.startLineNumber!==r.endLineNumber}}this._empty=!1})),this._disposables.add(n.onDidCancel(e=>{!this._empty&&!e.retrigger&&(this._empty=!0)}))}getLastOvertypedInfo(e){if(!this._empty&&e>=0&&e<this._lastOvertyped.length)return this._lastOvertyped[e]}dispose(){this._disposables.dispose()}};kf._maxSelectionLength=51200;var Af=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},jf=function(e,t){return function(n,r){t(n,r,e)}},Mf=class e extends Nr{updateLabel(){let t=this._keybindingService.lookupKeybinding(this._action.id,this._contextKeyService);if(!t)return super.updateLabel();this.label&&(this.label.textContent=a.Td(`ddd`,`{0} ({1})`,this._action.label,e.symbolPrintEnter(t)))}static symbolPrintEnter(e){return e.getLabel()?.replace(/\benter\b/gi,`⏎`)}},Nf=class{constructor(e,t,n,r){this._menuService=n,this._contextKeyService=r,this._menuDisposables=new a.Zl,this.element=a.Xa(e,a.za(`.suggest-status-bar`));let i=(e=>e instanceof a.la?t.createInstance(Mf,e,void 0):void 0);this._leftActions=new o.Gt(this.element,{actionViewItemProvider:i}),this._rightActions=new o.Gt(this.element,{actionViewItemProvider:i}),this._leftActions.domNode.classList.add(`left`),this._rightActions.domNode.classList.add(`right`)}dispose(){this._menuDisposables.dispose(),this.element.remove()}show(){let e=this._menuService.createMenu(Ha,this._contextKeyService),t=()=>{let t=[],n=[];for(let[r,i]of e.getActions())r===`left`?t.push(...i):n.push(...i);this._leftActions.clear(),this._leftActions.push(t),this._rightActions.clear(),this._rightActions.push(n)};this._menuDisposables.add(e.onDidChange(()=>t())),this._menuDisposables.add(e)}hide(){this._menuDisposables.clear()}};Nf=Af([jf(1,a.fc),jf(2,a.sa),jf(3,a.Ea)],Nf);var Pf=a.Ti(`symbolIcon.arrayForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.arrayForeground`,`The foreground color for array symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),Ff=a.Ti(`symbolIcon.booleanForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.booleanForeground`,`The foreground color for boolean symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),If=a.Ti(`symbolIcon.classForeground`,{dark:`#EE9D28`,light:`#D67E00`,hcDark:`#EE9D28`,hcLight:`#D67E00`},a.Td(`symbolIcon.classForeground`,`The foreground color for class symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),Lf=a.Ti(`symbolIcon.colorForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.colorForeground`,`The foreground color for color symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),Rf=a.Ti(`symbolIcon.constantForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.constantForeground`,`The foreground color for constant symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),zf=a.Ti(`symbolIcon.constructorForeground`,{dark:`#B180D7`,light:`#652D90`,hcDark:`#B180D7`,hcLight:`#652D90`},a.Td(`symbolIcon.constructorForeground`,`The foreground color for constructor symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),Bf=a.Ti(`symbolIcon.enumeratorForeground`,{dark:`#EE9D28`,light:`#D67E00`,hcDark:`#EE9D28`,hcLight:`#D67E00`},a.Td(`symbolIcon.enumeratorForeground`,`The foreground color for enumerator symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),Vf=a.Ti(`symbolIcon.enumeratorMemberForeground`,{dark:`#75BEFF`,light:`#007ACC`,hcDark:`#75BEFF`,hcLight:`#007ACC`},a.Td(`symbolIcon.enumeratorMemberForeground`,`The foreground color for enumerator member symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),Hf=a.Ti(`symbolIcon.eventForeground`,{dark:`#EE9D28`,light:`#D67E00`,hcDark:`#EE9D28`,hcLight:`#D67E00`},a.Td(`symbolIcon.eventForeground`,`The foreground color for event symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),Uf=a.Ti(`symbolIcon.fieldForeground`,{dark:`#75BEFF`,light:`#007ACC`,hcDark:`#75BEFF`,hcLight:`#007ACC`},a.Td(`symbolIcon.fieldForeground`,`The foreground color for field symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),Wf=a.Ti(`symbolIcon.fileForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.fileForeground`,`The foreground color for file symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),Gf=a.Ti(`symbolIcon.folderForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.folderForeground`,`The foreground color for folder symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),Kf=a.Ti(`symbolIcon.functionForeground`,{dark:`#B180D7`,light:`#652D90`,hcDark:`#B180D7`,hcLight:`#652D90`},a.Td(`symbolIcon.functionForeground`,`The foreground color for function symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),qf=a.Ti(`symbolIcon.interfaceForeground`,{dark:`#75BEFF`,light:`#007ACC`,hcDark:`#75BEFF`,hcLight:`#007ACC`},a.Td(`symbolIcon.interfaceForeground`,`The foreground color for interface symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),Jf=a.Ti(`symbolIcon.keyForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.keyForeground`,`The foreground color for key symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),Yf=a.Ti(`symbolIcon.keywordForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.keywordForeground`,`The foreground color for keyword symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),Xf=a.Ti(`symbolIcon.methodForeground`,{dark:`#B180D7`,light:`#652D90`,hcDark:`#B180D7`,hcLight:`#652D90`},a.Td(`symbolIcon.methodForeground`,`The foreground color for method symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),Zf=a.Ti(`symbolIcon.moduleForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.moduleForeground`,`The foreground color for module symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),Qf=a.Ti(`symbolIcon.namespaceForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.namespaceForeground`,`The foreground color for namespace symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),$f=a.Ti(`symbolIcon.nullForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.nullForeground`,`The foreground color for null symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),ep=a.Ti(`symbolIcon.numberForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.numberForeground`,`The foreground color for number symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),tp=a.Ti(`symbolIcon.objectForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.objectForeground`,`The foreground color for object symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),np=a.Ti(`symbolIcon.operatorForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.operatorForeground`,`The foreground color for operator symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),rp=a.Ti(`symbolIcon.packageForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.packageForeground`,`The foreground color for package symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),ip=a.Ti(`symbolIcon.propertyForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.propertyForeground`,`The foreground color for property symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),ap=a.Ti(`symbolIcon.referenceForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.referenceForeground`,`The foreground color for reference symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),op=a.Ti(`symbolIcon.snippetForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.snippetForeground`,`The foreground color for snippet symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),sp=a.Ti(`symbolIcon.stringForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.stringForeground`,`The foreground color for string symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),cp=a.Ti(`symbolIcon.structForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.structForeground`,`The foreground color for struct symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),lp=a.Ti(`symbolIcon.textForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.textForeground`,`The foreground color for text symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),up=a.Ti(`symbolIcon.typeParameterForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.typeParameterForeground`,`The foreground color for type parameter symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),dp=a.Ti(`symbolIcon.unitForeground`,{dark:a.ar,light:a.ar,hcDark:a.ar,hcLight:a.ar},a.Td(`symbolIcon.unitForeground`,`The foreground color for unit symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),fp=a.Ti(`symbolIcon.variableForeground`,{dark:`#75BEFF`,light:`#007ACC`,hcDark:`#75BEFF`,hcLight:`#007ACC`},a.Td(`symbolIcon.variableForeground`,`The foreground color for variable symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`));a.ba((e,t)=>{let n=e.getColor(Pf);n&&t.addRule(`${a.Tl.symbolArray.cssSelector} { color: ${n}; }`);let r=e.getColor(Ff);r&&t.addRule(`${a.Tl.symbolBoolean.cssSelector} { color: ${r}; }`);let i=e.getColor(If);i&&t.addRule(`${a.Tl.symbolClass.cssSelector} { color: ${i}; }`);let o=e.getColor(Xf);o&&t.addRule(`${a.Tl.symbolMethod.cssSelector} { color: ${o}; }`);let s=e.getColor(Lf);s&&t.addRule(`${a.Tl.symbolColor.cssSelector} { color: ${s}; }`);let c=e.getColor(Rf);c&&t.addRule(`${a.Tl.symbolConstant.cssSelector} { color: ${c}; }`);let l=e.getColor(zf);l&&t.addRule(`${a.Tl.symbolConstructor.cssSelector} { color: ${l}; }`);let u=e.getColor(Bf);u&&t.addRule(`
138
+ ${a.Tl.symbolValue.cssSelector},${a.Tl.symbolEnum.cssSelector} { color: ${u}; }`);let d=e.getColor(Vf);d&&t.addRule(`${a.Tl.symbolEnumMember.cssSelector} { color: ${d}; }`);let f=e.getColor(Hf);f&&t.addRule(`${a.Tl.symbolEvent.cssSelector} { color: ${f}; }`);let p=e.getColor(Uf);p&&t.addRule(`${a.Tl.symbolField.cssSelector} { color: ${p}; }`);let m=e.getColor(Wf);m&&t.addRule(`${a.Tl.symbolFile.cssSelector} { color: ${m}; }`);let h=e.getColor(Gf);h&&t.addRule(`${a.Tl.symbolFolder.cssSelector} { color: ${h}; }`);let g=e.getColor(Kf);g&&t.addRule(`${a.Tl.symbolFunction.cssSelector} { color: ${g}; }`);let _=e.getColor(qf);_&&t.addRule(`${a.Tl.symbolInterface.cssSelector} { color: ${_}; }`);let v=e.getColor(Jf);v&&t.addRule(`${a.Tl.symbolKey.cssSelector} { color: ${v}; }`);let ee=e.getColor(Yf);ee&&t.addRule(`${a.Tl.symbolKeyword.cssSelector} { color: ${ee}; }`);let te=e.getColor(Zf);te&&t.addRule(`${a.Tl.symbolModule.cssSelector} { color: ${te}; }`);let y=e.getColor(Qf);y&&t.addRule(`${a.Tl.symbolNamespace.cssSelector} { color: ${y}; }`);let b=e.getColor($f);b&&t.addRule(`${a.Tl.symbolNull.cssSelector} { color: ${b}; }`);let x=e.getColor(ep);x&&t.addRule(`${a.Tl.symbolNumber.cssSelector} { color: ${x}; }`);let ne=e.getColor(tp);ne&&t.addRule(`${a.Tl.symbolObject.cssSelector} { color: ${ne}; }`);let re=e.getColor(np);re&&t.addRule(`${a.Tl.symbolOperator.cssSelector} { color: ${re}; }`);let ie=e.getColor(rp);ie&&t.addRule(`${a.Tl.symbolPackage.cssSelector} { color: ${ie}; }`);let S=e.getColor(ip);S&&t.addRule(`${a.Tl.symbolProperty.cssSelector} { color: ${S}; }`);let C=e.getColor(ap);C&&t.addRule(`${a.Tl.symbolReference.cssSelector} { color: ${C}; }`);let ae=e.getColor(op);ae&&t.addRule(`${a.Tl.symbolSnippet.cssSelector} { color: ${ae}; }`);let oe=e.getColor(sp);oe&&t.addRule(`${a.Tl.symbolString.cssSelector} { color: ${oe}; }`);let se=e.getColor(cp);se&&t.addRule(`${a.Tl.symbolStruct.cssSelector} { color: ${se}; }`);let ce=e.getColor(lp);ce&&t.addRule(`${a.Tl.symbolText.cssSelector} { color: ${ce}; }`);let le=e.getColor(up);le&&t.addRule(`${a.Tl.symbolTypeParameter.cssSelector} { color: ${le}; }`);let ue=e.getColor(dp);ue&&t.addRule(`${a.Tl.symbolUnit.cssSelector} { color: ${ue}; }`);let de=e.getColor(fp);de&&t.addRule(`${a.Tl.symbolVariable.cssSelector} { color: ${de}; }`)});var pp=class{constructor(){this._onDidWillResize=new a.Ul,this.onDidWillResize=this._onDidWillResize.event,this._onDidResize=new a.Ul,this.onDidResize=this._onDidResize.event,this._sashListener=new a.Zl,this._size=new a.Ba(0,0),this._minSize=new a.Ba(0,0),this._maxSize=new a.Ba(2**53-1,2**53-1),this.domNode=document.createElement(`div`),this._eastSash=new o.hn(this.domNode,{getVerticalSashLeft:()=>this._size.width},{orientation:0}),this._westSash=new o.hn(this.domNode,{getVerticalSashLeft:()=>0},{orientation:0}),this._northSash=new o.hn(this.domNode,{getHorizontalSashTop:()=>0},{orientation:1,orthogonalEdge:o.mn.North}),this._southSash=new o.hn(this.domNode,{getHorizontalSashTop:()=>this._size.height},{orientation:1,orthogonalEdge:o.mn.South}),this._northSash.orthogonalStartSash=this._westSash,this._northSash.orthogonalEndSash=this._eastSash,this._southSash.orthogonalStartSash=this._westSash,this._southSash.orthogonalEndSash=this._eastSash;let e,t=0,n=0;this._sashListener.add(a.Wl.any(this._northSash.onDidStart,this._eastSash.onDidStart,this._southSash.onDidStart,this._westSash.onDidStart)(()=>{e===void 0&&(this._onDidWillResize.fire(),e=this._size,t=0,n=0)})),this._sashListener.add(a.Wl.any(this._northSash.onDidEnd,this._eastSash.onDidEnd,this._southSash.onDidEnd,this._westSash.onDidEnd)(()=>{e!==void 0&&(e=void 0,t=0,n=0,this._onDidResize.fire({dimension:this._size,done:!0}))})),this._sashListener.add(this._eastSash.onDidChange(r=>{e&&(n=r.currentX-r.startX,this.layout(e.height+t,e.width+n),this._onDidResize.fire({dimension:this._size,done:!1,east:!0}))})),this._sashListener.add(this._westSash.onDidChange(r=>{e&&(n=-(r.currentX-r.startX),this.layout(e.height+t,e.width+n),this._onDidResize.fire({dimension:this._size,done:!1,west:!0}))})),this._sashListener.add(this._northSash.onDidChange(r=>{e&&(t=-(r.currentY-r.startY),this.layout(e.height+t,e.width+n),this._onDidResize.fire({dimension:this._size,done:!1,north:!0}))})),this._sashListener.add(this._southSash.onDidChange(r=>{e&&(t=r.currentY-r.startY,this.layout(e.height+t,e.width+n),this._onDidResize.fire({dimension:this._size,done:!1,south:!0}))})),this._sashListener.add(a.Wl.any(this._eastSash.onDidReset,this._westSash.onDidReset)(e=>{this._preferredSize&&(this.layout(this._size.height,this._preferredSize.width),this._onDidResize.fire({dimension:this._size,done:!0}))})),this._sashListener.add(a.Wl.any(this._northSash.onDidReset,this._southSash.onDidReset)(e=>{this._preferredSize&&(this.layout(this._preferredSize.height,this._size.width),this._onDidResize.fire({dimension:this._size,done:!0}))}))}dispose(){this._northSash.dispose(),this._southSash.dispose(),this._eastSash.dispose(),this._westSash.dispose(),this._sashListener.dispose(),this._onDidResize.dispose(),this._onDidWillResize.dispose(),this.domNode.remove()}enableSashes(e,t,n,r){this._northSash.state=e?3:0,this._eastSash.state=t?3:0,this._southSash.state=n?3:0,this._westSash.state=r?3:0}layout(e=this.size.height,t=this.size.width){let{height:n,width:r}=this._minSize,{height:i,width:o}=this._maxSize;e=Math.max(n,Math.min(i,e)),t=Math.max(r,Math.min(o,t));let s=new a.Ba(t,e);a.Ba.equals(s,this._size)||(this.domNode.style.height=e+`px`,this.domNode.style.width=t+`px`,this._size=s,this._northSash.layout(),this._eastSash.layout(),this._southSash.layout(),this._westSash.layout())}clearSashHoverState(){this._eastSash.clearSashHoverState(),this._westSash.clearSashHoverState(),this._northSash.clearSashHoverState(),this._southSash.clearSashHoverState()}get size(){return this._size}set maxSize(e){this._maxSize=e}get maxSize(){return this._maxSize}set minSize(e){this._minSize=e}get minSize(){return this._minSize}set preferredSize(e){this._preferredSize=e}get preferredSize(){return this._preferredSize}},mp=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},hp=function(e,t){return function(n,r){t(n,r,e)}};function gp(e){return!!e&&!!(e.completion.documentation||e.completion.detail&&e.completion.detail!==e.completion.label)}var _p=class{constructor(e,t){this._editor=e,this._onDidClose=new a.Ul,this.onDidClose=this._onDidClose.event,this._onDidChangeContents=new a.Ul,this.onDidChangeContents=this._onDidChangeContents.event,this._disposables=new a.Zl,this._renderDisposeable=new a.Zl,this._borderWidth=1,this._size=new a.Ba(330,0),this.domNode=a.za(`.suggest-details`),this.domNode.classList.add(`no-docs`),this._markdownRenderer=t.createInstance(bo,{editor:e}),this._body=a.za(`.body`),this._scrollbar=new o.Tn(this._body,{alwaysConsumeMouseWheel:!0}),a.Xa(this.domNode,this._scrollbar.getDomNode()),this._disposables.add(this._scrollbar),this._header=a.Xa(this._body,a.za(`.header`)),this._close=a.Xa(this._header,a.za(`span`+a.Tl.close.cssSelector)),this._close.title=a.Td(`details.close`,`Close`),this._type=a.Xa(this._header,a.za(`p.type`)),this._docs=a.Xa(this._body,a.za(`p.docs`)),this._configureFont(),this._disposables.add(this._editor.onDidChangeConfiguration(e=>{e.hasChanged(45)&&this._configureFont()}))}dispose(){this._disposables.dispose(),this._renderDisposeable.dispose()}_configureFont(){let e=this._editor.getOptions(),t=e.get(45),n=t.getMassagedFontFamily(),r=e.get(108)||t.fontSize,i=e.get(109)||t.lineHeight,a=t.fontWeight,o=`${r}px`,s=`${i}px`;this.domNode.style.fontSize=o,this.domNode.style.lineHeight=`${i/r}`,this.domNode.style.fontWeight=a,this.domNode.style.fontFeatureSettings=t.fontFeatureSettings,this._type.style.fontFamily=n,this._close.style.height=s,this._close.style.width=s}getLayoutInfo(){let e=this._editor.getOption(109)||this._editor.getOption(45).lineHeight,t=this._borderWidth;return{lineHeight:e,borderWidth:t,borderHeight:t*2,verticalPadding:22,horizontalPadding:14}}renderLoading(){this._type.textContent=a.Td(`loading`,`Loading...`),this._docs.textContent=``,this.domNode.classList.remove(`no-docs`,`no-type`),this.layout(this.size.width,this.getLayoutInfo().lineHeight*2),this._onDidChangeContents.fire(this)}renderItem(e,t){this._renderDisposeable.clear();let{detail:n,documentation:r}=e.completion;if(t){let t=``;t+=`score: ${e.score[0]}\n`,t+=`prefix: ${e.word??`(no prefix)`}\n`,t+=`word: ${e.completion.filterText?e.completion.filterText+` (filterText)`:e.textLabel}\n`,t+=`distance: ${e.distance} (localityBonus-setting)\n`,t+=`index: ${e.idx}, based on ${e.completion.sortText&&`sortText: "${e.completion.sortText}"`||`label`}\n`,t+=`commit_chars: ${e.completion.commitCharacters?.join(``)}\n`,r=new o.Jt().appendCodeblock(`empty`,t),n=`Provider: ${e.provider._debugDisplayName}`}if(!t&&!gp(e)){this.clearContents();return}if(this.domNode.classList.remove(`no-docs`,`no-type`),n){let e=n.length>1e5?`${n.substr(0,1e5)}…`:n;this._type.textContent=e,this._type.title=e,a.jo(this._type),this._type.classList.toggle(`auto-wrap`,!/\r?\n^\s+/gim.test(e))}else a.$a(this._type),this._type.title=``,a.vo(this._type),this.domNode.classList.add(`no-type`);if(a.$a(this._docs),typeof r==`string`)this._docs.classList.remove(`markdown-docs`),this._docs.textContent=r;else if(r){this._docs.classList.add(`markdown-docs`),a.$a(this._docs);let e=this._markdownRenderer.render(r);this._docs.appendChild(e.element),this._renderDisposeable.add(e),this._renderDisposeable.add(this._markdownRenderer.onDidRenderAsync(()=>{this.layout(this._size.width,this._type.clientHeight+this._docs.clientHeight),this._onDidChangeContents.fire(this)}))}this.domNode.style.userSelect=`text`,this.domNode.tabIndex=-1,this._close.onmousedown=e=>{e.preventDefault(),e.stopPropagation()},this._close.onclick=e=>{e.preventDefault(),e.stopPropagation(),this._onDidClose.fire()},this._body.scrollTop=0,this.layout(this._size.width,this._type.clientHeight+this._docs.clientHeight),this._onDidChangeContents.fire(this)}clearContents(){this.domNode.classList.add(`no-docs`),this._type.textContent=``,this._docs.textContent=``}get size(){return this._size}layout(e,t){let n=new a.Ba(e,t);a.Ba.equals(n,this._size)||(this._size=n,a.Mo(this.domNode,e,t)),this._scrollbar.scanDomNode()}scrollDown(e=8){this._body.scrollTop+=e}scrollUp(e=8){this._body.scrollTop-=e}scrollTop(){this._body.scrollTop=0}scrollBottom(){this._body.scrollTop=this._body.scrollHeight}pageDown(){this.scrollDown(80)}pageUp(){this.scrollUp(80)}set borderWidth(e){this._borderWidth=e}get borderWidth(){return this._borderWidth}};_p=mp([hp(1,a.fc)],_p);var vp=class{constructor(e,t){this.widget=e,this._editor=t,this._disposables=new a.Zl,this._added=!1,this._preferAlignAtTop=!0,this._resizable=new pp,this._resizable.domNode.classList.add(`suggest-details-container`),this._resizable.domNode.appendChild(e.domNode),this._resizable.enableSashes(!1,!0,!0,!1);let n,r,i=0,o=0;this._disposables.add(this._resizable.onDidWillResize(()=>{n=this._topLeft,r=this._resizable.size})),this._disposables.add(this._resizable.onDidResize(e=>{if(n&&r){this.widget.layout(e.dimension.width,e.dimension.height);let t=!1;e.west&&(o=r.width-e.dimension.width,t=!0),e.north&&(i=r.height-e.dimension.height,t=!0),t&&this._applyTopLeft({top:n.top+i,left:n.left+o})}e.done&&(n=void 0,r=void 0,i=0,o=0,this._userSize=e.dimension)})),this._disposables.add(this.widget.onDidChangeContents(()=>{this._anchorBox&&this._placeAtAnchor(this._anchorBox,this._userSize??this.widget.size,this._preferAlignAtTop)}))}dispose(){this._resizable.dispose(),this._disposables.dispose(),this.hide()}getId(){return`suggest.details`}getDomNode(){return this._resizable.domNode}getPosition(){return null}show(){this._added||=(this._editor.addOverlayWidget(this),this.getDomNode().style.position=`fixed`,!0)}hide(e=!1){this._resizable.clearSashHoverState(),this._added&&(this._editor.removeOverlayWidget(this),this._added=!1,this._anchorBox=void 0,this._topLeft=void 0),e&&(this._userSize=void 0,this.widget.clearContents())}placeAtAnchor(e,t){this._anchorBox=e.getBoundingClientRect(),this._preferAlignAtTop=t,this._placeAtAnchor(this._anchorBox,this._userSize??this.widget.size,t)}_placeAtAnchor(e,t,n){let r=a.oo(document.body),i=this.widget.getLayoutInfo(),o=new a.Ba(220,2*i.lineHeight),s=e.top,c=(function(){let n=r.width-(e.left+e.width+i.borderWidth+i.horizontalPadding),c=-i.borderWidth+e.left+e.width,l=new a.Ba(n,r.height-e.top-i.borderHeight-i.verticalPadding),u=l.with(void 0,e.top+e.height-i.borderHeight-i.verticalPadding);return{top:s,left:c,fit:n-t.width,maxSizeTop:l,maxSizeBottom:u,minSize:o.with(Math.min(n,o.width))}})(),l=[c,(function(){let n=e.left-i.borderWidth-i.horizontalPadding,c=Math.max(i.horizontalPadding,e.left-t.width-i.borderWidth),l=new a.Ba(n,r.height-e.top-i.borderHeight-i.verticalPadding),u=l.with(void 0,e.top+e.height-i.borderHeight-i.verticalPadding);return{top:s,left:c,fit:n-t.width,maxSizeTop:l,maxSizeBottom:u,minSize:o.with(Math.min(n,o.width))}})(),(function(){let n=e.left,s=-i.borderWidth+e.top+e.height,c=new a.Ba(e.width-i.borderHeight,r.height-e.top-e.height-i.verticalPadding);return{top:s,left:n,fit:c.height-t.height,maxSizeBottom:c,maxSizeTop:c,minSize:o.with(c.width)}})()],u=l.find(e=>e.fit>=0)??l.sort((e,t)=>t.fit-e.fit)[0],d=e.top+e.height-i.borderHeight,f,p=t.height,m=Math.max(u.maxSizeTop.height,u.maxSizeBottom.height);p>m&&(p=m);let h;n?p<=u.maxSizeTop.height?(f=!0,h=u.maxSizeTop):(f=!1,h=u.maxSizeBottom):p<=u.maxSizeBottom.height?(f=!1,h=u.maxSizeBottom):(f=!0,h=u.maxSizeTop),this._applyTopLeft({left:u.left,top:f?u.top:d-p}),this.getDomNode().style.position=`fixed`,this._resizable.enableSashes(!f,u===c,f,u!==c),this._resizable.minSize=u.minSize,this._resizable.maxSize=h,this._resizable.layout(p,Math.min(h.width,t.width)),this.widget.layout(this._resizable.size.width,this._resizable.size.height)}_applyTopLeft(e){this._topLeft=e,this.getDomNode().style.left=`${this._topLeft.left}px`,this.getDomNode().style.top=`${this._topLeft.top}px`}},yp;(function(e){e[e.FILE=0]=`FILE`,e[e.FOLDER=1]=`FOLDER`,e[e.ROOT_FOLDER=2]=`ROOT_FOLDER`})(yp||={});var bp=/(?:\/|^)(?:([^\/]+)\/)?([^\/]+)$/;function xp(e,t,n,r){let i=r===yp.ROOT_FOLDER?[`rootfolder-icon`]:r===yp.FOLDER?[`folder-icon`]:[`file-icon`];if(n){let o;if(n.scheme===a.Io.data)o=a.b.parseMetaData(n).get(a.b.META_DATA_LABEL);else{let e=n.path.match(bp);e?(o=Cp(e[2].toLowerCase()),e[1]&&i.push(`${Cp(e[1].toLowerCase())}-name-dir-icon`)):o=Cp(n.authority.toLowerCase())}if(r===yp.FOLDER)i.push(`${o}-name-folder-icon`);else{if(o){if(i.push(`${o}-name-file-icon`),i.push(`name-file-icon`),o.length<=255){let e=o.split(`.`);for(let t=1;t<e.length;t++)i.push(`${e.slice(t).join(`.`)}-ext-file-icon`)}i.push(`ext-file-icon`)}let r=Sp(e,t,n);r&&i.push(`${Cp(r)}-lang-file-icon`)}}return i}function Sp(e,t,n){if(!n)return null;let r=null;if(n.scheme===a.Io.data){let e=a.b.parseMetaData(n).get(a.b.META_DATA_MIME);e&&(r=t.getLanguageIdByMimeType(e))}else{let t=e.getModel(n);t&&(r=t.getLanguageId())}return r&&r!==`plaintext`?r:t.guessLanguageIdByFilepathOrFirstLine(n)}function Cp(e){return e.replace(/[\11\12\14\15\40]/g,`/`)}var wp=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Tp=function(e,t){return function(n,r){t(n,r,e)}},Ep;function Dp(e){return`suggest-aria-id:${e}`}var Op=o.Ut(`suggest-more-info`,a.Tl.chevronRight,a.Td(`suggestMoreInfoIcon`,`Icon for more information in the suggest widget.`)),kp=new(Ep=class e{extract(t,n){if(t.textLabel.match(e._regexStrict))return n[0]=t.textLabel,!0;if(t.completion.detail&&t.completion.detail.match(e._regexStrict))return n[0]=t.completion.detail,!0;if(typeof t.completion.documentation==`string`){let r=e._regexRelaxed.exec(t.completion.documentation);if(r&&(r.index===0||r.index+r[0].length===t.completion.documentation.length))return n[0]=r[0],!0}return!1}},Ep._regexRelaxed=/(#([\da-fA-F]{3}){1,2}|(rgb|hsl)a\(\s*(\d{1,3}%?\s*,\s*){3}(1|0?\.\d+)\)|(rgb|hsl)\(\s*\d{1,3}%?(\s*,\s*\d{1,3}%?){2}\s*\))/,Ep._regexStrict=RegExp(`^${Ep._regexRelaxed.source}$`,`i`),Ep),Ap=class{constructor(e,t,n,r){this._editor=e,this._modelService=t,this._languageService=n,this._themeService=r,this._onDidToggleDetails=new a.Ul,this.onDidToggleDetails=this._onDidToggleDetails.event,this.templateId=`suggestion`}dispose(){this._onDidToggleDetails.dispose()}renderTemplate(e){let t=Object.create(null);t.disposables=new a.Zl,t.root=e,t.root.classList.add(`show-file-icons`),t.icon=a.Xa(e,a.za(`.icon`)),t.colorspan=a.Xa(t.icon,a.za(`span.colorspan`));let n=a.Xa(a.Xa(e,a.za(`.contents`)),a.za(`.main`));t.iconContainer=a.Xa(n,a.za(`.icon-label.codicon`)),t.left=a.Xa(n,a.za(`span.left`)),t.right=a.Xa(n,a.za(`span.right`)),t.iconLabel=new o.X(t.left,{supportHighlights:!0,supportIcons:!0}),t.disposables.add(t.iconLabel),t.parametersLabel=a.Xa(t.left,a.za(`span.signature-label`)),t.qualifierLabel=a.Xa(t.left,a.za(`span.qualifier-label`)),t.detailsLabel=a.Xa(t.right,a.za(`span.details-label`)),t.readMore=a.Xa(t.right,a.za(`span.readMore`+a.va.asCSSSelector(Op))),t.readMore.title=a.Td(`readMore`,`Read More`);let r=()=>{let e=this._editor.getOptions(),r=e.get(45),i=r.getMassagedFontFamily(),a=r.fontFeatureSettings,o=e.get(108)||r.fontSize,s=e.get(109)||r.lineHeight,c=r.fontWeight,l=r.letterSpacing,u=`${o}px`,d=`${s}px`,f=`${l}px`;t.root.style.fontSize=u,t.root.style.fontWeight=c,t.root.style.letterSpacing=f,n.style.fontFamily=i,n.style.fontFeatureSettings=a,n.style.lineHeight=d,t.icon.style.height=d,t.icon.style.width=d,t.readMore.style.height=d,t.readMore.style.width=d};return r(),t.disposables.add(this._editor.onDidChangeConfiguration(e=>{(e.hasChanged(45)||e.hasChanged(108)||e.hasChanged(109))&&r()})),t}renderElement(e,t,n){let{completion:r}=e;n.root.id=Dp(t),n.colorspan.style.backgroundColor=``;let i={labelEscapeNewLines:!0,matches:o.in(e.score)},s=[];if(r.kind===19&&kp.extract(e,s))n.icon.className=`icon customcolor`,n.iconContainer.className=`icon hide`,n.colorspan.style.backgroundColor=s[0];else if(r.kind===20&&this._themeService.getFileIconTheme().hasFileIcons){n.icon.className=`icon hide`,n.iconContainer.className=`icon hide`;let t=xp(this._modelService,this._languageService,a.Al.from({scheme:`fake`,path:e.textLabel}),yp.FILE),o=xp(this._modelService,this._languageService,a.Al.from({scheme:`fake`,path:r.detail}),yp.FILE);i.extraClasses=t.length>o.length?t:o}else r.kind===23&&this._themeService.getFileIconTheme().hasFolderIcons?(n.icon.className=`icon hide`,n.iconContainer.className=`icon hide`,i.extraClasses=[xp(this._modelService,this._languageService,a.Al.from({scheme:`fake`,path:e.textLabel}),yp.FOLDER),xp(this._modelService,this._languageService,a.Al.from({scheme:`fake`,path:r.detail}),yp.FOLDER)].flat()):(n.icon.className=`icon hide`,n.iconContainer.className=``,n.iconContainer.classList.add(`suggest-icon`,...a.wl.asClassNameArray(a.fl.toIcon(r.kind))));r.tags&&r.tags.indexOf(1)>=0&&(i.extraClasses=(i.extraClasses||[]).concat([`deprecated`]),i.matches=[]),n.iconLabel.setLabel(e.textLabel,void 0,i),typeof r.label==`string`?(n.parametersLabel.textContent=``,n.detailsLabel.textContent=jp(r.detail||``),n.root.classList.add(`string-label`)):(n.parametersLabel.textContent=jp(r.label.detail||``),n.detailsLabel.textContent=jp(r.label.description||``),n.root.classList.remove(`string-label`)),this._editor.getOption(107).showInlineDetails?a.jo(n.detailsLabel):a.vo(n.detailsLabel),gp(e)?(n.right.classList.add(`can-expand-details`),a.jo(n.readMore),n.readMore.onmousedown=e=>{e.stopPropagation(),e.preventDefault()},n.readMore.onclick=e=>{e.stopPropagation(),e.preventDefault(),this._onDidToggleDetails.fire()}):(n.right.classList.remove(`can-expand-details`),a.vo(n.readMore),n.readMore.onmousedown=null,n.readMore.onclick=null)}disposeTemplate(e){e.disposables.dispose()}};Ap=wp([Tp(1,a.As),Tp(2,a.Js),Tp(3,a.ga)],Ap);function jp(e){return e.replace(/\r\n|\r|\n/g,``)}var Mp=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Np=function(e,t){return function(n,r){t(n,r,e)}},Pp=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};a.Ti(`editorSuggestWidget.background`,{dark:a.$n,light:a.$n,hcDark:a.$n,hcLight:a.$n},a.Td(`editorSuggestWidgetBackground`,`Background color of the suggest widget.`)),a.Ti(`editorSuggestWidget.border`,{dark:a.er,light:a.er,hcDark:a.er,hcLight:a.er},a.Td(`editorSuggestWidgetBorder`,`Border color of the suggest widget.`));var Fp=a.Ti(`editorSuggestWidget.foreground`,{dark:a.En,light:a.En,hcDark:a.En,hcLight:a.En},a.Td(`editorSuggestWidgetForeground`,`Foreground color of the suggest widget.`));a.Ti(`editorSuggestWidget.selectedForeground`,{dark:a.Si,light:a.Si,hcDark:a.Si,hcLight:a.Si},a.Td(`editorSuggestWidgetSelectedForeground`,`Foreground color of the selected entry in the suggest widget.`)),a.Ti(`editorSuggestWidget.selectedIconForeground`,{dark:a.Ci,light:a.Ci,hcDark:a.Ci,hcLight:a.Ci},a.Td(`editorSuggestWidgetSelectedIconForeground`,`Icon foreground color of the selected entry in the suggest widget.`));var Ip=a.Ti(`editorSuggestWidget.selectedBackground`,{dark:a.xi,light:a.xi,hcDark:a.xi,hcLight:a.xi},a.Td(`editorSuggestWidgetSelectedBackground`,`Background color of the selected entry in the suggest widget.`));a.Ti(`editorSuggestWidget.highlightForeground`,{dark:a.zr,light:a.zr,hcDark:a.zr,hcLight:a.zr},a.Td(`editorSuggestWidgetHighlightForeground`,`Color of the match highlights in the suggest widget.`)),a.Ti(`editorSuggestWidget.focusHighlightForeground`,{dark:a.Lr,light:a.Lr,hcDark:a.Lr,hcLight:a.Lr},a.Td(`editorSuggestWidgetFocusHighlightForeground`,`Color of the match highlights in the suggest widget when an item is focused.`)),a.Ti(`editorSuggestWidgetStatus.foreground`,{dark:a.Li(Fp,.5),light:a.Li(Fp,.5),hcDark:a.Li(Fp,.5),hcLight:a.Li(Fp,.5)},a.Td(`editorSuggestWidgetStatusForeground`,`Foreground color of the suggest widget status.`));var Lp=class{constructor(e,t){this._service=e,this._key=`suggestWidget.size/${t.getEditorType()}/${t instanceof gr}`}restore(){let e=this._service.get(this._key,0)??``;try{let t=JSON.parse(e);if(a.Ba.is(t))return a.Ba.lift(t)}catch{}}store(e){this._service.store(this._key,JSON.stringify(e),0,1)}reset(){this._service.remove(this._key,0)}},Rp=class e{constructor(e,t,n,r,i){this.editor=e,this._storageService=t,this._state=0,this._isAuto=!1,this._ignoreFocusEvents=!1,this._forceRenderingAbove=!1,this._explainMode=!1,this._showTimeout=new a.xs,this._disposables=new a.Zl,this._onDidSelect=new a.Ul,this._onDidFocus=new a.Ul,this._onDidHide=new a.Ul,this._onDidShow=new a.Ul,this.onDidSelect=this._onDidSelect.event,this.onDidFocus=this._onDidFocus.event,this.onDidHide=this._onDidHide.event,this.onDidShow=this._onDidShow.event,this._onDetailsKeydown=new a.Ul,this.onDetailsKeyDown=this._onDetailsKeydown.event,this.element=new pp,this.element.domNode.classList.add(`editor-widget`,`suggest-widget`),this._contentWidget=new zp(this,e),this._persistedSize=new Lp(t,e);class s{constructor(e,t,n=!1,r=!1){this.persistedSize=e,this.currentSize=t,this.persistHeight=n,this.persistWidth=r}}let c;this._disposables.add(this.element.onDidWillResize(()=>{this._contentWidget.lockPreference(),c=new s(this._persistedSize.restore(),this.element.size)})),this._disposables.add(this.element.onDidResize(e=>{if(this._resize(e.dimension.width,e.dimension.height),c&&(c.persistHeight=c.persistHeight||!!e.north||!!e.south,c.persistWidth=c.persistWidth||!!e.east||!!e.west),e.done){if(c){let{itemHeight:e,defaultSize:t}=this.getLayoutInfo(),n=Math.round(e/2),{width:r,height:i}=this.element.size;(!c.persistHeight||Math.abs(c.currentSize.height-i)<=n)&&(i=c.persistedSize?.height??t.height),(!c.persistWidth||Math.abs(c.currentSize.width-r)<=n)&&(r=c.persistedSize?.width??t.width),this._persistedSize.store(new a.Ba(r,i))}this._contentWidget.unlockPreference(),c=void 0}})),this._messageElement=a.Xa(this.element.domNode,a.za(`.message`)),this._listElement=a.Xa(this.element.domNode,a.za(`.tree`));let l=i.createInstance(_p,this.editor);l.onDidClose(this.toggleDetails,this,this._disposables),this._details=new vp(l,this.editor);let u=()=>this.element.domNode.classList.toggle(`no-icons`,!this.editor.getOption(107).showIcons);u();let d=i.createInstance(Ap,this.editor);this._disposables.add(d),this._disposables.add(d.onDidToggleDetails(()=>this.toggleDetails())),this._list=new o.Y(`SuggestWidget`,this._listElement,{getHeight:e=>this.getLayoutInfo().itemHeight,getTemplateId:e=>`suggestion`},[d],{alwaysConsumeMouseWheel:!0,useShadows:!1,mouseSupport:!1,multipleSelectionSupport:!1,accessibilityProvider:{getRole:()=>`option`,getWidgetAriaLabel:()=>a.Td(`suggest`,`Suggest`),getWidgetRole:()=>`listbox`,getAriaLabel:e=>{let t=e.textLabel;if(typeof e.completion.label!=`string`){let{detail:n,description:r}=e.completion.label;n&&r?t=a.Td(`label.full`,`{0}{1}, {2}`,t,n,r):n?t=a.Td(`label.detail`,`{0}{1}`,t,n):r&&(t=a.Td(`label.desc`,`{0}, {1}`,t,r))}if(!e.isResolved||!this._isDetailsVisible())return t;let{documentation:n,detail:r}=e.completion,i=a.Rc(`{0}{1}`,r||``,n?typeof n==`string`?n:n.value:``);return a.Td(`ariaCurrenttSuggestionReadDetails`,`{0}, docs: {1}`,t,i)}}}),this._status=i.createInstance(Nf,this.element.domNode);let f=()=>this.element.domNode.classList.toggle(`with-status-bar`,this.editor.getOption(107).showStatusBar);f(),this._disposables.add(o.ht(this._list,r,{listInactiveFocusBackground:Ip,listInactiveFocusOutline:a.qt})),this._disposables.add(r.onDidColorThemeChange(e=>this._onThemeChange(e))),this._onThemeChange(r.getColorTheme()),this._disposables.add(this._list.onMouseDown(e=>this._onListMouseDownOrTap(e))),this._disposables.add(this._list.onTap(e=>this._onListMouseDownOrTap(e))),this._disposables.add(this._list.onDidChangeSelection(e=>this._onListSelection(e))),this._disposables.add(this._list.onDidChangeFocus(e=>this._onListFocus(e))),this._disposables.add(this.editor.onDidChangeCursorSelection(()=>this._onCursorSelectionChanged())),this._disposables.add(this.editor.onDidChangeConfiguration(e=>{e.hasChanged(107)&&(f(),u())})),this._ctxSuggestWidgetVisible=L.Visible.bindTo(n),this._ctxSuggestWidgetDetailsVisible=L.DetailsVisible.bindTo(n),this._ctxSuggestWidgetMultipleSuggestions=L.MultipleSuggestions.bindTo(n),this._ctxSuggestWidgetHasFocusedSuggestion=L.HasFocusedSuggestion.bindTo(n),this._disposables.add(a.Ja(this._details.widget.domNode,`keydown`,e=>{this._onDetailsKeydown.fire(e)})),this._disposables.add(this.editor.onMouseDown(e=>this._onEditorMouseDown(e)))}dispose(){var e;this._details.widget.dispose(),this._details.dispose(),this._list.dispose(),this._status.dispose(),this._disposables.dispose(),(e=this._loadingTimeout)==null||e.dispose(),this._showTimeout.dispose(),this._contentWidget.dispose(),this.element.dispose()}_onEditorMouseDown(e){this._details.widget.domNode.contains(e.target.element)?this._details.widget.domNode.focus():this.element.domNode.contains(e.target.element)&&this.editor.focus()}_onCursorSelectionChanged(){this._state!==0&&this._contentWidget.layout()}_onListMouseDownOrTap(e){e.element===void 0||e.index===void 0||(e.browserEvent.preventDefault(),e.browserEvent.stopPropagation(),this._select(e.element,e.index))}_onListSelection(e){e.elements.length&&this._select(e.elements[0],e.indexes[0])}_select(e,t){let n=this._completionModel;n&&(this._onDidSelect.fire({item:e,index:t,model:n}),this.editor.focus())}_onThemeChange(e){this._details.widget.borderWidth=a.wa(e.type)?2:1}_onListFocus(e){var t;if(this._ignoreFocusEvents)return;if(!e.elements.length){this._currentSuggestionDetails&&(this._currentSuggestionDetails.cancel(),this._currentSuggestionDetails=void 0,this._focusedItem=void 0),this.editor.setAriaOptions({activeDescendant:void 0}),this._ctxSuggestWidgetHasFocusedSuggestion.set(!1);return}if(!this._completionModel)return;this._ctxSuggestWidgetHasFocusedSuggestion.set(!0);let n=e.elements[0],r=e.indexes[0];n!==this._focusedItem&&((t=this._currentSuggestionDetails)==null||t.cancel(),this._currentSuggestionDetails=void 0,this._focusedItem=n,this._list.reveal(r),this._currentSuggestionDetails=a.Cs(e=>Pp(this,void 0,void 0,function*(){let t=a.ws(()=>{this._isDetailsVisible()&&this.showDetails(!0)},250),r=e.onCancellationRequested(()=>t.dispose()),i=yield n.resolve(e);return t.dispose(),r.dispose(),i})),this._currentSuggestionDetails.then(()=>{r>=this._list.length||n!==this._list.element(r)||(this._ignoreFocusEvents=!0,this._list.splice(r,1,[n]),this._list.setFocus([r]),this._ignoreFocusEvents=!1,this._isDetailsVisible()?this.showDetails(!1):this.element.domNode.classList.remove(`docs-side`),this.editor.setAriaOptions({activeDescendant:Dp(r)}))}).catch(a.fu)),this._onDidFocus.fire({item:n,index:r,model:this._completionModel})}_setState(t){if(this._state!==t)switch(this._state=t,this.element.domNode.classList.toggle(`frozen`,t===4),this.element.domNode.classList.remove(`message`),t){case 0:a.vo(this._messageElement,this._listElement,this._status.element),this._details.hide(!0),this._status.hide(),this._contentWidget.hide(),this._ctxSuggestWidgetVisible.reset(),this._ctxSuggestWidgetMultipleSuggestions.reset(),this._ctxSuggestWidgetHasFocusedSuggestion.reset(),this._showTimeout.cancel(),this.element.domNode.classList.remove(`visible`),this._list.splice(0,this._list.length),this._focusedItem=void 0,this._cappedHeight=void 0,this._explainMode=!1;break;case 1:this.element.domNode.classList.add(`message`),this._messageElement.textContent=e.LOADING_MESSAGE,a.vo(this._listElement,this._status.element),a.jo(this._messageElement),this._details.hide(),this._show(),this._focusedItem=void 0;break;case 2:this.element.domNode.classList.add(`message`),this._messageElement.textContent=e.NO_SUGGESTIONS_MESSAGE,a.vo(this._listElement,this._status.element),a.jo(this._messageElement),this._details.hide(),this._show(),this._focusedItem=void 0;break;case 3:a.vo(this._messageElement),a.jo(this._listElement,this._status.element),this._show();break;case 4:a.vo(this._messageElement),a.jo(this._listElement,this._status.element),this._show();break;case 5:a.vo(this._messageElement),a.jo(this._listElement,this._status.element),this._details.show(),this._show();break}}_show(){this._status.show(),this._contentWidget.show(),this._layout(this._persistedSize.restore()),this._ctxSuggestWidgetVisible.set(!0),this._showTimeout.cancelAndSet(()=>{this.element.domNode.classList.add(`visible`),this._onDidShow.fire(this)},100)}showTriggered(e,t){this._state===0&&(this._contentWidget.setPosition(this.editor.getPosition()),this._isAuto=!!e,this._isAuto||(this._loadingTimeout=a.ws(()=>this._setState(1),t)))}showSuggestions(e,t,n,r){var i,a;if(this._contentWidget.setPosition(this.editor.getPosition()),(i=this._loadingTimeout)==null||i.dispose(),(a=this._currentSuggestionDetails)==null||a.cancel(),this._currentSuggestionDetails=void 0,this._completionModel!==e&&(this._completionModel=e),n&&this._state!==2&&this._state!==0){this._setState(4);return}let o=this._completionModel.items.length,s=o===0;if(this._ctxSuggestWidgetMultipleSuggestions.set(o>1),s){this._setState(r?0:2),this._completionModel=void 0;return}this._focusedItem=void 0,this._list.splice(0,this._list.length,this._completionModel.items),this._setState(n?4:3),t>=0&&(this._list.reveal(t,0),this._list.setFocus([t])),this._layout(this.element.size),this._details.widget.domNode.classList.remove(`focused`)}selectNextPage(){switch(this._state){case 0:return!1;case 5:return this._details.widget.pageDown(),!0;case 1:return!this._isAuto;default:return this._list.focusNextPage(),!0}}selectNext(){switch(this._state){case 0:return!1;case 1:return!this._isAuto;default:return this._list.focusNext(1,!0),!0}}selectLast(){switch(this._state){case 0:return!1;case 5:return this._details.widget.scrollBottom(),!0;case 1:return!this._isAuto;default:return this._list.focusLast(),!0}}selectPreviousPage(){switch(this._state){case 0:return!1;case 5:return this._details.widget.pageUp(),!0;case 1:return!this._isAuto;default:return this._list.focusPreviousPage(),!0}}selectPrevious(){switch(this._state){case 0:return!1;case 1:return!this._isAuto;default:return this._list.focusPrevious(1,!0),!1}}selectFirst(){switch(this._state){case 0:return!1;case 5:return this._details.widget.scrollTop(),!0;case 1:return!this._isAuto;default:return this._list.focusFirst(),!0}}getFocusedItem(){if(this._state!==0&&this._state!==2&&this._state!==1&&this._completionModel)return{item:this._list.getFocusedElements()[0],index:this._list.getFocus()[0],model:this._completionModel}}toggleDetailsFocus(){this._state===5?(this._setState(3),this._details.widget.domNode.classList.remove(`focused`)):this._state===3&&this._isDetailsVisible()&&(this._setState(5),this._details.widget.domNode.classList.add(`focused`))}toggleDetails(){this._isDetailsVisible()?(this._ctxSuggestWidgetDetailsVisible.set(!1),this._setDetailsVisible(!1),this._details.hide(),this.element.domNode.classList.remove(`shows-details`)):(gp(this._list.getFocusedElements()[0])||this._explainMode)&&(this._state===3||this._state===5||this._state===4)&&(this._ctxSuggestWidgetDetailsVisible.set(!0),this._setDetailsVisible(!0),this.showDetails(!1))}showDetails(e){this._details.show(),e?this._details.widget.renderLoading():this._details.widget.renderItem(this._list.getFocusedElements()[0],this._explainMode),this._positionDetails(),this.editor.focus(),this.element.domNode.classList.add(`shows-details`)}toggleExplainMode(){this._list.getFocusedElements()[0]&&(this._explainMode=!this._explainMode,this._isDetailsVisible()?this.showDetails(!1):this.toggleDetails())}resetPersistedSize(){this._persistedSize.reset()}hideWidget(){var e;(e=this._loadingTimeout)==null||e.dispose(),this._setState(0),this._onDidHide.fire(this),this.element.clearSashHoverState();let t=this._persistedSize.restore(),n=Math.ceil(this.getLayoutInfo().itemHeight*4.3);t&&t.height<n&&this._persistedSize.store(t.with(void 0,n))}isFrozen(){return this._state===4}_afterRender(e){if(e===null){this._isDetailsVisible()&&this._details.hide();return}this._state===2||this._state===1||(this._isDetailsVisible()&&this._details.show(),this._positionDetails())}_layout(e){if(!this.editor.hasModel()||!this.editor.getDomNode())return;let t=a.oo(document.body),n=this.getLayoutInfo();e||=n.defaultSize;let r=e.height,i=e.width;if(this._status.element.style.lineHeight=`${n.itemHeight}px`,this._state===2||this._state===1)r=n.itemHeight+n.borderHeight,i=n.defaultSize.width/2,this.element.enableSashes(!1,!1,!1,!1),this.element.minSize=this.element.maxSize=new a.Ba(i,r),this._contentWidget.setPreference(2);else{let o=t.width-n.borderHeight-2*n.horizontalPadding;i>o&&(i=o);let s=this._completionModel?this._completionModel.stats.pLabelLen*n.typicalHalfwidthCharacterWidth:i,c=n.statusBarHeight+this._list.contentHeight+n.borderHeight,l=n.itemHeight+n.statusBarHeight,u=a.uo(this.editor.getDomNode()),d=this.editor.getScrolledVisiblePosition(this.editor.getPosition()),f=u.top+d.top+d.height,p=Math.min(t.height-f-n.verticalPadding,c),m=u.top+d.top-n.verticalPadding,h=Math.min(m,c),g=Math.min(Math.max(h,p)+n.borderHeight,c);r===this._cappedHeight?.capped&&(r=this._cappedHeight.wanted),r<l&&(r=l),r>g&&(r=g),r>p||this._forceRenderingAbove&&m>150?(this._contentWidget.setPreference(1),this.element.enableSashes(!0,!0,!1,!1),g=h):(this._contentWidget.setPreference(2),this.element.enableSashes(!1,!0,!0,!1),g=p),this.element.preferredSize=new a.Ba(s,n.defaultSize.height),this.element.maxSize=new a.Ba(o,g),this.element.minSize=new a.Ba(220,l),this._cappedHeight=r===c?{wanted:this._cappedHeight?.wanted??e.height,capped:r}:void 0}this._resize(i,r)}_resize(e,t){let{width:n,height:r}=this.element.maxSize;e=Math.min(n,e),t=Math.min(r,t);let{statusBarHeight:i}=this.getLayoutInfo();this._list.layout(t-i,e),this._listElement.style.height=`${t-i}px`,this.element.layout(t,e),this._contentWidget.layout(),this._positionDetails()}_positionDetails(){this._isDetailsVisible()&&this._details.placeAtAnchor(this.element.domNode,this._contentWidget.getPosition()?.preference[0]===2)}getLayoutInfo(){let e=this.editor.getOption(45),t=a.s(this.editor.getOption(109)||e.lineHeight,8,1e3),n=!this.editor.getOption(107).showStatusBar||this._state===2||this._state===1?0:t,r=this._details.widget.borderWidth,i=2*r;return{itemHeight:t,statusBarHeight:n,borderWidth:r,borderHeight:i,typicalHalfwidthCharacterWidth:e.typicalHalfwidthCharacterWidth,verticalPadding:22,horizontalPadding:14,defaultSize:new a.Ba(430,n+12*t+i)}}_isDetailsVisible(){return this._storageService.getBoolean(`expandSuggestionDocs`,0,!1)}_setDetailsVisible(e){this._storageService.store(`expandSuggestionDocs`,e,0,0)}forceRenderingAbove(){this._forceRenderingAbove||(this._forceRenderingAbove=!0,this._layout(this._persistedSize.restore()))}stopForceRenderingAbove(){this._forceRenderingAbove=!1}};Rp.LOADING_MESSAGE=a.Td(`suggestWidget.loading`,`Loading...`),Rp.NO_SUGGESTIONS_MESSAGE=a.Td(`suggestWidget.noSuggestions`,`No suggestions.`),Rp=Mp([Np(1,o.O),Np(2,a.Ea),Np(3,a.ga),Np(4,a.fc)],Rp);var zp=class{constructor(e,t){this._widget=e,this._editor=t,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._preferenceLocked=!1,this._added=!1,this._hidden=!1}dispose(){this._added&&(this._added=!1,this._editor.removeContentWidget(this))}getId(){return`editor.widget.suggestWidget`}getDomNode(){return this._widget.element.domNode}show(){this._hidden=!1,this._added||(this._added=!0,this._editor.addContentWidget(this))}hide(){this._hidden||(this._hidden=!0,this.layout())}layout(){this._editor.layoutContentWidget(this)}getPosition(){return this._hidden||!this._position||!this._preference?null:{position:this._position,preference:[this._preference]}}beforeRender(){let{height:e,width:t}=this._widget.element.size,{borderWidth:n,horizontalPadding:r}=this._widget.getLayoutInfo();return new a.Ba(t+2*n+r,e+2*n)}afterRender(e){this._widget._afterRender(e)}setPreference(e){this._preferenceLocked||(this._preference=e)}lockPreference(){this._preferenceLocked=!0}unlockPreference(){this._preferenceLocked=!1}setPosition(e){this._position=e}},Bp=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Vp=function(e,t){return function(n,r){t(n,r,e)}},Hp=class{constructor(e,t){if(this._model=e,this._position=t,e.getLineMaxColumn(t.lineNumber)!==t.column){let n=e.getOffsetAt(t),r=e.getPositionAt(n+1);this._marker=e.deltaDecorations([],[{range:a.Ol.fromPositions(t,r),options:{description:`suggest-line-suffix`,stickiness:1}}])}}dispose(){this._marker&&!this._model.isDisposed()&&this._model.deltaDecorations(this._marker,[])}delta(e){if(this._model.isDisposed()||this._position.lineNumber!==e.lineNumber)return 0;if(this._marker){let t=this._model.getDecorationRange(this._marker[0]);return this._model.getOffsetAt(t.getStartPosition())-this._model.getOffsetAt(e)}else return this._model.getLineMaxColumn(e.lineNumber)-e.column}},K=class e{constructor(e,t,n,r,i,o,s){this._memoryService=t,this._commandService=n,this._contextKeyService=r,this._instantiationService=i,this._logService=o,this._telemetryService=s,this._lineSuffix=new a.$l,this._toDispose=new a.Zl,this._selectors=new Up(e=>e.priority),this._telemetryGate=0,this.editor=e,this.model=i.createInstance(Of,this.editor);let c=L.InsertMode.bindTo(r);c.set(e.getOption(107).insertMode),this.model.onDidTrigger(()=>c.set(e.getOption(107).insertMode)),this.widget=this._toDispose.add(new a.hs(()=>{let e=this._instantiationService.createInstance(Rp,this.editor);this._toDispose.add(e),this._toDispose.add(e.onDidSelect(e=>this._insertSuggestion(e,0),this));let t=new hf(this.editor,e,e=>this._insertSuggestion(e,2));this._toDispose.add(t),this._toDispose.add(this.model.onDidSuggest(e=>{e.completionModel.items.length===0&&t.reset()}));let n=L.MakesTextEdit.bindTo(this._contextKeyService),r=L.HasInsertAndReplaceRange.bindTo(this._contextKeyService),i=L.CanResolve.bindTo(this._contextKeyService);return this._toDispose.add(a.au(()=>{n.reset(),r.reset(),i.reset()})),this._toDispose.add(e.onDidFocus(({item:e})=>{let t=this.editor.getPosition(),o=e.editStart.column,s=t.column,c=!0;this.editor.getOption(1)===`smart`&&this.model.state===2&&!e.completion.additionalTextEdits&&!(e.completion.insertTextRules&4)&&s-o===e.completion.insertText.length&&(c=this.editor.getModel().getValueInRange({startLineNumber:t.lineNumber,startColumn:o,endLineNumber:t.lineNumber,endColumn:s})!==e.completion.insertText),n.set(c),r.set(!a.kl.equals(e.editInsertEnd,e.editReplaceEnd)),i.set(!!e.provider.resolveCompletionItem||!!e.completion.documentation||e.completion.detail!==e.completion.label)})),this._toDispose.add(e.onDetailsKeyDown(e=>{if(e.toKeybinding().equals(new a.Ko(!0,!1,!1,!1,33))||a.bd&&e.toKeybinding().equals(new a.Ko(!1,!1,!1,!0,33))){e.stopPropagation();return}e.toKeybinding().isModifierKey()||this.editor.focus()})),e})),this._overtypingCapturer=this._toDispose.add(new a.hs(()=>this._toDispose.add(new kf(this.editor,this.model)))),this._alternatives=this._toDispose.add(new a.hs(()=>this._toDispose.add(new mf(this.editor,this._contextKeyService)))),this._toDispose.add(i.createInstance(df,e)),this._toDispose.add(this.model.onDidTrigger(e=>{this.widget.value.showTriggered(e.auto,e.shy?250:50),this._lineSuffix.value=new Hp(this.editor.getModel(),e.position)})),this._toDispose.add(this.model.onDidSuggest(e=>{if(e.shy)return;let t=-1;if(!e.noSelect){for(let n of this._selectors.itemsOrderedByPriorityDesc)if(t=n.select(this.editor.getModel(),this.editor.getPosition(),e.completionModel.items),t!==-1)break;t===-1&&(t=this._memoryService.select(this.editor.getModel(),this.editor.getPosition(),e.completionModel.items))}this.widget.value.showSuggestions(e.completionModel,t,e.isFrozen,e.auto)})),this._toDispose.add(this.model.onDidCancel(e=>{e.retrigger||this.widget.value.hideWidget()})),this._toDispose.add(this.editor.onDidBlurEditorWidget(()=>{this.model.cancel(),this.model.clear()}));let l=L.AcceptSuggestionsOnEnter.bindTo(r),u=()=>{let e=this.editor.getOption(1);l.set(e===`on`||e===`smart`)};this._toDispose.add(this.editor.onDidChangeConfiguration(()=>u())),u()}static get(t){return t.getContribution(e.ID)}dispose(){this._alternatives.dispose(),this._toDispose.dispose(),this.widget.dispose(),this.model.dispose(),this._lineSuffix.dispose()}_insertSuggestion(e,t){if(!e||!e.item){this._alternatives.value.reset(),this.model.cancel(),this.model.clear();return}if(!this.editor.hasModel())return;let n=z.get(this.editor);if(!n)return;let r=this.editor.getModel(),i=r.getAlternativeVersionId(),{item:s}=e,c=[],l=new a.Vl;t&1||this.editor.pushUndoStop();let u=this.getOverwriteInfo(s,!!(t&8));if(this._memoryService.memorize(r,this.editor.getPosition(),s),Array.isArray(s.completion.additionalTextEdits)){let e=o.pn.capture(this.editor);this.editor.executeEdits(`suggestController.additionalTextEdits.sync`,s.completion.additionalTextEdits.map(e=>o.jt.replaceMove(a.Ol.lift(e.range),e.text))),e.restoreRelativeVerticalPositionOfCursor(this.editor)}else if(!s.isResolved){let e=new a.Yl(!0),n,i=r.onDidChangeContent(e=>{if(e.isFlush){l.cancel(),i.dispose();return}for(let t of e.changes){let e=a.Ol.getEndPosition(t.range);(!n||a.kl.isBefore(e,n))&&(n=e)}}),u=t;t|=2;let d=!1,f=this.editor.onWillType(()=>{f.dispose(),d=!0,u&2||this.editor.pushUndoStop()});c.push(s.resolve(l.token).then(()=>{if(!s.completion.additionalTextEdits||l.token.isCancellationRequested||n&&s.completion.additionalTextEdits.some(e=>a.kl.isBefore(n,a.Ol.getStartPosition(e.range))))return!1;d&&this.editor.pushUndoStop();let e=o.pn.capture(this.editor);return this.editor.executeEdits(`suggestController.additionalTextEdits.async`,s.completion.additionalTextEdits.map(e=>o.jt.replaceMove(a.Ol.lift(e.range),e.text))),e.restoreRelativeVerticalPositionOfCursor(this.editor),(d||!(u&2))&&this.editor.pushUndoStop(),!0}).then(t=>{this._logService.trace(`[suggest] async resolving of edits DONE (ms, applied?)`,e.elapsed(),t),i.dispose(),f.dispose()}))}let{insertText:d}=s.completion;s.completion.insertTextRules&4||(d=Ta.escape(d)),n.insert(d,{overwriteBefore:u.overwriteBefore,overwriteAfter:u.overwriteAfter,undoStopBefore:!1,undoStopAfter:!1,adjustWhitespace:!(s.completion.insertTextRules&1),clipboardText:e.model.clipboardText,overtypingCapturer:this._overtypingCapturer.value}),t&2||this.editor.pushUndoStop(),s.completion.command?s.completion.command.id===Wp.id?this.model.trigger({auto:!0,shy:!1,noSelect:!1},!0):(c.push(this._commandService.executeCommand(s.completion.command.id,...s.completion.command.arguments?[...s.completion.command.arguments]:[]).catch(a.fu)),this.model.cancel()):this.model.cancel(),t&4&&this._alternatives.value.set(e,e=>{for(l.cancel();r.canUndo();){i!==r.getAlternativeVersionId()&&r.undo(),this._insertSuggestion(e,3|(t&8?8:0));break}}),this._alertCompletionItem(s),Promise.all(c).finally(()=>{this._reportSuggestionAcceptedTelemetry(s,r,e),this.model.clear(),l.dispose()})}_reportSuggestionAcceptedTelemetry(e,t,n){if(this._telemetryGate++%100!=0)return;let r=e.extensionId?e.extensionId.value:(n.item.provider._debugDisplayName??`unknown`).split(`(`,1)[0].toLowerCase();this._telemetryService.publicLog2(`suggest.acceptedSuggestion`,{providerId:r,kind:e.completion.kind,basenameHash:a.us(a.x(t.uri)).toString(16),languageId:t.getLanguageId(),fileExtension:a.T(t.uri)})}getOverwriteInfo(e,t){a.Cu(this.editor.hasModel());let n=this.editor.getOption(107).insertMode===`replace`;t&&(n=!n);let r=e.position.column-e.editStart.column,i=(n?e.editReplaceEnd.column:e.editInsertEnd.column)-e.position.column,o=this.editor.getPosition().column-e.position.column,s=this._lineSuffix.value?this._lineSuffix.value.delta(this.editor.getPosition()):0;return{overwriteBefore:r+o,overwriteAfter:i+s}}_alertCompletionItem(e){a.$u(e.completion.additionalTextEdits)&&o.Zn(a.Td(`aria.alert.snippet`,`Accepting '{0}' made {1} additional edits`,e.textLabel,e.completion.additionalTextEdits.length))}triggerSuggest(e,t,n,r){this.editor.hasModel()&&(this.model.trigger({auto:t??!1,shy:!1,noSelect:r??!1},!1,e,void 0,n),this.editor.revealPosition(this.editor.getPosition(),0),this.editor.focus())}triggerSuggestAndAcceptBest(e){if(!this.editor.hasModel())return;let t=this.editor.getPosition(),n=()=>{t.equals(this.editor.getPosition())&&this._commandService.executeCommand(e.fallback)},r=e=>{if(e.completion.insertTextRules&4||e.completion.additionalTextEdits)return!0;let t=this.editor.getPosition(),n=e.editStart.column,r=t.column;return r-n===e.completion.insertText.length?this.editor.getModel().getValueInRange({startLineNumber:t.lineNumber,startColumn:n,endLineNumber:t.lineNumber,endColumn:r})!==e.completion.insertText:!0};a.Wl.once(this.model.onDidTrigger)(e=>{let t=[];a.Wl.any(this.model.onDidTrigger,this.model.onDidCancel)(()=>{a.nu(t),n()},void 0,t),this.model.onDidSuggest(({completionModel:e})=>{if(a.nu(t),e.items.length===0){n();return}let i=this._memoryService.select(this.editor.getModel(),this.editor.getPosition(),e.items),o=e.items[i];if(!r(o)){n();return}this.editor.pushUndoStop(),this._insertSuggestion({index:i,item:o,model:e},7)},void 0,t)}),this.model.trigger({auto:!1,shy:!0,noSelect:!1}),this.editor.revealPosition(t,0),this.editor.focus()}acceptSelectedSuggestion(e,t){let n=this.widget.value.getFocusedItem(),r=0;e&&(r|=4),t&&(r|=8),this._insertSuggestion(n,r)}acceptNextSuggestion(){this._alternatives.value.next()}acceptPrevSuggestion(){this._alternatives.value.prev()}cancelSuggestWidget(){this.model.cancel(),this.model.clear(),this.widget.value.hideWidget()}selectNextSuggestion(){this.widget.value.selectNext()}selectNextPageSuggestion(){this.widget.value.selectNextPage()}selectLastSuggestion(){this.widget.value.selectLast()}selectPrevSuggestion(){this.widget.value.selectPrevious()}selectPrevPageSuggestion(){this.widget.value.selectPreviousPage()}selectFirstSuggestion(){this.widget.value.selectFirst()}toggleSuggestionDetails(){this.widget.value.toggleDetails()}toggleExplainMode(){this.widget.value.toggleExplainMode()}toggleSuggestionFocus(){this.widget.value.toggleDetailsFocus()}resetWidgetSize(){this.widget.value.resetPersistedSize()}forceRenderingAbove(){this.widget.value.forceRenderingAbove()}stopForceRenderingAbove(){this.widget.isInitialized&&this.widget.value.stopForceRenderingAbove()}registerSelector(e){return this._selectors.register(e)}};K.ID=`editor.contrib.suggestController`,K=Bp([Vp(1,cf),Vp(2,a.Ma),Vp(3,a.Ea),Vp(4,a.fc),Vp(5,a.$o),Vp(6,a.aa)],K);var Up=class{constructor(e){this.prioritySelector=e,this._items=[]}register(e){if(this._items.indexOf(e)!==-1)throw Error(`Value is already registered`);return this._items.push(e),this._items.sort((e,t)=>this.prioritySelector(t)-this.prioritySelector(e)),{dispose:()=>{let t=this._items.indexOf(e);t>=0&&this._items.splice(t,1)}}}get itemsOrderedByPriorityDesc(){return this._items}},Wp=class e extends a.Gi{constructor(){super({id:e.id,label:a.Td(`suggest.trigger.label`,`Trigger Suggest`),alias:`Trigger Suggest`,precondition:a.Ta.and(o.kn.writable,o.kn.hasCompletionItemProvider),kbOpts:{kbExpr:o.kn.textInputFocus,primary:2058,secondary:[2087],mac:{primary:266,secondary:[521,2087]},weight:100}})}run(e,t,n){let r=K.get(t);if(!r)return;let i,a;n&&typeof n==`object`&&(n.auto===!0&&(i=!0),n.noSelection===!0&&(a=!0)),r.triggerSuggest(void 0,i,void 0,a)}};Wp.id=`editor.action.triggerSuggest`,a.ta(K.ID,K),a.$i(Wp);var q=190,J=a.Ki.bindToContribution(K.get);a.ea(new J({id:`acceptSelectedSuggestion`,precondition:a.Ta.and(L.Visible,L.HasFocusedSuggestion),handler(e){e.acceptSelectedSuggestion(!0,!1)},kbOpts:[{primary:2,kbExpr:a.Ta.and(L.Visible,o.kn.textInputFocus),weight:q},{primary:3,kbExpr:a.Ta.and(L.Visible,o.kn.textInputFocus,L.AcceptSuggestionsOnEnter,L.MakesTextEdit),weight:q}],menuOpts:[{menuId:Ha,title:a.Td(`accept.insert`,`Insert`),group:`left`,order:1,when:L.HasInsertAndReplaceRange.toNegated()},{menuId:Ha,title:a.Td(`accept.insert`,`Insert`),group:`left`,order:1,when:a.Ta.and(L.HasInsertAndReplaceRange,L.InsertMode.isEqualTo(`insert`))},{menuId:Ha,title:a.Td(`accept.replace`,`Replace`),group:`left`,order:1,when:a.Ta.and(L.HasInsertAndReplaceRange,L.InsertMode.isEqualTo(`replace`))}]})),a.ea(new J({id:`acceptAlternativeSelectedSuggestion`,precondition:a.Ta.and(L.Visible,o.kn.textInputFocus,L.HasFocusedSuggestion),kbOpts:{weight:q,kbExpr:o.kn.textInputFocus,primary:1027,secondary:[1026]},handler(e){e.acceptSelectedSuggestion(!1,!0)},menuOpts:[{menuId:Ha,group:`left`,order:2,when:a.Ta.and(L.HasInsertAndReplaceRange,L.InsertMode.isEqualTo(`insert`)),title:a.Td(`accept.replace`,`Replace`)},{menuId:Ha,group:`left`,order:2,when:a.Ta.and(L.HasInsertAndReplaceRange,L.InsertMode.isEqualTo(`replace`)),title:a.Td(`accept.insert`,`Insert`)}]})),a.ja.registerCommandAlias(`acceptSelectedSuggestionOnEnter`,`acceptSelectedSuggestion`),a.ea(new J({id:`hideSuggestWidget`,precondition:L.Visible,handler:e=>e.cancelSuggestWidget(),kbOpts:{weight:q,kbExpr:o.kn.textInputFocus,primary:9,secondary:[1033]}})),a.ea(new J({id:`selectNextSuggestion`,precondition:a.Ta.and(L.Visible,L.MultipleSuggestions),handler:e=>e.selectNextSuggestion(),kbOpts:{weight:q,kbExpr:o.kn.textInputFocus,primary:18,secondary:[2066],mac:{primary:18,secondary:[2066,300]}}})),a.ea(new J({id:`selectNextPageSuggestion`,precondition:a.Ta.and(L.Visible,L.MultipleSuggestions),handler:e=>e.selectNextPageSuggestion(),kbOpts:{weight:q,kbExpr:o.kn.textInputFocus,primary:12,secondary:[2060]}})),a.ea(new J({id:`selectLastSuggestion`,precondition:a.Ta.and(L.Visible,L.MultipleSuggestions),handler:e=>e.selectLastSuggestion()})),a.ea(new J({id:`selectPrevSuggestion`,precondition:a.Ta.and(L.Visible,L.MultipleSuggestions),handler:e=>e.selectPrevSuggestion(),kbOpts:{weight:q,kbExpr:o.kn.textInputFocus,primary:16,secondary:[2064],mac:{primary:16,secondary:[2064,302]}}})),a.ea(new J({id:`selectPrevPageSuggestion`,precondition:a.Ta.and(L.Visible,L.MultipleSuggestions),handler:e=>e.selectPrevPageSuggestion(),kbOpts:{weight:q,kbExpr:o.kn.textInputFocus,primary:11,secondary:[2059]}})),a.ea(new J({id:`selectFirstSuggestion`,precondition:a.Ta.and(L.Visible,L.MultipleSuggestions),handler:e=>e.selectFirstSuggestion()})),a.ea(new J({id:`toggleSuggestionDetails`,precondition:L.Visible,handler:e=>e.toggleSuggestionDetails(),kbOpts:{weight:q,kbExpr:o.kn.textInputFocus,primary:2058,secondary:[2087],mac:{primary:266,secondary:[2087]}},menuOpts:[{menuId:Ha,group:`right`,order:1,when:a.Ta.and(L.DetailsVisible,L.CanResolve),title:a.Td(`detail.more`,`show less`)},{menuId:Ha,group:`right`,order:1,when:a.Ta.and(L.DetailsVisible.toNegated(),L.CanResolve),title:a.Td(`detail.less`,`show more`)}]})),a.ea(new J({id:`toggleExplainMode`,precondition:L.Visible,handler:e=>e.toggleExplainMode(),kbOpts:{weight:100,primary:2133}})),a.ea(new J({id:`toggleSuggestionFocus`,precondition:L.Visible,handler:e=>e.toggleSuggestionFocus(),kbOpts:{weight:q,kbExpr:o.kn.textInputFocus,primary:2570,mac:{primary:778}}})),a.ea(new J({id:`insertBestCompletion`,precondition:a.Ta.and(o.kn.textInputFocus,a.Ta.equals(`config.editor.tabCompletion`,`on`),df.AtEnd,L.Visible.toNegated(),mf.OtherSuggestions.toNegated(),z.InSnippetMode.toNegated()),handler:(e,t)=>{e.triggerSuggestAndAcceptBest(a.Mu(t)?Object.assign({fallback:`tab`},t):{fallback:`tab`})},kbOpts:{weight:q,primary:2}})),a.ea(new J({id:`insertNextSuggestion`,precondition:a.Ta.and(o.kn.textInputFocus,a.Ta.equals(`config.editor.tabCompletion`,`on`),mf.OtherSuggestions,L.Visible.toNegated(),z.InSnippetMode.toNegated()),handler:e=>e.acceptNextSuggestion(),kbOpts:{weight:q,kbExpr:o.kn.textInputFocus,primary:2}})),a.ea(new J({id:`insertPrevSuggestion`,precondition:a.Ta.and(o.kn.textInputFocus,a.Ta.equals(`config.editor.tabCompletion`,`on`),mf.OtherSuggestions,L.Visible.toNegated(),z.InSnippetMode.toNegated()),handler:e=>e.acceptPrevSuggestion(),kbOpts:{weight:q,kbExpr:o.kn.textInputFocus,primary:1026}})),a.$i(class extends a.Gi{constructor(){super({id:`editor.action.resetSuggestSize`,label:a.Td(`suggest.reset.label`,`Reset Suggest Widget Size`),alias:`Reset Suggest Widget Size`,precondition:void 0})}run(e,t){var n;(n=K.get(t))==null||n.resetWidgetSize()}});var Gp=class extends a.Xl{constructor(e,t){super(),this.editor=e,this.suggestControllerPreselector=t,this.isSuggestWidgetVisible=!1,this.isShiftKeyPressed=!1,this._isActive=!1,this._currentSuggestItemInfo=void 0,this.onDidChangeEmitter=new a.Ul,this.onDidChange=this.onDidChangeEmitter.event,this.setInactiveDelayed=this._register(new a.ys(()=>{this.isSuggestWidgetVisible||this._isActive&&(this._isActive=!1,this.onDidChangeEmitter.fire())},100)),this._register(e.onKeyDown(e=>{e.shiftKey&&!this.isShiftKeyPressed&&(this.isShiftKeyPressed=!0,this.update(this._isActive))})),this._register(e.onKeyUp(e=>{e.shiftKey&&this.isShiftKeyPressed&&(this.isShiftKeyPressed=!1,this.update(this._isActive))}));let n=K.get(this.editor);if(n){this._register(n.registerSelector({priority:100,select:(e,t,r)=>{let i=this.editor.getModel(),o=Pd(i,this.suggestControllerPreselector());if(!o)return-1;let s=a.kl.lift(t),c=a.Ju(r.map((e,t)=>{let r=Pd(i,Jp(n,s,e,this.isShiftKeyPressed)?.normalizedInlineCompletion);if(r)return{index:t,valid:Kp(o.range,r.range)&&o.insertText.startsWith(r.insertText),prefixLength:r.insertText.length,suggestItem:e}}).filter(e=>e&&e.valid),a.Hu(e=>e.prefixLength,a.ed));return c?c.index:-1}}));let e=!1,t=()=>{e||(e=!0,this._register(n.widget.value.onDidShow(()=>{this.isSuggestWidgetVisible=!0,this.update(!0)})),this._register(n.widget.value.onDidHide(()=>{this.isSuggestWidgetVisible=!1,this.setInactiveDelayed.schedule(),this.update(this._isActive)})),this._register(n.widget.value.onDidFocus(()=>{this.isSuggestWidgetVisible=!0,this.update(!0)})))};this._register(a.Wl.once(n.model.onDidTrigger)(e=>{t()}))}this.update(this._isActive)}get state(){if(this._isActive)return{selectedItem:this._currentSuggestItemInfo}}update(e){let t=this.getSuggestItemInfo(),n=!1;qp(this._currentSuggestItemInfo,t)||(this._currentSuggestItemInfo=t,n=!0),this._isActive!==e&&(this._isActive=e,n=!0),n&&this.onDidChangeEmitter.fire()}getSuggestItemInfo(){let e=K.get(this.editor);if(!e||!this.isSuggestWidgetVisible)return;let t=e.widget.value.getFocusedItem();if(t)return Jp(e,this.editor.getPosition(),t.item,this.isShiftKeyPressed)}stopForceRenderingAbove(){let e=K.get(this.editor);e&&e.stopForceRenderingAbove()}forceRenderingAbove(){let e=K.get(this.editor);e&&e.forceRenderingAbove()}};function Kp(e,t){return t.startLineNumber===e.startLineNumber&&t.startColumn===e.startColumn&&(t.endLineNumber<e.endLineNumber||t.endLineNumber===e.endLineNumber&&t.endColumn<=e.endColumn)}function qp(e,t){return e===t?!0:!e||!t?!1:e.completionItemKind===t.completionItemKind&&e.isSnippetText===t.isSnippetText&&Fd(e.normalizedInlineCompletion,t.normalizedInlineCompletion)}function Jp(e,t,n,r){if(Array.isArray(n.completion.additionalTextEdits)&&n.completion.additionalTextEdits.length>0)return{completionItemKind:n.completion.kind,isSnippetText:!1,normalizedInlineCompletion:{range:a.Ol.fromPositions(t,t),insertText:``,filterText:``,snippetInfo:void 0,additionalTextEdits:[]}};let{insertText:i}=n.completion,o=!1;if(n.completion.insertTextRules&4){let n=new Ta().parse(i),r=e.editor.getModel();if(n.children.length>100)return;tc.adjustWhitespace(r,t,n,!0,!0),i=n.toString(),o=!0}let s=e.getOverwriteInfo(n,r);return{isSnippetText:o,completionItemKind:n.completion.kind,normalizedInlineCompletion:{insertText:i,filterText:i,range:a.Ol.fromPositions(t.delta(0,-s.overwriteBefore),t.delta(0,Math.max(s.overwriteAfter,0))),snippetInfo:void 0,additionalTextEdits:[]}}}var Yp=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Xp=function(e,t){return function(n,r){t(n,r,e)}},Zp=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Qp=class extends Nd{constructor(e,t,n){super(e),this.cache=t,this.languageFeaturesService=n,this.suggestionInlineCompletionSource=this._register(new Gp(this.editor,()=>(this.cache.value?.completions[0])?.toLiveInlineCompletion())),this.updateOperation=this._register(new a.$l),this.updateCacheSoon=this._register(new a.ys(()=>this.updateCache(),50)),this.minReservedLineCount=0,this._register(this.suggestionInlineCompletionSource.onDidChange(()=>{if(!this.editor.hasModel())return;this.updateCacheSoon.schedule(),this.suggestionInlineCompletionSource.state||(this.minReservedLineCount=0);let e=this.ghostText;e&&(this.minReservedLineCount=Math.max(this.minReservedLineCount,$p(e.parts.map(e=>e.lines.length-1)))),this.minReservedLineCount>=1?this.suggestionInlineCompletionSource.forceRenderingAbove():this.suggestionInlineCompletionSource.stopForceRenderingAbove(),this.onDidChangeEmitter.fire()})),this._register(this.cache.onDidChange(()=>{this.onDidChangeEmitter.fire()})),this._register(this.editor.onDidChangeCursorPosition(e=>{this.minReservedLineCount=0,this.updateCacheSoon.schedule(),this.onDidChangeEmitter.fire()})),this._register(a.au(()=>this.suggestionInlineCompletionSource.stopForceRenderingAbove()))}get isActive(){return this.suggestionInlineCompletionSource.state!==void 0}isSuggestionPreviewEnabled(){return this.editor.getOption(107).preview}updateCache(){return Zp(this,void 0,void 0,function*(){let e=this.suggestionInlineCompletionSource.state;if(!e||!e.selectedItem)return;let t={text:e.selectedItem.normalizedInlineCompletion.insertText,range:e.selectedItem.normalizedInlineCompletion.range,isSnippetText:e.selectedItem.isSnippetText,completionKind:e.selectedItem.completionItemKind},n=this.editor.getPosition();if(e.selectedItem.isSnippetText||e.selectedItem.completionItemKind===27||e.selectedItem.completionItemKind===20||e.selectedItem.completionItemKind===23){this.cache.clear();return}let r=a.Cs(e=>Zp(this,void 0,void 0,function*(){let r;try{r=yield Zd(this.languageFeaturesService.inlineCompletionsProvider,n,this.editor.getModel(),{triggerKind:a._l.Automatic,selectedSuggestionInfo:t},e)}catch(e){a.fu(e);return}if(e.isCancellationRequested){r.dispose();return}this.cache.setValue(this.editor,r,a._l.Automatic),this.onDidChangeEmitter.fire()})),i=new Jd(r,a._l.Automatic);this.updateOperation.value=i,yield r,this.updateOperation.value===i&&this.updateOperation.clear()})}get ghostText(){let e=this.isSuggestionPreviewEnabled(),t=this.editor.getModel(),n=Pd(t,(this.cache.value?.completions[0])?.toLiveInlineCompletion()),r=this.suggestionInlineCompletionSource.state,i=Pd(t,r?.selectedItem?.normalizedInlineCompletion),a=n&&i&&n.insertText.startsWith(i.insertText)&&n.range.equalsRange(i.range);if(!e&&!a)return;let o=a?n:i||n,s=a?o.insertText.length-i.insertText.length:0;return this.toGhostText(o,s)}toGhostText(e,t){let n=this.editor.getOptions().get(107).previewMode;return e?Id(e,this.editor.getModel(),n,this.editor.getPosition(),t)||new Ad(e.range.endLineNumber,[],this.minReservedLineCount):void 0}};Qp=Yp([Xp(2,a.Zo)],Qp);function $p(e){return e.reduce((e,t)=>e+t,0)}var em=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},tm=function(e,t){return function(n,r){t(n,r,e)}},nm=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},rm=class extends a.Xl{constructor(){super(...arguments),this.onDidChangeEmitter=new a.Ul,this.onDidChange=this.onDidChangeEmitter.event,this.hasCachedGhostText=!1,this.currentModelRef=this._register(new a.$l)}get targetModel(){return this.currentModelRef.value?.object}setTargetModel(e){this.currentModelRef.value?.object!==e&&(this.currentModelRef.clear(),this.currentModelRef.value=e?Td(e,e.onDidChange(()=>{this.hasCachedGhostText=!1,this.onDidChangeEmitter.fire()})):void 0,this.hasCachedGhostText=!1,this.onDidChangeEmitter.fire())}get ghostText(){return this.hasCachedGhostText||=(this.cachedGhostText=this.currentModelRef.value?.object?.ghostText,!0),this.cachedGhostText}setExpanded(e){var t;(t=this.targetModel)==null||t.setExpanded(e)}get minReservedLineCount(){return this.targetModel?this.targetModel.minReservedLineCount:0}},im=class extends rm{constructor(e,t){super(),this.editor=e,this.instantiationService=t,this.sharedCache=this._register(new am),this.suggestWidgetAdapterModel=this._register(this.instantiationService.createInstance(Qp,this.editor,this.sharedCache)),this.inlineCompletionsModel=this._register(this.instantiationService.createInstance(Kd,this.editor,this.sharedCache)),this._register(this.suggestWidgetAdapterModel.onDidChange(()=>{this.updateModel()})),this.updateModel()}get activeInlineCompletionsModel(){if(this.targetModel===this.inlineCompletionsModel)return this.inlineCompletionsModel}updateModel(){this.setTargetModel(this.suggestWidgetAdapterModel.isActive?this.suggestWidgetAdapterModel:this.inlineCompletionsModel),this.inlineCompletionsModel.setActive(this.targetModel===this.inlineCompletionsModel)}shouldShowHoverAt(e){let t=this.activeInlineCompletionsModel?.ghostText;return t?t.parts.some(n=>e.containsPosition(new a.kl(t.lineNumber,n.column))):!1}triggerInlineCompletion(){var e;(e=this.activeInlineCompletionsModel)==null||e.trigger(a._l.Explicit)}commitInlineCompletion(){var e;(e=this.activeInlineCompletionsModel)==null||e.commitCurrentSuggestion()}hideInlineCompletion(){var e;(e=this.activeInlineCompletionsModel)==null||e.hide()}showNextInlineCompletion(){var e;(e=this.activeInlineCompletionsModel)==null||e.showNext()}showPreviousInlineCompletion(){var e;(e=this.activeInlineCompletionsModel)==null||e.showPrevious()}hasMultipleInlineCompletions(){return nm(this,void 0,void 0,function*(){let e=yield this.activeInlineCompletionsModel?.hasMultipleInlineCompletions();return e===void 0?!1:e})}};im=em([tm(1,a.fc)],im);var am=class extends a.Xl{constructor(){super(...arguments),this.onDidChangeEmitter=new a.Ul,this.onDidChange=this.onDidChangeEmitter.event,this.cache=this._register(new a.$l)}get value(){return this.cache.value}setValue(e,t,n){this.cache.value=new Yd(t,e,()=>this.onDidChangeEmitter.fire(),n)}clearAndLeak(){return this.cache.clearAndLeak()}clear(){this.cache.clear()}},om=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},sm=function(e,t){return function(n,r){t(n,r,e)}},cm=window.trustedTypes?.createPolicy(`editorGhostText`,{createHTML:e=>e}),lm=class extends a.Xl{constructor(e,t,n,r){super(),this.editor=e,this.model=t,this.instantiationService=n,this.languageService=r,this.disposed=!1,this.partsWidget=this._register(this.instantiationService.createInstance(dm,this.editor)),this.additionalLinesWidget=this._register(new fm(this.editor,this.languageService.languageIdCodec)),this.viewMoreContentWidget=void 0,this.replacementDecoration=this._register(new um(this.editor)),this._register(this.editor.onDidChangeConfiguration(e=>{(e.hasChanged(29)||e.hasChanged(106)||e.hasChanged(89)||e.hasChanged(84)||e.hasChanged(46)||e.hasChanged(45)||e.hasChanged(60))&&this.update()})),this._register(a.au(()=>{var e;this.disposed=!0,this.update(),(e=this.viewMoreContentWidget)==null||e.dispose(),this.viewMoreContentWidget=void 0})),this._register(t.onDidChange(()=>{this.update()})),this.update()}shouldShowHoverAtViewZone(e){return this.additionalLinesWidget.viewZoneId===e}update(){var e;let t=this.model.ghostText;if(!this.editor.hasModel()||!t||this.disposed){this.partsWidget.clear(),this.additionalLinesWidget.clear(),this.replacementDecoration.clear();return}let n=[],r=[];function i(e,t){if(r.length>0){let n=r[r.length-1];t&&n.decorations.push(new o.tr(n.content.length+1,n.content.length+1+e[0].length,t,0)),n.content+=e[0],e=e.slice(1)}for(let n of e)r.push({content:n,decorations:t?[new o.tr(1,n.length+1,t,0)]:[]})}t instanceof Md?this.replacementDecoration.setDecorations([{range:new a.Ol(t.lineNumber,t.columnStart,t.lineNumber,t.columnStart+t.length),options:{inlineClassName:`inline-completion-text-to-replace`,description:`GhostTextReplacement`}}]):this.replacementDecoration.setDecorations([]);let s=this.editor.getModel().getLineContent(t.lineNumber),c,l=0;for(let e of t.parts){let t=e.lines;c===void 0?(n.push({column:e.column,text:t[0],preview:e.preview}),t=t.slice(1)):i([s.substring(l,e.column-1)],void 0),t.length>0&&(i(t,`ghost-text`),c===void 0&&e.column<=s.length&&(c=e.column)),l=e.column-1}c!==void 0&&i([s.substring(l)],void 0),this.partsWidget.setParts(t.lineNumber,n,c===void 0?void 0:{column:c,length:s.length+1-c}),this.additionalLinesWidget.updateLines(t.lineNumber,r,t.additionalReservedLineCount),(e=this.viewMoreContentWidget)==null||e.dispose(),this.viewMoreContentWidget=void 0}renderViewMoreLines(e,t,n){let r=this.editor.getOption(45),i=document.createElement(`div`);i.className=`suggest-preview-additional-widget`,o.or(i,r);let s=document.createElement(`span`);s.className=`content-spacer`,s.append(t),i.append(s);let c=document.createElement(`span`);c.className=`content-newline suggest-preview-text`,c.append(`⏎ `),i.append(c);let l=new a.Zl,u=document.createElement(`div`);return u.className=`button suggest-preview-text`,u.append(`+${n} lines…`),l.add(a.Ja(u,`mousedown`,e=>{var t;(t=this.model)==null||t.setExpanded(!0),e.preventDefault(),this.editor.focus()})),i.append(u),new mm(this.editor,e,i,l)}};lm=om([sm(2,a.fc),sm(3,a.Js)],lm);var um=class{constructor(e){this.editor=e,this.decorationIds=[]}setDecorations(e){this.editor.changeDecorations(t=>{this.decorationIds=t.deltaDecorations(this.decorationIds,e)})}clear(){this.setDecorations([])}dispose(){this.clear()}},dm=class{constructor(e){this.editor=e,this.decorationIds=[]}dispose(){this.clear()}clear(){this.editor.changeDecorations(e=>{this.decorationIds=e.deltaDecorations(this.decorationIds,[])})}setParts(e,t,n){if(!this.editor.getModel())return;let r=[];n&&r.push({range:a.Ol.fromPositions(new a.kl(e,n.column),new a.kl(e,n.column+n.length)),options:{inlineClassName:`ghost-text-hidden`,description:`ghost-text-hidden`}}),this.editor.changeDecorations(n=>{this.decorationIds=n.deltaDecorations(this.decorationIds,t.map(t=>({range:a.Ol.fromPositions(new a.kl(e,t.column)),options:{description:`ghost-text`,after:{content:t.text,inlineClassName:t.preview?`ghost-text-decoration-preview`:`ghost-text-decoration`,cursorStops:a.ac.Left},showIfCollapsed:!0}})).concat(r))})}},fm=class{constructor(e,t){this.editor=e,this.languageIdCodec=t,this._viewZoneId=void 0}get viewZoneId(){return this._viewZoneId}dispose(){this.clear()}clear(){this.editor.changeViewZones(e=>{this._viewZoneId&&=(e.removeZone(this._viewZoneId),void 0)})}updateLines(e,t,n){let r=this.editor.getModel();if(!r)return;let{tabSize:i}=r.getOptions();this.editor.changeViewZones(r=>{this._viewZoneId&&=(r.removeZone(this._viewZoneId),void 0);let a=Math.max(t.length,n);if(a>0){let n=document.createElement(`div`);pm(n,i,t,this.editor.getOptions(),this.languageIdCodec),this._viewZoneId=r.addZone({afterLineNumber:e,heightInLines:a,domNode:n,afterColumnAffinity:1})}})}};function pm(e,t,n,r,i){let s=r.get(29),c=r.get(106),l=r.get(84),u=r.get(46),d=r.get(45),f=r.get(60),p=a.ec(1e4);p.appendASCIIString(`<div class="suggest-preview-text">`);for(let e=0,r=n.length;e<r;e++){let r=n[e],m=r.content;p.appendASCIIString(`<div class="view-line`),p.appendASCIIString(`" style="top:`),p.appendASCIIString(String(e*f)),p.appendASCIIString(`px;width:1000000px;">`);let h=a.Uc(m),g=a.jc(m),_=a.Yo.createEmpty(m,i);o.er(new o.$n(d.isMonospace&&!s,d.canUseHalfwidthRightwardsArrow,m,!1,h,g,0,_,r.decorations,t,0,d.spaceWidth,d.middotWidth,d.wsmiddotWidth,c,`none`,l,u!==o.ur.OFF,null),p),p.appendASCIIString(`</div>`)}p.appendASCIIString(`</div>`),o.or(e,d);let m=p.build();e.innerHTML=cm?cm.createHTML(m):m}var mm=class extends a.Xl{constructor(e,t,n,r){super(),this.editor=e,this.position=t,this.domNode=n,this.allowEditorOverflow=!1,this.suppressMouseDown=!1,this._register(r),this._register(a.au(()=>{this.editor.removeContentWidget(this)})),this.editor.addContentWidget(this)}getId(){return`editor.widget.viewMoreLinesWidget`}getDomNode(){return this.domNode}getPosition(){return{position:this.position,preference:[0]}}};a.ba((e,t)=>{let n=e.getColor(a.jt);n&&(t.addRule(`.monaco-editor .ghost-text-decoration { color: ${n.toString()} !important; }`),t.addRule(`.monaco-editor .ghost-text-decoration-preview { color: ${n.toString()} !important; }`),t.addRule(`.monaco-editor .suggest-preview-text .ghost-text { color: ${n.toString()} !important; }`));let r=e.getColor(a.kt);r&&(t.addRule(`.monaco-editor .ghost-text-decoration { background-color: ${r.toString()}; }`),t.addRule(`.monaco-editor .ghost-text-decoration-preview { background-color: ${r.toString()}; }`),t.addRule(`.monaco-editor .suggest-preview-text .ghost-text { background-color: ${r.toString()}; }`));let i=e.getColor(a.At);i&&(t.addRule(`.monaco-editor .suggest-preview-text .ghost-text { border: 1px solid ${i}; }`),t.addRule(`.monaco-editor .ghost-text-decoration { border: 1px solid ${i}; }`),t.addRule(`.monaco-editor .ghost-text-decoration-preview { border: 1px solid ${i}; }`))});var hm=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},gm=function(e,t){return function(n,r){t(n,r,e)}},_m=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Y=class e extends a.Xl{constructor(e,t){super(),this.editor=e,this.instantiationService=t,this.triggeredExplicitly=!1,this.activeController=this._register(new a.$l),this.activeModelDidChangeEmitter=this._register(new a.Ul),this._register(this.editor.onDidChangeModel(()=>{this.updateModelController()})),this._register(this.editor.onDidChangeConfiguration(e=>{e.hasChanged(107)&&this.updateModelController(),e.hasChanged(56)&&this.updateModelController()})),this.updateModelController()}static get(t){return t.getContribution(e.ID)}get activeModel(){return this.activeController.value?.model}updateModelController(){let e=this.editor.getOption(107),t=this.editor.getOption(56);this.activeController.value=void 0,this.activeController.value=this.editor.hasModel()&&(e.preview||t.enabled||this.triggeredExplicitly)?this.instantiationService.createInstance(ym,this.editor):void 0,this.activeModelDidChangeEmitter.fire()}shouldShowHoverAt(e){return this.activeModel?.shouldShowHoverAt(e)||!1}shouldShowHoverAtViewZone(e){return(this.activeController.value?.widget)?.shouldShowHoverAtViewZone(e)||!1}trigger(){var e;this.triggeredExplicitly=!0,this.activeController.value||this.updateModelController(),(e=this.activeModel)==null||e.triggerInlineCompletion()}commit(){var e;(e=this.activeModel)==null||e.commitInlineCompletion()}hide(){var e;(e=this.activeModel)==null||e.hideInlineCompletion()}showNextInlineCompletion(){var e;(e=this.activeModel)==null||e.showNextInlineCompletion()}showPreviousInlineCompletion(){var e;(e=this.activeModel)==null||e.showPreviousInlineCompletion()}hasMultipleInlineCompletions(){return _m(this,void 0,void 0,function*(){let e=yield this.activeModel?.hasMultipleInlineCompletions();return e===void 0?!1:e})}};Y.inlineSuggestionVisible=new a.Da(`inlineSuggestionVisible`,!1,a.Td(`inlineSuggestionVisible`,`Whether an inline suggestion is visible`)),Y.inlineSuggestionHasIndentation=new a.Da(`inlineSuggestionHasIndentation`,!1,a.Td(`inlineSuggestionHasIndentation`,`Whether the inline suggestion starts with whitespace`)),Y.inlineSuggestionHasIndentationLessThanTabSize=new a.Da(`inlineSuggestionHasIndentationLessThanTabSize`,!0,a.Td(`inlineSuggestionHasIndentationLessThanTabSize`,`Whether the inline suggestion starts with whitespace that is less than what would be inserted by tab`)),Y.ID=`editor.contrib.ghostTextController`,Y=hm([gm(1,a.fc)],Y);var vm=class{constructor(e){this.contextKeyService=e,this.inlineCompletionVisible=Y.inlineSuggestionVisible.bindTo(this.contextKeyService),this.inlineCompletionSuggestsIndentation=Y.inlineSuggestionHasIndentation.bindTo(this.contextKeyService),this.inlineCompletionSuggestsIndentationLessThanTabSize=Y.inlineSuggestionHasIndentationLessThanTabSize.bindTo(this.contextKeyService)}},ym=class extends a.Xl{constructor(e,t,n){super(),this.editor=e,this.instantiationService=t,this.contextKeyService=n,this.contextKeys=new vm(this.contextKeyService),this.model=this._register(this.instantiationService.createInstance(im,this.editor)),this.widget=this._register(this.instantiationService.createInstance(lm,this.editor,this.model)),this._register(a.au(()=>{this.contextKeys.inlineCompletionVisible.set(!1),this.contextKeys.inlineCompletionSuggestsIndentation.set(!1),this.contextKeys.inlineCompletionSuggestsIndentationLessThanTabSize.set(!0)})),this._register(this.model.onDidChange(()=>{this.updateContextKeys()})),this.updateContextKeys()}updateContextKeys(){this.contextKeys.inlineCompletionVisible.set(this.model.activeInlineCompletionsModel?.ghostText!==void 0);let e=!1,t=!0,n=this.model.inlineCompletionsModel.ghostText;if(this.model.activeInlineCompletionsModel&&n&&n.parts.length>0){let{column:r,lines:i}=n.parts[0],o=i[0];if(r<=this.editor.getModel().getLineIndentColumn(n.lineNumber)){let n=a.Lc(o);n===-1&&(n=o.length-1),e=n>0;let r=this.editor.getModel().getOptions().tabSize;t=a.It.visibleColumnFromColumn(o,n+1,r)<r}}this.contextKeys.inlineCompletionSuggestsIndentation.set(e),this.contextKeys.inlineCompletionSuggestsIndentationLessThanTabSize.set(t)}};ym=hm([gm(1,a.fc),gm(2,a.Ea)],ym);var bm=class e extends a.Gi{constructor(){super({id:e.ID,label:a.Td(`action.inlineSuggest.showNext`,`Show Next Inline Suggestion`),alias:`Show Next Inline Suggestion`,precondition:a.Ta.and(o.kn.writable,Y.inlineSuggestionVisible),kbOpts:{weight:100,primary:601}})}run(e,t){return _m(this,void 0,void 0,function*(){let e=Y.get(t);e&&(e.showNextInlineCompletion(),t.focus())})}};bm.ID=`editor.action.inlineSuggest.showNext`;var xm=class e extends a.Gi{constructor(){super({id:e.ID,label:a.Td(`action.inlineSuggest.showPrevious`,`Show Previous Inline Suggestion`),alias:`Show Previous Inline Suggestion`,precondition:a.Ta.and(o.kn.writable,Y.inlineSuggestionVisible),kbOpts:{weight:100,primary:599}})}run(e,t){return _m(this,void 0,void 0,function*(){let e=Y.get(t);e&&(e.showPreviousInlineCompletion(),t.focus())})}};xm.ID=`editor.action.inlineSuggest.showPrevious`;var Sm=class extends a.Gi{constructor(){super({id:`editor.action.inlineSuggest.trigger`,label:a.Td(`action.inlineSuggest.trigger`,`Trigger Inline Suggestion`),alias:`Trigger Inline Suggestion`,precondition:o.kn.writable})}run(e,t){return _m(this,void 0,void 0,function*(){let e=Y.get(t);e&&e.trigger()})}},Cm=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},wm=function(e,t){return function(n,r){t(n,r,e)}},Tm=class{constructor(e,t,n){this.owner=e,this.range=t,this.controller=n}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}hasMultipleSuggestions(){return this.controller.hasMultipleInlineCompletions()}get commands(){return(this.controller.activeModel?.activeInlineCompletionsModel)?.completionSession.value?.commands||[]}},Em=class{constructor(e,t,n,r,i,a,o){this._editor=e,this._commandService=t,this._menuService=n,this._contextKeyService=r,this._languageService=i,this._openerService=a,this.accessibilityService=o,this.hoverOrdinal=3}suggestHoverAnchor(e){let t=Y.get(this._editor);if(!t)return null;let n=e.target;if(n.type===8){let e=n.detail;if(t.shouldShowHoverAtViewZone(e.viewZoneId))return new pa(1e3,this,a.Ol.fromPositions(e.positionBefore||e.position,e.positionBefore||e.position))}return n.type===7&&t.shouldShowHoverAt(n.range)||n.type===6&&n.detail.mightBeForeignElement&&t.shouldShowHoverAt(n.range)?new pa(1e3,this,n.range):null}computeSync(e,t){let n=Y.get(this._editor);return n&&n.shouldShowHoverAt(e.range)?[new Tm(this,e.range,n)]:[]}renderHoverParts(e,t){let n=new a.Zl,r=t[0];this.accessibilityService.isScreenReaderOptimized()&&this.renderScreenReaderText(e,r,n);let i=n.add(this._menuService.createMenu(a.ca.InlineCompletionsActions,this._contextKeyService)),o=e.statusBar.addAction({label:a.Td(`showNextInlineSuggestion`,`Next`),commandId:bm.ID,run:()=>this._commandService.executeCommand(bm.ID)}),s=e.statusBar.addAction({label:a.Td(`showPreviousInlineSuggestion`,`Previous`),commandId:xm.ID,run:()=>this._commandService.executeCommand(xm.ID)});e.statusBar.addAction({label:a.Td(`acceptInlineSuggestion`,`Accept`),commandId:wd,run:()=>this._commandService.executeCommand(wd)});let c=[o,s];for(let e of c)e.setEnabled(!1);r.hasMultipleSuggestions().then(e=>{for(let t of c)t.setEnabled(e)});for(let t of r.commands)e.statusBar.addAction({label:t.title,commandId:t.id,run:()=>this._commandService.executeCommand(t.id,...t.arguments||[])});for(let[t,n]of i.getActions())for(let t of n)t instanceof a.la&&e.statusBar.addAction({label:t.label,commandId:t.item.id,run:()=>this._commandService.executeCommand(t.item.id)});return n}renderScreenReaderText(e,t,n){let r=a.za,i=r(`div.hover-row.markdown-hover`),s=a.Xa(i,r(`div.hover-contents`)),c=n.add(new bo({editor:this._editor},this._languageService,this._openerService)),l=t=>{n.add(c.onDidRenderAsync(()=>{s.className=`hover-contents code-hover-contents`,e.onContentsChanged()}));let r=a.Td(`inlineSuggestionFollows`,`Suggestion:`),i=n.add(c.render(new o.Jt().appendText(r).appendCodeblock(`text`,t)));s.replaceChildren(i.element)},u=t.controller.activeModel?.inlineCompletionsModel?.ghostText;if(u){let e=this._editor.getModel().getLineContent(u.lineNumber);l(u.renderForScreenReader(e))}e.fragment.appendChild(i)}};Em=Cm([wm(1,a.Ma),wm(2,a.sa),wm(3,a.Ea),wm(4,a.Js),wm(5,a.n),wm(6,o.Jn)],Em),a.ta(Y.ID,Y),a.$i(Sm),a.$i(bm),a.$i(xm),ma.register(Em);var Dm=a.Ki.bindToContribution(Y.get),Om=new Dm({id:wd,precondition:Y.inlineSuggestionVisible,handler(e){e.commit(),e.editor.focus()}});a.ea(Om),a.oa.registerKeybindingRule({primary:2,weight:200,id:Om.id,when:a.Ta.and(Om.precondition,o.kn.tabMovesFocus.toNegated(),Y.inlineSuggestionHasIndentationLessThanTabSize)}),a.ea(new Dm({id:`editor.action.inlineSuggest.hide`,precondition:Y.inlineSuggestionVisible,kbOpts:{weight:100,primary:9},handler(e){e.hide()}}));function X(e,t){let n=0;for(let r=0;r<e.length;r++)e.charAt(r)===` `?n+=t:n++;return n}function km(e,t,n){e=e<0?0:e;let r=``;if(!n){let n=Math.floor(e/t);e%=t;for(let e=0;e<n;e++)r+=` `}for(let t=0;t<e;t++)r+=` `;return r}var Am=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},jm=function(e,t){return function(n,r){t(n,r,e)}};function Mm(e,t,n,r,i){if(e.getLineCount()===1&&e.getLineMaxColumn(1)===1)return[];let s=t.getLanguageConfiguration(e.getLanguageId()).indentationRules;if(!s)return[];for(r=Math.min(r,e.getLineCount());n<=r&&s.unIndentedLinePattern;){let t=e.getLineContent(n);if(!s.unIndentedLinePattern.test(t))break;n++}if(n>r-1)return[];let{tabSize:c,indentSize:l,insertSpaces:u}=e.getOptions(),d=(e,t)=>(t||=1,o.Nn.shiftIndent(e,e.length+t,c,l,u)),f=(e,t)=>(t||=1,o.Nn.unshiftIndent(e,e.length+t,c,l,u)),p=[],m,h=e.getLineContent(n),g=h;if(i!=null){m=i;let e=a.Bc(h);g=m+h.substring(e.length),s.decreaseIndentPattern&&s.decreaseIndentPattern.test(g)&&(m=f(m),g=m+h.substring(e.length)),h!==g&&p.push(o.jt.replaceMove(new a.Dl(n,1,n,e.length+1),a.Y(m,l,u)))}else m=a.Bc(h);let _=m;s.increaseIndentPattern&&s.increaseIndentPattern.test(g)?(_=d(_),m=d(m)):s.indentNextLinePattern&&s.indentNextLinePattern.test(g)&&(_=d(_)),n++;for(let t=n;t<=r;t++){let n=e.getLineContent(t),r=a.Bc(n),i=_+n.substring(r.length);s.decreaseIndentPattern&&s.decreaseIndentPattern.test(i)&&(_=f(_),m=f(m)),r!==_&&p.push(o.jt.replaceMove(new a.Dl(t,1,t,r.length+1),a.Y(_,l,u))),!(s.unIndentedLinePattern&&s.unIndentedLinePattern.test(n))&&(s.increaseIndentPattern&&s.increaseIndentPattern.test(i)?(m=d(m),_=m):_=s.indentNextLinePattern&&s.indentNextLinePattern.test(i)?d(_):m)}return p}var Nm=class e extends a.Gi{constructor(){super({id:e.ID,label:a.Td(`indentationToSpaces`,`Convert Indentation to Spaces`),alias:`Convert Indentation to Spaces`,precondition:o.kn.writable})}run(e,t){let n=t.getModel();if(!n)return;let r=n.getOptions(),i=t.getSelection();if(!i)return;let a=new Wm(i,r.tabSize);t.pushUndoStop(),t.executeCommands(this.id,[a]),t.pushUndoStop(),n.updateOptions({insertSpaces:!0})}};Nm.ID=`editor.action.indentationToSpaces`;var Pm=class e extends a.Gi{constructor(){super({id:e.ID,label:a.Td(`indentationToTabs`,`Convert Indentation to Tabs`),alias:`Convert Indentation to Tabs`,precondition:o.kn.writable})}run(e,t){let n=t.getModel();if(!n)return;let r=n.getOptions(),i=t.getSelection();if(!i)return;let a=new Gm(i,r.tabSize);t.pushUndoStop(),t.executeCommands(this.id,[a]),t.pushUndoStop(),n.updateOptions({insertSpaces:!1})}};Pm.ID=`editor.action.indentationToTabs`;var Fm=class extends a.Gi{constructor(e,t){super(t),this.insertSpaces=e}run(e,t){let n=e.get(o.P),r=e.get(a.As),i=t.getModel();if(!i)return;let s=r.getCreationOptions(i.getLanguageId(),i.uri,i.isForSimpleWidget),c=[1,2,3,4,5,6,7,8].map(e=>({id:e.toString(),label:e.toString(),description:e===s.tabSize?a.Td(`configuredTabSize`,`Configured Tab Size`):void 0})),l=Math.min(i.getOptions().tabSize-1,7);setTimeout(()=>{n.pick(c,{placeHolder:a.Td({key:`selectTabWidth`,comment:[`Tab corresponds to the tab key`]},`Select Tab Size for Current File`),activeItem:c[l]}).then(e=>{e&&i&&!i.isDisposed()&&i.updateOptions({tabSize:parseInt(e.label,10),insertSpaces:this.insertSpaces})})},50)}},Im=class e extends Fm{constructor(){super(!1,{id:e.ID,label:a.Td(`indentUsingTabs`,`Indent Using Tabs`),alias:`Indent Using Tabs`,precondition:void 0})}};Im.ID=`editor.action.indentUsingTabs`;var Lm=class e extends Fm{constructor(){super(!0,{id:e.ID,label:a.Td(`indentUsingSpaces`,`Indent Using Spaces`),alias:`Indent Using Spaces`,precondition:void 0})}};Lm.ID=`editor.action.indentUsingSpaces`;var Rm=class e extends a.Gi{constructor(){super({id:e.ID,label:a.Td(`detectIndentation`,`Detect Indentation from Content`),alias:`Detect Indentation from Content`,precondition:void 0})}run(e,t){let n=e.get(a.As),r=t.getModel();if(!r)return;let i=n.getCreationOptions(r.getLanguageId(),r.uri,r.isForSimpleWidget);r.detectIndentation(i.insertSpaces,i.tabSize)}};Rm.ID=`editor.action.detectIndentation`;var zm=class extends a.Gi{constructor(){super({id:`editor.action.reindentlines`,label:a.Td(`editor.reindentlines`,`Reindent Lines`),alias:`Reindent Lines`,precondition:o.kn.writable})}run(e,t){let n=e.get(a.Ps),r=t.getModel();if(!r)return;let i=Mm(r,n,1,r.getLineCount());i.length>0&&(t.pushUndoStop(),t.executeEdits(this.id,i),t.pushUndoStop())}},Bm=class extends a.Gi{constructor(){super({id:`editor.action.reindentselectedlines`,label:a.Td(`editor.reindentselectedlines`,`Reindent Selected Lines`),alias:`Reindent Selected Lines`,precondition:o.kn.writable})}run(e,t){let n=e.get(a.Ps),r=t.getModel();if(!r)return;let i=t.getSelections();if(i===null)return;let o=[];for(let e of i){let t=e.startLineNumber,i=e.endLineNumber;if(t!==i&&e.endColumn===1&&i--,t===1){if(t===i)continue}else t--;let a=Mm(r,n,t,i);o.push(...a)}o.length>0&&(t.pushUndoStop(),t.executeEdits(this.id,o),t.pushUndoStop())}},Vm=class{constructor(e,t){this._initialSelection=t,this._edits=[],this._selectionId=null;for(let t of e)t.range&&typeof t.text==`string`&&this._edits.push(t)}getEditOperations(e,t){for(let e of this._edits)t.addEditOperation(a.Ol.lift(e.range),e.text);let n=!1;Array.isArray(this._edits)&&this._edits.length===1&&this._initialSelection.isEmpty()&&(this._edits[0].range.startColumn===this._initialSelection.endColumn&&this._edits[0].range.startLineNumber===this._initialSelection.endLineNumber?(n=!0,this._selectionId=t.trackSelection(this._initialSelection,!0)):this._edits[0].range.endColumn===this._initialSelection.startColumn&&this._edits[0].range.endLineNumber===this._initialSelection.startLineNumber&&(n=!0,this._selectionId=t.trackSelection(this._initialSelection,!1))),n||(this._selectionId=t.trackSelection(this._initialSelection))}computeCursorState(e,t){return t.getTrackedSelection(this._selectionId)}},Hm=class{constructor(e,t){this.editor=e,this._languageConfigurationService=t,this.callOnDispose=new a.Zl,this.callOnModel=new a.Zl,this.callOnDispose.add(e.onDidChangeConfiguration(()=>this.update())),this.callOnDispose.add(e.onDidChangeModel(()=>this.update())),this.callOnDispose.add(e.onDidChangeModelLanguage(()=>this.update()))}update(){this.callOnModel.clear(),!(this.editor.getOption(9)<4||this.editor.getOption(49))&&this.editor.hasModel()&&this.callOnModel.add(this.editor.onDidPaste(({range:e})=>{this.trigger(e)}))}trigger(e){let t=this.editor.getSelections();if(t===null||t.length>1)return;let n=this.editor.getModel();if(!n||!n.tokenization.isCheapToTokenize(e.getStartPosition().lineNumber))return;let r=this.editor.getOption(9),{tabSize:i,indentSize:s,insertSpaces:c}=n.getOptions(),l=[],u={shiftIndent:e=>o.Nn.shiftIndent(e,e.length+1,i,s,c),unshiftIndent:e=>o.Nn.unshiftIndent(e,e.length+1,i,s,c)},d=e.startLineNumber;for(;d<=e.endLineNumber;){if(this.shouldIgnoreLine(n,d)){d++;continue}break}if(d>e.endLineNumber)return;let f=n.getLineContent(d);if(!/\S/.test(f.substring(0,e.startColumn-1))){let e=o.jn(r,n,n.getLanguageId(),d,u,this._languageConfigurationService);if(e!==null){let t=a.Bc(f),r=X(e,i);if(r!==X(t,i)){let e=km(r,i,c);l.push({range:new a.Ol(d,1,d,t.length+1),text:e}),f=e+f.substr(t.length)}else{let e=o.Mn(n,d,this._languageConfigurationService);if(e===0||e===8)return}}}let p=d;for(;d<e.endLineNumber;){if(!/\S/.test(n.getLineContent(d+1))){d++;continue}break}if(d!==e.endLineNumber){let t=o.jn(r,{tokenization:{getLineTokens:e=>n.tokenization.getLineTokens(e),getLanguageId:()=>n.getLanguageId(),getLanguageIdAtPosition:(e,t)=>n.getLanguageIdAtPosition(e,t)},getLineContent:e=>e===p?f:n.getLineContent(e)},n.getLanguageId(),d+1,u,this._languageConfigurationService);if(t!==null){let r=X(t,i),o=X(a.Bc(n.getLineContent(d+1)),i);if(r!==o){let t=r-o;for(let r=d+1;r<=e.endLineNumber;r++){let e=n.getLineContent(r),o=a.Bc(e),s=km(X(o,i)+t,i,c);s!==o&&l.push({range:new a.Ol(r,1,r,o.length+1),text:s})}}}}if(l.length>0){this.editor.pushUndoStop();let e=new Vm(l,this.editor.getSelection());this.editor.executeCommand(`autoIndentOnPaste`,e),this.editor.pushUndoStop()}}shouldIgnoreLine(e,t){e.tokenization.forceTokenization(t);let n=e.getLineFirstNonWhitespaceColumn(t);if(n===0)return!0;let r=e.tokenization.getLineTokens(t);if(r.getCount()>0){let e=r.findTokenIndexAtOffset(n);if(e>=0&&r.getStandardTokenType(e)===1)return!0}return!1}dispose(){this.callOnDispose.dispose(),this.callOnModel.dispose()}};Hm.ID=`editor.contrib.autoIndentOnPaste`,Hm=Am([jm(1,a.Ps)],Hm);function Um(e,t,n,r){if(e.getLineCount()===1&&e.getLineMaxColumn(1)===1)return;let i=``;for(let e=0;e<n;e++)i+=` `;let o=new RegExp(i,`gi`);for(let n=1,s=e.getLineCount();n<=s;n++){let s=e.getLineFirstNonWhitespaceColumn(n);if(s===0&&(s=e.getLineMaxColumn(n)),s===1)continue;let c=new a.Ol(n,1,n,s),l=e.getValueInRange(c),u=r?l.replace(/\t/gi,i):l.replace(o,` `);t.addEditOperation(c,u)}}var Wm=class{constructor(e,t){this.selection=e,this.tabSize=t,this.selectionId=null}getEditOperations(e,t){this.selectionId=t.trackSelection(this.selection),Um(e,t,this.tabSize,!0)}computeCursorState(e,t){return t.getTrackedSelection(this.selectionId)}},Gm=class{constructor(e,t){this.selection=e,this.tabSize=t,this.selectionId=null}getEditOperations(e,t){this.selectionId=t.trackSelection(this.selection),Um(e,t,this.tabSize,!1)}computeCursorState(e,t){return t.getTrackedSelection(this.selectionId)}};a.ta(Hm.ID,Hm),a.$i(Nm),a.$i(Pm),a.$i(Im),a.$i(Lm),a.$i(Rm),a.$i(zm),a.$i(Bm);var Km=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},qm=class{constructor(e,t){this.range=e,this.direction=t}},Jm=class e{constructor(e,t,n){this.hint=e,this.anchor=t,this.provider=n,this._isResolved=!1}with(t){let n=new e(this.hint,t.anchor,this.provider);return n._isResolved=this._isResolved,n._currentResolve=this._currentResolve,n}resolve(e){return Km(this,void 0,void 0,function*(){if(typeof this.provider.resolveInlayHint==`function`){if(this._currentResolve)return yield this._currentResolve,e.isCancellationRequested?void 0:this.resolve(e);this._isResolved||(this._currentResolve=this._doResolve(e).finally(()=>this._currentResolve=void 0)),yield this._currentResolve}})}_doResolve(e){return Km(this,void 0,void 0,function*(){try{let t=yield Promise.resolve(this.provider.resolveInlayHint(this.hint,e));this.hint.tooltip=t?.tooltip??this.hint.tooltip,this.hint.label=t?.label??this.hint.label,this._isResolved=!0}catch(e){a.pu(e),this._isResolved=!1}})}},Ym=class e{constructor(t,n,r){this._disposables=new a.Zl,this.ranges=t,this.provider=new Set;let i=[];for(let[t,o]of n){this._disposables.add(t),this.provider.add(o);for(let n of t.hints){let t=r.validatePosition(n.position),s=`before`,c=e._getRangeAtPosition(r,t),l;c.getStartPosition().isBefore(t)?(l=a.Ol.fromPositions(c.getStartPosition(),t),s=`after`):(l=a.Ol.fromPositions(t,c.getEndPosition()),s=`before`),i.push(new Jm(n,new qm(l,s),o))}}this.items=i.sort((e,t)=>a.kl.compare(e.hint.position,t.hint.position))}static create(t,n,r,i){return Km(this,void 0,void 0,function*(){let o=[],s=t.ordered(n).reverse().map(e=>r.map(t=>Km(this,void 0,void 0,function*(){try{let r=yield e.provideInlayHints(n,t,i);r?.hints.length&&o.push([r,e])}catch(e){a.pu(e)}})));if(yield Promise.all(s.flat()),i.isCancellationRequested||n.isDisposed())throw new a.su;return new e(r,o,n)})}dispose(){this._disposables.dispose()}static _getRangeAtPosition(e,t){let n=t.lineNumber,r=e.getWordAtPosition(t);if(r)return new a.Ol(n,r.startColumn,n,r.endColumn);e.tokenization.tokenizeIfCheap(n);let i=e.tokenization.getLineTokens(n),o=t.column-1,s=i.findTokenIndexAtOffset(o),c=i.getStartOffset(s),l=i.getEndOffset(s);return l-c===1&&(c===o&&s>1?(c=i.getStartOffset(s-1),l=i.getEndOffset(s-1)):l===o&&s<i.getCount()-1&&(c=i.getStartOffset(s+1),l=i.getEndOffset(s+1))),new a.Ol(n,c+1,n,l+1)}};function Xm(e){return a.Al.from({scheme:a.Io.command,path:e.id,query:e.arguments&&encodeURIComponent(JSON.stringify(e.arguments))}).toString()}var Zm=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};function Qm(e,t,n,r){return Zm(this,void 0,void 0,function*(){let i=e.get(a.Ra),s=e.get(o.Bt),c=e.get(a.Ma),l=e.get(a.fc),u=e.get(o.vn);if(yield r.item.resolve(a.Bl.None),!r.part.location)return;let d=r.part.location,f=[],p=new Set(a.da.getMenuItems(a.ca.EditorContext).map(e=>a.pa(e)?e.command.id:``));for(let e of a.qi.getEditorActions())e instanceof Ji&&p.has(e.id)&&f.push(new a.Na(e.id,e.label,void 0,!0,()=>Zm(this,void 0,void 0,function*(){let n=yield i.createModelReference(d.uri);try{yield l.invokeFunction(e.run.bind(e),t,new qi(n.object.textEditorModel,a.Ol.getStartPosition(d.range)))}finally{n.dispose()}})));if(r.part.command){let{command:e}=r.part;f.push(new a.Ia),f.push(new a.Na(e.id,e.title,void 0,!0,()=>Zm(this,void 0,void 0,function*(){try{yield c.executeCommand(e.id,...e.arguments??[])}catch(e){u.notify({severity:o.yn.Error,source:r.item.provider.displayName,message:e})}})))}let m=t.getOption(116);s.showContextMenu({domForShadowRoot:m?t.getDomNode()??void 0:void 0,getAnchor:()=>{let e=a.uo(n);return{x:e.left,y:e.top+e.height+8}},getActions:()=>f,onHide:()=>{t.focus()},autoSelectFirstItem:!0})})}function $m(e,t,n,r){return Zm(this,void 0,void 0,function*(){let i=yield e.get(a.Ra).createModelReference(r.uri);yield n.invokeWithinContext(e=>Zm(this,void 0,void 0,function*(){let o=t.hasSideBySideModifier,s=e.get(a.Ea),c=M.inPeekEditor.getValue(s);return new Yi({openToSide:o,openInPeek:!o&&n.getOption(79)&&!c,muteMessage:!0},{alias:``,label:``,id:``,precondition:void 0}).run(e,n,{model:i.object.textEditorModel,position:a.Ol.getStartPosition(r.range)})})),i.dispose()})}var eh=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},th=function(e,t){return function(n,r){t(n,r,e)}},nh=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},rh=class e{constructor(){this._entries=new a.c(50)}get(t){let n=e._key(t);return this._entries.get(n)}set(t,n){let r=e._key(t);this._entries.set(r,n)}static _key(e){return`${e.uri.toString()}/${e.getVersionId()}`}},ih=a.mc(`IInlayHintsCache`);a.Ks(ih,rh,!0);var ah=class{constructor(e,t){this.item=e,this.index=t}get part(){let e=this.item.hint.label;return typeof e==`string`?{label:e}:e[this.index]}},oh=class{constructor(e,t){this.part=e,this.hasTriggerModifier=t}},sh=class e{constructor(e,t,n,r,i,o,s){this._editor=e,this._languageFeaturesService=t,this._inlayHintsCache=r,this._commandService=i,this._notificationService=o,this._instaService=s,this._disposables=new a.Zl,this._sessionDisposables=new a.Zl,this._decorationsMetadata=new Map,this._ruleFactory=new a.Rt(this._editor),this._activeRenderMode=0,this._debounceInfo=n.for(t.inlayHintsProvider,`InlayHint`,{min:25}),this._disposables.add(t.inlayHintsProvider.onDidChange(()=>this._update())),this._disposables.add(e.onDidChangeModel(()=>this._update())),this._disposables.add(e.onDidChangeModelLanguage(()=>this._update())),this._disposables.add(e.onDidChangeConfiguration(e=>{e.hasChanged(128)&&this._update()})),this._update()}static get(t){return t.getContribution(e.ID)??void 0}dispose(){this._sessionDisposables.dispose(),this._removeAllDecorations(),this._disposables.dispose()}_update(){this._sessionDisposables.clear(),this._removeAllDecorations();let e=this._editor.getOption(128);if(e.enabled===`off`)return;let t=this._editor.getModel();if(!t||!this._languageFeaturesService.inlayHintsProvider.has(t))return;let n=this._inlayHintsCache.get(t);n&&this._updateHintsDecorators([t.getFullModelRange()],n),this._sessionDisposables.add(a.au(()=>{t.isDisposed()||this._cacheHintsForFastRestore(t)}));let r,i=new Set,o=new a.ys(()=>nh(this,void 0,void 0,function*(){let e=Date.now();r?.dispose(!0),r=new a.Vl;let n=t.onWillDispose(()=>r?.cancel());try{let n=r.token,a=yield Ym.create(this._languageFeaturesService.inlayHintsProvider,t,this._getHintsRanges(),n);if(o.delay=this._debounceInfo.update(t,Date.now()-e),n.isCancellationRequested){a.dispose();return}for(let e of a.provider)typeof e.onDidChangeInlayHints==`function`&&!i.has(e)&&(i.add(e),this._sessionDisposables.add(e.onDidChangeInlayHints(()=>{o.isScheduled()||o.schedule()})));this._sessionDisposables.add(a),this._updateHintsDecorators(a.ranges,a.items),this._cacheHintsForFastRestore(t)}catch(e){a.fu(e)}finally{r.dispose(),n.dispose()}}),this._debounceInfo.get(t));if(this._sessionDisposables.add(o),this._sessionDisposables.add(a.au(()=>r?.dispose(!0))),o.schedule(0),this._sessionDisposables.add(this._editor.onDidScrollChange(e=>{(e.scrollTopChanged||!o.isScheduled())&&o.schedule()})),this._sessionDisposables.add(this._editor.onDidChangeModelContent(e=>{let t=Math.max(o.delay,1250);o.schedule(t)})),e.enabled===`on`)this._activeRenderMode=0;else{let t,n;e.enabled===`onUnlessPressed`?(t=0,n=1):(t=1,n=0),this._activeRenderMode=t,this._sessionDisposables.add(a.Wa.getInstance().event(e=>{if(!this._editor.hasModel())return;let r=e.altKey&&e.ctrlKey?n:t;if(r!==this._activeRenderMode){this._activeRenderMode=r;let e=this._editor.getModel(),t=this._copyInlayHintsWithCurrentAnchor(e);this._updateHintsDecorators([e.getFullModelRange()],t),o.schedule(0)}}))}this._sessionDisposables.add(this._installDblClickGesture(()=>o.schedule(0))),this._sessionDisposables.add(this._installLinkGesture()),this._sessionDisposables.add(this._installContextMenu())}_installLinkGesture(){let e=new a.Zl,t=e.add(new pr(this._editor)),n=new a.Zl;return e.add(n),e.add(t.onMouseMoveOrRelevantKeyDown(e=>{let[t]=e,r=this._getInlayHintLabelPart(t),i=this._editor.getModel();if(!r||!i){n.clear();return}let o=new a.Vl;n.add(a.au(()=>o.dispose(!0))),r.item.resolve(o.token),this._activeInlayHintPart=r.part.command||r.part.location?new oh(r,t.hasTriggerModifier):void 0;let s=r.item.hint.position.lineNumber,c=new a.Ol(s,1,s,i.getLineMaxColumn(s)),l=this._getInlineHintsForRange(c);this._updateHintsDecorators([c],l),n.add(a.au(()=>{this._activeInlayHintPart=void 0,this._updateHintsDecorators([c],l)}))})),e.add(t.onCancel(()=>n.clear())),e.add(t.onExecute(e=>nh(this,void 0,void 0,function*(){let t=this._getInlayHintLabelPart(e);if(t){let n=t.part;n.location?this._instaService.invokeFunction($m,e,this._editor,n.location):a.dl.is(n.command)&&(yield this._invokeCommand(n.command,t.item))}}))),e}_getInlineHintsForRange(e){let t=new Set;for(let n of this._decorationsMetadata.values())e.containsRange(n.item.anchor.range)&&t.add(n.item);return Array.from(t)}_installDblClickGesture(e){return this._editor.onMouseUp(t=>nh(this,void 0,void 0,function*(){if(t.event.detail!==2)return;let n=this._getInlayHintLabelPart(t);if(n&&(t.event.preventDefault(),yield n.item.resolve(a.Bl.None),a.$u(n.item.hint.textEdits))){let t=n.item.hint.textEdits.map(e=>o.jt.replace(a.Ol.lift(e.range),e.text));this._editor.executeEdits(`inlayHint.default`,t),e()}}))}_installContextMenu(){return this._editor.onContextMenu(e=>nh(this,void 0,void 0,function*(){if(!(e.event.target instanceof HTMLElement))return;let t=this._getInlayHintLabelPart(e);t&&(yield this._instaService.invokeFunction(Qm,this._editor,e.event.target,t))}))}_getInlayHintLabelPart(e){if(e.target.type!==6)return;let t=e.target.detail.injectedText?.options;if(t instanceof a.d&&t?.attachedData instanceof ah)return t.attachedData}_invokeCommand(e,t){return nh(this,void 0,void 0,function*(){try{yield this._commandService.executeCommand(e.id,...e.arguments??[])}catch(e){this._notificationService.notify({severity:o.yn.Error,source:t.provider.displayName,message:e})}})}_cacheHintsForFastRestore(e){let t=this._copyInlayHintsWithCurrentAnchor(e);this._inlayHintsCache.set(e,t)}_copyInlayHintsWithCurrentAnchor(e){let t=new Map;for(let[n,r]of this._decorationsMetadata){if(t.has(r.item))continue;let i=e.getDecorationRange(n);if(i){let e=new qm(i,r.item.anchor.direction),n=r.item.with({anchor:e});t.set(r.item,n)}}return Array.from(t.values())}_getHintsRanges(){let e=this._editor.getModel(),t=this._editor.getVisibleRangesPlusViewportAboveBelow(),n=[];for(let r of t.sort(a.Ol.compareRangesUsingStarts)){let t=e.validateRange(new a.Ol(r.startLineNumber-30,r.startColumn,r.endLineNumber+30,r.endColumn));n.length===0||!a.Ol.areIntersectingOrTouching(n[n.length-1],t)?n.push(t):n[n.length-1]=a.Ol.plusRange(n[n.length-1],t)}return n}_updateHintsDecorators(t,n){let r=[],i=(e,t,n,i,a)=>{let o={content:n,inlineClassNameAffectsLetterSpacing:!0,inlineClassName:t.className,cursorStops:i,attachedData:a};r.push({item:e,classNameRef:t,decoration:{range:e.anchor.range,options:{description:`InlayHint`,showIfCollapsed:e.anchor.range.isEmpty(),collapseOnReplaceEdit:!e.anchor.range.isEmpty(),stickiness:0,[e.anchor.direction]:this._activeRenderMode===0?o:void 0}}})},s=(e,t)=>{i(e,this._ruleFactory.createClassNameRef({width:`${c/3|0}px`,display:`inline-block`}),` `,t?a.ac.Right:a.ac.None)},{fontSize:c,fontFamily:l,padding:u,isUniform:d}=this._getLayoutInfo(),f=`--code-editorInlayHintsFontFamily`;this._editor.getContainerDomNode().style.setProperty(f,l);for(let t of n){t.hint.paddingLeft&&s(t,!1);let n=typeof t.hint.label==`string`?[{label:t.hint.label}]:t.hint.label;for(let e=0;e<n.length;e++){let r=n[e],s=e===0,l=e===n.length-1,p={fontSize:`${c}px`,fontFamily:`var(${f}), ${o.lr.fontFamily}`,verticalAlign:d?`baseline`:`middle`};a.$u(t.hint.textEdits)&&(p.cursor=`default`),this._fillInColors(p,t.hint),(r.command||r.location)&&this._activeInlayHintPart?.part.item===t&&this._activeInlayHintPart.part.index===e&&(p.textDecoration=`underline`,this._activeInlayHintPart.hasTriggerModifier&&(p.color=a.xa(a.hn),p.cursor=`pointer`)),u&&(s&&l?(p.padding=`1px ${Math.max(1,c/4)|0}px`,p.borderRadius=`${c/4|0}px`):s?(p.padding=`1px 0 1px ${Math.max(1,c/4)|0}px`,p.borderRadius=`${c/4|0}px 0 0 ${c/4|0}px`):l?(p.padding=`1px ${Math.max(1,c/4)|0}px 1px 0`,p.borderRadius=`0 ${c/4|0}px ${c/4|0}px 0`):p.padding=`1px 0 1px 0`),i(t,this._ruleFactory.createClassNameRef(p),ch(r.label),l&&!t.hint.paddingRight?a.ac.Right:a.ac.None,new ah(t,e))}if(t.hint.paddingRight&&s(t,!0),r.length>e._MAX_DECORATORS)break}let p=[];for(let e of t)for(let{id:t}of this._editor.getDecorationsInRange(e)??[]){let e=this._decorationsMetadata.get(t);e&&(p.push(t),e.classNameRef.dispose(),this._decorationsMetadata.delete(t))}this._editor.changeDecorations(e=>{let t=e.deltaDecorations(p,r.map(e=>e.decoration));for(let e=0;e<t.length;e++){let n=r[e];this._decorationsMetadata.set(t[e],n)}})}_fillInColors(e,t){t.kind===a.gl.Parameter?(e.backgroundColor=a.xa(a.Bn),e.color=a.xa(a.Vn)):t.kind===a.gl.Type?(e.backgroundColor=a.xa(a.Hn),e.color=a.xa(a.Un)):(e.backgroundColor=a.xa(a.Rn),e.color=a.xa(a.zn))}_getLayoutInfo(){let e=this._editor.getOption(128),t=e.padding,n=this._editor.getOption(47),r=this._editor.getOption(44),i=e.fontSize;(!i||i<5||i>n)&&(i=n);let a=e.fontFamily||r;return{fontSize:i,fontFamily:a,padding:t,isUniform:!t&&a===r&&i===n}}_removeAllDecorations(){this._editor.removeDecorations(Array.from(this._decorationsMetadata.keys()));for(let e of this._decorationsMetadata.values())e.classNameRef.dispose();this._decorationsMetadata.clear()}};sh.ID=`editor.contrib.InlayHints`,sh._MAX_DECORATORS=1500,sh=eh([th(1,a.Zo),th(2,a.t),th(3,ih),th(4,a.Ma),th(5,o.vn),th(6,a.fc)],sh);function ch(e){return e.replace(/[ \t]/g,`\xA0`)}a.ja.registerCommand(`_executeInlayHintProvider`,(e,...t)=>nh(void 0,void 0,void 0,function*(){let[n,r]=t;a.Cu(a.Al.isUri(n)),a.Cu(a.Ol.isIRange(r));let{inlayHintsProvider:i}=e.get(a.Zo),o=yield e.get(a.Ra).createModelReference(n);try{let e=yield Ym.create(i,o.object.textEditorModel,[a.Ol.lift(r)],a.Bl.None),t=e.items.map(e=>e.hint);return setTimeout(()=>e.dispose(),0),t}finally{o.dispose()}}));var lh=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},uh=function(e,t){return function(n,r){t(n,r,e)}},dh=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},fh=function(e){if(!Symbol.asyncIterator)throw TypeError(`Symbol.asyncIterator is not defined.`);var t=e[Symbol.asyncIterator],n;return t?t.call(e):(e=typeof __values==`function`?__values(e):e[Symbol.iterator](),n={},r(`next`),r(`throw`),r(`return`),n[Symbol.asyncIterator]=function(){return this},n);function r(t){n[t]=e[t]&&function(n){return new Promise(function(r,a){n=e[t](n),i(r,a,n.done,n.value)})}}function i(e,t,n,r){Promise.resolve(r).then(function(t){e({value:t,done:n})},t)}},ph=class extends pa{constructor(e,t){super(10,t,e.item.anchor.range),this.part=e}},mh=class extends Po{constructor(e,t,n,r,i,a){super(e,t,n,r,a),this._resolverService=i,this.hoverOrdinal=6}suggestHoverAnchor(e){if(!sh.get(this._editor)||e.target.type!==6)return null;let t=e.target.detail.injectedText?.options;return t instanceof a.d&&t.attachedData instanceof ah?new ph(t.attachedData,this):null}computeSync(){return[]}computeAsync(e,t,n){return e instanceof ph?new a.fs(t=>dh(this,void 0,void 0,function*(){var r,i;let{part:s}=e;if(yield s.item.resolve(n),n.isCancellationRequested)return;let c;typeof s.item.hint.tooltip==`string`?c=new o.Jt().appendText(s.item.hint.tooltip):s.item.hint.tooltip&&(c=s.item.hint.tooltip),c&&t.emitOne(new No(this,e.range,[c],0)),a.$u(s.item.hint.textEdits)&&t.emitOne(new No(this,e.range,[new o.Jt().appendText(a.Td(`hint.dbl`,`Double click to insert`))],10001));let l;if(typeof s.part.tooltip==`string`?l=new o.Jt().appendText(s.part.tooltip):s.part.tooltip&&(l=s.part.tooltip),l&&t.emitOne(new No(this,e.range,[l],1)),s.part.location||s.part.command){let n,r=this._editor.getOption(71)===`altKey`?a.bd?a.Td(`links.navigate.kb.meta.mac`,`cmd + click`):a.Td(`links.navigate.kb.meta`,`ctrl + click`):a.bd?a.Td(`links.navigate.kb.alt.mac`,`option + click`):a.Td(`links.navigate.kb.alt`,`alt + click`);s.part.location&&s.part.command?n=new o.Jt().appendText(a.Td(`hint.defAndCommand`,`Go to Definition ({0}), right click for more`,r)):s.part.location?n=new o.Jt().appendText(a.Td(`hint.def`,`Go to Definition ({0})`,r)):s.part.command&&(n=new o.Jt(`[${a.Td(`hint.cmd`,`Execute Command`)}](${Xm(s.part.command)} "${s.part.command.title}") (${r})`,{isTrusted:!0})),n&&t.emitOne(new No(this,e.range,[n],1e4))}let u=yield this._resolveInlayHintLabelPartHover(s,n);try{for(var d=fh(u),f;f=yield d.next(),!f.done;){let e=f.value;t.emitOne(e)}}catch(e){r={error:e}}finally{try{f&&!f.done&&(i=d.return)&&(yield i.call(d))}finally{if(r)throw r.error}}})):a.fs.EMPTY}_resolveInlayHintLabelPartHover(e,t){return dh(this,void 0,void 0,function*(){if(!e.part.location)return a.fs.EMPTY;let{uri:n,range:r}=e.part.location,i=yield this._resolverService.createModelReference(n);try{let n=i.object.textEditorModel;return this._languageFeaturesService.hoverProvider.has(n)?Do(this._languageFeaturesService.hoverProvider,n,new a.kl(r.startLineNumber,r.startColumn),t).filter(e=>!o.Xt(e.hover.contents)).map(t=>new No(this,e.item.anchor.range,t.hover.contents,2+t.ordinal)):a.fs.EMPTY}finally{i.dispose()}})}};mh=lh([uh(1,a.Js),uh(2,a.n),uh(3,a.Ys),uh(4,a.Ra),uh(5,a.Zo)],mh),a.ta(sh.ID,sh),ma.register(mh);var hh=class{constructor(e,t,n){this._editRange=e,this._originalSelection=t,this._text=n}getEditOperations(e,t){t.addTrackedEditOperation(this._editRange,this._text)}computeCursorState(e,t){let n=t.getInverseEditOperations()[0].range;return this._originalSelection.isEmpty()?new a.Dl(n.endLineNumber,Math.min(this._originalSelection.positionColumn,n.endColumn),n.endLineNumber,Math.min(this._originalSelection.positionColumn,n.endColumn)):new a.Dl(n.endLineNumber,n.endColumn-this._text.length,n.endLineNumber,n.endColumn)}},gh=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},_h=function(e,t){return function(n,r){t(n,r,e)}},vh=class e{constructor(e,t){this.editor=e,this.editorWorkerService=t,this.decorations=this.editor.createDecorationsCollection()}static get(t){return t.getContribution(e.ID)}dispose(){}run(t,n){this.currentRequest&&this.currentRequest.cancel();let r=this.editor.getSelection(),i=this.editor.getModel();if(!i||!r)return;let s=r;if(s.startLineNumber!==s.endLineNumber)return;let c=new o.w(this.editor,5),l=i.uri;return this.editorWorkerService.canNavigateValueSet(l)?(this.currentRequest=a.Cs(e=>this.editorWorkerService.navigateValueSet(l,s,n)),this.currentRequest.then(n=>{if(!n||!n.range||!n.value||!c.validate(this.editor))return;let r=a.Ol.lift(n.range),i=n.range,o=n.value.length-(s.endColumn-s.startColumn);i={startLineNumber:i.startLineNumber,startColumn:i.startColumn,endLineNumber:i.endLineNumber,endColumn:i.startColumn+n.value.length},o>1&&(s=new a.Dl(s.startLineNumber,s.startColumn,s.endLineNumber,s.endColumn+o-1));let l=new hh(r,s,n.value);this.editor.pushUndoStop(),this.editor.executeCommand(t,l),this.editor.pushUndoStop(),this.decorations.set([{range:i,options:e.DECORATION}]),this.decorationRemover&&this.decorationRemover.cancel(),this.decorationRemover=a.ks(350),this.decorationRemover.then(()=>this.decorations.clear()).catch(a.fu)}).catch(a.fu)):Promise.resolve(void 0)}};vh.ID=`editor.contrib.inPlaceReplaceController`,vh.DECORATION=a.f.register({description:`in-place-replace`,className:`valueSetReplacement`}),vh=gh([_h(1,o.Ht)],vh);var yh=class extends a.Gi{constructor(){super({id:`editor.action.inPlaceReplace.up`,label:a.Td(`InPlaceReplaceAction.previous.label`,`Replace with Previous Value`),alias:`Replace with Previous Value`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:3154,weight:100}})}run(e,t){let n=vh.get(t);return n?n.run(this.id,!0):Promise.resolve(void 0)}},bh=class extends a.Gi{constructor(){super({id:`editor.action.inPlaceReplace.down`,label:a.Td(`InPlaceReplaceAction.next.label`,`Replace with Next Value`),alias:`Replace with Next Value`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:3156,weight:100}})}run(e,t){let n=vh.get(t);return n?n.run(this.id,!1):Promise.resolve(void 0)}};a.ta(vh.ID,vh),a.$i(yh),a.$i(bh),a.ba((e,t)=>{let n=e.getColor(a.at);n&&t.addRule(`.monaco-editor.vs .valueSetReplacement { outline: solid 2px ${n}; }`)});var xh=class extends a.Gi{constructor(){super({id:`expandLineSelection`,label:a.Td(`expandLineSelection`,`Expand Line Selection`),alias:`Expand Line Selection`,precondition:void 0,kbOpts:{weight:0,kbExpr:o.kn.textInputFocus,primary:2090}})}run(e,t,n){if(n||={},!t.hasModel())return;let r=t._getViewModel();r.model.pushStackElement(),r.setCursorStates(n.source,3,o.Fn.expandLineSelection(r,r.getCursorStates())),r.revealPrimaryCursor(n.source,!0)}};a.$i(xh);var Sh=class{constructor(e,t){this._selection=e,this._cursors=t,this._selectionId=null}getEditOperations(e,t){let n=Ch(e,this._cursors);for(let e=0,r=n.length;e<r;e++){let r=n[e];t.addEditOperation(r.range,r.text)}this._selectionId=t.trackSelection(this._selection)}computeCursorState(e,t){return t.getTrackedSelection(this._selectionId)}};function Ch(e,t){t.sort((e,t)=>e.lineNumber===t.lineNumber?e.column-t.column:e.lineNumber-t.lineNumber);for(let e=t.length-2;e>=0;e--)t[e].lineNumber===t[e+1].lineNumber&&t.splice(e,1);let n=[],r=0,i=0,s=t.length;for(let c=1,l=e.getLineCount();c<=l;c++){let l=e.getLineContent(c),u=l.length+1,d=0;if(i<s&&t[i].lineNumber===c&&(d=t[i].column,i++,d===u)||l.length===0)continue;let f=a.Zc(l),p=0;if(f===-1)p=1;else if(f!==l.length-1)p=f+2;else continue;p=Math.max(d,p),n[r++]=o.jt.delete(new a.Ol(c,p,c,u))}return n}var wh=class{constructor(e,t,n){this._selection=e,this._isCopyingDown=t,this._noop=n||!1,this._selectionDirection=0,this._selectionId=null,this._startLineNumberDelta=0,this._endLineNumberDelta=0}getEditOperations(e,t){let n=this._selection;this._startLineNumberDelta=0,this._endLineNumberDelta=0,n.startLineNumber<n.endLineNumber&&n.endColumn===1&&(this._endLineNumberDelta=1,n=n.setEndPosition(n.endLineNumber-1,e.getLineMaxColumn(n.endLineNumber-1)));let r=[];for(let t=n.startLineNumber;t<=n.endLineNumber;t++)r.push(e.getLineContent(t));let i=r.join(`
139
+ `);i===``&&this._isCopyingDown&&(this._startLineNumberDelta++,this._endLineNumberDelta++),this._noop?t.addEditOperation(new a.Ol(n.endLineNumber,e.getLineMaxColumn(n.endLineNumber),n.endLineNumber+1,1),n.endLineNumber===e.getLineCount()?``:`
140
+ `):this._isCopyingDown?t.addEditOperation(new a.Ol(n.startLineNumber,1,n.startLineNumber,1),i+`
141
+ `):t.addEditOperation(new a.Ol(n.endLineNumber,e.getLineMaxColumn(n.endLineNumber),n.endLineNumber,e.getLineMaxColumn(n.endLineNumber)),`
142
+ `+i),this._selectionId=t.trackSelection(n),this._selectionDirection=this._selection.getDirection()}computeCursorState(e,t){let n=t.getTrackedSelection(this._selectionId);if(this._startLineNumberDelta!==0||this._endLineNumberDelta!==0){let e=n.startLineNumber,t=n.startColumn,r=n.endLineNumber,i=n.endColumn;this._startLineNumberDelta!==0&&(e+=this._startLineNumberDelta,t=1),this._endLineNumberDelta!==0&&(r+=this._endLineNumberDelta,i=1),n=a.Dl.createWithDirection(e,t,r,i,this._selectionDirection)}return n}},Th=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Eh=function(e,t){return function(n,r){t(n,r,e)}},Dh=class{constructor(e,t,n,r){this._languageConfigurationService=r,this._selection=e,this._isMovingDown=t,this._autoIndent=n,this._selectionId=null,this._moveEndLineSelectionShrink=!1}getEditOperations(e,t){let n=e.getLineCount();if(this._isMovingDown&&this._selection.endLineNumber===n){this._selectionId=t.trackSelection(this._selection);return}if(!this._isMovingDown&&this._selection.startLineNumber===1){this._selectionId=t.trackSelection(this._selection);return}this._moveEndPositionDown=!1;let r=this._selection;r.startLineNumber<r.endLineNumber&&r.endColumn===1&&(this._moveEndPositionDown=!0,r=r.setEndPosition(r.endLineNumber-1,e.getLineMaxColumn(r.endLineNumber-1)));let{tabSize:i,indentSize:s,insertSpaces:c}=e.getOptions(),l=this.buildIndentConverter(i,s,c),u={tokenization:{getLineTokens:t=>e.tokenization.getLineTokens(t),getLanguageId:()=>e.getLanguageId(),getLanguageIdAtPosition:(t,n)=>e.getLanguageIdAtPosition(t,n)},getLineContent:null};if(r.startLineNumber===r.endLineNumber&&e.getLineMaxColumn(r.startLineNumber)===1){let n=r.startLineNumber,i=this._isMovingDown?n+1:n-1;e.getLineMaxColumn(i)===1?t.addEditOperation(new a.Ol(1,1,1,1),null):(t.addEditOperation(new a.Ol(n,1,n,1),e.getLineContent(i)),t.addEditOperation(new a.Ol(i,1,i,e.getLineMaxColumn(i)),null)),r=new a.Dl(i,1,i,1)}else{let n,s;if(this._isMovingDown){n=r.endLineNumber+1,s=e.getLineContent(n),t.addEditOperation(new a.Ol(n-1,e.getLineMaxColumn(n-1),n,e.getLineMaxColumn(n)),null);let d=s;if(this.shouldAutoIndent(e,r)){let f=this.matchEnterRule(e,l,i,n,r.startLineNumber-1);if(f!==null)d=km(f+X(a.Bc(e.getLineContent(n)),i),i,c)+this.trimLeft(s);else{u.getLineContent=t=>t===r.startLineNumber?e.getLineContent(n):e.getLineContent(t);let t=o.jn(this._autoIndent,u,e.getLanguageIdAtPosition(n,1),r.startLineNumber,l,this._languageConfigurationService);if(t!==null){let r=a.Bc(e.getLineContent(n)),o=X(t,i);o!==X(r,i)&&(d=km(o,i,c)+this.trimLeft(s))}}t.addEditOperation(new a.Ol(r.startLineNumber,1,r.startLineNumber,1),d+`
143
+ `);let p=this.matchEnterRuleMovingDown(e,l,i,r.startLineNumber,n,d);if(p!==null)p!==0&&this.getIndentEditsOfMovingBlock(e,t,r,i,c,p);else{u.getLineContent=t=>t===r.startLineNumber?d:t>=r.startLineNumber+1&&t<=r.endLineNumber+1?e.getLineContent(t-1):e.getLineContent(t);let s=o.jn(this._autoIndent,u,e.getLanguageIdAtPosition(n,1),r.startLineNumber+1,l,this._languageConfigurationService);if(s!==null){let n=a.Bc(e.getLineContent(r.startLineNumber)),o=X(s,i),l=X(n,i);if(o!==l){let n=o-l;this.getIndentEditsOfMovingBlock(e,t,r,i,c,n)}}}}else t.addEditOperation(new a.Ol(r.startLineNumber,1,r.startLineNumber,1),d+`
144
+ `)}else if(n=r.startLineNumber-1,s=e.getLineContent(n),t.addEditOperation(new a.Ol(n,1,n+1,1),null),t.addEditOperation(new a.Ol(r.endLineNumber,e.getLineMaxColumn(r.endLineNumber),r.endLineNumber,e.getLineMaxColumn(r.endLineNumber)),`
145
+ `+s),this.shouldAutoIndent(e,r)){u.getLineContent=t=>t===n?e.getLineContent(r.startLineNumber):e.getLineContent(t);let s=this.matchEnterRule(e,l,i,r.startLineNumber,r.startLineNumber-2);if(s!==null)s!==0&&this.getIndentEditsOfMovingBlock(e,t,r,i,c,s);else{let s=o.jn(this._autoIndent,u,e.getLanguageIdAtPosition(r.startLineNumber,1),n,l,this._languageConfigurationService);if(s!==null){let n=a.Bc(e.getLineContent(r.startLineNumber)),o=X(s,i),l=X(n,i);if(o!==l){let n=o-l;this.getIndentEditsOfMovingBlock(e,t,r,i,c,n)}}}}}this._selectionId=t.trackSelection(r)}buildIndentConverter(e,t,n){return{shiftIndent:r=>o.Nn.shiftIndent(r,r.length+1,e,t,n),unshiftIndent:r=>o.Nn.unshiftIndent(r,r.length+1,e,t,n)}}parseEnterResult(e,t,n,r,i){if(i){let s=i.indentation;i.indentAction===a.rc.None||i.indentAction===a.rc.Indent?s=i.indentation+i.appendText:i.indentAction===a.rc.IndentOutdent?s=i.indentation:i.indentAction===a.rc.Outdent&&(s=t.unshiftIndent(i.indentation)+i.appendText);let c=e.getLineContent(r);if(this.trimLeft(c).indexOf(this.trimLeft(s))>=0){let i=a.Bc(e.getLineContent(r)),c=a.Bc(s),l=o.Mn(e,r,this._languageConfigurationService);return l!==null&&l&2&&(c=t.unshiftIndent(c)),X(c,n)-X(i,n)}}return null}matchEnterRuleMovingDown(e,t,n,r,i,s){if(a.Zc(s)>=0){let s=e.getLineMaxColumn(i),c=o.Pn(this._autoIndent,e,new a.Ol(i,s,i,s),this._languageConfigurationService);return this.parseEnterResult(e,t,n,r,c)}else{let i=r-1;for(;i>=1;){let t=e.getLineContent(i);if(a.Zc(t)>=0)break;i--}if(i<1||r>e.getLineCount())return null;let s=e.getLineMaxColumn(i),c=o.Pn(this._autoIndent,e,new a.Ol(i,s,i,s),this._languageConfigurationService);return this.parseEnterResult(e,t,n,r,c)}}matchEnterRule(e,t,n,r,i,s){let c=i;for(;c>=1;){let t;if(t=c===i&&s!==void 0?s:e.getLineContent(c),a.Zc(t)>=0)break;c--}if(c<1||r>e.getLineCount())return null;let l=e.getLineMaxColumn(c),u=o.Pn(this._autoIndent,e,new a.Ol(c,l,c,l),this._languageConfigurationService);return this.parseEnterResult(e,t,n,r,u)}trimLeft(e){return e.replace(/^\s+/,``)}shouldAutoIndent(e,t){if(this._autoIndent<4||!e.tokenization.isCheapToTokenize(t.startLineNumber))return!1;let n=e.getLanguageIdAtPosition(t.startLineNumber,1);return!(n!==e.getLanguageIdAtPosition(t.endLineNumber,1)||this._languageConfigurationService.getLanguageConfiguration(n).indentRulesSupport===null)}getIndentEditsOfMovingBlock(e,t,n,r,i,o){for(let s=n.startLineNumber;s<=n.endLineNumber;s++){let c=e.getLineContent(s),l=a.Bc(c),u=km(X(l,r)+o,r,i);u!==l&&(t.addEditOperation(new a.Ol(s,1,s,l.length+1),u),s===n.endLineNumber&&n.endColumn<=l.length+1&&u===``&&(this._moveEndLineSelectionShrink=!0))}}computeCursorState(e,t){let n=t.getTrackedSelection(this._selectionId);return this._moveEndPositionDown&&(n=n.setEndPosition(n.endLineNumber+1,1)),this._moveEndLineSelectionShrink&&n.startLineNumber<n.endLineNumber&&(n=n.setEndPosition(n.endLineNumber,2)),n}};Dh=Th([Eh(3,a.Ps)],Dh);var Oh=class e{constructor(e,t){this.selection=e,this.descending=t,this.selectionId=null}static getCollator(){return e._COLLATOR||=new Intl.Collator,e._COLLATOR}getEditOperations(e,t){let n=Ah(e,this.selection,this.descending);n&&t.addEditOperation(n.range,n.text),this.selectionId=t.trackSelection(this.selection)}computeCursorState(e,t){return t.getTrackedSelection(this.selectionId)}static canRun(e,t,n){if(e===null)return!1;let r=kh(e,t,n);if(!r)return!1;for(let e=0,t=r.before.length;e<t;e++)if(r.before[e]!==r.after[e])return!0;return!1}};Oh._COLLATOR=null;function kh(e,t,n){let r=t.startLineNumber,i=t.endLineNumber;if(t.endColumn===1&&i--,r>=i)return null;let a=[];for(let t=r;t<=i;t++)a.push(e.getLineContent(t));let o=a.slice(0);return o.sort(Oh.getCollator().compare),n===!0&&(o=o.reverse()),{startLineNumber:r,endLineNumber:i,before:a,after:o}}function Ah(e,t,n){let r=kh(e,t,n);return r?o.jt.replace(new a.Ol(r.startLineNumber,1,r.endLineNumber,e.getLineMaxColumn(r.endLineNumber)),r.after.join(`
146
+ `)):null}var jh=class extends a.Gi{constructor(e,t){super(t),this.down=e}run(e,t){if(!t.hasModel())return;let n=t.getSelections().map((e,t)=>({selection:e,index:t,ignore:!1}));n.sort((e,t)=>a.Ol.compareRangesUsingStarts(e.selection,t.selection));let r=n[0];for(let e=1;e<n.length;e++){let t=n[e];r.selection.endLineNumber===t.selection.startLineNumber&&(r.index<t.index?t.ignore=!0:(r.ignore=!0,r=t))}let i=[];for(let e of n)i.push(new wh(e.selection,this.down,e.ignore));t.pushUndoStop(),t.executeCommands(this.id,i),t.pushUndoStop()}},Mh=class extends jh{constructor(){super(!1,{id:`editor.action.copyLinesUpAction`,label:a.Td(`lines.copyUp`,`Copy Line Up`),alias:`Copy Line Up`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:1552,linux:{primary:3600},weight:100},menuOpts:{menuId:a.ca.MenubarSelectionMenu,group:`2_line`,title:a.Td({key:`miCopyLinesUp`,comment:[`&& denotes a mnemonic`]},`&&Copy Line Up`),order:1}})}},Nh=class extends jh{constructor(){super(!0,{id:`editor.action.copyLinesDownAction`,label:a.Td(`lines.copyDown`,`Copy Line Down`),alias:`Copy Line Down`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:1554,linux:{primary:3602},weight:100},menuOpts:{menuId:a.ca.MenubarSelectionMenu,group:`2_line`,title:a.Td({key:`miCopyLinesDown`,comment:[`&& denotes a mnemonic`]},`Co&&py Line Down`),order:2}})}},Ph=class extends a.Gi{constructor(){super({id:`editor.action.duplicateSelection`,label:a.Td(`duplicateSelection`,`Duplicate Selection`),alias:`Duplicate Selection`,precondition:o.kn.writable,menuOpts:{menuId:a.ca.MenubarSelectionMenu,group:`2_line`,title:a.Td({key:`miDuplicateSelection`,comment:[`&& denotes a mnemonic`]},`&&Duplicate Selection`),order:5}})}run(e,t,n){if(!t.hasModel())return;let r=[],i=t.getSelections(),s=t.getModel();for(let e of i)if(e.isEmpty())r.push(new wh(e,!0));else{let t=new a.Dl(e.endLineNumber,e.endColumn,e.endLineNumber,e.endColumn);r.push(new o.Vn(t,s.getValueInRange(e)))}t.pushUndoStop(),t.executeCommands(this.id,r),t.pushUndoStop()}},Fh=class extends a.Gi{constructor(e,t){super(t),this.down=e}run(e,t){let n=e.get(a.Ps),r=[],i=t.getSelections()||[],o=t.getOption(9);for(let e of i)r.push(new Dh(e,this.down,o,n));t.pushUndoStop(),t.executeCommands(this.id,r),t.pushUndoStop()}},Ih=class extends Fh{constructor(){super(!1,{id:`editor.action.moveLinesUpAction`,label:a.Td(`lines.moveUp`,`Move Line Up`),alias:`Move Line Up`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:528,linux:{primary:528},weight:100},menuOpts:{menuId:a.ca.MenubarSelectionMenu,group:`2_line`,title:a.Td({key:`miMoveLinesUp`,comment:[`&& denotes a mnemonic`]},`Mo&&ve Line Up`),order:3}})}},Lh=class extends Fh{constructor(){super(!0,{id:`editor.action.moveLinesDownAction`,label:a.Td(`lines.moveDown`,`Move Line Down`),alias:`Move Line Down`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:530,linux:{primary:530},weight:100},menuOpts:{menuId:a.ca.MenubarSelectionMenu,group:`2_line`,title:a.Td({key:`miMoveLinesDown`,comment:[`&& denotes a mnemonic`]},`Move &&Line Down`),order:4}})}},Rh=class extends a.Gi{constructor(e,t){super(t),this.descending=e}run(e,t){let n=t.getSelections()||[];for(let e of n)if(!Oh.canRun(t.getModel(),e,this.descending))return;let r=[];for(let e=0,t=n.length;e<t;e++)r[e]=new Oh(n[e],this.descending);t.pushUndoStop(),t.executeCommands(this.id,r),t.pushUndoStop()}},zh=class extends Rh{constructor(){super(!1,{id:`editor.action.sortLinesAscending`,label:a.Td(`lines.sortAscending`,`Sort Lines Ascending`),alias:`Sort Lines Ascending`,precondition:o.kn.writable})}},Bh=class extends Rh{constructor(){super(!0,{id:`editor.action.sortLinesDescending`,label:a.Td(`lines.sortDescending`,`Sort Lines Descending`),alias:`Sort Lines Descending`,precondition:o.kn.writable})}},Vh=class extends a.Gi{constructor(){super({id:`editor.action.removeDuplicateLines`,label:a.Td(`lines.deleteDuplicates`,`Delete Duplicate Lines`),alias:`Delete Duplicate Lines`,precondition:o.kn.writable})}run(e,t){if(!t.hasModel())return;let n=t.getModel();if(n.getLineCount()===1&&n.getLineMaxColumn(1)===1)return;let r=[],i=[],s=0;for(let e of t.getSelections()){let t=new Set,c=[];for(let r=e.startLineNumber;r<=e.endLineNumber;r++){let e=n.getLineContent(r);t.has(e)||(c.push(e),t.add(e))}let l=new a.Dl(e.startLineNumber,1,e.endLineNumber,n.getLineMaxColumn(e.endLineNumber)),u=e.startLineNumber-s,d=new a.Dl(u,1,u+c.length-1,c[c.length-1].length);r.push(o.jt.replace(l,c.join(`
147
+ `))),i.push(d),s+=e.endLineNumber-e.startLineNumber+1-c.length}t.pushUndoStop(),t.executeEdits(this.id,r,i),t.pushUndoStop()}},Hh=class e extends a.Gi{constructor(){super({id:e.ID,label:a.Td(`lines.trimTrailingWhitespace`,`Trim Trailing Whitespace`),alias:`Trim Trailing Whitespace`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:a.Rl(2089,2102),weight:100}})}run(e,t,n){let r=[];n.reason===`auto-save`&&(r=(t.getSelections()||[]).map(e=>new a.kl(e.positionLineNumber,e.positionColumn)));let i=t.getSelection();if(i===null)return;let o=new Sh(i,r);t.pushUndoStop(),t.executeCommands(this.id,[o]),t.pushUndoStop()}};Hh.ID=`editor.action.trimTrailingWhitespace`;var Uh=class extends a.Gi{constructor(){super({id:`editor.action.deleteLines`,label:a.Td(`lines.delete`,`Delete Line`),alias:`Delete Line`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.textInputFocus,primary:3113,weight:100}})}run(e,t){if(!t.hasModel())return;let n=this._getLinesToRemove(t),r=t.getModel();if(r.getLineCount()===1&&r.getLineMaxColumn(1)===1)return;let i=0,s=[],c=[];for(let e=0,t=n.length;e<t;e++){let t=n[e],l=t.startLineNumber,u=t.endLineNumber,d=1,f=r.getLineMaxColumn(u);u<r.getLineCount()?(u+=1,f=1):l>1&&(--l,d=r.getLineMaxColumn(l)),s.push(o.jt.replace(new a.Dl(l,d,u,f),``)),c.push(new a.Dl(l-i,t.positionColumn,l-i,t.positionColumn)),i+=t.endLineNumber-t.startLineNumber+1}t.pushUndoStop(),t.executeEdits(this.id,s,c),t.pushUndoStop()}_getLinesToRemove(e){let t=e.getSelections().map(e=>{let t=e.endLineNumber;return e.startLineNumber<e.endLineNumber&&e.endColumn===1&&--t,{startLineNumber:e.startLineNumber,selectionStartColumn:e.selectionStartColumn,endLineNumber:t,positionColumn:e.positionColumn}});t.sort((e,t)=>e.startLineNumber===t.startLineNumber?e.endLineNumber-t.endLineNumber:e.startLineNumber-t.startLineNumber);let n=[],r=t[0];for(let e=1;e<t.length;e++)r.endLineNumber+1>=t[e].startLineNumber?r.endLineNumber=t[e].endLineNumber:(n.push(r),r=t[e]);return n.push(r),n}},Wh=class extends a.Gi{constructor(){super({id:`editor.action.indentLines`,label:a.Td(`lines.indent`,`Indent Line`),alias:`Indent Line`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:2137,weight:100}})}run(e,t){let n=t._getViewModel();n&&(t.pushUndoStop(),t.executeCommands(this.id,o.An.indent(n.cursorConfig,t.getModel(),t.getSelections())),t.pushUndoStop())}},Gh=class extends a.Gi{constructor(){super({id:`editor.action.outdentLines`,label:a.Td(`lines.outdent`,`Outdent Line`),alias:`Outdent Line`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:2135,weight:100}})}run(e,t){o.On.Outdent.runEditorCommand(e,t,null)}},Kh=class extends a.Gi{constructor(){super({id:`editor.action.insertLineBefore`,label:a.Td(`lines.insertBefore`,`Insert Line Above`),alias:`Insert Line Above`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:3075,weight:100}})}run(e,t){let n=t._getViewModel();n&&(t.pushUndoStop(),t.executeCommands(this.id,o.An.lineInsertBefore(n.cursorConfig,t.getModel(),t.getSelections())))}},qh=class extends a.Gi{constructor(){super({id:`editor.action.insertLineAfter`,label:a.Td(`lines.insertAfter`,`Insert Line Below`),alias:`Insert Line Below`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:2051,weight:100}})}run(e,t){let n=t._getViewModel();n&&(t.pushUndoStop(),t.executeCommands(this.id,o.An.lineInsertAfter(n.cursorConfig,t.getModel(),t.getSelections())))}},Jh=class extends a.Gi{run(e,t){if(!t.hasModel())return;let n=t.getSelection(),r=this._getRangesToDelete(t),i=[];for(let e=0,t=r.length-1;e<t;e++){let t=r[e],n=r[e+1];a.Ol.intersectRanges(t,n)===null?i.push(t):r[e+1]=a.Ol.plusRange(t,n)}i.push(r[r.length-1]);let s=this._getEndCursorState(n,i),c=i.map(e=>o.jt.replace(e,``));t.pushUndoStop(),t.executeEdits(this.id,c,s),t.pushUndoStop()}},Yh=class extends Jh{constructor(){super({id:`deleteAllLeft`,label:a.Td(`lines.deleteAllLeft`,`Delete All Left`),alias:`Delete All Left`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.textInputFocus,primary:0,mac:{primary:2049},weight:100}})}_getEndCursorState(e,t){let n=null,r=[],i=0;return t.forEach(t=>{let o;if(t.endColumn===1&&i>0){let e=t.startLineNumber-i;o=new a.Dl(e,t.startColumn,e,t.startColumn)}else o=new a.Dl(t.startLineNumber,t.startColumn,t.startLineNumber,t.startColumn);i+=t.endLineNumber-t.startLineNumber,t.intersectRanges(e)?n=o:r.push(o)}),n&&r.unshift(n),r}_getRangesToDelete(e){let t=e.getSelections();if(t===null)return[];let n=t,r=e.getModel();return r===null?[]:(n.sort(a.Ol.compareRangesUsingStarts),n=n.map(e=>{if(e.isEmpty())if(e.startColumn===1){let t=Math.max(1,e.startLineNumber-1);return new a.Ol(t,e.startLineNumber===1?1:r.getLineContent(t).length+1,e.startLineNumber,1)}else return new a.Ol(e.startLineNumber,1,e.startLineNumber,e.startColumn);else return new a.Ol(e.startLineNumber,1,e.endLineNumber,e.endColumn)}),n)}},Xh=class extends Jh{constructor(){super({id:`deleteAllRight`,label:a.Td(`lines.deleteAllRight`,`Delete All Right`),alias:`Delete All Right`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.textInputFocus,primary:0,mac:{primary:297,secondary:[2068]},weight:100}})}_getEndCursorState(e,t){let n=null,r=[];for(let i=0,o=t.length;i<o;i++){let o=t[i],s=new a.Dl(o.startLineNumber-0,o.startColumn,o.startLineNumber-0,o.startColumn);o.intersectRanges(e)?n=s:r.push(s)}return n&&r.unshift(n),r}_getRangesToDelete(e){let t=e.getModel();if(t===null)return[];let n=e.getSelections();if(n===null)return[];let r=n.map(e=>{if(e.isEmpty()){let n=t.getLineMaxColumn(e.startLineNumber);return e.startColumn===n?new a.Ol(e.startLineNumber,e.startColumn,e.startLineNumber+1,1):new a.Ol(e.startLineNumber,e.startColumn,e.startLineNumber,n)}return e});return r.sort(a.Ol.compareRangesUsingStarts),r}},Zh=class extends a.Gi{constructor(){super({id:`editor.action.joinLines`,label:a.Td(`lines.joinLines`,`Join Lines`),alias:`Join Lines`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:0,mac:{primary:296},weight:100}})}run(e,t){let n=t.getSelections();if(n===null)return;let r=t.getSelection();if(r===null)return;n.sort(a.Ol.compareRangesUsingStarts);let i=[],s=n.reduce((e,t)=>e.isEmpty()?e.endLineNumber===t.startLineNumber?(r.equalsSelection(e)&&(r=t),t):t.startLineNumber>e.endLineNumber+1?(i.push(e),t):new a.Dl(e.startLineNumber,e.startColumn,t.endLineNumber,t.endColumn):t.startLineNumber>e.endLineNumber?(i.push(e),t):new a.Dl(e.startLineNumber,e.startColumn,t.endLineNumber,t.endColumn));i.push(s);let c=t.getModel();if(c===null)return;let l=[],u=[],d=r,f=0;for(let e=0,t=i.length;e<t;e++){let t=i[e],n=t.startLineNumber,s=0,p,m,h=c.getLineContent(t.endLineNumber).length-t.endColumn;if(t.isEmpty()||t.startLineNumber===t.endLineNumber){let e=t.getStartPosition();e.lineNumber<c.getLineCount()?(p=n+1,m=c.getLineMaxColumn(p)):(p=e.lineNumber,m=c.getLineMaxColumn(e.lineNumber))}else p=t.endLineNumber,m=c.getLineMaxColumn(p);let g=c.getLineContent(n);for(let e=n+1;e<=p;e++){let t=c.getLineContent(e),n=c.getLineFirstNonWhitespaceColumn(e);if(n>=1){let e=!0;g===``&&(e=!1),e&&(g.charAt(g.length-1)===` `||g.charAt(g.length-1)===` `)&&(e=!1,g=g.replace(/[\s\uFEFF\xA0]+$/g,` `));let r=t.substr(n-1);g+=(e?` `:``)+r,s=e?r.length+1:r.length}else s=0}let _=new a.Ol(n,1,p,m);if(!_.isEmpty()){let e;t.isEmpty()?(l.push(o.jt.replace(_,g)),e=new a.Dl(_.startLineNumber-f,g.length-s+1,n-f,g.length-s+1)):t.startLineNumber===t.endLineNumber?(l.push(o.jt.replace(_,g)),e=new a.Dl(t.startLineNumber-f,t.startColumn,t.endLineNumber-f,t.endColumn)):(l.push(o.jt.replace(_,g)),e=new a.Dl(t.startLineNumber-f,t.startColumn,t.startLineNumber-f,g.length-h)),a.Ol.intersectRanges(_,r)===null?u.push(e):d=e}f+=_.endLineNumber-_.startLineNumber}u.unshift(d),t.pushUndoStop(),t.executeEdits(this.id,l,u),t.pushUndoStop()}},Qh=class extends a.Gi{constructor(){super({id:`editor.action.transpose`,label:a.Td(`editor.transpose`,`Transpose characters around the cursor`),alias:`Transpose characters around the cursor`,precondition:o.kn.writable})}run(e,t){let n=t.getSelections();if(n===null)return;let r=t.getModel();if(r===null)return;let i=[];for(let e=0,t=n.length;e<t;e++){let t=n[e];if(!t.isEmpty())continue;let s=t.getStartPosition(),c=r.getLineMaxColumn(s.lineNumber);if(s.column>=c){if(s.lineNumber===r.getLineCount())continue;let e=new a.Ol(s.lineNumber,Math.max(1,s.column-1),s.lineNumber+1,1),t=r.getValueInRange(e).split(``).reverse().join(``);i.push(new o.zn(new a.Dl(s.lineNumber,Math.max(1,s.column-1),s.lineNumber+1,1),t))}else{let e=new a.Ol(s.lineNumber,Math.max(1,s.column-1),s.lineNumber,s.column+1),t=r.getValueInRange(e).split(``).reverse().join(``);i.push(new o.Bn(e,t,new a.Dl(s.lineNumber,s.column+1,s.lineNumber,s.column+1)))}}t.pushUndoStop(),t.executeCommands(this.id,i),t.pushUndoStop()}},$h=class extends a.Gi{run(e,t){let n=t.getSelections();if(n===null)return;let r=t.getModel();if(r===null)return;let i=t.getOption(118),s=[];for(let e of n)if(e.isEmpty()){let n=e.getStartPosition(),c=t.getConfiguredWordAtPosition(n);if(!c)continue;let l=new a.Ol(n.lineNumber,c.startColumn,n.lineNumber,c.endColumn),u=r.getValueInRange(l);s.push(o.jt.replace(l,this._modifyText(u,i)))}else{let t=r.getValueInRange(e);s.push(o.jt.replace(e,this._modifyText(t,i)))}t.pushUndoStop(),t.executeEdits(this.id,s),t.pushUndoStop()}},eg=class extends $h{constructor(){super({id:`editor.action.transformToUppercase`,label:a.Td(`editor.transformToUppercase`,`Transform to Uppercase`),alias:`Transform to Uppercase`,precondition:o.kn.writable})}_modifyText(e,t){return e.toLocaleUpperCase()}},tg=class extends $h{constructor(){super({id:`editor.action.transformToLowercase`,label:a.Td(`editor.transformToLowercase`,`Transform to Lowercase`),alias:`Transform to Lowercase`,precondition:o.kn.writable})}_modifyText(e,t){return e.toLocaleLowerCase()}},ng=class{constructor(e,t){this._pattern=e,this._flags=t,this._actual=null,this._evaluated=!1}get(){if(!this._evaluated){this._evaluated=!0;try{this._actual=new RegExp(this._pattern,this._flags)}catch{}}return this._actual}isSupported(){return this.get()!==null}},rg=class e extends $h{constructor(){super({id:`editor.action.transformToTitlecase`,label:a.Td(`editor.transformToTitlecase`,`Transform to Title Case`),alias:`Transform to Title Case`,precondition:o.kn.writable})}_modifyText(t,n){let r=e.titleBoundary.get();return r?t.toLocaleLowerCase().replace(r,e=>e.toLocaleUpperCase()):t}};rg.titleBoundary=new ng(`(^|[^\\p{L}\\p{N}']|((^|\\P{L})'))\\p{L}`,`gmu`);var ig=class e extends $h{constructor(){super({id:`editor.action.transformToSnakecase`,label:a.Td(`editor.transformToSnakecase`,`Transform to Snake Case`),alias:`Transform to Snake Case`,precondition:o.kn.writable})}_modifyText(t,n){let r=e.caseBoundary.get(),i=e.singleLetters.get();return!r||!i?t:t.replace(r,`$1_$2`).replace(i,`$1_$2$3`).toLocaleLowerCase()}};ig.caseBoundary=new ng(`(\\p{Ll})(\\p{Lu})`,`gmu`),ig.singleLetters=new ng(`(\\p{Lu}|\\p{N})(\\p{Lu})(\\p{Ll})`,`gmu`);var ag=class e extends $h{constructor(){super({id:`editor.action.transformToKebabcase`,label:a.Td(`editor.transformToKebabcase`,`Transform to Kebab Case`),alias:`Transform to Kebab Case`,precondition:o.kn.writable})}static isSupported(){return[this.caseBoundary,this.singleLetters,this.underscoreBoundary].every(e=>e.isSupported())}_modifyText(t,n){let r=e.caseBoundary.get(),i=e.singleLetters.get(),a=e.underscoreBoundary.get();return!r||!i||!a?t:t.replace(a,`$1-$3`).replace(r,`$1-$2`).replace(i,`$1-$2`).toLocaleLowerCase()}};ag.caseBoundary=new ng(`(\\p{Ll})(\\p{Lu})`,`gmu`),ag.singleLetters=new ng(`(\\p{Lu}|\\p{N})(\\p{Lu}\\p{Ll})`,`gmu`),ag.underscoreBoundary=new ng(`(\\S)(_)(\\S)`,`gm`),a.$i(Mh),a.$i(Nh),a.$i(Ph),a.$i(Ih),a.$i(Lh),a.$i(zh),a.$i(Bh),a.$i(Vh),a.$i(Hh),a.$i(Uh),a.$i(Wh),a.$i(Gh),a.$i(Kh),a.$i(qh),a.$i(Yh),a.$i(Xh),a.$i(Zh),a.$i(Qh),a.$i(eg),a.$i(tg),ig.caseBoundary.isSupported()&&ig.singleLetters.isSupported()&&a.$i(ig),rg.titleBoundary.isSupported()&&a.$i(rg),ag.isSupported()&&a.$i(ag);var og=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},sg=function(e,t){return function(n,r){t(n,r,e)}},cg=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},lg=new a.Da(`LinkedEditingInputVisible`,!1),ug=`linked-editing-decoration`,dg=class e extends a.Xl{constructor(e,t,n,r,i){super(),this.languageConfigurationService=r,this._syncRangesToken=0,this._localToDispose=this._register(new a.Zl),this._editor=e,this._providers=n.linkedEditingRangeProvider,this._enabled=!1,this._visibleContextKey=lg.bindTo(t),this._debounceInformation=i.for(this._providers,`Linked Editing`,{min:200}),this._currentDecorations=this._editor.createDecorationsCollection(),this._languageWordPattern=null,this._currentWordPattern=null,this._ignoreChangeEvent=!1,this._localToDispose=this._register(new a.Zl),this._rangeUpdateTriggerPromise=null,this._rangeSyncTriggerPromise=null,this._currentRequest=null,this._currentRequestPosition=null,this._currentRequestModelVersion=null,this._register(this._editor.onDidChangeModel(()=>this.reinitialize(!0))),this._register(this._editor.onDidChangeConfiguration(e=>{(e.hasChanged(63)||e.hasChanged(83))&&this.reinitialize(!1)})),this._register(this._providers.onDidChange(()=>this.reinitialize(!1))),this._register(this._editor.onDidChangeModelLanguage(()=>this.reinitialize(!0))),this.reinitialize(!0)}static get(t){return t.getContribution(e.ID)}reinitialize(e){let t=this._editor.getModel(),n=t!==null&&(this._editor.getOption(63)||this._editor.getOption(83))&&this._providers.has(t);if(n===this._enabled&&!e||(this._enabled=n,this.clearRanges(),this._localToDispose.clear(),!n||t===null))return;this._localToDispose.add(a.Wl.runAndSubscribe(t.onDidChangeLanguageConfiguration,()=>{this._languageWordPattern=this.languageConfigurationService.getLanguageConfiguration(t.getLanguageId()).getWordDefinition()}));let r=new a.ms(this._debounceInformation.get(t)),i=()=>{this._rangeUpdateTriggerPromise=r.trigger(()=>this.updateRanges(),this._debounceDuration??this._debounceInformation.get(t))},o=new a.ms(0),s=e=>{this._rangeSyncTriggerPromise=o.trigger(()=>this._syncRanges(e))};this._localToDispose.add(this._editor.onDidChangeCursorPosition(()=>{i()})),this._localToDispose.add(this._editor.onDidChangeModelContent(e=>{if(!this._ignoreChangeEvent&&this._currentDecorations.length>0){let t=this._currentDecorations.getRange(0);if(t&&e.changes.every(e=>t.intersectRanges(e.range))){s(this._syncRangesToken);return}}i()})),this._localToDispose.add({dispose:()=>{r.dispose(),o.dispose()}}),this.updateRanges()}_syncRanges(e){if(!this._editor.hasModel()||e!==this._syncRangesToken||this._currentDecorations.length===0)return;let t=this._editor.getModel(),n=this._currentDecorations.getRange(0);if(!n||n.startLineNumber!==n.endLineNumber)return this.clearRanges();let r=t.getValueInRange(n);if(this._currentWordPattern){let e=r.match(this._currentWordPattern);if((e?e[0].length:0)!==r.length)return this.clearRanges()}let i=[];for(let e=1,n=this._currentDecorations.length;e<n;e++){let n=this._currentDecorations.getRange(e);if(n)if(n.startLineNumber!==n.endLineNumber)i.push({range:n,text:r});else{let e=t.getValueInRange(n),o=r,s=n.startColumn,c=n.endColumn,l=a.Dc(e,o);s+=l,e=e.substr(l),o=o.substr(l);let u=a.Oc(e,o);c-=u,e=e.substr(0,e.length-u),o=o.substr(0,o.length-u),(s!==c||o.length!==0)&&i.push({range:new a.Ol(n.startLineNumber,s,n.endLineNumber,c),text:o})}}if(i.length!==0)try{this._editor.popUndoStop(),this._ignoreChangeEvent=!0;let e=this._editor._getViewModel().getPrevEditOperationType();this._editor.executeEdits(`linkedEditing`,i),this._editor._getViewModel().setPrevEditOperationType(e)}finally{this._ignoreChangeEvent=!1}}dispose(){this.clearRanges(),super.dispose()}clearRanges(){this._visibleContextKey.set(!1),this._currentDecorations.clear(),this._currentRequest&&(this._currentRequest.cancel(),this._currentRequest=null,this._currentRequestPosition=null)}updateRanges(t=!1){return cg(this,void 0,void 0,function*(){if(!this._editor.hasModel()){this.clearRanges();return}let n=this._editor.getPosition();if(!this._enabled&&!t||this._editor.getSelections().length>1){this.clearRanges();return}let r=this._editor.getModel(),i=r.getVersionId();if(this._currentRequestPosition&&this._currentRequestModelVersion===i){if(n.equals(this._currentRequestPosition))return;if(this._currentDecorations.length>0){let e=this._currentDecorations.getRange(0);if(e&&e.containsPosition(n))return}}this._currentRequestPosition=n,this._currentRequestModelVersion=i;let o=a.Cs(t=>cg(this,void 0,void 0,function*(){try{let s=new a.Yl(!1),c=yield pg(this._providers,r,n,t);if(this._debounceInformation.update(r,s.elapsed()),o!==this._currentRequest||(this._currentRequest=null,i!==r.getVersionId()))return;let l=[];c?.ranges&&(l=c.ranges),this._currentWordPattern=c?.wordPattern||this._languageWordPattern;let u=!1;for(let e=0,t=l.length;e<t;e++)if(a.Ol.containsPosition(l[e],n)){if(u=!0,e!==0){let t=l[e];l.splice(e,1),l.unshift(t)}break}if(!u){this.clearRanges();return}let d=l.map(t=>({range:t,options:e.DECORATION}));this._visibleContextKey.set(!0),this._currentDecorations.set(d),this._syncRangesToken++}catch(e){a.du(e)||a.fu(e),(this._currentRequest===o||!this._currentRequest)&&this.clearRanges()}}));return this._currentRequest=o,o})}};dg.ID=`editor.contrib.linkedEditing`,dg.DECORATION=a.f.register({description:`linked-editing`,stickiness:0,className:ug}),dg=og([sg(1,a.Ea),sg(2,a.Zo),sg(3,a.Ps),sg(4,a.t)],dg);var fg=class extends a.Gi{constructor(){super({id:`editor.action.linkedEditing`,label:a.Td(`linkedEditing.label`,`Start Linked Editing`),alias:`Start Linked Editing`,precondition:a.Ta.and(o.kn.writable,o.kn.hasRenameProvider),kbOpts:{kbExpr:o.kn.editorTextFocus,primary:3132,weight:100}})}runCommand(e,t){let n=e.get(a.dc),[r,i]=Array.isArray(t)&&t||[void 0,void 0];return a.Al.isUri(r)&&a.kl.isIPosition(i)?n.openCodeEditor({resource:r},n.getActiveCodeEditor()).then(e=>{e&&(e.setPosition(i),e.invokeWithinContext(t=>(this.reportTelemetry(t,e),this.run(t,e))))},a.fu):super.runCommand(e,t)}run(e,t){let n=dg.get(t);return n?Promise.resolve(n.updateRanges(!0)):Promise.resolve()}};a.ea(new(a.Ki.bindToContribution(dg.get))({id:`cancelLinkedEditingInput`,precondition:lg,handler:e=>e.clearRanges(),kbOpts:{kbExpr:o.kn.editorTextFocus,weight:199,primary:9,secondary:[1033]}}));function pg(e,t,n,r){return a.Ts(e.ordered(t).map(e=>()=>cg(this,void 0,void 0,function*(){try{return yield e.provideLinkedEditingRanges(t,n,r)}catch(e){a.pu(e);return}})),e=>!!e&&a.$u(e?.ranges))}var mg=a.Ti(`editor.linkedEditingBackground`,{dark:a.Bi.fromHex(`#f00`).transparent(.3),light:a.Bi.fromHex(`#f00`).transparent(.3),hcDark:a.Bi.fromHex(`#f00`).transparent(.3),hcLight:a.Bi.white},a.Td(`editorLinkedEditingBackground`,`Background color when the editor auto renames on type.`));a.ba((e,t)=>{let n=e.getColor(mg);n&&t.addRule(`.monaco-editor .${ug} { background: ${n}; border-left-color: ${n}; }`)}),a.ra(`_executeLinkedEditingProvider`,(e,t,n)=>{let{linkedEditingRangeProvider:r}=e.get(a.Zo);return pg(r,t,n,a.Bl.None)}),a.ta(dg.ID,dg),a.$i(fg);var hg=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},gg=class{constructor(e,t){this._link=e,this._provider=t}toJSON(){return{range:this.range,url:this.url,tooltip:this.tooltip}}get range(){return this._link.range}get url(){return this._link.url}get tooltip(){return this._link.tooltip}resolve(e){return hg(this,void 0,void 0,function*(){return this._link.url?this._link.url:typeof this._provider.resolveLink==`function`?Promise.resolve(this._provider.resolveLink(this._link,e)).then(t=>(this._link=t||this._link,this._link.url?this.resolve(e):Promise.reject(Error(`missing`)))):Promise.reject(Error(`missing`))})}},_g=class e{constructor(t){this._disposables=new a.Zl;let n=[];for(let[r,i]of t){let t=r.links.map(e=>new gg(e,i));n=e._union(n,t),a.ru(r)&&this._disposables.add(r)}this.links=n}dispose(){this._disposables.dispose(),this.links.length=0}static _union(e,t){let n=[],r,i,o,s;for(r=0,o=0,i=e.length,s=t.length;r<i&&o<s;){let i=e[r],s=t[o];if(a.Ol.areIntersectingOrTouching(i.range,s.range)){r++;continue}a.Ol.compareRangesUsingStarts(i.range,s.range)<0?(n.push(i),r++):(n.push(s),o++)}for(;r<i;r++)n.push(e[r]);for(;o<s;o++)n.push(t[o]);return n}};function vg(e,t,n){let r=[],i=e.ordered(t).reverse().map((e,i)=>Promise.resolve(e.provideLinks(t,n)).then(t=>{t&&(r[i]=[t,e])},a.pu));return Promise.all(i).then(()=>{let e=new _g(a.Vu(r));return n.isCancellationRequested?(e.dispose(),new _g([])):e})}a.ja.registerCommand(`_executeLinkProvider`,(e,...t)=>hg(void 0,void 0,void 0,function*(){let[n,r]=t;a.Cu(n instanceof a.Al),typeof r!=`number`&&(r=0);let{linkProvider:i}=e.get(a.Zo),o=e.get(a.As).getModel(n);if(!o)return[];let s=yield vg(i,o,a.Bl.None);if(!s)return[];for(let e=0;e<Math.min(r,s.links.length);e++)yield s.links[e].resolve(a.Bl.None);let c=s.links.slice(0);return s.dispose(),c}));var yg=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},bg=function(e,t){return function(n,r){t(n,r,e)}},xg=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Sg=class e extends a.Xl{constructor(e,t,n,r,i){super(),this.editor=e,this.openerService=t,this.notificationService=n,this.languageFeaturesService=r,this.providers=this.languageFeaturesService.linkProvider,this.debounceInformation=i.for(this.providers,`Links`,{min:1e3,max:4e3}),this.computeLinks=this._register(new a.ys(()=>this.computeLinksNow(),1e3)),this.computePromise=null,this.activeLinksList=null,this.currentOccurrences={},this.activeLinkDecorationId=null;let o=this._register(new pr(e));this._register(o.onMouseMoveOrRelevantKeyDown(([e,t])=>{this._onEditorMouseMove(e,t)})),this._register(o.onExecute(e=>{this.onEditorMouseUp(e)})),this._register(o.onCancel(e=>{this.cleanUpActiveLinkDecoration()})),this._register(e.onDidChangeConfiguration(e=>{e.hasChanged(64)&&(this.updateDecorations([]),this.stop(),this.computeLinks.schedule(0))})),this._register(e.onDidChangeModelContent(e=>{this.editor.hasModel()&&this.computeLinks.schedule(this.debounceInformation.get(this.editor.getModel()))})),this._register(e.onDidChangeModel(e=>{this.currentOccurrences={},this.activeLinkDecorationId=null,this.stop(),this.computeLinks.schedule(0)})),this._register(e.onDidChangeModelLanguage(e=>{this.stop(),this.computeLinks.schedule(0)})),this._register(this.providers.onDidChange(e=>{this.stop(),this.computeLinks.schedule(0)})),this.computeLinks.schedule(0)}static get(t){return t.getContribution(e.ID)}computeLinksNow(){return xg(this,void 0,void 0,function*(){if(!this.editor.hasModel()||!this.editor.getOption(64))return;let e=this.editor.getModel();if(this.providers.has(e)){this.activeLinksList&&=(this.activeLinksList.dispose(),null),this.computePromise=a.Cs(t=>vg(this.providers,e,t));try{let t=new a.Yl(!1);if(this.activeLinksList=yield this.computePromise,this.debounceInformation.update(e,t.elapsed()),e.isDisposed())return;this.updateDecorations(this.activeLinksList.links)}catch(e){a.fu(e)}finally{this.computePromise=null}}})}updateDecorations(e){let t=this.editor.getOption(71)===`altKey`,n=[],r=Object.keys(this.currentOccurrences);for(let e of r){let t=this.currentOccurrences[e];n.push(t.decorationId)}let i=[];if(e)for(let n of e)i.push(wg.decoration(n,t));this.editor.changeDecorations(t=>{let r=t.deltaDecorations(n,i);this.currentOccurrences={},this.activeLinkDecorationId=null;for(let t=0,n=r.length;t<n;t++){let n=new wg(e[t],r[t]);this.currentOccurrences[n.decorationId]=n}})}_onEditorMouseMove(e,t){let n=this.editor.getOption(71)===`altKey`;if(this.isEnabled(e,t)){this.cleanUpActiveLinkDecoration();let t=this.getLinkOccurrence(e.target.position);t&&this.editor.changeDecorations(e=>{t.activate(e,n),this.activeLinkDecorationId=t.decorationId})}else this.cleanUpActiveLinkDecoration()}cleanUpActiveLinkDecoration(){let e=this.editor.getOption(71)===`altKey`;if(this.activeLinkDecorationId){let t=this.currentOccurrences[this.activeLinkDecorationId];t&&this.editor.changeDecorations(n=>{t.deactivate(n,e)}),this.activeLinkDecorationId=null}}onEditorMouseUp(e){if(!this.isEnabled(e))return;let t=this.getLinkOccurrence(e.target.position);t&&this.openLinkOccurrence(t,e.hasSideBySideModifier,!0)}openLinkOccurrence(e,t,n=!1){if(!this.openerService)return;let{link:r}=e;r.resolve(a.Bl.None).then(e=>{if(typeof e==`string`&&this.editor.hasModel()){let t=this.editor.getModel().uri;if(t.scheme===a.Io.file&&e.startsWith(`${a.Io.file}:`)){let n=a.Al.parse(e);if(n.scheme===a.Io.file){let r=a.k(n),i=null;r.startsWith(`/./`)?i=`.${r.substr(1)}`:r.startsWith(`//./`)&&(i=`.${r.substr(2)}`),i&&(e=a.D(t,i))}}}return this.openerService.open(e,{openToSide:t,fromUserGesture:n,allowContributedOpeners:!0,allowCommands:!0})},e=>{let t=e instanceof Error?e.message:e;t===`invalid`?this.notificationService.warn(a.Td(`invalid.url`,`Failed to open this link because it is not well-formed: {0}`,r.url.toString())):t===`missing`?this.notificationService.warn(a.Td(`missing.url`,`Failed to open this link because its target is missing.`)):a.fu(e)})}getLinkOccurrence(e){if(!this.editor.hasModel()||!e)return null;let t=this.editor.getModel().getDecorationsInRange({startLineNumber:e.lineNumber,startColumn:e.column,endLineNumber:e.lineNumber,endColumn:e.column},0,!0);for(let e of t){let t=this.currentOccurrences[e.id];if(t)return t}return null}isEnabled(e,t){return!!(e.target.type===6&&(e.hasTriggerModifier||t&&t.keyCodeIsTriggerKey))}stop(){var e;this.computeLinks.cancel(),this.activeLinksList&&=((e=this.activeLinksList)==null||e.dispose(),null),this.computePromise&&=(this.computePromise.cancel(),null)}dispose(){super.dispose(),this.stop()}};Sg.ID=`editor.linkDetector`,Sg=yg([bg(1,a.n),bg(2,o.vn),bg(3,a.Zo),bg(4,a.t)],Sg);var Cg={general:a.f.register({description:`detected-link`,stickiness:1,collapseOnReplaceEdit:!0,inlineClassName:`detected-link`}),active:a.f.register({description:`detected-link-active`,stickiness:1,collapseOnReplaceEdit:!0,inlineClassName:`detected-link-active`})},wg=class e{constructor(e,t){this.link=e,this.decorationId=t}static decoration(t,n){return{range:t.range,options:e._getOptions(t,n,!1)}}static _getOptions(e,t,n){let r=Object.assign({},n?Cg.active:Cg.general);return r.hoverMessage=Tg(e,t),r}activate(t,n){t.changeDecorationOptions(this.decorationId,e._getOptions(this.link,n,!0))}deactivate(t,n){t.changeDecorationOptions(this.decorationId,e._getOptions(this.link,n,!1))}};function Tg(e,t){let n=e.url&&/^command:/i.test(e.url.toString()),r=e.tooltip?e.tooltip:n?a.Td(`links.navigate.executeCmd`,`Execute command`):a.Td(`links.navigate.follow`,`Follow link`),i=t?a.bd?a.Td(`links.navigate.kb.meta.mac`,`cmd + click`):a.Td(`links.navigate.kb.meta`,`ctrl + click`):a.bd?a.Td(`links.navigate.kb.alt.mac`,`option + click`):a.Td(`links.navigate.kb.alt`,`alt + click`);if(e.url){let t=``;if(/^command:/i.test(e.url.toString())){let n=e.url.toString().match(/^command:([^?#]+)/);if(n){let e=n[1];t=a.Td(`tooltip.explanation`,`Execute command {0}`,e)}}return new o.Jt(``,!0).appendLink(e.url.toString(!0).replace(/ /g,`%20`),r,t).appendMarkdown(` (${i})`)}else return new o.Jt().appendText(`${r} (${i})`)}var Eg=class extends a.Gi{constructor(){super({id:`editor.action.openLink`,label:a.Td(`label`,`Open Link`),alias:`Open Link`,precondition:void 0})}run(e,t){let n=Sg.get(t);if(!n||!t.hasModel())return;let r=t.getSelections();for(let e of r){let t=n.getLinkOccurrence(e.getEndPosition());t&&n.openLinkOccurrence(t,!1)}}};a.ta(Sg.ID,Sg),a.$i(Eg),a.ba((e,t)=>{let n=e.getColor(a.hn);n&&t.addRule(`.monaco-editor .detected-link-active { color: ${n} !important; }`)});var Dg=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Og=function(e,t){return function(n,r){t(n,r,e)}};function kg(e,t){let n=t.filter(t=>!e.find(e=>e.equals(t)));if(n.length>=1){let e=n.map(e=>`line ${e.viewState.position.lineNumber} column ${e.viewState.position.column}`).join(`, `);o.Qn(n.length===1?a.Td(`cursorAdded`,`Cursor added: {0}`,e):a.Td(`cursorsAdded`,`Cursors added: {0}`,e))}}var Ag=class extends a.Gi{constructor(){super({id:`editor.action.insertCursorAbove`,label:a.Td(`mutlicursor.insertAbove`,`Add Cursor Above`),alias:`Add Cursor Above`,precondition:void 0,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:2576,linux:{primary:1552,secondary:[3088]},weight:100},menuOpts:{menuId:a.ca.MenubarSelectionMenu,group:`3_multi`,title:a.Td({key:`miInsertCursorAbove`,comment:[`&& denotes a mnemonic`]},`&&Add Cursor Above`),order:2}})}run(e,t,n){if(!t.hasModel())return;let r=!0;n&&n.logicalLine===!1&&(r=!1);let i=t._getViewModel();if(i.cursorConfig.readOnly)return;i.model.pushStackElement();let a=i.getCursorStates();i.setCursorStates(n.source,3,o.Fn.addCursorUp(i,a,r)),i.revealTopMostCursor(n.source),kg(a,i.getCursorStates())}},jg=class extends a.Gi{constructor(){super({id:`editor.action.insertCursorBelow`,label:a.Td(`mutlicursor.insertBelow`,`Add Cursor Below`),alias:`Add Cursor Below`,precondition:void 0,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:2578,linux:{primary:1554,secondary:[3090]},weight:100},menuOpts:{menuId:a.ca.MenubarSelectionMenu,group:`3_multi`,title:a.Td({key:`miInsertCursorBelow`,comment:[`&& denotes a mnemonic`]},`A&&dd Cursor Below`),order:3}})}run(e,t,n){if(!t.hasModel())return;let r=!0;n&&n.logicalLine===!1&&(r=!1);let i=t._getViewModel();if(i.cursorConfig.readOnly)return;i.model.pushStackElement();let a=i.getCursorStates();i.setCursorStates(n.source,3,o.Fn.addCursorDown(i,a,r)),i.revealBottomMostCursor(n.source),kg(a,i.getCursorStates())}},Mg=class extends a.Gi{constructor(){super({id:`editor.action.insertCursorAtEndOfEachLineSelected`,label:a.Td(`mutlicursor.insertAtEndOfEachLineSelected`,`Add Cursors to Line Ends`),alias:`Add Cursors to Line Ends`,precondition:void 0,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:1575,weight:100},menuOpts:{menuId:a.ca.MenubarSelectionMenu,group:`3_multi`,title:a.Td({key:`miInsertCursorAtEndOfEachLineSelected`,comment:[`&& denotes a mnemonic`]},`Add C&&ursors to Line Ends`),order:4}})}getCursorsForSelection(e,t,n){if(!e.isEmpty()){for(let r=e.startLineNumber;r<e.endLineNumber;r++){let e=t.getLineMaxColumn(r);n.push(new a.Dl(r,e,r,e))}e.endColumn>1&&n.push(new a.Dl(e.endLineNumber,e.endColumn,e.endLineNumber,e.endColumn))}}run(e,t){if(!t.hasModel())return;let n=t.getModel(),r=t.getSelections(),i=t._getViewModel(),a=i.getCursorStates(),o=[];r.forEach(e=>this.getCursorsForSelection(e,n,o)),o.length>0&&t.setSelections(o),kg(a,i.getCursorStates())}},Ng=class extends a.Gi{constructor(){super({id:`editor.action.addCursorsToBottom`,label:a.Td(`mutlicursor.addCursorsToBottom`,`Add Cursors To Bottom`),alias:`Add Cursors To Bottom`,precondition:void 0})}run(e,t){if(!t.hasModel())return;let n=t.getSelections(),r=t.getModel().getLineCount(),i=[];for(let e=n[0].startLineNumber;e<=r;e++)i.push(new a.Dl(e,n[0].startColumn,e,n[0].endColumn));let o=t._getViewModel(),s=o.getCursorStates();i.length>0&&t.setSelections(i),kg(s,o.getCursorStates())}},Pg=class extends a.Gi{constructor(){super({id:`editor.action.addCursorsToTop`,label:a.Td(`mutlicursor.addCursorsToTop`,`Add Cursors To Top`),alias:`Add Cursors To Top`,precondition:void 0})}run(e,t){if(!t.hasModel())return;let n=t.getSelections(),r=[];for(let e=n[0].startLineNumber;e>=1;e--)r.push(new a.Dl(e,n[0].startColumn,e,n[0].endColumn));let i=t._getViewModel(),o=i.getCursorStates();r.length>0&&t.setSelections(r),kg(o,i.getCursorStates())}},Fg=class{constructor(e,t,n){this.selections=e,this.revealRange=t,this.revealScrollType=n}},Ig=class e{constructor(e,t,n,r,i,a,o){this._editor=e,this.findController=t,this.isDisconnectedFromFindController=n,this.searchText=r,this.wholeWord=i,this.matchCase=a,this.currentMatch=o}static create(t,n){if(!t.hasModel())return null;let r=n.getState();if(!t.hasTextFocus()&&r.isRevealed&&r.searchString.length>0)return new e(t,n,!1,r.searchString,r.wholeWord,r.matchCase,null);let i=!1,o,s,c=t.getSelections();c.length===1&&c[0].isEmpty()?(i=!0,o=!0,s=!0):(o=r.wholeWord,s=r.matchCase);let l=t.getSelection(),u,d=null;if(l.isEmpty()){let e=t.getConfiguredWordAtPosition(l.getStartPosition());if(!e)return null;u=e.word,d=new a.Dl(l.startLineNumber,e.startColumn,l.startLineNumber,e.endColumn)}else u=t.getModel().getValueInRange(l).replace(/\r\n/g,`
148
+ `);return new e(t,n,i,u,o,s,d)}addSelectionToNextFindMatch(){if(!this._editor.hasModel())return null;let e=this._getNextMatch();return e?new Fg(this._editor.getSelections().concat(e),e,0):null}moveSelectionToNextFindMatch(){if(!this._editor.hasModel())return null;let e=this._getNextMatch();if(!e)return null;let t=this._editor.getSelections();return new Fg(t.slice(0,t.length-1).concat(e),e,0)}_getNextMatch(){if(!this._editor.hasModel())return null;if(this.currentMatch){let e=this.currentMatch;return this.currentMatch=null,e}this.findController.highlightFindOptions();let e=this._editor.getSelections(),t=e[e.length-1],n=this._editor.getModel().findNextMatch(this.searchText,t.getEndPosition(),!1,this.matchCase,this.wholeWord?this._editor.getOption(118):null,!1);return n?new a.Dl(n.range.startLineNumber,n.range.startColumn,n.range.endLineNumber,n.range.endColumn):null}addSelectionToPreviousFindMatch(){if(!this._editor.hasModel())return null;let e=this._getPreviousMatch();return e?new Fg(this._editor.getSelections().concat(e),e,0):null}moveSelectionToPreviousFindMatch(){if(!this._editor.hasModel())return null;let e=this._getPreviousMatch();if(!e)return null;let t=this._editor.getSelections();return new Fg(t.slice(0,t.length-1).concat(e),e,0)}_getPreviousMatch(){if(!this._editor.hasModel())return null;if(this.currentMatch){let e=this.currentMatch;return this.currentMatch=null,e}this.findController.highlightFindOptions();let e=this._editor.getSelections(),t=e[e.length-1],n=this._editor.getModel().findPreviousMatch(this.searchText,t.getStartPosition(),!1,this.matchCase,this.wholeWord?this._editor.getOption(118):null,!1);return n?new a.Dl(n.range.startLineNumber,n.range.startColumn,n.range.endLineNumber,n.range.endColumn):null}selectAll(e){if(!this._editor.hasModel())return[];this.findController.highlightFindOptions();let t=this._editor.getModel();return e?t.findMatches(this.searchText,e,!1,this.matchCase,this.wholeWord?this._editor.getOption(118):null,!1,1073741824):t.findMatches(this.searchText,!0,!1,this.matchCase,this.wholeWord?this._editor.getOption(118):null,!1,1073741824)}},Lg=class e extends a.Xl{constructor(e){super(),this._sessionDispose=this._register(new a.Zl),this._editor=e,this._ignoreSelectionChange=!1,this._session=null}static get(t){return t.getContribution(e.ID)}dispose(){this._endSession(),super.dispose()}_beginSessionIfNeeded(e){if(!this._session){let t=Ig.create(this._editor,e);if(!t)return;this._session=t;let n={searchString:this._session.searchText};this._session.isDisconnectedFromFindController&&(n.wholeWordOverride=1,n.matchCaseOverride=1,n.isRegexOverride=2),e.getState().change(n,!1),this._sessionDispose.add(this._editor.onDidChangeCursorSelection(e=>{this._ignoreSelectionChange||this._endSession()})),this._sessionDispose.add(this._editor.onDidBlurEditorText(()=>{this._endSession()})),this._sessionDispose.add(e.getState().onFindReplaceStateChange(e=>{(e.matchCase||e.wholeWord)&&this._endSession()}))}}_endSession(){this._sessionDispose.clear(),this._session&&this._session.isDisconnectedFromFindController&&this._session.findController.getState().change({wholeWordOverride:0,matchCaseOverride:0,isRegexOverride:0},!1),this._session=null}_setSelections(e){this._ignoreSelectionChange=!0,this._editor.setSelections(e),this._ignoreSelectionChange=!1}_expandEmptyToWord(e,t){if(!t.isEmpty())return t;let n=this._editor.getConfiguredWordAtPosition(t.getStartPosition());return n?new a.Dl(t.startLineNumber,n.startColumn,t.startLineNumber,n.endColumn):t}_applySessionResult(e){e&&(this._setSelections(e.selections),e.revealRange&&this._editor.revealRangeInCenterIfOutsideViewport(e.revealRange,e.revealScrollType))}getSession(e){return this._session}addSelectionToNextFindMatch(e){if(this._editor.hasModel()){if(!this._session){let t=this._editor.getSelections();if(t.length>1){let n=e.getState().matchCase;if(!qg(this._editor.getModel(),t,n)){let e=this._editor.getModel(),n=[];for(let r=0,i=t.length;r<i;r++)n[r]=this._expandEmptyToWord(e,t[r]);this._editor.setSelections(n);return}}}this._beginSessionIfNeeded(e),this._session&&this._applySessionResult(this._session.addSelectionToNextFindMatch())}}addSelectionToPreviousFindMatch(e){this._beginSessionIfNeeded(e),this._session&&this._applySessionResult(this._session.addSelectionToPreviousFindMatch())}moveSelectionToNextFindMatch(e){this._beginSessionIfNeeded(e),this._session&&this._applySessionResult(this._session.moveSelectionToNextFindMatch())}moveSelectionToPreviousFindMatch(e){this._beginSessionIfNeeded(e),this._session&&this._applySessionResult(this._session.moveSelectionToPreviousFindMatch())}selectAll(e){if(!this._editor.hasModel())return;let t=null,n=e.getState();if(n.isRevealed&&n.searchString.length>0&&n.isRegex){let e=this._editor.getModel();t=n.searchScope?e.findMatches(n.searchString,n.searchScope,n.isRegex,n.matchCase,n.wholeWord?this._editor.getOption(118):null,!1,1073741824):e.findMatches(n.searchString,!0,n.isRegex,n.matchCase,n.wholeWord?this._editor.getOption(118):null,!1,1073741824)}else{if(this._beginSessionIfNeeded(e),!this._session)return;t=this._session.selectAll(n.searchScope)}if(t.length>0){let e=this._editor.getSelection();for(let n=0,r=t.length;n<r;n++){let r=t[n];if(r.range.intersectRanges(e)){t[n]=t[0],t[0]=r;break}}this._setSelections(t.map(e=>new a.Dl(e.range.startLineNumber,e.range.startColumn,e.range.endLineNumber,e.range.endColumn)))}}};Lg.ID=`editor.contrib.multiCursorController`;var Rg=class extends a.Gi{run(e,t){let n=Lg.get(t);if(!n)return;let r=V.get(t);if(!r)return;let i=t._getViewModel();if(i){let e=i.getCursorStates();this._run(n,r),kg(e,i.getCursorStates())}}},zg=class extends Rg{constructor(){super({id:`editor.action.addSelectionToNextFindMatch`,label:a.Td(`addSelectionToNextFindMatch`,`Add Selection To Next Find Match`),alias:`Add Selection To Next Find Match`,precondition:void 0,kbOpts:{kbExpr:o.kn.focus,primary:2082,weight:100},menuOpts:{menuId:a.ca.MenubarSelectionMenu,group:`3_multi`,title:a.Td({key:`miAddSelectionToNextFindMatch`,comment:[`&& denotes a mnemonic`]},`Add &&Next Occurrence`),order:5}})}_run(e,t){e.addSelectionToNextFindMatch(t)}},Bg=class extends Rg{constructor(){super({id:`editor.action.addSelectionToPreviousFindMatch`,label:a.Td(`addSelectionToPreviousFindMatch`,`Add Selection To Previous Find Match`),alias:`Add Selection To Previous Find Match`,precondition:void 0,menuOpts:{menuId:a.ca.MenubarSelectionMenu,group:`3_multi`,title:a.Td({key:`miAddSelectionToPreviousFindMatch`,comment:[`&& denotes a mnemonic`]},`Add P&&revious Occurrence`),order:6}})}_run(e,t){e.addSelectionToPreviousFindMatch(t)}},Vg=class extends Rg{constructor(){super({id:`editor.action.moveSelectionToNextFindMatch`,label:a.Td(`moveSelectionToNextFindMatch`,`Move Last Selection To Next Find Match`),alias:`Move Last Selection To Next Find Match`,precondition:void 0,kbOpts:{kbExpr:o.kn.focus,primary:a.Rl(2089,2082),weight:100}})}_run(e,t){e.moveSelectionToNextFindMatch(t)}},Hg=class extends Rg{constructor(){super({id:`editor.action.moveSelectionToPreviousFindMatch`,label:a.Td(`moveSelectionToPreviousFindMatch`,`Move Last Selection To Previous Find Match`),alias:`Move Last Selection To Previous Find Match`,precondition:void 0})}_run(e,t){e.moveSelectionToPreviousFindMatch(t)}},Ug=class extends Rg{constructor(){super({id:`editor.action.selectHighlights`,label:a.Td(`selectAllOccurrencesOfFindMatch`,`Select All Occurrences of Find Match`),alias:`Select All Occurrences of Find Match`,precondition:void 0,kbOpts:{kbExpr:o.kn.focus,primary:3114,weight:100},menuOpts:{menuId:a.ca.MenubarSelectionMenu,group:`3_multi`,title:a.Td({key:`miSelectHighlights`,comment:[`&& denotes a mnemonic`]},`Select All &&Occurrences`),order:7}})}_run(e,t){e.selectAll(t)}},Wg=class extends Rg{constructor(){super({id:`editor.action.changeAll`,label:a.Td(`changeAll.label`,`Change All Occurrences`),alias:`Change All Occurrences`,precondition:a.Ta.and(o.kn.writable,o.kn.editorTextFocus),kbOpts:{kbExpr:o.kn.editorTextFocus,primary:2108,weight:100},contextMenuOpts:{group:`1_modification`,order:1.2}})}_run(e,t){e.selectAll(t)}},Gg=class{constructor(e,t,n,r,i){this._model=e,this._searchText=t,this._matchCase=n,this._wordSeparators=r,this._modelVersionId=this._model.getVersionId(),this._cachedFindMatches=null,i&&this._model===i._model&&this._searchText===i._searchText&&this._matchCase===i._matchCase&&this._wordSeparators===i._wordSeparators&&this._modelVersionId===i._modelVersionId&&(this._cachedFindMatches=i._cachedFindMatches)}findMatches(){return this._cachedFindMatches===null&&(this._cachedFindMatches=this._model.findMatches(this._searchText,!0,!1,this._matchCase,this._wordSeparators,!1).map(e=>e.range),this._cachedFindMatches.sort(a.Ol.compareRangesUsingStarts)),this._cachedFindMatches}},Kg=class e extends a.Xl{constructor(e,t){super(),this._languageFeaturesService=t,this.editor=e,this._isEnabled=e.getOption(98),this._decorations=e.createDecorationsCollection(),this.updateSoon=this._register(new a.ys(()=>this._update(),300)),this.state=null,this._register(e.onDidChangeConfiguration(t=>{this._isEnabled=e.getOption(98)})),this._register(e.onDidChangeCursorSelection(e=>{this._isEnabled&&(e.selection.isEmpty()?e.reason===3?(this.state&&this._setState(null),this.updateSoon.schedule()):this._setState(null):this._update())})),this._register(e.onDidChangeModel(e=>{this._setState(null)})),this._register(e.onDidChangeModelContent(e=>{this._isEnabled&&this.updateSoon.schedule()}));let n=V.get(e);n&&this._register(n.getState().onFindReplaceStateChange(e=>{this._update()}))}_update(){this._setState(e._createState(this.state,this._isEnabled,this.editor))}static _createState(e,t,n){if(!t||!n.hasModel())return null;let r=n.getSelection();if(r.startLineNumber!==r.endLineNumber)return null;let i=Lg.get(n);if(!i)return null;let a=V.get(n);if(!a)return null;let o=i.getSession(a);if(!o){let e=n.getSelections();if(e.length>1){let t=a.getState().matchCase;if(!qg(n.getModel(),e,t))return null}o=Ig.create(n,a)}if(!o||o.currentMatch||/^[ \t]+$/.test(o.searchText)||o.searchText.length>200)return null;let s=a.getState(),c=s.matchCase;if(s.isRevealed){let e=s.searchString;c||(e=e.toLowerCase());let t=o.searchText;if(c||(t=t.toLowerCase()),e===t&&o.matchCase===s.matchCase&&o.wholeWord===s.wholeWord&&!s.isRegex)return null}return new Gg(n.getModel(),o.searchText,o.matchCase,o.wholeWord?n.getOption(118):null,e)}_setState(t){if(this.state=t,!this.state){this._decorations.clear();return}if(!this.editor.hasModel())return;let n=this.editor.getModel();if(n.isTooLargeForTokenization())return;let r=this.state.findMatches(),i=this.editor.getSelections();i.sort(a.Ol.compareRangesUsingStarts);let o=[];for(let e=0,t=0,n=r.length,s=i.length;e<n;){let n=r[e];if(t>=s)o.push(n),e++;else{let r=a.Ol.compareRangesUsingStarts(n,i[t]);r<0?((i[t].isEmpty()||!a.Ol.areIntersecting(n,i[t]))&&o.push(n),e++):(r>0||e++,t++)}}let s=this._languageFeaturesService.documentHighlightProvider.has(n)&&this.editor.getOption(73),c=o.map(t=>({range:t,options:s?e._SELECTION_HIGHLIGHT:e._SELECTION_HIGHLIGHT_OVERVIEW}));this._decorations.set(c)}dispose(){this._setState(null),super.dispose()}};Kg.ID=`editor.contrib.selectionHighlighter`,Kg._SELECTION_HIGHLIGHT_OVERVIEW=a.f.register({description:`selection-highlight-overview`,stickiness:1,className:`selectionHighlight`,minimap:{color:a.xa(a.ai),position:a.oc.Inline},overviewRuler:{color:a.xa(a.fi),position:a.sc.Center}}),Kg._SELECTION_HIGHLIGHT=a.f.register({description:`selection-highlight`,stickiness:1,className:`selectionHighlight`}),Kg=Dg([Og(1,a.Zo)],Kg);function qg(e,t,n){let r=Jg(e,t[0],!n);for(let i=1,a=t.length;i<a;i++){let a=t[i];if(a.isEmpty()||r!==Jg(e,a,!n))return!1}return!0}function Jg(e,t,n){let r=e.getValueInRange(t);return n?r.toLowerCase():r}var Yg=class extends a.Gi{constructor(){super({id:`editor.action.focusNextCursor`,label:a.Td(`mutlicursor.focusNextCursor`,`Focus Next Cursor`),description:{description:a.Td(`mutlicursor.focusNextCursor.description`,`Focuses the next cursor`),args:[]},alias:`Focus Next Cursor`,precondition:void 0})}run(e,t,n){if(!t.hasModel())return;let r=t._getViewModel();if(r.cursorConfig.readOnly)return;r.model.pushStackElement();let i=Array.from(r.getCursorStates()),a=i.shift();a&&(i.push(a),r.setCursorStates(n.source,3,i),r.revealPrimaryCursor(n.source,!0),kg(i,r.getCursorStates()))}},Xg=class extends a.Gi{constructor(){super({id:`editor.action.focusPreviousCursor`,label:a.Td(`mutlicursor.focusPreviousCursor`,`Focus Previous Cursor`),description:{description:a.Td(`mutlicursor.focusPreviousCursor.description`,`Focuses the previous cursor`),args:[]},alias:`Focus Previous Cursor`,precondition:void 0})}run(e,t,n){if(!t.hasModel())return;let r=t._getViewModel();if(r.cursorConfig.readOnly)return;r.model.pushStackElement();let i=Array.from(r.getCursorStates()),a=i.pop();a&&(i.unshift(a),r.setCursorStates(n.source,3,i),r.revealPrimaryCursor(n.source,!0),kg(i,r.getCursorStates()))}};a.ta(Lg.ID,Lg),a.ta(Kg.ID,Kg),a.$i(Ag),a.$i(jg),a.$i(Mg),a.$i(zg),a.$i(Bg),a.$i(Vg),a.$i(Hg),a.$i(Ug),a.$i(Wg),a.$i(Ng),a.$i(Pg),a.$i(Yg),a.$i(Xg);var Zg=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Qg={Visible:new a.Da(`parameterHintsVisible`,!1),MultipleSignatures:new a.Da(`parameterHintsMultipleSignatures`,!1)};function $g(e,t,n,r,i){return Zg(this,void 0,void 0,function*(){let o=e.ordered(t);for(let e of o)try{let a=yield e.provideSignatureHelp(t,n,i,r);if(a)return a}catch(e){a.pu(e)}})}a.ja.registerCommand(`_executeSignatureHelpProvider`,(e,...t)=>Zg(void 0,void 0,void 0,function*(){let[n,r,i]=t;a.Cu(a.Al.isUri(n)),a.Cu(a.kl.isIPosition(r)),a.Cu(typeof i==`string`||!i);let o=e.get(a.Zo),s=yield e.get(a.Ra).createModelReference(n);try{let e=yield $g(o.signatureHelpProvider,s.object.textEditorModel,a.kl.lift(r),{triggerKind:a.vl.Invoke,isRetrigger:!1,triggerCharacter:i},a.Bl.None);return e?(setTimeout(()=>e.dispose(),0),e.value):void 0}finally{s.dispose()}}));var e_=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},t_;(function(e){e.Default={type:0};class t{constructor(e,t){this.request=e,this.previouslyActiveHints=t,this.type=2}}e.Pending=t;class n{constructor(e){this.hints=e,this.type=1}}e.Active=n})(t_||={});var n_=class e extends a.Xl{constructor(t,n,r=e.DEFAULT_DELAY){super(),this._onChangedHints=this._register(new a.Ul),this.onChangedHints=this._onChangedHints.event,this.triggerOnType=!1,this._state=t_.Default,this._pendingTriggers=[],this._lastSignatureHelpResult=this._register(new a.$l),this.triggerChars=new a.os,this.retriggerChars=new a.os,this.triggerId=0,this.editor=t,this.providers=n,this.throttledDelayer=new a.ms(r),this._register(this.editor.onDidBlurEditorWidget(()=>this.cancel())),this._register(this.editor.onDidChangeConfiguration(()=>this.onEditorConfigurationChange())),this._register(this.editor.onDidChangeModel(e=>this.onModelChanged())),this._register(this.editor.onDidChangeModelLanguage(e=>this.onModelChanged())),this._register(this.editor.onDidChangeCursorSelection(e=>this.onCursorChange(e))),this._register(this.editor.onDidChangeModelContent(e=>this.onModelContentChange())),this._register(this.providers.onDidChange(this.onModelChanged,this)),this._register(this.editor.onDidType(e=>this.onDidType(e))),this.onEditorConfigurationChange(),this.onModelChanged()}get state(){return this._state}set state(e){this._state.type===2&&this._state.request.cancel(),this._state=e}cancel(e=!1){this.state=t_.Default,this.throttledDelayer.cancel(),e||this._onChangedHints.fire(void 0)}trigger(e,t){let n=this.editor.getModel();if(!n||!this.providers.has(n))return;let r=++this.triggerId;this._pendingTriggers.push(e),this.throttledDelayer.trigger(()=>this.doTrigger(r),t).catch(a.fu)}next(){if(this.state.type!==1)return;let e=this.state.hints.signatures.length,t=this.state.hints.activeSignature,n=t%e===e-1,r=this.editor.getOption(77).cycle;if((e<2||n)&&!r){this.cancel();return}this.updateActiveSignature(n&&r?0:t+1)}previous(){if(this.state.type!==1)return;let e=this.state.hints.signatures.length,t=this.state.hints.activeSignature,n=t===0,r=this.editor.getOption(77).cycle;if((e<2||n)&&!r){this.cancel();return}this.updateActiveSignature(n&&r?e-1:t-1)}updateActiveSignature(e){this.state.type===1&&(this.state=new t_.Active(Object.assign(Object.assign({},this.state.hints),{activeSignature:e})),this._onChangedHints.fire(this.state.hints))}doTrigger(e){return e_(this,void 0,void 0,function*(){let t=this.state.type===1||this.state.type===2,n=this.getLastActiveHints();if(this.cancel(!0),this._pendingTriggers.length===0)return!1;let r=this._pendingTriggers.reduce(r_);this._pendingTriggers=[];let i={triggerKind:r.triggerKind,triggerCharacter:r.triggerCharacter,isRetrigger:t,activeSignatureHelp:n};if(!this.editor.hasModel())return!1;let o=this.editor.getModel(),s=this.editor.getPosition();this.state=new t_.Pending(a.Cs(e=>$g(this.providers,o,s,i,e)),n);try{let t=yield this.state.request;return e===this.triggerId?!t||!t.value.signatures||t.value.signatures.length===0?(t?.dispose(),this._lastSignatureHelpResult.clear(),this.cancel(),!1):(this.state=new t_.Active(t.value),this._lastSignatureHelpResult.value=t,this._onChangedHints.fire(this.state.hints),!0):(t?.dispose(),!1)}catch(t){return e===this.triggerId&&(this.state=t_.Default),a.fu(t),!1}})}getLastActiveHints(){switch(this.state.type){case 1:return this.state.hints;case 2:return this.state.previouslyActiveHints;default:return}}get isTriggered(){return this.state.type===1||this.state.type===2||this.throttledDelayer.isTriggered()}onModelChanged(){this.cancel(),this.triggerChars=new a.os,this.retriggerChars=new a.os;let e=this.editor.getModel();if(e)for(let t of this.providers.ordered(e)){for(let e of t.signatureHelpTriggerCharacters||[])this.triggerChars.add(e.charCodeAt(0)),this.retriggerChars.add(e.charCodeAt(0));for(let e of t.signatureHelpRetriggerCharacters||[])this.retriggerChars.add(e.charCodeAt(0))}}onDidType(e){if(!this.triggerOnType)return;let t=e.length-1,n=e.charCodeAt(t);(this.triggerChars.has(n)||this.isTriggered&&this.retriggerChars.has(n))&&this.trigger({triggerKind:a.vl.TriggerCharacter,triggerCharacter:e.charAt(t)})}onCursorChange(e){e.source===`mouse`?this.cancel():this.isTriggered&&this.trigger({triggerKind:a.vl.ContentChange})}onModelContentChange(){this.isTriggered&&this.trigger({triggerKind:a.vl.ContentChange})}onEditorConfigurationChange(){this.triggerOnType=this.editor.getOption(77).enabled,this.triggerOnType||this.cancel()}dispose(){this.cancel(!0),super.dispose()}};n_.DEFAULT_DELAY=120;function r_(e,t){switch(t.triggerKind){case a.vl.Invoke:return t;case a.vl.ContentChange:return e;case a.vl.TriggerCharacter:default:return t}}var i_=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},a_=function(e,t){return function(n,r){t(n,r,e)}},Z=a.za,o_=o.Ut(`parameter-hints-next`,a.Tl.chevronDown,a.Td(`parameterHintsNextIcon`,`Icon for show next parameter hint.`)),s_=o.Ut(`parameter-hints-previous`,a.Tl.chevronUp,a.Td(`parameterHintsPreviousIcon`,`Icon for show previous parameter hint.`)),c_=class e extends a.Xl{constructor(e,t,n,r,i){super(),this.editor=e,this.renderDisposeables=this._register(new a.Zl),this.visible=!1,this.announcedLabel=null,this.allowEditorOverflow=!0,this.markdownRenderer=this._register(new bo({editor:e},r,n)),this.model=this._register(new n_(e,i.signatureHelpProvider)),this.keyVisible=Qg.Visible.bindTo(t),this.keyMultipleSignatures=Qg.MultipleSignatures.bindTo(t),this._register(this.model.onChangedHints(e=>{e?(this.show(),this.render(e)):this.hide()}))}createParameterHintDOMNodes(){let e=Z(`.editor-widget.parameter-hints-widget`),t=a.Xa(e,Z(`.phwrapper`));t.tabIndex=-1;let n=a.Xa(t,Z(`.controls`)),r=a.Xa(n,Z(`.button`+a.va.asCSSSelector(s_))),i=a.Xa(n,Z(`.overloads`)),s=a.Xa(n,Z(`.button`+a.va.asCSSSelector(o_)));this._register(a.Ka(r,`click`,e=>{a.Ha.stop(e),this.previous()})),this._register(a.Ka(s,`click`,e=>{a.Ha.stop(e),this.next()}));let c=Z(`.body`),l=new o.Tn(c,{alwaysConsumeMouseWheel:!0});this._register(l),t.appendChild(l.getDomNode());let u=a.Xa(c,Z(`.signature`)),d=a.Xa(c,Z(`.docs`));e.style.userSelect=`text`,this.domNodes={element:e,signature:u,overloads:i,docs:d,scrollbar:l},this.editor.addContentWidget(this),this.hide(),this._register(this.editor.onDidChangeCursorSelection(e=>{this.visible&&this.editor.layoutContentWidget(this)}));let f=()=>{if(!this.domNodes)return;let e=this.editor.getOption(45);this.domNodes.element.style.fontSize=`${e.fontSize}px`,this.domNodes.element.style.lineHeight=`${e.lineHeight/e.fontSize}`};f(),this._register(a.Wl.chain(this.editor.onDidChangeConfiguration.bind(this.editor)).filter(e=>e.hasChanged(45)).on(f,null)),this._register(this.editor.onDidLayoutChange(e=>this.updateMaxHeight())),this.updateMaxHeight()}show(){this.visible||(this.domNodes||this.createParameterHintDOMNodes(),this.keyVisible.set(!0),this.visible=!0,setTimeout(()=>{var e;(e=this.domNodes)==null||e.element.classList.add(`visible`)},100),this.editor.layoutContentWidget(this))}hide(){var e;this.renderDisposeables.clear(),this.visible&&(this.keyVisible.reset(),this.visible=!1,this.announcedLabel=null,(e=this.domNodes)==null||e.element.classList.remove(`visible`),this.editor.layoutContentWidget(this))}getPosition(){return this.visible?{position:this.editor.getPosition(),preference:[1,2]}:null}render(e){if(this.renderDisposeables.clear(),!this.domNodes)return;let t=e.signatures.length>1;this.domNodes.element.classList.toggle(`multiple`,t),this.keyMultipleSignatures.set(t),this.domNodes.signature.innerText=``,this.domNodes.docs.innerText=``;let n=e.signatures[e.activeSignature];if(!n)return;let r=a.Xa(this.domNodes.signature,Z(`.code`)),i=this.editor.getOption(45);r.style.fontSize=`${i.fontSize}px`,r.style.fontFamily=i.fontFamily;let s=n.parameters.length>0,c=n.activeParameter??e.activeParameter;if(s)this.renderParameters(r,n,c);else{let e=a.Xa(r,Z(`span`));e.textContent=n.label}let l=n.parameters[c];if(l?.documentation){let e=Z(`span.documentation`);if(typeof l.documentation==`string`)e.textContent=l.documentation;else{let t=this.renderMarkdownDocs(l.documentation);e.appendChild(t.element)}a.Xa(this.domNodes.docs,Z(`p`,{},e))}if(n.documentation!==void 0)if(typeof n.documentation==`string`)a.Xa(this.domNodes.docs,Z(`p`,{},n.documentation));else{let e=this.renderMarkdownDocs(n.documentation);a.Xa(this.domNodes.docs,e.element)}let u=this.hasDocs(n,l);if(this.domNodes.signature.classList.toggle(`has-docs`,u),this.domNodes.docs.classList.toggle(`empty`,!u),this.domNodes.overloads.textContent=String(e.activeSignature+1).padStart(e.signatures.length.toString().length,`0`)+`/`+e.signatures.length,l){let e=``,t=n.parameters[c];e=Array.isArray(t.label)?n.label.substring(t.label[0],t.label[1]):t.label,t.documentation&&(e+=typeof t.documentation==`string`?`, ${t.documentation}`:`, ${t.documentation.value}`),n.documentation&&(e+=typeof n.documentation==`string`?`, ${n.documentation}`:`, ${n.documentation.value}`),this.announcedLabel!==e&&(o.Zn(a.Td(`hint`,`{0}, hint`,e)),this.announcedLabel=e)}this.editor.layoutContentWidget(this),this.domNodes.scrollbar.scanDomNode()}renderMarkdownDocs(e){let t=this.renderDisposeables.add(this.markdownRenderer.render(e,{asyncRenderCallback:()=>{var e;(e=this.domNodes)==null||e.scrollbar.scanDomNode()}}));return t.element.classList.add(`markdown-docs`),t}hasDocs(e,t){return!!(t&&typeof t.documentation==`string`&&a.xu(t.documentation).length>0||t&&typeof t.documentation==`object`&&a.xu(t.documentation).value.length>0||e.documentation&&typeof e.documentation==`string`&&a.xu(e.documentation).length>0||e.documentation&&typeof e.documentation==`object`&&a.xu(e.documentation.value).length>0)}renderParameters(e,t,n){let[r,i]=this.getParameterLabelOffsets(t,n),o=document.createElement(`span`);o.textContent=t.label.substring(0,r);let s=document.createElement(`span`);s.textContent=t.label.substring(r,i),s.className=`parameter active`;let c=document.createElement(`span`);c.textContent=t.label.substring(i),a.Xa(e,o,s,c)}getParameterLabelOffsets(e,t){let n=e.parameters[t];if(!n)return[0,0];if(Array.isArray(n.label))return n.label;if(n.label.length){let t=RegExp(`(\\W|^)${a.Ic(n.label)}(?=\\W|$)`,`g`);t.test(e.label);let r=t.lastIndex-n.label.length;return r>=0?[r,t.lastIndex]:[0,0]}else return[0,0]}next(){this.editor.focus(),this.model.next()}previous(){this.editor.focus(),this.model.previous()}cancel(){this.model.cancel()}getDomNode(){return this.domNodes||this.createParameterHintDOMNodes(),this.domNodes.element}getId(){return e.ID}trigger(e){this.model.trigger(e,0)}updateMaxHeight(){if(!this.domNodes)return;let e=`${Math.max(this.editor.getLayoutInfo().height/4,250)}px`;this.domNodes.element.style.maxHeight=e;let t=this.domNodes.element.getElementsByClassName(`phwrapper`);t.length&&(t[0].style.maxHeight=e)}};c_.ID=`editor.widget.parameterHintsWidget`,c_=i_([a_(1,a.Ea),a_(2,a.n),a_(3,a.Js),a_(4,a.Zo)],c_);var l_=a.Ti(`editorHoverWidget.highlightForeground`,{dark:a.zr,light:a.zr,hcDark:a.zr,hcLight:a.zr},a.Td(`editorHoverWidgetHighlightForeground`,`Foreground color of the active item in the parameter hint.`));a.ba((e,t)=>{let n=e.getColor(a.An);if(n){let r=a.wa(e.type)?2:1;t.addRule(`.monaco-editor .parameter-hints-widget { border: ${r}px solid ${n}; }`),t.addRule(`.monaco-editor .parameter-hints-widget.multiple .body { border-left: 1px solid ${n.transparent(.5)}; }`),t.addRule(`.monaco-editor .parameter-hints-widget .signature.has-docs { border-bottom: 1px solid ${n.transparent(.5)}; }`)}let r=e.getColor(a.kn);r&&t.addRule(`.monaco-editor .parameter-hints-widget { background-color: ${r}; }`);let i=e.getColor(a.Fi);i&&t.addRule(`.monaco-editor .parameter-hints-widget a { color: ${i}; }`);let o=e.getColor(a.Pi);o&&t.addRule(`.monaco-editor .parameter-hints-widget a:hover { color: ${o}; }`);let s=e.getColor(a.jn);s&&t.addRule(`.monaco-editor .parameter-hints-widget { color: ${s}; }`);let c=e.getColor(a.Ni);c&&t.addRule(`.monaco-editor .parameter-hints-widget code { background-color: ${c}; }`);let l=e.getColor(l_);l&&t.addRule(`.monaco-editor .parameter-hints-widget .parameter.active { color: ${l}}`)});var u_=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},d_=function(e,t){return function(n,r){t(n,r,e)}},f_=class e extends a.Xl{constructor(e,t){super(),this.editor=e,this.widget=this._register(t.createInstance(c_,this.editor))}static get(t){return t.getContribution(e.ID)}cancel(){this.widget.cancel()}previous(){this.widget.previous()}next(){this.widget.next()}trigger(e){this.widget.trigger(e)}};f_.ID=`editor.controller.parameterHints`,f_=u_([d_(1,a.fc)],f_);var p_=class extends a.Gi{constructor(){super({id:`editor.action.triggerParameterHints`,label:a.Td(`parameterHints.trigger.label`,`Trigger Parameter Hints`),alias:`Trigger Parameter Hints`,precondition:o.kn.hasSignatureHelpProvider,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:3082,weight:100}})}run(e,t){let n=f_.get(t);n&&n.trigger({triggerKind:a.vl.Invoke})}};a.ta(f_.ID,f_),a.$i(p_);var m_=175,h_=a.Ki.bindToContribution(f_.get);a.ea(new h_({id:`closeParameterHints`,precondition:Qg.Visible,handler:e=>e.cancel(),kbOpts:{weight:m_,kbExpr:o.kn.focus,primary:9,secondary:[1033]}})),a.ea(new h_({id:`showPrevParameterHint`,precondition:a.Ta.and(Qg.Visible,Qg.MultipleSignatures),handler:e=>e.previous(),kbOpts:{weight:m_,kbExpr:o.kn.focus,primary:16,secondary:[528],mac:{primary:16,secondary:[528,302]}}})),a.ea(new h_({id:`showNextParameterHint`,precondition:a.Ta.and(Qg.Visible,Qg.MultipleSignatures),handler:e=>e.next(),kbOpts:{weight:m_,kbExpr:o.kn.focus,primary:18,secondary:[530],mac:{primary:18,secondary:[530,300]}}}));var g_=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},__=function(e,t){return function(n,r){t(n,r,e)}},v_=new a.Da(`renameInputVisible`,!1,a.Td(`renameInputVisible`,`Whether the rename input widget is visible`)),y_=class{constructor(e,t,n,r,i){this._editor=e,this._acceptKeybindings=t,this._themeService=n,this._keybindingService=r,this._disposables=new a.Zl,this.allowEditorOverflow=!0,this._visibleContextKey=v_.bindTo(i),this._editor.addContentWidget(this),this._disposables.add(this._editor.onDidChangeConfiguration(e=>{e.hasChanged(45)&&this._updateFont()})),this._disposables.add(n.onDidColorThemeChange(this._updateStyles,this))}dispose(){this._disposables.dispose(),this._editor.removeContentWidget(this)}getId(){return`__renameInputWidget`}getDomNode(){if(!this._domNode){this._domNode=document.createElement(`div`),this._domNode.className=`monaco-editor rename-box`,this._input=document.createElement(`input`),this._input.className=`rename-input`,this._input.type=`text`,this._input.setAttribute(`aria-label`,a.Td(`renameAriaLabel`,`Rename input. Type new name and press Enter to commit.`)),this._domNode.appendChild(this._input),this._label=document.createElement(`div`),this._label.className=`rename-label`,this._domNode.appendChild(this._label);let e=()=>{let[e,t]=this._acceptKeybindings;this._keybindingService.lookupKeybinding(e),this._label.innerText=a.Td({key:`label`,comment:[`placeholders are keybindings, e.g "F2 to Rename, Shift+F2 to Preview"`]},`{0} to Rename, {1} to Preview`,this._keybindingService.lookupKeybinding(e)?.getLabel(),this._keybindingService.lookupKeybinding(t)?.getLabel())};e(),this._disposables.add(this._keybindingService.onDidUpdateKeybindings(e)),this._updateFont(),this._updateStyles(this._themeService.getColorTheme())}return this._domNode}_updateStyles(e){if(!this._input||!this._domNode)return;let t=e.getColor(a.zi);this._domNode.style.backgroundColor=String(e.getColor(a.$n)??``),this._domNode.style.boxShadow=t?` 0 0 8px 2px ${t}`:``,this._domNode.style.color=String(e.getColor(a.fr)??``),this._input.style.backgroundColor=String(e.getColor(a.ur)??``);let n=e.getColor(a.dr);this._input.style.borderWidth=n?`1px`:`0px`,this._input.style.borderStyle=n?`solid`:`none`,this._input.style.borderColor=n?.toString()??`none`}_updateFont(){if(!this._input||!this._label)return;let e=this._editor.getOption(45);this._input.style.fontFamily=e.fontFamily,this._input.style.fontWeight=e.fontWeight,this._input.style.fontSize=`${e.fontSize}px`,this._label.style.fontSize=`${e.fontSize*.8}px`}getPosition(){return this._visible?{position:this._position,preference:[2,1]}:null}afterRender(e){e||this.cancelInput(!0)}acceptInput(e){var t;(t=this._currentAcceptInput)==null||t.call(this,e)}cancelInput(e){var t;(t=this._currentCancelInput)==null||t.call(this,e)}getInput(e,t,n,r,i,o){this._domNode.classList.toggle(`preview`,i),this._position=new a.kl(e.startLineNumber,e.startColumn),this._input.value=t,this._input.setAttribute(`selectionStart`,n.toString()),this._input.setAttribute(`selectionEnd`,r.toString()),this._input.size=Math.max((e.endColumn-e.startColumn)*1.1,20);let s=new a.Zl;return new Promise(e=>{this._currentCancelInput=t=>(this._currentAcceptInput=void 0,this._currentCancelInput=void 0,e(t),!0),this._currentAcceptInput=n=>{if(this._input.value.trim().length===0||this._input.value===t){this.cancelInput(!0);return}this._currentAcceptInput=void 0,this._currentCancelInput=void 0,e({newName:this._input.value,wantsPreview:i&&n})},s.add(o.onCancellationRequested(()=>this.cancelInput(!0))),s.add(this._editor.onDidBlurEditorWidget(()=>this.cancelInput(!1))),this._show()}).finally(()=>{s.dispose(),this._hide()})}_show(){this._editor.revealLineInCenterIfOutsideViewport(this._position.lineNumber,0),this._visible=!0,this._visibleContextKey.set(!0),this._editor.layoutContentWidget(this),setTimeout(()=>{this._input.focus(),this._input.setSelectionRange(parseInt(this._input.getAttribute(`selectionStart`)),parseInt(this._input.getAttribute(`selectionEnd`)))},100)}_hide(){this._visible=!1,this._visibleContextKey.reset(),this._editor.layoutContentWidget(this)}};y_=g_([__(2,a.ga),__(3,o.At),__(4,a.Ea)],y_);var b_=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},x_=function(e,t){return function(n,r){t(n,r,e)}},S_=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},C_=class{constructor(e,t,n){this.model=e,this.position=t,this._providerRenameIdx=0,this._providers=n.ordered(e)}hasProvider(){return this._providers.length>0}resolveRenameLocation(e){return S_(this,void 0,void 0,function*(){let t=[];for(this._providerRenameIdx=0;this._providerRenameIdx<this._providers.length;this._providerRenameIdx++){let n=this._providers[this._providerRenameIdx];if(!n.resolveRenameLocation)break;let r=yield n.resolveRenameLocation(this.model,this.position,e);if(r){if(r.rejectReason){t.push(r.rejectReason);continue}return r}}let n=this.model.getWordAtPosition(this.position);return n?{range:new a.Ol(this.position.lineNumber,n.startColumn,this.position.lineNumber,n.endColumn),text:n.word,rejectReason:t.length>0?t.join(`
149
+ `):void 0}:{range:a.Ol.fromPositions(this.position),text:``,rejectReason:t.length>0?t.join(`
150
+ `):void 0}})}provideRenameEdits(e,t){return S_(this,void 0,void 0,function*(){return this._provideRenameEdits(e,this._providerRenameIdx,[],t)})}_provideRenameEdits(e,t,n,r){return S_(this,void 0,void 0,function*(){let i=this._providers[t];if(!i)return{edits:[],rejectReason:n.join(`
151
+ `)};let o=yield i.provideRenameEdits(this.model,this.position,e,r);return o?o.rejectReason?this._provideRenameEdits(e,t+1,n.concat(o.rejectReason),r):o:this._provideRenameEdits(e,t+1,n.concat(a.Td(`no result`,`No result.`)),r)})}};function w_(e,t,n,r){return S_(this,void 0,void 0,function*(){let i=new C_(t,n,e),o=yield i.resolveRenameLocation(a.Bl.None);return o?.rejectReason?{edits:[],rejectReason:o.rejectReason}:i.provideRenameEdits(r,a.Bl.None)})}var T_=class e{constructor(e,t,n,r,i,o,s,c){this.editor=e,this._instaService=t,this._notificationService=n,this._bulkEditService=r,this._progressService=i,this._logService=o,this._configService=s,this._languageFeaturesService=c,this._disposableStore=new a.Zl,this._cts=new a.Vl,this._renameInputField=this._disposableStore.add(new a.hs(()=>this._disposableStore.add(this._instaService.createInstance(y_,this.editor,[`acceptRenameInput`,`acceptRenameInputWithPreview`]))))}static get(t){return t.getContribution(e.ID)}dispose(){this._disposableStore.dispose(),this._cts.dispose(!0)}run(){var e,t;return S_(this,void 0,void 0,function*(){if(this._cts.dispose(!0),!this.editor.hasModel())return;let n=this.editor.getPosition(),r=new C_(this.editor.getModel(),n,this._languageFeaturesService.renameProvider);if(!r.hasProvider())return;this._cts=new o.T(this.editor,5);let i;try{let e=r.resolveRenameLocation(this._cts.token);this._progressService.showWhile(e,250),i=yield e}catch(t){(e=k.get(this.editor))==null||e.showMessage(t||a.Td(`resolveRenameLocationFailed`,`An unknown error occurred while resolving rename location`),n);return}if(!i)return;if(i.rejectReason){(t=k.get(this.editor))==null||t.showMessage(i.rejectReason,n);return}if(this._cts.token.isCancellationRequested)return;this._cts.dispose(),this._cts=new o.T(this.editor,5,i.range);let s=this.editor.getSelection(),c=0,l=i.text.length;!a.Ol.isEmpty(s)&&!a.Ol.spansMultipleLines(s)&&a.Ol.containsRange(i.range,s)&&(c=Math.max(0,s.startColumn-i.range.startColumn),l=Math.min(i.range.endColumn,s.endColumn)-i.range.startColumn);let u=this._bulkEditService.hasPreviewHandler()&&this._configService.getValue(this.editor.getModel().uri,`editor.rename.enablePreview`),d=yield this._renameInputField.value.getInput(i.range,i.text,c,l,u,this._cts.token);if(typeof d==`boolean`){d&&this.editor.focus();return}this.editor.focus();let f=a.Ds(r.provideRenameEdits(d.newName,this._cts.token),this._cts.token).then(e=>S_(this,void 0,void 0,function*(){if(!(!e||!this.editor.hasModel())){if(e.rejectReason){this._notificationService.info(e.rejectReason);return}this.editor.setSelection(a.Ol.fromPositions(this.editor.getSelection().getPosition())),this._bulkEditService.apply(o.Pt.convert(e),{editor:this.editor,showPreview:d.wantsPreview,label:a.Td(`label`,`Renaming '{0}' to '{1}'`,i?.text,d.newName),code:`undoredo.rename`,quotableLabel:a.Td(`quotableLabel`,`Renaming {0} to {1}`,i?.text,d.newName),respectAutoSaveConfig:!0}).then(e=>{e.ariaSummary&&o.Zn(a.Td(`aria`,`Successfully renamed '{0}' to '{1}'. Summary: {2}`,i.text,d.newName,e.ariaSummary))}).catch(e=>{this._notificationService.error(a.Td(`rename.failedApply`,`Rename failed to apply edits`)),this._logService.error(e)})}}),e=>{this._notificationService.error(a.Td(`rename.failed`,`Rename failed to compute edits`)),this._logService.error(e)});return this._progressService.showWhile(f,250),f})}acceptRenameInput(e){this._renameInputField.value.acceptInput(e)}cancelRenameInput(){this._renameInputField.value.cancelInput(!0)}};T_.ID=`editor.contrib.renameController`,T_=b_([x_(1,a.fc),x_(2,o.vn),x_(3,o.Nt),x_(4,o.It),x_(5,a.$o),x_(6,o.nr),x_(7,a.Zo)],T_);var E_=class extends a.Gi{constructor(){super({id:`editor.action.rename`,label:a.Td(`rename.label`,`Rename Symbol`),alias:`Rename Symbol`,precondition:a.Ta.and(o.kn.writable,o.kn.hasRenameProvider),kbOpts:{kbExpr:o.kn.editorTextFocus,primary:60,weight:100},contextMenuOpts:{group:`1_modification`,order:1.1}})}runCommand(e,t){let n=e.get(a.dc),[r,i]=Array.isArray(t)&&t||[void 0,void 0];return a.Al.isUri(r)&&a.kl.isIPosition(i)?n.openCodeEditor({resource:r},n.getActiveCodeEditor()).then(e=>{e&&(e.setPosition(i),e.invokeWithinContext(t=>(this.reportTelemetry(t,e),this.run(t,e))))},a.fu):super.runCommand(e,t)}run(e,t){let n=T_.get(t);return n?n.run():Promise.resolve()}};a.ta(T_.ID,T_),a.$i(E_);var D_=a.Ki.bindToContribution(T_.get);a.ea(new D_({id:`acceptRenameInput`,precondition:v_,handler:e=>e.acceptRenameInput(!1),kbOpts:{weight:199,kbExpr:o.kn.focus,primary:3}})),a.ea(new D_({id:`acceptRenameInputWithPreview`,precondition:a.Ta.and(v_,a.Ta.has(`config.editor.rename.enablePreview`)),handler:e=>e.acceptRenameInput(!0),kbOpts:{weight:199,kbExpr:o.kn.focus,primary:1027}})),a.ea(new D_({id:`cancelRenameInput`,precondition:v_,handler:e=>e.cancelRenameInput(),kbOpts:{weight:199,kbExpr:o.kn.focus,primary:9,secondary:[1033]}})),a.ra(`_executeDocumentRenameProvider`,function(e,t,n,...r){let[i]=r;a.Cu(typeof i==`string`);let{renameProvider:o}=e.get(a.Zo);return w_(o,t,n,i)}),a.ra(`_executePrepareRename`,function(e,t,n){return S_(this,void 0,void 0,function*(){let{renameProvider:r}=e.get(a.Zo),i=yield new C_(t,n,r).resolveRenameLocation(a.Bl.None);if(i?.rejectReason)throw Error(i.rejectReason);return i})}),a.Ws.as(a.zs.Configuration).registerConfiguration({id:`editor`,properties:{"editor.rename.enablePreview":{scope:5,description:a.Td(`enablePreview`,`Enable/disable the ability to preview changes before renaming`),default:!0,type:`boolean`}}});var O_=class{provideSelectionRanges(e,t){let n=[];for(let r of t){let t=[];n.push(t),this._addInWordRanges(t,e,r),this._addWordRanges(t,e,r),this._addWhitespaceLine(t,e,r),t.push({range:e.getFullModelRange()})}return n}_addInWordRanges(e,t,n){let r=t.getWordAtPosition(n);if(!r)return;let{word:i,startColumn:o}=r,s=n.column-o,c=s,l=s,u=0;for(;c>=0;c--){let e=i.charCodeAt(c);if(c!==s&&(e===95||e===45)||a.Yc(e)&&a.Xc(u))break;u=e}for(c+=1;l<i.length;l++){let e=i.charCodeAt(l);if(a.Xc(e)&&a.Yc(u)||e===95||e===45)break;u=e}c<l&&e.push({range:new a.Ol(n.lineNumber,o+c,n.lineNumber,o+l)})}_addWordRanges(e,t,n){let r=t.getWordAtPosition(n);r&&e.push({range:new a.Ol(n.lineNumber,r.startColumn,n.lineNumber,r.endColumn)})}_addWhitespaceLine(e,t,n){t.getLineLength(n.lineNumber)>0&&t.getLineFirstNonWhitespaceColumn(n.lineNumber)===0&&t.getLineLastNonWhitespaceColumn(n.lineNumber)===0&&e.push({range:new a.Ol(n.lineNumber,1,n.lineNumber,t.getLineMaxColumn(n.lineNumber))})}},k_=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},A_=function(e,t){return function(n,r){t(n,r,e)}},j_=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},M_=class e{constructor(e,t){this.index=e,this.ranges=t}mov(t){let n=this.index+(t?1:-1);if(n<0||n>=this.ranges.length)return this;let r=new e(n,this.ranges);return r.ranges[n].equalsRange(this.ranges[this.index])?r.mov(t):r}},N_=class e{constructor(e,t){this._editor=e,this._languageFeaturesService=t,this._ignoreSelection=!1}static get(t){return t.getContribution(e.ID)}dispose(){var e;(e=this._selectionListener)==null||e.dispose()}run(e){return j_(this,void 0,void 0,function*(){if(!this._editor.hasModel())return;let t=this._editor.getSelections(),n=this._editor.getModel();if(this._state||(yield L_(this._languageFeaturesService.selectionRangeProvider,n,t.map(e=>e.getPosition()),this._editor.getOption(103),a.Bl.None).then(e=>{var n;if(!(!a.$u(e)||e.length!==t.length)&&!(!this._editor.hasModel()||!a.Wu(this._editor.getSelections(),t,(e,t)=>e.equalsSelection(t)))){for(let n=0;n<e.length;n++)e[n]=e[n].filter(e=>e.containsPosition(t[n].getStartPosition())&&e.containsPosition(t[n].getEndPosition())),e[n].unshift(t[n]);this._state=e.map(e=>new M_(0,e)),(n=this._selectionListener)==null||n.dispose(),this._selectionListener=this._editor.onDidChangeCursorPosition(()=>{var e;this._ignoreSelection||((e=this._selectionListener)==null||e.dispose(),this._state=void 0)})}})),!this._state)return;this._state=this._state.map(t=>t.mov(e));let r=this._state.map(e=>a.Dl.fromPositions(e.ranges[e.index].getStartPosition(),e.ranges[e.index].getEndPosition()));this._ignoreSelection=!0;try{this._editor.setSelections(r)}finally{this._ignoreSelection=!1}})}};N_.ID=`editor.contrib.smartSelectController`,N_=k_([A_(1,a.Zo)],N_);var P_=class extends a.Gi{constructor(e,t){super(t),this._forward=e}run(e,t){return j_(this,void 0,void 0,function*(){let e=N_.get(t);e&&(yield e.run(this._forward))})}},F_=class extends P_{constructor(){super(!0,{id:`editor.action.smartSelect.expand`,label:a.Td(`smartSelect.expand`,`Expand Selection`),alias:`Expand Selection`,precondition:void 0,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:1553,mac:{primary:3345,secondary:[1297]},weight:100},menuOpts:{menuId:a.ca.MenubarSelectionMenu,group:`1_basic`,title:a.Td({key:`miSmartSelectGrow`,comment:[`&& denotes a mnemonic`]},`&&Expand Selection`),order:2}})}};a.ja.registerCommandAlias(`editor.action.smartSelect.grow`,`editor.action.smartSelect.expand`);var I_=class extends P_{constructor(){super(!1,{id:`editor.action.smartSelect.shrink`,label:a.Td(`smartSelect.shrink`,`Shrink Selection`),alias:`Shrink Selection`,precondition:void 0,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:1551,mac:{primary:3343,secondary:[1295]},weight:100},menuOpts:{menuId:a.ca.MenubarSelectionMenu,group:`1_basic`,title:a.Td({key:`miSmartSelectShrink`,comment:[`&& denotes a mnemonic`]},`&&Shrink Selection`),order:3}})}};a.ta(N_.ID,N_),a.$i(F_),a.$i(I_);function L_(e,t,n,r,i){return j_(this,void 0,void 0,function*(){let o=e.all(t).concat(new O_);o.length===1&&o.unshift(new _f);let s=[],c=[];for(let e of o)s.push(Promise.resolve(e.provideSelectionRanges(t,n,i)).then(e=>{if(a.$u(e)&&e.length===n.length)for(let t=0;t<n.length;t++){c[t]||(c[t]=[]);for(let r of e[t])a.Ol.isIRange(r.range)&&a.Ol.containsPosition(r.range,n[t])&&c[t].push(a.Ol.lift(r.range))}},a.pu));return yield Promise.all(s),c.map(e=>{if(e.length===0)return[];e.sort((e,t)=>a.kl.isBefore(e.getStartPosition(),t.getStartPosition())?1:a.kl.isBefore(t.getStartPosition(),e.getStartPosition())||a.kl.isBefore(e.getEndPosition(),t.getEndPosition())?-1:a.kl.isBefore(t.getEndPosition(),e.getEndPosition())?1:0);let n=[],i;for(let t of e)(!i||a.Ol.containsRange(t,i)&&!a.Ol.equalsRange(t,i))&&(n.push(t),i=t);if(!r.selectLeadingAndTrailingWhitespace)return n;let o=[n[0]];for(let e=1;e<n.length;e++){let r=n[e-1],i=n[e];if(i.startLineNumber!==r.startLineNumber||i.endLineNumber!==r.endLineNumber){let e=new a.Ol(r.startLineNumber,t.getLineFirstNonWhitespaceColumn(r.startLineNumber),r.endLineNumber,t.getLineLastNonWhitespaceColumn(r.endLineNumber));e.containsRange(r)&&!e.equalsRange(r)&&i.containsRange(e)&&!i.equalsRange(e)&&o.push(e);let n=new a.Ol(r.startLineNumber,1,r.endLineNumber,t.getLineMaxColumn(r.endLineNumber));n.containsRange(r)&&!n.equalsRange(e)&&i.containsRange(n)&&!i.equalsRange(n)&&o.push(n)}o.push(i)}return o})})}a.ja.registerCommand(`_executeSelectionRangeProvider`,function(e,...t){return j_(this,void 0,void 0,function*(){let[n,r]=t;a.Cu(a.Al.isUri(n));let i=e.get(a.Zo).selectionRangeProvider,o=yield e.get(a.Ra).createModelReference(n);try{return L_(i,o.object.textEditorModel,r,{selectLeadingAndTrailingWhitespace:!0},a.Bl.None)}finally{o.dispose()}})});var R_=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},z_=function(e,t){return function(n,r){t(n,r,e)}},B_=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},V_=class{constructor(e,t,n,r,i,a){this.range=e,this.insertText=t,this.filterText=n,this.additionalTextEdits=r,this.command=i,this.completion=a}},H_=class extends a.eu{constructor(e,t,n,r,i,a){super(i.disposable),this.model=e,this.line=t,this.word=n,this.completionModel=r,this._suggestMemoryService=a}canBeReused(e,t,n){return this.model===e&&this.line===t&&this.word.word.length>0&&this.word.startColumn===n.startColumn&&this.word.endColumn<n.endColumn&&this.completionModel.incomplete.size===0}get items(){let e=[],{items:t}=this.completionModel,n=this._suggestMemoryService.select(this.model,{lineNumber:this.line,column:this.word.endColumn+this.completionModel.lineContext.characterCountDelta},t),r=a.md.slice(t,n),i=a.md.slice(t,0,n),s=5;for(let t of a.md.concat(r,i)){if(t.score===o.tn.Default)continue;let n=new a.Ol(t.editStart.lineNumber,t.editStart.column,t.editInsertEnd.lineNumber,t.editInsertEnd.column+this.completionModel.lineContext.characterCountDelta),r=t.completion.insertTextRules&&t.completion.insertTextRules&o.cr.InsertAsSnippet?{snippet:t.completion.insertText}:t.completion.insertText;e.push(new V_(n,r,t.filterTextLow??t.labelLow,t.completion.additionalTextEdits,t.completion.command,t)),s-->=0&&t.resolve(a.Bl.None)}return e}};H_=R_([z_(5,cf)],H_);var U_=class{constructor(e,t,n,r){this._getEditorOption=e,this._languageFeatureService=t,this._clipboardService=n,this._suggestMemoryService=r}provideInlineCompletions(e,t,n,r){return B_(this,void 0,void 0,function*(){if(n.selectedSuggestionInfo)return;let i=this._getEditorOption(80,e);if(to.isAllOff(i))return;e.tokenization.tokenizeIfCheap(t.lineNumber);let o=e.tokenization.getLineTokens(t.lineNumber),s=o.getStandardTokenType(o.findTokenIndexAtOffset(Math.max(t.column-1-1,0)));if(to.valueFor(i,s)!==`inline`)return;let c=e.getWordAtPosition(t),l;if(c?.word||(l=this._getTriggerCharacterInfo(e,t)),!c?.word&&!l||(c||=e.getWordUntilPosition(t),c.endColumn!==t.column))return;let u,d=e.getValueInRange(new a.Ol(t.lineNumber,1,t.lineNumber,t.column));if(!l&&this._lastResult?.canBeReused(e,t.lineNumber,c)){let e=new bf(d,t.column-this._lastResult.word.endColumn);this._lastResult.completionModel.lineContext=e,this._lastResult.acquire(),u=this._lastResult}else{let n=yield Ja(this._languageFeatureService.completionProvider,e,t,new Wa(void 0,void 0,l?.providers),l&&{triggerKind:1,triggerCharacter:l.ch},r),i;n.needsClipboard&&(i=yield this._clipboardService.readText());let a=new xf(n.items,t.column,new bf(d,0),yf.None,this._getEditorOption(107,e),this._getEditorOption(102,e),{boostFullMatch:!1,firstMatchCanBeWeak:!1},i);u=new H_(e,t.lineNumber,c,a,n,this._suggestMemoryService)}return this._lastResult=u,u})}handleItemDidShow(e,t){t.completion.resolve(a.Bl.None)}freeInlineCompletions(e){e.release()}_getTriggerCharacterInfo(e,t){let n=e.getValueInRange(a.Ol.fromPositions({lineNumber:t.lineNumber,column:t.column-1},t)),r=new Set;for(let t of this._languageFeatureService.completionProvider.all(e))t.triggerCharacters?.includes(n)&&r.add(t);if(r.size!==0)return{providers:r,ch:n}}};U_=R_([z_(1,a.Zo),z_(2,o.zt),z_(3,cf)],U_);var W_=class e{constructor(t,n,r,i){if(++e._counter===1){let a=i.createInstance(U_,(e,n)=>(r.listCodeEditors().find(e=>e.getModel()===n)??t).getOption(e));e._disposable=n.inlineCompletionsProvider.register(`*`,a)}}dispose(){var t;--e._counter===0&&((t=e._disposable)==null||t.dispose(),e._disposable=void 0)}};W_._counter=0,W_=R_([z_(1,a.Zo),z_(2,a.dc),z_(3,a.fc)],W_),a.ta(`suggest.inlineCompletionsProvider`,W_);var G_=class extends a.Gi{constructor(){super({id:`editor.action.forceRetokenize`,label:a.Td(`forceRetokenize`,`Developer: Force Retokenize`),alias:`Developer: Force Retokenize`,precondition:void 0})}run(e,t){if(!t.hasModel())return;let n=t.getModel();n.tokenization.resetTokenization();let r=new a.Yl(!0);n.tokenization.forceTokenization(n.getLineCount()),r.stop(),`${r.elapsed()}`}};a.$i(G_);var K_=class e extends a.Gi{constructor(){super({id:e.ID,label:a.Td({key:`toggle.tabMovesFocus`,comment:[`Turn on/off use of tab key for moving focus around VS Code`]},`Toggle Tab Key Moves Focus`),alias:`Toggle Tab Key Moves Focus`,precondition:void 0,kbOpts:{kbExpr:null,primary:2091,mac:{primary:1323},weight:100}})}run(e,t){let n=!o.Yn.getTabFocusMode();o.Yn.setTabFocusMode(n),n?o.Zn(a.Td(`toggle.tabMovesFocus.on`,`Pressing Tab will now move focus to the next focusable element`)):o.Zn(a.Td(`toggle.tabMovesFocus.off`,`Pressing Tab will now insert the tab character`))}};K_.ID=`editor.action.toggleTabFocusMode`,a.$i(K_);var q_=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},J_=function(e,t){return function(n,r){t(n,r,e)}},Y_=class extends a.Xl{constructor(e,t,n={},r){super(),this._link=t,this._enabled=!0,this.el=a.Xa(e,a.za(`a.monaco-link`,{tabIndex:t.tabIndex??0,href:t.href,title:t.title},t.label)),this.el.setAttribute(`role`,`button`);let i=this._register(new o.gn(this.el,`click`)),s=this._register(new o.gn(this.el,`keypress`)),c=a.Wl.chain(s.event).map(e=>new a.Ho(e)).filter(e=>e.keyCode===3).event,l=this._register(new o.gn(this.el,o.Gn.Tap)).event;this._register(o.Kn.addTarget(this.el));let u=a.Wl.any(i.event,c,l);this._register(u(e=>{this.enabled&&(a.Ha.stop(e,!0),n?.opener?n.opener(this._link.href):r.open(this._link.href,{allowCommands:!0}))})),this.enabled=!0}get enabled(){return this._enabled}set enabled(e){e?(this.el.setAttribute(`aria-disabled`,`false`),this.el.tabIndex=0,this.el.style.pointerEvents=`auto`,this.el.style.opacity=`1`,this.el.style.cursor=`pointer`,this._enabled=!1):(this.el.setAttribute(`aria-disabled`,`true`),this.el.tabIndex=-1,this.el.style.pointerEvents=`none`,this.el.style.opacity=`0.4`,this.el.style.cursor=`default`,this._enabled=!0),this._enabled=e}};Y_=q_([J_(3,a.n)],Y_),a.ba((e,t)=>{let n=e.getColor(a.Fi);n&&t.addRule(`.monaco-link { color: ${n}; }`);let r=e.getColor(a.Pi);r&&t.addRule(`.monaco-link:hover { color: ${r}; }`)});var X_=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Z_=function(e,t){return function(n,r){t(n,r,e)}},Q_=26,$_=class extends a.Xl{constructor(e,t){super(),this._editor=e,this.instantiationService=t,this.banner=this._register(this.instantiationService.createInstance(ev))}hide(){this._editor.setBanner(null,0),this.banner.clear()}show(e){this.banner.show(Object.assign(Object.assign({},e),{onClose:()=>{var t;this.hide(),(t=e.onClose)==null||t.call(e)}})),this._editor.setBanner(this.banner.element,Q_)}};$_=X_([Z_(1,a.fc)],$_);var ev=class extends a.Xl{constructor(e){super(),this.instantiationService=e,this.markdownRenderer=this.instantiationService.createInstance(bo,{}),this.element=a.za(`div.editor-banner`),this.element.tabIndex=0}getAriaLabel(e){if(e.ariaLabel)return e.ariaLabel;if(typeof e.message==`string`)return e.message}getBannerMessage(e){if(typeof e==`string`){let t=a.za(`span`);return t.innerText=e,t}return this.markdownRenderer.render(e).element}clear(){a.$a(this.element)}show(e){a.$a(this.element);let t=this.getAriaLabel(e);t&&this.element.setAttribute(`aria-label`,t);let n=a.Xa(this.element,a.za(`div.icon-container`));n.setAttribute(`aria-hidden`,`true`),e.icon&&n.appendChild(a.za(`div${a.va.asCSSSelector(e.icon)}`));let r=a.Xa(this.element,a.za(`div.message-container`));if(r.setAttribute(`aria-hidden`,`true`),r.appendChild(this.getBannerMessage(e.message)),this.messageActionsContainer=a.Xa(this.element,a.za(`div.message-actions-container`)),e.actions)for(let t of e.actions)this._register(this.instantiationService.createInstance(Y_,this.messageActionsContainer,Object.assign(Object.assign({},t),{tabIndex:-1}),{}));let i=a.Xa(this.element,a.za(`div.action-container`));this.actionBar=this._register(new o.Gt(i)),this.actionBar.push(this._register(new a.Na(`banner.close`,`Close Banner`,a.va.asClassName(o.Wt),!0,()=>{typeof e.onClose==`function`&&e.onClose()})),{icon:!0,label:!1}),this.actionBar.setFocusable(!1)}};ev=X_([Z_(0,a.fc)],ev);var tv=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},nv=function(e,t){return function(n,r){t(n,r,e)}},Q=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},rv=o.Ut(`extensions-warning-message`,a.Tl.warning,a.Td(`warningIcon`,`Icon shown with a warning message in the extensions editor.`)),iv=class extends a.Xl{constructor(e,t,n,r){super(),this._editor=e,this._editorWorkerService=t,this._workspaceTrustService=n,this._highlighter=null,this._bannerClosed=!1,this._updateState=e=>{if(e&&e.hasMore){if(this._bannerClosed)return;let t=Math.max(e.ambiguousCharacterCount,e.nonBasicAsciiCharacterCount,e.invisibleCharacterCount),n;if(e.nonBasicAsciiCharacterCount>=t)n={message:a.Td(`unicodeHighlighting.thisDocumentHasManyNonBasicAsciiUnicodeCharacters`,`This document contains many non-basic ASCII unicode characters`),command:new vv};else if(e.ambiguousCharacterCount>=t)n={message:a.Td(`unicodeHighlighting.thisDocumentHasManyAmbiguousUnicodeCharacters`,`This document contains many ambiguous unicode characters`),command:new gv};else if(e.invisibleCharacterCount>=t)n={message:a.Td(`unicodeHighlighting.thisDocumentHasManyInvisibleUnicodeCharacters`,`This document contains many invisible unicode characters`),command:new _v};else throw Error(`Unreachable`);this._bannerController.show({id:`unicodeHighlightBanner`,message:n.message,icon:rv,actions:[{label:n.command.shortLabel,href:`command:${n.command.id}`}],onClose:()=>{this._bannerClosed=!0}})}else this._bannerController.hide()},this._bannerController=this._register(r.createInstance($_,e)),this._register(this._editor.onDidChangeModel(()=>{this._bannerClosed=!1,this._updateHighlighter()})),this._options=e.getOption(114),this._register(n.onDidChangeTrust(e=>{this._updateHighlighter()})),this._register(e.onDidChangeConfiguration(t=>{t.hasChanged(114)&&(this._options=e.getOption(114),this._updateHighlighter())})),this._updateHighlighter()}dispose(){this._highlighter&&=(this._highlighter.dispose(),null),super.dispose()}_updateHighlighter(){if(this._updateState(null),this._highlighter&&=(this._highlighter.dispose(),null),!this._editor.hasModel())return;let e=av(this._workspaceTrustService.isWorkspaceTrusted(),this._options);if([e.nonBasicASCII,e.ambiguousCharacters,e.invisibleCharacters].every(e=>e===!1))return;let t={nonBasicASCII:e.nonBasicASCII,ambiguousCharacters:e.ambiguousCharacters,invisibleCharacters:e.invisibleCharacters,includeComments:e.includeComments,includeStrings:e.includeStrings,allowedCodePoints:Object.keys(e.allowedCharacters).map(e=>e.codePointAt(0)),allowedLocales:Object.keys(e.allowedLocales).map(e=>e===`_os`?new Intl.NumberFormat().resolvedOptions().locale:e===`_vscode`?a.wd:e)};this._editorWorkerService.canComputeUnicodeHighlights(this._editor.getModel().uri)?this._highlighter=new ov(this._editor,t,this._updateState,this._editorWorkerService):this._highlighter=new sv(this._editor,t,this._updateState)}getDecorationInfo(e){return this._highlighter?this._highlighter.getDecorationInfo(e):null}};iv.ID=`editor.contrib.unicodeHighlighter`,iv=tv([nv(1,o.Ht),nv(2,o.gt),nv(3,a.fc)],iv);function av(e,t){return{nonBasicASCII:t.nonBasicASCII===`inUntrustedWorkspace`?!e:t.nonBasicASCII,ambiguousCharacters:t.ambiguousCharacters,invisibleCharacters:t.invisibleCharacters,includeComments:t.includeComments===`inUntrustedWorkspace`?!e:t.includeComments,includeStrings:t.includeStrings===`inUntrustedWorkspace`?!e:t.includeStrings,allowedCharacters:t.allowedCharacters,allowedLocales:t.allowedLocales}}var ov=class extends a.Xl{constructor(e,t,n,r){super(),this._editor=e,this._options=t,this._updateState=n,this._editorWorkerService=r,this._model=this._editor.getModel(),this._decorations=this._editor.createDecorationsCollection(),this._updateSoon=this._register(new a.ys(()=>this._update(),250)),this._register(this._editor.onDidChangeModelContent(()=>{this._updateSoon.schedule()})),this._updateSoon.schedule()}dispose(){this._decorations.clear(),super.dispose()}_update(){if(this._model.isDisposed())return;if(!this._model.mightContainNonBasicASCII()){this._decorations.clear();return}let e=this._model.getVersionId();this._editorWorkerService.computedUnicodeHighlights(this._model.uri,this._options).then(t=>{if(this._model.isDisposed()||this._model.getVersionId()!==e)return;this._updateState(t);let n=[];if(!t.hasMore)for(let e of t.ranges)n.push({range:e,options:pv.instance.getDecorationFromOptions(this._options)});this._decorations.set(n)})}getDecorationInfo(e){if(!this._decorations.has(e))return null;let t=this._editor.getModel();return o.Cn(t,e)?{reason:fv(t.getValueInRange(e.range),this._options),inComment:o.xn(t,e),inString:o.Sn(t,e)}:null}};ov=tv([nv(3,o.Ht)],ov);var sv=class extends a.Xl{constructor(e,t,n){super(),this._editor=e,this._options=t,this._updateState=n,this._model=this._editor.getModel(),this._decorations=this._editor.createDecorationsCollection(),this._updateSoon=this._register(new a.ys(()=>this._update(),250)),this._register(this._editor.onDidLayoutChange(()=>{this._updateSoon.schedule()})),this._register(this._editor.onDidScrollChange(()=>{this._updateSoon.schedule()})),this._register(this._editor.onDidChangeHiddenAreas(()=>{this._updateSoon.schedule()})),this._register(this._editor.onDidChangeModelContent(()=>{this._updateSoon.schedule()})),this._updateSoon.schedule()}dispose(){this._decorations.clear(),super.dispose()}_update(){if(this._model.isDisposed())return;if(!this._model.mightContainNonBasicASCII()){this._decorations.clear();return}let e=this._editor.getVisibleRanges(),t=[],n={ranges:[],ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0,hasMore:!1};for(let t of e){let e=o.rr.computeUnicodeHighlights(this._model,this._options,t);for(let t of e.ranges)n.ranges.push(t);n.ambiguousCharacterCount+=n.ambiguousCharacterCount,n.invisibleCharacterCount+=n.invisibleCharacterCount,n.nonBasicAsciiCharacterCount+=n.nonBasicAsciiCharacterCount,n.hasMore=n.hasMore||e.hasMore}if(!n.hasMore)for(let e of n.ranges)t.push({range:e,options:pv.instance.getDecorationFromOptions(this._options)});this._updateState(n),this._decorations.set(t)}getDecorationInfo(e){if(!this._decorations.has(e))return null;let t=this._editor.getModel(),n=t.getValueInRange(e.range);return o.Cn(t,e)?{reason:fv(n,this._options),inComment:o.xn(t,e),inString:o.Sn(t,e)}:null}},cv=class{constructor(e,t,n){this._editor=e,this._languageService=t,this._openerService=n,this.hoverOrdinal=4}computeSync(e,t){if(!this._editor.hasModel()||e.type!==1)return[];let n=this._editor.getModel(),r=this._editor.getContribution(iv.ID);if(!r)return[];let i=[],s=300;for(let e of t){let t=r.getDecorationInfo(e);if(!t)continue;let c=n.getValueInRange(e.range).codePointAt(0),l=uv(c),u;switch(t.reason.kind){case 0:u=a.Td(`unicodeHighlight.characterIsAmbiguous`,`The character {0} could be confused with the character {1}, which is more common in source code.`,l,uv(t.reason.confusableWith.codePointAt(0)));break;case 1:u=a.Td(`unicodeHighlight.characterIsInvisible`,`The character {0} is invisible.`,l);break;case 2:u=a.Td(`unicodeHighlight.characterIsNonBasicAscii`,`The character {0} is not a basic ASCII character.`,l);break}let d={codePoint:c,reason:t.reason,inComment:t.inComment,inString:t.inString},f=a.Td(`unicodeHighlight.adjustSettings`,`Adjust settings`),p=`command:${yv.ID}?${encodeURIComponent(JSON.stringify(d))}`,m=new o.Jt(``,!0).appendMarkdown(u).appendText(` `).appendLink(p,f);i.push(new No(this,e.range,[m],s++))}return i}renderHoverParts(e,t){return Fo(e,t,this._editor,this._languageService,this._openerService)}};cv=tv([nv(1,a.Js),nv(2,a.n)],cv);function lv(e){return`U+${e.toString(16).padStart(4,`0`)}`}function uv(e){let t=`\`${lv(e)}\``;return a.Ec.isInvisibleCharacter(e)||(t+=` "${`${dv(e)}`}"`),t}function dv(e){return e===96?"`` ` ``":"`"+String.fromCodePoint(e)+"`"}function fv(e,t){return o.rr.computeUnicodeHighlightReason(e,t)}var pv=class{constructor(){this.map=new Map}getDecorationFromOptions(e){return this.getDecoration(!e.includeComments,!e.includeStrings)}getDecoration(e,t){let n=`${e}${t}`,r=this.map.get(n);return r||(r=a.f.createDynamic({description:`unicode-highlight`,stickiness:1,className:`unicode-highlight`,showIfCollapsed:!0,overviewRuler:null,minimap:null,hideInCommentTokens:e,hideInStringTokens:t}),this.map.set(n,r)),r}};pv.instance=new pv;var mv=class extends a.Gi{constructor(){super({id:gv.ID,label:a.Td(`action.unicodeHighlight.disableHighlightingInComments`,`Disable highlighting of characters in comments`),alias:`Disable highlighting of characters in comments`,precondition:void 0}),this.shortLabel=a.Td(`unicodeHighlight.disableHighlightingInComments.shortLabel`,`Disable Highlight In Comments`)}run(e,t,n){return Q(this,void 0,void 0,function*(){let t=e?.get(a.Ys);t&&this.runAction(t)})}runAction(e){return Q(this,void 0,void 0,function*(){yield e.updateValue(o.pr.includeComments,!1,1)})}},hv=class extends a.Gi{constructor(){super({id:gv.ID,label:a.Td(`action.unicodeHighlight.disableHighlightingInStrings`,`Disable highlighting of characters in strings`),alias:`Disable highlighting of characters in strings`,precondition:void 0}),this.shortLabel=a.Td(`unicodeHighlight.disableHighlightingInStrings.shortLabel`,`Disable Highlight In Strings`)}run(e,t,n){return Q(this,void 0,void 0,function*(){let t=e?.get(a.Ys);t&&this.runAction(t)})}runAction(e){return Q(this,void 0,void 0,function*(){yield e.updateValue(o.pr.includeStrings,!1,1)})}},gv=class e extends a.Gi{constructor(){super({id:e.ID,label:a.Td(`action.unicodeHighlight.disableHighlightingOfAmbiguousCharacters`,`Disable highlighting of ambiguous characters`),alias:`Disable highlighting of ambiguous characters`,precondition:void 0}),this.shortLabel=a.Td(`unicodeHighlight.disableHighlightingOfAmbiguousCharacters.shortLabel`,`Disable Ambiguous Highlight`)}run(e,t,n){return Q(this,void 0,void 0,function*(){let t=e?.get(a.Ys);t&&this.runAction(t)})}runAction(e){return Q(this,void 0,void 0,function*(){yield e.updateValue(o.pr.ambiguousCharacters,!1,1)})}};gv.ID=`editor.action.unicodeHighlight.disableHighlightingOfAmbiguousCharacters`;var _v=class e extends a.Gi{constructor(){super({id:e.ID,label:a.Td(`action.unicodeHighlight.disableHighlightingOfInvisibleCharacters`,`Disable highlighting of invisible characters`),alias:`Disable highlighting of invisible characters`,precondition:void 0}),this.shortLabel=a.Td(`unicodeHighlight.disableHighlightingOfInvisibleCharacters.shortLabel`,`Disable Invisible Highlight`)}run(e,t,n){return Q(this,void 0,void 0,function*(){let t=e?.get(a.Ys);t&&this.runAction(t)})}runAction(e){return Q(this,void 0,void 0,function*(){yield e.updateValue(o.pr.invisibleCharacters,!1,1)})}};_v.ID=`editor.action.unicodeHighlight.disableHighlightingOfInvisibleCharacters`;var vv=class e extends a.Gi{constructor(){super({id:e.ID,label:a.Td(`action.unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters`,`Disable highlighting of non basic ASCII characters`),alias:`Disable highlighting of non basic ASCII characters`,precondition:void 0}),this.shortLabel=a.Td(`unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters.shortLabel`,`Disable Non ASCII Highlight`)}run(e,t,n){return Q(this,void 0,void 0,function*(){let t=e?.get(a.Ys);t&&this.runAction(t)})}runAction(e){return Q(this,void 0,void 0,function*(){yield e.updateValue(o.pr.nonBasicASCII,!1,1)})}};vv.ID=`editor.action.unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters`;var yv=class e extends a.Gi{constructor(){super({id:e.ID,label:a.Td(`action.unicodeHighlight.showExcludeOptions`,`Show Exclude Options`),alias:`Show Exclude Options`,precondition:void 0})}run(e,t,n){return Q(this,void 0,void 0,function*(){let{codePoint:t,reason:r,inString:i,inComment:s}=n,c=String.fromCodePoint(t),l=e.get(o.P),u=e.get(a.Ys);function d(e){return a.Ec.isInvisibleCharacter(e)?a.Td(`unicodeHighlight.excludeInvisibleCharFromBeingHighlighted`,`Exclude {0} (invisible character) from being highlighted`,lv(e)):a.Td(`unicodeHighlight.excludeCharFromBeingHighlighted`,`Exclude {0} from being highlighted`,`${lv(e)} "${c}"`)}let f=[];if(r.kind===0)for(let e of r.notAmbiguousInLocales)f.push({label:a.Td(`unicodeHighlight.allowCommonCharactersInLanguage`,`Allow unicode characters that are more common in the language "{0}".`,e),run:()=>Q(this,void 0,void 0,function*(){xv(u,[e])})});if(f.push({label:d(t),run:()=>bv(u,[t])}),s){let e=new mv;f.push({label:e.label,run:()=>Q(this,void 0,void 0,function*(){return e.runAction(u)})})}else if(i){let e=new hv;f.push({label:e.label,run:()=>Q(this,void 0,void 0,function*(){return e.runAction(u)})})}if(r.kind===0){let e=new gv;f.push({label:e.label,run:()=>Q(this,void 0,void 0,function*(){return e.runAction(u)})})}else if(r.kind===1){let e=new _v;f.push({label:e.label,run:()=>Q(this,void 0,void 0,function*(){return e.runAction(u)})})}else if(r.kind===2){let e=new vv;f.push({label:e.label,run:()=>Q(this,void 0,void 0,function*(){return e.runAction(u)})})}else Sv(r);let p=yield l.pick(f,{title:a.Td(`unicodeHighlight.configureUnicodeHighlightOptions`,`Configure Unicode Highlight Options`)});p&&(yield p.run())})}};yv.ID=`editor.action.unicodeHighlight.showExcludeOptions`;function bv(e,t){return Q(this,void 0,void 0,function*(){let n=e.getValue(o.pr.allowedCharacters),r;r=typeof n==`object`&&n?n:{};for(let e of t)r[String.fromCodePoint(e)]=!0;yield e.updateValue(o.pr.allowedCharacters,r,1)})}function xv(e,t){return Q(this,void 0,void 0,function*(){let n=e.inspect(o.pr.allowedLocales).user?.value,r;r=typeof n==`object`&&n?Object.assign({},n):{};for(let e of t)r[e]=!0;yield e.updateValue(o.pr.allowedLocales,r,1)})}function Sv(e){throw Error(`Unexpected value: ${e}`)}a.$i(gv),a.$i(_v),a.$i(vv),a.$i(yv),a.ta(iv.ID,iv),ma.register(cv);var Cv=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},wv=function(e,t){return function(n,r){t(n,r,e)}},Tv=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Ev=`ignoreUnusualLineTerminators`;function Dv(e,t,n){e.setModelProperty(t.uri,Ev,n)}function Ov(e,t){return e.getModelProperty(t.uri,Ev)}var kv=class extends a.Xl{constructor(e,t,n){super(),this._editor=e,this._dialogService=t,this._codeEditorService=n,this._config=this._editor.getOption(115),this._register(this._editor.onDidChangeConfiguration(e=>{e.hasChanged(115)&&(this._config=this._editor.getOption(115),this._checkForUnusualLineTerminators())})),this._register(this._editor.onDidChangeModel(()=>{this._checkForUnusualLineTerminators()})),this._register(this._editor.onDidChangeModelContent(e=>{e.isUndoing||this._checkForUnusualLineTerminators()}))}_checkForUnusualLineTerminators(){return Tv(this,void 0,void 0,function*(){if(this._config===`off`||!this._editor.hasModel())return;let e=this._editor.getModel();if(e.mightContainUnusualLineTerminators()&&Ov(this._codeEditorService,e)!==!0&&!this._editor.getOption(82)){if(this._config===`auto`){e.removeUnusualLineTerminators(this._editor.getSelections());return}if(!(yield this._dialogService.confirm({title:a.Td(`unusualLineTerminators.title`,`Unusual Line Terminators`),message:a.Td(`unusualLineTerminators.message`,`Detected unusual line terminators`),detail:a.Td(`unusualLineTerminators.detail`,`The file '{0}' contains one or more unusual line terminator characters, like Line Separator (LS) or Paragraph Separator (PS).
152
+
153
+ It is recommended to remove them from the file. This can be configured via \`editor.unusualLineTerminators\`.`,a.x(e.uri)),primaryButton:a.Td(`unusualLineTerminators.fix`,`Remove Unusual Line Terminators`),secondaryButton:a.Td(`unusualLineTerminators.ignore`,`Ignore`)})).confirmed){Dv(this._codeEditorService,e,!0);return}e.removeUnusualLineTerminators(this._editor.getSelections())}})}};kv.ID=`editor.contrib.unusualLineTerminatorsDetector`,kv=Cv([wv(1,o.Ft),wv(2,a.dc)],kv),a.ta(kv.ID,kv);var Av=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},jv=function(e,t){return function(n,r){t(n,r,e)}},Mv=class extends a.Xl{constructor(e,t,n,r,i,o){super(),this._modelService=t,this._themeService=n,this._configurationService=r,this._editor=e,this._provider=o.documentRangeSemanticTokensProvider,this._debounceInformation=i.for(this._provider,`DocumentRangeSemanticTokens`,{min:100,max:500}),this._tokenizeViewport=this._register(new a.ys(()=>this._tokenizeViewportNow(),100)),this._outstandingRequests=[];let s=()=>{this._editor.hasModel()&&this._tokenizeViewport.schedule(this._debounceInformation.get(this._editor.getModel()))};this._register(this._editor.onDidScrollChange(()=>{s()})),this._register(this._editor.onDidChangeModel(()=>{this._cancelAll(),s()})),this._register(this._editor.onDidChangeModelContent(e=>{this._cancelAll(),s()})),this._register(this._provider.onDidChange(()=>{this._cancelAll(),s()})),this._register(this._configurationService.onDidChangeConfiguration(e=>{e.affectsConfiguration(`editor.semanticHighlighting`)&&(this._cancelAll(),s())})),this._register(this._themeService.onDidColorThemeChange(()=>{this._cancelAll(),s()}))}_cancelAll(){for(let e of this._outstandingRequests)e.cancel();this._outstandingRequests=[]}_removeOutstandingRequest(e){for(let t=0,n=this._outstandingRequests.length;t<n;t++)if(this._outstandingRequests[t]===e){this._outstandingRequests.splice(t,1);return}}_tokenizeViewportNow(){if(!this._editor.hasModel())return;let e=this._editor.getModel();if(e.tokenization.hasCompleteSemanticTokens())return;if(!o.ot(e,this._themeService,this._configurationService)){e.tokenization.hasSomeSemanticTokens()&&e.tokenization.setSemanticTokens(null,!1);return}if(!o.ct(this._provider,e)){e.tokenization.hasSomeSemanticTokens()&&e.tokenization.setSemanticTokens(null,!1);return}let t=this._editor.getVisibleRangesPlusViewportAboveBelow();this._outstandingRequests=this._outstandingRequests.concat(t.map(t=>this._requestRange(e,t)))}_requestRange(e,t){let n=e.getVersionId(),r=a.Cs(n=>Promise.resolve(o.st(this._provider,e,t,n))),i=new a.Yl(!1);return r.then(r=>{if(this._debounceInformation.update(e,i.elapsed()),!r||!r.tokens||e.isDisposed()||e.getVersionId()!==n)return;let{provider:a,tokens:s}=r,c=this._modelService.getSemanticTokensProviderStyling(a);e.tokenization.setPartialSemanticTokens(t,o.lt(s,c,e.getLanguageId()))}).then(()=>this._removeOutstandingRequest(r),()=>this._removeOutstandingRequest(r)),r}};Mv.ID=`editor.contrib.viewportSemanticTokens`,Mv=Av([jv(1,a.As),jv(2,a.ga),jv(3,a.Ys),jv(4,a.t),jv(5,a.Zo)],Mv),a.ta(Mv.ID,Mv);var Nv=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Pv=function(e,t){return function(n,r){t(n,r,e)}},Fv=a.Ti(`editor.wordHighlightBackground`,{dark:`#575757B8`,light:`#57575740`,hcDark:null,hcLight:null},a.Td(`wordHighlight`,`Background color of a symbol during read-access, like reading a variable. The color must not be opaque so as not to hide underlying decorations.`),!0),Iv=a.Ti(`editor.wordHighlightStrongBackground`,{dark:`#004972B8`,light:`#0e639c40`,hcDark:null,hcLight:null},a.Td(`wordHighlightStrong`,`Background color of a symbol during write-access, like writing to a variable. The color must not be opaque so as not to hide underlying decorations.`),!0),Lv=a.Ti(`editor.wordHighlightBorder`,{light:null,dark:null,hcDark:a.qt,hcLight:a.qt},a.Td(`wordHighlightBorder`,`Border color of a symbol during read-access, like reading a variable.`)),Rv=a.Ti(`editor.wordHighlightStrongBorder`,{light:null,dark:null,hcDark:a.qt,hcLight:a.qt},a.Td(`wordHighlightStrongBorder`,`Border color of a symbol during write-access, like writing to a variable.`)),zv=a.Ti(`editorOverviewRuler.wordHighlightForeground`,{dark:`#A0A0A0CC`,light:`#A0A0A0CC`,hcDark:`#A0A0A0CC`,hcLight:`#A0A0A0CC`},a.Td(`overviewRulerWordHighlightForeground`,`Overview ruler marker color for symbol highlights. The color must not be opaque so as not to hide underlying decorations.`),!0),Bv=a.Ti(`editorOverviewRuler.wordHighlightStrongForeground`,{dark:`#C0A0C0CC`,light:`#C0A0C0CC`,hcDark:`#C0A0C0CC`,hcLight:`#C0A0C0CC`},a.Td(`overviewRulerWordHighlightStrongForeground`,`Overview ruler marker color for write-access symbol highlights. The color must not be opaque so as not to hide underlying decorations.`),!0),Vv=new a.Da(`hasWordHighlights`,!1);function Hv(e,t,n,r){return a.Ts(e.ordered(t).map(e=>()=>Promise.resolve(e.provideDocumentHighlights(t,n,r)).then(void 0,a.pu)),a.$u)}var Uv=class{constructor(e,t,n){this._model=e,this._selection=t,this._wordSeparators=n,this._wordRange=this._getCurrentWordRange(e,t),this._result=null}get result(){return this._result||=a.Cs(e=>this._compute(this._model,this._selection,this._wordSeparators,e)),this._result}_getCurrentWordRange(e,t){let n=e.getWordAtPosition(t.getPosition());return n?new a.Ol(t.startLineNumber,n.startColumn,t.startLineNumber,n.endColumn):null}isValid(e,t,n){let r=t.startLineNumber,i=t.startColumn,a=t.endColumn,o=this._getCurrentWordRange(e,t),s=!!(this._wordRange&&this._wordRange.equalsRange(o));for(let e=0,t=n.length;!s&&e<t;e++){let t=n.getRange(e);t&&t.startLineNumber===r&&t.startColumn<=i&&t.endColumn>=a&&(s=!0)}return s}cancel(){this.result.cancel()}},Wv=class extends Uv{constructor(e,t,n,r){super(e,t,n),this._providers=r}_compute(e,t,n,r){return Hv(this._providers,e,t.getPosition(),r).then(e=>e||[])}},Gv=class extends Uv{constructor(e,t,n){super(e,t,n),this._selectionIsEmpty=t.isEmpty()}_compute(e,t,n,r){return a.ks(250,r).then(()=>{if(!t.isEmpty())return[];let r=e.getWordAtPosition(t.getPosition());return!r||r.word.length>1e3?[]:e.findMatches(r.word,!0,!1,!0,n,!1).map(e=>({range:e.range,kind:a.pl.Text}))})}isValid(e,t,n){let r=t.isEmpty();return this._selectionIsEmpty===r?super.isValid(e,t,n):!1}};function Kv(e,t,n,r){return e.has(t)?new Wv(t,n,r,e):new Gv(t,n,r)}a.ra(`_executeDocumentHighlights`,(e,t,n)=>Hv(e.get(a.Zo).documentHighlightProvider,t,n,a.Bl.None));var qv=class e{constructor(e,t,n){this.toUnhook=new a.Zl,this.workerRequestTokenId=0,this.workerRequestCompleted=!1,this.workerRequestValue=[],this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=-1,this.editor=e,this.providers=t,this._hasWordHighlights=Vv.bindTo(n),this._ignorePositionChangeEvent=!1,this.occurrencesHighlight=this.editor.getOption(73),this.model=this.editor.getModel(),this.toUnhook.add(e.onDidChangeCursorPosition(e=>{this._ignorePositionChangeEvent||this.occurrencesHighlight&&this._onPositionChanged(e)})),this.toUnhook.add(e.onDidChangeModelContent(e=>{this._stopAll()})),this.toUnhook.add(e.onDidChangeConfiguration(e=>{let t=this.editor.getOption(73);this.occurrencesHighlight!==t&&(this.occurrencesHighlight=t,this._stopAll())})),this.decorations=this.editor.createDecorationsCollection(),this.workerRequestTokenId=0,this.workerRequest=null,this.workerRequestCompleted=!1,this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=-1}hasDecorations(){return this.decorations.length>0}restore(){this.occurrencesHighlight&&this._run()}_getSortedHighlights(){return this.decorations.getRanges().sort(a.Ol.compareRangesUsingStarts)}moveNext(){let e=this._getSortedHighlights(),t=(e.findIndex(e=>e.containsPosition(this.editor.getPosition()))+1)%e.length,n=e[t];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(n.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(n);let r=this._getWord();r&&o.Zn(`${this.editor.getModel().getLineContent(n.startLineNumber)}, ${t+1} of ${e.length} for '${r.word}'`)}finally{this._ignorePositionChangeEvent=!1}}moveBack(){let e=this._getSortedHighlights(),t=(e.findIndex(e=>e.containsPosition(this.editor.getPosition()))-1+e.length)%e.length,n=e[t];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(n.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(n);let r=this._getWord();r&&o.Zn(`${this.editor.getModel().getLineContent(n.startLineNumber)}, ${t+1} of ${e.length} for '${r.word}'`)}finally{this._ignorePositionChangeEvent=!1}}_removeDecorations(){this.decorations.length>0&&(this.decorations.clear(),this._hasWordHighlights.set(!1))}_stopAll(){this._removeDecorations(),this.renderDecorationsTimer!==-1&&(clearTimeout(this.renderDecorationsTimer),this.renderDecorationsTimer=-1),this.workerRequest!==null&&(this.workerRequest.cancel(),this.workerRequest=null),this.workerRequestCompleted||=(this.workerRequestTokenId++,!0)}_onPositionChanged(e){if(!this.occurrencesHighlight){this._stopAll();return}if(e.reason!==3){this._stopAll();return}this._run()}_getWord(){let e=this.editor.getSelection(),t=e.startLineNumber,n=e.startColumn;return this.model.getWordAtPosition({lineNumber:t,column:n})}_run(){let e=this.editor.getSelection();if(e.startLineNumber!==e.endLineNumber){this._stopAll();return}let t=e.startColumn,n=e.endColumn,r=this._getWord();if(!r||r.startColumn>t||r.endColumn<n){this._stopAll();return}let i=this.workerRequest&&this.workerRequest.isValid(this.model,e,this.decorations);if(this.lastCursorPositionChangeTime=new Date().getTime(),i)this.workerRequestCompleted&&this.renderDecorationsTimer!==-1&&(clearTimeout(this.renderDecorationsTimer),this.renderDecorationsTimer=-1,this._beginRenderDecorations());else{this._stopAll();let e=++this.workerRequestTokenId;this.workerRequestCompleted=!1,this.workerRequest=Kv(this.providers,this.model,this.editor.getSelection(),this.editor.getOption(118)),this.workerRequest.result.then(t=>{e===this.workerRequestTokenId&&(this.workerRequestCompleted=!0,this.workerRequestValue=t||[],this._beginRenderDecorations())},a.fu)}}_beginRenderDecorations(){let e=new Date().getTime(),t=this.lastCursorPositionChangeTime+250;e>=t?(this.renderDecorationsTimer=-1,this.renderDecorations()):this.renderDecorationsTimer=setTimeout(()=>{this.renderDecorations()},t-e)}renderDecorations(){this.renderDecorationsTimer=-1;let t=[];for(let n of this.workerRequestValue)n.range&&t.push({range:n.range,options:e._getDecorationOptions(n.kind)});this.decorations.set(t),this._hasWordHighlights.set(this.hasDecorations())}static _getDecorationOptions(e){return e===a.pl.Write?this._WRITE_OPTIONS:e===a.pl.Text?this._TEXT_OPTIONS:this._REGULAR_OPTIONS}dispose(){this._stopAll(),this.toUnhook.dispose()}};qv._WRITE_OPTIONS=a.f.register({description:`word-highlight-strong`,stickiness:1,className:`wordHighlightStrong`,overviewRuler:{color:a.xa(Bv),position:a.sc.Center},minimap:{color:a.xa(a.ai),position:a.oc.Inline}}),qv._TEXT_OPTIONS=a.f.register({description:`selection-highlight`,stickiness:1,className:`selectionHighlight`,overviewRuler:{color:a.xa(a.fi),position:a.sc.Center},minimap:{color:a.xa(a.ai),position:a.oc.Inline}}),qv._REGULAR_OPTIONS=a.f.register({description:`word-highlight`,stickiness:1,className:`wordHighlight`,overviewRuler:{color:a.xa(zv),position:a.sc.Center},minimap:{color:a.xa(a.ai),position:a.oc.Inline}});var Jv=class e extends a.Xl{constructor(e,t,n){super(),this.wordHighlighter=null;let r=()=>{e.hasModel()&&(this.wordHighlighter=new qv(e,n.documentHighlightProvider,t))};this._register(e.onDidChangeModel(e=>{this.wordHighlighter&&=(this.wordHighlighter.dispose(),null),r()})),r()}static get(t){return t.getContribution(e.ID)}saveViewState(){return!!(this.wordHighlighter&&this.wordHighlighter.hasDecorations())}moveNext(){this.wordHighlighter&&this.wordHighlighter.moveNext()}moveBack(){this.wordHighlighter&&this.wordHighlighter.moveBack()}restoreViewState(e){this.wordHighlighter&&e&&this.wordHighlighter.restore()}dispose(){this.wordHighlighter&&=(this.wordHighlighter.dispose(),null),super.dispose()}};Jv.ID=`editor.contrib.wordHighlighter`,Jv=Nv([Pv(1,a.Ea),Pv(2,a.Zo)],Jv);var Yv=class extends a.Gi{constructor(e,t){super(t),this._isNext=e}run(e,t){let n=Jv.get(t);n&&(this._isNext?n.moveNext():n.moveBack())}},Xv=class extends Yv{constructor(){super(!0,{id:`editor.action.wordHighlight.next`,label:a.Td(`wordHighlight.next.label`,`Go to Next Symbol Highlight`),alias:`Go to Next Symbol Highlight`,precondition:Vv,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:65,weight:100}})}},Zv=class extends Yv{constructor(){super(!1,{id:`editor.action.wordHighlight.prev`,label:a.Td(`wordHighlight.previous.label`,`Go to Previous Symbol Highlight`),alias:`Go to Previous Symbol Highlight`,precondition:Vv,kbOpts:{kbExpr:o.kn.editorTextFocus,primary:1089,weight:100}})}},Qv=class extends a.Gi{constructor(){super({id:`editor.action.wordHighlight.trigger`,label:a.Td(`wordHighlight.trigger.label`,`Trigger Symbol Highlight`),alias:`Trigger Symbol Highlight`,precondition:Vv.toNegated(),kbOpts:{kbExpr:o.kn.editorTextFocus,primary:0,weight:100}})}run(e,t,n){let r=Jv.get(t);r&&r.restoreViewState(!0)}};a.ta(Jv.ID,Jv),a.$i(Xv),a.$i(Zv),a.$i(Qv),a.ba((e,t)=>{let n=e.getColor(a.Jn);n&&(t.addRule(`.monaco-editor .focused .selectionHighlight { background-color: ${n}; }`),t.addRule(`.monaco-editor .selectionHighlight { background-color: ${n.transparent(.5)}; }`));let r=e.getColor(Fv);r&&t.addRule(`.monaco-editor .wordHighlight { background-color: ${r}; }`);let i=e.getColor(Iv);i&&t.addRule(`.monaco-editor .wordHighlightStrong { background-color: ${i}; }`);let o=e.getColor(a.Yn);o&&t.addRule(`.monaco-editor .selectionHighlight { border: 1px ${a.wa(e.type)?`dotted`:`solid`} ${o}; box-sizing: border-box; }`);let s=e.getColor(Lv);s&&t.addRule(`.monaco-editor .wordHighlight { border: 1px ${a.wa(e.type)?`dashed`:`solid`} ${s}; box-sizing: border-box; }`);let c=e.getColor(Rv);c&&t.addRule(`.monaco-editor .wordHighlightStrong { border: 1px ${a.wa(e.type)?`dashed`:`solid`} ${c}; box-sizing: border-box; }`)});var $v=class extends a.Ki{constructor(e){super(e),this._inSelectionMode=e.inSelectionMode,this._wordNavigationType=e.wordNavigationType}runEditorCommand(e,t,n){if(!t.hasModel())return;let r=a.is(t.getOption(118)),i=t.getModel(),s=t.getSelections().map(e=>{let t=new a.kl(e.positionLineNumber,e.positionColumn),n=this._move(r,i,t,this._wordNavigationType);return this._moveTo(e,n,this._inSelectionMode)});if(i.pushStackElement(),t._getViewModel().setCursorStates(`moveWordCommand`,3,s.map(e=>o.Hn.fromModelSelection(e))),s.length===1){let e=new a.kl(s[0].positionLineNumber,s[0].positionColumn);t.revealPosition(e,0)}}_moveTo(e,t,n){return n?new a.Dl(e.selectionStartLineNumber,e.selectionStartColumn,t.lineNumber,t.column):new a.Dl(t.lineNumber,t.column,t.lineNumber,t.column)}},ey=class extends $v{_move(e,t,n,r){return o.In.moveWordLeft(e,t,n,r)}},ty=class extends $v{_move(e,t,n,r){return o.In.moveWordRight(e,t,n,r)}},ny=class extends ey{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:`cursorWordStartLeft`,precondition:void 0})}},ry=class extends ey{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:`cursorWordEndLeft`,precondition:void 0})}},iy=class extends ey{constructor(){super({inSelectionMode:!1,wordNavigationType:1,id:`cursorWordLeft`,precondition:void 0,kbOpts:{kbExpr:a.Ta.and(o.kn.textInputFocus,a.Ta.and(o.qn,o.V)?.negate()),primary:2063,mac:{primary:527},weight:100}})}},ay=class extends ey{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:`cursorWordStartLeftSelect`,precondition:void 0})}},oy=class extends ey{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:`cursorWordEndLeftSelect`,precondition:void 0})}},sy=class extends ey{constructor(){super({inSelectionMode:!0,wordNavigationType:1,id:`cursorWordLeftSelect`,precondition:void 0,kbOpts:{kbExpr:a.Ta.and(o.kn.textInputFocus,a.Ta.and(o.qn,o.V)?.negate()),primary:3087,mac:{primary:1551},weight:100}})}},cy=class extends ey{constructor(){super({inSelectionMode:!1,wordNavigationType:3,id:`cursorWordAccessibilityLeft`,precondition:void 0})}_move(e,t,n,r){return super._move(a.is(o.dr.wordSeparators.defaultValue),t,n,r)}},ly=class extends ey{constructor(){super({inSelectionMode:!0,wordNavigationType:3,id:`cursorWordAccessibilityLeftSelect`,precondition:void 0})}_move(e,t,n,r){return super._move(a.is(o.dr.wordSeparators.defaultValue),t,n,r)}},uy=class extends ty{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:`cursorWordStartRight`,precondition:void 0})}},dy=class extends ty{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:`cursorWordEndRight`,precondition:void 0,kbOpts:{kbExpr:a.Ta.and(o.kn.textInputFocus,a.Ta.and(o.qn,o.V)?.negate()),primary:2065,mac:{primary:529},weight:100}})}},fy=class extends ty{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:`cursorWordRight`,precondition:void 0})}},py=class extends ty{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:`cursorWordStartRightSelect`,precondition:void 0})}},my=class extends ty{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:`cursorWordEndRightSelect`,precondition:void 0,kbOpts:{kbExpr:a.Ta.and(o.kn.textInputFocus,a.Ta.and(o.qn,o.V)?.negate()),primary:3089,mac:{primary:1553},weight:100}})}},hy=class extends ty{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:`cursorWordRightSelect`,precondition:void 0})}},gy=class extends ty{constructor(){super({inSelectionMode:!1,wordNavigationType:3,id:`cursorWordAccessibilityRight`,precondition:void 0})}_move(e,t,n,r){return super._move(a.is(o.dr.wordSeparators.defaultValue),t,n,r)}},_y=class extends ty{constructor(){super({inSelectionMode:!0,wordNavigationType:3,id:`cursorWordAccessibilityRightSelect`,precondition:void 0})}_move(e,t,n,r){return super._move(a.is(o.dr.wordSeparators.defaultValue),t,n,r)}},vy=class extends a.Ki{constructor(e){super(e),this._whitespaceHeuristics=e.whitespaceHeuristics,this._wordNavigationType=e.wordNavigationType}runEditorCommand(e,t,n){let r=e.get(a.Ps);if(!t.hasModel())return;let i=a.is(t.getOption(118)),s=t.getModel(),c=t.getSelections(),l=t.getOption(5),u=t.getOption(8),d=r.getLanguageConfiguration(s.getLanguageId()).getAutoClosingPairs(),f=t._getViewModel(),p=c.map(e=>new o.zn(this._delete({wordSeparators:i,model:s,selection:e,whitespaceHeuristics:this._whitespaceHeuristics,autoClosingDelete:t.getOption(6),autoClosingBrackets:l,autoClosingQuotes:u,autoClosingPairs:d,autoClosedCharacters:f.getCursorAutoClosedCharacters()},this._wordNavigationType),``));t.pushUndoStop(),t.executeCommands(this.id,p),t.pushUndoStop()}},yy=class extends vy{_delete(e,t){return o.In.deleteWordLeft(e,t)||new a.Ol(1,1,1,1)}},by=class extends vy{_delete(e,t){let n=o.In.deleteWordRight(e,t);if(n)return n;let r=e.model.getLineCount(),i=e.model.getLineMaxColumn(r);return new a.Ol(r,i,r,i)}},xy=class extends yy{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:0,id:`deleteWordStartLeft`,precondition:o.kn.writable})}},Sy=class extends yy{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:2,id:`deleteWordEndLeft`,precondition:o.kn.writable})}},Cy=class extends yy{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:0,id:`deleteWordLeft`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.textInputFocus,primary:2049,mac:{primary:513},weight:100}})}},wy=class extends by{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:0,id:`deleteWordStartRight`,precondition:o.kn.writable})}},Ty=class extends by{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:2,id:`deleteWordEndRight`,precondition:o.kn.writable})}},Ey=class extends by{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:2,id:`deleteWordRight`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.textInputFocus,primary:2068,mac:{primary:532},weight:100}})}},Dy=class extends a.Gi{constructor(){super({id:`deleteInsideWord`,precondition:o.kn.writable,label:a.Td(`deleteInsideWord`,`Delete Word`),alias:`Delete Word`})}run(e,t,n){if(!t.hasModel())return;let r=a.is(t.getOption(118)),i=t.getModel(),s=t.getSelections().map(e=>new o.zn(o.In.deleteInsideWord(r,i,e),``));t.pushUndoStop(),t.executeCommands(this.id,s),t.pushUndoStop()}};a.ea(new ny),a.ea(new ry),a.ea(new iy),a.ea(new ay),a.ea(new oy),a.ea(new sy),a.ea(new uy),a.ea(new dy),a.ea(new fy),a.ea(new py),a.ea(new my),a.ea(new hy),a.ea(new cy),a.ea(new ly),a.ea(new gy),a.ea(new _y),a.ea(new xy),a.ea(new Sy),a.ea(new Cy),a.ea(new wy),a.ea(new Ty),a.ea(new Ey),a.$i(Dy);var Oy=class extends vy{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:0,id:`deleteWordPartLeft`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.textInputFocus,primary:0,mac:{primary:769},weight:100}})}_delete(e,t){return o.Ln.deleteWordPartLeft(e)||new a.Ol(1,1,1,1)}},ky=class extends vy{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:2,id:`deleteWordPartRight`,precondition:o.kn.writable,kbOpts:{kbExpr:o.kn.textInputFocus,primary:0,mac:{primary:788},weight:100}})}_delete(e,t){let n=o.Ln.deleteWordPartRight(e);if(n)return n;let r=e.model.getLineCount(),i=e.model.getLineMaxColumn(r);return new a.Ol(r,i,r,i)}},Ay=class extends $v{_move(e,t,n,r){return o.Ln.moveWordPartLeft(e,t,n)}},jy=class extends Ay{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:`cursorWordPartLeft`,precondition:void 0,kbOpts:{kbExpr:o.kn.textInputFocus,primary:0,mac:{primary:783},weight:100}})}};a.ja.registerCommandAlias(`cursorWordPartStartLeft`,`cursorWordPartLeft`);var My=class extends Ay{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:`cursorWordPartLeftSelect`,precondition:void 0,kbOpts:{kbExpr:o.kn.textInputFocus,primary:0,mac:{primary:1807},weight:100}})}};a.ja.registerCommandAlias(`cursorWordPartStartLeftSelect`,`cursorWordPartLeftSelect`);var Ny=class extends $v{_move(e,t,n,r){return o.Ln.moveWordPartRight(e,t,n)}},Py=class extends Ny{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:`cursorWordPartRight`,precondition:void 0,kbOpts:{kbExpr:o.kn.textInputFocus,primary:0,mac:{primary:785},weight:100}})}},Fy=class extends Ny{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:`cursorWordPartRightSelect`,precondition:void 0,kbOpts:{kbExpr:o.kn.textInputFocus,primary:0,mac:{primary:1809},weight:100}})}};a.ea(new Oy),a.ea(new ky),a.ea(new jy),a.ea(new My),a.ea(new Py),a.ea(new Fy);var Iy=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Ly=function(e,t){return function(n,r){t(n,r,e)}},Ry=new a.Da(`accessibilityHelpWidgetVisible`,!1),zy=class e extends a.Xl{constructor(e,t){super(),this._editor=e,this._widget=this._register(t.createInstance(Vy,this._editor))}static get(t){return t.getContribution(e.ID)}show(){this._widget.show()}hide(){this._widget.hide()}};zy.ID=`editor.contrib.accessibilityHelpController`,zy=Iy([Ly(1,a.fc)],zy);function By(e,t){return!e||e.length===0?o._t.noSelection:e.length===1?t?a.Rc(o._t.singleSelectionRange,e[0].positionLineNumber,e[0].positionColumn,t):a.Rc(o._t.singleSelection,e[0].positionLineNumber,e[0].positionColumn):t?a.Rc(o._t.multiSelectionRange,e.length,t):e.length>0?a.Rc(o._t.multiSelection,e.length):``}var Vy=class e extends o.Dn{constructor(e,t,n,r){super(),this._contextKeyService=t,this._keybindingService=n,this._openerService=r,this._editor=e,this._isVisibleKey=Ry.bindTo(this._contextKeyService),this._domNode=o.sr(document.createElement(`div`)),this._domNode.setClassName(`accessibilityHelpWidget`),this._domNode.setDisplay(`none`),this._domNode.setAttribute(`role`,`dialog`),this._domNode.setAttribute(`aria-hidden`,`true`),this._contentDomNode=o.sr(document.createElement(`div`)),this._contentDomNode.setAttribute(`role`,`document`),this._domNode.appendChild(this._contentDomNode),this._isVisible=!1,this._register(this._editor.onDidLayoutChange(()=>{this._isVisible&&this._layout()})),this._register(a.Ja(this._contentDomNode.domNode,`keydown`,e=>{if(this._isVisible&&(e.equals(2083)&&(o.Zn(o._t.emergencyConfOn),this._editor.updateOptions({accessibilitySupport:`on`}),a.$a(this._contentDomNode.domNode),this._buildContent(),this._contentDomNode.domNode.focus(),e.preventDefault(),e.stopPropagation()),e.equals(2086))){o.Zn(o._t.openingDocs);let t=this._editor.getRawOptions().accessibilityHelpUrl;t===void 0&&(t=`https://go.microsoft.com/fwlink/?linkid=852450`),this._openerService.open(a.Al.parse(t)),e.preventDefault(),e.stopPropagation()}})),this.onblur(this._contentDomNode.domNode,()=>{this.hide()}),this._editor.addOverlayWidget(this)}dispose(){this._editor.removeOverlayWidget(this),super.dispose()}getId(){return e.ID}getDomNode(){return this._domNode.domNode}getPosition(){return{preference:null}}show(){this._isVisible||(this._isVisible=!0,this._isVisibleKey.set(!0),this._layout(),this._domNode.setDisplay(`block`),this._domNode.setAttribute(`aria-hidden`,`false`),this._contentDomNode.domNode.tabIndex=0,this._buildContent(),this._contentDomNode.domNode.focus())}_descriptionForCommand(e,t,n){let r=this._keybindingService.lookupKeybinding(e);return r?a.Rc(t,r.getAriaLabel()):a.Rc(n,e)}_buildContent(){let e=this._editor.getOptions(),t=this._editor.getSelections(),n=0;if(t){let e=this._editor.getModel();e&&t.forEach(t=>{n+=e.getValueLengthInRange(t)})}let r=By(t,n);e.get(55)?e.get(82)?r+=o._t.readonlyDiffEditor:r+=o._t.editableDiffEditor:e.get(82)?r+=o._t.readonlyEditor:r+=o._t.editableEditor;let i=a.bd?o._t.changeConfigToOnMac:o._t.changeConfigToOnWinLinux;switch(e.get(2)){case 0:r+=`
154
+
155
+ - `+i;break;case 2:r+=`
156
+
157
+ - `+o._t.auto_on;break;case 1:r+=`
158
+
159
+ - `+o._t.auto_off,r+=` `+i;break}e.get(131)?r+=`
160
+
161
+ - `+this._descriptionForCommand(K_.ID,o._t.tabFocusModeOnMsg,o._t.tabFocusModeOnMsgNoKb):r+=`
162
+
163
+ - `+this._descriptionForCommand(K_.ID,o._t.tabFocusModeOffMsg,o._t.tabFocusModeOffMsgNoKb);let s=a.bd?o._t.openDocMac:o._t.openDocWinLinux;r+=`
164
+
165
+ - `+s,r+=`
166
+
167
+ `+o._t.outroMsg,this._contentDomNode.domNode.appendChild(o.et(r)),this._contentDomNode.domNode.setAttribute(`aria-label`,r)}hide(){this._isVisible&&(this._isVisible=!1,this._isVisibleKey.reset(),this._domNode.setDisplay(`none`),this._domNode.setAttribute(`aria-hidden`,`true`),this._contentDomNode.domNode.tabIndex=-1,a.$a(this._contentDomNode.domNode),this._editor.focus())}_layout(){let t=this._editor.getLayoutInfo(),n=Math.max(5,Math.min(e.WIDTH,t.width-40)),r=Math.max(5,Math.min(e.HEIGHT,t.height-40));this._domNode.setWidth(n),this._domNode.setHeight(r);let i=Math.round((t.height-r)/2);this._domNode.setTop(i);let a=Math.round((t.width-n)/2);this._domNode.setLeft(a)}};Vy.ID=`editor.contrib.accessibilityHelpWidget`,Vy.WIDTH=500,Vy.HEIGHT=300,Vy=Iy([Ly(1,a.Ea),Ly(2,o.At),Ly(3,a.n)],Vy);var Hy=class extends a.Gi{constructor(){super({id:`editor.action.showAccessibilityHelp`,label:o._t.showAccessibilityHelpAction,alias:`Show Accessibility Help`,precondition:void 0,kbOpts:{primary:571,weight:100,linux:{primary:1595,secondary:[571]}}})}run(e,t){let n=zy.get(t);n&&n.show()}};a.ta(zy.ID,zy),a.$i(Hy),a.ea(new(a.Ki.bindToContribution(zy.get))({id:`closeAccessibilityHelp`,precondition:Ry,handler:e=>e.hide(),kbOpts:{weight:200,kbExpr:o.kn.focus,primary:9,secondary:[1033]}})),a.ba((e,t)=>{let n=e.getColor(a.$n);n&&t.addRule(`.monaco-editor .accessibilityHelpWidget { background-color: ${n}; }`);let r=e.getColor(a.tr);r&&t.addRule(`.monaco-editor .accessibilityHelpWidget { color: ${r}; }`);let i=e.getColor(a.zi);i&&t.addRule(`.monaco-editor .accessibilityHelpWidget { box-shadow: 0 2px 8px ${i}; }`);let o=e.getColor(a.en);o&&t.addRule(`.monaco-editor .accessibilityHelpWidget { border: 2px solid ${o}; }`)});var Uy=class extends a.Xl{constructor(e){super(),this.editor=e,this.widget=null,a._d&&(this._register(e.onDidChangeConfiguration(()=>this.update())),this.update())}update(){let e=!this.editor.getOption(82);!this.widget&&e?this.widget=new Wy(this.editor):this.widget&&!e&&(this.widget.dispose(),this.widget=null)}dispose(){super.dispose(),this.widget&&=(this.widget.dispose(),null)}};Uy.ID=`editor.contrib.iPadShowKeyboard`;var Wy=class e extends a.Xl{constructor(e){super(),this.editor=e,this._domNode=document.createElement(`textarea`),this._domNode.className=`iPadShowKeyboard`,this._register(a.Ka(this._domNode,`touchstart`,e=>{this.editor.focus()})),this._register(a.Ka(this._domNode,`focus`,e=>{this.editor.focus()})),this.editor.addOverlayWidget(this)}dispose(){this.editor.removeOverlayWidget(this),super.dispose()}getId(){return e.ID}getDomNode(){return this._domNode}getPosition(){return{preference:1}}};Wy.ID=`editor.contrib.ShowKeyboardWidget`,a.ta(Uy.ID,Uy);var Gy=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Ky=function(e,t){return function(n,r){t(n,r,e)}},qy=class e extends a.Xl{constructor(e,t,n){super(),this._editor=e,this._languageService=n,this._widget=null,this._register(this._editor.onDidChangeModel(e=>this.stop())),this._register(this._editor.onDidChangeModelLanguage(e=>this.stop())),this._register(a.xl.onDidChange(e=>this.stop())),this._register(this._editor.onKeyUp(e=>e.keyCode===9&&this.stop()))}static get(t){return t.getContribution(e.ID)}dispose(){this.stop(),super.dispose()}launch(){this._widget||this._editor.hasModel()&&(this._widget=new Zy(this._editor,this._languageService))}stop(){this._widget&&=(this._widget.dispose(),null)}};qy.ID=`editor.contrib.inspectTokens`,qy=Gy([Ky(1,o.A),Ky(2,a.Js)],qy);var Jy=class extends a.Gi{constructor(){super({id:`editor.action.inspectTokens`,label:o.yt.inspectTokensAction,alias:`Developer: Inspect Tokens`,precondition:void 0})}run(e,t){let n=qy.get(t);n&&n.launch()}};function Yy(e){let t=``;for(let n=0,r=e.length;n<r;n++){let r=e.charCodeAt(n);switch(r){case 9:t+=`→`;break;case 32:t+=`·`;break;default:t+=String.fromCharCode(r)}}return t}function Xy(e,t){let n=a.xl.get(t);if(n)return n;let r=e.encodeLanguageId(t);return{getInitialState:()=>a.js,tokenize:(e,n,r)=>a.Ms(t,r),tokenizeEncoded:(e,t,n)=>a.Ns(r,n)}}var Zy=class e extends a.Xl{constructor(e,t){super(),this.allowEditorOverflow=!0,this._editor=e,this._languageService=t,this._model=this._editor.getModel(),this._domNode=document.createElement(`div`),this._domNode.className=`tokens-inspect-widget`,this._tokenizationSupport=Xy(this._languageService.languageIdCodec,this._model.getLanguageId()),this._compute(this._editor.getPosition()),this._register(this._editor.onDidChangeCursorPosition(e=>this._compute(this._editor.getPosition()))),this._editor.addContentWidget(this)}dispose(){this._editor.removeContentWidget(this),super.dispose()}getId(){return e._ID}_compute(e){let t=this._getTokensAtLine(e.lineNumber),n=0;for(let r=t.tokens1.length-1;r>=0;r--){let i=t.tokens1[r];if(e.column-1>=i.offset){n=r;break}}let r=0;for(let n=t.tokens2.length>>>1;n>=0;n--)if(e.column-1>=t.tokens2[n<<1]){r=n;break}let i=this._model.getLineContent(e.lineNumber),o=``;if(n<t.tokens1.length){let e=t.tokens1[n].offset,r=n+1<t.tokens1.length?t.tokens1[n+1].offset:i.length;o=i.substring(e,r)}a.Eo(this._domNode,a.za(`h2.tm-token`,void 0,Yy(o),a.za(`span.tm-token-length`,void 0,`${o.length} ${o.length===1?`char`:`chars`}`))),a.Xa(this._domNode,a.za(`hr.tokens-inspect-separator`,{style:`clear:both`}));let s=(r<<1)+1<t.tokens2.length?this._decodeMetadata(t.tokens2[(r<<1)+1]):null;a.Xa(this._domNode,a.za(`table.tm-metadata-table`,void 0,a.za(`tbody`,void 0,a.za(`tr`,void 0,a.za(`td.tm-metadata-key`,void 0,`language`),a.za(`td.tm-metadata-value`,void 0,`${s?s.languageId:`-?-`}`)),a.za(`tr`,void 0,a.za(`td.tm-metadata-key`,void 0,`token type`),a.za(`td.tm-metadata-value`,void 0,`${s?this._tokenTypeToString(s.tokenType):`-?-`}`)),a.za(`tr`,void 0,a.za(`td.tm-metadata-key`,void 0,`font style`),a.za(`td.tm-metadata-value`,void 0,`${s?this._fontStyleToString(s.fontStyle):`-?-`}`)),a.za(`tr`,void 0,a.za(`td.tm-metadata-key`,void 0,`foreground`),a.za(`td.tm-metadata-value`,void 0,`${s?a.Bi.Format.CSS.formatHex(s.foreground):`-?-`}`)),a.za(`tr`,void 0,a.za(`td.tm-metadata-key`,void 0,`background`),a.za(`td.tm-metadata-value`,void 0,`${s?a.Bi.Format.CSS.formatHex(s.background):`-?-`}`))))),a.Xa(this._domNode,a.za(`hr.tokens-inspect-separator`)),n<t.tokens1.length&&a.Xa(this._domNode,a.za(`span.tm-token-type`,void 0,t.tokens1[n].type)),this._editor.layoutContentWidget(this)}_decodeMetadata(e){let t=a.xl.getColorMap(),n=a.Xo.getLanguageId(e),r=a.Xo.getTokenType(e),i=a.Xo.getFontStyle(e),o=a.Xo.getForeground(e),s=a.Xo.getBackground(e);return{languageId:this._languageService.languageIdCodec.decodeLanguageId(n),tokenType:r,fontStyle:i,foreground:t[o],background:t[s]}}_tokenTypeToString(e){switch(e){case 0:return`Other`;case 1:return`Comment`;case 2:return`String`;case 3:return`RegEx`;default:return`??`}}_fontStyleToString(e){let t=``;return e&1&&(t+=`italic `),e&2&&(t+=`bold `),e&4&&(t+=`underline `),e&8&&(t+=`strikethrough `),t.length===0&&(t=`---`),t}_getTokensAtLine(e){let t=this._getStateBeforeLine(e),n=this._tokenizationSupport.tokenize(this._model.getLineContent(e),!0,t),r=this._tokenizationSupport.tokenizeEncoded(this._model.getLineContent(e),!0,t);return{startState:t,tokens1:n.tokens,tokens2:r.tokens,endState:n.endState}}_getStateBeforeLine(e){let t=this._tokenizationSupport.getInitialState();for(let n=1;n<e;n++)t=this._tokenizationSupport.tokenize(this._model.getLineContent(n),!0,t).endState;return t}getDomNode(){return this._domNode}getPosition(){return{position:this._editor.getPosition(),preference:[2,1]}}};Zy._ID=`editor.contrib.inspectTokensWidget`,a.ta(qy.ID,qy),a.$i(Jy),a.ba((e,t)=>{let n=e.getColor(a.An);if(n){let r=a.wa(e.type)?2:1;t.addRule(`.monaco-editor .tokens-inspect-widget { border: ${r}px solid ${n}; }`),t.addRule(`.monaco-editor .tokens-inspect-widget .tokens-inspect-separator { background-color: ${n}; }`)}let r=e.getColor(a.kn);r&&t.addRule(`.monaco-editor .tokens-inspect-widget { background-color: ${r}; }`);let i=e.getColor(a.jn);i&&t.addRule(`.monaco-editor .tokens-inspect-widget { color: ${i}; }`)});var Qy=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},$y=function(e,t){return function(n,r){t(n,r,e)}},eb=class e{constructor(e,t){this.quickInputService=e,this.keybindingService=t,this.registry=a.Ws.as(o.F.Quickaccess)}provide(t){let n=new a.Zl;return n.add(t.onDidAccept(()=>{let[e]=t.selectedItems;e&&this.quickInputService.quickAccess.show(e.prefix,{preserveValue:!0})})),n.add(t.onDidChangeValue(t=>{let n=this.registry.getQuickAccessProvider(t.substr(e.PREFIX.length));n&&n.prefix&&n.prefix!==e.PREFIX&&this.quickInputService.quickAccess.show(n.prefix,{preserveValue:!0})})),t.items=this.getQuickAccessProviders(),n}getQuickAccessProviders(){let t=[];for(let n of this.registry.getQuickAccessProviders().sort((e,t)=>e.prefix.localeCompare(t.prefix)))if(n.prefix!==e.PREFIX)for(let e of n.helpEntries){let r=e.prefix||n.prefix,i=r||`…`;t.push({prefix:r,label:i,keybinding:e.commandId?this.keybindingService.lookupKeybinding(e.commandId):void 0,ariaLabel:a.Td(`helpPickAriaLabel`,`{0}, {1}`,i,e.description),description:e.description})}return t}};eb.PREFIX=`?`,eb=Qy([$y(0,o.P),$y(1,o.At)],eb),a.Ws.as(o.F.Quickaccess).registerQuickAccessProvider({ctor:eb,prefix:``,helpEntries:[{description:o.xt.helpQuickAccessActionLabel}]});var tb=class{constructor(e){this.options=e,this.rangeHighlightDecorationId=void 0}provide(e,t){let n=new a.Zl;e.canAcceptInBackground=!!this.options?.canAcceptInBackground,e.matchOnLabel=e.matchOnDescription=e.matchOnDetail=e.sortByLabel=!1;let r=n.add(new a.$l);return r.value=this.doProvide(e,t),n.add(this.onDidActiveTextEditorControlChange(()=>{r.value=void 0,r.value=this.doProvide(e,t)})),n}doProvide(e,t){let n=new a.Zl,r=this.activeTextEditorControl;if(r&&this.canProvideWithTextEditor(r)){let i={editor:r},s=o.x(r);if(s){let e=a.Iu(r.saveViewState());n.add(s.onDidChangeCursorPosition(()=>{e=a.Iu(r.saveViewState())})),i.restoreViewState=()=>{e&&r===this.activeTextEditorControl&&r.restoreViewState(e)},n.add(a.ou(t.onCancellationRequested)(()=>i.restoreViewState?.call(i)))}n.add(a.au(()=>this.clearDecorations(r))),n.add(this.provideWithTextEditor(i,e,t))}else n.add(this.provideWithoutTextEditor(e,t));return n}canProvideWithTextEditor(e){return!0}gotoLocation({editor:e},t){e.setSelection(t.range),e.revealRangeInCenter(t.range,0),t.preserveFocus||e.focus()}getModel(e){return o.C(e)?e.getModel()?.modified:e.getModel()}addDecorations(e,t){e.changeDecorations(e=>{let n=[];this.rangeHighlightDecorationId&&=(n.push(this.rangeHighlightDecorationId.overviewRulerDecorationId),n.push(this.rangeHighlightDecorationId.rangeHighlightId),void 0);let r=[{range:t,options:{description:`quick-access-range-highlight`,className:`rangeHighlight`,isWholeLine:!0}},{range:t,options:{description:`quick-access-range-highlight-overview`,overviewRuler:{color:a.xa(a.Pt),position:a.sc.Full}}}],[i,o]=e.deltaDecorations(n,r);this.rangeHighlightDecorationId={rangeHighlightId:i,overviewRulerDecorationId:o}})}clearDecorations(e){let t=this.rangeHighlightDecorationId;t&&(e.changeDecorations(e=>{e.deltaDecorations([t.overviewRulerDecorationId,t.rangeHighlightId],[])}),this.rangeHighlightDecorationId=void 0)}},nb=class e extends tb{constructor(){super({canAcceptInBackground:!0})}provideWithoutTextEditor(e){let t=a.Td(`cannotRunGotoLine`,`Open a text editor first to go to a line.`);return e.items=[{label:t}],e.ariaLabel=t,a.Xl.None}provideWithTextEditor(t,n,r){let i=t.editor,s=new a.Zl;s.add(n.onDidAccept(e=>{let[r]=n.selectedItems;if(r){if(!this.isValidLineNumber(i,r.lineNumber))return;this.gotoLocation(t,{range:this.toRange(r.lineNumber,r.column),keyMods:n.keyMods,preserveFocus:e.inBackground}),e.inBackground||n.hide()}}));let c=()=>{let t=this.parsePosition(i,n.value.trim().substr(e.PREFIX.length)),r=this.getPickLabel(i,t.lineNumber,t.column);if(n.items=[{lineNumber:t.lineNumber,column:t.column,label:r}],n.ariaLabel=r,!this.isValidLineNumber(i,t.lineNumber)){this.clearDecorations(i);return}let a=this.toRange(t.lineNumber,t.column);i.revealRangeInCenter(a,0),this.addDecorations(i,a)};c(),s.add(n.onDidChangeValue(()=>c()));let l=o.x(i);return l&&l.getOptions().get(61).renderType===2&&(l.updateOptions({lineNumbers:`on`}),s.add(a.au(()=>l.updateOptions({lineNumbers:`relative`})))),s}toRange(e=1,t=1){return{startLineNumber:e,startColumn:t,endLineNumber:e,endColumn:t}}parsePosition(e,t){let n=t.split(/,|:|#/).map(e=>parseInt(e,10)).filter(e=>!isNaN(e)),r=this.lineCount(e)+1;return{lineNumber:n[0]>0?n[0]:r+n[0],column:n[1]}}getPickLabel(e,t,n){if(this.isValidLineNumber(e,t))return this.isValidColumn(e,t,n)?a.Td(`gotoLineColumnLabel`,`Go to line {0} and character {1}.`,t,n):a.Td(`gotoLineLabel`,`Go to line {0}.`,t);let r=e.getPosition()||{lineNumber:1,column:1},i=this.lineCount(e);return i>1?a.Td(`gotoLineLabelEmptyWithLimit`,`Current Line: {0}, Character: {1}. Type a line number between 1 and {2} to navigate to.`,r.lineNumber,r.column,i):a.Td(`gotoLineLabelEmpty`,`Current Line: {0}, Character: {1}. Type a line number to navigate to.`,r.lineNumber,r.column)}isValidLineNumber(e,t){return!t||typeof t!=`number`?!1:t>0&&t<=this.lineCount(e)}isValidColumn(e,t,n){if(!n||typeof n!=`number`)return!1;let r=this.getModel(e);if(!r)return!1;let i={lineNumber:t,column:n};return r.validatePosition(i).equals(i)}lineCount(e){return this.getModel(e)?.getLineCount()??0}};nb.PREFIX=`:`;var rb=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},ib=function(e,t){return function(n,r){t(n,r,e)}},ab=class extends nb{constructor(e){super(),this.editorService=e,this.onDidActiveTextEditorControlChange=a.Wl.None}get activeTextEditorControl(){return a.Iu(this.editorService.getFocusedCodeEditor())}};ab=rb([ib(0,a.dc)],ab);var ob=class e extends a.Gi{constructor(){super({id:e.ID,label:o.vt.gotoLineActionLabel,alias:`Go to Line/Column...`,precondition:void 0,kbOpts:{kbExpr:o.kn.focus,primary:2085,mac:{primary:293},weight:100}})}run(e){e.get(o.P).quickAccess.show(ab.PREFIX)}};ob.ID=`editor.action.gotoLine`,a.$i(ob),a.Ws.as(o.F.Quickaccess).registerQuickAccessProvider({ctor:ab,prefix:ab.PREFIX,helpEntries:[{description:o.vt.gotoLineActionLabel,commandId:ob.ID}]});var sb=[void 0,[]];function cb(e,t,n=0,r=0){let i=t;return i.values&&i.values.length>1?lb(e,i.values,n,r):ub(e,t,n,r)}function lb(e,t,n,r){let i=0,a=[];for(let o of t){let[t,s]=ub(e,o,n,r);if(typeof t!=`number`)return sb;i+=t,a.push(...s)}return[i,db(a)]}function ub(e,t,n,r){let i=o.an(t.original,t.originalLowercase,n,e,e.toLowerCase(),r,{firstMatchCanBeWeak:!0,boostFullMatch:!0});return i?[i[0],o.in(i)]:sb}Object.freeze({score:0});function db(e){let t=e.sort((e,t)=>e.start-t.start),n=[],r;for(let e of t)!r||!fb(r,e)?(r=e,n.push(e)):(r.start=Math.min(r.start,e.start),r.end=Math.max(r.end,e.end));return n}function fb(e,t){return!(e.end<t.start||t.end<e.start)}function pb(e){return e.startsWith(`"`)&&e.endsWith(`"`)}var mb=` `;function hb(e){typeof e!=`string`&&(e=``);let t=e.toLowerCase(),{pathNormalized:n,normalized:r,normalizedLowercase:i}=gb(e),o=n.indexOf(a.Il)>=0,s=pb(e),c,l=e.split(mb);if(l.length>1)for(let e of l){let t=pb(e),{pathNormalized:n,normalized:r,normalizedLowercase:i}=gb(e);r&&(c||=[],c.push({original:e,originalLowercase:e.toLowerCase(),pathNormalized:n,normalized:r,normalizedLowercase:i,expectContiguousMatch:t}))}return{original:e,originalLowercase:t,pathNormalized:n,normalized:r,normalizedLowercase:i,values:c,containsPathSeparator:o,expectContiguousMatch:s}}function gb(e){let t;t=a.Cd?e.replace(/\//g,a.Il):e.replace(/\\/g,a.Il);let n=a.cl(t).replace(/\s|"/g,``);return{pathNormalized:t,normalized:n,normalizedLowercase:n.toLowerCase()}}function _b(e){return hb(Array.isArray(e)?e.map(e=>e.original).join(mb):e.original)}var vb=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},yb=function(e,t){return function(n,r){t(n,r,e)}},bb=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},$=class e extends tb{constructor(e,t,n=Object.create(null)){super(n),this._languageFeaturesService=e,this._outlineModelService=t,this.options=n,this.options.canAcceptInBackground=!0}provideWithoutTextEditor(e){return this.provideLabelPick(e,a.Td(`cannotRunGotoSymbolWithoutEditor`,`To go to a symbol, first open a text editor with symbol information.`)),a.Xl.None}provideWithTextEditor(e,t,n){let r=e.editor,i=this.getModel(r);return i?this._languageFeaturesService.documentSymbolProvider.has(i)?this.doProvideWithEditorSymbols(e,i,t,n):this.doProvideWithoutEditorSymbols(e,i,t,n):a.Xl.None}doProvideWithoutEditorSymbols(e,t,n,r){let i=new a.Zl;return this.provideLabelPick(n,a.Td(`cannotRunGotoSymbolWithoutSymbolProvider`,`The active text editor does not provide symbol information.`)),bb(this,void 0,void 0,function*(){!(yield this.waitForLanguageSymbolRegistry(t,i))||r.isCancellationRequested||i.add(this.doProvideWithEditorSymbols(e,t,n,r))}),i}provideLabelPick(e,t){e.items=[{label:t,index:0,kind:14}],e.ariaLabel=t}waitForLanguageSymbolRegistry(e,t){return bb(this,void 0,void 0,function*(){if(this._languageFeaturesService.documentSymbolProvider.has(e))return!0;let n=new a.ps,r=t.add(this._languageFeaturesService.documentSymbolProvider.onDidChange(()=>{this._languageFeaturesService.documentSymbolProvider.has(e)&&(r.dispose(),n.complete(!0))}));return t.add(a.au(()=>n.complete(!1))),n.p})}doProvideWithEditorSymbols(t,n,r,i){let o=t.editor,s=new a.Zl;s.add(r.onDidAccept(e=>{let[n]=r.selectedItems;n&&n.range&&(this.gotoLocation(t,{range:n.range.selection,keyMods:r.keyMods,preserveFocus:e.inBackground}),e.inBackground||r.hide())})),s.add(r.onDidTriggerItemButton(({item:e})=>{e&&e.range&&(this.gotoLocation(t,{range:e.range.selection,keyMods:r.keyMods,forceSideBySide:!0}),r.hide())}));let c=this.getDocumentSymbols(n,i),l,u=t=>bb(this,void 0,void 0,function*(){l?.dispose(!0),r.busy=!1,l=new a.Vl(i),r.busy=!0;try{let n=hb(r.value.substr(e.PREFIX.length).trim()),o=yield this.doGetSymbolPicks(c,n,void 0,l.token);if(i.isCancellationRequested)return;if(o.length>0){if(r.items=o,t&&n.original.length===0){let e=a.Ku(o,e=>!!(e.type!==`separator`&&e.range&&a.Ol.containsPosition(e.range.decoration,t)));e&&(r.activeItems=[e])}}else n.original.length>0?this.provideLabelPick(r,a.Td(`noMatchingSymbolResults`,`No matching editor symbols`)):this.provideLabelPick(r,a.Td(`noSymbolResults`,`No editor symbols`))}finally{i.isCancellationRequested||(r.busy=!1)}});s.add(r.onDidChangeValue(()=>u(void 0))),u(o.getSelection()?.getPosition());let d=2;return s.add(r.onDidChangeActive(()=>{let[e]=r.activeItems;if(e&&e.range){if(d-- >0)return;o.revealRangeInCenter(e.range.selection,0),this.addDecorations(o,e.range.decoration)}})),s}doGetSymbolPicks(t,n,r,i){return bb(this,void 0,void 0,function*(){let o=yield t;if(i.isCancellationRequested)return[];let s=n.original.indexOf(e.SCOPE_PREFIX)===0,c=s?1:0,l,u;n.values&&n.values.length>1?(l=_b(n.values[0]),u=_b(n.values.slice(1))):l=n;let d=[];for(let e=0;e<o.length;e++){let t=o[e],i=a.ll(t.name),s=`$(${a.yl.toIcon(t.kind).id}) ${i}`,f=s.length-i.length,p=t.containerName;r?.extraContainerLabel&&(p=p?`${r.extraContainerLabel} • ${p}`:r.extraContainerLabel);let m,h,g,_;if(n.original.length>c){let e=!1;if(l!==n&&([m,h]=cb(s,Object.assign(Object.assign({},n),{values:void 0}),c,f),typeof m==`number`&&(e=!0)),typeof m!=`number`&&([m,h]=cb(s,l,c,f),typeof m!=`number`))continue;if(!e&&u){if(p&&u.original.length>0&&([g,_]=cb(p,u)),typeof g!=`number`)continue;typeof m==`number`&&(m+=g)}}let v=t.tags&&t.tags.indexOf(1)>=0;d.push({index:e,kind:t.kind,score:m,label:s,ariaLabel:i,description:p,highlights:v?void 0:{label:h,description:_},range:{selection:a.Ol.collapseToStart(t.selectionRange),decoration:t.range},strikethrough:v,buttons:(()=>{let e=this.options?.openSideBySideDirection?this.options?.openSideBySideDirection():void 0;if(e)return[{iconClass:e===`right`?a.Tl.splitHorizontal.classNames:a.Tl.splitVertical.classNames,tooltip:e===`right`?a.Td(`openToSide`,`Open to the Side`):a.Td(`openToBottom`,`Open to the Bottom`)}]})()})}let f=d.sort((e,t)=>s?this.compareByKindAndScore(e,t):this.compareByScore(e,t)),p=[];if(s){let e,t,n=0;function r(){t&&typeof e==`number`&&n>0&&(t.label=a.Rc(Sb[e]||xb,n))}for(let i of f)e===i.kind?n++:(r(),e=i.kind,n=1,t={type:`separator`},p.push(t)),p.push(i);r()}else f.length>0&&(p=[{label:a.Td(`symbols`,`symbols ({0})`,d.length),type:`separator`},...f]);return p})}compareByScore(e,t){if(typeof e.score!=`number`&&typeof t.score==`number`)return 1;if(typeof e.score==`number`&&typeof t.score!=`number`)return-1;if(typeof e.score==`number`&&typeof t.score==`number`){if(e.score>t.score)return-1;if(e.score<t.score)return 1}return e.index<t.index?-1:e.index>t.index?1:0}compareByKindAndScore(e,t){let n=Sb[e.kind]||xb,r=Sb[t.kind]||xb,i=n.localeCompare(r);return i===0?this.compareByScore(e,t):i}getDocumentSymbols(e,t){return bb(this,void 0,void 0,function*(){let n=yield this._outlineModelService.getOrCreate(e,t);return t.isCancellationRequested?[]:n.asListOfDocumentSymbols()})}};$.PREFIX=`@`,$.SCOPE_PREFIX=`:`,$.PREFIX_BY_CATEGORY=`${$.PREFIX}${$.SCOPE_PREFIX}`,$=vb([yb(0,a.Zo),yb(1,xd)],$);var xb=a.Td(`property`,`properties ({0})`),Sb={5:a.Td(`method`,`methods ({0})`),11:a.Td(`function`,`functions ({0})`),8:a.Td(`_constructor`,`constructors ({0})`),12:a.Td(`variable`,`variables ({0})`),4:a.Td(`class`,`classes ({0})`),22:a.Td(`struct`,`structs ({0})`),23:a.Td(`event`,`events ({0})`),24:a.Td(`operator`,`operators ({0})`),10:a.Td(`interface`,`interfaces ({0})`),2:a.Td(`namespace`,`namespaces ({0})`),3:a.Td(`package`,`packages ({0})`),25:a.Td(`typeParameter`,`type parameters ({0})`),1:a.Td(`modules`,`modules ({0})`),6:a.Td(`property`,`properties ({0})`),9:a.Td(`enum`,`enumerations ({0})`),21:a.Td(`enumMember`,`enumeration members ({0})`),14:a.Td(`string`,`strings ({0})`),0:a.Td(`file`,`files ({0})`),17:a.Td(`array`,`arrays ({0})`),15:a.Td(`number`,`numbers ({0})`),16:a.Td(`boolean`,`booleans ({0})`),18:a.Td(`object`,`objects ({0})`),19:a.Td(`key`,`keys ({0})`),7:a.Td(`field`,`fields ({0})`),13:a.Td(`constant`,`constants ({0})`)},Cb=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},wb=function(e,t){return function(n,r){t(n,r,e)}},Tb=class extends ${constructor(e,t,n){super(t,n),this.editorService=e,this.onDidActiveTextEditorControlChange=a.Wl.None}get activeTextEditorControl(){return a.Iu(this.editorService.getFocusedCodeEditor())}};Tb=Cb([wb(0,a.dc),wb(1,a.Zo),wb(2,xd)],Tb);var Eb=class e extends a.Gi{constructor(){super({id:e.ID,label:o.St.quickOutlineActionLabel,alias:`Go to Symbol...`,precondition:o.kn.hasDocumentSymbolProvider,kbOpts:{kbExpr:o.kn.focus,primary:3117,weight:100},contextMenuOpts:{group:`navigation`,order:3}})}run(e){e.get(o.P).quickAccess.show($.PREFIX)}};Eb.ID=`editor.action.quickOutline`,a.$i(Eb),a.Ws.as(o.F.Quickaccess).registerQuickAccessProvider({ctor:Tb,prefix:$.PREFIX,helpEntries:[{description:o.St.quickOutlineActionLabel,prefix:$.PREFIX,commandId:Eb.ID},{description:o.St.quickOutlineByCategoryActionLabel,prefix:$.PREFIX_BY_CATEGORY}]});function Db(e,t){return t&&(e.stack||e.stacktrace)?a.Td(`stackTrace.format`,`{0}: {1}`,kb(e),Ob(e.stack)||Ob(e.stacktrace)):kb(e)}function Ob(e){return Array.isArray(e)?e.join(`
168
+ `):e}function kb(e){return typeof e.code==`string`&&typeof e.errno==`number`&&typeof e.syscall==`string`?a.Td(`nodeExceptionMessage`,`A system error occurred ({0})`,e.message):e.message||a.Td(`error.defaultMessage`,`An unknown error occurred. Please consult the log for more details.`)}function Ab(e=null,t=!1){if(!e)return a.Td(`error.defaultMessage`,`An unknown error occurred. Please consult the log for more details.`);if(Array.isArray(e)){let n=a.Vu(e),r=Ab(n[0],t);return n.length>1?a.Td(`error.moreErrors`,`{0} ({1} errors in total)`,r,n.length):r}if(a.Nu(e))return e;if(e.detail){let n=e.detail;if(n.error)return Db(n.error,t);if(n.exception)return Db(n.exception,t)}return e.stack?Db(e,t):e.message?e.message:a.Td(`error.defaultMessage`,`An unknown error occurred. Please consult the log for more details.`)}var jb=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Mb;(function(e){e[e.NO_ACTION=0]=`NO_ACTION`,e[e.CLOSE_PICKER=1]=`CLOSE_PICKER`,e[e.REFRESH_PICKER=2]=`REFRESH_PICKER`,e[e.REMOVE_ITEM=3]=`REMOVE_ITEM`})(Mb||={});function Nb(e){let t=e;return Array.isArray(t.items)}function Pb(e){let t=e;return!!t.picks&&t.additionalPicks instanceof Promise}var Fb=class e extends a.Xl{constructor(e,t){super(),this.prefix=e,this.options=t}provide(t,n){let r=new a.Zl;t.canAcceptInBackground=!!this.options?.canAcceptInBackground,t.matchOnLabel=t.matchOnDescription=t.matchOnDetail=t.sortByLabel=!1;let i,o=r.add(new a.$l),s=()=>jb(this,void 0,void 0,function*(){let r=o.value=new a.Zl;i?.dispose(!0),t.busy=!1,i=new a.Vl(n);let s=i.token,c=t.value.substr(this.prefix.length).trim(),l=this._getPicks(c,r,s),u=(e,n)=>{let r,i;if(Nb(e)?(r=e.items,i=e.active):r=e,r.length===0){if(n)return!1;c.length>0&&this.options?.noResultsPick&&(r=[this.options.noResultsPick])}return t.items=r,i&&(t.activeItems=[i]),!0};if(l!==null)if(Pb(l)){let n=!1,r=!1;yield Promise.all([jb(this,void 0,void 0,function*(){yield a.ks(e.FAST_PICKS_RACE_DELAY),!s.isCancellationRequested&&(r||(n=u(l.picks,!0)))}),jb(this,void 0,void 0,function*(){t.busy=!0;try{let e=yield l.additionalPicks;if(s.isCancellationRequested)return;let r,i;Nb(l.picks)?(r=l.picks.items,i=l.picks.active):r=l.picks;let a,o;if(Nb(e)?(a=e.items,o=e.active):a=e,a.length>0||!n){let e;if(!i&&!o){let n=t.activeItems[0];n&&r.indexOf(n)!==-1&&(e=n)}u({items:[...r,...a],active:i||o||e})}}finally{s.isCancellationRequested||(t.busy=!1),r=!0}})])}else if(!(l instanceof Promise))u(l);else{t.busy=!0;try{let e=yield l;if(s.isCancellationRequested)return;u(e)}finally{s.isCancellationRequested||(t.busy=!1)}}});return r.add(t.onDidChangeValue(()=>s())),s(),r.add(t.onDidAccept(e=>{let[n]=t.selectedItems;typeof n?.accept==`function`&&(e.inBackground||t.hide(),n.accept(t.keyMods,e))})),r.add(t.onDidTriggerItemButton(({button:e,item:r})=>jb(this,void 0,void 0,function*(){if(typeof r.trigger==`function`){let i=r.buttons?.indexOf(e)??-1;if(i>=0){let e=r.trigger(i,t.keyMods),a=typeof e==`number`?e:yield e;if(n.isCancellationRequested)return;switch(a){case Mb.NO_ACTION:break;case Mb.CLOSE_PICKER:t.hide();break;case Mb.REFRESH_PICKER:s();break;case Mb.REMOVE_ITEM:{let e=t.items.indexOf(r);if(e!==-1){let n=t.items.slice(),r=n.splice(e,1),i=t.activeItems.filter(e=>e!==r[0]),a=t.keepScrollPosition;t.keepScrollPosition=!0,t.items=n,i&&(t.activeItems=i),t.keepScrollPosition=a}break}}}}}))),r}};Fb.FAST_PICKS_RACE_DELAY=200;var Ib=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Lb=function(e,t){return function(n,r){t(n,r,e)}},Rb=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},zb=class e extends Fb{constructor(t,n,r,i,a,o){super(e.PREFIX,t),this.instantiationService=n,this.keybindingService=r,this.commandService=i,this.telemetryService=a,this.dialogService=o,this.commandsHistory=this._register(this.instantiationService.createInstance(Bb)),this.options=t}_getPicks(t,n,r){return Rb(this,void 0,void 0,function*(){let i=yield this.getCommandPicks(n,r);if(r.isCancellationRequested)return[];let s=[];for(let n of i){let r=a.Iu(e.WORD_FILTER(t,n.label)),i=n.commandAlias?a.Iu(e.WORD_FILTER(t,n.commandAlias)):void 0;r||i?(n.highlights={label:r,detail:this.options.showAlias?i:void 0},s.push(n)):t===n.commandId&&s.push(n)}let c=new Map;for(let e of s){let t=c.get(e.label);t?(e.description=e.commandId,t.description=t.commandId):c.set(e.label,e)}s.sort((e,t)=>{let n=this.commandsHistory.peek(e.commandId),r=this.commandsHistory.peek(t.commandId);return n&&r?n>r?-1:1:n?-1:r?1:e.label.localeCompare(t.label)});let l=[],u=!1;for(let e=0;e<s.length;e++){let t=s[e],n=this.keybindingService.lookupKeybinding(t.commandId),r=n?a.Td(`commandPickAriaLabelWithKeybinding`,`{0}, {1}`,t.label,n.getAriaLabel()):t.label;e===0&&this.commandsHistory.peek(t.commandId)&&(l.push({type:`separator`,label:a.Td(`recentlyUsed`,`recently used`)}),u=!0),e!==0&&u&&!this.commandsHistory.peek(t.commandId)&&(l.push({type:`separator`,label:a.Td(`morecCommands`,`other commands`)}),u=!1),l.push(Object.assign(Object.assign({},t),{ariaLabel:r,detail:this.options.showAlias&&t.commandAlias!==t.label?t.commandAlias:void 0,keybinding:n,accept:()=>Rb(this,void 0,void 0,function*(){this.commandsHistory.push(t.commandId),this.telemetryService.publicLog2(`workbenchActionExecuted`,{id:t.commandId,from:`quick open`});try{yield this.commandService.executeCommand(t.commandId)}catch(e){a.du(e)||this.dialogService.show(o.bn.Error,a.Td(`canNotRun`,`Command '{0}' resulted in an error ({1})`,t.label,Ab(e)))}})}))}return l})}};zb.PREFIX=`>`,zb.WORD_FILTER=o.dn(o.cn,o.un,o.sn),zb=Ib([Lb(1,a.fc),Lb(2,o.At),Lb(3,a.Ma),Lb(4,a.aa),Lb(5,o.Ft)],zb);var Bb=class e extends a.Xl{constructor(e,t){super(),this.storageService=e,this.configurationService=t,this.configuredCommandsHistoryLength=0,this.updateConfiguration(),this.load(),this.registerListeners()}registerListeners(){this._register(this.configurationService.onDidChangeConfiguration(()=>this.updateConfiguration()))}updateConfiguration(){this.configuredCommandsHistoryLength=e.getConfiguredCommandHistoryLength(this.configurationService),e.cache&&e.cache.limit!==this.configuredCommandsHistoryLength&&(e.cache.limit=this.configuredCommandsHistoryLength,e.saveState(this.storageService))}load(){let t=this.storageService.get(e.PREF_KEY_CACHE,0),n;if(t)try{n=JSON.parse(t)}catch{}let r=e.cache=new a.c(this.configuredCommandsHistoryLength,1);if(n){let e;e=n.usesLRU?n.entries:n.entries.sort((e,t)=>e.value-t.value),e.forEach(e=>r.set(e.key,e.value))}e.counter=this.storageService.getNumber(e.PREF_KEY_COUNTER,0,e.counter)}push(t){e.cache&&(e.cache.set(t,e.counter++),e.saveState(this.storageService))}peek(t){return e.cache?.peek(t)}static saveState(t){if(!e.cache)return;let n={usesLRU:!0,entries:[]};e.cache.forEach((e,t)=>n.entries.push({key:t,value:e})),t.store(e.PREF_KEY_CACHE,JSON.stringify(n),0,0),t.store(e.PREF_KEY_COUNTER,e.counter,0,0)}static getConfiguredCommandHistoryLength(t){let n=t.getValue().workbench?.commandPalette?.history;return typeof n==`number`?n:e.DEFAULT_COMMANDS_HISTORY_LENGTH}};Bb.DEFAULT_COMMANDS_HISTORY_LENGTH=50,Bb.PREF_KEY_CACHE=`commandPalette.mru.cache`,Bb.PREF_KEY_COUNTER=`commandPalette.mru.counter`,Bb.counter=1,Bb=Ib([Lb(0,o.O),Lb(1,a.Ys)],Bb);var Vb=class extends zb{constructor(e,t,n,r,i,a){super(e,t,n,r,i,a)}getCodeEditorCommandPicks(){let e=this.activeTextEditorControl;if(!e)return[];let t=[];for(let n of e.getSupportedActions())t.push({commandId:n.id,commandAlias:n.alias,label:o.en(n.label)||n.id});return t}},Hb=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Ub=function(e,t){return function(n,r){t(n,r,e)}},Wb=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Gb=class extends Vb{constructor(e,t,n,r,i,a){super({showAlias:!1},e,n,r,i,a),this.codeEditorService=t}get activeTextEditorControl(){return a.Iu(this.codeEditorService.getFocusedCodeEditor())}getCommandPicks(){return Wb(this,void 0,void 0,function*(){return this.getCodeEditorCommandPicks()})}};Gb=Hb([Ub(0,a.fc),Ub(1,a.dc),Ub(2,o.At),Ub(3,a.Ma),Ub(4,a.aa),Ub(5,o.Ft)],Gb);var Kb=class e extends a.Gi{constructor(){super({id:e.ID,label:o.bt.quickCommandActionLabel,alias:`Command Palette`,precondition:void 0,kbOpts:{kbExpr:o.kn.focus,primary:59,weight:100},contextMenuOpts:{group:`z_commands`,order:1}})}run(e){e.get(o.P).quickAccess.show(Gb.PREFIX)}};Kb.ID=`editor.action.quickCommand`,a.$i(Kb),a.Ws.as(o.F.Quickaccess).registerQuickAccessProvider({ctor:Gb,prefix:Gb.PREFIX,helpEntries:[{description:o.bt.quickCommandHelp,commandId:Kb.ID}]});var qb=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Jb=function(e,t){return function(n,r){t(n,r,e)}},Yb=class extends Si{constructor(e,t,n,r,i,a,o){super(!0,e,t,n,r,i,a,o)}};Yb=qb([Jb(1,a.Ea),Jb(2,a.dc),Jb(3,o.vn),Jb(4,a.fc),Jb(5,o.O),Jb(6,a.Ys)],Yb),a.ta(Si.ID,Yb);var Xb=class extends a.Gi{constructor(){super({id:`editor.action.toggleHighContrast`,label:o.Ct.toggleHighContrast,alias:`Toggle High Contrast Theme`,precondition:void 0}),this._originalThemeName=null}run(e,t){let n=e.get(o.A),r=n.getColorTheme();a.wa(r.type)?(n.setTheme(this._originalThemeName||(a.Ca(r.type)?`vs-dark`:`vs`)),this._originalThemeName=null):(n.setTheme(a.Ca(r.type)?o.j:o.M),this._originalThemeName=r.themeName)}};a.$i(Xb);var Zb=r.s({CancellationTokenSource:()=>o.t,Emitter:()=>o.n,KeyCode:()=>o.r,KeyMod:()=>o.i,MarkerSeverity:()=>o.a,MarkerTag:()=>o.o,Position:()=>o.s,Range:()=>o.c,Selection:()=>o.l,SelectionDirection:()=>o.u,Token:()=>o.d,Uri:()=>o.f,editor:()=>o.p,languages:()=>o.h}),Qb=i.Ht({invalidateBlockId:null,isCodeMode:!1,codeModeDirection:`right`,editorThemeColor:`light`,isSettingsDisabled:!1,settings:{width:``},elementSettings:{},searchFilters:{},block:{id:void 0,isNew:!1,subject:``,description:``,html:``,project:void 0,project_title:``,project_author:void 0,tags:[],type:`Other`,title:null,isAmp:!1},monacoDidMount:!1}),$b=`blockSlice`,ex=i.ln({name:$b,initialState:Qb,reducers:{switchCodeMode:e=>{e.isCodeMode=!e.isCodeMode},setEditorThemeColor:(e,t)=>{e.editorThemeColor=t.payload},setBlockSettings:(e,t)=>{Object.assign(e,{...e,settings:t.payload,isSettingsDisabled:!1})},setBlockSettingsDisable:(e,t)=>{e.isSettingsDisabled=t.payload},setElementSettings:(e,t)=>{e.elementSettings=t.payload},setSearchFilters:(e,t)=>{e.searchFilters=t.payload},setBlockHtml:(e,t)=>{e.block.html=t.payload},resetBlockSlice:()=>Qb,setBlockIsAmp:(e,t)=>{e.block.isAmp=t.payload}},extraReducers:e=>{e.addMatcher(e=>e.type===`blocksApi/queries/queryResultPatched`,(e,t)=>{let n=t.payload.queryCacheKey.match(/\(([0-9]+)\)/),r=t.payload?.patches[0];if(r?.path?.[0]&&(e.block[r?.path[0]]=r.value),n?.[1]&&(e.invalidateBlockId=n[1]),t.payload.queryCacheKey.startsWith(`getBlock`)){let n=t.payload?.patches[0];n?.path?.[0]&&(e.block[n?.path[0]]=n.value)}}),e.addMatcher(e=>e.type===`blocksApi/invalidateTags`,(e,t)=>{if(t.payload[0].id===+e.invalidateBlockId)return{...Qb,isCodeMode:e?.isCodeMode,codeModeDirection:e.codeModeDirection}}),e.addMatcher(i.vt.endpoints.editBlock.matchFulfilled,(e,{payload:t})=>{e.invalidateBlockId=null,e.block={...e.block,...t,renderGuid:e.block.renderGuid}}),e.addMatcher(i.vt.endpoints.autoSaveBlock.matchFulfilled,(e,t)=>{e?.block.id?.toString()===t.payload.id?.toString()&&(e.block.html=t.payload.html)}),e.addMatcher(i.vt.endpoints.getBlock.matchFulfilled,(e,{payload:t})=>{e.block={...Qb.block,...t}})}}),{switchCodeMode:tx,setEditorThemeColor:nx,setBlockSettings:rx,setElementSettings:ix,setBlockSettingsDisable:ax,setSearchFilters:ox,setBlockHtml:sx,resetBlockSlice:cx,setBlockIsAmp:lx}=ex.actions,ux=e=>e[$b].block,dx=e=>e[$b].isCodeMode,fx=e=>e[$b].settings,px=e=>e[$b].searchFilters,mx=e=>e[$b].elementSettings,hx=e=>e[$b].editorThemeColor,gx=e=>e[$b].isSettingsDisabled,_x=i.Ht({isCollapsed:!0,isMonacoFocusing:!1}),vx=`defaultModePanesSlice`,yx=i.ln({name:vx,initialState:_x,reducers:{setMonacoFocusing:(e,t)=>{e.isMonacoFocusing=t.payload},resetPanes:()=>_x}}),{resetPanes:bx,setMonacoFocusing:xx}=yx.actions,Sx=e=>e[vx].isMonacoFocusing;function Cx(e,t){let n=c.vt();(0,l.useEffect)(()=>{let r=n.addListener(e,t);return()=>{r.dispose()}},[n,e,t])}function wx(){return o.D.get(a.m)}function Tx(){return o.D.get(o.A)}function Ex(e,t,n){return Zb.editor.createModel(e||``,t,n)}function Dx(){Tx()._updateThemeOrColorMap()}function Ox(e){let t=wx(),[n,r]=(0,l.useState)({canUndo:t.canUndo(e.uri),canRedo:t.canRedo(e.uri)});return(0,l.useEffect)(()=>{let n=e.onDidChangeContent(()=>{setTimeout(()=>r({canUndo:t.canUndo(e.uri),canRedo:t.canRedo(e.uri)}))});return()=>{n.dispose()}},[e,t]),n}function kx(e){let t=e?.actual?._data||new a.v;return t instanceof a.v?t:a.v.deserialize(t)}function Ax(e){let t=wx();return{undo:()=>t.undo(e.uri),redo:()=>t.redo(e.uri),clear:()=>t.removeElements(e.uri),getPast:()=>t._editStacks.get(e.uri.toString())?._past?.map(kx)||[],getFuture:()=>t._editStacks.get(e.uri.toString())?._future?.map(kx)||[],canUndo:()=>t.canUndo(e.uri),canRedo:()=>t.canRedo(e.uri),createSnapshot:()=>t.createSnapshot(e.uri),restoreSnapshot:e=>t.restoreSnapshot(e)}}function jx(e){return(0,l.useMemo)(()=>Ax(e),[e])}function Mx(e=``){let t=Ex(e,`html`);return t.setEOL(0),t}var Nx=(0,l.createContext)(null);function Px(){return(0,l.useContext)(Nx)}var Fx=`wss://yjs.emailmaker.ru`,Ix=5e3,Lx=2e4,Rx=`3769995`,zx=`Not available for collaborative editing`,Bx=`Problem with internet connection`,Vx=({users:e,isEditor:t,isPlugin:n,token:r})=>{let[a,o]=(0,l.useState)(!1),s=window.localStorage.getItem(i.Gn.em_color_scheme),c=e=>{let{first_name:t,last_name:n,email:r}=e.user.name;return t?`${t.split(``)[0]}${n?`${n.split(``)[0]}`:``}`:r?.split(``)[0].toUpperCase()||` `},u=e=>{let{first_name:t,last_name:n,email:r}=e.user.name;return t&&n?`${t} ${n}`:t||r},f=e=>(0,p.jsx)(`span`,{children:u(e)});return(0,p.jsx)(p.Fragment,{children:e.length>0&&t&&(0,p.jsx)(`div`,{className:`user-list ${a?`open`:``}`,style:n?{left:`60px`,bottom:`10px`}:{},onMouseOver:()=>o(!0),onMouseOut:()=>o(!1),children:e.map(e=>(0,p.jsx)(`div`,{className:`user`,style:{"--user-color":e.user.color,"--border-color":r?.colorBgContainer,"--text-color":s===`dark`?r?.colorIconHover:r?.colorWhite},children:(0,p.jsx)(d.Tooltip,{title:f(e),placement:`topLeft`,trigger:`hover`,color:r?.colorBgSpotlight,children:(0,p.jsx)(`div`,{children:c(e)})})},e.user.color))})})},Hx=({small:e=!1,style:t={},wrap:n=!1})=>(0,p.jsx)(d.Space,{size:`large`,style:{width:e?`100%`:`100vw`,height:`80vh`,display:`flex`,justifyContent:`center`,alignItems:`center`,...t},wrap:n,children:(0,p.jsx)(d.Spin,{indicator:(0,p.jsx)(f.LoadingOutlined,{style:{fontSize:48},spin:!0})})});Hx.propTypes={style:u.default.any},Object.defineProperty(t,`A`,{enumerable:!0,get:function(){return gx}}),Object.defineProperty(t,`C`,{enumerable:!0,get:function(){return cx}}),Object.defineProperty(t,`D`,{enumerable:!0,get:function(){return hx}}),Object.defineProperty(t,`E`,{enumerable:!0,get:function(){return fx}}),Object.defineProperty(t,`F`,{enumerable:!0,get:function(){return ox}}),Object.defineProperty(t,`I`,{enumerable:!0,get:function(){return Zb}}),Object.defineProperty(t,`M`,{enumerable:!0,get:function(){return ax}}),Object.defineProperty(t,`N`,{enumerable:!0,get:function(){return nx}}),Object.defineProperty(t,`O`,{enumerable:!0,get:function(){return mx}}),Object.defineProperty(t,`P`,{enumerable:!0,get:function(){return ix}}),Object.defineProperty(t,`S`,{enumerable:!0,get:function(){return ex}}),Object.defineProperty(t,`T`,{enumerable:!0,get:function(){return px}}),Object.defineProperty(t,`_`,{enumerable:!0,get:function(){return Cx}}),Object.defineProperty(t,`a`,{enumerable:!0,get:function(){return Bx}}),Object.defineProperty(t,`b`,{enumerable:!0,get:function(){return Sx}}),Object.defineProperty(t,`c`,{enumerable:!0,get:function(){return Fx}}),Object.defineProperty(t,`d`,{enumerable:!0,get:function(){return Mx}}),Object.defineProperty(t,`f`,{enumerable:!0,get:function(){return Dx}}),Object.defineProperty(t,`g`,{enumerable:!0,get:function(){return wx}}),Object.defineProperty(t,`h`,{enumerable:!0,get:function(){return Ox}}),Object.defineProperty(t,`i`,{enumerable:!0,get:function(){return zx}}),Object.defineProperty(t,`j`,{enumerable:!0,get:function(){return rx}}),Object.defineProperty(t,`k`,{enumerable:!0,get:function(){return dx}}),Object.defineProperty(t,`l`,{enumerable:!0,get:function(){return Nx}}),Object.defineProperty(t,`m`,{enumerable:!0,get:function(){return jx}}),Object.defineProperty(t,`n`,{enumerable:!0,get:function(){return Vx}}),Object.defineProperty(t,`o`,{enumerable:!0,get:function(){return Rx}}),Object.defineProperty(t,`p`,{enumerable:!0,get:function(){return Ax}}),Object.defineProperty(t,`r`,{enumerable:!0,get:function(){return Ix}}),Object.defineProperty(t,`s`,{enumerable:!0,get:function(){return Lx}}),Object.defineProperty(t,`t`,{enumerable:!0,get:function(){return Hx}}),Object.defineProperty(t,`u`,{enumerable:!0,get:function(){return Px}}),Object.defineProperty(t,`v`,{enumerable:!0,get:function(){return yx}}),Object.defineProperty(t,`w`,{enumerable:!0,get:function(){return ux}}),Object.defineProperty(t,`x`,{enumerable:!0,get:function(){return xx}}),Object.defineProperty(t,`y`,{enumerable:!0,get:function(){return bx}})});