@inkeep/agents-manage-ui 0.35.3 → 0.35.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 (247) hide show
  1. package/.next/standalone/agents-manage-ui/.next/BUILD_ID +1 -1
  2. package/.next/standalone/agents-manage-ui/.next/app-path-routes-manifest.json +5 -5
  3. package/.next/standalone/agents-manage-ui/.next/build-manifest.json +3 -3
  4. package/.next/standalone/agents-manage-ui/.next/prerender-manifest.json +3 -3
  5. package/.next/standalone/agents-manage-ui/.next/react-loadable-manifest.json +3 -3
  6. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page.js +1 -1
  7. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page_client-reference-manifest.js +1 -1
  8. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/(with-react-flow-provider)/[agentId]/page.js +2 -2
  9. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/(with-react-flow-provider)/[agentId]/page_client-reference-manifest.js +1 -1
  10. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/(with-react-flow-provider)/new/page.js +1 -1
  11. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/(with-react-flow-provider)/new/page_client-reference-manifest.js +1 -1
  12. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page.js +2 -2
  13. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page_client-reference-manifest.js +1 -1
  14. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page.js +3 -3
  15. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page_client-reference-manifest.js +1 -1
  16. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js +2 -2
  17. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js.nft.json +1 -1
  18. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page_client-reference-manifest.js +1 -1
  19. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js +1 -1
  20. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js.nft.json +1 -1
  21. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page_client-reference-manifest.js +1 -1
  22. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page.js +2 -2
  23. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page_client-reference-manifest.js +1 -1
  24. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.js +2 -2
  25. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page_client-reference-manifest.js +1 -1
  26. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page.js +2 -2
  27. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page_client-reference-manifest.js +1 -1
  28. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page.js +2 -2
  29. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page_client-reference-manifest.js +1 -1
  30. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.js +2 -2
  31. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page_client-reference-manifest.js +1 -1
  32. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.js +2 -2
  33. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page_client-reference-manifest.js +1 -1
  34. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page.js +2 -2
  35. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page_client-reference-manifest.js +1 -1
  36. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js +2 -2
  37. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js.nft.json +1 -1
  38. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page_client-reference-manifest.js +1 -1
  39. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.js +2 -2
  40. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page_client-reference-manifest.js +1 -1
  41. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page.js +2 -2
  42. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page_client-reference-manifest.js +1 -1
  43. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/edit/page.js +2 -2
  44. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/edit/page_client-reference-manifest.js +1 -1
  45. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/page.js +2 -2
  46. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/page_client-reference-manifest.js +1 -1
  47. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/new/page.js +2 -2
  48. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/new/page_client-reference-manifest.js +1 -1
  49. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/page.js +2 -2
  50. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/page_client-reference-manifest.js +1 -1
  51. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.js +2 -2
  52. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.js.nft.json +1 -1
  53. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page_client-reference-manifest.js +1 -1
  54. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.js +2 -2
  55. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.js.nft.json +1 -1
  56. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page_client-reference-manifest.js +1 -1
  57. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.js +2 -2
  58. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.js.nft.json +1 -1
  59. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page_client-reference-manifest.js +1 -1
  60. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page.js +1 -1
  61. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page_client-reference-manifest.js +1 -1
  62. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page.js +1 -1
  63. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page_client-reference-manifest.js +1 -1
  64. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page.js +1 -1
  65. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page_client-reference-manifest.js +1 -1
  66. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js +1 -1
  67. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js.nft.json +1 -1
  68. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page_client-reference-manifest.js +1 -1
  69. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page.js +2 -2
  70. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page_client-reference-manifest.js +1 -1
  71. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js +3 -3
  72. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js.nft.json +1 -1
  73. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page_client-reference-manifest.js +1 -1
  74. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page.js +2 -2
  75. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page_client-reference-manifest.js +1 -1
  76. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  77. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.html +2 -2
  78. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.rsc +2 -2
  79. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_full.segment.rsc +2 -2
  80. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  81. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  82. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_index.segment.rsc +2 -2
  83. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  84. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page.js +2 -2
  85. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  86. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.html +1 -1
  87. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.rsc +8 -8
  88. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_full.segment.rsc +8 -8
  89. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_index.segment.rsc +8 -8
  90. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  91. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  92. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  93. package/.next/standalone/agents-manage-ui/.next/server/app/accept-invitation/[invitationId]/page.js +2 -2
  94. package/.next/standalone/agents-manage-ui/.next/server/app/accept-invitation/[invitationId]/page_client-reference-manifest.js +1 -1
  95. package/.next/standalone/agents-manage-ui/.next/server/app/api/data-components/[dataComponentId]/generate-render/route.js +2 -2
  96. package/.next/standalone/agents-manage-ui/.next/server/app/api/data-components/[dataComponentId]/generate-render/route_client-reference-manifest.js +1 -1
  97. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/conversations/[conversationId]/route_client-reference-manifest.js +1 -1
  98. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/route_client-reference-manifest.js +1 -1
  99. package/.next/standalone/agents-manage-ui/.next/server/app/index.html +1 -1
  100. package/.next/standalone/agents-manage-ui/.next/server/app/index.rsc +9 -9
  101. package/.next/standalone/agents-manage-ui/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  102. package/.next/standalone/agents-manage-ui/.next/server/app/index.segments/_full.segment.rsc +9 -9
  103. package/.next/standalone/agents-manage-ui/.next/server/app/index.segments/_index.segment.rsc +8 -8
  104. package/.next/standalone/agents-manage-ui/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  105. package/.next/standalone/agents-manage-ui/.next/server/app/login/page.js +1 -1
  106. package/.next/standalone/agents-manage-ui/.next/server/app/login/page_client-reference-manifest.js +1 -1
  107. package/.next/standalone/agents-manage-ui/.next/server/app/login.html +1 -1
  108. package/.next/standalone/agents-manage-ui/.next/server/app/login.rsc +8 -8
  109. package/.next/standalone/agents-manage-ui/.next/server/app/login.segments/_full.segment.rsc +8 -8
  110. package/.next/standalone/agents-manage-ui/.next/server/app/login.segments/_index.segment.rsc +8 -8
  111. package/.next/standalone/agents-manage-ui/.next/server/app/login.segments/_tree.segment.rsc +1 -1
  112. package/.next/standalone/agents-manage-ui/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
  113. package/.next/standalone/agents-manage-ui/.next/server/app/login.segments/login.segment.rsc +1 -1
  114. package/.next/standalone/agents-manage-ui/.next/server/app/no-organization/page.js +1 -1
  115. package/.next/standalone/agents-manage-ui/.next/server/app/no-organization/page_client-reference-manifest.js +1 -1
  116. package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.html +1 -1
  117. package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.rsc +8 -8
  118. package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.segments/_full.segment.rsc +8 -8
  119. package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.segments/_index.segment.rsc +8 -8
  120. package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.segments/_tree.segment.rsc +1 -1
  121. package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.segments/no-organization/__PAGE__.segment.rsc +1 -1
  122. package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.segments/no-organization.segment.rsc +1 -1
  123. package/.next/standalone/agents-manage-ui/.next/server/app/page.js +1 -1
  124. package/.next/standalone/agents-manage-ui/.next/server/app/page_client-reference-manifest.js +1 -1
  125. package/.next/standalone/agents-manage-ui/.next/server/app-paths-manifest.json +5 -5
  126. package/.next/standalone/agents-manage-ui/.next/server/chunks/1498.js +1 -1
  127. package/.next/standalone/agents-manage-ui/.next/server/chunks/1933.js +1 -1
  128. package/.next/standalone/agents-manage-ui/.next/server/chunks/2175.js +13 -13
  129. package/.next/standalone/agents-manage-ui/.next/server/chunks/2536.js +3 -3
  130. package/.next/standalone/agents-manage-ui/.next/server/chunks/3836.js +1 -0
  131. package/.next/standalone/agents-manage-ui/.next/server/chunks/3875.js +1 -1
  132. package/.next/standalone/agents-manage-ui/.next/server/chunks/4043.js +1 -0
  133. package/.next/standalone/agents-manage-ui/.next/server/chunks/4773.js +1 -1
  134. package/.next/standalone/agents-manage-ui/.next/server/chunks/554.js +1 -1
  135. package/.next/standalone/agents-manage-ui/.next/server/chunks/5992.js +3 -3
  136. package/.next/standalone/agents-manage-ui/.next/server/chunks/7653.js +1 -0
  137. package/.next/standalone/agents-manage-ui/.next/server/chunks/8012.js +1 -1
  138. package/.next/standalone/agents-manage-ui/.next/server/chunks/9702.js +1 -1
  139. package/.next/standalone/agents-manage-ui/.next/server/chunks/9783.js +2 -2
  140. package/.next/standalone/agents-manage-ui/.next/server/chunks/99.js +1 -0
  141. package/.next/standalone/agents-manage-ui/.next/server/middleware-build-manifest.js +1 -1
  142. package/.next/standalone/agents-manage-ui/.next/server/middleware-react-loadable-manifest.js +1 -1
  143. package/.next/standalone/agents-manage-ui/.next/server/pages/404.html +1 -1
  144. package/.next/standalone/agents-manage-ui/.next/server/pages/500.html +2 -2
  145. package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.js +1 -1
  146. package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.json +1 -1
  147. package/.next/standalone/agents-manage-ui/.next/static/chunks/{32859-672c85a5994caa53.js → 14662-32316ef6055f275c.js} +14 -14
  148. package/.next/standalone/agents-manage-ui/.next/static/chunks/{23147-a22c6aebc0404811.js → 23147-7718d86a86601d33.js} +1 -1
  149. package/.next/standalone/agents-manage-ui/.next/static/chunks/{33929-fcfba412c567ac0d.js → 33929-73f07388f3894911.js} +1 -1
  150. package/.next/standalone/agents-manage-ui/.next/static/chunks/{34461.e175065084634078.js → 34461.3d791ae160fd67e7.js} +1 -1
  151. package/.next/standalone/agents-manage-ui/.next/static/chunks/{36c0bed7-5a3dd9bb2534d46a.js → 36c0bed7-7161f8ac9cdb06d7.js} +1 -1
  152. package/.next/standalone/agents-manage-ui/.next/static/chunks/37404-9e3433ee9bb49fba.js +7 -0
  153. package/.next/standalone/agents-manage-ui/.next/static/chunks/41823-e689234ceeb202dd.js +2 -0
  154. package/.next/standalone/agents-manage-ui/.next/static/chunks/{51641-ae559c4e935ce1b8.js → 51641-577773b7a5b07d6d.js} +1 -1
  155. package/.next/standalone/agents-manage-ui/.next/static/chunks/55908-58a60939941ea47e.js +1 -0
  156. package/.next/standalone/agents-manage-ui/.next/static/chunks/{14734-2235c3e0b1c48c7b.js → 59371-ccfcf997df122c97.js} +1 -1
  157. package/.next/standalone/agents-manage-ui/.next/static/chunks/60064-b79c6076fc28c7fc.js +14 -0
  158. package/.next/standalone/agents-manage-ui/.next/static/chunks/{76847-25237fc28670aa70.js → 6350-e89dbb82baef9efc.js} +1 -1
  159. package/.next/standalone/agents-manage-ui/.next/static/chunks/68408-6d750778b7d1c09f.js +123 -0
  160. package/.next/standalone/agents-manage-ui/.next/static/chunks/68822-d7c56e9ca3c5177e.js +1 -0
  161. package/.next/standalone/agents-manage-ui/.next/static/chunks/71027-529fbd6726545a66.js +1 -0
  162. package/.next/standalone/agents-manage-ui/.next/static/chunks/{88873-a9d99f8a00ac4988.js → 88873-25d336f38896d149.js} +1 -1
  163. package/.next/standalone/agents-manage-ui/.next/static/chunks/90073-bf1b6c10123324a7.js +1 -0
  164. package/.next/standalone/agents-manage-ui/.next/static/chunks/90385-ba6ea2cb76f05539.js +20 -0
  165. package/.next/standalone/agents-manage-ui/.next/static/chunks/{97382-5302d42918f17d92.js → 97382-41843d39db380477.js} +2 -2
  166. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/(with-react-flow-provider)/[agentId]/{page-2f0d4bd6d172675a.js → page-9e25551f04e4e309.js} +1 -1
  167. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/(with-react-flow-provider)/{loading-bbf9a4d652d15e2c.js → loading-24d1c9a7b605aced.js} +1 -1
  168. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/(with-react-flow-provider)/new/{page-00de362b78f81c2b.js → page-5f5fa5b1b1e49c20.js} +1 -1
  169. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/{loading-f7381932811c1877.js → loading-93be6c6a75790c2d.js} +1 -1
  170. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/{page-ad64d23410571180.js → page-4ba410b23302bd54.js} +1 -1
  171. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/{page-6e8688315de911c5.js → page-6ea7a510a48da74c.js} +1 -1
  172. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-a5f840f998efd7e5.js +1 -0
  173. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/{loading-f7381932811c1877.js → loading-93be6c6a75790c2d.js} +1 -1
  174. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-c1d7d65cdca46b58.js +1 -0
  175. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/{page-eccafc2f00c43ddd.js → page-4ca6a7ccbeb4ee66.js} +1 -1
  176. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/{page-95476263e561d84a.js → page-2a1dcb96320b07da.js} +1 -1
  177. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/{loading-f7381932811c1877.js → loading-93be6c6a75790c2d.js} +1 -1
  178. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/new/page-5d0cd25eef25b1c1.js +1 -0
  179. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/{page-1f9371e5c435e305.js → page-4f8c851d56f44def.js} +1 -1
  180. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page-ba93ea75f3202201.js +1 -0
  181. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-fa877bba840812e8.js +1 -0
  182. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/{page-f7381932811c1877.js → page-93be6c6a75790c2d.js} +1 -1
  183. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-daa77a73d2dbe8aa.js +1 -0
  184. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/{page-b8bb670784ccb1d8.js → page-ca1cc90b3a065253.js} +1 -1
  185. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/page-97afa3e5c6a96e96.js +1 -0
  186. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/edit/{page-1e804ff6be8af933.js → page-40d6aacdbe48ffc9.js} +1 -1
  187. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/{page-54b79cdb3a0d1ec9.js → page-35dd87fc8a502e0e.js} +1 -1
  188. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/new/{page-35511f37e3afbf32.js → page-fdb6d7b7bad232d9.js} +1 -1
  189. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/page-eab2dc98852d710b.js +1 -0
  190. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/{layout-d6cb2afe9ff1629b.js → layout-c51be1e3385c5f21.js} +1 -1
  191. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/{page-ce662adbefbb5004.js → page-e33223d705ef946d.js} +1 -1
  192. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page-8036acba73fa1c7e.js +1 -0
  193. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/{layout-bbf9a4d652d15e2c.js → layout-24d1c9a7b605aced.js} +1 -1
  194. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/page-30886396eb5faef3.js +1 -0
  195. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/page-80903257d14a4fdc.js +1 -0
  196. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/{page-19fa47f05c670da7.js → page-d214e75996b6e7c0.js} +1 -1
  197. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/settings/{page-13e4fbdc22fa8b80.js → page-18af52d21ae6ca67.js} +1 -1
  198. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/ai-calls/{page-ba1d3714f7b3b677.js → page-38e88ac7a3e9e4cf.js} +1 -1
  199. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/{page-eac53cde27c1aaf4.js → page-326140a28984138e.js} +1 -1
  200. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/{page-86163b4ab86fd7cb.js → page-6933d125f94de673.js} +2 -2
  201. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/{error-dd6d44f2c14e4b4e.js → error-b3271fba9925ea42.js} +1 -1
  202. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/loading-93be6c6a75790c2d.js +1 -0
  203. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/page-1b171b3db6a4505f.js +1 -0
  204. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/layout-cad2eb61b2d9a16d.js +1 -0
  205. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/{not-found-9d22ab61797dce01.js → not-found-c52b15cda488a3d7.js} +1 -1
  206. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/{page-eda8f8c514cf0693.js → page-a98e4f3cb30bcc23.js} +1 -1
  207. package/.next/standalone/agents-manage-ui/.next/static/chunks/{webpack-559e4cba5643d8cd.js → webpack-dc53af7beb6e4ee8.js} +1 -1
  208. package/.next/standalone/agents-manage-ui/package.json +1 -1
  209. package/.next/standalone/packages/agents-core/package.json +2 -1
  210. package/package.json +4 -4
  211. package/src/components/mcp-servers/selection/mcp-server-selection.tsx +4 -0
  212. package/src/components/mcp-servers/selection/prebuilt-servers-grid.tsx +19 -2
  213. package/src/components/mcp-servers/view-mcp-server-details.tsx +32 -1
  214. package/src/hooks/use-oauth-login.ts +12 -2
  215. package/src/lib/actions/mcp-catalog.ts +36 -0
  216. package/src/lib/api/mcp-catalog.ts +38 -0
  217. package/src/lib/data/prebuilt-mcp-servers.ts +42 -346
  218. package/src/lib/mcp-tools/nango.ts +2 -4
  219. package/.next/standalone/agents-manage-ui/.next/server/chunks/1106.js +0 -1
  220. package/.next/standalone/agents-manage-ui/.next/server/chunks/2608.js +0 -1
  221. package/.next/standalone/agents-manage-ui/.next/server/chunks/5277.js +0 -1
  222. package/.next/standalone/agents-manage-ui/.next/server/chunks/9189.js +0 -1
  223. package/.next/standalone/agents-manage-ui/.next/static/chunks/13443-f6798a86d716651a.js +0 -1
  224. package/.next/standalone/agents-manage-ui/.next/static/chunks/37404-de8916027c4c4015.js +0 -7
  225. package/.next/standalone/agents-manage-ui/.next/static/chunks/41823-a04070eb9834dea6.js +0 -2
  226. package/.next/standalone/agents-manage-ui/.next/static/chunks/52723-e53cfeb41074227f.js +0 -1
  227. package/.next/standalone/agents-manage-ui/.next/static/chunks/57199-d639fb43bb2caea7.js +0 -14
  228. package/.next/standalone/agents-manage-ui/.next/static/chunks/64121-ca74b093183a828d.js +0 -1
  229. package/.next/standalone/agents-manage-ui/.next/static/chunks/68408-65ad598634dc0e5c.js +0 -123
  230. package/.next/standalone/agents-manage-ui/.next/static/chunks/88503-003f3e8096c29ebf.js +0 -1
  231. package/.next/standalone/agents-manage-ui/.next/static/chunks/90385-261e3d5036d1b7c2.js +0 -20
  232. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-d1fd4e6a9fab2806.js +0 -1
  233. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-b8dd8ff8ccfb3a4d.js +0 -1
  234. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/new/page-ddd56842e428b6ef.js +0 -1
  235. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page-3f721f3eceee7890.js +0 -1
  236. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-8a1ebfbd26cea598.js +0 -1
  237. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-e7ecc82239a22703.js +0 -1
  238. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/page-25775a42a8f4896f.js +0 -1
  239. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/page-1cb8ba932cab37b3.js +0 -1
  240. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page-ef83aea9fd05f915.js +0 -1
  241. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/page-8eb6f59427a9f5ca.js +0 -1
  242. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/page-e27de118691c3c91.js +0 -1
  243. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/loading-f7381932811c1877.js +0 -1
  244. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/page-6eb1e8ea8b729a73.js +0 -1
  245. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/layout-ac748ba6a50a0e5c.js +0 -1
  246. /package/.next/standalone/agents-manage-ui/.next/static/{QuwMRaXt3FgJPaNUOaOrC → H5q4xQZfwzkdTe3VAfGDj}/_buildManifest.js +0 -0
  247. /package/.next/standalone/agents-manage-ui/.next/static/{QuwMRaXt3FgJPaNUOaOrC → H5q4xQZfwzkdTe3VAfGDj}/_ssgManifest.js +0 -0
@@ -2,7 +2,7 @@ exports.id=5992,exports.ids=[5992],exports.modules={854:(a,b,c)=>{"use strict";c
2
2
  ${c=b,d=a,f=(e=c.match(/^`+/gm)?.reduce((a,b)=>a.length>b.length?a:b).length??0)>=3?e+1:3,[`${"`".repeat(f)}${d}`,c,`${"`".repeat(f)}`].join("\n")}
3
3
  `,this}appendLink(a,b,c){return this.value+="[",this.value+=this._escape(b,"]"),this.value+="](",this.value+=this._escape(String(a),")"),c&&(this.value+=` "${this._escape(this._escape(c,'"'),")")}"`),this.value+=")",this}_escape(a,b){let c=RegExp((0,h.bm)(b),"g");return a.replace(c,(b,c)=>"\\"!==a.charAt(c-1)?`\\${b}`:b)}}function k(a){return l(a)?!a.value:!Array.isArray(a)||a.every(k)}function l(a){return a instanceof j||!!a&&"object"==typeof a&&"string"==typeof a.value&&("boolean"==typeof a.isTrusted||"object"==typeof a.isTrusted||void 0===a.isTrusted)&&("boolean"==typeof a.supportThemeIcons||void 0===a.supportThemeIcons)}function m(a,b){return a===b||!!a&&!!b&&a.value===b.value&&a.isTrusted===b.isTrusted&&a.supportThemeIcons===b.supportThemeIcons&&a.supportHtml===b.supportHtml&&(a.baseUri===b.baseUri||!!a.baseUri&&!!b.baseUri&&(0,g.n4)(i.r.from(a.baseUri),i.r.from(b.baseUri)))}function n(a){return a.replace(/"/g,"&quot;")}function o(a){return a?a.replace(/\\([\\`*_{}[\]()#+\-.!~])/g,"$1"):a}function p(a){let b=[],c=a.split("|").map(a=>a.trim());a=c[0];let d=c[1];if(d){let a=/height=(\d+)/.exec(d),c=/width=(\d+)/.exec(d),e=a?a[1]:"",f=c?c[1]:"",g=isFinite(parseInt(f)),h=isFinite(parseInt(e));g&&b.push(`width="${f}"`),h&&b.push(`height="${e}"`)}return{href:a,dimensions:b}}function q(a,...b){return i.r.from({scheme:f.ny.command,path:a,query:b.length?encodeURIComponent(JSON.stringify(b)):void 0})}},5394:(a,b,c)=>{"use strict";c.d(b,{G:()=>q,r:()=>v});var d=c(72492),e=c(69626),f=c(19254),g=c(32801);class h{static _createRange(){return this._handyReadyRange||(this._handyReadyRange=document.createRange()),this._handyReadyRange}static _detachRange(a,b){a.selectNodeContents(b)}static _readClientRects(a,b,c,d,e){let f=this._createRange();try{return f.setStart(a,b),f.setEnd(c,d),f.getClientRects()}catch(a){return null}finally{this._detachRange(f,e)}}static _mergeAdjacentRanges(a){if(1===a.length)return a;a.sort(g.IO.compare);let b=[],c=0,d=a[0];for(let e=1,f=a.length;e<f;e++){let f=a[e];d.left+d.width+.9>=f.left?d.width=Math.max(d.width,f.left+f.width-d.left):(b[c++]=d,d=f)}return b[c++]=d,b}static _createHorizontalRangesFromClientRects(a,b,c){if(!a||0===a.length)return null;let d=[];for(let e=0,f=a.length;e<f;e++){let f=a[e];d[e]=new g.IO(Math.max(0,(f.left-b)/c),f.width/c)}return this._mergeAdjacentRanges(d)}static readHorizontalRanges(a,b,c,d,e,f){let g=a.children.length-1;if(0>g)return null;if((b=Math.min(g,Math.max(0,b)))===(d=Math.min(g,Math.max(0,d)))&&c===e&&0===c&&!a.children[b].firstChild){let c=a.children[b].getClientRects();return f.markDidDomLayout(),this._createHorizontalRangesFromClientRects(c,f.clientRectDeltaLeft,f.clientRectScale)}b!==d&&d>0&&0===e&&(d--,e=0x40000000);let h=a.children[b].firstChild,i=a.children[d].firstChild;if(h&&i||(!h&&0===c&&b>0&&(h=a.children[b-1].firstChild,c=0x40000000),!i&&0===e&&d>0&&(i=a.children[d-1].firstChild,e=0x40000000)),!h||!i)return null;c=Math.min(h.textContent.length,Math.max(0,c)),e=Math.min(i.textContent.length,Math.max(0,e));let j=this._readClientRects(h,c,i,e,f.endNode);return f.markDidDomLayout(),this._createHorizontalRangesFromClientRects(j,f.clientRectDeltaLeft,f.clientRectScale)}}var i=c(8424),j=c(2901),k=c(30908),l=c(64825),m=c(58912),n=c(67752);let o=!!f.ib||!f.j9&&!d.gm&&!d.nr,p=!0;class q{static{this.CLASS_NAME="view-line"}constructor(a,b){this._viewGpuContext=a,this._options=b,this._isMaybeInvalid=!0,this._renderedViewLine=null}getDomNode(){return this._renderedViewLine&&this._renderedViewLine.domNode?this._renderedViewLine.domNode.domNode:null}setDomNode(a){if(this._renderedViewLine)this._renderedViewLine.domNode=(0,e.Z)(a);else throw Error("I have no rendered view line to set the dom node to...")}onContentChanged(){this._isMaybeInvalid=!0}onTokensChanged(){this._isMaybeInvalid=!0}onDecorationsChanged(){this._isMaybeInvalid=!0}onOptionsChanged(a){this._isMaybeInvalid=!0,this._options=a}onSelectionChanged(){return(!!(0,k.Bb)(this._options.themeType)||this._renderedViewLine?.input.renderWhitespace===2)&&(this._isMaybeInvalid=!0,!0)}renderLine(a,b,c,d,e){if(this._options.useGpu&&this._viewGpuContext?.canRender(this._options,d,a))return this._renderedViewLine?.domNode?.domNode.remove(),this._renderedViewLine=null,!1;if(!1===this._isMaybeInvalid)return!1;this._isMaybeInvalid=!1;let f=d.getViewLineRenderingData(a),g=this._options,h=i.d.filter(f.inlineDecorations,a,f.minColumn,f.maxColumn),s=f.hasVariableFonts||"off"===g.experimentalWhitespaceRendering?g.renderWhitespace:"none",t=!f.hasVariableFonts,v=null;if((0,k.Bb)(g.themeType)||"selection"===s)for(let b of d.selections){if(b.endLineNumber<a||b.startLineNumber>a)continue;let c=b.startLineNumber===a?b.startColumn:f.minColumn,d=b.endLineNumber===a?b.endColumn:f.maxColumn;c<d&&((0,k.Bb)(g.themeType)&&h.push(new i.d(c,d,"inline-selected-text",0)),"selection"===s&&(v||(v=[]),v.push(new m.L(c-1,d-1))))}let w=new j.zL(g.useMonospaceOptimizations,g.canUseHalfwidthRightwardsArrow,f.content,f.continuesWithWrappedLine,f.isBasicASCII,f.containsRTL,f.minColumn-1,f.tokens,h,f.tabSize,f.startVisibleColumn,g.spaceWidth,g.middotWidth,g.wsmiddotWidth,g.stopRenderingLineAfter,s,g.renderControlCharacters,g.fontLigatures!==l.Bc.OFF,v,f.textDirection,g.verticalScrollbarSize);if(this._renderedViewLine&&this._renderedViewLine.input.equals(w))return!1;e.appendString("<div "),f.textDirection===n.z4.RTL?e.appendString('dir="rtl" '):f.containsRTL&&e.appendString('dir="ltr" '),e.appendString('style="top:'),e.appendString(String(b)),e.appendString("px;height:"),e.appendString(String(c)),e.appendString("px;line-height:"),e.appendString(String(c)),f.textDirection===n.z4.RTL&&(e.appendString("px;padding-right:"),e.appendString(String(g.verticalScrollbarSize))),e.appendString('px;" class="'),e.appendString(q.CLASS_NAME),e.appendString('">');let x=(0,j.UW)(w,e);e.appendString("</div>");let y=null;return t&&p&&o&&f.isBasicASCII&&w.isLTR&&g.useMonospaceOptimizations&&0===x.containsForeignElements&&(y=new r(this._renderedViewLine?this._renderedViewLine.domNode:null,w,x.characterMapping)),y||(y=u(this._renderedViewLine?this._renderedViewLine.domNode:null,w,x.characterMapping,x.containsForeignElements)),this._renderedViewLine=y,!0}layoutLine(a,b,c){this._renderedViewLine&&this._renderedViewLine.domNode&&(this._renderedViewLine.domNode.setTop(b),this._renderedViewLine.domNode.setHeight(c),this._renderedViewLine.domNode.setLineHeight(c))}isRenderedRTL(){return!!this._renderedViewLine&&this._renderedViewLine.input.textDirection===n.z4.RTL}getWidth(a){return this._renderedViewLine?this._renderedViewLine.getWidth(a):0}getWidthIsFast(){return!this._renderedViewLine||this._renderedViewLine.getWidthIsFast()}needsMonospaceFontCheck(){return!!this._renderedViewLine&&this._renderedViewLine instanceof r}monospaceAssumptionsAreValid(){return this._renderedViewLine&&this._renderedViewLine instanceof r?this._renderedViewLine.monospaceAssumptionsAreValid():p}onMonospaceAssumptionsInvalidated(){this._renderedViewLine&&this._renderedViewLine instanceof r&&(this._renderedViewLine=this._renderedViewLine.toSlowRenderedLine())}getVisibleRangesForRange(a,b,c,d){if(!this._renderedViewLine)return null;b=Math.min(this._renderedViewLine.input.lineContent.length+1,Math.max(1,b)),c=Math.min(this._renderedViewLine.input.lineContent.length+1,Math.max(1,c));let e=this._renderedViewLine.input.stopRenderingLineAfter;if(-1!==e&&b>e+1&&c>e+1)return new g.pj(!0,[new g.IO(this.getWidth(d),0)]);-1!==e&&b>e+1&&(b=e+1),-1!==e&&c>e+1&&(c=e+1);let f=this._renderedViewLine.getVisibleRangesForRange(a,b,c,d);return f&&f.length>0?new g.pj(!1,f):null}getColumnOfNodeOffset(a,b){return this._renderedViewLine?this._renderedViewLine.getColumnOfNodeOffset(a,b):1}}class r{constructor(a,b,c){this._cachedWidth=-1,this.domNode=a,this.input=b;const d=Math.floor(b.lineContent.length/300);if(d>0){this._keyColumnPixelOffsetCache=new Float32Array(d);for(let a=0;a<d;a++)this._keyColumnPixelOffsetCache[a]=-1}else this._keyColumnPixelOffsetCache=null;this._characterMapping=c,this._charWidth=b.spaceWidth}getWidth(a){if(!this.domNode||this.input.lineContent.length<300){let a=this._characterMapping.getHorizontalOffset(this._characterMapping.length);return Math.round(this._charWidth*a)}return -1===this._cachedWidth&&(this._cachedWidth=this._getReadingTarget(this.domNode).offsetWidth,a?.markDidDomLayout()),this._cachedWidth}getWidthIsFast(){return this.input.lineContent.length<300||-1!==this._cachedWidth}monospaceAssumptionsAreValid(){return this.domNode?(this.input.lineContent.length<300&&Math.abs(this.getWidth(null)-this.domNode.domNode.firstChild.offsetWidth)>=2&&(console.warn("monospace assumptions have been violated, therefore disabling monospace optimizations!"),p=!1),p):p}toSlowRenderedLine(){return u(this.domNode,this.input,this._characterMapping,0)}getVisibleRangesForRange(a,b,c,d){let e=this._getColumnPixelOffset(a,b,d),f=this._getColumnPixelOffset(a,c,d);return[new g.IO(e,f-e)]}_getColumnPixelOffset(a,b,c){if(b<=300){let a=this._characterMapping.getHorizontalOffset(b);return this._charWidth*a}let d=Math.floor((b-1)/300)-1,e=(d+1)*300+1,f=-1;if(this._keyColumnPixelOffsetCache&&-1===(f=this._keyColumnPixelOffsetCache[d])&&(f=this._actualReadPixelOffset(a,e,c),this._keyColumnPixelOffsetCache[d]=f),-1===f){let a=this._characterMapping.getHorizontalOffset(b);return this._charWidth*a}let g=this._characterMapping.getHorizontalOffset(e),h=this._characterMapping.getHorizontalOffset(b);return f+this._charWidth*(h-g)}_getReadingTarget(a){return a.domNode.firstChild}_actualReadPixelOffset(a,b,c){if(!this.domNode)return -1;let d=this._characterMapping.getDomPosition(b),e=h.readHorizontalRanges(this._getReadingTarget(this.domNode),d.partIndex,d.charIndex,d.partIndex,d.charIndex,c);return e&&0!==e.length?e[0].left:-1}getColumnOfNodeOffset(a,b){return v(this._characterMapping,a,b)}}class s{constructor(a,b,c,d){if(this.domNode=a,this.input=b,this._characterMapping=c,this._isWhitespaceOnly=/^\s*$/.test(b.lineContent),this._containsForeignElements=d,this._cachedWidth=-1,this._pixelOffsetCache=null,b.isLTR){this._pixelOffsetCache=new Float32Array(Math.max(2,this._characterMapping.length+1));for(let a=0,b=this._characterMapping.length;a<=b;a++)this._pixelOffsetCache[a]=-1}}_getReadingTarget(a){return a.domNode.firstChild}getWidth(a){return this.domNode?(-1===this._cachedWidth&&(this._cachedWidth=this._getReadingTarget(this.domNode).offsetWidth,a?.markDidDomLayout()),this._cachedWidth):0}getWidthIsFast(){return -1!==this._cachedWidth}getVisibleRangesForRange(a,b,c,d){if(!this.domNode)return null;if(null!==this._pixelOffsetCache){let e=this._readPixelOffset(this.domNode,a,b,d);if(-1===e)return null;let f=this._readPixelOffset(this.domNode,a,c,d);return -1===f?null:[new g.IO(e,f-e)]}return this._readVisibleRangesForRange(this.domNode,a,b,c,d)}_readVisibleRangesForRange(a,b,c,d,e){if(c!==d)return this._readRawVisibleRangesForRange(a,c,d,e);{let d=this._readPixelOffset(a,b,c,e);return -1===d?null:[new g.IO(d,0)]}}_readPixelOffset(a,b,c,d){if(this.input.isLTR&&0===this._characterMapping.length){if(0===this._containsForeignElements||2===this._containsForeignElements)return 0;if(1===this._containsForeignElements)return this.getWidth(d);let b=this._getReadingTarget(a);return b.firstChild?(d.markDidDomLayout(),b.firstChild.offsetWidth):0}if(null!==this._pixelOffsetCache){let e=this._pixelOffsetCache[c];if(-1!==e)return e;let f=this._actualReadPixelOffset(a,b,c,d);return this._pixelOffsetCache[c]=f,f}return this._actualReadPixelOffset(a,b,c,d)}_actualReadPixelOffset(a,b,c,d){if(0===this._characterMapping.length){let b=h.readHorizontalRanges(this._getReadingTarget(a),0,0,0,0,d);return b&&0!==b.length?b[0].left:-1}if(this.input.isLTR&&c===this._characterMapping.length&&this._isWhitespaceOnly&&0===this._containsForeignElements)return this.getWidth(d);let e=this._characterMapping.getDomPosition(c),f=h.readHorizontalRanges(this._getReadingTarget(a),e.partIndex,e.charIndex,e.partIndex,e.charIndex,d);if(!f||0===f.length)return -1;let g=f[0].left;if(this.input.isBasicASCII){let a=this._characterMapping.getHorizontalOffset(c),b=Math.round(this.input.spaceWidth*a);if(1>=Math.abs(b-g))return b}return g}_readRawVisibleRangesForRange(a,b,c,d){if(this.input.isLTR&&1===b&&c===this._characterMapping.length)return[new g.IO(0,this.getWidth(d))];let e=this._characterMapping.getDomPosition(b),f=this._characterMapping.getDomPosition(c);return h.readHorizontalRanges(this._getReadingTarget(a),e.partIndex,e.charIndex,f.partIndex,f.charIndex,d)}getColumnOfNodeOffset(a,b){return v(this._characterMapping,a,b)}}class t extends s{_readVisibleRangesForRange(a,b,c,d,e){let f=super._readVisibleRangesForRange(a,b,c,d,e);if(!f||0===f.length||c===d||1===c&&d===this._characterMapping.length)return f;if(this.input.isLTR){let c=this._readPixelOffset(a,b,d,e);if(-1!==c){let a=f[f.length-1];a.left<c&&(a.width=c-a.left)}}return f}}let u=d.Tc?function(a,b,c,d){return new t(a,b,c,d)}:function(a,b,c,d){return new s(a,b,c,d)};function v(a,b,c){let d=b.textContent.length,e=-1;for(;b;)b=b.previousSibling,e++;return a.getColumn(new j.wZ(e,c),d)}},5602:(a,b,c)=>{"use strict";c.d(b,{V:()=>f,w:()=>g});var d=c(40201),e=c(39537);function f(a,b,c,d=e.jM.ofCaller()){return(0,e.eP)({debugName:()=>`Configuration Key "${a}"`},b=>c.onDidChangeConfiguration(c=>{c.affectsConfiguration(a)&&b(c)}),()=>c.getValue(a)??b,d)}function g(a,b,c,f=e.jM.ofCaller()){let h=a.bindTo(b),i=new d.Cm;return(0,e.C)({debugName:()=>`Set Context Key "${a.key}"`},a=>{let b=c(a);return h.set(b),b},f).recomputeInitiallyAndOnChange(i),i}},5738:(a,b,c)=>{"use strict";c.d(b,{f1:()=>E,M$:()=>y,fN:()=>U,N1:()=>T,jQ:()=>z,M0:()=>function a(b,c){if(0===b.type||1===c.type)return!0;if(9===b.type)return 9===c.type&&W(b.expr,c.expr);if(9===c.type){for(let d of c.expr)if(a(b,d))return!0;return!1}if(6===b.type){if(6===c.type)return W(c.expr,b.expr);for(let d of b.expr)if(a(d,c))return!0;return!1}return b.equals(c)}});var d=c(19254),e=c(77747),f=c(88586),g=c(76302);function h(...a){switch(a.length){case 1:return(0,g.kg)(1678,"Did you mean {0}?",a[0]);case 2:return(0,g.kg)(1679,"Did you mean {0} or {1}?",a[0],a[1]);case 3:return(0,g.kg)(1680,"Did you mean {0}, {1} or {2}?",a[0],a[1],a[2]);default:return}}let i=(0,g.kg)(1681,"Did you forget to open or close the quote?"),j=(0,g.kg)(1682,"Did you forget to escape the '/' (slash) character? Put two backslashes before it to escape, e.g., '\\\\/'.");class k{constructor(){this._input="",this._start=0,this._current=0,this._tokens=[],this._errors=[],this.stringRe=/[a-zA-Z0-9_<>\-\./\\:\*\?\+\[\]\^,#@;"%\$\p{L}-]+/uy}static getLexeme(a){switch(a.type){case 0:return"(";case 1:return")";case 2:return"!";case 3:return a.isTripleEq?"===":"==";case 4:return a.isTripleEq?"!==":"!=";case 5:return"<";case 6:return"<=";case 7:case 8:return">=";case 9:return"=~";case 10:case 17:case 18:case 19:return a.lexeme;case 11:return"true";case 12:return"false";case 13:return"in";case 14:return"not";case 15:return"&&";case 16:return"||";case 20:return"EOF";default:throw(0,f.iH)(`unhandled token type: ${JSON.stringify(a)}; have you forgotten to add a case?`)}}static{this._regexFlags=new Set(["i","g","s","m","y","u"].map(a=>a.charCodeAt(0)))}static{this._keywords=new Map([["not",14],["in",13],["false",12],["true",11]])}reset(a){return this._input=a,this._start=0,this._current=0,this._tokens=[],this._errors=[],this}scan(){for(;!this._isAtEnd();)switch(this._start=this._current,this._advance()){case 40:this._addToken(0);break;case 41:this._addToken(1);break;case 33:if(this._match(61)){let a=this._match(61);this._tokens.push({type:4,offset:this._start,isTripleEq:a})}else this._addToken(2);break;case 39:this._quotedString();break;case 47:this._regex();break;case 61:if(this._match(61)){let a=this._match(61);this._tokens.push({type:3,offset:this._start,isTripleEq:a})}else this._match(126)?this._addToken(9):this._error(h("==","=~"));break;case 60:this._addToken(this._match(61)?6:5);break;case 62:this._addToken(this._match(61)?8:7);break;case 38:this._match(38)?this._addToken(15):this._error(h("&&"));break;case 124:this._match(124)?this._addToken(16):this._error(h("||"));break;case 32:case 13:case 9:case 10:case 160:break;default:this._string()}return this._start=this._current,this._addToken(20),Array.from(this._tokens)}_match(a){return!this._isAtEnd()&&this._input.charCodeAt(this._current)===a&&(this._current++,!0)}_advance(){return this._input.charCodeAt(this._current++)}_peek(){return this._isAtEnd()?0:this._input.charCodeAt(this._current)}_addToken(a){this._tokens.push({type:a,offset:this._start})}_error(a){let b=this._start,c=this._input.substring(this._start,this._current),d={type:19,offset:this._start,lexeme:c};this._errors.push({offset:b,lexeme:c,additionalInfo:a}),this._tokens.push(d)}_string(){this.stringRe.lastIndex=this._start;let a=this.stringRe.exec(this._input);if(a){this._current=this._start+a[0].length;let b=this._input.substring(this._start,this._current),c=k._keywords.get(b);c?this._addToken(c):this._tokens.push({type:17,lexeme:b,offset:this._start})}}_quotedString(){for(;39!==this._peek()&&!this._isAtEnd();)this._advance();this._isAtEnd()?this._error(i):(this._advance(),this._tokens.push({type:18,lexeme:this._input.substring(this._start+1,this._current-1),offset:this._start+1}))}_regex(){let a=this._current,b=!1,c=!1;for(;;){if(a>=this._input.length){this._current=a,this._error(j);return}let d=this._input.charCodeAt(a);if(b)b=!1;else if(47!==d||c)91===d?c=!0:92===d?b=!0:93===d&&(c=!1);else{a++;break}a++}for(;a<this._input.length&&k._regexFlags.has(this._input.charCodeAt(a));)a++;this._current=a;let d=this._input.substring(this._start,this._current);this._tokens.push({type:10,lexeme:d,offset:this._start})}_isAtEnd(){return this._current>=this._input.length}}var l=c(21652);let m=new Map;m.set("false",!1),m.set("true",!0),m.set("isMac",d.zx),m.set("isLinux",d.j9),m.set("isWindows",d.uF),m.set("isWeb",d.HZ),m.set("isMacNative",d.zx&&!d.HZ),m.set("isEdge",d.UP),m.set("isFirefox",d.gm),m.set("isChrome",d.H8),m.set("isSafari",d.nr);let n=Object.prototype.hasOwnProperty,o={regexParsingWithErrorRecovery:!0},p=(0,g.kg)(1660,"Empty context key expression"),q=(0,g.kg)(1661,"Did you forget to write an expression? You can also put 'false' or 'true' to always evaluate to false or true, respectively."),r=(0,g.kg)(1662,"'in' after 'not'."),s=(0,g.kg)(1663,"closing parenthesis ')'"),t=(0,g.kg)(1664,"Unexpected token"),u=(0,g.kg)(1665,"Did you forget to put && or || before the token?"),v=(0,g.kg)(1666,"Unexpected end of expression"),w=(0,g.kg)(1667,"Did you forget to put a context key?");class x{static{this._parseError=Error()}constructor(a=o){this._config=a,this._scanner=new k,this._tokens=[],this._current=0,this._parsingErrors=[],this._flagsGYRe=/g|y/g}parse(a){if(""===a)return void this._parsingErrors.push({message:p,offset:0,lexeme:"",additionalInfo:q});this._tokens=this._scanner.reset(a).scan(),this._current=0,this._parsingErrors=[];try{let a=this._expr();if(!this._isAtEnd()){let a=this._peek(),b=17===a.type?u:void 0;throw this._parsingErrors.push({message:t,offset:a.offset,lexeme:k.getLexeme(a),additionalInfo:b}),x._parseError}return a}catch(a){if(a!==x._parseError)throw a;return}}_expr(){return this._or()}_or(){let a=[this._and()];for(;this._matchOne(16);){let b=this._and();a.push(b)}return 1===a.length?a[0]:y.or(...a)}_and(){let a=[this._term()];for(;this._matchOne(15);){let b=this._term();a.push(b)}return 1===a.length?a[0]:y.and(...a)}_term(){if(this._matchOne(2)){let a=this._peek();switch(a.type){case 11:return this._advance(),B.INSTANCE;case 12:return this._advance(),C.INSTANCE;case 0:{this._advance();let a=this._expr();return this._consume(1,s),a?.negate()}case 17:return this._advance(),I.create(a.lexeme);default:throw this._errExpectedButGot("KEY | true | false | '(' expression ')'",a)}}return this._primary()}_primary(){let a=this._peek();switch(a.type){case 11:return this._advance(),y.true();case 12:return this._advance(),y.false();case 0:{this._advance();let a=this._expr();return this._consume(1,s),a}case 17:{let b=a.lexeme;if(this._advance(),this._matchOne(9)){let a=this._peek();if(!this._config.regexParsingWithErrorRecovery){let c;if(this._advance(),10!==a.type)throw this._errExpectedButGot("REGEX",a);let d=a.lexeme,e=d.lastIndexOf("/"),f=e===d.length-1?void 0:this._removeFlagsGY(d.substring(e+1));try{c=new RegExp(d.substring(1,e),f)}catch(b){throw this._errExpectedButGot("REGEX",a)}return O.create(b,c)}switch(a.type){case 10:case 19:{let c,d=[a.lexeme];this._advance();let e=this._peek(),f=0;for(let b=0;b<a.lexeme.length;b++)40===a.lexeme.charCodeAt(b)?f++:41===a.lexeme.charCodeAt(b)&&f--;for(;!this._isAtEnd()&&15!==e.type&&16!==e.type;){switch(e.type){case 0:f++;break;case 1:f--;break;case 10:case 18:for(let b=0;b<e.lexeme.length;b++)40===e.lexeme.charCodeAt(b)?f++:41===a.lexeme.charCodeAt(b)&&f--}if(f<0)break;d.push(k.getLexeme(e)),this._advance(),e=this._peek()}let g=d.join(""),h=g.lastIndexOf("/"),i=h===g.length-1?void 0:this._removeFlagsGY(g.substring(h+1));try{c=new RegExp(g.substring(1,h),i)}catch(b){throw this._errExpectedButGot("REGEX",a)}return y.regex(b,c)}case 18:{let c=a.lexeme;this._advance();let d=null;if(!(0,e.AV)(c)){let b=c.indexOf("/"),e=c.lastIndexOf("/");if(b!==e&&b>=0){let f=c.slice(b+1,e),g="i"===c[e+1]?"i":"";try{d=new RegExp(f,g)}catch(b){throw this._errExpectedButGot("REGEX",a)}}}if(null===d)throw this._errExpectedButGot("REGEX",a);return O.create(b,d)}default:throw this._errExpectedButGot("REGEX",this._peek())}}if(this._matchOne(14)){this._consume(13,r);let a=this._value();return y.notIn(b,a)}switch(this._peek().type){case 3:{this._advance();let a=this._value();if(18===this._previous().type)return y.equals(b,a);switch(a){case"true":return y.has(b);case"false":return y.not(b);default:return y.equals(b,a)}}case 4:{this._advance();let a=this._value();if(18===this._previous().type)return y.notEquals(b,a);switch(a){case"true":return y.not(b);case"false":return y.has(b);default:return y.notEquals(b,a)}}case 5:return this._advance(),M.create(b,this._value());case 6:return this._advance(),N.create(b,this._value());case 7:return this._advance(),K.create(b,this._value());case 8:return this._advance(),L.create(b,this._value());case 13:return this._advance(),y.in(b,this._value());default:return y.has(b)}}case 20:throw this._parsingErrors.push({message:v,offset:a.offset,lexeme:"",additionalInfo:w}),x._parseError;default:throw this._errExpectedButGot(`true | false | KEY
4
4
  | KEY '=~' REGEX
5
- | KEY ('==' | '!=' | '<' | '<=' | '>' | '>=' | 'in' | 'not' 'in') value`,this._peek())}}_value(){let a=this._peek();switch(a.type){case 17:case 18:return this._advance(),a.lexeme;case 11:return this._advance(),"true";case 12:return this._advance(),"false";case 13:return this._advance(),"in";default:return""}}_removeFlagsGY(a){return a.replaceAll(this._flagsGYRe,"")}_previous(){return this._tokens[this._current-1]}_matchOne(a){return!!this._check(a)&&(this._advance(),!0)}_advance(){return!this._isAtEnd()&&this._current++,this._previous()}_consume(a,b){if(this._check(a))return this._advance();throw this._errExpectedButGot(b,this._peek())}_errExpectedButGot(a,b,c){let d=(0,g.kg)(1668,"Expected: {0}\nReceived: '{1}'.",a,k.getLexeme(b)),e=b.offset,f=k.getLexeme(b);return this._parsingErrors.push({message:d,offset:e,lexeme:f,additionalInfo:c}),x._parseError}_check(a){return this._peek().type===a}_peek(){return this._tokens[this._current]}_isAtEnd(){return 20===this._peek().type}}class y{static false(){return B.INSTANCE}static true(){return C.INSTANCE}static has(a){return D.create(a)}static equals(a,b){return E.create(a,b)}static notEquals(a,b){return H.create(a,b)}static regex(a,b){return O.create(a,b)}static in(a,b){return F.create(a,b)}static notIn(a,b){return G.create(a,b)}static not(a){return I.create(a)}static and(...a){return R.create(a,null,!0)}static or(...a){return S.create(a,null,!0)}static{this._parser=new x({regexParsingWithErrorRecovery:!1})}static deserialize(a){if(null!=a)return this._parser.parse(a)}}function z(a,b){let c=a?a.substituteConstants():void 0,d=b?b.substituteConstants():void 0;return!c&&!d||!!c&&!!d&&c.equals(d)}function A(a,b){return a.cmp(b)}class B{static{this.INSTANCE=new B}constructor(){this.type=0}cmp(a){return this.type-a.type}equals(a){return a.type===this.type}substituteConstants(){return this}evaluate(a){return!1}serialize(){return"false"}keys(){return[]}negate(){return C.INSTANCE}}class C{static{this.INSTANCE=new C}constructor(){this.type=1}cmp(a){return this.type-a.type}equals(a){return a.type===this.type}substituteConstants(){return this}evaluate(a){return!0}serialize(){return"true"}keys(){return[]}negate(){return B.INSTANCE}}class D{static create(a,b=null){let c=m.get(a);return"boolean"==typeof c?c?C.INSTANCE:B.INSTANCE:new D(a,b)}constructor(a,b){this.key=a,this.negated=b,this.type=2}cmp(a){return a.type!==this.type?this.type-a.type:function(a,b){return a<b?-1:+(a>b)}(this.key,a.key)}equals(a){return a.type===this.type&&this.key===a.key}substituteConstants(){let a=m.get(this.key);return"boolean"==typeof a?a?C.INSTANCE:B.INSTANCE:this}evaluate(a){return!!a.getValue(this.key)}serialize(){return this.key}keys(){return[this.key]}negate(){return this.negated||(this.negated=I.create(this.key,this)),this.negated}}class E{static create(a,b,c=null){if("boolean"==typeof b)return b?D.create(a,c):I.create(a,c);let d=m.get(a);return"boolean"==typeof d?b===(d?"true":"false")?C.INSTANCE:B.INSTANCE:new E(a,b,c)}constructor(a,b,c){this.key=a,this.value=b,this.negated=c,this.type=4}cmp(a){return a.type!==this.type?this.type-a.type:V(this.key,this.value,a.key,a.value)}equals(a){return a.type===this.type&&this.key===a.key&&this.value===a.value}substituteConstants(){let a=m.get(this.key);return"boolean"==typeof a?this.value===(a?"true":"false")?C.INSTANCE:B.INSTANCE:this}evaluate(a){return a.getValue(this.key)==this.value}serialize(){return`${this.key} == '${this.value}'`}keys(){return[this.key]}negate(){return this.negated||(this.negated=H.create(this.key,this.value,this)),this.negated}}class F{static create(a,b){return new F(a,b)}constructor(a,b){this.key=a,this.valueKey=b,this.type=10,this.negated=null}cmp(a){return a.type!==this.type?this.type-a.type:V(this.key,this.valueKey,a.key,a.valueKey)}equals(a){return a.type===this.type&&this.key===a.key&&this.valueKey===a.valueKey}substituteConstants(){return this}evaluate(a){let b=a.getValue(this.valueKey),c=a.getValue(this.key);return Array.isArray(b)?b.includes(c):"string"==typeof c&&"object"==typeof b&&null!==b&&n.call(b,c)}serialize(){return`${this.key} in '${this.valueKey}'`}keys(){return[this.key,this.valueKey]}negate(){return this.negated||(this.negated=G.create(this.key,this.valueKey)),this.negated}}class G{static create(a,b){return new G(a,b)}constructor(a,b){this.key=a,this.valueKey=b,this.type=11,this._negated=F.create(a,b)}cmp(a){return a.type!==this.type?this.type-a.type:this._negated.cmp(a._negated)}equals(a){return a.type===this.type&&this._negated.equals(a._negated)}substituteConstants(){return this}evaluate(a){return!this._negated.evaluate(a)}serialize(){return`${this.key} not in '${this.valueKey}'`}keys(){return this._negated.keys()}negate(){return this._negated}}class H{static create(a,b,c=null){if("boolean"==typeof b)return b?I.create(a,c):D.create(a,c);let d=m.get(a);return"boolean"==typeof d?b===(d?"true":"false")?B.INSTANCE:C.INSTANCE:new H(a,b,c)}constructor(a,b,c){this.key=a,this.value=b,this.negated=c,this.type=5}cmp(a){return a.type!==this.type?this.type-a.type:V(this.key,this.value,a.key,a.value)}equals(a){return a.type===this.type&&this.key===a.key&&this.value===a.value}substituteConstants(){let a=m.get(this.key);return"boolean"==typeof a?this.value===(a?"true":"false")?B.INSTANCE:C.INSTANCE:this}evaluate(a){return a.getValue(this.key)!=this.value}serialize(){return`${this.key} != '${this.value}'`}keys(){return[this.key]}negate(){return this.negated||(this.negated=E.create(this.key,this.value,this)),this.negated}}class I{static create(a,b=null){let c=m.get(a);return"boolean"==typeof c?c?B.INSTANCE:C.INSTANCE:new I(a,b)}constructor(a,b){this.key=a,this.negated=b,this.type=3}cmp(a){return a.type!==this.type?this.type-a.type:function(a,b){return a<b?-1:+(a>b)}(this.key,a.key)}equals(a){return a.type===this.type&&this.key===a.key}substituteConstants(){let a=m.get(this.key);return"boolean"==typeof a?a?B.INSTANCE:C.INSTANCE:this}evaluate(a){return!a.getValue(this.key)}serialize(){return`!${this.key}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=D.create(this.key,this)),this.negated}}function J(a,b){if("string"==typeof a){let b=parseFloat(a);isNaN(b)||(a=b)}return"string"==typeof a||"number"==typeof a?b(a):B.INSTANCE}class K{static create(a,b,c=null){return J(b,b=>new K(a,b,c))}constructor(a,b,c){this.key=a,this.value=b,this.negated=c,this.type=12}cmp(a){return a.type!==this.type?this.type-a.type:V(this.key,this.value,a.key,a.value)}equals(a){return a.type===this.type&&this.key===a.key&&this.value===a.value}substituteConstants(){return this}evaluate(a){return"string"!=typeof this.value&&parseFloat(a.getValue(this.key))>this.value}serialize(){return`${this.key} > ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=N.create(this.key,this.value,this)),this.negated}}class L{static create(a,b,c=null){return J(b,b=>new L(a,b,c))}constructor(a,b,c){this.key=a,this.value=b,this.negated=c,this.type=13}cmp(a){return a.type!==this.type?this.type-a.type:V(this.key,this.value,a.key,a.value)}equals(a){return a.type===this.type&&this.key===a.key&&this.value===a.value}substituteConstants(){return this}evaluate(a){return"string"!=typeof this.value&&parseFloat(a.getValue(this.key))>=this.value}serialize(){return`${this.key} >= ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=M.create(this.key,this.value,this)),this.negated}}class M{static create(a,b,c=null){return J(b,b=>new M(a,b,c))}constructor(a,b,c){this.key=a,this.value=b,this.negated=c,this.type=14}cmp(a){return a.type!==this.type?this.type-a.type:V(this.key,this.value,a.key,a.value)}equals(a){return a.type===this.type&&this.key===a.key&&this.value===a.value}substituteConstants(){return this}evaluate(a){return"string"!=typeof this.value&&parseFloat(a.getValue(this.key))<this.value}serialize(){return`${this.key} < ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=L.create(this.key,this.value,this)),this.negated}}class N{static create(a,b,c=null){return J(b,b=>new N(a,b,c))}constructor(a,b,c){this.key=a,this.value=b,this.negated=c,this.type=15}cmp(a){return a.type!==this.type?this.type-a.type:V(this.key,this.value,a.key,a.value)}equals(a){return a.type===this.type&&this.key===a.key&&this.value===a.value}substituteConstants(){return this}evaluate(a){return"string"!=typeof this.value&&parseFloat(a.getValue(this.key))<=this.value}serialize(){return`${this.key} <= ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=K.create(this.key,this.value,this)),this.negated}}class O{static create(a,b){return new O(a,b)}constructor(a,b){this.key=a,this.regexp=b,this.type=7,this.negated=null}cmp(a){if(a.type!==this.type)return this.type-a.type;if(this.key<a.key)return -1;if(this.key>a.key)return 1;let b=this.regexp?this.regexp.source:"",c=a.regexp?a.regexp.source:"";return b<c?-1:+(b>c)}equals(a){if(a.type===this.type){let b=this.regexp?this.regexp.source:"",c=a.regexp?a.regexp.source:"";return this.key===a.key&&b===c}return!1}substituteConstants(){return this}evaluate(a){let b=a.getValue(this.key);return!!this.regexp&&this.regexp.test(b)}serialize(){let a=this.regexp?`/${this.regexp.source}/${this.regexp.flags}`:"/invalid/";return`${this.key} =~ ${a}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=P.create(this)),this.negated}}class P{static create(a){return new P(a)}constructor(a){this._actual=a,this.type=8}cmp(a){return a.type!==this.type?this.type-a.type:this._actual.cmp(a._actual)}equals(a){return a.type===this.type&&this._actual.equals(a._actual)}substituteConstants(){return this}evaluate(a){return!this._actual.evaluate(a)}serialize(){return`!(${this._actual.serialize()})`}keys(){return this._actual.keys()}negate(){return this._actual}}function Q(a){let b=null;for(let c=0,d=a.length;c<d;c++){let d=a[c].substituteConstants();if(a[c]!==d&&null===b){b=[];for(let d=0;d<c;d++)b[d]=a[d]}null!==b&&(b[c]=d)}return null===b?a:b}class R{static create(a,b,c){return R._normalizeArr(a,b,c)}constructor(a,b){this.expr=a,this.negated=b,this.type=6}cmp(a){if(a.type!==this.type)return this.type-a.type;if(this.expr.length<a.expr.length)return -1;if(this.expr.length>a.expr.length)return 1;for(let b=0,c=this.expr.length;b<c;b++){let c=A(this.expr[b],a.expr[b]);if(0!==c)return c}return 0}equals(a){if(a.type===this.type){if(this.expr.length!==a.expr.length)return!1;for(let b=0,c=this.expr.length;b<c;b++)if(!this.expr[b].equals(a.expr[b]))return!1;return!0}return!1}substituteConstants(){let a=Q(this.expr);return a===this.expr?this:R.create(a,this.negated,!1)}evaluate(a){for(let b=0,c=this.expr.length;b<c;b++)if(!this.expr[b].evaluate(a))return!1;return!0}static _normalizeArr(a,b,c){let d=[],e=!1;for(let b of a)if(b){if(1===b.type){e=!0;continue}if(0===b.type)return B.INSTANCE;if(6===b.type){d.push(...b.expr);continue}d.push(b)}if(0===d.length&&e)return C.INSTANCE;if(0!==d.length){if(1===d.length)return d[0];d.sort(A);for(let a=1;a<d.length;a++)d[a-1].equals(d[a])&&(d.splice(a,1),a--);if(1===d.length)return d[0];for(;d.length>1;){let a=d[d.length-1];if(9!==a.type)break;d.pop();let b=d.pop(),e=0===d.length,f=S.create(a.expr.map(a=>R.create([a,b],null,c)),null,e);f&&(d.push(f),d.sort(A))}if(1===d.length)return d[0];if(c){for(let a=0;a<d.length;a++)for(let b=a+1;b<d.length;b++)if(d[a].negate().equals(d[b]))return B.INSTANCE;if(1===d.length)return d[0]}return new R(d,b)}}serialize(){return this.expr.map(a=>a.serialize()).join(" && ")}keys(){let a=[];for(let b of this.expr)a.push(...b.keys());return a}negate(){if(!this.negated){let a=[];for(let b of this.expr)a.push(b.negate());this.negated=S.create(a,this,!0)}return this.negated}}class S{static create(a,b,c){return S._normalizeArr(a,b,c)}constructor(a,b){this.expr=a,this.negated=b,this.type=9}cmp(a){if(a.type!==this.type)return this.type-a.type;if(this.expr.length<a.expr.length)return -1;if(this.expr.length>a.expr.length)return 1;for(let b=0,c=this.expr.length;b<c;b++){let c=A(this.expr[b],a.expr[b]);if(0!==c)return c}return 0}equals(a){if(a.type===this.type){if(this.expr.length!==a.expr.length)return!1;for(let b=0,c=this.expr.length;b<c;b++)if(!this.expr[b].equals(a.expr[b]))return!1;return!0}return!1}substituteConstants(){let a=Q(this.expr);return a===this.expr?this:S.create(a,this.negated,!1)}evaluate(a){for(let b=0,c=this.expr.length;b<c;b++)if(this.expr[b].evaluate(a))return!0;return!1}static _normalizeArr(a,b,c){let d=[],e=!1;if(a){for(let b=0,c=a.length;b<c;b++){let c=a[b];if(c){if(0===c.type){e=!0;continue}if(1===c.type)return C.INSTANCE;if(9===c.type){d=d.concat(c.expr);continue}d.push(c)}}if(0===d.length&&e)return B.INSTANCE;d.sort(A)}if(0!==d.length){if(1===d.length)return d[0];for(let a=1;a<d.length;a++)d[a-1].equals(d[a])&&(d.splice(a,1),a--);if(1===d.length)return d[0];if(c){for(let a=0;a<d.length;a++)for(let b=a+1;b<d.length;b++)if(d[a].negate().equals(d[b]))return C.INSTANCE;if(1===d.length)return d[0]}return new S(d,b)}}serialize(){return this.expr.map(a=>a.serialize()).join(" || ")}keys(){let a=[];for(let b of this.expr)a.push(...b.keys());return a}negate(){if(!this.negated){let a=[];for(let b of this.expr)a.push(b.negate());for(;a.length>1;){let b=a.shift(),c=a.shift(),d=[];for(let a of X(b))for(let b of X(c))d.push(R.create([a,b],null,!1));a.unshift(S.create(d,null,!1))}this.negated=S.create(a,this,!0)}return this.negated}}class T extends D{static{this._info=[]}static all(){return T._info.values()}constructor(a,b,c){super(a,null),this._defaultValue=b,"object"==typeof c?T._info.push({...c,key:a}):!0!==c&&T._info.push({key:a,description:c,type:null!=b?typeof b:void 0})}bindTo(a){return a.createKey(this.key,this._defaultValue)}getValue(a){return a.getContextKeyValue(this.key)}toNegated(){return this.negate()}isEqualTo(a){return E.create(this.key,a)}}let U=(0,l.u1)("contextKeyService");function V(a,b,c,d){return a<c?-1:a>c?1:b<d?-1:+(b>d)}function W(a,b){let c=0,d=0;for(;c<a.length&&d<b.length;){let e=a[c].cmp(b[d]);if(e<0)return!1;0===e&&c++,d++}return c===a.length}function X(a){return 9===a.type?a.expr:[a]}},6539:()=>{},6876:(a,b,c)=>{"use strict";c.d(b,{e:()=>g});var d=c(72492),e=c(93842),f=c(19254);let g={clipboard:{writeText:f.ib||document.queryCommandSupported&&document.queryCommandSupported("copy")||!!(navigator&&navigator.clipboard&&navigator.clipboard.writeText),readText:f.ib||!!(navigator&&navigator.clipboard&&navigator.clipboard.readText)},keyboard:f.ib||d.Qu()?0:navigator.keyboard||d.nr?1:2,touch:"ontouchstart"in e.G||navigator.maxTouchPoints>0,pointerEvents:e.G.PointerEvent&&("ontouchstart"in e.G||navigator.maxTouchPoints>0)}},7094:(a,b,c)=>{"use strict";c.d(b,{T:()=>h,v:()=>i});var d=c(33067),e=c(25203),f=c(61682),g=c(37186);class h{static indent(a,b,c){if(null===b||null===c)return[];let e=[];for(let b=0,f=c.length;b<f;b++)e[b]=new d.Y(c[b],{isUnshift:!1,tabSize:a.tabSize,indentSize:a.indentSize,insertSpaces:a.insertSpaces,useTabStops:a.useTabStops,autoIndent:a.autoIndent},a.languageConfigurationService);return e}static outdent(a,b,c){let e=[];for(let b=0,f=c.length;b<f;b++)e[b]=new d.Y(c[b],{isUnshift:!0,tabSize:a.tabSize,indentSize:a.indentSize,insertSpaces:a.insertSpaces,useTabStops:a.useTabStops,autoIndent:a.autoIndent},a.languageConfigurationService);return e}static paste(a,b,c,d,e,f){return g.Dr.getEdits(a,b,c,d,e,f)}static tab(a,b,c){return g.h0.getCommands(a,b,c)}static compositionType(a,b,c,d,e,f,h,i){return g.YA.getEdits(a,b,c,d,e,f,h,i)}static compositionEndWithInterceptors(a,b,c,d,h,i){if(!d)return null;let j=null;for(let a of d)if(null===j)j=a.insertedText;else if(j!==a.insertedText)return null;if(!j||1!==j.length)return g.Tl.getEdits(b,d);let k=j,l=!1;for(let a of d)if(0!==a.deletedText.length){l=!0;break}if(l){if(!(0,g.ey)(b,k)||!b.surroundingPairs.hasOwnProperty(k))return null;let a=(0,f.vG)(k);for(let b of d)if(0!==b.deletedSelectionStart||b.deletedSelectionEnd!==b.deletedText.length||/^[ \t]+$/.test(b.deletedText)||a&&(0,f.vG)(b.deletedText))return null;let c=[];for(let a of h){if(!a.isEmpty())return null;c.push(a.getPosition())}if(c.length!==d.length)return null;let i=[];for(let a=0,f=c.length;a<f;a++)i.push(new e.y(c[a],d[a].deletedText,b.surroundingPairs[k]));return new f.vY(4,i,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}let m=g.K4.getEdits(b,c,h,i,k);if(void 0!==m)return m;let n=g.oi.getEdits(b,c,h,k,!0,!1);return void 0!==n?n:g.Tl.getEdits(b,d)}static typeWithInterceptors(a,b,c,d,e,f,h){let i=g.AO.getEdits(c,d,e,h,a);if(void 0!==i)return i;let j=g.dU.getEdits(c,d,e,h,a);if(void 0!==j)return j;let k=g.sx.getEdits(b,c,d,e,f,h);if(void 0!==k)return k;let l=g.oi.getEdits(c,d,e,h,!1,a);if(void 0!==l)return l;let m=g.is.getEdits(c,d,e,h,a);if(void 0!==m)return m;let n=g.kr.getEdits(b,c,d,e,h,a);return void 0!==n?n:g.Ls.getEdits(c,b,e,h,a)}static typeWithoutInterceptors(a,b,c,d,e){return g.UN.getEdits(a,d,e)}}class i{constructor(a,b,c,d,e,f,g){this.deletedText=a,this.deletedSelectionStart=b,this.deletedSelectionEnd=c,this.insertedText=d,this.insertedSelectionStart=e,this.insertedSelectionEnd=f,this.insertedTextRange=g}}},7240:(a,b,c)=>{"use strict";var d;function e(a,b){let c=new Map;for(let d of a){let a=b(d),e=c.get(a);e||(e=[],c.set(a,e)),e.push(d)}return c}function f(a,b){let c=[],d=[];for(let d of a)b.has(d)||c.push(d);for(let c of b)a.has(c)||d.push(c);return{removed:c,added:d}}function g(a,b){let c=new Set;for(let d of b)a.has(d)&&c.add(d);return c}c.d(b,{E$:()=>g,Fi:()=>e,Zv:()=>f,iD:()=>h});class h{static{d=Symbol.toStringTag}constructor(a,b){for(const c of(this.toKey=b,this._map=new Map,this[d]="SetWithKey",a))this.add(c)}get size(){return this._map.size}add(a){let b=this.toKey(a);return this._map.set(b,a),this}delete(a){return this._map.delete(this.toKey(a))}has(a){return this._map.has(this.toKey(a))}*entries(){for(let a of this._map.values())yield[a,a]}keys(){return this.values()}*values(){for(let a of this._map.values())yield a}clear(){this._map.clear()}forEach(a,b){this._map.forEach(c=>a.call(b,c,c,this))}[Symbol.iterator](){return this.values()}}},7784:(a,b,c)=>{"use strict";c.d(b,{OL:()=>h,dg:()=>j,lw:()=>m});var d,e=c(54058),f=c(53918);let g=Symbol("TextModelEditSource");class h{constructor(a,b){this.metadata=a}toString(){return`${this.metadata.source}`}getType(){let a=this.metadata;switch(a.source){case"cursor":return a.kind;case"inlineCompletionAccept":return a.source+(a.$nes?":nes":"");case"unknown":return a.name||"unknown";default:return a.source}}toKey(a,b={}){return Object.entries(this.metadata).filter(([c,d])=>{let e=b[c];return void 0!==e?e:(c.match(/\$/g)||[]).length<=a&&null!=d&&""!==d}).map(([a,b])=>`${a}:${b}`).join("-")}}function i(a){return new h(a,g)}let j={unknown:a=>i({source:"unknown",name:a.name}),rename:()=>i({source:"rename"}),chatApplyEdits:a=>i({source:"Chat.applyEdits",$modelId:l(a.modelId),$extensionId:a.extensionId?.extensionId,$extensionVersion:a.extensionId?.version,$$languageId:a.languageId,$$sessionId:a.sessionId,$$requestId:a.requestId,$$mode:a.mode,$$codeBlockSuggestionId:a.codeBlockSuggestionId}),chatUndoEdits:()=>i({source:"Chat.undoEdits"}),chatReset:()=>i({source:"Chat.reset"}),inlineCompletionAccept:a=>i({source:"inlineCompletionAccept",$nes:a.nes,...k(a.providerId),$$requestUuid:a.requestUuid,$$languageId:a.languageId}),inlineCompletionPartialAccept:a=>i({source:"inlineCompletionPartialAccept",type:a.type,$nes:a.nes,...k(a.providerId),$$requestUuid:a.requestUuid,$$languageId:a.languageId}),inlineChatApplyEdit:a=>i({source:"inlineChat.applyEdits",$modelId:l(a.modelId),$extensionId:a.extensionId?.extensionId,$extensionVersion:a.extensionId?.version,$$requestId:a.requestId,$$languageId:a.languageId}),reloadFromDisk:()=>i({source:"reloadFromDisk"}),cursor:a=>i({source:"cursor",kind:a.kind,detailedSource:a.detailedSource}),setValue:()=>i({source:"setValue"}),eolChange:()=>i({source:"eolChange"}),applyEdits:()=>i({source:"applyEdits"}),snippet:()=>i({source:"snippet"}),suggest:a=>i({source:"suggest",...k(a.providerId)}),codeAction:a=>i({source:"codeAction",$kind:a.kind,...k(a.providerId)})};function k(a){return a?{$extensionId:a.extensionId,$extensionVersion:a.extensionVersion,$providerId:a.providerId}:{}}function l(a){if(void 0!==a)return a.replaceAll("/","|")}class m{static fromText(a){return new m(f.W.ofText(a).lineCount,0,a.length,0)}static tryCreate(a,b,c,d){if(void 0!==a&&void 0!==b&&void 0!==c&&void 0!==d)return new m(a,b,c,d)}constructor(a,b,c,d){this.linesAdded=a,this.linesRemoved=b,this.charsAdded=c,this.charsRemoved=d}}(d||(d={})).newId=function(){return(0,e.t)("sgt")}},7806:(a,b,c)=>{"use strict";c.d(b,{M$:()=>j,Tf:()=>g,gI:()=>function a(b,c){if(void 0!==b){let d=b.match(/^\s*var\((.+)\)$/);if(d){let b=d[1].split(",",2);return 2===b.length&&(c=a(b[1].trim(),c)),`var(${b[0]}, ${c})`}return b}return c},mG:()=>i,r$:()=>f,s7:()=>h,yj:()=>e});var d=c(37291);function e(a){let b=a.replaceAll(/[^_\-a-z0-9]/gi,"");return b!==a&&console.warn(`CSS ident value ${a} modified to ${b} to be safe for CSS`),b}function f(a){return`'${a.replaceAll(/'/g,"\\000027")}'`}function g(a){return a?i`url('${CSS.escape(d.zl.uriToBrowserUri(a).toString(!0))}')`:"url('')"}function h(a,b=!1){let c=CSS.escape(a);return b||c===a||console.warn(`CSS class name ${a} modified to ${c} to be safe for CSS`),c}function i(a,...b){return a.reduce((a,c,d)=>a+c+(b[d]||""),"")}class j{constructor(){this._parts=[]}push(...a){this._parts.push(...a)}join(a="\n"){return this._parts.join(a)}}},7968:(a,b,c)=>{"use strict";c.d(b,{AI:()=>f,Kz:()=>h,Ot:()=>g});var d=c(98274),e=c(21652),f=d.A;let g=(0,e.u1)("notificationService");class h{}},8211:(a,b,c)=>{"use strict";c.d(b,{x:()=>i});var d=c(63048),e=c(94615),f=c(50370),g=c(12235),h=c(40201);class i extends h.jG{onclick(a,b){this._register(d.ko(a,d.Bx.CLICK,c=>b(new f.P(d.zk(a),c))))}onmousedown(a,b){this._register(d.ko(a,d.Bx.MOUSE_DOWN,c=>b(new f.P(d.zk(a),c))))}onmouseover(a,b){this._register(d.ko(a,d.Bx.MOUSE_OVER,c=>b(new f.P(d.zk(a),c))))}onmouseleave(a,b){this._register(d.ko(a,d.Bx.MOUSE_LEAVE,c=>b(new f.P(d.zk(a),c))))}onkeydown(a,b){this._register(d.ko(a,d.Bx.KEY_DOWN,a=>b(new e.Z(a))))}onkeyup(a,b){this._register(d.ko(a,d.Bx.KEY_UP,a=>b(new e.Z(a))))}oninput(a,b){this._register(d.ko(a,d.Bx.INPUT,b))}onblur(a,b){this._register(d.ko(a,d.Bx.BLUR,b))}onfocus(a,b){this._register(d.ko(a,d.Bx.FOCUS,b))}ignoreGesture(a){return g.q.ignoreTarget(a)}}},8424:(a,b,c)=>{"use strict";c.d(b,{Bs:()=>h,d:()=>e});var d=c(77747);class e{constructor(a,b,c,d){this.startColumn=a,this.endColumn=b,this.className=c,this.type=d,this._lineDecorationBrand=void 0}static _equals(a,b){return a.startColumn===b.startColumn&&a.endColumn===b.endColumn&&a.className===b.className&&a.type===b.type}static equalsArr(a,b){let c=a.length;if(c!==b.length)return!1;for(let d=0;d<c;d++)if(!e._equals(a[d],b[d]))return!1;return!0}static extractWrapped(a,b,c){if(0===a.length)return a;let d=b+1,f=c+1,g=c-b,h=[],i=0;for(let b of a)b.endColumn<=d||b.startColumn>=f||(h[i++]=new e(Math.max(1,b.startColumn-d+1),Math.min(g+1,b.endColumn-d+1),b.className,b.type));return h}static filter(a,b,c,d){if(0===a.length)return[];let f=[],g=0;for(let h=0,i=a.length;h<i;h++){let i=a[h],j=i.range;if(j.endLineNumber<b||j.startLineNumber>b||j.isEmpty()&&(0===i.type||3===i.type))continue;let k=j.startLineNumber===b?j.startColumn:c,l=j.endLineNumber===b?j.endColumn:d;f[g++]=new e(k,l,i.inlineClassName,i.type)}return f}static _typeCompare(a,b){let c=[2,0,1,3];return c[a]-c[b]}static compare(a,b){if(a.startColumn!==b.startColumn)return a.startColumn-b.startColumn;if(a.endColumn!==b.endColumn)return a.endColumn-b.endColumn;let c=e._typeCompare(a.type,b.type);return 0!==c?c:a.className!==b.className?a.className<b.className?-1:1:0}}class f{constructor(a,b,c,d){this.startOffset=a,this.endOffset=b,this.className=c,this.metadata=d}}class g{constructor(){this.stopOffsets=[],this.classNames=[],this.metadata=[],this.count=0}static _metadata(a){let b=0;for(let c=0,d=a.length;c<d;c++)b|=a[c];return b}consumeLowerThan(a,b,c){for(;this.count>0&&this.stopOffsets[0]<a;){let a=0;for(;a+1<this.count&&this.stopOffsets[a]===this.stopOffsets[a+1];)a++;c.push(new f(b,this.stopOffsets[a],this.classNames.join(" "),g._metadata(this.metadata))),b=this.stopOffsets[a]+1,this.stopOffsets.splice(0,a+1),this.classNames.splice(0,a+1),this.metadata.splice(0,a+1),this.count-=a+1}return this.count>0&&b<a&&(c.push(new f(b,a-1,this.classNames.join(" "),g._metadata(this.metadata))),b=a),b}insert(a,b,c){if(0===this.count||this.stopOffsets[this.count-1]<=a)this.stopOffsets.push(a),this.classNames.push(b),this.metadata.push(c);else for(let d=0;d<this.count;d++)if(this.stopOffsets[d]>=a){this.stopOffsets.splice(d,0,a),this.classNames.splice(d,0,b),this.metadata.splice(d,0,c);break}this.count++}}class h{static normalize(a,b){if(0===b.length)return[];let c=[],e=new g,f=0;for(let g=0,h=b.length;g<h;g++){let h=b[g],i=h.startColumn,j=h.endColumn,k=h.className,l=1===h.type?2:4*(2===h.type);if(i>1){let b=a.charCodeAt(i-2);d.pc(b)&&i--}if(j>1){let b=a.charCodeAt(j-2);d.pc(b)&&j--}let m=i-1,n=j-2;f=e.consumeLowerThan(m,f,c),0===e.count&&(f=m),e.insert(n,k,l)}return e.consumeLowerThan(0x40000000,f,c),c}}},8751:(a,b,c)=>{"use strict";c.d(b,{t:()=>d});let d=(0,c(21652).u1)("treeSitterLibraryService")},8763:(a,b,c)=>{"use strict";c.d(b,{h:()=>d});let d=Symbol("MicrotaskDelay")},9360:(a,b,c)=>{"use strict";function d(a){return a&&"object"==typeof a&&"string"==typeof a.original&&"string"==typeof a.value}function e(a){return!!a&&void 0!==a.condition}c.d(b,{N:()=>e,f:()=>d})},9362:(a,b,c)=>{"use strict";c.d(b,{HG:()=>q,KS:()=>u,un:()=>v});var d=c(63048),e=c(88586),f=c(3457),g=c(40201),h=c(76302),i=c(25644),j=c(5738),k=c(58451),l=c(21652),m=c(61636),n=c(3501),o=c(1136),p=function(a,b){return function(c,d){b(c,d,a)}};let q=(0,l.u1)("IInlineCompletionsService"),r=new j.N1("inlineCompletions.snoozed",!1,(0,h.kg)(76,"Whether inline completions are currently snoozed")),s=class extends g.jG{get snoozeTimeLeft(){return void 0===this._snoozeTimeEnd?0:Math.max(0,this._snoozeTimeEnd-Date.now())}constructor(a,b){super(),this._contextKeyService=a,this._telemetryService=b,this._onDidChangeIsSnoozing=this._register(new f.vl),this.onDidChangeIsSnoozing=this._onDidChangeIsSnoozing.event,this._snoozeTimeEnd=void 0,this._recentCompletionIds=[],this._timer=this._register(new d.Be);const c=r.bindTo(this._contextKeyService);this._register(this.onDidChangeIsSnoozing(()=>c.set(this.isSnoozing())))}setSnoozeDuration(a){if(a<0)throw new e.D7(`Invalid snooze duration: ${a}. Duration must be non-negative.`);if(0===a)return void this.cancelSnooze();let b=this.isSnoozing(),c=this.snoozeTimeLeft;this._snoozeTimeEnd=Date.now()+a,b||this._onDidChangeIsSnoozing.fire(!0),this._timer.cancelAndSet(()=>{if(this.isSnoozing())throw new e.D7("Snooze timer did not fire as expected");this._onDidChangeIsSnoozing.fire(!1)},this.snoozeTimeLeft+1),this._reportSnooze(a-c,a)}isSnoozing(){return this.snoozeTimeLeft>0}cancelSnooze(){this.isSnoozing()&&(this._reportSnooze(-this.snoozeTimeLeft,0),this._snoozeTimeEnd=void 0,this._timer.cancel(),this._onDidChangeIsSnoozing.fire(!1))}reportNewCompletion(a){this._lastCompletionId=a,this._recentCompletionIds.unshift(a),this._recentCompletionIds.length>5&&this._recentCompletionIds.pop()}_reportSnooze(a,b){let c=Math.round(a/1e3),d=Math.round(b/1e3);this._telemetryService.publicLog2("inlineCompletions.snooze",{deltaSeconds:c,totalSeconds:d,lastCompletionId:this._lastCompletionId,recentCompletionIds:this._recentCompletionIds})}};s=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([p(0,j.fN),p(1,o.k)],s),(0,k.v)(q,s,1);let t="inlineCompletions.lastSnoozeDuration";class u extends i.L{static{this.ID="editor.action.inlineSuggest.snooze"}constructor(){super({id:u.ID,title:(0,h.aS)(78,"Snooze Inline Suggestions"),precondition:j.M$.true(),f1:!0})}async run(a,...b){let c,d=a.get(m.GK),e=a.get(q),f=a.get(n.CS);b.length>0&&"number"==typeof b[0]&&(c=b[0]),c||(c=await this.getDurationFromUser(d,f)),c&&e.setSnoozeDuration(c)}async getDurationFromUser(a,b){let c=b.getNumber(t,0,3e5),d=[{label:"1 minute",id:"1",value:6e4},{label:"5 minutes",id:"5",value:3e5},{label:"10 minutes",id:"10",value:6e5},{label:"15 minutes",id:"15",value:9e5},{label:"30 minutes",id:"30",value:18e5},{label:"60 minutes",id:"60",value:36e5}],e=await a.pick(d,{placeHolder:(0,h.kg)(77,"Select snooze duration for Code completions and NES"),activeItem:d.find(a=>a.value===c)});if(e)return b.store(t,e.value,0,0),e.value}}class v extends i.L{static{this.ID="editor.action.inlineSuggest.cancelSnooze"}constructor(){super({id:v.ID,title:(0,h.aS)(79,"Cancel Snooze Inline Suggestions"),precondition:r,f1:!0})}async run(a){a.get(q).cancelSnooze()}}},9381:(a,b,c)=>{"use strict";c.d(b,{RK:()=>k,tQ:()=>l});var d=c(91849),e=c(40201),f=c(99951),g=c(95554),h=c(52212),i=c(20069),j=c(26890);class k extends e.jG{constructor(a,b,c=!1){if(super(),this._syncedModels=Object.create(null),this._syncedModelsLastUsedTime=Object.create(null),this._proxy=a,this._modelService=b,!c){const a=new d.vb;a.cancelAndSet(()=>this._checkStopModelSync(),Math.round(3e4)),this._register(a)}}dispose(){for(let a in this._syncedModels)(0,e.AS)(this._syncedModels[a]);this._syncedModels=Object.create(null),this._syncedModelsLastUsedTime=Object.create(null),super.dispose()}ensureSyncedResources(a,b=!1){for(let c of a){let a=c.toString();this._syncedModels[a]||this._beginModelSync(c,b),this._syncedModels[a]&&(this._syncedModelsLastUsedTime[a]=new Date().getTime())}}_checkStopModelSync(){let a=new Date().getTime(),b=[];for(let c in this._syncedModelsLastUsedTime)a-this._syncedModelsLastUsedTime[c]>6e4&&b.push(c);for(let a of b)this._stopModelSync(a)}_beginModelSync(a,b){let c=this._modelService.getModel(a);if(!c||!b&&c.isTooLargeForSyncing())return;let d=a.toString();this._proxy.$acceptNewModel({url:c.uri.toString(),lines:c.getLinesContent(),EOL:c.getEOL(),versionId:c.getVersionId()});let f=new e.Cm;f.add(c.onDidChangeContent(a=>{this._proxy.$acceptModelChanged(d.toString(),a)})),f.add(c.onWillDispose(()=>{this._stopModelSync(d)})),f.add((0,e.s)(()=>{this._proxy.$acceptRemovedModel(d)})),this._syncedModels[d]=f}_stopModelSync(a){let b=this._syncedModels[a];delete this._syncedModels[a],delete this._syncedModelsLastUsedTime[a],(0,e.AS)(b)}}class l{constructor(){this._models=Object.create(null)}getModel(a){return this._models[a]}getModels(){let a=[];return Object.keys(this._models).forEach(b=>a.push(this._models[b])),a}$acceptNewModel(a){this._models[a.url]=new m(f.r.parse(a.url),a.lines,a.EOL,a.versionId)}$acceptModelChanged(a,b){this._models[a]&&this._models[a].onEvents(b)}$acceptRemovedModel(a){this._models[a]&&delete this._models[a]}}class m extends j.Y{get uri(){return this._uri}get eol(){return this._eol}getValue(){return this.getText()}findMatches(a){let b=[];for(let c=0;c<this._lines.length;c++){let d=this._lines[c],e=this.offsetAt(new g.y(c+1,1));for(let c of d.matchAll(a))(c.index||0===c.index)&&(c.index=c.index+e),b.push(c)}return b}getLinesContent(){return this._lines.slice(0)}getLineCount(){return this._lines.length}getLineContent(a){return this._lines[a-1]}getWordAtPosition(a,b){let c=(0,i.Th)(a.column,(0,i.Io)(b),this._lines[a.lineNumber-1],0);return c?new h.Q(a.lineNumber,c.startColumn,a.lineNumber,c.endColumn):null}words(a){let b=this._lines,c=this._wordenize.bind(this),d=0,e="",f=0,g=[];return{*[Symbol.iterator](){for(;;)if(f<g.length){let a=e.substring(g[f].start,g[f].end);f+=1,yield a}else if(d<b.length)g=c(e=b[d],a),f=0,d+=1;else break}}}getLineWords(a,b){let c=this._lines[a-1],d=this._wordenize(c,b),e=[];for(let a of d)e.push({word:c.substring(a.start,a.end),startColumn:a.start+1,endColumn:a.end+1});return e}_wordenize(a,b){let c,d=[];for(b.lastIndex=0;(c=b.exec(a))&&0!==c[0].length;)d.push({start:c.index,end:c.index+c[0].length});return d}getValueInRange(a){if((a=this._validateRange(a)).startLineNumber===a.endLineNumber)return this._lines[a.startLineNumber-1].substring(a.startColumn-1,a.endColumn-1);let b=this._eol,c=a.startLineNumber-1,d=a.endLineNumber-1,e=[];e.push(this._lines[c].substring(a.startColumn-1));for(let a=c+1;a<d;a++)e.push(this._lines[a]);return e.push(this._lines[d].substring(0,a.endColumn-1)),e.join(b)}offsetAt(a){return a=this._validatePosition(a),this._ensureLineStarts(),this._lineStarts.getPrefixSum(a.lineNumber-2)+(a.column-1)}positionAt(a){a=Math.max(0,a=Math.floor(a)),this._ensureLineStarts();let b=this._lineStarts.getIndexOf(a),c=this._lines[b.index].length;return{lineNumber:1+b.index,column:1+Math.min(b.remainder,c)}}_validateRange(a){let b=this._validatePosition({lineNumber:a.startLineNumber,column:a.startColumn}),c=this._validatePosition({lineNumber:a.endLineNumber,column:a.endColumn});return b.lineNumber!==a.startLineNumber||b.column!==a.startColumn||c.lineNumber!==a.endLineNumber||c.column!==a.endColumn?{startLineNumber:b.lineNumber,startColumn:b.column,endLineNumber:c.lineNumber,endColumn:c.column}:a}_validatePosition(a){if(!g.y.isIPosition(a))throw Error("bad position");let{lineNumber:b,column:c}=a,d=!1;if(b<1)b=1,c=1,d=!0;else if(b>this._lines.length)b=this._lines.length,c=this._lines[b-1].length+1,d=!0;else{let a=this._lines[b-1].length+1;c<1?(c=1,d=!0):c>a&&(c=a,d=!0)}return d?{lineNumber:b,column:c}:a}}},10016:()=>{},10082:(a,b,c)=>{"use strict";c.d(b,{M:()=>f});var d=c(3457);class e{constructor(){this._tabFocus=!1,this._onDidChangeTabFocus=new d.vl,this.onDidChangeTabFocus=this._onDidChangeTabFocus.event}getTabFocusMode(){return this._tabFocus}setTabFocusMode(a){this._tabFocus=a,this._onDidChangeTabFocus.fire(this._tabFocus)}}let f=new e},10313:()=>{},10322:(a,b,c)=>{"use strict";c.d(b,{L:()=>e});var d,e,f=c(32665);(d||(d={})).isThemeColor=function(a){return!!a&&"object"==typeof a&&"string"==typeof a.id},function(a){a.iconNameSegment="[A-Za-z0-9]+",a.iconNameExpression="[A-Za-z0-9-]+",a.iconModifierExpression="~[A-Za-z]+",a.iconNameCharacter="[A-Za-z0-9~-]";let b=RegExp(`^(${a.iconNameExpression})(${a.iconModifierExpression})?$`);function c(a){let d=b.exec(a.id);if(!d)return c(f.W.error);let[,e,g]=d,h=["codicon","codicon-"+e];return g&&h.push("codicon-modifier-"+g.substring(1)),h}a.asClassNameArray=c,a.asClassName=function(a){return c(a).join(" ")},a.asCSSSelector=function(a){return"."+c(a).join(".")},a.isThemeIcon=function(a){return!!a&&"object"==typeof a&&"string"==typeof a.id&&(void 0===a.color||d.isThemeColor(a.color))};let e=RegExp(`^\\$\\((${a.iconNameExpression}(?:${a.iconModifierExpression})?)\\)$`);a.fromString=function(a){let b=e.exec(a);if(!b)return;let[,c]=b;return{id:c}},a.fromId=function(a){return{id:a}},a.modify=function(a,b){let c=a.id,d=c.lastIndexOf("~");return -1!==d&&(c=c.substring(0,d)),b&&(c=`${c}~${b}`),{id:c}},a.getModifier=function(a){let b=a.id.lastIndexOf("~");if(-1!==b)return a.id.substring(b+1)},a.isEqual=function(a,b){return a.id===b.id&&a.color?.id===b.color?.id}}(e||(e={}))},10711:()=>{},10732:()=>{},10815:(a,b,c)=>{"use strict";c.d(b,{$B:()=>j,Dk:()=>l,IN:()=>n,RE:()=>p,XS:()=>q,cv:()=>g,ho:()=>k,ir:()=>f,m$:()=>m,mk:()=>i,oJ:()=>h,t8:()=>o});var d=c(61203),e=c(81034);let f={keybindingLabelBackground:(0,d.GuP)(d.HDX),keybindingLabelForeground:(0,d.GuP)(d.eUu),keybindingLabelBorder:(0,d.GuP)(d.zUX),keybindingLabelBottomBorder:(0,d.GuP)(d.Qfh),keybindingLabelShadow:(0,d.GuP)(d.f9l)},g={buttonForeground:(0,d.GuP)(d.G_h),buttonSeparator:(0,d.GuP)(d.Q1$),buttonBackground:(0,d.GuP)(d.XJc),buttonHoverBackground:(0,d.GuP)(d.T9h),buttonSecondaryForeground:(0,d.GuP)(d.Inn),buttonSecondaryBackground:(0,d.GuP)(d.xOA),buttonSecondaryHoverBackground:(0,d.GuP)(d.nZG),buttonBorder:(0,d.GuP)(d.raQ)},h={progressBarBackground:(0,d.GuP)(d.BTi)},i={inputActiveOptionBorder:(0,d.GuP)(d.uNK),inputActiveOptionForeground:(0,d.GuP)(d.$$0),inputActiveOptionBackground:(0,d.GuP)(d.c1f)};(0,d.GuP)(d.jOE),(0,d.GuP)(d.Ukx),(0,d.GuP)(d.Ips),(0,d.GuP)(d.kPT),(0,d.GuP)(d.xWN),(0,d.GuP)(d.ZBU),(0,d.GuP)(d.jr9);let j={checkboxBackground:(0,d.GuP)(d.OcU),checkboxBorder:(0,d.GuP)(d.C5U),checkboxForeground:(0,d.GuP)(d.t0B),checkboxDisabledBackground:(0,d.GuP)(d.Uv),checkboxDisabledForeground:(0,d.GuP)(d.hsb)};(0,d.GuP)(d.CgL),(0,d.GuP)(d.FiB),(0,d.GuP)(d.f9l),(0,d.GuP)(d.DSL),(0,d.GuP)(d.tYX),(0,d.GuP)(d.JPj),(0,d.GuP)(d.bNw),(0,d.GuP)(d.vwp);let k={inputBackground:(0,d.GuP)(d.L4c),inputForeground:(0,d.GuP)(d.cws),inputBorder:(0,d.GuP)(d.Zgs),inputValidationInfoBorder:(0,d.GuP)(d.YSW),inputValidationInfoBackground:(0,d.GuP)(d.I$A),inputValidationInfoForeground:(0,d.GuP)(d.L9Z),inputValidationWarningBorder:(0,d.GuP)(d.C1n),inputValidationWarningBackground:(0,d.GuP)(d.ULt),inputValidationWarningForeground:(0,d.GuP)(d.T5N),inputValidationErrorBorder:(0,d.GuP)(d.eYZ),inputValidationErrorBackground:(0,d.GuP)(d._$n),inputValidationErrorForeground:(0,d.GuP)(d.h9z)},l={listFilterWidgetBackground:(0,d.GuP)(d.pnl),listFilterWidgetOutline:(0,d.GuP)(d.fiM),listFilterWidgetNoMatchesOutline:(0,d.GuP)(d.P9Z),listFilterWidgetShadow:(0,d.GuP)(d.H8q),inputBoxStyles:k,toggleStyles:i},m={badgeBackground:(0,d.GuP)(d.WMx),badgeForeground:(0,d.GuP)(d.zRE),badgeBorder:(0,d.GuP)(d.b1q)};(0,d.GuP)(d.vV$),(0,d.GuP)(d.mc0),(0,d.GuP)(d.etE),(0,d.GuP)(d.etE),(0,d.GuP)(d.sAS);let n={listBackground:void 0,listInactiveFocusForeground:void 0,listFocusBackground:(0,d.GuP)(d.VFX),listFocusForeground:(0,d.GuP)(d.efJ),listFocusOutline:(0,d.GuP)(d.p7Y),listActiveSelectionBackground:(0,d.GuP)(d.Rjz),listActiveSelectionForeground:(0,d.GuP)(d.GVV),listActiveSelectionIconForeground:(0,d.GuP)(d.fED),listFocusAndSelectionOutline:(0,d.GuP)(d.gtq),listFocusAndSelectionBackground:(0,d.GuP)(d.Rjz),listFocusAndSelectionForeground:(0,d.GuP)(d.GVV),listInactiveSelectionBackground:(0,d.GuP)(d.uNx),listInactiveSelectionIconForeground:(0,d.GuP)(d.C9U),listInactiveSelectionForeground:(0,d.GuP)(d.f4y),listInactiveFocusBackground:(0,d.GuP)(d.CQ3),listInactiveFocusOutline:(0,d.GuP)(d.ijf),listHoverBackground:(0,d.GuP)(d.lO1),listHoverForeground:(0,d.GuP)(d.QRv),listDropOverBackground:(0,d.GuP)(d.Yoe),listDropBetweenBackground:(0,d.GuP)(d.yIp),listSelectionOutline:(0,d.GuP)(d.buw),listHoverOutline:(0,d.GuP)(d.buw),treeIndentGuidesStroke:(0,d.GuP)(d.U4U),treeInactiveIndentGuidesStroke:(0,d.GuP)(d.pft),treeStickyScrollBackground:void 0,treeStickyScrollBorder:void 0,treeStickyScrollShadow:(0,d.GuP)(d.bXl),tableColumnsBorder:(0,d.GuP)(d.k5u),tableOddRowsBackgroundColor:(0,d.GuP)(d.sbQ)};function o(a){let b={...n};for(let c in a){let e=a[c];b[c]=void 0!==e?(0,d.GuP)(e):void 0}return b}let p={selectBackground:(0,d.GuP)(d.rvE),selectListBackground:(0,d.GuP)(d.lWP),selectForeground:(0,d.GuP)(d.yqq),decoratorRightForeground:(0,d.GuP)(d.NBf),selectBorder:(0,d.GuP)(d.HcB),focusBorder:(0,d.GuP)(d.tAP),listFocusBackground:(0,d.GuP)(d.AlL),listInactiveSelectionIconForeground:(0,d.GuP)(d.c7i),listFocusForeground:(0,d.GuP)(d.nH),listFocusOutline:(0,d.HP_)(d.buw,e.Q1.transparent.toString()),listHoverBackground:(0,d.GuP)(d.lO1),listHoverForeground:(0,d.GuP)(d.QRv),listHoverOutline:(0,d.GuP)(d.buw),selectListBorder:(0,d.GuP)(d.sIe),listBackground:void 0,listActiveSelectionBackground:void 0,listActiveSelectionForeground:void 0,listActiveSelectionIconForeground:void 0,listFocusAndSelectionBackground:void 0,listDropOverBackground:void 0,listDropBetweenBackground:void 0,listInactiveSelectionBackground:void 0,listInactiveSelectionForeground:void 0,listInactiveFocusBackground:void 0,listInactiveFocusOutline:void 0,listSelectionOutline:void 0,listFocusAndSelectionForeground:void 0,listFocusAndSelectionOutline:void 0,listInactiveFocusForeground:void 0,tableColumnsBorder:void 0,tableOddRowsBackgroundColor:void 0,treeIndentGuidesStroke:void 0,treeInactiveIndentGuidesStroke:void 0,treeStickyScrollBackground:void 0,treeStickyScrollBorder:void 0,treeStickyScrollShadow:void 0},q={shadowColor:(0,d.GuP)(d.f9l),borderColor:(0,d.GuP)(d.g$2),foregroundColor:(0,d.GuP)(d.dd_),backgroundColor:(0,d.GuP)(d.c6Y),selectionForegroundColor:(0,d.GuP)(d.pmr),selectionBackgroundColor:(0,d.GuP)(d.Ux$),selectionBorderColor:(0,d.GuP)(d.SNb),separatorColor:(0,d.GuP)(d.D7X),scrollbarShadow:(0,d.GuP)(d.bXl),scrollbarSliderBackground:(0,d.GuP)(d.gnV),scrollbarSliderHoverBackground:(0,d.GuP)(d.cI_),scrollbarSliderActiveBackground:(0,d.GuP)(d.mhZ)}},11816:(a,b,c)=>{"use strict";c.d(b,{GM:()=>r,KL:()=>t,Kl:()=>l,Ob:()=>m,Ou:()=>q,XT:()=>o,Zb:()=>s,Zw:()=>n,bk:()=>p,dv:()=>k,wp:()=>u});var d=c(32665),e=c(10322),f=c(32245),g=c(76302),h=c(61203),i=c(88055);(0,h.x1A)("diffEditor.move.border","#8b8b8b9c",(0,g.kg)(134,"The border color for text that got moved in the diff editor.")),(0,h.x1A)("diffEditor.moveActive.border","#FFA500",(0,g.kg)(135,"The active border color for text that got moved in the diff editor.")),(0,h.x1A)("diffEditor.unchangedRegionShadow",{dark:"#000000",light:"#737373BF",hcDark:"#000000",hcLight:"#737373BF"},(0,g.kg)(136,"The color of the shadow around unchanged region widgets."));let j=(0,i.pU)("diff-insert",d.W.add,(0,g.kg)(137,"Line decoration for inserts in the diff editor.")),k=(0,i.pU)("diff-remove",d.W.remove,(0,g.kg)(138,"Line decoration for removals in the diff editor.")),l=f.kI.register({className:"line-insert",description:"line-insert",isWholeLine:!0,linesDecorationsClassName:"insert-sign "+e.L.asClassName(j),marginClassName:"gutter-insert"}),m=f.kI.register({className:"line-delete",description:"line-delete",isWholeLine:!0,linesDecorationsClassName:"delete-sign "+e.L.asClassName(k),marginClassName:"gutter-delete"}),n=f.kI.register({className:"line-insert",description:"line-insert",isWholeLine:!0,marginClassName:"gutter-insert"}),o=f.kI.register({className:"line-delete",description:"line-delete",isWholeLine:!0,marginClassName:"gutter-delete"}),p=f.kI.register({className:"char-insert",description:"char-insert",shouldFillLineOnLineBreak:!0}),q=f.kI.register({className:"char-insert",description:"char-insert",isWholeLine:!0}),r=f.kI.register({className:"char-insert diff-range-empty",description:"char-insert diff-range-empty"}),s=f.kI.register({className:"char-delete",description:"char-delete",shouldFillLineOnLineBreak:!0}),t=f.kI.register({className:"char-delete",description:"char-delete",isWholeLine:!0}),u=f.kI.register({className:"char-delete diff-range-empty",description:"char-delete diff-range-empty"})},12010:(a,b,c)=>{"use strict";c.d(b,{_:()=>e});var d=c(40201);class e extends d.jG{constructor(){super(...arguments),this._isDisposed=!1}dispose(){super.dispose(),this._isDisposed=!0}assertNotDisposed(){if(this._isDisposed)throw Error("TextModelPart is disposed!")}}},12235:(a,b,c)=>{"use strict";c.d(b,{B:()=>e,q:()=>l});var d,e,f=c(63048),g=c(93842),h=c(53135),i=c(3457),j=c(40201),k=c(57832);(d=e||(e={})).Tap="-monaco-gesturetap",d.Change="-monaco-gesturechange",d.Start="-monaco-gesturestart",d.End="-monaco-gesturesend",d.Contextmenu="-monaco-gesturecontextmenu";class l extends j.jG{static{this.SCROLL_FRICTION=-.005}static{this.HOLD_DELAY=700}static{this.CLEAR_TAP_COUNT_TIME=400}constructor(){super(),this.dispatched=!1,this.targets=new k.w,this.ignoreTargets=new k.w,this.activeTouches={},this.handle=null,this._lastSetTapCountTime=0,this._register(i.Jh.runAndSubscribe(f.Iv,({window:a,disposables:b})=>{b.add(f.ko(a.document,"touchstart",a=>this.onTouchStart(a),{passive:!1})),b.add(f.ko(a.document,"touchend",b=>this.onTouchEnd(a,b))),b.add(f.ko(a.document,"touchmove",a=>this.onTouchMove(a),{passive:!1}))},{window:g.G,disposables:this._store}))}static addTarget(a){if(!l.isTouchDevice())return j.jG.None;l.INSTANCE||(l.INSTANCE=(0,j.lC)(new l));let b=l.INSTANCE.targets.push(a);return(0,j.s)(b)}static ignoreTarget(a){if(!l.isTouchDevice())return j.jG.None;l.INSTANCE||(l.INSTANCE=(0,j.lC)(new l));let b=l.INSTANCE.ignoreTargets.push(a);return(0,j.s)(b)}static isTouchDevice(){return"ontouchstart"in g.G||navigator.maxTouchPoints>0}dispose(){this.handle&&(this.handle.dispose(),this.handle=null),super.dispose()}onTouchStart(a){let b=Date.now();this.handle&&(this.handle.dispose(),this.handle=null);for(let c=0,d=a.targetTouches.length;c<d;c++){let d=a.targetTouches.item(c);this.activeTouches[d.identifier]={id:d.identifier,initialTarget:d.target,initialTimeStamp:b,initialPageX:d.pageX,initialPageY:d.pageY,rollingTimestamps:[b],rollingPageX:[d.pageX],rollingPageY:[d.pageY]};let f=this.newGestureEvent(e.Start,d.target);f.pageX=d.pageX,f.pageY=d.pageY,this.dispatchEvent(f)}this.dispatched&&(a.preventDefault(),a.stopPropagation(),this.dispatched=!1)}onTouchEnd(a,b){let c=Date.now(),d=Object.keys(this.activeTouches).length;for(let f=0,g=b.changedTouches.length;f<g;f++){let g=b.changedTouches.item(f);if(!this.activeTouches.hasOwnProperty(String(g.identifier))){console.warn("move of an UNKNOWN touch",g);continue}let h=this.activeTouches[g.identifier],i=Date.now()-h.initialTimeStamp;if(i<l.HOLD_DELAY&&30>Math.abs(h.initialPageX-h.rollingPageX.at(-1))&&30>Math.abs(h.initialPageY-h.rollingPageY.at(-1))){let a=this.newGestureEvent(e.Tap,h.initialTarget);a.pageX=h.rollingPageX.at(-1),a.pageY=h.rollingPageY.at(-1),this.dispatchEvent(a)}else if(i>=l.HOLD_DELAY&&30>Math.abs(h.initialPageX-h.rollingPageX.at(-1))&&30>Math.abs(h.initialPageY-h.rollingPageY.at(-1))){let a=this.newGestureEvent(e.Contextmenu,h.initialTarget);a.pageX=h.rollingPageX.at(-1),a.pageY=h.rollingPageY.at(-1),this.dispatchEvent(a)}else if(1===d){let b=h.rollingPageX.at(-1),d=h.rollingPageY.at(-1),e=h.rollingTimestamps.at(-1)-h.rollingTimestamps[0],f=b-h.rollingPageX[0],g=d-h.rollingPageY[0],i=[...this.targets].filter(a=>h.initialTarget instanceof Node&&a.contains(h.initialTarget));this.inertia(a,i,c,Math.abs(f)/e,f>0?1:-1,b,Math.abs(g)/e,g>0?1:-1,d)}this.dispatchEvent(this.newGestureEvent(e.End,h.initialTarget)),delete this.activeTouches[g.identifier]}this.dispatched&&(b.preventDefault(),b.stopPropagation(),this.dispatched=!1)}newGestureEvent(a,b){let c=document.createEvent("CustomEvent");return c.initEvent(a,!1,!0),c.initialTarget=b,c.tapCount=0,c}dispatchEvent(a){if(a.type===e.Tap){let b=new Date().getTime(),c=0;c=b-this._lastSetTapCountTime>l.CLEAR_TAP_COUNT_TIME?1:2,this._lastSetTapCountTime=b,a.tapCount=c}else(a.type===e.Change||a.type===e.Contextmenu)&&(this._lastSetTapCountTime=0);if(a.initialTarget instanceof Node){for(let b of this.ignoreTargets)if(b.contains(a.initialTarget))return;let b=[];for(let c of this.targets)if(c.contains(a.initialTarget)){let d=0,e=a.initialTarget;for(;e&&e!==c;)d++,e=e.parentElement;b.push([d,c])}for(let[c,d]of(b.sort((a,b)=>a[0]-b[0]),b))d.dispatchEvent(a),this.dispatched=!0}}inertia(a,b,c,d,g,h,i,j,k){this.handle=f.PG(a,()=>{let f=Date.now(),m=f-c,n=0,o=0,p=!0;d+=l.SCROLL_FRICTION*m,i+=l.SCROLL_FRICTION*m,d>0&&(p=!1,n=g*d*m),i>0&&(p=!1,o=j*i*m);let q=this.newGestureEvent(e.Change);q.translationX=n,q.translationY=o,b.forEach(a=>a.dispatchEvent(q)),p||this.inertia(a,b,f,d,g,h+n,i,j,k+o)})}onTouchMove(a){let b=Date.now();for(let c=0,d=a.changedTouches.length;c<d;c++){let d=a.changedTouches.item(c);if(!this.activeTouches.hasOwnProperty(String(d.identifier))){console.warn("end of an UNKNOWN touch",d);continue}let f=this.activeTouches[d.identifier],g=this.newGestureEvent(e.Change,f.initialTarget);g.translationX=d.pageX-f.rollingPageX.at(-1),g.translationY=d.pageY-f.rollingPageY.at(-1),g.pageX=d.pageX,g.pageY=d.pageY,this.dispatchEvent(g),f.rollingPageX.length>3&&(f.rollingPageX.shift(),f.rollingPageY.shift(),f.rollingTimestamps.shift()),f.rollingPageX.push(d.pageX),f.rollingPageY.push(d.pageY),f.rollingTimestamps.push(b)}this.dispatched&&(a.preventDefault(),a.stopPropagation(),this.dispatched=!1)}}!function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);f>3&&g&&Object.defineProperty(b,c,g)}([h.B],l,"isTouchDevice",null)},12546:(a,b,c)=>{"use strict";c.d(b,{$b:()=>e,Cr:()=>t,DA:()=>x,Dk:()=>u,l8:()=>r,rr:()=>o,xd:()=>p});var d,e,f=c(3457),g=c(37417),h=c(40201),i=c(42727),j=c(38392),k=c(98896),l=c(99951),m=c(5738),n=c(21652);let o=(0,n.u1)("logService"),p=(0,n.u1)("loggerService");(d=e||(e={}))[d.Off=0]="Off",d[d.Trace=1]="Trace",d[d.Debug=2]="Debug",d[d.Info=3]="Info",d[d.Warning=4]="Warning",d[d.Error=5]="Error";let q=e.Info;function r(a,b){return a!==e.Off&&a<=b}class s extends h.jG{constructor(){super(...arguments),this.level=q,this._onDidChangeLogLevel=this._register(new f.vl)}get onDidChangeLogLevel(){return this._onDidChangeLogLevel.event}setLevel(a){this.level!==a&&(this.level=a,this._onDidChangeLogLevel.fire(this.level))}getLevel(){return this.level}checkLogLevel(a){return r(this.level,a)}canLog(a){return!this._store.isDisposed&&this.checkLogLevel(a)}}class t extends s{constructor(a=q,b=!0){super(),this.useColors=b,this.setLevel(a)}trace(a,...b){this.canLog(e.Trace)&&(this.useColors?console.log("%cTRACE","color: #888",a,...b):console.log(a,...b))}debug(a,...b){this.canLog(e.Debug)&&(this.useColors?console.log("%cDEBUG","background: #eee; color: #888",a,...b):console.log(a,...b))}info(a,...b){this.canLog(e.Info)&&(this.useColors?console.log("%c INFO","color: #33f",a,...b):console.log(a,...b))}warn(a,...b){this.canLog(e.Warning)&&(this.useColors?console.warn("%c WARN","color: #993",a,...b):console.log(a,...b))}error(a,...b){this.canLog(e.Error)&&(this.useColors?console.error("%c ERR","color: #f33",a,...b):console.error(a,...b))}}class u extends s{constructor(a){super(),this.loggers=a,a.length&&this.setLevel(a[0].getLevel())}setLevel(a){for(let b of this.loggers)b.setLevel(a);super.setLevel(a)}trace(a,...b){for(let c of this.loggers)c.trace(a,...b)}debug(a,...b){for(let c of this.loggers)c.debug(a,...b)}info(a,...b){for(let c of this.loggers)c.info(a,...b)}warn(a,...b){for(let c of this.loggers)c.warn(a,...b)}error(a,...b){for(let c of this.loggers)c.error(a,...b)}dispose(){for(let a of this.loggers)a.dispose();super.dispose()}}class v extends h.jG{constructor(a,b,c){if(super(),this.logLevel=a,this.logsHome=b,this._loggers=new i.fT,this._onDidChangeLoggers=this._register(new f.vl),this._onDidChangeVisibility=this._register(new f.vl),c)for(const a of c)this._loggers.set(a.resource,{logger:void 0,info:a})}getLoggerEntry(a){return(0,k.Kg)(a)?[...this._loggers.values()].find(b=>b.info.id===a):this._loggers.get(a)}createLogger(a,b){let c=this.toResource(a),d=(0,k.Kg)(a)?a:b?.id??(0,g.tW)(c.toString()).toString(16),f=this._loggers.get(c)?.logger,h=b?.logLevel==="always"?e.Trace:b?.logLevel;f||(f=this.doCreateLogger(c,h??this.getLogLevel(c)??this.logLevel,{...b,id:d}));let i={logger:f,info:{resource:c,id:d,logLevel:h,name:b?.name,hidden:b?.hidden,group:b?.group,extensionId:b?.extensionId,when:b?.when}};return this.registerLogger(i.info),this._loggers.set(c,i),f}toResource(a){return(0,k.Kg)(a)?(0,j.uJ)(this.logsHome,`${a}.log`):a}setVisibility(a,b){let c=this.getLoggerEntry(a);c&&!c.info.hidden!==b&&(c.info.hidden=!b,this._loggers.set(c.info.resource,c),this._onDidChangeVisibility.fire([c.info.resource,b]))}getLogLevel(a){let b;return a&&(b=this._loggers.get(a)?.info.logLevel),b??this.logLevel}registerLogger(a){let b=this._loggers.get(a.resource);b?b.info.hidden!==a.hidden&&this.setVisibility(a.resource,!a.hidden):(this._loggers.set(a.resource,{info:a,logger:void 0}),this._onDidChangeLoggers.fire({added:[a],removed:[]}))}dispose(){this._loggers.forEach(a=>a.logger?.dispose()),this._loggers.clear(),super.dispose()}}class w{constructor(){this.onDidChangeLogLevel=new f.vl().event}setLevel(a){}getLevel(){return e.Info}trace(a){}debug(a){}info(a){}warn(a){}error(a){}dispose(){}}class x extends v{constructor(){super(e.Off,l.r.parse("log:///log"))}doCreateLogger(a,b,c){return new w}}new m.N1("logLevel",function(a){switch(a){case e.Trace:return"trace";case e.Debug:return"debug";case e.Info:return"info";case e.Warning:return"warn";case e.Error:return"error";case e.Off:return"off"}}(e.Info))},12592:()=>{},12995:(a,b,c)=>{"use strict";c.d(b,{YW:()=>B,qg:()=>C});var d=c(91849),e=c(3717),f=c(42727),g=c(45006),h=c(19254),i=c(77747);let j="[/\\\\]",k="[^/\\\\]",l=/\//g;function m(a,b){switch(a){case 0:return"";case 1:return`${k}*?`;default:return`(?:${j}|${k}+${j}${b?`|${j}${k}+`:""})*?`}}function n(a,b){if(!a)return[];let c=[],d=!1,e=!1,f="";for(let g of a){switch(g){case b:if(!d&&!e){c.push(f),f="";continue}break;case"{":d=!0;break;case"}":d=!1;break;case"[":e=!0;break;case"]":e=!1}f+=g}return f&&c.push(f),c}let o=/^\*\*\/\*\.[\w\.-]+$/,p=/^\*\*\/([\w\.-]+)\/?$/,q=/^{\*\*\/\*?[\w\.-]+\/?(,\*\*\/\*?[\w\.-]+\/?)*}$/,r=/^{\*\*\/\*?[\w\.-]+(\/(\*\*)?)?(,\*\*\/\*?[\w\.-]+(\/(\*\*)?)?)*}$/,s=/^\*\*((\/[\w\.-]+)+)\/?$/,t=/^([\w\.-]+(\/[\w\.-]+)*)\/?$/,u=new f.qK(1e4),v=function(){return!1},w=function(){return null};function x(a,b){var c,d,e,f;let g,h,l,v,B,C;if(!a)return w;g=(g="string"!=typeof a?a.pattern:a).trim();let E=`${g}_${!!b.trimForExclusions}`,F=u.get(E);return F||(F=o.test(g)?(c=g.substr(4),d=g,function(a,b){return"string"==typeof a&&a.endsWith(c)?d:null}):(h=p.exec(z(g,b)))?(e=h[1],f=g,l=`/${e}`,v=`\\${e}`,(B=function(a,b){return"string"!=typeof a?null:b?b===e?f:null:a===e||a.endsWith(l)||a.endsWith(v)?f:null}).basenames=C=[e],B.patterns=[f],B.allBasenames=C,B):(b.trimForExclusions?r:q).test(g)?function(a,b){let c=D(a.slice(1,-1).split(",").map(a=>x(a,b)).filter(a=>a!==w),a),d=c.length;if(!d)return w;if(1===d)return c[0];let e=function(b,d){for(let e=0,f=c.length;e<f;e++)if(c[e](b,d))return a;return null},f=c.find(a=>!!a.allBasenames);f&&(e.allBasenames=f.allBasenames);let g=c.reduce((a,b)=>b.allPaths?a.concat(b.allPaths):a,[]);return g.length&&(e.allPaths=g),e}(g,b):(h=s.exec(z(g,b)))?A(h[1].substr(1),g,!0):(h=t.exec(z(g,b)))?A(h[1],g,!1):function(a){try{let b=RegExp(`^${function a(b){if(!b)return"";let c="",d=n(b,"/");if(d.every(a=>"**"===a))c=".*";else{let b=!1;d.forEach((e,f)=>{if("**"===e){if(b)return;c+=m(2,f===d.length-1)}else{let b=!1,g="",h=!1,l="";for(let d of e){if("}"!==d&&b){g+=d;continue}if(h&&("]"!==d||!l)){let a;a="-"===d?d:"^"!==d&&"!"!==d||l?"/"===d?"":(0,i.bm)(d):"^",l+=a;continue}switch(d){case"{":b=!0;continue;case"[":h=!0;continue;case"}":{let d=n(g,","),e=`(?:${d.map(b=>a(b)).join("|")})`;c+=e,b=!1,g="";break}case"]":c+="["+l+"]",h=!1,l="";break;case"?":c+=k;continue;case"*":c+=m(1);continue;default:c+=(0,i.bm)(d)}}f<d.length-1&&("**"!==d[f+1]||f+2<d.length)&&(c+=j)}b="**"===e})}return c}(a)}$`);return function(c){return b.lastIndex=0,"string"==typeof c&&b.test(c)?a:null}}catch(a){return w}}(g),u.set(E,F)),y(F,a)}function y(a,b){if("string"==typeof b)return a;let c=function(c,d){return(0,e._1)(c,b.base,!h.j9)?a((0,i.NB)(c.substr(b.base.length),g.Vn),d):null};return c.allBasenames=a.allBasenames,c.allPaths=a.allPaths,c.basenames=a.basenames,c.patterns=a.patterns,c}function z(a,b){return b.trimForExclusions&&a.endsWith("/**")?a.substr(0,a.length-2):a}function A(a,b,c){let d,e=g.Vn===g.SA.sep,f=e?a:a.replace(l,g.Vn),h=g.Vn+f,i=g.SA.sep+a;return(d=c?function(c,d){return"string"==typeof c&&(c===f||c.endsWith(h)||!e&&(c===a||c.endsWith(i)))?b:null}:function(c,d){return"string"!=typeof c||c!==f&&(e||c!==a)?null:b}).allPaths=[(c?"*/":"./")+a],d}function B(a,b,c){return!!a&&"string"==typeof b&&C(a)(b,void 0,c)}function C(a,b={}){var c;if(!a)return v;if("string"==typeof a||(c=a)&&"string"==typeof c.base&&"string"==typeof c.pattern){let c=x(a,b);if(c===w)return v;let d=function(a,b){return!!c(a,b)};return c.allBasenames&&(d.allBasenames=c.allBasenames),c.allPaths&&(d.allPaths=c.allPaths),d}return function(a,b){let c=D(Object.getOwnPropertyNames(a).map(c=>(function(a,b,c){if(!1===b)return w;let e=x(a,c);if(e===w)return w;if("boolean"==typeof b)return e;if(b){let c=b.when;if("string"==typeof c){let b=(b,f,g,h)=>{if(!h||!e(b,f))return null;let i=h(c.replace("$(basename)",()=>g));return(0,d.Qg)(i)?i.then(b=>b?a:null):i?a:null};return b.requiresSiblings=!0,b}}return e})(c,a[c],b)).filter(a=>a!==w)),e=c.length;if(!e)return w;if(!c.some(a=>!!a.requiresSiblings)){if(1===e)return c[0];let a=function(a,b){let e;for(let f=0,g=c.length;f<g;f++){let g=c[f](a,b);if("string"==typeof g)return g;(0,d.Qg)(g)&&(e||(e=[]),e.push(g))}return e?(async()=>{for(let a of e){let b=await a;if("string"==typeof b)return b}return null})():null},b=c.find(a=>!!a.allBasenames);b&&(a.allBasenames=b.allBasenames);let f=c.reduce((a,b)=>b.allPaths?a.concat(b.allPaths):a,[]);return f.length&&(a.allPaths=f),a}let f=function(a,b,e){let f,h;for(let i=0,j=c.length;i<j;i++){let j=c[i];j.requiresSiblings&&e&&(b||(b=(0,g.P8)(a)),f||(f=b.substr(0,b.length-(0,g.LC)(a).length)));let k=j(a,b,f,e);if("string"==typeof k)return k;(0,d.Qg)(k)&&(h||(h=[]),h.push(k))}return h?(async()=>{for(let a of h){let b=await a;if("string"==typeof b)return b}return null})():null},h=c.find(a=>!!a.allBasenames);h&&(f.allBasenames=h.allBasenames);let i=c.reduce((a,b)=>b.allPaths?a.concat(b.allPaths):a,[]);return i.length&&(f.allPaths=i),f}(a,b)}function D(a,b){let c,d=a.filter(a=>!!a.basenames);if(d.length<2)return a;let e=d.reduce((a,b)=>{let c=b.basenames;return c?a.concat(c):a},[]);if(b){c=[];for(let a=0,d=e.length;a<d;a++)c.push(b)}else c=d.reduce((a,b)=>{let c=b.patterns;return c?a.concat(c):a},[]);let f=function(a,b){if("string"!=typeof a)return null;if(!b){let c;for(c=a.length;c>0;c--){let b=a.charCodeAt(c-1);if(47===b||92===b)break}b=a.substr(c)}let d=e.indexOf(b);return -1!==d?c[d]:null};f.basenames=e,f.patterns=c,f.allBasenames=e;let g=a.filter(a=>!a.basenames);return g.push(f),g}},13558:(a,b,c)=>{"use strict";c.d(b,{$:()=>r});var d=c(63048),e=c(94615),f=c(98900),g=c(12235),h=c(29501),i=c(39331),j=c(81034),k=c(3457),l=c(5379),m=c(40201),n=c(10322);c(36730);var o=c(87445),p=c(18377);j.Q1.white.toString(),j.Q1.white.toString();let q=Object.freeze({allowedTags:{override:["b","i","u","code","span"]},allowedAttributes:{override:["class"]}});class r extends m.jG{get onDidClick(){return this._onDidClick.event}constructor(a,b){super(),this._label="",this._onDidClick=this._register(new k.vl),this._onDidEscape=this._register(new k.vl),this.options=b,this._element=document.createElement("a"),this._element.classList.add("monaco-button"),this._element.tabIndex=0,this._element.setAttribute("role","button"),this._element.classList.toggle("secondary",!!b.secondary);const c=b.secondary?b.buttonSecondaryBackground:b.buttonBackground,f=b.secondary?b.buttonSecondaryForeground:b.buttonForeground;this._element.style.color=f||"",this._element.style.backgroundColor=c||"",b.supportShortLabel&&(this._labelShortElement=document.createElement("div"),this._labelShortElement.classList.add("monaco-button-label-short"),this._element.appendChild(this._labelShortElement),this._labelElement=document.createElement("div"),this._labelElement.classList.add("monaco-button-label"),this._element.appendChild(this._labelElement),this._element.classList.add("monaco-text-button-with-short-label")),"string"==typeof b.title&&this.setTitle(b.title),"string"==typeof b.ariaLabel&&this._element.setAttribute("aria-label",b.ariaLabel),a.appendChild(this._element),this.enabled=!b.disabled,this._register(g.q.addTarget(this._element)),[d.Bx.CLICK,g.B.Tap].forEach(a=>{this._register((0,d.ko)(this._element,a,a=>{this.enabled?this._onDidClick.fire(a):d.fs.stop(a)}))}),this._register((0,d.ko)(this._element,d.Bx.KEY_DOWN,a=>{let b=new e.Z(a),c=!1;this.enabled&&(b.equals(3)||b.equals(10))?(this._onDidClick.fire(a),c=!0):b.equals(9)&&(this._onDidEscape.fire(a),this._element.blur(),c=!0),c&&d.fs.stop(b,!0)})),this._register((0,d.ko)(this._element,d.Bx.MOUSE_OVER,a=>{this._element.classList.contains("disabled")||this.updateBackground(!0)})),this._register((0,d.ko)(this._element,d.Bx.MOUSE_OUT,a=>{this.updateBackground(!1)})),this.focusTracker=this._register((0,d.w5)(this._element)),this._register(this.focusTracker.onDidFocus(()=>{this.enabled&&this.updateBackground(!0)})),this._register(this.focusTracker.onDidBlur(()=>{this.enabled&&this.updateBackground(!1)}))}dispose(){super.dispose(),this._element.remove()}getContentElements(a){let b=[];for(let c of(0,i.n)(a))if("string"==typeof c){if(""===(c=c.trim()))continue;let a=document.createElement("span");a.textContent=c,b.push(a)}else b.push(c);return b}updateBackground(a){let b;(b=this.options.secondary?a?this.options.buttonSecondaryHoverBackground:this.options.buttonSecondaryBackground:a?this.options.buttonHoverBackground:this.options.buttonBackground)&&(this._element.style.backgroundColor=b)}get element(){return this._element}set label(a){if(this._label===a||(0,l.VS)(this._label)&&(0,l.VS)(a)&&(0,l.nK)(this._label,a))return;this._element.classList.add("monaco-text-button");let b=this.options.supportShortLabel?this._labelElement:this._element;if((0,l.VS)(a)){let c=(0,f.Gc)(a,void 0,document.createElement("span"));c.dispose();let e=c.element.querySelector("p")?.innerHTML;e?(0,p.D$)(b,e,q):(0,d.Ln)(b)}else this.options.supportIcons?(0,d.Ln)(b,...this.getContentElements(a)):b.textContent=a;let c="";"string"==typeof this.options.title?c=this.options.title:this.options.title&&(c=(0,f.Mh)(a)),this.setTitle(c),this._setAriaLabel(),this._label=a}get label(){return this._label}_setAriaLabel(){"string"==typeof this.options.ariaLabel?this._element.setAttribute("aria-label",this.options.ariaLabel):"string"==typeof this.options.title&&this._element.setAttribute("aria-label",this.options.title)}set icon(a){this._setAriaLabel();let b=Array.from(this._element.classList).filter(a=>a.startsWith("codicon-"));this._element.classList.remove(...b),this._element.classList.add(...n.L.asClassNameArray(a))}set enabled(a){a?(this._element.classList.remove("disabled"),this._element.setAttribute("aria-disabled",String(!1)),this._element.tabIndex=0):(this._element.classList.add("disabled"),this._element.setAttribute("aria-disabled",String(!0)))}get enabled(){return!this._element.classList.contains("disabled")}setTitle(a){this._hover||""===a?this._hover&&this._hover.update(a):this._hover=this._register((0,o.i)().setupManagedHover(this.options.hoverDelegate??(0,h.nZ)("element"),this._element,a))}}},13845:()=>{},14037:()=>{},14061:(a,b,c)=>{"use strict";c.d(b,{Fd:()=>l,Gy:()=>i,Pz:()=>k,Yf:()=>j,lR:()=>p,zy:()=>o});var d=c(3457),e=c(40201),f=c(21652),g=c(53764),h=c(30908);let i=(0,f.u1)("themeService");function j(a){return{id:a}}function k(a){switch(a){case h.zM.DARK:return h.X2.VS_DARK;case h.zM.HIGH_CONTRAST_DARK:return h.X2.HC_BLACK;case h.zM.HIGH_CONTRAST_LIGHT:return h.X2.HC_LIGHT;default:return h.X2.VS}}let l={ThemingContribution:"base.contributions.theming"};class m extends e.jG{constructor(){super(),this.themingParticipants=[],this.themingParticipants=[],this.onThemingParticipantAddedEmitter=this._register(new d.vl)}onColorThemeChange(a){return this.themingParticipants.push(a),this.onThemingParticipantAddedEmitter.fire(a),(0,e.s)(()=>{let b=this.themingParticipants.indexOf(a);this.themingParticipants.splice(b,1)})}getThemingParticipants(){return this.themingParticipants}}let n=new m;function o(a){return n.onColorThemeChange(a)}g.O.add(l.ThemingContribution,n);class p extends e.jG{constructor(a){super(),this.themeService=a,this.theme=a.getColorTheme(),this._register(this.themeService.onDidColorThemeChange(a=>this.onThemeChange(a)))}onThemeChange(a){this.theme=a,this.updateStyles()}updateStyles(){}}},14699:()=>{},15143:()=>{},15522:(a,b,c)=>{"use strict";c.d(b,{HS:()=>g,qR:()=>h,xW:()=>f});var d=c(88586),e=c(40201);let f=new Float32Array([1,0,1,1,0,1,0,0,0,1,1,0]);function g(a){if(!a)throw Error(`Value "${a}" cannot be null`);return a}function h(a,b,c){let f=new b.ResizeObserver(b=>{let d=b.find(b=>b.target===a);if(!d)return;if(!("devicePixelContentBoxSize"in d)){f?.disconnect(),f=void 0;return}let e=d.devicePixelContentBoxSize[0].inlineSize,g=d.devicePixelContentBoxSize[0].blockSize;e>0&&g>0&&c(e,g)});try{f.observe(a,{box:["device-pixel-content-box"]})}catch{throw f.disconnect(),f=void 0,new d.D7("Could not observe device pixel dimensions")}return(0,e.s)(()=>f?.disconnect())}},15676:()=>{},15991:(a,b,c)=>{"use strict";c.d(b,{GP:()=>h,LM:()=>f,Uv:()=>j,nt:()=>g,qL:()=>i});var d=c(42891),e=c(77747);class f{constructor(a,b,c,d){this._viewportBrand=void 0,this.top=0|a,this.left=0|b,this.width=0|c,this.height=0|d}}class g{constructor(a,b){this.tabSize=a,this.data=b}}class h{constructor(a,b,c,d,e,f,g){this._viewLineDataBrand=void 0,this.content=a,this.continuesWithWrappedLine=b,this.minColumn=c,this.maxColumn=d,this.startVisibleColumn=e,this.tokens=f,this.inlineDecorations=g}}class i{constructor(a,b,c,d,e,f,g,h,j,k,l,m){this.minColumn=a,this.maxColumn=b,this.content=c,this.continuesWithWrappedLine=d,this.isBasicASCII=i.isBasicASCII(c,f),this.containsRTL=i.containsRTL(c,this.isBasicASCII,e),this.tokens=g,this.inlineDecorations=h,this.tabSize=j,this.startVisibleColumn=k,this.textDirection=l,this.hasVariableFonts=m}static isBasicASCII(a,b){return!b||e.aC(a)}static containsRTL(a,b,c){return!b&&!!c&&e.E_(a)}}class j{constructor(a,b,c){this.color=a,this.zIndex=b,this.data=c}static compareByRenderingProps(a,b){return a.zIndex===b.zIndex?a.color<b.color?-1:+(a.color>b.color):a.zIndex-b.zIndex}static equals(a,b){return a.color===b.color&&a.zIndex===b.zIndex&&d.aI(a.data,b.data)}static equalsArr(a,b){return d.aI(a,b,j.equals)}}},16236:(a,b,c)=>{"use strict";c.d(b,{GN:()=>e,a6:()=>f,vo:()=>d,wc:()=>g});class d{constructor(a,b){this._viewModelDecorationBrand=void 0,this.range=a,this.options=b}}function e(a,b){return!(b.options.hideInCommentTokens&&f(a,b)||b.options.hideInStringTokens&&g(a,b))}function f(a,b){return h(a,b.range,a=>1===a)}function g(a,b){return h(a,b.range,a=>2===a)}function h(a,b,c){for(let d=b.startLineNumber;d<=b.endLineNumber;d++){let e=a.tokenization.getLineTokens(d),f=d===b.startLineNumber,g=d===b.endLineNumber,h=f?e.findTokenIndexAtOffset(b.startColumn-1):0;for(;h<e.getCount()&&!(g&&e.getStartOffset(h)>b.endColumn-1);){if(!c(e.getStandardTokenType(h)))return!1;h++}}return!0}},16474:(a,b,c)=>{"use strict";c.d(b,{G$:()=>i,Of:()=>f,r0:()=>g,rr:()=>h});var d=c(76302);class e{constructor(a,b,c=b){this.modifierLabels=[null],this.modifierLabels[2]=a,this.modifierLabels[1]=b,this.modifierLabels[3]=c}toLabel(a,b,c){if(0===b.length)return null;let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=c(f);if(null===g)return null;d[e]=function(a,b,c){if(null===b)return"";let d=[];return a.ctrlKey&&d.push(c.ctrlKey),a.shiftKey&&d.push(c.shiftKey),a.altKey&&d.push(c.altKey),a.metaKey&&d.push(c.metaKey),""!==b&&d.push(b),d.join(c.separator)}(f,g,this.modifierLabels[a])}return d.join(" ")}}let f=new e({ctrlKey:"⌃",shiftKey:"⇧",altKey:"⌥",metaKey:"⌘",separator:""},{ctrlKey:d.kg(35,"Ctrl"),shiftKey:d.kg(36,"Shift"),altKey:d.kg(37,"Alt"),metaKey:d.kg(38,"Windows"),separator:"+"},{ctrlKey:d.kg(39,"Ctrl"),shiftKey:d.kg(40,"Shift"),altKey:d.kg(41,"Alt"),metaKey:d.kg(42,"Super"),separator:"+"}),g=new e({ctrlKey:d.kg(43,"Control"),shiftKey:d.kg(44,"Shift"),altKey:d.kg(45,"Option"),metaKey:d.kg(46,"Command"),separator:"+"},{ctrlKey:d.kg(47,"Control"),shiftKey:d.kg(48,"Shift"),altKey:d.kg(49,"Alt"),metaKey:d.kg(50,"Windows"),separator:"+"},{ctrlKey:d.kg(51,"Control"),shiftKey:d.kg(52,"Shift"),altKey:d.kg(53,"Alt"),metaKey:d.kg(54,"Super"),separator:"+"}),h=new e({ctrlKey:"Ctrl",shiftKey:"Shift",altKey:"Alt",metaKey:"Cmd",separator:"+"},{ctrlKey:"Ctrl",shiftKey:"Shift",altKey:"Alt",metaKey:"Super",separator:"+"}),i=new e({ctrlKey:"ctrl",shiftKey:"shift",altKey:"alt",metaKey:"cmd",separator:"+"},{ctrlKey:"ctrl",shiftKey:"shift",altKey:"alt",metaKey:"win",separator:"+"},{ctrlKey:"ctrl",shiftKey:"shift",altKey:"alt",metaKey:"meta",separator:"+"})},17477:(a,b,c)=>{"use strict";c.d(b,{F:()=>g});var d=c(3457),e=c(40201),f=c(53764);let g={JSONContribution:"base.contributions.json"};class h extends e.jG{constructor(){super(...arguments),this.schemasById={},this._onDidChangeSchema=this._register(new d.vl)}registerSchema(a,b,c){let d=a.length>0&&"#"===a.charAt(a.length-1)?a.substring(0,a.length-1):a;this.schemasById[d]=b,this._onDidChangeSchema.fire(a),c&&c.add((0,e.s)(()=>{delete this.schemasById[d],this._onDidChangeSchema.fire(a)}))}notifySchemaChanged(a){this._onDidChangeSchema.fire(a)}}let i=new h;f.O.add(g.JSONContribution,i)},17821:(a,b,c)=>{"use strict";c.d(b,{D:()=>d});class d{static capture(a){if(0===a.getScrollTop()||a.hasPendingScrollAnimation())return new d(a.getScrollTop(),a.getContentHeight(),null,0,null);let b=null,c=0,e=a.getVisibleRanges();if(e.length>0){b=e[0].getStartPosition();let d=a.getTopForPosition(b.lineNumber,b.column);c=a.getScrollTop()-d}return new d(a.getScrollTop(),a.getContentHeight(),b,c,a.getPosition())}constructor(a,b,c,d,e){this._initialScrollTop=a,this._initialContentHeight=b,this._visiblePosition=c,this._visiblePositionScrollDelta=d,this._cursorPosition=e}restore(a){if((this._initialContentHeight!==a.getContentHeight()||this._initialScrollTop!==a.getScrollTop())&&this._visiblePosition){let b=a.getTopForPosition(this._visiblePosition.lineNumber,this._visiblePosition.column);a.setScrollTop(b+this._visiblePositionScrollDelta)}}restoreRelativeVerticalPositionOfCursor(a){if(this._initialContentHeight===a.getContentHeight()&&this._initialScrollTop===a.getScrollTop())return;let b=a.getPosition();if(!this._cursorPosition||!b)return;let c=a.getTopForLineNumber(b.lineNumber)-a.getTopForLineNumber(this._cursorPosition.lineNumber);a.setScrollTop(a.getScrollTop()+c,1)}}},17887:(a,b,c)=>{"use strict";c.d(b,{mJ:()=>w,x8:()=>u});var d=c(63048),e=c(7806),f=c(1644);class g{constructor(a){this.source=a,this.index=0}eos(){return this.index>=this.source.length}next(){let a=this.peek();return this.advance(),a}peek(){return this.source[this.index]}advance(){this.index++}}function h(a,b){switch(a){case"*":return 3;case"_":return 4;case"[":return 5;case"]":return 6;case"`":return 7*!!b;default:return 0}}var i=c(70200),j=c(3824),k=c(87445),l=c(72766),m=c(8211),n=c(3457);class o{constructor(a,b=0,c=a.length,d=b-1){this.items=a,this.start=b,this.end=c,this.index=d}current(){return this.index===this.start-1||this.index===this.end?null:this.items[this.index]}next(){return this.index=Math.min(this.index+1,this.end),this.current()}previous(){return this.index=Math.max(this.index-1,this.start-1),this.current()}first(){return this.index=this.start,this.current()}last(){return this.index=this.end-1,this.current()}}class p{constructor(a=new Set,b=10){this._history=a,this._limit=b,this._onChange(),this._history.onDidChange&&(this._disposable=this._history.onDidChange(()=>this._onChange()))}getHistory(){return this._elements}add(a){this._history.delete(a),this._history.add(a),this._onChange()}next(){return this._navigator.next()}previous(){return 0!==this._currentPosition()?this._navigator.previous():null}current(){return this._navigator.current()}first(){return this._navigator.first()}last(){return this._navigator.last()}isLast(){return this._currentPosition()>=this._elements.length-1}isNowhere(){return null===this._navigator.current()}has(a){return this._history.has(a)}_onChange(){this._reduceToLimit();let a=this._elements;this._navigator=new o(a,0,a.length,a.length)}_reduceToLimit(){let a=this._elements;if(a.length>this._limit){let b=a.slice(a.length-this._limit);this._history.replace?this._history.replace(b):this._history=new Set(b)}}_currentPosition(){let a=this._navigator.current();return a?this._elements.indexOf(a):-1}get _elements(){let a=[];return this._history.forEach(b=>a.push(b)),a}dispose(){this._disposable&&(this._disposable.dispose(),this._disposable=void 0)}}var q=c(50689);c(95356);var r=c(76302),s=c(40201);let t=d.$,u={inputBackground:"#3C3C3C",inputForeground:"#CCCCCC",inputValidationInfoBorder:"#55AAFF",inputValidationInfoBackground:"#063B49",inputValidationWarningBorder:"#B89500",inputValidationWarningBackground:"#352A05",inputValidationErrorBorder:"#BE1100",inputValidationErrorBackground:"#5A1D1D",inputBorder:void 0,inputValidationErrorForeground:void 0,inputValidationInfoForeground:void 0,inputValidationWarningForeground:void 0};class v extends m.x{get onDidChange(){return this._onDidChange.event}get onDidHeightChange(){return this._onDidHeightChange.event}constructor(a,b,c){super(),this.state="idle",this.maxHeight=1/0,this.hover=this._register(new s.HE),this._onDidChange=this._register(new n.vl),this._onDidHeightChange=this._register(new n.vl),this.contextViewProvider=b,this.options=c,this.message=null,this.placeholder=this.options.placeholder||"",this.tooltip=this.options.tooltip??(this.placeholder||""),this.ariaLabel=this.options.ariaLabel||"",this.options.validationOptions&&(this.validation=this.options.validationOptions.validation),this.element=d.BC(a,t(".monaco-inputbox.idle"));const e=this.options.flexibleHeight?"textarea":"input",g=d.BC(this.element,t(".ibwrapper"));if(this.input=d.BC(g,t(e+".input.empty")),this.input.setAttribute("autocorrect","off"),this.input.setAttribute("autocapitalize","off"),this.input.setAttribute("spellcheck","false"),this.onfocus(this.input,()=>this.element.classList.add("synthetic-focus")),this.onblur(this.input,()=>this.element.classList.remove("synthetic-focus")),this.options.flexibleHeight){this.maxHeight="number"==typeof this.options.flexibleMaxHeight?this.options.flexibleMaxHeight:1/0,this.mirror=d.BC(g,t("div.mirror")),this.mirror.innerText="\xa0",this.scrollableElement=new l.Se(this.element,{vertical:1}),this.options.flexibleWidth&&(this.input.setAttribute("wrap","off"),this.mirror.style.whiteSpace="pre",this.mirror.style.wordWrap="initial"),d.BC(a,this.scrollableElement.getDomNode()),this._register(this.scrollableElement),this._register(this.scrollableElement.onScroll(a=>this.input.scrollTop=a.scrollTop));const b=this._register(new f.f(a.ownerDocument,"selectionchange")),c=n.Jh.filter(b.event,()=>{let b=a.ownerDocument.getSelection();return b?.anchorNode===g});this._register(c(this.updateScrollDimensions,this)),this._register(this.onDidHeightChange(this.updateScrollDimensions,this))}else this.input.type=this.options.type||"text",this.input.setAttribute("wrap","off");this.ariaLabel&&this.input.setAttribute("aria-label",this.ariaLabel),this.placeholder&&!this.options.showPlaceholderOnFocus&&this.setPlaceHolder(this.placeholder),this.tooltip&&this.setTooltip(this.tooltip),this.oninput(this.input,()=>this.onValueChange()),this.onblur(this.input,()=>this.onBlur()),this.onfocus(this.input,()=>this.onFocus()),this._register(this.ignoreGesture(this.input)),setTimeout(()=>this.updateMirror(),0),this.options.actions&&(this.actionbar=this._register(new i.E(this.element)),this.actionbar.push(this.options.actions,{icon:!0,label:!1})),this.applyStyles()}onBlur(){this._hideMessage(),this.options.showPlaceholderOnFocus&&this.input.setAttribute("placeholder","")}onFocus(){this._showMessage(),this.options.showPlaceholderOnFocus&&this.input.setAttribute("placeholder",this.placeholder||"")}setPlaceHolder(a){this.placeholder=a,this.input.setAttribute("placeholder",a)}setTooltip(a){this.tooltip=a,this.hover.value||(this.hover.value=this._register((0,k.i)().setupDelayedHoverAtMouse(this.input,()=>({content:this.tooltip,appearance:{compact:!0}}))))}get inputElement(){return this.input}get value(){return this.input.value}set value(a){this.input.value!==a&&(this.input.value=a,this.onValueChange())}get height(){return"number"==typeof this.cachedHeight?this.cachedHeight:d.OK(this.element)}focus(){this.input.focus()}blur(){this.input.blur()}hasFocus(){return d.X7(this.input)}select(a=null){this.input.select(),a&&(this.input.setSelectionRange(a.start,a.end),a.end===this.input.value.length&&(this.input.scrollLeft=this.input.scrollWidth))}isSelectionAtEnd(){return this.input.selectionEnd===this.input.value.length&&this.input.selectionStart===this.input.selectionEnd}getSelection(){let a=this.input.selectionStart;if(null===a)return null;let b=this.input.selectionEnd??a;return{start:a,end:b}}enable(){this.input.removeAttribute("disabled")}disable(){this.blur(),this.input.disabled=!0,this._hideMessage()}set paddingRight(a){this.input.style.width=`calc(100% - ${a}px)`,this.mirror&&(this.mirror.style.paddingRight=a+"px")}updateScrollDimensions(){if("number"!=typeof this.cachedContentHeight||"number"!=typeof this.cachedHeight||!this.scrollableElement)return;let a=this.cachedContentHeight,b=this.cachedHeight,c=this.input.scrollTop;this.scrollableElement.setScrollDimensions({scrollHeight:a,height:b}),this.scrollableElement.setScrollPosition({scrollTop:c})}showMessage(a,b){if("open"===this.state&&(0,q.aI)(this.message,a))return;this.message=a,this.element.classList.remove("idle"),this.element.classList.remove("info"),this.element.classList.remove("warning"),this.element.classList.remove("error"),this.element.classList.add(this.classForType(a.type));let c=this.stylesForType(this.message.type);this.element.style.border=`1px solid ${e.gI(c.border,"transparent")}`,this.message.content&&(this.hasFocus()||b)&&this._showMessage()}hideMessage(){this.message=null,this.element.classList.remove("info"),this.element.classList.remove("warning"),this.element.classList.remove("error"),this.element.classList.add("idle"),this._hideMessage(),this.applyStyles()}validate(){let a=null;return this.validation&&((a=this.validation(this.value))?(this.inputElement.setAttribute("aria-invalid","true"),this.showMessage(a)):this.inputElement.hasAttribute("aria-invalid")&&(this.inputElement.removeAttribute("aria-invalid"),this.hideMessage())),a?.type}stylesForType(a){let b=this.options.inputBoxStyles;switch(a){case 1:return{border:b.inputValidationInfoBorder,background:b.inputValidationInfoBackground,foreground:b.inputValidationInfoForeground};case 2:return{border:b.inputValidationWarningBorder,background:b.inputValidationWarningBackground,foreground:b.inputValidationWarningForeground};default:return{border:b.inputValidationErrorBorder,background:b.inputValidationErrorBackground,foreground:b.inputValidationErrorForeground}}}classForType(a){switch(a){case 1:return"info";case 2:return"warning";default:return"error"}}_showMessage(){let a,b;if(!this.contextViewProvider||!this.message)return;let c=()=>a.style.width=d.Tr(this.element)+"px";this.contextViewProvider.showContextView({getAnchor:()=>this.element,anchorAlignment:1,render:b=>{var e,f,i;if(!this.message)return null;a=d.BC(b,t(".monaco-inputbox-container")),c();let j=t("span.monaco-inputbox-message");if(this.message.formatContent){let a;e=this.message.content,f=void 0,(a=j??document.createElement("div")).textContent="",function a(b,c,e,f){let g;if(2===c.type)g=document.createTextNode(c.content||"");else if(3===c.type)g=document.createElement("b");else if(4===c.type)g=document.createElement("i");else if(7===c.type&&f)g=document.createElement("code");else if(5===c.type&&e){let a=document.createElement("a");e.disposables.add(d.un(a,"click",a=>{e.callback(String(c.index),a)})),g=a}else 8===c.type?g=document.createElement("br"):1===c.type&&(g=b);g&&b!==g&&b.appendChild(g),g&&Array.isArray(c.children)&&c.children.forEach(b=>{a(g,b,e,f)})}(a,function(a,b){let c={type:1,children:[]},d=0,e=c,f=[],i=new g(a);for(;!i.eos();){let a=i.next(),c="\\"===a&&0!==h(i.peek(),b);if(c&&(a=i.next()),c||0===h(a,b)||a!==i.peek())if("\n"===a)2===e.type&&(e=f.pop()),e.children.push({type:8});else if(2!==e.type){let b={type:2,content:a};e.children.push(b),f.push(e),e=b}else e.content+=a;else{i.advance(),2===e.type&&(e=f.pop());let c=h(a,b);if(e.type===c||5===e.type&&6===c)e=f.pop();else{let a={type:c,children:[]};5===c&&(a.index=d,d++),e.children.push(a),f.push(e),e=a}}}return 2===e.type&&(e=f.pop()),f.length,c}(e,!!f?.renderCodeSegments),f?.actionHandler,f?.renderCodeSegments)}else i=this.message.content,(j??document.createElement("div")).textContent=i;j.classList.add(this.classForType(this.message.type));let k=this.stylesForType(this.message.type);return j.style.backgroundColor=k.background??"",j.style.color=k.foreground??"",j.style.border=k.border?`1px solid ${k.border}`:"",d.BC(a,j),null},onHide:()=>{this.state="closed"},layout:c}),b=3===this.message.type?r.kg(9,"Error: {0}",this.message.content):2===this.message.type?r.kg(10,"Warning: {0}",this.message.content):r.kg(11,"Info: {0}",this.message.content),j.xE(b),this.state="open"}_hideMessage(){this.contextViewProvider&&("open"===this.state&&this.contextViewProvider.hideContextView(),this.state="idle")}onValueChange(){this._onDidChange.fire(this.value),this.validate(),this.updateMirror(),this.input.classList.toggle("empty",!this.value),"open"===this.state&&this.contextViewProvider&&this.contextViewProvider.layout()}updateMirror(){if(!this.mirror)return;let a=this.value,b=10===a.charCodeAt(a.length-1)?" ":"";(a+b).replace(/\u000c/g,"")?this.mirror.textContent=a+b:this.mirror.innerText="\xa0",this.layout()}applyStyles(){let a=this.options.inputBoxStyles,b=a.inputBackground??"",c=a.inputForeground??"",d=a.inputBorder??"";this.element.style.backgroundColor=b,this.element.style.color=c,this.input.style.backgroundColor="inherit",this.input.style.color=c,this.element.style.border=`1px solid ${e.gI(d,"transparent")}`}layout(){if(!this.mirror)return;let a=this.cachedContentHeight;this.cachedContentHeight=d.OK(this.mirror),a!==this.cachedContentHeight&&(this.cachedHeight=Math.min(this.cachedContentHeight,this.maxHeight),this.input.style.height=this.cachedHeight+"px",this._onDidHeightChange.fire(this.cachedContentHeight))}insertAtCursor(a){let b=this.inputElement,c=b.selectionStart,d=b.selectionEnd,e=b.value;null!==c&&null!==d&&(this.value=e.substr(0,c)+a+e.substr(d),b.setSelectionRange(c+1,c+1),this.layout())}dispose(){this._hideMessage(),this.message=null,this.actionbar?.dispose(),super.dispose()}}class w extends v{constructor(a,b,c){const e=r.kg(12," or {0} for history",`\u21C5`),f=r.kg(13," ({0} for history)",`\u21C5`);super(a,b,c),this._onDidFocus=this._register(new n.vl),this.onDidFocus=this._onDidFocus.event,this._onDidBlur=this._register(new n.vl),this.onDidBlur=this._onDidBlur.event,this.history=this._register(new p(c.history,100));const g=()=>{if(c.showHistoryHint&&c.showHistoryHint()&&!this.placeholder.endsWith(e)&&!this.placeholder.endsWith(f)&&this.history.getHistory().length){let a=this.placeholder.endsWith(")")?e:f,b=this.placeholder+a;c.showPlaceholderOnFocus&&!d.X7(this.input)?this.placeholder=b:this.setPlaceHolder(b)}};this.observer=new MutationObserver((a,b)=>{a.forEach(a=>{a.target.textContent||g()})}),this.observer.observe(this.input,{attributeFilter:["class"]}),this.onfocus(this.input,()=>g()),this.onblur(this.input,()=>{let a=a=>{if(!this.placeholder.endsWith(a))return!1;{let b=this.placeholder.slice(0,this.placeholder.length-a.length);return c.showPlaceholderOnFocus?this.placeholder=b:this.setPlaceHolder(b),!0}};a(f)||a(e)})}dispose(){super.dispose(),this.observer&&(this.observer.disconnect(),this.observer=void 0)}addToHistory(a){this.value&&(a||this.value!==this.getCurrentValue())&&this.history.add(this.value)}isAtLastInHistory(){return this.history.isLast()}isNowhereInHistory(){return this.history.isNowhere()}showNextValue(){this.history.has(this.value)||this.addToHistory();let a=this.getNextValue();a&&(a=a===this.value?this.getNextValue():a),this.value=a??"",j.h5(this.value?this.value:r.kg(14,"Cleared Input"))}showPreviousValue(){this.history.has(this.value)||this.addToHistory();let a=this.getPreviousValue();a&&(a=a===this.value?this.getPreviousValue():a),a&&(this.value=a,j.h5(this.value))}setPlaceHolder(a){super.setPlaceHolder(a),this.setTooltip(a)}onBlur(){super.onBlur(),this._onDidBlur.fire()}onFocus(){super.onFocus(),this._onDidFocus.fire()}getCurrentValue(){let a=this.history.current();return a||(a=this.history.last(),this.history.next()),a}getPreviousValue(){return this.history.previous()||this.history.first()}getNextValue(){return this.history.next()}}},17922:(a,b,c)=>{"use strict";c.d(b,{nA:()=>d,qQ:()=>j,uB:()=>i});class d{constructor(a,b,c){this.owner=a,this.debugNameSource=b,this.referenceFn=c}getDebugName(a){return function(a,b){let c=f.get(a);if(c)return c;let d=function(a,b){let c,d=f.get(a);if(d)return d;let e=b.owner?function(a){let b=h.get(a);if(b)return b;let c=i(a)??"Object",d=g.get(c)??0;d++,g.set(c,d);let e=1===d?c:`${c}#${d}`;return h.set(a,e),e}(b.owner)+".":"",k=b.debugNameSource;if(void 0!==k){if("function"!=typeof k)return e+k;else if(void 0!==(c=k()))return e+c}let l=b.referenceFn;if(void 0!==l&&void 0!==(c=j(l)))return e+c;if(void 0!==b.owner){let c=function(a,b){for(let c in a)if(a[c]===b)return c}(b.owner,a);if(void 0!==c)return e+c}}(a,b);if(d){let b=e.get(d)??0;b++,e.set(d,b);let c=1===b?d:`${d}#${b}`;return f.set(a,c),c}}(a,this)}}let e=new Map,f=new WeakMap,g=new Map,h=new WeakMap;function i(a){let b=a.constructor;if(b){if("Object"===b.name)return;return b.name}}function j(a){let b=a.toString(),c=/\/\*\*\s*@description\s*([^*]*)\*\//.exec(b),d=c?c[1]:void 0;return d?.trim()}},18377:(a,b,c)=>{"use strict";c.d(b,{TT:()=>ab,cZ:()=>ak,D$:()=>al,pn:()=>ag});var d,e=c(37291),f=c(63048);let{entries:g,setPrototypeOf:h,isFrozen:i,getPrototypeOf:j,getOwnPropertyDescriptor:k}=Object,{freeze:l,seal:m,create:n}=Object,{apply:o,construct:p}="undefined"!=typeof Reflect&&Reflect;l||(l=function(a){return a}),m||(m=function(a){return a}),o||(o=function(a,b,c){return a.apply(b,c)}),p||(p=function(a,b){return new a(...b)});let q=C(Array.prototype.forEach),r=C(Array.prototype.pop),s=C(Array.prototype.push),t=C(String.prototype.toLowerCase),u=C(String.prototype.toString),v=C(String.prototype.match),w=C(String.prototype.replace),x=C(String.prototype.indexOf),y=C(String.prototype.trim),z=C(Object.prototype.hasOwnProperty),A=C(RegExp.prototype.test),B=(d=TypeError,function(){for(var a=arguments.length,b=Array(a),c=0;c<a;c++)b[c]=arguments[c];return p(d,b)});function C(a){return function(b){for(var c=arguments.length,d=Array(c>1?c-1:0),e=1;e<c;e++)d[e-1]=arguments[e];return o(a,b,d)}}function D(a,b){let c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t;h&&h(a,null);let d=b.length;for(;d--;){let e=b[d];if("string"==typeof e){let a=c(e);a!==e&&(i(b)||(b[d]=a),e=a)}a[e]=!0}return a}function E(a){let b=n(null);for(let[c,d]of g(a))z(a,c)&&(Array.isArray(d)?b[c]=function(a){for(let b=0;b<a.length;b++)z(a,b)||(a[b]=null);return a}(d):d&&"object"==typeof d&&d.constructor===Object?b[c]=E(d):b[c]=d);return b}function F(a,b){for(;null!==a;){let c=k(a,b);if(c){if(c.get)return C(c.get);if("function"==typeof c.value)return C(c.value)}a=j(a)}return function(){return null}}let G=l(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","section","select","shadow","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),H=l(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","filter","font","g","glyph","glyphref","hkern","image","line","lineargradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),I=l(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),J=l(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),K=l(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),L=l(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),M=l(["#text"]),N=l(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","face","for","headers","height","hidden","high","href","hreflang","id","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns","slot"]),O=l(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),P=l(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),Q=l(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),R=m(/\{\{[\w\W]*|[\w\W]*\}\}/gm),S=m(/<%[\w\W]*|[\w\W]*%>/gm),T=m(/\${[\w\W]*}/gm),U=m(/^data-[\-\w.\u00B7-\uFFFF]/),V=m(/^aria-[\-\w]+$/),W=m(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),X=m(/^(?:\w+script|data):/i),Y=m(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Z=m(/^html$/i);var $=Object.freeze({__proto__:null,MUSTACHE_EXPR:R,ERB_EXPR:S,TMPLIT_EXPR:T,DATA_ATTR:U,ARIA_ATTR:V,IS_ALLOWED_URI:W,IS_SCRIPT_OR_DATA:X,ATTR_WHITESPACE:Y,DOCTYPE_NAME:Z,CUSTOM_ELEMENT:m(/^[a-z][.\w]*(-[.\w]+)+$/i)});let _=function(a,b){if("object"!=typeof a||"function"!=typeof a.createPolicy)return null;let c=null,d="data-tt-policy-suffix";b&&b.hasAttribute(d)&&(c=b.getAttribute(d));let e="dompurify"+(c?"#"+c:"");try{return a.createPolicy(e,{createHTML:a=>a,createScriptURL:a=>a})}catch(a){return console.warn("TrustedTypes policy "+e+" could not be created."),null}};var aa=function a(){let b,c=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"undefined"==typeof window?null:window,d=b=>a(b);if(d.version="3.1.7",d.removed=[],!c||!c.document||9!==c.document.nodeType)return d.isSupported=!1,d;let{document:e}=c,f=e,h=f.currentScript,{DocumentFragment:i,HTMLTemplateElement:j,Node:k,Element:m,NodeFilter:o,NamedNodeMap:p=c.NamedNodeMap||c.MozNamedAttrMap,HTMLFormElement:C,DOMParser:R,trustedTypes:S}=c,T=m.prototype,U=F(T,"cloneNode"),V=F(T,"remove"),X=F(T,"nextSibling"),Y=F(T,"childNodes"),aa=F(T,"parentNode");if("function"==typeof j){let a=e.createElement("template");a.content&&a.content.ownerDocument&&(e=a.content.ownerDocument)}let ab="",{implementation:ac,createNodeIterator:ad,createDocumentFragment:ae,getElementsByTagName:af}=e,{importNode:ag}=f,ah={};d.isSupported="function"==typeof g&&"function"==typeof aa&&ac&&void 0!==ac.createHTMLDocument;let{MUSTACHE_EXPR:ai,ERB_EXPR:aj,TMPLIT_EXPR:ak,DATA_ATTR:al,ARIA_ATTR:am,IS_SCRIPT_OR_DATA:an,ATTR_WHITESPACE:ao,CUSTOM_ELEMENT:ap}=$,{IS_ALLOWED_URI:aq}=$,ar=null,as=D({},[...G,...H,...I,...K,...M]),at=null,au=D({},[...N,...O,...P,...Q]),av=Object.seal(n(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),aw=null,ax=null,ay=!0,az=!0,aA=!1,aB=!0,aC=!1,aD=!0,aE=!1,aF=!1,aG=!1,aH=!1,aI=!1,aJ=!1,aK=!0,aL=!1,aM=!0,aN=!1,aO={},aP=null,aQ=D({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),aR=null,aS=D({},["audio","video","img","source","image","track"]),aT=null,aU=D({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),aV="http://www.w3.org/1998/Math/MathML",aW="http://www.w3.org/2000/svg",aX="http://www.w3.org/1999/xhtml",aY=aX,aZ=!1,a$=null,a_=D({},[aV,aW,aX],u),a0=null,a1=["application/xhtml+xml","text/html"],a2=null,a3=null,a4=e.createElement("form"),a5=function(a){return a instanceof RegExp||a instanceof Function},a6=function(){let a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!a3||a3!==a){if(a&&"object"==typeof a||(a={}),a=E(a),a2="application/xhtml+xml"===(a0=-1===a1.indexOf(a.PARSER_MEDIA_TYPE)?"text/html":a.PARSER_MEDIA_TYPE)?u:t,ar=z(a,"ALLOWED_TAGS")?D({},a.ALLOWED_TAGS,a2):as,at=z(a,"ALLOWED_ATTR")?D({},a.ALLOWED_ATTR,a2):au,a$=z(a,"ALLOWED_NAMESPACES")?D({},a.ALLOWED_NAMESPACES,u):a_,aT=z(a,"ADD_URI_SAFE_ATTR")?D(E(aU),a.ADD_URI_SAFE_ATTR,a2):aU,aR=z(a,"ADD_DATA_URI_TAGS")?D(E(aS),a.ADD_DATA_URI_TAGS,a2):aS,aP=z(a,"FORBID_CONTENTS")?D({},a.FORBID_CONTENTS,a2):aQ,aw=z(a,"FORBID_TAGS")?D({},a.FORBID_TAGS,a2):{},ax=z(a,"FORBID_ATTR")?D({},a.FORBID_ATTR,a2):{},aO=!!z(a,"USE_PROFILES")&&a.USE_PROFILES,ay=!1!==a.ALLOW_ARIA_ATTR,az=!1!==a.ALLOW_DATA_ATTR,aA=a.ALLOW_UNKNOWN_PROTOCOLS||!1,aB=!1!==a.ALLOW_SELF_CLOSE_IN_ATTR,aC=a.SAFE_FOR_TEMPLATES||!1,aD=!1!==a.SAFE_FOR_XML,aE=a.WHOLE_DOCUMENT||!1,aH=a.RETURN_DOM||!1,aI=a.RETURN_DOM_FRAGMENT||!1,aJ=a.RETURN_TRUSTED_TYPE||!1,aG=a.FORCE_BODY||!1,aK=!1!==a.SANITIZE_DOM,aL=a.SANITIZE_NAMED_PROPS||!1,aM=!1!==a.KEEP_CONTENT,aN=a.IN_PLACE||!1,aq=a.ALLOWED_URI_REGEXP||W,aY=a.NAMESPACE||aX,av=a.CUSTOM_ELEMENT_HANDLING||{},a.CUSTOM_ELEMENT_HANDLING&&a5(a.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(av.tagNameCheck=a.CUSTOM_ELEMENT_HANDLING.tagNameCheck),a.CUSTOM_ELEMENT_HANDLING&&a5(a.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(av.attributeNameCheck=a.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),a.CUSTOM_ELEMENT_HANDLING&&"boolean"==typeof a.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements&&(av.allowCustomizedBuiltInElements=a.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),aC&&(az=!1),aI&&(aH=!0),aO&&(ar=D({},M),at=[],!0===aO.html&&(D(ar,G),D(at,N)),!0===aO.svg&&(D(ar,H),D(at,O),D(at,Q)),!0===aO.svgFilters&&(D(ar,I),D(at,O),D(at,Q)),!0===aO.mathMl&&(D(ar,K),D(at,P),D(at,Q))),a.ADD_TAGS&&(ar===as&&(ar=E(ar)),D(ar,a.ADD_TAGS,a2)),a.ADD_ATTR&&(at===au&&(at=E(at)),D(at,a.ADD_ATTR,a2)),a.ADD_URI_SAFE_ATTR&&D(aT,a.ADD_URI_SAFE_ATTR,a2),a.FORBID_CONTENTS&&(aP===aQ&&(aP=E(aP)),D(aP,a.FORBID_CONTENTS,a2)),aM&&(ar["#text"]=!0),aE&&D(ar,["html","head","body"]),ar.table&&(D(ar,["tbody"]),delete aw.tbody),a.TRUSTED_TYPES_POLICY){if("function"!=typeof a.TRUSTED_TYPES_POLICY.createHTML)throw B('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if("function"!=typeof a.TRUSTED_TYPES_POLICY.createScriptURL)throw B('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');ab=(b=a.TRUSTED_TYPES_POLICY).createHTML("")}else void 0===b&&(b=_(S,h)),null!==b&&"string"==typeof ab&&(ab=b.createHTML(""));l&&l(a),a3=a}},a7=D({},["mi","mo","mn","ms","mtext"]),a8=D({},["annotation-xml"]),a9=D({},["title","style","font","a","script"]),ba=D({},[...H,...I,...J]),bb=D({},[...K,...L]),bc=function(a){let b=aa(a);b&&b.tagName||(b={namespaceURI:aY,tagName:"template"});let c=t(a.tagName),d=t(b.tagName);return!!a$[a.namespaceURI]&&(a.namespaceURI===aW?b.namespaceURI===aX?"svg"===c:b.namespaceURI===aV?"svg"===c&&("annotation-xml"===d||a7[d]):!!ba[c]:a.namespaceURI===aV?b.namespaceURI===aX?"math"===c:b.namespaceURI===aW?"math"===c&&a8[d]:!!bb[c]:a.namespaceURI===aX?(b.namespaceURI!==aW||!!a8[d])&&(b.namespaceURI!==aV||!!a7[d])&&!bb[c]&&(a9[c]||!ba[c]):"application/xhtml+xml"===a0&&!!a$[a.namespaceURI])},bd=function(a){s(d.removed,{element:a});try{aa(a).removeChild(a)}catch(b){V(a)}},be=function(a,b){try{s(d.removed,{attribute:b.getAttributeNode(a),from:b})}catch(a){s(d.removed,{attribute:null,from:b})}if(b.removeAttribute(a),"is"===a&&!at[a])if(aH||aI)try{bd(b)}catch(a){}else try{b.setAttribute(a,"")}catch(a){}},bf=function(a){let c=null,d=null;if(aG)a="<remove></remove>"+a;else{let b=v(a,/^[\r\n\t ]+/);d=b&&b[0]}"application/xhtml+xml"===a0&&aY===aX&&(a='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+a+"</body></html>");let f=b?b.createHTML(a):a;if(aY===aX)try{c=new R().parseFromString(f,a0)}catch(a){}if(!c||!c.documentElement){c=ac.createDocument(aY,"template",null);try{c.documentElement.innerHTML=aZ?ab:f}catch(a){}}let g=c.body||c.documentElement;return(a&&d&&g.insertBefore(e.createTextNode(d),g.childNodes[0]||null),aY===aX)?af.call(c,aE?"html":"body")[0]:aE?c.documentElement:g},bg=function(a){return ad.call(a.ownerDocument||a,a,o.SHOW_ELEMENT|o.SHOW_COMMENT|o.SHOW_TEXT|o.SHOW_PROCESSING_INSTRUCTION|o.SHOW_CDATA_SECTION,null)},bh=function(a){return a instanceof C&&("string"!=typeof a.nodeName||"string"!=typeof a.textContent||"function"!=typeof a.removeChild||!(a.attributes instanceof p)||"function"!=typeof a.removeAttribute||"function"!=typeof a.setAttribute||"string"!=typeof a.namespaceURI||"function"!=typeof a.insertBefore||"function"!=typeof a.hasChildNodes)},bi=function(a){return"function"==typeof k&&a instanceof k},bj=function(a,b,c){ah[a]&&q(ah[a],a=>{a.call(d,b,c,a3)})},bk=function(a){let b=null;if(bj("beforeSanitizeElements",a,null),bh(a))return bd(a),!0;let c=a2(a.nodeName);if(bj("uponSanitizeElement",a,{tagName:c,allowedTags:ar}),a.hasChildNodes()&&!bi(a.firstElementChild)&&A(/<[/\w]/g,a.innerHTML)&&A(/<[/\w]/g,a.textContent)||7===a.nodeType||aD&&8===a.nodeType&&A(/<[/\w]/g,a.data))return bd(a),!0;if(!ar[c]||aw[c]){if(!aw[c]&&bm(c)&&(av.tagNameCheck instanceof RegExp&&A(av.tagNameCheck,c)||av.tagNameCheck instanceof Function&&av.tagNameCheck(c)))return!1;if(aM&&!aP[c]){let b=aa(a)||a.parentNode,c=Y(a)||a.childNodes;if(c&&b){let d=c.length;for(let e=d-1;e>=0;--e){let d=U(c[e],!0);d.__removalCount=(a.__removalCount||0)+1,b.insertBefore(d,X(a))}}}return bd(a),!0}return a instanceof m&&!bc(a)||("noscript"===c||"noembed"===c||"noframes"===c)&&A(/<\/no(script|embed|frames)/i,a.innerHTML)?(bd(a),!0):(aC&&3===a.nodeType&&(b=a.textContent,q([ai,aj,ak],a=>{b=w(b,a," ")}),a.textContent!==b&&(s(d.removed,{element:a.cloneNode()}),a.textContent=b)),bj("afterSanitizeElements",a,null),!1)},bl=function(a,b,c){if(aK&&("id"===b||"name"===b)&&(c in e||c in a4))return!1;if(az&&!ax[b]&&A(al,b));else if(ay&&A(am,b));else if(!at[b]||ax[b]){if(!(bm(a)&&(av.tagNameCheck instanceof RegExp&&A(av.tagNameCheck,a)||av.tagNameCheck instanceof Function&&av.tagNameCheck(a))&&(av.attributeNameCheck instanceof RegExp&&A(av.attributeNameCheck,b)||av.attributeNameCheck instanceof Function&&av.attributeNameCheck(b))||"is"===b&&av.allowCustomizedBuiltInElements&&(av.tagNameCheck instanceof RegExp&&A(av.tagNameCheck,c)||av.tagNameCheck instanceof Function&&av.tagNameCheck(c))))return!1}else if(aT[b]);else if(A(aq,w(c,ao,"")));else if(("src"===b||"xlink:href"===b||"href"===b)&&"script"!==a&&0===x(c,"data:")&&aR[a]);else if(aA&&!A(an,w(c,ao,"")));else if(c)return!1;return!0},bm=function(a){return"annotation-xml"!==a&&v(a,ap)},bn=function(a){bj("beforeSanitizeAttributes",a,null);let{attributes:c}=a;if(!c)return;let e={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:at},f=c.length;for(;f--;){let{name:g,namespaceURI:h,value:i}=c[f],j=a2(g),k="value"===g?i:y(i);if(e.attrName=j,e.attrValue=k,e.keepAttr=!0,e.forceKeepAttr=void 0,bj("uponSanitizeAttribute",a,e),k=e.attrValue,e.forceKeepAttr||(be(g,a),!e.keepAttr))continue;if(!aB&&A(/\/>/i,k)){be(g,a);continue}aC&&q([ai,aj,ak],a=>{k=w(k,a," ")});let l=a2(a.nodeName);if(bl(l,j,k)){if(aL&&("id"===j||"name"===j)&&(be(g,a),k="user-content-"+k),aD&&A(/((--!?|])>)|<\/(style|title)/i,k)){be(g,a);continue}if(b&&"object"==typeof S&&"function"==typeof S.getAttributeType)if(h);else switch(S.getAttributeType(l,j)){case"TrustedHTML":k=b.createHTML(k);break;case"TrustedScriptURL":k=b.createScriptURL(k)}try{h?a.setAttributeNS(h,g,k):a.setAttribute(g,k),bh(a)?bd(a):r(d.removed)}catch(a){}}}bj("afterSanitizeAttributes",a,null)},bo=function a(b){let c=null,d=bg(b);for(bj("beforeSanitizeShadowDOM",b,null);c=d.nextNode();)bj("uponSanitizeShadowNode",c,null),bk(c)||(c.content instanceof i&&a(c.content),bn(c));bj("afterSanitizeShadowDOM",b,null)};return d.sanitize=function(a){let c=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},e=null,g=null,h=null,j=null;if((aZ=!a)&&(a="\x3c!--\x3e"),"string"!=typeof a&&!bi(a))if("function"==typeof a.toString){if("string"!=typeof(a=a.toString()))throw B("dirty is not a string, aborting")}else throw B("toString is not a function");if(!d.isSupported)return a;if(aF||a6(c),d.removed=[],"string"==typeof a&&(aN=!1),aN){if(a.nodeName){let b=a2(a.nodeName);if(!ar[b]||aw[b])throw B("root node is forbidden and cannot be sanitized in-place")}}else if(a instanceof k)1===(g=(e=bf("\x3c!----\x3e")).ownerDocument.importNode(a,!0)).nodeType&&"BODY"===g.nodeName||"HTML"===g.nodeName?e=g:e.appendChild(g);else{if(!aH&&!aC&&!aE&&-1===a.indexOf("<"))return b&&aJ?b.createHTML(a):a;if(!(e=bf(a)))return aH?null:aJ?ab:""}e&&aG&&bd(e.firstChild);let l=bg(aN?a:e);for(;h=l.nextNode();)bk(h)||(h.content instanceof i&&bo(h.content),bn(h));if(aN)return a;if(aH){if(aI)for(j=ae.call(e.ownerDocument);e.firstChild;)j.appendChild(e.firstChild);else j=e;return(at.shadowroot||at.shadowrootmode)&&(j=ag.call(f,j,!0)),j}let m=aE?e.outerHTML:e.innerHTML;return aE&&ar["!doctype"]&&e.ownerDocument&&e.ownerDocument.doctype&&e.ownerDocument.doctype.name&&A(Z,e.ownerDocument.doctype.name)&&(m="<!DOCTYPE "+e.ownerDocument.doctype.name+">\n"+m),aC&&q([ai,aj,ak],a=>{m=w(m,a," ")}),b&&aJ?b.createHTML(m):m},d.setConfig=function(){let a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};a6(a),aF=!0},d.clearConfig=function(){a3=null,aF=!1},d.isValidAttribute=function(a,b,c){return a3||a6({}),bl(a2(a),a2(b),c)},d.addHook=function(a,b){"function"==typeof b&&(ah[a]=ah[a]||[],s(ah[a],b))},d.removeHook=function(a){if(ah[a])return r(ah[a])},d.removeHooks=function(a){ah[a]&&(ah[a]=[])},d.removeAllHooks=function(){ah={}},d}();let ab=Object.freeze(["a","abbr","b","bdo","blockquote","br","caption","cite","code","col","colgroup","dd","del","details","dfn","div","dl","dt","em","figcaption","figure","h1","h2","h3","h4","h5","h6","hr","i","img","ins","kbd","label","li","mark","ol","p","pre","q","rp","rt","ruby","s","samp","small","small","source","span","strike","strong","sub","summary","sup","table","tbody","td","tfoot","th","thead","time","tr","tt","u","ul","var","video","wbr"]),ac=Object.freeze(["href","target","src","alt","title","for","name","role","tabindex","x-dispatch","required","checked","placeholder","type","start","width","height","align"]),ad="vscode-relative-path";function ae(a,b){if("*"===b.override)return!0;try{let c=new URL(a,ad+"://");if(b.override.includes(c.protocol.replace(/:$/,""))||b.allowRelativePaths&&c.protocol===ad+":"&&!a.trim().toLowerCase().startsWith(ad))return!0;return!1}catch(a){return!1}}let af=Object.freeze({ALLOWED_TAGS:[...ab],ALLOWED_ATTR:[...ac],ALLOW_UNKNOWN_PROTOCOLS:!0});function ag(a,b){return ah(a,b,"trusted")}function ah(a,b,c){try{var d,f;let g={...af};b?.allowedTags&&(b.allowedTags.override&&(g.ALLOWED_TAGS=[...b.allowedTags.override]),b.allowedTags.augment&&(g.ALLOWED_TAGS=[...g.ALLOWED_TAGS??[],...b.allowedTags.augment]));let h=[...ac];b?.allowedAttributes&&(b.allowedAttributes.override&&(h=[...b.allowedAttributes.override]),b.allowedAttributes.augment&&(h=[...h,...b.allowedAttributes.augment])),h=h.map(a=>"string"==typeof a?a.toLowerCase():{attributeName:a.attributeName.toLowerCase(),shouldKeep:a.shouldKeep});let i=new Set(h.map(a=>"string"==typeof a?a:a.attributeName)),j=new Map;for(let a of h)"string"==typeof a?j.delete(a):j.set(a.attributeName,a);if(g.ALLOWED_ATTR=Array.from(i),d={override:b?.allowedLinkProtocols?.override??[e.ny.http,e.ny.https],allowRelativePaths:b?.allowRelativeLinkPaths??!1},f={override:b?.allowedMediaProtocols?.override??[e.ny.http,e.ny.https],allowRelativePaths:b?.allowRelativeMediaPaths??!1},aa.addHook("afterSanitizeAttributes",a=>{for(let b of["href","src"])if(a.hasAttribute(b)){let c=a.getAttribute(b);"href"===b?c.startsWith("#")||ae(c,d)||a.removeAttribute(b):ae(c,f)||a.removeAttribute(b)}}),b?.replaceWithPlaintext&&aa.addHook("uponSanitizeElement",aj),j.size&&aa.addHook("uponSanitizeAttribute",(a,b)=>{let c=j.get(b.attrName);if(c){let d=c.shouldKeep(a,b);"string"==typeof d?(b.keepAttr=!0,b.attrValue=d):b.keepAttr=d}else b.keepAttr=i.has(b.attrName)}),"dom"===c)return aa.sanitize(a,{...g,RETURN_DOM_FRAGMENT:!0});return aa.sanitize(a,{...g,RETURN_TRUSTED_TYPE:!0})}finally{aa.removeAllHooks()}}let ai=["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"];function aj(a,b,c){if(!b.allowedTags[b.tagName]&&"body"!==b.tagName){let b=ak(a);a.nodeType===Node.COMMENT_NODE?a.parentElement?.insertBefore(b,a):a.parentElement?.replaceChild(b,a)}}function ak(a){let b,c;if(a.nodeType===Node.COMMENT_NODE)b=`<!--${a.textContent}-->`;else{let d=a.tagName.toLowerCase(),e=ai.includes(d),f=a.attributes.length?" "+Array.from(a.attributes).map(a=>`${a.name}="${a.value}"`).join(" "):"";b=`<${d}${f}>`,e||(c=`</${d}>`)}let d=document.createDocumentFragment(),e=a.ownerDocument.createTextNode(b);for(d.appendChild(e);a.firstChild;)d.appendChild(a.firstChild);let f=c?a.ownerDocument.createTextNode(c):void 0;return f&&d.appendChild(f),d}function al(a,b,c){let d=ah(b,c,"dom");(0,f.Ln)(a,d)}},18635:(a,b,c)=>{"use strict";c.d(b,{i:()=>i});var d=c(38209),e=c(42727),f=c(59119);class g extends f.V{constructor(a,b){super(0),this._segmenter=null,this._cachedLine=null,this._cachedSegments=[],this.intlSegmenterLocales=b,this.intlSegmenterLocales.length>0?this._segmenter=d.x.Segmenter(this.intlSegmenterLocales,{granularity:"word"}):this._segmenter=null;for(let b=0,c=a.length;b<c;b++)this.set(a.charCodeAt(b),2);this.set(32,1),this.set(9,1)}findPrevIntlWordBeforeOrAtOffset(a,b){let c=null;for(let d of this._getIntlSegmenterWordsOnLine(a)){if(d.index>b)break;c=d}return c}findNextIntlWordAtOrAfterOffset(a,b){for(let c of this._getIntlSegmenterWordsOnLine(a))if(!(c.index<b))return c;return null}_getIntlSegmenterWordsOnLine(a){return this._segmenter?(this._cachedLine===a||(this._cachedLine=a,this._cachedSegments=this._filterWordSegments(this._segmenter.value.segment(a))),this._cachedSegments):[]}_filterWordSegments(a){let b=[];for(let c of a)this._isWordLike(c)&&b.push(c);return b}_isWordLike(a){return!!a.isWordLike}}let h=new e.qK(10);function i(a,b){let c=`${a}/${b.join(",")}`,d=h.get(c);return d||(d=new g(a,b),h.set(c,d)),d}},18765:(a,b,c)=>{"use strict";c.d(b,{T:()=>o});var d=c(63048),e=c(23293),f=c(3457),g=c(40201),h=c(21410);class i{constructor(a,b){this.chr=a,this.type=b,this.width=0}fulfill(a){this.width=a}}class j{constructor(a,b){this._bareFontInfo=a,this._requests=b,this._container=null,this._testElements=null}read(a){this._createDomElements(),a.document.body.appendChild(this._container),this._readFromDomElements(),this._container?.remove(),this._container=null,this._testElements=null}_createDomElements(){let a=document.createElement("div");a.style.position="absolute",a.style.top="-50000px",a.style.width="50000px";let b=document.createElement("div");(0,h.M)(b,this._bareFontInfo),a.appendChild(b);let c=document.createElement("div");(0,h.M)(c,this._bareFontInfo),c.style.fontWeight="bold",a.appendChild(c);let d=document.createElement("div");(0,h.M)(d,this._bareFontInfo),d.style.fontStyle="italic",a.appendChild(d);let e=[];for(let a of this._requests){let f;0===a.type&&(f=b),2===a.type&&(f=c),1===a.type&&(f=d),f.appendChild(document.createElement("br"));let g=document.createElement("span");j._render(g,a),f.appendChild(g),e.push(g)}this._container=a,this._testElements=e}static _render(a,b){if(" "===b.chr){let b="\xa0";for(let a=0;a<8;a++)b+=b;a.innerText=b}else{let c=b.chr;for(let a=0;a<8;a++)c+=c;a.textContent=c}}_readFromDomElements(){for(let a=0,b=this._requests.length;a<b;a++){let b=this._requests[a],c=this._testElements[a];b.fulfill(c.offsetWidth/256)}}}var k=c(64825),l=c(21799);class m extends g.jG{constructor(){super(...arguments),this._cache=new Map,this._evictUntrustedReadingsTimeout=-1,this._onDidChange=this._register(new f.vl),this.onDidChange=this._onDidChange.event}dispose(){-1!==this._evictUntrustedReadingsTimeout&&(clearTimeout(this._evictUntrustedReadingsTimeout),this._evictUntrustedReadingsTimeout=-1),super.dispose()}clearAllFontInfos(){this._cache.clear(),this._onDidChange.fire()}_ensureCache(a){let b=(0,d.Q2)(a),c=this._cache.get(b);return c||(c=new n,this._cache.set(b,c)),c}_writeToCache(a,b,c){this._ensureCache(a).put(b,c),c.isTrusted||-1!==this._evictUntrustedReadingsTimeout||(this._evictUntrustedReadingsTimeout=a.setTimeout(()=>{this._evictUntrustedReadingsTimeout=-1,this._evictUntrustedReadings(a)},5e3))}_evictUntrustedReadings(a){let b=this._ensureCache(a),c=b.getValues(),d=!1;for(let a of c)a.isTrusted||(d=!0,b.remove(a));d&&this._onDidChange.fire()}readFontInfo(a,b){let c=this._ensureCache(a);if(!c.has(b)){let c=this._actualReadFontInfo(a,b);(c.typicalHalfwidthCharacterWidth<=2||c.typicalFullwidthCharacterWidth<=2||c.spaceWidth<=2||c.maxDigitWidth<=2)&&(c=new l.YJ({pixelRatio:e.c.getInstance(a).value,fontFamily:c.fontFamily,fontWeight:c.fontWeight,fontSize:c.fontSize,fontFeatureSettings:c.fontFeatureSettings,fontVariationSettings:c.fontVariationSettings,lineHeight:c.lineHeight,letterSpacing:c.letterSpacing,isMonospace:c.isMonospace,typicalHalfwidthCharacterWidth:Math.max(c.typicalHalfwidthCharacterWidth,5),typicalFullwidthCharacterWidth:Math.max(c.typicalFullwidthCharacterWidth,5),canUseHalfwidthRightwardsArrow:c.canUseHalfwidthRightwardsArrow,spaceWidth:Math.max(c.spaceWidth,5),middotWidth:Math.max(c.middotWidth,5),wsmiddotWidth:Math.max(c.wsmiddotWidth,5),maxDigitWidth:Math.max(c.maxDigitWidth,5)},!1)),this._writeToCache(a,b,c)}return c.get(b)}_createRequest(a,b,c,d){let e=new i(a,b);return c.push(e),d?.push(e),e}_actualReadFontInfo(a,b){let c=[],d=[],f=this._createRequest("n",0,c,d),g=this._createRequest("m",0,c,null),h=this._createRequest(" ",0,c,d),i=this._createRequest("0",0,c,d),m=this._createRequest("1",0,c,d),n=this._createRequest("2",0,c,d),o=this._createRequest("3",0,c,d),p=this._createRequest("4",0,c,d),q=this._createRequest("5",0,c,d),r=this._createRequest("6",0,c,d),s=this._createRequest("7",0,c,d),t=this._createRequest("8",0,c,d),u=this._createRequest("9",0,c,d),v=this._createRequest("→",0,c,d),w=this._createRequest("→",0,c,null),x=this._createRequest("\xb7",0,c,d),y=this._createRequest(String.fromCharCode(11825),0,c,null),z="|/-_ilm%";for(let a=0,b=z.length;a<b;a++)this._createRequest(z.charAt(a),0,c,d),this._createRequest(z.charAt(a),1,c,d),this._createRequest(z.charAt(a),2,c,d);new j(b,c).read(a);let A=Math.max(i.width,m.width,n.width,o.width,p.width,q.width,r.width,s.width,t.width,u.width),B=b.fontFeatureSettings===k.Bc.OFF,C=d[0].width;for(let a=1,b=d.length;B&&a<b;a++){let b=C-d[a].width;if(b<-.001||b>.001){B=!1;break}}let D=!0;return B&&w.width!==C&&(D=!1),w.width>v.width&&(D=!1),new l.YJ({pixelRatio:e.c.getInstance(a).value,fontFamily:b.fontFamily,fontWeight:b.fontWeight,fontSize:b.fontSize,fontFeatureSettings:b.fontFeatureSettings,fontVariationSettings:b.fontVariationSettings,lineHeight:b.lineHeight,letterSpacing:b.letterSpacing,isMonospace:B,typicalHalfwidthCharacterWidth:f.width,typicalFullwidthCharacterWidth:g.width,canUseHalfwidthRightwardsArrow:D,spaceWidth:h.width,middotWidth:x.width,wsmiddotWidth:y.width,maxDigitWidth:A},!0)}}class n{constructor(){this._keys=Object.create(null),this._values=Object.create(null)}has(a){let b=a.getId();return!!this._values[b]}get(a){let b=a.getId();return this._values[b]}put(a,b){let c=a.getId();this._keys[c]=a,this._values[c]=b}remove(a){let b=a.getId();delete this._keys[b],delete this._values[b]}getValues(){return Object.keys(this._keys).map(a=>this._values[a])}}let o=new m},19095:(a,b,c)=>{"use strict";c.d(b,{ne:()=>e,Nd:()=>Y,Jo:()=>N,WJ:()=>O,dt:()=>Z,uU:()=>$,Tt:()=>r,yr:()=>L,O:()=>M,WP:()=>p,dE:()=>s,J1:()=>G,or:()=>o});var d,e,f=c(42727);let g=0,h=new Uint32Array(10);function i(a,b,c){var d;a>=c&&a<c+b.length&&0!==(d=b[a-c])&&(h[g++]=255&d,d>>8&&(h[g++]=d>>8&255),d>>16&&(h[g++]=d>>16&255))}let j=new Uint8Array([114,82,115,101,69,102,97,113,81,116,84,100,119,87,99,122,120,118,103]),k=new Uint16Array([107,111,105,79,106,112,117,80,104,27496,28520,27752,121,110,27246,28782,27758,98,109,27757,108]),l=new Uint16Array([114,82,29810,115,30579,26483,101,102,29286,24934,29030,29798,30822,30310,26470,97,113,29809,116,84,100,119,99,122,120,118,103]),m=new Uint16Array([114,82,29810,115,30579,26483,101,69,102,29286,24934,29030,29798,30822,30310,26470,97,113,81,29809,116,84,100,119,87,99,122,120,118,103,107,111,105,79,106,112,117,80,104,27496,28520,27752,121,110,27246,28782,27758,98,109,27757,108]);var n=c(77747);function o(...a){return function(b,c){for(let d=0,e=a.length;d<e;d++){let e=a[d](b,c);if(e)return e}return null}}q.bind(void 0,!1);let p=q.bind(void 0,!0);function q(a,b,c){return c&&!(c.length<b.length)&&(a?n.ns(c,b):0===c.indexOf(b))?b.length>0?[{start:0,end:b.length}]:[]:null}function r(a,b){let c=b.toLowerCase().indexOf(a.toLowerCase());return -1===c?null:[{start:c,end:c+a.length}]}function s(a,b){return function a(b,c,d,e){if(d===b.length)return[];if(e===c.length)return null;if(b[d]===c[e]){let f=null;return(f=a(b,c,d+1,e+1))?D({start:e,end:e+1},f):null}return a(b,c,d,e+1)}(a.toLowerCase(),b.toLowerCase(),0,0)}function t(a){return 97<=a&&a<=122}function u(a){return 65<=a&&a<=90}function v(a){return 48<=a&&a<=57}function w(a){return 32===a||9===a||10===a||13===a}let x=new Set;function y(a){return w(a)||x.has(a)}function z(a,b){return a===b||y(a)&&y(b)}"()[]{}<>`'\"-/;:,.?!".split("").forEach(a=>x.add(a.charCodeAt(0)));let A=new Map;function B(a){let b;if(A.has(a))return A.get(a);let c=function(a){let b=function(a){if(g=0,i(a,j,4352),g>0||(i(a,k,4449),g>0)||(i(a,l,4520),g>0)||(i(a,m,12593),g))return h.subarray(0,g);if(a>=44032&&a<=55203){let b=a-44032,c=b%588,d=Math.floor(b/588),e=Math.floor(c/28),f=c%28-1;if(d<j.length?i(d,j,0):4352+d-12593<m.length&&i(4352+d,m,12593),e<k.length?i(e,k,0):4449+e-12593<m.length&&i(4449+e-12593,m,12593),f>=0&&(f<l.length?i(f,l,0):4520+f-12593<m.length&&i(4520+f-12593,m,12593)),g>0)return h.subarray(0,g)}}(a);if(b&&b.length>0)return new Uint32Array(b)}(a);return c&&(b=c),A.set(a,b),b}function C(a){return t(a)||u(a)||v(a)}function D(a,b){return 0===b.length?b=[a]:a.end===b[0].start?b[0].start=a.start:b.unshift(a),b}function E(a,b){for(let c=b;c<a.length;c++){let b=a.charCodeAt(c);if(u(b)||v(b)||c>0&&!C(a.charCodeAt(c-1)))return c}return a.length}function F(a,b){if(!b||0===(b=b.trim()).length||!function(a){let b=0,c=0,d=0,e=0;for(let f=0;f<a.length;f++)u(d=a.charCodeAt(f))&&b++,t(d)&&c++,w(d)&&e++;return(0===b||0===c)&&0===e?a.length<=30:b<=5}(a))return null;b.length>60&&(b=b.substring(0,60));let c=function(a){let b=0,c=0,d=0,e=0,f=0;for(let g=0;g<a.length;g++)u(f=a.charCodeAt(g))&&b++,t(f)&&c++,C(f)&&d++,v(f)&&e++;let g=b/a.length,h=c/a.length;return{upperPercent:g,lowerPercent:h,alphaPercent:d/a.length,numericPercent:e/a.length}}(b);if(!function(a){let{upperPercent:b,lowerPercent:c,alphaPercent:d,numericPercent:e}=a;return c>.2&&b<.8&&d>.6&&e<.2}(c)){if(!function(a){let{upperPercent:b,lowerPercent:c}=a;return 0===c&&b>.6}(c))return null;b=b.toLowerCase()}let d=null,e=0;for(a=a.toLowerCase();e<b.length&&null===(d=function a(b,c,d,e){if(d===b.length)return[];{if(e===c.length||b[d]!==c[e].toLowerCase())return null;let f=null,g=e+1;for(f=a(b,c,d+1,e+1);!f&&(g=E(c,g))<c.length;)f=a(b,c,d+1,g),g++;return null===f?null:D({start:e,end:e+1},f)}}(a,b,0,e));)e=E(b,e+1);return d}function G(a,b,c=!1){if(!b||0===b.length)return null;let d=null,e=0;for(a=a.toLowerCase(),b=b.toLowerCase();e<b.length&&null===(d=function a(b,c,d,e,f){let g=0;if(d===b.length)return[];if(e===c.length)return null;if(!z(b.charCodeAt(d),c.charCodeAt(e))){let a=B(b.charCodeAt(d));if(!a)return null;for(let b=0;b<a.length;b++)if(!z(a[b],c.charCodeAt(e+b)))return null;g+=a.length-1}let h=null,i=e+g+1;if(h=a(b,c,d+1,i,f),!f)for(;!h&&(i=H(c,i))<c.length;)h=a(b,c,d+1,i,f),i++;if(!h)return null;if(b.charCodeAt(d)!==c.charCodeAt(e)){let a=B(b.charCodeAt(d));if(!a)return h;for(let b=0;b<a.length;b++)if(a[b]!==c.charCodeAt(e+b))return h}return D({start:e,end:e+g+1},h)}(a,b,0,e,c));)e=H(b,e+1);return d}function H(a,b){for(let c=b;c<a.length;c++)if(y(a.charCodeAt(c))||c>0&&y(a.charCodeAt(c-1)))return c;return a.length}let I=o(p,F,r),J=o(p,F,s),K=new f.qK(1e4);function L(a,b,c=!1){if("string"!=typeof a||"string"!=typeof b)return null;let d=K.get(a);d||(d=RegExp(n.Bm(a),"i"),K.set(a,d));let e=d.exec(b);return e?[{start:e.index,end:e.index+e[0].length}]:c?J(a,b):I(a,b)}function M(a,b){let c=Z(a,a.toLowerCase(),0,b,b.toLowerCase(),0,{firstMatchCanBeWeak:!0,boostFullMatch:!0});return c?O(c):null}function N(a,b,c,d,e,f){let g=Math.min(13,a.length);for(;c<g;c++){let g=Z(a,b,c,d,e,f,{firstMatchCanBeWeak:!0,boostFullMatch:!0});if(g)return g}return[0,f]}function O(a){if(void 0===a)return[];let b=[],c=a[1];for(let d=a.length-1;d>1;d--){let e=a[d]+c,f=b[b.length-1];f&&f.end===e?f.end=e+1:b.push({start:e,end:e+1})}return b}function P(){let a=[],b=[];for(let a=0;a<=128;a++)b[a]=0;for(let c=0;c<=128;c++)a.push(b.slice(0));return a}function Q(a){let b=[];for(let c=0;c<=a;c++)b[c]=0;return b}let R=Q(256),S=Q(256),T=P(),U=P(),V=P();function W(a,b){if(b<0||b>=a.length)return!1;let c=a.codePointAt(b);switch(c){case 95:case 45:case 46:case 32:case 47:case 92:case 39:case 34:case 58:case 36:case 60:case 62:case 40:case 41:case 91:case 93:case 123:case 125:return!0;case void 0:return!1;default:if(n.Ss(c))return!0;return!1}}function X(a,b){if(b<0||b>=a.length)return!1;switch(a.charCodeAt(b)){case 32:case 9:return!0;default:return!1}}(d=e||(e={})).Default=[-100,0],d.isDefault=function(a){return!a||2===a.length&&-100===a[0]&&0===a[1]};class Y{static{this.default={boostFullMatch:!0,firstMatchCanBeWeak:!1}}constructor(a,b){this.firstMatchCanBeWeak=a,this.boostFullMatch=b}}function Z(a,b,c,d,e,f,g=Y.default){let h=a.length>128?128:a.length,i=d.length>128?128:d.length;if(c>=h||f>=i||h-c>i-f||!function(a,b,c,d,e,f,g=!1){for(;b<c&&e<f;)a[b]===d[e]&&(g&&(R[b]=e),b+=1),e+=1;return b===c}(b,c,h,e,f,i,!0))return;var j,k=h,l=i,m=c,n=f,o=b,p=e;let q=k-1,r=l-1;for(;q>=m&&r>=n;)o[q]===p[r]&&(S[q]=r,q--),r--;let s=1,t=1,u=c,v=f,w=[!1];for(s=1,u=c;u<h;s++,u++){let g=R[u],j=S[u],k=u+1<h?S[u+1]:i;for(t=g-f+1,v=g;v<k;t++,v++){let h=Number.MIN_SAFE_INTEGER,k=!1;v<=j&&(h=function(a,b,c,d,e,f,g,h,i,j,k){var l;if(b[c]!==f[g])return Number.MIN_SAFE_INTEGER;let m=1,n=!1;return g===c-d?m=a[c]===e[g]?7:5:e[g]===f[g]||0!==g&&e[l=g-1]!==f[l]?W(f,g)&&(0===g||!W(f,g-1))?m=5:(W(f,g-1)||X(f,g-1))&&(m=5,n=!0):(m=a[c]===e[g]?7:5,n=!0),m>1&&c===d&&(k[0]=!0),n||(n=e[g]!==f[g]||W(f,g-1)||X(f,g-1)),c===d?g>i&&(m-=n?3:5):j?m+=2*!!n:m+=+!n,g+1===h&&(m-=n?3:5),m}(a,b,u,c,d,e,v,i,f,0===T[s-1][t-1],w));let l=0;h!==Number.MIN_SAFE_INTEGER&&(k=!0,l=h+U[s-1][t-1]);let m=v>g,n=m?U[s][t-1]+(T[s][t-1]>0?-5:0):0,o=v>g+1&&T[s][t-1]>0,p=o?U[s][t-2]+(T[s][t-2]>0?-5:0):0;if(o&&(!m||p>=n)&&(!k||p>=l))U[s][t]=p,V[s][t]=3,T[s][t]=0;else if(m&&(!k||n>=l))U[s][t]=n,V[s][t]=2,T[s][t]=0;else if(k)U[s][t]=l,V[s][t]=1,T[s][t]=T[s-1][t-1]+1;else throw Error("not possible")}}if(!w[0]&&!g.firstMatchCanBeWeak)return;s--,t--;let x=[U[s][t],f],y=0,z=0;for(;s>=1;){let a=t;do{let b=V[s][a];if(3===b)a-=2;else if(2===b)a-=1;else break}while(a>=1);y>1&&b[c+s-1]===e[f+t-1]&&d[j=a+f-1]===e[j]&&y+1>T[s][a]&&(a=t),a===t?y++:y=1,z||(z=a),s--,t=a-1,x.push(t)}i-f===h&&g.boostFullMatch&&(x[0]+=2);let A=z-h;return x[0]-=A,x}function $(a,b,c,d,e,f,g){return function(a,b,c,d,e,f,g,h){let i=Z(a,b,c,d,e,f,h);if(i&&!g)return i;if(a.length>=3){let b=Math.min(7,a.length-1);for(let g=c+1;g<b;g++){let b=function(a,b){if(b+1>=a.length)return;let c=a[b],d=a[b+1];if(c!==d)return a.slice(0,b)+d+c+a.slice(b+2)}(a,g);if(b){let a=Z(b,b.toLowerCase(),c,d,e,f,h);a&&(a[0]-=3,(!i||a[0]>i[0])&&(i=a))}}}return i}(a,b,c,d,e,f,!0,g)}},19254:(a,b,c)=>{"use strict";let d,e;c.d(b,{BH:()=>C,Fr:()=>z,H8:()=>J,HZ:()=>w,OS:()=>F,UP:()=>M,_p:()=>E,cm:()=>I,gm:()=>K,iD:()=>A,ib:()=>v,j9:()=>u,lg:()=>x,m0:()=>N,nr:()=>L,ti:()=>g,uF:()=>s,un:()=>y,zx:()=>t});var f=c(76302);let g="en",h=!1,i=!1,j=!1,k=!1,l=!1,m=!1,n=!1,o=g,p=globalThis;void 0!==p.vscode&&void 0!==p.vscode.process?e=p.vscode.process:"undefined"!=typeof process&&"string"==typeof process?.versions?.node&&(e=process);let q="string"==typeof e?.versions?.electron&&e?.type==="renderer";if("object"==typeof e){h="win32"===e.platform,i="darwin"===e.platform,(j="linux"===e.platform)&&e.env.SNAP&&e.env.SNAP_REVISION,e.env.CI||e.env.BUILD_ARTIFACTSTAGINGDIRECTORY||e.env.GITHUB_WORKSPACE,o=g;let a=e.env.VSCODE_NLS_CONFIG;if(a)try{let b=JSON.parse(a);b.userLocale,b.osLocale,o=b.resolvedLanguage||g,b.languagePack?.translationsConfigFile}catch(a){}k=!0}else"object"!=typeof navigator||q?console.error("Unable to resolve platform."):(h=(d=navigator.userAgent).indexOf("Windows")>=0,i=d.indexOf("Macintosh")>=0,m=(d.indexOf("Macintosh")>=0||d.indexOf("iPad")>=0||d.indexOf("iPhone")>=0)&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0,j=d.indexOf("Linux")>=0,n=d?.indexOf("Mobi")>=0,l=!0,o=f.i8()||g,navigator.language.toLowerCase());let r=0;i?r=1:h?r=3:j&&(r=2);let s=h,t=i,u=j,v=k,w=l,x=l&&"function"==typeof p.importScripts?p.origin:void 0,y=m,z=n,A=r,B=d,C=o,D="function"==typeof p.postMessage&&!p.importScripts,E=(()=>{if(D){let a=[];p.addEventListener("message",b=>{if(b.data&&b.data.vscodeScheduleAsyncWork)for(let c=0,d=a.length;c<d;c++){let d=a[c];if(d.id===b.data.vscodeScheduleAsyncWork){a.splice(c,1),d.callback();return}}});let b=0;return c=>{let d=++b;a.push({id:d,callback:c}),p.postMessage({vscodeScheduleAsyncWork:d},"*")}}return a=>setTimeout(a)})(),F=i||m?2:h?1:3,G=!0,H=!1;function I(){if(!H){H=!0;let a=new Uint8Array(2);a[0]=1,a[1]=2,G=513===new Uint16Array(a.buffer)[0]}return G}let J=!!(B&&B.indexOf("Chrome")>=0),K=!!(B&&B.indexOf("Firefox")>=0),L=!!(!J&&B&&B.indexOf("Safari")>=0),M=!!(B&&B.indexOf("Edg/")>=0),N=!!(B&&B.indexOf("Android")>=0)},19374:(a,b,c)=>{"use strict";c.d(b,{cB:()=>l});var d=c(29139),e=c(77747);class f{constructor(){this._value="",this._pos=0}reset(a){return this._value=a,this._pos=0,this}next(){return this._pos+=1,this}hasNext(){return this._pos<this._value.length-1}cmp(a){return a.charCodeAt(0)-this._value.charCodeAt(this._pos)}value(){return this._value[this._pos]}}class g{constructor(a=!0){this._caseSensitive=a}reset(a){return this._value=a,this._from=0,this._to=0,this.next()}hasNext(){return this._to<this._value.length}next(){this._from=this._to;let a=!0;for(;this._to<this._value.length;this._to++)if(46===this._value.charCodeAt(this._to))if(a)this._from++;else break;else a=!1;return this}cmp(a){return this._caseSensitive?(0,e.lF)(a,this._value,0,a.length,this._from,this._to):(0,e.zd)(a,this._value,0,a.length,this._from,this._to)}value(){return this._value.substring(this._from,this._to)}}class h{constructor(a=!0,b=!0){this._splitOnBackslash=a,this._caseSensitive=b}reset(a){this._from=0,this._to=0,this._value=a,this._valueLen=a.length;for(let b=a.length-1;b>=0;b--,this._valueLen--){let a=this._value.charCodeAt(b);if(!(47===a||this._splitOnBackslash&&92===a))break}return this.next()}hasNext(){return this._to<this._valueLen}next(){this._from=this._to;let a=!0;for(;this._to<this._valueLen;this._to++){let b=this._value.charCodeAt(this._to);if(47===b||this._splitOnBackslash&&92===b)if(a)this._from++;else break;else a=!1}return this}cmp(a){return this._caseSensitive?(0,e.lF)(a,this._value,0,a.length,this._from,this._to):(0,e.zd)(a,this._value,0,a.length,this._from,this._to)}value(){return this._value.substring(this._from,this._to)}}class i{constructor(a,b){this._ignorePathCasing=a,this._ignoreQueryAndFragment=b,this._states=[],this._stateIdx=0}reset(a){return this._value=a,this._states=[],this._value.scheme&&this._states.push(1),this._value.authority&&this._states.push(2),this._value.path&&(this._pathIterator=new h(!1,!this._ignorePathCasing(a)),this._pathIterator.reset(a.path),this._pathIterator.value()&&this._states.push(3)),!this._ignoreQueryAndFragment(a)&&(this._value.query&&this._states.push(4),this._value.fragment&&this._states.push(5)),this._stateIdx=0,this}next(){return 3===this._states[this._stateIdx]&&this._pathIterator.hasNext()?this._pathIterator.next():this._stateIdx+=1,this}hasNext(){return 3===this._states[this._stateIdx]&&this._pathIterator.hasNext()||this._stateIdx<this._states.length-1}cmp(a){if(1===this._states[this._stateIdx])return(0,e.W1)(a,this._value.scheme);if(2===this._states[this._stateIdx])return(0,e.W1)(a,this._value.authority);if(3===this._states[this._stateIdx])return this._pathIterator.cmp(a);if(4===this._states[this._stateIdx])return(0,e.UD)(a,this._value.query);if(5===this._states[this._stateIdx])return(0,e.UD)(a,this._value.fragment);throw Error()}value(){if(1===this._states[this._stateIdx])return this._value.scheme;if(2===this._states[this._stateIdx])return this._value.authority;if(3===this._states[this._stateIdx])return this._pathIterator.value();if(4===this._states[this._stateIdx])return this._value.query;if(5===this._states[this._stateIdx])return this._value.fragment;throw Error()}}class j{static{this.Val=Symbol("undefined_placeholder")}static wrap(a){return void 0===a?j.Val:a}static unwrap(a){return a===j.Val?void 0:a}}class k{constructor(){this.height=1,this.value=void 0,this.key=void 0,this.left=void 0,this.mid=void 0,this.right=void 0}rotateLeft(){let a=this.right;return this.right=a.left,a.left=this,this.updateHeight(),a.updateHeight(),a}rotateRight(){let a=this.left;return this.left=a.right,a.right=this,this.updateHeight(),a.updateHeight(),a}updateHeight(){this.height=1+Math.max(this.heightLeft,this.heightRight)}balanceFactor(){return this.heightRight-this.heightLeft}get heightLeft(){return this.left?.height??0}get heightRight(){return this.right?.height??0}}class l{static forUris(a=()=>!1,b=()=>!1){return new l(new i(a,b))}static forStrings(){return new l(new f)}static forConfigKeys(){return new l(new g)}constructor(a){this._iter=a}clear(){this._root=void 0}set(a,b){let c,d=this._iter.reset(a);this._root||(this._root=new k,this._root.segment=d.value());let e=[];for(c=this._root;;){let a=d.cmp(c.segment);if(a>0)c.left||(c.left=new k,c.left.segment=d.value()),e.push([-1,c]),c=c.left;else if(a<0)c.right||(c.right=new k,c.right.segment=d.value()),e.push([1,c]),c=c.right;else if(d.hasNext())d.next(),c.mid||(c.mid=new k,c.mid.segment=d.value()),e.push([0,c]),c=c.mid;else break}let f=j.unwrap(c.value);c.value=j.wrap(b),c.key=a;for(let a=e.length-1;a>=0;a--){let b=e[a][1];b.updateHeight();let c=b.balanceFactor();if(c<-1||c>1){let c=e[a][0],d=e[a+1][0];if(1===c&&1===d)e[a][1]=b.rotateLeft();else if(-1===c&&-1===d)e[a][1]=b.rotateRight();else if(1===c&&-1===d)b.right=e[a+1][1]=e[a+1][1].rotateRight(),e[a][1]=b.rotateLeft();else if(-1===c&&1===d)b.left=e[a+1][1]=e[a+1][1].rotateLeft(),e[a][1]=b.rotateRight();else throw Error();if(a>0)switch(e[a-1][0]){case -1:e[a-1][1].left=e[a][1];break;case 1:e[a-1][1].right=e[a][1];break;case 0:e[a-1][1].mid=e[a][1]}else this._root=e[0][1]}}return f}get(a){return j.unwrap(this._getNode(a)?.value)}_getNode(a){let b=this._iter.reset(a),c=this._root;for(;c;){let a=b.cmp(c.segment);if(a>0)c=c.left;else if(a<0)c=c.right;else if(b.hasNext())b.next(),c=c.mid;else break}return c}has(a){let b=this._getNode(a);return b?.value!==void 0||b?.mid!==void 0}delete(a){return this._delete(a,!1)}deleteSuperstr(a){return this._delete(a,!0)}_delete(a,b){let c=this._iter.reset(a),e=[],f=this._root;for(;f;){let a=c.cmp(f.segment);if(a>0)e.push([-1,f]),f=f.left;else if(a<0)e.push([1,f]),f=f.right;else if(c.hasNext())c.next(),e.push([0,f]),f=f.mid;else break}if(f){if(b?(f.left=void 0,f.mid=void 0,f.right=void 0,f.height=1):(f.key=void 0,f.value=void 0),!f.mid&&!f.value)if(f.left&&f.right){let a=[[1,f]],b=this._min(f.right,a);if(b.key){f.key=b.key,f.value=b.value,f.segment=b.segment;let c=b.right;if(a.length>1){let[b,e]=a[a.length-1];switch(b){case -1:e.left=c;break;case 0:(0,d.vA)(!1);case 1:(0,d.vA)(!1)}}else f.right=c;let g=this._balanceByStack(a);if(e.length>0){let[a,b]=e[e.length-1];switch(a){case -1:b.left=g;break;case 0:b.mid=g;break;case 1:b.right=g}}else this._root=g}}else{let a=f.left??f.right;if(e.length>0){let[b,c]=e[e.length-1];switch(b){case -1:c.left=a;break;case 0:c.mid=a;break;case 1:c.right=a}}else this._root=a}this._root=this._balanceByStack(e)??this._root}}_min(a,b){for(;a.left;)b.push([-1,a]),a=a.left;return a}_balanceByStack(a){for(let b=a.length-1;b>=0;b--){let c=a[b][1];c.updateHeight();let d=c.balanceFactor();if(d>1?(c.right.balanceFactor()>=0||(c.right=c.right.rotateRight()),a[b][1]=c.rotateLeft()):d<-1&&(0>=c.left.balanceFactor()||(c.left=c.left.rotateLeft()),a[b][1]=c.rotateRight()),!(b>0))return a[0][1];switch(a[b-1][0]){case -1:a[b-1][1].left=a[b][1];break;case 1:a[b-1][1].right=a[b][1];break;case 0:a[b-1][1].mid=a[b][1]}}}findSubstr(a){let b,c=this._iter.reset(a),d=this._root;for(;d;){let a=c.cmp(d.segment);if(a>0)d=d.left;else if(a<0)d=d.right;else if(c.hasNext())c.next(),b=j.unwrap(d.value)||b,d=d.mid;else break}return d&&j.unwrap(d.value)||b}findSuperstr(a){return this._findSuperstrOrElement(a,!1)}_findSuperstrOrElement(a,b){let c=this._iter.reset(a),d=this._root;for(;d;){let a=c.cmp(d.segment);if(a>0)d=d.left;else if(a<0)d=d.right;else if(c.hasNext())c.next(),d=d.mid;else if(d.mid)return this._entries(d.mid);else if(b)return j.unwrap(d.value);else break}}forEach(a){for(let[b,c]of this)a(c,b)}*[Symbol.iterator](){yield*this._entries(this._root)}_entries(a){let b=[];return this._dfsEntries(a,b),b[Symbol.iterator]()}_dfsEntries(a,b){a&&(a.left&&this._dfsEntries(a.left,b),void 0!==a.value&&b.push([a.key,j.unwrap(a.value)]),a.mid&&this._dfsEntries(a.mid,b),a.right&&this._dfsEntries(a.right,b))}}},19497:(a,b,c)=>{"use strict";c.d(b,{Fd:()=>l,Gv:()=>H,rC:()=>G});var d=c(42891),e=c(3457),f=c(98896),g=c(76302),h=c(55066),i=c(17477),j=c(53764),k=c(40201);let l={Configuration:"base.contributions.configuration"},m={},n={},o={},p={},q={},r={},s={},t={},u={},v={},w={},x={},y={},z={},A="vscode://schemas/settings/resourceLanguage",B=j.O.as(i.F.JSONContribution);class C extends k.jG{constructor(){super(),this.registeredConfigurationDefaults=[],this.overrideIdentifiers=new Set,this._onDidSchemaChange=this._register(new e.vl),this._onDidUpdateConfiguration=this._register(new e.vl),this.configurationDefaultsOverrides=new Map,this.defaultLanguageConfigurationOverridesNode={id:"defaultOverrides",title:g.kg(1649,"Default Language Configuration Overrides"),properties:{}},this.configurationContributors=[this.defaultLanguageConfigurationOverridesNode],this.resourceLanguageSettingsSchema={properties:{},patternProperties:{},additionalProperties:!0,allowTrailingCommas:!0,allowComments:!0},this.configurationProperties={},this.policyConfigurations=new Map,this.excludedConfigurationProperties={},B.registerSchema(A,this.resourceLanguageSettingsSchema),this.registerOverridePropertyPatternKey()}registerConfiguration(a,b=!0){return this.registerConfigurations([a],b),a}registerConfigurations(a,b=!0){let c=new Set;this.doRegisterConfigurations(a,b,c),B.registerSchema(A,this.resourceLanguageSettingsSchema),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire({properties:c})}registerDefaultConfigurations(a){let b=new Set;this.doRegisterDefaultConfigurations(a,b),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire({properties:b,defaultsOverrides:!0})}doRegisterDefaultConfigurations(a,b){this.registeredConfigurationDefaults.push(...a);let c=[];for(let{overrides:d,source:e}of a)for(let a in d){b.add(a);let f=this.configurationDefaultsOverrides.get(a)??this.configurationDefaultsOverrides.set(a,{configurationDefaultOverrides:[]}).get(a),g=d[a];if(f.configurationDefaultOverrides.push({value:g,source:e}),G.test(a)){let b=this.mergeDefaultConfigurationsForOverrideIdentifier(a,g,e,f.configurationDefaultOverrideValue);if(!b)continue;f.configurationDefaultOverrideValue=b,this.updateDefaultOverrideProperty(a,b,e),c.push(...H(a))}else{let b=this.mergeDefaultConfigurationsForConfigurationProperty(a,g,e,f.configurationDefaultOverrideValue);if(!b)continue;f.configurationDefaultOverrideValue=b;let c=this.configurationProperties[a];c&&(this.updatePropertyDefaultValue(a,c),this.updateSchema(a,c))}}this.doRegisterOverrideIdentifiers(c)}updateDefaultOverrideProperty(a,b,c){let d={type:"object",default:b.value,description:g.kg(1650,"Configure settings to be overridden for {0}.",(0,h.Mo)(a)),$ref:A,defaultDefaultValue:b.value,source:c,defaultValueSource:c};this.configurationProperties[a]=d,this.defaultLanguageConfigurationOverridesNode.properties[a]=d}mergeDefaultConfigurationsForOverrideIdentifier(a,b,c,d){let e=d?.value||{},g=d?.source??new Map;if(!(g instanceof Map))return void console.error("objectConfigurationSources is not a Map");for(let a of Object.keys(b)){let d=b[a];if(f.Gv(d)&&(f.b0(e[a])||f.Gv(e[a]))){if(e[a]={...e[a]??{},...d},c)for(let b in d)g.set(`${a}.${b}`,c)}else e[a]=d,c?g.set(a,c):g.delete(a)}return{value:e,source:g}}mergeDefaultConfigurationsForConfigurationProperty(a,b,c,d){let e=this.configurationProperties[a],g=d?.value??e?.defaultDefaultValue,h=c;if(f.Gv(b)&&(void 0!==e&&"object"===e.type||void 0===e&&(f.b0(g)||f.Gv(g)))){if(!((h=d?.source??new Map)instanceof Map))return void console.error("defaultValueSource is not a Map");for(let d in b)c&&h.set(`${a}.${d}`,c);b={...f.Gv(g)?g:{},...b}}return{value:b,source:h}}registerOverrideIdentifiers(a){this.doRegisterOverrideIdentifiers(a),this._onDidSchemaChange.fire()}doRegisterOverrideIdentifiers(a){for(let b of a)this.overrideIdentifiers.add(b);this.updateOverridePropertyPatternKey()}doRegisterConfigurations(a,b,c){a.forEach(a=>{this.validateAndRegisterProperties(a,b,a.extensionInfo,a.restrictedProperties,void 0,c),this.configurationContributors.push(a),this.registerJSONConfiguration(a)})}validateAndRegisterProperties(a,b=!0,c,d,e=4,h){e=f.z(a.scope)?e:a.scope;let i=a.properties;if(i)for(let a in i){var j,k;let l=i[a];if(b&&(j=a,k=l,j.trim()?G.test(j)?g.kg(1656,"Cannot register '{0}'. This matches property pattern '\\\\[.*\\\\]$' for describing language specific editor settings. Use 'configurationDefaults' contribution.",j):void 0!==I.getConfigurationProperties()[j]?g.kg(1657,"Cannot register '{0}'. This property is already registered.",j):k.policy?.name&&void 0!==I.getPolicyConfigurations().get(k.policy?.name)?g.kg(1658,"Cannot register '{0}'. The associated policy {1} is already registered with {2}.",j,k.policy?.name,I.getPolicyConfigurations().get(k.policy?.name)):null:g.kg(1655,"Cannot register an empty property"))){delete i[a];continue}l.source=c,l.defaultDefaultValue=i[a].default,this.updatePropertyDefaultValue(a,l),G.test(a)?l.scope=void 0:(l.scope=f.z(l.scope)?e:l.scope,l.restricted=f.z(l.restricted)?!!d?.includes(a):l.restricted),l.experiment?l.tags?.some(a=>"onexp"===a.toLowerCase())||(l.tags=l.tags??[],l.tags.push("onExP")):l.tags?.some(a=>"onexp"===a.toLowerCase())&&(console.error(`Invalid tag 'onExP' found for property '${a}'. Please use 'experiment' property instead.`),l.experiment={mode:"startup"});let m=i[a].hasOwnProperty("included")&&!i[a].included,n=i[a].policy?.name;m?(this.excludedConfigurationProperties[a]=i[a],n&&(this.policyConfigurations.set(n,a),h.add(a)),delete i[a]):(h.add(a),n&&this.policyConfigurations.set(n,a),this.configurationProperties[a]=i[a],!i[a].deprecationMessage&&i[a].markdownDeprecationMessage&&(i[a].deprecationMessage=i[a].markdownDeprecationMessage))}let l=a.allOf;if(l)for(let a of l)this.validateAndRegisterProperties(a,b,c,d,e,h)}getConfigurationProperties(){return this.configurationProperties}getPolicyConfigurations(){return this.policyConfigurations}getExcludedConfigurationProperties(){return this.excludedConfigurationProperties}registerJSONConfiguration(a){let b=a=>{let c=a.properties;if(c)for(let a in c)this.updateSchema(a,c[a]);let d=a.allOf;d?.forEach(b)};b(a)}updateSchema(a,b){switch(m[a]=b,b.scope){case 1:o[a]=b;break;case 2:s[a]=b;break;case 3:q[a]=b;break;case 7:u[a]=b;break;case 4:w[a]=b;break;case 5:y[a]=b;break;case 6:y[a]=b,this.resourceLanguageSettingsSchema.properties[a]=b}}updateOverridePropertyPatternKey(){for(let a of this.overrideIdentifiers.values()){let b=`[${a}]`,c={type:"object",description:g.kg(1651,"Configure editor settings to be overridden for a language."),errorMessage:g.kg(1652,"This setting does not support per-language configuration."),$ref:A};this.updatePropertyDefaultValue(b,c),m[b]=c,o[b]=c,q[b]=c,s[b]=c,u[b]=c,w[b]=c,y[b]=c}}registerOverridePropertyPatternKey(){let a={type:"object",description:g.kg(1653,"Configure editor settings to be overridden for a language."),errorMessage:g.kg(1654,"This setting does not support per-language configuration."),$ref:A};n[F]=a,p[F]=a,r[F]=a,t[F]=a,v[F]=a,x[F]=a,z[F]=a,this._onDidSchemaChange.fire()}updatePropertyDefaultValue(a,b){let c,d,e=this.configurationDefaultsOverrides.get(a)?.configurationDefaultOverrideValue;!e||b.disallowConfigurationDefault&&e.source||(c=e.value,d=e.source),f.b0(c)&&(c=b.defaultDefaultValue,d=void 0),f.b0(c)&&(c=function(a){switch(Array.isArray(a)?a[0]:a){case"boolean":return!1;case"integer":case"number":return 0;case"string":return"";case"array":return[];case"object":return{};default:return null}}(b.type)),b.default=c,b.defaultValueSource=d}}let D="\\[([^\\]]+)\\]",E=RegExp(D,"g"),F=`^(${D})+$`,G=new RegExp(F);function H(a){let b=[];if(G.test(a)){let c=E.exec(a);for(;c?.length;){let d=c[1].trim();d&&b.push(d),c=E.exec(a)}}return(0,d.dM)(b)}let I=new C;j.O.add(l.Configuration,I)},19929:(a,b,c)=>{"use strict";let d;function e(a){d?d instanceof h?d.loggers.push(a):d=new h([d,a]):d=a}function f(){return d}function g(a){}c.d(b,{EJ:()=>e,YQ:()=>g,tZ:()=>f});class h{constructor(a){this.loggers=a}handleObservableCreated(a,b){for(let c of this.loggers)c.handleObservableCreated(a,b)}handleOnListenerCountChanged(a,b){for(let c of this.loggers)c.handleOnListenerCountChanged(a,b)}handleObservableUpdated(a,b){for(let c of this.loggers)c.handleObservableUpdated(a,b)}handleAutorunCreated(a,b){for(let c of this.loggers)c.handleAutorunCreated(a,b)}handleAutorunDisposed(a){for(let b of this.loggers)b.handleAutorunDisposed(a)}handleAutorunDependencyChanged(a,b,c){for(let d of this.loggers)d.handleAutorunDependencyChanged(a,b,c)}handleAutorunStarted(a){for(let b of this.loggers)b.handleAutorunStarted(a)}handleAutorunFinished(a){for(let b of this.loggers)b.handleAutorunFinished(a)}handleDerivedDependencyChanged(a,b,c){for(let d of this.loggers)d.handleDerivedDependencyChanged(a,b,c)}handleDerivedCleared(a){for(let b of this.loggers)b.handleDerivedCleared(a)}handleBeginTransaction(a){for(let b of this.loggers)b.handleBeginTransaction(a)}handleEndTransaction(a){for(let b of this.loggers)b.handleEndTransaction(a)}}},20069:(a,b,c)=>{"use strict";c.d(b,{Io:()=>h,J3:()=>f,Ld:()=>g,Th:()=>function a(b,c,e,f,g){if(c=h(c),g||(g=d.f.first(i)),e.length>g.maxLen){let d=b-g.maxLen/2;return d<0?d=0:f+=d,e=e.substring(d,b+g.maxLen/2),a(b,c,e,f,g)}let j=Date.now(),k=b-1-f,l=-1,m=null;for(let a=1;!(Date.now()-j>=g.timeBudget);a++){let b=k-g.windowSize*a;c.lastIndex=Math.max(0,b);let d=function(a,b,c,d){let e;for(;e=a.exec(b);){let b=e.index||0;if(b<=c&&a.lastIndex>=c)return e;if(d>0&&b>d)break}return null}(c,e,k,l);if(!d&&m||(m=d,b<=0))break;l=b}if(m){let a={word:m[0],startColumn:f+1+m.index,endColumn:f+1+m.index+m[0].length};return c.lastIndex=0,a}return null}});var d=c(78771),e=c(57832);let f="`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?",g=function(a=""){let b="(-?\\d*\\.\\d\\w*)|([^";for(let c of f)a.indexOf(c)>=0||(b+="\\"+c);return RegExp(b+="\\s]+)","g")}();function h(a){let b=g;if(a&&a instanceof RegExp)if(a.global)b=a;else{let c="g";a.ignoreCase&&(c+="i"),a.multiline&&(c+="m"),a.unicode&&(c+="u"),b=new RegExp(a.source,c)}return b.lastIndex=0,b}let i=new e.w;i.unshift({maxLen:1e3,windowSize:15,timeBudget:150})},20393:(a,b,c)=>{"use strict";c.d(b,{P:()=>l,k:()=>m});var d=c(51864),e=c(77747),f=c(66064),g=c(52212),h=c(12010),i=c(70249),j=c(52376),k=c(88586);class l extends h._{constructor(a,b){super(),this.textModel=a,this.languageConfigurationService=b}getLanguageConfiguration(a){return this.languageConfigurationService.getLanguageConfiguration(a)}_computeIndentLevel(a){return(0,i.G)(this.textModel.getLineContent(a+1),this.textModel.getOptions().tabSize)}getActiveIndentGuide(a,b,c){this.assertNotDisposed();let d=this.textModel.getLineCount();if(a<1||a>d)throw new k.D7("Illegal value for lineNumber");let e=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,f=!!(e&&e.offSide),g=-2,h=-1,i=-2,j=-1,l=a=>{if(-1!==g&&(-2===g||g>a-1)){g=-1,h=-1;for(let b=a-2;b>=0;b--){let a=this._computeIndentLevel(b);if(a>=0){g=b,h=a;break}}}if(-2===i){i=-1,j=-1;for(let b=a;b<d;b++){let a=this._computeIndentLevel(b);if(a>=0){i=b,j=a;break}}}},m=-2,n=-1,o=-2,p=-1,q=a=>{if(-2===m){m=-1,n=-1;for(let b=a-2;b>=0;b--){let a=this._computeIndentLevel(b);if(a>=0){m=b,n=a;break}}}if(-1!==o&&(-2===o||o<a-1)){o=-1,p=-1;for(let b=a;b<d;b++){let a=this._computeIndentLevel(b);if(a>=0){o=b,p=a;break}}}},r=0,s=!0,t=0,u=!0,v=0,w=0;for(let e=0;s||u;e++){let g=a-e,k=a+e;e>1&&(g<1||g<b)&&(s=!1),e>1&&(k>d||k>c)&&(u=!1),e>5e4&&(s=!1,u=!1);let o=-1;if(s&&g>=1){let a=this._computeIndentLevel(g-1);a>=0?(i=g-1,j=a,o=Math.ceil(a/this.textModel.getOptions().indentSize)):(l(g),o=this._getIndentLevelForWhitespaceLine(f,h,j))}let x=-1;if(u&&k<=d){let a=this._computeIndentLevel(k-1);a>=0?(m=k-1,n=a,x=Math.ceil(a/this.textModel.getOptions().indentSize)):(q(k),x=this._getIndentLevelForWhitespaceLine(f,n,p))}if(0===e){w=o;continue}if(1===e){if(k<=d&&x>=0&&w+1===x){s=!1,r=k,t=k,v=x;continue}if(g>=1&&o>=0&&o-1===w){u=!1,r=g,t=g,v=o;continue}if(r=a,t=a,0===(v=w))break}s&&(o>=v?r=g:s=!1),u&&(x>=v?t=k:u=!1)}return{startLineNumber:r,endLineNumber:t,indent:v}}getLinesBracketGuides(a,b,c,f){let h,i=[];for(let c=a;c<=b;c++)i.push([]);let k=this.textModel.bracketPairs.getBracketPairsInRangeWithMinIndentation(new g.Q(a,1,b,this.textModel.getLineMaxColumn(b))).toArray();if(c&&k.length>0){let e=(a<=c.lineNumber&&c.lineNumber<=b?k:this.textModel.bracketPairs.getBracketPairsInRange(g.Q.fromPositions(c)).toArray()).filter(a=>g.Q.strictContainsPosition(a.range,c));h=(0,d.Uk)(e,a=>!0)?.range}let l=this.textModel.getOptions().bracketPairColorizationOptions.independentColorPoolPerBracketType,n=new m;for(let c of k){if(!c.closingBracketRange)continue;let d=h&&c.range.equalsRange(h);if(!d&&!f.includeInactive)continue;let g=n.getInlineClassName(c.nestingLevel,c.nestingLevelOfEqualBracketType,l)+(f.highlightActive&&d?" "+n.activeClassName:""),k=c.openingBracketRange.getStartPosition(),m=c.closingBracketRange.getStartPosition(),o=f.horizontalGuides===j.N6.Enabled||f.horizontalGuides===j.N6.EnabledForActive&&d;if(c.range.startLineNumber===c.range.endLineNumber){o&&i[c.range.startLineNumber-a].push(new j.TH(-1,c.openingBracketRange.getEndPosition().column,g,new j.pv(!1,m.column),-1,-1));continue}let p=this.getVisibleColumnFromPosition(m),q=this.getVisibleColumnFromPosition(c.openingBracketRange.getStartPosition()),r=Math.min(q,p,c.minVisibleColumnIndentation+1),s=!1;e.HG(this.textModel.getLineContent(c.closingBracketRange.startLineNumber))<c.closingBracketRange.startColumn-1&&(s=!0);let t=Math.max(k.lineNumber,a),u=Math.min(m.lineNumber,b),v=+!!s;for(let b=t;b<u+v;b++)i[b-a].push(new j.TH(r,-1,g,null,b===k.lineNumber?k.column:-1,b===m.lineNumber?m.column:-1));o&&(k.lineNumber>=a&&q>r&&i[k.lineNumber-a].push(new j.TH(r,-1,g,new j.pv(!1,k.column),-1,-1)),m.lineNumber<=b&&p>r&&i[m.lineNumber-a].push(new j.TH(r,-1,g,new j.pv(!s,m.column),-1,-1)))}for(let a of i)a.sort((a,b)=>a.visibleColumn-b.visibleColumn);return i}getVisibleColumnFromPosition(a){return f.A.visibleColumnFromColumn(this.textModel.getLineContent(a.lineNumber),a.column,this.textModel.getOptions().tabSize)+1}getLinesIndentGuides(a,b){this.assertNotDisposed();let c=this.textModel.getLineCount();if(a<1||a>c)throw Error("Illegal value for startLineNumber");if(b<1||b>c)throw Error("Illegal value for endLineNumber");let d=this.textModel.getOptions(),e=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,f=!!(e&&e.offSide),g=Array(b-a+1),h=-2,i=-1,j=-2,k=-1;for(let e=a;e<=b;e++){let b=e-a,l=this._computeIndentLevel(e-1);if(l>=0){h=e-1,i=l,g[b]=Math.ceil(l/d.indentSize);continue}if(-2===h){h=-1,i=-1;for(let a=e-2;a>=0;a--){let b=this._computeIndentLevel(a);if(b>=0){h=a,i=b;break}}}if(-1!==j&&(-2===j||j<e-1)){j=-1,k=-1;for(let a=e;a<c;a++){let b=this._computeIndentLevel(a);if(b>=0){j=a,k=b;break}}}g[b]=this._getIndentLevelForWhitespaceLine(f,i,k)}return g}_getIndentLevelForWhitespaceLine(a,b,c){let d=this.textModel.getOptions();return -1===b||-1===c?0:b<c?1+Math.floor(b/d.indentSize):b===c?Math.ceil(c/d.indentSize):a?Math.ceil(c/d.indentSize):1+Math.floor(c/d.indentSize)}}class m{constructor(){this.activeClassName="indent-active"}getInlineClassName(a,b,c){return this.getInlineClassNameOfLevel(c?b:a)}getInlineClassNameOfLevel(a){return`bracket-indent-guide lvl-${a%30}`}}},20676:()=>{},20940:(a,b,c)=>{"use strict";c.d(b,{q:()=>e});class d{constructor(){this._nativeEditContextMapping=new Map}register(a,b){return this._nativeEditContextMapping.set(a,b),{dispose:()=>{this._nativeEditContextMapping.delete(a)}}}get(a){return this._nativeEditContextMapping.get(a)}}let e=new d},21234:(a,b,c)=>{"use strict";c.d(b,{b:()=>d});class d{static equals(a,b){return a.x===b.x&&a.y===b.y}constructor(a,b){this.x=a,this.y=b}add(a){return new d(this.x+a.x,this.y+a.y)}deltaX(a){return new d(this.x+a,this.y)}deltaY(a){return new d(this.x,this.y+a)}toString(){return`(${this.x},${this.y})`}subtract(a){return new d(this.x-a.x,this.y-a.y)}scale(a){return new d(this.x*a,this.y*a)}mapComponents(a){return new d(a(this.x),a(this.y))}isZero(){return 0===this.x&&0===this.y}withThreshold(a){return this.mapComponents(b=>b>a?b-a:b<-a?b+a:0)}}},21410:(a,b,c)=>{"use strict";c.d(b,{M:()=>e});var d=c(69626);function e(a,b){a instanceof d.D?(a.setFontFamily(b.getMassagedFontFamily()),a.setFontWeight(b.fontWeight),a.setFontSize(b.fontSize),a.setFontFeatureSettings(b.fontFeatureSettings),a.setFontVariationSettings(b.fontVariationSettings),a.setLineHeight(b.lineHeight),a.setLetterSpacing(b.letterSpacing)):(a.style.fontFamily=b.getMassagedFontFamily(),a.style.fontWeight=b.fontWeight,a.style.fontSize=b.fontSize+"px",a.style.fontFeatureSettings=b.fontFeatureSettings,a.style.fontVariationSettings=b.fontVariationSettings,a.style.lineHeight=b.lineHeight+"px",a.style.letterSpacing=b.letterSpacing+"px")}},21452:(a,b,c)=>{"use strict";c.d(b,{k:()=>e,o:()=>f});var d=c(52212);class e{constructor(a,b,c){this.range=a,this.inlineClassName=b,this.type=c}}class f{constructor(a,b,c,d){this.startOffset=a,this.endOffset=b,this.inlineClassName=c,this.inlineClassNameAffectsLetterSpacing=d}toInlineDecoration(a){return new e(new d.Q(a,this.startOffset+1,a,this.endOffset+1),this.inlineClassName,3*!!this.inlineClassNameAffectsLetterSpacing)}}},21652:(a,b,c)=>{"use strict";var d,e;c.d(b,{_$:()=>d,_Y:()=>f,u1:()=>g}),(e=d||(d={})).serviceIds=new Map,e.DI_TARGET="$di$target",e.DI_DEPENDENCIES="$di$dependencies",e.getServiceDependencies=function(a){return a[e.DI_DEPENDENCIES]||[]};let f=g("instantiationService");function g(a){if(d.serviceIds.has(a))return d.serviceIds.get(a);let b=function(a,c,e){if(3!=arguments.length)throw Error("@IServiceName-decorator can only be used to decorate a parameter");a[d.DI_TARGET]===a?a[d.DI_DEPENDENCIES].push({id:b,index:e}):(a[d.DI_DEPENDENCIES]=[{id:b,index:e}],a[d.DI_TARGET]=a)};return b.toString=()=>a,d.serviceIds.set(a,b),b}},21761:(a,b,c)=>{"use strict";c.d(b,{u:()=>d});let d=(0,c(21652).u1)("ILanguageFeaturesService")},21790:()=>{},21799:(a,b,c)=>{"use strict";c.d(b,{YJ:()=>i,_8:()=>h});var d=c(19254),e=c(64825),f=c(41672);let g=d.zx?1.5:1.35;class h{static createFromValidatedSettings(a,b,c){let d=a.get(58),e=a.get(62),f=a.get(61),g=a.get(60),i=a.get(63),j=a.get(75),k=a.get(72);return h._create(d,e,f,g,i,j,k,b,c)}static _create(a,b,c,d,i,j,k,l,m){0===j?j=g*c:j<8&&(j*=c),(j=Math.round(j))<8&&(j=8);let n=1+(m?0:.1*f.D.getZoomLevel());if(c*=n,j*=n,i===e.r_.TRANSLATE)if("normal"===b||"bold"===b)i=e.r_.OFF;else{let a=parseInt(b,10);i=`'wght' ${a}`,b="normal"}return new h({pixelRatio:l,fontFamily:a,fontWeight:b,fontSize:c,fontFeatureSettings:d,fontVariationSettings:i,lineHeight:j,letterSpacing:k})}constructor(a){this._bareFontInfoBrand=void 0,this.pixelRatio=a.pixelRatio,this.fontFamily=String(a.fontFamily),this.fontWeight=String(a.fontWeight),this.fontSize=a.fontSize,this.fontFeatureSettings=a.fontFeatureSettings,this.fontVariationSettings=a.fontVariationSettings,this.lineHeight=0|a.lineHeight,this.letterSpacing=a.letterSpacing}getId(){return`${this.pixelRatio}-${this.fontFamily}-${this.fontWeight}-${this.fontSize}-${this.fontFeatureSettings}-${this.fontVariationSettings}-${this.lineHeight}-${this.letterSpacing}`}getMassagedFontFamily(){let a=e.jU.fontFamily,b=h._wrapInQuotes(this.fontFamily);return a&&this.fontFamily!==a?`${b}, ${a}`:b}static _wrapInQuotes(a){return/[,"']/.test(a)?a:/[+ ]/.test(a)?`"${a}"`:a}}class i extends h{constructor(a,b){super(a),this._editorStylingBrand=void 0,this.version=2,this.isTrusted=b,this.isMonospace=a.isMonospace,this.typicalHalfwidthCharacterWidth=a.typicalHalfwidthCharacterWidth,this.typicalFullwidthCharacterWidth=a.typicalFullwidthCharacterWidth,this.canUseHalfwidthRightwardsArrow=a.canUseHalfwidthRightwardsArrow,this.spaceWidth=a.spaceWidth,this.middotWidth=a.middotWidth,this.wsmiddotWidth=a.wsmiddotWidth,this.maxDigitWidth=a.maxDigitWidth}equals(a){return this.fontFamily===a.fontFamily&&this.fontWeight===a.fontWeight&&this.fontSize===a.fontSize&&this.fontFeatureSettings===a.fontFeatureSettings&&this.fontVariationSettings===a.fontVariationSettings&&this.lineHeight===a.lineHeight&&this.letterSpacing===a.letterSpacing&&this.typicalHalfwidthCharacterWidth===a.typicalHalfwidthCharacterWidth&&this.typicalFullwidthCharacterWidth===a.typicalFullwidthCharacterWidth&&this.canUseHalfwidthRightwardsArrow===a.canUseHalfwidthRightwardsArrow&&this.spaceWidth===a.spaceWidth&&this.middotWidth===a.middotWidth&&this.wsmiddotWidth===a.wsmiddotWidth&&this.maxDigitWidth===a.maxDigitWidth}}},22285:(a,b,c)=>{"use strict";c.d(b,{J:()=>g,k:()=>f});var d=c(98896);let e=Object.create(null);function f(a,b){if((0,d.Kg)(b)){let c=e[b];if(void 0===c)throw Error(`${a} references an unknown codicon: ${b}`);b=c}return e[a]=b,{id:a}}function g(){return e}},22360:(a,b,c)=>{"use strict";c.d(b,{a:()=>d,w:()=>e});let d=(0,c(21652).u1)("dataChannelService");class e{getDataChannel(a){return{sendData:()=>{}}}}},23293:(a,b,c)=>{"use strict";c.d(b,{c:()=>j});var d=c(63048),e=c(3457),f=c(40201);class g extends f.jG{constructor(a){super(),this._onDidChange=this._register(new e.vl),this.onDidChange=this._onDidChange.event,this._listener=()=>this._handleChange(a,!0),this._mediaQueryList=null,this._handleChange(a,!1)}_handleChange(a,b){this._mediaQueryList?.removeEventListener("change",this._listener),this._mediaQueryList=a.matchMedia(`(resolution: ${a.devicePixelRatio}dppx)`),this._mediaQueryList.addEventListener("change",this._listener),b&&this._onDidChange.fire()}}class h extends f.jG{get value(){return this._value}constructor(a){super(),this._onDidChange=this._register(new e.vl),this.onDidChange=this._onDidChange.event,this._value=this._getPixelRatio(a);const b=this._register(new g(a));this._register(b.onDidChange(()=>{this._value=this._getPixelRatio(a),this._onDidChange.fire(this._value)}))}_getPixelRatio(a){let b=document.createElement("canvas").getContext("2d");return(a.devicePixelRatio||1)/(b.webkitBackingStorePixelRatio||b.mozBackingStorePixelRatio||b.msBackingStorePixelRatio||b.oBackingStorePixelRatio||b.backingStorePixelRatio||1)}}class i{constructor(){this.mapWindowIdToPixelRatioMonitor=new Map}_getOrCreatePixelRatioMonitor(a){let b=(0,d.Q2)(a),c=this.mapWindowIdToPixelRatioMonitor.get(b);return c||(c=(0,f.lC)(new h(a)),this.mapWindowIdToPixelRatioMonitor.set(b,c),(0,f.lC)(e.Jh.once(d.Fv)(({vscodeWindowId:a})=>{a===b&&(c?.dispose(),this.mapWindowIdToPixelRatioMonitor.delete(b))}))),c}getInstance(a){return this._getOrCreatePixelRatioMonitor(a)}}let j=new i},23496:(a,b,c)=>{"use strict";c.d(b,{W:()=>m,m:()=>l});var d=c(42891),e=c(29139),f=c(88586),g=c(77747),h=c(95554),i=c(52212),j=c(53918),k=c(85268);class l{static fromStringEdit(a,b){return new l(a.replacements.map(a=>m.fromStringReplacement(a,b)))}static fromParallelReplacementsUnsorted(a){return new l(a.slice().sort((0,d.VE)(a=>a.range,i.Q.compareRangesUsingStarts)))}constructor(a){this.replacements=a,(0,e.Ft)(()=>(0,e.Xo)(a,(a,b)=>a.range.getEndPosition().isBeforeOrEqual(b.range.getStartPosition())))}mapPosition(a){let b=0,c=0,d=0;for(let e of this.replacements){let f=e.range.getStartPosition();if(a.isBeforeOrEqual(f))break;let g=e.range.getEndPosition(),i=j.W.ofText(e.text);if(a.isBefore(g)){let a=new h.y(f.lineNumber+b,f.column+(f.lineNumber+b===c?d:0)),e=i.addToPosition(a);return n(a,e)}f.lineNumber+b!==c&&(d=0),b+=i.lineCount-(e.range.endLineNumber-e.range.startLineNumber),0===i.lineCount?g.lineNumber!==f.lineNumber?d+=i.columnCount-(g.column-1):d+=i.columnCount-(g.column-f.column):d=i.columnCount,c=g.lineNumber+b}return new h.y(a.lineNumber+b,a.column+(a.lineNumber+b===c?d:0))}mapRange(a){var b,c;return n((b=this.mapPosition(a.getStartPosition()))instanceof h.y?b:b.getStartPosition(),(c=this.mapPosition(a.getEndPosition()))instanceof h.y?c:c.getEndPosition())}apply(a){let b="",c=new h.y(1,1);for(let d of this.replacements){let e=d.range,f=e.getStartPosition(),g=e.getEndPosition(),h=n(c,f);h.isEmpty()||(b+=a.getValueOfRange(h)),b+=d.text,c=g}let d=n(c,a.endPositionExclusive);return d.isEmpty()||(b+=a.getValueOfRange(d)),b}applyToString(a){let b=new k.tp(a);return this.apply(b)}getNewRanges(){let a=[],b=0,c=0,d=0;for(let e of this.replacements){let f=j.W.ofText(e.text),g=h.y.lift({lineNumber:e.range.startLineNumber+c,column:e.range.startColumn+(e.range.startLineNumber===b?d:0)}),i=f.createRange(g);a.push(i),c=i.endLineNumber-e.range.endLineNumber,d=i.endColumn-e.range.endColumn,b=e.range.endLineNumber}return a}toReplacement(a){if(0===this.replacements.length)throw new f.D7;if(1===this.replacements.length)return this.replacements[0];let b=this.replacements[0].range.getStartPosition(),c=this.replacements[this.replacements.length-1].range.getEndPosition(),d="";for(let b=0;b<this.replacements.length;b++){let c=this.replacements[b];if(d+=c.text,b<this.replacements.length-1){let e=this.replacements[b+1],f=i.Q.fromPositions(c.range.getEndPosition(),e.range.getStartPosition());d+=a.getValueOfRange(f)}}return new m(i.Q.fromPositions(b,c),d)}toString(a){return void 0===a?this.replacements.map(a=>a.toString()).join("\n"):"string"==typeof a?this.toString(new k.tp(a)):0===this.replacements.length?"":this.replacements.map(b=>{let c=a.getValueOfRange(b.range),d=i.Q.fromPositions(new h.y(Math.max(1,b.range.startLineNumber-1),1),b.range.getStartPosition()),e=a.getValueOfRange(d);e.length>10&&(e="..."+e.substring(e.length-10));let f=i.Q.fromPositions(b.range.getEndPosition(),new h.y(b.range.endLineNumber+1,1)),g=a.getValueOfRange(f);g.length>10&&(g=g.substring(0,10)+"...");let j=c;if(j.length>10){let a=Math.floor(5);j=j.substring(0,a)+"..."+j.substring(j.length-a)}let k=b.text;if(k.length>10){let a=Math.floor(5);k=k.substring(0,a)+"..."+k.substring(k.length-a)}return 0===j.length?`${e}❰${k}❱${g}`:`${e}❰${j}↦${k}❱${g}`}).join("\n")}}class m{static joinReplacements(a,b){if(0===a.length)throw new f.D7;if(1===a.length)return a[0];let c=a[0].range.getStartPosition(),d=a[a.length-1].range.getEndPosition(),e="";for(let c=0;c<a.length;c++){let d=a[c];if(e+=d.text,c<a.length-1){let f=a[c+1],g=i.Q.fromPositions(d.range.getEndPosition(),f.range.getStartPosition());e+=b.getValueOfRange(g)}}return new m(i.Q.fromPositions(c,d),e)}static fromStringReplacement(a,b){return new m(b.getTransformer().getRange(a.replaceRange),a.newText)}static delete(a){return new m(a,"")}constructor(a,b){this.range=a,this.text=b}get isEmpty(){return this.range.isEmpty()&&0===this.text.length}static equals(a,b){return a.range.equalsRange(b.range)&&a.text===b.text}equals(a){return m.equals(this,a)}removeCommonPrefixAndSuffix(a){return this.removeCommonPrefix(a).removeCommonSuffix(a)}removeCommonPrefix(a){let b=a.getValueOfRange(this.range).replaceAll("\r\n","\n"),c=this.text.replaceAll("\r\n","\n"),d=(0,g.Qp)(b,c),e=j.W.ofText(b.substring(0,d)).addToPosition(this.range.getStartPosition()),f=c.substring(d);return new m(i.Q.fromPositions(e,this.range.getEndPosition()),f)}removeCommonSuffix(a){let b=a.getValueOfRange(this.range).replaceAll("\r\n","\n"),c=this.text.replaceAll("\r\n","\n"),d=(0,g.Vi)(b,c),e=j.W.ofText(b.substring(0,b.length-d)).addToPosition(this.range.getStartPosition()),f=c.substring(0,c.length-d);return new m(i.Q.fromPositions(this.range.getStartPosition(),e),f)}toString(){let a=this.range.getStartPosition(),b=this.range.getEndPosition();return`(${a.lineNumber},${a.column} -> ${b.lineNumber},${b.column}): "${this.text}"`}}function n(a,b){if(a.lineNumber===b.lineNumber&&a.column===Number.MAX_SAFE_INTEGER)return i.Q.fromPositions(b,b);if(!a.isBeforeOrEqual(b))throw new f.D7("start must be before end");return new i.Q(a.lineNumber,a.column,b.lineNumber,b.column)}},23572:(a,b,c)=>{"use strict";c.d(b,{$D:()=>d,I_:()=>f,To:()=>e,Ym:()=>g});let d=(0,c(21652).u1)("undoRedoService");class e{constructor(a,b){this.resource=a,this.elements=b}}class f{static{this._ID=0}constructor(){this.id=f._ID++,this.order=1}nextOrder(){return 0===this.id?0:this.order++}static{this.None=new f}}class g{static{this._ID=0}constructor(){this.id=g._ID++,this.order=1}nextOrder(){return 0===this.id?0:this.order++}static{this.None=new g}}},23703:()=>{},24348:(a,b,c)=>{"use strict";let d,e;c.d(b,{DR:()=>o,cj:()=>h,oc:()=>i});var f,g,h,i,j=c(98274),k=c(76302),l=c(21652);(f=h||(h={}))[f.Hint=1]="Hint",f[f.Info=2]="Info",f[f.Warning=4]="Warning",f[f.Error=8]="Error",(g=h||(h={})).compare=function(a,b){return b-a},(d=Object.create(null))[g.Error]=(0,k.kg)(1715,"Error"),d[g.Warning]=(0,k.kg)(1716,"Warning"),d[g.Info]=(0,k.kg)(1717,"Info"),g.toString=function(a){return d[a]||""},(e=Object.create(null))[g.Error]=(0,k.kg)(1718,"Errors"),e[g.Warning]=(0,k.kg)(1719,"Warnings"),e[g.Info]=(0,k.kg)(1720,"Infos"),g.toStringPlural=function(a){return e[a]||""},g.fromSeverity=function(a){switch(a){case j.A.Error:return g.Error;case j.A.Warning:return g.Warning;case j.A.Info:return g.Info;case j.A.Ignore:return g.Hint}},g.toSeverity=function(a){switch(a){case g.Error:return j.A.Error;case g.Warning:return j.A.Warning;case g.Info:return j.A.Info;case g.Hint:return j.A.Ignore}};var m=i||(i={});function n(a,b){let c=[""];return a.source?c.push(a.source.replace("\xa6","\\\xa6")):c.push(""),a.code?"string"==typeof a.code?c.push(a.code.replace("\xa6","\\\xa6")):c.push(a.code.value.replace("\xa6","\\\xa6")):c.push(""),void 0!==a.severity&&null!==a.severity?c.push(h.toString(a.severity)):c.push(""),a.message&&b?c.push(a.message.replace("\xa6","\\\xa6")):c.push(""),void 0!==a.startLineNumber&&null!==a.startLineNumber?c.push(a.startLineNumber.toString()):c.push(""),void 0!==a.startColumn&&null!==a.startColumn?c.push(a.startColumn.toString()):c.push(""),void 0!==a.endLineNumber&&null!==a.endLineNumber?c.push(a.endLineNumber.toString()):c.push(""),void 0!==a.endColumn&&null!==a.endColumn?c.push(a.endColumn.toString()):c.push(""),c.push(""),c.join("\xa6")}m.makeKey=function(a){return n(a,!0)},m.makeKeyOptionalMessage=n;let o=(0,l.u1)("markerService")},24405:(a,b,c)=>{"use strict";c.d(b,{Nt:()=>e,Rh:()=>h});var d=c(76302);let e=(0,c(21652).u1)("accessibilitySignalService");Symbol("AcknowledgeDocCommentsToken");class f{static register(a){return new f(a.fileName)}static{this.error=f.register({fileName:"error.mp3"})}static{this.warning=f.register({fileName:"warning.mp3"})}static{this.success=f.register({fileName:"success.mp3"})}static{this.foldedArea=f.register({fileName:"foldedAreas.mp3"})}static{this.break=f.register({fileName:"break.mp3"})}static{this.quickFixes=f.register({fileName:"quickFixes.mp3"})}static{this.taskCompleted=f.register({fileName:"taskCompleted.mp3"})}static{this.taskFailed=f.register({fileName:"taskFailed.mp3"})}static{this.terminalBell=f.register({fileName:"terminalBell.mp3"})}static{this.diffLineInserted=f.register({fileName:"diffLineInserted.mp3"})}static{this.diffLineDeleted=f.register({fileName:"diffLineDeleted.mp3"})}static{this.diffLineModified=f.register({fileName:"diffLineModified.mp3"})}static{this.requestSent=f.register({fileName:"requestSent.mp3"})}static{this.responseReceived1=f.register({fileName:"responseReceived1.mp3"})}static{this.responseReceived2=f.register({fileName:"responseReceived2.mp3"})}static{this.responseReceived3=f.register({fileName:"responseReceived3.mp3"})}static{this.responseReceived4=f.register({fileName:"responseReceived4.mp3"})}static{this.clear=f.register({fileName:"clear.mp3"})}static{this.save=f.register({fileName:"save.mp3"})}static{this.format=f.register({fileName:"format.mp3"})}static{this.voiceRecordingStarted=f.register({fileName:"voiceRecordingStarted.mp3"})}static{this.voiceRecordingStopped=f.register({fileName:"voiceRecordingStopped.mp3"})}static{this.progress=f.register({fileName:"progress.mp3"})}static{this.chatEditModifiedFile=f.register({fileName:"chatEditModifiedFile.mp3"})}static{this.editsKept=f.register({fileName:"editsKept.mp3"})}static{this.editsUndone=f.register({fileName:"editsUndone.mp3"})}static{this.nextEditSuggestion=f.register({fileName:"nextEditSuggestion.mp3"})}static{this.terminalCommandSucceeded=f.register({fileName:"terminalCommandSucceeded.mp3"})}static{this.chatUserActionRequired=f.register({fileName:"chatUserActionRequired.mp3"})}static{this.codeActionTriggered=f.register({fileName:"codeActionTriggered.mp3"})}static{this.codeActionApplied=f.register({fileName:"codeActionApplied.mp3"})}constructor(a){this.fileName=a}}class g{constructor(a){this.randomOneOf=a}}class h{constructor(a,b,c,d,e,f,g=!1){this.sound=a,this.name=b,this.legacySoundSettingsKey=c,this.settingsKey=d,this.legacyAnnouncementSettingsKey=e,this.announcementMessage=f,this.managesOwnEnablement=g}static{this._signals=new Set}static register(a){let b=new h(new g("randomOneOf"in a.sound?a.sound.randomOneOf:[a.sound]),a.name,a.legacySoundSettingsKey,a.settingsKey,a.legacyAnnouncementSettingsKey,a.announcementMessage,a.managesOwnEnablement);return h._signals.add(b),b}static{this.errorAtPosition=h.register({name:(0,d.kg)(1561,"Error at Position"),sound:f.error,announcementMessage:(0,d.kg)(1562,"Error"),settingsKey:"accessibility.signals.positionHasError",delaySettingsKey:"accessibility.signalOptions.delays.errorAtPosition"})}static{this.warningAtPosition=h.register({name:(0,d.kg)(1563,"Warning at Position"),sound:f.warning,announcementMessage:(0,d.kg)(1564,"Warning"),settingsKey:"accessibility.signals.positionHasWarning",delaySettingsKey:"accessibility.signalOptions.delays.warningAtPosition"})}static{this.errorOnLine=h.register({name:(0,d.kg)(1565,"Error on Line"),sound:f.error,legacySoundSettingsKey:"audioCues.lineHasError",legacyAnnouncementSettingsKey:"accessibility.alert.error",announcementMessage:(0,d.kg)(1566,"Error on Line"),settingsKey:"accessibility.signals.lineHasError"})}static{this.warningOnLine=h.register({name:(0,d.kg)(1567,"Warning on Line"),sound:f.warning,legacySoundSettingsKey:"audioCues.lineHasWarning",legacyAnnouncementSettingsKey:"accessibility.alert.warning",announcementMessage:(0,d.kg)(1568,"Warning on Line"),settingsKey:"accessibility.signals.lineHasWarning"})}static{this.foldedArea=h.register({name:(0,d.kg)(1569,"Folded Area on Line"),sound:f.foldedArea,legacySoundSettingsKey:"audioCues.lineHasFoldedArea",legacyAnnouncementSettingsKey:"accessibility.alert.foldedArea",announcementMessage:(0,d.kg)(1570,"Folded"),settingsKey:"accessibility.signals.lineHasFoldedArea"})}static{this.break=h.register({name:(0,d.kg)(1571,"Breakpoint on Line"),sound:f.break,legacySoundSettingsKey:"audioCues.lineHasBreakpoint",legacyAnnouncementSettingsKey:"accessibility.alert.breakpoint",announcementMessage:(0,d.kg)(1572,"Breakpoint"),settingsKey:"accessibility.signals.lineHasBreakpoint"})}static{this.inlineSuggestion=h.register({name:(0,d.kg)(1573,"Inline Suggestion on Line"),sound:f.quickFixes,legacySoundSettingsKey:"audioCues.lineHasInlineSuggestion",settingsKey:"accessibility.signals.lineHasInlineSuggestion"})}static{this.nextEditSuggestion=h.register({name:(0,d.kg)(1574,"Next Edit Suggestion on Line"),sound:f.nextEditSuggestion,legacySoundSettingsKey:"audioCues.nextEditSuggestion",settingsKey:"accessibility.signals.nextEditSuggestion",announcementMessage:(0,d.kg)(1575,"Next Edit Suggestion")})}static{this.terminalQuickFix=h.register({name:(0,d.kg)(1576,"Terminal Quick Fix"),sound:f.quickFixes,legacySoundSettingsKey:"audioCues.terminalQuickFix",legacyAnnouncementSettingsKey:"accessibility.alert.terminalQuickFix",announcementMessage:(0,d.kg)(1577,"Quick Fix"),settingsKey:"accessibility.signals.terminalQuickFix"})}static{this.onDebugBreak=h.register({name:(0,d.kg)(1578,"Debugger Stopped on Breakpoint"),sound:f.break,legacySoundSettingsKey:"audioCues.onDebugBreak",legacyAnnouncementSettingsKey:"accessibility.alert.onDebugBreak",announcementMessage:(0,d.kg)(1579,"Breakpoint"),settingsKey:"accessibility.signals.onDebugBreak"})}static{this.noInlayHints=h.register({name:(0,d.kg)(1580,"No Inlay Hints on Line"),sound:f.error,legacySoundSettingsKey:"audioCues.noInlayHints",legacyAnnouncementSettingsKey:"accessibility.alert.noInlayHints",announcementMessage:(0,d.kg)(1581,"No Inlay Hints"),settingsKey:"accessibility.signals.noInlayHints"})}static{this.taskCompleted=h.register({name:(0,d.kg)(1582,"Task Completed"),sound:f.taskCompleted,legacySoundSettingsKey:"audioCues.taskCompleted",legacyAnnouncementSettingsKey:"accessibility.alert.taskCompleted",announcementMessage:(0,d.kg)(1583,"Task Completed"),settingsKey:"accessibility.signals.taskCompleted"})}static{this.taskFailed=h.register({name:(0,d.kg)(1584,"Task Failed"),sound:f.taskFailed,legacySoundSettingsKey:"audioCues.taskFailed",legacyAnnouncementSettingsKey:"accessibility.alert.taskFailed",announcementMessage:(0,d.kg)(1585,"Task Failed"),settingsKey:"accessibility.signals.taskFailed"})}static{this.terminalCommandFailed=h.register({name:(0,d.kg)(1586,"Terminal Command Failed"),sound:f.error,legacySoundSettingsKey:"audioCues.terminalCommandFailed",legacyAnnouncementSettingsKey:"accessibility.alert.terminalCommandFailed",announcementMessage:(0,d.kg)(1587,"Command Failed"),settingsKey:"accessibility.signals.terminalCommandFailed"})}static{this.terminalCommandSucceeded=h.register({name:(0,d.kg)(1588,"Terminal Command Succeeded"),sound:f.terminalCommandSucceeded,announcementMessage:(0,d.kg)(1589,"Command Succeeded"),settingsKey:"accessibility.signals.terminalCommandSucceeded"})}static{this.terminalBell=h.register({name:(0,d.kg)(1590,"Terminal Bell"),sound:f.terminalBell,legacySoundSettingsKey:"audioCues.terminalBell",legacyAnnouncementSettingsKey:"accessibility.alert.terminalBell",announcementMessage:(0,d.kg)(1591,"Terminal Bell"),settingsKey:"accessibility.signals.terminalBell"})}static{this.notebookCellCompleted=h.register({name:(0,d.kg)(1592,"Notebook Cell Completed"),sound:f.taskCompleted,legacySoundSettingsKey:"audioCues.notebookCellCompleted",legacyAnnouncementSettingsKey:"accessibility.alert.notebookCellCompleted",announcementMessage:(0,d.kg)(1593,"Notebook Cell Completed"),settingsKey:"accessibility.signals.notebookCellCompleted"})}static{this.notebookCellFailed=h.register({name:(0,d.kg)(1594,"Notebook Cell Failed"),sound:f.taskFailed,legacySoundSettingsKey:"audioCues.notebookCellFailed",legacyAnnouncementSettingsKey:"accessibility.alert.notebookCellFailed",announcementMessage:(0,d.kg)(1595,"Notebook Cell Failed"),settingsKey:"accessibility.signals.notebookCellFailed"})}static{this.diffLineInserted=h.register({name:(0,d.kg)(1596,"Diff Line Inserted"),sound:f.diffLineInserted,legacySoundSettingsKey:"audioCues.diffLineInserted",settingsKey:"accessibility.signals.diffLineInserted"})}static{this.diffLineDeleted=h.register({name:(0,d.kg)(1597,"Diff Line Deleted"),sound:f.diffLineDeleted,legacySoundSettingsKey:"audioCues.diffLineDeleted",settingsKey:"accessibility.signals.diffLineDeleted"})}static{this.diffLineModified=h.register({name:(0,d.kg)(1598,"Diff Line Modified"),sound:f.diffLineModified,legacySoundSettingsKey:"audioCues.diffLineModified",settingsKey:"accessibility.signals.diffLineModified"})}static{this.chatEditModifiedFile=h.register({name:(0,d.kg)(1599,"Chat Edit Modified File"),sound:f.chatEditModifiedFile,announcementMessage:(0,d.kg)(1600,"File Modified from Chat Edits"),settingsKey:"accessibility.signals.chatEditModifiedFile"})}static{this.chatRequestSent=h.register({name:(0,d.kg)(1601,"Chat Request Sent"),sound:f.requestSent,legacySoundSettingsKey:"audioCues.chatRequestSent",legacyAnnouncementSettingsKey:"accessibility.alert.chatRequestSent",announcementMessage:(0,d.kg)(1602,"Chat Request Sent"),settingsKey:"accessibility.signals.chatRequestSent"})}static{this.chatResponseReceived=h.register({name:(0,d.kg)(1603,"Chat Response Received"),legacySoundSettingsKey:"audioCues.chatResponseReceived",sound:{randomOneOf:[f.responseReceived1,f.responseReceived2,f.responseReceived3,f.responseReceived4]},settingsKey:"accessibility.signals.chatResponseReceived"})}static{this.codeActionTriggered=h.register({name:(0,d.kg)(1604,"Code Action Request Triggered"),sound:f.codeActionTriggered,legacySoundSettingsKey:"audioCues.codeActionRequestTriggered",legacyAnnouncementSettingsKey:"accessibility.alert.codeActionRequestTriggered",announcementMessage:(0,d.kg)(1605,"Code Action Request Triggered"),settingsKey:"accessibility.signals.codeActionTriggered"})}static{this.codeActionApplied=h.register({name:(0,d.kg)(1606,"Code Action Applied"),legacySoundSettingsKey:"audioCues.codeActionApplied",sound:f.codeActionApplied,settingsKey:"accessibility.signals.codeActionApplied"})}static{this.progress=h.register({name:(0,d.kg)(1607,"Progress"),sound:f.progress,legacySoundSettingsKey:"audioCues.chatResponsePending",legacyAnnouncementSettingsKey:"accessibility.alert.progress",announcementMessage:(0,d.kg)(1608,"Progress"),settingsKey:"accessibility.signals.progress"})}static{this.clear=h.register({name:(0,d.kg)(1609,"Clear"),sound:f.clear,legacySoundSettingsKey:"audioCues.clear",legacyAnnouncementSettingsKey:"accessibility.alert.clear",announcementMessage:(0,d.kg)(1610,"Clear"),settingsKey:"accessibility.signals.clear"})}static{this.save=h.register({name:(0,d.kg)(1611,"Save"),sound:f.save,legacySoundSettingsKey:"audioCues.save",legacyAnnouncementSettingsKey:"accessibility.alert.save",announcementMessage:(0,d.kg)(1612,"Save"),settingsKey:"accessibility.signals.save"})}static{this.format=h.register({name:(0,d.kg)(1613,"Format"),sound:f.format,legacySoundSettingsKey:"audioCues.format",legacyAnnouncementSettingsKey:"accessibility.alert.format",announcementMessage:(0,d.kg)(1614,"Format"),settingsKey:"accessibility.signals.format"})}static{this.voiceRecordingStarted=h.register({name:(0,d.kg)(1615,"Voice Recording Started"),sound:f.voiceRecordingStarted,legacySoundSettingsKey:"audioCues.voiceRecordingStarted",settingsKey:"accessibility.signals.voiceRecordingStarted"})}static{this.voiceRecordingStopped=h.register({name:(0,d.kg)(1616,"Voice Recording Stopped"),sound:f.voiceRecordingStopped,legacySoundSettingsKey:"audioCues.voiceRecordingStopped",settingsKey:"accessibility.signals.voiceRecordingStopped"})}static{this.editsKept=h.register({name:(0,d.kg)(1617,"Edits Kept"),sound:f.editsKept,announcementMessage:(0,d.kg)(1618,"Edits Kept"),settingsKey:"accessibility.signals.editsKept"})}static{this.editsUndone=h.register({name:(0,d.kg)(1619,"Undo Edits"),sound:f.editsUndone,announcementMessage:(0,d.kg)(1620,"Edits Undone"),settingsKey:"accessibility.signals.editsUndone"})}static{this.chatUserActionRequired=h.register({name:(0,d.kg)(1621,"Chat User Action Required"),sound:f.chatUserActionRequired,announcementMessage:(0,d.kg)(1622,"Chat User Action Required"),settingsKey:"accessibility.signals.chatUserActionRequired",managesOwnEnablement:!0})}}},24783:()=>{},25126:()=>{},25129:(a,b,c)=>{"use strict";c.d(b,{DX:()=>y,E_:()=>D,Fl:()=>E,HW:()=>H,PF:()=>A,aU:()=>K,dS:()=>e,fE:()=>w,gW:()=>F,ih:()=>L,ke:()=>C,ks:()=>z,qO:()=>B,tc:()=>M,uB:()=>v,xX:()=>G});var d,e,f=c(76302),g=c(99951),h=c(1590),i=c(95554),j=c(67887),k=c(78859),l=c(25644),m=c(42724),n=c(5738),o=c(21652),p=c(33340),q=c(53764),r=c(1136),s=c(98896),t=c(12546),u=c(63048);class v{constructor(a){this.id=a.id,this.precondition=a.precondition,this._kbOpts=a.kbOpts,this._menuOpts=a.menuOpts,this.metadata=a.metadata}register(){if(Array.isArray(this._menuOpts)?this._menuOpts.forEach(this._registerMenuItem,this):this._menuOpts&&this._registerMenuItem(this._menuOpts),this._kbOpts)for(let a of Array.isArray(this._kbOpts)?this._kbOpts:[this._kbOpts]){let b=a.kbExpr;this.precondition&&(b=b?n.M$.and(b,this.precondition):this.precondition);let c={id:this.id,weight:a.weight,args:a.args,when:b,primary:a.primary,secondary:a.secondary,win:a.win,linux:a.linux,mac:a.mac};p.f.registerKeybindingRule(c)}m.w.registerCommand({id:this.id,handler:(a,b)=>this.runCommand(a,b),metadata:this.metadata})}_registerMenuItem(a){l.ZG.appendMenuItem(a.menuId,{group:a.group,command:{id:this.id,title:a.title,icon:a.icon,precondition:this.precondition},when:a.when,order:a.order})}}class w extends v{constructor(){super(...arguments),this._implementations=[]}addImplementation(a,b,c,d){return this._implementations.push({priority:a,name:b,implementation:c,when:d}),this._implementations.sort((a,b)=>b.priority-a.priority),{dispose:()=>{for(let a=0;a<this._implementations.length;a++)if(this._implementations[a].implementation===c)return void this._implementations.splice(a,1)}}}runCommand(a,b){let c=a.get(t.rr),d=a.get(n.fN);for(let e of(c.trace(`Executing Command '${this.id}' which has ${this._implementations.length} bound.`),this._implementations)){if(e.when){let a=d.getContext((0,u.bq)());if(!e.when.evaluate(a))continue}let f=e.implementation(a,b);if(f){if(c.trace(`Command '${this.id}' was handled by '${e.name}'.`),"boolean"==typeof f)return;return f}}c.trace(`The Command '${this.id}' was not handled by any implementation.`)}}class x extends v{constructor(a,b){super(b),this.command=a}runCommand(a,b){return this.command.runCommand(a,b)}}class y extends v{static bindToContribution(a){return class extends y{constructor(a){super(a),this._callback=a.handler}runEditorCommand(b,c,d){let e=a(c);e&&this._callback(e,d)}}}static runEditorCommand(a,b,c,d){let e=a.get(h.T),f=e.getFocusedCodeEditor()||e.getActiveCodeEditor();if(f)return f.invokeWithinContext(a=>{if(a.get(n.fN).contextMatchesRules(c??void 0))return d(a,f,b)})}runCommand(a,b){return y.runEditorCommand(a,b,this.precondition,(a,b,c)=>this.runEditorCommand(a,b,c))}}class z extends y{static convertOptions(a){let b;function c(b){return b.menuId||(b.menuId=l.D8.EditorContext),b.title||(b.title="string"==typeof a.label?a.label:a.label.value),b.when=n.M$.and(a.precondition,b.when),b}return b=Array.isArray(a.menuOpts)?a.menuOpts:a.menuOpts?[a.menuOpts]:[],Array.isArray(a.contextMenuOpts)?b.push(...a.contextMenuOpts.map(c)):a.contextMenuOpts&&b.push(c(a.contextMenuOpts)),a.menuOpts=b,a}constructor(a){super(z.convertOptions(a)),"string"==typeof a.label?(this.label=a.label,this.alias=a.alias??a.label):(this.label=a.label.value,this.alias=a.alias??a.label.original)}runEditorCommand(a,b,c){return this.reportTelemetry(a,b),this.run(a,b,c||{})}reportTelemetry(a,b){a.get(r.k).publicLog2("editorActionInvoked",{name:this.label,id:this.id})}}class A extends z{constructor(){super(...arguments),this._implementations=[]}addImplementation(a,b){return this._implementations.push([a,b]),this._implementations.sort((a,b)=>b[0]-a[0]),{dispose:()=>{for(let a=0;a<this._implementations.length;a++)if(this._implementations[a][1]===b)return void this._implementations.splice(a,1)}}}run(a,b,c){for(let d of this._implementations){let e=d[1](a,b,c);if(e){if("boolean"==typeof e)return;return e}}}}class B extends l.L{run(a,...b){let c=a.get(h.T),d=c.getFocusedCodeEditor()||c.getActiveCodeEditor();if(d)return d.invokeWithinContext(a=>{let c=a.get(n.fN),e=a.get(t.rr);return c.contextMatchesRules(this.desc.precondition??void 0)?this.runEditorCommand(a,d,...b):void e.debug("[EditorAction2] NOT running command because its precondition is FALSE",this.desc.id,this.desc.precondition?.serialize())})}}function C(a,b){m.w.registerCommand(a,function(a,...c){let d=a.get(o._Y),[e,f]=c;(0,s.j)(g.r.isUri(e)),(0,s.j)(i.y.isIPosition(f));let h=a.get(j.S).getModel(e);if(h){let a=i.y.lift(f);return d.invokeFunction(b,h,a,...c.slice(2))}return a.get(k.b).createModelReference(e).then(a=>new Promise((e,g)=>{try{let g=d.invokeFunction(b,a.object.textEditorModel,i.y.lift(f),c.slice(2));e(g)}catch(a){g(a)}}).finally(()=>{a.dispose()}))})}function D(a){return I.INSTANCE.registerEditorCommand(a),a}function E(a){let b=new a;return I.INSTANCE.registerEditorAction(b),b}function F(a){return I.INSTANCE.registerEditorAction(a),a}function G(a){I.INSTANCE.registerEditorAction(a)}function H(a,b,c){I.INSTANCE.registerEditorContribution(a,b,c)}(d=e||(e={})).getEditorCommand=function(a){return I.INSTANCE.getEditorCommand(a)},d.getEditorActions=function(){return I.INSTANCE.getEditorActions()},d.getEditorContributions=function(){return I.INSTANCE.getEditorContributions()},d.getSomeEditorContributions=function(a){return I.INSTANCE.getEditorContributions().filter(b=>a.indexOf(b.id)>=0)},d.getDiffEditorContributions=function(){return I.INSTANCE.getDiffEditorContributions()};class I{static{this.INSTANCE=new I}constructor(){this.editorContributions=[],this.diffEditorContributions=[],this.editorActions=[],this.editorCommands=Object.create(null)}registerEditorContribution(a,b,c){this.editorContributions.push({id:a,ctor:b,instantiation:c})}getEditorContributions(){return this.editorContributions.slice(0)}getDiffEditorContributions(){return this.diffEditorContributions.slice(0)}registerEditorAction(a){a.register(),this.editorActions.push(a)}getEditorActions(){return this.editorActions}registerEditorCommand(a){a.register(),this.editorCommands[a.id]=a}getEditorCommand(a){return this.editorCommands[a]||null}}function J(a){return a.register(),a}q.O.add("editor.contributions",I.INSTANCE);let K=J(new w({id:"undo",precondition:void 0,kbOpts:{weight:0,primary:2104},menuOpts:[{menuId:l.D8.MenubarEditMenu,group:"1_do",title:f.kg(64,"&&Undo"),order:1},{menuId:l.D8.CommandPalette,group:"",title:f.kg(65,"Undo"),order:1},{menuId:l.D8.SimpleEditorContext,group:"1_do",title:f.kg(66,"Undo"),order:1}]}));J(new x(K,{id:"default:undo",precondition:void 0}));let L=J(new w({id:"redo",precondition:void 0,kbOpts:{weight:0,primary:2103,secondary:[3128],mac:{primary:3128}},menuOpts:[{menuId:l.D8.MenubarEditMenu,group:"1_do",title:f.kg(67,"&&Redo"),order:2},{menuId:l.D8.CommandPalette,group:"",title:f.kg(68,"Redo"),order:1},{menuId:l.D8.SimpleEditorContext,group:"1_do",title:f.kg(69,"Redo"),order:2}]}));J(new x(L,{id:"default:redo",precondition:void 0}));let M=J(new w({id:"editor.action.selectAll",precondition:void 0,kbOpts:{weight:0,kbExpr:null,primary:2079},menuOpts:[{menuId:l.D8.MenubarSelectionMenu,group:"1_basic",title:f.kg(70,"&&Select All"),order:1},{menuId:l.D8.CommandPalette,group:"",title:f.kg(71,"Select All"),order:1},{menuId:l.D8.SimpleEditorContext,group:"9_select",title:f.kg(72,"Select All"),order:1}]}))},25203:(a,b,c)=>{"use strict";c.d(b,{i:()=>f,y:()=>g});var d=c(52212),e=c(32263);class f{constructor(a,b,c){this._range=a,this._charBeforeSelection=b,this._charAfterSelection=c}getEditOperations(a,b){b.addTrackedEditOperation(new d.Q(this._range.startLineNumber,this._range.startColumn,this._range.startLineNumber,this._range.startColumn),this._charBeforeSelection),b.addTrackedEditOperation(new d.Q(this._range.endLineNumber,this._range.endColumn,this._range.endLineNumber,this._range.endColumn),this._charAfterSelection||null)}computeCursorState(a,b){let c=b.getInverseEditOperations(),d=c[0].range,f=c[1].range;return new e.L(d.endLineNumber,d.endColumn,f.endLineNumber,f.endColumn-this._charAfterSelection.length)}}class g{constructor(a,b,c){this._position=a,this._text=b,this._charAfter=c}getEditOperations(a,b){b.addTrackedEditOperation(new d.Q(this._position.lineNumber,this._position.column,this._position.lineNumber,this._position.column),this._text+this._charAfter)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return new e.L(c.endLineNumber,c.startColumn,c.endLineNumber,c.endColumn-this._charAfter.length)}}},25224:(a,b,c)=>{"use strict";c.d(b,{s:()=>m}),c(33196);var d=c(63048),e=c(7806),f=c(81e3),g=c(40201),h=c(50689),i=c(74116),j=c(29501),k=c(87445);class l{constructor(a){this._element=a}get element(){return this._element}set textContent(a){this.disposed||a===this._textContent||(this._textContent=a,this._element.textContent=a)}set classNames(a){this.disposed||(0,h.aI)(a,this._classNames)||(this._classNames=a,this._element.classList.value="",this._element.classList.add(...a))}set empty(a){this.disposed||a===this._empty||(this._empty=a,this._element.style.marginLeft=a?"0":"")}dispose(){this.disposed=!0}}class m extends g.jG{constructor(a,b){super(),this.customHovers=new Map,this.creationOptions=b,this.domNode=this._register(new l(d.BC(a,d.$(".monaco-icon-label")))),this.labelContainer=d.BC(this.domNode.element,d.$(".monaco-icon-label-container")),this.nameContainer=d.BC(this.labelContainer,d.$("span.monaco-icon-name-container")),b?.supportHighlights||b?.supportIcons?this.nameNode=this._register(new o(this.nameContainer,!!b.supportIcons)):this.nameNode=new n(this.nameContainer),this.hoverDelegate=b?.hoverDelegate??(0,j.nZ)("mouse")}get element(){return this.domNode.element}setLabel(a,b,c){let g=["monaco-icon-label"],h=["monaco-icon-label-container"],i="";c&&(c.extraClasses&&g.push(...c.extraClasses),c.italic&&g.push("italic"),c.strikethrough&&g.push("strikethrough"),c.disabledCommand&&h.push("disabled"),c.title&&("string"==typeof c.title?i+=c.title:i+=a));let j=this.domNode.element.querySelector(".monaco-icon-label-iconpath");if(c?.iconPath){let a;j&&d.sb(j)?a=j:(a=d.$(".monaco-icon-label-iconpath"),this.domNode.element.prepend(a)),a.style.backgroundImage=e.Tf(c?.iconPath),a.style.backgroundRepeat="no-repeat",a.style.backgroundPosition="center",a.style.backgroundSize="contain"}else j&&j.remove();if(this.domNode.classNames=g,this.domNode.element.setAttribute("aria-label",i),this.labelContainer.classList.value="",this.labelContainer.classList.add(...h),this.setupHover(c?.descriptionTitle?this.labelContainer:this.element,c?.title),this.nameNode.setLabel(a,c),b||this.descriptionNode){let a=this.getOrCreateDescriptionNode();a instanceof f._?(a.set(b||"",c?c.descriptionMatches:void 0,void 0,c?.labelEscapeNewLines),this.setupHover(a.element,c?.descriptionTitle)):(a.textContent=b&&c?.labelEscapeNewLines?f._.escapeNewLines(b,[]):b||"",this.setupHover(a.element,c?.descriptionTitle||""),a.empty=!b)}(c?.suffix||this.suffixNode)&&(this.getOrCreateSuffixNode().textContent=c?.suffix??"")}setupHover(a,b){let c=this.customHovers.get(a);if(c&&(c.dispose(),this.customHovers.delete(a)),!b)return void a.removeAttribute("title");let e=a;if(this.creationOptions?.hoverTargetOverride){if(!d.QX(a,this.creationOptions.hoverTargetOverride))throw Error("hoverTargetOverrride must be an ancestor of the htmlElement");e=this.creationOptions.hoverTargetOverride}let f=(0,k.i)().setupManagedHover(this.hoverDelegate,e,b);f&&this.customHovers.set(a,f)}dispose(){for(let a of(super.dispose(),this.customHovers.values()))a.dispose();this.customHovers.clear()}getOrCreateSuffixNode(){if(!this.suffixNode){let a=this._register(new l(d.Pl(this.nameContainer,d.$("span.monaco-icon-suffix-container"))));this.suffixNode=this._register(new l(d.BC(a.element,d.$("span.label-suffix"))))}return this.suffixNode}getOrCreateDescriptionNode(){if(!this.descriptionNode){let a=this._register(new l(d.BC(this.labelContainer,d.$("span.monaco-icon-description-container"))));this.creationOptions?.supportDescriptionHighlights?this.descriptionNode=this._register(new f._(d.BC(a.element,d.$("span.label-description")),{supportIcons:!!this.creationOptions.supportIcons})):this.descriptionNode=this._register(new l(d.BC(a.element,d.$("span.label-description"))))}return this.descriptionNode}}class n{constructor(a){this.container=a,this.label=void 0,this.singleLabel=void 0}setLabel(a,b){if(!(this.label===a&&(0,h.aI)(this.options,b)))if(this.label=a,this.options=b,"string"==typeof a)this.singleLabel||(this.container.textContent="",this.container.classList.remove("multiple"),this.singleLabel=d.BC(this.container,d.$("a.label-name",{id:b?.domId}))),this.singleLabel.textContent=a;else{this.container.textContent="",this.container.classList.add("multiple"),this.singleLabel=void 0;for(let c=0;c<a.length;c++){let e=a[c],f=b?.domId&&`${b?.domId}_${c}`;d.BC(this.container,d.$("a.label-name",{id:f,"data-icon-label-count":a.length,"data-icon-label-index":c,role:"treeitem"},e)),c<a.length-1&&d.BC(this.container,d.$("span.label-separator",void 0,b?.separator||"/"))}}}}class o extends g.jG{constructor(a,b){super(),this.container=a,this.supportIcons=b,this.label=void 0,this.singleLabel=void 0}setLabel(a,b){if(!(this.label===a&&(0,h.aI)(this.options,b)))if(this.label=a,this.options=b,"string"==typeof a)this.singleLabel||(this.container.textContent="",this.container.classList.remove("multiple"),this.singleLabel=this._register(new f._(d.BC(this.container,d.$("a.label-name",{id:b?.domId})),{supportIcons:this.supportIcons}))),this.singleLabel.set(a,b?.matches,void 0,b?.labelEscapeNewLines);else{this.container.textContent="",this.container.classList.add("multiple"),this.singleLabel=void 0;let c=b?.separator||"/",e=function(a,b,c){if(!c)return;let d=0;return a.map(a=>{let e={start:d,end:d+a.length},f=c.map(a=>i.Q.intersect(e,a)).filter(a=>!i.Q.isEmpty(a)).map(({start:a,end:b})=>({start:a-d,end:b-d}));return d=e.end+b.length,f})}(a,c,b?.matches);for(let g=0;g<a.length;g++){let h=a[g],i=e?e[g]:void 0,j=b?.domId&&`${b?.domId}_${g}`,k=d.$("a.label-name",{id:j,"data-icon-label-count":a.length,"data-icon-label-index":g,role:"treeitem"});this._register(new f._(d.BC(this.container,k),{supportIcons:this.supportIcons})).set(h,i,void 0,b?.labelEscapeNewLines),g<a.length-1&&d.BC(k,d.$("span.label-separator",void 0,c))}}}}},25532:(a,b,c)=>{"use strict";c.d(b,{X:()=>d});let d=(0,c(21652).u1)("dialogService")},25634:(a,b,c)=>{"use strict";c.d(b,{a:()=>d});class d{constructor(...a){for(const[b,c]of(this._entries=new Map,a))this.set(b,c)}set(a,b){let c=this._entries.get(a);return this._entries.set(a,b),c}get(a){return this._entries.get(a)}}},25644:(a,b,c)=>{"use strict";c.d(b,{D8:()=>q,L:()=>w,Xe:()=>v,ZG:()=>t,ez:()=>r,i1:()=>p,is:()=>o,nI:()=>u,ug:()=>x});var d,e=c(83614),f=c(3457),g=c(40201),h=c(57832),i=c(10322),j=c(42724),k=c(5738),l=c(21652),m=c(33340),n=function(a,b){return function(c,d){b(c,d,a)}};function o(a){return void 0!==a.command}function p(a){return void 0!==a.submenu}class q{static{this._instances=new Map}static{this.CommandPalette=new q("CommandPalette")}static{this.DebugBreakpointsContext=new q("DebugBreakpointsContext")}static{this.DebugCallStackContext=new q("DebugCallStackContext")}static{this.DebugConsoleContext=new q("DebugConsoleContext")}static{this.DebugVariablesContext=new q("DebugVariablesContext")}static{this.NotebookVariablesContext=new q("NotebookVariablesContext")}static{this.DebugHoverContext=new q("DebugHoverContext")}static{this.DebugWatchContext=new q("DebugWatchContext")}static{this.DebugToolBar=new q("DebugToolBar")}static{this.DebugToolBarStop=new q("DebugToolBarStop")}static{this.DebugDisassemblyContext=new q("DebugDisassemblyContext")}static{this.DebugCallStackToolbar=new q("DebugCallStackToolbar")}static{this.DebugCreateConfiguration=new q("DebugCreateConfiguration")}static{this.EditorContext=new q("EditorContext")}static{this.SimpleEditorContext=new q("SimpleEditorContext")}static{this.EditorContent=new q("EditorContent")}static{this.EditorLineNumberContext=new q("EditorLineNumberContext")}static{this.EditorContextCopy=new q("EditorContextCopy")}static{this.EditorContextPeek=new q("EditorContextPeek")}static{this.EditorContextShare=new q("EditorContextShare")}static{this.EditorTitle=new q("EditorTitle")}static{this.CompactWindowEditorTitle=new q("CompactWindowEditorTitle")}static{this.EditorTitleRun=new q("EditorTitleRun")}static{this.EditorTitleContext=new q("EditorTitleContext")}static{this.EditorTitleContextShare=new q("EditorTitleContextShare")}static{this.EmptyEditorGroup=new q("EmptyEditorGroup")}static{this.EmptyEditorGroupContext=new q("EmptyEditorGroupContext")}static{this.EditorTabsBarContext=new q("EditorTabsBarContext")}static{this.EditorTabsBarShowTabsSubmenu=new q("EditorTabsBarShowTabsSubmenu")}static{this.EditorTabsBarShowTabsZenModeSubmenu=new q("EditorTabsBarShowTabsZenModeSubmenu")}static{this.EditorActionsPositionSubmenu=new q("EditorActionsPositionSubmenu")}static{this.EditorSplitMoveSubmenu=new q("EditorSplitMoveSubmenu")}static{this.ExplorerContext=new q("ExplorerContext")}static{this.ExplorerContextShare=new q("ExplorerContextShare")}static{this.ExtensionContext=new q("ExtensionContext")}static{this.ExtensionEditorContextMenu=new q("ExtensionEditorContextMenu")}static{this.GlobalActivity=new q("GlobalActivity")}static{this.CommandCenter=new q("CommandCenter")}static{this.CommandCenterCenter=new q("CommandCenterCenter")}static{this.LayoutControlMenuSubmenu=new q("LayoutControlMenuSubmenu")}static{this.LayoutControlMenu=new q("LayoutControlMenu")}static{this.MenubarMainMenu=new q("MenubarMainMenu")}static{this.MenubarAppearanceMenu=new q("MenubarAppearanceMenu")}static{this.MenubarDebugMenu=new q("MenubarDebugMenu")}static{this.MenubarEditMenu=new q("MenubarEditMenu")}static{this.MenubarCopy=new q("MenubarCopy")}static{this.MenubarFileMenu=new q("MenubarFileMenu")}static{this.MenubarGoMenu=new q("MenubarGoMenu")}static{this.MenubarHelpMenu=new q("MenubarHelpMenu")}static{this.MenubarLayoutMenu=new q("MenubarLayoutMenu")}static{this.MenubarNewBreakpointMenu=new q("MenubarNewBreakpointMenu")}static{this.PanelAlignmentMenu=new q("PanelAlignmentMenu")}static{this.PanelPositionMenu=new q("PanelPositionMenu")}static{this.ActivityBarPositionMenu=new q("ActivityBarPositionMenu")}static{this.MenubarPreferencesMenu=new q("MenubarPreferencesMenu")}static{this.MenubarRecentMenu=new q("MenubarRecentMenu")}static{this.MenubarSelectionMenu=new q("MenubarSelectionMenu")}static{this.MenubarShare=new q("MenubarShare")}static{this.MenubarSwitchEditorMenu=new q("MenubarSwitchEditorMenu")}static{this.MenubarSwitchGroupMenu=new q("MenubarSwitchGroupMenu")}static{this.MenubarTerminalMenu=new q("MenubarTerminalMenu")}static{this.MenubarTerminalSuggestStatusMenu=new q("MenubarTerminalSuggestStatusMenu")}static{this.MenubarViewMenu=new q("MenubarViewMenu")}static{this.MenubarHomeMenu=new q("MenubarHomeMenu")}static{this.OpenEditorsContext=new q("OpenEditorsContext")}static{this.OpenEditorsContextShare=new q("OpenEditorsContextShare")}static{this.ProblemsPanelContext=new q("ProblemsPanelContext")}static{this.SCMInputBox=new q("SCMInputBox")}static{this.SCMChangeContext=new q("SCMChangeContext")}static{this.SCMResourceContext=new q("SCMResourceContext")}static{this.SCMResourceContextShare=new q("SCMResourceContextShare")}static{this.SCMResourceFolderContext=new q("SCMResourceFolderContext")}static{this.SCMResourceGroupContext=new q("SCMResourceGroupContext")}static{this.SCMSourceControl=new q("SCMSourceControl")}static{this.SCMSourceControlInline=new q("SCMSourceControlInline")}static{this.SCMSourceControlTitle=new q("SCMSourceControlTitle")}static{this.SCMHistoryTitle=new q("SCMHistoryTitle")}static{this.SCMHistoryItemContext=new q("SCMHistoryItemContext")}static{this.SCMHistoryItemChangeContext=new q("SCMHistoryItemChangeContext")}static{this.SCMHistoryItemHover=new q("SCMHistoryItemHover")}static{this.SCMHistoryItemRefContext=new q("SCMHistoryItemRefContext")}static{this.SCMQuickDiffDecorations=new q("SCMQuickDiffDecorations")}static{this.SCMTitle=new q("SCMTitle")}static{this.SearchContext=new q("SearchContext")}static{this.SearchActionMenu=new q("SearchActionContext")}static{this.StatusBarWindowIndicatorMenu=new q("StatusBarWindowIndicatorMenu")}static{this.StatusBarRemoteIndicatorMenu=new q("StatusBarRemoteIndicatorMenu")}static{this.StickyScrollContext=new q("StickyScrollContext")}static{this.TestItem=new q("TestItem")}static{this.TestItemGutter=new q("TestItemGutter")}static{this.TestProfilesContext=new q("TestProfilesContext")}static{this.TestMessageContext=new q("TestMessageContext")}static{this.TestMessageContent=new q("TestMessageContent")}static{this.TestPeekElement=new q("TestPeekElement")}static{this.TestPeekTitle=new q("TestPeekTitle")}static{this.TestCallStack=new q("TestCallStack")}static{this.TestCoverageFilterItem=new q("TestCoverageFilterItem")}static{this.TouchBarContext=new q("TouchBarContext")}static{this.TitleBar=new q("TitleBar")}static{this.TitleBarContext=new q("TitleBarContext")}static{this.TitleBarTitleContext=new q("TitleBarTitleContext")}static{this.TunnelContext=new q("TunnelContext")}static{this.TunnelPrivacy=new q("TunnelPrivacy")}static{this.TunnelProtocol=new q("TunnelProtocol")}static{this.TunnelPortInline=new q("TunnelInline")}static{this.TunnelTitle=new q("TunnelTitle")}static{this.TunnelLocalAddressInline=new q("TunnelLocalAddressInline")}static{this.TunnelOriginInline=new q("TunnelOriginInline")}static{this.ViewItemContext=new q("ViewItemContext")}static{this.ViewContainerTitle=new q("ViewContainerTitle")}static{this.ViewContainerTitleContext=new q("ViewContainerTitleContext")}static{this.ViewTitle=new q("ViewTitle")}static{this.ViewTitleContext=new q("ViewTitleContext")}static{this.CommentEditorActions=new q("CommentEditorActions")}static{this.CommentThreadTitle=new q("CommentThreadTitle")}static{this.CommentThreadActions=new q("CommentThreadActions")}static{this.CommentThreadAdditionalActions=new q("CommentThreadAdditionalActions")}static{this.CommentThreadTitleContext=new q("CommentThreadTitleContext")}static{this.CommentThreadCommentContext=new q("CommentThreadCommentContext")}static{this.CommentTitle=new q("CommentTitle")}static{this.CommentActions=new q("CommentActions")}static{this.CommentsViewThreadActions=new q("CommentsViewThreadActions")}static{this.InteractiveToolbar=new q("InteractiveToolbar")}static{this.InteractiveCellTitle=new q("InteractiveCellTitle")}static{this.InteractiveCellDelete=new q("InteractiveCellDelete")}static{this.InteractiveCellExecute=new q("InteractiveCellExecute")}static{this.InteractiveInputExecute=new q("InteractiveInputExecute")}static{this.InteractiveInputConfig=new q("InteractiveInputConfig")}static{this.ReplInputExecute=new q("ReplInputExecute")}static{this.IssueReporter=new q("IssueReporter")}static{this.NotebookToolbar=new q("NotebookToolbar")}static{this.NotebookToolbarContext=new q("NotebookToolbarContext")}static{this.NotebookStickyScrollContext=new q("NotebookStickyScrollContext")}static{this.NotebookCellTitle=new q("NotebookCellTitle")}static{this.NotebookCellDelete=new q("NotebookCellDelete")}static{this.NotebookCellInsert=new q("NotebookCellInsert")}static{this.NotebookCellBetween=new q("NotebookCellBetween")}static{this.NotebookCellListTop=new q("NotebookCellTop")}static{this.NotebookCellExecute=new q("NotebookCellExecute")}static{this.NotebookCellExecuteGoTo=new q("NotebookCellExecuteGoTo")}static{this.NotebookCellExecutePrimary=new q("NotebookCellExecutePrimary")}static{this.NotebookDiffCellInputTitle=new q("NotebookDiffCellInputTitle")}static{this.NotebookDiffDocumentMetadata=new q("NotebookDiffDocumentMetadata")}static{this.NotebookDiffCellMetadataTitle=new q("NotebookDiffCellMetadataTitle")}static{this.NotebookDiffCellOutputsTitle=new q("NotebookDiffCellOutputsTitle")}static{this.NotebookOutputToolbar=new q("NotebookOutputToolbar")}static{this.NotebookOutlineFilter=new q("NotebookOutlineFilter")}static{this.NotebookOutlineActionMenu=new q("NotebookOutlineActionMenu")}static{this.NotebookEditorLayoutConfigure=new q("NotebookEditorLayoutConfigure")}static{this.NotebookKernelSource=new q("NotebookKernelSource")}static{this.BulkEditTitle=new q("BulkEditTitle")}static{this.BulkEditContext=new q("BulkEditContext")}static{this.TimelineItemContext=new q("TimelineItemContext")}static{this.TimelineTitle=new q("TimelineTitle")}static{this.TimelineTitleContext=new q("TimelineTitleContext")}static{this.TimelineFilterSubMenu=new q("TimelineFilterSubMenu")}static{this.AccountsContext=new q("AccountsContext")}static{this.SidebarTitle=new q("SidebarTitle")}static{this.PanelTitle=new q("PanelTitle")}static{this.AuxiliaryBarTitle=new q("AuxiliaryBarTitle")}static{this.TerminalInstanceContext=new q("TerminalInstanceContext")}static{this.TerminalEditorInstanceContext=new q("TerminalEditorInstanceContext")}static{this.TerminalNewDropdownContext=new q("TerminalNewDropdownContext")}static{this.TerminalTabContext=new q("TerminalTabContext")}static{this.TerminalTabEmptyAreaContext=new q("TerminalTabEmptyAreaContext")}static{this.TerminalStickyScrollContext=new q("TerminalStickyScrollContext")}static{this.WebviewContext=new q("WebviewContext")}static{this.InlineCompletionsActions=new q("InlineCompletionsActions")}static{this.InlineEditsActions=new q("InlineEditsActions")}static{this.NewFile=new q("NewFile")}static{this.MergeInput1Toolbar=new q("MergeToolbar1Toolbar")}static{this.MergeInput2Toolbar=new q("MergeToolbar2Toolbar")}static{this.MergeBaseToolbar=new q("MergeBaseToolbar")}static{this.MergeInputResultToolbar=new q("MergeToolbarResultToolbar")}static{this.InlineSuggestionToolbar=new q("InlineSuggestionToolbar")}static{this.InlineEditToolbar=new q("InlineEditToolbar")}static{this.ChatContext=new q("ChatContext")}static{this.ChatCodeBlock=new q("ChatCodeblock")}static{this.ChatCompareBlock=new q("ChatCompareBlock")}static{this.ChatMessageTitle=new q("ChatMessageTitle")}static{this.ChatHistory=new q("ChatHistory")}static{this.ChatWelcomeHistoryContext=new q("ChatWelcomeHistoryContext")}static{this.ChatMessageFooter=new q("ChatMessageFooter")}static{this.ChatExecute=new q("ChatExecute")}static{this.ChatExecuteSecondary=new q("ChatExecuteSecondary")}static{this.ChatInput=new q("ChatInput")}static{this.ChatInputSide=new q("ChatInputSide")}static{this.ChatModePicker=new q("ChatModePicker")}static{this.ChatEditingWidgetToolbar=new q("ChatEditingWidgetToolbar")}static{this.ChatEditingEditorContent=new q("ChatEditingEditorContent")}static{this.ChatEditingEditorHunk=new q("ChatEditingEditorHunk")}static{this.ChatEditingDeletedNotebookCell=new q("ChatEditingDeletedNotebookCell")}static{this.ChatInputAttachmentToolbar=new q("ChatInputAttachmentToolbar")}static{this.ChatEditingWidgetModifiedFilesToolbar=new q("ChatEditingWidgetModifiedFilesToolbar")}static{this.ChatInputResourceAttachmentContext=new q("ChatInputResourceAttachmentContext")}static{this.ChatInputSymbolAttachmentContext=new q("ChatInputSymbolAttachmentContext")}static{this.ChatInlineResourceAnchorContext=new q("ChatInlineResourceAnchorContext")}static{this.ChatInlineSymbolAnchorContext=new q("ChatInlineSymbolAnchorContext")}static{this.ChatMessageCheckpoint=new q("ChatMessageCheckpoint")}static{this.ChatMessageRestoreCheckpoint=new q("ChatMessageRestoreCheckpoint")}static{this.ChatEditingCodeBlockContext=new q("ChatEditingCodeBlockContext")}static{this.ChatTitleBarMenu=new q("ChatTitleBarMenu")}static{this.ChatAttachmentsContext=new q("ChatAttachmentsContext")}static{this.ChatToolOutputResourceToolbar=new q("ChatToolOutputResourceToolbar")}static{this.ChatTextEditorMenu=new q("ChatTextEditorMenu")}static{this.ChatToolOutputResourceContext=new q("ChatToolOutputResourceContext")}static{this.ChatMultiDiffContext=new q("ChatMultiDiffContext")}static{this.ChatSessionsMenu=new q("ChatSessionsMenu")}static{this.ChatConfirmationMenu=new q("ChatConfirmationMenu")}static{this.AccessibleView=new q("AccessibleView")}static{this.MultiDiffEditorFileToolbar=new q("MultiDiffEditorFileToolbar")}static{this.DiffEditorHunkToolbar=new q("DiffEditorHunkToolbar")}static{this.DiffEditorSelectionToolbar=new q("DiffEditorSelectionToolbar")}constructor(a){if(q._instances.has(a))throw TypeError(`MenuId with identifier '${a}' already exists. Use MenuId.for(ident) or a unique identifier`);q._instances.set(a,this),this.id=a}}let r=(0,l.u1)("menuService");class s{static{this._all=new Map}static for(a){let b=this._all.get(a);return b||(b=new s(a),this._all.set(a,b)),b}static merge(a){let b=new Set;for(let c of a)c instanceof s&&b.add(c.id);return b}constructor(a){this.id=a,this.has=b=>b===a}}let t=new class{constructor(){this._commands=new Map,this._menuItems=new Map,this._onDidChangeMenu=new f.QT({merge:s.merge}),this.onDidChangeMenu=this._onDidChangeMenu.event}addCommand(a){return this._commands.set(a.id,a),this._onDidChangeMenu.fire(s.for(q.CommandPalette)),(0,g.lC)((0,g.s)(()=>{this._commands.delete(a.id)&&this._onDidChangeMenu.fire(s.for(q.CommandPalette))}))}getCommand(a){return this._commands.get(a)}getCommands(){let a=new Map;return this._commands.forEach((b,c)=>a.set(c,b)),a}appendMenuItem(a,b){let c=this._menuItems.get(a);c||(c=new h.w,this._menuItems.set(a,c));let d=c.push(b);return this._onDidChangeMenu.fire(s.for(a)),(0,g.lC)((0,g.s)(()=>{d(),this._onDidChangeMenu.fire(s.for(a))}))}appendMenuItems(a){let b=new g.Cm;for(let{id:c,item:d}of a)b.add(this.appendMenuItem(c,d));return b}getMenuItems(a){let b;return b=this._menuItems.has(a)?[...this._menuItems.get(a)]:[],a===q.CommandPalette&&this._appendImplicitItems(b),b}_appendImplicitItems(a){let b=new Set;for(let c of a)o(c)&&(b.add(c.command.id),c.alt&&b.add(c.alt.id));this._commands.forEach((c,d)=>{b.has(d)||a.push({command:c})})}};class u extends e.YH{constructor(a,b,c){super(`submenuitem.${a.submenu.id}`,"string"==typeof a.title?a.title:a.title.value,c,"submenu"),this.item=a,this.hideActions=b}}let v=d=class{static label(a,b){return b?.renderShortTitle&&a.shortTitle?"string"==typeof a.shortTitle?a.shortTitle:a.shortTitle.value:"string"==typeof a.title?a.title:a.title.value}constructor(a,b,c,e,f,g,h){let j;if(this.hideActions=e,this.menuKeybinding=f,this._commandService=h,this.id=a.id,this.label=d.label(a,c),this.tooltip=("string"==typeof a.tooltip?a.tooltip:a.tooltip?.value)??"",this.enabled=!a.precondition||g.contextMatchesRules(a.precondition),this.checked=void 0,a.toggled){const b=a.toggled.condition?a.toggled:{condition:a.toggled};this.checked=g.contextMatchesRules(b.condition),this.checked&&b.tooltip&&(this.tooltip="string"==typeof b.tooltip?b.tooltip:b.tooltip.value),this.checked&&i.L.isThemeIcon(b.icon)&&(j=b.icon),this.checked&&b.title&&(this.label="string"==typeof b.title?b.title:b.title.value)}j||(j=i.L.isThemeIcon(a.icon)?a.icon:void 0),this.item=a,this.alt=b?new d(b,void 0,c,e,void 0,g,h):void 0,this._options=c,this.class=j&&i.L.asClassName(j)}run(...a){let b=[];return this._options?.arg&&(b=[...b,this._options.arg]),this._options?.shouldForwardArgs&&(b=[...b,...a]),this._commandService.executeCommand(this.id,...b)}};v=d=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([n(5,k.fN),n(6,j.d)],v);class w{constructor(a){this.desc=a}}function x(a){let b=[],c=new a,{f1:d,menu:e,keybinding:f,...h}=c.desc;if(j.w.getCommand(h.id))throw Error(`Cannot register two commands with the same id: ${h.id}`);if(b.push(j.w.registerCommand({id:h.id,handler:(a,...b)=>c.run(a,...b),metadata:h.metadata??{description:c.desc.title}})),Array.isArray(e))for(let a of e)b.push(t.appendMenuItem(a.id,{command:{...h,precondition:null===a.precondition?void 0:h.precondition},...a}));else e&&b.push(t.appendMenuItem(e.id,{command:{...h,precondition:null===e.precondition?void 0:h.precondition},...e}));if(d&&(b.push(t.appendMenuItem(q.CommandPalette,{command:h,when:h.precondition})),b.push(t.addCommand(h))),Array.isArray(f))for(let a of f)b.push(m.f.registerKeybindingRule({...a,id:h.id,when:h.precondition?k.M$.and(h.precondition,a.when):a.when}));else f&&b.push(m.f.registerKeybindingRule({...f,id:h.id,when:h.precondition?k.M$.and(h.precondition,f.when):f.when}));return{dispose(){(0,g.AS)(b)}}}},27123:()=>{},27351:()=>{},27817:(a,b,c)=>{"use strict";c.d(b,{$t:()=>q,gI:()=>r,ER:()=>s});var d=c(77747),e=c(52212),f=c(36046),g=c(40201),h=c(25129),i=c(5738),j=c(57832),k=c(21652),l=c(58451),m=c(76302);let n=(0,k.u1)("IEditorCancelService"),o=new i.N1("cancellableOperation",!1,(0,m.kg)(934,"Whether the editor runs a cancellable operation, e.g. like 'Peek References'"));(0,l.v)(n,class{constructor(){this._tokens=new WeakMap}add(a,b){let c,d=this._tokens.get(a);return d||(d=a.invokeWithinContext(a=>({key:o.bindTo(a.get(i.fN)),tokens:new j.w})),this._tokens.set(a,d)),d.key.set(!0),c=d.tokens.push(b),()=>{c&&(c(),d.key.set(!d.tokens.isEmpty()),c=void 0)}}cancel(a){let b=this._tokens.get(a);if(!b)return;let c=b.tokens.pop();c&&(c.cancel(),b.key.set(!b.tokens.isEmpty()))}},1);class p extends f.Qi{constructor(a,b){super(b),this.editor=a,this._unregister=a.invokeWithinContext(b=>b.get(n).add(a,this))}dispose(){this._unregister(),super.dispose()}}(0,h.E_)(new class extends h.DX{constructor(){super({id:"editor.cancelOperation",kbOpts:{weight:100,primary:9},precondition:o})}runEditorCommand(a,b){a.get(n).cancel(b)}});class q{constructor(a,b){if(this.flags=b,(1&this.flags)!=0){const b=a.getModel();this.modelVersionId=b?d.GP("{0}#{1}",b.uri.toString(),b.getVersionId()):null}else this.modelVersionId=null;(4&this.flags)!=0?this.position=a.getPosition():this.position=null,(2&this.flags)!=0?this.selection=a.getSelection():this.selection=null,(8&this.flags)!=0?(this.scrollLeft=a.getScrollLeft(),this.scrollTop=a.getScrollTop()):(this.scrollLeft=-1,this.scrollTop=-1)}_equals(a){return a instanceof q&&this.modelVersionId===a.modelVersionId&&this.scrollLeft===a.scrollLeft&&this.scrollTop===a.scrollTop&&(!!this.position||!a.position)&&(!this.position||!!a.position)&&(!this.position||!a.position||!!this.position.equals(a.position))&&(!!this.selection||!a.selection)&&(!this.selection||!!a.selection)&&(!this.selection||!a.selection||!!this.selection.equalsRange(a.selection))&&!0}validate(a){return this._equals(new q(a,this.flags))}}class r extends p{constructor(a,b,c,d){super(a,d),this._listener=new g.Cm,4&b&&this._listener.add(a.onDidChangeCursorPosition(a=>{c&&e.Q.containsPosition(c,a.position)||this.cancel()})),2&b&&this._listener.add(a.onDidChangeCursorSelection(a=>{c&&e.Q.containsRange(c,a.selection)||this.cancel()})),8&b&&this._listener.add(a.onDidScrollChange(a=>this.cancel())),1&b&&(this._listener.add(a.onDidChangeModel(a=>this.cancel())),this._listener.add(a.onDidChangeModelContent(a=>this.cancel())))}dispose(){this._listener.dispose(),super.dispose()}}class s extends f.Qi{constructor(a,b){super(b),this._listener=a.onDidChangeContent(()=>this.cancel())}dispose(){this._listener.dispose(),super.dispose()}}},27939:()=>{},28199:()=>{},28492:(a,b,c)=>{"use strict";c.d(b,{FW:()=>i,Zv:()=>e,dG:()=>g,z5:()=>j});var d=c(88586);function e(a,b){if("number"==typeof a){if(0===a)return null;let c=(65535&a)>>>0,d=(0xffff0000&a)>>>16;return new h(0!==d?[f(c,b),f(d,b)]:[f(c,b)])}{let c=[];for(let d=0;d<a.length;d++)c.push(f(a[d],b));return new h(c)}}function f(a,b){let c=!!(2048&a),d=!!(256&a);return new g(2===b?d:c,!!(1024&a),!!(512&a),2===b?c:d,255&a)}class g{constructor(a,b,c,d,e){this.ctrlKey=a,this.shiftKey=b,this.altKey=c,this.metaKey=d,this.keyCode=e}equals(a){return a instanceof g&&this.ctrlKey===a.ctrlKey&&this.shiftKey===a.shiftKey&&this.altKey===a.altKey&&this.metaKey===a.metaKey&&this.keyCode===a.keyCode}isModifierKey(){return 0===this.keyCode||5===this.keyCode||57===this.keyCode||6===this.keyCode||4===this.keyCode}isDuplicateModifierCase(){return this.ctrlKey&&5===this.keyCode||this.shiftKey&&4===this.keyCode||this.altKey&&6===this.keyCode||this.metaKey&&57===this.keyCode}}class h{constructor(a){if(0===a.length)throw(0,d.Qg)("chords");this.chords=a}}class i{constructor(a,b,c,d,e,f){this.ctrlKey=a,this.shiftKey=b,this.altKey=c,this.metaKey=d,this.keyLabel=e,this.keyAriaLabel=f}}class j{}},28577:()=>{},28658:(a,b,c)=>{"use strict";c.d(b,{f:()=>f,j:()=>e});var d=c(5738);let e=(0,c(21652).u1)("accessibilityService"),f=new d.N1("accessibilityModeEnabled",!1)},28672:(a,b,c)=>{"use strict";c.d(b,{l:()=>l,x:()=>m});var d=c(63048),e=c(87445),f=c(29501),g=c(16474),h=c(40201),i=c(50689);c(31516);var j=c(76302);let k=d.$,l={keybindingLabelBackground:void 0,keybindingLabelForeground:void 0,keybindingLabelBorder:void 0,keybindingLabelBottomBorder:void 0,keybindingLabelShadow:void 0};class m extends h.jG{constructor(a,b,c){super(),this.os=b,this.keyElements=new Set,this.options=c||Object.create(null);const g=this.options.keybindingLabelForeground;this.domNode=d.BC(a,k(".monaco-keybinding")),g&&(this.domNode.style.color=g),this.hover=this._register((0,e.i)().setupManagedHover((0,f.nZ)("mouse"),this.domNode,"")),this.didEverRender=!1,a.appendChild(this.domNode)}set(a,b){this.didEverRender&&this.keybinding===a&&m.areSame(this.matches,b)||(this.keybinding=a,this.matches=b,this.render())}render(){if(this.clear(),this.keybinding){let a=this.keybinding.getChords();a[0]&&this.renderChord(this.domNode,a[0],this.matches?this.matches.firstPart:null);for(let b=1;b<a.length;b++)d.BC(this.domNode,k("span.monaco-keybinding-key-chord-separator",void 0," ")),this.renderChord(this.domNode,a[b],this.matches?this.matches.chordPart:null);let b=this.options.disableTitle?void 0:this.keybinding.getAriaLabel()||void 0;this.hover.update(b),this.domNode.setAttribute("aria-label",b||"")}else this.options&&this.options.renderUnboundKeybindings&&this.renderUnbound(this.domNode);this.didEverRender=!0}clear(){d.w_(this.domNode),this.keyElements.clear()}renderChord(a,b,c){let d=g.Of.modifierLabels[this.os];b.ctrlKey&&this.renderKey(a,d.ctrlKey,!!c?.ctrlKey,d.separator),b.shiftKey&&this.renderKey(a,d.shiftKey,!!c?.shiftKey,d.separator),b.altKey&&this.renderKey(a,d.altKey,!!c?.altKey,d.separator),b.metaKey&&this.renderKey(a,d.metaKey,!!c?.metaKey,d.separator);let e=b.keyLabel;e&&this.renderKey(a,e,!!c?.keyCode,"")}renderKey(a,b,c,e){d.BC(a,this.createKeyElement(b,c?".highlight":"")),e&&d.BC(a,k("span.monaco-keybinding-key-separator",void 0,e))}renderUnbound(a){d.BC(a,this.createKeyElement((0,j.kg)(15,"Unbound")))}createKeyElement(a,b=""){let c=k("span.monaco-keybinding-key"+b,void 0,a);return this.keyElements.add(c),this.options.keybindingLabelBackground&&(c.style.backgroundColor=this.options.keybindingLabelBackground),this.options.keybindingLabelBorder&&(c.style.borderColor=this.options.keybindingLabelBorder),this.options.keybindingLabelBottomBorder&&(c.style.borderBottomColor=this.options.keybindingLabelBottomBorder),this.options.keybindingLabelShadow&&(c.style.boxShadow=`inset 0 -1px 0 ${this.options.keybindingLabelShadow}`),c}static areSame(a,b){return a===b||!a&&!b||!!a&&!!b&&(0,i.aI)(a.firstPart,b.firstPart)&&(0,i.aI)(a.chordPart,b.chordPart)}}},29139:(a,b,c)=>{"use strict";c.d(b,{Ft:()=>i,V7:()=>h,Xo:()=>j,ok:()=>e,vA:()=>g,xb:()=>f});var d=c(88586);function e(a,b){if(!a)throw Error(b?`Assertion failed (${b})`:"Assertion Failed")}function f(a,b="Unreachable"){throw Error(b)}function g(a,b="unexpected state"){if(!a)throw"string"==typeof b?new d.D7(`Assertion Failed: ${b}`):b}function h(a,b="Soft Assertion Failed"){a||(0,d.dz)(new d.D7(b))}function i(a){a()||(a(),(0,d.dz)(new d.D7("Assertion Failed")))}function j(a,b){let c=0;for(;c<a.length-1;){if(!b(a[c],a[c+1]))return!1;c++}return!0}},29492:(a,b,c)=>{"use strict";c.d(b,{I:()=>e});var d=c(83614);class e extends d.LN{constructor(a){super(),this._getContext=a}runAction(a,b){let c=this._getContext();return super.runAction(a,c)}}},29501:(a,b,c)=>{"use strict";c.d(b,{MW:()=>h,bW:()=>j,nZ:()=>i});var d=c(85851);let e=()=>({get delay(){return -1},dispose:()=>{},showHover:()=>{}}),f=new d.d(()=>e("mouse",!1)),g=new d.d(()=>e("element",!1));function h(a){e=a}function i(a){return"element"===a?g.value:f.value}function j(){return e("element",!0)}},29989:()=>{},30389:()=>{},30908:(a,b,c)=>{"use strict";var d,e,f,g;function h(a){return a===d.HIGH_CONTRAST_DARK||a===d.HIGH_CONTRAST_LIGHT}function i(a){return a===d.DARK||a===d.HIGH_CONTRAST_DARK}c.d(b,{Bb:()=>h,HD:()=>i,X2:()=>e,zM:()=>d}),(f=d||(d={})).DARK="dark",f.LIGHT="light",f.HIGH_CONTRAST_DARK="hcDark",f.HIGH_CONTRAST_LIGHT="hcLight",(g=e||(e={})).VS="vs",g.VS_DARK="vs-dark",g.HC_BLACK="hc-black",g.HC_LIGHT="hc-light"},31343:()=>{},31383:(a,b,c)=>{"use strict";c.d(b,{n:()=>d,r:()=>e});class d{constructor(a){this._prefix=a,this._lastId=0}nextId(){return this._prefix+ ++this._lastId}}let e=new d("id#")},31516:()=>{},32245:(a,b,c)=>{"use strict";c.d(b,{Ho:()=>b5,kI:()=>b6,Bz:()=>bX,oL:()=>bY});var d,e,f,g,h=c(42891),i=c(81034),j=c(88586),k=c(3457),l=c(40201),m=c(77747),n=c(99951),o=c(77816),p=c(70033),q=c(95554),r=c(52212),s=c(32263),t=c(72316),u=c(4751),v=c(84834),w=c(67752),x=c(78029),y=c(43099);class z{constructor(a,b,c,d){this.range=a,this.nestingLevel=b,this.nestingLevelOfEqualBracketType=c,this.isInvalid=d}}class A{constructor(a,b,c,d,e,f){this.range=a,this.openingBracketRange=b,this.closingBracketRange=c,this.nestingLevel=d,this.nestingLevelOfEqualBracketType=e,this.bracketPairNode=f}get openingBracketInfo(){return this.bracketPairNode.openingBracket.bracketInfo}}class B extends A{constructor(a,b,c,d,e,f,g){super(a,b,c,d,e,f),this.minVisibleColumnIndentation=g}}var C=c(79913),D=c(84953),E=c(88812),F=c(79703),G=c(65877),H=c(39959),I=c(44607);class J extends l.jG{didLanguageChange(a){return this.brackets.didLanguageChange(a)}constructor(a,b){if(super(),this.textModel=a,this.getLanguageConfiguration=b,this.didChangeEmitter=new k.vl,this.denseKeyProvider=new G.Mg,this.brackets=new D.Z(this.denseKeyProvider,this.getLanguageConfiguration),this.onDidChange=this.didChangeEmitter.event,this.queuedTextEditsForInitialAstWithoutTokens=[],this.queuedTextEdits=[],a.tokenization.hasTokens)2===a.tokenization.backgroundTokenizationState?(this.initialAstWithoutTokens=void 0,this.astWithTokens=this.parseDocumentFromTextBuffer([],void 0,!1)):(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer([],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens);else{const a=this.brackets.getSingleLanguageBracketTokens(this.textModel.getLanguageId()),b=new H._(this.textModel.getValue(),a);this.initialAstWithoutTokens=(0,F.T)(b,[],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens}}handleDidChangeBackgroundTokenizationState(){if(2===this.textModel.tokenization.backgroundTokenizationState){let a=void 0===this.initialAstWithoutTokens;this.initialAstWithoutTokens=void 0,a||this.didChangeEmitter.fire()}}handleDidChangeTokens({ranges:a}){let b=a.map(a=>new C.c((0,E.qe)(a.fromLineNumber-1,0),(0,E.qe)(a.toLineNumber,0),(0,E.qe)(a.toLineNumber-a.fromLineNumber+1,0)));this.handleEdits(b,!0),this.initialAstWithoutTokens||this.didChangeEmitter.fire()}handleContentChanged(a){let b=C.c.fromModelContentChanges(a.changes);this.handleEdits(b,!1)}handleEdits(a,b){let c=(0,I.M)(this.queuedTextEdits,a);this.queuedTextEdits=c,this.initialAstWithoutTokens&&!b&&(this.queuedTextEditsForInitialAstWithoutTokens=(0,I.M)(this.queuedTextEditsForInitialAstWithoutTokens,a))}flushQueue(){this.queuedTextEdits.length>0&&(this.astWithTokens=this.parseDocumentFromTextBuffer(this.queuedTextEdits,this.astWithTokens,!1),this.queuedTextEdits=[]),this.queuedTextEditsForInitialAstWithoutTokens.length>0&&(this.initialAstWithoutTokens&&(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer(this.queuedTextEditsForInitialAstWithoutTokens,this.initialAstWithoutTokens,!1)),this.queuedTextEditsForInitialAstWithoutTokens=[])}parseDocumentFromTextBuffer(a,b,c){let d=new H.tk(this.textModel,this.brackets);return(0,F.T)(d,a,b,c)}getBracketsInRange(a,b){this.flushQueue();let c=(0,E.qe)(a.startLineNumber-1,a.startColumn-1),d=(0,E.qe)(a.endLineNumber-1,a.endColumn-1);return new h.c1(a=>{let e=this.initialAstWithoutTokens||this.astWithTokens;!function a(b,c,d,e,f,g,h,i,j,k,l=!1){if(h>200)return!0;a:for(;;)switch(b.kind){case 4:{let i=b.childrenLength;for(let l=0;l<i;l++){let i=b.getChild(l);if(i){if(d=(0,E.QB)(c,i.length),(0,E.vr)(c,f)&&(0,E.o0)(d,e)){if((0,E.o0)(d,f)){b=i;continue a}if(!a(i,c,d,e,f,g,h,0,j,k))return!1}c=d}}return!0}case 2:{let l=!k||!b.closingBracket||b.closingBracket.bracketInfo.closesColorized(b.openingBracket.bracketInfo),m=0;if(j){let a=j.get(b.openingBracket.text);void 0===a&&(a=0),m=a,l&&(a++,j.set(b.openingBracket.text,a))}let n=b.childrenLength;for(let o=0;o<n;o++){let n=b.getChild(o);if(n){if(d=(0,E.QB)(c,n.length),(0,E.vr)(c,f)&&(0,E.o0)(d,e)){if((0,E.o0)(d,f)&&1!==n.kind){b=n,l?(h++,i=m+1):i=m;continue a}if((l||1!==n.kind||!b.closingBracket)&&!a(n,c,d,e,f,g,l?h+1:h,l?m+1:m,j,k,!b.closingBracket))return!1}c=d}}return j?.set(b.openingBracket.text,m),!0}case 3:return g(new z((0,E.Qx)(c,d),h-1,0,!0));case 1:return g(new z((0,E.Qx)(c,d),h-1,i-1,l));case 0:return!0}}(e,E.Vp,e.length,c,d,a,0,0,new Map,b)})}getBracketPairsInRange(a,b){this.flushQueue();let c=(0,E.VL)(a.getStartPosition()),d=(0,E.VL)(a.getEndPosition());return new h.c1(a=>{let e=this.initialAstWithoutTokens||this.astWithTokens,f=new K(a,b,this.textModel);!function a(b,c,d,e,f,g,h,i){if(h>200)return!0;let j=!0;if(2===b.kind){let k=0;if(i){let a=i.get(b.openingBracket.text);void 0===a&&(a=0),k=a,a++,i.set(b.openingBracket.text,a)}let l=(0,E.QB)(c,b.openingBracket.length),m=-1;if(g.includeMinIndentation&&(m=b.computeMinIndentation(c,g.textModel)),j=g.push(new B((0,E.Qx)(c,d),(0,E.Qx)(c,l),b.closingBracket?(0,E.Qx)((0,E.QB)(l,b.child?.length||E.Vp),d):void 0,h,k,b,m)),c=l,j&&b.child){let k=b.child;if(d=(0,E.QB)(c,k.length),(0,E.vr)(c,f)&&(0,E.o0)(d,e)&&!(j=a(k,c,d,e,f,g,h+1,i)))return!1}i?.set(b.openingBracket.text,k)}else{let d=c;for(let c of b.children){let b=d;if(d=(0,E.QB)(d,c.length),(0,E.vr)(b,f)&&(0,E.vr)(e,d)&&!(j=a(c,b,d,e,f,g,h,i)))return!1}}return j}(e,E.Vp,e.length,c,d,f,0,new Map)})}getFirstBracketAfter(a){this.flushQueue();let b=this.initialAstWithoutTokens||this.astWithTokens;return function a(b,c,d,e){if(4===b.kind||2===b.kind)for(let f of b.children){if(d=(0,E.QB)(c,f.length),(0,E.zG)(e,d)){let b=a(f,c,d,e);if(b)return b}c=d}else if(3===b.kind);else if(1===b.kind){let a=(0,E.Qx)(c,d);return{bracketInfo:b.bracketInfo,range:a}}return null}(b,E.Vp,b.length,(0,E.VL)(a))}getFirstBracketBefore(a){this.flushQueue();let b=this.initialAstWithoutTokens||this.astWithTokens;return function a(b,c,d,e){if(4===b.kind||2===b.kind){let f=[];for(let a of b.children)d=(0,E.QB)(c,a.length),f.push({nodeOffsetStart:c,nodeOffsetEnd:d}),c=d;for(let c=f.length-1;c>=0;c--){let{nodeOffsetStart:d,nodeOffsetEnd:g}=f[c];if((0,E.zG)(d,e)){let f=a(b.children[c],d,g,e);if(f)return f}}}else if(3===b.kind);else if(1===b.kind){let a=(0,E.Qx)(c,d);return{bracketInfo:b.bracketInfo,range:a}}return null}(b,E.Vp,b.length,(0,E.VL)(a))}}class K{constructor(a,b,c){this.push=a,this.includeMinIndentation=b,this.textModel=c}}class L extends l.jG{get canBuildAST(){return 5e6>=this.textModel.getValueLength()}constructor(a,b){super(),this.textModel=a,this.languageConfigurationService=b,this.bracketPairsTree=this._register(new l.HE),this.onDidChangeEmitter=new k.vl,this.onDidChange=this.onDidChangeEmitter.event,this.bracketsRequested=!1}handleLanguageConfigurationServiceChange(a){(!a.languageId||this.bracketPairsTree.value?.object.didLanguageChange(a.languageId))&&(this.bracketPairsTree.clear(),this.updateBracketPairsTree())}handleDidChangeOptions(a){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeLanguage(a){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeContent(a){this.bracketPairsTree.value?.object.handleContentChanged(a)}handleDidChangeBackgroundTokenizationState(){this.bracketPairsTree.value?.object.handleDidChangeBackgroundTokenizationState()}handleDidChangeTokens(a){this.bracketPairsTree.value?.object.handleDidChangeTokens(a)}updateBracketPairsTree(){if(this.bracketsRequested&&this.canBuildAST){if(!this.bracketPairsTree.value){var a,b;let c=new l.Cm;this.bracketPairsTree.value=(a=c.add(new J(this.textModel,a=>this.languageConfigurationService.getLanguageConfiguration(a))),b=c,{object:a,dispose:()=>b?.dispose()}),c.add(this.bracketPairsTree.value.object.onDidChange(a=>this.onDidChangeEmitter.fire(a))),this.onDidChangeEmitter.fire()}}else this.bracketPairsTree.value&&(this.bracketPairsTree.clear(),this.onDidChangeEmitter.fire())}getBracketPairsInRange(a){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(a,!1)||h.c1.empty}getBracketPairsInRangeWithMinIndentation(a){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(a,!0)||h.c1.empty}getBracketsInRange(a,b=!1){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketsInRange(a,b)||h.c1.empty}findMatchingBracketUp(a,b,c){let d=this.textModel.validatePosition(b),e=this.textModel.getLanguageIdAtPosition(d.lineNumber,d.column);if(this.canBuildAST){let c=this.languageConfigurationService.getLanguageConfiguration(e).bracketsNew.getClosingBracketInfo(a);if(!c)return null;let d=this.getBracketPairsInRange(r.Q.fromPositions(b,b)).findLast(a=>c.closes(a.openingBracketInfo));return d?d.openingBracketRange:null}{let b=a.toLowerCase(),f=this.languageConfigurationService.getLanguageConfiguration(e).brackets;if(!f)return null;let g=f.textIsBracket[b];return g?O(this._findMatchingBracketUp(g,d,M(c))):null}}matchBracket(a,b){if(this.canBuildAST){let b=this.getBracketPairsInRange(r.Q.fromPositions(a,a)).filter(b=>void 0!==b.closingBracketRange&&(b.openingBracketRange.containsPosition(a)||b.closingBracketRange.containsPosition(a))).findLastMaxBy((0,h.VE)(b=>b.openingBracketRange.containsPosition(a)?b.openingBracketRange:b.closingBracketRange,r.Q.compareRangesUsingStarts));return b?[b.openingBracketRange,b.closingBracketRange]:null}{let c=M(b);return this._matchBracket(this.textModel.validatePosition(a),c)}}_establishBracketSearchOffsets(a,b,c,d){let e=b.getCount(),f=b.getLanguageId(d),g=Math.max(0,a.column-1-c.maxBracketLength);for(let a=d-1;a>=0;a--){let c=b.getEndOffset(a);if(c<=g)break;if((0,x.Yo)(b.getStandardTokenType(a))||b.getLanguageId(a)!==f){g=c;break}}let h=Math.min(b.getLineContent().length,a.column-1+c.maxBracketLength);for(let a=d+1;a<e;a++){let c=b.getStartOffset(a);if(c>=h)break;if((0,x.Yo)(b.getStandardTokenType(a))||b.getLanguageId(a)!==f){h=c;break}}return{searchStartOffset:g,searchEndOffset:h}}_matchBracket(a,b){let c=a.lineNumber,d=this.textModel.tokenization.getLineTokens(c),e=this.textModel.getLineContent(c),f=d.findTokenIndexAtOffset(a.column-1);if(f<0)return null;let g=this.languageConfigurationService.getLanguageConfiguration(d.getLanguageId(f)).brackets;if(g&&!(0,x.Yo)(d.getStandardTokenType(f))){let{searchStartOffset:h,searchEndOffset:i}=this._establishBracketSearchOffsets(a,d,g,f),j=null;for(;;){let d=y.Fu.findNextBracketInRange(g.forwardRegex,c,e,h,i);if(!d)break;if(d.startColumn<=a.column&&a.column<=d.endColumn){let a=e.substring(d.startColumn-1,d.endColumn-1).toLowerCase(),c=this._matchFoundBracket(d,g.textIsBracket[a],g.textIsOpenBracket[a],b);if(c){if(c instanceof N)return null;j=c}}h=d.endColumn-1}if(j)return j}if(f>0&&d.getStartOffset(f)===a.column-1){let g=f-1,h=this.languageConfigurationService.getLanguageConfiguration(d.getLanguageId(g)).brackets;if(h&&!(0,x.Yo)(d.getStandardTokenType(g))){let{searchStartOffset:f,searchEndOffset:i}=this._establishBracketSearchOffsets(a,d,h,g),j=y.Fu.findPrevBracketInRange(h.reversedRegex,c,e,f,i);if(j&&j.startColumn<=a.column&&a.column<=j.endColumn){let a=e.substring(j.startColumn-1,j.endColumn-1).toLowerCase(),c=this._matchFoundBracket(j,h.textIsBracket[a],h.textIsOpenBracket[a],b);if(c)return c instanceof N?null:c}}}return null}_matchFoundBracket(a,b,c,d){if(!b)return null;let e=c?this._findMatchingBracketDown(b,a.getEndPosition(),d):this._findMatchingBracketUp(b,a.getStartPosition(),d);return e?e instanceof N?e:[a,e]:null}_findMatchingBracketUp(a,b,c){let d=a.languageId,e=a.reversedRegex,f=-1,g=0,h=(b,d,h,i)=>{for(;;){if(c&&++g%100==0&&!c())return N.INSTANCE;let j=y.Fu.findPrevBracketInRange(e,b,d,h,i);if(!j)break;let k=d.substring(j.startColumn-1,j.endColumn-1).toLowerCase();if(a.isOpen(k)?f++:a.isClose(k)&&f--,0===f)return j;i=j.startColumn-1}return null};for(let a=b.lineNumber;a>=1;a--){let c=this.textModel.tokenization.getLineTokens(a),e=c.getCount(),f=this.textModel.getLineContent(a),g=e-1,i=f.length,j=f.length;a===b.lineNumber&&(g=c.findTokenIndexAtOffset(b.column-1),i=b.column-1,j=b.column-1);let k=!0;for(;g>=0;g--){let b=c.getLanguageId(g)===d&&!(0,x.Yo)(c.getStandardTokenType(g));if(b)k?i=c.getStartOffset(g):(i=c.getStartOffset(g),j=c.getEndOffset(g));else if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}k=b}if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}}return null}_findMatchingBracketDown(a,b,c){let d=a.languageId,e=a.forwardRegex,f=1,g=0,h=(b,d,h,i)=>{for(;;){if(c&&++g%100==0&&!c())return N.INSTANCE;let j=y.Fu.findNextBracketInRange(e,b,d,h,i);if(!j)break;let k=d.substring(j.startColumn-1,j.endColumn-1).toLowerCase();if(a.isOpen(k)?f++:a.isClose(k)&&f--,0===f)return j;h=j.endColumn-1}return null},i=this.textModel.getLineCount();for(let a=b.lineNumber;a<=i;a++){let c=this.textModel.tokenization.getLineTokens(a),e=c.getCount(),f=this.textModel.getLineContent(a),g=0,i=0,j=0;a===b.lineNumber&&(g=c.findTokenIndexAtOffset(b.column-1),i=b.column-1,j=b.column-1);let k=!0;for(;g<e;g++){let b=c.getLanguageId(g)===d&&!(0,x.Yo)(c.getStandardTokenType(g));if(b)k||(i=c.getStartOffset(g)),j=c.getEndOffset(g);else if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}k=b}if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}}return null}findPrevBracket(a){let b=this.textModel.validatePosition(a);if(this.canBuildAST)return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getFirstBracketBefore(b)||null;let c=null,d=null,e=null;for(let a=b.lineNumber;a>=1;a--){let f=this.textModel.tokenization.getLineTokens(a),g=f.getCount(),h=this.textModel.getLineContent(a),i=g-1,j=h.length,k=h.length;if(a===b.lineNumber){i=f.findTokenIndexAtOffset(b.column-1),j=b.column-1,k=b.column-1;let a=f.getLanguageId(i);c!==a&&(c=a,d=this.languageConfigurationService.getLanguageConfiguration(c).brackets,e=this.languageConfigurationService.getLanguageConfiguration(c).bracketsNew)}let l=!0;for(;i>=0;i--){let b=f.getLanguageId(i);if(c!==b){if(d&&e&&l&&j!==k){let b=y.Fu.findPrevBracketInRange(d.reversedRegex,a,h,j,k);if(b)return this._toFoundBracket(e,b);l=!1}c=b,d=this.languageConfigurationService.getLanguageConfiguration(c).brackets,e=this.languageConfigurationService.getLanguageConfiguration(c).bracketsNew}let g=!!d&&!(0,x.Yo)(f.getStandardTokenType(i));if(g)l?j=f.getStartOffset(i):(j=f.getStartOffset(i),k=f.getEndOffset(i));else if(e&&d&&l&&j!==k){let b=y.Fu.findPrevBracketInRange(d.reversedRegex,a,h,j,k);if(b)return this._toFoundBracket(e,b)}l=g}if(e&&d&&l&&j!==k){let b=y.Fu.findPrevBracketInRange(d.reversedRegex,a,h,j,k);if(b)return this._toFoundBracket(e,b)}}return null}findNextBracket(a){let b=this.textModel.validatePosition(a);if(this.canBuildAST)return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getFirstBracketAfter(b)||null;let c=this.textModel.getLineCount(),d=null,e=null,f=null;for(let a=b.lineNumber;a<=c;a++){let c=this.textModel.tokenization.getLineTokens(a),g=c.getCount(),h=this.textModel.getLineContent(a),i=0,j=0,k=0;if(a===b.lineNumber){i=c.findTokenIndexAtOffset(b.column-1),j=b.column-1,k=b.column-1;let a=c.getLanguageId(i);d!==a&&(d=a,e=this.languageConfigurationService.getLanguageConfiguration(d).brackets,f=this.languageConfigurationService.getLanguageConfiguration(d).bracketsNew)}let l=!0;for(;i<g;i++){let b=c.getLanguageId(i);if(d!==b){if(f&&e&&l&&j!==k){let b=y.Fu.findNextBracketInRange(e.forwardRegex,a,h,j,k);if(b)return this._toFoundBracket(f,b);l=!1}d=b,e=this.languageConfigurationService.getLanguageConfiguration(d).brackets,f=this.languageConfigurationService.getLanguageConfiguration(d).bracketsNew}let g=!!e&&!(0,x.Yo)(c.getStandardTokenType(i));if(g)l||(j=c.getStartOffset(i)),k=c.getEndOffset(i);else if(f&&e&&l&&j!==k){let b=y.Fu.findNextBracketInRange(e.forwardRegex,a,h,j,k);if(b)return this._toFoundBracket(f,b)}l=g}if(f&&e&&l&&j!==k){let b=y.Fu.findNextBracketInRange(e.forwardRegex,a,h,j,k);if(b)return this._toFoundBracket(f,b)}}return null}findEnclosingBrackets(a,b){let c=this.textModel.validatePosition(a);if(this.canBuildAST){let a=r.Q.fromPositions(c),b=this.getBracketPairsInRange(r.Q.fromPositions(c,c)).findLast(b=>void 0!==b.closingBracketRange&&b.range.strictContainsRange(a));return b?[b.openingBracketRange,b.closingBracketRange]:null}let d=M(b),e=this.textModel.getLineCount(),f=new Map,g=[],h=(a,b)=>{if(!f.has(a)){let c=[];for(let a=0,d=b?b.brackets.length:0;a<d;a++)c[a]=0;f.set(a,c)}g=f.get(a)},i=0,j=(a,b,c,e,f)=>{for(;;){if(d&&++i%100==0&&!d())return N.INSTANCE;let h=y.Fu.findNextBracketInRange(a.forwardRegex,b,c,e,f);if(!h)break;let j=c.substring(h.startColumn-1,h.endColumn-1).toLowerCase(),k=a.textIsBracket[j];if(k&&(k.isOpen(j)?g[k.index]++:k.isClose(j)&&g[k.index]--,-1===g[k.index]))return this._matchFoundBracket(h,k,!1,d);e=h.endColumn-1}return null},k=null,l=null;for(let a=c.lineNumber;a<=e;a++){let b=this.textModel.tokenization.getLineTokens(a),d=b.getCount(),e=this.textModel.getLineContent(a),f=0,g=0,i=0;if(a===c.lineNumber){f=b.findTokenIndexAtOffset(c.column-1),g=c.column-1,i=c.column-1;let a=b.getLanguageId(f);k!==a&&(k=a,l=this.languageConfigurationService.getLanguageConfiguration(k).brackets,h(k,l))}let m=!0;for(;f<d;f++){let c=b.getLanguageId(f);if(k!==c){if(l&&m&&g!==i){let b=j(l,a,e,g,i);if(b)return O(b);m=!1}k=c,l=this.languageConfigurationService.getLanguageConfiguration(k).brackets,h(k,l)}let d=!!l&&!(0,x.Yo)(b.getStandardTokenType(f));if(d)m||(g=b.getStartOffset(f)),i=b.getEndOffset(f);else if(l&&m&&g!==i){let b=j(l,a,e,g,i);if(b)return O(b)}m=d}if(l&&m&&g!==i){let b=j(l,a,e,g,i);if(b)return O(b)}}return null}_toFoundBracket(a,b){if(!b)return null;let c=this.textModel.getValueInRange(b);c=c.toLowerCase();let d=a.getBracketInfo(c);return d?{range:b,bracketInfo:d}:null}}function M(a){if(void 0===a)return()=>!0;{let b=Date.now();return()=>Date.now()-b<=a}}class N{static{this.INSTANCE=new N}constructor(){this._searchCanceledBrand=void 0}}function O(a){return a instanceof N?null:a}var P=c(80230),Q=c(14061);class R extends l.jG{constructor(a){super(),this.textModel=a,this.colorProvider=new S,this.onDidChangeEmitter=new k.vl,this.onDidChange=this.onDidChangeEmitter.event,this.colorizationOptions=a.getOptions().bracketPairColorizationOptions,this._register(a.bracketPairs.onDidChange(a=>{this.onDidChangeEmitter.fire()}))}handleDidChangeOptions(a){this.colorizationOptions=this.textModel.getOptions().bracketPairColorizationOptions}getDecorationsInRange(a,b,c,d){return d||void 0===b||!this.colorizationOptions.enabled?[]:this.textModel.bracketPairs.getBracketsInRange(a,!0).map(a=>({id:`bracket${a.range.toString()}-${a.nestingLevel}`,options:{description:"BracketPairColorization",inlineClassName:this.colorProvider.getInlineClassName(a,this.colorizationOptions.independentColorPoolPerBracketType)},ownerId:0,range:a.range})).toArray()}getAllDecorations(a,b){return void 0!==a&&this.colorizationOptions.enabled?this.getDecorationsInRange(new r.Q(1,1,this.textModel.getLineCount(),1),a,b):[]}}class S{constructor(){this.unexpectedClosingBracketClassName="unexpected-closing-bracket"}getInlineClassName(a,b){return a.isInvalid?this.unexpectedClosingBracketClassName:this.getInlineClassNameOfLevel(b?a.nestingLevelOfEqualBracketType:a.nestingLevel)}getInlineClassNameOfLevel(a){return`bracket-highlighting-${a%30}`}}(0,Q.zy)((a,b)=>{let c=[P.sN,P.lQ,P.ss,P.l5,P.sH,P.zp],d=new S;b.addRule(`.monaco-editor .${d.unexpectedClosingBracketClassName} { color: ${a.getColor(P.s7)}; }`);let e=c.map(b=>a.getColor(b)).filter(a=>!!a).filter(a=>!a.isTransparent());for(let a=0;a<30;a++){let c=e[a%e.length];b.addRule(`.monaco-editor .${d.getInlineClassNameOfLevel(a)} { color: ${c}; }`)}});var T=c(49355),U=c(20393);class V{constructor(){this.spacesDiff=0,this.looksLikeAlignment=!1}}function W(a,b,c){let d=Math.min(a.getLineCount(),1e4),e=0,f=0,g="",h=0,i=[0,0,0,0,0,0,0,0,0],j=new V;for(let k=1;k<=d;k++){let d=a.getLineLength(k),l=a.getLineContent(k),m=d<=65536,n=!1,o=0,p=0,q=0;for(let b=0;b<d;b++){let c=m?l.charCodeAt(b):a.getLineCharCode(k,b);if(9===c)q++;else if(32===c)p++;else{n=!0,o=b;break}}if(!n||(q>0?e++:p>1&&f++,!function(a,b,c,d,e){let f;for(f=0,e.spacesDiff=0,e.looksLikeAlignment=!1;f<b&&f<d&&a.charCodeAt(f)===c.charCodeAt(f);f++);let g=0,h=0;for(let c=f;c<b;c++)32===a.charCodeAt(c)?g++:h++;let i=0,j=0;for(let a=f;a<d;a++)32===c.charCodeAt(a)?i++:j++;if(g>0&&h>0||i>0&&j>0)return;let k=Math.abs(h-j),l=Math.abs(g-i);if(0===k){e.spacesDiff=l,l>0&&0<=i-1&&i-1<a.length&&i<c.length&&32!==c.charCodeAt(i)&&32===a.charCodeAt(i-1)&&44===a.charCodeAt(a.length-1)&&(e.looksLikeAlignment=!0);return}l%k==0&&(e.spacesDiff=l/k)}(g,h,l,o,j),j.looksLikeAlignment&&!(c&&b===j.spacesDiff)))continue;let r=j.spacesDiff;r<=8&&i[r]++,g=l,h=o}let k=c;e!==f&&(k=e<f);let l=b;if(k){let a=k?0:.1*d;[2,4,6,8,3,5,7].forEach(b=>{let c=i[b];c>a&&(a=c,l=b)}),4===l&&i[4]>0&&i[2]>0&&i[2]>=i[4]/2&&(l=2)}return{insertSpaces:k,tabSize:l}}function X(a){return(1&a.metadata)>>>0}function Y(a,b){a.metadata=254&a.metadata|b}function Z(a){return(2&a.metadata)>>>1==1}function $(a,b){a.metadata=253&a.metadata|!!b<<1}function _(a){return(4&a.metadata)>>>2==1}function aa(a,b){a.metadata=251&a.metadata|!!b<<2}function ab(a){return(64&a.metadata)>>>6==1}function ac(a,b){a.metadata=191&a.metadata|!!b<<6}function ad(a){return(128&a.metadata)>>>7==1}function ae(a,b){a.metadata=127&a.metadata|!!b<<7}function af(a,b){a.metadata=231&a.metadata|b<<3}function ag(a,b){a.metadata=223&a.metadata|!!b<<5}class ah{constructor(a,b,c){this.metadata=0,this.parent=this,this.left=this,this.right=this,Y(this,1),this.start=b,this.end=c,this.delta=0,this.maxEnd=c,this.id=a,this.ownerId=0,this.options=null,aa(this,!1),ac(this,!1),af(this,1),ag(this,!1),ae(this,!1),this.cachedVersionId=0,this.cachedAbsoluteStart=b,this.cachedAbsoluteEnd=c,this.range=null,$(this,!1)}reset(a,b,c,d){this.start=b,this.end=c,this.maxEnd=c,this.cachedVersionId=a,this.cachedAbsoluteStart=b,this.cachedAbsoluteEnd=c,this.range=d}setOptions(a){this.options=a;let b=this.options.className;aa(this,"squiggly-error"===b||"squiggly-warning"===b||"squiggly-info"===b),ac(this,null!==this.options.glyphMarginClassName),af(this,this.options.stickiness),ag(this,this.options.collapseOnReplaceEdit),ae(this,this.options.affectsFont??!1)}setCachedOffsets(a,b,c){this.cachedVersionId!==c&&(this.range=null),this.cachedVersionId=c,this.cachedAbsoluteStart=a,this.cachedAbsoluteEnd=b}detach(){this.parent=null,this.left=null,this.right=null}}let ai=new ah(null,0,0);ai.parent=ai,ai.left=ai,ai.right=ai,Y(ai,0);class aj{constructor(){this.root=ai,this.requestNormalizeDelta=!1}intervalSearch(a,b,c,d,e,f,g){return this.root===ai?[]:function(a,b,c,d,e,f,g,h){let i=a.root,j=0,k=0,l=0,m=[],n=0;for(;i!==ai;){if(Z(i)){$(i.left,!1),$(i.right,!1),i===i.parent.right&&(j-=i.parent.delta),i=i.parent;continue}if(!Z(i.left)){if(j+i.maxEnd<b){$(i,!0);continue}if(i.left!==ai){i=i.left;continue}}if((k=j+i.start)>c){$(i,!0);continue}if((l=j+i.end)>=b){i.setCachedOffsets(k,l,g);let a=!0;d&&i.ownerId&&i.ownerId!==d&&(a=!1),e&&_(i)&&(a=!1),f&&ad(i)&&(a=!1),h&&!ab(i)&&(a=!1),a&&(m[n++]=i)}if($(i,!0),i.right!==ai&&!Z(i.right)){j+=i.delta,i=i.right;continue}}return $(a.root,!1),m}(this,a,b,c,d,e,f,g)}search(a,b,c,d,e){return this.root===ai?[]:function(a,b,c,d,e,f){let g=a.root,h=0,i=0,j=0,k=[],l=0;for(;g!==ai;){if(Z(g)){$(g.left,!1),$(g.right,!1),g===g.parent.right&&(h-=g.parent.delta),g=g.parent;continue}if(g.left!==ai&&!Z(g.left)){g=g.left;continue}i=h+g.start,j=h+g.end,g.setCachedOffsets(i,j,e);let a=!0;if(b&&g.ownerId&&g.ownerId!==b&&(a=!1),c&&_(g)&&(a=!1),d&&ad(g)&&(a=!1),f&&!ab(g)&&(a=!1),a&&(k[l++]=g),$(g,!0),g.right!==ai&&!Z(g.right)){h+=g.delta,g=g.right;continue}}return $(a.root,!1),k}(this,a,b,c,d,e)}collectNodesFromOwner(a){return function(a,b){let c=a.root,d=[],e=0;for(;c!==ai;){if(Z(c)){$(c.left,!1),$(c.right,!1),c=c.parent;continue}if(c.left!==ai&&!Z(c.left)){c=c.left;continue}if(c.ownerId===b&&(d[e++]=c),$(c,!0),c.right!==ai&&!Z(c.right)){c=c.right;continue}}return $(a.root,!1),d}(this,a)}collectNodesPostOrder(){return function(a){let b=a.root,c=[],d=0;for(;b!==ai;){if(Z(b)){$(b.left,!1),$(b.right,!1),b=b.parent;continue}if(b.left!==ai&&!Z(b.left)){b=b.left;continue}if(b.right!==ai&&!Z(b.right)){b=b.right;continue}c[d++]=b,$(b,!0)}return $(a.root,!1),c}(this)}insert(a){al(this,a),this._normalizeDeltaIfNecessary()}delete(a){am(this,a),this._normalizeDeltaIfNecessary()}resolveNode(a,b){let c=a,d=0;for(;a!==this.root;)a===a.parent.right&&(d+=a.parent.delta),a=a.parent;let e=c.start+d,f=c.end+d;c.setCachedOffsets(e,f,b)}acceptReplace(a,b,c,d){let e=function(a,b,c){let d=a.root,e=0,f=0,g=0,h=[],i=0;for(;d!==ai;){if(Z(d)){$(d.left,!1),$(d.right,!1),d===d.parent.right&&(e-=d.parent.delta),d=d.parent;continue}if(!Z(d.left)){if(e+d.maxEnd<b){$(d,!0);continue}if(d.left!==ai){d=d.left;continue}}if((f=e+d.start)>c){$(d,!0);continue}if((g=e+d.end)>=b&&(d.setCachedOffsets(f,g,0),h[i++]=d),$(d,!0),d.right!==ai&&!Z(d.right)){e+=d.delta,d=d.right;continue}}return $(a.root,!1),h}(this,a,a+b);for(let a=0,b=e.length;a<b;a++)am(this,e[a]);this._normalizeDeltaIfNecessary(),function(a,b,c,d){let e=a.root,f=0,g=d-(c-b);for(;e!==ai;){if(Z(e)){$(e.left,!1),$(e.right,!1),e===e.parent.right&&(f-=e.parent.delta),ar(e),e=e.parent;continue}if(!Z(e.left)){if(f+e.maxEnd<b){$(e,!0);continue}if(e.left!==ai){e=e.left;continue}}if(f+e.start>c){e.start+=g,e.end+=g,e.delta+=g,(e.delta<-0x40000000||e.delta>0x40000000)&&(a.requestNormalizeDelta=!0),$(e,!0);continue}if($(e,!0),e.right!==ai&&!Z(e.right)){f+=e.delta,e=e.right;continue}}$(a.root,!1)}(this,a,a+b,c),this._normalizeDeltaIfNecessary();for(let f=0,g=e.length;f<g;f++){let g=e[f];g.start=g.cachedAbsoluteStart,g.end=g.cachedAbsoluteEnd,function(a,b,c,d,e){let f=(24&a.metadata)>>>3,g=0===f||2===f,h=1===f||2===f,i=c-b,j=Math.min(i,d),k=a.start,l=!1,m=a.end,n=!1;b<=k&&m<=c&&(32&a.metadata)>>>5==1&&(a.start=b,l=!0,a.end=b,n=!0);{let a=e?1:2*(i>0);!l&&ak(k,g,b,a)&&(l=!0),!n&&ak(m,h,b,a)&&(n=!0)}if(j>0&&!e){let a=2*(i>d);!l&&ak(k,g,b+j,a)&&(l=!0),!n&&ak(m,h,b+j,a)&&(n=!0)}{let f=+!!e;!l&&ak(k,g,c,f)&&(a.start=b+d,l=!0),!n&&ak(m,h,c,f)&&(a.end=b+d,n=!0)}let o=d-i;l||(a.start=Math.max(0,k+o)),n||(a.end=Math.max(0,m+o)),a.start>a.end&&(a.end=a.start)}(g,a,a+b,c,d),g.maxEnd=g.end,al(this,g)}this._normalizeDeltaIfNecessary()}_normalizeDeltaIfNecessary(){this.requestNormalizeDelta&&(this.requestNormalizeDelta=!1,function(a){let b=a.root,c=0;for(;b!==ai;){if(b.left!==ai&&!Z(b.left)){b=b.left;continue}if(b.right!==ai&&!Z(b.right)){c+=b.delta,b=b.right;continue}b.start=c+b.start,b.end=c+b.end,b.delta=0,ar(b),$(b,!0),$(b.left,!1),$(b.right,!1),b===b.parent.right&&(c-=b.parent.delta),b=b.parent}$(a.root,!1)}(this))}}function ak(a,b,c,d){return a<c||!(a>c)&&1!==d&&(2===d||b)}function al(a,b){if(a.root===ai)return b.parent=ai,b.left=ai,b.right=ai,Y(b,0),a.root=b,a.root;(function(a,b){let c=0,d=a.root,e=b.start,f=b.end;for(;;){var g,h,i,j;if(0>(g=e,h=f,i=d.start+c,j=d.end+c,g===i?h-j:g-i))if(d.left===ai){b.start-=c,b.end-=c,b.maxEnd-=c,d.left=b;break}else d=d.left;else if(d.right===ai){b.start-=c+d.delta,b.end-=c+d.delta,b.maxEnd-=c+d.delta,d.right=b;break}else c+=d.delta,d=d.right}b.parent=d,b.left=ai,b.right=ai,Y(b,1)})(a,b),as(b.parent);let c=b;for(;c!==a.root&&1===X(c.parent);)if(c.parent===c.parent.parent.left){let b=c.parent.parent.right;1===X(b)?(Y(c.parent,0),Y(b,0),Y(c.parent.parent,1),c=c.parent.parent):(c===c.parent.right&&ao(a,c=c.parent),Y(c.parent,0),Y(c.parent.parent,1),ap(a,c.parent.parent))}else{let b=c.parent.parent.left;1===X(b)?(Y(c.parent,0),Y(b,0),Y(c.parent.parent,1),c=c.parent.parent):(c===c.parent.left&&ap(a,c=c.parent),Y(c.parent,0),Y(c.parent.parent,1),ao(a,c.parent.parent))}return Y(a.root,0),b}function am(a,b){let c,d,e;if(b.left===ai?(c=b.right,d=b,c.delta+=b.delta,(c.delta<-0x40000000||c.delta>0x40000000)&&(a.requestNormalizeDelta=!0),c.start+=b.delta,c.end+=b.delta):b.right===ai?(c=b.left,d=b):(c=(d=function(a){for(;a.left!==ai;)a=a.left;return a}(b.right)).right,c.start+=d.delta,c.end+=d.delta,c.delta+=d.delta,(c.delta<-0x40000000||c.delta>0x40000000)&&(a.requestNormalizeDelta=!0),d.start+=b.delta,d.end+=b.delta,d.delta=b.delta,(d.delta<-0x40000000||d.delta>0x40000000)&&(a.requestNormalizeDelta=!0)),d===a.root){a.root=c,Y(c,0),b.detach(),an(),ar(c),a.root.parent=ai;return}let f=1===X(d);if(d===d.parent.left?d.parent.left=c:d.parent.right=c,d===b?c.parent=d.parent:(d.parent===b?c.parent=d:c.parent=d.parent,d.left=b.left,d.right=b.right,d.parent=b.parent,Y(d,X(b)),b===a.root?a.root=d:b===b.parent.left?b.parent.left=d:b.parent.right=d,d.left!==ai&&(d.left.parent=d),d.right!==ai&&(d.right.parent=d)),b.detach(),f){as(c.parent),d!==b&&(as(d),as(d.parent)),an();return}for(as(c),as(c.parent),d!==b&&(as(d),as(d.parent));c!==a.root&&0===X(c);)c===c.parent.left?(1===X(e=c.parent.right)&&(Y(e,0),Y(c.parent,1),ao(a,c.parent),e=c.parent.right),0===X(e.left)&&0===X(e.right)?(Y(e,1),c=c.parent):(0===X(e.right)&&(Y(e.left,0),Y(e,1),ap(a,e),e=c.parent.right),Y(e,X(c.parent)),Y(c.parent,0),Y(e.right,0),ao(a,c.parent),c=a.root)):(1===X(e=c.parent.left)&&(Y(e,0),Y(c.parent,1),ap(a,c.parent),e=c.parent.left),0===X(e.left)&&0===X(e.right)?(Y(e,1),c=c.parent):(0===X(e.left)&&(Y(e.right,0),Y(e,1),ao(a,e),e=c.parent.left),Y(e,X(c.parent)),Y(c.parent,0),Y(e.left,0),ap(a,c.parent),c=a.root));Y(c,0),an()}function an(){ai.parent=ai,ai.delta=0,ai.start=0,ai.end=0}function ao(a,b){let c=b.right;c.delta+=b.delta,(c.delta<-0x40000000||c.delta>0x40000000)&&(a.requestNormalizeDelta=!0),c.start+=b.delta,c.end+=b.delta,b.right=c.left,c.left!==ai&&(c.left.parent=b),c.parent=b.parent,b.parent===ai?a.root=c:b===b.parent.left?b.parent.left=c:b.parent.right=c,c.left=b,b.parent=c,ar(b),ar(c)}function ap(a,b){let c=b.left;b.delta-=c.delta,(b.delta<-0x40000000||b.delta>0x40000000)&&(a.requestNormalizeDelta=!0),b.start-=c.delta,b.end-=c.delta,b.left=c.right,c.right!==ai&&(c.right.parent=b),c.parent=b.parent,b.parent===ai?a.root=c:b===b.parent.right?b.parent.right=c:b.parent.left=c,c.right=b,b.parent=c,ar(b),ar(c)}function aq(a){let b=a.end;if(a.left!==ai){let c=a.left.maxEnd;c>b&&(b=c)}if(a.right!==ai){let c=a.right.maxEnd+a.delta;c>b&&(b=c)}return b}function ar(a){a.maxEnd=aq(a)}function as(a){for(;a!==ai;){let b=aq(a);if(a.maxEnd===b)return;a.maxEnd=b,a=a.parent}}class at{constructor(a,b){this.piece=a,this.color=b,this.size_left=0,this.lf_left=0,this.parent=this,this.left=this,this.right=this}next(){if(this.right!==au)return av(this.right);let a=this;for(;a.parent!==au&&a.parent.left!==a;)a=a.parent;return a.parent===au?au:a.parent}prev(){if(this.left!==au)return aw(this.left);let a=this;for(;a.parent!==au&&a.parent.right!==a;)a=a.parent;return a.parent===au?au:a.parent}detach(){this.parent=null,this.left=null,this.right=null}}let au=new at(null,0);function av(a){for(;a.left!==au;)a=a.left;return a}function aw(a){for(;a.right!==au;)a=a.right;return a}function ax(a){return a===au?0:a.size_left+a.piece.length+ax(a.right)}function ay(a){return a===au?0:a.lf_left+a.piece.lineFeedCnt+ay(a.right)}function az(){au.parent=au}function aA(a,b){let c=b.right;c.size_left+=b.size_left+(b.piece?b.piece.length:0),c.lf_left+=b.lf_left+(b.piece?b.piece.lineFeedCnt:0),b.right=c.left,c.left!==au&&(c.left.parent=b),c.parent=b.parent,b.parent===au?a.root=c:b.parent.left===b?b.parent.left=c:b.parent.right=c,c.left=b,b.parent=c}function aB(a,b){let c=b.left;b.left=c.right,c.right!==au&&(c.right.parent=b),c.parent=b.parent,b.size_left-=c.size_left+(c.piece?c.piece.length:0),b.lf_left-=c.lf_left+(c.piece?c.piece.lineFeedCnt:0),b.parent===au?a.root=c:b===b.parent.right?b.parent.right=c:b.parent.left=c,c.right=b,b.parent=c}function aC(a,b){let c,d,e;if(c=b.left===au?(d=b).right:b.right===au?(d=b).left:(d=av(b.right)).right,d===a.root){a.root=c,c.color=0,b.detach(),az(),a.root.parent=au;return}let f=1===d.color;if(d===d.parent.left?d.parent.left=c:d.parent.right=c,d===b?(c.parent=d.parent,aF(a,c)):(d.parent===b?c.parent=d:c.parent=d.parent,aF(a,c),d.left=b.left,d.right=b.right,d.parent=b.parent,d.color=b.color,b===a.root?a.root=d:b===b.parent.left?b.parent.left=d:b.parent.right=d,d.left!==au&&(d.left.parent=d),d.right!==au&&(d.right.parent=d),d.size_left=b.size_left,d.lf_left=b.lf_left,aF(a,d)),b.detach(),c.parent.left===c){let b=ax(c),d=ay(c);if(b!==c.parent.size_left||d!==c.parent.lf_left){let e=b-c.parent.size_left,f=d-c.parent.lf_left;c.parent.size_left=b,c.parent.lf_left=d,aE(a,c.parent,e,f)}}if(aF(a,c.parent),f)return void az();for(;c!==a.root&&0===c.color;)c===c.parent.left?(1===(e=c.parent.right).color&&(e.color=0,c.parent.color=1,aA(a,c.parent),e=c.parent.right),0===e.left.color&&0===e.right.color?(e.color=1,c=c.parent):(0===e.right.color&&(e.left.color=0,e.color=1,aB(a,e),e=c.parent.right),e.color=c.parent.color,c.parent.color=0,e.right.color=0,aA(a,c.parent),c=a.root)):(1===(e=c.parent.left).color&&(e.color=0,c.parent.color=1,aB(a,c.parent),e=c.parent.left),0===e.left.color&&0===e.right.color?(e.color=1,c=c.parent):(0===e.left.color&&(e.right.color=0,e.color=1,aA(a,e),e=c.parent.left),e.color=c.parent.color,c.parent.color=0,e.left.color=0,aB(a,c.parent),c=a.root));c.color=0,az()}function aD(a,b){for(aF(a,b);b!==a.root&&1===b.parent.color;)if(b.parent===b.parent.parent.left){let c=b.parent.parent.right;1===c.color?(b.parent.color=0,c.color=0,b.parent.parent.color=1,b=b.parent.parent):(b===b.parent.right&&aA(a,b=b.parent),b.parent.color=0,b.parent.parent.color=1,aB(a,b.parent.parent))}else{let c=b.parent.parent.left;1===c.color?(b.parent.color=0,c.color=0,b.parent.parent.color=1,b=b.parent.parent):(b===b.parent.left&&aB(a,b=b.parent),b.parent.color=0,b.parent.parent.color=1,aA(a,b.parent.parent))}a.root.color=0}function aE(a,b,c,d){for(;b!==a.root&&b!==au;)b.parent.left===b&&(b.parent.size_left+=c,b.parent.lf_left+=d),b=b.parent}function aF(a,b){let c=0,d=0;if(b!==a.root){for(;b!==a.root&&b===b.parent.right;)b=b.parent;if(b!==a.root)for(c=ax((b=b.parent).left)-b.size_left,d=ay(b.left)-b.lf_left,b.size_left+=c,b.lf_left+=d;b!==a.root&&(0!==c||0!==d);)b.parent.left===b&&(b.parent.size_left+=c,b.parent.lf_left+=d),b=b.parent}}au.parent=au,au.left=au,au.right=au,au.color=0;var aG=c(46535);function aH(a){let b;return(b=a[a.length-1]<65536?new Uint16Array(a.length):new Uint32Array(a.length)).set(a,0),b}class aI{constructor(a,b,c,d,e){this.lineStarts=a,this.cr=b,this.lf=c,this.crlf=d,this.isBasicASCII=e}}function aJ(a,b=!0){let c=[0],d=1;for(let b=0,e=a.length;b<e;b++){let f=a.charCodeAt(b);13===f?b+1<e&&10===a.charCodeAt(b+1)?(c[d++]=b+2,b++):c[d++]=b+1:10===f&&(c[d++]=b+1)}return b?aH(c):c}class aK{constructor(a,b,c,d,e){this.bufferIndex=a,this.start=b,this.end=c,this.lineFeedCnt=d,this.length=e}}class aL{constructor(a,b){this.buffer=a,this.lineStarts=b}}class aM{constructor(a,b){this._pieces=[],this._tree=a,this._BOM=b,this._index=0,a.root!==au&&a.iterate(a.root,a=>(a!==au&&this._pieces.push(a.piece),!0))}read(){if(0===this._pieces.length)if(0===this._index)return this._index++,this._BOM;else return null;return this._index>this._pieces.length-1?null:0===this._index?this._BOM+this._tree.getPieceContent(this._pieces[this._index++]):this._tree.getPieceContent(this._pieces[this._index++])}}class aN{constructor(a){this._limit=a,this._cache=[]}get(a){for(let b=this._cache.length-1;b>=0;b--){let c=this._cache[b];if(c.nodeStartOffset<=a&&c.nodeStartOffset+c.node.piece.length>=a)return c}return null}get2(a){for(let b=this._cache.length-1;b>=0;b--){let c=this._cache[b];if(c.nodeStartLineNumber&&c.nodeStartLineNumber<a&&c.nodeStartLineNumber+c.node.piece.lineFeedCnt>=a)return c}return null}set(a){this._cache.length>=this._limit&&this._cache.shift(),this._cache.push(a)}validate(a){let b=!1,c=this._cache;for(let d=0;d<c.length;d++){let e=c[d];if(null===e.node.parent||e.nodeStartOffset>=a){c[d]=null,b=!0;continue}}if(b){let a=[];for(let b of c)null!==b&&a.push(b);this._cache=a}}}class aO{constructor(a,b,c){this.create(a,b,c)}create(a,b,c){this._buffers=[new aL("",[0])],this._lastChangeBufferPos={line:0,column:0},this.root=au,this._lineCnt=1,this._length=0,this._EOL=b,this._EOLLength=b.length,this._EOLNormalized=c;let d=null;for(let b=0,c=a.length;b<c;b++)if(a[b].buffer.length>0){a[b].lineStarts||(a[b].lineStarts=aJ(a[b].buffer));let c=new aK(b+1,{line:0,column:0},{line:a[b].lineStarts.length-1,column:a[b].buffer.length-a[b].lineStarts[a[b].lineStarts.length-1]},a[b].lineStarts.length-1,a[b].buffer.length);this._buffers.push(a[b]),d=this.rbInsertRight(d,c)}this._searchCache=new aN(1),this._lastVisitedLine={lineNumber:0,value:""},this.computeBufferMetadata()}normalizeEOL(a){let b=65535-Math.floor(21845),c=2*b,d="",e=0,f=[];if(this.iterate(this.root,g=>{let h=this.getNodeContent(g),i=h.length;if(e<=b||e+i<c)return d+=h,e+=i,!0;let j=d.replace(/\r\n|\r|\n/g,a);return f.push(new aL(j,aJ(j))),d=h,e=i,!0}),e>0){let b=d.replace(/\r\n|\r|\n/g,a);f.push(new aL(b,aJ(b)))}this.create(f,a,!0)}getEOL(){return this._EOL}setEOL(a){this._EOL=a,this._EOLLength=this._EOL.length,this.normalizeEOL(a)}createSnapshot(a){return new aM(this,a)}getOffsetAt(a,b){let c=0,d=this.root;for(;d!==au;)if(d.left!==au&&d.lf_left+1>=a)d=d.left;else{if(d.lf_left+d.piece.lineFeedCnt+1>=a)return(c+=d.size_left)+(this.getAccumulatedValue(d,a-d.lf_left-2)+b-1);a-=d.lf_left+d.piece.lineFeedCnt,c+=d.size_left+d.piece.length,d=d.right}return c}getPositionAt(a){a=Math.max(0,a=Math.floor(a));let b=this.root,c=0,d=a;for(;b!==au;)if(0!==b.size_left&&b.size_left>=a)b=b.left;else if(b.size_left+b.piece.length>=a){let e=this.getIndexOf(b,a-b.size_left);if(c+=b.lf_left+e.index,0===e.index){let a=d-this.getOffsetAt(c+1,1);return new q.y(c+1,a+1)}return new q.y(c+1,e.remainder+1)}else{if(a-=b.size_left+b.piece.length,c+=b.lf_left+b.piece.lineFeedCnt,b.right===au){let b=this.getOffsetAt(c+1,1),e=d-a-b;return new q.y(c+1,e+1)}b=b.right}return new q.y(1,1)}getValueInRange(a,b){if(a.startLineNumber===a.endLineNumber&&a.startColumn===a.endColumn)return"";let c=this.nodeAt2(a.startLineNumber,a.startColumn),d=this.nodeAt2(a.endLineNumber,a.endColumn),e=this.getValueInRange2(c,d);return b?b===this._EOL&&this._EOLNormalized&&b===this.getEOL()&&this._EOLNormalized?e:e.replace(/\r\n|\r|\n/g,b):e}getValueInRange2(a,b){if(a.node===b.node){let c=a.node,d=this._buffers[c.piece.bufferIndex].buffer,e=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);return d.substring(e+a.remainder,e+b.remainder)}let c=a.node,d=this._buffers[c.piece.bufferIndex].buffer,e=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start),f=d.substring(e+a.remainder,e+c.piece.length);for(c=c.next();c!==au;){let a=this._buffers[c.piece.bufferIndex].buffer,d=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);if(c===b.node){f+=a.substring(d,d+b.remainder);break}f+=a.substr(d,c.piece.length),c=c.next()}return f}getLinesContent(){let a=[],b=0,c="",d=!1;return this.iterate(this.root,e=>{if(e===au)return!0;let f=e.piece,g=f.length;if(0===g)return!0;let h=this._buffers[f.bufferIndex].buffer,i=this._buffers[f.bufferIndex].lineStarts,j=f.start.line,k=f.end.line,l=i[j]+f.start.column;if(d&&(10===h.charCodeAt(l)&&(l++,g--),a[b++]=c,c="",d=!1,0===g))return!0;if(j===k)return this._EOLNormalized||13!==h.charCodeAt(l+g-1)?c+=h.substr(l,g):(d=!0,c+=h.substr(l,g-1)),!0;c+=this._EOLNormalized?h.substring(l,Math.max(l,i[j+1]-this._EOLLength)):h.substring(l,i[j+1]).replace(/(\r\n|\r|\n)$/,""),a[b++]=c;for(let d=j+1;d<k;d++)c=this._EOLNormalized?h.substring(i[d],i[d+1]-this._EOLLength):h.substring(i[d],i[d+1]).replace(/(\r\n|\r|\n)$/,""),a[b++]=c;return this._EOLNormalized||13!==h.charCodeAt(i[k]+f.end.column-1)?c=h.substr(i[k],f.end.column):(d=!0,0===f.end.column?b--:c=h.substr(i[k],f.end.column-1)),!0}),d&&(a[b++]=c,c=""),a[b++]=c,a}getLength(){return this._length}getLineCount(){return this._lineCnt}getLineContent(a){return this._lastVisitedLine.lineNumber===a||(this._lastVisitedLine.lineNumber=a,a===this._lineCnt?this._lastVisitedLine.value=this.getLineRawContent(a):this._EOLNormalized?this._lastVisitedLine.value=this.getLineRawContent(a,this._EOLLength):this._lastVisitedLine.value=this.getLineRawContent(a).replace(/(\r\n|\r|\n)$/,"")),this._lastVisitedLine.value}_getCharCode(a){if(a.remainder===a.node.piece.length){let b=a.node.next();if(!b)return 0;let c=this._buffers[b.piece.bufferIndex],d=this.offsetInBuffer(b.piece.bufferIndex,b.piece.start);return c.buffer.charCodeAt(d)}{let b=this._buffers[a.node.piece.bufferIndex],c=this.offsetInBuffer(a.node.piece.bufferIndex,a.node.piece.start)+a.remainder;return b.buffer.charCodeAt(c)}}getLineCharCode(a,b){let c=this.nodeAt2(a,b+1);return this._getCharCode(c)}getLineLength(a){if(a===this.getLineCount()){let b=this.getOffsetAt(a,1);return this.getLength()-b}return this.getOffsetAt(a+1,1)-this.getOffsetAt(a,1)-this._EOLLength}getNearestChunk(a){let b=this.nodeAt(a);if(b.remainder===b.node.piece.length){let a=b.node.next();if(!a||a===au)return"";let c=this._buffers[a.piece.bufferIndex],d=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start);return c.buffer.substring(d,d+a.piece.length)}{let a=this._buffers[b.node.piece.bufferIndex],c=this.offsetInBuffer(b.node.piece.bufferIndex,b.node.piece.start),d=c+b.remainder,e=c+b.node.piece.length;return a.buffer.substring(d,e)}}findMatchesInNode(a,b,c,d,e,f,g,h,i,j,k){let l,m,n,o=this._buffers[a.piece.bufferIndex],p=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start),q=this.offsetInBuffer(a.piece.bufferIndex,e),s=this.offsetInBuffer(a.piece.bufferIndex,f),t={line:0,column:0};b._wordSeparators?(m=o.buffer.substring(q,s),n=a=>a+q,b.reset(0)):(m=o.buffer,n=a=>a,b.reset(q));do if(l=b.next(m)){if(n(l.index)>=s)return j;this.positionInBuffer(a,n(l.index)-p,t);let b=this.getLineFeedCnt(a.piece.bufferIndex,e,t),f=t.line===e.line?t.column-e.column+d:t.column+1,g=f+l[0].length;if(k[j++]=(0,aG.dr)(new r.Q(c+b,f,c+b,g),l,h),n(l.index)+l[0].length>=s)return j;if(j>=i)break}while(l);return j}findMatchesLineByLine(a,b,c,d){let e=[],f=0,g=new aG.W5(b.wordSeparators,b.regex),h=this.nodeAt2(a.startLineNumber,a.startColumn);if(null===h)return[];let i=this.nodeAt2(a.endLineNumber,a.endColumn);if(null===i)return[];let j=this.positionInBuffer(h.node,h.remainder),k=this.positionInBuffer(i.node,i.remainder);if(h.node===i.node)return this.findMatchesInNode(h.node,g,a.startLineNumber,a.startColumn,j,k,b,c,d,f,e),e;let l=a.startLineNumber,m=h.node;for(;m!==i.node;){let i=this.getLineFeedCnt(m.piece.bufferIndex,j,m.piece.end);if(i>=1){let h=this._buffers[m.piece.bufferIndex].lineStarts,k=this.offsetInBuffer(m.piece.bufferIndex,m.piece.start),n=h[j.line+i],o=l===a.startLineNumber?a.startColumn:1;if((f=this.findMatchesInNode(m,g,l,o,j,this.positionInBuffer(m,n-k),b,c,d,f,e))>=d)return e;l+=i}let k=l===a.startLineNumber?a.startColumn-1:0;if(l===a.endLineNumber){let h=this.getLineContent(l).substring(k,a.endColumn-1);return f=this._findMatchesInLine(b,g,h,a.endLineNumber,k,f,e,c,d),e}if((f=this._findMatchesInLine(b,g,this.getLineContent(l).substr(k),l,k,f,e,c,d))>=d)return e;l++,m=(h=this.nodeAt2(l,1)).node,j=this.positionInBuffer(h.node,h.remainder)}if(l===a.endLineNumber){let h=l===a.startLineNumber?a.startColumn-1:0,i=this.getLineContent(l).substring(h,a.endColumn-1);return f=this._findMatchesInLine(b,g,i,a.endLineNumber,h,f,e,c,d),e}let n=l===a.startLineNumber?a.startColumn:1;return f=this.findMatchesInNode(i.node,g,l,n,j,k,b,c,d,f,e),e}_findMatchesInLine(a,b,c,d,e,f,g,h,i){let j,k=a.wordSeparators;if(!h&&a.simpleSearch){let b=a.simpleSearch,h=b.length,j=c.length,l=-h;for(;-1!==(l=c.indexOf(b,l+h))&&(!(!k||(0,aG.wC)(k,c,j,l,h))||(g[f++]=new w.Dg(new r.Q(d,l+1+e,d,l+1+h+e),null),!(f>=i))););return f}b.reset(0);do if((j=b.next(c))&&(g[f++]=(0,aG.dr)(new r.Q(d,j.index+1+e,d,j.index+1+j[0].length+e),j,h),f>=i))break;while(j);return f}insert(a,b,c=!1){if(this._EOLNormalized=this._EOLNormalized&&c,this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",this.root!==au){let{node:c,remainder:d,nodeStartOffset:e}=this.nodeAt(a),f=c.piece,g=f.bufferIndex,h=this.positionInBuffer(c,d);if(0===c.piece.bufferIndex&&f.end.line===this._lastChangeBufferPos.line&&f.end.column===this._lastChangeBufferPos.column&&e+f.length===a&&b.length<65535){this.appendToNode(c,b),this.computeBufferMetadata();return}if(e===a)this.insertContentToNodeLeft(b,c),this._searchCache.validate(a);else if(e+c.piece.length>a){let a=[],e=new aK(f.bufferIndex,h,f.end,this.getLineFeedCnt(f.bufferIndex,h,f.end),this.offsetInBuffer(g,f.end)-this.offsetInBuffer(g,h));if(this.shouldCheckCRLF()&&this.endWithCR(b)&&10===this.nodeCharCodeAt(c,d)){let a={line:e.start.line+1,column:0};e=new aK(e.bufferIndex,a,e.end,this.getLineFeedCnt(e.bufferIndex,a,e.end),e.length-1),b+="\n"}if(this.shouldCheckCRLF()&&this.startWithLF(b))if(13===this.nodeCharCodeAt(c,d-1)){let e=this.positionInBuffer(c,d-1);this.deleteNodeTail(c,e),b="\r"+b,0===c.piece.length&&a.push(c)}else this.deleteNodeTail(c,h);else this.deleteNodeTail(c,h);let i=this.createNewPieces(b);e.length>0&&this.rbInsertRight(c,e);let j=c;for(let a=0;a<i.length;a++)j=this.rbInsertRight(j,i[a]);this.deleteNodes(a)}else this.insertContentToNodeRight(b,c)}else{let a=this.createNewPieces(b),c=this.rbInsertLeft(null,a[0]);for(let b=1;b<a.length;b++)c=this.rbInsertRight(c,a[b])}this.computeBufferMetadata()}delete(a,b){if(this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",b<=0||this.root===au)return;let c=this.nodeAt(a),d=this.nodeAt(a+b),e=c.node,f=d.node;if(e===f){let f=this.positionInBuffer(e,c.remainder),g=this.positionInBuffer(e,d.remainder);if(c.nodeStartOffset===a){if(b===e.piece.length){let a=e.next();aC(this,e),this.validateCRLFWithPrevNode(a),this.computeBufferMetadata();return}this.deleteNodeHead(e,g),this._searchCache.validate(a),this.validateCRLFWithPrevNode(e),this.computeBufferMetadata();return}if(c.nodeStartOffset+e.piece.length===a+b){this.deleteNodeTail(e,f),this.validateCRLFWithNextNode(e),this.computeBufferMetadata();return}this.shrinkNode(e,f,g),this.computeBufferMetadata();return}let g=[],h=this.positionInBuffer(e,c.remainder);this.deleteNodeTail(e,h),this._searchCache.validate(a),0===e.piece.length&&g.push(e);let i=this.positionInBuffer(f,d.remainder);this.deleteNodeHead(f,i),0===f.piece.length&&g.push(f);let j=e.next();for(let a=j;a!==au&&a!==f;a=a.next())g.push(a);let k=0===e.piece.length?e.prev():e;this.deleteNodes(g),this.validateCRLFWithNextNode(k),this.computeBufferMetadata()}insertContentToNodeLeft(a,b){let c=[];if(this.shouldCheckCRLF()&&this.endWithCR(a)&&this.startWithLF(b)){let d=b.piece,e={line:d.start.line+1,column:0};b.piece=new aK(d.bufferIndex,e,d.end,this.getLineFeedCnt(d.bufferIndex,e,d.end),d.length-1),a+="\n",aE(this,b,-1,-1),0===b.piece.length&&c.push(b)}let d=this.createNewPieces(a),e=this.rbInsertLeft(b,d[d.length-1]);for(let a=d.length-2;a>=0;a--)e=this.rbInsertLeft(e,d[a]);this.validateCRLFWithPrevNode(e),this.deleteNodes(c)}insertContentToNodeRight(a,b){this.adjustCarriageReturnFromNext(a,b)&&(a+="\n");let c=this.createNewPieces(a),d=this.rbInsertRight(b,c[0]),e=d;for(let a=1;a<c.length;a++)e=this.rbInsertRight(e,c[a]);this.validateCRLFWithPrevNode(d)}positionInBuffer(a,b,c){let d=a.piece,e=a.piece.bufferIndex,f=this._buffers[e].lineStarts,g=f[d.start.line]+d.start.column+b,h=d.start.line,i=d.end.line,j=0,k=0,l=0;for(;h<=i&&(l=f[j=h+(i-h)/2|0],j!==i);)if(k=f[j+1],g<l)i=j-1;else if(g>=k)h=j+1;else break;return c?(c.line=j,c.column=g-l,null):{line:j,column:g-l}}getLineFeedCnt(a,b,c){if(0===c.column)return c.line-b.line;let d=this._buffers[a].lineStarts;if(c.line===d.length-1)return c.line-b.line;let e=d[c.line+1],f=d[c.line]+c.column;return e>f+1?c.line-b.line:13===this._buffers[a].buffer.charCodeAt(f-1)?c.line-b.line+1:c.line-b.line}offsetInBuffer(a,b){return this._buffers[a].lineStarts[b.line]+b.column}deleteNodes(a){for(let b=0;b<a.length;b++)aC(this,a[b])}createNewPieces(a){if(a.length>65535){let b=[];for(;a.length>65535;){let c,d=a.charCodeAt(65534);13===d||d>=55296&&d<=56319?(c=a.substring(0,65534),a=a.substring(65534)):(c=a.substring(0,65535),a=a.substring(65535));let e=aJ(c);b.push(new aK(this._buffers.length,{line:0,column:0},{line:e.length-1,column:c.length-e[e.length-1]},e.length-1,c.length)),this._buffers.push(new aL(c,e))}let c=aJ(a);return b.push(new aK(this._buffers.length,{line:0,column:0},{line:c.length-1,column:a.length-c[c.length-1]},c.length-1,a.length)),this._buffers.push(new aL(a,c)),b}let b=this._buffers[0].buffer.length,c=aJ(a,!1),d=this._lastChangeBufferPos;if(this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-1]===b&&0!==b&&this.startWithLF(a)&&this.endWithCR(this._buffers[0].buffer)){this._lastChangeBufferPos={line:this._lastChangeBufferPos.line,column:this._lastChangeBufferPos.column+1},d=this._lastChangeBufferPos;for(let a=0;a<c.length;a++)c[a]+=b+1;this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(c.slice(1)),this._buffers[0].buffer+="_"+a,b+=1}else{if(0!==b)for(let a=0;a<c.length;a++)c[a]+=b;this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(c.slice(1)),this._buffers[0].buffer+=a}let e=this._buffers[0].buffer.length,f=this._buffers[0].lineStarts.length-1,g=e-this._buffers[0].lineStarts[f],h={line:f,column:g},i=new aK(0,d,h,this.getLineFeedCnt(0,d,h),e-b);return this._lastChangeBufferPos=h,[i]}getLineRawContent(a,b=0){let c=this.root,d="",e=this._searchCache.get2(a);if(e){c=e.node;let f=this.getAccumulatedValue(c,a-e.nodeStartLineNumber-1),g=this._buffers[c.piece.bufferIndex].buffer,h=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);if(e.nodeStartLineNumber+c.piece.lineFeedCnt===a)d=g.substring(h+f,h+c.piece.length);else{let d=this.getAccumulatedValue(c,a-e.nodeStartLineNumber);return g.substring(h+f,h+d-b)}}else{let e=0,f=a;for(;c!==au;)if(c.left!==au&&c.lf_left>=a-1)c=c.left;else if(c.lf_left+c.piece.lineFeedCnt>a-1){let d=this.getAccumulatedValue(c,a-c.lf_left-2),g=this.getAccumulatedValue(c,a-c.lf_left-1),h=this._buffers[c.piece.bufferIndex].buffer,i=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);return e+=c.size_left,this._searchCache.set({node:c,nodeStartOffset:e,nodeStartLineNumber:f-(a-1-c.lf_left)}),h.substring(i+d,i+g-b)}else if(c.lf_left+c.piece.lineFeedCnt===a-1){let b=this.getAccumulatedValue(c,a-c.lf_left-2),e=this._buffers[c.piece.bufferIndex].buffer,f=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);d=e.substring(f+b,f+c.piece.length);break}else a-=c.lf_left+c.piece.lineFeedCnt,e+=c.size_left+c.piece.length,c=c.right}for(c=c.next();c!==au;){let a=this._buffers[c.piece.bufferIndex].buffer;if(c.piece.lineFeedCnt>0){let e=this.getAccumulatedValue(c,0),f=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);d+=a.substring(f,f+e-b);break}{let b=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);d+=a.substr(b,c.piece.length)}c=c.next()}return d}computeBufferMetadata(){let a=this.root,b=1,c=0;for(;a!==au;)b+=a.lf_left+a.piece.lineFeedCnt,c+=a.size_left+a.piece.length,a=a.right;this._lineCnt=b,this._length=c,this._searchCache.validate(this._length)}getIndexOf(a,b){let c=a.piece,d=this.positionInBuffer(a,b),e=d.line-c.start.line;if(this.offsetInBuffer(c.bufferIndex,c.end)-this.offsetInBuffer(c.bufferIndex,c.start)===b){let b=this.getLineFeedCnt(a.piece.bufferIndex,c.start,d);if(b!==e)return{index:b,remainder:0}}return{index:e,remainder:d.column}}getAccumulatedValue(a,b){if(b<0)return 0;let c=a.piece,d=this._buffers[c.bufferIndex].lineStarts,e=c.start.line+b+1;return e>c.end.line?d[c.end.line]+c.end.column-d[c.start.line]-c.start.column:d[e]-d[c.start.line]-c.start.column}deleteNodeTail(a,b){let c=a.piece,d=c.lineFeedCnt,e=this.offsetInBuffer(c.bufferIndex,c.end),f=this.offsetInBuffer(c.bufferIndex,b),g=this.getLineFeedCnt(c.bufferIndex,c.start,b),h=g-d,i=f-e,j=c.length+i;a.piece=new aK(c.bufferIndex,c.start,b,g,j),aE(this,a,i,h)}deleteNodeHead(a,b){let c=a.piece,d=c.lineFeedCnt,e=this.offsetInBuffer(c.bufferIndex,c.start),f=this.getLineFeedCnt(c.bufferIndex,b,c.end),g=this.offsetInBuffer(c.bufferIndex,b),h=f-d,i=e-g,j=c.length+i;a.piece=new aK(c.bufferIndex,b,c.end,f,j),aE(this,a,i,h)}shrinkNode(a,b,c){let d=a.piece,e=d.start,f=d.end,g=d.length,h=d.lineFeedCnt,i=this.getLineFeedCnt(d.bufferIndex,d.start,b),j=this.offsetInBuffer(d.bufferIndex,b)-this.offsetInBuffer(d.bufferIndex,e);a.piece=new aK(d.bufferIndex,d.start,b,i,j),aE(this,a,j-g,i-h);let k=new aK(d.bufferIndex,c,f,this.getLineFeedCnt(d.bufferIndex,c,f),this.offsetInBuffer(d.bufferIndex,f)-this.offsetInBuffer(d.bufferIndex,c)),l=this.rbInsertRight(a,k);this.validateCRLFWithPrevNode(l)}appendToNode(a,b){this.adjustCarriageReturnFromNext(b,a)&&(b+="\n");let c=this.shouldCheckCRLF()&&this.startWithLF(b)&&this.endWithCR(a),d=this._buffers[0].buffer.length;this._buffers[0].buffer+=b;let e=aJ(b,!1);for(let a=0;a<e.length;a++)e[a]+=d;if(c){let a=this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-2];this._buffers[0].lineStarts.pop(),this._lastChangeBufferPos={line:this._lastChangeBufferPos.line-1,column:d-a}}this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(e.slice(1));let f=this._buffers[0].lineStarts.length-1,g=this._buffers[0].buffer.length-this._buffers[0].lineStarts[f],h={line:f,column:g},i=a.piece.length+b.length,j=a.piece.lineFeedCnt,k=this.getLineFeedCnt(0,a.piece.start,h),l=k-j;a.piece=new aK(a.piece.bufferIndex,a.piece.start,h,k,i),this._lastChangeBufferPos=h,aE(this,a,b.length,l)}nodeAt(a){let b=this.root,c=this._searchCache.get(a);if(c)return{node:c.node,nodeStartOffset:c.nodeStartOffset,remainder:a-c.nodeStartOffset};let d=0;for(;b!==au;)if(b.size_left>a)b=b.left;else if(b.size_left+b.piece.length>=a){d+=b.size_left;let c={node:b,remainder:a-b.size_left,nodeStartOffset:d};return this._searchCache.set(c),c}else a-=b.size_left+b.piece.length,d+=b.size_left+b.piece.length,b=b.right;return null}nodeAt2(a,b){let c=this.root,d=0;for(;c!==au;)if(c.left!==au&&c.lf_left>=a-1)c=c.left;else if(c.lf_left+c.piece.lineFeedCnt>a-1){let e=this.getAccumulatedValue(c,a-c.lf_left-2),f=this.getAccumulatedValue(c,a-c.lf_left-1);return d+=c.size_left,{node:c,remainder:Math.min(e+b-1,f),nodeStartOffset:d}}else if(c.lf_left+c.piece.lineFeedCnt===a-1){let e=this.getAccumulatedValue(c,a-c.lf_left-2);if(e+b-1<=c.piece.length)return{node:c,remainder:e+b-1,nodeStartOffset:d};b-=c.piece.length-e;break}else a-=c.lf_left+c.piece.lineFeedCnt,d+=c.size_left+c.piece.length,c=c.right;for(c=c.next();c!==au;){if(c.piece.lineFeedCnt>0){let a=this.getAccumulatedValue(c,0),d=this.offsetOfNode(c);return{node:c,remainder:Math.min(b-1,a),nodeStartOffset:d}}if(c.piece.length>=b-1){let a=this.offsetOfNode(c);return{node:c,remainder:b-1,nodeStartOffset:a}}b-=c.piece.length;c=c.next()}return null}nodeCharCodeAt(a,b){if(a.piece.lineFeedCnt<1)return -1;let c=this._buffers[a.piece.bufferIndex],d=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start)+b;return c.buffer.charCodeAt(d)}offsetOfNode(a){if(!a)return 0;let b=a.size_left;for(;a!==this.root;)a.parent.right===a&&(b+=a.parent.size_left+a.parent.piece.length),a=a.parent;return b}shouldCheckCRLF(){return!(this._EOLNormalized&&"\n"===this._EOL)}startWithLF(a){if("string"==typeof a)return 10===a.charCodeAt(0);if(a===au||0===a.piece.lineFeedCnt)return!1;let b=a.piece,c=this._buffers[b.bufferIndex].lineStarts,d=b.start.line,e=c[d]+b.start.column;return d!==c.length-1&&!(c[d+1]>e+1)&&10===this._buffers[b.bufferIndex].buffer.charCodeAt(e)}endWithCR(a){return"string"==typeof a?13===a.charCodeAt(a.length-1):a!==au&&0!==a.piece.lineFeedCnt&&13===this.nodeCharCodeAt(a,a.piece.length-1)}validateCRLFWithPrevNode(a){if(this.shouldCheckCRLF()&&this.startWithLF(a)){let b=a.prev();this.endWithCR(b)&&this.fixCRLF(b,a)}}validateCRLFWithNextNode(a){if(this.shouldCheckCRLF()&&this.endWithCR(a)){let b=a.next();this.startWithLF(b)&&this.fixCRLF(a,b)}}fixCRLF(a,b){let c,d=[],e=this._buffers[a.piece.bufferIndex].lineStarts;c=0===a.piece.end.column?{line:a.piece.end.line-1,column:e[a.piece.end.line]-e[a.piece.end.line-1]-1}:{line:a.piece.end.line,column:a.piece.end.column-1};let f=a.piece.length-1,g=a.piece.lineFeedCnt-1;a.piece=new aK(a.piece.bufferIndex,a.piece.start,c,g,f),aE(this,a,-1,-1),0===a.piece.length&&d.push(a);let h={line:b.piece.start.line+1,column:0},i=b.piece.length-1,j=this.getLineFeedCnt(b.piece.bufferIndex,h,b.piece.end);b.piece=new aK(b.piece.bufferIndex,h,b.piece.end,j,i),aE(this,b,-1,-1),0===b.piece.length&&d.push(b);let k=this.createNewPieces("\r\n");this.rbInsertRight(a,k[0]);for(let a=0;a<d.length;a++)aC(this,d[a])}adjustCarriageReturnFromNext(a,b){if(this.shouldCheckCRLF()&&this.endWithCR(a)){let c=b.next();if(this.startWithLF(c)){if(a+="\n",1===c.piece.length)aC(this,c);else{let a=c.piece,b={line:a.start.line+1,column:0},d=a.length-1,e=this.getLineFeedCnt(a.bufferIndex,b,a.end);c.piece=new aK(a.bufferIndex,b,a.end,e,d),aE(this,c,-1,-1)}return!0}}return!1}iterate(a,b){if(a===au)return b(au);let c=this.iterate(a.left,b);return c?b(a)&&this.iterate(a.right,b):c}getNodeContent(a){if(a===au)return"";let b=this._buffers[a.piece.bufferIndex],c=a.piece,d=this.offsetInBuffer(c.bufferIndex,c.start),e=this.offsetInBuffer(c.bufferIndex,c.end);return b.buffer.substring(d,e)}getPieceContent(a){let b=this._buffers[a.bufferIndex],c=this.offsetInBuffer(a.bufferIndex,a.start),d=this.offsetInBuffer(a.bufferIndex,a.end);return b.buffer.substring(c,d)}rbInsertRight(a,b){let c=new at(b,1);if(c.left=au,c.right=au,c.parent=au,c.size_left=0,c.lf_left=0,this.root===au)this.root=c,c.color=0;else if(a.right===au)a.right=c,c.parent=a;else{let b=av(a.right);b.left=c,c.parent=b}return aD(this,c),c}rbInsertLeft(a,b){let c=new at(b,1);if(c.left=au,c.right=au,c.parent=au,c.size_left=0,c.lf_left=0,this.root===au)this.root=c,c.color=0;else if(a.left===au)a.left=c,c.parent=a;else{let b=aw(a.left);b.right=c,c.parent=b}return aD(this,c),c}}var aP=c(77790);class aQ extends l.jG{constructor(a,b,c,d,e,f,g){super(),this._onDidChangeContent=this._register(new k.vl),this._BOM=b,this._mightContainNonBasicASCII=!f,this._mightContainRTL=d,this._mightContainUnusualLineTerminators=e,this._pieceTree=new aO(a,c,g)}mightContainRTL(){return this._mightContainRTL}mightContainUnusualLineTerminators(){return this._mightContainUnusualLineTerminators}resetMightContainUnusualLineTerminators(){this._mightContainUnusualLineTerminators=!1}mightContainNonBasicASCII(){return this._mightContainNonBasicASCII}getBOM(){return this._BOM}getEOL(){return this._pieceTree.getEOL()}createSnapshot(a){return this._pieceTree.createSnapshot(a?this._BOM:"")}getOffsetAt(a,b){return this._pieceTree.getOffsetAt(a,b)}getPositionAt(a){return this._pieceTree.getPositionAt(a)}getRangeAt(a,b){let c=this.getPositionAt(a),d=this.getPositionAt(a+b);return new r.Q(c.lineNumber,c.column,d.lineNumber,d.column)}getValueInRange(a,b=0){if(a.isEmpty())return"";let c=this._getEndOfLine(b);return this._pieceTree.getValueInRange(a,c)}getValueLengthInRange(a,b=0){if(a.isEmpty())return 0;if(a.startLineNumber===a.endLineNumber)return a.endColumn-a.startColumn;let c=this.getOffsetAt(a.startLineNumber,a.startColumn),d=this.getOffsetAt(a.endLineNumber,a.endColumn),e=0,f=this._getEndOfLine(b),g=this.getEOL();return f.length!==g.length&&(e=(f.length-g.length)*(a.endLineNumber-a.startLineNumber)),d-c+e}getCharacterCountInRange(a,b=0){if(this._mightContainNonBasicASCII){let c=0,d=a.startLineNumber,e=a.endLineNumber;for(let b=d;b<=e;b++){let f=this.getLineContent(b),g=b===d?a.startColumn-1:0,h=b===e?a.endColumn-1:f.length;for(let a=g;a<h;a++)m.pc(f.charCodeAt(a))?(c+=1,a+=1):c+=1}return c+this._getEndOfLine(b).length*(e-d)}return this.getValueLengthInRange(a,b)}getNearestChunk(a){return this._pieceTree.getNearestChunk(a)}getLength(){return this._pieceTree.getLength()}getLineCount(){return this._pieceTree.getLineCount()}getLinesContent(){return this._pieceTree.getLinesContent()}getLineContent(a){return this._pieceTree.getLineContent(a)}getLineCharCode(a,b){return this._pieceTree.getLineCharCode(a,b)}getLineLength(a){return this._pieceTree.getLineLength(a)}getLineFirstNonWhitespaceColumn(a){let b=m.HG(this.getLineContent(a));return -1===b?0:b+1}getLineLastNonWhitespaceColumn(a){let b=m.lT(this.getLineContent(a));return -1===b?0:b+2}_getEndOfLine(a){switch(a){case 1:return"\n";case 2:return"\r\n";case 0:return this.getEOL();default:throw Error("Unknown EOL preference")}}setEOL(a){this._pieceTree.setEOL(a)}applyEdits(a,b,c){let d=this._mightContainRTL,e=this._mightContainUnusualLineTerminators,f=this._mightContainNonBasicASCII,g=!0,h=[];for(let b=0;b<a.length;b++){let c=a[b];g&&c._isTracked&&(g=!1);let i=c.range;if(c.text){let a=!0;f||(f=a=!m.aC(c.text)),!d&&a&&(d=m.E_(c.text)),!e&&a&&(e=m.$X(c.text))}let j="",k=0,l=0,n=0;if(c.text){let a;[k,l,n,a]=(0,o.W)(c.text);let b=this.getEOL(),d="\r\n"===b?2:1;j=0===a||a===d?c.text:c.text.replace(/\r\n|\r|\n/g,b)}h[b]={sortIndex:b,identifier:c.identifier||null,range:i,rangeOffset:this.getOffsetAt(i.startLineNumber,i.startColumn),rangeLength:this.getValueLengthInRange(i),text:j,eolCount:k,firstLineLength:l,lastLineLength:n,forceMoveMarkers:!!c.forceMoveMarkers,isAutoWhitespaceEdit:c.isAutoWhitespaceEdit||!1}}h.sort(aQ._sortOpsAscending);let i=!1;for(let a=0,b=h.length-1;a<b;a++){let b=h[a].range.getEndPosition(),c=h[a+1].range.getStartPosition();if(c.isBeforeOrEqual(b)){if(c.isBefore(b))throw Error("Overlapping ranges are not allowed!");i=!0}}g&&(h=this._reduceOperations(h));let j=c||b?aQ._getInverseEditRanges(h):[],k=[];if(b)for(let a=0;a<h.length;a++){let b=h[a],c=j[a];if(b.isAutoWhitespaceEdit&&b.range.isEmpty())for(let a=c.startLineNumber;a<=c.endLineNumber;a++){let d="";(a!==c.startLineNumber||(d=this.getLineContent(b.range.startLineNumber),-1===m.HG(d)))&&k.push({lineNumber:a,oldContent:d})}}let l=null;if(c){let a=0;l=[];for(let b=0;b<h.length;b++){let c=h[b],d=j[b],e=this.getValueInRange(c.range),f=c.rangeOffset+a;a+=c.text.length-e.length,l[b]={sortIndex:c.sortIndex,identifier:c.identifier,range:d,text:e,textChange:new aP.k(c.rangeOffset,e,f,c.text)}}i||l.sort((a,b)=>a.sortIndex-b.sortIndex)}this._mightContainRTL=d,this._mightContainUnusualLineTerminators=e,this._mightContainNonBasicASCII=f;let n=this._doApplyEdits(h),p=null;if(b&&k.length>0){k.sort((a,b)=>b.lineNumber-a.lineNumber),p=[];for(let a=0,b=k.length;a<b;a++){let b=k[a].lineNumber;if(a>0&&k[a-1].lineNumber===b)continue;let c=k[a].oldContent,d=this.getLineContent(b);0!==d.length&&d!==c&&-1===m.HG(d)&&p.push(b)}}return this._onDidChangeContent.fire(),new w.F4(l,n,p)}_reduceOperations(a){return a.length<1e3?a:[this._toSingleEditOperation(a)]}_toSingleEditOperation(a){let b=!1,c=a[0].range,d=a[a.length-1].range,e=new r.Q(c.startLineNumber,c.startColumn,d.endLineNumber,d.endColumn),f=c.startLineNumber,g=c.startColumn,h=[];for(let c=0,d=a.length;c<d;c++){let d=a[c],e=d.range;b=b||d.forceMoveMarkers,h.push(this.getValueInRange(new r.Q(f,g,e.startLineNumber,e.startColumn))),d.text.length>0&&h.push(d.text),f=e.endLineNumber,g=e.endColumn}let i=h.join(""),[j,k,l]=(0,o.W)(i);return{sortIndex:0,identifier:a[0].identifier,range:e,rangeOffset:this.getOffsetAt(e.startLineNumber,e.startColumn),rangeLength:this.getValueLengthInRange(e,0),text:i,eolCount:j,firstLineLength:k,lastLineLength:l,forceMoveMarkers:b,isAutoWhitespaceEdit:!1}}_doApplyEdits(a){a.sort(aQ._sortOpsDescending);let b=[];for(let c=0;c<a.length;c++){let d=a[c],e=d.range.startLineNumber,f=d.range.startColumn,g=d.range.endLineNumber,h=d.range.endColumn;if(e===g&&f===h&&0===d.text.length)continue;d.text?(this._pieceTree.delete(d.rangeOffset,d.rangeLength),this._pieceTree.insert(d.rangeOffset,d.text,!0)):this._pieceTree.delete(d.rangeOffset,d.rangeLength);let i=new r.Q(e,f,g,h);b.push({range:i,rangeLength:d.rangeLength,text:d.text,rangeOffset:d.rangeOffset,forceMoveMarkers:d.forceMoveMarkers})}return b}findMatchesLineByLine(a,b,c,d){return this._pieceTree.findMatchesLineByLine(a,b,c,d)}static _getInverseEditRanges(a){let b=[],c=0,d=0,e=null;for(let f=0,g=a.length;f<g;f++){let g,h,i,j=a[f];if(e?e.range.endLineNumber===j.range.startLineNumber?(g=c,h=d+(j.range.startColumn-e.range.endColumn)):(g=c+(j.range.startLineNumber-e.range.endLineNumber),h=j.range.startColumn):(g=j.range.startLineNumber,h=j.range.startColumn),j.text.length>0){let a=j.eolCount+1;i=1===a?new r.Q(g,h,g,h+j.firstLineLength):new r.Q(g,h,g+a-1,j.lastLineLength+1)}else i=new r.Q(g,h,g,h);c=i.endLineNumber,d=i.endColumn,b.push(i),e=j}return b}static _sortOpsAscending(a,b){let c=r.Q.compareRangesUsingEnds(a.range,b.range);return 0===c?a.sortIndex-b.sortIndex:c}static _sortOpsDescending(a,b){let c=r.Q.compareRangesUsingEnds(a.range,b.range);return 0===c?b.sortIndex-a.sortIndex:-c}}class aR{constructor(a,b,c,d,e,f,g,h,i){this._chunks=a,this._bom=b,this._cr=c,this._lf=d,this._crlf=e,this._containsRTL=f,this._containsUnusualLineTerminators=g,this._isBasicASCII=h,this._normalizeEOL=i}_getEOL(a){let b=this._cr+this._lf+this._crlf,c=this._cr+this._crlf;return 0===b?1===a?"\n":"\r\n":c>b/2?"\r\n":"\n"}create(a){let b=this._getEOL(a),c=this._chunks;if(this._normalizeEOL&&("\r\n"===b&&(this._cr>0||this._lf>0)||"\n"===b&&(this._cr>0||this._crlf>0)))for(let a=0,d=c.length;a<d;a++){let d=c[a].buffer.replace(/\r\n|\r|\n/g,b),e=aJ(d);c[a]=new aL(d,e)}let d=new aQ(c,this._bom,b,this._containsRTL,this._containsUnusualLineTerminators,this._isBasicASCII,this._normalizeEOL);return{textBuffer:d,disposable:d}}}class aS{constructor(){this.chunks=[],this.BOM="",this._hasPreviousChar=!1,this._previousChar=0,this._tmpLineStarts=[],this.cr=0,this.lf=0,this.crlf=0,this.containsRTL=!1,this.containsUnusualLineTerminators=!1,this.isBasicASCII=!0}acceptChunk(a){if(0===a.length)return;0===this.chunks.length&&m.LU(a)&&(this.BOM=m.r_,a=a.substr(1));let b=a.charCodeAt(a.length-1);13===b||b>=55296&&b<=56319?(this._acceptChunk1(a.substr(0,a.length-1),!1),this._hasPreviousChar=!0):(this._acceptChunk1(a,!1),this._hasPreviousChar=!1),this._previousChar=b}_acceptChunk1(a,b){(b||0!==a.length)&&(this._hasPreviousChar?this._acceptChunk2(String.fromCharCode(this._previousChar)+a):this._acceptChunk2(a))}_acceptChunk2(a){let b=function(a,b){a.length=0,a[0]=0;let c=1,d=0,e=0,f=0,g=!0;for(let h=0,i=b.length;h<i;h++){let j=b.charCodeAt(h);13===j?h+1<i&&10===b.charCodeAt(h+1)?(f++,a[c++]=h+2,h++):(d++,a[c++]=h+1):10===j?(e++,a[c++]=h+1):g&&9!==j&&(j<32||j>126)&&(g=!1)}let h=new aI(aH(a),d,e,f,g);return a.length=0,h}(this._tmpLineStarts,a);this.chunks.push(new aL(a,b.lineStarts)),this.cr+=b.cr,this.lf+=b.lf,this.crlf+=b.crlf,!b.isBasicASCII&&(this.isBasicASCII=!1,this.containsRTL||(this.containsRTL=m.E_(a)),this.containsUnusualLineTerminators||(this.containsUnusualLineTerminators=m.$X(a)))}finish(a=!0){return this._finish(),new aR(this.chunks,this.BOM,this.cr,this.lf,this.crlf,this.containsRTL,this.containsUnusualLineTerminators,this.isBasicASCII,a)}_finish(){if(0===this.chunks.length&&this._acceptChunk1("",!0),this._hasPreviousChar){this._hasPreviousChar=!1;let a=this.chunks[this.chunks.length-1];a.buffer+=String.fromCharCode(this._previousChar);let b=aJ(a.buffer);a.lineStarts=b,13===this._previousChar&&this.cr++}}}var aT=c(20069),aU=c(12010),aV=c(41474),aW=c(91849),aX=c(11035),aY=c(39537),aZ=c(71500);class a${constructor(){this._onDidChangeVisibleRanges=new k.vl,this.onDidChangeVisibleRanges=this._onDidChangeVisibleRanges.event,this._views=new Set,this._viewsChanged=(0,aY.Yd)(this),this.visibleLineRanges=(0,aY.C)({owner:this,equalsFn:(0,aZ.S3)((0,aZ.r)())},a=>(this._viewsChanged.read(a),aX.M.joinMany([...this._views].map(b=>b.state.read(a)?.visibleLineRanges??[]))))}attachView(){let a=new a0(b=>{this._onDidChangeVisibleRanges.fire({view:a,state:b})});return this._views.add(a),this._viewsChanged.trigger(void 0),a}detachView(a){this._views.delete(a),this._onDidChangeVisibleRanges.fire({view:a,state:void 0}),this._viewsChanged.trigger(void 0)}}class a_{constructor(a,b){this.visibleLineRanges=a,this.stabilized=b}equals(a){return this===a||!!(0,h.aI)(this.visibleLineRanges,a.visibleLineRanges,(a,b)=>a.equals(b))&&this.stabilized===a.stabilized}}class a0{get state(){return this._state}constructor(a){this.handleStateChange=a,this._state=(0,aY.Zh)({owner:this,equalsFn:(0,aZ.KC)((a,b)=>a.equals(b))},void 0)}setVisibleLines(a,b){let c=new a_(a.map(a=>new aX.M(a.startLineNumber,a.endLineNumber+1)),b);this._state.set(c,void 0,void 0),this.handleStateChange(c)}}class a1 extends l.jG{get lineRanges(){return this._lineRanges}constructor(a){super(),this._refreshTokens=a,this.runner=this._register(new aW.uC(()=>this.update(),50)),this._computedLineRanges=[],this._lineRanges=[]}update(){(0,h.aI)(this._computedLineRanges,this._lineRanges,(a,b)=>a.equals(b))||(this._computedLineRanges=this._lineRanges,this._refreshTokens())}handleStateChange(a){this._lineRanges=a.visibleLineRanges,a.stabilized?(this.runner.cancel(),this.update()):this.runner.schedule()}}class a2 extends l.jG{get backgroundTokenizationState(){return this._backgroundTokenizationState}constructor(a,b){super(),this._languageIdCodec=a,this._textModel=b,this._onDidChangeTokens=this._register(new k.vl),this.onDidChangeTokens=this._onDidChangeTokens.event}tokenizeIfCheap(a){this.isCheapToTokenize(a)&&this.forceTokenization(a)}}var a3=c(19254),a4=c(12546),a5=c(1136),a6=c(53918);function a7(a,b){let c=a.gotoParent(),d=b.gotoParent();if(c!==d)throw Error("Trees are out of sync");return c&&d}function a8(a,b){do{if(a.currentNode.nextSibling)return function(a,b){let c=a.gotoNextSibling(),d=b.gotoNextSibling();if(c!==d)throw Error("Trees are out of sync");return c&&d}(a,b);a.currentNode.parent&&a7(a,b)}while(a.currentNode.nextSibling||a.currentNode.parent);return!1}var a9=function(a,b){return function(c,d){b(c,d,a)}};let ba=class extends l.jG{constructor(a,b,c,d,e,f,g){super(),this.languageId=a,this._ranges=b,this._parser=c,this._parserClass=d,this.textModel=e,this._logService=f,this._telemetryService=g,this._tree=(0,aY.FY)(this,void 0),this.tree=this._tree,this._treeLastParsedVersion=(0,aY.FY)(this,-1),this.treeLastParsedVersion=this._treeLastParsedVersion,this._onDidChangeContentQueue=new aW.Pq,this._tree=(0,aY.FY)(this,void 0),this.tree=this._tree,this._register((0,l.s)(()=>{this._tree.get()?.delete(),this._lastFullyParsed?.delete(),this._lastFullyParsedWithEdits?.delete(),this._parser.delete()})),this.handleContentChange(void 0,this._ranges)}handleContentChange(a,b){let c=this.textModel.getVersionId(),d=[];b&&(d=this._setRanges(b)),a&&this._applyEdits(a.changes),this._onDidChangeContentQueue.clearPending(),this._onDidChangeContentQueue.schedule(async()=>{let a;if(this._store.isDisposed)return;let b=this._lastFullyParsed;this._lastFullyParsedWithEdits&&this._lastFullyParsed&&(a=this._findChangedNodes(this._lastFullyParsedWithEdits,this._lastFullyParsed));let e=await this._parseAndUpdateTree(c);if(e){let f;a?b&&a&&(f=this._findTreeChanges(e,a,d)):this._ranges&&(f=this._ranges.map(a=>({newRange:new r.Q(a.startPosition.row+1,a.startPosition.column+1,a.endPosition.row+1,a.endPosition.column+1),oldRangeLength:a.endIndex-a.startIndex,newRangeStartOffset:a.startIndex,newRangeEndOffset:a.endIndex}))),f||(f=[{newRange:this.textModel.getFullModelRange(),newRangeStartOffset:0,newRangeEndOffset:this.textModel.getValueLength()}]);let g=this._tree.get();(0,aY.Rn)(a=>{this._tree.set(e,a,{ranges:f,versionId:c}),this._treeLastParsedVersion.set(c,a)}),g?.delete()}})}_applyEdits(a){for(let b of a){let a=a6.W.ofRange(r.Q.lift(b.range)),c=a6.W.ofText(b.text),d=0===b.text.length?c:a.add(c),e={startIndex:b.rangeOffset,oldEndIndex:b.rangeOffset+b.rangeLength,newEndIndex:b.rangeOffset+b.text.length,startPosition:{row:b.range.startLineNumber-1,column:b.range.startColumn-1},oldEndPosition:{row:b.range.endLineNumber-1,column:b.range.endColumn-1},newEndPosition:{row:b.range.startLineNumber+d.lineCount-1,column:d.lineCount?d.columnCount:b.range.endColumn+d.columnCount}};this._tree.get()?.edit(e),this._lastFullyParsedWithEdits?.edit(e)}}_findChangedNodes(a,b){if(this._ranges&&this._ranges.every(b=>b.startPosition.row!==a.rootNode.startPosition.row)||0!==a.rootNode.startPosition.row)return[];let c=a.walk(),d=b.walk(),e=[],f=!0;do if(c.currentNode.hasChanges){let b=c.currentNode.children,g=[],h=b.filter((a,b)=>(!!a?.hasChanges||d.currentNode.children.length<=b)&&(g.push(b),!0));if(0===h.length||c.currentNode.hasError!==d.currentNode.hasError){for(;c.currentNode.parent&&f&&!c.currentNode.isNamed;)f=a7(c,d);let b=c.currentNode,g=function(a,b){let c=b.walk();c.resetTo(a);let d=a.currentNode;do if(c.currentNode.previousSibling&&c.currentNode.endIndex-c.currentNode.startIndex!=0)c.gotoPreviousSibling();else{for(;!c.currentNode.previousSibling&&c.currentNode.parent;)c.gotoParent();c.gotoPreviousSibling()}while(c.currentNode.endIndex>d.startIndex&&(c.currentNode.parent||c.currentNode.previousSibling)&&c.currentNode.id!==d.id);return c.currentNode.id!==d.id&&c.currentNode.endIndex<=d.startIndex?c.currentNode:void 0}(c,a)??b;e.push({startIndex:g.startIndex,endIndex:b.endIndex,startPosition:g.startPosition,endPosition:b.endPosition}),f=a8(c,d)}else h.length>=1&&(f=function(a,b,c){let d=a.gotoFirstChild(),e=b.gotoFirstChild();if(d!==e)throw Error("Trees are out of sync");if(0===c)return d&&e;for(let d=1;d<=c;d++){let c=a.gotoNextSibling(),d=b.gotoNextSibling();if(c!==d)throw Error("Trees are out of sync");if(!c||!d)return!1}return d&&e}(c,d,g[0]))}else f=a8(c,d);while(f);return c.delete(),d.delete(),e}_findTreeChanges(a,b,c){let d=0,e=[];for(let f=0;f<b.length;f++){let g=b[f];if(e.length>0&&g.startIndex>=e[e.length-1].newRangeStartOffset&&g.endIndex<=e[e.length-1].newRangeEndOffset)continue;let h=a.walk(),i=()=>h.startIndex<g.startIndex&&h.endIndex>g.endIndex;for(;i();){let a=h.gotoFirstChild(),b=!1;for(;a;)if(i()&&h.currentNode.isNamed){b=!0;break}else a=h.gotoNextSibling();if(!b){h.gotoParent();break}if(0===h.currentNode.childCount)break}let j=h.currentNode.startPosition,k=h.currentNode.endPosition,l=h.currentNode.startIndex,m=h.currentNode.endIndex,n={newRange:new r.Q(j.row+1,j.column+1,k.row+1,k.column+1),newRangeStartOffset:l,newRangeEndOffset:m};d<c.length&&bb(c[d],{startIndex:l,endIndex:m,startPosition:j,endPosition:k})?(c[d].startIndex<n.newRangeStartOffset&&(n.newRange=n.newRange.setStartPosition(c[d].startPosition.row+1,c[d].startPosition.column+1),n.newRangeStartOffset=c[d].startIndex),c[d].endIndex>n.newRangeEndOffset&&(n.newRange=n.newRange.setEndPosition(c[d].endPosition.row+1,c[d].endPosition.column+1),n.newRangeEndOffset=c[d].endIndex),d++):d<c.length&&c[d].endIndex<n.newRangeStartOffset&&e.push({newRange:new r.Q(c[d].startPosition.row+1,c[d].startPosition.column+1,c[d].endPosition.row+1,c[d].endPosition.column+1),newRangeStartOffset:c[d].startIndex,newRangeEndOffset:c[d].endIndex}),e.length>0&&e[e.length-1].newRangeEndOffset>=n.newRangeStartOffset?(e[e.length-1].newRange=r.Q.fromPositions(e[e.length-1].newRange.getStartPosition(),n.newRange.getEndPosition()),e[e.length-1].newRangeEndOffset=n.newRangeEndOffset):e.push(n)}return this._constrainRanges(e)}_constrainRanges(a){if(!this._ranges)return a;let b=[],c=0,d=0;for(;c<a.length&&d<this._ranges.length;){let e=a[c],f=this._ranges[d];if(e.newRangeEndOffset<f.startIndex)c++;else if(e.newRangeStartOffset>f.endIndex)d++;else{let a=Math.max(e.newRangeStartOffset,f.startIndex),d=Math.min(e.newRangeEndOffset,f.endIndex),g=e.newRange.intersectRanges(new r.Q(f.startPosition.row+1,f.startPosition.column+1,f.endPosition.row+1,f.endPosition.column+1));b.push({newRange:g,newRangeEndOffset:d,newRangeStartOffset:a}),d<e.newRangeEndOffset?(e.newRange=r.Q.fromPositions(g.getEndPosition(),e.newRange.getEndPosition()),e.newRangeStartOffset=d+1):c++}}return b}async _parseAndUpdateTree(a){let b=await this._parse();if(b)return this._lastFullyParsed?.delete(),this._lastFullyParsed=b.copy(),this._lastFullyParsedWithEdits?.delete(),this._lastFullyParsedWithEdits=b.copy(),b;this._tree.get()||this._parser.reset()}_parse(){let a="fullParse";return this._tree.get()&&(a="incrementalParse"),this._parseAndYield(a)}async _parseAndYield(a){let b,c,d=0,e=0,f=this.textModel.getVersionId(),g=(b=performance.now(),function(a){let c=performance.now();return c-b>50&&(b=c,!0)});do{let a=performance.now();c=this._parser.parse((a,b)=>this._parseCallback(a),this._tree.get(),{progressCallback:g,includedRanges:this._ranges}),d+=performance.now()-a,e++,await new Promise(a=>(0,a3._p)(a))}while(!this._store.isDisposed&&!c&&f===this.textModel.getVersionId());return this._sendParseTimeTelemetry(a,d,e),c&&f===this.textModel.getVersionId()?c:void 0}_parseCallback(a){try{return this.textModel.getTextBuffer().getNearestChunk(a)}catch(a){this._logService.debug("Error getting chunk for tree-sitter parsing",a)}}_setRanges(a){let b=[];if(this._ranges)for(let e of a){let a=!1;for(let b=0;b<this._ranges.length;b++){var c,d;let f=this._ranges[b];if(c=f,d=e,c.startPosition.row===d.startPosition.row&&c.startPosition.column===d.startPosition.column&&c.endPosition.row===d.endPosition.row&&c.endPosition.column===d.endPosition.column&&c.startIndex===d.startIndex&&c.endIndex===d.endIndex||bb(f,e)){a=!0;break}}a||b.push(e)}else b.push(...a);return this._ranges=a,b}_sendParseTimeTelemetry(a,b,c){this._logService.debug(`Tree parsing (${a}) took ${b} ms and ${c} passes.`),"fullParse"===a?this._telemetryService.publicLog2("treeSitter.fullParse",{languageId:this.languageId,time:b,passes:c}):this._telemetryService.publicLog2("treeSitter.incrementalParse",{languageId:this.languageId,time:b,passes:c})}createParsedTreeSync(a){let b=new this._parserClass;b.setLanguage(this._parser.language);let c=b.parse(a);return b.delete(),c??void 0}};function bb(a,b){return a.startIndex<=b.startIndex&&a.endIndex>=b.startIndex||b.startIndex<=a.startIndex&&b.endIndex>=a.startIndex}ba=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([a9(5,a4.rr),a9(6,a5.k)],ba);var bc=c(21652),bd=c(37774),be=c(58912),bf=c(2489);class bg{constructor(a){this._default=a,this._store=[]}get(a){return a<this._store.length?this._store[a]:this._default}set(a,b){for(;a>=this._store.length;)this._store[this._store.length]=this._default;this._store[a]=b}replace(a,b,c){if(a>=this._store.length)return;if(0===b)return void this.insert(a,c);if(0===c)return void this.delete(a,b);let d=this._store.slice(0,a),e=this._store.slice(a+b),f=function(a,b){let c=[];for(let d=0;d<a;d++)c[d]=b;return c}(c,this._default);this._store=d.concat(f,e)}delete(a,b){0===b||a>=this._store.length||this._store.splice(a,b)}insert(a,b){if(0===b||a>=this._store.length)return;let c=[];for(let a=0;a<b;a++)c[a]=this._default;this._store=(0,h.nK)(this._store,a,c)}}class bh{get startLineNumber(){return this._startLineNumber}get endLineNumber(){return this._startLineNumber+this._tokens.length-1}constructor(a,b){this._startLineNumber=a,this._tokens=b}getLineTokens(a){return this._tokens[a-this._startLineNumber]}appendLineTokens(a){this._tokens.push(a)}}class bi{constructor(){this._tokens=[]}add(a,b){if(this._tokens.length>0){let c=this._tokens[this._tokens.length-1];if(c.endLineNumber+1===a)return void c.appendLineTokens(b)}this._tokens.push(new bh(a,[b]))}finalize(){return this._tokens}}class bj{constructor(a,b){this.tokenizationSupport=b,this.initialState=this.tokenizationSupport.getInitialState(),this.store=new bm(a)}getStartState(a){return this.store.getStartState(a,this.initialState)}getFirstInvalidLine(){return this.store.getFirstInvalidLine(this.initialState)}}class bk extends bj{constructor(a,b,c,d){super(a,b),this._textModel=c,this._languageIdCodec=d}updateTokensUntilLine(a,b){let c=this._textModel.getLanguageId();for(;;){let d=this.getFirstInvalidLine();if(!d||d.lineNumber>b)break;let e=this._textModel.getLineContent(d.lineNumber),f=bp(this._languageIdCodec,c,this.tokenizationSupport,e,!0,d.startState);a.add(d.lineNumber,f.tokens),this.store.setEndState(d.lineNumber,f.endState)}}getTokenTypeIfInsertingCharacter(a,b){let c=this.getStartState(a.lineNumber);if(!c)return 0;let d=this._textModel.getLanguageId(),e=this._textModel.getLineContent(a.lineNumber),f=e.substring(0,a.column-1)+b+e.substring(a.column-1),g=bp(this._languageIdCodec,d,this.tokenizationSupport,f,!0,c),h=new aV.f7(g.tokens,f,this._languageIdCodec);if(0===h.getCount())return 0;let i=h.findTokenIndexAtOffset(a.column-1);return h.getStandardTokenType(i)}tokenizeLinesAt(a,b){let c=this.getStartState(a);if(!c)return null;let d=this._textModel.getLanguageId(),e=[],f=c;for(let a of b){let b=bp(this._languageIdCodec,d,this.tokenizationSupport,a,!0,f);e.push(new aV.f7(b.tokens,a,this._languageIdCodec)),f=b.endState}return e}hasAccurateTokensForLine(a){return a<this.store.getFirstInvalidEndStateLineNumberOrMax()}isCheapToTokenize(a){let b=this.store.getFirstInvalidEndStateLineNumberOrMax();return!!(a<b||a===b&&2048>this._textModel.getLineLength(a))}tokenizeHeuristically(a,b,c){if(c<=this.store.getFirstInvalidEndStateLineNumberOrMax())return{heuristicTokens:!1};if(b<=this.store.getFirstInvalidEndStateLineNumberOrMax())return this.updateTokensUntilLine(a,c),{heuristicTokens:!1};let d=this.guessStartState(b),e=this._textModel.getLanguageId();for(let f=b;f<=c;f++){let b=this._textModel.getLineContent(f),c=bp(this._languageIdCodec,e,this.tokenizationSupport,b,!0,d);a.add(f,c.tokens),d=c.endState}return{heuristicTokens:!0}}guessStartState(a){let{likelyRelevantLines:b,initialState:c}=bl(this._textModel,a,this);c||(c=this.tokenizationSupport.getInitialState());let d=this._textModel.getLanguageId(),e=c;for(let a of b)e=bp(this._languageIdCodec,d,this.tokenizationSupport,a,!1,e).endState;return e}}function bl(a,b,c){let d=a.getLineFirstNonWhitespaceColumn(b),e=[],f=null;for(let g=b-1;d>1&&g>=1;g--){let b=a.getLineFirstNonWhitespaceColumn(g);if(0!==b&&b<d&&(e.push(a.getLineContent(g)),d=b,f=c?.getStartState(g)))break}return e.reverse(),{likelyRelevantLines:e,initialState:f??void 0}}class bm{constructor(a){this.lineCount=a,this._tokenizationStateStore=new bn,this._invalidEndStatesLineNumbers=new bo,this._invalidEndStatesLineNumbers.addRange(new be.L(1,a+1))}getEndState(a){return this._tokenizationStateStore.getEndState(a)}setEndState(a,b){if(!b)throw new j.D7("Cannot set null/undefined state");this._invalidEndStatesLineNumbers.delete(a);let c=this._tokenizationStateStore.setEndState(a,b);return c&&a<this.lineCount&&this._invalidEndStatesLineNumbers.addRange(new be.L(a+1,a+2)),c}acceptChange(a,b){this.lineCount+=b-a.length,this._tokenizationStateStore.acceptChange(a,b),this._invalidEndStatesLineNumbers.addRangeAndResize(new be.L(a.startLineNumber,a.endLineNumberExclusive),b)}acceptChanges(a){for(let b of a){let[a]=(0,o.W)(b.text);this.acceptChange(new aX.M(b.range.startLineNumber,b.range.endLineNumber+1),a+1)}}invalidateEndStateRange(a){this._invalidEndStatesLineNumbers.addRange(new be.L(a.startLineNumber,a.endLineNumberExclusive))}getFirstInvalidEndStateLineNumber(){return this._invalidEndStatesLineNumbers.min}getFirstInvalidEndStateLineNumberOrMax(){return this.getFirstInvalidEndStateLineNumber()||Number.MAX_SAFE_INTEGER}allStatesValid(){return null===this._invalidEndStatesLineNumbers.min}getStartState(a,b){return 1===a?b:this.getEndState(a-1)}getFirstInvalidLine(a){let b=this.getFirstInvalidEndStateLineNumber();if(null===b)return null;let c=this.getStartState(b,a);if(!c)throw new j.D7("Start state must be defined");return{lineNumber:b,startState:c}}}class bn{constructor(){this._lineEndStates=new bg(null)}getEndState(a){return this._lineEndStates.get(a)}setEndState(a,b){let c=this._lineEndStates.get(a);return!(c&&c.equals(b))&&(this._lineEndStates.set(a,b),!0)}acceptChange(a,b){let c=a.length;b>0&&c>0&&(c--,b--),this._lineEndStates.replace(a.startLineNumber,c,b)}}class bo{constructor(){this._ranges=[]}get min(){return 0===this._ranges.length?null:this._ranges[0].start}delete(a){let b=this._ranges.findIndex(b=>b.contains(a));if(-1!==b){let c=this._ranges[b];c.start===a?c.endExclusive===a+1?this._ranges.splice(b,1):this._ranges[b]=new be.L(a+1,c.endExclusive):c.endExclusive===a+1?this._ranges[b]=new be.L(c.start,a):this._ranges.splice(b,1,new be.L(c.start,a),new be.L(a+1,c.endExclusive))}}addRange(a){be.L.addRange(a,this._ranges)}addRangeAndResize(a,b){let c=0;for(;!(c>=this._ranges.length||a.start<=this._ranges[c].endExclusive);)c++;let d=c;for(;!(d>=this._ranges.length||a.endExclusive<this._ranges[d].start);)d++;let e=b-a.length;for(let a=d;a<this._ranges.length;a++)this._ranges[a]=this._ranges[a].delta(e);if(c===d){let d=new be.L(a.start,a.start+b);d.isEmpty||this._ranges.splice(c,0,d)}else{let b=Math.min(a.start,this._ranges[c].start),f=Math.max(a.endExclusive,this._ranges[d-1].endExclusive),g=new be.L(b,f+e);g.isEmpty?this._ranges.splice(c,d-c):this._ranges.splice(c,d-c,g)}}toString(){return this._ranges.map(a=>a.toString()).join(" + ")}}function bp(a,b,c,d,e,f){let g=null;if(c)try{g=c.tokenizeEncoded(d,e,f.clone())}catch(a){(0,j.dz)(a)}return g||(g=(0,bf.Lh)(a.encodeLanguageId(b),f)),aV.f7.convertToEndOffset(g.tokens,d.length),g}class bq{constructor(a,b){this._tokenizerWithStateStore=a,this._backgroundTokenStore=b,this._isDisposed=!1,this._isScheduled=!1}dispose(){this._isDisposed=!0}handleChanges(){this._beginBackgroundTokenization()}_beginBackgroundTokenization(){!this._isScheduled&&this._tokenizerWithStateStore._textModel.isAttachedToEditor()&&this._hasLinesToTokenize()&&(this._isScheduled=!0,(0,aW.$6)(a=>{this._isScheduled=!1,this._backgroundTokenizeWithDeadline(a)}))}_backgroundTokenizeWithDeadline(a){let b=Date.now()+a.timeRemaining(),c=()=>{!this._isDisposed&&this._tokenizerWithStateStore._textModel.isAttachedToEditor()&&this._hasLinesToTokenize()&&(this._backgroundTokenizeForAtLeast1ms(),Date.now()<b?(0,a3._p)(c):this._beginBackgroundTokenization())};c()}_backgroundTokenizeForAtLeast1ms(){let a=this._tokenizerWithStateStore._textModel.getLineCount(),b=new bi,c=bd.W.create(!1);do if(c.elapsed()>1||this._tokenizeOneInvalidLine(b)>=a)break;while(this._hasLinesToTokenize());this._backgroundTokenStore.setTokens(b.finalize()),this.checkFinished()}_hasLinesToTokenize(){return!!this._tokenizerWithStateStore&&!this._tokenizerWithStateStore.store.allStatesValid()}_tokenizeOneInvalidLine(a){let b=this._tokenizerWithStateStore?.getFirstInvalidLine();return b?(this._tokenizerWithStateStore.updateTokensUntilLine(a,b.lineNumber),b.lineNumber):this._tokenizerWithStateStore._textModel.getLineCount()+1}checkFinished(){!this._isDisposed&&this._tokenizerWithStateStore.store.allStatesValid()&&this._backgroundTokenStore.backgroundTokenizationFinished()}requestTokens(a,b){this._tokenizerWithStateStore.store.invalidateEndStateRange(new aX.M(a,b))}}class br{get children(){return this._children}get length(){return this._length}constructor(a){this.height=a,this._children=[],this._length=0}static create(a,b){let c=new br(a.height+1);return c.appendChild(a),c.appendChild(b),c}canAppendChild(){return this._children.length<3}appendChild(a){if(!this.canAppendChild())throw Error("Cannot insert more than 3 children in a ListNode");this._children.push(a),this._length+=a.length,this._updateParentLength(a.length),bs(a)||(a.parent=this)}_updateParentLength(a){let b=this.parent;for(;b;)b._length+=a,b=b.parent}unappendChild(){let a=this._children.pop();return this._length-=a.length,this._updateParentLength(-a.length),a}prependChild(a){if(this._children.length>=3)throw Error("Cannot prepend more than 3 children in a ListNode");this._children.unshift(a),this._length+=a.length,this._updateParentLength(a.length),bs(a)||(a.parent=this)}unprependChild(){let a=this._children.shift();return this._length-=a.length,this._updateParentLength(-a.length),a}lastChild(){return this._children[this._children.length-1]}dispose(){this._children.splice(0,this._children.length)}}function bs(a){return void 0!==a.token}function bt(a,b){let c,d=a,e=[];for(;;){if(b.height===d.height){c=b;break}if(bs(d))throw Error("unexpected");e.push(d),d=d.lastChild()}for(let a=e.length-1;a>=0;a--){let b=e[a];c&&(b.children.length>=3?c=br.create(b.unappendChild(),c):(b.appendChild(c),c=void 0))}if(!c)return a;{let b=new br(c.height+1);return b.appendChild(a),b.appendChild(c),b}}(d=e||(e={}))[d.None=0]="None",d[d.ViewportGuess=1]="ViewportGuess",d[d.EditGuess=2]="EditGuess",d[d.Accurate=3]="Accurate";class bu{constructor(a){this._textModel=a,this._root=this.createEmptyRoot()}createEmptyRoot(){return{length:this._textModel.getValueLength(),token:0,height:0,tokenQuality:e.None}}buildStore(a,b){this._root=this.createFromUpdates(a,b)}createFromUpdates(a,b){if(0===a.length)return this.createEmptyRoot();let c={length:a[0].length,token:a[0].token,height:0,tokenQuality:b};for(let d=1;d<a.length;d++)c=bt(c,{length:a[d].length,token:a[d].token,height:0,tokenQuality:b});return c}update(a,b,c){0!==b.length&&this.replace(a,b[0].startOffsetInclusive,b,c)}delete(a,b){this.replace(a,b,[],e.EditGuess)}replace(a,b,c,d){let e,f=b+a,g=[],h=[],i=[{node:this._root,offset:0}];for(;i.length>0;){let a=i.pop(),c=a.offset;if(c<b&&c+a.node.length<=b){bs(a.node)||(a.node.parent=void 0),g.push(a.node);continue}if(bs(a.node)&&c<b&&g.push({length:b-c,token:a.node.token,height:0,tokenQuality:a.node.tokenQuality}),!(b<=c)||!(c+a.node.length<=f)){if(c>=f){bs(a.node)||(a.node.parent=void 0),h.push(a.node);continue}if(bs(a.node)&&c+a.node.length>f){h.push({length:c+a.node.length-f,token:a.node.token,height:0,tokenQuality:a.node.tokenQuality});continue}if(!bs(a.node)){let b=c+a.node.length;for(let c=a.node.children.length-1;c>=0;c--)b-=a.node.children[c].length,i.push({node:a.node.children[c],offset:b})}}}let j=(e=c.length>0?g.concat(this.createFromUpdates(c,d),h):g.concat(h))[0];for(let a=1;a<e.length;a++){var k,l;k=j,l=e[a],j=k.height===l.height?br.create(k,l):k.height>l.height?bt(k,l):function(a,b){let c=a,d=[];for(;b.height!==c.height;){if(bs(c))throw Error("unexpected");d.push(c),c=c.children[0]}let e=b;for(let a=d.length-1;a>=0;a--){let b=d[a];e&&(b.children.length>=3?e=br.create(e,b.unprependChild()):(b.prependChild(e),e=void 0))}return e?br.create(e,a):a}(l,k)}this._root=j??this.createEmptyRoot()}traverseInOrderInRange(a,b,c){let d=[{node:this._root,offset:0}];for(;d.length>0;){let{node:e,offset:f}=d.pop();if(!(f+e.length<=a)&&!(f>=b)){if(c(e,f))return;if(!bs(e)){let a=f+e.length;for(let b=e.children.length-1;b>=0;b--)a-=e.children[b].length,d.push({node:e.children[b],offset:a})}}}}getTokenAt(a){let b;return this.traverseInOrderInRange(a,this._root.length,(a,c)=>!!bs(a)&&(b={token:a.token,startOffsetInclusive:c,length:a.length},!0)),b}getTokensInRange(a,b){let c=[];return this.traverseInOrderInRange(a,b,(d,e)=>{if(bs(d)){let f=d.length,g=e;e<a&&e+d.length>b?(g=a,f=b-a):e<a?(f-=a-e,g=a):e+d.length>b&&(f-=e+d.length-b),c.push({token:d.token,startOffsetInclusive:g,length:f})}return!1}),c}markForRefresh(a,b){this.traverseInOrderInRange(a,b,a=>(bs(a)&&(a.tokenQuality=e.None),!1))}rangeHasTokens(a,b,c){let d=!0;return this.traverseInOrderInRange(a,b,a=>(bs(a)&&a.tokenQuality<c&&(d=!1),!1)),d}rangeNeedsRefresh(a,b){let c=!1;return this.traverseInOrderInRange(a,b,a=>(bs(a)&&a.tokenQuality!==e.Accurate&&(c=!0),!1)),c}getNeedsRefresh(){let a=[];return this.traverseInOrderInRange(0,this._textModel.getValueLength(),(b,c)=>(bs(b)&&b.tokenQuality!==e.Accurate&&(a.length>0&&a[a.length-1].endOffset===c?a[a.length-1].endOffset+=b.length:a.push({startOffset:c,endOffset:c+b.length})),!1)),a}dispose(){let a=[[this._root,!1]];for(;a.length>0;){let[b,c]=a.pop();if(bs(b));else if(c)b.dispose(),b.parent=void 0;else{a.push([b,!0]);for(let c=b.children.length-1;c>=0;c--)a.push([b.children[c],!1])}}this._root=void 0}}var bv=c(98896);let bw=(0,bc.u1)("treeSitterThemeService"),bx=class extends l.jG{get _textModel(){return this._tree.textModel}constructor(a,b,c,d,f){super(),this._tree=a,this._highlightingQueries=b,this._languageIdCodec=c,this._visibleLineRanges=d,this._treeSitterThemeService=f,this._onDidChangeTokens=this._register(new k.vl),this.onDidChangeTokens=this._onDidChangeTokens.event,this._onDidCompleteBackgroundTokenization=this._register(new k.vl),this.onDidChangeBackgroundTokenization=this._onDidCompleteBackgroundTokenization.event,this._encodedLanguageId=this._languageIdCodec.encodeLanguageId(this._tree.languageId),this._register((0,aY.lp)(this._treeSitterThemeService.onChange,()=>{this._updateTheme()})),this._tokenStore=this._register(new bu(this._textModel)),this._accurateVersion=this._textModel.getVersionId(),this._guessVersion=this._textModel.getVersionId(),this._tokenStore.buildStore(this._createEmptyTokens(),e.None),this._register((0,aY.fm)(a=>{let b=this._visibleLineRanges.read(a);this._parseAndTokenizeViewPort(b)})),this._register((0,aY.Y)({owner:this,changeTracker:(0,aY.jv)({tree:this._tree.tree})},(a,b)=>{let c=b.changes.at(0)?.change;if(b.changes.length>1)throw new j.D7("The tree changed twice in one transaction. This is currently not supported and should not happen.");if(c){if(this.hasTokens())for(let a of c.ranges)this._markForRefresh(a.newRange);this.hasTokens()?this._handleTreeUpdate(c.ranges,c.versionId):this._firstTreeUpdate(c.versionId)}else b.tree&&this._firstTreeUpdate(this._tree.treeLastParsedVersion.read(a))}))}handleContentChanged(a){for(let b of(this._guessVersion=a.versionId,a.changes))if(b.text.length>b.rangeLength){let a,c=b.rangeOffset>0?b.rangeOffset-1:b.rangeOffset,d=this._tokenStore.getTokenAt(c);d?(a={startOffsetInclusive:d.startOffsetInclusive,length:d.length+b.text.length-b.rangeLength,token:d.token},this._tokenStore.markForRefresh(c,b.rangeOffset+(b.text.length>b.rangeLength?b.text.length:b.rangeLength))):a={startOffsetInclusive:c,length:b.text.length,token:0},this._tokenStore.update(d?.length??0,[a],e.EditGuess)}else if(b.text.length<b.rangeLength){let a=b.rangeLength-b.text.length;this._tokenStore.delete(a,b.rangeOffset)}}getLineTokens(a){let b=this._textModel.getLineContent(a),c=this.getTokens(a);return new aV.f7(c,b,this._languageIdCodec)}_createEmptyTokens(){let a=this._emptyToken(),b=this._textModel.getValueLength();return[this._emptyTokensForOffsetAndLength(0,b,a)]}_emptyToken(){return this._treeSitterThemeService.findMetadata([],this._encodedLanguageId,!1,void 0)}_emptyTokensForOffsetAndLength(a,b,c){return{token:c,length:a+b,startOffsetInclusive:0}}hasAccurateTokensForLine(a){return this.hasTokens(new r.Q(a,1,a,this._textModel.getLineMaxColumn(a)))}tokenizeLinesAt(a,b){let c=this._guessTokensForLinesContent(a,b),d=[];if(!c)return null;for(let a=0;a<c.length;a++)d.push(new aV.f7(c[a],b[a],this._languageIdCodec));return d}_rangeHasTokens(a,b){return this._tokenStore.rangeHasTokens(this._textModel.getOffsetAt(a.getStartPosition()),this._textModel.getOffsetAt(a.getEndPosition()),b)}hasTokens(a){return!a||this._guessVersion===this._accurateVersion||!this._tokenStore.rangeNeedsRefresh(this._textModel.getOffsetAt(a.getStartPosition()),this._textModel.getOffsetAt(a.getEndPosition()))}getTokens(a){let b=this._textModel.getOffsetAt({lineNumber:a,column:1}),c=this._textModel.getOffsetAt({lineNumber:a,column:this._textModel.getLineLength(a)+1}),d=this._tokenStore.getTokensInRange(b,c),e=new Uint32Array(2*d.length);for(let a=0;a<d.length;a++)e[2*a]=d[a].startOffsetInclusive-b+d[a].length,e[2*a+1]=d[a].token;return e}getTokensInRange(a,b,c,d){let e=d?this._tokenizeCapturesWithMetadata(d,b,c):this._tokenize(a,b,c);if(e?.endOffsetsAndMetadata)return this._rangeTokensAsUpdates(b,e.endOffsetsAndMetadata)}_updateTokensInStore(a,b,c){for(let d of(this._accurateVersion=a,b)){let b,e=d.newTokens.length>0?d.newTokens[d.newTokens.length-1]:void 0;b=e&&this._guessVersion>=a?e.startOffsetInclusive+e.length-d.newTokens[0].startOffsetInclusive:d.oldRangeLength?d.oldRangeLength:0,this._tokenStore.update(b,d.newTokens,c)}}_markForRefresh(a){this._tokenStore.markForRefresh(this._textModel.getOffsetAt(a.getStartPosition()),this._textModel.getOffsetAt(a.getEndPosition()))}_getNeedsRefresh(){let a=this._tokenStore.getNeedsRefresh();return a?a.map(a=>({range:r.Q.fromPositions(this._textModel.getPositionAt(a.startOffset),this._textModel.getPositionAt(a.endOffset)),startOffset:a.startOffset,endOffset:a.endOffset})):[]}_parseAndTokenizeViewPort(a){for(let b of a.map(a=>a.toInclusiveRange()).filter(bv.O9)){let a=this._textModel.getOffsetAt(b.getStartPosition()),c=this._textModel.getOffsetAt(b.getEndPosition()),d=this._textModel.getVersionId();if(this._rangeHasTokens(b,e.ViewportGuess))continue;let f=this._textModel.getValueInRange(b),g=this._forceParseAndTokenizeContent(b,a,c,f,!0);if(!g||this._rangeHasTokens(b,e.ViewportGuess)||0===g.length)continue;let h=g[g.length-1],i=h.startOffsetInclusive+h.length-g[0].startOffsetInclusive;this._updateTokensInStore(d,[{newTokens:g,oldRangeLength:i}],e.ViewportGuess),this._onDidChangeTokens.fire({changes:{semanticTokensApplied:!1,ranges:[{fromLineNumber:b.startLineNumber,toLineNumber:b.endLineNumber}]}})}}_guessTokensForLinesContent(a,b){if(0===b.length)return;let c=b.join(this._textModel.getEOL()),d=new r.Q(1,1,a+b.length,b[b.length-1].length+1),e=this._textModel.getOffsetAt({lineNumber:a,column:1}),f=this._forceParseAndTokenizeContent(d,e,e+c.length,c,!1);if(!f)return;let g=Array(b.length),h=0,i=0,j=0;for(let a=0;a<b.length;a++){let c=[],d=!1;for(let e=h;!d&&e<f.length;e++){let g=f[e],k=g.endOffset-j,l=i-j;if(k<=b[a].length)c.push({endOffset:k,metadata:g.metadata}),h++;else if(l<b[a].length){let e={endOffset:b[a].length,metadata:g.metadata};c.push(e),d=!0}else d=!0;i=g.endOffset}g[a]=this._endOffsetTokensToUint32Array(c),j+=b[a].length+this._textModel.getEOL().length}return g}_forceParseAndTokenizeContent(a,b,c,d,e){let f=bl(this._textModel,a.startLineNumber).likelyRelevantLines,g=f.join(this._textModel.getEOL()),h=this._tree.createParsedTreeSync(`${g}${d}`);if(!h)return;let i=new r.Q(1,1,a.endLineNumber-a.startLineNumber+1+f.length,a.endColumn),j=this.captureAtRange(i),k=this._tokenizeCapturesWithMetadata(j,g.length,c-b+g.length);if(h.delete(),k)if(e)return this._rangeTokensAsUpdates(b,k.endOffsetsAndMetadata,g.length);else return k.endOffsetsAndMetadata}_firstTreeUpdate(a){return this._setViewPortTokens(a)}_setViewPortTokens(a){let b=this._visibleLineRanges.get().map(a=>{let b=a.toInclusiveRange();if(!b)return;let c=this._textModel.getOffsetAt(b.getStartPosition()),d=this._textModel.getOffsetAt(b.getEndPosition());return{newRange:b,newRangeEndOffset:d,newRangeStartOffset:c}}).filter(bv.O9);return this._handleTreeUpdate(b,a)}_handleTreeUpdate(a,b){let c=[];for(let b=0;b<a.length;b++)if(a[b].newRange.endLineNumber-a[b].newRange.startLineNumber>1e3){let d=a[b].newRange.endLineNumber,e=a[b].newRange.startLineNumber,f=a[b].newRange.startColumn,g=e+1e3;do{let h=new q.y(e,f),i=g===a[b].newRange.endLineNumber?a[b].newRange.endColumn:this._textModel.getLineMaxColumn(g),j=new q.y(g,i),k=r.Q.fromPositions(h,j);c.push({range:k,startOffset:this._textModel.getOffsetAt(k.getStartPosition()),endOffset:this._textModel.getOffsetAt(k.getEndPosition())}),e=g+1,f=1,g<d&&g+1e3>d?g=d:g+=1e3}while(g<=d)}else if(0===b||c[b-1].endOffset<a[b].newRangeStartOffset)c.push({range:a[b].newRange,startOffset:a[b].newRangeStartOffset,endOffset:a[b].newRangeEndOffset});else if(c[b-1].endOffset<a[b].newRangeEndOffset){let d=this._textModel.getPositionAt(c[b-1].endOffset+1),e=new r.Q(d.lineNumber,d.column,a[b].newRange.endLineNumber,a[b].newRange.endColumn);c.push({range:e,startOffset:c[b-1].endOffset+1,endOffset:a[b].newRangeEndOffset})}let d=c.map(a=>this._getCaptures(a.range));return this._updateTreeForRanges(c,b,d).then(()=>{this._textModel.isDisposed()||this._tree.treeLastParsedVersion.get()!==this._textModel.getVersionId()||this._refreshNeedsRefresh(b)})}async _updateTreeForRanges(a,b,c){let d;for(let f=0;f<a.length&&(this._textModel.isDisposed()||b===this._textModel.getVersionId());f++){let g=c[f],h=a[f],i=this.getTokensInRange(h.range,h.startOffset,h.endOffset,g);d=i?{newTokens:i}:{newTokens:[]},this._updateTokensInStore(b,[d],e.Accurate),this._onDidChangeTokens.fire({changes:{semanticTokensApplied:!1,ranges:[{fromLineNumber:h.range.getStartPosition().lineNumber,toLineNumber:h.range.getEndPosition().lineNumber}]}}),await new Promise(a=>(0,a3._p)(a))}this._onDidCompleteBackgroundTokenization.fire()}_refreshNeedsRefresh(a){let b=this._getNeedsRefresh();if(0===b.length)return;let c=Array(b.length);for(let a=0;a<b.length;a++){let d=b[a];c[a]={newRange:d.range,newRangeStartOffset:d.startOffset,newRangeEndOffset:d.endOffset}}this._handleTreeUpdate(c,a)}_rangeTokensAsUpdates(a,b,c){let d=[],e=0;for(let f of b){let b;f.endOffset<=e||c&&f.endOffset<c||(b=c&&e<c?{startOffsetInclusive:a+c,length:f.endOffset-c,token:f.metadata}:{startOffsetInclusive:a+e,length:f.endOffset-e,token:f.metadata},d.push(b),e=f.endOffset)}return d}_updateTheme(){let a=this._textModel.getFullModelRange();this._markForRefresh(a),this._parseAndTokenizeViewPort(this._visibleLineRanges.get())}captureAtRange(a){let b=this._tree.tree.get();return b?this._highlightingQueries.captures(b.rootNode,{startPosition:{row:a.startLineNumber-1,column:a.startColumn-1},endPosition:{row:a.endLineNumber-1,column:a.endColumn-1}}).map(a=>({name:a.name,text:a.node.text,node:{startIndex:a.node.startIndex,endIndex:a.node.endIndex,startPosition:{lineNumber:a.node.startPosition.row+1,column:a.node.startPosition.column+1},endPosition:{lineNumber:a.node.endPosition.row+1,column:a.node.endPosition.column+1}},encodedLanguageId:this._encodedLanguageId})):[]}captureAtRangeWithInjections(a){let b=this.captureAtRange(a);for(let c=0;c<b.length;c++){let d=b[c],e=d.node.startPosition.lineNumber,f=d.node.endPosition.lineNumber,g=d.node.startPosition.column,h=d.node.endPosition.column,i=e>a.startLineNumber&&e<a.endLineNumber?e:a.startLineNumber,j=f>a.startLineNumber&&f<a.endLineNumber?f:a.endLineNumber,k=e===a.startLineNumber?g<a.startColumn?a.startColumn:g:e<a.startLineNumber?a.startColumn:g,l=f===a.endLineNumber?h>a.endColumn?a.endColumn:h:f>a.endLineNumber?a.endColumn:h,m=new r.Q(i,k,j,l),n=this._getInjectionCaptures(d,m);n&&n.length>0&&(b.splice(c+1,0,...n),c+=n.length)}return b}tokenizeEncoded(a){let b=this._tokenizeEncoded(a);if(!b)return;let c=this._rangeTokensAsUpdates(this._textModel.getOffsetAt({lineNumber:a,column:1}),b.result);b.versionId===this._textModel.getVersionId()&&this._updateTokensInStore(b.versionId,[{newTokens:c,oldRangeLength:this._textModel.getLineLength(a)}],e.Accurate)}_getCaptures(a){return this.captureAtRangeWithInjections(a)}_tokenize(a,b,c){let d=this._getCaptures(a),e=this._tokenizeCapturesWithMetadata(d,b,c);if(e)return{...e,versionId:this._tree.treeLastParsedVersion.get()}}_createTokensFromCaptures(a,b,c){let d=this._tree.tree.get(),e=bd.W.create(),f=c-b,g=this._languageIdCodec.encodeLanguageId(this._tree.languageId),h=by[this._tree.languageId]||"source";if(0===a.length)return d?(e.stop(),{endOffsets:[{endOffset:f,scopes:[],encodedLanguageId:g}],captureTime:e.elapsed()}):void 0;let i=Array(a.length);i.fill({endOffset:0,scopes:[h],encodedLanguageId:g});let j=0,k=()=>{i.push({endOffset:0,scopes:[h],encodedLanguageId:g})},l=(a,b)=>a.name.includes("punctuation")&&a.text?Array.from(a.text.matchAll(bz)).map(a=>b+a.index):void 0,m=(a,b,c,d)=>{if(void 0!==d){let e=i[d].scopes,f=i[d].bracket;if((d>0?i[d-1].endOffset:0)!==b){let g;if(f&&f.length>0){g=[];let a=[];for(let d=0;d<f.length;d++){let e=f[d];e<b?g.push(e):e>c&&a.push(e)}0===g.length&&(g=void 0),f=0===a.length?void 0:a}i.splice(d,0,{endOffset:b,scopes:[...e],bracket:g,encodedLanguageId:a.encodedLanguageId}),d++,k(),j++}i.splice(d,0,{endOffset:c,scopes:[...e,a.name],bracket:l(a,b),encodedLanguageId:a.encodedLanguageId}),i[j].bracket=f}else i[j]={endOffset:c,scopes:[h,a.name],bracket:l(a,b),encodedLanguageId:a.encodedLanguageId};j++};for(let d=0;d<a.length;d++){let e,f=a[d],g=f.node.endIndex<c?f.node.endIndex<b?b:f.node.endIndex:c,n=f.node.startIndex<b?b:f.node.startIndex,o=g-b,p=g-n;e=d>0?i[j-1].endOffset:n-b-1;let q=o-p;if(e>=0&&e<q&&(i[j]={endOffset:q,scopes:[h],encodedLanguageId:this._encodedLanguageId},j++,k()),!(p<0))if(e>=o){let a=j-1,b=i[a].endOffset,c=a>=2?i[a-1].endOffset:0;do{if(c+p===b){if(c===q){i[a].scopes.push(f.name);let b=i[a].bracket;i[a].bracket=b&&b.length>0?b:l(f,q)}}else if(c<=q){m(f,q,o,a);break}c=--a>=1?i[a-1].endOffset:0,b=a>=0?i[a].endOffset:0}while(b>q)}else m(f,q,o)}i[j-1].endOffset<f&&f-i[j-1].endOffset>0&&(k(),i[j]={endOffset:f,scopes:i[j].scopes,encodedLanguageId:this._encodedLanguageId},j++);for(let a=0;a<i.length;a++)if(0===i[a].endOffset&&0!==a){i.splice(a,i.length-a);break}return{endOffsets:i,captureTime:e.elapsed()}}_getInjectionCaptures(a,b){return[]}_tokenizeCapturesWithMetadata(a,b,c){let d=bd.W.create(),e=this._createTokensFromCaptures(a,b,c);if(!e)return;let f=e.endOffsets;for(let a=0;a<f.length;a++){let b=f[a];b.metadata=this._treeSitterThemeService.findMetadata(b.scopes,b.encodedLanguageId,!!b.bracket&&b.bracket.length>0,void 0)}let g=d.elapsed();return{endOffsetsAndMetadata:f,captureTime:e.captureTime,metadataTime:g}}_tokenizeEncoded(a){let b=this._textModel.getOffsetAt({lineNumber:a,column:1}),c=a+1<=this._textModel.getLineCount()?this._textModel.getOffsetAt({lineNumber:a+1,column:1}):this._textModel.getValueLength(),d=c-b,e=this._tokenize(new r.Q(a,1,a,d+1),b,c);if(e)return{result:e.endOffsetsAndMetadata,captureTime:e.captureTime,metadataTime:e.metadataTime,versionId:e.versionId}}_endOffsetTokensToUint32Array(a){let b=new Uint32Array(2*a.length);for(let c=0;c<a.length;c++)b[2*c]=a[c].endOffset,b[2*c+1]=a[c].metadata;return b}};bx=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([function(a,b){bw(a,b,4)}],bx);let by={css:"source.css",typescript:"source.ts",ini:"source.ini",regex:"source.regex"},bz=/[\{\}\[\]\<\>\(\)]/g;var bA=c(8751),bB=function(a,b){return function(c,d){b(c,d,a)}};let bC=class extends a2{constructor(a,b,c,d,e,f){super(b,c),this._languageIdObs=a,this._treeSitterLibraryService=e,this._instantiationService=f,this._backgroundTokenizationState=1,this._onDidChangeBackgroundTokenizationState=this._register(new k.vl),this.onDidChangeBackgroundTokenizationState=this._onDidChangeBackgroundTokenizationState.event;const g=new aY.BK(this._treeSitterLibraryService.getParserClass()),h=(0,aY.un)(this,a=>g.promiseResult?.read(a)?.getDataOrThrow());this._tree=(0,aY.un)(this,a=>{let b=h.read(a);if(!b)return;let c=this._languageIdObs.read(a),d=this._treeSitterLibraryService.getLanguage(c,a);if(!d)return;let e=new b;if(a.store.add((0,l.s)(()=>{e.delete()})),e.setLanguage(d),void 0!==this._treeSitterLibraryService.getInjectionQueries(c,a))return a.store.add(this._instantiationService.createInstance(ba,c,void 0,e,b,this._textModel))}),this._tokenizationImpl=(0,aY.un)(this,a=>{let b=this._tree.read(a);if(!b)return;let c=this._treeSitterLibraryService.getHighlightingQueries(b.languageId,a);if(c)return a.store.add(this._instantiationService.createInstance(bx,b,c,this._languageIdCodec,d))}),this._register((0,aY.fm)(a=>{let b=this._tokenizationImpl.read(a);b&&(a.store.add(b.onDidChangeTokens(a=>{this._onDidChangeTokens.fire(a.changes)})),a.store.add(b.onDidChangeBackgroundTokenization(a=>{this._backgroundTokenizationState=2,this._onDidChangeBackgroundTokenizationState.fire()})))}))}getLineTokens(a){let b=this._tokenizationImpl.get();if(!b){let b=this._textModel.getLineContent(a);return aV.f7.createEmpty(b,this._languageIdCodec)}return b.getLineTokens(a)}todo_resetTokenization(a=!0){a&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]})}handleDidChangeAttached(){}handleDidChangeContent(a){if(a.isFlush)this.todo_resetTokenization(!1);else{let b=this._tokenizationImpl.get();b?.handleContentChanged(a)}let b=this._tree.get();b?.handleContentChange(a)}forceTokenization(a){let b=this._tokenizationImpl.get();b&&(b.hasAccurateTokensForLine(a)||b.tokenizeEncoded(a))}hasAccurateTokensForLine(a){let b=this._tokenizationImpl.get();return!!b&&b.hasAccurateTokensForLine(a)}isCheapToTokenize(a){return!0}getTokenTypeIfInsertingCharacter(a,b,c){return 0}tokenizeLinesAt(a,b){let c=this._tokenizationImpl.get();return c?c.tokenizeLinesAt(a,b):null}get hasTokens(){let a=this._tokenizationImpl.get();return!!a&&a.hasTokens()}};bC=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([bB(4,bA.t),bB(5,bc._Y)],bC);class bD{constructor(a){this._pieces=[],this._isComplete=!1,this._languageIdCodec=a}flush(){this._pieces=[],this._isComplete=!1}isEmpty(){return 0===this._pieces.length}set(a,b,c){if(this._pieces=a||[],this._isComplete=b,c)for(let a of this._pieces)a.reportIfInvalid(c)}setPartial(a,b){let c=a;if(b.length>0){let d=b[0].getRange(),e=b[b.length-1].getRange();if(!d||!e)return a;c=a.plusRange(d).plusRange(e)}let d=null;for(let a=0,b=this._pieces.length;a<b;a++){let e=this._pieces[a];if(e.endLineNumber<c.startLineNumber)continue;if(e.startLineNumber>c.endLineNumber){d=d||{index:a};break}if(e.removeTokens(c),e.isEmpty()){this._pieces.splice(a,1),a--,b--;continue}if(e.endLineNumber<c.startLineNumber)continue;if(e.startLineNumber>c.endLineNumber){d=d||{index:a};continue}let[f,g]=e.split(c);if(f.isEmpty()){d=d||{index:a};continue}g.isEmpty()||(this._pieces.splice(a,1,f,g),a++,b++,d=d||{index:a})}return d=d||{index:this._pieces.length},b.length>0&&(this._pieces=h.nK(this._pieces,d.index,b)),c}isComplete(){return this._isComplete}addSparseTokens(a,b){if(0===b.getTextLength())return b;let c=this._pieces;if(0===c.length)return b;let d=bD._findFirstPieceWithLine(c,a),e=c[d].getLineTokens(a);if(!e)return b;let f=b.getCount(),g=e.getCount(),h=0,i=[],j=0,k=0,l=(a,b)=>{a!==k&&(k=a,i[j++]=a,i[j++]=b)};for(let a=0;a<g;a++){let c=Math.min(e.getStartCharacter(a),b.getTextLength()),d=Math.min(e.getEndCharacter(a),b.getTextLength()),g=e.getMetadata(a),i=((1&g?2048:0)|(2&g?4096:0)|(4&g?8192:0)|(8&g?16384:0)|(16&g?0xff8000:0)|(32&g?0xff000000:0))>>>0,j=~i>>>0;for(;h<f&&b.getEndOffset(h)<=c;)l(b.getEndOffset(h),b.getMetadata(h)),h++;for(h<f&&b.getStartOffset(h)<c&&l(c,b.getMetadata(h));h<f&&b.getEndOffset(h)<d;)l(b.getEndOffset(h),b.getMetadata(h)&j|g&i),h++;if(h<f)l(d,b.getMetadata(h)&j|g&i),b.getEndOffset(h)===d&&h++;else{let a=Math.min(Math.max(0,h-1),f-1);l(d,b.getMetadata(a)&j|g&i)}}for(;h<f;)l(b.getEndOffset(h),b.getMetadata(h)),h++;return new aV.f7(new Uint32Array(i),b.getLineContent(),this._languageIdCodec)}static _findFirstPieceWithLine(a,b){let c=0,d=a.length-1;for(;c<d;){let e=c+Math.floor((d-c)/2);if(a[e].endLineNumber<b)c=e+1;else if(a[e].startLineNumber>b)d=e-1;else{for(;e>c&&a[e-1].startLineNumber<=b&&b<=a[e-1].endLineNumber;)e--;return e}}return c}acceptEdit(a,b,c,d,e){for(let f of this._pieces)f.acceptEdit(a,b,c,d,e)}}var bE=c(98578);let bF=new Uint32Array(0).buffer;class bG{static deleteBeginning(a,b){return null===a||a===bF?a:bG.delete(a,0,b)}static deleteEnding(a,b){if(null===a||a===bF)return a;let c=bH(a),d=c[c.length-2];return bG.delete(a,b,d)}static delete(a,b,c){let d,e;if(null===a||a===bF||b===c)return a;let f=bH(a),g=f.length>>>1;if(0===b&&f[f.length-2]===c)return bF;let h=aV.f7.findIndexInTokensArray(f,b),i=h>0?f[h-1<<1]:0;if(c<f[h<<1]){let d=c-b;for(let a=h;a<g;a++)f[a<<1]-=d;return a}i!==b?(f[h<<1]=b,d=h+1<<1,e=b):(d=h<<1,e=i);let j=c-b;for(let a=h+1;a<g;a++){let b=f[a<<1]-j;b>e&&(f[d++]=b,f[d++]=f[(a<<1)+1],e=b)}if(d===f.length)return a;let k=new Uint32Array(d);return k.set(f.subarray(0,d),0),k.buffer}static append(a,b){if(b===bF)return a;if(a===bF)return b;if(null===a)return a;if(null===b)return null;let c=bH(a),d=bH(b),e=d.length>>>1,f=new Uint32Array(c.length+d.length);f.set(c,0);let g=c.length,h=c[c.length-2];for(let a=0;a<e;a++)f[g++]=d[a<<1]+h,f[g++]=d[(a<<1)+1];return f.buffer}static insert(a,b,c){if(null===a||a===bF)return a;let d=bH(a),e=d.length>>>1,f=aV.f7.findIndexInTokensArray(d,b);f>0&&d[f-1<<1]===b&&f--;for(let a=f;a<e;a++)d[a<<1]+=c;return a}}function bH(a){return a instanceof Uint32Array?a:new Uint32Array(a)}var bI=c(35479);class bJ{constructor(a){this._lineTokens=[],this._len=0,this._languageIdCodec=a}flush(){this._lineTokens=[],this._len=0}get hasTokens(){return this._lineTokens.length>0}getTokens(a,b,c){let d=null;if(b<this._len&&(d=this._lineTokens[b]),null!==d&&d!==bF)return new aV.f7(bH(d),c,this._languageIdCodec);let e=new Uint32Array(2);return e[0]=c.length,e[1]=bK(this._languageIdCodec.encodeLanguageId(a)),new aV.f7(e,c,this._languageIdCodec)}static _massageTokens(a,b,c){let d=c?bH(c):null;if(0===b){let b=!1;if(d&&d.length>1&&(b=bI.x.getLanguageId(d[1])!==a),!b)return bF}if(!d||0===d.length){let c=new Uint32Array(2);return c[0]=b,c[1]=bK(a),c.buffer}return(d[d.length-2]=b,0===d.byteOffset&&d.byteLength===d.buffer.byteLength)?d.buffer:d}_ensureLine(a){for(;a>=this._len;)this._lineTokens[this._len]=null,this._len++}_deleteLines(a,b){0!==b&&(a+b>this._len&&(b=this._len-a),this._lineTokens.splice(a,b),this._len-=b)}_insertLines(a,b){if(0===b)return;let c=[];for(let a=0;a<b;a++)c[a]=null;this._lineTokens=h.nK(this._lineTokens,a,c),this._len+=b}setTokens(a,b,c,d,e){let f=bJ._massageTokens(this._languageIdCodec.encodeLanguageId(a),c,d);this._ensureLine(b);let g=this._lineTokens[b];return this._lineTokens[b]=f,!!e&&!bJ._equals(g,f)}static _equals(a,b){if(!a||!b)return!a&&!b;let c=bH(a),d=bH(b);if(c.length!==d.length)return!1;for(let a=0,b=c.length;a<b;a++)if(c[a]!==d[a])return!1;return!0}acceptEdit(a,b,c){this._acceptDeleteRange(a),this._acceptInsertText(new q.y(a.startLineNumber,a.startColumn),b,c)}_acceptDeleteRange(a){let b=a.startLineNumber-1;if(b>=this._len)return;if(a.startLineNumber===a.endLineNumber){if(a.startColumn===a.endColumn)return;this._lineTokens[b]=bG.delete(this._lineTokens[b],a.startColumn-1,a.endColumn-1);return}this._lineTokens[b]=bG.deleteEnding(this._lineTokens[b],a.startColumn-1);let c=a.endLineNumber-1,d=null;c<this._len&&(d=bG.deleteBeginning(this._lineTokens[c],a.endColumn-1)),this._lineTokens[b]=bG.append(this._lineTokens[b],d),this._deleteLines(a.startLineNumber,a.endLineNumber-a.startLineNumber)}_acceptInsertText(a,b,c){if(0===b&&0===c)return;let d=a.lineNumber-1;if(!(d>=this._len)){if(0===b){this._lineTokens[d]=bG.insert(this._lineTokens[d],a.column-1,c);return}this._lineTokens[d]=bG.deleteEnding(this._lineTokens[d],a.column-1),this._lineTokens[d]=bG.insert(this._lineTokens[d],a.column-1,c),this._insertLines(a.lineNumber,b)}}setMultilineTokens(a,b){if(0===a.length)return{changes:[]};let c=[];for(let d=0,e=a.length;d<e;d++){let e=a[d],f=0,g=0,h=!1;for(let a=e.startLineNumber;a<=e.endLineNumber;a++)h?(this.setTokens(b.getLanguageId(),a-1,b.getLineLength(a),e.getLineTokens(a),!1),g=a):this.setTokens(b.getLanguageId(),a-1,b.getLineLength(a),e.getLineTokens(a),!0)&&(h=!0,f=a,g=a);h&&c.push({fromLineNumber:f,toLineNumber:g})}return{changes:c}}}function bK(a){return(0x2008000|a|1024)>>>0}class bL extends a2{constructor(a,b,c,d){super(a,b),this.getLanguageId=c,this._tokenizer=null,this._backgroundTokenizationState=1,this._onDidChangeBackgroundTokenizationState=this._register(new k.vl),this.onDidChangeBackgroundTokenizationState=this._onDidChangeBackgroundTokenizationState.event,this._defaultBackgroundTokenizer=null,this._backgroundTokenizer=this._register(new l.HE),this._tokens=new bJ(this._languageIdCodec),this._debugBackgroundTokenizer=this._register(new l.HE),this._attachedViewStates=this._register(new l.$w),this._register(bE.dG.onDidChange(a=>{let b=this.getLanguageId();-1!==a.changedLanguages.indexOf(b)&&this.todo_resetTokenization()})),this.todo_resetTokenization(),this._register(d.onDidChangeVisibleRanges(({view:a,state:b})=>{if(b){let c=this._attachedViewStates.get(a);c||(c=new a1(()=>this.refreshRanges(c.lineRanges)),this._attachedViewStates.set(a,c)),c.handleStateChange(b)}else this._attachedViewStates.deleteAndDispose(a)}))}todo_resetTokenization(a=!0){this._tokens.flush(),this._debugBackgroundTokens?.flush(),this._debugBackgroundStates&&(this._debugBackgroundStates=new bm(this._textModel.getLineCount())),a&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]});let[b,c]=(()=>{let a;if(this._textModel.isTooLargeForTokenization())return[null,null];let b=bE.dG.get(this.getLanguageId());if(!b)return[null,null];try{a=b.getInitialState()}catch(a){return(0,j.dz)(a),[null,null]}return[b,a]})();if(b&&c?this._tokenizer=new bk(this._textModel.getLineCount(),b,this._textModel,this._languageIdCodec):this._tokenizer=null,this._backgroundTokenizer.clear(),this._defaultBackgroundTokenizer=null,this._tokenizer){let a={setTokens:a=>{this.setTokens(a)},backgroundTokenizationFinished:()=>{2===this._backgroundTokenizationState||(this._backgroundTokenizationState=2,this._onDidChangeBackgroundTokenizationState.fire())},setEndState:(a,b)=>{if(!this._tokenizer)return;let c=this._tokenizer.store.getFirstInvalidEndStateLineNumber();null!==c&&a>=c&&this._tokenizer?.store.setEndState(a,b)}};b&&b.createBackgroundTokenizer&&!b.backgroundTokenizerShouldOnlyVerifyTokens&&(this._backgroundTokenizer.value=b.createBackgroundTokenizer(this._textModel,a)),this._backgroundTokenizer.value||this._textModel.isTooLargeForTokenization()||(this._backgroundTokenizer.value=this._defaultBackgroundTokenizer=new bq(this._tokenizer,a),this._defaultBackgroundTokenizer.handleChanges()),b?.backgroundTokenizerShouldOnlyVerifyTokens&&b.createBackgroundTokenizer?(this._debugBackgroundTokens=new bJ(this._languageIdCodec),this._debugBackgroundStates=new bm(this._textModel.getLineCount()),this._debugBackgroundTokenizer.clear(),this._debugBackgroundTokenizer.value=b.createBackgroundTokenizer(this._textModel,{setTokens:a=>{this._debugBackgroundTokens?.setMultilineTokens(a,this._textModel)},backgroundTokenizationFinished(){},setEndState:(a,b)=>{this._debugBackgroundStates?.setEndState(a,b)}})):(this._debugBackgroundTokens=void 0,this._debugBackgroundStates=void 0,this._debugBackgroundTokenizer.value=void 0)}this.refreshAllVisibleLineTokens()}handleDidChangeAttached(){this._defaultBackgroundTokenizer?.handleChanges()}handleDidChangeContent(a){if(a.isFlush)this.todo_resetTokenization(!1);else if(!a.isEolChange){for(let b of a.changes){let[a,c]=(0,o.W)(b.text);this._tokens.acceptEdit(b.range,a,c),this._debugBackgroundTokens?.acceptEdit(b.range,a,c)}this._debugBackgroundStates?.acceptChanges(a.changes),this._tokenizer&&this._tokenizer.store.acceptChanges(a.changes),this._defaultBackgroundTokenizer?.handleChanges()}}setTokens(a){let{changes:b}=this._tokens.setMultilineTokens(a,this._textModel);return b.length>0&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:b}),{changes:b}}refreshAllVisibleLineTokens(){let a=aX.M.joinMany([...this._attachedViewStates].map(([a,b])=>b.lineRanges));this.refreshRanges(a)}refreshRanges(a){for(let b of a)this.refreshRange(b.startLineNumber,b.endLineNumberExclusive-1)}refreshRange(a,b){if(!this._tokenizer)return;a=Math.max(1,Math.min(this._textModel.getLineCount(),a)),b=Math.min(this._textModel.getLineCount(),b);let c=new bi,{heuristicTokens:d}=this._tokenizer.tokenizeHeuristically(c,a,b),e=this.setTokens(c.finalize());if(d)for(let a of e.changes)this._backgroundTokenizer.value?.requestTokens(a.fromLineNumber,a.toLineNumber+1);this._defaultBackgroundTokenizer?.checkFinished()}forceTokenization(a){let b=new bi;this._tokenizer?.updateTokensUntilLine(b,a),this.setTokens(b.finalize()),this._defaultBackgroundTokenizer?.checkFinished()}hasAccurateTokensForLine(a){return!this._tokenizer||this._tokenizer.hasAccurateTokensForLine(a)}isCheapToTokenize(a){return!this._tokenizer||this._tokenizer.isCheapToTokenize(a)}getLineTokens(a){let b=this._textModel.getLineContent(a),c=this._tokens.getTokens(this._textModel.getLanguageId(),a-1,b);if(this._debugBackgroundTokens&&this._debugBackgroundStates&&this._tokenizer&&this._debugBackgroundStates.getFirstInvalidEndStateLineNumberOrMax()>a&&this._tokenizer.store.getFirstInvalidEndStateLineNumberOrMax()>a){let d=this._debugBackgroundTokens.getTokens(this._textModel.getLanguageId(),a-1,b);!c.equals(d)&&this._debugBackgroundTokenizer.value?.reportMismatchingTokens&&this._debugBackgroundTokenizer.value.reportMismatchingTokens(a)}return c}getTokenTypeIfInsertingCharacter(a,b,c){if(!this._tokenizer)return 0;let d=this._textModel.validatePosition(new q.y(a,b));return this.forceTokenization(d.lineNumber),this._tokenizer.getTokenTypeIfInsertingCharacter(d,c)}tokenizeLinesAt(a,b){return this._tokenizer?(this.forceTokenization(a),this._tokenizer.tokenizeLinesAt(a,b)):null}get hasTokens(){return this._tokens.hasTokens}}var bM=function(a,b){return function(c,d){b(c,d,a)}};let bN=f=class extends aU._{constructor(a,b,c,d,e,f,g,h){super(),this._textModel=a,this._bracketPairsTextModelPart=b,this._languageId=c,this._attachedViews=d,this._languageService=e,this._languageConfigurationService=f,this._instantiationService=g,this._treeSitterLibraryService=h,this._languageIdObs=(0,aY.FY)(this,this._languageId),this._useTreeSitter=(0,aY.un)(this,a=>{let b=this._languageIdObs.read(a);return this._treeSitterLibraryService.supportsLanguage(b,a)}),this.tokens=(0,aY.un)(this,a=>{let b;return b=this._useTreeSitter.read(a)?a.store.add(this._instantiationService.createInstance(bC,this._languageIdObs,this._languageService.languageIdCodec,this._textModel,this._attachedViews.visibleLineRanges)):a.store.add(new bL(this._languageService.languageIdCodec,this._textModel,()=>this._languageId,this._attachedViews)),a.store.add(b.onDidChangeTokens(a=>{this._emitModelTokensChangedEvent(a)})),a.store.add(b.onDidChangeBackgroundTokenizationState(a=>{this._bracketPairsTextModelPart.handleDidChangeBackgroundTokenizationState()})),b});let i=!1;this.tokens.recomputeInitiallyAndOnChange(this._store,a=>{i&&a.todo_resetTokenization(),i=!0}),this._semanticTokens=new bD(this._languageService.languageIdCodec),this._onDidChangeLanguage=this._register(new k.vl),this.onDidChangeLanguage=this._onDidChangeLanguage.event,this._onDidChangeLanguageConfiguration=this._register(new k.vl),this.onDidChangeLanguageConfiguration=this._onDidChangeLanguageConfiguration.event,this._onDidChangeTokens=this._register(new k.vl),this.onDidChangeTokens=this._onDidChangeTokens.event}handleLanguageConfigurationServiceChange(a){a.affects(this._languageId)&&this._onDidChangeLanguageConfiguration.fire({})}handleDidChangeContent(a){if(a.isFlush)this._semanticTokens.flush();else if(!a.isEolChange)for(let b of a.changes){let[a,c,d]=(0,o.W)(b.text);this._semanticTokens.acceptEdit(b.range,a,c,d,b.text.length>0?b.text.charCodeAt(0):0)}this.tokens.get().handleDidChangeContent(a)}handleDidChangeAttached(){this.tokens.get().handleDidChangeAttached()}getLineTokens(a){this.validateLineNumber(a);let b=this.tokens.get().getLineTokens(a);return this._semanticTokens.addSparseTokens(a,b)}_emitModelTokensChangedEvent(a){this._textModel._isDisposing()||(this._bracketPairsTextModelPart.handleDidChangeTokens(a),this._onDidChangeTokens.fire(a))}validateLineNumber(a){if(a<1||a>this._textModel.getLineCount())throw new j.D7("Illegal value for lineNumber")}get hasTokens(){return this.tokens.get().hasTokens}resetTokenization(){this.tokens.get().todo_resetTokenization()}get backgroundTokenizationState(){return this.tokens.get().backgroundTokenizationState}forceTokenization(a){this.validateLineNumber(a),this.tokens.get().forceTokenization(a)}hasAccurateTokensForLine(a){return this.validateLineNumber(a),this.tokens.get().hasAccurateTokensForLine(a)}isCheapToTokenize(a){return this.validateLineNumber(a),this.tokens.get().isCheapToTokenize(a)}tokenizeIfCheap(a){this.validateLineNumber(a),this.tokens.get().tokenizeIfCheap(a)}getTokenTypeIfInsertingCharacter(a,b,c){return this.tokens.get().getTokenTypeIfInsertingCharacter(a,b,c)}tokenizeLinesAt(a,b){return this.tokens.get().tokenizeLinesAt(a,b)}setSemanticTokens(a,b){this._semanticTokens.set(a,b,this._textModel),this._emitModelTokensChangedEvent({semanticTokensApplied:null!==a,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]})}hasCompleteSemanticTokens(){return this._semanticTokens.isComplete()}hasSomeSemanticTokens(){return!this._semanticTokens.isEmpty()}setPartialSemanticTokens(a,b){if(this.hasCompleteSemanticTokens())return;let c=this._textModel.validateRange(this._semanticTokens.setPartial(a,b));this._emitModelTokensChangedEvent({semanticTokensApplied:!0,ranges:[{fromLineNumber:c.startLineNumber,toLineNumber:c.endLineNumber}]})}getWordAtPosition(a){this.assertNotDisposed();let b=this._textModel.validatePosition(a),c=this._textModel.getLineContent(b.lineNumber),d=this.getLineTokens(b.lineNumber),e=d.findTokenIndexAtOffset(b.column-1),[g,h]=f._findLanguageBoundaries(d,e),i=(0,aT.Th)(b.column,this.getLanguageConfiguration(d.getLanguageId(e)).getWordDefinition(),c.substring(g,h),g);if(i&&i.startColumn<=a.column&&a.column<=i.endColumn)return i;if(e>0&&g===b.column-1){let[g,h]=f._findLanguageBoundaries(d,e-1),i=(0,aT.Th)(b.column,this.getLanguageConfiguration(d.getLanguageId(e-1)).getWordDefinition(),c.substring(g,h),g);if(i&&i.startColumn<=a.column&&a.column<=i.endColumn)return i}return null}getLanguageConfiguration(a){return this._languageConfigurationService.getLanguageConfiguration(a)}static _findLanguageBoundaries(a,b){let c=a.getLanguageId(b),d=0;for(let e=b;e>=0&&a.getLanguageId(e)===c;e--)d=a.getStartOffset(e);let e=a.getLineContent().length;for(let d=b,f=a.getCount();d<f&&a.getLanguageId(d)===c;d++)e=a.getEndOffset(d);return[d,e]}getWordUntilPosition(a){let b=this.getWordAtPosition(a);return b?{word:b.word.substr(0,a.column-b.startColumn),startColumn:b.startColumn,endColumn:a.column}:{word:"",startColumn:a.column,endColumn:a.column}}getLanguageId(){return this._languageId}getLanguageIdAtPosition(a,b){let c=this._textModel.validatePosition(new q.y(a,b)),d=this.getLineTokens(c.lineNumber);return d.getLanguageId(d.findTokenIndexAtOffset(c.column-1))}setLanguageId(a,b="api"){if(this._languageId===a)return;let c={oldLanguage:this._languageId,newLanguage:a,source:b};this._languageId=a,this._languageIdObs.set(a,void 0),this._bracketPairsTextModelPart.handleDidChangeLanguage(c),this._onDidChangeLanguage.fire(c),this._onDidChangeLanguageConfiguration.fire({})}};bN=f=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([bM(4,u.L),bM(5,v.JZ),bM(6,bc._Y),bM(7,bA.t)],bN);var bO=c(64948),bP=c(23572),bQ=c(7240),bR=c(7784),bS=function(a,b){return function(c,d){b(c,d,a)}};function bT(a,b){let c;if("string"==typeof a){let b;(b=new aS).acceptChunk(a),c=b.finish()}else c=w.nk(a)?function(a){let b,c=new aS;for(;"string"==typeof(b=a.read());)c.acceptChunk(b);return c.finish()}(a):a;return c.create(b)}let bU=0;class bV{constructor(a){this._source=a,this._eos=!1}read(){if(this._eos)return null;let a=[],b=0,c=0;for(;;){let d=this._source.read();if(null===d){if(this._eos=!0,0===b)return null;return a.join("")}if(d.length>0&&(a[b++]=d,c+=d.length),c>=65536)return a.join("")}}}let bW=()=>{throw Error("Invalid change accessor")},bX=class extends l.jG{static{g=this}static{this._MODEL_SYNC_LIMIT=0x3200000}static{this.LARGE_FILE_SIZE_THRESHOLD=0x1400000}static{this.LARGE_FILE_LINE_COUNT_THRESHOLD=3e5}static{this.LARGE_FILE_HEAP_OPERATION_THRESHOLD=0x10000000}static{this.DEFAULT_CREATION_OPTIONS={isForSimpleWidget:!1,tabSize:t.R.tabSize,indentSize:t.R.indentSize,insertSpaces:t.R.insertSpaces,detectIndentation:!1,defaultEOL:1,trimAutoWhitespace:t.R.trimAutoWhitespace,largeFileOptimizations:t.R.largeFileOptimizations,bracketPairColorizationOptions:t.R.bracketPairColorizationOptions}}static resolveOptions(a,b){if(b.detectIndentation){let c=W(a,b.tabSize,b.insertSpaces);return new w.X2({tabSize:c.tabSize,indentSize:"tabSize",insertSpaces:c.insertSpaces,trimAutoWhitespace:b.trimAutoWhitespace,defaultEOL:b.defaultEOL,bracketPairColorizationOptions:b.bracketPairColorizationOptions})}return new w.X2(b)}get onDidChangeLanguage(){return this._tokenizationTextModelPart.onDidChangeLanguage}get onDidChangeLanguageConfiguration(){return this._tokenizationTextModelPart.onDidChangeLanguageConfiguration}get onDidChangeTokens(){return this._tokenizationTextModelPart.onDidChangeTokens}get onDidChangeOptions(){return this._onDidChangeOptions.event}get onDidChangeAttached(){return this._onDidChangeAttached.event}get onDidChangeLineHeight(){return this._onDidChangeLineHeight.event}get onDidChangeFont(){return this._onDidChangeFont.event}onDidChangeContent(a){return this._eventEmitter.slowEvent(b=>a(b.contentChangedEvent))}onDidChangeContentOrInjectedText(a){return(0,l.qE)(this._eventEmitter.fastEvent(b=>a(b)),this._onDidChangeInjectedText.event(b=>a(b)))}_isDisposing(){return this.__isDisposing}get tokenization(){return this._tokenizationTextModelPart}get bracketPairs(){return this._bracketPairs}get guides(){return this._guidesTextModelPart}constructor(a,b,c,d=null,e,f,h,i){super(),this._undoRedoService=e,this._languageService=f,this._languageConfigurationService=h,this.instantiationService=i,this._onWillDispose=this._register(new k.vl),this.onWillDispose=this._onWillDispose.event,this._onDidChangeDecorations=this._register(new cb((a,b,c)=>this.handleBeforeFireDecorationsChangedEvent(a,b,c))),this.onDidChangeDecorations=this._onDidChangeDecorations.event,this._onDidChangeOptions=this._register(new k.vl),this._onDidChangeAttached=this._register(new k.vl),this._onDidChangeInjectedText=this._register(new k.vl),this._onDidChangeLineHeight=this._register(new k.vl),this._onDidChangeFont=this._register(new k.vl),this._eventEmitter=this._register(new cc),this._languageSelectionListener=this._register(new l.HE),this._deltaDecorationCallCnt=0,this._attachedViews=new a$,bU++,this.id="$model"+bU,this.isForSimpleWidget=c.isForSimpleWidget,null==d?this._associatedResource=n.r.parse("inmemory://model/"+bU):this._associatedResource=d,this._attachedEditorCount=0;const{textBuffer:j,disposable:o}=bT(a,c.defaultEOL);this._buffer=j,this._bufferDisposable=o;const p=this._buffer.getLineCount(),q=this._buffer.getValueLengthInRange(new r.Q(1,1,p,this._buffer.getLineLength(p)+1),0);c.largeFileOptimizations?(this._isTooLargeForTokenization=q>g.LARGE_FILE_SIZE_THRESHOLD||p>g.LARGE_FILE_LINE_COUNT_THRESHOLD,this._isTooLargeForHeapOperation=q>g.LARGE_FILE_HEAP_OPERATION_THRESHOLD):(this._isTooLargeForTokenization=!1,this._isTooLargeForHeapOperation=!1),this._options=g.resolveOptions(this._buffer,c);const s="string"==typeof b?b:b.languageId;"string"!=typeof b&&(this._languageSelectionListener.value=b.onDidChange(()=>this._setLanguage(b.languageId))),this._bracketPairs=this._register(new L(this,this._languageConfigurationService)),this._guidesTextModelPart=this._register(new U.P(this,this._languageConfigurationService)),this._decorationProvider=this._register(new R(this)),this._tokenizationTextModelPart=this.instantiationService.createInstance(bN,this,this._bracketPairs,s,this._attachedViews),this._isTooLargeForSyncing=q>g._MODEL_SYNC_LIMIT,this._versionId=1,this._alternativeVersionId=1,this._initialUndoRedoSnapshot=null,this._isDisposed=!1,this.__isDisposing=!1,this._instanceId=m.tk(bU),this._lastDecorationId=0,this._decorations=Object.create(null),this._decorationsTree=new b_,this._commandManager=new T.z8(this,this._undoRedoService),this._isUndoing=!1,this._isRedoing=!1,this._trimAutoWhitespaceLines=null,this._register(this._decorationProvider.onDidChange(()=>{this._onDidChangeDecorations.beginDeferredEmit(),this._onDidChangeDecorations.fire(),this._onDidChangeDecorations.endDeferredEmit()})),this._languageService.requestRichLanguageFeatures(s),this._register(this._languageConfigurationService.onDidChange(a=>{this._bracketPairs.handleLanguageConfigurationServiceChange(a),this._tokenizationTextModelPart.handleLanguageConfigurationServiceChange(a)}))}dispose(){this.__isDisposing=!0,this._onWillDispose.fire(),this._tokenizationTextModelPart.dispose(),this._isDisposed=!0,super.dispose(),this._bufferDisposable.dispose(),this.__isDisposing=!1;let a=new aQ([],"","\n",!1,!1,!0,!0);a.dispose(),this._buffer=a,this._bufferDisposable=l.jG.None}_assertNotDisposed(){if(this._isDisposed)throw new j.D7("Model is disposed!")}getTextBuffer(){return this._assertNotDisposed(),this._buffer}_emitContentChangedEvent(a,b){this.__isDisposing||(this._tokenizationTextModelPart.handleDidChangeContent(b),this._bracketPairs.handleDidChangeContent(b),this._eventEmitter.fire(new bO.Ic(a,b)))}setValue(a,b=bR.dg.setValue()){if(this._assertNotDisposed(),null==a)throw(0,j.Qg)();let{textBuffer:c,disposable:d}=bT(a,this._options.defaultEOL);this._setValueFromTextBuffer(c,d,b)}_createContentChanged2(a,b,c,d,e,f,g,h,i,j){return{changes:[{range:a,rangeOffset:b,rangeLength:c,text:e}],eol:this._buffer.getEOL(),isEolChange:i,versionId:this.getVersionId(),isUndoing:f,isRedoing:g,isFlush:h,detailedReasons:[j],detailedReasonsChangeLengths:[1]}}_setValueFromTextBuffer(a,b,c){this._assertNotDisposed();let d=this.getFullModelRange(),e=this.getValueLengthInRange(d),f=this.getLineCount(),g=this.getLineMaxColumn(f);this._buffer=a,this._bufferDisposable.dispose(),this._bufferDisposable=b,this._increaseVersionId(),this._decorations=Object.create(null),this._decorationsTree=new b_,this._commandManager.clear(),this._trimAutoWhitespaceLines=null,this._emitContentChangedEvent(new bO.HP([new bO.Wn],this._versionId,!1,!1),this._createContentChanged2(new r.Q(1,1,f,g),0,e,new q.y(f,g),this.getValue(),!1,!1,!0,!1,c))}setEOL(a){this._assertNotDisposed();let b=1===a?"\r\n":"\n";if(this._buffer.getEOL()===b)return;let c=this.getFullModelRange(),d=this.getValueLengthInRange(c),e=this.getLineCount(),f=this.getLineMaxColumn(e);this._onBeforeEOLChange(),this._buffer.setEOL(b),this._increaseVersionId(),this._onAfterEOLChange(),this._emitContentChangedEvent(new bO.HP([new bO.mS],this._versionId,!1,!1),this._createContentChanged2(new r.Q(1,1,e,f),0,d,new q.y(e,f),this.getValue(),!1,!1,!1,!0,bR.dg.eolChange()))}_onBeforeEOLChange(){this._decorationsTree.ensureAllNodesHaveRanges(this)}_onAfterEOLChange(){let a=this.getVersionId(),b=this._decorationsTree.collectNodesPostOrder();for(let c=0,d=b.length;c<d;c++){let d=b[c],e=d.range,f=d.cachedAbsoluteStart-d.start,g=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),h=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);d.cachedAbsoluteStart=g,d.cachedAbsoluteEnd=h,d.cachedVersionId=a,d.start=g-f,d.end=h-f,ar(d)}}onBeforeAttached(){return this._attachedEditorCount++,1===this._attachedEditorCount&&(this._tokenizationTextModelPart.handleDidChangeAttached(),this._onDidChangeAttached.fire(void 0)),this._attachedViews.attachView()}onBeforeDetached(a){this._attachedEditorCount--,0===this._attachedEditorCount&&(this._tokenizationTextModelPart.handleDidChangeAttached(),this._onDidChangeAttached.fire(void 0)),this._attachedViews.detachView(a)}isAttachedToEditor(){return this._attachedEditorCount>0}getAttachedEditorCount(){return this._attachedEditorCount}isTooLargeForSyncing(){return this._isTooLargeForSyncing}isTooLargeForTokenization(){return this._isTooLargeForTokenization}isTooLargeForHeapOperation(){return this._isTooLargeForHeapOperation}isDisposed(){return this._isDisposed}isDominatedByLongLines(){if(this._assertNotDisposed(),this.isTooLargeForTokenization())return!1;let a=0,b=0,c=this._buffer.getLineCount();for(let d=1;d<=c;d++){let c=this._buffer.getLineLength(d);c>=1e4?b+=c:a+=c}return b>a}get uri(){return this._associatedResource}getOptions(){return this._assertNotDisposed(),this._options}getFormattingOptions(){return{tabSize:this._options.indentSize,insertSpaces:this._options.insertSpaces}}updateOptions(a){this._assertNotDisposed();let b=void 0!==a.tabSize?a.tabSize:this._options.tabSize,c=void 0!==a.indentSize?a.indentSize:this._options.originalIndentSize,d=void 0!==a.insertSpaces?a.insertSpaces:this._options.insertSpaces,e=void 0!==a.trimAutoWhitespace?a.trimAutoWhitespace:this._options.trimAutoWhitespace,f=void 0!==a.bracketColorizationOptions?a.bracketColorizationOptions:this._options.bracketPairColorizationOptions,g=new w.X2({tabSize:b,indentSize:c,insertSpaces:d,defaultEOL:this._options.defaultEOL,trimAutoWhitespace:e,bracketPairColorizationOptions:f});if(this._options.equals(g))return;let h=this._options.createChangeEvent(g);this._options=g,this._bracketPairs.handleDidChangeOptions(h),this._decorationProvider.handleDidChangeOptions(h),this._onDidChangeOptions.fire(h)}detectIndentation(a,b){this._assertNotDisposed();let c=W(this._buffer,b,a);this.updateOptions({insertSpaces:c.insertSpaces,tabSize:c.tabSize,indentSize:c.tabSize})}normalizeIndentation(a){return this._assertNotDisposed(),(0,p.P)(a,this._options.indentSize,this._options.insertSpaces)}getVersionId(){return this._assertNotDisposed(),this._versionId}mightContainRTL(){return this._buffer.mightContainRTL()}mightContainUnusualLineTerminators(){return this._buffer.mightContainUnusualLineTerminators()}removeUnusualLineTerminators(a=null){let b=this.findMatches(m._J.source,!1,!0,!1,null,!1,0x40000000);this._buffer.resetMightContainUnusualLineTerminators(),this.pushEditOperations(a,b.map(a=>({range:a.range,text:null})),()=>null)}mightContainNonBasicASCII(){return this._buffer.mightContainNonBasicASCII()}getAlternativeVersionId(){return this._assertNotDisposed(),this._alternativeVersionId}getInitialUndoRedoSnapshot(){return this._assertNotDisposed(),this._initialUndoRedoSnapshot}getOffsetAt(a){this._assertNotDisposed();let b=this._validatePosition(a.lineNumber,a.column,0);return this._buffer.getOffsetAt(b.lineNumber,b.column)}getPositionAt(a){this._assertNotDisposed();let b=Math.min(this._buffer.getLength(),Math.max(0,a));return this._buffer.getPositionAt(b)}_increaseVersionId(){this._versionId=this._versionId+1,this._alternativeVersionId=this._versionId}_overwriteVersionId(a){this._versionId=a}_overwriteAlternativeVersionId(a){this._alternativeVersionId=a}_overwriteInitialUndoRedoSnapshot(a){this._initialUndoRedoSnapshot=a}getValue(a,b=!1){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new j.D7("Operation would exceed heap memory limits");let c=this.getFullModelRange(),d=this.getValueInRange(c,a);return b?this._buffer.getBOM()+d:d}createSnapshot(a=!1){return new bV(this._buffer.createSnapshot(a))}getValueLength(a,b=!1){this._assertNotDisposed();let c=this.getFullModelRange(),d=this.getValueLengthInRange(c,a);return b?this._buffer.getBOM().length+d:d}getValueInRange(a,b=0){return this._assertNotDisposed(),this._buffer.getValueInRange(this.validateRange(a),b)}getValueLengthInRange(a,b=0){return this._assertNotDisposed(),this._buffer.getValueLengthInRange(this.validateRange(a),b)}getCharacterCountInRange(a,b=0){return this._assertNotDisposed(),this._buffer.getCharacterCountInRange(this.validateRange(a),b)}getLineCount(){return this._assertNotDisposed(),this._buffer.getLineCount()}getLineContent(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new j.D7("Illegal value for lineNumber");return this._buffer.getLineContent(a)}getLineLength(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new j.D7("Illegal value for lineNumber");return this._buffer.getLineLength(a)}getLinesContent(){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new j.D7("Operation would exceed heap memory limits");return this._buffer.getLinesContent()}getEOL(){return this._assertNotDisposed(),this._buffer.getEOL()}getEndOfLineSequence(){return this._assertNotDisposed(),+("\n"!==this._buffer.getEOL())}getLineMinColumn(a){return this._assertNotDisposed(),1}getLineMaxColumn(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new j.D7("Illegal value for lineNumber");return this._buffer.getLineLength(a)+1}getLineFirstNonWhitespaceColumn(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new j.D7("Illegal value for lineNumber");return this._buffer.getLineFirstNonWhitespaceColumn(a)}getLineLastNonWhitespaceColumn(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new j.D7("Illegal value for lineNumber");return this._buffer.getLineLastNonWhitespaceColumn(a)}_validateRangeRelaxedNoAllocations(a){let b=this._buffer.getLineCount(),c=a.startLineNumber,d=a.startColumn,e=Math.floor("number"!=typeof c||isNaN(c)?1:c),f=Math.floor("number"!=typeof d||isNaN(d)?1:d);if(e<1)e=1,f=1;else if(e>b)e=b,f=this.getLineMaxColumn(e);else if(f<=1)f=1;else{let a=this.getLineMaxColumn(e);f>=a&&(f=a)}let g=a.endLineNumber,h=a.endColumn,i=Math.floor("number"!=typeof g||isNaN(g)?1:g),j=Math.floor("number"!=typeof h||isNaN(h)?1:h);if(i<1)i=1,j=1;else if(i>b)i=b,j=this.getLineMaxColumn(i);else if(j<=1)j=1;else{let a=this.getLineMaxColumn(i);j>=a&&(j=a)}return c===e&&d===f&&g===i&&h===j&&a instanceof r.Q&&!(a instanceof s.L)?a:new r.Q(e,f,i,j)}_isValidPosition(a,b,c){if("number"!=typeof a||"number"!=typeof b||isNaN(a)||isNaN(b)||a<1||b<1||(0|a)!==a||(0|b)!==b||a>this._buffer.getLineCount())return!1;if(1===b)return!0;if(b>this.getLineMaxColumn(a))return!1;if(1===c){let c=this._buffer.getLineCharCode(a,b-2);if(m.pc(c))return!1}return!0}_validatePosition(a,b,c){let d=Math.floor("number"!=typeof a||isNaN(a)?1:a),e=Math.floor("number"!=typeof b||isNaN(b)?1:b),f=this._buffer.getLineCount();if(d<1)return new q.y(1,1);if(d>f)return new q.y(f,this.getLineMaxColumn(f));if(e<=1)return new q.y(d,1);let g=this.getLineMaxColumn(d);if(e>=g)return new q.y(d,g);if(1===c){let a=this._buffer.getLineCharCode(d,e-2);if(m.pc(a))return new q.y(d,e-1)}return new q.y(d,e)}validatePosition(a){return(this._assertNotDisposed(),a instanceof q.y&&this._isValidPosition(a.lineNumber,a.column,1))?a:this._validatePosition(a.lineNumber,a.column,1)}isValidRange(a){return this._isValidRange(a,1)}_isValidRange(a,b){let c=a.startLineNumber,d=a.startColumn,e=a.endLineNumber,f=a.endColumn;if(!this._isValidPosition(c,d,0)||!this._isValidPosition(e,f,0))return!1;if(1===b){let a=d>1?this._buffer.getLineCharCode(c,d-2):0,b=f>1&&f<=this._buffer.getLineLength(e)?this._buffer.getLineCharCode(e,f-2):0,g=m.pc(a),h=m.pc(b);return!g&&!h}return!0}validateRange(a){if(this._assertNotDisposed(),a instanceof r.Q&&!(a instanceof s.L)&&this._isValidRange(a,1))return a;let b=this._validatePosition(a.startLineNumber,a.startColumn,0),c=this._validatePosition(a.endLineNumber,a.endColumn,0),d=b.lineNumber,e=b.column,f=c.lineNumber,g=c.column;{let a=e>1?this._buffer.getLineCharCode(d,e-2):0,b=g>1&&g<=this._buffer.getLineLength(f)?this._buffer.getLineCharCode(f,g-2):0,c=m.pc(a),h=m.pc(b);return c||h?d===f&&e===g?new r.Q(d,e-1,f,g-1):c&&h?new r.Q(d,e-1,f,g+1):c?new r.Q(d,e-1,f,g):new r.Q(d,e,f,g+1):new r.Q(d,e,f,g)}}modifyPosition(a,b){this._assertNotDisposed();let c=this.getOffsetAt(a)+b;return this.getPositionAt(Math.min(this._buffer.getLength(),Math.max(0,c)))}getFullModelRange(){this._assertNotDisposed();let a=this.getLineCount();return new r.Q(1,1,a,this.getLineMaxColumn(a))}findMatchesLineByLine(a,b,c,d){return this._buffer.findMatchesLineByLine(a,b,c,d)}findMatches(a,b,c,d,e,f,g=999){let h;this._assertNotDisposed();let i=null;null!==b&&(Array.isArray(b)||(b=[b]),b.every(a=>r.Q.isIRange(a))&&(i=b.map(a=>this.validateRange(a)))),null===i&&(i=[this.getFullModelRange()]),i=i.sort((a,b)=>a.startLineNumber-b.startLineNumber||a.startColumn-b.startColumn);let j=[];if(j.push(i.reduce((a,b)=>r.Q.areIntersecting(a,b)?a.plusRange(b):(j.push(a),b))),!c&&0>a.indexOf("\n")){let b=new aG.lt(a,c,d,e).parseSearchRequest();if(!b)return[];h=a=>this.findMatchesLineByLine(a,b,f,g)}else h=b=>aG.hB.findMatches(this,new aG.lt(a,c,d,e),b,f,g);return j.map(h).reduce((a,b)=>a.concat(b),[])}findNextMatch(a,b,c,d,e,f){this._assertNotDisposed();let g=this.validatePosition(b);if(!c&&0>a.indexOf("\n")){let b=new aG.lt(a,c,d,e).parseSearchRequest();if(!b)return null;let h=this.getLineCount(),i=new r.Q(g.lineNumber,g.column,h,this.getLineMaxColumn(h)),j=this.findMatchesLineByLine(i,b,f,1);return(aG.hB.findNextMatch(this,new aG.lt(a,c,d,e),g,f),j.length>0||(i=new r.Q(1,1,g.lineNumber,this.getLineMaxColumn(g.lineNumber)),(j=this.findMatchesLineByLine(i,b,f,1)).length>0))?j[0]:null}return aG.hB.findNextMatch(this,new aG.lt(a,c,d,e),g,f)}findPreviousMatch(a,b,c,d,e,f){this._assertNotDisposed();let g=this.validatePosition(b);return aG.hB.findPreviousMatch(this,new aG.lt(a,c,d,e),g,f)}pushStackElement(){this._commandManager.pushStackElement()}popStackElement(){this._commandManager.popStackElement()}pushEOL(a){if(+("\n"!==this.getEOL())!==a)try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),null===this._initialUndoRedoSnapshot&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEOL(a)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_validateEditOperation(a){return a instanceof w.Wo?a:new w.Wo(a.identifier||null,this.validateRange(a.range),a.text,a.forceMoveMarkers||!1,a.isAutoWhitespaceEdit||!1,a._isTracked||!1)}_validateEditOperations(a){let b=[];for(let c=0,d=a.length;c<d;c++)b[c]=this._validateEditOperation(a[c]);return b}pushEditOperations(a,b,c,d,e){try{return this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._pushEditOperations(a,this._validateEditOperations(b),c,d,e)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_pushEditOperations(a,b,c,d,e){if(this._options.trimAutoWhitespace&&this._trimAutoWhitespaceLines){let c=b.map(a=>({range:this.validateRange(a.range),text:a.text})),d=!0;if(a)for(let b=0,e=a.length;b<e;b++){let e=a[b],f=!1;for(let a=0,b=c.length;a<b;a++){let b=c[a].range,d=b.startLineNumber>e.endLineNumber,g=e.startLineNumber>b.endLineNumber;if(!d&&!g){f=!0;break}}if(!f){d=!1;break}}if(d)for(let a=0,d=this._trimAutoWhitespaceLines.length;a<d;a++){let d=this._trimAutoWhitespaceLines[a],e=this.getLineMaxColumn(d),f=!0;for(let a=0,b=c.length;a<b;a++){let b=c[a].range,g=c[a].text;if(!(d<b.startLineNumber||d>b.endLineNumber||d===b.startLineNumber&&b.startColumn===e&&b.isEmpty()&&g&&g.length>0&&"\n"===g.charAt(0))&&(!(d===b.startLineNumber&&1===b.startColumn&&b.isEmpty())||!g||!(g.length>0)||"\n"!==g.charAt(g.length-1))){f=!1;break}}if(f){let a=new r.Q(d,1,d,e);b.push(new w.Wo(null,a,null,!1,!1,!1))}}this._trimAutoWhitespaceLines=null}return null===this._initialUndoRedoSnapshot&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEditOperation(a,b,c,d,e)}_applyUndo(a,b,c,d){let e=a.map(a=>{let b=this.getPositionAt(a.newPosition),c=this.getPositionAt(a.newEnd);return{range:new r.Q(b.lineNumber,b.column,c.lineNumber,c.column),text:a.oldText}});this._applyUndoRedoEdits(e,b,!0,!1,c,d)}_applyRedo(a,b,c,d){let e=a.map(a=>{let b=this.getPositionAt(a.oldPosition),c=this.getPositionAt(a.oldEnd);return{range:new r.Q(b.lineNumber,b.column,c.lineNumber,c.column),text:a.newText}});this._applyUndoRedoEdits(e,b,!1,!0,c,d)}_applyUndoRedoEdits(a,b,c,d,e,f){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._isUndoing=c,this._isRedoing=d,this.applyEdits(a,!1),this.setEOL(b),this._overwriteAlternativeVersionId(e)}finally{this._isUndoing=!1,this._isRedoing=!1,this._eventEmitter.endDeferredEmit(f),this._onDidChangeDecorations.endDeferredEmit()}}applyEdits(a,b,c){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit();let d=this._validateEditOperations(a);return this._doApplyEdits(d,b??!1,c??bR.dg.applyEdits())}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_doApplyEdits(a,b,c){let d=this._buffer.getLineCount(),e=this._buffer.applyEdits(a,this._options.trimAutoWhitespace,b),f=this._buffer.getLineCount(),g=e.changes;if(this._trimAutoWhitespaceLines=e.trimAutoWhitespaceLineNumbers,0!==g.length){for(let a=0,b=g.length;a<b;a++){let b=g[a];this._decorationsTree.acceptReplace(b.rangeOffset,b.rangeLength,b.text.length,b.forceMoveMarkers)}let a=[];this._increaseVersionId();let b=d;for(let c=0,d=g.length;c<d;c++){let d=g[c],[e]=(0,o.W)(d.text);this._onDidChangeDecorations.fire();let i=d.range.startLineNumber,j=d.range.endLineNumber,k=j-i,l=Math.min(k,e),m=e-k,n=f-b-m+i,p=n+e,r=this._decorationsTree.getInjectedTextInInterval(this,this.getOffsetAt(new q.y(n,1)),this.getOffsetAt(new q.y(p,this.getLineMaxColumn(p))),0),s=bO.uK.fromDecorations(r),t=new h.j3(s);for(let b=l;b>=0;b--){let c=i+b,d=n+b;t.takeFromEndWhile(a=>a.lineNumber>d);let e=t.takeFromEndWhile(a=>a.lineNumber===d);a.push(new bO.U0(c,this.getLineContent(d),e))}if(l<k){let b=i+l;a.push(new bO.E$(b+1,j))}if(l<e){let c=new h.j3(s),d=i+l,g=e-l,j=f-b-g+d+1,k=[],m=[];for(let a=0;a<g;a++){let b=j+a;m[a]=this.getLineContent(b),c.takeWhile(a=>a.lineNumber<b),k[a]=c.takeWhile(a=>a.lineNumber===b)}a.push(new bO.bg(d+1,i+e,m,k))}b+=m}this._emitContentChangedEvent(new bO.HP(a,this.getVersionId(),this._isUndoing,this._isRedoing),{changes:g,eol:this._buffer.getEOL(),isEolChange:!1,versionId:this.getVersionId(),isUndoing:this._isUndoing,isRedoing:this._isRedoing,isFlush:!1,detailedReasons:[c],detailedReasonsChangeLengths:[g.length]})}return null===e.reverseEdits?void 0:e.reverseEdits}undo(){return this._undoRedoService.undo(this.uri)}canUndo(){return this._undoRedoService.canUndo(this.uri)}redo(){return this._undoRedoService.redo(this.uri)}canRedo(){return this._undoRedoService.canRedo(this.uri)}handleBeforeFireDecorationsChangedEvent(a,b,c){if(a&&a.size>0){let b=Array.from(a).map(a=>new bO.U0(a,this.getLineContent(a),this._getInjectedTextInLine(a)));this._onDidChangeInjectedText.fire(new bO.vn(b))}if(b&&b.size>0){let a=Array.from(b).map(a=>new bO.Nw(a.ownerId,a.decorationId,a.lineNumber,a.lineHeight));this._onDidChangeLineHeight.fire(new bO.zq(a))}if(c&&c.size>0){let a=Array.from(c).map(a=>new bO.vD(a.ownerId,a.lineNumber));this._onDidChangeFont.fire(new bO.dT(a))}}changeDecorations(a,b=0){this._assertNotDisposed();try{return this._onDidChangeDecorations.beginDeferredEmit(),this._changeDecorations(b,a)}finally{this._onDidChangeDecorations.endDeferredEmit()}}_changeDecorations(a,b){let c={addDecoration:(b,c)=>this._deltaDecorationsImpl(a,[],[{range:b,options:c}])[0],changeDecoration:(b,c)=>{this._changeDecorationImpl(a,b,c)},changeDecorationOptions:(b,c)=>{this._changeDecorationOptionsImpl(a,b,b8(c))},removeDecoration:b=>{this._deltaDecorationsImpl(a,[b],[])},deltaDecorations:(b,c)=>0===b.length&&0===c.length?[]:this._deltaDecorationsImpl(a,b,c)},d=null;try{d=b(c)}catch(a){(0,j.dz)(a)}return c.addDecoration=bW,c.changeDecoration=bW,c.changeDecorationOptions=bW,c.removeDecoration=bW,c.deltaDecorations=bW,d}deltaDecorations(a,b,c=0){if(this._assertNotDisposed(),a||(a=[]),0===a.length&&0===b.length)return[];try{return this._deltaDecorationCallCnt++,this._deltaDecorationCallCnt>1&&(console.warn("Invoking deltaDecorations recursively could lead to leaking decorations."),(0,j.dz)(Error("Invoking deltaDecorations recursively could lead to leaking decorations."))),this._onDidChangeDecorations.beginDeferredEmit(),this._deltaDecorationsImpl(c,a,b)}finally{this._onDidChangeDecorations.endDeferredEmit(),this._deltaDecorationCallCnt--}}_getTrackedRange(a){return this.getDecorationRange(a)}_setTrackedRange(a,b,c){let d=a?this._decorations[a]:null;if(!d)return b?this._deltaDecorationsImpl(0,[],[{range:b,options:b7[c]}],!0)[0]:null;if(!b)return this._decorationsTree.delete(d),delete this._decorations[d.id],null;let e=this._validateRangeRelaxedNoAllocations(b),f=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),g=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);return this._decorationsTree.delete(d),d.reset(this.getVersionId(),f,g,e),d.setOptions(b7[c]),this._decorationsTree.insert(d),d.id}removeAllDecorationsWithOwnerId(a){if(this._isDisposed)return;let b=this._decorationsTree.collectNodesFromOwner(a);for(let a=0,c=b.length;a<c;a++){let c=b[a];this._decorationsTree.delete(c),delete this._decorations[c.id]}}getDecorationOptions(a){let b=this._decorations[a];return b?b.options:null}getDecorationRange(a){let b=this._decorations[a];return b?this._decorationsTree.getNodeRange(this,b):null}getLineDecorations(a,b=0,c=!1,d=!1){return a<1||a>this.getLineCount()?[]:this.getLinesDecorations(a,a,b,c,d)}getLinesDecorations(a,b,c=0,d=!1,e=!1,f=!1){let g=this.getLineCount(),i=Math.min(g,Math.max(1,a)),j=Math.min(g,Math.max(1,b)),k=this.getLineMaxColumn(j),l=new r.Q(i,1,j,k),m=this._getDecorationsInRange(l,c,d,e,f);return(0,h.E4)(m,this._decorationProvider.getDecorationsInRange(l,c,d)),m}getDecorationsInRange(a,b=0,c=!1,d=!1,e=!1,f=!1){let g=this.validateRange(a),i=this._getDecorationsInRange(g,b,c,d,f);return(0,h.E4)(i,this._decorationProvider.getDecorationsInRange(g,b,c,e)),i}getOverviewRulerDecorations(a=0,b=!1,c=!1){return this._decorationsTree.getAll(this,a,b,c,!0,!1)}getInjectedTextDecorations(a=0){return this._decorationsTree.getAllInjectedText(this,a)}getCustomLineHeightsDecorations(a=0){return this._decorationsTree.getAllCustomLineHeights(this,a)}_getInjectedTextInLine(a){let b=this._buffer.getOffsetAt(a,1),c=b+this._buffer.getLineLength(a),d=this._decorationsTree.getInjectedTextInInterval(this,b,c,0);return bO.uK.fromDecorations(d).filter(b=>b.lineNumber===a)}getFontDecorationsInRange(a,b=0){let c=this._buffer.getOffsetAt(a.startLineNumber,a.startColumn),d=this._buffer.getOffsetAt(a.endLineNumber,a.endColumn);return this._decorationsTree.getFontDecorationsInInterval(this,c,d,b)}getAllDecorations(a=0,b=!1,c=!1){let d=this._decorationsTree.getAll(this,a,b,c,!1,!1);return d.concat(this._decorationProvider.getAllDecorations(a,b))}getAllMarginDecorations(a=0){return this._decorationsTree.getAll(this,a,!1,!1,!1,!0)}_getDecorationsInRange(a,b,c,d,e){let f=this._buffer.getOffsetAt(a.startLineNumber,a.startColumn),g=this._buffer.getOffsetAt(a.endLineNumber,a.endColumn);return this._decorationsTree.getAllInInterval(this,f,g,b,c,d,e)}getRangeAt(a,b){return this._buffer.getRangeAt(a,b-a)}_changeDecorationImpl(a,b,c){let d=this._decorations[b];if(!d)return;if(d.options.after){let a=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(d.options.before){let a=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}if(null!==d.options.lineHeight){let c=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,b,c.startLineNumber,null)}if(d.options.affectsFont){let c=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByFontChange(a,d.id,c.startLineNumber)}let e=this._validateRangeRelaxedNoAllocations(c),f=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),g=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);this._decorationsTree.delete(d),d.reset(this.getVersionId(),f,g,e),this._decorationsTree.insert(d),this._onDidChangeDecorations.checkAffectedAndFire(d.options),d.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.endLineNumber),d.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.startLineNumber),null!==d.options.lineHeight&&this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,b,e.startLineNumber,d.options.lineHeight),d.options.affectsFont&&this._onDidChangeDecorations.recordLineAffectedByFontChange(a,d.id,e.startLineNumber)}_changeDecorationOptionsImpl(a,b,c){var d;let e=this._decorations[b];if(!e)return;let f=!!e.options.overviewRuler&&!!e.options.overviewRuler.color,g=!!c.overviewRuler&&!!c.overviewRuler.color;if(this._onDidChangeDecorations.checkAffectedAndFire(e.options),this._onDidChangeDecorations.checkAffectedAndFire(c),e.options.after||c.after){let a=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(e.options.before||c.before){let a=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}if(null!==e.options.lineHeight||null!==c.lineHeight){let d=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,b,d.startLineNumber,c.lineHeight)}if(e.options.affectsFont||c.affectsFont){let c=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByFontChange(a,b,c.startLineNumber)}let h=(!!(d=c).after||!!d.before)!==b$(e);f!==g||h?(this._decorationsTree.delete(e),e.setOptions(c),this._decorationsTree.insert(e)):e.setOptions(c)}_deltaDecorationsImpl(a,b,c,d=!1){let e=this.getVersionId(),f=b.length,g=0,h=c.length,i=0;this._onDidChangeDecorations.beginDeferredEmit();try{let j=Array(h);for(;g<f||i<h;){let k=null;if(g<f){let c;do c=b[g++],k=this._decorations[c];while(!k&&g<f);if(k){if(k.options.after){let a=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(k.options.before){let a=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}if(null!==k.options.lineHeight){let b=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,c,b.startLineNumber,null)}if(k.options.affectsFont){let b=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByFontChange(a,c,b.startLineNumber)}this._decorationsTree.delete(k),d||this._onDidChangeDecorations.checkAffectedAndFire(k.options)}}if(i<h){if(!k){let a=++this._lastDecorationId,b=`${this._instanceId};${a}`;k=new ah(b,0,0),this._decorations[b]=k}let b=c[i],f=this._validateRangeRelaxedNoAllocations(b.range),g=b8(b.options),h=this._buffer.getOffsetAt(f.startLineNumber,f.startColumn),l=this._buffer.getOffsetAt(f.endLineNumber,f.endColumn);k.ownerId=a,k.reset(e,h,l,f),k.setOptions(g),k.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(f.endLineNumber),k.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(f.startLineNumber),null!==k.options.lineHeight&&this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,k.id,f.startLineNumber,k.options.lineHeight),k.options.affectsFont&&this._onDidChangeDecorations.recordLineAffectedByFontChange(a,k.id,f.startLineNumber),d||this._onDidChangeDecorations.checkAffectedAndFire(g),this._decorationsTree.insert(k),j[i]=k.id,i++}else k&&delete this._decorations[k.id]}return j}finally{this._onDidChangeDecorations.endDeferredEmit()}}getLanguageId(){return this.tokenization.getLanguageId()}setLanguage(a,b){"string"==typeof a?(this._languageSelectionListener.clear(),this._setLanguage(a,b)):(this._languageSelectionListener.value=a.onDidChange(()=>this._setLanguage(a.languageId,b)),this._setLanguage(a.languageId,b))}_setLanguage(a,b){this.tokenization.setLanguageId(a,b),this._languageService.requestRichLanguageFeatures(a)}getLanguageIdAtPosition(a,b){return this.tokenization.getLanguageIdAtPosition(a,b)}getWordAtPosition(a){return this._tokenizationTextModelPart.getWordAtPosition(a)}getWordUntilPosition(a){return this._tokenizationTextModelPart.getWordUntilPosition(a)}normalizePosition(a,b){return a}getLineIndentColumn(a){return bY(this.getLineContent(a))+1}toString(){return`TextModel(${this.uri.toString()})`}};function bY(a){let b=0;for(let c of a)if(" "===c||" "===c)b++;else break;return b}function bZ(a){return!!a.options.overviewRuler&&!!a.options.overviewRuler.color}function b$(a){return!!a.options.after||!!a.options.before}bX=g=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([bS(4,bP.$D),bS(5,u.L),bS(6,v.JZ),bS(7,bc._Y)],bX);class b_{constructor(){this._decorationsTree0=new aj,this._decorationsTree1=new aj,this._injectedTextDecorationsTree=new aj}ensureAllNodesHaveRanges(a){this.getAll(a,0,!1,!1,!1,!1)}_ensureNodesHaveRanges(a,b){for(let c of b)null===c.range&&(c.range=a.getRangeAt(c.cachedAbsoluteStart,c.cachedAbsoluteEnd));return b}getAllInInterval(a,b,c,d,e,f,g){let h=a.getVersionId(),i=this._intervalSearch(b,c,d,e,f,h,g);return this._ensureNodesHaveRanges(a,i)}_intervalSearch(a,b,c,d,e,f,g){let h=this._decorationsTree0.intervalSearch(a,b,c,d,e,f,g),i=this._decorationsTree1.intervalSearch(a,b,c,d,e,f,g),j=this._injectedTextDecorationsTree.intervalSearch(a,b,c,d,e,f,g);return h.concat(i).concat(j)}getInjectedTextInInterval(a,b,c,d){let e=a.getVersionId(),f=this._injectedTextDecorationsTree.intervalSearch(b,c,d,!1,!1,e,!1);return this._ensureNodesHaveRanges(a,f).filter(a=>a.options.showIfCollapsed||!a.range.isEmpty())}getFontDecorationsInInterval(a,b,c,d){let e=a.getVersionId(),f=this._decorationsTree0.intervalSearch(b,c,d,!1,!1,e,!1);return this._ensureNodesHaveRanges(a,f).filter(a=>a.options.affectsFont)}getAllInjectedText(a,b){let c=a.getVersionId(),d=this._injectedTextDecorationsTree.search(b,!1,!1,c,!1);return this._ensureNodesHaveRanges(a,d).filter(a=>a.options.showIfCollapsed||!a.range.isEmpty())}getAllCustomLineHeights(a,b){let c=a.getVersionId(),d=this._search(b,!1,!1,!1,c,!1);return this._ensureNodesHaveRanges(a,d).filter(a=>"number"==typeof a.options.lineHeight)}getAll(a,b,c,d,e,f){let g=a.getVersionId(),h=this._search(b,c,d,e,g,f);return this._ensureNodesHaveRanges(a,h)}_search(a,b,c,d,e,f){if(d)return this._decorationsTree1.search(a,b,c,e,f);{let d=this._decorationsTree0.search(a,b,c,e,f),g=this._decorationsTree1.search(a,b,c,e,f),h=this._injectedTextDecorationsTree.search(a,b,c,e,f);return d.concat(g).concat(h)}}collectNodesFromOwner(a){let b=this._decorationsTree0.collectNodesFromOwner(a),c=this._decorationsTree1.collectNodesFromOwner(a),d=this._injectedTextDecorationsTree.collectNodesFromOwner(a);return b.concat(c).concat(d)}collectNodesPostOrder(){let a=this._decorationsTree0.collectNodesPostOrder(),b=this._decorationsTree1.collectNodesPostOrder(),c=this._injectedTextDecorationsTree.collectNodesPostOrder();return a.concat(b).concat(c)}insert(a){b$(a)?this._injectedTextDecorationsTree.insert(a):bZ(a)?this._decorationsTree1.insert(a):this._decorationsTree0.insert(a)}delete(a){b$(a)?this._injectedTextDecorationsTree.delete(a):bZ(a)?this._decorationsTree1.delete(a):this._decorationsTree0.delete(a)}getNodeRange(a,b){let c=a.getVersionId();return b.cachedVersionId!==c&&this._resolveNode(b,c),null===b.range&&(b.range=a.getRangeAt(b.cachedAbsoluteStart,b.cachedAbsoluteEnd)),b.range}_resolveNode(a,b){b$(a)?this._injectedTextDecorationsTree.resolveNode(a,b):bZ(a)?this._decorationsTree1.resolveNode(a,b):this._decorationsTree0.resolveNode(a,b)}acceptReplace(a,b,c,d){this._decorationsTree0.acceptReplace(a,b,c,d),this._decorationsTree1.acceptReplace(a,b,c,d),this._injectedTextDecorationsTree.acceptReplace(a,b,c,d)}}function b0(a){return a.replace(/[^a-z0-9\-_]/gi," ")}class b1{constructor(a){this.color=a.color||"",this.darkColor=a.darkColor||""}}class b2 extends b1{constructor(a){super(a),this._resolvedColor=null,this.position="number"==typeof a.position?a.position:w.A5.Center}getColor(a){return this._resolvedColor||("light"!==a.type&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,a):this._resolvedColor=this._resolveColor(this.color,a)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=null}_resolveColor(a,b){if("string"==typeof a)return a;let c=a?b.getColor(a.id):null;return c?c.toString():""}}class b3{constructor(a){this.position=a?.position??w.ZS.Center,this.persistLane=a?.persistLane}}class b4 extends b1{constructor(a){super(a),this.position=a.position,this.sectionHeaderStyle=a.sectionHeaderStyle??null,this.sectionHeaderText=a.sectionHeaderText??null}getColor(a){return this._resolvedColor||("light"!==a.type&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,a):this._resolvedColor=this._resolveColor(this.color,a)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=void 0}_resolveColor(a,b){return"string"==typeof a?i.Q1.fromHex(a):b.getColor(a.id)}}class b5{static from(a){return a instanceof b5?a:new b5(a)}constructor(a){this.content=a.content||"",this.tokens=a.tokens??null,this.inlineClassName=a.inlineClassName||null,this.inlineClassNameAffectsLetterSpacing=a.inlineClassNameAffectsLetterSpacing||!1,this.attachedData=a.attachedData||null,this.cursorStops=a.cursorStops||null}}class b6{static register(a){return new b6(a)}static createDynamic(a){return new b6(a)}constructor(a){this.description=a.description,this.blockClassName=a.blockClassName?b0(a.blockClassName):null,this.blockDoesNotCollapse=a.blockDoesNotCollapse??null,this.blockIsAfterEnd=a.blockIsAfterEnd??null,this.blockPadding=a.blockPadding??null,this.stickiness=a.stickiness||0,this.zIndex=a.zIndex||0,this.className=a.className?b0(a.className):null,this.shouldFillLineOnLineBreak=a.shouldFillLineOnLineBreak??null,this.hoverMessage=a.hoverMessage||null,this.glyphMarginHoverMessage=a.glyphMarginHoverMessage||null,this.lineNumberHoverMessage=a.lineNumberHoverMessage||null,this.isWholeLine=a.isWholeLine||!1,this.lineHeight=a.lineHeight?Math.min(a.lineHeight,300):null,this.fontSize=a.fontSize||null,this.affectsFont=!!a.fontSize||!!a.fontFamily||!!a.fontWeight||!!a.fontStyle,this.showIfCollapsed=a.showIfCollapsed||!1,this.collapseOnReplaceEdit=a.collapseOnReplaceEdit||!1,this.overviewRuler=a.overviewRuler?new b2(a.overviewRuler):null,this.minimap=a.minimap?new b4(a.minimap):null,this.glyphMargin=a.glyphMarginClassName?new b3(a.glyphMargin):null,this.glyphMarginClassName=a.glyphMarginClassName?b0(a.glyphMarginClassName):null,this.linesDecorationsClassName=a.linesDecorationsClassName?b0(a.linesDecorationsClassName):null,this.lineNumberClassName=a.lineNumberClassName?b0(a.lineNumberClassName):null,this.linesDecorationsTooltip=a.linesDecorationsTooltip?m.jy(a.linesDecorationsTooltip):null,this.firstLineDecorationClassName=a.firstLineDecorationClassName?b0(a.firstLineDecorationClassName):null,this.marginClassName=a.marginClassName?b0(a.marginClassName):null,this.inlineClassName=a.inlineClassName?b0(a.inlineClassName):null,this.inlineClassNameAffectsLetterSpacing=a.inlineClassNameAffectsLetterSpacing||!1,this.beforeContentClassName=a.beforeContentClassName?b0(a.beforeContentClassName):null,this.afterContentClassName=a.afterContentClassName?b0(a.afterContentClassName):null,this.after=a.after?b5.from(a.after):null,this.before=a.before?b5.from(a.before):null,this.hideInCommentTokens=a.hideInCommentTokens??!1,this.hideInStringTokens=a.hideInStringTokens??!1,this.textDirection=a.textDirection??null}}b6.EMPTY=b6.register({description:"empty"});let b7=[b6.register({description:"tracked-range-always-grows-when-typing-at-edges",stickiness:0}),b6.register({description:"tracked-range-never-grows-when-typing-at-edges",stickiness:1}),b6.register({description:"tracked-range-grows-only-when-typing-before",stickiness:2}),b6.register({description:"tracked-range-grows-only-when-typing-after",stickiness:3})];function b8(a){return a instanceof b6?a:b6.createDynamic(a)}class b9{static toKey(a){return`${a.ownerId};${a.decorationId};${a.lineNumber}`}constructor(a,b,c,d){this.ownerId=a,this.decorationId=b,this.lineNumber=c,this.lineHeight=d}}class ca{static toKey(a){return`${a.ownerId};${a.decorationId};${a.lineNumber}`}constructor(a,b,c){this.ownerId=a,this.decorationId=b,this.lineNumber=c}}class cb extends l.jG{constructor(a){super(),this.handleBeforeFire=a,this._actual=this._register(new k.vl),this.event=this._actual.event,this._affectedInjectedTextLines=null,this._affectedLineHeights=null,this._affectedFontLines=null,this._deferredCnt=0,this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._affectsLineNumber=!1}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(){this._deferredCnt--,0===this._deferredCnt&&(this._shouldFireDeferred&&this.doFire(),this._affectedInjectedTextLines?.clear(),this._affectedInjectedTextLines=null,this._affectedLineHeights?.clear(),this._affectedLineHeights=null,this._affectedFontLines?.clear(),this._affectedFontLines=null)}recordLineAffectedByInjectedText(a){this._affectedInjectedTextLines||(this._affectedInjectedTextLines=new Set),this._affectedInjectedTextLines.add(a)}recordLineAffectedByLineHeightChange(a,b,c,d){this._affectedLineHeights||(this._affectedLineHeights=new bQ.iD([],b9.toKey)),this._affectedLineHeights.add(new b9(a,b,c,d))}recordLineAffectedByFontChange(a,b,c){this._affectedFontLines||(this._affectedFontLines=new bQ.iD([],ca.toKey)),this._affectedFontLines.add(new ca(a,b,c))}checkAffectedAndFire(a){this._affectsMinimap||=!!a.minimap?.position,this._affectsOverviewRuler||=!!a.overviewRuler?.color,this._affectsGlyphMargin||=!!a.glyphMarginClassName,this._affectsLineNumber||=!!a.lineNumberClassName,this.tryFire()}fire(){this._affectsMinimap=!0,this._affectsOverviewRuler=!0,this._affectsGlyphMargin=!0,this.tryFire()}tryFire(){0===this._deferredCnt?this.doFire():this._shouldFireDeferred=!0}doFire(){this.handleBeforeFire(this._affectedInjectedTextLines,this._affectedLineHeights,this._affectedFontLines);let a={affectsMinimap:this._affectsMinimap,affectsOverviewRuler:this._affectsOverviewRuler,affectsGlyphMargin:this._affectsGlyphMargin,affectsLineNumber:this._affectsLineNumber};this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._actual.fire(a)}}class cc extends l.jG{constructor(){super(),this._fastEmitter=this._register(new k.vl),this.fastEvent=this._fastEmitter.event,this._slowEmitter=this._register(new k.vl),this.slowEvent=this._slowEmitter.event,this._deferredCnt=0,this._deferredEvent=null}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(a=null){if(this._deferredCnt--,0===this._deferredCnt&&null!==this._deferredEvent){this._deferredEvent.rawContentChangedEvent.resultingSelection=a;let b=this._deferredEvent;this._deferredEvent=null,this._fastEmitter.fire(b),this._slowEmitter.fire(b)}}fire(a){this._deferredCnt>0?this._deferredEvent?this._deferredEvent=this._deferredEvent.merge(a):this._deferredEvent=a:(this._fastEmitter.fire(a),this._slowEmitter.fire(a))}}},32532:(a,b,c)=>{"use strict";c.d(b,{iE:()=>e,rW:()=>f});class d{constructor(a,b,c){this._colorZoneBrand=void 0,this.from=0|a,this.to=0|b,this.colorId=0|c}static compare(a,b){return a.colorId===b.colorId?a.from===b.from?a.to-b.to:a.from-b.from:a.colorId-b.colorId}}class e{constructor(a,b,c,d){this._overviewRulerZoneBrand=void 0,this.startLineNumber=a,this.endLineNumber=b,this.heightInLines=c,this.color=d,this._colorZone=null}static compare(a,b){if(a.color===b.color)return a.startLineNumber===b.startLineNumber?a.heightInLines===b.heightInLines?a.endLineNumber-b.endLineNumber:a.heightInLines-b.heightInLines:a.startLineNumber-b.startLineNumber;return a.color<b.color?-1:1}setColorZone(a){this._colorZone=a}getColorZones(){return this._colorZone}}class f{constructor(a){this._getVerticalOffsetForLine=a,this._zones=[],this._colorZonesInvalid=!1,this._lineHeight=0,this._domWidth=0,this._domHeight=0,this._outerHeight=0,this._pixelRatio=1,this._lastAssignedId=0,this._color2Id=Object.create(null),this._id2Color=[]}getId2Color(){return this._id2Color}setZones(a){this._zones=a,this._zones.sort(e.compare)}setLineHeight(a){return this._lineHeight!==a&&(this._lineHeight=a,this._colorZonesInvalid=!0,!0)}setPixelRatio(a){this._pixelRatio=a,this._colorZonesInvalid=!0}getDOMWidth(){return this._domWidth}getCanvasWidth(){return this._domWidth*this._pixelRatio}setDOMWidth(a){return this._domWidth!==a&&(this._domWidth=a,this._colorZonesInvalid=!0,!0)}getDOMHeight(){return this._domHeight}getCanvasHeight(){return this._domHeight*this._pixelRatio}setDOMHeight(a){return this._domHeight!==a&&(this._domHeight=a,this._colorZonesInvalid=!0,!0)}getOuterHeight(){return this._outerHeight}setOuterHeight(a){return this._outerHeight!==a&&(this._outerHeight=a,this._colorZonesInvalid=!0,!0)}resolveColorZones(){let a=this._colorZonesInvalid,b=Math.floor(this._lineHeight),c=Math.floor(this.getCanvasHeight()),e=c/Math.floor(this._outerHeight),f=Math.floor(4*this._pixelRatio/2),g=[];for(let h=0,i=this._zones.length;h<i;h++){let i=this._zones[h];if(!a){let a=i.getColorZones();if(a){g.push(a);continue}}let j=this._getVerticalOffsetForLine(i.startLineNumber),k=0===i.heightInLines?this._getVerticalOffsetForLine(i.endLineNumber)+b:j+i.heightInLines*b,l=Math.floor(e*j),m=Math.floor(e*k),n=Math.floor((l+m)/2),o=m-n;o<f&&(o=f),n-o<0&&(n=o),n+o>c&&(n=c-o);let p=i.color,q=this._color2Id[p];q||(q=++this._lastAssignedId,this._color2Id[p]=q,this._id2Color[q]=p);let r=new d(n-o,n+o,q);i.setColorZone(r),g.push(r)}return this._colorZonesInvalid=!1,g.sort(d.compare),g}}},32682:(a,b,c)=>{"use strict";c.d(b,{x:()=>h});var d=c(63048),e=c(77747);c(21790);var f=c(40201),g=c(87445);class h extends f.jG{constructor(a,b,c){super(),this.options=b,this.styles=c,this.count=0,this.hover=this._register(new f.HE),this.element=(0,d.BC)(a,(0,d.$)(".monaco-count-badge")),this._register((0,f.s)(()=>a.removeChild(this.element))),this.countFormat=this.options.countFormat||"{0}",this.titleFormat=this.options.titleFormat||"",this.setCount(this.options.count||0),this.updateHover()}setCount(a){this.count=a,this.render()}setTitleFormat(a){this.titleFormat=a,this.updateHover(),this.render()}updateHover(){""===this.titleFormat||this.hover.value?""===this.titleFormat&&this.hover.value&&(this.hover.value=void 0):this.hover.value=(0,g.i)().setupDelayedHoverAtMouse(this.element,()=>({content:(0,e.GP)(this.titleFormat,this.count),appearance:{compact:!0}}))}render(){this.element.textContent=(0,e.GP)(this.countFormat,this.count),this.element.style.backgroundColor=this.styles.badgeBackground??"",this.element.style.color=this.styles.badgeForeground??"",this.styles.badgeBorder&&(this.element.style.border=`1px solid ${this.styles.badgeBorder}`)}}},32801:(a,b,c)=>{"use strict";c.d(b,{BG:()=>f,IO:()=>h,Y:()=>g,eh:()=>e,pj:()=>j,qN:()=>i});class d{constructor(a,b){this._restrictedRenderingContextBrand=void 0,this._viewLayout=a,this.viewportData=b,this.scrollWidth=this._viewLayout.getScrollWidth(),this.scrollHeight=this._viewLayout.getScrollHeight(),this.visibleRange=this.viewportData.visibleRange,this.bigNumbersDelta=this.viewportData.bigNumbersDelta;const c=this._viewLayout.getCurrentViewport();this.scrollTop=c.top,this.scrollLeft=c.left,this.viewportWidth=c.width,this.viewportHeight=c.height}getScrolledTopFromAbsoluteTop(a){return a-this.scrollTop}getVerticalOffsetForLineNumber(a,b){return this._viewLayout.getVerticalOffsetForLineNumber(a,b)}getVerticalOffsetAfterLineNumber(a,b){return this._viewLayout.getVerticalOffsetAfterLineNumber(a,b)}getLineHeightForLineNumber(a){return this._viewLayout.getLineHeightForLineNumber(a)}getDecorationsInViewport(){return this.viewportData.getDecorationsInViewport()}}class e extends d{constructor(a,b,c,d){super(a,b),this._renderingContextBrand=void 0,this._viewLines=c,this._viewLinesGpu=d}linesVisibleRangesForRange(a,b){let c=this._viewLines.linesVisibleRangesForRange(a,b);if(!this._viewLinesGpu)return c??null;let d=this._viewLinesGpu.linesVisibleRangesForRange(a,b);return c?d?c.concat(d).sort((a,b)=>a.lineNumber-b.lineNumber):c:d}visibleRangeForPosition(a){return this._viewLines.visibleRangeForPosition(a)??this._viewLinesGpu?.visibleRangeForPosition(a)??null}}class f{constructor(a,b,c,d){this.outsideRenderedLine=a,this.lineNumber=b,this.ranges=c,this.continuesOnNextLine=d}}class g{static from(a){let b=Array(a.length);for(let c=0,d=a.length;c<d;c++){let d=a[c];b[c]=new g(d.left,d.width)}return b}constructor(a,b){this._horizontalRangeBrand=void 0,this.left=Math.round(a),this.width=Math.round(b)}toString(){return`[${this.left},${this.width}]`}}class h{constructor(a,b){this._floatHorizontalRangeBrand=void 0,this.left=a,this.width=b}toString(){return`[${this.left},${this.width}]`}static compare(a,b){return a.left-b.left}}class i{constructor(a,b){this.outsideRenderedLine=a,this.originalLeft=b,this.left=Math.round(this.originalLeft)}}class j{constructor(a,b){this.outsideRenderedLine=a,this.ranges=b}}},33067:(a,b,c)=>{"use strict";c.d(b,{Y:()=>n});var d,e,f=c(77747),g=c(66064),h=c(52212),i=c(32263),j=c(62605),k=c(84834);let l=Object.create(null);function m(a,b){if(b<=0)return"";l[a]||(l[a]=["",a]);let c=l[a];for(let d=c.length;d<=b;d++)c[d]=c[d-1]+a;return c[b]}let n=e=class{static unshiftIndent(a,b,c,d,e){let f=g.A.visibleColumnFromColumn(a,b,c);if(e){let a=m(" ",d);return m(a,g.A.prevIndentTabStop(f,d)/d)}return m(" ",g.A.prevRenderTabStop(f,c)/c)}static shiftIndent(a,b,c,d,e){let f=g.A.visibleColumnFromColumn(a,b,c);if(e){let a=m(" ",d);return m(a,g.A.nextIndentTabStop(f,d)/d)}return m(" ",g.A.nextRenderTabStop(f,c)/c)}constructor(a,b,c){this._languageConfigurationService=c,this._opts=b,this._selection=a,this._selectionId=null,this._useLastEditRangeForCursorEndPosition=!1,this._selectionStartColumnStaysPut=!1}_addEditOperation(a,b,c){this._useLastEditRangeForCursorEndPosition?a.addTrackedEditOperation(b,c):a.addEditOperation(b,c)}getEditOperations(a,b){let c=this._selection.startLineNumber,d=this._selection.endLineNumber;1===this._selection.endColumn&&c!==d&&(d-=1);let{tabSize:i,indentSize:k,insertSpaces:l}=this._opts,n=c===d;if(this._opts.useTabStops){this._selection.isEmpty()&&/^\s*$/.test(a.getLineContent(c))&&(this._useLastEditRangeForCursorEndPosition=!0);let m=0,o=0;for(let p=c;p<=d;p++,m=o){let d;o=0;let q=a.getLineContent(p),r=f.HG(q);if((!this._opts.isUnshift||0!==q.length&&0!==r)&&(n||this._opts.isUnshift||0!==q.length)){if(-1===r&&(r=q.length),p>1&&g.A.visibleColumnFromColumn(q,r+1,i)%k!=0&&a.tokenization.isCheapToTokenize(p-1)){let b=(0,j.h)(this._opts.autoIndent,a,new h.Q(p-1,a.getLineMaxColumn(p-1),p-1,a.getLineMaxColumn(p-1)),this._languageConfigurationService);if(b){if(o=m,b.appendText)for(let a=0,c=b.appendText.length;a<c&&o<k;a++)if(32===b.appendText.charCodeAt(a))o++;else break;b.removeText&&(o=Math.max(0,o-b.removeText));for(let a=0;a<o&&0!==r&&32===q.charCodeAt(r-1);a++)r--}}(!this._opts.isUnshift||0!==r)&&(d=this._opts.isUnshift?e.unshiftIndent(q,r+1,i,k,l):e.shiftIndent(q,r+1,i,k,l),this._addEditOperation(b,new h.Q(p,1,p,r+1),d),p!==c||this._selection.isEmpty()||(this._selectionStartColumnStaysPut=this._selection.startColumn<=r+1))}}}else{!this._opts.isUnshift&&this._selection.isEmpty()&&0===a.getLineLength(c)&&(this._useLastEditRangeForCursorEndPosition=!0);let e=l?m(" ",k):" ";for(let g=c;g<=d;g++){let d=a.getLineContent(g),i=f.HG(d);if((!this._opts.isUnshift||0!==d.length&&0!==i)&&(n||this._opts.isUnshift||0!==d.length)&&(-1===i&&(i=d.length),!this._opts.isUnshift||0!==i))if(this._opts.isUnshift){i=Math.min(i,k);for(let a=0;a<i;a++)if(9===d.charCodeAt(a)){i=a+1;break}this._addEditOperation(b,new h.Q(g,1,g,i+1),"")}else this._addEditOperation(b,new h.Q(g,1,g,1),e),g!==c||this._selection.isEmpty()||(this._selectionStartColumnStaysPut=1===this._selection.startColumn)}}this._selectionId=b.trackSelection(this._selection)}computeCursorState(a,b){if(this._useLastEditRangeForCursorEndPosition){let a=b.getInverseEditOperations()[0];return new i.L(a.range.endLineNumber,a.range.endColumn,a.range.endLineNumber,a.range.endColumn)}let c=b.getTrackedSelection(this._selectionId);if(this._selectionStartColumnStaysPut){let a=this._selection.startColumn;return c.startColumn<=a?c:0===c.getDirection()?new i.L(c.startLineNumber,a,c.endLineNumber,c.endColumn):new i.L(c.endLineNumber,c.endColumn,c.startLineNumber,a)}return c}};n=e=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(d=k.JZ,function(a,b){d(a,b,2)})],n)},33196:()=>{},33340:(a,b,c)=>{"use strict";c.d(b,{f:()=>k});var d=c(28492),e=c(19254),f=c(42724),g=c(53764),h=c(40201),i=c(57832);class j{constructor(){this._coreKeybindings=new i.w,this._extensionKeybindings=[],this._cachedMergedKeybindings=null}static bindToCurrentPlatform(a){if(1===e.OS){if(a&&a.win)return a.win}else if(2===e.OS){if(a&&a.mac)return a.mac}else if(a&&a.linux)return a.linux;return a}registerKeybindingRule(a){let b=j.bindToCurrentPlatform(a),c=new h.Cm;if(b&&b.primary){let f=(0,d.Zv)(b.primary,e.OS);f&&c.add(this._registerDefaultKeybinding(f,a.id,a.args,a.weight,0,a.when))}if(b&&Array.isArray(b.secondary))for(let f=0,g=b.secondary.length;f<g;f++){let g=b.secondary[f],h=(0,d.Zv)(g,e.OS);h&&c.add(this._registerDefaultKeybinding(h,a.id,a.args,a.weight,-f-1,a.when))}return c}registerCommandAndKeybindingRule(a){return(0,h.qE)(this.registerKeybindingRule(a),f.w.registerCommand(a))}_registerDefaultKeybinding(a,b,c,d,e,f){let g=this._coreKeybindings.push({keybinding:a,command:b,commandArgs:c,when:f,weight1:d,weight2:e,extensionId:null,isBuiltinExtension:!1});return this._cachedMergedKeybindings=null,(0,h.s)(()=>{g(),this._cachedMergedKeybindings=null})}getDefaultKeybindings(){return this._cachedMergedKeybindings||(this._cachedMergedKeybindings=Array.from(this._coreKeybindings).concat(this._extensionKeybindings),this._cachedMergedKeybindings.sort(l)),this._cachedMergedKeybindings.slice(0)}}let k=new j;function l(a,b){if(a.weight1!==b.weight1)return a.weight1-b.weight1;if(a.command&&b.command){if(a.command<b.command)return -1;if(a.command>b.command)return 1}return a.weight2-b.weight2}g.O.add("platform.keybindingsRegistry",k)},33897:()=>{},33919:()=>{},34546:(a,b,c)=>{"use strict";c.d(b,{b6:()=>f,of:()=>h});var d=c(35199),e=c(39537);function f(a,b){var c,f;return c=[a],f=b,(0,d.e)()&&(0,e.yQ)("reload",a=>(0,d.O)(({oldExports:b})=>{if([...Object.values(b)].some(a=>c.includes(a)))return b=>(a(void 0),!0)})).read(f),a}let g=new Map;function h(a){if(!(0,d.e)())return(0,e.lk)(a);let b=a.name,c=g.get(b);return c?setTimeout(()=>{c.set(a,void 0)},0):(c=(0,e.FY)(b,a),g.set(b,c)),c}},35199:(a,b,c)=>{"use strict";function d(){return!1}function e(a){return{dispose(){}}}c.d(b,{O:()=>e,e:()=>d})},35223:(a,b,c)=>{"use strict";function d(a,b,c){return Math.min(Math.max(a,b),c)}c.d(b,{Uq:()=>e,mu:()=>f,qE:()=>d});class e{constructor(){this._n=1,this._val=0}update(a){return this._val=this._val+(a-this._val)/this._n,this._n+=1,this._val}get value(){return this._val}}class f{constructor(a){this._n=0,this._val=0,this._values=[],this._index=0,this._sum=0,this._values=Array(a),this._values.fill(0,0,a)}update(a){let b=this._values[this._index];return this._values[this._index]=a,this._index=(this._index+1)%this._values.length,this._sum-=b,this._sum+=a,this._n<this._values.length&&(this._n+=1),this._val=this._sum/this._n,this._val}get value(){return this._val}}},35479:(a,b,c)=>{"use strict";c.d(b,{x:()=>d});class d{static getLanguageId(a){return(255&a)>>>0}static getTokenType(a){return(768&a)>>>8}static containsBalancedBrackets(a){return(1024&a)!=0}static getFontStyle(a){return(30720&a)>>>11}static getForeground(a){return(0xff8000&a)>>>15}static getBackground(a){return(0xff000000&a)>>>24}static getClassNameFromMetadata(a){let b="mtk"+this.getForeground(a),c=this.getFontStyle(a);return 1&c&&(b+=" mtki"),2&c&&(b+=" mtkb"),4&c&&(b+=" mtku"),8&c&&(b+=" mtks"),b}static getInlineStyleFromMetadata(a,b){let c=this.getForeground(a),d=this.getFontStyle(a),e=`color: ${b[c]};`;1&d&&(e+="font-style: italic;"),2&d&&(e+="font-weight: bold;");let f="";return 4&d&&(f+=" underline"),8&d&&(f+=" line-through"),f&&(e+=`text-decoration:${f};`),e}static getPresentationFromMetadata(a){let b=this.getForeground(a),c=this.getFontStyle(a);return{foreground:b,italic:!!(1&c),bold:!!(2&c),underline:!!(4&c),strikethrough:!!(8&c)}}}},36046:(a,b,c)=>{"use strict";c.d(b,{Qi:()=>i,XO:()=>e,bs:()=>j});var d,e,f=c(3457);let g=Object.freeze(function(a,b){let c=setTimeout(a.bind(b),0);return{dispose(){clearTimeout(c)}}});(d=e||(e={})).isCancellationToken=function(a){return a===d.None||a===d.Cancelled||a instanceof h||!!a&&"object"==typeof a&&"boolean"==typeof a.isCancellationRequested&&"function"==typeof a.onCancellationRequested},d.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:f.Jh.None}),d.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:g});class h{constructor(){this._isCancelled=!1,this._emitter=null}cancel(){!this._isCancelled&&(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?g:(this._emitter||(this._emitter=new f.vl),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}}class i{constructor(a){this._token=void 0,this._parentListener=void 0,this._parentListener=a&&a.onCancellationRequested(this.cancel,this)}get token(){return this._token||(this._token=new h),this._token}cancel(){this._token?this._token instanceof h&&this._token.cancel():this._token=e.Cancelled}dispose(a=!1){a&&this.cancel(),this._parentListener?.dispose(),this._token?this._token instanceof h&&this._token.dispose():this._token=e.None}}function j(a){let b=new i;return a.add({dispose(){b.cancel()}}),b.token}},36695:()=>{},36730:()=>{},36794:(a,b,c)=>{"use strict";c.d(b,{N:()=>v});var d,e,f=c(63048),g=c(39331),h=c(32665),i=c(5379),j=c(40201),k=c(39537),l=c(10322),m=c(98896),n=c(76302),o=c(21652),p=c(11035),q=c(95554),r=c(52212),s=c(98578),t=c(96191),u=c(94157);let v=class extends j.jG{static{e=this}static{this._breadcrumbsSourceFactory=(0,k.FY)(e,()=>({dispose(){},getBreadcrumbItems:(a,b)=>[]}))}static setBreadcrumbsSourceFactory(a){this._breadcrumbsSourceFactory.set(a,void 0)}get isUpdatingHiddenAreas(){return this._isUpdatingHiddenAreas}constructor(a,b,c,d){super(),this._editors=a,this._diffModel=b,this._options=c,this._instantiationService=d,this._modifiedOutlineSource=(0,k.a0)(this,a=>{let b=this._editors.modifiedModel.read(a),c=e._breadcrumbsSourceFactory.read(a);return b&&c?c(b,this._instantiationService):void 0}),this._isUpdatingHiddenAreas=!1,this._register(this._editors.original.onDidChangeCursorPosition(a=>{if(1===a.reason)return;let b=this._diffModel.get();(0,k.Rn)(a=>{for(let c of this._editors.original.getSelections()||[])b?.ensureOriginalLineIsVisible(c.getStartPosition().lineNumber,0,a),b?.ensureOriginalLineIsVisible(c.getEndPosition().lineNumber,0,a)})})),this._register(this._editors.modified.onDidChangeCursorPosition(a=>{if(1===a.reason)return;let b=this._diffModel.get();(0,k.Rn)(a=>{for(let c of this._editors.modified.getSelections()||[])b?.ensureModifiedLineIsVisible(c.getStartPosition().lineNumber,0,a),b?.ensureModifiedLineIsVisible(c.getEndPosition().lineNumber,0,a)})}));const f=this._diffModel.map((a,b)=>{let c=a?.unchangedRegions.read(b)??[];return 1===c.length&&1===c[0].modifiedLineNumber&&c[0].lineCount===this._editors.modifiedModel.read(b)?.getLineCount()?[]:c});this.viewZones=(0,k.un)(this,a=>{let b=this._modifiedOutlineSource.read(a);if(!b)return{origViewZones:[],modViewZones:[]};let c=[],d=[],e=this._options.renderSideBySide.read(a),g=this._options.compactMode.read(a),h=f.read(a);for(let f=0;f<h.length;f++){let i=h[f];if(!i.shouldHideControls(a)&&(!g||0!==f&&f!==h.length-1))if(g){{let b=(0,k.un)(this,a=>i.getHiddenOriginalRange(a).startLineNumber-1),d=new u.D1(b,12);c.push(d),a.store.add(new w(this._editors.original,d,i,!e))}{let b=(0,k.un)(this,a=>i.getHiddenModifiedRange(a).startLineNumber-1),c=new u.D1(b,12);d.push(c),a.store.add(new w(this._editors.modified,c,i))}}else{{let d=(0,k.un)(this,a=>i.getHiddenOriginalRange(a).startLineNumber-1),f=new u.D1(d,24);c.push(f),a.store.add(new x(this._editors.original,f,i,i.originalUnchangedRange,!e,b,a=>this._diffModel.get().ensureModifiedLineIsVisible(a,2,void 0),this._options))}{let c=(0,k.un)(this,a=>i.getHiddenModifiedRange(a).startLineNumber-1),e=new u.D1(c,24);d.push(e),a.store.add(new x(this._editors.modified,e,i,i.modifiedUnchangedRange,!1,b,a=>this._diffModel.get().ensureModifiedLineIsVisible(a,2,void 0),this._options))}}}return{origViewZones:c,modViewZones:d}});const g={description:"unchanged lines",className:"diff-unchanged-lines",isWholeLine:!0},j={description:"Fold Unchanged",glyphMarginHoverMessage:new i.Bc(void 0,{isTrusted:!0,supportThemeIcons:!0}).appendMarkdown((0,n.kg)(121,"Fold Unchanged Region")),glyphMarginClassName:"fold-unchanged "+l.L.asClassName(h.W.fold),zIndex:10001};this._register((0,u.pY)(this._editors.original,(0,k.un)(this,a=>{let b=f.read(a),c=b.map(a=>({range:a.originalUnchangedRange.toInclusiveRange(),options:g}));for(let d of b)d.shouldHideControls(a)&&c.push({range:r.Q.fromPositions(new q.y(d.originalLineNumber,1)),options:j});return c}))),this._register((0,u.pY)(this._editors.modified,(0,k.un)(this,a=>{let b=f.read(a),c=b.map(a=>({range:a.modifiedUnchangedRange.toInclusiveRange(),options:g}));for(let d of b)d.shouldHideControls(a)&&c.push({range:p.M.ofLength(d.modifiedLineNumber,1).toInclusiveRange(),options:j});return c}))),this._register((0,k.fm)(a=>{let b=f.read(a);this._isUpdatingHiddenAreas=!0;try{this._editors.original.setHiddenAreas(b.map(b=>b.getHiddenOriginalRange(a).toInclusiveRange()).filter(m.O9)),this._editors.modified.setHiddenAreas(b.map(b=>b.getHiddenModifiedRange(a).toInclusiveRange()).filter(m.O9))}finally{this._isUpdatingHiddenAreas=!1}})),this._register(this._editors.modified.onMouseUp(a=>{if(!a.event.rightButton&&a.target.position&&a.target.element?.className.includes("fold-unchanged")){let b=a.target.position.lineNumber,c=this._diffModel.get();if(!c)return;let d=c.unchangedRegions.get().find(a=>a.modifiedUnchangedRange.contains(b));d&&(d.collapseAll(void 0),a.event.stopPropagation(),a.event.preventDefault())}})),this._register(this._editors.original.onMouseUp(a=>{if(!a.event.rightButton&&a.target.position&&a.target.element?.className.includes("fold-unchanged")){let b=a.target.position.lineNumber,c=this._diffModel.get();if(!c)return;let d=c.unchangedRegions.get().find(a=>a.originalUnchangedRange.contains(b));d&&(d.collapseAll(void 0),a.event.stopPropagation(),a.event.preventDefault())}}))}};v=e=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(d=o._Y,function(a,b){d(a,b,3)})],v);class w extends u.uN{constructor(a,b,c,d=!1){const e=(0,f.h)("div.diff-hidden-lines-widget");super(a,b,e.root),this._unchangedRegion=c,this._hide=d,this._nodes=(0,f.h)("div.diff-hidden-lines-compact",[(0,f.h)("div.line-left",[]),(0,f.h)("div.text@text",[]),(0,f.h)("div.line-right",[])]),e.root.appendChild(this._nodes.root),this._hide&&this._nodes.root.replaceChildren(),this._register((0,k.fm)(a=>{if(!this._hide){let b=this._unchangedRegion.getHiddenModifiedRange(a).length,c=(0,n.kg)(122,"{0} hidden lines",b);this._nodes.text.innerText=c}}))}}class x extends u.uN{constructor(a,b,c,d,e,i,j,l){const m=(0,f.h)("div.diff-hidden-lines-widget");super(a,b,m.root),this._editor=a,this._unchangedRegion=c,this._unchangedRegionRange=d,this._hide=e,this._modifiedOutlineSource=i,this._revealModifiedHiddenLine=j,this._options=l,this._nodes=(0,f.h)("div.diff-hidden-lines",[(0,f.h)("div.top@top",{title:(0,n.kg)(123,"Click or drag to show more above")}),(0,f.h)("div.center@content",{style:{display:"flex"}},[(0,f.h)("div@first",{style:{display:"flex",justifyContent:"center",alignItems:"center",flexShrink:"0"}},[(0,f.$)("a",{title:(0,n.kg)(124,"Show Unchanged Region"),role:"button",onclick:()=>{this._unchangedRegion.showAll(void 0)}},...(0,g.n)("$(unfold)"))]),(0,f.h)("div@others",{style:{display:"flex",justifyContent:"center",alignItems:"center"}})]),(0,f.h)("div.bottom@bottom",{title:(0,n.kg)(125,"Click or drag to show more below"),role:"button"})]),m.root.appendChild(this._nodes.root),this._hide?(0,f.Ln)(this._nodes.first):this._register((0,u.AV)(this._nodes.first,{width:(0,t.U)(this._editor).layoutInfoContentLeft})),this._register((0,k.fm)(a=>{let b=this._unchangedRegion.visibleLineCountTop.read(a)+this._unchangedRegion.visibleLineCountBottom.read(a)===this._unchangedRegion.lineCount;this._nodes.bottom.classList.toggle("canMoveTop",!b),this._nodes.bottom.classList.toggle("canMoveBottom",this._unchangedRegion.visibleLineCountBottom.read(a)>0),this._nodes.top.classList.toggle("canMoveTop",this._unchangedRegion.visibleLineCountTop.read(a)>0),this._nodes.top.classList.toggle("canMoveBottom",!b);let c=this._unchangedRegion.isDragged.read(a),d=this._editor.getDomNode();d&&(d.classList.toggle("draggingUnchangedRegion",!!c),"top"===c?(d.classList.toggle("canMoveTop",this._unchangedRegion.visibleLineCountTop.read(a)>0),d.classList.toggle("canMoveBottom",!b)):"bottom"===c?(d.classList.toggle("canMoveTop",!b),d.classList.toggle("canMoveBottom",this._unchangedRegion.visibleLineCountBottom.read(a)>0)):(d.classList.toggle("canMoveTop",!1),d.classList.toggle("canMoveBottom",!1)))}));const o=this._editor;this._register((0,f.ko)(this._nodes.top,"mousedown",a=>{if(0!==a.button)return;this._nodes.top.classList.toggle("dragging",!0),this._nodes.root.classList.toggle("dragging",!0),a.preventDefault();let b=a.clientY,c=!1,d=this._unchangedRegion.visibleLineCountTop.get();this._unchangedRegion.isDragged.set("top",void 0);let e=(0,f.zk)(this._nodes.top),g=(0,f.ko)(e,"mousemove",a=>{let e=a.clientY-b;c=c||Math.abs(e)>2;let f=Math.max(0,Math.min(d+Math.round(e/o.getOption(75)),this._unchangedRegion.getMaxVisibleLineCountTop()));this._unchangedRegion.visibleLineCountTop.set(f,void 0)}),h=(0,f.ko)(e,"mouseup",a=>{c||this._unchangedRegion.showMoreAbove(this._options.hideUnchangedRegionsRevealLineCount.get(),void 0),this._nodes.top.classList.toggle("dragging",!1),this._nodes.root.classList.toggle("dragging",!1),this._unchangedRegion.isDragged.set(void 0,void 0),g.dispose(),h.dispose()})})),this._register((0,f.ko)(this._nodes.bottom,"mousedown",a=>{if(0!==a.button)return;this._nodes.bottom.classList.toggle("dragging",!0),this._nodes.root.classList.toggle("dragging",!0),a.preventDefault();let b=a.clientY,c=!1,d=this._unchangedRegion.visibleLineCountBottom.get();this._unchangedRegion.isDragged.set("bottom",void 0);let e=(0,f.zk)(this._nodes.bottom),g=(0,f.ko)(e,"mousemove",a=>{let e=a.clientY-b;c=c||Math.abs(e)>2;let f=Math.max(0,Math.min(d-Math.round(e/o.getOption(75)),this._unchangedRegion.getMaxVisibleLineCountBottom())),g=this._unchangedRegionRange.endLineNumberExclusive>o.getModel().getLineCount()?o.getContentHeight():o.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);this._unchangedRegion.visibleLineCountBottom.set(f,void 0);let h=this._unchangedRegionRange.endLineNumberExclusive>o.getModel().getLineCount()?o.getContentHeight():o.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);o.setScrollTop(o.getScrollTop()+(h-g))}),h=(0,f.ko)(e,"mouseup",a=>{if(this._unchangedRegion.isDragged.set(void 0,void 0),!c){let a=o.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);this._unchangedRegion.showMoreBelow(this._options.hideUnchangedRegionsRevealLineCount.get(),void 0);let b=o.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);o.setScrollTop(o.getScrollTop()+(b-a))}this._nodes.bottom.classList.toggle("dragging",!1),this._nodes.root.classList.toggle("dragging",!1),g.dispose(),h.dispose()})})),this._register((0,k.fm)(a=>{let b=[];if(!this._hide){let d=c.getHiddenModifiedRange(a).length,e=(0,n.kg)(126,"{0} hidden lines",d),i=(0,f.$)("span",{title:(0,n.kg)(127,"Double click to unfold")},e);i.addEventListener("dblclick",a=>{0===a.button&&(a.preventDefault(),this._unchangedRegion.showAll(void 0))}),b.push(i);let j=this._unchangedRegion.getHiddenModifiedRange(a),k=this._modifiedOutlineSource.getBreadcrumbItems(j,a);if(k.length>0){b.push((0,f.$)("span",void 0,"\xa0\xa0|\xa0\xa0"));for(let a=0;a<k.length;a++){let c=k[a],d=s.gP.toIcon(c.kind),e=(0,f.h)("div.breadcrumb-item",{style:{display:"flex",alignItems:"center"}},[(0,g.s)(d),"\xa0",c.name,...a===k.length-1?[]:[(0,g.s)(h.W.chevronRight)]]).root;b.push(e),e.onclick=()=>{this._revealModifiedHiddenLine(c.startLineNumber)}}}}(0,f.Ln)(this._nodes.others,...b)}))}}},37186:(a,b,c)=>{"use strict";c.d(b,{AO:()=>z,Dr:()=>A,Hs:()=>E,K4:()=>t,Ls:()=>y,Tl:()=>v,UN:()=>C,YA:()=>B,dU:()=>r,ey:()=>P,h0:()=>D,is:()=>w,kr:()=>x,oi:()=>u,sx:()=>s});var d=c(88586),e=c(77747),f=c(2583),g=c(33067),h=c(25203),i=c(61682),j=c(18635),k=c(52212),l=c(95554),m=c(91337),n=c(84834),o=c(78029),p=c(94684),q=c(62605);class r{static getEdits(a,b,c,d,e){if(!e&&this._isAutoIndentType(a,b,c)){let e=[];for(let f of c){let c=this._findActualIndentationForSelection(a,b,f,d);if(null===c)return;e.push({selection:f,indentation:c})}let f=u.getAutoClosingPairClose(a,b,c,d,!1);return this._getIndentationAndAutoClosingPairEdits(a,b,e,d,f)}}static _isAutoIndentType(a,b,c){if(a.autoIndent<4)return!1;for(let a=0,d=c.length;a<d;a++)if(!b.tokenization.isCheapToTokenize(c[a].getEndPosition().lineNumber))return!1;return!0}static _findActualIndentationForSelection(a,b,c,d){let e=(0,p._t)(a,b,c,d,{shiftIndent:b=>N(a,b),unshiftIndent:b=>O(a,b)},a.languageConfigurationService);if(null===e)return null;let f=(0,n.Cw)(b,c.startLineNumber,c.startColumn);return e===a.normalizeIndentation(f)?null:e}static _getIndentationAndAutoClosingPairEdits(a,b,c,d,e){let f=c.map(({selection:c,indentation:f})=>{if(null!==e)return new G(this._getEditFromIndentationAndSelection(a,b,f,c,d,!1),c,d,e);{let e=this._getEditFromIndentationAndSelection(a,b,f,c,d,!0);return M(e.range,e.text,!1)}});return new i.vY(4,f,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}static _getEditFromIndentationAndSelection(a,b,c,d,e,f=!0){let g=d.startLineNumber,h=b.getLineFirstNonWhitespaceColumn(g),i=a.normalizeIndentation(c);return 0!==h&&(i+=b.getLineContent(g).substring(h-1,d.startColumn-1)),i+=f?e:"",{range:new k.Q(g,1,d.endLineNumber,d.endColumn),text:i}}}class s{static getEdits(a,b,c,d,e,f){if(L(b,c,d,e,f))return this._runAutoClosingOvertype(a,d,f)}static _runAutoClosingOvertype(a,b,c){let d=[];for(let a=0,e=b.length;a<e;a++){let e=b[a].getPosition(),g=new k.Q(e.lineNumber,e.column,e.lineNumber,e.column+1);d[a]=new f.iu(g,c)}return new i.vY(4,d,{shouldPushStackElementBefore:I(a,4),shouldPushStackElementAfter:!1})}}class t{static getEdits(a,b,c,d,e){if(L(a,b,c,d,e)){let a=c.map(a=>new f.iu(new k.Q(a.positionLineNumber,a.positionColumn,a.positionLineNumber,a.positionColumn+1),"",!1));return new i.vY(4,a,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}}class u{static getEdits(a,b,c,d,e,f){if(!f){let f=this.getAutoClosingPairClose(a,b,c,d,e);if(null!==f)return this._runAutoClosingOpenCharType(c,d,e,f)}}static _runAutoClosingOpenCharType(a,b,c,d){let e=[];for(let f=0,g=a.length;f<g;f++){let g=a[f];e[f]=new F(g,b,!c,d)}return new i.vY(4,e,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}static getAutoClosingPairClose(a,b,c,d,e){let f,g;for(let a of c)if(!a.isEmpty())return null;let h=c.map(a=>{let b=a.getPosition();return e?{lineNumber:b.lineNumber,beforeColumn:b.column-d.length,afterColumn:b.column}:{lineNumber:b.lineNumber,beforeColumn:b.column,afterColumn:b.column}}),k=this._findAutoClosingPairOpen(a,b,h.map(a=>new l.y(a.lineNumber,a.beforeColumn)),d);if(!k||((0,i.vG)(d)?(f=a.autoClosingQuotes,g=a.shouldAutoCloseBefore.quote):a.blockCommentStartToken&&k.open.includes(a.blockCommentStartToken)?(f=a.autoClosingComments,g=a.shouldAutoCloseBefore.comment):(f=a.autoClosingBrackets,g=a.shouldAutoCloseBefore.bracket),"never"===f))return null;let m=this._findContainedAutoClosingPair(a,k),n=m?m.close:"",p=!0;for(let c of h){let{lineNumber:e,beforeColumn:h,afterColumn:i}=c,l=b.getLineContent(e),m=l.substring(0,h-1),q=l.substring(i-1);if(q.startsWith(n)||(p=!1),q.length>0){let b=q.charAt(0);if(!this._isBeforeClosingBrace(a,q)&&!g(b))return null}if(1===k.open.length&&("'"===d||'"'===d)&&"always"!==f){let b=(0,j.i)(a.wordSeparators,[]);if(m.length>0){let a=m.charCodeAt(m.length-1);if(0===b.get(a))return null}}if(!b.tokenization.isCheapToTokenize(e))return null;b.tokenization.forceTokenization(e);let r=b.tokenization.getLineTokens(e),s=(0,o.BQ)(r,h-1);if(!k.shouldAutoClose(s,h-s.firstCharOffset))return null;let t=k.findNeutralCharacter();if(t){let a=b.tokenization.getTokenTypeIfInsertingCharacter(e,h,t);if(!k.isOK(a))return null}}return p?k.close.substring(0,k.close.length-n.length):k.close}static _findContainedAutoClosingPair(a,b){if(b.open.length<=1)return null;let c=b.close.charAt(b.close.length-1),d=a.autoClosingPairs.autoClosingPairsCloseByEnd.get(c)||[],e=null;for(let a of d)a.open!==b.open&&b.open.includes(a.open)&&b.close.endsWith(a.close)&&(!e||a.open.length>e.open.length)&&(e=a);return e}static _findAutoClosingPairOpen(a,b,c,d){let e=a.autoClosingPairs.autoClosingPairsOpenByEnd.get(d);if(!e)return null;let f=null;for(let a of e)if(null===f||a.open.length>f.open.length){let e=!0;for(let f of c)if(b.getValueInRange(new k.Q(f.lineNumber,f.column-a.open.length+1,f.lineNumber,f.column))+d!==a.open){e=!1;break}e&&(f=a)}return f}static _isBeforeClosingBrace(a,b){let c=b.charAt(0),d=a.autoClosingPairs.autoClosingPairsOpenByStart.get(c)||[],e=a.autoClosingPairs.autoClosingPairsCloseByStart.get(c)||[],f=d.some(a=>b.startsWith(a.open)),g=e.some(a=>b.startsWith(a.close));return!f&&g}}class v{static getEdits(a,b){if("overtype"!==a.inputMode)return null;let c=b.map(a=>new f.gr(a.insertedTextRange));return new i.vY(4,c,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}class w{static getEdits(a,b,c,d,e){if(!e&&this._isSurroundSelectionType(a,b,c,d))return this._runSurroundSelectionType(a,c,d)}static _runSurroundSelectionType(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=a.surroundingPairs[c];d[e]=new h.i(f,c,g)}return new i.vY(0,d,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}static _isSurroundSelectionType(a,b,c,d){if(!P(a,d)||!a.surroundingPairs.hasOwnProperty(d))return!1;let e=(0,i.vG)(d);for(let a of c){if(a.isEmpty())return!1;let c=!0;for(let d=a.startLineNumber;d<=a.endLineNumber;d++){let e=b.getLineContent(d),f=d===a.startLineNumber?a.startColumn-1:0,g=d===a.endLineNumber?a.endColumn-1:e.length,h=e.substring(f,g);if(/[^ \t]/.test(h)){c=!1;break}}if(c)return!1;if(e&&a.startLineNumber===a.endLineNumber&&a.startColumn+1===a.endColumn){let c=b.getValueInRange(a);if((0,i.vG)(c))return!1}}return!0}}class x{static getEdits(a,b,c,d,e,f){if(!f&&this._isTypeInterceptorElectricChar(b,c,d)){let f=this._typeInterceptorElectricChar(a,b,c,d[0],e);if(f)return f}}static _isTypeInterceptorElectricChar(a,b,c){return!!(1===c.length&&b.tokenization.isCheapToTokenize(c[0].getEndPosition().lineNumber))}static _typeInterceptorElectricChar(a,b,c,g,h){let j;if(!b.electricChars.hasOwnProperty(h)||!g.isEmpty())return null;let l=g.getPosition();c.tokenization.forceTokenization(l.lineNumber);let m=c.tokenization.getLineTokens(l.lineNumber);try{j=b.onElectricCharacter(h,m,l.column)}catch(a){return(0,d.dz)(a),null}if(!j)return null;if(j.matchOpenBracket){let d=(m.getLineContent()+h).lastIndexOf(j.matchOpenBracket)+1,g=c.bracketPairs.findMatchingBracketUp(j.matchOpenBracket,{lineNumber:l.lineNumber,column:d},500);if(g){if(g.startLineNumber===l.lineNumber)return null;let d=c.getLineContent(g.startLineNumber),j=e.UU(d),m=b.normalizeIndentation(j),n=c.getLineContent(l.lineNumber),o=c.getLineFirstNonWhitespaceColumn(l.lineNumber)||l.column,p=m+n.substring(o-1,l.column-1)+h,q=new k.Q(l.lineNumber,1,l.lineNumber,l.column),r=new f.iu(q,p);return new i.vY(H(p,a),[r],{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!0})}}return null}}class y{static getEdits(a,b,c,d,e){let g=[];for(let b=0,h=c.length;b<h;b++){let h="overtype"!==a.inputMode||e?f.iu:f.AS;g[b]=new h(c[b],d)}let h=H(d,b);return new i.vY(h,g,{shouldPushStackElementBefore:I(b,h),shouldPushStackElementAfter:!1})}}class z{static getEdits(a,b,c,d,e){if(!e&&"\n"===d){let d=[];for(let e=0,f=c.length;e<f;e++)d[e]=this._enter(a,b,!1,c[e]);return new i.vY(4,d,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}static _enter(a,b,c,d){if(0===a.autoIndent)return M(d,"\n",c);if(!b.tokenization.isCheapToTokenize(d.getStartPosition().lineNumber)||1===a.autoIndent){let f=b.getLineContent(d.startLineNumber),g=e.UU(f).substring(0,d.startColumn-1);return M(d,"\n"+a.normalizeIndentation(g),c)}let g=(0,q.h)(a.autoIndent,b,d,a.languageConfigurationService);if(g){if(g.indentAction===m.l.None)return M(d,"\n"+a.normalizeIndentation(g.indentation+g.appendText),c);else if(g.indentAction===m.l.Indent)return M(d,"\n"+a.normalizeIndentation(g.indentation+g.appendText),c);else if(g.indentAction===m.l.IndentOutdent){let b=a.normalizeIndentation(g.indentation),e=a.normalizeIndentation(g.indentation+g.appendText),h="\n"+e+"\n"+b;return c?new f.q2(d,h,!0):new f.iP(d,h,-1,e.length-b.length,!0)}else if(g.indentAction===m.l.Outdent){let b=O(a,g.indentation);return M(d,"\n"+a.normalizeIndentation(b+g.appendText),c)}}let h=b.getLineContent(d.startLineNumber),i=e.UU(h).substring(0,d.startColumn-1);if(a.autoIndent>=4){let g=(0,p.MU)(a.autoIndent,b,d,{unshiftIndent:b=>O(a,b),shiftIndent:b=>N(a,b),normalizeIndentation:b=>a.normalizeIndentation(b)},a.languageConfigurationService);if(g){let h=a.visibleColumnFromColumn(b,d.getEndPosition()),i=d.endColumn,j=b.getLineContent(d.endLineNumber),k=e.HG(j);if(d=k>=0?d.setEndPosition(d.endLineNumber,Math.max(d.endColumn,k+1)):d.setEndPosition(d.endLineNumber,b.getLineMaxColumn(d.endLineNumber)),c)return new f.q2(d,"\n"+a.normalizeIndentation(g.afterEnter),!0);{let b=0;return i<=k+1&&(a.insertSpaces||(h=Math.ceil(h/a.indentSize)),b=Math.min(h+1-a.normalizeIndentation(g.afterEnter).length-1,0)),new f.iP(d,"\n"+a.normalizeIndentation(g.afterEnter),0,b,!0)}}}return M(d,"\n"+a.normalizeIndentation(i),c)}static lineInsertBefore(a,b,c){if(null===b||null===c)return[];let d=[];for(let e=0,g=c.length;e<g;e++){let g=c[e].positionLineNumber;if(1===g)d[e]=new f.q2(new k.Q(1,1,1,1),"\n");else{g--;let c=b.getLineMaxColumn(g);d[e]=this._enter(a,b,!1,new k.Q(g,c,g,c))}}return d}static lineInsertAfter(a,b,c){if(null===b||null===c)return[];let d=[];for(let e=0,f=c.length;e<f;e++){let f=c[e].positionLineNumber,g=b.getLineMaxColumn(f);d[e]=this._enter(a,b,!1,new k.Q(f,g,f,g))}return d}static lineBreakInsert(a,b,c){let d=[];for(let e=0,f=c.length;e<f;e++)d[e]=this._enter(a,b,!0,c[e]);return d}}class A{static getEdits(a,b,c,d,e,f){let g=this._distributePasteToCursors(a,c,d,e,f);return g?(c=c.sort(k.Q.compareRangesUsingStarts),this._distributedPaste(a,b,c,g)):this._simplePaste(a,b,c,d,e)}static _distributePasteToCursors(a,b,c,d,f){if(d||1===b.length)return null;if(f&&f.length===b.length)return f;if("spread"===a.multiCursorPaste){10===c.charCodeAt(c.length-1)&&(c=c.substring(0,c.length-1)),13===c.charCodeAt(c.length-1)&&(c=c.substring(0,c.length-1));let a=e.uz(c);if(a.length===b.length)return a}return null}static _distributedPaste(a,b,c,d){let e=[];for(let b=0,g=c.length;b<g;b++){let g=a.overtypeOnPaste&&"overtype"===a.inputMode?f.AS:f.iu;e[b]=new g(c[b],d[b])}return new i.vY(0,e,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}static _simplePaste(a,b,c,d,e){let g=[];for(let b=0,h=c.length;b<h;b++){let h=c[b],i=h.getPosition();if(e&&!h.isEmpty()&&(e=!1),e&&d.indexOf("\n")!==d.length-1&&(e=!1),e){let a=new k.Q(i.lineNumber,1,i.lineNumber,1);g[b]=new f.ui(a,d,h,!0)}else{let c=a.overtypeOnPaste&&"overtype"===a.inputMode?f.AS:f.iu;g[b]=new c(h,d)}}return new i.vY(0,g,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}}class B{static getEdits(a,b,c,d,e,f,g,h){let j=d.map(a=>this._compositionType(c,a,e,f,g,h));return new i.vY(4,j,{shouldPushStackElementBefore:I(a,4),shouldPushStackElementAfter:!1})}static _compositionType(a,b,c,d,e,g){if(!b.isEmpty())return null;let h=b.getPosition(),i=Math.max(1,h.column-d),j=Math.min(a.getLineMaxColumn(h.lineNumber),h.column+e),l=new k.Q(h.lineNumber,i,h.lineNumber,j);return new f.iP(l,c,0,g)}}class C{static getEdits(a,b,c){let d=[];for(let a=0,e=b.length;a<e;a++)d[a]=new f.iu(b[a],c);let e=H(c,a);return new i.vY(e,d,{shouldPushStackElementBefore:I(a,e),shouldPushStackElementAfter:!1})}}class D{static getCommands(a,b,c){let d=[];for(let e=0,h=c.length;e<h;e++){let h=c[e];if(h.isEmpty()){let c=b.getLineContent(h.startLineNumber);if(/^\s*$/.test(c)&&b.tokenization.isCheapToTokenize(h.startLineNumber)){let g=this._goodIndentForLine(a,b,h.startLineNumber);g=g||" ";let i=a.normalizeIndentation(g);if(!c.startsWith(i)){d[e]=new f.iu(new k.Q(h.startLineNumber,1,h.startLineNumber,c.length+1),i,!0);continue}}d[e]=this._replaceJumpToNextIndent(a,b,h,!0)}else{if(h.startLineNumber===h.endLineNumber){let c=b.getLineMaxColumn(h.startLineNumber);if(1!==h.startColumn||h.endColumn!==c){d[e]=this._replaceJumpToNextIndent(a,b,h,!1);continue}}d[e]=new g.Y(h,{isUnshift:!1,tabSize:a.tabSize,indentSize:a.indentSize,insertSpaces:a.insertSpaces,useTabStops:a.useTabStops,autoIndent:a.autoIndent},a.languageConfigurationService)}}return d}static _goodIndentForLine(a,b,c){let d=null,f="",g=(0,p.vn)(a.autoIndent,b,c,!1,a.languageConfigurationService);if(g)d=g.action,f=g.indentation;else if(c>1){let d;for(d=c-1;d>=1;d--){let a=b.getLineContent(d);if(e.lT(a)>=0)break}if(d<1)return null;let g=b.getLineMaxColumn(d),h=(0,q.h)(a.autoIndent,b,new k.Q(d,g,d,g),a.languageConfigurationService);h&&(f=h.indentation+h.appendText)}return(d&&(d===m.l.Indent&&(f=N(a,f)),d===m.l.Outdent&&(f=O(a,f)),f=a.normalizeIndentation(f)),f)?f:null}static _replaceJumpToNextIndent(a,b,c,d){let e="",g=c.getStartPosition();if(a.insertSpaces){let c=a.visibleColumnFromColumn(b,g),d=a.indentSize,f=d-c%d;for(let a=0;a<f;a++)e+=" "}else e=" ";return new f.iu(c,e,d)}}class E extends f.iP{constructor(a,b,c,d,e,f){super(a,b,c,d),this._openCharacter=e,this._closeCharacter=f,this.closeCharacterRange=null,this.enclosingRange=null}_computeCursorStateWithRange(a,b,c){return this.closeCharacterRange=new k.Q(b.startLineNumber,b.endColumn-this._closeCharacter.length,b.endLineNumber,b.endColumn),this.enclosingRange=new k.Q(b.startLineNumber,b.endColumn-this._openCharacter.length-this._closeCharacter.length,b.endLineNumber,b.endColumn),super.computeCursorState(a,c)}}class F extends E{constructor(a,b,c,d){super(a,(c?b:"")+d,0,-d.length,b,d)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return this._computeCursorStateWithRange(a,c,b)}}class G extends E{constructor(a,b,c,d){const e=c+d;super(b,e,0,c.length,c,d),this._autoIndentationEdit=a,this._autoClosingEdit={range:b,text:e}}getEditOperations(a,b){b.addTrackedEditOperation(this._autoIndentationEdit.range,this._autoIndentationEdit.text),b.addTrackedEditOperation(this._autoClosingEdit.range,this._autoClosingEdit.text)}computeCursorState(a,b){let c=b.getInverseEditOperations();if(2!==c.length)throw Error("There should be two inverse edit operations!");let d=c[0].range,e=c[1].range,f=d.plusRange(e);return this._computeCursorStateWithRange(a,f,b)}}function H(a,b){return" "===a?5===b||6===b?6:5:4}function I(a,b){return!(!K(a)||K(b))||5!==a&&J(a)!==J(b)}function J(a){return 6===a||5===a?"space":a}function K(a){return 4===a||5===a||6===a}function L(a,b,c,d,e){if("never"===a.autoClosingOvertype||!a.autoClosingPairs.autoClosingPairsCloseSingleChar.has(e))return!1;for(let f=0,g=c.length;f<g;f++){let g=c[f];if(!g.isEmpty())return!1;let h=g.getPosition(),j=b.getLineContent(h.lineNumber);if(j.charAt(h.column-1)!==e)return!1;let k=(0,i.vG)(e);if(92===(h.column>2?j.charCodeAt(h.column-2):0)&&k)return!1;if("auto"===a.autoClosingOvertype){let a=!1;for(let b=0,c=d.length;b<c;b++){let c=d[b];if(h.lineNumber===c.startLineNumber&&h.column===c.startColumn){a=!0;break}}if(!a)return!1}}return!0}function M(a,b,c){return c?new f.q2(a,b,!0):new f.iu(a,b,!0)}function N(a,b,c){return c=c||1,g.Y.shiftIndent(b,b.length+c,a.tabSize,a.indentSize,a.insertSpaces)}function O(a,b,c){return c=c||1,g.Y.unshiftIndent(b,b.length+c,a.tabSize,a.indentSize,a.insertSpaces)}function P(a,b){return(0,i.vG)(b)?"quotes"===a.autoSurround||"languageDefined"===a.autoSurround:"brackets"===a.autoSurround||"languageDefined"===a.autoSurround}},37291:(a,b,c)=>{"use strict";let d,e;c.d(b,{Ez:()=>r,SJ:()=>i,fV:()=>p,ny:()=>h,v$:()=>o,zl:()=>t});var f,g,h,i,j=c(88586),k=c(19254),l=c(77747),m=c(99951),n=c(45006);function o(a,b){return m.r.isUri(a)?(0,l.Q_)(a.scheme,b):(0,l.ns)(a,b+":")}function p(a,...b){return b.some(b=>o(a,b))}(f=h||(h={})).inMemory="inmemory",f.vscode="vscode",f.internal="private",f.walkThrough="walkThrough",f.walkThroughSnippet="walkThroughSnippet",f.http="http",f.https="https",f.file="file",f.mailto="mailto",f.untitled="untitled",f.data="data",f.command="command",f.vscodeRemote="vscode-remote",f.vscodeRemoteResource="vscode-remote-resource",f.vscodeManagedRemoteResource="vscode-managed-remote-resource",f.vscodeUserData="vscode-userdata",f.vscodeCustomEditor="vscode-custom-editor",f.vscodeNotebookCell="vscode-notebook-cell",f.vscodeNotebookCellMetadata="vscode-notebook-cell-metadata",f.vscodeNotebookCellMetadataDiff="vscode-notebook-cell-metadata-diff",f.vscodeNotebookCellOutput="vscode-notebook-cell-output",f.vscodeNotebookCellOutputDiff="vscode-notebook-cell-output-diff",f.vscodeNotebookMetadata="vscode-notebook-metadata",f.vscodeInteractiveInput="vscode-interactive-input",f.vscodeSettings="vscode-settings",f.vscodeWorkspaceTrust="vscode-workspace-trust",f.vscodeTerminal="vscode-terminal",f.vscodeChatCodeBlock="vscode-chat-code-block",f.vscodeChatCodeCompareBlock="vscode-chat-code-compare-block",f.vscodeChatEditor="vscode-chat-editor",f.vscodeChatInput="chatSessionInput",f.vscodeChatSession="vscode-chat-session",f.webviewPanel="webview-panel",f.vscodeWebview="vscode-webview",f.extension="extension",f.vscodeFileResource="vscode-file",f.tmp="tmp",f.vsls="vsls",f.vscodeSourceControl="vscode-scm",f.commentsInput="comment",f.codeSetting="code-setting",f.outputChannel="output",f.accessibleView="accessible-view",f.chatEditingSnapshotScheme="chat-editing-snapshot-text-model",f.chatEditingModel="chat-editing-text-model";class q{constructor(){this._hosts=Object.create(null),this._ports=Object.create(null),this._connectionTokens=Object.create(null),this._preferredWebSchema="http",this._delegate=null,this._serverRootPath="/"}setPreferredWebSchema(a){this._preferredWebSchema=a}get _remoteResourcesPath(){return n.SA.join(this._serverRootPath,h.vscodeRemoteResource)}rewrite(a){if(this._delegate)try{return this._delegate(a)}catch(b){return j.dz(b),a}let b=a.authority,c=this._hosts[b];c&&-1!==c.indexOf(":")&&-1===c.indexOf("[")&&(c=`[${c}]`);let d=this._ports[b],e=this._connectionTokens[b],f=`path=${encodeURIComponent(a.path)}`;return"string"==typeof e&&(f+=`&tkn=${encodeURIComponent(e)}`),m.r.from({scheme:k.HZ?this._preferredWebSchema:h.vscodeRemoteResource,authority:`${c}:${d}`,path:this._remoteResourcesPath,query:f})}}let r=new q;class s{static{this.FALLBACK_AUTHORITY="vscode-app"}uriToBrowserUri(a){return a.scheme===h.vscodeRemote?r.rewrite(a):a.scheme===h.file&&(k.ib||k.lg===`${h.vscodeFileResource}://${s.FALLBACK_AUTHORITY}`)?a.with({scheme:h.vscodeFileResource,authority:a.authority||s.FALLBACK_AUTHORITY,query:null,fragment:null}):a}}let t=new s;Object.freeze({"Cache-Control":"no-cache, no-store"}),Object.freeze({"Document-Policy":"include-js-call-stacks-in-crash-reports"}),(g=i||(i={})).CoopAndCoep=Object.freeze((d=new Map([["1",{"Cross-Origin-Opener-Policy":"same-origin"}],["2",{"Cross-Origin-Embedder-Policy":"require-corp"}],["3",{"Cross-Origin-Opener-Policy":"same-origin","Cross-Origin-Embedder-Policy":"require-corp"}]])).get("3")),e="vscode-coi",g.getHeadersFromQuery=function(a){let b;"string"==typeof a?b=new URL(a).searchParams:a instanceof URL?b=a.searchParams:m.r.isUri(a)&&(b=new URL(a.toString(!0)).searchParams);let c=b?.get(e);if(c)return d.get(c)},g.addSearchParam=function(a,b,c){if(!globalThis.crossOriginIsolated)return;let d=b&&c?"3":c?"2":"1";a instanceof URLSearchParams?a.set(e,d):a[e]=d}},37417:(a,b,c)=>{"use strict";c.d(b,{e2:()=>i,sN:()=>g,tW:()=>f,v7:()=>l});var d=c(91511),e=c(77747);function f(a){return g(a,0)}function g(a,b){switch(typeof a){case"object":var c,d,e,f;if(null===a)return h(349,b);if(Array.isArray(a)){return c=a,d=h(104579,d=b),c.reduce((a,b)=>g(b,a),d)}return e=a,f=h(181387,f=b),Object.keys(e).sort().reduce((a,b)=>(a=i(b,a),g(e[b],a)),f);case"string":return i(a,b);case"boolean":return h(a?433:863,b);case"number":return h(a,b);case"undefined":return h(937,b);default:return h(617,b)}}function h(a,b){return(b<<5)-b+a|0}function i(a,b){b=h(149417,b);for(let c=0,d=a.length;c<d;c++)b=h(a.charCodeAt(c),b);return b}function j(a,b,c=32){let d=c-b;return(a<<b|(~((1<<d)-1)&a)>>>d)>>>0}function k(a,b=32){return a instanceof ArrayBuffer?(0,d.mU)(d.MB.wrap(new Uint8Array(a))):(a>>>0).toString(16).padStart(b/4,"0")}class l{static{this._bigBlock32=new DataView(new ArrayBuffer(320))}constructor(){this._h0=0x67452301,this._h1=0xefcdab89,this._h2=0x98badcfe,this._h3=0x10325476,this._h4=0xc3d2e1f0,this._buff=new Uint8Array(67),this._buffDV=new DataView(this._buff.buffer),this._buffLen=0,this._totalLen=0,this._leftoverHighSurrogate=0,this._finished=!1}update(a){let b,c,d=a.length;if(0===d)return;let f=this._buff,g=this._buffLen,h=this._leftoverHighSurrogate;for(0!==h?(b=h,c=-1,h=0):(b=a.charCodeAt(0),c=0);;){let i=b;if(e.pc(b))if(c+1<d){let d=a.charCodeAt(c+1);e.LJ(d)?(c++,i=e.z_(b,d)):i=65533}else{h=b;break}else e.LJ(b)&&(i=65533);if(g=this._push(f,g,i),++c<d)b=a.charCodeAt(c);else break}this._buffLen=g,this._leftoverHighSurrogate=h}_push(a,b,c){return c<128?a[b++]=c:(c<2048?a[b++]=192|(1984&c)>>>6:(c<65536?a[b++]=224|(61440&c)>>>12:(a[b++]=240|(1835008&c)>>>18,a[b++]=128|(258048&c)>>>12),a[b++]=128|(4032&c)>>>6),a[b++]=128|(63&c)>>>0),b>=64&&(this._step(),b-=64,this._totalLen+=64,a[0]=a[64],a[1]=a[65],a[2]=a[66]),b}digest(){return this._finished||(this._finished=!0,this._leftoverHighSurrogate&&(this._leftoverHighSurrogate=0,this._buffLen=this._push(this._buff,this._buffLen,65533)),this._totalLen+=this._buffLen,this._wrapUp()),k(this._h0)+k(this._h1)+k(this._h2)+k(this._h3)+k(this._h4)}_wrapUp(){this._buff[this._buffLen++]=128,this._buff.subarray(this._buffLen).fill(0),this._buffLen>56&&(this._step(),this._buff.fill(0));let a=8*this._totalLen;this._buffDV.setUint32(56,Math.floor(a/0x100000000),!1),this._buffDV.setUint32(60,a%0x100000000,!1),this._step()}_step(){let a,b,c,d=l._bigBlock32,e=this._buffDV;for(let a=0;a<64;a+=4)d.setUint32(a,e.getUint32(a,!1),!1);for(let a=64;a<320;a+=4)d.setUint32(a,j(d.getUint32(a-12,!1)^d.getUint32(a-32,!1)^d.getUint32(a-56,!1)^d.getUint32(a-64,!1),1),!1);let f=this._h0,g=this._h1,h=this._h2,i=this._h3,k=this._h4;for(let e=0;e<80;e++)e<20?(a=g&h|~g&i,b=0x5a827999):e<40?(a=g^h^i,b=0x6ed9eba1):e<60?(a=g&h|g&i|h&i,b=0x8f1bbcdc):(a=g^h^i,b=0xca62c1d6),c=j(f,5)+a+k+b+d.getUint32(4*e,!1)|0,k=i,i=h,h=j(g,30),g=f,f=c;this._h0=this._h0+f|0,this._h1=this._h1+g|0,this._h2=this._h2+h|0,this._h3=this._h3+i|0,this._h4=this._h4+k|0}}},37523:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(21652).u1)("markerDecorationsService")},37577:(a,b,c)=>{"use strict";c.d(b,{n:()=>C});var d,e=c(76302),f=c(63048),g=c(69626),h=c(88586),i=c(40201),j=c(39537),k=c(21652),l=c(51407),m=c(55066),n=c(7968),o=c(59237),p=c(15522),q=c(3457),r=c(43016),s=c(57832);class t{get dataOffset(){return this._startIndex}get dirtySize(){if(void 0!==this._startIndex&&void 0!==this._endIndex)return this._endIndex-this._startIndex+1}get isDirty(){return void 0!==this._startIndex}flag(a,b=1){return this._flag(a),b>1&&this._flag(a+b-1),a}_flag(a){(void 0===this._startIndex||a<this._startIndex)&&(this._startIndex=a),(void 0===this._endIndex||a>this._endIndex)&&(this._endIndex=a)}clear(){this._startIndex=void 0,this._endIndex=void 0}}class u extends i.jG{get entryCount(){return this._entries.size}get dirtyTracker(){return this._dirtyTracker}constructor(a,b){super(),this.propertySpecs=a,this.capacity=b,this._dirtyTracker=new t,this._propertySpecsMap=new Map,this._entries=new s.w,this._onDidChange=this._register(new q.vl),this._onDidChangeBuffer=this._register(new q.vl),this.onDidChangeBuffer=this._onDidChangeBuffer.event,this.view=new Float32Array(b*a.length),this.buffer=this.view.buffer,this._entrySize=a.length;for(let b=0;b<a.length;b++){const c={offset:b,...a[b]};this._propertySpecsMap.set(c.name,c)}this._register((0,i.s)(()=>(0,i.AS)(this._entries)))}createEntry(a){this._entries.size===this.capacity&&(this._expandBuffer(),this._onDidChangeBuffer.fire());let b=new v(this.view,this._propertySpecsMap,this._dirtyTracker,this._entries.size,a),c=this._entries.push(b),d=[];return d.push(q.Jh.forward(b.onDidChange,this._onDidChange)),d.push(b.onWillDispose(()=>{let a=b.i;for(let b of(c(),this.view.set(this.view.subarray(a*this._entrySize+2,this._entries.size*this._entrySize+2),a*this._entrySize),this._entries))b.i>a&&b.i--;this._dirtyTracker.flag(a,(this._entries.size-a)*this._entrySize),(0,i.AS)(d)})),b}_expandBuffer(){this.capacity*=2;let a=new Float32Array(this.capacity*this._entrySize);a.set(this.view),this.view=a,this.buffer=this.view.buffer}}class v extends i.jG{constructor(a,b,c,d,e){for(const f of(super(),this._view=a,this._propertySpecsMap=b,this._dirtyTracker=c,this.i=d,this._onDidChange=this._register(new q.vl),this.onDidChange=this._onDidChange.event,this._onWillDispose=this._register(new q.vl),this.onWillDispose=this._onWillDispose.event,this._propertySpecsMap.values()))this._view[this.i*this._propertySpecsMap.size+f.offset]=e[f.name];this._dirtyTracker.flag(this.i*this._propertySpecsMap.size,this._propertySpecsMap.size)}dispose(){this._onWillDispose.fire(),super.dispose()}setRaw(a){if(a.length!==this._propertySpecsMap.size)throw Error(`Data length ${a.length} does not match the number of properties in the collection (${this._propertySpecsMap.size})`);this._view.set(a,this.i*this._propertySpecsMap.size),this._dirtyTracker.flag(this.i*this._propertySpecsMap.size,this._propertySpecsMap.size)}}let w=`
5
+ | KEY ('==' | '!=' | '<' | '<=' | '>' | '>=' | 'in' | 'not' 'in') value`,this._peek())}}_value(){let a=this._peek();switch(a.type){case 17:case 18:return this._advance(),a.lexeme;case 11:return this._advance(),"true";case 12:return this._advance(),"false";case 13:return this._advance(),"in";default:return""}}_removeFlagsGY(a){return a.replaceAll(this._flagsGYRe,"")}_previous(){return this._tokens[this._current-1]}_matchOne(a){return!!this._check(a)&&(this._advance(),!0)}_advance(){return!this._isAtEnd()&&this._current++,this._previous()}_consume(a,b){if(this._check(a))return this._advance();throw this._errExpectedButGot(b,this._peek())}_errExpectedButGot(a,b,c){let d=(0,g.kg)(1668,"Expected: {0}\nReceived: '{1}'.",a,k.getLexeme(b)),e=b.offset,f=k.getLexeme(b);return this._parsingErrors.push({message:d,offset:e,lexeme:f,additionalInfo:c}),x._parseError}_check(a){return this._peek().type===a}_peek(){return this._tokens[this._current]}_isAtEnd(){return 20===this._peek().type}}class y{static false(){return B.INSTANCE}static true(){return C.INSTANCE}static has(a){return D.create(a)}static equals(a,b){return E.create(a,b)}static notEquals(a,b){return H.create(a,b)}static regex(a,b){return O.create(a,b)}static in(a,b){return F.create(a,b)}static notIn(a,b){return G.create(a,b)}static not(a){return I.create(a)}static and(...a){return R.create(a,null,!0)}static or(...a){return S.create(a,null,!0)}static{this._parser=new x({regexParsingWithErrorRecovery:!1})}static deserialize(a){if(null!=a)return this._parser.parse(a)}}function z(a,b){let c=a?a.substituteConstants():void 0,d=b?b.substituteConstants():void 0;return!c&&!d||!!c&&!!d&&c.equals(d)}function A(a,b){return a.cmp(b)}class B{static{this.INSTANCE=new B}constructor(){this.type=0}cmp(a){return this.type-a.type}equals(a){return a.type===this.type}substituteConstants(){return this}evaluate(a){return!1}serialize(){return"false"}keys(){return[]}negate(){return C.INSTANCE}}class C{static{this.INSTANCE=new C}constructor(){this.type=1}cmp(a){return this.type-a.type}equals(a){return a.type===this.type}substituteConstants(){return this}evaluate(a){return!0}serialize(){return"true"}keys(){return[]}negate(){return B.INSTANCE}}class D{static create(a,b=null){let c=m.get(a);return"boolean"==typeof c?c?C.INSTANCE:B.INSTANCE:new D(a,b)}constructor(a,b){this.key=a,this.negated=b,this.type=2}cmp(a){return a.type!==this.type?this.type-a.type:function(a,b){return a<b?-1:+(a>b)}(this.key,a.key)}equals(a){return a.type===this.type&&this.key===a.key}substituteConstants(){let a=m.get(this.key);return"boolean"==typeof a?a?C.INSTANCE:B.INSTANCE:this}evaluate(a){return!!a.getValue(this.key)}serialize(){return this.key}keys(){return[this.key]}negate(){return this.negated||(this.negated=I.create(this.key,this)),this.negated}}class E{static create(a,b,c=null){if("boolean"==typeof b)return b?D.create(a,c):I.create(a,c);let d=m.get(a);return"boolean"==typeof d?b===(d?"true":"false")?C.INSTANCE:B.INSTANCE:new E(a,b,c)}constructor(a,b,c){this.key=a,this.value=b,this.negated=c,this.type=4}cmp(a){return a.type!==this.type?this.type-a.type:V(this.key,this.value,a.key,a.value)}equals(a){return a.type===this.type&&this.key===a.key&&this.value===a.value}substituteConstants(){let a=m.get(this.key);return"boolean"==typeof a?this.value===(a?"true":"false")?C.INSTANCE:B.INSTANCE:this}evaluate(a){return a.getValue(this.key)==this.value}serialize(){return`${this.key} == '${this.value}'`}keys(){return[this.key]}negate(){return this.negated||(this.negated=H.create(this.key,this.value,this)),this.negated}}class F{static create(a,b){return new F(a,b)}constructor(a,b){this.key=a,this.valueKey=b,this.type=10,this.negated=null}cmp(a){return a.type!==this.type?this.type-a.type:V(this.key,this.valueKey,a.key,a.valueKey)}equals(a){return a.type===this.type&&this.key===a.key&&this.valueKey===a.valueKey}substituteConstants(){return this}evaluate(a){let b=a.getValue(this.valueKey),c=a.getValue(this.key);return Array.isArray(b)?b.includes(c):"string"==typeof c&&"object"==typeof b&&null!==b&&n.call(b,c)}serialize(){return`${this.key} in '${this.valueKey}'`}keys(){return[this.key,this.valueKey]}negate(){return this.negated||(this.negated=G.create(this.key,this.valueKey)),this.negated}}class G{static create(a,b){return new G(a,b)}constructor(a,b){this.key=a,this.valueKey=b,this.type=11,this._negated=F.create(a,b)}cmp(a){return a.type!==this.type?this.type-a.type:this._negated.cmp(a._negated)}equals(a){return a.type===this.type&&this._negated.equals(a._negated)}substituteConstants(){return this}evaluate(a){return!this._negated.evaluate(a)}serialize(){return`${this.key} not in '${this.valueKey}'`}keys(){return this._negated.keys()}negate(){return this._negated}}class H{static create(a,b,c=null){if("boolean"==typeof b)return b?I.create(a,c):D.create(a,c);let d=m.get(a);return"boolean"==typeof d?b===(d?"true":"false")?B.INSTANCE:C.INSTANCE:new H(a,b,c)}constructor(a,b,c){this.key=a,this.value=b,this.negated=c,this.type=5}cmp(a){return a.type!==this.type?this.type-a.type:V(this.key,this.value,a.key,a.value)}equals(a){return a.type===this.type&&this.key===a.key&&this.value===a.value}substituteConstants(){let a=m.get(this.key);return"boolean"==typeof a?this.value===(a?"true":"false")?B.INSTANCE:C.INSTANCE:this}evaluate(a){return a.getValue(this.key)!=this.value}serialize(){return`${this.key} != '${this.value}'`}keys(){return[this.key]}negate(){return this.negated||(this.negated=E.create(this.key,this.value,this)),this.negated}}class I{static create(a,b=null){let c=m.get(a);return"boolean"==typeof c?c?B.INSTANCE:C.INSTANCE:new I(a,b)}constructor(a,b){this.key=a,this.negated=b,this.type=3}cmp(a){return a.type!==this.type?this.type-a.type:function(a,b){return a<b?-1:+(a>b)}(this.key,a.key)}equals(a){return a.type===this.type&&this.key===a.key}substituteConstants(){let a=m.get(this.key);return"boolean"==typeof a?a?B.INSTANCE:C.INSTANCE:this}evaluate(a){return!a.getValue(this.key)}serialize(){return`!${this.key}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=D.create(this.key,this)),this.negated}}function J(a,b){if("string"==typeof a){let b=parseFloat(a);isNaN(b)||(a=b)}return"string"==typeof a||"number"==typeof a?b(a):B.INSTANCE}class K{static create(a,b,c=null){return J(b,b=>new K(a,b,c))}constructor(a,b,c){this.key=a,this.value=b,this.negated=c,this.type=12}cmp(a){return a.type!==this.type?this.type-a.type:V(this.key,this.value,a.key,a.value)}equals(a){return a.type===this.type&&this.key===a.key&&this.value===a.value}substituteConstants(){return this}evaluate(a){return"string"!=typeof this.value&&parseFloat(a.getValue(this.key))>this.value}serialize(){return`${this.key} > ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=N.create(this.key,this.value,this)),this.negated}}class L{static create(a,b,c=null){return J(b,b=>new L(a,b,c))}constructor(a,b,c){this.key=a,this.value=b,this.negated=c,this.type=13}cmp(a){return a.type!==this.type?this.type-a.type:V(this.key,this.value,a.key,a.value)}equals(a){return a.type===this.type&&this.key===a.key&&this.value===a.value}substituteConstants(){return this}evaluate(a){return"string"!=typeof this.value&&parseFloat(a.getValue(this.key))>=this.value}serialize(){return`${this.key} >= ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=M.create(this.key,this.value,this)),this.negated}}class M{static create(a,b,c=null){return J(b,b=>new M(a,b,c))}constructor(a,b,c){this.key=a,this.value=b,this.negated=c,this.type=14}cmp(a){return a.type!==this.type?this.type-a.type:V(this.key,this.value,a.key,a.value)}equals(a){return a.type===this.type&&this.key===a.key&&this.value===a.value}substituteConstants(){return this}evaluate(a){return"string"!=typeof this.value&&parseFloat(a.getValue(this.key))<this.value}serialize(){return`${this.key} < ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=L.create(this.key,this.value,this)),this.negated}}class N{static create(a,b,c=null){return J(b,b=>new N(a,b,c))}constructor(a,b,c){this.key=a,this.value=b,this.negated=c,this.type=15}cmp(a){return a.type!==this.type?this.type-a.type:V(this.key,this.value,a.key,a.value)}equals(a){return a.type===this.type&&this.key===a.key&&this.value===a.value}substituteConstants(){return this}evaluate(a){return"string"!=typeof this.value&&parseFloat(a.getValue(this.key))<=this.value}serialize(){return`${this.key} <= ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=K.create(this.key,this.value,this)),this.negated}}class O{static create(a,b){return new O(a,b)}constructor(a,b){this.key=a,this.regexp=b,this.type=7,this.negated=null}cmp(a){if(a.type!==this.type)return this.type-a.type;if(this.key<a.key)return -1;if(this.key>a.key)return 1;let b=this.regexp?this.regexp.source:"",c=a.regexp?a.regexp.source:"";return b<c?-1:+(b>c)}equals(a){if(a.type===this.type){let b=this.regexp?this.regexp.source:"",c=a.regexp?a.regexp.source:"";return this.key===a.key&&b===c}return!1}substituteConstants(){return this}evaluate(a){let b=a.getValue(this.key);return!!this.regexp&&this.regexp.test(b)}serialize(){let a=this.regexp?`/${this.regexp.source}/${this.regexp.flags}`:"/invalid/";return`${this.key} =~ ${a}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=P.create(this)),this.negated}}class P{static create(a){return new P(a)}constructor(a){this._actual=a,this.type=8}cmp(a){return a.type!==this.type?this.type-a.type:this._actual.cmp(a._actual)}equals(a){return a.type===this.type&&this._actual.equals(a._actual)}substituteConstants(){return this}evaluate(a){return!this._actual.evaluate(a)}serialize(){return`!(${this._actual.serialize()})`}keys(){return this._actual.keys()}negate(){return this._actual}}function Q(a){let b=null;for(let c=0,d=a.length;c<d;c++){let d=a[c].substituteConstants();if(a[c]!==d&&null===b){b=[];for(let d=0;d<c;d++)b[d]=a[d]}null!==b&&(b[c]=d)}return null===b?a:b}class R{static create(a,b,c){return R._normalizeArr(a,b,c)}constructor(a,b){this.expr=a,this.negated=b,this.type=6}cmp(a){if(a.type!==this.type)return this.type-a.type;if(this.expr.length<a.expr.length)return -1;if(this.expr.length>a.expr.length)return 1;for(let b=0,c=this.expr.length;b<c;b++){let c=A(this.expr[b],a.expr[b]);if(0!==c)return c}return 0}equals(a){if(a.type===this.type){if(this.expr.length!==a.expr.length)return!1;for(let b=0,c=this.expr.length;b<c;b++)if(!this.expr[b].equals(a.expr[b]))return!1;return!0}return!1}substituteConstants(){let a=Q(this.expr);return a===this.expr?this:R.create(a,this.negated,!1)}evaluate(a){for(let b=0,c=this.expr.length;b<c;b++)if(!this.expr[b].evaluate(a))return!1;return!0}static _normalizeArr(a,b,c){let d=[],e=!1;for(let b of a)if(b){if(1===b.type){e=!0;continue}if(0===b.type)return B.INSTANCE;if(6===b.type){d.push(...b.expr);continue}d.push(b)}if(0===d.length&&e)return C.INSTANCE;if(0!==d.length){if(1===d.length)return d[0];d.sort(A);for(let a=1;a<d.length;a++)d[a-1].equals(d[a])&&(d.splice(a,1),a--);if(1===d.length)return d[0];for(;d.length>1;){let a=d[d.length-1];if(9!==a.type)break;d.pop();let b=d.pop(),e=0===d.length,f=S.create(a.expr.map(a=>R.create([a,b],null,c)),null,e);f&&(d.push(f),d.sort(A))}if(1===d.length)return d[0];if(c){for(let a=0;a<d.length;a++)for(let b=a+1;b<d.length;b++)if(d[a].negate().equals(d[b]))return B.INSTANCE;if(1===d.length)return d[0]}return new R(d,b)}}serialize(){return this.expr.map(a=>a.serialize()).join(" && ")}keys(){let a=[];for(let b of this.expr)a.push(...b.keys());return a}negate(){if(!this.negated){let a=[];for(let b of this.expr)a.push(b.negate());this.negated=S.create(a,this,!0)}return this.negated}}class S{static create(a,b,c){return S._normalizeArr(a,b,c)}constructor(a,b){this.expr=a,this.negated=b,this.type=9}cmp(a){if(a.type!==this.type)return this.type-a.type;if(this.expr.length<a.expr.length)return -1;if(this.expr.length>a.expr.length)return 1;for(let b=0,c=this.expr.length;b<c;b++){let c=A(this.expr[b],a.expr[b]);if(0!==c)return c}return 0}equals(a){if(a.type===this.type){if(this.expr.length!==a.expr.length)return!1;for(let b=0,c=this.expr.length;b<c;b++)if(!this.expr[b].equals(a.expr[b]))return!1;return!0}return!1}substituteConstants(){let a=Q(this.expr);return a===this.expr?this:S.create(a,this.negated,!1)}evaluate(a){for(let b=0,c=this.expr.length;b<c;b++)if(this.expr[b].evaluate(a))return!0;return!1}static _normalizeArr(a,b,c){let d=[],e=!1;if(a){for(let b=0,c=a.length;b<c;b++){let c=a[b];if(c){if(0===c.type){e=!0;continue}if(1===c.type)return C.INSTANCE;if(9===c.type){d=d.concat(c.expr);continue}d.push(c)}}if(0===d.length&&e)return B.INSTANCE;d.sort(A)}if(0!==d.length){if(1===d.length)return d[0];for(let a=1;a<d.length;a++)d[a-1].equals(d[a])&&(d.splice(a,1),a--);if(1===d.length)return d[0];if(c){for(let a=0;a<d.length;a++)for(let b=a+1;b<d.length;b++)if(d[a].negate().equals(d[b]))return C.INSTANCE;if(1===d.length)return d[0]}return new S(d,b)}}serialize(){return this.expr.map(a=>a.serialize()).join(" || ")}keys(){let a=[];for(let b of this.expr)a.push(...b.keys());return a}negate(){if(!this.negated){let a=[];for(let b of this.expr)a.push(b.negate());for(;a.length>1;){let b=a.shift(),c=a.shift(),d=[];for(let a of X(b))for(let b of X(c))d.push(R.create([a,b],null,!1));a.unshift(S.create(d,null,!1))}this.negated=S.create(a,this,!0)}return this.negated}}class T extends D{static{this._info=[]}static all(){return T._info.values()}constructor(a,b,c){super(a,null),this._defaultValue=b,"object"==typeof c?T._info.push({...c,key:a}):!0!==c&&T._info.push({key:a,description:c,type:null!=b?typeof b:void 0})}bindTo(a){return a.createKey(this.key,this._defaultValue)}getValue(a){return a.getContextKeyValue(this.key)}toNegated(){return this.negate()}isEqualTo(a){return E.create(this.key,a)}}let U=(0,l.u1)("contextKeyService");function V(a,b,c,d){return a<c?-1:a>c?1:b<d?-1:+(b>d)}function W(a,b){let c=0,d=0;for(;c<a.length&&d<b.length;){let e=a[c].cmp(b[d]);if(e<0)return!1;0===e&&c++,d++}return c===a.length}function X(a){return 9===a.type?a.expr:[a]}},6539:()=>{},6876:(a,b,c)=>{"use strict";c.d(b,{e:()=>g});var d=c(72492),e=c(93842),f=c(19254);let g={clipboard:{writeText:f.ib||document.queryCommandSupported&&document.queryCommandSupported("copy")||!!(navigator&&navigator.clipboard&&navigator.clipboard.writeText),readText:f.ib||!!(navigator&&navigator.clipboard&&navigator.clipboard.readText)},keyboard:f.ib||d.Qu()?0:navigator.keyboard||d.nr?1:2,touch:"ontouchstart"in e.G||navigator.maxTouchPoints>0,pointerEvents:e.G.PointerEvent&&("ontouchstart"in e.G||navigator.maxTouchPoints>0)}},7094:(a,b,c)=>{"use strict";c.d(b,{T:()=>h,v:()=>i});var d=c(33067),e=c(25203),f=c(61682),g=c(37186);class h{static indent(a,b,c){if(null===b||null===c)return[];let e=[];for(let b=0,f=c.length;b<f;b++)e[b]=new d.Y(c[b],{isUnshift:!1,tabSize:a.tabSize,indentSize:a.indentSize,insertSpaces:a.insertSpaces,useTabStops:a.useTabStops,autoIndent:a.autoIndent},a.languageConfigurationService);return e}static outdent(a,b,c){let e=[];for(let b=0,f=c.length;b<f;b++)e[b]=new d.Y(c[b],{isUnshift:!0,tabSize:a.tabSize,indentSize:a.indentSize,insertSpaces:a.insertSpaces,useTabStops:a.useTabStops,autoIndent:a.autoIndent},a.languageConfigurationService);return e}static paste(a,b,c,d,e,f){return g.Dr.getEdits(a,b,c,d,e,f)}static tab(a,b,c){return g.h0.getCommands(a,b,c)}static compositionType(a,b,c,d,e,f,h,i){return g.YA.getEdits(a,b,c,d,e,f,h,i)}static compositionEndWithInterceptors(a,b,c,d,h,i){if(!d)return null;let j=null;for(let a of d)if(null===j)j=a.insertedText;else if(j!==a.insertedText)return null;if(!j||1!==j.length)return g.Tl.getEdits(b,d);let k=j,l=!1;for(let a of d)if(0!==a.deletedText.length){l=!0;break}if(l){if(!(0,g.ey)(b,k)||!b.surroundingPairs.hasOwnProperty(k))return null;let a=(0,f.vG)(k);for(let b of d)if(0!==b.deletedSelectionStart||b.deletedSelectionEnd!==b.deletedText.length||/^[ \t]+$/.test(b.deletedText)||a&&(0,f.vG)(b.deletedText))return null;let c=[];for(let a of h){if(!a.isEmpty())return null;c.push(a.getPosition())}if(c.length!==d.length)return null;let i=[];for(let a=0,f=c.length;a<f;a++)i.push(new e.y(c[a],d[a].deletedText,b.surroundingPairs[k]));return new f.vY(4,i,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}let m=g.K4.getEdits(b,c,h,i,k);if(void 0!==m)return m;let n=g.oi.getEdits(b,c,h,k,!0,!1);return void 0!==n?n:g.Tl.getEdits(b,d)}static typeWithInterceptors(a,b,c,d,e,f,h){let i=g.AO.getEdits(c,d,e,h,a);if(void 0!==i)return i;let j=g.dU.getEdits(c,d,e,h,a);if(void 0!==j)return j;let k=g.sx.getEdits(b,c,d,e,f,h);if(void 0!==k)return k;let l=g.oi.getEdits(c,d,e,h,!1,a);if(void 0!==l)return l;let m=g.is.getEdits(c,d,e,h,a);if(void 0!==m)return m;let n=g.kr.getEdits(b,c,d,e,h,a);return void 0!==n?n:g.Ls.getEdits(c,b,e,h,a)}static typeWithoutInterceptors(a,b,c,d,e){return g.UN.getEdits(a,d,e)}}class i{constructor(a,b,c,d,e,f,g){this.deletedText=a,this.deletedSelectionStart=b,this.deletedSelectionEnd=c,this.insertedText=d,this.insertedSelectionStart=e,this.insertedSelectionEnd=f,this.insertedTextRange=g}}},7240:(a,b,c)=>{"use strict";var d;function e(a,b){let c=new Map;for(let d of a){let a=b(d),e=c.get(a);e||(e=[],c.set(a,e)),e.push(d)}return c}function f(a,b){let c=[],d=[];for(let d of a)b.has(d)||c.push(d);for(let c of b)a.has(c)||d.push(c);return{removed:c,added:d}}function g(a,b){let c=new Set;for(let d of b)a.has(d)&&c.add(d);return c}c.d(b,{E$:()=>g,Fi:()=>e,Zv:()=>f,iD:()=>h});class h{static{d=Symbol.toStringTag}constructor(a,b){for(const c of(this.toKey=b,this._map=new Map,this[d]="SetWithKey",a))this.add(c)}get size(){return this._map.size}add(a){let b=this.toKey(a);return this._map.set(b,a),this}delete(a){return this._map.delete(this.toKey(a))}has(a){return this._map.has(this.toKey(a))}*entries(){for(let a of this._map.values())yield[a,a]}keys(){return this.values()}*values(){for(let a of this._map.values())yield a}clear(){this._map.clear()}forEach(a,b){this._map.forEach(c=>a.call(b,c,c,this))}[Symbol.iterator](){return this.values()}}},7784:(a,b,c)=>{"use strict";c.d(b,{OL:()=>h,dg:()=>j,lw:()=>m});var d,e=c(54058),f=c(53918);let g=Symbol("TextModelEditSource");class h{constructor(a,b){this.metadata=a}toString(){return`${this.metadata.source}`}getType(){let a=this.metadata;switch(a.source){case"cursor":return a.kind;case"inlineCompletionAccept":return a.source+(a.$nes?":nes":"");case"unknown":return a.name||"unknown";default:return a.source}}toKey(a,b={}){return Object.entries(this.metadata).filter(([c,d])=>{let e=b[c];return void 0!==e?e:(c.match(/\$/g)||[]).length<=a&&null!=d&&""!==d}).map(([a,b])=>`${a}:${b}`).join("-")}}function i(a){return new h(a,g)}let j={unknown:a=>i({source:"unknown",name:a.name}),rename:()=>i({source:"rename"}),chatApplyEdits:a=>i({source:"Chat.applyEdits",$modelId:l(a.modelId),$extensionId:a.extensionId?.extensionId,$extensionVersion:a.extensionId?.version,$$languageId:a.languageId,$$sessionId:a.sessionId,$$requestId:a.requestId,$$mode:a.mode,$$codeBlockSuggestionId:a.codeBlockSuggestionId}),chatUndoEdits:()=>i({source:"Chat.undoEdits"}),chatReset:()=>i({source:"Chat.reset"}),inlineCompletionAccept:a=>i({source:"inlineCompletionAccept",$nes:a.nes,...k(a.providerId),$$requestUuid:a.requestUuid,$$languageId:a.languageId}),inlineCompletionPartialAccept:a=>i({source:"inlineCompletionPartialAccept",type:a.type,$nes:a.nes,...k(a.providerId),$$requestUuid:a.requestUuid,$$languageId:a.languageId}),inlineChatApplyEdit:a=>i({source:"inlineChat.applyEdits",$modelId:l(a.modelId),$extensionId:a.extensionId?.extensionId,$extensionVersion:a.extensionId?.version,$$requestId:a.requestId,$$languageId:a.languageId}),reloadFromDisk:()=>i({source:"reloadFromDisk"}),cursor:a=>i({source:"cursor",kind:a.kind,detailedSource:a.detailedSource}),setValue:()=>i({source:"setValue"}),eolChange:()=>i({source:"eolChange"}),applyEdits:()=>i({source:"applyEdits"}),snippet:()=>i({source:"snippet"}),suggest:a=>i({source:"suggest",...k(a.providerId)}),codeAction:a=>i({source:"codeAction",$kind:a.kind,...k(a.providerId)})};function k(a){return a?{$extensionId:a.extensionId,$extensionVersion:a.extensionVersion,$providerId:a.providerId}:{}}function l(a){if(void 0!==a)return a.replaceAll("/","|")}class m{static fromText(a){return new m(f.W.ofText(a).lineCount,0,a.length,0)}static tryCreate(a,b,c,d){if(void 0!==a&&void 0!==b&&void 0!==c&&void 0!==d)return new m(a,b,c,d)}constructor(a,b,c,d){this.linesAdded=a,this.linesRemoved=b,this.charsAdded=c,this.charsRemoved=d}}(d||(d={})).newId=function(){return(0,e.t)("sgt")}},7806:(a,b,c)=>{"use strict";c.d(b,{M$:()=>j,Tf:()=>g,gI:()=>function a(b,c){if(void 0!==b){let d=b.match(/^\s*var\((.+)\)$/);if(d){let b=d[1].split(",",2);return 2===b.length&&(c=a(b[1].trim(),c)),`var(${b[0]}, ${c})`}return b}return c},mG:()=>i,r$:()=>f,s7:()=>h,yj:()=>e});var d=c(37291);function e(a){let b=a.replaceAll(/[^_\-a-z0-9]/gi,"");return b!==a&&console.warn(`CSS ident value ${a} modified to ${b} to be safe for CSS`),b}function f(a){return`'${a.replaceAll(/'/g,"\\000027")}'`}function g(a){return a?i`url('${CSS.escape(d.zl.uriToBrowserUri(a).toString(!0))}')`:"url('')"}function h(a,b=!1){let c=CSS.escape(a);return b||c===a||console.warn(`CSS class name ${a} modified to ${c} to be safe for CSS`),c}function i(a,...b){return a.reduce((a,c,d)=>a+c+(b[d]||""),"")}class j{constructor(){this._parts=[]}push(...a){this._parts.push(...a)}join(a="\n"){return this._parts.join(a)}}},7968:(a,b,c)=>{"use strict";c.d(b,{AI:()=>f,Kz:()=>h,Ot:()=>g});var d=c(98274),e=c(21652),f=d.A;let g=(0,e.u1)("notificationService");class h{}},8211:(a,b,c)=>{"use strict";c.d(b,{x:()=>i});var d=c(63048),e=c(94615),f=c(50370),g=c(12235),h=c(40201);class i extends h.jG{onclick(a,b){this._register(d.ko(a,d.Bx.CLICK,c=>b(new f.P(d.zk(a),c))))}onmousedown(a,b){this._register(d.ko(a,d.Bx.MOUSE_DOWN,c=>b(new f.P(d.zk(a),c))))}onmouseover(a,b){this._register(d.ko(a,d.Bx.MOUSE_OVER,c=>b(new f.P(d.zk(a),c))))}onmouseleave(a,b){this._register(d.ko(a,d.Bx.MOUSE_LEAVE,c=>b(new f.P(d.zk(a),c))))}onkeydown(a,b){this._register(d.ko(a,d.Bx.KEY_DOWN,a=>b(new e.Z(a))))}onkeyup(a,b){this._register(d.ko(a,d.Bx.KEY_UP,a=>b(new e.Z(a))))}oninput(a,b){this._register(d.ko(a,d.Bx.INPUT,b))}onblur(a,b){this._register(d.ko(a,d.Bx.BLUR,b))}onfocus(a,b){this._register(d.ko(a,d.Bx.FOCUS,b))}ignoreGesture(a){return g.q.ignoreTarget(a)}}},8424:(a,b,c)=>{"use strict";c.d(b,{Bs:()=>h,d:()=>e});var d=c(77747);class e{constructor(a,b,c,d){this.startColumn=a,this.endColumn=b,this.className=c,this.type=d,this._lineDecorationBrand=void 0}static _equals(a,b){return a.startColumn===b.startColumn&&a.endColumn===b.endColumn&&a.className===b.className&&a.type===b.type}static equalsArr(a,b){let c=a.length;if(c!==b.length)return!1;for(let d=0;d<c;d++)if(!e._equals(a[d],b[d]))return!1;return!0}static extractWrapped(a,b,c){if(0===a.length)return a;let d=b+1,f=c+1,g=c-b,h=[],i=0;for(let b of a)b.endColumn<=d||b.startColumn>=f||(h[i++]=new e(Math.max(1,b.startColumn-d+1),Math.min(g+1,b.endColumn-d+1),b.className,b.type));return h}static filter(a,b,c,d){if(0===a.length)return[];let f=[],g=0;for(let h=0,i=a.length;h<i;h++){let i=a[h],j=i.range;if(j.endLineNumber<b||j.startLineNumber>b||j.isEmpty()&&(0===i.type||3===i.type))continue;let k=j.startLineNumber===b?j.startColumn:c,l=j.endLineNumber===b?j.endColumn:d;f[g++]=new e(k,l,i.inlineClassName,i.type)}return f}static _typeCompare(a,b){let c=[2,0,1,3];return c[a]-c[b]}static compare(a,b){if(a.startColumn!==b.startColumn)return a.startColumn-b.startColumn;if(a.endColumn!==b.endColumn)return a.endColumn-b.endColumn;let c=e._typeCompare(a.type,b.type);return 0!==c?c:a.className!==b.className?a.className<b.className?-1:1:0}}class f{constructor(a,b,c,d){this.startOffset=a,this.endOffset=b,this.className=c,this.metadata=d}}class g{constructor(){this.stopOffsets=[],this.classNames=[],this.metadata=[],this.count=0}static _metadata(a){let b=0;for(let c=0,d=a.length;c<d;c++)b|=a[c];return b}consumeLowerThan(a,b,c){for(;this.count>0&&this.stopOffsets[0]<a;){let a=0;for(;a+1<this.count&&this.stopOffsets[a]===this.stopOffsets[a+1];)a++;c.push(new f(b,this.stopOffsets[a],this.classNames.join(" "),g._metadata(this.metadata))),b=this.stopOffsets[a]+1,this.stopOffsets.splice(0,a+1),this.classNames.splice(0,a+1),this.metadata.splice(0,a+1),this.count-=a+1}return this.count>0&&b<a&&(c.push(new f(b,a-1,this.classNames.join(" "),g._metadata(this.metadata))),b=a),b}insert(a,b,c){if(0===this.count||this.stopOffsets[this.count-1]<=a)this.stopOffsets.push(a),this.classNames.push(b),this.metadata.push(c);else for(let d=0;d<this.count;d++)if(this.stopOffsets[d]>=a){this.stopOffsets.splice(d,0,a),this.classNames.splice(d,0,b),this.metadata.splice(d,0,c);break}this.count++}}class h{static normalize(a,b){if(0===b.length)return[];let c=[],e=new g,f=0;for(let g=0,h=b.length;g<h;g++){let h=b[g],i=h.startColumn,j=h.endColumn,k=h.className,l=1===h.type?2:4*(2===h.type);if(i>1){let b=a.charCodeAt(i-2);d.pc(b)&&i--}if(j>1){let b=a.charCodeAt(j-2);d.pc(b)&&j--}let m=i-1,n=j-2;f=e.consumeLowerThan(m,f,c),0===e.count&&(f=m),e.insert(n,k,l)}return e.consumeLowerThan(0x40000000,f,c),c}}},8751:(a,b,c)=>{"use strict";c.d(b,{t:()=>d});let d=(0,c(21652).u1)("treeSitterLibraryService")},8763:(a,b,c)=>{"use strict";c.d(b,{h:()=>d});let d=Symbol("MicrotaskDelay")},9360:(a,b,c)=>{"use strict";function d(a){return a&&"object"==typeof a&&"string"==typeof a.original&&"string"==typeof a.value}function e(a){return!!a&&void 0!==a.condition}c.d(b,{N:()=>e,f:()=>d})},9362:(a,b,c)=>{"use strict";c.d(b,{HG:()=>q,KS:()=>u,un:()=>v});var d=c(63048),e=c(88586),f=c(3457),g=c(40201),h=c(76302),i=c(25644),j=c(5738),k=c(58451),l=c(21652),m=c(61636),n=c(3501),o=c(1136),p=function(a,b){return function(c,d){b(c,d,a)}};let q=(0,l.u1)("IInlineCompletionsService"),r=new j.N1("inlineCompletions.snoozed",!1,(0,h.kg)(76,"Whether inline completions are currently snoozed")),s=class extends g.jG{get snoozeTimeLeft(){return void 0===this._snoozeTimeEnd?0:Math.max(0,this._snoozeTimeEnd-Date.now())}constructor(a,b){super(),this._contextKeyService=a,this._telemetryService=b,this._onDidChangeIsSnoozing=this._register(new f.vl),this.onDidChangeIsSnoozing=this._onDidChangeIsSnoozing.event,this._snoozeTimeEnd=void 0,this._recentCompletionIds=[],this._timer=this._register(new d.Be);const c=r.bindTo(this._contextKeyService);this._register(this.onDidChangeIsSnoozing(()=>c.set(this.isSnoozing())))}setSnoozeDuration(a){if(a<0)throw new e.D7(`Invalid snooze duration: ${a}. Duration must be non-negative.`);if(0===a)return void this.cancelSnooze();let b=this.isSnoozing(),c=this.snoozeTimeLeft;this._snoozeTimeEnd=Date.now()+a,b||this._onDidChangeIsSnoozing.fire(!0),this._timer.cancelAndSet(()=>{if(this.isSnoozing())throw new e.D7("Snooze timer did not fire as expected");this._onDidChangeIsSnoozing.fire(!1)},this.snoozeTimeLeft+1),this._reportSnooze(a-c,a)}isSnoozing(){return this.snoozeTimeLeft>0}cancelSnooze(){this.isSnoozing()&&(this._reportSnooze(-this.snoozeTimeLeft,0),this._snoozeTimeEnd=void 0,this._timer.cancel(),this._onDidChangeIsSnoozing.fire(!1))}reportNewCompletion(a){this._lastCompletionId=a,this._recentCompletionIds.unshift(a),this._recentCompletionIds.length>5&&this._recentCompletionIds.pop()}_reportSnooze(a,b){let c=Math.round(a/1e3),d=Math.round(b/1e3);this._telemetryService.publicLog2("inlineCompletions.snooze",{deltaSeconds:c,totalSeconds:d,lastCompletionId:this._lastCompletionId,recentCompletionIds:this._recentCompletionIds})}};s=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([p(0,j.fN),p(1,o.k)],s),(0,k.v)(q,s,1);let t="inlineCompletions.lastSnoozeDuration";class u extends i.L{static{this.ID="editor.action.inlineSuggest.snooze"}constructor(){super({id:u.ID,title:(0,h.aS)(78,"Snooze Inline Suggestions"),precondition:j.M$.true(),f1:!0})}async run(a,...b){let c,d=a.get(m.GK),e=a.get(q),f=a.get(n.CS);b.length>0&&"number"==typeof b[0]&&(c=b[0]),c||(c=await this.getDurationFromUser(d,f)),c&&e.setSnoozeDuration(c)}async getDurationFromUser(a,b){let c=b.getNumber(t,0,3e5),d=[{label:"1 minute",id:"1",value:6e4},{label:"5 minutes",id:"5",value:3e5},{label:"10 minutes",id:"10",value:6e5},{label:"15 minutes",id:"15",value:9e5},{label:"30 minutes",id:"30",value:18e5},{label:"60 minutes",id:"60",value:36e5}],e=await a.pick(d,{placeHolder:(0,h.kg)(77,"Select snooze duration for Code completions and NES"),activeItem:d.find(a=>a.value===c)});if(e)return b.store(t,e.value,0,0),e.value}}class v extends i.L{static{this.ID="editor.action.inlineSuggest.cancelSnooze"}constructor(){super({id:v.ID,title:(0,h.aS)(79,"Cancel Snooze Inline Suggestions"),precondition:r,f1:!0})}async run(a){a.get(q).cancelSnooze()}}},9381:(a,b,c)=>{"use strict";c.d(b,{RK:()=>k,tQ:()=>l});var d=c(91849),e=c(40201),f=c(99951),g=c(95554),h=c(52212),i=c(20069),j=c(26890);class k extends e.jG{constructor(a,b,c=!1){if(super(),this._syncedModels=Object.create(null),this._syncedModelsLastUsedTime=Object.create(null),this._proxy=a,this._modelService=b,!c){const a=new d.vb;a.cancelAndSet(()=>this._checkStopModelSync(),Math.round(3e4)),this._register(a)}}dispose(){for(let a in this._syncedModels)(0,e.AS)(this._syncedModels[a]);this._syncedModels=Object.create(null),this._syncedModelsLastUsedTime=Object.create(null),super.dispose()}ensureSyncedResources(a,b=!1){for(let c of a){let a=c.toString();this._syncedModels[a]||this._beginModelSync(c,b),this._syncedModels[a]&&(this._syncedModelsLastUsedTime[a]=new Date().getTime())}}_checkStopModelSync(){let a=new Date().getTime(),b=[];for(let c in this._syncedModelsLastUsedTime)a-this._syncedModelsLastUsedTime[c]>6e4&&b.push(c);for(let a of b)this._stopModelSync(a)}_beginModelSync(a,b){let c=this._modelService.getModel(a);if(!c||!b&&c.isTooLargeForSyncing())return;let d=a.toString();this._proxy.$acceptNewModel({url:c.uri.toString(),lines:c.getLinesContent(),EOL:c.getEOL(),versionId:c.getVersionId()});let f=new e.Cm;f.add(c.onDidChangeContent(a=>{this._proxy.$acceptModelChanged(d.toString(),a)})),f.add(c.onWillDispose(()=>{this._stopModelSync(d)})),f.add((0,e.s)(()=>{this._proxy.$acceptRemovedModel(d)})),this._syncedModels[d]=f}_stopModelSync(a){let b=this._syncedModels[a];delete this._syncedModels[a],delete this._syncedModelsLastUsedTime[a],(0,e.AS)(b)}}class l{constructor(){this._models=Object.create(null)}getModel(a){return this._models[a]}getModels(){let a=[];return Object.keys(this._models).forEach(b=>a.push(this._models[b])),a}$acceptNewModel(a){this._models[a.url]=new m(f.r.parse(a.url),a.lines,a.EOL,a.versionId)}$acceptModelChanged(a,b){this._models[a]&&this._models[a].onEvents(b)}$acceptRemovedModel(a){this._models[a]&&delete this._models[a]}}class m extends j.Y{get uri(){return this._uri}get eol(){return this._eol}getValue(){return this.getText()}findMatches(a){let b=[];for(let c=0;c<this._lines.length;c++){let d=this._lines[c],e=this.offsetAt(new g.y(c+1,1));for(let c of d.matchAll(a))(c.index||0===c.index)&&(c.index=c.index+e),b.push(c)}return b}getLinesContent(){return this._lines.slice(0)}getLineCount(){return this._lines.length}getLineContent(a){return this._lines[a-1]}getWordAtPosition(a,b){let c=(0,i.Th)(a.column,(0,i.Io)(b),this._lines[a.lineNumber-1],0);return c?new h.Q(a.lineNumber,c.startColumn,a.lineNumber,c.endColumn):null}words(a){let b=this._lines,c=this._wordenize.bind(this),d=0,e="",f=0,g=[];return{*[Symbol.iterator](){for(;;)if(f<g.length){let a=e.substring(g[f].start,g[f].end);f+=1,yield a}else if(d<b.length)g=c(e=b[d],a),f=0,d+=1;else break}}}getLineWords(a,b){let c=this._lines[a-1],d=this._wordenize(c,b),e=[];for(let a of d)e.push({word:c.substring(a.start,a.end),startColumn:a.start+1,endColumn:a.end+1});return e}_wordenize(a,b){let c,d=[];for(b.lastIndex=0;(c=b.exec(a))&&0!==c[0].length;)d.push({start:c.index,end:c.index+c[0].length});return d}getValueInRange(a){if((a=this._validateRange(a)).startLineNumber===a.endLineNumber)return this._lines[a.startLineNumber-1].substring(a.startColumn-1,a.endColumn-1);let b=this._eol,c=a.startLineNumber-1,d=a.endLineNumber-1,e=[];e.push(this._lines[c].substring(a.startColumn-1));for(let a=c+1;a<d;a++)e.push(this._lines[a]);return e.push(this._lines[d].substring(0,a.endColumn-1)),e.join(b)}offsetAt(a){return a=this._validatePosition(a),this._ensureLineStarts(),this._lineStarts.getPrefixSum(a.lineNumber-2)+(a.column-1)}positionAt(a){a=Math.max(0,a=Math.floor(a)),this._ensureLineStarts();let b=this._lineStarts.getIndexOf(a),c=this._lines[b.index].length;return{lineNumber:1+b.index,column:1+Math.min(b.remainder,c)}}_validateRange(a){let b=this._validatePosition({lineNumber:a.startLineNumber,column:a.startColumn}),c=this._validatePosition({lineNumber:a.endLineNumber,column:a.endColumn});return b.lineNumber!==a.startLineNumber||b.column!==a.startColumn||c.lineNumber!==a.endLineNumber||c.column!==a.endColumn?{startLineNumber:b.lineNumber,startColumn:b.column,endLineNumber:c.lineNumber,endColumn:c.column}:a}_validatePosition(a){if(!g.y.isIPosition(a))throw Error("bad position");let{lineNumber:b,column:c}=a,d=!1;if(b<1)b=1,c=1,d=!0;else if(b>this._lines.length)b=this._lines.length,c=this._lines[b-1].length+1,d=!0;else{let a=this._lines[b-1].length+1;c<1?(c=1,d=!0):c>a&&(c=a,d=!0)}return d?{lineNumber:b,column:c}:a}}},10016:()=>{},10082:(a,b,c)=>{"use strict";c.d(b,{M:()=>f});var d=c(3457);class e{constructor(){this._tabFocus=!1,this._onDidChangeTabFocus=new d.vl,this.onDidChangeTabFocus=this._onDidChangeTabFocus.event}getTabFocusMode(){return this._tabFocus}setTabFocusMode(a){this._tabFocus=a,this._onDidChangeTabFocus.fire(this._tabFocus)}}let f=new e},10313:()=>{},10322:(a,b,c)=>{"use strict";c.d(b,{L:()=>e});var d,e,f=c(32665);(d||(d={})).isThemeColor=function(a){return!!a&&"object"==typeof a&&"string"==typeof a.id},function(a){a.iconNameSegment="[A-Za-z0-9]+",a.iconNameExpression="[A-Za-z0-9-]+",a.iconModifierExpression="~[A-Za-z]+",a.iconNameCharacter="[A-Za-z0-9~-]";let b=RegExp(`^(${a.iconNameExpression})(${a.iconModifierExpression})?$`);function c(a){let d=b.exec(a.id);if(!d)return c(f.W.error);let[,e,g]=d,h=["codicon","codicon-"+e];return g&&h.push("codicon-modifier-"+g.substring(1)),h}a.asClassNameArray=c,a.asClassName=function(a){return c(a).join(" ")},a.asCSSSelector=function(a){return"."+c(a).join(".")},a.isThemeIcon=function(a){return!!a&&"object"==typeof a&&"string"==typeof a.id&&(void 0===a.color||d.isThemeColor(a.color))};let e=RegExp(`^\\$\\((${a.iconNameExpression}(?:${a.iconModifierExpression})?)\\)$`);a.fromString=function(a){let b=e.exec(a);if(!b)return;let[,c]=b;return{id:c}},a.fromId=function(a){return{id:a}},a.modify=function(a,b){let c=a.id,d=c.lastIndexOf("~");return -1!==d&&(c=c.substring(0,d)),b&&(c=`${c}~${b}`),{id:c}},a.getModifier=function(a){let b=a.id.lastIndexOf("~");if(-1!==b)return a.id.substring(b+1)},a.isEqual=function(a,b){return a.id===b.id&&a.color?.id===b.color?.id}}(e||(e={}))},10711:()=>{},10732:()=>{},10815:(a,b,c)=>{"use strict";c.d(b,{$B:()=>j,Dk:()=>l,IN:()=>n,RE:()=>p,XS:()=>q,cv:()=>g,ho:()=>k,ir:()=>f,m$:()=>m,mk:()=>i,oJ:()=>h,t8:()=>o});var d=c(61203),e=c(81034);let f={keybindingLabelBackground:(0,d.GuP)(d.HDX),keybindingLabelForeground:(0,d.GuP)(d.eUu),keybindingLabelBorder:(0,d.GuP)(d.zUX),keybindingLabelBottomBorder:(0,d.GuP)(d.Qfh),keybindingLabelShadow:(0,d.GuP)(d.f9l)},g={buttonForeground:(0,d.GuP)(d.G_h),buttonSeparator:(0,d.GuP)(d.Q1$),buttonBackground:(0,d.GuP)(d.XJc),buttonHoverBackground:(0,d.GuP)(d.T9h),buttonSecondaryForeground:(0,d.GuP)(d.Inn),buttonSecondaryBackground:(0,d.GuP)(d.xOA),buttonSecondaryHoverBackground:(0,d.GuP)(d.nZG),buttonBorder:(0,d.GuP)(d.raQ)},h={progressBarBackground:(0,d.GuP)(d.BTi)},i={inputActiveOptionBorder:(0,d.GuP)(d.uNK),inputActiveOptionForeground:(0,d.GuP)(d.$$0),inputActiveOptionBackground:(0,d.GuP)(d.c1f)};(0,d.GuP)(d.jOE),(0,d.GuP)(d.Ukx),(0,d.GuP)(d.Ips),(0,d.GuP)(d.kPT),(0,d.GuP)(d.xWN),(0,d.GuP)(d.ZBU),(0,d.GuP)(d.jr9);let j={checkboxBackground:(0,d.GuP)(d.OcU),checkboxBorder:(0,d.GuP)(d.C5U),checkboxForeground:(0,d.GuP)(d.t0B),checkboxDisabledBackground:(0,d.GuP)(d.Uv),checkboxDisabledForeground:(0,d.GuP)(d.hsb)};(0,d.GuP)(d.CgL),(0,d.GuP)(d.FiB),(0,d.GuP)(d.f9l),(0,d.GuP)(d.DSL),(0,d.GuP)(d.tYX),(0,d.GuP)(d.JPj),(0,d.GuP)(d.bNw),(0,d.GuP)(d.vwp);let k={inputBackground:(0,d.GuP)(d.L4c),inputForeground:(0,d.GuP)(d.cws),inputBorder:(0,d.GuP)(d.Zgs),inputValidationInfoBorder:(0,d.GuP)(d.YSW),inputValidationInfoBackground:(0,d.GuP)(d.I$A),inputValidationInfoForeground:(0,d.GuP)(d.L9Z),inputValidationWarningBorder:(0,d.GuP)(d.C1n),inputValidationWarningBackground:(0,d.GuP)(d.ULt),inputValidationWarningForeground:(0,d.GuP)(d.T5N),inputValidationErrorBorder:(0,d.GuP)(d.eYZ),inputValidationErrorBackground:(0,d.GuP)(d._$n),inputValidationErrorForeground:(0,d.GuP)(d.h9z)},l={listFilterWidgetBackground:(0,d.GuP)(d.pnl),listFilterWidgetOutline:(0,d.GuP)(d.fiM),listFilterWidgetNoMatchesOutline:(0,d.GuP)(d.P9Z),listFilterWidgetShadow:(0,d.GuP)(d.H8q),inputBoxStyles:k,toggleStyles:i},m={badgeBackground:(0,d.GuP)(d.WMx),badgeForeground:(0,d.GuP)(d.zRE),badgeBorder:(0,d.GuP)(d.b1q)};(0,d.GuP)(d.vV$),(0,d.GuP)(d.mc0),(0,d.GuP)(d.etE),(0,d.GuP)(d.etE),(0,d.GuP)(d.sAS);let n={listBackground:void 0,listInactiveFocusForeground:void 0,listFocusBackground:(0,d.GuP)(d.VFX),listFocusForeground:(0,d.GuP)(d.efJ),listFocusOutline:(0,d.GuP)(d.p7Y),listActiveSelectionBackground:(0,d.GuP)(d.Rjz),listActiveSelectionForeground:(0,d.GuP)(d.GVV),listActiveSelectionIconForeground:(0,d.GuP)(d.fED),listFocusAndSelectionOutline:(0,d.GuP)(d.gtq),listFocusAndSelectionBackground:(0,d.GuP)(d.Rjz),listFocusAndSelectionForeground:(0,d.GuP)(d.GVV),listInactiveSelectionBackground:(0,d.GuP)(d.uNx),listInactiveSelectionIconForeground:(0,d.GuP)(d.C9U),listInactiveSelectionForeground:(0,d.GuP)(d.f4y),listInactiveFocusBackground:(0,d.GuP)(d.CQ3),listInactiveFocusOutline:(0,d.GuP)(d.ijf),listHoverBackground:(0,d.GuP)(d.lO1),listHoverForeground:(0,d.GuP)(d.QRv),listDropOverBackground:(0,d.GuP)(d.Yoe),listDropBetweenBackground:(0,d.GuP)(d.yIp),listSelectionOutline:(0,d.GuP)(d.buw),listHoverOutline:(0,d.GuP)(d.buw),treeIndentGuidesStroke:(0,d.GuP)(d.U4U),treeInactiveIndentGuidesStroke:(0,d.GuP)(d.pft),treeStickyScrollBackground:void 0,treeStickyScrollBorder:void 0,treeStickyScrollShadow:(0,d.GuP)(d.bXl),tableColumnsBorder:(0,d.GuP)(d.k5u),tableOddRowsBackgroundColor:(0,d.GuP)(d.sbQ)};function o(a){let b={...n};for(let c in a){let e=a[c];b[c]=void 0!==e?(0,d.GuP)(e):void 0}return b}let p={selectBackground:(0,d.GuP)(d.rvE),selectListBackground:(0,d.GuP)(d.lWP),selectForeground:(0,d.GuP)(d.yqq),decoratorRightForeground:(0,d.GuP)(d.NBf),selectBorder:(0,d.GuP)(d.HcB),focusBorder:(0,d.GuP)(d.tAP),listFocusBackground:(0,d.GuP)(d.AlL),listInactiveSelectionIconForeground:(0,d.GuP)(d.c7i),listFocusForeground:(0,d.GuP)(d.nH),listFocusOutline:(0,d.HP_)(d.buw,e.Q1.transparent.toString()),listHoverBackground:(0,d.GuP)(d.lO1),listHoverForeground:(0,d.GuP)(d.QRv),listHoverOutline:(0,d.GuP)(d.buw),selectListBorder:(0,d.GuP)(d.sIe),listBackground:void 0,listActiveSelectionBackground:void 0,listActiveSelectionForeground:void 0,listActiveSelectionIconForeground:void 0,listFocusAndSelectionBackground:void 0,listDropOverBackground:void 0,listDropBetweenBackground:void 0,listInactiveSelectionBackground:void 0,listInactiveSelectionForeground:void 0,listInactiveFocusBackground:void 0,listInactiveFocusOutline:void 0,listSelectionOutline:void 0,listFocusAndSelectionForeground:void 0,listFocusAndSelectionOutline:void 0,listInactiveFocusForeground:void 0,tableColumnsBorder:void 0,tableOddRowsBackgroundColor:void 0,treeIndentGuidesStroke:void 0,treeInactiveIndentGuidesStroke:void 0,treeStickyScrollBackground:void 0,treeStickyScrollBorder:void 0,treeStickyScrollShadow:void 0},q={shadowColor:(0,d.GuP)(d.f9l),borderColor:(0,d.GuP)(d.g$2),foregroundColor:(0,d.GuP)(d.dd_),backgroundColor:(0,d.GuP)(d.c6Y),selectionForegroundColor:(0,d.GuP)(d.pmr),selectionBackgroundColor:(0,d.GuP)(d.Ux$),selectionBorderColor:(0,d.GuP)(d.SNb),separatorColor:(0,d.GuP)(d.D7X),scrollbarShadow:(0,d.GuP)(d.bXl),scrollbarSliderBackground:(0,d.GuP)(d.gnV),scrollbarSliderHoverBackground:(0,d.GuP)(d.cI_),scrollbarSliderActiveBackground:(0,d.GuP)(d.mhZ)}},11816:(a,b,c)=>{"use strict";c.d(b,{GM:()=>r,KL:()=>t,Kl:()=>l,Ob:()=>m,Ou:()=>q,XT:()=>o,Zb:()=>s,Zw:()=>n,bk:()=>p,dv:()=>k,wp:()=>u});var d=c(32665),e=c(10322),f=c(32245),g=c(76302),h=c(61203),i=c(88055);(0,h.x1A)("diffEditor.move.border","#8b8b8b9c",(0,g.kg)(134,"The border color for text that got moved in the diff editor.")),(0,h.x1A)("diffEditor.moveActive.border","#FFA500",(0,g.kg)(135,"The active border color for text that got moved in the diff editor.")),(0,h.x1A)("diffEditor.unchangedRegionShadow",{dark:"#000000",light:"#737373BF",hcDark:"#000000",hcLight:"#737373BF"},(0,g.kg)(136,"The color of the shadow around unchanged region widgets."));let j=(0,i.pU)("diff-insert",d.W.add,(0,g.kg)(137,"Line decoration for inserts in the diff editor.")),k=(0,i.pU)("diff-remove",d.W.remove,(0,g.kg)(138,"Line decoration for removals in the diff editor.")),l=f.kI.register({className:"line-insert",description:"line-insert",isWholeLine:!0,linesDecorationsClassName:"insert-sign "+e.L.asClassName(j),marginClassName:"gutter-insert"}),m=f.kI.register({className:"line-delete",description:"line-delete",isWholeLine:!0,linesDecorationsClassName:"delete-sign "+e.L.asClassName(k),marginClassName:"gutter-delete"}),n=f.kI.register({className:"line-insert",description:"line-insert",isWholeLine:!0,marginClassName:"gutter-insert"}),o=f.kI.register({className:"line-delete",description:"line-delete",isWholeLine:!0,marginClassName:"gutter-delete"}),p=f.kI.register({className:"char-insert",description:"char-insert",shouldFillLineOnLineBreak:!0}),q=f.kI.register({className:"char-insert",description:"char-insert",isWholeLine:!0}),r=f.kI.register({className:"char-insert diff-range-empty",description:"char-insert diff-range-empty"}),s=f.kI.register({className:"char-delete",description:"char-delete",shouldFillLineOnLineBreak:!0}),t=f.kI.register({className:"char-delete",description:"char-delete",isWholeLine:!0}),u=f.kI.register({className:"char-delete diff-range-empty",description:"char-delete diff-range-empty"})},12010:(a,b,c)=>{"use strict";c.d(b,{_:()=>e});var d=c(40201);class e extends d.jG{constructor(){super(...arguments),this._isDisposed=!1}dispose(){super.dispose(),this._isDisposed=!0}assertNotDisposed(){if(this._isDisposed)throw Error("TextModelPart is disposed!")}}},12235:(a,b,c)=>{"use strict";c.d(b,{B:()=>e,q:()=>l});var d,e,f=c(63048),g=c(93842),h=c(53135),i=c(3457),j=c(40201),k=c(57832);(d=e||(e={})).Tap="-monaco-gesturetap",d.Change="-monaco-gesturechange",d.Start="-monaco-gesturestart",d.End="-monaco-gesturesend",d.Contextmenu="-monaco-gesturecontextmenu";class l extends j.jG{static{this.SCROLL_FRICTION=-.005}static{this.HOLD_DELAY=700}static{this.CLEAR_TAP_COUNT_TIME=400}constructor(){super(),this.dispatched=!1,this.targets=new k.w,this.ignoreTargets=new k.w,this.activeTouches={},this.handle=null,this._lastSetTapCountTime=0,this._register(i.Jh.runAndSubscribe(f.Iv,({window:a,disposables:b})=>{b.add(f.ko(a.document,"touchstart",a=>this.onTouchStart(a),{passive:!1})),b.add(f.ko(a.document,"touchend",b=>this.onTouchEnd(a,b))),b.add(f.ko(a.document,"touchmove",a=>this.onTouchMove(a),{passive:!1}))},{window:g.G,disposables:this._store}))}static addTarget(a){if(!l.isTouchDevice())return j.jG.None;l.INSTANCE||(l.INSTANCE=(0,j.lC)(new l));let b=l.INSTANCE.targets.push(a);return(0,j.s)(b)}static ignoreTarget(a){if(!l.isTouchDevice())return j.jG.None;l.INSTANCE||(l.INSTANCE=(0,j.lC)(new l));let b=l.INSTANCE.ignoreTargets.push(a);return(0,j.s)(b)}static isTouchDevice(){return"ontouchstart"in g.G||navigator.maxTouchPoints>0}dispose(){this.handle&&(this.handle.dispose(),this.handle=null),super.dispose()}onTouchStart(a){let b=Date.now();this.handle&&(this.handle.dispose(),this.handle=null);for(let c=0,d=a.targetTouches.length;c<d;c++){let d=a.targetTouches.item(c);this.activeTouches[d.identifier]={id:d.identifier,initialTarget:d.target,initialTimeStamp:b,initialPageX:d.pageX,initialPageY:d.pageY,rollingTimestamps:[b],rollingPageX:[d.pageX],rollingPageY:[d.pageY]};let f=this.newGestureEvent(e.Start,d.target);f.pageX=d.pageX,f.pageY=d.pageY,this.dispatchEvent(f)}this.dispatched&&(a.preventDefault(),a.stopPropagation(),this.dispatched=!1)}onTouchEnd(a,b){let c=Date.now(),d=Object.keys(this.activeTouches).length;for(let f=0,g=b.changedTouches.length;f<g;f++){let g=b.changedTouches.item(f);if(!this.activeTouches.hasOwnProperty(String(g.identifier))){console.warn("move of an UNKNOWN touch",g);continue}let h=this.activeTouches[g.identifier],i=Date.now()-h.initialTimeStamp;if(i<l.HOLD_DELAY&&30>Math.abs(h.initialPageX-h.rollingPageX.at(-1))&&30>Math.abs(h.initialPageY-h.rollingPageY.at(-1))){let a=this.newGestureEvent(e.Tap,h.initialTarget);a.pageX=h.rollingPageX.at(-1),a.pageY=h.rollingPageY.at(-1),this.dispatchEvent(a)}else if(i>=l.HOLD_DELAY&&30>Math.abs(h.initialPageX-h.rollingPageX.at(-1))&&30>Math.abs(h.initialPageY-h.rollingPageY.at(-1))){let a=this.newGestureEvent(e.Contextmenu,h.initialTarget);a.pageX=h.rollingPageX.at(-1),a.pageY=h.rollingPageY.at(-1),this.dispatchEvent(a)}else if(1===d){let b=h.rollingPageX.at(-1),d=h.rollingPageY.at(-1),e=h.rollingTimestamps.at(-1)-h.rollingTimestamps[0],f=b-h.rollingPageX[0],g=d-h.rollingPageY[0],i=[...this.targets].filter(a=>h.initialTarget instanceof Node&&a.contains(h.initialTarget));this.inertia(a,i,c,Math.abs(f)/e,f>0?1:-1,b,Math.abs(g)/e,g>0?1:-1,d)}this.dispatchEvent(this.newGestureEvent(e.End,h.initialTarget)),delete this.activeTouches[g.identifier]}this.dispatched&&(b.preventDefault(),b.stopPropagation(),this.dispatched=!1)}newGestureEvent(a,b){let c=document.createEvent("CustomEvent");return c.initEvent(a,!1,!0),c.initialTarget=b,c.tapCount=0,c}dispatchEvent(a){if(a.type===e.Tap){let b=new Date().getTime(),c=0;c=b-this._lastSetTapCountTime>l.CLEAR_TAP_COUNT_TIME?1:2,this._lastSetTapCountTime=b,a.tapCount=c}else(a.type===e.Change||a.type===e.Contextmenu)&&(this._lastSetTapCountTime=0);if(a.initialTarget instanceof Node){for(let b of this.ignoreTargets)if(b.contains(a.initialTarget))return;let b=[];for(let c of this.targets)if(c.contains(a.initialTarget)){let d=0,e=a.initialTarget;for(;e&&e!==c;)d++,e=e.parentElement;b.push([d,c])}for(let[c,d]of(b.sort((a,b)=>a[0]-b[0]),b))d.dispatchEvent(a),this.dispatched=!0}}inertia(a,b,c,d,g,h,i,j,k){this.handle=f.PG(a,()=>{let f=Date.now(),m=f-c,n=0,o=0,p=!0;d+=l.SCROLL_FRICTION*m,i+=l.SCROLL_FRICTION*m,d>0&&(p=!1,n=g*d*m),i>0&&(p=!1,o=j*i*m);let q=this.newGestureEvent(e.Change);q.translationX=n,q.translationY=o,b.forEach(a=>a.dispatchEvent(q)),p||this.inertia(a,b,f,d,g,h+n,i,j,k+o)})}onTouchMove(a){let b=Date.now();for(let c=0,d=a.changedTouches.length;c<d;c++){let d=a.changedTouches.item(c);if(!this.activeTouches.hasOwnProperty(String(d.identifier))){console.warn("end of an UNKNOWN touch",d);continue}let f=this.activeTouches[d.identifier],g=this.newGestureEvent(e.Change,f.initialTarget);g.translationX=d.pageX-f.rollingPageX.at(-1),g.translationY=d.pageY-f.rollingPageY.at(-1),g.pageX=d.pageX,g.pageY=d.pageY,this.dispatchEvent(g),f.rollingPageX.length>3&&(f.rollingPageX.shift(),f.rollingPageY.shift(),f.rollingTimestamps.shift()),f.rollingPageX.push(d.pageX),f.rollingPageY.push(d.pageY),f.rollingTimestamps.push(b)}this.dispatched&&(a.preventDefault(),a.stopPropagation(),this.dispatched=!1)}}!function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);f>3&&g&&Object.defineProperty(b,c,g)}([h.B],l,"isTouchDevice",null)},12546:(a,b,c)=>{"use strict";c.d(b,{$b:()=>e,Cr:()=>t,DA:()=>x,Dk:()=>u,l8:()=>r,rr:()=>o,xd:()=>p});var d,e,f=c(3457),g=c(37417),h=c(40201),i=c(42727),j=c(38392),k=c(98896),l=c(99951),m=c(5738),n=c(21652);let o=(0,n.u1)("logService"),p=(0,n.u1)("loggerService");(d=e||(e={}))[d.Off=0]="Off",d[d.Trace=1]="Trace",d[d.Debug=2]="Debug",d[d.Info=3]="Info",d[d.Warning=4]="Warning",d[d.Error=5]="Error";let q=e.Info;function r(a,b){return a!==e.Off&&a<=b}class s extends h.jG{constructor(){super(...arguments),this.level=q,this._onDidChangeLogLevel=this._register(new f.vl)}get onDidChangeLogLevel(){return this._onDidChangeLogLevel.event}setLevel(a){this.level!==a&&(this.level=a,this._onDidChangeLogLevel.fire(this.level))}getLevel(){return this.level}checkLogLevel(a){return r(this.level,a)}canLog(a){return!this._store.isDisposed&&this.checkLogLevel(a)}}class t extends s{constructor(a=q,b=!0){super(),this.useColors=b,this.setLevel(a)}trace(a,...b){this.canLog(e.Trace)&&(this.useColors?console.log("%cTRACE","color: #888",a,...b):console.log(a,...b))}debug(a,...b){this.canLog(e.Debug)&&(this.useColors?console.log("%cDEBUG","background: #eee; color: #888",a,...b):console.log(a,...b))}info(a,...b){this.canLog(e.Info)&&(this.useColors?console.log("%c INFO","color: #33f",a,...b):console.log(a,...b))}warn(a,...b){this.canLog(e.Warning)&&(this.useColors?console.warn("%c WARN","color: #993",a,...b):console.log(a,...b))}error(a,...b){this.canLog(e.Error)&&(this.useColors?console.error("%c ERR","color: #f33",a,...b):console.error(a,...b))}}class u extends s{constructor(a){super(),this.loggers=a,a.length&&this.setLevel(a[0].getLevel())}setLevel(a){for(let b of this.loggers)b.setLevel(a);super.setLevel(a)}trace(a,...b){for(let c of this.loggers)c.trace(a,...b)}debug(a,...b){for(let c of this.loggers)c.debug(a,...b)}info(a,...b){for(let c of this.loggers)c.info(a,...b)}warn(a,...b){for(let c of this.loggers)c.warn(a,...b)}error(a,...b){for(let c of this.loggers)c.error(a,...b)}dispose(){for(let a of this.loggers)a.dispose();super.dispose()}}class v extends h.jG{constructor(a,b,c){if(super(),this.logLevel=a,this.logsHome=b,this._loggers=new i.fT,this._onDidChangeLoggers=this._register(new f.vl),this._onDidChangeVisibility=this._register(new f.vl),c)for(const a of c)this._loggers.set(a.resource,{logger:void 0,info:a})}getLoggerEntry(a){return(0,k.Kg)(a)?[...this._loggers.values()].find(b=>b.info.id===a):this._loggers.get(a)}createLogger(a,b){let c=this.toResource(a),d=(0,k.Kg)(a)?a:b?.id??(0,g.tW)(c.toString()).toString(16),f=this._loggers.get(c)?.logger,h=b?.logLevel==="always"?e.Trace:b?.logLevel;f||(f=this.doCreateLogger(c,h??this.getLogLevel(c)??this.logLevel,{...b,id:d}));let i={logger:f,info:{resource:c,id:d,logLevel:h,name:b?.name,hidden:b?.hidden,group:b?.group,extensionId:b?.extensionId,when:b?.when}};return this.registerLogger(i.info),this._loggers.set(c,i),f}toResource(a){return(0,k.Kg)(a)?(0,j.uJ)(this.logsHome,`${a}.log`):a}setVisibility(a,b){let c=this.getLoggerEntry(a);c&&!c.info.hidden!==b&&(c.info.hidden=!b,this._loggers.set(c.info.resource,c),this._onDidChangeVisibility.fire([c.info.resource,b]))}getLogLevel(a){let b;return a&&(b=this._loggers.get(a)?.info.logLevel),b??this.logLevel}registerLogger(a){let b=this._loggers.get(a.resource);b?b.info.hidden!==a.hidden&&this.setVisibility(a.resource,!a.hidden):(this._loggers.set(a.resource,{info:a,logger:void 0}),this._onDidChangeLoggers.fire({added:[a],removed:[]}))}dispose(){this._loggers.forEach(a=>a.logger?.dispose()),this._loggers.clear(),super.dispose()}}class w{constructor(){this.onDidChangeLogLevel=new f.vl().event}setLevel(a){}getLevel(){return e.Info}trace(a){}debug(a){}info(a){}warn(a){}error(a){}dispose(){}}class x extends v{constructor(){super(e.Off,l.r.parse("log:///log"))}doCreateLogger(a,b,c){return new w}}new m.N1("logLevel",function(a){switch(a){case e.Trace:return"trace";case e.Debug:return"debug";case e.Info:return"info";case e.Warning:return"warn";case e.Error:return"error";case e.Off:return"off"}}(e.Info))},12592:()=>{},12995:(a,b,c)=>{"use strict";c.d(b,{YW:()=>B,qg:()=>C});var d=c(91849),e=c(3717),f=c(42727),g=c(45006),h=c(19254),i=c(77747);let j="[/\\\\]",k="[^/\\\\]",l=/\//g;function m(a,b){switch(a){case 0:return"";case 1:return`${k}*?`;default:return`(?:${j}|${k}+${j}${b?`|${j}${k}+`:""})*?`}}function n(a,b){if(!a)return[];let c=[],d=!1,e=!1,f="";for(let g of a){switch(g){case b:if(!d&&!e){c.push(f),f="";continue}break;case"{":d=!0;break;case"}":d=!1;break;case"[":e=!0;break;case"]":e=!1}f+=g}return f&&c.push(f),c}let o=/^\*\*\/\*\.[\w\.-]+$/,p=/^\*\*\/([\w\.-]+)\/?$/,q=/^{\*\*\/\*?[\w\.-]+\/?(,\*\*\/\*?[\w\.-]+\/?)*}$/,r=/^{\*\*\/\*?[\w\.-]+(\/(\*\*)?)?(,\*\*\/\*?[\w\.-]+(\/(\*\*)?)?)*}$/,s=/^\*\*((\/[\w\.-]+)+)\/?$/,t=/^([\w\.-]+(\/[\w\.-]+)*)\/?$/,u=new f.qK(1e4),v=function(){return!1},w=function(){return null};function x(a,b){var c,d,e,f;let g,h,l,v,B,C;if(!a)return w;g=(g="string"!=typeof a?a.pattern:a).trim();let E=`${g}_${!!b.trimForExclusions}`,F=u.get(E);return F||(F=o.test(g)?(c=g.substr(4),d=g,function(a,b){return"string"==typeof a&&a.endsWith(c)?d:null}):(h=p.exec(z(g,b)))?(e=h[1],f=g,l=`/${e}`,v=`\\${e}`,(B=function(a,b){return"string"!=typeof a?null:b?b===e?f:null:a===e||a.endsWith(l)||a.endsWith(v)?f:null}).basenames=C=[e],B.patterns=[f],B.allBasenames=C,B):(b.trimForExclusions?r:q).test(g)?function(a,b){let c=D(a.slice(1,-1).split(",").map(a=>x(a,b)).filter(a=>a!==w),a),d=c.length;if(!d)return w;if(1===d)return c[0];let e=function(b,d){for(let e=0,f=c.length;e<f;e++)if(c[e](b,d))return a;return null},f=c.find(a=>!!a.allBasenames);f&&(e.allBasenames=f.allBasenames);let g=c.reduce((a,b)=>b.allPaths?a.concat(b.allPaths):a,[]);return g.length&&(e.allPaths=g),e}(g,b):(h=s.exec(z(g,b)))?A(h[1].substr(1),g,!0):(h=t.exec(z(g,b)))?A(h[1],g,!1):function(a){try{let b=RegExp(`^${function a(b){if(!b)return"";let c="",d=n(b,"/");if(d.every(a=>"**"===a))c=".*";else{let b=!1;d.forEach((e,f)=>{if("**"===e){if(b)return;c+=m(2,f===d.length-1)}else{let b=!1,g="",h=!1,l="";for(let d of e){if("}"!==d&&b){g+=d;continue}if(h&&("]"!==d||!l)){let a;a="-"===d?d:"^"!==d&&"!"!==d||l?"/"===d?"":(0,i.bm)(d):"^",l+=a;continue}switch(d){case"{":b=!0;continue;case"[":h=!0;continue;case"}":{let d=n(g,","),e=`(?:${d.map(b=>a(b)).join("|")})`;c+=e,b=!1,g="";break}case"]":c+="["+l+"]",h=!1,l="";break;case"?":c+=k;continue;case"*":c+=m(1);continue;default:c+=(0,i.bm)(d)}}f<d.length-1&&("**"!==d[f+1]||f+2<d.length)&&(c+=j)}b="**"===e})}return c}(a)}$`);return function(c){return b.lastIndex=0,"string"==typeof c&&b.test(c)?a:null}}catch(a){return w}}(g),u.set(E,F)),y(F,a)}function y(a,b){if("string"==typeof b)return a;let c=function(c,d){return(0,e._1)(c,b.base,!h.j9)?a((0,i.NB)(c.substr(b.base.length),g.Vn),d):null};return c.allBasenames=a.allBasenames,c.allPaths=a.allPaths,c.basenames=a.basenames,c.patterns=a.patterns,c}function z(a,b){return b.trimForExclusions&&a.endsWith("/**")?a.substr(0,a.length-2):a}function A(a,b,c){let d,e=g.Vn===g.SA.sep,f=e?a:a.replace(l,g.Vn),h=g.Vn+f,i=g.SA.sep+a;return(d=c?function(c,d){return"string"==typeof c&&(c===f||c.endsWith(h)||!e&&(c===a||c.endsWith(i)))?b:null}:function(c,d){return"string"!=typeof c||c!==f&&(e||c!==a)?null:b}).allPaths=[(c?"*/":"./")+a],d}function B(a,b,c){return!!a&&"string"==typeof b&&C(a)(b,void 0,c)}function C(a,b={}){var c;if(!a)return v;if("string"==typeof a||(c=a)&&"string"==typeof c.base&&"string"==typeof c.pattern){let c=x(a,b);if(c===w)return v;let d=function(a,b){return!!c(a,b)};return c.allBasenames&&(d.allBasenames=c.allBasenames),c.allPaths&&(d.allPaths=c.allPaths),d}return function(a,b){let c=D(Object.getOwnPropertyNames(a).map(c=>(function(a,b,c){if(!1===b)return w;let e=x(a,c);if(e===w)return w;if("boolean"==typeof b)return e;if(b){let c=b.when;if("string"==typeof c){let b=(b,f,g,h)=>{if(!h||!e(b,f))return null;let i=h(c.replace("$(basename)",()=>g));return(0,d.Qg)(i)?i.then(b=>b?a:null):i?a:null};return b.requiresSiblings=!0,b}}return e})(c,a[c],b)).filter(a=>a!==w)),e=c.length;if(!e)return w;if(!c.some(a=>!!a.requiresSiblings)){if(1===e)return c[0];let a=function(a,b){let e;for(let f=0,g=c.length;f<g;f++){let g=c[f](a,b);if("string"==typeof g)return g;(0,d.Qg)(g)&&(e||(e=[]),e.push(g))}return e?(async()=>{for(let a of e){let b=await a;if("string"==typeof b)return b}return null})():null},b=c.find(a=>!!a.allBasenames);b&&(a.allBasenames=b.allBasenames);let f=c.reduce((a,b)=>b.allPaths?a.concat(b.allPaths):a,[]);return f.length&&(a.allPaths=f),a}let f=function(a,b,e){let f,h;for(let i=0,j=c.length;i<j;i++){let j=c[i];j.requiresSiblings&&e&&(b||(b=(0,g.P8)(a)),f||(f=b.substr(0,b.length-(0,g.LC)(a).length)));let k=j(a,b,f,e);if("string"==typeof k)return k;(0,d.Qg)(k)&&(h||(h=[]),h.push(k))}return h?(async()=>{for(let a of h){let b=await a;if("string"==typeof b)return b}return null})():null},h=c.find(a=>!!a.allBasenames);h&&(f.allBasenames=h.allBasenames);let i=c.reduce((a,b)=>b.allPaths?a.concat(b.allPaths):a,[]);return i.length&&(f.allPaths=i),f}(a,b)}function D(a,b){let c,d=a.filter(a=>!!a.basenames);if(d.length<2)return a;let e=d.reduce((a,b)=>{let c=b.basenames;return c?a.concat(c):a},[]);if(b){c=[];for(let a=0,d=e.length;a<d;a++)c.push(b)}else c=d.reduce((a,b)=>{let c=b.patterns;return c?a.concat(c):a},[]);let f=function(a,b){if("string"!=typeof a)return null;if(!b){let c;for(c=a.length;c>0;c--){let b=a.charCodeAt(c-1);if(47===b||92===b)break}b=a.substr(c)}let d=e.indexOf(b);return -1!==d?c[d]:null};f.basenames=e,f.patterns=c,f.allBasenames=e;let g=a.filter(a=>!a.basenames);return g.push(f),g}},13558:(a,b,c)=>{"use strict";c.d(b,{$:()=>r});var d=c(63048),e=c(94615),f=c(98900),g=c(12235),h=c(29501),i=c(39331),j=c(81034),k=c(3457),l=c(5379),m=c(40201),n=c(10322);c(36730);var o=c(87445),p=c(18377);j.Q1.white.toString(),j.Q1.white.toString();let q=Object.freeze({allowedTags:{override:["b","i","u","code","span"]},allowedAttributes:{override:["class"]}});class r extends m.jG{get onDidClick(){return this._onDidClick.event}constructor(a,b){super(),this._label="",this._onDidClick=this._register(new k.vl),this._onDidEscape=this._register(new k.vl),this.options=b,this._element=document.createElement("a"),this._element.classList.add("monaco-button"),this._element.tabIndex=0,this._element.setAttribute("role","button"),this._element.classList.toggle("secondary",!!b.secondary);const c=b.secondary?b.buttonSecondaryBackground:b.buttonBackground,f=b.secondary?b.buttonSecondaryForeground:b.buttonForeground;this._element.style.color=f||"",this._element.style.backgroundColor=c||"",b.supportShortLabel&&(this._labelShortElement=document.createElement("div"),this._labelShortElement.classList.add("monaco-button-label-short"),this._element.appendChild(this._labelShortElement),this._labelElement=document.createElement("div"),this._labelElement.classList.add("monaco-button-label"),this._element.appendChild(this._labelElement),this._element.classList.add("monaco-text-button-with-short-label")),"string"==typeof b.title&&this.setTitle(b.title),"string"==typeof b.ariaLabel&&this._element.setAttribute("aria-label",b.ariaLabel),a.appendChild(this._element),this.enabled=!b.disabled,this._register(g.q.addTarget(this._element)),[d.Bx.CLICK,g.B.Tap].forEach(a=>{this._register((0,d.ko)(this._element,a,a=>{this.enabled?this._onDidClick.fire(a):d.fs.stop(a)}))}),this._register((0,d.ko)(this._element,d.Bx.KEY_DOWN,a=>{let b=new e.Z(a),c=!1;this.enabled&&(b.equals(3)||b.equals(10))?(this._onDidClick.fire(a),c=!0):b.equals(9)&&(this._onDidEscape.fire(a),this._element.blur(),c=!0),c&&d.fs.stop(b,!0)})),this._register((0,d.ko)(this._element,d.Bx.MOUSE_OVER,a=>{this._element.classList.contains("disabled")||this.updateBackground(!0)})),this._register((0,d.ko)(this._element,d.Bx.MOUSE_OUT,a=>{this.updateBackground(!1)})),this.focusTracker=this._register((0,d.w5)(this._element)),this._register(this.focusTracker.onDidFocus(()=>{this.enabled&&this.updateBackground(!0)})),this._register(this.focusTracker.onDidBlur(()=>{this.enabled&&this.updateBackground(!1)}))}dispose(){super.dispose(),this._element.remove()}getContentElements(a){let b=[];for(let c of(0,i.n)(a))if("string"==typeof c){if(""===(c=c.trim()))continue;let a=document.createElement("span");a.textContent=c,b.push(a)}else b.push(c);return b}updateBackground(a){let b;(b=this.options.secondary?a?this.options.buttonSecondaryHoverBackground:this.options.buttonSecondaryBackground:a?this.options.buttonHoverBackground:this.options.buttonBackground)&&(this._element.style.backgroundColor=b)}get element(){return this._element}set label(a){if(this._label===a||(0,l.VS)(this._label)&&(0,l.VS)(a)&&(0,l.nK)(this._label,a))return;this._element.classList.add("monaco-text-button");let b=this.options.supportShortLabel?this._labelElement:this._element;if((0,l.VS)(a)){let c=(0,f.Gc)(a,void 0,document.createElement("span"));c.dispose();let e=c.element.querySelector("p")?.innerHTML;e?(0,p.D$)(b,e,q):(0,d.Ln)(b)}else this.options.supportIcons?(0,d.Ln)(b,...this.getContentElements(a)):b.textContent=a;let c="";"string"==typeof this.options.title?c=this.options.title:this.options.title&&(c=(0,f.Mh)(a)),this.setTitle(c),this._setAriaLabel(),this._label=a}get label(){return this._label}_setAriaLabel(){"string"==typeof this.options.ariaLabel?this._element.setAttribute("aria-label",this.options.ariaLabel):"string"==typeof this.options.title&&this._element.setAttribute("aria-label",this.options.title)}set icon(a){this._setAriaLabel();let b=Array.from(this._element.classList).filter(a=>a.startsWith("codicon-"));this._element.classList.remove(...b),this._element.classList.add(...n.L.asClassNameArray(a))}set enabled(a){a?(this._element.classList.remove("disabled"),this._element.setAttribute("aria-disabled",String(!1)),this._element.tabIndex=0):(this._element.classList.add("disabled"),this._element.setAttribute("aria-disabled",String(!0)))}get enabled(){return!this._element.classList.contains("disabled")}setTitle(a){this._hover||""===a?this._hover&&this._hover.update(a):this._hover=this._register((0,o.i)().setupManagedHover(this.options.hoverDelegate??(0,h.nZ)("element"),this._element,a))}}},13845:()=>{},14037:()=>{},14061:(a,b,c)=>{"use strict";c.d(b,{Fd:()=>l,Gy:()=>i,Pz:()=>k,Yf:()=>j,lR:()=>p,zy:()=>o});var d=c(3457),e=c(40201),f=c(21652),g=c(53764),h=c(30908);let i=(0,f.u1)("themeService");function j(a){return{id:a}}function k(a){switch(a){case h.zM.DARK:return h.X2.VS_DARK;case h.zM.HIGH_CONTRAST_DARK:return h.X2.HC_BLACK;case h.zM.HIGH_CONTRAST_LIGHT:return h.X2.HC_LIGHT;default:return h.X2.VS}}let l={ThemingContribution:"base.contributions.theming"};class m extends e.jG{constructor(){super(),this.themingParticipants=[],this.themingParticipants=[],this.onThemingParticipantAddedEmitter=this._register(new d.vl)}onColorThemeChange(a){return this.themingParticipants.push(a),this.onThemingParticipantAddedEmitter.fire(a),(0,e.s)(()=>{let b=this.themingParticipants.indexOf(a);this.themingParticipants.splice(b,1)})}getThemingParticipants(){return this.themingParticipants}}let n=new m;function o(a){return n.onColorThemeChange(a)}g.O.add(l.ThemingContribution,n);class p extends e.jG{constructor(a){super(),this.themeService=a,this.theme=a.getColorTheme(),this._register(this.themeService.onDidColorThemeChange(a=>this.onThemeChange(a)))}onThemeChange(a){this.theme=a,this.updateStyles()}updateStyles(){}}},14699:()=>{},15143:()=>{},15522:(a,b,c)=>{"use strict";c.d(b,{HS:()=>g,qR:()=>h,xW:()=>f});var d=c(88586),e=c(40201);let f=new Float32Array([1,0,1,1,0,1,0,0,0,1,1,0]);function g(a){if(!a)throw Error(`Value "${a}" cannot be null`);return a}function h(a,b,c){let f=new b.ResizeObserver(b=>{let d=b.find(b=>b.target===a);if(!d)return;if(!("devicePixelContentBoxSize"in d)){f?.disconnect(),f=void 0;return}let e=d.devicePixelContentBoxSize[0].inlineSize,g=d.devicePixelContentBoxSize[0].blockSize;e>0&&g>0&&c(e,g)});try{f.observe(a,{box:["device-pixel-content-box"]})}catch{throw f.disconnect(),f=void 0,new d.D7("Could not observe device pixel dimensions")}return(0,e.s)(()=>f?.disconnect())}},15676:()=>{},15991:(a,b,c)=>{"use strict";c.d(b,{GP:()=>h,LM:()=>f,Uv:()=>j,nt:()=>g,qL:()=>i});var d=c(42891),e=c(77747);class f{constructor(a,b,c,d){this._viewportBrand=void 0,this.top=0|a,this.left=0|b,this.width=0|c,this.height=0|d}}class g{constructor(a,b){this.tabSize=a,this.data=b}}class h{constructor(a,b,c,d,e,f,g){this._viewLineDataBrand=void 0,this.content=a,this.continuesWithWrappedLine=b,this.minColumn=c,this.maxColumn=d,this.startVisibleColumn=e,this.tokens=f,this.inlineDecorations=g}}class i{constructor(a,b,c,d,e,f,g,h,j,k,l,m){this.minColumn=a,this.maxColumn=b,this.content=c,this.continuesWithWrappedLine=d,this.isBasicASCII=i.isBasicASCII(c,f),this.containsRTL=i.containsRTL(c,this.isBasicASCII,e),this.tokens=g,this.inlineDecorations=h,this.tabSize=j,this.startVisibleColumn=k,this.textDirection=l,this.hasVariableFonts=m}static isBasicASCII(a,b){return!b||e.aC(a)}static containsRTL(a,b,c){return!b&&!!c&&e.E_(a)}}class j{constructor(a,b,c){this.color=a,this.zIndex=b,this.data=c}static compareByRenderingProps(a,b){return a.zIndex===b.zIndex?a.color<b.color?-1:+(a.color>b.color):a.zIndex-b.zIndex}static equals(a,b){return a.color===b.color&&a.zIndex===b.zIndex&&d.aI(a.data,b.data)}static equalsArr(a,b){return d.aI(a,b,j.equals)}}},16236:(a,b,c)=>{"use strict";c.d(b,{GN:()=>e,a6:()=>f,vo:()=>d,wc:()=>g});class d{constructor(a,b){this._viewModelDecorationBrand=void 0,this.range=a,this.options=b}}function e(a,b){return!(b.options.hideInCommentTokens&&f(a,b)||b.options.hideInStringTokens&&g(a,b))}function f(a,b){return h(a,b.range,a=>1===a)}function g(a,b){return h(a,b.range,a=>2===a)}function h(a,b,c){for(let d=b.startLineNumber;d<=b.endLineNumber;d++){let e=a.tokenization.getLineTokens(d),f=d===b.startLineNumber,g=d===b.endLineNumber,h=f?e.findTokenIndexAtOffset(b.startColumn-1):0;for(;h<e.getCount()&&!(g&&e.getStartOffset(h)>b.endColumn-1);){if(!c(e.getStandardTokenType(h)))return!1;h++}}return!0}},16474:(a,b,c)=>{"use strict";c.d(b,{G$:()=>i,Of:()=>f,r0:()=>g,rr:()=>h});var d=c(76302);class e{constructor(a,b,c=b){this.modifierLabels=[null],this.modifierLabels[2]=a,this.modifierLabels[1]=b,this.modifierLabels[3]=c}toLabel(a,b,c){if(0===b.length)return null;let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=c(f);if(null===g)return null;d[e]=function(a,b,c){if(null===b)return"";let d=[];return a.ctrlKey&&d.push(c.ctrlKey),a.shiftKey&&d.push(c.shiftKey),a.altKey&&d.push(c.altKey),a.metaKey&&d.push(c.metaKey),""!==b&&d.push(b),d.join(c.separator)}(f,g,this.modifierLabels[a])}return d.join(" ")}}let f=new e({ctrlKey:"⌃",shiftKey:"⇧",altKey:"⌥",metaKey:"⌘",separator:""},{ctrlKey:d.kg(35,"Ctrl"),shiftKey:d.kg(36,"Shift"),altKey:d.kg(37,"Alt"),metaKey:d.kg(38,"Windows"),separator:"+"},{ctrlKey:d.kg(39,"Ctrl"),shiftKey:d.kg(40,"Shift"),altKey:d.kg(41,"Alt"),metaKey:d.kg(42,"Super"),separator:"+"}),g=new e({ctrlKey:d.kg(43,"Control"),shiftKey:d.kg(44,"Shift"),altKey:d.kg(45,"Option"),metaKey:d.kg(46,"Command"),separator:"+"},{ctrlKey:d.kg(47,"Control"),shiftKey:d.kg(48,"Shift"),altKey:d.kg(49,"Alt"),metaKey:d.kg(50,"Windows"),separator:"+"},{ctrlKey:d.kg(51,"Control"),shiftKey:d.kg(52,"Shift"),altKey:d.kg(53,"Alt"),metaKey:d.kg(54,"Super"),separator:"+"}),h=new e({ctrlKey:"Ctrl",shiftKey:"Shift",altKey:"Alt",metaKey:"Cmd",separator:"+"},{ctrlKey:"Ctrl",shiftKey:"Shift",altKey:"Alt",metaKey:"Super",separator:"+"}),i=new e({ctrlKey:"ctrl",shiftKey:"shift",altKey:"alt",metaKey:"cmd",separator:"+"},{ctrlKey:"ctrl",shiftKey:"shift",altKey:"alt",metaKey:"win",separator:"+"},{ctrlKey:"ctrl",shiftKey:"shift",altKey:"alt",metaKey:"meta",separator:"+"})},17477:(a,b,c)=>{"use strict";c.d(b,{F:()=>g});var d=c(3457),e=c(40201),f=c(53764);let g={JSONContribution:"base.contributions.json"};class h extends e.jG{constructor(){super(...arguments),this.schemasById={},this._onDidChangeSchema=this._register(new d.vl)}registerSchema(a,b,c){let d=a.length>0&&"#"===a.charAt(a.length-1)?a.substring(0,a.length-1):a;this.schemasById[d]=b,this._onDidChangeSchema.fire(a),c&&c.add((0,e.s)(()=>{delete this.schemasById[d],this._onDidChangeSchema.fire(a)}))}notifySchemaChanged(a){this._onDidChangeSchema.fire(a)}}let i=new h;f.O.add(g.JSONContribution,i)},17821:(a,b,c)=>{"use strict";c.d(b,{D:()=>d});class d{static capture(a){if(0===a.getScrollTop()||a.hasPendingScrollAnimation())return new d(a.getScrollTop(),a.getContentHeight(),null,0,null);let b=null,c=0,e=a.getVisibleRanges();if(e.length>0){b=e[0].getStartPosition();let d=a.getTopForPosition(b.lineNumber,b.column);c=a.getScrollTop()-d}return new d(a.getScrollTop(),a.getContentHeight(),b,c,a.getPosition())}constructor(a,b,c,d,e){this._initialScrollTop=a,this._initialContentHeight=b,this._visiblePosition=c,this._visiblePositionScrollDelta=d,this._cursorPosition=e}restore(a){if((this._initialContentHeight!==a.getContentHeight()||this._initialScrollTop!==a.getScrollTop())&&this._visiblePosition){let b=a.getTopForPosition(this._visiblePosition.lineNumber,this._visiblePosition.column);a.setScrollTop(b+this._visiblePositionScrollDelta)}}restoreRelativeVerticalPositionOfCursor(a){if(this._initialContentHeight===a.getContentHeight()&&this._initialScrollTop===a.getScrollTop())return;let b=a.getPosition();if(!this._cursorPosition||!b)return;let c=a.getTopForLineNumber(b.lineNumber)-a.getTopForLineNumber(this._cursorPosition.lineNumber);a.setScrollTop(a.getScrollTop()+c,1)}}},17887:(a,b,c)=>{"use strict";c.d(b,{mJ:()=>w,x8:()=>u});var d=c(63048),e=c(7806),f=c(1644);class g{constructor(a){this.source=a,this.index=0}eos(){return this.index>=this.source.length}next(){let a=this.peek();return this.advance(),a}peek(){return this.source[this.index]}advance(){this.index++}}function h(a,b){switch(a){case"*":return 3;case"_":return 4;case"[":return 5;case"]":return 6;case"`":return 7*!!b;default:return 0}}var i=c(70200),j=c(3824),k=c(87445),l=c(72766),m=c(8211),n=c(3457);class o{constructor(a,b=0,c=a.length,d=b-1){this.items=a,this.start=b,this.end=c,this.index=d}current(){return this.index===this.start-1||this.index===this.end?null:this.items[this.index]}next(){return this.index=Math.min(this.index+1,this.end),this.current()}previous(){return this.index=Math.max(this.index-1,this.start-1),this.current()}first(){return this.index=this.start,this.current()}last(){return this.index=this.end-1,this.current()}}class p{constructor(a=new Set,b=10){this._history=a,this._limit=b,this._onChange(),this._history.onDidChange&&(this._disposable=this._history.onDidChange(()=>this._onChange()))}getHistory(){return this._elements}add(a){this._history.delete(a),this._history.add(a),this._onChange()}next(){return this._navigator.next()}previous(){return 0!==this._currentPosition()?this._navigator.previous():null}current(){return this._navigator.current()}first(){return this._navigator.first()}last(){return this._navigator.last()}isLast(){return this._currentPosition()>=this._elements.length-1}isNowhere(){return null===this._navigator.current()}has(a){return this._history.has(a)}_onChange(){this._reduceToLimit();let a=this._elements;this._navigator=new o(a,0,a.length,a.length)}_reduceToLimit(){let a=this._elements;if(a.length>this._limit){let b=a.slice(a.length-this._limit);this._history.replace?this._history.replace(b):this._history=new Set(b)}}_currentPosition(){let a=this._navigator.current();return a?this._elements.indexOf(a):-1}get _elements(){let a=[];return this._history.forEach(b=>a.push(b)),a}dispose(){this._disposable&&(this._disposable.dispose(),this._disposable=void 0)}}var q=c(50689);c(95356);var r=c(76302),s=c(40201);let t=d.$,u={inputBackground:"#3C3C3C",inputForeground:"#CCCCCC",inputValidationInfoBorder:"#55AAFF",inputValidationInfoBackground:"#063B49",inputValidationWarningBorder:"#B89500",inputValidationWarningBackground:"#352A05",inputValidationErrorBorder:"#BE1100",inputValidationErrorBackground:"#5A1D1D",inputBorder:void 0,inputValidationErrorForeground:void 0,inputValidationInfoForeground:void 0,inputValidationWarningForeground:void 0};class v extends m.x{get onDidChange(){return this._onDidChange.event}get onDidHeightChange(){return this._onDidHeightChange.event}constructor(a,b,c){super(),this.state="idle",this.maxHeight=1/0,this.hover=this._register(new s.HE),this._onDidChange=this._register(new n.vl),this._onDidHeightChange=this._register(new n.vl),this.contextViewProvider=b,this.options=c,this.message=null,this.placeholder=this.options.placeholder||"",this.tooltip=this.options.tooltip??(this.placeholder||""),this.ariaLabel=this.options.ariaLabel||"",this.options.validationOptions&&(this.validation=this.options.validationOptions.validation),this.element=d.BC(a,t(".monaco-inputbox.idle"));const e=this.options.flexibleHeight?"textarea":"input",g=d.BC(this.element,t(".ibwrapper"));if(this.input=d.BC(g,t(e+".input.empty")),this.input.setAttribute("autocorrect","off"),this.input.setAttribute("autocapitalize","off"),this.input.setAttribute("spellcheck","false"),this.onfocus(this.input,()=>this.element.classList.add("synthetic-focus")),this.onblur(this.input,()=>this.element.classList.remove("synthetic-focus")),this.options.flexibleHeight){this.maxHeight="number"==typeof this.options.flexibleMaxHeight?this.options.flexibleMaxHeight:1/0,this.mirror=d.BC(g,t("div.mirror")),this.mirror.innerText="\xa0",this.scrollableElement=new l.Se(this.element,{vertical:1}),this.options.flexibleWidth&&(this.input.setAttribute("wrap","off"),this.mirror.style.whiteSpace="pre",this.mirror.style.wordWrap="initial"),d.BC(a,this.scrollableElement.getDomNode()),this._register(this.scrollableElement),this._register(this.scrollableElement.onScroll(a=>this.input.scrollTop=a.scrollTop));const b=this._register(new f.f(a.ownerDocument,"selectionchange")),c=n.Jh.filter(b.event,()=>{let b=a.ownerDocument.getSelection();return b?.anchorNode===g});this._register(c(this.updateScrollDimensions,this)),this._register(this.onDidHeightChange(this.updateScrollDimensions,this))}else this.input.type=this.options.type||"text",this.input.setAttribute("wrap","off");this.ariaLabel&&this.input.setAttribute("aria-label",this.ariaLabel),this.placeholder&&!this.options.showPlaceholderOnFocus&&this.setPlaceHolder(this.placeholder),this.tooltip&&this.setTooltip(this.tooltip),this.oninput(this.input,()=>this.onValueChange()),this.onblur(this.input,()=>this.onBlur()),this.onfocus(this.input,()=>this.onFocus()),this._register(this.ignoreGesture(this.input)),setTimeout(()=>this.updateMirror(),0),this.options.actions&&(this.actionbar=this._register(new i.E(this.element)),this.actionbar.push(this.options.actions,{icon:!0,label:!1})),this.applyStyles()}onBlur(){this._hideMessage(),this.options.showPlaceholderOnFocus&&this.input.setAttribute("placeholder","")}onFocus(){this._showMessage(),this.options.showPlaceholderOnFocus&&this.input.setAttribute("placeholder",this.placeholder||"")}setPlaceHolder(a){this.placeholder=a,this.input.setAttribute("placeholder",a)}setTooltip(a){this.tooltip=a,this.hover.value||(this.hover.value=this._register((0,k.i)().setupDelayedHoverAtMouse(this.input,()=>({content:this.tooltip,appearance:{compact:!0}}))))}get inputElement(){return this.input}get value(){return this.input.value}set value(a){this.input.value!==a&&(this.input.value=a,this.onValueChange())}get height(){return"number"==typeof this.cachedHeight?this.cachedHeight:d.OK(this.element)}focus(){this.input.focus()}blur(){this.input.blur()}hasFocus(){return d.X7(this.input)}select(a=null){this.input.select(),a&&(this.input.setSelectionRange(a.start,a.end),a.end===this.input.value.length&&(this.input.scrollLeft=this.input.scrollWidth))}isSelectionAtEnd(){return this.input.selectionEnd===this.input.value.length&&this.input.selectionStart===this.input.selectionEnd}getSelection(){let a=this.input.selectionStart;if(null===a)return null;let b=this.input.selectionEnd??a;return{start:a,end:b}}enable(){this.input.removeAttribute("disabled")}disable(){this.blur(),this.input.disabled=!0,this._hideMessage()}set paddingRight(a){this.input.style.width=`calc(100% - ${a}px)`,this.mirror&&(this.mirror.style.paddingRight=a+"px")}updateScrollDimensions(){if("number"!=typeof this.cachedContentHeight||"number"!=typeof this.cachedHeight||!this.scrollableElement)return;let a=this.cachedContentHeight,b=this.cachedHeight,c=this.input.scrollTop;this.scrollableElement.setScrollDimensions({scrollHeight:a,height:b}),this.scrollableElement.setScrollPosition({scrollTop:c})}showMessage(a,b){if("open"===this.state&&(0,q.aI)(this.message,a))return;this.message=a,this.element.classList.remove("idle"),this.element.classList.remove("info"),this.element.classList.remove("warning"),this.element.classList.remove("error"),this.element.classList.add(this.classForType(a.type));let c=this.stylesForType(this.message.type);this.element.style.border=`1px solid ${e.gI(c.border,"transparent")}`,this.message.content&&(this.hasFocus()||b)&&this._showMessage()}hideMessage(){this.message=null,this.element.classList.remove("info"),this.element.classList.remove("warning"),this.element.classList.remove("error"),this.element.classList.add("idle"),this._hideMessage(),this.applyStyles()}validate(){let a=null;return this.validation&&((a=this.validation(this.value))?(this.inputElement.setAttribute("aria-invalid","true"),this.showMessage(a)):this.inputElement.hasAttribute("aria-invalid")&&(this.inputElement.removeAttribute("aria-invalid"),this.hideMessage())),a?.type}stylesForType(a){let b=this.options.inputBoxStyles;switch(a){case 1:return{border:b.inputValidationInfoBorder,background:b.inputValidationInfoBackground,foreground:b.inputValidationInfoForeground};case 2:return{border:b.inputValidationWarningBorder,background:b.inputValidationWarningBackground,foreground:b.inputValidationWarningForeground};default:return{border:b.inputValidationErrorBorder,background:b.inputValidationErrorBackground,foreground:b.inputValidationErrorForeground}}}classForType(a){switch(a){case 1:return"info";case 2:return"warning";default:return"error"}}_showMessage(){let a,b;if(!this.contextViewProvider||!this.message)return;let c=()=>a.style.width=d.Tr(this.element)+"px";this.contextViewProvider.showContextView({getAnchor:()=>this.element,anchorAlignment:1,render:b=>{var e,f,i;if(!this.message)return null;a=d.BC(b,t(".monaco-inputbox-container")),c();let j=t("span.monaco-inputbox-message");if(this.message.formatContent){let a;e=this.message.content,f=void 0,(a=j??document.createElement("div")).textContent="",function a(b,c,e,f){let g;if(2===c.type)g=document.createTextNode(c.content||"");else if(3===c.type)g=document.createElement("b");else if(4===c.type)g=document.createElement("i");else if(7===c.type&&f)g=document.createElement("code");else if(5===c.type&&e){let a=document.createElement("a");e.disposables.add(d.un(a,"click",a=>{e.callback(String(c.index),a)})),g=a}else 8===c.type?g=document.createElement("br"):1===c.type&&(g=b);g&&b!==g&&b.appendChild(g),g&&Array.isArray(c.children)&&c.children.forEach(b=>{a(g,b,e,f)})}(a,function(a,b){let c={type:1,children:[]},d=0,e=c,f=[],i=new g(a);for(;!i.eos();){let a=i.next(),c="\\"===a&&0!==h(i.peek(),b);if(c&&(a=i.next()),c||0===h(a,b)||a!==i.peek())if("\n"===a)2===e.type&&(e=f.pop()),e.children.push({type:8});else if(2!==e.type){let b={type:2,content:a};e.children.push(b),f.push(e),e=b}else e.content+=a;else{i.advance(),2===e.type&&(e=f.pop());let c=h(a,b);if(e.type===c||5===e.type&&6===c)e=f.pop();else{let a={type:c,children:[]};5===c&&(a.index=d,d++),e.children.push(a),f.push(e),e=a}}}return 2===e.type&&(e=f.pop()),f.length,c}(e,!!f?.renderCodeSegments),f?.actionHandler,f?.renderCodeSegments)}else i=this.message.content,(j??document.createElement("div")).textContent=i;j.classList.add(this.classForType(this.message.type));let k=this.stylesForType(this.message.type);return j.style.backgroundColor=k.background??"",j.style.color=k.foreground??"",j.style.border=k.border?`1px solid ${k.border}`:"",d.BC(a,j),null},onHide:()=>{this.state="closed"},layout:c}),b=3===this.message.type?r.kg(9,"Error: {0}",this.message.content):2===this.message.type?r.kg(10,"Warning: {0}",this.message.content):r.kg(11,"Info: {0}",this.message.content),j.xE(b),this.state="open"}_hideMessage(){this.contextViewProvider&&("open"===this.state&&this.contextViewProvider.hideContextView(),this.state="idle")}onValueChange(){this._onDidChange.fire(this.value),this.validate(),this.updateMirror(),this.input.classList.toggle("empty",!this.value),"open"===this.state&&this.contextViewProvider&&this.contextViewProvider.layout()}updateMirror(){if(!this.mirror)return;let a=this.value,b=10===a.charCodeAt(a.length-1)?" ":"";(a+b).replace(/\u000c/g,"")?this.mirror.textContent=a+b:this.mirror.innerText="\xa0",this.layout()}applyStyles(){let a=this.options.inputBoxStyles,b=a.inputBackground??"",c=a.inputForeground??"",d=a.inputBorder??"";this.element.style.backgroundColor=b,this.element.style.color=c,this.input.style.backgroundColor="inherit",this.input.style.color=c,this.element.style.border=`1px solid ${e.gI(d,"transparent")}`}layout(){if(!this.mirror)return;let a=this.cachedContentHeight;this.cachedContentHeight=d.OK(this.mirror),a!==this.cachedContentHeight&&(this.cachedHeight=Math.min(this.cachedContentHeight,this.maxHeight),this.input.style.height=this.cachedHeight+"px",this._onDidHeightChange.fire(this.cachedContentHeight))}insertAtCursor(a){let b=this.inputElement,c=b.selectionStart,d=b.selectionEnd,e=b.value;null!==c&&null!==d&&(this.value=e.substr(0,c)+a+e.substr(d),b.setSelectionRange(c+1,c+1),this.layout())}dispose(){this._hideMessage(),this.message=null,this.actionbar?.dispose(),super.dispose()}}class w extends v{constructor(a,b,c){const e=r.kg(12," or {0} for history",`\u21C5`),f=r.kg(13," ({0} for history)",`\u21C5`);super(a,b,c),this._onDidFocus=this._register(new n.vl),this.onDidFocus=this._onDidFocus.event,this._onDidBlur=this._register(new n.vl),this.onDidBlur=this._onDidBlur.event,this.history=this._register(new p(c.history,100));const g=()=>{if(c.showHistoryHint&&c.showHistoryHint()&&!this.placeholder.endsWith(e)&&!this.placeholder.endsWith(f)&&this.history.getHistory().length){let a=this.placeholder.endsWith(")")?e:f,b=this.placeholder+a;c.showPlaceholderOnFocus&&!d.X7(this.input)?this.placeholder=b:this.setPlaceHolder(b)}};this.observer=new MutationObserver((a,b)=>{a.forEach(a=>{a.target.textContent||g()})}),this.observer.observe(this.input,{attributeFilter:["class"]}),this.onfocus(this.input,()=>g()),this.onblur(this.input,()=>{let a=a=>{if(!this.placeholder.endsWith(a))return!1;{let b=this.placeholder.slice(0,this.placeholder.length-a.length);return c.showPlaceholderOnFocus?this.placeholder=b:this.setPlaceHolder(b),!0}};a(f)||a(e)})}dispose(){super.dispose(),this.observer&&(this.observer.disconnect(),this.observer=void 0)}addToHistory(a){this.value&&(a||this.value!==this.getCurrentValue())&&this.history.add(this.value)}isAtLastInHistory(){return this.history.isLast()}isNowhereInHistory(){return this.history.isNowhere()}showNextValue(){this.history.has(this.value)||this.addToHistory();let a=this.getNextValue();a&&(a=a===this.value?this.getNextValue():a),this.value=a??"",j.h5(this.value?this.value:r.kg(14,"Cleared Input"))}showPreviousValue(){this.history.has(this.value)||this.addToHistory();let a=this.getPreviousValue();a&&(a=a===this.value?this.getPreviousValue():a),a&&(this.value=a,j.h5(this.value))}setPlaceHolder(a){super.setPlaceHolder(a),this.setTooltip(a)}onBlur(){super.onBlur(),this._onDidBlur.fire()}onFocus(){super.onFocus(),this._onDidFocus.fire()}getCurrentValue(){let a=this.history.current();return a||(a=this.history.last(),this.history.next()),a}getPreviousValue(){return this.history.previous()||this.history.first()}getNextValue(){return this.history.next()}}},17922:(a,b,c)=>{"use strict";c.d(b,{nA:()=>d,qQ:()=>j,uB:()=>i});class d{constructor(a,b,c){this.owner=a,this.debugNameSource=b,this.referenceFn=c}getDebugName(a){return function(a,b){let c=f.get(a);if(c)return c;let d=function(a,b){let c,d=f.get(a);if(d)return d;let e=b.owner?function(a){let b=h.get(a);if(b)return b;let c=i(a)??"Object",d=g.get(c)??0;d++,g.set(c,d);let e=1===d?c:`${c}#${d}`;return h.set(a,e),e}(b.owner)+".":"",k=b.debugNameSource;if(void 0!==k){if("function"!=typeof k)return e+k;else if(void 0!==(c=k()))return e+c}let l=b.referenceFn;if(void 0!==l&&void 0!==(c=j(l)))return e+c;if(void 0!==b.owner){let c=function(a,b){for(let c in a)if(a[c]===b)return c}(b.owner,a);if(void 0!==c)return e+c}}(a,b);if(d){let b=e.get(d)??0;b++,e.set(d,b);let c=1===b?d:`${d}#${b}`;return f.set(a,c),c}}(a,this)}}let e=new Map,f=new WeakMap,g=new Map,h=new WeakMap;function i(a){let b=a.constructor;if(b){if("Object"===b.name)return;return b.name}}function j(a){let b=a.toString(),c=/\/\*\*\s*@description\s*([^*]*)\*\//.exec(b),d=c?c[1]:void 0;return d?.trim()}},18377:(a,b,c)=>{"use strict";c.d(b,{TT:()=>ab,cZ:()=>ak,D$:()=>al,pn:()=>ag});var d,e=c(37291),f=c(63048);let{entries:g,setPrototypeOf:h,isFrozen:i,getPrototypeOf:j,getOwnPropertyDescriptor:k}=Object,{freeze:l,seal:m,create:n}=Object,{apply:o,construct:p}="undefined"!=typeof Reflect&&Reflect;l||(l=function(a){return a}),m||(m=function(a){return a}),o||(o=function(a,b,c){return a.apply(b,c)}),p||(p=function(a,b){return new a(...b)});let q=C(Array.prototype.forEach),r=C(Array.prototype.pop),s=C(Array.prototype.push),t=C(String.prototype.toLowerCase),u=C(String.prototype.toString),v=C(String.prototype.match),w=C(String.prototype.replace),x=C(String.prototype.indexOf),y=C(String.prototype.trim),z=C(Object.prototype.hasOwnProperty),A=C(RegExp.prototype.test),B=(d=TypeError,function(){for(var a=arguments.length,b=Array(a),c=0;c<a;c++)b[c]=arguments[c];return p(d,b)});function C(a){return function(b){for(var c=arguments.length,d=Array(c>1?c-1:0),e=1;e<c;e++)d[e-1]=arguments[e];return o(a,b,d)}}function D(a,b){let c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t;h&&h(a,null);let d=b.length;for(;d--;){let e=b[d];if("string"==typeof e){let a=c(e);a!==e&&(i(b)||(b[d]=a),e=a)}a[e]=!0}return a}function E(a){let b=n(null);for(let[c,d]of g(a))z(a,c)&&(Array.isArray(d)?b[c]=function(a){for(let b=0;b<a.length;b++)z(a,b)||(a[b]=null);return a}(d):d&&"object"==typeof d&&d.constructor===Object?b[c]=E(d):b[c]=d);return b}function F(a,b){for(;null!==a;){let c=k(a,b);if(c){if(c.get)return C(c.get);if("function"==typeof c.value)return C(c.value)}a=j(a)}return function(){return null}}let G=l(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","section","select","shadow","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),H=l(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","filter","font","g","glyph","glyphref","hkern","image","line","lineargradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),I=l(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),J=l(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),K=l(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),L=l(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),M=l(["#text"]),N=l(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","face","for","headers","height","hidden","high","href","hreflang","id","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns","slot"]),O=l(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),P=l(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),Q=l(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),R=m(/\{\{[\w\W]*|[\w\W]*\}\}/gm),S=m(/<%[\w\W]*|[\w\W]*%>/gm),T=m(/\${[\w\W]*}/gm),U=m(/^data-[\-\w.\u00B7-\uFFFF]/),V=m(/^aria-[\-\w]+$/),W=m(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),X=m(/^(?:\w+script|data):/i),Y=m(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Z=m(/^html$/i);var $=Object.freeze({__proto__:null,MUSTACHE_EXPR:R,ERB_EXPR:S,TMPLIT_EXPR:T,DATA_ATTR:U,ARIA_ATTR:V,IS_ALLOWED_URI:W,IS_SCRIPT_OR_DATA:X,ATTR_WHITESPACE:Y,DOCTYPE_NAME:Z,CUSTOM_ELEMENT:m(/^[a-z][.\w]*(-[.\w]+)+$/i)});let _=function(a,b){if("object"!=typeof a||"function"!=typeof a.createPolicy)return null;let c=null,d="data-tt-policy-suffix";b&&b.hasAttribute(d)&&(c=b.getAttribute(d));let e="dompurify"+(c?"#"+c:"");try{return a.createPolicy(e,{createHTML:a=>a,createScriptURL:a=>a})}catch(a){return console.warn("TrustedTypes policy "+e+" could not be created."),null}};var aa=function a(){let b,c=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"undefined"==typeof window?null:window,d=b=>a(b);if(d.version="3.1.7",d.removed=[],!c||!c.document||9!==c.document.nodeType)return d.isSupported=!1,d;let{document:e}=c,f=e,h=f.currentScript,{DocumentFragment:i,HTMLTemplateElement:j,Node:k,Element:m,NodeFilter:o,NamedNodeMap:p=c.NamedNodeMap||c.MozNamedAttrMap,HTMLFormElement:C,DOMParser:R,trustedTypes:S}=c,T=m.prototype,U=F(T,"cloneNode"),V=F(T,"remove"),X=F(T,"nextSibling"),Y=F(T,"childNodes"),aa=F(T,"parentNode");if("function"==typeof j){let a=e.createElement("template");a.content&&a.content.ownerDocument&&(e=a.content.ownerDocument)}let ab="",{implementation:ac,createNodeIterator:ad,createDocumentFragment:ae,getElementsByTagName:af}=e,{importNode:ag}=f,ah={};d.isSupported="function"==typeof g&&"function"==typeof aa&&ac&&void 0!==ac.createHTMLDocument;let{MUSTACHE_EXPR:ai,ERB_EXPR:aj,TMPLIT_EXPR:ak,DATA_ATTR:al,ARIA_ATTR:am,IS_SCRIPT_OR_DATA:an,ATTR_WHITESPACE:ao,CUSTOM_ELEMENT:ap}=$,{IS_ALLOWED_URI:aq}=$,ar=null,as=D({},[...G,...H,...I,...K,...M]),at=null,au=D({},[...N,...O,...P,...Q]),av=Object.seal(n(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),aw=null,ax=null,ay=!0,az=!0,aA=!1,aB=!0,aC=!1,aD=!0,aE=!1,aF=!1,aG=!1,aH=!1,aI=!1,aJ=!1,aK=!0,aL=!1,aM=!0,aN=!1,aO={},aP=null,aQ=D({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),aR=null,aS=D({},["audio","video","img","source","image","track"]),aT=null,aU=D({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),aV="http://www.w3.org/1998/Math/MathML",aW="http://www.w3.org/2000/svg",aX="http://www.w3.org/1999/xhtml",aY=aX,aZ=!1,a$=null,a_=D({},[aV,aW,aX],u),a0=null,a1=["application/xhtml+xml","text/html"],a2=null,a3=null,a4=e.createElement("form"),a5=function(a){return a instanceof RegExp||a instanceof Function},a6=function(){let a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!a3||a3!==a){if(a&&"object"==typeof a||(a={}),a=E(a),a2="application/xhtml+xml"===(a0=-1===a1.indexOf(a.PARSER_MEDIA_TYPE)?"text/html":a.PARSER_MEDIA_TYPE)?u:t,ar=z(a,"ALLOWED_TAGS")?D({},a.ALLOWED_TAGS,a2):as,at=z(a,"ALLOWED_ATTR")?D({},a.ALLOWED_ATTR,a2):au,a$=z(a,"ALLOWED_NAMESPACES")?D({},a.ALLOWED_NAMESPACES,u):a_,aT=z(a,"ADD_URI_SAFE_ATTR")?D(E(aU),a.ADD_URI_SAFE_ATTR,a2):aU,aR=z(a,"ADD_DATA_URI_TAGS")?D(E(aS),a.ADD_DATA_URI_TAGS,a2):aS,aP=z(a,"FORBID_CONTENTS")?D({},a.FORBID_CONTENTS,a2):aQ,aw=z(a,"FORBID_TAGS")?D({},a.FORBID_TAGS,a2):{},ax=z(a,"FORBID_ATTR")?D({},a.FORBID_ATTR,a2):{},aO=!!z(a,"USE_PROFILES")&&a.USE_PROFILES,ay=!1!==a.ALLOW_ARIA_ATTR,az=!1!==a.ALLOW_DATA_ATTR,aA=a.ALLOW_UNKNOWN_PROTOCOLS||!1,aB=!1!==a.ALLOW_SELF_CLOSE_IN_ATTR,aC=a.SAFE_FOR_TEMPLATES||!1,aD=!1!==a.SAFE_FOR_XML,aE=a.WHOLE_DOCUMENT||!1,aH=a.RETURN_DOM||!1,aI=a.RETURN_DOM_FRAGMENT||!1,aJ=a.RETURN_TRUSTED_TYPE||!1,aG=a.FORCE_BODY||!1,aK=!1!==a.SANITIZE_DOM,aL=a.SANITIZE_NAMED_PROPS||!1,aM=!1!==a.KEEP_CONTENT,aN=a.IN_PLACE||!1,aq=a.ALLOWED_URI_REGEXP||W,aY=a.NAMESPACE||aX,av=a.CUSTOM_ELEMENT_HANDLING||{},a.CUSTOM_ELEMENT_HANDLING&&a5(a.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(av.tagNameCheck=a.CUSTOM_ELEMENT_HANDLING.tagNameCheck),a.CUSTOM_ELEMENT_HANDLING&&a5(a.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(av.attributeNameCheck=a.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),a.CUSTOM_ELEMENT_HANDLING&&"boolean"==typeof a.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements&&(av.allowCustomizedBuiltInElements=a.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),aC&&(az=!1),aI&&(aH=!0),aO&&(ar=D({},M),at=[],!0===aO.html&&(D(ar,G),D(at,N)),!0===aO.svg&&(D(ar,H),D(at,O),D(at,Q)),!0===aO.svgFilters&&(D(ar,I),D(at,O),D(at,Q)),!0===aO.mathMl&&(D(ar,K),D(at,P),D(at,Q))),a.ADD_TAGS&&(ar===as&&(ar=E(ar)),D(ar,a.ADD_TAGS,a2)),a.ADD_ATTR&&(at===au&&(at=E(at)),D(at,a.ADD_ATTR,a2)),a.ADD_URI_SAFE_ATTR&&D(aT,a.ADD_URI_SAFE_ATTR,a2),a.FORBID_CONTENTS&&(aP===aQ&&(aP=E(aP)),D(aP,a.FORBID_CONTENTS,a2)),aM&&(ar["#text"]=!0),aE&&D(ar,["html","head","body"]),ar.table&&(D(ar,["tbody"]),delete aw.tbody),a.TRUSTED_TYPES_POLICY){if("function"!=typeof a.TRUSTED_TYPES_POLICY.createHTML)throw B('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if("function"!=typeof a.TRUSTED_TYPES_POLICY.createScriptURL)throw B('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');ab=(b=a.TRUSTED_TYPES_POLICY).createHTML("")}else void 0===b&&(b=_(S,h)),null!==b&&"string"==typeof ab&&(ab=b.createHTML(""));l&&l(a),a3=a}},a7=D({},["mi","mo","mn","ms","mtext"]),a8=D({},["annotation-xml"]),a9=D({},["title","style","font","a","script"]),ba=D({},[...H,...I,...J]),bb=D({},[...K,...L]),bc=function(a){let b=aa(a);b&&b.tagName||(b={namespaceURI:aY,tagName:"template"});let c=t(a.tagName),d=t(b.tagName);return!!a$[a.namespaceURI]&&(a.namespaceURI===aW?b.namespaceURI===aX?"svg"===c:b.namespaceURI===aV?"svg"===c&&("annotation-xml"===d||a7[d]):!!ba[c]:a.namespaceURI===aV?b.namespaceURI===aX?"math"===c:b.namespaceURI===aW?"math"===c&&a8[d]:!!bb[c]:a.namespaceURI===aX?(b.namespaceURI!==aW||!!a8[d])&&(b.namespaceURI!==aV||!!a7[d])&&!bb[c]&&(a9[c]||!ba[c]):"application/xhtml+xml"===a0&&!!a$[a.namespaceURI])},bd=function(a){s(d.removed,{element:a});try{aa(a).removeChild(a)}catch(b){V(a)}},be=function(a,b){try{s(d.removed,{attribute:b.getAttributeNode(a),from:b})}catch(a){s(d.removed,{attribute:null,from:b})}if(b.removeAttribute(a),"is"===a&&!at[a])if(aH||aI)try{bd(b)}catch(a){}else try{b.setAttribute(a,"")}catch(a){}},bf=function(a){let c=null,d=null;if(aG)a="<remove></remove>"+a;else{let b=v(a,/^[\r\n\t ]+/);d=b&&b[0]}"application/xhtml+xml"===a0&&aY===aX&&(a='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+a+"</body></html>");let f=b?b.createHTML(a):a;if(aY===aX)try{c=new R().parseFromString(f,a0)}catch(a){}if(!c||!c.documentElement){c=ac.createDocument(aY,"template",null);try{c.documentElement.innerHTML=aZ?ab:f}catch(a){}}let g=c.body||c.documentElement;return(a&&d&&g.insertBefore(e.createTextNode(d),g.childNodes[0]||null),aY===aX)?af.call(c,aE?"html":"body")[0]:aE?c.documentElement:g},bg=function(a){return ad.call(a.ownerDocument||a,a,o.SHOW_ELEMENT|o.SHOW_COMMENT|o.SHOW_TEXT|o.SHOW_PROCESSING_INSTRUCTION|o.SHOW_CDATA_SECTION,null)},bh=function(a){return a instanceof C&&("string"!=typeof a.nodeName||"string"!=typeof a.textContent||"function"!=typeof a.removeChild||!(a.attributes instanceof p)||"function"!=typeof a.removeAttribute||"function"!=typeof a.setAttribute||"string"!=typeof a.namespaceURI||"function"!=typeof a.insertBefore||"function"!=typeof a.hasChildNodes)},bi=function(a){return"function"==typeof k&&a instanceof k},bj=function(a,b,c){ah[a]&&q(ah[a],a=>{a.call(d,b,c,a3)})},bk=function(a){let b=null;if(bj("beforeSanitizeElements",a,null),bh(a))return bd(a),!0;let c=a2(a.nodeName);if(bj("uponSanitizeElement",a,{tagName:c,allowedTags:ar}),a.hasChildNodes()&&!bi(a.firstElementChild)&&A(/<[/\w]/g,a.innerHTML)&&A(/<[/\w]/g,a.textContent)||7===a.nodeType||aD&&8===a.nodeType&&A(/<[/\w]/g,a.data))return bd(a),!0;if(!ar[c]||aw[c]){if(!aw[c]&&bm(c)&&(av.tagNameCheck instanceof RegExp&&A(av.tagNameCheck,c)||av.tagNameCheck instanceof Function&&av.tagNameCheck(c)))return!1;if(aM&&!aP[c]){let b=aa(a)||a.parentNode,c=Y(a)||a.childNodes;if(c&&b){let d=c.length;for(let e=d-1;e>=0;--e){let d=U(c[e],!0);d.__removalCount=(a.__removalCount||0)+1,b.insertBefore(d,X(a))}}}return bd(a),!0}return a instanceof m&&!bc(a)||("noscript"===c||"noembed"===c||"noframes"===c)&&A(/<\/no(script|embed|frames)/i,a.innerHTML)?(bd(a),!0):(aC&&3===a.nodeType&&(b=a.textContent,q([ai,aj,ak],a=>{b=w(b,a," ")}),a.textContent!==b&&(s(d.removed,{element:a.cloneNode()}),a.textContent=b)),bj("afterSanitizeElements",a,null),!1)},bl=function(a,b,c){if(aK&&("id"===b||"name"===b)&&(c in e||c in a4))return!1;if(az&&!ax[b]&&A(al,b));else if(ay&&A(am,b));else if(!at[b]||ax[b]){if(!(bm(a)&&(av.tagNameCheck instanceof RegExp&&A(av.tagNameCheck,a)||av.tagNameCheck instanceof Function&&av.tagNameCheck(a))&&(av.attributeNameCheck instanceof RegExp&&A(av.attributeNameCheck,b)||av.attributeNameCheck instanceof Function&&av.attributeNameCheck(b))||"is"===b&&av.allowCustomizedBuiltInElements&&(av.tagNameCheck instanceof RegExp&&A(av.tagNameCheck,c)||av.tagNameCheck instanceof Function&&av.tagNameCheck(c))))return!1}else if(aT[b]);else if(A(aq,w(c,ao,"")));else if(("src"===b||"xlink:href"===b||"href"===b)&&"script"!==a&&0===x(c,"data:")&&aR[a]);else if(aA&&!A(an,w(c,ao,"")));else if(c)return!1;return!0},bm=function(a){return"annotation-xml"!==a&&v(a,ap)},bn=function(a){bj("beforeSanitizeAttributes",a,null);let{attributes:c}=a;if(!c)return;let e={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:at},f=c.length;for(;f--;){let{name:g,namespaceURI:h,value:i}=c[f],j=a2(g),k="value"===g?i:y(i);if(e.attrName=j,e.attrValue=k,e.keepAttr=!0,e.forceKeepAttr=void 0,bj("uponSanitizeAttribute",a,e),k=e.attrValue,e.forceKeepAttr||(be(g,a),!e.keepAttr))continue;if(!aB&&A(/\/>/i,k)){be(g,a);continue}aC&&q([ai,aj,ak],a=>{k=w(k,a," ")});let l=a2(a.nodeName);if(bl(l,j,k)){if(aL&&("id"===j||"name"===j)&&(be(g,a),k="user-content-"+k),aD&&A(/((--!?|])>)|<\/(style|title)/i,k)){be(g,a);continue}if(b&&"object"==typeof S&&"function"==typeof S.getAttributeType)if(h);else switch(S.getAttributeType(l,j)){case"TrustedHTML":k=b.createHTML(k);break;case"TrustedScriptURL":k=b.createScriptURL(k)}try{h?a.setAttributeNS(h,g,k):a.setAttribute(g,k),bh(a)?bd(a):r(d.removed)}catch(a){}}}bj("afterSanitizeAttributes",a,null)},bo=function a(b){let c=null,d=bg(b);for(bj("beforeSanitizeShadowDOM",b,null);c=d.nextNode();)bj("uponSanitizeShadowNode",c,null),bk(c)||(c.content instanceof i&&a(c.content),bn(c));bj("afterSanitizeShadowDOM",b,null)};return d.sanitize=function(a){let c=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},e=null,g=null,h=null,j=null;if((aZ=!a)&&(a="\x3c!--\x3e"),"string"!=typeof a&&!bi(a))if("function"==typeof a.toString){if("string"!=typeof(a=a.toString()))throw B("dirty is not a string, aborting")}else throw B("toString is not a function");if(!d.isSupported)return a;if(aF||a6(c),d.removed=[],"string"==typeof a&&(aN=!1),aN){if(a.nodeName){let b=a2(a.nodeName);if(!ar[b]||aw[b])throw B("root node is forbidden and cannot be sanitized in-place")}}else if(a instanceof k)1===(g=(e=bf("\x3c!----\x3e")).ownerDocument.importNode(a,!0)).nodeType&&"BODY"===g.nodeName||"HTML"===g.nodeName?e=g:e.appendChild(g);else{if(!aH&&!aC&&!aE&&-1===a.indexOf("<"))return b&&aJ?b.createHTML(a):a;if(!(e=bf(a)))return aH?null:aJ?ab:""}e&&aG&&bd(e.firstChild);let l=bg(aN?a:e);for(;h=l.nextNode();)bk(h)||(h.content instanceof i&&bo(h.content),bn(h));if(aN)return a;if(aH){if(aI)for(j=ae.call(e.ownerDocument);e.firstChild;)j.appendChild(e.firstChild);else j=e;return(at.shadowroot||at.shadowrootmode)&&(j=ag.call(f,j,!0)),j}let m=aE?e.outerHTML:e.innerHTML;return aE&&ar["!doctype"]&&e.ownerDocument&&e.ownerDocument.doctype&&e.ownerDocument.doctype.name&&A(Z,e.ownerDocument.doctype.name)&&(m="<!DOCTYPE "+e.ownerDocument.doctype.name+">\n"+m),aC&&q([ai,aj,ak],a=>{m=w(m,a," ")}),b&&aJ?b.createHTML(m):m},d.setConfig=function(){let a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};a6(a),aF=!0},d.clearConfig=function(){a3=null,aF=!1},d.isValidAttribute=function(a,b,c){return a3||a6({}),bl(a2(a),a2(b),c)},d.addHook=function(a,b){"function"==typeof b&&(ah[a]=ah[a]||[],s(ah[a],b))},d.removeHook=function(a){if(ah[a])return r(ah[a])},d.removeHooks=function(a){ah[a]&&(ah[a]=[])},d.removeAllHooks=function(){ah={}},d}();let ab=Object.freeze(["a","abbr","b","bdo","blockquote","br","caption","cite","code","col","colgroup","dd","del","details","dfn","div","dl","dt","em","figcaption","figure","h1","h2","h3","h4","h5","h6","hr","i","img","ins","kbd","label","li","mark","ol","p","pre","q","rp","rt","ruby","s","samp","small","small","source","span","strike","strong","sub","summary","sup","table","tbody","td","tfoot","th","thead","time","tr","tt","u","ul","var","video","wbr"]),ac=Object.freeze(["href","target","src","alt","title","for","name","role","tabindex","x-dispatch","required","checked","placeholder","type","start","width","height","align"]),ad="vscode-relative-path";function ae(a,b){if("*"===b.override)return!0;try{let c=new URL(a,ad+"://");if(b.override.includes(c.protocol.replace(/:$/,""))||b.allowRelativePaths&&c.protocol===ad+":"&&!a.trim().toLowerCase().startsWith(ad))return!0;return!1}catch(a){return!1}}let af=Object.freeze({ALLOWED_TAGS:[...ab],ALLOWED_ATTR:[...ac],ALLOW_UNKNOWN_PROTOCOLS:!0});function ag(a,b){return ah(a,b,"trusted")}function ah(a,b,c){try{var d,f;let g={...af};b?.allowedTags&&(b.allowedTags.override&&(g.ALLOWED_TAGS=[...b.allowedTags.override]),b.allowedTags.augment&&(g.ALLOWED_TAGS=[...g.ALLOWED_TAGS??[],...b.allowedTags.augment]));let h=[...ac];b?.allowedAttributes&&(b.allowedAttributes.override&&(h=[...b.allowedAttributes.override]),b.allowedAttributes.augment&&(h=[...h,...b.allowedAttributes.augment])),h=h.map(a=>"string"==typeof a?a.toLowerCase():{attributeName:a.attributeName.toLowerCase(),shouldKeep:a.shouldKeep});let i=new Set(h.map(a=>"string"==typeof a?a:a.attributeName)),j=new Map;for(let a of h)"string"==typeof a?j.delete(a):j.set(a.attributeName,a);if(g.ALLOWED_ATTR=Array.from(i),d={override:b?.allowedLinkProtocols?.override??[e.ny.http,e.ny.https],allowRelativePaths:b?.allowRelativeLinkPaths??!1},f={override:b?.allowedMediaProtocols?.override??[e.ny.http,e.ny.https],allowRelativePaths:b?.allowRelativeMediaPaths??!1},aa.addHook("afterSanitizeAttributes",a=>{for(let b of["href","src"])if(a.hasAttribute(b)){let c=a.getAttribute(b);"href"===b?c.startsWith("#")||ae(c,d)||a.removeAttribute(b):ae(c,f)||a.removeAttribute(b)}}),b?.replaceWithPlaintext&&aa.addHook("uponSanitizeElement",aj),j.size&&aa.addHook("uponSanitizeAttribute",(a,b)=>{let c=j.get(b.attrName);if(c){let d=c.shouldKeep(a,b);"string"==typeof d?(b.keepAttr=!0,b.attrValue=d):b.keepAttr=d}else b.keepAttr=i.has(b.attrName)}),"dom"===c)return aa.sanitize(a,{...g,RETURN_DOM_FRAGMENT:!0});return aa.sanitize(a,{...g,RETURN_TRUSTED_TYPE:!0})}finally{aa.removeAllHooks()}}let ai=["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"];function aj(a,b,c){if(!b.allowedTags[b.tagName]&&"body"!==b.tagName){let b=ak(a);a.nodeType===Node.COMMENT_NODE?a.parentElement?.insertBefore(b,a):a.parentElement?.replaceChild(b,a)}}function ak(a){let b,c;if(a.nodeType===Node.COMMENT_NODE)b=`<!--${a.textContent}-->`;else{let d=a.tagName.toLowerCase(),e=ai.includes(d),f=a.attributes.length?" "+Array.from(a.attributes).map(a=>`${a.name}="${a.value}"`).join(" "):"";b=`<${d}${f}>`,e||(c=`</${d}>`)}let d=document.createDocumentFragment(),e=a.ownerDocument.createTextNode(b);for(d.appendChild(e);a.firstChild;)d.appendChild(a.firstChild);let f=c?a.ownerDocument.createTextNode(c):void 0;return f&&d.appendChild(f),d}function al(a,b,c){let d=ah(b,c,"dom");(0,f.Ln)(a,d)}},18635:(a,b,c)=>{"use strict";c.d(b,{i:()=>i});var d=c(38209),e=c(42727),f=c(59119);class g extends f.V{constructor(a,b){super(0),this._segmenter=null,this._cachedLine=null,this._cachedSegments=[],this.intlSegmenterLocales=b,this.intlSegmenterLocales.length>0?this._segmenter=d.x.Segmenter(this.intlSegmenterLocales,{granularity:"word"}):this._segmenter=null;for(let b=0,c=a.length;b<c;b++)this.set(a.charCodeAt(b),2);this.set(32,1),this.set(9,1)}findPrevIntlWordBeforeOrAtOffset(a,b){let c=null;for(let d of this._getIntlSegmenterWordsOnLine(a)){if(d.index>b)break;c=d}return c}findNextIntlWordAtOrAfterOffset(a,b){for(let c of this._getIntlSegmenterWordsOnLine(a))if(!(c.index<b))return c;return null}_getIntlSegmenterWordsOnLine(a){return this._segmenter?(this._cachedLine===a||(this._cachedLine=a,this._cachedSegments=this._filterWordSegments(this._segmenter.value.segment(a))),this._cachedSegments):[]}_filterWordSegments(a){let b=[];for(let c of a)this._isWordLike(c)&&b.push(c);return b}_isWordLike(a){return!!a.isWordLike}}let h=new e.qK(10);function i(a,b){let c=`${a}/${b.join(",")}`,d=h.get(c);return d||(d=new g(a,b),h.set(c,d)),d}},18765:(a,b,c)=>{"use strict";c.d(b,{T:()=>o});var d=c(63048),e=c(23293),f=c(3457),g=c(40201),h=c(21410);class i{constructor(a,b){this.chr=a,this.type=b,this.width=0}fulfill(a){this.width=a}}class j{constructor(a,b){this._bareFontInfo=a,this._requests=b,this._container=null,this._testElements=null}read(a){this._createDomElements(),a.document.body.appendChild(this._container),this._readFromDomElements(),this._container?.remove(),this._container=null,this._testElements=null}_createDomElements(){let a=document.createElement("div");a.style.position="absolute",a.style.top="-50000px",a.style.width="50000px";let b=document.createElement("div");(0,h.M)(b,this._bareFontInfo),a.appendChild(b);let c=document.createElement("div");(0,h.M)(c,this._bareFontInfo),c.style.fontWeight="bold",a.appendChild(c);let d=document.createElement("div");(0,h.M)(d,this._bareFontInfo),d.style.fontStyle="italic",a.appendChild(d);let e=[];for(let a of this._requests){let f;0===a.type&&(f=b),2===a.type&&(f=c),1===a.type&&(f=d),f.appendChild(document.createElement("br"));let g=document.createElement("span");j._render(g,a),f.appendChild(g),e.push(g)}this._container=a,this._testElements=e}static _render(a,b){if(" "===b.chr){let b="\xa0";for(let a=0;a<8;a++)b+=b;a.innerText=b}else{let c=b.chr;for(let a=0;a<8;a++)c+=c;a.textContent=c}}_readFromDomElements(){for(let a=0,b=this._requests.length;a<b;a++){let b=this._requests[a],c=this._testElements[a];b.fulfill(c.offsetWidth/256)}}}var k=c(64825),l=c(21799);class m extends g.jG{constructor(){super(...arguments),this._cache=new Map,this._evictUntrustedReadingsTimeout=-1,this._onDidChange=this._register(new f.vl),this.onDidChange=this._onDidChange.event}dispose(){-1!==this._evictUntrustedReadingsTimeout&&(clearTimeout(this._evictUntrustedReadingsTimeout),this._evictUntrustedReadingsTimeout=-1),super.dispose()}clearAllFontInfos(){this._cache.clear(),this._onDidChange.fire()}_ensureCache(a){let b=(0,d.Q2)(a),c=this._cache.get(b);return c||(c=new n,this._cache.set(b,c)),c}_writeToCache(a,b,c){this._ensureCache(a).put(b,c),c.isTrusted||-1!==this._evictUntrustedReadingsTimeout||(this._evictUntrustedReadingsTimeout=a.setTimeout(()=>{this._evictUntrustedReadingsTimeout=-1,this._evictUntrustedReadings(a)},5e3))}_evictUntrustedReadings(a){let b=this._ensureCache(a),c=b.getValues(),d=!1;for(let a of c)a.isTrusted||(d=!0,b.remove(a));d&&this._onDidChange.fire()}readFontInfo(a,b){let c=this._ensureCache(a);if(!c.has(b)){let c=this._actualReadFontInfo(a,b);(c.typicalHalfwidthCharacterWidth<=2||c.typicalFullwidthCharacterWidth<=2||c.spaceWidth<=2||c.maxDigitWidth<=2)&&(c=new l.YJ({pixelRatio:e.c.getInstance(a).value,fontFamily:c.fontFamily,fontWeight:c.fontWeight,fontSize:c.fontSize,fontFeatureSettings:c.fontFeatureSettings,fontVariationSettings:c.fontVariationSettings,lineHeight:c.lineHeight,letterSpacing:c.letterSpacing,isMonospace:c.isMonospace,typicalHalfwidthCharacterWidth:Math.max(c.typicalHalfwidthCharacterWidth,5),typicalFullwidthCharacterWidth:Math.max(c.typicalFullwidthCharacterWidth,5),canUseHalfwidthRightwardsArrow:c.canUseHalfwidthRightwardsArrow,spaceWidth:Math.max(c.spaceWidth,5),middotWidth:Math.max(c.middotWidth,5),wsmiddotWidth:Math.max(c.wsmiddotWidth,5),maxDigitWidth:Math.max(c.maxDigitWidth,5)},!1)),this._writeToCache(a,b,c)}return c.get(b)}_createRequest(a,b,c,d){let e=new i(a,b);return c.push(e),d?.push(e),e}_actualReadFontInfo(a,b){let c=[],d=[],f=this._createRequest("n",0,c,d),g=this._createRequest("m",0,c,null),h=this._createRequest(" ",0,c,d),i=this._createRequest("0",0,c,d),m=this._createRequest("1",0,c,d),n=this._createRequest("2",0,c,d),o=this._createRequest("3",0,c,d),p=this._createRequest("4",0,c,d),q=this._createRequest("5",0,c,d),r=this._createRequest("6",0,c,d),s=this._createRequest("7",0,c,d),t=this._createRequest("8",0,c,d),u=this._createRequest("9",0,c,d),v=this._createRequest("→",0,c,d),w=this._createRequest("→",0,c,null),x=this._createRequest("\xb7",0,c,d),y=this._createRequest(String.fromCharCode(11825),0,c,null),z="|/-_ilm%";for(let a=0,b=z.length;a<b;a++)this._createRequest(z.charAt(a),0,c,d),this._createRequest(z.charAt(a),1,c,d),this._createRequest(z.charAt(a),2,c,d);new j(b,c).read(a);let A=Math.max(i.width,m.width,n.width,o.width,p.width,q.width,r.width,s.width,t.width,u.width),B=b.fontFeatureSettings===k.Bc.OFF,C=d[0].width;for(let a=1,b=d.length;B&&a<b;a++){let b=C-d[a].width;if(b<-.001||b>.001){B=!1;break}}let D=!0;return B&&w.width!==C&&(D=!1),w.width>v.width&&(D=!1),new l.YJ({pixelRatio:e.c.getInstance(a).value,fontFamily:b.fontFamily,fontWeight:b.fontWeight,fontSize:b.fontSize,fontFeatureSettings:b.fontFeatureSettings,fontVariationSettings:b.fontVariationSettings,lineHeight:b.lineHeight,letterSpacing:b.letterSpacing,isMonospace:B,typicalHalfwidthCharacterWidth:f.width,typicalFullwidthCharacterWidth:g.width,canUseHalfwidthRightwardsArrow:D,spaceWidth:h.width,middotWidth:x.width,wsmiddotWidth:y.width,maxDigitWidth:A},!0)}}class n{constructor(){this._keys=Object.create(null),this._values=Object.create(null)}has(a){let b=a.getId();return!!this._values[b]}get(a){let b=a.getId();return this._values[b]}put(a,b){let c=a.getId();this._keys[c]=a,this._values[c]=b}remove(a){let b=a.getId();delete this._keys[b],delete this._values[b]}getValues(){return Object.keys(this._keys).map(a=>this._values[a])}}let o=new m},19095:(a,b,c)=>{"use strict";c.d(b,{ne:()=>e,Nd:()=>Y,Jo:()=>N,WJ:()=>O,dt:()=>Z,uU:()=>$,Tt:()=>r,yr:()=>L,O:()=>M,WP:()=>p,dE:()=>s,J1:()=>G,or:()=>o});var d,e,f=c(42727);let g=0,h=new Uint32Array(10);function i(a,b,c){var d;a>=c&&a<c+b.length&&0!==(d=b[a-c])&&(h[g++]=255&d,d>>8&&(h[g++]=d>>8&255),d>>16&&(h[g++]=d>>16&255))}let j=new Uint8Array([114,82,115,101,69,102,97,113,81,116,84,100,119,87,99,122,120,118,103]),k=new Uint16Array([107,111,105,79,106,112,117,80,104,27496,28520,27752,121,110,27246,28782,27758,98,109,27757,108]),l=new Uint16Array([114,82,29810,115,30579,26483,101,102,29286,24934,29030,29798,30822,30310,26470,97,113,29809,116,84,100,119,99,122,120,118,103]),m=new Uint16Array([114,82,29810,115,30579,26483,101,69,102,29286,24934,29030,29798,30822,30310,26470,97,113,81,29809,116,84,100,119,87,99,122,120,118,103,107,111,105,79,106,112,117,80,104,27496,28520,27752,121,110,27246,28782,27758,98,109,27757,108]);var n=c(77747);function o(...a){return function(b,c){for(let d=0,e=a.length;d<e;d++){let e=a[d](b,c);if(e)return e}return null}}q.bind(void 0,!1);let p=q.bind(void 0,!0);function q(a,b,c){return c&&!(c.length<b.length)&&(a?n.ns(c,b):0===c.indexOf(b))?b.length>0?[{start:0,end:b.length}]:[]:null}function r(a,b){let c=b.toLowerCase().indexOf(a.toLowerCase());return -1===c?null:[{start:c,end:c+a.length}]}function s(a,b){return function a(b,c,d,e){if(d===b.length)return[];if(e===c.length)return null;if(b[d]===c[e]){let f=null;return(f=a(b,c,d+1,e+1))?D({start:e,end:e+1},f):null}return a(b,c,d,e+1)}(a.toLowerCase(),b.toLowerCase(),0,0)}function t(a){return 97<=a&&a<=122}function u(a){return 65<=a&&a<=90}function v(a){return 48<=a&&a<=57}function w(a){return 32===a||9===a||10===a||13===a}let x=new Set;function y(a){return w(a)||x.has(a)}function z(a,b){return a===b||y(a)&&y(b)}"()[]{}<>`'\"-/;:,.?!".split("").forEach(a=>x.add(a.charCodeAt(0)));let A=new Map;function B(a){let b;if(A.has(a))return A.get(a);let c=function(a){let b=function(a){if(g=0,i(a,j,4352),g>0||(i(a,k,4449),g>0)||(i(a,l,4520),g>0)||(i(a,m,12593),g))return h.subarray(0,g);if(a>=44032&&a<=55203){let b=a-44032,c=b%588,d=Math.floor(b/588),e=Math.floor(c/28),f=c%28-1;if(d<j.length?i(d,j,0):4352+d-12593<m.length&&i(4352+d,m,12593),e<k.length?i(e,k,0):4449+e-12593<m.length&&i(4449+e-12593,m,12593),f>=0&&(f<l.length?i(f,l,0):4520+f-12593<m.length&&i(4520+f-12593,m,12593)),g>0)return h.subarray(0,g)}}(a);if(b&&b.length>0)return new Uint32Array(b)}(a);return c&&(b=c),A.set(a,b),b}function C(a){return t(a)||u(a)||v(a)}function D(a,b){return 0===b.length?b=[a]:a.end===b[0].start?b[0].start=a.start:b.unshift(a),b}function E(a,b){for(let c=b;c<a.length;c++){let b=a.charCodeAt(c);if(u(b)||v(b)||c>0&&!C(a.charCodeAt(c-1)))return c}return a.length}function F(a,b){if(!b||0===(b=b.trim()).length||!function(a){let b=0,c=0,d=0,e=0;for(let f=0;f<a.length;f++)u(d=a.charCodeAt(f))&&b++,t(d)&&c++,w(d)&&e++;return(0===b||0===c)&&0===e?a.length<=30:b<=5}(a))return null;b.length>60&&(b=b.substring(0,60));let c=function(a){let b=0,c=0,d=0,e=0,f=0;for(let g=0;g<a.length;g++)u(f=a.charCodeAt(g))&&b++,t(f)&&c++,C(f)&&d++,v(f)&&e++;let g=b/a.length,h=c/a.length;return{upperPercent:g,lowerPercent:h,alphaPercent:d/a.length,numericPercent:e/a.length}}(b);if(!function(a){let{upperPercent:b,lowerPercent:c,alphaPercent:d,numericPercent:e}=a;return c>.2&&b<.8&&d>.6&&e<.2}(c)){if(!function(a){let{upperPercent:b,lowerPercent:c}=a;return 0===c&&b>.6}(c))return null;b=b.toLowerCase()}let d=null,e=0;for(a=a.toLowerCase();e<b.length&&null===(d=function a(b,c,d,e){if(d===b.length)return[];{if(e===c.length||b[d]!==c[e].toLowerCase())return null;let f=null,g=e+1;for(f=a(b,c,d+1,e+1);!f&&(g=E(c,g))<c.length;)f=a(b,c,d+1,g),g++;return null===f?null:D({start:e,end:e+1},f)}}(a,b,0,e));)e=E(b,e+1);return d}function G(a,b,c=!1){if(!b||0===b.length)return null;let d=null,e=0;for(a=a.toLowerCase(),b=b.toLowerCase();e<b.length&&null===(d=function a(b,c,d,e,f){let g=0;if(d===b.length)return[];if(e===c.length)return null;if(!z(b.charCodeAt(d),c.charCodeAt(e))){let a=B(b.charCodeAt(d));if(!a)return null;for(let b=0;b<a.length;b++)if(!z(a[b],c.charCodeAt(e+b)))return null;g+=a.length-1}let h=null,i=e+g+1;if(h=a(b,c,d+1,i,f),!f)for(;!h&&(i=H(c,i))<c.length;)h=a(b,c,d+1,i,f),i++;if(!h)return null;if(b.charCodeAt(d)!==c.charCodeAt(e)){let a=B(b.charCodeAt(d));if(!a)return h;for(let b=0;b<a.length;b++)if(a[b]!==c.charCodeAt(e+b))return h}return D({start:e,end:e+g+1},h)}(a,b,0,e,c));)e=H(b,e+1);return d}function H(a,b){for(let c=b;c<a.length;c++)if(y(a.charCodeAt(c))||c>0&&y(a.charCodeAt(c-1)))return c;return a.length}let I=o(p,F,r),J=o(p,F,s),K=new f.qK(1e4);function L(a,b,c=!1){if("string"!=typeof a||"string"!=typeof b)return null;let d=K.get(a);d||(d=RegExp(n.Bm(a),"i"),K.set(a,d));let e=d.exec(b);return e?[{start:e.index,end:e.index+e[0].length}]:c?J(a,b):I(a,b)}function M(a,b){let c=Z(a,a.toLowerCase(),0,b,b.toLowerCase(),0,{firstMatchCanBeWeak:!0,boostFullMatch:!0});return c?O(c):null}function N(a,b,c,d,e,f){let g=Math.min(13,a.length);for(;c<g;c++){let g=Z(a,b,c,d,e,f,{firstMatchCanBeWeak:!0,boostFullMatch:!0});if(g)return g}return[0,f]}function O(a){if(void 0===a)return[];let b=[],c=a[1];for(let d=a.length-1;d>1;d--){let e=a[d]+c,f=b[b.length-1];f&&f.end===e?f.end=e+1:b.push({start:e,end:e+1})}return b}function P(){let a=[],b=[];for(let a=0;a<=128;a++)b[a]=0;for(let c=0;c<=128;c++)a.push(b.slice(0));return a}function Q(a){let b=[];for(let c=0;c<=a;c++)b[c]=0;return b}let R=Q(256),S=Q(256),T=P(),U=P(),V=P();function W(a,b){if(b<0||b>=a.length)return!1;let c=a.codePointAt(b);switch(c){case 95:case 45:case 46:case 32:case 47:case 92:case 39:case 34:case 58:case 36:case 60:case 62:case 40:case 41:case 91:case 93:case 123:case 125:return!0;case void 0:return!1;default:if(n.Ss(c))return!0;return!1}}function X(a,b){if(b<0||b>=a.length)return!1;switch(a.charCodeAt(b)){case 32:case 9:return!0;default:return!1}}(d=e||(e={})).Default=[-100,0],d.isDefault=function(a){return!a||2===a.length&&-100===a[0]&&0===a[1]};class Y{static{this.default={boostFullMatch:!0,firstMatchCanBeWeak:!1}}constructor(a,b){this.firstMatchCanBeWeak=a,this.boostFullMatch=b}}function Z(a,b,c,d,e,f,g=Y.default){let h=a.length>128?128:a.length,i=d.length>128?128:d.length;if(c>=h||f>=i||h-c>i-f||!function(a,b,c,d,e,f,g=!1){for(;b<c&&e<f;)a[b]===d[e]&&(g&&(R[b]=e),b+=1),e+=1;return b===c}(b,c,h,e,f,i,!0))return;var j,k=h,l=i,m=c,n=f,o=b,p=e;let q=k-1,r=l-1;for(;q>=m&&r>=n;)o[q]===p[r]&&(S[q]=r,q--),r--;let s=1,t=1,u=c,v=f,w=[!1];for(s=1,u=c;u<h;s++,u++){let g=R[u],j=S[u],k=u+1<h?S[u+1]:i;for(t=g-f+1,v=g;v<k;t++,v++){let h=Number.MIN_SAFE_INTEGER,k=!1;v<=j&&(h=function(a,b,c,d,e,f,g,h,i,j,k){var l;if(b[c]!==f[g])return Number.MIN_SAFE_INTEGER;let m=1,n=!1;return g===c-d?m=a[c]===e[g]?7:5:e[g]===f[g]||0!==g&&e[l=g-1]!==f[l]?W(f,g)&&(0===g||!W(f,g-1))?m=5:(W(f,g-1)||X(f,g-1))&&(m=5,n=!0):(m=a[c]===e[g]?7:5,n=!0),m>1&&c===d&&(k[0]=!0),n||(n=e[g]!==f[g]||W(f,g-1)||X(f,g-1)),c===d?g>i&&(m-=n?3:5):j?m+=2*!!n:m+=+!n,g+1===h&&(m-=n?3:5),m}(a,b,u,c,d,e,v,i,f,0===T[s-1][t-1],w));let l=0;h!==Number.MIN_SAFE_INTEGER&&(k=!0,l=h+U[s-1][t-1]);let m=v>g,n=m?U[s][t-1]+(T[s][t-1]>0?-5:0):0,o=v>g+1&&T[s][t-1]>0,p=o?U[s][t-2]+(T[s][t-2]>0?-5:0):0;if(o&&(!m||p>=n)&&(!k||p>=l))U[s][t]=p,V[s][t]=3,T[s][t]=0;else if(m&&(!k||n>=l))U[s][t]=n,V[s][t]=2,T[s][t]=0;else if(k)U[s][t]=l,V[s][t]=1,T[s][t]=T[s-1][t-1]+1;else throw Error("not possible")}}if(!w[0]&&!g.firstMatchCanBeWeak)return;s--,t--;let x=[U[s][t],f],y=0,z=0;for(;s>=1;){let a=t;do{let b=V[s][a];if(3===b)a-=2;else if(2===b)a-=1;else break}while(a>=1);y>1&&b[c+s-1]===e[f+t-1]&&d[j=a+f-1]===e[j]&&y+1>T[s][a]&&(a=t),a===t?y++:y=1,z||(z=a),s--,t=a-1,x.push(t)}i-f===h&&g.boostFullMatch&&(x[0]+=2);let A=z-h;return x[0]-=A,x}function $(a,b,c,d,e,f,g){return function(a,b,c,d,e,f,g,h){let i=Z(a,b,c,d,e,f,h);if(i&&!g)return i;if(a.length>=3){let b=Math.min(7,a.length-1);for(let g=c+1;g<b;g++){let b=function(a,b){if(b+1>=a.length)return;let c=a[b],d=a[b+1];if(c!==d)return a.slice(0,b)+d+c+a.slice(b+2)}(a,g);if(b){let a=Z(b,b.toLowerCase(),c,d,e,f,h);a&&(a[0]-=3,(!i||a[0]>i[0])&&(i=a))}}}return i}(a,b,c,d,e,f,!0,g)}},19254:(a,b,c)=>{"use strict";let d,e;c.d(b,{BH:()=>C,Fr:()=>z,H8:()=>J,HZ:()=>w,OS:()=>F,UP:()=>M,_p:()=>E,cm:()=>I,gm:()=>K,iD:()=>A,ib:()=>v,j9:()=>u,lg:()=>x,m0:()=>N,nr:()=>L,ti:()=>g,uF:()=>s,un:()=>y,zx:()=>t});var f=c(76302);let g="en",h=!1,i=!1,j=!1,k=!1,l=!1,m=!1,n=!1,o=g,p=globalThis;void 0!==p.vscode&&void 0!==p.vscode.process?e=p.vscode.process:"undefined"!=typeof process&&"string"==typeof process?.versions?.node&&(e=process);let q="string"==typeof e?.versions?.electron&&e?.type==="renderer";if("object"==typeof e){h="win32"===e.platform,i="darwin"===e.platform,(j="linux"===e.platform)&&e.env.SNAP&&e.env.SNAP_REVISION,e.env.CI||e.env.BUILD_ARTIFACTSTAGINGDIRECTORY||e.env.GITHUB_WORKSPACE,o=g;let a=e.env.VSCODE_NLS_CONFIG;if(a)try{let b=JSON.parse(a);b.userLocale,b.osLocale,o=b.resolvedLanguage||g,b.languagePack?.translationsConfigFile}catch(a){}k=!0}else"object"!=typeof navigator||q?console.error("Unable to resolve platform."):(h=(d=navigator.userAgent).indexOf("Windows")>=0,i=d.indexOf("Macintosh")>=0,m=(d.indexOf("Macintosh")>=0||d.indexOf("iPad")>=0||d.indexOf("iPhone")>=0)&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0,j=d.indexOf("Linux")>=0,n=d?.indexOf("Mobi")>=0,l=!0,o=f.i8()||g,navigator.language.toLowerCase());let r=0;i?r=1:h?r=3:j&&(r=2);let s=h,t=i,u=j,v=k,w=l,x=l&&"function"==typeof p.importScripts?p.origin:void 0,y=m,z=n,A=r,B=d,C=o,D="function"==typeof p.postMessage&&!p.importScripts,E=(()=>{if(D){let a=[];p.addEventListener("message",b=>{if(b.data&&b.data.vscodeScheduleAsyncWork)for(let c=0,d=a.length;c<d;c++){let d=a[c];if(d.id===b.data.vscodeScheduleAsyncWork){a.splice(c,1),d.callback();return}}});let b=0;return c=>{let d=++b;a.push({id:d,callback:c}),p.postMessage({vscodeScheduleAsyncWork:d},"*")}}return a=>setTimeout(a)})(),F=i||m?2:h?1:3,G=!0,H=!1;function I(){if(!H){H=!0;let a=new Uint8Array(2);a[0]=1,a[1]=2,G=513===new Uint16Array(a.buffer)[0]}return G}let J=!!(B&&B.indexOf("Chrome")>=0),K=!!(B&&B.indexOf("Firefox")>=0),L=!!(!J&&B&&B.indexOf("Safari")>=0),M=!!(B&&B.indexOf("Edg/")>=0),N=!!(B&&B.indexOf("Android")>=0)},19374:(a,b,c)=>{"use strict";c.d(b,{cB:()=>l});var d=c(29139),e=c(77747);class f{constructor(){this._value="",this._pos=0}reset(a){return this._value=a,this._pos=0,this}next(){return this._pos+=1,this}hasNext(){return this._pos<this._value.length-1}cmp(a){return a.charCodeAt(0)-this._value.charCodeAt(this._pos)}value(){return this._value[this._pos]}}class g{constructor(a=!0){this._caseSensitive=a}reset(a){return this._value=a,this._from=0,this._to=0,this.next()}hasNext(){return this._to<this._value.length}next(){this._from=this._to;let a=!0;for(;this._to<this._value.length;this._to++)if(46===this._value.charCodeAt(this._to))if(a)this._from++;else break;else a=!1;return this}cmp(a){return this._caseSensitive?(0,e.lF)(a,this._value,0,a.length,this._from,this._to):(0,e.zd)(a,this._value,0,a.length,this._from,this._to)}value(){return this._value.substring(this._from,this._to)}}class h{constructor(a=!0,b=!0){this._splitOnBackslash=a,this._caseSensitive=b}reset(a){this._from=0,this._to=0,this._value=a,this._valueLen=a.length;for(let b=a.length-1;b>=0;b--,this._valueLen--){let a=this._value.charCodeAt(b);if(!(47===a||this._splitOnBackslash&&92===a))break}return this.next()}hasNext(){return this._to<this._valueLen}next(){this._from=this._to;let a=!0;for(;this._to<this._valueLen;this._to++){let b=this._value.charCodeAt(this._to);if(47===b||this._splitOnBackslash&&92===b)if(a)this._from++;else break;else a=!1}return this}cmp(a){return this._caseSensitive?(0,e.lF)(a,this._value,0,a.length,this._from,this._to):(0,e.zd)(a,this._value,0,a.length,this._from,this._to)}value(){return this._value.substring(this._from,this._to)}}class i{constructor(a,b){this._ignorePathCasing=a,this._ignoreQueryAndFragment=b,this._states=[],this._stateIdx=0}reset(a){return this._value=a,this._states=[],this._value.scheme&&this._states.push(1),this._value.authority&&this._states.push(2),this._value.path&&(this._pathIterator=new h(!1,!this._ignorePathCasing(a)),this._pathIterator.reset(a.path),this._pathIterator.value()&&this._states.push(3)),!this._ignoreQueryAndFragment(a)&&(this._value.query&&this._states.push(4),this._value.fragment&&this._states.push(5)),this._stateIdx=0,this}next(){return 3===this._states[this._stateIdx]&&this._pathIterator.hasNext()?this._pathIterator.next():this._stateIdx+=1,this}hasNext(){return 3===this._states[this._stateIdx]&&this._pathIterator.hasNext()||this._stateIdx<this._states.length-1}cmp(a){if(1===this._states[this._stateIdx])return(0,e.W1)(a,this._value.scheme);if(2===this._states[this._stateIdx])return(0,e.W1)(a,this._value.authority);if(3===this._states[this._stateIdx])return this._pathIterator.cmp(a);if(4===this._states[this._stateIdx])return(0,e.UD)(a,this._value.query);if(5===this._states[this._stateIdx])return(0,e.UD)(a,this._value.fragment);throw Error()}value(){if(1===this._states[this._stateIdx])return this._value.scheme;if(2===this._states[this._stateIdx])return this._value.authority;if(3===this._states[this._stateIdx])return this._pathIterator.value();if(4===this._states[this._stateIdx])return this._value.query;if(5===this._states[this._stateIdx])return this._value.fragment;throw Error()}}class j{static{this.Val=Symbol("undefined_placeholder")}static wrap(a){return void 0===a?j.Val:a}static unwrap(a){return a===j.Val?void 0:a}}class k{constructor(){this.height=1,this.value=void 0,this.key=void 0,this.left=void 0,this.mid=void 0,this.right=void 0}rotateLeft(){let a=this.right;return this.right=a.left,a.left=this,this.updateHeight(),a.updateHeight(),a}rotateRight(){let a=this.left;return this.left=a.right,a.right=this,this.updateHeight(),a.updateHeight(),a}updateHeight(){this.height=1+Math.max(this.heightLeft,this.heightRight)}balanceFactor(){return this.heightRight-this.heightLeft}get heightLeft(){return this.left?.height??0}get heightRight(){return this.right?.height??0}}class l{static forUris(a=()=>!1,b=()=>!1){return new l(new i(a,b))}static forStrings(){return new l(new f)}static forConfigKeys(){return new l(new g)}constructor(a){this._iter=a}clear(){this._root=void 0}set(a,b){let c,d=this._iter.reset(a);this._root||(this._root=new k,this._root.segment=d.value());let e=[];for(c=this._root;;){let a=d.cmp(c.segment);if(a>0)c.left||(c.left=new k,c.left.segment=d.value()),e.push([-1,c]),c=c.left;else if(a<0)c.right||(c.right=new k,c.right.segment=d.value()),e.push([1,c]),c=c.right;else if(d.hasNext())d.next(),c.mid||(c.mid=new k,c.mid.segment=d.value()),e.push([0,c]),c=c.mid;else break}let f=j.unwrap(c.value);c.value=j.wrap(b),c.key=a;for(let a=e.length-1;a>=0;a--){let b=e[a][1];b.updateHeight();let c=b.balanceFactor();if(c<-1||c>1){let c=e[a][0],d=e[a+1][0];if(1===c&&1===d)e[a][1]=b.rotateLeft();else if(-1===c&&-1===d)e[a][1]=b.rotateRight();else if(1===c&&-1===d)b.right=e[a+1][1]=e[a+1][1].rotateRight(),e[a][1]=b.rotateLeft();else if(-1===c&&1===d)b.left=e[a+1][1]=e[a+1][1].rotateLeft(),e[a][1]=b.rotateRight();else throw Error();if(a>0)switch(e[a-1][0]){case -1:e[a-1][1].left=e[a][1];break;case 1:e[a-1][1].right=e[a][1];break;case 0:e[a-1][1].mid=e[a][1]}else this._root=e[0][1]}}return f}get(a){return j.unwrap(this._getNode(a)?.value)}_getNode(a){let b=this._iter.reset(a),c=this._root;for(;c;){let a=b.cmp(c.segment);if(a>0)c=c.left;else if(a<0)c=c.right;else if(b.hasNext())b.next(),c=c.mid;else break}return c}has(a){let b=this._getNode(a);return b?.value!==void 0||b?.mid!==void 0}delete(a){return this._delete(a,!1)}deleteSuperstr(a){return this._delete(a,!0)}_delete(a,b){let c=this._iter.reset(a),e=[],f=this._root;for(;f;){let a=c.cmp(f.segment);if(a>0)e.push([-1,f]),f=f.left;else if(a<0)e.push([1,f]),f=f.right;else if(c.hasNext())c.next(),e.push([0,f]),f=f.mid;else break}if(f){if(b?(f.left=void 0,f.mid=void 0,f.right=void 0,f.height=1):(f.key=void 0,f.value=void 0),!f.mid&&!f.value)if(f.left&&f.right){let a=[[1,f]],b=this._min(f.right,a);if(b.key){f.key=b.key,f.value=b.value,f.segment=b.segment;let c=b.right;if(a.length>1){let[b,e]=a[a.length-1];switch(b){case -1:e.left=c;break;case 0:(0,d.vA)(!1);case 1:(0,d.vA)(!1)}}else f.right=c;let g=this._balanceByStack(a);if(e.length>0){let[a,b]=e[e.length-1];switch(a){case -1:b.left=g;break;case 0:b.mid=g;break;case 1:b.right=g}}else this._root=g}}else{let a=f.left??f.right;if(e.length>0){let[b,c]=e[e.length-1];switch(b){case -1:c.left=a;break;case 0:c.mid=a;break;case 1:c.right=a}}else this._root=a}this._root=this._balanceByStack(e)??this._root}}_min(a,b){for(;a.left;)b.push([-1,a]),a=a.left;return a}_balanceByStack(a){for(let b=a.length-1;b>=0;b--){let c=a[b][1];c.updateHeight();let d=c.balanceFactor();if(d>1?(c.right.balanceFactor()>=0||(c.right=c.right.rotateRight()),a[b][1]=c.rotateLeft()):d<-1&&(0>=c.left.balanceFactor()||(c.left=c.left.rotateLeft()),a[b][1]=c.rotateRight()),!(b>0))return a[0][1];switch(a[b-1][0]){case -1:a[b-1][1].left=a[b][1];break;case 1:a[b-1][1].right=a[b][1];break;case 0:a[b-1][1].mid=a[b][1]}}}findSubstr(a){let b,c=this._iter.reset(a),d=this._root;for(;d;){let a=c.cmp(d.segment);if(a>0)d=d.left;else if(a<0)d=d.right;else if(c.hasNext())c.next(),b=j.unwrap(d.value)||b,d=d.mid;else break}return d&&j.unwrap(d.value)||b}findSuperstr(a){return this._findSuperstrOrElement(a,!1)}_findSuperstrOrElement(a,b){let c=this._iter.reset(a),d=this._root;for(;d;){let a=c.cmp(d.segment);if(a>0)d=d.left;else if(a<0)d=d.right;else if(c.hasNext())c.next(),d=d.mid;else if(d.mid)return this._entries(d.mid);else if(b)return j.unwrap(d.value);else break}}forEach(a){for(let[b,c]of this)a(c,b)}*[Symbol.iterator](){yield*this._entries(this._root)}_entries(a){let b=[];return this._dfsEntries(a,b),b[Symbol.iterator]()}_dfsEntries(a,b){a&&(a.left&&this._dfsEntries(a.left,b),void 0!==a.value&&b.push([a.key,j.unwrap(a.value)]),a.mid&&this._dfsEntries(a.mid,b),a.right&&this._dfsEntries(a.right,b))}}},19497:(a,b,c)=>{"use strict";c.d(b,{Fd:()=>l,Gv:()=>H,rC:()=>G});var d=c(42891),e=c(3457),f=c(98896),g=c(76302),h=c(55066),i=c(17477),j=c(53764),k=c(40201);let l={Configuration:"base.contributions.configuration"},m={},n={},o={},p={},q={},r={},s={},t={},u={},v={},w={},x={},y={},z={},A="vscode://schemas/settings/resourceLanguage",B=j.O.as(i.F.JSONContribution);class C extends k.jG{constructor(){super(),this.registeredConfigurationDefaults=[],this.overrideIdentifiers=new Set,this._onDidSchemaChange=this._register(new e.vl),this._onDidUpdateConfiguration=this._register(new e.vl),this.configurationDefaultsOverrides=new Map,this.defaultLanguageConfigurationOverridesNode={id:"defaultOverrides",title:g.kg(1649,"Default Language Configuration Overrides"),properties:{}},this.configurationContributors=[this.defaultLanguageConfigurationOverridesNode],this.resourceLanguageSettingsSchema={properties:{},patternProperties:{},additionalProperties:!0,allowTrailingCommas:!0,allowComments:!0},this.configurationProperties={},this.policyConfigurations=new Map,this.excludedConfigurationProperties={},B.registerSchema(A,this.resourceLanguageSettingsSchema),this.registerOverridePropertyPatternKey()}registerConfiguration(a,b=!0){return this.registerConfigurations([a],b),a}registerConfigurations(a,b=!0){let c=new Set;this.doRegisterConfigurations(a,b,c),B.registerSchema(A,this.resourceLanguageSettingsSchema),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire({properties:c})}registerDefaultConfigurations(a){let b=new Set;this.doRegisterDefaultConfigurations(a,b),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire({properties:b,defaultsOverrides:!0})}doRegisterDefaultConfigurations(a,b){this.registeredConfigurationDefaults.push(...a);let c=[];for(let{overrides:d,source:e}of a)for(let a in d){b.add(a);let f=this.configurationDefaultsOverrides.get(a)??this.configurationDefaultsOverrides.set(a,{configurationDefaultOverrides:[]}).get(a),g=d[a];if(f.configurationDefaultOverrides.push({value:g,source:e}),G.test(a)){let b=this.mergeDefaultConfigurationsForOverrideIdentifier(a,g,e,f.configurationDefaultOverrideValue);if(!b)continue;f.configurationDefaultOverrideValue=b,this.updateDefaultOverrideProperty(a,b,e),c.push(...H(a))}else{let b=this.mergeDefaultConfigurationsForConfigurationProperty(a,g,e,f.configurationDefaultOverrideValue);if(!b)continue;f.configurationDefaultOverrideValue=b;let c=this.configurationProperties[a];c&&(this.updatePropertyDefaultValue(a,c),this.updateSchema(a,c))}}this.doRegisterOverrideIdentifiers(c)}updateDefaultOverrideProperty(a,b,c){let d={type:"object",default:b.value,description:g.kg(1650,"Configure settings to be overridden for {0}.",(0,h.Mo)(a)),$ref:A,defaultDefaultValue:b.value,source:c,defaultValueSource:c};this.configurationProperties[a]=d,this.defaultLanguageConfigurationOverridesNode.properties[a]=d}mergeDefaultConfigurationsForOverrideIdentifier(a,b,c,d){let e=d?.value||{},g=d?.source??new Map;if(!(g instanceof Map))return void console.error("objectConfigurationSources is not a Map");for(let a of Object.keys(b)){let d=b[a];if(f.Gv(d)&&(f.b0(e[a])||f.Gv(e[a]))){if(e[a]={...e[a]??{},...d},c)for(let b in d)g.set(`${a}.${b}`,c)}else e[a]=d,c?g.set(a,c):g.delete(a)}return{value:e,source:g}}mergeDefaultConfigurationsForConfigurationProperty(a,b,c,d){let e=this.configurationProperties[a],g=d?.value??e?.defaultDefaultValue,h=c;if(f.Gv(b)&&(void 0!==e&&"object"===e.type||void 0===e&&(f.b0(g)||f.Gv(g)))){if(!((h=d?.source??new Map)instanceof Map))return void console.error("defaultValueSource is not a Map");for(let d in b)c&&h.set(`${a}.${d}`,c);b={...f.Gv(g)?g:{},...b}}return{value:b,source:h}}registerOverrideIdentifiers(a){this.doRegisterOverrideIdentifiers(a),this._onDidSchemaChange.fire()}doRegisterOverrideIdentifiers(a){for(let b of a)this.overrideIdentifiers.add(b);this.updateOverridePropertyPatternKey()}doRegisterConfigurations(a,b,c){a.forEach(a=>{this.validateAndRegisterProperties(a,b,a.extensionInfo,a.restrictedProperties,void 0,c),this.configurationContributors.push(a),this.registerJSONConfiguration(a)})}validateAndRegisterProperties(a,b=!0,c,d,e=4,h){e=f.z(a.scope)?e:a.scope;let i=a.properties;if(i)for(let a in i){var j,k;let l=i[a];if(b&&(j=a,k=l,j.trim()?G.test(j)?g.kg(1656,"Cannot register '{0}'. This matches property pattern '\\\\[.*\\\\]$' for describing language specific editor settings. Use 'configurationDefaults' contribution.",j):void 0!==I.getConfigurationProperties()[j]?g.kg(1657,"Cannot register '{0}'. This property is already registered.",j):k.policy?.name&&void 0!==I.getPolicyConfigurations().get(k.policy?.name)?g.kg(1658,"Cannot register '{0}'. The associated policy {1} is already registered with {2}.",j,k.policy?.name,I.getPolicyConfigurations().get(k.policy?.name)):null:g.kg(1655,"Cannot register an empty property"))){delete i[a];continue}l.source=c,l.defaultDefaultValue=i[a].default,this.updatePropertyDefaultValue(a,l),G.test(a)?l.scope=void 0:(l.scope=f.z(l.scope)?e:l.scope,l.restricted=f.z(l.restricted)?!!d?.includes(a):l.restricted),l.experiment?l.tags?.some(a=>"onexp"===a.toLowerCase())||(l.tags=l.tags??[],l.tags.push("onExP")):l.tags?.some(a=>"onexp"===a.toLowerCase())&&(console.error(`Invalid tag 'onExP' found for property '${a}'. Please use 'experiment' property instead.`),l.experiment={mode:"startup"});let m=i[a].hasOwnProperty("included")&&!i[a].included,n=i[a].policy?.name;m?(this.excludedConfigurationProperties[a]=i[a],n&&(this.policyConfigurations.set(n,a),h.add(a)),delete i[a]):(h.add(a),n&&this.policyConfigurations.set(n,a),this.configurationProperties[a]=i[a],!i[a].deprecationMessage&&i[a].markdownDeprecationMessage&&(i[a].deprecationMessage=i[a].markdownDeprecationMessage))}let l=a.allOf;if(l)for(let a of l)this.validateAndRegisterProperties(a,b,c,d,e,h)}getConfigurationProperties(){return this.configurationProperties}getPolicyConfigurations(){return this.policyConfigurations}getExcludedConfigurationProperties(){return this.excludedConfigurationProperties}registerJSONConfiguration(a){let b=a=>{let c=a.properties;if(c)for(let a in c)this.updateSchema(a,c[a]);let d=a.allOf;d?.forEach(b)};b(a)}updateSchema(a,b){switch(m[a]=b,b.scope){case 1:o[a]=b;break;case 2:s[a]=b;break;case 3:q[a]=b;break;case 7:u[a]=b;break;case 4:w[a]=b;break;case 5:y[a]=b;break;case 6:y[a]=b,this.resourceLanguageSettingsSchema.properties[a]=b}}updateOverridePropertyPatternKey(){for(let a of this.overrideIdentifiers.values()){let b=`[${a}]`,c={type:"object",description:g.kg(1651,"Configure editor settings to be overridden for a language."),errorMessage:g.kg(1652,"This setting does not support per-language configuration."),$ref:A};this.updatePropertyDefaultValue(b,c),m[b]=c,o[b]=c,q[b]=c,s[b]=c,u[b]=c,w[b]=c,y[b]=c}}registerOverridePropertyPatternKey(){let a={type:"object",description:g.kg(1653,"Configure editor settings to be overridden for a language."),errorMessage:g.kg(1654,"This setting does not support per-language configuration."),$ref:A};n[F]=a,p[F]=a,r[F]=a,t[F]=a,v[F]=a,x[F]=a,z[F]=a,this._onDidSchemaChange.fire()}updatePropertyDefaultValue(a,b){let c,d,e=this.configurationDefaultsOverrides.get(a)?.configurationDefaultOverrideValue;!e||b.disallowConfigurationDefault&&e.source||(c=e.value,d=e.source),f.b0(c)&&(c=b.defaultDefaultValue,d=void 0),f.b0(c)&&(c=function(a){switch(Array.isArray(a)?a[0]:a){case"boolean":return!1;case"integer":case"number":return 0;case"string":return"";case"array":return[];case"object":return{};default:return null}}(b.type)),b.default=c,b.defaultValueSource=d}}let D="\\[([^\\]]+)\\]",E=RegExp(D,"g"),F=`^(${D})+$`,G=new RegExp(F);function H(a){let b=[];if(G.test(a)){let c=E.exec(a);for(;c?.length;){let d=c[1].trim();d&&b.push(d),c=E.exec(a)}}return(0,d.dM)(b)}let I=new C;j.O.add(l.Configuration,I)},19929:(a,b,c)=>{"use strict";let d;function e(a){d?d instanceof h?d.loggers.push(a):d=new h([d,a]):d=a}function f(){return d}function g(a){}c.d(b,{EJ:()=>e,YQ:()=>g,tZ:()=>f});class h{constructor(a){this.loggers=a}handleObservableCreated(a,b){for(let c of this.loggers)c.handleObservableCreated(a,b)}handleOnListenerCountChanged(a,b){for(let c of this.loggers)c.handleOnListenerCountChanged(a,b)}handleObservableUpdated(a,b){for(let c of this.loggers)c.handleObservableUpdated(a,b)}handleAutorunCreated(a,b){for(let c of this.loggers)c.handleAutorunCreated(a,b)}handleAutorunDisposed(a){for(let b of this.loggers)b.handleAutorunDisposed(a)}handleAutorunDependencyChanged(a,b,c){for(let d of this.loggers)d.handleAutorunDependencyChanged(a,b,c)}handleAutorunStarted(a){for(let b of this.loggers)b.handleAutorunStarted(a)}handleAutorunFinished(a){for(let b of this.loggers)b.handleAutorunFinished(a)}handleDerivedDependencyChanged(a,b,c){for(let d of this.loggers)d.handleDerivedDependencyChanged(a,b,c)}handleDerivedCleared(a){for(let b of this.loggers)b.handleDerivedCleared(a)}handleBeginTransaction(a){for(let b of this.loggers)b.handleBeginTransaction(a)}handleEndTransaction(a){for(let b of this.loggers)b.handleEndTransaction(a)}}},20069:(a,b,c)=>{"use strict";c.d(b,{Io:()=>h,J3:()=>f,Ld:()=>g,Th:()=>function a(b,c,e,f,g){if(c=h(c),g||(g=d.f.first(i)),e.length>g.maxLen){let d=b-g.maxLen/2;return d<0?d=0:f+=d,e=e.substring(d,b+g.maxLen/2),a(b,c,e,f,g)}let j=Date.now(),k=b-1-f,l=-1,m=null;for(let a=1;!(Date.now()-j>=g.timeBudget);a++){let b=k-g.windowSize*a;c.lastIndex=Math.max(0,b);let d=function(a,b,c,d){let e;for(;e=a.exec(b);){let b=e.index||0;if(b<=c&&a.lastIndex>=c)return e;if(d>0&&b>d)break}return null}(c,e,k,l);if(!d&&m||(m=d,b<=0))break;l=b}if(m){let a={word:m[0],startColumn:f+1+m.index,endColumn:f+1+m.index+m[0].length};return c.lastIndex=0,a}return null}});var d=c(78771),e=c(57832);let f="`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?",g=function(a=""){let b="(-?\\d*\\.\\d\\w*)|([^";for(let c of f)a.indexOf(c)>=0||(b+="\\"+c);return RegExp(b+="\\s]+)","g")}();function h(a){let b=g;if(a&&a instanceof RegExp)if(a.global)b=a;else{let c="g";a.ignoreCase&&(c+="i"),a.multiline&&(c+="m"),a.unicode&&(c+="u"),b=new RegExp(a.source,c)}return b.lastIndex=0,b}let i=new e.w;i.unshift({maxLen:1e3,windowSize:15,timeBudget:150})},20393:(a,b,c)=>{"use strict";c.d(b,{P:()=>l,k:()=>m});var d=c(51864),e=c(77747),f=c(66064),g=c(52212),h=c(12010),i=c(70249),j=c(29995),k=c(88586);class l extends h._{constructor(a,b){super(),this.textModel=a,this.languageConfigurationService=b}getLanguageConfiguration(a){return this.languageConfigurationService.getLanguageConfiguration(a)}_computeIndentLevel(a){return(0,i.G)(this.textModel.getLineContent(a+1),this.textModel.getOptions().tabSize)}getActiveIndentGuide(a,b,c){this.assertNotDisposed();let d=this.textModel.getLineCount();if(a<1||a>d)throw new k.D7("Illegal value for lineNumber");let e=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,f=!!(e&&e.offSide),g=-2,h=-1,i=-2,j=-1,l=a=>{if(-1!==g&&(-2===g||g>a-1)){g=-1,h=-1;for(let b=a-2;b>=0;b--){let a=this._computeIndentLevel(b);if(a>=0){g=b,h=a;break}}}if(-2===i){i=-1,j=-1;for(let b=a;b<d;b++){let a=this._computeIndentLevel(b);if(a>=0){i=b,j=a;break}}}},m=-2,n=-1,o=-2,p=-1,q=a=>{if(-2===m){m=-1,n=-1;for(let b=a-2;b>=0;b--){let a=this._computeIndentLevel(b);if(a>=0){m=b,n=a;break}}}if(-1!==o&&(-2===o||o<a-1)){o=-1,p=-1;for(let b=a;b<d;b++){let a=this._computeIndentLevel(b);if(a>=0){o=b,p=a;break}}}},r=0,s=!0,t=0,u=!0,v=0,w=0;for(let e=0;s||u;e++){let g=a-e,k=a+e;e>1&&(g<1||g<b)&&(s=!1),e>1&&(k>d||k>c)&&(u=!1),e>5e4&&(s=!1,u=!1);let o=-1;if(s&&g>=1){let a=this._computeIndentLevel(g-1);a>=0?(i=g-1,j=a,o=Math.ceil(a/this.textModel.getOptions().indentSize)):(l(g),o=this._getIndentLevelForWhitespaceLine(f,h,j))}let x=-1;if(u&&k<=d){let a=this._computeIndentLevel(k-1);a>=0?(m=k-1,n=a,x=Math.ceil(a/this.textModel.getOptions().indentSize)):(q(k),x=this._getIndentLevelForWhitespaceLine(f,n,p))}if(0===e){w=o;continue}if(1===e){if(k<=d&&x>=0&&w+1===x){s=!1,r=k,t=k,v=x;continue}if(g>=1&&o>=0&&o-1===w){u=!1,r=g,t=g,v=o;continue}if(r=a,t=a,0===(v=w))break}s&&(o>=v?r=g:s=!1),u&&(x>=v?t=k:u=!1)}return{startLineNumber:r,endLineNumber:t,indent:v}}getLinesBracketGuides(a,b,c,f){let h,i=[];for(let c=a;c<=b;c++)i.push([]);let k=this.textModel.bracketPairs.getBracketPairsInRangeWithMinIndentation(new g.Q(a,1,b,this.textModel.getLineMaxColumn(b))).toArray();if(c&&k.length>0){let e=(a<=c.lineNumber&&c.lineNumber<=b?k:this.textModel.bracketPairs.getBracketPairsInRange(g.Q.fromPositions(c)).toArray()).filter(a=>g.Q.strictContainsPosition(a.range,c));h=(0,d.Uk)(e,a=>!0)?.range}let l=this.textModel.getOptions().bracketPairColorizationOptions.independentColorPoolPerBracketType,n=new m;for(let c of k){if(!c.closingBracketRange)continue;let d=h&&c.range.equalsRange(h);if(!d&&!f.includeInactive)continue;let g=n.getInlineClassName(c.nestingLevel,c.nestingLevelOfEqualBracketType,l)+(f.highlightActive&&d?" "+n.activeClassName:""),k=c.openingBracketRange.getStartPosition(),m=c.closingBracketRange.getStartPosition(),o=f.horizontalGuides===j.N6.Enabled||f.horizontalGuides===j.N6.EnabledForActive&&d;if(c.range.startLineNumber===c.range.endLineNumber){o&&i[c.range.startLineNumber-a].push(new j.TH(-1,c.openingBracketRange.getEndPosition().column,g,new j.pv(!1,m.column),-1,-1));continue}let p=this.getVisibleColumnFromPosition(m),q=this.getVisibleColumnFromPosition(c.openingBracketRange.getStartPosition()),r=Math.min(q,p,c.minVisibleColumnIndentation+1),s=!1;e.HG(this.textModel.getLineContent(c.closingBracketRange.startLineNumber))<c.closingBracketRange.startColumn-1&&(s=!0);let t=Math.max(k.lineNumber,a),u=Math.min(m.lineNumber,b),v=+!!s;for(let b=t;b<u+v;b++)i[b-a].push(new j.TH(r,-1,g,null,b===k.lineNumber?k.column:-1,b===m.lineNumber?m.column:-1));o&&(k.lineNumber>=a&&q>r&&i[k.lineNumber-a].push(new j.TH(r,-1,g,new j.pv(!1,k.column),-1,-1)),m.lineNumber<=b&&p>r&&i[m.lineNumber-a].push(new j.TH(r,-1,g,new j.pv(!s,m.column),-1,-1)))}for(let a of i)a.sort((a,b)=>a.visibleColumn-b.visibleColumn);return i}getVisibleColumnFromPosition(a){return f.A.visibleColumnFromColumn(this.textModel.getLineContent(a.lineNumber),a.column,this.textModel.getOptions().tabSize)+1}getLinesIndentGuides(a,b){this.assertNotDisposed();let c=this.textModel.getLineCount();if(a<1||a>c)throw Error("Illegal value for startLineNumber");if(b<1||b>c)throw Error("Illegal value for endLineNumber");let d=this.textModel.getOptions(),e=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,f=!!(e&&e.offSide),g=Array(b-a+1),h=-2,i=-1,j=-2,k=-1;for(let e=a;e<=b;e++){let b=e-a,l=this._computeIndentLevel(e-1);if(l>=0){h=e-1,i=l,g[b]=Math.ceil(l/d.indentSize);continue}if(-2===h){h=-1,i=-1;for(let a=e-2;a>=0;a--){let b=this._computeIndentLevel(a);if(b>=0){h=a,i=b;break}}}if(-1!==j&&(-2===j||j<e-1)){j=-1,k=-1;for(let a=e;a<c;a++){let b=this._computeIndentLevel(a);if(b>=0){j=a,k=b;break}}}g[b]=this._getIndentLevelForWhitespaceLine(f,i,k)}return g}_getIndentLevelForWhitespaceLine(a,b,c){let d=this.textModel.getOptions();return -1===b||-1===c?0:b<c?1+Math.floor(b/d.indentSize):b===c?Math.ceil(c/d.indentSize):a?Math.ceil(c/d.indentSize):1+Math.floor(c/d.indentSize)}}class m{constructor(){this.activeClassName="indent-active"}getInlineClassName(a,b,c){return this.getInlineClassNameOfLevel(c?b:a)}getInlineClassNameOfLevel(a){return`bracket-indent-guide lvl-${a%30}`}}},20676:()=>{},20940:(a,b,c)=>{"use strict";c.d(b,{q:()=>e});class d{constructor(){this._nativeEditContextMapping=new Map}register(a,b){return this._nativeEditContextMapping.set(a,b),{dispose:()=>{this._nativeEditContextMapping.delete(a)}}}get(a){return this._nativeEditContextMapping.get(a)}}let e=new d},21234:(a,b,c)=>{"use strict";c.d(b,{b:()=>d});class d{static equals(a,b){return a.x===b.x&&a.y===b.y}constructor(a,b){this.x=a,this.y=b}add(a){return new d(this.x+a.x,this.y+a.y)}deltaX(a){return new d(this.x+a,this.y)}deltaY(a){return new d(this.x,this.y+a)}toString(){return`(${this.x},${this.y})`}subtract(a){return new d(this.x-a.x,this.y-a.y)}scale(a){return new d(this.x*a,this.y*a)}mapComponents(a){return new d(a(this.x),a(this.y))}isZero(){return 0===this.x&&0===this.y}withThreshold(a){return this.mapComponents(b=>b>a?b-a:b<-a?b+a:0)}}},21410:(a,b,c)=>{"use strict";c.d(b,{M:()=>e});var d=c(69626);function e(a,b){a instanceof d.D?(a.setFontFamily(b.getMassagedFontFamily()),a.setFontWeight(b.fontWeight),a.setFontSize(b.fontSize),a.setFontFeatureSettings(b.fontFeatureSettings),a.setFontVariationSettings(b.fontVariationSettings),a.setLineHeight(b.lineHeight),a.setLetterSpacing(b.letterSpacing)):(a.style.fontFamily=b.getMassagedFontFamily(),a.style.fontWeight=b.fontWeight,a.style.fontSize=b.fontSize+"px",a.style.fontFeatureSettings=b.fontFeatureSettings,a.style.fontVariationSettings=b.fontVariationSettings,a.style.lineHeight=b.lineHeight+"px",a.style.letterSpacing=b.letterSpacing+"px")}},21452:(a,b,c)=>{"use strict";c.d(b,{k:()=>e,o:()=>f});var d=c(52212);class e{constructor(a,b,c){this.range=a,this.inlineClassName=b,this.type=c}}class f{constructor(a,b,c,d){this.startOffset=a,this.endOffset=b,this.inlineClassName=c,this.inlineClassNameAffectsLetterSpacing=d}toInlineDecoration(a){return new e(new d.Q(a,this.startOffset+1,a,this.endOffset+1),this.inlineClassName,3*!!this.inlineClassNameAffectsLetterSpacing)}}},21652:(a,b,c)=>{"use strict";var d,e;c.d(b,{_$:()=>d,_Y:()=>f,u1:()=>g}),(e=d||(d={})).serviceIds=new Map,e.DI_TARGET="$di$target",e.DI_DEPENDENCIES="$di$dependencies",e.getServiceDependencies=function(a){return a[e.DI_DEPENDENCIES]||[]};let f=g("instantiationService");function g(a){if(d.serviceIds.has(a))return d.serviceIds.get(a);let b=function(a,c,e){if(3!=arguments.length)throw Error("@IServiceName-decorator can only be used to decorate a parameter");a[d.DI_TARGET]===a?a[d.DI_DEPENDENCIES].push({id:b,index:e}):(a[d.DI_DEPENDENCIES]=[{id:b,index:e}],a[d.DI_TARGET]=a)};return b.toString=()=>a,d.serviceIds.set(a,b),b}},21761:(a,b,c)=>{"use strict";c.d(b,{u:()=>d});let d=(0,c(21652).u1)("ILanguageFeaturesService")},21790:()=>{},21799:(a,b,c)=>{"use strict";c.d(b,{YJ:()=>i,_8:()=>h});var d=c(19254),e=c(64825),f=c(41672);let g=d.zx?1.5:1.35;class h{static createFromValidatedSettings(a,b,c){let d=a.get(58),e=a.get(62),f=a.get(61),g=a.get(60),i=a.get(63),j=a.get(75),k=a.get(72);return h._create(d,e,f,g,i,j,k,b,c)}static _create(a,b,c,d,i,j,k,l,m){0===j?j=g*c:j<8&&(j*=c),(j=Math.round(j))<8&&(j=8);let n=1+(m?0:.1*f.D.getZoomLevel());if(c*=n,j*=n,i===e.r_.TRANSLATE)if("normal"===b||"bold"===b)i=e.r_.OFF;else{let a=parseInt(b,10);i=`'wght' ${a}`,b="normal"}return new h({pixelRatio:l,fontFamily:a,fontWeight:b,fontSize:c,fontFeatureSettings:d,fontVariationSettings:i,lineHeight:j,letterSpacing:k})}constructor(a){this._bareFontInfoBrand=void 0,this.pixelRatio=a.pixelRatio,this.fontFamily=String(a.fontFamily),this.fontWeight=String(a.fontWeight),this.fontSize=a.fontSize,this.fontFeatureSettings=a.fontFeatureSettings,this.fontVariationSettings=a.fontVariationSettings,this.lineHeight=0|a.lineHeight,this.letterSpacing=a.letterSpacing}getId(){return`${this.pixelRatio}-${this.fontFamily}-${this.fontWeight}-${this.fontSize}-${this.fontFeatureSettings}-${this.fontVariationSettings}-${this.lineHeight}-${this.letterSpacing}`}getMassagedFontFamily(){let a=e.jU.fontFamily,b=h._wrapInQuotes(this.fontFamily);return a&&this.fontFamily!==a?`${b}, ${a}`:b}static _wrapInQuotes(a){return/[,"']/.test(a)?a:/[+ ]/.test(a)?`"${a}"`:a}}class i extends h{constructor(a,b){super(a),this._editorStylingBrand=void 0,this.version=2,this.isTrusted=b,this.isMonospace=a.isMonospace,this.typicalHalfwidthCharacterWidth=a.typicalHalfwidthCharacterWidth,this.typicalFullwidthCharacterWidth=a.typicalFullwidthCharacterWidth,this.canUseHalfwidthRightwardsArrow=a.canUseHalfwidthRightwardsArrow,this.spaceWidth=a.spaceWidth,this.middotWidth=a.middotWidth,this.wsmiddotWidth=a.wsmiddotWidth,this.maxDigitWidth=a.maxDigitWidth}equals(a){return this.fontFamily===a.fontFamily&&this.fontWeight===a.fontWeight&&this.fontSize===a.fontSize&&this.fontFeatureSettings===a.fontFeatureSettings&&this.fontVariationSettings===a.fontVariationSettings&&this.lineHeight===a.lineHeight&&this.letterSpacing===a.letterSpacing&&this.typicalHalfwidthCharacterWidth===a.typicalHalfwidthCharacterWidth&&this.typicalFullwidthCharacterWidth===a.typicalFullwidthCharacterWidth&&this.canUseHalfwidthRightwardsArrow===a.canUseHalfwidthRightwardsArrow&&this.spaceWidth===a.spaceWidth&&this.middotWidth===a.middotWidth&&this.wsmiddotWidth===a.wsmiddotWidth&&this.maxDigitWidth===a.maxDigitWidth}}},22285:(a,b,c)=>{"use strict";c.d(b,{J:()=>g,k:()=>f});var d=c(98896);let e=Object.create(null);function f(a,b){if((0,d.Kg)(b)){let c=e[b];if(void 0===c)throw Error(`${a} references an unknown codicon: ${b}`);b=c}return e[a]=b,{id:a}}function g(){return e}},22360:(a,b,c)=>{"use strict";c.d(b,{a:()=>d,w:()=>e});let d=(0,c(21652).u1)("dataChannelService");class e{getDataChannel(a){return{sendData:()=>{}}}}},23293:(a,b,c)=>{"use strict";c.d(b,{c:()=>j});var d=c(63048),e=c(3457),f=c(40201);class g extends f.jG{constructor(a){super(),this._onDidChange=this._register(new e.vl),this.onDidChange=this._onDidChange.event,this._listener=()=>this._handleChange(a,!0),this._mediaQueryList=null,this._handleChange(a,!1)}_handleChange(a,b){this._mediaQueryList?.removeEventListener("change",this._listener),this._mediaQueryList=a.matchMedia(`(resolution: ${a.devicePixelRatio}dppx)`),this._mediaQueryList.addEventListener("change",this._listener),b&&this._onDidChange.fire()}}class h extends f.jG{get value(){return this._value}constructor(a){super(),this._onDidChange=this._register(new e.vl),this.onDidChange=this._onDidChange.event,this._value=this._getPixelRatio(a);const b=this._register(new g(a));this._register(b.onDidChange(()=>{this._value=this._getPixelRatio(a),this._onDidChange.fire(this._value)}))}_getPixelRatio(a){let b=document.createElement("canvas").getContext("2d");return(a.devicePixelRatio||1)/(b.webkitBackingStorePixelRatio||b.mozBackingStorePixelRatio||b.msBackingStorePixelRatio||b.oBackingStorePixelRatio||b.backingStorePixelRatio||1)}}class i{constructor(){this.mapWindowIdToPixelRatioMonitor=new Map}_getOrCreatePixelRatioMonitor(a){let b=(0,d.Q2)(a),c=this.mapWindowIdToPixelRatioMonitor.get(b);return c||(c=(0,f.lC)(new h(a)),this.mapWindowIdToPixelRatioMonitor.set(b,c),(0,f.lC)(e.Jh.once(d.Fv)(({vscodeWindowId:a})=>{a===b&&(c?.dispose(),this.mapWindowIdToPixelRatioMonitor.delete(b))}))),c}getInstance(a){return this._getOrCreatePixelRatioMonitor(a)}}let j=new i},23496:(a,b,c)=>{"use strict";c.d(b,{W:()=>m,m:()=>l});var d=c(42891),e=c(29139),f=c(88586),g=c(77747),h=c(95554),i=c(52212),j=c(53918),k=c(85268);class l{static fromStringEdit(a,b){return new l(a.replacements.map(a=>m.fromStringReplacement(a,b)))}static fromParallelReplacementsUnsorted(a){return new l(a.slice().sort((0,d.VE)(a=>a.range,i.Q.compareRangesUsingStarts)))}constructor(a){this.replacements=a,(0,e.Ft)(()=>(0,e.Xo)(a,(a,b)=>a.range.getEndPosition().isBeforeOrEqual(b.range.getStartPosition())))}mapPosition(a){let b=0,c=0,d=0;for(let e of this.replacements){let f=e.range.getStartPosition();if(a.isBeforeOrEqual(f))break;let g=e.range.getEndPosition(),i=j.W.ofText(e.text);if(a.isBefore(g)){let a=new h.y(f.lineNumber+b,f.column+(f.lineNumber+b===c?d:0)),e=i.addToPosition(a);return n(a,e)}f.lineNumber+b!==c&&(d=0),b+=i.lineCount-(e.range.endLineNumber-e.range.startLineNumber),0===i.lineCount?g.lineNumber!==f.lineNumber?d+=i.columnCount-(g.column-1):d+=i.columnCount-(g.column-f.column):d=i.columnCount,c=g.lineNumber+b}return new h.y(a.lineNumber+b,a.column+(a.lineNumber+b===c?d:0))}mapRange(a){var b,c;return n((b=this.mapPosition(a.getStartPosition()))instanceof h.y?b:b.getStartPosition(),(c=this.mapPosition(a.getEndPosition()))instanceof h.y?c:c.getEndPosition())}apply(a){let b="",c=new h.y(1,1);for(let d of this.replacements){let e=d.range,f=e.getStartPosition(),g=e.getEndPosition(),h=n(c,f);h.isEmpty()||(b+=a.getValueOfRange(h)),b+=d.text,c=g}let d=n(c,a.endPositionExclusive);return d.isEmpty()||(b+=a.getValueOfRange(d)),b}applyToString(a){let b=new k.tp(a);return this.apply(b)}getNewRanges(){let a=[],b=0,c=0,d=0;for(let e of this.replacements){let f=j.W.ofText(e.text),g=h.y.lift({lineNumber:e.range.startLineNumber+c,column:e.range.startColumn+(e.range.startLineNumber===b?d:0)}),i=f.createRange(g);a.push(i),c=i.endLineNumber-e.range.endLineNumber,d=i.endColumn-e.range.endColumn,b=e.range.endLineNumber}return a}toReplacement(a){if(0===this.replacements.length)throw new f.D7;if(1===this.replacements.length)return this.replacements[0];let b=this.replacements[0].range.getStartPosition(),c=this.replacements[this.replacements.length-1].range.getEndPosition(),d="";for(let b=0;b<this.replacements.length;b++){let c=this.replacements[b];if(d+=c.text,b<this.replacements.length-1){let e=this.replacements[b+1],f=i.Q.fromPositions(c.range.getEndPosition(),e.range.getStartPosition());d+=a.getValueOfRange(f)}}return new m(i.Q.fromPositions(b,c),d)}toString(a){return void 0===a?this.replacements.map(a=>a.toString()).join("\n"):"string"==typeof a?this.toString(new k.tp(a)):0===this.replacements.length?"":this.replacements.map(b=>{let c=a.getValueOfRange(b.range),d=i.Q.fromPositions(new h.y(Math.max(1,b.range.startLineNumber-1),1),b.range.getStartPosition()),e=a.getValueOfRange(d);e.length>10&&(e="..."+e.substring(e.length-10));let f=i.Q.fromPositions(b.range.getEndPosition(),new h.y(b.range.endLineNumber+1,1)),g=a.getValueOfRange(f);g.length>10&&(g=g.substring(0,10)+"...");let j=c;if(j.length>10){let a=Math.floor(5);j=j.substring(0,a)+"..."+j.substring(j.length-a)}let k=b.text;if(k.length>10){let a=Math.floor(5);k=k.substring(0,a)+"..."+k.substring(k.length-a)}return 0===j.length?`${e}❰${k}❱${g}`:`${e}❰${j}↦${k}❱${g}`}).join("\n")}}class m{static joinReplacements(a,b){if(0===a.length)throw new f.D7;if(1===a.length)return a[0];let c=a[0].range.getStartPosition(),d=a[a.length-1].range.getEndPosition(),e="";for(let c=0;c<a.length;c++){let d=a[c];if(e+=d.text,c<a.length-1){let f=a[c+1],g=i.Q.fromPositions(d.range.getEndPosition(),f.range.getStartPosition());e+=b.getValueOfRange(g)}}return new m(i.Q.fromPositions(c,d),e)}static fromStringReplacement(a,b){return new m(b.getTransformer().getRange(a.replaceRange),a.newText)}static delete(a){return new m(a,"")}constructor(a,b){this.range=a,this.text=b}get isEmpty(){return this.range.isEmpty()&&0===this.text.length}static equals(a,b){return a.range.equalsRange(b.range)&&a.text===b.text}equals(a){return m.equals(this,a)}removeCommonPrefixAndSuffix(a){return this.removeCommonPrefix(a).removeCommonSuffix(a)}removeCommonPrefix(a){let b=a.getValueOfRange(this.range).replaceAll("\r\n","\n"),c=this.text.replaceAll("\r\n","\n"),d=(0,g.Qp)(b,c),e=j.W.ofText(b.substring(0,d)).addToPosition(this.range.getStartPosition()),f=c.substring(d);return new m(i.Q.fromPositions(e,this.range.getEndPosition()),f)}removeCommonSuffix(a){let b=a.getValueOfRange(this.range).replaceAll("\r\n","\n"),c=this.text.replaceAll("\r\n","\n"),d=(0,g.Vi)(b,c),e=j.W.ofText(b.substring(0,b.length-d)).addToPosition(this.range.getStartPosition()),f=c.substring(0,c.length-d);return new m(i.Q.fromPositions(this.range.getStartPosition(),e),f)}toString(){let a=this.range.getStartPosition(),b=this.range.getEndPosition();return`(${a.lineNumber},${a.column} -> ${b.lineNumber},${b.column}): "${this.text}"`}}function n(a,b){if(a.lineNumber===b.lineNumber&&a.column===Number.MAX_SAFE_INTEGER)return i.Q.fromPositions(b,b);if(!a.isBeforeOrEqual(b))throw new f.D7("start must be before end");return new i.Q(a.lineNumber,a.column,b.lineNumber,b.column)}},23572:(a,b,c)=>{"use strict";c.d(b,{$D:()=>d,I_:()=>f,To:()=>e,Ym:()=>g});let d=(0,c(21652).u1)("undoRedoService");class e{constructor(a,b){this.resource=a,this.elements=b}}class f{static{this._ID=0}constructor(){this.id=f._ID++,this.order=1}nextOrder(){return 0===this.id?0:this.order++}static{this.None=new f}}class g{static{this._ID=0}constructor(){this.id=g._ID++,this.order=1}nextOrder(){return 0===this.id?0:this.order++}static{this.None=new g}}},23703:()=>{},24348:(a,b,c)=>{"use strict";let d,e;c.d(b,{DR:()=>o,cj:()=>h,oc:()=>i});var f,g,h,i,j=c(98274),k=c(76302),l=c(21652);(f=h||(h={}))[f.Hint=1]="Hint",f[f.Info=2]="Info",f[f.Warning=4]="Warning",f[f.Error=8]="Error",(g=h||(h={})).compare=function(a,b){return b-a},(d=Object.create(null))[g.Error]=(0,k.kg)(1715,"Error"),d[g.Warning]=(0,k.kg)(1716,"Warning"),d[g.Info]=(0,k.kg)(1717,"Info"),g.toString=function(a){return d[a]||""},(e=Object.create(null))[g.Error]=(0,k.kg)(1718,"Errors"),e[g.Warning]=(0,k.kg)(1719,"Warnings"),e[g.Info]=(0,k.kg)(1720,"Infos"),g.toStringPlural=function(a){return e[a]||""},g.fromSeverity=function(a){switch(a){case j.A.Error:return g.Error;case j.A.Warning:return g.Warning;case j.A.Info:return g.Info;case j.A.Ignore:return g.Hint}},g.toSeverity=function(a){switch(a){case g.Error:return j.A.Error;case g.Warning:return j.A.Warning;case g.Info:return j.A.Info;case g.Hint:return j.A.Ignore}};var m=i||(i={});function n(a,b){let c=[""];return a.source?c.push(a.source.replace("\xa6","\\\xa6")):c.push(""),a.code?"string"==typeof a.code?c.push(a.code.replace("\xa6","\\\xa6")):c.push(a.code.value.replace("\xa6","\\\xa6")):c.push(""),void 0!==a.severity&&null!==a.severity?c.push(h.toString(a.severity)):c.push(""),a.message&&b?c.push(a.message.replace("\xa6","\\\xa6")):c.push(""),void 0!==a.startLineNumber&&null!==a.startLineNumber?c.push(a.startLineNumber.toString()):c.push(""),void 0!==a.startColumn&&null!==a.startColumn?c.push(a.startColumn.toString()):c.push(""),void 0!==a.endLineNumber&&null!==a.endLineNumber?c.push(a.endLineNumber.toString()):c.push(""),void 0!==a.endColumn&&null!==a.endColumn?c.push(a.endColumn.toString()):c.push(""),c.push(""),c.join("\xa6")}m.makeKey=function(a){return n(a,!0)},m.makeKeyOptionalMessage=n;let o=(0,l.u1)("markerService")},24405:(a,b,c)=>{"use strict";c.d(b,{Nt:()=>e,Rh:()=>h});var d=c(76302);let e=(0,c(21652).u1)("accessibilitySignalService");Symbol("AcknowledgeDocCommentsToken");class f{static register(a){return new f(a.fileName)}static{this.error=f.register({fileName:"error.mp3"})}static{this.warning=f.register({fileName:"warning.mp3"})}static{this.success=f.register({fileName:"success.mp3"})}static{this.foldedArea=f.register({fileName:"foldedAreas.mp3"})}static{this.break=f.register({fileName:"break.mp3"})}static{this.quickFixes=f.register({fileName:"quickFixes.mp3"})}static{this.taskCompleted=f.register({fileName:"taskCompleted.mp3"})}static{this.taskFailed=f.register({fileName:"taskFailed.mp3"})}static{this.terminalBell=f.register({fileName:"terminalBell.mp3"})}static{this.diffLineInserted=f.register({fileName:"diffLineInserted.mp3"})}static{this.diffLineDeleted=f.register({fileName:"diffLineDeleted.mp3"})}static{this.diffLineModified=f.register({fileName:"diffLineModified.mp3"})}static{this.requestSent=f.register({fileName:"requestSent.mp3"})}static{this.responseReceived1=f.register({fileName:"responseReceived1.mp3"})}static{this.responseReceived2=f.register({fileName:"responseReceived2.mp3"})}static{this.responseReceived3=f.register({fileName:"responseReceived3.mp3"})}static{this.responseReceived4=f.register({fileName:"responseReceived4.mp3"})}static{this.clear=f.register({fileName:"clear.mp3"})}static{this.save=f.register({fileName:"save.mp3"})}static{this.format=f.register({fileName:"format.mp3"})}static{this.voiceRecordingStarted=f.register({fileName:"voiceRecordingStarted.mp3"})}static{this.voiceRecordingStopped=f.register({fileName:"voiceRecordingStopped.mp3"})}static{this.progress=f.register({fileName:"progress.mp3"})}static{this.chatEditModifiedFile=f.register({fileName:"chatEditModifiedFile.mp3"})}static{this.editsKept=f.register({fileName:"editsKept.mp3"})}static{this.editsUndone=f.register({fileName:"editsUndone.mp3"})}static{this.nextEditSuggestion=f.register({fileName:"nextEditSuggestion.mp3"})}static{this.terminalCommandSucceeded=f.register({fileName:"terminalCommandSucceeded.mp3"})}static{this.chatUserActionRequired=f.register({fileName:"chatUserActionRequired.mp3"})}static{this.codeActionTriggered=f.register({fileName:"codeActionTriggered.mp3"})}static{this.codeActionApplied=f.register({fileName:"codeActionApplied.mp3"})}constructor(a){this.fileName=a}}class g{constructor(a){this.randomOneOf=a}}class h{constructor(a,b,c,d,e,f,g=!1){this.sound=a,this.name=b,this.legacySoundSettingsKey=c,this.settingsKey=d,this.legacyAnnouncementSettingsKey=e,this.announcementMessage=f,this.managesOwnEnablement=g}static{this._signals=new Set}static register(a){let b=new h(new g("randomOneOf"in a.sound?a.sound.randomOneOf:[a.sound]),a.name,a.legacySoundSettingsKey,a.settingsKey,a.legacyAnnouncementSettingsKey,a.announcementMessage,a.managesOwnEnablement);return h._signals.add(b),b}static{this.errorAtPosition=h.register({name:(0,d.kg)(1561,"Error at Position"),sound:f.error,announcementMessage:(0,d.kg)(1562,"Error"),settingsKey:"accessibility.signals.positionHasError",delaySettingsKey:"accessibility.signalOptions.delays.errorAtPosition"})}static{this.warningAtPosition=h.register({name:(0,d.kg)(1563,"Warning at Position"),sound:f.warning,announcementMessage:(0,d.kg)(1564,"Warning"),settingsKey:"accessibility.signals.positionHasWarning",delaySettingsKey:"accessibility.signalOptions.delays.warningAtPosition"})}static{this.errorOnLine=h.register({name:(0,d.kg)(1565,"Error on Line"),sound:f.error,legacySoundSettingsKey:"audioCues.lineHasError",legacyAnnouncementSettingsKey:"accessibility.alert.error",announcementMessage:(0,d.kg)(1566,"Error on Line"),settingsKey:"accessibility.signals.lineHasError"})}static{this.warningOnLine=h.register({name:(0,d.kg)(1567,"Warning on Line"),sound:f.warning,legacySoundSettingsKey:"audioCues.lineHasWarning",legacyAnnouncementSettingsKey:"accessibility.alert.warning",announcementMessage:(0,d.kg)(1568,"Warning on Line"),settingsKey:"accessibility.signals.lineHasWarning"})}static{this.foldedArea=h.register({name:(0,d.kg)(1569,"Folded Area on Line"),sound:f.foldedArea,legacySoundSettingsKey:"audioCues.lineHasFoldedArea",legacyAnnouncementSettingsKey:"accessibility.alert.foldedArea",announcementMessage:(0,d.kg)(1570,"Folded"),settingsKey:"accessibility.signals.lineHasFoldedArea"})}static{this.break=h.register({name:(0,d.kg)(1571,"Breakpoint on Line"),sound:f.break,legacySoundSettingsKey:"audioCues.lineHasBreakpoint",legacyAnnouncementSettingsKey:"accessibility.alert.breakpoint",announcementMessage:(0,d.kg)(1572,"Breakpoint"),settingsKey:"accessibility.signals.lineHasBreakpoint"})}static{this.inlineSuggestion=h.register({name:(0,d.kg)(1573,"Inline Suggestion on Line"),sound:f.quickFixes,legacySoundSettingsKey:"audioCues.lineHasInlineSuggestion",settingsKey:"accessibility.signals.lineHasInlineSuggestion"})}static{this.nextEditSuggestion=h.register({name:(0,d.kg)(1574,"Next Edit Suggestion on Line"),sound:f.nextEditSuggestion,legacySoundSettingsKey:"audioCues.nextEditSuggestion",settingsKey:"accessibility.signals.nextEditSuggestion",announcementMessage:(0,d.kg)(1575,"Next Edit Suggestion")})}static{this.terminalQuickFix=h.register({name:(0,d.kg)(1576,"Terminal Quick Fix"),sound:f.quickFixes,legacySoundSettingsKey:"audioCues.terminalQuickFix",legacyAnnouncementSettingsKey:"accessibility.alert.terminalQuickFix",announcementMessage:(0,d.kg)(1577,"Quick Fix"),settingsKey:"accessibility.signals.terminalQuickFix"})}static{this.onDebugBreak=h.register({name:(0,d.kg)(1578,"Debugger Stopped on Breakpoint"),sound:f.break,legacySoundSettingsKey:"audioCues.onDebugBreak",legacyAnnouncementSettingsKey:"accessibility.alert.onDebugBreak",announcementMessage:(0,d.kg)(1579,"Breakpoint"),settingsKey:"accessibility.signals.onDebugBreak"})}static{this.noInlayHints=h.register({name:(0,d.kg)(1580,"No Inlay Hints on Line"),sound:f.error,legacySoundSettingsKey:"audioCues.noInlayHints",legacyAnnouncementSettingsKey:"accessibility.alert.noInlayHints",announcementMessage:(0,d.kg)(1581,"No Inlay Hints"),settingsKey:"accessibility.signals.noInlayHints"})}static{this.taskCompleted=h.register({name:(0,d.kg)(1582,"Task Completed"),sound:f.taskCompleted,legacySoundSettingsKey:"audioCues.taskCompleted",legacyAnnouncementSettingsKey:"accessibility.alert.taskCompleted",announcementMessage:(0,d.kg)(1583,"Task Completed"),settingsKey:"accessibility.signals.taskCompleted"})}static{this.taskFailed=h.register({name:(0,d.kg)(1584,"Task Failed"),sound:f.taskFailed,legacySoundSettingsKey:"audioCues.taskFailed",legacyAnnouncementSettingsKey:"accessibility.alert.taskFailed",announcementMessage:(0,d.kg)(1585,"Task Failed"),settingsKey:"accessibility.signals.taskFailed"})}static{this.terminalCommandFailed=h.register({name:(0,d.kg)(1586,"Terminal Command Failed"),sound:f.error,legacySoundSettingsKey:"audioCues.terminalCommandFailed",legacyAnnouncementSettingsKey:"accessibility.alert.terminalCommandFailed",announcementMessage:(0,d.kg)(1587,"Command Failed"),settingsKey:"accessibility.signals.terminalCommandFailed"})}static{this.terminalCommandSucceeded=h.register({name:(0,d.kg)(1588,"Terminal Command Succeeded"),sound:f.terminalCommandSucceeded,announcementMessage:(0,d.kg)(1589,"Command Succeeded"),settingsKey:"accessibility.signals.terminalCommandSucceeded"})}static{this.terminalBell=h.register({name:(0,d.kg)(1590,"Terminal Bell"),sound:f.terminalBell,legacySoundSettingsKey:"audioCues.terminalBell",legacyAnnouncementSettingsKey:"accessibility.alert.terminalBell",announcementMessage:(0,d.kg)(1591,"Terminal Bell"),settingsKey:"accessibility.signals.terminalBell"})}static{this.notebookCellCompleted=h.register({name:(0,d.kg)(1592,"Notebook Cell Completed"),sound:f.taskCompleted,legacySoundSettingsKey:"audioCues.notebookCellCompleted",legacyAnnouncementSettingsKey:"accessibility.alert.notebookCellCompleted",announcementMessage:(0,d.kg)(1593,"Notebook Cell Completed"),settingsKey:"accessibility.signals.notebookCellCompleted"})}static{this.notebookCellFailed=h.register({name:(0,d.kg)(1594,"Notebook Cell Failed"),sound:f.taskFailed,legacySoundSettingsKey:"audioCues.notebookCellFailed",legacyAnnouncementSettingsKey:"accessibility.alert.notebookCellFailed",announcementMessage:(0,d.kg)(1595,"Notebook Cell Failed"),settingsKey:"accessibility.signals.notebookCellFailed"})}static{this.diffLineInserted=h.register({name:(0,d.kg)(1596,"Diff Line Inserted"),sound:f.diffLineInserted,legacySoundSettingsKey:"audioCues.diffLineInserted",settingsKey:"accessibility.signals.diffLineInserted"})}static{this.diffLineDeleted=h.register({name:(0,d.kg)(1597,"Diff Line Deleted"),sound:f.diffLineDeleted,legacySoundSettingsKey:"audioCues.diffLineDeleted",settingsKey:"accessibility.signals.diffLineDeleted"})}static{this.diffLineModified=h.register({name:(0,d.kg)(1598,"Diff Line Modified"),sound:f.diffLineModified,legacySoundSettingsKey:"audioCues.diffLineModified",settingsKey:"accessibility.signals.diffLineModified"})}static{this.chatEditModifiedFile=h.register({name:(0,d.kg)(1599,"Chat Edit Modified File"),sound:f.chatEditModifiedFile,announcementMessage:(0,d.kg)(1600,"File Modified from Chat Edits"),settingsKey:"accessibility.signals.chatEditModifiedFile"})}static{this.chatRequestSent=h.register({name:(0,d.kg)(1601,"Chat Request Sent"),sound:f.requestSent,legacySoundSettingsKey:"audioCues.chatRequestSent",legacyAnnouncementSettingsKey:"accessibility.alert.chatRequestSent",announcementMessage:(0,d.kg)(1602,"Chat Request Sent"),settingsKey:"accessibility.signals.chatRequestSent"})}static{this.chatResponseReceived=h.register({name:(0,d.kg)(1603,"Chat Response Received"),legacySoundSettingsKey:"audioCues.chatResponseReceived",sound:{randomOneOf:[f.responseReceived1,f.responseReceived2,f.responseReceived3,f.responseReceived4]},settingsKey:"accessibility.signals.chatResponseReceived"})}static{this.codeActionTriggered=h.register({name:(0,d.kg)(1604,"Code Action Request Triggered"),sound:f.codeActionTriggered,legacySoundSettingsKey:"audioCues.codeActionRequestTriggered",legacyAnnouncementSettingsKey:"accessibility.alert.codeActionRequestTriggered",announcementMessage:(0,d.kg)(1605,"Code Action Request Triggered"),settingsKey:"accessibility.signals.codeActionTriggered"})}static{this.codeActionApplied=h.register({name:(0,d.kg)(1606,"Code Action Applied"),legacySoundSettingsKey:"audioCues.codeActionApplied",sound:f.codeActionApplied,settingsKey:"accessibility.signals.codeActionApplied"})}static{this.progress=h.register({name:(0,d.kg)(1607,"Progress"),sound:f.progress,legacySoundSettingsKey:"audioCues.chatResponsePending",legacyAnnouncementSettingsKey:"accessibility.alert.progress",announcementMessage:(0,d.kg)(1608,"Progress"),settingsKey:"accessibility.signals.progress"})}static{this.clear=h.register({name:(0,d.kg)(1609,"Clear"),sound:f.clear,legacySoundSettingsKey:"audioCues.clear",legacyAnnouncementSettingsKey:"accessibility.alert.clear",announcementMessage:(0,d.kg)(1610,"Clear"),settingsKey:"accessibility.signals.clear"})}static{this.save=h.register({name:(0,d.kg)(1611,"Save"),sound:f.save,legacySoundSettingsKey:"audioCues.save",legacyAnnouncementSettingsKey:"accessibility.alert.save",announcementMessage:(0,d.kg)(1612,"Save"),settingsKey:"accessibility.signals.save"})}static{this.format=h.register({name:(0,d.kg)(1613,"Format"),sound:f.format,legacySoundSettingsKey:"audioCues.format",legacyAnnouncementSettingsKey:"accessibility.alert.format",announcementMessage:(0,d.kg)(1614,"Format"),settingsKey:"accessibility.signals.format"})}static{this.voiceRecordingStarted=h.register({name:(0,d.kg)(1615,"Voice Recording Started"),sound:f.voiceRecordingStarted,legacySoundSettingsKey:"audioCues.voiceRecordingStarted",settingsKey:"accessibility.signals.voiceRecordingStarted"})}static{this.voiceRecordingStopped=h.register({name:(0,d.kg)(1616,"Voice Recording Stopped"),sound:f.voiceRecordingStopped,legacySoundSettingsKey:"audioCues.voiceRecordingStopped",settingsKey:"accessibility.signals.voiceRecordingStopped"})}static{this.editsKept=h.register({name:(0,d.kg)(1617,"Edits Kept"),sound:f.editsKept,announcementMessage:(0,d.kg)(1618,"Edits Kept"),settingsKey:"accessibility.signals.editsKept"})}static{this.editsUndone=h.register({name:(0,d.kg)(1619,"Undo Edits"),sound:f.editsUndone,announcementMessage:(0,d.kg)(1620,"Edits Undone"),settingsKey:"accessibility.signals.editsUndone"})}static{this.chatUserActionRequired=h.register({name:(0,d.kg)(1621,"Chat User Action Required"),sound:f.chatUserActionRequired,announcementMessage:(0,d.kg)(1622,"Chat User Action Required"),settingsKey:"accessibility.signals.chatUserActionRequired",managesOwnEnablement:!0})}}},24783:()=>{},25126:()=>{},25129:(a,b,c)=>{"use strict";c.d(b,{DX:()=>y,E_:()=>D,Fl:()=>E,HW:()=>H,PF:()=>A,aU:()=>K,dS:()=>e,fE:()=>w,gW:()=>F,ih:()=>L,ke:()=>C,ks:()=>z,qO:()=>B,tc:()=>M,uB:()=>v,xX:()=>G});var d,e,f=c(76302),g=c(99951),h=c(1590),i=c(95554),j=c(67887),k=c(78859),l=c(25644),m=c(42724),n=c(5738),o=c(21652),p=c(33340),q=c(53764),r=c(1136),s=c(98896),t=c(12546),u=c(63048);class v{constructor(a){this.id=a.id,this.precondition=a.precondition,this._kbOpts=a.kbOpts,this._menuOpts=a.menuOpts,this.metadata=a.metadata}register(){if(Array.isArray(this._menuOpts)?this._menuOpts.forEach(this._registerMenuItem,this):this._menuOpts&&this._registerMenuItem(this._menuOpts),this._kbOpts)for(let a of Array.isArray(this._kbOpts)?this._kbOpts:[this._kbOpts]){let b=a.kbExpr;this.precondition&&(b=b?n.M$.and(b,this.precondition):this.precondition);let c={id:this.id,weight:a.weight,args:a.args,when:b,primary:a.primary,secondary:a.secondary,win:a.win,linux:a.linux,mac:a.mac};p.f.registerKeybindingRule(c)}m.w.registerCommand({id:this.id,handler:(a,b)=>this.runCommand(a,b),metadata:this.metadata})}_registerMenuItem(a){l.ZG.appendMenuItem(a.menuId,{group:a.group,command:{id:this.id,title:a.title,icon:a.icon,precondition:this.precondition},when:a.when,order:a.order})}}class w extends v{constructor(){super(...arguments),this._implementations=[]}addImplementation(a,b,c,d){return this._implementations.push({priority:a,name:b,implementation:c,when:d}),this._implementations.sort((a,b)=>b.priority-a.priority),{dispose:()=>{for(let a=0;a<this._implementations.length;a++)if(this._implementations[a].implementation===c)return void this._implementations.splice(a,1)}}}runCommand(a,b){let c=a.get(t.rr),d=a.get(n.fN);for(let e of(c.trace(`Executing Command '${this.id}' which has ${this._implementations.length} bound.`),this._implementations)){if(e.when){let a=d.getContext((0,u.bq)());if(!e.when.evaluate(a))continue}let f=e.implementation(a,b);if(f){if(c.trace(`Command '${this.id}' was handled by '${e.name}'.`),"boolean"==typeof f)return;return f}}c.trace(`The Command '${this.id}' was not handled by any implementation.`)}}class x extends v{constructor(a,b){super(b),this.command=a}runCommand(a,b){return this.command.runCommand(a,b)}}class y extends v{static bindToContribution(a){return class extends y{constructor(a){super(a),this._callback=a.handler}runEditorCommand(b,c,d){let e=a(c);e&&this._callback(e,d)}}}static runEditorCommand(a,b,c,d){let e=a.get(h.T),f=e.getFocusedCodeEditor()||e.getActiveCodeEditor();if(f)return f.invokeWithinContext(a=>{if(a.get(n.fN).contextMatchesRules(c??void 0))return d(a,f,b)})}runCommand(a,b){return y.runEditorCommand(a,b,this.precondition,(a,b,c)=>this.runEditorCommand(a,b,c))}}class z extends y{static convertOptions(a){let b;function c(b){return b.menuId||(b.menuId=l.D8.EditorContext),b.title||(b.title="string"==typeof a.label?a.label:a.label.value),b.when=n.M$.and(a.precondition,b.when),b}return b=Array.isArray(a.menuOpts)?a.menuOpts:a.menuOpts?[a.menuOpts]:[],Array.isArray(a.contextMenuOpts)?b.push(...a.contextMenuOpts.map(c)):a.contextMenuOpts&&b.push(c(a.contextMenuOpts)),a.menuOpts=b,a}constructor(a){super(z.convertOptions(a)),"string"==typeof a.label?(this.label=a.label,this.alias=a.alias??a.label):(this.label=a.label.value,this.alias=a.alias??a.label.original)}runEditorCommand(a,b,c){return this.reportTelemetry(a,b),this.run(a,b,c||{})}reportTelemetry(a,b){a.get(r.k).publicLog2("editorActionInvoked",{name:this.label,id:this.id})}}class A extends z{constructor(){super(...arguments),this._implementations=[]}addImplementation(a,b){return this._implementations.push([a,b]),this._implementations.sort((a,b)=>b[0]-a[0]),{dispose:()=>{for(let a=0;a<this._implementations.length;a++)if(this._implementations[a][1]===b)return void this._implementations.splice(a,1)}}}run(a,b,c){for(let d of this._implementations){let e=d[1](a,b,c);if(e){if("boolean"==typeof e)return;return e}}}}class B extends l.L{run(a,...b){let c=a.get(h.T),d=c.getFocusedCodeEditor()||c.getActiveCodeEditor();if(d)return d.invokeWithinContext(a=>{let c=a.get(n.fN),e=a.get(t.rr);return c.contextMatchesRules(this.desc.precondition??void 0)?this.runEditorCommand(a,d,...b):void e.debug("[EditorAction2] NOT running command because its precondition is FALSE",this.desc.id,this.desc.precondition?.serialize())})}}function C(a,b){m.w.registerCommand(a,function(a,...c){let d=a.get(o._Y),[e,f]=c;(0,s.j)(g.r.isUri(e)),(0,s.j)(i.y.isIPosition(f));let h=a.get(j.S).getModel(e);if(h){let a=i.y.lift(f);return d.invokeFunction(b,h,a,...c.slice(2))}return a.get(k.b).createModelReference(e).then(a=>new Promise((e,g)=>{try{let g=d.invokeFunction(b,a.object.textEditorModel,i.y.lift(f),c.slice(2));e(g)}catch(a){g(a)}}).finally(()=>{a.dispose()}))})}function D(a){return I.INSTANCE.registerEditorCommand(a),a}function E(a){let b=new a;return I.INSTANCE.registerEditorAction(b),b}function F(a){return I.INSTANCE.registerEditorAction(a),a}function G(a){I.INSTANCE.registerEditorAction(a)}function H(a,b,c){I.INSTANCE.registerEditorContribution(a,b,c)}(d=e||(e={})).getEditorCommand=function(a){return I.INSTANCE.getEditorCommand(a)},d.getEditorActions=function(){return I.INSTANCE.getEditorActions()},d.getEditorContributions=function(){return I.INSTANCE.getEditorContributions()},d.getSomeEditorContributions=function(a){return I.INSTANCE.getEditorContributions().filter(b=>a.indexOf(b.id)>=0)},d.getDiffEditorContributions=function(){return I.INSTANCE.getDiffEditorContributions()};class I{static{this.INSTANCE=new I}constructor(){this.editorContributions=[],this.diffEditorContributions=[],this.editorActions=[],this.editorCommands=Object.create(null)}registerEditorContribution(a,b,c){this.editorContributions.push({id:a,ctor:b,instantiation:c})}getEditorContributions(){return this.editorContributions.slice(0)}getDiffEditorContributions(){return this.diffEditorContributions.slice(0)}registerEditorAction(a){a.register(),this.editorActions.push(a)}getEditorActions(){return this.editorActions}registerEditorCommand(a){a.register(),this.editorCommands[a.id]=a}getEditorCommand(a){return this.editorCommands[a]||null}}function J(a){return a.register(),a}q.O.add("editor.contributions",I.INSTANCE);let K=J(new w({id:"undo",precondition:void 0,kbOpts:{weight:0,primary:2104},menuOpts:[{menuId:l.D8.MenubarEditMenu,group:"1_do",title:f.kg(64,"&&Undo"),order:1},{menuId:l.D8.CommandPalette,group:"",title:f.kg(65,"Undo"),order:1},{menuId:l.D8.SimpleEditorContext,group:"1_do",title:f.kg(66,"Undo"),order:1}]}));J(new x(K,{id:"default:undo",precondition:void 0}));let L=J(new w({id:"redo",precondition:void 0,kbOpts:{weight:0,primary:2103,secondary:[3128],mac:{primary:3128}},menuOpts:[{menuId:l.D8.MenubarEditMenu,group:"1_do",title:f.kg(67,"&&Redo"),order:2},{menuId:l.D8.CommandPalette,group:"",title:f.kg(68,"Redo"),order:1},{menuId:l.D8.SimpleEditorContext,group:"1_do",title:f.kg(69,"Redo"),order:2}]}));J(new x(L,{id:"default:redo",precondition:void 0}));let M=J(new w({id:"editor.action.selectAll",precondition:void 0,kbOpts:{weight:0,kbExpr:null,primary:2079},menuOpts:[{menuId:l.D8.MenubarSelectionMenu,group:"1_basic",title:f.kg(70,"&&Select All"),order:1},{menuId:l.D8.CommandPalette,group:"",title:f.kg(71,"Select All"),order:1},{menuId:l.D8.SimpleEditorContext,group:"9_select",title:f.kg(72,"Select All"),order:1}]}))},25203:(a,b,c)=>{"use strict";c.d(b,{i:()=>f,y:()=>g});var d=c(52212),e=c(32263);class f{constructor(a,b,c){this._range=a,this._charBeforeSelection=b,this._charAfterSelection=c}getEditOperations(a,b){b.addTrackedEditOperation(new d.Q(this._range.startLineNumber,this._range.startColumn,this._range.startLineNumber,this._range.startColumn),this._charBeforeSelection),b.addTrackedEditOperation(new d.Q(this._range.endLineNumber,this._range.endColumn,this._range.endLineNumber,this._range.endColumn),this._charAfterSelection||null)}computeCursorState(a,b){let c=b.getInverseEditOperations(),d=c[0].range,f=c[1].range;return new e.L(d.endLineNumber,d.endColumn,f.endLineNumber,f.endColumn-this._charAfterSelection.length)}}class g{constructor(a,b,c){this._position=a,this._text=b,this._charAfter=c}getEditOperations(a,b){b.addTrackedEditOperation(new d.Q(this._position.lineNumber,this._position.column,this._position.lineNumber,this._position.column),this._text+this._charAfter)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return new e.L(c.endLineNumber,c.startColumn,c.endLineNumber,c.endColumn-this._charAfter.length)}}},25224:(a,b,c)=>{"use strict";c.d(b,{s:()=>m}),c(33196);var d=c(63048),e=c(7806),f=c(81e3),g=c(40201),h=c(50689),i=c(74116),j=c(29501),k=c(87445);class l{constructor(a){this._element=a}get element(){return this._element}set textContent(a){this.disposed||a===this._textContent||(this._textContent=a,this._element.textContent=a)}set classNames(a){this.disposed||(0,h.aI)(a,this._classNames)||(this._classNames=a,this._element.classList.value="",this._element.classList.add(...a))}set empty(a){this.disposed||a===this._empty||(this._empty=a,this._element.style.marginLeft=a?"0":"")}dispose(){this.disposed=!0}}class m extends g.jG{constructor(a,b){super(),this.customHovers=new Map,this.creationOptions=b,this.domNode=this._register(new l(d.BC(a,d.$(".monaco-icon-label")))),this.labelContainer=d.BC(this.domNode.element,d.$(".monaco-icon-label-container")),this.nameContainer=d.BC(this.labelContainer,d.$("span.monaco-icon-name-container")),b?.supportHighlights||b?.supportIcons?this.nameNode=this._register(new o(this.nameContainer,!!b.supportIcons)):this.nameNode=new n(this.nameContainer),this.hoverDelegate=b?.hoverDelegate??(0,j.nZ)("mouse")}get element(){return this.domNode.element}setLabel(a,b,c){let g=["monaco-icon-label"],h=["monaco-icon-label-container"],i="";c&&(c.extraClasses&&g.push(...c.extraClasses),c.italic&&g.push("italic"),c.strikethrough&&g.push("strikethrough"),c.disabledCommand&&h.push("disabled"),c.title&&("string"==typeof c.title?i+=c.title:i+=a));let j=this.domNode.element.querySelector(".monaco-icon-label-iconpath");if(c?.iconPath){let a;j&&d.sb(j)?a=j:(a=d.$(".monaco-icon-label-iconpath"),this.domNode.element.prepend(a)),a.style.backgroundImage=e.Tf(c?.iconPath),a.style.backgroundRepeat="no-repeat",a.style.backgroundPosition="center",a.style.backgroundSize="contain"}else j&&j.remove();if(this.domNode.classNames=g,this.domNode.element.setAttribute("aria-label",i),this.labelContainer.classList.value="",this.labelContainer.classList.add(...h),this.setupHover(c?.descriptionTitle?this.labelContainer:this.element,c?.title),this.nameNode.setLabel(a,c),b||this.descriptionNode){let a=this.getOrCreateDescriptionNode();a instanceof f._?(a.set(b||"",c?c.descriptionMatches:void 0,void 0,c?.labelEscapeNewLines),this.setupHover(a.element,c?.descriptionTitle)):(a.textContent=b&&c?.labelEscapeNewLines?f._.escapeNewLines(b,[]):b||"",this.setupHover(a.element,c?.descriptionTitle||""),a.empty=!b)}(c?.suffix||this.suffixNode)&&(this.getOrCreateSuffixNode().textContent=c?.suffix??"")}setupHover(a,b){let c=this.customHovers.get(a);if(c&&(c.dispose(),this.customHovers.delete(a)),!b)return void a.removeAttribute("title");let e=a;if(this.creationOptions?.hoverTargetOverride){if(!d.QX(a,this.creationOptions.hoverTargetOverride))throw Error("hoverTargetOverrride must be an ancestor of the htmlElement");e=this.creationOptions.hoverTargetOverride}let f=(0,k.i)().setupManagedHover(this.hoverDelegate,e,b);f&&this.customHovers.set(a,f)}dispose(){for(let a of(super.dispose(),this.customHovers.values()))a.dispose();this.customHovers.clear()}getOrCreateSuffixNode(){if(!this.suffixNode){let a=this._register(new l(d.Pl(this.nameContainer,d.$("span.monaco-icon-suffix-container"))));this.suffixNode=this._register(new l(d.BC(a.element,d.$("span.label-suffix"))))}return this.suffixNode}getOrCreateDescriptionNode(){if(!this.descriptionNode){let a=this._register(new l(d.BC(this.labelContainer,d.$("span.monaco-icon-description-container"))));this.creationOptions?.supportDescriptionHighlights?this.descriptionNode=this._register(new f._(d.BC(a.element,d.$("span.label-description")),{supportIcons:!!this.creationOptions.supportIcons})):this.descriptionNode=this._register(new l(d.BC(a.element,d.$("span.label-description"))))}return this.descriptionNode}}class n{constructor(a){this.container=a,this.label=void 0,this.singleLabel=void 0}setLabel(a,b){if(!(this.label===a&&(0,h.aI)(this.options,b)))if(this.label=a,this.options=b,"string"==typeof a)this.singleLabel||(this.container.textContent="",this.container.classList.remove("multiple"),this.singleLabel=d.BC(this.container,d.$("a.label-name",{id:b?.domId}))),this.singleLabel.textContent=a;else{this.container.textContent="",this.container.classList.add("multiple"),this.singleLabel=void 0;for(let c=0;c<a.length;c++){let e=a[c],f=b?.domId&&`${b?.domId}_${c}`;d.BC(this.container,d.$("a.label-name",{id:f,"data-icon-label-count":a.length,"data-icon-label-index":c,role:"treeitem"},e)),c<a.length-1&&d.BC(this.container,d.$("span.label-separator",void 0,b?.separator||"/"))}}}}class o extends g.jG{constructor(a,b){super(),this.container=a,this.supportIcons=b,this.label=void 0,this.singleLabel=void 0}setLabel(a,b){if(!(this.label===a&&(0,h.aI)(this.options,b)))if(this.label=a,this.options=b,"string"==typeof a)this.singleLabel||(this.container.textContent="",this.container.classList.remove("multiple"),this.singleLabel=this._register(new f._(d.BC(this.container,d.$("a.label-name",{id:b?.domId})),{supportIcons:this.supportIcons}))),this.singleLabel.set(a,b?.matches,void 0,b?.labelEscapeNewLines);else{this.container.textContent="",this.container.classList.add("multiple"),this.singleLabel=void 0;let c=b?.separator||"/",e=function(a,b,c){if(!c)return;let d=0;return a.map(a=>{let e={start:d,end:d+a.length},f=c.map(a=>i.Q.intersect(e,a)).filter(a=>!i.Q.isEmpty(a)).map(({start:a,end:b})=>({start:a-d,end:b-d}));return d=e.end+b.length,f})}(a,c,b?.matches);for(let g=0;g<a.length;g++){let h=a[g],i=e?e[g]:void 0,j=b?.domId&&`${b?.domId}_${g}`,k=d.$("a.label-name",{id:j,"data-icon-label-count":a.length,"data-icon-label-index":g,role:"treeitem"});this._register(new f._(d.BC(this.container,k),{supportIcons:this.supportIcons})).set(h,i,void 0,b?.labelEscapeNewLines),g<a.length-1&&d.BC(k,d.$("span.label-separator",void 0,c))}}}}},25532:(a,b,c)=>{"use strict";c.d(b,{X:()=>d});let d=(0,c(21652).u1)("dialogService")},25634:(a,b,c)=>{"use strict";c.d(b,{a:()=>d});class d{constructor(...a){for(const[b,c]of(this._entries=new Map,a))this.set(b,c)}set(a,b){let c=this._entries.get(a);return this._entries.set(a,b),c}get(a){return this._entries.get(a)}}},25644:(a,b,c)=>{"use strict";c.d(b,{D8:()=>q,L:()=>w,Xe:()=>v,ZG:()=>t,ez:()=>r,i1:()=>p,is:()=>o,nI:()=>u,ug:()=>x});var d,e=c(83614),f=c(3457),g=c(40201),h=c(57832),i=c(10322),j=c(42724),k=c(5738),l=c(21652),m=c(33340),n=function(a,b){return function(c,d){b(c,d,a)}};function o(a){return void 0!==a.command}function p(a){return void 0!==a.submenu}class q{static{this._instances=new Map}static{this.CommandPalette=new q("CommandPalette")}static{this.DebugBreakpointsContext=new q("DebugBreakpointsContext")}static{this.DebugCallStackContext=new q("DebugCallStackContext")}static{this.DebugConsoleContext=new q("DebugConsoleContext")}static{this.DebugVariablesContext=new q("DebugVariablesContext")}static{this.NotebookVariablesContext=new q("NotebookVariablesContext")}static{this.DebugHoverContext=new q("DebugHoverContext")}static{this.DebugWatchContext=new q("DebugWatchContext")}static{this.DebugToolBar=new q("DebugToolBar")}static{this.DebugToolBarStop=new q("DebugToolBarStop")}static{this.DebugDisassemblyContext=new q("DebugDisassemblyContext")}static{this.DebugCallStackToolbar=new q("DebugCallStackToolbar")}static{this.DebugCreateConfiguration=new q("DebugCreateConfiguration")}static{this.EditorContext=new q("EditorContext")}static{this.SimpleEditorContext=new q("SimpleEditorContext")}static{this.EditorContent=new q("EditorContent")}static{this.EditorLineNumberContext=new q("EditorLineNumberContext")}static{this.EditorContextCopy=new q("EditorContextCopy")}static{this.EditorContextPeek=new q("EditorContextPeek")}static{this.EditorContextShare=new q("EditorContextShare")}static{this.EditorTitle=new q("EditorTitle")}static{this.CompactWindowEditorTitle=new q("CompactWindowEditorTitle")}static{this.EditorTitleRun=new q("EditorTitleRun")}static{this.EditorTitleContext=new q("EditorTitleContext")}static{this.EditorTitleContextShare=new q("EditorTitleContextShare")}static{this.EmptyEditorGroup=new q("EmptyEditorGroup")}static{this.EmptyEditorGroupContext=new q("EmptyEditorGroupContext")}static{this.EditorTabsBarContext=new q("EditorTabsBarContext")}static{this.EditorTabsBarShowTabsSubmenu=new q("EditorTabsBarShowTabsSubmenu")}static{this.EditorTabsBarShowTabsZenModeSubmenu=new q("EditorTabsBarShowTabsZenModeSubmenu")}static{this.EditorActionsPositionSubmenu=new q("EditorActionsPositionSubmenu")}static{this.EditorSplitMoveSubmenu=new q("EditorSplitMoveSubmenu")}static{this.ExplorerContext=new q("ExplorerContext")}static{this.ExplorerContextShare=new q("ExplorerContextShare")}static{this.ExtensionContext=new q("ExtensionContext")}static{this.ExtensionEditorContextMenu=new q("ExtensionEditorContextMenu")}static{this.GlobalActivity=new q("GlobalActivity")}static{this.CommandCenter=new q("CommandCenter")}static{this.CommandCenterCenter=new q("CommandCenterCenter")}static{this.LayoutControlMenuSubmenu=new q("LayoutControlMenuSubmenu")}static{this.LayoutControlMenu=new q("LayoutControlMenu")}static{this.MenubarMainMenu=new q("MenubarMainMenu")}static{this.MenubarAppearanceMenu=new q("MenubarAppearanceMenu")}static{this.MenubarDebugMenu=new q("MenubarDebugMenu")}static{this.MenubarEditMenu=new q("MenubarEditMenu")}static{this.MenubarCopy=new q("MenubarCopy")}static{this.MenubarFileMenu=new q("MenubarFileMenu")}static{this.MenubarGoMenu=new q("MenubarGoMenu")}static{this.MenubarHelpMenu=new q("MenubarHelpMenu")}static{this.MenubarLayoutMenu=new q("MenubarLayoutMenu")}static{this.MenubarNewBreakpointMenu=new q("MenubarNewBreakpointMenu")}static{this.PanelAlignmentMenu=new q("PanelAlignmentMenu")}static{this.PanelPositionMenu=new q("PanelPositionMenu")}static{this.ActivityBarPositionMenu=new q("ActivityBarPositionMenu")}static{this.MenubarPreferencesMenu=new q("MenubarPreferencesMenu")}static{this.MenubarRecentMenu=new q("MenubarRecentMenu")}static{this.MenubarSelectionMenu=new q("MenubarSelectionMenu")}static{this.MenubarShare=new q("MenubarShare")}static{this.MenubarSwitchEditorMenu=new q("MenubarSwitchEditorMenu")}static{this.MenubarSwitchGroupMenu=new q("MenubarSwitchGroupMenu")}static{this.MenubarTerminalMenu=new q("MenubarTerminalMenu")}static{this.MenubarTerminalSuggestStatusMenu=new q("MenubarTerminalSuggestStatusMenu")}static{this.MenubarViewMenu=new q("MenubarViewMenu")}static{this.MenubarHomeMenu=new q("MenubarHomeMenu")}static{this.OpenEditorsContext=new q("OpenEditorsContext")}static{this.OpenEditorsContextShare=new q("OpenEditorsContextShare")}static{this.ProblemsPanelContext=new q("ProblemsPanelContext")}static{this.SCMInputBox=new q("SCMInputBox")}static{this.SCMChangeContext=new q("SCMChangeContext")}static{this.SCMResourceContext=new q("SCMResourceContext")}static{this.SCMResourceContextShare=new q("SCMResourceContextShare")}static{this.SCMResourceFolderContext=new q("SCMResourceFolderContext")}static{this.SCMResourceGroupContext=new q("SCMResourceGroupContext")}static{this.SCMSourceControl=new q("SCMSourceControl")}static{this.SCMSourceControlInline=new q("SCMSourceControlInline")}static{this.SCMSourceControlTitle=new q("SCMSourceControlTitle")}static{this.SCMHistoryTitle=new q("SCMHistoryTitle")}static{this.SCMHistoryItemContext=new q("SCMHistoryItemContext")}static{this.SCMHistoryItemChangeContext=new q("SCMHistoryItemChangeContext")}static{this.SCMHistoryItemHover=new q("SCMHistoryItemHover")}static{this.SCMHistoryItemRefContext=new q("SCMHistoryItemRefContext")}static{this.SCMQuickDiffDecorations=new q("SCMQuickDiffDecorations")}static{this.SCMTitle=new q("SCMTitle")}static{this.SearchContext=new q("SearchContext")}static{this.SearchActionMenu=new q("SearchActionContext")}static{this.StatusBarWindowIndicatorMenu=new q("StatusBarWindowIndicatorMenu")}static{this.StatusBarRemoteIndicatorMenu=new q("StatusBarRemoteIndicatorMenu")}static{this.StickyScrollContext=new q("StickyScrollContext")}static{this.TestItem=new q("TestItem")}static{this.TestItemGutter=new q("TestItemGutter")}static{this.TestProfilesContext=new q("TestProfilesContext")}static{this.TestMessageContext=new q("TestMessageContext")}static{this.TestMessageContent=new q("TestMessageContent")}static{this.TestPeekElement=new q("TestPeekElement")}static{this.TestPeekTitle=new q("TestPeekTitle")}static{this.TestCallStack=new q("TestCallStack")}static{this.TestCoverageFilterItem=new q("TestCoverageFilterItem")}static{this.TouchBarContext=new q("TouchBarContext")}static{this.TitleBar=new q("TitleBar")}static{this.TitleBarContext=new q("TitleBarContext")}static{this.TitleBarTitleContext=new q("TitleBarTitleContext")}static{this.TunnelContext=new q("TunnelContext")}static{this.TunnelPrivacy=new q("TunnelPrivacy")}static{this.TunnelProtocol=new q("TunnelProtocol")}static{this.TunnelPortInline=new q("TunnelInline")}static{this.TunnelTitle=new q("TunnelTitle")}static{this.TunnelLocalAddressInline=new q("TunnelLocalAddressInline")}static{this.TunnelOriginInline=new q("TunnelOriginInline")}static{this.ViewItemContext=new q("ViewItemContext")}static{this.ViewContainerTitle=new q("ViewContainerTitle")}static{this.ViewContainerTitleContext=new q("ViewContainerTitleContext")}static{this.ViewTitle=new q("ViewTitle")}static{this.ViewTitleContext=new q("ViewTitleContext")}static{this.CommentEditorActions=new q("CommentEditorActions")}static{this.CommentThreadTitle=new q("CommentThreadTitle")}static{this.CommentThreadActions=new q("CommentThreadActions")}static{this.CommentThreadAdditionalActions=new q("CommentThreadAdditionalActions")}static{this.CommentThreadTitleContext=new q("CommentThreadTitleContext")}static{this.CommentThreadCommentContext=new q("CommentThreadCommentContext")}static{this.CommentTitle=new q("CommentTitle")}static{this.CommentActions=new q("CommentActions")}static{this.CommentsViewThreadActions=new q("CommentsViewThreadActions")}static{this.InteractiveToolbar=new q("InteractiveToolbar")}static{this.InteractiveCellTitle=new q("InteractiveCellTitle")}static{this.InteractiveCellDelete=new q("InteractiveCellDelete")}static{this.InteractiveCellExecute=new q("InteractiveCellExecute")}static{this.InteractiveInputExecute=new q("InteractiveInputExecute")}static{this.InteractiveInputConfig=new q("InteractiveInputConfig")}static{this.ReplInputExecute=new q("ReplInputExecute")}static{this.IssueReporter=new q("IssueReporter")}static{this.NotebookToolbar=new q("NotebookToolbar")}static{this.NotebookToolbarContext=new q("NotebookToolbarContext")}static{this.NotebookStickyScrollContext=new q("NotebookStickyScrollContext")}static{this.NotebookCellTitle=new q("NotebookCellTitle")}static{this.NotebookCellDelete=new q("NotebookCellDelete")}static{this.NotebookCellInsert=new q("NotebookCellInsert")}static{this.NotebookCellBetween=new q("NotebookCellBetween")}static{this.NotebookCellListTop=new q("NotebookCellTop")}static{this.NotebookCellExecute=new q("NotebookCellExecute")}static{this.NotebookCellExecuteGoTo=new q("NotebookCellExecuteGoTo")}static{this.NotebookCellExecutePrimary=new q("NotebookCellExecutePrimary")}static{this.NotebookDiffCellInputTitle=new q("NotebookDiffCellInputTitle")}static{this.NotebookDiffDocumentMetadata=new q("NotebookDiffDocumentMetadata")}static{this.NotebookDiffCellMetadataTitle=new q("NotebookDiffCellMetadataTitle")}static{this.NotebookDiffCellOutputsTitle=new q("NotebookDiffCellOutputsTitle")}static{this.NotebookOutputToolbar=new q("NotebookOutputToolbar")}static{this.NotebookOutlineFilter=new q("NotebookOutlineFilter")}static{this.NotebookOutlineActionMenu=new q("NotebookOutlineActionMenu")}static{this.NotebookEditorLayoutConfigure=new q("NotebookEditorLayoutConfigure")}static{this.NotebookKernelSource=new q("NotebookKernelSource")}static{this.BulkEditTitle=new q("BulkEditTitle")}static{this.BulkEditContext=new q("BulkEditContext")}static{this.TimelineItemContext=new q("TimelineItemContext")}static{this.TimelineTitle=new q("TimelineTitle")}static{this.TimelineTitleContext=new q("TimelineTitleContext")}static{this.TimelineFilterSubMenu=new q("TimelineFilterSubMenu")}static{this.AccountsContext=new q("AccountsContext")}static{this.SidebarTitle=new q("SidebarTitle")}static{this.PanelTitle=new q("PanelTitle")}static{this.AuxiliaryBarTitle=new q("AuxiliaryBarTitle")}static{this.TerminalInstanceContext=new q("TerminalInstanceContext")}static{this.TerminalEditorInstanceContext=new q("TerminalEditorInstanceContext")}static{this.TerminalNewDropdownContext=new q("TerminalNewDropdownContext")}static{this.TerminalTabContext=new q("TerminalTabContext")}static{this.TerminalTabEmptyAreaContext=new q("TerminalTabEmptyAreaContext")}static{this.TerminalStickyScrollContext=new q("TerminalStickyScrollContext")}static{this.WebviewContext=new q("WebviewContext")}static{this.InlineCompletionsActions=new q("InlineCompletionsActions")}static{this.InlineEditsActions=new q("InlineEditsActions")}static{this.NewFile=new q("NewFile")}static{this.MergeInput1Toolbar=new q("MergeToolbar1Toolbar")}static{this.MergeInput2Toolbar=new q("MergeToolbar2Toolbar")}static{this.MergeBaseToolbar=new q("MergeBaseToolbar")}static{this.MergeInputResultToolbar=new q("MergeToolbarResultToolbar")}static{this.InlineSuggestionToolbar=new q("InlineSuggestionToolbar")}static{this.InlineEditToolbar=new q("InlineEditToolbar")}static{this.ChatContext=new q("ChatContext")}static{this.ChatCodeBlock=new q("ChatCodeblock")}static{this.ChatCompareBlock=new q("ChatCompareBlock")}static{this.ChatMessageTitle=new q("ChatMessageTitle")}static{this.ChatHistory=new q("ChatHistory")}static{this.ChatWelcomeHistoryContext=new q("ChatWelcomeHistoryContext")}static{this.ChatMessageFooter=new q("ChatMessageFooter")}static{this.ChatExecute=new q("ChatExecute")}static{this.ChatExecuteSecondary=new q("ChatExecuteSecondary")}static{this.ChatInput=new q("ChatInput")}static{this.ChatInputSide=new q("ChatInputSide")}static{this.ChatModePicker=new q("ChatModePicker")}static{this.ChatEditingWidgetToolbar=new q("ChatEditingWidgetToolbar")}static{this.ChatEditingEditorContent=new q("ChatEditingEditorContent")}static{this.ChatEditingEditorHunk=new q("ChatEditingEditorHunk")}static{this.ChatEditingDeletedNotebookCell=new q("ChatEditingDeletedNotebookCell")}static{this.ChatInputAttachmentToolbar=new q("ChatInputAttachmentToolbar")}static{this.ChatEditingWidgetModifiedFilesToolbar=new q("ChatEditingWidgetModifiedFilesToolbar")}static{this.ChatInputResourceAttachmentContext=new q("ChatInputResourceAttachmentContext")}static{this.ChatInputSymbolAttachmentContext=new q("ChatInputSymbolAttachmentContext")}static{this.ChatInlineResourceAnchorContext=new q("ChatInlineResourceAnchorContext")}static{this.ChatInlineSymbolAnchorContext=new q("ChatInlineSymbolAnchorContext")}static{this.ChatMessageCheckpoint=new q("ChatMessageCheckpoint")}static{this.ChatMessageRestoreCheckpoint=new q("ChatMessageRestoreCheckpoint")}static{this.ChatEditingCodeBlockContext=new q("ChatEditingCodeBlockContext")}static{this.ChatTitleBarMenu=new q("ChatTitleBarMenu")}static{this.ChatAttachmentsContext=new q("ChatAttachmentsContext")}static{this.ChatToolOutputResourceToolbar=new q("ChatToolOutputResourceToolbar")}static{this.ChatTextEditorMenu=new q("ChatTextEditorMenu")}static{this.ChatToolOutputResourceContext=new q("ChatToolOutputResourceContext")}static{this.ChatMultiDiffContext=new q("ChatMultiDiffContext")}static{this.ChatSessionsMenu=new q("ChatSessionsMenu")}static{this.ChatConfirmationMenu=new q("ChatConfirmationMenu")}static{this.AccessibleView=new q("AccessibleView")}static{this.MultiDiffEditorFileToolbar=new q("MultiDiffEditorFileToolbar")}static{this.DiffEditorHunkToolbar=new q("DiffEditorHunkToolbar")}static{this.DiffEditorSelectionToolbar=new q("DiffEditorSelectionToolbar")}constructor(a){if(q._instances.has(a))throw TypeError(`MenuId with identifier '${a}' already exists. Use MenuId.for(ident) or a unique identifier`);q._instances.set(a,this),this.id=a}}let r=(0,l.u1)("menuService");class s{static{this._all=new Map}static for(a){let b=this._all.get(a);return b||(b=new s(a),this._all.set(a,b)),b}static merge(a){let b=new Set;for(let c of a)c instanceof s&&b.add(c.id);return b}constructor(a){this.id=a,this.has=b=>b===a}}let t=new class{constructor(){this._commands=new Map,this._menuItems=new Map,this._onDidChangeMenu=new f.QT({merge:s.merge}),this.onDidChangeMenu=this._onDidChangeMenu.event}addCommand(a){return this._commands.set(a.id,a),this._onDidChangeMenu.fire(s.for(q.CommandPalette)),(0,g.lC)((0,g.s)(()=>{this._commands.delete(a.id)&&this._onDidChangeMenu.fire(s.for(q.CommandPalette))}))}getCommand(a){return this._commands.get(a)}getCommands(){let a=new Map;return this._commands.forEach((b,c)=>a.set(c,b)),a}appendMenuItem(a,b){let c=this._menuItems.get(a);c||(c=new h.w,this._menuItems.set(a,c));let d=c.push(b);return this._onDidChangeMenu.fire(s.for(a)),(0,g.lC)((0,g.s)(()=>{d(),this._onDidChangeMenu.fire(s.for(a))}))}appendMenuItems(a){let b=new g.Cm;for(let{id:c,item:d}of a)b.add(this.appendMenuItem(c,d));return b}getMenuItems(a){let b;return b=this._menuItems.has(a)?[...this._menuItems.get(a)]:[],a===q.CommandPalette&&this._appendImplicitItems(b),b}_appendImplicitItems(a){let b=new Set;for(let c of a)o(c)&&(b.add(c.command.id),c.alt&&b.add(c.alt.id));this._commands.forEach((c,d)=>{b.has(d)||a.push({command:c})})}};class u extends e.YH{constructor(a,b,c){super(`submenuitem.${a.submenu.id}`,"string"==typeof a.title?a.title:a.title.value,c,"submenu"),this.item=a,this.hideActions=b}}let v=d=class{static label(a,b){return b?.renderShortTitle&&a.shortTitle?"string"==typeof a.shortTitle?a.shortTitle:a.shortTitle.value:"string"==typeof a.title?a.title:a.title.value}constructor(a,b,c,e,f,g,h){let j;if(this.hideActions=e,this.menuKeybinding=f,this._commandService=h,this.id=a.id,this.label=d.label(a,c),this.tooltip=("string"==typeof a.tooltip?a.tooltip:a.tooltip?.value)??"",this.enabled=!a.precondition||g.contextMatchesRules(a.precondition),this.checked=void 0,a.toggled){const b=a.toggled.condition?a.toggled:{condition:a.toggled};this.checked=g.contextMatchesRules(b.condition),this.checked&&b.tooltip&&(this.tooltip="string"==typeof b.tooltip?b.tooltip:b.tooltip.value),this.checked&&i.L.isThemeIcon(b.icon)&&(j=b.icon),this.checked&&b.title&&(this.label="string"==typeof b.title?b.title:b.title.value)}j||(j=i.L.isThemeIcon(a.icon)?a.icon:void 0),this.item=a,this.alt=b?new d(b,void 0,c,e,void 0,g,h):void 0,this._options=c,this.class=j&&i.L.asClassName(j)}run(...a){let b=[];return this._options?.arg&&(b=[...b,this._options.arg]),this._options?.shouldForwardArgs&&(b=[...b,...a]),this._commandService.executeCommand(this.id,...b)}};v=d=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([n(5,k.fN),n(6,j.d)],v);class w{constructor(a){this.desc=a}}function x(a){let b=[],c=new a,{f1:d,menu:e,keybinding:f,...h}=c.desc;if(j.w.getCommand(h.id))throw Error(`Cannot register two commands with the same id: ${h.id}`);if(b.push(j.w.registerCommand({id:h.id,handler:(a,...b)=>c.run(a,...b),metadata:h.metadata??{description:c.desc.title}})),Array.isArray(e))for(let a of e)b.push(t.appendMenuItem(a.id,{command:{...h,precondition:null===a.precondition?void 0:h.precondition},...a}));else e&&b.push(t.appendMenuItem(e.id,{command:{...h,precondition:null===e.precondition?void 0:h.precondition},...e}));if(d&&(b.push(t.appendMenuItem(q.CommandPalette,{command:h,when:h.precondition})),b.push(t.addCommand(h))),Array.isArray(f))for(let a of f)b.push(m.f.registerKeybindingRule({...a,id:h.id,when:h.precondition?k.M$.and(h.precondition,a.when):a.when}));else f&&b.push(m.f.registerKeybindingRule({...f,id:h.id,when:h.precondition?k.M$.and(h.precondition,f.when):f.when}));return{dispose(){(0,g.AS)(b)}}}},27123:()=>{},27351:()=>{},27817:(a,b,c)=>{"use strict";c.d(b,{$t:()=>q,gI:()=>r,ER:()=>s});var d=c(77747),e=c(52212),f=c(36046),g=c(40201),h=c(25129),i=c(5738),j=c(57832),k=c(21652),l=c(58451),m=c(76302);let n=(0,k.u1)("IEditorCancelService"),o=new i.N1("cancellableOperation",!1,(0,m.kg)(934,"Whether the editor runs a cancellable operation, e.g. like 'Peek References'"));(0,l.v)(n,class{constructor(){this._tokens=new WeakMap}add(a,b){let c,d=this._tokens.get(a);return d||(d=a.invokeWithinContext(a=>({key:o.bindTo(a.get(i.fN)),tokens:new j.w})),this._tokens.set(a,d)),d.key.set(!0),c=d.tokens.push(b),()=>{c&&(c(),d.key.set(!d.tokens.isEmpty()),c=void 0)}}cancel(a){let b=this._tokens.get(a);if(!b)return;let c=b.tokens.pop();c&&(c.cancel(),b.key.set(!b.tokens.isEmpty()))}},1);class p extends f.Qi{constructor(a,b){super(b),this.editor=a,this._unregister=a.invokeWithinContext(b=>b.get(n).add(a,this))}dispose(){this._unregister(),super.dispose()}}(0,h.E_)(new class extends h.DX{constructor(){super({id:"editor.cancelOperation",kbOpts:{weight:100,primary:9},precondition:o})}runEditorCommand(a,b){a.get(n).cancel(b)}});class q{constructor(a,b){if(this.flags=b,(1&this.flags)!=0){const b=a.getModel();this.modelVersionId=b?d.GP("{0}#{1}",b.uri.toString(),b.getVersionId()):null}else this.modelVersionId=null;(4&this.flags)!=0?this.position=a.getPosition():this.position=null,(2&this.flags)!=0?this.selection=a.getSelection():this.selection=null,(8&this.flags)!=0?(this.scrollLeft=a.getScrollLeft(),this.scrollTop=a.getScrollTop()):(this.scrollLeft=-1,this.scrollTop=-1)}_equals(a){return a instanceof q&&this.modelVersionId===a.modelVersionId&&this.scrollLeft===a.scrollLeft&&this.scrollTop===a.scrollTop&&(!!this.position||!a.position)&&(!this.position||!!a.position)&&(!this.position||!a.position||!!this.position.equals(a.position))&&(!!this.selection||!a.selection)&&(!this.selection||!!a.selection)&&(!this.selection||!a.selection||!!this.selection.equalsRange(a.selection))&&!0}validate(a){return this._equals(new q(a,this.flags))}}class r extends p{constructor(a,b,c,d){super(a,d),this._listener=new g.Cm,4&b&&this._listener.add(a.onDidChangeCursorPosition(a=>{c&&e.Q.containsPosition(c,a.position)||this.cancel()})),2&b&&this._listener.add(a.onDidChangeCursorSelection(a=>{c&&e.Q.containsRange(c,a.selection)||this.cancel()})),8&b&&this._listener.add(a.onDidScrollChange(a=>this.cancel())),1&b&&(this._listener.add(a.onDidChangeModel(a=>this.cancel())),this._listener.add(a.onDidChangeModelContent(a=>this.cancel())))}dispose(){this._listener.dispose(),super.dispose()}}class s extends f.Qi{constructor(a,b){super(b),this._listener=a.onDidChangeContent(()=>this.cancel())}dispose(){this._listener.dispose(),super.dispose()}}},27939:()=>{},28199:()=>{},28492:(a,b,c)=>{"use strict";c.d(b,{FW:()=>i,Zv:()=>e,dG:()=>g,z5:()=>j});var d=c(88586);function e(a,b){if("number"==typeof a){if(0===a)return null;let c=(65535&a)>>>0,d=(0xffff0000&a)>>>16;return new h(0!==d?[f(c,b),f(d,b)]:[f(c,b)])}{let c=[];for(let d=0;d<a.length;d++)c.push(f(a[d],b));return new h(c)}}function f(a,b){let c=!!(2048&a),d=!!(256&a);return new g(2===b?d:c,!!(1024&a),!!(512&a),2===b?c:d,255&a)}class g{constructor(a,b,c,d,e){this.ctrlKey=a,this.shiftKey=b,this.altKey=c,this.metaKey=d,this.keyCode=e}equals(a){return a instanceof g&&this.ctrlKey===a.ctrlKey&&this.shiftKey===a.shiftKey&&this.altKey===a.altKey&&this.metaKey===a.metaKey&&this.keyCode===a.keyCode}isModifierKey(){return 0===this.keyCode||5===this.keyCode||57===this.keyCode||6===this.keyCode||4===this.keyCode}isDuplicateModifierCase(){return this.ctrlKey&&5===this.keyCode||this.shiftKey&&4===this.keyCode||this.altKey&&6===this.keyCode||this.metaKey&&57===this.keyCode}}class h{constructor(a){if(0===a.length)throw(0,d.Qg)("chords");this.chords=a}}class i{constructor(a,b,c,d,e,f){this.ctrlKey=a,this.shiftKey=b,this.altKey=c,this.metaKey=d,this.keyLabel=e,this.keyAriaLabel=f}}class j{}},28577:()=>{},28658:(a,b,c)=>{"use strict";c.d(b,{f:()=>f,j:()=>e});var d=c(5738);let e=(0,c(21652).u1)("accessibilityService"),f=new d.N1("accessibilityModeEnabled",!1)},28672:(a,b,c)=>{"use strict";c.d(b,{l:()=>l,x:()=>m});var d=c(63048),e=c(87445),f=c(29501),g=c(16474),h=c(40201),i=c(50689);c(31516);var j=c(76302);let k=d.$,l={keybindingLabelBackground:void 0,keybindingLabelForeground:void 0,keybindingLabelBorder:void 0,keybindingLabelBottomBorder:void 0,keybindingLabelShadow:void 0};class m extends h.jG{constructor(a,b,c){super(),this.os=b,this.keyElements=new Set,this.options=c||Object.create(null);const g=this.options.keybindingLabelForeground;this.domNode=d.BC(a,k(".monaco-keybinding")),g&&(this.domNode.style.color=g),this.hover=this._register((0,e.i)().setupManagedHover((0,f.nZ)("mouse"),this.domNode,"")),this.didEverRender=!1,a.appendChild(this.domNode)}set(a,b){this.didEverRender&&this.keybinding===a&&m.areSame(this.matches,b)||(this.keybinding=a,this.matches=b,this.render())}render(){if(this.clear(),this.keybinding){let a=this.keybinding.getChords();a[0]&&this.renderChord(this.domNode,a[0],this.matches?this.matches.firstPart:null);for(let b=1;b<a.length;b++)d.BC(this.domNode,k("span.monaco-keybinding-key-chord-separator",void 0," ")),this.renderChord(this.domNode,a[b],this.matches?this.matches.chordPart:null);let b=this.options.disableTitle?void 0:this.keybinding.getAriaLabel()||void 0;this.hover.update(b),this.domNode.setAttribute("aria-label",b||"")}else this.options&&this.options.renderUnboundKeybindings&&this.renderUnbound(this.domNode);this.didEverRender=!0}clear(){d.w_(this.domNode),this.keyElements.clear()}renderChord(a,b,c){let d=g.Of.modifierLabels[this.os];b.ctrlKey&&this.renderKey(a,d.ctrlKey,!!c?.ctrlKey,d.separator),b.shiftKey&&this.renderKey(a,d.shiftKey,!!c?.shiftKey,d.separator),b.altKey&&this.renderKey(a,d.altKey,!!c?.altKey,d.separator),b.metaKey&&this.renderKey(a,d.metaKey,!!c?.metaKey,d.separator);let e=b.keyLabel;e&&this.renderKey(a,e,!!c?.keyCode,"")}renderKey(a,b,c,e){d.BC(a,this.createKeyElement(b,c?".highlight":"")),e&&d.BC(a,k("span.monaco-keybinding-key-separator",void 0,e))}renderUnbound(a){d.BC(a,this.createKeyElement((0,j.kg)(15,"Unbound")))}createKeyElement(a,b=""){let c=k("span.monaco-keybinding-key"+b,void 0,a);return this.keyElements.add(c),this.options.keybindingLabelBackground&&(c.style.backgroundColor=this.options.keybindingLabelBackground),this.options.keybindingLabelBorder&&(c.style.borderColor=this.options.keybindingLabelBorder),this.options.keybindingLabelBottomBorder&&(c.style.borderBottomColor=this.options.keybindingLabelBottomBorder),this.options.keybindingLabelShadow&&(c.style.boxShadow=`inset 0 -1px 0 ${this.options.keybindingLabelShadow}`),c}static areSame(a,b){return a===b||!a&&!b||!!a&&!!b&&(0,i.aI)(a.firstPart,b.firstPart)&&(0,i.aI)(a.chordPart,b.chordPart)}}},29139:(a,b,c)=>{"use strict";c.d(b,{Ft:()=>i,V7:()=>h,Xo:()=>j,ok:()=>e,vA:()=>g,xb:()=>f});var d=c(88586);function e(a,b){if(!a)throw Error(b?`Assertion failed (${b})`:"Assertion Failed")}function f(a,b="Unreachable"){throw Error(b)}function g(a,b="unexpected state"){if(!a)throw"string"==typeof b?new d.D7(`Assertion Failed: ${b}`):b}function h(a,b="Soft Assertion Failed"){a||(0,d.dz)(new d.D7(b))}function i(a){a()||(a(),(0,d.dz)(new d.D7("Assertion Failed")))}function j(a,b){let c=0;for(;c<a.length-1;){if(!b(a[c],a[c+1]))return!1;c++}return!0}},29492:(a,b,c)=>{"use strict";c.d(b,{I:()=>e});var d=c(83614);class e extends d.LN{constructor(a){super(),this._getContext=a}runAction(a,b){let c=this._getContext();return super.runAction(a,c)}}},29501:(a,b,c)=>{"use strict";c.d(b,{MW:()=>h,bW:()=>j,nZ:()=>i});var d=c(85851);let e=()=>({get delay(){return -1},dispose:()=>{},showHover:()=>{}}),f=new d.d(()=>e("mouse",!1)),g=new d.d(()=>e("element",!1));function h(a){e=a}function i(a){return"element"===a?g.value:f.value}function j(){return e("element",!0)}},29989:()=>{},29995:(a,b,c)=>{"use strict";var d,e;c.d(b,{N6:()=>d,TH:()=>f,pv:()=>g}),(e=d||(d={}))[e.Disabled=0]="Disabled",e[e.EnabledForActive=1]="EnabledForActive",e[e.Enabled=2]="Enabled";class f{constructor(a,b,c,d,e,f){if(this.visibleColumn=a,this.column=b,this.className=c,this.horizontalLine=d,this.forWrappedLinesAfterColumn=e,this.forWrappedLinesBeforeOrAtColumn=f,-1!==a==(-1!==b))throw Error()}}class g{constructor(a,b){this.top=a,this.endColumn=b}}},30389:()=>{},30908:(a,b,c)=>{"use strict";var d,e,f,g;function h(a){return a===d.HIGH_CONTRAST_DARK||a===d.HIGH_CONTRAST_LIGHT}function i(a){return a===d.DARK||a===d.HIGH_CONTRAST_DARK}c.d(b,{Bb:()=>h,HD:()=>i,X2:()=>e,zM:()=>d}),(f=d||(d={})).DARK="dark",f.LIGHT="light",f.HIGH_CONTRAST_DARK="hcDark",f.HIGH_CONTRAST_LIGHT="hcLight",(g=e||(e={})).VS="vs",g.VS_DARK="vs-dark",g.HC_BLACK="hc-black",g.HC_LIGHT="hc-light"},31343:()=>{},31383:(a,b,c)=>{"use strict";c.d(b,{n:()=>d,r:()=>e});class d{constructor(a){this._prefix=a,this._lastId=0}nextId(){return this._prefix+ ++this._lastId}}let e=new d("id#")},31516:()=>{},32245:(a,b,c)=>{"use strict";c.d(b,{Ho:()=>b5,kI:()=>b6,Bz:()=>bX,oL:()=>bY});var d,e,f,g,h=c(42891),i=c(81034),j=c(88586),k=c(3457),l=c(40201),m=c(77747),n=c(99951),o=c(77816),p=c(70033),q=c(95554),r=c(52212),s=c(32263),t=c(72316),u=c(4751),v=c(84834),w=c(67752),x=c(78029),y=c(43099);class z{constructor(a,b,c,d){this.range=a,this.nestingLevel=b,this.nestingLevelOfEqualBracketType=c,this.isInvalid=d}}class A{constructor(a,b,c,d,e,f){this.range=a,this.openingBracketRange=b,this.closingBracketRange=c,this.nestingLevel=d,this.nestingLevelOfEqualBracketType=e,this.bracketPairNode=f}get openingBracketInfo(){return this.bracketPairNode.openingBracket.bracketInfo}}class B extends A{constructor(a,b,c,d,e,f,g){super(a,b,c,d,e,f),this.minVisibleColumnIndentation=g}}var C=c(79913),D=c(84953),E=c(88812),F=c(79703),G=c(65877),H=c(39959),I=c(44607);class J extends l.jG{didLanguageChange(a){return this.brackets.didLanguageChange(a)}constructor(a,b){if(super(),this.textModel=a,this.getLanguageConfiguration=b,this.didChangeEmitter=new k.vl,this.denseKeyProvider=new G.Mg,this.brackets=new D.Z(this.denseKeyProvider,this.getLanguageConfiguration),this.onDidChange=this.didChangeEmitter.event,this.queuedTextEditsForInitialAstWithoutTokens=[],this.queuedTextEdits=[],a.tokenization.hasTokens)2===a.tokenization.backgroundTokenizationState?(this.initialAstWithoutTokens=void 0,this.astWithTokens=this.parseDocumentFromTextBuffer([],void 0,!1)):(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer([],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens);else{const a=this.brackets.getSingleLanguageBracketTokens(this.textModel.getLanguageId()),b=new H._(this.textModel.getValue(),a);this.initialAstWithoutTokens=(0,F.T)(b,[],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens}}handleDidChangeBackgroundTokenizationState(){if(2===this.textModel.tokenization.backgroundTokenizationState){let a=void 0===this.initialAstWithoutTokens;this.initialAstWithoutTokens=void 0,a||this.didChangeEmitter.fire()}}handleDidChangeTokens({ranges:a}){let b=a.map(a=>new C.c((0,E.qe)(a.fromLineNumber-1,0),(0,E.qe)(a.toLineNumber,0),(0,E.qe)(a.toLineNumber-a.fromLineNumber+1,0)));this.handleEdits(b,!0),this.initialAstWithoutTokens||this.didChangeEmitter.fire()}handleContentChanged(a){let b=C.c.fromModelContentChanges(a.changes);this.handleEdits(b,!1)}handleEdits(a,b){let c=(0,I.M)(this.queuedTextEdits,a);this.queuedTextEdits=c,this.initialAstWithoutTokens&&!b&&(this.queuedTextEditsForInitialAstWithoutTokens=(0,I.M)(this.queuedTextEditsForInitialAstWithoutTokens,a))}flushQueue(){this.queuedTextEdits.length>0&&(this.astWithTokens=this.parseDocumentFromTextBuffer(this.queuedTextEdits,this.astWithTokens,!1),this.queuedTextEdits=[]),this.queuedTextEditsForInitialAstWithoutTokens.length>0&&(this.initialAstWithoutTokens&&(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer(this.queuedTextEditsForInitialAstWithoutTokens,this.initialAstWithoutTokens,!1)),this.queuedTextEditsForInitialAstWithoutTokens=[])}parseDocumentFromTextBuffer(a,b,c){let d=new H.tk(this.textModel,this.brackets);return(0,F.T)(d,a,b,c)}getBracketsInRange(a,b){this.flushQueue();let c=(0,E.qe)(a.startLineNumber-1,a.startColumn-1),d=(0,E.qe)(a.endLineNumber-1,a.endColumn-1);return new h.c1(a=>{let e=this.initialAstWithoutTokens||this.astWithTokens;!function a(b,c,d,e,f,g,h,i,j,k,l=!1){if(h>200)return!0;a:for(;;)switch(b.kind){case 4:{let i=b.childrenLength;for(let l=0;l<i;l++){let i=b.getChild(l);if(i){if(d=(0,E.QB)(c,i.length),(0,E.vr)(c,f)&&(0,E.o0)(d,e)){if((0,E.o0)(d,f)){b=i;continue a}if(!a(i,c,d,e,f,g,h,0,j,k))return!1}c=d}}return!0}case 2:{let l=!k||!b.closingBracket||b.closingBracket.bracketInfo.closesColorized(b.openingBracket.bracketInfo),m=0;if(j){let a=j.get(b.openingBracket.text);void 0===a&&(a=0),m=a,l&&(a++,j.set(b.openingBracket.text,a))}let n=b.childrenLength;for(let o=0;o<n;o++){let n=b.getChild(o);if(n){if(d=(0,E.QB)(c,n.length),(0,E.vr)(c,f)&&(0,E.o0)(d,e)){if((0,E.o0)(d,f)&&1!==n.kind){b=n,l?(h++,i=m+1):i=m;continue a}if((l||1!==n.kind||!b.closingBracket)&&!a(n,c,d,e,f,g,l?h+1:h,l?m+1:m,j,k,!b.closingBracket))return!1}c=d}}return j?.set(b.openingBracket.text,m),!0}case 3:return g(new z((0,E.Qx)(c,d),h-1,0,!0));case 1:return g(new z((0,E.Qx)(c,d),h-1,i-1,l));case 0:return!0}}(e,E.Vp,e.length,c,d,a,0,0,new Map,b)})}getBracketPairsInRange(a,b){this.flushQueue();let c=(0,E.VL)(a.getStartPosition()),d=(0,E.VL)(a.getEndPosition());return new h.c1(a=>{let e=this.initialAstWithoutTokens||this.astWithTokens,f=new K(a,b,this.textModel);!function a(b,c,d,e,f,g,h,i){if(h>200)return!0;let j=!0;if(2===b.kind){let k=0;if(i){let a=i.get(b.openingBracket.text);void 0===a&&(a=0),k=a,a++,i.set(b.openingBracket.text,a)}let l=(0,E.QB)(c,b.openingBracket.length),m=-1;if(g.includeMinIndentation&&(m=b.computeMinIndentation(c,g.textModel)),j=g.push(new B((0,E.Qx)(c,d),(0,E.Qx)(c,l),b.closingBracket?(0,E.Qx)((0,E.QB)(l,b.child?.length||E.Vp),d):void 0,h,k,b,m)),c=l,j&&b.child){let k=b.child;if(d=(0,E.QB)(c,k.length),(0,E.vr)(c,f)&&(0,E.o0)(d,e)&&!(j=a(k,c,d,e,f,g,h+1,i)))return!1}i?.set(b.openingBracket.text,k)}else{let d=c;for(let c of b.children){let b=d;if(d=(0,E.QB)(d,c.length),(0,E.vr)(b,f)&&(0,E.vr)(e,d)&&!(j=a(c,b,d,e,f,g,h,i)))return!1}}return j}(e,E.Vp,e.length,c,d,f,0,new Map)})}getFirstBracketAfter(a){this.flushQueue();let b=this.initialAstWithoutTokens||this.astWithTokens;return function a(b,c,d,e){if(4===b.kind||2===b.kind)for(let f of b.children){if(d=(0,E.QB)(c,f.length),(0,E.zG)(e,d)){let b=a(f,c,d,e);if(b)return b}c=d}else if(3===b.kind);else if(1===b.kind){let a=(0,E.Qx)(c,d);return{bracketInfo:b.bracketInfo,range:a}}return null}(b,E.Vp,b.length,(0,E.VL)(a))}getFirstBracketBefore(a){this.flushQueue();let b=this.initialAstWithoutTokens||this.astWithTokens;return function a(b,c,d,e){if(4===b.kind||2===b.kind){let f=[];for(let a of b.children)d=(0,E.QB)(c,a.length),f.push({nodeOffsetStart:c,nodeOffsetEnd:d}),c=d;for(let c=f.length-1;c>=0;c--){let{nodeOffsetStart:d,nodeOffsetEnd:g}=f[c];if((0,E.zG)(d,e)){let f=a(b.children[c],d,g,e);if(f)return f}}}else if(3===b.kind);else if(1===b.kind){let a=(0,E.Qx)(c,d);return{bracketInfo:b.bracketInfo,range:a}}return null}(b,E.Vp,b.length,(0,E.VL)(a))}}class K{constructor(a,b,c){this.push=a,this.includeMinIndentation=b,this.textModel=c}}class L extends l.jG{get canBuildAST(){return 5e6>=this.textModel.getValueLength()}constructor(a,b){super(),this.textModel=a,this.languageConfigurationService=b,this.bracketPairsTree=this._register(new l.HE),this.onDidChangeEmitter=new k.vl,this.onDidChange=this.onDidChangeEmitter.event,this.bracketsRequested=!1}handleLanguageConfigurationServiceChange(a){(!a.languageId||this.bracketPairsTree.value?.object.didLanguageChange(a.languageId))&&(this.bracketPairsTree.clear(),this.updateBracketPairsTree())}handleDidChangeOptions(a){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeLanguage(a){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeContent(a){this.bracketPairsTree.value?.object.handleContentChanged(a)}handleDidChangeBackgroundTokenizationState(){this.bracketPairsTree.value?.object.handleDidChangeBackgroundTokenizationState()}handleDidChangeTokens(a){this.bracketPairsTree.value?.object.handleDidChangeTokens(a)}updateBracketPairsTree(){if(this.bracketsRequested&&this.canBuildAST){if(!this.bracketPairsTree.value){var a,b;let c=new l.Cm;this.bracketPairsTree.value=(a=c.add(new J(this.textModel,a=>this.languageConfigurationService.getLanguageConfiguration(a))),b=c,{object:a,dispose:()=>b?.dispose()}),c.add(this.bracketPairsTree.value.object.onDidChange(a=>this.onDidChangeEmitter.fire(a))),this.onDidChangeEmitter.fire()}}else this.bracketPairsTree.value&&(this.bracketPairsTree.clear(),this.onDidChangeEmitter.fire())}getBracketPairsInRange(a){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(a,!1)||h.c1.empty}getBracketPairsInRangeWithMinIndentation(a){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(a,!0)||h.c1.empty}getBracketsInRange(a,b=!1){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketsInRange(a,b)||h.c1.empty}findMatchingBracketUp(a,b,c){let d=this.textModel.validatePosition(b),e=this.textModel.getLanguageIdAtPosition(d.lineNumber,d.column);if(this.canBuildAST){let c=this.languageConfigurationService.getLanguageConfiguration(e).bracketsNew.getClosingBracketInfo(a);if(!c)return null;let d=this.getBracketPairsInRange(r.Q.fromPositions(b,b)).findLast(a=>c.closes(a.openingBracketInfo));return d?d.openingBracketRange:null}{let b=a.toLowerCase(),f=this.languageConfigurationService.getLanguageConfiguration(e).brackets;if(!f)return null;let g=f.textIsBracket[b];return g?O(this._findMatchingBracketUp(g,d,M(c))):null}}matchBracket(a,b){if(this.canBuildAST){let b=this.getBracketPairsInRange(r.Q.fromPositions(a,a)).filter(b=>void 0!==b.closingBracketRange&&(b.openingBracketRange.containsPosition(a)||b.closingBracketRange.containsPosition(a))).findLastMaxBy((0,h.VE)(b=>b.openingBracketRange.containsPosition(a)?b.openingBracketRange:b.closingBracketRange,r.Q.compareRangesUsingStarts));return b?[b.openingBracketRange,b.closingBracketRange]:null}{let c=M(b);return this._matchBracket(this.textModel.validatePosition(a),c)}}_establishBracketSearchOffsets(a,b,c,d){let e=b.getCount(),f=b.getLanguageId(d),g=Math.max(0,a.column-1-c.maxBracketLength);for(let a=d-1;a>=0;a--){let c=b.getEndOffset(a);if(c<=g)break;if((0,x.Yo)(b.getStandardTokenType(a))||b.getLanguageId(a)!==f){g=c;break}}let h=Math.min(b.getLineContent().length,a.column-1+c.maxBracketLength);for(let a=d+1;a<e;a++){let c=b.getStartOffset(a);if(c>=h)break;if((0,x.Yo)(b.getStandardTokenType(a))||b.getLanguageId(a)!==f){h=c;break}}return{searchStartOffset:g,searchEndOffset:h}}_matchBracket(a,b){let c=a.lineNumber,d=this.textModel.tokenization.getLineTokens(c),e=this.textModel.getLineContent(c),f=d.findTokenIndexAtOffset(a.column-1);if(f<0)return null;let g=this.languageConfigurationService.getLanguageConfiguration(d.getLanguageId(f)).brackets;if(g&&!(0,x.Yo)(d.getStandardTokenType(f))){let{searchStartOffset:h,searchEndOffset:i}=this._establishBracketSearchOffsets(a,d,g,f),j=null;for(;;){let d=y.Fu.findNextBracketInRange(g.forwardRegex,c,e,h,i);if(!d)break;if(d.startColumn<=a.column&&a.column<=d.endColumn){let a=e.substring(d.startColumn-1,d.endColumn-1).toLowerCase(),c=this._matchFoundBracket(d,g.textIsBracket[a],g.textIsOpenBracket[a],b);if(c){if(c instanceof N)return null;j=c}}h=d.endColumn-1}if(j)return j}if(f>0&&d.getStartOffset(f)===a.column-1){let g=f-1,h=this.languageConfigurationService.getLanguageConfiguration(d.getLanguageId(g)).brackets;if(h&&!(0,x.Yo)(d.getStandardTokenType(g))){let{searchStartOffset:f,searchEndOffset:i}=this._establishBracketSearchOffsets(a,d,h,g),j=y.Fu.findPrevBracketInRange(h.reversedRegex,c,e,f,i);if(j&&j.startColumn<=a.column&&a.column<=j.endColumn){let a=e.substring(j.startColumn-1,j.endColumn-1).toLowerCase(),c=this._matchFoundBracket(j,h.textIsBracket[a],h.textIsOpenBracket[a],b);if(c)return c instanceof N?null:c}}}return null}_matchFoundBracket(a,b,c,d){if(!b)return null;let e=c?this._findMatchingBracketDown(b,a.getEndPosition(),d):this._findMatchingBracketUp(b,a.getStartPosition(),d);return e?e instanceof N?e:[a,e]:null}_findMatchingBracketUp(a,b,c){let d=a.languageId,e=a.reversedRegex,f=-1,g=0,h=(b,d,h,i)=>{for(;;){if(c&&++g%100==0&&!c())return N.INSTANCE;let j=y.Fu.findPrevBracketInRange(e,b,d,h,i);if(!j)break;let k=d.substring(j.startColumn-1,j.endColumn-1).toLowerCase();if(a.isOpen(k)?f++:a.isClose(k)&&f--,0===f)return j;i=j.startColumn-1}return null};for(let a=b.lineNumber;a>=1;a--){let c=this.textModel.tokenization.getLineTokens(a),e=c.getCount(),f=this.textModel.getLineContent(a),g=e-1,i=f.length,j=f.length;a===b.lineNumber&&(g=c.findTokenIndexAtOffset(b.column-1),i=b.column-1,j=b.column-1);let k=!0;for(;g>=0;g--){let b=c.getLanguageId(g)===d&&!(0,x.Yo)(c.getStandardTokenType(g));if(b)k?i=c.getStartOffset(g):(i=c.getStartOffset(g),j=c.getEndOffset(g));else if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}k=b}if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}}return null}_findMatchingBracketDown(a,b,c){let d=a.languageId,e=a.forwardRegex,f=1,g=0,h=(b,d,h,i)=>{for(;;){if(c&&++g%100==0&&!c())return N.INSTANCE;let j=y.Fu.findNextBracketInRange(e,b,d,h,i);if(!j)break;let k=d.substring(j.startColumn-1,j.endColumn-1).toLowerCase();if(a.isOpen(k)?f++:a.isClose(k)&&f--,0===f)return j;h=j.endColumn-1}return null},i=this.textModel.getLineCount();for(let a=b.lineNumber;a<=i;a++){let c=this.textModel.tokenization.getLineTokens(a),e=c.getCount(),f=this.textModel.getLineContent(a),g=0,i=0,j=0;a===b.lineNumber&&(g=c.findTokenIndexAtOffset(b.column-1),i=b.column-1,j=b.column-1);let k=!0;for(;g<e;g++){let b=c.getLanguageId(g)===d&&!(0,x.Yo)(c.getStandardTokenType(g));if(b)k||(i=c.getStartOffset(g)),j=c.getEndOffset(g);else if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}k=b}if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}}return null}findPrevBracket(a){let b=this.textModel.validatePosition(a);if(this.canBuildAST)return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getFirstBracketBefore(b)||null;let c=null,d=null,e=null;for(let a=b.lineNumber;a>=1;a--){let f=this.textModel.tokenization.getLineTokens(a),g=f.getCount(),h=this.textModel.getLineContent(a),i=g-1,j=h.length,k=h.length;if(a===b.lineNumber){i=f.findTokenIndexAtOffset(b.column-1),j=b.column-1,k=b.column-1;let a=f.getLanguageId(i);c!==a&&(c=a,d=this.languageConfigurationService.getLanguageConfiguration(c).brackets,e=this.languageConfigurationService.getLanguageConfiguration(c).bracketsNew)}let l=!0;for(;i>=0;i--){let b=f.getLanguageId(i);if(c!==b){if(d&&e&&l&&j!==k){let b=y.Fu.findPrevBracketInRange(d.reversedRegex,a,h,j,k);if(b)return this._toFoundBracket(e,b);l=!1}c=b,d=this.languageConfigurationService.getLanguageConfiguration(c).brackets,e=this.languageConfigurationService.getLanguageConfiguration(c).bracketsNew}let g=!!d&&!(0,x.Yo)(f.getStandardTokenType(i));if(g)l?j=f.getStartOffset(i):(j=f.getStartOffset(i),k=f.getEndOffset(i));else if(e&&d&&l&&j!==k){let b=y.Fu.findPrevBracketInRange(d.reversedRegex,a,h,j,k);if(b)return this._toFoundBracket(e,b)}l=g}if(e&&d&&l&&j!==k){let b=y.Fu.findPrevBracketInRange(d.reversedRegex,a,h,j,k);if(b)return this._toFoundBracket(e,b)}}return null}findNextBracket(a){let b=this.textModel.validatePosition(a);if(this.canBuildAST)return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getFirstBracketAfter(b)||null;let c=this.textModel.getLineCount(),d=null,e=null,f=null;for(let a=b.lineNumber;a<=c;a++){let c=this.textModel.tokenization.getLineTokens(a),g=c.getCount(),h=this.textModel.getLineContent(a),i=0,j=0,k=0;if(a===b.lineNumber){i=c.findTokenIndexAtOffset(b.column-1),j=b.column-1,k=b.column-1;let a=c.getLanguageId(i);d!==a&&(d=a,e=this.languageConfigurationService.getLanguageConfiguration(d).brackets,f=this.languageConfigurationService.getLanguageConfiguration(d).bracketsNew)}let l=!0;for(;i<g;i++){let b=c.getLanguageId(i);if(d!==b){if(f&&e&&l&&j!==k){let b=y.Fu.findNextBracketInRange(e.forwardRegex,a,h,j,k);if(b)return this._toFoundBracket(f,b);l=!1}d=b,e=this.languageConfigurationService.getLanguageConfiguration(d).brackets,f=this.languageConfigurationService.getLanguageConfiguration(d).bracketsNew}let g=!!e&&!(0,x.Yo)(c.getStandardTokenType(i));if(g)l||(j=c.getStartOffset(i)),k=c.getEndOffset(i);else if(f&&e&&l&&j!==k){let b=y.Fu.findNextBracketInRange(e.forwardRegex,a,h,j,k);if(b)return this._toFoundBracket(f,b)}l=g}if(f&&e&&l&&j!==k){let b=y.Fu.findNextBracketInRange(e.forwardRegex,a,h,j,k);if(b)return this._toFoundBracket(f,b)}}return null}findEnclosingBrackets(a,b){let c=this.textModel.validatePosition(a);if(this.canBuildAST){let a=r.Q.fromPositions(c),b=this.getBracketPairsInRange(r.Q.fromPositions(c,c)).findLast(b=>void 0!==b.closingBracketRange&&b.range.strictContainsRange(a));return b?[b.openingBracketRange,b.closingBracketRange]:null}let d=M(b),e=this.textModel.getLineCount(),f=new Map,g=[],h=(a,b)=>{if(!f.has(a)){let c=[];for(let a=0,d=b?b.brackets.length:0;a<d;a++)c[a]=0;f.set(a,c)}g=f.get(a)},i=0,j=(a,b,c,e,f)=>{for(;;){if(d&&++i%100==0&&!d())return N.INSTANCE;let h=y.Fu.findNextBracketInRange(a.forwardRegex,b,c,e,f);if(!h)break;let j=c.substring(h.startColumn-1,h.endColumn-1).toLowerCase(),k=a.textIsBracket[j];if(k&&(k.isOpen(j)?g[k.index]++:k.isClose(j)&&g[k.index]--,-1===g[k.index]))return this._matchFoundBracket(h,k,!1,d);e=h.endColumn-1}return null},k=null,l=null;for(let a=c.lineNumber;a<=e;a++){let b=this.textModel.tokenization.getLineTokens(a),d=b.getCount(),e=this.textModel.getLineContent(a),f=0,g=0,i=0;if(a===c.lineNumber){f=b.findTokenIndexAtOffset(c.column-1),g=c.column-1,i=c.column-1;let a=b.getLanguageId(f);k!==a&&(k=a,l=this.languageConfigurationService.getLanguageConfiguration(k).brackets,h(k,l))}let m=!0;for(;f<d;f++){let c=b.getLanguageId(f);if(k!==c){if(l&&m&&g!==i){let b=j(l,a,e,g,i);if(b)return O(b);m=!1}k=c,l=this.languageConfigurationService.getLanguageConfiguration(k).brackets,h(k,l)}let d=!!l&&!(0,x.Yo)(b.getStandardTokenType(f));if(d)m||(g=b.getStartOffset(f)),i=b.getEndOffset(f);else if(l&&m&&g!==i){let b=j(l,a,e,g,i);if(b)return O(b)}m=d}if(l&&m&&g!==i){let b=j(l,a,e,g,i);if(b)return O(b)}}return null}_toFoundBracket(a,b){if(!b)return null;let c=this.textModel.getValueInRange(b);c=c.toLowerCase();let d=a.getBracketInfo(c);return d?{range:b,bracketInfo:d}:null}}function M(a){if(void 0===a)return()=>!0;{let b=Date.now();return()=>Date.now()-b<=a}}class N{static{this.INSTANCE=new N}constructor(){this._searchCanceledBrand=void 0}}function O(a){return a instanceof N?null:a}var P=c(80230),Q=c(14061);class R extends l.jG{constructor(a){super(),this.textModel=a,this.colorProvider=new S,this.onDidChangeEmitter=new k.vl,this.onDidChange=this.onDidChangeEmitter.event,this.colorizationOptions=a.getOptions().bracketPairColorizationOptions,this._register(a.bracketPairs.onDidChange(a=>{this.onDidChangeEmitter.fire()}))}handleDidChangeOptions(a){this.colorizationOptions=this.textModel.getOptions().bracketPairColorizationOptions}getDecorationsInRange(a,b,c,d){return d||void 0===b||!this.colorizationOptions.enabled?[]:this.textModel.bracketPairs.getBracketsInRange(a,!0).map(a=>({id:`bracket${a.range.toString()}-${a.nestingLevel}`,options:{description:"BracketPairColorization",inlineClassName:this.colorProvider.getInlineClassName(a,this.colorizationOptions.independentColorPoolPerBracketType)},ownerId:0,range:a.range})).toArray()}getAllDecorations(a,b){return void 0!==a&&this.colorizationOptions.enabled?this.getDecorationsInRange(new r.Q(1,1,this.textModel.getLineCount(),1),a,b):[]}}class S{constructor(){this.unexpectedClosingBracketClassName="unexpected-closing-bracket"}getInlineClassName(a,b){return a.isInvalid?this.unexpectedClosingBracketClassName:this.getInlineClassNameOfLevel(b?a.nestingLevelOfEqualBracketType:a.nestingLevel)}getInlineClassNameOfLevel(a){return`bracket-highlighting-${a%30}`}}(0,Q.zy)((a,b)=>{let c=[P.sN,P.lQ,P.ss,P.l5,P.sH,P.zp],d=new S;b.addRule(`.monaco-editor .${d.unexpectedClosingBracketClassName} { color: ${a.getColor(P.s7)}; }`);let e=c.map(b=>a.getColor(b)).filter(a=>!!a).filter(a=>!a.isTransparent());for(let a=0;a<30;a++){let c=e[a%e.length];b.addRule(`.monaco-editor .${d.getInlineClassNameOfLevel(a)} { color: ${c}; }`)}});var T=c(49355),U=c(20393);class V{constructor(){this.spacesDiff=0,this.looksLikeAlignment=!1}}function W(a,b,c){let d=Math.min(a.getLineCount(),1e4),e=0,f=0,g="",h=0,i=[0,0,0,0,0,0,0,0,0],j=new V;for(let k=1;k<=d;k++){let d=a.getLineLength(k),l=a.getLineContent(k),m=d<=65536,n=!1,o=0,p=0,q=0;for(let b=0;b<d;b++){let c=m?l.charCodeAt(b):a.getLineCharCode(k,b);if(9===c)q++;else if(32===c)p++;else{n=!0,o=b;break}}if(!n||(q>0?e++:p>1&&f++,!function(a,b,c,d,e){let f;for(f=0,e.spacesDiff=0,e.looksLikeAlignment=!1;f<b&&f<d&&a.charCodeAt(f)===c.charCodeAt(f);f++);let g=0,h=0;for(let c=f;c<b;c++)32===a.charCodeAt(c)?g++:h++;let i=0,j=0;for(let a=f;a<d;a++)32===c.charCodeAt(a)?i++:j++;if(g>0&&h>0||i>0&&j>0)return;let k=Math.abs(h-j),l=Math.abs(g-i);if(0===k){e.spacesDiff=l,l>0&&0<=i-1&&i-1<a.length&&i<c.length&&32!==c.charCodeAt(i)&&32===a.charCodeAt(i-1)&&44===a.charCodeAt(a.length-1)&&(e.looksLikeAlignment=!0);return}l%k==0&&(e.spacesDiff=l/k)}(g,h,l,o,j),j.looksLikeAlignment&&!(c&&b===j.spacesDiff)))continue;let r=j.spacesDiff;r<=8&&i[r]++,g=l,h=o}let k=c;e!==f&&(k=e<f);let l=b;if(k){let a=k?0:.1*d;[2,4,6,8,3,5,7].forEach(b=>{let c=i[b];c>a&&(a=c,l=b)}),4===l&&i[4]>0&&i[2]>0&&i[2]>=i[4]/2&&(l=2)}return{insertSpaces:k,tabSize:l}}function X(a){return(1&a.metadata)>>>0}function Y(a,b){a.metadata=254&a.metadata|b}function Z(a){return(2&a.metadata)>>>1==1}function $(a,b){a.metadata=253&a.metadata|!!b<<1}function _(a){return(4&a.metadata)>>>2==1}function aa(a,b){a.metadata=251&a.metadata|!!b<<2}function ab(a){return(64&a.metadata)>>>6==1}function ac(a,b){a.metadata=191&a.metadata|!!b<<6}function ad(a){return(128&a.metadata)>>>7==1}function ae(a,b){a.metadata=127&a.metadata|!!b<<7}function af(a,b){a.metadata=231&a.metadata|b<<3}function ag(a,b){a.metadata=223&a.metadata|!!b<<5}class ah{constructor(a,b,c){this.metadata=0,this.parent=this,this.left=this,this.right=this,Y(this,1),this.start=b,this.end=c,this.delta=0,this.maxEnd=c,this.id=a,this.ownerId=0,this.options=null,aa(this,!1),ac(this,!1),af(this,1),ag(this,!1),ae(this,!1),this.cachedVersionId=0,this.cachedAbsoluteStart=b,this.cachedAbsoluteEnd=c,this.range=null,$(this,!1)}reset(a,b,c,d){this.start=b,this.end=c,this.maxEnd=c,this.cachedVersionId=a,this.cachedAbsoluteStart=b,this.cachedAbsoluteEnd=c,this.range=d}setOptions(a){this.options=a;let b=this.options.className;aa(this,"squiggly-error"===b||"squiggly-warning"===b||"squiggly-info"===b),ac(this,null!==this.options.glyphMarginClassName),af(this,this.options.stickiness),ag(this,this.options.collapseOnReplaceEdit),ae(this,this.options.affectsFont??!1)}setCachedOffsets(a,b,c){this.cachedVersionId!==c&&(this.range=null),this.cachedVersionId=c,this.cachedAbsoluteStart=a,this.cachedAbsoluteEnd=b}detach(){this.parent=null,this.left=null,this.right=null}}let ai=new ah(null,0,0);ai.parent=ai,ai.left=ai,ai.right=ai,Y(ai,0);class aj{constructor(){this.root=ai,this.requestNormalizeDelta=!1}intervalSearch(a,b,c,d,e,f,g){return this.root===ai?[]:function(a,b,c,d,e,f,g,h){let i=a.root,j=0,k=0,l=0,m=[],n=0;for(;i!==ai;){if(Z(i)){$(i.left,!1),$(i.right,!1),i===i.parent.right&&(j-=i.parent.delta),i=i.parent;continue}if(!Z(i.left)){if(j+i.maxEnd<b){$(i,!0);continue}if(i.left!==ai){i=i.left;continue}}if((k=j+i.start)>c){$(i,!0);continue}if((l=j+i.end)>=b){i.setCachedOffsets(k,l,g);let a=!0;d&&i.ownerId&&i.ownerId!==d&&(a=!1),e&&_(i)&&(a=!1),f&&ad(i)&&(a=!1),h&&!ab(i)&&(a=!1),a&&(m[n++]=i)}if($(i,!0),i.right!==ai&&!Z(i.right)){j+=i.delta,i=i.right;continue}}return $(a.root,!1),m}(this,a,b,c,d,e,f,g)}search(a,b,c,d,e){return this.root===ai?[]:function(a,b,c,d,e,f){let g=a.root,h=0,i=0,j=0,k=[],l=0;for(;g!==ai;){if(Z(g)){$(g.left,!1),$(g.right,!1),g===g.parent.right&&(h-=g.parent.delta),g=g.parent;continue}if(g.left!==ai&&!Z(g.left)){g=g.left;continue}i=h+g.start,j=h+g.end,g.setCachedOffsets(i,j,e);let a=!0;if(b&&g.ownerId&&g.ownerId!==b&&(a=!1),c&&_(g)&&(a=!1),d&&ad(g)&&(a=!1),f&&!ab(g)&&(a=!1),a&&(k[l++]=g),$(g,!0),g.right!==ai&&!Z(g.right)){h+=g.delta,g=g.right;continue}}return $(a.root,!1),k}(this,a,b,c,d,e)}collectNodesFromOwner(a){return function(a,b){let c=a.root,d=[],e=0;for(;c!==ai;){if(Z(c)){$(c.left,!1),$(c.right,!1),c=c.parent;continue}if(c.left!==ai&&!Z(c.left)){c=c.left;continue}if(c.ownerId===b&&(d[e++]=c),$(c,!0),c.right!==ai&&!Z(c.right)){c=c.right;continue}}return $(a.root,!1),d}(this,a)}collectNodesPostOrder(){return function(a){let b=a.root,c=[],d=0;for(;b!==ai;){if(Z(b)){$(b.left,!1),$(b.right,!1),b=b.parent;continue}if(b.left!==ai&&!Z(b.left)){b=b.left;continue}if(b.right!==ai&&!Z(b.right)){b=b.right;continue}c[d++]=b,$(b,!0)}return $(a.root,!1),c}(this)}insert(a){al(this,a),this._normalizeDeltaIfNecessary()}delete(a){am(this,a),this._normalizeDeltaIfNecessary()}resolveNode(a,b){let c=a,d=0;for(;a!==this.root;)a===a.parent.right&&(d+=a.parent.delta),a=a.parent;let e=c.start+d,f=c.end+d;c.setCachedOffsets(e,f,b)}acceptReplace(a,b,c,d){let e=function(a,b,c){let d=a.root,e=0,f=0,g=0,h=[],i=0;for(;d!==ai;){if(Z(d)){$(d.left,!1),$(d.right,!1),d===d.parent.right&&(e-=d.parent.delta),d=d.parent;continue}if(!Z(d.left)){if(e+d.maxEnd<b){$(d,!0);continue}if(d.left!==ai){d=d.left;continue}}if((f=e+d.start)>c){$(d,!0);continue}if((g=e+d.end)>=b&&(d.setCachedOffsets(f,g,0),h[i++]=d),$(d,!0),d.right!==ai&&!Z(d.right)){e+=d.delta,d=d.right;continue}}return $(a.root,!1),h}(this,a,a+b);for(let a=0,b=e.length;a<b;a++)am(this,e[a]);this._normalizeDeltaIfNecessary(),function(a,b,c,d){let e=a.root,f=0,g=d-(c-b);for(;e!==ai;){if(Z(e)){$(e.left,!1),$(e.right,!1),e===e.parent.right&&(f-=e.parent.delta),ar(e),e=e.parent;continue}if(!Z(e.left)){if(f+e.maxEnd<b){$(e,!0);continue}if(e.left!==ai){e=e.left;continue}}if(f+e.start>c){e.start+=g,e.end+=g,e.delta+=g,(e.delta<-0x40000000||e.delta>0x40000000)&&(a.requestNormalizeDelta=!0),$(e,!0);continue}if($(e,!0),e.right!==ai&&!Z(e.right)){f+=e.delta,e=e.right;continue}}$(a.root,!1)}(this,a,a+b,c),this._normalizeDeltaIfNecessary();for(let f=0,g=e.length;f<g;f++){let g=e[f];g.start=g.cachedAbsoluteStart,g.end=g.cachedAbsoluteEnd,function(a,b,c,d,e){let f=(24&a.metadata)>>>3,g=0===f||2===f,h=1===f||2===f,i=c-b,j=Math.min(i,d),k=a.start,l=!1,m=a.end,n=!1;b<=k&&m<=c&&(32&a.metadata)>>>5==1&&(a.start=b,l=!0,a.end=b,n=!0);{let a=e?1:2*(i>0);!l&&ak(k,g,b,a)&&(l=!0),!n&&ak(m,h,b,a)&&(n=!0)}if(j>0&&!e){let a=2*(i>d);!l&&ak(k,g,b+j,a)&&(l=!0),!n&&ak(m,h,b+j,a)&&(n=!0)}{let f=+!!e;!l&&ak(k,g,c,f)&&(a.start=b+d,l=!0),!n&&ak(m,h,c,f)&&(a.end=b+d,n=!0)}let o=d-i;l||(a.start=Math.max(0,k+o)),n||(a.end=Math.max(0,m+o)),a.start>a.end&&(a.end=a.start)}(g,a,a+b,c,d),g.maxEnd=g.end,al(this,g)}this._normalizeDeltaIfNecessary()}_normalizeDeltaIfNecessary(){this.requestNormalizeDelta&&(this.requestNormalizeDelta=!1,function(a){let b=a.root,c=0;for(;b!==ai;){if(b.left!==ai&&!Z(b.left)){b=b.left;continue}if(b.right!==ai&&!Z(b.right)){c+=b.delta,b=b.right;continue}b.start=c+b.start,b.end=c+b.end,b.delta=0,ar(b),$(b,!0),$(b.left,!1),$(b.right,!1),b===b.parent.right&&(c-=b.parent.delta),b=b.parent}$(a.root,!1)}(this))}}function ak(a,b,c,d){return a<c||!(a>c)&&1!==d&&(2===d||b)}function al(a,b){if(a.root===ai)return b.parent=ai,b.left=ai,b.right=ai,Y(b,0),a.root=b,a.root;(function(a,b){let c=0,d=a.root,e=b.start,f=b.end;for(;;){var g,h,i,j;if(0>(g=e,h=f,i=d.start+c,j=d.end+c,g===i?h-j:g-i))if(d.left===ai){b.start-=c,b.end-=c,b.maxEnd-=c,d.left=b;break}else d=d.left;else if(d.right===ai){b.start-=c+d.delta,b.end-=c+d.delta,b.maxEnd-=c+d.delta,d.right=b;break}else c+=d.delta,d=d.right}b.parent=d,b.left=ai,b.right=ai,Y(b,1)})(a,b),as(b.parent);let c=b;for(;c!==a.root&&1===X(c.parent);)if(c.parent===c.parent.parent.left){let b=c.parent.parent.right;1===X(b)?(Y(c.parent,0),Y(b,0),Y(c.parent.parent,1),c=c.parent.parent):(c===c.parent.right&&ao(a,c=c.parent),Y(c.parent,0),Y(c.parent.parent,1),ap(a,c.parent.parent))}else{let b=c.parent.parent.left;1===X(b)?(Y(c.parent,0),Y(b,0),Y(c.parent.parent,1),c=c.parent.parent):(c===c.parent.left&&ap(a,c=c.parent),Y(c.parent,0),Y(c.parent.parent,1),ao(a,c.parent.parent))}return Y(a.root,0),b}function am(a,b){let c,d,e;if(b.left===ai?(c=b.right,d=b,c.delta+=b.delta,(c.delta<-0x40000000||c.delta>0x40000000)&&(a.requestNormalizeDelta=!0),c.start+=b.delta,c.end+=b.delta):b.right===ai?(c=b.left,d=b):(c=(d=function(a){for(;a.left!==ai;)a=a.left;return a}(b.right)).right,c.start+=d.delta,c.end+=d.delta,c.delta+=d.delta,(c.delta<-0x40000000||c.delta>0x40000000)&&(a.requestNormalizeDelta=!0),d.start+=b.delta,d.end+=b.delta,d.delta=b.delta,(d.delta<-0x40000000||d.delta>0x40000000)&&(a.requestNormalizeDelta=!0)),d===a.root){a.root=c,Y(c,0),b.detach(),an(),ar(c),a.root.parent=ai;return}let f=1===X(d);if(d===d.parent.left?d.parent.left=c:d.parent.right=c,d===b?c.parent=d.parent:(d.parent===b?c.parent=d:c.parent=d.parent,d.left=b.left,d.right=b.right,d.parent=b.parent,Y(d,X(b)),b===a.root?a.root=d:b===b.parent.left?b.parent.left=d:b.parent.right=d,d.left!==ai&&(d.left.parent=d),d.right!==ai&&(d.right.parent=d)),b.detach(),f){as(c.parent),d!==b&&(as(d),as(d.parent)),an();return}for(as(c),as(c.parent),d!==b&&(as(d),as(d.parent));c!==a.root&&0===X(c);)c===c.parent.left?(1===X(e=c.parent.right)&&(Y(e,0),Y(c.parent,1),ao(a,c.parent),e=c.parent.right),0===X(e.left)&&0===X(e.right)?(Y(e,1),c=c.parent):(0===X(e.right)&&(Y(e.left,0),Y(e,1),ap(a,e),e=c.parent.right),Y(e,X(c.parent)),Y(c.parent,0),Y(e.right,0),ao(a,c.parent),c=a.root)):(1===X(e=c.parent.left)&&(Y(e,0),Y(c.parent,1),ap(a,c.parent),e=c.parent.left),0===X(e.left)&&0===X(e.right)?(Y(e,1),c=c.parent):(0===X(e.left)&&(Y(e.right,0),Y(e,1),ao(a,e),e=c.parent.left),Y(e,X(c.parent)),Y(c.parent,0),Y(e.left,0),ap(a,c.parent),c=a.root));Y(c,0),an()}function an(){ai.parent=ai,ai.delta=0,ai.start=0,ai.end=0}function ao(a,b){let c=b.right;c.delta+=b.delta,(c.delta<-0x40000000||c.delta>0x40000000)&&(a.requestNormalizeDelta=!0),c.start+=b.delta,c.end+=b.delta,b.right=c.left,c.left!==ai&&(c.left.parent=b),c.parent=b.parent,b.parent===ai?a.root=c:b===b.parent.left?b.parent.left=c:b.parent.right=c,c.left=b,b.parent=c,ar(b),ar(c)}function ap(a,b){let c=b.left;b.delta-=c.delta,(b.delta<-0x40000000||b.delta>0x40000000)&&(a.requestNormalizeDelta=!0),b.start-=c.delta,b.end-=c.delta,b.left=c.right,c.right!==ai&&(c.right.parent=b),c.parent=b.parent,b.parent===ai?a.root=c:b===b.parent.right?b.parent.right=c:b.parent.left=c,c.right=b,b.parent=c,ar(b),ar(c)}function aq(a){let b=a.end;if(a.left!==ai){let c=a.left.maxEnd;c>b&&(b=c)}if(a.right!==ai){let c=a.right.maxEnd+a.delta;c>b&&(b=c)}return b}function ar(a){a.maxEnd=aq(a)}function as(a){for(;a!==ai;){let b=aq(a);if(a.maxEnd===b)return;a.maxEnd=b,a=a.parent}}class at{constructor(a,b){this.piece=a,this.color=b,this.size_left=0,this.lf_left=0,this.parent=this,this.left=this,this.right=this}next(){if(this.right!==au)return av(this.right);let a=this;for(;a.parent!==au&&a.parent.left!==a;)a=a.parent;return a.parent===au?au:a.parent}prev(){if(this.left!==au)return aw(this.left);let a=this;for(;a.parent!==au&&a.parent.right!==a;)a=a.parent;return a.parent===au?au:a.parent}detach(){this.parent=null,this.left=null,this.right=null}}let au=new at(null,0);function av(a){for(;a.left!==au;)a=a.left;return a}function aw(a){for(;a.right!==au;)a=a.right;return a}function ax(a){return a===au?0:a.size_left+a.piece.length+ax(a.right)}function ay(a){return a===au?0:a.lf_left+a.piece.lineFeedCnt+ay(a.right)}function az(){au.parent=au}function aA(a,b){let c=b.right;c.size_left+=b.size_left+(b.piece?b.piece.length:0),c.lf_left+=b.lf_left+(b.piece?b.piece.lineFeedCnt:0),b.right=c.left,c.left!==au&&(c.left.parent=b),c.parent=b.parent,b.parent===au?a.root=c:b.parent.left===b?b.parent.left=c:b.parent.right=c,c.left=b,b.parent=c}function aB(a,b){let c=b.left;b.left=c.right,c.right!==au&&(c.right.parent=b),c.parent=b.parent,b.size_left-=c.size_left+(c.piece?c.piece.length:0),b.lf_left-=c.lf_left+(c.piece?c.piece.lineFeedCnt:0),b.parent===au?a.root=c:b===b.parent.right?b.parent.right=c:b.parent.left=c,c.right=b,b.parent=c}function aC(a,b){let c,d,e;if(c=b.left===au?(d=b).right:b.right===au?(d=b).left:(d=av(b.right)).right,d===a.root){a.root=c,c.color=0,b.detach(),az(),a.root.parent=au;return}let f=1===d.color;if(d===d.parent.left?d.parent.left=c:d.parent.right=c,d===b?(c.parent=d.parent,aF(a,c)):(d.parent===b?c.parent=d:c.parent=d.parent,aF(a,c),d.left=b.left,d.right=b.right,d.parent=b.parent,d.color=b.color,b===a.root?a.root=d:b===b.parent.left?b.parent.left=d:b.parent.right=d,d.left!==au&&(d.left.parent=d),d.right!==au&&(d.right.parent=d),d.size_left=b.size_left,d.lf_left=b.lf_left,aF(a,d)),b.detach(),c.parent.left===c){let b=ax(c),d=ay(c);if(b!==c.parent.size_left||d!==c.parent.lf_left){let e=b-c.parent.size_left,f=d-c.parent.lf_left;c.parent.size_left=b,c.parent.lf_left=d,aE(a,c.parent,e,f)}}if(aF(a,c.parent),f)return void az();for(;c!==a.root&&0===c.color;)c===c.parent.left?(1===(e=c.parent.right).color&&(e.color=0,c.parent.color=1,aA(a,c.parent),e=c.parent.right),0===e.left.color&&0===e.right.color?(e.color=1,c=c.parent):(0===e.right.color&&(e.left.color=0,e.color=1,aB(a,e),e=c.parent.right),e.color=c.parent.color,c.parent.color=0,e.right.color=0,aA(a,c.parent),c=a.root)):(1===(e=c.parent.left).color&&(e.color=0,c.parent.color=1,aB(a,c.parent),e=c.parent.left),0===e.left.color&&0===e.right.color?(e.color=1,c=c.parent):(0===e.left.color&&(e.right.color=0,e.color=1,aA(a,e),e=c.parent.left),e.color=c.parent.color,c.parent.color=0,e.left.color=0,aB(a,c.parent),c=a.root));c.color=0,az()}function aD(a,b){for(aF(a,b);b!==a.root&&1===b.parent.color;)if(b.parent===b.parent.parent.left){let c=b.parent.parent.right;1===c.color?(b.parent.color=0,c.color=0,b.parent.parent.color=1,b=b.parent.parent):(b===b.parent.right&&aA(a,b=b.parent),b.parent.color=0,b.parent.parent.color=1,aB(a,b.parent.parent))}else{let c=b.parent.parent.left;1===c.color?(b.parent.color=0,c.color=0,b.parent.parent.color=1,b=b.parent.parent):(b===b.parent.left&&aB(a,b=b.parent),b.parent.color=0,b.parent.parent.color=1,aA(a,b.parent.parent))}a.root.color=0}function aE(a,b,c,d){for(;b!==a.root&&b!==au;)b.parent.left===b&&(b.parent.size_left+=c,b.parent.lf_left+=d),b=b.parent}function aF(a,b){let c=0,d=0;if(b!==a.root){for(;b!==a.root&&b===b.parent.right;)b=b.parent;if(b!==a.root)for(c=ax((b=b.parent).left)-b.size_left,d=ay(b.left)-b.lf_left,b.size_left+=c,b.lf_left+=d;b!==a.root&&(0!==c||0!==d);)b.parent.left===b&&(b.parent.size_left+=c,b.parent.lf_left+=d),b=b.parent}}au.parent=au,au.left=au,au.right=au,au.color=0;var aG=c(46535);function aH(a){let b;return(b=a[a.length-1]<65536?new Uint16Array(a.length):new Uint32Array(a.length)).set(a,0),b}class aI{constructor(a,b,c,d,e){this.lineStarts=a,this.cr=b,this.lf=c,this.crlf=d,this.isBasicASCII=e}}function aJ(a,b=!0){let c=[0],d=1;for(let b=0,e=a.length;b<e;b++){let f=a.charCodeAt(b);13===f?b+1<e&&10===a.charCodeAt(b+1)?(c[d++]=b+2,b++):c[d++]=b+1:10===f&&(c[d++]=b+1)}return b?aH(c):c}class aK{constructor(a,b,c,d,e){this.bufferIndex=a,this.start=b,this.end=c,this.lineFeedCnt=d,this.length=e}}class aL{constructor(a,b){this.buffer=a,this.lineStarts=b}}class aM{constructor(a,b){this._pieces=[],this._tree=a,this._BOM=b,this._index=0,a.root!==au&&a.iterate(a.root,a=>(a!==au&&this._pieces.push(a.piece),!0))}read(){if(0===this._pieces.length)if(0===this._index)return this._index++,this._BOM;else return null;return this._index>this._pieces.length-1?null:0===this._index?this._BOM+this._tree.getPieceContent(this._pieces[this._index++]):this._tree.getPieceContent(this._pieces[this._index++])}}class aN{constructor(a){this._limit=a,this._cache=[]}get(a){for(let b=this._cache.length-1;b>=0;b--){let c=this._cache[b];if(c.nodeStartOffset<=a&&c.nodeStartOffset+c.node.piece.length>=a)return c}return null}get2(a){for(let b=this._cache.length-1;b>=0;b--){let c=this._cache[b];if(c.nodeStartLineNumber&&c.nodeStartLineNumber<a&&c.nodeStartLineNumber+c.node.piece.lineFeedCnt>=a)return c}return null}set(a){this._cache.length>=this._limit&&this._cache.shift(),this._cache.push(a)}validate(a){let b=!1,c=this._cache;for(let d=0;d<c.length;d++){let e=c[d];if(null===e.node.parent||e.nodeStartOffset>=a){c[d]=null,b=!0;continue}}if(b){let a=[];for(let b of c)null!==b&&a.push(b);this._cache=a}}}class aO{constructor(a,b,c){this.create(a,b,c)}create(a,b,c){this._buffers=[new aL("",[0])],this._lastChangeBufferPos={line:0,column:0},this.root=au,this._lineCnt=1,this._length=0,this._EOL=b,this._EOLLength=b.length,this._EOLNormalized=c;let d=null;for(let b=0,c=a.length;b<c;b++)if(a[b].buffer.length>0){a[b].lineStarts||(a[b].lineStarts=aJ(a[b].buffer));let c=new aK(b+1,{line:0,column:0},{line:a[b].lineStarts.length-1,column:a[b].buffer.length-a[b].lineStarts[a[b].lineStarts.length-1]},a[b].lineStarts.length-1,a[b].buffer.length);this._buffers.push(a[b]),d=this.rbInsertRight(d,c)}this._searchCache=new aN(1),this._lastVisitedLine={lineNumber:0,value:""},this.computeBufferMetadata()}normalizeEOL(a){let b=65535-Math.floor(21845),c=2*b,d="",e=0,f=[];if(this.iterate(this.root,g=>{let h=this.getNodeContent(g),i=h.length;if(e<=b||e+i<c)return d+=h,e+=i,!0;let j=d.replace(/\r\n|\r|\n/g,a);return f.push(new aL(j,aJ(j))),d=h,e=i,!0}),e>0){let b=d.replace(/\r\n|\r|\n/g,a);f.push(new aL(b,aJ(b)))}this.create(f,a,!0)}getEOL(){return this._EOL}setEOL(a){this._EOL=a,this._EOLLength=this._EOL.length,this.normalizeEOL(a)}createSnapshot(a){return new aM(this,a)}getOffsetAt(a,b){let c=0,d=this.root;for(;d!==au;)if(d.left!==au&&d.lf_left+1>=a)d=d.left;else{if(d.lf_left+d.piece.lineFeedCnt+1>=a)return(c+=d.size_left)+(this.getAccumulatedValue(d,a-d.lf_left-2)+b-1);a-=d.lf_left+d.piece.lineFeedCnt,c+=d.size_left+d.piece.length,d=d.right}return c}getPositionAt(a){a=Math.max(0,a=Math.floor(a));let b=this.root,c=0,d=a;for(;b!==au;)if(0!==b.size_left&&b.size_left>=a)b=b.left;else if(b.size_left+b.piece.length>=a){let e=this.getIndexOf(b,a-b.size_left);if(c+=b.lf_left+e.index,0===e.index){let a=d-this.getOffsetAt(c+1,1);return new q.y(c+1,a+1)}return new q.y(c+1,e.remainder+1)}else{if(a-=b.size_left+b.piece.length,c+=b.lf_left+b.piece.lineFeedCnt,b.right===au){let b=this.getOffsetAt(c+1,1),e=d-a-b;return new q.y(c+1,e+1)}b=b.right}return new q.y(1,1)}getValueInRange(a,b){if(a.startLineNumber===a.endLineNumber&&a.startColumn===a.endColumn)return"";let c=this.nodeAt2(a.startLineNumber,a.startColumn),d=this.nodeAt2(a.endLineNumber,a.endColumn),e=this.getValueInRange2(c,d);return b?b===this._EOL&&this._EOLNormalized&&b===this.getEOL()&&this._EOLNormalized?e:e.replace(/\r\n|\r|\n/g,b):e}getValueInRange2(a,b){if(a.node===b.node){let c=a.node,d=this._buffers[c.piece.bufferIndex].buffer,e=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);return d.substring(e+a.remainder,e+b.remainder)}let c=a.node,d=this._buffers[c.piece.bufferIndex].buffer,e=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start),f=d.substring(e+a.remainder,e+c.piece.length);for(c=c.next();c!==au;){let a=this._buffers[c.piece.bufferIndex].buffer,d=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);if(c===b.node){f+=a.substring(d,d+b.remainder);break}f+=a.substr(d,c.piece.length),c=c.next()}return f}getLinesContent(){let a=[],b=0,c="",d=!1;return this.iterate(this.root,e=>{if(e===au)return!0;let f=e.piece,g=f.length;if(0===g)return!0;let h=this._buffers[f.bufferIndex].buffer,i=this._buffers[f.bufferIndex].lineStarts,j=f.start.line,k=f.end.line,l=i[j]+f.start.column;if(d&&(10===h.charCodeAt(l)&&(l++,g--),a[b++]=c,c="",d=!1,0===g))return!0;if(j===k)return this._EOLNormalized||13!==h.charCodeAt(l+g-1)?c+=h.substr(l,g):(d=!0,c+=h.substr(l,g-1)),!0;c+=this._EOLNormalized?h.substring(l,Math.max(l,i[j+1]-this._EOLLength)):h.substring(l,i[j+1]).replace(/(\r\n|\r|\n)$/,""),a[b++]=c;for(let d=j+1;d<k;d++)c=this._EOLNormalized?h.substring(i[d],i[d+1]-this._EOLLength):h.substring(i[d],i[d+1]).replace(/(\r\n|\r|\n)$/,""),a[b++]=c;return this._EOLNormalized||13!==h.charCodeAt(i[k]+f.end.column-1)?c=h.substr(i[k],f.end.column):(d=!0,0===f.end.column?b--:c=h.substr(i[k],f.end.column-1)),!0}),d&&(a[b++]=c,c=""),a[b++]=c,a}getLength(){return this._length}getLineCount(){return this._lineCnt}getLineContent(a){return this._lastVisitedLine.lineNumber===a||(this._lastVisitedLine.lineNumber=a,a===this._lineCnt?this._lastVisitedLine.value=this.getLineRawContent(a):this._EOLNormalized?this._lastVisitedLine.value=this.getLineRawContent(a,this._EOLLength):this._lastVisitedLine.value=this.getLineRawContent(a).replace(/(\r\n|\r|\n)$/,"")),this._lastVisitedLine.value}_getCharCode(a){if(a.remainder===a.node.piece.length){let b=a.node.next();if(!b)return 0;let c=this._buffers[b.piece.bufferIndex],d=this.offsetInBuffer(b.piece.bufferIndex,b.piece.start);return c.buffer.charCodeAt(d)}{let b=this._buffers[a.node.piece.bufferIndex],c=this.offsetInBuffer(a.node.piece.bufferIndex,a.node.piece.start)+a.remainder;return b.buffer.charCodeAt(c)}}getLineCharCode(a,b){let c=this.nodeAt2(a,b+1);return this._getCharCode(c)}getLineLength(a){if(a===this.getLineCount()){let b=this.getOffsetAt(a,1);return this.getLength()-b}return this.getOffsetAt(a+1,1)-this.getOffsetAt(a,1)-this._EOLLength}getNearestChunk(a){let b=this.nodeAt(a);if(b.remainder===b.node.piece.length){let a=b.node.next();if(!a||a===au)return"";let c=this._buffers[a.piece.bufferIndex],d=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start);return c.buffer.substring(d,d+a.piece.length)}{let a=this._buffers[b.node.piece.bufferIndex],c=this.offsetInBuffer(b.node.piece.bufferIndex,b.node.piece.start),d=c+b.remainder,e=c+b.node.piece.length;return a.buffer.substring(d,e)}}findMatchesInNode(a,b,c,d,e,f,g,h,i,j,k){let l,m,n,o=this._buffers[a.piece.bufferIndex],p=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start),q=this.offsetInBuffer(a.piece.bufferIndex,e),s=this.offsetInBuffer(a.piece.bufferIndex,f),t={line:0,column:0};b._wordSeparators?(m=o.buffer.substring(q,s),n=a=>a+q,b.reset(0)):(m=o.buffer,n=a=>a,b.reset(q));do if(l=b.next(m)){if(n(l.index)>=s)return j;this.positionInBuffer(a,n(l.index)-p,t);let b=this.getLineFeedCnt(a.piece.bufferIndex,e,t),f=t.line===e.line?t.column-e.column+d:t.column+1,g=f+l[0].length;if(k[j++]=(0,aG.dr)(new r.Q(c+b,f,c+b,g),l,h),n(l.index)+l[0].length>=s)return j;if(j>=i)break}while(l);return j}findMatchesLineByLine(a,b,c,d){let e=[],f=0,g=new aG.W5(b.wordSeparators,b.regex),h=this.nodeAt2(a.startLineNumber,a.startColumn);if(null===h)return[];let i=this.nodeAt2(a.endLineNumber,a.endColumn);if(null===i)return[];let j=this.positionInBuffer(h.node,h.remainder),k=this.positionInBuffer(i.node,i.remainder);if(h.node===i.node)return this.findMatchesInNode(h.node,g,a.startLineNumber,a.startColumn,j,k,b,c,d,f,e),e;let l=a.startLineNumber,m=h.node;for(;m!==i.node;){let i=this.getLineFeedCnt(m.piece.bufferIndex,j,m.piece.end);if(i>=1){let h=this._buffers[m.piece.bufferIndex].lineStarts,k=this.offsetInBuffer(m.piece.bufferIndex,m.piece.start),n=h[j.line+i],o=l===a.startLineNumber?a.startColumn:1;if((f=this.findMatchesInNode(m,g,l,o,j,this.positionInBuffer(m,n-k),b,c,d,f,e))>=d)return e;l+=i}let k=l===a.startLineNumber?a.startColumn-1:0;if(l===a.endLineNumber){let h=this.getLineContent(l).substring(k,a.endColumn-1);return f=this._findMatchesInLine(b,g,h,a.endLineNumber,k,f,e,c,d),e}if((f=this._findMatchesInLine(b,g,this.getLineContent(l).substr(k),l,k,f,e,c,d))>=d)return e;l++,m=(h=this.nodeAt2(l,1)).node,j=this.positionInBuffer(h.node,h.remainder)}if(l===a.endLineNumber){let h=l===a.startLineNumber?a.startColumn-1:0,i=this.getLineContent(l).substring(h,a.endColumn-1);return f=this._findMatchesInLine(b,g,i,a.endLineNumber,h,f,e,c,d),e}let n=l===a.startLineNumber?a.startColumn:1;return f=this.findMatchesInNode(i.node,g,l,n,j,k,b,c,d,f,e),e}_findMatchesInLine(a,b,c,d,e,f,g,h,i){let j,k=a.wordSeparators;if(!h&&a.simpleSearch){let b=a.simpleSearch,h=b.length,j=c.length,l=-h;for(;-1!==(l=c.indexOf(b,l+h))&&(!(!k||(0,aG.wC)(k,c,j,l,h))||(g[f++]=new w.Dg(new r.Q(d,l+1+e,d,l+1+h+e),null),!(f>=i))););return f}b.reset(0);do if((j=b.next(c))&&(g[f++]=(0,aG.dr)(new r.Q(d,j.index+1+e,d,j.index+1+j[0].length+e),j,h),f>=i))break;while(j);return f}insert(a,b,c=!1){if(this._EOLNormalized=this._EOLNormalized&&c,this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",this.root!==au){let{node:c,remainder:d,nodeStartOffset:e}=this.nodeAt(a),f=c.piece,g=f.bufferIndex,h=this.positionInBuffer(c,d);if(0===c.piece.bufferIndex&&f.end.line===this._lastChangeBufferPos.line&&f.end.column===this._lastChangeBufferPos.column&&e+f.length===a&&b.length<65535){this.appendToNode(c,b),this.computeBufferMetadata();return}if(e===a)this.insertContentToNodeLeft(b,c),this._searchCache.validate(a);else if(e+c.piece.length>a){let a=[],e=new aK(f.bufferIndex,h,f.end,this.getLineFeedCnt(f.bufferIndex,h,f.end),this.offsetInBuffer(g,f.end)-this.offsetInBuffer(g,h));if(this.shouldCheckCRLF()&&this.endWithCR(b)&&10===this.nodeCharCodeAt(c,d)){let a={line:e.start.line+1,column:0};e=new aK(e.bufferIndex,a,e.end,this.getLineFeedCnt(e.bufferIndex,a,e.end),e.length-1),b+="\n"}if(this.shouldCheckCRLF()&&this.startWithLF(b))if(13===this.nodeCharCodeAt(c,d-1)){let e=this.positionInBuffer(c,d-1);this.deleteNodeTail(c,e),b="\r"+b,0===c.piece.length&&a.push(c)}else this.deleteNodeTail(c,h);else this.deleteNodeTail(c,h);let i=this.createNewPieces(b);e.length>0&&this.rbInsertRight(c,e);let j=c;for(let a=0;a<i.length;a++)j=this.rbInsertRight(j,i[a]);this.deleteNodes(a)}else this.insertContentToNodeRight(b,c)}else{let a=this.createNewPieces(b),c=this.rbInsertLeft(null,a[0]);for(let b=1;b<a.length;b++)c=this.rbInsertRight(c,a[b])}this.computeBufferMetadata()}delete(a,b){if(this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",b<=0||this.root===au)return;let c=this.nodeAt(a),d=this.nodeAt(a+b),e=c.node,f=d.node;if(e===f){let f=this.positionInBuffer(e,c.remainder),g=this.positionInBuffer(e,d.remainder);if(c.nodeStartOffset===a){if(b===e.piece.length){let a=e.next();aC(this,e),this.validateCRLFWithPrevNode(a),this.computeBufferMetadata();return}this.deleteNodeHead(e,g),this._searchCache.validate(a),this.validateCRLFWithPrevNode(e),this.computeBufferMetadata();return}if(c.nodeStartOffset+e.piece.length===a+b){this.deleteNodeTail(e,f),this.validateCRLFWithNextNode(e),this.computeBufferMetadata();return}this.shrinkNode(e,f,g),this.computeBufferMetadata();return}let g=[],h=this.positionInBuffer(e,c.remainder);this.deleteNodeTail(e,h),this._searchCache.validate(a),0===e.piece.length&&g.push(e);let i=this.positionInBuffer(f,d.remainder);this.deleteNodeHead(f,i),0===f.piece.length&&g.push(f);let j=e.next();for(let a=j;a!==au&&a!==f;a=a.next())g.push(a);let k=0===e.piece.length?e.prev():e;this.deleteNodes(g),this.validateCRLFWithNextNode(k),this.computeBufferMetadata()}insertContentToNodeLeft(a,b){let c=[];if(this.shouldCheckCRLF()&&this.endWithCR(a)&&this.startWithLF(b)){let d=b.piece,e={line:d.start.line+1,column:0};b.piece=new aK(d.bufferIndex,e,d.end,this.getLineFeedCnt(d.bufferIndex,e,d.end),d.length-1),a+="\n",aE(this,b,-1,-1),0===b.piece.length&&c.push(b)}let d=this.createNewPieces(a),e=this.rbInsertLeft(b,d[d.length-1]);for(let a=d.length-2;a>=0;a--)e=this.rbInsertLeft(e,d[a]);this.validateCRLFWithPrevNode(e),this.deleteNodes(c)}insertContentToNodeRight(a,b){this.adjustCarriageReturnFromNext(a,b)&&(a+="\n");let c=this.createNewPieces(a),d=this.rbInsertRight(b,c[0]),e=d;for(let a=1;a<c.length;a++)e=this.rbInsertRight(e,c[a]);this.validateCRLFWithPrevNode(d)}positionInBuffer(a,b,c){let d=a.piece,e=a.piece.bufferIndex,f=this._buffers[e].lineStarts,g=f[d.start.line]+d.start.column+b,h=d.start.line,i=d.end.line,j=0,k=0,l=0;for(;h<=i&&(l=f[j=h+(i-h)/2|0],j!==i);)if(k=f[j+1],g<l)i=j-1;else if(g>=k)h=j+1;else break;return c?(c.line=j,c.column=g-l,null):{line:j,column:g-l}}getLineFeedCnt(a,b,c){if(0===c.column)return c.line-b.line;let d=this._buffers[a].lineStarts;if(c.line===d.length-1)return c.line-b.line;let e=d[c.line+1],f=d[c.line]+c.column;return e>f+1?c.line-b.line:13===this._buffers[a].buffer.charCodeAt(f-1)?c.line-b.line+1:c.line-b.line}offsetInBuffer(a,b){return this._buffers[a].lineStarts[b.line]+b.column}deleteNodes(a){for(let b=0;b<a.length;b++)aC(this,a[b])}createNewPieces(a){if(a.length>65535){let b=[];for(;a.length>65535;){let c,d=a.charCodeAt(65534);13===d||d>=55296&&d<=56319?(c=a.substring(0,65534),a=a.substring(65534)):(c=a.substring(0,65535),a=a.substring(65535));let e=aJ(c);b.push(new aK(this._buffers.length,{line:0,column:0},{line:e.length-1,column:c.length-e[e.length-1]},e.length-1,c.length)),this._buffers.push(new aL(c,e))}let c=aJ(a);return b.push(new aK(this._buffers.length,{line:0,column:0},{line:c.length-1,column:a.length-c[c.length-1]},c.length-1,a.length)),this._buffers.push(new aL(a,c)),b}let b=this._buffers[0].buffer.length,c=aJ(a,!1),d=this._lastChangeBufferPos;if(this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-1]===b&&0!==b&&this.startWithLF(a)&&this.endWithCR(this._buffers[0].buffer)){this._lastChangeBufferPos={line:this._lastChangeBufferPos.line,column:this._lastChangeBufferPos.column+1},d=this._lastChangeBufferPos;for(let a=0;a<c.length;a++)c[a]+=b+1;this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(c.slice(1)),this._buffers[0].buffer+="_"+a,b+=1}else{if(0!==b)for(let a=0;a<c.length;a++)c[a]+=b;this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(c.slice(1)),this._buffers[0].buffer+=a}let e=this._buffers[0].buffer.length,f=this._buffers[0].lineStarts.length-1,g=e-this._buffers[0].lineStarts[f],h={line:f,column:g},i=new aK(0,d,h,this.getLineFeedCnt(0,d,h),e-b);return this._lastChangeBufferPos=h,[i]}getLineRawContent(a,b=0){let c=this.root,d="",e=this._searchCache.get2(a);if(e){c=e.node;let f=this.getAccumulatedValue(c,a-e.nodeStartLineNumber-1),g=this._buffers[c.piece.bufferIndex].buffer,h=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);if(e.nodeStartLineNumber+c.piece.lineFeedCnt===a)d=g.substring(h+f,h+c.piece.length);else{let d=this.getAccumulatedValue(c,a-e.nodeStartLineNumber);return g.substring(h+f,h+d-b)}}else{let e=0,f=a;for(;c!==au;)if(c.left!==au&&c.lf_left>=a-1)c=c.left;else if(c.lf_left+c.piece.lineFeedCnt>a-1){let d=this.getAccumulatedValue(c,a-c.lf_left-2),g=this.getAccumulatedValue(c,a-c.lf_left-1),h=this._buffers[c.piece.bufferIndex].buffer,i=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);return e+=c.size_left,this._searchCache.set({node:c,nodeStartOffset:e,nodeStartLineNumber:f-(a-1-c.lf_left)}),h.substring(i+d,i+g-b)}else if(c.lf_left+c.piece.lineFeedCnt===a-1){let b=this.getAccumulatedValue(c,a-c.lf_left-2),e=this._buffers[c.piece.bufferIndex].buffer,f=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);d=e.substring(f+b,f+c.piece.length);break}else a-=c.lf_left+c.piece.lineFeedCnt,e+=c.size_left+c.piece.length,c=c.right}for(c=c.next();c!==au;){let a=this._buffers[c.piece.bufferIndex].buffer;if(c.piece.lineFeedCnt>0){let e=this.getAccumulatedValue(c,0),f=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);d+=a.substring(f,f+e-b);break}{let b=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);d+=a.substr(b,c.piece.length)}c=c.next()}return d}computeBufferMetadata(){let a=this.root,b=1,c=0;for(;a!==au;)b+=a.lf_left+a.piece.lineFeedCnt,c+=a.size_left+a.piece.length,a=a.right;this._lineCnt=b,this._length=c,this._searchCache.validate(this._length)}getIndexOf(a,b){let c=a.piece,d=this.positionInBuffer(a,b),e=d.line-c.start.line;if(this.offsetInBuffer(c.bufferIndex,c.end)-this.offsetInBuffer(c.bufferIndex,c.start)===b){let b=this.getLineFeedCnt(a.piece.bufferIndex,c.start,d);if(b!==e)return{index:b,remainder:0}}return{index:e,remainder:d.column}}getAccumulatedValue(a,b){if(b<0)return 0;let c=a.piece,d=this._buffers[c.bufferIndex].lineStarts,e=c.start.line+b+1;return e>c.end.line?d[c.end.line]+c.end.column-d[c.start.line]-c.start.column:d[e]-d[c.start.line]-c.start.column}deleteNodeTail(a,b){let c=a.piece,d=c.lineFeedCnt,e=this.offsetInBuffer(c.bufferIndex,c.end),f=this.offsetInBuffer(c.bufferIndex,b),g=this.getLineFeedCnt(c.bufferIndex,c.start,b),h=g-d,i=f-e,j=c.length+i;a.piece=new aK(c.bufferIndex,c.start,b,g,j),aE(this,a,i,h)}deleteNodeHead(a,b){let c=a.piece,d=c.lineFeedCnt,e=this.offsetInBuffer(c.bufferIndex,c.start),f=this.getLineFeedCnt(c.bufferIndex,b,c.end),g=this.offsetInBuffer(c.bufferIndex,b),h=f-d,i=e-g,j=c.length+i;a.piece=new aK(c.bufferIndex,b,c.end,f,j),aE(this,a,i,h)}shrinkNode(a,b,c){let d=a.piece,e=d.start,f=d.end,g=d.length,h=d.lineFeedCnt,i=this.getLineFeedCnt(d.bufferIndex,d.start,b),j=this.offsetInBuffer(d.bufferIndex,b)-this.offsetInBuffer(d.bufferIndex,e);a.piece=new aK(d.bufferIndex,d.start,b,i,j),aE(this,a,j-g,i-h);let k=new aK(d.bufferIndex,c,f,this.getLineFeedCnt(d.bufferIndex,c,f),this.offsetInBuffer(d.bufferIndex,f)-this.offsetInBuffer(d.bufferIndex,c)),l=this.rbInsertRight(a,k);this.validateCRLFWithPrevNode(l)}appendToNode(a,b){this.adjustCarriageReturnFromNext(b,a)&&(b+="\n");let c=this.shouldCheckCRLF()&&this.startWithLF(b)&&this.endWithCR(a),d=this._buffers[0].buffer.length;this._buffers[0].buffer+=b;let e=aJ(b,!1);for(let a=0;a<e.length;a++)e[a]+=d;if(c){let a=this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-2];this._buffers[0].lineStarts.pop(),this._lastChangeBufferPos={line:this._lastChangeBufferPos.line-1,column:d-a}}this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(e.slice(1));let f=this._buffers[0].lineStarts.length-1,g=this._buffers[0].buffer.length-this._buffers[0].lineStarts[f],h={line:f,column:g},i=a.piece.length+b.length,j=a.piece.lineFeedCnt,k=this.getLineFeedCnt(0,a.piece.start,h),l=k-j;a.piece=new aK(a.piece.bufferIndex,a.piece.start,h,k,i),this._lastChangeBufferPos=h,aE(this,a,b.length,l)}nodeAt(a){let b=this.root,c=this._searchCache.get(a);if(c)return{node:c.node,nodeStartOffset:c.nodeStartOffset,remainder:a-c.nodeStartOffset};let d=0;for(;b!==au;)if(b.size_left>a)b=b.left;else if(b.size_left+b.piece.length>=a){d+=b.size_left;let c={node:b,remainder:a-b.size_left,nodeStartOffset:d};return this._searchCache.set(c),c}else a-=b.size_left+b.piece.length,d+=b.size_left+b.piece.length,b=b.right;return null}nodeAt2(a,b){let c=this.root,d=0;for(;c!==au;)if(c.left!==au&&c.lf_left>=a-1)c=c.left;else if(c.lf_left+c.piece.lineFeedCnt>a-1){let e=this.getAccumulatedValue(c,a-c.lf_left-2),f=this.getAccumulatedValue(c,a-c.lf_left-1);return d+=c.size_left,{node:c,remainder:Math.min(e+b-1,f),nodeStartOffset:d}}else if(c.lf_left+c.piece.lineFeedCnt===a-1){let e=this.getAccumulatedValue(c,a-c.lf_left-2);if(e+b-1<=c.piece.length)return{node:c,remainder:e+b-1,nodeStartOffset:d};b-=c.piece.length-e;break}else a-=c.lf_left+c.piece.lineFeedCnt,d+=c.size_left+c.piece.length,c=c.right;for(c=c.next();c!==au;){if(c.piece.lineFeedCnt>0){let a=this.getAccumulatedValue(c,0),d=this.offsetOfNode(c);return{node:c,remainder:Math.min(b-1,a),nodeStartOffset:d}}if(c.piece.length>=b-1){let a=this.offsetOfNode(c);return{node:c,remainder:b-1,nodeStartOffset:a}}b-=c.piece.length;c=c.next()}return null}nodeCharCodeAt(a,b){if(a.piece.lineFeedCnt<1)return -1;let c=this._buffers[a.piece.bufferIndex],d=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start)+b;return c.buffer.charCodeAt(d)}offsetOfNode(a){if(!a)return 0;let b=a.size_left;for(;a!==this.root;)a.parent.right===a&&(b+=a.parent.size_left+a.parent.piece.length),a=a.parent;return b}shouldCheckCRLF(){return!(this._EOLNormalized&&"\n"===this._EOL)}startWithLF(a){if("string"==typeof a)return 10===a.charCodeAt(0);if(a===au||0===a.piece.lineFeedCnt)return!1;let b=a.piece,c=this._buffers[b.bufferIndex].lineStarts,d=b.start.line,e=c[d]+b.start.column;return d!==c.length-1&&!(c[d+1]>e+1)&&10===this._buffers[b.bufferIndex].buffer.charCodeAt(e)}endWithCR(a){return"string"==typeof a?13===a.charCodeAt(a.length-1):a!==au&&0!==a.piece.lineFeedCnt&&13===this.nodeCharCodeAt(a,a.piece.length-1)}validateCRLFWithPrevNode(a){if(this.shouldCheckCRLF()&&this.startWithLF(a)){let b=a.prev();this.endWithCR(b)&&this.fixCRLF(b,a)}}validateCRLFWithNextNode(a){if(this.shouldCheckCRLF()&&this.endWithCR(a)){let b=a.next();this.startWithLF(b)&&this.fixCRLF(a,b)}}fixCRLF(a,b){let c,d=[],e=this._buffers[a.piece.bufferIndex].lineStarts;c=0===a.piece.end.column?{line:a.piece.end.line-1,column:e[a.piece.end.line]-e[a.piece.end.line-1]-1}:{line:a.piece.end.line,column:a.piece.end.column-1};let f=a.piece.length-1,g=a.piece.lineFeedCnt-1;a.piece=new aK(a.piece.bufferIndex,a.piece.start,c,g,f),aE(this,a,-1,-1),0===a.piece.length&&d.push(a);let h={line:b.piece.start.line+1,column:0},i=b.piece.length-1,j=this.getLineFeedCnt(b.piece.bufferIndex,h,b.piece.end);b.piece=new aK(b.piece.bufferIndex,h,b.piece.end,j,i),aE(this,b,-1,-1),0===b.piece.length&&d.push(b);let k=this.createNewPieces("\r\n");this.rbInsertRight(a,k[0]);for(let a=0;a<d.length;a++)aC(this,d[a])}adjustCarriageReturnFromNext(a,b){if(this.shouldCheckCRLF()&&this.endWithCR(a)){let c=b.next();if(this.startWithLF(c)){if(a+="\n",1===c.piece.length)aC(this,c);else{let a=c.piece,b={line:a.start.line+1,column:0},d=a.length-1,e=this.getLineFeedCnt(a.bufferIndex,b,a.end);c.piece=new aK(a.bufferIndex,b,a.end,e,d),aE(this,c,-1,-1)}return!0}}return!1}iterate(a,b){if(a===au)return b(au);let c=this.iterate(a.left,b);return c?b(a)&&this.iterate(a.right,b):c}getNodeContent(a){if(a===au)return"";let b=this._buffers[a.piece.bufferIndex],c=a.piece,d=this.offsetInBuffer(c.bufferIndex,c.start),e=this.offsetInBuffer(c.bufferIndex,c.end);return b.buffer.substring(d,e)}getPieceContent(a){let b=this._buffers[a.bufferIndex],c=this.offsetInBuffer(a.bufferIndex,a.start),d=this.offsetInBuffer(a.bufferIndex,a.end);return b.buffer.substring(c,d)}rbInsertRight(a,b){let c=new at(b,1);if(c.left=au,c.right=au,c.parent=au,c.size_left=0,c.lf_left=0,this.root===au)this.root=c,c.color=0;else if(a.right===au)a.right=c,c.parent=a;else{let b=av(a.right);b.left=c,c.parent=b}return aD(this,c),c}rbInsertLeft(a,b){let c=new at(b,1);if(c.left=au,c.right=au,c.parent=au,c.size_left=0,c.lf_left=0,this.root===au)this.root=c,c.color=0;else if(a.left===au)a.left=c,c.parent=a;else{let b=aw(a.left);b.right=c,c.parent=b}return aD(this,c),c}}var aP=c(77790);class aQ extends l.jG{constructor(a,b,c,d,e,f,g){super(),this._onDidChangeContent=this._register(new k.vl),this._BOM=b,this._mightContainNonBasicASCII=!f,this._mightContainRTL=d,this._mightContainUnusualLineTerminators=e,this._pieceTree=new aO(a,c,g)}mightContainRTL(){return this._mightContainRTL}mightContainUnusualLineTerminators(){return this._mightContainUnusualLineTerminators}resetMightContainUnusualLineTerminators(){this._mightContainUnusualLineTerminators=!1}mightContainNonBasicASCII(){return this._mightContainNonBasicASCII}getBOM(){return this._BOM}getEOL(){return this._pieceTree.getEOL()}createSnapshot(a){return this._pieceTree.createSnapshot(a?this._BOM:"")}getOffsetAt(a,b){return this._pieceTree.getOffsetAt(a,b)}getPositionAt(a){return this._pieceTree.getPositionAt(a)}getRangeAt(a,b){let c=this.getPositionAt(a),d=this.getPositionAt(a+b);return new r.Q(c.lineNumber,c.column,d.lineNumber,d.column)}getValueInRange(a,b=0){if(a.isEmpty())return"";let c=this._getEndOfLine(b);return this._pieceTree.getValueInRange(a,c)}getValueLengthInRange(a,b=0){if(a.isEmpty())return 0;if(a.startLineNumber===a.endLineNumber)return a.endColumn-a.startColumn;let c=this.getOffsetAt(a.startLineNumber,a.startColumn),d=this.getOffsetAt(a.endLineNumber,a.endColumn),e=0,f=this._getEndOfLine(b),g=this.getEOL();return f.length!==g.length&&(e=(f.length-g.length)*(a.endLineNumber-a.startLineNumber)),d-c+e}getCharacterCountInRange(a,b=0){if(this._mightContainNonBasicASCII){let c=0,d=a.startLineNumber,e=a.endLineNumber;for(let b=d;b<=e;b++){let f=this.getLineContent(b),g=b===d?a.startColumn-1:0,h=b===e?a.endColumn-1:f.length;for(let a=g;a<h;a++)m.pc(f.charCodeAt(a))?(c+=1,a+=1):c+=1}return c+this._getEndOfLine(b).length*(e-d)}return this.getValueLengthInRange(a,b)}getNearestChunk(a){return this._pieceTree.getNearestChunk(a)}getLength(){return this._pieceTree.getLength()}getLineCount(){return this._pieceTree.getLineCount()}getLinesContent(){return this._pieceTree.getLinesContent()}getLineContent(a){return this._pieceTree.getLineContent(a)}getLineCharCode(a,b){return this._pieceTree.getLineCharCode(a,b)}getLineLength(a){return this._pieceTree.getLineLength(a)}getLineFirstNonWhitespaceColumn(a){let b=m.HG(this.getLineContent(a));return -1===b?0:b+1}getLineLastNonWhitespaceColumn(a){let b=m.lT(this.getLineContent(a));return -1===b?0:b+2}_getEndOfLine(a){switch(a){case 1:return"\n";case 2:return"\r\n";case 0:return this.getEOL();default:throw Error("Unknown EOL preference")}}setEOL(a){this._pieceTree.setEOL(a)}applyEdits(a,b,c){let d=this._mightContainRTL,e=this._mightContainUnusualLineTerminators,f=this._mightContainNonBasicASCII,g=!0,h=[];for(let b=0;b<a.length;b++){let c=a[b];g&&c._isTracked&&(g=!1);let i=c.range;if(c.text){let a=!0;f||(f=a=!m.aC(c.text)),!d&&a&&(d=m.E_(c.text)),!e&&a&&(e=m.$X(c.text))}let j="",k=0,l=0,n=0;if(c.text){let a;[k,l,n,a]=(0,o.W)(c.text);let b=this.getEOL(),d="\r\n"===b?2:1;j=0===a||a===d?c.text:c.text.replace(/\r\n|\r|\n/g,b)}h[b]={sortIndex:b,identifier:c.identifier||null,range:i,rangeOffset:this.getOffsetAt(i.startLineNumber,i.startColumn),rangeLength:this.getValueLengthInRange(i),text:j,eolCount:k,firstLineLength:l,lastLineLength:n,forceMoveMarkers:!!c.forceMoveMarkers,isAutoWhitespaceEdit:c.isAutoWhitespaceEdit||!1}}h.sort(aQ._sortOpsAscending);let i=!1;for(let a=0,b=h.length-1;a<b;a++){let b=h[a].range.getEndPosition(),c=h[a+1].range.getStartPosition();if(c.isBeforeOrEqual(b)){if(c.isBefore(b))throw Error("Overlapping ranges are not allowed!");i=!0}}g&&(h=this._reduceOperations(h));let j=c||b?aQ._getInverseEditRanges(h):[],k=[];if(b)for(let a=0;a<h.length;a++){let b=h[a],c=j[a];if(b.isAutoWhitespaceEdit&&b.range.isEmpty())for(let a=c.startLineNumber;a<=c.endLineNumber;a++){let d="";(a!==c.startLineNumber||(d=this.getLineContent(b.range.startLineNumber),-1===m.HG(d)))&&k.push({lineNumber:a,oldContent:d})}}let l=null;if(c){let a=0;l=[];for(let b=0;b<h.length;b++){let c=h[b],d=j[b],e=this.getValueInRange(c.range),f=c.rangeOffset+a;a+=c.text.length-e.length,l[b]={sortIndex:c.sortIndex,identifier:c.identifier,range:d,text:e,textChange:new aP.k(c.rangeOffset,e,f,c.text)}}i||l.sort((a,b)=>a.sortIndex-b.sortIndex)}this._mightContainRTL=d,this._mightContainUnusualLineTerminators=e,this._mightContainNonBasicASCII=f;let n=this._doApplyEdits(h),p=null;if(b&&k.length>0){k.sort((a,b)=>b.lineNumber-a.lineNumber),p=[];for(let a=0,b=k.length;a<b;a++){let b=k[a].lineNumber;if(a>0&&k[a-1].lineNumber===b)continue;let c=k[a].oldContent,d=this.getLineContent(b);0!==d.length&&d!==c&&-1===m.HG(d)&&p.push(b)}}return this._onDidChangeContent.fire(),new w.F4(l,n,p)}_reduceOperations(a){return a.length<1e3?a:[this._toSingleEditOperation(a)]}_toSingleEditOperation(a){let b=!1,c=a[0].range,d=a[a.length-1].range,e=new r.Q(c.startLineNumber,c.startColumn,d.endLineNumber,d.endColumn),f=c.startLineNumber,g=c.startColumn,h=[];for(let c=0,d=a.length;c<d;c++){let d=a[c],e=d.range;b=b||d.forceMoveMarkers,h.push(this.getValueInRange(new r.Q(f,g,e.startLineNumber,e.startColumn))),d.text.length>0&&h.push(d.text),f=e.endLineNumber,g=e.endColumn}let i=h.join(""),[j,k,l]=(0,o.W)(i);return{sortIndex:0,identifier:a[0].identifier,range:e,rangeOffset:this.getOffsetAt(e.startLineNumber,e.startColumn),rangeLength:this.getValueLengthInRange(e,0),text:i,eolCount:j,firstLineLength:k,lastLineLength:l,forceMoveMarkers:b,isAutoWhitespaceEdit:!1}}_doApplyEdits(a){a.sort(aQ._sortOpsDescending);let b=[];for(let c=0;c<a.length;c++){let d=a[c],e=d.range.startLineNumber,f=d.range.startColumn,g=d.range.endLineNumber,h=d.range.endColumn;if(e===g&&f===h&&0===d.text.length)continue;d.text?(this._pieceTree.delete(d.rangeOffset,d.rangeLength),this._pieceTree.insert(d.rangeOffset,d.text,!0)):this._pieceTree.delete(d.rangeOffset,d.rangeLength);let i=new r.Q(e,f,g,h);b.push({range:i,rangeLength:d.rangeLength,text:d.text,rangeOffset:d.rangeOffset,forceMoveMarkers:d.forceMoveMarkers})}return b}findMatchesLineByLine(a,b,c,d){return this._pieceTree.findMatchesLineByLine(a,b,c,d)}static _getInverseEditRanges(a){let b=[],c=0,d=0,e=null;for(let f=0,g=a.length;f<g;f++){let g,h,i,j=a[f];if(e?e.range.endLineNumber===j.range.startLineNumber?(g=c,h=d+(j.range.startColumn-e.range.endColumn)):(g=c+(j.range.startLineNumber-e.range.endLineNumber),h=j.range.startColumn):(g=j.range.startLineNumber,h=j.range.startColumn),j.text.length>0){let a=j.eolCount+1;i=1===a?new r.Q(g,h,g,h+j.firstLineLength):new r.Q(g,h,g+a-1,j.lastLineLength+1)}else i=new r.Q(g,h,g,h);c=i.endLineNumber,d=i.endColumn,b.push(i),e=j}return b}static _sortOpsAscending(a,b){let c=r.Q.compareRangesUsingEnds(a.range,b.range);return 0===c?a.sortIndex-b.sortIndex:c}static _sortOpsDescending(a,b){let c=r.Q.compareRangesUsingEnds(a.range,b.range);return 0===c?b.sortIndex-a.sortIndex:-c}}class aR{constructor(a,b,c,d,e,f,g,h,i){this._chunks=a,this._bom=b,this._cr=c,this._lf=d,this._crlf=e,this._containsRTL=f,this._containsUnusualLineTerminators=g,this._isBasicASCII=h,this._normalizeEOL=i}_getEOL(a){let b=this._cr+this._lf+this._crlf,c=this._cr+this._crlf;return 0===b?1===a?"\n":"\r\n":c>b/2?"\r\n":"\n"}create(a){let b=this._getEOL(a),c=this._chunks;if(this._normalizeEOL&&("\r\n"===b&&(this._cr>0||this._lf>0)||"\n"===b&&(this._cr>0||this._crlf>0)))for(let a=0,d=c.length;a<d;a++){let d=c[a].buffer.replace(/\r\n|\r|\n/g,b),e=aJ(d);c[a]=new aL(d,e)}let d=new aQ(c,this._bom,b,this._containsRTL,this._containsUnusualLineTerminators,this._isBasicASCII,this._normalizeEOL);return{textBuffer:d,disposable:d}}}class aS{constructor(){this.chunks=[],this.BOM="",this._hasPreviousChar=!1,this._previousChar=0,this._tmpLineStarts=[],this.cr=0,this.lf=0,this.crlf=0,this.containsRTL=!1,this.containsUnusualLineTerminators=!1,this.isBasicASCII=!0}acceptChunk(a){if(0===a.length)return;0===this.chunks.length&&m.LU(a)&&(this.BOM=m.r_,a=a.substr(1));let b=a.charCodeAt(a.length-1);13===b||b>=55296&&b<=56319?(this._acceptChunk1(a.substr(0,a.length-1),!1),this._hasPreviousChar=!0):(this._acceptChunk1(a,!1),this._hasPreviousChar=!1),this._previousChar=b}_acceptChunk1(a,b){(b||0!==a.length)&&(this._hasPreviousChar?this._acceptChunk2(String.fromCharCode(this._previousChar)+a):this._acceptChunk2(a))}_acceptChunk2(a){let b=function(a,b){a.length=0,a[0]=0;let c=1,d=0,e=0,f=0,g=!0;for(let h=0,i=b.length;h<i;h++){let j=b.charCodeAt(h);13===j?h+1<i&&10===b.charCodeAt(h+1)?(f++,a[c++]=h+2,h++):(d++,a[c++]=h+1):10===j?(e++,a[c++]=h+1):g&&9!==j&&(j<32||j>126)&&(g=!1)}let h=new aI(aH(a),d,e,f,g);return a.length=0,h}(this._tmpLineStarts,a);this.chunks.push(new aL(a,b.lineStarts)),this.cr+=b.cr,this.lf+=b.lf,this.crlf+=b.crlf,!b.isBasicASCII&&(this.isBasicASCII=!1,this.containsRTL||(this.containsRTL=m.E_(a)),this.containsUnusualLineTerminators||(this.containsUnusualLineTerminators=m.$X(a)))}finish(a=!0){return this._finish(),new aR(this.chunks,this.BOM,this.cr,this.lf,this.crlf,this.containsRTL,this.containsUnusualLineTerminators,this.isBasicASCII,a)}_finish(){if(0===this.chunks.length&&this._acceptChunk1("",!0),this._hasPreviousChar){this._hasPreviousChar=!1;let a=this.chunks[this.chunks.length-1];a.buffer+=String.fromCharCode(this._previousChar);let b=aJ(a.buffer);a.lineStarts=b,13===this._previousChar&&this.cr++}}}var aT=c(20069),aU=c(12010),aV=c(41474),aW=c(91849),aX=c(11035),aY=c(39537),aZ=c(71500);class a${constructor(){this._onDidChangeVisibleRanges=new k.vl,this.onDidChangeVisibleRanges=this._onDidChangeVisibleRanges.event,this._views=new Set,this._viewsChanged=(0,aY.Yd)(this),this.visibleLineRanges=(0,aY.C)({owner:this,equalsFn:(0,aZ.S3)((0,aZ.r)())},a=>(this._viewsChanged.read(a),aX.M.joinMany([...this._views].map(b=>b.state.read(a)?.visibleLineRanges??[]))))}attachView(){let a=new a0(b=>{this._onDidChangeVisibleRanges.fire({view:a,state:b})});return this._views.add(a),this._viewsChanged.trigger(void 0),a}detachView(a){this._views.delete(a),this._onDidChangeVisibleRanges.fire({view:a,state:void 0}),this._viewsChanged.trigger(void 0)}}class a_{constructor(a,b){this.visibleLineRanges=a,this.stabilized=b}equals(a){return this===a||!!(0,h.aI)(this.visibleLineRanges,a.visibleLineRanges,(a,b)=>a.equals(b))&&this.stabilized===a.stabilized}}class a0{get state(){return this._state}constructor(a){this.handleStateChange=a,this._state=(0,aY.Zh)({owner:this,equalsFn:(0,aZ.KC)((a,b)=>a.equals(b))},void 0)}setVisibleLines(a,b){let c=new a_(a.map(a=>new aX.M(a.startLineNumber,a.endLineNumber+1)),b);this._state.set(c,void 0,void 0),this.handleStateChange(c)}}class a1 extends l.jG{get lineRanges(){return this._lineRanges}constructor(a){super(),this._refreshTokens=a,this.runner=this._register(new aW.uC(()=>this.update(),50)),this._computedLineRanges=[],this._lineRanges=[]}update(){(0,h.aI)(this._computedLineRanges,this._lineRanges,(a,b)=>a.equals(b))||(this._computedLineRanges=this._lineRanges,this._refreshTokens())}handleStateChange(a){this._lineRanges=a.visibleLineRanges,a.stabilized?(this.runner.cancel(),this.update()):this.runner.schedule()}}class a2 extends l.jG{get backgroundTokenizationState(){return this._backgroundTokenizationState}constructor(a,b){super(),this._languageIdCodec=a,this._textModel=b,this._onDidChangeTokens=this._register(new k.vl),this.onDidChangeTokens=this._onDidChangeTokens.event}tokenizeIfCheap(a){this.isCheapToTokenize(a)&&this.forceTokenization(a)}}var a3=c(19254),a4=c(12546),a5=c(1136),a6=c(53918);function a7(a,b){let c=a.gotoParent(),d=b.gotoParent();if(c!==d)throw Error("Trees are out of sync");return c&&d}function a8(a,b){do{if(a.currentNode.nextSibling)return function(a,b){let c=a.gotoNextSibling(),d=b.gotoNextSibling();if(c!==d)throw Error("Trees are out of sync");return c&&d}(a,b);a.currentNode.parent&&a7(a,b)}while(a.currentNode.nextSibling||a.currentNode.parent);return!1}var a9=function(a,b){return function(c,d){b(c,d,a)}};let ba=class extends l.jG{constructor(a,b,c,d,e,f,g){super(),this.languageId=a,this._ranges=b,this._parser=c,this._parserClass=d,this.textModel=e,this._logService=f,this._telemetryService=g,this._tree=(0,aY.FY)(this,void 0),this.tree=this._tree,this._treeLastParsedVersion=(0,aY.FY)(this,-1),this.treeLastParsedVersion=this._treeLastParsedVersion,this._onDidChangeContentQueue=new aW.Pq,this._tree=(0,aY.FY)(this,void 0),this.tree=this._tree,this._register((0,l.s)(()=>{this._tree.get()?.delete(),this._lastFullyParsed?.delete(),this._lastFullyParsedWithEdits?.delete(),this._parser.delete()})),this.handleContentChange(void 0,this._ranges)}handleContentChange(a,b){let c=this.textModel.getVersionId(),d=[];b&&(d=this._setRanges(b)),a&&this._applyEdits(a.changes),this._onDidChangeContentQueue.clearPending(),this._onDidChangeContentQueue.schedule(async()=>{let a;if(this._store.isDisposed)return;let b=this._lastFullyParsed;this._lastFullyParsedWithEdits&&this._lastFullyParsed&&(a=this._findChangedNodes(this._lastFullyParsedWithEdits,this._lastFullyParsed));let e=await this._parseAndUpdateTree(c);if(e){let f;a?b&&a&&(f=this._findTreeChanges(e,a,d)):this._ranges&&(f=this._ranges.map(a=>({newRange:new r.Q(a.startPosition.row+1,a.startPosition.column+1,a.endPosition.row+1,a.endPosition.column+1),oldRangeLength:a.endIndex-a.startIndex,newRangeStartOffset:a.startIndex,newRangeEndOffset:a.endIndex}))),f||(f=[{newRange:this.textModel.getFullModelRange(),newRangeStartOffset:0,newRangeEndOffset:this.textModel.getValueLength()}]);let g=this._tree.get();(0,aY.Rn)(a=>{this._tree.set(e,a,{ranges:f,versionId:c}),this._treeLastParsedVersion.set(c,a)}),g?.delete()}})}_applyEdits(a){for(let b of a){let a=a6.W.ofRange(r.Q.lift(b.range)),c=a6.W.ofText(b.text),d=0===b.text.length?c:a.add(c),e={startIndex:b.rangeOffset,oldEndIndex:b.rangeOffset+b.rangeLength,newEndIndex:b.rangeOffset+b.text.length,startPosition:{row:b.range.startLineNumber-1,column:b.range.startColumn-1},oldEndPosition:{row:b.range.endLineNumber-1,column:b.range.endColumn-1},newEndPosition:{row:b.range.startLineNumber+d.lineCount-1,column:d.lineCount?d.columnCount:b.range.endColumn+d.columnCount}};this._tree.get()?.edit(e),this._lastFullyParsedWithEdits?.edit(e)}}_findChangedNodes(a,b){if(this._ranges&&this._ranges.every(b=>b.startPosition.row!==a.rootNode.startPosition.row)||0!==a.rootNode.startPosition.row)return[];let c=a.walk(),d=b.walk(),e=[],f=!0;do if(c.currentNode.hasChanges){let b=c.currentNode.children,g=[],h=b.filter((a,b)=>(!!a?.hasChanges||d.currentNode.children.length<=b)&&(g.push(b),!0));if(0===h.length||c.currentNode.hasError!==d.currentNode.hasError){for(;c.currentNode.parent&&f&&!c.currentNode.isNamed;)f=a7(c,d);let b=c.currentNode,g=function(a,b){let c=b.walk();c.resetTo(a);let d=a.currentNode;do if(c.currentNode.previousSibling&&c.currentNode.endIndex-c.currentNode.startIndex!=0)c.gotoPreviousSibling();else{for(;!c.currentNode.previousSibling&&c.currentNode.parent;)c.gotoParent();c.gotoPreviousSibling()}while(c.currentNode.endIndex>d.startIndex&&(c.currentNode.parent||c.currentNode.previousSibling)&&c.currentNode.id!==d.id);return c.currentNode.id!==d.id&&c.currentNode.endIndex<=d.startIndex?c.currentNode:void 0}(c,a)??b;e.push({startIndex:g.startIndex,endIndex:b.endIndex,startPosition:g.startPosition,endPosition:b.endPosition}),f=a8(c,d)}else h.length>=1&&(f=function(a,b,c){let d=a.gotoFirstChild(),e=b.gotoFirstChild();if(d!==e)throw Error("Trees are out of sync");if(0===c)return d&&e;for(let d=1;d<=c;d++){let c=a.gotoNextSibling(),d=b.gotoNextSibling();if(c!==d)throw Error("Trees are out of sync");if(!c||!d)return!1}return d&&e}(c,d,g[0]))}else f=a8(c,d);while(f);return c.delete(),d.delete(),e}_findTreeChanges(a,b,c){let d=0,e=[];for(let f=0;f<b.length;f++){let g=b[f];if(e.length>0&&g.startIndex>=e[e.length-1].newRangeStartOffset&&g.endIndex<=e[e.length-1].newRangeEndOffset)continue;let h=a.walk(),i=()=>h.startIndex<g.startIndex&&h.endIndex>g.endIndex;for(;i();){let a=h.gotoFirstChild(),b=!1;for(;a;)if(i()&&h.currentNode.isNamed){b=!0;break}else a=h.gotoNextSibling();if(!b){h.gotoParent();break}if(0===h.currentNode.childCount)break}let j=h.currentNode.startPosition,k=h.currentNode.endPosition,l=h.currentNode.startIndex,m=h.currentNode.endIndex,n={newRange:new r.Q(j.row+1,j.column+1,k.row+1,k.column+1),newRangeStartOffset:l,newRangeEndOffset:m};d<c.length&&bb(c[d],{startIndex:l,endIndex:m,startPosition:j,endPosition:k})?(c[d].startIndex<n.newRangeStartOffset&&(n.newRange=n.newRange.setStartPosition(c[d].startPosition.row+1,c[d].startPosition.column+1),n.newRangeStartOffset=c[d].startIndex),c[d].endIndex>n.newRangeEndOffset&&(n.newRange=n.newRange.setEndPosition(c[d].endPosition.row+1,c[d].endPosition.column+1),n.newRangeEndOffset=c[d].endIndex),d++):d<c.length&&c[d].endIndex<n.newRangeStartOffset&&e.push({newRange:new r.Q(c[d].startPosition.row+1,c[d].startPosition.column+1,c[d].endPosition.row+1,c[d].endPosition.column+1),newRangeStartOffset:c[d].startIndex,newRangeEndOffset:c[d].endIndex}),e.length>0&&e[e.length-1].newRangeEndOffset>=n.newRangeStartOffset?(e[e.length-1].newRange=r.Q.fromPositions(e[e.length-1].newRange.getStartPosition(),n.newRange.getEndPosition()),e[e.length-1].newRangeEndOffset=n.newRangeEndOffset):e.push(n)}return this._constrainRanges(e)}_constrainRanges(a){if(!this._ranges)return a;let b=[],c=0,d=0;for(;c<a.length&&d<this._ranges.length;){let e=a[c],f=this._ranges[d];if(e.newRangeEndOffset<f.startIndex)c++;else if(e.newRangeStartOffset>f.endIndex)d++;else{let a=Math.max(e.newRangeStartOffset,f.startIndex),d=Math.min(e.newRangeEndOffset,f.endIndex),g=e.newRange.intersectRanges(new r.Q(f.startPosition.row+1,f.startPosition.column+1,f.endPosition.row+1,f.endPosition.column+1));b.push({newRange:g,newRangeEndOffset:d,newRangeStartOffset:a}),d<e.newRangeEndOffset?(e.newRange=r.Q.fromPositions(g.getEndPosition(),e.newRange.getEndPosition()),e.newRangeStartOffset=d+1):c++}}return b}async _parseAndUpdateTree(a){let b=await this._parse();if(b)return this._lastFullyParsed?.delete(),this._lastFullyParsed=b.copy(),this._lastFullyParsedWithEdits?.delete(),this._lastFullyParsedWithEdits=b.copy(),b;this._tree.get()||this._parser.reset()}_parse(){let a="fullParse";return this._tree.get()&&(a="incrementalParse"),this._parseAndYield(a)}async _parseAndYield(a){let b,c,d=0,e=0,f=this.textModel.getVersionId(),g=(b=performance.now(),function(a){let c=performance.now();return c-b>50&&(b=c,!0)});do{let a=performance.now();c=this._parser.parse((a,b)=>this._parseCallback(a),this._tree.get(),{progressCallback:g,includedRanges:this._ranges}),d+=performance.now()-a,e++,await new Promise(a=>(0,a3._p)(a))}while(!this._store.isDisposed&&!c&&f===this.textModel.getVersionId());return this._sendParseTimeTelemetry(a,d,e),c&&f===this.textModel.getVersionId()?c:void 0}_parseCallback(a){try{return this.textModel.getTextBuffer().getNearestChunk(a)}catch(a){this._logService.debug("Error getting chunk for tree-sitter parsing",a)}}_setRanges(a){let b=[];if(this._ranges)for(let e of a){let a=!1;for(let b=0;b<this._ranges.length;b++){var c,d;let f=this._ranges[b];if(c=f,d=e,c.startPosition.row===d.startPosition.row&&c.startPosition.column===d.startPosition.column&&c.endPosition.row===d.endPosition.row&&c.endPosition.column===d.endPosition.column&&c.startIndex===d.startIndex&&c.endIndex===d.endIndex||bb(f,e)){a=!0;break}}a||b.push(e)}else b.push(...a);return this._ranges=a,b}_sendParseTimeTelemetry(a,b,c){this._logService.debug(`Tree parsing (${a}) took ${b} ms and ${c} passes.`),"fullParse"===a?this._telemetryService.publicLog2("treeSitter.fullParse",{languageId:this.languageId,time:b,passes:c}):this._telemetryService.publicLog2("treeSitter.incrementalParse",{languageId:this.languageId,time:b,passes:c})}createParsedTreeSync(a){let b=new this._parserClass;b.setLanguage(this._parser.language);let c=b.parse(a);return b.delete(),c??void 0}};function bb(a,b){return a.startIndex<=b.startIndex&&a.endIndex>=b.startIndex||b.startIndex<=a.startIndex&&b.endIndex>=a.startIndex}ba=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([a9(5,a4.rr),a9(6,a5.k)],ba);var bc=c(21652),bd=c(37774),be=c(58912),bf=c(2489);class bg{constructor(a){this._default=a,this._store=[]}get(a){return a<this._store.length?this._store[a]:this._default}set(a,b){for(;a>=this._store.length;)this._store[this._store.length]=this._default;this._store[a]=b}replace(a,b,c){if(a>=this._store.length)return;if(0===b)return void this.insert(a,c);if(0===c)return void this.delete(a,b);let d=this._store.slice(0,a),e=this._store.slice(a+b),f=function(a,b){let c=[];for(let d=0;d<a;d++)c[d]=b;return c}(c,this._default);this._store=d.concat(f,e)}delete(a,b){0===b||a>=this._store.length||this._store.splice(a,b)}insert(a,b){if(0===b||a>=this._store.length)return;let c=[];for(let a=0;a<b;a++)c[a]=this._default;this._store=(0,h.nK)(this._store,a,c)}}class bh{get startLineNumber(){return this._startLineNumber}get endLineNumber(){return this._startLineNumber+this._tokens.length-1}constructor(a,b){this._startLineNumber=a,this._tokens=b}getLineTokens(a){return this._tokens[a-this._startLineNumber]}appendLineTokens(a){this._tokens.push(a)}}class bi{constructor(){this._tokens=[]}add(a,b){if(this._tokens.length>0){let c=this._tokens[this._tokens.length-1];if(c.endLineNumber+1===a)return void c.appendLineTokens(b)}this._tokens.push(new bh(a,[b]))}finalize(){return this._tokens}}class bj{constructor(a,b){this.tokenizationSupport=b,this.initialState=this.tokenizationSupport.getInitialState(),this.store=new bm(a)}getStartState(a){return this.store.getStartState(a,this.initialState)}getFirstInvalidLine(){return this.store.getFirstInvalidLine(this.initialState)}}class bk extends bj{constructor(a,b,c,d){super(a,b),this._textModel=c,this._languageIdCodec=d}updateTokensUntilLine(a,b){let c=this._textModel.getLanguageId();for(;;){let d=this.getFirstInvalidLine();if(!d||d.lineNumber>b)break;let e=this._textModel.getLineContent(d.lineNumber),f=bp(this._languageIdCodec,c,this.tokenizationSupport,e,!0,d.startState);a.add(d.lineNumber,f.tokens),this.store.setEndState(d.lineNumber,f.endState)}}getTokenTypeIfInsertingCharacter(a,b){let c=this.getStartState(a.lineNumber);if(!c)return 0;let d=this._textModel.getLanguageId(),e=this._textModel.getLineContent(a.lineNumber),f=e.substring(0,a.column-1)+b+e.substring(a.column-1),g=bp(this._languageIdCodec,d,this.tokenizationSupport,f,!0,c),h=new aV.f7(g.tokens,f,this._languageIdCodec);if(0===h.getCount())return 0;let i=h.findTokenIndexAtOffset(a.column-1);return h.getStandardTokenType(i)}tokenizeLinesAt(a,b){let c=this.getStartState(a);if(!c)return null;let d=this._textModel.getLanguageId(),e=[],f=c;for(let a of b){let b=bp(this._languageIdCodec,d,this.tokenizationSupport,a,!0,f);e.push(new aV.f7(b.tokens,a,this._languageIdCodec)),f=b.endState}return e}hasAccurateTokensForLine(a){return a<this.store.getFirstInvalidEndStateLineNumberOrMax()}isCheapToTokenize(a){let b=this.store.getFirstInvalidEndStateLineNumberOrMax();return!!(a<b||a===b&&2048>this._textModel.getLineLength(a))}tokenizeHeuristically(a,b,c){if(c<=this.store.getFirstInvalidEndStateLineNumberOrMax())return{heuristicTokens:!1};if(b<=this.store.getFirstInvalidEndStateLineNumberOrMax())return this.updateTokensUntilLine(a,c),{heuristicTokens:!1};let d=this.guessStartState(b),e=this._textModel.getLanguageId();for(let f=b;f<=c;f++){let b=this._textModel.getLineContent(f),c=bp(this._languageIdCodec,e,this.tokenizationSupport,b,!0,d);a.add(f,c.tokens),d=c.endState}return{heuristicTokens:!0}}guessStartState(a){let{likelyRelevantLines:b,initialState:c}=bl(this._textModel,a,this);c||(c=this.tokenizationSupport.getInitialState());let d=this._textModel.getLanguageId(),e=c;for(let a of b)e=bp(this._languageIdCodec,d,this.tokenizationSupport,a,!1,e).endState;return e}}function bl(a,b,c){let d=a.getLineFirstNonWhitespaceColumn(b),e=[],f=null;for(let g=b-1;d>1&&g>=1;g--){let b=a.getLineFirstNonWhitespaceColumn(g);if(0!==b&&b<d&&(e.push(a.getLineContent(g)),d=b,f=c?.getStartState(g)))break}return e.reverse(),{likelyRelevantLines:e,initialState:f??void 0}}class bm{constructor(a){this.lineCount=a,this._tokenizationStateStore=new bn,this._invalidEndStatesLineNumbers=new bo,this._invalidEndStatesLineNumbers.addRange(new be.L(1,a+1))}getEndState(a){return this._tokenizationStateStore.getEndState(a)}setEndState(a,b){if(!b)throw new j.D7("Cannot set null/undefined state");this._invalidEndStatesLineNumbers.delete(a);let c=this._tokenizationStateStore.setEndState(a,b);return c&&a<this.lineCount&&this._invalidEndStatesLineNumbers.addRange(new be.L(a+1,a+2)),c}acceptChange(a,b){this.lineCount+=b-a.length,this._tokenizationStateStore.acceptChange(a,b),this._invalidEndStatesLineNumbers.addRangeAndResize(new be.L(a.startLineNumber,a.endLineNumberExclusive),b)}acceptChanges(a){for(let b of a){let[a]=(0,o.W)(b.text);this.acceptChange(new aX.M(b.range.startLineNumber,b.range.endLineNumber+1),a+1)}}invalidateEndStateRange(a){this._invalidEndStatesLineNumbers.addRange(new be.L(a.startLineNumber,a.endLineNumberExclusive))}getFirstInvalidEndStateLineNumber(){return this._invalidEndStatesLineNumbers.min}getFirstInvalidEndStateLineNumberOrMax(){return this.getFirstInvalidEndStateLineNumber()||Number.MAX_SAFE_INTEGER}allStatesValid(){return null===this._invalidEndStatesLineNumbers.min}getStartState(a,b){return 1===a?b:this.getEndState(a-1)}getFirstInvalidLine(a){let b=this.getFirstInvalidEndStateLineNumber();if(null===b)return null;let c=this.getStartState(b,a);if(!c)throw new j.D7("Start state must be defined");return{lineNumber:b,startState:c}}}class bn{constructor(){this._lineEndStates=new bg(null)}getEndState(a){return this._lineEndStates.get(a)}setEndState(a,b){let c=this._lineEndStates.get(a);return!(c&&c.equals(b))&&(this._lineEndStates.set(a,b),!0)}acceptChange(a,b){let c=a.length;b>0&&c>0&&(c--,b--),this._lineEndStates.replace(a.startLineNumber,c,b)}}class bo{constructor(){this._ranges=[]}get min(){return 0===this._ranges.length?null:this._ranges[0].start}delete(a){let b=this._ranges.findIndex(b=>b.contains(a));if(-1!==b){let c=this._ranges[b];c.start===a?c.endExclusive===a+1?this._ranges.splice(b,1):this._ranges[b]=new be.L(a+1,c.endExclusive):c.endExclusive===a+1?this._ranges[b]=new be.L(c.start,a):this._ranges.splice(b,1,new be.L(c.start,a),new be.L(a+1,c.endExclusive))}}addRange(a){be.L.addRange(a,this._ranges)}addRangeAndResize(a,b){let c=0;for(;!(c>=this._ranges.length||a.start<=this._ranges[c].endExclusive);)c++;let d=c;for(;!(d>=this._ranges.length||a.endExclusive<this._ranges[d].start);)d++;let e=b-a.length;for(let a=d;a<this._ranges.length;a++)this._ranges[a]=this._ranges[a].delta(e);if(c===d){let d=new be.L(a.start,a.start+b);d.isEmpty||this._ranges.splice(c,0,d)}else{let b=Math.min(a.start,this._ranges[c].start),f=Math.max(a.endExclusive,this._ranges[d-1].endExclusive),g=new be.L(b,f+e);g.isEmpty?this._ranges.splice(c,d-c):this._ranges.splice(c,d-c,g)}}toString(){return this._ranges.map(a=>a.toString()).join(" + ")}}function bp(a,b,c,d,e,f){let g=null;if(c)try{g=c.tokenizeEncoded(d,e,f.clone())}catch(a){(0,j.dz)(a)}return g||(g=(0,bf.Lh)(a.encodeLanguageId(b),f)),aV.f7.convertToEndOffset(g.tokens,d.length),g}class bq{constructor(a,b){this._tokenizerWithStateStore=a,this._backgroundTokenStore=b,this._isDisposed=!1,this._isScheduled=!1}dispose(){this._isDisposed=!0}handleChanges(){this._beginBackgroundTokenization()}_beginBackgroundTokenization(){!this._isScheduled&&this._tokenizerWithStateStore._textModel.isAttachedToEditor()&&this._hasLinesToTokenize()&&(this._isScheduled=!0,(0,aW.$6)(a=>{this._isScheduled=!1,this._backgroundTokenizeWithDeadline(a)}))}_backgroundTokenizeWithDeadline(a){let b=Date.now()+a.timeRemaining(),c=()=>{!this._isDisposed&&this._tokenizerWithStateStore._textModel.isAttachedToEditor()&&this._hasLinesToTokenize()&&(this._backgroundTokenizeForAtLeast1ms(),Date.now()<b?(0,a3._p)(c):this._beginBackgroundTokenization())};c()}_backgroundTokenizeForAtLeast1ms(){let a=this._tokenizerWithStateStore._textModel.getLineCount(),b=new bi,c=bd.W.create(!1);do if(c.elapsed()>1||this._tokenizeOneInvalidLine(b)>=a)break;while(this._hasLinesToTokenize());this._backgroundTokenStore.setTokens(b.finalize()),this.checkFinished()}_hasLinesToTokenize(){return!!this._tokenizerWithStateStore&&!this._tokenizerWithStateStore.store.allStatesValid()}_tokenizeOneInvalidLine(a){let b=this._tokenizerWithStateStore?.getFirstInvalidLine();return b?(this._tokenizerWithStateStore.updateTokensUntilLine(a,b.lineNumber),b.lineNumber):this._tokenizerWithStateStore._textModel.getLineCount()+1}checkFinished(){!this._isDisposed&&this._tokenizerWithStateStore.store.allStatesValid()&&this._backgroundTokenStore.backgroundTokenizationFinished()}requestTokens(a,b){this._tokenizerWithStateStore.store.invalidateEndStateRange(new aX.M(a,b))}}class br{get children(){return this._children}get length(){return this._length}constructor(a){this.height=a,this._children=[],this._length=0}static create(a,b){let c=new br(a.height+1);return c.appendChild(a),c.appendChild(b),c}canAppendChild(){return this._children.length<3}appendChild(a){if(!this.canAppendChild())throw Error("Cannot insert more than 3 children in a ListNode");this._children.push(a),this._length+=a.length,this._updateParentLength(a.length),bs(a)||(a.parent=this)}_updateParentLength(a){let b=this.parent;for(;b;)b._length+=a,b=b.parent}unappendChild(){let a=this._children.pop();return this._length-=a.length,this._updateParentLength(-a.length),a}prependChild(a){if(this._children.length>=3)throw Error("Cannot prepend more than 3 children in a ListNode");this._children.unshift(a),this._length+=a.length,this._updateParentLength(a.length),bs(a)||(a.parent=this)}unprependChild(){let a=this._children.shift();return this._length-=a.length,this._updateParentLength(-a.length),a}lastChild(){return this._children[this._children.length-1]}dispose(){this._children.splice(0,this._children.length)}}function bs(a){return void 0!==a.token}function bt(a,b){let c,d=a,e=[];for(;;){if(b.height===d.height){c=b;break}if(bs(d))throw Error("unexpected");e.push(d),d=d.lastChild()}for(let a=e.length-1;a>=0;a--){let b=e[a];c&&(b.children.length>=3?c=br.create(b.unappendChild(),c):(b.appendChild(c),c=void 0))}if(!c)return a;{let b=new br(c.height+1);return b.appendChild(a),b.appendChild(c),b}}(d=e||(e={}))[d.None=0]="None",d[d.ViewportGuess=1]="ViewportGuess",d[d.EditGuess=2]="EditGuess",d[d.Accurate=3]="Accurate";class bu{constructor(a){this._textModel=a,this._root=this.createEmptyRoot()}createEmptyRoot(){return{length:this._textModel.getValueLength(),token:0,height:0,tokenQuality:e.None}}buildStore(a,b){this._root=this.createFromUpdates(a,b)}createFromUpdates(a,b){if(0===a.length)return this.createEmptyRoot();let c={length:a[0].length,token:a[0].token,height:0,tokenQuality:b};for(let d=1;d<a.length;d++)c=bt(c,{length:a[d].length,token:a[d].token,height:0,tokenQuality:b});return c}update(a,b,c){0!==b.length&&this.replace(a,b[0].startOffsetInclusive,b,c)}delete(a,b){this.replace(a,b,[],e.EditGuess)}replace(a,b,c,d){let e,f=b+a,g=[],h=[],i=[{node:this._root,offset:0}];for(;i.length>0;){let a=i.pop(),c=a.offset;if(c<b&&c+a.node.length<=b){bs(a.node)||(a.node.parent=void 0),g.push(a.node);continue}if(bs(a.node)&&c<b&&g.push({length:b-c,token:a.node.token,height:0,tokenQuality:a.node.tokenQuality}),!(b<=c)||!(c+a.node.length<=f)){if(c>=f){bs(a.node)||(a.node.parent=void 0),h.push(a.node);continue}if(bs(a.node)&&c+a.node.length>f){h.push({length:c+a.node.length-f,token:a.node.token,height:0,tokenQuality:a.node.tokenQuality});continue}if(!bs(a.node)){let b=c+a.node.length;for(let c=a.node.children.length-1;c>=0;c--)b-=a.node.children[c].length,i.push({node:a.node.children[c],offset:b})}}}let j=(e=c.length>0?g.concat(this.createFromUpdates(c,d),h):g.concat(h))[0];for(let a=1;a<e.length;a++){var k,l;k=j,l=e[a],j=k.height===l.height?br.create(k,l):k.height>l.height?bt(k,l):function(a,b){let c=a,d=[];for(;b.height!==c.height;){if(bs(c))throw Error("unexpected");d.push(c),c=c.children[0]}let e=b;for(let a=d.length-1;a>=0;a--){let b=d[a];e&&(b.children.length>=3?e=br.create(e,b.unprependChild()):(b.prependChild(e),e=void 0))}return e?br.create(e,a):a}(l,k)}this._root=j??this.createEmptyRoot()}traverseInOrderInRange(a,b,c){let d=[{node:this._root,offset:0}];for(;d.length>0;){let{node:e,offset:f}=d.pop();if(!(f+e.length<=a)&&!(f>=b)){if(c(e,f))return;if(!bs(e)){let a=f+e.length;for(let b=e.children.length-1;b>=0;b--)a-=e.children[b].length,d.push({node:e.children[b],offset:a})}}}}getTokenAt(a){let b;return this.traverseInOrderInRange(a,this._root.length,(a,c)=>!!bs(a)&&(b={token:a.token,startOffsetInclusive:c,length:a.length},!0)),b}getTokensInRange(a,b){let c=[];return this.traverseInOrderInRange(a,b,(d,e)=>{if(bs(d)){let f=d.length,g=e;e<a&&e+d.length>b?(g=a,f=b-a):e<a?(f-=a-e,g=a):e+d.length>b&&(f-=e+d.length-b),c.push({token:d.token,startOffsetInclusive:g,length:f})}return!1}),c}markForRefresh(a,b){this.traverseInOrderInRange(a,b,a=>(bs(a)&&(a.tokenQuality=e.None),!1))}rangeHasTokens(a,b,c){let d=!0;return this.traverseInOrderInRange(a,b,a=>(bs(a)&&a.tokenQuality<c&&(d=!1),!1)),d}rangeNeedsRefresh(a,b){let c=!1;return this.traverseInOrderInRange(a,b,a=>(bs(a)&&a.tokenQuality!==e.Accurate&&(c=!0),!1)),c}getNeedsRefresh(){let a=[];return this.traverseInOrderInRange(0,this._textModel.getValueLength(),(b,c)=>(bs(b)&&b.tokenQuality!==e.Accurate&&(a.length>0&&a[a.length-1].endOffset===c?a[a.length-1].endOffset+=b.length:a.push({startOffset:c,endOffset:c+b.length})),!1)),a}dispose(){let a=[[this._root,!1]];for(;a.length>0;){let[b,c]=a.pop();if(bs(b));else if(c)b.dispose(),b.parent=void 0;else{a.push([b,!0]);for(let c=b.children.length-1;c>=0;c--)a.push([b.children[c],!1])}}this._root=void 0}}var bv=c(98896);let bw=(0,bc.u1)("treeSitterThemeService"),bx=class extends l.jG{get _textModel(){return this._tree.textModel}constructor(a,b,c,d,f){super(),this._tree=a,this._highlightingQueries=b,this._languageIdCodec=c,this._visibleLineRanges=d,this._treeSitterThemeService=f,this._onDidChangeTokens=this._register(new k.vl),this.onDidChangeTokens=this._onDidChangeTokens.event,this._onDidCompleteBackgroundTokenization=this._register(new k.vl),this.onDidChangeBackgroundTokenization=this._onDidCompleteBackgroundTokenization.event,this._encodedLanguageId=this._languageIdCodec.encodeLanguageId(this._tree.languageId),this._register((0,aY.lp)(this._treeSitterThemeService.onChange,()=>{this._updateTheme()})),this._tokenStore=this._register(new bu(this._textModel)),this._accurateVersion=this._textModel.getVersionId(),this._guessVersion=this._textModel.getVersionId(),this._tokenStore.buildStore(this._createEmptyTokens(),e.None),this._register((0,aY.fm)(a=>{let b=this._visibleLineRanges.read(a);this._parseAndTokenizeViewPort(b)})),this._register((0,aY.Y)({owner:this,changeTracker:(0,aY.jv)({tree:this._tree.tree})},(a,b)=>{let c=b.changes.at(0)?.change;if(b.changes.length>1)throw new j.D7("The tree changed twice in one transaction. This is currently not supported and should not happen.");if(c){if(this.hasTokens())for(let a of c.ranges)this._markForRefresh(a.newRange);this.hasTokens()?this._handleTreeUpdate(c.ranges,c.versionId):this._firstTreeUpdate(c.versionId)}else b.tree&&this._firstTreeUpdate(this._tree.treeLastParsedVersion.read(a))}))}handleContentChanged(a){for(let b of(this._guessVersion=a.versionId,a.changes))if(b.text.length>b.rangeLength){let a,c=b.rangeOffset>0?b.rangeOffset-1:b.rangeOffset,d=this._tokenStore.getTokenAt(c);d?(a={startOffsetInclusive:d.startOffsetInclusive,length:d.length+b.text.length-b.rangeLength,token:d.token},this._tokenStore.markForRefresh(c,b.rangeOffset+(b.text.length>b.rangeLength?b.text.length:b.rangeLength))):a={startOffsetInclusive:c,length:b.text.length,token:0},this._tokenStore.update(d?.length??0,[a],e.EditGuess)}else if(b.text.length<b.rangeLength){let a=b.rangeLength-b.text.length;this._tokenStore.delete(a,b.rangeOffset)}}getLineTokens(a){let b=this._textModel.getLineContent(a),c=this.getTokens(a);return new aV.f7(c,b,this._languageIdCodec)}_createEmptyTokens(){let a=this._emptyToken(),b=this._textModel.getValueLength();return[this._emptyTokensForOffsetAndLength(0,b,a)]}_emptyToken(){return this._treeSitterThemeService.findMetadata([],this._encodedLanguageId,!1,void 0)}_emptyTokensForOffsetAndLength(a,b,c){return{token:c,length:a+b,startOffsetInclusive:0}}hasAccurateTokensForLine(a){return this.hasTokens(new r.Q(a,1,a,this._textModel.getLineMaxColumn(a)))}tokenizeLinesAt(a,b){let c=this._guessTokensForLinesContent(a,b),d=[];if(!c)return null;for(let a=0;a<c.length;a++)d.push(new aV.f7(c[a],b[a],this._languageIdCodec));return d}_rangeHasTokens(a,b){return this._tokenStore.rangeHasTokens(this._textModel.getOffsetAt(a.getStartPosition()),this._textModel.getOffsetAt(a.getEndPosition()),b)}hasTokens(a){return!a||this._guessVersion===this._accurateVersion||!this._tokenStore.rangeNeedsRefresh(this._textModel.getOffsetAt(a.getStartPosition()),this._textModel.getOffsetAt(a.getEndPosition()))}getTokens(a){let b=this._textModel.getOffsetAt({lineNumber:a,column:1}),c=this._textModel.getOffsetAt({lineNumber:a,column:this._textModel.getLineLength(a)+1}),d=this._tokenStore.getTokensInRange(b,c),e=new Uint32Array(2*d.length);for(let a=0;a<d.length;a++)e[2*a]=d[a].startOffsetInclusive-b+d[a].length,e[2*a+1]=d[a].token;return e}getTokensInRange(a,b,c,d){let e=d?this._tokenizeCapturesWithMetadata(d,b,c):this._tokenize(a,b,c);if(e?.endOffsetsAndMetadata)return this._rangeTokensAsUpdates(b,e.endOffsetsAndMetadata)}_updateTokensInStore(a,b,c){for(let d of(this._accurateVersion=a,b)){let b,e=d.newTokens.length>0?d.newTokens[d.newTokens.length-1]:void 0;b=e&&this._guessVersion>=a?e.startOffsetInclusive+e.length-d.newTokens[0].startOffsetInclusive:d.oldRangeLength?d.oldRangeLength:0,this._tokenStore.update(b,d.newTokens,c)}}_markForRefresh(a){this._tokenStore.markForRefresh(this._textModel.getOffsetAt(a.getStartPosition()),this._textModel.getOffsetAt(a.getEndPosition()))}_getNeedsRefresh(){let a=this._tokenStore.getNeedsRefresh();return a?a.map(a=>({range:r.Q.fromPositions(this._textModel.getPositionAt(a.startOffset),this._textModel.getPositionAt(a.endOffset)),startOffset:a.startOffset,endOffset:a.endOffset})):[]}_parseAndTokenizeViewPort(a){for(let b of a.map(a=>a.toInclusiveRange()).filter(bv.O9)){let a=this._textModel.getOffsetAt(b.getStartPosition()),c=this._textModel.getOffsetAt(b.getEndPosition()),d=this._textModel.getVersionId();if(this._rangeHasTokens(b,e.ViewportGuess))continue;let f=this._textModel.getValueInRange(b),g=this._forceParseAndTokenizeContent(b,a,c,f,!0);if(!g||this._rangeHasTokens(b,e.ViewportGuess)||0===g.length)continue;let h=g[g.length-1],i=h.startOffsetInclusive+h.length-g[0].startOffsetInclusive;this._updateTokensInStore(d,[{newTokens:g,oldRangeLength:i}],e.ViewportGuess),this._onDidChangeTokens.fire({changes:{semanticTokensApplied:!1,ranges:[{fromLineNumber:b.startLineNumber,toLineNumber:b.endLineNumber}]}})}}_guessTokensForLinesContent(a,b){if(0===b.length)return;let c=b.join(this._textModel.getEOL()),d=new r.Q(1,1,a+b.length,b[b.length-1].length+1),e=this._textModel.getOffsetAt({lineNumber:a,column:1}),f=this._forceParseAndTokenizeContent(d,e,e+c.length,c,!1);if(!f)return;let g=Array(b.length),h=0,i=0,j=0;for(let a=0;a<b.length;a++){let c=[],d=!1;for(let e=h;!d&&e<f.length;e++){let g=f[e],k=g.endOffset-j,l=i-j;if(k<=b[a].length)c.push({endOffset:k,metadata:g.metadata}),h++;else if(l<b[a].length){let e={endOffset:b[a].length,metadata:g.metadata};c.push(e),d=!0}else d=!0;i=g.endOffset}g[a]=this._endOffsetTokensToUint32Array(c),j+=b[a].length+this._textModel.getEOL().length}return g}_forceParseAndTokenizeContent(a,b,c,d,e){let f=bl(this._textModel,a.startLineNumber).likelyRelevantLines,g=f.join(this._textModel.getEOL()),h=this._tree.createParsedTreeSync(`${g}${d}`);if(!h)return;let i=new r.Q(1,1,a.endLineNumber-a.startLineNumber+1+f.length,a.endColumn),j=this.captureAtRange(i),k=this._tokenizeCapturesWithMetadata(j,g.length,c-b+g.length);if(h.delete(),k)if(e)return this._rangeTokensAsUpdates(b,k.endOffsetsAndMetadata,g.length);else return k.endOffsetsAndMetadata}_firstTreeUpdate(a){return this._setViewPortTokens(a)}_setViewPortTokens(a){let b=this._visibleLineRanges.get().map(a=>{let b=a.toInclusiveRange();if(!b)return;let c=this._textModel.getOffsetAt(b.getStartPosition()),d=this._textModel.getOffsetAt(b.getEndPosition());return{newRange:b,newRangeEndOffset:d,newRangeStartOffset:c}}).filter(bv.O9);return this._handleTreeUpdate(b,a)}_handleTreeUpdate(a,b){let c=[];for(let b=0;b<a.length;b++)if(a[b].newRange.endLineNumber-a[b].newRange.startLineNumber>1e3){let d=a[b].newRange.endLineNumber,e=a[b].newRange.startLineNumber,f=a[b].newRange.startColumn,g=e+1e3;do{let h=new q.y(e,f),i=g===a[b].newRange.endLineNumber?a[b].newRange.endColumn:this._textModel.getLineMaxColumn(g),j=new q.y(g,i),k=r.Q.fromPositions(h,j);c.push({range:k,startOffset:this._textModel.getOffsetAt(k.getStartPosition()),endOffset:this._textModel.getOffsetAt(k.getEndPosition())}),e=g+1,f=1,g<d&&g+1e3>d?g=d:g+=1e3}while(g<=d)}else if(0===b||c[b-1].endOffset<a[b].newRangeStartOffset)c.push({range:a[b].newRange,startOffset:a[b].newRangeStartOffset,endOffset:a[b].newRangeEndOffset});else if(c[b-1].endOffset<a[b].newRangeEndOffset){let d=this._textModel.getPositionAt(c[b-1].endOffset+1),e=new r.Q(d.lineNumber,d.column,a[b].newRange.endLineNumber,a[b].newRange.endColumn);c.push({range:e,startOffset:c[b-1].endOffset+1,endOffset:a[b].newRangeEndOffset})}let d=c.map(a=>this._getCaptures(a.range));return this._updateTreeForRanges(c,b,d).then(()=>{this._textModel.isDisposed()||this._tree.treeLastParsedVersion.get()!==this._textModel.getVersionId()||this._refreshNeedsRefresh(b)})}async _updateTreeForRanges(a,b,c){let d;for(let f=0;f<a.length&&(this._textModel.isDisposed()||b===this._textModel.getVersionId());f++){let g=c[f],h=a[f],i=this.getTokensInRange(h.range,h.startOffset,h.endOffset,g);d=i?{newTokens:i}:{newTokens:[]},this._updateTokensInStore(b,[d],e.Accurate),this._onDidChangeTokens.fire({changes:{semanticTokensApplied:!1,ranges:[{fromLineNumber:h.range.getStartPosition().lineNumber,toLineNumber:h.range.getEndPosition().lineNumber}]}}),await new Promise(a=>(0,a3._p)(a))}this._onDidCompleteBackgroundTokenization.fire()}_refreshNeedsRefresh(a){let b=this._getNeedsRefresh();if(0===b.length)return;let c=Array(b.length);for(let a=0;a<b.length;a++){let d=b[a];c[a]={newRange:d.range,newRangeStartOffset:d.startOffset,newRangeEndOffset:d.endOffset}}this._handleTreeUpdate(c,a)}_rangeTokensAsUpdates(a,b,c){let d=[],e=0;for(let f of b){let b;f.endOffset<=e||c&&f.endOffset<c||(b=c&&e<c?{startOffsetInclusive:a+c,length:f.endOffset-c,token:f.metadata}:{startOffsetInclusive:a+e,length:f.endOffset-e,token:f.metadata},d.push(b),e=f.endOffset)}return d}_updateTheme(){let a=this._textModel.getFullModelRange();this._markForRefresh(a),this._parseAndTokenizeViewPort(this._visibleLineRanges.get())}captureAtRange(a){let b=this._tree.tree.get();return b?this._highlightingQueries.captures(b.rootNode,{startPosition:{row:a.startLineNumber-1,column:a.startColumn-1},endPosition:{row:a.endLineNumber-1,column:a.endColumn-1}}).map(a=>({name:a.name,text:a.node.text,node:{startIndex:a.node.startIndex,endIndex:a.node.endIndex,startPosition:{lineNumber:a.node.startPosition.row+1,column:a.node.startPosition.column+1},endPosition:{lineNumber:a.node.endPosition.row+1,column:a.node.endPosition.column+1}},encodedLanguageId:this._encodedLanguageId})):[]}captureAtRangeWithInjections(a){let b=this.captureAtRange(a);for(let c=0;c<b.length;c++){let d=b[c],e=d.node.startPosition.lineNumber,f=d.node.endPosition.lineNumber,g=d.node.startPosition.column,h=d.node.endPosition.column,i=e>a.startLineNumber&&e<a.endLineNumber?e:a.startLineNumber,j=f>a.startLineNumber&&f<a.endLineNumber?f:a.endLineNumber,k=e===a.startLineNumber?g<a.startColumn?a.startColumn:g:e<a.startLineNumber?a.startColumn:g,l=f===a.endLineNumber?h>a.endColumn?a.endColumn:h:f>a.endLineNumber?a.endColumn:h,m=new r.Q(i,k,j,l),n=this._getInjectionCaptures(d,m);n&&n.length>0&&(b.splice(c+1,0,...n),c+=n.length)}return b}tokenizeEncoded(a){let b=this._tokenizeEncoded(a);if(!b)return;let c=this._rangeTokensAsUpdates(this._textModel.getOffsetAt({lineNumber:a,column:1}),b.result);b.versionId===this._textModel.getVersionId()&&this._updateTokensInStore(b.versionId,[{newTokens:c,oldRangeLength:this._textModel.getLineLength(a)}],e.Accurate)}_getCaptures(a){return this.captureAtRangeWithInjections(a)}_tokenize(a,b,c){let d=this._getCaptures(a),e=this._tokenizeCapturesWithMetadata(d,b,c);if(e)return{...e,versionId:this._tree.treeLastParsedVersion.get()}}_createTokensFromCaptures(a,b,c){let d=this._tree.tree.get(),e=bd.W.create(),f=c-b,g=this._languageIdCodec.encodeLanguageId(this._tree.languageId),h=by[this._tree.languageId]||"source";if(0===a.length)return d?(e.stop(),{endOffsets:[{endOffset:f,scopes:[],encodedLanguageId:g}],captureTime:e.elapsed()}):void 0;let i=Array(a.length);i.fill({endOffset:0,scopes:[h],encodedLanguageId:g});let j=0,k=()=>{i.push({endOffset:0,scopes:[h],encodedLanguageId:g})},l=(a,b)=>a.name.includes("punctuation")&&a.text?Array.from(a.text.matchAll(bz)).map(a=>b+a.index):void 0,m=(a,b,c,d)=>{if(void 0!==d){let e=i[d].scopes,f=i[d].bracket;if((d>0?i[d-1].endOffset:0)!==b){let g;if(f&&f.length>0){g=[];let a=[];for(let d=0;d<f.length;d++){let e=f[d];e<b?g.push(e):e>c&&a.push(e)}0===g.length&&(g=void 0),f=0===a.length?void 0:a}i.splice(d,0,{endOffset:b,scopes:[...e],bracket:g,encodedLanguageId:a.encodedLanguageId}),d++,k(),j++}i.splice(d,0,{endOffset:c,scopes:[...e,a.name],bracket:l(a,b),encodedLanguageId:a.encodedLanguageId}),i[j].bracket=f}else i[j]={endOffset:c,scopes:[h,a.name],bracket:l(a,b),encodedLanguageId:a.encodedLanguageId};j++};for(let d=0;d<a.length;d++){let e,f=a[d],g=f.node.endIndex<c?f.node.endIndex<b?b:f.node.endIndex:c,n=f.node.startIndex<b?b:f.node.startIndex,o=g-b,p=g-n;e=d>0?i[j-1].endOffset:n-b-1;let q=o-p;if(e>=0&&e<q&&(i[j]={endOffset:q,scopes:[h],encodedLanguageId:this._encodedLanguageId},j++,k()),!(p<0))if(e>=o){let a=j-1,b=i[a].endOffset,c=a>=2?i[a-1].endOffset:0;do{if(c+p===b){if(c===q){i[a].scopes.push(f.name);let b=i[a].bracket;i[a].bracket=b&&b.length>0?b:l(f,q)}}else if(c<=q){m(f,q,o,a);break}c=--a>=1?i[a-1].endOffset:0,b=a>=0?i[a].endOffset:0}while(b>q)}else m(f,q,o)}i[j-1].endOffset<f&&f-i[j-1].endOffset>0&&(k(),i[j]={endOffset:f,scopes:i[j].scopes,encodedLanguageId:this._encodedLanguageId},j++);for(let a=0;a<i.length;a++)if(0===i[a].endOffset&&0!==a){i.splice(a,i.length-a);break}return{endOffsets:i,captureTime:e.elapsed()}}_getInjectionCaptures(a,b){return[]}_tokenizeCapturesWithMetadata(a,b,c){let d=bd.W.create(),e=this._createTokensFromCaptures(a,b,c);if(!e)return;let f=e.endOffsets;for(let a=0;a<f.length;a++){let b=f[a];b.metadata=this._treeSitterThemeService.findMetadata(b.scopes,b.encodedLanguageId,!!b.bracket&&b.bracket.length>0,void 0)}let g=d.elapsed();return{endOffsetsAndMetadata:f,captureTime:e.captureTime,metadataTime:g}}_tokenizeEncoded(a){let b=this._textModel.getOffsetAt({lineNumber:a,column:1}),c=a+1<=this._textModel.getLineCount()?this._textModel.getOffsetAt({lineNumber:a+1,column:1}):this._textModel.getValueLength(),d=c-b,e=this._tokenize(new r.Q(a,1,a,d+1),b,c);if(e)return{result:e.endOffsetsAndMetadata,captureTime:e.captureTime,metadataTime:e.metadataTime,versionId:e.versionId}}_endOffsetTokensToUint32Array(a){let b=new Uint32Array(2*a.length);for(let c=0;c<a.length;c++)b[2*c]=a[c].endOffset,b[2*c+1]=a[c].metadata;return b}};bx=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([function(a,b){bw(a,b,4)}],bx);let by={css:"source.css",typescript:"source.ts",ini:"source.ini",regex:"source.regex"},bz=/[\{\}\[\]\<\>\(\)]/g;var bA=c(8751),bB=function(a,b){return function(c,d){b(c,d,a)}};let bC=class extends a2{constructor(a,b,c,d,e,f){super(b,c),this._languageIdObs=a,this._treeSitterLibraryService=e,this._instantiationService=f,this._backgroundTokenizationState=1,this._onDidChangeBackgroundTokenizationState=this._register(new k.vl),this.onDidChangeBackgroundTokenizationState=this._onDidChangeBackgroundTokenizationState.event;const g=new aY.BK(this._treeSitterLibraryService.getParserClass()),h=(0,aY.un)(this,a=>g.promiseResult?.read(a)?.getDataOrThrow());this._tree=(0,aY.un)(this,a=>{let b=h.read(a);if(!b)return;let c=this._languageIdObs.read(a),d=this._treeSitterLibraryService.getLanguage(c,a);if(!d)return;let e=new b;if(a.store.add((0,l.s)(()=>{e.delete()})),e.setLanguage(d),void 0!==this._treeSitterLibraryService.getInjectionQueries(c,a))return a.store.add(this._instantiationService.createInstance(ba,c,void 0,e,b,this._textModel))}),this._tokenizationImpl=(0,aY.un)(this,a=>{let b=this._tree.read(a);if(!b)return;let c=this._treeSitterLibraryService.getHighlightingQueries(b.languageId,a);if(c)return a.store.add(this._instantiationService.createInstance(bx,b,c,this._languageIdCodec,d))}),this._register((0,aY.fm)(a=>{let b=this._tokenizationImpl.read(a);b&&(a.store.add(b.onDidChangeTokens(a=>{this._onDidChangeTokens.fire(a.changes)})),a.store.add(b.onDidChangeBackgroundTokenization(a=>{this._backgroundTokenizationState=2,this._onDidChangeBackgroundTokenizationState.fire()})))}))}getLineTokens(a){let b=this._tokenizationImpl.get();if(!b){let b=this._textModel.getLineContent(a);return aV.f7.createEmpty(b,this._languageIdCodec)}return b.getLineTokens(a)}todo_resetTokenization(a=!0){a&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]})}handleDidChangeAttached(){}handleDidChangeContent(a){if(a.isFlush)this.todo_resetTokenization(!1);else{let b=this._tokenizationImpl.get();b?.handleContentChanged(a)}let b=this._tree.get();b?.handleContentChange(a)}forceTokenization(a){let b=this._tokenizationImpl.get();b&&(b.hasAccurateTokensForLine(a)||b.tokenizeEncoded(a))}hasAccurateTokensForLine(a){let b=this._tokenizationImpl.get();return!!b&&b.hasAccurateTokensForLine(a)}isCheapToTokenize(a){return!0}getTokenTypeIfInsertingCharacter(a,b,c){return 0}tokenizeLinesAt(a,b){let c=this._tokenizationImpl.get();return c?c.tokenizeLinesAt(a,b):null}get hasTokens(){let a=this._tokenizationImpl.get();return!!a&&a.hasTokens()}};bC=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([bB(4,bA.t),bB(5,bc._Y)],bC);class bD{constructor(a){this._pieces=[],this._isComplete=!1,this._languageIdCodec=a}flush(){this._pieces=[],this._isComplete=!1}isEmpty(){return 0===this._pieces.length}set(a,b,c){if(this._pieces=a||[],this._isComplete=b,c)for(let a of this._pieces)a.reportIfInvalid(c)}setPartial(a,b){let c=a;if(b.length>0){let d=b[0].getRange(),e=b[b.length-1].getRange();if(!d||!e)return a;c=a.plusRange(d).plusRange(e)}let d=null;for(let a=0,b=this._pieces.length;a<b;a++){let e=this._pieces[a];if(e.endLineNumber<c.startLineNumber)continue;if(e.startLineNumber>c.endLineNumber){d=d||{index:a};break}if(e.removeTokens(c),e.isEmpty()){this._pieces.splice(a,1),a--,b--;continue}if(e.endLineNumber<c.startLineNumber)continue;if(e.startLineNumber>c.endLineNumber){d=d||{index:a};continue}let[f,g]=e.split(c);if(f.isEmpty()){d=d||{index:a};continue}g.isEmpty()||(this._pieces.splice(a,1,f,g),a++,b++,d=d||{index:a})}return d=d||{index:this._pieces.length},b.length>0&&(this._pieces=h.nK(this._pieces,d.index,b)),c}isComplete(){return this._isComplete}addSparseTokens(a,b){if(0===b.getTextLength())return b;let c=this._pieces;if(0===c.length)return b;let d=bD._findFirstPieceWithLine(c,a),e=c[d].getLineTokens(a);if(!e)return b;let f=b.getCount(),g=e.getCount(),h=0,i=[],j=0,k=0,l=(a,b)=>{a!==k&&(k=a,i[j++]=a,i[j++]=b)};for(let a=0;a<g;a++){let c=Math.min(e.getStartCharacter(a),b.getTextLength()),d=Math.min(e.getEndCharacter(a),b.getTextLength()),g=e.getMetadata(a),i=((1&g?2048:0)|(2&g?4096:0)|(4&g?8192:0)|(8&g?16384:0)|(16&g?0xff8000:0)|(32&g?0xff000000:0))>>>0,j=~i>>>0;for(;h<f&&b.getEndOffset(h)<=c;)l(b.getEndOffset(h),b.getMetadata(h)),h++;for(h<f&&b.getStartOffset(h)<c&&l(c,b.getMetadata(h));h<f&&b.getEndOffset(h)<d;)l(b.getEndOffset(h),b.getMetadata(h)&j|g&i),h++;if(h<f)l(d,b.getMetadata(h)&j|g&i),b.getEndOffset(h)===d&&h++;else{let a=Math.min(Math.max(0,h-1),f-1);l(d,b.getMetadata(a)&j|g&i)}}for(;h<f;)l(b.getEndOffset(h),b.getMetadata(h)),h++;return new aV.f7(new Uint32Array(i),b.getLineContent(),this._languageIdCodec)}static _findFirstPieceWithLine(a,b){let c=0,d=a.length-1;for(;c<d;){let e=c+Math.floor((d-c)/2);if(a[e].endLineNumber<b)c=e+1;else if(a[e].startLineNumber>b)d=e-1;else{for(;e>c&&a[e-1].startLineNumber<=b&&b<=a[e-1].endLineNumber;)e--;return e}}return c}acceptEdit(a,b,c,d,e){for(let f of this._pieces)f.acceptEdit(a,b,c,d,e)}}var bE=c(98578);let bF=new Uint32Array(0).buffer;class bG{static deleteBeginning(a,b){return null===a||a===bF?a:bG.delete(a,0,b)}static deleteEnding(a,b){if(null===a||a===bF)return a;let c=bH(a),d=c[c.length-2];return bG.delete(a,b,d)}static delete(a,b,c){let d,e;if(null===a||a===bF||b===c)return a;let f=bH(a),g=f.length>>>1;if(0===b&&f[f.length-2]===c)return bF;let h=aV.f7.findIndexInTokensArray(f,b),i=h>0?f[h-1<<1]:0;if(c<f[h<<1]){let d=c-b;for(let a=h;a<g;a++)f[a<<1]-=d;return a}i!==b?(f[h<<1]=b,d=h+1<<1,e=b):(d=h<<1,e=i);let j=c-b;for(let a=h+1;a<g;a++){let b=f[a<<1]-j;b>e&&(f[d++]=b,f[d++]=f[(a<<1)+1],e=b)}if(d===f.length)return a;let k=new Uint32Array(d);return k.set(f.subarray(0,d),0),k.buffer}static append(a,b){if(b===bF)return a;if(a===bF)return b;if(null===a)return a;if(null===b)return null;let c=bH(a),d=bH(b),e=d.length>>>1,f=new Uint32Array(c.length+d.length);f.set(c,0);let g=c.length,h=c[c.length-2];for(let a=0;a<e;a++)f[g++]=d[a<<1]+h,f[g++]=d[(a<<1)+1];return f.buffer}static insert(a,b,c){if(null===a||a===bF)return a;let d=bH(a),e=d.length>>>1,f=aV.f7.findIndexInTokensArray(d,b);f>0&&d[f-1<<1]===b&&f--;for(let a=f;a<e;a++)d[a<<1]+=c;return a}}function bH(a){return a instanceof Uint32Array?a:new Uint32Array(a)}var bI=c(35479);class bJ{constructor(a){this._lineTokens=[],this._len=0,this._languageIdCodec=a}flush(){this._lineTokens=[],this._len=0}get hasTokens(){return this._lineTokens.length>0}getTokens(a,b,c){let d=null;if(b<this._len&&(d=this._lineTokens[b]),null!==d&&d!==bF)return new aV.f7(bH(d),c,this._languageIdCodec);let e=new Uint32Array(2);return e[0]=c.length,e[1]=bK(this._languageIdCodec.encodeLanguageId(a)),new aV.f7(e,c,this._languageIdCodec)}static _massageTokens(a,b,c){let d=c?bH(c):null;if(0===b){let b=!1;if(d&&d.length>1&&(b=bI.x.getLanguageId(d[1])!==a),!b)return bF}if(!d||0===d.length){let c=new Uint32Array(2);return c[0]=b,c[1]=bK(a),c.buffer}return(d[d.length-2]=b,0===d.byteOffset&&d.byteLength===d.buffer.byteLength)?d.buffer:d}_ensureLine(a){for(;a>=this._len;)this._lineTokens[this._len]=null,this._len++}_deleteLines(a,b){0!==b&&(a+b>this._len&&(b=this._len-a),this._lineTokens.splice(a,b),this._len-=b)}_insertLines(a,b){if(0===b)return;let c=[];for(let a=0;a<b;a++)c[a]=null;this._lineTokens=h.nK(this._lineTokens,a,c),this._len+=b}setTokens(a,b,c,d,e){let f=bJ._massageTokens(this._languageIdCodec.encodeLanguageId(a),c,d);this._ensureLine(b);let g=this._lineTokens[b];return this._lineTokens[b]=f,!!e&&!bJ._equals(g,f)}static _equals(a,b){if(!a||!b)return!a&&!b;let c=bH(a),d=bH(b);if(c.length!==d.length)return!1;for(let a=0,b=c.length;a<b;a++)if(c[a]!==d[a])return!1;return!0}acceptEdit(a,b,c){this._acceptDeleteRange(a),this._acceptInsertText(new q.y(a.startLineNumber,a.startColumn),b,c)}_acceptDeleteRange(a){let b=a.startLineNumber-1;if(b>=this._len)return;if(a.startLineNumber===a.endLineNumber){if(a.startColumn===a.endColumn)return;this._lineTokens[b]=bG.delete(this._lineTokens[b],a.startColumn-1,a.endColumn-1);return}this._lineTokens[b]=bG.deleteEnding(this._lineTokens[b],a.startColumn-1);let c=a.endLineNumber-1,d=null;c<this._len&&(d=bG.deleteBeginning(this._lineTokens[c],a.endColumn-1)),this._lineTokens[b]=bG.append(this._lineTokens[b],d),this._deleteLines(a.startLineNumber,a.endLineNumber-a.startLineNumber)}_acceptInsertText(a,b,c){if(0===b&&0===c)return;let d=a.lineNumber-1;if(!(d>=this._len)){if(0===b){this._lineTokens[d]=bG.insert(this._lineTokens[d],a.column-1,c);return}this._lineTokens[d]=bG.deleteEnding(this._lineTokens[d],a.column-1),this._lineTokens[d]=bG.insert(this._lineTokens[d],a.column-1,c),this._insertLines(a.lineNumber,b)}}setMultilineTokens(a,b){if(0===a.length)return{changes:[]};let c=[];for(let d=0,e=a.length;d<e;d++){let e=a[d],f=0,g=0,h=!1;for(let a=e.startLineNumber;a<=e.endLineNumber;a++)h?(this.setTokens(b.getLanguageId(),a-1,b.getLineLength(a),e.getLineTokens(a),!1),g=a):this.setTokens(b.getLanguageId(),a-1,b.getLineLength(a),e.getLineTokens(a),!0)&&(h=!0,f=a,g=a);h&&c.push({fromLineNumber:f,toLineNumber:g})}return{changes:c}}}function bK(a){return(0x2008000|a|1024)>>>0}class bL extends a2{constructor(a,b,c,d){super(a,b),this.getLanguageId=c,this._tokenizer=null,this._backgroundTokenizationState=1,this._onDidChangeBackgroundTokenizationState=this._register(new k.vl),this.onDidChangeBackgroundTokenizationState=this._onDidChangeBackgroundTokenizationState.event,this._defaultBackgroundTokenizer=null,this._backgroundTokenizer=this._register(new l.HE),this._tokens=new bJ(this._languageIdCodec),this._debugBackgroundTokenizer=this._register(new l.HE),this._attachedViewStates=this._register(new l.$w),this._register(bE.dG.onDidChange(a=>{let b=this.getLanguageId();-1!==a.changedLanguages.indexOf(b)&&this.todo_resetTokenization()})),this.todo_resetTokenization(),this._register(d.onDidChangeVisibleRanges(({view:a,state:b})=>{if(b){let c=this._attachedViewStates.get(a);c||(c=new a1(()=>this.refreshRanges(c.lineRanges)),this._attachedViewStates.set(a,c)),c.handleStateChange(b)}else this._attachedViewStates.deleteAndDispose(a)}))}todo_resetTokenization(a=!0){this._tokens.flush(),this._debugBackgroundTokens?.flush(),this._debugBackgroundStates&&(this._debugBackgroundStates=new bm(this._textModel.getLineCount())),a&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]});let[b,c]=(()=>{let a;if(this._textModel.isTooLargeForTokenization())return[null,null];let b=bE.dG.get(this.getLanguageId());if(!b)return[null,null];try{a=b.getInitialState()}catch(a){return(0,j.dz)(a),[null,null]}return[b,a]})();if(b&&c?this._tokenizer=new bk(this._textModel.getLineCount(),b,this._textModel,this._languageIdCodec):this._tokenizer=null,this._backgroundTokenizer.clear(),this._defaultBackgroundTokenizer=null,this._tokenizer){let a={setTokens:a=>{this.setTokens(a)},backgroundTokenizationFinished:()=>{2===this._backgroundTokenizationState||(this._backgroundTokenizationState=2,this._onDidChangeBackgroundTokenizationState.fire())},setEndState:(a,b)=>{if(!this._tokenizer)return;let c=this._tokenizer.store.getFirstInvalidEndStateLineNumber();null!==c&&a>=c&&this._tokenizer?.store.setEndState(a,b)}};b&&b.createBackgroundTokenizer&&!b.backgroundTokenizerShouldOnlyVerifyTokens&&(this._backgroundTokenizer.value=b.createBackgroundTokenizer(this._textModel,a)),this._backgroundTokenizer.value||this._textModel.isTooLargeForTokenization()||(this._backgroundTokenizer.value=this._defaultBackgroundTokenizer=new bq(this._tokenizer,a),this._defaultBackgroundTokenizer.handleChanges()),b?.backgroundTokenizerShouldOnlyVerifyTokens&&b.createBackgroundTokenizer?(this._debugBackgroundTokens=new bJ(this._languageIdCodec),this._debugBackgroundStates=new bm(this._textModel.getLineCount()),this._debugBackgroundTokenizer.clear(),this._debugBackgroundTokenizer.value=b.createBackgroundTokenizer(this._textModel,{setTokens:a=>{this._debugBackgroundTokens?.setMultilineTokens(a,this._textModel)},backgroundTokenizationFinished(){},setEndState:(a,b)=>{this._debugBackgroundStates?.setEndState(a,b)}})):(this._debugBackgroundTokens=void 0,this._debugBackgroundStates=void 0,this._debugBackgroundTokenizer.value=void 0)}this.refreshAllVisibleLineTokens()}handleDidChangeAttached(){this._defaultBackgroundTokenizer?.handleChanges()}handleDidChangeContent(a){if(a.isFlush)this.todo_resetTokenization(!1);else if(!a.isEolChange){for(let b of a.changes){let[a,c]=(0,o.W)(b.text);this._tokens.acceptEdit(b.range,a,c),this._debugBackgroundTokens?.acceptEdit(b.range,a,c)}this._debugBackgroundStates?.acceptChanges(a.changes),this._tokenizer&&this._tokenizer.store.acceptChanges(a.changes),this._defaultBackgroundTokenizer?.handleChanges()}}setTokens(a){let{changes:b}=this._tokens.setMultilineTokens(a,this._textModel);return b.length>0&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:b}),{changes:b}}refreshAllVisibleLineTokens(){let a=aX.M.joinMany([...this._attachedViewStates].map(([a,b])=>b.lineRanges));this.refreshRanges(a)}refreshRanges(a){for(let b of a)this.refreshRange(b.startLineNumber,b.endLineNumberExclusive-1)}refreshRange(a,b){if(!this._tokenizer)return;a=Math.max(1,Math.min(this._textModel.getLineCount(),a)),b=Math.min(this._textModel.getLineCount(),b);let c=new bi,{heuristicTokens:d}=this._tokenizer.tokenizeHeuristically(c,a,b),e=this.setTokens(c.finalize());if(d)for(let a of e.changes)this._backgroundTokenizer.value?.requestTokens(a.fromLineNumber,a.toLineNumber+1);this._defaultBackgroundTokenizer?.checkFinished()}forceTokenization(a){let b=new bi;this._tokenizer?.updateTokensUntilLine(b,a),this.setTokens(b.finalize()),this._defaultBackgroundTokenizer?.checkFinished()}hasAccurateTokensForLine(a){return!this._tokenizer||this._tokenizer.hasAccurateTokensForLine(a)}isCheapToTokenize(a){return!this._tokenizer||this._tokenizer.isCheapToTokenize(a)}getLineTokens(a){let b=this._textModel.getLineContent(a),c=this._tokens.getTokens(this._textModel.getLanguageId(),a-1,b);if(this._debugBackgroundTokens&&this._debugBackgroundStates&&this._tokenizer&&this._debugBackgroundStates.getFirstInvalidEndStateLineNumberOrMax()>a&&this._tokenizer.store.getFirstInvalidEndStateLineNumberOrMax()>a){let d=this._debugBackgroundTokens.getTokens(this._textModel.getLanguageId(),a-1,b);!c.equals(d)&&this._debugBackgroundTokenizer.value?.reportMismatchingTokens&&this._debugBackgroundTokenizer.value.reportMismatchingTokens(a)}return c}getTokenTypeIfInsertingCharacter(a,b,c){if(!this._tokenizer)return 0;let d=this._textModel.validatePosition(new q.y(a,b));return this.forceTokenization(d.lineNumber),this._tokenizer.getTokenTypeIfInsertingCharacter(d,c)}tokenizeLinesAt(a,b){return this._tokenizer?(this.forceTokenization(a),this._tokenizer.tokenizeLinesAt(a,b)):null}get hasTokens(){return this._tokens.hasTokens}}var bM=function(a,b){return function(c,d){b(c,d,a)}};let bN=f=class extends aU._{constructor(a,b,c,d,e,f,g,h){super(),this._textModel=a,this._bracketPairsTextModelPart=b,this._languageId=c,this._attachedViews=d,this._languageService=e,this._languageConfigurationService=f,this._instantiationService=g,this._treeSitterLibraryService=h,this._languageIdObs=(0,aY.FY)(this,this._languageId),this._useTreeSitter=(0,aY.un)(this,a=>{let b=this._languageIdObs.read(a);return this._treeSitterLibraryService.supportsLanguage(b,a)}),this.tokens=(0,aY.un)(this,a=>{let b;return b=this._useTreeSitter.read(a)?a.store.add(this._instantiationService.createInstance(bC,this._languageIdObs,this._languageService.languageIdCodec,this._textModel,this._attachedViews.visibleLineRanges)):a.store.add(new bL(this._languageService.languageIdCodec,this._textModel,()=>this._languageId,this._attachedViews)),a.store.add(b.onDidChangeTokens(a=>{this._emitModelTokensChangedEvent(a)})),a.store.add(b.onDidChangeBackgroundTokenizationState(a=>{this._bracketPairsTextModelPart.handleDidChangeBackgroundTokenizationState()})),b});let i=!1;this.tokens.recomputeInitiallyAndOnChange(this._store,a=>{i&&a.todo_resetTokenization(),i=!0}),this._semanticTokens=new bD(this._languageService.languageIdCodec),this._onDidChangeLanguage=this._register(new k.vl),this.onDidChangeLanguage=this._onDidChangeLanguage.event,this._onDidChangeLanguageConfiguration=this._register(new k.vl),this.onDidChangeLanguageConfiguration=this._onDidChangeLanguageConfiguration.event,this._onDidChangeTokens=this._register(new k.vl),this.onDidChangeTokens=this._onDidChangeTokens.event}handleLanguageConfigurationServiceChange(a){a.affects(this._languageId)&&this._onDidChangeLanguageConfiguration.fire({})}handleDidChangeContent(a){if(a.isFlush)this._semanticTokens.flush();else if(!a.isEolChange)for(let b of a.changes){let[a,c,d]=(0,o.W)(b.text);this._semanticTokens.acceptEdit(b.range,a,c,d,b.text.length>0?b.text.charCodeAt(0):0)}this.tokens.get().handleDidChangeContent(a)}handleDidChangeAttached(){this.tokens.get().handleDidChangeAttached()}getLineTokens(a){this.validateLineNumber(a);let b=this.tokens.get().getLineTokens(a);return this._semanticTokens.addSparseTokens(a,b)}_emitModelTokensChangedEvent(a){this._textModel._isDisposing()||(this._bracketPairsTextModelPart.handleDidChangeTokens(a),this._onDidChangeTokens.fire(a))}validateLineNumber(a){if(a<1||a>this._textModel.getLineCount())throw new j.D7("Illegal value for lineNumber")}get hasTokens(){return this.tokens.get().hasTokens}resetTokenization(){this.tokens.get().todo_resetTokenization()}get backgroundTokenizationState(){return this.tokens.get().backgroundTokenizationState}forceTokenization(a){this.validateLineNumber(a),this.tokens.get().forceTokenization(a)}hasAccurateTokensForLine(a){return this.validateLineNumber(a),this.tokens.get().hasAccurateTokensForLine(a)}isCheapToTokenize(a){return this.validateLineNumber(a),this.tokens.get().isCheapToTokenize(a)}tokenizeIfCheap(a){this.validateLineNumber(a),this.tokens.get().tokenizeIfCheap(a)}getTokenTypeIfInsertingCharacter(a,b,c){return this.tokens.get().getTokenTypeIfInsertingCharacter(a,b,c)}tokenizeLinesAt(a,b){return this.tokens.get().tokenizeLinesAt(a,b)}setSemanticTokens(a,b){this._semanticTokens.set(a,b,this._textModel),this._emitModelTokensChangedEvent({semanticTokensApplied:null!==a,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]})}hasCompleteSemanticTokens(){return this._semanticTokens.isComplete()}hasSomeSemanticTokens(){return!this._semanticTokens.isEmpty()}setPartialSemanticTokens(a,b){if(this.hasCompleteSemanticTokens())return;let c=this._textModel.validateRange(this._semanticTokens.setPartial(a,b));this._emitModelTokensChangedEvent({semanticTokensApplied:!0,ranges:[{fromLineNumber:c.startLineNumber,toLineNumber:c.endLineNumber}]})}getWordAtPosition(a){this.assertNotDisposed();let b=this._textModel.validatePosition(a),c=this._textModel.getLineContent(b.lineNumber),d=this.getLineTokens(b.lineNumber),e=d.findTokenIndexAtOffset(b.column-1),[g,h]=f._findLanguageBoundaries(d,e),i=(0,aT.Th)(b.column,this.getLanguageConfiguration(d.getLanguageId(e)).getWordDefinition(),c.substring(g,h),g);if(i&&i.startColumn<=a.column&&a.column<=i.endColumn)return i;if(e>0&&g===b.column-1){let[g,h]=f._findLanguageBoundaries(d,e-1),i=(0,aT.Th)(b.column,this.getLanguageConfiguration(d.getLanguageId(e-1)).getWordDefinition(),c.substring(g,h),g);if(i&&i.startColumn<=a.column&&a.column<=i.endColumn)return i}return null}getLanguageConfiguration(a){return this._languageConfigurationService.getLanguageConfiguration(a)}static _findLanguageBoundaries(a,b){let c=a.getLanguageId(b),d=0;for(let e=b;e>=0&&a.getLanguageId(e)===c;e--)d=a.getStartOffset(e);let e=a.getLineContent().length;for(let d=b,f=a.getCount();d<f&&a.getLanguageId(d)===c;d++)e=a.getEndOffset(d);return[d,e]}getWordUntilPosition(a){let b=this.getWordAtPosition(a);return b?{word:b.word.substr(0,a.column-b.startColumn),startColumn:b.startColumn,endColumn:a.column}:{word:"",startColumn:a.column,endColumn:a.column}}getLanguageId(){return this._languageId}getLanguageIdAtPosition(a,b){let c=this._textModel.validatePosition(new q.y(a,b)),d=this.getLineTokens(c.lineNumber);return d.getLanguageId(d.findTokenIndexAtOffset(c.column-1))}setLanguageId(a,b="api"){if(this._languageId===a)return;let c={oldLanguage:this._languageId,newLanguage:a,source:b};this._languageId=a,this._languageIdObs.set(a,void 0),this._bracketPairsTextModelPart.handleDidChangeLanguage(c),this._onDidChangeLanguage.fire(c),this._onDidChangeLanguageConfiguration.fire({})}};bN=f=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([bM(4,u.L),bM(5,v.JZ),bM(6,bc._Y),bM(7,bA.t)],bN);var bO=c(64948),bP=c(23572),bQ=c(7240),bR=c(7784),bS=function(a,b){return function(c,d){b(c,d,a)}};function bT(a,b){let c;if("string"==typeof a){let b;(b=new aS).acceptChunk(a),c=b.finish()}else c=w.nk(a)?function(a){let b,c=new aS;for(;"string"==typeof(b=a.read());)c.acceptChunk(b);return c.finish()}(a):a;return c.create(b)}let bU=0;class bV{constructor(a){this._source=a,this._eos=!1}read(){if(this._eos)return null;let a=[],b=0,c=0;for(;;){let d=this._source.read();if(null===d){if(this._eos=!0,0===b)return null;return a.join("")}if(d.length>0&&(a[b++]=d,c+=d.length),c>=65536)return a.join("")}}}let bW=()=>{throw Error("Invalid change accessor")},bX=class extends l.jG{static{g=this}static{this._MODEL_SYNC_LIMIT=0x3200000}static{this.LARGE_FILE_SIZE_THRESHOLD=0x1400000}static{this.LARGE_FILE_LINE_COUNT_THRESHOLD=3e5}static{this.LARGE_FILE_HEAP_OPERATION_THRESHOLD=0x10000000}static{this.DEFAULT_CREATION_OPTIONS={isForSimpleWidget:!1,tabSize:t.R.tabSize,indentSize:t.R.indentSize,insertSpaces:t.R.insertSpaces,detectIndentation:!1,defaultEOL:1,trimAutoWhitespace:t.R.trimAutoWhitespace,largeFileOptimizations:t.R.largeFileOptimizations,bracketPairColorizationOptions:t.R.bracketPairColorizationOptions}}static resolveOptions(a,b){if(b.detectIndentation){let c=W(a,b.tabSize,b.insertSpaces);return new w.X2({tabSize:c.tabSize,indentSize:"tabSize",insertSpaces:c.insertSpaces,trimAutoWhitespace:b.trimAutoWhitespace,defaultEOL:b.defaultEOL,bracketPairColorizationOptions:b.bracketPairColorizationOptions})}return new w.X2(b)}get onDidChangeLanguage(){return this._tokenizationTextModelPart.onDidChangeLanguage}get onDidChangeLanguageConfiguration(){return this._tokenizationTextModelPart.onDidChangeLanguageConfiguration}get onDidChangeTokens(){return this._tokenizationTextModelPart.onDidChangeTokens}get onDidChangeOptions(){return this._onDidChangeOptions.event}get onDidChangeAttached(){return this._onDidChangeAttached.event}get onDidChangeLineHeight(){return this._onDidChangeLineHeight.event}get onDidChangeFont(){return this._onDidChangeFont.event}onDidChangeContent(a){return this._eventEmitter.slowEvent(b=>a(b.contentChangedEvent))}onDidChangeContentOrInjectedText(a){return(0,l.qE)(this._eventEmitter.fastEvent(b=>a(b)),this._onDidChangeInjectedText.event(b=>a(b)))}_isDisposing(){return this.__isDisposing}get tokenization(){return this._tokenizationTextModelPart}get bracketPairs(){return this._bracketPairs}get guides(){return this._guidesTextModelPart}constructor(a,b,c,d=null,e,f,h,i){super(),this._undoRedoService=e,this._languageService=f,this._languageConfigurationService=h,this.instantiationService=i,this._onWillDispose=this._register(new k.vl),this.onWillDispose=this._onWillDispose.event,this._onDidChangeDecorations=this._register(new cb((a,b,c)=>this.handleBeforeFireDecorationsChangedEvent(a,b,c))),this.onDidChangeDecorations=this._onDidChangeDecorations.event,this._onDidChangeOptions=this._register(new k.vl),this._onDidChangeAttached=this._register(new k.vl),this._onDidChangeInjectedText=this._register(new k.vl),this._onDidChangeLineHeight=this._register(new k.vl),this._onDidChangeFont=this._register(new k.vl),this._eventEmitter=this._register(new cc),this._languageSelectionListener=this._register(new l.HE),this._deltaDecorationCallCnt=0,this._attachedViews=new a$,bU++,this.id="$model"+bU,this.isForSimpleWidget=c.isForSimpleWidget,null==d?this._associatedResource=n.r.parse("inmemory://model/"+bU):this._associatedResource=d,this._attachedEditorCount=0;const{textBuffer:j,disposable:o}=bT(a,c.defaultEOL);this._buffer=j,this._bufferDisposable=o;const p=this._buffer.getLineCount(),q=this._buffer.getValueLengthInRange(new r.Q(1,1,p,this._buffer.getLineLength(p)+1),0);c.largeFileOptimizations?(this._isTooLargeForTokenization=q>g.LARGE_FILE_SIZE_THRESHOLD||p>g.LARGE_FILE_LINE_COUNT_THRESHOLD,this._isTooLargeForHeapOperation=q>g.LARGE_FILE_HEAP_OPERATION_THRESHOLD):(this._isTooLargeForTokenization=!1,this._isTooLargeForHeapOperation=!1),this._options=g.resolveOptions(this._buffer,c);const s="string"==typeof b?b:b.languageId;"string"!=typeof b&&(this._languageSelectionListener.value=b.onDidChange(()=>this._setLanguage(b.languageId))),this._bracketPairs=this._register(new L(this,this._languageConfigurationService)),this._guidesTextModelPart=this._register(new U.P(this,this._languageConfigurationService)),this._decorationProvider=this._register(new R(this)),this._tokenizationTextModelPart=this.instantiationService.createInstance(bN,this,this._bracketPairs,s,this._attachedViews),this._isTooLargeForSyncing=q>g._MODEL_SYNC_LIMIT,this._versionId=1,this._alternativeVersionId=1,this._initialUndoRedoSnapshot=null,this._isDisposed=!1,this.__isDisposing=!1,this._instanceId=m.tk(bU),this._lastDecorationId=0,this._decorations=Object.create(null),this._decorationsTree=new b_,this._commandManager=new T.z8(this,this._undoRedoService),this._isUndoing=!1,this._isRedoing=!1,this._trimAutoWhitespaceLines=null,this._register(this._decorationProvider.onDidChange(()=>{this._onDidChangeDecorations.beginDeferredEmit(),this._onDidChangeDecorations.fire(),this._onDidChangeDecorations.endDeferredEmit()})),this._languageService.requestRichLanguageFeatures(s),this._register(this._languageConfigurationService.onDidChange(a=>{this._bracketPairs.handleLanguageConfigurationServiceChange(a),this._tokenizationTextModelPart.handleLanguageConfigurationServiceChange(a)}))}dispose(){this.__isDisposing=!0,this._onWillDispose.fire(),this._tokenizationTextModelPart.dispose(),this._isDisposed=!0,super.dispose(),this._bufferDisposable.dispose(),this.__isDisposing=!1;let a=new aQ([],"","\n",!1,!1,!0,!0);a.dispose(),this._buffer=a,this._bufferDisposable=l.jG.None}_assertNotDisposed(){if(this._isDisposed)throw new j.D7("Model is disposed!")}getTextBuffer(){return this._assertNotDisposed(),this._buffer}_emitContentChangedEvent(a,b){this.__isDisposing||(this._tokenizationTextModelPart.handleDidChangeContent(b),this._bracketPairs.handleDidChangeContent(b),this._eventEmitter.fire(new bO.Ic(a,b)))}setValue(a,b=bR.dg.setValue()){if(this._assertNotDisposed(),null==a)throw(0,j.Qg)();let{textBuffer:c,disposable:d}=bT(a,this._options.defaultEOL);this._setValueFromTextBuffer(c,d,b)}_createContentChanged2(a,b,c,d,e,f,g,h,i,j){return{changes:[{range:a,rangeOffset:b,rangeLength:c,text:e}],eol:this._buffer.getEOL(),isEolChange:i,versionId:this.getVersionId(),isUndoing:f,isRedoing:g,isFlush:h,detailedReasons:[j],detailedReasonsChangeLengths:[1]}}_setValueFromTextBuffer(a,b,c){this._assertNotDisposed();let d=this.getFullModelRange(),e=this.getValueLengthInRange(d),f=this.getLineCount(),g=this.getLineMaxColumn(f);this._buffer=a,this._bufferDisposable.dispose(),this._bufferDisposable=b,this._increaseVersionId(),this._decorations=Object.create(null),this._decorationsTree=new b_,this._commandManager.clear(),this._trimAutoWhitespaceLines=null,this._emitContentChangedEvent(new bO.HP([new bO.Wn],this._versionId,!1,!1),this._createContentChanged2(new r.Q(1,1,f,g),0,e,new q.y(f,g),this.getValue(),!1,!1,!0,!1,c))}setEOL(a){this._assertNotDisposed();let b=1===a?"\r\n":"\n";if(this._buffer.getEOL()===b)return;let c=this.getFullModelRange(),d=this.getValueLengthInRange(c),e=this.getLineCount(),f=this.getLineMaxColumn(e);this._onBeforeEOLChange(),this._buffer.setEOL(b),this._increaseVersionId(),this._onAfterEOLChange(),this._emitContentChangedEvent(new bO.HP([new bO.mS],this._versionId,!1,!1),this._createContentChanged2(new r.Q(1,1,e,f),0,d,new q.y(e,f),this.getValue(),!1,!1,!1,!0,bR.dg.eolChange()))}_onBeforeEOLChange(){this._decorationsTree.ensureAllNodesHaveRanges(this)}_onAfterEOLChange(){let a=this.getVersionId(),b=this._decorationsTree.collectNodesPostOrder();for(let c=0,d=b.length;c<d;c++){let d=b[c],e=d.range,f=d.cachedAbsoluteStart-d.start,g=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),h=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);d.cachedAbsoluteStart=g,d.cachedAbsoluteEnd=h,d.cachedVersionId=a,d.start=g-f,d.end=h-f,ar(d)}}onBeforeAttached(){return this._attachedEditorCount++,1===this._attachedEditorCount&&(this._tokenizationTextModelPart.handleDidChangeAttached(),this._onDidChangeAttached.fire(void 0)),this._attachedViews.attachView()}onBeforeDetached(a){this._attachedEditorCount--,0===this._attachedEditorCount&&(this._tokenizationTextModelPart.handleDidChangeAttached(),this._onDidChangeAttached.fire(void 0)),this._attachedViews.detachView(a)}isAttachedToEditor(){return this._attachedEditorCount>0}getAttachedEditorCount(){return this._attachedEditorCount}isTooLargeForSyncing(){return this._isTooLargeForSyncing}isTooLargeForTokenization(){return this._isTooLargeForTokenization}isTooLargeForHeapOperation(){return this._isTooLargeForHeapOperation}isDisposed(){return this._isDisposed}isDominatedByLongLines(){if(this._assertNotDisposed(),this.isTooLargeForTokenization())return!1;let a=0,b=0,c=this._buffer.getLineCount();for(let d=1;d<=c;d++){let c=this._buffer.getLineLength(d);c>=1e4?b+=c:a+=c}return b>a}get uri(){return this._associatedResource}getOptions(){return this._assertNotDisposed(),this._options}getFormattingOptions(){return{tabSize:this._options.indentSize,insertSpaces:this._options.insertSpaces}}updateOptions(a){this._assertNotDisposed();let b=void 0!==a.tabSize?a.tabSize:this._options.tabSize,c=void 0!==a.indentSize?a.indentSize:this._options.originalIndentSize,d=void 0!==a.insertSpaces?a.insertSpaces:this._options.insertSpaces,e=void 0!==a.trimAutoWhitespace?a.trimAutoWhitespace:this._options.trimAutoWhitespace,f=void 0!==a.bracketColorizationOptions?a.bracketColorizationOptions:this._options.bracketPairColorizationOptions,g=new w.X2({tabSize:b,indentSize:c,insertSpaces:d,defaultEOL:this._options.defaultEOL,trimAutoWhitespace:e,bracketPairColorizationOptions:f});if(this._options.equals(g))return;let h=this._options.createChangeEvent(g);this._options=g,this._bracketPairs.handleDidChangeOptions(h),this._decorationProvider.handleDidChangeOptions(h),this._onDidChangeOptions.fire(h)}detectIndentation(a,b){this._assertNotDisposed();let c=W(this._buffer,b,a);this.updateOptions({insertSpaces:c.insertSpaces,tabSize:c.tabSize,indentSize:c.tabSize})}normalizeIndentation(a){return this._assertNotDisposed(),(0,p.P)(a,this._options.indentSize,this._options.insertSpaces)}getVersionId(){return this._assertNotDisposed(),this._versionId}mightContainRTL(){return this._buffer.mightContainRTL()}mightContainUnusualLineTerminators(){return this._buffer.mightContainUnusualLineTerminators()}removeUnusualLineTerminators(a=null){let b=this.findMatches(m._J.source,!1,!0,!1,null,!1,0x40000000);this._buffer.resetMightContainUnusualLineTerminators(),this.pushEditOperations(a,b.map(a=>({range:a.range,text:null})),()=>null)}mightContainNonBasicASCII(){return this._buffer.mightContainNonBasicASCII()}getAlternativeVersionId(){return this._assertNotDisposed(),this._alternativeVersionId}getInitialUndoRedoSnapshot(){return this._assertNotDisposed(),this._initialUndoRedoSnapshot}getOffsetAt(a){this._assertNotDisposed();let b=this._validatePosition(a.lineNumber,a.column,0);return this._buffer.getOffsetAt(b.lineNumber,b.column)}getPositionAt(a){this._assertNotDisposed();let b=Math.min(this._buffer.getLength(),Math.max(0,a));return this._buffer.getPositionAt(b)}_increaseVersionId(){this._versionId=this._versionId+1,this._alternativeVersionId=this._versionId}_overwriteVersionId(a){this._versionId=a}_overwriteAlternativeVersionId(a){this._alternativeVersionId=a}_overwriteInitialUndoRedoSnapshot(a){this._initialUndoRedoSnapshot=a}getValue(a,b=!1){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new j.D7("Operation would exceed heap memory limits");let c=this.getFullModelRange(),d=this.getValueInRange(c,a);return b?this._buffer.getBOM()+d:d}createSnapshot(a=!1){return new bV(this._buffer.createSnapshot(a))}getValueLength(a,b=!1){this._assertNotDisposed();let c=this.getFullModelRange(),d=this.getValueLengthInRange(c,a);return b?this._buffer.getBOM().length+d:d}getValueInRange(a,b=0){return this._assertNotDisposed(),this._buffer.getValueInRange(this.validateRange(a),b)}getValueLengthInRange(a,b=0){return this._assertNotDisposed(),this._buffer.getValueLengthInRange(this.validateRange(a),b)}getCharacterCountInRange(a,b=0){return this._assertNotDisposed(),this._buffer.getCharacterCountInRange(this.validateRange(a),b)}getLineCount(){return this._assertNotDisposed(),this._buffer.getLineCount()}getLineContent(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new j.D7("Illegal value for lineNumber");return this._buffer.getLineContent(a)}getLineLength(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new j.D7("Illegal value for lineNumber");return this._buffer.getLineLength(a)}getLinesContent(){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new j.D7("Operation would exceed heap memory limits");return this._buffer.getLinesContent()}getEOL(){return this._assertNotDisposed(),this._buffer.getEOL()}getEndOfLineSequence(){return this._assertNotDisposed(),+("\n"!==this._buffer.getEOL())}getLineMinColumn(a){return this._assertNotDisposed(),1}getLineMaxColumn(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new j.D7("Illegal value for lineNumber");return this._buffer.getLineLength(a)+1}getLineFirstNonWhitespaceColumn(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new j.D7("Illegal value for lineNumber");return this._buffer.getLineFirstNonWhitespaceColumn(a)}getLineLastNonWhitespaceColumn(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new j.D7("Illegal value for lineNumber");return this._buffer.getLineLastNonWhitespaceColumn(a)}_validateRangeRelaxedNoAllocations(a){let b=this._buffer.getLineCount(),c=a.startLineNumber,d=a.startColumn,e=Math.floor("number"!=typeof c||isNaN(c)?1:c),f=Math.floor("number"!=typeof d||isNaN(d)?1:d);if(e<1)e=1,f=1;else if(e>b)e=b,f=this.getLineMaxColumn(e);else if(f<=1)f=1;else{let a=this.getLineMaxColumn(e);f>=a&&(f=a)}let g=a.endLineNumber,h=a.endColumn,i=Math.floor("number"!=typeof g||isNaN(g)?1:g),j=Math.floor("number"!=typeof h||isNaN(h)?1:h);if(i<1)i=1,j=1;else if(i>b)i=b,j=this.getLineMaxColumn(i);else if(j<=1)j=1;else{let a=this.getLineMaxColumn(i);j>=a&&(j=a)}return c===e&&d===f&&g===i&&h===j&&a instanceof r.Q&&!(a instanceof s.L)?a:new r.Q(e,f,i,j)}_isValidPosition(a,b,c){if("number"!=typeof a||"number"!=typeof b||isNaN(a)||isNaN(b)||a<1||b<1||(0|a)!==a||(0|b)!==b||a>this._buffer.getLineCount())return!1;if(1===b)return!0;if(b>this.getLineMaxColumn(a))return!1;if(1===c){let c=this._buffer.getLineCharCode(a,b-2);if(m.pc(c))return!1}return!0}_validatePosition(a,b,c){let d=Math.floor("number"!=typeof a||isNaN(a)?1:a),e=Math.floor("number"!=typeof b||isNaN(b)?1:b),f=this._buffer.getLineCount();if(d<1)return new q.y(1,1);if(d>f)return new q.y(f,this.getLineMaxColumn(f));if(e<=1)return new q.y(d,1);let g=this.getLineMaxColumn(d);if(e>=g)return new q.y(d,g);if(1===c){let a=this._buffer.getLineCharCode(d,e-2);if(m.pc(a))return new q.y(d,e-1)}return new q.y(d,e)}validatePosition(a){return(this._assertNotDisposed(),a instanceof q.y&&this._isValidPosition(a.lineNumber,a.column,1))?a:this._validatePosition(a.lineNumber,a.column,1)}isValidRange(a){return this._isValidRange(a,1)}_isValidRange(a,b){let c=a.startLineNumber,d=a.startColumn,e=a.endLineNumber,f=a.endColumn;if(!this._isValidPosition(c,d,0)||!this._isValidPosition(e,f,0))return!1;if(1===b){let a=d>1?this._buffer.getLineCharCode(c,d-2):0,b=f>1&&f<=this._buffer.getLineLength(e)?this._buffer.getLineCharCode(e,f-2):0,g=m.pc(a),h=m.pc(b);return!g&&!h}return!0}validateRange(a){if(this._assertNotDisposed(),a instanceof r.Q&&!(a instanceof s.L)&&this._isValidRange(a,1))return a;let b=this._validatePosition(a.startLineNumber,a.startColumn,0),c=this._validatePosition(a.endLineNumber,a.endColumn,0),d=b.lineNumber,e=b.column,f=c.lineNumber,g=c.column;{let a=e>1?this._buffer.getLineCharCode(d,e-2):0,b=g>1&&g<=this._buffer.getLineLength(f)?this._buffer.getLineCharCode(f,g-2):0,c=m.pc(a),h=m.pc(b);return c||h?d===f&&e===g?new r.Q(d,e-1,f,g-1):c&&h?new r.Q(d,e-1,f,g+1):c?new r.Q(d,e-1,f,g):new r.Q(d,e,f,g+1):new r.Q(d,e,f,g)}}modifyPosition(a,b){this._assertNotDisposed();let c=this.getOffsetAt(a)+b;return this.getPositionAt(Math.min(this._buffer.getLength(),Math.max(0,c)))}getFullModelRange(){this._assertNotDisposed();let a=this.getLineCount();return new r.Q(1,1,a,this.getLineMaxColumn(a))}findMatchesLineByLine(a,b,c,d){return this._buffer.findMatchesLineByLine(a,b,c,d)}findMatches(a,b,c,d,e,f,g=999){let h;this._assertNotDisposed();let i=null;null!==b&&(Array.isArray(b)||(b=[b]),b.every(a=>r.Q.isIRange(a))&&(i=b.map(a=>this.validateRange(a)))),null===i&&(i=[this.getFullModelRange()]),i=i.sort((a,b)=>a.startLineNumber-b.startLineNumber||a.startColumn-b.startColumn);let j=[];if(j.push(i.reduce((a,b)=>r.Q.areIntersecting(a,b)?a.plusRange(b):(j.push(a),b))),!c&&0>a.indexOf("\n")){let b=new aG.lt(a,c,d,e).parseSearchRequest();if(!b)return[];h=a=>this.findMatchesLineByLine(a,b,f,g)}else h=b=>aG.hB.findMatches(this,new aG.lt(a,c,d,e),b,f,g);return j.map(h).reduce((a,b)=>a.concat(b),[])}findNextMatch(a,b,c,d,e,f){this._assertNotDisposed();let g=this.validatePosition(b);if(!c&&0>a.indexOf("\n")){let b=new aG.lt(a,c,d,e).parseSearchRequest();if(!b)return null;let h=this.getLineCount(),i=new r.Q(g.lineNumber,g.column,h,this.getLineMaxColumn(h)),j=this.findMatchesLineByLine(i,b,f,1);return(aG.hB.findNextMatch(this,new aG.lt(a,c,d,e),g,f),j.length>0||(i=new r.Q(1,1,g.lineNumber,this.getLineMaxColumn(g.lineNumber)),(j=this.findMatchesLineByLine(i,b,f,1)).length>0))?j[0]:null}return aG.hB.findNextMatch(this,new aG.lt(a,c,d,e),g,f)}findPreviousMatch(a,b,c,d,e,f){this._assertNotDisposed();let g=this.validatePosition(b);return aG.hB.findPreviousMatch(this,new aG.lt(a,c,d,e),g,f)}pushStackElement(){this._commandManager.pushStackElement()}popStackElement(){this._commandManager.popStackElement()}pushEOL(a){if(+("\n"!==this.getEOL())!==a)try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),null===this._initialUndoRedoSnapshot&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEOL(a)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_validateEditOperation(a){return a instanceof w.Wo?a:new w.Wo(a.identifier||null,this.validateRange(a.range),a.text,a.forceMoveMarkers||!1,a.isAutoWhitespaceEdit||!1,a._isTracked||!1)}_validateEditOperations(a){let b=[];for(let c=0,d=a.length;c<d;c++)b[c]=this._validateEditOperation(a[c]);return b}pushEditOperations(a,b,c,d,e){try{return this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._pushEditOperations(a,this._validateEditOperations(b),c,d,e)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_pushEditOperations(a,b,c,d,e){if(this._options.trimAutoWhitespace&&this._trimAutoWhitespaceLines){let c=b.map(a=>({range:this.validateRange(a.range),text:a.text})),d=!0;if(a)for(let b=0,e=a.length;b<e;b++){let e=a[b],f=!1;for(let a=0,b=c.length;a<b;a++){let b=c[a].range,d=b.startLineNumber>e.endLineNumber,g=e.startLineNumber>b.endLineNumber;if(!d&&!g){f=!0;break}}if(!f){d=!1;break}}if(d)for(let a=0,d=this._trimAutoWhitespaceLines.length;a<d;a++){let d=this._trimAutoWhitespaceLines[a],e=this.getLineMaxColumn(d),f=!0;for(let a=0,b=c.length;a<b;a++){let b=c[a].range,g=c[a].text;if(!(d<b.startLineNumber||d>b.endLineNumber||d===b.startLineNumber&&b.startColumn===e&&b.isEmpty()&&g&&g.length>0&&"\n"===g.charAt(0))&&(!(d===b.startLineNumber&&1===b.startColumn&&b.isEmpty())||!g||!(g.length>0)||"\n"!==g.charAt(g.length-1))){f=!1;break}}if(f){let a=new r.Q(d,1,d,e);b.push(new w.Wo(null,a,null,!1,!1,!1))}}this._trimAutoWhitespaceLines=null}return null===this._initialUndoRedoSnapshot&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEditOperation(a,b,c,d,e)}_applyUndo(a,b,c,d){let e=a.map(a=>{let b=this.getPositionAt(a.newPosition),c=this.getPositionAt(a.newEnd);return{range:new r.Q(b.lineNumber,b.column,c.lineNumber,c.column),text:a.oldText}});this._applyUndoRedoEdits(e,b,!0,!1,c,d)}_applyRedo(a,b,c,d){let e=a.map(a=>{let b=this.getPositionAt(a.oldPosition),c=this.getPositionAt(a.oldEnd);return{range:new r.Q(b.lineNumber,b.column,c.lineNumber,c.column),text:a.newText}});this._applyUndoRedoEdits(e,b,!1,!0,c,d)}_applyUndoRedoEdits(a,b,c,d,e,f){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._isUndoing=c,this._isRedoing=d,this.applyEdits(a,!1),this.setEOL(b),this._overwriteAlternativeVersionId(e)}finally{this._isUndoing=!1,this._isRedoing=!1,this._eventEmitter.endDeferredEmit(f),this._onDidChangeDecorations.endDeferredEmit()}}applyEdits(a,b,c){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit();let d=this._validateEditOperations(a);return this._doApplyEdits(d,b??!1,c??bR.dg.applyEdits())}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_doApplyEdits(a,b,c){let d=this._buffer.getLineCount(),e=this._buffer.applyEdits(a,this._options.trimAutoWhitespace,b),f=this._buffer.getLineCount(),g=e.changes;if(this._trimAutoWhitespaceLines=e.trimAutoWhitespaceLineNumbers,0!==g.length){for(let a=0,b=g.length;a<b;a++){let b=g[a];this._decorationsTree.acceptReplace(b.rangeOffset,b.rangeLength,b.text.length,b.forceMoveMarkers)}let a=[];this._increaseVersionId();let b=d;for(let c=0,d=g.length;c<d;c++){let d=g[c],[e]=(0,o.W)(d.text);this._onDidChangeDecorations.fire();let i=d.range.startLineNumber,j=d.range.endLineNumber,k=j-i,l=Math.min(k,e),m=e-k,n=f-b-m+i,p=n+e,r=this._decorationsTree.getInjectedTextInInterval(this,this.getOffsetAt(new q.y(n,1)),this.getOffsetAt(new q.y(p,this.getLineMaxColumn(p))),0),s=bO.uK.fromDecorations(r),t=new h.j3(s);for(let b=l;b>=0;b--){let c=i+b,d=n+b;t.takeFromEndWhile(a=>a.lineNumber>d);let e=t.takeFromEndWhile(a=>a.lineNumber===d);a.push(new bO.U0(c,this.getLineContent(d),e))}if(l<k){let b=i+l;a.push(new bO.E$(b+1,j))}if(l<e){let c=new h.j3(s),d=i+l,g=e-l,j=f-b-g+d+1,k=[],m=[];for(let a=0;a<g;a++){let b=j+a;m[a]=this.getLineContent(b),c.takeWhile(a=>a.lineNumber<b),k[a]=c.takeWhile(a=>a.lineNumber===b)}a.push(new bO.bg(d+1,i+e,m,k))}b+=m}this._emitContentChangedEvent(new bO.HP(a,this.getVersionId(),this._isUndoing,this._isRedoing),{changes:g,eol:this._buffer.getEOL(),isEolChange:!1,versionId:this.getVersionId(),isUndoing:this._isUndoing,isRedoing:this._isRedoing,isFlush:!1,detailedReasons:[c],detailedReasonsChangeLengths:[g.length]})}return null===e.reverseEdits?void 0:e.reverseEdits}undo(){return this._undoRedoService.undo(this.uri)}canUndo(){return this._undoRedoService.canUndo(this.uri)}redo(){return this._undoRedoService.redo(this.uri)}canRedo(){return this._undoRedoService.canRedo(this.uri)}handleBeforeFireDecorationsChangedEvent(a,b,c){if(a&&a.size>0){let b=Array.from(a).map(a=>new bO.U0(a,this.getLineContent(a),this._getInjectedTextInLine(a)));this._onDidChangeInjectedText.fire(new bO.vn(b))}if(b&&b.size>0){let a=Array.from(b).map(a=>new bO.Nw(a.ownerId,a.decorationId,a.lineNumber,a.lineHeight));this._onDidChangeLineHeight.fire(new bO.zq(a))}if(c&&c.size>0){let a=Array.from(c).map(a=>new bO.vD(a.ownerId,a.lineNumber));this._onDidChangeFont.fire(new bO.dT(a))}}changeDecorations(a,b=0){this._assertNotDisposed();try{return this._onDidChangeDecorations.beginDeferredEmit(),this._changeDecorations(b,a)}finally{this._onDidChangeDecorations.endDeferredEmit()}}_changeDecorations(a,b){let c={addDecoration:(b,c)=>this._deltaDecorationsImpl(a,[],[{range:b,options:c}])[0],changeDecoration:(b,c)=>{this._changeDecorationImpl(a,b,c)},changeDecorationOptions:(b,c)=>{this._changeDecorationOptionsImpl(a,b,b8(c))},removeDecoration:b=>{this._deltaDecorationsImpl(a,[b],[])},deltaDecorations:(b,c)=>0===b.length&&0===c.length?[]:this._deltaDecorationsImpl(a,b,c)},d=null;try{d=b(c)}catch(a){(0,j.dz)(a)}return c.addDecoration=bW,c.changeDecoration=bW,c.changeDecorationOptions=bW,c.removeDecoration=bW,c.deltaDecorations=bW,d}deltaDecorations(a,b,c=0){if(this._assertNotDisposed(),a||(a=[]),0===a.length&&0===b.length)return[];try{return this._deltaDecorationCallCnt++,this._deltaDecorationCallCnt>1&&(console.warn("Invoking deltaDecorations recursively could lead to leaking decorations."),(0,j.dz)(Error("Invoking deltaDecorations recursively could lead to leaking decorations."))),this._onDidChangeDecorations.beginDeferredEmit(),this._deltaDecorationsImpl(c,a,b)}finally{this._onDidChangeDecorations.endDeferredEmit(),this._deltaDecorationCallCnt--}}_getTrackedRange(a){return this.getDecorationRange(a)}_setTrackedRange(a,b,c){let d=a?this._decorations[a]:null;if(!d)return b?this._deltaDecorationsImpl(0,[],[{range:b,options:b7[c]}],!0)[0]:null;if(!b)return this._decorationsTree.delete(d),delete this._decorations[d.id],null;let e=this._validateRangeRelaxedNoAllocations(b),f=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),g=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);return this._decorationsTree.delete(d),d.reset(this.getVersionId(),f,g,e),d.setOptions(b7[c]),this._decorationsTree.insert(d),d.id}removeAllDecorationsWithOwnerId(a){if(this._isDisposed)return;let b=this._decorationsTree.collectNodesFromOwner(a);for(let a=0,c=b.length;a<c;a++){let c=b[a];this._decorationsTree.delete(c),delete this._decorations[c.id]}}getDecorationOptions(a){let b=this._decorations[a];return b?b.options:null}getDecorationRange(a){let b=this._decorations[a];return b?this._decorationsTree.getNodeRange(this,b):null}getLineDecorations(a,b=0,c=!1,d=!1){return a<1||a>this.getLineCount()?[]:this.getLinesDecorations(a,a,b,c,d)}getLinesDecorations(a,b,c=0,d=!1,e=!1,f=!1){let g=this.getLineCount(),i=Math.min(g,Math.max(1,a)),j=Math.min(g,Math.max(1,b)),k=this.getLineMaxColumn(j),l=new r.Q(i,1,j,k),m=this._getDecorationsInRange(l,c,d,e,f);return(0,h.E4)(m,this._decorationProvider.getDecorationsInRange(l,c,d)),m}getDecorationsInRange(a,b=0,c=!1,d=!1,e=!1,f=!1){let g=this.validateRange(a),i=this._getDecorationsInRange(g,b,c,d,f);return(0,h.E4)(i,this._decorationProvider.getDecorationsInRange(g,b,c,e)),i}getOverviewRulerDecorations(a=0,b=!1,c=!1){return this._decorationsTree.getAll(this,a,b,c,!0,!1)}getInjectedTextDecorations(a=0){return this._decorationsTree.getAllInjectedText(this,a)}getCustomLineHeightsDecorations(a=0){return this._decorationsTree.getAllCustomLineHeights(this,a)}_getInjectedTextInLine(a){let b=this._buffer.getOffsetAt(a,1),c=b+this._buffer.getLineLength(a),d=this._decorationsTree.getInjectedTextInInterval(this,b,c,0);return bO.uK.fromDecorations(d).filter(b=>b.lineNumber===a)}getFontDecorationsInRange(a,b=0){let c=this._buffer.getOffsetAt(a.startLineNumber,a.startColumn),d=this._buffer.getOffsetAt(a.endLineNumber,a.endColumn);return this._decorationsTree.getFontDecorationsInInterval(this,c,d,b)}getAllDecorations(a=0,b=!1,c=!1){let d=this._decorationsTree.getAll(this,a,b,c,!1,!1);return d.concat(this._decorationProvider.getAllDecorations(a,b))}getAllMarginDecorations(a=0){return this._decorationsTree.getAll(this,a,!1,!1,!1,!0)}_getDecorationsInRange(a,b,c,d,e){let f=this._buffer.getOffsetAt(a.startLineNumber,a.startColumn),g=this._buffer.getOffsetAt(a.endLineNumber,a.endColumn);return this._decorationsTree.getAllInInterval(this,f,g,b,c,d,e)}getRangeAt(a,b){return this._buffer.getRangeAt(a,b-a)}_changeDecorationImpl(a,b,c){let d=this._decorations[b];if(!d)return;if(d.options.after){let a=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(d.options.before){let a=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}if(null!==d.options.lineHeight){let c=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,b,c.startLineNumber,null)}if(d.options.affectsFont){let c=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByFontChange(a,d.id,c.startLineNumber)}let e=this._validateRangeRelaxedNoAllocations(c),f=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),g=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);this._decorationsTree.delete(d),d.reset(this.getVersionId(),f,g,e),this._decorationsTree.insert(d),this._onDidChangeDecorations.checkAffectedAndFire(d.options),d.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.endLineNumber),d.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.startLineNumber),null!==d.options.lineHeight&&this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,b,e.startLineNumber,d.options.lineHeight),d.options.affectsFont&&this._onDidChangeDecorations.recordLineAffectedByFontChange(a,d.id,e.startLineNumber)}_changeDecorationOptionsImpl(a,b,c){var d;let e=this._decorations[b];if(!e)return;let f=!!e.options.overviewRuler&&!!e.options.overviewRuler.color,g=!!c.overviewRuler&&!!c.overviewRuler.color;if(this._onDidChangeDecorations.checkAffectedAndFire(e.options),this._onDidChangeDecorations.checkAffectedAndFire(c),e.options.after||c.after){let a=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(e.options.before||c.before){let a=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}if(null!==e.options.lineHeight||null!==c.lineHeight){let d=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,b,d.startLineNumber,c.lineHeight)}if(e.options.affectsFont||c.affectsFont){let c=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByFontChange(a,b,c.startLineNumber)}let h=(!!(d=c).after||!!d.before)!==b$(e);f!==g||h?(this._decorationsTree.delete(e),e.setOptions(c),this._decorationsTree.insert(e)):e.setOptions(c)}_deltaDecorationsImpl(a,b,c,d=!1){let e=this.getVersionId(),f=b.length,g=0,h=c.length,i=0;this._onDidChangeDecorations.beginDeferredEmit();try{let j=Array(h);for(;g<f||i<h;){let k=null;if(g<f){let c;do c=b[g++],k=this._decorations[c];while(!k&&g<f);if(k){if(k.options.after){let a=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(k.options.before){let a=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}if(null!==k.options.lineHeight){let b=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,c,b.startLineNumber,null)}if(k.options.affectsFont){let b=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByFontChange(a,c,b.startLineNumber)}this._decorationsTree.delete(k),d||this._onDidChangeDecorations.checkAffectedAndFire(k.options)}}if(i<h){if(!k){let a=++this._lastDecorationId,b=`${this._instanceId};${a}`;k=new ah(b,0,0),this._decorations[b]=k}let b=c[i],f=this._validateRangeRelaxedNoAllocations(b.range),g=b8(b.options),h=this._buffer.getOffsetAt(f.startLineNumber,f.startColumn),l=this._buffer.getOffsetAt(f.endLineNumber,f.endColumn);k.ownerId=a,k.reset(e,h,l,f),k.setOptions(g),k.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(f.endLineNumber),k.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(f.startLineNumber),null!==k.options.lineHeight&&this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,k.id,f.startLineNumber,k.options.lineHeight),k.options.affectsFont&&this._onDidChangeDecorations.recordLineAffectedByFontChange(a,k.id,f.startLineNumber),d||this._onDidChangeDecorations.checkAffectedAndFire(g),this._decorationsTree.insert(k),j[i]=k.id,i++}else k&&delete this._decorations[k.id]}return j}finally{this._onDidChangeDecorations.endDeferredEmit()}}getLanguageId(){return this.tokenization.getLanguageId()}setLanguage(a,b){"string"==typeof a?(this._languageSelectionListener.clear(),this._setLanguage(a,b)):(this._languageSelectionListener.value=a.onDidChange(()=>this._setLanguage(a.languageId,b)),this._setLanguage(a.languageId,b))}_setLanguage(a,b){this.tokenization.setLanguageId(a,b),this._languageService.requestRichLanguageFeatures(a)}getLanguageIdAtPosition(a,b){return this.tokenization.getLanguageIdAtPosition(a,b)}getWordAtPosition(a){return this._tokenizationTextModelPart.getWordAtPosition(a)}getWordUntilPosition(a){return this._tokenizationTextModelPart.getWordUntilPosition(a)}normalizePosition(a,b){return a}getLineIndentColumn(a){return bY(this.getLineContent(a))+1}toString(){return`TextModel(${this.uri.toString()})`}};function bY(a){let b=0;for(let c of a)if(" "===c||" "===c)b++;else break;return b}function bZ(a){return!!a.options.overviewRuler&&!!a.options.overviewRuler.color}function b$(a){return!!a.options.after||!!a.options.before}bX=g=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([bS(4,bP.$D),bS(5,u.L),bS(6,v.JZ),bS(7,bc._Y)],bX);class b_{constructor(){this._decorationsTree0=new aj,this._decorationsTree1=new aj,this._injectedTextDecorationsTree=new aj}ensureAllNodesHaveRanges(a){this.getAll(a,0,!1,!1,!1,!1)}_ensureNodesHaveRanges(a,b){for(let c of b)null===c.range&&(c.range=a.getRangeAt(c.cachedAbsoluteStart,c.cachedAbsoluteEnd));return b}getAllInInterval(a,b,c,d,e,f,g){let h=a.getVersionId(),i=this._intervalSearch(b,c,d,e,f,h,g);return this._ensureNodesHaveRanges(a,i)}_intervalSearch(a,b,c,d,e,f,g){let h=this._decorationsTree0.intervalSearch(a,b,c,d,e,f,g),i=this._decorationsTree1.intervalSearch(a,b,c,d,e,f,g),j=this._injectedTextDecorationsTree.intervalSearch(a,b,c,d,e,f,g);return h.concat(i).concat(j)}getInjectedTextInInterval(a,b,c,d){let e=a.getVersionId(),f=this._injectedTextDecorationsTree.intervalSearch(b,c,d,!1,!1,e,!1);return this._ensureNodesHaveRanges(a,f).filter(a=>a.options.showIfCollapsed||!a.range.isEmpty())}getFontDecorationsInInterval(a,b,c,d){let e=a.getVersionId(),f=this._decorationsTree0.intervalSearch(b,c,d,!1,!1,e,!1);return this._ensureNodesHaveRanges(a,f).filter(a=>a.options.affectsFont)}getAllInjectedText(a,b){let c=a.getVersionId(),d=this._injectedTextDecorationsTree.search(b,!1,!1,c,!1);return this._ensureNodesHaveRanges(a,d).filter(a=>a.options.showIfCollapsed||!a.range.isEmpty())}getAllCustomLineHeights(a,b){let c=a.getVersionId(),d=this._search(b,!1,!1,!1,c,!1);return this._ensureNodesHaveRanges(a,d).filter(a=>"number"==typeof a.options.lineHeight)}getAll(a,b,c,d,e,f){let g=a.getVersionId(),h=this._search(b,c,d,e,g,f);return this._ensureNodesHaveRanges(a,h)}_search(a,b,c,d,e,f){if(d)return this._decorationsTree1.search(a,b,c,e,f);{let d=this._decorationsTree0.search(a,b,c,e,f),g=this._decorationsTree1.search(a,b,c,e,f),h=this._injectedTextDecorationsTree.search(a,b,c,e,f);return d.concat(g).concat(h)}}collectNodesFromOwner(a){let b=this._decorationsTree0.collectNodesFromOwner(a),c=this._decorationsTree1.collectNodesFromOwner(a),d=this._injectedTextDecorationsTree.collectNodesFromOwner(a);return b.concat(c).concat(d)}collectNodesPostOrder(){let a=this._decorationsTree0.collectNodesPostOrder(),b=this._decorationsTree1.collectNodesPostOrder(),c=this._injectedTextDecorationsTree.collectNodesPostOrder();return a.concat(b).concat(c)}insert(a){b$(a)?this._injectedTextDecorationsTree.insert(a):bZ(a)?this._decorationsTree1.insert(a):this._decorationsTree0.insert(a)}delete(a){b$(a)?this._injectedTextDecorationsTree.delete(a):bZ(a)?this._decorationsTree1.delete(a):this._decorationsTree0.delete(a)}getNodeRange(a,b){let c=a.getVersionId();return b.cachedVersionId!==c&&this._resolveNode(b,c),null===b.range&&(b.range=a.getRangeAt(b.cachedAbsoluteStart,b.cachedAbsoluteEnd)),b.range}_resolveNode(a,b){b$(a)?this._injectedTextDecorationsTree.resolveNode(a,b):bZ(a)?this._decorationsTree1.resolveNode(a,b):this._decorationsTree0.resolveNode(a,b)}acceptReplace(a,b,c,d){this._decorationsTree0.acceptReplace(a,b,c,d),this._decorationsTree1.acceptReplace(a,b,c,d),this._injectedTextDecorationsTree.acceptReplace(a,b,c,d)}}function b0(a){return a.replace(/[^a-z0-9\-_]/gi," ")}class b1{constructor(a){this.color=a.color||"",this.darkColor=a.darkColor||""}}class b2 extends b1{constructor(a){super(a),this._resolvedColor=null,this.position="number"==typeof a.position?a.position:w.A5.Center}getColor(a){return this._resolvedColor||("light"!==a.type&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,a):this._resolvedColor=this._resolveColor(this.color,a)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=null}_resolveColor(a,b){if("string"==typeof a)return a;let c=a?b.getColor(a.id):null;return c?c.toString():""}}class b3{constructor(a){this.position=a?.position??w.ZS.Center,this.persistLane=a?.persistLane}}class b4 extends b1{constructor(a){super(a),this.position=a.position,this.sectionHeaderStyle=a.sectionHeaderStyle??null,this.sectionHeaderText=a.sectionHeaderText??null}getColor(a){return this._resolvedColor||("light"!==a.type&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,a):this._resolvedColor=this._resolveColor(this.color,a)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=void 0}_resolveColor(a,b){return"string"==typeof a?i.Q1.fromHex(a):b.getColor(a.id)}}class b5{static from(a){return a instanceof b5?a:new b5(a)}constructor(a){this.content=a.content||"",this.tokens=a.tokens??null,this.inlineClassName=a.inlineClassName||null,this.inlineClassNameAffectsLetterSpacing=a.inlineClassNameAffectsLetterSpacing||!1,this.attachedData=a.attachedData||null,this.cursorStops=a.cursorStops||null}}class b6{static register(a){return new b6(a)}static createDynamic(a){return new b6(a)}constructor(a){this.description=a.description,this.blockClassName=a.blockClassName?b0(a.blockClassName):null,this.blockDoesNotCollapse=a.blockDoesNotCollapse??null,this.blockIsAfterEnd=a.blockIsAfterEnd??null,this.blockPadding=a.blockPadding??null,this.stickiness=a.stickiness||0,this.zIndex=a.zIndex||0,this.className=a.className?b0(a.className):null,this.shouldFillLineOnLineBreak=a.shouldFillLineOnLineBreak??null,this.hoverMessage=a.hoverMessage||null,this.glyphMarginHoverMessage=a.glyphMarginHoverMessage||null,this.lineNumberHoverMessage=a.lineNumberHoverMessage||null,this.isWholeLine=a.isWholeLine||!1,this.lineHeight=a.lineHeight?Math.min(a.lineHeight,300):null,this.fontSize=a.fontSize||null,this.affectsFont=!!a.fontSize||!!a.fontFamily||!!a.fontWeight||!!a.fontStyle,this.showIfCollapsed=a.showIfCollapsed||!1,this.collapseOnReplaceEdit=a.collapseOnReplaceEdit||!1,this.overviewRuler=a.overviewRuler?new b2(a.overviewRuler):null,this.minimap=a.minimap?new b4(a.minimap):null,this.glyphMargin=a.glyphMarginClassName?new b3(a.glyphMargin):null,this.glyphMarginClassName=a.glyphMarginClassName?b0(a.glyphMarginClassName):null,this.linesDecorationsClassName=a.linesDecorationsClassName?b0(a.linesDecorationsClassName):null,this.lineNumberClassName=a.lineNumberClassName?b0(a.lineNumberClassName):null,this.linesDecorationsTooltip=a.linesDecorationsTooltip?m.jy(a.linesDecorationsTooltip):null,this.firstLineDecorationClassName=a.firstLineDecorationClassName?b0(a.firstLineDecorationClassName):null,this.marginClassName=a.marginClassName?b0(a.marginClassName):null,this.inlineClassName=a.inlineClassName?b0(a.inlineClassName):null,this.inlineClassNameAffectsLetterSpacing=a.inlineClassNameAffectsLetterSpacing||!1,this.beforeContentClassName=a.beforeContentClassName?b0(a.beforeContentClassName):null,this.afterContentClassName=a.afterContentClassName?b0(a.afterContentClassName):null,this.after=a.after?b5.from(a.after):null,this.before=a.before?b5.from(a.before):null,this.hideInCommentTokens=a.hideInCommentTokens??!1,this.hideInStringTokens=a.hideInStringTokens??!1,this.textDirection=a.textDirection??null}}b6.EMPTY=b6.register({description:"empty"});let b7=[b6.register({description:"tracked-range-always-grows-when-typing-at-edges",stickiness:0}),b6.register({description:"tracked-range-never-grows-when-typing-at-edges",stickiness:1}),b6.register({description:"tracked-range-grows-only-when-typing-before",stickiness:2}),b6.register({description:"tracked-range-grows-only-when-typing-after",stickiness:3})];function b8(a){return a instanceof b6?a:b6.createDynamic(a)}class b9{static toKey(a){return`${a.ownerId};${a.decorationId};${a.lineNumber}`}constructor(a,b,c,d){this.ownerId=a,this.decorationId=b,this.lineNumber=c,this.lineHeight=d}}class ca{static toKey(a){return`${a.ownerId};${a.decorationId};${a.lineNumber}`}constructor(a,b,c){this.ownerId=a,this.decorationId=b,this.lineNumber=c}}class cb extends l.jG{constructor(a){super(),this.handleBeforeFire=a,this._actual=this._register(new k.vl),this.event=this._actual.event,this._affectedInjectedTextLines=null,this._affectedLineHeights=null,this._affectedFontLines=null,this._deferredCnt=0,this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._affectsLineNumber=!1}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(){this._deferredCnt--,0===this._deferredCnt&&(this._shouldFireDeferred&&this.doFire(),this._affectedInjectedTextLines?.clear(),this._affectedInjectedTextLines=null,this._affectedLineHeights?.clear(),this._affectedLineHeights=null,this._affectedFontLines?.clear(),this._affectedFontLines=null)}recordLineAffectedByInjectedText(a){this._affectedInjectedTextLines||(this._affectedInjectedTextLines=new Set),this._affectedInjectedTextLines.add(a)}recordLineAffectedByLineHeightChange(a,b,c,d){this._affectedLineHeights||(this._affectedLineHeights=new bQ.iD([],b9.toKey)),this._affectedLineHeights.add(new b9(a,b,c,d))}recordLineAffectedByFontChange(a,b,c){this._affectedFontLines||(this._affectedFontLines=new bQ.iD([],ca.toKey)),this._affectedFontLines.add(new ca(a,b,c))}checkAffectedAndFire(a){this._affectsMinimap||=!!a.minimap?.position,this._affectsOverviewRuler||=!!a.overviewRuler?.color,this._affectsGlyphMargin||=!!a.glyphMarginClassName,this._affectsLineNumber||=!!a.lineNumberClassName,this.tryFire()}fire(){this._affectsMinimap=!0,this._affectsOverviewRuler=!0,this._affectsGlyphMargin=!0,this.tryFire()}tryFire(){0===this._deferredCnt?this.doFire():this._shouldFireDeferred=!0}doFire(){this.handleBeforeFire(this._affectedInjectedTextLines,this._affectedLineHeights,this._affectedFontLines);let a={affectsMinimap:this._affectsMinimap,affectsOverviewRuler:this._affectsOverviewRuler,affectsGlyphMargin:this._affectsGlyphMargin,affectsLineNumber:this._affectsLineNumber};this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._actual.fire(a)}}class cc extends l.jG{constructor(){super(),this._fastEmitter=this._register(new k.vl),this.fastEvent=this._fastEmitter.event,this._slowEmitter=this._register(new k.vl),this.slowEvent=this._slowEmitter.event,this._deferredCnt=0,this._deferredEvent=null}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(a=null){if(this._deferredCnt--,0===this._deferredCnt&&null!==this._deferredEvent){this._deferredEvent.rawContentChangedEvent.resultingSelection=a;let b=this._deferredEvent;this._deferredEvent=null,this._fastEmitter.fire(b),this._slowEmitter.fire(b)}}fire(a){this._deferredCnt>0?this._deferredEvent?this._deferredEvent=this._deferredEvent.merge(a):this._deferredEvent=a:(this._fastEmitter.fire(a),this._slowEmitter.fire(a))}}},32532:(a,b,c)=>{"use strict";c.d(b,{iE:()=>e,rW:()=>f});class d{constructor(a,b,c){this._colorZoneBrand=void 0,this.from=0|a,this.to=0|b,this.colorId=0|c}static compare(a,b){return a.colorId===b.colorId?a.from===b.from?a.to-b.to:a.from-b.from:a.colorId-b.colorId}}class e{constructor(a,b,c,d){this._overviewRulerZoneBrand=void 0,this.startLineNumber=a,this.endLineNumber=b,this.heightInLines=c,this.color=d,this._colorZone=null}static compare(a,b){if(a.color===b.color)return a.startLineNumber===b.startLineNumber?a.heightInLines===b.heightInLines?a.endLineNumber-b.endLineNumber:a.heightInLines-b.heightInLines:a.startLineNumber-b.startLineNumber;return a.color<b.color?-1:1}setColorZone(a){this._colorZone=a}getColorZones(){return this._colorZone}}class f{constructor(a){this._getVerticalOffsetForLine=a,this._zones=[],this._colorZonesInvalid=!1,this._lineHeight=0,this._domWidth=0,this._domHeight=0,this._outerHeight=0,this._pixelRatio=1,this._lastAssignedId=0,this._color2Id=Object.create(null),this._id2Color=[]}getId2Color(){return this._id2Color}setZones(a){this._zones=a,this._zones.sort(e.compare)}setLineHeight(a){return this._lineHeight!==a&&(this._lineHeight=a,this._colorZonesInvalid=!0,!0)}setPixelRatio(a){this._pixelRatio=a,this._colorZonesInvalid=!0}getDOMWidth(){return this._domWidth}getCanvasWidth(){return this._domWidth*this._pixelRatio}setDOMWidth(a){return this._domWidth!==a&&(this._domWidth=a,this._colorZonesInvalid=!0,!0)}getDOMHeight(){return this._domHeight}getCanvasHeight(){return this._domHeight*this._pixelRatio}setDOMHeight(a){return this._domHeight!==a&&(this._domHeight=a,this._colorZonesInvalid=!0,!0)}getOuterHeight(){return this._outerHeight}setOuterHeight(a){return this._outerHeight!==a&&(this._outerHeight=a,this._colorZonesInvalid=!0,!0)}resolveColorZones(){let a=this._colorZonesInvalid,b=Math.floor(this._lineHeight),c=Math.floor(this.getCanvasHeight()),e=c/Math.floor(this._outerHeight),f=Math.floor(4*this._pixelRatio/2),g=[];for(let h=0,i=this._zones.length;h<i;h++){let i=this._zones[h];if(!a){let a=i.getColorZones();if(a){g.push(a);continue}}let j=this._getVerticalOffsetForLine(i.startLineNumber),k=0===i.heightInLines?this._getVerticalOffsetForLine(i.endLineNumber)+b:j+i.heightInLines*b,l=Math.floor(e*j),m=Math.floor(e*k),n=Math.floor((l+m)/2),o=m-n;o<f&&(o=f),n-o<0&&(n=o),n+o>c&&(n=c-o);let p=i.color,q=this._color2Id[p];q||(q=++this._lastAssignedId,this._color2Id[p]=q,this._id2Color[q]=p);let r=new d(n-o,n+o,q);i.setColorZone(r),g.push(r)}return this._colorZonesInvalid=!1,g.sort(d.compare),g}}},32682:(a,b,c)=>{"use strict";c.d(b,{x:()=>h});var d=c(63048),e=c(77747);c(21790);var f=c(40201),g=c(87445);class h extends f.jG{constructor(a,b,c){super(),this.options=b,this.styles=c,this.count=0,this.hover=this._register(new f.HE),this.element=(0,d.BC)(a,(0,d.$)(".monaco-count-badge")),this._register((0,f.s)(()=>a.removeChild(this.element))),this.countFormat=this.options.countFormat||"{0}",this.titleFormat=this.options.titleFormat||"",this.setCount(this.options.count||0),this.updateHover()}setCount(a){this.count=a,this.render()}setTitleFormat(a){this.titleFormat=a,this.updateHover(),this.render()}updateHover(){""===this.titleFormat||this.hover.value?""===this.titleFormat&&this.hover.value&&(this.hover.value=void 0):this.hover.value=(0,g.i)().setupDelayedHoverAtMouse(this.element,()=>({content:(0,e.GP)(this.titleFormat,this.count),appearance:{compact:!0}}))}render(){this.element.textContent=(0,e.GP)(this.countFormat,this.count),this.element.style.backgroundColor=this.styles.badgeBackground??"",this.element.style.color=this.styles.badgeForeground??"",this.styles.badgeBorder&&(this.element.style.border=`1px solid ${this.styles.badgeBorder}`)}}},32801:(a,b,c)=>{"use strict";c.d(b,{BG:()=>f,IO:()=>h,Y:()=>g,eh:()=>e,pj:()=>j,qN:()=>i});class d{constructor(a,b){this._restrictedRenderingContextBrand=void 0,this._viewLayout=a,this.viewportData=b,this.scrollWidth=this._viewLayout.getScrollWidth(),this.scrollHeight=this._viewLayout.getScrollHeight(),this.visibleRange=this.viewportData.visibleRange,this.bigNumbersDelta=this.viewportData.bigNumbersDelta;const c=this._viewLayout.getCurrentViewport();this.scrollTop=c.top,this.scrollLeft=c.left,this.viewportWidth=c.width,this.viewportHeight=c.height}getScrolledTopFromAbsoluteTop(a){return a-this.scrollTop}getVerticalOffsetForLineNumber(a,b){return this._viewLayout.getVerticalOffsetForLineNumber(a,b)}getVerticalOffsetAfterLineNumber(a,b){return this._viewLayout.getVerticalOffsetAfterLineNumber(a,b)}getLineHeightForLineNumber(a){return this._viewLayout.getLineHeightForLineNumber(a)}getDecorationsInViewport(){return this.viewportData.getDecorationsInViewport()}}class e extends d{constructor(a,b,c,d){super(a,b),this._renderingContextBrand=void 0,this._viewLines=c,this._viewLinesGpu=d}linesVisibleRangesForRange(a,b){let c=this._viewLines.linesVisibleRangesForRange(a,b);if(!this._viewLinesGpu)return c??null;let d=this._viewLinesGpu.linesVisibleRangesForRange(a,b);return c?d?c.concat(d).sort((a,b)=>a.lineNumber-b.lineNumber):c:d}visibleRangeForPosition(a){return this._viewLines.visibleRangeForPosition(a)??this._viewLinesGpu?.visibleRangeForPosition(a)??null}}class f{constructor(a,b,c,d){this.outsideRenderedLine=a,this.lineNumber=b,this.ranges=c,this.continuesOnNextLine=d}}class g{static from(a){let b=Array(a.length);for(let c=0,d=a.length;c<d;c++){let d=a[c];b[c]=new g(d.left,d.width)}return b}constructor(a,b){this._horizontalRangeBrand=void 0,this.left=Math.round(a),this.width=Math.round(b)}toString(){return`[${this.left},${this.width}]`}}class h{constructor(a,b){this._floatHorizontalRangeBrand=void 0,this.left=a,this.width=b}toString(){return`[${this.left},${this.width}]`}static compare(a,b){return a.left-b.left}}class i{constructor(a,b){this.outsideRenderedLine=a,this.originalLeft=b,this.left=Math.round(this.originalLeft)}}class j{constructor(a,b){this.outsideRenderedLine=a,this.ranges=b}}},33067:(a,b,c)=>{"use strict";c.d(b,{Y:()=>n});var d,e,f=c(77747),g=c(66064),h=c(52212),i=c(32263),j=c(62605),k=c(84834);let l=Object.create(null);function m(a,b){if(b<=0)return"";l[a]||(l[a]=["",a]);let c=l[a];for(let d=c.length;d<=b;d++)c[d]=c[d-1]+a;return c[b]}let n=e=class{static unshiftIndent(a,b,c,d,e){let f=g.A.visibleColumnFromColumn(a,b,c);if(e){let a=m(" ",d);return m(a,g.A.prevIndentTabStop(f,d)/d)}return m(" ",g.A.prevRenderTabStop(f,c)/c)}static shiftIndent(a,b,c,d,e){let f=g.A.visibleColumnFromColumn(a,b,c);if(e){let a=m(" ",d);return m(a,g.A.nextIndentTabStop(f,d)/d)}return m(" ",g.A.nextRenderTabStop(f,c)/c)}constructor(a,b,c){this._languageConfigurationService=c,this._opts=b,this._selection=a,this._selectionId=null,this._useLastEditRangeForCursorEndPosition=!1,this._selectionStartColumnStaysPut=!1}_addEditOperation(a,b,c){this._useLastEditRangeForCursorEndPosition?a.addTrackedEditOperation(b,c):a.addEditOperation(b,c)}getEditOperations(a,b){let c=this._selection.startLineNumber,d=this._selection.endLineNumber;1===this._selection.endColumn&&c!==d&&(d-=1);let{tabSize:i,indentSize:k,insertSpaces:l}=this._opts,n=c===d;if(this._opts.useTabStops){this._selection.isEmpty()&&/^\s*$/.test(a.getLineContent(c))&&(this._useLastEditRangeForCursorEndPosition=!0);let m=0,o=0;for(let p=c;p<=d;p++,m=o){let d;o=0;let q=a.getLineContent(p),r=f.HG(q);if((!this._opts.isUnshift||0!==q.length&&0!==r)&&(n||this._opts.isUnshift||0!==q.length)){if(-1===r&&(r=q.length),p>1&&g.A.visibleColumnFromColumn(q,r+1,i)%k!=0&&a.tokenization.isCheapToTokenize(p-1)){let b=(0,j.h)(this._opts.autoIndent,a,new h.Q(p-1,a.getLineMaxColumn(p-1),p-1,a.getLineMaxColumn(p-1)),this._languageConfigurationService);if(b){if(o=m,b.appendText)for(let a=0,c=b.appendText.length;a<c&&o<k;a++)if(32===b.appendText.charCodeAt(a))o++;else break;b.removeText&&(o=Math.max(0,o-b.removeText));for(let a=0;a<o&&0!==r&&32===q.charCodeAt(r-1);a++)r--}}(!this._opts.isUnshift||0!==r)&&(d=this._opts.isUnshift?e.unshiftIndent(q,r+1,i,k,l):e.shiftIndent(q,r+1,i,k,l),this._addEditOperation(b,new h.Q(p,1,p,r+1),d),p!==c||this._selection.isEmpty()||(this._selectionStartColumnStaysPut=this._selection.startColumn<=r+1))}}}else{!this._opts.isUnshift&&this._selection.isEmpty()&&0===a.getLineLength(c)&&(this._useLastEditRangeForCursorEndPosition=!0);let e=l?m(" ",k):" ";for(let g=c;g<=d;g++){let d=a.getLineContent(g),i=f.HG(d);if((!this._opts.isUnshift||0!==d.length&&0!==i)&&(n||this._opts.isUnshift||0!==d.length)&&(-1===i&&(i=d.length),!this._opts.isUnshift||0!==i))if(this._opts.isUnshift){i=Math.min(i,k);for(let a=0;a<i;a++)if(9===d.charCodeAt(a)){i=a+1;break}this._addEditOperation(b,new h.Q(g,1,g,i+1),"")}else this._addEditOperation(b,new h.Q(g,1,g,1),e),g!==c||this._selection.isEmpty()||(this._selectionStartColumnStaysPut=1===this._selection.startColumn)}}this._selectionId=b.trackSelection(this._selection)}computeCursorState(a,b){if(this._useLastEditRangeForCursorEndPosition){let a=b.getInverseEditOperations()[0];return new i.L(a.range.endLineNumber,a.range.endColumn,a.range.endLineNumber,a.range.endColumn)}let c=b.getTrackedSelection(this._selectionId);if(this._selectionStartColumnStaysPut){let a=this._selection.startColumn;return c.startColumn<=a?c:0===c.getDirection()?new i.L(c.startLineNumber,a,c.endLineNumber,c.endColumn):new i.L(c.endLineNumber,c.endColumn,c.startLineNumber,a)}return c}};n=e=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(d=k.JZ,function(a,b){d(a,b,2)})],n)},33196:()=>{},33340:(a,b,c)=>{"use strict";c.d(b,{f:()=>k});var d=c(28492),e=c(19254),f=c(42724),g=c(53764),h=c(40201),i=c(57832);class j{constructor(){this._coreKeybindings=new i.w,this._extensionKeybindings=[],this._cachedMergedKeybindings=null}static bindToCurrentPlatform(a){if(1===e.OS){if(a&&a.win)return a.win}else if(2===e.OS){if(a&&a.mac)return a.mac}else if(a&&a.linux)return a.linux;return a}registerKeybindingRule(a){let b=j.bindToCurrentPlatform(a),c=new h.Cm;if(b&&b.primary){let f=(0,d.Zv)(b.primary,e.OS);f&&c.add(this._registerDefaultKeybinding(f,a.id,a.args,a.weight,0,a.when))}if(b&&Array.isArray(b.secondary))for(let f=0,g=b.secondary.length;f<g;f++){let g=b.secondary[f],h=(0,d.Zv)(g,e.OS);h&&c.add(this._registerDefaultKeybinding(h,a.id,a.args,a.weight,-f-1,a.when))}return c}registerCommandAndKeybindingRule(a){return(0,h.qE)(this.registerKeybindingRule(a),f.w.registerCommand(a))}_registerDefaultKeybinding(a,b,c,d,e,f){let g=this._coreKeybindings.push({keybinding:a,command:b,commandArgs:c,when:f,weight1:d,weight2:e,extensionId:null,isBuiltinExtension:!1});return this._cachedMergedKeybindings=null,(0,h.s)(()=>{g(),this._cachedMergedKeybindings=null})}getDefaultKeybindings(){return this._cachedMergedKeybindings||(this._cachedMergedKeybindings=Array.from(this._coreKeybindings).concat(this._extensionKeybindings),this._cachedMergedKeybindings.sort(l)),this._cachedMergedKeybindings.slice(0)}}let k=new j;function l(a,b){if(a.weight1!==b.weight1)return a.weight1-b.weight1;if(a.command&&b.command){if(a.command<b.command)return -1;if(a.command>b.command)return 1}return a.weight2-b.weight2}g.O.add("platform.keybindingsRegistry",k)},33897:()=>{},33919:()=>{},34546:(a,b,c)=>{"use strict";c.d(b,{b6:()=>f,of:()=>h});var d=c(35199),e=c(39537);function f(a,b){var c,f;return c=[a],f=b,(0,d.e)()&&(0,e.yQ)("reload",a=>(0,d.O)(({oldExports:b})=>{if([...Object.values(b)].some(a=>c.includes(a)))return b=>(a(void 0),!0)})).read(f),a}let g=new Map;function h(a){if(!(0,d.e)())return(0,e.lk)(a);let b=a.name,c=g.get(b);return c?setTimeout(()=>{c.set(a,void 0)},0):(c=(0,e.FY)(b,a),g.set(b,c)),c}},35199:(a,b,c)=>{"use strict";function d(){return!1}function e(a){return{dispose(){}}}c.d(b,{O:()=>e,e:()=>d})},35223:(a,b,c)=>{"use strict";function d(a,b,c){return Math.min(Math.max(a,b),c)}c.d(b,{Uq:()=>e,mu:()=>f,qE:()=>d});class e{constructor(){this._n=1,this._val=0}update(a){return this._val=this._val+(a-this._val)/this._n,this._n+=1,this._val}get value(){return this._val}}class f{constructor(a){this._n=0,this._val=0,this._values=[],this._index=0,this._sum=0,this._values=Array(a),this._values.fill(0,0,a)}update(a){let b=this._values[this._index];return this._values[this._index]=a,this._index=(this._index+1)%this._values.length,this._sum-=b,this._sum+=a,this._n<this._values.length&&(this._n+=1),this._val=this._sum/this._n,this._val}get value(){return this._val}}},35479:(a,b,c)=>{"use strict";c.d(b,{x:()=>d});class d{static getLanguageId(a){return(255&a)>>>0}static getTokenType(a){return(768&a)>>>8}static containsBalancedBrackets(a){return(1024&a)!=0}static getFontStyle(a){return(30720&a)>>>11}static getForeground(a){return(0xff8000&a)>>>15}static getBackground(a){return(0xff000000&a)>>>24}static getClassNameFromMetadata(a){let b="mtk"+this.getForeground(a),c=this.getFontStyle(a);return 1&c&&(b+=" mtki"),2&c&&(b+=" mtkb"),4&c&&(b+=" mtku"),8&c&&(b+=" mtks"),b}static getInlineStyleFromMetadata(a,b){let c=this.getForeground(a),d=this.getFontStyle(a),e=`color: ${b[c]};`;1&d&&(e+="font-style: italic;"),2&d&&(e+="font-weight: bold;");let f="";return 4&d&&(f+=" underline"),8&d&&(f+=" line-through"),f&&(e+=`text-decoration:${f};`),e}static getPresentationFromMetadata(a){let b=this.getForeground(a),c=this.getFontStyle(a);return{foreground:b,italic:!!(1&c),bold:!!(2&c),underline:!!(4&c),strikethrough:!!(8&c)}}}},36046:(a,b,c)=>{"use strict";c.d(b,{Qi:()=>i,XO:()=>e,bs:()=>j});var d,e,f=c(3457);let g=Object.freeze(function(a,b){let c=setTimeout(a.bind(b),0);return{dispose(){clearTimeout(c)}}});(d=e||(e={})).isCancellationToken=function(a){return a===d.None||a===d.Cancelled||a instanceof h||!!a&&"object"==typeof a&&"boolean"==typeof a.isCancellationRequested&&"function"==typeof a.onCancellationRequested},d.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:f.Jh.None}),d.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:g});class h{constructor(){this._isCancelled=!1,this._emitter=null}cancel(){!this._isCancelled&&(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?g:(this._emitter||(this._emitter=new f.vl),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}}class i{constructor(a){this._token=void 0,this._parentListener=void 0,this._parentListener=a&&a.onCancellationRequested(this.cancel,this)}get token(){return this._token||(this._token=new h),this._token}cancel(){this._token?this._token instanceof h&&this._token.cancel():this._token=e.Cancelled}dispose(a=!1){a&&this.cancel(),this._parentListener?.dispose(),this._token?this._token instanceof h&&this._token.dispose():this._token=e.None}}function j(a){let b=new i;return a.add({dispose(){b.cancel()}}),b.token}},36695:()=>{},36730:()=>{},36794:(a,b,c)=>{"use strict";c.d(b,{N:()=>v});var d,e,f=c(63048),g=c(39331),h=c(32665),i=c(5379),j=c(40201),k=c(39537),l=c(10322),m=c(98896),n=c(76302),o=c(21652),p=c(11035),q=c(95554),r=c(52212),s=c(98578),t=c(96191),u=c(94157);let v=class extends j.jG{static{e=this}static{this._breadcrumbsSourceFactory=(0,k.FY)(e,()=>({dispose(){},getBreadcrumbItems:(a,b)=>[]}))}static setBreadcrumbsSourceFactory(a){this._breadcrumbsSourceFactory.set(a,void 0)}get isUpdatingHiddenAreas(){return this._isUpdatingHiddenAreas}constructor(a,b,c,d){super(),this._editors=a,this._diffModel=b,this._options=c,this._instantiationService=d,this._modifiedOutlineSource=(0,k.a0)(this,a=>{let b=this._editors.modifiedModel.read(a),c=e._breadcrumbsSourceFactory.read(a);return b&&c?c(b,this._instantiationService):void 0}),this._isUpdatingHiddenAreas=!1,this._register(this._editors.original.onDidChangeCursorPosition(a=>{if(1===a.reason)return;let b=this._diffModel.get();(0,k.Rn)(a=>{for(let c of this._editors.original.getSelections()||[])b?.ensureOriginalLineIsVisible(c.getStartPosition().lineNumber,0,a),b?.ensureOriginalLineIsVisible(c.getEndPosition().lineNumber,0,a)})})),this._register(this._editors.modified.onDidChangeCursorPosition(a=>{if(1===a.reason)return;let b=this._diffModel.get();(0,k.Rn)(a=>{for(let c of this._editors.modified.getSelections()||[])b?.ensureModifiedLineIsVisible(c.getStartPosition().lineNumber,0,a),b?.ensureModifiedLineIsVisible(c.getEndPosition().lineNumber,0,a)})}));const f=this._diffModel.map((a,b)=>{let c=a?.unchangedRegions.read(b)??[];return 1===c.length&&1===c[0].modifiedLineNumber&&c[0].lineCount===this._editors.modifiedModel.read(b)?.getLineCount()?[]:c});this.viewZones=(0,k.un)(this,a=>{let b=this._modifiedOutlineSource.read(a);if(!b)return{origViewZones:[],modViewZones:[]};let c=[],d=[],e=this._options.renderSideBySide.read(a),g=this._options.compactMode.read(a),h=f.read(a);for(let f=0;f<h.length;f++){let i=h[f];if(!i.shouldHideControls(a)&&(!g||0!==f&&f!==h.length-1))if(g){{let b=(0,k.un)(this,a=>i.getHiddenOriginalRange(a).startLineNumber-1),d=new u.D1(b,12);c.push(d),a.store.add(new w(this._editors.original,d,i,!e))}{let b=(0,k.un)(this,a=>i.getHiddenModifiedRange(a).startLineNumber-1),c=new u.D1(b,12);d.push(c),a.store.add(new w(this._editors.modified,c,i))}}else{{let d=(0,k.un)(this,a=>i.getHiddenOriginalRange(a).startLineNumber-1),f=new u.D1(d,24);c.push(f),a.store.add(new x(this._editors.original,f,i,i.originalUnchangedRange,!e,b,a=>this._diffModel.get().ensureModifiedLineIsVisible(a,2,void 0),this._options))}{let c=(0,k.un)(this,a=>i.getHiddenModifiedRange(a).startLineNumber-1),e=new u.D1(c,24);d.push(e),a.store.add(new x(this._editors.modified,e,i,i.modifiedUnchangedRange,!1,b,a=>this._diffModel.get().ensureModifiedLineIsVisible(a,2,void 0),this._options))}}}return{origViewZones:c,modViewZones:d}});const g={description:"unchanged lines",className:"diff-unchanged-lines",isWholeLine:!0},j={description:"Fold Unchanged",glyphMarginHoverMessage:new i.Bc(void 0,{isTrusted:!0,supportThemeIcons:!0}).appendMarkdown((0,n.kg)(121,"Fold Unchanged Region")),glyphMarginClassName:"fold-unchanged "+l.L.asClassName(h.W.fold),zIndex:10001};this._register((0,u.pY)(this._editors.original,(0,k.un)(this,a=>{let b=f.read(a),c=b.map(a=>({range:a.originalUnchangedRange.toInclusiveRange(),options:g}));for(let d of b)d.shouldHideControls(a)&&c.push({range:r.Q.fromPositions(new q.y(d.originalLineNumber,1)),options:j});return c}))),this._register((0,u.pY)(this._editors.modified,(0,k.un)(this,a=>{let b=f.read(a),c=b.map(a=>({range:a.modifiedUnchangedRange.toInclusiveRange(),options:g}));for(let d of b)d.shouldHideControls(a)&&c.push({range:p.M.ofLength(d.modifiedLineNumber,1).toInclusiveRange(),options:j});return c}))),this._register((0,k.fm)(a=>{let b=f.read(a);this._isUpdatingHiddenAreas=!0;try{this._editors.original.setHiddenAreas(b.map(b=>b.getHiddenOriginalRange(a).toInclusiveRange()).filter(m.O9)),this._editors.modified.setHiddenAreas(b.map(b=>b.getHiddenModifiedRange(a).toInclusiveRange()).filter(m.O9))}finally{this._isUpdatingHiddenAreas=!1}})),this._register(this._editors.modified.onMouseUp(a=>{if(!a.event.rightButton&&a.target.position&&a.target.element?.className.includes("fold-unchanged")){let b=a.target.position.lineNumber,c=this._diffModel.get();if(!c)return;let d=c.unchangedRegions.get().find(a=>a.modifiedUnchangedRange.contains(b));d&&(d.collapseAll(void 0),a.event.stopPropagation(),a.event.preventDefault())}})),this._register(this._editors.original.onMouseUp(a=>{if(!a.event.rightButton&&a.target.position&&a.target.element?.className.includes("fold-unchanged")){let b=a.target.position.lineNumber,c=this._diffModel.get();if(!c)return;let d=c.unchangedRegions.get().find(a=>a.originalUnchangedRange.contains(b));d&&(d.collapseAll(void 0),a.event.stopPropagation(),a.event.preventDefault())}}))}};v=e=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(d=o._Y,function(a,b){d(a,b,3)})],v);class w extends u.uN{constructor(a,b,c,d=!1){const e=(0,f.h)("div.diff-hidden-lines-widget");super(a,b,e.root),this._unchangedRegion=c,this._hide=d,this._nodes=(0,f.h)("div.diff-hidden-lines-compact",[(0,f.h)("div.line-left",[]),(0,f.h)("div.text@text",[]),(0,f.h)("div.line-right",[])]),e.root.appendChild(this._nodes.root),this._hide&&this._nodes.root.replaceChildren(),this._register((0,k.fm)(a=>{if(!this._hide){let b=this._unchangedRegion.getHiddenModifiedRange(a).length,c=(0,n.kg)(122,"{0} hidden lines",b);this._nodes.text.innerText=c}}))}}class x extends u.uN{constructor(a,b,c,d,e,i,j,l){const m=(0,f.h)("div.diff-hidden-lines-widget");super(a,b,m.root),this._editor=a,this._unchangedRegion=c,this._unchangedRegionRange=d,this._hide=e,this._modifiedOutlineSource=i,this._revealModifiedHiddenLine=j,this._options=l,this._nodes=(0,f.h)("div.diff-hidden-lines",[(0,f.h)("div.top@top",{title:(0,n.kg)(123,"Click or drag to show more above")}),(0,f.h)("div.center@content",{style:{display:"flex"}},[(0,f.h)("div@first",{style:{display:"flex",justifyContent:"center",alignItems:"center",flexShrink:"0"}},[(0,f.$)("a",{title:(0,n.kg)(124,"Show Unchanged Region"),role:"button",onclick:()=>{this._unchangedRegion.showAll(void 0)}},...(0,g.n)("$(unfold)"))]),(0,f.h)("div@others",{style:{display:"flex",justifyContent:"center",alignItems:"center"}})]),(0,f.h)("div.bottom@bottom",{title:(0,n.kg)(125,"Click or drag to show more below"),role:"button"})]),m.root.appendChild(this._nodes.root),this._hide?(0,f.Ln)(this._nodes.first):this._register((0,u.AV)(this._nodes.first,{width:(0,t.U)(this._editor).layoutInfoContentLeft})),this._register((0,k.fm)(a=>{let b=this._unchangedRegion.visibleLineCountTop.read(a)+this._unchangedRegion.visibleLineCountBottom.read(a)===this._unchangedRegion.lineCount;this._nodes.bottom.classList.toggle("canMoveTop",!b),this._nodes.bottom.classList.toggle("canMoveBottom",this._unchangedRegion.visibleLineCountBottom.read(a)>0),this._nodes.top.classList.toggle("canMoveTop",this._unchangedRegion.visibleLineCountTop.read(a)>0),this._nodes.top.classList.toggle("canMoveBottom",!b);let c=this._unchangedRegion.isDragged.read(a),d=this._editor.getDomNode();d&&(d.classList.toggle("draggingUnchangedRegion",!!c),"top"===c?(d.classList.toggle("canMoveTop",this._unchangedRegion.visibleLineCountTop.read(a)>0),d.classList.toggle("canMoveBottom",!b)):"bottom"===c?(d.classList.toggle("canMoveTop",!b),d.classList.toggle("canMoveBottom",this._unchangedRegion.visibleLineCountBottom.read(a)>0)):(d.classList.toggle("canMoveTop",!1),d.classList.toggle("canMoveBottom",!1)))}));const o=this._editor;this._register((0,f.ko)(this._nodes.top,"mousedown",a=>{if(0!==a.button)return;this._nodes.top.classList.toggle("dragging",!0),this._nodes.root.classList.toggle("dragging",!0),a.preventDefault();let b=a.clientY,c=!1,d=this._unchangedRegion.visibleLineCountTop.get();this._unchangedRegion.isDragged.set("top",void 0);let e=(0,f.zk)(this._nodes.top),g=(0,f.ko)(e,"mousemove",a=>{let e=a.clientY-b;c=c||Math.abs(e)>2;let f=Math.max(0,Math.min(d+Math.round(e/o.getOption(75)),this._unchangedRegion.getMaxVisibleLineCountTop()));this._unchangedRegion.visibleLineCountTop.set(f,void 0)}),h=(0,f.ko)(e,"mouseup",a=>{c||this._unchangedRegion.showMoreAbove(this._options.hideUnchangedRegionsRevealLineCount.get(),void 0),this._nodes.top.classList.toggle("dragging",!1),this._nodes.root.classList.toggle("dragging",!1),this._unchangedRegion.isDragged.set(void 0,void 0),g.dispose(),h.dispose()})})),this._register((0,f.ko)(this._nodes.bottom,"mousedown",a=>{if(0!==a.button)return;this._nodes.bottom.classList.toggle("dragging",!0),this._nodes.root.classList.toggle("dragging",!0),a.preventDefault();let b=a.clientY,c=!1,d=this._unchangedRegion.visibleLineCountBottom.get();this._unchangedRegion.isDragged.set("bottom",void 0);let e=(0,f.zk)(this._nodes.bottom),g=(0,f.ko)(e,"mousemove",a=>{let e=a.clientY-b;c=c||Math.abs(e)>2;let f=Math.max(0,Math.min(d-Math.round(e/o.getOption(75)),this._unchangedRegion.getMaxVisibleLineCountBottom())),g=this._unchangedRegionRange.endLineNumberExclusive>o.getModel().getLineCount()?o.getContentHeight():o.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);this._unchangedRegion.visibleLineCountBottom.set(f,void 0);let h=this._unchangedRegionRange.endLineNumberExclusive>o.getModel().getLineCount()?o.getContentHeight():o.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);o.setScrollTop(o.getScrollTop()+(h-g))}),h=(0,f.ko)(e,"mouseup",a=>{if(this._unchangedRegion.isDragged.set(void 0,void 0),!c){let a=o.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);this._unchangedRegion.showMoreBelow(this._options.hideUnchangedRegionsRevealLineCount.get(),void 0);let b=o.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);o.setScrollTop(o.getScrollTop()+(b-a))}this._nodes.bottom.classList.toggle("dragging",!1),this._nodes.root.classList.toggle("dragging",!1),g.dispose(),h.dispose()})})),this._register((0,k.fm)(a=>{let b=[];if(!this._hide){let d=c.getHiddenModifiedRange(a).length,e=(0,n.kg)(126,"{0} hidden lines",d),i=(0,f.$)("span",{title:(0,n.kg)(127,"Double click to unfold")},e);i.addEventListener("dblclick",a=>{0===a.button&&(a.preventDefault(),this._unchangedRegion.showAll(void 0))}),b.push(i);let j=this._unchangedRegion.getHiddenModifiedRange(a),k=this._modifiedOutlineSource.getBreadcrumbItems(j,a);if(k.length>0){b.push((0,f.$)("span",void 0,"\xa0\xa0|\xa0\xa0"));for(let a=0;a<k.length;a++){let c=k[a],d=s.gP.toIcon(c.kind),e=(0,f.h)("div.breadcrumb-item",{style:{display:"flex",alignItems:"center"}},[(0,g.s)(d),"\xa0",c.name,...a===k.length-1?[]:[(0,g.s)(h.W.chevronRight)]]).root;b.push(e),e.onclick=()=>{this._revealModifiedHiddenLine(c.startLineNumber)}}}}(0,f.Ln)(this._nodes.others,...b)}))}}},37186:(a,b,c)=>{"use strict";c.d(b,{AO:()=>z,Dr:()=>A,Hs:()=>E,K4:()=>t,Ls:()=>y,Tl:()=>v,UN:()=>C,YA:()=>B,dU:()=>r,ey:()=>P,h0:()=>D,is:()=>w,kr:()=>x,oi:()=>u,sx:()=>s});var d=c(88586),e=c(77747),f=c(2583),g=c(33067),h=c(25203),i=c(61682),j=c(18635),k=c(52212),l=c(95554),m=c(91337),n=c(84834),o=c(78029),p=c(94684),q=c(62605);class r{static getEdits(a,b,c,d,e){if(!e&&this._isAutoIndentType(a,b,c)){let e=[];for(let f of c){let c=this._findActualIndentationForSelection(a,b,f,d);if(null===c)return;e.push({selection:f,indentation:c})}let f=u.getAutoClosingPairClose(a,b,c,d,!1);return this._getIndentationAndAutoClosingPairEdits(a,b,e,d,f)}}static _isAutoIndentType(a,b,c){if(a.autoIndent<4)return!1;for(let a=0,d=c.length;a<d;a++)if(!b.tokenization.isCheapToTokenize(c[a].getEndPosition().lineNumber))return!1;return!0}static _findActualIndentationForSelection(a,b,c,d){let e=(0,p._t)(a,b,c,d,{shiftIndent:b=>N(a,b),unshiftIndent:b=>O(a,b)},a.languageConfigurationService);if(null===e)return null;let f=(0,n.Cw)(b,c.startLineNumber,c.startColumn);return e===a.normalizeIndentation(f)?null:e}static _getIndentationAndAutoClosingPairEdits(a,b,c,d,e){let f=c.map(({selection:c,indentation:f})=>{if(null!==e)return new G(this._getEditFromIndentationAndSelection(a,b,f,c,d,!1),c,d,e);{let e=this._getEditFromIndentationAndSelection(a,b,f,c,d,!0);return M(e.range,e.text,!1)}});return new i.vY(4,f,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}static _getEditFromIndentationAndSelection(a,b,c,d,e,f=!0){let g=d.startLineNumber,h=b.getLineFirstNonWhitespaceColumn(g),i=a.normalizeIndentation(c);return 0!==h&&(i+=b.getLineContent(g).substring(h-1,d.startColumn-1)),i+=f?e:"",{range:new k.Q(g,1,d.endLineNumber,d.endColumn),text:i}}}class s{static getEdits(a,b,c,d,e,f){if(L(b,c,d,e,f))return this._runAutoClosingOvertype(a,d,f)}static _runAutoClosingOvertype(a,b,c){let d=[];for(let a=0,e=b.length;a<e;a++){let e=b[a].getPosition(),g=new k.Q(e.lineNumber,e.column,e.lineNumber,e.column+1);d[a]=new f.iu(g,c)}return new i.vY(4,d,{shouldPushStackElementBefore:I(a,4),shouldPushStackElementAfter:!1})}}class t{static getEdits(a,b,c,d,e){if(L(a,b,c,d,e)){let a=c.map(a=>new f.iu(new k.Q(a.positionLineNumber,a.positionColumn,a.positionLineNumber,a.positionColumn+1),"",!1));return new i.vY(4,a,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}}class u{static getEdits(a,b,c,d,e,f){if(!f){let f=this.getAutoClosingPairClose(a,b,c,d,e);if(null!==f)return this._runAutoClosingOpenCharType(c,d,e,f)}}static _runAutoClosingOpenCharType(a,b,c,d){let e=[];for(let f=0,g=a.length;f<g;f++){let g=a[f];e[f]=new F(g,b,!c,d)}return new i.vY(4,e,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}static getAutoClosingPairClose(a,b,c,d,e){let f,g;for(let a of c)if(!a.isEmpty())return null;let h=c.map(a=>{let b=a.getPosition();return e?{lineNumber:b.lineNumber,beforeColumn:b.column-d.length,afterColumn:b.column}:{lineNumber:b.lineNumber,beforeColumn:b.column,afterColumn:b.column}}),k=this._findAutoClosingPairOpen(a,b,h.map(a=>new l.y(a.lineNumber,a.beforeColumn)),d);if(!k||((0,i.vG)(d)?(f=a.autoClosingQuotes,g=a.shouldAutoCloseBefore.quote):a.blockCommentStartToken&&k.open.includes(a.blockCommentStartToken)?(f=a.autoClosingComments,g=a.shouldAutoCloseBefore.comment):(f=a.autoClosingBrackets,g=a.shouldAutoCloseBefore.bracket),"never"===f))return null;let m=this._findContainedAutoClosingPair(a,k),n=m?m.close:"",p=!0;for(let c of h){let{lineNumber:e,beforeColumn:h,afterColumn:i}=c,l=b.getLineContent(e),m=l.substring(0,h-1),q=l.substring(i-1);if(q.startsWith(n)||(p=!1),q.length>0){let b=q.charAt(0);if(!this._isBeforeClosingBrace(a,q)&&!g(b))return null}if(1===k.open.length&&("'"===d||'"'===d)&&"always"!==f){let b=(0,j.i)(a.wordSeparators,[]);if(m.length>0){let a=m.charCodeAt(m.length-1);if(0===b.get(a))return null}}if(!b.tokenization.isCheapToTokenize(e))return null;b.tokenization.forceTokenization(e);let r=b.tokenization.getLineTokens(e),s=(0,o.BQ)(r,h-1);if(!k.shouldAutoClose(s,h-s.firstCharOffset))return null;let t=k.findNeutralCharacter();if(t){let a=b.tokenization.getTokenTypeIfInsertingCharacter(e,h,t);if(!k.isOK(a))return null}}return p?k.close.substring(0,k.close.length-n.length):k.close}static _findContainedAutoClosingPair(a,b){if(b.open.length<=1)return null;let c=b.close.charAt(b.close.length-1),d=a.autoClosingPairs.autoClosingPairsCloseByEnd.get(c)||[],e=null;for(let a of d)a.open!==b.open&&b.open.includes(a.open)&&b.close.endsWith(a.close)&&(!e||a.open.length>e.open.length)&&(e=a);return e}static _findAutoClosingPairOpen(a,b,c,d){let e=a.autoClosingPairs.autoClosingPairsOpenByEnd.get(d);if(!e)return null;let f=null;for(let a of e)if(null===f||a.open.length>f.open.length){let e=!0;for(let f of c)if(b.getValueInRange(new k.Q(f.lineNumber,f.column-a.open.length+1,f.lineNumber,f.column))+d!==a.open){e=!1;break}e&&(f=a)}return f}static _isBeforeClosingBrace(a,b){let c=b.charAt(0),d=a.autoClosingPairs.autoClosingPairsOpenByStart.get(c)||[],e=a.autoClosingPairs.autoClosingPairsCloseByStart.get(c)||[],f=d.some(a=>b.startsWith(a.open)),g=e.some(a=>b.startsWith(a.close));return!f&&g}}class v{static getEdits(a,b){if("overtype"!==a.inputMode)return null;let c=b.map(a=>new f.gr(a.insertedTextRange));return new i.vY(4,c,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}class w{static getEdits(a,b,c,d,e){if(!e&&this._isSurroundSelectionType(a,b,c,d))return this._runSurroundSelectionType(a,c,d)}static _runSurroundSelectionType(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=a.surroundingPairs[c];d[e]=new h.i(f,c,g)}return new i.vY(0,d,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}static _isSurroundSelectionType(a,b,c,d){if(!P(a,d)||!a.surroundingPairs.hasOwnProperty(d))return!1;let e=(0,i.vG)(d);for(let a of c){if(a.isEmpty())return!1;let c=!0;for(let d=a.startLineNumber;d<=a.endLineNumber;d++){let e=b.getLineContent(d),f=d===a.startLineNumber?a.startColumn-1:0,g=d===a.endLineNumber?a.endColumn-1:e.length,h=e.substring(f,g);if(/[^ \t]/.test(h)){c=!1;break}}if(c)return!1;if(e&&a.startLineNumber===a.endLineNumber&&a.startColumn+1===a.endColumn){let c=b.getValueInRange(a);if((0,i.vG)(c))return!1}}return!0}}class x{static getEdits(a,b,c,d,e,f){if(!f&&this._isTypeInterceptorElectricChar(b,c,d)){let f=this._typeInterceptorElectricChar(a,b,c,d[0],e);if(f)return f}}static _isTypeInterceptorElectricChar(a,b,c){return!!(1===c.length&&b.tokenization.isCheapToTokenize(c[0].getEndPosition().lineNumber))}static _typeInterceptorElectricChar(a,b,c,g,h){let j;if(!b.electricChars.hasOwnProperty(h)||!g.isEmpty())return null;let l=g.getPosition();c.tokenization.forceTokenization(l.lineNumber);let m=c.tokenization.getLineTokens(l.lineNumber);try{j=b.onElectricCharacter(h,m,l.column)}catch(a){return(0,d.dz)(a),null}if(!j)return null;if(j.matchOpenBracket){let d=(m.getLineContent()+h).lastIndexOf(j.matchOpenBracket)+1,g=c.bracketPairs.findMatchingBracketUp(j.matchOpenBracket,{lineNumber:l.lineNumber,column:d},500);if(g){if(g.startLineNumber===l.lineNumber)return null;let d=c.getLineContent(g.startLineNumber),j=e.UU(d),m=b.normalizeIndentation(j),n=c.getLineContent(l.lineNumber),o=c.getLineFirstNonWhitespaceColumn(l.lineNumber)||l.column,p=m+n.substring(o-1,l.column-1)+h,q=new k.Q(l.lineNumber,1,l.lineNumber,l.column),r=new f.iu(q,p);return new i.vY(H(p,a),[r],{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!0})}}return null}}class y{static getEdits(a,b,c,d,e){let g=[];for(let b=0,h=c.length;b<h;b++){let h="overtype"!==a.inputMode||e?f.iu:f.AS;g[b]=new h(c[b],d)}let h=H(d,b);return new i.vY(h,g,{shouldPushStackElementBefore:I(b,h),shouldPushStackElementAfter:!1})}}class z{static getEdits(a,b,c,d,e){if(!e&&"\n"===d){let d=[];for(let e=0,f=c.length;e<f;e++)d[e]=this._enter(a,b,!1,c[e]);return new i.vY(4,d,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}static _enter(a,b,c,d){if(0===a.autoIndent)return M(d,"\n",c);if(!b.tokenization.isCheapToTokenize(d.getStartPosition().lineNumber)||1===a.autoIndent){let f=b.getLineContent(d.startLineNumber),g=e.UU(f).substring(0,d.startColumn-1);return M(d,"\n"+a.normalizeIndentation(g),c)}let g=(0,q.h)(a.autoIndent,b,d,a.languageConfigurationService);if(g){if(g.indentAction===m.l.None)return M(d,"\n"+a.normalizeIndentation(g.indentation+g.appendText),c);else if(g.indentAction===m.l.Indent)return M(d,"\n"+a.normalizeIndentation(g.indentation+g.appendText),c);else if(g.indentAction===m.l.IndentOutdent){let b=a.normalizeIndentation(g.indentation),e=a.normalizeIndentation(g.indentation+g.appendText),h="\n"+e+"\n"+b;return c?new f.q2(d,h,!0):new f.iP(d,h,-1,e.length-b.length,!0)}else if(g.indentAction===m.l.Outdent){let b=O(a,g.indentation);return M(d,"\n"+a.normalizeIndentation(b+g.appendText),c)}}let h=b.getLineContent(d.startLineNumber),i=e.UU(h).substring(0,d.startColumn-1);if(a.autoIndent>=4){let g=(0,p.MU)(a.autoIndent,b,d,{unshiftIndent:b=>O(a,b),shiftIndent:b=>N(a,b),normalizeIndentation:b=>a.normalizeIndentation(b)},a.languageConfigurationService);if(g){let h=a.visibleColumnFromColumn(b,d.getEndPosition()),i=d.endColumn,j=b.getLineContent(d.endLineNumber),k=e.HG(j);if(d=k>=0?d.setEndPosition(d.endLineNumber,Math.max(d.endColumn,k+1)):d.setEndPosition(d.endLineNumber,b.getLineMaxColumn(d.endLineNumber)),c)return new f.q2(d,"\n"+a.normalizeIndentation(g.afterEnter),!0);{let b=0;return i<=k+1&&(a.insertSpaces||(h=Math.ceil(h/a.indentSize)),b=Math.min(h+1-a.normalizeIndentation(g.afterEnter).length-1,0)),new f.iP(d,"\n"+a.normalizeIndentation(g.afterEnter),0,b,!0)}}}return M(d,"\n"+a.normalizeIndentation(i),c)}static lineInsertBefore(a,b,c){if(null===b||null===c)return[];let d=[];for(let e=0,g=c.length;e<g;e++){let g=c[e].positionLineNumber;if(1===g)d[e]=new f.q2(new k.Q(1,1,1,1),"\n");else{g--;let c=b.getLineMaxColumn(g);d[e]=this._enter(a,b,!1,new k.Q(g,c,g,c))}}return d}static lineInsertAfter(a,b,c){if(null===b||null===c)return[];let d=[];for(let e=0,f=c.length;e<f;e++){let f=c[e].positionLineNumber,g=b.getLineMaxColumn(f);d[e]=this._enter(a,b,!1,new k.Q(f,g,f,g))}return d}static lineBreakInsert(a,b,c){let d=[];for(let e=0,f=c.length;e<f;e++)d[e]=this._enter(a,b,!0,c[e]);return d}}class A{static getEdits(a,b,c,d,e,f){let g=this._distributePasteToCursors(a,c,d,e,f);return g?(c=c.sort(k.Q.compareRangesUsingStarts),this._distributedPaste(a,b,c,g)):this._simplePaste(a,b,c,d,e)}static _distributePasteToCursors(a,b,c,d,f){if(d||1===b.length)return null;if(f&&f.length===b.length)return f;if("spread"===a.multiCursorPaste){10===c.charCodeAt(c.length-1)&&(c=c.substring(0,c.length-1)),13===c.charCodeAt(c.length-1)&&(c=c.substring(0,c.length-1));let a=e.uz(c);if(a.length===b.length)return a}return null}static _distributedPaste(a,b,c,d){let e=[];for(let b=0,g=c.length;b<g;b++){let g=a.overtypeOnPaste&&"overtype"===a.inputMode?f.AS:f.iu;e[b]=new g(c[b],d[b])}return new i.vY(0,e,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}static _simplePaste(a,b,c,d,e){let g=[];for(let b=0,h=c.length;b<h;b++){let h=c[b],i=h.getPosition();if(e&&!h.isEmpty()&&(e=!1),e&&d.indexOf("\n")!==d.length-1&&(e=!1),e){let a=new k.Q(i.lineNumber,1,i.lineNumber,1);g[b]=new f.ui(a,d,h,!0)}else{let c=a.overtypeOnPaste&&"overtype"===a.inputMode?f.AS:f.iu;g[b]=new c(h,d)}}return new i.vY(0,g,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}}class B{static getEdits(a,b,c,d,e,f,g,h){let j=d.map(a=>this._compositionType(c,a,e,f,g,h));return new i.vY(4,j,{shouldPushStackElementBefore:I(a,4),shouldPushStackElementAfter:!1})}static _compositionType(a,b,c,d,e,g){if(!b.isEmpty())return null;let h=b.getPosition(),i=Math.max(1,h.column-d),j=Math.min(a.getLineMaxColumn(h.lineNumber),h.column+e),l=new k.Q(h.lineNumber,i,h.lineNumber,j);return new f.iP(l,c,0,g)}}class C{static getEdits(a,b,c){let d=[];for(let a=0,e=b.length;a<e;a++)d[a]=new f.iu(b[a],c);let e=H(c,a);return new i.vY(e,d,{shouldPushStackElementBefore:I(a,e),shouldPushStackElementAfter:!1})}}class D{static getCommands(a,b,c){let d=[];for(let e=0,h=c.length;e<h;e++){let h=c[e];if(h.isEmpty()){let c=b.getLineContent(h.startLineNumber);if(/^\s*$/.test(c)&&b.tokenization.isCheapToTokenize(h.startLineNumber)){let g=this._goodIndentForLine(a,b,h.startLineNumber);g=g||" ";let i=a.normalizeIndentation(g);if(!c.startsWith(i)){d[e]=new f.iu(new k.Q(h.startLineNumber,1,h.startLineNumber,c.length+1),i,!0);continue}}d[e]=this._replaceJumpToNextIndent(a,b,h,!0)}else{if(h.startLineNumber===h.endLineNumber){let c=b.getLineMaxColumn(h.startLineNumber);if(1!==h.startColumn||h.endColumn!==c){d[e]=this._replaceJumpToNextIndent(a,b,h,!1);continue}}d[e]=new g.Y(h,{isUnshift:!1,tabSize:a.tabSize,indentSize:a.indentSize,insertSpaces:a.insertSpaces,useTabStops:a.useTabStops,autoIndent:a.autoIndent},a.languageConfigurationService)}}return d}static _goodIndentForLine(a,b,c){let d=null,f="",g=(0,p.vn)(a.autoIndent,b,c,!1,a.languageConfigurationService);if(g)d=g.action,f=g.indentation;else if(c>1){let d;for(d=c-1;d>=1;d--){let a=b.getLineContent(d);if(e.lT(a)>=0)break}if(d<1)return null;let g=b.getLineMaxColumn(d),h=(0,q.h)(a.autoIndent,b,new k.Q(d,g,d,g),a.languageConfigurationService);h&&(f=h.indentation+h.appendText)}return(d&&(d===m.l.Indent&&(f=N(a,f)),d===m.l.Outdent&&(f=O(a,f)),f=a.normalizeIndentation(f)),f)?f:null}static _replaceJumpToNextIndent(a,b,c,d){let e="",g=c.getStartPosition();if(a.insertSpaces){let c=a.visibleColumnFromColumn(b,g),d=a.indentSize,f=d-c%d;for(let a=0;a<f;a++)e+=" "}else e=" ";return new f.iu(c,e,d)}}class E extends f.iP{constructor(a,b,c,d,e,f){super(a,b,c,d),this._openCharacter=e,this._closeCharacter=f,this.closeCharacterRange=null,this.enclosingRange=null}_computeCursorStateWithRange(a,b,c){return this.closeCharacterRange=new k.Q(b.startLineNumber,b.endColumn-this._closeCharacter.length,b.endLineNumber,b.endColumn),this.enclosingRange=new k.Q(b.startLineNumber,b.endColumn-this._openCharacter.length-this._closeCharacter.length,b.endLineNumber,b.endColumn),super.computeCursorState(a,c)}}class F extends E{constructor(a,b,c,d){super(a,(c?b:"")+d,0,-d.length,b,d)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return this._computeCursorStateWithRange(a,c,b)}}class G extends E{constructor(a,b,c,d){const e=c+d;super(b,e,0,c.length,c,d),this._autoIndentationEdit=a,this._autoClosingEdit={range:b,text:e}}getEditOperations(a,b){b.addTrackedEditOperation(this._autoIndentationEdit.range,this._autoIndentationEdit.text),b.addTrackedEditOperation(this._autoClosingEdit.range,this._autoClosingEdit.text)}computeCursorState(a,b){let c=b.getInverseEditOperations();if(2!==c.length)throw Error("There should be two inverse edit operations!");let d=c[0].range,e=c[1].range,f=d.plusRange(e);return this._computeCursorStateWithRange(a,f,b)}}function H(a,b){return" "===a?5===b||6===b?6:5:4}function I(a,b){return!(!K(a)||K(b))||5!==a&&J(a)!==J(b)}function J(a){return 6===a||5===a?"space":a}function K(a){return 4===a||5===a||6===a}function L(a,b,c,d,e){if("never"===a.autoClosingOvertype||!a.autoClosingPairs.autoClosingPairsCloseSingleChar.has(e))return!1;for(let f=0,g=c.length;f<g;f++){let g=c[f];if(!g.isEmpty())return!1;let h=g.getPosition(),j=b.getLineContent(h.lineNumber);if(j.charAt(h.column-1)!==e)return!1;let k=(0,i.vG)(e);if(92===(h.column>2?j.charCodeAt(h.column-2):0)&&k)return!1;if("auto"===a.autoClosingOvertype){let a=!1;for(let b=0,c=d.length;b<c;b++){let c=d[b];if(h.lineNumber===c.startLineNumber&&h.column===c.startColumn){a=!0;break}}if(!a)return!1}}return!0}function M(a,b,c){return c?new f.q2(a,b,!0):new f.iu(a,b,!0)}function N(a,b,c){return c=c||1,g.Y.shiftIndent(b,b.length+c,a.tabSize,a.indentSize,a.insertSpaces)}function O(a,b,c){return c=c||1,g.Y.unshiftIndent(b,b.length+c,a.tabSize,a.indentSize,a.insertSpaces)}function P(a,b){return(0,i.vG)(b)?"quotes"===a.autoSurround||"languageDefined"===a.autoSurround:"brackets"===a.autoSurround||"languageDefined"===a.autoSurround}},37291:(a,b,c)=>{"use strict";let d,e;c.d(b,{Ez:()=>r,SJ:()=>i,fV:()=>p,ny:()=>h,v$:()=>o,zl:()=>t});var f,g,h,i,j=c(88586),k=c(19254),l=c(77747),m=c(99951),n=c(45006);function o(a,b){return m.r.isUri(a)?(0,l.Q_)(a.scheme,b):(0,l.ns)(a,b+":")}function p(a,...b){return b.some(b=>o(a,b))}(f=h||(h={})).inMemory="inmemory",f.vscode="vscode",f.internal="private",f.walkThrough="walkThrough",f.walkThroughSnippet="walkThroughSnippet",f.http="http",f.https="https",f.file="file",f.mailto="mailto",f.untitled="untitled",f.data="data",f.command="command",f.vscodeRemote="vscode-remote",f.vscodeRemoteResource="vscode-remote-resource",f.vscodeManagedRemoteResource="vscode-managed-remote-resource",f.vscodeUserData="vscode-userdata",f.vscodeCustomEditor="vscode-custom-editor",f.vscodeNotebookCell="vscode-notebook-cell",f.vscodeNotebookCellMetadata="vscode-notebook-cell-metadata",f.vscodeNotebookCellMetadataDiff="vscode-notebook-cell-metadata-diff",f.vscodeNotebookCellOutput="vscode-notebook-cell-output",f.vscodeNotebookCellOutputDiff="vscode-notebook-cell-output-diff",f.vscodeNotebookMetadata="vscode-notebook-metadata",f.vscodeInteractiveInput="vscode-interactive-input",f.vscodeSettings="vscode-settings",f.vscodeWorkspaceTrust="vscode-workspace-trust",f.vscodeTerminal="vscode-terminal",f.vscodeChatCodeBlock="vscode-chat-code-block",f.vscodeChatCodeCompareBlock="vscode-chat-code-compare-block",f.vscodeChatEditor="vscode-chat-editor",f.vscodeChatInput="chatSessionInput",f.vscodeChatSession="vscode-chat-session",f.webviewPanel="webview-panel",f.vscodeWebview="vscode-webview",f.extension="extension",f.vscodeFileResource="vscode-file",f.tmp="tmp",f.vsls="vsls",f.vscodeSourceControl="vscode-scm",f.commentsInput="comment",f.codeSetting="code-setting",f.outputChannel="output",f.accessibleView="accessible-view",f.chatEditingSnapshotScheme="chat-editing-snapshot-text-model",f.chatEditingModel="chat-editing-text-model";class q{constructor(){this._hosts=Object.create(null),this._ports=Object.create(null),this._connectionTokens=Object.create(null),this._preferredWebSchema="http",this._delegate=null,this._serverRootPath="/"}setPreferredWebSchema(a){this._preferredWebSchema=a}get _remoteResourcesPath(){return n.SA.join(this._serverRootPath,h.vscodeRemoteResource)}rewrite(a){if(this._delegate)try{return this._delegate(a)}catch(b){return j.dz(b),a}let b=a.authority,c=this._hosts[b];c&&-1!==c.indexOf(":")&&-1===c.indexOf("[")&&(c=`[${c}]`);let d=this._ports[b],e=this._connectionTokens[b],f=`path=${encodeURIComponent(a.path)}`;return"string"==typeof e&&(f+=`&tkn=${encodeURIComponent(e)}`),m.r.from({scheme:k.HZ?this._preferredWebSchema:h.vscodeRemoteResource,authority:`${c}:${d}`,path:this._remoteResourcesPath,query:f})}}let r=new q;class s{static{this.FALLBACK_AUTHORITY="vscode-app"}uriToBrowserUri(a){return a.scheme===h.vscodeRemote?r.rewrite(a):a.scheme===h.file&&(k.ib||k.lg===`${h.vscodeFileResource}://${s.FALLBACK_AUTHORITY}`)?a.with({scheme:h.vscodeFileResource,authority:a.authority||s.FALLBACK_AUTHORITY,query:null,fragment:null}):a}}let t=new s;Object.freeze({"Cache-Control":"no-cache, no-store"}),Object.freeze({"Document-Policy":"include-js-call-stacks-in-crash-reports"}),(g=i||(i={})).CoopAndCoep=Object.freeze((d=new Map([["1",{"Cross-Origin-Opener-Policy":"same-origin"}],["2",{"Cross-Origin-Embedder-Policy":"require-corp"}],["3",{"Cross-Origin-Opener-Policy":"same-origin","Cross-Origin-Embedder-Policy":"require-corp"}]])).get("3")),e="vscode-coi",g.getHeadersFromQuery=function(a){let b;"string"==typeof a?b=new URL(a).searchParams:a instanceof URL?b=a.searchParams:m.r.isUri(a)&&(b=new URL(a.toString(!0)).searchParams);let c=b?.get(e);if(c)return d.get(c)},g.addSearchParam=function(a,b,c){if(!globalThis.crossOriginIsolated)return;let d=b&&c?"3":c?"2":"1";a instanceof URLSearchParams?a.set(e,d):a[e]=d}},37417:(a,b,c)=>{"use strict";c.d(b,{e2:()=>i,sN:()=>g,tW:()=>f,v7:()=>l});var d=c(91511),e=c(77747);function f(a){return g(a,0)}function g(a,b){switch(typeof a){case"object":var c,d,e,f;if(null===a)return h(349,b);if(Array.isArray(a)){return c=a,d=h(104579,d=b),c.reduce((a,b)=>g(b,a),d)}return e=a,f=h(181387,f=b),Object.keys(e).sort().reduce((a,b)=>(a=i(b,a),g(e[b],a)),f);case"string":return i(a,b);case"boolean":return h(a?433:863,b);case"number":return h(a,b);case"undefined":return h(937,b);default:return h(617,b)}}function h(a,b){return(b<<5)-b+a|0}function i(a,b){b=h(149417,b);for(let c=0,d=a.length;c<d;c++)b=h(a.charCodeAt(c),b);return b}function j(a,b,c=32){let d=c-b;return(a<<b|(~((1<<d)-1)&a)>>>d)>>>0}function k(a,b=32){return a instanceof ArrayBuffer?(0,d.mU)(d.MB.wrap(new Uint8Array(a))):(a>>>0).toString(16).padStart(b/4,"0")}class l{static{this._bigBlock32=new DataView(new ArrayBuffer(320))}constructor(){this._h0=0x67452301,this._h1=0xefcdab89,this._h2=0x98badcfe,this._h3=0x10325476,this._h4=0xc3d2e1f0,this._buff=new Uint8Array(67),this._buffDV=new DataView(this._buff.buffer),this._buffLen=0,this._totalLen=0,this._leftoverHighSurrogate=0,this._finished=!1}update(a){let b,c,d=a.length;if(0===d)return;let f=this._buff,g=this._buffLen,h=this._leftoverHighSurrogate;for(0!==h?(b=h,c=-1,h=0):(b=a.charCodeAt(0),c=0);;){let i=b;if(e.pc(b))if(c+1<d){let d=a.charCodeAt(c+1);e.LJ(d)?(c++,i=e.z_(b,d)):i=65533}else{h=b;break}else e.LJ(b)&&(i=65533);if(g=this._push(f,g,i),++c<d)b=a.charCodeAt(c);else break}this._buffLen=g,this._leftoverHighSurrogate=h}_push(a,b,c){return c<128?a[b++]=c:(c<2048?a[b++]=192|(1984&c)>>>6:(c<65536?a[b++]=224|(61440&c)>>>12:(a[b++]=240|(1835008&c)>>>18,a[b++]=128|(258048&c)>>>12),a[b++]=128|(4032&c)>>>6),a[b++]=128|(63&c)>>>0),b>=64&&(this._step(),b-=64,this._totalLen+=64,a[0]=a[64],a[1]=a[65],a[2]=a[66]),b}digest(){return this._finished||(this._finished=!0,this._leftoverHighSurrogate&&(this._leftoverHighSurrogate=0,this._buffLen=this._push(this._buff,this._buffLen,65533)),this._totalLen+=this._buffLen,this._wrapUp()),k(this._h0)+k(this._h1)+k(this._h2)+k(this._h3)+k(this._h4)}_wrapUp(){this._buff[this._buffLen++]=128,this._buff.subarray(this._buffLen).fill(0),this._buffLen>56&&(this._step(),this._buff.fill(0));let a=8*this._totalLen;this._buffDV.setUint32(56,Math.floor(a/0x100000000),!1),this._buffDV.setUint32(60,a%0x100000000,!1),this._step()}_step(){let a,b,c,d=l._bigBlock32,e=this._buffDV;for(let a=0;a<64;a+=4)d.setUint32(a,e.getUint32(a,!1),!1);for(let a=64;a<320;a+=4)d.setUint32(a,j(d.getUint32(a-12,!1)^d.getUint32(a-32,!1)^d.getUint32(a-56,!1)^d.getUint32(a-64,!1),1),!1);let f=this._h0,g=this._h1,h=this._h2,i=this._h3,k=this._h4;for(let e=0;e<80;e++)e<20?(a=g&h|~g&i,b=0x5a827999):e<40?(a=g^h^i,b=0x6ed9eba1):e<60?(a=g&h|g&i|h&i,b=0x8f1bbcdc):(a=g^h^i,b=0xca62c1d6),c=j(f,5)+a+k+b+d.getUint32(4*e,!1)|0,k=i,i=h,h=j(g,30),g=f,f=c;this._h0=this._h0+f|0,this._h1=this._h1+g|0,this._h2=this._h2+h|0,this._h3=this._h3+i|0,this._h4=this._h4+k|0}}},37523:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(21652).u1)("markerDecorationsService")},37577:(a,b,c)=>{"use strict";c.d(b,{n:()=>C});var d,e=c(76302),f=c(63048),g=c(69626),h=c(88586),i=c(40201),j=c(39537),k=c(21652),l=c(51407),m=c(55066),n=c(7968),o=c(59237),p=c(15522),q=c(3457),r=c(43016),s=c(57832);class t{get dataOffset(){return this._startIndex}get dirtySize(){if(void 0!==this._startIndex&&void 0!==this._endIndex)return this._endIndex-this._startIndex+1}get isDirty(){return void 0!==this._startIndex}flag(a,b=1){return this._flag(a),b>1&&this._flag(a+b-1),a}_flag(a){(void 0===this._startIndex||a<this._startIndex)&&(this._startIndex=a),(void 0===this._endIndex||a>this._endIndex)&&(this._endIndex=a)}clear(){this._startIndex=void 0,this._endIndex=void 0}}class u extends i.jG{get entryCount(){return this._entries.size}get dirtyTracker(){return this._dirtyTracker}constructor(a,b){super(),this.propertySpecs=a,this.capacity=b,this._dirtyTracker=new t,this._propertySpecsMap=new Map,this._entries=new s.w,this._onDidChange=this._register(new q.vl),this._onDidChangeBuffer=this._register(new q.vl),this.onDidChangeBuffer=this._onDidChangeBuffer.event,this.view=new Float32Array(b*a.length),this.buffer=this.view.buffer,this._entrySize=a.length;for(let b=0;b<a.length;b++){const c={offset:b,...a[b]};this._propertySpecsMap.set(c.name,c)}this._register((0,i.s)(()=>(0,i.AS)(this._entries)))}createEntry(a){this._entries.size===this.capacity&&(this._expandBuffer(),this._onDidChangeBuffer.fire());let b=new v(this.view,this._propertySpecsMap,this._dirtyTracker,this._entries.size,a),c=this._entries.push(b),d=[];return d.push(q.Jh.forward(b.onDidChange,this._onDidChange)),d.push(b.onWillDispose(()=>{let a=b.i;for(let b of(c(),this.view.set(this.view.subarray(a*this._entrySize+2,this._entries.size*this._entrySize+2),a*this._entrySize),this._entries))b.i>a&&b.i--;this._dirtyTracker.flag(a,(this._entries.size-a)*this._entrySize),(0,i.AS)(d)})),b}_expandBuffer(){this.capacity*=2;let a=new Float32Array(this.capacity*this._entrySize);a.set(this.view),this.view=a,this.buffer=this.view.buffer}}class v extends i.jG{constructor(a,b,c,d,e){for(const f of(super(),this._view=a,this._propertySpecsMap=b,this._dirtyTracker=c,this.i=d,this._onDidChange=this._register(new q.vl),this.onDidChange=this._onDidChange.event,this._onWillDispose=this._register(new q.vl),this.onWillDispose=this._onWillDispose.event,this._propertySpecsMap.values()))this._view[this.i*this._propertySpecsMap.size+f.offset]=e[f.name];this._dirtyTracker.flag(this.i*this._propertySpecsMap.size,this._propertySpecsMap.size)}dispose(){this._onWillDispose.fire(),super.dispose()}setRaw(a){if(a.length!==this._propertySpecsMap.size)throw Error(`Data length ${a.length} does not match the number of properties in the collection (${this._propertySpecsMap.size})`);this._view.set(a,this.i*this._propertySpecsMap.size),this._dirtyTracker.flag(this.i*this._propertySpecsMap.size,this._propertySpecsMap.size)}}let w=`
6
6
 
7
7
  struct Vertex {
8
8
  @location(0) position: vec2f,
@@ -81,7 +81,7 @@ struct VSOutput {
81
81
  \`\`\`
82
82
  'top', 'center', 'bottom'
83
83
  \`\`\`
84
- `,constraint:function(a){return!!l.Gv(a)&&(!!l.Et(a.lineNumber)||!!l.Kg(a.lineNumber))&&(!!l.b0(a.at)||!!l.Kg(a.at))},schema:{type:"object",required:["lineNumber"],properties:{lineNumber:{type:["number","string"]},at:{type:"string",enum:["top","center","bottom"]}}}}]},e.RawAtArgument={Top:"top",Center:"center",Bottom:"bottom"};class C{constructor(a){a.addImplementation(1e4,"code-editor",(a,b)=>{let c=a.get(o.T).getFocusedCodeEditor();return!!(c&&c.hasTextFocus())&&this._runEditorCommand(a,c,b)}),a.addImplementation(1e3,"generic-dom-input-textarea",(a,b)=>{let c=(0,z.bq)();return!!(c&&(0,z.yD)(c))&&(this.runDOMCommand(c),!0)}),a.addImplementation(0,"generic-dom",(a,b)=>{let c=a.get(o.T).getActiveCodeEditor();return!!c&&(c.focus(),this._runEditorCommand(a,c,b))})}_runEditorCommand(a,b,c){let d=this.runEditorCommand(a,b,c);return!d||d}}!function(a){class b extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){!b.position||(a.model.pushStackElement(),a.setCursorStates(b.source,3,[u.c.moveTo(a,a.getPrimaryCursorState(),this._inSelectionMode,b.position,b.viewPosition)])&&2!==b.revealType&&a.revealAllCursors(b.source,!0,!0))}}a.MoveTo=(0,n.E_)(new b({id:"_moveTo",inSelectionMode:!1,precondition:void 0})),a.MoveToSelect=(0,n.E_)(new b({id:"_moveToSelect",inSelectionMode:!0,precondition:void 0}));class c extends B{runCoreEditorCommand(a,b){a.model.pushStackElement();let c=this._getColumnSelectResult(a,a.getPrimaryCursorState(),a.getCursorColumnSelectData(),b);null!==c&&(a.setCursorStates(b.source,3,c.viewStates.map(a=>p.MF.fromViewState(a))),a.setCursorColumnSelectData({isReal:!0,fromViewLineNumber:c.fromLineNumber,fromViewVisualColumn:c.fromVisualColumn,toViewLineNumber:c.toLineNumber,toViewVisualColumn:c.toVisualColumn}),c.reversed?a.revealTopMostCursor(b.source):a.revealBottomMostCursor(b.source))}}a.ColumnSelect=(0,n.E_)(new class extends c{constructor(){super({id:"columnSelect",precondition:void 0})}_getColumnSelectResult(a,b,c,d){if(void 0===d.position||void 0===d.viewPosition||void 0===d.mouseColumn)return null;let e=a.model.validatePosition(d.position),f=a.coordinatesConverter.validateViewPosition(new q.y(d.viewPosition.lineNumber,d.viewPosition.column),e),g=d.doColumnSelect?c.fromViewLineNumber:f.lineNumber,h=d.doColumnSelect?c.fromViewVisualColumn:d.mouseColumn-1;return s.columnSelect(a.cursorConfig,a,g,h,f.lineNumber,d.mouseColumn-1)}}),a.CursorColumnSelectLeft=(0,n.E_)(new class extends c{constructor(){super({id:"cursorColumnSelectLeft",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3599,linux:{primary:0}}})}_getColumnSelectResult(a,b,c,d){return s.columnSelectLeft(a.cursorConfig,a,c)}}),a.CursorColumnSelectRight=(0,n.E_)(new class extends c{constructor(){super({id:"cursorColumnSelectRight",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3601,linux:{primary:0}}})}_getColumnSelectResult(a,b,c,d){return s.columnSelectRight(a.cursorConfig,a,c)}});class d extends c{constructor(a){super(a),this._isPaged=a.isPaged}_getColumnSelectResult(a,b,c,d){return s.columnSelectUp(a.cursorConfig,a,c,this._isPaged)}}a.CursorColumnSelectUp=(0,n.E_)(new d({isPaged:!1,id:"cursorColumnSelectUp",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3600,linux:{primary:0}}})),a.CursorColumnSelectPageUp=(0,n.E_)(new d({isPaged:!0,id:"cursorColumnSelectPageUp",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3595,linux:{primary:0}}}));class e extends c{constructor(a){super(a),this._isPaged=a.isPaged}_getColumnSelectResult(a,b,c,d){return s.columnSelectDown(a.cursorConfig,a,c,this._isPaged)}}a.CursorColumnSelectDown=(0,n.E_)(new e({isPaged:!1,id:"cursorColumnSelectDown",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3602,linux:{primary:0}}})),a.CursorColumnSelectPageDown=(0,n.E_)(new e({isPaged:!0,id:"cursorColumnSelectPageDown",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3596,linux:{primary:0}}}));class h extends B{constructor(){super({id:"cursorMove",precondition:void 0,metadata:u.S.metadata})}runCoreEditorCommand(a,b){let c=u.S.parse(b);c&&this._runCursorMove(a,b.source,c)}_runCursorMove(a,b,c){a.model.pushStackElement(),a.setCursorStates(b,3,h._move(a,a.getCursorStates(),c)),a.revealAllCursors(b,!0)}static _move(a,b,c){let d=c.select,e=c.value;switch(c.direction){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:return u.c.simpleMove(a,b,c.direction,d,e,c.unit);case 11:case 13:case 12:case 14:return u.c.viewportMove(a,b,c.direction,d,e);default:return null}}}a.CursorMoveImpl=h,a.CursorMove=(0,n.E_)(new h);class i extends B{constructor(a){super(a),this._staticArgs=a.args}runCoreEditorCommand(a,b){let c=this._staticArgs;-1===this._staticArgs.value&&(c={direction:this._staticArgs.direction,unit:this._staticArgs.unit,select:this._staticArgs.select,value:b.pageSize||a.cursorConfig.pageSize}),a.model.pushStackElement(),a.setCursorStates(b.source,3,u.c.simpleMove(a,a.getCursorStates(),c.direction,c.select,c.value,c.unit)),a.revealAllCursors(b.source,!0)}}a.CursorLeft=(0,n.E_)(new i({args:{direction:0,unit:0,select:!1,value:1},id:"cursorLeft",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:15,mac:{primary:15,secondary:[288]}}})),a.CursorLeftSelect=(0,n.E_)(new i({args:{direction:0,unit:0,select:!0,value:1},id:"cursorLeftSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1039}})),a.CursorRight=(0,n.E_)(new i({args:{direction:1,unit:0,select:!1,value:1},id:"cursorRight",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:17,mac:{primary:17,secondary:[292]}}})),a.CursorRightSelect=(0,n.E_)(new i({args:{direction:1,unit:0,select:!0,value:1},id:"cursorRightSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1041}})),a.CursorUp=(0,n.E_)(new i({args:{direction:2,unit:2,select:!1,value:1},id:"cursorUp",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:16,mac:{primary:16,secondary:[302]}}})),a.CursorUpSelect=(0,n.E_)(new i({args:{direction:2,unit:2,select:!0,value:1},id:"cursorUpSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1040,secondary:[3088],mac:{primary:1040},linux:{primary:1040}}})),a.CursorPageUp=(0,n.E_)(new i({args:{direction:2,unit:2,select:!1,value:-1},id:"cursorPageUp",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:11}})),a.CursorPageUpSelect=(0,n.E_)(new i({args:{direction:2,unit:2,select:!0,value:-1},id:"cursorPageUpSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1035}})),a.CursorDown=(0,n.E_)(new i({args:{direction:3,unit:2,select:!1,value:1},id:"cursorDown",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:18,mac:{primary:18,secondary:[300]}}})),a.CursorDownSelect=(0,n.E_)(new i({args:{direction:3,unit:2,select:!0,value:1},id:"cursorDownSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1042,secondary:[3090],mac:{primary:1042},linux:{primary:1042}}})),a.CursorPageDown=(0,n.E_)(new i({args:{direction:3,unit:2,select:!1,value:-1},id:"cursorPageDown",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:12}})),a.CursorPageDownSelect=(0,n.E_)(new i({args:{direction:3,unit:2,select:!0,value:-1},id:"cursorPageDownSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1036}})),a.CreateCursor=(0,n.E_)(new class extends B{constructor(){super({id:"createCursor",precondition:void 0})}runCoreEditorCommand(a,b){let c;if(!b.position)return;c=b.wholeLine?u.c.line(a,a.getPrimaryCursorState(),!1,b.position,b.viewPosition):u.c.moveTo(a,a.getPrimaryCursorState(),!1,b.position,b.viewPosition);let d=a.getCursorStates();if(d.length>1){let e=c.modelState?c.modelState.position:null,f=c.viewState?c.viewState.position:null;for(let c=0,g=d.length;c<g;c++){let g=d[c];if((!e||g.modelState.selection.containsPosition(e))&&(!f||g.viewState.selection.containsPosition(f))){d.splice(c,1),a.model.pushStackElement(),a.setCursorStates(b.source,3,d);return}}}d.push(c),a.model.pushStackElement(),a.setCursorStates(b.source,3,d)}}),a.LastCursorMoveToSelect=(0,n.E_)(new class extends B{constructor(){super({id:"_lastCursorMoveToSelect",precondition:void 0})}runCoreEditorCommand(a,b){if(!b.position)return;let c=a.getLastAddedCursorIndex(),d=a.getCursorStates(),e=d.slice(0);e[c]=u.c.moveTo(a,d[c],!0,b.position,b.viewPosition),a.model.pushStackElement(),a.setCursorStates(b.source,3,e)}});class l extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,u.c.moveToBeginningOfLine(a,a.getCursorStates(),this._inSelectionMode)),a.revealAllCursors(b.source,!0)}}a.CursorHome=(0,n.E_)(new l({inSelectionMode:!1,id:"cursorHome",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:14,mac:{primary:14,secondary:[2063]}}})),a.CursorHomeSelect=(0,n.E_)(new l({inSelectionMode:!0,id:"cursorHomeSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1038,mac:{primary:1038,secondary:[3087]}}}));class o extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,this._exec(a.getCursorStates())),a.revealAllCursors(b.source,!0)}_exec(a){let b=[];for(let c=0,d=a.length;c<d;c++){let d=a[c],e=d.modelState.position.lineNumber;b[c]=p.MF.fromModelState(d.modelState.move(this._inSelectionMode,e,1,0))}return b}}a.CursorLineStart=(0,n.E_)(new o({inSelectionMode:!1,id:"cursorLineStart",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:0,mac:{primary:287}}})),a.CursorLineStartSelect=(0,n.E_)(new o({inSelectionMode:!0,id:"cursorLineStartSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:0,mac:{primary:1311}}}));class t extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,u.c.moveToEndOfLine(a,a.getCursorStates(),this._inSelectionMode,b.sticky||!1)),a.revealAllCursors(b.source,!0)}}a.CursorEnd=(0,n.E_)(new t({inSelectionMode:!1,id:"cursorEnd",precondition:void 0,kbOpts:{args:{sticky:!1},weight:0,kbExpr:w.R.textInputFocus,primary:13,mac:{primary:13,secondary:[2065]}},metadata:{description:"Go to End",args:[{name:"args",schema:{type:"object",properties:{sticky:{description:j.kg(61,"Stick to the end even when going to longer lines"),type:"boolean",default:!1}}}}]}})),a.CursorEndSelect=(0,n.E_)(new t({inSelectionMode:!0,id:"cursorEndSelect",precondition:void 0,kbOpts:{args:{sticky:!1},weight:0,kbExpr:w.R.textInputFocus,primary:1037,mac:{primary:1037,secondary:[3089]}},metadata:{description:"Select to End",args:[{name:"args",schema:{type:"object",properties:{sticky:{description:j.kg(62,"Stick to the end even when going to longer lines"),type:"boolean",default:!1}}}}]}}));class v extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,this._exec(a,a.getCursorStates())),a.revealAllCursors(b.source,!0)}_exec(a,b){let c=[];for(let d=0,e=b.length;d<e;d++){let e=b[d],f=e.modelState.position.lineNumber,g=a.model.getLineMaxColumn(f);c[d]=p.MF.fromModelState(e.modelState.move(this._inSelectionMode,f,g,0))}return c}}a.CursorLineEnd=(0,n.E_)(new v({inSelectionMode:!1,id:"cursorLineEnd",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:0,mac:{primary:291}}})),a.CursorLineEndSelect=(0,n.E_)(new v({inSelectionMode:!0,id:"cursorLineEndSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:0,mac:{primary:1315}}}));class x extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,u.c.moveToBeginningOfBuffer(a,a.getCursorStates(),this._inSelectionMode)),a.revealAllCursors(b.source,!0)}}a.CursorTop=(0,n.E_)(new x({inSelectionMode:!1,id:"cursorTop",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:2062,mac:{primary:2064}}})),a.CursorTopSelect=(0,n.E_)(new x({inSelectionMode:!0,id:"cursorTopSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3086,mac:{primary:3088}}}));class y extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,u.c.moveToEndOfBuffer(a,a.getCursorStates(),this._inSelectionMode)),a.revealAllCursors(b.source,!0)}}a.CursorBottom=(0,n.E_)(new y({inSelectionMode:!1,id:"cursorBottom",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:2061,mac:{primary:2066}}})),a.CursorBottomSelect=(0,n.E_)(new y({inSelectionMode:!0,id:"cursorBottomSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3085,mac:{primary:3090}}}));class z extends B{constructor(){super({id:"editorScroll",precondition:void 0,metadata:f.metadata})}determineScrollMethod(a){return[6].includes(a.unit)&&[4,2].includes(a.direction)?this._runHorizontalEditorScroll.bind(this):[1,2,3,4,5,6].includes(a.unit)&&[1,3].includes(a.direction)?this._runVerticalEditorScroll.bind(this):null}runCoreEditorCommand(a,b){let c=f.parse(b);if(!c)return;let d=this.determineScrollMethod(c);d&&d(a,b.source,c)}_runVerticalEditorScroll(a,b,c){let d=this._computeDesiredScrollTop(a,c);if(c.revealCursor){let e=a.getCompletelyVisibleViewRangeAtScrollTop(d);a.setCursorStates(b,3,[u.c.findPositionInViewportIfOutside(a,a.getPrimaryCursorState(),e,c.select)])}a.viewLayout.setScrollPosition({scrollTop:d},0)}_computeDesiredScrollTop(a,b){let c;if(1===b.unit){let c,d=a.viewLayout.getFutureViewport(),e=a.getCompletelyVisibleViewRangeAtScrollTop(d.top),f=a.coordinatesConverter.convertViewRangeToModelRange(e);c=1===b.direction?Math.max(1,f.startLineNumber-b.value):Math.min(a.model.getLineCount(),f.startLineNumber+b.value);let g=a.coordinatesConverter.convertModelPositionToViewPosition(new q.y(c,1));return a.viewLayout.getVerticalOffsetForLineNumber(g.lineNumber)}if(5===b.unit){let c=0;return 3===b.direction&&(c=a.model.getLineCount()-a.cursorConfig.pageSize),a.viewLayout.getVerticalOffsetForLineNumber(c)}c=3===b.unit?a.cursorConfig.pageSize*b.value:4===b.unit?Math.round(a.cursorConfig.pageSize/2)*b.value:b.value;let d=(1===b.direction?-1:1)*c;return a.viewLayout.getCurrentScrollTop()+d*a.cursorConfig.lineHeight}_runHorizontalEditorScroll(a,b,c){let d=this._computeDesiredScrollLeft(a,c);a.viewLayout.setScrollPosition({scrollLeft:d},0)}_computeDesiredScrollLeft(a,b){let c=(4===b.direction?-1:1)*b.value;return a.viewLayout.getCurrentScrollLeft()+c*a.cursorConfig.typicalHalfwidthCharacterWidth}}a.EditorScrollImpl=z,a.EditorScroll=(0,n.E_)(new z),a.ScrollLineUp=(0,n.E_)(new class extends B{constructor(){super({id:"scrollLineUp",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:2064,mac:{primary:267}}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Up,by:f.RawUnit.WrappedLine,value:1,revealCursor:!1,select:!1,source:c.source})}}),a.ScrollPageUp=(0,n.E_)(new class extends B{constructor(){super({id:"scrollPageUp",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:2059,win:{primary:523},linux:{primary:523}}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Up,by:f.RawUnit.Page,value:1,revealCursor:!1,select:!1,source:c.source})}}),a.ScrollEditorTop=(0,n.E_)(new class extends B{constructor(){super({id:"scrollEditorTop",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Up,by:f.RawUnit.Editor,value:1,revealCursor:!1,select:!1,source:c.source})}}),a.ScrollLineDown=(0,n.E_)(new class extends B{constructor(){super({id:"scrollLineDown",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:2066,mac:{primary:268}}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Down,by:f.RawUnit.WrappedLine,value:1,revealCursor:!1,select:!1,source:c.source})}}),a.ScrollPageDown=(0,n.E_)(new class extends B{constructor(){super({id:"scrollPageDown",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:2060,win:{primary:524},linux:{primary:524}}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Down,by:f.RawUnit.Page,value:1,revealCursor:!1,select:!1,source:c.source})}}),a.ScrollEditorBottom=(0,n.E_)(new class extends B{constructor(){super({id:"scrollEditorBottom",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Down,by:f.RawUnit.Editor,value:1,revealCursor:!1,select:!1,source:c.source})}}),a.ScrollLeft=(0,n.E_)(new class extends B{constructor(){super({id:"scrollLeft",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Left,by:f.RawUnit.Column,value:2,revealCursor:!1,select:!1,source:c.source})}}),a.ScrollRight=(0,n.E_)(new class extends B{constructor(){super({id:"scrollRight",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Right,by:f.RawUnit.Column,value:2,revealCursor:!1,select:!1,source:c.source})}});class A extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){b.position&&(a.model.pushStackElement(),a.setCursorStates(b.source,3,[u.c.word(a,a.getPrimaryCursorState(),this._inSelectionMode,b.position)]),2!==b.revealType&&a.revealAllCursors(b.source,!0,!0))}}a.WordSelect=(0,n.E_)(new A({inSelectionMode:!1,id:"_wordSelect",precondition:void 0})),a.WordSelectDrag=(0,n.E_)(new A({inSelectionMode:!0,id:"_wordSelectDrag",precondition:void 0})),a.LastCursorWordSelect=(0,n.E_)(new class extends B{constructor(){super({id:"lastCursorWordSelect",precondition:void 0})}runCoreEditorCommand(a,b){if(!b.position)return;let c=a.getLastAddedCursorIndex(),d=a.getCursorStates(),e=d.slice(0),f=d[c];e[c]=u.c.word(a,f,f.modelState.hasSelection(),b.position),a.model.pushStackElement(),a.setCursorStates(b.source,3,e)}});class D extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){b.position&&(a.model.pushStackElement(),a.setCursorStates(b.source,3,[u.c.line(a,a.getPrimaryCursorState(),this._inSelectionMode,b.position,b.viewPosition)]),2!==b.revealType&&a.revealAllCursors(b.source,!1,!0))}}a.LineSelect=(0,n.E_)(new D({inSelectionMode:!1,id:"_lineSelect",precondition:void 0})),a.LineSelectDrag=(0,n.E_)(new D({inSelectionMode:!0,id:"_lineSelectDrag",precondition:void 0}));class E extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){if(!b.position)return;let c=a.getLastAddedCursorIndex(),d=a.getCursorStates(),e=d.slice(0);e[c]=u.c.line(a,d[c],this._inSelectionMode,b.position,b.viewPosition),a.model.pushStackElement(),a.setCursorStates(b.source,3,e)}}a.LastCursorLineSelect=(0,n.E_)(new E({inSelectionMode:!1,id:"lastCursorLineSelect",precondition:void 0})),a.LastCursorLineSelectDrag=(0,n.E_)(new E({inSelectionMode:!0,id:"lastCursorLineSelectDrag",precondition:void 0})),a.CancelSelection=(0,n.E_)(new class extends B{constructor(){super({id:"cancelSelection",precondition:w.R.hasNonEmptySelection,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:9,secondary:[1033]}})}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,[u.c.cancelSelection(a,a.getPrimaryCursorState())]),a.revealAllCursors(b.source,!0)}}),a.RemoveSecondaryCursors=(0,n.E_)(new class extends B{constructor(){super({id:"removeSecondaryCursors",precondition:w.R.hasMultipleSelections,kbOpts:{weight:1,kbExpr:w.R.textInputFocus,primary:9,secondary:[1033]}})}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,[a.getPrimaryCursorState()]),a.revealAllCursors(b.source,!0),(0,m.h5)(j.kg(63,"Removed secondary cursors"))}}),a.RevealLine=(0,n.E_)(new class extends B{constructor(){super({id:"revealLine",precondition:void 0,metadata:g.metadata})}runCoreEditorCommand(a,b){let c=b.lineNumber||0,d="number"==typeof c?c+1:parseInt(c)+1;d<1&&(d=1);let e=a.model.getLineCount();d>e&&(d=e);let f=new r.Q(d,1,d,a.model.getLineMaxColumn(d)),h=0;if(b.at)switch(b.at){case g.RawAtArgument.Top:h=3;break;case g.RawAtArgument.Center:h=1;break;case g.RawAtArgument.Bottom:h=4}let i=a.coordinatesConverter.convertModelRangeToViewRange(f);a.revealRange(b.source,!1,i,h,0)}}),a.SelectAll=new class extends C{constructor(){super(n.tc)}runDOMCommand(a){k.gm&&(a.focus(),a.select()),a.ownerDocument.execCommand("selectAll")}runEditorCommand(a,b,c){let d=b._getViewModel();d&&this.runCoreEditorCommand(d,c)}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates("keyboard",3,[u.c.selectAll(a,a.getPrimaryCursorState())])}},a.SetSelection=(0,n.E_)(new class extends B{constructor(){super({id:"setSelection",precondition:void 0})}runCoreEditorCommand(a,b){b.selection&&(a.model.pushStackElement(),a.setCursorStates(b.source,3,[p.MF.fromModelSelection(b.selection)]))}})}(h||(h={}));let D=x.M$.and(w.R.textInputFocus,w.R.columnSelection);function E(a,b){y.f.registerKeybindingRule({id:a,primary:b,when:D,weight:1})}function F(a){return a.register(),a}E(h.CursorColumnSelectLeft.id,1039),E(h.CursorColumnSelectRight.id,1041),E(h.CursorColumnSelectUp.id,1040),E(h.CursorColumnSelectPageUp.id,1035),E(h.CursorColumnSelectDown.id,1042),E(h.CursorColumnSelectPageDown.id,1036);var G=i||(i={});class H extends n.DX{runEditorCommand(a,b,c){let d=b._getViewModel();d&&this.runCoreEditingCommand(b,d,c||{})}}G.CoreEditingCommand=H,G.LineBreakInsert=(0,n.E_)(new class extends H{constructor(){super({id:"lineBreakInsert",precondition:w.R.writable,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:0,mac:{primary:301}}})}runCoreEditingCommand(a,b,c){a.pushUndoStop(),a.executeCommands(this.id,A.AO.lineBreakInsert(b.cursorConfig,b.model,b.getCursorStates().map(a=>a.modelState.selection)))}}),G.Outdent=(0,n.E_)(new class extends H{constructor(){super({id:"outdent",precondition:w.R.writable,kbOpts:{weight:0,kbExpr:x.M$.and(w.R.editorTextFocus,w.R.tabDoesNotMoveFocus),primary:1026}})}runCoreEditingCommand(a,b,c){a.pushUndoStop(),a.executeCommands(this.id,v.T.outdent(b.cursorConfig,b.model,b.getCursorStates().map(a=>a.modelState.selection))),a.pushUndoStop()}}),G.Tab=(0,n.E_)(new class extends H{constructor(){super({id:"tab",precondition:w.R.writable,kbOpts:{weight:0,kbExpr:x.M$.and(w.R.editorTextFocus,w.R.tabDoesNotMoveFocus),primary:2}})}runCoreEditingCommand(a,b,c){a.pushUndoStop(),a.executeCommands(this.id,v.T.tab(b.cursorConfig,b.model,b.getCursorStates().map(a=>a.modelState.selection))),a.pushUndoStop()}}),G.DeleteLeft=(0,n.E_)(new class extends H{constructor(){super({id:"deleteLeft",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1,secondary:[1025],mac:{primary:1,secondary:[1025,294,257]}}})}runCoreEditingCommand(a,b,c){let[d,e]=t.g.deleteLeft(b.getPrevEditOperationType(),b.cursorConfig,b.model,b.getCursorStates().map(a=>a.modelState.selection),b.getCursorAutoClosedCharacters());d&&a.pushUndoStop(),a.executeCommands(this.id,e),b.setPrevEditOperationType(2)}}),G.DeleteRight=(0,n.E_)(new class extends H{constructor(){super({id:"deleteRight",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:20,mac:{primary:20,secondary:[290,276]}}})}runCoreEditingCommand(a,b,c){let[d,e]=t.g.deleteRight(b.getPrevEditOperationType(),b.cursorConfig,b.model,b.getCursorStates().map(a=>a.modelState.selection));d&&a.pushUndoStop(),a.executeCommands(this.id,e),b.setPrevEditOperationType(3)}}),G.Undo=new class extends C{constructor(){super(n.aU)}runDOMCommand(a){a.ownerDocument.execCommand("undo")}runEditorCommand(a,b,c){if(b.hasModel()&&!0!==b.getOption(104))return b.getModel().undo()}},G.Redo=new class extends C{constructor(){super(n.ih)}runDOMCommand(a){a.ownerDocument.execCommand("redo")}runEditorCommand(a,b,c){if(b.hasModel()&&!0!==b.getOption(104))return b.getModel().redo()}};class I extends n.uB{constructor(a,b,c){super({id:a,precondition:void 0,metadata:c}),this._handlerId=b}runCommand(a,b){let c=a.get(o.T).getFocusedCodeEditor();c&&c.trigger("keyboard",this._handlerId,b)}}function J(a,b){F(new I("default:"+a,a)),F(new I(a,a,b))}J("type",{description:"Type",args:[{name:"args",schema:{type:"object",required:["text"],properties:{text:{type:"string"}}}}]}),J("replacePreviousChar"),J("compositionType"),J("compositionStart"),J("compositionEnd"),J("paste"),J("cut")},50682:(a,b,c)=>{"use strict";c.d(b,{FH:()=>j,Sc:()=>m,kk:()=>n,lM:()=>k});var d=c(32665),e=c(3457),f=c(10322),g=c(87445),h=c(29501),i=c(8211);c(25126);let j={inputActiveOptionBorder:"#007ACC00",inputActiveOptionForeground:"#FFFFFF",inputActiveOptionBackground:"#0E639C50"};class k extends i.x{get onChange(){return this._onChange.event}get onKeyDown(){return this._onKeyDown.event}constructor(a){super(),this._onChange=this._register(new e.vl),this._onKeyDown=this._register(new e.vl),this._opts=a,this._checked=this._opts.isChecked;const b=["monaco-custom-toggle"];this._opts.icon&&(this._icon=this._opts.icon,b.push(...f.L.asClassNameArray(this._icon))),this._opts.actionClassName&&b.push(...this._opts.actionClassName.split(" ")),this._checked&&b.push("checked"),this.domNode=document.createElement("div"),this._hover=this._register((0,g.i)().setupManagedHover(a.hoverDelegate??(0,h.nZ)("mouse"),this.domNode,this._opts.title)),this.domNode.classList.add(...b),this._opts.notFocusable||(this.domNode.tabIndex=0),this.domNode.setAttribute("role","checkbox"),this.domNode.setAttribute("aria-checked",String(this._checked)),this.domNode.setAttribute("aria-label",this._opts.title),this.applyStyles(),this.onclick(this.domNode,a=>{this.enabled&&(this.checked=!this._checked,this._onChange.fire(!1),a.preventDefault())}),this._register(this.ignoreGesture(this.domNode)),this.onkeydown(this.domNode,a=>{if(this.enabled){if(10===a.keyCode||3===a.keyCode){this.checked=!this._checked,this._onChange.fire(!0),a.preventDefault(),a.stopPropagation();return}this._onKeyDown.fire(a)}})}get enabled(){return"true"!==this.domNode.getAttribute("aria-disabled")}focus(){this.domNode.focus()}get checked(){return this._checked}set checked(a){this._checked=a,this.domNode.setAttribute("aria-checked",String(this._checked)),this.domNode.classList.toggle("checked",this._checked),this.applyStyles()}setIcon(a){this._icon&&this.domNode.classList.remove(...f.L.asClassNameArray(this._icon)),this._icon=a,this._icon&&this.domNode.classList.add(...f.L.asClassNameArray(this._icon))}width(){return 22}applyStyles(){this.domNode&&(this.domNode.style.borderColor=this._checked&&this._opts.inputActiveOptionBorder||"",this.domNode.style.color=this._checked&&this._opts.inputActiveOptionForeground||"inherit",this.domNode.style.backgroundColor=this._checked&&this._opts.inputActiveOptionBackground||"")}enable(){this.domNode.setAttribute("aria-disabled",String(!1)),this.domNode.classList.remove("disabled")}disable(){this.domNode.setAttribute("aria-disabled",String(!0)),this.domNode.classList.add("disabled")}setTitle(a){this._hover.update(a),this.domNode.setAttribute("aria-label",a)}}class l extends i.x{static{this.CLASS_NAME="monaco-checkbox"}constructor(a,b,c){super(),this.checkbox=a,this.domNode=b,this.styles=c,this._onChange=this._register(new e.vl),this.onChange=this._onChange.event,this.applyStyles()}get enabled(){return this.checkbox.enabled}enable(){this.checkbox.enable(),this.applyStyles(!0)}disable(){this.checkbox.disable(),this.applyStyles(!1)}setTitle(a){this.checkbox.setTitle(a)}applyStyles(a=this.enabled){this.domNode.style.color=(a?this.styles.checkboxForeground:this.styles.checkboxDisabledForeground)||"",this.domNode.style.backgroundColor=(a?this.styles.checkboxBackground:this.styles.checkboxDisabledBackground)||"",this.domNode.style.borderColor=(a?this.styles.checkboxBorder:this.styles.checkboxDisabledBackground)||"";let b=this.styles.size||18;this.domNode.style.width=this.domNode.style.height=this.domNode.style.fontSize=`${b}px`,this.domNode.style.fontSize=`${b-2}px`}}class m extends l{constructor(a,b,c){const e=new k({title:a,isChecked:b,icon:d.W.check,actionClassName:l.CLASS_NAME,hoverDelegate:c.hoverDelegate,...j});super(e,e.domNode,c),this._register(e),this._register(this.checkbox.onChange(a=>{this.applyStyles(),this._onChange.fire(a)}))}get checked(){return this.checkbox.checked}set checked(a){this.checkbox.checked=a,this.applyStyles()}applyStyles(a){this.checkbox.checked?this.checkbox.setIcon(d.W.check):this.checkbox.setIcon(void 0),super.applyStyles(a)}}class n extends l{constructor(a,b,c){let e;switch(b){case!0:e=d.W.check;break;case"partial":e=d.W.dash;break;case!1:e=void 0}const f=new k({title:a,isChecked:!0===b,icon:e,actionClassName:m.CLASS_NAME,hoverDelegate:c.hoverDelegate,...j});super(f,f.domNode,c),this._state=b,this._register(f),this._register(this.checkbox.onChange(a=>{this._state=this.checkbox.checked,this.applyStyles(),this._onChange.fire(a)}))}get checked(){return this._state}set checked(a){this._state!==a&&(this._state=a,this.checkbox.checked=!0===a,this.applyStyles())}applyStyles(a){switch(this._state){case!0:this.checkbox.setIcon(d.W.check);break;case"partial":this.checkbox.setIcon(d.W.dash);break;case!1:this.checkbox.setIcon(void 0)}super.applyStyles(a)}}},50689:(a,b,c)=>{"use strict";c.d(b,{Go:()=>function a(b){if(!b||"object"!=typeof b||b instanceof RegExp)return b;let c=Array.isArray(b)?[]:{};return Object.entries(b).forEach(([b,d])=>{c[b]=d&&"object"==typeof d?a(d):d}),c},PI:()=>g,aI:()=>function a(b,c){let d,e;if(b===c)return!0;if(null==b||null==c||typeof b!=typeof c||"object"!=typeof b||Array.isArray(b)!==Array.isArray(c))return!1;if(Array.isArray(b)){if(b.length!==c.length)return!1;for(d=0;d<b.length;d++)if(!a(b[d],c[d]))return!1}else{let f=[];for(e in b)f.push(e);f.sort();let g=[];for(e in c)g.push(e);if(g.sort(),!a(f,g))return!1;for(d=0;d<f.length;d++)if(!a(b[f[d]],c[f[d]]))return!1}return!0},co:()=>function a(b,c,e=!0){return(0,d.Gv)(b)?((0,d.Gv)(c)&&Object.keys(c).forEach(f=>{f in b?e&&((0,d.Gv)(b[f])&&(0,d.Gv)(c[f])?a(b[f],c[f],e):b[f]=c[f]):b[f]=c[f]}),b):c},ol:()=>e});var d=c(98896);function e(a){if(!a||"object"!=typeof a)return a;let b=[a];for(;b.length>0;){let a=b.shift();for(let c in Object.freeze(a),a)if(f.call(a,c)){let e=a[c];"object"!=typeof e||Object.isFrozen(e)||(0,d.iu)(e)||b.push(e)}}return a}let f=Object.prototype.hasOwnProperty;function g(a,b){return function a(b,c,e){if((0,d.z)(b))return b;let g=c(b);if(void 0!==g)return g;if(Array.isArray(b)){let d=[];for(let f of b)d.push(a(f,c,e));return d}if((0,d.Gv)(b)){if(e.has(b))throw Error("Cannot clone recursive data-structure");e.add(b);let d={};for(let g in b)f.call(b,g)&&(d[g]=a(b[g],c,e));return e.delete(b),d}return b}(a,b,new Set)}},51203:()=>{},51407:(a,b,c)=>{"use strict";c.d(b,{L:()=>u});var d,e,f=c(63048),g=c(88586),h=c(3457),i=c(40201),j=c(42727),k=c(21652),l=c(14061),m=c(75880),n=c(12546);let o=class extends i.jG{constructor(a){super(),this._logService=a,this._tasks=[],this._i=0,this._register((0,i.s)(()=>this.clear()))}enqueue(a){this._tasks.push(a),this._start()}clear(){this._idleCallback&&(this._cancelCallback(this._idleCallback),this._idleCallback=void 0),this._i=0,this._tasks.length=0}_start(){this._idleCallback||(this._idleCallback=this._requestCallback(this._process.bind(this)))}_process(a){this._idleCallback=void 0;let b=0,c=0,d=a.timeRemaining(),e=0;for(;this._i<this._tasks.length;){if(b=Date.now(),!this._tasks[this._i]()&&this._i++,1.5*(c=Math.max(b=Math.max(1,Date.now()-b),c))>(e=a.timeRemaining())){d-b<-20&&this._logService.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(d-b))}ms`),this._start();return}d=e}this.clear()}};o=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(d=n.rr,function(a,b){d(a,b,0)})],o);class p extends o{_requestCallback(a){return(0,f.fz)().setTimeout(()=>a(this._createDeadline(16)))}_cancelCallback(a){(0,f.fz)().clearTimeout(a)}_createDeadline(a){let b=Date.now()+a;return{timeRemaining:()=>Math.max(0,b-Date.now())}}}class q extends o{_requestCallback(a){return(0,f.fz)().requestIdleCallback(a)}_cancelCallback(a){(0,f.fz)().cancelIdleCallback(a)}}let r="requestIdleCallback"in(0,f.fz)()?q:p;var s=c(64217),t=function(a,b){return function(c,d){b(c,d,a)}};let u=class extends i.jG{static{e=this}static{this.maximumPageCount=16}get pages(){return this._pages}constructor(a,b,c,d,e){super(),this._maxTextureSize=a,this._decorationStyleCache=c,this._themeService=d,this._instantiationService=e,this._warmUpTask=this._register(new i.HE),this._warmedUpRasterizers=new Set,this._pages=[],this._glyphPageIndex=new j.QO,this._onDidDeleteGlyphs=this._register(new h.vl),this.onDidDeleteGlyphs=this._onDidDeleteGlyphs.event,this._allocatorType=b?.allocatorType??"slab",this._register(h.Jh.runAndSubscribe(this._themeService.onDidColorThemeChange,()=>{this._colorMap&&this.clear(),this._colorMap=this._themeService.getColorTheme().tokenColorMap}));const g=Math.max(1,Math.floor((0,f.fz)().devicePixelRatio));this.pageSize=Math.min(1024*g,this._maxTextureSize),this._initFirstPage(),this._register((0,i.s)(()=>(0,i.AS)(this._pages)))}_initFirstPage(){let a=this._instantiationService.createInstance(s.g,0,this.pageSize,this._allocatorType);this._pages.push(a);let b=new m.O(1,"",1,this._decorationStyleCache);a.getGlyph(b,"",0,0),b.dispose()}clear(){for(let a of this._pages)a.dispose();this._pages.length=0,this._glyphPageIndex.clear(),this._warmedUpRasterizers.clear(),this._warmUpTask.clear(),this._initFirstPage(),this._onDidDeleteGlyphs.fire()}getGlyph(a,b,c,d,e){return c&=-2048,c|=Math.floor(e%1*10),this._warmedUpRasterizers.has(a.id)||(this._warmUpAtlas(a),this._warmedUpRasterizers.add(a.id)),this._tryGetGlyph(this._glyphPageIndex.get(b,c,d,a.cacheKey)??0,a,b,c,d)}_tryGetGlyph(a,b,c,d,e){return this._glyphPageIndex.set(a,c,d,e,b.cacheKey),this._pages[a].getGlyph(b,c,d,e)??(a+1<this._pages.length?this._tryGetGlyph(a+1,b,c,d,e):void 0)??this._getGlyphFromNewPage(b,c,d,e)}_getGlyphFromNewPage(a,b,c,d){if(this._pages.length>=e.maximumPageCount)throw Error(`Attempt to create a texture atlas page past the limit ${e.maximumPageCount}`);return this._pages.push(this._instantiationService.createInstance(s.g,this._pages.length,this.pageSize,this._allocatorType)),this._glyphPageIndex.set(this._pages.length-1,b,c,d,a.cacheKey),this._pages[this._pages.length-1].getGlyph(a,b,c,d)}getStats(){return this._pages.map(a=>a.getStats())}_warmUpAtlas(a){let b=this._colorMap;if(!b)throw new g.D7("Cannot warm atlas without color map");this._warmUpTask.value?.clear();let c=this._warmUpTask.value=this._instantiationService.createInstance(r);for(let d=65;d<=90;d++)for(let e of b.keys())c.enqueue(()=>{for(let b=0;b<1;b+=.1)this.getGlyph(a,String.fromCharCode(d),e<<15&0xff8000,0,b)});for(let d=97;d<=122;d++)for(let e of b.keys())c.enqueue(()=>{for(let b=0;b<1;b+=.1)this.getGlyph(a,String.fromCharCode(d),e<<15&0xff8000,0,b)});for(let d=33;d<=126;d++)for(let e of b.keys())c.enqueue(()=>{for(let b=0;b<1;b+=.1)this.getGlyph(a,String.fromCharCode(d),e<<15&0xff8000,0,b)})}};u=e=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([t(3,l.Gy),t(4,k._Y)],u)},51644:(a,b,c)=>{"use strict";c.d(b,{m:()=>f});var d=c(85268),e=c(53918);class f extends d.CO{constructor(a){super(),this._textModel=a}getValueOfRange(a){return this._textModel.getValueInRange(a)}getLineLength(a){return this._textModel.getLineLength(a)}get length(){let a=this._textModel.getLineCount(),b=this._textModel.getLineLength(a);return new e.W(a-1,b)}}},51864:(a,b,c)=>{"use strict";function d(a,b,c=a.length-1){let e=function(a,b,c=a.length-1){for(let d=c;d>=0;d--)if(b(a[d]))return d;return -1}(a,b,c);if(-1!==e)return a[e]}function e(a,b){let c=f(a,b);return -1===c?void 0:a[c]}function f(a,b,c=0,d=a.length){let e=c,g=d;for(;e<g;){let c=Math.floor((e+g)/2);b(a[c])?e=c+1:g=c}return e-1}function g(a,b){let c=h(a,b);return c===a.length?void 0:a[c]}function h(a,b,c=0,d=a.length){let e=c,f=d;for(;e<f;){let c=Math.floor((e+f)/2);b(a[c])?f=c:e=c+1}return e}c.d(b,{Cn:()=>j,TM:()=>m,Uk:()=>d,XP:()=>g,hw:()=>h,iM:()=>f,kh:()=>l,lx:()=>e,oH:()=>n,ot:()=>k,vJ:()=>i});class i{static{this.assertInvariants=!1}constructor(a){this._array=a,this._findLastMonotonousLastIdx=0}findLastMonotonous(a){if(i.assertInvariants){if(this._prevFindLastPredicate){for(let b of this._array)if(this._prevFindLastPredicate(b)&&!a(b))throw Error("MonotonousArray: current predicate must be weaker than (or equal to) the previous predicate.")}this._prevFindLastPredicate=a}let b=f(this._array,a,this._findLastMonotonousLastIdx);return this._findLastMonotonousLastIdx=b+1,-1===b?void 0:this._array[b]}}function j(a,b){if(0===a.length)return;let c=a[0];for(let d=1;d<a.length;d++){let e=a[d];b(e,c)>0&&(c=e)}return c}function k(a,b){if(0===a.length)return;let c=a[0];for(let d=1;d<a.length;d++){let e=a[d];b(e,c)>=0&&(c=e)}return c}function l(a,b){return j(a,(a,c)=>-b(a,c))}function m(a,b){if(0===a.length)return -1;let c=0;for(let d=1;d<a.length;d++)b(a[d],a[c])>0&&(c=d);return c}function n(a,b){for(let c of a){let a=b(c);if(void 0!==a)return a}}},52051:()=>{},52376:(a,b,c)=>{"use strict";var d,e;c.d(b,{N6:()=>d,TH:()=>f,pv:()=>g}),(e=d||(d={}))[e.Disabled=0]="Disabled",e[e.EnabledForActive=1]="EnabledForActive",e[e.Enabled=2]="Enabled";class f{constructor(a,b,c,d,e,f){if(this.visibleColumn=a,this.column=b,this.className=c,this.horizontalLine=d,this.forWrappedLinesAfterColumn=e,this.forWrappedLinesBeforeOrAtColumn=f,-1!==a==(-1!==b))throw Error()}}class g{constructor(a,b){this.top=a,this.endColumn=b}}},53135:(a,b,c)=>{"use strict";function d(a,b,c){let d=null,e=null;if("function"==typeof c.value?(d="value",0!==(e=c.value).length&&console.warn("Memoize should only be used in functions with zero parameters")):"function"==typeof c.get&&(d="get",e=c.get),!e)throw Error("not supported");let f=`$memoize$${b}`;c[d]=function(...a){return this.hasOwnProperty(f)||Object.defineProperty(this,f,{configurable:!1,enumerable:!1,writable:!1,value:e.apply(this,a)}),this[f]}}c.d(b,{B:()=>d})},53748:(a,b,c)=>{"use strict";c.d(b,{U:()=>w,X:()=>g});var d,e,f,g,h=c(63048),i=c(1644),j=c(99128),k=c(72766),l=c(42891),m=c(81034),n=c(3457),o=c(40201),p=c(35223),q=c(71684),r=c(98896);c(58656);let s={separatorBorder:m.Q1.transparent};class t{set size(a){this._size=a}get size(){return this._size}get visible(){return void 0===this._cachedVisibleSize}setVisible(a,b){if(a!==this.visible){a?(this.size=(0,p.qE)(this._cachedVisibleSize,this.viewMinimumSize,this.viewMaximumSize),this._cachedVisibleSize=void 0):(this._cachedVisibleSize="number"==typeof b?b:this.size,this.size=0),this.container.classList.toggle("visible",a);try{this.view.setVisible?.(a)}catch(a){console.error("Splitview: Failed to set visible view"),console.error(a)}}}get minimumSize(){return this.visible?this.view.minimumSize:0}get viewMinimumSize(){return this.view.minimumSize}get maximumSize(){return this.visible?this.view.maximumSize:0}get viewMaximumSize(){return this.view.maximumSize}get priority(){return this.view.priority}get proportionalLayout(){return this.view.proportionalLayout??!0}get snap(){return!!this.view.snap}set enabled(a){this.container.style.pointerEvents=a?"":"none"}constructor(a,b,c,d){this.container=a,this.view=b,this.disposable=d,this._cachedVisibleSize=void 0,"number"==typeof c?(this._size=c,this._cachedVisibleSize=void 0,a.classList.add("visible")):(this._size=0,this._cachedVisibleSize=c.cachedVisibleSize)}layout(a,b){this.layoutContainer(a);try{this.view.layout(this.size,a,b)}catch(a){console.error("Splitview: Failed to layout view"),console.error(a)}}dispose(){this.disposable.dispose()}}class u extends t{layoutContainer(a){this.container.style.top=`${a}px`,this.container.style.height=`${this.size}px`}}class v extends t{layoutContainer(a){this.container.style.left=`${a}px`,this.container.style.width=`${this.size}px`}}(d=f||(f={}))[d.Idle=0]="Idle",d[d.Busy=1]="Busy",(e=g||(g={})).Distribute={type:"distribute"},e.Split=function(a){return{type:"split",index:a}},e.Auto=function(a){return{type:"auto",index:a}},e.Invisible=function(a){return{type:"invisible",cachedVisibleSize:a}};class w extends o.jG{get orthogonalStartSash(){return this._orthogonalStartSash}get orthogonalEndSash(){return this._orthogonalEndSash}get startSnappingEnabled(){return this._startSnappingEnabled}get endSnappingEnabled(){return this._endSnappingEnabled}set orthogonalStartSash(a){for(let b of this.sashItems)b.sash.orthogonalStartSash=a;this._orthogonalStartSash=a}set orthogonalEndSash(a){for(let b of this.sashItems)b.sash.orthogonalEndSash=a;this._orthogonalEndSash=a}set startSnappingEnabled(a){this._startSnappingEnabled!==a&&(this._startSnappingEnabled=a,this.updateSashEnablement())}set endSnappingEnabled(a){this._endSnappingEnabled!==a&&(this._endSnappingEnabled=a,this.updateSashEnablement())}constructor(a,b={}){super(),this.size=0,this._contentSize=0,this.proportions=void 0,this.viewItems=[],this.sashItems=[],this.state=f.Idle,this._onDidSashChange=this._register(new n.vl),this._onDidSashReset=this._register(new n.vl),this._startSnappingEnabled=!0,this._endSnappingEnabled=!0,this.onDidSashChange=this._onDidSashChange.event,this.onDidSashReset=this._onDidSashReset.event,this.orientation=b.orientation??0,this.inverseAltBehavior=b.inverseAltBehavior??!1,this.proportionalLayout=b.proportionalLayout??!0,this.getSashOrthogonalSize=b.getSashOrthogonalSize,this.el=document.createElement("div"),this.el.classList.add("monaco-split-view2"),this.el.classList.add(0===this.orientation?"vertical":"horizontal"),a.appendChild(this.el),this.sashContainer=(0,h.BC)(this.el,(0,h.$)(".sash-container")),this.viewContainer=(0,h.$)(".split-view-container"),this.scrollable=this._register(new q.yE({forceIntegerValues:!0,smoothScrollDuration:125,scheduleAtNextAnimationFrame:a=>(0,h.PG)((0,h.zk)(this.el),a)})),this.scrollableElement=this._register(new k.oO(this.viewContainer,{vertical:0===this.orientation?b.scrollbarVisibility??1:2,horizontal:1===this.orientation?b.scrollbarVisibility??1:2},this.scrollable));const c=this._register(new i.f(this.viewContainer,"scroll")).event;this._register(c(a=>{let b=this.scrollableElement.getScrollPosition(),c=1>=Math.abs(this.viewContainer.scrollLeft-b.scrollLeft)?void 0:this.viewContainer.scrollLeft,d=1>=Math.abs(this.viewContainer.scrollTop-b.scrollTop)?void 0:this.viewContainer.scrollTop;(void 0!==c||void 0!==d)&&this.scrollableElement.setScrollPosition({scrollLeft:c,scrollTop:d})})),this.onDidScroll=this.scrollableElement.onScroll,this._register(this.onDidScroll(a=>{a.scrollTopChanged&&(this.viewContainer.scrollTop=a.scrollTop),a.scrollLeftChanged&&(this.viewContainer.scrollLeft=a.scrollLeft)})),(0,h.BC)(this.el,this.scrollableElement.getDomNode()),this.style(b.styles||s),b.descriptor&&(this.size=b.descriptor.size,b.descriptor.views.forEach((a,b)=>{let c=r.b0(a.visible)||a.visible?a.size:{type:"invisible",cachedVisibleSize:a.size},d=a.view;this.doAddView(d,c,b,!0)}),this._contentSize=this.viewItems.reduce((a,b)=>a+b.size,0),this.saveProportions())}style(a){a.separatorBorder.isTransparent()?(this.el.classList.remove("separator-border"),this.el.style.removeProperty("--separator-border")):(this.el.classList.add("separator-border"),this.el.style.setProperty("--separator-border",a.separatorBorder.toString()))}addView(a,b,c=this.viewItems.length,d){this.doAddView(a,b,c,d)}layout(a,b){let c=Math.max(this.size,this._contentSize);if(this.size=a,this.layoutContext=b,this.proportions){let b=0;for(let c=0;c<this.viewItems.length;c++){let d=this.viewItems[c],e=this.proportions[c];"number"==typeof e?b+=e:a-=d.size}for(let c=0;c<this.viewItems.length;c++){let d=this.viewItems[c],e=this.proportions[c];"number"==typeof e&&b>0&&(d.size=(0,p.qE)(Math.round(e*a/b),d.minimumSize,d.maximumSize))}}else{let b=(0,l.y1)(this.viewItems.length),d=b.filter(a=>1===this.viewItems[a].priority),e=b.filter(a=>2===this.viewItems[a].priority);this.resize(this.viewItems.length-1,a-c,void 0,d,e)}this.distributeEmptySpace(),this.layoutViews()}saveProportions(){this.proportionalLayout&&this._contentSize>0&&(this.proportions=this.viewItems.map(a=>a.proportionalLayout&&a.visible?a.size/this._contentSize:void 0))}onSashStart({sash:a,start:b,alt:c}){for(let a of this.viewItems)a.enabled=!1;let d=this.sashItems.findIndex(b=>b.sash===a),e=(0,o.qE)((0,h.ko)(this.el.ownerDocument.body,"keydown",a=>f(this.sashDragState.current,a.altKey)),(0,h.ko)(this.el.ownerDocument.body,"keyup",()=>f(this.sashDragState.current,!1))),f=(a,b)=>{let c,f,g=this.viewItems.map(a=>a.size),h=-1/0,i=1/0;if(this.inverseAltBehavior&&(b=!b),b)if(d===this.sashItems.length-1){let a=this.viewItems[d];h=(a.minimumSize-a.size)/2,i=(a.maximumSize-a.size)/2}else{let a=this.viewItems[d+1];h=(a.size-a.maximumSize)/2,i=(a.size-a.minimumSize)/2}if(!b){let a=(0,l.y1)(d,-1),b=(0,l.y1)(d+1,this.viewItems.length),e=a.reduce((a,b)=>a+(this.viewItems[b].minimumSize-g[b]),0),h=a.reduce((a,b)=>a+(this.viewItems[b].viewMaximumSize-g[b]),0),i=0===b.length?1/0:b.reduce((a,b)=>a+(g[b]-this.viewItems[b].minimumSize),0),j=Math.max(e,0===b.length?-1/0:b.reduce((a,b)=>a+(g[b]-this.viewItems[b].viewMaximumSize),0)),k=Math.min(i,h),m=this.findFirstSnapIndex(a),n=this.findFirstSnapIndex(b);if("number"==typeof m){let a=this.viewItems[m],b=Math.floor(a.viewMinimumSize/2);c={index:m,limitDelta:a.visible?j-b:j+b,size:a.size}}if("number"==typeof n){let a=this.viewItems[n],b=Math.floor(a.viewMinimumSize/2);f={index:n,limitDelta:a.visible?k+b:k-b,size:a.size}}}this.sashDragState={start:a,current:a,index:d,sizes:g,minDelta:h,maxDelta:i,alt:b,snapBefore:c,snapAfter:f,disposable:e}};f(b,c)}onSashChange({current:a}){let{index:b,start:c,sizes:d,alt:e,minDelta:f,maxDelta:g,snapBefore:h,snapAfter:i}=this.sashDragState;this.sashDragState.current=a;let j=this.resize(b,a-c,d,void 0,void 0,f,g,h,i);if(e){let a=b===this.sashItems.length-1,c=this.viewItems.map(a=>a.size),d=a?b:b+1,e=this.viewItems[d],f=e.size-e.maximumSize,g=e.size-e.minimumSize;this.resize(a?b-1:b+1,-j,c,void 0,void 0,f,g)}this.distributeEmptySpace(),this.layoutViews()}onSashEnd(a){for(let b of(this._onDidSashChange.fire(a),this.sashDragState.disposable.dispose(),this.saveProportions(),this.viewItems))b.enabled=!0}onViewChange(a,b){let c=this.viewItems.indexOf(a);c<0||c>=this.viewItems.length||(b="number"==typeof b?b:a.size,b=(0,p.qE)(b,a.minimumSize,a.maximumSize),this.inverseAltBehavior&&c>0?(this.resize(c-1,Math.floor((a.size-b)/2)),this.distributeEmptySpace(),this.layoutViews()):(a.size=b,this.relayout([c],void 0)))}resizeView(a,b){if(!(a<0)&&!(a>=this.viewItems.length)){if(this.state!==f.Idle)throw Error("Cant modify splitview");this.state=f.Busy;try{let c=(0,l.y1)(this.viewItems.length).filter(b=>b!==a),d=[...c.filter(a=>1===this.viewItems[a].priority),a],e=c.filter(a=>2===this.viewItems[a].priority),f=this.viewItems[a];b=Math.round(b),b=(0,p.qE)(b,f.minimumSize,Math.min(f.maximumSize,this.size)),f.size=b,this.relayout(d,e)}finally{this.state=f.Idle}}}distributeViewSizes(){let a=[],b=0;for(let c of this.viewItems)c.maximumSize-c.minimumSize>0&&(a.push(c),b+=c.size);let c=Math.floor(b/a.length);for(let b of a)b.size=(0,p.qE)(c,b.minimumSize,b.maximumSize);let d=(0,l.y1)(this.viewItems.length),e=d.filter(a=>1===this.viewItems[a].priority),f=d.filter(a=>2===this.viewItems[a].priority);this.relayout(e,f)}getViewSize(a){return a<0||a>=this.viewItems.length?-1:this.viewItems[a].size}doAddView(a,b,c=this.viewItems.length,d){if(this.state!==f.Idle)throw Error("Cant modify splitview");this.state=f.Busy;try{let e,f,g=(0,h.$)(".split-view-view");c===this.viewItems.length?this.viewContainer.appendChild(g):this.viewContainer.insertBefore(g,this.viewContainer.children.item(c));let i=a.onDidChange(a=>this.onViewChange(p,a)),k=(0,o.s)(()=>g.remove()),m=(0,o.qE)(i,k);"number"==typeof b?e=b:("auto"===b.type&&(b=this.areViewsDistributed()?{type:"distribute"}:{type:"split",index:b.index}),e="split"===b.type?this.getViewSize(b.index)/2:"invisible"===b.type?{cachedVisibleSize:b.cachedVisibleSize}:a.minimumSize);let p=0===this.orientation?new u(g,a,e,m):new v(g,a,e,m);if(this.viewItems.splice(c,0,p),this.viewItems.length>1){let a={orthogonalStartSash:this.orthogonalStartSash,orthogonalEndSash:this.orthogonalEndSash},b=0===this.orientation?new j.m(this.sashContainer,{getHorizontalSashTop:a=>this.getSashPosition(a),getHorizontalSashWidth:this.getSashOrthogonalSize},{...a,orientation:1}):new j.m(this.sashContainer,{getVerticalSashLeft:a=>this.getSashPosition(a),getVerticalSashHeight:this.getSashOrthogonalSize},{...a,orientation:0}),d=0===this.orientation?a=>({sash:b,start:a.startY,current:a.currentY,alt:a.altKey}):a=>({sash:b,start:a.startX,current:a.currentX,alt:a.altKey}),e=n.Jh.map(b.onDidStart,d)(this.onSashStart,this),f=n.Jh.map(b.onDidChange,d)(this.onSashChange,this),g=n.Jh.map(b.onDidEnd,()=>this.sashItems.findIndex(a=>a.sash===b))(this.onSashEnd,this),h=b.onDidReset(()=>{let a=this.sashItems.findIndex(a=>a.sash===b),c=(0,l.y1)(a,-1),d=(0,l.y1)(a+1,this.viewItems.length),e=this.findFirstSnapIndex(c),f=this.findFirstSnapIndex(d);"number"==typeof e&&!this.viewItems[e].visible||("number"!=typeof f||this.viewItems[f].visible)&&this._onDidSashReset.fire(a)}),i=(0,o.qE)(e,f,g,h,b);this.sashItems.splice(c-1,0,{sash:b,disposable:i})}g.appendChild(a.element),"number"!=typeof b&&"split"===b.type&&(f=[b.index]),d||this.relayout([c],f),d||"number"==typeof b||"distribute"!==b.type||this.distributeViewSizes()}finally{this.state=f.Idle}}relayout(a,b){let c=this.viewItems.reduce((a,b)=>a+b.size,0);this.resize(this.viewItems.length-1,this.size-c,void 0,a,b),this.distributeEmptySpace(),this.layoutViews(),this.saveProportions()}resize(a,b,c=this.viewItems.map(a=>a.size),d,e,f=-1/0,g=1/0,h,i){if(a<0||a>=this.viewItems.length)return 0;let j=(0,l.y1)(a,-1),k=(0,l.y1)(a+1,this.viewItems.length);if(e)for(let a of e)(0,l._A)(j,a),(0,l._A)(k,a);if(d)for(let a of d)(0,l.r7)(j,a),(0,l.r7)(k,a);let m=j.map(a=>this.viewItems[a]),n=j.map(a=>c[a]),o=k.map(a=>this.viewItems[a]),q=k.map(a=>c[a]),r=j.reduce((a,b)=>a+(this.viewItems[b].minimumSize-c[b]),0),s=j.reduce((a,b)=>a+(this.viewItems[b].maximumSize-c[b]),0),t=0===k.length?1/0:k.reduce((a,b)=>a+(c[b]-this.viewItems[b].minimumSize),0),u=Math.max(r,0===k.length?-1/0:k.reduce((a,b)=>a+(c[b]-this.viewItems[b].maximumSize),0),f),v=Math.min(t,s,g),w=!1;if(h){let a=this.viewItems[h.index],c=b>=h.limitDelta;w=c!==a.visible,a.setVisible(c,h.size)}if(!w&&i){let a=this.viewItems[i.index],c=b<i.limitDelta;w=c!==a.visible,a.setVisible(c,i.size)}if(w)return this.resize(a,b,c,d,e,f,g);b=(0,p.qE)(b,u,v);for(let a=0,c=b;a<m.length;a++){let b=m[a],d=(0,p.qE)(n[a]+c,b.minimumSize,b.maximumSize);c-=d-n[a],b.size=d}for(let a=0,c=b;a<o.length;a++){let b=o[a],d=(0,p.qE)(q[a]-c,b.minimumSize,b.maximumSize);c+=d-q[a],b.size=d}return b}distributeEmptySpace(a){let b=this.viewItems.reduce((a,b)=>a+b.size,0),c=this.size-b,d=(0,l.y1)(this.viewItems.length-1,-1),e=d.filter(a=>1===this.viewItems[a].priority);for(let a of d.filter(a=>2===this.viewItems[a].priority))(0,l._A)(d,a);for(let a of e)(0,l.r7)(d,a);"number"==typeof a&&(0,l.r7)(d,a);for(let a=0;0!==c&&a<d.length;a++){let b=this.viewItems[d[a]],e=(0,p.qE)(b.size+c,b.minimumSize,b.maximumSize);c-=e-b.size,b.size=e}}layoutViews(){this._contentSize=this.viewItems.reduce((a,b)=>a+b.size,0);let a=0;for(let b of this.viewItems)b.layout(a,this.layoutContext),a+=b.size;this.sashItems.forEach(a=>a.sash.layout()),this.updateSashEnablement(),this.updateScrollableElement()}updateScrollableElement(){0===this.orientation?this.scrollableElement.setScrollDimensions({height:this.size,scrollHeight:this._contentSize}):this.scrollableElement.setScrollDimensions({width:this.size,scrollWidth:this._contentSize})}updateSashEnablement(){let a=!1,b=this.viewItems.map(b=>a=b.size-b.minimumSize>0||a);a=!1;let c=this.viewItems.map(b=>a=b.maximumSize-b.size>0||a),d=[...this.viewItems].reverse();a=!1;let e=d.map(b=>a=b.size-b.minimumSize>0||a).reverse();a=!1;let f=d.map(b=>a=b.maximumSize-b.size>0||a).reverse(),g=0;for(let a=0;a<this.sashItems.length;a++){let{sash:d}=this.sashItems[a];g+=this.viewItems[a].size;let h=!(b[a]&&f[a+1]),i=!(c[a]&&e[a+1]);if(h&&i){let c=(0,l.y1)(a,-1),f=(0,l.y1)(a+1,this.viewItems.length),h=this.findFirstSnapIndex(c),i=this.findFirstSnapIndex(f),j="number"==typeof h&&!this.viewItems[h].visible,k="number"==typeof i&&!this.viewItems[i].visible;j&&e[a]&&(g>0||this.startSnappingEnabled)?d.state=1:k&&b[a]&&(g<this._contentSize||this.endSnappingEnabled)?d.state=2:d.state=0}else h&&!i?d.state=1:!h&&i?d.state=2:d.state=3}}getSashPosition(a){let b=0;for(let c=0;c<this.sashItems.length;c++)if(b+=this.viewItems[c].size,this.sashItems[c].sash===a)return b;return 0}findFirstSnapIndex(a){for(let b of a){let a=this.viewItems[b];if(a.visible&&a.snap)return b}for(let b of a){let a=this.viewItems[b];if(a.visible&&a.maximumSize-a.minimumSize>0)break;if(!a.visible&&a.snap)return b}}areViewsDistributed(){let a,b;for(let c of this.viewItems)if(a=void 0===a?c.size:Math.min(a,c.size),(b=void 0===b?c.size:Math.max(b,c.size))-a>2)return!1;return!0}dispose(){this.sashDragState?.disposable.dispose(),(0,o.AS)(this.viewItems),this.viewItems=[],this.sashItems.forEach(a=>a.disposable.dispose()),this.sashItems=[],super.dispose()}}},53764:(a,b,c)=>{"use strict";c.d(b,{O:()=>g});var d=c(29139),e=c(98896);class f{constructor(){this.data=new Map}add(a,b){d.ok(e.Kg(a)),d.ok(e.Gv(b)),d.ok(!this.data.has(a),"There is already an extension with this id"),this.data.set(a,b)}as(a){return this.data.get(a)||null}dispose(){this.data.forEach(a=>{e.Tn(a.dispose)&&a.dispose()}),this.data.clear()}}let g=new f},53918:(a,b,c)=>{"use strict";c.d(b,{W:()=>g});var d=c(11035),e=c(95554),f=c(52212);class g{static{this.zero=new g(0,0)}static betweenPositions(a,b){return a.lineNumber===b.lineNumber?new g(0,b.column-a.column):new g(b.lineNumber-a.lineNumber,b.column-1)}static fromPosition(a){return new g(a.lineNumber-1,a.column-1)}static ofRange(a){return g.betweenPositions(a.getStartPosition(),a.getEndPosition())}static ofText(a){let b=0,c=0;for(let d of a)"\n"===d?(b++,c=0):c++;return new g(b,c)}constructor(a,b){this.lineCount=a,this.columnCount=b}isGreaterThanOrEqualTo(a){return this.lineCount!==a.lineCount?this.lineCount>a.lineCount:this.columnCount>=a.columnCount}add(a){return 0===a.lineCount?new g(this.lineCount,this.columnCount+a.columnCount):new g(this.lineCount+a.lineCount,a.columnCount)}createRange(a){return 0===this.lineCount?new f.Q(a.lineNumber,a.column,a.lineNumber,a.column+this.columnCount):new f.Q(a.lineNumber,a.column,a.lineNumber+this.lineCount,this.columnCount+1)}toRange(){return new f.Q(1,1,this.lineCount+1,this.columnCount+1)}toLineRange(){return d.M.ofLength(1,this.lineCount+1)}addToPosition(a){return 0===this.lineCount?new e.y(a.lineNumber,a.column+this.columnCount):new e.y(a.lineNumber+this.lineCount,this.columnCount+1)}toString(){return`${this.lineCount},${this.columnCount}`}}},54058:(a,b,c)=>{"use strict";c.d(b,{b:()=>d,t:()=>e});let d=function(){if("function"==typeof crypto.randomUUID)return crypto.randomUUID.bind(crypto);let a=new Uint8Array(16),b=[];for(let a=0;a<256;a++)b.push(a.toString(16).padStart(2,"0"));return function(){crypto.getRandomValues(a),a[6]=15&a[6]|64,a[8]=63&a[8]|128;let c=0,d="";return d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]],d+="-",d+=b[a[c++]],d+=b[a[c++]],d+="-",d+=b[a[c++]],d+=b[a[c++]],d+="-",d+=b[a[c++]],d+=b[a[c++]],d+="-",d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]]}}();function e(a){return`${a}-${d()}`}},55066:(a,b,c)=>{"use strict";c.d(b,{Mo:()=>i,ad:()=>e,gD:()=>h,iB:()=>g,kW:()=>f,pG:()=>d});let d=(0,c(21652).u1)("configurationService");function e(a,b){let c=Object.create(null);for(let d in a)f(c,d,a[d],b);return c}function f(a,b,c,d){let e=b.split("."),f=e.pop(),g=a;for(let a=0;a<e.length;a++){let c=e[a],f=g[c];switch(typeof f){case"undefined":f=g[c]=Object.create(null);break;case"object":if(null===f)return void d(`Ignoring ${b} as ${e.slice(0,a+1).join(".")} is null`);break;default:d(`Ignoring ${b} as ${e.slice(0,a+1).join(".")} is ${JSON.stringify(f)}`);return}g=f}if("object"==typeof g&&null!==g)try{g[f]=c}catch(a){d(`Ignoring ${b} as ${e.join(".")} is ${JSON.stringify(g)}`)}else d(`Ignoring ${b} as ${e.join(".")} is ${JSON.stringify(g)}`)}function g(a,b){!function a(b,c){if(!b)return;let d=c.shift();if(0===c.length)return void delete b[d];if(-1!==Object.keys(b).indexOf(d)){let e=b[d];"object"!=typeof e||Array.isArray(e)||(a(e,c),0===Object.keys(e).length&&delete b[d])}}(a,b.split("."))}function h(a,b,c){let d=function(a,b){let c=a;for(let a of b){if("object"!=typeof c||null===c)return;c=c[a]}return c}(a,b.split("."));return void 0===d?c:d}function i(a){return a.replace(/^\[/,"").replace(/]$/g,"").replace(/\]\[/g,", ")}},55775:(a,b,c)=>{"use strict";c.d(b,{R$:()=>n,_k:()=>p,m2:()=>i,pS:()=>m,pz:()=>q,sA:()=>k});var d=c(19095),e=c(77747),f=c(10322);let g=RegExp(`\\$\\(${f.L.iconNameExpression}(?:${f.L.iconModifierExpression})?\\)`,"g"),h=RegExp(`(\\\\)?${g.source}`,"g");function i(a){return a.replace(h,(a,b)=>b?a:`\\${a}`)}let j=RegExp(`\\\\${g.source}`,"g");function k(a){return a.replace(j,a=>`\\${a}`)}let l=RegExp(`(\\s)?(\\\\)?${g.source}(\\s)?`,"g");function m(a){return -1===a.indexOf("$(")?a:a.replace(l,(a,b,c,d)=>c?a:b||d||"")}function n(a){return a?a.replace(/\$\((.*?)\)/g,(a,b)=>` ${b} `).trim():""}let o=RegExp(`\\$\\(${f.L.iconNameCharacter}+\\)`,"g");function p(a){o.lastIndex=0;let b="",c=[],d=0;for(;;){let e=o.lastIndex,f=o.exec(a),g=a.substring(e,f?.index);if(g.length>0){b+=g;for(let a=0;a<g.length;a++)c.push(d)}if(!f)break;d+=f[0].length}return{text:b,iconOffsets:c}}function q(a,b,c=!1){let{text:f,iconOffsets:g}=b;if(!g||0===g.length)return(0,d.yr)(a,f,c);let h=(0,e.NB)(f," "),i=f.length-h.length,j=(0,d.yr)(a,h,c);if(j)for(let a of j){let b=g[a.start+i]+i;a.start+=b,a.end+=b}return j}},55888:(a,b,c)=>{"use strict";c.d(b,{G5:()=>e,N8:()=>g,ke:()=>f});var d=c(21652);let e=(0,d.u1)("progressService");Object.freeze({total(){},worked(){},done(){}});class f{static{this.None=Object.freeze({report(){}})}constructor(a){this.callback=a}report(a){this._value=a,this.callback(this._value)}}let g=(0,d.u1)("editorProgressService")},56375:(a,b,c)=>{"use strict";c.d(b,{d:()=>d});class d{constructor(a,b=[],c=!1){this.ctor=a,this.staticArguments=b,this.supportsDelayedInstantiation=c}}},56600:(a,b,c)=>{"use strict";c.d(b,{L:()=>d});let d=(0,c(21652).u1)("workspaceTrustManagementService")},57729:(a,b,c)=>{"use strict";c.d(b,{g:()=>k});var d=c(77747),e=c(2583),f=c(61682),g=c(66064),h=c(47228),i=c(52212),j=c(95554);class k{static deleteRight(a,b,c,d){let f=[],g=3!==a;for(let a=0,h=d.length;a<h;a++){let h=d[a],i=this.getDeleteRightRange(h,c,b);if(i.isEmpty()){f[a]=null;continue}i.startLineNumber!==i.endLineNumber&&(g=!0),f[a]=new e.iu(i,"")}return[g,f]}static getDeleteRightRange(a,b,c){if(!a.isEmpty())return a;let d=a.getPosition(),e=h.I.right(c,b,d);if(c.trimWhitespaceOnDelete&&e.lineNumber!==d.lineNumber){let a=b.getLineFirstNonWhitespaceColumn(d.lineNumber)>0,c=b.getLineFirstNonWhitespaceColumn(e.lineNumber);if(a&&c>0)return new i.Q(e.lineNumber,c,d.lineNumber,d.column)}return new i.Q(e.lineNumber,e.column,d.lineNumber,d.column)}static isAutoClosingPairDelete(a,b,c,d,e,g,h){if("never"===b&&"never"===c||"never"===a)return!1;for(let i=0,j=g.length;i<j;i++){let j=g[i],k=j.getPosition();if(!j.isEmpty())return!1;let l=e.getLineContent(k.lineNumber);if(k.column<2||k.column>=l.length+1)return!1;let m=l.charAt(k.column-2),n=d.get(m);if(!n)return!1;if((0,f.vG)(m)){if("never"===c)return!1}else if("never"===b)return!1;let o=l.charAt(k.column-1),p=!1;for(let a of n)a.open===m&&a.close===o&&(p=!0);if(!p)return!1;if("auto"===a){let a=!1;for(let b=0,c=h.length;b<c;b++){let c=h[b];if(k.lineNumber===c.startLineNumber&&k.column===c.startColumn){a=!0;break}}if(!a)return!1}}return!0}static _runAutoClosingPairDelete(a,b,c){let d=[];for(let a=0,b=c.length;a<b;a++){let b=c[a].getPosition(),f=new i.Q(b.lineNumber,b.column-1,b.lineNumber,b.column+1);d[a]=new e.iu(f,"")}return[!0,d]}static deleteLeft(a,b,c,d,f){if(this.isAutoClosingPairDelete(b.autoClosingDelete,b.autoClosingBrackets,b.autoClosingQuotes,b.autoClosingPairs.autoClosingPairsOpenByEnd,c,d,f))return this._runAutoClosingPairDelete(b,c,d);let g=[],h=2!==a;for(let a=0,f=d.length;a<f;a++){let f=k.getDeleteLeftRange(d[a],c,b);if(f.isEmpty()){g[a]=null;continue}f.startLineNumber!==f.endLineNumber&&(h=!0),g[a]=new e.iu(f,"")}return[h,g]}static getDeleteLeftRange(a,b,c){if(!a.isEmpty())return a;let e=a.getPosition();if(c.useTabStops&&e.column>1){let a=b.getLineContent(e.lineNumber),f=d.HG(a),h=-1===f?a.length+1:f+1;if(e.column<=h){let a=c.visibleColumnFromColumn(b,e),d=g.A.prevIndentTabStop(a,c.indentSize),f=c.columnFromVisibleColumn(b,e.lineNumber,d);return new i.Q(e.lineNumber,f,e.lineNumber,e.column)}}return i.Q.fromPositions(k.getPositionAfterDeleteLeft(e,b),e)}static getPositionAfterDeleteLeft(a,b){if(a.column>1){let c=d.Wd(a.column-1,b.getLineContent(a.lineNumber));return a.with(void 0,c+1)}if(!(a.lineNumber>1))return a;{let c=a.lineNumber-1;return new j.y(c,b.getLineMaxColumn(c))}}static cut(a,b,c){let d=[],g=null;c.sort((a,b)=>j.y.compare(a.getStartPosition(),b.getEndPosition()));for(let f=0,h=c.length;f<h;f++){let h=c[f];if(h.isEmpty())if(a.emptySelectionClipboard){let a,c,j,k,l=h.getPosition();l.lineNumber<b.getLineCount()?(a=l.lineNumber,c=1,j=l.lineNumber+1,k=1):(l.lineNumber>1&&g?.endLineNumber!==l.lineNumber?(a=l.lineNumber-1,c=b.getLineMaxColumn(l.lineNumber-1)):(a=l.lineNumber,c=1),j=l.lineNumber,k=b.getLineMaxColumn(l.lineNumber));let m=new i.Q(a,c,j,k);g=m,m.isEmpty()?d[f]=null:d[f]=new e.iu(m,"")}else d[f]=null;else d[f]=new e.iu(h,"")}return new f.vY(0,d,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}}},57995:()=>{},58451:(a,b,c)=>{"use strict";c.d(b,{N:()=>g,v:()=>f});var d=c(56375);let e=[];function f(a,b,c){b instanceof d.d||(b=new d.d(b,[],!!c)),e.push([a,b])}function g(){return e}},58494:(a,b,c)=>{"use strict";c.d(b,{f:()=>function a(b,c,f,g,h,i){if(Array.isArray(b)){let d=0;for(let e of b){let b=a(e,c,f,g,h,i);if(10===b)return b;b>d&&(d=b)}return d}if("string"==typeof b)return g?"*"===b?5:10*(b===f):0;if(!b)return 0;{let{language:a,pattern:j,scheme:k,hasAccessToAllModels:l,notebookType:m}=b;if(!g&&!l)return 0;m&&h&&(c=h);let n=0;if(k)if(k===c.scheme)n=10;else{if("*"!==k)return 0;n=5}if(a)if(a===f)n=10;else{if("*"!==a)return 0;n=Math.max(n,5)}if(m)if(m===i)n=10;else{if("*"!==m||void 0===i)return 0;n=Math.max(n,5)}if(j){let a;if(!((a="string"==typeof j?j:{...j,base:(0,e.S8)(j.base)})===c.fsPath||(0,d.YW)(a,c.fsPath)))return 0;n=10}return n}}});var d=c(12995),e=c(45006)},58547:()=>{},58567:()=>{},58656:()=>{},58912:(a,b,c)=>{"use strict";c.d(b,{L:()=>e,h:()=>f});var d=c(88586);class e{static fromTo(a,b){return new e(a,b)}static addRange(a,b){let c=0;for(;c<b.length&&b[c].endExclusive<a.start;)c++;let d=c;for(;d<b.length&&b[d].start<=a.endExclusive;)d++;if(c===d)b.splice(c,0,a);else{let f=Math.min(a.start,b[c].start),g=Math.max(a.endExclusive,b[d-1].endExclusive);b.splice(c,d-c,new e(f,g))}}static tryCreate(a,b){if(!(a>b))return new e(a,b)}static ofLength(a){return new e(0,a)}static ofStartAndLength(a,b){return new e(a,a+b)}static emptyAt(a){return new e(a,a)}constructor(a,b){if(this.start=a,this.endExclusive=b,a>b)throw new d.D7(`Invalid range: ${this.toString()}`)}get isEmpty(){return this.start===this.endExclusive}delta(a){return new e(this.start+a,this.endExclusive+a)}deltaStart(a){return new e(this.start+a,this.endExclusive)}deltaEnd(a){return new e(this.start,this.endExclusive+a)}get length(){return this.endExclusive-this.start}toString(){return`[${this.start}, ${this.endExclusive})`}equals(a){return this.start===a.start&&this.endExclusive===a.endExclusive}contains(a){return this.start<=a&&a<this.endExclusive}join(a){return new e(Math.min(this.start,a.start),Math.max(this.endExclusive,a.endExclusive))}intersect(a){let b=Math.max(this.start,a.start),c=Math.min(this.endExclusive,a.endExclusive);if(b<=c)return new e(b,c)}intersectionLength(a){let b=Math.max(this.start,a.start);return Math.max(0,Math.min(this.endExclusive,a.endExclusive)-b)}intersects(a){return Math.max(this.start,a.start)<Math.min(this.endExclusive,a.endExclusive)}intersectsOrTouches(a){return Math.max(this.start,a.start)<=Math.min(this.endExclusive,a.endExclusive)}isBefore(a){return this.endExclusive<=a.start}isAfter(a){return this.start>=a.endExclusive}slice(a){return a.slice(this.start,this.endExclusive)}substring(a){return a.substring(this.start,this.endExclusive)}clip(a){if(this.isEmpty)throw new d.D7(`Invalid clipping range: ${this.toString()}`);return Math.max(this.start,Math.min(this.endExclusive-1,a))}clipCyclic(a){if(this.isEmpty)throw new d.D7(`Invalid clipping range: ${this.toString()}`);return a<this.start?this.endExclusive-(this.start-a)%this.length:a>=this.endExclusive?this.start+(a-this.start)%this.length:a}forEach(a){for(let b=this.start;b<this.endExclusive;b++)a(b)}joinRightTouching(a){if(this.endExclusive!==a.start)throw new d.D7(`Invalid join: ${this.toString()} and ${a.toString()}`);return new e(this.start,a.endExclusive)}}class f{constructor(){this._sortedRanges=[]}addRange(a){let b=0;for(;b<this._sortedRanges.length&&this._sortedRanges[b].endExclusive<a.start;)b++;let c=b;for(;c<this._sortedRanges.length&&this._sortedRanges[c].start<=a.endExclusive;)c++;if(b===c)this._sortedRanges.splice(b,0,a);else{let d=Math.min(a.start,this._sortedRanges[b].start),f=Math.max(a.endExclusive,this._sortedRanges[c-1].endExclusive);this._sortedRanges.splice(b,c-b,new e(d,f))}}toString(){return this._sortedRanges.map(a=>a.toString()).join(", ")}intersectsStrict(a){let b=0;for(;b<this._sortedRanges.length&&this._sortedRanges[b].endExclusive<=a.start;)b++;return b<this._sortedRanges.length&&this._sortedRanges[b].start<a.endExclusive}intersectWithRange(a){let b=new f;for(let c of this._sortedRanges){let d=c.intersect(a);d&&b.addRange(d)}return b}intersectWithRangeLength(a){return this.intersectWithRange(a).length}get length(){return this._sortedRanges.reduce((a,b)=>a+b.length,0)}}},59004:()=>{},59119:(a,b,c)=>{"use strict";c.d(b,{V:()=>e,y:()=>f});var d=c(85977);class e{constructor(a){const b=(0,d.W)(a);this._defaultValue=b,this._asciiMap=e._createAsciiMap(b),this._map=new Map}static _createAsciiMap(a){let b=new Uint8Array(256);return b.fill(a),b}set(a,b){let c=(0,d.W)(b);a>=0&&a<256?this._asciiMap[a]=c:this._map.set(a,c)}get(a){return a>=0&&a<256?this._asciiMap[a]:this._map.get(a)||this._defaultValue}clear(){this._asciiMap.fill(this._defaultValue),this._map.clear()}}class f{constructor(){this._actual=new e(0)}add(a){this._actual.set(a,1)}has(a){return 1===this._actual.get(a)}clear(){return this._actual.clear()}}},59237:(a,b,c)=>{"use strict";c.d(b,{B:()=>e});var d,e,f=c(98896);function g(a){return{object:a,dispose:()=>a.destroy()}}(d=e||(e={})).requestDevice=async function(a){try{if(!navigator.gpu)throw Error("This browser does not support WebGPU");let a=await navigator.gpu.requestAdapter();if(!a)throw Error("This browser supports WebGPU but it appears to be disabled");return g(await a.requestDevice())}catch(b){throw a&&a(b.message),b}},d.createBuffer=function(a,b,c){let d=a.createBuffer(b);return c&&a.queue.writeBuffer(d,0,(0,f.Tn)(c)?c():c),g(d)},d.createTexture=function(a,b){return g(a.createTexture(b))}},60232:(a,b,c)=>{"use strict";c.d(b,{r4:()=>E,Yl:()=>G});var d,e=c(91849),f=c(36046),g=c(40201),h=c(39537),i=c(58451),j=c(21652),k=c(3457),l=c(37774),m=c(11035),n=c(95132),o=c(62631),p=c(1136),q=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g},r=function(a,b){return function(c,d){b(c,d,a)}};let s=(0,j.u1)("diffProviderFactoryService"),t=class{constructor(a){this.instantiationService=a}createDiffProvider(a){return this.instantiationService.createInstance(u,a)}};t=q([r(0,j._Y)],t),(0,i.v)(s,t,1);let u=class{static{d=this}static{this.diffCache=new Map}constructor(a,b,c){this.editorWorkerService=b,this.telemetryService=c,this.onDidChangeEventEmitter=new k.vl,this.onDidChange=this.onDidChangeEventEmitter.event,this.diffAlgorithm="advanced",this.diffAlgorithmOnDidChangeSubscription=void 0,this.setOptions(a)}dispose(){this.diffAlgorithmOnDidChangeSubscription?.dispose()}async computeDiff(a,b,c,e){if("string"!=typeof this.diffAlgorithm)return this.diffAlgorithm.computeDiff(a,b,c,e);if(a.isDisposed()||b.isDisposed())return{changes:[],identical:!0,quitEarly:!1,moves:[]};if(1===a.getLineCount()&&1===a.getLineMaxColumn(1))return 1===b.getLineCount()&&1===b.getLineMaxColumn(1)?{changes:[],identical:!0,quitEarly:!1,moves:[]}:{changes:[new n.wm(new m.M(1,2),new m.M(1,b.getLineCount()+1),[new n.q6(a.getFullModelRange(),b.getFullModelRange())])],identical:!1,quitEarly:!1,moves:[]};let f=JSON.stringify([a.uri.toString(),b.uri.toString()]),g=JSON.stringify([a.id,b.id,a.getAlternativeVersionId(),b.getAlternativeVersionId(),JSON.stringify(c)]),h=d.diffCache.get(f);if(h&&h.context===g)return h.result;let i=l.W.create(),j=await this.editorWorkerService.computeDiff(a.uri,b.uri,c,this.diffAlgorithm),k=i.elapsed();if(this.telemetryService.publicLog2("diffEditor.computeDiff",{timeMs:k,timedOut:j?.quitEarly??!0,detectedMoves:c.computeMoves?j?.moves.length??0:-1}),e.isCancellationRequested)return{changes:[],identical:!1,quitEarly:!0,moves:[]};if(!j)throw Error("no diff result available");return d.diffCache.size>10&&d.diffCache.delete(d.diffCache.keys().next().value),d.diffCache.set(f,{result:j,context:g}),j}setOptions(a){let b=!1;a.diffAlgorithm&&this.diffAlgorithm!==a.diffAlgorithm&&(this.diffAlgorithmOnDidChangeSubscription?.dispose(),this.diffAlgorithmOnDidChangeSubscription=void 0,this.diffAlgorithm=a.diffAlgorithm,"string"!=typeof a.diffAlgorithm&&(this.diffAlgorithmOnDidChangeSubscription=a.diffAlgorithm.onDidChange(()=>this.onDidChangeEventEmitter.fire())),b=!0),b&&this.onDidChangeEventEmitter.fire()}};u=d=q([r(1,o.w),r(2,p.k)],u);var v=c(94157),w=c(34546),x=c(49741),y=c(79913),z=c(44607),A=c(62119),B=c(98896),C=c(42891),D=c(29139);let E=class extends g.jG{setActiveMovedText(a){this._activeMovedText.set(a,void 0)}constructor(a,b,c){super(),this.model=a,this._options=b,this._diffProviderFactoryService=c,this._isDiffUpToDate=(0,h.FY)(this,!1),this.isDiffUpToDate=this._isDiffUpToDate,this._diff=(0,h.FY)(this,void 0),this.diff=this._diff,this._unchangedRegions=(0,h.FY)(this,void 0),this.unchangedRegions=(0,h.un)(this,a=>this._options.hideUnchangedRegions.read(a)?this._unchangedRegions.read(a)?.regions??[]:((0,h.Rn)(a=>{for(let b of this._unchangedRegions.read(void 0)?.regions||[])b.collapseAll(a)}),[])),this.movedTextToCompare=(0,h.FY)(this,void 0),this._activeMovedText=(0,h.FY)(this,void 0),this._hoveredMovedText=(0,h.FY)(this,void 0),this.activeMovedText=(0,h.un)(this,a=>this.movedTextToCompare.read(a)??this._hoveredMovedText.read(a)??this._activeMovedText.read(a)),this._cancellationTokenSource=new f.Qi,this._diffProvider=(0,h.un)(this,a=>{let b=this._diffProviderFactoryService.createDiffProvider({diffAlgorithm:this._options.diffAlgorithm.read(a)}),c=(0,h.yQ)("onDidChange",b.onDidChange);return{diffProvider:b,onChangeSignal:c}}),this._register((0,g.s)(()=>this._cancellationTokenSource.cancel()));const d=(0,h.Yd)("contentChangedSignal"),i=this._register(new e.uC(()=>d.trigger(void 0),200));this._register((0,h.fm)(b=>{let c=this._unchangedRegions.read(b);if(!c||c.regions.some(a=>a.isDragged.read(b)))return;let d=c.originalDecorationIds.map(b=>a.original.getDecorationRange(b)).map(a=>a?m.M.fromRangeInclusive(a):void 0),e=c.modifiedDecorationIds.map(b=>a.modified.getDecorationRange(b)).map(a=>a?m.M.fromRangeInclusive(a):void 0),f=c.regions.map((a,c)=>d[c]&&e[c]?new H(d[c].startLineNumber,e[c].startLineNumber,d[c].length,a.visibleLineCountTop.read(b),a.visibleLineCountBottom.read(b)):void 0).filter(B.O9),g=[],i=!1;for(let a of(0,C.n)(f,(a,c)=>a.getHiddenModifiedRange(b).endLineNumberExclusive===c.getHiddenModifiedRange(b).startLineNumber))if(a.length>1){i=!0;let b=a.reduce((a,b)=>a+b.lineCount,0),c=new H(a[0].originalLineNumber,a[0].modifiedLineNumber,b,a[0].visibleLineCountTop.read(void 0),a[a.length-1].visibleLineCountBottom.read(void 0));g.push(c)}else g.push(a[0]);if(i){let b=a.original.deltaDecorations(c.originalDecorationIds,g.map(a=>({range:a.originalUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}}))),d=a.modified.deltaDecorations(c.modifiedDecorationIds,g.map(a=>({range:a.modifiedUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}})));(0,h.Rn)(a=>{this._unchangedRegions.set({regions:g,originalDecorationIds:b,modifiedDecorationIds:d},a)})}}));const j=(b,c,d)=>{let e,f=H.fromDiffs(b.changes,a.original.getLineCount(),a.modified.getLineCount(),this._options.hideUnchangedRegionsMinimumLineCount.read(d),this._options.hideUnchangedRegionsContextLineCount.read(d)),g=this._unchangedRegions.get();if(g){let b=g.originalDecorationIds.map(b=>a.original.getDecorationRange(b)).map(a=>a?m.M.fromRangeInclusive(a):void 0),c=g.modifiedDecorationIds.map(b=>a.modified.getDecorationRange(b)).map(a=>a?m.M.fromRangeInclusive(a):void 0),f=(0,v.EK)(g.regions.map((a,d)=>{if(!b[d]||!c[d])return;let e=b[d].length;return new H(b[d].startLineNumber,c[d].startLineNumber,e,Math.min(a.visibleLineCountTop.get(),e),Math.min(a.visibleLineCountBottom.get(),e-a.visibleLineCountTop.get()))}).filter(B.O9),(a,b)=>!b||a.modifiedLineNumber>=b.modifiedLineNumber+b.lineCount&&a.originalLineNumber>=b.originalLineNumber+b.lineCount).map(a=>new n.WL(a.getHiddenOriginalRange(d),a.getHiddenModifiedRange(d)));f=n.WL.clip(f,m.M.ofLength(1,a.original.getLineCount()),m.M.ofLength(1,a.modified.getLineCount())),e=n.WL.inverse(f,a.original.getLineCount(),a.modified.getLineCount())}let h=[];if(e)for(let a of f){let b=e.filter(b=>b.original.intersectsStrict(a.originalUnchangedRange)&&b.modified.intersectsStrict(a.modifiedUnchangedRange));h.push(...a.setVisibleRanges(b,c))}else h.push(...f);let i=a.original.deltaDecorations(g?.originalDecorationIds||[],h.map(a=>({range:a.originalUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}}))),j=a.modified.deltaDecorations(g?.modifiedDecorationIds||[],h.map(a=>({range:a.modifiedUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}})));this._unchangedRegions.set({regions:h,originalDecorationIds:i,modifiedDecorationIds:j},c)};this._register(a.modified.onDidChangeContent(b=>{if(this._diff.get()){let c=y.c.fromModelContentChanges(b.changes),d=J(this._lastDiff,c,a.original,a.modified);d&&(this._lastDiff=d,(0,h.Rn)(a=>{this._diff.set(F.fromDiffResult(this._lastDiff),a),j(d,a);let b=this.movedTextToCompare.get();this.movedTextToCompare.set(b?this._lastDiff.moves.find(a=>a.lineRangeMapping.modified.intersect(b.lineRangeMapping.modified)):void 0,a)}))}this._isDiffUpToDate.set(!1,void 0),i.schedule()})),this._register(a.original.onDidChangeContent(b=>{if(this._diff.get()){let c=y.c.fromModelContentChanges(b.changes),d=I(this._lastDiff,c,a.original,a.modified);d&&(this._lastDiff=d,(0,h.Rn)(a=>{this._diff.set(F.fromDiffResult(this._lastDiff),a),j(d,a);let b=this.movedTextToCompare.get();this.movedTextToCompare.set(b?this._lastDiff.moves.find(a=>a.lineRangeMapping.modified.intersect(b.lineRangeMapping.modified)):void 0,a)}))}this._isDiffUpToDate.set(!1,void 0),i.schedule()})),this._register((0,h.yC)(async(b,c)=>{var e,f,g;this._options.hideUnchangedRegionsMinimumLineCount.read(b),this._options.hideUnchangedRegionsContextLineCount.read(b),i.cancel(),d.read(b);let k=this._diffProvider.read(b);k.onChangeSignal.read(b),(0,w.b6)(x.D,b),(0,w.b6)(A.NC,b),this._isDiffUpToDate.set(!1,void 0);let l=[];c.add(a.original.onDidChangeContent(a=>{let b=y.c.fromModelContentChanges(a.changes);l=(0,z.M)(l,b)}));let m=[];c.add(a.modified.onDidChangeContent(a=>{let b=y.c.fromModelContentChanges(a.changes);m=(0,z.M)(m,b)}));let o=await k.diffProvider.computeDiff(a.original,a.modified,{ignoreTrimWhitespace:this._options.ignoreTrimWhitespace.read(b),maxComputationTimeMs:this._options.maxComputationTimeMs.read(b),computeMoves:this._options.showMoves.read(b)},this._cancellationTokenSource.token);this._cancellationTokenSource.token.isCancellationRequested||a.original.isDisposed()||a.modified.isDisposed()||(o=J(o=I((e=o,f=a.original,g=a.modified,o={changes:e.changes.map(a=>new n.wm(a.original,a.modified,a.innerChanges?a.innerChanges.map(a=>{var b,c,d;let e,h;return b=a,c=f,d=g,e=b.originalRange,h=b.modifiedRange,1===e.startColumn&&1===h.startColumn&&(1!==e.endColumn||1!==h.endColumn)&&e.endColumn===c.getLineMaxColumn(e.endLineNumber)&&h.endColumn===d.getLineMaxColumn(h.endLineNumber)&&e.endLineNumber<c.getLineCount()&&h.endLineNumber<d.getLineCount()&&(e=e.setEndPosition(e.endLineNumber+1,1),h=h.setEndPosition(h.endLineNumber+1,1)),new n.q6(e,h)}):void 0)),moves:e.moves,identical:e.identical,quitEarly:e.quitEarly}),l,a.original,a.modified)??o,m,a.original,a.modified)??o,(0,h.Rn)(a=>{j(o,a),this._lastDiff=o;let b=F.fromDiffResult(o);this._diff.set(b,a),this._isDiffUpToDate.set(!0,a);let c=this.movedTextToCompare.read(void 0);this.movedTextToCompare.set(c?this._lastDiff.moves.find(a=>a.lineRangeMapping.modified.intersect(c.lineRangeMapping.modified)):void 0,a)}))}))}ensureModifiedLineIsVisible(a,b,c){if(this.diff.get()?.mappings.length!==0){for(let d of this._unchangedRegions.get()?.regions||[])if(d.getHiddenModifiedRange(void 0).contains(a))return void d.showModifiedLine(a,b,c)}}ensureOriginalLineIsVisible(a,b,c){if(this.diff.get()?.mappings.length!==0){for(let d of this._unchangedRegions.get()?.regions||[])if(d.getHiddenOriginalRange(void 0).contains(a))return void d.showOriginalLine(a,b,c)}}async waitForDiff(){await (0,h.oJ)(this.isDiffUpToDate,a=>a)}serializeState(){let a=this._unchangedRegions.get();return{collapsedRegions:a?.regions.map(a=>({range:a.getHiddenModifiedRange(void 0).serialize()}))}}restoreSerializedState(a){let b=a.collapsedRegions?.map(a=>m.M.deserialize(a.range)),c=this._unchangedRegions.get();c&&b&&(0,h.Rn)(a=>{for(let d of c.regions)for(let c of b)if(d.modifiedUnchangedRange.intersect(c)){d.setHiddenModifiedRange(c,a);break}})}};E=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([function(a,b){s(a,b,2)}],E);class F{static fromDiffResult(a){return new F(a.changes.map(a=>new G(a)),a.moves||[],a.identical,a.quitEarly)}constructor(a,b,c,d){this.mappings=a,this.movedTexts=b,this.identical=c,this.quitEarly=d}}class G{constructor(a){this.lineRangeMapping=a}}class H{static fromDiffs(a,b,c,d,e){let f=n.wm.inverse(a,b,c),g=[];for(let a of f){let f=a.original.startLineNumber,h=a.modified.startLineNumber,i=a.original.length,j=1===f&&1===h,k=f+i===b+1&&h+i===c+1;(j||k)&&i>=e+d?(j&&!k&&(i-=e),k&&!j&&(f+=e,h+=e,i-=e),g.push(new H(f,h,i,0,0))):i>=2*e+d&&(f+=e,h+=e,i-=2*e,g.push(new H(f,h,i,0,0)))}return g}get originalUnchangedRange(){return m.M.ofLength(this.originalLineNumber,this.lineCount)}get modifiedUnchangedRange(){return m.M.ofLength(this.modifiedLineNumber,this.lineCount)}constructor(a,b,c,d,e){this.originalLineNumber=a,this.modifiedLineNumber=b,this.lineCount=c,this._visibleLineCountTop=(0,h.FY)(this,0),this.visibleLineCountTop=this._visibleLineCountTop,this._visibleLineCountBottom=(0,h.FY)(this,0),this.visibleLineCountBottom=this._visibleLineCountBottom,this._shouldHideControls=(0,h.un)(this,a=>this.visibleLineCountTop.read(a)+this.visibleLineCountBottom.read(a)===this.lineCount&&!this.isDragged.read(a)),this.isDragged=(0,h.FY)(this,void 0);const f=Math.max(Math.min(d,this.lineCount),0),g=Math.max(Math.min(e,this.lineCount-d),0);(0,D.V7)(d===f),(0,D.V7)(e===g),this._visibleLineCountTop.set(f,void 0),this._visibleLineCountBottom.set(g,void 0)}setVisibleRanges(a,b){let c=[],d=new m.S(a.map(a=>a.modified)).subtractFrom(this.modifiedUnchangedRange),e=this.originalLineNumber,f=this.modifiedLineNumber,g=this.modifiedLineNumber+this.lineCount;if(0===d.ranges.length)this.showAll(b),c.push(this);else{let a=0;for(let h of d.ranges){let i=a===d.ranges.length-1;a++;let j=(i?g:h.endLineNumberExclusive)-f,k=new H(e,f,j,0,0);k.setHiddenModifiedRange(h,b),c.push(k),e=k.originalUnchangedRange.endLineNumberExclusive,f=k.modifiedUnchangedRange.endLineNumberExclusive}}return c}shouldHideControls(a){return this._shouldHideControls.read(a)}getHiddenOriginalRange(a){return m.M.ofLength(this.originalLineNumber+this._visibleLineCountTop.read(a),this.lineCount-this._visibleLineCountTop.read(a)-this._visibleLineCountBottom.read(a))}getHiddenModifiedRange(a){return m.M.ofLength(this.modifiedLineNumber+this._visibleLineCountTop.read(a),this.lineCount-this._visibleLineCountTop.read(a)-this._visibleLineCountBottom.read(a))}setHiddenModifiedRange(a,b){let c=a.startLineNumber-this.modifiedLineNumber,d=this.modifiedLineNumber+this.lineCount-a.endLineNumberExclusive;this.setState(c,d,b)}getMaxVisibleLineCountTop(){return this.lineCount-this._visibleLineCountBottom.get()}getMaxVisibleLineCountBottom(){return this.lineCount-this._visibleLineCountTop.get()}showMoreAbove(a=10,b){let c=this.getMaxVisibleLineCountTop();this._visibleLineCountTop.set(Math.min(this._visibleLineCountTop.get()+a,c),b)}showMoreBelow(a=10,b){let c=this.lineCount-this._visibleLineCountTop.get();this._visibleLineCountBottom.set(Math.min(this._visibleLineCountBottom.get()+a,c),b)}showAll(a){this._visibleLineCountBottom.set(this.lineCount-this._visibleLineCountTop.get(),a)}showModifiedLine(a,b,c){let d=a+1-(this.modifiedLineNumber+this._visibleLineCountTop.get()),e=this.modifiedLineNumber-this._visibleLineCountBottom.get()+this.lineCount-a;0===b&&d<e||1===b?this._visibleLineCountTop.set(this._visibleLineCountTop.get()+d,c):this._visibleLineCountBottom.set(this._visibleLineCountBottom.get()+e,c)}showOriginalLine(a,b,c){let d=a-this.originalLineNumber,e=this.originalLineNumber+this.lineCount-a;0===b&&d<e||1===b?this._visibleLineCountTop.set(Math.min(this._visibleLineCountTop.get()+e-d,this.getMaxVisibleLineCountTop()),c):this._visibleLineCountBottom.set(Math.min(this._visibleLineCountBottom.get()+d-e,this.getMaxVisibleLineCountBottom()),c)}collapseAll(a){this._visibleLineCountTop.set(0,a),this._visibleLineCountBottom.set(0,a)}setState(a,b,c){a=Math.max(Math.min(a,this.lineCount),0),b=Math.max(Math.min(b,this.lineCount-a),0),this._visibleLineCountTop.set(a,c),this._visibleLineCountBottom.set(b,c)}}function I(a,b,c,d){}function J(a,b,c,d){}},60654:()=>{},60894:(a,b,c)=>{"use strict";c.d(b,{LN:()=>h,aG:()=>k,uO:()=>j});var d=c(51864),e=c(58912),f=c(95554),g=c(52212);class h{getOffsetRange(a){return new e.L(this.getOffset(a.getStartPosition()),this.getOffset(a.getEndPosition()))}getRange(a){return g.Q.fromPositions(this.getPosition(a.start),this.getPosition(a.endExclusive))}getStringReplacement(a){return new i.deps.StringReplacement(this.getOffsetRange(a.range),a.text)}getTextReplacement(a){return new i.deps.TextReplacement(this.getRange(a.replaceRange),a.newText)}getTextEdit(a){let b=a.replacements.map(a=>this.getTextReplacement(a));return new i.deps.TextEdit(b)}}class i{static{this._deps=void 0}static get deps(){if(!this._deps)throw Error("Dependencies not set. Call _setDependencies first.");return this._deps}}function j(a){i._deps=a}class k extends h{constructor(a){super(),this.text=a,this.lineStartOffsetByLineIdx=[],this.lineEndOffsetByLineIdx=[],this.lineStartOffsetByLineIdx.push(0);for(let b=0;b<a.length;b++)"\n"===a.charAt(b)&&(this.lineStartOffsetByLineIdx.push(b+1),b>0&&"\r"===a.charAt(b-1)?this.lineEndOffsetByLineIdx.push(b-1):this.lineEndOffsetByLineIdx.push(b));this.lineEndOffsetByLineIdx.push(a.length)}getOffset(a){let b=this._validatePosition(a);return this.lineStartOffsetByLineIdx[b.lineNumber-1]+b.column-1}_validatePosition(a){if(a.lineNumber<1)return new f.y(1,1);let b=this.textLength.lineCount+1;if(a.lineNumber>b){let a=this.getLineLength(b);return new f.y(b,a+1)}if(a.column<1)return new f.y(a.lineNumber,1);let c=this.getLineLength(a.lineNumber);return a.column-1>c?new f.y(a.lineNumber,c+1):a}getPosition(a){let b=(0,d.iM)(this.lineStartOffsetByLineIdx,b=>b<=a),c=a-this.lineStartOffsetByLineIdx[b]+1;return new f.y(b+1,c)}get textLength(){let a=this.lineStartOffsetByLineIdx.length-1;return new i.deps.TextLength(a,this.text.length-this.lineStartOffsetByLineIdx[a])}getLineLength(a){return this.lineEndOffsetByLineIdx[a-1]-this.lineStartOffsetByLineIdx[a-1]}}},61155:()=>{},61203:(a,b,c)=>{"use strict";c.d(b,{FdG:()=>d.Fd,buw:()=>l,GuP:()=>d.Gu,Bbc:()=>d.Bb,HP_:()=>d.HP,WMx:()=>n,zRE:()=>o,sAS:()=>am,vV$:()=>ak,etE:()=>al,mc0:()=>aj,XJc:()=>a1,raQ:()=>a3,G_h:()=>a_,T9h:()=>a2,xOA:()=>a5,Inn:()=>a4,nZG:()=>a6,Q1$:()=>a0,OcU:()=>be,C5U:()=>bg,Uv:()=>bh,hsb:()=>bi,t0B:()=>bf,b1q:()=>k,EY1:()=>_,ZEf:()=>aa,yUe:()=>h,Gj6:()=>ab,w3w:()=>ad,ld8:()=>ae,$BZ:()=>af,GNm:()=>ac,TUz:()=>bN,Ztu:()=>H,YtV:()=>u,AN$:()=>A,Rbi:()=>z,f3U:()=>M,Ubg:()=>N,ECk:()=>P,p8Y:()=>O,S5J:()=>Q,By2:()=>v,i61:()=>G,WfR:()=>R,oZ8:()=>T,Xo2:()=>S,tan:()=>K,IIb:()=>F,pOz:()=>E,WL6:()=>V,P6i:()=>U,B2L:()=>Z,sjA:()=>Y,_pU:()=>X,HwT:()=>W,seu:()=>I,rm4:()=>J,QwA:()=>L,whs:()=>B,Stt:()=>D,Hng:()=>C,CgL:()=>w,sIe:()=>y,FiB:()=>x,tAP:()=>j,CU6:()=>g,t4B:()=>i,c1f:()=>aM,uNK:()=>aK,$$0:()=>aN,L4c:()=>aH,Zgs:()=>aJ,cws:()=>aI,_$n:()=>aU,eYZ:()=>aW,h9z:()=>aV,I$A:()=>aO,YSW:()=>aQ,L9Z:()=>aP,ULt:()=>aR,C1n:()=>aT,T5N:()=>aS,HDX:()=>bj,zUX:()=>bl,Qfh:()=>bm,eUu:()=>bk,Rjz:()=>br,GVV:()=>bs,fED:()=>bt,yIp:()=>bC,Yoe:()=>bB,pnl:()=>bF,P9Z:()=>bH,fiM:()=>bG,H8q:()=>bI,gtq:()=>bq,VFX:()=>bn,efJ:()=>bo,eMz:()=>bE,p7Y:()=>bp,QI5:()=>bD,lO1:()=>bz,QRv:()=>bA,CQ3:()=>bx,ijf:()=>by,uNx:()=>bu,f4y:()=>bv,C9U:()=>bw,c6Y:()=>bQ,g$2:()=>bO,dd_:()=>bP,Ux$:()=>bS,SNb:()=>bT,pmr:()=>bR,D7X:()=>bU,ILr:()=>aF,yLC:()=>aE,AjU:()=>az,K1Z:()=>aG,KoI:()=>aC,yr0:()=>aB,Xp1:()=>aA,uMG:()=>aD,yLr:()=>d.yL,fAP:()=>au,z5H:()=>av,iwL:()=>bZ,NBf:()=>bY,tYX:()=>aw,bNw:()=>ay,JPj:()=>ax,BTi:()=>t,ELA:()=>bV,HJZ:()=>bW,AlL:()=>b1,nH:()=>b_,c7i:()=>b0,er1:()=>bX,Ukx:()=>a8,Ips:()=>a9,jOE:()=>a7,xWN:()=>bb,ZBU:()=>bc,kPT:()=>ba,jr9:()=>bd,x1A:()=>d.x1,bXl:()=>p,mhZ:()=>s,gnV:()=>q,cI_:()=>r,rvE:()=>aX,HcB:()=>a$,yqq:()=>aZ,lWP:()=>aY,k5u:()=>bL,sbQ:()=>bM,vwp:()=>m,JO0:()=>d.JO,pft:()=>bK,U4U:()=>bJ,DSL:()=>ah,f9l:()=>ag});var d=c(66981),e=c(76302),f=c(81034);let g=(0,d.x1)("foreground",{dark:"#CCCCCC",light:"#616161",hcDark:"#FFFFFF",hcLight:"#292929"},e.kg(1756,"Overall foreground color. This color is only used if not overridden by a component."));(0,d.x1)("disabledForeground",{dark:"#CCCCCC80",light:"#61616180",hcDark:"#A5A5A5",hcLight:"#7F7F7F"},e.kg(1757,"Overall foreground for disabled elements. This color is only used if not overridden by a component.")),(0,d.x1)("errorForeground",{dark:"#F48771",light:"#A1260D",hcDark:"#F48771",hcLight:"#B5200D"},e.kg(1758,"Overall foreground color for error messages. This color is only used if not overridden by a component."));let h=(0,d.x1)("descriptionForeground",{light:"#717171",dark:(0,d.JO)(g,.7),hcDark:(0,d.JO)(g,.7),hcLight:(0,d.JO)(g,.7)},e.kg(1759,"Foreground color for description text providing additional information, for example for a label.")),i=(0,d.x1)("icon.foreground",{dark:"#C5C5C5",light:"#424242",hcDark:"#FFFFFF",hcLight:"#292929"},e.kg(1760,"The default color for icons in the workbench.")),j=(0,d.x1)("focusBorder",{dark:"#007FD4",light:"#0090F1",hcDark:"#F38518",hcLight:"#006BBD"},e.kg(1761,"Overall border color for focused elements. This color is only used if not overridden by a component.")),k=(0,d.x1)("contrastBorder",{light:null,dark:null,hcDark:"#6FC3DF",hcLight:"#0F4A85"},e.kg(1762,"An extra border around elements to separate them from others for greater contrast.")),l=(0,d.x1)("contrastActiveBorder",{light:null,dark:null,hcDark:j,hcLight:j},e.kg(1763,"An extra border around active elements to separate them from others for greater contrast."));(0,d.x1)("selection.background",null,e.kg(1764,"The background color of text selections in the workbench (e.g. for input fields or text areas). Note that this does not apply to selections within the editor."));let m=(0,d.x1)("textLink.foreground",{light:"#006AB1",dark:"#3794FF",hcDark:"#21A6FF",hcLight:"#0F4A85"},e.kg(1765,"Foreground color for links in text."));(0,d.x1)("textLink.activeForeground",{light:"#006AB1",dark:"#3794FF",hcDark:"#21A6FF",hcLight:"#0F4A85"},e.kg(1766,"Foreground color for links in text when clicked on and on mouse hover.")),(0,d.x1)("textSeparator.foreground",{light:"#0000002e",dark:"#ffffff2e",hcDark:f.Q1.black,hcLight:"#292929"},e.kg(1767,"Color for text separators.")),(0,d.x1)("textPreformat.foreground",{light:"#A31515",dark:"#D7BA7D",hcDark:"#000000",hcLight:"#FFFFFF"},e.kg(1768,"Foreground color for preformatted text segments.")),(0,d.x1)("textPreformat.background",{light:"#0000001A",dark:"#FFFFFF1A",hcDark:"#FFFFFF",hcLight:"#09345f"},e.kg(1769,"Background color for preformatted text segments.")),(0,d.x1)("textBlockQuote.background",{light:"#f2f2f2",dark:"#222222",hcDark:null,hcLight:"#F2F2F2"},e.kg(1770,"Background color for block quotes in text.")),(0,d.x1)("textBlockQuote.border",{light:"#007acc80",dark:"#007acc80",hcDark:f.Q1.white,hcLight:"#292929"},e.kg(1771,"Border color for block quotes in text.")),(0,d.x1)("textCodeBlock.background",{light:"#dcdcdc66",dark:"#0a0a0a66",hcDark:f.Q1.black,hcLight:"#F2F2F2"},e.kg(1772,"Background color for code blocks in text.")),(0,d.x1)("sash.hoverBorder",j,e.kg(1977,"Border color of active sashes."));let n=(0,d.x1)("badge.background",{dark:"#4D4D4D",light:"#C4C4C4",hcDark:f.Q1.black,hcLight:"#0F4A85"},e.kg(1978,"Badge background color. Badges are small information labels, e.g. for search results count.")),o=(0,d.x1)("badge.foreground",{dark:f.Q1.white,light:"#333",hcDark:f.Q1.white,hcLight:f.Q1.white},e.kg(1979,"Badge foreground color. Badges are small information labels, e.g. for search results count."));(0,d.x1)("activityWarningBadge.foreground",{dark:f.Q1.black.lighten(.2),light:f.Q1.white,hcDark:null,hcLight:f.Q1.black.lighten(.2)},e.kg(1980,"Foreground color of the warning activity badge")),(0,d.x1)("activityWarningBadge.background",{dark:"#CCA700",light:"#BF8803",hcDark:null,hcLight:"#CCA700"},e.kg(1981,"Background color of the warning activity badge")),(0,d.x1)("activityErrorBadge.foreground",{dark:f.Q1.black.lighten(.2),light:f.Q1.white,hcDark:null,hcLight:f.Q1.black.lighten(.2)},e.kg(1982,"Foreground color of the error activity badge")),(0,d.x1)("activityErrorBadge.background",{dark:"#F14C4C",light:"#E51400",hcDark:null,hcLight:"#F14C4C"},e.kg(1983,"Background color of the error activity badge"));let p=(0,d.x1)("scrollbar.shadow",{dark:"#000000",light:"#DDDDDD",hcDark:null,hcLight:null},e.kg(1984,"Scrollbar shadow to indicate that the view is scrolled.")),q=(0,d.x1)("scrollbarSlider.background",{dark:f.Q1.fromHex("#797979").transparent(.4),light:f.Q1.fromHex("#646464").transparent(.4),hcDark:(0,d.JO)(k,.6),hcLight:(0,d.JO)(k,.4)},e.kg(1985,"Scrollbar slider background color.")),r=(0,d.x1)("scrollbarSlider.hoverBackground",{dark:f.Q1.fromHex("#646464").transparent(.7),light:f.Q1.fromHex("#646464").transparent(.7),hcDark:(0,d.JO)(k,.8),hcLight:(0,d.JO)(k,.8)},e.kg(1986,"Scrollbar slider background color when hovering.")),s=(0,d.x1)("scrollbarSlider.activeBackground",{dark:f.Q1.fromHex("#BFBFBF").transparent(.4),light:f.Q1.fromHex("#000000").transparent(.6),hcDark:k,hcLight:k},e.kg(1987,"Scrollbar slider background color when clicked on.")),t=(0,d.x1)("progressBar.background",{dark:f.Q1.fromHex("#0E70C0"),light:f.Q1.fromHex("#0E70C0"),hcDark:k,hcLight:k},e.kg(1988,"Background color of the progress bar that can show for long running operations."));(0,d.x1)("chart.line",{dark:"#236B8E",light:"#236B8E",hcDark:"#236B8E",hcLight:"#236B8E"},e.kg(1989,"Line color for the chart.")),(0,d.x1)("chart.axis",{dark:f.Q1.fromHex("#BFBFBF").transparent(.4),light:f.Q1.fromHex("#000000").transparent(.6),hcDark:k,hcLight:k},e.kg(1990,"Axis color for the chart.")),(0,d.x1)("chart.guide",{dark:f.Q1.fromHex("#BFBFBF").transparent(.2),light:f.Q1.fromHex("#000000").transparent(.2),hcDark:k,hcLight:k},e.kg(1991,"Guide line for the chart."));let u=(0,d.x1)("editor.background",{light:"#ffffff",dark:"#1E1E1E",hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1781,"Editor background color.")),v=(0,d.x1)("editor.foreground",{light:"#333333",dark:"#BBBBBB",hcDark:f.Q1.white,hcLight:g},e.kg(1782,"Editor default foreground color."));(0,d.x1)("editorStickyScroll.background",u,e.kg(1783,"Background color of sticky scroll in the editor")),(0,d.x1)("editorStickyScrollGutter.background",u,e.kg(1784,"Background color of the gutter part of sticky scroll in the editor")),(0,d.x1)("editorStickyScrollHover.background",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:null,hcLight:f.Q1.fromHex("#0F4A85").transparent(.1)},e.kg(1785,"Background color of sticky scroll on hover in the editor")),(0,d.x1)("editorStickyScroll.border",{dark:null,light:null,hcDark:k,hcLight:k},e.kg(1786,"Border color of sticky scroll in the editor")),(0,d.x1)("editorStickyScroll.shadow",p,e.kg(1787," Shadow color of sticky scroll in the editor"));let w=(0,d.x1)("editorWidget.background",{dark:"#252526",light:"#F3F3F3",hcDark:"#0C141F",hcLight:f.Q1.white},e.kg(1788,"Background color of editor widgets, such as find/replace.")),x=(0,d.x1)("editorWidget.foreground",g,e.kg(1789,"Foreground color of editor widgets, such as find/replace.")),y=(0,d.x1)("editorWidget.border",{dark:"#454545",light:"#C8C8C8",hcDark:k,hcLight:k},e.kg(1790,"Border color of editor widgets. The color is only used if the widget chooses to have a border and if the color is not overridden by a widget."));(0,d.x1)("editorWidget.resizeBorder",null,e.kg(1791,"Border color of the resize bar of editor widgets. The color is only used if the widget chooses to have a resize border and if the color is not overridden by a widget.")),(0,d.x1)("editorError.background",null,e.kg(1792,"Background color of error text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);let z=(0,d.x1)("editorError.foreground",{dark:"#F14C4C",light:"#E51400",hcDark:"#F48771",hcLight:"#B5200D"},e.kg(1793,"Foreground color of error squigglies in the editor.")),A=(0,d.x1)("editorError.border",{dark:null,light:null,hcDark:f.Q1.fromHex("#E47777").transparent(.8),hcLight:"#B5200D"},e.kg(1794,"If set, color of double underlines for errors in the editor.")),B=(0,d.x1)("editorWarning.background",null,e.kg(1795,"Background color of warning text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0),C=(0,d.x1)("editorWarning.foreground",{dark:"#CCA700",light:"#BF8803",hcDark:"#FFD370",hcLight:"#895503"},e.kg(1796,"Foreground color of warning squigglies in the editor.")),D=(0,d.x1)("editorWarning.border",{dark:null,light:null,hcDark:f.Q1.fromHex("#FFCC00").transparent(.8),hcLight:f.Q1.fromHex("#FFCC00").transparent(.8)},e.kg(1797,"If set, color of double underlines for warnings in the editor."));(0,d.x1)("editorInfo.background",null,e.kg(1798,"Background color of info text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);let E=(0,d.x1)("editorInfo.foreground",{dark:"#3794FF",light:"#1a85ff",hcDark:"#3794FF",hcLight:"#1a85ff"},e.kg(1799,"Foreground color of info squigglies in the editor.")),F=(0,d.x1)("editorInfo.border",{dark:null,light:null,hcDark:f.Q1.fromHex("#3794FF").transparent(.8),hcLight:"#292929"},e.kg(1800,"If set, color of double underlines for infos in the editor.")),G=(0,d.x1)("editorHint.foreground",{dark:f.Q1.fromHex("#eeeeee").transparent(.7),light:"#6c6c6c",hcDark:null,hcLight:null},e.kg(1801,"Foreground color of hint squigglies in the editor."));(0,d.x1)("editorHint.border",{dark:null,light:null,hcDark:f.Q1.fromHex("#eeeeee").transparent(.8),hcLight:"#292929"},e.kg(1802,"If set, color of double underlines for hints in the editor."));let H=(0,d.x1)("editorLink.activeForeground",{dark:"#4E94CE",light:f.Q1.blue,hcDark:f.Q1.cyan,hcLight:"#292929"},e.kg(1803,"Color of active links.")),I=(0,d.x1)("editor.selectionBackground",{light:"#ADD6FF",dark:"#264F78",hcDark:"#f3f518",hcLight:"#0F4A85"},e.kg(1804,"Color of the editor selection.")),J=(0,d.x1)("editor.selectionForeground",{light:null,dark:null,hcDark:"#000000",hcLight:f.Q1.white},e.kg(1805,"Color of the selected text for high contrast.")),K=(0,d.x1)("editor.inactiveSelectionBackground",{light:(0,d.JO)(I,.5),dark:(0,d.JO)(I,.5),hcDark:(0,d.JO)(I,.7),hcLight:(0,d.JO)(I,.5)},e.kg(1806,"Color of the selection in an inactive editor. The color must not be opaque so as not to hide underlying decorations."),!0),L=(0,d.x1)("editor.selectionHighlightBackground",{light:(0,d.oG)(I,u,.3,.6),dark:(0,d.oG)(I,u,.3,.6),hcDark:null,hcLight:null},e.kg(1807,"Color for regions with the same content as the selection. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("editor.selectionHighlightBorder",{light:null,dark:null,hcDark:l,hcLight:l},e.kg(1808,"Border color for regions with the same content as the selection.")),(0,d.x1)("editor.compositionBorder",{light:"#000000",dark:"#ffffff",hcLight:"#000000",hcDark:"#ffffff"},e.kg(1809,"The border color for an IME composition.")),(0,d.x1)("editor.findMatchBackground",{light:"#A8AC94",dark:"#515C6A",hcDark:null,hcLight:null},e.kg(1810,"Color of the current search match."));let M=(0,d.x1)("editor.findMatchForeground",null,e.kg(1811,"Text color of the current search match.")),N=(0,d.x1)("editor.findMatchHighlightBackground",{light:"#EA5C0055",dark:"#EA5C0055",hcDark:null,hcLight:null},e.kg(1812,"Color of the other search matches. The color must not be opaque so as not to hide underlying decorations."),!0),O=(0,d.x1)("editor.findMatchHighlightForeground",null,e.kg(1813,"Foreground color of the other search matches."),!0);(0,d.x1)("editor.findRangeHighlightBackground",{dark:"#3a3d4166",light:"#b4b4b44d",hcDark:null,hcLight:null},e.kg(1814,"Color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0),(0,d.x1)("editor.findMatchBorder",{light:null,dark:null,hcDark:l,hcLight:l},e.kg(1815,"Border color of the current search match."));let P=(0,d.x1)("editor.findMatchHighlightBorder",{light:null,dark:null,hcDark:l,hcLight:l},e.kg(1816,"Border color of the other search matches.")),Q=(0,d.x1)("editor.findRangeHighlightBorder",{dark:null,light:null,hcDark:(0,d.JO)(l,.4),hcLight:(0,d.JO)(l,.4)},e.kg(1817,"Border color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("editor.hoverHighlightBackground",{light:"#ADD6FF26",dark:"#264f7840",hcDark:"#ADD6FF26",hcLight:null},e.kg(1818,"Highlight below the word for which a hover is shown. The color must not be opaque so as not to hide underlying decorations."),!0);let R=(0,d.x1)("editorHoverWidget.background",w,e.kg(1819,"Background color of the editor hover.")),S=(0,d.x1)("editorHoverWidget.foreground",x,e.kg(1820,"Foreground color of the editor hover.")),T=(0,d.x1)("editorHoverWidget.border",y,e.kg(1821,"Border color of the editor hover."));(0,d.x1)("editorHoverWidget.statusBarBackground",{dark:(0,d.a)(R,.2),light:(0,d.e$)(R,.05),hcDark:w,hcLight:w},e.kg(1822,"Background color of the editor hover status bar."));let U=(0,d.x1)("editorInlayHint.foreground",{dark:"#969696",light:"#969696",hcDark:f.Q1.white,hcLight:f.Q1.black},e.kg(1823,"Foreground color of inline hints")),V=(0,d.x1)("editorInlayHint.background",{dark:(0,d.JO)(n,.1),light:(0,d.JO)(n,.1),hcDark:(0,d.JO)(f.Q1.white,.1),hcLight:(0,d.JO)(n,.1)},e.kg(1824,"Background color of inline hints")),W=(0,d.x1)("editorInlayHint.typeForeground",U,e.kg(1825,"Foreground color of inline hints for types")),X=(0,d.x1)("editorInlayHint.typeBackground",V,e.kg(1826,"Background color of inline hints for types")),Y=(0,d.x1)("editorInlayHint.parameterForeground",U,e.kg(1827,"Foreground color of inline hints for parameters")),Z=(0,d.x1)("editorInlayHint.parameterBackground",V,e.kg(1828,"Background color of inline hints for parameters")),$=(0,d.x1)("editorLightBulb.foreground",{dark:"#FFCC00",light:"#DDB100",hcDark:"#FFCC00",hcLight:"#007ACC"},e.kg(1829,"The color used for the lightbulb actions icon."));(0,d.x1)("editorLightBulbAutoFix.foreground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},e.kg(1830,"The color used for the lightbulb auto fix actions icon.")),(0,d.x1)("editorLightBulbAi.foreground",$,e.kg(1831,"The color used for the lightbulb AI icon.")),(0,d.x1)("editor.snippetTabstopHighlightBackground",{dark:new f.Q1(new f.bU(124,124,124,.3)),light:new f.Q1(new f.bU(10,50,100,.2)),hcDark:new f.Q1(new f.bU(124,124,124,.3)),hcLight:new f.Q1(new f.bU(10,50,100,.2))},e.kg(1832,"Highlight background color of a snippet tabstop.")),(0,d.x1)("editor.snippetTabstopHighlightBorder",null,e.kg(1833,"Highlight border color of a snippet tabstop.")),(0,d.x1)("editor.snippetFinalTabstopHighlightBackground",null,e.kg(1834,"Highlight background color of the final tabstop of a snippet.")),(0,d.x1)("editor.snippetFinalTabstopHighlightBorder",{dark:"#525252",light:new f.Q1(new f.bU(10,50,100,.5)),hcDark:"#525252",hcLight:"#292929"},e.kg(1835,"Highlight border color of the final tabstop of a snippet."));let _=new f.Q1(new f.bU(155,185,85,.2)),aa=new f.Q1(new f.bU(255,0,0,.2)),ab=(0,d.x1)("diffEditor.insertedTextBackground",{dark:"#9ccc2c33",light:"#9ccc2c40",hcDark:null,hcLight:null},e.kg(1836,"Background color for text that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0),ac=(0,d.x1)("diffEditor.removedTextBackground",{dark:"#ff000033",light:"#ff000033",hcDark:null,hcLight:null},e.kg(1837,"Background color for text that got removed. The color must not be opaque so as not to hide underlying decorations."),!0),ad=(0,d.x1)("diffEditor.insertedLineBackground",{dark:_,light:_,hcDark:null,hcLight:null},e.kg(1838,"Background color for lines that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("diffEditor.removedLineBackground",{dark:aa,light:aa,hcDark:null,hcLight:null},e.kg(1839,"Background color for lines that got removed. The color must not be opaque so as not to hide underlying decorations."),!0),(0,d.x1)("diffEditorGutter.insertedLineBackground",null,e.kg(1840,"Background color for the margin where lines got inserted.")),(0,d.x1)("diffEditorGutter.removedLineBackground",null,e.kg(1841,"Background color for the margin where lines got removed."));let ae=(0,d.x1)("diffEditorOverview.insertedForeground",null,e.kg(1842,"Diff overview ruler foreground for inserted content.")),af=(0,d.x1)("diffEditorOverview.removedForeground",null,e.kg(1843,"Diff overview ruler foreground for removed content."));(0,d.x1)("diffEditor.insertedTextBorder",{dark:null,light:null,hcDark:"#33ff2eff",hcLight:"#374E06"},e.kg(1844,"Outline color for the text that got inserted.")),(0,d.x1)("diffEditor.removedTextBorder",{dark:null,light:null,hcDark:"#FF008F",hcLight:"#AD0707"},e.kg(1845,"Outline color for text that got removed.")),(0,d.x1)("diffEditor.border",{dark:null,light:null,hcDark:k,hcLight:k},e.kg(1846,"Border color between the two text editors.")),(0,d.x1)("diffEditor.diagonalFill",{dark:"#cccccc33",light:"#22222233",hcDark:null,hcLight:null},e.kg(1847,"Color of the diff editor's diagonal fill. The diagonal fill is used in side-by-side diff views.")),(0,d.x1)("diffEditor.unchangedRegionBackground","sideBar.background",e.kg(1848,"The background color of unchanged blocks in the diff editor.")),(0,d.x1)("diffEditor.unchangedRegionForeground","foreground",e.kg(1849,"The foreground color of unchanged blocks in the diff editor.")),(0,d.x1)("diffEditor.unchangedCodeBackground",{dark:"#74747429",light:"#b8b8b829",hcDark:null,hcLight:null},e.kg(1850,"The background color of unchanged code in the diff editor."));let ag=(0,d.x1)("widget.shadow",{dark:(0,d.JO)(f.Q1.black,.36),light:(0,d.JO)(f.Q1.black,.16),hcDark:null,hcLight:null},e.kg(1851,"Shadow color of widgets such as find/replace inside the editor.")),ah=(0,d.x1)("widget.border",{dark:null,light:null,hcDark:k,hcLight:k},e.kg(1852,"Border color of widgets such as find/replace inside the editor.")),ai=(0,d.x1)("toolbar.hoverBackground",{dark:"#5a5d5e50",light:"#b8b8b850",hcDark:null,hcLight:null},e.kg(1853,"Toolbar background when hovering over actions using the mouse"));(0,d.x1)("toolbar.hoverOutline",{dark:null,light:null,hcDark:l,hcLight:l},e.kg(1854,"Toolbar outline when hovering over actions using the mouse")),(0,d.x1)("toolbar.activeBackground",{dark:(0,d.a)(ai,.1),light:(0,d.e$)(ai,.1),hcDark:null,hcLight:null},e.kg(1855,"Toolbar background when holding the mouse over actions"));let aj=(0,d.x1)("breadcrumb.foreground",(0,d.JO)(g,.8),e.kg(1856,"Color of focused breadcrumb items.")),ak=(0,d.x1)("breadcrumb.background",u,e.kg(1857,"Background color of breadcrumb items.")),al=(0,d.x1)("breadcrumb.focusForeground",{light:(0,d.e$)(g,.2),dark:(0,d.a)(g,.1),hcDark:(0,d.a)(g,.1),hcLight:(0,d.a)(g,.1)},e.kg(1858,"Color of focused breadcrumb items.")),am=(0,d.x1)("breadcrumb.activeSelectionForeground",{light:(0,d.e$)(g,.2),dark:(0,d.a)(g,.1),hcDark:(0,d.a)(g,.1),hcLight:(0,d.a)(g,.1)},e.kg(1859,"Color of selected breadcrumb items."));(0,d.x1)("breadcrumbPicker.background",w,e.kg(1860,"Background color of breadcrumb item picker."));let an=f.Q1.fromHex("#40C8AE").transparent(.5),ao=f.Q1.fromHex("#40A6FF").transparent(.5),ap=f.Q1.fromHex("#606060").transparent(.4),aq=(0,d.x1)("merge.currentHeaderBackground",{dark:an,light:an,hcDark:null,hcLight:null},e.kg(1861,"Current header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("merge.currentContentBackground",(0,d.JO)(aq,.4),e.kg(1862,"Current content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);let ar=(0,d.x1)("merge.incomingHeaderBackground",{dark:ao,light:ao,hcDark:null,hcLight:null},e.kg(1863,"Incoming header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("merge.incomingContentBackground",(0,d.JO)(ar,.4),e.kg(1864,"Incoming content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);let as=(0,d.x1)("merge.commonHeaderBackground",{dark:ap,light:ap,hcDark:null,hcLight:null},e.kg(1865,"Common ancestor header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("merge.commonContentBackground",(0,d.JO)(as,.4),e.kg(1866,"Common ancestor content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);let at=(0,d.x1)("merge.border",{dark:null,light:null,hcDark:"#C3DF6F",hcLight:"#007ACC"},e.kg(1867,"Border color on headers and the splitter in inline merge-conflicts."));(0,d.x1)("editorOverviewRuler.currentContentForeground",{dark:(0,d.JO)(aq,1),light:(0,d.JO)(aq,1),hcDark:at,hcLight:at},e.kg(1868,"Current overview ruler foreground for inline merge-conflicts.")),(0,d.x1)("editorOverviewRuler.incomingContentForeground",{dark:(0,d.JO)(ar,1),light:(0,d.JO)(ar,1),hcDark:at,hcLight:at},e.kg(1869,"Incoming overview ruler foreground for inline merge-conflicts.")),(0,d.x1)("editorOverviewRuler.commonContentForeground",{dark:(0,d.JO)(as,1),light:(0,d.JO)(as,1),hcDark:at,hcLight:at},e.kg(1870,"Common ancestor overview ruler foreground for inline merge-conflicts."));let au=(0,d.x1)("editorOverviewRuler.findMatchForeground",{dark:"#d186167e",light:"#d186167e",hcDark:"#AB5A00",hcLight:"#AB5A00"},e.kg(1871,"Overview ruler marker color for find matches. The color must not be opaque so as not to hide underlying decorations."),!0),av=(0,d.x1)("editorOverviewRuler.selectionHighlightForeground","#A0A0A0CC",e.kg(1872,"Overview ruler marker color for selection highlights. The color must not be opaque so as not to hide underlying decorations."),!0),aw=(0,d.x1)("problemsErrorIcon.foreground",z,e.kg(1873,"The color used for the problems error icon.")),ax=(0,d.x1)("problemsWarningIcon.foreground",C,e.kg(1874,"The color used for the problems warning icon.")),ay=(0,d.x1)("problemsInfoIcon.foreground",E,e.kg(1875,"The color used for the problems info icon.")),az=(0,d.x1)("minimap.findMatchHighlight",{light:"#d18616",dark:"#d18616",hcDark:"#AB5A00",hcLight:"#0F4A85"},e.kg(1966,"Minimap marker color for find matches."),!0),aA=(0,d.x1)("minimap.selectionOccurrenceHighlight",{light:"#c9c9c9",dark:"#676767",hcDark:"#ffffff",hcLight:"#0F4A85"},e.kg(1967,"Minimap marker color for repeating editor selections."),!0),aB=(0,d.x1)("minimap.selectionHighlight",{light:"#ADD6FF",dark:"#264F78",hcDark:"#ffffff",hcLight:"#0F4A85"},e.kg(1968,"Minimap marker color for the editor selection."),!0),aC=(0,d.x1)("minimap.infoHighlight",{dark:E,light:E,hcDark:F,hcLight:F},e.kg(1969,"Minimap marker color for infos.")),aD=(0,d.x1)("minimap.warningHighlight",{dark:C,light:C,hcDark:D,hcLight:D},e.kg(1970,"Minimap marker color for warnings.")),aE=(0,d.x1)("minimap.errorHighlight",{dark:new f.Q1(new f.bU(255,18,18,.7)),light:new f.Q1(new f.bU(255,18,18,.7)),hcDark:new f.Q1(new f.bU(255,50,50,1)),hcLight:"#B5200D"},e.kg(1971,"Minimap marker color for errors.")),aF=(0,d.x1)("minimap.background",null,e.kg(1972,"Minimap background color.")),aG=(0,d.x1)("minimap.foregroundOpacity",f.Q1.fromHex("#000f"),e.kg(1973,'Opacity of foreground elements rendered in the minimap. For example, "#000000c0" will render the elements with 75% opacity.'));(0,d.x1)("minimapSlider.background",(0,d.JO)(q,.5),e.kg(1974,"Minimap slider background color.")),(0,d.x1)("minimapSlider.hoverBackground",(0,d.JO)(r,.5),e.kg(1975,"Minimap slider background color when hovering.")),(0,d.x1)("minimapSlider.activeBackground",(0,d.JO)(s,.5),e.kg(1976,"Minimap slider background color when clicked on.")),(0,d.x1)("charts.foreground",g,e.kg(1773,"The foreground color used in charts.")),(0,d.x1)("charts.lines",(0,d.JO)(g,.5),e.kg(1774,"The color used for horizontal lines in charts.")),(0,d.x1)("charts.red",z,e.kg(1775,"The red color used in chart visualizations.")),(0,d.x1)("charts.blue",E,e.kg(1776,"The blue color used in chart visualizations.")),(0,d.x1)("charts.yellow",C,e.kg(1777,"The yellow color used in chart visualizations.")),(0,d.x1)("charts.orange",az,e.kg(1778,"The orange color used in chart visualizations.")),(0,d.x1)("charts.green",{dark:"#89D185",light:"#388A34",hcDark:"#89D185",hcLight:"#374e06"},e.kg(1779,"The green color used in chart visualizations.")),(0,d.x1)("charts.purple",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},e.kg(1780,"The purple color used in chart visualizations."));let aH=(0,d.x1)("input.background",{dark:"#3C3C3C",light:f.Q1.white,hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1876,"Input box background.")),aI=(0,d.x1)("input.foreground",g,e.kg(1877,"Input box foreground.")),aJ=(0,d.x1)("input.border",{dark:null,light:null,hcDark:k,hcLight:k},e.kg(1878,"Input box border.")),aK=(0,d.x1)("inputOption.activeBorder",{dark:"#007ACC",light:"#007ACC",hcDark:k,hcLight:k},e.kg(1879,"Border color of activated options in input fields.")),aL=(0,d.x1)("inputOption.hoverBackground",{dark:"#5a5d5e80",light:"#b8b8b850",hcDark:null,hcLight:null},e.kg(1880,"Background color of activated options in input fields.")),aM=(0,d.x1)("inputOption.activeBackground",{dark:(0,d.JO)(j,.4),light:(0,d.JO)(j,.2),hcDark:f.Q1.transparent,hcLight:f.Q1.transparent},e.kg(1881,"Background hover color of options in input fields.")),aN=(0,d.x1)("inputOption.activeForeground",{dark:f.Q1.white,light:f.Q1.black,hcDark:g,hcLight:g},e.kg(1882,"Foreground color of activated options in input fields."));(0,d.x1)("input.placeholderForeground",{light:(0,d.JO)(g,.5),dark:(0,d.JO)(g,.5),hcDark:(0,d.JO)(g,.7),hcLight:(0,d.JO)(g,.7)},e.kg(1883,"Input box foreground color for placeholder text."));let aO=(0,d.x1)("inputValidation.infoBackground",{dark:"#063B49",light:"#D6ECF2",hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1884,"Input validation background color for information severity.")),aP=(0,d.x1)("inputValidation.infoForeground",{dark:null,light:null,hcDark:null,hcLight:g},e.kg(1885,"Input validation foreground color for information severity.")),aQ=(0,d.x1)("inputValidation.infoBorder",{dark:"#007acc",light:"#007acc",hcDark:k,hcLight:k},e.kg(1886,"Input validation border color for information severity.")),aR=(0,d.x1)("inputValidation.warningBackground",{dark:"#352A05",light:"#F6F5D2",hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1887,"Input validation background color for warning severity.")),aS=(0,d.x1)("inputValidation.warningForeground",{dark:null,light:null,hcDark:null,hcLight:g},e.kg(1888,"Input validation foreground color for warning severity.")),aT=(0,d.x1)("inputValidation.warningBorder",{dark:"#B89500",light:"#B89500",hcDark:k,hcLight:k},e.kg(1889,"Input validation border color for warning severity.")),aU=(0,d.x1)("inputValidation.errorBackground",{dark:"#5A1D1D",light:"#F2DEDE",hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1890,"Input validation background color for error severity.")),aV=(0,d.x1)("inputValidation.errorForeground",{dark:null,light:null,hcDark:null,hcLight:g},e.kg(1891,"Input validation foreground color for error severity.")),aW=(0,d.x1)("inputValidation.errorBorder",{dark:"#BE1100",light:"#BE1100",hcDark:k,hcLight:k},e.kg(1892,"Input validation border color for error severity.")),aX=(0,d.x1)("dropdown.background",{dark:"#3C3C3C",light:f.Q1.white,hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1893,"Dropdown background.")),aY=(0,d.x1)("dropdown.listBackground",{dark:null,light:null,hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1894,"Dropdown list background.")),aZ=(0,d.x1)("dropdown.foreground",{dark:"#F0F0F0",light:g,hcDark:f.Q1.white,hcLight:g},e.kg(1895,"Dropdown foreground.")),a$=(0,d.x1)("dropdown.border",{dark:aX,light:"#CECECE",hcDark:k,hcLight:k},e.kg(1896,"Dropdown border.")),a_=(0,d.x1)("button.foreground",f.Q1.white,e.kg(1897,"Button foreground color.")),a0=(0,d.x1)("button.separator",(0,d.JO)(a_,.4),e.kg(1898,"Button separator color.")),a1=(0,d.x1)("button.background",{dark:"#0E639C",light:"#007ACC",hcDark:null,hcLight:"#0F4A85"},e.kg(1899,"Button background color.")),a2=(0,d.x1)("button.hoverBackground",{dark:(0,d.a)(a1,.2),light:(0,d.e$)(a1,.2),hcDark:a1,hcLight:a1},e.kg(1900,"Button background color when hovering.")),a3=(0,d.x1)("button.border",k,e.kg(1901,"Button border color.")),a4=(0,d.x1)("button.secondaryForeground",{dark:f.Q1.white,light:f.Q1.white,hcDark:f.Q1.white,hcLight:g},e.kg(1902,"Secondary button foreground color.")),a5=(0,d.x1)("button.secondaryBackground",{dark:"#3A3D41",light:"#5F6A79",hcDark:null,hcLight:f.Q1.white},e.kg(1903,"Secondary button background color.")),a6=(0,d.x1)("button.secondaryHoverBackground",{dark:(0,d.a)(a5,.2),light:(0,d.e$)(a5,.2),hcDark:null,hcLight:null},e.kg(1904,"Secondary button background color when hovering.")),a7=(0,d.x1)("radio.activeForeground",aN,e.kg(1905,"Foreground color of active radio option.")),a8=(0,d.x1)("radio.activeBackground",aM,e.kg(1906,"Background color of active radio option.")),a9=(0,d.x1)("radio.activeBorder",aK,e.kg(1907,"Border color of the active radio option.")),ba=(0,d.x1)("radio.inactiveForeground",null,e.kg(1908,"Foreground color of inactive radio option.")),bb=(0,d.x1)("radio.inactiveBackground",null,e.kg(1909,"Background color of inactive radio option.")),bc=(0,d.x1)("radio.inactiveBorder",{light:(0,d.JO)(a7,.2),dark:(0,d.JO)(a7,.2),hcDark:(0,d.JO)(a7,.4),hcLight:(0,d.JO)(a7,.2)},e.kg(1910,"Border color of the inactive radio option.")),bd=(0,d.x1)("radio.inactiveHoverBackground",aL,e.kg(1911,"Background color of inactive active radio option when hovering.")),be=(0,d.x1)("checkbox.background",aX,e.kg(1912,"Background color of checkbox widget."));(0,d.x1)("checkbox.selectBackground",w,e.kg(1913,"Background color of checkbox widget when the element it's in is selected."));let bf=(0,d.x1)("checkbox.foreground",aZ,e.kg(1914,"Foreground color of checkbox widget.")),bg=(0,d.x1)("checkbox.border",a$,e.kg(1915,"Border color of checkbox widget."));(0,d.x1)("checkbox.selectBorder",i,e.kg(1916,"Border color of checkbox widget when the element it's in is selected."));let bh=(0,d.x1)("checkbox.disabled.background",{op:7,color:be,with:bf,ratio:.33},e.kg(1917,"Background of a disabled checkbox.")),bi=(0,d.x1)("checkbox.disabled.foreground",{op:7,color:bf,with:be,ratio:.33},e.kg(1918,"Foreground of a disabled checkbox.")),bj=(0,d.x1)("keybindingLabel.background",{dark:new f.Q1(new f.bU(128,128,128,.17)),light:new f.Q1(new f.bU(221,221,221,.4)),hcDark:f.Q1.transparent,hcLight:f.Q1.transparent},e.kg(1919,"Keybinding label background color. The keybinding label is used to represent a keyboard shortcut.")),bk=(0,d.x1)("keybindingLabel.foreground",{dark:f.Q1.fromHex("#CCCCCC"),light:f.Q1.fromHex("#555555"),hcDark:f.Q1.white,hcLight:g},e.kg(1920,"Keybinding label foreground color. The keybinding label is used to represent a keyboard shortcut.")),bl=(0,d.x1)("keybindingLabel.border",{dark:new f.Q1(new f.bU(51,51,51,.6)),light:new f.Q1(new f.bU(204,204,204,.4)),hcDark:new f.Q1(new f.bU(111,195,223)),hcLight:k},e.kg(1921,"Keybinding label border color. The keybinding label is used to represent a keyboard shortcut.")),bm=(0,d.x1)("keybindingLabel.bottomBorder",{dark:new f.Q1(new f.bU(68,68,68,.6)),light:new f.Q1(new f.bU(187,187,187,.4)),hcDark:new f.Q1(new f.bU(111,195,223)),hcLight:g},e.kg(1922,"Keybinding label border bottom color. The keybinding label is used to represent a keyboard shortcut.")),bn=(0,d.x1)("list.focusBackground",null,e.kg(1923,"List/Tree background color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bo=(0,d.x1)("list.focusForeground",null,e.kg(1924,"List/Tree foreground color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bp=(0,d.x1)("list.focusOutline",{dark:j,light:j,hcDark:l,hcLight:l},e.kg(1925,"List/Tree outline color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bq=(0,d.x1)("list.focusAndSelectionOutline",null,e.kg(1926,"List/Tree outline color for the focused item when the list/tree is active and selected. An active list/tree has keyboard focus, an inactive does not.")),br=(0,d.x1)("list.activeSelectionBackground",{dark:"#04395E",light:"#0060C0",hcDark:null,hcLight:f.Q1.fromHex("#0F4A85").transparent(.1)},e.kg(1927,"List/Tree background color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bs=(0,d.x1)("list.activeSelectionForeground",{dark:f.Q1.white,light:f.Q1.white,hcDark:null,hcLight:null},e.kg(1928,"List/Tree foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bt=(0,d.x1)("list.activeSelectionIconForeground",null,e.kg(1929,"List/Tree icon foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bu=(0,d.x1)("list.inactiveSelectionBackground",{dark:"#37373D",light:"#E4E6F1",hcDark:null,hcLight:f.Q1.fromHex("#0F4A85").transparent(.1)},e.kg(1930,"List/Tree background color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),bv=(0,d.x1)("list.inactiveSelectionForeground",null,e.kg(1931,"List/Tree foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),bw=(0,d.x1)("list.inactiveSelectionIconForeground",null,e.kg(1932,"List/Tree icon foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),bx=(0,d.x1)("list.inactiveFocusBackground",null,e.kg(1933,"List/Tree background color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),by=(0,d.x1)("list.inactiveFocusOutline",null,e.kg(1934,"List/Tree outline color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),bz=(0,d.x1)("list.hoverBackground",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:f.Q1.white.transparent(.1),hcLight:f.Q1.fromHex("#0F4A85").transparent(.1)},e.kg(1935,"List/Tree background when hovering over items using the mouse.")),bA=(0,d.x1)("list.hoverForeground",null,e.kg(1936,"List/Tree foreground when hovering over items using the mouse.")),bB=(0,d.x1)("list.dropBackground",{dark:"#062F4A",light:"#D6EBFF",hcDark:null,hcLight:null},e.kg(1937,"List/Tree drag and drop background when moving items over other items when using the mouse.")),bC=(0,d.x1)("list.dropBetweenBackground",{dark:i,light:i,hcDark:null,hcLight:null},e.kg(1938,"List/Tree drag and drop border color when moving items between items when using the mouse.")),bD=(0,d.x1)("list.highlightForeground",{dark:"#2AAAFF",light:"#0066BF",hcDark:j,hcLight:j},e.kg(1939,"List/Tree foreground color of the match highlights when searching inside the list/tree.")),bE=(0,d.x1)("list.focusHighlightForeground",{dark:bD,light:(0,d.Hz)(br,bD,"#BBE7FF"),hcDark:bD,hcLight:bD},e.kg(1940,"List/Tree foreground color of the match highlights on actively focused items when searching inside the list/tree."));(0,d.x1)("list.invalidItemForeground",{dark:"#B89500",light:"#B89500",hcDark:"#B89500",hcLight:"#B5200D"},e.kg(1941,"List/Tree foreground color for invalid items, for example an unresolved root in explorer.")),(0,d.x1)("list.errorForeground",{dark:"#F88070",light:"#B01011",hcDark:null,hcLight:null},e.kg(1942,"Foreground color of list items containing errors.")),(0,d.x1)("list.warningForeground",{dark:"#CCA700",light:"#855F00",hcDark:null,hcLight:null},e.kg(1943,"Foreground color of list items containing warnings."));let bF=(0,d.x1)("listFilterWidget.background",{light:(0,d.e$)(w,0),dark:(0,d.a)(w,0),hcDark:w,hcLight:w},e.kg(1944,"Background color of the type filter widget in lists and trees.")),bG=(0,d.x1)("listFilterWidget.outline",{dark:f.Q1.transparent,light:f.Q1.transparent,hcDark:"#f38518",hcLight:"#007ACC"},e.kg(1945,"Outline color of the type filter widget in lists and trees.")),bH=(0,d.x1)("listFilterWidget.noMatchesOutline",{dark:"#BE1100",light:"#BE1100",hcDark:k,hcLight:k},e.kg(1946,"Outline color of the type filter widget in lists and trees, when there are no matches.")),bI=(0,d.x1)("listFilterWidget.shadow",ag,e.kg(1947,"Shadow color of the type filter widget in lists and trees."));(0,d.x1)("list.filterMatchBackground",{dark:N,light:N,hcDark:null,hcLight:null},e.kg(1948,"Background color of the filtered match.")),(0,d.x1)("list.filterMatchBorder",{dark:P,light:P,hcDark:k,hcLight:l},e.kg(1949,"Border color of the filtered match.")),(0,d.x1)("list.deemphasizedForeground",{dark:"#8C8C8C",light:"#8E8E90",hcDark:"#A7A8A9",hcLight:"#666666"},e.kg(1950,"List/Tree foreground color for items that are deemphasized."));let bJ=(0,d.x1)("tree.indentGuidesStroke",{dark:"#585858",light:"#a9a9a9",hcDark:"#a9a9a9",hcLight:"#a5a5a5"},e.kg(1951,"Tree stroke color for the indentation guides.")),bK=(0,d.x1)("tree.inactiveIndentGuidesStroke",(0,d.JO)(bJ,.4),e.kg(1952,"Tree stroke color for the indentation guides that are not active.")),bL=(0,d.x1)("tree.tableColumnsBorder",{dark:"#CCCCCC20",light:"#61616120",hcDark:null,hcLight:null},e.kg(1953,"Table border color between columns.")),bM=(0,d.x1)("tree.tableOddRowsBackground",{dark:(0,d.JO)(g,.04),light:(0,d.JO)(g,.04),hcDark:null,hcLight:null},e.kg(1954,"Background color for odd table rows."));(0,d.x1)("editorActionList.background",w,e.kg(1955,"Action List background color."));let bN=(0,d.x1)("editorActionList.foreground",x,e.kg(1956,"Action List foreground color."));(0,d.x1)("editorActionList.focusForeground",bs,e.kg(1957,"Action List foreground color for the focused item.")),(0,d.x1)("editorActionList.focusBackground",br,e.kg(1958,"Action List background color for the focused item."));let bO=(0,d.x1)("menu.border",{dark:null,light:null,hcDark:k,hcLight:k},e.kg(1959,"Border color of menus.")),bP=(0,d.x1)("menu.foreground",aZ,e.kg(1960,"Foreground color of menu items.")),bQ=(0,d.x1)("menu.background",aX,e.kg(1961,"Background color of menu items.")),bR=(0,d.x1)("menu.selectionForeground",bs,e.kg(1962,"Foreground color of the selected menu item in menus.")),bS=(0,d.x1)("menu.selectionBackground",br,e.kg(1963,"Background color of the selected menu item in menus.")),bT=(0,d.x1)("menu.selectionBorder",{dark:null,light:null,hcDark:l,hcLight:l},e.kg(1964,"Border color of the selected menu item in menus.")),bU=(0,d.x1)("menu.separatorBackground",{dark:"#606060",light:"#D4D4D4",hcDark:k,hcLight:k},e.kg(1965,"Color of a separator menu item in menus.")),bV=(0,d.x1)("quickInput.background",w,e.kg(1992,"Quick picker background color. The quick picker widget is the container for pickers like the command palette.")),bW=(0,d.x1)("quickInput.foreground",x,e.kg(1993,"Quick picker foreground color. The quick picker widget is the container for pickers like the command palette.")),bX=(0,d.x1)("quickInputTitle.background",{dark:new f.Q1(new f.bU(255,255,255,.105)),light:new f.Q1(new f.bU(0,0,0,.06)),hcDark:"#000000",hcLight:f.Q1.white},e.kg(1994,"Quick picker title background color. The quick picker widget is the container for pickers like the command palette.")),bY=(0,d.x1)("pickerGroup.foreground",{dark:"#3794FF",light:"#0066BF",hcDark:f.Q1.white,hcLight:"#0F4A85"},e.kg(1995,"Quick picker color for grouping labels.")),bZ=(0,d.x1)("pickerGroup.border",{dark:"#3F3F46",light:"#CCCEDB",hcDark:f.Q1.white,hcLight:"#0F4A85"},e.kg(1996,"Quick picker color for grouping borders.")),b$=(0,d.x1)("quickInput.list.focusBackground",null,"",void 0,e.kg(1997,"Please use quickInputList.focusBackground instead")),b_=(0,d.x1)("quickInputList.focusForeground",bs,e.kg(1998,"Quick picker foreground color for the focused item.")),b0=(0,d.x1)("quickInputList.focusIconForeground",bt,e.kg(1999,"Quick picker icon foreground color for the focused item.")),b1=(0,d.x1)("quickInputList.focusBackground",{dark:(0,d.yL)(b$,br),light:(0,d.yL)(b$,br),hcDark:null,hcLight:null},e.kg(2e3,"Quick picker background color for the focused item."));(0,d.x1)("search.resultsInfoForeground",{light:g,dark:(0,d.JO)(g,.65),hcDark:g,hcLight:g},e.kg(2001,"Color of the text in the search viewlet's completion message.")),(0,d.x1)("searchEditor.findMatchBackground",{light:(0,d.JO)(N,.66),dark:(0,d.JO)(N,.66),hcDark:N,hcLight:N},e.kg(2002,"Color of the Search Editor query matches.")),(0,d.x1)("searchEditor.findMatchBorder",{light:(0,d.JO)(P,.66),dark:(0,d.JO)(P,.66),hcDark:P,hcLight:P},e.kg(2003,"Border color of the Search Editor query matches."))},61636:(a,b,c)=>{"use strict";c.d(b,{C1:()=>i,Fp:()=>j,GK:()=>o,Ym:()=>m,dH:()=>k,kF:()=>h});var d,e,f,g,h,i,j,k,l=c(21652);let m={ctrlCmd:!1,alt:!1};(d=h||(h={}))[d.Blur=1]="Blur",d[d.Gesture=2]="Gesture",d[d.Other=3]="Other",(e=i||(i={}))[e.NONE=0]="NONE",e[e.FIRST=1]="FIRST",e[e.SECOND=2]="SECOND",e[e.LAST=3]="LAST",(f=j||(j={}))[f.First=1]="First",f[f.Second=2]="Second",f[f.Last=3]="Last",f[f.Next=4]="Next",f[f.Previous=5]="Previous",f[f.NextPage=6]="NextPage",f[f.PreviousPage=7]="PreviousPage",f[f.NextSeparator=8]="NextSeparator",f[f.PreviousSeparator=9]="PreviousSeparator",(g=k||(k={}))[g.Title=1]="Title",g[g.Inline=2]="Inline";class n{constructor(a){this.options=a}}new n;let o=(0,l.u1)("quickInputService")},61682:(a,b,c)=>{"use strict";c.d(b,{MF:()=>o,d$:()=>n,mG:()=>r,vG:()=>t,vY:()=>s});var d=c(95554),e=c(52212),f=c(32263),g=c(78029),h=c(66064),i=c(70033),j=c(64598);let k=()=>!0,l=()=>!1,m=a=>" "===a||" "===a;class n{static shouldRecreate(a){return a.hasChanged(165)||a.hasChanged(148)||a.hasChanged(45)||a.hasChanged(85)||a.hasChanged(88)||a.hasChanged(89)||a.hasChanged(10)||a.hasChanged(11)||a.hasChanged(15)||a.hasChanged(13)||a.hasChanged(14)||a.hasChanged(20)||a.hasChanged(145)||a.hasChanged(141)||a.hasChanged(59)||a.hasChanged(104)||a.hasChanged(147)||a.hasChanged(93)}constructor(a,b,c,d){this.languageConfigurationService=d,this._cursorMoveConfigurationBrand=void 0,this._languageId=a;const e=c.options,f=e.get(165),g=e.get(59);this.readOnly=e.get(104),this.tabSize=b.tabSize,this.indentSize=b.indentSize,this.insertSpaces=b.insertSpaces,this.stickyTabStops=e.get(132),this.lineHeight=g.lineHeight,this.typicalHalfwidthCharacterWidth=g.typicalHalfwidthCharacterWidth,this.pageSize=Math.max(1,Math.floor(f.height/this.lineHeight)-2),this.useTabStops=e.get(145),this.trimWhitespaceOnDelete=e.get(141),this.wordSeparators=e.get(148),this.emptySelectionClipboard=e.get(45),this.copyWithSyntaxHighlighting=e.get(31),this.multiCursorMergeOverlapping=e.get(85),this.multiCursorPaste=e.get(88),this.multiCursorLimit=e.get(89),this.autoClosingBrackets=e.get(10),this.autoClosingComments=e.get(11),this.autoClosingQuotes=e.get(15),this.autoClosingDelete=e.get(13),this.autoClosingOvertype=e.get(14),this.autoSurround=e.get(20),this.autoIndent=e.get(16),this.wordSegmenterLocales=e.get(147),this.overtypeOnPaste=e.get(93),this.surroundingPairs={},this._electricChars=null,this.shouldAutoCloseBefore={quote:this._getShouldAutoClose(a,this.autoClosingQuotes,!0),comment:this._getShouldAutoClose(a,this.autoClosingComments,!1),bracket:this._getShouldAutoClose(a,this.autoClosingBrackets,!1)},this.autoClosingPairs=this.languageConfigurationService.getLanguageConfiguration(a).getAutoClosingPairs();const h=this.languageConfigurationService.getLanguageConfiguration(a).getSurroundingPairs();if(h)for(const a of h)this.surroundingPairs[a.open]=a.close;const i=this.languageConfigurationService.getLanguageConfiguration(a).comments;this.blockCommentStartToken=i?.blockCommentStartToken??null}get electricChars(){if(!this._electricChars){this._electricChars={};let a=this.languageConfigurationService.getLanguageConfiguration(this._languageId).electricCharacter?.getElectricCharacters();if(a)for(let b of a)this._electricChars[b]=!0}return this._electricChars}get inputMode(){return j.U.getInputMode()}onElectricCharacter(a,b,c){let d=(0,g.BQ)(b,c-1),e=this.languageConfigurationService.getLanguageConfiguration(d.languageId).electricCharacter;return e?e.onElectricCharacter(a,d,c-d.firstCharOffset):null}normalizeIndentation(a){return(0,i.P)(a,this.indentSize,this.insertSpaces)}_getShouldAutoClose(a,b,c){switch(b){case"beforeWhitespace":return m;case"languageDefined":return this._getLanguageDefinedShouldAutoClose(a,c);case"always":return k;case"never":return l}}_getLanguageDefinedShouldAutoClose(a,b){let c=this.languageConfigurationService.getLanguageConfiguration(a).getAutoCloseBeforeSet(b);return a=>-1!==c.indexOf(a)}visibleColumnFromColumn(a,b){return h.A.visibleColumnFromColumn(a.getLineContent(b.lineNumber),b.column,this.tabSize)}columnFromVisibleColumn(a,b,c){let d=h.A.columnFromVisibleColumn(a.getLineContent(b),c,this.tabSize),e=a.getLineMinColumn(b);if(d<e)return e;let f=a.getLineMaxColumn(b);return d>f?f:d}}class o{static fromModelState(a){return new p(a)}static fromViewState(a){return new q(a)}static fromModelSelection(a){let b=f.L.liftSelection(a),c=new r(e.Q.fromPositions(b.getSelectionStart()),0,0,b.getPosition(),0);return o.fromModelState(c)}static fromModelSelections(a){let b=[];for(let c=0,d=a.length;c<d;c++)b[c]=this.fromModelSelection(a[c]);return b}constructor(a,b){this._cursorStateBrand=void 0,this.modelState=a,this.viewState=b}equals(a){return this.viewState.equals(a.viewState)&&this.modelState.equals(a.modelState)}}class p{constructor(a){this.modelState=a,this.viewState=null}}class q{constructor(a){this.modelState=null,this.viewState=a}}class r{constructor(a,b,c,d,e){this.selectionStart=a,this.selectionStartKind=b,this.selectionStartLeftoverVisibleColumns=c,this.position=d,this.leftoverVisibleColumns=e,this._singleCursorStateBrand=void 0,this.selection=r._computeSelection(this.selectionStart,this.position)}equals(a){return this.selectionStartLeftoverVisibleColumns===a.selectionStartLeftoverVisibleColumns&&this.leftoverVisibleColumns===a.leftoverVisibleColumns&&this.selectionStartKind===a.selectionStartKind&&this.position.equals(a.position)&&this.selectionStart.equalsRange(a.selectionStart)}hasSelection(){return!this.selection.isEmpty()||!this.selectionStart.isEmpty()}move(a,b,c,f){return a?new r(this.selectionStart,this.selectionStartKind,this.selectionStartLeftoverVisibleColumns,new d.y(b,c),f):new r(new e.Q(b,c,b,c),0,f,new d.y(b,c),f)}static _computeSelection(a,b){return a.isEmpty()||!b.isBeforeOrEqual(a.getStartPosition())?f.L.fromPositions(a.getStartPosition(),b):f.L.fromPositions(a.getEndPosition(),b)}}class s{constructor(a,b,c){this._editOperationResultBrand=void 0,this.type=a,this.commands=b,this.shouldPushStackElementBefore=c.shouldPushStackElementBefore,this.shouldPushStackElementAfter=c.shouldPushStackElementAfter}}function t(a){return"'"===a||'"'===a||"`"===a}},61837:()=>{},61891:(a,b,c)=>{"use strict";c.d(b,{S:()=>e,c:()=>m});var d,e,f=c(98896),g=c(61682),h=c(47228),i=c(49674),j=c(95554),k=c(52212),l=c(67752);class m{static addCursorDown(a,b,c){let d=[],e=0;for(let f=0,i=b.length;f<i;f++){let i=b[f];d[e++]=new g.MF(i.modelState,i.viewState),c?d[e++]=g.MF.fromModelState(h.I.translateDown(a.cursorConfig,a.model,i.modelState)):d[e++]=g.MF.fromViewState(h.I.translateDown(a.cursorConfig,a,i.viewState))}return d}static addCursorUp(a,b,c){let d=[],e=0;for(let f=0,i=b.length;f<i;f++){let i=b[f];d[e++]=new g.MF(i.modelState,i.viewState),c?d[e++]=g.MF.fromModelState(h.I.translateUp(a.cursorConfig,a.model,i.modelState)):d[e++]=g.MF.fromViewState(h.I.translateUp(a.cursorConfig,a,i.viewState))}return d}static moveToBeginningOfLine(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e];d[e]=this._moveToLineStart(a,f,c)}return d}static _moveToLineStart(a,b,c){let d=b.viewState.position.column,e=b.modelState.position.column,f=b.viewState.position.lineNumber,g=a.getLineFirstNonWhitespaceColumn(f);return d!==e&&d!==g?this._moveToLineStartByView(a,b,c):this._moveToLineStartByModel(a,b,c)}static _moveToLineStartByView(a,b,c){return g.MF.fromViewState(h.I.moveToBeginningOfLine(a.cursorConfig,a,b.viewState,c))}static _moveToLineStartByModel(a,b,c){return g.MF.fromModelState(h.I.moveToBeginningOfLine(a.cursorConfig,a.model,b.modelState,c))}static moveToEndOfLine(a,b,c,d){let e=[];for(let f=0,g=b.length;f<g;f++){let g=b[f];e[f]=this._moveToLineEnd(a,g,c,d)}return e}static _moveToLineEnd(a,b,c,d){let e=b.viewState.position,f=a.getLineMaxColumn(e.lineNumber),g=e.column===f,h=b.modelState.position,i=a.model.getLineMaxColumn(h.lineNumber),j=f-e.column==i-h.column;return g||j?this._moveToLineEndByModel(a,b,c,d):this._moveToLineEndByView(a,b,c,d)}static _moveToLineEndByView(a,b,c,d){return g.MF.fromViewState(h.I.moveToEndOfLine(a.cursorConfig,a,b.viewState,c,d))}static _moveToLineEndByModel(a,b,c,d){return g.MF.fromModelState(h.I.moveToEndOfLine(a.cursorConfig,a.model,b.modelState,c,d))}static expandLineSelection(a,b){let c=[];for(let d=0,e=b.length;d<e;d++){let e,f=b[d],h=f.modelState.selection.startLineNumber,i=a.model.getLineCount(),l=f.modelState.selection.endLineNumber;l===i?e=a.model.getLineMaxColumn(i):(l++,e=1),c[d]=g.MF.fromModelState(new g.mG(new k.Q(h,1,h,1),0,0,new j.y(l,e),0))}return c}static moveToBeginningOfBuffer(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e];d[e]=g.MF.fromModelState(h.I.moveToBeginningOfBuffer(a.cursorConfig,a.model,f.modelState,c))}return d}static moveToEndOfBuffer(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e];d[e]=g.MF.fromModelState(h.I.moveToEndOfBuffer(a.cursorConfig,a.model,f.modelState,c))}return d}static selectAll(a,b){let c=a.model.getLineCount(),d=a.model.getLineMaxColumn(c);return g.MF.fromModelState(new g.mG(new k.Q(1,1,1,1),0,0,new j.y(c,d),0))}static line(a,b,c,d,e){let f=a.model.validatePosition(d),h=e?a.coordinatesConverter.validateViewPosition(new j.y(e.lineNumber,e.column),f):a.coordinatesConverter.convertModelPositionToViewPosition(f);if(!c){let b=a.model.getLineCount(),c=f.lineNumber+1,d=1;return c>b&&(c=b,d=a.model.getLineMaxColumn(c)),g.MF.fromModelState(new g.mG(new k.Q(f.lineNumber,1,c,d),2,0,new j.y(c,d),0))}let i=b.modelState.selectionStart.getStartPosition().lineNumber;if(f.lineNumber<i)return g.MF.fromViewState(b.viewState.move(!0,h.lineNumber,1,0));if(f.lineNumber>i){let c=a.getLineCount(),d=h.lineNumber+1,e=1;return d>c&&(d=c,e=a.getLineMaxColumn(d)),g.MF.fromViewState(b.viewState.move(!0,d,e,0))}{let a=b.modelState.selectionStart.getEndPosition();return g.MF.fromModelState(b.modelState.move(!0,a.lineNumber,a.column,0))}}static word(a,b,c,d){let e=a.model.validatePosition(d);return g.MF.fromModelState(i.z.word(a.cursorConfig,a.model,b.modelState,c,e))}static cancelSelection(a,b){if(!b.modelState.hasSelection())return new g.MF(b.modelState,b.viewState);let c=b.viewState.position.lineNumber,d=b.viewState.position.column;return g.MF.fromViewState(new g.mG(new k.Q(c,d,c,d),0,0,new j.y(c,d),0))}static moveTo(a,b,c,d,e){if(c){if(1===b.modelState.selectionStartKind)return this.word(a,b,c,d);if(2===b.modelState.selectionStartKind)return this.line(a,b,c,d,e)}let f=a.model.validatePosition(d),h=e?a.coordinatesConverter.validateViewPosition(new j.y(e.lineNumber,e.column),f):a.coordinatesConverter.convertModelPositionToViewPosition(f);return g.MF.fromViewState(b.viewState.move(c,h.lineNumber,h.column,0))}static simpleMove(a,b,c,d,e,f){switch(c){case 0:if(4===f)return this._moveHalfLineLeft(a,b,d);return this._moveLeft(a,b,d,e);case 1:if(4===f)return this._moveHalfLineRight(a,b,d);return this._moveRight(a,b,d,e);case 2:if(2===f)return this._moveUpByViewLines(a,b,d,e);return this._moveUpByModelLines(a,b,d,e);case 3:if(2===f)return this._moveDownByViewLines(a,b,d,e);return this._moveDownByModelLines(a,b,d,e);case 4:if(2===f)return b.map(b=>g.MF.fromViewState(h.I.moveToPrevBlankLine(a.cursorConfig,a,b.viewState,d)));return b.map(b=>g.MF.fromModelState(h.I.moveToPrevBlankLine(a.cursorConfig,a.model,b.modelState,d)));case 5:if(2===f)return b.map(b=>g.MF.fromViewState(h.I.moveToNextBlankLine(a.cursorConfig,a,b.viewState,d)));return b.map(b=>g.MF.fromModelState(h.I.moveToNextBlankLine(a.cursorConfig,a.model,b.modelState,d)));case 6:return this._moveToViewMinColumn(a,b,d);case 7:return this._moveToViewFirstNonWhitespaceColumn(a,b,d);case 8:return this._moveToViewCenterColumn(a,b,d);case 9:return this._moveToViewMaxColumn(a,b,d);case 10:return this._moveToViewLastNonWhitespaceColumn(a,b,d);default:return null}}static viewportMove(a,b,c,d,e){let f=a.getCompletelyVisibleViewRange(),g=a.coordinatesConverter.convertViewRangeToModelRange(f);switch(c){case 11:{let c=this._firstLineNumberInRange(a.model,g,e),f=a.model.getLineFirstNonWhitespaceColumn(c);return[this._moveToModelPosition(a,b[0],d,c,f)]}case 13:{let c=this._lastLineNumberInRange(a.model,g,e),f=a.model.getLineFirstNonWhitespaceColumn(c);return[this._moveToModelPosition(a,b[0],d,c,f)]}case 12:{let c=Math.round((g.startLineNumber+g.endLineNumber)/2),e=a.model.getLineFirstNonWhitespaceColumn(c);return[this._moveToModelPosition(a,b[0],d,c,e)]}case 14:{let c=[];for(let e=0,g=b.length;e<g;e++){let g=b[e];c[e]=this.findPositionInViewportIfOutside(a,g,f,d)}return c}default:return null}}static findPositionInViewportIfOutside(a,b,c,d){let e=b.viewState.position.lineNumber;if(c.startLineNumber<=e&&e<=c.endLineNumber-1)return new g.MF(b.modelState,b.viewState);{let f;f=e>c.endLineNumber-1?c.endLineNumber-1:e<c.startLineNumber?c.startLineNumber:e;let i=h.I.vertical(a.cursorConfig,a,e,b.viewState.position.column,b.viewState.leftoverVisibleColumns,f,!1);return g.MF.fromViewState(b.viewState.move(d,i.lineNumber,i.column,i.leftoverVisibleColumns))}}static _firstLineNumberInRange(a,b,c){let d=b.startLineNumber;return b.startColumn!==a.getLineMinColumn(d)&&d++,Math.min(b.endLineNumber,d+c-1)}static _lastLineNumberInRange(a,b,c){let d=b.startLineNumber;return b.startColumn!==a.getLineMinColumn(d)&&d++,Math.max(d,b.endLineNumber-c+1)}static _moveLeft(a,b,c,d){return b.map(b=>{let e=a.getTextDirection(b.viewState.position.lineNumber)===l.z4.RTL;return g.MF.fromViewState(e?h.I.moveRight(a.cursorConfig,a,b.viewState,c,d):h.I.moveLeft(a.cursorConfig,a,b.viewState,c,d))})}static _moveHalfLineLeft(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],i=f.viewState.position.lineNumber,j=Math.round(a.getLineLength(i)/2);d[e]=g.MF.fromViewState(h.I.moveLeft(a.cursorConfig,a,f.viewState,c,j))}return d}static _moveRight(a,b,c,d){return b.map(b=>{let e=a.getTextDirection(b.viewState.position.lineNumber)===l.z4.RTL;return g.MF.fromViewState(e?h.I.moveLeft(a.cursorConfig,a,b.viewState,c,d):h.I.moveRight(a.cursorConfig,a,b.viewState,c,d))})}static _moveHalfLineRight(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],i=f.viewState.position.lineNumber,j=Math.round(a.getLineLength(i)/2);d[e]=g.MF.fromViewState(h.I.moveRight(a.cursorConfig,a,f.viewState,c,j))}return d}static _moveDownByViewLines(a,b,c,d){let e=[];for(let f=0,i=b.length;f<i;f++){let i=b[f];e[f]=g.MF.fromViewState(h.I.moveDown(a.cursorConfig,a,i.viewState,c,d))}return e}static _moveDownByModelLines(a,b,c,d){let e=[];for(let f=0,i=b.length;f<i;f++){let i=b[f];e[f]=g.MF.fromModelState(h.I.moveDown(a.cursorConfig,a.model,i.modelState,c,d))}return e}static _moveUpByViewLines(a,b,c,d){let e=[];for(let f=0,i=b.length;f<i;f++){let i=b[f];e[f]=g.MF.fromViewState(h.I.moveUp(a.cursorConfig,a,i.viewState,c,d))}return e}static _moveUpByModelLines(a,b,c,d){let e=[];for(let f=0,i=b.length;f<i;f++){let i=b[f];e[f]=g.MF.fromModelState(h.I.moveUp(a.cursorConfig,a.model,i.modelState,c,d))}return e}static _moveToViewPosition(a,b,c,d,e){return g.MF.fromViewState(b.viewState.move(c,d,e,0))}static _moveToModelPosition(a,b,c,d,e){return g.MF.fromModelState(b.modelState.move(c,d,e,0))}static _moveToViewMinColumn(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=f.viewState.position.lineNumber,h=a.getLineMinColumn(g);d[e]=this._moveToViewPosition(a,f,c,g,h)}return d}static _moveToViewFirstNonWhitespaceColumn(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=f.viewState.position.lineNumber,h=a.getLineFirstNonWhitespaceColumn(g);d[e]=this._moveToViewPosition(a,f,c,g,h)}return d}static _moveToViewCenterColumn(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=f.viewState.position.lineNumber,h=Math.round((a.getLineMaxColumn(g)+a.getLineMinColumn(g))/2);d[e]=this._moveToViewPosition(a,f,c,g,h)}return d}static _moveToViewMaxColumn(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=f.viewState.position.lineNumber,h=a.getLineMaxColumn(g);d[e]=this._moveToViewPosition(a,f,c,g,h)}return d}static _moveToViewLastNonWhitespaceColumn(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=f.viewState.position.lineNumber,h=a.getLineLastNonWhitespaceColumn(g);d[e]=this._moveToViewPosition(a,f,c,g,h)}return d}}(d=e||(e={})).metadata={description:"Move cursor to a logical position in the view",args:[{name:"Cursor move argument object",description:`Property-value pairs that can be passed through this argument:
84
+ `,constraint:function(a){return!!l.Gv(a)&&(!!l.Et(a.lineNumber)||!!l.Kg(a.lineNumber))&&(!!l.b0(a.at)||!!l.Kg(a.at))},schema:{type:"object",required:["lineNumber"],properties:{lineNumber:{type:["number","string"]},at:{type:"string",enum:["top","center","bottom"]}}}}]},e.RawAtArgument={Top:"top",Center:"center",Bottom:"bottom"};class C{constructor(a){a.addImplementation(1e4,"code-editor",(a,b)=>{let c=a.get(o.T).getFocusedCodeEditor();return!!(c&&c.hasTextFocus())&&this._runEditorCommand(a,c,b)}),a.addImplementation(1e3,"generic-dom-input-textarea",(a,b)=>{let c=(0,z.bq)();return!!(c&&(0,z.yD)(c))&&(this.runDOMCommand(c),!0)}),a.addImplementation(0,"generic-dom",(a,b)=>{let c=a.get(o.T).getActiveCodeEditor();return!!c&&(c.focus(),this._runEditorCommand(a,c,b))})}_runEditorCommand(a,b,c){let d=this.runEditorCommand(a,b,c);return!d||d}}!function(a){class b extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){!b.position||(a.model.pushStackElement(),a.setCursorStates(b.source,3,[u.c.moveTo(a,a.getPrimaryCursorState(),this._inSelectionMode,b.position,b.viewPosition)])&&2!==b.revealType&&a.revealAllCursors(b.source,!0,!0))}}a.MoveTo=(0,n.E_)(new b({id:"_moveTo",inSelectionMode:!1,precondition:void 0})),a.MoveToSelect=(0,n.E_)(new b({id:"_moveToSelect",inSelectionMode:!0,precondition:void 0}));class c extends B{runCoreEditorCommand(a,b){a.model.pushStackElement();let c=this._getColumnSelectResult(a,a.getPrimaryCursorState(),a.getCursorColumnSelectData(),b);null!==c&&(a.setCursorStates(b.source,3,c.viewStates.map(a=>p.MF.fromViewState(a))),a.setCursorColumnSelectData({isReal:!0,fromViewLineNumber:c.fromLineNumber,fromViewVisualColumn:c.fromVisualColumn,toViewLineNumber:c.toLineNumber,toViewVisualColumn:c.toVisualColumn}),c.reversed?a.revealTopMostCursor(b.source):a.revealBottomMostCursor(b.source))}}a.ColumnSelect=(0,n.E_)(new class extends c{constructor(){super({id:"columnSelect",precondition:void 0})}_getColumnSelectResult(a,b,c,d){if(void 0===d.position||void 0===d.viewPosition||void 0===d.mouseColumn)return null;let e=a.model.validatePosition(d.position),f=a.coordinatesConverter.validateViewPosition(new q.y(d.viewPosition.lineNumber,d.viewPosition.column),e),g=d.doColumnSelect?c.fromViewLineNumber:f.lineNumber,h=d.doColumnSelect?c.fromViewVisualColumn:d.mouseColumn-1;return s.columnSelect(a.cursorConfig,a,g,h,f.lineNumber,d.mouseColumn-1)}}),a.CursorColumnSelectLeft=(0,n.E_)(new class extends c{constructor(){super({id:"cursorColumnSelectLeft",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3599,linux:{primary:0}}})}_getColumnSelectResult(a,b,c,d){return s.columnSelectLeft(a.cursorConfig,a,c)}}),a.CursorColumnSelectRight=(0,n.E_)(new class extends c{constructor(){super({id:"cursorColumnSelectRight",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3601,linux:{primary:0}}})}_getColumnSelectResult(a,b,c,d){return s.columnSelectRight(a.cursorConfig,a,c)}});class d extends c{constructor(a){super(a),this._isPaged=a.isPaged}_getColumnSelectResult(a,b,c,d){return s.columnSelectUp(a.cursorConfig,a,c,this._isPaged)}}a.CursorColumnSelectUp=(0,n.E_)(new d({isPaged:!1,id:"cursorColumnSelectUp",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3600,linux:{primary:0}}})),a.CursorColumnSelectPageUp=(0,n.E_)(new d({isPaged:!0,id:"cursorColumnSelectPageUp",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3595,linux:{primary:0}}}));class e extends c{constructor(a){super(a),this._isPaged=a.isPaged}_getColumnSelectResult(a,b,c,d){return s.columnSelectDown(a.cursorConfig,a,c,this._isPaged)}}a.CursorColumnSelectDown=(0,n.E_)(new e({isPaged:!1,id:"cursorColumnSelectDown",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3602,linux:{primary:0}}})),a.CursorColumnSelectPageDown=(0,n.E_)(new e({isPaged:!0,id:"cursorColumnSelectPageDown",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3596,linux:{primary:0}}}));class h extends B{constructor(){super({id:"cursorMove",precondition:void 0,metadata:u.S.metadata})}runCoreEditorCommand(a,b){let c=u.S.parse(b);c&&this._runCursorMove(a,b.source,c)}_runCursorMove(a,b,c){a.model.pushStackElement(),a.setCursorStates(b,3,h._move(a,a.getCursorStates(),c)),a.revealAllCursors(b,!0)}static _move(a,b,c){let d=c.select,e=c.value;switch(c.direction){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:return u.c.simpleMove(a,b,c.direction,d,e,c.unit);case 11:case 13:case 12:case 14:return u.c.viewportMove(a,b,c.direction,d,e);default:return null}}}a.CursorMoveImpl=h,a.CursorMove=(0,n.E_)(new h);class i extends B{constructor(a){super(a),this._staticArgs=a.args}runCoreEditorCommand(a,b){let c=this._staticArgs;-1===this._staticArgs.value&&(c={direction:this._staticArgs.direction,unit:this._staticArgs.unit,select:this._staticArgs.select,value:b.pageSize||a.cursorConfig.pageSize}),a.model.pushStackElement(),a.setCursorStates(b.source,3,u.c.simpleMove(a,a.getCursorStates(),c.direction,c.select,c.value,c.unit)),a.revealAllCursors(b.source,!0)}}a.CursorLeft=(0,n.E_)(new i({args:{direction:0,unit:0,select:!1,value:1},id:"cursorLeft",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:15,mac:{primary:15,secondary:[288]}}})),a.CursorLeftSelect=(0,n.E_)(new i({args:{direction:0,unit:0,select:!0,value:1},id:"cursorLeftSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1039}})),a.CursorRight=(0,n.E_)(new i({args:{direction:1,unit:0,select:!1,value:1},id:"cursorRight",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:17,mac:{primary:17,secondary:[292]}}})),a.CursorRightSelect=(0,n.E_)(new i({args:{direction:1,unit:0,select:!0,value:1},id:"cursorRightSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1041}})),a.CursorUp=(0,n.E_)(new i({args:{direction:2,unit:2,select:!1,value:1},id:"cursorUp",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:16,mac:{primary:16,secondary:[302]}}})),a.CursorUpSelect=(0,n.E_)(new i({args:{direction:2,unit:2,select:!0,value:1},id:"cursorUpSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1040,secondary:[3088],mac:{primary:1040},linux:{primary:1040}}})),a.CursorPageUp=(0,n.E_)(new i({args:{direction:2,unit:2,select:!1,value:-1},id:"cursorPageUp",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:11}})),a.CursorPageUpSelect=(0,n.E_)(new i({args:{direction:2,unit:2,select:!0,value:-1},id:"cursorPageUpSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1035}})),a.CursorDown=(0,n.E_)(new i({args:{direction:3,unit:2,select:!1,value:1},id:"cursorDown",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:18,mac:{primary:18,secondary:[300]}}})),a.CursorDownSelect=(0,n.E_)(new i({args:{direction:3,unit:2,select:!0,value:1},id:"cursorDownSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1042,secondary:[3090],mac:{primary:1042},linux:{primary:1042}}})),a.CursorPageDown=(0,n.E_)(new i({args:{direction:3,unit:2,select:!1,value:-1},id:"cursorPageDown",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:12}})),a.CursorPageDownSelect=(0,n.E_)(new i({args:{direction:3,unit:2,select:!0,value:-1},id:"cursorPageDownSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1036}})),a.CreateCursor=(0,n.E_)(new class extends B{constructor(){super({id:"createCursor",precondition:void 0})}runCoreEditorCommand(a,b){let c;if(!b.position)return;c=b.wholeLine?u.c.line(a,a.getPrimaryCursorState(),!1,b.position,b.viewPosition):u.c.moveTo(a,a.getPrimaryCursorState(),!1,b.position,b.viewPosition);let d=a.getCursorStates();if(d.length>1){let e=c.modelState?c.modelState.position:null,f=c.viewState?c.viewState.position:null;for(let c=0,g=d.length;c<g;c++){let g=d[c];if((!e||g.modelState.selection.containsPosition(e))&&(!f||g.viewState.selection.containsPosition(f))){d.splice(c,1),a.model.pushStackElement(),a.setCursorStates(b.source,3,d);return}}}d.push(c),a.model.pushStackElement(),a.setCursorStates(b.source,3,d)}}),a.LastCursorMoveToSelect=(0,n.E_)(new class extends B{constructor(){super({id:"_lastCursorMoveToSelect",precondition:void 0})}runCoreEditorCommand(a,b){if(!b.position)return;let c=a.getLastAddedCursorIndex(),d=a.getCursorStates(),e=d.slice(0);e[c]=u.c.moveTo(a,d[c],!0,b.position,b.viewPosition),a.model.pushStackElement(),a.setCursorStates(b.source,3,e)}});class l extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,u.c.moveToBeginningOfLine(a,a.getCursorStates(),this._inSelectionMode)),a.revealAllCursors(b.source,!0)}}a.CursorHome=(0,n.E_)(new l({inSelectionMode:!1,id:"cursorHome",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:14,mac:{primary:14,secondary:[2063]}}})),a.CursorHomeSelect=(0,n.E_)(new l({inSelectionMode:!0,id:"cursorHomeSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1038,mac:{primary:1038,secondary:[3087]}}}));class o extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,this._exec(a.getCursorStates())),a.revealAllCursors(b.source,!0)}_exec(a){let b=[];for(let c=0,d=a.length;c<d;c++){let d=a[c],e=d.modelState.position.lineNumber;b[c]=p.MF.fromModelState(d.modelState.move(this._inSelectionMode,e,1,0))}return b}}a.CursorLineStart=(0,n.E_)(new o({inSelectionMode:!1,id:"cursorLineStart",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:0,mac:{primary:287}}})),a.CursorLineStartSelect=(0,n.E_)(new o({inSelectionMode:!0,id:"cursorLineStartSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:0,mac:{primary:1311}}}));class t extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,u.c.moveToEndOfLine(a,a.getCursorStates(),this._inSelectionMode,b.sticky||!1)),a.revealAllCursors(b.source,!0)}}a.CursorEnd=(0,n.E_)(new t({inSelectionMode:!1,id:"cursorEnd",precondition:void 0,kbOpts:{args:{sticky:!1},weight:0,kbExpr:w.R.textInputFocus,primary:13,mac:{primary:13,secondary:[2065]}},metadata:{description:"Go to End",args:[{name:"args",schema:{type:"object",properties:{sticky:{description:j.kg(61,"Stick to the end even when going to longer lines"),type:"boolean",default:!1}}}}]}})),a.CursorEndSelect=(0,n.E_)(new t({inSelectionMode:!0,id:"cursorEndSelect",precondition:void 0,kbOpts:{args:{sticky:!1},weight:0,kbExpr:w.R.textInputFocus,primary:1037,mac:{primary:1037,secondary:[3089]}},metadata:{description:"Select to End",args:[{name:"args",schema:{type:"object",properties:{sticky:{description:j.kg(62,"Stick to the end even when going to longer lines"),type:"boolean",default:!1}}}}]}}));class v extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,this._exec(a,a.getCursorStates())),a.revealAllCursors(b.source,!0)}_exec(a,b){let c=[];for(let d=0,e=b.length;d<e;d++){let e=b[d],f=e.modelState.position.lineNumber,g=a.model.getLineMaxColumn(f);c[d]=p.MF.fromModelState(e.modelState.move(this._inSelectionMode,f,g,0))}return c}}a.CursorLineEnd=(0,n.E_)(new v({inSelectionMode:!1,id:"cursorLineEnd",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:0,mac:{primary:291}}})),a.CursorLineEndSelect=(0,n.E_)(new v({inSelectionMode:!0,id:"cursorLineEndSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:0,mac:{primary:1315}}}));class x extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,u.c.moveToBeginningOfBuffer(a,a.getCursorStates(),this._inSelectionMode)),a.revealAllCursors(b.source,!0)}}a.CursorTop=(0,n.E_)(new x({inSelectionMode:!1,id:"cursorTop",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:2062,mac:{primary:2064}}})),a.CursorTopSelect=(0,n.E_)(new x({inSelectionMode:!0,id:"cursorTopSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3086,mac:{primary:3088}}}));class y extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,u.c.moveToEndOfBuffer(a,a.getCursorStates(),this._inSelectionMode)),a.revealAllCursors(b.source,!0)}}a.CursorBottom=(0,n.E_)(new y({inSelectionMode:!1,id:"cursorBottom",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:2061,mac:{primary:2066}}})),a.CursorBottomSelect=(0,n.E_)(new y({inSelectionMode:!0,id:"cursorBottomSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3085,mac:{primary:3090}}}));class z extends B{constructor(){super({id:"editorScroll",precondition:void 0,metadata:f.metadata})}determineScrollMethod(a){return[6].includes(a.unit)&&[4,2].includes(a.direction)?this._runHorizontalEditorScroll.bind(this):[1,2,3,4,5,6].includes(a.unit)&&[1,3].includes(a.direction)?this._runVerticalEditorScroll.bind(this):null}runCoreEditorCommand(a,b){let c=f.parse(b);if(!c)return;let d=this.determineScrollMethod(c);d&&d(a,b.source,c)}_runVerticalEditorScroll(a,b,c){let d=this._computeDesiredScrollTop(a,c);if(c.revealCursor){let e=a.getCompletelyVisibleViewRangeAtScrollTop(d);a.setCursorStates(b,3,[u.c.findPositionInViewportIfOutside(a,a.getPrimaryCursorState(),e,c.select)])}a.viewLayout.setScrollPosition({scrollTop:d},0)}_computeDesiredScrollTop(a,b){let c;if(1===b.unit){let c,d=a.viewLayout.getFutureViewport(),e=a.getCompletelyVisibleViewRangeAtScrollTop(d.top),f=a.coordinatesConverter.convertViewRangeToModelRange(e);c=1===b.direction?Math.max(1,f.startLineNumber-b.value):Math.min(a.model.getLineCount(),f.startLineNumber+b.value);let g=a.coordinatesConverter.convertModelPositionToViewPosition(new q.y(c,1));return a.viewLayout.getVerticalOffsetForLineNumber(g.lineNumber)}if(5===b.unit){let c=0;return 3===b.direction&&(c=a.model.getLineCount()-a.cursorConfig.pageSize),a.viewLayout.getVerticalOffsetForLineNumber(c)}c=3===b.unit?a.cursorConfig.pageSize*b.value:4===b.unit?Math.round(a.cursorConfig.pageSize/2)*b.value:b.value;let d=(1===b.direction?-1:1)*c;return a.viewLayout.getCurrentScrollTop()+d*a.cursorConfig.lineHeight}_runHorizontalEditorScroll(a,b,c){let d=this._computeDesiredScrollLeft(a,c);a.viewLayout.setScrollPosition({scrollLeft:d},0)}_computeDesiredScrollLeft(a,b){let c=(4===b.direction?-1:1)*b.value;return a.viewLayout.getCurrentScrollLeft()+c*a.cursorConfig.typicalHalfwidthCharacterWidth}}a.EditorScrollImpl=z,a.EditorScroll=(0,n.E_)(new z),a.ScrollLineUp=(0,n.E_)(new class extends B{constructor(){super({id:"scrollLineUp",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:2064,mac:{primary:267}}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Up,by:f.RawUnit.WrappedLine,value:1,revealCursor:!1,select:!1,source:c.source})}}),a.ScrollPageUp=(0,n.E_)(new class extends B{constructor(){super({id:"scrollPageUp",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:2059,win:{primary:523},linux:{primary:523}}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Up,by:f.RawUnit.Page,value:1,revealCursor:!1,select:!1,source:c.source})}}),a.ScrollEditorTop=(0,n.E_)(new class extends B{constructor(){super({id:"scrollEditorTop",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Up,by:f.RawUnit.Editor,value:1,revealCursor:!1,select:!1,source:c.source})}}),a.ScrollLineDown=(0,n.E_)(new class extends B{constructor(){super({id:"scrollLineDown",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:2066,mac:{primary:268}}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Down,by:f.RawUnit.WrappedLine,value:1,revealCursor:!1,select:!1,source:c.source})}}),a.ScrollPageDown=(0,n.E_)(new class extends B{constructor(){super({id:"scrollPageDown",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:2060,win:{primary:524},linux:{primary:524}}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Down,by:f.RawUnit.Page,value:1,revealCursor:!1,select:!1,source:c.source})}}),a.ScrollEditorBottom=(0,n.E_)(new class extends B{constructor(){super({id:"scrollEditorBottom",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Down,by:f.RawUnit.Editor,value:1,revealCursor:!1,select:!1,source:c.source})}}),a.ScrollLeft=(0,n.E_)(new class extends B{constructor(){super({id:"scrollLeft",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Left,by:f.RawUnit.Column,value:2,revealCursor:!1,select:!1,source:c.source})}}),a.ScrollRight=(0,n.E_)(new class extends B{constructor(){super({id:"scrollRight",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Right,by:f.RawUnit.Column,value:2,revealCursor:!1,select:!1,source:c.source})}});class A extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){b.position&&(a.model.pushStackElement(),a.setCursorStates(b.source,3,[u.c.word(a,a.getPrimaryCursorState(),this._inSelectionMode,b.position)]),2!==b.revealType&&a.revealAllCursors(b.source,!0,!0))}}a.WordSelect=(0,n.E_)(new A({inSelectionMode:!1,id:"_wordSelect",precondition:void 0})),a.WordSelectDrag=(0,n.E_)(new A({inSelectionMode:!0,id:"_wordSelectDrag",precondition:void 0})),a.LastCursorWordSelect=(0,n.E_)(new class extends B{constructor(){super({id:"lastCursorWordSelect",precondition:void 0})}runCoreEditorCommand(a,b){if(!b.position)return;let c=a.getLastAddedCursorIndex(),d=a.getCursorStates(),e=d.slice(0),f=d[c];e[c]=u.c.word(a,f,f.modelState.hasSelection(),b.position),a.model.pushStackElement(),a.setCursorStates(b.source,3,e)}});class D extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){b.position&&(a.model.pushStackElement(),a.setCursorStates(b.source,3,[u.c.line(a,a.getPrimaryCursorState(),this._inSelectionMode,b.position,b.viewPosition)]),2!==b.revealType&&a.revealAllCursors(b.source,!1,!0))}}a.LineSelect=(0,n.E_)(new D({inSelectionMode:!1,id:"_lineSelect",precondition:void 0})),a.LineSelectDrag=(0,n.E_)(new D({inSelectionMode:!0,id:"_lineSelectDrag",precondition:void 0}));class E extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){if(!b.position)return;let c=a.getLastAddedCursorIndex(),d=a.getCursorStates(),e=d.slice(0);e[c]=u.c.line(a,d[c],this._inSelectionMode,b.position,b.viewPosition),a.model.pushStackElement(),a.setCursorStates(b.source,3,e)}}a.LastCursorLineSelect=(0,n.E_)(new E({inSelectionMode:!1,id:"lastCursorLineSelect",precondition:void 0})),a.LastCursorLineSelectDrag=(0,n.E_)(new E({inSelectionMode:!0,id:"lastCursorLineSelectDrag",precondition:void 0})),a.CancelSelection=(0,n.E_)(new class extends B{constructor(){super({id:"cancelSelection",precondition:w.R.hasNonEmptySelection,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:9,secondary:[1033]}})}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,[u.c.cancelSelection(a,a.getPrimaryCursorState())]),a.revealAllCursors(b.source,!0)}}),a.RemoveSecondaryCursors=(0,n.E_)(new class extends B{constructor(){super({id:"removeSecondaryCursors",precondition:w.R.hasMultipleSelections,kbOpts:{weight:1,kbExpr:w.R.textInputFocus,primary:9,secondary:[1033]}})}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,[a.getPrimaryCursorState()]),a.revealAllCursors(b.source,!0),(0,m.h5)(j.kg(63,"Removed secondary cursors"))}}),a.RevealLine=(0,n.E_)(new class extends B{constructor(){super({id:"revealLine",precondition:void 0,metadata:g.metadata})}runCoreEditorCommand(a,b){let c=b.lineNumber||0,d="number"==typeof c?c+1:parseInt(c)+1;d<1&&(d=1);let e=a.model.getLineCount();d>e&&(d=e);let f=new r.Q(d,1,d,a.model.getLineMaxColumn(d)),h=0;if(b.at)switch(b.at){case g.RawAtArgument.Top:h=3;break;case g.RawAtArgument.Center:h=1;break;case g.RawAtArgument.Bottom:h=4}let i=a.coordinatesConverter.convertModelRangeToViewRange(f);a.revealRange(b.source,!1,i,h,0)}}),a.SelectAll=new class extends C{constructor(){super(n.tc)}runDOMCommand(a){k.gm&&(a.focus(),a.select()),a.ownerDocument.execCommand("selectAll")}runEditorCommand(a,b,c){let d=b._getViewModel();d&&this.runCoreEditorCommand(d,c)}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates("keyboard",3,[u.c.selectAll(a,a.getPrimaryCursorState())])}},a.SetSelection=(0,n.E_)(new class extends B{constructor(){super({id:"setSelection",precondition:void 0})}runCoreEditorCommand(a,b){b.selection&&(a.model.pushStackElement(),a.setCursorStates(b.source,3,[p.MF.fromModelSelection(b.selection)]))}})}(h||(h={}));let D=x.M$.and(w.R.textInputFocus,w.R.columnSelection);function E(a,b){y.f.registerKeybindingRule({id:a,primary:b,when:D,weight:1})}function F(a){return a.register(),a}E(h.CursorColumnSelectLeft.id,1039),E(h.CursorColumnSelectRight.id,1041),E(h.CursorColumnSelectUp.id,1040),E(h.CursorColumnSelectPageUp.id,1035),E(h.CursorColumnSelectDown.id,1042),E(h.CursorColumnSelectPageDown.id,1036);var G=i||(i={});class H extends n.DX{runEditorCommand(a,b,c){let d=b._getViewModel();d&&this.runCoreEditingCommand(b,d,c||{})}}G.CoreEditingCommand=H,G.LineBreakInsert=(0,n.E_)(new class extends H{constructor(){super({id:"lineBreakInsert",precondition:w.R.writable,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:0,mac:{primary:301}}})}runCoreEditingCommand(a,b,c){a.pushUndoStop(),a.executeCommands(this.id,A.AO.lineBreakInsert(b.cursorConfig,b.model,b.getCursorStates().map(a=>a.modelState.selection)))}}),G.Outdent=(0,n.E_)(new class extends H{constructor(){super({id:"outdent",precondition:w.R.writable,kbOpts:{weight:0,kbExpr:x.M$.and(w.R.editorTextFocus,w.R.tabDoesNotMoveFocus),primary:1026}})}runCoreEditingCommand(a,b,c){a.pushUndoStop(),a.executeCommands(this.id,v.T.outdent(b.cursorConfig,b.model,b.getCursorStates().map(a=>a.modelState.selection))),a.pushUndoStop()}}),G.Tab=(0,n.E_)(new class extends H{constructor(){super({id:"tab",precondition:w.R.writable,kbOpts:{weight:0,kbExpr:x.M$.and(w.R.editorTextFocus,w.R.tabDoesNotMoveFocus),primary:2}})}runCoreEditingCommand(a,b,c){a.pushUndoStop(),a.executeCommands(this.id,v.T.tab(b.cursorConfig,b.model,b.getCursorStates().map(a=>a.modelState.selection))),a.pushUndoStop()}}),G.DeleteLeft=(0,n.E_)(new class extends H{constructor(){super({id:"deleteLeft",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1,secondary:[1025],mac:{primary:1,secondary:[1025,294,257]}}})}runCoreEditingCommand(a,b,c){let[d,e]=t.g.deleteLeft(b.getPrevEditOperationType(),b.cursorConfig,b.model,b.getCursorStates().map(a=>a.modelState.selection),b.getCursorAutoClosedCharacters());d&&a.pushUndoStop(),a.executeCommands(this.id,e),b.setPrevEditOperationType(2)}}),G.DeleteRight=(0,n.E_)(new class extends H{constructor(){super({id:"deleteRight",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:20,mac:{primary:20,secondary:[290,276]}}})}runCoreEditingCommand(a,b,c){let[d,e]=t.g.deleteRight(b.getPrevEditOperationType(),b.cursorConfig,b.model,b.getCursorStates().map(a=>a.modelState.selection));d&&a.pushUndoStop(),a.executeCommands(this.id,e),b.setPrevEditOperationType(3)}}),G.Undo=new class extends C{constructor(){super(n.aU)}runDOMCommand(a){a.ownerDocument.execCommand("undo")}runEditorCommand(a,b,c){if(b.hasModel()&&!0!==b.getOption(104))return b.getModel().undo()}},G.Redo=new class extends C{constructor(){super(n.ih)}runDOMCommand(a){a.ownerDocument.execCommand("redo")}runEditorCommand(a,b,c){if(b.hasModel()&&!0!==b.getOption(104))return b.getModel().redo()}};class I extends n.uB{constructor(a,b,c){super({id:a,precondition:void 0,metadata:c}),this._handlerId=b}runCommand(a,b){let c=a.get(o.T).getFocusedCodeEditor();c&&c.trigger("keyboard",this._handlerId,b)}}function J(a,b){F(new I("default:"+a,a)),F(new I(a,a,b))}J("type",{description:"Type",args:[{name:"args",schema:{type:"object",required:["text"],properties:{text:{type:"string"}}}}]}),J("replacePreviousChar"),J("compositionType"),J("compositionStart"),J("compositionEnd"),J("paste"),J("cut")},50682:(a,b,c)=>{"use strict";c.d(b,{FH:()=>j,Sc:()=>m,kk:()=>n,lM:()=>k});var d=c(32665),e=c(3457),f=c(10322),g=c(87445),h=c(29501),i=c(8211);c(25126);let j={inputActiveOptionBorder:"#007ACC00",inputActiveOptionForeground:"#FFFFFF",inputActiveOptionBackground:"#0E639C50"};class k extends i.x{get onChange(){return this._onChange.event}get onKeyDown(){return this._onKeyDown.event}constructor(a){super(),this._onChange=this._register(new e.vl),this._onKeyDown=this._register(new e.vl),this._opts=a,this._checked=this._opts.isChecked;const b=["monaco-custom-toggle"];this._opts.icon&&(this._icon=this._opts.icon,b.push(...f.L.asClassNameArray(this._icon))),this._opts.actionClassName&&b.push(...this._opts.actionClassName.split(" ")),this._checked&&b.push("checked"),this.domNode=document.createElement("div"),this._hover=this._register((0,g.i)().setupManagedHover(a.hoverDelegate??(0,h.nZ)("mouse"),this.domNode,this._opts.title)),this.domNode.classList.add(...b),this._opts.notFocusable||(this.domNode.tabIndex=0),this.domNode.setAttribute("role","checkbox"),this.domNode.setAttribute("aria-checked",String(this._checked)),this.domNode.setAttribute("aria-label",this._opts.title),this.applyStyles(),this.onclick(this.domNode,a=>{this.enabled&&(this.checked=!this._checked,this._onChange.fire(!1),a.preventDefault())}),this._register(this.ignoreGesture(this.domNode)),this.onkeydown(this.domNode,a=>{if(this.enabled){if(10===a.keyCode||3===a.keyCode){this.checked=!this._checked,this._onChange.fire(!0),a.preventDefault(),a.stopPropagation();return}this._onKeyDown.fire(a)}})}get enabled(){return"true"!==this.domNode.getAttribute("aria-disabled")}focus(){this.domNode.focus()}get checked(){return this._checked}set checked(a){this._checked=a,this.domNode.setAttribute("aria-checked",String(this._checked)),this.domNode.classList.toggle("checked",this._checked),this.applyStyles()}setIcon(a){this._icon&&this.domNode.classList.remove(...f.L.asClassNameArray(this._icon)),this._icon=a,this._icon&&this.domNode.classList.add(...f.L.asClassNameArray(this._icon))}width(){return 22}applyStyles(){this.domNode&&(this.domNode.style.borderColor=this._checked&&this._opts.inputActiveOptionBorder||"",this.domNode.style.color=this._checked&&this._opts.inputActiveOptionForeground||"inherit",this.domNode.style.backgroundColor=this._checked&&this._opts.inputActiveOptionBackground||"")}enable(){this.domNode.setAttribute("aria-disabled",String(!1)),this.domNode.classList.remove("disabled")}disable(){this.domNode.setAttribute("aria-disabled",String(!0)),this.domNode.classList.add("disabled")}setTitle(a){this._hover.update(a),this.domNode.setAttribute("aria-label",a)}}class l extends i.x{static{this.CLASS_NAME="monaco-checkbox"}constructor(a,b,c){super(),this.checkbox=a,this.domNode=b,this.styles=c,this._onChange=this._register(new e.vl),this.onChange=this._onChange.event,this.applyStyles()}get enabled(){return this.checkbox.enabled}enable(){this.checkbox.enable(),this.applyStyles(!0)}disable(){this.checkbox.disable(),this.applyStyles(!1)}setTitle(a){this.checkbox.setTitle(a)}applyStyles(a=this.enabled){this.domNode.style.color=(a?this.styles.checkboxForeground:this.styles.checkboxDisabledForeground)||"",this.domNode.style.backgroundColor=(a?this.styles.checkboxBackground:this.styles.checkboxDisabledBackground)||"",this.domNode.style.borderColor=(a?this.styles.checkboxBorder:this.styles.checkboxDisabledBackground)||"";let b=this.styles.size||18;this.domNode.style.width=this.domNode.style.height=this.domNode.style.fontSize=`${b}px`,this.domNode.style.fontSize=`${b-2}px`}}class m extends l{constructor(a,b,c){const e=new k({title:a,isChecked:b,icon:d.W.check,actionClassName:l.CLASS_NAME,hoverDelegate:c.hoverDelegate,...j});super(e,e.domNode,c),this._register(e),this._register(this.checkbox.onChange(a=>{this.applyStyles(),this._onChange.fire(a)}))}get checked(){return this.checkbox.checked}set checked(a){this.checkbox.checked=a,this.applyStyles()}applyStyles(a){this.checkbox.checked?this.checkbox.setIcon(d.W.check):this.checkbox.setIcon(void 0),super.applyStyles(a)}}class n extends l{constructor(a,b,c){let e;switch(b){case!0:e=d.W.check;break;case"partial":e=d.W.dash;break;case!1:e=void 0}const f=new k({title:a,isChecked:!0===b,icon:e,actionClassName:m.CLASS_NAME,hoverDelegate:c.hoverDelegate,...j});super(f,f.domNode,c),this._state=b,this._register(f),this._register(this.checkbox.onChange(a=>{this._state=this.checkbox.checked,this.applyStyles(),this._onChange.fire(a)}))}get checked(){return this._state}set checked(a){this._state!==a&&(this._state=a,this.checkbox.checked=!0===a,this.applyStyles())}applyStyles(a){switch(this._state){case!0:this.checkbox.setIcon(d.W.check);break;case"partial":this.checkbox.setIcon(d.W.dash);break;case!1:this.checkbox.setIcon(void 0)}super.applyStyles(a)}}},50689:(a,b,c)=>{"use strict";c.d(b,{Go:()=>function a(b){if(!b||"object"!=typeof b||b instanceof RegExp)return b;let c=Array.isArray(b)?[]:{};return Object.entries(b).forEach(([b,d])=>{c[b]=d&&"object"==typeof d?a(d):d}),c},PI:()=>g,aI:()=>function a(b,c){let d,e;if(b===c)return!0;if(null==b||null==c||typeof b!=typeof c||"object"!=typeof b||Array.isArray(b)!==Array.isArray(c))return!1;if(Array.isArray(b)){if(b.length!==c.length)return!1;for(d=0;d<b.length;d++)if(!a(b[d],c[d]))return!1}else{let f=[];for(e in b)f.push(e);f.sort();let g=[];for(e in c)g.push(e);if(g.sort(),!a(f,g))return!1;for(d=0;d<f.length;d++)if(!a(b[f[d]],c[f[d]]))return!1}return!0},co:()=>function a(b,c,e=!0){return(0,d.Gv)(b)?((0,d.Gv)(c)&&Object.keys(c).forEach(f=>{f in b?e&&((0,d.Gv)(b[f])&&(0,d.Gv)(c[f])?a(b[f],c[f],e):b[f]=c[f]):b[f]=c[f]}),b):c},ol:()=>e});var d=c(98896);function e(a){if(!a||"object"!=typeof a)return a;let b=[a];for(;b.length>0;){let a=b.shift();for(let c in Object.freeze(a),a)if(f.call(a,c)){let e=a[c];"object"!=typeof e||Object.isFrozen(e)||(0,d.iu)(e)||b.push(e)}}return a}let f=Object.prototype.hasOwnProperty;function g(a,b){return function a(b,c,e){if((0,d.z)(b))return b;let g=c(b);if(void 0!==g)return g;if(Array.isArray(b)){let d=[];for(let f of b)d.push(a(f,c,e));return d}if((0,d.Gv)(b)){if(e.has(b))throw Error("Cannot clone recursive data-structure");e.add(b);let d={};for(let g in b)f.call(b,g)&&(d[g]=a(b[g],c,e));return e.delete(b),d}return b}(a,b,new Set)}},51203:()=>{},51407:(a,b,c)=>{"use strict";c.d(b,{L:()=>u});var d,e,f=c(63048),g=c(88586),h=c(3457),i=c(40201),j=c(42727),k=c(21652),l=c(14061),m=c(75880),n=c(12546);let o=class extends i.jG{constructor(a){super(),this._logService=a,this._tasks=[],this._i=0,this._register((0,i.s)(()=>this.clear()))}enqueue(a){this._tasks.push(a),this._start()}clear(){this._idleCallback&&(this._cancelCallback(this._idleCallback),this._idleCallback=void 0),this._i=0,this._tasks.length=0}_start(){this._idleCallback||(this._idleCallback=this._requestCallback(this._process.bind(this)))}_process(a){this._idleCallback=void 0;let b=0,c=0,d=a.timeRemaining(),e=0;for(;this._i<this._tasks.length;){if(b=Date.now(),!this._tasks[this._i]()&&this._i++,1.5*(c=Math.max(b=Math.max(1,Date.now()-b),c))>(e=a.timeRemaining())){d-b<-20&&this._logService.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(d-b))}ms`),this._start();return}d=e}this.clear()}};o=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(d=n.rr,function(a,b){d(a,b,0)})],o);class p extends o{_requestCallback(a){return(0,f.fz)().setTimeout(()=>a(this._createDeadline(16)))}_cancelCallback(a){(0,f.fz)().clearTimeout(a)}_createDeadline(a){let b=Date.now()+a;return{timeRemaining:()=>Math.max(0,b-Date.now())}}}class q extends o{_requestCallback(a){return(0,f.fz)().requestIdleCallback(a)}_cancelCallback(a){(0,f.fz)().cancelIdleCallback(a)}}let r="requestIdleCallback"in(0,f.fz)()?q:p;var s=c(64217),t=function(a,b){return function(c,d){b(c,d,a)}};let u=class extends i.jG{static{e=this}static{this.maximumPageCount=16}get pages(){return this._pages}constructor(a,b,c,d,e){super(),this._maxTextureSize=a,this._decorationStyleCache=c,this._themeService=d,this._instantiationService=e,this._warmUpTask=this._register(new i.HE),this._warmedUpRasterizers=new Set,this._pages=[],this._glyphPageIndex=new j.QO,this._onDidDeleteGlyphs=this._register(new h.vl),this.onDidDeleteGlyphs=this._onDidDeleteGlyphs.event,this._allocatorType=b?.allocatorType??"slab",this._register(h.Jh.runAndSubscribe(this._themeService.onDidColorThemeChange,()=>{this._colorMap&&this.clear(),this._colorMap=this._themeService.getColorTheme().tokenColorMap}));const g=Math.max(1,Math.floor((0,f.fz)().devicePixelRatio));this.pageSize=Math.min(1024*g,this._maxTextureSize),this._initFirstPage(),this._register((0,i.s)(()=>(0,i.AS)(this._pages)))}_initFirstPage(){let a=this._instantiationService.createInstance(s.g,0,this.pageSize,this._allocatorType);this._pages.push(a);let b=new m.O(1,"",1,this._decorationStyleCache);a.getGlyph(b,"",0,0),b.dispose()}clear(){for(let a of this._pages)a.dispose();this._pages.length=0,this._glyphPageIndex.clear(),this._warmedUpRasterizers.clear(),this._warmUpTask.clear(),this._initFirstPage(),this._onDidDeleteGlyphs.fire()}getGlyph(a,b,c,d,e){return c&=-2048,c|=Math.floor(e%1*10),this._warmedUpRasterizers.has(a.id)||(this._warmUpAtlas(a),this._warmedUpRasterizers.add(a.id)),this._tryGetGlyph(this._glyphPageIndex.get(b,c,d,a.cacheKey)??0,a,b,c,d)}_tryGetGlyph(a,b,c,d,e){return this._glyphPageIndex.set(a,c,d,e,b.cacheKey),this._pages[a].getGlyph(b,c,d,e)??(a+1<this._pages.length?this._tryGetGlyph(a+1,b,c,d,e):void 0)??this._getGlyphFromNewPage(b,c,d,e)}_getGlyphFromNewPage(a,b,c,d){if(this._pages.length>=e.maximumPageCount)throw Error(`Attempt to create a texture atlas page past the limit ${e.maximumPageCount}`);return this._pages.push(this._instantiationService.createInstance(s.g,this._pages.length,this.pageSize,this._allocatorType)),this._glyphPageIndex.set(this._pages.length-1,b,c,d,a.cacheKey),this._pages[this._pages.length-1].getGlyph(a,b,c,d)}getStats(){return this._pages.map(a=>a.getStats())}_warmUpAtlas(a){let b=this._colorMap;if(!b)throw new g.D7("Cannot warm atlas without color map");this._warmUpTask.value?.clear();let c=this._warmUpTask.value=this._instantiationService.createInstance(r);for(let d=65;d<=90;d++)for(let e of b.keys())c.enqueue(()=>{for(let b=0;b<1;b+=.1)this.getGlyph(a,String.fromCharCode(d),e<<15&0xff8000,0,b)});for(let d=97;d<=122;d++)for(let e of b.keys())c.enqueue(()=>{for(let b=0;b<1;b+=.1)this.getGlyph(a,String.fromCharCode(d),e<<15&0xff8000,0,b)});for(let d=33;d<=126;d++)for(let e of b.keys())c.enqueue(()=>{for(let b=0;b<1;b+=.1)this.getGlyph(a,String.fromCharCode(d),e<<15&0xff8000,0,b)})}};u=e=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([t(3,l.Gy),t(4,k._Y)],u)},51644:(a,b,c)=>{"use strict";c.d(b,{m:()=>f});var d=c(85268),e=c(53918);class f extends d.CO{constructor(a){super(),this._textModel=a}getValueOfRange(a){return this._textModel.getValueInRange(a)}getLineLength(a){return this._textModel.getLineLength(a)}get length(){let a=this._textModel.getLineCount(),b=this._textModel.getLineLength(a);return new e.W(a-1,b)}}},51864:(a,b,c)=>{"use strict";function d(a,b,c=a.length-1){let e=function(a,b,c=a.length-1){for(let d=c;d>=0;d--)if(b(a[d]))return d;return -1}(a,b,c);if(-1!==e)return a[e]}function e(a,b){let c=f(a,b);return -1===c?void 0:a[c]}function f(a,b,c=0,d=a.length){let e=c,g=d;for(;e<g;){let c=Math.floor((e+g)/2);b(a[c])?e=c+1:g=c}return e-1}function g(a,b){let c=h(a,b);return c===a.length?void 0:a[c]}function h(a,b,c=0,d=a.length){let e=c,f=d;for(;e<f;){let c=Math.floor((e+f)/2);b(a[c])?f=c:e=c+1}return e}c.d(b,{Cn:()=>j,TM:()=>m,Uk:()=>d,XP:()=>g,hw:()=>h,iM:()=>f,kh:()=>l,lx:()=>e,oH:()=>n,ot:()=>k,vJ:()=>i});class i{static{this.assertInvariants=!1}constructor(a){this._array=a,this._findLastMonotonousLastIdx=0}findLastMonotonous(a){if(i.assertInvariants){if(this._prevFindLastPredicate){for(let b of this._array)if(this._prevFindLastPredicate(b)&&!a(b))throw Error("MonotonousArray: current predicate must be weaker than (or equal to) the previous predicate.")}this._prevFindLastPredicate=a}let b=f(this._array,a,this._findLastMonotonousLastIdx);return this._findLastMonotonousLastIdx=b+1,-1===b?void 0:this._array[b]}}function j(a,b){if(0===a.length)return;let c=a[0];for(let d=1;d<a.length;d++){let e=a[d];b(e,c)>0&&(c=e)}return c}function k(a,b){if(0===a.length)return;let c=a[0];for(let d=1;d<a.length;d++){let e=a[d];b(e,c)>=0&&(c=e)}return c}function l(a,b){return j(a,(a,c)=>-b(a,c))}function m(a,b){if(0===a.length)return -1;let c=0;for(let d=1;d<a.length;d++)b(a[d],a[c])>0&&(c=d);return c}function n(a,b){for(let c of a){let a=b(c);if(void 0!==a)return a}}},52051:()=>{},53135:(a,b,c)=>{"use strict";function d(a,b,c){let d=null,e=null;if("function"==typeof c.value?(d="value",0!==(e=c.value).length&&console.warn("Memoize should only be used in functions with zero parameters")):"function"==typeof c.get&&(d="get",e=c.get),!e)throw Error("not supported");let f=`$memoize$${b}`;c[d]=function(...a){return this.hasOwnProperty(f)||Object.defineProperty(this,f,{configurable:!1,enumerable:!1,writable:!1,value:e.apply(this,a)}),this[f]}}c.d(b,{B:()=>d})},53748:(a,b,c)=>{"use strict";c.d(b,{U:()=>w,X:()=>g});var d,e,f,g,h=c(63048),i=c(1644),j=c(99128),k=c(72766),l=c(42891),m=c(81034),n=c(3457),o=c(40201),p=c(35223),q=c(71684),r=c(98896);c(58656);let s={separatorBorder:m.Q1.transparent};class t{set size(a){this._size=a}get size(){return this._size}get visible(){return void 0===this._cachedVisibleSize}setVisible(a,b){if(a!==this.visible){a?(this.size=(0,p.qE)(this._cachedVisibleSize,this.viewMinimumSize,this.viewMaximumSize),this._cachedVisibleSize=void 0):(this._cachedVisibleSize="number"==typeof b?b:this.size,this.size=0),this.container.classList.toggle("visible",a);try{this.view.setVisible?.(a)}catch(a){console.error("Splitview: Failed to set visible view"),console.error(a)}}}get minimumSize(){return this.visible?this.view.minimumSize:0}get viewMinimumSize(){return this.view.minimumSize}get maximumSize(){return this.visible?this.view.maximumSize:0}get viewMaximumSize(){return this.view.maximumSize}get priority(){return this.view.priority}get proportionalLayout(){return this.view.proportionalLayout??!0}get snap(){return!!this.view.snap}set enabled(a){this.container.style.pointerEvents=a?"":"none"}constructor(a,b,c,d){this.container=a,this.view=b,this.disposable=d,this._cachedVisibleSize=void 0,"number"==typeof c?(this._size=c,this._cachedVisibleSize=void 0,a.classList.add("visible")):(this._size=0,this._cachedVisibleSize=c.cachedVisibleSize)}layout(a,b){this.layoutContainer(a);try{this.view.layout(this.size,a,b)}catch(a){console.error("Splitview: Failed to layout view"),console.error(a)}}dispose(){this.disposable.dispose()}}class u extends t{layoutContainer(a){this.container.style.top=`${a}px`,this.container.style.height=`${this.size}px`}}class v extends t{layoutContainer(a){this.container.style.left=`${a}px`,this.container.style.width=`${this.size}px`}}(d=f||(f={}))[d.Idle=0]="Idle",d[d.Busy=1]="Busy",(e=g||(g={})).Distribute={type:"distribute"},e.Split=function(a){return{type:"split",index:a}},e.Auto=function(a){return{type:"auto",index:a}},e.Invisible=function(a){return{type:"invisible",cachedVisibleSize:a}};class w extends o.jG{get orthogonalStartSash(){return this._orthogonalStartSash}get orthogonalEndSash(){return this._orthogonalEndSash}get startSnappingEnabled(){return this._startSnappingEnabled}get endSnappingEnabled(){return this._endSnappingEnabled}set orthogonalStartSash(a){for(let b of this.sashItems)b.sash.orthogonalStartSash=a;this._orthogonalStartSash=a}set orthogonalEndSash(a){for(let b of this.sashItems)b.sash.orthogonalEndSash=a;this._orthogonalEndSash=a}set startSnappingEnabled(a){this._startSnappingEnabled!==a&&(this._startSnappingEnabled=a,this.updateSashEnablement())}set endSnappingEnabled(a){this._endSnappingEnabled!==a&&(this._endSnappingEnabled=a,this.updateSashEnablement())}constructor(a,b={}){super(),this.size=0,this._contentSize=0,this.proportions=void 0,this.viewItems=[],this.sashItems=[],this.state=f.Idle,this._onDidSashChange=this._register(new n.vl),this._onDidSashReset=this._register(new n.vl),this._startSnappingEnabled=!0,this._endSnappingEnabled=!0,this.onDidSashChange=this._onDidSashChange.event,this.onDidSashReset=this._onDidSashReset.event,this.orientation=b.orientation??0,this.inverseAltBehavior=b.inverseAltBehavior??!1,this.proportionalLayout=b.proportionalLayout??!0,this.getSashOrthogonalSize=b.getSashOrthogonalSize,this.el=document.createElement("div"),this.el.classList.add("monaco-split-view2"),this.el.classList.add(0===this.orientation?"vertical":"horizontal"),a.appendChild(this.el),this.sashContainer=(0,h.BC)(this.el,(0,h.$)(".sash-container")),this.viewContainer=(0,h.$)(".split-view-container"),this.scrollable=this._register(new q.yE({forceIntegerValues:!0,smoothScrollDuration:125,scheduleAtNextAnimationFrame:a=>(0,h.PG)((0,h.zk)(this.el),a)})),this.scrollableElement=this._register(new k.oO(this.viewContainer,{vertical:0===this.orientation?b.scrollbarVisibility??1:2,horizontal:1===this.orientation?b.scrollbarVisibility??1:2},this.scrollable));const c=this._register(new i.f(this.viewContainer,"scroll")).event;this._register(c(a=>{let b=this.scrollableElement.getScrollPosition(),c=1>=Math.abs(this.viewContainer.scrollLeft-b.scrollLeft)?void 0:this.viewContainer.scrollLeft,d=1>=Math.abs(this.viewContainer.scrollTop-b.scrollTop)?void 0:this.viewContainer.scrollTop;(void 0!==c||void 0!==d)&&this.scrollableElement.setScrollPosition({scrollLeft:c,scrollTop:d})})),this.onDidScroll=this.scrollableElement.onScroll,this._register(this.onDidScroll(a=>{a.scrollTopChanged&&(this.viewContainer.scrollTop=a.scrollTop),a.scrollLeftChanged&&(this.viewContainer.scrollLeft=a.scrollLeft)})),(0,h.BC)(this.el,this.scrollableElement.getDomNode()),this.style(b.styles||s),b.descriptor&&(this.size=b.descriptor.size,b.descriptor.views.forEach((a,b)=>{let c=r.b0(a.visible)||a.visible?a.size:{type:"invisible",cachedVisibleSize:a.size},d=a.view;this.doAddView(d,c,b,!0)}),this._contentSize=this.viewItems.reduce((a,b)=>a+b.size,0),this.saveProportions())}style(a){a.separatorBorder.isTransparent()?(this.el.classList.remove("separator-border"),this.el.style.removeProperty("--separator-border")):(this.el.classList.add("separator-border"),this.el.style.setProperty("--separator-border",a.separatorBorder.toString()))}addView(a,b,c=this.viewItems.length,d){this.doAddView(a,b,c,d)}layout(a,b){let c=Math.max(this.size,this._contentSize);if(this.size=a,this.layoutContext=b,this.proportions){let b=0;for(let c=0;c<this.viewItems.length;c++){let d=this.viewItems[c],e=this.proportions[c];"number"==typeof e?b+=e:a-=d.size}for(let c=0;c<this.viewItems.length;c++){let d=this.viewItems[c],e=this.proportions[c];"number"==typeof e&&b>0&&(d.size=(0,p.qE)(Math.round(e*a/b),d.minimumSize,d.maximumSize))}}else{let b=(0,l.y1)(this.viewItems.length),d=b.filter(a=>1===this.viewItems[a].priority),e=b.filter(a=>2===this.viewItems[a].priority);this.resize(this.viewItems.length-1,a-c,void 0,d,e)}this.distributeEmptySpace(),this.layoutViews()}saveProportions(){this.proportionalLayout&&this._contentSize>0&&(this.proportions=this.viewItems.map(a=>a.proportionalLayout&&a.visible?a.size/this._contentSize:void 0))}onSashStart({sash:a,start:b,alt:c}){for(let a of this.viewItems)a.enabled=!1;let d=this.sashItems.findIndex(b=>b.sash===a),e=(0,o.qE)((0,h.ko)(this.el.ownerDocument.body,"keydown",a=>f(this.sashDragState.current,a.altKey)),(0,h.ko)(this.el.ownerDocument.body,"keyup",()=>f(this.sashDragState.current,!1))),f=(a,b)=>{let c,f,g=this.viewItems.map(a=>a.size),h=-1/0,i=1/0;if(this.inverseAltBehavior&&(b=!b),b)if(d===this.sashItems.length-1){let a=this.viewItems[d];h=(a.minimumSize-a.size)/2,i=(a.maximumSize-a.size)/2}else{let a=this.viewItems[d+1];h=(a.size-a.maximumSize)/2,i=(a.size-a.minimumSize)/2}if(!b){let a=(0,l.y1)(d,-1),b=(0,l.y1)(d+1,this.viewItems.length),e=a.reduce((a,b)=>a+(this.viewItems[b].minimumSize-g[b]),0),h=a.reduce((a,b)=>a+(this.viewItems[b].viewMaximumSize-g[b]),0),i=0===b.length?1/0:b.reduce((a,b)=>a+(g[b]-this.viewItems[b].minimumSize),0),j=Math.max(e,0===b.length?-1/0:b.reduce((a,b)=>a+(g[b]-this.viewItems[b].viewMaximumSize),0)),k=Math.min(i,h),m=this.findFirstSnapIndex(a),n=this.findFirstSnapIndex(b);if("number"==typeof m){let a=this.viewItems[m],b=Math.floor(a.viewMinimumSize/2);c={index:m,limitDelta:a.visible?j-b:j+b,size:a.size}}if("number"==typeof n){let a=this.viewItems[n],b=Math.floor(a.viewMinimumSize/2);f={index:n,limitDelta:a.visible?k+b:k-b,size:a.size}}}this.sashDragState={start:a,current:a,index:d,sizes:g,minDelta:h,maxDelta:i,alt:b,snapBefore:c,snapAfter:f,disposable:e}};f(b,c)}onSashChange({current:a}){let{index:b,start:c,sizes:d,alt:e,minDelta:f,maxDelta:g,snapBefore:h,snapAfter:i}=this.sashDragState;this.sashDragState.current=a;let j=this.resize(b,a-c,d,void 0,void 0,f,g,h,i);if(e){let a=b===this.sashItems.length-1,c=this.viewItems.map(a=>a.size),d=a?b:b+1,e=this.viewItems[d],f=e.size-e.maximumSize,g=e.size-e.minimumSize;this.resize(a?b-1:b+1,-j,c,void 0,void 0,f,g)}this.distributeEmptySpace(),this.layoutViews()}onSashEnd(a){for(let b of(this._onDidSashChange.fire(a),this.sashDragState.disposable.dispose(),this.saveProportions(),this.viewItems))b.enabled=!0}onViewChange(a,b){let c=this.viewItems.indexOf(a);c<0||c>=this.viewItems.length||(b="number"==typeof b?b:a.size,b=(0,p.qE)(b,a.minimumSize,a.maximumSize),this.inverseAltBehavior&&c>0?(this.resize(c-1,Math.floor((a.size-b)/2)),this.distributeEmptySpace(),this.layoutViews()):(a.size=b,this.relayout([c],void 0)))}resizeView(a,b){if(!(a<0)&&!(a>=this.viewItems.length)){if(this.state!==f.Idle)throw Error("Cant modify splitview");this.state=f.Busy;try{let c=(0,l.y1)(this.viewItems.length).filter(b=>b!==a),d=[...c.filter(a=>1===this.viewItems[a].priority),a],e=c.filter(a=>2===this.viewItems[a].priority),f=this.viewItems[a];b=Math.round(b),b=(0,p.qE)(b,f.minimumSize,Math.min(f.maximumSize,this.size)),f.size=b,this.relayout(d,e)}finally{this.state=f.Idle}}}distributeViewSizes(){let a=[],b=0;for(let c of this.viewItems)c.maximumSize-c.minimumSize>0&&(a.push(c),b+=c.size);let c=Math.floor(b/a.length);for(let b of a)b.size=(0,p.qE)(c,b.minimumSize,b.maximumSize);let d=(0,l.y1)(this.viewItems.length),e=d.filter(a=>1===this.viewItems[a].priority),f=d.filter(a=>2===this.viewItems[a].priority);this.relayout(e,f)}getViewSize(a){return a<0||a>=this.viewItems.length?-1:this.viewItems[a].size}doAddView(a,b,c=this.viewItems.length,d){if(this.state!==f.Idle)throw Error("Cant modify splitview");this.state=f.Busy;try{let e,f,g=(0,h.$)(".split-view-view");c===this.viewItems.length?this.viewContainer.appendChild(g):this.viewContainer.insertBefore(g,this.viewContainer.children.item(c));let i=a.onDidChange(a=>this.onViewChange(p,a)),k=(0,o.s)(()=>g.remove()),m=(0,o.qE)(i,k);"number"==typeof b?e=b:("auto"===b.type&&(b=this.areViewsDistributed()?{type:"distribute"}:{type:"split",index:b.index}),e="split"===b.type?this.getViewSize(b.index)/2:"invisible"===b.type?{cachedVisibleSize:b.cachedVisibleSize}:a.minimumSize);let p=0===this.orientation?new u(g,a,e,m):new v(g,a,e,m);if(this.viewItems.splice(c,0,p),this.viewItems.length>1){let a={orthogonalStartSash:this.orthogonalStartSash,orthogonalEndSash:this.orthogonalEndSash},b=0===this.orientation?new j.m(this.sashContainer,{getHorizontalSashTop:a=>this.getSashPosition(a),getHorizontalSashWidth:this.getSashOrthogonalSize},{...a,orientation:1}):new j.m(this.sashContainer,{getVerticalSashLeft:a=>this.getSashPosition(a),getVerticalSashHeight:this.getSashOrthogonalSize},{...a,orientation:0}),d=0===this.orientation?a=>({sash:b,start:a.startY,current:a.currentY,alt:a.altKey}):a=>({sash:b,start:a.startX,current:a.currentX,alt:a.altKey}),e=n.Jh.map(b.onDidStart,d)(this.onSashStart,this),f=n.Jh.map(b.onDidChange,d)(this.onSashChange,this),g=n.Jh.map(b.onDidEnd,()=>this.sashItems.findIndex(a=>a.sash===b))(this.onSashEnd,this),h=b.onDidReset(()=>{let a=this.sashItems.findIndex(a=>a.sash===b),c=(0,l.y1)(a,-1),d=(0,l.y1)(a+1,this.viewItems.length),e=this.findFirstSnapIndex(c),f=this.findFirstSnapIndex(d);"number"==typeof e&&!this.viewItems[e].visible||("number"!=typeof f||this.viewItems[f].visible)&&this._onDidSashReset.fire(a)}),i=(0,o.qE)(e,f,g,h,b);this.sashItems.splice(c-1,0,{sash:b,disposable:i})}g.appendChild(a.element),"number"!=typeof b&&"split"===b.type&&(f=[b.index]),d||this.relayout([c],f),d||"number"==typeof b||"distribute"!==b.type||this.distributeViewSizes()}finally{this.state=f.Idle}}relayout(a,b){let c=this.viewItems.reduce((a,b)=>a+b.size,0);this.resize(this.viewItems.length-1,this.size-c,void 0,a,b),this.distributeEmptySpace(),this.layoutViews(),this.saveProportions()}resize(a,b,c=this.viewItems.map(a=>a.size),d,e,f=-1/0,g=1/0,h,i){if(a<0||a>=this.viewItems.length)return 0;let j=(0,l.y1)(a,-1),k=(0,l.y1)(a+1,this.viewItems.length);if(e)for(let a of e)(0,l._A)(j,a),(0,l._A)(k,a);if(d)for(let a of d)(0,l.r7)(j,a),(0,l.r7)(k,a);let m=j.map(a=>this.viewItems[a]),n=j.map(a=>c[a]),o=k.map(a=>this.viewItems[a]),q=k.map(a=>c[a]),r=j.reduce((a,b)=>a+(this.viewItems[b].minimumSize-c[b]),0),s=j.reduce((a,b)=>a+(this.viewItems[b].maximumSize-c[b]),0),t=0===k.length?1/0:k.reduce((a,b)=>a+(c[b]-this.viewItems[b].minimumSize),0),u=Math.max(r,0===k.length?-1/0:k.reduce((a,b)=>a+(c[b]-this.viewItems[b].maximumSize),0),f),v=Math.min(t,s,g),w=!1;if(h){let a=this.viewItems[h.index],c=b>=h.limitDelta;w=c!==a.visible,a.setVisible(c,h.size)}if(!w&&i){let a=this.viewItems[i.index],c=b<i.limitDelta;w=c!==a.visible,a.setVisible(c,i.size)}if(w)return this.resize(a,b,c,d,e,f,g);b=(0,p.qE)(b,u,v);for(let a=0,c=b;a<m.length;a++){let b=m[a],d=(0,p.qE)(n[a]+c,b.minimumSize,b.maximumSize);c-=d-n[a],b.size=d}for(let a=0,c=b;a<o.length;a++){let b=o[a],d=(0,p.qE)(q[a]-c,b.minimumSize,b.maximumSize);c+=d-q[a],b.size=d}return b}distributeEmptySpace(a){let b=this.viewItems.reduce((a,b)=>a+b.size,0),c=this.size-b,d=(0,l.y1)(this.viewItems.length-1,-1),e=d.filter(a=>1===this.viewItems[a].priority);for(let a of d.filter(a=>2===this.viewItems[a].priority))(0,l._A)(d,a);for(let a of e)(0,l.r7)(d,a);"number"==typeof a&&(0,l.r7)(d,a);for(let a=0;0!==c&&a<d.length;a++){let b=this.viewItems[d[a]],e=(0,p.qE)(b.size+c,b.minimumSize,b.maximumSize);c-=e-b.size,b.size=e}}layoutViews(){this._contentSize=this.viewItems.reduce((a,b)=>a+b.size,0);let a=0;for(let b of this.viewItems)b.layout(a,this.layoutContext),a+=b.size;this.sashItems.forEach(a=>a.sash.layout()),this.updateSashEnablement(),this.updateScrollableElement()}updateScrollableElement(){0===this.orientation?this.scrollableElement.setScrollDimensions({height:this.size,scrollHeight:this._contentSize}):this.scrollableElement.setScrollDimensions({width:this.size,scrollWidth:this._contentSize})}updateSashEnablement(){let a=!1,b=this.viewItems.map(b=>a=b.size-b.minimumSize>0||a);a=!1;let c=this.viewItems.map(b=>a=b.maximumSize-b.size>0||a),d=[...this.viewItems].reverse();a=!1;let e=d.map(b=>a=b.size-b.minimumSize>0||a).reverse();a=!1;let f=d.map(b=>a=b.maximumSize-b.size>0||a).reverse(),g=0;for(let a=0;a<this.sashItems.length;a++){let{sash:d}=this.sashItems[a];g+=this.viewItems[a].size;let h=!(b[a]&&f[a+1]),i=!(c[a]&&e[a+1]);if(h&&i){let c=(0,l.y1)(a,-1),f=(0,l.y1)(a+1,this.viewItems.length),h=this.findFirstSnapIndex(c),i=this.findFirstSnapIndex(f),j="number"==typeof h&&!this.viewItems[h].visible,k="number"==typeof i&&!this.viewItems[i].visible;j&&e[a]&&(g>0||this.startSnappingEnabled)?d.state=1:k&&b[a]&&(g<this._contentSize||this.endSnappingEnabled)?d.state=2:d.state=0}else h&&!i?d.state=1:!h&&i?d.state=2:d.state=3}}getSashPosition(a){let b=0;for(let c=0;c<this.sashItems.length;c++)if(b+=this.viewItems[c].size,this.sashItems[c].sash===a)return b;return 0}findFirstSnapIndex(a){for(let b of a){let a=this.viewItems[b];if(a.visible&&a.snap)return b}for(let b of a){let a=this.viewItems[b];if(a.visible&&a.maximumSize-a.minimumSize>0)break;if(!a.visible&&a.snap)return b}}areViewsDistributed(){let a,b;for(let c of this.viewItems)if(a=void 0===a?c.size:Math.min(a,c.size),(b=void 0===b?c.size:Math.max(b,c.size))-a>2)return!1;return!0}dispose(){this.sashDragState?.disposable.dispose(),(0,o.AS)(this.viewItems),this.viewItems=[],this.sashItems.forEach(a=>a.disposable.dispose()),this.sashItems=[],super.dispose()}}},53764:(a,b,c)=>{"use strict";c.d(b,{O:()=>g});var d=c(29139),e=c(98896);class f{constructor(){this.data=new Map}add(a,b){d.ok(e.Kg(a)),d.ok(e.Gv(b)),d.ok(!this.data.has(a),"There is already an extension with this id"),this.data.set(a,b)}as(a){return this.data.get(a)||null}dispose(){this.data.forEach(a=>{e.Tn(a.dispose)&&a.dispose()}),this.data.clear()}}let g=new f},53918:(a,b,c)=>{"use strict";c.d(b,{W:()=>g});var d=c(11035),e=c(95554),f=c(52212);class g{static{this.zero=new g(0,0)}static betweenPositions(a,b){return a.lineNumber===b.lineNumber?new g(0,b.column-a.column):new g(b.lineNumber-a.lineNumber,b.column-1)}static fromPosition(a){return new g(a.lineNumber-1,a.column-1)}static ofRange(a){return g.betweenPositions(a.getStartPosition(),a.getEndPosition())}static ofText(a){let b=0,c=0;for(let d of a)"\n"===d?(b++,c=0):c++;return new g(b,c)}constructor(a,b){this.lineCount=a,this.columnCount=b}isGreaterThanOrEqualTo(a){return this.lineCount!==a.lineCount?this.lineCount>a.lineCount:this.columnCount>=a.columnCount}add(a){return 0===a.lineCount?new g(this.lineCount,this.columnCount+a.columnCount):new g(this.lineCount+a.lineCount,a.columnCount)}createRange(a){return 0===this.lineCount?new f.Q(a.lineNumber,a.column,a.lineNumber,a.column+this.columnCount):new f.Q(a.lineNumber,a.column,a.lineNumber+this.lineCount,this.columnCount+1)}toRange(){return new f.Q(1,1,this.lineCount+1,this.columnCount+1)}toLineRange(){return d.M.ofLength(1,this.lineCount+1)}addToPosition(a){return 0===this.lineCount?new e.y(a.lineNumber,a.column+this.columnCount):new e.y(a.lineNumber+this.lineCount,this.columnCount+1)}toString(){return`${this.lineCount},${this.columnCount}`}}},54058:(a,b,c)=>{"use strict";c.d(b,{b:()=>d,t:()=>e});let d=function(){if("function"==typeof crypto.randomUUID)return crypto.randomUUID.bind(crypto);let a=new Uint8Array(16),b=[];for(let a=0;a<256;a++)b.push(a.toString(16).padStart(2,"0"));return function(){crypto.getRandomValues(a),a[6]=15&a[6]|64,a[8]=63&a[8]|128;let c=0,d="";return d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]],d+="-",d+=b[a[c++]],d+=b[a[c++]],d+="-",d+=b[a[c++]],d+=b[a[c++]],d+="-",d+=b[a[c++]],d+=b[a[c++]],d+="-",d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]],d+=b[a[c++]]}}();function e(a){return`${a}-${d()}`}},55066:(a,b,c)=>{"use strict";c.d(b,{Mo:()=>i,ad:()=>e,gD:()=>h,iB:()=>g,kW:()=>f,pG:()=>d});let d=(0,c(21652).u1)("configurationService");function e(a,b){let c=Object.create(null);for(let d in a)f(c,d,a[d],b);return c}function f(a,b,c,d){let e=b.split("."),f=e.pop(),g=a;for(let a=0;a<e.length;a++){let c=e[a],f=g[c];switch(typeof f){case"undefined":f=g[c]=Object.create(null);break;case"object":if(null===f)return void d(`Ignoring ${b} as ${e.slice(0,a+1).join(".")} is null`);break;default:d(`Ignoring ${b} as ${e.slice(0,a+1).join(".")} is ${JSON.stringify(f)}`);return}g=f}if("object"==typeof g&&null!==g)try{g[f]=c}catch(a){d(`Ignoring ${b} as ${e.join(".")} is ${JSON.stringify(g)}`)}else d(`Ignoring ${b} as ${e.join(".")} is ${JSON.stringify(g)}`)}function g(a,b){!function a(b,c){if(!b)return;let d=c.shift();if(0===c.length)return void delete b[d];if(-1!==Object.keys(b).indexOf(d)){let e=b[d];"object"!=typeof e||Array.isArray(e)||(a(e,c),0===Object.keys(e).length&&delete b[d])}}(a,b.split("."))}function h(a,b,c){let d=function(a,b){let c=a;for(let a of b){if("object"!=typeof c||null===c)return;c=c[a]}return c}(a,b.split("."));return void 0===d?c:d}function i(a){return a.replace(/^\[/,"").replace(/]$/g,"").replace(/\]\[/g,", ")}},55775:(a,b,c)=>{"use strict";c.d(b,{R$:()=>n,_k:()=>p,m2:()=>i,pS:()=>m,pz:()=>q,sA:()=>k});var d=c(19095),e=c(77747),f=c(10322);let g=RegExp(`\\$\\(${f.L.iconNameExpression}(?:${f.L.iconModifierExpression})?\\)`,"g"),h=RegExp(`(\\\\)?${g.source}`,"g");function i(a){return a.replace(h,(a,b)=>b?a:`\\${a}`)}let j=RegExp(`\\\\${g.source}`,"g");function k(a){return a.replace(j,a=>`\\${a}`)}let l=RegExp(`(\\s)?(\\\\)?${g.source}(\\s)?`,"g");function m(a){return -1===a.indexOf("$(")?a:a.replace(l,(a,b,c,d)=>c?a:b||d||"")}function n(a){return a?a.replace(/\$\((.*?)\)/g,(a,b)=>` ${b} `).trim():""}let o=RegExp(`\\$\\(${f.L.iconNameCharacter}+\\)`,"g");function p(a){o.lastIndex=0;let b="",c=[],d=0;for(;;){let e=o.lastIndex,f=o.exec(a),g=a.substring(e,f?.index);if(g.length>0){b+=g;for(let a=0;a<g.length;a++)c.push(d)}if(!f)break;d+=f[0].length}return{text:b,iconOffsets:c}}function q(a,b,c=!1){let{text:f,iconOffsets:g}=b;if(!g||0===g.length)return(0,d.yr)(a,f,c);let h=(0,e.NB)(f," "),i=f.length-h.length,j=(0,d.yr)(a,h,c);if(j)for(let a of j){let b=g[a.start+i]+i;a.start+=b,a.end+=b}return j}},55888:(a,b,c)=>{"use strict";c.d(b,{G5:()=>e,N8:()=>g,ke:()=>f});var d=c(21652);let e=(0,d.u1)("progressService");Object.freeze({total(){},worked(){},done(){}});class f{static{this.None=Object.freeze({report(){}})}constructor(a){this.callback=a}report(a){this._value=a,this.callback(this._value)}}let g=(0,d.u1)("editorProgressService")},56375:(a,b,c)=>{"use strict";c.d(b,{d:()=>d});class d{constructor(a,b=[],c=!1){this.ctor=a,this.staticArguments=b,this.supportsDelayedInstantiation=c}}},56600:(a,b,c)=>{"use strict";c.d(b,{L:()=>d});let d=(0,c(21652).u1)("workspaceTrustManagementService")},57729:(a,b,c)=>{"use strict";c.d(b,{g:()=>k});var d=c(77747),e=c(2583),f=c(61682),g=c(66064),h=c(47228),i=c(52212),j=c(95554);class k{static deleteRight(a,b,c,d){let f=[],g=3!==a;for(let a=0,h=d.length;a<h;a++){let h=d[a],i=this.getDeleteRightRange(h,c,b);if(i.isEmpty()){f[a]=null;continue}i.startLineNumber!==i.endLineNumber&&(g=!0),f[a]=new e.iu(i,"")}return[g,f]}static getDeleteRightRange(a,b,c){if(!a.isEmpty())return a;let d=a.getPosition(),e=h.I.right(c,b,d);if(c.trimWhitespaceOnDelete&&e.lineNumber!==d.lineNumber){let a=b.getLineFirstNonWhitespaceColumn(d.lineNumber)>0,c=b.getLineFirstNonWhitespaceColumn(e.lineNumber);if(a&&c>0)return new i.Q(e.lineNumber,c,d.lineNumber,d.column)}return new i.Q(e.lineNumber,e.column,d.lineNumber,d.column)}static isAutoClosingPairDelete(a,b,c,d,e,g,h){if("never"===b&&"never"===c||"never"===a)return!1;for(let i=0,j=g.length;i<j;i++){let j=g[i],k=j.getPosition();if(!j.isEmpty())return!1;let l=e.getLineContent(k.lineNumber);if(k.column<2||k.column>=l.length+1)return!1;let m=l.charAt(k.column-2),n=d.get(m);if(!n)return!1;if((0,f.vG)(m)){if("never"===c)return!1}else if("never"===b)return!1;let o=l.charAt(k.column-1),p=!1;for(let a of n)a.open===m&&a.close===o&&(p=!0);if(!p)return!1;if("auto"===a){let a=!1;for(let b=0,c=h.length;b<c;b++){let c=h[b];if(k.lineNumber===c.startLineNumber&&k.column===c.startColumn){a=!0;break}}if(!a)return!1}}return!0}static _runAutoClosingPairDelete(a,b,c){let d=[];for(let a=0,b=c.length;a<b;a++){let b=c[a].getPosition(),f=new i.Q(b.lineNumber,b.column-1,b.lineNumber,b.column+1);d[a]=new e.iu(f,"")}return[!0,d]}static deleteLeft(a,b,c,d,f){if(this.isAutoClosingPairDelete(b.autoClosingDelete,b.autoClosingBrackets,b.autoClosingQuotes,b.autoClosingPairs.autoClosingPairsOpenByEnd,c,d,f))return this._runAutoClosingPairDelete(b,c,d);let g=[],h=2!==a;for(let a=0,f=d.length;a<f;a++){let f=k.getDeleteLeftRange(d[a],c,b);if(f.isEmpty()){g[a]=null;continue}f.startLineNumber!==f.endLineNumber&&(h=!0),g[a]=new e.iu(f,"")}return[h,g]}static getDeleteLeftRange(a,b,c){if(!a.isEmpty())return a;let e=a.getPosition();if(c.useTabStops&&e.column>1){let a=b.getLineContent(e.lineNumber),f=d.HG(a),h=-1===f?a.length+1:f+1;if(e.column<=h){let a=c.visibleColumnFromColumn(b,e),d=g.A.prevIndentTabStop(a,c.indentSize),f=c.columnFromVisibleColumn(b,e.lineNumber,d);return new i.Q(e.lineNumber,f,e.lineNumber,e.column)}}return i.Q.fromPositions(k.getPositionAfterDeleteLeft(e,b),e)}static getPositionAfterDeleteLeft(a,b){if(a.column>1){let c=d.Wd(a.column-1,b.getLineContent(a.lineNumber));return a.with(void 0,c+1)}if(!(a.lineNumber>1))return a;{let c=a.lineNumber-1;return new j.y(c,b.getLineMaxColumn(c))}}static cut(a,b,c){let d=[],g=null;c.sort((a,b)=>j.y.compare(a.getStartPosition(),b.getEndPosition()));for(let f=0,h=c.length;f<h;f++){let h=c[f];if(h.isEmpty())if(a.emptySelectionClipboard){let a,c,j,k,l=h.getPosition();l.lineNumber<b.getLineCount()?(a=l.lineNumber,c=1,j=l.lineNumber+1,k=1):(l.lineNumber>1&&g?.endLineNumber!==l.lineNumber?(a=l.lineNumber-1,c=b.getLineMaxColumn(l.lineNumber-1)):(a=l.lineNumber,c=1),j=l.lineNumber,k=b.getLineMaxColumn(l.lineNumber));let m=new i.Q(a,c,j,k);g=m,m.isEmpty()?d[f]=null:d[f]=new e.iu(m,"")}else d[f]=null;else d[f]=new e.iu(h,"")}return new f.vY(0,d,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}}},57995:()=>{},58451:(a,b,c)=>{"use strict";c.d(b,{N:()=>g,v:()=>f});var d=c(56375);let e=[];function f(a,b,c){b instanceof d.d||(b=new d.d(b,[],!!c)),e.push([a,b])}function g(){return e}},58494:(a,b,c)=>{"use strict";c.d(b,{f:()=>function a(b,c,f,g,h,i){if(Array.isArray(b)){let d=0;for(let e of b){let b=a(e,c,f,g,h,i);if(10===b)return b;b>d&&(d=b)}return d}if("string"==typeof b)return g?"*"===b?5:10*(b===f):0;if(!b)return 0;{let{language:a,pattern:j,scheme:k,hasAccessToAllModels:l,notebookType:m}=b;if(!g&&!l)return 0;m&&h&&(c=h);let n=0;if(k)if(k===c.scheme)n=10;else{if("*"!==k)return 0;n=5}if(a)if(a===f)n=10;else{if("*"!==a)return 0;n=Math.max(n,5)}if(m)if(m===i)n=10;else{if("*"!==m||void 0===i)return 0;n=Math.max(n,5)}if(j){let a;if(!((a="string"==typeof j?j:{...j,base:(0,e.S8)(j.base)})===c.fsPath||(0,d.YW)(a,c.fsPath)))return 0;n=10}return n}}});var d=c(12995),e=c(45006)},58547:()=>{},58567:()=>{},58656:()=>{},58912:(a,b,c)=>{"use strict";c.d(b,{L:()=>e,h:()=>f});var d=c(88586);class e{static fromTo(a,b){return new e(a,b)}static addRange(a,b){let c=0;for(;c<b.length&&b[c].endExclusive<a.start;)c++;let d=c;for(;d<b.length&&b[d].start<=a.endExclusive;)d++;if(c===d)b.splice(c,0,a);else{let f=Math.min(a.start,b[c].start),g=Math.max(a.endExclusive,b[d-1].endExclusive);b.splice(c,d-c,new e(f,g))}}static tryCreate(a,b){if(!(a>b))return new e(a,b)}static ofLength(a){return new e(0,a)}static ofStartAndLength(a,b){return new e(a,a+b)}static emptyAt(a){return new e(a,a)}constructor(a,b){if(this.start=a,this.endExclusive=b,a>b)throw new d.D7(`Invalid range: ${this.toString()}`)}get isEmpty(){return this.start===this.endExclusive}delta(a){return new e(this.start+a,this.endExclusive+a)}deltaStart(a){return new e(this.start+a,this.endExclusive)}deltaEnd(a){return new e(this.start,this.endExclusive+a)}get length(){return this.endExclusive-this.start}toString(){return`[${this.start}, ${this.endExclusive})`}equals(a){return this.start===a.start&&this.endExclusive===a.endExclusive}contains(a){return this.start<=a&&a<this.endExclusive}join(a){return new e(Math.min(this.start,a.start),Math.max(this.endExclusive,a.endExclusive))}intersect(a){let b=Math.max(this.start,a.start),c=Math.min(this.endExclusive,a.endExclusive);if(b<=c)return new e(b,c)}intersectionLength(a){let b=Math.max(this.start,a.start);return Math.max(0,Math.min(this.endExclusive,a.endExclusive)-b)}intersects(a){return Math.max(this.start,a.start)<Math.min(this.endExclusive,a.endExclusive)}intersectsOrTouches(a){return Math.max(this.start,a.start)<=Math.min(this.endExclusive,a.endExclusive)}isBefore(a){return this.endExclusive<=a.start}isAfter(a){return this.start>=a.endExclusive}slice(a){return a.slice(this.start,this.endExclusive)}substring(a){return a.substring(this.start,this.endExclusive)}clip(a){if(this.isEmpty)throw new d.D7(`Invalid clipping range: ${this.toString()}`);return Math.max(this.start,Math.min(this.endExclusive-1,a))}clipCyclic(a){if(this.isEmpty)throw new d.D7(`Invalid clipping range: ${this.toString()}`);return a<this.start?this.endExclusive-(this.start-a)%this.length:a>=this.endExclusive?this.start+(a-this.start)%this.length:a}forEach(a){for(let b=this.start;b<this.endExclusive;b++)a(b)}joinRightTouching(a){if(this.endExclusive!==a.start)throw new d.D7(`Invalid join: ${this.toString()} and ${a.toString()}`);return new e(this.start,a.endExclusive)}}class f{constructor(){this._sortedRanges=[]}addRange(a){let b=0;for(;b<this._sortedRanges.length&&this._sortedRanges[b].endExclusive<a.start;)b++;let c=b;for(;c<this._sortedRanges.length&&this._sortedRanges[c].start<=a.endExclusive;)c++;if(b===c)this._sortedRanges.splice(b,0,a);else{let d=Math.min(a.start,this._sortedRanges[b].start),f=Math.max(a.endExclusive,this._sortedRanges[c-1].endExclusive);this._sortedRanges.splice(b,c-b,new e(d,f))}}toString(){return this._sortedRanges.map(a=>a.toString()).join(", ")}intersectsStrict(a){let b=0;for(;b<this._sortedRanges.length&&this._sortedRanges[b].endExclusive<=a.start;)b++;return b<this._sortedRanges.length&&this._sortedRanges[b].start<a.endExclusive}intersectWithRange(a){let b=new f;for(let c of this._sortedRanges){let d=c.intersect(a);d&&b.addRange(d)}return b}intersectWithRangeLength(a){return this.intersectWithRange(a).length}get length(){return this._sortedRanges.reduce((a,b)=>a+b.length,0)}}},59004:()=>{},59119:(a,b,c)=>{"use strict";c.d(b,{V:()=>e,y:()=>f});var d=c(85977);class e{constructor(a){const b=(0,d.W)(a);this._defaultValue=b,this._asciiMap=e._createAsciiMap(b),this._map=new Map}static _createAsciiMap(a){let b=new Uint8Array(256);return b.fill(a),b}set(a,b){let c=(0,d.W)(b);a>=0&&a<256?this._asciiMap[a]=c:this._map.set(a,c)}get(a){return a>=0&&a<256?this._asciiMap[a]:this._map.get(a)||this._defaultValue}clear(){this._asciiMap.fill(this._defaultValue),this._map.clear()}}class f{constructor(){this._actual=new e(0)}add(a){this._actual.set(a,1)}has(a){return 1===this._actual.get(a)}clear(){return this._actual.clear()}}},59237:(a,b,c)=>{"use strict";c.d(b,{B:()=>e});var d,e,f=c(98896);function g(a){return{object:a,dispose:()=>a.destroy()}}(d=e||(e={})).requestDevice=async function(a){try{if(!navigator.gpu)throw Error("This browser does not support WebGPU");let a=await navigator.gpu.requestAdapter();if(!a)throw Error("This browser supports WebGPU but it appears to be disabled");return g(await a.requestDevice())}catch(b){throw a&&a(b.message),b}},d.createBuffer=function(a,b,c){let d=a.createBuffer(b);return c&&a.queue.writeBuffer(d,0,(0,f.Tn)(c)?c():c),g(d)},d.createTexture=function(a,b){return g(a.createTexture(b))}},60232:(a,b,c)=>{"use strict";c.d(b,{r4:()=>E,Yl:()=>G});var d,e=c(91849),f=c(36046),g=c(40201),h=c(39537),i=c(58451),j=c(21652),k=c(3457),l=c(37774),m=c(11035),n=c(95132),o=c(62631),p=c(1136),q=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g},r=function(a,b){return function(c,d){b(c,d,a)}};let s=(0,j.u1)("diffProviderFactoryService"),t=class{constructor(a){this.instantiationService=a}createDiffProvider(a){return this.instantiationService.createInstance(u,a)}};t=q([r(0,j._Y)],t),(0,i.v)(s,t,1);let u=class{static{d=this}static{this.diffCache=new Map}constructor(a,b,c){this.editorWorkerService=b,this.telemetryService=c,this.onDidChangeEventEmitter=new k.vl,this.onDidChange=this.onDidChangeEventEmitter.event,this.diffAlgorithm="advanced",this.diffAlgorithmOnDidChangeSubscription=void 0,this.setOptions(a)}dispose(){this.diffAlgorithmOnDidChangeSubscription?.dispose()}async computeDiff(a,b,c,e){if("string"!=typeof this.diffAlgorithm)return this.diffAlgorithm.computeDiff(a,b,c,e);if(a.isDisposed()||b.isDisposed())return{changes:[],identical:!0,quitEarly:!1,moves:[]};if(1===a.getLineCount()&&1===a.getLineMaxColumn(1))return 1===b.getLineCount()&&1===b.getLineMaxColumn(1)?{changes:[],identical:!0,quitEarly:!1,moves:[]}:{changes:[new n.wm(new m.M(1,2),new m.M(1,b.getLineCount()+1),[new n.q6(a.getFullModelRange(),b.getFullModelRange())])],identical:!1,quitEarly:!1,moves:[]};let f=JSON.stringify([a.uri.toString(),b.uri.toString()]),g=JSON.stringify([a.id,b.id,a.getAlternativeVersionId(),b.getAlternativeVersionId(),JSON.stringify(c)]),h=d.diffCache.get(f);if(h&&h.context===g)return h.result;let i=l.W.create(),j=await this.editorWorkerService.computeDiff(a.uri,b.uri,c,this.diffAlgorithm),k=i.elapsed();if(this.telemetryService.publicLog2("diffEditor.computeDiff",{timeMs:k,timedOut:j?.quitEarly??!0,detectedMoves:c.computeMoves?j?.moves.length??0:-1}),e.isCancellationRequested)return{changes:[],identical:!1,quitEarly:!0,moves:[]};if(!j)throw Error("no diff result available");return d.diffCache.size>10&&d.diffCache.delete(d.diffCache.keys().next().value),d.diffCache.set(f,{result:j,context:g}),j}setOptions(a){let b=!1;a.diffAlgorithm&&this.diffAlgorithm!==a.diffAlgorithm&&(this.diffAlgorithmOnDidChangeSubscription?.dispose(),this.diffAlgorithmOnDidChangeSubscription=void 0,this.diffAlgorithm=a.diffAlgorithm,"string"!=typeof a.diffAlgorithm&&(this.diffAlgorithmOnDidChangeSubscription=a.diffAlgorithm.onDidChange(()=>this.onDidChangeEventEmitter.fire())),b=!0),b&&this.onDidChangeEventEmitter.fire()}};u=d=q([r(1,o.w),r(2,p.k)],u);var v=c(94157),w=c(34546),x=c(49741),y=c(79913),z=c(44607),A=c(62119),B=c(98896),C=c(42891),D=c(29139);let E=class extends g.jG{setActiveMovedText(a){this._activeMovedText.set(a,void 0)}constructor(a,b,c){super(),this.model=a,this._options=b,this._diffProviderFactoryService=c,this._isDiffUpToDate=(0,h.FY)(this,!1),this.isDiffUpToDate=this._isDiffUpToDate,this._diff=(0,h.FY)(this,void 0),this.diff=this._diff,this._unchangedRegions=(0,h.FY)(this,void 0),this.unchangedRegions=(0,h.un)(this,a=>this._options.hideUnchangedRegions.read(a)?this._unchangedRegions.read(a)?.regions??[]:((0,h.Rn)(a=>{for(let b of this._unchangedRegions.read(void 0)?.regions||[])b.collapseAll(a)}),[])),this.movedTextToCompare=(0,h.FY)(this,void 0),this._activeMovedText=(0,h.FY)(this,void 0),this._hoveredMovedText=(0,h.FY)(this,void 0),this.activeMovedText=(0,h.un)(this,a=>this.movedTextToCompare.read(a)??this._hoveredMovedText.read(a)??this._activeMovedText.read(a)),this._cancellationTokenSource=new f.Qi,this._diffProvider=(0,h.un)(this,a=>{let b=this._diffProviderFactoryService.createDiffProvider({diffAlgorithm:this._options.diffAlgorithm.read(a)}),c=(0,h.yQ)("onDidChange",b.onDidChange);return{diffProvider:b,onChangeSignal:c}}),this._register((0,g.s)(()=>this._cancellationTokenSource.cancel()));const d=(0,h.Yd)("contentChangedSignal"),i=this._register(new e.uC(()=>d.trigger(void 0),200));this._register((0,h.fm)(b=>{let c=this._unchangedRegions.read(b);if(!c||c.regions.some(a=>a.isDragged.read(b)))return;let d=c.originalDecorationIds.map(b=>a.original.getDecorationRange(b)).map(a=>a?m.M.fromRangeInclusive(a):void 0),e=c.modifiedDecorationIds.map(b=>a.modified.getDecorationRange(b)).map(a=>a?m.M.fromRangeInclusive(a):void 0),f=c.regions.map((a,c)=>d[c]&&e[c]?new H(d[c].startLineNumber,e[c].startLineNumber,d[c].length,a.visibleLineCountTop.read(b),a.visibleLineCountBottom.read(b)):void 0).filter(B.O9),g=[],i=!1;for(let a of(0,C.n)(f,(a,c)=>a.getHiddenModifiedRange(b).endLineNumberExclusive===c.getHiddenModifiedRange(b).startLineNumber))if(a.length>1){i=!0;let b=a.reduce((a,b)=>a+b.lineCount,0),c=new H(a[0].originalLineNumber,a[0].modifiedLineNumber,b,a[0].visibleLineCountTop.read(void 0),a[a.length-1].visibleLineCountBottom.read(void 0));g.push(c)}else g.push(a[0]);if(i){let b=a.original.deltaDecorations(c.originalDecorationIds,g.map(a=>({range:a.originalUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}}))),d=a.modified.deltaDecorations(c.modifiedDecorationIds,g.map(a=>({range:a.modifiedUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}})));(0,h.Rn)(a=>{this._unchangedRegions.set({regions:g,originalDecorationIds:b,modifiedDecorationIds:d},a)})}}));const j=(b,c,d)=>{let e,f=H.fromDiffs(b.changes,a.original.getLineCount(),a.modified.getLineCount(),this._options.hideUnchangedRegionsMinimumLineCount.read(d),this._options.hideUnchangedRegionsContextLineCount.read(d)),g=this._unchangedRegions.get();if(g){let b=g.originalDecorationIds.map(b=>a.original.getDecorationRange(b)).map(a=>a?m.M.fromRangeInclusive(a):void 0),c=g.modifiedDecorationIds.map(b=>a.modified.getDecorationRange(b)).map(a=>a?m.M.fromRangeInclusive(a):void 0),f=(0,v.EK)(g.regions.map((a,d)=>{if(!b[d]||!c[d])return;let e=b[d].length;return new H(b[d].startLineNumber,c[d].startLineNumber,e,Math.min(a.visibleLineCountTop.get(),e),Math.min(a.visibleLineCountBottom.get(),e-a.visibleLineCountTop.get()))}).filter(B.O9),(a,b)=>!b||a.modifiedLineNumber>=b.modifiedLineNumber+b.lineCount&&a.originalLineNumber>=b.originalLineNumber+b.lineCount).map(a=>new n.WL(a.getHiddenOriginalRange(d),a.getHiddenModifiedRange(d)));f=n.WL.clip(f,m.M.ofLength(1,a.original.getLineCount()),m.M.ofLength(1,a.modified.getLineCount())),e=n.WL.inverse(f,a.original.getLineCount(),a.modified.getLineCount())}let h=[];if(e)for(let a of f){let b=e.filter(b=>b.original.intersectsStrict(a.originalUnchangedRange)&&b.modified.intersectsStrict(a.modifiedUnchangedRange));h.push(...a.setVisibleRanges(b,c))}else h.push(...f);let i=a.original.deltaDecorations(g?.originalDecorationIds||[],h.map(a=>({range:a.originalUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}}))),j=a.modified.deltaDecorations(g?.modifiedDecorationIds||[],h.map(a=>({range:a.modifiedUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}})));this._unchangedRegions.set({regions:h,originalDecorationIds:i,modifiedDecorationIds:j},c)};this._register(a.modified.onDidChangeContent(b=>{if(this._diff.get()){let c=y.c.fromModelContentChanges(b.changes),d=J(this._lastDiff,c,a.original,a.modified);d&&(this._lastDiff=d,(0,h.Rn)(a=>{this._diff.set(F.fromDiffResult(this._lastDiff),a),j(d,a);let b=this.movedTextToCompare.get();this.movedTextToCompare.set(b?this._lastDiff.moves.find(a=>a.lineRangeMapping.modified.intersect(b.lineRangeMapping.modified)):void 0,a)}))}this._isDiffUpToDate.set(!1,void 0),i.schedule()})),this._register(a.original.onDidChangeContent(b=>{if(this._diff.get()){let c=y.c.fromModelContentChanges(b.changes),d=I(this._lastDiff,c,a.original,a.modified);d&&(this._lastDiff=d,(0,h.Rn)(a=>{this._diff.set(F.fromDiffResult(this._lastDiff),a),j(d,a);let b=this.movedTextToCompare.get();this.movedTextToCompare.set(b?this._lastDiff.moves.find(a=>a.lineRangeMapping.modified.intersect(b.lineRangeMapping.modified)):void 0,a)}))}this._isDiffUpToDate.set(!1,void 0),i.schedule()})),this._register((0,h.yC)(async(b,c)=>{var e,f,g;this._options.hideUnchangedRegionsMinimumLineCount.read(b),this._options.hideUnchangedRegionsContextLineCount.read(b),i.cancel(),d.read(b);let k=this._diffProvider.read(b);k.onChangeSignal.read(b),(0,w.b6)(x.D,b),(0,w.b6)(A.NC,b),this._isDiffUpToDate.set(!1,void 0);let l=[];c.add(a.original.onDidChangeContent(a=>{let b=y.c.fromModelContentChanges(a.changes);l=(0,z.M)(l,b)}));let m=[];c.add(a.modified.onDidChangeContent(a=>{let b=y.c.fromModelContentChanges(a.changes);m=(0,z.M)(m,b)}));let o=await k.diffProvider.computeDiff(a.original,a.modified,{ignoreTrimWhitespace:this._options.ignoreTrimWhitespace.read(b),maxComputationTimeMs:this._options.maxComputationTimeMs.read(b),computeMoves:this._options.showMoves.read(b)},this._cancellationTokenSource.token);this._cancellationTokenSource.token.isCancellationRequested||a.original.isDisposed()||a.modified.isDisposed()||(o=J(o=I((e=o,f=a.original,g=a.modified,o={changes:e.changes.map(a=>new n.wm(a.original,a.modified,a.innerChanges?a.innerChanges.map(a=>{var b,c,d;let e,h;return b=a,c=f,d=g,e=b.originalRange,h=b.modifiedRange,1===e.startColumn&&1===h.startColumn&&(1!==e.endColumn||1!==h.endColumn)&&e.endColumn===c.getLineMaxColumn(e.endLineNumber)&&h.endColumn===d.getLineMaxColumn(h.endLineNumber)&&e.endLineNumber<c.getLineCount()&&h.endLineNumber<d.getLineCount()&&(e=e.setEndPosition(e.endLineNumber+1,1),h=h.setEndPosition(h.endLineNumber+1,1)),new n.q6(e,h)}):void 0)),moves:e.moves,identical:e.identical,quitEarly:e.quitEarly}),l,a.original,a.modified)??o,m,a.original,a.modified)??o,(0,h.Rn)(a=>{j(o,a),this._lastDiff=o;let b=F.fromDiffResult(o);this._diff.set(b,a),this._isDiffUpToDate.set(!0,a);let c=this.movedTextToCompare.read(void 0);this.movedTextToCompare.set(c?this._lastDiff.moves.find(a=>a.lineRangeMapping.modified.intersect(c.lineRangeMapping.modified)):void 0,a)}))}))}ensureModifiedLineIsVisible(a,b,c){if(this.diff.get()?.mappings.length!==0){for(let d of this._unchangedRegions.get()?.regions||[])if(d.getHiddenModifiedRange(void 0).contains(a))return void d.showModifiedLine(a,b,c)}}ensureOriginalLineIsVisible(a,b,c){if(this.diff.get()?.mappings.length!==0){for(let d of this._unchangedRegions.get()?.regions||[])if(d.getHiddenOriginalRange(void 0).contains(a))return void d.showOriginalLine(a,b,c)}}async waitForDiff(){await (0,h.oJ)(this.isDiffUpToDate,a=>a)}serializeState(){let a=this._unchangedRegions.get();return{collapsedRegions:a?.regions.map(a=>({range:a.getHiddenModifiedRange(void 0).serialize()}))}}restoreSerializedState(a){let b=a.collapsedRegions?.map(a=>m.M.deserialize(a.range)),c=this._unchangedRegions.get();c&&b&&(0,h.Rn)(a=>{for(let d of c.regions)for(let c of b)if(d.modifiedUnchangedRange.intersect(c)){d.setHiddenModifiedRange(c,a);break}})}};E=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([function(a,b){s(a,b,2)}],E);class F{static fromDiffResult(a){return new F(a.changes.map(a=>new G(a)),a.moves||[],a.identical,a.quitEarly)}constructor(a,b,c,d){this.mappings=a,this.movedTexts=b,this.identical=c,this.quitEarly=d}}class G{constructor(a){this.lineRangeMapping=a}}class H{static fromDiffs(a,b,c,d,e){let f=n.wm.inverse(a,b,c),g=[];for(let a of f){let f=a.original.startLineNumber,h=a.modified.startLineNumber,i=a.original.length,j=1===f&&1===h,k=f+i===b+1&&h+i===c+1;(j||k)&&i>=e+d?(j&&!k&&(i-=e),k&&!j&&(f+=e,h+=e,i-=e),g.push(new H(f,h,i,0,0))):i>=2*e+d&&(f+=e,h+=e,i-=2*e,g.push(new H(f,h,i,0,0)))}return g}get originalUnchangedRange(){return m.M.ofLength(this.originalLineNumber,this.lineCount)}get modifiedUnchangedRange(){return m.M.ofLength(this.modifiedLineNumber,this.lineCount)}constructor(a,b,c,d,e){this.originalLineNumber=a,this.modifiedLineNumber=b,this.lineCount=c,this._visibleLineCountTop=(0,h.FY)(this,0),this.visibleLineCountTop=this._visibleLineCountTop,this._visibleLineCountBottom=(0,h.FY)(this,0),this.visibleLineCountBottom=this._visibleLineCountBottom,this._shouldHideControls=(0,h.un)(this,a=>this.visibleLineCountTop.read(a)+this.visibleLineCountBottom.read(a)===this.lineCount&&!this.isDragged.read(a)),this.isDragged=(0,h.FY)(this,void 0);const f=Math.max(Math.min(d,this.lineCount),0),g=Math.max(Math.min(e,this.lineCount-d),0);(0,D.V7)(d===f),(0,D.V7)(e===g),this._visibleLineCountTop.set(f,void 0),this._visibleLineCountBottom.set(g,void 0)}setVisibleRanges(a,b){let c=[],d=new m.S(a.map(a=>a.modified)).subtractFrom(this.modifiedUnchangedRange),e=this.originalLineNumber,f=this.modifiedLineNumber,g=this.modifiedLineNumber+this.lineCount;if(0===d.ranges.length)this.showAll(b),c.push(this);else{let a=0;for(let h of d.ranges){let i=a===d.ranges.length-1;a++;let j=(i?g:h.endLineNumberExclusive)-f,k=new H(e,f,j,0,0);k.setHiddenModifiedRange(h,b),c.push(k),e=k.originalUnchangedRange.endLineNumberExclusive,f=k.modifiedUnchangedRange.endLineNumberExclusive}}return c}shouldHideControls(a){return this._shouldHideControls.read(a)}getHiddenOriginalRange(a){return m.M.ofLength(this.originalLineNumber+this._visibleLineCountTop.read(a),this.lineCount-this._visibleLineCountTop.read(a)-this._visibleLineCountBottom.read(a))}getHiddenModifiedRange(a){return m.M.ofLength(this.modifiedLineNumber+this._visibleLineCountTop.read(a),this.lineCount-this._visibleLineCountTop.read(a)-this._visibleLineCountBottom.read(a))}setHiddenModifiedRange(a,b){let c=a.startLineNumber-this.modifiedLineNumber,d=this.modifiedLineNumber+this.lineCount-a.endLineNumberExclusive;this.setState(c,d,b)}getMaxVisibleLineCountTop(){return this.lineCount-this._visibleLineCountBottom.get()}getMaxVisibleLineCountBottom(){return this.lineCount-this._visibleLineCountTop.get()}showMoreAbove(a=10,b){let c=this.getMaxVisibleLineCountTop();this._visibleLineCountTop.set(Math.min(this._visibleLineCountTop.get()+a,c),b)}showMoreBelow(a=10,b){let c=this.lineCount-this._visibleLineCountTop.get();this._visibleLineCountBottom.set(Math.min(this._visibleLineCountBottom.get()+a,c),b)}showAll(a){this._visibleLineCountBottom.set(this.lineCount-this._visibleLineCountTop.get(),a)}showModifiedLine(a,b,c){let d=a+1-(this.modifiedLineNumber+this._visibleLineCountTop.get()),e=this.modifiedLineNumber-this._visibleLineCountBottom.get()+this.lineCount-a;0===b&&d<e||1===b?this._visibleLineCountTop.set(this._visibleLineCountTop.get()+d,c):this._visibleLineCountBottom.set(this._visibleLineCountBottom.get()+e,c)}showOriginalLine(a,b,c){let d=a-this.originalLineNumber,e=this.originalLineNumber+this.lineCount-a;0===b&&d<e||1===b?this._visibleLineCountTop.set(Math.min(this._visibleLineCountTop.get()+e-d,this.getMaxVisibleLineCountTop()),c):this._visibleLineCountBottom.set(Math.min(this._visibleLineCountBottom.get()+d-e,this.getMaxVisibleLineCountBottom()),c)}collapseAll(a){this._visibleLineCountTop.set(0,a),this._visibleLineCountBottom.set(0,a)}setState(a,b,c){a=Math.max(Math.min(a,this.lineCount),0),b=Math.max(Math.min(b,this.lineCount-a),0),this._visibleLineCountTop.set(a,c),this._visibleLineCountBottom.set(b,c)}}function I(a,b,c,d){}function J(a,b,c,d){}},60654:()=>{},60894:(a,b,c)=>{"use strict";c.d(b,{LN:()=>h,aG:()=>k,uO:()=>j});var d=c(51864),e=c(58912),f=c(95554),g=c(52212);class h{getOffsetRange(a){return new e.L(this.getOffset(a.getStartPosition()),this.getOffset(a.getEndPosition()))}getRange(a){return g.Q.fromPositions(this.getPosition(a.start),this.getPosition(a.endExclusive))}getStringReplacement(a){return new i.deps.StringReplacement(this.getOffsetRange(a.range),a.text)}getTextReplacement(a){return new i.deps.TextReplacement(this.getRange(a.replaceRange),a.newText)}getTextEdit(a){let b=a.replacements.map(a=>this.getTextReplacement(a));return new i.deps.TextEdit(b)}}class i{static{this._deps=void 0}static get deps(){if(!this._deps)throw Error("Dependencies not set. Call _setDependencies first.");return this._deps}}function j(a){i._deps=a}class k extends h{constructor(a){super(),this.text=a,this.lineStartOffsetByLineIdx=[],this.lineEndOffsetByLineIdx=[],this.lineStartOffsetByLineIdx.push(0);for(let b=0;b<a.length;b++)"\n"===a.charAt(b)&&(this.lineStartOffsetByLineIdx.push(b+1),b>0&&"\r"===a.charAt(b-1)?this.lineEndOffsetByLineIdx.push(b-1):this.lineEndOffsetByLineIdx.push(b));this.lineEndOffsetByLineIdx.push(a.length)}getOffset(a){let b=this._validatePosition(a);return this.lineStartOffsetByLineIdx[b.lineNumber-1]+b.column-1}_validatePosition(a){if(a.lineNumber<1)return new f.y(1,1);let b=this.textLength.lineCount+1;if(a.lineNumber>b){let a=this.getLineLength(b);return new f.y(b,a+1)}if(a.column<1)return new f.y(a.lineNumber,1);let c=this.getLineLength(a.lineNumber);return a.column-1>c?new f.y(a.lineNumber,c+1):a}getPosition(a){let b=(0,d.iM)(this.lineStartOffsetByLineIdx,b=>b<=a),c=a-this.lineStartOffsetByLineIdx[b]+1;return new f.y(b+1,c)}get textLength(){let a=this.lineStartOffsetByLineIdx.length-1;return new i.deps.TextLength(a,this.text.length-this.lineStartOffsetByLineIdx[a])}getLineLength(a){return this.lineEndOffsetByLineIdx[a-1]-this.lineStartOffsetByLineIdx[a-1]}}},61155:()=>{},61203:(a,b,c)=>{"use strict";c.d(b,{FdG:()=>d.Fd,buw:()=>l,GuP:()=>d.Gu,Bbc:()=>d.Bb,HP_:()=>d.HP,WMx:()=>n,zRE:()=>o,sAS:()=>am,vV$:()=>ak,etE:()=>al,mc0:()=>aj,XJc:()=>a1,raQ:()=>a3,G_h:()=>a_,T9h:()=>a2,xOA:()=>a5,Inn:()=>a4,nZG:()=>a6,Q1$:()=>a0,OcU:()=>be,C5U:()=>bg,Uv:()=>bh,hsb:()=>bi,t0B:()=>bf,b1q:()=>k,EY1:()=>_,ZEf:()=>aa,yUe:()=>h,Gj6:()=>ab,w3w:()=>ad,ld8:()=>ae,$BZ:()=>af,GNm:()=>ac,TUz:()=>bN,Ztu:()=>H,YtV:()=>u,AN$:()=>A,Rbi:()=>z,f3U:()=>M,Ubg:()=>N,ECk:()=>P,p8Y:()=>O,S5J:()=>Q,By2:()=>v,i61:()=>G,WfR:()=>R,oZ8:()=>T,Xo2:()=>S,tan:()=>K,IIb:()=>F,pOz:()=>E,WL6:()=>V,P6i:()=>U,B2L:()=>Z,sjA:()=>Y,_pU:()=>X,HwT:()=>W,seu:()=>I,rm4:()=>J,QwA:()=>L,whs:()=>B,Stt:()=>D,Hng:()=>C,CgL:()=>w,sIe:()=>y,FiB:()=>x,tAP:()=>j,CU6:()=>g,t4B:()=>i,c1f:()=>aM,uNK:()=>aK,$$0:()=>aN,L4c:()=>aH,Zgs:()=>aJ,cws:()=>aI,_$n:()=>aU,eYZ:()=>aW,h9z:()=>aV,I$A:()=>aO,YSW:()=>aQ,L9Z:()=>aP,ULt:()=>aR,C1n:()=>aT,T5N:()=>aS,HDX:()=>bj,zUX:()=>bl,Qfh:()=>bm,eUu:()=>bk,Rjz:()=>br,GVV:()=>bs,fED:()=>bt,yIp:()=>bC,Yoe:()=>bB,pnl:()=>bF,P9Z:()=>bH,fiM:()=>bG,H8q:()=>bI,gtq:()=>bq,VFX:()=>bn,efJ:()=>bo,eMz:()=>bE,p7Y:()=>bp,QI5:()=>bD,lO1:()=>bz,QRv:()=>bA,CQ3:()=>bx,ijf:()=>by,uNx:()=>bu,f4y:()=>bv,C9U:()=>bw,c6Y:()=>bQ,g$2:()=>bO,dd_:()=>bP,Ux$:()=>bS,SNb:()=>bT,pmr:()=>bR,D7X:()=>bU,ILr:()=>aF,yLC:()=>aE,AjU:()=>az,K1Z:()=>aG,KoI:()=>aC,yr0:()=>aB,Xp1:()=>aA,uMG:()=>aD,yLr:()=>d.yL,fAP:()=>au,z5H:()=>av,iwL:()=>bZ,NBf:()=>bY,tYX:()=>aw,bNw:()=>ay,JPj:()=>ax,BTi:()=>t,ELA:()=>bV,HJZ:()=>bW,AlL:()=>b1,nH:()=>b_,c7i:()=>b0,er1:()=>bX,Ukx:()=>a8,Ips:()=>a9,jOE:()=>a7,xWN:()=>bb,ZBU:()=>bc,kPT:()=>ba,jr9:()=>bd,x1A:()=>d.x1,bXl:()=>p,mhZ:()=>s,gnV:()=>q,cI_:()=>r,rvE:()=>aX,HcB:()=>a$,yqq:()=>aZ,lWP:()=>aY,k5u:()=>bL,sbQ:()=>bM,vwp:()=>m,JO0:()=>d.JO,pft:()=>bK,U4U:()=>bJ,DSL:()=>ah,f9l:()=>ag});var d=c(66981),e=c(76302),f=c(81034);let g=(0,d.x1)("foreground",{dark:"#CCCCCC",light:"#616161",hcDark:"#FFFFFF",hcLight:"#292929"},e.kg(1756,"Overall foreground color. This color is only used if not overridden by a component."));(0,d.x1)("disabledForeground",{dark:"#CCCCCC80",light:"#61616180",hcDark:"#A5A5A5",hcLight:"#7F7F7F"},e.kg(1757,"Overall foreground for disabled elements. This color is only used if not overridden by a component.")),(0,d.x1)("errorForeground",{dark:"#F48771",light:"#A1260D",hcDark:"#F48771",hcLight:"#B5200D"},e.kg(1758,"Overall foreground color for error messages. This color is only used if not overridden by a component."));let h=(0,d.x1)("descriptionForeground",{light:"#717171",dark:(0,d.JO)(g,.7),hcDark:(0,d.JO)(g,.7),hcLight:(0,d.JO)(g,.7)},e.kg(1759,"Foreground color for description text providing additional information, for example for a label.")),i=(0,d.x1)("icon.foreground",{dark:"#C5C5C5",light:"#424242",hcDark:"#FFFFFF",hcLight:"#292929"},e.kg(1760,"The default color for icons in the workbench.")),j=(0,d.x1)("focusBorder",{dark:"#007FD4",light:"#0090F1",hcDark:"#F38518",hcLight:"#006BBD"},e.kg(1761,"Overall border color for focused elements. This color is only used if not overridden by a component.")),k=(0,d.x1)("contrastBorder",{light:null,dark:null,hcDark:"#6FC3DF",hcLight:"#0F4A85"},e.kg(1762,"An extra border around elements to separate them from others for greater contrast.")),l=(0,d.x1)("contrastActiveBorder",{light:null,dark:null,hcDark:j,hcLight:j},e.kg(1763,"An extra border around active elements to separate them from others for greater contrast."));(0,d.x1)("selection.background",null,e.kg(1764,"The background color of text selections in the workbench (e.g. for input fields or text areas). Note that this does not apply to selections within the editor."));let m=(0,d.x1)("textLink.foreground",{light:"#006AB1",dark:"#3794FF",hcDark:"#21A6FF",hcLight:"#0F4A85"},e.kg(1765,"Foreground color for links in text."));(0,d.x1)("textLink.activeForeground",{light:"#006AB1",dark:"#3794FF",hcDark:"#21A6FF",hcLight:"#0F4A85"},e.kg(1766,"Foreground color for links in text when clicked on and on mouse hover.")),(0,d.x1)("textSeparator.foreground",{light:"#0000002e",dark:"#ffffff2e",hcDark:f.Q1.black,hcLight:"#292929"},e.kg(1767,"Color for text separators.")),(0,d.x1)("textPreformat.foreground",{light:"#A31515",dark:"#D7BA7D",hcDark:"#000000",hcLight:"#FFFFFF"},e.kg(1768,"Foreground color for preformatted text segments.")),(0,d.x1)("textPreformat.background",{light:"#0000001A",dark:"#FFFFFF1A",hcDark:"#FFFFFF",hcLight:"#09345f"},e.kg(1769,"Background color for preformatted text segments.")),(0,d.x1)("textBlockQuote.background",{light:"#f2f2f2",dark:"#222222",hcDark:null,hcLight:"#F2F2F2"},e.kg(1770,"Background color for block quotes in text.")),(0,d.x1)("textBlockQuote.border",{light:"#007acc80",dark:"#007acc80",hcDark:f.Q1.white,hcLight:"#292929"},e.kg(1771,"Border color for block quotes in text.")),(0,d.x1)("textCodeBlock.background",{light:"#dcdcdc66",dark:"#0a0a0a66",hcDark:f.Q1.black,hcLight:"#F2F2F2"},e.kg(1772,"Background color for code blocks in text.")),(0,d.x1)("sash.hoverBorder",j,e.kg(1977,"Border color of active sashes."));let n=(0,d.x1)("badge.background",{dark:"#4D4D4D",light:"#C4C4C4",hcDark:f.Q1.black,hcLight:"#0F4A85"},e.kg(1978,"Badge background color. Badges are small information labels, e.g. for search results count.")),o=(0,d.x1)("badge.foreground",{dark:f.Q1.white,light:"#333",hcDark:f.Q1.white,hcLight:f.Q1.white},e.kg(1979,"Badge foreground color. Badges are small information labels, e.g. for search results count."));(0,d.x1)("activityWarningBadge.foreground",{dark:f.Q1.black.lighten(.2),light:f.Q1.white,hcDark:null,hcLight:f.Q1.black.lighten(.2)},e.kg(1980,"Foreground color of the warning activity badge")),(0,d.x1)("activityWarningBadge.background",{dark:"#CCA700",light:"#BF8803",hcDark:null,hcLight:"#CCA700"},e.kg(1981,"Background color of the warning activity badge")),(0,d.x1)("activityErrorBadge.foreground",{dark:f.Q1.black.lighten(.2),light:f.Q1.white,hcDark:null,hcLight:f.Q1.black.lighten(.2)},e.kg(1982,"Foreground color of the error activity badge")),(0,d.x1)("activityErrorBadge.background",{dark:"#F14C4C",light:"#E51400",hcDark:null,hcLight:"#F14C4C"},e.kg(1983,"Background color of the error activity badge"));let p=(0,d.x1)("scrollbar.shadow",{dark:"#000000",light:"#DDDDDD",hcDark:null,hcLight:null},e.kg(1984,"Scrollbar shadow to indicate that the view is scrolled.")),q=(0,d.x1)("scrollbarSlider.background",{dark:f.Q1.fromHex("#797979").transparent(.4),light:f.Q1.fromHex("#646464").transparent(.4),hcDark:(0,d.JO)(k,.6),hcLight:(0,d.JO)(k,.4)},e.kg(1985,"Scrollbar slider background color.")),r=(0,d.x1)("scrollbarSlider.hoverBackground",{dark:f.Q1.fromHex("#646464").transparent(.7),light:f.Q1.fromHex("#646464").transparent(.7),hcDark:(0,d.JO)(k,.8),hcLight:(0,d.JO)(k,.8)},e.kg(1986,"Scrollbar slider background color when hovering.")),s=(0,d.x1)("scrollbarSlider.activeBackground",{dark:f.Q1.fromHex("#BFBFBF").transparent(.4),light:f.Q1.fromHex("#000000").transparent(.6),hcDark:k,hcLight:k},e.kg(1987,"Scrollbar slider background color when clicked on.")),t=(0,d.x1)("progressBar.background",{dark:f.Q1.fromHex("#0E70C0"),light:f.Q1.fromHex("#0E70C0"),hcDark:k,hcLight:k},e.kg(1988,"Background color of the progress bar that can show for long running operations."));(0,d.x1)("chart.line",{dark:"#236B8E",light:"#236B8E",hcDark:"#236B8E",hcLight:"#236B8E"},e.kg(1989,"Line color for the chart.")),(0,d.x1)("chart.axis",{dark:f.Q1.fromHex("#BFBFBF").transparent(.4),light:f.Q1.fromHex("#000000").transparent(.6),hcDark:k,hcLight:k},e.kg(1990,"Axis color for the chart.")),(0,d.x1)("chart.guide",{dark:f.Q1.fromHex("#BFBFBF").transparent(.2),light:f.Q1.fromHex("#000000").transparent(.2),hcDark:k,hcLight:k},e.kg(1991,"Guide line for the chart."));let u=(0,d.x1)("editor.background",{light:"#ffffff",dark:"#1E1E1E",hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1781,"Editor background color.")),v=(0,d.x1)("editor.foreground",{light:"#333333",dark:"#BBBBBB",hcDark:f.Q1.white,hcLight:g},e.kg(1782,"Editor default foreground color."));(0,d.x1)("editorStickyScroll.background",u,e.kg(1783,"Background color of sticky scroll in the editor")),(0,d.x1)("editorStickyScrollGutter.background",u,e.kg(1784,"Background color of the gutter part of sticky scroll in the editor")),(0,d.x1)("editorStickyScrollHover.background",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:null,hcLight:f.Q1.fromHex("#0F4A85").transparent(.1)},e.kg(1785,"Background color of sticky scroll on hover in the editor")),(0,d.x1)("editorStickyScroll.border",{dark:null,light:null,hcDark:k,hcLight:k},e.kg(1786,"Border color of sticky scroll in the editor")),(0,d.x1)("editorStickyScroll.shadow",p,e.kg(1787," Shadow color of sticky scroll in the editor"));let w=(0,d.x1)("editorWidget.background",{dark:"#252526",light:"#F3F3F3",hcDark:"#0C141F",hcLight:f.Q1.white},e.kg(1788,"Background color of editor widgets, such as find/replace.")),x=(0,d.x1)("editorWidget.foreground",g,e.kg(1789,"Foreground color of editor widgets, such as find/replace.")),y=(0,d.x1)("editorWidget.border",{dark:"#454545",light:"#C8C8C8",hcDark:k,hcLight:k},e.kg(1790,"Border color of editor widgets. The color is only used if the widget chooses to have a border and if the color is not overridden by a widget."));(0,d.x1)("editorWidget.resizeBorder",null,e.kg(1791,"Border color of the resize bar of editor widgets. The color is only used if the widget chooses to have a resize border and if the color is not overridden by a widget.")),(0,d.x1)("editorError.background",null,e.kg(1792,"Background color of error text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);let z=(0,d.x1)("editorError.foreground",{dark:"#F14C4C",light:"#E51400",hcDark:"#F48771",hcLight:"#B5200D"},e.kg(1793,"Foreground color of error squigglies in the editor.")),A=(0,d.x1)("editorError.border",{dark:null,light:null,hcDark:f.Q1.fromHex("#E47777").transparent(.8),hcLight:"#B5200D"},e.kg(1794,"If set, color of double underlines for errors in the editor.")),B=(0,d.x1)("editorWarning.background",null,e.kg(1795,"Background color of warning text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0),C=(0,d.x1)("editorWarning.foreground",{dark:"#CCA700",light:"#BF8803",hcDark:"#FFD370",hcLight:"#895503"},e.kg(1796,"Foreground color of warning squigglies in the editor.")),D=(0,d.x1)("editorWarning.border",{dark:null,light:null,hcDark:f.Q1.fromHex("#FFCC00").transparent(.8),hcLight:f.Q1.fromHex("#FFCC00").transparent(.8)},e.kg(1797,"If set, color of double underlines for warnings in the editor."));(0,d.x1)("editorInfo.background",null,e.kg(1798,"Background color of info text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);let E=(0,d.x1)("editorInfo.foreground",{dark:"#3794FF",light:"#1a85ff",hcDark:"#3794FF",hcLight:"#1a85ff"},e.kg(1799,"Foreground color of info squigglies in the editor.")),F=(0,d.x1)("editorInfo.border",{dark:null,light:null,hcDark:f.Q1.fromHex("#3794FF").transparent(.8),hcLight:"#292929"},e.kg(1800,"If set, color of double underlines for infos in the editor.")),G=(0,d.x1)("editorHint.foreground",{dark:f.Q1.fromHex("#eeeeee").transparent(.7),light:"#6c6c6c",hcDark:null,hcLight:null},e.kg(1801,"Foreground color of hint squigglies in the editor."));(0,d.x1)("editorHint.border",{dark:null,light:null,hcDark:f.Q1.fromHex("#eeeeee").transparent(.8),hcLight:"#292929"},e.kg(1802,"If set, color of double underlines for hints in the editor."));let H=(0,d.x1)("editorLink.activeForeground",{dark:"#4E94CE",light:f.Q1.blue,hcDark:f.Q1.cyan,hcLight:"#292929"},e.kg(1803,"Color of active links.")),I=(0,d.x1)("editor.selectionBackground",{light:"#ADD6FF",dark:"#264F78",hcDark:"#f3f518",hcLight:"#0F4A85"},e.kg(1804,"Color of the editor selection.")),J=(0,d.x1)("editor.selectionForeground",{light:null,dark:null,hcDark:"#000000",hcLight:f.Q1.white},e.kg(1805,"Color of the selected text for high contrast.")),K=(0,d.x1)("editor.inactiveSelectionBackground",{light:(0,d.JO)(I,.5),dark:(0,d.JO)(I,.5),hcDark:(0,d.JO)(I,.7),hcLight:(0,d.JO)(I,.5)},e.kg(1806,"Color of the selection in an inactive editor. The color must not be opaque so as not to hide underlying decorations."),!0),L=(0,d.x1)("editor.selectionHighlightBackground",{light:(0,d.oG)(I,u,.3,.6),dark:(0,d.oG)(I,u,.3,.6),hcDark:null,hcLight:null},e.kg(1807,"Color for regions with the same content as the selection. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("editor.selectionHighlightBorder",{light:null,dark:null,hcDark:l,hcLight:l},e.kg(1808,"Border color for regions with the same content as the selection.")),(0,d.x1)("editor.compositionBorder",{light:"#000000",dark:"#ffffff",hcLight:"#000000",hcDark:"#ffffff"},e.kg(1809,"The border color for an IME composition.")),(0,d.x1)("editor.findMatchBackground",{light:"#A8AC94",dark:"#515C6A",hcDark:null,hcLight:null},e.kg(1810,"Color of the current search match."));let M=(0,d.x1)("editor.findMatchForeground",null,e.kg(1811,"Text color of the current search match.")),N=(0,d.x1)("editor.findMatchHighlightBackground",{light:"#EA5C0055",dark:"#EA5C0055",hcDark:null,hcLight:null},e.kg(1812,"Color of the other search matches. The color must not be opaque so as not to hide underlying decorations."),!0),O=(0,d.x1)("editor.findMatchHighlightForeground",null,e.kg(1813,"Foreground color of the other search matches."),!0);(0,d.x1)("editor.findRangeHighlightBackground",{dark:"#3a3d4166",light:"#b4b4b44d",hcDark:null,hcLight:null},e.kg(1814,"Color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0),(0,d.x1)("editor.findMatchBorder",{light:null,dark:null,hcDark:l,hcLight:l},e.kg(1815,"Border color of the current search match."));let P=(0,d.x1)("editor.findMatchHighlightBorder",{light:null,dark:null,hcDark:l,hcLight:l},e.kg(1816,"Border color of the other search matches.")),Q=(0,d.x1)("editor.findRangeHighlightBorder",{dark:null,light:null,hcDark:(0,d.JO)(l,.4),hcLight:(0,d.JO)(l,.4)},e.kg(1817,"Border color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("editor.hoverHighlightBackground",{light:"#ADD6FF26",dark:"#264f7840",hcDark:"#ADD6FF26",hcLight:null},e.kg(1818,"Highlight below the word for which a hover is shown. The color must not be opaque so as not to hide underlying decorations."),!0);let R=(0,d.x1)("editorHoverWidget.background",w,e.kg(1819,"Background color of the editor hover.")),S=(0,d.x1)("editorHoverWidget.foreground",x,e.kg(1820,"Foreground color of the editor hover.")),T=(0,d.x1)("editorHoverWidget.border",y,e.kg(1821,"Border color of the editor hover."));(0,d.x1)("editorHoverWidget.statusBarBackground",{dark:(0,d.a)(R,.2),light:(0,d.e$)(R,.05),hcDark:w,hcLight:w},e.kg(1822,"Background color of the editor hover status bar."));let U=(0,d.x1)("editorInlayHint.foreground",{dark:"#969696",light:"#969696",hcDark:f.Q1.white,hcLight:f.Q1.black},e.kg(1823,"Foreground color of inline hints")),V=(0,d.x1)("editorInlayHint.background",{dark:(0,d.JO)(n,.1),light:(0,d.JO)(n,.1),hcDark:(0,d.JO)(f.Q1.white,.1),hcLight:(0,d.JO)(n,.1)},e.kg(1824,"Background color of inline hints")),W=(0,d.x1)("editorInlayHint.typeForeground",U,e.kg(1825,"Foreground color of inline hints for types")),X=(0,d.x1)("editorInlayHint.typeBackground",V,e.kg(1826,"Background color of inline hints for types")),Y=(0,d.x1)("editorInlayHint.parameterForeground",U,e.kg(1827,"Foreground color of inline hints for parameters")),Z=(0,d.x1)("editorInlayHint.parameterBackground",V,e.kg(1828,"Background color of inline hints for parameters")),$=(0,d.x1)("editorLightBulb.foreground",{dark:"#FFCC00",light:"#DDB100",hcDark:"#FFCC00",hcLight:"#007ACC"},e.kg(1829,"The color used for the lightbulb actions icon."));(0,d.x1)("editorLightBulbAutoFix.foreground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},e.kg(1830,"The color used for the lightbulb auto fix actions icon.")),(0,d.x1)("editorLightBulbAi.foreground",$,e.kg(1831,"The color used for the lightbulb AI icon.")),(0,d.x1)("editor.snippetTabstopHighlightBackground",{dark:new f.Q1(new f.bU(124,124,124,.3)),light:new f.Q1(new f.bU(10,50,100,.2)),hcDark:new f.Q1(new f.bU(124,124,124,.3)),hcLight:new f.Q1(new f.bU(10,50,100,.2))},e.kg(1832,"Highlight background color of a snippet tabstop.")),(0,d.x1)("editor.snippetTabstopHighlightBorder",null,e.kg(1833,"Highlight border color of a snippet tabstop.")),(0,d.x1)("editor.snippetFinalTabstopHighlightBackground",null,e.kg(1834,"Highlight background color of the final tabstop of a snippet.")),(0,d.x1)("editor.snippetFinalTabstopHighlightBorder",{dark:"#525252",light:new f.Q1(new f.bU(10,50,100,.5)),hcDark:"#525252",hcLight:"#292929"},e.kg(1835,"Highlight border color of the final tabstop of a snippet."));let _=new f.Q1(new f.bU(155,185,85,.2)),aa=new f.Q1(new f.bU(255,0,0,.2)),ab=(0,d.x1)("diffEditor.insertedTextBackground",{dark:"#9ccc2c33",light:"#9ccc2c40",hcDark:null,hcLight:null},e.kg(1836,"Background color for text that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0),ac=(0,d.x1)("diffEditor.removedTextBackground",{dark:"#ff000033",light:"#ff000033",hcDark:null,hcLight:null},e.kg(1837,"Background color for text that got removed. The color must not be opaque so as not to hide underlying decorations."),!0),ad=(0,d.x1)("diffEditor.insertedLineBackground",{dark:_,light:_,hcDark:null,hcLight:null},e.kg(1838,"Background color for lines that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("diffEditor.removedLineBackground",{dark:aa,light:aa,hcDark:null,hcLight:null},e.kg(1839,"Background color for lines that got removed. The color must not be opaque so as not to hide underlying decorations."),!0),(0,d.x1)("diffEditorGutter.insertedLineBackground",null,e.kg(1840,"Background color for the margin where lines got inserted.")),(0,d.x1)("diffEditorGutter.removedLineBackground",null,e.kg(1841,"Background color for the margin where lines got removed."));let ae=(0,d.x1)("diffEditorOverview.insertedForeground",null,e.kg(1842,"Diff overview ruler foreground for inserted content.")),af=(0,d.x1)("diffEditorOverview.removedForeground",null,e.kg(1843,"Diff overview ruler foreground for removed content."));(0,d.x1)("diffEditor.insertedTextBorder",{dark:null,light:null,hcDark:"#33ff2eff",hcLight:"#374E06"},e.kg(1844,"Outline color for the text that got inserted.")),(0,d.x1)("diffEditor.removedTextBorder",{dark:null,light:null,hcDark:"#FF008F",hcLight:"#AD0707"},e.kg(1845,"Outline color for text that got removed.")),(0,d.x1)("diffEditor.border",{dark:null,light:null,hcDark:k,hcLight:k},e.kg(1846,"Border color between the two text editors.")),(0,d.x1)("diffEditor.diagonalFill",{dark:"#cccccc33",light:"#22222233",hcDark:null,hcLight:null},e.kg(1847,"Color of the diff editor's diagonal fill. The diagonal fill is used in side-by-side diff views.")),(0,d.x1)("diffEditor.unchangedRegionBackground","sideBar.background",e.kg(1848,"The background color of unchanged blocks in the diff editor.")),(0,d.x1)("diffEditor.unchangedRegionForeground","foreground",e.kg(1849,"The foreground color of unchanged blocks in the diff editor.")),(0,d.x1)("diffEditor.unchangedCodeBackground",{dark:"#74747429",light:"#b8b8b829",hcDark:null,hcLight:null},e.kg(1850,"The background color of unchanged code in the diff editor."));let ag=(0,d.x1)("widget.shadow",{dark:(0,d.JO)(f.Q1.black,.36),light:(0,d.JO)(f.Q1.black,.16),hcDark:null,hcLight:null},e.kg(1851,"Shadow color of widgets such as find/replace inside the editor.")),ah=(0,d.x1)("widget.border",{dark:null,light:null,hcDark:k,hcLight:k},e.kg(1852,"Border color of widgets such as find/replace inside the editor.")),ai=(0,d.x1)("toolbar.hoverBackground",{dark:"#5a5d5e50",light:"#b8b8b850",hcDark:null,hcLight:null},e.kg(1853,"Toolbar background when hovering over actions using the mouse"));(0,d.x1)("toolbar.hoverOutline",{dark:null,light:null,hcDark:l,hcLight:l},e.kg(1854,"Toolbar outline when hovering over actions using the mouse")),(0,d.x1)("toolbar.activeBackground",{dark:(0,d.a)(ai,.1),light:(0,d.e$)(ai,.1),hcDark:null,hcLight:null},e.kg(1855,"Toolbar background when holding the mouse over actions"));let aj=(0,d.x1)("breadcrumb.foreground",(0,d.JO)(g,.8),e.kg(1856,"Color of focused breadcrumb items.")),ak=(0,d.x1)("breadcrumb.background",u,e.kg(1857,"Background color of breadcrumb items.")),al=(0,d.x1)("breadcrumb.focusForeground",{light:(0,d.e$)(g,.2),dark:(0,d.a)(g,.1),hcDark:(0,d.a)(g,.1),hcLight:(0,d.a)(g,.1)},e.kg(1858,"Color of focused breadcrumb items.")),am=(0,d.x1)("breadcrumb.activeSelectionForeground",{light:(0,d.e$)(g,.2),dark:(0,d.a)(g,.1),hcDark:(0,d.a)(g,.1),hcLight:(0,d.a)(g,.1)},e.kg(1859,"Color of selected breadcrumb items."));(0,d.x1)("breadcrumbPicker.background",w,e.kg(1860,"Background color of breadcrumb item picker."));let an=f.Q1.fromHex("#40C8AE").transparent(.5),ao=f.Q1.fromHex("#40A6FF").transparent(.5),ap=f.Q1.fromHex("#606060").transparent(.4),aq=(0,d.x1)("merge.currentHeaderBackground",{dark:an,light:an,hcDark:null,hcLight:null},e.kg(1861,"Current header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("merge.currentContentBackground",(0,d.JO)(aq,.4),e.kg(1862,"Current content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);let ar=(0,d.x1)("merge.incomingHeaderBackground",{dark:ao,light:ao,hcDark:null,hcLight:null},e.kg(1863,"Incoming header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("merge.incomingContentBackground",(0,d.JO)(ar,.4),e.kg(1864,"Incoming content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);let as=(0,d.x1)("merge.commonHeaderBackground",{dark:ap,light:ap,hcDark:null,hcLight:null},e.kg(1865,"Common ancestor header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);(0,d.x1)("merge.commonContentBackground",(0,d.JO)(as,.4),e.kg(1866,"Common ancestor content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);let at=(0,d.x1)("merge.border",{dark:null,light:null,hcDark:"#C3DF6F",hcLight:"#007ACC"},e.kg(1867,"Border color on headers and the splitter in inline merge-conflicts."));(0,d.x1)("editorOverviewRuler.currentContentForeground",{dark:(0,d.JO)(aq,1),light:(0,d.JO)(aq,1),hcDark:at,hcLight:at},e.kg(1868,"Current overview ruler foreground for inline merge-conflicts.")),(0,d.x1)("editorOverviewRuler.incomingContentForeground",{dark:(0,d.JO)(ar,1),light:(0,d.JO)(ar,1),hcDark:at,hcLight:at},e.kg(1869,"Incoming overview ruler foreground for inline merge-conflicts.")),(0,d.x1)("editorOverviewRuler.commonContentForeground",{dark:(0,d.JO)(as,1),light:(0,d.JO)(as,1),hcDark:at,hcLight:at},e.kg(1870,"Common ancestor overview ruler foreground for inline merge-conflicts."));let au=(0,d.x1)("editorOverviewRuler.findMatchForeground",{dark:"#d186167e",light:"#d186167e",hcDark:"#AB5A00",hcLight:"#AB5A00"},e.kg(1871,"Overview ruler marker color for find matches. The color must not be opaque so as not to hide underlying decorations."),!0),av=(0,d.x1)("editorOverviewRuler.selectionHighlightForeground","#A0A0A0CC",e.kg(1872,"Overview ruler marker color for selection highlights. The color must not be opaque so as not to hide underlying decorations."),!0),aw=(0,d.x1)("problemsErrorIcon.foreground",z,e.kg(1873,"The color used for the problems error icon.")),ax=(0,d.x1)("problemsWarningIcon.foreground",C,e.kg(1874,"The color used for the problems warning icon.")),ay=(0,d.x1)("problemsInfoIcon.foreground",E,e.kg(1875,"The color used for the problems info icon.")),az=(0,d.x1)("minimap.findMatchHighlight",{light:"#d18616",dark:"#d18616",hcDark:"#AB5A00",hcLight:"#0F4A85"},e.kg(1966,"Minimap marker color for find matches."),!0),aA=(0,d.x1)("minimap.selectionOccurrenceHighlight",{light:"#c9c9c9",dark:"#676767",hcDark:"#ffffff",hcLight:"#0F4A85"},e.kg(1967,"Minimap marker color for repeating editor selections."),!0),aB=(0,d.x1)("minimap.selectionHighlight",{light:"#ADD6FF",dark:"#264F78",hcDark:"#ffffff",hcLight:"#0F4A85"},e.kg(1968,"Minimap marker color for the editor selection."),!0),aC=(0,d.x1)("minimap.infoHighlight",{dark:E,light:E,hcDark:F,hcLight:F},e.kg(1969,"Minimap marker color for infos.")),aD=(0,d.x1)("minimap.warningHighlight",{dark:C,light:C,hcDark:D,hcLight:D},e.kg(1970,"Minimap marker color for warnings.")),aE=(0,d.x1)("minimap.errorHighlight",{dark:new f.Q1(new f.bU(255,18,18,.7)),light:new f.Q1(new f.bU(255,18,18,.7)),hcDark:new f.Q1(new f.bU(255,50,50,1)),hcLight:"#B5200D"},e.kg(1971,"Minimap marker color for errors.")),aF=(0,d.x1)("minimap.background",null,e.kg(1972,"Minimap background color.")),aG=(0,d.x1)("minimap.foregroundOpacity",f.Q1.fromHex("#000f"),e.kg(1973,'Opacity of foreground elements rendered in the minimap. For example, "#000000c0" will render the elements with 75% opacity.'));(0,d.x1)("minimapSlider.background",(0,d.JO)(q,.5),e.kg(1974,"Minimap slider background color.")),(0,d.x1)("minimapSlider.hoverBackground",(0,d.JO)(r,.5),e.kg(1975,"Minimap slider background color when hovering.")),(0,d.x1)("minimapSlider.activeBackground",(0,d.JO)(s,.5),e.kg(1976,"Minimap slider background color when clicked on.")),(0,d.x1)("charts.foreground",g,e.kg(1773,"The foreground color used in charts.")),(0,d.x1)("charts.lines",(0,d.JO)(g,.5),e.kg(1774,"The color used for horizontal lines in charts.")),(0,d.x1)("charts.red",z,e.kg(1775,"The red color used in chart visualizations.")),(0,d.x1)("charts.blue",E,e.kg(1776,"The blue color used in chart visualizations.")),(0,d.x1)("charts.yellow",C,e.kg(1777,"The yellow color used in chart visualizations.")),(0,d.x1)("charts.orange",az,e.kg(1778,"The orange color used in chart visualizations.")),(0,d.x1)("charts.green",{dark:"#89D185",light:"#388A34",hcDark:"#89D185",hcLight:"#374e06"},e.kg(1779,"The green color used in chart visualizations.")),(0,d.x1)("charts.purple",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},e.kg(1780,"The purple color used in chart visualizations."));let aH=(0,d.x1)("input.background",{dark:"#3C3C3C",light:f.Q1.white,hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1876,"Input box background.")),aI=(0,d.x1)("input.foreground",g,e.kg(1877,"Input box foreground.")),aJ=(0,d.x1)("input.border",{dark:null,light:null,hcDark:k,hcLight:k},e.kg(1878,"Input box border.")),aK=(0,d.x1)("inputOption.activeBorder",{dark:"#007ACC",light:"#007ACC",hcDark:k,hcLight:k},e.kg(1879,"Border color of activated options in input fields.")),aL=(0,d.x1)("inputOption.hoverBackground",{dark:"#5a5d5e80",light:"#b8b8b850",hcDark:null,hcLight:null},e.kg(1880,"Background color of activated options in input fields.")),aM=(0,d.x1)("inputOption.activeBackground",{dark:(0,d.JO)(j,.4),light:(0,d.JO)(j,.2),hcDark:f.Q1.transparent,hcLight:f.Q1.transparent},e.kg(1881,"Background hover color of options in input fields.")),aN=(0,d.x1)("inputOption.activeForeground",{dark:f.Q1.white,light:f.Q1.black,hcDark:g,hcLight:g},e.kg(1882,"Foreground color of activated options in input fields."));(0,d.x1)("input.placeholderForeground",{light:(0,d.JO)(g,.5),dark:(0,d.JO)(g,.5),hcDark:(0,d.JO)(g,.7),hcLight:(0,d.JO)(g,.7)},e.kg(1883,"Input box foreground color for placeholder text."));let aO=(0,d.x1)("inputValidation.infoBackground",{dark:"#063B49",light:"#D6ECF2",hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1884,"Input validation background color for information severity.")),aP=(0,d.x1)("inputValidation.infoForeground",{dark:null,light:null,hcDark:null,hcLight:g},e.kg(1885,"Input validation foreground color for information severity.")),aQ=(0,d.x1)("inputValidation.infoBorder",{dark:"#007acc",light:"#007acc",hcDark:k,hcLight:k},e.kg(1886,"Input validation border color for information severity.")),aR=(0,d.x1)("inputValidation.warningBackground",{dark:"#352A05",light:"#F6F5D2",hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1887,"Input validation background color for warning severity.")),aS=(0,d.x1)("inputValidation.warningForeground",{dark:null,light:null,hcDark:null,hcLight:g},e.kg(1888,"Input validation foreground color for warning severity.")),aT=(0,d.x1)("inputValidation.warningBorder",{dark:"#B89500",light:"#B89500",hcDark:k,hcLight:k},e.kg(1889,"Input validation border color for warning severity.")),aU=(0,d.x1)("inputValidation.errorBackground",{dark:"#5A1D1D",light:"#F2DEDE",hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1890,"Input validation background color for error severity.")),aV=(0,d.x1)("inputValidation.errorForeground",{dark:null,light:null,hcDark:null,hcLight:g},e.kg(1891,"Input validation foreground color for error severity.")),aW=(0,d.x1)("inputValidation.errorBorder",{dark:"#BE1100",light:"#BE1100",hcDark:k,hcLight:k},e.kg(1892,"Input validation border color for error severity.")),aX=(0,d.x1)("dropdown.background",{dark:"#3C3C3C",light:f.Q1.white,hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1893,"Dropdown background.")),aY=(0,d.x1)("dropdown.listBackground",{dark:null,light:null,hcDark:f.Q1.black,hcLight:f.Q1.white},e.kg(1894,"Dropdown list background.")),aZ=(0,d.x1)("dropdown.foreground",{dark:"#F0F0F0",light:g,hcDark:f.Q1.white,hcLight:g},e.kg(1895,"Dropdown foreground.")),a$=(0,d.x1)("dropdown.border",{dark:aX,light:"#CECECE",hcDark:k,hcLight:k},e.kg(1896,"Dropdown border.")),a_=(0,d.x1)("button.foreground",f.Q1.white,e.kg(1897,"Button foreground color.")),a0=(0,d.x1)("button.separator",(0,d.JO)(a_,.4),e.kg(1898,"Button separator color.")),a1=(0,d.x1)("button.background",{dark:"#0E639C",light:"#007ACC",hcDark:null,hcLight:"#0F4A85"},e.kg(1899,"Button background color.")),a2=(0,d.x1)("button.hoverBackground",{dark:(0,d.a)(a1,.2),light:(0,d.e$)(a1,.2),hcDark:a1,hcLight:a1},e.kg(1900,"Button background color when hovering.")),a3=(0,d.x1)("button.border",k,e.kg(1901,"Button border color.")),a4=(0,d.x1)("button.secondaryForeground",{dark:f.Q1.white,light:f.Q1.white,hcDark:f.Q1.white,hcLight:g},e.kg(1902,"Secondary button foreground color.")),a5=(0,d.x1)("button.secondaryBackground",{dark:"#3A3D41",light:"#5F6A79",hcDark:null,hcLight:f.Q1.white},e.kg(1903,"Secondary button background color.")),a6=(0,d.x1)("button.secondaryHoverBackground",{dark:(0,d.a)(a5,.2),light:(0,d.e$)(a5,.2),hcDark:null,hcLight:null},e.kg(1904,"Secondary button background color when hovering.")),a7=(0,d.x1)("radio.activeForeground",aN,e.kg(1905,"Foreground color of active radio option.")),a8=(0,d.x1)("radio.activeBackground",aM,e.kg(1906,"Background color of active radio option.")),a9=(0,d.x1)("radio.activeBorder",aK,e.kg(1907,"Border color of the active radio option.")),ba=(0,d.x1)("radio.inactiveForeground",null,e.kg(1908,"Foreground color of inactive radio option.")),bb=(0,d.x1)("radio.inactiveBackground",null,e.kg(1909,"Background color of inactive radio option.")),bc=(0,d.x1)("radio.inactiveBorder",{light:(0,d.JO)(a7,.2),dark:(0,d.JO)(a7,.2),hcDark:(0,d.JO)(a7,.4),hcLight:(0,d.JO)(a7,.2)},e.kg(1910,"Border color of the inactive radio option.")),bd=(0,d.x1)("radio.inactiveHoverBackground",aL,e.kg(1911,"Background color of inactive active radio option when hovering.")),be=(0,d.x1)("checkbox.background",aX,e.kg(1912,"Background color of checkbox widget."));(0,d.x1)("checkbox.selectBackground",w,e.kg(1913,"Background color of checkbox widget when the element it's in is selected."));let bf=(0,d.x1)("checkbox.foreground",aZ,e.kg(1914,"Foreground color of checkbox widget.")),bg=(0,d.x1)("checkbox.border",a$,e.kg(1915,"Border color of checkbox widget."));(0,d.x1)("checkbox.selectBorder",i,e.kg(1916,"Border color of checkbox widget when the element it's in is selected."));let bh=(0,d.x1)("checkbox.disabled.background",{op:7,color:be,with:bf,ratio:.33},e.kg(1917,"Background of a disabled checkbox.")),bi=(0,d.x1)("checkbox.disabled.foreground",{op:7,color:bf,with:be,ratio:.33},e.kg(1918,"Foreground of a disabled checkbox.")),bj=(0,d.x1)("keybindingLabel.background",{dark:new f.Q1(new f.bU(128,128,128,.17)),light:new f.Q1(new f.bU(221,221,221,.4)),hcDark:f.Q1.transparent,hcLight:f.Q1.transparent},e.kg(1919,"Keybinding label background color. The keybinding label is used to represent a keyboard shortcut.")),bk=(0,d.x1)("keybindingLabel.foreground",{dark:f.Q1.fromHex("#CCCCCC"),light:f.Q1.fromHex("#555555"),hcDark:f.Q1.white,hcLight:g},e.kg(1920,"Keybinding label foreground color. The keybinding label is used to represent a keyboard shortcut.")),bl=(0,d.x1)("keybindingLabel.border",{dark:new f.Q1(new f.bU(51,51,51,.6)),light:new f.Q1(new f.bU(204,204,204,.4)),hcDark:new f.Q1(new f.bU(111,195,223)),hcLight:k},e.kg(1921,"Keybinding label border color. The keybinding label is used to represent a keyboard shortcut.")),bm=(0,d.x1)("keybindingLabel.bottomBorder",{dark:new f.Q1(new f.bU(68,68,68,.6)),light:new f.Q1(new f.bU(187,187,187,.4)),hcDark:new f.Q1(new f.bU(111,195,223)),hcLight:g},e.kg(1922,"Keybinding label border bottom color. The keybinding label is used to represent a keyboard shortcut.")),bn=(0,d.x1)("list.focusBackground",null,e.kg(1923,"List/Tree background color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bo=(0,d.x1)("list.focusForeground",null,e.kg(1924,"List/Tree foreground color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bp=(0,d.x1)("list.focusOutline",{dark:j,light:j,hcDark:l,hcLight:l},e.kg(1925,"List/Tree outline color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bq=(0,d.x1)("list.focusAndSelectionOutline",null,e.kg(1926,"List/Tree outline color for the focused item when the list/tree is active and selected. An active list/tree has keyboard focus, an inactive does not.")),br=(0,d.x1)("list.activeSelectionBackground",{dark:"#04395E",light:"#0060C0",hcDark:null,hcLight:f.Q1.fromHex("#0F4A85").transparent(.1)},e.kg(1927,"List/Tree background color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bs=(0,d.x1)("list.activeSelectionForeground",{dark:f.Q1.white,light:f.Q1.white,hcDark:null,hcLight:null},e.kg(1928,"List/Tree foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bt=(0,d.x1)("list.activeSelectionIconForeground",null,e.kg(1929,"List/Tree icon foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),bu=(0,d.x1)("list.inactiveSelectionBackground",{dark:"#37373D",light:"#E4E6F1",hcDark:null,hcLight:f.Q1.fromHex("#0F4A85").transparent(.1)},e.kg(1930,"List/Tree background color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),bv=(0,d.x1)("list.inactiveSelectionForeground",null,e.kg(1931,"List/Tree foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),bw=(0,d.x1)("list.inactiveSelectionIconForeground",null,e.kg(1932,"List/Tree icon foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),bx=(0,d.x1)("list.inactiveFocusBackground",null,e.kg(1933,"List/Tree background color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),by=(0,d.x1)("list.inactiveFocusOutline",null,e.kg(1934,"List/Tree outline color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),bz=(0,d.x1)("list.hoverBackground",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:f.Q1.white.transparent(.1),hcLight:f.Q1.fromHex("#0F4A85").transparent(.1)},e.kg(1935,"List/Tree background when hovering over items using the mouse.")),bA=(0,d.x1)("list.hoverForeground",null,e.kg(1936,"List/Tree foreground when hovering over items using the mouse.")),bB=(0,d.x1)("list.dropBackground",{dark:"#062F4A",light:"#D6EBFF",hcDark:null,hcLight:null},e.kg(1937,"List/Tree drag and drop background when moving items over other items when using the mouse.")),bC=(0,d.x1)("list.dropBetweenBackground",{dark:i,light:i,hcDark:null,hcLight:null},e.kg(1938,"List/Tree drag and drop border color when moving items between items when using the mouse.")),bD=(0,d.x1)("list.highlightForeground",{dark:"#2AAAFF",light:"#0066BF",hcDark:j,hcLight:j},e.kg(1939,"List/Tree foreground color of the match highlights when searching inside the list/tree.")),bE=(0,d.x1)("list.focusHighlightForeground",{dark:bD,light:(0,d.Hz)(br,bD,"#BBE7FF"),hcDark:bD,hcLight:bD},e.kg(1940,"List/Tree foreground color of the match highlights on actively focused items when searching inside the list/tree."));(0,d.x1)("list.invalidItemForeground",{dark:"#B89500",light:"#B89500",hcDark:"#B89500",hcLight:"#B5200D"},e.kg(1941,"List/Tree foreground color for invalid items, for example an unresolved root in explorer.")),(0,d.x1)("list.errorForeground",{dark:"#F88070",light:"#B01011",hcDark:null,hcLight:null},e.kg(1942,"Foreground color of list items containing errors.")),(0,d.x1)("list.warningForeground",{dark:"#CCA700",light:"#855F00",hcDark:null,hcLight:null},e.kg(1943,"Foreground color of list items containing warnings."));let bF=(0,d.x1)("listFilterWidget.background",{light:(0,d.e$)(w,0),dark:(0,d.a)(w,0),hcDark:w,hcLight:w},e.kg(1944,"Background color of the type filter widget in lists and trees.")),bG=(0,d.x1)("listFilterWidget.outline",{dark:f.Q1.transparent,light:f.Q1.transparent,hcDark:"#f38518",hcLight:"#007ACC"},e.kg(1945,"Outline color of the type filter widget in lists and trees.")),bH=(0,d.x1)("listFilterWidget.noMatchesOutline",{dark:"#BE1100",light:"#BE1100",hcDark:k,hcLight:k},e.kg(1946,"Outline color of the type filter widget in lists and trees, when there are no matches.")),bI=(0,d.x1)("listFilterWidget.shadow",ag,e.kg(1947,"Shadow color of the type filter widget in lists and trees."));(0,d.x1)("list.filterMatchBackground",{dark:N,light:N,hcDark:null,hcLight:null},e.kg(1948,"Background color of the filtered match.")),(0,d.x1)("list.filterMatchBorder",{dark:P,light:P,hcDark:k,hcLight:l},e.kg(1949,"Border color of the filtered match.")),(0,d.x1)("list.deemphasizedForeground",{dark:"#8C8C8C",light:"#8E8E90",hcDark:"#A7A8A9",hcLight:"#666666"},e.kg(1950,"List/Tree foreground color for items that are deemphasized."));let bJ=(0,d.x1)("tree.indentGuidesStroke",{dark:"#585858",light:"#a9a9a9",hcDark:"#a9a9a9",hcLight:"#a5a5a5"},e.kg(1951,"Tree stroke color for the indentation guides.")),bK=(0,d.x1)("tree.inactiveIndentGuidesStroke",(0,d.JO)(bJ,.4),e.kg(1952,"Tree stroke color for the indentation guides that are not active.")),bL=(0,d.x1)("tree.tableColumnsBorder",{dark:"#CCCCCC20",light:"#61616120",hcDark:null,hcLight:null},e.kg(1953,"Table border color between columns.")),bM=(0,d.x1)("tree.tableOddRowsBackground",{dark:(0,d.JO)(g,.04),light:(0,d.JO)(g,.04),hcDark:null,hcLight:null},e.kg(1954,"Background color for odd table rows."));(0,d.x1)("editorActionList.background",w,e.kg(1955,"Action List background color."));let bN=(0,d.x1)("editorActionList.foreground",x,e.kg(1956,"Action List foreground color."));(0,d.x1)("editorActionList.focusForeground",bs,e.kg(1957,"Action List foreground color for the focused item.")),(0,d.x1)("editorActionList.focusBackground",br,e.kg(1958,"Action List background color for the focused item."));let bO=(0,d.x1)("menu.border",{dark:null,light:null,hcDark:k,hcLight:k},e.kg(1959,"Border color of menus.")),bP=(0,d.x1)("menu.foreground",aZ,e.kg(1960,"Foreground color of menu items.")),bQ=(0,d.x1)("menu.background",aX,e.kg(1961,"Background color of menu items.")),bR=(0,d.x1)("menu.selectionForeground",bs,e.kg(1962,"Foreground color of the selected menu item in menus.")),bS=(0,d.x1)("menu.selectionBackground",br,e.kg(1963,"Background color of the selected menu item in menus.")),bT=(0,d.x1)("menu.selectionBorder",{dark:null,light:null,hcDark:l,hcLight:l},e.kg(1964,"Border color of the selected menu item in menus.")),bU=(0,d.x1)("menu.separatorBackground",{dark:"#606060",light:"#D4D4D4",hcDark:k,hcLight:k},e.kg(1965,"Color of a separator menu item in menus.")),bV=(0,d.x1)("quickInput.background",w,e.kg(1992,"Quick picker background color. The quick picker widget is the container for pickers like the command palette.")),bW=(0,d.x1)("quickInput.foreground",x,e.kg(1993,"Quick picker foreground color. The quick picker widget is the container for pickers like the command palette.")),bX=(0,d.x1)("quickInputTitle.background",{dark:new f.Q1(new f.bU(255,255,255,.105)),light:new f.Q1(new f.bU(0,0,0,.06)),hcDark:"#000000",hcLight:f.Q1.white},e.kg(1994,"Quick picker title background color. The quick picker widget is the container for pickers like the command palette.")),bY=(0,d.x1)("pickerGroup.foreground",{dark:"#3794FF",light:"#0066BF",hcDark:f.Q1.white,hcLight:"#0F4A85"},e.kg(1995,"Quick picker color for grouping labels.")),bZ=(0,d.x1)("pickerGroup.border",{dark:"#3F3F46",light:"#CCCEDB",hcDark:f.Q1.white,hcLight:"#0F4A85"},e.kg(1996,"Quick picker color for grouping borders.")),b$=(0,d.x1)("quickInput.list.focusBackground",null,"",void 0,e.kg(1997,"Please use quickInputList.focusBackground instead")),b_=(0,d.x1)("quickInputList.focusForeground",bs,e.kg(1998,"Quick picker foreground color for the focused item.")),b0=(0,d.x1)("quickInputList.focusIconForeground",bt,e.kg(1999,"Quick picker icon foreground color for the focused item.")),b1=(0,d.x1)("quickInputList.focusBackground",{dark:(0,d.yL)(b$,br),light:(0,d.yL)(b$,br),hcDark:null,hcLight:null},e.kg(2e3,"Quick picker background color for the focused item."));(0,d.x1)("search.resultsInfoForeground",{light:g,dark:(0,d.JO)(g,.65),hcDark:g,hcLight:g},e.kg(2001,"Color of the text in the search viewlet's completion message.")),(0,d.x1)("searchEditor.findMatchBackground",{light:(0,d.JO)(N,.66),dark:(0,d.JO)(N,.66),hcDark:N,hcLight:N},e.kg(2002,"Color of the Search Editor query matches.")),(0,d.x1)("searchEditor.findMatchBorder",{light:(0,d.JO)(P,.66),dark:(0,d.JO)(P,.66),hcDark:P,hcLight:P},e.kg(2003,"Border color of the Search Editor query matches."))},61636:(a,b,c)=>{"use strict";c.d(b,{C1:()=>i,Fp:()=>j,GK:()=>o,Ym:()=>m,dH:()=>k,kF:()=>h});var d,e,f,g,h,i,j,k,l=c(21652);let m={ctrlCmd:!1,alt:!1};(d=h||(h={}))[d.Blur=1]="Blur",d[d.Gesture=2]="Gesture",d[d.Other=3]="Other",(e=i||(i={}))[e.NONE=0]="NONE",e[e.FIRST=1]="FIRST",e[e.SECOND=2]="SECOND",e[e.LAST=3]="LAST",(f=j||(j={}))[f.First=1]="First",f[f.Second=2]="Second",f[f.Last=3]="Last",f[f.Next=4]="Next",f[f.Previous=5]="Previous",f[f.NextPage=6]="NextPage",f[f.PreviousPage=7]="PreviousPage",f[f.NextSeparator=8]="NextSeparator",f[f.PreviousSeparator=9]="PreviousSeparator",(g=k||(k={}))[g.Title=1]="Title",g[g.Inline=2]="Inline";class n{constructor(a){this.options=a}}new n;let o=(0,l.u1)("quickInputService")},61682:(a,b,c)=>{"use strict";c.d(b,{MF:()=>o,d$:()=>n,mG:()=>r,vG:()=>t,vY:()=>s});var d=c(95554),e=c(52212),f=c(32263),g=c(78029),h=c(66064),i=c(70033),j=c(64598);let k=()=>!0,l=()=>!1,m=a=>" "===a||" "===a;class n{static shouldRecreate(a){return a.hasChanged(165)||a.hasChanged(148)||a.hasChanged(45)||a.hasChanged(85)||a.hasChanged(88)||a.hasChanged(89)||a.hasChanged(10)||a.hasChanged(11)||a.hasChanged(15)||a.hasChanged(13)||a.hasChanged(14)||a.hasChanged(20)||a.hasChanged(145)||a.hasChanged(141)||a.hasChanged(59)||a.hasChanged(104)||a.hasChanged(147)||a.hasChanged(93)}constructor(a,b,c,d){this.languageConfigurationService=d,this._cursorMoveConfigurationBrand=void 0,this._languageId=a;const e=c.options,f=e.get(165),g=e.get(59);this.readOnly=e.get(104),this.tabSize=b.tabSize,this.indentSize=b.indentSize,this.insertSpaces=b.insertSpaces,this.stickyTabStops=e.get(132),this.lineHeight=g.lineHeight,this.typicalHalfwidthCharacterWidth=g.typicalHalfwidthCharacterWidth,this.pageSize=Math.max(1,Math.floor(f.height/this.lineHeight)-2),this.useTabStops=e.get(145),this.trimWhitespaceOnDelete=e.get(141),this.wordSeparators=e.get(148),this.emptySelectionClipboard=e.get(45),this.copyWithSyntaxHighlighting=e.get(31),this.multiCursorMergeOverlapping=e.get(85),this.multiCursorPaste=e.get(88),this.multiCursorLimit=e.get(89),this.autoClosingBrackets=e.get(10),this.autoClosingComments=e.get(11),this.autoClosingQuotes=e.get(15),this.autoClosingDelete=e.get(13),this.autoClosingOvertype=e.get(14),this.autoSurround=e.get(20),this.autoIndent=e.get(16),this.wordSegmenterLocales=e.get(147),this.overtypeOnPaste=e.get(93),this.surroundingPairs={},this._electricChars=null,this.shouldAutoCloseBefore={quote:this._getShouldAutoClose(a,this.autoClosingQuotes,!0),comment:this._getShouldAutoClose(a,this.autoClosingComments,!1),bracket:this._getShouldAutoClose(a,this.autoClosingBrackets,!1)},this.autoClosingPairs=this.languageConfigurationService.getLanguageConfiguration(a).getAutoClosingPairs();const h=this.languageConfigurationService.getLanguageConfiguration(a).getSurroundingPairs();if(h)for(const a of h)this.surroundingPairs[a.open]=a.close;const i=this.languageConfigurationService.getLanguageConfiguration(a).comments;this.blockCommentStartToken=i?.blockCommentStartToken??null}get electricChars(){if(!this._electricChars){this._electricChars={};let a=this.languageConfigurationService.getLanguageConfiguration(this._languageId).electricCharacter?.getElectricCharacters();if(a)for(let b of a)this._electricChars[b]=!0}return this._electricChars}get inputMode(){return j.U.getInputMode()}onElectricCharacter(a,b,c){let d=(0,g.BQ)(b,c-1),e=this.languageConfigurationService.getLanguageConfiguration(d.languageId).electricCharacter;return e?e.onElectricCharacter(a,d,c-d.firstCharOffset):null}normalizeIndentation(a){return(0,i.P)(a,this.indentSize,this.insertSpaces)}_getShouldAutoClose(a,b,c){switch(b){case"beforeWhitespace":return m;case"languageDefined":return this._getLanguageDefinedShouldAutoClose(a,c);case"always":return k;case"never":return l}}_getLanguageDefinedShouldAutoClose(a,b){let c=this.languageConfigurationService.getLanguageConfiguration(a).getAutoCloseBeforeSet(b);return a=>-1!==c.indexOf(a)}visibleColumnFromColumn(a,b){return h.A.visibleColumnFromColumn(a.getLineContent(b.lineNumber),b.column,this.tabSize)}columnFromVisibleColumn(a,b,c){let d=h.A.columnFromVisibleColumn(a.getLineContent(b),c,this.tabSize),e=a.getLineMinColumn(b);if(d<e)return e;let f=a.getLineMaxColumn(b);return d>f?f:d}}class o{static fromModelState(a){return new p(a)}static fromViewState(a){return new q(a)}static fromModelSelection(a){let b=f.L.liftSelection(a),c=new r(e.Q.fromPositions(b.getSelectionStart()),0,0,b.getPosition(),0);return o.fromModelState(c)}static fromModelSelections(a){let b=[];for(let c=0,d=a.length;c<d;c++)b[c]=this.fromModelSelection(a[c]);return b}constructor(a,b){this._cursorStateBrand=void 0,this.modelState=a,this.viewState=b}equals(a){return this.viewState.equals(a.viewState)&&this.modelState.equals(a.modelState)}}class p{constructor(a){this.modelState=a,this.viewState=null}}class q{constructor(a){this.modelState=null,this.viewState=a}}class r{constructor(a,b,c,d,e){this.selectionStart=a,this.selectionStartKind=b,this.selectionStartLeftoverVisibleColumns=c,this.position=d,this.leftoverVisibleColumns=e,this._singleCursorStateBrand=void 0,this.selection=r._computeSelection(this.selectionStart,this.position)}equals(a){return this.selectionStartLeftoverVisibleColumns===a.selectionStartLeftoverVisibleColumns&&this.leftoverVisibleColumns===a.leftoverVisibleColumns&&this.selectionStartKind===a.selectionStartKind&&this.position.equals(a.position)&&this.selectionStart.equalsRange(a.selectionStart)}hasSelection(){return!this.selection.isEmpty()||!this.selectionStart.isEmpty()}move(a,b,c,f){return a?new r(this.selectionStart,this.selectionStartKind,this.selectionStartLeftoverVisibleColumns,new d.y(b,c),f):new r(new e.Q(b,c,b,c),0,f,new d.y(b,c),f)}static _computeSelection(a,b){return a.isEmpty()||!b.isBeforeOrEqual(a.getStartPosition())?f.L.fromPositions(a.getStartPosition(),b):f.L.fromPositions(a.getEndPosition(),b)}}class s{constructor(a,b,c){this._editOperationResultBrand=void 0,this.type=a,this.commands=b,this.shouldPushStackElementBefore=c.shouldPushStackElementBefore,this.shouldPushStackElementAfter=c.shouldPushStackElementAfter}}function t(a){return"'"===a||'"'===a||"`"===a}},61837:()=>{},61891:(a,b,c)=>{"use strict";c.d(b,{S:()=>e,c:()=>m});var d,e,f=c(98896),g=c(61682),h=c(47228),i=c(49674),j=c(95554),k=c(52212),l=c(67752);class m{static addCursorDown(a,b,c){let d=[],e=0;for(let f=0,i=b.length;f<i;f++){let i=b[f];d[e++]=new g.MF(i.modelState,i.viewState),c?d[e++]=g.MF.fromModelState(h.I.translateDown(a.cursorConfig,a.model,i.modelState)):d[e++]=g.MF.fromViewState(h.I.translateDown(a.cursorConfig,a,i.viewState))}return d}static addCursorUp(a,b,c){let d=[],e=0;for(let f=0,i=b.length;f<i;f++){let i=b[f];d[e++]=new g.MF(i.modelState,i.viewState),c?d[e++]=g.MF.fromModelState(h.I.translateUp(a.cursorConfig,a.model,i.modelState)):d[e++]=g.MF.fromViewState(h.I.translateUp(a.cursorConfig,a,i.viewState))}return d}static moveToBeginningOfLine(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e];d[e]=this._moveToLineStart(a,f,c)}return d}static _moveToLineStart(a,b,c){let d=b.viewState.position.column,e=b.modelState.position.column,f=b.viewState.position.lineNumber,g=a.getLineFirstNonWhitespaceColumn(f);return d!==e&&d!==g?this._moveToLineStartByView(a,b,c):this._moveToLineStartByModel(a,b,c)}static _moveToLineStartByView(a,b,c){return g.MF.fromViewState(h.I.moveToBeginningOfLine(a.cursorConfig,a,b.viewState,c))}static _moveToLineStartByModel(a,b,c){return g.MF.fromModelState(h.I.moveToBeginningOfLine(a.cursorConfig,a.model,b.modelState,c))}static moveToEndOfLine(a,b,c,d){let e=[];for(let f=0,g=b.length;f<g;f++){let g=b[f];e[f]=this._moveToLineEnd(a,g,c,d)}return e}static _moveToLineEnd(a,b,c,d){let e=b.viewState.position,f=a.getLineMaxColumn(e.lineNumber),g=e.column===f,h=b.modelState.position,i=a.model.getLineMaxColumn(h.lineNumber),j=f-e.column==i-h.column;return g||j?this._moveToLineEndByModel(a,b,c,d):this._moveToLineEndByView(a,b,c,d)}static _moveToLineEndByView(a,b,c,d){return g.MF.fromViewState(h.I.moveToEndOfLine(a.cursorConfig,a,b.viewState,c,d))}static _moveToLineEndByModel(a,b,c,d){return g.MF.fromModelState(h.I.moveToEndOfLine(a.cursorConfig,a.model,b.modelState,c,d))}static expandLineSelection(a,b){let c=[];for(let d=0,e=b.length;d<e;d++){let e,f=b[d],h=f.modelState.selection.startLineNumber,i=a.model.getLineCount(),l=f.modelState.selection.endLineNumber;l===i?e=a.model.getLineMaxColumn(i):(l++,e=1),c[d]=g.MF.fromModelState(new g.mG(new k.Q(h,1,h,1),0,0,new j.y(l,e),0))}return c}static moveToBeginningOfBuffer(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e];d[e]=g.MF.fromModelState(h.I.moveToBeginningOfBuffer(a.cursorConfig,a.model,f.modelState,c))}return d}static moveToEndOfBuffer(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e];d[e]=g.MF.fromModelState(h.I.moveToEndOfBuffer(a.cursorConfig,a.model,f.modelState,c))}return d}static selectAll(a,b){let c=a.model.getLineCount(),d=a.model.getLineMaxColumn(c);return g.MF.fromModelState(new g.mG(new k.Q(1,1,1,1),0,0,new j.y(c,d),0))}static line(a,b,c,d,e){let f=a.model.validatePosition(d),h=e?a.coordinatesConverter.validateViewPosition(new j.y(e.lineNumber,e.column),f):a.coordinatesConverter.convertModelPositionToViewPosition(f);if(!c){let b=a.model.getLineCount(),c=f.lineNumber+1,d=1;return c>b&&(c=b,d=a.model.getLineMaxColumn(c)),g.MF.fromModelState(new g.mG(new k.Q(f.lineNumber,1,c,d),2,0,new j.y(c,d),0))}let i=b.modelState.selectionStart.getStartPosition().lineNumber;if(f.lineNumber<i)return g.MF.fromViewState(b.viewState.move(!0,h.lineNumber,1,0));if(f.lineNumber>i){let c=a.getLineCount(),d=h.lineNumber+1,e=1;return d>c&&(d=c,e=a.getLineMaxColumn(d)),g.MF.fromViewState(b.viewState.move(!0,d,e,0))}{let a=b.modelState.selectionStart.getEndPosition();return g.MF.fromModelState(b.modelState.move(!0,a.lineNumber,a.column,0))}}static word(a,b,c,d){let e=a.model.validatePosition(d);return g.MF.fromModelState(i.z.word(a.cursorConfig,a.model,b.modelState,c,e))}static cancelSelection(a,b){if(!b.modelState.hasSelection())return new g.MF(b.modelState,b.viewState);let c=b.viewState.position.lineNumber,d=b.viewState.position.column;return g.MF.fromViewState(new g.mG(new k.Q(c,d,c,d),0,0,new j.y(c,d),0))}static moveTo(a,b,c,d,e){if(c){if(1===b.modelState.selectionStartKind)return this.word(a,b,c,d);if(2===b.modelState.selectionStartKind)return this.line(a,b,c,d,e)}let f=a.model.validatePosition(d),h=e?a.coordinatesConverter.validateViewPosition(new j.y(e.lineNumber,e.column),f):a.coordinatesConverter.convertModelPositionToViewPosition(f);return g.MF.fromViewState(b.viewState.move(c,h.lineNumber,h.column,0))}static simpleMove(a,b,c,d,e,f){switch(c){case 0:if(4===f)return this._moveHalfLineLeft(a,b,d);return this._moveLeft(a,b,d,e);case 1:if(4===f)return this._moveHalfLineRight(a,b,d);return this._moveRight(a,b,d,e);case 2:if(2===f)return this._moveUpByViewLines(a,b,d,e);return this._moveUpByModelLines(a,b,d,e);case 3:if(2===f)return this._moveDownByViewLines(a,b,d,e);return this._moveDownByModelLines(a,b,d,e);case 4:if(2===f)return b.map(b=>g.MF.fromViewState(h.I.moveToPrevBlankLine(a.cursorConfig,a,b.viewState,d)));return b.map(b=>g.MF.fromModelState(h.I.moveToPrevBlankLine(a.cursorConfig,a.model,b.modelState,d)));case 5:if(2===f)return b.map(b=>g.MF.fromViewState(h.I.moveToNextBlankLine(a.cursorConfig,a,b.viewState,d)));return b.map(b=>g.MF.fromModelState(h.I.moveToNextBlankLine(a.cursorConfig,a.model,b.modelState,d)));case 6:return this._moveToViewMinColumn(a,b,d);case 7:return this._moveToViewFirstNonWhitespaceColumn(a,b,d);case 8:return this._moveToViewCenterColumn(a,b,d);case 9:return this._moveToViewMaxColumn(a,b,d);case 10:return this._moveToViewLastNonWhitespaceColumn(a,b,d);default:return null}}static viewportMove(a,b,c,d,e){let f=a.getCompletelyVisibleViewRange(),g=a.coordinatesConverter.convertViewRangeToModelRange(f);switch(c){case 11:{let c=this._firstLineNumberInRange(a.model,g,e),f=a.model.getLineFirstNonWhitespaceColumn(c);return[this._moveToModelPosition(a,b[0],d,c,f)]}case 13:{let c=this._lastLineNumberInRange(a.model,g,e),f=a.model.getLineFirstNonWhitespaceColumn(c);return[this._moveToModelPosition(a,b[0],d,c,f)]}case 12:{let c=Math.round((g.startLineNumber+g.endLineNumber)/2),e=a.model.getLineFirstNonWhitespaceColumn(c);return[this._moveToModelPosition(a,b[0],d,c,e)]}case 14:{let c=[];for(let e=0,g=b.length;e<g;e++){let g=b[e];c[e]=this.findPositionInViewportIfOutside(a,g,f,d)}return c}default:return null}}static findPositionInViewportIfOutside(a,b,c,d){let e=b.viewState.position.lineNumber;if(c.startLineNumber<=e&&e<=c.endLineNumber-1)return new g.MF(b.modelState,b.viewState);{let f;f=e>c.endLineNumber-1?c.endLineNumber-1:e<c.startLineNumber?c.startLineNumber:e;let i=h.I.vertical(a.cursorConfig,a,e,b.viewState.position.column,b.viewState.leftoverVisibleColumns,f,!1);return g.MF.fromViewState(b.viewState.move(d,i.lineNumber,i.column,i.leftoverVisibleColumns))}}static _firstLineNumberInRange(a,b,c){let d=b.startLineNumber;return b.startColumn!==a.getLineMinColumn(d)&&d++,Math.min(b.endLineNumber,d+c-1)}static _lastLineNumberInRange(a,b,c){let d=b.startLineNumber;return b.startColumn!==a.getLineMinColumn(d)&&d++,Math.max(d,b.endLineNumber-c+1)}static _moveLeft(a,b,c,d){return b.map(b=>{let e=a.getTextDirection(b.viewState.position.lineNumber)===l.z4.RTL;return g.MF.fromViewState(e?h.I.moveRight(a.cursorConfig,a,b.viewState,c,d):h.I.moveLeft(a.cursorConfig,a,b.viewState,c,d))})}static _moveHalfLineLeft(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],i=f.viewState.position.lineNumber,j=Math.round(a.getLineLength(i)/2);d[e]=g.MF.fromViewState(h.I.moveLeft(a.cursorConfig,a,f.viewState,c,j))}return d}static _moveRight(a,b,c,d){return b.map(b=>{let e=a.getTextDirection(b.viewState.position.lineNumber)===l.z4.RTL;return g.MF.fromViewState(e?h.I.moveLeft(a.cursorConfig,a,b.viewState,c,d):h.I.moveRight(a.cursorConfig,a,b.viewState,c,d))})}static _moveHalfLineRight(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],i=f.viewState.position.lineNumber,j=Math.round(a.getLineLength(i)/2);d[e]=g.MF.fromViewState(h.I.moveRight(a.cursorConfig,a,f.viewState,c,j))}return d}static _moveDownByViewLines(a,b,c,d){let e=[];for(let f=0,i=b.length;f<i;f++){let i=b[f];e[f]=g.MF.fromViewState(h.I.moveDown(a.cursorConfig,a,i.viewState,c,d))}return e}static _moveDownByModelLines(a,b,c,d){let e=[];for(let f=0,i=b.length;f<i;f++){let i=b[f];e[f]=g.MF.fromModelState(h.I.moveDown(a.cursorConfig,a.model,i.modelState,c,d))}return e}static _moveUpByViewLines(a,b,c,d){let e=[];for(let f=0,i=b.length;f<i;f++){let i=b[f];e[f]=g.MF.fromViewState(h.I.moveUp(a.cursorConfig,a,i.viewState,c,d))}return e}static _moveUpByModelLines(a,b,c,d){let e=[];for(let f=0,i=b.length;f<i;f++){let i=b[f];e[f]=g.MF.fromModelState(h.I.moveUp(a.cursorConfig,a.model,i.modelState,c,d))}return e}static _moveToViewPosition(a,b,c,d,e){return g.MF.fromViewState(b.viewState.move(c,d,e,0))}static _moveToModelPosition(a,b,c,d,e){return g.MF.fromModelState(b.modelState.move(c,d,e,0))}static _moveToViewMinColumn(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=f.viewState.position.lineNumber,h=a.getLineMinColumn(g);d[e]=this._moveToViewPosition(a,f,c,g,h)}return d}static _moveToViewFirstNonWhitespaceColumn(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=f.viewState.position.lineNumber,h=a.getLineFirstNonWhitespaceColumn(g);d[e]=this._moveToViewPosition(a,f,c,g,h)}return d}static _moveToViewCenterColumn(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=f.viewState.position.lineNumber,h=Math.round((a.getLineMaxColumn(g)+a.getLineMinColumn(g))/2);d[e]=this._moveToViewPosition(a,f,c,g,h)}return d}static _moveToViewMaxColumn(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=f.viewState.position.lineNumber,h=a.getLineMaxColumn(g);d[e]=this._moveToViewPosition(a,f,c,g,h)}return d}static _moveToViewLastNonWhitespaceColumn(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=f.viewState.position.lineNumber,h=a.getLineLastNonWhitespaceColumn(g);d[e]=this._moveToViewPosition(a,f,c,g,h)}return d}}(d=e||(e={})).metadata={description:"Move cursor to a logical position in the view",args:[{name:"Cursor move argument object",description:`Property-value pairs that can be passed through this argument:
85
85
  * 'to': A mandatory logical position value providing where to move the cursor.
86
86
  \`\`\`
87
87
  'left', 'right', 'up', 'down', 'prevBlankLine', 'nextBlankLine',
@@ -96,7 +96,7 @@ struct VSOutput {
96
96
  * 'value': Number of units to move. Default is '1'.
97
97
  * 'select': If 'true' makes the selection. Default is 'false'.
98
98
  `,constraint:function(a){return!!f.Gv(a)&&!!f.Kg(a.to)&&(!!f.b0(a.select)||!!f.Lm(a.select))&&(!!f.b0(a.by)||!!f.Kg(a.by))&&(!!f.b0(a.value)||!!f.Et(a.value))},schema:{type:"object",required:["to"],properties:{to:{type:"string",enum:["left","right","up","down","prevBlankLine","nextBlankLine","wrappedLineStart","wrappedLineEnd","wrappedLineColumnCenter","wrappedLineFirstNonWhitespaceCharacter","wrappedLineLastNonWhitespaceCharacter","viewPortTop","viewPortCenter","viewPortBottom","viewPortIfOutside"]},by:{type:"string",enum:["line","wrappedLine","character","halfLine"]},value:{type:"number",default:1},select:{type:"boolean",default:!1}}}}]},d.RawDirection={Left:"left",Right:"right",Up:"up",Down:"down",PrevBlankLine:"prevBlankLine",NextBlankLine:"nextBlankLine",WrappedLineStart:"wrappedLineStart",WrappedLineFirstNonWhitespaceCharacter:"wrappedLineFirstNonWhitespaceCharacter",WrappedLineColumnCenter:"wrappedLineColumnCenter",WrappedLineEnd:"wrappedLineEnd",WrappedLineLastNonWhitespaceCharacter:"wrappedLineLastNonWhitespaceCharacter",ViewPortTop:"viewPortTop",ViewPortCenter:"viewPortCenter",ViewPortBottom:"viewPortBottom",ViewPortIfOutside:"viewPortIfOutside"},d.RawUnit={Line:"line",WrappedLine:"wrappedLine",Character:"character",HalfLine:"halfLine"},d.parse=function(a){let b;if(!a.to)return null;switch(a.to){case d.RawDirection.Left:b=0;break;case d.RawDirection.Right:b=1;break;case d.RawDirection.Up:b=2;break;case d.RawDirection.Down:b=3;break;case d.RawDirection.PrevBlankLine:b=4;break;case d.RawDirection.NextBlankLine:b=5;break;case d.RawDirection.WrappedLineStart:b=6;break;case d.RawDirection.WrappedLineFirstNonWhitespaceCharacter:b=7;break;case d.RawDirection.WrappedLineColumnCenter:b=8;break;case d.RawDirection.WrappedLineEnd:b=9;break;case d.RawDirection.WrappedLineLastNonWhitespaceCharacter:b=10;break;case d.RawDirection.ViewPortTop:b=11;break;case d.RawDirection.ViewPortBottom:b=13;break;case d.RawDirection.ViewPortCenter:b=12;break;case d.RawDirection.ViewPortIfOutside:b=14;break;default:return null}let c=0;switch(a.by){case d.RawUnit.Line:c=1;break;case d.RawUnit.WrappedLine:c=2;break;case d.RawUnit.Character:c=3;break;case d.RawUnit.HalfLine:c=4}return{direction:b,unit:c,select:!!a.select,value:a.value||1}}},62037:(a,b,c)=>{"use strict";c.d(b,{T:()=>n,i:()=>o});var d,e=c(98900),f=c(83498),g=c(88586),h=c(42943),i=c(4751),j=c(854),k=c(99849),l=c(21410);c(28577);var m=function(a,b){return function(c,d){b(c,d,a)}};let n=class{static{d=this}static{this._ttpTokenizer=(0,f.H)("tokenizeToString",{createHTML:a=>a})}constructor(a,b,c){this._options=a,this._languageService=b,this._openerService=c}render(a,b,c){let d=(0,e.Gc)(a,{codeBlockRenderer:(a,b)=>this.renderCodeBlock(a,b),actionHandler:(a,b)=>this.openMarkdownLink(a,b),...b},c);return d.element.classList.add("rendered-markdown"),d}async renderCodeBlock(a,b){let c;a?c=this._languageService.getLanguageIdByLanguageName(a):this._options.editor&&(c=this._options.editor.getModel()?.getLanguageId()),c||(c=j.vH);let e=await (0,k.Yj)(this._languageService,b,c),f=document.createElement("span");if(f.innerHTML=d._ttpTokenizer?.createHTML(e)??e,this._options.editor){let a=this._options.editor.getOption(59);(0,l.M)(f,a)}else this._options.codeBlockFontFamily&&(f.style.fontFamily=this._options.codeBlockFontFamily);return void 0!==this._options.codeBlockFontSize&&(f.style.fontSize=this._options.codeBlockFontSize),f}async openMarkdownLink(a,b){await o(this._openerService,a,b.isTrusted)}};async function o(a,b,c,d){try{var e;return await a.open(b,{fromUserGesture:!0,allowContributedOpeners:!0,allowCommands:(e=c,!0===e||!!(e&&Array.isArray(e.enabledCommands))&&e.enabledCommands),skipValidation:d})}catch(a){return(0,g.dz)(a),!1}}n=d=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([m(1,i.L),m(2,h.Cr)],n)},62302:()=>{},62335:(a,b,c)=>{"use strict";let d,e;c.d(b,{Bm:()=>j,FB:()=>k,N2:()=>i,ZK:()=>n,u5:()=>l,zV:()=>m});var f=c(99146),g=c(17922),h=c(19929);function i(a){d=a}function j(a){e=a}function k(a){}function l(a){}class m{get TChange(){return null}reportChanges(){this.get()}read(a){return a?a.readObservable(this):this.get()}map(a,b,c=f.j.ofCaller()){let e=void 0===b?void 0:a,h=void 0===b?a:b;return d({owner:e,debugName:()=>{let a=(0,g.qQ)(h);if(void 0!==a)return a;let b=/^\s*\(?\s*([a-zA-Z_$][a-zA-Z_$0-9]*)\s*\)?\s*=>\s*\1(?:\??)\.([a-zA-Z_$][a-zA-Z_$0-9]*)\s*$/.exec(h.toString());return b?`${this.debugName}.${b[2]}`:e?void 0:`${this.debugName} (mapped)`},debugReferenceFn:h},a=>h(this.read(a),a),c)}flatten(){return d({owner:void 0,debugName:()=>`${this.debugName} (flattened)`},a=>this.read(a).read(a))}recomputeInitiallyAndOnChange(a,b){return a.add(e(this,b)),this}}class n extends m{constructor(a){super(),this._observers=new Set,(0,h.tZ)()?.handleObservableCreated(this,a)}addObserver(a){let b=this._observers.size;this._observers.add(a),0===b&&this.onFirstObserverAdded(),b!==this._observers.size&&(0,h.tZ)()?.handleOnListenerCountChanged(this,this._observers.size)}removeObserver(a){let b=this._observers.delete(a);b&&0===this._observers.size&&this.onLastObserverRemoved(),b&&(0,h.tZ)()?.handleOnListenerCountChanged(this,this._observers.size)}onFirstObserverAdded(){}onLastObserverRemoved(){}debugGetObservers(){return this._observers}}},62588:()=>{},62605:(a,b,c)=>{"use strict";c.d(b,{h:()=>g});var d=c(91337),e=c(84834),f=c(84731);function g(a,b,c,g){b.tokenization.forceTokenization(c.startLineNumber);let h=b.getLanguageIdAtPosition(c.startLineNumber,c.startColumn),i=g.getLanguageConfiguration(h);if(!i)return null;let j=new f.V(b,g).getProcessedTokenContextAroundRange(c),k=j.previousLineProcessedTokens.getLineContent(),l=j.beforeRangeProcessedTokens.getLineContent(),m=j.afterRangeProcessedTokens.getLineContent(),n=i.onEnter(a,k,l,m);if(!n)return null;let o=n.indentAction,p=n.appendText,q=n.removeText||0;p?o===d.l.Indent&&(p=" "+p):p=o===d.l.Indent||o===d.l.IndentOutdent?" ":"";let r=(0,e.Cw)(b,c.startLineNumber,c.startColumn);return q&&(r=r.substring(0,r.length-q)),{indentAction:o,appendText:p,removeText:q,indentation:r}}},62631:(a,b,c)=>{"use strict";c.d(b,{w:()=>d});let d=(0,c(21652).u1)("editorWorkerService")},62918:(a,b,c)=>{"use strict";c.d(b,{RW:()=>B,l9:()=>E,mq:()=>F});var d=c(63048),e=c(42891),f=c(91849),g=c(32665),h=c(40201),i=c(39537),j=c(10322),k=c(98896),l=c(21410),m=c(11816),n=c(60232),o=c(83614),p=c(19254),q=c(76302);class r extends h.jG{get visibility(){return this._visibility}set visibility(a){this._visibility!==a&&(this._visibility=a,this._diffActions.style.visibility=a?"visible":"hidden")}constructor(a,b,c,e,f,h,i,k,l){super(),this._getViewZoneId=a,this._marginDomNode=b,this._modifiedEditor=c,this._diff=e,this._editor=f,this._viewLineCounts=h,this._originalTextModel=i,this._contextMenuService=k,this._clipboardService=l,this._visibility=!1,this._marginDomNode.style.zIndex="10",this._diffActions=document.createElement("div"),this._diffActions.className=j.L.asClassName(g.W.lightBulb)+" lightbulb-glyph",this._diffActions.style.position="absolute";const m=this._modifiedEditor.getOption(75);this._diffActions.style.right="0px",this._diffActions.style.visibility="hidden",this._diffActions.style.height=`${m}px`,this._diffActions.style.lineHeight=`${m}px`,this._marginDomNode.appendChild(this._diffActions);let n=0;const r=c.getOption(144)&&!p.un,s=(a,b)=>{this._contextMenuService.showContextMenu({domForShadowRoot:r?c.getDomNode()??void 0:void 0,getAnchor:()=>({x:a,y:b}),getActions:()=>{let a=[],b=e.modified.isEmpty;return a.push(new o.rc("diff.clipboard.copyDeletedContent",b?e.original.length>1?(0,q.kg)(109,"Copy deleted lines"):(0,q.kg)(110,"Copy deleted line"):e.original.length>1?(0,q.kg)(111,"Copy changed lines"):(0,q.kg)(112,"Copy changed line"),void 0,!0,async()=>{let a=this._originalTextModel.getValueInRange(e.original.toExclusiveRange());await this._clipboardService.writeText(a)})),e.original.length>1&&a.push(new o.rc("diff.clipboard.copyDeletedLineContent",b?(0,q.kg)(113,"Copy deleted line ({0})",e.original.startLineNumber+n):(0,q.kg)(114,"Copy changed line ({0})",e.original.startLineNumber+n),void 0,!0,async()=>{let a=this._originalTextModel.getLineContent(e.original.startLineNumber+n);""===a&&(a=0===this._originalTextModel.getEndOfLineSequence()?"\n":"\r\n"),await this._clipboardService.writeText(a)})),c.getOption(104)||a.push(new o.rc("diff.inline.revertChange",(0,q.kg)(115,"Revert this change"),void 0,!0,async()=>{this._editor.revert(this._diff)})),a},autoSelectFirstItem:!0})};this._register((0,d.un)(this._diffActions,"mousedown",a=>{if(!a.leftButton)return;let{top:b,height:c}=(0,d.BK)(this._diffActions),e=Math.floor(m/3);a.preventDefault(),s(a.posx,b+c+e)})),this._register(c.onMouseMove(a=>{(8===a.target.type||5===a.target.type)&&a.target.detail.viewZoneId===this._getViewZoneId()?(n=this._updateLightBulbPosition(this._marginDomNode,a.event.browserEvent.y,m),this.visibility=!0):this.visibility=!1})),this._register(c.onMouseDown(a=>{a.event.leftButton&&(8===a.target.type||5===a.target.type)&&a.target.detail.viewZoneId===this._getViewZoneId()&&(a.event.preventDefault(),n=this._updateLightBulbPosition(this._marginDomNode,a.event.browserEvent.y,m),s(a.event.posx,a.event.posy+m))}))}_updateLightBulbPosition(a,b,c){let{top:e}=(0,d.BK)(a),f=Math.floor((b-e)/c);if(this._diffActions.style.top=`${f*c}px`,this._viewLineCounts){let a=0;for(let b=0;b<this._viewLineCounts.length;b++)if(f<(a+=this._viewLineCounts[b]))return b}return f}}var s=c(65087),t=c(94157),u=c(11035),v=c(95554),w=c(3459),x=c(94121),y=c(52212),z=c(21452),A=function(a,b){return function(c,d){b(c,d,a)}};let B=class extends h.jG{constructor(a,b,c,e,o,p,q,u,v,w){super(),this._targetWindow=a,this._editors=b,this._diffModel=c,this._options=e,this._diffEditorWidget=o,this._canIgnoreViewZoneUpdateEvent=p,this._origViewZonesToIgnore=q,this._modViewZonesToIgnore=u,this._clipboardService=v,this._contextMenuService=w,this._originalTopPadding=(0,i.FY)(this,0),this._originalScrollOffset=(0,i.FY)(this,0),this._originalScrollOffsetAnimated=(0,t.Nu)(this._targetWindow,this._originalScrollOffset,this._store),this._modifiedTopPadding=(0,i.FY)(this,0),this._modifiedScrollOffset=(0,i.FY)(this,0),this._modifiedScrollOffsetAnimated=(0,t.Nu)(this._targetWindow,this._modifiedScrollOffset,this._store);const x=(0,i.FY)("invalidateAlignmentsState",0),y=this._register(new f.uC(()=>{x.set(x.get()+1,void 0)},0));this._register(this._editors.original.onDidChangeViewZones(a=>{this._canIgnoreViewZoneUpdateEvent()||y.schedule()})),this._register(this._editors.modified.onDidChangeViewZones(a=>{this._canIgnoreViewZoneUpdateEvent()||y.schedule()})),this._register(this._editors.original.onDidChangeConfiguration(a=>{(a.hasChanged(166)||a.hasChanged(75))&&y.schedule()})),this._register(this._editors.modified.onDidChangeConfiguration(a=>{(a.hasChanged(166)||a.hasChanged(75))&&y.schedule()}));const A=this._diffModel.map(a=>a?(0,i.y0)(this,a.model.original.onDidChangeTokens,()=>2===a.model.original.tokenization.backgroundTokenizationState):void 0).map((a,b)=>a?.read(b)),B=(0,i.un)(a=>{let b=this._diffModel.read(a),c=b?.diff.read(a);if(!b||!c)return null;x.read(a);let d=this._options.renderSideBySide.read(a);return C(this._editors.original,this._editors.modified,c.mappings,this._origViewZonesToIgnore,this._modViewZonesToIgnore,d)}),D=(0,i.un)(a=>{let b=this._diffModel.read(a)?.movedTextToCompare.read(a);if(!b)return null;x.read(a);let c=b.changes.map(a=>new n.Yl(a));return C(this._editors.original,this._editors.modified,c,this._origViewZonesToIgnore,this._modViewZonesToIgnore,!0)});function F(){let a=document.createElement("div");return a.className="diagonal-fill",a}const G=this._register(new h.Cm);this.viewZones=(0,i.un)(this,a=>{G.clear();let b=B.read(a)||[],c=[],e=[],f=this._modifiedTopPadding.read(a);f>0&&e.push({afterLineNumber:0,domNode:document.createElement("div"),heightInPx:f,showInHiddenAreas:!0,suppressMouseDown:!0});let h=this._originalTopPadding.read(a);h>0&&c.push({afterLineNumber:0,domNode:document.createElement("div"),heightInPx:h,showInHiddenAreas:!0,suppressMouseDown:!0});let i=this._options.renderSideBySide.read(a),n=i?void 0:this._editors.modified._getViewModel()?.createLineBreaksComputer();if(n){let a=this._editors.original.getModel();for(let d of b)if(d.diff)for(let b=d.originalRange.startLineNumber;b<d.originalRange.endLineNumberExclusive;b++){if(b>a.getLineCount())return{orig:c,mod:e};n?.addRequest(a.getLineContent(b),null,null)}}let p=n?.finalize()??[],q=0,t=this._editors.modified.getOption(75),u=this._diffModel.read(a)?.movedTextToCompare.read(a),v=this._editors.original.getModel()?.mightContainNonBasicASCII()??!1,w=this._editors.original.getModel()?.mightContainRTL()??!1,x=s.bX.fromEditor(this._editors.modified);for(let f of b)if(!f.diff||i||this._options.useTrueInlineDiffRendering.read(a)&&E(f.diff)){let b=f.modifiedHeightInPx-f.originalHeightInPx;if(b>0){if(u?.lineRangeMapping.original.delta(-1).deltaLength(2).contains(f.originalRange.endLineNumberExclusive-1))continue;c.push({afterLineNumber:f.originalRange.endLineNumberExclusive-1,domNode:F(),heightInPx:b,showInHiddenAreas:!0,suppressMouseDown:!0})}else{let c;if(u?.lineRangeMapping.modified.delta(-1).deltaLength(2).contains(f.modifiedRange.endLineNumberExclusive-1))continue;f.diff&&f.diff.modified.isEmpty&&this._options.shouldRenderOldRevertArrows.read(a)&&(c=function(){let b=document.createElement("div");return b.className="arrow-revert-change "+j.L.asClassName(g.W.arrowRight),a.store.add((0,d.ko)(b,"mousedown",a=>a.stopPropagation())),a.store.add((0,d.ko)(b,"click",a=>{a.stopPropagation(),o.revert(f.diff)})),(0,d.$)("div",{},b)}()),e.push({afterLineNumber:f.modifiedRange.endLineNumberExclusive-1,domNode:F(),heightInPx:-b,marginDomNode:c,showInHiddenAreas:!0,suppressMouseDown:!0})}}else{if(!f.originalRange.isEmpty){let b;A.read(a);let d=document.createElement("div");d.classList.add("view-lines","line-delete","monaco-mouse-cursor-text");let g=this._editors.original.getModel();if(f.originalRange.endLineNumberExclusive-1>g.getLineCount())return{orig:c,mod:e};let h=new s.On(f.originalRange.mapToLineArray(a=>g.tokenization.getLineTokens(a)),f.originalRange.mapToLineArray(a=>p[q++]),v,w),i=[];for(let a of f.diff.innerChanges||[])i.push(new z.k(a.originalRange.delta(-(f.diff.original.startLineNumber-1)),m.Zb.className,0));let n=(0,s.ET)(h,x,i,d),o=document.createElement("div");if(o.className="inline-deleted-margin-view-zone",(0,l.M)(o,x.fontInfo),this._options.renderIndicators.read(a))for(let a=0;a<n.heightInLines;a++){let b=document.createElement("div");b.className=`delete-sign ${j.L.asClassName(m.dv)}`,b.setAttribute("style",`position:absolute;top:${a*t}px;width:${x.lineDecorationsWidth}px;height:${t}px;right:0;`),o.appendChild(b)}G.add(new r(()=>(0,k.ni)(b),o,this._editors.modified,f.diff,this._diffEditorWidget,n.viewLineCounts,this._editors.original.getModel(),this._contextMenuService,this._clipboardService));for(let a=0;a<n.viewLineCounts.length;a++){let b=n.viewLineCounts[a];b>1&&c.push({afterLineNumber:f.originalRange.startLineNumber+a,domNode:F(),heightInPx:(b-1)*t,showInHiddenAreas:!0,suppressMouseDown:!0})}e.push({afterLineNumber:f.modifiedRange.startLineNumber-1,domNode:d,heightInPx:n.heightInLines*t,minWidthInPx:n.minWidthInPx,marginDomNode:o,setZoneId(a){b=a},showInHiddenAreas:!0,suppressMouseDown:!0})}let b=document.createElement("div");b.className="gutter-delete",c.push({afterLineNumber:f.originalRange.endLineNumberExclusive-1,domNode:F(),heightInPx:f.modifiedHeightInPx,marginDomNode:b,showInHiddenAreas:!0,suppressMouseDown:!0})}for(let b of D.read(a)??[]){if(!u?.lineRangeMapping.original.intersect(b.originalRange)||!u?.lineRangeMapping.modified.intersect(b.modifiedRange))continue;let a=b.modifiedHeightInPx-b.originalHeightInPx;a>0?c.push({afterLineNumber:b.originalRange.endLineNumberExclusive-1,domNode:F(),heightInPx:a,showInHiddenAreas:!0,suppressMouseDown:!0}):e.push({afterLineNumber:b.modifiedRange.endLineNumberExclusive-1,domNode:F(),heightInPx:-a,showInHiddenAreas:!0,suppressMouseDown:!0})}return{orig:c,mod:e}});let H=!1;this._register(this._editors.original.onDidScrollChange(a=>{a.scrollLeftChanged&&!H&&(H=!0,this._editors.modified.setScrollLeft(a.scrollLeft),H=!1)})),this._register(this._editors.modified.onDidScrollChange(a=>{a.scrollLeftChanged&&!H&&(H=!0,this._editors.original.setScrollLeft(a.scrollLeft),H=!1)})),this._originalScrollTop=(0,i.y0)(this._editors.original.onDidScrollChange,()=>this._editors.original.getScrollTop()),this._modifiedScrollTop=(0,i.y0)(this._editors.modified.onDidScrollChange,()=>this._editors.modified.getScrollTop()),this._register((0,i.fm)(a=>{let b=this._originalScrollTop.read(a)-(this._originalScrollOffsetAnimated.read(void 0)-this._modifiedScrollOffsetAnimated.read(a))-(this._originalTopPadding.read(void 0)-this._modifiedTopPadding.read(a));b!==this._editors.modified.getScrollTop()&&this._editors.modified.setScrollTop(b,1)})),this._register((0,i.fm)(a=>{let b=this._modifiedScrollTop.read(a)-(this._modifiedScrollOffsetAnimated.read(void 0)-this._originalScrollOffsetAnimated.read(a))-(this._modifiedTopPadding.read(void 0)-this._originalTopPadding.read(a));b!==this._editors.original.getScrollTop()&&this._editors.original.setScrollTop(b,1)})),this._register((0,i.fm)(a=>{let b=this._diffModel.read(a)?.movedTextToCompare.read(a),c=0;if(b){let a=this._editors.original.getTopForLineNumber(b.lineRangeMapping.original.startLineNumber,!0)-this._originalTopPadding.read(void 0);c=this._editors.modified.getTopForLineNumber(b.lineRangeMapping.modified.startLineNumber,!0)-this._modifiedTopPadding.read(void 0)-a}c>0?(this._modifiedTopPadding.set(0,void 0),this._originalTopPadding.set(c,void 0)):c<0?(this._modifiedTopPadding.set(-c,void 0),this._originalTopPadding.set(0,void 0)):setTimeout(()=>{this._modifiedTopPadding.set(0,void 0),this._originalTopPadding.set(0,void 0)},400),this._editors.modified.hasTextFocus()?this._originalScrollOffset.set(this._modifiedScrollOffset.read(void 0)-c,void 0,!0):this._modifiedScrollOffset.set(this._originalScrollOffset.read(void 0)+c,void 0,!0)}))}};function C(a,b,c,d,f,g){let h=new e.j3(D(a,d)),i=new e.j3(D(b,f)),j=a.getOption(75),k=b.getOption(75),l=[],m=0,n=0;function o(a,b){for(;;){let c=h.peek(),d=i.peek();if(c&&c.lineNumber>=a&&(c=void 0),d&&d.lineNumber>=b&&(d=void 0),!c&&!d)break;let e=c?c.lineNumber-m:Number.MAX_VALUE,f=d?d.lineNumber-n:Number.MAX_VALUE;e<f?(h.dequeue(),d={lineNumber:c.lineNumber-m+n,heightInPx:0}):e>f?(i.dequeue(),c={lineNumber:d.lineNumber-n+m,heightInPx:0}):(h.dequeue(),i.dequeue()),l.push({originalRange:u.M.ofLength(c.lineNumber,1),modifiedRange:u.M.ofLength(d.lineNumber,1),originalHeightInPx:j+c.heightInPx,modifiedHeightInPx:k+d.heightInPx,diff:void 0})}}for(let b of c){let c=b.lineRangeMapping;o(c.original.startLineNumber,c.modified.startLineNumber);let d=!0,e=c.modified.startLineNumber,f=c.original.startLineNumber;function p(a,c,g=!1){if(a<f||c<e)return;if(d)d=!1;else if(!g&&(a===f||c===e))return;let m=new u.M(f,a),n=new u.M(e,c);if(m.isEmpty&&n.isEmpty)return;let o=h.takeWhile(b=>b.lineNumber<a)?.reduce((a,b)=>a+b.heightInPx,0)??0,q=i.takeWhile(a=>a.lineNumber<c)?.reduce((a,b)=>a+b.heightInPx,0)??0;l.push({originalRange:m,modifiedRange:n,originalHeightInPx:m.length*j+o,modifiedHeightInPx:n.length*k+q,diff:b.lineRangeMapping}),f=a,e=c}if(g)for(let b of c.innerChanges||[]){b.originalRange.startColumn>1&&b.modifiedRange.startColumn>1&&p(b.originalRange.startLineNumber,b.modifiedRange.startLineNumber);let c=a.getModel(),d=b.originalRange.endLineNumber<=c.getLineCount()?c.getLineMaxColumn(b.originalRange.endLineNumber):Number.MAX_SAFE_INTEGER;b.originalRange.endColumn<d&&p(b.originalRange.endLineNumber,b.modifiedRange.endLineNumber)}p(c.original.endLineNumberExclusive,c.modified.endLineNumberExclusive,!0),m=c.original.endLineNumberExclusive,n=c.modified.endLineNumberExclusive}return o(Number.MAX_VALUE,Number.MAX_VALUE),l}function D(a,b){let c=[],d=[],e=-1!==a.getOption(166).wrappingColumn,f=a._getViewModel().coordinatesConverter,g=a.getOption(75);if(e)for(let b=1;b<=a.getModel().getLineCount();b++){let a=f.getModelLineViewLineCount(b);a>1&&d.push({lineNumber:b,heightInPx:g*(a-1)})}for(let d of a.getWhitespaces()){if(b.has(d.id))continue;let a=0===d.afterLineNumber?0:f.convertViewPositionToModelPosition(new v.y(d.afterLineNumber,1)).lineNumber;c.push({lineNumber:a,heightInPx:d.height})}return(0,t.Am)(c,d,a=>a.lineNumber,(a,b)=>({lineNumber:a.lineNumber,heightInPx:a.heightInPx+b.heightInPx}))}function E(a){return!!a.innerChanges&&a.innerChanges.every(a=>F(a.modifiedRange)&&F(a.originalRange)||a.originalRange.equalsRange(new y.Q(1,1,1,1)))}function F(a){return a.startLineNumber===a.endLineNumber}B=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([A(8,w.h),A(9,x.Z)],B)},63048:(a,b,c)=>{"use strict";let d,e,f,g,h,i,j,k,l,m,n;c.d(b,{$:()=>aO,BC:()=>aJ,BK:()=>af,Be:()=>$,Bx:()=>aB,Cl:()=>ao,Di:()=>aV,Ej:()=>ae,Er:()=>az,FK:()=>av,Fv:()=>O,H4:()=>aj,Hs:()=>aK,Ij:()=>Z,Iv:()=>M,J$:()=>W,L9:()=>aa,Ln:()=>aL,OK:()=>ak,Oq:()=>d,PG:()=>e,Pl:()=>aI,Q2:()=>J,QX:()=>al,Tr:()=>ah,U3:()=>Y,WU:()=>aQ,X7:()=>ar,XD:()=>am,Xc:()=>U,YE:()=>G,ZF:()=>K,_9:()=>V,a:()=>at,bo:()=>aP,bq:()=>aq,cL:()=>ad,fg:()=>ac,fs:()=>aD,fz:()=>au,h:()=>aY,i0:()=>aU,jD:()=>aR,jG:()=>ap,jh:()=>aT,ko:()=>R,kx:()=>aA,mU:()=>ag,n:()=>q,nR:()=>as,nY:()=>ax,pN:()=>aW,q3:()=>N,sb:()=>aw,sd:()=>aC,sl:()=>H,tG:()=>function a(b,c,d){let e=F(b),f=e.document;if(b!==f.body)return new ac(b.clientWidth,b.clientHeight);if(A.un&&e?.visualViewport)return new ac(e.visualViewport.width,e.visualViewport.height);if(e?.innerWidth&&e.innerHeight)return new ac(e.innerWidth,e.innerHeight);if(f.body&&f.body.clientWidth&&f.body.clientHeight)return new ac(f.body.clientWidth,f.body.clientHeight);if(f.documentElement&&f.documentElement.clientWidth&&f.documentElement.clientHeight)return new ac(f.documentElement.clientWidth,f.documentElement.clientHeight);if(d)return a(d,c);if(c)return c;throw Error("Unable to figure out browser width and height")},un:()=>T,vT:()=>aS,w5:()=>aH,w_:()=>P,wk:()=>aF,xZ:()=>ay,xb:()=>X,y6:()=>ai,yD:()=>a$,zK:()=>aE,zk:()=>F});var o,p,q,r=c(72492),s=c(6876),t=c(94615),u=c(50370),v=c(91849),w=c(88586),x=c(3457),y=c(40201),z=c(37291),A=c(19254),B=c(37417),C=c(93842),D=c(39537);let{registerWindow:E,getWindow:F,getDocument:G,getWindows:H,getWindowsCount:I,getWindowId:J,getWindowById:K,hasWindow:L,onDidRegisterWindow:M,onWillUnregisterWindow:N,onDidUnregisterWindow:O}=(f=new Map,(0,C.y)(C.G,1),g={window:C.G,disposables:new y.Cm},f.set(C.G.vscodeWindowId,g),h=new x.vl,i=new x.vl,j=new x.vl,{onDidRegisterWindow:h.event,onWillUnregisterWindow:j.event,onDidUnregisterWindow:i.event,registerWindow(a){if(f.has(a.vscodeWindowId))return y.jG.None;let b=new y.Cm,c={window:a,disposables:b.add(new y.Cm)};return f.set(a.vscodeWindowId,c),b.add((0,y.s)(()=>{f.delete(a.vscodeWindowId),i.fire(a)})),b.add(R(a,aB.BEFORE_UNLOAD,()=>{j.fire(a)})),h.fire(c),b},getWindows:()=>f.values(),getWindowsCount:()=>f.size,getWindowId:a=>a.vscodeWindowId,hasWindow:a=>f.has(a),getWindowById:function(a,b){return("number"==typeof a?f.get(a):void 0)??(b?g:void 0)},getWindow:a=>a?.ownerDocument?.defaultView?a.ownerDocument.defaultView.window:a?.view?a.view.window:C.G,getDocument:a=>F(a).document});function P(a){for(;a.firstChild;)a.firstChild.remove()}class Q{constructor(a,b,c,d){this._node=a,this._type=b,this._handler=c,this._options=d||!1,this._node.addEventListener(this._type,this._handler,this._options)}dispose(){this._handler&&(this._node.removeEventListener(this._type,this._handler,this._options),this._node=null,this._handler=null)}}function R(a,b,c,d){return new Q(a,b,c,d)}function S(a,b){return function(c){return b(new u.P(a,c))}}let T=function(a,b,c,d){let e=c;if("click"===b||"mousedown"===b||"contextmenu"===b)e=S(F(a),c);else("keydown"===b||"keypress"===b||"keyup"===b)&&(e=function(a){return c(new t.Z(a))});return R(a,b,e,d)},U=function(a,b,c){let d=S(F(a),b);return V(a,d,c)};function V(a,b,c){return R(a,A.un&&s.e.pointerEvents?aB.POINTER_DOWN:aB.MOUSE_DOWN,b,c)}function W(a,b,c){return R(a,A.un&&s.e.pointerEvents?aB.POINTER_MOVE:aB.MOUSE_MOVE,b,c)}function X(a,b,c){return R(a,A.un&&s.e.pointerEvents?aB.POINTER_UP:aB.MOUSE_UP,b,c)}function Y(a,b,c){return(0,v.b7)(a,b,c)}class Z extends v.A0{constructor(a,b){super(a,b)}}class $ extends v.vb{constructor(a){super(),this.defaultTarget=a&&F(a)}cancelAndSet(a,b,c){return super.cancelAndSet(a,b,c??this.defaultTarget)}}class _{constructor(a,b=0){this._runner=a,this.priority=b,this._canceled=!1}dispose(){this._canceled=!0}execute(){if(!this._canceled)try{this._runner()}catch(a){(0,w.dz)(a)}}static sort(a,b){return b.priority-a.priority}}function aa(a){return F(a).getComputedStyle(a,null)}k=new Map,l=new Map,m=new Map,n=new Map,e=(a,b,c=0)=>{let d=J(a),e=new _(b,c),f=k.get(d);return f||(f=[],k.set(d,f)),f.push(e),m.get(d)||(m.set(d,!0),a.requestAnimationFrame(()=>(a=>{m.set(a,!1);let b=k.get(a)??[];for(l.set(a,b),k.set(a,[]),n.set(a,!0);b.length>0;)b.sort(_.sort),b.shift().execute();n.set(a,!1)})(d))),e},d=(a,b,c)=>{let d=J(a);if(!n.get(d))return e(a,b,c);{let a=new _(b,c),e=l.get(d);return e||(e=[],l.set(d,e)),e.push(a),a}};class ab{static convertToPixels(a,b){return parseFloat(b)||0}static getDimension(a,b){let c=aa(a),d=c?c.getPropertyValue(b):"0";return ab.convertToPixels(a,d)}static getBorderLeftWidth(a){return ab.getDimension(a,"border-left-width")}static getBorderRightWidth(a){return ab.getDimension(a,"border-right-width")}static getBorderTopWidth(a){return ab.getDimension(a,"border-top-width")}static getBorderBottomWidth(a){return ab.getDimension(a,"border-bottom-width")}static getPaddingLeft(a){return ab.getDimension(a,"padding-left")}static getPaddingRight(a){return ab.getDimension(a,"padding-right")}static getPaddingTop(a){return ab.getDimension(a,"padding-top")}static getPaddingBottom(a){return ab.getDimension(a,"padding-bottom")}static getMarginLeft(a){return ab.getDimension(a,"margin-left")}static getMarginTop(a){return ab.getDimension(a,"margin-top")}static getMarginRight(a){return ab.getDimension(a,"margin-right")}static getMarginBottom(a){return ab.getDimension(a,"margin-bottom")}}class ac{static{this.None=new ac(0,0)}constructor(a,b){this.width=a,this.height=b}with(a=this.width,b=this.height){return a!==this.width||b!==this.height?new ac(a,b):this}static is(a){return"object"==typeof a&&"number"==typeof a.height&&"number"==typeof a.width}static lift(a){return a instanceof ac?a:new ac(a.width,a.height)}static equals(a,b){return a===b||!!a&&!!b&&a.width===b.width&&a.height===b.height}}function ad(a){let b=a.offsetParent,c=a.offsetTop,d=a.offsetLeft;for(;null!==(a=a.parentNode)&&a!==a.ownerDocument.body&&a!==a.ownerDocument.documentElement;){c-=a.scrollTop;let e=an(a)?null:aa(a);e&&(d-="rtl"!==e.direction?a.scrollLeft:-a.scrollLeft),a===b&&(d+=ab.getBorderLeftWidth(a),c+=ab.getBorderTopWidth(a),c+=a.offsetTop,d+=a.offsetLeft,b=a.offsetParent)}return{left:d,top:c}}function ae(a,b,c){"number"==typeof b&&(a.style.width=`${b}px`),"number"==typeof c&&(a.style.height=`${c}px`)}function af(a){let b=a.getBoundingClientRect(),c=F(a);return{left:b.left+c.scrollX,top:b.top+c.scrollY,width:b.width,height:b.height}}function ag(a){let b=a,c=1;do{let a=aa(b).zoom;null!=a&&"1"!==a&&(c*=a),b=b.parentElement}while(null!==b&&b!==b.ownerDocument.documentElement);return c}function ah(a){let b=ab.getMarginLeft(a)+ab.getMarginRight(a);return a.offsetWidth+b}function ai(a){let b=ab.getBorderLeftWidth(a)+ab.getBorderRightWidth(a),c=ab.getPaddingLeft(a)+ab.getPaddingRight(a);return a.offsetWidth-b-c}function aj(a){let b=ab.getBorderTopWidth(a)+ab.getBorderBottomWidth(a),c=ab.getPaddingTop(a)+ab.getPaddingBottom(a);return a.offsetHeight-b-c}function ak(a){let b=ab.getMarginTop(a)+ab.getMarginBottom(a);return a.offsetHeight+b}function al(a,b){return!!b?.contains(a)}function am(a,b,c){return!!function(a,b,c){for(;a&&a.nodeType===a.ELEMENT_NODE;){if(a.classList.contains(b))return a;if(c){if("string"==typeof c){if(a.classList.contains(c))break}else if(a===c)break}a=a.parentNode}return null}(a,b,c)}function an(a){return a&&!!a.host&&!!a.mode}function ao(a){return!!ap(a)}function ap(a){for(;a.parentNode;){if(a===a.ownerDocument?.body)return null;a=a.parentNode}return an(a)?a:null}function aq(){let a=at().activeElement;for(;a?.shadowRoot;)a=a.shadowRoot.activeElement;return a}function ar(a){return aq()===a}function as(a){return al(aq(),a)}function at(){return 1>=I()?C.G.document:Array.from(H()).map(({window:a})=>a.document).find(a=>a.hasFocus())??C.G.document}function au(){let a=at();return a.defaultView?.window??C.G}let av=new class{constructor(){this.mutationObservers=new Map}observe(a,b,c){let d=this.mutationObservers.get(a);d||(d=new Map,this.mutationObservers.set(a,d));let e=(0,B.tW)(c),f=d.get(e);if(f)f.users+=1;else{let g=new x.vl,h=new MutationObserver(a=>g.fire(a));h.observe(a,c);let i=f={users:1,observer:h,onDidMutate:g.event};b.add((0,y.s)(()=>{i.users-=1,0===i.users&&(g.dispose(),h.disconnect(),d?.delete(e),d?.size===0&&this.mutationObservers.delete(a))})),d.set(e,f)}return f.onDidMutate}};function aw(a){return a instanceof HTMLElement||a instanceof F(a).HTMLElement}function ax(a){return a instanceof HTMLAnchorElement||a instanceof F(a).HTMLAnchorElement}function ay(a){return a instanceof SVGElement||a instanceof F(a).SVGElement}function az(a){return a instanceof MouseEvent||a instanceof F(a).MouseEvent}function aA(a){return a instanceof KeyboardEvent||a instanceof F(a).KeyboardEvent}let aB={CLICK:"click",AUXCLICK:"auxclick",DBLCLICK:"dblclick",MOUSE_UP:"mouseup",MOUSE_DOWN:"mousedown",MOUSE_OVER:"mouseover",MOUSE_MOVE:"mousemove",MOUSE_OUT:"mouseout",MOUSE_ENTER:"mouseenter",MOUSE_LEAVE:"mouseleave",MOUSE_WHEEL:"wheel",POINTER_UP:"pointerup",POINTER_DOWN:"pointerdown",POINTER_MOVE:"pointermove",POINTER_LEAVE:"pointerleave",CONTEXT_MENU:"contextmenu",WHEEL:"wheel",KEY_DOWN:"keydown",KEY_PRESS:"keypress",KEY_UP:"keyup",LOAD:"load",BEFORE_UNLOAD:"beforeunload",UNLOAD:"unload",PAGE_SHOW:"pageshow",PAGE_HIDE:"pagehide",PASTE:"paste",ABORT:"abort",ERROR:"error",RESIZE:"resize",SCROLL:"scroll",FULLSCREEN_CHANGE:"fullscreenchange",WK_FULLSCREEN_CHANGE:"webkitfullscreenchange",SELECT:"select",CHANGE:"change",SUBMIT:"submit",RESET:"reset",FOCUS:"focus",FOCUS_IN:"focusin",FOCUS_OUT:"focusout",BLUR:"blur",INPUT:"input",STORAGE:"storage",DRAG_START:"dragstart",DRAG:"drag",DRAG_ENTER:"dragenter",DRAG_LEAVE:"dragleave",DRAG_OVER:"dragover",DROP:"drop",DRAG_END:"dragend",ANIMATION_START:r.Tc?"webkitAnimationStart":"animationstart",ANIMATION_END:r.Tc?"webkitAnimationEnd":"animationend",ANIMATION_ITERATION:r.Tc?"webkitAnimationIteration":"animationiteration"};function aC(a){return!!(a&&"function"==typeof a.preventDefault&&"function"==typeof a.stopPropagation)}let aD={stop:(a,b)=>(a.preventDefault(),b&&a.stopPropagation(),a)};function aE(a){let b=[];for(let c=0;a&&a.nodeType===a.ELEMENT_NODE;c++)b[c]=a.scrollTop,a=a.parentNode;return b}function aF(a,b){for(let c=0;a&&a.nodeType===a.ELEMENT_NODE;c++)a.scrollTop!==b[c]&&(a.scrollTop=b[c]),a=a.parentNode}class aG extends y.jG{get onDidFocus(){return this._onDidFocus.event}get onDidBlur(){return this._onDidBlur.event}static hasFocusWithin(a){if(!aw(a))return al(a.document.activeElement,a.document);{let b=ap(a);return al(b?b.activeElement:a.ownerDocument.activeElement,a)}}constructor(a){super(),this._onDidFocus=this._register(new x.vl),this._onDidBlur=this._register(new x.vl);let b=aG.hasFocusWithin(a),c=!1;const d=()=>{c=!1,b||(b=!0,this._onDidFocus.fire())},e=()=>{b&&(c=!0,(aw(a)?F(a):a).setTimeout(()=>{c&&(c=!1,b=!1,this._onDidBlur.fire())},0))};this._refreshStateHandler=()=>{aG.hasFocusWithin(a)!==b&&(b?e():d())},this._register(R(a,aB.FOCUS,d,!0)),this._register(R(a,aB.BLUR,e,!0)),aw(a)&&(this._register(R(a,aB.FOCUS_IN,()=>this._refreshStateHandler())),this._register(R(a,aB.FOCUS_OUT,()=>this._refreshStateHandler())))}}function aH(a){return new aG(a)}function aI(a,b){return a.after(b),b}function aJ(a,...b){if(a.append(...b),1===b.length&&"string"!=typeof b[0])return b[0]}function aK(a,b){return a.insertBefore(b,a.firstChild),b}function aL(a,...b){a.textContent="",aJ(a,...b)}let aM=/([\w\-]+)?(#([\w\-]+))?((\.([\w\-]+))*)/;function aN(a,b,c,...d){let e,f=aM.exec(b);if(!f)throw Error("Bad use of emmet");let g=f[1]||"div";return e=a!==p.HTML?document.createElementNS(a,g):document.createElement(g),f[3]&&(e.id=f[3]),f[4]&&(e.className=f[4].replace(/\./g," ").trim()),c&&Object.entries(c).forEach(([a,b])=>{void 0!==b&&(/^on\w+$/.test(a)?e[a]=b:"selected"===a?b&&e.setAttribute(a,"true"):e.setAttribute(a,b))}),e.append(...d),e}function aO(a,b,...c){return aN(p.HTML,a,b,...c)}function aP(a,...b){a?aQ(...b):aR(...b)}function aQ(...a){for(let b of a)b.style.display="",b.removeAttribute("aria-hidden")}function aR(...a){for(let b of a)b.style.display="none",b.setAttribute("aria-hidden","true")}function aS(a,b){return Math.max(1,Math.floor(a.devicePixelRatio*b))/a.devicePixelRatio}function aT(a){C.G.open(a,"_blank","noopener")}function aU(a,b){let c=()=>{b(),d=e(a,c)},d=e(a,c);return(0,y.s)(()=>d.dispose())}(o=p||(p={})).HTML="http://www.w3.org/1999/xhtml",o.SVG="http://www.w3.org/2000/svg",aO.SVG=function(a,b,...c){return aN(p.SVG,a,b,...c)},z.Ez.setPreferredWebSchema(/^https:/.test(C.G.location.href)?"https":"http");class aV extends x.vl{constructor(){super(),this._subscriptions=new y.Cm,this._keyStatus={altKey:!1,shiftKey:!1,ctrlKey:!1,metaKey:!1},this._subscriptions.add(x.Jh.runAndSubscribe(M,({window:a,disposables:b})=>this.registerListeners(a,b),{window:C.G,disposables:this._subscriptions}))}registerListeners(a,b){b.add(R(a,"keydown",a=>{if(a.defaultPrevented)return;let b=new t.Z(a);if(6!==b.keyCode||!a.repeat){if(a.altKey&&!this._keyStatus.altKey)this._keyStatus.lastKeyPressed="alt";else if(a.ctrlKey&&!this._keyStatus.ctrlKey)this._keyStatus.lastKeyPressed="ctrl";else if(a.metaKey&&!this._keyStatus.metaKey)this._keyStatus.lastKeyPressed="meta";else if(a.shiftKey&&!this._keyStatus.shiftKey)this._keyStatus.lastKeyPressed="shift";else{if(6===b.keyCode)return;this._keyStatus.lastKeyPressed=void 0}this._keyStatus.altKey=a.altKey,this._keyStatus.ctrlKey=a.ctrlKey,this._keyStatus.metaKey=a.metaKey,this._keyStatus.shiftKey=a.shiftKey,this._keyStatus.lastKeyPressed&&(this._keyStatus.event=a,this.fire(this._keyStatus))}},!0)),b.add(R(a,"keyup",a=>{!a.defaultPrevented&&(!a.altKey&&this._keyStatus.altKey?this._keyStatus.lastKeyReleased="alt":!a.ctrlKey&&this._keyStatus.ctrlKey?this._keyStatus.lastKeyReleased="ctrl":!a.metaKey&&this._keyStatus.metaKey?this._keyStatus.lastKeyReleased="meta":!a.shiftKey&&this._keyStatus.shiftKey?this._keyStatus.lastKeyReleased="shift":this._keyStatus.lastKeyReleased=void 0,this._keyStatus.lastKeyPressed!==this._keyStatus.lastKeyReleased&&(this._keyStatus.lastKeyPressed=void 0),this._keyStatus.altKey=a.altKey,this._keyStatus.ctrlKey=a.ctrlKey,this._keyStatus.metaKey=a.metaKey,this._keyStatus.shiftKey=a.shiftKey,this._keyStatus.lastKeyReleased&&(this._keyStatus.event=a,this.fire(this._keyStatus)))},!0)),b.add(R(a.document.body,"mousedown",()=>{this._keyStatus.lastKeyPressed=void 0},!0)),b.add(R(a.document.body,"mouseup",()=>{this._keyStatus.lastKeyPressed=void 0},!0)),b.add(R(a.document.body,"mousemove",a=>{a.buttons&&(this._keyStatus.lastKeyPressed=void 0)},!0)),b.add(R(a,"blur",()=>{this.resetKeyStatus()}))}get keyStatus(){return this._keyStatus}resetKeyStatus(){this.doResetKeyStatus(),this.fire(this._keyStatus)}doResetKeyStatus(){this._keyStatus={altKey:!1,shiftKey:!1,ctrlKey:!1,metaKey:!1}}static getInstance(){return aV.instance||(aV.instance=new aV),aV.instance}dispose(){super.dispose(),this._subscriptions.dispose()}}class aW extends y.jG{constructor(a,b){super(),this.element=a,this.callbacks=b,this.counter=0,this.dragStartTime=0,this.registerListeners()}registerListeners(){this.callbacks.onDragStart&&this._register(R(this.element,aB.DRAG_START,a=>{this.callbacks.onDragStart?.(a)})),this.callbacks.onDrag&&this._register(R(this.element,aB.DRAG,a=>{this.callbacks.onDrag?.(a)})),this._register(R(this.element,aB.DRAG_ENTER,a=>{this.counter++,this.dragStartTime=a.timeStamp,this.callbacks.onDragEnter?.(a)})),this._register(R(this.element,aB.DRAG_OVER,a=>{a.preventDefault(),this.callbacks.onDragOver?.(a,a.timeStamp-this.dragStartTime)})),this._register(R(this.element,aB.DRAG_LEAVE,a=>{this.counter--,0===this.counter&&(this.dragStartTime=0,this.callbacks.onDragLeave?.(a))})),this._register(R(this.element,aB.DRAG_END,a=>{this.counter=0,this.dragStartTime=0,this.callbacks.onDragEnd?.(a)})),this._register(R(this.element,aB.DROP,a=>{this.counter=0,this.dragStartTime=0,this.callbacks.onDrop?.(a)}))}}let aX=/(?<tag>[\w\-]+)?(?:#(?<id>[\w\-]+))?(?<class>(?:\.(?:[\w\-]+))*)(?:@(?<name>(?:[\w\_])+))?/;function aY(a,...b){let c,d;Array.isArray(b[0])?(c={},d=b[0]):(c=b[0]||{},d=b[1]);let e=aX.exec(a);if(!e||!e.groups)throw Error("Bad use of h");let f=e.groups.tag||"div",g=document.createElement(f);e.groups.id&&(g.id=e.groups.id);let h=[];if(e.groups.class)for(let a of e.groups.class.split("."))""!==a&&h.push(a);if(void 0!==c.className)for(let a of c.className.split("."))""!==a&&h.push(a);h.length>0&&(g.className=h.join(" "));let i={};if(e.groups.name&&(i[e.groups.name]=g),d)for(let a of d)aw(a)?g.appendChild(a):"string"==typeof a?g.append(a):"root"in a&&(Object.assign(i,a),g.appendChild(a.root));for(let[a,b]of Object.entries(c))if("className"===a)continue;else if("style"===a)for(let[a,c]of Object.entries(b))g.style.setProperty(aZ(a),"number"==typeof c?c+"px":""+c);else"tabIndex"===a?g.tabIndex=b:g.setAttribute(aZ(a),b.toString());return i.root=g,i}function aZ(a){return a.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function a$(a){return"input"===a.tagName.toLowerCase()||"textarea"===a.tagName.toLowerCase()||aw(a)&&!!a.editContext}var a_=q||(q={});function a0(a){return(b,c,d)=>{let e=c.class;delete c.class;let f=c.ref;delete c.ref;let g=c.obsRef;return delete c.obsRef,new a7(b,f,g,a,e,c,d)}}function a1(a,b){let c=a0(b);return(b,d)=>c(a,b,d)}a_.div=a1("div"),a_.elem=a0(void 0),a_.svg=a1("svg","http://www.w3.org/2000/svg"),a_.svgElem=a0("http://www.w3.org/2000/svg"),a_.ref=function(){let a,b=function(b){a=b};return Object.defineProperty(b,"element",{get(){if(!a)throw new w.D7("Make sure the ref is set before accessing the element. Maybe wrong initialization order?");return a}}),b};class a2{constructor(a,b,c,d,e,f,g){for(const[g,h]of(this._deriveds=[],this._element=d?document.createElementNS(d,a):document.createElement(a),b&&b(this._element),c&&this._deriveds.push((0,D.un)(a=>{c(this),a.store.add({dispose:()=>{c(null)}})})),e&&(!function a(b){return!!a9(b)||!!Array.isArray(b)&&b.some(b=>a(b))}(e)?a3(this._element,a4(e,void 0)):this._deriveds.push((0,D.un)(this,a=>{a3(this._element,a4(e,a))}))),Object.entries(f)))if("style"===g)for(const[a,b]of Object.entries(h)){const c=aZ(a);a9(b)?this._deriveds.push((0,D.C)({owner:this,debugName:()=>`set.style.${c}`},a=>{this._element.style.setProperty(c,a5(b.read(a)))})):this._element.style.setProperty(c,a5(b))}else"tabIndex"===g?a9(h)?this._deriveds.push((0,D.un)(this,a=>{this._element.tabIndex=h.read(a)})):this._element.tabIndex=h:g.startsWith("on")?this._element[g]=h:a9(h)?this._deriveds.push((0,D.C)({owner:this,debugName:()=>`set.${g}`},a=>{a8(this._element,g,h.read(a))})):a8(this._element,g,h);if(g){const a=(0,D.un)(this,a=>{this._element.replaceChildren(...function a(b,c){return a9(c)?a(b,c.read(b)):Array.isArray(c)?c.flatMap(c=>a(b,c)):c instanceof a2?(b&&c.readEffect(b),[c._element]):c?[c]:[]}(a,g))});this._deriveds.push(a),!function a(b){return!!a9(b)||!!Array.isArray(b)&&b.some(b=>a(b))}(g)&&a.get()}}readEffect(a){for(let b of this._deriveds)b.read(a)}keepUpdated(a){return(0,D.un)(a=>{this.readEffect(a)}).recomputeInitiallyAndOnChange(a),this}toDisposableLiveElement(){let a=new y.Cm;return this.keepUpdated(a),new a6(this._element,a)}}function a3(a,b){ay(a)?a.setAttribute("class",b):a.className=b}function a4(a,b){let c="";return!function a(b,c,d){if(a9(b))return void d(b.read(c));if(Array.isArray(b)){for(let e of b)a(e,c,d);return}d(b)}(a,b,a=>{a&&(0===c.length?c=a:c+=" "+a)}),c}function a5(a){return"number"==typeof a?a+"px":a}class a6{constructor(a,b){this.element=a,this._disposable=b}dispose(){this._disposable.dispose()}}class a7 extends a2{constructor(){super(...arguments),this._isHovered=void 0,this._didMouseMoveDuringHover=void 0}get element(){return this._element}get isHovered(){if(!this._isHovered){let a=(0,D.FY)("hovered",!1);this._element.addEventListener("mouseenter",b=>a.set(!0,void 0)),this._element.addEventListener("mouseleave",b=>a.set(!1,void 0)),this._isHovered=a}return this._isHovered}get didMouseMoveDuringHover(){if(!this._didMouseMoveDuringHover){let a=!1,b=(0,D.FY)("didMouseMoveDuringHover",!1);this._element.addEventListener("mouseenter",b=>{a=!0}),this._element.addEventListener("mousemove",c=>{a&&b.set(!0,void 0)}),this._element.addEventListener("mouseleave",c=>{a=!1,b.set(!1,void 0)}),this._didMouseMoveDuringHover=b}return this._didMouseMoveDuringHover}}function a8(a,b,c){null==c?a.removeAttribute(aZ(b)):a.setAttribute(aZ(b),String(c))}function a9(a){return!!a&&void 0!==a.read&&void 0!==a.reportChanges}},63597:(a,b,c)=>{"use strict";c.d(b,{x:()=>fi});var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s=c(37523),t=c(25129);let u=class{static{this.ID="editor.contrib.markerDecorations"}constructor(a,b){}dispose(){}};u=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(d=s.A,function(a,b){d(a,b,1)})],u),(0,t.HW)(u.ID,u,0);var v=c(63048),w=c(88586),x=c(3457),y=c(40201),z=c(37291);c(81267);var A=c(21410),B=c(72492),C=c(42891),D=c(50689),E=c(19254),F=c(95612),G=c(18765);class H{static{this.items=[]}constructor(a,b){this.key=a,this.migrate=b}apply(a){let b=H._read(a,this.key);this.migrate(b,b=>H._read(a,b),(b,c)=>H._write(a,b,c))}static _read(a,b){if(void 0===a)return;let c=b.indexOf(".");if(c>=0){let d=b.substring(0,c);return this._read(a[d],b.substring(c+1))}return a[b]}static _write(a,b,c){let d=b.indexOf(".");if(d>=0){let e=b.substring(0,d);a[e]=a[e]||{},this._write(a[e],b.substring(d+1),c);return}a[b]=c}}function I(a,b){H.items.push(new H(a,b))}function J(a,b){I(a,(c,d,e)=>{if(void 0!==c){for(let[d,f]of b)if(c===d)return void e(a,f)}})}J("wordWrap",[[!0,"on"],[!1,"off"]]),J("lineNumbers",[[!0,"on"],[!1,"off"]]),J("cursorBlinking",[["visible","solid"]]),J("renderWhitespace",[[!0,"boundary"],[!1,"none"]]),J("renderLineHighlight",[[!0,"line"],[!1,"none"]]),J("acceptSuggestionOnEnter",[[!0,"on"],[!1,"off"]]),J("tabCompletion",[[!1,"off"],[!0,"onlySnippets"]]),J("hover",[[!0,{enabled:!0}],[!1,{enabled:!1}]]),J("parameterHints",[[!0,{enabled:!0}],[!1,{enabled:!1}]]),J("autoIndent",[[!1,"advanced"],[!0,"full"]]),J("matchBrackets",[[!0,"always"],[!1,"never"]]),J("renderFinalNewline",[[!0,"on"],[!1,"off"]]),J("cursorSmoothCaretAnimation",[[!0,"on"],[!1,"off"]]),J("occurrencesHighlight",[[!0,"singleFile"],[!1,"off"]]),J("wordBasedSuggestions",[[!0,"matchingDocuments"],[!1,"off"]]),J("defaultColorDecorators",[[!0,"auto"],[!1,"never"]]),J("minimap.autohide",[[!0,"mouseover"],[!1,"none"]]),I("autoClosingBrackets",(a,b,c)=>{!1===a&&(c("autoClosingBrackets","never"),void 0===b("autoClosingQuotes")&&c("autoClosingQuotes","never"),void 0===b("autoSurround")&&c("autoSurround","never"))}),I("renderIndentGuides",(a,b,c)=>{void 0!==a&&(c("renderIndentGuides",void 0),void 0===b("guides.indentation")&&c("guides.indentation",!!a))}),I("highlightActiveIndentGuide",(a,b,c)=>{void 0!==a&&(c("highlightActiveIndentGuide",void 0),void 0===b("guides.highlightActiveIndentation")&&c("guides.highlightActiveIndentation",!!a))});let K={method:"showMethods",function:"showFunctions",constructor:"showConstructors",deprecated:"showDeprecated",field:"showFields",variable:"showVariables",class:"showClasses",struct:"showStructs",interface:"showInterfaces",module:"showModules",property:"showProperties",event:"showEvents",operator:"showOperators",unit:"showUnits",value:"showValues",constant:"showConstants",enum:"showEnums",enumMember:"showEnumMembers",keyword:"showKeywords",text:"showWords",color:"showColors",file:"showFiles",reference:"showReferences",folder:"showFolders",typeParameter:"showTypeParameters",snippet:"showSnippets"};I("suggest.filteredTypes",(a,b,c)=>{if(a&&"object"==typeof a){for(let d of Object.entries(K))!1===a[d[0]]&&void 0===b(`suggest.${d[1]}`)&&c(`suggest.${d[1]}`,!1);c("suggest.filteredTypes",void 0)}}),I("quickSuggestions",(a,b,c)=>{if("boolean"==typeof a){let b=a?"on":"off";c("quickSuggestions",{comments:b,strings:b,other:b})}}),I("experimental.stickyScroll.enabled",(a,b,c)=>{"boolean"==typeof a&&(c("experimental.stickyScroll.enabled",void 0),void 0===b("stickyScroll.enabled")&&c("stickyScroll.enabled",a))}),I("experimental.stickyScroll.maxLineCount",(a,b,c)=>{"number"==typeof a&&(c("experimental.stickyScroll.maxLineCount",void 0),void 0===b("stickyScroll.maxLineCount")&&c("stickyScroll.maxLineCount",a))}),I("editor.experimentalEditContextEnabled",(a,b,c)=>{"boolean"==typeof a&&(c("editor.experimentalEditContextEnabled",void 0),void 0===b("editor.editContext")&&c("editor.editContext",a))}),I("codeActionsOnSave",(a,b,c)=>{if(a&&"object"==typeof a){let b=!1,d={};for(let c of Object.entries(a))"boolean"==typeof c[1]?(b=!0,d[c[0]]=c[1]?"explicit":"never"):d[c[0]]=c[1];b&&c("codeActionsOnSave",d)}}),I("codeActionWidget.includeNearbyQuickfixes",(a,b,c)=>{"boolean"==typeof a&&(c("codeActionWidget.includeNearbyQuickfixes",void 0),void 0===b("codeActionWidget.includeNearbyQuickFixes")&&c("codeActionWidget.includeNearbyQuickFixes",a))}),I("lightbulb.enabled",(a,b,c)=>{"boolean"==typeof a&&c("lightbulb.enabled",a?void 0:"off")}),I("inlineSuggest.edits.codeShifting",(a,b,c)=>{"boolean"==typeof a&&(c("inlineSuggest.edits.codeShifting",void 0),c("inlineSuggest.edits.allowCodeShifting",a?"always":"never"))});var L=c(10082),M=c(64825),N=c(41672),O=c(21799),P=c(28658),Q=c(23293),R=c(64598);let S=class extends y.jG{constructor(a,b,c,d,e){super(),this._accessibilityService=e,this._onDidChange=this._register(new x.vl),this.onDidChange=this._onDidChange.event,this._onDidChangeFast=this._register(new x.vl),this.onDidChangeFast=this._onDidChangeFast.event,this._isDominatedByLongLines=!1,this._viewLineCount=1,this._lineNumbersDigitCount=1,this._reservedHeight=0,this._glyphMarginDecorationLaneCount=1,this._computeOptionsMemory=new M.n0,this.isSimpleWidget=a,this.contextMenuId=b,this._containerObserver=this._register(new F.u(d,c.dimension)),this._targetWindowId=(0,v.zk)(d).vscodeWindowId,this._rawOptions=W(c),this._validatedOptions=V.validateOptions(this._rawOptions),this.options=this._computeOptions(),this.options.get(19)&&this._containerObserver.startObserving(),this._register(N.D.onDidChangeZoomLevel(()=>this._recomputeOptions())),this._register(L.M.onDidChangeTabFocus(()=>this._recomputeOptions())),this._register(this._containerObserver.onDidChange(()=>this._recomputeOptions())),this._register(G.T.onDidChange(()=>this._recomputeOptions())),this._register(Q.c.getInstance((0,v.zk)(d)).onDidChange(()=>this._recomputeOptions())),this._register(this._accessibilityService.onDidChangeScreenReaderOptimized(()=>this._recomputeOptions())),this._register(R.U.onDidChangeInputMode(()=>this._recomputeOptions()))}_recomputeOptions(){let a=this._computeOptions(),b=V.checkEquals(this.options,a);null!==b&&(this.options=a,this._onDidChangeFast.fire(b),this._onDidChange.fire(b))}_computeOptions(){let a=this._readEnvConfiguration(),b=O._8.createFromValidatedSettings(this._validatedOptions,a.pixelRatio,this.isSimpleWidget),c=this._readFontInfo(b),d={memory:this._computeOptionsMemory,outerWidth:a.outerWidth,outerHeight:a.outerHeight-this._reservedHeight,fontInfo:c,extraEditorClassName:a.extraEditorClassName,isDominatedByLongLines:this._isDominatedByLongLines,viewLineCount:this._viewLineCount,lineNumbersDigitCount:this._lineNumbersDigitCount,emptySelectionClipboard:a.emptySelectionClipboard,pixelRatio:a.pixelRatio,tabFocusMode:this._validatedOptions.get(164)||L.M.getTabFocusMode(),inputMode:R.U.getInputMode(),accessibilitySupport:a.accessibilitySupport,glyphMarginDecorationLaneCount:this._glyphMarginDecorationLaneCount,editContextSupported:a.editContextSupported};return V.computeOptions(this._validatedOptions,d)}_readEnvConfiguration(){let a;return{extraEditorClassName:(a="",B.nr||B.c8?a+="no-minimap-shadow enable-user-select ":a+="no-user-select ",E.zx&&(a+="mac "),a),outerWidth:this._containerObserver.getWidth(),outerHeight:this._containerObserver.getHeight(),emptySelectionClipboard:B.Tc||B.gm,pixelRatio:Q.c.getInstance((0,v.ZF)(this._targetWindowId,!0).window).value,editContextSupported:"function"==typeof globalThis.EditContext,accessibilitySupport:this._accessibilityService.isScreenReaderOptimized()?2:this._accessibilityService.getAccessibilitySupport()}}_readFontInfo(a){return G.T.readFontInfo((0,v.ZF)(this._targetWindowId,!0).window,a)}getRawOptions(){return this._rawOptions}updateOptions(a){let b=W(a);V.applyUpdate(this._rawOptions,b)&&(this._validatedOptions=V.validateOptions(this._rawOptions),this._recomputeOptions())}observeContainer(a){this._containerObserver.observe(a)}setIsDominatedByLongLines(a){this._isDominatedByLongLines!==a&&(this._isDominatedByLongLines=a,this._recomputeOptions())}setModelLineCount(a){let b=function(a){let b=0;for(;a;)a=Math.floor(a/10),b++;return b||1}(a);this._lineNumbersDigitCount!==b&&(this._lineNumbersDigitCount=b,this._recomputeOptions())}setViewLineCount(a){this._viewLineCount!==a&&(this._viewLineCount=a,this._recomputeOptions())}setReservedHeight(a){this._reservedHeight!==a&&(this._reservedHeight=a,this._recomputeOptions())}setGlyphMarginDecorationLaneCount(a){this._glyphMarginDecorationLaneCount!==a&&(this._glyphMarginDecorationLaneCount=a,this._recomputeOptions())}};S=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(e=P.j,function(a,b){e(a,b,4)})],S);class T{constructor(){this._values=[]}_read(a){return this._values[a]}get(a){return this._values[a]}_write(a,b){this._values[a]=b}}class U{constructor(){this._values=[]}_read(a){if(a>=this._values.length)throw Error("Cannot read uninitialized value");return this._values[a]}get(a){return this._read(a)}_write(a,b){this._values[a]=b}}class V{static validateOptions(a){let b=new T;for(let c of M.BE){let d="_never_"===c.name?void 0:a[c.name];b._write(c.id,c.validate(d))}return b}static computeOptions(a,b){let c=new U;for(let d of M.BE)c._write(d.id,d.compute(b,c,a._read(d.id)));return c}static _deepEquals(a,b){if("object"!=typeof a||"object"!=typeof b||!a||!b)return a===b;if(Array.isArray(a)||Array.isArray(b))return!!(Array.isArray(a)&&Array.isArray(b))&&C.aI(a,b);if(Object.keys(a).length!==Object.keys(b).length)return!1;for(let c in a)if(!V._deepEquals(a[c],b[c]))return!1;return!0}static checkEquals(a,b){let c=[],d=!1;for(let e of M.BE){let f=!V._deepEquals(a._read(e.id),b._read(e.id));c[e.id]=f,f&&(d=!0)}return d?new M.lw(c):null}static applyUpdate(a,b){let c=!1;for(let d of M.BE)if(b.hasOwnProperty(d.name)){let e=d.applyUpdate(a[d.name],b[d.name]);a[d.name]=e.newValue,c=c||e.didChange}return c}}function W(a){let b=D.Go(a);return H.items.forEach(a=>a.apply(b)),b}var X=c(1590),Y=c(69626);!function(a){let b={total:0,min:Number.MAX_VALUE,max:0},c={...b},d={...b},e={...b},f=0,g={keydown:0,input:0,render:0};function h(){1===g.keydown&&(performance.mark("keydown/end"),g.keydown=2)}function i(){performance.mark("input/start"),g.input=1,l()}function j(){1===g.input&&(performance.mark("input/end"),g.input=2)}function k(){1===g.render&&(performance.mark("render/end"),g.render=2)}function l(){setTimeout(m)}function m(){2===g.keydown&&2===g.input&&2===g.render&&(performance.mark("inputlatency/end"),performance.measure("keydown","keydown/start","keydown/end"),performance.measure("input","input/start","input/end"),performance.measure("render","render/start","render/end"),performance.measure("inputlatency","inputlatency/start","inputlatency/end"),n("keydown",b),n("input",c),n("render",d),n("inputlatency",e),f++,performance.clearMarks("keydown/start"),performance.clearMarks("keydown/end"),performance.clearMarks("input/start"),performance.clearMarks("input/end"),performance.clearMarks("render/start"),performance.clearMarks("render/end"),performance.clearMarks("inputlatency/start"),performance.clearMarks("inputlatency/end"),performance.clearMeasures("keydown"),performance.clearMeasures("input"),performance.clearMeasures("render"),performance.clearMeasures("inputlatency"),g.keydown=0,g.input=0,g.render=0)}function n(a,b){let c=performance.getEntriesByName(a)[0].duration;b.total+=c,b.min=Math.min(b.min,c),b.max=Math.max(b.max,c)}function o(a){return{average:a.total/f,max:a.max,min:a.min}}function p(a){a.total=0,a.min=Number.MAX_VALUE,a.max=0}a.onKeyDown=function(){m(),performance.mark("inputlatency/start"),performance.mark("keydown/start"),g.keydown=1,queueMicrotask(h)},a.onBeforeInput=i,a.onInput=function(){0===g.input&&i(),queueMicrotask(j)},a.onKeyUp=function(){m()},a.onSelectionChange=function(){m()},a.onRenderStart=function(){2===g.keydown&&2===g.input&&0===g.render&&(performance.mark("render/start"),g.render=1,queueMicrotask(k),l())},a.getAndClearMeasurements=function(){if(0===f)return;let a={keydown:o(b),input:o(c),render:o(d),total:o(e),sampleCount:f};return p(b),p(c),p(d),p(e),f=0,a}}(l||(l={}));var Z=c(88931),$=c(43016);class _ extends $.i{constructor(a){super(),this._context=a,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),super.dispose()}}class aa{static write(a,b){a.setAttribute("data-mprt",String(b))}static read(a){let b=a.getAttribute("data-mprt");return null===b?0:parseInt(b,10)}static collect(a,b){let c=[],d=0;for(;a&&a!==a.ownerDocument.body&&a!==b;)a.nodeType===a.ELEMENT_NODE&&(c[d++]=this.read(a)),a=a.parentElement;let e=new Uint8Array(d);for(let a=0;a<d;a++)e[a]=c[d-a-1];return e}}var ab=c(5394),ac=c(95554),ad=c(52212),ae=c(66064),af=c(83862),ag=c(67752),ah=c(85851);class ai{constructor(a=null){this.hitTarget=a,this.type=0}}class aj{get hitTarget(){return this.spanNode}constructor(a,b,c){this.position=a,this.spanNode=b,this.injectedText=c,this.type=1}}(m||(m={})).createFromDOMInfo=function(a,b,c){let d=a.getPositionFromDOMInfo(b,c);return d?new aj(d,b,null):new ai(b)};class ak{constructor(a,b){this.lastViewCursorsRenderData=a,this.lastTextareaPosition=b}}class al{static _deduceRage(a,b=null){return!b&&a?new ad.Q(a.lineNumber,a.column,a.lineNumber,a.column):b??null}static createUnknown(a,b,c){return{type:0,element:a,mouseColumn:b,position:c,range:this._deduceRage(c)}}static createTextarea(a,b){return{type:1,element:a,mouseColumn:b,position:null,range:null}}static createMargin(a,b,c,d,e,f){return{type:a,element:b,mouseColumn:c,position:d,range:e,detail:f}}static createViewZone(a,b,c,d,e){return{type:a,element:b,mouseColumn:c,position:d,range:this._deduceRage(d),detail:e}}static createContentText(a,b,c,d,e){return{type:6,element:a,mouseColumn:b,position:c,range:this._deduceRage(c,d),detail:e}}static createContentEmpty(a,b,c,d){return{type:7,element:a,mouseColumn:b,position:c,range:this._deduceRage(c),detail:d}}static createContentWidget(a,b,c){return{type:9,element:a,mouseColumn:b,position:null,range:null,detail:c}}static createScrollbar(a,b,c){return{type:11,element:a,mouseColumn:b,position:c,range:this._deduceRage(c)}}static createOverlayWidget(a,b,c){return{type:12,element:a,mouseColumn:b,position:null,range:null,detail:c}}static createOutsideEditor(a,b,c,d){return{type:13,element:null,mouseColumn:a,position:b,range:this._deduceRage(b),outsidePosition:c,outsideDistance:d}}static _typeToString(a){return 1===a?"TEXTAREA":2===a?"GUTTER_GLYPH_MARGIN":3===a?"GUTTER_LINE_NUMBERS":4===a?"GUTTER_LINE_DECORATIONS":5===a?"GUTTER_VIEW_ZONE":6===a?"CONTENT_TEXT":7===a?"CONTENT_EMPTY":8===a?"CONTENT_VIEW_ZONE":9===a?"CONTENT_WIDGET":10===a?"OVERVIEW_RULER":11===a?"SCROLLBAR":12===a?"OVERLAY_WIDGET":"UNKNOWN"}static toString(a){return this._typeToString(a.type)+": "+a.position+" - "+a.range+" - "+JSON.stringify(a.detail)}}class am{static isTextArea(a){return 2===a.length&&3===a[0]&&7===a[1]}static isChildOfViewLines(a){return a.length>=4&&3===a[0]&&8===a[3]}static isStrictChildOfViewLines(a){return a.length>4&&3===a[0]&&8===a[3]}static isChildOfScrollableElement(a){return a.length>=2&&3===a[0]&&6===a[1]}static isChildOfMinimap(a){return a.length>=2&&3===a[0]&&9===a[1]}static isChildOfContentWidgets(a){return a.length>=4&&3===a[0]&&1===a[3]}static isChildOfOverflowGuard(a){return a.length>=1&&3===a[0]}static isChildOfOverflowingContentWidgets(a){return a.length>=1&&2===a[0]}static isChildOfOverlayWidgets(a){return a.length>=2&&3===a[0]&&4===a[1]}static isChildOfOverflowingOverlayWidgets(a){return a.length>=1&&5===a[0]}}class an{constructor(a,b,c){this.viewModel=a.viewModel;const d=a.configuration.options;this.layoutInfo=d.get(165),this.viewDomNode=b.viewDomNode,this.viewLinesGpu=b.viewLinesGpu,this.lineHeight=d.get(75),this.stickyTabStops=d.get(132),this.typicalHalfwidthCharacterWidth=d.get(59).typicalHalfwidthCharacterWidth,this.lastRenderData=c,this._context=a,this._viewHelper=b}getZoneAtCoord(a){return an.getZoneAtCoord(this._context,a)}static getZoneAtCoord(a,b){let c=a.viewLayout.getWhitespaceAtVerticalOffset(b);if(c){let d,e=c.verticalOffset+c.height/2,f=a.viewModel.getLineCount(),g=null,h=null;return c.afterLineNumber!==f&&(h=new ac.y(c.afterLineNumber+1,1)),c.afterLineNumber>0&&(g=new ac.y(c.afterLineNumber,a.viewModel.getLineMaxColumn(c.afterLineNumber))),d=null===h?g:null===g?h:b<e?g:h,{viewZoneId:c.id,afterLineNumber:c.afterLineNumber,positionBefore:g,positionAfter:h,position:d}}return null}getFullLineRangeAtCoord(a){if(this._context.viewLayout.isAfterLines(a)){let a=this._context.viewModel.getLineCount(),b=this._context.viewModel.getLineMaxColumn(a);return{range:new ad.Q(a,b,a,b),isAfterLines:!0}}let b=this._context.viewLayout.getLineNumberAtVerticalOffset(a),c=this._context.viewModel.getLineMaxColumn(b);return{range:new ad.Q(b,1,b,c),isAfterLines:!1}}getLineNumberAtVerticalOffset(a){return this._context.viewLayout.getLineNumberAtVerticalOffset(a)}isAfterLines(a){return this._context.viewLayout.isAfterLines(a)}isInTopPadding(a){return this._context.viewLayout.isInTopPadding(a)}isInBottomPadding(a){return this._context.viewLayout.isInBottomPadding(a)}getVerticalOffsetForLineNumber(a){return this._context.viewLayout.getVerticalOffsetForLineNumber(a)}findAttribute(a,b){return an._findAttribute(a,b,this._viewHelper.viewDomNode)}static _findAttribute(a,b,c){for(;a&&a!==a.ownerDocument.body;){if(a.hasAttribute&&a.hasAttribute(b))return a.getAttribute(b);if(a===c)break;a=a.parentNode}return null}getLineWidth(a){return this._viewHelper.getLineWidth(a)}isRtl(a){return this.viewModel.getTextDirection(a)===ag.z4.RTL}visibleRangeForPosition(a,b){return this._viewHelper.visibleRangeForPosition(a,b)}getPositionFromDOMInfo(a,b){return this._viewHelper.getPositionFromDOMInfo(a,b)}getCurrentScrollTop(){return this._context.viewLayout.getCurrentScrollTop()}getCurrentScrollLeft(){return this._context.viewLayout.getCurrentScrollLeft()}}class ao{constructor(a,b,c,d){this.editorPos=b,this.pos=c,this.relativePos=d,this.mouseVerticalOffset=Math.max(0,a.getCurrentScrollTop()+this.relativePos.y),this.mouseContentHorizontalOffset=a.getCurrentScrollLeft()+this.relativePos.x-a.layoutInfo.contentLeft,this.isInMarginArea=this.relativePos.x<a.layoutInfo.contentLeft&&this.relativePos.x>=a.layoutInfo.glyphMarginLeft,this.isInContentArea=!this.isInMarginArea,this.mouseColumn=Math.max(0,as._getMouseColumn(this.mouseContentHorizontalOffset,a.typicalHalfwidthCharacterWidth))}}class ap extends ao{get target(){return this._useHitTestTarget?this.hitTestResult.value.hitTarget:this._eventTarget}get targetPath(){return this._targetPathCacheElement!==this.target&&(this._targetPathCacheElement=this.target,this._targetPathCacheValue=aa.collect(this.target,this._ctx.viewDomNode)),this._targetPathCacheValue}constructor(a,b,c,d,e){super(a,b,c,d),this.hitTestResult=new ah.d(()=>as.doHitTest(this._ctx,this)),this._targetPathCacheElement=null,this._targetPathCacheValue=new Uint8Array(0),this._ctx=a,this._eventTarget=e;const f=!!this._eventTarget;this._useHitTestTarget=!f}toString(){return`pos(${this.pos.x},${this.pos.y}), editorPos(${this.editorPos.x},${this.editorPos.y}), relativePos(${this.relativePos.x},${this.relativePos.y}), mouseVerticalOffset: ${this.mouseVerticalOffset}, mouseContentHorizontalOffset: ${this.mouseContentHorizontalOffset}
99
- target: ${this.target?this.target.outerHTML:null}`}get wouldBenefitFromHitTestTargetSwitch(){return!this._useHitTestTarget&&null!==this.hitTestResult.value.hitTarget&&this.target!==this.hitTestResult.value.hitTarget}switchToHitTestTarget(){this._useHitTestTarget=!0}_getMouseColumn(a=null){return a&&a.column<this._ctx.viewModel.getLineMaxColumn(a.lineNumber)?ae.A.visibleColumnFromColumn(this._ctx.viewModel.getLineContent(a.lineNumber),a.column,this._ctx.viewModel.model.getOptions().tabSize)+1:this.mouseColumn}fulfillUnknown(a=null){return al.createUnknown(this.target,this._getMouseColumn(a),a)}fulfillTextarea(){return al.createTextarea(this.target,this._getMouseColumn())}fulfillMargin(a,b,c,d){return al.createMargin(a,this.target,this._getMouseColumn(b),b,c,d)}fulfillViewZone(a,b,c){return al.createViewZone(a,this.target,this._getMouseColumn(b),b,c)}fulfillContentText(a,b,c){return al.createContentText(this.target,this._getMouseColumn(a),a,b,c)}fulfillContentEmpty(a,b){return al.createContentEmpty(this.target,this._getMouseColumn(a),a,b)}fulfillContentWidget(a){return al.createContentWidget(this.target,this._getMouseColumn(),a)}fulfillScrollbar(a){return al.createScrollbar(this.target,this._getMouseColumn(a),a)}fulfillOverlayWidget(a){return al.createOverlayWidget(this.target,this._getMouseColumn(),a)}}let aq={isAfterLines:!0};function ar(a){return{isAfterLines:!1,horizontalDistanceToText:a}}class as{constructor(a,b){this._context=a,this._viewHelper=b}mouseTargetIsWidget(a){let b=a.target,c=aa.collect(b,this._viewHelper.viewDomNode);return!!(am.isChildOfContentWidgets(c)||am.isChildOfOverflowingContentWidgets(c)||am.isChildOfOverlayWidgets(c)||am.isChildOfOverflowingOverlayWidgets(c))}createMouseTarget(a,b,c,d,e){let f=new an(this._context,this._viewHelper,a),g=new ap(f,b,c,d,e);try{let a=as._createMouseTarget(f,g);if(6===a.type&&f.stickyTabStops&&null!==a.position){let b=as._snapToSoftTabBoundary(a.position,f.viewModel),c=ad.Q.fromPositions(b,b).plusRange(a.range);return g.fulfillContentText(b,c,a.detail)}return a}catch(a){return g.fulfillUnknown()}}static _createMouseTarget(a,b){if(null===b.target)return b.fulfillUnknown();let c=null;return am.isChildOfOverflowGuard(b.targetPath)||am.isChildOfOverflowingContentWidgets(b.targetPath)||am.isChildOfOverflowingOverlayWidgets(b.targetPath)||(c=c||b.fulfillUnknown()),(c=(c=(c=(c=(c=(c=(c=(c=(c=(c=c||as._hitTestContentWidget(a,b))||as._hitTestOverlayWidget(a,b))||as._hitTestMinimap(a,b))||as._hitTestScrollbarSlider(a,b))||as._hitTestViewZone(a,b))||as._hitTestMargin(a,b))||as._hitTestViewCursor(a,b))||as._hitTestTextArea(a,b))||as._hitTestViewLines(a,b))||as._hitTestScrollbar(a,b))||b.fulfillUnknown()}static _hitTestContentWidget(a,b){if(am.isChildOfContentWidgets(b.targetPath)||am.isChildOfOverflowingContentWidgets(b.targetPath)){let c=a.findAttribute(b.target,"widgetId");return c?b.fulfillContentWidget(c):b.fulfillUnknown()}return null}static _hitTestOverlayWidget(a,b){if(am.isChildOfOverlayWidgets(b.targetPath)||am.isChildOfOverflowingOverlayWidgets(b.targetPath)){let c=a.findAttribute(b.target,"widgetId");return c?b.fulfillOverlayWidget(c):b.fulfillUnknown()}return null}static _hitTestViewCursor(a,b){if(b.target){for(let c of a.lastRenderData.lastViewCursorsRenderData)if(b.target===c.domNode)return b.fulfillContentText(c.position,null,{mightBeForeignElement:!1,injectedText:null})}if(b.isInContentArea){let c=a.lastRenderData.lastViewCursorsRenderData,d=b.mouseContentHorizontalOffset,e=b.mouseVerticalOffset;for(let f of c){if(d<f.contentLeft||d>f.contentLeft+f.width)continue;let c=a.getVerticalOffsetForLineNumber(f.position.lineNumber);if(c<=e&&e<=c+f.height)return b.fulfillContentText(f.position,null,{mightBeForeignElement:!1,injectedText:null})}}return null}static _hitTestViewZone(a,b){let c=a.getZoneAtCoord(b.mouseVerticalOffset);if(c){let a=b.isInContentArea?8:5;return b.fulfillViewZone(a,c.position,c)}return null}static _hitTestTextArea(a,b){return am.isTextArea(b.targetPath)?a.lastRenderData.lastTextareaPosition?b.fulfillContentText(a.lastRenderData.lastTextareaPosition,null,{mightBeForeignElement:!1,injectedText:null}):b.fulfillTextarea():null}static _hitTestMargin(a,b){if(b.isInMarginArea){let c=a.getFullLineRangeAtCoord(b.mouseVerticalOffset),d=c.range.getStartPosition(),e=Math.abs(b.relativePos.x),f={isAfterLines:c.isAfterLines,glyphMarginLeft:a.layoutInfo.glyphMarginLeft,glyphMarginWidth:a.layoutInfo.glyphMarginWidth,lineNumbersWidth:a.layoutInfo.lineNumbersWidth,offsetX:e};if((e-=a.layoutInfo.glyphMarginLeft)<=a.layoutInfo.glyphMarginWidth){let g=a.viewModel.coordinatesConverter.convertViewPositionToModelPosition(c.range.getStartPosition());return f.glyphMarginLane=a.viewModel.glyphLanes.getLanesAtLine(g.lineNumber)[Math.floor(e/a.lineHeight)],b.fulfillMargin(2,d,c.range,f)}return(e-=a.layoutInfo.glyphMarginWidth)<=a.layoutInfo.lineNumbersWidth?b.fulfillMargin(3,d,c.range,f):(e-=a.layoutInfo.lineNumbersWidth,b.fulfillMargin(4,d,c.range,f))}return null}static _hitTestViewLines(a,b){if(!am.isChildOfViewLines(b.targetPath))return null;if(a.isInTopPadding(b.mouseVerticalOffset))return b.fulfillContentEmpty(new ac.y(1,1),aq);if(a.isAfterLines(b.mouseVerticalOffset)||a.isInBottomPadding(b.mouseVerticalOffset)){let c=a.viewModel.getLineCount(),d=a.viewModel.getLineMaxColumn(c);return b.fulfillContentEmpty(new ac.y(c,d),aq)}if(am.isStrictChildOfViewLines(b.targetPath)){let c=a.getLineNumberAtVerticalOffset(b.mouseVerticalOffset),d=a.viewModel.getLineLength(c),e=a.getLineWidth(c);if(0===d){let a=ar(b.mouseContentHorizontalOffset-e);return b.fulfillContentEmpty(new ac.y(c,1),a)}if(a.isRtl(c)){if(b.mouseContentHorizontalOffset+e<=a.layoutInfo.contentWidth-a.layoutInfo.verticalScrollbarWidth){let d=ar(b.mouseContentHorizontalOffset-e),f=new ac.y(c,a.viewModel.getLineMaxColumn(c));return b.fulfillContentEmpty(f,d)}}else if(b.mouseContentHorizontalOffset>=e){let d=ar(b.mouseContentHorizontalOffset-e),f=new ac.y(c,a.viewModel.getLineMaxColumn(c));return b.fulfillContentEmpty(f,d)}}else if(a.viewLinesGpu){let c=a.getLineNumberAtVerticalOffset(b.mouseVerticalOffset);if(0===a.viewModel.getLineLength(c)){let d=a.getLineWidth(c),e=ar(b.mouseContentHorizontalOffset-d);return b.fulfillContentEmpty(new ac.y(c,1),e)}let d=a.getLineWidth(c);if(a.isRtl(c)){if(b.mouseContentHorizontalOffset+d<=a.layoutInfo.contentWidth-a.layoutInfo.verticalScrollbarWidth){let e=ar(b.mouseContentHorizontalOffset-d),f=new ac.y(c,a.viewModel.getLineMaxColumn(c));return b.fulfillContentEmpty(f,e)}}else if(b.mouseContentHorizontalOffset>=d){let e=ar(b.mouseContentHorizontalOffset-d),f=new ac.y(c,a.viewModel.getLineMaxColumn(c));return b.fulfillContentEmpty(f,e)}let e=a.viewLinesGpu.getPositionAtCoordinate(c,b.mouseContentHorizontalOffset);if(e)return b.fulfillContentText(e,ad.Q.fromPositions(e,e),{injectedText:null,mightBeForeignElement:!1})}let c=b.hitTestResult.value;return 1===c.type?as.createMouseTargetFromHitTestPosition(a,b,c.spanNode,c.position,c.injectedText):b.wouldBenefitFromHitTestTargetSwitch?(b.switchToHitTestTarget(),this._createMouseTarget(a,b)):b.fulfillUnknown()}static _hitTestMinimap(a,b){if(am.isChildOfMinimap(b.targetPath)){let c=a.getLineNumberAtVerticalOffset(b.mouseVerticalOffset),d=a.viewModel.getLineMaxColumn(c);return b.fulfillScrollbar(new ac.y(c,d))}return null}static _hitTestScrollbarSlider(a,b){if(am.isChildOfScrollableElement(b.targetPath)&&b.target&&1===b.target.nodeType){let c=b.target.className;if(c&&/\b(slider|scrollbar)\b/.test(c)){let c=a.getLineNumberAtVerticalOffset(b.mouseVerticalOffset),d=a.viewModel.getLineMaxColumn(c);return b.fulfillScrollbar(new ac.y(c,d))}}return null}static _hitTestScrollbar(a,b){if(am.isChildOfScrollableElement(b.targetPath)){let c=a.getLineNumberAtVerticalOffset(b.mouseVerticalOffset),d=a.viewModel.getLineMaxColumn(c);return b.fulfillScrollbar(new ac.y(c,d))}return null}getMouseColumn(a){let b=this._context.configuration.options,c=b.get(165),d=this._context.viewLayout.getCurrentScrollLeft()+a.x-c.contentLeft;return as._getMouseColumn(d,b.get(59).typicalHalfwidthCharacterWidth)}static _getMouseColumn(a,b){return a<0?1:Math.round(a/b)+1}static createMouseTargetFromHitTestPosition(a,b,c,d,e){let f=d.lineNumber,g=d.column,h=a.getLineWidth(f);if(b.mouseContentHorizontalOffset>h){let a=ar(b.mouseContentHorizontalOffset-h);return b.fulfillContentEmpty(d,a)}let i=a.visibleRangeForPosition(f,g);if(!i)return b.fulfillUnknown(d);let j=i.left;if(1>Math.abs(b.mouseContentHorizontalOffset-j))return b.fulfillContentText(d,null,{mightBeForeignElement:!!e,injectedText:e});let k=[];if(k.push({offset:i.left,column:g}),g>1){let b=a.visibleRangeForPosition(f,g-1);b&&k.push({offset:b.left,column:g-1})}if(g<a.viewModel.getLineMaxColumn(f)){let b=a.visibleRangeForPosition(f,g+1);b&&k.push({offset:b.left,column:g+1})}k.sort((a,b)=>a.offset-b.offset);let l=b.pos.toClientCoordinates(v.zk(a.viewDomNode)),m=c.getBoundingClientRect(),n=m.left<=l.clientX&&l.clientX<=m.right,o=null;for(let a=1;a<k.length;a++){let c=k[a-1],e=k[a];if(c.offset<=b.mouseContentHorizontalOffset&&b.mouseContentHorizontalOffset<=e.offset){o=new ad.Q(f,c.column,f,e.column),d=Math.abs(c.offset-b.mouseContentHorizontalOffset)<Math.abs(e.offset-b.mouseContentHorizontalOffset)?new ac.y(f,c.column):new ac.y(f,e.column);break}}return b.fulfillContentText(d,o,{mightBeForeignElement:!n||!!e,injectedText:e})}static _doHitTestWithCaretRangeFromPoint(a,b){let c=a.getLineNumberAtVerticalOffset(b.mouseVerticalOffset),d=a.getVerticalOffsetForLineNumber(c),e=d+a.lineHeight;if(!(c===a.viewModel.getLineCount()&&b.mouseVerticalOffset>e)){let c=Math.floor((d+e)/2),f=b.pos.y+(c-b.mouseVerticalOffset);f<=b.editorPos.y&&(f=b.editorPos.y+1),f>=b.editorPos.y+b.editorPos.height&&(f=b.editorPos.y+b.editorPos.height-1);let g=new Z.nz(b.pos.x,f),h=this._actualDoHitTestWithCaretRangeFromPoint(a,g.toClientCoordinates(v.zk(a.viewDomNode)));if(1===h.type)return h}return this._actualDoHitTestWithCaretRangeFromPoint(a,b.pos.toClientCoordinates(v.zk(a.viewDomNode)))}static _actualDoHitTestWithCaretRangeFromPoint(a,b){let c,d=v.jG(a.viewDomNode);if(!(c=d?void 0===d.caretRangeFromPoint?function(a,b,c){let d=document.createRange(),e=a.elementFromPoint(b,c);if(e?.hasChildNodes()){let a;for(;e&&e.firstChild&&e.firstChild.nodeType!==e.firstChild.TEXT_NODE&&e.lastChild&&e.lastChild.firstChild;)e=e.lastChild;let c=e.getBoundingClientRect(),f=v.zk(e),g=f.getComputedStyle(e,null).getPropertyValue("font-style"),h=f.getComputedStyle(e,null).getPropertyValue("font-variant"),i=f.getComputedStyle(e,null).getPropertyValue("font-weight"),j=f.getComputedStyle(e,null).getPropertyValue("font-size"),k=f.getComputedStyle(e,null).getPropertyValue("line-height"),l=f.getComputedStyle(e,null).getPropertyValue("font-family"),m=`${g} ${h} ${i} ${j}/${k} ${l}`,n=e.innerText,o=c.left,p=0;if(b>c.left+c.width)p=n.length;else{let c=at.getInstance();for(let d=0;d<n.length+1;d++){if(b<(o+=a=c.getCharWidth(n.charAt(d),m)/2)){p=d;break}o+=a}}d.setStart(e.firstChild,p),d.setEnd(e.firstChild,p)}return d}(d,b.clientX,b.clientY):d.caretRangeFromPoint(b.clientX,b.clientY):a.viewDomNode.ownerDocument.caretRangeFromPoint(b.clientX,b.clientY))||!c.startContainer)return new ai;let e=c.startContainer;if(e.nodeType===e.TEXT_NODE){let b=e.parentNode,d=b?b.parentNode:null,f=d?d.parentNode:null;return(f&&f.nodeType===f.ELEMENT_NODE?f.className:null)===ab.G.CLASS_NAME?m.createFromDOMInfo(a,b,c.startOffset):new ai(e.parentNode)}if(e.nodeType===e.ELEMENT_NODE){let b=e.parentNode,c=b?b.parentNode:null;return(c&&c.nodeType===c.ELEMENT_NODE?c.className:null)===ab.G.CLASS_NAME?m.createFromDOMInfo(a,e,e.textContent.length):new ai(e)}return new ai}static _doHitTestWithCaretPositionFromPoint(a,b){let c=a.viewDomNode.ownerDocument.caretPositionFromPoint(b.clientX,b.clientY);if(c.offsetNode.nodeType===c.offsetNode.TEXT_NODE){let b=c.offsetNode.parentNode,d=b?b.parentNode:null,e=d?d.parentNode:null;return(e&&e.nodeType===e.ELEMENT_NODE?e.className:null)===ab.G.CLASS_NAME?m.createFromDOMInfo(a,c.offsetNode.parentNode,c.offset):new ai(c.offsetNode.parentNode)}if(c.offsetNode.nodeType===c.offsetNode.ELEMENT_NODE){let b=c.offsetNode.parentNode,d=b&&b.nodeType===b.ELEMENT_NODE?b.className:null,e=b?b.parentNode:null,f=e&&e.nodeType===e.ELEMENT_NODE?e.className:null;if(d===ab.G.CLASS_NAME){let b=c.offsetNode.childNodes[Math.min(c.offset,c.offsetNode.childNodes.length-1)];if(b)return m.createFromDOMInfo(a,b,0)}else if(f===ab.G.CLASS_NAME)return m.createFromDOMInfo(a,c.offsetNode,0)}return new ai(c.offsetNode)}static _snapToSoftTabBoundary(a,b){let c=b.getLineContent(a.lineNumber),{tabSize:d}=b.model.getOptions(),e=af.s.atomicPosition(c,a.column-1,d,2);return -1!==e?new ac.y(a.lineNumber,e+1):a}static doHitTest(a,b){let c=new ai;if("function"==typeof a.viewDomNode.ownerDocument.caretRangeFromPoint?c=this._doHitTestWithCaretRangeFromPoint(a,b):a.viewDomNode.ownerDocument.caretPositionFromPoint&&(c=this._doHitTestWithCaretPositionFromPoint(a,b.pos.toClientCoordinates(v.zk(a.viewDomNode)))),1===c.type){let b=a.viewModel.getInjectedTextAt(c.position),d=a.viewModel.normalizePosition(c.position,2);(b||!d.equals(c.position))&&(c=new aj(d,c.spanNode,b))}return c}}class at{static{this._INSTANCE=null}static getInstance(){return at._INSTANCE||(at._INSTANCE=new at),at._INSTANCE}constructor(){this._cache={},this._canvas=document.createElement("canvas")}getCharWidth(a,b){let c=a+b;if(this._cache[c])return this._cache[c];let d=this._canvas.getContext("2d");d.font=b;let e=d.measureText(a).width;return this._cache[c]=e,e}}var au=c(6876),av=c(12235),aw=c(93842),ax=c(50370),ay=c(32263),az=c(72766);class aA extends y.jG{constructor(a,b,c,d){super(),this._context=a,this._viewHelper=b,this._mouseTargetFactory=c,this._dispatchMouse=d,this._operation=null}dispose(){super.dispose(),this.stop()}start(a,b){this._operation?this._operation.setPosition(a,b):this._operation=this._createDragScrollingOperation(a,b)}stop(){this._operation&&(this._operation.dispose(),this._operation=null)}}class aB extends y.jG{constructor(a,b,c,d,e,f){super(),this._context=a,this._viewHelper=b,this._mouseTargetFactory=c,this._dispatchMouse=d,this._position=e,this._mouseEvent=f,this._lastTime=Date.now(),this._animationFrameDisposable=v.PG(v.zk(f.browserEvent),()=>this._execute())}dispose(){this._animationFrameDisposable.dispose(),super.dispose()}setPosition(a,b){this._position=a,this._mouseEvent=b}_tick(){let a=Date.now(),b=a-this._lastTime;return this._lastTime=a,b}}class aC extends aA{_createDragScrollingOperation(a,b){return new aD(this._context,this._viewHelper,this._mouseTargetFactory,this._dispatchMouse,a,b)}}class aD extends aB{_getScrollSpeed(){let a=this._context.configuration.options.get(75),b=this._context.configuration.options.get(165).height/a,c=this._position.outsideDistance/a;return c<=1.5?Math.max(30,b*(1+c)):c<=3?Math.max(60,b*(2+c)):Math.max(200,b*(7+c))}_execute(){let a,b=this._context.configuration.options.get(75),c=this._getScrollSpeed(),d=this._tick()/1e3*c*b,e="above"===this._position.outsidePosition?-d:d;this._context.viewModel.viewLayout.deltaScrollNow(0,e),this._viewHelper.renderNow();let f=this._context.viewLayout.getLinesViewportData(),g="above"===this._position.outsidePosition?f.startLineNumber:f.endLineNumber;{let b=(0,Z.wt)(this._viewHelper.viewDomNode),c=this._context.configuration.options.get(165).horizontalScrollbarHeight,d=new Z.nz(this._mouseEvent.pos.x,b.y+b.height-c-.1),e=(0,Z.i_)(this._viewHelper.viewDomNode,b,d);a=this._mouseTargetFactory.createMouseTarget(this._viewHelper.getLastRenderData(),b,d,e,null)}a.position&&a.position.lineNumber===g||(a="above"===this._position.outsidePosition?al.createOutsideEditor(this._position.mouseColumn,new ac.y(g,1),"above",this._position.outsideDistance):al.createOutsideEditor(this._position.mouseColumn,new ac.y(g,this._context.viewModel.getLineMaxColumn(g)),"below",this._position.outsideDistance)),this._dispatchMouse(a,!0,2),this._animationFrameDisposable=v.PG(v.zk(a.element),()=>this._execute())}}class aE extends aA{_createDragScrollingOperation(a,b){return new aF(this._context,this._viewHelper,this._mouseTargetFactory,this._dispatchMouse,a,b)}}class aF extends aB{_getScrollSpeed(){let a=this._context.configuration.options.get(59).typicalFullwidthCharacterWidth,b=this._context.configuration.options.get(165).contentWidth/a,c=this._position.outsideDistance/a;return c<=1.5?Math.max(30,b*(1+c)):c<=3?Math.max(60,b*(2+c)):Math.max(200,b*(7+c))}_execute(){let a,b=this._context.configuration.options.get(59).typicalFullwidthCharacterWidth,c=this._getScrollSpeed(),d=this._tick()/1e3*c*b*.5,e="left"===this._position.outsidePosition?-d:d;if(this._context.viewModel.viewLayout.deltaScrollNow(e,0),this._viewHelper.renderNow(),!this._position.position)return;let f=this._position.position.lineNumber;{let b=(0,Z.wt)(this._viewHelper.viewDomNode),c=this._context.configuration.options.get(165).horizontalScrollbarHeight,d=new Z.nz(this._mouseEvent.pos.x,b.y+b.height-c-.1),e=(0,Z.i_)(this._viewHelper.viewDomNode,b,d);a=this._mouseTargetFactory.createMouseTarget(this._viewHelper.getLastRenderData(),b,d,e,null)}a="left"===this._position.outsidePosition?al.createOutsideEditor(a.mouseColumn,new ac.y(f,a.mouseColumn),"left",this._position.outsideDistance):al.createOutsideEditor(a.mouseColumn,new ac.y(f,a.mouseColumn),"right",this._position.outsideDistance),this._dispatchMouse(a,!0,2),this._animationFrameDisposable=v.PG(v.zk(a.element),()=>this._execute())}}class aG extends $.i{constructor(a,b,c){super(),this._mouseLeaveMonitor=null,this._context=a,this.viewController=b,this.viewHelper=c,this.mouseTargetFactory=new as(this._context,c),this._mouseDownOperation=this._register(new aH(this._context,this.viewController,this.viewHelper,this.mouseTargetFactory,(a,b)=>this._createMouseTarget(a,b),a=>this._getMouseColumn(a))),this.lastMouseLeaveTime=-1,this._height=this._context.configuration.options.get(165).height;const d=new Z.$z(this.viewHelper.viewDomNode);this._register(d.onContextMenu(this.viewHelper.viewDomNode,a=>this._onContextMenu(a,!0))),this._register(d.onMouseMove(this.viewHelper.viewDomNode,a=>{this._onMouseMove(a),this._mouseLeaveMonitor||(this._mouseLeaveMonitor=v.ko(this.viewHelper.viewDomNode.ownerDocument,"mousemove",a=>{this.viewHelper.viewDomNode.contains(a.target)||this._onMouseLeave(new Z.dO(a,!1,this.viewHelper.viewDomNode))}))})),this._register(d.onMouseUp(this.viewHelper.viewDomNode,a=>this._onMouseUp(a))),this._register(d.onMouseLeave(this.viewHelper.viewDomNode,a=>this._onMouseLeave(a)));let e=0;this._register(d.onPointerDown(this.viewHelper.viewDomNode,(a,b)=>{e=b})),this._register(v.ko(this.viewHelper.viewDomNode,v.Bx.POINTER_UP,a=>{this._mouseDownOperation.onPointerUp()})),this._register(d.onMouseDown(this.viewHelper.viewDomNode,a=>this._onMouseDown(a,e))),this._setupMouseWheelZoomListener(),this._context.addEventHandler(this)}_setupMouseWheelZoomListener(){let a=az.QC.INSTANCE,b=0,c=N.D.getZoomLevel(),d=!1,e=0,f=f=>{if(this.viewController.emitMouseWheel(f),!this._context.configuration.options.get(84))return;let h=new ax.$(f);if(a.acceptStandardWheelEvent(h),a.isPhysicalMouseWheel()){if(g(f)){let a=N.D.getZoomLevel(),b=h.deltaY>0?1:-1;N.D.setZoomLevel(a+b),h.preventDefault(),h.stopPropagation()}}else Date.now()-b>50&&(c=N.D.getZoomLevel(),d=g(f),e=0),b=Date.now(),e+=h.deltaY,d&&(N.D.setZoomLevel(c+e/5),h.preventDefault(),h.stopPropagation())};function g(a){return E.zx?(a.metaKey||a.ctrlKey)&&!a.shiftKey&&!a.altKey:a.ctrlKey&&!a.metaKey&&!a.shiftKey&&!a.altKey}this._register(v.ko(this.viewHelper.viewDomNode,v.Bx.MOUSE_WHEEL,f,{capture:!0,passive:!1}))}dispose(){this._context.removeEventHandler(this),this._mouseLeaveMonitor&&(this._mouseLeaveMonitor.dispose(),this._mouseLeaveMonitor=null),super.dispose()}onConfigurationChanged(a){if(a.hasChanged(165)){let a=this._context.configuration.options.get(165).height;this._height!==a&&(this._height=a,this._mouseDownOperation.onHeightChanged())}return!1}onCursorStateChanged(a){return this._mouseDownOperation.onCursorStateChanged(a),!1}onFocusChanged(a){return!1}getTargetAtClientPoint(a,b){let c=new Z.Hh(a,b).toPageCoordinates(v.zk(this.viewHelper.viewDomNode)),d=(0,Z.wt)(this.viewHelper.viewDomNode);if(c.y<d.y||c.y>d.y+d.height||c.x<d.x||c.x>d.x+d.width)return null;let e=(0,Z.i_)(this.viewHelper.viewDomNode,d,c);return this.mouseTargetFactory.createMouseTarget(this.viewHelper.getLastRenderData(),d,c,e,null)}_createMouseTarget(a,b){let c=a.target;if(!this.viewHelper.viewDomNode.contains(c)){let b=v.jG(this.viewHelper.viewDomNode);b&&(c=b.elementsFromPoint(a.posx,a.posy).find(a=>this.viewHelper.viewDomNode.contains(a)))}return this.mouseTargetFactory.createMouseTarget(this.viewHelper.getLastRenderData(),a.editorPos,a.pos,a.relativePos,b?c:null)}_getMouseColumn(a){return this.mouseTargetFactory.getMouseColumn(a.relativePos)}_onContextMenu(a,b){this.viewController.emitContextMenu({event:a,target:this._createMouseTarget(a,b)})}_onMouseMove(a){this.mouseTargetFactory.mouseTargetIsWidget(a)||a.preventDefault(),this._mouseDownOperation.isActive()||a.timestamp<this.lastMouseLeaveTime||this.viewController.emitMouseMove({event:a,target:this._createMouseTarget(a,!0)})}_onMouseLeave(a){this._mouseLeaveMonitor&&(this._mouseLeaveMonitor.dispose(),this._mouseLeaveMonitor=null),this.lastMouseLeaveTime=new Date().getTime(),this.viewController.emitMouseLeave({event:a,target:null})}_onMouseUp(a){this.viewController.emitMouseUp({event:a,target:this._createMouseTarget(a,!0)})}_onMouseDown(a,b){let c=this._createMouseTarget(a,!0),d=6===c.type||7===c.type,e=2===c.type||3===c.type||4===c.type,f=3===c.type,g=this._context.configuration.options.get(125),h=8===c.type||5===c.type,i=9===c.type,j=a.leftButton||a.middleButton;E.zx&&a.leftButton&&a.ctrlKey&&(j=!1);let k=()=>{a.preventDefault(),this.viewHelper.focusTextArea()};if(j&&(d||f&&g))k(),this._mouseDownOperation.start(c.type,a,b);else if(e)a.preventDefault();else if(h){let d=c.detail;j&&this.viewHelper.shouldSuppressMouseDownOnViewZone(d.viewZoneId)&&(k(),this._mouseDownOperation.start(c.type,a,b),a.preventDefault())}else i&&this.viewHelper.shouldSuppressMouseDownOnWidget(c.detail)&&(k(),a.preventDefault());this.viewController.emitMouseDown({event:a,target:c})}}class aH extends y.jG{constructor(a,b,c,d,e,f){super(),this._context=a,this._viewController=b,this._viewHelper=c,this._mouseTargetFactory=d,this._createMouseTarget=e,this._getMouseColumn=f,this._mouseMoveMonitor=this._register(new Z.BA(this._viewHelper.viewDomNode)),this._topBottomDragScrolling=this._register(new aC(this._context,this._viewHelper,this._mouseTargetFactory,(a,b,c)=>this._dispatchMouse(a,b,c))),this._leftRightDragScrolling=this._register(new aE(this._context,this._viewHelper,this._mouseTargetFactory,(a,b,c)=>this._dispatchMouse(a,b,c))),this._mouseState=new aI,this._currentSelection=new ay.L(1,1,1,1),this._isActive=!1,this._lastMouseEvent=null}dispose(){super.dispose()}isActive(){return this._isActive}_onMouseDownThenMove(a){this._lastMouseEvent=a,this._mouseState.setModifiers(a);let b=this._findMousePosition(a,!1);b&&(this._mouseState.isDragAndDrop?this._viewController.emitMouseDrag({event:a,target:b}):13===b.type?"above"===b.outsidePosition||"below"===b.outsidePosition?(this._topBottomDragScrolling.start(b,a),this._leftRightDragScrolling.stop()):(this._leftRightDragScrolling.start(b,a),this._topBottomDragScrolling.stop()):(this._topBottomDragScrolling.stop(),this._leftRightDragScrolling.stop(),this._dispatchMouse(b,!0,1)))}start(a,b,c){this._lastMouseEvent=b,this._mouseState.setStartedOnLineNumbers(3===a),this._mouseState.setStartButtons(b),this._mouseState.setModifiers(b);let d=this._findMousePosition(b,!0);if(!d||!d.position)return;this._mouseState.trySetCount(b.detail,d.position),b.detail=this._mouseState.count;let e=this._context.configuration.options;if(!e.get(104)&&e.get(42)&&!e.get(28)&&!this._mouseState.altKey&&b.detail<2&&!this._isActive&&!this._currentSelection.isEmpty()&&6===d.type&&d.position&&this._currentSelection.containsPosition(d.position)){this._mouseState.isDragAndDrop=!0,this._isActive=!0,this._mouseMoveMonitor.startMonitoring(this._viewHelper.viewLinesDomNode,c,b.buttons,a=>this._onMouseDownThenMove(a),a=>{let b=this._findMousePosition(this._lastMouseEvent,!1);v.kx(a)?this._viewController.emitMouseDropCanceled():this._viewController.emitMouseDrop({event:this._lastMouseEvent,target:b?this._createMouseTarget(this._lastMouseEvent,!0):null}),this._stop()});return}this._mouseState.isDragAndDrop=!1,this._dispatchMouse(d,b.shiftKey,1),this._isActive||(this._isActive=!0,this._mouseMoveMonitor.startMonitoring(this._viewHelper.viewLinesDomNode,c,b.buttons,a=>this._onMouseDownThenMove(a),()=>this._stop()))}_stop(){this._isActive=!1,this._topBottomDragScrolling.stop(),this._leftRightDragScrolling.stop()}onHeightChanged(){this._mouseMoveMonitor.stopMonitoring()}onPointerUp(){this._mouseMoveMonitor.stopMonitoring()}onCursorStateChanged(a){this._currentSelection=a.selections[0]}_getPositionOutsideEditor(a){let b=a.editorPos,c=this._context.viewModel,d=this._context.viewLayout,e=this._getMouseColumn(a);if(a.posy<b.y){let c=b.y-a.posy,f=Math.max(d.getCurrentScrollTop()-c,0),g=an.getZoneAtCoord(this._context,f);if(g){let a=this._helpPositionJumpOverViewZone(g);if(a)return al.createOutsideEditor(e,a,"above",c)}let h=d.getLineNumberAtVerticalOffset(f);return al.createOutsideEditor(e,new ac.y(h,1),"above",c)}if(a.posy>b.y+b.height){let f=a.posy-b.y-b.height,g=d.getCurrentScrollTop()+a.relativePos.y,h=an.getZoneAtCoord(this._context,g);if(h){let a=this._helpPositionJumpOverViewZone(h);if(a)return al.createOutsideEditor(e,a,"below",f)}let i=d.getLineNumberAtVerticalOffset(g);return al.createOutsideEditor(e,new ac.y(i,c.getLineMaxColumn(i)),"below",f)}let f=d.getLineNumberAtVerticalOffset(d.getCurrentScrollTop()+a.relativePos.y),g=this._context.configuration.options.get(165),h=g.contentLeft;if(a.relativePos.x<=h){let b=h-a.relativePos.x;return al.createOutsideEditor(e,new ac.y(f,1),"left",b)}let i=0===g.minimap.minimapLeft?g.width-g.verticalScrollbarWidth:g.minimap.minimapLeft;if(a.relativePos.x>=i){let b=a.relativePos.x-i;return al.createOutsideEditor(e,new ac.y(f,c.getLineMaxColumn(f)),"right",b)}return null}_findMousePosition(a,b){let c=this._getPositionOutsideEditor(a);if(c)return c;let d=this._createMouseTarget(a,b);if(!d.position)return null;if(8===d.type||5===d.type){let a=this._helpPositionJumpOverViewZone(d.detail);if(a)return al.createViewZone(d.type,d.element,d.mouseColumn,a,d.detail)}return d}_helpPositionJumpOverViewZone(a){let b=new ac.y(this._currentSelection.selectionStartLineNumber,this._currentSelection.selectionStartColumn),c=a.positionBefore,d=a.positionAfter;if(c&&d)if(c.isBefore(b))return c;else return d;return null}_dispatchMouse(a,b,c){a.position&&this._viewController.dispatchMouse({position:a.position,mouseColumn:a.mouseColumn,startedOnLineNumbers:this._mouseState.startedOnLineNumbers,revealType:c,inSelectionMode:b,mouseDownCount:this._mouseState.count,altKey:this._mouseState.altKey,ctrlKey:this._mouseState.ctrlKey,metaKey:this._mouseState.metaKey,shiftKey:this._mouseState.shiftKey,leftButton:this._mouseState.leftButton,middleButton:this._mouseState.middleButton,onInjectedText:6===a.type&&null!==a.detail.injectedText})}}class aI{static{this.CLEAR_MOUSE_DOWN_COUNT_TIME=400}get altKey(){return this._altKey}get ctrlKey(){return this._ctrlKey}get metaKey(){return this._metaKey}get shiftKey(){return this._shiftKey}get leftButton(){return this._leftButton}get middleButton(){return this._middleButton}get startedOnLineNumbers(){return this._startedOnLineNumbers}constructor(){this._altKey=!1,this._ctrlKey=!1,this._metaKey=!1,this._shiftKey=!1,this._leftButton=!1,this._middleButton=!1,this._startedOnLineNumbers=!1,this._lastMouseDownPosition=null,this._lastMouseDownPositionEqualCount=0,this._lastMouseDownCount=0,this._lastSetMouseDownCountTime=0,this.isDragAndDrop=!1}get count(){return this._lastMouseDownCount}setModifiers(a){this._altKey=a.altKey,this._ctrlKey=a.ctrlKey,this._metaKey=a.metaKey,this._shiftKey=a.shiftKey}setStartButtons(a){this._leftButton=a.leftButton,this._middleButton=a.middleButton}setStartedOnLineNumbers(a){this._startedOnLineNumbers=a}trySetCount(a,b){let c=new Date().getTime();c-this._lastSetMouseDownCountTime>aI.CLEAR_MOUSE_DOWN_COUNT_TIME&&(a=1),this._lastSetMouseDownCountTime=c,a>this._lastMouseDownCount+1&&(a=this._lastMouseDownCount+1),this._lastMouseDownPosition&&this._lastMouseDownPosition.equals(b)?this._lastMouseDownPositionEqualCount++:this._lastMouseDownPositionEqualCount=1,this._lastMouseDownPosition=b,this._lastMouseDownCount=Math.min(a,this._lastMouseDownPositionEqualCount)}}var aJ=c(1644),aK=c(94615),aL=c(91849),aM=c(77747),aN=c(12546),aO=c(38650);class aP{static{this.EMPTY=new aP("",0,0,null,void 0)}constructor(a,b,c,d,e){this.value=a,this.selectionStart=b,this.selectionEnd=c,this.selection=d,this.newlineCountBeforeSelection=e}toString(){return`[ <${this.value}>, selectionStart: ${this.selectionStart}, selectionEnd: ${this.selectionEnd}]`}static readFromTextArea(a,b){let c,d=a.getValue(),e=a.getSelectionStart(),f=a.getSelectionEnd();return b&&d.substring(0,e)===b.value.substring(0,b.selectionStart)&&(c=b.newlineCountBeforeSelection),new aP(d,e,f,null,c)}collapseSelection(){return this.selectionStart===this.value.length?this:new aP(this.value,this.value.length,this.value.length,null,void 0)}isWrittenToTextArea(a,b){let c=this.value===a.getValue();return b?this.selectionStart===a.getSelectionStart()&&this.selectionEnd===a.getSelectionEnd()&&c:c}writeToTextArea(a,b,c){b.setValue(a,this.value),c&&b.setSelectionRange(a,this.selectionStart,this.selectionEnd)}deduceEditorPosition(a){if(a<=this.selectionStart){let b=this.value.substring(a,this.selectionStart);return this._finishDeduceEditorPosition(this.selection?.getStartPosition()??null,b,-1)}if(a>=this.selectionEnd){let b=this.value.substring(this.selectionEnd,a);return this._finishDeduceEditorPosition(this.selection?.getEndPosition()??null,b,1)}let b=this.value.substring(this.selectionStart,a);if(-1===b.indexOf(String.fromCharCode(8230)))return this._finishDeduceEditorPosition(this.selection?.getStartPosition()??null,b,1);let c=this.value.substring(a,this.selectionEnd);return this._finishDeduceEditorPosition(this.selection?.getEndPosition()??null,c,-1)}_finishDeduceEditorPosition(a,b,c){let d=0,e=-1;for(;-1!==(e=b.indexOf("\n",e+1));)d++;return[a,c*b.length,d]}static deduceInput(a,b,c){if(!a)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:0};let d=Math.min((0,aM.Qp)(a.value,b.value),a.selectionStart,b.selectionStart),e=Math.min((0,aM.Vi)(a.value,b.value),a.value.length-a.selectionEnd,b.value.length-b.selectionEnd),f=(a.value.substring(d,a.value.length-e),b.value.substring(d,b.value.length-e)),g=a.selectionStart-d,h=a.selectionEnd-d;return b.selectionStart-d==b.selectionEnd-d?{text:f,replacePrevCharCnt:a.selectionStart-d,replaceNextCharCnt:0,positionDelta:0}:{text:f,replacePrevCharCnt:h-g,replaceNextCharCnt:0,positionDelta:0}}static deduceAndroidCompositionInput(a,b){if(!a)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:0};if(a.value===b.value)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:b.selectionEnd-a.selectionEnd};let c=Math.min((0,aM.Qp)(a.value,b.value),a.selectionEnd),d=Math.min((0,aM.Vi)(a.value,b.value),a.value.length-a.selectionEnd),e=a.value.substring(c,a.value.length-d),f=b.value.substring(c,b.value.length-d),g=(a.selectionStart,a.selectionEnd-c),h=(b.selectionStart,b.selectionEnd-c);return{text:f,replacePrevCharCnt:g,replaceNextCharCnt:e.length-g,positionDelta:h-f.length}}static fromScreenReaderContentState(a){return new aP(a.value,a.selectionStart,a.selectionEnd,a.selection,a.newlineCountBeforeSelection)}}var aQ=c(54058),aR=function(a,b){return function(c,d){b(c,d,a)}};(n||(n={})).Tap="-monaco-textarea-synthetic-tap";class aS{constructor(){this._lastTypeTextLength=0}handleCompositionUpdate(a){let b={text:a=a||"",replacePrevCharCnt:this._lastTypeTextLength,replaceNextCharCnt:0,positionDelta:0};return this._lastTypeTextLength=a.length,b}}let aT=class extends y.jG{get textAreaState(){return this._textAreaState}constructor(a,b,c,d,e,f){super(),this._host=a,this._textArea=b,this._OS=c,this._browser=d,this._accessibilityService=e,this._logService=f,this._onFocus=this._register(new x.vl),this.onFocus=this._onFocus.event,this._onBlur=this._register(new x.vl),this.onBlur=this._onBlur.event,this._onKeyDown=this._register(new x.vl),this.onKeyDown=this._onKeyDown.event,this._onKeyUp=this._register(new x.vl),this.onKeyUp=this._onKeyUp.event,this._onCut=this._register(new x.vl),this.onCut=this._onCut.event,this._onPaste=this._register(new x.vl),this.onPaste=this._onPaste.event,this._onType=this._register(new x.vl),this.onType=this._onType.event,this._onCompositionStart=this._register(new x.vl),this.onCompositionStart=this._onCompositionStart.event,this._onCompositionUpdate=this._register(new x.vl),this.onCompositionUpdate=this._onCompositionUpdate.event,this._onCompositionEnd=this._register(new x.vl),this.onCompositionEnd=this._onCompositionEnd.event,this._onSelectionChangeRequest=this._register(new x.vl),this.onSelectionChangeRequest=this._onSelectionChangeRequest.event,this._asyncFocusGainWriteScreenReaderContent=this._register(new y.HE),this._asyncTriggerCut=this._register(new aL.uC(()=>this._onCut.fire(),0)),this._textAreaState=aP.EMPTY,this._selectionChangeListener=null,this._accessibilityService.isScreenReaderOptimized()&&this.writeNativeTextAreaContent("ctor"),this._register(x.Jh.runAndSubscribe(this._accessibilityService.onDidChangeScreenReaderOptimized,()=>{this._accessibilityService.isScreenReaderOptimized()&&!this._asyncFocusGainWriteScreenReaderContent.value?this._asyncFocusGainWriteScreenReaderContent.value=this._register(new aL.uC(()=>this.writeNativeTextAreaContent("asyncFocusGain"),0)):this._asyncFocusGainWriteScreenReaderContent.clear()})),this._hasFocus=!1,this._currentComposition=null;let g=null;this._register(this._textArea.onKeyDown(a=>{let b=new aK.Z(a);(114===b.keyCode||this._currentComposition&&1===b.keyCode)&&b.stopPropagation(),b.equals(9)&&b.preventDefault(),g=b,this._onKeyDown.fire(b)})),this._register(this._textArea.onKeyUp(a=>{let b=new aK.Z(a);this._onKeyUp.fire(b)})),this._register(this._textArea.onCompositionStart(a=>{let b=new aS;if(this._currentComposition){this._currentComposition=b;return}if(this._currentComposition=b,2===this._OS&&g&&g.equals(114)&&this._textAreaState.selectionStart===this._textAreaState.selectionEnd&&this._textAreaState.selectionStart>0&&this._textAreaState.value.substr(this._textAreaState.selectionStart-1,1)===a.data&&("ArrowRight"===g.code||"ArrowLeft"===g.code)){b.handleCompositionUpdate("x"),this._onCompositionStart.fire({data:a.data});return}this._browser.isAndroid,this._onCompositionStart.fire({data:a.data})})),this._register(this._textArea.onCompositionUpdate(a=>{let b=this._currentComposition;if(!b)return;if(this._browser.isAndroid){let b=aP.readFromTextArea(this._textArea,this._textAreaState),c=aP.deduceAndroidCompositionInput(this._textAreaState,b);this._textAreaState=b,this._onType.fire(c),this._onCompositionUpdate.fire(a);return}let c=b.handleCompositionUpdate(a.data);this._textAreaState=aP.readFromTextArea(this._textArea,this._textAreaState),this._onType.fire(c),this._onCompositionUpdate.fire(a)})),this._register(this._textArea.onCompositionEnd(a=>{let b=this._currentComposition;if(!b)return;if(this._currentComposition=null,this._browser.isAndroid){let a=aP.readFromTextArea(this._textArea,this._textAreaState),b=aP.deduceAndroidCompositionInput(this._textAreaState,a);this._textAreaState=a,this._onType.fire(b),this._onCompositionEnd.fire();return}let c=b.handleCompositionUpdate(a.data);this._textAreaState=aP.readFromTextArea(this._textArea,this._textAreaState),this._onType.fire(c),this._onCompositionEnd.fire()})),this._register(this._textArea.onInput(a=>{if(this._textArea.setIgnoreSelectionChangeTime("received input event"),this._currentComposition)return;let b=aP.readFromTextArea(this._textArea,this._textAreaState),c=aP.deduceInput(this._textAreaState,b,2===this._OS);0===c.replacePrevCharCnt&&1===c.text.length&&(aM.pc(c.text.charCodeAt(0))||127===c.text.charCodeAt(0))||(this._textAreaState=b,(""!==c.text||0!==c.replacePrevCharCnt||0!==c.replaceNextCharCnt||0!==c.positionDelta)&&("insertFromPaste"===a.inputType?this._onPaste.fire({text:c.text,metadata:aO.bs.INSTANCE.get(c.text)}):this._onType.fire(c)))})),this._register(this._textArea.onCut(a=>{this._logService.trace("TextAreaInput#onCut",a),this._textArea.setIgnoreSelectionChangeTime("received cut event"),this._ensureClipboardGetsEditorSelection(a),this._asyncTriggerCut.schedule()})),this._register(this._textArea.onCopy(a=>{this._logService.trace("TextAreaInput#onCopy",a),this._ensureClipboardGetsEditorSelection(a)})),this._register(this._textArea.onPaste(a=>{if(this._logService.trace("TextAreaInput#onPaste",a),this._textArea.setIgnoreSelectionChangeTime("received paste event"),a.preventDefault(),!a.clipboardData)return;let[b,c]=aO.Mz.getTextData(a.clipboardData);this._logService.trace("TextAreaInput#onPaste with id : ",c?.id," with text.length: ",b.length),b&&(c=c||aO.bs.INSTANCE.get(b),this._logService.trace("TextAreaInput#onPaste (before onPaste)"),this._onPaste.fire({text:b,metadata:c}))})),this._register(this._textArea.onFocus(()=>{let a=this._hasFocus;this._setHasFocus(!0),this._accessibilityService.isScreenReaderOptimized()&&this._browser.isSafari&&!a&&this._hasFocus&&(this._asyncFocusGainWriteScreenReaderContent.value||(this._asyncFocusGainWriteScreenReaderContent.value=new aL.uC(()=>this.writeNativeTextAreaContent("asyncFocusGain"),0)),this._asyncFocusGainWriteScreenReaderContent.value.schedule())})),this._register(this._textArea.onBlur(()=>{this._currentComposition&&(this._currentComposition=null,this.writeNativeTextAreaContent("blurWithoutCompositionEnd"),this._onCompositionEnd.fire()),this._setHasFocus(!1)})),this._register(this._textArea.onSyntheticTap(()=>{this._browser.isAndroid&&this._currentComposition&&(this._currentComposition=null,this.writeNativeTextAreaContent("tapWithoutCompositionEnd"),this._onCompositionEnd.fire())}))}_installSelectionChangeListener(){let a=0;return v.ko(this._textArea.ownerDocument,"selectionchange",b=>{if(l.onSelectionChange(),!this._hasFocus||this._currentComposition||!this._browser.isChrome)return;let c=Date.now(),d=c-a;if(a=c,d<5)return;let e=c-this._textArea.getIgnoreSelectionChangeTime();if(this._textArea.resetSelectionChangeTime(),e<100||!this._textAreaState.selection)return;let f=this._textArea.getValue();if(this._textAreaState.value!==f)return;let g=this._textArea.getSelectionStart(),h=this._textArea.getSelectionEnd();if(this._textAreaState.selectionStart===g&&this._textAreaState.selectionEnd===h)return;let i=this._textAreaState.deduceEditorPosition(g),j=this._host.deduceModelPosition(i[0],i[1],i[2]),k=this._textAreaState.deduceEditorPosition(h),m=this._host.deduceModelPosition(k[0],k[1],k[2]),n=new ay.L(j.lineNumber,j.column,m.lineNumber,m.column);this._onSelectionChangeRequest.fire(n)})}dispose(){super.dispose(),this._selectionChangeListener&&(this._selectionChangeListener.dispose(),this._selectionChangeListener=null)}focusTextArea(){this._setHasFocus(!0),this.refreshFocusState()}isFocused(){return this._hasFocus}refreshFocusState(){this._setHasFocus(this._textArea.hasFocus())}_setHasFocus(a){this._hasFocus!==a&&(this._hasFocus=a,this._selectionChangeListener&&(this._selectionChangeListener.dispose(),this._selectionChangeListener=null),this._hasFocus&&(this._selectionChangeListener=this._installSelectionChangeListener()),this._hasFocus&&this.writeNativeTextAreaContent("focusgain"),this._hasFocus?this._onFocus.fire():this._onBlur.fire())}_setAndWriteTextAreaState(a,b){this._hasFocus||(b=b.collapseSelection()),b.isWrittenToTextArea(this._textArea,this._hasFocus)||this._logService.trace(`writeTextAreaState(reason: ${a})`),b.writeToTextArea(a,this._textArea,this._hasFocus),this._textAreaState=b}writeNativeTextAreaContent(a){(this._accessibilityService.isScreenReaderOptimized()||"render"!==a)&&!this._currentComposition&&this._setAndWriteTextAreaState(a,this._host.getScreenReaderContent())}_ensureClipboardGetsEditorSelection(a){let b,c=this._host.getDataToCopy();this._logService.getLevel()===aN.$b.Trace&&(b=(0,aQ.b)());let d={version:1,id:b,isFromEmptySelection:c.isFromEmptySelection,multicursorText:c.multicursorText,mode:c.mode};aO.bs.INSTANCE.set(this._browser.isFirefox?c.text.replace(/\r\n/g,"\n"):c.text,d),a.preventDefault(),a.clipboardData&&aO.Mz.setTextData(a.clipboardData,c.text,c.html,d),this._logService.trace("TextAreaEditContextInput#_ensureClipboardGetsEditorSelection with id : ",b," with text.length: ",c.text.length)}};aT=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([aR(4,P.j),aR(5,aN.rr)],aT);class aU extends y.jG{get ownerDocument(){return this._actual.ownerDocument}constructor(a){super(),this._actual=a,this._onSyntheticTap=this._register(new x.vl),this.onSyntheticTap=this._onSyntheticTap.event,this._ignoreSelectionChangeTime=0,this.onKeyDown=this._register(new aJ.f(this._actual,"keydown")).event,this.onKeyPress=this._register(new aJ.f(this._actual,"keypress")).event,this.onKeyUp=this._register(new aJ.f(this._actual,"keyup")).event,this.onCompositionStart=this._register(new aJ.f(this._actual,"compositionstart")).event,this.onCompositionUpdate=this._register(new aJ.f(this._actual,"compositionupdate")).event,this.onCompositionEnd=this._register(new aJ.f(this._actual,"compositionend")).event,this.onBeforeInput=this._register(new aJ.f(this._actual,"beforeinput")).event,this.onInput=this._register(new aJ.f(this._actual,"input")).event,this.onCut=this._register(new aJ.f(this._actual,"cut")).event,this.onCopy=this._register(new aJ.f(this._actual,"copy")).event,this.onPaste=this._register(new aJ.f(this._actual,"paste")).event,this.onFocus=this._register(new aJ.f(this._actual,"focus")).event,this.onBlur=this._register(new aJ.f(this._actual,"blur")).event,this._register(this.onKeyDown(()=>l.onKeyDown())),this._register(this.onBeforeInput(()=>l.onBeforeInput())),this._register(this.onInput(()=>l.onInput())),this._register(this.onKeyUp(()=>l.onKeyUp())),this._register(v.ko(this._actual,n.Tap,()=>this._onSyntheticTap.fire()))}hasFocus(){let a=v.jG(this._actual);return a?a.activeElement===this._actual:!!this._actual.isConnected&&v.bq()===this._actual}setIgnoreSelectionChangeTime(a){this._ignoreSelectionChangeTime=Date.now()}getIgnoreSelectionChangeTime(){return this._ignoreSelectionChangeTime}resetSelectionChangeTime(){this._ignoreSelectionChangeTime=0}getValue(){return this._actual.value}setValue(a,b){let c=this._actual;c.value!==b&&(this.setIgnoreSelectionChangeTime("setValue"),c.value=b)}getSelectionStart(){return"backward"===this._actual.selectionDirection?this._actual.selectionEnd:this._actual.selectionStart}getSelectionEnd(){return"backward"===this._actual.selectionDirection?this._actual.selectionStart:this._actual.selectionEnd}setSelectionRange(a,b,c){let d=this._actual,e=null,f=v.jG(d);e=f?f.activeElement:v.bq();let g=v.zk(e),h=e===d,i=d.selectionStart,j=d.selectionEnd;if(h&&i===b&&j===c){B.gm&&g.parent!==g&&d.focus();return}if(h){this.setIgnoreSelectionChangeTime("setSelectionRange"),d.setSelectionRange(b,c),B.gm&&g.parent!==g&&d.focus();return}try{let a=v.zK(d);this.setIgnoreSelectionChangeTime("setSelectionRange"),d.focus(),d.setSelectionRange(b,c),v.wk(d,a)}catch(a){}}}class aV extends aG{constructor(a,b,c){super(a,b,c),this._register(av.q.addTarget(this.viewHelper.linesContentDomNode)),this._register(v.ko(this.viewHelper.linesContentDomNode,av.B.Tap,a=>this.onTap(a))),this._register(v.ko(this.viewHelper.linesContentDomNode,av.B.Change,a=>this.onChange(a))),this._register(v.ko(this.viewHelper.linesContentDomNode,av.B.Contextmenu,a=>this._onContextMenu(new Z.dO(a,!1,this.viewHelper.viewDomNode),!1))),this._lastPointerType="mouse",this._register(v.ko(this.viewHelper.linesContentDomNode,"pointerdown",a=>{let b=a.pointerType;if("mouse"===b){this._lastPointerType="mouse";return}"touch"===b?this._lastPointerType="touch":this._lastPointerType="pen"}));const d=new Z.DW(this.viewHelper.viewDomNode);this._register(d.onPointerMove(this.viewHelper.viewDomNode,a=>this._onMouseMove(a))),this._register(d.onPointerUp(this.viewHelper.viewDomNode,a=>this._onMouseUp(a))),this._register(d.onPointerLeave(this.viewHelper.viewDomNode,a=>this._onMouseLeave(a))),this._register(d.onPointerDown(this.viewHelper.viewDomNode,(a,b)=>this._onMouseDown(a,b)))}onTap(a){a.initialTarget&&this.viewHelper.linesContentDomNode.contains(a.initialTarget)&&(a.preventDefault(),this.viewHelper.focusTextArea(),this._dispatchGesture(a,!1))}onChange(a){"touch"===this._lastPointerType&&this._context.viewModel.viewLayout.deltaScrollNow(-a.translationX,-a.translationY),"pen"===this._lastPointerType&&this._dispatchGesture(a,!0)}_dispatchGesture(a,b){let c=this._createMouseTarget(new Z.dO(a,!1,this.viewHelper.viewDomNode),!1);c.position&&this.viewController.dispatchMouse({position:c.position,mouseColumn:c.position.column,startedOnLineNumbers:!1,revealType:1,mouseDownCount:a.tapCount,inSelectionMode:b,altKey:!1,ctrlKey:!1,metaKey:!1,shiftKey:!1,leftButton:!1,middleButton:!1,onInjectedText:6===c.type&&null!==c.detail.injectedText})}_onMouseDown(a,b){"touch"!==a.browserEvent.pointerType&&super._onMouseDown(a,b)}}class aW extends aG{constructor(a,b,c){super(a,b,c),this._register(av.q.addTarget(this.viewHelper.linesContentDomNode)),this._register(v.ko(this.viewHelper.linesContentDomNode,av.B.Tap,a=>this.onTap(a))),this._register(v.ko(this.viewHelper.linesContentDomNode,av.B.Change,a=>this.onChange(a))),this._register(v.ko(this.viewHelper.linesContentDomNode,av.B.Contextmenu,a=>this._onContextMenu(new Z.dO(a,!1,this.viewHelper.viewDomNode),!1)))}onTap(a){a.preventDefault(),this.viewHelper.focusTextArea();let b=this._createMouseTarget(new Z.dO(a,!1,this.viewHelper.viewDomNode),!1);if(b.position){let a=document.createEvent("CustomEvent");a.initEvent(n.Tap,!1,!0),this.viewHelper.dispatchTextAreaEvent(a),this.viewController.moveTo(b.position,1)}}onChange(a){this._context.viewModel.viewLayout.deltaScrollNow(-a.translationX,-a.translationY)}}class aX extends y.jG{constructor(a,b,c){super(),(E.un||E.m0&&E.Fr)&&au.e.pointerEvents?this.handler=this._register(new aV(a,b,c)):aw.G.TouchEvent?this.handler=this._register(new aW(a,b,c)):this.handler=this._register(new aG(a,b,c))}getTargetAtClientPoint(a,b){return this.handler.getTargetAtClientPoint(a,b)}}var aY=c(32801),aZ=c(50619);class a${constructor(a,b,c,d){this.configuration=a,this.viewModel=b,this.userInputEvents=c,this.commandDelegate=d}paste(a,b,c,d){this.commandDelegate.paste(a,b,c,d)}type(a){this.commandDelegate.type(a)}compositionType(a,b,c,d){this.commandDelegate.compositionType(a,b,c,d)}compositionStart(){this.commandDelegate.startComposition()}compositionEnd(){this.commandDelegate.endComposition()}cut(){this.commandDelegate.cut()}setSelection(a){aZ.QM.SetSelection.runCoreEditorCommand(this.viewModel,{source:"keyboard",selection:a})}_validateViewColumn(a){let b=this.viewModel.getLineMinColumn(a.lineNumber);return a.column<b?new ac.y(a.lineNumber,b):a}_hasMulticursorModifier(a){switch(this.configuration.options.get(86)){case"altKey":return a.altKey;case"ctrlKey":return a.ctrlKey;case"metaKey":return a.metaKey;default:return!1}}_hasNonMulticursorModifier(a){switch(this.configuration.options.get(86)){case"altKey":return a.ctrlKey||a.metaKey;case"ctrlKey":return a.altKey||a.metaKey;case"metaKey":return a.ctrlKey||a.altKey;default:return!1}}dispatchMouse(a){let b=this.configuration.options,c=E.j9&&b.get(121),d=b.get(28),e=b.get(171);a.middleButton&&!c?e||this._columnSelect(a.position,a.mouseColumn,a.inSelectionMode):a.startedOnLineNumbers?this._hasMulticursorModifier(a)?a.inSelectionMode?this._lastCursorLineSelect(a.position,a.revealType):this._createCursor(a.position,!0):a.inSelectionMode?this._lineSelectDrag(a.position,a.revealType):this._lineSelect(a.position,a.revealType):a.mouseDownCount>=4?this._selectAll():3===a.mouseDownCount?this._hasMulticursorModifier(a)?a.inSelectionMode?this._lastCursorLineSelectDrag(a.position,a.revealType):this._lastCursorLineSelect(a.position,a.revealType):a.inSelectionMode?this._lineSelectDrag(a.position,a.revealType):this._lineSelect(a.position,a.revealType):2===a.mouseDownCount?a.onInjectedText||(this._hasMulticursorModifier(a)?this._lastCursorWordSelect(a.position,a.revealType):a.inSelectionMode?this._wordSelectDrag(a.position,a.revealType):this._wordSelect(a.position,a.revealType)):this._hasMulticursorModifier(a)?this._hasNonMulticursorModifier(a)||(a.shiftKey?this._columnSelect(a.position,a.mouseColumn,!0):a.inSelectionMode?this._lastCursorMoveToSelect(a.position,a.revealType):this._createCursor(a.position,!1)):a.inSelectionMode?a.altKey||d?this._columnSelect(a.position,a.mouseColumn,!0):this._moveToSelect(a.position,a.revealType):this.moveTo(a.position,a.revealType)}_usualArgs(a,b){return a=this._validateViewColumn(a),{source:"mouse",position:this._convertViewToModelPosition(a),viewPosition:a,revealType:b}}moveTo(a,b){aZ.QM.MoveTo.runCoreEditorCommand(this.viewModel,this._usualArgs(a,b))}_moveToSelect(a,b){aZ.QM.MoveToSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(a,b))}_columnSelect(a,b,c){a=this._validateViewColumn(a),aZ.QM.ColumnSelect.runCoreEditorCommand(this.viewModel,{source:"mouse",position:this._convertViewToModelPosition(a),viewPosition:a,mouseColumn:b,doColumnSelect:c})}_createCursor(a,b){a=this._validateViewColumn(a),aZ.QM.CreateCursor.runCoreEditorCommand(this.viewModel,{source:"mouse",position:this._convertViewToModelPosition(a),viewPosition:a,wholeLine:b})}_lastCursorMoveToSelect(a,b){aZ.QM.LastCursorMoveToSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(a,b))}_wordSelect(a,b){aZ.QM.WordSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(a,b))}_wordSelectDrag(a,b){aZ.QM.WordSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(a,b))}_lastCursorWordSelect(a,b){aZ.QM.LastCursorWordSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(a,b))}_lineSelect(a,b){aZ.QM.LineSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(a,b))}_lineSelectDrag(a,b){aZ.QM.LineSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(a,b))}_lastCursorLineSelect(a,b){aZ.QM.LastCursorLineSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(a,b))}_lastCursorLineSelectDrag(a,b){aZ.QM.LastCursorLineSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(a,b))}_selectAll(){aZ.QM.SelectAll.runCoreEditorCommand(this.viewModel,{source:"mouse"})}_convertViewToModelPosition(a){return this.viewModel.coordinatesConverter.convertViewPositionToModelPosition(a)}emitKeyDown(a){this.userInputEvents.emitKeyDown(a)}emitKeyUp(a){this.userInputEvents.emitKeyUp(a)}emitContextMenu(a){this.userInputEvents.emitContextMenu(a)}emitMouseMove(a){this.userInputEvents.emitMouseMove(a)}emitMouseLeave(a){this.userInputEvents.emitMouseLeave(a)}emitMouseUp(a){this.userInputEvents.emitMouseUp(a)}emitMouseDown(a){this.userInputEvents.emitMouseDown(a)}emitMouseDrag(a){this.userInputEvents.emitMouseDrag(a)}emitMouseDrop(a){this.userInputEvents.emitMouseDrop(a)}emitMouseDropCanceled(){this.userInputEvents.emitMouseDropCanceled()}emitMouseWheel(a){this.userInputEvents.emitMouseWheel(a)}}var a_=c(83498),a0=c(77757);class a1{constructor(a){this._lineFactory=a,this._set(1,[])}flush(){this._set(1,[])}_set(a,b){this._lines=b,this._rendLineNumberStart=a}_get(){return{rendLineNumberStart:this._rendLineNumberStart,lines:this._lines}}getStartLineNumber(){return this._rendLineNumberStart}getEndLineNumber(){return this._rendLineNumberStart+this._lines.length-1}getCount(){return this._lines.length}getLine(a){let b=a-this._rendLineNumberStart;if(b<0||b>=this._lines.length)throw new w.D7("Illegal value for lineNumber");return this._lines[b]}onLinesDeleted(a,b){if(0===this.getCount())return null;let c=this.getStartLineNumber(),d=this.getEndLineNumber();if(b<c)return this._rendLineNumberStart-=b-a+1,null;if(a>d)return null;let e=0,f=0;for(let g=c;g<=d;g++){let c=g-this._rendLineNumberStart;a<=g&&g<=b&&(0===f?(e=c,f=1):f++)}if(a<c){let d=0;d=b<c?b-a+1:c-a,this._rendLineNumberStart-=d}return this._lines.splice(e,f)}onLinesChanged(a,b){let c=a+b-1;if(0===this.getCount())return!1;let d=this.getStartLineNumber(),e=this.getEndLineNumber(),f=!1;for(let b=a;b<=c;b++)b>=d&&b<=e&&(this._lines[b-this._rendLineNumberStart].onContentChanged(),f=!0);return f}onLinesInserted(a,b){if(0===this.getCount())return null;let c=b-a+1,d=this.getStartLineNumber(),e=this.getEndLineNumber();if(a<=d)return this._rendLineNumberStart+=c,null;if(a>e)return null;if(c+a>e)return this._lines.splice(a-this._rendLineNumberStart,e-a+1);let f=[];for(let a=0;a<c;a++)f[a]=this._lineFactory.createLine();let g=a-this._rendLineNumberStart,h=this._lines.slice(0,g),i=this._lines.slice(g,this._lines.length-c),j=this._lines.slice(this._lines.length-c,this._lines.length);return this._lines=h.concat(f).concat(i),j}onTokensChanged(a){if(0===this.getCount())return!1;let b=this.getStartLineNumber(),c=this.getEndLineNumber(),d=!1;for(let e=0,f=a.length;e<f;e++){let f=a[e];if(f.toLineNumber<b||f.fromLineNumber>c)continue;let g=Math.max(b,f.fromLineNumber),h=Math.min(c,f.toLineNumber);for(let a=g;a<=h;a++){let b=a-this._rendLineNumberStart;this._lines[b].onTokensChanged(),d=!0}}return d}}class a2{constructor(a,b){this._viewContext=a,this._lineFactory=b,this.domNode=this._createDomNode(),this._linesCollection=new a1(this._lineFactory)}_createDomNode(){let a=(0,Y.Z)(document.createElement("div"));return a.setClassName("view-layer"),a.setPosition("absolute"),a.domNode.setAttribute("role","presentation"),a.domNode.setAttribute("aria-hidden","true"),a}onConfigurationChanged(a){return!!a.hasChanged(165)}onFlushed(a,b){if(b){let a=this._linesCollection.getStartLineNumber(),b=this._linesCollection.getEndLineNumber();for(let c=a;c<=b;c++)this._linesCollection.getLine(c).getDomNode()?.remove()}return this._linesCollection.flush(),!0}onLinesChanged(a){return this._linesCollection.onLinesChanged(a.fromLineNumber,a.count)}onLinesDeleted(a){let b=this._linesCollection.onLinesDeleted(a.fromLineNumber,a.toLineNumber);if(b)for(let a=0,c=b.length;a<c;a++){let c=b[a].getDomNode();c?.remove()}return!0}onLinesInserted(a){let b=this._linesCollection.onLinesInserted(a.fromLineNumber,a.toLineNumber);if(b)for(let a=0,c=b.length;a<c;a++){let c=b[a].getDomNode();c?.remove()}return!0}onScrollChanged(a){return a.scrollTopChanged}onTokensChanged(a){return this._linesCollection.onTokensChanged(a.ranges)}onZonesChanged(a){return!0}getStartLineNumber(){return this._linesCollection.getStartLineNumber()}getEndLineNumber(){return this._linesCollection.getEndLineNumber()}getVisibleLine(a){return this._linesCollection.getLine(a)}renderLines(a){let b=this._linesCollection._get(),c=new a3(this.domNode.domNode,this._lineFactory,a,this._viewContext),d={rendLineNumberStart:b.rendLineNumberStart,lines:b.lines,linesLength:b.lines.length},e=c.render(d,a.startLineNumber,a.endLineNumber,a.relativeVerticalOffset);this._linesCollection._set(e.rendLineNumberStart,e.lines)}}class a3{static{this._ttPolicy=(0,a_.H)("editorViewLayer",{createHTML:a=>a})}constructor(a,b,c,d){this._domNode=a,this._lineFactory=b,this._viewportData=c,this._viewContext=d}render(a,b,c,d){let e={rendLineNumberStart:a.rendLineNumberStart,lines:a.lines.slice(0),linesLength:a.linesLength};if(e.rendLineNumberStart+e.linesLength-1<b||c<e.rendLineNumberStart){e.rendLineNumberStart=b,e.linesLength=c-b+1,e.lines=[];for(let a=b;a<=c;a++)e.lines[a-b]=this._lineFactory.createLine();return this._finishRendering(e,!0,d),e}if(this._renderUntouchedLines(e,Math.max(b-e.rendLineNumberStart,0),Math.min(c-e.rendLineNumberStart,e.linesLength-1),d,b),e.rendLineNumberStart>b){let a=Math.min(c,e.rendLineNumberStart-1);b<=a&&(this._insertLinesBefore(e,b,a,d,b),e.linesLength+=a-b+1)}else if(e.rendLineNumberStart<b){let a=Math.min(e.linesLength,b-e.rendLineNumberStart);a>0&&(this._removeLinesBefore(e,a),e.linesLength-=a)}if(e.rendLineNumberStart=b,e.rendLineNumberStart+e.linesLength-1<c){let a=e.rendLineNumberStart+e.linesLength;a<=c&&(this._insertLinesAfter(e,a,c,d,b),e.linesLength+=c-a+1)}else if(e.rendLineNumberStart+e.linesLength-1>c){let a=Math.max(0,c-e.rendLineNumberStart+1),b=e.linesLength-1-a+1;b>0&&(this._removeLinesAfter(e,b),e.linesLength-=b)}return this._finishRendering(e,!1,d),e}_renderUntouchedLines(a,b,c,d,e){let f=a.rendLineNumberStart,g=a.lines;for(let a=b;a<=c;a++){let b=f+a;g[a].layoutLine(b,d[b-e],this._lineHeightForLineNumber(b))}}_insertLinesBefore(a,b,c,d,e){let f=[],g=0;for(let a=b;a<=c;a++)f[g++]=this._lineFactory.createLine();a.lines=f.concat(a.lines)}_removeLinesBefore(a,b){for(let c=0;c<b;c++){let b=a.lines[c].getDomNode();b?.remove()}a.lines.splice(0,b)}_insertLinesAfter(a,b,c,d,e){let f=[],g=0;for(let a=b;a<=c;a++)f[g++]=this._lineFactory.createLine();a.lines=a.lines.concat(f)}_removeLinesAfter(a,b){let c=a.linesLength-b;for(let d=0;d<b;d++){let b=a.lines[c+d].getDomNode();b?.remove()}a.lines.splice(c,b)}_finishRenderingNewLines(a,b,c,d){a3._ttPolicy&&(c=a3._ttPolicy.createHTML(c));let e=this._domNode.lastChild;b||!e?this._domNode.innerHTML=c:e.insertAdjacentHTML("afterend",c);let f=this._domNode.lastChild;for(let b=a.linesLength-1;b>=0;b--){let c=a.lines[b];d[b]&&(c.setDomNode(f),f=f.previousSibling)}}_finishRenderingInvalidLines(a,b,c){let d=document.createElement("div");a3._ttPolicy&&(b=a3._ttPolicy.createHTML(b)),d.innerHTML=b;for(let b=0;b<a.linesLength;b++){let e=a.lines[b];if(c[b]){let a=d.firstChild,b=e.getDomNode();b.parentNode.replaceChild(a,b),e.setDomNode(a)}}}static{this._sb=new a0.fe(1e5)}_finishRendering(a,b,c){let d=a3._sb,e=a.linesLength,f=a.lines,g=a.rendLineNumberStart,h=[];{d.reset();let i=!1;for(let a=0;a<e;a++){let b=f[a];if(h[a]=!1,b.getDomNode())continue;let e=a+g;b.renderLine(e,c[a],this._lineHeightForLineNumber(e),this._viewportData,d)&&(h[a]=!0,i=!0)}i&&this._finishRenderingNewLines(a,b,d.build(),h)}{d.reset();let b=!1,i=[];for(let a=0;a<e;a++){let e=f[a];if(i[a]=!1,h[a])continue;let j=a+g;e.renderLine(j,c[a],this._lineHeightForLineNumber(j),this._viewportData,d)&&(i[a]=!0,b=!0)}b&&this._finishRenderingInvalidLines(a,d.build(),i)}}_lineHeightForLineNumber(a){return this._viewContext.viewLayout.getLineHeightForLineNumber(a)}}class a4 extends _{constructor(a){super(a),this._dynamicOverlays=[],this._isFocused=!1,this._visibleLines=new a2(this._context,{createLine:()=>new a5(this._dynamicOverlays)}),this.domNode=this._visibleLines.domNode;const b=this._context.configuration.options.get(59);(0,A.M)(this.domNode,b),this.domNode.setClassName("view-overlays")}shouldRender(){if(super.shouldRender())return!0;for(let a=0,b=this._dynamicOverlays.length;a<b;a++)if(this._dynamicOverlays[a].shouldRender())return!0;return!1}dispose(){super.dispose();for(let a=0,b=this._dynamicOverlays.length;a<b;a++)this._dynamicOverlays[a].dispose();this._dynamicOverlays=[]}getDomNode(){return this.domNode}addDynamicOverlay(a){this._dynamicOverlays.push(a)}onConfigurationChanged(a){this._visibleLines.onConfigurationChanged(a);let b=this._context.configuration.options.get(59);return(0,A.M)(this.domNode,b),!0}onFlushed(a){return this._visibleLines.onFlushed(a)}onFocusChanged(a){return this._isFocused=a.isFocused,!0}onLinesChanged(a){return this._visibleLines.onLinesChanged(a)}onLinesDeleted(a){return this._visibleLines.onLinesDeleted(a)}onLinesInserted(a){return this._visibleLines.onLinesInserted(a)}onScrollChanged(a){return this._visibleLines.onScrollChanged(a)||!0}onTokensChanged(a){return this._visibleLines.onTokensChanged(a)}onZonesChanged(a){return this._visibleLines.onZonesChanged(a)}prepareRender(a){let b=this._dynamicOverlays.filter(a=>a.shouldRender());for(let c=0,d=b.length;c<d;c++){let d=b[c];d.prepareRender(a),d.onDidRender()}}render(a){this._viewOverlaysRender(a),this.domNode.toggleClassName("focused",this._isFocused)}_viewOverlaysRender(a){this._visibleLines.renderLines(a.viewportData)}}class a5{constructor(a){this._dynamicOverlays=a,this._domNode=null,this._renderedContent=null}getDomNode(){return this._domNode?this._domNode.domNode:null}setDomNode(a){this._domNode=(0,Y.Z)(a)}onContentChanged(){}onTokensChanged(){}renderLine(a,b,c,d,e){let f="";for(let b=0,c=this._dynamicOverlays.length;b<c;b++)f+=this._dynamicOverlays[b].render(d.startLineNumber,a);return this._renderedContent!==f&&(this._renderedContent=f,e.appendString('<div style="top:'),e.appendString(String(b)),e.appendString("px;height:"),e.appendString(String(c)),e.appendString("px;line-height:"),e.appendString(String(c)),e.appendString('px;">'),e.appendString(f),e.appendString("</div>"),!0)}layoutLine(a,b,c){this._domNode&&(this._domNode.setTop(b),this._domNode.setHeight(c),this._domNode.setLineHeight(c))}}class a6 extends a4{constructor(a){super(a);const b=this._context.configuration.options.get(165);this._contentWidth=b.contentWidth,this.domNode.setHeight(0)}onConfigurationChanged(a){let b=this._context.configuration.options.get(165);return this._contentWidth=b.contentWidth,super.onConfigurationChanged(a)||!0}onScrollChanged(a){return super.onScrollChanged(a)||a.scrollWidthChanged}_viewOverlaysRender(a){super._viewOverlaysRender(a),this.domNode.setWidth(Math.max(a.scrollWidth,this._contentWidth))}}class a7 extends a4{constructor(a){super(a);const b=this._context.configuration.options,c=b.get(165);this._contentLeft=c.contentLeft,this.domNode.setClassName("margin-view-overlays"),this.domNode.setWidth(1),(0,A.M)(this.domNode,b.get(59))}onConfigurationChanged(a){let b=this._context.configuration.options;(0,A.M)(this.domNode,b.get(59));let c=b.get(165);return this._contentLeft=c.contentLeft,super.onConfigurationChanged(a)||!0}onScrollChanged(a){return super.onScrollChanged(a)||a.scrollHeightChanged}_viewOverlaysRender(a){super._viewOverlaysRender(a);let b=Math.min(a.scrollHeight,1e6);this.domNode.setHeight(b),this.domNode.setWidth(this._contentLeft)}}class a8{constructor(a){this.onKeyDown=null,this.onKeyUp=null,this.onContextMenu=null,this.onMouseMove=null,this.onMouseLeave=null,this.onMouseDown=null,this.onMouseUp=null,this.onMouseDrag=null,this.onMouseDrop=null,this.onMouseDropCanceled=null,this.onMouseWheel=null,this._coordinatesConverter=a}emitKeyDown(a){this.onKeyDown?.(a)}emitKeyUp(a){this.onKeyUp?.(a)}emitContextMenu(a){this.onContextMenu?.(this._convertViewToModelMouseEvent(a))}emitMouseMove(a){this.onMouseMove?.(this._convertViewToModelMouseEvent(a))}emitMouseLeave(a){this.onMouseLeave?.(this._convertViewToModelMouseEvent(a))}emitMouseDown(a){this.onMouseDown?.(this._convertViewToModelMouseEvent(a))}emitMouseUp(a){this.onMouseUp?.(this._convertViewToModelMouseEvent(a))}emitMouseDrag(a){this.onMouseDrag?.(this._convertViewToModelMouseEvent(a))}emitMouseDrop(a){this.onMouseDrop?.(this._convertViewToModelMouseEvent(a))}emitMouseDropCanceled(){this.onMouseDropCanceled?.()}emitMouseWheel(a){this.onMouseWheel?.(a)}_convertViewToModelMouseEvent(a){return a.target?{event:a.event,target:this._convertViewToModelMouseTarget(a.target)}:a}_convertViewToModelMouseTarget(a){return a8.convertViewToModelMouseTarget(a,this._coordinatesConverter)}static convertViewToModelMouseTarget(a,b){let c={...a};return c.position&&(c.position=b.convertViewPositionToModelPosition(c.position)),c.range&&(c.range=b.convertViewRangeToModelRange(c.range)),(5===c.type||8===c.type)&&(c.detail=this.convertViewToModelViewZoneData(c.detail,b)),c}static convertViewToModelViewZoneData(a,b){return{viewZoneId:a.viewZoneId,positionBefore:a.positionBefore?b.convertViewPositionToModelPosition(a.positionBefore):a.positionBefore,positionAfter:a.positionAfter?b.convertViewPositionToModelPosition(a.positionAfter):a.positionAfter,position:b.convertViewPositionToModelPosition(a.position),afterLineNumber:b.convertViewPositionToModelPosition(new ac.y(a.afterLineNumber,1)).lineNumber}}}c(29989);class a9 extends _{constructor(a){super(a),this.blocks=[],this.contentWidth=-1,this.contentLeft=0,this.domNode=(0,Y.Z)(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this.domNode.setClassName("blockDecorations-container"),this.update()}update(){let a=!1,b=this._context.configuration.options.get(165),c=b.contentWidth-b.verticalScrollbarWidth;this.contentWidth!==c&&(this.contentWidth=c,a=!0);let d=b.contentLeft;return this.contentLeft!==d&&(this.contentLeft=d,a=!0),a}dispose(){super.dispose()}onConfigurationChanged(a){return this.update()}onScrollChanged(a){return a.scrollTopChanged||a.scrollLeftChanged}onDecorationsChanged(a){return!0}onZonesChanged(a){return!0}prepareRender(a){}render(a){let b=0;for(let c of a.getDecorationsInViewport()){let d,e;if(!c.options.blockClassName)continue;let f=this.blocks[b];f||(f=this.blocks[b]=(0,Y.Z)(document.createElement("div")),this.domNode.appendChild(f)),c.options.blockIsAfterEnd?(d=a.getVerticalOffsetAfterLineNumber(c.range.endLineNumber,!1),e=a.getVerticalOffsetAfterLineNumber(c.range.endLineNumber,!0)):(d=a.getVerticalOffsetForLineNumber(c.range.startLineNumber,!0),e=c.range.isEmpty()&&!c.options.blockDoesNotCollapse?a.getVerticalOffsetForLineNumber(c.range.startLineNumber,!1):a.getVerticalOffsetAfterLineNumber(c.range.endLineNumber,!0));let[g,h,i,j]=c.options.blockPadding??[0,0,0,0];f.setClassName("blockDecorations-block "+c.options.blockClassName),f.setLeft(this.contentLeft-j),f.setWidth(this.contentWidth+j+h),f.setTop(d-a.scrollTop-g),f.setHeight(e-d+g+i),b++}for(let a=b;a<this.blocks.length;a++)this.blocks[a].domNode.remove();this.blocks.length=b}}class ba extends _{constructor(a,b){super(a),this._viewDomNode=b,this._widgets={},this.domNode=(0,Y.Z)(document.createElement("div")),aa.write(this.domNode,1),this.domNode.setClassName("contentWidgets"),this.domNode.setPosition("absolute"),this.domNode.setTop(0),this.overflowingContentWidgetsDomNode=(0,Y.Z)(document.createElement("div")),aa.write(this.overflowingContentWidgetsDomNode,2),this.overflowingContentWidgetsDomNode.setClassName("overflowingContentWidgets")}dispose(){super.dispose(),this._widgets={}}onConfigurationChanged(a){for(let b of Object.keys(this._widgets))this._widgets[b].onConfigurationChanged(a);return!0}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onLineMappingChanged(a){return this._updateAnchorsViewPositions(),!0}onLinesChanged(a){return this._updateAnchorsViewPositions(),!0}onLinesDeleted(a){return this._updateAnchorsViewPositions(),!0}onLinesInserted(a){return this._updateAnchorsViewPositions(),!0}onScrollChanged(a){return!0}onZonesChanged(a){return!0}_updateAnchorsViewPositions(){for(let a of Object.keys(this._widgets))this._widgets[a].updateAnchorViewPosition()}addWidget(a){let b=new bb(this._context,this._viewDomNode,a);this._widgets[b.id]=b,b.allowEditorOverflow?this.overflowingContentWidgetsDomNode.appendChild(b.domNode):this.domNode.appendChild(b.domNode),this.setShouldRender()}setWidgetPosition(a,b,c,d,e){this._widgets[a.getId()].setPosition(b,c,d,e),this.setShouldRender()}removeWidget(a){let b=a.getId();if(this._widgets.hasOwnProperty(b)){let a=this._widgets[b];delete this._widgets[b];let c=a.domNode.domNode;c.remove(),c.removeAttribute("monaco-visible-content-widget"),this.setShouldRender()}}shouldSuppressMouseDownOnWidget(a){return!!this._widgets.hasOwnProperty(a)&&this._widgets[a].suppressMouseDown}onBeforeRender(a){for(let b of Object.keys(this._widgets))this._widgets[b].onBeforeRender(a)}prepareRender(a){for(let b of Object.keys(this._widgets))this._widgets[b].prepareRender(a)}render(a){for(let b of Object.keys(this._widgets))this._widgets[b].render(a)}}class bb{constructor(a,b,c){this._primaryAnchor=new bc(null,null),this._secondaryAnchor=new bc(null,null),this._context=a,this._viewDomNode=b,this._actual=c;const d=this._context.configuration.options,e=d.get(165),f=d.get(4);this.domNode=(0,Y.Z)(this._actual.getDomNode()),this.id=this._actual.getId(),this.allowEditorOverflow=(this._actual.allowEditorOverflow||!1)&&f,this.suppressMouseDown=this._actual.suppressMouseDown||!1,this._fixedOverflowWidgets=d.get(51),this._contentWidth=e.contentWidth,this._contentLeft=e.contentLeft,this._affinity=null,this._preference=[],this._cachedDomNodeOffsetWidth=-1,this._cachedDomNodeOffsetHeight=-1,this._maxWidth=this._getMaxWidth(),this._isVisible=!1,this._renderData=null,this.domNode.setPosition(this._fixedOverflowWidgets&&this.allowEditorOverflow?"fixed":"absolute"),this.domNode.setDisplay("none"),this.domNode.setVisibility("hidden"),this.domNode.setAttribute("widgetId",this.id),this.domNode.setMaxWidth(this._maxWidth)}onConfigurationChanged(a){let b=this._context.configuration.options;if(a.hasChanged(165)){let a=b.get(165);this._contentLeft=a.contentLeft,this._contentWidth=a.contentWidth,this._maxWidth=this._getMaxWidth()}}updateAnchorViewPosition(){this._setPosition(this._affinity,this._primaryAnchor.modelPosition,this._secondaryAnchor.modelPosition)}_setPosition(a,b,c){function d(a,b,c){if(!a)return new bc(null,null);let d=b.model.validatePosition(a);return b.coordinatesConverter.modelPositionIsVisible(d)?new bc(a,b.coordinatesConverter.convertModelPositionToViewPosition(d,c??void 0)):new bc(a,null)}this._affinity=a,this._primaryAnchor=d(b,this._context.viewModel,this._affinity),this._secondaryAnchor=d(c,this._context.viewModel,this._affinity)}_getMaxWidth(){let a=this.domNode.domNode.ownerDocument,b=a.defaultView;return this.allowEditorOverflow?b?.innerWidth||a.documentElement.offsetWidth||a.body.offsetWidth:this._contentWidth}setPosition(a,b,c,d){this._setPosition(d,a,b),this._preference=c,this._primaryAnchor.viewPosition&&this._preference&&this._preference.length>0?this.domNode.setDisplay("block"):this.domNode.setDisplay("none"),this._cachedDomNodeOffsetWidth=-1,this._cachedDomNodeOffsetHeight=-1}_layoutBoxInViewport(a,b,c,d){let e=a.top,f=a.top+a.height,g=d.viewportHeight-f,h=a.left;return h+b>d.scrollLeft+d.viewportWidth&&(h=d.scrollLeft+d.viewportWidth-b),h<d.scrollLeft&&(h=d.scrollLeft),{fitsAbove:e>=c,aboveTop:e-c,fitsBelow:g>=c,belowTop:f,left:h}}_layoutHorizontalSegmentInPage(a,b,c,d){let e=Math.max(15,b.left-d),f=Math.min(b.left+b.width+d,a.width-15),g=this._viewDomNode.domNode.ownerDocument.defaultView,h=b.left+c-(g?.scrollX??0);if(h+d>f){let a=h-(f-d);h-=a,c-=a}if(h<e){let a=h-e;h-=a,c-=a}return[c,h]}_layoutBoxInPage(a,b,c,d){let e=a.top-c,f=a.top+a.height,g=v.BK(this._viewDomNode.domNode),h=this._viewDomNode.domNode.ownerDocument,i=h.defaultView,j=g.top+e-(i?.scrollY??0),k=g.top+f-(i?.scrollY??0),l=v.tG(h.body),[m,n]=this._layoutHorizontalSegmentInPage(l,g,a.left-d.scrollLeft+this._contentLeft,b),o=j>=22,p=k+c<=l.height-22;return this._fixedOverflowWidgets?{fitsAbove:o,aboveTop:Math.max(j,22),fitsBelow:p,belowTop:k,left:n}:{fitsAbove:o,aboveTop:e,fitsBelow:p,belowTop:f,left:m}}_prepareRenderWidgetAtExactPositionOverflowing(a){return new bd(a.top,a.left+this._contentLeft)}_getAnchorsCoordinates(a){return{primary:b(this._primaryAnchor.viewPosition,this._affinity),secondary:b(this._secondaryAnchor.viewPosition?.lineNumber===this._primaryAnchor.viewPosition?.lineNumber?this._secondaryAnchor.viewPosition:null,this._affinity)};function b(b,c){if(!b)return null;let d=a.visibleRangeForPosition(b);if(!d)return null;let e=1===b.column&&3===c?0:d.left;return new be(a.getVerticalOffsetForLineNumber(b.lineNumber)-a.scrollTop,e,a.getLineHeightForLineNumber(b.lineNumber))}}_reduceAnchorCoordinates(a,b,c){if(!b)return a;let d=this._context.configuration.options.get(59),e=b.left;return e=e<a.left?Math.max(e,a.left-c+d.typicalFullwidthCharacterWidth):Math.min(e,a.left+c-d.typicalFullwidthCharacterWidth),new be(a.top,e,a.height)}_prepareRenderWidget(a){let b;if(!this._preference||0===this._preference.length)return null;let{primary:c,secondary:d}=this._getAnchorsCoordinates(a);if(!c)return{kind:"offViewport",preserveFocus:this.domNode.domNode.contains(this.domNode.domNode.ownerDocument.activeElement)};if(-1===this._cachedDomNodeOffsetWidth||-1===this._cachedDomNodeOffsetHeight){let a=null;if("function"==typeof this._actual.beforeRender&&(a=bf(this._actual.beforeRender,this._actual)),a)this._cachedDomNodeOffsetWidth=a.width,this._cachedDomNodeOffsetHeight=a.height;else{let a=this.domNode.domNode.getBoundingClientRect();this._cachedDomNodeOffsetWidth=Math.round(a.width),this._cachedDomNodeOffsetHeight=Math.round(a.height)}}let e=this._reduceAnchorCoordinates(c,d,this._cachedDomNodeOffsetWidth);b=this.allowEditorOverflow?this._layoutBoxInPage(e,this._cachedDomNodeOffsetWidth,this._cachedDomNodeOffsetHeight,a):this._layoutBoxInViewport(e,this._cachedDomNodeOffsetWidth,this._cachedDomNodeOffsetHeight,a);for(let a=1;a<=2;a++)for(let c of this._preference)if(1===c){if(!b)return null;if(2===a||b.fitsAbove)return{kind:"inViewport",coordinate:new bd(b.aboveTop,b.left),position:1}}else if(2===c){if(!b)return null;if(2===a||b.fitsBelow)return{kind:"inViewport",coordinate:new bd(b.belowTop,b.left),position:2}}else if(this.allowEditorOverflow)return{kind:"inViewport",coordinate:this._prepareRenderWidgetAtExactPositionOverflowing(new bd(e.top,e.left)),position:0};else return{kind:"inViewport",coordinate:new bd(e.top,e.left),position:0};return null}onBeforeRender(a){!this._primaryAnchor.viewPosition||!this._preference||this._primaryAnchor.viewPosition.lineNumber<a.startLineNumber||this._primaryAnchor.viewPosition.lineNumber>a.endLineNumber||this.domNode.setMaxWidth(this._maxWidth)}prepareRender(a){this._renderData=this._prepareRenderWidget(a)}render(a){if(!this._renderData||"offViewport"===this._renderData.kind){this._isVisible&&(this.domNode.removeAttribute("monaco-visible-content-widget"),this._isVisible=!1,this._renderData?.kind==="offViewport"&&this._renderData.preserveFocus?this.domNode.setTop(-1e3):this.domNode.setVisibility("hidden")),"function"==typeof this._actual.afterRender&&bf(this._actual.afterRender,this._actual,null,null);return}this.allowEditorOverflow?this.domNode.setTop(this._renderData.coordinate.top):this.domNode.setTop(this._renderData.coordinate.top+a.scrollTop-a.bigNumbersDelta),this.domNode.setLeft(this._renderData.coordinate.left),this._isVisible||(this.domNode.setVisibility("inherit"),this.domNode.setAttribute("monaco-visible-content-widget","true"),this._isVisible=!0),"function"==typeof this._actual.afterRender&&bf(this._actual.afterRender,this._actual,this._renderData.position,this._renderData.coordinate)}}class bc{constructor(a,b){this.modelPosition=a,this.viewPosition=b}}class bd{constructor(a,b){this.top=a,this.left=b,this._coordinateBrand=void 0}}class be{constructor(a,b,c){this.top=a,this.left=b,this.height=c,this._anchorCoordinateBrand=void 0}}function bf(a,b,...c){try{return a.call(b,...c)}catch{return null}}c(27939);class bg extends $.i{}var bh=c(80230),bi=c(14061),bj=c(30908);class bk extends bg{constructor(a){super(),this._context=a;const b=this._context.configuration.options,c=b.get(165);this._renderLineHighlight=b.get(110),this._renderLineHighlightOnlyWhenFocus=b.get(111),this._wordWrap=c.isViewportWrapping,this._contentLeft=c.contentLeft,this._contentWidth=c.contentWidth,this._selectionIsEmpty=!0,this._focused=!1,this._cursorLineNumbers=[1],this._selections=[new ay.L(1,1,1,1)],this._renderData=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),super.dispose()}_readFromSelections(){let a=!1,b=new Set;for(let a of this._selections)b.add(a.positionLineNumber);let c=Array.from(b);c.sort((a,b)=>a-b),C.aI(this._cursorLineNumbers,c)||(this._cursorLineNumbers=c,a=!0);let d=this._selections.every(a=>a.isEmpty());return this._selectionIsEmpty!==d&&(this._selectionIsEmpty=d,a=!0),a}onThemeChanged(a){return this._readFromSelections()}onConfigurationChanged(a){let b=this._context.configuration.options,c=b.get(165);return this._renderLineHighlight=b.get(110),this._renderLineHighlightOnlyWhenFocus=b.get(111),this._wordWrap=c.isViewportWrapping,this._contentLeft=c.contentLeft,this._contentWidth=c.contentWidth,!0}onCursorStateChanged(a){return this._selections=a.selections,this._readFromSelections()}onFlushed(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return a.scrollWidthChanged||a.scrollTopChanged}onZonesChanged(a){return!0}onFocusChanged(a){return!!this._renderLineHighlightOnlyWhenFocus&&(this._focused=a.isFocused,!0)}prepareRender(a){if(!this._shouldRenderThis()){this._renderData=null;return}let b=a.visibleRange.startLineNumber,c=a.visibleRange.endLineNumber,d=[];for(let a=b;a<=c;a++)d[a-b]="";if(this._wordWrap){let e=this._renderOne(a,!1);for(let a of this._cursorLineNumbers){let f=this._context.viewModel.coordinatesConverter,g=f.convertViewPositionToModelPosition(new ac.y(a,1)).lineNumber,h=f.convertModelPositionToViewPosition(new ac.y(g,1)).lineNumber,i=f.convertModelPositionToViewPosition(new ac.y(g,this._context.viewModel.model.getLineMaxColumn(g))).lineNumber,j=Math.max(h,b),k=Math.min(i,c);for(let a=j;a<=k;a++)d[a-b]=e}}let e=this._renderOne(a,!0);for(let a of this._cursorLineNumbers)a<b||a>c||(d[a-b]=e);this._renderData=d}render(a,b){if(!this._renderData)return"";let c=b-a;return c>=this._renderData.length?"":this._renderData[c]}_shouldRenderInMargin(){return("gutter"===this._renderLineHighlight||"all"===this._renderLineHighlight)&&(!this._renderLineHighlightOnlyWhenFocus||this._focused)}_shouldRenderInContent(){return("line"===this._renderLineHighlight||"all"===this._renderLineHighlight)&&this._selectionIsEmpty&&(!this._renderLineHighlightOnlyWhenFocus||this._focused)}}class bl extends bk{_renderOne(a,b){let c="current-line"+(this._shouldRenderInMargin()?" current-line-both":"")+(b?" current-line-exact":"");return`<div class="${c}" style="width:${Math.max(a.scrollWidth,this._contentWidth)}px;"></div>`}_shouldRenderThis(){return this._shouldRenderInContent()}_shouldRenderOther(){return this._shouldRenderInMargin()}}class bm extends bk{_renderOne(a,b){let c="current-line"+(this._shouldRenderInMargin()?" current-line-margin":"")+(this._shouldRenderOther()?" current-line-margin-both":"")+(this._shouldRenderInMargin()&&b?" current-line-exact-margin":"");return`<div class="${c}" style="width:${this._contentLeft}px"></div>`}_shouldRenderThis(){return!0}_shouldRenderOther(){return this._shouldRenderInContent()}}(0,bi.zy)((a,b)=>{let c=a.getColor(bh.kG);if(c&&(b.addRule(`.monaco-editor .view-overlays .current-line { background-color: ${c}; }`),b.addRule(`.monaco-editor .margin-view-overlays .current-line-margin { background-color: ${c}; border: none; }`)),!c||c.isTransparent()||a.defines(bh.Mf)){let c=a.getColor(bh.Mf);c&&(b.addRule(`.monaco-editor .view-overlays .current-line-exact { border: 2px solid ${c}; }`),b.addRule(`.monaco-editor .margin-view-overlays .current-line-exact-margin { border: 2px solid ${c}; }`),(0,bj.Bb)(a.type)&&(b.addRule(".monaco-editor .view-overlays .current-line-exact { border-width: 1px; }"),b.addRule(".monaco-editor .margin-view-overlays .current-line-exact-margin { border-width: 1px; }")))}}),c(50259);class bn extends bg{constructor(a){super(),this._context=a;const b=this._context.configuration.options;this._typicalHalfwidthCharacterWidth=b.get(59).typicalHalfwidthCharacterWidth,this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(a){let b=this._context.configuration.options;return this._typicalHalfwidthCharacterWidth=b.get(59).typicalHalfwidthCharacterWidth,!0}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return a.scrollTopChanged||a.scrollWidthChanged}onZonesChanged(a){return!0}prepareRender(a){let b=a.getDecorationsInViewport(),c=[],d=0;for(let a=0,e=b.length;a<e;a++){let e=b[a];e.options.className&&(c[d++]=e)}c=c.sort((a,b)=>{if(a.options.zIndex<b.options.zIndex)return -1;if(a.options.zIndex>b.options.zIndex)return 1;let c=a.options.className,d=b.options.className;return c<d?-1:c>d?1:ad.Q.compareRangesUsingStarts(a.range,b.range)});let e=a.visibleRange.startLineNumber,f=a.visibleRange.endLineNumber,g=[];for(let a=e;a<=f;a++)g[a-e]="";this._renderWholeLineDecorations(a,c,g),this._renderNormalDecorations(a,c,g),this._renderResult=g}_renderWholeLineDecorations(a,b,c){let d=a.visibleRange.startLineNumber,e=a.visibleRange.endLineNumber;for(let a=0,f=b.length;a<f;a++){let f=b[a];if(!f.options.isWholeLine)continue;let g='<div class="cdr '+f.options.className+'" style="left:0;width:100%;"></div>',h=Math.max(f.range.startLineNumber,d),i=Math.min(f.range.endLineNumber,e);for(let a=h;a<=i;a++){let b=a-d;c[b]+=g}}}_renderNormalDecorations(a,b,c){let d=a.visibleRange.startLineNumber,e=null,f=!1,g=null,h=!1;for(let i=0,j=b.length;i<j;i++){let j=b[i];if(j.options.isWholeLine)continue;let k=j.options.className,l=!!j.options.showIfCollapsed,m=j.range;if(l&&1===m.endColumn&&m.endLineNumber!==m.startLineNumber&&(m=new ad.Q(m.startLineNumber,m.startColumn,m.endLineNumber-1,this._context.viewModel.getLineMaxColumn(m.endLineNumber-1))),e===k&&f===l&&ad.Q.areIntersectingOrTouching(g,m)){g=ad.Q.plusRange(g,m);continue}null!==e&&this._renderNormalDecoration(a,g,e,h,f,d,c),e=k,f=l,g=m,h=j.options.shouldFillLineOnLineBreak??!1}null!==e&&this._renderNormalDecoration(a,g,e,h,f,d,c)}_renderNormalDecoration(a,b,c,d,e,f,g){let h=a.linesVisibleRangesForRange(b,"findMatch"===c);if(h)for(let a=0,b=h.length;a<b;a++){let b=h[a];if(b.outsideRenderedLine)continue;let i=b.lineNumber-f;if(e&&1===b.ranges.length){let a=b.ranges[0];if(a.width<this._typicalHalfwidthCharacterWidth){let c=Math.max(0,Math.round(Math.round(a.left+a.width/2)-this._typicalHalfwidthCharacterWidth/2));b.ranges[0]=new aY.Y(c,this._typicalHalfwidthCharacterWidth)}}for(let a=0,e=b.ranges.length;a<e;a++){let f=d&&b.continuesOnNextLine&&1===e,h=b.ranges[a],j='<div class="cdr '+c+'" style="left:'+String(h.left)+"px;width:"+(f?"100%;":String(h.width)+"px;")+'"></div>';g[i]+=j}}}render(a,b){if(!this._renderResult)return"";let c=b-a;return c<0||c>=this._renderResult.length?"":this._renderResult[c]}}class bo extends _{constructor(a,b,c,d){super(a);const e=this._context.configuration.options,f=e.get(117),g=e.get(83),h=e.get(49),i=e.get(120),j=e.get(158),k={listenOnDomNode:c.domNode,className:"editor-scrollable "+(0,bi.Pz)(a.theme.type),useShadows:!1,lazyRender:!0,vertical:f.vertical,horizontal:f.horizontal,verticalHasArrows:f.verticalHasArrows,horizontalHasArrows:f.horizontalHasArrows,verticalScrollbarSize:f.verticalScrollbarSize,verticalSliderSize:f.verticalSliderSize,horizontalScrollbarSize:f.horizontalScrollbarSize,horizontalSliderSize:f.horizontalSliderSize,handleMouseWheel:f.handleMouseWheel,alwaysConsumeMouseWheel:f.alwaysConsumeMouseWheel,arrowSize:f.arrowSize,mouseWheelScrollSensitivity:g,fastScrollSensitivity:h,scrollPredominantAxis:i,scrollByPage:f.scrollByPage,inertialScroll:j};this.scrollbar=this._register(new az.oO(b.domNode,k,this._context.viewLayout.getScrollable())),aa.write(this.scrollbar.getDomNode(),6),this.scrollbarDomNode=(0,Y.Z)(this.scrollbar.getDomNode()),this.scrollbarDomNode.setPosition("absolute"),this._setLayout();const l=(a,b,c)=>{let d={};if(b){let b=a.scrollTop;b&&(d.scrollTop=this._context.viewLayout.getCurrentScrollTop()+b,a.scrollTop=0)}if(c){let b=a.scrollLeft;b&&(d.scrollLeft=this._context.viewLayout.getCurrentScrollLeft()+b,a.scrollLeft=0)}this._context.viewModel.viewLayout.setScrollPosition(d,1)};this._register(v.ko(c.domNode,"scroll",a=>l(c.domNode,!0,!0))),this._register(v.ko(b.domNode,"scroll",a=>l(b.domNode,!0,!1))),this._register(v.ko(d.domNode,"scroll",a=>l(d.domNode,!0,!1))),this._register(v.ko(this.scrollbarDomNode.domNode,"scroll",a=>l(this.scrollbarDomNode.domNode,!0,!1)))}dispose(){super.dispose()}_setLayout(){let a=this._context.configuration.options,b=a.get(165);this.scrollbarDomNode.setLeft(b.contentLeft),"right"===a.get(81).side?this.scrollbarDomNode.setWidth(b.contentWidth+b.minimap.minimapWidth):this.scrollbarDomNode.setWidth(b.contentWidth),this.scrollbarDomNode.setHeight(b.height)}getOverviewRulerLayoutInfo(){return this.scrollbar.getOverviewRulerLayoutInfo()}getDomNode(){return this.scrollbarDomNode}delegateVerticalScrollbarPointerDown(a){this.scrollbar.delegateVerticalScrollbarPointerDown(a)}delegateScrollFromMouseWheelEvent(a){this.scrollbar.delegateScrollFromMouseWheelEvent(a)}onConfigurationChanged(a){if(a.hasChanged(117)||a.hasChanged(83)||a.hasChanged(49)){let a=this._context.configuration.options,b=a.get(117),c=a.get(83),d=a.get(49),e=a.get(120),f={vertical:b.vertical,horizontal:b.horizontal,verticalScrollbarSize:b.verticalScrollbarSize,horizontalScrollbarSize:b.horizontalScrollbarSize,scrollByPage:b.scrollByPage,handleMouseWheel:b.handleMouseWheel,mouseWheelScrollSensitivity:c,fastScrollSensitivity:d,scrollPredominantAxis:e};this.scrollbar.updateOptions(f)}return a.hasChanged(165)&&this._setLayout(),!0}onScrollChanged(a){return!0}onThemeChanged(a){return this.scrollbar.updateClassName("editor-scrollable "+(0,bi.Pz)(this._context.theme.type)),!0}prepareRender(a){}render(a){this.scrollbar.renderNow()}}c(58567);class bp{constructor(a,b,c,d,e){this.startLineNumber=a,this.endLineNumber=b,this.className=c,this.tooltip=d,this._decorationToRenderBrand=void 0,this.zIndex=e??0}}class bq{constructor(a,b,c){this.className=a,this.zIndex=b,this.tooltip=c}}class br{constructor(){this.decorations=[]}add(a){this.decorations.push(a)}getDecorations(){return this.decorations}}class bs extends bg{_render(a,b,c){let d=[];for(let c=a;c<=b;c++)d[c-a]=new br;if(0===c.length)return d;c.sort((a,b)=>a.className===b.className?a.startLineNumber===b.startLineNumber?a.endLineNumber-b.endLineNumber:a.startLineNumber-b.startLineNumber:a.className<b.className?-1:1);let e=null,f=0;for(let g=0,h=c.length;g<h;g++){let h=c[g],i=h.className,j=h.zIndex,k=Math.max(h.startLineNumber,a)-a,l=Math.min(h.endLineNumber,b)-a;e===i?(k=Math.max(f+1,k),f=Math.max(f,l)):(e=i,f=l);for(let a=k;a<=f;a++)d[a].add(new bq(i,j,h.tooltip))}return d}}class bt extends _{constructor(a){super(a),this._widgets={},this._context=a;const b=this._context.configuration.options,c=b.get(165);this.domNode=(0,Y.Z)(document.createElement("div")),this.domNode.setClassName("glyph-margin-widgets"),this.domNode.setPosition("absolute"),this.domNode.setTop(0),this._lineHeight=b.get(75),this._glyphMargin=b.get(66),this._glyphMarginLeft=c.glyphMarginLeft,this._glyphMarginWidth=c.glyphMarginWidth,this._glyphMarginDecorationLaneCount=c.glyphMarginDecorationLaneCount,this._managedDomNodes=[],this._decorationGlyphsToRender=[]}dispose(){this._managedDomNodes=[],this._decorationGlyphsToRender=[],this._widgets={},super.dispose()}getWidgets(){return Object.values(this._widgets)}onConfigurationChanged(a){let b=this._context.configuration.options,c=b.get(165);return this._lineHeight=b.get(75),this._glyphMargin=b.get(66),this._glyphMarginLeft=c.glyphMarginLeft,this._glyphMarginWidth=c.glyphMarginWidth,this._glyphMarginDecorationLaneCount=c.glyphMarginDecorationLaneCount,!0}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return a.scrollTopChanged}onZonesChanged(a){return!0}addWidget(a){let b=(0,Y.Z)(a.getDomNode());this._widgets[a.getId()]={widget:a,preference:a.getPosition(),domNode:b,renderInfo:null},b.setPosition("absolute"),b.setDisplay("none"),b.setAttribute("widgetId",a.getId()),this.domNode.appendChild(b),this.setShouldRender()}setWidgetPosition(a,b){let c=this._widgets[a.getId()];return!(c.preference.lane===b.lane&&c.preference.zIndex===b.zIndex&&ad.Q.equalsRange(c.preference.range,b.range))&&(c.preference=b,this.setShouldRender(),!0)}removeWidget(a){let b=a.getId();if(this._widgets[b]){let a=this._widgets[b].domNode.domNode;delete this._widgets[b],a.remove(),this.setShouldRender()}}_collectDecorationBasedGlyphRenderRequest(a,b){let c=a.visibleRange.startLineNumber,d=a.visibleRange.endLineNumber;for(let e of a.getDecorationsInViewport()){let a=e.options.glyphMarginClassName;if(!a)continue;let f=Math.max(e.range.startLineNumber,c),g=Math.min(e.range.endLineNumber,d),h=e.options.glyphMargin?.position??ag.ZS.Center,i=e.options.zIndex??0;for(let c=f;c<=g;c++){let d=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new ac.y(c,0)),e=this._context.viewModel.glyphLanes.getLanesAtLine(d.lineNumber).indexOf(h);b.push(new bu(c,e,i,a))}}}_collectWidgetBasedGlyphRenderRequest(a,b){let c=a.visibleRange.startLineNumber,d=a.visibleRange.endLineNumber;for(let a of Object.values(this._widgets)){let e=a.preference.range,{startLineNumber:f,endLineNumber:g}=this._context.viewModel.coordinatesConverter.convertModelRangeToViewRange(ad.Q.lift(e));if(!f||!g||g<c||f>d)continue;let h=Math.max(f,c),i=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new ac.y(h,0)),j=this._context.viewModel.glyphLanes.getLanesAtLine(i.lineNumber).indexOf(a.preference.lane);b.push(new bv(h,j,a.preference.zIndex,a))}}_collectSortedGlyphRenderRequests(a){let b=[];return this._collectDecorationBasedGlyphRenderRequest(a,b),this._collectWidgetBasedGlyphRenderRequest(a,b),b.sort((a,b)=>{if(a.lineNumber===b.lineNumber){if(a.laneIndex===b.laneIndex){if(a.zIndex===b.zIndex)return b.type===a.type?0===a.type&&0===b.type?a.className<b.className?-1:1:0:b.type-a.type;return b.zIndex-a.zIndex}return a.laneIndex-b.laneIndex}return a.lineNumber-b.lineNumber}),b}prepareRender(a){if(!this._glyphMargin){this._decorationGlyphsToRender=[];return}for(let a of Object.values(this._widgets))a.renderInfo=null;let b=new C.j3(this._collectSortedGlyphRenderRequests(a)),c=[];for(;b.length>0;){let a=b.peek();if(!a)break;let d=b.takeWhile(b=>b.lineNumber===a.lineNumber&&b.laneIndex===a.laneIndex);if(!d||0===d.length)break;let e=d[0];if(0===e.type){let a=[];for(let b of d){if(b.zIndex!==e.zIndex||b.type!==e.type)break;(0===a.length||a[a.length-1]!==b.className)&&a.push(b.className)}c.push(e.accept(a.join(" ")))}else e.widget.renderInfo={lineNumber:e.lineNumber,laneIndex:e.laneIndex}}this._decorationGlyphsToRender=c}render(a){if(!this._glyphMargin){for(let a of Object.values(this._widgets))a.domNode.setDisplay("none");for(;this._managedDomNodes.length>0;){let a=this._managedDomNodes.pop();a?.domNode.remove()}return}let b=Math.round(this._glyphMarginWidth/this._glyphMarginDecorationLaneCount);for(let c of Object.values(this._widgets))if(c.renderInfo){let d=a.viewportData.relativeVerticalOffset[c.renderInfo.lineNumber-a.viewportData.startLineNumber],e=this._glyphMarginLeft+c.renderInfo.laneIndex*this._lineHeight;c.domNode.setDisplay("block"),c.domNode.setTop(d),c.domNode.setLeft(e),c.domNode.setWidth(b),c.domNode.setHeight(this._lineHeight)}else c.domNode.setDisplay("none");for(let c=0;c<this._decorationGlyphsToRender.length;c++){let d,e=this._decorationGlyphsToRender[c],f=e.lineNumber,g=a.viewportData.relativeVerticalOffset[f-a.viewportData.startLineNumber],h=this._glyphMarginLeft+e.laneIndex*this._lineHeight;c<this._managedDomNodes.length?d=this._managedDomNodes[c]:(d=(0,Y.Z)(document.createElement("div")),this._managedDomNodes.push(d),this.domNode.appendChild(d));let i=this._context.viewLayout.getLineHeightForLineNumber(f);d.setClassName("cgmr codicon "+e.combinedClassName),d.setPosition("absolute"),d.setTop(g),d.setLeft(h),d.setWidth(b),d.setHeight(i)}for(;this._managedDomNodes.length>this._decorationGlyphsToRender.length;){let a=this._managedDomNodes.pop();a?.domNode.remove()}}}class bu{constructor(a,b,c,d){this.lineNumber=a,this.laneIndex=b,this.zIndex=c,this.className=d,this.type=0}accept(a){return new bw(this.lineNumber,this.laneIndex,a)}}class bv{constructor(a,b,c,d){this.lineNumber=a,this.laneIndex=b,this.zIndex=c,this.widget=d,this.type=1}}class bw{constructor(a,b,c){this.lineNumber=a,this.laneIndex=b,this.combinedClassName=c}}c(24783);var bx=c(98896),by=c(20393),bz=c(52376);class bA extends bg{constructor(a){super(),this._context=a,this._primaryPosition=null;const b=this._context.configuration.options,c=b.get(166),d=b.get(59);this._spaceWidth=d.spaceWidth,this._maxIndentLeft=-1===c.wrappingColumn?-1:c.wrappingColumn*d.typicalHalfwidthCharacterWidth,this._bracketPairGuideOptions=b.get(22),this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(a){let b=this._context.configuration.options,c=b.get(166),d=b.get(59);return this._spaceWidth=d.spaceWidth,this._maxIndentLeft=-1===c.wrappingColumn?-1:c.wrappingColumn*d.typicalHalfwidthCharacterWidth,this._bracketPairGuideOptions=b.get(22),!0}onCursorStateChanged(a){let b=a.selections[0].getPosition();return!this._primaryPosition?.equals(b)&&(this._primaryPosition=b,!0)}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return a.scrollTopChanged}onZonesChanged(a){return!0}onLanguageConfigurationChanged(a){return!0}prepareRender(a){if(!this._bracketPairGuideOptions.indentation&&!1===this._bracketPairGuideOptions.bracketPairs){this._renderResult=null;return}let b=a.visibleRange.startLineNumber,c=a.visibleRange.endLineNumber,d=a.scrollWidth,e=this._primaryPosition,f=this.getGuidesByLine(b,Math.min(c+1,this._context.viewModel.getLineCount()),e),g=[];for(let e=b;e<=c;e++){let c=e-b,h=f[c],i="",j=a.visibleRangeForPosition(new ac.y(e,1))?.left??0;for(let b of h){let c=-1===b.column?j+(b.visibleColumn-1)*this._spaceWidth:a.visibleRangeForPosition(new ac.y(e,b.column)).left;if(c>d||this._maxIndentLeft>0&&c>this._maxIndentLeft)break;let f=b.horizontalLine?b.horizontalLine.top?"horizontal-top":"horizontal-bottom":"vertical",g=b.horizontalLine?(a.visibleRangeForPosition(new ac.y(e,b.horizontalLine.endColumn))?.left??c+this._spaceWidth)-c:this._spaceWidth;i+=`<div class="core-guide ${b.className} ${f}" style="left:${c}px;width:${g}px"></div>`}g[c]=i}this._renderResult=g}getGuidesByLine(a,b,c){let d=!1!==this._bracketPairGuideOptions.bracketPairs?this._context.viewModel.getBracketGuidesInRangeByLine(a,b,c,{highlightActive:this._bracketPairGuideOptions.highlightActiveBracketPair,horizontalGuides:!0===this._bracketPairGuideOptions.bracketPairsHorizontal?bz.N6.Enabled:"active"===this._bracketPairGuideOptions.bracketPairsHorizontal?bz.N6.EnabledForActive:bz.N6.Disabled,includeInactive:!0===this._bracketPairGuideOptions.bracketPairs}):null,e=this._bracketPairGuideOptions.indentation?this._context.viewModel.getLinesIndentGuides(a,b):null,f=0,g=0,h=0;if(!1!==this._bracketPairGuideOptions.highlightActiveIndentation&&c){let d=this._context.viewModel.getActiveIndentGuide(c.lineNumber,a,b);f=d.startLineNumber,g=d.endLineNumber,h=d.indent}let{indentSize:i}=this._context.viewModel.model.getOptions(),j=[];for(let c=a;c<=b;c++){let b=[];j.push(b);let k=d?d[c-a]:[],l=new C.j3(k),m=e?e[c-a]:0;for(let a=1;a<=m;a++){let d=(a-1)*i+1,e=("always"===this._bracketPairGuideOptions.highlightActiveIndentation||0===k.length)&&f<=c&&c<=g&&a===h;b.push(...l.takeWhile(a=>a.visibleColumn<d)||[]);let j=l.peek();(!j||j.visibleColumn!==d||j.horizontalLine)&&b.push(new bz.TH(d,-1,`core-guide-indent lvl-${(a-1)%30}`+(e?" indent-active":""),null,-1,-1))}b.push(...l.takeWhile(a=>!0)||[])}return j}render(a,b){if(!this._renderResult)return"";let c=b-a;return c<0||c>=this._renderResult.length?"":this._renderResult[c]}}function bB(a){if(!(a&&a.isTransparent()))return a}(0,bi.zy)((a,b)=>{let c=[{bracketColor:bh.sN,guideColor:bh.n4,guideColorActive:bh.bB},{bracketColor:bh.lQ,guideColor:bh.I2,guideColorActive:bh.WS},{bracketColor:bh.ss,guideColor:bh.Bo,guideColorActive:bh.Pe},{bracketColor:bh.l5,guideColor:bh.If,guideColorActive:bh.WD},{bracketColor:bh.sH,guideColor:bh.BD,guideColorActive:bh.P1},{bracketColor:bh.zp,guideColor:bh.IW,guideColorActive:bh.WY}],d=new by.k,e=[{indentColor:bh.vV,indentColorActive:bh.H0},{indentColor:bh.ob,indentColorActive:bh.Am},{indentColor:bh.hz,indentColorActive:bh.tK},{indentColor:bh.ow,indentColorActive:bh.A3},{indentColor:bh.vP,indentColorActive:bh.tp},{indentColor:bh.CM,indentColorActive:bh.As}],f=c.map(b=>{let c=a.getColor(b.bracketColor),d=a.getColor(b.guideColor),e=a.getColor(b.guideColorActive),f=bB(bB(d)??c?.transparent(.3)),g=bB(bB(e)??c);if(f&&g)return{guideColor:f,guideColorActive:g}}).filter(bx.O9),g=e.map(b=>{let c=a.getColor(b.indentColor),d=a.getColor(b.indentColorActive),e=bB(c),f=bB(d);if(e&&f)return{indentColor:e,indentColorActive:f}}).filter(bx.O9);if(f.length>0){for(let a=0;a<30;a++){let c=f[a%f.length];b.addRule(`.monaco-editor .${d.getInlineClassNameOfLevel(a).replace(/ /g,".")} { --guide-color: ${c.guideColor}; --guide-color-active: ${c.guideColorActive}; }`)}b.addRule(".monaco-editor .vertical { box-shadow: 1px 0 0 0 var(--guide-color) inset; }"),b.addRule(".monaco-editor .horizontal-top { border-top: 1px solid var(--guide-color); }"),b.addRule(".monaco-editor .horizontal-bottom { border-bottom: 1px solid var(--guide-color); }"),b.addRule(`.monaco-editor .vertical.${d.activeClassName} { box-shadow: 1px 0 0 0 var(--guide-color-active) inset; }`),b.addRule(`.monaco-editor .horizontal-top.${d.activeClassName} { border-top: 1px solid var(--guide-color-active); }`),b.addRule(`.monaco-editor .horizontal-bottom.${d.activeClassName} { border-bottom: 1px solid var(--guide-color-active); }`)}if(g.length>0){for(let a=0;a<30;a++){let c=g[a%g.length];b.addRule(`.monaco-editor .lines-content .core-guide-indent.lvl-${a} { --indent-color: ${c.indentColor}; --indent-color-active: ${c.indentColorActive}; }`)}b.addRule(".monaco-editor .lines-content .core-guide-indent { box-shadow: 1px 0 0 0 var(--indent-color) inset; }"),b.addRule(".monaco-editor .lines-content .core-guide-indent.indent-active { box-shadow: 1px 0 0 0 var(--indent-color-active) inset; }")}}),c(77439);class bC extends bg{static{this.CLASS_NAME="line-numbers"}constructor(a){super(),this._context=a,this._readConfig(),this._lastCursorModelPosition=new ac.y(1,1),this._renderResult=null,this._activeModelLineNumber=1,this._context.addEventHandler(this)}_readConfig(){let a=this._context.configuration.options;this._lineHeight=a.get(75);let b=a.get(76);this._renderLineNumbers=b.renderType,this._renderCustomLineNumbers=b.renderFn,this._renderFinalNewline=a.get(109);let c=a.get(165);this._lineNumbersLeft=c.lineNumbersLeft,this._lineNumbersWidth=c.lineNumbersWidth}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(a){return this._readConfig(),!0}onCursorStateChanged(a){let b=a.selections[0].getPosition();this._lastCursorModelPosition=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(b);let c=!1;return this._activeModelLineNumber!==this._lastCursorModelPosition.lineNumber&&(this._activeModelLineNumber=this._lastCursorModelPosition.lineNumber,c=!0),(2===this._renderLineNumbers||3===this._renderLineNumbers)&&(c=!0),c}onFlushed(a){return!0}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return a.scrollTopChanged}onZonesChanged(a){return!0}onDecorationsChanged(a){return a.affectsLineNumber}_getLineRenderLineNumber(a){let b=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new ac.y(a,1));if(1!==b.column)return"";let c=b.lineNumber;if(this._renderCustomLineNumbers)return this._renderCustomLineNumbers(c);if(2===this._renderLineNumbers){let a=Math.abs(this._lastCursorModelPosition.lineNumber-c);return 0===a?'<span class="relative-current-line-number">'+c+"</span>":String(a)}return 3===this._renderLineNumbers?this._lastCursorModelPosition.lineNumber===c||c%10==0||c===this._context.viewModel.getLineCount()?String(c):"":String(c)}prepareRender(a){if(0===this._renderLineNumbers){this._renderResult=null;return}let b=E.j9?this._lineHeight%2==0?" lh-even":" lh-odd":"",c=a.visibleRange.startLineNumber,d=a.visibleRange.endLineNumber,e=this._context.viewModel.getDecorationsInViewport(a.visibleRange).filter(a=>!!a.options.lineNumberClassName);e.sort((a,b)=>ad.Q.compareRangesUsingEnds(a.range,b.range));let f=0,g=this._context.viewModel.getLineCount(),h=[];for(let a=c;a<=d;a++){let d=a-c,i=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new ac.y(a,1)).lineNumber,j=this._getLineRenderLineNumber(a),k="";for(;f<e.length&&e[f].range.endLineNumber<a;)f++;for(let b=f;b<e.length;b++){let{range:c,options:d}=e[b];c.startLineNumber<=a&&(k+=" "+d.lineNumberClassName)}if(!j&&!k){h[d]="";continue}a===g&&0===this._context.viewModel.getLineLength(a)&&("off"===this._renderFinalNewline&&(j=""),"dimmed"===this._renderFinalNewline&&(k+=" dimmed-line-number")),i===this._activeModelLineNumber&&(k+=" active-line-number"),h[d]=`<div class="${bC.CLASS_NAME}${b}${k}" style="left:${this._lineNumbersLeft}px;width:${this._lineNumbersWidth}px;">${j}</div>`}this._renderResult=h}render(a,b){if(!this._renderResult)return"";let c=b-a;return c<0||c>=this._renderResult.length?"":this._renderResult[c]}}(0,bi.zy)((a,b)=>{let c=a.getColor(bh.Qt),d=a.getColor(bh.JB);d?b.addRule(`.monaco-editor .line-numbers.dimmed-line-number { color: ${d}; }`):c&&b.addRule(`.monaco-editor .line-numbers.dimmed-line-number { color: ${c.transparent(.4)}; }`)}),c(64032);let bD="monaco-mouse-cursor-text";c(10711);class bE{get didDomLayout(){return this._didDomLayout}readClientRect(){if(!this._clientRectRead){this._clientRectRead=!0;let a=this._domNode.getBoundingClientRect();this.markDidDomLayout(),this._clientRectDeltaLeft=a.left,this._clientRectScale=a.width/this._domNode.offsetWidth}}get clientRectDeltaLeft(){return this._clientRectRead||this.readClientRect(),this._clientRectDeltaLeft}get clientRectScale(){return this._clientRectRead||this.readClientRect(),this._clientRectScale}constructor(a,b){this._domNode=a,this.endNode=b,this._didDomLayout=!1,this._clientRectDeltaLeft=0,this._clientRectScale=1,this._clientRectRead=!1}markDidDomLayout(){this._didDomLayout=!0}}class bF{constructor(a,b){this.themeType=b;const c=a.options,d=c.get(59);this.renderWhitespace=c.get(113),this.experimentalWhitespaceRendering=c.get(47),this.renderControlCharacters=c.get(108),this.spaceWidth=d.spaceWidth,this.middotWidth=d.middotWidth,this.wsmiddotWidth=d.wsmiddotWidth,this.useMonospaceOptimizations=d.isMonospace&&!c.get(40),this.canUseHalfwidthRightwardsArrow=d.canUseHalfwidthRightwardsArrow,this.lineHeight=c.get(75),this.stopRenderingLineAfter=c.get(133),this.fontLigatures=c.get(60),this.verticalScrollbarSize=c.get(117).verticalScrollbarSize,this.useGpu="on"===c.get(46)}equals(a){return this.themeType===a.themeType&&this.renderWhitespace===a.renderWhitespace&&this.experimentalWhitespaceRendering===a.experimentalWhitespaceRendering&&this.renderControlCharacters===a.renderControlCharacters&&this.spaceWidth===a.spaceWidth&&this.middotWidth===a.middotWidth&&this.wsmiddotWidth===a.wsmiddotWidth&&this.useMonospaceOptimizations===a.useMonospaceOptimizations&&this.canUseHalfwidthRightwardsArrow===a.canUseHalfwidthRightwardsArrow&&this.lineHeight===a.lineHeight&&this.stopRenderingLineAfter===a.stopRenderingLineAfter&&this.fontLigatures===a.fontLigatures&&this.verticalScrollbarSize===a.verticalScrollbarSize&&this.useGpu===a.useGpu}}class bG{constructor(){this._currentVisibleRange=new ad.Q(1,1,1,1)}getCurrentVisibleRange(){return this._currentVisibleRange}setCurrentVisibleRange(a){this._currentVisibleRange=a}}class bH{constructor(a,b,c,d,e,f,g){this.minimalReveal=a,this.lineNumber=b,this.startColumn=c,this.endColumn=d,this.startScrollTop=e,this.stopScrollTop=f,this.scrollType=g,this.type="range",this.minLineNumber=b,this.maxLineNumber=b}}class bI{constructor(a,b,c,d,e){this.minimalReveal=a,this.selections=b,this.startScrollTop=c,this.stopScrollTop=d,this.scrollType=e,this.type="selections";let f=b[0].startLineNumber,g=b[0].endLineNumber;for(let a=1,c=b.length;a<c;a++){const c=b[a];f=Math.min(f,c.startLineNumber),g=Math.max(g,c.endLineNumber)}this.minLineNumber=f,this.maxLineNumber=g}}class bJ extends _{static{this.HORIZONTAL_EXTRA_PX=30}constructor(a,b,c){super(a);const d=this._context.configuration,e=this._context.configuration.options,f=e.get(59),g=e.get(166);this._lineHeight=e.get(75),this._typicalHalfwidthCharacterWidth=f.typicalHalfwidthCharacterWidth,this._isViewportWrapping=g.isViewportWrapping,this._revealHorizontalRightPadding=e.get(114),this._cursorSurroundingLines=e.get(35),this._cursorSurroundingLinesStyle=e.get(36),this._canUseLayerHinting=!e.get(39),this._viewLineOptions=new bF(d,this._context.theme.type),this._linesContent=c,this._textRangeRestingSpot=document.createElement("div"),this._visibleLines=new a2(this._context,{createLine:()=>new ab.G(b,this._viewLineOptions)}),this.domNode=this._visibleLines.domNode,aa.write(this.domNode,8),this.domNode.setClassName(`view-lines ${bD}`),(0,A.M)(this.domNode,f),this._maxLineWidth=0,this._asyncUpdateLineWidths=new aL.uC(()=>{this._updateLineWidthsSlow()},200),this._asyncCheckMonospaceFontAssumptions=new aL.uC(()=>{this._checkMonospaceFontAssumptions()},2e3),this._lastRenderedData=new bG,this._horizontalRevealRequest=null,this._stickyScrollEnabled=e.get(131).enabled,this._maxNumberStickyLines=e.get(131).maxLineCount}dispose(){this._asyncUpdateLineWidths.dispose(),this._asyncCheckMonospaceFontAssumptions.dispose(),super.dispose()}getDomNode(){return this.domNode}onConfigurationChanged(a){this._visibleLines.onConfigurationChanged(a),a.hasChanged(166)&&(this._maxLineWidth=0);let b=this._context.configuration.options,c=b.get(59),d=b.get(166);return this._lineHeight=b.get(75),this._typicalHalfwidthCharacterWidth=c.typicalHalfwidthCharacterWidth,this._isViewportWrapping=d.isViewportWrapping,this._revealHorizontalRightPadding=b.get(114),this._cursorSurroundingLines=b.get(35),this._cursorSurroundingLinesStyle=b.get(36),this._canUseLayerHinting=!b.get(39),this._stickyScrollEnabled=b.get(131).enabled,this._maxNumberStickyLines=b.get(131).maxLineCount,(0,A.M)(this.domNode,c),this._onOptionsMaybeChanged(),a.hasChanged(165)&&(this._maxLineWidth=0),!0}_onOptionsMaybeChanged(){let a=new bF(this._context.configuration,this._context.theme.type);if(!this._viewLineOptions.equals(a)){this._viewLineOptions=a;let b=this._visibleLines.getStartLineNumber(),c=this._visibleLines.getEndLineNumber();for(let a=b;a<=c;a++)this._visibleLines.getVisibleLine(a).onOptionsChanged(this._viewLineOptions);return!0}return!1}onCursorStateChanged(a){let b=this._visibleLines.getStartLineNumber(),c=this._visibleLines.getEndLineNumber(),d=!1;for(let a=b;a<=c;a++)d=this._visibleLines.getVisibleLine(a).onSelectionChanged()||d;return d}onDecorationsChanged(a){{let a=this._visibleLines.getStartLineNumber(),b=this._visibleLines.getEndLineNumber();for(let c=a;c<=b;c++)this._visibleLines.getVisibleLine(c).onDecorationsChanged()}return!0}onFlushed(a){let b=this._visibleLines.onFlushed(a,this._viewLineOptions.useGpu);return this._maxLineWidth=0,b}onLinesChanged(a){return this._visibleLines.onLinesChanged(a)}onLinesDeleted(a){return this._visibleLines.onLinesDeleted(a)}onLinesInserted(a){return this._visibleLines.onLinesInserted(a)}onRevealRangeRequest(a){let b=this._computeScrollTopToRevealRange(this._context.viewLayout.getFutureViewport(),a.source,a.minimalReveal,a.range,a.selections,a.verticalType);if(-1===b)return!1;let c=this._context.viewLayout.validateScrollPosition({scrollTop:b});a.revealHorizontal?a.range&&a.range.startLineNumber!==a.range.endLineNumber?c={scrollTop:c.scrollTop,scrollLeft:0}:a.range?this._horizontalRevealRequest=new bH(a.minimalReveal,a.range.startLineNumber,a.range.startColumn,a.range.endColumn,this._context.viewLayout.getCurrentScrollTop(),c.scrollTop,a.scrollType):a.selections&&a.selections.length>0&&(this._horizontalRevealRequest=new bI(a.minimalReveal,a.selections,this._context.viewLayout.getCurrentScrollTop(),c.scrollTop,a.scrollType)):this._horizontalRevealRequest=null;let d=Math.abs(this._context.viewLayout.getCurrentScrollTop()-c.scrollTop)<=this._lineHeight?1:a.scrollType;return this._context.viewModel.viewLayout.setScrollPosition(c,d),!0}onScrollChanged(a){if(this._horizontalRevealRequest&&a.scrollLeftChanged&&(this._horizontalRevealRequest=null),this._horizontalRevealRequest&&a.scrollTopChanged){let b=Math.min(this._horizontalRevealRequest.startScrollTop,this._horizontalRevealRequest.stopScrollTop),c=Math.max(this._horizontalRevealRequest.startScrollTop,this._horizontalRevealRequest.stopScrollTop);(a.scrollTop<b||a.scrollTop>c)&&(this._horizontalRevealRequest=null)}return this.domNode.setWidth(a.scrollWidth),this._visibleLines.onScrollChanged(a)||!0}onTokensChanged(a){return this._visibleLines.onTokensChanged(a)}onZonesChanged(a){return this._context.viewModel.viewLayout.setMaxLineWidth(this._maxLineWidth),this._visibleLines.onZonesChanged(a)}onThemeChanged(a){return this._onOptionsMaybeChanged()}getPositionFromDOMInfo(a,b){let c=this._getViewLineDomNode(a);if(null===c)return null;let d=this._getLineNumberFor(c);if(-1===d||d<1||d>this._context.viewModel.getLineCount())return null;if(1===this._context.viewModel.getLineMaxColumn(d))return new ac.y(d,1);let e=this._visibleLines.getStartLineNumber(),f=this._visibleLines.getEndLineNumber();if(d<e||d>f)return null;let g=this._visibleLines.getVisibleLine(d).getColumnOfNodeOffset(a,b),h=this._context.viewModel.getLineMinColumn(d);return g<h&&(g=h),new ac.y(d,g)}_getViewLineDomNode(a){for(;a&&1===a.nodeType;){if(a.className===ab.G.CLASS_NAME)return a;a=a.parentElement}return null}_getLineNumberFor(a){let b=this._visibleLines.getStartLineNumber(),c=this._visibleLines.getEndLineNumber();for(let d=b;d<=c;d++)if(a===this._visibleLines.getVisibleLine(d).getDomNode())return d;return -1}getLineWidth(a){let b=this._visibleLines.getStartLineNumber(),c=this._visibleLines.getEndLineNumber();if(a<b||a>c)return -1;let d=new bE(this.domNode.domNode,this._textRangeRestingSpot),e=this._visibleLines.getVisibleLine(a).getWidth(d);return this._updateLineWidthsSlowIfDomDidLayout(d),e}linesVisibleRangesForRange(a,b){if(this.shouldRender())return null;let c=a.endLineNumber,d=ad.Q.intersectRanges(a,this._lastRenderedData.getCurrentVisibleRange());if(!d)return null;let e=[],f=0,g=new bE(this.domNode.domNode,this._textRangeRestingSpot),h=0;b&&(h=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new ac.y(d.startLineNumber,1)).lineNumber);let i=this._visibleLines.getStartLineNumber(),j=this._visibleLines.getEndLineNumber();for(let a=d.startLineNumber;a<=d.endLineNumber;a++){if(a<i||a>j)continue;let k=a===d.startLineNumber?d.startColumn:1,l=a!==c,m=l?this._context.viewModel.getLineMaxColumn(a):d.endColumn,n=this._visibleLines.getVisibleLine(a).getVisibleRangesForRange(a,k,m,g);if(n){if(b&&a<c){let b=h;if(b!==(h=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new ac.y(a+1,1)).lineNumber)){let a=n.ranges[n.ranges.length-1];a.width+=this._typicalHalfwidthCharacterWidth,this._context.viewModel.getTextDirection(b)===ag.z4.RTL&&(a.left-=this._typicalHalfwidthCharacterWidth)}}e[f++]=new aY.BG(n.outsideRenderedLine,a,aY.Y.from(n.ranges),l)}}return(this._updateLineWidthsSlowIfDomDidLayout(g),0===f)?null:e}_visibleRangesForLineRange(a,b,c){if(this.shouldRender()||a<this._visibleLines.getStartLineNumber()||a>this._visibleLines.getEndLineNumber())return null;let d=new bE(this.domNode.domNode,this._textRangeRestingSpot),e=this._visibleLines.getVisibleLine(a).getVisibleRangesForRange(a,b,c,d);return this._updateLineWidthsSlowIfDomDidLayout(d),e}_lineIsRenderedRTL(a){return!(a<this._visibleLines.getStartLineNumber()||a>this._visibleLines.getEndLineNumber())&&this._visibleLines.getVisibleLine(a).isRenderedRTL()}visibleRangeForPosition(a){let b=this._visibleRangesForLineRange(a.lineNumber,a.column,a.column);return b?new aY.qN(b.outsideRenderedLine,b.ranges[0].left):null}_updateLineWidthsFast(){return this._updateLineWidths(!0)}_updateLineWidthsSlow(){this._updateLineWidths(!1)}_updateLineWidthsSlowIfDomDidLayout(a){!a.didDomLayout||this._asyncUpdateLineWidths.isScheduled()||(this._asyncUpdateLineWidths.cancel(),this._updateLineWidthsSlow())}_updateLineWidths(a){let b=this._visibleLines.getStartLineNumber(),c=this._visibleLines.getEndLineNumber(),d=1,e=!0;for(let f=b;f<=c;f++){let b=this._visibleLines.getVisibleLine(f);if(a&&!b.getWidthIsFast()){e=!1;continue}d=Math.max(d,b.getWidth(null))}return e&&1===b&&c===this._context.viewModel.getLineCount()&&(this._maxLineWidth=0),this._ensureMaxLineWidth(d),e}_checkMonospaceFontAssumptions(){let a=-1,b=-1,c=this._visibleLines.getStartLineNumber(),d=this._visibleLines.getEndLineNumber();for(let e=c;e<=d;e++){let c=this._visibleLines.getVisibleLine(e);if(c.needsMonospaceFontCheck()){let d=c.getWidth(null);d>b&&(b=d,a=e)}}if(-1!==a&&!this._visibleLines.getVisibleLine(a).monospaceAssumptionsAreValid())for(let a=c;a<=d;a++)this._visibleLines.getVisibleLine(a).onMonospaceAssumptionsInvalidated()}prepareRender(){throw Error("Not supported")}render(){throw Error("Not supported")}renderText(a){if(this._visibleLines.renderLines(a),this._lastRenderedData.setCurrentVisibleRange(a.visibleRange),this.domNode.setWidth(this._context.viewLayout.getScrollWidth()),this.domNode.setHeight(Math.min(this._context.viewLayout.getScrollHeight(),1e6)),this._horizontalRevealRequest){let b=this._horizontalRevealRequest;if(a.startLineNumber<=b.minLineNumber&&b.maxLineNumber<=a.endLineNumber){this._horizontalRevealRequest=null,this.onDidRender();let a=this._computeScrollLeftToReveal(b);a&&(this._isViewportWrapping||a.hasRTL||this._ensureMaxLineWidth(a.maxHorizontalOffset),this._context.viewModel.viewLayout.setScrollPosition({scrollLeft:a.scrollLeft},b.scrollType))}}if(this._updateLineWidthsFast()?this._asyncUpdateLineWidths.cancel():this._asyncUpdateLineWidths.schedule(),E.j9&&!this._asyncCheckMonospaceFontAssumptions.isScheduled()){let a=this._visibleLines.getStartLineNumber(),b=this._visibleLines.getEndLineNumber();for(let c=a;c<=b;c++)if(this._visibleLines.getVisibleLine(c).needsMonospaceFontCheck()){this._asyncCheckMonospaceFontAssumptions.schedule();break}}this._linesContent.setLayerHinting(this._canUseLayerHinting),this._linesContent.setContain("strict");let b=this._context.viewLayout.getCurrentScrollTop()-a.bigNumbersDelta;this._linesContent.setTop(-b),this._linesContent.setLeft(-this._context.viewLayout.getCurrentScrollLeft())}_ensureMaxLineWidth(a){let b=Math.ceil(a);this._maxLineWidth<b&&(this._maxLineWidth=b,this._context.viewModel.viewLayout.setMaxLineWidth(this._maxLineWidth))}_computeScrollTopToRevealRange(a,b,c,d,e,f){let g,h,i,j,k=a.top,l=a.height,m=k+l;if(e&&e.length>0){let a=e[0].startLineNumber,b=e[0].endLineNumber;for(let c=1,d=e.length;c<d;c++){let d=e[c];a=Math.min(a,d.startLineNumber),b=Math.max(b,d.endLineNumber)}g=!1,h=this._context.viewLayout.getVerticalOffsetForLineNumber(a),i=this._context.viewLayout.getVerticalOffsetForLineNumber(b)+this._lineHeight}else{if(!d)return -1;g=!0,h=this._context.viewLayout.getVerticalOffsetForLineNumber(d.startLineNumber),i=this._context.viewLayout.getVerticalOffsetForLineNumber(d.endLineNumber)+this._lineHeight}let n=("mouse"===b||c)&&"default"===this._cursorSurroundingLinesStyle,o=0,p=0;if(n)c||(o=this._lineHeight);else{let a=Math.min(l/this._lineHeight/2,Math.max(this._cursorSurroundingLines,this._stickyScrollEnabled?this._maxNumberStickyLines:0));o=a*this._lineHeight,p=Math.max(0,a-1)*this._lineHeight}if(c||0!==f&&4!==f||(p+=this._lineHeight),h-=o,(i+=p)-h>l){if(!g)return -1;j=h}else if(5===f||6===f)if(6===f&&k<=h&&i<=m)j=k;else{let a=h-Math.max(5*this._lineHeight,.2*l);j=Math.max(i-l,a)}else j=1===f||2===f?2===f&&k<=h&&i<=m?k:Math.max(0,(h+i)/2-l/2):this._computeMinimumScrolling(k,m,h,i,3===f,4===f);return j}_computeScrollLeftToReveal(a){let b=this._context.viewLayout.getCurrentViewport(),c=this._context.configuration.options.get(165),d=b.left,e=d+b.width-c.verticalScrollbarWidth,f=0x40000000,g=0,h=!1;if("range"===a.type){h=this._lineIsRenderedRTL(a.lineNumber);let b=this._visibleRangesForLineRange(a.lineNumber,a.startColumn,a.endColumn);if(!b)return null;for(let a of b.ranges)f=Math.min(f,Math.round(a.left)),g=Math.max(g,Math.round(a.left+a.width))}else for(let b of a.selections){if(b.startLineNumber!==b.endLineNumber)return null;let a=this._visibleRangesForLineRange(b.startLineNumber,b.startColumn,b.endColumn);if(h||=this._lineIsRenderedRTL(b.startLineNumber),!a)return null;for(let b of a.ranges)f=Math.min(f,Math.round(b.left)),g=Math.max(g,Math.round(b.left+b.width))}return(a.minimalReveal||(f=Math.max(0,f-bJ.HORIZONTAL_EXTRA_PX),g+=this._revealHorizontalRightPadding),"selections"===a.type&&g-f>b.width)?null:{scrollLeft:this._computeMinimumScrolling(d,e,f,g),maxHorizontalOffset:g,hasRTL:h}}_computeMinimumScrolling(a,b,c,d,e,f){a|=0,b|=0,c|=0,d|=0,e=!!e,f=!!f;let g=b-a;return!(d-c<g)||e?c:f?Math.max(0,d-g):c<a?c:d>b?Math.max(0,d-g):a}}c(40049);class bK extends bs{constructor(a){super(),this._context=a;const b=this._context.configuration.options.get(165);this._decorationsLeft=b.decorationsLeft,this._decorationsWidth=b.decorationsWidth,this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(a){let b=this._context.configuration.options.get(165);return this._decorationsLeft=b.decorationsLeft,this._decorationsWidth=b.decorationsWidth,!0}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return a.scrollTopChanged}onZonesChanged(a){return!0}_getDecorations(a){let b=a.getDecorationsInViewport(),c=[],d=0;for(let a=0,e=b.length;a<e;a++){let e=b[a],f=e.options.linesDecorationsClassName,g=e.options.zIndex;f&&(c[d++]=new bp(e.range.startLineNumber,e.range.endLineNumber,f,e.options.linesDecorationsTooltip??null,g));let h=e.options.firstLineDecorationClassName;h&&(c[d++]=new bp(e.range.startLineNumber,e.range.startLineNumber,h,e.options.linesDecorationsTooltip??null,g))}return c}prepareRender(a){let b=a.visibleRange.startLineNumber,c=a.visibleRange.endLineNumber,d=this._render(b,c,this._getDecorations(a)),e='" style="left:'+this._decorationsLeft.toString()+"px;width:"+this._decorationsWidth.toString()+'px;"></div>',f=[];for(let a=b;a<=c;a++){let c=a-b,g=d[c].getDecorations(),h="";for(let a of g){let b='<div class="cldr '+a.className;null!==a.tooltip&&(b+='" title="'+a.tooltip),b+=e,h+=b}f[c]=h}this._renderResult=f}render(a,b){return this._renderResult?this._renderResult[b-a]:""}}c(30389);class bL extends _{static{this.CLASS_NAME="glyph-margin"}static{this.OUTER_CLASS_NAME="margin"}constructor(a){super(a);const b=this._context.configuration.options,c=b.get(165);this._canUseLayerHinting=!b.get(39),this._contentLeft=c.contentLeft,this._glyphMarginLeft=c.glyphMarginLeft,this._glyphMarginWidth=c.glyphMarginWidth,this._domNode=(0,Y.Z)(document.createElement("div")),this._domNode.setClassName(bL.OUTER_CLASS_NAME),this._domNode.setPosition("absolute"),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._glyphMarginBackgroundDomNode=(0,Y.Z)(document.createElement("div")),this._glyphMarginBackgroundDomNode.setClassName(bL.CLASS_NAME),this._domNode.appendChild(this._glyphMarginBackgroundDomNode)}dispose(){super.dispose()}getDomNode(){return this._domNode}onConfigurationChanged(a){let b=this._context.configuration.options,c=b.get(165);return this._canUseLayerHinting=!b.get(39),this._contentLeft=c.contentLeft,this._glyphMarginLeft=c.glyphMarginLeft,this._glyphMarginWidth=c.glyphMarginWidth,!0}onScrollChanged(a){return super.onScrollChanged(a)||a.scrollTopChanged}prepareRender(a){}render(a){this._domNode.setLayerHinting(this._canUseLayerHinting),this._domNode.setContain("strict");let b=a.scrollTop-a.bigNumbersDelta;this._domNode.setTop(-b);let c=Math.min(a.scrollHeight,1e6);this._domNode.setHeight(c),this._domNode.setWidth(this._contentLeft),this._glyphMarginBackgroundDomNode.setLeft(this._glyphMarginLeft),this._glyphMarginBackgroundDomNode.setWidth(this._glyphMarginWidth),this._glyphMarginBackgroundDomNode.setHeight(c)}}c(84951);class bM extends bs{constructor(a){super(),this._context=a,this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(a){return!0}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return a.scrollTopChanged}onZonesChanged(a){return!0}_getDecorations(a){let b=a.getDecorationsInViewport(),c=[],d=0;for(let a=0,e=b.length;a<e;a++){let e=b[a],f=e.options.marginClassName,g=e.options.zIndex;f&&(c[d++]=new bp(e.range.startLineNumber,e.range.endLineNumber,f,null,g))}return c}prepareRender(a){let b=a.visibleRange.startLineNumber,c=a.visibleRange.endLineNumber,d=this._render(b,c,this._getDecorations(a)),e=[];for(let a=b;a<=c;a++){let c=a-b,f=d[c].getDecorations(),g="";for(let a of f)g+='<div class="cmdr '+a.className+'" style=""></div>';e[c]=g}this._renderResult=e}render(a,b){return this._renderResult?this._renderResult[b-a]:""}}c(40987);var bN=c(73787);class bO{static{this.Empty=new bO(0,0,0,0)}constructor(a,b,c,d){this._rgba8Brand=void 0,this.r=bO._clamp(a),this.g=bO._clamp(b),this.b=bO._clamp(c),this.a=bO._clamp(d)}equals(a){return this.r===a.r&&this.g===a.g&&this.b===a.b&&this.a===a.a}static _clamp(a){return a<0?0:a>255?255:0|a}}var bP=c(98578);class bQ extends y.jG{static{this._INSTANCE=null}static getInstance(){return this._INSTANCE||(this._INSTANCE=(0,y.lC)(new bQ)),this._INSTANCE}constructor(){super(),this._onDidChange=new x.vl,this.onDidChange=this._onDidChange.event,this._updateColorMap(),this._register(bP.dG.onDidChange(a=>{a.changedColorMap&&this._updateColorMap()}))}_updateColorMap(){let a=bP.dG.getColorMap();if(!a){this._colors=[bO.Empty],this._backgroundIsLight=!0;return}this._colors=[bO.Empty];for(let b=1;b<a.length;b++){let c=a[b].rgba;this._colors[b]=new bO(c.r,c.g,c.b,Math.round(255*c.a))}let b=a[2].getRelativeLuminance();this._backgroundIsLight=b>=.5,this._onDidChange.fire(void 0)}getColor(a){return(a<1||a>=this._colors.length)&&(a=2),this._colors[a]}backgroundIsLight(){return this._backgroundIsLight}}var bR=c(61203);let bS=(()=>{let a=[];for(let b=32;b<=126;b++)a.push(b);return a.push(65533),a})();var bT=c(85977);class bU{constructor(a,b){this.scale=b,this._minimapCharRendererBrand=void 0,this.charDataNormal=bU.soften(a,.8),this.charDataLight=bU.soften(a,50/60)}static soften(a,b){let c=new Uint8ClampedArray(a.length);for(let d=0,e=a.length;d<e;d++)c[d]=(0,bT.W)(a[d]*b);return c}renderChar(a,b,c,d,e,f,g,h,i,j,k){var l,m;let n=+this.scale,o=2*this.scale,p=k?1:o;if(b+n>a.width||c+p>a.height)return void console.warn("bad render request outside image data");let q=j?this.charDataLight:this.charDataNormal,r=(l=d,m=i,(l-=32)<0||l>96?m<=2?(l+96)%96:95:l),s=4*a.width,t=g.r,u=g.g,v=g.b,w=e.r-t,x=e.g-u,y=e.b-v,z=Math.max(f,h),A=a.data,B=r*n*o,C=c*s+4*b;for(let a=0;a<p;a++){let a=C;for(let b=0;b<n;b++){let b=q[B++]/255*(f/255);A[a++]=t+w*b,A[a++]=u+x*b,A[a++]=v+y*b,A[a++]=z}C+=s}}blockRenderChar(a,b,c,d,e,f,g,h){let i=+this.scale,j=2*this.scale,k=h?1:j;if(b+i>a.width||c+k>a.height)return void console.warn("bad render request outside image data");let l=4*a.width,m=e/255*.5,n=f.r,o=f.g,p=f.b,q=d.r-n,r=d.g-o,s=d.b-p,t=n+q*m,u=o+r*m,v=p+s*m,w=Math.max(e,g),x=a.data,y=c*l+4*b;for(let a=0;a<k;a++){let a=y;for(let b=0;b<i;b++)x[a++]=t,x[a++]=u,x[a++]=v,x[a++]=w;y+=l}}}var bV=c(84136);let bW={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15},bX=a=>{let b=new Uint8ClampedArray(a.length/2);for(let c=0;c<a.length;c+=2)b[c>>1]=bW[a[c]]<<4|15&bW[a[c+1]];return b},bY={1:(0,bV.P)(()=>bX("0000511D6300CF609C709645A78432005642574171487021003C451900274D35D762755E8B629C5BA856AF57BA649530C167D1512A272A3F6038604460398526BCA2A968DB6F8957C768BE5FBE2FB467CF5D8D5B795DC7625B5DFF50DE64C466DB2FC47CD860A65E9A2EB96CB54CE06DA763AB2EA26860524D3763536601005116008177A8705E53AB738E6A982F88BAA35B5F5B626D9C636B449B737E5B7B678598869A662F6B5B8542706C704C80736A607578685B70594A49715A4522E792")),2:(0,bV.P)(()=>bX("000000000000000055394F383D2800008B8B1F210002000081B1CBCBCC820000847AAF6B9AAF2119BE08B8881AD60000A44FD07DCCF107015338130C00000000385972265F390B406E2437634B4B48031B12B8A0847000001E15B29A402F0000000000004B33460B00007A752C2A0000000000004D3900000084394B82013400ABA5CFC7AD9C0302A45A3E5A98AB000089A43382D97900008BA54AA087A70A0248A6A7AE6DBE0000BF6F94987EA40A01A06DCFA7A7A9030496C32F77891D0000A99FB1A0AFA80603B29AB9CA75930D010C0948354D3900000C0948354F37460D0028BE673D8400000000AF9D7B6E00002B007AA8933400007AA642675C2700007984CFB9C3985B768772A8A6B7B20000CAAECAAFC4B700009F94A6009F840009D09F9BA4CA9C0000CC8FC76DC87F0000C991C472A2000000A894A48CA7B501079BA2C9C69BA20000B19A5D3FA89000005CA6009DA2960901B0A7F0669FB200009D009E00B7890000DAD0F5D092820000D294D4C48BD10000B5A7A4A3B1A50402CAB6CBA6A2000000B5A7A4A3B1A8044FCDADD19D9CB00000B7778F7B8AAE0803C9AB5D3F5D3F00009EA09EA0BAB006039EA0989A8C7900009B9EF4D6B7C00000A9A7816CACA80000ABAC84705D3F000096DA635CDC8C00006F486F266F263D4784006124097B00374F6D2D6D2D6D4A3A95872322000000030000000000008D8939130000000000002E22A5C9CBC70600AB25C0B5C9B400061A2DB04CA67001082AA6BEBEBFC606002321DACBC19E03087AA08B6768380000282FBAC0B8CA7A88AD25BBA5A29900004C396C5894A6000040485A6E356E9442A32CD17EADA70000B4237923628600003E2DE9C1D7B500002F25BBA5A2990000231DB6AFB4A804023025C0B5CAB588062B2CBDBEC0C706882435A75CA20000002326BD6A82A908048B4B9A5A668000002423A09CB4BB060025259C9D8A7900001C1FCAB2C7C700002A2A9387ABA200002626A4A47D6E9D14333163A0C87500004B6F9C2D643A257049364936493647358A34438355497F1A0000A24C1D590000D38DFFBDD4CD3126"))};class bZ{static create(a,b){let c;return this.lastCreated&&a===this.lastCreated.scale&&b===this.lastFontFamily?this.lastCreated:(c=bY[a]?new bU(bY[a](),a):bZ.createFromSampleData(bZ.createSampleData(b).data,a),this.lastFontFamily=b,this.lastCreated=c,c)}static createSampleData(a){let b=document.createElement("canvas"),c=b.getContext("2d");b.style.height="16px",b.height=16,b.width=960,b.style.width="960px",c.fillStyle="#ffffff",c.font=`bold 16px ${a}`,c.textBaseline="middle";let d=0;for(let a of bS)c.fillText(String.fromCharCode(a),d,8),d+=10;return c.getImageData(0,0,960,16)}static createFromSampleData(a,b){if(61440!==a.length)throw Error("Unexpected source in MinimapCharRenderer");return new bU(bZ._downsample(a,b),b)}static _downsampleChar(a,b,c,d,e){let f=+e,g=2*e,h=d,i=0;for(let d=0;d<g;d++){let e=d/g*16,j=(d+1)/g*16;for(let d=0;d<f;d++){let g=d/f*10,k=(d+1)/f*10,l=0,m=0;for(let c=e;c<j;c++){let d=b+3840*Math.floor(c),e=1-(c-Math.floor(c));for(let b=g;b<k;b++){let c=1-(b-Math.floor(b)),f=d+4*Math.floor(b),g=c*e;m+=g,l+=a[f]*a[f+3]/255*g}}let n=l/m;i=Math.max(i,n),c[h++]=(0,bT.W)(n)}}return i}static _downsample(a,b){let c=2*b*1*b,d=96*c,e=new Uint8ClampedArray(d),f=0,g=0,h=0;for(let d=0;d<96;d++)h=Math.max(h,this._downsampleChar(a,g,e,f,b)),f+=c,g+=40;if(h>0){let a=255/h;for(let b=0;b<d;b++)e[b]*=a}return e}}var b$=c(42727);let b_=E.uF?'"Segoe WPC", "Segoe UI", sans-serif':E.zx?"-apple-system, BlinkMacSystemFont, sans-serif":'system-ui, "Ubuntu", "Droid Sans", sans-serif';var b0=c(16236);class b1{constructor(a,b,c){const d=a.options,e=d.get(163),f=d.get(165),g=f.minimap,h=d.get(59),i=d.get(81);this.renderMinimap=g.renderMinimap,this.size=i.size,this.minimapHeightIsEditorHeight=g.minimapHeightIsEditorHeight,this.scrollBeyondLastLine=d.get(119),this.paddingTop=d.get(96).top,this.paddingBottom=d.get(96).bottom,this.showSlider=i.showSlider,this.autohide=i.autohide,this.pixelRatio=e,this.typicalHalfwidthCharacterWidth=h.typicalHalfwidthCharacterWidth,this.lineHeight=d.get(75),this.minimapLeft=g.minimapLeft,this.minimapWidth=g.minimapWidth,this.minimapHeight=f.height,this.canvasInnerWidth=g.minimapCanvasInnerWidth,this.canvasInnerHeight=g.minimapCanvasInnerHeight,this.canvasOuterWidth=g.minimapCanvasOuterWidth,this.canvasOuterHeight=g.minimapCanvasOuterHeight,this.isSampling=g.minimapIsSampling,this.editorHeight=f.height,this.fontScale=g.minimapScale,this.minimapLineHeight=g.minimapLineHeight,this.minimapCharWidth=+this.fontScale,this.sectionHeaderFontFamily=b_,this.sectionHeaderFontSize=i.sectionHeaderFontSize*e,this.sectionHeaderLetterSpacing=i.sectionHeaderLetterSpacing,this.sectionHeaderFontColor=b1._getSectionHeaderColor(b,c.getColor(1)),this.charRenderer=(0,bV.P)(()=>bZ.create(this.fontScale,h.fontFamily)),this.defaultBackgroundColor=c.getColor(2),this.backgroundColor=b1._getMinimapBackground(b,this.defaultBackgroundColor),this.foregroundAlpha=b1._getMinimapForegroundOpacity(b)}static _getMinimapBackground(a,b){let c=a.getColor(bR.ILr);return c?new bO(c.rgba.r,c.rgba.g,c.rgba.b,Math.round(255*c.rgba.a)):b}static _getMinimapForegroundOpacity(a){let b=a.getColor(bR.K1Z);return b?bO._clamp(Math.round(255*b.rgba.a)):255}static _getSectionHeaderColor(a,b){let c=a.getColor(bR.By2);return c?new bO(c.rgba.r,c.rgba.g,c.rgba.b,Math.round(255*c.rgba.a)):b}equals(a){return this.renderMinimap===a.renderMinimap&&this.size===a.size&&this.minimapHeightIsEditorHeight===a.minimapHeightIsEditorHeight&&this.scrollBeyondLastLine===a.scrollBeyondLastLine&&this.paddingTop===a.paddingTop&&this.paddingBottom===a.paddingBottom&&this.showSlider===a.showSlider&&this.autohide===a.autohide&&this.pixelRatio===a.pixelRatio&&this.typicalHalfwidthCharacterWidth===a.typicalHalfwidthCharacterWidth&&this.lineHeight===a.lineHeight&&this.minimapLeft===a.minimapLeft&&this.minimapWidth===a.minimapWidth&&this.minimapHeight===a.minimapHeight&&this.canvasInnerWidth===a.canvasInnerWidth&&this.canvasInnerHeight===a.canvasInnerHeight&&this.canvasOuterWidth===a.canvasOuterWidth&&this.canvasOuterHeight===a.canvasOuterHeight&&this.isSampling===a.isSampling&&this.editorHeight===a.editorHeight&&this.fontScale===a.fontScale&&this.minimapLineHeight===a.minimapLineHeight&&this.minimapCharWidth===a.minimapCharWidth&&this.sectionHeaderFontSize===a.sectionHeaderFontSize&&this.sectionHeaderLetterSpacing===a.sectionHeaderLetterSpacing&&this.defaultBackgroundColor&&this.defaultBackgroundColor.equals(a.defaultBackgroundColor)&&this.backgroundColor&&this.backgroundColor.equals(a.backgroundColor)&&this.foregroundAlpha===a.foregroundAlpha}}class b2{constructor(a,b,c,d,e,f,g,h,i){this.scrollTop=a,this.scrollHeight=b,this.sliderNeeded=c,this._computedSliderRatio=d,this.sliderTop=e,this.sliderHeight=f,this.topPaddingLineCount=g,this.startLineNumber=h,this.endLineNumber=i}getDesiredScrollTopFromDelta(a){return Math.round(this.scrollTop+a/this._computedSliderRatio)}getDesiredScrollTopFromTouchLocation(a){return Math.round((a-this.sliderHeight/2)/this._computedSliderRatio)}intersectWithViewport(a){let b=Math.max(this.startLineNumber,a.startLineNumber),c=Math.min(this.endLineNumber,a.endLineNumber);return b>c?null:[b,c]}getYForLineNumber(a,b){return(a-this.startLineNumber+this.topPaddingLineCount)*b}static create(a,b,c,d,e,f,g,h,i,j,k){let l,m,n=a.pixelRatio,o=a.minimapLineHeight,p=Math.floor(a.canvasInnerHeight/o),q=a.lineHeight;if(a.minimapHeightIsEditorHeight){let b=h*a.lineHeight+a.paddingTop+a.paddingBottom;a.scrollBeyondLastLine&&(b+=Math.max(0,e-a.lineHeight-a.paddingBottom));let c=Math.max(1,Math.floor(e*e/b)),d=Math.max(0,a.minimapHeight-c),f=d/(j-e),k=Math.floor(a.canvasInnerHeight/a.minimapLineHeight);return new b2(i,j,d>0,f,i*f,c,Math.floor(a.paddingTop/a.lineHeight),1,Math.min(g,k))}l=f&&c!==g?Math.floor((c-b+1)*o/n):Math.floor(e/q*o/n);let r=Math.floor(a.paddingTop/q),s=Math.floor(a.paddingBottom/q);a.scrollBeyondLastLine&&(s=Math.max(s,e/q-1)),m=s>0?(r+g+s-e/q-1)*o/n:Math.max(0,(r+g)*o/n-l);let t=(m=Math.min(a.minimapHeight-l,m))/(j-e),u=i*t;if(p>=r+g+s)return new b2(i,j,m>0,t,u,l,r,1,g);{let c,e,f=Math.max(1,Math.floor((b>1?b+r:Math.max(1,i/q))-u*n/o));f<r?(c=r-f+1,f=1):(c=0,f=Math.max(1,f-r)),k&&k.scrollHeight===j&&(k.scrollTop>i&&(f=Math.min(f,k.startLineNumber),c=Math.max(c,k.topPaddingLineCount)),k.scrollTop<i&&(f=Math.max(f,k.startLineNumber),c=Math.min(c,k.topPaddingLineCount)));let h=Math.min(g,f-c+p-1),m=(i-d)/q;return e=i>=a.paddingTop?(b-f+c+m)*o/n:i/a.paddingTop*(c+m)*o/n,new b2(i,j,!0,t,e,l,c,f,h)}}}class b3{static{this.INVALID=new b3(-1)}constructor(a){this.dy=a}onContentChanged(){this.dy=-1}onTokensChanged(){this.dy=-1}}class b4{constructor(a,b,c){this.renderedLayout=a,this._imageData=b,this._renderedLines=new a1({createLine:()=>b3.INVALID}),this._renderedLines._set(a.startLineNumber,c)}linesEquals(a){if(!this.scrollEquals(a))return!1;let b=this._renderedLines._get().lines;for(let a=0,c=b.length;a<c;a++)if(-1===b[a].dy)return!1;return!0}scrollEquals(a){return this.renderedLayout.startLineNumber===a.startLineNumber&&this.renderedLayout.endLineNumber===a.endLineNumber}_get(){let a=this._renderedLines._get();return{imageData:this._imageData,rendLineNumberStart:a.rendLineNumberStart,lines:a.lines}}onLinesChanged(a,b){return this._renderedLines.onLinesChanged(a,b)}onLinesDeleted(a,b){this._renderedLines.onLinesDeleted(a,b)}onLinesInserted(a,b){this._renderedLines.onLinesInserted(a,b)}onTokensChanged(a){return this._renderedLines.onTokensChanged(a)}}class b5{constructor(a,b,c,d){this._backgroundFillData=b5._createBackgroundFillData(b,c,d),this._buffers=[a.createImageData(b,c),a.createImageData(b,c)],this._lastUsedBuffer=0}getBuffer(){this._lastUsedBuffer=1-this._lastUsedBuffer;let a=this._buffers[this._lastUsedBuffer];return a.data.set(this._backgroundFillData),a}static _createBackgroundFillData(a,b,c){let d=c.r,e=c.g,f=c.b,g=c.a,h=new Uint8ClampedArray(a*b*4),i=0;for(let c=0;c<b;c++)for(let b=0;b<a;b++)h[i]=d,h[i+1]=e,h[i+2]=f,h[i+3]=g,i+=4;return h}}class b6{static compute(a,b,c){if(0===a.renderMinimap||!a.isSampling)return[null,[]];let{minimapLineCount:d}=M.xZ.computeContainedMinimapLineCount({viewLineCount:b,scrollBeyondLastLine:a.scrollBeyondLastLine,paddingTop:a.paddingTop,paddingBottom:a.paddingBottom,height:a.editorHeight,lineHeight:a.lineHeight,pixelRatio:a.pixelRatio}),e=b/d,f=e/2;if(!c||0===c.minimapLines.length){let a=[];if(a[0]=1,d>1){for(let b=0,c=d-1;b<c;b++)a[b]=Math.round(b*e+f);a[d-1]=b}return[new b6(e,a),[]]}let g=c.minimapLines,h=g.length,i=[],j=0,k=0,l=1,m=[],n=null;for(let a=0;a<d;a++){let c,o=Math.max(l,Math.round(a*e)),p=Math.max(o,Math.round((a+1)*e));for(;j<h&&g[j]<o;){if(m.length<10){let a=j+1+k;n&&"deleted"===n.type&&n._oldIndex===j-1?n.deleteToLineNumber++:(n={type:"deleted",_oldIndex:j,deleteFromLineNumber:a,deleteToLineNumber:a},m.push(n)),k--}j++}if(j<h&&g[j]<=p)c=g[j],j++;else if(c=0===a?1:a+1===d?b:Math.round(a*e+f),m.length<10){let b=j+1+k;n&&"inserted"===n.type&&n._i===a-1?n.insertToLineNumber++:(n={type:"inserted",_i:a,insertFromLineNumber:b,insertToLineNumber:b},m.push(n)),k++}i[a]=c,l=c}if(m.length<10)for(;j<h;){let a=j+1+k;n&&"deleted"===n.type&&n._oldIndex===j-1?n.deleteToLineNumber++:(n={type:"deleted",_oldIndex:j,deleteFromLineNumber:a,deleteToLineNumber:a},m.push(n)),k--,j++}else m=[{type:"flush"}];return[new b6(e,i),m]}constructor(a,b){this.samplingRatio=a,this.minimapLines=b}modelLineToMinimapLine(a){return Math.min(this.minimapLines.length,Math.max(1,Math.round(a/this.samplingRatio)))}modelLineRangeToMinimapLineRange(a,b){let c=this.modelLineToMinimapLine(a)-1;for(;c>0&&this.minimapLines[c-1]>=a;)c--;let d=this.modelLineToMinimapLine(b)-1;for(;d+1<this.minimapLines.length&&this.minimapLines[d+1]<=b;)d++;if(c===d){let d=this.minimapLines[c];if(d<a||d>b)return null}return[c+1,d+1]}decorationLineRangeToMinimapLineRange(a,b){let c=this.modelLineToMinimapLine(a),d=this.modelLineToMinimapLine(b);return a!==b&&d===c&&(d===this.minimapLines.length?c>1&&c--:d++),[c,d]}onLinesDeleted(a){let b=a.toLineNumber-a.fromLineNumber+1,c=this.minimapLines.length,d=0;for(let e=this.minimapLines.length-1;e>=0&&!(this.minimapLines[e]<a.fromLineNumber);e--)this.minimapLines[e]<=a.toLineNumber?(this.minimapLines[e]=Math.max(1,a.fromLineNumber-1),c=Math.min(c,e),d=Math.max(d,e)):this.minimapLines[e]-=b;return[c,d]}onLinesInserted(a){let b=a.toLineNumber-a.fromLineNumber+1;for(let c=this.minimapLines.length-1;c>=0&&!(this.minimapLines[c]<a.fromLineNumber);c--)this.minimapLines[c]+=b}}class b7 extends _{constructor(a){super(a),this._sectionHeaderCache=new b$.qK(10,1.5),this.tokensColorTracker=bQ.getInstance(),this._selections=[],this._minimapSelections=null,this.options=new b1(this._context.configuration,this._context.theme,this.tokensColorTracker);const[b]=b6.compute(this.options,this._context.viewModel.getLineCount(),null);this._samplingState=b,this._shouldCheckSampling=!1,this._actual=new b8(a.theme,this)}dispose(){this._actual.dispose(),super.dispose()}getDomNode(){return this._actual.getDomNode()}_onOptionsMaybeChanged(){let a=new b1(this._context.configuration,this._context.theme,this.tokensColorTracker);return!this.options.equals(a)&&(this.options=a,this._recreateLineSampling(),this._actual.onDidChangeOptions(),!0)}onConfigurationChanged(a){return this._onOptionsMaybeChanged()}onCursorStateChanged(a){return this._selections=a.selections,this._minimapSelections=null,this._actual.onSelectionChanged()}onDecorationsChanged(a){return!!a.affectsMinimap&&this._actual.onDecorationsChanged()}onFlushed(a){return this._samplingState&&(this._shouldCheckSampling=!0),this._actual.onFlushed()}onLinesChanged(a){if(!this._samplingState)return this._actual.onLinesChanged(a.fromLineNumber,a.count);{let b=this._samplingState.modelLineRangeToMinimapLineRange(a.fromLineNumber,a.fromLineNumber+a.count-1);return!!b&&this._actual.onLinesChanged(b[0],b[1]-b[0]+1)}}onLinesDeleted(a){if(!this._samplingState)return this._actual.onLinesDeleted(a.fromLineNumber,a.toLineNumber);{let[b,c]=this._samplingState.onLinesDeleted(a);return b<=c&&this._actual.onLinesChanged(b+1,c-b+1),this._shouldCheckSampling=!0,!0}}onLinesInserted(a){return this._samplingState?(this._samplingState.onLinesInserted(a),this._shouldCheckSampling=!0,!0):this._actual.onLinesInserted(a.fromLineNumber,a.toLineNumber)}onScrollChanged(a){return this._actual.onScrollChanged(a)}onThemeChanged(a){return this._actual.onThemeChanged(),this._onOptionsMaybeChanged(),!0}onTokensChanged(a){if(!this._samplingState)return this._actual.onTokensChanged(a.ranges);{let b=[];for(let c of a.ranges){let a=this._samplingState.modelLineRangeToMinimapLineRange(c.fromLineNumber,c.toLineNumber);a&&b.push({fromLineNumber:a[0],toLineNumber:a[1]})}return!!b.length&&this._actual.onTokensChanged(b)}}onTokensColorsChanged(a){return this._onOptionsMaybeChanged(),this._actual.onTokensColorsChanged()}onZonesChanged(a){return this._actual.onZonesChanged()}prepareRender(a){this._shouldCheckSampling&&(this._shouldCheckSampling=!1,this._recreateLineSampling())}render(a){let b=a.visibleRange.startLineNumber,c=a.visibleRange.endLineNumber;this._samplingState&&(b=this._samplingState.modelLineToMinimapLine(b),c=this._samplingState.modelLineToMinimapLine(c));let d={viewportContainsWhitespaceGaps:a.viewportData.whitespaceViewportData.length>0,scrollWidth:a.scrollWidth,scrollHeight:a.scrollHeight,viewportStartLineNumber:b,viewportEndLineNumber:c,viewportStartLineNumberVerticalOffset:a.getVerticalOffsetForLineNumber(b),scrollTop:a.scrollTop,scrollLeft:a.scrollLeft,viewportWidth:a.viewportWidth,viewportHeight:a.viewportHeight};this._actual.render(d)}_recreateLineSampling(){this._minimapSelections=null;let a=!!this._samplingState,[b,c]=b6.compute(this.options,this._context.viewModel.getLineCount(),this._samplingState);if(this._samplingState=b,a&&this._samplingState)for(let a of c)switch(a.type){case"deleted":this._actual.onLinesDeleted(a.deleteFromLineNumber,a.deleteToLineNumber);break;case"inserted":this._actual.onLinesInserted(a.insertFromLineNumber,a.insertToLineNumber);break;case"flush":this._actual.onFlushed()}}getLineCount(){return this._samplingState?this._samplingState.minimapLines.length:this._context.viewModel.getLineCount()}getRealLineCount(){return this._context.viewModel.getLineCount()}getLineContent(a){return this._samplingState?this._context.viewModel.getLineContent(this._samplingState.minimapLines[a-1]):this._context.viewModel.getLineContent(a)}getLineMaxColumn(a){return this._samplingState?this._context.viewModel.getLineMaxColumn(this._samplingState.minimapLines[a-1]):this._context.viewModel.getLineMaxColumn(a)}getMinimapLinesRenderingData(a,b,c){if(this._samplingState){let d=[];for(let e=0,f=b-a+1;e<f;e++)c[e]?d[e]=this._context.viewModel.getViewLineData(this._samplingState.minimapLines[a+e-1]):d[e]=null;return d}return this._context.viewModel.getMinimapLinesRenderingData(a,b,c).data}getSelections(){if(null===this._minimapSelections)if(this._samplingState)for(let a of(this._minimapSelections=[],this._selections)){let[b,c]=this._samplingState.decorationLineRangeToMinimapLineRange(a.startLineNumber,a.endLineNumber);this._minimapSelections.push(new ay.L(b,a.startColumn,c,a.endColumn))}else this._minimapSelections=this._selections;return this._minimapSelections}getMinimapDecorationsInViewport(a,b){return this._getMinimapDecorationsInViewport(a,b).filter(a=>!a.options.minimap?.sectionHeaderStyle)}getSectionHeaderDecorationsInViewport(a,b){let c=this.options.sectionHeaderFontSize/this.options.minimapLineHeight;return a=Math.floor(Math.max(1,a-c)),this._getMinimapDecorationsInViewport(a,b).filter(a=>!!a.options.minimap?.sectionHeaderStyle)}_getMinimapDecorationsInViewport(a,b){let c;if(this._samplingState){let d=this._samplingState.minimapLines[a-1],e=this._samplingState.minimapLines[b-1];c=new ad.Q(d,1,e,this._context.viewModel.getLineMaxColumn(e))}else c=new ad.Q(a,1,b,this._context.viewModel.getLineMaxColumn(b));let d=this._context.viewModel.getMinimapDecorationsInRange(c);if(this._samplingState){let a=[];for(let b of d){if(!b.options.minimap)continue;let c=b.range,d=this._samplingState.modelLineToMinimapLine(c.startLineNumber),e=this._samplingState.modelLineToMinimapLine(c.endLineNumber);a.push(new b0.vo(new ad.Q(d,c.startColumn,e,c.endColumn),b.options))}return a}return d}getSectionHeaderText(a,b){let c=a.options.minimap?.sectionHeaderText;if(!c)return null;let d=this._sectionHeaderCache.get(c);if(d)return d;let e=b(c);return this._sectionHeaderCache.set(c,e),e}getOptions(){return this._context.viewModel.model.getOptions()}revealLineNumber(a){this._samplingState&&(a=this._samplingState.minimapLines[a-1]),this._context.viewModel.revealRange("mouse",!1,new ad.Q(a,1,a,1),1,0)}setScrollTop(a){this._context.viewModel.viewLayout.setScrollPosition({scrollTop:a},1)}}class b8 extends y.jG{constructor(a,b){super(),this._renderDecorations=!1,this._gestureInProgress=!1,this._isMouseOverMinimap=!1,this._theme=a,this._model=b,this._lastRenderData=null,this._buffers=null,this._selectionColor=this._theme.getColor(bR.yr0),this._domNode=(0,Y.Z)(document.createElement("div")),aa.write(this._domNode,9),this._domNode.setClassName(this._getMinimapDomNodeClassName()),this._domNode.setPosition("absolute"),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._shadow=(0,Y.Z)(document.createElement("div")),this._shadow.setClassName("minimap-shadow-hidden"),this._domNode.appendChild(this._shadow),this._canvas=(0,Y.Z)(document.createElement("canvas")),this._canvas.setPosition("absolute"),this._canvas.setLeft(0),this._domNode.appendChild(this._canvas),this._decorationsCanvas=(0,Y.Z)(document.createElement("canvas")),this._decorationsCanvas.setPosition("absolute"),this._decorationsCanvas.setClassName("minimap-decorations-layer"),this._decorationsCanvas.setLeft(0),this._domNode.appendChild(this._decorationsCanvas),this._slider=(0,Y.Z)(document.createElement("div")),this._slider.setPosition("absolute"),this._slider.setClassName("minimap-slider"),this._slider.setLayerHinting(!0),this._slider.setContain("strict"),this._domNode.appendChild(this._slider),this._sliderHorizontal=(0,Y.Z)(document.createElement("div")),this._sliderHorizontal.setPosition("absolute"),this._sliderHorizontal.setClassName("minimap-slider-horizontal"),this._slider.appendChild(this._sliderHorizontal),this._applyLayout(),this._hideDelayedScheduler=this._register(new aL.uC(()=>this._hideImmediatelyIfMouseIsOutside(),500)),this._register(v.un(this._domNode.domNode,v.Bx.MOUSE_OVER,()=>{this._isMouseOverMinimap=!0})),this._register(v.un(this._domNode.domNode,v.Bx.MOUSE_LEAVE,()=>{this._isMouseOverMinimap=!1})),this._pointerDownListener=v.un(this._domNode.domNode,v.Bx.POINTER_DOWN,a=>{a.preventDefault();let b="mouse"===a.pointerType,c=0===a.button;if(0!==this._model.options.renderMinimap&&this._lastRenderData){if("proportional"!==this._model.options.size){if(c&&this._lastRenderData){let b=v.BK(this._slider.domNode),c=b.top+b.height/2;this._startSliderDragging(a,c,this._lastRenderData.renderedLayout)}return}if(c||!b){let b=this._model.options.minimapLineHeight,c=Math.floor(this._model.options.canvasInnerHeight/this._model.options.canvasOuterHeight*a.offsetY/b)+this._lastRenderData.renderedLayout.startLineNumber-this._lastRenderData.renderedLayout.topPaddingLineCount;c=Math.min(c,this._model.getLineCount()),this._model.revealLineNumber(c)}}}),this._sliderPointerMoveMonitor=new bN._,this._sliderPointerDownListener=v.un(this._slider.domNode,v.Bx.POINTER_DOWN,a=>{a.preventDefault(),a.stopPropagation(),0===a.button&&this._lastRenderData&&this._startSliderDragging(a,a.pageY,this._lastRenderData.renderedLayout)}),this._gestureDisposable=av.q.addTarget(this._domNode.domNode),this._sliderTouchStartListener=v.ko(this._domNode.domNode,av.B.Start,a=>{a.preventDefault(),a.stopPropagation(),this._lastRenderData&&(this._slider.toggleClassName("active",!0),this._gestureInProgress=!0,this.scrollDueToTouchEvent(a))},{passive:!1}),this._sliderTouchMoveListener=v.ko(this._domNode.domNode,av.B.Change,a=>{a.preventDefault(),a.stopPropagation(),this._lastRenderData&&this._gestureInProgress&&this.scrollDueToTouchEvent(a)},{passive:!1}),this._sliderTouchEndListener=v.un(this._domNode.domNode,av.B.End,a=>{a.preventDefault(),a.stopPropagation(),this._gestureInProgress=!1,this._slider.toggleClassName("active",!1)})}_hideSoon(){this._hideDelayedScheduler.cancel(),this._hideDelayedScheduler.schedule()}_hideImmediatelyIfMouseIsOutside(){this._isMouseOverMinimap?this._hideSoon():this._domNode.toggleClassName("active",!1)}_startSliderDragging(a,b,c){if(!a.target||!(a.target instanceof Element))return;let d=a.pageX;this._slider.toggleClassName("active",!0);let e=(a,e)=>{let f=v.BK(this._domNode.domNode),g=Math.min(Math.abs(e-d),Math.abs(e-f.left),Math.abs(e-f.left-f.width));E.uF&&g>140?this._model.setScrollTop(c.scrollTop):this._model.setScrollTop(c.getDesiredScrollTopFromDelta(a-b))};a.pageY!==b&&e(a.pageY,d),this._sliderPointerMoveMonitor.startMonitoring(a.target,a.pointerId,a.buttons,a=>e(a.pageY,a.pageX),()=>{this._slider.toggleClassName("active",!1)})}scrollDueToTouchEvent(a){let b=this._domNode.domNode.getBoundingClientRect().top,c=this._lastRenderData.renderedLayout.getDesiredScrollTopFromTouchLocation(a.pageY-b);this._model.setScrollTop(c)}dispose(){this._pointerDownListener.dispose(),this._sliderPointerMoveMonitor.dispose(),this._sliderPointerDownListener.dispose(),this._gestureDisposable.dispose(),this._sliderTouchStartListener.dispose(),this._sliderTouchMoveListener.dispose(),this._sliderTouchEndListener.dispose(),super.dispose()}_getMinimapDomNodeClassName(){let a=["minimap"];return"always"===this._model.options.showSlider?a.push("slider-always"):a.push("slider-mouseover"),"mouseover"===this._model.options.autohide?a.push("minimap-autohide-mouseover"):"scroll"===this._model.options.autohide&&a.push("minimap-autohide-scroll"),a.join(" ")}getDomNode(){return this._domNode}_applyLayout(){this._domNode.setLeft(this._model.options.minimapLeft),this._domNode.setWidth(this._model.options.minimapWidth),this._domNode.setHeight(this._model.options.minimapHeight),this._shadow.setHeight(this._model.options.minimapHeight),this._canvas.setWidth(this._model.options.canvasOuterWidth),this._canvas.setHeight(this._model.options.canvasOuterHeight),this._canvas.domNode.width=this._model.options.canvasInnerWidth,this._canvas.domNode.height=this._model.options.canvasInnerHeight,this._decorationsCanvas.setWidth(this._model.options.canvasOuterWidth),this._decorationsCanvas.setHeight(this._model.options.canvasOuterHeight),this._decorationsCanvas.domNode.width=this._model.options.canvasInnerWidth,this._decorationsCanvas.domNode.height=this._model.options.canvasInnerHeight,this._slider.setWidth(this._model.options.minimapWidth)}_getBuffer(){return!this._buffers&&this._model.options.canvasInnerWidth>0&&this._model.options.canvasInnerHeight>0&&(this._buffers=new b5(this._canvas.domNode.getContext("2d"),this._model.options.canvasInnerWidth,this._model.options.canvasInnerHeight,this._model.options.backgroundColor)),this._buffers?this._buffers.getBuffer():null}onDidChangeOptions(){this._lastRenderData=null,this._buffers=null,this._applyLayout(),this._domNode.setClassName(this._getMinimapDomNodeClassName())}onSelectionChanged(){return this._renderDecorations=!0,!0}onDecorationsChanged(){return this._renderDecorations=!0,!0}onFlushed(){return this._lastRenderData=null,!0}onLinesChanged(a,b){return!!this._lastRenderData&&this._lastRenderData.onLinesChanged(a,b)}onLinesDeleted(a,b){return this._lastRenderData?.onLinesDeleted(a,b),!0}onLinesInserted(a,b){return this._lastRenderData?.onLinesInserted(a,b),!0}onScrollChanged(a){return"scroll"===this._model.options.autohide&&(a.scrollTopChanged||a.scrollHeightChanged)&&(this._domNode.toggleClassName("active",!0),this._hideSoon()),this._renderDecorations=!0,!0}onThemeChanged(){return this._selectionColor=this._theme.getColor(bR.yr0),this._renderDecorations=!0,!0}onTokensChanged(a){return!!this._lastRenderData&&this._lastRenderData.onTokensChanged(a)}onTokensColorsChanged(){return this._lastRenderData=null,this._buffers=null,!0}onZonesChanged(){return this._lastRenderData=null,!0}render(a){if(0===this._model.options.renderMinimap){this._shadow.setClassName("minimap-shadow-hidden"),this._sliderHorizontal.setWidth(0),this._sliderHorizontal.setHeight(0);return}a.scrollLeft+a.viewportWidth>=a.scrollWidth?this._shadow.setClassName("minimap-shadow-hidden"):this._shadow.setClassName("minimap-shadow-visible");let b=b2.create(this._model.options,a.viewportStartLineNumber,a.viewportEndLineNumber,a.viewportStartLineNumberVerticalOffset,a.viewportHeight,a.viewportContainsWhitespaceGaps,this._model.getLineCount(),this._model.getRealLineCount(),a.scrollTop,a.scrollHeight,this._lastRenderData?this._lastRenderData.renderedLayout:null);this._slider.setDisplay(b.sliderNeeded?"block":"none"),this._slider.setTop(b.sliderTop),this._slider.setHeight(b.sliderHeight),this._sliderHorizontal.setLeft(0),this._sliderHorizontal.setWidth(this._model.options.minimapWidth),this._sliderHorizontal.setTop(0),this._sliderHorizontal.setHeight(b.sliderHeight),this.renderDecorations(b),this._lastRenderData=this.renderLines(b)}renderDecorations(a){if(this._renderDecorations){this._renderDecorations=!1;let b=this._model.getSelections();b.sort(ad.Q.compareRangesUsingStarts);let c=this._model.getMinimapDecorationsInViewport(a.startLineNumber,a.endLineNumber);c.sort((a,b)=>(a.options.zIndex||0)-(b.options.zIndex||0));let{canvasInnerWidth:d,canvasInnerHeight:e}=this._model.options,f=this._model.options.minimapLineHeight,g=this._model.options.minimapCharWidth,h=this._model.getOptions().tabSize,i=this._decorationsCanvas.domNode.getContext("2d");i.clearRect(0,0,d,e);let j=new b9(a.startLineNumber,a.endLineNumber,!1);this._renderSelectionLineHighlights(i,b,j,a,f),this._renderDecorationsLineHighlights(i,c,j,a,f);let k=new b9(a.startLineNumber,a.endLineNumber,null);this._renderSelectionsHighlights(i,b,k,a,f,h,g,d),this._renderDecorationsHighlights(i,c,k,a,f,h,g,d),this._renderSectionHeaders(a)}}_renderSelectionLineHighlights(a,b,c,d,e){if(!this._selectionColor||this._selectionColor.isTransparent())return;a.fillStyle=this._selectionColor.transparent(.5).toString();let f=0,g=0;for(let h of b){let b=d.intersectWithViewport(h);if(!b)continue;let[i,j]=b;for(let a=i;a<=j;a++)c.set(a,!0);let k=d.getYForLineNumber(i,e),l=d.getYForLineNumber(j,e);g>=k||(g>f&&a.fillRect(M.xq,f,a.canvas.width,g-f),f=k),g=l}g>f&&a.fillRect(M.xq,f,a.canvas.width,g-f)}_renderDecorationsLineHighlights(a,b,c,d,e){let f=new Map;for(let g=b.length-1;g>=0;g--){let h=b[g],i=h.options.minimap;if(!i||1!==i.position)continue;let j=d.intersectWithViewport(h.range);if(!j)continue;let[k,l]=j,m=i.getColor(this._theme.value);if(!m||m.isTransparent())continue;let n=f.get(m.toString());n||(n=m.transparent(.5).toString(),f.set(m.toString(),n)),a.fillStyle=n;for(let b=k;b<=l;b++){if(c.has(b))continue;c.set(b,!0);let f=d.getYForLineNumber(k,e);a.fillRect(M.xq,f,a.canvas.width,e)}}}_renderSelectionsHighlights(a,b,c,d,e,f,g,h){if(!(!this._selectionColor||this._selectionColor.isTransparent()))for(let i of b){let b=d.intersectWithViewport(i);if(!b)continue;let[j,k]=b;for(let b=j;b<=k;b++)this.renderDecorationOnLine(a,c,i,this._selectionColor,d,b,e,e,f,g,h)}}_renderDecorationsHighlights(a,b,c,d,e,f,g,h){for(let i of b){let b=i.options.minimap;if(!b)continue;let j=d.intersectWithViewport(i.range);if(!j)continue;let[k,l]=j,m=b.getColor(this._theme.value);if(!(!m||m.isTransparent()))for(let j=k;j<=l;j++)switch(b.position){case 1:this.renderDecorationOnLine(a,c,i.range,m,d,j,e,e,f,g,h);continue;case 2:{let b=d.getYForLineNumber(j,e);this.renderDecoration(a,m,2,b,2,e);continue}}}}renderDecorationOnLine(a,b,c,d,e,f,g,h,i,j,k){let l=e.getYForLineNumber(f,h);if(l+g<0||l>this._model.options.canvasInnerHeight)return;let{startLineNumber:m,endLineNumber:n}=c,o=m===f?c.startColumn:1,p=n===f?c.endColumn:this._model.getLineMaxColumn(f),q=this.getXOffsetForPosition(b,f,o,i,j,k),r=this.getXOffsetForPosition(b,f,p,i,j,k);this.renderDecoration(a,d,q,l,r-q,g)}getXOffsetForPosition(a,b,c,d,e,f){if(1===c)return M.xq;if((c-1)*e>=f)return f;let g=a.get(b);if(!g){let c=this._model.getLineContent(b);g=[M.xq];let h=M.xq;for(let a=1;a<c.length+1;a++){let b=c.charCodeAt(a-1),i=h+(9===b?d*e:aM.ne(b)?2*e:e);if(i>=f){g[a]=f;break}g[a]=i,h=i}a.set(b,g)}return c-1<g.length?g[c-1]:f}renderDecoration(a,b,c,d,e,f){a.fillStyle=b&&b.toString()||"",a.fillRect(c,d,e,f)}_renderSectionHeaders(a){let b=this._model.options.minimapLineHeight,c=this._model.options.sectionHeaderFontSize,d=this._model.options.sectionHeaderLetterSpacing,e=1.5*c,{canvasInnerWidth:f}=this._model.options,g=this._model.options.backgroundColor,h=`rgb(${g.r} ${g.g} ${g.b} / .7)`,i=this._model.options.sectionHeaderFontColor,j=`rgb(${i.r} ${i.g} ${i.b})`,k=this._decorationsCanvas.domNode.getContext("2d");k.letterSpacing=d+"px",k.font="500 "+c+"px "+this._model.options.sectionHeaderFontFamily,k.strokeStyle=j,k.lineWidth=.4;let l=this._model.getSectionHeaderDecorationsInViewport(a.startLineNumber,a.endLineNumber);l.sort((a,b)=>a.range.startLineNumber-b.range.startLineNumber);let m=b8._fitSectionHeader.bind(null,k,f-M.xq);for(let d of l){let g=a.getYForLineNumber(d.range.startLineNumber,b)+c,i=g-c,l=i+2,n=this._model.getSectionHeaderText(d,m);b8._renderSectionLabel(k,n,d.options.minimap?.sectionHeaderStyle===2,h,j,f,i,e,g,l)}}static _fitSectionHeader(a,b,c){if(!c)return c;let d=a.measureText(c).width,e=a.measureText("…").width;if(d<=b||d<=e)return c;let f=c.length,g=Math.floor((b-e)/(d/c.length))-1,h=Math.ceil(g/2);for(;h>0&&/\s/.test(c[h-1]);)--h;return c.substring(0,h)+"…"+c.substring(f-(g-h))}static _renderSectionLabel(a,b,c,d,e,f,g,h,i,j){b&&(a.fillStyle=d,a.fillRect(0,g,f,h),a.fillStyle=e,a.fillText(b,M.xq,i)),c&&(a.beginPath(),a.moveTo(0,j),a.lineTo(f,j),a.closePath(),a.stroke())}renderLines(a){let b=a.startLineNumber,c=a.endLineNumber,d=this._model.options.minimapLineHeight;if(this._lastRenderData&&this._lastRenderData.linesEquals(a)){let b=this._lastRenderData._get();return new b4(a,b.imageData,b.lines)}let e=this._getBuffer();if(!e)return null;let[f,g,h]=b8._renderUntouchedLines(e,a.topPaddingLineCount,b,c,d,this._lastRenderData),i=this._model.getMinimapLinesRenderingData(b,c,h),j=this._model.getOptions().tabSize,k=this._model.options.defaultBackgroundColor,l=this._model.options.backgroundColor,m=this._model.options.foregroundAlpha,n=this._model.tokensColorTracker,o=n.backgroundIsLight(),p=this._model.options.renderMinimap,q=this._model.options.charRenderer(),r=this._model.options.fontScale,s=this._model.options.minimapCharWidth,t=(1===p?2:3)*r,u=d>t?Math.floor((d-t)/2):0,v=l.a/255,w=new bO(Math.round((l.r-k.r)*v+k.r),Math.round((l.g-k.g)*v+k.g),Math.round((l.b-k.b)*v+k.b),255),x=a.topPaddingLineCount*d,y=[];for(let a=0,f=c-b+1;a<f;a++)h[a]&&b8._renderLine(e,w,l.a,o,p,s,n,m,q,x,u,j,i[a],r,d),y[a]=new b3(x),x+=d;let z=-1===f?0:f,A=-1===g?e.height:g;return this._canvas.domNode.getContext("2d").putImageData(e,0,0,0,z,e.width,A-z),new b4(a,e,y)}static _renderUntouchedLines(a,b,c,d,e,f){let g=[];if(!f){for(let a=0,b=d-c+1;a<b;a++)g[a]=!0;return[-1,-1,g]}let h=f._get(),i=h.imageData.data,j=h.rendLineNumberStart,k=h.lines,l=k.length,m=a.width,n=a.data,o=(d-c+1)*e*m*4,p=-1,q=-1,r=-1,s=-1,t=-1,u=-1,v=b*e;for(let a=c;a<=d;a++){let b=a-c,d=a-j,f=d>=0&&d<l?k[d].dy:-1;if(-1===f){g[b]=!0,v+=e;continue}let h=f*m*4,w=(f+e)*m*4,x=v*m*4,y=(v+e)*m*4;s===h&&u===x?s=w:(-1!==r&&(n.set(i.subarray(r,s),t),-1===p&&0===r&&r===t&&(p=s),-1===q&&s===o&&r===t&&(q=r)),r=h,s=w,t=x),u=y,g[b]=!1,v+=e}return -1!==r&&(n.set(i.subarray(r,s),t),-1===p&&0===r&&r===t&&(p=s),-1===q&&s===o&&r===t&&(q=r)),[-1===p?-1:p/(4*m),-1===q?-1:q/(4*m),g]}static _renderLine(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){let p=m.content,q=m.tokens,r=a.width-f,s=1===o,t=M.xq,u=0,v=0;for(let m=0,o=q.getCount();m<o;m++){let o=q.getEndOffset(m),w=q.getForeground(m),x=g.getColor(w);for(;u<o;u++){if(t>r)return;let g=p.charCodeAt(u);if(9===g){let a=l-(u+v)%l;v+=a-1,t+=a*f}else if(32===g)t+=f;else{let l=aM.ne(g)?2:1;for(let m=0;m<l;m++)if(2===e?i.blockRenderChar(a,t,j+k,x,h,b,c,s):i.renderChar(a,t,j+k,g,x,h,b,c,n,d,s),(t+=f)>r)return}}}}}class b9{constructor(a,b,c){this._startLineNumber=a,this._endLineNumber=b,this._defaultValue=c,this._values=[];for(let a=0,b=this._endLineNumber-this._startLineNumber+1;a<b;a++)this._values[a]=c}has(a){return this.get(a)!==this._defaultValue}set(a,b){a<this._startLineNumber||a>this._endLineNumber||(this._values[a-this._startLineNumber]=b)}get(a){return a<this._startLineNumber||a>this._endLineNumber?this._defaultValue:this._values[a-this._startLineNumber]}}c(69875);class ca extends _{constructor(a,b){super(a),this._viewDomNode=b;const c=this._context.configuration.options.get(165);this._widgets={},this._verticalScrollbarWidth=c.verticalScrollbarWidth,this._minimapWidth=c.minimap.minimapWidth,this._horizontalScrollbarHeight=c.horizontalScrollbarHeight,this._editorHeight=c.height,this._editorWidth=c.width,this._viewDomNodeRect={top:0,left:0,width:0,height:0},this._domNode=(0,Y.Z)(document.createElement("div")),aa.write(this._domNode,4),this._domNode.setClassName("overlayWidgets"),this.overflowingOverlayWidgetsDomNode=(0,Y.Z)(document.createElement("div")),aa.write(this.overflowingOverlayWidgetsDomNode,5),this.overflowingOverlayWidgetsDomNode.setClassName("overflowingOverlayWidgets")}dispose(){super.dispose(),this._widgets={}}getDomNode(){return this._domNode}onConfigurationChanged(a){let b=this._context.configuration.options.get(165);return this._verticalScrollbarWidth=b.verticalScrollbarWidth,this._minimapWidth=b.minimap.minimapWidth,this._horizontalScrollbarHeight=b.horizontalScrollbarHeight,this._editorHeight=b.height,this._editorWidth=b.width,!0}_widgetCanOverflow(a){let b=this._context.configuration.options.get(4);return(a.allowEditorOverflow||!1)&&b}addWidget(a){let b=(0,Y.Z)(a.getDomNode());this._widgets[a.getId()]={widget:a,preference:null,domNode:b},b.setPosition("absolute"),b.setAttribute("widgetId",a.getId()),this._widgetCanOverflow(a)?this.overflowingOverlayWidgetsDomNode.appendChild(b):this._domNode.appendChild(b),this.setShouldRender(),this._updateMaxMinWidth()}setWidgetPosition(a,b){let c=this._widgets[a.getId()],d=b?b.preference:null,e=b?.stackOridinal;return c.preference===d&&c.stack===e?(this._updateMaxMinWidth(),!1):(c.preference=d,c.stack=e,this.setShouldRender(),this._updateMaxMinWidth(),!0)}removeWidget(a){let b=a.getId();if(this._widgets.hasOwnProperty(b)){let a=this._widgets[b].domNode.domNode;delete this._widgets[b],a.remove(),this.setShouldRender(),this._updateMaxMinWidth()}}_updateMaxMinWidth(){let a=0,b=Object.keys(this._widgets);for(let c=0,d=b.length;c<d;c++){let d=b[c],e=this._widgets[d],f=e.widget.getMinContentWidthInPx?.();void 0!==f&&(a=Math.max(a,f))}this._context.viewLayout.setOverlayWidgetsMinWidth(a)}_renderWidget(a,b){let c=a.domNode;if(null===a.preference)return void c.setTop("");let d=2*this._verticalScrollbarWidth+this._minimapWidth;if(0===a.preference||1===a.preference){if(1===a.preference){let a=c.domNode.clientHeight;c.setTop(this._editorHeight-a-2*this._horizontalScrollbarHeight)}else c.setTop(0);void 0!==a.stack?(c.setTop(b[a.preference]),b[a.preference]+=c.domNode.clientWidth):c.setRight(d)}else if(2===a.preference)c.domNode.style.right="50%",void 0!==a.stack?(c.setTop(b[2]),b[2]+=c.domNode.clientHeight):c.setTop(0);else{let{top:b,left:d}=a.preference;if(this._context.configuration.options.get(51)&&this._widgetCanOverflow(a.widget)){let a=this._viewDomNodeRect;c.setTop(b+a.top),c.setLeft(d+a.left),c.setPosition("fixed")}else c.setTop(b),c.setLeft(d),c.setPosition("absolute")}}prepareRender(a){this._viewDomNodeRect=v.BK(this._viewDomNode.domNode)}render(a){this._domNode.setWidth(this._editorWidth);let b=Object.keys(this._widgets),c=Array.from({length:3},()=>0);b.sort((a,b)=>(this._widgets[a].stack||0)-(this._widgets[b].stack||0));for(let a=0,d=b.length;a<d;a++){let d=b[a];this._renderWidget(this._widgets[d],c)}}}var cb=c(81034),cc=c(15991);class cd{constructor(a,b){const c=a.options;this.lineHeight=c.get(75),this.pixelRatio=c.get(163),this.overviewRulerLanes=c.get(95),this.renderBorder=c.get(94);const d=b.getColor(bh.x9);this.borderColor=d?d.toString():null,this.hideCursor=c.get(68);const e=b.getColor(bh.D0);this.cursorColorSingle=e?e.transparent(.7).toString():null;const f=b.getColor(bh.sC);this.cursorColorPrimary=f?f.transparent(.7).toString():null;const g=b.getColor(bh.we);this.cursorColorSecondary=g?g.transparent(.7).toString():null,this.themeType=b.type;const h=c.get(81),i=h.enabled,j=h.side,k=b.getColor(bh.Xr),l=bP.dG.getDefaultBackground();k?this.backgroundColor=k:i&&"right"===j?this.backgroundColor=l:this.backgroundColor=null;const m=c.get(165).overviewRuler;this.top=m.top,this.right=m.right,this.domWidth=m.width,this.domHeight=m.height,0===this.overviewRulerLanes?(this.canvasWidth=0,this.canvasHeight=0):(this.canvasWidth=this.domWidth*this.pixelRatio|0,this.canvasHeight=this.domHeight*this.pixelRatio|0);const[n,o]=this._initLanes(1,this.canvasWidth,this.overviewRulerLanes);this.x=n,this.w=o}_initLanes(a,b,c){let d=b-a;if(c>=3){let b=Math.floor(d/3),c=Math.floor(d/3),e=d-b-c,f=a+b;return[[0,a,f,a,a+b+e,a,f,a],[0,b,e,b+e,c,b+e+c,e+c,b+e+c]]}if(2!==c)return[[0,a,a,a,a,a,a,a],[0,d,d,d,d,d,d,d]];{let b=Math.floor(d/2),c=d-b;return[[0,a,a,a,a+b,a,a,a],[0,b,b,b,c,b+c,b+c,b+c]]}}equals(a){return this.lineHeight===a.lineHeight&&this.pixelRatio===a.pixelRatio&&this.overviewRulerLanes===a.overviewRulerLanes&&this.renderBorder===a.renderBorder&&this.borderColor===a.borderColor&&this.hideCursor===a.hideCursor&&this.cursorColorSingle===a.cursorColorSingle&&this.cursorColorPrimary===a.cursorColorPrimary&&this.cursorColorSecondary===a.cursorColorSecondary&&this.themeType===a.themeType&&cb.Q1.equals(this.backgroundColor,a.backgroundColor)&&this.top===a.top&&this.right===a.right&&this.domWidth===a.domWidth&&this.domHeight===a.domHeight&&this.canvasWidth===a.canvasWidth&&this.canvasHeight===a.canvasHeight}}class ce extends _{constructor(a){super(a),this._actualShouldRender=0,this._renderedDecorations=[],this._renderedCursorPositions=[],this._domNode=(0,Y.Z)(document.createElement("canvas")),this._domNode.setClassName("decorationsOverviewRuler"),this._domNode.setPosition("absolute"),this._domNode.setLayerHinting(!0),this._domNode.setContain("strict"),this._domNode.setAttribute("aria-hidden","true"),this._updateSettings(!1),this._tokensColorTrackerListener=bP.dG.onDidChange(a=>{a.changedColorMap&&this._updateSettings(!0)}),this._cursorPositions=[{position:new ac.y(1,1),color:this._settings.cursorColorSingle}]}dispose(){super.dispose(),this._tokensColorTrackerListener.dispose()}_updateSettings(a){let b=new cd(this._context.configuration,this._context.theme);return!(this._settings&&this._settings.equals(b))&&(this._settings=b,this._domNode.setTop(this._settings.top),this._domNode.setRight(this._settings.right),this._domNode.setWidth(this._settings.domWidth),this._domNode.setHeight(this._settings.domHeight),this._domNode.domNode.width=this._settings.canvasWidth,this._domNode.domNode.height=this._settings.canvasHeight,a&&this._render(),!0)}_markRenderingIsNeeded(){return this._actualShouldRender=2,!0}_markRenderingIsMaybeNeeded(){return this._actualShouldRender=1,!0}onConfigurationChanged(a){return!!this._updateSettings(!1)&&this._markRenderingIsNeeded()}onCursorStateChanged(a){this._cursorPositions=[];for(let b=0,c=a.selections.length;b<c;b++){let d=this._settings.cursorColorSingle;c>1&&(d=0===b?this._settings.cursorColorPrimary:this._settings.cursorColorSecondary),this._cursorPositions.push({position:a.selections[b].getPosition(),color:d})}return this._cursorPositions.sort((a,b)=>ac.y.compare(a.position,b.position)),this._markRenderingIsMaybeNeeded()}onDecorationsChanged(a){return!!a.affectsOverviewRuler&&this._markRenderingIsMaybeNeeded()}onFlushed(a){return this._markRenderingIsNeeded()}onScrollChanged(a){return!!a.scrollHeightChanged&&this._markRenderingIsNeeded()}onZonesChanged(a){return this._markRenderingIsNeeded()}onThemeChanged(a){return!!this._updateSettings(!1)&&this._markRenderingIsNeeded()}getDomNode(){return this._domNode.domNode}prepareRender(a){}render(a){this._render(),this._actualShouldRender=0}_render(){let a=this._settings.backgroundColor;if(0===this._settings.overviewRulerLanes){this._domNode.setBackgroundColor(a?cb.Q1.Format.CSS.formatHexA(a):""),this._domNode.setDisplay("none");return}let b=this._context.viewModel.getAllOverviewRulerDecorations(this._context.theme);if(b.sort(cc.Uv.compareByRenderingProps),1!==this._actualShouldRender||cc.Uv.equalsArr(this._renderedDecorations,b)||(this._actualShouldRender=2),1!==this._actualShouldRender||(0,C.aI)(this._renderedCursorPositions,this._cursorPositions,(a,b)=>a.position.lineNumber===b.position.lineNumber&&a.color===b.color)||(this._actualShouldRender=2),1===this._actualShouldRender)return;this._renderedDecorations=b,this._renderedCursorPositions=this._cursorPositions,this._domNode.setDisplay("block");let c=this._settings.canvasWidth,d=this._settings.canvasHeight,e=this._settings.lineHeight,f=this._context.viewLayout,g=d/this._context.viewLayout.getScrollHeight(),h=6*this._settings.pixelRatio|0,i=h/2|0,j=this._domNode.domNode.getContext("2d");a?(a.isOpaque()||j.clearRect(0,0,c,d),j.fillStyle=cb.Q1.Format.CSS.formatHexA(a),j.fillRect(0,0,c,d)):j.clearRect(0,0,c,d);let k=this._settings.x,l=this._settings.w;for(let a of b){let b=a.color,c=a.data;j.fillStyle=b;let m=0,n=0,o=0;for(let a=0,b=c.length/3;a<b;a++){let b=c[3*a],p=c[3*a+1],q=c[3*a+2],r=f.getVerticalOffsetForLineNumber(p)*g|0,s=(f.getVerticalOffsetForLineNumber(q)+e)*g|0;if(s-r<h){let a=(r+s)/2|0;a<i?a=i:a+i>d&&(a=d-i),r=a-i,s=a+i}r>o+1||b!==m?(0!==a&&j.fillRect(k[m],n,l[m],o-n),m=b,n=r,o=s):s>o&&(o=s)}j.fillRect(k[m],n,l[m],o-n)}if(!this._settings.hideCursor){let a=2*this._settings.pixelRatio|0,b=a/2|0,c=this._settings.x[7],e=this._settings.w[7],h=-100,i=-100,k=null;for(let l=0,m=this._cursorPositions.length;l<m;l++){let m=this._cursorPositions[l].color;if(!m)continue;let n=this._cursorPositions[l].position,o=f.getVerticalOffsetForLineNumber(n.lineNumber)*g|0;o<b?o=b:o+b>d&&(o=d-b);let p=o-b,q=p+a;p>i+1||m!==k?(0!==l&&k&&j.fillRect(c,h,e,i-h),h=p,i=q):q>i&&(i=q),k=m,j.fillStyle=m}k&&j.fillRect(c,h,e,i-h)}this._settings.renderBorder&&this._settings.borderColor&&this._settings.overviewRulerLanes>0&&(j.beginPath(),j.lineWidth=1,j.strokeStyle=this._settings.borderColor,j.moveTo(0,0),j.lineTo(0,d),j.moveTo(1,0),j.lineTo(c,0),j.stroke())}}var cf=c(32532);class cg extends $.i{constructor(a,b){super(),this._context=a;const c=this._context.configuration.options;this._domNode=(0,Y.Z)(document.createElement("canvas")),this._domNode.setClassName(b),this._domNode.setPosition("absolute"),this._domNode.setLayerHinting(!0),this._domNode.setContain("strict"),this._zoneManager=new cf.rW(a=>this._context.viewLayout.getVerticalOffsetForLineNumber(a)),this._zoneManager.setDOMWidth(0),this._zoneManager.setDOMHeight(0),this._zoneManager.setOuterHeight(this._context.viewLayout.getScrollHeight()),this._zoneManager.setLineHeight(c.get(75)),this._zoneManager.setPixelRatio(c.get(163)),this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),super.dispose()}onConfigurationChanged(a){let b=this._context.configuration.options;return a.hasChanged(75)&&(this._zoneManager.setLineHeight(b.get(75)),this._render()),a.hasChanged(163)&&(this._zoneManager.setPixelRatio(b.get(163)),this._domNode.setWidth(this._zoneManager.getDOMWidth()),this._domNode.setHeight(this._zoneManager.getDOMHeight()),this._domNode.domNode.width=this._zoneManager.getCanvasWidth(),this._domNode.domNode.height=this._zoneManager.getCanvasHeight(),this._render()),!0}onFlushed(a){return this._render(),!0}onScrollChanged(a){return a.scrollHeightChanged&&(this._zoneManager.setOuterHeight(a.scrollHeight),this._render()),!0}onZonesChanged(a){return this._render(),!0}getDomNode(){return this._domNode.domNode}setLayout(a){this._domNode.setTop(a.top),this._domNode.setRight(a.right);let b=!1;b=this._zoneManager.setDOMWidth(a.width)||b,(b=this._zoneManager.setDOMHeight(a.height)||b)&&(this._domNode.setWidth(this._zoneManager.getDOMWidth()),this._domNode.setHeight(this._zoneManager.getDOMHeight()),this._domNode.domNode.width=this._zoneManager.getCanvasWidth(),this._domNode.domNode.height=this._zoneManager.getCanvasHeight(),this._render())}setZones(a){this._zoneManager.setZones(a),this._render()}_render(){if(0===this._zoneManager.getOuterHeight())return!1;let a=this._zoneManager.getCanvasWidth(),b=this._zoneManager.getCanvasHeight(),c=this._zoneManager.resolveColorZones(),d=this._zoneManager.getId2Color(),e=this._domNode.domNode.getContext("2d");return e.clearRect(0,0,a,b),c.length>0&&this._renderOneLane(e,c,d,a),!0}_renderOneLane(a,b,c,d){let e=0,f=0,g=0;for(let h of b){let b=h.colorId,i=h.from,j=h.to;b!==e?(a.fillRect(0,f,d,g-f),a.fillStyle=c[e=b],f=i,g=j):g>=i?g=Math.max(g,j):(a.fillRect(0,f,d,g-f),f=i,g=j)}a.fillRect(0,f,d,g-f)}}c(58547);class ch extends _{constructor(a){super(a),this.domNode=(0,Y.Z)(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this.domNode.setClassName("view-rulers"),this._renderedRulers=[];const b=this._context.configuration.options;this._rulers=b.get(116),this._typicalHalfwidthCharacterWidth=b.get(59).typicalHalfwidthCharacterWidth}dispose(){super.dispose()}onConfigurationChanged(a){let b=this._context.configuration.options;return this._rulers=b.get(116),this._typicalHalfwidthCharacterWidth=b.get(59).typicalHalfwidthCharacterWidth,!0}onScrollChanged(a){return a.scrollHeightChanged}prepareRender(a){}_ensureRulersCount(){let a=this._renderedRulers.length,b=this._rulers.length;if(a===b)return;if(a<b){let{tabSize:c}=this._context.viewModel.model.getOptions(),d=b-a;for(;d>0;){let a=(0,Y.Z)(document.createElement("div"));a.setClassName("view-ruler"),a.setWidth(c),this.domNode.appendChild(a),this._renderedRulers.push(a),d--}return}let c=a-b;for(;c>0;){let a=this._renderedRulers.pop();this.domNode.removeChild(a),c--}}render(a){this._ensureRulersCount();for(let b=0,c=this._rulers.length;b<c;b++){let c=this._renderedRulers[b],d=this._rulers[b];c.setBoxShadow(d.color?`1px 0 0 0 ${d.color} inset`:""),c.setHeight(Math.min(a.scrollHeight,1e6)),c.setLeft(d.column*this._typicalHalfwidthCharacterWidth)}}}c(14699);class ci extends _{constructor(a){super(a),this._scrollTop=0,this._width=0,this._updateWidth(),this._shouldShow=!1;const b=this._context.configuration.options.get(117);this._useShadows=b.useShadows,this._domNode=(0,Y.Z)(document.createElement("div")),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true")}dispose(){super.dispose()}_updateShouldShow(){let a=this._useShadows&&this._scrollTop>0;return this._shouldShow!==a&&(this._shouldShow=a,!0)}getDomNode(){return this._domNode}_updateWidth(){let a=this._context.configuration.options.get(165);0===a.minimap.renderMinimap||a.minimap.minimapWidth>0&&0===a.minimap.minimapLeft?this._width=a.width:this._width=a.width-a.verticalScrollbarWidth}onConfigurationChanged(a){let b=this._context.configuration.options.get(117);return this._useShadows=b.useShadows,this._updateWidth(),this._updateShouldShow(),!0}onScrollChanged(a){return this._scrollTop=a.scrollTop,this._updateShouldShow()}prepareRender(a){}render(a){this._domNode.setWidth(this._width),this._domNode.setClassName(this._shouldShow?"scroll-decoration":"")}}c(44555);class cj{constructor(a){this.left=a.left,this.width=a.width,this.startStyle=null,this.endStyle=null}}class ck{constructor(a,b){this.lineNumber=a,this.ranges=b}}function cl(a){return new cj(a)}function cm(a){return new ck(a.lineNumber,a.ranges.map(cl))}class cn extends bg{static{this.SELECTION_CLASS_NAME="selected-text"}static{this.SELECTION_TOP_LEFT="top-left-radius"}static{this.SELECTION_BOTTOM_LEFT="bottom-left-radius"}static{this.SELECTION_TOP_RIGHT="top-right-radius"}static{this.SELECTION_BOTTOM_RIGHT="bottom-right-radius"}static{this.EDITOR_BACKGROUND_CLASS_NAME="monaco-editor-background"}static{this.ROUNDED_PIECE_WIDTH=10}constructor(a){super(),this._previousFrameVisibleRangesWithStyle=[],this._context=a;const b=this._context.configuration.options;this._roundedSelection=b.get(115),this._typicalHalfwidthCharacterWidth=b.get(59).typicalHalfwidthCharacterWidth,this._selections=[],this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(a){let b=this._context.configuration.options;return this._roundedSelection=b.get(115),this._typicalHalfwidthCharacterWidth=b.get(59).typicalHalfwidthCharacterWidth,!0}onCursorStateChanged(a){return this._selections=a.selections.slice(0),!0}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return a.scrollTopChanged}onZonesChanged(a){return!0}_visibleRangesHaveGaps(a){for(let b=0,c=a.length;b<c;b++)if(a[b].ranges.length>1)return!0;return!1}_enrichVisibleRangesWithStyle(a,b,c){let d=this._typicalHalfwidthCharacterWidth/4,e=null,f=null;if(c&&c.length>0&&b.length>0){let d=b[0].lineNumber;if(d===a.startLineNumber)for(let a=0;!e&&a<c.length;a++)c[a].lineNumber===d&&(e=c[a].ranges[0]);let g=b[b.length-1].lineNumber;if(g===a.endLineNumber)for(let a=c.length-1;!f&&a>=0;a--)c[a].lineNumber===g&&(f=c[a].ranges[0]);e&&!e.startStyle&&(e=null),f&&!f.startStyle&&(f=null)}for(let a=0,c=b.length;a<c;a++){let g=b[a].ranges[0],h=g.left,i=g.left+g.width,j={top:0,bottom:0},k={top:0,bottom:0};if(a>0){let c=b[a-1].ranges[0].left,e=b[a-1].ranges[0].left+b[a-1].ranges[0].width;co(h-c)<d?j.top=2:h>c&&(j.top=1),co(i-e)<d?k.top=2:c<i&&i<e&&(k.top=1)}else e&&(j.top=e.startStyle.top,k.top=e.endStyle.top);if(a+1<c){let c=b[a+1].ranges[0].left,e=b[a+1].ranges[0].left+b[a+1].ranges[0].width;co(h-c)<d?j.bottom=2:c<h&&h<e&&(j.bottom=1),co(i-e)<d?k.bottom=2:i<e&&(k.bottom=1)}else f&&(j.bottom=f.startStyle.bottom,k.bottom=f.endStyle.bottom);g.startStyle=j,g.endStyle=k}}_getVisibleRangesWithStyle(a,b,c){let d=(b.linesVisibleRangesForRange(a,!0)||[]).map(cm);return!this._visibleRangesHaveGaps(d)&&this._roundedSelection&&this._enrichVisibleRangesWithStyle(b.visibleRange,d,c),d}_createSelectionPiece(a,b,c,d,e){return'<div class="cslr '+c+'" style="top:'+a.toString()+"px;bottom:"+b.toString()+"px;left:"+d.toString()+"px;width:"+e.toString()+'px;"></div>'}_actualRenderOneSelection(a,b,c,d){if(0===d.length)return;let e=!!d[0].ranges[0].startStyle,f=d[0].lineNumber,g=d[d.length-1].lineNumber;for(let h=0,i=d.length;h<i;h++){let i=d[h],j=i.lineNumber,k=j-b,l=c?+(j===f):0,m=c?+(j!==f&&j===g):0,n="",o="";for(let a=0,b=i.ranges.length;a<b;a++){let b=i.ranges[a];if(e){let a=b.startStyle,c=b.endStyle;if(1===a.top||1===a.bottom){n+=this._createSelectionPiece(l,m,cn.SELECTION_CLASS_NAME,b.left-cn.ROUNDED_PIECE_WIDTH,cn.ROUNDED_PIECE_WIDTH);let c=cn.EDITOR_BACKGROUND_CLASS_NAME;1===a.top&&(c+=" "+cn.SELECTION_TOP_RIGHT),1===a.bottom&&(c+=" "+cn.SELECTION_BOTTOM_RIGHT),n+=this._createSelectionPiece(l,m,c,b.left-cn.ROUNDED_PIECE_WIDTH,cn.ROUNDED_PIECE_WIDTH)}if(1===c.top||1===c.bottom){n+=this._createSelectionPiece(l,m,cn.SELECTION_CLASS_NAME,b.left+b.width,cn.ROUNDED_PIECE_WIDTH);let a=cn.EDITOR_BACKGROUND_CLASS_NAME;1===c.top&&(a+=" "+cn.SELECTION_TOP_LEFT),1===c.bottom&&(a+=" "+cn.SELECTION_BOTTOM_LEFT),n+=this._createSelectionPiece(l,m,a,b.left+b.width,cn.ROUNDED_PIECE_WIDTH)}}let c=cn.SELECTION_CLASS_NAME;if(e){let a=b.startStyle,d=b.endStyle;0===a.top&&(c+=" "+cn.SELECTION_TOP_LEFT),0===a.bottom&&(c+=" "+cn.SELECTION_BOTTOM_LEFT),0===d.top&&(c+=" "+cn.SELECTION_TOP_RIGHT),0===d.bottom&&(c+=" "+cn.SELECTION_BOTTOM_RIGHT)}o+=this._createSelectionPiece(l,m,c,b.left,b.width)}a[k][0]+=n,a[k][1]+=o}}prepareRender(a){let b=[],c=a.visibleRange.startLineNumber,d=a.visibleRange.endLineNumber;for(let a=c;a<=d;a++)b[a-c]=["",""];let e=[];for(let d=0,f=this._selections.length;d<f;d++){let f=this._selections[d];if(f.isEmpty()){e[d]=null;continue}let g=this._getVisibleRangesWithStyle(f,a,this._previousFrameVisibleRangesWithStyle[d]);e[d]=g,this._actualRenderOneSelection(b,c,this._selections.length>1,g)}this._previousFrameVisibleRangesWithStyle=e,this._renderResult=b.map(([a,b])=>a+b)}render(a,b){if(!this._renderResult)return"";let c=b-a;return c<0||c>=this._renderResult.length?"":this._renderResult[c]}}function co(a){return a<0?-a:a}(0,bi.zy)((a,b)=>{let c=a.getColor(bR.rm4);c&&!c.isTransparent()&&b.addRule(`.monaco-editor .view-line span.inline-selected-text { color: ${c}; }`)}),c(28199);class cp{constructor(a,b,c,d,e,f,g){this.top=a,this.left=b,this.paddingLeft=c,this.width=d,this.height=e,this.textContent=f,this.textContentClassName=g}}(f=o||(o={}))[f.Single=0]="Single",f[f.MultiPrimary=1]="MultiPrimary",f[f.MultiSecondary=2]="MultiSecondary";class cq{constructor(a,b){this._context=a;const c=this._context.configuration.options,d=c.get(59);this._cursorStyle=c.get(161),this._typicalHalfwidthCharacterWidth=d.typicalHalfwidthCharacterWidth,this._lineCursorWidth=Math.min(c.get(37),this._typicalHalfwidthCharacterWidth),this._lineCursorHeight=c.get(38),this._isVisible=!0,this._domNode=(0,Y.Z)(document.createElement("div")),this._domNode.setClassName(`cursor ${bD}`),this._domNode.setHeight(this._context.viewLayout.getLineHeightForLineNumber(1)),this._domNode.setTop(0),this._domNode.setLeft(0),(0,A.M)(this._domNode,d),this._domNode.setDisplay("none"),this._position=new ac.y(1,1),this._pluralityClass="",this.setPlurality(b),this._lastRenderedContent="",this._renderData=null}getDomNode(){return this._domNode}getPosition(){return this._position}setPlurality(a){switch(a){default:case o.Single:this._pluralityClass="";break;case o.MultiPrimary:this._pluralityClass="cursor-primary";break;case o.MultiSecondary:this._pluralityClass="cursor-secondary"}}show(){this._isVisible||(this._domNode.setVisibility("inherit"),this._isVisible=!0)}hide(){this._isVisible&&(this._domNode.setVisibility("hidden"),this._isVisible=!1)}onConfigurationChanged(a){let b=this._context.configuration.options,c=b.get(59);return this._cursorStyle=b.get(161),this._typicalHalfwidthCharacterWidth=c.typicalHalfwidthCharacterWidth,this._lineCursorWidth=Math.min(b.get(37),this._typicalHalfwidthCharacterWidth),this._lineCursorHeight=b.get(38),(0,A.M)(this._domNode,c),!0}onCursorPositionChanged(a,b){return b?this._domNode.domNode.style.transitionProperty="none":this._domNode.domNode.style.transitionProperty="",this._position=a,!0}_getGraphemeAwarePosition(){let{lineNumber:a,column:b}=this._position,c=this._context.viewModel.getLineContent(a),[d,e]=aM.m(c,b-1);return[new ac.y(a,d+1),c.substring(d,e)]}_prepareRender(a){let b="",c="",[d,e]=this._getGraphemeAwarePosition(),f=this._context.viewLayout.getLineHeightForLineNumber(d.lineNumber),g=0===this._lineCursorHeight?f:Math.min(f,this._lineCursorHeight),h=(f-g)/2;if(this._cursorStyle===M.m9.Line||this._cursorStyle===M.m9.LineThin){let f,i=a.visibleRangeForPosition(d);if(!i||i.outsideRenderedLine)return null;let j=v.zk(this._domNode.domNode);this._cursorStyle===M.m9.Line?(f=v.vT(j,this._lineCursorWidth>0?this._lineCursorWidth:2))>2&&(b=e,c=this._getTokenClassName(d)):f=v.vT(j,1);let k=i.left,l=0;return f>=2&&k>=1&&(k-=l=1),new cp(a.getVerticalOffsetForLineNumber(d.lineNumber)-a.bigNumbersDelta+h,k,l,f,g,b,c)}let i=a.linesVisibleRangesForRange(new ad.Q(d.lineNumber,d.column,d.lineNumber,d.column+e.length),!1);if(!i||0===i.length)return null;let j=i[0];if(j.outsideRenderedLine||0===j.ranges.length)return null;let k=j.ranges[0],l=" "===e||k.width<1?this._typicalHalfwidthCharacterWidth:k.width;this._cursorStyle===M.m9.Block&&(b=e,c=this._getTokenClassName(d));let m=a.getVerticalOffsetForLineNumber(d.lineNumber)-a.bigNumbersDelta,n=f;return(this._cursorStyle===M.m9.Underline||this._cursorStyle===M.m9.UnderlineThin)&&(m+=f-2,n=2),new cp(m,k.left,0,l,n,b,c)}_getTokenClassName(a){let b=this._context.viewModel.getViewLineData(a.lineNumber),c=b.tokens.findTokenIndexAtOffset(a.column-1);return b.tokens.getClassName(c)}prepareRender(a){this._renderData=this._prepareRender(a)}render(a){return this._renderData?(this._lastRenderedContent!==this._renderData.textContent&&(this._lastRenderedContent=this._renderData.textContent,this._domNode.domNode.textContent=this._lastRenderedContent),this._domNode.setClassName(`cursor ${this._pluralityClass} ${bD} ${this._renderData.textContentClassName}`),this._domNode.setDisplay("block"),this._domNode.setTop(this._renderData.top),this._domNode.setLeft(this._renderData.left),this._domNode.setPaddingLeft(this._renderData.paddingLeft),this._domNode.setWidth(this._renderData.width),this._domNode.setLineHeight(this._renderData.height),this._domNode.setHeight(this._renderData.height),{domNode:this._domNode.domNode,position:this._position,contentLeft:this._renderData.left,height:this._renderData.height,width:2}):(this._domNode.setDisplay("none"),null)}}class cr extends _{static{this.BLINK_INTERVAL=500}constructor(a){super(a);const b=this._context.configuration.options;this._readOnly=b.get(104),this._cursorBlinking=b.get(32),this._cursorStyle=b.get(161),this._cursorSmoothCaretAnimation=b.get(33),this._editContextEnabled=b.get(170),this._selectionIsEmpty=!0,this._isComposingInput=!1,this._isVisible=!1,this._primaryCursor=new cq(this._context,o.Single),this._secondaryCursors=[],this._renderData=[],this._domNode=(0,Y.Z)(document.createElement("div")),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._updateDomClassName(),this._domNode.appendChild(this._primaryCursor.getDomNode()),this._startCursorBlinkAnimation=new aL.pc,this._cursorFlatBlinkInterval=new v.Be,this._blinkingEnabled=!1,this._editorHasFocus=!1,this._updateBlinking()}dispose(){super.dispose(),this._startCursorBlinkAnimation.dispose(),this._cursorFlatBlinkInterval.dispose()}getDomNode(){return this._domNode}onCompositionStart(a){return this._isComposingInput=!0,this._updateBlinking(),!0}onCompositionEnd(a){return this._isComposingInput=!1,this._updateBlinking(),!0}onConfigurationChanged(a){let b=this._context.configuration.options;this._readOnly=b.get(104),this._cursorBlinking=b.get(32),this._cursorStyle=b.get(161),this._cursorSmoothCaretAnimation=b.get(33),this._editContextEnabled=b.get(170),this._updateBlinking(),this._updateDomClassName(),this._primaryCursor.onConfigurationChanged(a);for(let b=0,c=this._secondaryCursors.length;b<c;b++)this._secondaryCursors[b].onConfigurationChanged(a);return!0}_onCursorPositionChanged(a,b,c){let d=this._secondaryCursors.length!==b.length||"explicit"===this._cursorSmoothCaretAnimation&&3!==c;if(this._primaryCursor.setPlurality(b.length?o.MultiPrimary:o.Single),this._primaryCursor.onCursorPositionChanged(a,d),this._updateBlinking(),this._secondaryCursors.length<b.length){let a=b.length-this._secondaryCursors.length;for(let b=0;b<a;b++){let a=new cq(this._context,o.MultiSecondary);this._domNode.domNode.insertBefore(a.getDomNode().domNode,this._primaryCursor.getDomNode().domNode.nextSibling),this._secondaryCursors.push(a)}}else if(this._secondaryCursors.length>b.length){let a=this._secondaryCursors.length-b.length;for(let b=0;b<a;b++)this._domNode.removeChild(this._secondaryCursors[0].getDomNode()),this._secondaryCursors.splice(0,1)}for(let a=0;a<b.length;a++)this._secondaryCursors[a].onCursorPositionChanged(b[a],d)}onCursorStateChanged(a){let b=[];for(let c=0,d=a.selections.length;c<d;c++)b[c]=a.selections[c].getPosition();this._onCursorPositionChanged(b[0],b.slice(1),a.reason);let c=a.selections[0].isEmpty();return this._selectionIsEmpty!==c&&(this._selectionIsEmpty=c,this._updateDomClassName()),!0}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onFocusChanged(a){return this._editorHasFocus=a.isFocused,this._updateBlinking(),!1}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return!0}onTokensChanged(a){let b=b=>{for(let c=0,d=a.ranges.length;c<d;c++)if(a.ranges[c].fromLineNumber<=b.lineNumber&&b.lineNumber<=a.ranges[c].toLineNumber)return!0;return!1};if(b(this._primaryCursor.getPosition()))return!0;for(let a of this._secondaryCursors)if(b(a.getPosition()))return!0;return!1}onZonesChanged(a){return!0}_getCursorBlinking(){return(!this._isComposingInput||this._editContextEnabled)&&this._editorHasFocus?this._readOnly?5:this._cursorBlinking:0}_updateBlinking(){this._startCursorBlinkAnimation.cancel(),this._cursorFlatBlinkInterval.cancel();let a=this._getCursorBlinking(),b=0===a;b?this._hide():this._show(),this._blinkingEnabled=!1,this._updateDomClassName(),b||5===a||(1===a?this._cursorFlatBlinkInterval.cancelAndSet(()=>{this._isVisible?this._hide():this._show()},cr.BLINK_INTERVAL,(0,v.zk)(this._domNode.domNode)):this._startCursorBlinkAnimation.setIfNotSet(()=>{this._blinkingEnabled=!0,this._updateDomClassName()},cr.BLINK_INTERVAL))}_updateDomClassName(){this._domNode.setClassName(this._getClassName())}_getClassName(){let a="cursors-layer";switch(!this._selectionIsEmpty&&(a+=" has-selection"),this._cursorStyle){case M.m9.Line:a+=" cursor-line-style";break;case M.m9.Block:a+=" cursor-block-style";break;case M.m9.Underline:a+=" cursor-underline-style";break;case M.m9.LineThin:a+=" cursor-line-thin-style";break;case M.m9.BlockOutline:a+=" cursor-block-outline-style";break;case M.m9.UnderlineThin:a+=" cursor-underline-thin-style";break;default:a+=" cursor-line-style"}if(this._blinkingEnabled)switch(this._getCursorBlinking()){case 1:a+=" cursor-blink";break;case 2:a+=" cursor-smooth";break;case 3:a+=" cursor-phase";break;case 4:a+=" cursor-expand";break;default:a+=" cursor-solid"}else a+=" cursor-solid";return("on"===this._cursorSmoothCaretAnimation||"explicit"===this._cursorSmoothCaretAnimation)&&(a+=" cursor-smooth-caret-animation"),a}_show(){this._primaryCursor.show();for(let a=0,b=this._secondaryCursors.length;a<b;a++)this._secondaryCursors[a].show();this._isVisible=!0}_hide(){this._primaryCursor.hide();for(let a=0,b=this._secondaryCursors.length;a<b;a++)this._secondaryCursors[a].hide();this._isVisible=!1}prepareRender(a){this._primaryCursor.prepareRender(a);for(let b=0,c=this._secondaryCursors.length;b<c;b++)this._secondaryCursors[b].prepareRender(a)}render(a){let b=[],c=0,d=this._primaryCursor.render(a);d&&(b[c++]=d);for(let d=0,e=this._secondaryCursors.length;d<e;d++){let e=this._secondaryCursors[d].render(a);e&&(b[c++]=e)}this._renderData=b}getLastRenderData(){return this._renderData}}(0,bi.zy)((a,b)=>{for(let c of[{class:".cursor",foreground:bh.D0,background:bh.kM},{class:".cursor-primary",foreground:bh.sC,background:bh.je},{class:".cursor-secondary",foreground:bh.we,background:bh.L0}]){let d=a.getColor(c.foreground);if(d){let e=a.getColor(c.background);e||(e=d.opposite()),b.addRule(`.monaco-editor .cursors-layer ${c.class} { background-color: ${d}; border-color: ${d}; color: ${e}; }`),(0,bj.Bb)(a.type)&&b.addRule(`.monaco-editor .cursors-layer.has-selection ${c.class} { border-left: 1px solid ${e}; border-right: 1px solid ${e}; }`)}}});let cs=()=>{throw Error("Invalid change accessor")};class ct extends _{constructor(a){super(a);const b=this._context.configuration.options,c=b.get(165);this._lineHeight=b.get(75),this._contentWidth=c.contentWidth,this._contentLeft=c.contentLeft,this.domNode=(0,Y.Z)(document.createElement("div")),this.domNode.setClassName("view-zones"),this.domNode.setPosition("absolute"),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this.marginDomNode=(0,Y.Z)(document.createElement("div")),this.marginDomNode.setClassName("margin-view-zones"),this.marginDomNode.setPosition("absolute"),this.marginDomNode.setAttribute("role","presentation"),this.marginDomNode.setAttribute("aria-hidden","true"),this._zones={}}dispose(){super.dispose(),this._zones={}}_recomputeWhitespacesProps(){let a=this._context.viewLayout.getWhitespaces(),b=new Map;for(let c of a)b.set(c.id,c);let c=!1;return this._context.viewModel.changeWhitespace(a=>{let d=Object.keys(this._zones);for(let e=0,f=d.length;e<f;e++){let f=d[e],g=this._zones[f],h=this._computeWhitespaceProps(g.delegate);g.isInHiddenArea=h.isInHiddenArea;let i=b.get(f);i&&(i.afterLineNumber!==h.afterViewLineNumber||i.height!==h.heightInPx)&&(a.changeOneWhitespace(f,h.afterViewLineNumber,h.heightInPx),this._safeCallOnComputedHeight(g.delegate,h.heightInPx),c=!0)}}),c}onConfigurationChanged(a){let b=this._context.configuration.options,c=b.get(165);return this._lineHeight=b.get(75),this._contentWidth=c.contentWidth,this._contentLeft=c.contentLeft,a.hasChanged(75)&&this._recomputeWhitespacesProps(),!0}onLineMappingChanged(a){return this._recomputeWhitespacesProps()}onLinesDeleted(a){return!0}onScrollChanged(a){return a.scrollTopChanged||a.scrollWidthChanged}onZonesChanged(a){return!0}onLinesInserted(a){return!0}_getZoneOrdinal(a){return a.ordinal??a.afterColumn??1e4}_computeWhitespaceProps(a){let b,c;if(0===a.afterLineNumber)return{isInHiddenArea:!1,afterViewLineNumber:0,heightInPx:this._heightInPixels(a),minWidthInPx:this._minWidthInPixels(a)};if(void 0!==a.afterColumn)b=this._context.viewModel.model.validatePosition({lineNumber:a.afterLineNumber,column:a.afterColumn});else{let c=this._context.viewModel.model.validatePosition({lineNumber:a.afterLineNumber,column:1}).lineNumber;b=new ac.y(c,this._context.viewModel.model.getLineMaxColumn(c))}c=b.column===this._context.viewModel.model.getLineMaxColumn(b.lineNumber)?this._context.viewModel.model.validatePosition({lineNumber:b.lineNumber+1,column:1}):this._context.viewModel.model.validatePosition({lineNumber:b.lineNumber,column:b.column+1});let d=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(b,a.afterColumnAffinity,!0),e=a.showInHiddenAreas||this._context.viewModel.coordinatesConverter.modelPositionIsVisible(c);return{isInHiddenArea:!e,afterViewLineNumber:d.lineNumber,heightInPx:e?this._heightInPixels(a):0,minWidthInPx:this._minWidthInPixels(a)}}changeViewZones(a){let b=!1;return this._context.viewModel.changeWhitespace(c=>{let d={addZone:a=>(b=!0,this._addZone(c,a)),removeZone:a=>{a&&(b=this._removeZone(c,a)||b)},layoutZone:a=>{a&&(b=this._layoutZone(c,a)||b)}};(function(a,b){try{a(b)}catch(a){(0,w.dz)(a)}})(a,d),d.addZone=cs,d.removeZone=cs,d.layoutZone=cs}),b}_addZone(a,b){let c=this._computeWhitespaceProps(b),d={whitespaceId:a.insertWhitespace(c.afterViewLineNumber,this._getZoneOrdinal(b),c.heightInPx,c.minWidthInPx),delegate:b,isInHiddenArea:c.isInHiddenArea,isVisible:!1,domNode:(0,Y.Z)(b.domNode),marginDomNode:b.marginDomNode?(0,Y.Z)(b.marginDomNode):null};return this._safeCallOnComputedHeight(d.delegate,c.heightInPx),d.domNode.setPosition("absolute"),d.domNode.domNode.style.width="100%",d.domNode.setDisplay("none"),d.domNode.setAttribute("monaco-view-zone",d.whitespaceId),this.domNode.appendChild(d.domNode),d.marginDomNode&&(d.marginDomNode.setPosition("absolute"),d.marginDomNode.domNode.style.width="100%",d.marginDomNode.setDisplay("none"),d.marginDomNode.setAttribute("monaco-view-zone",d.whitespaceId),this.marginDomNode.appendChild(d.marginDomNode)),this._zones[d.whitespaceId]=d,this.setShouldRender(),d.whitespaceId}_removeZone(a,b){if(this._zones.hasOwnProperty(b)){let c=this._zones[b];return delete this._zones[b],a.removeWhitespace(c.whitespaceId),c.domNode.removeAttribute("monaco-visible-view-zone"),c.domNode.removeAttribute("monaco-view-zone"),c.domNode.domNode.remove(),c.marginDomNode&&(c.marginDomNode.removeAttribute("monaco-visible-view-zone"),c.marginDomNode.removeAttribute("monaco-view-zone"),c.marginDomNode.domNode.remove()),this.setShouldRender(),!0}return!1}_layoutZone(a,b){if(this._zones.hasOwnProperty(b)){let c=this._zones[b],d=this._computeWhitespaceProps(c.delegate);return c.isInHiddenArea=d.isInHiddenArea,a.changeOneWhitespace(c.whitespaceId,d.afterViewLineNumber,d.heightInPx),this._safeCallOnComputedHeight(c.delegate,d.heightInPx),this.setShouldRender(),!0}return!1}shouldSuppressMouseDownOnViewZone(a){return!!this._zones.hasOwnProperty(a)&&!!this._zones[a].delegate.suppressMouseDown}_heightInPixels(a){return"number"==typeof a.heightInPx?a.heightInPx:"number"==typeof a.heightInLines?this._lineHeight*a.heightInLines:this._lineHeight}_minWidthInPixels(a){return"number"==typeof a.minWidthInPx?a.minWidthInPx:0}_safeCallOnComputedHeight(a,b){if("function"==typeof a.onComputedHeight)try{a.onComputedHeight(b)}catch(a){(0,w.dz)(a)}}_safeCallOnDomNodeTop(a,b){if("function"==typeof a.onDomNodeTop)try{a.onDomNodeTop(b)}catch(a){(0,w.dz)(a)}}prepareRender(a){}render(a){let b=a.viewportData.whitespaceViewportData,c={},d=!1;for(let a of b)this._zones[a.id].isInHiddenArea||(c[a.id]=a,d=!0);let e=Object.keys(this._zones);for(let b=0,d=e.length;b<d;b++){let d=e[b],f=this._zones[d],g=0,h=0,i="none";c.hasOwnProperty(d)?(g=c[d].verticalOffset-a.bigNumbersDelta,h=c[d].height,i="block",f.isVisible||(f.domNode.setAttribute("monaco-visible-view-zone","true"),f.isVisible=!0),this._safeCallOnDomNodeTop(f.delegate,a.getScrolledTopFromAbsoluteTop(c[d].verticalOffset))):(f.isVisible&&(f.domNode.removeAttribute("monaco-visible-view-zone"),f.isVisible=!1),this._safeCallOnDomNodeTop(f.delegate,a.getScrolledTopFromAbsoluteTop(-1e6))),f.domNode.setTop(g),f.domNode.setHeight(h),f.domNode.setDisplay(i),f.marginDomNode&&(f.marginDomNode.setTop(g),f.marginDomNode.setHeight(h),f.marginDomNode.setDisplay(i))}d&&(this.domNode.setWidth(Math.max(a.scrollWidth,this._contentWidth)),this.marginDomNode.setWidth(this._contentLeft))}}c(49155);var cu=c(58912);class cv extends bg{constructor(a){super(),this._context=a,this._options=new cw(this._context.configuration),this._selection=[],this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(a){let b=new cw(this._context.configuration);return this._options.equals(b)?a.hasChanged(165):(this._options=b,!0)}onCursorStateChanged(a){return this._selection=a.selections,"selection"===this._options.renderWhitespace}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return a.scrollTopChanged}onZonesChanged(a){return!0}prepareRender(a){if("none"===this._options.renderWhitespace){this._renderResult=null;return}let b=a.visibleRange.startLineNumber,c=a.visibleRange.endLineNumber-b+1,d=Array(c);for(let a=0;a<c;a++)d[a]=!0;this._renderResult=[];for(let b=a.viewportData.startLineNumber;b<=a.viewportData.endLineNumber;b++){let c=b-a.viewportData.startLineNumber,d=this._context.viewModel.getViewLineRenderingData(b),e=null;if("selection"===this._options.renderWhitespace)for(let a of this._selection){if(a.endLineNumber<b||a.startLineNumber>b)continue;let c=a.startLineNumber===b?a.startColumn:d.minColumn,f=a.endLineNumber===b?a.endColumn:d.maxColumn;c<f&&(e||(e=[]),e.push(new cu.L(c-1,f-1)))}this._renderResult[c]=this._applyRenderWhitespace(a,b,e,d)}}_applyRenderWhitespace(a,b,c,d){let e;if(d.hasVariableFonts||"selection"===this._options.renderWhitespace&&!c||"trailing"===this._options.renderWhitespace&&d.continuesWithWrappedLine)return"";let f=this._context.theme.getColor(bh.w4),g=this._options.renderWithSVG,h=d.content,i=-1===this._options.stopRenderingLineAfter?h.length:Math.min(this._options.stopRenderingLineAfter,h.length),j=d.continuesWithWrappedLine,k=d.minColumn-1,l="boundary"===this._options.renderWhitespace,m="trailing"===this._options.renderWhitespace,n=a.getLineHeightForLineNumber(b),o=this._options.middotWidth,p=this._options.wsmiddotWidth,q=this._options.spaceWidth,r=Math.abs(p-q)<Math.abs(o-q)?11825:183,s=this._options.canUseHalfwidthRightwardsArrow,t="",u=!1,v=aM.HG(h);-1===v?(u=!0,v=i,e=i):e=aM.lT(h);let w=0,x=c&&c[w],y=0;for(let d=k;d<i;d++){let f=h.charCodeAt(d);if(x&&x.endExclusive<=d&&(w++,x=c&&c[w]),9!==f&&32!==f||m&&!u&&d<=e)continue;if(l&&d>=v&&d<=e&&32===f){let a=d-1>=0?h.charCodeAt(d-1):0,b=d+1<i?h.charCodeAt(d+1):0;if(32!==a&&32!==b)continue}if(l&&j&&d===i-1){let a=d-1>=0?h.charCodeAt(d-1):0;if(32===f&&32!==a&&9!==a)continue}if(c&&!(x&&x.start<=d&&d<x.endExclusive))continue;let k=a.visibleRangeForPosition(new ac.y(b,d+1));k&&(g?(y=Math.max(y,k.left),9===f?t+=this._renderArrow(n,q,k.left):t+=`<circle cx="${(k.left+q/2).toFixed(2)}" cy="${(n/2).toFixed(2)}" r="${(q/7).toFixed(2)}" />`):9===f?t+=`<div class="mwh" style="left:${k.left}px;height:${n}px;">${s?String.fromCharCode(65515):String.fromCharCode(8594)}</div>`:t+=`<div class="mwh" style="left:${k.left}px;height:${n}px;">${String.fromCharCode(r)}</div>`)}return g?(y=Math.round(y+q),`<svg style="bottom:0;position:absolute;width:${y}px;height:${n}px" viewBox="0 0 ${y} ${n}" xmlns="http://www.w3.org/2000/svg" fill="${f}">`+t+"</svg>"):t}_renderArrow(a,b,c){let d=a/2,e={x:0,y:b/7/2},f={x:.8*b,y:e.y},g={x:f.x-.2*f.x,y:f.y+.2*f.x},h={x:g.x+.1*f.x,y:g.y+.1*f.x},i={x:h.x+.35*f.x,y:h.y-.35*f.x},j={x:i.x,y:-i.y},k={x:h.x,y:-h.y},l={x:g.x,y:-g.y},m={x:f.x,y:-f.y},n={x:e.x,y:-e.y},o=[e,f,g,h,i,j,k,l,m,n].map(a=>`${(c+a.x).toFixed(2)} ${(d+a.y).toFixed(2)}`).join(" L ");return`<path d="M ${o}" />`}render(a,b){if(!this._renderResult)return"";let c=b-a;return c<0||c>=this._renderResult.length?"":this._renderResult[c]}}class cw{constructor(a){const b=a.options,c=b.get(59),d=b.get(47);"off"===d?(this.renderWhitespace="none",this.renderWithSVG=!1):"svg"===d?(this.renderWhitespace=b.get(113),this.renderWithSVG=!0):(this.renderWhitespace=b.get(113),this.renderWithSVG=!1),this.spaceWidth=c.spaceWidth,this.middotWidth=c.middotWidth,this.wsmiddotWidth=c.wsmiddotWidth,this.canUseHalfwidthRightwardsArrow=c.canUseHalfwidthRightwardsArrow,this.lineHeight=b.get(75),this.stopRenderingLineAfter=b.get(133)}equals(a){return this.renderWhitespace===a.renderWhitespace&&this.renderWithSVG===a.renderWithSVG&&this.spaceWidth===a.spaceWidth&&this.middotWidth===a.middotWidth&&this.wsmiddotWidth===a.wsmiddotWidth&&this.canUseHalfwidthRightwardsArrow===a.canUseHalfwidthRightwardsArrow&&this.lineHeight===a.lineHeight&&this.stopRenderingLineAfter===a.stopRenderingLineAfter}}class cx{constructor(a,b,c,d){this.selections=a,this.startLineNumber=0|b.startLineNumber,this.endLineNumber=0|b.endLineNumber,this.relativeVerticalOffset=b.relativeVerticalOffset,this.bigNumbersDelta=0|b.bigNumbersDelta,this.lineHeight=0|b.lineHeight,this.whitespaceViewportData=c,this._model=d,this.visibleRange=new ad.Q(b.startLineNumber,this._model.getLineMinColumn(b.startLineNumber),b.endLineNumber,this._model.getLineMaxColumn(b.endLineNumber))}getViewLineRenderingData(a){return this._model.getViewportViewLineRenderingData(this.visibleRange,a)}getDecorationsInViewport(){return this._model.getDecorationsInViewport(this.visibleRange)}}class cy{get type(){return this._theme.type}get value(){return this._theme}constructor(a){this._theme=a}update(a){this._theme=a}getColor(a){return this._theme.getColor(a)}}class cz{constructor(a,b,c){this.configuration=a,this.theme=new cy(b),this.viewModel=c,this.viewLayout=c.viewLayout}addEventHandler(a){this.viewModel.addViewEventHandler(a)}removeEventHandler(a){this.viewModel.removeViewEventHandler(a)}}var cA=c(21652),cB=c(37577),cC=c(39537),cD=c(64217),cE=c(59237),cF=c(15522),cG=c(51407),cH=c(38209);function cI(a,b){return a.isBasicASCII&&b.useMonospaceOptimizations?new cJ(a):new cK(a)}class cJ{constructor(a){this._content=a.content}getSegmentAtIndex(a){return this._content[a]}}class cK{constructor(a){this._segments=[];const b=a.content,c=Array.from(cH.x.Segmenter(void 0,{granularity:"grapheme"}).value.segment(b));let d=0;for(let a=0;a<b.length;a++){const b=c[d];if(!b)break;if(b.index!==a){this._segments.push(void 0);continue}d++,this._segments.push(b)}}getSegmentAtIndex(a){return this._segments[a]?.segment}}class cL extends $.i{get glyphRasterizer(){return this._glyphRasterizer.value}constructor(a,b,c,d){super(),this._context=a,this._viewGpuContext=b,this._device=c,this._glyphRasterizer=d,this._context.addEventHandler(this)}}let cM=`
99
+ target: ${this.target?this.target.outerHTML:null}`}get wouldBenefitFromHitTestTargetSwitch(){return!this._useHitTestTarget&&null!==this.hitTestResult.value.hitTarget&&this.target!==this.hitTestResult.value.hitTarget}switchToHitTestTarget(){this._useHitTestTarget=!0}_getMouseColumn(a=null){return a&&a.column<this._ctx.viewModel.getLineMaxColumn(a.lineNumber)?ae.A.visibleColumnFromColumn(this._ctx.viewModel.getLineContent(a.lineNumber),a.column,this._ctx.viewModel.model.getOptions().tabSize)+1:this.mouseColumn}fulfillUnknown(a=null){return al.createUnknown(this.target,this._getMouseColumn(a),a)}fulfillTextarea(){return al.createTextarea(this.target,this._getMouseColumn())}fulfillMargin(a,b,c,d){return al.createMargin(a,this.target,this._getMouseColumn(b),b,c,d)}fulfillViewZone(a,b,c){return al.createViewZone(a,this.target,this._getMouseColumn(b),b,c)}fulfillContentText(a,b,c){return al.createContentText(this.target,this._getMouseColumn(a),a,b,c)}fulfillContentEmpty(a,b){return al.createContentEmpty(this.target,this._getMouseColumn(a),a,b)}fulfillContentWidget(a){return al.createContentWidget(this.target,this._getMouseColumn(),a)}fulfillScrollbar(a){return al.createScrollbar(this.target,this._getMouseColumn(a),a)}fulfillOverlayWidget(a){return al.createOverlayWidget(this.target,this._getMouseColumn(),a)}}let aq={isAfterLines:!0};function ar(a){return{isAfterLines:!1,horizontalDistanceToText:a}}class as{constructor(a,b){this._context=a,this._viewHelper=b}mouseTargetIsWidget(a){let b=a.target,c=aa.collect(b,this._viewHelper.viewDomNode);return!!(am.isChildOfContentWidgets(c)||am.isChildOfOverflowingContentWidgets(c)||am.isChildOfOverlayWidgets(c)||am.isChildOfOverflowingOverlayWidgets(c))}createMouseTarget(a,b,c,d,e){let f=new an(this._context,this._viewHelper,a),g=new ap(f,b,c,d,e);try{let a=as._createMouseTarget(f,g);if(6===a.type&&f.stickyTabStops&&null!==a.position){let b=as._snapToSoftTabBoundary(a.position,f.viewModel),c=ad.Q.fromPositions(b,b).plusRange(a.range);return g.fulfillContentText(b,c,a.detail)}return a}catch(a){return g.fulfillUnknown()}}static _createMouseTarget(a,b){if(null===b.target)return b.fulfillUnknown();let c=null;return am.isChildOfOverflowGuard(b.targetPath)||am.isChildOfOverflowingContentWidgets(b.targetPath)||am.isChildOfOverflowingOverlayWidgets(b.targetPath)||(c=c||b.fulfillUnknown()),(c=(c=(c=(c=(c=(c=(c=(c=(c=(c=c||as._hitTestContentWidget(a,b))||as._hitTestOverlayWidget(a,b))||as._hitTestMinimap(a,b))||as._hitTestScrollbarSlider(a,b))||as._hitTestViewZone(a,b))||as._hitTestMargin(a,b))||as._hitTestViewCursor(a,b))||as._hitTestTextArea(a,b))||as._hitTestViewLines(a,b))||as._hitTestScrollbar(a,b))||b.fulfillUnknown()}static _hitTestContentWidget(a,b){if(am.isChildOfContentWidgets(b.targetPath)||am.isChildOfOverflowingContentWidgets(b.targetPath)){let c=a.findAttribute(b.target,"widgetId");return c?b.fulfillContentWidget(c):b.fulfillUnknown()}return null}static _hitTestOverlayWidget(a,b){if(am.isChildOfOverlayWidgets(b.targetPath)||am.isChildOfOverflowingOverlayWidgets(b.targetPath)){let c=a.findAttribute(b.target,"widgetId");return c?b.fulfillOverlayWidget(c):b.fulfillUnknown()}return null}static _hitTestViewCursor(a,b){if(b.target){for(let c of a.lastRenderData.lastViewCursorsRenderData)if(b.target===c.domNode)return b.fulfillContentText(c.position,null,{mightBeForeignElement:!1,injectedText:null})}if(b.isInContentArea){let c=a.lastRenderData.lastViewCursorsRenderData,d=b.mouseContentHorizontalOffset,e=b.mouseVerticalOffset;for(let f of c){if(d<f.contentLeft||d>f.contentLeft+f.width)continue;let c=a.getVerticalOffsetForLineNumber(f.position.lineNumber);if(c<=e&&e<=c+f.height)return b.fulfillContentText(f.position,null,{mightBeForeignElement:!1,injectedText:null})}}return null}static _hitTestViewZone(a,b){let c=a.getZoneAtCoord(b.mouseVerticalOffset);if(c){let a=b.isInContentArea?8:5;return b.fulfillViewZone(a,c.position,c)}return null}static _hitTestTextArea(a,b){return am.isTextArea(b.targetPath)?a.lastRenderData.lastTextareaPosition?b.fulfillContentText(a.lastRenderData.lastTextareaPosition,null,{mightBeForeignElement:!1,injectedText:null}):b.fulfillTextarea():null}static _hitTestMargin(a,b){if(b.isInMarginArea){let c=a.getFullLineRangeAtCoord(b.mouseVerticalOffset),d=c.range.getStartPosition(),e=Math.abs(b.relativePos.x),f={isAfterLines:c.isAfterLines,glyphMarginLeft:a.layoutInfo.glyphMarginLeft,glyphMarginWidth:a.layoutInfo.glyphMarginWidth,lineNumbersWidth:a.layoutInfo.lineNumbersWidth,offsetX:e};if((e-=a.layoutInfo.glyphMarginLeft)<=a.layoutInfo.glyphMarginWidth){let g=a.viewModel.coordinatesConverter.convertViewPositionToModelPosition(c.range.getStartPosition());return f.glyphMarginLane=a.viewModel.glyphLanes.getLanesAtLine(g.lineNumber)[Math.floor(e/a.lineHeight)],b.fulfillMargin(2,d,c.range,f)}return(e-=a.layoutInfo.glyphMarginWidth)<=a.layoutInfo.lineNumbersWidth?b.fulfillMargin(3,d,c.range,f):(e-=a.layoutInfo.lineNumbersWidth,b.fulfillMargin(4,d,c.range,f))}return null}static _hitTestViewLines(a,b){if(!am.isChildOfViewLines(b.targetPath))return null;if(a.isInTopPadding(b.mouseVerticalOffset))return b.fulfillContentEmpty(new ac.y(1,1),aq);if(a.isAfterLines(b.mouseVerticalOffset)||a.isInBottomPadding(b.mouseVerticalOffset)){let c=a.viewModel.getLineCount(),d=a.viewModel.getLineMaxColumn(c);return b.fulfillContentEmpty(new ac.y(c,d),aq)}if(am.isStrictChildOfViewLines(b.targetPath)){let c=a.getLineNumberAtVerticalOffset(b.mouseVerticalOffset),d=a.viewModel.getLineLength(c),e=a.getLineWidth(c);if(0===d){let a=ar(b.mouseContentHorizontalOffset-e);return b.fulfillContentEmpty(new ac.y(c,1),a)}if(a.isRtl(c)){if(b.mouseContentHorizontalOffset+e<=a.layoutInfo.contentWidth-a.layoutInfo.verticalScrollbarWidth){let d=ar(b.mouseContentHorizontalOffset-e),f=new ac.y(c,a.viewModel.getLineMaxColumn(c));return b.fulfillContentEmpty(f,d)}}else if(b.mouseContentHorizontalOffset>=e){let d=ar(b.mouseContentHorizontalOffset-e),f=new ac.y(c,a.viewModel.getLineMaxColumn(c));return b.fulfillContentEmpty(f,d)}}else if(a.viewLinesGpu){let c=a.getLineNumberAtVerticalOffset(b.mouseVerticalOffset);if(0===a.viewModel.getLineLength(c)){let d=a.getLineWidth(c),e=ar(b.mouseContentHorizontalOffset-d);return b.fulfillContentEmpty(new ac.y(c,1),e)}let d=a.getLineWidth(c);if(a.isRtl(c)){if(b.mouseContentHorizontalOffset+d<=a.layoutInfo.contentWidth-a.layoutInfo.verticalScrollbarWidth){let e=ar(b.mouseContentHorizontalOffset-d),f=new ac.y(c,a.viewModel.getLineMaxColumn(c));return b.fulfillContentEmpty(f,e)}}else if(b.mouseContentHorizontalOffset>=d){let e=ar(b.mouseContentHorizontalOffset-d),f=new ac.y(c,a.viewModel.getLineMaxColumn(c));return b.fulfillContentEmpty(f,e)}let e=a.viewLinesGpu.getPositionAtCoordinate(c,b.mouseContentHorizontalOffset);if(e)return b.fulfillContentText(e,ad.Q.fromPositions(e,e),{injectedText:null,mightBeForeignElement:!1})}let c=b.hitTestResult.value;return 1===c.type?as.createMouseTargetFromHitTestPosition(a,b,c.spanNode,c.position,c.injectedText):b.wouldBenefitFromHitTestTargetSwitch?(b.switchToHitTestTarget(),this._createMouseTarget(a,b)):b.fulfillUnknown()}static _hitTestMinimap(a,b){if(am.isChildOfMinimap(b.targetPath)){let c=a.getLineNumberAtVerticalOffset(b.mouseVerticalOffset),d=a.viewModel.getLineMaxColumn(c);return b.fulfillScrollbar(new ac.y(c,d))}return null}static _hitTestScrollbarSlider(a,b){if(am.isChildOfScrollableElement(b.targetPath)&&b.target&&1===b.target.nodeType){let c=b.target.className;if(c&&/\b(slider|scrollbar)\b/.test(c)){let c=a.getLineNumberAtVerticalOffset(b.mouseVerticalOffset),d=a.viewModel.getLineMaxColumn(c);return b.fulfillScrollbar(new ac.y(c,d))}}return null}static _hitTestScrollbar(a,b){if(am.isChildOfScrollableElement(b.targetPath)){let c=a.getLineNumberAtVerticalOffset(b.mouseVerticalOffset),d=a.viewModel.getLineMaxColumn(c);return b.fulfillScrollbar(new ac.y(c,d))}return null}getMouseColumn(a){let b=this._context.configuration.options,c=b.get(165),d=this._context.viewLayout.getCurrentScrollLeft()+a.x-c.contentLeft;return as._getMouseColumn(d,b.get(59).typicalHalfwidthCharacterWidth)}static _getMouseColumn(a,b){return a<0?1:Math.round(a/b)+1}static createMouseTargetFromHitTestPosition(a,b,c,d,e){let f=d.lineNumber,g=d.column,h=a.getLineWidth(f);if(b.mouseContentHorizontalOffset>h){let a=ar(b.mouseContentHorizontalOffset-h);return b.fulfillContentEmpty(d,a)}let i=a.visibleRangeForPosition(f,g);if(!i)return b.fulfillUnknown(d);let j=i.left;if(1>Math.abs(b.mouseContentHorizontalOffset-j))return b.fulfillContentText(d,null,{mightBeForeignElement:!!e,injectedText:e});let k=[];if(k.push({offset:i.left,column:g}),g>1){let b=a.visibleRangeForPosition(f,g-1);b&&k.push({offset:b.left,column:g-1})}if(g<a.viewModel.getLineMaxColumn(f)){let b=a.visibleRangeForPosition(f,g+1);b&&k.push({offset:b.left,column:g+1})}k.sort((a,b)=>a.offset-b.offset);let l=b.pos.toClientCoordinates(v.zk(a.viewDomNode)),m=c.getBoundingClientRect(),n=m.left<=l.clientX&&l.clientX<=m.right,o=null;for(let a=1;a<k.length;a++){let c=k[a-1],e=k[a];if(c.offset<=b.mouseContentHorizontalOffset&&b.mouseContentHorizontalOffset<=e.offset){o=new ad.Q(f,c.column,f,e.column),d=Math.abs(c.offset-b.mouseContentHorizontalOffset)<Math.abs(e.offset-b.mouseContentHorizontalOffset)?new ac.y(f,c.column):new ac.y(f,e.column);break}}return b.fulfillContentText(d,o,{mightBeForeignElement:!n||!!e,injectedText:e})}static _doHitTestWithCaretRangeFromPoint(a,b){let c=a.getLineNumberAtVerticalOffset(b.mouseVerticalOffset),d=a.getVerticalOffsetForLineNumber(c),e=d+a.lineHeight;if(!(c===a.viewModel.getLineCount()&&b.mouseVerticalOffset>e)){let c=Math.floor((d+e)/2),f=b.pos.y+(c-b.mouseVerticalOffset);f<=b.editorPos.y&&(f=b.editorPos.y+1),f>=b.editorPos.y+b.editorPos.height&&(f=b.editorPos.y+b.editorPos.height-1);let g=new Z.nz(b.pos.x,f),h=this._actualDoHitTestWithCaretRangeFromPoint(a,g.toClientCoordinates(v.zk(a.viewDomNode)));if(1===h.type)return h}return this._actualDoHitTestWithCaretRangeFromPoint(a,b.pos.toClientCoordinates(v.zk(a.viewDomNode)))}static _actualDoHitTestWithCaretRangeFromPoint(a,b){let c,d=v.jG(a.viewDomNode);if(!(c=d?void 0===d.caretRangeFromPoint?function(a,b,c){let d=document.createRange(),e=a.elementFromPoint(b,c);if(e?.hasChildNodes()){let a;for(;e&&e.firstChild&&e.firstChild.nodeType!==e.firstChild.TEXT_NODE&&e.lastChild&&e.lastChild.firstChild;)e=e.lastChild;let c=e.getBoundingClientRect(),f=v.zk(e),g=f.getComputedStyle(e,null).getPropertyValue("font-style"),h=f.getComputedStyle(e,null).getPropertyValue("font-variant"),i=f.getComputedStyle(e,null).getPropertyValue("font-weight"),j=f.getComputedStyle(e,null).getPropertyValue("font-size"),k=f.getComputedStyle(e,null).getPropertyValue("line-height"),l=f.getComputedStyle(e,null).getPropertyValue("font-family"),m=`${g} ${h} ${i} ${j}/${k} ${l}`,n=e.innerText,o=c.left,p=0;if(b>c.left+c.width)p=n.length;else{let c=at.getInstance();for(let d=0;d<n.length+1;d++){if(b<(o+=a=c.getCharWidth(n.charAt(d),m)/2)){p=d;break}o+=a}}d.setStart(e.firstChild,p),d.setEnd(e.firstChild,p)}return d}(d,b.clientX,b.clientY):d.caretRangeFromPoint(b.clientX,b.clientY):a.viewDomNode.ownerDocument.caretRangeFromPoint(b.clientX,b.clientY))||!c.startContainer)return new ai;let e=c.startContainer;if(e.nodeType===e.TEXT_NODE){let b=e.parentNode,d=b?b.parentNode:null,f=d?d.parentNode:null;return(f&&f.nodeType===f.ELEMENT_NODE?f.className:null)===ab.G.CLASS_NAME?m.createFromDOMInfo(a,b,c.startOffset):new ai(e.parentNode)}if(e.nodeType===e.ELEMENT_NODE){let b=e.parentNode,c=b?b.parentNode:null;return(c&&c.nodeType===c.ELEMENT_NODE?c.className:null)===ab.G.CLASS_NAME?m.createFromDOMInfo(a,e,e.textContent.length):new ai(e)}return new ai}static _doHitTestWithCaretPositionFromPoint(a,b){let c=a.viewDomNode.ownerDocument.caretPositionFromPoint(b.clientX,b.clientY);if(c.offsetNode.nodeType===c.offsetNode.TEXT_NODE){let b=c.offsetNode.parentNode,d=b?b.parentNode:null,e=d?d.parentNode:null;return(e&&e.nodeType===e.ELEMENT_NODE?e.className:null)===ab.G.CLASS_NAME?m.createFromDOMInfo(a,c.offsetNode.parentNode,c.offset):new ai(c.offsetNode.parentNode)}if(c.offsetNode.nodeType===c.offsetNode.ELEMENT_NODE){let b=c.offsetNode.parentNode,d=b&&b.nodeType===b.ELEMENT_NODE?b.className:null,e=b?b.parentNode:null,f=e&&e.nodeType===e.ELEMENT_NODE?e.className:null;if(d===ab.G.CLASS_NAME){let b=c.offsetNode.childNodes[Math.min(c.offset,c.offsetNode.childNodes.length-1)];if(b)return m.createFromDOMInfo(a,b,0)}else if(f===ab.G.CLASS_NAME)return m.createFromDOMInfo(a,c.offsetNode,0)}return new ai(c.offsetNode)}static _snapToSoftTabBoundary(a,b){let c=b.getLineContent(a.lineNumber),{tabSize:d}=b.model.getOptions(),e=af.s.atomicPosition(c,a.column-1,d,2);return -1!==e?new ac.y(a.lineNumber,e+1):a}static doHitTest(a,b){let c=new ai;if("function"==typeof a.viewDomNode.ownerDocument.caretRangeFromPoint?c=this._doHitTestWithCaretRangeFromPoint(a,b):a.viewDomNode.ownerDocument.caretPositionFromPoint&&(c=this._doHitTestWithCaretPositionFromPoint(a,b.pos.toClientCoordinates(v.zk(a.viewDomNode)))),1===c.type){let b=a.viewModel.getInjectedTextAt(c.position),d=a.viewModel.normalizePosition(c.position,2);(b||!d.equals(c.position))&&(c=new aj(d,c.spanNode,b))}return c}}class at{static{this._INSTANCE=null}static getInstance(){return at._INSTANCE||(at._INSTANCE=new at),at._INSTANCE}constructor(){this._cache={},this._canvas=document.createElement("canvas")}getCharWidth(a,b){let c=a+b;if(this._cache[c])return this._cache[c];let d=this._canvas.getContext("2d");d.font=b;let e=d.measureText(a).width;return this._cache[c]=e,e}}var au=c(6876),av=c(12235),aw=c(93842),ax=c(50370),ay=c(32263),az=c(72766);class aA extends y.jG{constructor(a,b,c,d){super(),this._context=a,this._viewHelper=b,this._mouseTargetFactory=c,this._dispatchMouse=d,this._operation=null}dispose(){super.dispose(),this.stop()}start(a,b){this._operation?this._operation.setPosition(a,b):this._operation=this._createDragScrollingOperation(a,b)}stop(){this._operation&&(this._operation.dispose(),this._operation=null)}}class aB extends y.jG{constructor(a,b,c,d,e,f){super(),this._context=a,this._viewHelper=b,this._mouseTargetFactory=c,this._dispatchMouse=d,this._position=e,this._mouseEvent=f,this._lastTime=Date.now(),this._animationFrameDisposable=v.PG(v.zk(f.browserEvent),()=>this._execute())}dispose(){this._animationFrameDisposable.dispose(),super.dispose()}setPosition(a,b){this._position=a,this._mouseEvent=b}_tick(){let a=Date.now(),b=a-this._lastTime;return this._lastTime=a,b}}class aC extends aA{_createDragScrollingOperation(a,b){return new aD(this._context,this._viewHelper,this._mouseTargetFactory,this._dispatchMouse,a,b)}}class aD extends aB{_getScrollSpeed(){let a=this._context.configuration.options.get(75),b=this._context.configuration.options.get(165).height/a,c=this._position.outsideDistance/a;return c<=1.5?Math.max(30,b*(1+c)):c<=3?Math.max(60,b*(2+c)):Math.max(200,b*(7+c))}_execute(){let a,b=this._context.configuration.options.get(75),c=this._getScrollSpeed(),d=this._tick()/1e3*c*b,e="above"===this._position.outsidePosition?-d:d;this._context.viewModel.viewLayout.deltaScrollNow(0,e),this._viewHelper.renderNow();let f=this._context.viewLayout.getLinesViewportData(),g="above"===this._position.outsidePosition?f.startLineNumber:f.endLineNumber;{let b=(0,Z.wt)(this._viewHelper.viewDomNode),c=this._context.configuration.options.get(165).horizontalScrollbarHeight,d=new Z.nz(this._mouseEvent.pos.x,b.y+b.height-c-.1),e=(0,Z.i_)(this._viewHelper.viewDomNode,b,d);a=this._mouseTargetFactory.createMouseTarget(this._viewHelper.getLastRenderData(),b,d,e,null)}a.position&&a.position.lineNumber===g||(a="above"===this._position.outsidePosition?al.createOutsideEditor(this._position.mouseColumn,new ac.y(g,1),"above",this._position.outsideDistance):al.createOutsideEditor(this._position.mouseColumn,new ac.y(g,this._context.viewModel.getLineMaxColumn(g)),"below",this._position.outsideDistance)),this._dispatchMouse(a,!0,2),this._animationFrameDisposable=v.PG(v.zk(a.element),()=>this._execute())}}class aE extends aA{_createDragScrollingOperation(a,b){return new aF(this._context,this._viewHelper,this._mouseTargetFactory,this._dispatchMouse,a,b)}}class aF extends aB{_getScrollSpeed(){let a=this._context.configuration.options.get(59).typicalFullwidthCharacterWidth,b=this._context.configuration.options.get(165).contentWidth/a,c=this._position.outsideDistance/a;return c<=1.5?Math.max(30,b*(1+c)):c<=3?Math.max(60,b*(2+c)):Math.max(200,b*(7+c))}_execute(){let a,b=this._context.configuration.options.get(59).typicalFullwidthCharacterWidth,c=this._getScrollSpeed(),d=this._tick()/1e3*c*b*.5,e="left"===this._position.outsidePosition?-d:d;if(this._context.viewModel.viewLayout.deltaScrollNow(e,0),this._viewHelper.renderNow(),!this._position.position)return;let f=this._position.position.lineNumber;{let b=(0,Z.wt)(this._viewHelper.viewDomNode),c=this._context.configuration.options.get(165).horizontalScrollbarHeight,d=new Z.nz(this._mouseEvent.pos.x,b.y+b.height-c-.1),e=(0,Z.i_)(this._viewHelper.viewDomNode,b,d);a=this._mouseTargetFactory.createMouseTarget(this._viewHelper.getLastRenderData(),b,d,e,null)}a="left"===this._position.outsidePosition?al.createOutsideEditor(a.mouseColumn,new ac.y(f,a.mouseColumn),"left",this._position.outsideDistance):al.createOutsideEditor(a.mouseColumn,new ac.y(f,a.mouseColumn),"right",this._position.outsideDistance),this._dispatchMouse(a,!0,2),this._animationFrameDisposable=v.PG(v.zk(a.element),()=>this._execute())}}class aG extends $.i{constructor(a,b,c){super(),this._mouseLeaveMonitor=null,this._context=a,this.viewController=b,this.viewHelper=c,this.mouseTargetFactory=new as(this._context,c),this._mouseDownOperation=this._register(new aH(this._context,this.viewController,this.viewHelper,this.mouseTargetFactory,(a,b)=>this._createMouseTarget(a,b),a=>this._getMouseColumn(a))),this.lastMouseLeaveTime=-1,this._height=this._context.configuration.options.get(165).height;const d=new Z.$z(this.viewHelper.viewDomNode);this._register(d.onContextMenu(this.viewHelper.viewDomNode,a=>this._onContextMenu(a,!0))),this._register(d.onMouseMove(this.viewHelper.viewDomNode,a=>{this._onMouseMove(a),this._mouseLeaveMonitor||(this._mouseLeaveMonitor=v.ko(this.viewHelper.viewDomNode.ownerDocument,"mousemove",a=>{this.viewHelper.viewDomNode.contains(a.target)||this._onMouseLeave(new Z.dO(a,!1,this.viewHelper.viewDomNode))}))})),this._register(d.onMouseUp(this.viewHelper.viewDomNode,a=>this._onMouseUp(a))),this._register(d.onMouseLeave(this.viewHelper.viewDomNode,a=>this._onMouseLeave(a)));let e=0;this._register(d.onPointerDown(this.viewHelper.viewDomNode,(a,b)=>{e=b})),this._register(v.ko(this.viewHelper.viewDomNode,v.Bx.POINTER_UP,a=>{this._mouseDownOperation.onPointerUp()})),this._register(d.onMouseDown(this.viewHelper.viewDomNode,a=>this._onMouseDown(a,e))),this._setupMouseWheelZoomListener(),this._context.addEventHandler(this)}_setupMouseWheelZoomListener(){let a=az.QC.INSTANCE,b=0,c=N.D.getZoomLevel(),d=!1,e=0,f=f=>{if(this.viewController.emitMouseWheel(f),!this._context.configuration.options.get(84))return;let h=new ax.$(f);if(a.acceptStandardWheelEvent(h),a.isPhysicalMouseWheel()){if(g(f)){let a=N.D.getZoomLevel(),b=h.deltaY>0?1:-1;N.D.setZoomLevel(a+b),h.preventDefault(),h.stopPropagation()}}else Date.now()-b>50&&(c=N.D.getZoomLevel(),d=g(f),e=0),b=Date.now(),e+=h.deltaY,d&&(N.D.setZoomLevel(c+e/5),h.preventDefault(),h.stopPropagation())};function g(a){return E.zx?(a.metaKey||a.ctrlKey)&&!a.shiftKey&&!a.altKey:a.ctrlKey&&!a.metaKey&&!a.shiftKey&&!a.altKey}this._register(v.ko(this.viewHelper.viewDomNode,v.Bx.MOUSE_WHEEL,f,{capture:!0,passive:!1}))}dispose(){this._context.removeEventHandler(this),this._mouseLeaveMonitor&&(this._mouseLeaveMonitor.dispose(),this._mouseLeaveMonitor=null),super.dispose()}onConfigurationChanged(a){if(a.hasChanged(165)){let a=this._context.configuration.options.get(165).height;this._height!==a&&(this._height=a,this._mouseDownOperation.onHeightChanged())}return!1}onCursorStateChanged(a){return this._mouseDownOperation.onCursorStateChanged(a),!1}onFocusChanged(a){return!1}getTargetAtClientPoint(a,b){let c=new Z.Hh(a,b).toPageCoordinates(v.zk(this.viewHelper.viewDomNode)),d=(0,Z.wt)(this.viewHelper.viewDomNode);if(c.y<d.y||c.y>d.y+d.height||c.x<d.x||c.x>d.x+d.width)return null;let e=(0,Z.i_)(this.viewHelper.viewDomNode,d,c);return this.mouseTargetFactory.createMouseTarget(this.viewHelper.getLastRenderData(),d,c,e,null)}_createMouseTarget(a,b){let c=a.target;if(!this.viewHelper.viewDomNode.contains(c)){let b=v.jG(this.viewHelper.viewDomNode);b&&(c=b.elementsFromPoint(a.posx,a.posy).find(a=>this.viewHelper.viewDomNode.contains(a)))}return this.mouseTargetFactory.createMouseTarget(this.viewHelper.getLastRenderData(),a.editorPos,a.pos,a.relativePos,b?c:null)}_getMouseColumn(a){return this.mouseTargetFactory.getMouseColumn(a.relativePos)}_onContextMenu(a,b){this.viewController.emitContextMenu({event:a,target:this._createMouseTarget(a,b)})}_onMouseMove(a){this.mouseTargetFactory.mouseTargetIsWidget(a)||a.preventDefault(),this._mouseDownOperation.isActive()||a.timestamp<this.lastMouseLeaveTime||this.viewController.emitMouseMove({event:a,target:this._createMouseTarget(a,!0)})}_onMouseLeave(a){this._mouseLeaveMonitor&&(this._mouseLeaveMonitor.dispose(),this._mouseLeaveMonitor=null),this.lastMouseLeaveTime=new Date().getTime(),this.viewController.emitMouseLeave({event:a,target:null})}_onMouseUp(a){this.viewController.emitMouseUp({event:a,target:this._createMouseTarget(a,!0)})}_onMouseDown(a,b){let c=this._createMouseTarget(a,!0),d=6===c.type||7===c.type,e=2===c.type||3===c.type||4===c.type,f=3===c.type,g=this._context.configuration.options.get(125),h=8===c.type||5===c.type,i=9===c.type,j=a.leftButton||a.middleButton;E.zx&&a.leftButton&&a.ctrlKey&&(j=!1);let k=()=>{a.preventDefault(),this.viewHelper.focusTextArea()};if(j&&(d||f&&g))k(),this._mouseDownOperation.start(c.type,a,b);else if(e)a.preventDefault();else if(h){let d=c.detail;j&&this.viewHelper.shouldSuppressMouseDownOnViewZone(d.viewZoneId)&&(k(),this._mouseDownOperation.start(c.type,a,b),a.preventDefault())}else i&&this.viewHelper.shouldSuppressMouseDownOnWidget(c.detail)&&(k(),a.preventDefault());this.viewController.emitMouseDown({event:a,target:c})}}class aH extends y.jG{constructor(a,b,c,d,e,f){super(),this._context=a,this._viewController=b,this._viewHelper=c,this._mouseTargetFactory=d,this._createMouseTarget=e,this._getMouseColumn=f,this._mouseMoveMonitor=this._register(new Z.BA(this._viewHelper.viewDomNode)),this._topBottomDragScrolling=this._register(new aC(this._context,this._viewHelper,this._mouseTargetFactory,(a,b,c)=>this._dispatchMouse(a,b,c))),this._leftRightDragScrolling=this._register(new aE(this._context,this._viewHelper,this._mouseTargetFactory,(a,b,c)=>this._dispatchMouse(a,b,c))),this._mouseState=new aI,this._currentSelection=new ay.L(1,1,1,1),this._isActive=!1,this._lastMouseEvent=null}dispose(){super.dispose()}isActive(){return this._isActive}_onMouseDownThenMove(a){this._lastMouseEvent=a,this._mouseState.setModifiers(a);let b=this._findMousePosition(a,!1);b&&(this._mouseState.isDragAndDrop?this._viewController.emitMouseDrag({event:a,target:b}):13===b.type?"above"===b.outsidePosition||"below"===b.outsidePosition?(this._topBottomDragScrolling.start(b,a),this._leftRightDragScrolling.stop()):(this._leftRightDragScrolling.start(b,a),this._topBottomDragScrolling.stop()):(this._topBottomDragScrolling.stop(),this._leftRightDragScrolling.stop(),this._dispatchMouse(b,!0,1)))}start(a,b,c){this._lastMouseEvent=b,this._mouseState.setStartedOnLineNumbers(3===a),this._mouseState.setStartButtons(b),this._mouseState.setModifiers(b);let d=this._findMousePosition(b,!0);if(!d||!d.position)return;this._mouseState.trySetCount(b.detail,d.position),b.detail=this._mouseState.count;let e=this._context.configuration.options;if(!e.get(104)&&e.get(42)&&!e.get(28)&&!this._mouseState.altKey&&b.detail<2&&!this._isActive&&!this._currentSelection.isEmpty()&&6===d.type&&d.position&&this._currentSelection.containsPosition(d.position)){this._mouseState.isDragAndDrop=!0,this._isActive=!0,this._mouseMoveMonitor.startMonitoring(this._viewHelper.viewLinesDomNode,c,b.buttons,a=>this._onMouseDownThenMove(a),a=>{let b=this._findMousePosition(this._lastMouseEvent,!1);v.kx(a)?this._viewController.emitMouseDropCanceled():this._viewController.emitMouseDrop({event:this._lastMouseEvent,target:b?this._createMouseTarget(this._lastMouseEvent,!0):null}),this._stop()});return}this._mouseState.isDragAndDrop=!1,this._dispatchMouse(d,b.shiftKey,1),this._isActive||(this._isActive=!0,this._mouseMoveMonitor.startMonitoring(this._viewHelper.viewLinesDomNode,c,b.buttons,a=>this._onMouseDownThenMove(a),()=>this._stop()))}_stop(){this._isActive=!1,this._topBottomDragScrolling.stop(),this._leftRightDragScrolling.stop()}onHeightChanged(){this._mouseMoveMonitor.stopMonitoring()}onPointerUp(){this._mouseMoveMonitor.stopMonitoring()}onCursorStateChanged(a){this._currentSelection=a.selections[0]}_getPositionOutsideEditor(a){let b=a.editorPos,c=this._context.viewModel,d=this._context.viewLayout,e=this._getMouseColumn(a);if(a.posy<b.y){let c=b.y-a.posy,f=Math.max(d.getCurrentScrollTop()-c,0),g=an.getZoneAtCoord(this._context,f);if(g){let a=this._helpPositionJumpOverViewZone(g);if(a)return al.createOutsideEditor(e,a,"above",c)}let h=d.getLineNumberAtVerticalOffset(f);return al.createOutsideEditor(e,new ac.y(h,1),"above",c)}if(a.posy>b.y+b.height){let f=a.posy-b.y-b.height,g=d.getCurrentScrollTop()+a.relativePos.y,h=an.getZoneAtCoord(this._context,g);if(h){let a=this._helpPositionJumpOverViewZone(h);if(a)return al.createOutsideEditor(e,a,"below",f)}let i=d.getLineNumberAtVerticalOffset(g);return al.createOutsideEditor(e,new ac.y(i,c.getLineMaxColumn(i)),"below",f)}let f=d.getLineNumberAtVerticalOffset(d.getCurrentScrollTop()+a.relativePos.y),g=this._context.configuration.options.get(165),h=g.contentLeft;if(a.relativePos.x<=h){let b=h-a.relativePos.x;return al.createOutsideEditor(e,new ac.y(f,1),"left",b)}let i=0===g.minimap.minimapLeft?g.width-g.verticalScrollbarWidth:g.minimap.minimapLeft;if(a.relativePos.x>=i){let b=a.relativePos.x-i;return al.createOutsideEditor(e,new ac.y(f,c.getLineMaxColumn(f)),"right",b)}return null}_findMousePosition(a,b){let c=this._getPositionOutsideEditor(a);if(c)return c;let d=this._createMouseTarget(a,b);if(!d.position)return null;if(8===d.type||5===d.type){let a=this._helpPositionJumpOverViewZone(d.detail);if(a)return al.createViewZone(d.type,d.element,d.mouseColumn,a,d.detail)}return d}_helpPositionJumpOverViewZone(a){let b=new ac.y(this._currentSelection.selectionStartLineNumber,this._currentSelection.selectionStartColumn),c=a.positionBefore,d=a.positionAfter;if(c&&d)if(c.isBefore(b))return c;else return d;return null}_dispatchMouse(a,b,c){a.position&&this._viewController.dispatchMouse({position:a.position,mouseColumn:a.mouseColumn,startedOnLineNumbers:this._mouseState.startedOnLineNumbers,revealType:c,inSelectionMode:b,mouseDownCount:this._mouseState.count,altKey:this._mouseState.altKey,ctrlKey:this._mouseState.ctrlKey,metaKey:this._mouseState.metaKey,shiftKey:this._mouseState.shiftKey,leftButton:this._mouseState.leftButton,middleButton:this._mouseState.middleButton,onInjectedText:6===a.type&&null!==a.detail.injectedText})}}class aI{static{this.CLEAR_MOUSE_DOWN_COUNT_TIME=400}get altKey(){return this._altKey}get ctrlKey(){return this._ctrlKey}get metaKey(){return this._metaKey}get shiftKey(){return this._shiftKey}get leftButton(){return this._leftButton}get middleButton(){return this._middleButton}get startedOnLineNumbers(){return this._startedOnLineNumbers}constructor(){this._altKey=!1,this._ctrlKey=!1,this._metaKey=!1,this._shiftKey=!1,this._leftButton=!1,this._middleButton=!1,this._startedOnLineNumbers=!1,this._lastMouseDownPosition=null,this._lastMouseDownPositionEqualCount=0,this._lastMouseDownCount=0,this._lastSetMouseDownCountTime=0,this.isDragAndDrop=!1}get count(){return this._lastMouseDownCount}setModifiers(a){this._altKey=a.altKey,this._ctrlKey=a.ctrlKey,this._metaKey=a.metaKey,this._shiftKey=a.shiftKey}setStartButtons(a){this._leftButton=a.leftButton,this._middleButton=a.middleButton}setStartedOnLineNumbers(a){this._startedOnLineNumbers=a}trySetCount(a,b){let c=new Date().getTime();c-this._lastSetMouseDownCountTime>aI.CLEAR_MOUSE_DOWN_COUNT_TIME&&(a=1),this._lastSetMouseDownCountTime=c,a>this._lastMouseDownCount+1&&(a=this._lastMouseDownCount+1),this._lastMouseDownPosition&&this._lastMouseDownPosition.equals(b)?this._lastMouseDownPositionEqualCount++:this._lastMouseDownPositionEqualCount=1,this._lastMouseDownPosition=b,this._lastMouseDownCount=Math.min(a,this._lastMouseDownPositionEqualCount)}}var aJ=c(1644),aK=c(94615),aL=c(91849),aM=c(77747),aN=c(12546),aO=c(38650);class aP{static{this.EMPTY=new aP("",0,0,null,void 0)}constructor(a,b,c,d,e){this.value=a,this.selectionStart=b,this.selectionEnd=c,this.selection=d,this.newlineCountBeforeSelection=e}toString(){return`[ <${this.value}>, selectionStart: ${this.selectionStart}, selectionEnd: ${this.selectionEnd}]`}static readFromTextArea(a,b){let c,d=a.getValue(),e=a.getSelectionStart(),f=a.getSelectionEnd();return b&&d.substring(0,e)===b.value.substring(0,b.selectionStart)&&(c=b.newlineCountBeforeSelection),new aP(d,e,f,null,c)}collapseSelection(){return this.selectionStart===this.value.length?this:new aP(this.value,this.value.length,this.value.length,null,void 0)}isWrittenToTextArea(a,b){let c=this.value===a.getValue();return b?this.selectionStart===a.getSelectionStart()&&this.selectionEnd===a.getSelectionEnd()&&c:c}writeToTextArea(a,b,c){b.setValue(a,this.value),c&&b.setSelectionRange(a,this.selectionStart,this.selectionEnd)}deduceEditorPosition(a){if(a<=this.selectionStart){let b=this.value.substring(a,this.selectionStart);return this._finishDeduceEditorPosition(this.selection?.getStartPosition()??null,b,-1)}if(a>=this.selectionEnd){let b=this.value.substring(this.selectionEnd,a);return this._finishDeduceEditorPosition(this.selection?.getEndPosition()??null,b,1)}let b=this.value.substring(this.selectionStart,a);if(-1===b.indexOf(String.fromCharCode(8230)))return this._finishDeduceEditorPosition(this.selection?.getStartPosition()??null,b,1);let c=this.value.substring(a,this.selectionEnd);return this._finishDeduceEditorPosition(this.selection?.getEndPosition()??null,c,-1)}_finishDeduceEditorPosition(a,b,c){let d=0,e=-1;for(;-1!==(e=b.indexOf("\n",e+1));)d++;return[a,c*b.length,d]}static deduceInput(a,b,c){if(!a)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:0};let d=Math.min((0,aM.Qp)(a.value,b.value),a.selectionStart,b.selectionStart),e=Math.min((0,aM.Vi)(a.value,b.value),a.value.length-a.selectionEnd,b.value.length-b.selectionEnd),f=(a.value.substring(d,a.value.length-e),b.value.substring(d,b.value.length-e)),g=a.selectionStart-d,h=a.selectionEnd-d;return b.selectionStart-d==b.selectionEnd-d?{text:f,replacePrevCharCnt:a.selectionStart-d,replaceNextCharCnt:0,positionDelta:0}:{text:f,replacePrevCharCnt:h-g,replaceNextCharCnt:0,positionDelta:0}}static deduceAndroidCompositionInput(a,b){if(!a)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:0};if(a.value===b.value)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:b.selectionEnd-a.selectionEnd};let c=Math.min((0,aM.Qp)(a.value,b.value),a.selectionEnd),d=Math.min((0,aM.Vi)(a.value,b.value),a.value.length-a.selectionEnd),e=a.value.substring(c,a.value.length-d),f=b.value.substring(c,b.value.length-d),g=(a.selectionStart,a.selectionEnd-c),h=(b.selectionStart,b.selectionEnd-c);return{text:f,replacePrevCharCnt:g,replaceNextCharCnt:e.length-g,positionDelta:h-f.length}}static fromScreenReaderContentState(a){return new aP(a.value,a.selectionStart,a.selectionEnd,a.selection,a.newlineCountBeforeSelection)}}var aQ=c(54058),aR=function(a,b){return function(c,d){b(c,d,a)}};(n||(n={})).Tap="-monaco-textarea-synthetic-tap";class aS{constructor(){this._lastTypeTextLength=0}handleCompositionUpdate(a){let b={text:a=a||"",replacePrevCharCnt:this._lastTypeTextLength,replaceNextCharCnt:0,positionDelta:0};return this._lastTypeTextLength=a.length,b}}let aT=class extends y.jG{get textAreaState(){return this._textAreaState}constructor(a,b,c,d,e,f){super(),this._host=a,this._textArea=b,this._OS=c,this._browser=d,this._accessibilityService=e,this._logService=f,this._onFocus=this._register(new x.vl),this.onFocus=this._onFocus.event,this._onBlur=this._register(new x.vl),this.onBlur=this._onBlur.event,this._onKeyDown=this._register(new x.vl),this.onKeyDown=this._onKeyDown.event,this._onKeyUp=this._register(new x.vl),this.onKeyUp=this._onKeyUp.event,this._onCut=this._register(new x.vl),this.onCut=this._onCut.event,this._onPaste=this._register(new x.vl),this.onPaste=this._onPaste.event,this._onType=this._register(new x.vl),this.onType=this._onType.event,this._onCompositionStart=this._register(new x.vl),this.onCompositionStart=this._onCompositionStart.event,this._onCompositionUpdate=this._register(new x.vl),this.onCompositionUpdate=this._onCompositionUpdate.event,this._onCompositionEnd=this._register(new x.vl),this.onCompositionEnd=this._onCompositionEnd.event,this._onSelectionChangeRequest=this._register(new x.vl),this.onSelectionChangeRequest=this._onSelectionChangeRequest.event,this._asyncFocusGainWriteScreenReaderContent=this._register(new y.HE),this._asyncTriggerCut=this._register(new aL.uC(()=>this._onCut.fire(),0)),this._textAreaState=aP.EMPTY,this._selectionChangeListener=null,this._accessibilityService.isScreenReaderOptimized()&&this.writeNativeTextAreaContent("ctor"),this._register(x.Jh.runAndSubscribe(this._accessibilityService.onDidChangeScreenReaderOptimized,()=>{this._accessibilityService.isScreenReaderOptimized()&&!this._asyncFocusGainWriteScreenReaderContent.value?this._asyncFocusGainWriteScreenReaderContent.value=this._register(new aL.uC(()=>this.writeNativeTextAreaContent("asyncFocusGain"),0)):this._asyncFocusGainWriteScreenReaderContent.clear()})),this._hasFocus=!1,this._currentComposition=null;let g=null;this._register(this._textArea.onKeyDown(a=>{let b=new aK.Z(a);(114===b.keyCode||this._currentComposition&&1===b.keyCode)&&b.stopPropagation(),b.equals(9)&&b.preventDefault(),g=b,this._onKeyDown.fire(b)})),this._register(this._textArea.onKeyUp(a=>{let b=new aK.Z(a);this._onKeyUp.fire(b)})),this._register(this._textArea.onCompositionStart(a=>{let b=new aS;if(this._currentComposition){this._currentComposition=b;return}if(this._currentComposition=b,2===this._OS&&g&&g.equals(114)&&this._textAreaState.selectionStart===this._textAreaState.selectionEnd&&this._textAreaState.selectionStart>0&&this._textAreaState.value.substr(this._textAreaState.selectionStart-1,1)===a.data&&("ArrowRight"===g.code||"ArrowLeft"===g.code)){b.handleCompositionUpdate("x"),this._onCompositionStart.fire({data:a.data});return}this._browser.isAndroid,this._onCompositionStart.fire({data:a.data})})),this._register(this._textArea.onCompositionUpdate(a=>{let b=this._currentComposition;if(!b)return;if(this._browser.isAndroid){let b=aP.readFromTextArea(this._textArea,this._textAreaState),c=aP.deduceAndroidCompositionInput(this._textAreaState,b);this._textAreaState=b,this._onType.fire(c),this._onCompositionUpdate.fire(a);return}let c=b.handleCompositionUpdate(a.data);this._textAreaState=aP.readFromTextArea(this._textArea,this._textAreaState),this._onType.fire(c),this._onCompositionUpdate.fire(a)})),this._register(this._textArea.onCompositionEnd(a=>{let b=this._currentComposition;if(!b)return;if(this._currentComposition=null,this._browser.isAndroid){let a=aP.readFromTextArea(this._textArea,this._textAreaState),b=aP.deduceAndroidCompositionInput(this._textAreaState,a);this._textAreaState=a,this._onType.fire(b),this._onCompositionEnd.fire();return}let c=b.handleCompositionUpdate(a.data);this._textAreaState=aP.readFromTextArea(this._textArea,this._textAreaState),this._onType.fire(c),this._onCompositionEnd.fire()})),this._register(this._textArea.onInput(a=>{if(this._textArea.setIgnoreSelectionChangeTime("received input event"),this._currentComposition)return;let b=aP.readFromTextArea(this._textArea,this._textAreaState),c=aP.deduceInput(this._textAreaState,b,2===this._OS);0===c.replacePrevCharCnt&&1===c.text.length&&(aM.pc(c.text.charCodeAt(0))||127===c.text.charCodeAt(0))||(this._textAreaState=b,(""!==c.text||0!==c.replacePrevCharCnt||0!==c.replaceNextCharCnt||0!==c.positionDelta)&&("insertFromPaste"===a.inputType?this._onPaste.fire({text:c.text,metadata:aO.bs.INSTANCE.get(c.text)}):this._onType.fire(c)))})),this._register(this._textArea.onCut(a=>{this._logService.trace("TextAreaInput#onCut",a),this._textArea.setIgnoreSelectionChangeTime("received cut event"),this._ensureClipboardGetsEditorSelection(a),this._asyncTriggerCut.schedule()})),this._register(this._textArea.onCopy(a=>{this._logService.trace("TextAreaInput#onCopy",a),this._ensureClipboardGetsEditorSelection(a)})),this._register(this._textArea.onPaste(a=>{if(this._logService.trace("TextAreaInput#onPaste",a),this._textArea.setIgnoreSelectionChangeTime("received paste event"),a.preventDefault(),!a.clipboardData)return;let[b,c]=aO.Mz.getTextData(a.clipboardData);this._logService.trace("TextAreaInput#onPaste with id : ",c?.id," with text.length: ",b.length),b&&(c=c||aO.bs.INSTANCE.get(b),this._logService.trace("TextAreaInput#onPaste (before onPaste)"),this._onPaste.fire({text:b,metadata:c}))})),this._register(this._textArea.onFocus(()=>{let a=this._hasFocus;this._setHasFocus(!0),this._accessibilityService.isScreenReaderOptimized()&&this._browser.isSafari&&!a&&this._hasFocus&&(this._asyncFocusGainWriteScreenReaderContent.value||(this._asyncFocusGainWriteScreenReaderContent.value=new aL.uC(()=>this.writeNativeTextAreaContent("asyncFocusGain"),0)),this._asyncFocusGainWriteScreenReaderContent.value.schedule())})),this._register(this._textArea.onBlur(()=>{this._currentComposition&&(this._currentComposition=null,this.writeNativeTextAreaContent("blurWithoutCompositionEnd"),this._onCompositionEnd.fire()),this._setHasFocus(!1)})),this._register(this._textArea.onSyntheticTap(()=>{this._browser.isAndroid&&this._currentComposition&&(this._currentComposition=null,this.writeNativeTextAreaContent("tapWithoutCompositionEnd"),this._onCompositionEnd.fire())}))}_installSelectionChangeListener(){let a=0;return v.ko(this._textArea.ownerDocument,"selectionchange",b=>{if(l.onSelectionChange(),!this._hasFocus||this._currentComposition||!this._browser.isChrome)return;let c=Date.now(),d=c-a;if(a=c,d<5)return;let e=c-this._textArea.getIgnoreSelectionChangeTime();if(this._textArea.resetSelectionChangeTime(),e<100||!this._textAreaState.selection)return;let f=this._textArea.getValue();if(this._textAreaState.value!==f)return;let g=this._textArea.getSelectionStart(),h=this._textArea.getSelectionEnd();if(this._textAreaState.selectionStart===g&&this._textAreaState.selectionEnd===h)return;let i=this._textAreaState.deduceEditorPosition(g),j=this._host.deduceModelPosition(i[0],i[1],i[2]),k=this._textAreaState.deduceEditorPosition(h),m=this._host.deduceModelPosition(k[0],k[1],k[2]),n=new ay.L(j.lineNumber,j.column,m.lineNumber,m.column);this._onSelectionChangeRequest.fire(n)})}dispose(){super.dispose(),this._selectionChangeListener&&(this._selectionChangeListener.dispose(),this._selectionChangeListener=null)}focusTextArea(){this._setHasFocus(!0),this.refreshFocusState()}isFocused(){return this._hasFocus}refreshFocusState(){this._setHasFocus(this._textArea.hasFocus())}_setHasFocus(a){this._hasFocus!==a&&(this._hasFocus=a,this._selectionChangeListener&&(this._selectionChangeListener.dispose(),this._selectionChangeListener=null),this._hasFocus&&(this._selectionChangeListener=this._installSelectionChangeListener()),this._hasFocus&&this.writeNativeTextAreaContent("focusgain"),this._hasFocus?this._onFocus.fire():this._onBlur.fire())}_setAndWriteTextAreaState(a,b){this._hasFocus||(b=b.collapseSelection()),b.isWrittenToTextArea(this._textArea,this._hasFocus)||this._logService.trace(`writeTextAreaState(reason: ${a})`),b.writeToTextArea(a,this._textArea,this._hasFocus),this._textAreaState=b}writeNativeTextAreaContent(a){(this._accessibilityService.isScreenReaderOptimized()||"render"!==a)&&!this._currentComposition&&this._setAndWriteTextAreaState(a,this._host.getScreenReaderContent())}_ensureClipboardGetsEditorSelection(a){let b,c=this._host.getDataToCopy();this._logService.getLevel()===aN.$b.Trace&&(b=(0,aQ.b)());let d={version:1,id:b,isFromEmptySelection:c.isFromEmptySelection,multicursorText:c.multicursorText,mode:c.mode};aO.bs.INSTANCE.set(this._browser.isFirefox?c.text.replace(/\r\n/g,"\n"):c.text,d),a.preventDefault(),a.clipboardData&&aO.Mz.setTextData(a.clipboardData,c.text,c.html,d),this._logService.trace("TextAreaEditContextInput#_ensureClipboardGetsEditorSelection with id : ",b," with text.length: ",c.text.length)}};aT=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([aR(4,P.j),aR(5,aN.rr)],aT);class aU extends y.jG{get ownerDocument(){return this._actual.ownerDocument}constructor(a){super(),this._actual=a,this._onSyntheticTap=this._register(new x.vl),this.onSyntheticTap=this._onSyntheticTap.event,this._ignoreSelectionChangeTime=0,this.onKeyDown=this._register(new aJ.f(this._actual,"keydown")).event,this.onKeyPress=this._register(new aJ.f(this._actual,"keypress")).event,this.onKeyUp=this._register(new aJ.f(this._actual,"keyup")).event,this.onCompositionStart=this._register(new aJ.f(this._actual,"compositionstart")).event,this.onCompositionUpdate=this._register(new aJ.f(this._actual,"compositionupdate")).event,this.onCompositionEnd=this._register(new aJ.f(this._actual,"compositionend")).event,this.onBeforeInput=this._register(new aJ.f(this._actual,"beforeinput")).event,this.onInput=this._register(new aJ.f(this._actual,"input")).event,this.onCut=this._register(new aJ.f(this._actual,"cut")).event,this.onCopy=this._register(new aJ.f(this._actual,"copy")).event,this.onPaste=this._register(new aJ.f(this._actual,"paste")).event,this.onFocus=this._register(new aJ.f(this._actual,"focus")).event,this.onBlur=this._register(new aJ.f(this._actual,"blur")).event,this._register(this.onKeyDown(()=>l.onKeyDown())),this._register(this.onBeforeInput(()=>l.onBeforeInput())),this._register(this.onInput(()=>l.onInput())),this._register(this.onKeyUp(()=>l.onKeyUp())),this._register(v.ko(this._actual,n.Tap,()=>this._onSyntheticTap.fire()))}hasFocus(){let a=v.jG(this._actual);return a?a.activeElement===this._actual:!!this._actual.isConnected&&v.bq()===this._actual}setIgnoreSelectionChangeTime(a){this._ignoreSelectionChangeTime=Date.now()}getIgnoreSelectionChangeTime(){return this._ignoreSelectionChangeTime}resetSelectionChangeTime(){this._ignoreSelectionChangeTime=0}getValue(){return this._actual.value}setValue(a,b){let c=this._actual;c.value!==b&&(this.setIgnoreSelectionChangeTime("setValue"),c.value=b)}getSelectionStart(){return"backward"===this._actual.selectionDirection?this._actual.selectionEnd:this._actual.selectionStart}getSelectionEnd(){return"backward"===this._actual.selectionDirection?this._actual.selectionStart:this._actual.selectionEnd}setSelectionRange(a,b,c){let d=this._actual,e=null,f=v.jG(d);e=f?f.activeElement:v.bq();let g=v.zk(e),h=e===d,i=d.selectionStart,j=d.selectionEnd;if(h&&i===b&&j===c){B.gm&&g.parent!==g&&d.focus();return}if(h){this.setIgnoreSelectionChangeTime("setSelectionRange"),d.setSelectionRange(b,c),B.gm&&g.parent!==g&&d.focus();return}try{let a=v.zK(d);this.setIgnoreSelectionChangeTime("setSelectionRange"),d.focus(),d.setSelectionRange(b,c),v.wk(d,a)}catch(a){}}}class aV extends aG{constructor(a,b,c){super(a,b,c),this._register(av.q.addTarget(this.viewHelper.linesContentDomNode)),this._register(v.ko(this.viewHelper.linesContentDomNode,av.B.Tap,a=>this.onTap(a))),this._register(v.ko(this.viewHelper.linesContentDomNode,av.B.Change,a=>this.onChange(a))),this._register(v.ko(this.viewHelper.linesContentDomNode,av.B.Contextmenu,a=>this._onContextMenu(new Z.dO(a,!1,this.viewHelper.viewDomNode),!1))),this._lastPointerType="mouse",this._register(v.ko(this.viewHelper.linesContentDomNode,"pointerdown",a=>{let b=a.pointerType;if("mouse"===b){this._lastPointerType="mouse";return}"touch"===b?this._lastPointerType="touch":this._lastPointerType="pen"}));const d=new Z.DW(this.viewHelper.viewDomNode);this._register(d.onPointerMove(this.viewHelper.viewDomNode,a=>this._onMouseMove(a))),this._register(d.onPointerUp(this.viewHelper.viewDomNode,a=>this._onMouseUp(a))),this._register(d.onPointerLeave(this.viewHelper.viewDomNode,a=>this._onMouseLeave(a))),this._register(d.onPointerDown(this.viewHelper.viewDomNode,(a,b)=>this._onMouseDown(a,b)))}onTap(a){a.initialTarget&&this.viewHelper.linesContentDomNode.contains(a.initialTarget)&&(a.preventDefault(),this.viewHelper.focusTextArea(),this._dispatchGesture(a,!1))}onChange(a){"touch"===this._lastPointerType&&this._context.viewModel.viewLayout.deltaScrollNow(-a.translationX,-a.translationY),"pen"===this._lastPointerType&&this._dispatchGesture(a,!0)}_dispatchGesture(a,b){let c=this._createMouseTarget(new Z.dO(a,!1,this.viewHelper.viewDomNode),!1);c.position&&this.viewController.dispatchMouse({position:c.position,mouseColumn:c.position.column,startedOnLineNumbers:!1,revealType:1,mouseDownCount:a.tapCount,inSelectionMode:b,altKey:!1,ctrlKey:!1,metaKey:!1,shiftKey:!1,leftButton:!1,middleButton:!1,onInjectedText:6===c.type&&null!==c.detail.injectedText})}_onMouseDown(a,b){"touch"!==a.browserEvent.pointerType&&super._onMouseDown(a,b)}}class aW extends aG{constructor(a,b,c){super(a,b,c),this._register(av.q.addTarget(this.viewHelper.linesContentDomNode)),this._register(v.ko(this.viewHelper.linesContentDomNode,av.B.Tap,a=>this.onTap(a))),this._register(v.ko(this.viewHelper.linesContentDomNode,av.B.Change,a=>this.onChange(a))),this._register(v.ko(this.viewHelper.linesContentDomNode,av.B.Contextmenu,a=>this._onContextMenu(new Z.dO(a,!1,this.viewHelper.viewDomNode),!1)))}onTap(a){a.preventDefault(),this.viewHelper.focusTextArea();let b=this._createMouseTarget(new Z.dO(a,!1,this.viewHelper.viewDomNode),!1);if(b.position){let a=document.createEvent("CustomEvent");a.initEvent(n.Tap,!1,!0),this.viewHelper.dispatchTextAreaEvent(a),this.viewController.moveTo(b.position,1)}}onChange(a){this._context.viewModel.viewLayout.deltaScrollNow(-a.translationX,-a.translationY)}}class aX extends y.jG{constructor(a,b,c){super(),(E.un||E.m0&&E.Fr)&&au.e.pointerEvents?this.handler=this._register(new aV(a,b,c)):aw.G.TouchEvent?this.handler=this._register(new aW(a,b,c)):this.handler=this._register(new aG(a,b,c))}getTargetAtClientPoint(a,b){return this.handler.getTargetAtClientPoint(a,b)}}var aY=c(32801),aZ=c(50619);class a${constructor(a,b,c,d){this.configuration=a,this.viewModel=b,this.userInputEvents=c,this.commandDelegate=d}paste(a,b,c,d){this.commandDelegate.paste(a,b,c,d)}type(a){this.commandDelegate.type(a)}compositionType(a,b,c,d){this.commandDelegate.compositionType(a,b,c,d)}compositionStart(){this.commandDelegate.startComposition()}compositionEnd(){this.commandDelegate.endComposition()}cut(){this.commandDelegate.cut()}setSelection(a){aZ.QM.SetSelection.runCoreEditorCommand(this.viewModel,{source:"keyboard",selection:a})}_validateViewColumn(a){let b=this.viewModel.getLineMinColumn(a.lineNumber);return a.column<b?new ac.y(a.lineNumber,b):a}_hasMulticursorModifier(a){switch(this.configuration.options.get(86)){case"altKey":return a.altKey;case"ctrlKey":return a.ctrlKey;case"metaKey":return a.metaKey;default:return!1}}_hasNonMulticursorModifier(a){switch(this.configuration.options.get(86)){case"altKey":return a.ctrlKey||a.metaKey;case"ctrlKey":return a.altKey||a.metaKey;case"metaKey":return a.ctrlKey||a.altKey;default:return!1}}dispatchMouse(a){let b=this.configuration.options,c=E.j9&&b.get(121),d=b.get(28),e=b.get(171);a.middleButton&&!c?e||this._columnSelect(a.position,a.mouseColumn,a.inSelectionMode):a.startedOnLineNumbers?this._hasMulticursorModifier(a)?a.inSelectionMode?this._lastCursorLineSelect(a.position,a.revealType):this._createCursor(a.position,!0):a.inSelectionMode?this._lineSelectDrag(a.position,a.revealType):this._lineSelect(a.position,a.revealType):a.mouseDownCount>=4?this._selectAll():3===a.mouseDownCount?this._hasMulticursorModifier(a)?a.inSelectionMode?this._lastCursorLineSelectDrag(a.position,a.revealType):this._lastCursorLineSelect(a.position,a.revealType):a.inSelectionMode?this._lineSelectDrag(a.position,a.revealType):this._lineSelect(a.position,a.revealType):2===a.mouseDownCount?a.onInjectedText||(this._hasMulticursorModifier(a)?this._lastCursorWordSelect(a.position,a.revealType):a.inSelectionMode?this._wordSelectDrag(a.position,a.revealType):this._wordSelect(a.position,a.revealType)):this._hasMulticursorModifier(a)?this._hasNonMulticursorModifier(a)||(a.shiftKey?this._columnSelect(a.position,a.mouseColumn,!0):a.inSelectionMode?this._lastCursorMoveToSelect(a.position,a.revealType):this._createCursor(a.position,!1)):a.inSelectionMode?a.altKey||d?this._columnSelect(a.position,a.mouseColumn,!0):this._moveToSelect(a.position,a.revealType):this.moveTo(a.position,a.revealType)}_usualArgs(a,b){return a=this._validateViewColumn(a),{source:"mouse",position:this._convertViewToModelPosition(a),viewPosition:a,revealType:b}}moveTo(a,b){aZ.QM.MoveTo.runCoreEditorCommand(this.viewModel,this._usualArgs(a,b))}_moveToSelect(a,b){aZ.QM.MoveToSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(a,b))}_columnSelect(a,b,c){a=this._validateViewColumn(a),aZ.QM.ColumnSelect.runCoreEditorCommand(this.viewModel,{source:"mouse",position:this._convertViewToModelPosition(a),viewPosition:a,mouseColumn:b,doColumnSelect:c})}_createCursor(a,b){a=this._validateViewColumn(a),aZ.QM.CreateCursor.runCoreEditorCommand(this.viewModel,{source:"mouse",position:this._convertViewToModelPosition(a),viewPosition:a,wholeLine:b})}_lastCursorMoveToSelect(a,b){aZ.QM.LastCursorMoveToSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(a,b))}_wordSelect(a,b){aZ.QM.WordSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(a,b))}_wordSelectDrag(a,b){aZ.QM.WordSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(a,b))}_lastCursorWordSelect(a,b){aZ.QM.LastCursorWordSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(a,b))}_lineSelect(a,b){aZ.QM.LineSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(a,b))}_lineSelectDrag(a,b){aZ.QM.LineSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(a,b))}_lastCursorLineSelect(a,b){aZ.QM.LastCursorLineSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(a,b))}_lastCursorLineSelectDrag(a,b){aZ.QM.LastCursorLineSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(a,b))}_selectAll(){aZ.QM.SelectAll.runCoreEditorCommand(this.viewModel,{source:"mouse"})}_convertViewToModelPosition(a){return this.viewModel.coordinatesConverter.convertViewPositionToModelPosition(a)}emitKeyDown(a){this.userInputEvents.emitKeyDown(a)}emitKeyUp(a){this.userInputEvents.emitKeyUp(a)}emitContextMenu(a){this.userInputEvents.emitContextMenu(a)}emitMouseMove(a){this.userInputEvents.emitMouseMove(a)}emitMouseLeave(a){this.userInputEvents.emitMouseLeave(a)}emitMouseUp(a){this.userInputEvents.emitMouseUp(a)}emitMouseDown(a){this.userInputEvents.emitMouseDown(a)}emitMouseDrag(a){this.userInputEvents.emitMouseDrag(a)}emitMouseDrop(a){this.userInputEvents.emitMouseDrop(a)}emitMouseDropCanceled(){this.userInputEvents.emitMouseDropCanceled()}emitMouseWheel(a){this.userInputEvents.emitMouseWheel(a)}}var a_=c(83498),a0=c(77757);class a1{constructor(a){this._lineFactory=a,this._set(1,[])}flush(){this._set(1,[])}_set(a,b){this._lines=b,this._rendLineNumberStart=a}_get(){return{rendLineNumberStart:this._rendLineNumberStart,lines:this._lines}}getStartLineNumber(){return this._rendLineNumberStart}getEndLineNumber(){return this._rendLineNumberStart+this._lines.length-1}getCount(){return this._lines.length}getLine(a){let b=a-this._rendLineNumberStart;if(b<0||b>=this._lines.length)throw new w.D7("Illegal value for lineNumber");return this._lines[b]}onLinesDeleted(a,b){if(0===this.getCount())return null;let c=this.getStartLineNumber(),d=this.getEndLineNumber();if(b<c)return this._rendLineNumberStart-=b-a+1,null;if(a>d)return null;let e=0,f=0;for(let g=c;g<=d;g++){let c=g-this._rendLineNumberStart;a<=g&&g<=b&&(0===f?(e=c,f=1):f++)}if(a<c){let d=0;d=b<c?b-a+1:c-a,this._rendLineNumberStart-=d}return this._lines.splice(e,f)}onLinesChanged(a,b){let c=a+b-1;if(0===this.getCount())return!1;let d=this.getStartLineNumber(),e=this.getEndLineNumber(),f=!1;for(let b=a;b<=c;b++)b>=d&&b<=e&&(this._lines[b-this._rendLineNumberStart].onContentChanged(),f=!0);return f}onLinesInserted(a,b){if(0===this.getCount())return null;let c=b-a+1,d=this.getStartLineNumber(),e=this.getEndLineNumber();if(a<=d)return this._rendLineNumberStart+=c,null;if(a>e)return null;if(c+a>e)return this._lines.splice(a-this._rendLineNumberStart,e-a+1);let f=[];for(let a=0;a<c;a++)f[a]=this._lineFactory.createLine();let g=a-this._rendLineNumberStart,h=this._lines.slice(0,g),i=this._lines.slice(g,this._lines.length-c),j=this._lines.slice(this._lines.length-c,this._lines.length);return this._lines=h.concat(f).concat(i),j}onTokensChanged(a){if(0===this.getCount())return!1;let b=this.getStartLineNumber(),c=this.getEndLineNumber(),d=!1;for(let e=0,f=a.length;e<f;e++){let f=a[e];if(f.toLineNumber<b||f.fromLineNumber>c)continue;let g=Math.max(b,f.fromLineNumber),h=Math.min(c,f.toLineNumber);for(let a=g;a<=h;a++){let b=a-this._rendLineNumberStart;this._lines[b].onTokensChanged(),d=!0}}return d}}class a2{constructor(a,b){this._viewContext=a,this._lineFactory=b,this.domNode=this._createDomNode(),this._linesCollection=new a1(this._lineFactory)}_createDomNode(){let a=(0,Y.Z)(document.createElement("div"));return a.setClassName("view-layer"),a.setPosition("absolute"),a.domNode.setAttribute("role","presentation"),a.domNode.setAttribute("aria-hidden","true"),a}onConfigurationChanged(a){return!!a.hasChanged(165)}onFlushed(a,b){if(b){let a=this._linesCollection.getStartLineNumber(),b=this._linesCollection.getEndLineNumber();for(let c=a;c<=b;c++)this._linesCollection.getLine(c).getDomNode()?.remove()}return this._linesCollection.flush(),!0}onLinesChanged(a){return this._linesCollection.onLinesChanged(a.fromLineNumber,a.count)}onLinesDeleted(a){let b=this._linesCollection.onLinesDeleted(a.fromLineNumber,a.toLineNumber);if(b)for(let a=0,c=b.length;a<c;a++){let c=b[a].getDomNode();c?.remove()}return!0}onLinesInserted(a){let b=this._linesCollection.onLinesInserted(a.fromLineNumber,a.toLineNumber);if(b)for(let a=0,c=b.length;a<c;a++){let c=b[a].getDomNode();c?.remove()}return!0}onScrollChanged(a){return a.scrollTopChanged}onTokensChanged(a){return this._linesCollection.onTokensChanged(a.ranges)}onZonesChanged(a){return!0}getStartLineNumber(){return this._linesCollection.getStartLineNumber()}getEndLineNumber(){return this._linesCollection.getEndLineNumber()}getVisibleLine(a){return this._linesCollection.getLine(a)}renderLines(a){let b=this._linesCollection._get(),c=new a3(this.domNode.domNode,this._lineFactory,a,this._viewContext),d={rendLineNumberStart:b.rendLineNumberStart,lines:b.lines,linesLength:b.lines.length},e=c.render(d,a.startLineNumber,a.endLineNumber,a.relativeVerticalOffset);this._linesCollection._set(e.rendLineNumberStart,e.lines)}}class a3{static{this._ttPolicy=(0,a_.H)("editorViewLayer",{createHTML:a=>a})}constructor(a,b,c,d){this._domNode=a,this._lineFactory=b,this._viewportData=c,this._viewContext=d}render(a,b,c,d){let e={rendLineNumberStart:a.rendLineNumberStart,lines:a.lines.slice(0),linesLength:a.linesLength};if(e.rendLineNumberStart+e.linesLength-1<b||c<e.rendLineNumberStart){e.rendLineNumberStart=b,e.linesLength=c-b+1,e.lines=[];for(let a=b;a<=c;a++)e.lines[a-b]=this._lineFactory.createLine();return this._finishRendering(e,!0,d),e}if(this._renderUntouchedLines(e,Math.max(b-e.rendLineNumberStart,0),Math.min(c-e.rendLineNumberStart,e.linesLength-1),d,b),e.rendLineNumberStart>b){let a=Math.min(c,e.rendLineNumberStart-1);b<=a&&(this._insertLinesBefore(e,b,a,d,b),e.linesLength+=a-b+1)}else if(e.rendLineNumberStart<b){let a=Math.min(e.linesLength,b-e.rendLineNumberStart);a>0&&(this._removeLinesBefore(e,a),e.linesLength-=a)}if(e.rendLineNumberStart=b,e.rendLineNumberStart+e.linesLength-1<c){let a=e.rendLineNumberStart+e.linesLength;a<=c&&(this._insertLinesAfter(e,a,c,d,b),e.linesLength+=c-a+1)}else if(e.rendLineNumberStart+e.linesLength-1>c){let a=Math.max(0,c-e.rendLineNumberStart+1),b=e.linesLength-1-a+1;b>0&&(this._removeLinesAfter(e,b),e.linesLength-=b)}return this._finishRendering(e,!1,d),e}_renderUntouchedLines(a,b,c,d,e){let f=a.rendLineNumberStart,g=a.lines;for(let a=b;a<=c;a++){let b=f+a;g[a].layoutLine(b,d[b-e],this._lineHeightForLineNumber(b))}}_insertLinesBefore(a,b,c,d,e){let f=[],g=0;for(let a=b;a<=c;a++)f[g++]=this._lineFactory.createLine();a.lines=f.concat(a.lines)}_removeLinesBefore(a,b){for(let c=0;c<b;c++){let b=a.lines[c].getDomNode();b?.remove()}a.lines.splice(0,b)}_insertLinesAfter(a,b,c,d,e){let f=[],g=0;for(let a=b;a<=c;a++)f[g++]=this._lineFactory.createLine();a.lines=a.lines.concat(f)}_removeLinesAfter(a,b){let c=a.linesLength-b;for(let d=0;d<b;d++){let b=a.lines[c+d].getDomNode();b?.remove()}a.lines.splice(c,b)}_finishRenderingNewLines(a,b,c,d){a3._ttPolicy&&(c=a3._ttPolicy.createHTML(c));let e=this._domNode.lastChild;b||!e?this._domNode.innerHTML=c:e.insertAdjacentHTML("afterend",c);let f=this._domNode.lastChild;for(let b=a.linesLength-1;b>=0;b--){let c=a.lines[b];d[b]&&(c.setDomNode(f),f=f.previousSibling)}}_finishRenderingInvalidLines(a,b,c){let d=document.createElement("div");a3._ttPolicy&&(b=a3._ttPolicy.createHTML(b)),d.innerHTML=b;for(let b=0;b<a.linesLength;b++){let e=a.lines[b];if(c[b]){let a=d.firstChild,b=e.getDomNode();b.parentNode.replaceChild(a,b),e.setDomNode(a)}}}static{this._sb=new a0.fe(1e5)}_finishRendering(a,b,c){let d=a3._sb,e=a.linesLength,f=a.lines,g=a.rendLineNumberStart,h=[];{d.reset();let i=!1;for(let a=0;a<e;a++){let b=f[a];if(h[a]=!1,b.getDomNode())continue;let e=a+g;b.renderLine(e,c[a],this._lineHeightForLineNumber(e),this._viewportData,d)&&(h[a]=!0,i=!0)}i&&this._finishRenderingNewLines(a,b,d.build(),h)}{d.reset();let b=!1,i=[];for(let a=0;a<e;a++){let e=f[a];if(i[a]=!1,h[a])continue;let j=a+g;e.renderLine(j,c[a],this._lineHeightForLineNumber(j),this._viewportData,d)&&(i[a]=!0,b=!0)}b&&this._finishRenderingInvalidLines(a,d.build(),i)}}_lineHeightForLineNumber(a){return this._viewContext.viewLayout.getLineHeightForLineNumber(a)}}class a4 extends _{constructor(a){super(a),this._dynamicOverlays=[],this._isFocused=!1,this._visibleLines=new a2(this._context,{createLine:()=>new a5(this._dynamicOverlays)}),this.domNode=this._visibleLines.domNode;const b=this._context.configuration.options.get(59);(0,A.M)(this.domNode,b),this.domNode.setClassName("view-overlays")}shouldRender(){if(super.shouldRender())return!0;for(let a=0,b=this._dynamicOverlays.length;a<b;a++)if(this._dynamicOverlays[a].shouldRender())return!0;return!1}dispose(){super.dispose();for(let a=0,b=this._dynamicOverlays.length;a<b;a++)this._dynamicOverlays[a].dispose();this._dynamicOverlays=[]}getDomNode(){return this.domNode}addDynamicOverlay(a){this._dynamicOverlays.push(a)}onConfigurationChanged(a){this._visibleLines.onConfigurationChanged(a);let b=this._context.configuration.options.get(59);return(0,A.M)(this.domNode,b),!0}onFlushed(a){return this._visibleLines.onFlushed(a)}onFocusChanged(a){return this._isFocused=a.isFocused,!0}onLinesChanged(a){return this._visibleLines.onLinesChanged(a)}onLinesDeleted(a){return this._visibleLines.onLinesDeleted(a)}onLinesInserted(a){return this._visibleLines.onLinesInserted(a)}onScrollChanged(a){return this._visibleLines.onScrollChanged(a)||!0}onTokensChanged(a){return this._visibleLines.onTokensChanged(a)}onZonesChanged(a){return this._visibleLines.onZonesChanged(a)}prepareRender(a){let b=this._dynamicOverlays.filter(a=>a.shouldRender());for(let c=0,d=b.length;c<d;c++){let d=b[c];d.prepareRender(a),d.onDidRender()}}render(a){this._viewOverlaysRender(a),this.domNode.toggleClassName("focused",this._isFocused)}_viewOverlaysRender(a){this._visibleLines.renderLines(a.viewportData)}}class a5{constructor(a){this._dynamicOverlays=a,this._domNode=null,this._renderedContent=null}getDomNode(){return this._domNode?this._domNode.domNode:null}setDomNode(a){this._domNode=(0,Y.Z)(a)}onContentChanged(){}onTokensChanged(){}renderLine(a,b,c,d,e){let f="";for(let b=0,c=this._dynamicOverlays.length;b<c;b++)f+=this._dynamicOverlays[b].render(d.startLineNumber,a);return this._renderedContent!==f&&(this._renderedContent=f,e.appendString('<div style="top:'),e.appendString(String(b)),e.appendString("px;height:"),e.appendString(String(c)),e.appendString("px;line-height:"),e.appendString(String(c)),e.appendString('px;">'),e.appendString(f),e.appendString("</div>"),!0)}layoutLine(a,b,c){this._domNode&&(this._domNode.setTop(b),this._domNode.setHeight(c),this._domNode.setLineHeight(c))}}class a6 extends a4{constructor(a){super(a);const b=this._context.configuration.options.get(165);this._contentWidth=b.contentWidth,this.domNode.setHeight(0)}onConfigurationChanged(a){let b=this._context.configuration.options.get(165);return this._contentWidth=b.contentWidth,super.onConfigurationChanged(a)||!0}onScrollChanged(a){return super.onScrollChanged(a)||a.scrollWidthChanged}_viewOverlaysRender(a){super._viewOverlaysRender(a),this.domNode.setWidth(Math.max(a.scrollWidth,this._contentWidth))}}class a7 extends a4{constructor(a){super(a);const b=this._context.configuration.options,c=b.get(165);this._contentLeft=c.contentLeft,this.domNode.setClassName("margin-view-overlays"),this.domNode.setWidth(1),(0,A.M)(this.domNode,b.get(59))}onConfigurationChanged(a){let b=this._context.configuration.options;(0,A.M)(this.domNode,b.get(59));let c=b.get(165);return this._contentLeft=c.contentLeft,super.onConfigurationChanged(a)||!0}onScrollChanged(a){return super.onScrollChanged(a)||a.scrollHeightChanged}_viewOverlaysRender(a){super._viewOverlaysRender(a);let b=Math.min(a.scrollHeight,1e6);this.domNode.setHeight(b),this.domNode.setWidth(this._contentLeft)}}class a8{constructor(a){this.onKeyDown=null,this.onKeyUp=null,this.onContextMenu=null,this.onMouseMove=null,this.onMouseLeave=null,this.onMouseDown=null,this.onMouseUp=null,this.onMouseDrag=null,this.onMouseDrop=null,this.onMouseDropCanceled=null,this.onMouseWheel=null,this._coordinatesConverter=a}emitKeyDown(a){this.onKeyDown?.(a)}emitKeyUp(a){this.onKeyUp?.(a)}emitContextMenu(a){this.onContextMenu?.(this._convertViewToModelMouseEvent(a))}emitMouseMove(a){this.onMouseMove?.(this._convertViewToModelMouseEvent(a))}emitMouseLeave(a){this.onMouseLeave?.(this._convertViewToModelMouseEvent(a))}emitMouseDown(a){this.onMouseDown?.(this._convertViewToModelMouseEvent(a))}emitMouseUp(a){this.onMouseUp?.(this._convertViewToModelMouseEvent(a))}emitMouseDrag(a){this.onMouseDrag?.(this._convertViewToModelMouseEvent(a))}emitMouseDrop(a){this.onMouseDrop?.(this._convertViewToModelMouseEvent(a))}emitMouseDropCanceled(){this.onMouseDropCanceled?.()}emitMouseWheel(a){this.onMouseWheel?.(a)}_convertViewToModelMouseEvent(a){return a.target?{event:a.event,target:this._convertViewToModelMouseTarget(a.target)}:a}_convertViewToModelMouseTarget(a){return a8.convertViewToModelMouseTarget(a,this._coordinatesConverter)}static convertViewToModelMouseTarget(a,b){let c={...a};return c.position&&(c.position=b.convertViewPositionToModelPosition(c.position)),c.range&&(c.range=b.convertViewRangeToModelRange(c.range)),(5===c.type||8===c.type)&&(c.detail=this.convertViewToModelViewZoneData(c.detail,b)),c}static convertViewToModelViewZoneData(a,b){return{viewZoneId:a.viewZoneId,positionBefore:a.positionBefore?b.convertViewPositionToModelPosition(a.positionBefore):a.positionBefore,positionAfter:a.positionAfter?b.convertViewPositionToModelPosition(a.positionAfter):a.positionAfter,position:b.convertViewPositionToModelPosition(a.position),afterLineNumber:b.convertViewPositionToModelPosition(new ac.y(a.afterLineNumber,1)).lineNumber}}}c(29989);class a9 extends _{constructor(a){super(a),this.blocks=[],this.contentWidth=-1,this.contentLeft=0,this.domNode=(0,Y.Z)(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this.domNode.setClassName("blockDecorations-container"),this.update()}update(){let a=!1,b=this._context.configuration.options.get(165),c=b.contentWidth-b.verticalScrollbarWidth;this.contentWidth!==c&&(this.contentWidth=c,a=!0);let d=b.contentLeft;return this.contentLeft!==d&&(this.contentLeft=d,a=!0),a}dispose(){super.dispose()}onConfigurationChanged(a){return this.update()}onScrollChanged(a){return a.scrollTopChanged||a.scrollLeftChanged}onDecorationsChanged(a){return!0}onZonesChanged(a){return!0}prepareRender(a){}render(a){let b=0;for(let c of a.getDecorationsInViewport()){let d,e;if(!c.options.blockClassName)continue;let f=this.blocks[b];f||(f=this.blocks[b]=(0,Y.Z)(document.createElement("div")),this.domNode.appendChild(f)),c.options.blockIsAfterEnd?(d=a.getVerticalOffsetAfterLineNumber(c.range.endLineNumber,!1),e=a.getVerticalOffsetAfterLineNumber(c.range.endLineNumber,!0)):(d=a.getVerticalOffsetForLineNumber(c.range.startLineNumber,!0),e=c.range.isEmpty()&&!c.options.blockDoesNotCollapse?a.getVerticalOffsetForLineNumber(c.range.startLineNumber,!1):a.getVerticalOffsetAfterLineNumber(c.range.endLineNumber,!0));let[g,h,i,j]=c.options.blockPadding??[0,0,0,0];f.setClassName("blockDecorations-block "+c.options.blockClassName),f.setLeft(this.contentLeft-j),f.setWidth(this.contentWidth+j+h),f.setTop(d-a.scrollTop-g),f.setHeight(e-d+g+i),b++}for(let a=b;a<this.blocks.length;a++)this.blocks[a].domNode.remove();this.blocks.length=b}}class ba extends _{constructor(a,b){super(a),this._viewDomNode=b,this._widgets={},this.domNode=(0,Y.Z)(document.createElement("div")),aa.write(this.domNode,1),this.domNode.setClassName("contentWidgets"),this.domNode.setPosition("absolute"),this.domNode.setTop(0),this.overflowingContentWidgetsDomNode=(0,Y.Z)(document.createElement("div")),aa.write(this.overflowingContentWidgetsDomNode,2),this.overflowingContentWidgetsDomNode.setClassName("overflowingContentWidgets")}dispose(){super.dispose(),this._widgets={}}onConfigurationChanged(a){for(let b of Object.keys(this._widgets))this._widgets[b].onConfigurationChanged(a);return!0}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onLineMappingChanged(a){return this._updateAnchorsViewPositions(),!0}onLinesChanged(a){return this._updateAnchorsViewPositions(),!0}onLinesDeleted(a){return this._updateAnchorsViewPositions(),!0}onLinesInserted(a){return this._updateAnchorsViewPositions(),!0}onScrollChanged(a){return!0}onZonesChanged(a){return!0}_updateAnchorsViewPositions(){for(let a of Object.keys(this._widgets))this._widgets[a].updateAnchorViewPosition()}addWidget(a){let b=new bb(this._context,this._viewDomNode,a);this._widgets[b.id]=b,b.allowEditorOverflow?this.overflowingContentWidgetsDomNode.appendChild(b.domNode):this.domNode.appendChild(b.domNode),this.setShouldRender()}setWidgetPosition(a,b,c,d,e){this._widgets[a.getId()].setPosition(b,c,d,e),this.setShouldRender()}removeWidget(a){let b=a.getId();if(this._widgets.hasOwnProperty(b)){let a=this._widgets[b];delete this._widgets[b];let c=a.domNode.domNode;c.remove(),c.removeAttribute("monaco-visible-content-widget"),this.setShouldRender()}}shouldSuppressMouseDownOnWidget(a){return!!this._widgets.hasOwnProperty(a)&&this._widgets[a].suppressMouseDown}onBeforeRender(a){for(let b of Object.keys(this._widgets))this._widgets[b].onBeforeRender(a)}prepareRender(a){for(let b of Object.keys(this._widgets))this._widgets[b].prepareRender(a)}render(a){for(let b of Object.keys(this._widgets))this._widgets[b].render(a)}}class bb{constructor(a,b,c){this._primaryAnchor=new bc(null,null),this._secondaryAnchor=new bc(null,null),this._context=a,this._viewDomNode=b,this._actual=c;const d=this._context.configuration.options,e=d.get(165),f=d.get(4);this.domNode=(0,Y.Z)(this._actual.getDomNode()),this.id=this._actual.getId(),this.allowEditorOverflow=(this._actual.allowEditorOverflow||!1)&&f,this.suppressMouseDown=this._actual.suppressMouseDown||!1,this._fixedOverflowWidgets=d.get(51),this._contentWidth=e.contentWidth,this._contentLeft=e.contentLeft,this._affinity=null,this._preference=[],this._cachedDomNodeOffsetWidth=-1,this._cachedDomNodeOffsetHeight=-1,this._maxWidth=this._getMaxWidth(),this._isVisible=!1,this._renderData=null,this.domNode.setPosition(this._fixedOverflowWidgets&&this.allowEditorOverflow?"fixed":"absolute"),this.domNode.setDisplay("none"),this.domNode.setVisibility("hidden"),this.domNode.setAttribute("widgetId",this.id),this.domNode.setMaxWidth(this._maxWidth)}onConfigurationChanged(a){let b=this._context.configuration.options;if(a.hasChanged(165)){let a=b.get(165);this._contentLeft=a.contentLeft,this._contentWidth=a.contentWidth,this._maxWidth=this._getMaxWidth()}}updateAnchorViewPosition(){this._setPosition(this._affinity,this._primaryAnchor.modelPosition,this._secondaryAnchor.modelPosition)}_setPosition(a,b,c){function d(a,b,c){if(!a)return new bc(null,null);let d=b.model.validatePosition(a);return b.coordinatesConverter.modelPositionIsVisible(d)?new bc(a,b.coordinatesConverter.convertModelPositionToViewPosition(d,c??void 0)):new bc(a,null)}this._affinity=a,this._primaryAnchor=d(b,this._context.viewModel,this._affinity),this._secondaryAnchor=d(c,this._context.viewModel,this._affinity)}_getMaxWidth(){let a=this.domNode.domNode.ownerDocument,b=a.defaultView;return this.allowEditorOverflow?b?.innerWidth||a.documentElement.offsetWidth||a.body.offsetWidth:this._contentWidth}setPosition(a,b,c,d){this._setPosition(d,a,b),this._preference=c,this._primaryAnchor.viewPosition&&this._preference&&this._preference.length>0?this.domNode.setDisplay("block"):this.domNode.setDisplay("none"),this._cachedDomNodeOffsetWidth=-1,this._cachedDomNodeOffsetHeight=-1}_layoutBoxInViewport(a,b,c,d){let e=a.top,f=a.top+a.height,g=d.viewportHeight-f,h=a.left;return h+b>d.scrollLeft+d.viewportWidth&&(h=d.scrollLeft+d.viewportWidth-b),h<d.scrollLeft&&(h=d.scrollLeft),{fitsAbove:e>=c,aboveTop:e-c,fitsBelow:g>=c,belowTop:f,left:h}}_layoutHorizontalSegmentInPage(a,b,c,d){let e=Math.max(15,b.left-d),f=Math.min(b.left+b.width+d,a.width-15),g=this._viewDomNode.domNode.ownerDocument.defaultView,h=b.left+c-(g?.scrollX??0);if(h+d>f){let a=h-(f-d);h-=a,c-=a}if(h<e){let a=h-e;h-=a,c-=a}return[c,h]}_layoutBoxInPage(a,b,c,d){let e=a.top-c,f=a.top+a.height,g=v.BK(this._viewDomNode.domNode),h=this._viewDomNode.domNode.ownerDocument,i=h.defaultView,j=g.top+e-(i?.scrollY??0),k=g.top+f-(i?.scrollY??0),l=v.tG(h.body),[m,n]=this._layoutHorizontalSegmentInPage(l,g,a.left-d.scrollLeft+this._contentLeft,b),o=j>=22,p=k+c<=l.height-22;return this._fixedOverflowWidgets?{fitsAbove:o,aboveTop:Math.max(j,22),fitsBelow:p,belowTop:k,left:n}:{fitsAbove:o,aboveTop:e,fitsBelow:p,belowTop:f,left:m}}_prepareRenderWidgetAtExactPositionOverflowing(a){return new bd(a.top,a.left+this._contentLeft)}_getAnchorsCoordinates(a){return{primary:b(this._primaryAnchor.viewPosition,this._affinity),secondary:b(this._secondaryAnchor.viewPosition?.lineNumber===this._primaryAnchor.viewPosition?.lineNumber?this._secondaryAnchor.viewPosition:null,this._affinity)};function b(b,c){if(!b)return null;let d=a.visibleRangeForPosition(b);if(!d)return null;let e=1===b.column&&3===c?0:d.left;return new be(a.getVerticalOffsetForLineNumber(b.lineNumber)-a.scrollTop,e,a.getLineHeightForLineNumber(b.lineNumber))}}_reduceAnchorCoordinates(a,b,c){if(!b)return a;let d=this._context.configuration.options.get(59),e=b.left;return e=e<a.left?Math.max(e,a.left-c+d.typicalFullwidthCharacterWidth):Math.min(e,a.left+c-d.typicalFullwidthCharacterWidth),new be(a.top,e,a.height)}_prepareRenderWidget(a){let b;if(!this._preference||0===this._preference.length)return null;let{primary:c,secondary:d}=this._getAnchorsCoordinates(a);if(!c)return{kind:"offViewport",preserveFocus:this.domNode.domNode.contains(this.domNode.domNode.ownerDocument.activeElement)};if(-1===this._cachedDomNodeOffsetWidth||-1===this._cachedDomNodeOffsetHeight){let a=null;if("function"==typeof this._actual.beforeRender&&(a=bf(this._actual.beforeRender,this._actual)),a)this._cachedDomNodeOffsetWidth=a.width,this._cachedDomNodeOffsetHeight=a.height;else{let a=this.domNode.domNode.getBoundingClientRect();this._cachedDomNodeOffsetWidth=Math.round(a.width),this._cachedDomNodeOffsetHeight=Math.round(a.height)}}let e=this._reduceAnchorCoordinates(c,d,this._cachedDomNodeOffsetWidth);b=this.allowEditorOverflow?this._layoutBoxInPage(e,this._cachedDomNodeOffsetWidth,this._cachedDomNodeOffsetHeight,a):this._layoutBoxInViewport(e,this._cachedDomNodeOffsetWidth,this._cachedDomNodeOffsetHeight,a);for(let a=1;a<=2;a++)for(let c of this._preference)if(1===c){if(!b)return null;if(2===a||b.fitsAbove)return{kind:"inViewport",coordinate:new bd(b.aboveTop,b.left),position:1}}else if(2===c){if(!b)return null;if(2===a||b.fitsBelow)return{kind:"inViewport",coordinate:new bd(b.belowTop,b.left),position:2}}else if(this.allowEditorOverflow)return{kind:"inViewport",coordinate:this._prepareRenderWidgetAtExactPositionOverflowing(new bd(e.top,e.left)),position:0};else return{kind:"inViewport",coordinate:new bd(e.top,e.left),position:0};return null}onBeforeRender(a){!this._primaryAnchor.viewPosition||!this._preference||this._primaryAnchor.viewPosition.lineNumber<a.startLineNumber||this._primaryAnchor.viewPosition.lineNumber>a.endLineNumber||this.domNode.setMaxWidth(this._maxWidth)}prepareRender(a){this._renderData=this._prepareRenderWidget(a)}render(a){if(!this._renderData||"offViewport"===this._renderData.kind){this._isVisible&&(this.domNode.removeAttribute("monaco-visible-content-widget"),this._isVisible=!1,this._renderData?.kind==="offViewport"&&this._renderData.preserveFocus?this.domNode.setTop(-1e3):this.domNode.setVisibility("hidden")),"function"==typeof this._actual.afterRender&&bf(this._actual.afterRender,this._actual,null,null);return}this.allowEditorOverflow?this.domNode.setTop(this._renderData.coordinate.top):this.domNode.setTop(this._renderData.coordinate.top+a.scrollTop-a.bigNumbersDelta),this.domNode.setLeft(this._renderData.coordinate.left),this._isVisible||(this.domNode.setVisibility("inherit"),this.domNode.setAttribute("monaco-visible-content-widget","true"),this._isVisible=!0),"function"==typeof this._actual.afterRender&&bf(this._actual.afterRender,this._actual,this._renderData.position,this._renderData.coordinate)}}class bc{constructor(a,b){this.modelPosition=a,this.viewPosition=b}}class bd{constructor(a,b){this.top=a,this.left=b,this._coordinateBrand=void 0}}class be{constructor(a,b,c){this.top=a,this.left=b,this.height=c,this._anchorCoordinateBrand=void 0}}function bf(a,b,...c){try{return a.call(b,...c)}catch{return null}}c(27939);class bg extends $.i{}var bh=c(80230),bi=c(14061),bj=c(30908);class bk extends bg{constructor(a){super(),this._context=a;const b=this._context.configuration.options,c=b.get(165);this._renderLineHighlight=b.get(110),this._renderLineHighlightOnlyWhenFocus=b.get(111),this._wordWrap=c.isViewportWrapping,this._contentLeft=c.contentLeft,this._contentWidth=c.contentWidth,this._selectionIsEmpty=!0,this._focused=!1,this._cursorLineNumbers=[1],this._selections=[new ay.L(1,1,1,1)],this._renderData=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),super.dispose()}_readFromSelections(){let a=!1,b=new Set;for(let a of this._selections)b.add(a.positionLineNumber);let c=Array.from(b);c.sort((a,b)=>a-b),C.aI(this._cursorLineNumbers,c)||(this._cursorLineNumbers=c,a=!0);let d=this._selections.every(a=>a.isEmpty());return this._selectionIsEmpty!==d&&(this._selectionIsEmpty=d,a=!0),a}onThemeChanged(a){return this._readFromSelections()}onConfigurationChanged(a){let b=this._context.configuration.options,c=b.get(165);return this._renderLineHighlight=b.get(110),this._renderLineHighlightOnlyWhenFocus=b.get(111),this._wordWrap=c.isViewportWrapping,this._contentLeft=c.contentLeft,this._contentWidth=c.contentWidth,!0}onCursorStateChanged(a){return this._selections=a.selections,this._readFromSelections()}onFlushed(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return a.scrollWidthChanged||a.scrollTopChanged}onZonesChanged(a){return!0}onFocusChanged(a){return!!this._renderLineHighlightOnlyWhenFocus&&(this._focused=a.isFocused,!0)}prepareRender(a){if(!this._shouldRenderThis()){this._renderData=null;return}let b=a.visibleRange.startLineNumber,c=a.visibleRange.endLineNumber,d=[];for(let a=b;a<=c;a++)d[a-b]="";if(this._wordWrap){let e=this._renderOne(a,!1);for(let a of this._cursorLineNumbers){let f=this._context.viewModel.coordinatesConverter,g=f.convertViewPositionToModelPosition(new ac.y(a,1)).lineNumber,h=f.convertModelPositionToViewPosition(new ac.y(g,1)).lineNumber,i=f.convertModelPositionToViewPosition(new ac.y(g,this._context.viewModel.model.getLineMaxColumn(g))).lineNumber,j=Math.max(h,b),k=Math.min(i,c);for(let a=j;a<=k;a++)d[a-b]=e}}let e=this._renderOne(a,!0);for(let a of this._cursorLineNumbers)a<b||a>c||(d[a-b]=e);this._renderData=d}render(a,b){if(!this._renderData)return"";let c=b-a;return c>=this._renderData.length?"":this._renderData[c]}_shouldRenderInMargin(){return("gutter"===this._renderLineHighlight||"all"===this._renderLineHighlight)&&(!this._renderLineHighlightOnlyWhenFocus||this._focused)}_shouldRenderInContent(){return("line"===this._renderLineHighlight||"all"===this._renderLineHighlight)&&this._selectionIsEmpty&&(!this._renderLineHighlightOnlyWhenFocus||this._focused)}}class bl extends bk{_renderOne(a,b){let c="current-line"+(this._shouldRenderInMargin()?" current-line-both":"")+(b?" current-line-exact":"");return`<div class="${c}" style="width:${Math.max(a.scrollWidth,this._contentWidth)}px;"></div>`}_shouldRenderThis(){return this._shouldRenderInContent()}_shouldRenderOther(){return this._shouldRenderInMargin()}}class bm extends bk{_renderOne(a,b){let c="current-line"+(this._shouldRenderInMargin()?" current-line-margin":"")+(this._shouldRenderOther()?" current-line-margin-both":"")+(this._shouldRenderInMargin()&&b?" current-line-exact-margin":"");return`<div class="${c}" style="width:${this._contentLeft}px"></div>`}_shouldRenderThis(){return!0}_shouldRenderOther(){return this._shouldRenderInContent()}}(0,bi.zy)((a,b)=>{let c=a.getColor(bh.kG);if(c&&(b.addRule(`.monaco-editor .view-overlays .current-line { background-color: ${c}; }`),b.addRule(`.monaco-editor .margin-view-overlays .current-line-margin { background-color: ${c}; border: none; }`)),!c||c.isTransparent()||a.defines(bh.Mf)){let c=a.getColor(bh.Mf);c&&(b.addRule(`.monaco-editor .view-overlays .current-line-exact { border: 2px solid ${c}; }`),b.addRule(`.monaco-editor .margin-view-overlays .current-line-exact-margin { border: 2px solid ${c}; }`),(0,bj.Bb)(a.type)&&(b.addRule(".monaco-editor .view-overlays .current-line-exact { border-width: 1px; }"),b.addRule(".monaco-editor .margin-view-overlays .current-line-exact-margin { border-width: 1px; }")))}}),c(50259);class bn extends bg{constructor(a){super(),this._context=a;const b=this._context.configuration.options;this._typicalHalfwidthCharacterWidth=b.get(59).typicalHalfwidthCharacterWidth,this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(a){let b=this._context.configuration.options;return this._typicalHalfwidthCharacterWidth=b.get(59).typicalHalfwidthCharacterWidth,!0}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return a.scrollTopChanged||a.scrollWidthChanged}onZonesChanged(a){return!0}prepareRender(a){let b=a.getDecorationsInViewport(),c=[],d=0;for(let a=0,e=b.length;a<e;a++){let e=b[a];e.options.className&&(c[d++]=e)}c=c.sort((a,b)=>{if(a.options.zIndex<b.options.zIndex)return -1;if(a.options.zIndex>b.options.zIndex)return 1;let c=a.options.className,d=b.options.className;return c<d?-1:c>d?1:ad.Q.compareRangesUsingStarts(a.range,b.range)});let e=a.visibleRange.startLineNumber,f=a.visibleRange.endLineNumber,g=[];for(let a=e;a<=f;a++)g[a-e]="";this._renderWholeLineDecorations(a,c,g),this._renderNormalDecorations(a,c,g),this._renderResult=g}_renderWholeLineDecorations(a,b,c){let d=a.visibleRange.startLineNumber,e=a.visibleRange.endLineNumber;for(let a=0,f=b.length;a<f;a++){let f=b[a];if(!f.options.isWholeLine)continue;let g='<div class="cdr '+f.options.className+'" style="left:0;width:100%;"></div>',h=Math.max(f.range.startLineNumber,d),i=Math.min(f.range.endLineNumber,e);for(let a=h;a<=i;a++){let b=a-d;c[b]+=g}}}_renderNormalDecorations(a,b,c){let d=a.visibleRange.startLineNumber,e=null,f=!1,g=null,h=!1;for(let i=0,j=b.length;i<j;i++){let j=b[i];if(j.options.isWholeLine)continue;let k=j.options.className,l=!!j.options.showIfCollapsed,m=j.range;if(l&&1===m.endColumn&&m.endLineNumber!==m.startLineNumber&&(m=new ad.Q(m.startLineNumber,m.startColumn,m.endLineNumber-1,this._context.viewModel.getLineMaxColumn(m.endLineNumber-1))),e===k&&f===l&&ad.Q.areIntersectingOrTouching(g,m)){g=ad.Q.plusRange(g,m);continue}null!==e&&this._renderNormalDecoration(a,g,e,h,f,d,c),e=k,f=l,g=m,h=j.options.shouldFillLineOnLineBreak??!1}null!==e&&this._renderNormalDecoration(a,g,e,h,f,d,c)}_renderNormalDecoration(a,b,c,d,e,f,g){let h=a.linesVisibleRangesForRange(b,"findMatch"===c);if(h)for(let a=0,b=h.length;a<b;a++){let b=h[a];if(b.outsideRenderedLine)continue;let i=b.lineNumber-f;if(e&&1===b.ranges.length){let a=b.ranges[0];if(a.width<this._typicalHalfwidthCharacterWidth){let c=Math.max(0,Math.round(Math.round(a.left+a.width/2)-this._typicalHalfwidthCharacterWidth/2));b.ranges[0]=new aY.Y(c,this._typicalHalfwidthCharacterWidth)}}for(let a=0,e=b.ranges.length;a<e;a++){let f=d&&b.continuesOnNextLine&&1===e,h=b.ranges[a],j='<div class="cdr '+c+'" style="left:'+String(h.left)+"px;width:"+(f?"100%;":String(h.width)+"px;")+'"></div>';g[i]+=j}}}render(a,b){if(!this._renderResult)return"";let c=b-a;return c<0||c>=this._renderResult.length?"":this._renderResult[c]}}class bo extends _{constructor(a,b,c,d){super(a);const e=this._context.configuration.options,f=e.get(117),g=e.get(83),h=e.get(49),i=e.get(120),j=e.get(158),k={listenOnDomNode:c.domNode,className:"editor-scrollable "+(0,bi.Pz)(a.theme.type),useShadows:!1,lazyRender:!0,vertical:f.vertical,horizontal:f.horizontal,verticalHasArrows:f.verticalHasArrows,horizontalHasArrows:f.horizontalHasArrows,verticalScrollbarSize:f.verticalScrollbarSize,verticalSliderSize:f.verticalSliderSize,horizontalScrollbarSize:f.horizontalScrollbarSize,horizontalSliderSize:f.horizontalSliderSize,handleMouseWheel:f.handleMouseWheel,alwaysConsumeMouseWheel:f.alwaysConsumeMouseWheel,arrowSize:f.arrowSize,mouseWheelScrollSensitivity:g,fastScrollSensitivity:h,scrollPredominantAxis:i,scrollByPage:f.scrollByPage,inertialScroll:j};this.scrollbar=this._register(new az.oO(b.domNode,k,this._context.viewLayout.getScrollable())),aa.write(this.scrollbar.getDomNode(),6),this.scrollbarDomNode=(0,Y.Z)(this.scrollbar.getDomNode()),this.scrollbarDomNode.setPosition("absolute"),this._setLayout();const l=(a,b,c)=>{let d={};if(b){let b=a.scrollTop;b&&(d.scrollTop=this._context.viewLayout.getCurrentScrollTop()+b,a.scrollTop=0)}if(c){let b=a.scrollLeft;b&&(d.scrollLeft=this._context.viewLayout.getCurrentScrollLeft()+b,a.scrollLeft=0)}this._context.viewModel.viewLayout.setScrollPosition(d,1)};this._register(v.ko(c.domNode,"scroll",a=>l(c.domNode,!0,!0))),this._register(v.ko(b.domNode,"scroll",a=>l(b.domNode,!0,!1))),this._register(v.ko(d.domNode,"scroll",a=>l(d.domNode,!0,!1))),this._register(v.ko(this.scrollbarDomNode.domNode,"scroll",a=>l(this.scrollbarDomNode.domNode,!0,!1)))}dispose(){super.dispose()}_setLayout(){let a=this._context.configuration.options,b=a.get(165);this.scrollbarDomNode.setLeft(b.contentLeft),"right"===a.get(81).side?this.scrollbarDomNode.setWidth(b.contentWidth+b.minimap.minimapWidth):this.scrollbarDomNode.setWidth(b.contentWidth),this.scrollbarDomNode.setHeight(b.height)}getOverviewRulerLayoutInfo(){return this.scrollbar.getOverviewRulerLayoutInfo()}getDomNode(){return this.scrollbarDomNode}delegateVerticalScrollbarPointerDown(a){this.scrollbar.delegateVerticalScrollbarPointerDown(a)}delegateScrollFromMouseWheelEvent(a){this.scrollbar.delegateScrollFromMouseWheelEvent(a)}onConfigurationChanged(a){if(a.hasChanged(117)||a.hasChanged(83)||a.hasChanged(49)){let a=this._context.configuration.options,b=a.get(117),c=a.get(83),d=a.get(49),e=a.get(120),f={vertical:b.vertical,horizontal:b.horizontal,verticalScrollbarSize:b.verticalScrollbarSize,horizontalScrollbarSize:b.horizontalScrollbarSize,scrollByPage:b.scrollByPage,handleMouseWheel:b.handleMouseWheel,mouseWheelScrollSensitivity:c,fastScrollSensitivity:d,scrollPredominantAxis:e};this.scrollbar.updateOptions(f)}return a.hasChanged(165)&&this._setLayout(),!0}onScrollChanged(a){return!0}onThemeChanged(a){return this.scrollbar.updateClassName("editor-scrollable "+(0,bi.Pz)(this._context.theme.type)),!0}prepareRender(a){}render(a){this.scrollbar.renderNow()}}c(58567);class bp{constructor(a,b,c,d,e){this.startLineNumber=a,this.endLineNumber=b,this.className=c,this.tooltip=d,this._decorationToRenderBrand=void 0,this.zIndex=e??0}}class bq{constructor(a,b,c){this.className=a,this.zIndex=b,this.tooltip=c}}class br{constructor(){this.decorations=[]}add(a){this.decorations.push(a)}getDecorations(){return this.decorations}}class bs extends bg{_render(a,b,c){let d=[];for(let c=a;c<=b;c++)d[c-a]=new br;if(0===c.length)return d;c.sort((a,b)=>a.className===b.className?a.startLineNumber===b.startLineNumber?a.endLineNumber-b.endLineNumber:a.startLineNumber-b.startLineNumber:a.className<b.className?-1:1);let e=null,f=0;for(let g=0,h=c.length;g<h;g++){let h=c[g],i=h.className,j=h.zIndex,k=Math.max(h.startLineNumber,a)-a,l=Math.min(h.endLineNumber,b)-a;e===i?(k=Math.max(f+1,k),f=Math.max(f,l)):(e=i,f=l);for(let a=k;a<=f;a++)d[a].add(new bq(i,j,h.tooltip))}return d}}class bt extends _{constructor(a){super(a),this._widgets={},this._context=a;const b=this._context.configuration.options,c=b.get(165);this.domNode=(0,Y.Z)(document.createElement("div")),this.domNode.setClassName("glyph-margin-widgets"),this.domNode.setPosition("absolute"),this.domNode.setTop(0),this._lineHeight=b.get(75),this._glyphMargin=b.get(66),this._glyphMarginLeft=c.glyphMarginLeft,this._glyphMarginWidth=c.glyphMarginWidth,this._glyphMarginDecorationLaneCount=c.glyphMarginDecorationLaneCount,this._managedDomNodes=[],this._decorationGlyphsToRender=[]}dispose(){this._managedDomNodes=[],this._decorationGlyphsToRender=[],this._widgets={},super.dispose()}getWidgets(){return Object.values(this._widgets)}onConfigurationChanged(a){let b=this._context.configuration.options,c=b.get(165);return this._lineHeight=b.get(75),this._glyphMargin=b.get(66),this._glyphMarginLeft=c.glyphMarginLeft,this._glyphMarginWidth=c.glyphMarginWidth,this._glyphMarginDecorationLaneCount=c.glyphMarginDecorationLaneCount,!0}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return a.scrollTopChanged}onZonesChanged(a){return!0}addWidget(a){let b=(0,Y.Z)(a.getDomNode());this._widgets[a.getId()]={widget:a,preference:a.getPosition(),domNode:b,renderInfo:null},b.setPosition("absolute"),b.setDisplay("none"),b.setAttribute("widgetId",a.getId()),this.domNode.appendChild(b),this.setShouldRender()}setWidgetPosition(a,b){let c=this._widgets[a.getId()];return!(c.preference.lane===b.lane&&c.preference.zIndex===b.zIndex&&ad.Q.equalsRange(c.preference.range,b.range))&&(c.preference=b,this.setShouldRender(),!0)}removeWidget(a){let b=a.getId();if(this._widgets[b]){let a=this._widgets[b].domNode.domNode;delete this._widgets[b],a.remove(),this.setShouldRender()}}_collectDecorationBasedGlyphRenderRequest(a,b){let c=a.visibleRange.startLineNumber,d=a.visibleRange.endLineNumber;for(let e of a.getDecorationsInViewport()){let a=e.options.glyphMarginClassName;if(!a)continue;let f=Math.max(e.range.startLineNumber,c),g=Math.min(e.range.endLineNumber,d),h=e.options.glyphMargin?.position??ag.ZS.Center,i=e.options.zIndex??0;for(let c=f;c<=g;c++){let d=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new ac.y(c,0)),e=this._context.viewModel.glyphLanes.getLanesAtLine(d.lineNumber).indexOf(h);b.push(new bu(c,e,i,a))}}}_collectWidgetBasedGlyphRenderRequest(a,b){let c=a.visibleRange.startLineNumber,d=a.visibleRange.endLineNumber;for(let a of Object.values(this._widgets)){let e=a.preference.range,{startLineNumber:f,endLineNumber:g}=this._context.viewModel.coordinatesConverter.convertModelRangeToViewRange(ad.Q.lift(e));if(!f||!g||g<c||f>d)continue;let h=Math.max(f,c),i=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new ac.y(h,0)),j=this._context.viewModel.glyphLanes.getLanesAtLine(i.lineNumber).indexOf(a.preference.lane);b.push(new bv(h,j,a.preference.zIndex,a))}}_collectSortedGlyphRenderRequests(a){let b=[];return this._collectDecorationBasedGlyphRenderRequest(a,b),this._collectWidgetBasedGlyphRenderRequest(a,b),b.sort((a,b)=>{if(a.lineNumber===b.lineNumber){if(a.laneIndex===b.laneIndex){if(a.zIndex===b.zIndex)return b.type===a.type?0===a.type&&0===b.type?a.className<b.className?-1:1:0:b.type-a.type;return b.zIndex-a.zIndex}return a.laneIndex-b.laneIndex}return a.lineNumber-b.lineNumber}),b}prepareRender(a){if(!this._glyphMargin){this._decorationGlyphsToRender=[];return}for(let a of Object.values(this._widgets))a.renderInfo=null;let b=new C.j3(this._collectSortedGlyphRenderRequests(a)),c=[];for(;b.length>0;){let a=b.peek();if(!a)break;let d=b.takeWhile(b=>b.lineNumber===a.lineNumber&&b.laneIndex===a.laneIndex);if(!d||0===d.length)break;let e=d[0];if(0===e.type){let a=[];for(let b of d){if(b.zIndex!==e.zIndex||b.type!==e.type)break;(0===a.length||a[a.length-1]!==b.className)&&a.push(b.className)}c.push(e.accept(a.join(" ")))}else e.widget.renderInfo={lineNumber:e.lineNumber,laneIndex:e.laneIndex}}this._decorationGlyphsToRender=c}render(a){if(!this._glyphMargin){for(let a of Object.values(this._widgets))a.domNode.setDisplay("none");for(;this._managedDomNodes.length>0;){let a=this._managedDomNodes.pop();a?.domNode.remove()}return}let b=Math.round(this._glyphMarginWidth/this._glyphMarginDecorationLaneCount);for(let c of Object.values(this._widgets))if(c.renderInfo){let d=a.viewportData.relativeVerticalOffset[c.renderInfo.lineNumber-a.viewportData.startLineNumber],e=this._glyphMarginLeft+c.renderInfo.laneIndex*this._lineHeight;c.domNode.setDisplay("block"),c.domNode.setTop(d),c.domNode.setLeft(e),c.domNode.setWidth(b),c.domNode.setHeight(this._lineHeight)}else c.domNode.setDisplay("none");for(let c=0;c<this._decorationGlyphsToRender.length;c++){let d,e=this._decorationGlyphsToRender[c],f=e.lineNumber,g=a.viewportData.relativeVerticalOffset[f-a.viewportData.startLineNumber],h=this._glyphMarginLeft+e.laneIndex*this._lineHeight;c<this._managedDomNodes.length?d=this._managedDomNodes[c]:(d=(0,Y.Z)(document.createElement("div")),this._managedDomNodes.push(d),this.domNode.appendChild(d));let i=this._context.viewLayout.getLineHeightForLineNumber(f);d.setClassName("cgmr codicon "+e.combinedClassName),d.setPosition("absolute"),d.setTop(g),d.setLeft(h),d.setWidth(b),d.setHeight(i)}for(;this._managedDomNodes.length>this._decorationGlyphsToRender.length;){let a=this._managedDomNodes.pop();a?.domNode.remove()}}}class bu{constructor(a,b,c,d){this.lineNumber=a,this.laneIndex=b,this.zIndex=c,this.className=d,this.type=0}accept(a){return new bw(this.lineNumber,this.laneIndex,a)}}class bv{constructor(a,b,c,d){this.lineNumber=a,this.laneIndex=b,this.zIndex=c,this.widget=d,this.type=1}}class bw{constructor(a,b,c){this.lineNumber=a,this.laneIndex=b,this.combinedClassName=c}}c(24783);var bx=c(98896),by=c(20393),bz=c(29995);class bA extends bg{constructor(a){super(),this._context=a,this._primaryPosition=null;const b=this._context.configuration.options,c=b.get(166),d=b.get(59);this._spaceWidth=d.spaceWidth,this._maxIndentLeft=-1===c.wrappingColumn?-1:c.wrappingColumn*d.typicalHalfwidthCharacterWidth,this._bracketPairGuideOptions=b.get(22),this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(a){let b=this._context.configuration.options,c=b.get(166),d=b.get(59);return this._spaceWidth=d.spaceWidth,this._maxIndentLeft=-1===c.wrappingColumn?-1:c.wrappingColumn*d.typicalHalfwidthCharacterWidth,this._bracketPairGuideOptions=b.get(22),!0}onCursorStateChanged(a){let b=a.selections[0].getPosition();return!this._primaryPosition?.equals(b)&&(this._primaryPosition=b,!0)}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return a.scrollTopChanged}onZonesChanged(a){return!0}onLanguageConfigurationChanged(a){return!0}prepareRender(a){if(!this._bracketPairGuideOptions.indentation&&!1===this._bracketPairGuideOptions.bracketPairs){this._renderResult=null;return}let b=a.visibleRange.startLineNumber,c=a.visibleRange.endLineNumber,d=a.scrollWidth,e=this._primaryPosition,f=this.getGuidesByLine(b,Math.min(c+1,this._context.viewModel.getLineCount()),e),g=[];for(let e=b;e<=c;e++){let c=e-b,h=f[c],i="",j=a.visibleRangeForPosition(new ac.y(e,1))?.left??0;for(let b of h){let c=-1===b.column?j+(b.visibleColumn-1)*this._spaceWidth:a.visibleRangeForPosition(new ac.y(e,b.column)).left;if(c>d||this._maxIndentLeft>0&&c>this._maxIndentLeft)break;let f=b.horizontalLine?b.horizontalLine.top?"horizontal-top":"horizontal-bottom":"vertical",g=b.horizontalLine?(a.visibleRangeForPosition(new ac.y(e,b.horizontalLine.endColumn))?.left??c+this._spaceWidth)-c:this._spaceWidth;i+=`<div class="core-guide ${b.className} ${f}" style="left:${c}px;width:${g}px"></div>`}g[c]=i}this._renderResult=g}getGuidesByLine(a,b,c){let d=!1!==this._bracketPairGuideOptions.bracketPairs?this._context.viewModel.getBracketGuidesInRangeByLine(a,b,c,{highlightActive:this._bracketPairGuideOptions.highlightActiveBracketPair,horizontalGuides:!0===this._bracketPairGuideOptions.bracketPairsHorizontal?bz.N6.Enabled:"active"===this._bracketPairGuideOptions.bracketPairsHorizontal?bz.N6.EnabledForActive:bz.N6.Disabled,includeInactive:!0===this._bracketPairGuideOptions.bracketPairs}):null,e=this._bracketPairGuideOptions.indentation?this._context.viewModel.getLinesIndentGuides(a,b):null,f=0,g=0,h=0;if(!1!==this._bracketPairGuideOptions.highlightActiveIndentation&&c){let d=this._context.viewModel.getActiveIndentGuide(c.lineNumber,a,b);f=d.startLineNumber,g=d.endLineNumber,h=d.indent}let{indentSize:i}=this._context.viewModel.model.getOptions(),j=[];for(let c=a;c<=b;c++){let b=[];j.push(b);let k=d?d[c-a]:[],l=new C.j3(k),m=e?e[c-a]:0;for(let a=1;a<=m;a++){let d=(a-1)*i+1,e=("always"===this._bracketPairGuideOptions.highlightActiveIndentation||0===k.length)&&f<=c&&c<=g&&a===h;b.push(...l.takeWhile(a=>a.visibleColumn<d)||[]);let j=l.peek();(!j||j.visibleColumn!==d||j.horizontalLine)&&b.push(new bz.TH(d,-1,`core-guide-indent lvl-${(a-1)%30}`+(e?" indent-active":""),null,-1,-1))}b.push(...l.takeWhile(a=>!0)||[])}return j}render(a,b){if(!this._renderResult)return"";let c=b-a;return c<0||c>=this._renderResult.length?"":this._renderResult[c]}}function bB(a){if(!(a&&a.isTransparent()))return a}(0,bi.zy)((a,b)=>{let c=[{bracketColor:bh.sN,guideColor:bh.n4,guideColorActive:bh.bB},{bracketColor:bh.lQ,guideColor:bh.I2,guideColorActive:bh.WS},{bracketColor:bh.ss,guideColor:bh.Bo,guideColorActive:bh.Pe},{bracketColor:bh.l5,guideColor:bh.If,guideColorActive:bh.WD},{bracketColor:bh.sH,guideColor:bh.BD,guideColorActive:bh.P1},{bracketColor:bh.zp,guideColor:bh.IW,guideColorActive:bh.WY}],d=new by.k,e=[{indentColor:bh.vV,indentColorActive:bh.H0},{indentColor:bh.ob,indentColorActive:bh.Am},{indentColor:bh.hz,indentColorActive:bh.tK},{indentColor:bh.ow,indentColorActive:bh.A3},{indentColor:bh.vP,indentColorActive:bh.tp},{indentColor:bh.CM,indentColorActive:bh.As}],f=c.map(b=>{let c=a.getColor(b.bracketColor),d=a.getColor(b.guideColor),e=a.getColor(b.guideColorActive),f=bB(bB(d)??c?.transparent(.3)),g=bB(bB(e)??c);if(f&&g)return{guideColor:f,guideColorActive:g}}).filter(bx.O9),g=e.map(b=>{let c=a.getColor(b.indentColor),d=a.getColor(b.indentColorActive),e=bB(c),f=bB(d);if(e&&f)return{indentColor:e,indentColorActive:f}}).filter(bx.O9);if(f.length>0){for(let a=0;a<30;a++){let c=f[a%f.length];b.addRule(`.monaco-editor .${d.getInlineClassNameOfLevel(a).replace(/ /g,".")} { --guide-color: ${c.guideColor}; --guide-color-active: ${c.guideColorActive}; }`)}b.addRule(".monaco-editor .vertical { box-shadow: 1px 0 0 0 var(--guide-color) inset; }"),b.addRule(".monaco-editor .horizontal-top { border-top: 1px solid var(--guide-color); }"),b.addRule(".monaco-editor .horizontal-bottom { border-bottom: 1px solid var(--guide-color); }"),b.addRule(`.monaco-editor .vertical.${d.activeClassName} { box-shadow: 1px 0 0 0 var(--guide-color-active) inset; }`),b.addRule(`.monaco-editor .horizontal-top.${d.activeClassName} { border-top: 1px solid var(--guide-color-active); }`),b.addRule(`.monaco-editor .horizontal-bottom.${d.activeClassName} { border-bottom: 1px solid var(--guide-color-active); }`)}if(g.length>0){for(let a=0;a<30;a++){let c=g[a%g.length];b.addRule(`.monaco-editor .lines-content .core-guide-indent.lvl-${a} { --indent-color: ${c.indentColor}; --indent-color-active: ${c.indentColorActive}; }`)}b.addRule(".monaco-editor .lines-content .core-guide-indent { box-shadow: 1px 0 0 0 var(--indent-color) inset; }"),b.addRule(".monaco-editor .lines-content .core-guide-indent.indent-active { box-shadow: 1px 0 0 0 var(--indent-color-active) inset; }")}}),c(77439);class bC extends bg{static{this.CLASS_NAME="line-numbers"}constructor(a){super(),this._context=a,this._readConfig(),this._lastCursorModelPosition=new ac.y(1,1),this._renderResult=null,this._activeModelLineNumber=1,this._context.addEventHandler(this)}_readConfig(){let a=this._context.configuration.options;this._lineHeight=a.get(75);let b=a.get(76);this._renderLineNumbers=b.renderType,this._renderCustomLineNumbers=b.renderFn,this._renderFinalNewline=a.get(109);let c=a.get(165);this._lineNumbersLeft=c.lineNumbersLeft,this._lineNumbersWidth=c.lineNumbersWidth}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(a){return this._readConfig(),!0}onCursorStateChanged(a){let b=a.selections[0].getPosition();this._lastCursorModelPosition=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(b);let c=!1;return this._activeModelLineNumber!==this._lastCursorModelPosition.lineNumber&&(this._activeModelLineNumber=this._lastCursorModelPosition.lineNumber,c=!0),(2===this._renderLineNumbers||3===this._renderLineNumbers)&&(c=!0),c}onFlushed(a){return!0}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return a.scrollTopChanged}onZonesChanged(a){return!0}onDecorationsChanged(a){return a.affectsLineNumber}_getLineRenderLineNumber(a){let b=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new ac.y(a,1));if(1!==b.column)return"";let c=b.lineNumber;if(this._renderCustomLineNumbers)return this._renderCustomLineNumbers(c);if(2===this._renderLineNumbers){let a=Math.abs(this._lastCursorModelPosition.lineNumber-c);return 0===a?'<span class="relative-current-line-number">'+c+"</span>":String(a)}return 3===this._renderLineNumbers?this._lastCursorModelPosition.lineNumber===c||c%10==0||c===this._context.viewModel.getLineCount()?String(c):"":String(c)}prepareRender(a){if(0===this._renderLineNumbers){this._renderResult=null;return}let b=E.j9?this._lineHeight%2==0?" lh-even":" lh-odd":"",c=a.visibleRange.startLineNumber,d=a.visibleRange.endLineNumber,e=this._context.viewModel.getDecorationsInViewport(a.visibleRange).filter(a=>!!a.options.lineNumberClassName);e.sort((a,b)=>ad.Q.compareRangesUsingEnds(a.range,b.range));let f=0,g=this._context.viewModel.getLineCount(),h=[];for(let a=c;a<=d;a++){let d=a-c,i=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new ac.y(a,1)).lineNumber,j=this._getLineRenderLineNumber(a),k="";for(;f<e.length&&e[f].range.endLineNumber<a;)f++;for(let b=f;b<e.length;b++){let{range:c,options:d}=e[b];c.startLineNumber<=a&&(k+=" "+d.lineNumberClassName)}if(!j&&!k){h[d]="";continue}a===g&&0===this._context.viewModel.getLineLength(a)&&("off"===this._renderFinalNewline&&(j=""),"dimmed"===this._renderFinalNewline&&(k+=" dimmed-line-number")),i===this._activeModelLineNumber&&(k+=" active-line-number"),h[d]=`<div class="${bC.CLASS_NAME}${b}${k}" style="left:${this._lineNumbersLeft}px;width:${this._lineNumbersWidth}px;">${j}</div>`}this._renderResult=h}render(a,b){if(!this._renderResult)return"";let c=b-a;return c<0||c>=this._renderResult.length?"":this._renderResult[c]}}(0,bi.zy)((a,b)=>{let c=a.getColor(bh.Qt),d=a.getColor(bh.JB);d?b.addRule(`.monaco-editor .line-numbers.dimmed-line-number { color: ${d}; }`):c&&b.addRule(`.monaco-editor .line-numbers.dimmed-line-number { color: ${c.transparent(.4)}; }`)}),c(64032);let bD="monaco-mouse-cursor-text";c(10711);class bE{get didDomLayout(){return this._didDomLayout}readClientRect(){if(!this._clientRectRead){this._clientRectRead=!0;let a=this._domNode.getBoundingClientRect();this.markDidDomLayout(),this._clientRectDeltaLeft=a.left,this._clientRectScale=a.width/this._domNode.offsetWidth}}get clientRectDeltaLeft(){return this._clientRectRead||this.readClientRect(),this._clientRectDeltaLeft}get clientRectScale(){return this._clientRectRead||this.readClientRect(),this._clientRectScale}constructor(a,b){this._domNode=a,this.endNode=b,this._didDomLayout=!1,this._clientRectDeltaLeft=0,this._clientRectScale=1,this._clientRectRead=!1}markDidDomLayout(){this._didDomLayout=!0}}class bF{constructor(a,b){this.themeType=b;const c=a.options,d=c.get(59);this.renderWhitespace=c.get(113),this.experimentalWhitespaceRendering=c.get(47),this.renderControlCharacters=c.get(108),this.spaceWidth=d.spaceWidth,this.middotWidth=d.middotWidth,this.wsmiddotWidth=d.wsmiddotWidth,this.useMonospaceOptimizations=d.isMonospace&&!c.get(40),this.canUseHalfwidthRightwardsArrow=d.canUseHalfwidthRightwardsArrow,this.lineHeight=c.get(75),this.stopRenderingLineAfter=c.get(133),this.fontLigatures=c.get(60),this.verticalScrollbarSize=c.get(117).verticalScrollbarSize,this.useGpu="on"===c.get(46)}equals(a){return this.themeType===a.themeType&&this.renderWhitespace===a.renderWhitespace&&this.experimentalWhitespaceRendering===a.experimentalWhitespaceRendering&&this.renderControlCharacters===a.renderControlCharacters&&this.spaceWidth===a.spaceWidth&&this.middotWidth===a.middotWidth&&this.wsmiddotWidth===a.wsmiddotWidth&&this.useMonospaceOptimizations===a.useMonospaceOptimizations&&this.canUseHalfwidthRightwardsArrow===a.canUseHalfwidthRightwardsArrow&&this.lineHeight===a.lineHeight&&this.stopRenderingLineAfter===a.stopRenderingLineAfter&&this.fontLigatures===a.fontLigatures&&this.verticalScrollbarSize===a.verticalScrollbarSize&&this.useGpu===a.useGpu}}class bG{constructor(){this._currentVisibleRange=new ad.Q(1,1,1,1)}getCurrentVisibleRange(){return this._currentVisibleRange}setCurrentVisibleRange(a){this._currentVisibleRange=a}}class bH{constructor(a,b,c,d,e,f,g){this.minimalReveal=a,this.lineNumber=b,this.startColumn=c,this.endColumn=d,this.startScrollTop=e,this.stopScrollTop=f,this.scrollType=g,this.type="range",this.minLineNumber=b,this.maxLineNumber=b}}class bI{constructor(a,b,c,d,e){this.minimalReveal=a,this.selections=b,this.startScrollTop=c,this.stopScrollTop=d,this.scrollType=e,this.type="selections";let f=b[0].startLineNumber,g=b[0].endLineNumber;for(let a=1,c=b.length;a<c;a++){const c=b[a];f=Math.min(f,c.startLineNumber),g=Math.max(g,c.endLineNumber)}this.minLineNumber=f,this.maxLineNumber=g}}class bJ extends _{static{this.HORIZONTAL_EXTRA_PX=30}constructor(a,b,c){super(a);const d=this._context.configuration,e=this._context.configuration.options,f=e.get(59),g=e.get(166);this._lineHeight=e.get(75),this._typicalHalfwidthCharacterWidth=f.typicalHalfwidthCharacterWidth,this._isViewportWrapping=g.isViewportWrapping,this._revealHorizontalRightPadding=e.get(114),this._cursorSurroundingLines=e.get(35),this._cursorSurroundingLinesStyle=e.get(36),this._canUseLayerHinting=!e.get(39),this._viewLineOptions=new bF(d,this._context.theme.type),this._linesContent=c,this._textRangeRestingSpot=document.createElement("div"),this._visibleLines=new a2(this._context,{createLine:()=>new ab.G(b,this._viewLineOptions)}),this.domNode=this._visibleLines.domNode,aa.write(this.domNode,8),this.domNode.setClassName(`view-lines ${bD}`),(0,A.M)(this.domNode,f),this._maxLineWidth=0,this._asyncUpdateLineWidths=new aL.uC(()=>{this._updateLineWidthsSlow()},200),this._asyncCheckMonospaceFontAssumptions=new aL.uC(()=>{this._checkMonospaceFontAssumptions()},2e3),this._lastRenderedData=new bG,this._horizontalRevealRequest=null,this._stickyScrollEnabled=e.get(131).enabled,this._maxNumberStickyLines=e.get(131).maxLineCount}dispose(){this._asyncUpdateLineWidths.dispose(),this._asyncCheckMonospaceFontAssumptions.dispose(),super.dispose()}getDomNode(){return this.domNode}onConfigurationChanged(a){this._visibleLines.onConfigurationChanged(a),a.hasChanged(166)&&(this._maxLineWidth=0);let b=this._context.configuration.options,c=b.get(59),d=b.get(166);return this._lineHeight=b.get(75),this._typicalHalfwidthCharacterWidth=c.typicalHalfwidthCharacterWidth,this._isViewportWrapping=d.isViewportWrapping,this._revealHorizontalRightPadding=b.get(114),this._cursorSurroundingLines=b.get(35),this._cursorSurroundingLinesStyle=b.get(36),this._canUseLayerHinting=!b.get(39),this._stickyScrollEnabled=b.get(131).enabled,this._maxNumberStickyLines=b.get(131).maxLineCount,(0,A.M)(this.domNode,c),this._onOptionsMaybeChanged(),a.hasChanged(165)&&(this._maxLineWidth=0),!0}_onOptionsMaybeChanged(){let a=new bF(this._context.configuration,this._context.theme.type);if(!this._viewLineOptions.equals(a)){this._viewLineOptions=a;let b=this._visibleLines.getStartLineNumber(),c=this._visibleLines.getEndLineNumber();for(let a=b;a<=c;a++)this._visibleLines.getVisibleLine(a).onOptionsChanged(this._viewLineOptions);return!0}return!1}onCursorStateChanged(a){let b=this._visibleLines.getStartLineNumber(),c=this._visibleLines.getEndLineNumber(),d=!1;for(let a=b;a<=c;a++)d=this._visibleLines.getVisibleLine(a).onSelectionChanged()||d;return d}onDecorationsChanged(a){{let a=this._visibleLines.getStartLineNumber(),b=this._visibleLines.getEndLineNumber();for(let c=a;c<=b;c++)this._visibleLines.getVisibleLine(c).onDecorationsChanged()}return!0}onFlushed(a){let b=this._visibleLines.onFlushed(a,this._viewLineOptions.useGpu);return this._maxLineWidth=0,b}onLinesChanged(a){return this._visibleLines.onLinesChanged(a)}onLinesDeleted(a){return this._visibleLines.onLinesDeleted(a)}onLinesInserted(a){return this._visibleLines.onLinesInserted(a)}onRevealRangeRequest(a){let b=this._computeScrollTopToRevealRange(this._context.viewLayout.getFutureViewport(),a.source,a.minimalReveal,a.range,a.selections,a.verticalType);if(-1===b)return!1;let c=this._context.viewLayout.validateScrollPosition({scrollTop:b});a.revealHorizontal?a.range&&a.range.startLineNumber!==a.range.endLineNumber?c={scrollTop:c.scrollTop,scrollLeft:0}:a.range?this._horizontalRevealRequest=new bH(a.minimalReveal,a.range.startLineNumber,a.range.startColumn,a.range.endColumn,this._context.viewLayout.getCurrentScrollTop(),c.scrollTop,a.scrollType):a.selections&&a.selections.length>0&&(this._horizontalRevealRequest=new bI(a.minimalReveal,a.selections,this._context.viewLayout.getCurrentScrollTop(),c.scrollTop,a.scrollType)):this._horizontalRevealRequest=null;let d=Math.abs(this._context.viewLayout.getCurrentScrollTop()-c.scrollTop)<=this._lineHeight?1:a.scrollType;return this._context.viewModel.viewLayout.setScrollPosition(c,d),!0}onScrollChanged(a){if(this._horizontalRevealRequest&&a.scrollLeftChanged&&(this._horizontalRevealRequest=null),this._horizontalRevealRequest&&a.scrollTopChanged){let b=Math.min(this._horizontalRevealRequest.startScrollTop,this._horizontalRevealRequest.stopScrollTop),c=Math.max(this._horizontalRevealRequest.startScrollTop,this._horizontalRevealRequest.stopScrollTop);(a.scrollTop<b||a.scrollTop>c)&&(this._horizontalRevealRequest=null)}return this.domNode.setWidth(a.scrollWidth),this._visibleLines.onScrollChanged(a)||!0}onTokensChanged(a){return this._visibleLines.onTokensChanged(a)}onZonesChanged(a){return this._context.viewModel.viewLayout.setMaxLineWidth(this._maxLineWidth),this._visibleLines.onZonesChanged(a)}onThemeChanged(a){return this._onOptionsMaybeChanged()}getPositionFromDOMInfo(a,b){let c=this._getViewLineDomNode(a);if(null===c)return null;let d=this._getLineNumberFor(c);if(-1===d||d<1||d>this._context.viewModel.getLineCount())return null;if(1===this._context.viewModel.getLineMaxColumn(d))return new ac.y(d,1);let e=this._visibleLines.getStartLineNumber(),f=this._visibleLines.getEndLineNumber();if(d<e||d>f)return null;let g=this._visibleLines.getVisibleLine(d).getColumnOfNodeOffset(a,b),h=this._context.viewModel.getLineMinColumn(d);return g<h&&(g=h),new ac.y(d,g)}_getViewLineDomNode(a){for(;a&&1===a.nodeType;){if(a.className===ab.G.CLASS_NAME)return a;a=a.parentElement}return null}_getLineNumberFor(a){let b=this._visibleLines.getStartLineNumber(),c=this._visibleLines.getEndLineNumber();for(let d=b;d<=c;d++)if(a===this._visibleLines.getVisibleLine(d).getDomNode())return d;return -1}getLineWidth(a){let b=this._visibleLines.getStartLineNumber(),c=this._visibleLines.getEndLineNumber();if(a<b||a>c)return -1;let d=new bE(this.domNode.domNode,this._textRangeRestingSpot),e=this._visibleLines.getVisibleLine(a).getWidth(d);return this._updateLineWidthsSlowIfDomDidLayout(d),e}linesVisibleRangesForRange(a,b){if(this.shouldRender())return null;let c=a.endLineNumber,d=ad.Q.intersectRanges(a,this._lastRenderedData.getCurrentVisibleRange());if(!d)return null;let e=[],f=0,g=new bE(this.domNode.domNode,this._textRangeRestingSpot),h=0;b&&(h=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new ac.y(d.startLineNumber,1)).lineNumber);let i=this._visibleLines.getStartLineNumber(),j=this._visibleLines.getEndLineNumber();for(let a=d.startLineNumber;a<=d.endLineNumber;a++){if(a<i||a>j)continue;let k=a===d.startLineNumber?d.startColumn:1,l=a!==c,m=l?this._context.viewModel.getLineMaxColumn(a):d.endColumn,n=this._visibleLines.getVisibleLine(a).getVisibleRangesForRange(a,k,m,g);if(n){if(b&&a<c){let b=h;if(b!==(h=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new ac.y(a+1,1)).lineNumber)){let a=n.ranges[n.ranges.length-1];a.width+=this._typicalHalfwidthCharacterWidth,this._context.viewModel.getTextDirection(b)===ag.z4.RTL&&(a.left-=this._typicalHalfwidthCharacterWidth)}}e[f++]=new aY.BG(n.outsideRenderedLine,a,aY.Y.from(n.ranges),l)}}return(this._updateLineWidthsSlowIfDomDidLayout(g),0===f)?null:e}_visibleRangesForLineRange(a,b,c){if(this.shouldRender()||a<this._visibleLines.getStartLineNumber()||a>this._visibleLines.getEndLineNumber())return null;let d=new bE(this.domNode.domNode,this._textRangeRestingSpot),e=this._visibleLines.getVisibleLine(a).getVisibleRangesForRange(a,b,c,d);return this._updateLineWidthsSlowIfDomDidLayout(d),e}_lineIsRenderedRTL(a){return!(a<this._visibleLines.getStartLineNumber()||a>this._visibleLines.getEndLineNumber())&&this._visibleLines.getVisibleLine(a).isRenderedRTL()}visibleRangeForPosition(a){let b=this._visibleRangesForLineRange(a.lineNumber,a.column,a.column);return b?new aY.qN(b.outsideRenderedLine,b.ranges[0].left):null}_updateLineWidthsFast(){return this._updateLineWidths(!0)}_updateLineWidthsSlow(){this._updateLineWidths(!1)}_updateLineWidthsSlowIfDomDidLayout(a){!a.didDomLayout||this._asyncUpdateLineWidths.isScheduled()||(this._asyncUpdateLineWidths.cancel(),this._updateLineWidthsSlow())}_updateLineWidths(a){let b=this._visibleLines.getStartLineNumber(),c=this._visibleLines.getEndLineNumber(),d=1,e=!0;for(let f=b;f<=c;f++){let b=this._visibleLines.getVisibleLine(f);if(a&&!b.getWidthIsFast()){e=!1;continue}d=Math.max(d,b.getWidth(null))}return e&&1===b&&c===this._context.viewModel.getLineCount()&&(this._maxLineWidth=0),this._ensureMaxLineWidth(d),e}_checkMonospaceFontAssumptions(){let a=-1,b=-1,c=this._visibleLines.getStartLineNumber(),d=this._visibleLines.getEndLineNumber();for(let e=c;e<=d;e++){let c=this._visibleLines.getVisibleLine(e);if(c.needsMonospaceFontCheck()){let d=c.getWidth(null);d>b&&(b=d,a=e)}}if(-1!==a&&!this._visibleLines.getVisibleLine(a).monospaceAssumptionsAreValid())for(let a=c;a<=d;a++)this._visibleLines.getVisibleLine(a).onMonospaceAssumptionsInvalidated()}prepareRender(){throw Error("Not supported")}render(){throw Error("Not supported")}renderText(a){if(this._visibleLines.renderLines(a),this._lastRenderedData.setCurrentVisibleRange(a.visibleRange),this.domNode.setWidth(this._context.viewLayout.getScrollWidth()),this.domNode.setHeight(Math.min(this._context.viewLayout.getScrollHeight(),1e6)),this._horizontalRevealRequest){let b=this._horizontalRevealRequest;if(a.startLineNumber<=b.minLineNumber&&b.maxLineNumber<=a.endLineNumber){this._horizontalRevealRequest=null,this.onDidRender();let a=this._computeScrollLeftToReveal(b);a&&(this._isViewportWrapping||a.hasRTL||this._ensureMaxLineWidth(a.maxHorizontalOffset),this._context.viewModel.viewLayout.setScrollPosition({scrollLeft:a.scrollLeft},b.scrollType))}}if(this._updateLineWidthsFast()?this._asyncUpdateLineWidths.cancel():this._asyncUpdateLineWidths.schedule(),E.j9&&!this._asyncCheckMonospaceFontAssumptions.isScheduled()){let a=this._visibleLines.getStartLineNumber(),b=this._visibleLines.getEndLineNumber();for(let c=a;c<=b;c++)if(this._visibleLines.getVisibleLine(c).needsMonospaceFontCheck()){this._asyncCheckMonospaceFontAssumptions.schedule();break}}this._linesContent.setLayerHinting(this._canUseLayerHinting),this._linesContent.setContain("strict");let b=this._context.viewLayout.getCurrentScrollTop()-a.bigNumbersDelta;this._linesContent.setTop(-b),this._linesContent.setLeft(-this._context.viewLayout.getCurrentScrollLeft())}_ensureMaxLineWidth(a){let b=Math.ceil(a);this._maxLineWidth<b&&(this._maxLineWidth=b,this._context.viewModel.viewLayout.setMaxLineWidth(this._maxLineWidth))}_computeScrollTopToRevealRange(a,b,c,d,e,f){let g,h,i,j,k=a.top,l=a.height,m=k+l;if(e&&e.length>0){let a=e[0].startLineNumber,b=e[0].endLineNumber;for(let c=1,d=e.length;c<d;c++){let d=e[c];a=Math.min(a,d.startLineNumber),b=Math.max(b,d.endLineNumber)}g=!1,h=this._context.viewLayout.getVerticalOffsetForLineNumber(a),i=this._context.viewLayout.getVerticalOffsetForLineNumber(b)+this._lineHeight}else{if(!d)return -1;g=!0,h=this._context.viewLayout.getVerticalOffsetForLineNumber(d.startLineNumber),i=this._context.viewLayout.getVerticalOffsetForLineNumber(d.endLineNumber)+this._lineHeight}let n=("mouse"===b||c)&&"default"===this._cursorSurroundingLinesStyle,o=0,p=0;if(n)c||(o=this._lineHeight);else{let a=Math.min(l/this._lineHeight/2,Math.max(this._cursorSurroundingLines,this._stickyScrollEnabled?this._maxNumberStickyLines:0));o=a*this._lineHeight,p=Math.max(0,a-1)*this._lineHeight}if(c||0!==f&&4!==f||(p+=this._lineHeight),h-=o,(i+=p)-h>l){if(!g)return -1;j=h}else if(5===f||6===f)if(6===f&&k<=h&&i<=m)j=k;else{let a=h-Math.max(5*this._lineHeight,.2*l);j=Math.max(i-l,a)}else j=1===f||2===f?2===f&&k<=h&&i<=m?k:Math.max(0,(h+i)/2-l/2):this._computeMinimumScrolling(k,m,h,i,3===f,4===f);return j}_computeScrollLeftToReveal(a){let b=this._context.viewLayout.getCurrentViewport(),c=this._context.configuration.options.get(165),d=b.left,e=d+b.width-c.verticalScrollbarWidth,f=0x40000000,g=0,h=!1;if("range"===a.type){h=this._lineIsRenderedRTL(a.lineNumber);let b=this._visibleRangesForLineRange(a.lineNumber,a.startColumn,a.endColumn);if(!b)return null;for(let a of b.ranges)f=Math.min(f,Math.round(a.left)),g=Math.max(g,Math.round(a.left+a.width))}else for(let b of a.selections){if(b.startLineNumber!==b.endLineNumber)return null;let a=this._visibleRangesForLineRange(b.startLineNumber,b.startColumn,b.endColumn);if(h||=this._lineIsRenderedRTL(b.startLineNumber),!a)return null;for(let b of a.ranges)f=Math.min(f,Math.round(b.left)),g=Math.max(g,Math.round(b.left+b.width))}return(a.minimalReveal||(f=Math.max(0,f-bJ.HORIZONTAL_EXTRA_PX),g+=this._revealHorizontalRightPadding),"selections"===a.type&&g-f>b.width)?null:{scrollLeft:this._computeMinimumScrolling(d,e,f,g),maxHorizontalOffset:g,hasRTL:h}}_computeMinimumScrolling(a,b,c,d,e,f){a|=0,b|=0,c|=0,d|=0,e=!!e,f=!!f;let g=b-a;return!(d-c<g)||e?c:f?Math.max(0,d-g):c<a?c:d>b?Math.max(0,d-g):a}}c(40049);class bK extends bs{constructor(a){super(),this._context=a;const b=this._context.configuration.options.get(165);this._decorationsLeft=b.decorationsLeft,this._decorationsWidth=b.decorationsWidth,this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(a){let b=this._context.configuration.options.get(165);return this._decorationsLeft=b.decorationsLeft,this._decorationsWidth=b.decorationsWidth,!0}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return a.scrollTopChanged}onZonesChanged(a){return!0}_getDecorations(a){let b=a.getDecorationsInViewport(),c=[],d=0;for(let a=0,e=b.length;a<e;a++){let e=b[a],f=e.options.linesDecorationsClassName,g=e.options.zIndex;f&&(c[d++]=new bp(e.range.startLineNumber,e.range.endLineNumber,f,e.options.linesDecorationsTooltip??null,g));let h=e.options.firstLineDecorationClassName;h&&(c[d++]=new bp(e.range.startLineNumber,e.range.startLineNumber,h,e.options.linesDecorationsTooltip??null,g))}return c}prepareRender(a){let b=a.visibleRange.startLineNumber,c=a.visibleRange.endLineNumber,d=this._render(b,c,this._getDecorations(a)),e='" style="left:'+this._decorationsLeft.toString()+"px;width:"+this._decorationsWidth.toString()+'px;"></div>',f=[];for(let a=b;a<=c;a++){let c=a-b,g=d[c].getDecorations(),h="";for(let a of g){let b='<div class="cldr '+a.className;null!==a.tooltip&&(b+='" title="'+a.tooltip),b+=e,h+=b}f[c]=h}this._renderResult=f}render(a,b){return this._renderResult?this._renderResult[b-a]:""}}c(30389);class bL extends _{static{this.CLASS_NAME="glyph-margin"}static{this.OUTER_CLASS_NAME="margin"}constructor(a){super(a);const b=this._context.configuration.options,c=b.get(165);this._canUseLayerHinting=!b.get(39),this._contentLeft=c.contentLeft,this._glyphMarginLeft=c.glyphMarginLeft,this._glyphMarginWidth=c.glyphMarginWidth,this._domNode=(0,Y.Z)(document.createElement("div")),this._domNode.setClassName(bL.OUTER_CLASS_NAME),this._domNode.setPosition("absolute"),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._glyphMarginBackgroundDomNode=(0,Y.Z)(document.createElement("div")),this._glyphMarginBackgroundDomNode.setClassName(bL.CLASS_NAME),this._domNode.appendChild(this._glyphMarginBackgroundDomNode)}dispose(){super.dispose()}getDomNode(){return this._domNode}onConfigurationChanged(a){let b=this._context.configuration.options,c=b.get(165);return this._canUseLayerHinting=!b.get(39),this._contentLeft=c.contentLeft,this._glyphMarginLeft=c.glyphMarginLeft,this._glyphMarginWidth=c.glyphMarginWidth,!0}onScrollChanged(a){return super.onScrollChanged(a)||a.scrollTopChanged}prepareRender(a){}render(a){this._domNode.setLayerHinting(this._canUseLayerHinting),this._domNode.setContain("strict");let b=a.scrollTop-a.bigNumbersDelta;this._domNode.setTop(-b);let c=Math.min(a.scrollHeight,1e6);this._domNode.setHeight(c),this._domNode.setWidth(this._contentLeft),this._glyphMarginBackgroundDomNode.setLeft(this._glyphMarginLeft),this._glyphMarginBackgroundDomNode.setWidth(this._glyphMarginWidth),this._glyphMarginBackgroundDomNode.setHeight(c)}}c(84951);class bM extends bs{constructor(a){super(),this._context=a,this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(a){return!0}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return a.scrollTopChanged}onZonesChanged(a){return!0}_getDecorations(a){let b=a.getDecorationsInViewport(),c=[],d=0;for(let a=0,e=b.length;a<e;a++){let e=b[a],f=e.options.marginClassName,g=e.options.zIndex;f&&(c[d++]=new bp(e.range.startLineNumber,e.range.endLineNumber,f,null,g))}return c}prepareRender(a){let b=a.visibleRange.startLineNumber,c=a.visibleRange.endLineNumber,d=this._render(b,c,this._getDecorations(a)),e=[];for(let a=b;a<=c;a++){let c=a-b,f=d[c].getDecorations(),g="";for(let a of f)g+='<div class="cmdr '+a.className+'" style=""></div>';e[c]=g}this._renderResult=e}render(a,b){return this._renderResult?this._renderResult[b-a]:""}}c(40987);var bN=c(73787);class bO{static{this.Empty=new bO(0,0,0,0)}constructor(a,b,c,d){this._rgba8Brand=void 0,this.r=bO._clamp(a),this.g=bO._clamp(b),this.b=bO._clamp(c),this.a=bO._clamp(d)}equals(a){return this.r===a.r&&this.g===a.g&&this.b===a.b&&this.a===a.a}static _clamp(a){return a<0?0:a>255?255:0|a}}var bP=c(98578);class bQ extends y.jG{static{this._INSTANCE=null}static getInstance(){return this._INSTANCE||(this._INSTANCE=(0,y.lC)(new bQ)),this._INSTANCE}constructor(){super(),this._onDidChange=new x.vl,this.onDidChange=this._onDidChange.event,this._updateColorMap(),this._register(bP.dG.onDidChange(a=>{a.changedColorMap&&this._updateColorMap()}))}_updateColorMap(){let a=bP.dG.getColorMap();if(!a){this._colors=[bO.Empty],this._backgroundIsLight=!0;return}this._colors=[bO.Empty];for(let b=1;b<a.length;b++){let c=a[b].rgba;this._colors[b]=new bO(c.r,c.g,c.b,Math.round(255*c.a))}let b=a[2].getRelativeLuminance();this._backgroundIsLight=b>=.5,this._onDidChange.fire(void 0)}getColor(a){return(a<1||a>=this._colors.length)&&(a=2),this._colors[a]}backgroundIsLight(){return this._backgroundIsLight}}var bR=c(61203);let bS=(()=>{let a=[];for(let b=32;b<=126;b++)a.push(b);return a.push(65533),a})();var bT=c(85977);class bU{constructor(a,b){this.scale=b,this._minimapCharRendererBrand=void 0,this.charDataNormal=bU.soften(a,.8),this.charDataLight=bU.soften(a,50/60)}static soften(a,b){let c=new Uint8ClampedArray(a.length);for(let d=0,e=a.length;d<e;d++)c[d]=(0,bT.W)(a[d]*b);return c}renderChar(a,b,c,d,e,f,g,h,i,j,k){var l,m;let n=+this.scale,o=2*this.scale,p=k?1:o;if(b+n>a.width||c+p>a.height)return void console.warn("bad render request outside image data");let q=j?this.charDataLight:this.charDataNormal,r=(l=d,m=i,(l-=32)<0||l>96?m<=2?(l+96)%96:95:l),s=4*a.width,t=g.r,u=g.g,v=g.b,w=e.r-t,x=e.g-u,y=e.b-v,z=Math.max(f,h),A=a.data,B=r*n*o,C=c*s+4*b;for(let a=0;a<p;a++){let a=C;for(let b=0;b<n;b++){let b=q[B++]/255*(f/255);A[a++]=t+w*b,A[a++]=u+x*b,A[a++]=v+y*b,A[a++]=z}C+=s}}blockRenderChar(a,b,c,d,e,f,g,h){let i=+this.scale,j=2*this.scale,k=h?1:j;if(b+i>a.width||c+k>a.height)return void console.warn("bad render request outside image data");let l=4*a.width,m=e/255*.5,n=f.r,o=f.g,p=f.b,q=d.r-n,r=d.g-o,s=d.b-p,t=n+q*m,u=o+r*m,v=p+s*m,w=Math.max(e,g),x=a.data,y=c*l+4*b;for(let a=0;a<k;a++){let a=y;for(let b=0;b<i;b++)x[a++]=t,x[a++]=u,x[a++]=v,x[a++]=w;y+=l}}}var bV=c(84136);let bW={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15},bX=a=>{let b=new Uint8ClampedArray(a.length/2);for(let c=0;c<a.length;c+=2)b[c>>1]=bW[a[c]]<<4|15&bW[a[c+1]];return b},bY={1:(0,bV.P)(()=>bX("0000511D6300CF609C709645A78432005642574171487021003C451900274D35D762755E8B629C5BA856AF57BA649530C167D1512A272A3F6038604460398526BCA2A968DB6F8957C768BE5FBE2FB467CF5D8D5B795DC7625B5DFF50DE64C466DB2FC47CD860A65E9A2EB96CB54CE06DA763AB2EA26860524D3763536601005116008177A8705E53AB738E6A982F88BAA35B5F5B626D9C636B449B737E5B7B678598869A662F6B5B8542706C704C80736A607578685B70594A49715A4522E792")),2:(0,bV.P)(()=>bX("000000000000000055394F383D2800008B8B1F210002000081B1CBCBCC820000847AAF6B9AAF2119BE08B8881AD60000A44FD07DCCF107015338130C00000000385972265F390B406E2437634B4B48031B12B8A0847000001E15B29A402F0000000000004B33460B00007A752C2A0000000000004D3900000084394B82013400ABA5CFC7AD9C0302A45A3E5A98AB000089A43382D97900008BA54AA087A70A0248A6A7AE6DBE0000BF6F94987EA40A01A06DCFA7A7A9030496C32F77891D0000A99FB1A0AFA80603B29AB9CA75930D010C0948354D3900000C0948354F37460D0028BE673D8400000000AF9D7B6E00002B007AA8933400007AA642675C2700007984CFB9C3985B768772A8A6B7B20000CAAECAAFC4B700009F94A6009F840009D09F9BA4CA9C0000CC8FC76DC87F0000C991C472A2000000A894A48CA7B501079BA2C9C69BA20000B19A5D3FA89000005CA6009DA2960901B0A7F0669FB200009D009E00B7890000DAD0F5D092820000D294D4C48BD10000B5A7A4A3B1A50402CAB6CBA6A2000000B5A7A4A3B1A8044FCDADD19D9CB00000B7778F7B8AAE0803C9AB5D3F5D3F00009EA09EA0BAB006039EA0989A8C7900009B9EF4D6B7C00000A9A7816CACA80000ABAC84705D3F000096DA635CDC8C00006F486F266F263D4784006124097B00374F6D2D6D2D6D4A3A95872322000000030000000000008D8939130000000000002E22A5C9CBC70600AB25C0B5C9B400061A2DB04CA67001082AA6BEBEBFC606002321DACBC19E03087AA08B6768380000282FBAC0B8CA7A88AD25BBA5A29900004C396C5894A6000040485A6E356E9442A32CD17EADA70000B4237923628600003E2DE9C1D7B500002F25BBA5A2990000231DB6AFB4A804023025C0B5CAB588062B2CBDBEC0C706882435A75CA20000002326BD6A82A908048B4B9A5A668000002423A09CB4BB060025259C9D8A7900001C1FCAB2C7C700002A2A9387ABA200002626A4A47D6E9D14333163A0C87500004B6F9C2D643A257049364936493647358A34438355497F1A0000A24C1D590000D38DFFBDD4CD3126"))};class bZ{static create(a,b){let c;return this.lastCreated&&a===this.lastCreated.scale&&b===this.lastFontFamily?this.lastCreated:(c=bY[a]?new bU(bY[a](),a):bZ.createFromSampleData(bZ.createSampleData(b).data,a),this.lastFontFamily=b,this.lastCreated=c,c)}static createSampleData(a){let b=document.createElement("canvas"),c=b.getContext("2d");b.style.height="16px",b.height=16,b.width=960,b.style.width="960px",c.fillStyle="#ffffff",c.font=`bold 16px ${a}`,c.textBaseline="middle";let d=0;for(let a of bS)c.fillText(String.fromCharCode(a),d,8),d+=10;return c.getImageData(0,0,960,16)}static createFromSampleData(a,b){if(61440!==a.length)throw Error("Unexpected source in MinimapCharRenderer");return new bU(bZ._downsample(a,b),b)}static _downsampleChar(a,b,c,d,e){let f=+e,g=2*e,h=d,i=0;for(let d=0;d<g;d++){let e=d/g*16,j=(d+1)/g*16;for(let d=0;d<f;d++){let g=d/f*10,k=(d+1)/f*10,l=0,m=0;for(let c=e;c<j;c++){let d=b+3840*Math.floor(c),e=1-(c-Math.floor(c));for(let b=g;b<k;b++){let c=1-(b-Math.floor(b)),f=d+4*Math.floor(b),g=c*e;m+=g,l+=a[f]*a[f+3]/255*g}}let n=l/m;i=Math.max(i,n),c[h++]=(0,bT.W)(n)}}return i}static _downsample(a,b){let c=2*b*1*b,d=96*c,e=new Uint8ClampedArray(d),f=0,g=0,h=0;for(let d=0;d<96;d++)h=Math.max(h,this._downsampleChar(a,g,e,f,b)),f+=c,g+=40;if(h>0){let a=255/h;for(let b=0;b<d;b++)e[b]*=a}return e}}var b$=c(42727);let b_=E.uF?'"Segoe WPC", "Segoe UI", sans-serif':E.zx?"-apple-system, BlinkMacSystemFont, sans-serif":'system-ui, "Ubuntu", "Droid Sans", sans-serif';var b0=c(16236);class b1{constructor(a,b,c){const d=a.options,e=d.get(163),f=d.get(165),g=f.minimap,h=d.get(59),i=d.get(81);this.renderMinimap=g.renderMinimap,this.size=i.size,this.minimapHeightIsEditorHeight=g.minimapHeightIsEditorHeight,this.scrollBeyondLastLine=d.get(119),this.paddingTop=d.get(96).top,this.paddingBottom=d.get(96).bottom,this.showSlider=i.showSlider,this.autohide=i.autohide,this.pixelRatio=e,this.typicalHalfwidthCharacterWidth=h.typicalHalfwidthCharacterWidth,this.lineHeight=d.get(75),this.minimapLeft=g.minimapLeft,this.minimapWidth=g.minimapWidth,this.minimapHeight=f.height,this.canvasInnerWidth=g.minimapCanvasInnerWidth,this.canvasInnerHeight=g.minimapCanvasInnerHeight,this.canvasOuterWidth=g.minimapCanvasOuterWidth,this.canvasOuterHeight=g.minimapCanvasOuterHeight,this.isSampling=g.minimapIsSampling,this.editorHeight=f.height,this.fontScale=g.minimapScale,this.minimapLineHeight=g.minimapLineHeight,this.minimapCharWidth=+this.fontScale,this.sectionHeaderFontFamily=b_,this.sectionHeaderFontSize=i.sectionHeaderFontSize*e,this.sectionHeaderLetterSpacing=i.sectionHeaderLetterSpacing,this.sectionHeaderFontColor=b1._getSectionHeaderColor(b,c.getColor(1)),this.charRenderer=(0,bV.P)(()=>bZ.create(this.fontScale,h.fontFamily)),this.defaultBackgroundColor=c.getColor(2),this.backgroundColor=b1._getMinimapBackground(b,this.defaultBackgroundColor),this.foregroundAlpha=b1._getMinimapForegroundOpacity(b)}static _getMinimapBackground(a,b){let c=a.getColor(bR.ILr);return c?new bO(c.rgba.r,c.rgba.g,c.rgba.b,Math.round(255*c.rgba.a)):b}static _getMinimapForegroundOpacity(a){let b=a.getColor(bR.K1Z);return b?bO._clamp(Math.round(255*b.rgba.a)):255}static _getSectionHeaderColor(a,b){let c=a.getColor(bR.By2);return c?new bO(c.rgba.r,c.rgba.g,c.rgba.b,Math.round(255*c.rgba.a)):b}equals(a){return this.renderMinimap===a.renderMinimap&&this.size===a.size&&this.minimapHeightIsEditorHeight===a.minimapHeightIsEditorHeight&&this.scrollBeyondLastLine===a.scrollBeyondLastLine&&this.paddingTop===a.paddingTop&&this.paddingBottom===a.paddingBottom&&this.showSlider===a.showSlider&&this.autohide===a.autohide&&this.pixelRatio===a.pixelRatio&&this.typicalHalfwidthCharacterWidth===a.typicalHalfwidthCharacterWidth&&this.lineHeight===a.lineHeight&&this.minimapLeft===a.minimapLeft&&this.minimapWidth===a.minimapWidth&&this.minimapHeight===a.minimapHeight&&this.canvasInnerWidth===a.canvasInnerWidth&&this.canvasInnerHeight===a.canvasInnerHeight&&this.canvasOuterWidth===a.canvasOuterWidth&&this.canvasOuterHeight===a.canvasOuterHeight&&this.isSampling===a.isSampling&&this.editorHeight===a.editorHeight&&this.fontScale===a.fontScale&&this.minimapLineHeight===a.minimapLineHeight&&this.minimapCharWidth===a.minimapCharWidth&&this.sectionHeaderFontSize===a.sectionHeaderFontSize&&this.sectionHeaderLetterSpacing===a.sectionHeaderLetterSpacing&&this.defaultBackgroundColor&&this.defaultBackgroundColor.equals(a.defaultBackgroundColor)&&this.backgroundColor&&this.backgroundColor.equals(a.backgroundColor)&&this.foregroundAlpha===a.foregroundAlpha}}class b2{constructor(a,b,c,d,e,f,g,h,i){this.scrollTop=a,this.scrollHeight=b,this.sliderNeeded=c,this._computedSliderRatio=d,this.sliderTop=e,this.sliderHeight=f,this.topPaddingLineCount=g,this.startLineNumber=h,this.endLineNumber=i}getDesiredScrollTopFromDelta(a){return Math.round(this.scrollTop+a/this._computedSliderRatio)}getDesiredScrollTopFromTouchLocation(a){return Math.round((a-this.sliderHeight/2)/this._computedSliderRatio)}intersectWithViewport(a){let b=Math.max(this.startLineNumber,a.startLineNumber),c=Math.min(this.endLineNumber,a.endLineNumber);return b>c?null:[b,c]}getYForLineNumber(a,b){return(a-this.startLineNumber+this.topPaddingLineCount)*b}static create(a,b,c,d,e,f,g,h,i,j,k){let l,m,n=a.pixelRatio,o=a.minimapLineHeight,p=Math.floor(a.canvasInnerHeight/o),q=a.lineHeight;if(a.minimapHeightIsEditorHeight){let b=h*a.lineHeight+a.paddingTop+a.paddingBottom;a.scrollBeyondLastLine&&(b+=Math.max(0,e-a.lineHeight-a.paddingBottom));let c=Math.max(1,Math.floor(e*e/b)),d=Math.max(0,a.minimapHeight-c),f=d/(j-e),k=Math.floor(a.canvasInnerHeight/a.minimapLineHeight);return new b2(i,j,d>0,f,i*f,c,Math.floor(a.paddingTop/a.lineHeight),1,Math.min(g,k))}l=f&&c!==g?Math.floor((c-b+1)*o/n):Math.floor(e/q*o/n);let r=Math.floor(a.paddingTop/q),s=Math.floor(a.paddingBottom/q);a.scrollBeyondLastLine&&(s=Math.max(s,e/q-1)),m=s>0?(r+g+s-e/q-1)*o/n:Math.max(0,(r+g)*o/n-l);let t=(m=Math.min(a.minimapHeight-l,m))/(j-e),u=i*t;if(p>=r+g+s)return new b2(i,j,m>0,t,u,l,r,1,g);{let c,e,f=Math.max(1,Math.floor((b>1?b+r:Math.max(1,i/q))-u*n/o));f<r?(c=r-f+1,f=1):(c=0,f=Math.max(1,f-r)),k&&k.scrollHeight===j&&(k.scrollTop>i&&(f=Math.min(f,k.startLineNumber),c=Math.max(c,k.topPaddingLineCount)),k.scrollTop<i&&(f=Math.max(f,k.startLineNumber),c=Math.min(c,k.topPaddingLineCount)));let h=Math.min(g,f-c+p-1),m=(i-d)/q;return e=i>=a.paddingTop?(b-f+c+m)*o/n:i/a.paddingTop*(c+m)*o/n,new b2(i,j,!0,t,e,l,c,f,h)}}}class b3{static{this.INVALID=new b3(-1)}constructor(a){this.dy=a}onContentChanged(){this.dy=-1}onTokensChanged(){this.dy=-1}}class b4{constructor(a,b,c){this.renderedLayout=a,this._imageData=b,this._renderedLines=new a1({createLine:()=>b3.INVALID}),this._renderedLines._set(a.startLineNumber,c)}linesEquals(a){if(!this.scrollEquals(a))return!1;let b=this._renderedLines._get().lines;for(let a=0,c=b.length;a<c;a++)if(-1===b[a].dy)return!1;return!0}scrollEquals(a){return this.renderedLayout.startLineNumber===a.startLineNumber&&this.renderedLayout.endLineNumber===a.endLineNumber}_get(){let a=this._renderedLines._get();return{imageData:this._imageData,rendLineNumberStart:a.rendLineNumberStart,lines:a.lines}}onLinesChanged(a,b){return this._renderedLines.onLinesChanged(a,b)}onLinesDeleted(a,b){this._renderedLines.onLinesDeleted(a,b)}onLinesInserted(a,b){this._renderedLines.onLinesInserted(a,b)}onTokensChanged(a){return this._renderedLines.onTokensChanged(a)}}class b5{constructor(a,b,c,d){this._backgroundFillData=b5._createBackgroundFillData(b,c,d),this._buffers=[a.createImageData(b,c),a.createImageData(b,c)],this._lastUsedBuffer=0}getBuffer(){this._lastUsedBuffer=1-this._lastUsedBuffer;let a=this._buffers[this._lastUsedBuffer];return a.data.set(this._backgroundFillData),a}static _createBackgroundFillData(a,b,c){let d=c.r,e=c.g,f=c.b,g=c.a,h=new Uint8ClampedArray(a*b*4),i=0;for(let c=0;c<b;c++)for(let b=0;b<a;b++)h[i]=d,h[i+1]=e,h[i+2]=f,h[i+3]=g,i+=4;return h}}class b6{static compute(a,b,c){if(0===a.renderMinimap||!a.isSampling)return[null,[]];let{minimapLineCount:d}=M.xZ.computeContainedMinimapLineCount({viewLineCount:b,scrollBeyondLastLine:a.scrollBeyondLastLine,paddingTop:a.paddingTop,paddingBottom:a.paddingBottom,height:a.editorHeight,lineHeight:a.lineHeight,pixelRatio:a.pixelRatio}),e=b/d,f=e/2;if(!c||0===c.minimapLines.length){let a=[];if(a[0]=1,d>1){for(let b=0,c=d-1;b<c;b++)a[b]=Math.round(b*e+f);a[d-1]=b}return[new b6(e,a),[]]}let g=c.minimapLines,h=g.length,i=[],j=0,k=0,l=1,m=[],n=null;for(let a=0;a<d;a++){let c,o=Math.max(l,Math.round(a*e)),p=Math.max(o,Math.round((a+1)*e));for(;j<h&&g[j]<o;){if(m.length<10){let a=j+1+k;n&&"deleted"===n.type&&n._oldIndex===j-1?n.deleteToLineNumber++:(n={type:"deleted",_oldIndex:j,deleteFromLineNumber:a,deleteToLineNumber:a},m.push(n)),k--}j++}if(j<h&&g[j]<=p)c=g[j],j++;else if(c=0===a?1:a+1===d?b:Math.round(a*e+f),m.length<10){let b=j+1+k;n&&"inserted"===n.type&&n._i===a-1?n.insertToLineNumber++:(n={type:"inserted",_i:a,insertFromLineNumber:b,insertToLineNumber:b},m.push(n)),k++}i[a]=c,l=c}if(m.length<10)for(;j<h;){let a=j+1+k;n&&"deleted"===n.type&&n._oldIndex===j-1?n.deleteToLineNumber++:(n={type:"deleted",_oldIndex:j,deleteFromLineNumber:a,deleteToLineNumber:a},m.push(n)),k--,j++}else m=[{type:"flush"}];return[new b6(e,i),m]}constructor(a,b){this.samplingRatio=a,this.minimapLines=b}modelLineToMinimapLine(a){return Math.min(this.minimapLines.length,Math.max(1,Math.round(a/this.samplingRatio)))}modelLineRangeToMinimapLineRange(a,b){let c=this.modelLineToMinimapLine(a)-1;for(;c>0&&this.minimapLines[c-1]>=a;)c--;let d=this.modelLineToMinimapLine(b)-1;for(;d+1<this.minimapLines.length&&this.minimapLines[d+1]<=b;)d++;if(c===d){let d=this.minimapLines[c];if(d<a||d>b)return null}return[c+1,d+1]}decorationLineRangeToMinimapLineRange(a,b){let c=this.modelLineToMinimapLine(a),d=this.modelLineToMinimapLine(b);return a!==b&&d===c&&(d===this.minimapLines.length?c>1&&c--:d++),[c,d]}onLinesDeleted(a){let b=a.toLineNumber-a.fromLineNumber+1,c=this.minimapLines.length,d=0;for(let e=this.minimapLines.length-1;e>=0&&!(this.minimapLines[e]<a.fromLineNumber);e--)this.minimapLines[e]<=a.toLineNumber?(this.minimapLines[e]=Math.max(1,a.fromLineNumber-1),c=Math.min(c,e),d=Math.max(d,e)):this.minimapLines[e]-=b;return[c,d]}onLinesInserted(a){let b=a.toLineNumber-a.fromLineNumber+1;for(let c=this.minimapLines.length-1;c>=0&&!(this.minimapLines[c]<a.fromLineNumber);c--)this.minimapLines[c]+=b}}class b7 extends _{constructor(a){super(a),this._sectionHeaderCache=new b$.qK(10,1.5),this.tokensColorTracker=bQ.getInstance(),this._selections=[],this._minimapSelections=null,this.options=new b1(this._context.configuration,this._context.theme,this.tokensColorTracker);const[b]=b6.compute(this.options,this._context.viewModel.getLineCount(),null);this._samplingState=b,this._shouldCheckSampling=!1,this._actual=new b8(a.theme,this)}dispose(){this._actual.dispose(),super.dispose()}getDomNode(){return this._actual.getDomNode()}_onOptionsMaybeChanged(){let a=new b1(this._context.configuration,this._context.theme,this.tokensColorTracker);return!this.options.equals(a)&&(this.options=a,this._recreateLineSampling(),this._actual.onDidChangeOptions(),!0)}onConfigurationChanged(a){return this._onOptionsMaybeChanged()}onCursorStateChanged(a){return this._selections=a.selections,this._minimapSelections=null,this._actual.onSelectionChanged()}onDecorationsChanged(a){return!!a.affectsMinimap&&this._actual.onDecorationsChanged()}onFlushed(a){return this._samplingState&&(this._shouldCheckSampling=!0),this._actual.onFlushed()}onLinesChanged(a){if(!this._samplingState)return this._actual.onLinesChanged(a.fromLineNumber,a.count);{let b=this._samplingState.modelLineRangeToMinimapLineRange(a.fromLineNumber,a.fromLineNumber+a.count-1);return!!b&&this._actual.onLinesChanged(b[0],b[1]-b[0]+1)}}onLinesDeleted(a){if(!this._samplingState)return this._actual.onLinesDeleted(a.fromLineNumber,a.toLineNumber);{let[b,c]=this._samplingState.onLinesDeleted(a);return b<=c&&this._actual.onLinesChanged(b+1,c-b+1),this._shouldCheckSampling=!0,!0}}onLinesInserted(a){return this._samplingState?(this._samplingState.onLinesInserted(a),this._shouldCheckSampling=!0,!0):this._actual.onLinesInserted(a.fromLineNumber,a.toLineNumber)}onScrollChanged(a){return this._actual.onScrollChanged(a)}onThemeChanged(a){return this._actual.onThemeChanged(),this._onOptionsMaybeChanged(),!0}onTokensChanged(a){if(!this._samplingState)return this._actual.onTokensChanged(a.ranges);{let b=[];for(let c of a.ranges){let a=this._samplingState.modelLineRangeToMinimapLineRange(c.fromLineNumber,c.toLineNumber);a&&b.push({fromLineNumber:a[0],toLineNumber:a[1]})}return!!b.length&&this._actual.onTokensChanged(b)}}onTokensColorsChanged(a){return this._onOptionsMaybeChanged(),this._actual.onTokensColorsChanged()}onZonesChanged(a){return this._actual.onZonesChanged()}prepareRender(a){this._shouldCheckSampling&&(this._shouldCheckSampling=!1,this._recreateLineSampling())}render(a){let b=a.visibleRange.startLineNumber,c=a.visibleRange.endLineNumber;this._samplingState&&(b=this._samplingState.modelLineToMinimapLine(b),c=this._samplingState.modelLineToMinimapLine(c));let d={viewportContainsWhitespaceGaps:a.viewportData.whitespaceViewportData.length>0,scrollWidth:a.scrollWidth,scrollHeight:a.scrollHeight,viewportStartLineNumber:b,viewportEndLineNumber:c,viewportStartLineNumberVerticalOffset:a.getVerticalOffsetForLineNumber(b),scrollTop:a.scrollTop,scrollLeft:a.scrollLeft,viewportWidth:a.viewportWidth,viewportHeight:a.viewportHeight};this._actual.render(d)}_recreateLineSampling(){this._minimapSelections=null;let a=!!this._samplingState,[b,c]=b6.compute(this.options,this._context.viewModel.getLineCount(),this._samplingState);if(this._samplingState=b,a&&this._samplingState)for(let a of c)switch(a.type){case"deleted":this._actual.onLinesDeleted(a.deleteFromLineNumber,a.deleteToLineNumber);break;case"inserted":this._actual.onLinesInserted(a.insertFromLineNumber,a.insertToLineNumber);break;case"flush":this._actual.onFlushed()}}getLineCount(){return this._samplingState?this._samplingState.minimapLines.length:this._context.viewModel.getLineCount()}getRealLineCount(){return this._context.viewModel.getLineCount()}getLineContent(a){return this._samplingState?this._context.viewModel.getLineContent(this._samplingState.minimapLines[a-1]):this._context.viewModel.getLineContent(a)}getLineMaxColumn(a){return this._samplingState?this._context.viewModel.getLineMaxColumn(this._samplingState.minimapLines[a-1]):this._context.viewModel.getLineMaxColumn(a)}getMinimapLinesRenderingData(a,b,c){if(this._samplingState){let d=[];for(let e=0,f=b-a+1;e<f;e++)c[e]?d[e]=this._context.viewModel.getViewLineData(this._samplingState.minimapLines[a+e-1]):d[e]=null;return d}return this._context.viewModel.getMinimapLinesRenderingData(a,b,c).data}getSelections(){if(null===this._minimapSelections)if(this._samplingState)for(let a of(this._minimapSelections=[],this._selections)){let[b,c]=this._samplingState.decorationLineRangeToMinimapLineRange(a.startLineNumber,a.endLineNumber);this._minimapSelections.push(new ay.L(b,a.startColumn,c,a.endColumn))}else this._minimapSelections=this._selections;return this._minimapSelections}getMinimapDecorationsInViewport(a,b){return this._getMinimapDecorationsInViewport(a,b).filter(a=>!a.options.minimap?.sectionHeaderStyle)}getSectionHeaderDecorationsInViewport(a,b){let c=this.options.sectionHeaderFontSize/this.options.minimapLineHeight;return a=Math.floor(Math.max(1,a-c)),this._getMinimapDecorationsInViewport(a,b).filter(a=>!!a.options.minimap?.sectionHeaderStyle)}_getMinimapDecorationsInViewport(a,b){let c;if(this._samplingState){let d=this._samplingState.minimapLines[a-1],e=this._samplingState.minimapLines[b-1];c=new ad.Q(d,1,e,this._context.viewModel.getLineMaxColumn(e))}else c=new ad.Q(a,1,b,this._context.viewModel.getLineMaxColumn(b));let d=this._context.viewModel.getMinimapDecorationsInRange(c);if(this._samplingState){let a=[];for(let b of d){if(!b.options.minimap)continue;let c=b.range,d=this._samplingState.modelLineToMinimapLine(c.startLineNumber),e=this._samplingState.modelLineToMinimapLine(c.endLineNumber);a.push(new b0.vo(new ad.Q(d,c.startColumn,e,c.endColumn),b.options))}return a}return d}getSectionHeaderText(a,b){let c=a.options.minimap?.sectionHeaderText;if(!c)return null;let d=this._sectionHeaderCache.get(c);if(d)return d;let e=b(c);return this._sectionHeaderCache.set(c,e),e}getOptions(){return this._context.viewModel.model.getOptions()}revealLineNumber(a){this._samplingState&&(a=this._samplingState.minimapLines[a-1]),this._context.viewModel.revealRange("mouse",!1,new ad.Q(a,1,a,1),1,0)}setScrollTop(a){this._context.viewModel.viewLayout.setScrollPosition({scrollTop:a},1)}}class b8 extends y.jG{constructor(a,b){super(),this._renderDecorations=!1,this._gestureInProgress=!1,this._isMouseOverMinimap=!1,this._theme=a,this._model=b,this._lastRenderData=null,this._buffers=null,this._selectionColor=this._theme.getColor(bR.yr0),this._domNode=(0,Y.Z)(document.createElement("div")),aa.write(this._domNode,9),this._domNode.setClassName(this._getMinimapDomNodeClassName()),this._domNode.setPosition("absolute"),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._shadow=(0,Y.Z)(document.createElement("div")),this._shadow.setClassName("minimap-shadow-hidden"),this._domNode.appendChild(this._shadow),this._canvas=(0,Y.Z)(document.createElement("canvas")),this._canvas.setPosition("absolute"),this._canvas.setLeft(0),this._domNode.appendChild(this._canvas),this._decorationsCanvas=(0,Y.Z)(document.createElement("canvas")),this._decorationsCanvas.setPosition("absolute"),this._decorationsCanvas.setClassName("minimap-decorations-layer"),this._decorationsCanvas.setLeft(0),this._domNode.appendChild(this._decorationsCanvas),this._slider=(0,Y.Z)(document.createElement("div")),this._slider.setPosition("absolute"),this._slider.setClassName("minimap-slider"),this._slider.setLayerHinting(!0),this._slider.setContain("strict"),this._domNode.appendChild(this._slider),this._sliderHorizontal=(0,Y.Z)(document.createElement("div")),this._sliderHorizontal.setPosition("absolute"),this._sliderHorizontal.setClassName("minimap-slider-horizontal"),this._slider.appendChild(this._sliderHorizontal),this._applyLayout(),this._hideDelayedScheduler=this._register(new aL.uC(()=>this._hideImmediatelyIfMouseIsOutside(),500)),this._register(v.un(this._domNode.domNode,v.Bx.MOUSE_OVER,()=>{this._isMouseOverMinimap=!0})),this._register(v.un(this._domNode.domNode,v.Bx.MOUSE_LEAVE,()=>{this._isMouseOverMinimap=!1})),this._pointerDownListener=v.un(this._domNode.domNode,v.Bx.POINTER_DOWN,a=>{a.preventDefault();let b="mouse"===a.pointerType,c=0===a.button;if(0!==this._model.options.renderMinimap&&this._lastRenderData){if("proportional"!==this._model.options.size){if(c&&this._lastRenderData){let b=v.BK(this._slider.domNode),c=b.top+b.height/2;this._startSliderDragging(a,c,this._lastRenderData.renderedLayout)}return}if(c||!b){let b=this._model.options.minimapLineHeight,c=Math.floor(this._model.options.canvasInnerHeight/this._model.options.canvasOuterHeight*a.offsetY/b)+this._lastRenderData.renderedLayout.startLineNumber-this._lastRenderData.renderedLayout.topPaddingLineCount;c=Math.min(c,this._model.getLineCount()),this._model.revealLineNumber(c)}}}),this._sliderPointerMoveMonitor=new bN._,this._sliderPointerDownListener=v.un(this._slider.domNode,v.Bx.POINTER_DOWN,a=>{a.preventDefault(),a.stopPropagation(),0===a.button&&this._lastRenderData&&this._startSliderDragging(a,a.pageY,this._lastRenderData.renderedLayout)}),this._gestureDisposable=av.q.addTarget(this._domNode.domNode),this._sliderTouchStartListener=v.ko(this._domNode.domNode,av.B.Start,a=>{a.preventDefault(),a.stopPropagation(),this._lastRenderData&&(this._slider.toggleClassName("active",!0),this._gestureInProgress=!0,this.scrollDueToTouchEvent(a))},{passive:!1}),this._sliderTouchMoveListener=v.ko(this._domNode.domNode,av.B.Change,a=>{a.preventDefault(),a.stopPropagation(),this._lastRenderData&&this._gestureInProgress&&this.scrollDueToTouchEvent(a)},{passive:!1}),this._sliderTouchEndListener=v.un(this._domNode.domNode,av.B.End,a=>{a.preventDefault(),a.stopPropagation(),this._gestureInProgress=!1,this._slider.toggleClassName("active",!1)})}_hideSoon(){this._hideDelayedScheduler.cancel(),this._hideDelayedScheduler.schedule()}_hideImmediatelyIfMouseIsOutside(){this._isMouseOverMinimap?this._hideSoon():this._domNode.toggleClassName("active",!1)}_startSliderDragging(a,b,c){if(!a.target||!(a.target instanceof Element))return;let d=a.pageX;this._slider.toggleClassName("active",!0);let e=(a,e)=>{let f=v.BK(this._domNode.domNode),g=Math.min(Math.abs(e-d),Math.abs(e-f.left),Math.abs(e-f.left-f.width));E.uF&&g>140?this._model.setScrollTop(c.scrollTop):this._model.setScrollTop(c.getDesiredScrollTopFromDelta(a-b))};a.pageY!==b&&e(a.pageY,d),this._sliderPointerMoveMonitor.startMonitoring(a.target,a.pointerId,a.buttons,a=>e(a.pageY,a.pageX),()=>{this._slider.toggleClassName("active",!1)})}scrollDueToTouchEvent(a){let b=this._domNode.domNode.getBoundingClientRect().top,c=this._lastRenderData.renderedLayout.getDesiredScrollTopFromTouchLocation(a.pageY-b);this._model.setScrollTop(c)}dispose(){this._pointerDownListener.dispose(),this._sliderPointerMoveMonitor.dispose(),this._sliderPointerDownListener.dispose(),this._gestureDisposable.dispose(),this._sliderTouchStartListener.dispose(),this._sliderTouchMoveListener.dispose(),this._sliderTouchEndListener.dispose(),super.dispose()}_getMinimapDomNodeClassName(){let a=["minimap"];return"always"===this._model.options.showSlider?a.push("slider-always"):a.push("slider-mouseover"),"mouseover"===this._model.options.autohide?a.push("minimap-autohide-mouseover"):"scroll"===this._model.options.autohide&&a.push("minimap-autohide-scroll"),a.join(" ")}getDomNode(){return this._domNode}_applyLayout(){this._domNode.setLeft(this._model.options.minimapLeft),this._domNode.setWidth(this._model.options.minimapWidth),this._domNode.setHeight(this._model.options.minimapHeight),this._shadow.setHeight(this._model.options.minimapHeight),this._canvas.setWidth(this._model.options.canvasOuterWidth),this._canvas.setHeight(this._model.options.canvasOuterHeight),this._canvas.domNode.width=this._model.options.canvasInnerWidth,this._canvas.domNode.height=this._model.options.canvasInnerHeight,this._decorationsCanvas.setWidth(this._model.options.canvasOuterWidth),this._decorationsCanvas.setHeight(this._model.options.canvasOuterHeight),this._decorationsCanvas.domNode.width=this._model.options.canvasInnerWidth,this._decorationsCanvas.domNode.height=this._model.options.canvasInnerHeight,this._slider.setWidth(this._model.options.minimapWidth)}_getBuffer(){return!this._buffers&&this._model.options.canvasInnerWidth>0&&this._model.options.canvasInnerHeight>0&&(this._buffers=new b5(this._canvas.domNode.getContext("2d"),this._model.options.canvasInnerWidth,this._model.options.canvasInnerHeight,this._model.options.backgroundColor)),this._buffers?this._buffers.getBuffer():null}onDidChangeOptions(){this._lastRenderData=null,this._buffers=null,this._applyLayout(),this._domNode.setClassName(this._getMinimapDomNodeClassName())}onSelectionChanged(){return this._renderDecorations=!0,!0}onDecorationsChanged(){return this._renderDecorations=!0,!0}onFlushed(){return this._lastRenderData=null,!0}onLinesChanged(a,b){return!!this._lastRenderData&&this._lastRenderData.onLinesChanged(a,b)}onLinesDeleted(a,b){return this._lastRenderData?.onLinesDeleted(a,b),!0}onLinesInserted(a,b){return this._lastRenderData?.onLinesInserted(a,b),!0}onScrollChanged(a){return"scroll"===this._model.options.autohide&&(a.scrollTopChanged||a.scrollHeightChanged)&&(this._domNode.toggleClassName("active",!0),this._hideSoon()),this._renderDecorations=!0,!0}onThemeChanged(){return this._selectionColor=this._theme.getColor(bR.yr0),this._renderDecorations=!0,!0}onTokensChanged(a){return!!this._lastRenderData&&this._lastRenderData.onTokensChanged(a)}onTokensColorsChanged(){return this._lastRenderData=null,this._buffers=null,!0}onZonesChanged(){return this._lastRenderData=null,!0}render(a){if(0===this._model.options.renderMinimap){this._shadow.setClassName("minimap-shadow-hidden"),this._sliderHorizontal.setWidth(0),this._sliderHorizontal.setHeight(0);return}a.scrollLeft+a.viewportWidth>=a.scrollWidth?this._shadow.setClassName("minimap-shadow-hidden"):this._shadow.setClassName("minimap-shadow-visible");let b=b2.create(this._model.options,a.viewportStartLineNumber,a.viewportEndLineNumber,a.viewportStartLineNumberVerticalOffset,a.viewportHeight,a.viewportContainsWhitespaceGaps,this._model.getLineCount(),this._model.getRealLineCount(),a.scrollTop,a.scrollHeight,this._lastRenderData?this._lastRenderData.renderedLayout:null);this._slider.setDisplay(b.sliderNeeded?"block":"none"),this._slider.setTop(b.sliderTop),this._slider.setHeight(b.sliderHeight),this._sliderHorizontal.setLeft(0),this._sliderHorizontal.setWidth(this._model.options.minimapWidth),this._sliderHorizontal.setTop(0),this._sliderHorizontal.setHeight(b.sliderHeight),this.renderDecorations(b),this._lastRenderData=this.renderLines(b)}renderDecorations(a){if(this._renderDecorations){this._renderDecorations=!1;let b=this._model.getSelections();b.sort(ad.Q.compareRangesUsingStarts);let c=this._model.getMinimapDecorationsInViewport(a.startLineNumber,a.endLineNumber);c.sort((a,b)=>(a.options.zIndex||0)-(b.options.zIndex||0));let{canvasInnerWidth:d,canvasInnerHeight:e}=this._model.options,f=this._model.options.minimapLineHeight,g=this._model.options.minimapCharWidth,h=this._model.getOptions().tabSize,i=this._decorationsCanvas.domNode.getContext("2d");i.clearRect(0,0,d,e);let j=new b9(a.startLineNumber,a.endLineNumber,!1);this._renderSelectionLineHighlights(i,b,j,a,f),this._renderDecorationsLineHighlights(i,c,j,a,f);let k=new b9(a.startLineNumber,a.endLineNumber,null);this._renderSelectionsHighlights(i,b,k,a,f,h,g,d),this._renderDecorationsHighlights(i,c,k,a,f,h,g,d),this._renderSectionHeaders(a)}}_renderSelectionLineHighlights(a,b,c,d,e){if(!this._selectionColor||this._selectionColor.isTransparent())return;a.fillStyle=this._selectionColor.transparent(.5).toString();let f=0,g=0;for(let h of b){let b=d.intersectWithViewport(h);if(!b)continue;let[i,j]=b;for(let a=i;a<=j;a++)c.set(a,!0);let k=d.getYForLineNumber(i,e),l=d.getYForLineNumber(j,e);g>=k||(g>f&&a.fillRect(M.xq,f,a.canvas.width,g-f),f=k),g=l}g>f&&a.fillRect(M.xq,f,a.canvas.width,g-f)}_renderDecorationsLineHighlights(a,b,c,d,e){let f=new Map;for(let g=b.length-1;g>=0;g--){let h=b[g],i=h.options.minimap;if(!i||1!==i.position)continue;let j=d.intersectWithViewport(h.range);if(!j)continue;let[k,l]=j,m=i.getColor(this._theme.value);if(!m||m.isTransparent())continue;let n=f.get(m.toString());n||(n=m.transparent(.5).toString(),f.set(m.toString(),n)),a.fillStyle=n;for(let b=k;b<=l;b++){if(c.has(b))continue;c.set(b,!0);let f=d.getYForLineNumber(k,e);a.fillRect(M.xq,f,a.canvas.width,e)}}}_renderSelectionsHighlights(a,b,c,d,e,f,g,h){if(!(!this._selectionColor||this._selectionColor.isTransparent()))for(let i of b){let b=d.intersectWithViewport(i);if(!b)continue;let[j,k]=b;for(let b=j;b<=k;b++)this.renderDecorationOnLine(a,c,i,this._selectionColor,d,b,e,e,f,g,h)}}_renderDecorationsHighlights(a,b,c,d,e,f,g,h){for(let i of b){let b=i.options.minimap;if(!b)continue;let j=d.intersectWithViewport(i.range);if(!j)continue;let[k,l]=j,m=b.getColor(this._theme.value);if(!(!m||m.isTransparent()))for(let j=k;j<=l;j++)switch(b.position){case 1:this.renderDecorationOnLine(a,c,i.range,m,d,j,e,e,f,g,h);continue;case 2:{let b=d.getYForLineNumber(j,e);this.renderDecoration(a,m,2,b,2,e);continue}}}}renderDecorationOnLine(a,b,c,d,e,f,g,h,i,j,k){let l=e.getYForLineNumber(f,h);if(l+g<0||l>this._model.options.canvasInnerHeight)return;let{startLineNumber:m,endLineNumber:n}=c,o=m===f?c.startColumn:1,p=n===f?c.endColumn:this._model.getLineMaxColumn(f),q=this.getXOffsetForPosition(b,f,o,i,j,k),r=this.getXOffsetForPosition(b,f,p,i,j,k);this.renderDecoration(a,d,q,l,r-q,g)}getXOffsetForPosition(a,b,c,d,e,f){if(1===c)return M.xq;if((c-1)*e>=f)return f;let g=a.get(b);if(!g){let c=this._model.getLineContent(b);g=[M.xq];let h=M.xq;for(let a=1;a<c.length+1;a++){let b=c.charCodeAt(a-1),i=h+(9===b?d*e:aM.ne(b)?2*e:e);if(i>=f){g[a]=f;break}g[a]=i,h=i}a.set(b,g)}return c-1<g.length?g[c-1]:f}renderDecoration(a,b,c,d,e,f){a.fillStyle=b&&b.toString()||"",a.fillRect(c,d,e,f)}_renderSectionHeaders(a){let b=this._model.options.minimapLineHeight,c=this._model.options.sectionHeaderFontSize,d=this._model.options.sectionHeaderLetterSpacing,e=1.5*c,{canvasInnerWidth:f}=this._model.options,g=this._model.options.backgroundColor,h=`rgb(${g.r} ${g.g} ${g.b} / .7)`,i=this._model.options.sectionHeaderFontColor,j=`rgb(${i.r} ${i.g} ${i.b})`,k=this._decorationsCanvas.domNode.getContext("2d");k.letterSpacing=d+"px",k.font="500 "+c+"px "+this._model.options.sectionHeaderFontFamily,k.strokeStyle=j,k.lineWidth=.4;let l=this._model.getSectionHeaderDecorationsInViewport(a.startLineNumber,a.endLineNumber);l.sort((a,b)=>a.range.startLineNumber-b.range.startLineNumber);let m=b8._fitSectionHeader.bind(null,k,f-M.xq);for(let d of l){let g=a.getYForLineNumber(d.range.startLineNumber,b)+c,i=g-c,l=i+2,n=this._model.getSectionHeaderText(d,m);b8._renderSectionLabel(k,n,d.options.minimap?.sectionHeaderStyle===2,h,j,f,i,e,g,l)}}static _fitSectionHeader(a,b,c){if(!c)return c;let d=a.measureText(c).width,e=a.measureText("…").width;if(d<=b||d<=e)return c;let f=c.length,g=Math.floor((b-e)/(d/c.length))-1,h=Math.ceil(g/2);for(;h>0&&/\s/.test(c[h-1]);)--h;return c.substring(0,h)+"…"+c.substring(f-(g-h))}static _renderSectionLabel(a,b,c,d,e,f,g,h,i,j){b&&(a.fillStyle=d,a.fillRect(0,g,f,h),a.fillStyle=e,a.fillText(b,M.xq,i)),c&&(a.beginPath(),a.moveTo(0,j),a.lineTo(f,j),a.closePath(),a.stroke())}renderLines(a){let b=a.startLineNumber,c=a.endLineNumber,d=this._model.options.minimapLineHeight;if(this._lastRenderData&&this._lastRenderData.linesEquals(a)){let b=this._lastRenderData._get();return new b4(a,b.imageData,b.lines)}let e=this._getBuffer();if(!e)return null;let[f,g,h]=b8._renderUntouchedLines(e,a.topPaddingLineCount,b,c,d,this._lastRenderData),i=this._model.getMinimapLinesRenderingData(b,c,h),j=this._model.getOptions().tabSize,k=this._model.options.defaultBackgroundColor,l=this._model.options.backgroundColor,m=this._model.options.foregroundAlpha,n=this._model.tokensColorTracker,o=n.backgroundIsLight(),p=this._model.options.renderMinimap,q=this._model.options.charRenderer(),r=this._model.options.fontScale,s=this._model.options.minimapCharWidth,t=(1===p?2:3)*r,u=d>t?Math.floor((d-t)/2):0,v=l.a/255,w=new bO(Math.round((l.r-k.r)*v+k.r),Math.round((l.g-k.g)*v+k.g),Math.round((l.b-k.b)*v+k.b),255),x=a.topPaddingLineCount*d,y=[];for(let a=0,f=c-b+1;a<f;a++)h[a]&&b8._renderLine(e,w,l.a,o,p,s,n,m,q,x,u,j,i[a],r,d),y[a]=new b3(x),x+=d;let z=-1===f?0:f,A=-1===g?e.height:g;return this._canvas.domNode.getContext("2d").putImageData(e,0,0,0,z,e.width,A-z),new b4(a,e,y)}static _renderUntouchedLines(a,b,c,d,e,f){let g=[];if(!f){for(let a=0,b=d-c+1;a<b;a++)g[a]=!0;return[-1,-1,g]}let h=f._get(),i=h.imageData.data,j=h.rendLineNumberStart,k=h.lines,l=k.length,m=a.width,n=a.data,o=(d-c+1)*e*m*4,p=-1,q=-1,r=-1,s=-1,t=-1,u=-1,v=b*e;for(let a=c;a<=d;a++){let b=a-c,d=a-j,f=d>=0&&d<l?k[d].dy:-1;if(-1===f){g[b]=!0,v+=e;continue}let h=f*m*4,w=(f+e)*m*4,x=v*m*4,y=(v+e)*m*4;s===h&&u===x?s=w:(-1!==r&&(n.set(i.subarray(r,s),t),-1===p&&0===r&&r===t&&(p=s),-1===q&&s===o&&r===t&&(q=r)),r=h,s=w,t=x),u=y,g[b]=!1,v+=e}return -1!==r&&(n.set(i.subarray(r,s),t),-1===p&&0===r&&r===t&&(p=s),-1===q&&s===o&&r===t&&(q=r)),[-1===p?-1:p/(4*m),-1===q?-1:q/(4*m),g]}static _renderLine(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){let p=m.content,q=m.tokens,r=a.width-f,s=1===o,t=M.xq,u=0,v=0;for(let m=0,o=q.getCount();m<o;m++){let o=q.getEndOffset(m),w=q.getForeground(m),x=g.getColor(w);for(;u<o;u++){if(t>r)return;let g=p.charCodeAt(u);if(9===g){let a=l-(u+v)%l;v+=a-1,t+=a*f}else if(32===g)t+=f;else{let l=aM.ne(g)?2:1;for(let m=0;m<l;m++)if(2===e?i.blockRenderChar(a,t,j+k,x,h,b,c,s):i.renderChar(a,t,j+k,g,x,h,b,c,n,d,s),(t+=f)>r)return}}}}}class b9{constructor(a,b,c){this._startLineNumber=a,this._endLineNumber=b,this._defaultValue=c,this._values=[];for(let a=0,b=this._endLineNumber-this._startLineNumber+1;a<b;a++)this._values[a]=c}has(a){return this.get(a)!==this._defaultValue}set(a,b){a<this._startLineNumber||a>this._endLineNumber||(this._values[a-this._startLineNumber]=b)}get(a){return a<this._startLineNumber||a>this._endLineNumber?this._defaultValue:this._values[a-this._startLineNumber]}}c(69875);class ca extends _{constructor(a,b){super(a),this._viewDomNode=b;const c=this._context.configuration.options.get(165);this._widgets={},this._verticalScrollbarWidth=c.verticalScrollbarWidth,this._minimapWidth=c.minimap.minimapWidth,this._horizontalScrollbarHeight=c.horizontalScrollbarHeight,this._editorHeight=c.height,this._editorWidth=c.width,this._viewDomNodeRect={top:0,left:0,width:0,height:0},this._domNode=(0,Y.Z)(document.createElement("div")),aa.write(this._domNode,4),this._domNode.setClassName("overlayWidgets"),this.overflowingOverlayWidgetsDomNode=(0,Y.Z)(document.createElement("div")),aa.write(this.overflowingOverlayWidgetsDomNode,5),this.overflowingOverlayWidgetsDomNode.setClassName("overflowingOverlayWidgets")}dispose(){super.dispose(),this._widgets={}}getDomNode(){return this._domNode}onConfigurationChanged(a){let b=this._context.configuration.options.get(165);return this._verticalScrollbarWidth=b.verticalScrollbarWidth,this._minimapWidth=b.minimap.minimapWidth,this._horizontalScrollbarHeight=b.horizontalScrollbarHeight,this._editorHeight=b.height,this._editorWidth=b.width,!0}_widgetCanOverflow(a){let b=this._context.configuration.options.get(4);return(a.allowEditorOverflow||!1)&&b}addWidget(a){let b=(0,Y.Z)(a.getDomNode());this._widgets[a.getId()]={widget:a,preference:null,domNode:b},b.setPosition("absolute"),b.setAttribute("widgetId",a.getId()),this._widgetCanOverflow(a)?this.overflowingOverlayWidgetsDomNode.appendChild(b):this._domNode.appendChild(b),this.setShouldRender(),this._updateMaxMinWidth()}setWidgetPosition(a,b){let c=this._widgets[a.getId()],d=b?b.preference:null,e=b?.stackOridinal;return c.preference===d&&c.stack===e?(this._updateMaxMinWidth(),!1):(c.preference=d,c.stack=e,this.setShouldRender(),this._updateMaxMinWidth(),!0)}removeWidget(a){let b=a.getId();if(this._widgets.hasOwnProperty(b)){let a=this._widgets[b].domNode.domNode;delete this._widgets[b],a.remove(),this.setShouldRender(),this._updateMaxMinWidth()}}_updateMaxMinWidth(){let a=0,b=Object.keys(this._widgets);for(let c=0,d=b.length;c<d;c++){let d=b[c],e=this._widgets[d],f=e.widget.getMinContentWidthInPx?.();void 0!==f&&(a=Math.max(a,f))}this._context.viewLayout.setOverlayWidgetsMinWidth(a)}_renderWidget(a,b){let c=a.domNode;if(null===a.preference)return void c.setTop("");let d=2*this._verticalScrollbarWidth+this._minimapWidth;if(0===a.preference||1===a.preference){if(1===a.preference){let a=c.domNode.clientHeight;c.setTop(this._editorHeight-a-2*this._horizontalScrollbarHeight)}else c.setTop(0);void 0!==a.stack?(c.setTop(b[a.preference]),b[a.preference]+=c.domNode.clientWidth):c.setRight(d)}else if(2===a.preference)c.domNode.style.right="50%",void 0!==a.stack?(c.setTop(b[2]),b[2]+=c.domNode.clientHeight):c.setTop(0);else{let{top:b,left:d}=a.preference;if(this._context.configuration.options.get(51)&&this._widgetCanOverflow(a.widget)){let a=this._viewDomNodeRect;c.setTop(b+a.top),c.setLeft(d+a.left),c.setPosition("fixed")}else c.setTop(b),c.setLeft(d),c.setPosition("absolute")}}prepareRender(a){this._viewDomNodeRect=v.BK(this._viewDomNode.domNode)}render(a){this._domNode.setWidth(this._editorWidth);let b=Object.keys(this._widgets),c=Array.from({length:3},()=>0);b.sort((a,b)=>(this._widgets[a].stack||0)-(this._widgets[b].stack||0));for(let a=0,d=b.length;a<d;a++){let d=b[a];this._renderWidget(this._widgets[d],c)}}}var cb=c(81034),cc=c(15991);class cd{constructor(a,b){const c=a.options;this.lineHeight=c.get(75),this.pixelRatio=c.get(163),this.overviewRulerLanes=c.get(95),this.renderBorder=c.get(94);const d=b.getColor(bh.x9);this.borderColor=d?d.toString():null,this.hideCursor=c.get(68);const e=b.getColor(bh.D0);this.cursorColorSingle=e?e.transparent(.7).toString():null;const f=b.getColor(bh.sC);this.cursorColorPrimary=f?f.transparent(.7).toString():null;const g=b.getColor(bh.we);this.cursorColorSecondary=g?g.transparent(.7).toString():null,this.themeType=b.type;const h=c.get(81),i=h.enabled,j=h.side,k=b.getColor(bh.Xr),l=bP.dG.getDefaultBackground();k?this.backgroundColor=k:i&&"right"===j?this.backgroundColor=l:this.backgroundColor=null;const m=c.get(165).overviewRuler;this.top=m.top,this.right=m.right,this.domWidth=m.width,this.domHeight=m.height,0===this.overviewRulerLanes?(this.canvasWidth=0,this.canvasHeight=0):(this.canvasWidth=this.domWidth*this.pixelRatio|0,this.canvasHeight=this.domHeight*this.pixelRatio|0);const[n,o]=this._initLanes(1,this.canvasWidth,this.overviewRulerLanes);this.x=n,this.w=o}_initLanes(a,b,c){let d=b-a;if(c>=3){let b=Math.floor(d/3),c=Math.floor(d/3),e=d-b-c,f=a+b;return[[0,a,f,a,a+b+e,a,f,a],[0,b,e,b+e,c,b+e+c,e+c,b+e+c]]}if(2!==c)return[[0,a,a,a,a,a,a,a],[0,d,d,d,d,d,d,d]];{let b=Math.floor(d/2),c=d-b;return[[0,a,a,a,a+b,a,a,a],[0,b,b,b,c,b+c,b+c,b+c]]}}equals(a){return this.lineHeight===a.lineHeight&&this.pixelRatio===a.pixelRatio&&this.overviewRulerLanes===a.overviewRulerLanes&&this.renderBorder===a.renderBorder&&this.borderColor===a.borderColor&&this.hideCursor===a.hideCursor&&this.cursorColorSingle===a.cursorColorSingle&&this.cursorColorPrimary===a.cursorColorPrimary&&this.cursorColorSecondary===a.cursorColorSecondary&&this.themeType===a.themeType&&cb.Q1.equals(this.backgroundColor,a.backgroundColor)&&this.top===a.top&&this.right===a.right&&this.domWidth===a.domWidth&&this.domHeight===a.domHeight&&this.canvasWidth===a.canvasWidth&&this.canvasHeight===a.canvasHeight}}class ce extends _{constructor(a){super(a),this._actualShouldRender=0,this._renderedDecorations=[],this._renderedCursorPositions=[],this._domNode=(0,Y.Z)(document.createElement("canvas")),this._domNode.setClassName("decorationsOverviewRuler"),this._domNode.setPosition("absolute"),this._domNode.setLayerHinting(!0),this._domNode.setContain("strict"),this._domNode.setAttribute("aria-hidden","true"),this._updateSettings(!1),this._tokensColorTrackerListener=bP.dG.onDidChange(a=>{a.changedColorMap&&this._updateSettings(!0)}),this._cursorPositions=[{position:new ac.y(1,1),color:this._settings.cursorColorSingle}]}dispose(){super.dispose(),this._tokensColorTrackerListener.dispose()}_updateSettings(a){let b=new cd(this._context.configuration,this._context.theme);return!(this._settings&&this._settings.equals(b))&&(this._settings=b,this._domNode.setTop(this._settings.top),this._domNode.setRight(this._settings.right),this._domNode.setWidth(this._settings.domWidth),this._domNode.setHeight(this._settings.domHeight),this._domNode.domNode.width=this._settings.canvasWidth,this._domNode.domNode.height=this._settings.canvasHeight,a&&this._render(),!0)}_markRenderingIsNeeded(){return this._actualShouldRender=2,!0}_markRenderingIsMaybeNeeded(){return this._actualShouldRender=1,!0}onConfigurationChanged(a){return!!this._updateSettings(!1)&&this._markRenderingIsNeeded()}onCursorStateChanged(a){this._cursorPositions=[];for(let b=0,c=a.selections.length;b<c;b++){let d=this._settings.cursorColorSingle;c>1&&(d=0===b?this._settings.cursorColorPrimary:this._settings.cursorColorSecondary),this._cursorPositions.push({position:a.selections[b].getPosition(),color:d})}return this._cursorPositions.sort((a,b)=>ac.y.compare(a.position,b.position)),this._markRenderingIsMaybeNeeded()}onDecorationsChanged(a){return!!a.affectsOverviewRuler&&this._markRenderingIsMaybeNeeded()}onFlushed(a){return this._markRenderingIsNeeded()}onScrollChanged(a){return!!a.scrollHeightChanged&&this._markRenderingIsNeeded()}onZonesChanged(a){return this._markRenderingIsNeeded()}onThemeChanged(a){return!!this._updateSettings(!1)&&this._markRenderingIsNeeded()}getDomNode(){return this._domNode.domNode}prepareRender(a){}render(a){this._render(),this._actualShouldRender=0}_render(){let a=this._settings.backgroundColor;if(0===this._settings.overviewRulerLanes){this._domNode.setBackgroundColor(a?cb.Q1.Format.CSS.formatHexA(a):""),this._domNode.setDisplay("none");return}let b=this._context.viewModel.getAllOverviewRulerDecorations(this._context.theme);if(b.sort(cc.Uv.compareByRenderingProps),1!==this._actualShouldRender||cc.Uv.equalsArr(this._renderedDecorations,b)||(this._actualShouldRender=2),1!==this._actualShouldRender||(0,C.aI)(this._renderedCursorPositions,this._cursorPositions,(a,b)=>a.position.lineNumber===b.position.lineNumber&&a.color===b.color)||(this._actualShouldRender=2),1===this._actualShouldRender)return;this._renderedDecorations=b,this._renderedCursorPositions=this._cursorPositions,this._domNode.setDisplay("block");let c=this._settings.canvasWidth,d=this._settings.canvasHeight,e=this._settings.lineHeight,f=this._context.viewLayout,g=d/this._context.viewLayout.getScrollHeight(),h=6*this._settings.pixelRatio|0,i=h/2|0,j=this._domNode.domNode.getContext("2d");a?(a.isOpaque()||j.clearRect(0,0,c,d),j.fillStyle=cb.Q1.Format.CSS.formatHexA(a),j.fillRect(0,0,c,d)):j.clearRect(0,0,c,d);let k=this._settings.x,l=this._settings.w;for(let a of b){let b=a.color,c=a.data;j.fillStyle=b;let m=0,n=0,o=0;for(let a=0,b=c.length/3;a<b;a++){let b=c[3*a],p=c[3*a+1],q=c[3*a+2],r=f.getVerticalOffsetForLineNumber(p)*g|0,s=(f.getVerticalOffsetForLineNumber(q)+e)*g|0;if(s-r<h){let a=(r+s)/2|0;a<i?a=i:a+i>d&&(a=d-i),r=a-i,s=a+i}r>o+1||b!==m?(0!==a&&j.fillRect(k[m],n,l[m],o-n),m=b,n=r,o=s):s>o&&(o=s)}j.fillRect(k[m],n,l[m],o-n)}if(!this._settings.hideCursor){let a=2*this._settings.pixelRatio|0,b=a/2|0,c=this._settings.x[7],e=this._settings.w[7],h=-100,i=-100,k=null;for(let l=0,m=this._cursorPositions.length;l<m;l++){let m=this._cursorPositions[l].color;if(!m)continue;let n=this._cursorPositions[l].position,o=f.getVerticalOffsetForLineNumber(n.lineNumber)*g|0;o<b?o=b:o+b>d&&(o=d-b);let p=o-b,q=p+a;p>i+1||m!==k?(0!==l&&k&&j.fillRect(c,h,e,i-h),h=p,i=q):q>i&&(i=q),k=m,j.fillStyle=m}k&&j.fillRect(c,h,e,i-h)}this._settings.renderBorder&&this._settings.borderColor&&this._settings.overviewRulerLanes>0&&(j.beginPath(),j.lineWidth=1,j.strokeStyle=this._settings.borderColor,j.moveTo(0,0),j.lineTo(0,d),j.moveTo(1,0),j.lineTo(c,0),j.stroke())}}var cf=c(32532);class cg extends $.i{constructor(a,b){super(),this._context=a;const c=this._context.configuration.options;this._domNode=(0,Y.Z)(document.createElement("canvas")),this._domNode.setClassName(b),this._domNode.setPosition("absolute"),this._domNode.setLayerHinting(!0),this._domNode.setContain("strict"),this._zoneManager=new cf.rW(a=>this._context.viewLayout.getVerticalOffsetForLineNumber(a)),this._zoneManager.setDOMWidth(0),this._zoneManager.setDOMHeight(0),this._zoneManager.setOuterHeight(this._context.viewLayout.getScrollHeight()),this._zoneManager.setLineHeight(c.get(75)),this._zoneManager.setPixelRatio(c.get(163)),this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),super.dispose()}onConfigurationChanged(a){let b=this._context.configuration.options;return a.hasChanged(75)&&(this._zoneManager.setLineHeight(b.get(75)),this._render()),a.hasChanged(163)&&(this._zoneManager.setPixelRatio(b.get(163)),this._domNode.setWidth(this._zoneManager.getDOMWidth()),this._domNode.setHeight(this._zoneManager.getDOMHeight()),this._domNode.domNode.width=this._zoneManager.getCanvasWidth(),this._domNode.domNode.height=this._zoneManager.getCanvasHeight(),this._render()),!0}onFlushed(a){return this._render(),!0}onScrollChanged(a){return a.scrollHeightChanged&&(this._zoneManager.setOuterHeight(a.scrollHeight),this._render()),!0}onZonesChanged(a){return this._render(),!0}getDomNode(){return this._domNode.domNode}setLayout(a){this._domNode.setTop(a.top),this._domNode.setRight(a.right);let b=!1;b=this._zoneManager.setDOMWidth(a.width)||b,(b=this._zoneManager.setDOMHeight(a.height)||b)&&(this._domNode.setWidth(this._zoneManager.getDOMWidth()),this._domNode.setHeight(this._zoneManager.getDOMHeight()),this._domNode.domNode.width=this._zoneManager.getCanvasWidth(),this._domNode.domNode.height=this._zoneManager.getCanvasHeight(),this._render())}setZones(a){this._zoneManager.setZones(a),this._render()}_render(){if(0===this._zoneManager.getOuterHeight())return!1;let a=this._zoneManager.getCanvasWidth(),b=this._zoneManager.getCanvasHeight(),c=this._zoneManager.resolveColorZones(),d=this._zoneManager.getId2Color(),e=this._domNode.domNode.getContext("2d");return e.clearRect(0,0,a,b),c.length>0&&this._renderOneLane(e,c,d,a),!0}_renderOneLane(a,b,c,d){let e=0,f=0,g=0;for(let h of b){let b=h.colorId,i=h.from,j=h.to;b!==e?(a.fillRect(0,f,d,g-f),a.fillStyle=c[e=b],f=i,g=j):g>=i?g=Math.max(g,j):(a.fillRect(0,f,d,g-f),f=i,g=j)}a.fillRect(0,f,d,g-f)}}c(58547);class ch extends _{constructor(a){super(a),this.domNode=(0,Y.Z)(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this.domNode.setClassName("view-rulers"),this._renderedRulers=[];const b=this._context.configuration.options;this._rulers=b.get(116),this._typicalHalfwidthCharacterWidth=b.get(59).typicalHalfwidthCharacterWidth}dispose(){super.dispose()}onConfigurationChanged(a){let b=this._context.configuration.options;return this._rulers=b.get(116),this._typicalHalfwidthCharacterWidth=b.get(59).typicalHalfwidthCharacterWidth,!0}onScrollChanged(a){return a.scrollHeightChanged}prepareRender(a){}_ensureRulersCount(){let a=this._renderedRulers.length,b=this._rulers.length;if(a===b)return;if(a<b){let{tabSize:c}=this._context.viewModel.model.getOptions(),d=b-a;for(;d>0;){let a=(0,Y.Z)(document.createElement("div"));a.setClassName("view-ruler"),a.setWidth(c),this.domNode.appendChild(a),this._renderedRulers.push(a),d--}return}let c=a-b;for(;c>0;){let a=this._renderedRulers.pop();this.domNode.removeChild(a),c--}}render(a){this._ensureRulersCount();for(let b=0,c=this._rulers.length;b<c;b++){let c=this._renderedRulers[b],d=this._rulers[b];c.setBoxShadow(d.color?`1px 0 0 0 ${d.color} inset`:""),c.setHeight(Math.min(a.scrollHeight,1e6)),c.setLeft(d.column*this._typicalHalfwidthCharacterWidth)}}}c(14699);class ci extends _{constructor(a){super(a),this._scrollTop=0,this._width=0,this._updateWidth(),this._shouldShow=!1;const b=this._context.configuration.options.get(117);this._useShadows=b.useShadows,this._domNode=(0,Y.Z)(document.createElement("div")),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true")}dispose(){super.dispose()}_updateShouldShow(){let a=this._useShadows&&this._scrollTop>0;return this._shouldShow!==a&&(this._shouldShow=a,!0)}getDomNode(){return this._domNode}_updateWidth(){let a=this._context.configuration.options.get(165);0===a.minimap.renderMinimap||a.minimap.minimapWidth>0&&0===a.minimap.minimapLeft?this._width=a.width:this._width=a.width-a.verticalScrollbarWidth}onConfigurationChanged(a){let b=this._context.configuration.options.get(117);return this._useShadows=b.useShadows,this._updateWidth(),this._updateShouldShow(),!0}onScrollChanged(a){return this._scrollTop=a.scrollTop,this._updateShouldShow()}prepareRender(a){}render(a){this._domNode.setWidth(this._width),this._domNode.setClassName(this._shouldShow?"scroll-decoration":"")}}c(44555);class cj{constructor(a){this.left=a.left,this.width=a.width,this.startStyle=null,this.endStyle=null}}class ck{constructor(a,b){this.lineNumber=a,this.ranges=b}}function cl(a){return new cj(a)}function cm(a){return new ck(a.lineNumber,a.ranges.map(cl))}class cn extends bg{static{this.SELECTION_CLASS_NAME="selected-text"}static{this.SELECTION_TOP_LEFT="top-left-radius"}static{this.SELECTION_BOTTOM_LEFT="bottom-left-radius"}static{this.SELECTION_TOP_RIGHT="top-right-radius"}static{this.SELECTION_BOTTOM_RIGHT="bottom-right-radius"}static{this.EDITOR_BACKGROUND_CLASS_NAME="monaco-editor-background"}static{this.ROUNDED_PIECE_WIDTH=10}constructor(a){super(),this._previousFrameVisibleRangesWithStyle=[],this._context=a;const b=this._context.configuration.options;this._roundedSelection=b.get(115),this._typicalHalfwidthCharacterWidth=b.get(59).typicalHalfwidthCharacterWidth,this._selections=[],this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(a){let b=this._context.configuration.options;return this._roundedSelection=b.get(115),this._typicalHalfwidthCharacterWidth=b.get(59).typicalHalfwidthCharacterWidth,!0}onCursorStateChanged(a){return this._selections=a.selections.slice(0),!0}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return a.scrollTopChanged}onZonesChanged(a){return!0}_visibleRangesHaveGaps(a){for(let b=0,c=a.length;b<c;b++)if(a[b].ranges.length>1)return!0;return!1}_enrichVisibleRangesWithStyle(a,b,c){let d=this._typicalHalfwidthCharacterWidth/4,e=null,f=null;if(c&&c.length>0&&b.length>0){let d=b[0].lineNumber;if(d===a.startLineNumber)for(let a=0;!e&&a<c.length;a++)c[a].lineNumber===d&&(e=c[a].ranges[0]);let g=b[b.length-1].lineNumber;if(g===a.endLineNumber)for(let a=c.length-1;!f&&a>=0;a--)c[a].lineNumber===g&&(f=c[a].ranges[0]);e&&!e.startStyle&&(e=null),f&&!f.startStyle&&(f=null)}for(let a=0,c=b.length;a<c;a++){let g=b[a].ranges[0],h=g.left,i=g.left+g.width,j={top:0,bottom:0},k={top:0,bottom:0};if(a>0){let c=b[a-1].ranges[0].left,e=b[a-1].ranges[0].left+b[a-1].ranges[0].width;co(h-c)<d?j.top=2:h>c&&(j.top=1),co(i-e)<d?k.top=2:c<i&&i<e&&(k.top=1)}else e&&(j.top=e.startStyle.top,k.top=e.endStyle.top);if(a+1<c){let c=b[a+1].ranges[0].left,e=b[a+1].ranges[0].left+b[a+1].ranges[0].width;co(h-c)<d?j.bottom=2:c<h&&h<e&&(j.bottom=1),co(i-e)<d?k.bottom=2:i<e&&(k.bottom=1)}else f&&(j.bottom=f.startStyle.bottom,k.bottom=f.endStyle.bottom);g.startStyle=j,g.endStyle=k}}_getVisibleRangesWithStyle(a,b,c){let d=(b.linesVisibleRangesForRange(a,!0)||[]).map(cm);return!this._visibleRangesHaveGaps(d)&&this._roundedSelection&&this._enrichVisibleRangesWithStyle(b.visibleRange,d,c),d}_createSelectionPiece(a,b,c,d,e){return'<div class="cslr '+c+'" style="top:'+a.toString()+"px;bottom:"+b.toString()+"px;left:"+d.toString()+"px;width:"+e.toString()+'px;"></div>'}_actualRenderOneSelection(a,b,c,d){if(0===d.length)return;let e=!!d[0].ranges[0].startStyle,f=d[0].lineNumber,g=d[d.length-1].lineNumber;for(let h=0,i=d.length;h<i;h++){let i=d[h],j=i.lineNumber,k=j-b,l=c?+(j===f):0,m=c?+(j!==f&&j===g):0,n="",o="";for(let a=0,b=i.ranges.length;a<b;a++){let b=i.ranges[a];if(e){let a=b.startStyle,c=b.endStyle;if(1===a.top||1===a.bottom){n+=this._createSelectionPiece(l,m,cn.SELECTION_CLASS_NAME,b.left-cn.ROUNDED_PIECE_WIDTH,cn.ROUNDED_PIECE_WIDTH);let c=cn.EDITOR_BACKGROUND_CLASS_NAME;1===a.top&&(c+=" "+cn.SELECTION_TOP_RIGHT),1===a.bottom&&(c+=" "+cn.SELECTION_BOTTOM_RIGHT),n+=this._createSelectionPiece(l,m,c,b.left-cn.ROUNDED_PIECE_WIDTH,cn.ROUNDED_PIECE_WIDTH)}if(1===c.top||1===c.bottom){n+=this._createSelectionPiece(l,m,cn.SELECTION_CLASS_NAME,b.left+b.width,cn.ROUNDED_PIECE_WIDTH);let a=cn.EDITOR_BACKGROUND_CLASS_NAME;1===c.top&&(a+=" "+cn.SELECTION_TOP_LEFT),1===c.bottom&&(a+=" "+cn.SELECTION_BOTTOM_LEFT),n+=this._createSelectionPiece(l,m,a,b.left+b.width,cn.ROUNDED_PIECE_WIDTH)}}let c=cn.SELECTION_CLASS_NAME;if(e){let a=b.startStyle,d=b.endStyle;0===a.top&&(c+=" "+cn.SELECTION_TOP_LEFT),0===a.bottom&&(c+=" "+cn.SELECTION_BOTTOM_LEFT),0===d.top&&(c+=" "+cn.SELECTION_TOP_RIGHT),0===d.bottom&&(c+=" "+cn.SELECTION_BOTTOM_RIGHT)}o+=this._createSelectionPiece(l,m,c,b.left,b.width)}a[k][0]+=n,a[k][1]+=o}}prepareRender(a){let b=[],c=a.visibleRange.startLineNumber,d=a.visibleRange.endLineNumber;for(let a=c;a<=d;a++)b[a-c]=["",""];let e=[];for(let d=0,f=this._selections.length;d<f;d++){let f=this._selections[d];if(f.isEmpty()){e[d]=null;continue}let g=this._getVisibleRangesWithStyle(f,a,this._previousFrameVisibleRangesWithStyle[d]);e[d]=g,this._actualRenderOneSelection(b,c,this._selections.length>1,g)}this._previousFrameVisibleRangesWithStyle=e,this._renderResult=b.map(([a,b])=>a+b)}render(a,b){if(!this._renderResult)return"";let c=b-a;return c<0||c>=this._renderResult.length?"":this._renderResult[c]}}function co(a){return a<0?-a:a}(0,bi.zy)((a,b)=>{let c=a.getColor(bR.rm4);c&&!c.isTransparent()&&b.addRule(`.monaco-editor .view-line span.inline-selected-text { color: ${c}; }`)}),c(28199);class cp{constructor(a,b,c,d,e,f,g){this.top=a,this.left=b,this.paddingLeft=c,this.width=d,this.height=e,this.textContent=f,this.textContentClassName=g}}(f=o||(o={}))[f.Single=0]="Single",f[f.MultiPrimary=1]="MultiPrimary",f[f.MultiSecondary=2]="MultiSecondary";class cq{constructor(a,b){this._context=a;const c=this._context.configuration.options,d=c.get(59);this._cursorStyle=c.get(161),this._typicalHalfwidthCharacterWidth=d.typicalHalfwidthCharacterWidth,this._lineCursorWidth=Math.min(c.get(37),this._typicalHalfwidthCharacterWidth),this._lineCursorHeight=c.get(38),this._isVisible=!0,this._domNode=(0,Y.Z)(document.createElement("div")),this._domNode.setClassName(`cursor ${bD}`),this._domNode.setHeight(this._context.viewLayout.getLineHeightForLineNumber(1)),this._domNode.setTop(0),this._domNode.setLeft(0),(0,A.M)(this._domNode,d),this._domNode.setDisplay("none"),this._position=new ac.y(1,1),this._pluralityClass="",this.setPlurality(b),this._lastRenderedContent="",this._renderData=null}getDomNode(){return this._domNode}getPosition(){return this._position}setPlurality(a){switch(a){default:case o.Single:this._pluralityClass="";break;case o.MultiPrimary:this._pluralityClass="cursor-primary";break;case o.MultiSecondary:this._pluralityClass="cursor-secondary"}}show(){this._isVisible||(this._domNode.setVisibility("inherit"),this._isVisible=!0)}hide(){this._isVisible&&(this._domNode.setVisibility("hidden"),this._isVisible=!1)}onConfigurationChanged(a){let b=this._context.configuration.options,c=b.get(59);return this._cursorStyle=b.get(161),this._typicalHalfwidthCharacterWidth=c.typicalHalfwidthCharacterWidth,this._lineCursorWidth=Math.min(b.get(37),this._typicalHalfwidthCharacterWidth),this._lineCursorHeight=b.get(38),(0,A.M)(this._domNode,c),!0}onCursorPositionChanged(a,b){return b?this._domNode.domNode.style.transitionProperty="none":this._domNode.domNode.style.transitionProperty="",this._position=a,!0}_getGraphemeAwarePosition(){let{lineNumber:a,column:b}=this._position,c=this._context.viewModel.getLineContent(a),[d,e]=aM.m(c,b-1);return[new ac.y(a,d+1),c.substring(d,e)]}_prepareRender(a){let b="",c="",[d,e]=this._getGraphemeAwarePosition(),f=this._context.viewLayout.getLineHeightForLineNumber(d.lineNumber),g=0===this._lineCursorHeight?f:Math.min(f,this._lineCursorHeight),h=(f-g)/2;if(this._cursorStyle===M.m9.Line||this._cursorStyle===M.m9.LineThin){let f,i=a.visibleRangeForPosition(d);if(!i||i.outsideRenderedLine)return null;let j=v.zk(this._domNode.domNode);this._cursorStyle===M.m9.Line?(f=v.vT(j,this._lineCursorWidth>0?this._lineCursorWidth:2))>2&&(b=e,c=this._getTokenClassName(d)):f=v.vT(j,1);let k=i.left,l=0;return f>=2&&k>=1&&(k-=l=1),new cp(a.getVerticalOffsetForLineNumber(d.lineNumber)-a.bigNumbersDelta+h,k,l,f,g,b,c)}let i=a.linesVisibleRangesForRange(new ad.Q(d.lineNumber,d.column,d.lineNumber,d.column+e.length),!1);if(!i||0===i.length)return null;let j=i[0];if(j.outsideRenderedLine||0===j.ranges.length)return null;let k=j.ranges[0],l=" "===e||k.width<1?this._typicalHalfwidthCharacterWidth:k.width;this._cursorStyle===M.m9.Block&&(b=e,c=this._getTokenClassName(d));let m=a.getVerticalOffsetForLineNumber(d.lineNumber)-a.bigNumbersDelta,n=f;return(this._cursorStyle===M.m9.Underline||this._cursorStyle===M.m9.UnderlineThin)&&(m+=f-2,n=2),new cp(m,k.left,0,l,n,b,c)}_getTokenClassName(a){let b=this._context.viewModel.getViewLineData(a.lineNumber),c=b.tokens.findTokenIndexAtOffset(a.column-1);return b.tokens.getClassName(c)}prepareRender(a){this._renderData=this._prepareRender(a)}render(a){return this._renderData?(this._lastRenderedContent!==this._renderData.textContent&&(this._lastRenderedContent=this._renderData.textContent,this._domNode.domNode.textContent=this._lastRenderedContent),this._domNode.setClassName(`cursor ${this._pluralityClass} ${bD} ${this._renderData.textContentClassName}`),this._domNode.setDisplay("block"),this._domNode.setTop(this._renderData.top),this._domNode.setLeft(this._renderData.left),this._domNode.setPaddingLeft(this._renderData.paddingLeft),this._domNode.setWidth(this._renderData.width),this._domNode.setLineHeight(this._renderData.height),this._domNode.setHeight(this._renderData.height),{domNode:this._domNode.domNode,position:this._position,contentLeft:this._renderData.left,height:this._renderData.height,width:2}):(this._domNode.setDisplay("none"),null)}}class cr extends _{static{this.BLINK_INTERVAL=500}constructor(a){super(a);const b=this._context.configuration.options;this._readOnly=b.get(104),this._cursorBlinking=b.get(32),this._cursorStyle=b.get(161),this._cursorSmoothCaretAnimation=b.get(33),this._editContextEnabled=b.get(170),this._selectionIsEmpty=!0,this._isComposingInput=!1,this._isVisible=!1,this._primaryCursor=new cq(this._context,o.Single),this._secondaryCursors=[],this._renderData=[],this._domNode=(0,Y.Z)(document.createElement("div")),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._updateDomClassName(),this._domNode.appendChild(this._primaryCursor.getDomNode()),this._startCursorBlinkAnimation=new aL.pc,this._cursorFlatBlinkInterval=new v.Be,this._blinkingEnabled=!1,this._editorHasFocus=!1,this._updateBlinking()}dispose(){super.dispose(),this._startCursorBlinkAnimation.dispose(),this._cursorFlatBlinkInterval.dispose()}getDomNode(){return this._domNode}onCompositionStart(a){return this._isComposingInput=!0,this._updateBlinking(),!0}onCompositionEnd(a){return this._isComposingInput=!1,this._updateBlinking(),!0}onConfigurationChanged(a){let b=this._context.configuration.options;this._readOnly=b.get(104),this._cursorBlinking=b.get(32),this._cursorStyle=b.get(161),this._cursorSmoothCaretAnimation=b.get(33),this._editContextEnabled=b.get(170),this._updateBlinking(),this._updateDomClassName(),this._primaryCursor.onConfigurationChanged(a);for(let b=0,c=this._secondaryCursors.length;b<c;b++)this._secondaryCursors[b].onConfigurationChanged(a);return!0}_onCursorPositionChanged(a,b,c){let d=this._secondaryCursors.length!==b.length||"explicit"===this._cursorSmoothCaretAnimation&&3!==c;if(this._primaryCursor.setPlurality(b.length?o.MultiPrimary:o.Single),this._primaryCursor.onCursorPositionChanged(a,d),this._updateBlinking(),this._secondaryCursors.length<b.length){let a=b.length-this._secondaryCursors.length;for(let b=0;b<a;b++){let a=new cq(this._context,o.MultiSecondary);this._domNode.domNode.insertBefore(a.getDomNode().domNode,this._primaryCursor.getDomNode().domNode.nextSibling),this._secondaryCursors.push(a)}}else if(this._secondaryCursors.length>b.length){let a=this._secondaryCursors.length-b.length;for(let b=0;b<a;b++)this._domNode.removeChild(this._secondaryCursors[0].getDomNode()),this._secondaryCursors.splice(0,1)}for(let a=0;a<b.length;a++)this._secondaryCursors[a].onCursorPositionChanged(b[a],d)}onCursorStateChanged(a){let b=[];for(let c=0,d=a.selections.length;c<d;c++)b[c]=a.selections[c].getPosition();this._onCursorPositionChanged(b[0],b.slice(1),a.reason);let c=a.selections[0].isEmpty();return this._selectionIsEmpty!==c&&(this._selectionIsEmpty=c,this._updateDomClassName()),!0}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onFocusChanged(a){return this._editorHasFocus=a.isFocused,this._updateBlinking(),!1}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return!0}onTokensChanged(a){let b=b=>{for(let c=0,d=a.ranges.length;c<d;c++)if(a.ranges[c].fromLineNumber<=b.lineNumber&&b.lineNumber<=a.ranges[c].toLineNumber)return!0;return!1};if(b(this._primaryCursor.getPosition()))return!0;for(let a of this._secondaryCursors)if(b(a.getPosition()))return!0;return!1}onZonesChanged(a){return!0}_getCursorBlinking(){return(!this._isComposingInput||this._editContextEnabled)&&this._editorHasFocus?this._readOnly?5:this._cursorBlinking:0}_updateBlinking(){this._startCursorBlinkAnimation.cancel(),this._cursorFlatBlinkInterval.cancel();let a=this._getCursorBlinking(),b=0===a;b?this._hide():this._show(),this._blinkingEnabled=!1,this._updateDomClassName(),b||5===a||(1===a?this._cursorFlatBlinkInterval.cancelAndSet(()=>{this._isVisible?this._hide():this._show()},cr.BLINK_INTERVAL,(0,v.zk)(this._domNode.domNode)):this._startCursorBlinkAnimation.setIfNotSet(()=>{this._blinkingEnabled=!0,this._updateDomClassName()},cr.BLINK_INTERVAL))}_updateDomClassName(){this._domNode.setClassName(this._getClassName())}_getClassName(){let a="cursors-layer";switch(!this._selectionIsEmpty&&(a+=" has-selection"),this._cursorStyle){case M.m9.Line:a+=" cursor-line-style";break;case M.m9.Block:a+=" cursor-block-style";break;case M.m9.Underline:a+=" cursor-underline-style";break;case M.m9.LineThin:a+=" cursor-line-thin-style";break;case M.m9.BlockOutline:a+=" cursor-block-outline-style";break;case M.m9.UnderlineThin:a+=" cursor-underline-thin-style";break;default:a+=" cursor-line-style"}if(this._blinkingEnabled)switch(this._getCursorBlinking()){case 1:a+=" cursor-blink";break;case 2:a+=" cursor-smooth";break;case 3:a+=" cursor-phase";break;case 4:a+=" cursor-expand";break;default:a+=" cursor-solid"}else a+=" cursor-solid";return("on"===this._cursorSmoothCaretAnimation||"explicit"===this._cursorSmoothCaretAnimation)&&(a+=" cursor-smooth-caret-animation"),a}_show(){this._primaryCursor.show();for(let a=0,b=this._secondaryCursors.length;a<b;a++)this._secondaryCursors[a].show();this._isVisible=!0}_hide(){this._primaryCursor.hide();for(let a=0,b=this._secondaryCursors.length;a<b;a++)this._secondaryCursors[a].hide();this._isVisible=!1}prepareRender(a){this._primaryCursor.prepareRender(a);for(let b=0,c=this._secondaryCursors.length;b<c;b++)this._secondaryCursors[b].prepareRender(a)}render(a){let b=[],c=0,d=this._primaryCursor.render(a);d&&(b[c++]=d);for(let d=0,e=this._secondaryCursors.length;d<e;d++){let e=this._secondaryCursors[d].render(a);e&&(b[c++]=e)}this._renderData=b}getLastRenderData(){return this._renderData}}(0,bi.zy)((a,b)=>{for(let c of[{class:".cursor",foreground:bh.D0,background:bh.kM},{class:".cursor-primary",foreground:bh.sC,background:bh.je},{class:".cursor-secondary",foreground:bh.we,background:bh.L0}]){let d=a.getColor(c.foreground);if(d){let e=a.getColor(c.background);e||(e=d.opposite()),b.addRule(`.monaco-editor .cursors-layer ${c.class} { background-color: ${d}; border-color: ${d}; color: ${e}; }`),(0,bj.Bb)(a.type)&&b.addRule(`.monaco-editor .cursors-layer.has-selection ${c.class} { border-left: 1px solid ${e}; border-right: 1px solid ${e}; }`)}}});let cs=()=>{throw Error("Invalid change accessor")};class ct extends _{constructor(a){super(a);const b=this._context.configuration.options,c=b.get(165);this._lineHeight=b.get(75),this._contentWidth=c.contentWidth,this._contentLeft=c.contentLeft,this.domNode=(0,Y.Z)(document.createElement("div")),this.domNode.setClassName("view-zones"),this.domNode.setPosition("absolute"),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this.marginDomNode=(0,Y.Z)(document.createElement("div")),this.marginDomNode.setClassName("margin-view-zones"),this.marginDomNode.setPosition("absolute"),this.marginDomNode.setAttribute("role","presentation"),this.marginDomNode.setAttribute("aria-hidden","true"),this._zones={}}dispose(){super.dispose(),this._zones={}}_recomputeWhitespacesProps(){let a=this._context.viewLayout.getWhitespaces(),b=new Map;for(let c of a)b.set(c.id,c);let c=!1;return this._context.viewModel.changeWhitespace(a=>{let d=Object.keys(this._zones);for(let e=0,f=d.length;e<f;e++){let f=d[e],g=this._zones[f],h=this._computeWhitespaceProps(g.delegate);g.isInHiddenArea=h.isInHiddenArea;let i=b.get(f);i&&(i.afterLineNumber!==h.afterViewLineNumber||i.height!==h.heightInPx)&&(a.changeOneWhitespace(f,h.afterViewLineNumber,h.heightInPx),this._safeCallOnComputedHeight(g.delegate,h.heightInPx),c=!0)}}),c}onConfigurationChanged(a){let b=this._context.configuration.options,c=b.get(165);return this._lineHeight=b.get(75),this._contentWidth=c.contentWidth,this._contentLeft=c.contentLeft,a.hasChanged(75)&&this._recomputeWhitespacesProps(),!0}onLineMappingChanged(a){return this._recomputeWhitespacesProps()}onLinesDeleted(a){return!0}onScrollChanged(a){return a.scrollTopChanged||a.scrollWidthChanged}onZonesChanged(a){return!0}onLinesInserted(a){return!0}_getZoneOrdinal(a){return a.ordinal??a.afterColumn??1e4}_computeWhitespaceProps(a){let b,c;if(0===a.afterLineNumber)return{isInHiddenArea:!1,afterViewLineNumber:0,heightInPx:this._heightInPixels(a),minWidthInPx:this._minWidthInPixels(a)};if(void 0!==a.afterColumn)b=this._context.viewModel.model.validatePosition({lineNumber:a.afterLineNumber,column:a.afterColumn});else{let c=this._context.viewModel.model.validatePosition({lineNumber:a.afterLineNumber,column:1}).lineNumber;b=new ac.y(c,this._context.viewModel.model.getLineMaxColumn(c))}c=b.column===this._context.viewModel.model.getLineMaxColumn(b.lineNumber)?this._context.viewModel.model.validatePosition({lineNumber:b.lineNumber+1,column:1}):this._context.viewModel.model.validatePosition({lineNumber:b.lineNumber,column:b.column+1});let d=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(b,a.afterColumnAffinity,!0),e=a.showInHiddenAreas||this._context.viewModel.coordinatesConverter.modelPositionIsVisible(c);return{isInHiddenArea:!e,afterViewLineNumber:d.lineNumber,heightInPx:e?this._heightInPixels(a):0,minWidthInPx:this._minWidthInPixels(a)}}changeViewZones(a){let b=!1;return this._context.viewModel.changeWhitespace(c=>{let d={addZone:a=>(b=!0,this._addZone(c,a)),removeZone:a=>{a&&(b=this._removeZone(c,a)||b)},layoutZone:a=>{a&&(b=this._layoutZone(c,a)||b)}};(function(a,b){try{a(b)}catch(a){(0,w.dz)(a)}})(a,d),d.addZone=cs,d.removeZone=cs,d.layoutZone=cs}),b}_addZone(a,b){let c=this._computeWhitespaceProps(b),d={whitespaceId:a.insertWhitespace(c.afterViewLineNumber,this._getZoneOrdinal(b),c.heightInPx,c.minWidthInPx),delegate:b,isInHiddenArea:c.isInHiddenArea,isVisible:!1,domNode:(0,Y.Z)(b.domNode),marginDomNode:b.marginDomNode?(0,Y.Z)(b.marginDomNode):null};return this._safeCallOnComputedHeight(d.delegate,c.heightInPx),d.domNode.setPosition("absolute"),d.domNode.domNode.style.width="100%",d.domNode.setDisplay("none"),d.domNode.setAttribute("monaco-view-zone",d.whitespaceId),this.domNode.appendChild(d.domNode),d.marginDomNode&&(d.marginDomNode.setPosition("absolute"),d.marginDomNode.domNode.style.width="100%",d.marginDomNode.setDisplay("none"),d.marginDomNode.setAttribute("monaco-view-zone",d.whitespaceId),this.marginDomNode.appendChild(d.marginDomNode)),this._zones[d.whitespaceId]=d,this.setShouldRender(),d.whitespaceId}_removeZone(a,b){if(this._zones.hasOwnProperty(b)){let c=this._zones[b];return delete this._zones[b],a.removeWhitespace(c.whitespaceId),c.domNode.removeAttribute("monaco-visible-view-zone"),c.domNode.removeAttribute("monaco-view-zone"),c.domNode.domNode.remove(),c.marginDomNode&&(c.marginDomNode.removeAttribute("monaco-visible-view-zone"),c.marginDomNode.removeAttribute("monaco-view-zone"),c.marginDomNode.domNode.remove()),this.setShouldRender(),!0}return!1}_layoutZone(a,b){if(this._zones.hasOwnProperty(b)){let c=this._zones[b],d=this._computeWhitespaceProps(c.delegate);return c.isInHiddenArea=d.isInHiddenArea,a.changeOneWhitespace(c.whitespaceId,d.afterViewLineNumber,d.heightInPx),this._safeCallOnComputedHeight(c.delegate,d.heightInPx),this.setShouldRender(),!0}return!1}shouldSuppressMouseDownOnViewZone(a){return!!this._zones.hasOwnProperty(a)&&!!this._zones[a].delegate.suppressMouseDown}_heightInPixels(a){return"number"==typeof a.heightInPx?a.heightInPx:"number"==typeof a.heightInLines?this._lineHeight*a.heightInLines:this._lineHeight}_minWidthInPixels(a){return"number"==typeof a.minWidthInPx?a.minWidthInPx:0}_safeCallOnComputedHeight(a,b){if("function"==typeof a.onComputedHeight)try{a.onComputedHeight(b)}catch(a){(0,w.dz)(a)}}_safeCallOnDomNodeTop(a,b){if("function"==typeof a.onDomNodeTop)try{a.onDomNodeTop(b)}catch(a){(0,w.dz)(a)}}prepareRender(a){}render(a){let b=a.viewportData.whitespaceViewportData,c={},d=!1;for(let a of b)this._zones[a.id].isInHiddenArea||(c[a.id]=a,d=!0);let e=Object.keys(this._zones);for(let b=0,d=e.length;b<d;b++){let d=e[b],f=this._zones[d],g=0,h=0,i="none";c.hasOwnProperty(d)?(g=c[d].verticalOffset-a.bigNumbersDelta,h=c[d].height,i="block",f.isVisible||(f.domNode.setAttribute("monaco-visible-view-zone","true"),f.isVisible=!0),this._safeCallOnDomNodeTop(f.delegate,a.getScrolledTopFromAbsoluteTop(c[d].verticalOffset))):(f.isVisible&&(f.domNode.removeAttribute("monaco-visible-view-zone"),f.isVisible=!1),this._safeCallOnDomNodeTop(f.delegate,a.getScrolledTopFromAbsoluteTop(-1e6))),f.domNode.setTop(g),f.domNode.setHeight(h),f.domNode.setDisplay(i),f.marginDomNode&&(f.marginDomNode.setTop(g),f.marginDomNode.setHeight(h),f.marginDomNode.setDisplay(i))}d&&(this.domNode.setWidth(Math.max(a.scrollWidth,this._contentWidth)),this.marginDomNode.setWidth(this._contentLeft))}}c(49155);var cu=c(58912);class cv extends bg{constructor(a){super(),this._context=a,this._options=new cw(this._context.configuration),this._selection=[],this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(a){let b=new cw(this._context.configuration);return this._options.equals(b)?a.hasChanged(165):(this._options=b,!0)}onCursorStateChanged(a){return this._selection=a.selections,"selection"===this._options.renderWhitespace}onDecorationsChanged(a){return!0}onFlushed(a){return!0}onLinesChanged(a){return!0}onLinesDeleted(a){return!0}onLinesInserted(a){return!0}onScrollChanged(a){return a.scrollTopChanged}onZonesChanged(a){return!0}prepareRender(a){if("none"===this._options.renderWhitespace){this._renderResult=null;return}let b=a.visibleRange.startLineNumber,c=a.visibleRange.endLineNumber-b+1,d=Array(c);for(let a=0;a<c;a++)d[a]=!0;this._renderResult=[];for(let b=a.viewportData.startLineNumber;b<=a.viewportData.endLineNumber;b++){let c=b-a.viewportData.startLineNumber,d=this._context.viewModel.getViewLineRenderingData(b),e=null;if("selection"===this._options.renderWhitespace)for(let a of this._selection){if(a.endLineNumber<b||a.startLineNumber>b)continue;let c=a.startLineNumber===b?a.startColumn:d.minColumn,f=a.endLineNumber===b?a.endColumn:d.maxColumn;c<f&&(e||(e=[]),e.push(new cu.L(c-1,f-1)))}this._renderResult[c]=this._applyRenderWhitespace(a,b,e,d)}}_applyRenderWhitespace(a,b,c,d){let e;if(d.hasVariableFonts||"selection"===this._options.renderWhitespace&&!c||"trailing"===this._options.renderWhitespace&&d.continuesWithWrappedLine)return"";let f=this._context.theme.getColor(bh.w4),g=this._options.renderWithSVG,h=d.content,i=-1===this._options.stopRenderingLineAfter?h.length:Math.min(this._options.stopRenderingLineAfter,h.length),j=d.continuesWithWrappedLine,k=d.minColumn-1,l="boundary"===this._options.renderWhitespace,m="trailing"===this._options.renderWhitespace,n=a.getLineHeightForLineNumber(b),o=this._options.middotWidth,p=this._options.wsmiddotWidth,q=this._options.spaceWidth,r=Math.abs(p-q)<Math.abs(o-q)?11825:183,s=this._options.canUseHalfwidthRightwardsArrow,t="",u=!1,v=aM.HG(h);-1===v?(u=!0,v=i,e=i):e=aM.lT(h);let w=0,x=c&&c[w],y=0;for(let d=k;d<i;d++){let f=h.charCodeAt(d);if(x&&x.endExclusive<=d&&(w++,x=c&&c[w]),9!==f&&32!==f||m&&!u&&d<=e)continue;if(l&&d>=v&&d<=e&&32===f){let a=d-1>=0?h.charCodeAt(d-1):0,b=d+1<i?h.charCodeAt(d+1):0;if(32!==a&&32!==b)continue}if(l&&j&&d===i-1){let a=d-1>=0?h.charCodeAt(d-1):0;if(32===f&&32!==a&&9!==a)continue}if(c&&!(x&&x.start<=d&&d<x.endExclusive))continue;let k=a.visibleRangeForPosition(new ac.y(b,d+1));k&&(g?(y=Math.max(y,k.left),9===f?t+=this._renderArrow(n,q,k.left):t+=`<circle cx="${(k.left+q/2).toFixed(2)}" cy="${(n/2).toFixed(2)}" r="${(q/7).toFixed(2)}" />`):9===f?t+=`<div class="mwh" style="left:${k.left}px;height:${n}px;">${s?String.fromCharCode(65515):String.fromCharCode(8594)}</div>`:t+=`<div class="mwh" style="left:${k.left}px;height:${n}px;">${String.fromCharCode(r)}</div>`)}return g?(y=Math.round(y+q),`<svg style="bottom:0;position:absolute;width:${y}px;height:${n}px" viewBox="0 0 ${y} ${n}" xmlns="http://www.w3.org/2000/svg" fill="${f}">`+t+"</svg>"):t}_renderArrow(a,b,c){let d=a/2,e={x:0,y:b/7/2},f={x:.8*b,y:e.y},g={x:f.x-.2*f.x,y:f.y+.2*f.x},h={x:g.x+.1*f.x,y:g.y+.1*f.x},i={x:h.x+.35*f.x,y:h.y-.35*f.x},j={x:i.x,y:-i.y},k={x:h.x,y:-h.y},l={x:g.x,y:-g.y},m={x:f.x,y:-f.y},n={x:e.x,y:-e.y},o=[e,f,g,h,i,j,k,l,m,n].map(a=>`${(c+a.x).toFixed(2)} ${(d+a.y).toFixed(2)}`).join(" L ");return`<path d="M ${o}" />`}render(a,b){if(!this._renderResult)return"";let c=b-a;return c<0||c>=this._renderResult.length?"":this._renderResult[c]}}class cw{constructor(a){const b=a.options,c=b.get(59),d=b.get(47);"off"===d?(this.renderWhitespace="none",this.renderWithSVG=!1):"svg"===d?(this.renderWhitespace=b.get(113),this.renderWithSVG=!0):(this.renderWhitespace=b.get(113),this.renderWithSVG=!1),this.spaceWidth=c.spaceWidth,this.middotWidth=c.middotWidth,this.wsmiddotWidth=c.wsmiddotWidth,this.canUseHalfwidthRightwardsArrow=c.canUseHalfwidthRightwardsArrow,this.lineHeight=b.get(75),this.stopRenderingLineAfter=b.get(133)}equals(a){return this.renderWhitespace===a.renderWhitespace&&this.renderWithSVG===a.renderWithSVG&&this.spaceWidth===a.spaceWidth&&this.middotWidth===a.middotWidth&&this.wsmiddotWidth===a.wsmiddotWidth&&this.canUseHalfwidthRightwardsArrow===a.canUseHalfwidthRightwardsArrow&&this.lineHeight===a.lineHeight&&this.stopRenderingLineAfter===a.stopRenderingLineAfter}}class cx{constructor(a,b,c,d){this.selections=a,this.startLineNumber=0|b.startLineNumber,this.endLineNumber=0|b.endLineNumber,this.relativeVerticalOffset=b.relativeVerticalOffset,this.bigNumbersDelta=0|b.bigNumbersDelta,this.lineHeight=0|b.lineHeight,this.whitespaceViewportData=c,this._model=d,this.visibleRange=new ad.Q(b.startLineNumber,this._model.getLineMinColumn(b.startLineNumber),b.endLineNumber,this._model.getLineMaxColumn(b.endLineNumber))}getViewLineRenderingData(a){return this._model.getViewportViewLineRenderingData(this.visibleRange,a)}getDecorationsInViewport(){return this._model.getDecorationsInViewport(this.visibleRange)}}class cy{get type(){return this._theme.type}get value(){return this._theme}constructor(a){this._theme=a}update(a){this._theme=a}getColor(a){return this._theme.getColor(a)}}class cz{constructor(a,b,c){this.configuration=a,this.theme=new cy(b),this.viewModel=c,this.viewLayout=c.viewLayout}addEventHandler(a){this.viewModel.addViewEventHandler(a)}removeEventHandler(a){this.viewModel.removeViewEventHandler(a)}}var cA=c(21652),cB=c(37577),cC=c(39537),cD=c(64217),cE=c(59237),cF=c(15522),cG=c(51407),cH=c(38209);function cI(a,b){return a.isBasicASCII&&b.useMonospaceOptimizations?new cJ(a):new cK(a)}class cJ{constructor(a){this._content=a.content}getSegmentAtIndex(a){return this._content[a]}}class cK{constructor(a){this._segments=[];const b=a.content,c=Array.from(cH.x.Segmenter(void 0,{granularity:"grapheme"}).value.segment(b));let d=0;for(let a=0;a<b.length;a++){const b=c[d];if(!b)break;if(b.index!==a){this._segments.push(void 0);continue}d++,this._segments.push(b)}}getSegmentAtIndex(a){return this._segments[a]?.segment}}class cL extends $.i{get glyphRasterizer(){return this._glyphRasterizer.value}constructor(a,b,c,d){super(),this._context=a,this._viewGpuContext=b,this._device=c,this._glyphRasterizer=d,this._context.addEventHandler(this)}}let cM=`
100
100
  struct GlyphInfo {
101
101
  position: vec2f,
102
102
  size: vec2f,