@arcgis/coding-components 4.29.0-beta.11 → 4.29.0-beta.110

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 (404) hide show
  1. package/LICENSE.md +1 -1
  2. package/README.md +6 -2
  3. package/dist/arcgis-coding-components/arcgis-coding-components.esm.js +6 -1
  4. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.ar.json +8 -8
  5. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.bg.json +8 -8
  6. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.bs.json +8 -8
  7. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.ca.json +8 -8
  8. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.cs.json +8 -8
  9. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.da.json +8 -8
  10. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.de.json +8 -8
  11. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.el.json +8 -8
  12. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.en.json +8 -8
  13. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.es.json +8 -8
  14. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.et.json +8 -8
  15. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.fi.json +8 -8
  16. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.fr.json +8 -8
  17. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.he.json +8 -8
  18. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.hr.json +8 -8
  19. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.hu.json +8 -8
  20. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.id.json +8 -8
  21. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.it.json +8 -8
  22. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.ja.json +8 -8
  23. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.ko.json +8 -8
  24. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.lt.json +8 -8
  25. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.lv.json +8 -8
  26. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.nb.json +8 -8
  27. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.nl.json +8 -8
  28. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.pl.json +8 -8
  29. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.pt-BR.json +8 -8
  30. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.pt-PT.json +8 -8
  31. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.ro.json +8 -8
  32. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.ru.json +8 -8
  33. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.sk.json +8 -8
  34. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.sl.json +8 -8
  35. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.sr.json +8 -8
  36. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.sv.json +8 -8
  37. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.th.json +8 -8
  38. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.tr.json +8 -8
  39. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.uk.json +8 -8
  40. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.vi.json +8 -8
  41. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.zh-CN.json +8 -8
  42. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.zh-HK.json +8 -8
  43. package/dist/arcgis-coding-components/assets/arcade-api/t9n/arcade-api.t9n.zh-TW.json +8 -8
  44. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.ar.json +8 -8
  45. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.bg.json +8 -8
  46. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.bs.json +8 -8
  47. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.ca.json +8 -8
  48. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.cs.json +8 -8
  49. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.da.json +8 -8
  50. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.de.json +8 -8
  51. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.el.json +8 -8
  52. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.en.json +8 -8
  53. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.es.json +8 -8
  54. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.et.json +8 -8
  55. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.fi.json +8 -8
  56. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.fr.json +8 -8
  57. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.he.json +8 -8
  58. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.hr.json +8 -8
  59. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.hu.json +8 -8
  60. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.id.json +8 -8
  61. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.it.json +8 -8
  62. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.ja.json +8 -8
  63. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.ko.json +8 -8
  64. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.lt.json +8 -8
  65. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.lv.json +8 -8
  66. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.nb.json +8 -8
  67. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.nl.json +8 -8
  68. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.pl.json +8 -8
  69. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.pt-BR.json +8 -8
  70. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.pt-PT.json +8 -8
  71. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.ro.json +8 -8
  72. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.ru.json +8 -8
  73. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.sk.json +8 -8
  74. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.sl.json +8 -8
  75. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.sr.json +8 -8
  76. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.sv.json +8 -8
  77. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.th.json +8 -8
  78. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.tr.json +8 -8
  79. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.uk.json +8 -8
  80. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.vi.json +8 -8
  81. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.zh-CN.json +8 -8
  82. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.zh-HK.json +8 -8
  83. package/dist/arcgis-coding-components/assets/arcade-editor/t9n/arcade-editor.t9n.zh-TW.json +8 -8
  84. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.ar.json +492 -27
  85. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.bg.json +492 -27
  86. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.bs.json +492 -27
  87. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.ca.json +492 -27
  88. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.cs.json +492 -27
  89. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.da.json +492 -27
  90. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.de.json +492 -27
  91. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.el.json +492 -27
  92. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.en.json +492 -27
  93. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.es.json +492 -27
  94. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.et.json +492 -27
  95. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.fi.json +492 -27
  96. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.fr.json +492 -27
  97. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.he.json +492 -27
  98. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.hr.json +492 -27
  99. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.hu.json +492 -27
  100. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.id.json +492 -27
  101. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.it.json +492 -27
  102. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.ja.json +492 -27
  103. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.ko.json +492 -27
  104. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.lt.json +492 -27
  105. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.lv.json +492 -27
  106. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.nb.json +492 -27
  107. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.nl.json +492 -27
  108. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.pl.json +492 -27
  109. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.pt-BR.json +492 -27
  110. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.pt-PT.json +492 -27
  111. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.ro.json +492 -27
  112. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.ru.json +492 -27
  113. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.sk.json +492 -27
  114. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.sl.json +492 -27
  115. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.sr.json +492 -27
  116. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.sv.json +492 -27
  117. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.th.json +492 -27
  118. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.tr.json +492 -27
  119. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.uk.json +492 -27
  120. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.vi.json +492 -27
  121. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.zh-CN.json +492 -27
  122. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.zh-HK.json +492 -27
  123. package/dist/arcgis-coding-components/assets/arcade-language/api/arcade-api.t9n.zh-TW.json +492 -27
  124. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.ar.json +14 -2
  125. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.bg.json +14 -2
  126. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.bs.json +14 -2
  127. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.ca.json +14 -2
  128. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.cs.json +14 -2
  129. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.da.json +14 -2
  130. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.de.json +14 -2
  131. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.el.json +14 -2
  132. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.en.json +14 -2
  133. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.es.json +14 -2
  134. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.et.json +14 -2
  135. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.fi.json +14 -2
  136. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.fr.json +14 -2
  137. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.he.json +14 -2
  138. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.hr.json +14 -2
  139. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.hu.json +14 -2
  140. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.id.json +14 -2
  141. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.it.json +14 -2
  142. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.ja.json +14 -2
  143. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.ko.json +14 -2
  144. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.lt.json +14 -2
  145. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.lv.json +14 -2
  146. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.nb.json +14 -2
  147. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.nl.json +14 -2
  148. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.pl.json +14 -2
  149. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.pt-BR.json +14 -2
  150. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.pt-PT.json +14 -2
  151. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.ro.json +14 -2
  152. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.ru.json +14 -2
  153. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.sk.json +14 -2
  154. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.sl.json +14 -2
  155. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.sr.json +14 -2
  156. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.sv.json +14 -2
  157. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.th.json +14 -2
  158. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.tr.json +14 -2
  159. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.uk.json +14 -2
  160. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.vi.json +14 -2
  161. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.zh-CN.json +14 -2
  162. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.zh-HK.json +14 -2
  163. package/dist/arcgis-coding-components/assets/arcade-language/profiles/arcade-profiles.t9n.zh-TW.json +14 -2
  164. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.ar.json +13 -13
  165. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.bg.json +13 -13
  166. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.bs.json +13 -13
  167. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.ca.json +13 -13
  168. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.cs.json +13 -13
  169. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.da.json +13 -13
  170. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.de.json +13 -13
  171. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.el.json +13 -13
  172. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.en.json +13 -13
  173. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.es.json +13 -13
  174. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.et.json +13 -13
  175. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.fi.json +13 -13
  176. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.fr.json +13 -13
  177. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.he.json +13 -13
  178. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.hr.json +13 -13
  179. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.hu.json +13 -13
  180. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.id.json +13 -13
  181. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.it.json +13 -13
  182. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.ja.json +13 -13
  183. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.ko.json +13 -13
  184. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.lt.json +13 -13
  185. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.lv.json +13 -13
  186. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.nb.json +13 -13
  187. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.nl.json +13 -13
  188. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.pl.json +13 -13
  189. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.pt-BR.json +13 -13
  190. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.pt-PT.json +13 -13
  191. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.ro.json +13 -13
  192. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.ru.json +13 -13
  193. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.sk.json +13 -13
  194. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.sl.json +13 -13
  195. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.sr.json +13 -13
  196. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.sv.json +13 -13
  197. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.th.json +13 -13
  198. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.tr.json +13 -13
  199. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.uk.json +13 -13
  200. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.vi.json +13 -13
  201. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.zh-CN.json +13 -13
  202. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.zh-HK.json +13 -13
  203. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.zh-TW.json +13 -13
  204. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.ar.json +6 -6
  205. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.bg.json +6 -6
  206. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.bs.json +6 -6
  207. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.ca.json +6 -6
  208. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.cs.json +6 -6
  209. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.da.json +6 -6
  210. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.de.json +6 -6
  211. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.el.json +6 -6
  212. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.en.json +6 -6
  213. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.es.json +6 -6
  214. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.et.json +6 -6
  215. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.fi.json +6 -6
  216. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.fr.json +6 -6
  217. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.he.json +6 -6
  218. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.hr.json +6 -6
  219. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.hu.json +6 -6
  220. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.id.json +6 -6
  221. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.it.json +6 -6
  222. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.ja.json +6 -6
  223. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.ko.json +6 -6
  224. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.lt.json +6 -6
  225. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.lv.json +6 -6
  226. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.nb.json +6 -6
  227. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.nl.json +6 -6
  228. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.pl.json +6 -6
  229. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.pt-BR.json +6 -6
  230. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.pt-PT.json +6 -6
  231. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.ro.json +6 -6
  232. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.ru.json +6 -6
  233. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.sk.json +6 -6
  234. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.sl.json +6 -6
  235. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.sr.json +6 -6
  236. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.sv.json +6 -6
  237. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.th.json +6 -6
  238. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.tr.json +6 -6
  239. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.uk.json +6 -6
  240. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.vi.json +6 -6
  241. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.zh-CN.json +6 -6
  242. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.zh-HK.json +6 -6
  243. package/dist/arcgis-coding-components/assets/arcade-suggestions/t9n/arcade-suggestions.t9n.zh-TW.json +6 -6
  244. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.ar.json +8 -8
  245. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.bg.json +8 -8
  246. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.bs.json +8 -8
  247. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.ca.json +8 -8
  248. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.cs.json +8 -8
  249. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.da.json +8 -8
  250. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.de.json +8 -8
  251. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.el.json +8 -8
  252. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.en.json +8 -8
  253. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.es.json +8 -8
  254. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.et.json +8 -8
  255. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.fi.json +8 -8
  256. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.fr.json +8 -8
  257. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.he.json +8 -8
  258. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.hr.json +8 -8
  259. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.hu.json +8 -8
  260. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.id.json +8 -8
  261. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.it.json +8 -8
  262. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.ja.json +8 -8
  263. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.ko.json +8 -8
  264. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.lt.json +8 -8
  265. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.lv.json +8 -8
  266. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.nb.json +8 -8
  267. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.nl.json +8 -8
  268. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.pl.json +8 -8
  269. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.pt-BR.json +8 -8
  270. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.pt-PT.json +8 -8
  271. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.ro.json +8 -8
  272. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.ru.json +8 -8
  273. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.sk.json +8 -8
  274. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.sl.json +8 -8
  275. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.sr.json +8 -8
  276. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.sv.json +8 -8
  277. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.th.json +8 -8
  278. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.tr.json +8 -8
  279. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.uk.json +8 -8
  280. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.vi.json +8 -8
  281. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.zh-CN.json +8 -8
  282. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.zh-HK.json +8 -8
  283. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.zh-TW.json +8 -8
  284. package/dist/arcgis-coding-components/assets/code-editor/arcade.worker.js +30 -31
  285. package/dist/arcgis-coding-components/assets/code-editor/css.worker.js +30 -34
  286. package/dist/arcgis-coding-components/assets/code-editor/editor.worker.js +7 -8
  287. package/dist/arcgis-coding-components/assets/code-editor/html.worker.js +18 -20
  288. package/dist/arcgis-coding-components/assets/code-editor/json.worker.js +21 -22
  289. package/dist/arcgis-coding-components/assets/code-editor/ts.worker.js +79 -80
  290. package/dist/arcgis-coding-components/index.esm.js +6 -1
  291. package/dist/arcgis-coding-components/{p-ff06e912.js → p-06f39793.js} +7 -2
  292. package/dist/arcgis-coding-components/{p-310f0408.js → p-0b4995df.js} +7 -2
  293. package/dist/arcgis-coding-components/p-356ca5d3.js +7 -0
  294. package/dist/arcgis-coding-components/{p-443fe20e.js → p-4d58beca.js} +7 -2
  295. package/dist/arcgis-coding-components/{p-b3500466.js → p-567ee7d3.js} +7 -2
  296. package/dist/arcgis-coding-components/p-5e2653b4.entry.js +6 -0
  297. package/dist/arcgis-coding-components/p-7a575e52.js +68 -0
  298. package/dist/arcgis-coding-components/{p-9dd33d3e.js → p-a90212eb.js} +7 -2
  299. package/dist/arcgis-coding-components/{p-9a164b63.js → p-aceb9f91.js} +8 -3
  300. package/dist/arcgis-coding-components/{p-b83db734.js → p-b48f9897.js} +7 -2
  301. package/dist/arcgis-coding-components/p-e90b1f2f.js +6 -0
  302. package/dist/arcgis-coding-components/{p-cfff9500.js → p-ff11efd4.js} +6 -1
  303. package/dist/cjs/{arcade-defaults-e128d6d9.js → arcade-defaults-c274c792.js} +13204 -11292
  304. package/dist/cjs/arcade-mode-e7a5feec.js +604 -0
  305. package/dist/cjs/arcgis-arcade-api_6.cjs.entry.js +1484 -1408
  306. package/dist/cjs/arcgis-coding-components.cjs.js +8 -3
  307. package/dist/cjs/{css-7229b372.js → css-3d77c5a8.js} +6 -1
  308. package/dist/cjs/{cssMode-8c1d563a.js → cssMode-79b21179.js} +8 -3
  309. package/dist/cjs/{html-ead03bbb.js → html-176c4248.js} +8 -3
  310. package/dist/cjs/{htmlMode-5e1a0115.js → htmlMode-4fff608a.js} +8 -3
  311. package/dist/cjs/{index-f8a85eb8.js → index-8eb42874.js} +395 -101
  312. package/dist/cjs/index.cjs.js +7 -2
  313. package/dist/cjs/{javascript-3fe2de06.js → javascript-cb5b58a7.js} +9 -4
  314. package/dist/cjs/{jsonMode-8b4b19f9.js → jsonMode-b6e8a3b4.js} +8 -3
  315. package/dist/cjs/loader.cjs.js +8 -12
  316. package/dist/cjs/{tsMode-b9491227.js → tsMode-97f32109.js} +8 -3
  317. package/dist/cjs/{typescript-524fddbc.js → typescript-002b1bed.js} +8 -3
  318. package/dist/components/arcade-api.js +170 -162
  319. package/dist/components/arcade-contribution.js +75 -65
  320. package/dist/components/arcade-defaults.js +1425 -1270
  321. package/dist/components/arcade-mode.js +521 -515
  322. package/dist/components/arcade-results.js +479 -426
  323. package/dist/components/arcade-suggestions.js +138 -131
  324. package/dist/components/arcade-variables.js +167 -153
  325. package/dist/components/arcgis-arcade-api.d.ts +2 -2
  326. package/dist/components/arcgis-arcade-api.js +5 -0
  327. package/dist/components/arcgis-arcade-editor.d.ts +2 -2
  328. package/dist/components/arcgis-arcade-editor.js +413 -387
  329. package/dist/components/arcgis-arcade-results.d.ts +2 -2
  330. package/dist/components/arcgis-arcade-results.js +5 -0
  331. package/dist/components/arcgis-arcade-suggestions.d.ts +2 -2
  332. package/dist/components/arcgis-arcade-suggestions.js +5 -0
  333. package/dist/components/arcgis-arcade-variables.d.ts +2 -2
  334. package/dist/components/arcgis-arcade-variables.js +5 -0
  335. package/dist/components/arcgis-code-editor.d.ts +2 -2
  336. package/dist/components/arcgis-code-editor.js +5 -0
  337. package/dist/components/code-editor.js +255 -250
  338. package/dist/components/fields.js +104 -77
  339. package/dist/components/functional-components.js +6 -1
  340. package/dist/components/index.d.ts +5 -8
  341. package/dist/components/index.js +6 -7
  342. package/dist/components/index2.js +7 -2
  343. package/dist/components/markdown.js +33 -28
  344. package/dist/components/utilities.js +26 -21
  345. package/dist/esm/{arcade-defaults-a34c2e51.js → arcade-defaults-d6c47dac.js} +13196 -11284
  346. package/dist/esm/arcade-mode-77aefd9b.js +600 -0
  347. package/dist/esm/arcgis-arcade-api_6.entry.js +1484 -1408
  348. package/dist/esm/arcgis-coding-components.js +9 -4
  349. package/dist/esm/{css-ff1e9f8c.js → css-4b82e605.js} +6 -1
  350. package/dist/esm/{cssMode-cb48c437.js → cssMode-7229ff3a.js} +8 -3
  351. package/dist/esm/{html-e7c0bd60.js → html-c3b25474.js} +8 -3
  352. package/dist/esm/{htmlMode-46638b7f.js → htmlMode-0e07604f.js} +8 -3
  353. package/dist/esm/{index-d4ec142a.js → index-09479ad2.js} +395 -101
  354. package/dist/esm/index.js +7 -2
  355. package/dist/esm/{javascript-2229cd63.js → javascript-a0d8a182.js} +9 -4
  356. package/dist/esm/{jsonMode-08a2f0d2.js → jsonMode-2bbed644.js} +8 -3
  357. package/dist/esm/loader.js +8 -12
  358. package/dist/esm/{tsMode-46d0d8e8.js → tsMode-b8728ce8.js} +8 -3
  359. package/dist/esm/{typescript-88a09694.js → typescript-4b81fd47.js} +8 -3
  360. package/dist/loader/cdn.js +5 -1
  361. package/dist/loader/index.cjs.js +5 -1
  362. package/dist/loader/index.d.ts +2 -2
  363. package/dist/loader/index.es2017.js +5 -1
  364. package/dist/loader/index.js +5 -1
  365. package/dist/types/components/arcade-api/arcade-api.d.ts +42 -41
  366. package/dist/types/components/arcade-api/t9n-types.d.ts +6 -6
  367. package/dist/types/components/arcade-editor/arcade-editor.d.ts +129 -133
  368. package/dist/types/components/arcade-editor/t9n-types.d.ts +6 -6
  369. package/dist/types/components/arcade-results/arcade-results.d.ts +46 -50
  370. package/dist/types/components/arcade-results/t9n-types.d.ts +11 -11
  371. package/dist/types/components/arcade-suggestions/arcade-suggestions.d.ts +37 -36
  372. package/dist/types/components/arcade-suggestions/t9n-types.d.ts +4 -4
  373. package/dist/types/components/arcade-variables/arcade-variables.d.ts +42 -42
  374. package/dist/types/components/arcade-variables/t9n-types.d.ts +6 -6
  375. package/dist/types/components/code-editor/code-editor.d.ts +74 -74
  376. package/dist/types/components.d.ts +87 -12
  377. package/dist/types/index.d.ts +1 -1
  378. package/dist/types/stencil-public-runtime.d.ts +61 -17
  379. package/dist/types/utils/arcade-executor.d.ts +89 -81
  380. package/dist/types/utils/arcade-monaco/arcade-contribution.d.ts +1 -1
  381. package/dist/types/utils/arcade-monaco/arcade-defaults.d.ts +69 -68
  382. package/dist/types/utils/arcade-monaco/arcade-language-features.d.ts +27 -26
  383. package/dist/types/utils/arcade-monaco/arcade-mode.d.ts +10 -10
  384. package/dist/types/utils/arcade-monaco/arcade-theme.d.ts +9 -8
  385. package/dist/types/utils/arcade-monaco/arcade-worker-manager.d.ts +11 -11
  386. package/dist/types/utils/arcade-monaco/arcade.worker.d.ts +16 -14
  387. package/dist/types/utils/arcade-monaco/types.d.ts +31 -33
  388. package/dist/types/utils/colorize.d.ts +1 -1
  389. package/dist/types/utils/editor-suggestions.d.ts +24 -24
  390. package/dist/types/utils/fields.d.ts +1 -0
  391. package/dist/types/utils/functional-components.d.ts +2 -2
  392. package/dist/types/utils/markdown.d.ts +1 -1
  393. package/dist/types/utils/profile/editor-profile.d.ts +187 -196
  394. package/dist/types/utils/profile/types.d.ts +230 -109
  395. package/dist/types/utils/profile/utils.d.ts +31 -14
  396. package/dist/types/utils/utilities.d.ts +2 -2
  397. package/package.json +26 -42
  398. package/dist/arcgis-coding-components/p-0fa0a06d.js +0 -2
  399. package/dist/arcgis-coding-components/p-1b0246cd.entry.js +0 -1
  400. package/dist/arcgis-coding-components/p-236ce4a1.js +0 -62
  401. package/dist/arcgis-coding-components/p-3664ab2a.js +0 -1
  402. package/dist/cjs/arcade-mode-8bf7a14b.js +0 -598
  403. package/dist/esm/arcade-mode-c5a69066.js +0 -594
  404. package/dist/esm/polyfills/css-shim.js +0 -1
@@ -1,41 +1,46 @@
1
+ /*!
2
+ * All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
+ * See https://js.arcgis.com/4.29/esri/copyright.txt for details.
4
+ * v4.29.0-beta.110
5
+ */
1
6
  'use strict';
2
7
 
3
8
  Object.defineProperty(exports, '__esModule', { value: true });
4
9
 
5
- const index = require('./index-f8a85eb8.js');
6
- const arcadeDefaults = require('./arcade-defaults-e128d6d9.js');
10
+ const index = require('./index-8eb42874.js');
11
+ const arcadeDefaults = require('./arcade-defaults-c274c792.js');
7
12
 
8
13
  async function colorizeCode(code) {
9
- return arcadeDefaults.editor.colorize(code, "arcade", { tabSize: 2 });
14
+ return await arcadeDefaults.editor.colorize(code, "arcade", { tabSize: 2 });
10
15
  }
11
16
  async function colorizedAllCodeElements(e) {
12
- if (!e) {
13
- return;
14
- }
15
- const codeElements = Array.from(e.querySelectorAll("code.language-arcade"));
16
- await Promise.all(codeElements.map(async (codeElement) => await colorizeCodeElement(codeElement, codeElement.textContent)));
17
+ if (!e) {
18
+ return;
19
+ }
20
+ const codeElements = [...e.querySelectorAll("code.language-arcade")];
21
+ await Promise.all(codeElements.map(async (codeElement) => await colorizeCodeElement(codeElement, codeElement.textContent)));
17
22
  }
18
23
  async function colorizeCodeElement(e, text) {
19
- if (!e || e.tagName !== "CODE") {
20
- return;
21
- }
22
- e.innerHTML = await colorizeCode(text ?? "");
24
+ if (!e || e.tagName !== "CODE") {
25
+ return;
26
+ }
27
+ e.innerHTML = await colorizeCode(text ?? "");
23
28
  }
24
29
  function generateColorizeStyles() {
25
- const themeService = arcadeDefaults.StandaloneServices.get(arcadeDefaults.IStandaloneThemeService);
26
- const theme = themeService.getColorTheme();
27
- return arcadeDefaults.generateTokensCSSForColorMap(theme.tokenTheme.getColorMap());
30
+ const themeService = arcadeDefaults.StandaloneServices.get(arcadeDefaults.IStandaloneThemeService);
31
+ const theme = themeService.getColorTheme();
32
+ return arcadeDefaults.generateTokensCSSForColorMap(theme.tokenTheme.getColorMap());
28
33
  }
29
34
  function onColorizeThemeChanged(func) {
30
- const themeService = arcadeDefaults.StandaloneServices.get(arcadeDefaults.IStandaloneThemeService);
31
- return themeService.onDidColorThemeChange(() => func());
35
+ const themeService = arcadeDefaults.StandaloneServices.get(arcadeDefaults.IStandaloneThemeService);
36
+ return themeService.onDidColorThemeChange(() => func());
32
37
  }
33
38
 
34
39
  const StickyFilterInput = ({ filterValue, ...rest }) => (
35
40
  // TODO: Remove when calcite-input bug with scale is fixed
36
41
  // @ts-expect-error
37
42
  index.h("div", { class: "sticky", scale: "m" },
38
- index.h("calcite-input", { value: filterValue, icon: "magnifying-glass", clearable: true, ...rest })));
43
+ index.h("calcite-input", { value: filterValue, icon: "magnifying-glass", clearable: true, ...rest })));
39
44
 
40
45
  var marked_umd = arcadeDefaults.createCommonjsModule(function (module, exports) {
41
46
  /**
@@ -2915,76 +2920,76 @@ var marked_umd = arcadeDefaults.createCommonjsModule(function (module, exports)
2915
2920
  });
2916
2921
 
2917
2922
  marked_umd.marked.use({
2918
- gfm: true,
2919
- renderer: {
2920
- link(href, title, text) {
2921
- return `<calcite-link href="${href}" title="${title ?? text}" target="Arcade Help">${text}</calcite-link>`;
2923
+ gfm: true,
2924
+ renderer: {
2925
+ link(href, title, text) {
2926
+ return `<calcite-link href="${href}" title="${title ?? text}" target="Arcade Help">${text}</calcite-link>`;
2927
+ }
2922
2928
  }
2923
- }
2924
2929
  });
2925
2930
  function convertMarkdownString(value) {
2926
- value = value ?? "";
2927
- const result = marked_umd.marked(typeof value === "string" ? value : value.value, {
2928
- gfm: true,
2929
- breaks: true,
2930
- headerIds: false,
2931
- mangle: false
2932
- });
2933
- return result;
2931
+ value ?? (value = "");
2932
+ const result = marked_umd.marked(typeof value === "string" ? value : value.value, {
2933
+ gfm: true,
2934
+ breaks: true,
2935
+ headerIds: false,
2936
+ mangle: false
2937
+ });
2938
+ return result;
2934
2939
  }
2935
2940
 
2936
2941
  function isMonacoEnvironmentSetup() {
2937
- return !!self.MonacoEnvironment?.getWorkerUrl;
2942
+ return !!globalThis.MonacoEnvironment?.getWorkerUrl;
2938
2943
  }
2939
2944
  const additionalLanguageWorkersMap = new Map();
2940
2945
  function getAssetsPath() {
2941
- return self.MonacoEnvironment?.assetsPath;
2946
+ return globalThis.MonacoEnvironment?.assetsPath;
2942
2947
  }
2943
2948
  function setupMonacoEnvironment(assetsPath) {
2944
- //
2945
- // Check if the worker loading logic has already been defined.
2946
- if (isMonacoEnvironmentSetup()) {
2947
- return;
2948
- }
2949
- // Since we are using workers, monaco needs to find them.
2950
- // Using the global MonacoEnvironment.
2951
- self.MonacoEnvironment = {
2952
- assetsPath,
2953
- getWorker: async (_, languageId) => {
2954
- // Manufacture the url for the web worker
2955
- let url = additionalLanguageWorkersMap.get(languageId) ?? `${assetsPath}/code-editor/editor.worker.js`;
2956
- switch (languageId) {
2957
- case "json":
2958
- url = `${assetsPath}/code-editor/json.worker.js`;
2959
- break;
2960
- case "css":
2961
- url = `${assetsPath}/code-editor/css.worker.js`;
2962
- break;
2963
- case "html":
2964
- url = `${assetsPath}/code-editor/html.worker.js`;
2965
- break;
2966
- case "typescript":
2967
- case "javascript":
2968
- url = `${assetsPath}/code-editor/ts.worker.js`;
2969
- break;
2970
- case "arcade":
2971
- url = `${assetsPath}/code-editor/arcade.worker.js`;
2972
- break;
2973
- }
2974
- // If we have a relative path or we are on same orgin, we can use the default js implementation
2975
- if (!arcadeDefaults.D(url) || arcadeDefaults.V(url, location.href, true)) {
2976
- return new Worker(url, { name: languageId });
2977
- }
2978
- // For cross orgin, we will load the worker code as a string and manufacture a blob
2979
- const esriRequest = await arcadeDefaults.importRequest();
2980
- const response = await esriRequest(url, {
2981
- responseType: "text"
2982
- });
2983
- return new Worker(URL.createObjectURL(new Blob([response.data], {
2984
- type: "text/javascript"
2985
- })));
2949
+ //
2950
+ // Check if the worker loading logic has already been defined.
2951
+ if (isMonacoEnvironmentSetup()) {
2952
+ return;
2986
2953
  }
2987
- };
2954
+ // Since we are using workers, monaco needs to find them.
2955
+ // Using the global MonacoEnvironment.
2956
+ globalThis.MonacoEnvironment = {
2957
+ assetsPath,
2958
+ getWorker: async (_, languageId) => {
2959
+ // Manufacture the url for the web worker
2960
+ let url = additionalLanguageWorkersMap.get(languageId) ?? `${assetsPath}/code-editor/editor.worker.js`;
2961
+ switch (languageId) {
2962
+ case "json":
2963
+ url = `${assetsPath}/code-editor/json.worker.js`;
2964
+ break;
2965
+ case "css":
2966
+ url = `${assetsPath}/code-editor/css.worker.js`;
2967
+ break;
2968
+ case "html":
2969
+ url = `${assetsPath}/code-editor/html.worker.js`;
2970
+ break;
2971
+ case "typescript":
2972
+ case "javascript":
2973
+ url = `${assetsPath}/code-editor/ts.worker.js`;
2974
+ break;
2975
+ case "arcade":
2976
+ url = `${assetsPath}/code-editor/arcade.worker.js`;
2977
+ break;
2978
+ }
2979
+ // If we have a relative path or we are on same orgin, we can use the default js implementation
2980
+ if (!arcadeDefaults.se(url) || arcadeDefaults.oe(url, globalThis.location.href, true)) {
2981
+ return new Worker(url, { name: languageId });
2982
+ }
2983
+ // For cross orgin, we will load the worker code as a string and manufacture a blob
2984
+ const esriRequest = await arcadeDefaults.importRequest();
2985
+ const response = await esriRequest(url, {
2986
+ responseType: "text"
2987
+ });
2988
+ return new Worker(URL.createObjectURL(new Blob([response.data], {
2989
+ type: "text/javascript"
2990
+ })));
2991
+ }
2992
+ };
2988
2993
  }
2989
2994
 
2990
2995
  /**
@@ -2999,8 +3004,8 @@ function setupMonacoEnvironment(assetsPath) {
2999
3004
  * ```
3000
3005
  */
3001
3006
  async function getArcadeDiagnosticService() {
3002
- const mode = await getMode();
3003
- return mode.getArcadeDiagnosticService();
3007
+ const mode = await getMode();
3008
+ return mode.getArcadeDiagnosticService();
3004
3009
  }
3005
3010
  /**
3006
3011
  * Returns the arcade worker for the model.
@@ -3011,179 +3016,186 @@ async function getArcadeDiagnosticService() {
3011
3016
  * @returns arcade worker
3012
3017
  */
3013
3018
  async function getArcadeWorker(uri) {
3014
- const mode = await getMode();
3015
- return mode.getArcadeWorker(uri);
3019
+ const mode = await getMode();
3020
+ return await mode.getArcadeWorker(uri);
3016
3021
  }
3017
3022
  /**
3018
3023
  * Request the arcade mode
3019
3024
  * @returns mode for arcade
3020
3025
  */
3021
- function getMode() {
3022
- return Promise.resolve().then(function () { return require('./arcade-mode-8bf7a14b.js'); });
3026
+ async function getMode() {
3027
+ return await Promise.resolve().then(function () { return require('./arcade-mode-e7a5feec.js'); });
3023
3028
  }
3024
3029
  // Register the language in Monaco
3025
3030
  arcadeDefaults.languages.register({
3026
- id: arcadeDefaults.arcadeDefaults.languageId,
3027
- aliases: ["Arcade", "arcade"],
3028
- extensions: [".arc"],
3029
- mimetypes: ["application/arcade"]
3031
+ id: arcadeDefaults.arcadeDefaults.languageId,
3032
+ aliases: ["Arcade", "arcade"],
3033
+ extensions: [".arc"],
3034
+ mimetypes: ["application/arcade"]
3030
3035
  });
3031
3036
  // An event emitted when a language is first time needed
3032
- arcadeDefaults.languages.onLanguage(arcadeDefaults.arcadeDefaults.languageId, async () => {
3033
- // Setup the assets path on the arcadeDefaults
3034
- arcadeDefaults.arcadeDefaults.setLanguageOptions({ assetsPath: `${getAssetsPath() ?? "."}/arcade-language` });
3035
- // Async import the language mode
3036
- const mode = await getMode();
3037
- // Setup the language mode
3038
- mode.setupMode(arcadeDefaults.arcadeDefaults);
3037
+ arcadeDefaults.languages.onLanguage(arcadeDefaults.arcadeDefaults.languageId, () => {
3038
+ // Setup the assets path on the arcadeDefaults
3039
+ arcadeDefaults.arcadeDefaults.setLanguageOptions({ assetsPath: `${getAssetsPath() ?? "."}/arcade-language` });
3040
+ // Async import the language mode
3041
+ getMode()
3042
+ .then((mode) => {
3043
+ // Setup the language mode
3044
+ mode.setupMode(arcadeDefaults.arcadeDefaults);
3045
+ })
3046
+ .catch((err) => {
3047
+ throw err;
3048
+ });
3039
3049
  });
3040
3050
 
3041
- const arcadeApiCss = ":host{background-color:var(--calcite-ui-foreground-1)}:host .notice-container{margin:var(--calcite-spacing-quarter);padding:var(--calcite-spacing-half);background-color:var(--calcite-ui-foreground-1)}:host .sticky{position:sticky;top:0px;z-index:10}:host calcite-flow{height:100%}:host calcite-block p:first-of-type{margin-top:0}:host calcite-block code{font-family:var(--calcite-code-family)}:host calcite-block pre{direction:ltr;overflow-x:auto;background-color:var(--calcite-ui-foreground-2);padding:var(--calcite-spacing-half)}:host calcite-block pre code{font-size:var(--calcite-font-size--2)}";
3051
+ const arcadeApiCss = ":host{background-color:var(--calcite-color-foreground-1)}:host .notice-container{margin:var(--calcite-spacing-quarter);padding:var(--calcite-spacing-half);background-color:var(--calcite-color-foreground-1)}:host .sticky{position:sticky;top:0px;z-index:10}:host calcite-flow{height:100%}:host calcite-block p:first-of-type{margin-top:0}:host calcite-block code{font-family:var(--calcite-code-family)}:host calcite-block pre{direction:ltr;overflow-x:auto;background-color:var(--calcite-color-foreground-2);padding:var(--calcite-spacing-half)}:host calcite-block pre code{font-size:var(--calcite-font-size--2)}";
3042
3052
 
3043
3053
  const ArcgisArcadeApi = class {
3044
- constructor(hostRef) {
3045
- index.registerInstance(this, hostRef);
3046
- this.close = index.createEvent(this, "close", 3);
3047
- this.itemSelected = index.createEvent(this, "itemSelected", 3);
3048
- this._emitItemSelected = (e) => {
3049
- // @ts-expect-error
3050
- const item = e.target?.["data-item"];
3051
- if (!item) {
3052
- return;
3053
- }
3054
- const keyEvent = e;
3055
- if (!keyEvent.key || keyEvent.key === "Enter") {
3056
- e.preventDefault();
3057
- this.itemSelected.emit(item.completion.insertText);
3058
- }
3059
- };
3060
- this._emitClose = () => this.close.emit();
3061
- this._emitItemSelectedAndClose = (e) => {
3062
- if (!e.target) {
3063
- return;
3064
- }
3065
- const keyEvent = e;
3066
- if (!keyEvent.key || keyEvent.key === "Enter") {
3067
- e.preventDefault();
3054
+ constructor(hostRef) {
3055
+ index.registerInstance(this, hostRef);
3056
+ this.close = index.createEvent(this, "close", 3);
3057
+ this.itemSelected = index.createEvent(this, "itemSelected", 3);
3058
+ this._emitItemSelected = (e) => {
3059
+ // @ts-expect-error
3060
+ const item = e.target?.["data-item"];
3061
+ if (!item) {
3062
+ return;
3063
+ }
3064
+ const keyEvent = e;
3065
+ if (!keyEvent.key || keyEvent.key === "Enter") {
3066
+ e.preventDefault();
3067
+ this.itemSelected.emit(item.completion.insertText);
3068
+ }
3069
+ };
3070
+ this._emitClose = () => this.close.emit();
3071
+ this._emitItemSelectedAndClose = (e) => {
3072
+ if (!e.target) {
3073
+ return;
3074
+ }
3075
+ const keyEvent = e;
3076
+ if (!keyEvent.key || keyEvent.key === "Enter") {
3077
+ e.preventDefault();
3078
+ // @ts-expect-error
3079
+ this.itemSelected.emit(e.target["data-item"].completion.insertText);
3080
+ }
3081
+ };
3082
+ this._selectItem = (e) => {
3083
+ if (!e.target) {
3084
+ return;
3085
+ }
3086
+ e.stopPropagation();
3087
+ // @ts-expect-error
3088
+ this._selectedApiItem = e.target["data-item"];
3089
+ };
3090
+ this._unselectItem = async () => {
3091
+ this._selectedApiItem = undefined;
3092
+ };
3068
3093
  // @ts-expect-error
3069
- this.itemSelected.emit(e.target["data-item"].completion.insertText);
3070
- }
3071
- };
3072
- this._selectItem = (e) => {
3073
- if (!e.target) {
3074
- return;
3075
- }
3076
- e.stopPropagation();
3077
- // @ts-expect-error
3078
- this._selectedApiItem = e.target["data-item"];
3079
- };
3080
- this._unselectItem = async () => {
3081
- this._selectedApiItem = undefined;
3082
- };
3083
- // @ts-expect-error
3084
- this._updateFilterValue = (e) => (this._filterValue = e.target?.["value"] ?? "");
3085
- this._locale = "";
3086
- this._t9nStrings = undefined;
3087
- this._selectedApiItem = undefined;
3088
- this._filterValue = "";
3089
- this._colorizeStyle = "";
3090
- this._preparingApi = false;
3091
- this._apiLibrary = undefined;
3092
- this.hideDocumentationActions = false;
3093
- this.modelId = undefined;
3094
- }
3095
- //#endregion
3096
- // #region Component lifecycle events
3097
- async componentWillLoad() {
3098
- this._colorizeStyle = generateColorizeStyles();
3099
- this._themeChangedListner = onColorizeThemeChanged(() => (this._colorizeStyle = generateColorizeStyles()));
3100
- await arcadeDefaults.$(this, index.getAssetPath("./assets"));
3101
- arcadeDefaults.arcadeDefaults.onModelContextDidChange((key) => {
3102
- if (!this.modelId || key !== arcadeDefaults.Uri.parse(this.modelId).toString()) {
3103
- return;
3104
- }
3105
- this._updateApiLibrary();
3106
- });
3107
- this._updateApiLibrary();
3108
- }
3109
- disconnectedCallback() {
3110
- arcadeDefaults.F(this);
3111
- this._flowObserver?.disconnect();
3112
- this._themeChangedListner?.dispose();
3113
- }
3114
- // #endregion
3115
- //#region Private Methods
3116
- async _updateApiLibrary() {
3117
- if (!this.modelId) {
3118
- return;
3094
+ this._updateFilterValue = (e) => (this._filterValue = e.target?.value ?? "");
3095
+ this._lang = "";
3096
+ this._t9nLocale = "";
3097
+ this._t9nStrings = undefined;
3098
+ this._selectedApiItem = undefined;
3099
+ this._filterValue = "";
3100
+ this._colorizeStyle = "";
3101
+ this._preparingApi = false;
3102
+ this._apiLibrary = undefined;
3103
+ this.hideDocumentationActions = false;
3104
+ this.modelId = undefined;
3119
3105
  }
3120
- this._preparingApi = true;
3121
- try {
3122
- const arcadeWorker = await getArcadeWorker(arcadeDefaults.Uri.parse(this.modelId));
3123
- if (!arcadeWorker) {
3124
- // Something went wrong
3125
- throw new Error("Undefined worker");
3126
- }
3127
- // Fetch the api definitions from the arcade LS worker.
3128
- const context = arcadeDefaults.arcadeDefaults.getApiContextForModel(this.modelId);
3129
- this._apiLibrary = await arcadeWorker.getApiLibrary(context);
3106
+ //#endregion
3107
+ // #region Component lifecycle events
3108
+ async componentWillLoad() {
3109
+ this._colorizeStyle = generateColorizeStyles();
3110
+ this._themeChangedListner = onColorizeThemeChanged(() => (this._colorizeStyle = generateColorizeStyles()));
3111
+ await arcadeDefaults.B(this, index.getAssetPath("./assets"));
3112
+ arcadeDefaults.arcadeDefaults.onModelContextDidChange((key) => {
3113
+ if (!this.modelId || key !== arcadeDefaults.Uri.parse(this.modelId).toString()) {
3114
+ return;
3115
+ }
3116
+ this._updateApiLibrary();
3117
+ });
3118
+ this._updateApiLibrary();
3130
3119
  }
3131
- catch (e) {
3132
- console.error("Could not load api library", e);
3133
- console.error(e.stack);
3134
- this._apiLibrary = undefined;
3120
+ disconnectedCallback() {
3121
+ arcadeDefaults.H(this);
3122
+ this._flowObserver?.disconnect();
3123
+ this._themeChangedListner?.dispose();
3135
3124
  }
3136
- finally {
3137
- this._preparingApi = false;
3125
+ // #endregion
3126
+ //#region Private Methods
3127
+ async _updateApiLibrary() {
3128
+ if (!this.modelId) {
3129
+ return;
3130
+ }
3131
+ this._preparingApi = true;
3132
+ try {
3133
+ const arcadeWorker = await getArcadeWorker(arcadeDefaults.Uri.parse(this.modelId));
3134
+ if (!arcadeWorker) {
3135
+ // Something went wrong
3136
+ throw new Error("Undefined worker");
3137
+ }
3138
+ // Fetch the api definitions from the arcade LS worker.
3139
+ const context = arcadeDefaults.arcadeDefaults.getApiContextForModel(this.modelId);
3140
+ this._apiLibrary = await arcadeWorker.getApiLibrary(context);
3141
+ }
3142
+ catch (e) {
3143
+ console.error("Could not load api library", e);
3144
+ if (e instanceof Error)
3145
+ console.error(e.stack);
3146
+ this._apiLibrary = undefined;
3147
+ }
3148
+ finally {
3149
+ this._preparingApi = false;
3150
+ }
3138
3151
  }
3139
- }
3140
- flowFocusHandler(ref) {
3141
- // When a flow is removed from the document then a null ref will be passed in
3142
- if (!ref) {
3143
- this._flowObserver?.disconnect();
3144
- this._flowObserver = undefined;
3145
- return;
3152
+ flowFocusHandler(ref) {
3153
+ // When a flow is removed from the document then a null ref will be passed in
3154
+ if (!ref) {
3155
+ this._flowObserver?.disconnect();
3156
+ this._flowObserver = undefined;
3157
+ return;
3158
+ }
3159
+ if (this._flowObserver) {
3160
+ return;
3161
+ }
3162
+ // Observer panel added/removed and also observe the flow id
3163
+ // When switching between flow the same reference is reused
3164
+ this._flowObserver = new MutationObserver(() => {
3165
+ // Get the last panel and try to set focus on the input element
3166
+ arcadeDefaults.F(ref.querySelector("calcite-flow-item:last-child"), "calcite-input");
3167
+ });
3168
+ this._flowObserver.observe(ref, { attributes: true, attributeFilter: ["id"], childList: true });
3146
3169
  }
3147
- if (this._flowObserver) {
3148
- return;
3170
+ //#endregion
3171
+ //#region Renderers
3172
+ renderApiCategory(category) {
3173
+ const filteredApiItems = arcadeDefaults.filterCollection(category.items, "name", this._filterValue);
3174
+ if (!filteredApiItems.length) {
3175
+ return null;
3176
+ }
3177
+ return (index.h("calcite-list-item-group", { heading: category.title }, filteredApiItems.map((apiItem) => (index.h("calcite-list-item", { label: arcadeDefaults.Z(apiItem.completion.detail), onCalciteListItemSelect: this._emitItemSelected, onKeyPress: this._emitItemSelected, "data-item": apiItem }, index.h("calcite-action", { slot: "actions-end", text: this._t9nStrings?.expand ?? "Expand", icon: "chevron-right", iconFlipRtl: true, scale: "s", onClick: this._selectItem, "data-item": apiItem }))))));
3149
3178
  }
3150
- // Observer panel added/removed and also observe the flow id
3151
- // When switching between flow the same reference is reused
3152
- this._flowObserver = new MutationObserver(() => {
3153
- // Get the last panel and try to set focus on the input element
3154
- arcadeDefaults.O(ref.querySelector("calcite-flow-item:last-child"), "calcite-input");
3155
- });
3156
- this._flowObserver.observe(ref, { attributes: true, attributeFilter: ["id"], childList: true });
3157
- }
3158
- //#endregion
3159
- //#region Renderers
3160
- renderApiCategory(category) {
3161
- const filteredApiItems = arcadeDefaults.filterCollection(category.items, "name", this._filterValue);
3162
- if (!filteredApiItems.length) {
3163
- return null;
3179
+ renderApiItemFlowItem() {
3180
+ const apiItem = this._selectedApiItem;
3181
+ if (!apiItem) {
3182
+ return null;
3183
+ }
3184
+ return (index.h("calcite-flow-item", { heading: this._t9nStrings?.constantsandfunctions, beforeBack: this._unselectItem, closable: true, onCalciteFlowItemClose: this._emitClose }, this.hideDocumentationActions ? null : (index.h("calcite-button", { width: "half", slot: "footer", appearance: "outline", kind: "brand", scale: "s", href: apiItem.link, target: "Arcade Help", "icon-start": "information" }, this._t9nStrings?.moreinformation)), index.h("calcite-button", { width: "half", slot: "footer", appearance: "outline", kind: "brand", "icon-start": "code", scale: "s", onClick: this._emitItemSelectedAndClose, "data-item": apiItem, ref: (e) => void e?.setFocus() }, this._t9nStrings?.insert ?? "Insert"), index.h("calcite-block", { open: true, heading: arcadeDefaults.Z(apiItem.completion.detail) }, index.h("div", { innerHTML: convertMarkdownString(apiItem.completion.documentation) }), apiItem.examples ? (index.h("div", { ref: (e) => {
3185
+ if (!e) {
3186
+ return;
3187
+ }
3188
+ e.innerHTML = convertMarkdownString(apiItem.examples);
3189
+ colorizedAllCodeElements(e);
3190
+ } })) : null)));
3164
3191
  }
3165
- return (index.h("calcite-list-item-group", { heading: category.title }, filteredApiItems.map((apiItem) => (index.h("calcite-list-item", { label: arcadeDefaults.q(apiItem.completion.detail), onCalciteListItemSelect: this._emitItemSelected, onKeyPress: this._emitItemSelected, "data-item": apiItem }, index.h("calcite-action", { slot: "actions-end", text: this._t9nStrings?.expand ?? "Expand", icon: "chevron-right", iconFlipRtl: true, scale: "s", onClick: this._selectItem, "data-item": apiItem }))))));
3166
- }
3167
- renderApiItemFlowItem() {
3168
- const apiItem = this._selectedApiItem;
3169
- if (!apiItem) {
3170
- return null;
3192
+ render() {
3193
+ const categories = (this._apiLibrary ?? []).map((apiCategory) => this.renderApiCategory(apiCategory));
3194
+ const empty = categories.every((g) => !g);
3195
+ return (index.h(index.Host, null, index.h("style", null, this._colorizeStyle), index.h("calcite-flow", { ref: (ref) => this.flowFocusHandler(ref) }, index.h("calcite-flow-item", { heading: this._t9nStrings?.constantsandfunctions, closable: true, onCalciteFlowItemClose: this._emitClose }, index.h(StickyFilterInput, { filterValue: this._filterValue, onCalciteInputInput: this._updateFilterValue }), this._preparingApi ? (index.h("calcite-loader", { scale: "s", type: "indeterminate", label: this._t9nStrings?.loading ?? "Loading" })) : (index.h("calcite-list", null, empty ? index.h("div", { class: "notice-container" }, this._t9nStrings?.noitems ?? "No items") : categories))), this.renderApiItemFlowItem())));
3171
3196
  }
3172
- return (index.h("calcite-flow-item", { heading: this._t9nStrings?.constantsandfunctions, beforeBack: this._unselectItem, closable: true, onCalciteFlowItemClose: this._emitClose }, this.hideDocumentationActions ? null : (index.h("calcite-button", { width: "half", slot: "footer-actions", appearance: "outline", kind: "brand", scale: "s", href: apiItem.link, target: "Arcade Help", "icon-start": "information" }, this._t9nStrings?.moreinformation)), index.h("calcite-button", { width: "half", slot: "footer-actions", appearance: "outline", kind: "brand", "icon-start": "code", scale: "s", onClick: this._emitItemSelectedAndClose, "data-item": apiItem, ref: (e) => e?.setFocus() }, this._t9nStrings?.insert ?? "Insert"), index.h("calcite-block", { open: true, heading: arcadeDefaults.q(apiItem.completion.detail) }, index.h("div", { innerHTML: convertMarkdownString(apiItem.completion.documentation) }), apiItem.examples ? (index.h("div", { ref: (e) => {
3173
- if (!e) {
3174
- return;
3175
- }
3176
- e.innerHTML = convertMarkdownString(apiItem.examples);
3177
- colorizedAllCodeElements(e);
3178
- } })) : null)));
3179
- }
3180
- render() {
3181
- const categories = (this._apiLibrary ?? []).map((apiCategory) => this.renderApiCategory(apiCategory));
3182
- const empty = categories.every((g) => !g);
3183
- return (index.h(index.Host, null, index.h("style", null, this._colorizeStyle), index.h("calcite-flow", { ref: (ref) => this.flowFocusHandler(ref) }, index.h("calcite-flow-item", { heading: this._t9nStrings?.constantsandfunctions, closable: true, onCalciteFlowItemClose: this._emitClose }, index.h(StickyFilterInput, { filterValue: this._filterValue, onCalciteInputInput: this._updateFilterValue }), this._preparingApi ? (index.h("calcite-loader", { scale: "s", type: "indeterminate", label: this._t9nStrings?.loading ?? "Loading" })) : (index.h("calcite-list", null, empty ? index.h("div", { class: "notice-container" }, this._t9nStrings?.noitems ?? "No items") : categories))), this.renderApiItemFlowItem())));
3184
- }
3185
- static get assetsDirs() { return ["assets"]; }
3186
- get _hostElt() { return index.getElement(this); }
3197
+ static get assetsDirs() { return ["assets"]; }
3198
+ get _hostElement() { return index.getElement(this); }
3187
3199
  };
3188
3200
  ArcgisArcadeApi.style = arcadeApiCss;
3189
3201
 
@@ -3192,177 +3204,220 @@ const MaxArrayItems = 100;
3192
3204
  const BatchSize = 100;
3193
3205
 
3194
3206
  function isArcadeFeatureSet(value) {
3195
- return value.declaredRootClass === "esri.arcade.featureset.support.FeatureSet";
3207
+ return (!!value &&
3208
+ typeof value === "object" &&
3209
+ "declaredRootClass" in value &&
3210
+ typeof value.declaredRootClass === "string" &&
3211
+ value.declaredRootClass === "esri.arcade.featureset.support.FeatureSet");
3196
3212
  }
3197
3213
  function isArcadeFeature(value) {
3198
- return value.arcadeDeclaredClass === "esri.arcade.Feature";
3214
+ return (!!value &&
3215
+ typeof value === "object" &&
3216
+ "arcadeDeclaredClass" in value &&
3217
+ typeof value.arcadeDeclaredClass === "string" &&
3218
+ value.arcadeDeclaredClass === "esri.arcade.Feature");
3199
3219
  }
3200
3220
  function isArcadeDictionary(value) {
3201
- return value.declaredClass === "esri.arcade.Dictionary";
3221
+ return (!!value &&
3222
+ typeof value === "object" &&
3223
+ "declaredClass" in value &&
3224
+ typeof value.declaredClass === "string" &&
3225
+ value.declaredClass === "esri.arcade.Dictionary");
3202
3226
  }
3203
3227
  function isGeometry(value) {
3204
- const declaredClass = value.declaredClass;
3205
- return typeof declaredClass === "string" && declaredClass.startsWith("esri.geometry.");
3228
+ return (!!value &&
3229
+ typeof value === "object" &&
3230
+ "declaredClass" in value &&
3231
+ typeof value.declaredClass === "string" &&
3232
+ value.declaredClass.startsWith("esri.geometry."));
3233
+ }
3234
+ function isKnowledgeGraph(value) {
3235
+ return (!!value &&
3236
+ typeof value === "object" &&
3237
+ "declaredClass" in value &&
3238
+ typeof value.declaredClass === "string" &&
3239
+ value.declaredClass.startsWith("esri.rest.knowledgeGraph.KnowledgeGraph"));
3206
3240
  }
3207
3241
  function isArcadePortal(value) {
3208
- const declaredClass = value.declaredClass;
3209
- return typeof declaredClass === "string" && declaredClass === "esri.arcade.Portal";
3242
+ return (!!value &&
3243
+ typeof value === "object" &&
3244
+ "declaredClass" in value &&
3245
+ typeof value.declaredClass === "string" &&
3246
+ value.declaredClass === "esri.arcade.Portal");
3210
3247
  }
3211
3248
  function isArcadeAttachment(value) {
3212
- const declaredClass = value.declaredClass;
3213
- return typeof declaredClass === "string" && declaredClass === "esri.arcade.Attachment";
3249
+ return (!!value &&
3250
+ typeof value === "object" &&
3251
+ "declaredClass" in value &&
3252
+ typeof value.declaredClass === "string" &&
3253
+ value.declaredClass === "esri.arcade.Attachment");
3214
3254
  }
3215
3255
  function isArcadeDate(value) {
3216
- const declaredRootClass = value.declaredRootClass;
3217
- return typeof declaredRootClass === "string" && declaredRootClass === "esri.arcade.arcadedate";
3256
+ return (!!value &&
3257
+ typeof value === "object" &&
3258
+ "declaredRootClass" in value &&
3259
+ typeof value.declaredRootClass === "string" &&
3260
+ value.declaredRootClass === "esri.arcade.arcadedate");
3218
3261
  }
3219
3262
  function isArcadeDateOnly(value) {
3220
- const declaredRootClass = value.declaredRootClass;
3221
- return typeof declaredRootClass === "string" && declaredRootClass === "esri.core.sql.dateonly";
3263
+ return (!!value &&
3264
+ typeof value === "object" &&
3265
+ "declaredRootClass" in value &&
3266
+ typeof value.declaredRootClass === "string" &&
3267
+ value.declaredRootClass === "esri.core.sql.dateonly");
3222
3268
  }
3223
3269
  function isArcadeTimeOnly(value) {
3224
- const declaredRootClass = value.declaredRootClass;
3225
- return typeof declaredRootClass === "string" && declaredRootClass === "esri.core.sql.timeonly";
3270
+ return (!!value &&
3271
+ typeof value === "object" &&
3272
+ "declaredRootClass" in value &&
3273
+ typeof value.declaredRootClass === "string" &&
3274
+ value.declaredRootClass === "esri.core.sql.timeonly");
3226
3275
  }
3227
3276
  function isArcadeImmutableArray(value) {
3228
- return (typeof value.length === "function" &&
3229
- typeof value.get === "function" &&
3230
- typeof value.toArray === "function" &&
3231
- Array.isArray(value._elements));
3277
+ return (!!value &&
3278
+ typeof value === "object" &&
3279
+ "length" in value &&
3280
+ typeof value.length === "function" &&
3281
+ "get" in value &&
3282
+ typeof value.get === "function" &&
3283
+ "toArray" in value &&
3284
+ typeof value.toArray === "function" &&
3285
+ "_elements" in value &&
3286
+ Array.isArray(value._elements));
3232
3287
  }
3233
3288
  function valueToArcadeResult(value) {
3234
- if (value == null || value === undefined) {
3235
- return { type: "null" };
3236
- }
3237
- if (Array.isArray(value)) {
3238
- return { type: "array", value };
3239
- }
3240
- if (isArcadeImmutableArray(value)) {
3241
- return { type: "array", value: value.toArray() };
3242
- }
3243
- if (value instanceof Date) {
3244
- return { type: "date", value };
3245
- }
3246
- if (typeof value === "string") {
3247
- return { type: "text", value };
3248
- }
3249
- if (typeof value === "number") {
3250
- return { type: "number", value };
3251
- }
3252
- if (typeof value === "boolean") {
3253
- return { type: "boolean", value };
3254
- }
3255
- if (typeof value !== "object") {
3289
+ if (value === null || value === undefined) {
3290
+ return { type: "null" };
3291
+ }
3292
+ if (Array.isArray(value)) {
3293
+ return { type: "array", value };
3294
+ }
3295
+ if (isArcadeImmutableArray(value)) {
3296
+ return { type: "array", value: value.toArray() };
3297
+ }
3298
+ if (value instanceof Date) {
3299
+ return { type: "date", value };
3300
+ }
3301
+ if (typeof value === "string") {
3302
+ return { type: "text", value };
3303
+ }
3304
+ if (typeof value === "number") {
3305
+ return { type: "number", value };
3306
+ }
3307
+ if (typeof value === "boolean") {
3308
+ return { type: "boolean", value };
3309
+ }
3310
+ if (typeof value !== "object") {
3311
+ return { type: "unknown" };
3312
+ }
3313
+ if (isArcadeDate(value)) {
3314
+ return { type: "date", value };
3315
+ }
3316
+ if (isArcadeDateOnly(value)) {
3317
+ return { type: "dateOnly", value };
3318
+ }
3319
+ if (isArcadeTimeOnly(value)) {
3320
+ return { type: "time", value };
3321
+ }
3322
+ if (isArcadeAttachment(value)) {
3323
+ return { type: "attachment", value };
3324
+ }
3325
+ if (isArcadePortal(value)) {
3326
+ return { type: "portal", value };
3327
+ }
3328
+ if (isArcadeFeatureSet(value)) {
3329
+ return { type: "featureSet", value, features: [], iterator: null };
3330
+ }
3331
+ if (isArcadeFeature(value)) {
3332
+ return { type: "feature", value };
3333
+ }
3334
+ if (isArcadeDictionary(value)) {
3335
+ return { type: "dictionary", value };
3336
+ }
3337
+ if (isGeometry(value)) {
3338
+ return { type: "geometry", value };
3339
+ }
3340
+ if (isKnowledgeGraph(value)) {
3341
+ return { type: "knowledgeGraph", value };
3342
+ }
3256
3343
  return { type: "unknown" };
3257
- }
3258
- if (isArcadeDate(value)) {
3259
- return { type: "date", value };
3260
- }
3261
- if (isArcadeDateOnly(value)) {
3262
- return { type: "dateOnly", value };
3263
- }
3264
- if (isArcadeTimeOnly(value)) {
3265
- return { type: "time", value };
3266
- }
3267
- if (isArcadeAttachment(value)) {
3268
- return { type: "attachment", value };
3269
- }
3270
- if (isArcadePortal(value)) {
3271
- return { type: "portal", value };
3272
- }
3273
- if (isArcadeFeatureSet(value)) {
3274
- return { type: "featureSet", value, features: [], iterator: null };
3275
- }
3276
- if (isArcadeFeature(value)) {
3277
- return { type: "feature", value };
3278
- }
3279
- if (isArcadeDictionary(value)) {
3280
- return { type: "dictionary", value };
3281
- }
3282
- if (isGeometry(value)) {
3283
- return { type: "geometry", value };
3284
- }
3285
- return { type: "unknown" };
3286
3344
  }
3287
3345
  function formatArcadeResultDate(dateObject, lang = "en") {
3288
- // Default to english
3289
- if (dateObject.value instanceof Date) {
3290
- return new Intl.DateTimeFormat(lang, { dateStyle: "medium", timeStyle: "long" }).format(dateObject.value);
3291
- }
3292
- return dateObject.value
3293
- .toDateTime()
3294
- .setLocale(lang)
3295
- .toFormat(dateObject.value.isUnknownTimeZone ? "FF" : "FF ZZZZZ");
3346
+ // Default to english
3347
+ if (dateObject.value instanceof Date) {
3348
+ return new Intl.DateTimeFormat(lang, { dateStyle: "medium", timeStyle: "long" }).format(dateObject.value);
3349
+ }
3350
+ return dateObject.value
3351
+ .toDateTime()
3352
+ .setLocale(lang)
3353
+ .toFormat(dateObject.value.isUnknownTimeZone ? "FF" : "FF ZZZZZ");
3296
3354
  }
3297
3355
  function formatArcadeResultDateOnly(dateObject) {
3298
- return dateObject.value.toString();
3356
+ return dateObject.value.toString();
3299
3357
  }
3300
3358
  function formatArcadeResultTimeOnly(dateObject) {
3301
- return dateObject.value.toString();
3359
+ return dateObject.value.toString();
3302
3360
  }
3303
3361
  async function loadArcadeResult(result, timeZone = "system") {
3304
- if (result.type !== "featureSet") {
3305
- return result;
3306
- }
3307
- // Feature Set needs to be loaded
3308
- await result.value.load();
3309
- // Create the first iterator
3310
- result.iterator = result.value.iterator({ aborted: false });
3311
- if (result.iterator == null) {
3362
+ if (result.type !== "featureSet") {
3363
+ return result;
3364
+ }
3365
+ // Feature Set needs to be loaded
3366
+ await result.value.load();
3367
+ // Create the first iterator
3368
+ result.iterator = result.value.iterator({ aborted: false });
3369
+ // Load the first batch of items
3370
+ result.features = (await result.iterator.nextBatchAsArcadeFeatures(BatchSize, timeZone)) ?? [];
3312
3371
  return result;
3313
- }
3314
- // Load the first batch of items
3315
- result.features = (await result.iterator.nextBatchAsArcadeFeatures(BatchSize, timeZone)) ?? [];
3316
- return result;
3317
3372
  }
3318
3373
  async function executeScript(editorProfile, script, testContext, console) {
3319
- //
3320
- const timeStamp = new Date();
3321
- // Provide a default console function is missing
3322
- console = console ?? (() => undefined);
3323
- try {
3324
- // We want to measure compilation time
3325
- const t0 = performance.now();
3326
- // Setup an executor with the script
3327
- const arcade = await arcadeDefaults.importArcade();
3328
- const executor = await arcade.createArcadeExecutor(script ?? "", {
3329
- variables: editorProfile?.variables ?? []
3330
- });
3331
- // We want to measure the execution time
3332
- const t1 = performance.now();
3333
- // Manufacture our execution context
3334
- const { profileVariableInstances, spatialReference, timeZone } = testContext;
3335
- const executeContext = {
3336
- spatialReference,
3337
- timeZone,
3338
- rawOutput: true,
3339
- console
3340
- };
3341
- // Execute the script
3342
- const scriptOutput = await executor.executeAsync(profileVariableInstances ?? {}, executeContext);
3343
- // Convert script output to arcade result object and load data if necessary
3344
- const scriptResult = await loadArcadeResult(valueToArcadeResult(scriptOutput), timeZone);
3345
- // Timestamp and measure cost
3346
- scriptResult.timeStamp = timeStamp;
3347
- scriptResult.compilationTime = t1 - t0;
3348
- scriptResult.executionTime = performance.now() - t1;
3349
- return scriptResult;
3350
3374
  //
3351
- }
3352
- catch (error) {
3353
- let message = "Unknown Error";
3354
- if (error instanceof Error) {
3355
- message = error.message;
3375
+ const timeStamp = new Date();
3376
+ // Provide a default console function if missing
3377
+ console ?? (console = () => undefined);
3378
+ try {
3379
+ // We want to measure compilation time
3380
+ const t0 = performance.now();
3381
+ // Setup an executor with the script
3382
+ const arcade = await arcadeDefaults.importArcade();
3383
+ const executor = await arcade.createArcadeExecutor(script ?? "", {
3384
+ variables: editorProfile?.variables ?? []
3385
+ });
3386
+ // We want to measure the execution time
3387
+ const t1 = performance.now();
3388
+ // Manufacture our execution context
3389
+ const { profileVariableInstances, spatialReference, timeZone } = testContext;
3390
+ const executeContext = {
3391
+ spatialReference,
3392
+ timeZone,
3393
+ rawOutput: true,
3394
+ console
3395
+ };
3396
+ // Execute the script
3397
+ const scriptOutput = await executor.executeAsync(profileVariableInstances, executeContext);
3398
+ // Convert script output to arcade result object and load data if necessary
3399
+ const scriptResult = await loadArcadeResult(valueToArcadeResult(scriptOutput), timeZone);
3400
+ // Timestamp and measure cost
3401
+ scriptResult.timeStamp = timeStamp;
3402
+ scriptResult.compilationTime = t1 - t0;
3403
+ scriptResult.executionTime = performance.now() - t1;
3404
+ return scriptResult;
3405
+ //
3406
+ }
3407
+ catch (error) {
3408
+ let message = "Unknown Error";
3409
+ if (error instanceof Error) {
3410
+ message = error.message;
3411
+ }
3412
+ return {
3413
+ type: "error",
3414
+ value: message,
3415
+ error,
3416
+ timeStamp,
3417
+ compilationTime: 0,
3418
+ executionTime: 0
3419
+ };
3356
3420
  }
3357
- return {
3358
- type: "error",
3359
- value: message,
3360
- error,
3361
- timeStamp: timeStamp,
3362
- compilationTime: 0,
3363
- executionTime: 0
3364
- };
3365
- }
3366
3421
  }
3367
3422
 
3368
3423
  const themeConfig = {
@@ -3387,1149 +3442,1170 @@ const themeConfig = {
3387
3442
  };
3388
3443
 
3389
3444
  function setupArcadeTheme() {
3390
- ["light", "dark"].forEach((theme) => {
3391
- const base = theme === "light" ? "vs" : "vs-dark";
3392
- const colors = themeConfig[`arcade-${theme}-theme`];
3393
- // Defines the light and dark theme based on the calcite theme name
3394
- arcadeDefaults.editor.defineTheme(base, {
3395
- base,
3396
- inherit: true,
3397
- rules: [
3398
- { token: "comment.arc", foreground: colors.comment },
3399
- { token: "constant.arc", foreground: colors.constant },
3400
- { token: "keyword.arc", foreground: colors.keyword },
3401
- { token: "identifier.arc", foreground: colors.identifier },
3402
- { token: "number.arc", foreground: colors.number },
3403
- { token: "string.arc", foreground: colors.string }
3404
- ],
3405
- colors: {}
3445
+ ["light", "dark"].forEach((theme) => {
3446
+ const base = theme === "light" ? "vs" : "vs-dark";
3447
+ const colors = themeConfig[`arcade-${theme}-theme`];
3448
+ // Defines the light and dark theme based on the calcite theme name
3449
+ arcadeDefaults.editor.defineTheme(base, {
3450
+ base,
3451
+ inherit: true,
3452
+ rules: [
3453
+ { token: "comment.arc", foreground: colors.comment },
3454
+ { token: "constant.arc", foreground: colors.constant },
3455
+ { token: "keyword.arc", foreground: colors.keyword },
3456
+ { token: "identifier.arc", foreground: colors.identifier },
3457
+ { token: "number.arc", foreground: colors.number },
3458
+ { token: "string.arc", foreground: colors.string }
3459
+ ],
3460
+ colors: {}
3461
+ });
3406
3462
  });
3407
- });
3408
3463
  }
3464
+ const monacoThemeKeys = ["comment", "keyword", "identifier", "string", "number", "constant"];
3465
+ const colorRulesKeys = [...monacoThemeKeys, "date"];
3409
3466
  function updateThemeColors(theme, colorRules) {
3410
- if (colorRules === undefined) {
3411
- setupArcadeTheme();
3412
- return;
3413
- }
3414
- const base = theme === "light" ? "vs" : "vs-dark";
3415
- const rules = [];
3416
- ["comment", "keyword", "identifier", "string", "number", "constant"].forEach((key) => {
3417
- // @ts-expect-error
3418
- const foreground = colorRules[key];
3419
- if (!foreground) {
3420
- return;
3467
+ if (colorRules === undefined) {
3468
+ setupArcadeTheme();
3469
+ return;
3421
3470
  }
3422
- rules.push({ token: `${key}.arc`, foreground });
3423
- });
3424
- arcadeDefaults.editor.defineTheme(base, { base, inherit: true, rules, colors: {} });
3471
+ const base = theme === "light" ? "vs" : "vs-dark";
3472
+ const rules = [];
3473
+ monacoThemeKeys.forEach((key) => {
3474
+ const foreground = colorRules[key];
3475
+ if (!foreground) {
3476
+ return;
3477
+ }
3478
+ rules.push({ token: `${key}.arc`, foreground });
3479
+ });
3480
+ arcadeDefaults.editor.defineTheme(base, { base, inherit: true, rules, colors: {} });
3425
3481
  }
3426
3482
 
3427
- const arcadeEditorCss = "arcgis-arcade-editor{display:flex;flex-direction:column;height:100%;width:100%;position:relative;overflow:hidden;border:1px solid var(--calcite-ui-border-3);box-sizing:border-box;background-color:var(--calcite-ui-foreground-1)}arcgis-arcade-editor .flex-adjustable{flex:1 1 auto;overflow:hidden}arcgis-arcade-editor .flex-panel{flex:1 0 auto}arcgis-arcade-editor .position-relative{position:relative}arcgis-arcade-editor .flex-row{display:flex;flex-direction:row;overflow:hidden}arcgis-arcade-editor .flex-column{display:flex;flex-direction:column;overflow:hidden}arcgis-arcade-editor .border-inline-start{border-inline-start:1px solid var(--calcite-ui-border-3);box-sizing:border-box}arcgis-arcade-editor .border-inline-end{border-inline-end:1px solid var(--calcite-ui-border-3);box-sizing:border-box}arcgis-arcade-editor .sticky{position:sticky;top:0px;z-index:10}arcgis-arcade-editor .notice-container{margin:var(--calcite-spacing-quarter);padding:var(--calcite-spacing-half);background-color:var(--calcite-ui-foreground-1);text-align:center}arcgis-arcade-editor .side-action-bar{max-width:25%}arcgis-arcade-editor .side-panel{max-width:45%;width:600px}arcgis-arcade-editor .side-panel calcite-flow{height:100%}arcgis-arcade-editor .main-action-bar{border-bottom:1px solid var(--calcite-ui-border-3);flex:0 0 auto}arcgis-arcade-editor .main-action-bar calcite-action-group{padding-inline-end:var(--calcite-spacing-half)}arcgis-arcade-editor .main-action-bar calcite-action-group calcite-action{padding-inline-end:var(--calcite-spacing-half)}arcgis-arcade-editor .main-action-bar calcite-action-group calcite-action:not(:first-child){padding-inline-start:var(--calcite-spacing-half)}arcgis-arcade-editor .main-action-bar calcite-action-group:last-child{border-inline-end-width:0px}arcgis-arcade-editor .main-action-bar calcite-action-group:not(:first-child){padding-inline-start:var(--calcite-spacing-half)}arcgis-arcade-editor arcgis-arcade-results{border-top:1px solid var(--calcite-ui-border-3);box-sizing:border-box;max-height:50%;min-height:50%;margin-bottom:-1px}arcgis-arcade-editor calcite-flow [slot=footer-actions]{word-break:break-word}arcgis-arcade-editor calcite-list-item-group calcite-list-item{margin-bottom:1px;box-shadow:0 1px 0 var(--calcite-ui-border-3)}arcgis-arcade-editor calcite-list-item-group calcite-list-item:last-child{box-shadow:none}arcgis-arcade-editor calcite-list-item-group:last-child{margin-bottom:var(--calcite-spacing-1)}";
3483
+ const arcadeEditorCss = "arcgis-arcade-editor{display:flex;flex-direction:column;height:100%;width:100%;position:relative;overflow:hidden;border:1px solid var(--calcite-color-border-3);box-sizing:border-box;background-color:var(--calcite-color-foreground-1)}arcgis-arcade-editor .flex-adjustable{flex:1 1 auto;overflow:hidden}arcgis-arcade-editor .flex-panel{flex:1 0 auto}arcgis-arcade-editor .position-relative{position:relative}arcgis-arcade-editor .flex-row{display:flex;flex-direction:row;overflow:hidden}arcgis-arcade-editor .flex-column{display:flex;flex-direction:column;overflow:hidden}arcgis-arcade-editor .border-inline-start{border-inline-start:1px solid var(--calcite-color-border-3);box-sizing:border-box}arcgis-arcade-editor .border-inline-end{border-inline-end:1px solid var(--calcite-color-border-3);box-sizing:border-box}arcgis-arcade-editor .sticky{position:sticky;top:0px;z-index:10}arcgis-arcade-editor .notice-container{margin:var(--calcite-spacing-quarter);padding:var(--calcite-spacing-half);background-color:var(--calcite-color-foreground-1);text-align:center}arcgis-arcade-editor .side-action-bar{max-width:25%}arcgis-arcade-editor .side-panel{max-width:45%;width:600px}arcgis-arcade-editor .side-panel calcite-flow{height:100%}arcgis-arcade-editor .main-action-bar{border-bottom:1px solid var(--calcite-color-border-3);flex:0 0 auto}arcgis-arcade-editor .main-action-bar calcite-action-group{padding-inline-end:var(--calcite-spacing-half)}arcgis-arcade-editor .main-action-bar calcite-action-group calcite-action{padding-inline-end:var(--calcite-spacing-half)}arcgis-arcade-editor .main-action-bar calcite-action-group calcite-action:not(:first-child){padding-inline-start:var(--calcite-spacing-half)}arcgis-arcade-editor .main-action-bar calcite-action-group:last-child{border-inline-end-width:0px}arcgis-arcade-editor .main-action-bar calcite-action-group:not(:first-child){padding-inline-start:var(--calcite-spacing-half)}arcgis-arcade-editor arcgis-arcade-results{border-top:1px solid var(--calcite-color-border-3);box-sizing:border-box;max-height:50%;min-height:50%;margin-bottom:-1px}arcgis-arcade-editor calcite-flow [slot=footer]{word-break:break-word}arcgis-arcade-editor calcite-list-item-group calcite-list-item{margin-bottom:1px;box-shadow:0 1px 0 var(--calcite-color-border-3)}arcgis-arcade-editor calcite-list-item-group calcite-list-item:last-child{box-shadow:none}arcgis-arcade-editor calcite-list-item-group:last-child{margin-bottom:var(--calcite-spacing-1)}";
3428
3484
 
3429
3485
  setupArcadeTheme();
3430
3486
  const ArcgisArcadeEditor = class {
3431
- constructor(hostRef) {
3432
- index.registerInstance(this, hostRef);
3433
- this.scriptChange = index.createEvent(this, "scriptChange", 3);
3434
- this.diagnosticsChange = index.createEvent(this, "diagnosticsChange", 3);
3435
- this._componentReadyDefer = new arcadeDefaults.h();
3436
- this._modelId = arcadeDefaults._();
3437
- this._editorProfilePromise = Promise.resolve(undefined);
3438
- this._disposables = [];
3439
- this._executeScript = async () => {
3440
- const testContext = this.testData;
3441
- if (!this._codeEditorElt || !testContext) {
3442
- return;
3443
- }
3444
- const editorProfile = await this._editorProfilePromise;
3445
- if (!editorProfile) {
3446
- this._executionResult = { type: "error", value: "Missing editor profile", error: null };
3447
- return;
3448
- }
3449
- this._showExecutionPanel = true;
3450
- this._executingScript = true;
3451
- this._consoleLogs = [];
3452
- setTimeout(async () => {
3453
- const script = await this._codeEditorElt?.getValue();
3454
- this._executionResult = await executeScript(editorProfile.definition, script, testContext, (log) => setTimeout(() => (this._consoleLogs = [...this._consoleLogs, log]), 0));
3487
+ constructor(hostRef) {
3488
+ index.registerInstance(this, hostRef);
3489
+ this.scriptChange = index.createEvent(this, "scriptChange", 3);
3490
+ this.diagnosticsChange = index.createEvent(this, "diagnosticsChange", 3);
3491
+ this._componentReadyDefer = new arcadeDefaults.h();
3492
+ this._modelId = arcadeDefaults.U();
3493
+ this._editorProfilePromise = Promise.resolve(undefined);
3494
+ this._disposables = [];
3495
+ this._executeScript = async () => {
3496
+ const testContext = this.testData;
3497
+ if (!this._codeEditorElt || !testContext) {
3498
+ return;
3499
+ }
3500
+ const editorProfile = await this._editorProfilePromise;
3501
+ if (!editorProfile) {
3502
+ this._executionResult = { type: "error", value: "Missing editor profile", error: null };
3503
+ return;
3504
+ }
3505
+ this._showExecutionPanel = true;
3506
+ this._executingScript = true;
3507
+ this._consoleLogs = [];
3508
+ setTimeout(() => void (async () => {
3509
+ const script = await this._codeEditorElt?.getValue();
3510
+ this._executionResult = await executeScript(editorProfile.definition, script, testContext, (log) => setTimeout(() => (this._consoleLogs = [...this._consoleLogs, log]), 0));
3511
+ this._executingScript = false;
3512
+ })(), 0);
3513
+ };
3514
+ this._toggleShowExecutionPanel = () => void (this._showExecutionPanel = !this._showExecutionPanel);
3515
+ this._toggleSideActionBarExpanded = () => void (this.sideActionBarExpanded = !this.sideActionBarExpanded);
3516
+ this._toggleSidePanel = async (e) => {
3517
+ if (!e.target) {
3518
+ return;
3519
+ }
3520
+ const panelName = e.target?.dataset.panelName ?? "none";
3521
+ // Setup the new panel. Toggle to none if already opened
3522
+ this.openedSidePanel = panelName === this.openedSidePanel ? "none" : panelName;
3523
+ if (this.openedSidePanel === "none") {
3524
+ // Reset focus on the code editor if no panel displayed
3525
+ await this._codeEditorElt?.setFocus();
3526
+ }
3527
+ };
3528
+ this._openArcadeHelp = () => void window.open(DevelopersWebSitePath, "Arcade Help");
3529
+ this._emitScriptChange = (e) => {
3530
+ e.stopPropagation();
3531
+ this.scriptChange.emit(e.detail);
3532
+ };
3533
+ this._insertAsSnippet = async (e) => await this._codeEditorElt?.insertSnippet(e.detail);
3534
+ this._insertAsText = async (e) => await this._codeEditorElt?.insertText(e.detail);
3535
+ this._onResultPanelChange = (e) => void (this._resultPanel = e.detail);
3536
+ this._onExecutionPanelClose = () => void (this._showExecutionPanel = false);
3537
+ this._lang = "";
3538
+ this._t9nLocale = "";
3539
+ this._t9nStrings = undefined;
3540
+ this._standaloneCodeEditor = undefined;
3541
+ this._preparingProfile = false;
3542
+ this._editorProfile = undefined;
3543
+ this._showExecutionPanel = false;
3544
+ this._resultPanel = "output";
3455
3545
  this._executingScript = false;
3456
- }, 0);
3457
- };
3458
- this._toggleShowExecutionPanel = () => (this._showExecutionPanel = !this._showExecutionPanel);
3459
- this._toggleSideActionBarExpanded = () => (this.sideActionBarExpanded = !this.sideActionBarExpanded);
3460
- this._toggleSidePanel = async (e) => {
3461
- if (!e.target) {
3462
- return;
3463
- }
3464
- const panelName = e.target?.dataset.panelName ?? "none";
3465
- // Setup the new panel. Toggle to none if already opened
3466
- this.openedSidePanel = panelName === this.openedSidePanel ? "none" : panelName;
3467
- if (this.openedSidePanel === "none") {
3468
- // Reset focus on the code editor if no panel displayed
3469
- await this._codeEditorElt?.setFocus();
3470
- }
3471
- };
3472
- this._openArcadeHelp = () => window.open(DevelopersWebSitePath, "Arcade Help");
3473
- this._emitScriptChange = (e) => {
3474
- e.stopPropagation();
3475
- this.scriptChange.emit(e.detail);
3476
- };
3477
- this._insertAsSnippet = (e) => this._codeEditorElt?.insertSnippet(e.detail);
3478
- this._insertAsText = (e) => this._codeEditorElt?.insertText(e.detail);
3479
- this._onResultPanelChange = (e) => (this._resultPanel = e.detail);
3480
- this._onExecutionPanelClose = () => (this._showExecutionPanel = false);
3481
- this._locale = "";
3482
- this._t9nStrings = undefined;
3483
- this._standaloneCodeEditor = undefined;
3484
- this._preparingProfile = false;
3485
- this._editorProfile = undefined;
3486
- this._showExecutionPanel = false;
3487
- this._resultPanel = "output";
3488
- this._executingScript = false;
3489
- this._consoleLogs = [];
3490
- this._executionResult = undefined;
3491
- this.profile = undefined;
3492
- this.script = "";
3493
- this.testData = undefined;
3494
- this.suggestions = undefined;
3495
- this.snippets = undefined;
3496
- this.hideDocumentationActions = false;
3497
- this.hideSideBar = false;
3498
- this.sideActionBarExpanded = false;
3499
- this.openedSidePanel = "none";
3500
- }
3501
- _profileChanged(newValue, oldValue) {
3502
- // Prevent the execution as long as the component has not been fully loaded
3503
- if (newValue === oldValue) {
3504
- return;
3546
+ this._consoleLogs = [];
3547
+ this._executionResult = undefined;
3548
+ this.profile = undefined;
3549
+ this.script = "";
3550
+ this.testData = undefined;
3551
+ this.suggestions = undefined;
3552
+ this.snippets = undefined;
3553
+ this.hideDocumentationActions = false;
3554
+ this.hideSideBar = false;
3555
+ this.sideActionBarExpanded = false;
3556
+ this.openedSidePanel = "none";
3505
3557
  }
3506
- this._updateEditorProfile();
3507
- }
3508
- _testDataChanged(newValue, oldValue) {
3509
- if (newValue === oldValue || !this._showExecutionPanel) {
3510
- return;
3558
+ _profileChanged(newValue, oldValue) {
3559
+ // Prevent the execution as long as the component has not been fully loaded
3560
+ if (newValue === oldValue) {
3561
+ return;
3562
+ }
3563
+ this._updateEditorProfile().catch(console.error);
3511
3564
  }
3512
- this._executeScript();
3513
- }
3514
- _snippetChanged(newValue, oldValue) {
3515
- if (newValue === oldValue) {
3516
- return;
3565
+ _testDataChanged(newValue, oldValue) {
3566
+ if (newValue === oldValue || !this._showExecutionPanel) {
3567
+ return;
3568
+ }
3569
+ this._executeScript().catch(console.error);
3517
3570
  }
3518
- arcadeDefaults.arcadeDefaults.updateApiContextForModel(this._modelId, {
3519
- snippets: this.snippets
3520
- });
3521
- }
3522
- // #endregion
3523
- // #region Public methods API
3524
- /**
3525
- * Returns the current script.
3526
- * @returns {Promise<string>}
3527
- */
3528
- async getScript() {
3529
- await this._componentReadyDefer.promise;
3530
- return this._codeEditorElt?.getValue();
3531
- }
3532
- /**
3533
- * Set the focus on the element.
3534
- */
3535
- async setFocus() {
3536
- await this._componentReadyDefer.promise;
3537
- await this._codeEditorElt?.setFocus();
3538
- }
3539
- /**
3540
- * @internal
3541
- * Returns the editor instance.
3542
- * @returns {Promise<IStandaloneCodeEditor>} - The monaco editor instance
3543
- */
3544
- async getEditorInstance() {
3545
- await this._componentReadyDefer.promise;
3546
- return this._codeEditorElt?.getEditorInstance();
3547
- }
3548
- /**
3549
- * Returns the Arcade result for the script for the provided test data.
3550
- */
3551
- async getTestResult() {
3552
- if (!this.testData) {
3553
- return { type: "error", value: "Missing test data", error: null };
3571
+ _snippetChanged(newValue, oldValue) {
3572
+ if (newValue === oldValue) {
3573
+ return;
3574
+ }
3575
+ arcadeDefaults.arcadeDefaults.updateApiContextForModel(this._modelId, {
3576
+ snippets: this.snippets
3577
+ });
3554
3578
  }
3555
- const editorProfile = await this._editorProfilePromise;
3556
- if (!editorProfile) {
3557
- return { type: "error", value: "Missing editor profile", error: null };
3579
+ // #endregion
3580
+ // #region Public methods API
3581
+ /**
3582
+ * Returns the current script.
3583
+ * @returns {Promise<string>}
3584
+ */
3585
+ async getScript() {
3586
+ await this._componentReadyDefer.promise;
3587
+ return await this._codeEditorElt?.getValue();
3558
3588
  }
3559
- await this._componentReadyDefer.promise;
3560
- const script = await this._codeEditorElt?.getValue();
3561
- return executeScript(editorProfile.definition, script, this.testData);
3562
- }
3563
- /**
3564
- * Returns the Arcade output type for the script.
3565
- * @deprecated Use getTestResult
3566
- * @internal
3567
- */
3568
- async getOutputType() {
3569
- return (await this.getTestResult()).type;
3570
- }
3571
- /**
3572
- * Allows to change theme colors
3573
- * @internal
3574
- */
3575
- async updateThemeColors(colorRules) {
3576
- const theme = arcadeDefaults.C(this._hostElt);
3577
- updateThemeColors(theme, colorRules);
3578
- if (colorRules === undefined) {
3579
- ["comment", "keyword", "identifier", "string", "number", "constant", "date"].forEach((key) => {
3580
- this._hostElt.style.removeProperty(`--arcgis-arcade-editor-${key}`);
3581
- });
3582
- return;
3589
+ /**
3590
+ * Set the focus on the element.
3591
+ */
3592
+ async setFocus() {
3593
+ await this._componentReadyDefer.promise;
3594
+ await this._codeEditorElt?.setFocus();
3583
3595
  }
3584
- ["comment", "keyword", "identifier", "string", "number", "constant", "date"].forEach((key) => {
3585
- // @ts-expect-error
3586
- const foreground = colorRules[key];
3587
- if (!foreground) {
3588
- return;
3589
- }
3590
- this._hostElt.style.setProperty(`--arcgis-arcade-editor-${key}`, foreground);
3591
- });
3592
- }
3593
- // #endregion
3594
- // #region Component lifecycle events
3595
- async componentWillLoad() {
3596
- const assetsPath = index.getAssetPath("./assets");
3597
- // We are a bit in a chicken and egg situation here.
3598
- // Normally, it is the code editor that is responsible for setting up the Monaco environement.
3599
- // However, we need to setup the environment before the code editor is instantiated because
3600
- // we need to access the arcade language service to get the api library.
3601
- setupMonacoEnvironment(assetsPath);
3602
- // Starts a locale observer. It will load the correct t9n strings for the component
3603
- // when the locale changes. We also pass updateEditorProfile. It will be invoked the first
3604
- // and on each locale change. The profile has to be refreshed on locale change as well.
3605
- await arcadeDefaults.$(this, assetsPath, async () => await this._updateEditorProfile());
3606
- }
3607
- async componentDidLoad() {
3608
- // Mark on component as ready.
3609
- // Some methods are waiting for this state to actually continue.
3610
- this._componentReadyDefer.resolve();
3611
- // Start listening to the validation diagnostics.
3612
- // We are doing this as late as possible
3613
- const diagnosticsService = await getArcadeDiagnosticService();
3614
- this._disposables.push(diagnosticsService.onDiagnosticsChange((ev) => !this._preparingProfile && this.diagnosticsChange.emit(ev.diagnostics)));
3615
- // Get editor instance and add action
3616
- this._standaloneCodeEditor = await this.getEditorInstance();
3617
- this._standaloneCodeEditor?.addAction({
3618
- // An unique identifier for the action.
3619
- id: "run-script",
3620
- label: "Run Arcade Expression",
3621
- keybindings: [arcadeDefaults.KeyCode.F5],
3622
- contextMenuGroupId: "code",
3623
- contextMenuOrder: 1,
3624
- run: () => {
3625
- if (this.testData) {
3626
- this._executeScript();
3596
+ /**
3597
+ * @internal
3598
+ * Returns the editor instance.
3599
+ * @returns {Promise<IStandaloneCodeEditor>} - The monaco editor instance
3600
+ */
3601
+ async getEditorInstance() {
3602
+ await this._componentReadyDefer.promise;
3603
+ return (await this._codeEditorElt?.getEditorInstance());
3604
+ }
3605
+ /**
3606
+ * Returns the Arcade result for the script for the provided test data.
3607
+ */
3608
+ async getTestResult() {
3609
+ if (!this.testData) {
3610
+ return { type: "error", value: "Missing test data", error: null };
3627
3611
  }
3628
- }
3629
- });
3630
- await this._codeEditorElt?.setFocus();
3631
- }
3632
- disconnectedCallback() {
3633
- arcadeDefaults.F(this);
3634
- arcadeDefaults.arcadeDefaults.disposeApiContextForModel(this._modelId);
3635
- arcadeDefaults.arcadeDefaults.disposeEditorProfileForModel(this._modelId);
3636
- while (this._disposables.length) {
3637
- this._disposables.pop()?.dispose();
3612
+ const editorProfile = await this._editorProfilePromise;
3613
+ if (!editorProfile) {
3614
+ return { type: "error", value: "Missing editor profile", error: null };
3615
+ }
3616
+ await this._componentReadyDefer.promise;
3617
+ const script = await this._codeEditorElt?.getValue();
3618
+ return await executeScript(editorProfile.definition, script, this.testData);
3638
3619
  }
3639
- }
3640
- // #endregion
3641
- // #region Private methods API
3642
- async _updateEditorProfile() {
3643
- // The goal is to
3644
- // - convert the runtime profile into a specialized instance that will serve the UI better.
3645
- // - extract the language service profile that is specialized for completion and validation
3646
- this._preparingProfile = true;
3647
- try {
3648
- // Set a new profile for the model using the profile definition and the locale.
3649
- await arcadeDefaults.arcadeDefaults.setProfileForModel(this._modelId, this.profile, {
3650
- locale: this._locale,
3651
- snippets: this.snippets
3652
- });
3653
- // Get the corresponding editor profile for the model.
3654
- // The editor profile contains the specialized profile for the UI.
3655
- this._editorProfile = arcadeDefaults.arcadeDefaults.getEditorProfileForModel(this._modelId);
3620
+ /**
3621
+ * Allows to change theme colors
3622
+ * @internal
3623
+ */
3624
+ async updateThemeColors(colorRules) {
3625
+ const theme = arcadeDefaults.k(this._hostElement);
3626
+ updateThemeColors(theme, colorRules);
3627
+ if (colorRules === undefined) {
3628
+ colorRulesKeys.forEach((key) => {
3629
+ this._hostElement.style.removeProperty(`--arcgis-arcade-editor-${key}`);
3630
+ });
3631
+ return;
3632
+ }
3633
+ colorRulesKeys.forEach((key) => {
3634
+ const foreground = colorRules[key];
3635
+ if (!foreground) {
3636
+ return;
3637
+ }
3638
+ this._hostElement.style.setProperty(`--arcgis-arcade-editor-${key}`, foreground);
3639
+ });
3656
3640
  }
3657
- catch (e) {
3658
- this._editorProfile = undefined;
3641
+ // #endregion
3642
+ // #region Component lifecycle events
3643
+ async componentWillLoad() {
3644
+ const assetsPath = index.getAssetPath("./assets");
3645
+ // We are a bit in a chicken and egg situation here.
3646
+ // Normally, it is the code editor that is responsible for setting up the Monaco environement.
3647
+ // However, we need to setup the environment before the code editor is instantiated because
3648
+ // we need to access the arcade language service to get the api library.
3649
+ setupMonacoEnvironment(assetsPath);
3650
+ // Starts a locale observer. It will load the correct t9n strings for the component
3651
+ // when the locale changes. We also pass updateEditorProfile. It will be invoked the first
3652
+ // and on each locale change. The profile has to be refreshed on locale change as well.
3653
+ await arcadeDefaults.B(this, assetsPath, async () => await this._updateEditorProfile());
3659
3654
  }
3660
- finally {
3661
- this._editorProfilePromise = Promise.resolve(this._editorProfile);
3662
- this._preparingProfile = false;
3655
+ async componentDidLoad() {
3656
+ // Mark on component as ready.
3657
+ // Some methods are waiting for this state to actually continue.
3658
+ this._componentReadyDefer.resolve();
3659
+ // Start listening to the validation diagnostics.
3660
+ // We are doing this as late as possible
3661
+ const diagnosticsService = await getArcadeDiagnosticService();
3662
+ this._disposables.push(diagnosticsService.onDiagnosticsChange((event) => !this._preparingProfile && this.diagnosticsChange.emit(event.diagnostics)));
3663
+ // Get editor instance and add action
3664
+ this._standaloneCodeEditor = await this.getEditorInstance();
3665
+ this._standaloneCodeEditor?.addAction({
3666
+ // An unique identifier for the action.
3667
+ id: "run-script",
3668
+ label: "Run Arcade Expression",
3669
+ keybindings: [arcadeDefaults.KeyCode.F5],
3670
+ contextMenuGroupId: "code",
3671
+ contextMenuOrder: 1,
3672
+ run: () => {
3673
+ if (this.testData) {
3674
+ this._executeScript().catch(console.error);
3675
+ }
3676
+ }
3677
+ });
3678
+ await this._codeEditorElt?.setFocus();
3663
3679
  }
3664
- }
3665
- // #endregion
3666
- //#region Render Main Action Bar
3667
- renderMainActionBar() {
3668
- if (!this.testData) {
3669
- return null;
3680
+ disconnectedCallback() {
3681
+ arcadeDefaults.H(this);
3682
+ arcadeDefaults.arcadeDefaults.disposeApiContextForModel(this._modelId);
3683
+ arcadeDefaults.arcadeDefaults.disposeEditorProfileForModel(this._modelId);
3684
+ while (this._disposables.length) {
3685
+ this._disposables.pop()?.dispose();
3686
+ }
3670
3687
  }
3671
- return (index.h("calcite-action-bar", { class: "main-action-bar", layout: "horizontal", scale: "s", expanded: true, "expand-disabled": true }, index.h("calcite-action-group", { layout: "horizontal", scale: "s" }, index.h("calcite-action", { text: this._t9nStrings?.run ?? "Run", "text-enabled": true, icon: "play", scale: "s", loading: this._preparingProfile, onClick: this._executeScript }), this._executionResult ? (index.h("calcite-action", { text: this._t9nStrings?.lastresults ?? "Last results", active: this._showExecutionPanel, "text-enabled": true, icon: "access-string-results", iconFlipRtl: true, scale: "s", onClick: this._toggleShowExecutionPanel })) : null)));
3672
- }
3673
- //#endregion
3674
- //#region Render Main Panel
3675
- renderMainPanel() {
3676
- return (
3677
- // <div class="flex-adjustable">
3678
- index.h("arcgis-code-editor", { class: "flex-adjustable", language: arcadeDefaults.arcadeDefaults.languageId, value: this.script ?? "", modelId: this._modelId, onValueChange: this._emitScriptChange, ref: (e) => (this._codeEditorElt = e) })
3679
- // </div>
3680
- );
3681
- }
3682
- //#endregion
3683
- //#region Rendering the Action Bar
3684
- renderSideActionBar() {
3685
- if (this.hideSideBar) {
3686
- return null;
3688
+ // #endregion
3689
+ // #region Private methods API
3690
+ async _updateEditorProfile() {
3691
+ // The goal is to
3692
+ // - convert the runtime profile into a specialized instance that will serve the UI better.
3693
+ // - extract the language service profile that is specialized for completion and validation
3694
+ this._preparingProfile = true;
3695
+ try {
3696
+ // Set a new profile for the model using the profile definition and the locale.
3697
+ await arcadeDefaults.arcadeDefaults.setProfileForModel(this._modelId, this.profile, {
3698
+ locale: this._t9nLocale,
3699
+ snippets: this.snippets
3700
+ });
3701
+ // Get the corresponding editor profile for the model.
3702
+ // The editor profile contains the specialized profile for the UI.
3703
+ this._editorProfile = arcadeDefaults.arcadeDefaults.getEditorProfileForModel(this._modelId);
3704
+ }
3705
+ catch {
3706
+ this._editorProfile = undefined;
3707
+ }
3708
+ finally {
3709
+ this._editorProfilePromise = Promise.resolve(this._editorProfile);
3710
+ this._preparingProfile = false;
3711
+ }
3687
3712
  }
3688
- return (index.h("calcite-action-bar", { class: "side-action-bar border-inline-start", expanded: !!this.sideActionBarExpanded, position: "end", onCalciteActionBarToggle: this._toggleSideActionBarExpanded }, index.h("calcite-action-group", null, index.h("calcite-action", { id: "profile-variables-action", text: this._t9nStrings?.profilevariables ?? "Profile variables", icon: "profile-variables", active: this.openedSidePanel === "variables", onClick: this._toggleSidePanel, "data-panel-name": "variables" }), index.h("calcite-action", { id: "function-action", text: this._t9nStrings?.constantsandfunctions ?? "Constants and functions", icon: "function", active: this.openedSidePanel === "api", onClick: this._toggleSidePanel, "data-panel-name": "api" }), this.suggestions?.length ? (index.h(index.Fragment, null, index.h("calcite-action", { id: "suggestions-action", text: this._t9nStrings?.suggestions ?? "Suggestions", icon: "lightbulb", active: this.openedSidePanel === "suggestions", onClick: this._toggleSidePanel, "data-panel-name": "suggestions" }))) : null, this.hideDocumentationActions ? null : (index.h(index.Fragment, null, index.h("calcite-action", { id: "developer-website-action", text: this._t9nStrings?.help ?? "Help", icon: "question", iconFlipRtl: this._locale === "ar", onClick: this._openArcadeHelp }))))));
3689
- }
3690
- // private renderTooltip(id: string, label: string | undefined): VNode | null {
3691
- // if (this.sideActionBarExpanded || !label) {
3692
- // return null;
3693
- // }
3694
- // return (
3695
- // <calcite-tooltip label={label} reference-element={id} placement="leading-start">
3696
- // <span>{label}</span>
3697
- // </calcite-tooltip>
3698
- // );
3699
- // }
3700
- //#endregion
3701
- //#region Render Side Panel
3702
- renderSidePanel() {
3703
- if (this.hideSideBar) {
3704
- return null;
3713
+ // #endregion
3714
+ //#region Render Main Action Bar
3715
+ renderMainActionBar() {
3716
+ if (!this.testData) {
3717
+ return null;
3718
+ }
3719
+ return (index.h("calcite-action-bar", { class: "main-action-bar", layout: "horizontal", scale: "s", expanded: true, "expand-disabled": true }, index.h("calcite-action-group", { scale: "s" }, index.h("calcite-action", { text: this._t9nStrings?.run ?? "Run", "text-enabled": true, icon: "play", scale: "s", loading: this._preparingProfile, onClick: this._executeScript }), this._executionResult ? (index.h("calcite-action", { text: this._t9nStrings?.lastresults ?? "Last results", active: this._showExecutionPanel, "text-enabled": true, icon: "access-string-results", iconFlipRtl: true, scale: "s", onClick: this._toggleShowExecutionPanel })) : null)));
3705
3720
  }
3706
- switch (this.openedSidePanel) {
3707
- case "api":
3708
- return (index.h("arcgis-arcade-api", { class: "side-panel flex-panel border-inline-start", modelId: this._modelId, hideDocumentationActions: this.hideDocumentationActions, onItemSelected: this._insertAsSnippet, onClose: this._toggleSidePanel, "data-panel-name": "none" }));
3709
- case "variables":
3710
- return (index.h("arcgis-arcade-variables", { class: "side-panel flex-panel border-inline-start", loading: this._preparingProfile, modelId: this._modelId, onItemSelected: this._insertAsText, onClose: this._toggleSidePanel, "data-panel-name": "none" }));
3711
- case "suggestions":
3712
- return (index.h("arcgis-arcade-suggestions", { class: "side-panel flex-panel border-inline-start", suggestions: this.suggestions, onItemSelected: this._insertAsText, onClose: this._toggleSidePanel, "data-panel-name": "none" }));
3713
- default:
3714
- return null;
3721
+ //#endregion
3722
+ //#region Render Main Panel
3723
+ renderMainPanel() {
3724
+ return (
3725
+ // <div class="flex-adjustable">
3726
+ index.h("arcgis-code-editor", { class: "flex-adjustable", language: arcadeDefaults.arcadeDefaults.languageId, value: this.script ?? "", modelId: this._modelId, onValueChange: this._emitScriptChange, ref: (e) => (this._codeEditorElt = e) })
3727
+ // </div>
3728
+ );
3715
3729
  }
3716
- }
3717
- //#endregion
3718
- //#region Rendering Results Panel
3719
- renderResultsPanel() {
3720
- if (!this._showExecutionPanel) {
3721
- return null;
3730
+ //#endregion
3731
+ //#region Rendering the Action Bar
3732
+ renderAction({ id, label, icon, active, panelName, onClick = this._toggleSidePanel }) {
3733
+ return (index.h(index.Fragment, null, index.h("calcite-action", { id: id, text: label, icon: icon, active: active, onClick: onClick, "data-panel-name": panelName }), !this.sideActionBarExpanded && (index.h("calcite-tooltip", { label: label, "reference-element": id }, index.h("span", null, label)))));
3722
3734
  }
3723
- return (index.h("arcgis-arcade-results", { class: "flex-adjustable", openedResultPanel: this._resultPanel, loading: this._executingScript, result: this._executionResult, consoleLogs: this._consoleLogs, onOpenedResultPanelChange: this._onResultPanelChange, onClose: this._onExecutionPanelClose }));
3724
- }
3725
- //#endregion
3726
- //#region Render
3727
- render() {
3728
- return (index.h(index.Host, null, this.renderMainActionBar(), index.h("div", { class: "flex-row flex-adjustable" }, index.h("div", { class: "flex-column flex-adjustable" }, this.renderMainPanel(), this.renderResultsPanel()), this.renderSidePanel(), this.renderSideActionBar())));
3729
- }
3730
- static get assetsDirs() { return ["assets"]; }
3731
- get _hostElt() { return index.getElement(this); }
3732
- static get watchers() { return {
3733
- "profile": ["_profileChanged"],
3734
- "testData": ["_testDataChanged"],
3735
- "snippets": ["_snippetChanged"]
3736
- }; }
3735
+ renderSideActionBar() {
3736
+ if (this.hideSideBar) {
3737
+ return null;
3738
+ }
3739
+ console.log("expanded", this.sideActionBarExpanded);
3740
+ return (index.h("calcite-action-bar", { class: "side-action-bar border-inline-start", expanded: !!this.sideActionBarExpanded, position: "end", onCalciteActionBarToggle: this._toggleSideActionBarExpanded }, index.h("calcite-action-group", null, this.renderAction({
3741
+ id: "profile-variables-action",
3742
+ label: this._t9nStrings?.profilevariables ?? "Profile variables",
3743
+ icon: "profile-variables",
3744
+ active: this.openedSidePanel === "variables",
3745
+ panelName: "variables"
3746
+ }), this.renderAction({
3747
+ id: "function-action",
3748
+ label: this._t9nStrings?.constantsandfunctions ?? "Constants and functions",
3749
+ icon: "function",
3750
+ active: this.openedSidePanel === "api",
3751
+ panelName: "api"
3752
+ }), this.suggestions?.length
3753
+ ? this.renderAction({
3754
+ id: "suggestions-action",
3755
+ label: this._t9nStrings?.suggestions ?? "Suggestions",
3756
+ icon: "lightbulb",
3757
+ active: this.openedSidePanel === "suggestions",
3758
+ panelName: "suggestions"
3759
+ })
3760
+ : null, this.hideDocumentationActions
3761
+ ? null
3762
+ : this.renderAction({
3763
+ id: "developer-website-action",
3764
+ label: this._t9nStrings?.help ?? "Help",
3765
+ icon: "question",
3766
+ active: false,
3767
+ panelName: "none",
3768
+ onClick: this._openArcadeHelp
3769
+ }))));
3770
+ }
3771
+ //#endregion
3772
+ //#region Render Side Panel
3773
+ renderSidePanel() {
3774
+ if (this.hideSideBar) {
3775
+ return null;
3776
+ }
3777
+ switch (this.openedSidePanel) {
3778
+ case "api":
3779
+ return (index.h("arcgis-arcade-api", { class: "side-panel flex-panel border-inline-start", modelId: this._modelId, hideDocumentationActions: this.hideDocumentationActions, onItemSelected: void this._insertAsSnippet, onClose: void this._toggleSidePanel, "data-panel-name": "none" }));
3780
+ case "variables":
3781
+ return (index.h("arcgis-arcade-variables", { class: "side-panel flex-panel border-inline-start", loading: this._preparingProfile, modelId: this._modelId, onItemSelected: void this._insertAsText, onClose: void this._toggleSidePanel, "data-panel-name": "none" }));
3782
+ case "suggestions":
3783
+ return (index.h("arcgis-arcade-suggestions", { class: "side-panel flex-panel border-inline-start", suggestions: this.suggestions, onItemSelected: void this._insertAsText, onClose: void this._toggleSidePanel, "data-panel-name": "none" }));
3784
+ default:
3785
+ return null;
3786
+ }
3787
+ }
3788
+ //#endregion
3789
+ //#region Rendering Results Panel
3790
+ renderResultsPanel() {
3791
+ if (!this._showExecutionPanel) {
3792
+ return null;
3793
+ }
3794
+ return (index.h("arcgis-arcade-results", { class: "flex-adjustable", openedResultPanel: this._resultPanel, loading: this._executingScript, result: this._executionResult, consoleLogs: this._consoleLogs, onOpenedResultPanelChange: this._onResultPanelChange, onClose: this._onExecutionPanelClose }));
3795
+ }
3796
+ //#endregion
3797
+ //#region Render
3798
+ render() {
3799
+ return (index.h(index.Host, null, this.renderMainActionBar(), index.h("div", { class: "flex-row flex-adjustable" }, index.h("div", { class: "flex-column flex-adjustable" }, this.renderMainPanel(), this.renderResultsPanel()), this.renderSidePanel(), this.renderSideActionBar())));
3800
+ }
3801
+ static get assetsDirs() { return ["assets"]; }
3802
+ get _hostElement() { return index.getElement(this); }
3803
+ static get watchers() { return {
3804
+ "profile": ["_profileChanged"],
3805
+ "testData": ["_testDataChanged"],
3806
+ "snippets": ["_snippetChanged"]
3807
+ }; }
3737
3808
  };
3738
3809
  ArcgisArcadeEditor.style = arcadeEditorCss;
3739
3810
 
3740
3811
  const indentSpecs = { char: " ", size: 2 };
3741
3812
  const indentType = new Array(indentSpecs.size + 1).join(indentSpecs.char);
3742
3813
  function createPushFunc(p) {
3743
- return (substring) => "\\" + p.push(substring) + "\\";
3814
+ return (substring) => `\\${p.push(substring)}\\`;
3744
3815
  }
3745
3816
  function createPopFunc(p) {
3746
- return (_, offset) => p[offset - 1];
3817
+ return (_, offset) => p[offset - 1] ?? "";
3747
3818
  }
3748
3819
  function indent(index, indentType) {
3749
- return new Array(index + 1).join(indentType);
3820
+ return new Array(index + 1).join(indentType);
3750
3821
  }
3751
3822
  function jsonFormat(json) {
3752
- // Convert to string and extract backslashes and strings
3753
- const p = [];
3754
- const pushFunc = createPushFunc(p);
3755
- const jsonString = JSON.stringify(json)
3756
- .replace(/\\./g, pushFunc)
3757
- .replace(/(".*?"|'.*?')/g, pushFunc)
3758
- .replace(/\s+/, "");
3759
- // Indent and insert newlines
3760
- let indentIndex = 0;
3761
- let out = "";
3762
- for (let i = 0; i < jsonString.length; i++) {
3763
- const c = jsonString.charAt(i);
3764
- switch (c) {
3765
- case "{":
3766
- case "[":
3767
- out += c + "\n" + indent(++indentIndex, indentType);
3768
- break;
3769
- case "}":
3770
- case "]":
3771
- out += "\n" + indent(--indentIndex, indentType) + c;
3772
- break;
3773
- case ",":
3774
- out += ",\n" + indent(indentIndex, indentType);
3775
- break;
3776
- case ":":
3777
- out += ": ";
3778
- break;
3779
- default:
3780
- out += c;
3781
- break;
3823
+ // Convert to string and extract backslashes and strings
3824
+ const p = [];
3825
+ const pushFunc = createPushFunc(p);
3826
+ const jsonString = JSON.stringify(json)
3827
+ .replace(/\\./gu, pushFunc)
3828
+ .replace(/(".*?"|'.*?')/gu, pushFunc)
3829
+ .replace(/\s+/u, "");
3830
+ // Indent and insert newlines
3831
+ let indentIndex = 0;
3832
+ let out = "";
3833
+ for (let i = 0; i < jsonString.length; i++) {
3834
+ const c = jsonString.charAt(i);
3835
+ switch (c) {
3836
+ case "{":
3837
+ case "[":
3838
+ indentIndex += 1;
3839
+ out += `${c}\n${indent(indentIndex, indentType)}`;
3840
+ break;
3841
+ case "}":
3842
+ case "]":
3843
+ indentIndex -= 1;
3844
+ out += `\n${indent(indentIndex, indentType)}${c}`;
3845
+ break;
3846
+ case ",":
3847
+ out += `,\n${indent(indentIndex, indentType)}`;
3848
+ break;
3849
+ case ":":
3850
+ out += ": ";
3851
+ break;
3852
+ default:
3853
+ out += c;
3854
+ break;
3855
+ }
3782
3856
  }
3783
- }
3784
- // Strip whitespace from numeric arrays and put backslashes
3785
- // and strings back in
3786
- const popFunc = createPopFunc(p);
3787
- return out
3788
- .replace(/\[[\d,\s]+?\]/g, function (m) {
3789
- return m.replace(/\s/g, "");
3790
- })
3791
- .replace(/\\(\d+)\\/g, popFunc) // strings
3792
- .replace(/\\(\d+)\\/g, popFunc); // backslashes in strings
3857
+ // Strip whitespace from numeric arrays and put backslashes
3858
+ // and strings back in
3859
+ const popFunc = createPopFunc(p);
3860
+ return out
3861
+ .replace(/\[[\d,\s]+?\]/gu, (m) => m.replace(/\s/gu, ""))
3862
+ .replace(/\\(\d+)\\/gu, popFunc) // strings
3863
+ .replace(/\\(\d+)\\/gu, popFunc); // backslashes in strings
3793
3864
  }
3794
3865
 
3795
- const arcadeResultsCss = ":host{display:flex;flex-direction:column;width:100%;background-color:var(--calcite-ui-foreground-1);color:var(--calcite-ui-text-2)}:host .flex-adjustable{flex:1 1 auto;overflow:hidden}:host .flex-row{display:flex;flex-direction:row;overflow:hidden}:host .flex-column{display:flex;flex-direction:column;overflow:hidden}:host .y-scrollable-container{overflow-y:auto;block-size:100%;background-color:var(--calcite-ui-foreground-1)}:host header{border-bottom:1px solid var(--calcite-ui-border-3);flex:0 0 auto}:host .ltr-container{direction:ltr}:host calcite-action-bar calcite-action-group{padding-inline-end:var(--calcite-spacing-half)}:host calcite-action-bar calcite-action-group calcite-action{padding-inline-end:var(--calcite-spacing-half)}:host calcite-action-bar calcite-action-group calcite-action:not(:first-child){padding-inline-start:var(--calcite-spacing-half)}:host calcite-action-bar calcite-action-group:last-child{border-inline-end-width:0px}:host calcite-action-bar calcite-action-group:not(:first-child){padding-inline-start:var(--calcite-spacing-half)}:host .notice-container{margin:var(--calcite-spacing-quarter);padding:var(--calcite-spacing-half);background-color:var(--calcite-ui-foreground-1)}:host .color-info{color:var(--calcite-ui-info)}:host .color-error{color:var(--calcite-ui-danger)}:host .color-success{color:var(--calcite-ui-success)}:host [class*=result-value-]{font-size:var(--calcite-font-size--2);line-height:1.25rem;background-color:var(--calcite-ui-foreground-1);margin:var(--calcite-spacing-three-quarter)}:host .console-logs-container{background-color:var(--calcite-ui-foreground-1);padding:0 var(--calcite-spacing-three-quarter);font-family:var(--calcite-code-family);font-size:var(--calcite-font-size--2);font-weight:var(--calcite-font-weight-normal)}:host .result-value-table table{display:block;max-width:fit-content;overflow-x:auto;border-spacing:0;border-collapse:collapse;text-align:start;white-space:nowrap}:host .result-value-table table thead{background-color:var(--calcite-ui-foreground-2)}:host .result-value-table table tr{border-top:1px solid var(--calcite-ui-border-3);border-bottom:1px solid var(--calcite-ui-border-3)}:host .result-value-table table th,:host .result-value-table table td{border-inline-start:1px solid var(--calcite-ui-border-3);border-inline-end:1px solid var(--calcite-ui-border-3);text-align:start;padding:var(--calcite-spacing-quarter)}:host .result-value-table table th .string-value,:host .result-value-table table td .string-value{white-space:pre}:host .result-value-table table th{font-weight:var(--calcite-font-weight-medium)}:host .tree-item-label,:host .number-value,:host .string-value,:host .boolean-value{font-family:var(--calcite-code-family)}:host .tree-item-label,:host .value-type{color:var(--calcite-text-2);font-weight:var(--calcite-font-weight-normal)}:host .dictionary-property{color:var(--arcgis-arcade-editor-identifier)}:host .number-value{color:var(--arcgis-arcade-editor-number)}:host .string-value{color:var(--arcgis-arcade-editor-string);white-space:pre-wrap}:host .constant-value{color:var(--arcgis-arcade-editor-constant)}:host .date-value{color:var(--arcgis-arcade-editor-date)}";
3866
+ const arcadeResultsCss = ":host{display:flex;flex-direction:column;width:100%;background-color:var(--calcite-color-foreground-1);color:var(--calcite-color-text-2)}:host .flex-adjustable{flex:1 1 auto;overflow:hidden}:host .flex-row{display:flex;flex-direction:row;overflow:hidden}:host .flex-column{display:flex;flex-direction:column;overflow:hidden}:host .y-scrollable-container{overflow-y:auto;block-size:100%;background-color:var(--calcite-color-foreground-1)}:host header{border-bottom:1px solid var(--calcite-color-border-3);flex:0 0 auto}:host .ltr-container{direction:ltr}:host calcite-action-bar calcite-action-group{padding-inline-end:var(--calcite-spacing-half)}:host calcite-action-bar calcite-action-group calcite-action{padding-inline-end:var(--calcite-spacing-half)}:host calcite-action-bar calcite-action-group calcite-action:not(:first-child){padding-inline-start:var(--calcite-spacing-half)}:host calcite-action-bar calcite-action-group:last-child{border-inline-end-width:0px}:host calcite-action-bar calcite-action-group:not(:first-child){padding-inline-start:var(--calcite-spacing-half)}:host .notice-container{margin:var(--calcite-spacing-quarter);padding:var(--calcite-spacing-half);background-color:var(--calcite-color-foreground-1)}:host .color-info{color:var(--calcite-color-status-info)}:host .color-error{color:var(--calcite-color-status-danger)}:host .color-success{color:var(--calcite-color-status-success)}:host [class*=result-value-]{font-size:var(--calcite-font-size--2);line-height:1.25rem;background-color:var(--calcite-color-foreground-1);margin:var(--calcite-spacing-three-quarter)}:host .console-logs-container{background-color:var(--calcite-color-foreground-1);padding:0 var(--calcite-spacing-three-quarter);font-family:var(--calcite-code-family);font-size:var(--calcite-font-size--2);font-weight:var(--calcite-font-weight-normal)}:host .result-value-table table{display:block;max-width:fit-content;overflow-x:auto;border-spacing:0;border-collapse:collapse;text-align:start;white-space:nowrap}:host .result-value-table table thead{background-color:var(--calcite-color-foreground-2)}:host .result-value-table table tr{border-top:1px solid var(--calcite-color-border-3);border-bottom:1px solid var(--calcite-color-border-3)}:host .result-value-table table th,:host .result-value-table table td{border-inline-start:1px solid var(--calcite-color-border-3);border-inline-end:1px solid var(--calcite-color-border-3);text-align:start;padding:var(--calcite-spacing-quarter)}:host .result-value-table table th .string-value,:host .result-value-table table td .string-value{white-space:pre}:host .result-value-table table th{font-weight:var(--calcite-font-weight-medium)}:host .tree-item-label,:host .number-value,:host .string-value,:host .boolean-value{font-family:var(--calcite-code-family)}:host .tree-item-label,:host .value-type{color:var(--calcite-color-text-2);font-weight:var(--calcite-font-weight-normal)}:host .dictionary-property{color:var(--arcgis-arcade-editor-identifier)}:host .number-value{color:var(--arcgis-arcade-editor-number)}:host .string-value{color:var(--arcgis-arcade-editor-string);white-space:pre-wrap}:host .constant-value{color:var(--arcgis-arcade-editor-constant)}:host .date-value{color:var(--arcgis-arcade-editor-date)}";
3796
3867
 
3797
3868
  //#region Specialized Constants
3798
3869
  const treeProps = {
3799
- lines: true,
3800
- selectionMode: "none",
3801
- scale: "s",
3802
- onCalciteTreeSelect: (e) => e.target.selectedItems.forEach((itemElt) => (itemElt.selected = false))
3870
+ lines: true,
3871
+ selectionMode: "none",
3872
+ scale: "s",
3873
+ onCalciteTreeSelect: (e) => e.target.selectedItems.forEach((itemElt) => (itemElt.selected = false))
3803
3874
  };
3804
3875
  const expandableTreeItemProps = {
3805
- onClick: (e) => {
3806
- const item = e.currentTarget;
3807
- item.expanded = !item.expanded;
3808
- }
3876
+ onClick: (e) => {
3877
+ const item = e.currentTarget;
3878
+ item.expanded = !item.expanded;
3879
+ }
3809
3880
  };
3881
+ //#endregion
3882
+ //#region Helper Functions
3883
+ function renderDictionaryProperty(key) {
3884
+ return (index.h(index.Fragment, null, index.h("span", { class: "dictionary-property" }, key), index.h("span", null, ":\u00A0")));
3885
+ }
3886
+ function renderDictionaryAsJsonTree(value, subtree = false) {
3887
+ return (index.h("calcite-tree", { slot: subtree ? "children" : undefined, ...treeProps }, index.h("calcite-tree-item", { class: "string-value" }, jsonFormat(value.castAsJson()))));
3888
+ }
3889
+ function renderGeometryTree(value, subtree = false) {
3890
+ return (index.h("calcite-tree", { slot: subtree ? "children" : undefined, ...treeProps }, index.h("calcite-tree-item", null, index.h("div", { class: "tree-item-label" }, renderDictionaryProperty("type"), value.type)), index.h("calcite-tree-item", null, index.h("div", { class: "tree-item-label" }, renderDictionaryProperty("value"), index.h("span", { class: "string-value" }, jsonFormat(value.toJSON()))))));
3891
+ }
3892
+ function renderSimpleValue(arcadeResult) {
3893
+ switch (arcadeResult.type) {
3894
+ case "unknown":
3895
+ case "null":
3896
+ return index.h("span", { class: "constant-value" }, arcadeResult.type);
3897
+ case "text":
3898
+ return index.h("span", { class: "string-value" }, arcadeDefaults.Q(arcadeResult.value));
3899
+ case "number":
3900
+ return index.h("span", { class: "number-value" }, arcadeResult.value.toString());
3901
+ case "boolean":
3902
+ return index.h("span", { class: "constant-value" }, arcadeResult.value.toString());
3903
+ case "date":
3904
+ return index.h("span", { class: "date-value" }, formatArcadeResultDate(arcadeResult));
3905
+ case "dateOnly":
3906
+ return index.h("span", { class: "string-value" }, arcadeDefaults.Q(formatArcadeResultDateOnly(arcadeResult)));
3907
+ case "time":
3908
+ return index.h("span", { class: "string-value" }, arcadeDefaults.Q(formatArcadeResultTimeOnly(arcadeResult)));
3909
+ default:
3910
+ return null;
3911
+ }
3912
+ }
3913
+ function renderFeatureSetTable(arcadeResult) {
3914
+ const fields = arcadeDefaults.supportedFields(arcadeResult.value.fields);
3915
+ return (index.h("table", null, index.h("thead", null, index.h("tr", null, fields.map((field) => (index.h("th", null, field.name))))), index.h("tbody", null, arcadeResult.features.map((feature) => (index.h("tr", null, fields.map((field) => {
3916
+ try {
3917
+ const arcadeResult = valueToArcadeResult(feature.field(field.name));
3918
+ return index.h("td", null, renderSimpleValue(arcadeResult));
3919
+ }
3920
+ catch {
3921
+ return index.h("td", null);
3922
+ }
3923
+ })))))));
3924
+ }
3810
3925
  const ArcgisArcadeResults = class {
3811
- constructor(hostRef) {
3812
- index.registerInstance(this, hostRef);
3813
- this.openedResultPanelChange = index.createEvent(this, "openedResultPanelChange", 3);
3814
- this.close = index.createEvent(this, "close", 3);
3815
- this._switchResultPanel = (e) => {
3816
- if (!e.target) {
3817
- return;
3818
- }
3819
- const panelName = e.target?.dataset.panelName;
3820
- if (!panelName) {
3821
- return;
3822
- }
3823
- this.updateResultPanel(panelName);
3824
- };
3825
- this._emitClose = () => this.close.emit();
3826
- this._locale = "";
3827
- this._t9nStrings = undefined;
3828
- this.loading = true;
3829
- this.openedResultPanel = "output";
3830
- this.result = undefined;
3831
- this.consoleLogs = undefined;
3832
- }
3833
- //#endregion
3834
- // #region Component lifecycle events
3835
- async componentWillLoad() {
3836
- await arcadeDefaults.$(this, index.getAssetPath("./assets"));
3837
- }
3838
- disconnectedCallback() {
3839
- arcadeDefaults.F(this);
3840
- }
3841
- // #endregion
3842
- //#region Private Methods
3843
- updateResultPanel(resultPanelType) {
3844
- this.openedResultPanel = resultPanelType;
3845
- this.openedResultPanelChange.emit(resultPanelType);
3846
- }
3847
- //#endregion
3848
- //#region Rendering
3849
- renderConsolePanel() {
3850
- if (this.openedResultPanel !== "console") {
3851
- return null;
3926
+ constructor(hostRef) {
3927
+ index.registerInstance(this, hostRef);
3928
+ this.openedResultPanelChange = index.createEvent(this, "openedResultPanelChange", 3);
3929
+ this.close = index.createEvent(this, "close", 3);
3930
+ this._switchResultPanel = (e) => {
3931
+ if (!e.target) {
3932
+ return;
3933
+ }
3934
+ const panelName = e.target?.dataset.panelName;
3935
+ if (!panelName) {
3936
+ return;
3937
+ }
3938
+ this.updateResultPanel(panelName);
3939
+ };
3940
+ this._emitClose = () => this.close.emit();
3941
+ this._lang = "";
3942
+ this._t9nLocale = "";
3943
+ this._t9nStrings = undefined;
3944
+ this.loading = true;
3945
+ this.openedResultPanel = "output";
3946
+ this.result = undefined;
3947
+ this.consoleLogs = undefined;
3852
3948
  }
3853
- if (this.loading && !this.consoleLogs?.length) {
3854
- return index.h("calcite-loader", { scale: "s", type: "indeterminate", label: "" });
3949
+ //#endregion
3950
+ // #region Component lifecycle events
3951
+ async componentWillLoad() {
3952
+ await arcadeDefaults.B(this, index.getAssetPath("./assets"));
3855
3953
  }
3856
- return (index.h("div", { class: "console-logs-container ltr-container" }, this.consoleLogs?.length ? (this.consoleLogs.map((log) => {
3857
- return index.h("p", null, log);
3858
- })) : (index.h("p", null, this._t9nStrings?.consolemessage))));
3859
- }
3860
- renderLogPanel() {
3861
- if (this.openedResultPanel !== "log") {
3862
- return null;
3954
+ disconnectedCallback() {
3955
+ arcadeDefaults.H(this);
3863
3956
  }
3864
- if (this.loading) {
3865
- return index.h("calcite-loader", { scale: "s", type: "indeterminate", label: "" });
3866
- }
3867
- const iconClass = this.result?.type === "error" ? "color-error" : "color-success";
3868
- return (index.h("calcite-list", null, this.result ? (index.h(index.Fragment, null, index.h("calcite-list-item", { label: arcadeDefaults.B(this._t9nStrings?.lastexecutionformat, {
3869
- timeStamp: new Intl.DateTimeFormat(this._locale, { dateStyle: "medium", timeStyle: "medium" }).format(this.result.timeStamp)
3870
- }) }, index.h("calcite-icon", { slot: "content-start", icon: "information", scale: "s", class: iconClass })), index.h("calcite-list-item", { label: arcadeDefaults.B(this._t9nStrings?.compilationtimeformat, {
3871
- time: new Intl.NumberFormat(this._locale, {
3872
- style: "unit",
3873
- unit: "millisecond",
3874
- maximumFractionDigits: 2
3875
- }).format(this.result.compilationTime ?? 0)
3876
- }) }, index.h("calcite-icon", { slot: "content-start", icon: "information", scale: "s", class: iconClass })), index.h("calcite-list-item", { label: arcadeDefaults.B(this._t9nStrings?.executiontimeformat, {
3877
- time: new Intl.NumberFormat(this._locale, {
3878
- style: "unit",
3879
- unit: "millisecond",
3880
- maximumFractionDigits: 2
3881
- }).format(this.result.executionTime ?? 0)
3882
- }) }, index.h("calcite-icon", { slot: "content-start", icon: "information", scale: "s", class: iconClass })))) : (index.h("calcite-list-item", { label: this._t9nStrings?.runscriptmessage ?? "No output, run the script once." }, index.h("calcite-icon", { slot: "content-start", icon: "information", scale: "s", class: "color-info" })))));
3883
- }
3884
- renderOutputPanel() {
3885
- if (this.openedResultPanel !== "output") {
3886
- return null;
3957
+ // #endregion
3958
+ //#region Private Methods
3959
+ updateResultPanel(resultPanelType) {
3960
+ this.openedResultPanel = resultPanelType;
3961
+ this.openedResultPanelChange.emit(resultPanelType);
3887
3962
  }
3888
- if (this.loading) {
3889
- return index.h("calcite-loader", { scale: "s", type: "indeterminate", label: "" });
3963
+ //#endregion
3964
+ //#region Rendering
3965
+ renderConsolePanel() {
3966
+ if (this.openedResultPanel !== "console") {
3967
+ return null;
3968
+ }
3969
+ if (this.loading && !this.consoleLogs?.length) {
3970
+ return index.h("calcite-loader", { scale: "s", type: "indeterminate", label: "" });
3971
+ }
3972
+ return (index.h("div", { class: "console-logs-container ltr-container" }, this.consoleLogs?.length ? (this.consoleLogs.map((log) => index.h("p", null, log))) : (index.h("p", null, this._t9nStrings?.consolemessage))));
3890
3973
  }
3891
- switch (this.result?.type) {
3892
- case "error":
3893
- return (index.h("div", { class: "result-value-simple flex-adjustable" }, arcadeDefaults.B(this._t9nStrings?.executionerrorformat, {
3894
- message: this.result.value
3895
- })));
3896
- case "null":
3897
- case "unknown":
3898
- return index.h("div", { class: "result-value-simple ltr-container" }, this.renderSimpleValue(this.result));
3899
- case "text":
3900
- case "number":
3901
- case "date":
3902
- case "dateOnly":
3903
- case "time":
3904
- case "boolean":
3905
- return (index.h("div", { class: "result-value-simple ltr-container" }, index.h("span", { class: "value-type" }, this.result.type, ":\u00A0"), this.renderSimpleValue(this.result)));
3906
- case "array": {
3907
- const items = this.result.value ?? [];
3908
- const firstItems = items.slice(0, MaxArrayItems);
3909
- return (index.h("div", { class: "result-value-simple ltr-container" }, index.h("calcite-tree", { ...treeProps }, index.h("calcite-tree-item", { expanded: true, ...expandableTreeItemProps }, index.h("div", { class: "tree-item-label" }, this.renderArrayHeader(this.result)), this.renderArrayTree(firstItems, true)))));
3910
- }
3911
- case "geometry":
3912
- return (index.h("div", { class: "result-value-simple ltr-container" }, index.h("calcite-tree", { ...treeProps }, index.h("calcite-tree-item", { expanded: true, ...expandableTreeItemProps }, index.h("div", { class: "tree-item-label" }, this.result.type), this.renderGeometryTree(this.result.value, true)))));
3913
- case "attachment":
3914
- return (index.h("div", { class: "result-value-simple ltr-container" }, index.h("calcite-tree", { ...treeProps }, index.h("calcite-tree-item", { expanded: true, ...expandableTreeItemProps }, index.h("div", { class: "tree-item-label" }, this.result.type), this.renderDictionaryAsJsonTree(this.result.value, true)))));
3915
- case "feature":
3916
- case "dictionary":
3917
- case "portal":
3918
- return (index.h("div", { class: "result-value-simple ltr-container" }, index.h("calcite-tree", { ...treeProps }, index.h("calcite-tree-item", { expanded: true, ...expandableTreeItemProps }, index.h("div", { class: "tree-item-label" }, this.result.type), this.renderDictionaryTree(this.result.value, true)))));
3919
- case "featureSet":
3920
- return (index.h("div", { class: "result-value-table ltr-container" }, this.renderFeatureSetLabel(this.result), this.renderFeatureSetTable(this.result)));
3921
- default:
3922
- return (index.h("div", { class: "result-value-simple flex-adjustable ltr-container" }, this._t9nStrings?.runscriptmessage));
3974
+ renderLogPanel() {
3975
+ if (this.openedResultPanel !== "log") {
3976
+ return null;
3977
+ }
3978
+ if (this.loading) {
3979
+ return index.h("calcite-loader", { scale: "s", type: "indeterminate", label: "" });
3980
+ }
3981
+ const iconClass = this.result?.type === "error" ? "color-error" : "color-success";
3982
+ return (index.h("calcite-list", null, this.result ? (index.h(index.Fragment, null, index.h("calcite-list-item", { label: arcadeDefaults.K(this._t9nStrings?.lastexecutionformat, {
3983
+ timeStamp: new Intl.DateTimeFormat(this._t9nLocale, {
3984
+ dateStyle: "medium",
3985
+ timeStyle: "medium"
3986
+ }).format(this.result.timeStamp)
3987
+ }) }, index.h("calcite-icon", { slot: "content-start", icon: "information", scale: "s", class: iconClass })), index.h("calcite-list-item", { label: arcadeDefaults.K(this._t9nStrings?.compilationtimeformat, {
3988
+ time: new Intl.NumberFormat(this._t9nLocale, {
3989
+ style: "unit",
3990
+ unit: "millisecond",
3991
+ maximumFractionDigits: 2
3992
+ }).format(this.result.compilationTime ?? 0)
3993
+ }) }, index.h("calcite-icon", { slot: "content-start", icon: "information", scale: "s", class: iconClass })), index.h("calcite-list-item", { label: arcadeDefaults.K(this._t9nStrings?.executiontimeformat, {
3994
+ time: new Intl.NumberFormat(this._t9nLocale, {
3995
+ style: "unit",
3996
+ unit: "millisecond",
3997
+ maximumFractionDigits: 2
3998
+ }).format(this.result.executionTime ?? 0)
3999
+ }) }, index.h("calcite-icon", { slot: "content-start", icon: "information", scale: "s", class: iconClass })))) : (index.h("calcite-list-item", { label: this._t9nStrings?.runscriptmessage ?? "No output, run the script once." }, index.h("calcite-icon", { slot: "content-start", icon: "information", scale: "s", class: "color-info" })))));
3923
4000
  }
3924
- }
3925
- renderDictionaryProperty(key) {
3926
- return (index.h(index.Fragment, null, index.h("span", { class: "dictionary-property" }, key), index.h("span", null, ":\u00A0")));
3927
- }
3928
- renderSimpleValue(arcadeResult) {
3929
- switch (arcadeResult.type) {
3930
- case "unknown":
3931
- case "null":
3932
- return index.h("span", { class: "constant-value" }, arcadeResult.type);
3933
- case "text":
3934
- return index.h("span", { class: "string-value" }, arcadeDefaults.W(arcadeResult.value));
3935
- case "number":
3936
- return index.h("span", { class: "number-value" }, arcadeResult.value.toString());
3937
- case "boolean":
3938
- return index.h("span", { class: "constant-value" }, arcadeResult.value.toString());
3939
- case "date":
3940
- return index.h("span", { class: "date-value" }, formatArcadeResultDate(arcadeResult));
3941
- case "dateOnly":
3942
- return index.h("span", { class: "string-value" }, arcadeDefaults.W(formatArcadeResultDateOnly(arcadeResult)));
3943
- case "time":
3944
- return index.h("span", { class: "string-value" }, arcadeDefaults.W(formatArcadeResultTimeOnly(arcadeResult)));
3945
- default:
3946
- return null;
4001
+ renderOutputPanel() {
4002
+ if (this.openedResultPanel !== "output") {
4003
+ return null;
4004
+ }
4005
+ if (this.loading) {
4006
+ return index.h("calcite-loader", { scale: "s", type: "indeterminate", label: "" });
4007
+ }
4008
+ switch (this.result?.type) {
4009
+ case "error":
4010
+ return (index.h("div", { class: "result-value-simple flex-adjustable" }, arcadeDefaults.K(this._t9nStrings?.executionerrorformat, {
4011
+ message: this.result.value
4012
+ })));
4013
+ case "null":
4014
+ case "unknown":
4015
+ return index.h("div", { class: "result-value-simple ltr-container" }, renderSimpleValue(this.result));
4016
+ case "text":
4017
+ case "number":
4018
+ case "date":
4019
+ case "dateOnly":
4020
+ case "time":
4021
+ case "boolean":
4022
+ return (index.h("div", { class: "result-value-simple ltr-container" }, index.h("span", { class: "value-type" }, this.result.type, ":\u00A0"), renderSimpleValue(this.result)));
4023
+ case "array": {
4024
+ const items = this.result.value ?? [];
4025
+ const firstItems = items.slice(0, MaxArrayItems);
4026
+ return (index.h("div", { class: "result-value-simple ltr-container" }, index.h("calcite-tree", { ...treeProps }, index.h("calcite-tree-item", { expanded: true, ...expandableTreeItemProps }, index.h("div", { class: "tree-item-label" }, this.renderArrayHeader(this.result)), this.renderArrayTree(firstItems, true)))));
4027
+ }
4028
+ case "geometry":
4029
+ return (index.h("div", { class: "result-value-simple ltr-container" }, index.h("calcite-tree", { ...treeProps }, index.h("calcite-tree-item", { expanded: true, ...expandableTreeItemProps }, index.h("div", { class: "tree-item-label" }, this.result.type), renderGeometryTree(this.result.value, true)))));
4030
+ case "attachment":
4031
+ return (index.h("div", { class: "result-value-simple ltr-container" }, index.h("calcite-tree", { ...treeProps }, index.h("calcite-tree-item", { expanded: true, ...expandableTreeItemProps }, index.h("div", { class: "tree-item-label" }, this.result.type), renderDictionaryAsJsonTree(this.result.value, true)))));
4032
+ case "feature":
4033
+ case "dictionary":
4034
+ case "portal":
4035
+ return (index.h("div", { class: "result-value-simple ltr-container" }, index.h("calcite-tree", { ...treeProps }, index.h("calcite-tree-item", { expanded: true, ...expandableTreeItemProps }, index.h("div", { class: "tree-item-label" }, this.result.type), this.renderDictionaryTree(this.result.value, true)))));
4036
+ case "featureSet":
4037
+ return (index.h("div", { class: "result-value-table ltr-container" }, this.renderFeatureSetLabel(this.result), renderFeatureSetTable(this.result)));
4038
+ case "knowledgeGraph":
4039
+ return (index.h("div", { class: "result-value-simple ltr-container" }, index.h("span", { class: "value-type" }, this.result.type, ":\u00A0"), index.h("span", { class: "string-value" }, this.result.value.url)));
4040
+ default:
4041
+ return (index.h("div", { class: "result-value-simple flex-adjustable ltr-container" }, this._t9nStrings?.runscriptmessage));
4042
+ }
3947
4043
  }
3948
- }
3949
- renderArrayHeader(arcadeResult) {
3950
- const items = arcadeResult.value ?? [];
3951
- const leftoverCount = Math.max(items.length - MaxArrayItems, 0);
3952
- return (index.h(index.Fragment, null, index.h("span", null, `${arcadeResult.type}(${items.length ?? 0})`), leftoverCount > 0 ? (index.h("span", null, "\u00A0", arcadeDefaults.B(this._t9nStrings?.showingfirstitemsformat, {
3953
- count: MaxArrayItems.toString()
3954
- }))) : null));
3955
- }
3956
- renderArrayTree(items, subtree = false) {
3957
- return (index.h("calcite-tree", { slot: subtree ? "children" : undefined, ...treeProps }, items.map((value, key) => {
3958
- const arcadeValue = valueToArcadeResult(value);
3959
- return this.renderTreeItem(arcadeValue, key, !subtree);
3960
- })));
3961
- }
3962
- renderGeometryTree(value, subtree = false) {
3963
- return (index.h("calcite-tree", { slot: subtree ? "children" : undefined, ...treeProps }, index.h("calcite-tree-item", null, index.h("div", { class: "tree-item-label" }, this.renderDictionaryProperty("type"), value.type)), index.h("calcite-tree-item", null, index.h("div", { class: "tree-item-label" }, this.renderDictionaryProperty("value"), index.h("span", { class: "string-value" }, jsonFormat(value.toJSON()))))));
3964
- }
3965
- renderDictionaryAsJsonTree(value, subtree = false) {
3966
- return (index.h("calcite-tree", { slot: subtree ? "children" : undefined, ...treeProps }, index.h("calcite-tree-item", { class: "string-value" }, jsonFormat(value.castAsJson()))));
3967
- }
3968
- renderDictionaryTree(value, subtree = false) {
3969
- const geometry = value.geometry?.();
3970
- return (index.h("calcite-tree", { slot: subtree ? "children" : undefined, ...treeProps }, value.keys().map((key) => {
3971
- const arcadeValue = valueToArcadeResult(value.field(key));
3972
- return this.renderTreeItem(arcadeValue, key);
3973
- }), geometry ? this.renderTreeItem({ type: "geometry", value: geometry }, "geometry") : null));
3974
- }
3975
- renderTreeItem(arcadeResult, key, expanded = false) {
3976
- switch (arcadeResult.type) {
3977
- case "null":
3978
- case "unknown":
3979
- case "text":
3980
- case "number":
3981
- case "date":
3982
- case "dateOnly":
3983
- case "time":
3984
- case "boolean":
3985
- return (index.h("calcite-tree-item", null, index.h("div", { class: "tree-item-label" }, this.renderDictionaryProperty(key), this.renderSimpleValue(arcadeResult))));
3986
- case "array": {
4044
+ renderArrayHeader(arcadeResult) {
3987
4045
  const items = arcadeResult.value ?? [];
3988
- const firstItems = items.slice(0, MaxArrayItems);
3989
- return (index.h("calcite-tree-item", { expanded: expanded, ...expandableTreeItemProps }, index.h("div", { class: "tree-item-label" }, this.renderDictionaryProperty(key), this.renderArrayHeader(arcadeResult)), this.renderArrayTree(firstItems, true)));
3990
- }
3991
- case "geometry":
3992
- return (index.h("calcite-tree-item", { expanded: expanded, ...expandableTreeItemProps }, index.h("div", { class: "tree-item-label" }, this.renderDictionaryProperty(key), index.h("span", null, arcadeResult.type)), this.renderGeometryTree(arcadeResult.value, true)));
3993
- case "attachment":
3994
- return (index.h("calcite-tree-item", { expanded: expanded, ...expandableTreeItemProps }, index.h("div", { class: "tree-item-label" }, this.renderDictionaryProperty(key), index.h("span", null, arcadeResult.type)), this.renderDictionaryAsJsonTree(arcadeResult.value, true)));
3995
- case "feature":
3996
- case "dictionary":
3997
- case "portal":
3998
- return (index.h("calcite-tree-item", { expanded: expanded, ...expandableTreeItemProps }, index.h("div", { class: "tree-item-label" }, this.renderDictionaryProperty(key), index.h("span", null, arcadeResult.type)), this.renderDictionaryTree(arcadeResult.value, true)));
3999
- default:
4000
- return null;
4046
+ const leftoverCount = Math.max(items.length - MaxArrayItems, 0);
4047
+ return (index.h(index.Fragment, null, index.h("span", null, `${arcadeResult.type}(${items.length ?? 0})`), leftoverCount > 0 ? (index.h("span", null, "\u00A0", arcadeDefaults.K(this._t9nStrings?.showingfirstitemsformat, {
4048
+ count: MaxArrayItems.toString()
4049
+ }))) : null));
4001
4050
  }
4002
- }
4003
- renderFeatureSetLabel(arcadeResult) {
4004
- return (index.h("div", { class: "value-type" }, index.h("span", null, arcadeResult.type, ":"), arcadeResult.features.length >= BatchSize ? (index.h("span", null, "\u00A0", arcadeDefaults.B(this._t9nStrings?.showingfirstitemsformat, {
4005
- count: BatchSize.toString()
4006
- }))) : null));
4007
- }
4008
- renderFeatureSetTable(arcadeResult) {
4009
- const fields = arcadeDefaults.supportedFields(arcadeResult.value.fields);
4010
- return (index.h("table", null, index.h("thead", null, index.h("tr", null, fields.map((field) => (index.h("th", null, field.name))))), index.h("tbody", null, arcadeResult.features.map((feature) => {
4011
- return (index.h("tr", null, fields.map((field) => {
4012
- try {
4013
- const arcadeResult = valueToArcadeResult(feature.field(field.name));
4014
- return index.h("td", null, this.renderSimpleValue(arcadeResult));
4015
- }
4016
- catch (e) {
4017
- return index.h("td", null);
4051
+ renderArrayTree(items, subtree = false) {
4052
+ return (index.h("calcite-tree", { slot: subtree ? "children" : undefined, ...treeProps }, items.map((value, key) => {
4053
+ const arcadeValue = valueToArcadeResult(value);
4054
+ return this.renderTreeItem(arcadeValue, key, !subtree);
4055
+ })));
4056
+ }
4057
+ renderDictionaryTree(value, subtree = false) {
4058
+ const geometry = value.geometry?.();
4059
+ return (index.h("calcite-tree", { slot: subtree ? "children" : undefined, ...treeProps }, value.keys().map((key) => {
4060
+ const arcadeValue = valueToArcadeResult(value.field(key));
4061
+ return this.renderTreeItem(arcadeValue, key);
4062
+ }), geometry ? this.renderTreeItem({ type: "geometry", value: geometry }, "geometry") : null));
4063
+ }
4064
+ renderTreeItem(arcadeResult, key, expanded = false) {
4065
+ switch (arcadeResult.type) {
4066
+ case "null":
4067
+ case "unknown":
4068
+ case "text":
4069
+ case "number":
4070
+ case "date":
4071
+ case "dateOnly":
4072
+ case "time":
4073
+ case "boolean":
4074
+ return (index.h("calcite-tree-item", null, index.h("div", { class: "tree-item-label" }, renderDictionaryProperty(key), renderSimpleValue(arcadeResult))));
4075
+ case "array": {
4076
+ const items = arcadeResult.value ?? [];
4077
+ const firstItems = items.slice(0, MaxArrayItems);
4078
+ return (index.h("calcite-tree-item", { expanded: expanded, ...expandableTreeItemProps }, index.h("div", { class: "tree-item-label" }, renderDictionaryProperty(key), this.renderArrayHeader(arcadeResult)), this.renderArrayTree(firstItems, true)));
4079
+ }
4080
+ case "geometry":
4081
+ return (index.h("calcite-tree-item", { expanded: expanded, ...expandableTreeItemProps }, index.h("div", { class: "tree-item-label" }, renderDictionaryProperty(key), index.h("span", null, arcadeResult.type)), renderGeometryTree(arcadeResult.value, true)));
4082
+ case "attachment":
4083
+ return (index.h("calcite-tree-item", { expanded: expanded, ...expandableTreeItemProps }, index.h("div", { class: "tree-item-label" }, renderDictionaryProperty(key), index.h("span", null, arcadeResult.type)), renderDictionaryAsJsonTree(arcadeResult.value, true)));
4084
+ case "feature":
4085
+ case "dictionary":
4086
+ case "portal":
4087
+ return (index.h("calcite-tree-item", { expanded: expanded, ...expandableTreeItemProps }, index.h("div", { class: "tree-item-label" }, renderDictionaryProperty(key), index.h("span", null, arcadeResult.type)), this.renderDictionaryTree(arcadeResult.value, true)));
4088
+ default:
4089
+ return null;
4018
4090
  }
4019
- })));
4020
- }))));
4021
- }
4022
- render() {
4023
- return (index.h(index.Host, null, index.h("header", { class: "flex-row" }, index.h("calcite-action-bar", { class: "flex-adjustable", layout: "horizontal", scale: "s", expanded: true, "expand-disabled": true }, index.h("calcite-action-group", { layout: "horizontal", scale: "s" }, index.h("calcite-action", { active: this.openedResultPanel === "output", text: this._t9nStrings?.output ?? "Output", "text-enabled": true, scale: "s", icon: "list-show-all", iconFlipRtl: true, onClick: this._switchResultPanel, "data-panel-name": "output" }), index.h("calcite-action", { active: this.openedResultPanel === "console", text: this._t9nStrings?.console ?? "Console", "text-enabled": true, scale: "s", icon: "console", iconFlipRtl: true, onClick: this._switchResultPanel, "data-panel-name": "console" }), index.h("calcite-action", { active: this.openedResultPanel === "log", text: this._t9nStrings?.log ?? "Log", "text-enabled": true, scale: "s", icon: "list", iconFlipRtl: true, onClick: this._switchResultPanel, "data-panel-name": "log" }))), index.h("calcite-action", { scale: "s", icon: "x", text: this._t9nStrings?.close ?? "", onClick: this._emitClose })), index.h("article", { class: "flex-adjustable" }, this.loading ? (index.h("calcite-loader", { scale: "s", type: "indeterminate", label: "" })) : (index.h("div", { class: "flex-column y-scrollable-container" }, this.renderOutputPanel(), this.renderConsolePanel(), this.renderLogPanel())))));
4024
- }
4025
- static get assetsDirs() { return ["assets"]; }
4026
- get _hostElt() { return index.getElement(this); }
4091
+ }
4092
+ renderFeatureSetLabel(arcadeResult) {
4093
+ return (index.h("div", { class: "value-type" }, index.h("span", null, arcadeResult.type, ":"), arcadeResult.features.length >= BatchSize ? (index.h("span", null, "\u00A0", arcadeDefaults.K(this._t9nStrings?.showingfirstitemsformat, {
4094
+ count: BatchSize.toString()
4095
+ }))) : null));
4096
+ }
4097
+ render() {
4098
+ return (index.h(index.Host, null, index.h("header", { class: "flex-row" }, index.h("calcite-action-bar", { class: "flex-adjustable", layout: "horizontal", scale: "s", expanded: true, "expand-disabled": true }, index.h("calcite-action-group", { scale: "s" }, index.h("calcite-action", { active: this.openedResultPanel === "output", text: this._t9nStrings?.output ?? "Output", "text-enabled": true, scale: "s", icon: "list-show-all", iconFlipRtl: true, onClick: this._switchResultPanel, "data-panel-name": "output" }), index.h("calcite-action", { active: this.openedResultPanel === "console", text: this._t9nStrings?.console ?? "Console", "text-enabled": true, scale: "s", icon: "console", iconFlipRtl: true, onClick: this._switchResultPanel, "data-panel-name": "console" }), index.h("calcite-action", { active: this.openedResultPanel === "log", text: this._t9nStrings?.log ?? "Log", "text-enabled": true, scale: "s", icon: "list", iconFlipRtl: true, onClick: this._switchResultPanel, "data-panel-name": "log" }))), index.h("calcite-action", { scale: "s", icon: "x", text: this._t9nStrings?.close ?? "", onClick: this._emitClose })), index.h("article", { class: "flex-adjustable" }, this.loading ? (index.h("calcite-loader", { scale: "s", type: "indeterminate", label: "" })) : (index.h("div", { class: "flex-column y-scrollable-container" }, this.renderOutputPanel(), this.renderConsolePanel(), this.renderLogPanel())))));
4099
+ }
4100
+ static get assetsDirs() { return ["assets"]; }
4101
+ get _hostElement() { return index.getElement(this); }
4027
4102
  };
4028
4103
  ArcgisArcadeResults.style = arcadeResultsCss;
4029
4104
 
4030
4105
  function isSuggestionGroups(item) {
4031
- if (!Array.isArray(item)) {
4032
- return false;
4033
- }
4034
- if (!item.length) {
4035
- return false;
4036
- }
4037
- return Array.isArray(item[0]?.suggestions);
4106
+ if (!Array.isArray(item)) {
4107
+ return false;
4108
+ }
4109
+ if (!item.length) {
4110
+ return false;
4111
+ }
4112
+ return Array.isArray(item[0].suggestions);
4038
4113
  }
4039
4114
 
4040
- const arcadeSuggestionsCss = ":host{background-color:var(--calcite-ui-foreground-1)}:host .notice-container{margin:var(--calcite-spacing-quarter);padding:var(--calcite-spacing-half);background-color:var(--calcite-ui-foreground-1)}:host .sticky{position:sticky;top:0px;z-index:10}:host calcite-flow{height:100%}:host calcite-block p:first-of-type{margin-top:0}:host calcite-block code{font-family:var(--calcite-code-family)}:host calcite-block pre{direction:ltr;overflow-x:auto;background-color:var(--calcite-ui-foreground-2);padding:var(--calcite-spacing-half)}:host calcite-block pre code{font-size:var(--calcite-font-size--2)}";
4115
+ const arcadeSuggestionsCss = ":host{background-color:var(--calcite-color-foreground-1)}:host .notice-container{margin:var(--calcite-spacing-quarter);padding:var(--calcite-spacing-half);background-color:var(--calcite-color-foreground-1)}:host .sticky{position:sticky;top:0px;z-index:10}:host calcite-flow{height:100%}:host calcite-block p:first-of-type{margin-top:0}:host calcite-block code{font-family:var(--calcite-code-family)}:host calcite-block pre{direction:ltr;overflow-x:auto;background-color:var(--calcite-color-foreground-2);padding:var(--calcite-spacing-half)}:host calcite-block pre code{font-size:var(--calcite-font-size--2)}";
4041
4116
 
4042
4117
  const ArcgisArcadeSuggestions = class {
4043
- constructor(hostRef) {
4044
- index.registerInstance(this, hostRef);
4045
- this.close = index.createEvent(this, "close", 3);
4046
- this.itemSelected = index.createEvent(this, "itemSelected", 3);
4047
- // @ts-expect-error
4048
- this._updateFilterValue = (e) => (this._filterValue = e.target?.["value"] ?? "");
4049
- this._emitItemSelected = (e) => {
4050
- // @ts-expect-error
4051
- const item = e.target?.["data-item"];
4052
- if (!item) {
4053
- return;
4054
- }
4055
- const keyEvent = e;
4056
- if (!keyEvent.key || keyEvent.key === "Enter") {
4057
- e.preventDefault();
4058
- this.itemSelected.emit(item.code);
4059
- }
4060
- };
4061
- this._showSuggestionDetail = (e) => {
4062
- // @ts-expect-error
4063
- const item = e.target?.["data-item"];
4064
- if (!item) {
4065
- return;
4066
- }
4067
- e.stopPropagation();
4068
- this._selectedSuggestion = item;
4069
- };
4070
- this._emitClose = () => this.close.emit();
4071
- this._beforeBack = async () => (this._selectedSuggestion = undefined);
4072
- this._locale = "";
4073
- this._t9nStrings = undefined;
4074
- this._selectedSuggestion = undefined;
4075
- this._filterValue = "";
4076
- this._colorizeStyle = "";
4077
- this.suggestions = undefined;
4078
- }
4079
- suggestionsPropChanged() {
4080
- this._selectedSuggestion = undefined;
4081
- }
4082
- //#endregion
4083
- // #region Component lifecycle events
4084
- async componentWillLoad() {
4085
- this._colorizeStyle = generateColorizeStyles();
4086
- this._themeChangedListner = onColorizeThemeChanged(() => (this._colorizeStyle = generateColorizeStyles()));
4087
- await arcadeDefaults.$(this, index.getAssetPath("./assets"));
4088
- }
4089
- disconnectedCallback() {
4090
- this._flowObserver?.disconnect();
4091
- this._themeChangedListner?.dispose();
4092
- arcadeDefaults.F(this);
4093
- }
4094
- // #endregion
4095
- //#region Private Methods
4096
- flowFocusHandler(ref) {
4097
- // When a flow is removed from the document then a null ref will be passed in
4098
- if (!ref) {
4099
- this._flowObserver?.disconnect();
4100
- this._flowObserver = undefined;
4101
- return;
4118
+ constructor(hostRef) {
4119
+ index.registerInstance(this, hostRef);
4120
+ this.close = index.createEvent(this, "close", 3);
4121
+ this.itemSelected = index.createEvent(this, "itemSelected", 3);
4122
+ // @ts-expect-error
4123
+ this._updateFilterValue = (e) => (this._filterValue = e.target?.value ?? "");
4124
+ this._emitItemSelected = (e) => {
4125
+ // @ts-expect-error
4126
+ const item = e.target?.["data-item"];
4127
+ if (!item) {
4128
+ return;
4129
+ }
4130
+ const keyEvent = e;
4131
+ if (!keyEvent.key || keyEvent.key === "Enter") {
4132
+ e.preventDefault();
4133
+ this.itemSelected.emit(item.code);
4134
+ }
4135
+ };
4136
+ this._showSuggestionDetail = (e) => {
4137
+ // @ts-expect-error
4138
+ const item = e.target?.["data-item"];
4139
+ if (!item) {
4140
+ return;
4141
+ }
4142
+ e.stopPropagation();
4143
+ this._selectedSuggestion = item;
4144
+ };
4145
+ this._emitClose = () => this.close.emit();
4146
+ this._beforeBack = async () => (this._selectedSuggestion = undefined);
4147
+ this._lang = "";
4148
+ this._t9nLocale = "";
4149
+ this._t9nStrings = undefined;
4150
+ this._selectedSuggestion = undefined;
4151
+ this._filterValue = "";
4152
+ this._colorizeStyle = "";
4153
+ this.suggestions = undefined;
4102
4154
  }
4103
- if (this._flowObserver) {
4104
- return;
4155
+ suggestionsPropChanged() {
4156
+ this._selectedSuggestion = undefined;
4105
4157
  }
4106
- // Observer panel added/removed and also observe the flow id
4107
- // When switching between flow the same reference is reused
4108
- this._flowObserver = new MutationObserver(() => {
4109
- // Get the last panel and try to set focus on the input element
4110
- arcadeDefaults.O(ref.querySelector("calcite-flow-item:last-child"), "calcite-input");
4111
- });
4112
- this._flowObserver.observe(ref, { attributes: true, attributeFilter: ["id"], childList: true });
4113
- }
4114
- //#endregion
4115
- //#region Renderers
4116
- renderSuggestionGroups() {
4117
- if (this.suggestions === undefined) {
4118
- return null;
4158
+ //#endregion
4159
+ // #region Component lifecycle events
4160
+ async componentWillLoad() {
4161
+ this._colorizeStyle = generateColorizeStyles();
4162
+ this._themeChangedListner = onColorizeThemeChanged(() => (this._colorizeStyle = generateColorizeStyles()));
4163
+ await arcadeDefaults.B(this, index.getAssetPath("./assets"));
4119
4164
  }
4120
- if (isSuggestionGroups(this.suggestions)) {
4121
- return this.suggestions.map((suggestionGroup) => {
4122
- return (index.h("calcite-list-item-group", { heading: suggestionGroup.label }, this.renderSuggestionListItems(suggestionGroup.suggestions)));
4123
- });
4165
+ disconnectedCallback() {
4166
+ this._flowObserver?.disconnect();
4167
+ this._themeChangedListner?.dispose();
4168
+ arcadeDefaults.H(this);
4124
4169
  }
4125
- return this.renderSuggestionListItems(this.suggestions);
4126
- }
4127
- renderSuggestionListItems(suggestions) {
4128
- suggestions = arcadeDefaults.filterCollection(suggestions, "label", this._filterValue);
4129
- if (!suggestions.length) {
4130
- return index.h("div", { class: "notice-container" }, this._t9nStrings?.noitems ?? "No item");
4170
+ // #endregion
4171
+ //#region Private Methods
4172
+ flowFocusHandler(ref) {
4173
+ // When a flow is removed from the document then a null ref will be passed in
4174
+ if (!ref) {
4175
+ this._flowObserver?.disconnect();
4176
+ this._flowObserver = undefined;
4177
+ return;
4178
+ }
4179
+ if (this._flowObserver) {
4180
+ return;
4181
+ }
4182
+ // Observer panel added/removed and also observe the flow id
4183
+ // When switching between flow the same reference is reused
4184
+ this._flowObserver = new MutationObserver(() => {
4185
+ // Get the last panel and try to set focus on the input element
4186
+ arcadeDefaults.F(ref.querySelector("calcite-flow-item:last-child"), "calcite-input");
4187
+ });
4188
+ this._flowObserver.observe(ref, { attributes: true, attributeFilter: ["id"], childList: true });
4131
4189
  }
4132
- return suggestions.map((suggestion) => (index.h("calcite-list-item", { label: suggestion.label, description: suggestion.description, onCalciteListItemSelect: this._emitItemSelected, onKeyPress: this._emitItemSelected, "data-item": suggestion }, index.h("calcite-action", { slot: "actions-end", text: this._t9nStrings?.expand ?? "", scale: "s", icon: "chevron-right", iconFlipRtl: true, onClick: this._showSuggestionDetail, "data-item": suggestion }))));
4133
- }
4134
- renderSuggestionFlowItem() {
4135
- const suggestion = this._selectedSuggestion;
4136
- if (!suggestion) {
4137
- return null;
4190
+ //#endregion
4191
+ //#region Renderers
4192
+ renderSuggestionGroups() {
4193
+ if (this.suggestions === undefined) {
4194
+ return null;
4195
+ }
4196
+ if (isSuggestionGroups(this.suggestions)) {
4197
+ return this.suggestions.map((suggestionGroup) => (index.h("calcite-list-item-group", { heading: suggestionGroup.label }, this.renderSuggestionListItems(suggestionGroup.suggestions))));
4198
+ }
4199
+ return this.renderSuggestionListItems(this.suggestions);
4138
4200
  }
4139
- return (index.h("calcite-flow-item", { heading: this._t9nStrings?.suggestions, closable: true, onCalciteFlowItemClose: this._emitClose, beforeBack: this._beforeBack }, index.h("calcite-button", { width: "half", slot: "footer-actions", appearance: "outline", kind: "brand", "icon-start": "code", scale: "s", onClick: this._emitItemSelected, ref: (e) => e?.setFocus(), "data-item": suggestion }, this._t9nStrings?.insert), index.h("calcite-block", { open: true, heading: suggestion.label, description: suggestion.description }, index.h("div", { innerHTML: convertMarkdownString(suggestion.documentation) }), index.h("pre", null, index.h("code", { ref: async (e) => await colorizeCodeElement(e, suggestion.code) })))));
4140
- }
4141
- render() {
4142
- return (index.h(index.Host, null, index.h("style", null, this._colorizeStyle), index.h("calcite-flow", { ref: (ref) => this.flowFocusHandler(ref) }, index.h("calcite-flow-item", { heading: this._t9nStrings?.suggestions, closable: true, onCalciteFlowItemClose: this._emitClose }, index.h(StickyFilterInput, { filterValue: this._filterValue, onCalciteInputInput: this._updateFilterValue }), index.h("calcite-list", null, this.renderSuggestionGroups())), this.renderSuggestionFlowItem())));
4143
- }
4144
- static get assetsDirs() { return ["assets"]; }
4145
- get _hostElt() { return index.getElement(this); }
4146
- static get watchers() { return {
4147
- "suggestions": ["suggestionsPropChanged"]
4148
- }; }
4201
+ renderSuggestionListItems(suggestions) {
4202
+ suggestions = arcadeDefaults.filterCollection(suggestions, "label", this._filterValue);
4203
+ if (!suggestions.length) {
4204
+ return index.h("div", { class: "notice-container" }, this._t9nStrings?.noitems ?? "No item");
4205
+ }
4206
+ return suggestions.map((suggestion) => (index.h("calcite-list-item", { label: suggestion.label, description: suggestion.description, onCalciteListItemSelect: this._emitItemSelected, onKeyPress: this._emitItemSelected, "data-item": suggestion }, index.h("calcite-action", { slot: "actions-end", text: this._t9nStrings?.expand ?? "", scale: "s", icon: "chevron-right", iconFlipRtl: true, onClick: this._showSuggestionDetail, "data-item": suggestion }))));
4207
+ }
4208
+ renderSuggestionFlowItem() {
4209
+ const suggestion = this._selectedSuggestion;
4210
+ if (!suggestion) {
4211
+ return null;
4212
+ }
4213
+ return (index.h("calcite-flow-item", { heading: this._t9nStrings?.suggestions, closable: true, onCalciteFlowItemClose: this._emitClose, beforeBack: this._beforeBack }, index.h("calcite-button", { width: "half", slot: "footer", appearance: "outline", kind: "brand", "icon-start": "code", scale: "s", onClick: this._emitItemSelected, ref: (e) => void e?.setFocus(), "data-item": suggestion }, this._t9nStrings?.insert), index.h("calcite-block", { open: true, heading: suggestion.label, description: suggestion.description }, index.h("div", { innerHTML: convertMarkdownString(suggestion.documentation) }), index.h("pre", null, index.h("code", { ref: (e) => e === undefined ? undefined : void colorizeCodeElement(e, suggestion.code).catch(console.error) })))));
4214
+ }
4215
+ render() {
4216
+ return (index.h(index.Host, null, index.h("style", null, this._colorizeStyle), index.h("calcite-flow", { ref: (ref) => this.flowFocusHandler(ref) }, index.h("calcite-flow-item", { heading: this._t9nStrings?.suggestions, closable: true, onCalciteFlowItemClose: this._emitClose }, index.h(StickyFilterInput, { filterValue: this._filterValue, onCalciteInputInput: this._updateFilterValue }), index.h("calcite-list", null, this.renderSuggestionGroups())), this.renderSuggestionFlowItem())));
4217
+ }
4218
+ static get assetsDirs() { return ["assets"]; }
4219
+ get _hostElement() { return index.getElement(this); }
4220
+ static get watchers() { return {
4221
+ "suggestions": ["suggestionsPropChanged"]
4222
+ }; }
4149
4223
  };
4150
4224
  ArcgisArcadeSuggestions.style = arcadeSuggestionsCss;
4151
4225
 
4152
- const arcadeVariablesCss = ":host{background-color:var(--calcite-ui-foreground-1)}:host .notice-container{margin:var(--calcite-spacing-quarter);padding:var(--calcite-spacing-half);background-color:var(--calcite-ui-foreground-1)}:host .sticky{position:sticky;top:0px;z-index:10}:host calcite-flow{height:100%}";
4226
+ const arcadeVariablesCss = ":host{background-color:var(--calcite-color-foreground-1)}:host .notice-container{margin:var(--calcite-spacing-quarter);padding:var(--calcite-spacing-half);background-color:var(--calcite-color-foreground-1)}:host .sticky{position:sticky;top:0px;z-index:10}:host calcite-flow{height:100%}";
4153
4227
 
4154
- const ArcgisArcadeVariables = class {
4155
- constructor(hostRef) {
4156
- index.registerInstance(this, hostRef);
4157
- this.close = index.createEvent(this, "close", 3);
4158
- this.itemSelected = index.createEvent(this, "itemSelected", 3);
4159
- // @ts-expect-error
4160
- this._updateFilterValue = (e) => (this._filterValue = e.target?.["value"] ?? "");
4161
- this._beforeBack = async () => {
4162
- this.removeLastPanelRenderer();
4163
- this._filterValue = "";
4164
- };
4165
- this._emitClose = () => this.close.emit();
4166
- this._backToTop = () => (this._flowItemRenderers = []);
4167
- this._emitItemSelected = (e) => {
4168
- // @ts-expect-error
4169
- const variable = e.target?.["data-item"];
4170
- if (!variable || variable.nonInteractive) {
4171
- return;
4172
- }
4173
- const keyEvent = e;
4174
- if (!keyEvent.key || keyEvent.key === "Enter") {
4175
- e.preventDefault();
4176
- this.itemSelected.emit(variable.snippet);
4177
- }
4178
- };
4179
- this._stopEnterPropagation = (e) => {
4180
- if (e.key === "Enter") {
4228
+ function stopEnterPropagation(e) {
4229
+ if (e.key === "Enter") {
4181
4230
  e.stopPropagation();
4182
- }
4183
- };
4184
- this._showCollectionPanel = (e) => {
4185
- // @ts-expect-error
4186
- const collectionVariable = e.target?.["data-item"];
4187
- if (!collectionVariable) {
4188
- return;
4189
- }
4190
- e.stopPropagation();
4191
- this.addPanelRenderer(this.collectionBasedVariableRenderer(collectionVariable));
4192
- };
4193
- this._locale = "";
4194
- this._t9nStrings = undefined;
4195
- this._mutationCounter = 1;
4196
- this._flowItemRenderers = [];
4197
- this._filterValue = "";
4198
- this.loading = false;
4199
- this.modelId = undefined;
4200
- }
4201
- modelIdPropChanged() {
4202
- this._flowItemRenderers = [];
4203
- }
4204
- //#endregion
4205
- // #region Component lifecycle events
4206
- async componentWillLoad() {
4207
- await arcadeDefaults.$(this, index.getAssetPath("./assets"));
4208
- }
4209
- disconnectedCallback() {
4210
- arcadeDefaults.F(this);
4211
- this._flowObserver?.disconnect();
4212
- }
4213
- // #endregion
4214
- //#region Private Methods
4215
- addPanelRenderer(panelRenderer) {
4216
- this._flowItemRenderers = [...this._flowItemRenderers, panelRenderer];
4217
- }
4218
- removeLastPanelRenderer() {
4219
- this._flowItemRenderers = this._flowItemRenderers.slice(0, -1);
4220
- }
4221
- flowFocusHandler(ref) {
4222
- // When a flow is removed from the document then a null ref will be passed in
4223
- if (!ref) {
4224
- this._flowObserver?.disconnect();
4225
- this._flowObserver = undefined;
4226
- return;
4227
4231
  }
4228
- if (this._flowObserver) {
4229
- return;
4232
+ }
4233
+ const ArcgisArcadeVariables = class {
4234
+ constructor(hostRef) {
4235
+ index.registerInstance(this, hostRef);
4236
+ this.close = index.createEvent(this, "close", 3);
4237
+ this.itemSelected = index.createEvent(this, "itemSelected", 3);
4238
+ this._updateFilterValue = (e) => (this._filterValue = e.target.value);
4239
+ this._beforeBack = async () => {
4240
+ this.removeLastPanelRenderer();
4241
+ this._filterValue = "";
4242
+ };
4243
+ this._emitClose = () => void this.close.emit();
4244
+ this._backToTop = () => void (this._flowItemRenderers = []);
4245
+ this._emitItemSelected = (e) => {
4246
+ const variable = e.target?.["data-item"];
4247
+ if (!variable || variable.nonInteractive) {
4248
+ return;
4249
+ }
4250
+ const keyEvent = e;
4251
+ if (!keyEvent.key || keyEvent.key === "Enter") {
4252
+ e.preventDefault();
4253
+ this.itemSelected.emit(variable.snippet);
4254
+ }
4255
+ };
4256
+ this._showCollectionPanel = (e) => {
4257
+ const collectionVariable = e.target?.["data-item"];
4258
+ if (!collectionVariable) {
4259
+ return;
4260
+ }
4261
+ e.stopPropagation();
4262
+ this.addPanelRenderer(this.collectionBasedVariableRenderer(collectionVariable));
4263
+ };
4264
+ this._lang = "";
4265
+ this._t9nLocale = "";
4266
+ this._t9nStrings = undefined;
4267
+ this._mutationCounter = 1;
4268
+ this._flowItemRenderers = [];
4269
+ this._filterValue = "";
4270
+ this.loading = false;
4271
+ this.modelId = undefined;
4230
4272
  }
4231
- // Observer panel added/removed and also observe the flow id
4232
- // When switching between flow the same reference is reused
4233
- this._flowObserver = new MutationObserver(() => {
4234
- // Get the last panel and try to set focus on the input element
4235
- arcadeDefaults.O(ref.querySelector("calcite-flow-item:last-child"), "calcite-input");
4236
- });
4237
- this._flowObserver.observe(ref, { attributes: true, attributeFilter: ["id"], childList: true });
4238
- }
4239
- //#endregion
4240
- //#region Renderers
4241
- collectionBasedVariableRenderer(collection, topPanel = false) {
4242
- // Returns a function to be added to the subpanel render collection
4243
- return () => {
4244
- if (!collection) {
4245
- return null;
4246
- }
4247
- // If the collection actually exists then two options:
4248
- // - the collection still need to be loaded
4249
- // - the collection is ready
4250
- let loading = this.loading;
4251
- if (!loading && !collection.loaded) {
4252
- // Request to load and update mutation counter when done
4253
- collection.loadSource().then(() => setTimeout(() => this._mutationCounter++));
4254
- loading = true;
4255
- }
4256
- return (index.h("calcite-flow-item", { heading: this._t9nStrings?.profilevariables, beforeBack: this._beforeBack, closable: true, onCalciteFlowItemClose: this._emitClose }, index.h("calcite-action", { slot: "header-actions-end", text: this._t9nStrings?.backtotop ?? "Back to top", scale: "m", hidden: topPanel, icon: "chevrons-left", iconFlipRtl: true, onClick: this._backToTop }), index.h(StickyFilterInput, { filterValue: this._filterValue, onCalciteInputInput: this._updateFilterValue }), loading ? (index.h("calcite-loader", { scale: "s", type: "indeterminate", label: this._t9nStrings?.loading ?? "Loading" })) : (index.h("calcite-list", null, this.renderEditorVariables(collection)))));
4257
- };
4258
- }
4259
- renderEditorVariables(collection) {
4260
- // Filter the variables. Skip group, we will filter the children later on.
4261
- const filterExpression = arcadeDefaults.z(this._filterValue);
4262
- const filteredVariables = collection.variables.filter((variable) => variable.passFilter(filterExpression));
4263
- if (!filteredVariables.length) {
4264
- return index.h("div", { class: "notice-container" }, this._t9nStrings?.noitems ?? "No item");
4265
- }
4266
- return filteredVariables.map((variable) => this.renderEditorVariable(variable));
4267
- }
4268
- renderEditorVariable(variable) {
4269
- switch (variable.type) {
4270
- case "group":
4271
- // Group is a collection but we represent it differently
4272
- return (index.h("calcite-list-item-group", { heading: variable.getLabel() }, this.renderEditorVariables(variable)));
4273
- default:
4274
- return (index.h("calcite-list-item", { label: variable.getLabel(), description: variable.getDescription(), onCalciteListItemSelect: this._emitItemSelected, onKeyPress: this._emitItemSelected, "data-item": variable }, variable.isCollection ? (index.h("calcite-action", { slot: "actions-end", text: this._t9nStrings?.expand ?? "", scale: "s", icon: "chevron-right", iconFlipRtl: true, onClick: this._showCollectionPanel, onKeyPress: this._stopEnterPropagation, "data-item": variable })) : null, variable.icon ? index.h("calcite-icon", { icon: variable.icon, scale: "s", slot: "content-start" }) : null));
4273
+ modelIdPropChanged() {
4274
+ this._flowItemRenderers = [];
4275
4275
  }
4276
- }
4277
- render() {
4278
- const profile = arcadeDefaults.arcadeDefaults.getEditorProfileForModel(this.modelId ?? "");
4279
- if (!this.loading && !profile?.variables.length) {
4280
- return (index.h("calcite-flow", null, index.h("calcite-flow-item", { heading: this._t9nStrings?.profilevariables, closable: true, onCalciteFlowItemClose: this._emitClose }, index.h("div", { class: "notice-container" }, this._t9nStrings?.noprofilevariablesmessage ?? ""))));
4276
+ //#endregion
4277
+ // #region Component lifecycle events
4278
+ async componentWillLoad() {
4279
+ await arcadeDefaults.B(this, index.getAssetPath("./assets"));
4281
4280
  }
4282
- return (index.h("calcite-flow", { ref: (ref) => this.flowFocusHandler(ref) }, this.collectionBasedVariableRenderer(profile, true)(), this._flowItemRenderers.map((renderer) => renderer())));
4283
- }
4284
- static get assetsDirs() { return ["assets"]; }
4285
- get _hostElt() { return index.getElement(this); }
4286
- static get watchers() { return {
4287
- "modelId": ["modelIdPropChanged"]
4288
- }; }
4281
+ disconnectedCallback() {
4282
+ arcadeDefaults.H(this);
4283
+ this._flowObserver?.disconnect();
4284
+ }
4285
+ // #endregion
4286
+ //#region Private Methods
4287
+ addPanelRenderer(panelRenderer) {
4288
+ this._flowItemRenderers = [...this._flowItemRenderers, panelRenderer];
4289
+ }
4290
+ removeLastPanelRenderer() {
4291
+ this._flowItemRenderers = this._flowItemRenderers.slice(0, -1);
4292
+ }
4293
+ flowFocusHandler(ref) {
4294
+ // When a flow is removed from the document then a null ref will be passed in
4295
+ if (!ref) {
4296
+ this._flowObserver?.disconnect();
4297
+ this._flowObserver = undefined;
4298
+ return;
4299
+ }
4300
+ if (this._flowObserver) {
4301
+ return;
4302
+ }
4303
+ // Observer panel added/removed and also observe the flow id
4304
+ // When switching between flow the same reference is reused
4305
+ this._flowObserver = new MutationObserver(() => {
4306
+ // Get the last panel and try to set focus on the input element
4307
+ arcadeDefaults.F(ref.querySelector("calcite-flow-item:last-child"), "calcite-input");
4308
+ });
4309
+ this._flowObserver.observe(ref, { attributes: true, attributeFilter: ["id"], childList: true });
4310
+ }
4311
+ //#endregion
4312
+ //#region Renderers
4313
+ collectionBasedVariableRenderer(collection, topPanel = false) {
4314
+ // Returns a function to be added to the subpanel render collection
4315
+ return () => {
4316
+ if (!collection) {
4317
+ return null;
4318
+ }
4319
+ // If the collection actually exists then two options:
4320
+ // - the collection still need to be loaded
4321
+ // - the collection is ready
4322
+ let loading = this.loading;
4323
+ if (!loading && !collection.loaded) {
4324
+ // Request to load and update mutation counter when done
4325
+ collection
4326
+ .loadSource()
4327
+ .then(() => setTimeout(() => {
4328
+ this._mutationCounter += 1;
4329
+ }))
4330
+ .catch(() => {
4331
+ console.error("Error loading collection");
4332
+ loading = false;
4333
+ });
4334
+ loading = true;
4335
+ }
4336
+ return (index.h("calcite-flow-item", { heading: this._t9nStrings?.profilevariables, description: collection.breadcrumb, beforeBack: this._beforeBack, closable: true, onCalciteFlowItemClose: this._emitClose }, index.h("calcite-action", { slot: "header-actions-end", text: this._t9nStrings?.backtotop ?? "Back to top", scale: "m", hidden: topPanel, icon: "chevrons-left", iconFlipRtl: true, onClick: this._backToTop }), index.h(StickyFilterInput, { filterValue: this._filterValue, onCalciteInputInput: this._updateFilterValue }), loading ? (index.h("calcite-loader", { scale: "s", type: "indeterminate", label: this._t9nStrings?.loading ?? "Loading" })) : (index.h("calcite-list", null, this.renderEditorVariables(collection)))));
4337
+ };
4338
+ }
4339
+ renderEditorVariables(collection) {
4340
+ // Filter the variables. Skip group, we will filter the children later on.
4341
+ const filterExpression = arcadeDefaults.D(this._filterValue);
4342
+ const filteredVariables = collection.variables.filter((variable) => variable.passFilter(filterExpression));
4343
+ if (!filteredVariables.length) {
4344
+ return index.h("div", { class: "notice-container" }, this._t9nStrings?.noitems ?? "No item");
4345
+ }
4346
+ return filteredVariables.map((variable) => this.renderEditorVariable(variable));
4347
+ }
4348
+ renderEditorVariable(variable) {
4349
+ switch (variable.type) {
4350
+ case "group":
4351
+ // Group is a collection but we represent it differently
4352
+ return (index.h("calcite-list-item-group", { heading: variable.getLabel() }, this.renderEditorVariables(variable)));
4353
+ default:
4354
+ return (index.h("calcite-list-item", { label: variable.getLabel(), description: variable.getDescription(), onCalciteListItemSelect: this._emitItemSelected, onKeyPress: this._emitItemSelected, "data-item": variable }, variable.isCollection ? (index.h("calcite-action", { slot: "actions-end", text: this._t9nStrings?.expand ?? "", scale: "s", icon: "chevron-right", iconFlipRtl: true, onClick: this._showCollectionPanel, onKeyPress: stopEnterPropagation, "data-item": variable })) : null, variable.icon ? index.h("calcite-icon", { icon: variable.icon, scale: "s", slot: "content-start" }) : null));
4355
+ }
4356
+ }
4357
+ render() {
4358
+ const profile = arcadeDefaults.arcadeDefaults.getEditorProfileForModel(this.modelId ?? "");
4359
+ if (!this.loading && !profile?.variables.length) {
4360
+ return (index.h("calcite-flow", null, index.h("calcite-flow-item", { heading: this._t9nStrings?.profilevariables, closable: true, onCalciteFlowItemClose: this._emitClose }, index.h("div", { class: "notice-container" }, this._t9nStrings?.noprofilevariablesmessage ?? ""))));
4361
+ }
4362
+ return (index.h("calcite-flow", { ref: (ref) => this.flowFocusHandler(ref) }, this.collectionBasedVariableRenderer(profile, true)(), this._flowItemRenderers.map((renderer) => renderer())));
4363
+ }
4364
+ static get assetsDirs() { return ["assets"]; }
4365
+ get _hostElement() { return index.getElement(this); }
4366
+ static get watchers() { return {
4367
+ "modelId": ["modelIdPropChanged"]
4368
+ }; }
4289
4369
  };
4290
4370
  ArcgisArcadeVariables.style = arcadeVariablesCss;
4291
4371
 
4292
- const codeEditorCss = "@charset \"UTF-8\";.monaco-action-bar{white-space:nowrap;height:100%}.monaco-action-bar .actions-container{display:flex;margin:0 auto;padding:0;height:100%;width:100%;align-items:center}.monaco-action-bar.vertical .actions-container{display:inline-block}.monaco-action-bar .action-item{display:block;align-items:center;justify-content:center;cursor:pointer;position:relative}.monaco-action-bar .action-item.disabled{cursor:default}.monaco-action-bar .action-item .codicon,.monaco-action-bar .action-item .icon{display:block}.monaco-action-bar .action-item .codicon{display:flex;align-items:center;width:16px;height:16px}.monaco-action-bar .action-label{display:flex;font-size:11px;padding:3px;border-radius:5px}.monaco-action-bar .action-item.disabled .action-label,.monaco-action-bar .action-item.disabled .action-label:before,.monaco-action-bar .action-item.disabled .action-label:hover{opacity:0.6}.monaco-action-bar.vertical{text-align:left}.monaco-action-bar.vertical .action-item{display:block}.monaco-action-bar.vertical .action-label.separator{display:block;border-bottom:1px solid #bbb;padding-top:1px;margin-left:0.8em;margin-right:0.8em}.monaco-action-bar .action-item .action-label.separator{width:1px;height:16px;margin:5px 4px !important;cursor:default;min-width:1px;padding:0;background-color:#bbb}.secondary-actions .monaco-action-bar .action-label{margin-left:6px}.monaco-action-bar .action-item.select-container{overflow:hidden;flex:1;max-width:170px;min-width:60px;display:flex;align-items:center;justify-content:center;margin-right:10px}.monaco-action-bar .action-item.action-dropdown-item{display:flex}.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator{display:flex;align-items:center;cursor:default}.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator>div{width:1px}.monaco-aria-container{position:absolute;left:-999em}.monaco-text-button{box-sizing:border-box;display:flex;width:100%;padding:4px;border-radius:2px;text-align:center;cursor:pointer;justify-content:center;align-items:center;border:1px solid var(--vscode-button-border, transparent);line-height:18px}.monaco-text-button:focus{outline-offset:2px !important}.monaco-text-button:hover{text-decoration:none !important}.monaco-button.disabled,.monaco-button.disabled:focus{opacity:0.4 !important;cursor:default}.monaco-text-button .codicon{margin:0 0.2em;color:inherit !important}.monaco-text-button.monaco-text-button-with-short-label{flex-direction:row;flex-wrap:wrap;padding:0 4px;overflow:hidden;height:28px}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label{flex-basis:100%}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label-short{flex-grow:1;width:0;overflow:hidden}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label,.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label-short{display:flex;justify-content:center;align-items:center;font-weight:400;font-style:inherit;padding:4px 0}.monaco-button-dropdown{display:flex;cursor:pointer}.monaco-button-dropdown.disabled{cursor:default}.monaco-button-dropdown>.monaco-button:focus{outline-offset:-1px !important}.monaco-button-dropdown.disabled>.monaco-button-dropdown-separator,.monaco-button-dropdown.disabled>.monaco-button.disabled,.monaco-button-dropdown.disabled>.monaco-button.disabled:focus{opacity:0.4 !important}.monaco-button-dropdown>.monaco-button.monaco-text-button{border-right-width:0 !important}.monaco-button-dropdown .monaco-button-dropdown-separator{padding:4px 0;cursor:default}.monaco-button-dropdown .monaco-button-dropdown-separator>div{height:100%;width:1px}.monaco-button-dropdown>.monaco-button.monaco-dropdown-button{border:1px solid var(--vscode-button-border, transparent);border-left-width:0 !important;border-radius:0 2px 2px 0}.monaco-button-dropdown>.monaco-button.monaco-text-button{border-radius:2px 0 0 2px}.monaco-description-button{display:flex;flex-direction:column;align-items:center;margin:4px 5px}.monaco-description-button .monaco-button-description{font-style:italic;font-size:11px;padding:4px 20px}.monaco-description-button .monaco-button-description,.monaco-description-button .monaco-button-label{display:flex;justify-content:center;align-items:center}.monaco-description-button .monaco-button-description>.codicon,.monaco-description-button .monaco-button-label>.codicon{margin:0 0.2em;color:inherit !important}.monaco-button-dropdown.default-colors>.monaco-button,.monaco-button.default-colors{color:var(--vscode-button-foreground);background-color:var(--vscode-button-background)}.monaco-button-dropdown.default-colors>.monaco-button:hover,.monaco-button.default-colors:hover{background-color:var(--vscode-button-hoverBackground)}.monaco-button-dropdown.default-colors>.monaco-button.secondary,.monaco-button.default-colors.secondary{color:var(--vscode-button-secondaryForeground);background-color:var(--vscode-button-secondaryBackground)}.monaco-button-dropdown.default-colors>.monaco-button.secondary:hover,.monaco-button.default-colors.secondary:hover{background-color:var(--vscode-button-secondaryHoverBackground)}.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator{background-color:var(--vscode-button-background);border-top:1px solid var(--vscode-button-border);border-bottom:1px solid var(--vscode-button-border)}.monaco-button-dropdown.default-colors .monaco-button.secondary+.monaco-button-dropdown-separator{background-color:var(--vscode-button-secondaryBackground)}.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator>div{background-color:var(--vscode-button-separator)}@font-face{font-family:codicon;font-display:block;src:url(data:font/ttf;base64,AAEAAAALAIAAAwAwR1NVQiCLJXoAAAE4AAAAVE9TLzI3T0Y+AAABjAAAAGBjbWFwJFpkEQAACJgAABjsZ2x5ZgwNh4oAACTcAADhaGhlYWRYl6BTAAAA4AAAADZoaGVhAlsC1gAAALwAAAAkaG10ePM8//sAAAHsAAAGrGxvY2FuKaViAAAhhAAAA1htYXhwAswBgQAAARgAAAAgbmFtZZP2uUoAAQZEAAAB+HBvc3QHWyqcAAEIPAAAF1sAAQAAASwAAAAAASz////+AS4AAQAAAAAAAAAAAAAAAAAAAasAAQAAAAEAAJjNyaRfDzz1AAsBLAAAAAB8JbCAAAAAAHwlsID////9AS4BLQAAAAgAAgAAAAAAAAABAAABqwF1ABcAAAAAAAIAAAAKAAoAAAD/AAAAAAAAAAEAAAAKADAAPgACREZMVAAObGF0bgAaAAQAAAAAAAAAAQAAAAQAAAAAAAAAAQAAAAFsaWdhAAgAAAABAAAAAQAEAAQAAAABAAgAAQAGAAAAAQAAAAQBKwGQAAUAAAC+ANIAAAAqAL4A0gAAAJAADgBNAAACAAUDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFBmRWQAwOpg7BIBLAAAABsBRwADAAAAAQAAAAAAAAAAAAAAAAACAAAAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASz//wEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASz//wEsAAABLAAAASwAAAEsAAABLP//ASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASz//wEsAAABLAAAASwAAAEs//8BLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAAAAAUAAAADAAAALAAAAAQAAATYAAEAAAAAA9IAAwABAAAALAADAAoAAATYAAQDpgAAABAAEAADAADqiOqM6sfqyesJ607sEv//AADqYOqK6o/qyerM6wvrUP//AAAAAAAAAAAAAAAAAAAAAQAQAGAAZADUANQBTgHUAAAAAwDhATMBMACqASEBdwEQAVIA+wFXAEoBoAFGAU8BTgCJADQBGgB+AMAA7gA/AXUAcwAWAZ4AkwCAAS0BCQEAAQEBiAC6AJ4ArgGCAWIAgwFzAVsBagFoAVwBawFyAW0BZgCwAWEBbwACAAQABQAKAAsADAANAA4ADwAQABIAGgAcAB0AHgBWAFcAWABZAFwAXQAhACIAIwAkACUAKAAqACsALAAtAC4ALwAwADEAMgAzADoANwA7ADwAPQA+AEAAQQBDAEQARQBHAE8AUABRAFIAYQBjAGUAaABsAG4AbwBwAHEAcgB0AHUAdgB3AHgAeQB6AHsAfAB9AH8AgQCEAIcAiACLAIwAjQCOAI8AkACRAJIAlACWAJcAmACZAJoAmwCdAJ8AoAChAIwAogCjAKQAqwCsAK8AsQC1ALYAuQC7ALwAvQC+AMQAxQDGAMcAyADJAMoAywDgAOIA4wDmAOkA6gDrAOwA8ADxAPQA9QD2APoA/AD9AP4A/wEDAQQBBwEIAQsBDAESARYBFwEYARkBGwEcAR0BHgEfASABJQEmAScBKAEpASoBKwEsAS4BLwExATIBNAE1ATYBNwE4ATkBOgE/AUABQQFCAUMBRQFKAUsBTAFNAVABUQFUAVUBVgFYAVkBXQFeAV8BYAFjAWQBZQFnAWkBbAFuAXABeQF6AYMBhAGFAYYBhwGJAYoBiwGMAY0BkQGTAZQBlQGYAZkBmgGcAZ0BoQGiAaMBpAGlAakBqgDkAOUA5wDoAFoAWwBqADgAawBeAXEAaQBtAGcAVQAmACcA9wCFAIoAtwGSAAEAFwBfAN8BCgE8AXQBFACtAUkBSAEOAVoBFQEjAFQBmwBCAPgAhgCyAO8BBgEkACkBEwENADUANgBGAXYBlgGQAY4BjwCmATsBPQEFAGYBpgGoAacBfAF9AX4BfwGAAYEBewARAE4BDwCVAZ8AZADCAM4AzQDMAE0ATABLABQAwwClAKcAUwBiAT4AnABgABUAswC0AREAHwAgAO0AEwGXAQIA3gDPANAA1QDTANQA1wDYANoA3ADdANIA0QF4AL8BIgCCAAYABwAIAAkA2wDWANkAGwC4APMA8gA5ABkAGABJAKgAqQFEAEgBRwFTAMEA+QAAAQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAUFAAAAAAAAAGrAADqYAAA6mAAAAADAADqYQAA6mEAAADhAADqYgAA6mIAAAEzAADqYwAA6mMAAAEwAADqZAAA6mQAAACqAADqZQAA6mUAAAEhAADqZgAA6mYAAAF3AADqZwAA6mcAAAEQAADqaAAA6mgAAAFSAADqaQAA6mkAAAD7AADqagAA6moAAAFXAADqawAA6msAAABKAADqbAAA6mwAAAGgAADqbQAA6m0AAAFGAADqbgAA6m4AAAFPAADqbwAA6m8AAAFOAADqcAAA6nAAAACJAADqcQAA6nEAAAA0AADqcgAA6nIAAAEaAADqcwAA6nMAAAB+AADqdAAA6nQAAADAAADqdQAA6nUAAADuAADqdgAA6nYAAAA/AADqdwAA6ncAAAF1AADqeAAA6ngAAABzAADqeQAA6nkAAAAWAADqegAA6noAAAGeAADqewAA6nsAAACTAADqfAAA6nwAAACAAADqfQAA6n0AAAEtAADqfgAA6n4AAAEJAADqfwAA6n8AAAEAAADqgAAA6oAAAAEBAADqgQAA6oEAAAGIAADqggAA6oIAAAC6AADqgwAA6oMAAACeAADqhAAA6oQAAACuAADqhQAA6oUAAAGCAADqhgAA6oYAAAFiAADqhwAA6ocAAACDAADqiAAA6ogAAAFzAADqigAA6ooAAAFbAADqiwAA6osAAAFqAADqjAAA6owAAAFoAADqjwAA6o8AAAFcAADqkAAA6pAAAAFrAADqkQAA6pEAAAFyAADqkgAA6pIAAAFtAADqkwAA6pMAAAFmAADqlAAA6pQAAACwAADqlQAA6pUAAAFhAADqlgAA6pYAAAFvAADqlwAA6pcAAAACAADqmAAA6pgAAAAEAADqmQAA6pkAAAAFAADqmgAA6poAAAAKAADqmwAA6psAAAALAADqnAAA6pwAAAAMAADqnQAA6p0AAAANAADqngAA6p4AAAAOAADqnwAA6p8AAAAPAADqoAAA6qAAAAAQAADqoQAA6qEAAAASAADqogAA6qIAAAAaAADqowAA6qMAAAAcAADqpAAA6qQAAAAdAADqpQAA6qUAAAAeAADqpgAA6qYAAABWAADqpwAA6qcAAABXAADqqAAA6qgAAABYAADqqQAA6qkAAABZAADqqgAA6qoAAABcAADqqwAA6qsAAABdAADqrAAA6qwAAAAhAADqrQAA6q0AAAAiAADqrgAA6q4AAAAjAADqrwAA6q8AAAAkAADqsAAA6rAAAAAlAADqsQAA6rEAAAAoAADqsgAA6rIAAAAqAADqswAA6rMAAAArAADqtAAA6rQAAAAsAADqtQAA6rUAAAAtAADqtgAA6rYAAAAuAADqtwAA6rcAAAAvAADquAAA6rgAAAAwAADquQAA6rkAAAAxAADqugAA6roAAAAyAADquwAA6rsAAAAzAADqvAAA6rwAAAA6AADqvQAA6r0AAAA3AADqvgAA6r4AAAA7AADqvwAA6r8AAAA8AADqwAAA6sAAAAA9AADqwQAA6sEAAAA+AADqwgAA6sIAAABAAADqwwAA6sMAAABBAADqxAAA6sQAAABDAADqxQAA6sUAAABEAADqxgAA6sYAAABFAADqxwAA6scAAABHAADqyQAA6skAAABPAADqzAAA6swAAABQAADqzQAA6s0AAABRAADqzgAA6s4AAABSAADqzwAA6s8AAABhAADq0AAA6tAAAABjAADq0QAA6tEAAABlAADq0gAA6tIAAABoAADq0wAA6tMAAABsAADq1AAA6tQAAABuAADq1QAA6tUAAABvAADq1gAA6tYAAABwAADq1wAA6tcAAABxAADq2AAA6tgAAAByAADq2QAA6tkAAAB0AADq2gAA6toAAAB1AADq2wAA6tsAAAB2AADq3AAA6twAAAB3AADq3QAA6t0AAAB4AADq3gAA6t4AAAB5AADq3wAA6t8AAAB6AADq4AAA6uAAAAB7AADq4QAA6uEAAAB8AADq4gAA6uIAAAB9AADq4wAA6uMAAAB/AADq5AAA6uQAAACBAADq5QAA6uUAAACEAADq5gAA6uYAAACHAADq5wAA6ucAAACIAADq6AAA6ugAAACLAADq6QAA6ukAAACMAADq6gAA6uoAAACNAADq6wAA6usAAACOAADq7AAA6uwAAACPAADq7QAA6u0AAACQAADq7gAA6u4AAACRAADq7wAA6u8AAACSAADq8AAA6vAAAACUAADq8QAA6vEAAACWAADq8gAA6vIAAACXAADq8wAA6vMAAACYAADq9AAA6vQAAACZAADq9QAA6vUAAACaAADq9gAA6vYAAACbAADq9wAA6vcAAACdAADq+AAA6vgAAACfAADq+QAA6vkAAACgAADq+gAA6voAAAChAADq+wAA6vsAAACMAADq/AAA6vwAAACiAADq/QAA6v0AAACjAADq/gAA6v4AAACkAADq/wAA6v8AAACrAADrAAAA6wAAAACsAADrAQAA6wEAAACvAADrAgAA6wIAAACxAADrAwAA6wMAAAC1AADrBAAA6wQAAAC2AADrBQAA6wUAAAC5AADrBgAA6wYAAAC7AADrBwAA6wcAAAC8AADrCAAA6wgAAAC9AADrCQAA6wkAAAC+AADrCwAA6wsAAADEAADrDAAA6wwAAADFAADrDQAA6w0AAADGAADrDgAA6w4AAADHAADrDwAA6w8AAADIAADrEAAA6xAAAADJAADrEQAA6xEAAADKAADrEgAA6xIAAADLAADrEwAA6xMAAADgAADrFAAA6xQAAADiAADrFQAA6xUAAADjAADrFgAA6xYAAADmAADrFwAA6xcAAADpAADrGAAA6xgAAADqAADrGQAA6xkAAADrAADrGgAA6xoAAADsAADrGwAA6xsAAADwAADrHAAA6xwAAADxAADrHQAA6x0AAAD0AADrHgAA6x4AAAD1AADrHwAA6x8AAAD2AADrIAAA6yAAAAD6AADrIQAA6yEAAAD8AADrIgAA6yIAAAD9AADrIwAA6yMAAAD+AADrJAAA6yQAAAD/AADrJQAA6yUAAAEDAADrJgAA6yYAAAEEAADrJwAA6ycAAAEHAADrKAAA6ygAAAEIAADrKQAA6ykAAAELAADrKgAA6yoAAAEMAADrKwAA6ysAAAESAADrLAAA6ywAAAEWAADrLQAA6y0AAAEXAADrLgAA6y4AAAEYAADrLwAA6y8AAAEZAADrMAAA6zAAAAEbAADrMQAA6zEAAAEcAADrMgAA6zIAAAEdAADrMwAA6zMAAAEeAADrNAAA6zQAAAEfAADrNQAA6zUAAAEgAADrNgAA6zYAAAElAADrNwAA6zcAAAEmAADrOAAA6zgAAAEnAADrOQAA6zkAAAEoAADrOgAA6zoAAAEpAADrOwAA6zsAAAEqAADrPAAA6zwAAAErAADrPQAA6z0AAAEsAADrPgAA6z4AAAEuAADrPwAA6z8AAAEvAADrQAAA60AAAAExAADrQQAA60EAAAEyAADrQgAA60IAAAE0AADrQwAA60MAAAE1AADrRAAA60QAAAE2AADrRQAA60UAAAE3AADrRgAA60YAAAE4AADrRwAA60cAAAE5AADrSAAA60gAAAE6AADrSQAA60kAAAE/AADrSgAA60oAAAFAAADrSwAA60sAAAFBAADrTAAA60wAAAFCAADrTQAA600AAAFDAADrTgAA604AAAFFAADrUAAA61AAAAFKAADrUQAA61EAAAFLAADrUgAA61IAAAFMAADrUwAA61MAAAFNAADrVAAA61QAAAFQAADrVQAA61UAAAFRAADrVgAA61YAAAFUAADrVwAA61cAAAFVAADrWAAA61gAAAFWAADrWQAA61kAAAFYAADrWgAA61oAAAFZAADrWwAA61sAAAFdAADrXAAA61wAAAFeAADrXQAA610AAAFfAADrXgAA614AAAFgAADrXwAA618AAAFjAADrYAAA62AAAAFkAADrYQAA62EAAAFlAADrYgAA62IAAAFnAADrYwAA62MAAAFpAADrZAAA62QAAAFsAADrZQAA62UAAAFuAADrZgAA62YAAAFwAADrZwAA62cAAAF5AADraAAA62gAAAF6AADraQAA62kAAAGDAADragAA62oAAAGEAADrawAA62sAAAGFAADrbAAA62wAAAGGAADrbQAA620AAAGHAADrbgAA624AAAGJAADrbwAA628AAAGKAADrcAAA63AAAAGLAADrcQAA63EAAAGMAADrcgAA63IAAAGNAADrcwAA63MAAAGRAADrdAAA63QAAAGTAADrdQAA63UAAAGUAADrdgAA63YAAAGVAADrdwAA63cAAAGYAADreAAA63gAAAGZAADreQAA63kAAAGaAADregAA63oAAAGcAADrewAA63sAAAGdAADrfAAA63wAAAGhAADrfQAA630AAAGiAADrfgAA634AAAGjAADrfwAA638AAAGkAADrgAAA64AAAAGlAADrgQAA64EAAAGpAADrggAA64IAAAGqAADrgwAA64MAAADkAADrhAAA64QAAADlAADrhQAA64UAAADnAADrhgAA64YAAADoAADrhwAA64cAAABaAADriAAA64gAAABbAADriQAA64kAAABqAADrigAA64oAAAA4AADriwAA64sAAABrAADrjAAA64wAAABeAADrjQAA640AAAFxAADrjgAA644AAABpAADrjwAA648AAABtAADrkAAA65AAAABnAADrkQAA65EAAABVAADrkgAA65IAAAAmAADrkwAA65MAAAAnAADrlAAA65QAAAD3AADrlQAA65UAAACFAADrlgAA65YAAACKAADrlwAA65cAAAC3AADrmAAA65gAAAGSAADrmQAA65kAAAABAADrmgAA65oAAAAXAADrmwAA65sAAABfAADrnAAA65wAAADfAADrnQAA650AAAEKAADrngAA654AAAE8AADrnwAA658AAAF0AADroAAA66AAAAEUAADroQAA66EAAACtAADrogAA66IAAAFJAADrowAA66MAAAFIAADrpAAA66QAAAEOAADrpQAA66UAAAFaAADrpgAA66YAAAEVAADrpwAA66cAAAEjAADrqAAA66gAAABUAADrqQAA66kAAAGbAADrqgAA66oAAABCAADrqwAA66sAAAD4AADrrAAA66wAAACGAADrrQAA660AAACyAADrrgAA664AAADvAADrrwAA668AAAEGAADrsAAA67AAAAEkAADrsQAA67EAAAApAADrsgAA67IAAAETAADrswAA67MAAAENAADrtAAA67QAAAA1AADrtQAA67UAAAA2AADrtgAA67YAAABGAADrtwAA67cAAAF2AADruAAA67gAAAGWAADruQAA67kAAAGQAADrugAA67oAAAGOAADruwAA67sAAAGPAADrvAAA67wAAACmAADrvQAA670AAAE7AADrvgAA674AAAE9AADrvwAA678AAAEFAADrwAAA68AAAABmAADrwQAA68EAAAGmAADrwgAA68IAAAGoAADrwwAA68MAAAGnAADrxAAA68QAAAF8AADrxQAA68UAAAF9AADrxgAA68YAAAF+AADrxwAA68cAAAF/AADryAAA68gAAAGAAADryQAA68kAAAGBAADrygAA68oAAAF7AADrywAA68sAAAARAADrzAAA68wAAABOAADrzQAA680AAAEPAADrzgAA684AAACVAADrzwAA688AAAGfAADr0AAA69AAAABkAADr0QAA69EAAADCAADr0gAA69IAAADOAADr0wAA69MAAADNAADr1AAA69QAAADMAADr1QAA69UAAABNAADr1gAA69YAAABMAADr1wAA69cAAABLAADr2AAA69gAAAAUAADr2QAA69kAAADDAADr2gAA69oAAAClAADr2wAA69sAAACnAADr3AAA69wAAABTAADr3QAA690AAABiAADr3gAA694AAAE+AADr3wAA698AAACcAADr4AAA6+AAAABgAADr4QAA6+EAAAAVAADr4gAA6+IAAACzAADr4wAA6+MAAAC0AADr5AAA6+QAAAERAADr5QAA6+UAAAAfAADr5gAA6+YAAAAgAADr5wAA6+cAAADtAADr6AAA6+gAAAATAADr6QAA6+kAAAGXAADr6gAA6+oAAAEC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AHIAcwBpAG8AbgAgADEALgAxADAAYwBvAGQAaQBjAG8AbgBUAGgAZQAgAGkAYwBvAG4AIABmAG8AbgB0ACAAZgBvAHIAIABWAGkAcwB1AGEAbAAgAFMAdAB1AGQAaQBvACAAQwBvAGQAZQBoAHQAdABwADoALwAvAGYAbwBuAHQAZQBsAGwAbwAuAGMAbwBtAAIAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAABqwECAQMBBAEFAQYBBwEIAQkBCgELAQwBDQEOAQ8BEAERARIBEwEUARUBFgEXARgBGQEaARsBHAEdAR4BHwEgASEBIgEjASQBJQEmAScBKAEpASoBKwEsAS0BLgEvATABMQEyATMBNAE1ATYBNwE4ATkBOgE7ATwBPQE+AT8BQAFBAUIBQwFEAUUBRgFHAUgBSQFKAUsBTAFNAU4BTwFQAVEBUgFTAVQBVQFWAVcBWAFZAVoBWwFcAV0BXgFfAWABYQFiAWMBZAFlAWYBZwFoAWkBagFrAWwBbQFuAW8BcAFxAXIBcwF0AXUBdgF3AXgBeQF6AXsBfAF9AX4BfwGAAYEBggGDAYQBhQGGAYcBiAGJAYoBiwGMAY0BjgGPAZABkQGSAZMBlAGVAZYBlwGYAZkBmgGbAZwBnQGeAZ8BoAGhAaIBowGkAaUBpgGnAagBqQGqAasBrAGtAa4BrwGwAbEBsgGzAbQBtQG2AbcBuAG5AboBuwG8Ab0BvgG/AcABwQHCAcMBxAHFAcYBxwHIAckBygHLAcwBzQHOAc8B0AHRAdIB0wHUAdUB1gHXAdgB2QHaAdsB3AHdAd4B3wHgAeEB4gHjAeQB5QHmAecB6AHpAeoB6wHsAe0B7gHvAfAB8QHyAfMB9AH1AfYB9wH4AfkB+gH7AfwB/QH+Af8CAAIBAgICAwIEAgUCBgIHAggCCQIKAgsCDAINAg4CDwIQAhECEgITAhQCFQIWAhcCGAIZAhoCGwIcAh0CHgIfAiACIQIiAiMCJAIlAiYCJwIoAikCKgIrAiwCLQIuAi8CMAIxAjICMwI0AjUCNgI3AjgCOQI6AjsCPAI9Aj4CPwJAAkECQgJDAkQCRQJGAkcCSAJJAkoCSwJMAk0CTgJPAlACUQJSAlMCVAJVAlYCVwJYAlkCWgJbAlwCXQJeAl8CYAJhAmICYwJkAmUCZgJnAmgCaQJqAmsCbAJtAm4CbwJwAnECcgJzAnQCdQJ2AncCeAJ5AnoCewJ8An0CfgJ/AoACgQKCAoMChAKFAoYChwKIAokCigKLAowCjQKOAo8CkAKRApICkwKUApUClgKXApgCmQKaApsCnAKdAp4CnwKgAqECogKjAqQCpQKmAqcCqAKpAqoCqwKsAAdhY2NvdW50FGFjdGl2YXRlLWJyZWFrcG9pbnRzA2FkZAdhcmNoaXZlCmFycm93LWJvdGgRYXJyb3ctY2lyY2xlLWRvd24RYXJyb3ctY2lyY2xlLWxlZnQSYXJyb3ctY2lyY2xlLXJpZ2h0D2Fycm93LWNpcmNsZS11cAphcnJvdy1kb3duCmFycm93LWxlZnQLYXJyb3ctcmlnaHQQYXJyb3ctc21hbGwtZG93bhBhcnJvdy1zbWFsbC1sZWZ0EWFycm93LXNtYWxsLXJpZ2h0DmFycm93LXNtYWxsLXVwCmFycm93LXN3YXAIYXJyb3ctdXAMYXp1cmUtZGV2b3BzBWF6dXJlC2JlYWtlci1zdG9wBmJlYWtlcghiZWxsLWRvdA5iZWxsLXNsYXNoLWRvdApiZWxsLXNsYXNoBGJlbGwFYmxhbmsEYm9sZARib29rCGJvb2ttYXJrC2JyYWNrZXQtZG90DWJyYWNrZXQtZXJyb3IJYnJpZWZjYXNlCWJyb2FkY2FzdAdicm93c2VyA2J1ZwhjYWxlbmRhcg1jYWxsLWluY29taW5nDWNhbGwtb3V0Z29pbmcOY2FzZS1zZW5zaXRpdmUJY2hlY2stYWxsBWNoZWNrCWNoZWNrbGlzdAxjaGV2cm9uLWRvd24MY2hldnJvbi1sZWZ0DWNoZXZyb24tcmlnaHQKY2hldnJvbi11cAxjaHJvbWUtY2xvc2UPY2hyb21lLW1heGltaXplD2Nocm9tZS1taW5pbWl6ZQ5jaHJvbWUtcmVzdG9yZQ1jaXJjbGUtZmlsbGVkE2NpcmNsZS1sYXJnZS1maWxsZWQMY2lyY2xlLWxhcmdlDGNpcmNsZS1zbGFzaBNjaXJjbGUtc21hbGwtZmlsbGVkDGNpcmNsZS1zbWFsbAZjaXJjbGUNY2lyY3VpdC1ib2FyZAljbGVhci1hbGwGY2xpcHB5CWNsb3NlLWFsbAVjbG9zZQ5jbG91ZC1kb3dubG9hZAxjbG91ZC11cGxvYWQFY2xvdWQEY29kZQxjb2xsYXBzZS1hbGwKY29sb3ItbW9kZQdjb21iaW5lEmNvbW1lbnQtZGlzY3Vzc2lvbg1jb21tZW50LWRyYWZ0EmNvbW1lbnQtdW5yZXNvbHZlZAdjb21tZW50DmNvbXBhc3MtYWN0aXZlC2NvbXBhc3MtZG90B2NvbXBhc3MEY29weQtjcmVkaXQtY2FyZARkYXNoCWRhc2hib2FyZAhkYXRhYmFzZQlkZWJ1Zy1hbGwPZGVidWctYWx0LXNtYWxsCWRlYnVnLWFsdCdkZWJ1Zy1icmVha3BvaW50LWNvbmRpdGlvbmFsLXVudmVyaWZpZWQcZGVidWctYnJlYWtwb2ludC1jb25kaXRpb25hbCBkZWJ1Zy1icmVha3BvaW50LWRhdGEtdW52ZXJpZmllZBVkZWJ1Zy1icmVha3BvaW50LWRhdGEkZGVidWctYnJlYWtwb2ludC1mdW5jdGlvbi11bnZlcmlmaWVkGWRlYnVnLWJyZWFrcG9pbnQtZnVuY3Rpb24fZGVidWctYnJlYWtwb2ludC1sb2ctdW52ZXJpZmllZBRkZWJ1Zy1icmVha3BvaW50LWxvZxxkZWJ1Zy1icmVha3BvaW50LXVuc3VwcG9ydGVkDWRlYnVnLWNvbnNvbGUUZGVidWctY29udGludWUtc21hbGwOZGVidWctY29udGludWUOZGVidWctY292ZXJhZ2UQZGVidWctZGlzY29ubmVjdBJkZWJ1Zy1saW5lLWJ5LWxpbmULZGVidWctcGF1c2ULZGVidWctcmVydW4TZGVidWctcmVzdGFydC1mcmFtZQ1kZWJ1Zy1yZXN0YXJ0FmRlYnVnLXJldmVyc2UtY29udGludWUXZGVidWctc3RhY2tmcmFtZS1hY3RpdmUQZGVidWctc3RhY2tmcmFtZQtkZWJ1Zy1zdGFydA9kZWJ1Zy1zdGVwLWJhY2sPZGVidWctc3RlcC1pbnRvDmRlYnVnLXN0ZXAtb3V0D2RlYnVnLXN0ZXAtb3ZlcgpkZWJ1Zy1zdG9wBWRlYnVnEGRlc2t0b3AtZG93bmxvYWQTZGV2aWNlLWNhbWVyYS12aWRlbw1kZXZpY2UtY2FtZXJhDWRldmljZS1tb2JpbGUKZGlmZi1hZGRlZAxkaWZmLWlnbm9yZWQNZGlmZi1tb2RpZmllZAxkaWZmLXJlbW92ZWQMZGlmZi1yZW5hbWVkBGRpZmYHZGlzY2FyZARlZGl0DWVkaXRvci1sYXlvdXQIZWxsaXBzaXMMZW1wdHktd2luZG93C2Vycm9yLXNtYWxsBWVycm9yB2V4Y2x1ZGUKZXhwYW5kLWFsbAZleHBvcnQKZXh0ZW5zaW9ucwpleWUtY2xvc2VkA2V5ZQhmZWVkYmFjawtmaWxlLWJpbmFyeQlmaWxlLWNvZGUKZmlsZS1tZWRpYQhmaWxlLXBkZg5maWxlLXN1Ym1vZHVsZRZmaWxlLXN5bWxpbmstZGlyZWN0b3J5EWZpbGUtc3ltbGluay1maWxlCGZpbGUtemlwBGZpbGUFZmlsZXMNZmlsdGVyLWZpbGxlZAZmaWx0ZXIFZmxhbWUJZm9sZC1kb3duB2ZvbGQtdXAEZm9sZA1mb2xkZXItYWN0aXZlDmZvbGRlci1saWJyYXJ5DWZvbGRlci1vcGVuZWQGZm9sZGVyBGdlYXIEZ2lmdAtnaXN0LXNlY3JldApnaXQtY29tbWl0C2dpdC1jb21wYXJlCWdpdC1tZXJnZRdnaXQtcHVsbC1yZXF1ZXN0LWNsb3NlZBdnaXQtcHVsbC1yZXF1ZXN0LWNyZWF0ZRZnaXQtcHVsbC1yZXF1ZXN0LWRyYWZ0HmdpdC1wdWxsLXJlcXVlc3QtZ28tdG8tY2hhbmdlcxxnaXQtcHVsbC1yZXF1ZXN0LW5ldy1jaGFuZ2VzEGdpdC1wdWxsLXJlcXVlc3QNZ2l0aHViLWFjdGlvbgpnaXRodWItYWx0D2dpdGh1Yi1pbnZlcnRlZAZnaXRodWIFZ2xvYmUKZ28tdG8tZmlsZQdncmFiYmVyCmdyYXBoLWxlZnQKZ3JhcGgtbGluZQ1ncmFwaC1zY2F0dGVyBWdyYXBoB2dyaXBwZXIRZ3JvdXAtYnktcmVmLXR5cGUMaGVhcnQtZmlsbGVkBWhlYXJ0B2hpc3RvcnkEaG9tZQ9ob3Jpem9udGFsLXJ1bGUFaHVib3QFaW5ib3gGaW5kZW50BGluZm8GaW5zZXJ0B2luc3BlY3QLaXNzdWUtZHJhZnQOaXNzdWUtcmVvcGVuZWQGaXNzdWVzBml0YWxpYwZqZXJzZXkEanNvbg5rZWJhYi12ZXJ0aWNhbANrZXkDbGF3DWxheWVycy1hY3RpdmUKbGF5ZXJzLWRvdAZsYXllcnMXbGF5b3V0LWFjdGl2aXR5YmFyLWxlZnQYbGF5b3V0LWFjdGl2aXR5YmFyLXJpZ2h0D2xheW91dC1jZW50ZXJlZA5sYXlvdXQtbWVudWJhchNsYXlvdXQtcGFuZWwtY2VudGVyFGxheW91dC1wYW5lbC1qdXN0aWZ5EWxheW91dC1wYW5lbC1sZWZ0EGxheW91dC1wYW5lbC1vZmYSbGF5b3V0LXBhbmVsLXJpZ2h0DGxheW91dC1wYW5lbBdsYXlvdXQtc2lkZWJhci1sZWZ0LW9mZhNsYXlvdXQtc2lkZWJhci1sZWZ0GGxheW91dC1zaWRlYmFyLXJpZ2h0LW9mZhRsYXlvdXQtc2lkZWJhci1yaWdodBBsYXlvdXQtc3RhdHVzYmFyBmxheW91dAdsaWJyYXJ5EWxpZ2h0YnVsYi1hdXRvZml4CWxpZ2h0YnVsYg1saW5rLWV4dGVybmFsBGxpbmsLbGlzdC1maWx0ZXIJbGlzdC1mbGF0DGxpc3Qtb3JkZXJlZA5saXN0LXNlbGVjdGlvbglsaXN0LXRyZWUObGlzdC11bm9yZGVyZWQKbGl2ZS1zaGFyZQdsb2FkaW5nCGxvY2F0aW9uCmxvY2stc21hbGwEbG9jawZtYWduZXQJbWFpbC1yZWFkBG1haWwKbWFwLWZpbGxlZANtYXAIbWFya2Rvd24JbWVnYXBob25lB21lbnRpb24EbWVudQVtZXJnZQNtaWMJbWlsZXN0b25lBm1pcnJvcgxtb3J0YXItYm9hcmQEbW92ZRBtdWx0aXBsZS13aW5kb3dzBG11dGUIbmV3LWZpbGUKbmV3LWZvbGRlcgduZXdsaW5lCm5vLW5ld2xpbmUEbm90ZRFub3RlYm9vay10ZW1wbGF0ZQhub3RlYm9vawhvY3RvZmFjZQxvcGVuLXByZXZpZXcMb3JnYW5pemF0aW9uBm91dHB1dAdwYWNrYWdlCHBhaW50Y2FuC3Bhc3MtZmlsbGVkBHBhc3MKcGVyc29uLWFkZAZwZXJzb24JcGllLWNoYXJ0A3BpbgxwaW5uZWQtZGlydHkGcGlubmVkC3BsYXktY2lyY2xlBHBsYXkEcGx1Zw1wcmVzZXJ2ZS1jYXNlB3ByZXZpZXcQcHJpbWl0aXZlLXNxdWFyZQdwcm9qZWN0BXB1bHNlCHF1ZXN0aW9uBXF1b3RlC3JhZGlvLXRvd2VyCXJlYWN0aW9ucwtyZWNvcmQta2V5cwxyZWNvcmQtc21hbGwGcmVjb3JkBHJlZG8KcmVmZXJlbmNlcwdyZWZyZXNoBXJlZ2V4D3JlbW90ZS1leHBsb3JlcgZyZW1vdGUGcmVtb3ZlC3JlcGxhY2UtYWxsB3JlcGxhY2UFcmVwbHkKcmVwby1jbG9uZQ9yZXBvLWZvcmNlLXB1c2gLcmVwby1mb3JrZWQJcmVwby1wdWxsCXJlcG8tcHVzaARyZXBvBnJlcG9ydA9yZXF1ZXN0LWNoYW5nZXMGcm9ja2V0EnJvb3QtZm9sZGVyLW9wZW5lZAtyb290LWZvbGRlcgNyc3MEcnVieQlydW4tYWJvdmUHcnVuLWFsbAlydW4tYmVsb3cKcnVuLWVycm9ycwhzYXZlLWFsbAdzYXZlLWFzBHNhdmULc2NyZWVuLWZ1bGwNc2NyZWVuLW5vcm1hbAxzZWFyY2gtZnV6enkLc2VhcmNoLXN0b3AGc2VhcmNoBHNlbmQSc2VydmVyLWVudmlyb25tZW50DnNlcnZlci1wcm9jZXNzBnNlcnZlcg1zZXR0aW5ncy1nZWFyCHNldHRpbmdzBnNoaWVsZAdzaWduLWluCHNpZ24tb3V0BnNtaWxleQ9zb3J0LXByZWNlZGVuY2UOc291cmNlLWNvbnRyb2wHc3BhcmtsZRBzcGxpdC1ob3Jpem9udGFsDnNwbGl0LXZlcnRpY2FsCHNxdWlycmVsCnN0YXItZW1wdHkJc3Rhci1mdWxsCXN0YXItaGFsZgtzdG9wLWNpcmNsZQxzeW1ib2wtYXJyYXkOc3ltYm9sLWJvb2xlYW4Mc3ltYm9sLWNsYXNzDHN5bWJvbC1jb2xvcg9zeW1ib2wtY29uc3RhbnQSc3ltYm9sLWVudW0tbWVtYmVyC3N5bWJvbC1lbnVtDHN5bWJvbC1ldmVudAxzeW1ib2wtZmllbGQLc3ltYm9sLWZpbGUQc3ltYm9sLWludGVyZmFjZQpzeW1ib2wta2V5DnN5bWJvbC1rZXl3b3JkDXN5bWJvbC1tZXRob2QLc3ltYm9sLW1pc2MQc3ltYm9sLW5hbWVzcGFjZQ5zeW1ib2wtbnVtZXJpYw9zeW1ib2wtb3BlcmF0b3IQc3ltYm9sLXBhcmFtZXRlcg9zeW1ib2wtcHJvcGVydHkMc3ltYm9sLXJ1bGVyDnN5bWJvbC1zbmlwcGV0DXN5bWJvbC1zdHJpbmcQc3ltYm9sLXN0cnVjdHVyZQ9zeW1ib2wtdmFyaWFibGUMc3luYy1pZ25vcmVkBHN5bmMFdGFibGUDdGFnBnRhcmdldAh0YXNrbGlzdAl0ZWxlc2NvcGUNdGVybWluYWwtYmFzaAx0ZXJtaW5hbC1jbWQPdGVybWluYWwtZGViaWFuDnRlcm1pbmFsLWxpbnV4E3Rlcm1pbmFsLXBvd2Vyc2hlbGwNdGVybWluYWwtdG11eA90ZXJtaW5hbC11YnVudHUIdGVybWluYWwJdGV4dC1zaXplCnRocmVlLWJhcnMKdGh1bWJzZG93bgh0aHVtYnN1cAV0b29scwV0cmFzaA10cmlhbmdsZS1kb3duDXRyaWFuZ2xlLWxlZnQOdHJpYW5nbGUtcmlnaHQLdHJpYW5nbGUtdXAHdHdpdHRlchJ0eXBlLWhpZXJhcmNoeS1zdWIUdHlwZS1oaWVyYXJjaHktc3VwZXIOdHlwZS1oaWVyYXJjaHkGdW5mb2xkE3VuZ3JvdXAtYnktcmVmLXR5cGUGdW5sb2NrBnVubXV0ZQp1bnZlcmlmaWVkDnZhcmlhYmxlLWdyb3VwD3ZlcmlmaWVkLWZpbGxlZAh2ZXJpZmllZAh2ZXJzaW9ucwl2bS1hY3RpdmUKdm0tY29ubmVjdAp2bS1vdXRsaW5lCnZtLXJ1bm5pbmcCdm0Ed2FuZAd3YXJuaW5nBXdhdGNoCndoaXRlc3BhY2UKd2hvbGUtd29yZAZ3aW5kb3cJd29yZC13cmFwEXdvcmtzcGFjZS10cnVzdGVkEXdvcmtzcGFjZS11bmtub3duE3dvcmtzcGFjZS11bnRydXN0ZWQHem9vbS1pbgh6b29tLW91dAAAAA==) format(\"truetype\")}.codicon[class*=codicon-]{font:normal normal normal 16px/1 codicon;display:inline-block;text-decoration:none;text-rendering:auto;text-align:center;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;user-select:none;-webkit-user-select:none}.codicon-wrench-subaction{opacity:0.5}@keyframes codicon-spin{to{transform:rotate(1turn)}}.codicon-gear.codicon-modifier-spin,.codicon-loading.codicon-modifier-spin,.codicon-notebook-state-executing.codicon-modifier-spin,.codicon-sync.codicon-modifier-spin{animation:codicon-spin 1.5s steps(30) infinite}.codicon-modifier-disabled{opacity:0.4}.codicon-loading,.codicon-tree-item-loading:before{animation-duration:1s !important;animation-timing-function:cubic-bezier(0.53, 0.21, 0.29, 0.67) !important}.context-view{position:absolute}.context-view.fixed{all:initial;font-family:inherit;font-size:13px;position:fixed;color:inherit}.monaco-count-badge{padding:3px 6px;border-radius:11px;font-size:11px;min-width:18px;min-height:18px;line-height:11px;font-weight:400;text-align:center;display:inline-block;box-sizing:border-box}.monaco-count-badge.long{padding:2px 3px;border-radius:2px;min-height:auto;line-height:normal}.monaco-dropdown{height:100%;padding:0}.monaco-dropdown>.dropdown-label{cursor:pointer;height:100%;display:flex;align-items:center;justify-content:center}.monaco-dropdown>.dropdown-label>.action-label.disabled{cursor:default}.monaco-dropdown-with-primary{display:flex !important;flex-direction:row;border-radius:5px}.monaco-dropdown-with-primary>.action-container>.action-label{margin-right:0}.monaco-dropdown-with-primary>.dropdown-action-container>.monaco-dropdown>.dropdown-label .codicon[class*=codicon-]{font-size:12px;padding-left:0;padding-right:0;line-height:16px;margin-left:-3px}.monaco-dropdown-with-primary>.dropdown-action-container>.monaco-dropdown>.dropdown-label>.action-label{display:block;background-size:16px;background-position:50%;background-repeat:no-repeat}.monaco-findInput{position:relative}.monaco-findInput .monaco-inputbox{font-size:13px;width:100%}.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.vs .monaco-findInput.disabled{background-color:#e1e1e1}.vs-dark .monaco-findInput.disabled{background-color:#333}.hc-light .monaco-findInput.highlight-0 .controls,.monaco-findInput.highlight-0 .controls{animation:monaco-findInput-highlight-0 0.1s linear 0s}.hc-light .monaco-findInput.highlight-1 .controls,.monaco-findInput.highlight-1 .controls{animation:monaco-findInput-highlight-1 0.1s linear 0s}.hc-black .monaco-findInput.highlight-0 .controls,.vs-dark .monaco-findInput.highlight-0 .controls{animation:monaco-findInput-highlight-dark-0 0.1s linear 0s}.hc-black .monaco-findInput.highlight-1 .controls,.vs-dark .monaco-findInput.highlight-1 .controls{animation:monaco-findInput-highlight-dark-1 0.1s linear 0s}@keyframes monaco-findInput-highlight-0{0%{background:rgba(253, 255, 0, 0.8)}to{background:transparent}}@keyframes monaco-findInput-highlight-1{0%{background:rgba(253, 255, 0, 0.8)}99%{background:transparent}}@keyframes monaco-findInput-highlight-dark-0{0%{background:rgba(255, 255, 255, 0.44)}to{background:transparent}}@keyframes monaco-findInput-highlight-dark-1{0%{background:rgba(255, 255, 255, 0.44)}99%{background:transparent}}.monaco-hover{cursor:default;position:absolute;overflow:hidden;user-select:text;-webkit-user-select:text;box-sizing:border-box;animation:fadein 0.1s linear;line-height:1.5em;white-space:var(--vscode-hover-whiteSpace, normal)}.monaco-hover.hidden{display:none}.monaco-hover a:hover:not(.disabled){cursor:pointer}.monaco-hover .hover-contents:not(.html-hover-contents){padding:4px 8px}.monaco-hover .markdown-hover>.hover-contents:not(.code-hover-contents){max-width:var(--vscode-hover-maxWidth, 500px);word-wrap:break-word}.monaco-hover .markdown-hover>.hover-contents:not(.code-hover-contents) hr{min-width:100%}.monaco-hover .code,.monaco-hover h1,.monaco-hover h2,.monaco-hover h3,.monaco-hover h4,.monaco-hover h5,.monaco-hover h6,.monaco-hover p,.monaco-hover ul{margin:8px 0}.monaco-hover h1,.monaco-hover h2,.monaco-hover h3,.monaco-hover h4,.monaco-hover h5,.monaco-hover h6{line-height:1.1}.monaco-hover code{font-family:var(--monaco-monospace-font)}.monaco-hover hr{box-sizing:border-box;border-left:0;border-right:0;margin:4px -8px -4px;height:1px}.monaco-hover .code:first-child,.monaco-hover p:first-child,.monaco-hover ul:first-child{margin-top:0}.monaco-hover .code:last-child,.monaco-hover p:last-child,.monaco-hover ul:last-child{margin-bottom:0}.monaco-hover ol,.monaco-hover ul{padding-left:20px}.monaco-hover li>p{margin-bottom:0}.monaco-hover li>ul{margin-top:0}.monaco-hover code{border-radius:3px;padding:0 0.4em}.monaco-hover .monaco-tokenized-source{white-space:var(--vscode-hover-sourceWhiteSpace, pre-wrap)}.monaco-hover .hover-row.status-bar{font-size:12px;line-height:22px}.monaco-hover .hover-row.status-bar .info{font-style:italic;padding:0 8px}.monaco-hover .hover-row.status-bar .actions{display:flex;padding:0 8px}.monaco-hover .hover-row.status-bar .actions .action-container{margin-right:16px;cursor:pointer}.monaco-hover .hover-row.status-bar .actions .action-container .action .icon{padding-right:4px}.monaco-hover .markdown-hover .hover-contents .codicon{color:inherit;font-size:inherit;vertical-align:middle}.monaco-hover .hover-contents a.code-link,.monaco-hover .hover-contents a.code-link:hover{color:inherit}.monaco-hover .hover-contents a.code-link:before{content:\"(\"}.monaco-hover .hover-contents a.code-link:after{content:\")\"}.monaco-hover .hover-contents a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under;color:var(--vscode-textLink-foreground)}.monaco-hover .hover-contents a.code-link>span:hover{color:var(--vscode-textLink-activeForeground)}.monaco-hover .markdown-hover .hover-contents:not(.code-hover-contents):not(.html-hover-contents) span{margin-bottom:4px;display:inline-block}.monaco-hover-content .action-container a{-webkit-user-select:none;user-select:none}.monaco-hover-content .action-container.disabled{pointer-events:none;opacity:0.4;cursor:default}.monaco-icon-label{display:flex;overflow:hidden;text-overflow:ellipsis}.monaco-icon-label:before{background-size:16px;background-position:0;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;line-height:inherit !important;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;vertical-align:top;flex-shrink:0}.monaco-icon-label-container.disabled{color:var(--vscode-disabledForeground)}.monaco-icon-label>.monaco-icon-label-container{min-width:0;overflow:hidden;text-overflow:ellipsis;flex:1}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{color:inherit;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name>.label-separator{margin:0 2px;opacity:0.5}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:0.7;margin-left:0.5em;font-size:0.9em;white-space:pre}.monaco-icon-label.nowrap>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{white-space:nowrap}.vs .monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:0.95}.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-description-container>.label-description,.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{font-style:italic}.monaco-icon-label.deprecated{text-decoration:line-through;opacity:0.66}.monaco-icon-label.italic:after{font-style:italic}.monaco-icon-label.strikethrough>.monaco-icon-label-container>.monaco-icon-description-container>.label-description,.monaco-icon-label.strikethrough>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{text-decoration:line-through}.monaco-icon-label:after{opacity:0.75;font-size:90%;font-weight:600;margin:auto 16px 0 5px;text-align:center}.monaco-list:focus .selected .monaco-icon-label,.monaco-list:focus .selected .monaco-icon-label:after{color:inherit !important}.monaco-list-row.focused.selected .label-description,.monaco-list-row.selected .label-description{opacity:0.8}.monaco-inputbox{position:relative;display:block;padding:0;box-sizing:border-box;border-radius:2px;font-size:inherit}.monaco-inputbox>.ibwrapper>.input,.monaco-inputbox>.ibwrapper>.mirror{padding:4px 6px}.monaco-inputbox>.ibwrapper{position:relative;width:100%;height:100%}.monaco-inputbox>.ibwrapper>.input{display:inline-block;box-sizing:border-box;width:100%;height:100%;line-height:inherit;border:none;font-family:inherit;font-size:inherit;resize:none;color:inherit}.monaco-inputbox>.ibwrapper>input{text-overflow:ellipsis}.monaco-inputbox>.ibwrapper>textarea.input{display:block;scrollbar-width:none;outline:none}.monaco-inputbox>.ibwrapper>textarea.input::-webkit-scrollbar{display:none}.monaco-inputbox>.ibwrapper>textarea.input.empty{white-space:nowrap}.monaco-inputbox>.ibwrapper>.mirror{position:absolute;display:inline-block;width:100%;top:0;left:0;box-sizing:border-box;white-space:pre-wrap;visibility:hidden;word-wrap:break-word}.monaco-inputbox-container{text-align:right}.monaco-inputbox-container .monaco-inputbox-message{display:inline-block;overflow:hidden;text-align:left;width:100%;box-sizing:border-box;padding:0.4em;font-size:12px;line-height:17px;margin-top:-1px;word-wrap:break-word}.monaco-inputbox .monaco-action-bar{position:absolute;right:2px;top:4px}.monaco-inputbox .monaco-action-bar .action-item{margin-left:2px}.monaco-inputbox .monaco-action-bar .action-item .codicon{background-repeat:no-repeat;width:16px;height:16px}.monaco-keybinding{display:flex;align-items:center;line-height:10px}.monaco-keybinding>.monaco-keybinding-key{display:inline-block;border-style:solid;border-width:1px;border-radius:3px;vertical-align:middle;font-size:11px;padding:3px 5px;margin:0 2px}.monaco-keybinding>.monaco-keybinding-key:first-child{margin-left:0}.monaco-keybinding>.monaco-keybinding-key:last-child{margin-right:0}.monaco-keybinding>.monaco-keybinding-key-separator{display:inline-block}.monaco-keybinding>.monaco-keybinding-key-chord-separator{width:6px}.monaco-list{position:relative;height:100%;width:100%;white-space:nowrap}.monaco-list.mouse-support{user-select:none;-webkit-user-select:none}.monaco-list>.monaco-scrollable-element{height:100%}.monaco-list-rows{position:relative;width:100%;height:100%}.monaco-list.horizontal-scrolling .monaco-list-rows{width:auto;min-width:100%}.monaco-list-row{position:absolute;box-sizing:border-box;overflow:hidden;width:100%}.monaco-list.mouse-support .monaco-list-row{cursor:pointer;touch-action:none}.monaco-list-row.scrolling{display:none !important}.monaco-list.element-focused,.monaco-list.selection-multiple,.monaco-list.selection-single{outline:0 !important}.monaco-drag-image{display:inline-block;padding:1px 7px;border-radius:10px;font-size:12px;position:absolute;z-index:1000}.monaco-list-type-filter-message{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;padding:40px 1em 1em;text-align:center;white-space:normal;opacity:0.7;pointer-events:none}.monaco-list-type-filter-message:empty{display:none}.monaco-mouse-cursor-text{cursor:text}.monaco-progress-container{width:100%;height:5px;overflow:hidden}.monaco-progress-container .progress-bit{width:2%;height:5px;position:absolute;left:0;display:none}.monaco-progress-container.active .progress-bit{display:inherit}.monaco-progress-container.discrete .progress-bit{left:0;transition:width 0.1s linear}.monaco-progress-container.discrete.done .progress-bit{width:100%}.monaco-progress-container.infinite .progress-bit{animation-name:progress;animation-duration:4s;animation-iteration-count:infinite;transform:translateZ(0);animation-timing-function:linear}.monaco-progress-container.infinite.infinite-long-running .progress-bit{animation-timing-function:steps(100)}@keyframes progress{0%{transform:translateX(0) scaleX(1)}50%{transform:translateX(2500%) scaleX(3)}to{transform:translateX(4900%) scaleX(1)}}:root{--vscode-sash-size:4px;--vscode-sash-hover-size:4px}.monaco-sash{position:absolute;z-index:35;touch-action:none}.monaco-sash.disabled{pointer-events:none}.monaco-sash.mac.vertical{cursor:col-resize}.monaco-sash.vertical.minimum{cursor:e-resize}.monaco-sash.vertical.maximum{cursor:w-resize}.monaco-sash.mac.horizontal{cursor:row-resize}.monaco-sash.horizontal.minimum{cursor:s-resize}.monaco-sash.horizontal.maximum{cursor:n-resize}.monaco-sash.disabled{cursor:default !important;pointer-events:none !important}.monaco-sash.vertical{cursor:ew-resize;top:0;width:var(--vscode-sash-size);height:100%}.monaco-sash.horizontal{cursor:ns-resize;left:0;width:100%;height:var(--vscode-sash-size)}.monaco-sash:not(.disabled)>.orthogonal-drag-handle{content:\" \";height:calc(var(--vscode-sash-size) * 2);width:calc(var(--vscode-sash-size) * 2);z-index:100;display:block;cursor:all-scroll;position:absolute}.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)>.orthogonal-drag-handle.start,.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)>.orthogonal-drag-handle.end{cursor:nwse-resize}.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)>.orthogonal-drag-handle.end,.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)>.orthogonal-drag-handle.start{cursor:nesw-resize}.monaco-sash.vertical>.orthogonal-drag-handle.start{left:calc(var(--vscode-sash-size) * -0.5);top:calc(var(--vscode-sash-size) * -1)}.monaco-sash.vertical>.orthogonal-drag-handle.end{left:calc(var(--vscode-sash-size) * -0.5);bottom:calc(var(--vscode-sash-size) * -1)}.monaco-sash.horizontal>.orthogonal-drag-handle.start{top:calc(var(--vscode-sash-size) * -0.5);left:calc(var(--vscode-sash-size) * -1)}.monaco-sash.horizontal>.orthogonal-drag-handle.end{top:calc(var(--vscode-sash-size) * -0.5);right:calc(var(--vscode-sash-size) * -1)}.monaco-sash:before{content:\"\";pointer-events:none;position:absolute;width:100%;height:100%;background:transparent}.monaco-workbench:not(.reduce-motion) .monaco-sash:before{transition:background-color 0.1s ease-out}.monaco-sash.active:before,.monaco-sash.hover:before{background:var(--vscode-sash-hoverBorder)}.monaco-sash.vertical:before{width:var(--vscode-sash-hover-size);left:calc(50% - var(--vscode-sash-hover-size) / 2)}.monaco-sash.horizontal:before{height:var(--vscode-sash-hover-size);top:calc(50% - var(--vscode-sash-hover-size) / 2)}.pointer-events-disabled{pointer-events:none !important}.monaco-sash.debug{background:#0ff}.monaco-sash.debug.disabled{background:rgba(0, 255, 255, 0.2)}.monaco-sash.debug:not(.disabled)>.orthogonal-drag-handle{background:red}.monaco-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px !important}.monaco-scrollable-element>.visible{opacity:1;background:transparent;transition:opacity 0.1s linear;z-index:11}.monaco-scrollable-element>.invisible{opacity:0;pointer-events:none}.monaco-scrollable-element>.invisible.fade{transition:opacity 0.8s linear}.monaco-scrollable-element>.shadow{position:absolute;display:none}.monaco-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset}.monaco-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.monaco-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset}.monaco-scrollable-element>.scrollbar>.slider{background:var(--vscode-scrollbarSlider-background)}.monaco-scrollable-element>.scrollbar>.slider:hover{background:var(--vscode-scrollbarSlider-hoverBackground)}.monaco-scrollable-element>.scrollbar>.slider.active{background:var(--vscode-scrollbarSlider-activeBackground)}.monaco-select-box{width:100%;cursor:pointer;border-radius:2px}.monaco-select-box-dropdown-container{font-size:13px;font-weight:400;text-transform:none}.monaco-action-bar .action-item.select-container{cursor:default}.monaco-action-bar .action-item .monaco-select-box{cursor:pointer;min-width:100px;min-height:18px;padding:2px 23px 2px 8px}.mac .monaco-action-bar .action-item .monaco-select-box{font-size:11px;border-radius:5px}.monaco-select-box-dropdown-padding{--dropdown-padding-top:1px;--dropdown-padding-bottom:1px}.hc-black .monaco-select-box-dropdown-padding,.hc-light .monaco-select-box-dropdown-padding{--dropdown-padding-top:3px;--dropdown-padding-bottom:4px}.monaco-select-box-dropdown-container{display:none;box-sizing:border-box}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown *{margin:0}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown a:focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown code{line-height:15px;font-family:var(--monaco-monospace-font)}.monaco-select-box-dropdown-container.visible{display:flex;flex-direction:column;text-align:left;width:1px;overflow:hidden;border-bottom-left-radius:3px;border-bottom-right-radius:3px}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container{flex:0 0 auto;align-self:flex-start;padding-top:var(--dropdown-padding-top);padding-bottom:var(--dropdown-padding-bottom);padding-left:1px;padding-right:1px;width:100%;overflow:hidden;box-sizing:border-box}.monaco-select-box-dropdown-container>.select-box-details-pane{padding:5px}.hc-black .monaco-select-box-dropdown-container>.select-box-dropdown-list-container{padding-top:var(--dropdown-padding-top);padding-bottom:var(--dropdown-padding-bottom)}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row{cursor:pointer}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-text{text-overflow:ellipsis;overflow:hidden;padding-left:3.5px;white-space:nowrap;float:left}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-detail{text-overflow:ellipsis;overflow:hidden;padding-left:3.5px;white-space:nowrap;float:left;opacity:0.7}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-decorator-right{text-overflow:ellipsis;overflow:hidden;padding-right:10px;white-space:nowrap;float:right}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.visually-hidden{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control{flex:1 1 auto;align-self:flex-start;opacity:0}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control>.width-control-div{overflow:hidden;max-height:0}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control>.width-control-div>.option-text-width-control{padding-left:4px;padding-right:8px;white-space:nowrap}.monaco-split-view2{position:relative;width:100%;height:100%}.monaco-split-view2>.sash-container{position:absolute;width:100%;height:100%;pointer-events:none}.monaco-split-view2>.sash-container>.monaco-sash{pointer-events:auto}.monaco-split-view2>.monaco-scrollable-element{width:100%;height:100%}.monaco-split-view2>.monaco-scrollable-element>.split-view-container{width:100%;height:100%;white-space:nowrap;position:relative}.monaco-split-view2>.monaco-scrollable-element>.split-view-container>.split-view-view{white-space:normal;position:absolute}.monaco-split-view2>.monaco-scrollable-element>.split-view-container>.split-view-view:not(.visible){display:none}.monaco-split-view2.vertical>.monaco-scrollable-element>.split-view-container>.split-view-view{width:100%}.monaco-split-view2.horizontal>.monaco-scrollable-element>.split-view-container>.split-view-view{height:100%}.monaco-split-view2.separator-border>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{content:\" \";position:absolute;top:0;left:0;z-index:5;pointer-events:none;background-color:var(--separator-border)}.monaco-split-view2.separator-border.horizontal>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{height:100%;width:1px}.monaco-split-view2.separator-border.vertical>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{height:1px;width:100%}.monaco-table{display:flex;flex-direction:column;position:relative;height:100%;width:100%;white-space:nowrap;overflow:hidden}.monaco-table>.monaco-split-view2{border-bottom:1px solid transparent}.monaco-table>.monaco-list{flex:1}.monaco-table-tr{display:flex;height:100%}.monaco-table-th{width:100%;height:100%;font-weight:700;overflow:hidden;text-overflow:ellipsis}.monaco-table-td,.monaco-table-th{box-sizing:border-box;flex-shrink:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.monaco-table>.monaco-split-view2 .monaco-sash.vertical:before{content:\"\";position:absolute;left:calc(var(--vscode-sash-size) / 2);width:0;border-left:1px solid transparent}.monaco-workbench:not(.reduce-motion) .monaco-table>.monaco-split-view2,.monaco-workbench:not(.reduce-motion) .monaco-table>.monaco-split-view2 .monaco-sash.vertical:before{transition:border-color 0.2s ease-out}.monaco-custom-toggle{margin-left:2px;float:left;cursor:pointer;overflow:hidden;width:20px;height:20px;border-radius:3px;border:1px solid transparent;padding:1px;box-sizing:border-box;user-select:none;-webkit-user-select:none}.monaco-custom-toggle:hover{background-color:var(--vscode-inputOption-hoverBackground)}.hc-black .monaco-custom-toggle:hover,.hc-light .monaco-custom-toggle:hover{border:1px dashed var(--vscode-focusBorder)}.hc-black .monaco-custom-toggle,.hc-black .monaco-custom-toggle:hover,.hc-light .monaco-custom-toggle,.hc-light .monaco-custom-toggle:hover{background:none}.monaco-custom-toggle.monaco-checkbox{height:18px;width:18px;border:1px solid transparent;border-radius:3px;margin-right:9px;margin-left:0;padding:0;opacity:1;background-size:16px !important}.monaco-custom-toggle.monaco-checkbox:not(.checked):before{visibility:hidden}.monaco-toolbar{height:100%}.monaco-toolbar .toolbar-toggle-more{display:inline-block;padding:0}.monaco-tl-row{display:flex;height:100%;align-items:center;position:relative}.monaco-tl-row.disabled{cursor:default}.monaco-tl-indent{height:100%;position:absolute;top:0;left:16px;pointer-events:none}.hide-arrows .monaco-tl-indent{left:12px}.monaco-tl-indent>.indent-guide{display:inline-block;box-sizing:border-box;height:100%;border-left:1px solid transparent}.monaco-workbench:not(.reduce-motion) .monaco-tl-indent>.indent-guide{transition:border-color 0.1s linear}.monaco-tl-contents,.monaco-tl-twistie{height:100%}.monaco-tl-twistie{font-size:10px;text-align:right;padding-right:6px;flex-shrink:0;width:16px;display:flex !important;align-items:center;justify-content:center;transform:translateX(3px)}.monaco-tl-contents{flex:1;overflow:hidden}.monaco-tl-twistie:before{border-radius:20px}.monaco-tl-twistie.collapsed:before{transform:rotate(-90deg)}.monaco-tl-twistie.codicon-tree-item-loading:before{animation:codicon-spin 1.25s steps(30) infinite}.monaco-tree-type-filter{position:absolute;top:0;display:flex;padding:3px;max-width:200px;z-index:100;margin:0 6px;border:1px solid var(--vscode-widget-border);border-bottom-left-radius:4px;border-bottom-right-radius:4px}.monaco-workbench:not(.reduce-motion) .monaco-tree-type-filter{transition:top 0.3s}.monaco-tree-type-filter.disabled{top:-40px !important}.monaco-tree-type-filter-grab{display:flex !important;align-items:center;justify-content:center;cursor:grab;margin-right:2px}.monaco-tree-type-filter-grab.grabbing{cursor:grabbing}.monaco-tree-type-filter-input{flex:1}.monaco-tree-type-filter-input .monaco-inputbox{height:23px}.monaco-tree-type-filter-input .monaco-inputbox>.ibwrapper>.input,.monaco-tree-type-filter-input .monaco-inputbox>.ibwrapper>.mirror{padding:2px 4px}.monaco-tree-type-filter-input .monaco-findInput>.controls{top:2px}.monaco-tree-type-filter-actionbar{margin-left:4px}.monaco-tree-type-filter-actionbar .monaco-action-bar .action-label{padding:2px}.monaco-editor .inputarea{min-width:0;min-height:0;margin:0;padding:0;position:absolute;outline:none !important;resize:none;border:none;overflow:hidden;color:transparent;background-color:transparent;z-index:-10}.monaco-editor .inputarea.ime-input{z-index:10;caret-color:var(--vscode-editorCursor-foreground);color:var(--vscode-editor-foreground)}.monaco-editor .blockDecorations-container{position:absolute;top:0;pointer-events:none}.monaco-editor .blockDecorations-block{position:absolute;box-sizing:border-box}.monaco-editor .margin-view-overlays .current-line,.monaco-editor .view-overlays .current-line{display:block;position:absolute;left:0;top:0;box-sizing:border-box}.monaco-editor .margin-view-overlays .current-line.current-line-margin.current-line-margin-both{border-right:0}.monaco-editor .lines-content .cdr{position:absolute}.monaco-editor .glyph-margin{position:absolute;top:0}.monaco-editor .glyph-margin-widgets .cgmr{position:absolute;display:flex;align-items:center;justify-content:center}.monaco-editor .glyph-margin-widgets .cgmr.codicon-modifier-spin:before{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.monaco-editor .lines-content .core-guide{position:absolute;box-sizing:border-box}.monaco-editor .margin-view-overlays .line-numbers{font-variant-numeric:tabular-nums;position:absolute;text-align:right;display:inline-block;vertical-align:middle;box-sizing:border-box;cursor:default;height:100%}.monaco-editor .relative-current-line-number{text-align:left;display:inline-block;width:100%}.monaco-editor .margin-view-overlays .line-numbers.lh-odd{margin-top:1px}.monaco-editor .line-numbers{color:var(--vscode-editorLineNumber-foreground)}.monaco-editor .line-numbers.active-line-number{color:var(--vscode-editorLineNumber-activeForeground)}.mtkcontrol{color:#fff !important;background:#960000 !important}.mtkoverflow{background-color:var(--vscode-button-background, var(--vscode-editor-background));color:var(--vscode-button-foreground, var(--vscode-editor-foreground));border:1px solid var(--vscode-contrastBorder);border-radius:2px;padding:4px;cursor:pointer}.mtkoverflow:hover{background-color:var(--vscode-button-hoverBackground)}.monaco-editor.no-user-select .lines-content,.monaco-editor.no-user-select .view-line,.monaco-editor.no-user-select .view-lines{user-select:none;-webkit-user-select:none}.monaco-editor.mac .lines-content:hover,.monaco-editor.mac .view-line:hover,.monaco-editor.mac .view-lines:hover{user-select:text;-webkit-user-select:text;-ms-user-select:text}.monaco-editor.enable-user-select{user-select:initial;-webkit-user-select:initial}.monaco-editor .view-lines{white-space:nowrap}.monaco-editor .view-line{position:absolute;width:100%}.monaco-editor .mtkw,.monaco-editor .mtkz{color:var(--vscode-editorWhitespace-foreground) !important}.monaco-editor .mtkz{display:inline-block}.monaco-editor .lines-decorations{position:absolute;top:0;background:#fff}.monaco-editor .margin-view-overlays .cldr{position:absolute;height:100%}.monaco-editor .margin{background-color:var(--vscode-editorGutter-background)}.monaco-editor .margin-view-overlays .cmdr{position:absolute;left:0;width:100%;height:100%}.monaco-editor .minimap.slider-mouseover .minimap-slider{opacity:0;transition:opacity 0.1s linear}.monaco-editor .minimap.slider-mouseover .minimap-slider.active,.monaco-editor .minimap.slider-mouseover:hover .minimap-slider{opacity:1}.monaco-editor .minimap-slider .minimap-slider-horizontal{background:var(--vscode-minimapSlider-background)}.monaco-editor .minimap-slider:hover .minimap-slider-horizontal{background:var(--vscode-minimapSlider-hoverBackground)}.monaco-editor .minimap-slider.active .minimap-slider-horizontal{background:var(--vscode-minimapSlider-activeBackground)}.monaco-editor .minimap-shadow-visible{box-shadow:var(--vscode-scrollbar-shadow) -6px 0 6px -6px inset}.monaco-editor .minimap-shadow-hidden{position:absolute;width:0}.monaco-editor .minimap-shadow-visible{position:absolute;left:-6px;width:6px}.monaco-editor.no-minimap-shadow .minimap-shadow-visible{position:absolute;left:-1px;width:1px}.minimap.autohide{opacity:0;transition:opacity 0.5s}.minimap.autohide:hover{opacity:1}.monaco-editor .minimap{z-index:5}.monaco-editor .overlayWidgets{position:absolute;top:0;left:0}.monaco-editor .view-ruler{position:absolute;top:0;box-shadow:1px 0 0 0 var(--vscode-editorRuler-foreground) inset}.monaco-editor .scroll-decoration{position:absolute;top:0;left:0;height:6px;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-editor .lines-content .cslr{position:absolute}.monaco-editor .focused .selected-text{background-color:var(--vscode-editor-selectionBackground)}.monaco-editor .selected-text{background-color:var(--vscode-editor-inactiveSelectionBackground)}.monaco-editor .top-left-radius{border-top-left-radius:3px}.monaco-editor .bottom-left-radius{border-bottom-left-radius:3px}.monaco-editor .top-right-radius{border-top-right-radius:3px}.monaco-editor .bottom-right-radius{border-bottom-right-radius:3px}.monaco-editor.hc-black .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-black .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-black .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-black .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor.hc-light .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-light .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-light .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-light .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor .cursors-layer{position:absolute;top:0}.monaco-editor .cursors-layer>.cursor{position:absolute;overflow:hidden;box-sizing:border-box}.monaco-editor .cursors-layer.cursor-smooth-caret-animation>.cursor{transition:all 80ms}.monaco-editor .cursors-layer.cursor-block-outline-style>.cursor{background:transparent !important;border-style:solid;border-width:1px}.monaco-editor .cursors-layer.cursor-underline-style>.cursor{border-bottom-width:2px;border-bottom-style:solid;background:transparent !important}.monaco-editor .cursors-layer.cursor-underline-thin-style>.cursor{border-bottom-width:1px;border-bottom-style:solid;background:transparent !important}@keyframes monaco-cursor-smooth{0%,20%{opacity:1}60%,to{opacity:0}}@keyframes monaco-cursor-phase{0%,20%{opacity:1}90%,to{opacity:0}}@keyframes monaco-cursor-expand{0%,20%{transform:scaleY(1)}80%,to{transform:scaleY(0)}}.cursor-smooth{animation:monaco-cursor-smooth 0.5s ease-in-out 0s 20 alternate}.cursor-phase{animation:monaco-cursor-phase 0.5s ease-in-out 0s 20 alternate}.cursor-expand>.cursor{animation:monaco-cursor-expand 0.5s ease-in-out 0s 20 alternate}.monaco-editor .mwh{position:absolute;color:var(--vscode-editorWhitespace-foreground) !important}.monaco-diff-editor .diff-review-line-number{text-align:right;display:inline-block;color:var(--vscode-editorLineNumber-foreground)}.monaco-diff-editor .diff-review{position:absolute;user-select:none;-webkit-user-select:none;z-index:99}.monaco-diff-editor .diff-review-summary{padding-left:10px}.monaco-diff-editor .diff-review-shadow{position:absolute;box-shadow:var(--vscode-scrollbar-shadow) 0 -6px 6px -6px inset}.monaco-diff-editor .diff-review-row{white-space:pre}.monaco-diff-editor .diff-review-table{display:table;min-width:100%}.monaco-diff-editor .diff-review-row{display:table-row;width:100%}.monaco-diff-editor .diff-review-spacer{display:inline-block;width:10px;vertical-align:middle}.monaco-diff-editor .diff-review-spacer>.codicon{font-size:9px !important}.monaco-diff-editor .diff-review-actions{display:inline-block;position:absolute;right:10px;top:2px;z-index:100}.monaco-diff-editor .diff-review-actions .action-label{width:16px;height:16px;margin:2px 0}.monaco-editor .diff-hidden-lines-widget{width:100%}.monaco-editor .diff-hidden-lines{height:0;transform:translateY(-10px);font-size:13px;line-height:14px}.monaco-editor .diff-hidden-lines .bottom.dragging,.monaco-editor .diff-hidden-lines .top.dragging,.monaco-editor .diff-hidden-lines:not(.dragging) .bottom:hover,.monaco-editor .diff-hidden-lines:not(.dragging) .top:hover{background-color:var(--vscode-focusBorder)}.monaco-editor .diff-hidden-lines .bottom,.monaco-editor .diff-hidden-lines .top{transition:background-color 0.1s ease-out;height:4px;background-color:transparent;background-clip:padding-box;border-bottom:2px solid transparent;border-top:4px solid transparent;cursor:ns-resize}.monaco-editor .diff-hidden-lines .top{transform:translateY(4px)}.monaco-editor .diff-hidden-lines .bottom{transform:translateY(-6px)}.monaco-editor .diff-unchanged-lines{background:var(--vscode-diffEditor-unchangedCodeBackground)}.monaco-editor .noModificationsOverlay{z-index:1;background:var(--vscode-editor-background);display:flex;justify-content:center;align-items:center}.monaco-editor .diff-hidden-lines .center{background:var(--vscode-diffEditor-unchangedRegionBackground);color:var(--vscode-diffEditor-unchangedRegionForeground);overflow:hidden;display:block;text-overflow:ellipsis;white-space:nowrap;height:24px}.monaco-editor .diff-hidden-lines .center span.codicon{vertical-align:middle}.monaco-editor .diff-hidden-lines .center a:hover .codicon{cursor:pointer;color:var(--vscode-editorLink-activeForeground) !important}.monaco-editor .diff-hidden-lines div.breadcrumb-item{cursor:pointer}.monaco-editor .diff-hidden-lines div.breadcrumb-item:hover{color:var(--vscode-editorLink-activeForeground)}.monaco-editor .movedModified,.monaco-editor .movedOriginal{border:2px solid var(--vscode-diffEditor-move-border)}.monaco-editor .movedModified.currentMove,.monaco-editor .movedOriginal.currentMove{border:2px solid var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines path.currentMove{stroke:var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines path{pointer-events:visiblestroke}.monaco-diff-editor .moved-blocks-lines .arrow{fill:var(--vscode-diffEditor-move-border)}.monaco-diff-editor .moved-blocks-lines .arrow.currentMove{fill:var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines .arrow-rectangle{fill:var(--vscode-editor-background)}.monaco-diff-editor .moved-blocks-lines{position:absolute;pointer-events:none}.monaco-diff-editor .moved-blocks-lines path{fill:none;stroke:var(--vscode-diffEditor-move-border);stroke-width:2}.monaco-editor .char-delete.diff-range-empty{margin-left:-1px;border-left:3px solid var(--vscode-diffEditor-removedTextBackground)}.monaco-editor .char-insert.diff-range-empty{border-left:3px solid var(--vscode-diffEditor-insertedTextBackground)}.monaco-editor .fold-unchanged{cursor:pointer}.monaco-diff-editor .diff-moved-code-block{display:flex;justify-content:flex-end;margin-top:-4px}.monaco-diff-editor .diff-moved-code-block .action-bar .action-label.codicon{width:12px;height:12px;font-size:12px}.monaco-diff-editor .diffOverview{z-index:9}.monaco-diff-editor .diffOverview .diffViewport{z-index:10}.monaco-diff-editor.vs .diffOverview{background:rgba(0, 0, 0, 0.03)}.monaco-diff-editor.vs-dark .diffOverview{background:rgba(255, 255, 255, 0.01)}.monaco-scrollable-element.modified-in-monaco-diff-editor.vs-dark .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.vs .scrollbar{background:transparent}.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-black .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-light .scrollbar{background:none}.monaco-scrollable-element.modified-in-monaco-diff-editor .slider{z-index:10}.modified-in-monaco-diff-editor .slider.active{background:rgba(171, 171, 171, 0.4)}.modified-in-monaco-diff-editor.hc-black .slider.active,.modified-in-monaco-diff-editor.hc-light .slider.active{background:none}.monaco-diff-editor .delete-sign,.monaco-diff-editor .insert-sign,.monaco-editor .delete-sign,.monaco-editor .insert-sign{font-size:11px !important;opacity:0.7 !important;display:flex !important;align-items:center}.monaco-diff-editor.hc-black .delete-sign,.monaco-diff-editor.hc-black .insert-sign,.monaco-diff-editor.hc-light .delete-sign,.monaco-diff-editor.hc-light .insert-sign,.monaco-editor.hc-black .delete-sign,.monaco-editor.hc-black .insert-sign,.monaco-editor.hc-light .delete-sign,.monaco-editor.hc-light .insert-sign{opacity:1}.monaco-editor .inline-added-margin-view-zone,.monaco-editor .inline-deleted-margin-view-zone{text-align:right}.monaco-editor .arrow-revert-change{z-index:10;position:absolute}.monaco-editor .arrow-revert-change:hover{cursor:pointer}.monaco-editor .view-zones .view-lines .view-line span{display:inline-block}.monaco-editor .margin-view-zones .lightbulb-glyph:hover{cursor:pointer}.monaco-diff-editor .char-insert,.monaco-editor .char-insert{background-color:var(--vscode-diffEditor-insertedTextBackground)}.monaco-diff-editor .line-insert,.monaco-editor .line-insert{background-color:var(--vscode-diffEditor-insertedLineBackground, var(--vscode-diffEditor-insertedTextBackground))}.monaco-editor .char-insert,.monaco-editor .line-insert{box-sizing:border-box;border:1px solid var(--vscode-diffEditor-insertedTextBorder)}.monaco-editor.hc-black .char-insert,.monaco-editor.hc-black .line-insert,.monaco-editor.hc-light .char-insert,.monaco-editor.hc-light .line-insert{border-style:dashed}.monaco-editor .char-delete,.monaco-editor .line-delete{box-sizing:border-box;border:1px solid var(--vscode-diffEditor-removedTextBorder)}.monaco-editor.hc-black .char-delete,.monaco-editor.hc-black .line-delete,.monaco-editor.hc-light .char-delete,.monaco-editor.hc-light .line-delete{border-style:dashed}.monaco-diff-editor .gutter-insert,.monaco-editor .gutter-insert,.monaco-editor .inline-added-margin-view-zone{background-color:var(--vscode-diffEditorGutter-insertedLineBackground, var(--vscode-diffEditor-insertedLineBackground), var(--vscode-diffEditor-insertedTextBackground))}.monaco-diff-editor .char-delete,.monaco-editor .char-delete{background-color:var(--vscode-diffEditor-removedTextBackground)}.monaco-diff-editor .line-delete,.monaco-editor .line-delete{background-color:var(--vscode-diffEditor-removedLineBackground, var(--vscode-diffEditor-removedTextBackground))}.monaco-diff-editor .gutter-delete,.monaco-editor .gutter-delete,.monaco-editor .inline-deleted-margin-view-zone{background-color:var(--vscode-diffEditorGutter-removedLineBackground, var(--vscode-diffEditor-removedLineBackground), var(--vscode-diffEditor-removedTextBackground))}.monaco-diff-editor.side-by-side .editor.modified{box-shadow:-6px 0 5px -5px var(--vscode-scrollbar-shadow);border-left:1px solid var(--vscode-diffEditor-border)}.monaco-diff-editor .diffViewport{background:var(--vscode-scrollbarSlider-background)}.monaco-diff-editor .diffViewport:hover{background:var(--vscode-scrollbarSlider-hoverBackground)}.monaco-diff-editor .diffViewport:active{background:var(--vscode-scrollbarSlider-activeBackground)}.monaco-editor .diagonal-fill{background-image:linear-gradient(-45deg, var(--vscode-diffEditor-diagonalFill) 12.5%, transparent 0, transparent 50%, var(--vscode-diffEditor-diagonalFill) 0, var(--vscode-diffEditor-diagonalFill) 62.5%, transparent 0, transparent);background-size:8px 8px}::-ms-clear{display:none}.monaco-editor .editor-widget input{color:inherit}.monaco-editor{position:relative;overflow:visible;-webkit-text-size-adjust:100%;color:var(--vscode-editor-foreground)}.monaco-editor,.monaco-editor-background{background-color:var(--vscode-editor-background)}.monaco-editor .rangeHighlight{background-color:var(--vscode-editor-rangeHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-rangeHighlightBorder)}.monaco-editor.hc-black .rangeHighlight,.monaco-editor.hc-light .rangeHighlight{border-style:dotted}.monaco-editor .symbolHighlight{background-color:var(--vscode-editor-symbolHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-symbolHighlightBorder)}.monaco-editor.hc-black .symbolHighlight,.monaco-editor.hc-light .symbolHighlight{border-style:dotted}.monaco-editor .overflow-guard{position:relative;overflow:hidden}.monaco-editor .view-overlays{position:absolute;top:0}.monaco-editor .squiggly-error{border-bottom:4px double var(--vscode-editorError-border)}.monaco-editor .squiggly-error:before{display:block;content:\"\";width:100%;height:100%;background:var(--vscode-editorError-background)}.monaco-editor .squiggly-warning{border-bottom:4px double var(--vscode-editorWarning-border)}.monaco-editor .squiggly-warning:before{display:block;content:\"\";width:100%;height:100%;background:var(--vscode-editorWarning-background)}.monaco-editor .squiggly-info{border-bottom:4px double var(--vscode-editorInfo-border)}.monaco-editor .squiggly-info:before{display:block;content:\"\";width:100%;height:100%;background:var(--vscode-editorInfo-background)}.monaco-editor .squiggly-hint{border-bottom:2px dotted var(--vscode-editorHint-border)}.monaco-editor.showUnused .squiggly-unnecessary{border-bottom:2px dashed var(--vscode-editorUnnecessaryCode-border)}.monaco-editor.showDeprecated .squiggly-inline-deprecated{text-decoration:line-through;text-decoration-color:var(--vscode-editor-foreground, inherit)}.monaco-editor .selection-anchor{background-color:#007acc;width:2px !important}.monaco-editor .bracket-match{box-sizing:border-box;background-color:var(--vscode-editorBracketMatch-background);border:1px solid var(--vscode-editorBracketMatch-border)}.monaco-editor .lightBulbWidget{display:flex;align-items:center;justify-content:center}.monaco-editor .lightBulbWidget:hover{cursor:pointer}.monaco-editor .lightBulbWidget.codicon-light-bulb{color:var(--vscode-editorLightBulb-foreground)}.monaco-editor .lightBulbWidget.codicon-lightbulb-autofix{color:var(--vscode-editorLightBulbAutoFix-foreground, var(--vscode-editorLightBulb-foreground))}.monaco-editor .lightBulbWidget:before{position:relative;z-index:2}.monaco-editor .lightBulbWidget:after{position:absolute;top:0;left:0;content:\"\";display:block;width:100%;height:100%;opacity:0.3;background-color:var(--vscode-editor-background);z-index:1}.monaco-editor .codelens-decoration{overflow:hidden;display:inline-block;text-overflow:ellipsis;white-space:nowrap;color:var(--vscode-editorCodeLens-foreground);line-height:var(--vscode-editorCodeLens-lineHeight);font-size:var(--vscode-editorCodeLens-fontSize);padding-right:calc(var(--vscode-editorCodeLens-fontSize) * 0.5);font-feature-settings:var(--vscode-editorCodeLens-fontFeatureSettings);font-family:var(--vscode-editorCodeLens-fontFamily), var(--vscode-editorCodeLens-fontFamilyDefault)}.monaco-editor .codelens-decoration>a,.monaco-editor .codelens-decoration>span{user-select:none;-webkit-user-select:none;white-space:nowrap;vertical-align:sub}.monaco-editor .codelens-decoration>a{text-decoration:none}.monaco-editor .codelens-decoration>a:hover{cursor:pointer}.monaco-editor .codelens-decoration>a:hover,.monaco-editor .codelens-decoration>a:hover .codicon{color:var(--vscode-editorLink-activeForeground) !important}.monaco-editor .codelens-decoration .codicon{vertical-align:middle;color:currentColor !important;color:var(--vscode-editorCodeLens-foreground);line-height:var(--vscode-editorCodeLens-lineHeight);font-size:var(--vscode-editorCodeLens-fontSize)}.monaco-editor .codelens-decoration>a:hover .codicon:before{cursor:pointer}@keyframes fadein{0%{opacity:0;visibility:visible}to{opacity:1}}.monaco-editor .codelens-decoration.fadein{animation:fadein 0.1s linear}.colorpicker-widget{height:190px;user-select:none;-webkit-user-select:none}.colorpicker-color-decoration,.hc-light .colorpicker-color-decoration{border:0.1em solid #000;box-sizing:border-box;margin:0.1em 0.2em 0;width:0.8em;height:0.8em;line-height:0.8em;display:inline-block;cursor:pointer}.hc-black .colorpicker-color-decoration,.vs-dark .colorpicker-color-decoration{border:0.1em solid #eee}.colorpicker-header{display:flex;height:24px;position:relative;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=);background-size:9px 9px;image-rendering:pixelated}.colorpicker-header .picked-color{width:240px;display:flex;align-items:center;justify-content:center;line-height:24px;cursor:pointer;color:#fff;flex:1;white-space:nowrap;overflow:hidden}.colorpicker-header .picked-color .picked-color-presentation{white-space:nowrap;margin-left:5px;margin-right:5px}.colorpicker-header .picked-color .codicon{color:inherit;font-size:14px}.colorpicker-header .picked-color.light{color:#000}.colorpicker-header .original-color{width:74px;z-index:inherit;cursor:pointer}.standalone-colorpicker{color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.colorpicker-header.standalone-colorpicker{border-bottom:none}.colorpicker-header .close-button{cursor:pointer;background-color:var(--vscode-editorHoverWidget-background);border-left:1px solid var(--vscode-editorHoverWidget-border)}.colorpicker-header .close-button-inner-div{width:100%;height:100%;text-align:center}.colorpicker-header .close-button-inner-div:hover{background-color:var(--vscode-toolbar-hoverBackground)}.colorpicker-header .close-icon{padding:3px}.colorpicker-body{display:flex;padding:8px;position:relative}.colorpicker-body .saturation-wrap{overflow:hidden;height:150px;position:relative;min-width:220px;flex:1}.colorpicker-body .saturation-box{height:150px;position:absolute}.colorpicker-body .saturation-selection{width:9px;height:9px;margin:-5px 0 0 -5px;border:1px solid #fff;border-radius:100%;box-shadow:0 0 2px rgba(0, 0, 0, 0.8);position:absolute}.colorpicker-body .strip{width:25px;height:150px}.colorpicker-body .standalone-strip{width:25px;height:122px}.colorpicker-body .hue-strip{position:relative;margin-left:8px;cursor:grab;background:linear-gradient(180deg, red 0, #ff0 17%, #0f0 33%, #0ff 50%, #00f 67%, #f0f 83%, red)}.colorpicker-body .opacity-strip{position:relative;margin-left:8px;cursor:grab;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=);background-size:9px 9px;image-rendering:pixelated}.colorpicker-body .strip.grabbing{cursor:grabbing}.colorpicker-body .slider{position:absolute;top:0;left:-2px;width:calc(100% + 4px);height:4px;box-sizing:border-box;border:1px solid rgba(255, 255, 255, 0.71);box-shadow:0 0 1px rgba(0, 0, 0, 0.85)}.colorpicker-body .strip .overlay{height:150px;pointer-events:none}.colorpicker-body .standalone-strip .standalone-overlay{height:122px;pointer-events:none}.standalone-colorpicker-body{display:block;border:1px solid transparent;border-bottom:1px solid var(--vscode-editorHoverWidget-border);overflow:hidden}.colorpicker-body .insert-button{position:absolute;height:20px;width:58px;padding:0;right:8px;bottom:8px;background:var(--vscode-button-background);color:var(--vscode-button-foreground);border-radius:2px;border:none;cursor:pointer}.colorpicker-body .insert-button:hover{background:var(--vscode-button-hoverBackground)}.monaco-editor.hc-light .dnd-target,.monaco-editor.vs .dnd-target{border-right:2px dotted #000;color:#fff}.monaco-editor.vs-dark .dnd-target{border-right:2px dotted #aeafad;color:#51504f}.monaco-editor.hc-black .dnd-target{border-right:2px dotted #fff;color:#000}.monaco-editor.hc-black.mac.mouse-default .view-lines,.monaco-editor.hc-light.mac.mouse-default .view-lines,.monaco-editor.mouse-default .view-lines,.monaco-editor.vs-dark.mac.mouse-default .view-lines{cursor:default}.monaco-editor.hc-black.mac.mouse-copy .view-lines,.monaco-editor.hc-light.mac.mouse-copy .view-lines,.monaco-editor.mouse-copy .view-lines,.monaco-editor.vs-dark.mac.mouse-copy .view-lines{cursor:copy}.post-edit-widget{box-shadow:0 0 8px 2px var(--vscode-widget-shadow);border:1px solid var(--vscode-widget-border, transparent);border-radius:4px;background-color:var(--vscode-editorWidget-background);overflow:hidden}.post-edit-widget .monaco-button{padding:2px;border:none;border-radius:0}.post-edit-widget .monaco-button:hover{background-color:var(--vscode-button-secondaryHoverBackground) !important}.post-edit-widget .monaco-button .codicon{margin:0}.monaco-editor .findOptionsWidget{background-color:var(--vscode-editorWidget-background);color:var(--vscode-editorWidget-foreground);box-shadow:0 0 8px 2px var(--vscode-widget-shadow);border:2px solid var(--vscode-contrastBorder)}.monaco-editor .find-widget{position:absolute;z-index:35;height:33px;overflow:hidden;line-height:19px;transition:transform 0.2s linear;padding:0 4px;box-sizing:border-box;transform:translateY(calc(-100% - 10px));border-bottom-left-radius:4px;border-bottom-right-radius:4px}.monaco-workbench.reduce-motion .monaco-editor .find-widget{transition:transform 0ms linear}.monaco-editor .find-widget textarea{margin:0}.monaco-editor .find-widget.hiddenEditor{display:none}.monaco-editor .find-widget.replaceToggled>.replace-part{display:flex}.monaco-editor .find-widget.visible{transform:translateY(0)}.monaco-editor .find-widget .monaco-inputbox.synthetic-focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px}.monaco-editor .find-widget .monaco-inputbox .input{background-color:transparent;min-height:0}.monaco-editor .find-widget .monaco-findInput .input{font-size:13px}.monaco-editor .find-widget>.find-part,.monaco-editor .find-widget>.replace-part{margin:3px 25px 0 17px;font-size:12px;display:flex}.monaco-editor .find-widget>.find-part .monaco-inputbox,.monaco-editor .find-widget>.replace-part .monaco-inputbox{min-height:25px}.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.mirror{padding-right:22px}.monaco-editor .find-widget>.find-part .monaco-inputbox>.ibwrapper>.input,.monaco-editor .find-widget>.find-part .monaco-inputbox>.ibwrapper>.mirror,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.input,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.mirror{padding-top:2px;padding-bottom:2px}.monaco-editor .find-widget>.find-part .find-actions,.monaco-editor .find-widget>.replace-part .replace-actions{height:25px;display:flex;align-items:center}.monaco-editor .find-widget .monaco-findInput{vertical-align:middle;display:flex;flex:1}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element{width:100%}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element .scrollbar.vertical{opacity:0}.monaco-editor .find-widget .matchesCount{display:flex;flex:initial;margin:0 0 0 3px;padding:2px 0 0 2px;height:25px;vertical-align:middle;box-sizing:border-box;text-align:center;line-height:23px}.monaco-editor .find-widget .button{width:16px;height:16px;padding:3px;border-radius:5px;flex:initial;margin-left:3px;background-position:50%;background-repeat:no-repeat;cursor:pointer;display:flex;align-items:center;justify-content:center}.monaco-editor .find-widget .codicon-find-selection{width:22px;height:22px;padding:3px;border-radius:5px}.monaco-editor .find-widget .button.left{margin-left:0;margin-right:3px}.monaco-editor .find-widget .button.wide{width:auto;padding:1px 6px;top:-1px}.monaco-editor .find-widget .button.toggle{position:absolute;top:0;left:3px;width:18px;height:100%;border-radius:0;box-sizing:border-box}.monaco-editor .find-widget .button.toggle.disabled{display:none}.monaco-editor .find-widget .disabled{color:var(--vscode-disabledForeground);cursor:default}.monaco-editor .find-widget>.replace-part{display:none}.monaco-editor .find-widget>.replace-part>.monaco-findInput{position:relative;display:flex;vertical-align:middle;flex:auto;flex-grow:0;flex-shrink:0}.monaco-editor .find-widget>.replace-part>.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.monaco-editor .find-widget.reduced-find-widget .matchesCount{display:none}.monaco-editor .find-widget.narrow-find-widget{max-width:257px !important}.monaco-editor .find-widget.collapsed-find-widget{max-width:170px !important}.monaco-editor .find-widget.collapsed-find-widget .button.next,.monaco-editor .find-widget.collapsed-find-widget .button.previous,.monaco-editor .find-widget.collapsed-find-widget .button.replace,.monaco-editor .find-widget.collapsed-find-widget .button.replace-all,.monaco-editor .find-widget.collapsed-find-widget>.find-part .monaco-findInput .controls{display:none}.monaco-editor .findMatch{animation-duration:0;animation-name:inherit !important}.monaco-editor .find-widget .monaco-sash{left:0 !important}.monaco-editor.hc-black .find-widget .button:before{position:relative;top:1px;left:2px}.monaco-editor .find-widget>.button.codicon-widget-close{position:absolute;top:5px;right:4px}.monaco-editor .margin-view-overlays .codicon-folding-collapsed,.monaco-editor .margin-view-overlays .codicon-folding-expanded,.monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,.monaco-editor .margin-view-overlays .codicon-folding-manual-expanded{cursor:pointer;opacity:0;transition:opacity 0.5s;display:flex;align-items:center;justify-content:center;font-size:140%;margin-left:2px}.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-collapsed,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-expanded,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-expanded{transition:initial}.monaco-editor .margin-view-overlays .codicon.alwaysShowFoldIcons,.monaco-editor .margin-view-overlays .codicon.codicon-folding-collapsed,.monaco-editor .margin-view-overlays .codicon.codicon-folding-manual-collapsed,.monaco-editor .margin-view-overlays:hover .codicon{opacity:1}.monaco-editor .inline-folded:after{color:grey;margin:0.1em 0.2em 0;content:\"⋯\";display:inline;line-height:1em;cursor:pointer}.monaco-editor .folded-background{background-color:var(--vscode-editor-foldBackground)}.monaco-editor .cldr.codicon.codicon-folding-collapsed,.monaco-editor .cldr.codicon.codicon-folding-expanded,.monaco-editor .cldr.codicon.codicon-folding-manual-collapsed,.monaco-editor .cldr.codicon.codicon-folding-manual-expanded{color:var(--vscode-editorGutter-foldingControlForeground) !important}.monaco-editor .peekview-widget .head .peekview-title .severity-icon{display:inline-block;vertical-align:text-top;margin-right:4px}.monaco-editor .marker-widget{text-overflow:ellipsis;white-space:nowrap}.monaco-editor .marker-widget>.stale{opacity:0.6;font-style:italic}.monaco-editor .marker-widget .title{display:inline-block;padding-right:5px}.monaco-editor .marker-widget .descriptioncontainer{position:absolute;white-space:pre;user-select:text;-webkit-user-select:text;padding:8px 12px 0 20px}.monaco-editor .marker-widget .descriptioncontainer .message{display:flex;flex-direction:column}.monaco-editor .marker-widget .descriptioncontainer .message .details{padding-left:6px}.monaco-editor .marker-widget .descriptioncontainer .message .source,.monaco-editor .marker-widget .descriptioncontainer .message span.code{opacity:0.6}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link{opacity:0.6;color:inherit}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:before{content:\"(\"}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:after{content:\")\"}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under;color:var(--vscode-textLink-foreground);color:var(--vscode-textLink-activeForeground)}.monaco-editor .marker-widget .descriptioncontainer .filename{cursor:pointer}.monaco-editor .goto-definition-link{text-decoration:underline;cursor:pointer;color:var(--vscode-editorLink-activeForeground) !important}.monaco-editor .zone-widget .zone-widget-container.reference-zone-widget{border-top-width:1px;border-bottom-width:1px}.monaco-editor .reference-zone-widget .inline{display:inline-block;vertical-align:top}.monaco-editor .reference-zone-widget .messages{height:100%;width:100%;text-align:center;padding:3em 0}.monaco-editor .reference-zone-widget .ref-tree{line-height:23px;background-color:var(--vscode-peekViewResult-background);color:var(--vscode-peekViewResult-lineForeground)}.monaco-editor .reference-zone-widget .ref-tree .reference{text-overflow:ellipsis;overflow:hidden}.monaco-editor .reference-zone-widget .ref-tree .reference-file{display:inline-flex;width:100%;height:100%;color:var(--vscode-peekViewResult-fileForeground)}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .selected .reference-file{color:inherit !important}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .monaco-list-rows>.monaco-list-row.selected:not(.highlighted){background-color:var(--vscode-peekViewResult-selectionBackground);color:var(--vscode-peekViewResult-selectionForeground) !important}.monaco-editor .reference-zone-widget .ref-tree .reference-file .count{margin-right:12px;margin-left:auto}.monaco-editor .reference-zone-widget .ref-tree .referenceMatch .highlight{background-color:var(--vscode-peekViewResult-matchHighlightBackground)}.monaco-editor .reference-zone-widget .preview .reference-decoration{background-color:var(--vscode-peekViewEditor-matchHighlightBackground);border:2px solid var(--vscode-peekViewEditor-matchHighlightBorder);box-sizing:border-box}.monaco-editor .reference-zone-widget .preview .monaco-editor .inputarea.ime-input,.monaco-editor .reference-zone-widget .preview .monaco-editor .monaco-editor-background{background-color:var(--vscode-peekViewEditor-background)}.monaco-editor .reference-zone-widget .preview .monaco-editor .margin{background-color:var(--vscode-peekViewEditorGutter-background)}.monaco-editor.hc-black .reference-zone-widget .ref-tree .reference-file,.monaco-editor.hc-light .reference-zone-widget .ref-tree .reference-file{font-weight:700}.monaco-editor.hc-black .reference-zone-widget .ref-tree .referenceMatch .highlight,.monaco-editor.hc-light .reference-zone-widget .ref-tree .referenceMatch .highlight{border:1px dotted var(--vscode-contrastActiveBorder, transparent);box-sizing:border-box}.monaco-editor .hoverHighlight{background-color:var(--vscode-editor-hoverHighlightBackground)}.monaco-editor .monaco-hover{color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border);border-radius:3px}.monaco-editor .monaco-hover a{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-hover a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .monaco-hover .hover-row .actions{background-color:var(--vscode-editorHoverWidget-statusBarBackground)}.monaco-editor .monaco-hover code{background-color:var(--vscode-textCodeBlock-background)}.monaco-editor.vs .valueSetReplacement{outline:solid 2px var(--vscode-editorBracketMatch-border)}.monaco-editor .suggest-preview-additional-widget{white-space:nowrap}.monaco-editor .suggest-preview-additional-widget .content-spacer{color:transparent;white-space:pre}.monaco-editor .suggest-preview-additional-widget .button{display:inline-block;cursor:pointer;text-decoration:underline;text-underline-position:under}.monaco-editor .ghost-text-hidden{opacity:0;font-size:0}.monaco-editor .ghost-text-decoration,.monaco-editor .suggest-preview-text .ghost-text{font-style:italic}.monaco-editor .inline-completion-text-to-replace{text-decoration:underline;text-underline-position:under}.monaco-editor .ghost-text-decoration,.monaco-editor .ghost-text-decoration-preview,.monaco-editor .suggest-preview-text .ghost-text{color:var(--vscode-editorGhostText-foreground) !important;background-color:var(--vscode-editorGhostText-background);border:1px solid var(--vscode-editorGhostText-border)}.monaco-editor .inlineSuggestionsHints.withBorder{z-index:39;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .inlineSuggestionsHints a,.monaco-editor .inlineSuggestionsHints a:hover{color:var(--vscode-foreground)}.monaco-editor .inlineSuggestionsHints .keybinding{display:flex;margin-left:4px;opacity:0.6}.monaco-editor .inlineSuggestionsHints .keybinding .monaco-keybinding-key{font-size:8px;padding:2px 3px}.monaco-editor .inlineSuggestionsHints .availableSuggestionCount a{display:flex;min-width:19px;justify-content:center}.monaco-editor .inlineSuggestionStatusBarItemLabel{margin-right:2px}.inline-editor-progress-decoration{display:inline-block;width:1em;height:1em}.inline-progress-widget{display:flex !important;justify-content:center;align-items:center}.inline-progress-widget .icon{font-size:80% !important}.inline-progress-widget:hover .icon{font-size:90% !important;animation:none}.inline-progress-widget:hover .icon:before{content:\"\\ea76\"}.monaco-editor .linked-editing-decoration{background-color:var(--vscode-editor-linkedEditingBackground);min-width:1px}.monaco-editor .detected-link,.monaco-editor .detected-link-active{text-decoration:underline;text-underline-position:under}.monaco-editor .detected-link-active{cursor:pointer;color:var(--vscode-editorLink-activeForeground) !important}.monaco-editor .rendered-markdown kbd{background-color:var(--vscode-keybindingLabel-background);color:var(--vscode-keybindingLabel-foreground);border-radius:3px;border:1px solid var(--vscode-keybindingLabel-border);border-bottom-color:var(--vscode-keybindingLabel-bottomBorder);box-shadow:inset 0 -1px 0 var(--vscode-widget-shadow);vertical-align:middle;padding:1px 3px}.monaco-editor .monaco-editor-overlaymessage{padding-bottom:8px;z-index:10000}.monaco-editor .monaco-editor-overlaymessage.below{padding-bottom:0;padding-top:8px;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.monaco-editor .monaco-editor-overlaymessage.fadeIn{animation:fadeIn 0.15s ease-out}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.monaco-editor .monaco-editor-overlaymessage.fadeOut{animation:fadeOut 0.1s ease-out}.monaco-editor .monaco-editor-overlaymessage .message{padding:2px 4px;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-inputValidation-infoBorder);border-radius:3px}.monaco-editor .monaco-editor-overlaymessage .message p{margin-block:0}.monaco-editor .monaco-editor-overlaymessage .message a{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-editor-overlaymessage .message a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor.hc-black .monaco-editor-overlaymessage .message,.monaco-editor.hc-light .monaco-editor-overlaymessage .message{border-width:2px}.monaco-editor .monaco-editor-overlaymessage .anchor{width:0 !important;height:0 !important;z-index:1000;border:8px solid transparent;position:absolute;left:2px}.monaco-editor .monaco-editor-overlaymessage .anchor.top{border-bottom-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage .anchor.below{border-top-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage.below .anchor.below,.monaco-editor .monaco-editor-overlaymessage:not(.below) .anchor.top{display:none}.monaco-editor .monaco-editor-overlaymessage.below .anchor.top{display:inherit;top:-8px}.monaco-editor .parameter-hints-widget{z-index:39;display:flex;flex-direction:column;line-height:1.5em;cursor:default;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.hc-black .monaco-editor .parameter-hints-widget,.hc-light .monaco-editor .parameter-hints-widget{border-width:2px}.monaco-editor .parameter-hints-widget>.phwrapper{max-width:440px;display:flex;flex-direction:row}.monaco-editor .parameter-hints-widget.multiple{min-height:3.3em;padding:0}.monaco-editor .parameter-hints-widget.multiple .body:before{content:\"\";display:block;height:100%;position:absolute;opacity:0.5;border-left:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .parameter-hints-widget p,.monaco-editor .parameter-hints-widget ul{margin:8px 0}.monaco-editor .parameter-hints-widget .body,.monaco-editor .parameter-hints-widget .monaco-scrollable-element{display:flex;flex:1;flex-direction:column;min-height:100%}.monaco-editor .parameter-hints-widget .signature{padding:4px 5px;position:relative}.monaco-editor .parameter-hints-widget .signature.has-docs:after{content:\"\";display:block;position:absolute;left:0;width:100%;padding-top:4px;opacity:0.5;border-bottom:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .parameter-hints-widget .docs{padding:0 10px 0 5px;white-space:pre-wrap}.monaco-editor .parameter-hints-widget .docs.empty{display:none}.monaco-editor .parameter-hints-widget .docs a{color:var(--vscode-textLink-foreground)}.monaco-editor .parameter-hints-widget .docs a:hover{color:var(--vscode-textLink-activeForeground);cursor:pointer}.monaco-editor .parameter-hints-widget .docs .markdown-docs{white-space:normal}.monaco-editor .parameter-hints-widget .docs code{font-family:var(--monaco-monospace-font);border-radius:3px;padding:0 0.4em;background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .parameter-hints-widget .docs .code,.monaco-editor .parameter-hints-widget .docs .monaco-tokenized-source{white-space:pre-wrap}.monaco-editor .parameter-hints-widget .controls{display:none;flex-direction:column;align-items:center;min-width:22px;justify-content:flex-end}.monaco-editor .parameter-hints-widget.multiple .controls{display:flex;padding:0 2px}.monaco-editor .parameter-hints-widget.multiple .button{width:16px;height:16px;background-repeat:no-repeat;cursor:pointer}.monaco-editor .parameter-hints-widget .button.previous{bottom:24px}.monaco-editor .parameter-hints-widget .overloads{text-align:center;height:12px;line-height:12px;font-family:var(--monaco-monospace-font)}.monaco-editor .parameter-hints-widget .signature .parameter.active{color:var(--vscode-editorHoverWidget-highlightForeground);font-weight:700}.monaco-editor .parameter-hints-widget .documentation-parameter>.parameter{font-weight:700;margin-right:0.5em}.monaco-editor .peekview-widget .head{box-sizing:border-box;display:flex;justify-content:space-between;flex-wrap:nowrap}.monaco-editor .peekview-widget .head .peekview-title{display:flex;align-items:baseline;font-size:13px;margin-left:20px;min-width:0;text-overflow:ellipsis;overflow:hidden}.monaco-editor .peekview-widget .head .peekview-title.clickable{cursor:pointer}.monaco-editor .peekview-widget .head .peekview-title .dirname:not(:empty){font-size:0.9em;margin-left:0.5em}.monaco-editor .peekview-widget .head .peekview-title .dirname,.monaco-editor .peekview-widget .head .peekview-title .filename,.monaco-editor .peekview-widget .head .peekview-title .meta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.monaco-editor .peekview-widget .head .peekview-title .meta:not(:empty):before{content:\"-\";padding:0 0.3em}.monaco-editor .peekview-widget .head .peekview-actions{flex:1;text-align:right;padding-right:2px}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar{display:inline-block}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar,.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar>.actions-container{height:100%}.monaco-editor .peekview-widget>.body{border-top:1px solid;position:relative}.monaco-editor .peekview-widget .head .peekview-title .codicon{margin-right:4px;align-self:center}.monaco-editor .peekview-widget .monaco-list .monaco-list-row.focused .codicon{color:inherit !important}.monaco-editor .rename-box{z-index:100;color:inherit;border-radius:4px}.monaco-editor .rename-box.preview{padding:4px 4px 0}.monaco-editor .rename-box .rename-input{padding:3px;border-radius:2px}.monaco-editor .rename-box .rename-label{display:none;opacity:0.8}.monaco-editor .rename-box.preview .rename-label{display:inherit}.monaco-editor .snippet-placeholder{min-width:2px;outline-style:solid;outline-width:1px;background-color:var(--vscode-editor-snippetTabstopHighlightBackground, transparent);outline-color:var(--vscode-editor-snippetTabstopHighlightBorder, transparent)}.monaco-editor .finish-snippet-placeholder{outline-style:solid;outline-width:1px;background-color:var(--vscode-editor-snippetFinalTabstopHighlightBackground, transparent);outline-color:var(--vscode-editor-snippetFinalTabstopHighlightBorder, transparent)}.monaco-editor .sticky-widget{overflow:hidden}.monaco-editor .sticky-widget-line-numbers{float:left;background-color:inherit}.monaco-editor .sticky-widget-lines-scrollable{display:inline-block;position:absolute;overflow:hidden;width:var(--vscode-editorStickyScroll-scrollableWidth);background-color:inherit}.monaco-editor .sticky-widget-lines{position:absolute;background-color:inherit}.monaco-editor .sticky-line-content,.monaco-editor .sticky-line-number{color:var(--vscode-editorLineNumber-foreground);white-space:nowrap;display:inline-block;position:absolute;background-color:inherit}.monaco-editor .sticky-line-number .codicon-folding-collapsed,.monaco-editor .sticky-line-number .codicon-folding-expanded{float:right;transition:var(--vscode-editorStickyScroll-foldingOpacityTransition)}.monaco-editor .sticky-line-content{width:var(--vscode-editorStickyScroll-scrollableWidth);background-color:inherit;white-space:nowrap}.monaco-editor .sticky-line-number-inner{display:inline-block;text-align:right}.monaco-editor.hc-black .sticky-widget,.monaco-editor.hc-light .sticky-widget{border-bottom:1px solid var(--vscode-contrastBorder)}.monaco-editor .sticky-line-content:hover{background-color:var(--vscode-editorStickyScrollHover-background);cursor:pointer}.monaco-editor .sticky-widget{width:100%;box-shadow:var(--vscode-scrollbar-shadow) 0 3px 2px -2px;z-index:4;background-color:var(--vscode-editorStickyScroll-background)}.monaco-editor .sticky-widget.peek{background-color:var(--vscode-peekViewEditorStickyScroll-background)}.monaco-editor .suggest-widget{width:430px;z-index:40;display:flex;flex-direction:column;border-radius:3px}.monaco-editor .suggest-widget.message{flex-direction:row;align-items:center}.monaco-editor .suggest-details,.monaco-editor .suggest-widget{flex:0 1 auto;width:100%;border:1px solid var(--vscode-editorSuggestWidget-border);background-color:var(--vscode-editorSuggestWidget-background)}.monaco-editor.hc-black .suggest-details,.monaco-editor.hc-black .suggest-widget,.monaco-editor.hc-light .suggest-details,.monaco-editor.hc-light .suggest-widget{border-width:2px}.monaco-editor .suggest-widget .suggest-status-bar{box-sizing:border-box;display:none;flex-flow:row nowrap;justify-content:space-between;width:100%;font-size:80%;padding:0 4px;border-top:1px solid var(--vscode-editorSuggestWidget-border);overflow:hidden}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar{display:flex}.monaco-editor .suggest-widget .suggest-status-bar .left{padding-right:8px}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-label{color:var(--vscode-editorSuggestWidgetStatus-foreground)}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label{margin-right:0}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label:after{content:\", \";margin-right:0.3em}.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row.focused.string-label>.contents>.main>.right>.readMore,.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget.with-status-bar:not(.docs-side) .monaco-list .monaco-list-row:hover>.contents>.main>.right.can-expand-details>.details-label{width:100%}.monaco-editor .suggest-widget>.message{padding-left:22px}.monaco-editor .suggest-widget>.tree{height:100%;width:100%}.monaco-editor .suggest-widget .monaco-list{user-select:none;-webkit-user-select:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row{display:flex;-mox-box-sizing:border-box;box-sizing:border-box;padding-right:10px;background-repeat:no-repeat;background-position:2px 2px;white-space:nowrap;cursor:pointer;touch-action:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused{color:var(--vscode-editorSuggestWidget-selectedForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused .codicon{color:var(--vscode-editorSuggestWidget-selectedIconForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents{flex:1;height:100%;overflow:hidden;padding-left:2px}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main{display:flex;overflow:hidden;text-overflow:ellipsis;white-space:pre;justify-content:space-between}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{display:flex}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.focused)>.contents>.main .monaco-icon-label{color:var(--vscode-editorSuggestWidget-foreground)}.monaco-editor .suggest-widget:not(.frozen) .monaco-highlighted-label .highlight{font-weight:700}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main .monaco-highlighted-label .highlight{color:var(--vscode-editorSuggestWidget-highlightForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused>.contents>.main .monaco-highlighted-label .highlight{color:var(--vscode-editorSuggestWidget-focusHighlightForeground)}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:before{color:inherit;opacity:1;font-size:14px;cursor:pointer}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close{position:absolute;top:6px;right:2px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close:hover,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:hover{opacity:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{opacity:0.7}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.signature-label{overflow:hidden;text-overflow:ellipsis;opacity:0.6}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.qualifier-label{margin-left:12px;opacity:0.4;font-size:85%;line-height:normal;text-overflow:ellipsis;overflow:hidden;align-self:center}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{font-size:85%;margin-left:1.1em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label>.monaco-tokenized-source{display:inline}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{display:none}.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row.focused:not(.string-label)>.contents>.main>.right>.details-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label)>.contents>.main>.right>.details-label,.monaco-editor .suggest-widget:not(.shows-details) .monaco-list .monaco-list-row.focused>.contents>.main>.right>.details-label{display:inline}.monaco-editor .suggest-widget:not(.docs-side) .monaco-list .monaco-list-row.focused:hover>.contents>.main>.right.can-expand-details>.details-label{width:calc(100% - 26px)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left{flex-shrink:1;flex-grow:1;overflow:hidden}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.monaco-icon-label{flex-shrink:0}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label)>.contents>.main>.left>.monaco-icon-label{max-width:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label>.contents>.main>.left>.monaco-icon-label{flex-shrink:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{overflow:hidden;flex-shrink:4;max-width:70%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:inline-block;position:absolute;right:10px;width:18px;height:18px;visibility:hidden}.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none !important}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused.string-label>.contents>.main>.right>.readMore{display:inline-block}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused:hover>.contents>.main>.right>.readMore{visibility:visible}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated{opacity:0.66;text-decoration:unset}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated>.monaco-icon-label-container>.monaco-icon-name-container{text-decoration:line-through}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label:before{height:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon{display:block;height:16px;width:16px;margin-left:2px;background-repeat:no-repeat;background-size:80%;background-position:50%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.hide{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .suggest-icon{display:flex;align-items:center;margin-right:4px}.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .icon,.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .suggest-icon:before{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.customcolor .colorspan{margin:0 0 0 0.3em;border:0.1em solid #000;width:0.7em;height:0.7em;display:inline-block}.monaco-editor .suggest-details-container{z-index:41}.monaco-editor .suggest-details{display:flex;flex-direction:column;cursor:default;color:var(--vscode-editorSuggestWidget-foreground)}.monaco-editor .suggest-details.focused{border-color:var(--vscode-focusBorder)}.monaco-editor .suggest-details a{color:var(--vscode-textLink-foreground)}.monaco-editor .suggest-details a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .suggest-details code{background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .suggest-details.no-docs{display:none}.monaco-editor .suggest-details>.monaco-scrollable-element{flex:1}.monaco-editor .suggest-details>.monaco-scrollable-element>.body{box-sizing:border-box;height:100%;width:100%}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.type{flex:2;overflow:hidden;text-overflow:ellipsis;opacity:0.7;white-space:pre;margin:0 24px 0 0;padding:4px 0 12px 5px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.type.auto-wrap{white-space:normal;word-break:break-all}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs{margin:0;padding:4px 5px;white-space:pre-wrap}.monaco-editor .suggest-details.no-type>.monaco-scrollable-element>.body>.docs{margin-right:24px;overflow:hidden}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs{padding:0;white-space:normal;min-height:calc(1rem + 8px)}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div,.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>span:not(:empty){padding:4px 5px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:first-child{margin-top:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:last-child{margin-bottom:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs .monaco-tokenized-source{white-space:pre}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs .code{white-space:pre-wrap;word-wrap:break-word}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs .codicon{vertical-align:sub}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>p:empty{display:none}.monaco-editor .suggest-details code{border-radius:3px;padding:0 0.4em}.monaco-editor .suggest-details ol,.monaco-editor .suggest-details ul{padding-left:20px}.monaco-editor .suggest-details p code{font-family:var(--monaco-monospace-font)}.monaco-editor .codicon.codicon-symbol-array,.monaco-workbench .codicon.codicon-symbol-array{color:var(--vscode-symbolIcon-arrayForeground)}.monaco-editor .codicon.codicon-symbol-boolean,.monaco-workbench .codicon.codicon-symbol-boolean{color:var(--vscode-symbolIcon-booleanForeground)}.monaco-editor .codicon.codicon-symbol-class,.monaco-workbench .codicon.codicon-symbol-class{color:var(--vscode-symbolIcon-classForeground)}.monaco-editor .codicon.codicon-symbol-method,.monaco-workbench .codicon.codicon-symbol-method{color:var(--vscode-symbolIcon-methodForeground)}.monaco-editor .codicon.codicon-symbol-color,.monaco-workbench .codicon.codicon-symbol-color{color:var(--vscode-symbolIcon-colorForeground)}.monaco-editor .codicon.codicon-symbol-constant,.monaco-workbench .codicon.codicon-symbol-constant{color:var(--vscode-symbolIcon-constantForeground)}.monaco-editor .codicon.codicon-symbol-constructor,.monaco-workbench .codicon.codicon-symbol-constructor{color:var(--vscode-symbolIcon-constructorForeground)}.monaco-editor .codicon.codicon-symbol-enum,.monaco-editor .codicon.codicon-symbol-value,.monaco-workbench .codicon.codicon-symbol-enum,.monaco-workbench .codicon.codicon-symbol-value{color:var(--vscode-symbolIcon-enumeratorForeground)}.monaco-editor .codicon.codicon-symbol-enum-member,.monaco-workbench .codicon.codicon-symbol-enum-member{color:var(--vscode-symbolIcon-enumeratorMemberForeground)}.monaco-editor .codicon.codicon-symbol-event,.monaco-workbench .codicon.codicon-symbol-event{color:var(--vscode-symbolIcon-eventForeground)}.monaco-editor .codicon.codicon-symbol-field,.monaco-workbench .codicon.codicon-symbol-field{color:var(--vscode-symbolIcon-fieldForeground)}.monaco-editor .codicon.codicon-symbol-file,.monaco-workbench .codicon.codicon-symbol-file{color:var(--vscode-symbolIcon-fileForeground)}.monaco-editor .codicon.codicon-symbol-folder,.monaco-workbench .codicon.codicon-symbol-folder{color:var(--vscode-symbolIcon-folderForeground)}.monaco-editor .codicon.codicon-symbol-function,.monaco-workbench .codicon.codicon-symbol-function{color:var(--vscode-symbolIcon-functionForeground)}.monaco-editor .codicon.codicon-symbol-interface,.monaco-workbench .codicon.codicon-symbol-interface{color:var(--vscode-symbolIcon-interfaceForeground)}.monaco-editor .codicon.codicon-symbol-key,.monaco-workbench .codicon.codicon-symbol-key{color:var(--vscode-symbolIcon-keyForeground)}.monaco-editor .codicon.codicon-symbol-keyword,.monaco-workbench .codicon.codicon-symbol-keyword{color:var(--vscode-symbolIcon-keywordForeground)}.monaco-editor .codicon.codicon-symbol-module,.monaco-workbench .codicon.codicon-symbol-module{color:var(--vscode-symbolIcon-moduleForeground)}.monaco-editor .codicon.codicon-symbol-namespace,.monaco-workbench .codicon.codicon-symbol-namespace{color:var(--vscode-symbolIcon-namespaceForeground)}.monaco-editor .codicon.codicon-symbol-null,.monaco-workbench .codicon.codicon-symbol-null{color:var(--vscode-symbolIcon-nullForeground)}.monaco-editor .codicon.codicon-symbol-number,.monaco-workbench .codicon.codicon-symbol-number{color:var(--vscode-symbolIcon-numberForeground)}.monaco-editor .codicon.codicon-symbol-object,.monaco-workbench .codicon.codicon-symbol-object{color:var(--vscode-symbolIcon-objectForeground)}.monaco-editor .codicon.codicon-symbol-operator,.monaco-workbench .codicon.codicon-symbol-operator{color:var(--vscode-symbolIcon-operatorForeground)}.monaco-editor .codicon.codicon-symbol-package,.monaco-workbench .codicon.codicon-symbol-package{color:var(--vscode-symbolIcon-packageForeground)}.monaco-editor .codicon.codicon-symbol-property,.monaco-workbench .codicon.codicon-symbol-property{color:var(--vscode-symbolIcon-propertyForeground)}.monaco-editor .codicon.codicon-symbol-reference,.monaco-workbench .codicon.codicon-symbol-reference{color:var(--vscode-symbolIcon-referenceForeground)}.monaco-editor .codicon.codicon-symbol-snippet,.monaco-workbench .codicon.codicon-symbol-snippet{color:var(--vscode-symbolIcon-snippetForeground)}.monaco-editor .codicon.codicon-symbol-string,.monaco-workbench .codicon.codicon-symbol-string{color:var(--vscode-symbolIcon-stringForeground)}.monaco-editor .codicon.codicon-symbol-struct,.monaco-workbench .codicon.codicon-symbol-struct{color:var(--vscode-symbolIcon-structForeground)}.monaco-editor .codicon.codicon-symbol-text,.monaco-workbench .codicon.codicon-symbol-text{color:var(--vscode-symbolIcon-textForeground)}.monaco-editor .codicon.codicon-symbol-type-parameter,.monaco-workbench .codicon.codicon-symbol-type-parameter{color:var(--vscode-symbolIcon-typeParameterForeground)}.monaco-editor .codicon.codicon-symbol-unit,.monaco-workbench .codicon.codicon-symbol-unit{color:var(--vscode-symbolIcon-unitForeground)}.monaco-editor .codicon.codicon-symbol-variable,.monaco-workbench .codicon.codicon-symbol-variable{color:var(--vscode-symbolIcon-variableForeground)}.editor-banner{box-sizing:border-box;cursor:default;width:100%;font-size:12px;display:flex;overflow:visible;height:26px;background:var(--vscode-banner-background)}.editor-banner .icon-container{display:flex;flex-shrink:0;align-items:center;padding:0 6px 0 10px}.editor-banner .icon-container.custom-icon{background-repeat:no-repeat;background-position:50%;background-size:16px;width:16px;padding:0;margin:0 6px 0 10px}.editor-banner .message-container{display:flex;align-items:center;line-height:26px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.editor-banner .message-container p{margin-block-start:0;margin-block-end:0}.editor-banner .message-actions-container{flex-grow:1;flex-shrink:0;line-height:26px;margin:0 4px}.editor-banner .message-actions-container a.monaco-button{width:inherit;margin:2px 8px;padding:0 12px}.editor-banner .message-actions-container a{padding:3px;margin-left:12px;text-decoration:underline}.editor-banner .action-container{padding:0 10px 0 6px}.editor-banner{background-color:var(--vscode-banner-background)}.editor-banner,.editor-banner .action-container .codicon,.editor-banner .message-actions-container .monaco-link{color:var(--vscode-banner-foreground)}.editor-banner .icon-container .codicon{color:var(--vscode-banner-iconForeground)}.monaco-editor .unicode-highlight{border:1px solid var(--vscode-editorUnicodeHighlight-border);background-color:var(--vscode-editorUnicodeHighlight-background);box-sizing:border-box}.monaco-editor .focused .selectionHighlight{background-color:var(--vscode-editor-selectionHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-selectionHighlightBorder)}.monaco-editor.hc-black .focused .selectionHighlight,.monaco-editor.hc-light .focused .selectionHighlight{border-style:dotted}.monaco-editor .wordHighlight{background-color:var(--vscode-editor-wordHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightBorder)}.monaco-editor.hc-black .wordHighlight,.monaco-editor.hc-light .wordHighlight{border-style:dotted}.monaco-editor .wordHighlightStrong{background-color:var(--vscode-editor-wordHighlightStrongBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightStrongBorder)}.monaco-editor.hc-black .wordHighlightStrong,.monaco-editor.hc-light .wordHighlightStrong{border-style:dotted}.monaco-editor .wordHighlightText{background-color:var(--vscode-editor-wordHighlightTextBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightTextBorder)}.monaco-editor.hc-black .wordHighlightText,.monaco-editor.hc-light .wordHighlightText{border-style:dotted}.monaco-editor .zone-widget{position:absolute;z-index:10}.monaco-editor .zone-widget .zone-widget-container{border-top-style:solid;border-bottom-style:solid;border-top-width:0;border-bottom-width:0;position:relative}.monaco-editor .iPadShowKeyboard{width:58px;min-width:0;height:36px;min-height:0;margin:0;padding:0;position:absolute;resize:none;overflow:hidden;background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00OC4wMzYgNC4wMUg0LjAwOFYzMi4wM2g0NC4wMjhWNC4wMXpNNC4wMDguMDA4QTQuMDAzIDQuMDAzIDAgMDAuMDA1IDQuMDFWMzIuMDNhNC4wMDMgNC4wMDMgMCAwMDQuMDAzIDQuMDAyaDQ0LjAyOGE0LjAwMyA0LjAwMyAwIDAwNC4wMDMtNC4wMDJWNC4wMUE0LjAwMyA0LjAwMyAwIDAwNDguMDM2LjAwOEg0LjAwOHpNOC4wMSA4LjAxM2g0LjAwM3Y0LjAwM0g4LjAxVjguMDEzem0xMi4wMDggMGgtNC4wMDJ2NC4wMDNoNC4wMDJWOC4wMTN6bTQuMDAzIDBoNC4wMDJ2NC4wMDNoLTQuMDAyVjguMDEzem0xMi4wMDggMGgtNC4wMDN2NC4wMDNoNC4wMDNWOC4wMTN6bTQuMDAyIDBoNC4wMDN2NC4wMDNINDAuMDNWOC4wMTN6bS0yNC4wMTUgOC4wMDVIOC4wMXY0LjAwM2g4LjAwNnYtNC4wMDN6bTQuMDAyIDBoNC4wMDN2NC4wMDNoLTQuMDAzdi00LjAwM3ptMTIuMDA4IDBoLTQuMDAzdjQuMDAzaDQuMDAzdi00LjAwM3ptMTIuMDA4IDB2NC4wMDNoLTguMDA1di00LjAwM2g4LjAwNXptLTMyLjAyMSA4LjAwNUg4LjAxdjQuMDAzaDQuMDAzdi00LjAwM3ptNC4wMDMgMGgyMC4wMTN2NC4wMDNIMTYuMDE2di00LjAwM3ptMjguMDE4IDBINDAuMDN2NC4wMDNoNC4wMDN2LTQuMDAzeiIgZmlsbD0iIzQyNDI0MiIvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9ImNsaXAwIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMCAwaDUzdjM2SDB6Ii8+PC9jbGlwUGF0aD48L2RlZnM+PC9zdmc+) 50% no-repeat;border:4px solid #f6f6f6;border-radius:4px}.monaco-editor.vs-dark .iPadShowKeyboard{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00OC4wMzYgNC4wMUg0LjAwOFYzMi4wM2g0NC4wMjhWNC4wMXpNNC4wMDguMDA4QTQuMDAzIDQuMDAzIDAgMDAuMDA1IDQuMDFWMzIuMDNhNC4wMDMgNC4wMDMgMCAwMDQuMDAzIDQuMDAyaDQ0LjAyOGE0LjAwMyA0LjAwMyAwIDAwNC4wMDMtNC4wMDJWNC4wMUE0LjAwMyA0LjAwMyAwIDAwNDguMDM2LjAwOEg0LjAwOHpNOC4wMSA4LjAxM2g0LjAwM3Y0LjAwM0g4LjAxVjguMDEzem0xMi4wMDggMGgtNC4wMDJ2NC4wMDNoNC4wMDJWOC4wMTN6bTQuMDAzIDBoNC4wMDJ2NC4wMDNoLTQuMDAyVjguMDEzem0xMi4wMDggMGgtNC4wMDN2NC4wMDNoNC4wMDNWOC4wMTN6bTQuMDAyIDBoNC4wMDN2NC4wMDNINDAuMDNWOC4wMTN6bS0yNC4wMTUgOC4wMDVIOC4wMXY0LjAwM2g4LjAwNnYtNC4wMDN6bTQuMDAyIDBoNC4wMDN2NC4wMDNoLTQuMDAzdi00LjAwM3ptMTIuMDA4IDBoLTQuMDAzdjQuMDAzaDQuMDAzdi00LjAwM3ptMTIuMDA4IDB2NC4wMDNoLTguMDA1di00LjAwM2g4LjAwNXptLTMyLjAyMSA4LjAwNUg4LjAxdjQuMDAzaDQuMDAzdi00LjAwM3ptNC4wMDMgMGgyMC4wMTN2NC4wMDNIMTYuMDE2di00LjAwM3ptMjguMDE4IDBINDAuMDN2NC4wMDNoNC4wMDN2LTQuMDAzeiIgZmlsbD0iI0M1QzVDNSIvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9ImNsaXAwIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMCAwaDUzdjM2SDB6Ii8+PC9jbGlwUGF0aD48L2RlZnM+PC9zdmc+) 50% no-repeat;border:4px solid #252526}.monaco-editor .tokens-inspect-widget{z-index:50;user-select:text;-webkit-user-select:text;padding:10px;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor.hc-black .tokens-inspect-widget,.monaco-editor.hc-light .tokens-inspect-widget{border-width:2px}.monaco-editor .tokens-inspect-widget .tokens-inspect-separator{height:1px;border:0;background-color:var(--vscode-editorHoverWidget-border)}.monaco-editor .tokens-inspect-widget .tm-token{font-family:var(--monaco-monospace-font)}.monaco-editor .tokens-inspect-widget .tm-token-length{font-weight:400;font-size:60%;float:right}.monaco-editor .tokens-inspect-widget .tm-metadata-table{width:100%}.monaco-editor .tokens-inspect-widget .tm-metadata-value{font-family:var(--monaco-monospace-font);text-align:right}.monaco-editor .tokens-inspect-widget .tm-token-type{font-family:var(--monaco-monospace-font)}.quick-input-widget{font-size:13px}.quick-input-widget .monaco-highlighted-label .highlight{color:#0066bf}.vs .quick-input-widget .monaco-list-row.focused .monaco-highlighted-label .highlight{color:#9dddff}.vs-dark .quick-input-widget .monaco-highlighted-label .highlight{color:#0097fb}.hc-black .quick-input-widget .monaco-highlighted-label .highlight{color:#f38518}.hc-light .quick-input-widget .monaco-highlighted-label .highlight{color:#0f4a85}.monaco-keybinding>.monaco-keybinding-key{background-color:rgba(221, 221, 221, 0.4);border:1px solid rgba(204, 204, 204, 0.4);border-bottom-color:rgba(187, 187, 187, 0.4);box-shadow:inset 0 -1px 0 rgba(187, 187, 187, 0.4);color:#555}.hc-black .monaco-keybinding>.monaco-keybinding-key{background-color:transparent;border:1px solid #6fc3df;box-shadow:none;color:#fff}.hc-light .monaco-keybinding>.monaco-keybinding-key{background-color:transparent;border:1px solid #0f4a85;box-shadow:none;color:#292929}.vs-dark .monaco-keybinding>.monaco-keybinding-key{background-color:rgba(128, 128, 128, 0.17);border:1px solid rgba(51, 51, 51, 0.6);border-bottom-color:rgba(68, 68, 68, 0.6);box-shadow:inset 0 -1px 0 rgba(68, 68, 68, 0.6);color:#ccc}.monaco-editor{font-family:-apple-system, BlinkMacSystemFont, Segoe WPC, Segoe UI, HelveticaNeue-Light, system-ui, Ubuntu, Droid Sans, sans-serif;--monaco-monospace-font:\"SF Mono\",Monaco,Menlo,Consolas,\"Ubuntu Mono\",\"Liberation Mono\",\"DejaVu Sans Mono\",\"Courier New\",monospace}.monaco-editor.hc-black .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.hc-light .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-menu .monaco-action-bar.vertical .action-item .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-hover p{margin:0}.monaco-aria-container{position:absolute !important;top:0;height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;clip:rect(1px, 1px, 1px, 1px);clip-path:inset(50%)}.action-widget{font-size:13px;border-radius:0;min-width:160px;max-width:80vw;z-index:40;display:block;width:100%;border:1px solid var(--vscode-editorWidget-border) !important;border-radius:2px;background-color:var(--vscode-editorWidget-background);color:var(--vscode-editorWidget-foreground)}.context-view-block{z-index:-1}.context-view-block,.context-view-pointerBlock{position:fixed;cursor:auto;left:0;top:0;width:100%;height:100%}.context-view-pointerBlock{z-index:2}.action-widget .monaco-list{user-select:none;-webkit-user-select:none;border:0 !important}.action-widget .monaco-list:focus:before{outline:0 !important}.action-widget .monaco-list .monaco-scrollable-element{overflow:visible}.action-widget .monaco-list .monaco-list-row{padding:0 10px;white-space:nowrap;cursor:pointer;touch-action:none;width:100%}.action-widget .monaco-list .monaco-list-row.action.focused:not(.option-disabled){background-color:var(--vscode-quickInputList-focusBackground) !important;color:var(--vscode-quickInputList-focusForeground);outline:1px solid var(--vscode-menu-selectionBorder, transparent);outline-offset:-1px}.action-widget .monaco-list-row.group-header{color:var(--vscode-descriptionForeground) !important;font-weight:600}.action-widget .monaco-list .group-header,.action-widget .monaco-list .option-disabled,.action-widget .monaco-list .option-disabled .focused,.action-widget .monaco-list .option-disabled .focused:before,.action-widget .monaco-list .option-disabled:before{cursor:default !important;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;background-color:transparent !important;outline:0 solid !important}.action-widget .monaco-list-row.action{display:flex;gap:6px;align-items:center}.action-widget .monaco-list-row.action.option-disabled,.action-widget .monaco-list-row.action.option-disabled .codicon,.action-widget .monaco-list:focus .monaco-list-row.focused.action.option-disabled,.action-widget .monaco-list:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused).option-disabled{color:var(--vscode-disabledForeground)}.action-widget .monaco-list-row.action:not(.option-disabled) .codicon{color:inherit}.action-widget .monaco-list-row.action .title{flex:1;overflow:hidden;text-overflow:ellipsis}.action-widget .action-widget-action-bar{background-color:var(--vscode-editorHoverWidget-statusBarBackground);border-top:1px solid var(--vscode-editorHoverWidget-border)}.action-widget .action-widget-action-bar:before{display:block;content:\"\";width:100%}.action-widget .action-widget-action-bar .actions-container{padding:0 8px}.action-widget-action-bar .action-label{color:var(--vscode-textLink-activeForeground);font-size:12px;line-height:22px;padding:0;pointer-events:all}.action-widget-action-bar .action-item{margin-right:16px;pointer-events:none}.action-widget-action-bar .action-label:hover{background-color:transparent !important}.monaco-action-bar .actions-container.highlight-toggled .action-label.checked{background:var(--vscode-actionBar-toggledBackground) !important}.monaco-action-bar .action-item.menu-entry .action-label.icon{width:16px;height:16px;background-repeat:no-repeat;background-position:50%;background-size:16px}.monaco-dropdown-with-default{display:flex !important;flex-direction:row;border-radius:5px}.monaco-dropdown-with-default>.action-container>.action-label{margin-right:0}.monaco-dropdown-with-default>.action-container.menu-entry>.action-label.icon{width:16px;height:16px;background-repeat:no-repeat;background-position:50%;background-size:16px}.monaco-dropdown-with-default>.dropdown-action-container>.monaco-dropdown>.dropdown-label .codicon[class*=codicon-]{font-size:12px;padding-left:0;padding-right:0;line-height:16px;margin-left:-3px}.monaco-dropdown-with-default>.dropdown-action-container>.monaco-dropdown>.dropdown-label>.action-label{display:block;background-size:16px;background-position:50%;background-repeat:no-repeat}.monaco-link{color:var(--vscode-textLink-foreground)}.monaco-link:hover{color:var(--vscode-textLink-activeForeground)}.quick-input-widget{position:absolute;width:600px;z-index:2550;left:50%;margin-left:-300px;-webkit-app-region:no-drag;border-radius:6px}.quick-input-titlebar{display:flex;align-items:center;border-top-left-radius:5px;border-top-right-radius:5px}.quick-input-left-action-bar{display:flex;margin-left:4px;flex:1}.quick-input-title{padding:3px 0;text-align:center;text-overflow:ellipsis;overflow:hidden}.quick-input-right-action-bar{display:flex;margin-right:4px;flex:1}.quick-input-right-action-bar>.actions-container{justify-content:flex-end}.quick-input-titlebar .monaco-action-bar .action-label.codicon{background-position:50%;background-repeat:no-repeat;padding:2px}.quick-input-description{margin:6px 6px 6px 11px}.quick-input-header .quick-input-description{margin:4px 2px;flex:1}.quick-input-header{display:flex;padding:8px 6px 6px}.quick-input-widget.hidden-input .quick-input-header{padding:0;margin-bottom:0}.quick-input-and-message{display:flex;flex-direction:column;flex-grow:1;min-width:0;position:relative}.quick-input-check-all{align-self:center;margin:0}.quick-input-filter{flex-grow:1;display:flex;position:relative}.quick-input-box{flex-grow:1}.quick-input-widget.show-checkboxes .quick-input-box,.quick-input-widget.show-checkboxes .quick-input-message{margin-left:5px}.quick-input-visible-count{position:absolute;left:-10000px}.quick-input-count{align-self:center;position:absolute;right:4px;display:flex;align-items:center}.quick-input-count .monaco-count-badge{vertical-align:middle;padding:2px 4px;border-radius:2px;min-height:auto;line-height:normal}.quick-input-action{margin-left:6px}.quick-input-action .monaco-text-button{font-size:11px;padding:0 6px;display:flex;height:25px;align-items:center}.quick-input-message{margin-top:-1px;padding:5px;overflow-wrap:break-word}.quick-input-message>.codicon{margin:0 0.2em;vertical-align:text-bottom}.quick-input-message a{color:inherit}.quick-input-progress.monaco-progress-container{position:relative}.quick-input-progress.monaco-progress-container,.quick-input-progress.monaco-progress-container .progress-bit{height:2px}.quick-input-list{line-height:22px}.quick-input-widget.hidden-input .quick-input-list{margin-top:4px;padding-bottom:4px}.quick-input-list .monaco-list{overflow:hidden;max-height:440px;padding-bottom:5px}.quick-input-list .monaco-scrollable-element{padding:0 5px}.quick-input-list .quick-input-list-entry{box-sizing:border-box;overflow:hidden;display:flex;height:100%;padding:0 6px}.quick-input-list .quick-input-list-entry.quick-input-list-separator-border{border-top-width:1px;border-top-style:solid}.quick-input-list .monaco-list-row{border-radius:3px}.quick-input-list .monaco-list-row[data-index=\"0\"] .quick-input-list-entry.quick-input-list-separator-border{border-top-style:none}.quick-input-list .quick-input-list-label{overflow:hidden;display:flex;height:100%;flex:1}.quick-input-list .quick-input-list-checkbox{align-self:center;margin:0}.quick-input-list .quick-input-list-icon{background-size:16px;background-position:0;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;display:flex;align-items:center;justify-content:center}.quick-input-list .quick-input-list-rows{overflow:hidden;text-overflow:ellipsis;display:flex;flex-direction:column;height:100%;flex:1;margin-left:5px}.quick-input-widget.show-checkboxes .quick-input-list .quick-input-list-rows{margin-left:10px}.quick-input-widget .quick-input-list .quick-input-list-checkbox{display:none}.quick-input-widget.show-checkboxes .quick-input-list .quick-input-list-checkbox{display:inline}.quick-input-list .quick-input-list-rows>.quick-input-list-row{display:flex;align-items:center}.quick-input-list .quick-input-list-rows>.quick-input-list-row .monaco-icon-label,.quick-input-list .quick-input-list-rows>.quick-input-list-row .monaco-icon-label .monaco-icon-label-container>.monaco-icon-name-container{flex:1}.quick-input-list .quick-input-list-rows>.quick-input-list-row .codicon[class*=codicon-]{vertical-align:text-bottom}.quick-input-list .quick-input-list-rows .monaco-highlighted-label>span{opacity:1}.quick-input-list .quick-input-list-entry .quick-input-list-entry-keybinding{margin-right:8px}.quick-input-list .quick-input-list-label-meta{opacity:0.7;line-height:normal;text-overflow:ellipsis;overflow:hidden}.quick-input-list .monaco-highlighted-label .highlight{font-weight:700}.quick-input-list .quick-input-list-entry .quick-input-list-separator{margin-right:4px}.quick-input-list .quick-input-list-entry-action-bar{display:flex;flex:0;overflow:visible}.quick-input-list .quick-input-list-entry-action-bar .action-label{display:none}.quick-input-list .quick-input-list-entry-action-bar .action-label.codicon{margin-right:4px;padding:0 2px 2px}.quick-input-list .quick-input-list-entry-action-bar{margin-top:1px;margin-right:4px}.quick-input-list .monaco-list-row.focused .quick-input-list-entry-action-bar .action-label,.quick-input-list .quick-input-list-entry .quick-input-list-entry-action-bar .action-label.always-visible,.quick-input-list .quick-input-list-entry:hover .quick-input-list-entry-action-bar .action-label{display:flex}.quick-input-list .monaco-list-row.focused .monaco-keybinding-key,.quick-input-list .monaco-list-row.focused .quick-input-list-entry .quick-input-list-separator{color:inherit}.quick-input-list .monaco-list-row.focused .monaco-keybinding-key{background:none}.quick-input-list .quick-input-list-separator-as-item{font-weight:600;font-size:12px}.extension-editor .codicon.codicon-error,.extensions-viewlet>.extensions .codicon.codicon-error,.markers-panel .marker-icon .codicon.codicon-error,.markers-panel .marker-icon.error,.monaco-editor .zone-widget .codicon.codicon-error,.preferences-editor .codicon.codicon-error,.text-search-provider-messages .providerMessage .codicon.codicon-error{color:var(--vscode-problemsErrorIcon-foreground)}.extension-editor .codicon.codicon-warning,.extensions-viewlet>.extensions .codicon.codicon-warning,.markers-panel .marker-icon .codicon.codicon-warning,.markers-panel .marker-icon.warning,.monaco-editor .zone-widget .codicon.codicon-warning,.preferences-editor .codicon.codicon-warning,.text-search-provider-messages .providerMessage .codicon.codicon-warning{color:var(--vscode-problemsWarningIcon-foreground)}.extension-editor .codicon.codicon-info,.extensions-viewlet>.extensions .codicon.codicon-info,.markers-panel .marker-icon .codicon.codicon-info,.markers-panel .marker-icon.info,.monaco-editor .zone-widget .codicon.codicon-info,.preferences-editor .codicon.codicon-info,.text-search-provider-messages .providerMessage .codicon.codicon-info{color:var(--vscode-problemsInfoIcon-foreground)}arcgis-code-editor{display:flex;width:100%;height:100%;flex-direction:column;direction:ltr}arcgis-code-editor .monaco-editor{flex:1 1 auto}arcgis-code-editor .monaco-editor .monaco-hover,arcgis-code-editor .monaco-editor .editor-widget,arcgis-code-editor .monaco-editor .suggest-details-container{z-index:9999}";
4372
+ const codeEditorCss = "@charset \"UTF-8\";.monaco-action-bar{white-space:nowrap;height:100%}.monaco-action-bar .actions-container{display:flex;margin:0 auto;padding:0;height:100%;width:100%;align-items:center}.monaco-action-bar.vertical .actions-container{display:inline-block}.monaco-action-bar .action-item{display:block;align-items:center;justify-content:center;cursor:pointer;position:relative}.monaco-action-bar .action-item.disabled{cursor:default}.monaco-action-bar .action-item .codicon,.monaco-action-bar .action-item .icon{display:block}.monaco-action-bar .action-item .codicon{display:flex;align-items:center;width:16px;height:16px}.monaco-action-bar .action-label{display:flex;font-size:11px;padding:3px;border-radius:5px}.monaco-action-bar .action-item.disabled .action-label,.monaco-action-bar .action-item.disabled .action-label:before,.monaco-action-bar .action-item.disabled .action-label:hover{opacity:0.6}.monaco-action-bar.vertical{text-align:left}.monaco-action-bar.vertical .action-item{display:block}.monaco-action-bar.vertical .action-label.separator{display:block;border-bottom:1px solid #bbb;padding-top:1px;margin-left:0.8em;margin-right:0.8em}.monaco-action-bar .action-item .action-label.separator{width:1px;height:16px;margin:5px 4px !important;cursor:default;min-width:1px;padding:0;background-color:#bbb}.secondary-actions .monaco-action-bar .action-label{margin-left:6px}.monaco-action-bar .action-item.select-container{overflow:hidden;flex:1;max-width:170px;min-width:60px;display:flex;align-items:center;justify-content:center;margin-right:10px}.monaco-action-bar .action-item.action-dropdown-item{display:flex}.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator{display:flex;align-items:center;cursor:default}.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator>div{width:1px}.monaco-aria-container{position:absolute;left:-999em}.monaco-text-button{box-sizing:border-box;display:flex;width:100%;padding:4px;border-radius:2px;text-align:center;cursor:pointer;justify-content:center;align-items:center;border:1px solid var(--vscode-button-border, transparent);line-height:18px}.monaco-text-button:focus{outline-offset:2px !important}.monaco-text-button:hover{text-decoration:none !important}.monaco-button.disabled,.monaco-button.disabled:focus{opacity:0.4 !important;cursor:default}.monaco-text-button .codicon{margin:0 0.2em;color:inherit !important}.monaco-text-button.monaco-text-button-with-short-label{flex-direction:row;flex-wrap:wrap;padding:0 4px;overflow:hidden;height:28px}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label{flex-basis:100%}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label-short{flex-grow:1;width:0;overflow:hidden}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label,.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label-short{display:flex;justify-content:center;align-items:center;font-weight:400;font-style:inherit;padding:4px 0}.monaco-button-dropdown{display:flex;cursor:pointer}.monaco-button-dropdown.disabled{cursor:default}.monaco-button-dropdown>.monaco-button:focus{outline-offset:-1px !important}.monaco-button-dropdown.disabled>.monaco-button-dropdown-separator,.monaco-button-dropdown.disabled>.monaco-button.disabled,.monaco-button-dropdown.disabled>.monaco-button.disabled:focus{opacity:0.4 !important}.monaco-button-dropdown>.monaco-button.monaco-text-button{border-right-width:0 !important}.monaco-button-dropdown .monaco-button-dropdown-separator{padding:4px 0;cursor:default}.monaco-button-dropdown .monaco-button-dropdown-separator>div{height:100%;width:1px}.monaco-button-dropdown>.monaco-button.monaco-dropdown-button{border:1px solid var(--vscode-button-border, transparent);border-left-width:0 !important;border-radius:0 2px 2px 0;display:flex;align-items:center}.monaco-button-dropdown>.monaco-button.monaco-text-button{border-radius:2px 0 0 2px}.monaco-description-button{display:flex;flex-direction:column;align-items:center;margin:4px 5px}.monaco-description-button .monaco-button-description{font-style:italic;font-size:11px;padding:4px 20px}.monaco-description-button .monaco-button-description,.monaco-description-button .monaco-button-label{display:flex;justify-content:center;align-items:center}.monaco-description-button .monaco-button-description>.codicon,.monaco-description-button .monaco-button-label>.codicon{margin:0 0.2em;color:inherit !important}.monaco-button-dropdown.default-colors>.monaco-button,.monaco-button.default-colors{color:var(--vscode-button-foreground);background-color:var(--vscode-button-background)}.monaco-button-dropdown.default-colors>.monaco-button:hover,.monaco-button.default-colors:hover{background-color:var(--vscode-button-hoverBackground)}.monaco-button-dropdown.default-colors>.monaco-button.secondary,.monaco-button.default-colors.secondary{color:var(--vscode-button-secondaryForeground);background-color:var(--vscode-button-secondaryBackground)}.monaco-button-dropdown.default-colors>.monaco-button.secondary:hover,.monaco-button.default-colors.secondary:hover{background-color:var(--vscode-button-secondaryHoverBackground)}.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator{background-color:var(--vscode-button-background);border-top:1px solid var(--vscode-button-border);border-bottom:1px solid var(--vscode-button-border)}.monaco-button-dropdown.default-colors .monaco-button.secondary+.monaco-button-dropdown-separator{background-color:var(--vscode-button-secondaryBackground)}.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator>div{background-color:var(--vscode-button-separator)}@font-face{font-family:codicon;font-display:block;src:url(data:font/ttf;base64,AAEAAAALAIAAAwAwR1NVQiCLJXoAAAE4AAAAVE9TLzI3T0ZpAAABjAAAAGBjbWFw2WtCygAACNwAABnaZ2x5ZkUa1GQAACY0AADuCGhlYWRYl6BTAAAA4AAAADZoaGVhAlsC5wAAALwAAAAkaG10eAcp//oAAAHsAAAG8GxvY2Ec7eKIAAAiuAAAA3ptYXhwAt0BgQAAARgAAAAgbmFtZZP3uUsAARQ8AAAB+HBvc3TRsqgxAAEWNAAAGCMAAQAAASwAAAAAASz////+AS4AAQAAAAAAAAAAAAAAAAAAAbwAAQAAAAEAAKJbzxRfDzz1AAsBLAAAAAB8JbCAAAAAAHwlsID////9AS4BLQAAAAgAAgAAAAAAAAABAAABvAF1ABcAAAAAAAIAAAAKAAoAAAD/AAAAAAAAAAEAAAAKADAAPgACREZMVAAObGF0bgAaAAQAAAAAAAAAAQAAAAQAAAAAAAAAAQAAAAFsaWdhAAgAAAABAAAAAQAEAAQAAAABAAgAAQAGAAAAAQAAAAQBKwGQAAUAAADLANIAAAAqAMsA0gAAAJAADgBNAAACAAUDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFBmRWQAwOpg7CMBLAAAABsBRwADAAAAAQAAAAAAAAAAAAAAAAACAAAAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLP//ASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLP//ASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEs//8BLAAAASwAAAEsAAABLAAAASz//wEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLP//ASwAAAEsAAABLAAAASz//wEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAAAAABQAAAAMAAAAsAAAABAAABPoAAQAAAAAD9AADAAEAAAAsAAMACgAABPoABAPIAAAAEAAQAAMAAOqI6ozqx+rJ6wnrTuwj//8AAOpg6orqj+rJ6szrC+tQ//8AAAAAAAAAAAAAAAAAAAABABAAYABkANQA1AFOAdQAAAADAOkBPgE7ALEBLAGFARoBXwEEAWUATAGxAVIBWwFaAI4ANQElAIMAxwD2AEABgwB2ABYBrgCYAIUBOAETAQoBCwGYAMEAowC1AZABcACIAYEBaQF4AXYBagF5AYABewF0ALcBbwF9AAIABAAFAAoACwAMAA0ADgAPABAAEgAaABwAHQAeAFkAWgBbAFwAXwBgACEAIgAjACQAJQAoACoAKwAsAC0ALgAvADEAMgAzADQAOwA4ADwAPQA+AD8AQQBCAEQARgBHAEkAUgBTAFQAVQBkAGYAaABrAG8AcQByAHMAdAB1AHcAeAB5AHoAewB8AH4AfwCBAIIAhACGAIkAjACNAJAAkQCSAJMAlACVAJYAlwCZAJsAnACdAJ4AnwCgAKIApQCmAKcAkQCoAKkAqwCyALMAtgC4ALwAvQDAAMIAwwDEAMUAywDMAM0AzgDPANAA0QDSAOcA6gDrAO4A8QDyAPMA9AD4APkA/AD9AP4BAwEFAQYBBwEJAQ0BDgERARIBFQEWAR0BIQEiASMBJAEmAScBKAEpASoBKwEwATEBMgEzATQBNQE2ATcBOQE6ATwBPQE/AUABQgFDAUQBRQFGAUsBTAFNAU4BTwFRAVYBVwFYAVkBXAFeAWIBYwFkAWYBZwFrAWwBbQFuAXEBcgFzAXUBdwF6AXwBfgGHAYgBkQGSAZQBlgGXAZkBmgGbAZwBnQGhAaMBpAGlAagBqQGqAawBrQGyAbMBtAG1AbYBugG7AOwA7QDvAPAAXQBeAG0AOQBuAGEBfwBsAHAAagBYACYAJwD/AIoAjwC+AaIAAQAXAGIA5gEUAUgBggEfALQBVQFUARgBaAEgAS4AVwGrAEMBAACLALkA9wEQAS8AKQEeARcANgA3AEgBhAGmAaABngGfAK0BRwFJAQ8AaQG3AbkBuAGKAYsBjAGNAY4BjwGJABEAUQEZAJoBsABnAMkA1QDUANMATwBOAE0AFADKAKwArgBWAGUBSgChAGMAFQC6ALsBHAAfACAA9QATAacBDADlANYA1wDcANoA2wDeAN8A4QDjAOQA2QDYAYYAxgEtAIcABgAHAAgACQDiAN0A4AAbAL8A+wD6ADoAGQAYAEsArwCwAVAASgFTAWEAyAECAZMBlQBFAV0ApAGvADABGwEIAQEAqgBQAOgBQQFgAIAAfQAAAQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAU4AAAAAAAAAG8AADqYAAA6mAAAAADAADqYQAA6mEAAADpAADqYgAA6mIAAAE+AADqYwAA6mMAAAE7AADqZAAA6mQAAACxAADqZQAA6mUAAAEsAADqZgAA6mYAAAGFAADqZwAA6mcAAAEaAADqaAAA6mgAAAFfAADqaQAA6mkAAAEEAADqagAA6moAAAFlAADqawAA6msAAABMAADqbAAA6mwAAAGxAADqbQAA6m0AAAFSAADqbgAA6m4AAAFbAADqbwAA6m8AAAFaAADqcAAA6nAAAACOAADqcQAA6nEAAAA1AADqcgAA6nIAAAElAADqcwAA6nMAAACDAADqdAAA6nQAAADHAADqdQAA6nUAAAD2AADqdgAA6nYAAABAAADqdwAA6ncAAAGDAADqeAAA6ngAAAB2AADqeQAA6nkAAAAWAADqegAA6noAAAGuAADqewAA6nsAAACYAADqfAAA6nwAAACFAADqfQAA6n0AAAE4AADqfgAA6n4AAAETAADqfwAA6n8AAAEKAADqgAAA6oAAAAELAADqgQAA6oEAAAGYAADqggAA6oIAAADBAADqgwAA6oMAAACjAADqhAAA6oQAAAC1AADqhQAA6oUAAAGQAADqhgAA6oYAAAFwAADqhwAA6ocAAACIAADqiAAA6ogAAAGBAADqigAA6ooAAAFpAADqiwAA6osAAAF4AADqjAAA6owAAAF2AADqjwAA6o8AAAFqAADqkAAA6pAAAAF5AADqkQAA6pEAAAGAAADqkgAA6pIAAAF7AADqkwAA6pMAAAF0AADqlAAA6pQAAAC3AADqlQAA6pUAAAFvAADqlgAA6pYAAAF9AADqlwAA6pcAAAACAADqmAAA6pgAAAAEAADqmQAA6pkAAAAFAADqmgAA6poAAAAKAADqmwAA6psAAAALAADqnAAA6pwAAAAMAADqnQAA6p0AAAANAADqngAA6p4AAAAOAADqnwAA6p8AAAAPAADqoAAA6qAAAAAQAADqoQAA6qEAAAASAADqogAA6qIAAAAaAADqowAA6qMAAAAcAADqpAAA6qQAAAAdAADqpQAA6qUAAAAeAADqpgAA6qYAAABZAADqpwAA6qcAAABaAADqqAAA6qgAAABbAADqqQAA6qkAAABcAADqqgAA6qoAAABfAADqqwAA6qsAAABgAADqrAAA6qwAAAAhAADqrQAA6q0AAAAiAADqrgAA6q4AAAAjAADqrwAA6q8AAAAkAADqsAAA6rAAAAAlAADqsQAA6rEAAAAoAADqsgAA6rIAAAAqAADqswAA6rMAAAArAADqtAAA6rQAAAAsAADqtQAA6rUAAAAtAADqtgAA6rYAAAAuAADqtwAA6rcAAAAvAADquAAA6rgAAAAxAADquQAA6rkAAAAyAADqugAA6roAAAAzAADquwAA6rsAAAA0AADqvAAA6rwAAAA7AADqvQAA6r0AAAA4AADqvgAA6r4AAAA8AADqvwAA6r8AAAA9AADqwAAA6sAAAAA+AADqwQAA6sEAAAA/AADqwgAA6sIAAABBAADqwwAA6sMAAABCAADqxAAA6sQAAABEAADqxQAA6sUAAABGAADqxgAA6sYAAABHAADqxwAA6scAAABJAADqyQAA6skAAABSAADqzAAA6swAAABTAADqzQAA6s0AAABUAADqzgAA6s4AAABVAADqzwAA6s8AAABkAADq0AAA6tAAAABmAADq0QAA6tEAAABoAADq0gAA6tIAAABrAADq0wAA6tMAAABvAADq1AAA6tQAAABxAADq1QAA6tUAAAByAADq1gAA6tYAAABzAADq1wAA6tcAAAB0AADq2AAA6tgAAAB1AADq2QAA6tkAAAB3AADq2gAA6toAAAB4AADq2wAA6tsAAAB5AADq3AAA6twAAAB6AADq3QAA6t0AAAB7AADq3gAA6t4AAAB8AADq3wAA6t8AAAB+AADq4AAA6uAAAAB/AADq4QAA6uEAAACBAADq4gAA6uIAAACCAADq4wAA6uMAAACEAADq5AAA6uQAAACGAADq5QAA6uUAAACJAADq5gAA6uYAAACMAADq5wAA6ucAAACNAADq6AAA6ugAAACQAADq6QAA6ukAAACRAADq6gAA6uoAAACSAADq6wAA6usAAACTAADq7AAA6uwAAACUAADq7QAA6u0AAACVAADq7gAA6u4AAACWAADq7wAA6u8AAACXAADq8AAA6vAAAACZAADq8QAA6vEAAACbAADq8gAA6vIAAACcAADq8wAA6vMAAACdAADq9AAA6vQAAACeAADq9QAA6vUAAACfAADq9gAA6vYAAACgAADq9wAA6vcAAACiAADq+AAA6vgAAAClAADq+QAA6vkAAACmAADq+gAA6voAAACnAADq+wAA6vsAAACRAADq/AAA6vwAAACoAADq/QAA6v0AAACpAADq/gAA6v4AAACrAADq/wAA6v8AAACyAADrAAAA6wAAAACzAADrAQAA6wEAAAC2AADrAgAA6wIAAAC4AADrAwAA6wMAAAC8AADrBAAA6wQAAAC9AADrBQAA6wUAAADAAADrBgAA6wYAAADCAADrBwAA6wcAAADDAADrCAAA6wgAAADEAADrCQAA6wkAAADFAADrCwAA6wsAAADLAADrDAAA6wwAAADMAADrDQAA6w0AAADNAADrDgAA6w4AAADOAADrDwAA6w8AAADPAADrEAAA6xAAAADQAADrEQAA6xEAAADRAADrEgAA6xIAAADSAADrEwAA6xMAAADnAADrFAAA6xQAAADqAADrFQAA6xUAAADrAADrFgAA6xYAAADuAADrFwAA6xcAAADxAADrGAAA6xgAAADyAADrGQAA6xkAAADzAADrGgAA6xoAAAD0AADrGwAA6xsAAAD4AADrHAAA6xwAAAD5AADrHQAA6x0AAAD8AADrHgAA6x4AAAD9AADrHwAA6x8AAAD+AADrIAAA6yAAAAEDAADrIQAA6yEAAAEFAADrIgAA6yIAAAEGAADrIwAA6yMAAAEHAADrJAAA6yQAAAEJAADrJQAA6yUAAAENAADrJgAA6yYAAAEOAADrJwAA6ycAAAERAADrKAAA6ygAAAESAADrKQAA6ykAAAEVAADrKgAA6yoAAAEWAADrKwAA6ysAAAEdAADrLAAA6ywAAAEhAADrLQAA6y0AAAEiAADrLgAA6y4AAAEjAADrLwAA6y8AAAEkAADrMAAA6zAAAAEmAADrMQAA6zEAAAEnAADrMgAA6zIAAAEoAADrMwAA6zMAAAEpAADrNAAA6zQAAAEqAADrNQAA6zUAAAErAADrNgAA6zYAAAEwAADrNwAA6zcAAAExAADrOAAA6zgAAAEyAADrOQAA6zkAAAEzAADrOgAA6zoAAAE0AADrOwAA6zsAAAE1AADrPAAA6zwAAAE2AADrPQAA6z0AAAE3AADrPgAA6z4AAAE5AADrPwAA6z8AAAE6AADrQAAA60AAAAE8AADrQQAA60EAAAE9AADrQgAA60IAAAE/AADrQwAA60MAAAFAAADrRAAA60QAAAFCAADrRQAA60UAAAFDAADrRgAA60YAAAFEAADrRwAA60cAAAFFAADrSAAA60gAAAFGAADrSQAA60kAAAFLAADrSgAA60oAAAFMAADrSwAA60sAAAFNAADrTAAA60wAAAFOAADrTQAA600AAAFPAADrTgAA604AAAFRAADrUAAA61AAAAFWAADrUQAA61EAAAFXAADrUgAA61IAAAFYAADrUwAA61MAAAFZAADrVAAA61QAAAFcAADrVQAA61UAAAFeAADrVgAA61YAAAFiAADrVwAA61cAAAFjAADrWAAA61gAAAFkAADrWQAA61kAAAFmAADrWgAA61oAAAFnAADrWwAA61sAAAFrAADrXAAA61wAAAFsAADrXQAA610AAAFtAADrXgAA614AAAFuAADrXwAA618AAAFxAADrYAAA62AAAAFyAADrYQAA62EAAAFzAADrYgAA62IAAAF1AADrYwAA62MAAAF3AADrZAAA62QAAAF6AADrZQAA62UAAAF8AADrZgAA62YAAAF+AADrZwAA62cAAAGHAADraAAA62gAAAGIAADraQAA62kAAAGRAADragAA62oAAAGSAADrawAA62sAAAGUAADrbAAA62wAAAGWAADrbQAA620AAAGXAADrbgAA624AAAGZAADrbwAA628AAAGaAADrcAAA63AAAAGbAADrcQAA63EAAAGcAADrcgAA63IAAAGdAADrcwAA63MAAAGhAADrdAAA63QAAAGjAADrdQAA63UAAAGkAADrdgAA63YAAAGlAADrdwAA63cAAAGoAADreAAA63gAAAGpAADreQAA63kAAAGqAADregAA63oAAAGsAADrewAA63sAAAGtAADrfAAA63wAAAGyAADrfQAA630AAAGzAADrfgAA634AAAG0AADrfwAA638AAAG1AADrgAAA64AAAAG2AADrgQAA64EAAAG6AADrggAA64IAAAG7AADrgwAA64MAAADsAADrhAAA64QAAADtAADrhQAA64UAAADvAADrhgAA64YAAADwAADrhwAA64cAAABdAADriAAA64gAAABeAADriQAA64kAAABtAADrigAA64oAAAA5AADriwAA64sAAABuAADrjAAA64wAAABhAADrjQAA640AAAF/AADrjgAA644AAABsAADrjwAA648AAABwAADrkAAA65AAAABqAADrkQAA65EAAABYAADrkgAA65IAAAAmAADrkwAA65MAAAAnAADrlAAA65QAAAD/AADrlQAA65UAAACKAADrlgAA65YAAACPAADrlwAA65cAAAC+AADrmAAA65gAAAGiAADrmQAA65kAAAABAADrmgAA65oAAAAXAADrmwAA65sAAABiAADrnAAA65wAAADmAADrnQAA650AAAEUAADrngAA654AAAFIAADrnwAA658AAAGCAADroAAA66AAAAEfAADroQAA66EAAAC0AADrogAA66IAAAFVAADrowAA66MAAAFUAADrpAAA66QAAAEYAADrpQAA66UAAAFoAADrpgAA66YAAAEgAADrpwAA66cAAAEuAADrqAAA66gAAABXAADrqQAA66kAAAGrAADrqgAA66oAAABDAADrqwAA66sAAAEAAADrrAAA66wAAACLAADrrQAA660AAAC5AADrrgAA664AAAD3AADrrwAA668AAAEQAADrsAAA67AAAAEvAADrsQAA67EAAAApAADrsgAA67IAAAEeAADrswAA67MAAAEXAADrtAAA67QAAAA2AADrtQAA67UAAAA3AADrtgAA67YAAABIAADrtwAA67cAAAGEAADruAAA67gAAAGmAADruQAA67kAAAGgAADrugAA67oAAAGeAADruwAA67sAAAGfAADrvAAA67wAAACtAADrvQAA670AAAFHAADrvgAA674AAAFJAADrvwAA678AAAEPAADrwAAA68AAAABpAADrwQAA68EAAAG3AADrwgAA68IAAAG5AADrwwAA68MAAAG4AADrxAAA68QAAAGKAADrxQAA68UAAAGLAADrxgAA68YAAAGMAADrxwAA68cAAAGNAADryAAA68gAAAGOAADryQAA68kAAAGPAADrygAA68oAAAGJAADrywAA68sAAAARAADrzAAA68wAAABRAADrzQAA680AAAEZAADrzgAA684AAACaAADrzwAA688AAAGwAADr0AAA69AAAABnAADr0QAA69EAAADJAADr0gAA69IAAADVAADr0wAA69MAAADUAADr1AAA69QAAADTAADr1QAA69UAAABPAADr1gAA69YAAABOAADr1wAA69cAAABNAADr2AAA69gAAAAUAADr2QAA69kAAADKAADr2gAA69oAAACsAADr2wAA69sAAACuAADr3AAA69wAAABWAADr3QAA690AAABlAADr3gAA694AAAFKAADr3wAA698AAAChAADr4AAA6+AAAABjAADr4QAA6+EAAAAVAADr4gAA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AGQAaQBjAG8AbgBUAGgAZQAgAGkAYwBvAG4AIABmAG8AbgB0ACAAZgBvAHIAIABWAGkAcwB1AGEAbAAgAFMAdAB1AGQAaQBvACAAQwBvAGQAZQBoAHQAdABwADoALwAvAGYAbwBuAHQAZQBsAGwAbwAuAGMAbwBtAAIAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAABvAECAQMBBAEFAQYBBwEIAQkBCgELAQwBDQEOAQ8BEAERARIBEwEUARUBFgEXARgBGQEaARsBHAEdAR4BHwEgASEBIgEjASQBJQEmAScBKAEpASoBKwEsAS0BLgEvATABMQEyATMBNAE1ATYBNwE4ATkBOgE7ATwBPQE+AT8BQAFBAUIBQwFEAUUBRgFHAUgBSQFKAUsBTAFNAU4BTwFQAVEBUgFTAVQBVQFWAVcBWAFZAVoBWwFcAV0BXgFfAWABYQFiAWMBZAFlAWYBZwFoAWkBagFrAWwBbQFuAW8BcAFxAXIBcwF0AXUBdgF3AXgBeQF6AXsBfAF9AX4BfwGAAYEBggGDAYQBhQGGAYcBiAGJAYoBiwGMAY0BjgGPAZABkQGSAZMBlAGVAZYBlwGYAZkBmgGbAZwBnQGeAZ8BoAGhAaIBowGkAaUBpgGnAagBqQGqAasBrAGtAa4BrwGwAbEBsgGzAbQBtQG2AbcBuAG5AboBuwG8Ab0BvgG/AcABwQHCAcMBxAHFAcYBxwHIAckBygHLAcwBzQHOAc8B0AHRAdIB0wHUAdUB1gHXAdgB2QHaAdsB3AHdAd4B3wHgAeEB4gHjAeQB5QHmAecB6AHpAeoB6wHsAe0B7gHvAfAB8QHyAfMB9AH1AfYB9wH4AfkB+gH7AfwB/QH+Af8CAAIBAgICAwIEAgUCBgIHAggCCQIKAgsCDAINAg4CDwIQAhECEgITAhQCFQIWAhcCGAIZAhoCGwIcAh0CHgIfAiACIQIiAiMCJAIlAiYCJwIoAikCKgIrAiwCLQIuAi8CMAIxAjICMwI0AjUCNgI3AjgCOQI6AjsCPAI9Aj4CPwJAAkECQgJDAkQCRQJGAkcCSAJJAkoCSwJMAk0CTgJPAlACUQJSAlMCVAJVAlYCVwJYAlkCWgJbAlwCXQJeAl8CYAJhAmICYwJkAmUCZgJnAmgCaQJqAmsCbAJtAm4CbwJwAnECcgJzAnQCdQJ2AncCeAJ5AnoCewJ8An0CfgJ/AoACgQKCAoMChAKFAoYChwKIAokCigKLAowCjQKOAo8CkAKRApICkwKUApUClgKXApgCmQKaApsCnAKdAp4CnwKgAqECogKjAqQCpQKmAqcCqAKpAqoCqwKsAq0CrgKvArACsQKyArMCtAK1ArYCtwK4ArkCugK7ArwCvQAHYWNjb3VudBRhY3RpdmF0ZS1icmVha3BvaW50cwNhZGQHYXJjaGl2ZQphcnJvdy1ib3RoEWFycm93LWNpcmNsZS1kb3duEWFycm93LWNpcmNsZS1sZWZ0EmFycm93LWNpcmNsZS1yaWdodA9hcnJvdy1jaXJjbGUtdXAKYXJyb3ctZG93bgphcnJvdy1sZWZ0C2Fycm93LXJpZ2h0EGFycm93LXNtYWxsLWRvd24QYXJyb3ctc21hbGwtbGVmdBFhcnJvdy1zbWFsbC1yaWdodA5hcnJvdy1zbWFsbC11cAphcnJvdy1zd2FwCGFycm93LXVwDGF6dXJlLWRldm9wcwVhenVyZQtiZWFrZXItc3RvcAZiZWFrZXIIYmVsbC1kb3QOYmVsbC1zbGFzaC1kb3QKYmVsbC1zbGFzaARiZWxsBWJsYW5rBGJvbGQEYm9vawhib29rbWFyawticmFja2V0LWRvdA1icmFja2V0LWVycm9yCWJyaWVmY2FzZQlicm9hZGNhc3QHYnJvd3NlcgNidWcIY2FsZW5kYXINY2FsbC1pbmNvbWluZw1jYWxsLW91dGdvaW5nDmNhc2Utc2Vuc2l0aXZlCWNoZWNrLWFsbAVjaGVjawljaGVja2xpc3QMY2hldnJvbi1kb3duDGNoZXZyb24tbGVmdA1jaGV2cm9uLXJpZ2h0CmNoZXZyb24tdXAEY2hpcAxjaHJvbWUtY2xvc2UPY2hyb21lLW1heGltaXplD2Nocm9tZS1taW5pbWl6ZQ5jaHJvbWUtcmVzdG9yZQ1jaXJjbGUtZmlsbGVkE2NpcmNsZS1sYXJnZS1maWxsZWQMY2lyY2xlLWxhcmdlDGNpcmNsZS1zbGFzaBNjaXJjbGUtc21hbGwtZmlsbGVkDGNpcmNsZS1zbWFsbAZjaXJjbGUNY2lyY3VpdC1ib2FyZAljbGVhci1hbGwGY2xpcHB5CWNsb3NlLWFsbAVjbG9zZQ5jbG91ZC1kb3dubG9hZAxjbG91ZC11cGxvYWQFY2xvdWQEY29kZQZjb2ZmZWUMY29sbGFwc2UtYWxsCmNvbG9yLW1vZGUHY29tYmluZRJjb21tZW50LWRpc2N1c3Npb24NY29tbWVudC1kcmFmdBJjb21tZW50LXVucmVzb2x2ZWQHY29tbWVudA5jb21wYXNzLWFjdGl2ZQtjb21wYXNzLWRvdAdjb21wYXNzB2NvcGlsb3QEY29weQtjcmVkaXQtY2FyZARkYXNoCWRhc2hib2FyZAhkYXRhYmFzZQlkZWJ1Zy1hbGwPZGVidWctYWx0LXNtYWxsCWRlYnVnLWFsdCdkZWJ1Zy1icmVha3BvaW50LWNvbmRpdGlvbmFsLXVudmVyaWZpZWQcZGVidWctYnJlYWtwb2ludC1jb25kaXRpb25hbCBkZWJ1Zy1icmVha3BvaW50LWRhdGEtdW52ZXJpZmllZBVkZWJ1Zy1icmVha3BvaW50LWRhdGEkZGVidWctYnJlYWtwb2ludC1mdW5jdGlvbi11bnZlcmlmaWVkGWRlYnVnLWJyZWFrcG9pbnQtZnVuY3Rpb24fZGVidWctYnJlYWtwb2ludC1sb2ctdW52ZXJpZmllZBRkZWJ1Zy1icmVha3BvaW50LWxvZxxkZWJ1Zy1icmVha3BvaW50LXVuc3VwcG9ydGVkDWRlYnVnLWNvbnNvbGUUZGVidWctY29udGludWUtc21hbGwOZGVidWctY29udGludWUOZGVidWctY292ZXJhZ2UQZGVidWctZGlzY29ubmVjdBJkZWJ1Zy1saW5lLWJ5LWxpbmULZGVidWctcGF1c2ULZGVidWctcmVydW4TZGVidWctcmVzdGFydC1mcmFtZQ1kZWJ1Zy1yZXN0YXJ0FmRlYnVnLXJldmVyc2UtY29udGludWUXZGVidWctc3RhY2tmcmFtZS1hY3RpdmUQZGVidWctc3RhY2tmcmFtZQtkZWJ1Zy1zdGFydA9kZWJ1Zy1zdGVwLWJhY2sPZGVidWctc3RlcC1pbnRvDmRlYnVnLXN0ZXAtb3V0D2RlYnVnLXN0ZXAtb3ZlcgpkZWJ1Zy1zdG9wBWRlYnVnEGRlc2t0b3AtZG93bmxvYWQTZGV2aWNlLWNhbWVyYS12aWRlbw1kZXZpY2UtY2FtZXJhDWRldmljZS1tb2JpbGUKZGlmZi1hZGRlZAxkaWZmLWlnbm9yZWQNZGlmZi1tb2RpZmllZA1kaWZmLW11bHRpcGxlDGRpZmYtcmVtb3ZlZAxkaWZmLXJlbmFtZWQLZGlmZi1zaW5nbGUEZGlmZgdkaXNjYXJkBGVkaXQNZWRpdG9yLWxheW91dAhlbGxpcHNpcwxlbXB0eS13aW5kb3cLZXJyb3Itc21hbGwFZXJyb3IHZXhjbHVkZQpleHBhbmQtYWxsBmV4cG9ydApleHRlbnNpb25zCmV5ZS1jbG9zZWQDZXllCGZlZWRiYWNrC2ZpbGUtYmluYXJ5CWZpbGUtY29kZQpmaWxlLW1lZGlhCGZpbGUtcGRmDmZpbGUtc3VibW9kdWxlFmZpbGUtc3ltbGluay1kaXJlY3RvcnkRZmlsZS1zeW1saW5rLWZpbGUIZmlsZS16aXAEZmlsZQVmaWxlcw1maWx0ZXItZmlsbGVkBmZpbHRlcgVmbGFtZQlmb2xkLWRvd24HZm9sZC11cARmb2xkDWZvbGRlci1hY3RpdmUOZm9sZGVyLWxpYnJhcnkNZm9sZGVyLW9wZW5lZAZmb2xkZXIEZ2FtZQRnZWFyBGdpZnQLZ2lzdC1zZWNyZXQKZ2l0LWNvbW1pdAtnaXQtY29tcGFyZQlnaXQtZmV0Y2gJZ2l0LW1lcmdlF2dpdC1wdWxsLXJlcXVlc3QtY2xvc2VkF2dpdC1wdWxsLXJlcXVlc3QtY3JlYXRlFmdpdC1wdWxsLXJlcXVlc3QtZHJhZnQeZ2l0LXB1bGwtcmVxdWVzdC1nby10by1jaGFuZ2VzHGdpdC1wdWxsLXJlcXVlc3QtbmV3LWNoYW5nZXMQZ2l0LXB1bGwtcmVxdWVzdA1naXRodWItYWN0aW9uCmdpdGh1Yi1hbHQPZ2l0aHViLWludmVydGVkBmdpdGh1YgVnbG9iZQpnby10by1maWxlB2dyYWJiZXIKZ3JhcGgtbGVmdApncmFwaC1saW5lDWdyYXBoLXNjYXR0ZXIFZ3JhcGgHZ3JpcHBlchFncm91cC1ieS1yZWYtdHlwZQxoZWFydC1maWxsZWQFaGVhcnQHaGlzdG9yeQRob21lD2hvcml6b250YWwtcnVsZQVodWJvdAVpbmJveAZpbmRlbnQEaW5mbwZpbnNlcnQHaW5zcGVjdAtpc3N1ZS1kcmFmdA5pc3N1ZS1yZW9wZW5lZAZpc3N1ZXMGaXRhbGljBmplcnNleQRqc29uDmtlYmFiLXZlcnRpY2FsA2tleQNsYXcNbGF5ZXJzLWFjdGl2ZQpsYXllcnMtZG90BmxheWVycxdsYXlvdXQtYWN0aXZpdHliYXItbGVmdBhsYXlvdXQtYWN0aXZpdHliYXItcmlnaHQPbGF5b3V0LWNlbnRlcmVkDmxheW91dC1tZW51YmFyE2xheW91dC1wYW5lbC1jZW50ZXIUbGF5b3V0LXBhbmVsLWp1c3RpZnkRbGF5b3V0LXBhbmVsLWxlZnQQbGF5b3V0LXBhbmVsLW9mZhJsYXlvdXQtcGFuZWwtcmlnaHQMbGF5b3V0LXBhbmVsF2xheW91dC1zaWRlYmFyLWxlZnQtb2ZmE2xheW91dC1zaWRlYmFyLWxlZnQYbGF5b3V0LXNpZGViYXItcmlnaHQtb2ZmFGxheW91dC1zaWRlYmFyLXJpZ2h0EGxheW91dC1zdGF0dXNiYXIGbGF5b3V0B2xpYnJhcnkRbGlnaHRidWxiLWF1dG9maXgRbGlnaHRidWxiLXNwYXJrbGUJbGlnaHRidWxiDWxpbmstZXh0ZXJuYWwEbGluawtsaXN0LWZpbHRlcglsaXN0LWZsYXQMbGlzdC1vcmRlcmVkDmxpc3Qtc2VsZWN0aW9uCWxpc3QtdHJlZQ5saXN0LXVub3JkZXJlZApsaXZlLXNoYXJlB2xvYWRpbmcIbG9jYXRpb24KbG9jay1zbWFsbARsb2NrBm1hZ25ldAltYWlsLXJlYWQEbWFpbAptYXAtZmlsbGVkA21hcAhtYXJrZG93bgltZWdhcGhvbmUHbWVudGlvbgRtZW51BW1lcmdlCm1pYy1maWxsZWQDbWljCW1pbGVzdG9uZQZtaXJyb3IMbW9ydGFyLWJvYXJkBG1vdmUQbXVsdGlwbGUtd2luZG93cwVtdXNpYwRtdXRlCG5ldy1maWxlCm5ldy1mb2xkZXIHbmV3bGluZQpuby1uZXdsaW5lBG5vdGURbm90ZWJvb2stdGVtcGxhdGUIbm90ZWJvb2sIb2N0b2ZhY2UMb3Blbi1wcmV2aWV3DG9yZ2FuaXphdGlvbgZvdXRwdXQHcGFja2FnZQhwYWludGNhbgtwYXNzLWZpbGxlZARwYXNzCnBlcnNvbi1hZGQGcGVyc29uBXBpYW5vCXBpZS1jaGFydANwaW4McGlubmVkLWRpcnR5BnBpbm5lZAtwbGF5LWNpcmNsZQRwbGF5BHBsdWcNcHJlc2VydmUtY2FzZQdwcmV2aWV3EHByaW1pdGl2ZS1zcXVhcmUHcHJvamVjdAVwdWxzZQhxdWVzdGlvbgVxdW90ZQtyYWRpby10b3dlcglyZWFjdGlvbnMLcmVjb3JkLWtleXMMcmVjb3JkLXNtYWxsBnJlY29yZARyZWRvCnJlZmVyZW5jZXMHcmVmcmVzaAVyZWdleA9yZW1vdGUtZXhwbG9yZXIGcmVtb3RlBnJlbW92ZQtyZXBsYWNlLWFsbAdyZXBsYWNlBXJlcGx5CnJlcG8tY2xvbmUPcmVwby1mb3JjZS1wdXNoC3JlcG8tZm9ya2VkCXJlcG8tcHVsbAlyZXBvLXB1c2gEcmVwbwZyZXBvcnQPcmVxdWVzdC1jaGFuZ2VzBXJvYm90BnJvY2tldBJyb290LWZvbGRlci1vcGVuZWQLcm9vdC1mb2xkZXIDcnNzBHJ1YnkJcnVuLWFib3ZlB3J1bi1hbGwJcnVuLWJlbG93CnJ1bi1lcnJvcnMIc2F2ZS1hbGwHc2F2ZS1hcwRzYXZlC3NjcmVlbi1mdWxsDXNjcmVlbi1ub3JtYWwMc2VhcmNoLWZ1enp5C3NlYXJjaC1zdG9wBnNlYXJjaARzZW5kEnNlcnZlci1lbnZpcm9ubWVudA5zZXJ2ZXItcHJvY2VzcwZzZXJ2ZXINc2V0dGluZ3MtZ2VhcghzZXR0aW5ncwZzaGllbGQHc2lnbi1pbghzaWduLW91dAZzbWlsZXkFc25ha2UPc29ydC1wcmVjZWRlbmNlDnNvdXJjZS1jb250cm9sDnNwYXJrbGUtZmlsbGVkB3NwYXJrbGUQc3BsaXQtaG9yaXpvbnRhbA5zcGxpdC12ZXJ0aWNhbAhzcXVpcnJlbApzdGFyLWVtcHR5CXN0YXItZnVsbAlzdGFyLWhhbGYLc3RvcC1jaXJjbGUMc3ltYm9sLWFycmF5DnN5bWJvbC1ib29sZWFuDHN5bWJvbC1jbGFzcwxzeW1ib2wtY29sb3IPc3ltYm9sLWNvbnN0YW50EnN5bWJvbC1lbnVtLW1lbWJlcgtzeW1ib2wtZW51bQxzeW1ib2wtZXZlbnQMc3ltYm9sLWZpZWxkC3N5bWJvbC1maWxlEHN5bWJvbC1pbnRlcmZhY2UKc3ltYm9sLWtleQ5zeW1ib2wta2V5d29yZA1zeW1ib2wtbWV0aG9kC3N5bWJvbC1taXNjEHN5bWJvbC1uYW1lc3BhY2UOc3ltYm9sLW51bWVyaWMPc3ltYm9sLW9wZXJhdG9yEHN5bWJvbC1wYXJhbWV0ZXIPc3ltYm9sLXByb3BlcnR5DHN5bWJvbC1ydWxlcg5zeW1ib2wtc25pcHBldA1zeW1ib2wtc3RyaW5nEHN5bWJvbC1zdHJ1Y3R1cmUPc3ltYm9sLXZhcmlhYmxlDHN5bmMtaWdub3JlZARzeW5jBXRhYmxlA3RhZwZ0YXJnZXQIdGFza2xpc3QJdGVsZXNjb3BlDXRlcm1pbmFsLWJhc2gMdGVybWluYWwtY21kD3Rlcm1pbmFsLWRlYmlhbg50ZXJtaW5hbC1saW51eBN0ZXJtaW5hbC1wb3dlcnNoZWxsDXRlcm1pbmFsLXRtdXgPdGVybWluYWwtdWJ1bnR1CHRlcm1pbmFsCXRleHQtc2l6ZQp0aHJlZS1iYXJzEXRodW1ic2Rvd24tZmlsbGVkCnRodW1ic2Rvd24PdGh1bWJzdXAtZmlsbGVkCHRodW1ic3VwBXRvb2xzBXRyYXNoDXRyaWFuZ2xlLWRvd24NdHJpYW5nbGUtbGVmdA50cmlhbmdsZS1yaWdodAt0cmlhbmdsZS11cAd0d2l0dGVyEnR5cGUtaGllcmFyY2h5LXN1YhR0eXBlLWhpZXJhcmNoeS1zdXBlcg50eXBlLWhpZXJhcmNoeQZ1bmZvbGQTdW5ncm91cC1ieS1yZWYtdHlwZQZ1bmxvY2sGdW5tdXRlCnVudmVyaWZpZWQOdmFyaWFibGUtZ3JvdXAPdmVyaWZpZWQtZmlsbGVkCHZlcmlmaWVkCHZlcnNpb25zCXZtLWFjdGl2ZQp2bS1jb25uZWN0CnZtLW91dGxpbmUKdm0tcnVubmluZwJ2bQJ2cgR3YW5kB3dhcm5pbmcFd2F0Y2gKd2hpdGVzcGFjZQp3aG9sZS13b3JkBndpbmRvdwl3b3JkLXdyYXARd29ya3NwYWNlLXRydXN0ZWQRd29ya3NwYWNlLXVua25vd24Td29ya3NwYWNlLXVudHJ1c3RlZAd6b29tLWluCHpvb20tb3V0AAAA) format(\"truetype\")}.codicon[class*=codicon-]{font:normal normal normal 16px/1 codicon;display:inline-block;text-decoration:none;text-rendering:auto;text-align:center;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;user-select:none;-webkit-user-select:none}.codicon-wrench-subaction{opacity:0.5}@keyframes codicon-spin{to{transform:rotate(1turn)}}.codicon-gear.codicon-modifier-spin,.codicon-loading.codicon-modifier-spin,.codicon-notebook-state-executing.codicon-modifier-spin,.codicon-sync.codicon-modifier-spin{animation:codicon-spin 1.5s steps(30) infinite}.codicon-modifier-disabled{opacity:0.4}.codicon-loading,.codicon-tree-item-loading:before{animation-duration:1s !important;animation-timing-function:cubic-bezier(0.53, 0.21, 0.29, 0.67) !important}.context-view{position:absolute}.context-view.fixed{all:initial;font-family:inherit;font-size:13px;position:fixed;color:inherit}.monaco-count-badge{padding:3px 6px;border-radius:11px;font-size:11px;min-width:18px;min-height:18px;line-height:11px;font-weight:400;text-align:center;display:inline-block;box-sizing:border-box}.monaco-count-badge.long{padding:2px 3px;border-radius:2px;min-height:auto;line-height:normal}.monaco-dropdown{height:100%;padding:0}.monaco-dropdown>.dropdown-label{cursor:pointer;height:100%;display:flex;align-items:center;justify-content:center}.monaco-dropdown>.dropdown-label>.action-label.disabled{cursor:default}.monaco-dropdown-with-primary{display:flex !important;flex-direction:row;border-radius:5px}.monaco-dropdown-with-primary>.action-container>.action-label{margin-right:0}.monaco-dropdown-with-primary>.dropdown-action-container>.monaco-dropdown>.dropdown-label .codicon[class*=codicon-]{font-size:12px;padding-left:0;padding-right:0;line-height:16px;margin-left:-3px}.monaco-dropdown-with-primary>.dropdown-action-container>.monaco-dropdown>.dropdown-label>.action-label{display:block;background-size:16px;background-position:50%;background-repeat:no-repeat}.monaco-findInput{position:relative}.monaco-findInput .monaco-inputbox{font-size:13px;width:100%}.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.vs .monaco-findInput.disabled{background-color:#e1e1e1}.vs-dark .monaco-findInput.disabled{background-color:#333}.hc-light .monaco-findInput.highlight-0 .controls,.monaco-findInput.highlight-0 .controls{animation:monaco-findInput-highlight-0 0.1s linear 0s}.hc-light .monaco-findInput.highlight-1 .controls,.monaco-findInput.highlight-1 .controls{animation:monaco-findInput-highlight-1 0.1s linear 0s}.hc-black .monaco-findInput.highlight-0 .controls,.vs-dark .monaco-findInput.highlight-0 .controls{animation:monaco-findInput-highlight-dark-0 0.1s linear 0s}.hc-black .monaco-findInput.highlight-1 .controls,.vs-dark .monaco-findInput.highlight-1 .controls{animation:monaco-findInput-highlight-dark-1 0.1s linear 0s}@keyframes monaco-findInput-highlight-0{0%{background:rgba(253, 255, 0, 0.8)}to{background:transparent}}@keyframes monaco-findInput-highlight-1{0%{background:rgba(253, 255, 0, 0.8)}99%{background:transparent}}@keyframes monaco-findInput-highlight-dark-0{0%{background:hsla(0, 0%, 100%, 0.44)}to{background:transparent}}@keyframes monaco-findInput-highlight-dark-1{0%{background:hsla(0, 0%, 100%, 0.44)}99%{background:transparent}}.monaco-hover{cursor:default;position:absolute;overflow:hidden;user-select:text;-webkit-user-select:text;box-sizing:border-box;animation:fadein 0.1s linear;line-height:1.5em;white-space:var(--vscode-hover-whiteSpace, normal)}.monaco-hover.hidden{display:none}.monaco-hover a:hover:not(.disabled){cursor:pointer}.monaco-hover .hover-contents:not(.html-hover-contents){padding:4px 8px}.monaco-hover .markdown-hover>.hover-contents:not(.code-hover-contents){max-width:var(--vscode-hover-maxWidth, 500px);word-wrap:break-word}.monaco-hover .markdown-hover>.hover-contents:not(.code-hover-contents) hr{min-width:100%}.monaco-hover .code,.monaco-hover h1,.monaco-hover h2,.monaco-hover h3,.monaco-hover h4,.monaco-hover h5,.monaco-hover h6,.monaco-hover p,.monaco-hover ul{margin:8px 0}.monaco-hover h1,.monaco-hover h2,.monaco-hover h3,.monaco-hover h4,.monaco-hover h5,.monaco-hover h6{line-height:1.1}.monaco-hover code{font-family:var(--monaco-monospace-font)}.monaco-hover hr{box-sizing:border-box;border-left:0;border-right:0;margin:4px -8px -4px;height:1px}.monaco-hover .code:first-child,.monaco-hover p:first-child,.monaco-hover ul:first-child{margin-top:0}.monaco-hover .code:last-child,.monaco-hover p:last-child,.monaco-hover ul:last-child{margin-bottom:0}.monaco-hover ol,.monaco-hover ul{padding-left:20px}.monaco-hover li>p{margin-bottom:0}.monaco-hover li>ul{margin-top:0}.monaco-hover code{border-radius:3px;padding:0 0.4em}.monaco-hover .monaco-tokenized-source{white-space:var(--vscode-hover-sourceWhiteSpace, pre-wrap)}.monaco-hover .hover-row.status-bar{font-size:12px;line-height:22px}.monaco-hover .hover-row.status-bar .info{font-style:italic;padding:0 8px}.monaco-hover .hover-row.status-bar .actions{display:flex;padding:0 8px}.monaco-hover .hover-row.status-bar .actions .action-container{margin-right:16px;cursor:pointer}.monaco-hover .hover-row.status-bar .actions .action-container .action .icon{padding-right:4px}.monaco-hover .markdown-hover .hover-contents .codicon{color:inherit;font-size:inherit;vertical-align:middle}.monaco-hover .hover-contents a.code-link,.monaco-hover .hover-contents a.code-link:hover{color:inherit}.monaco-hover .hover-contents a.code-link:before{content:\"(\"}.monaco-hover .hover-contents a.code-link:after{content:\")\"}.monaco-hover .hover-contents a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under;color:var(--vscode-textLink-foreground)}.monaco-hover .hover-contents a.code-link>span:hover{color:var(--vscode-textLink-activeForeground)}.monaco-hover .markdown-hover .hover-contents:not(.code-hover-contents):not(.html-hover-contents) span{margin-bottom:4px;display:inline-block}.monaco-hover-content .action-container a{-webkit-user-select:none;user-select:none}.monaco-hover-content .action-container.disabled{pointer-events:none;opacity:0.4;cursor:default}.monaco-icon-label{display:flex;overflow:hidden;text-overflow:ellipsis}.monaco-icon-label:before{background-size:16px;background-position:0;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;line-height:inherit !important;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;vertical-align:top;flex-shrink:0}.monaco-icon-label-container.disabled{color:var(--vscode-disabledForeground)}.monaco-icon-label>.monaco-icon-label-container{min-width:0;overflow:hidden;text-overflow:ellipsis;flex:1}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{color:inherit;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name>.label-separator{margin:0 2px;opacity:0.5}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-suffix-container>.label-suffix{opacity:0.7;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:0.7;margin-left:0.5em;font-size:0.9em;white-space:pre}.monaco-icon-label.nowrap>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{white-space:nowrap}.vs .monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:0.95}.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-description-container>.label-description,.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{font-style:italic}.monaco-icon-label.deprecated{text-decoration:line-through;opacity:0.66}.monaco-icon-label.italic:after{font-style:italic}.monaco-icon-label.strikethrough>.monaco-icon-label-container>.monaco-icon-description-container>.label-description,.monaco-icon-label.strikethrough>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{text-decoration:line-through}.monaco-icon-label:after{opacity:0.75;font-size:90%;font-weight:600;margin:auto 16px 0 5px;text-align:center}.monaco-list:focus .selected .monaco-icon-label,.monaco-list:focus .selected .monaco-icon-label:after{color:inherit !important}.monaco-list-row.focused.selected .label-description,.monaco-list-row.selected .label-description{opacity:0.8}.monaco-inputbox{position:relative;display:block;padding:0;box-sizing:border-box;border-radius:2px;font-size:inherit}.monaco-inputbox>.ibwrapper>.input,.monaco-inputbox>.ibwrapper>.mirror{padding:4px 6px}.monaco-inputbox>.ibwrapper{position:relative;width:100%;height:100%}.monaco-inputbox>.ibwrapper>.input{display:inline-block;box-sizing:border-box;width:100%;height:100%;line-height:inherit;border:none;font-family:inherit;font-size:inherit;resize:none;color:inherit}.monaco-inputbox>.ibwrapper>input{text-overflow:ellipsis}.monaco-inputbox>.ibwrapper>textarea.input{display:block;scrollbar-width:none;outline:none}.monaco-inputbox>.ibwrapper>textarea.input::-webkit-scrollbar{display:none}.monaco-inputbox>.ibwrapper>textarea.input.empty{white-space:nowrap}.monaco-inputbox>.ibwrapper>.mirror{position:absolute;display:inline-block;width:100%;top:0;left:0;box-sizing:border-box;white-space:pre-wrap;visibility:hidden;word-wrap:break-word}.monaco-inputbox-container{text-align:right}.monaco-inputbox-container .monaco-inputbox-message{display:inline-block;overflow:hidden;text-align:left;width:100%;box-sizing:border-box;padding:0.4em;font-size:12px;line-height:17px;margin-top:-1px;word-wrap:break-word}.monaco-inputbox .monaco-action-bar{position:absolute;right:2px;top:4px}.monaco-inputbox .monaco-action-bar .action-item{margin-left:2px}.monaco-inputbox .monaco-action-bar .action-item .codicon{background-repeat:no-repeat;width:16px;height:16px}.monaco-keybinding{display:flex;align-items:center;line-height:10px}.monaco-keybinding>.monaco-keybinding-key{display:inline-block;border-style:solid;border-width:1px;border-radius:3px;vertical-align:middle;font-size:11px;padding:3px 5px;margin:0 2px}.monaco-keybinding>.monaco-keybinding-key:first-child{margin-left:0}.monaco-keybinding>.monaco-keybinding-key:last-child{margin-right:0}.monaco-keybinding>.monaco-keybinding-key-separator{display:inline-block}.monaco-keybinding>.monaco-keybinding-key-chord-separator{width:6px}.monaco-list{position:relative;height:100%;width:100%;white-space:nowrap}.monaco-list.mouse-support{user-select:none;-webkit-user-select:none}.monaco-list>.monaco-scrollable-element{height:100%}.monaco-list-rows{position:relative;width:100%;height:100%}.monaco-list.horizontal-scrolling .monaco-list-rows{width:auto;min-width:100%}.monaco-list-row{position:absolute;box-sizing:border-box;overflow:hidden;width:100%}.monaco-list.mouse-support .monaco-list-row{cursor:pointer;touch-action:none}.monaco-list .monaco-scrollable-element>.scrollbar.vertical,.monaco-pane-view>.monaco-split-view2.vertical>.monaco-scrollable-element>.scrollbar.vertical{z-index:14}.monaco-list-row.scrolling{display:none !important}.monaco-list.element-focused,.monaco-list.selection-multiple,.monaco-list.selection-single{outline:0 !important}.monaco-drag-image{display:inline-block;padding:1px 7px;border-radius:10px;font-size:12px;position:absolute;z-index:1000}.monaco-list-type-filter-message{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;padding:40px 1em 1em;text-align:center;white-space:normal;opacity:0.7;pointer-events:none}.monaco-list-type-filter-message:empty{display:none}.monaco-mouse-cursor-text{cursor:text}.monaco-progress-container{width:100%;height:2px;overflow:hidden}.monaco-progress-container .progress-bit{width:2%;height:2px;position:absolute;left:0;display:none}.monaco-progress-container.active .progress-bit{display:inherit}.monaco-progress-container.discrete .progress-bit{left:0;transition:width 0.1s linear}.monaco-progress-container.discrete.done .progress-bit{width:100%}.monaco-progress-container.infinite .progress-bit{animation-name:progress;animation-duration:4s;animation-iteration-count:infinite;transform:translateZ(0);animation-timing-function:linear}.monaco-progress-container.infinite.infinite-long-running .progress-bit{animation-timing-function:steps(100)}@keyframes progress{0%{transform:translateX(0) scaleX(1)}50%{transform:translateX(2500%) scaleX(3)}to{transform:translateX(4900%) scaleX(1)}}:root{--vscode-sash-size:4px;--vscode-sash-hover-size:4px}.monaco-sash{position:absolute;z-index:35;touch-action:none}.monaco-sash.disabled{pointer-events:none}.monaco-sash.mac.vertical{cursor:col-resize}.monaco-sash.vertical.minimum{cursor:e-resize}.monaco-sash.vertical.maximum{cursor:w-resize}.monaco-sash.mac.horizontal{cursor:row-resize}.monaco-sash.horizontal.minimum{cursor:s-resize}.monaco-sash.horizontal.maximum{cursor:n-resize}.monaco-sash.disabled{cursor:default !important;pointer-events:none !important}.monaco-sash.vertical{cursor:ew-resize;top:0;width:var(--vscode-sash-size);height:100%}.monaco-sash.horizontal{cursor:ns-resize;left:0;width:100%;height:var(--vscode-sash-size)}.monaco-sash:not(.disabled)>.orthogonal-drag-handle{content:\" \";height:calc(var(--vscode-sash-size) * 2);width:calc(var(--vscode-sash-size) * 2);z-index:100;display:block;cursor:all-scroll;position:absolute}.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)>.orthogonal-drag-handle.start,.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)>.orthogonal-drag-handle.end{cursor:nwse-resize}.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)>.orthogonal-drag-handle.end,.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)>.orthogonal-drag-handle.start{cursor:nesw-resize}.monaco-sash.vertical>.orthogonal-drag-handle.start{left:calc(var(--vscode-sash-size) * -0.5);top:calc(var(--vscode-sash-size) * -1)}.monaco-sash.vertical>.orthogonal-drag-handle.end{left:calc(var(--vscode-sash-size) * -0.5);bottom:calc(var(--vscode-sash-size) * -1)}.monaco-sash.horizontal>.orthogonal-drag-handle.start{top:calc(var(--vscode-sash-size) * -0.5);left:calc(var(--vscode-sash-size) * -1)}.monaco-sash.horizontal>.orthogonal-drag-handle.end{top:calc(var(--vscode-sash-size) * -0.5);right:calc(var(--vscode-sash-size) * -1)}.monaco-sash:before{content:\"\";pointer-events:none;position:absolute;width:100%;height:100%;background:transparent}.monaco-workbench:not(.reduce-motion) .monaco-sash:before{transition:background-color 0.1s ease-out}.monaco-sash.active:before,.monaco-sash.hover:before{background:var(--vscode-sash-hoverBorder)}.monaco-sash.vertical:before{width:var(--vscode-sash-hover-size);left:calc(50% - var(--vscode-sash-hover-size) / 2)}.monaco-sash.horizontal:before{height:var(--vscode-sash-hover-size);top:calc(50% - var(--vscode-sash-hover-size) / 2)}.pointer-events-disabled{pointer-events:none !important}.monaco-sash.debug{background:#0ff}.monaco-sash.debug.disabled{background:rgba(0, 255, 255, 0.2)}.monaco-sash.debug:not(.disabled)>.orthogonal-drag-handle{background:red}.monaco-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px !important}.monaco-scrollable-element>.visible{opacity:1;background:transparent;transition:opacity 0.1s linear;z-index:11}.monaco-scrollable-element>.invisible{opacity:0;pointer-events:none}.monaco-scrollable-element>.invisible.fade{transition:opacity 0.8s linear}.monaco-scrollable-element>.shadow{position:absolute;display:none}.monaco-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset}.monaco-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.monaco-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset}.monaco-scrollable-element>.scrollbar>.slider{background:var(--vscode-scrollbarSlider-background)}.monaco-scrollable-element>.scrollbar>.slider:hover{background:var(--vscode-scrollbarSlider-hoverBackground)}.monaco-scrollable-element>.scrollbar>.slider.active{background:var(--vscode-scrollbarSlider-activeBackground)}.monaco-select-box{width:100%;cursor:pointer;border-radius:2px}.monaco-select-box-dropdown-container{font-size:13px;font-weight:400;text-transform:none}.monaco-action-bar .action-item.select-container{cursor:default}.monaco-action-bar .action-item .monaco-select-box{cursor:pointer;min-width:100px;min-height:18px;padding:2px 23px 2px 8px}.mac .monaco-action-bar .action-item .monaco-select-box{font-size:11px;border-radius:5px}.monaco-select-box-dropdown-padding{--dropdown-padding-top:1px;--dropdown-padding-bottom:1px}.hc-black .monaco-select-box-dropdown-padding,.hc-light .monaco-select-box-dropdown-padding{--dropdown-padding-top:3px;--dropdown-padding-bottom:4px}.monaco-select-box-dropdown-container{display:none;box-sizing:border-box}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown *{margin:0}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown a:focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown code{line-height:15px;font-family:var(--monaco-monospace-font)}.monaco-select-box-dropdown-container.visible{display:flex;flex-direction:column;text-align:left;width:1px;overflow:hidden;border-bottom-left-radius:3px;border-bottom-right-radius:3px}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container{flex:0 0 auto;align-self:flex-start;padding-top:var(--dropdown-padding-top);padding-bottom:var(--dropdown-padding-bottom);padding-left:1px;padding-right:1px;width:100%;overflow:hidden;box-sizing:border-box}.monaco-select-box-dropdown-container>.select-box-details-pane{padding:5px}.hc-black .monaco-select-box-dropdown-container>.select-box-dropdown-list-container{padding-top:var(--dropdown-padding-top);padding-bottom:var(--dropdown-padding-bottom)}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row{cursor:pointer}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-text{text-overflow:ellipsis;overflow:hidden;padding-left:3.5px;white-space:nowrap;float:left}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-detail{text-overflow:ellipsis;overflow:hidden;padding-left:3.5px;white-space:nowrap;float:left;opacity:0.7}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-decorator-right{text-overflow:ellipsis;overflow:hidden;padding-right:10px;white-space:nowrap;float:right}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.visually-hidden{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control{flex:1 1 auto;align-self:flex-start;opacity:0}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control>.width-control-div{overflow:hidden;max-height:0}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control>.width-control-div>.option-text-width-control{padding-left:4px;padding-right:8px;white-space:nowrap}.monaco-split-view2{position:relative;width:100%;height:100%}.monaco-split-view2>.sash-container{position:absolute;width:100%;height:100%;pointer-events:none}.monaco-split-view2>.sash-container>.monaco-sash{pointer-events:auto}.monaco-split-view2>.monaco-scrollable-element{width:100%;height:100%}.monaco-split-view2>.monaco-scrollable-element>.split-view-container{width:100%;height:100%;white-space:nowrap;position:relative}.monaco-split-view2>.monaco-scrollable-element>.split-view-container>.split-view-view{white-space:normal;position:absolute}.monaco-split-view2>.monaco-scrollable-element>.split-view-container>.split-view-view:not(.visible){display:none}.monaco-split-view2.vertical>.monaco-scrollable-element>.split-view-container>.split-view-view{width:100%}.monaco-split-view2.horizontal>.monaco-scrollable-element>.split-view-container>.split-view-view{height:100%}.monaco-split-view2.separator-border>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{content:\" \";position:absolute;top:0;left:0;z-index:5;pointer-events:none;background-color:var(--separator-border)}.monaco-split-view2.separator-border.horizontal>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{height:100%;width:1px}.monaco-split-view2.separator-border.vertical>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{height:1px;width:100%}.monaco-table{display:flex;flex-direction:column;position:relative;height:100%;width:100%;white-space:nowrap;overflow:hidden}.monaco-table>.monaco-split-view2{border-bottom:1px solid transparent}.monaco-table>.monaco-list{flex:1}.monaco-table-tr{display:flex;height:100%}.monaco-table-th{width:100%;height:100%;font-weight:700;overflow:hidden;text-overflow:ellipsis}.monaco-table-td,.monaco-table-th{box-sizing:border-box;flex-shrink:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.monaco-table>.monaco-split-view2 .monaco-sash.vertical:before{content:\"\";position:absolute;left:calc(var(--vscode-sash-size) / 2);width:0;border-left:1px solid transparent}.monaco-workbench:not(.reduce-motion) .monaco-table>.monaco-split-view2,.monaco-workbench:not(.reduce-motion) .monaco-table>.monaco-split-view2 .monaco-sash.vertical:before{transition:border-color 0.2s ease-out}.monaco-custom-toggle{margin-left:2px;float:left;cursor:pointer;overflow:hidden;width:20px;height:20px;border-radius:3px;border:1px solid transparent;padding:1px;box-sizing:border-box;user-select:none;-webkit-user-select:none}.monaco-custom-toggle:hover{background-color:var(--vscode-inputOption-hoverBackground)}.hc-black .monaco-custom-toggle:hover,.hc-light .monaco-custom-toggle:hover{border:1px dashed var(--vscode-focusBorder)}.hc-black .monaco-custom-toggle,.hc-black .monaco-custom-toggle:hover,.hc-light .monaco-custom-toggle,.hc-light .monaco-custom-toggle:hover{background:none}.monaco-custom-toggle.monaco-checkbox{height:18px;width:18px;border:1px solid transparent;border-radius:3px;margin-right:9px;margin-left:0;padding:0;opacity:1;background-size:16px !important}.monaco-action-bar .checkbox-action-item{display:flex;align-items:center}.monaco-action-bar .checkbox-action-item>.monaco-custom-toggle.monaco-checkbox{margin-right:4px}.monaco-action-bar .checkbox-action-item>.checkbox-label{font-size:12px}.monaco-custom-toggle.monaco-checkbox:not(.checked):before{visibility:hidden}.monaco-toolbar{height:100%}.monaco-toolbar .toolbar-toggle-more{display:inline-block;padding:0}.monaco-tl-row{display:flex;height:100%;align-items:center;position:relative}.monaco-tl-row.disabled{cursor:default}.monaco-tl-indent{height:100%;position:absolute;top:0;left:16px;pointer-events:none}.hide-arrows .monaco-tl-indent{left:12px}.monaco-tl-indent>.indent-guide{display:inline-block;box-sizing:border-box;height:100%;border-left:1px solid transparent}.monaco-workbench:not(.reduce-motion) .monaco-tl-indent>.indent-guide{transition:border-color 0.1s linear}.monaco-tl-contents,.monaco-tl-twistie{height:100%}.monaco-tl-twistie{font-size:10px;text-align:right;padding-right:6px;flex-shrink:0;width:16px;display:flex !important;align-items:center;justify-content:center;transform:translateX(3px)}.monaco-tl-contents{flex:1;overflow:hidden}.monaco-tl-twistie:before{border-radius:20px}.monaco-tl-twistie.collapsed:before{transform:rotate(-90deg)}.monaco-tl-twistie.codicon-tree-item-loading:before{animation:codicon-spin 1.25s steps(30) infinite}.monaco-tree-type-filter{position:absolute;top:0;display:flex;padding:3px;max-width:200px;z-index:100;margin:0 6px;border:1px solid var(--vscode-widget-border);border-bottom-left-radius:4px;border-bottom-right-radius:4px}.monaco-workbench:not(.reduce-motion) .monaco-tree-type-filter{transition:top 0.3s}.monaco-tree-type-filter.disabled{top:-40px !important}.monaco-tree-type-filter-grab{display:flex !important;align-items:center;justify-content:center;cursor:grab;margin-right:2px}.monaco-tree-type-filter-grab.grabbing{cursor:grabbing}.monaco-tree-type-filter-input{flex:1}.monaco-tree-type-filter-input .monaco-inputbox{height:23px}.monaco-tree-type-filter-input .monaco-inputbox>.ibwrapper>.input,.monaco-tree-type-filter-input .monaco-inputbox>.ibwrapper>.mirror{padding:2px 4px}.monaco-tree-type-filter-input .monaco-findInput>.controls{top:2px}.monaco-tree-type-filter-actionbar{margin-left:4px}.monaco-tree-type-filter-actionbar .monaco-action-bar .action-label{padding:2px}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container{position:absolute;top:0;left:0;width:100%;height:0;z-index:13;background-color:var(--vscode-sideBar-background)}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row.monaco-list-row{position:absolute;width:100%;opacity:1 !important;overflow:hidden;background-color:var(--vscode-sideBar-background)}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row:hover{background-color:var(--vscode-list-hoverBackground) !important;cursor:pointer}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-container-shadow{position:absolute;bottom:-3px;left:0;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-editor .inputarea{min-width:0;min-height:0;margin:0;padding:0;position:absolute;outline:none !important;resize:none;border:none;overflow:hidden;color:transparent;background-color:transparent;z-index:-10}.monaco-editor .inputarea.ime-input{z-index:10;caret-color:var(--vscode-editorCursor-foreground);color:var(--vscode-editor-foreground)}.monaco-editor .blockDecorations-container{position:absolute;top:0;pointer-events:none}.monaco-editor .blockDecorations-block{position:absolute;box-sizing:border-box}.monaco-editor .margin-view-overlays .current-line,.monaco-editor .view-overlays .current-line{display:block;position:absolute;left:0;top:0;box-sizing:border-box}.monaco-editor .margin-view-overlays .current-line.current-line-margin.current-line-margin-both{border-right:0}.monaco-editor .lines-content .cdr{position:absolute}.monaco-editor .glyph-margin{position:absolute;top:0}.monaco-editor .glyph-margin-widgets .cgmr{position:absolute;display:flex;align-items:center;justify-content:center}.monaco-editor .glyph-margin-widgets .cgmr.codicon-modifier-spin:before{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.monaco-editor .lines-content .core-guide{position:absolute;box-sizing:border-box}.monaco-editor .margin-view-overlays .line-numbers{font-variant-numeric:tabular-nums;position:absolute;text-align:right;display:inline-block;vertical-align:middle;box-sizing:border-box;cursor:default;height:100%}.monaco-editor .relative-current-line-number{text-align:left;display:inline-block;width:100%}.monaco-editor .margin-view-overlays .line-numbers.lh-odd{margin-top:1px}.monaco-editor .line-numbers{color:var(--vscode-editorLineNumber-foreground)}.monaco-editor .line-numbers.active-line-number{color:var(--vscode-editorLineNumber-activeForeground)}.mtkcontrol{color:#fff !important;background:#960000 !important}.mtkoverflow{background-color:var(--vscode-button-background, var(--vscode-editor-background));color:var(--vscode-button-foreground, var(--vscode-editor-foreground));border:1px solid var(--vscode-contrastBorder);border-radius:2px;padding:4px;cursor:pointer}.mtkoverflow:hover{background-color:var(--vscode-button-hoverBackground)}.monaco-editor.no-user-select .lines-content,.monaco-editor.no-user-select .view-line,.monaco-editor.no-user-select .view-lines{user-select:none;-webkit-user-select:none}.monaco-editor.mac .lines-content:hover,.monaco-editor.mac .view-line:hover,.monaco-editor.mac .view-lines:hover{user-select:text;-webkit-user-select:text;-ms-user-select:text}.monaco-editor.enable-user-select{user-select:initial;-webkit-user-select:initial}.monaco-editor .view-lines{white-space:nowrap}.monaco-editor .view-line{position:absolute;width:100%}.monaco-editor .mtkw,.monaco-editor .mtkz{color:var(--vscode-editorWhitespace-foreground) !important}.monaco-editor .mtkz{display:inline-block}.monaco-editor .lines-decorations{position:absolute;top:0;background:#fff}.monaco-editor .margin-view-overlays .cldr{position:absolute;height:100%}.monaco-editor .margin{background-color:var(--vscode-editorGutter-background)}.monaco-editor .margin-view-overlays .cmdr{position:absolute;left:0;width:100%;height:100%}.monaco-editor .minimap.slider-mouseover .minimap-slider{opacity:0;transition:opacity 0.1s linear}.monaco-editor .minimap.slider-mouseover .minimap-slider.active,.monaco-editor .minimap.slider-mouseover:hover .minimap-slider{opacity:1}.monaco-editor .minimap-slider .minimap-slider-horizontal{background:var(--vscode-minimapSlider-background)}.monaco-editor .minimap-slider:hover .minimap-slider-horizontal{background:var(--vscode-minimapSlider-hoverBackground)}.monaco-editor .minimap-slider.active .minimap-slider-horizontal{background:var(--vscode-minimapSlider-activeBackground)}.monaco-editor .minimap-shadow-visible{box-shadow:var(--vscode-scrollbar-shadow) -6px 0 6px -6px inset}.monaco-editor .minimap-shadow-hidden{position:absolute;width:0}.monaco-editor .minimap-shadow-visible{position:absolute;left:-6px;width:6px}.monaco-editor.no-minimap-shadow .minimap-shadow-visible{position:absolute;left:-1px;width:1px}.minimap.autohide{opacity:0;transition:opacity 0.5s}.minimap.autohide:hover{opacity:1}.monaco-editor .minimap{z-index:5}.monaco-editor .overlayWidgets{position:absolute;top:0;left:0}.monaco-editor .view-ruler{position:absolute;top:0;box-shadow:1px 0 0 0 var(--vscode-editorRuler-foreground) inset}.monaco-editor .scroll-decoration{position:absolute;top:0;left:0;height:6px;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-editor .lines-content .cslr{position:absolute}.monaco-editor .focused .selected-text{background-color:var(--vscode-editor-selectionBackground)}.monaco-editor .selected-text{background-color:var(--vscode-editor-inactiveSelectionBackground)}.monaco-editor .top-left-radius{border-top-left-radius:3px}.monaco-editor .bottom-left-radius{border-bottom-left-radius:3px}.monaco-editor .top-right-radius{border-top-right-radius:3px}.monaco-editor .bottom-right-radius{border-bottom-right-radius:3px}.monaco-editor.hc-black .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-black .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-black .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-black .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor.hc-light .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-light .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-light .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-light .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor .cursors-layer{position:absolute;top:0}.monaco-editor .cursors-layer>.cursor{position:absolute;overflow:hidden;box-sizing:border-box}.monaco-editor .cursors-layer.cursor-smooth-caret-animation>.cursor{transition:all 80ms}.monaco-editor .cursors-layer.cursor-block-outline-style>.cursor{background:transparent !important;border-style:solid;border-width:1px}.monaco-editor .cursors-layer.cursor-underline-style>.cursor{border-bottom-width:2px;border-bottom-style:solid;background:transparent !important}.monaco-editor .cursors-layer.cursor-underline-thin-style>.cursor{border-bottom-width:1px;border-bottom-style:solid;background:transparent !important}@keyframes monaco-cursor-smooth{0%,20%{opacity:1}60%,to{opacity:0}}@keyframes monaco-cursor-phase{0%,20%{opacity:1}90%,to{opacity:0}}@keyframes monaco-cursor-expand{0%,20%{transform:scaleY(1)}80%,to{transform:scaleY(0)}}.cursor-smooth{animation:monaco-cursor-smooth 0.5s ease-in-out 0s 20 alternate}.cursor-phase{animation:monaco-cursor-phase 0.5s ease-in-out 0s 20 alternate}.cursor-expand>.cursor{animation:monaco-cursor-expand 0.5s ease-in-out 0s 20 alternate}.monaco-editor .mwh{position:absolute;color:var(--vscode-editorWhitespace-foreground) !important}.monaco-diff-editor .diff-review-line-number{text-align:right;display:inline-block;color:var(--vscode-editorLineNumber-foreground)}.monaco-diff-editor .diff-review{position:absolute;user-select:none;-webkit-user-select:none;z-index:99}.monaco-diff-editor .diff-review-summary{padding-left:10px}.monaco-diff-editor .diff-review-shadow{position:absolute;box-shadow:var(--vscode-scrollbar-shadow) 0 -6px 6px -6px inset}.monaco-diff-editor .diff-review-row{white-space:pre}.monaco-diff-editor .diff-review-table{display:table;min-width:100%}.monaco-diff-editor .diff-review-row{display:table-row;width:100%}.monaco-diff-editor .diff-review-spacer{display:inline-block;width:10px;vertical-align:middle}.monaco-diff-editor .diff-review-spacer>.codicon{font-size:9px !important}.monaco-diff-editor .diff-review-actions{display:inline-block;position:absolute;right:10px;top:2px;z-index:100}.monaco-diff-editor .diff-review-actions .action-label{width:16px;height:16px;margin:2px 0}.monaco-diff-editor .revertButton{cursor:pointer}.monaco-editor .diff-hidden-lines-widget{width:100%}.monaco-editor .diff-hidden-lines{height:0;transform:translateY(-10px);font-size:13px;line-height:14px}.monaco-editor .diff-hidden-lines .bottom.dragging,.monaco-editor .diff-hidden-lines .top.dragging,.monaco-editor .diff-hidden-lines:not(.dragging) .bottom:hover,.monaco-editor .diff-hidden-lines:not(.dragging) .top:hover{background-color:var(--vscode-focusBorder)}.monaco-editor .diff-hidden-lines .bottom,.monaco-editor .diff-hidden-lines .top{transition:background-color 0.1s ease-out;height:4px;background-color:transparent;background-clip:padding-box;border-bottom:2px solid transparent;border-top:4px solid transparent}.monaco-editor .diff-hidden-lines .bottom.canMoveTop:not(.canMoveBottom),.monaco-editor .diff-hidden-lines .top.canMoveTop:not(.canMoveBottom),.monaco-editor.draggingUnchangedRegion.canMoveTop:not(.canMoveBottom) *{cursor:n-resize !important}.monaco-editor .diff-hidden-lines .bottom:not(.canMoveTop).canMoveBottom,.monaco-editor .diff-hidden-lines .top:not(.canMoveTop).canMoveBottom,.monaco-editor.draggingUnchangedRegion:not(.canMoveTop).canMoveBottom *{cursor:s-resize !important}.monaco-editor .diff-hidden-lines .bottom.canMoveTop.canMoveBottom,.monaco-editor .diff-hidden-lines .top.canMoveTop.canMoveBottom,.monaco-editor.draggingUnchangedRegion.canMoveTop.canMoveBottom *{cursor:ns-resize !important}.monaco-editor .diff-hidden-lines .top{transform:translateY(4px)}.monaco-editor .diff-hidden-lines .bottom{transform:translateY(-6px)}.monaco-editor .diff-unchanged-lines{background:var(--vscode-diffEditor-unchangedCodeBackground)}.monaco-editor .noModificationsOverlay{z-index:1;background:var(--vscode-editor-background);display:flex;justify-content:center;align-items:center}.monaco-editor .diff-hidden-lines .center{background:var(--vscode-diffEditor-unchangedRegionBackground);color:var(--vscode-diffEditor-unchangedRegionForeground);overflow:hidden;display:block;text-overflow:ellipsis;white-space:nowrap;height:24px;box-shadow:inset 0 -5px 5px -7px var(--vscode-diffEditor-unchangedRegionShadow), inset 0 5px 5px -7px var(--vscode-diffEditor-unchangedRegionShadow)}.monaco-editor .diff-hidden-lines .center span.codicon{vertical-align:middle}.monaco-editor .diff-hidden-lines .center a:hover .codicon{cursor:pointer;color:var(--vscode-editorLink-activeForeground) !important}.monaco-editor .diff-hidden-lines div.breadcrumb-item{cursor:pointer}.monaco-editor .diff-hidden-lines div.breadcrumb-item:hover{color:var(--vscode-editorLink-activeForeground)}.monaco-editor .movedModified,.monaco-editor .movedOriginal{border:2px solid var(--vscode-diffEditor-move-border)}.monaco-editor .movedModified.currentMove,.monaco-editor .movedOriginal.currentMove{border:2px solid var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines path.currentMove{stroke:var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines path{pointer-events:visiblestroke}.monaco-diff-editor .moved-blocks-lines .arrow{fill:var(--vscode-diffEditor-move-border)}.monaco-diff-editor .moved-blocks-lines .arrow.currentMove{fill:var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines .arrow-rectangle{fill:var(--vscode-editor-background)}.monaco-diff-editor .moved-blocks-lines{position:absolute;pointer-events:none}.monaco-diff-editor .moved-blocks-lines path{fill:none;stroke:var(--vscode-diffEditor-move-border);stroke-width:2}.monaco-editor .char-delete.diff-range-empty{margin-left:-1px;border-left:3px solid var(--vscode-diffEditor-removedTextBackground)}.monaco-editor .char-insert.diff-range-empty{border-left:3px solid var(--vscode-diffEditor-insertedTextBackground)}.monaco-editor .fold-unchanged{cursor:pointer}.monaco-diff-editor .diff-moved-code-block{display:flex;justify-content:flex-end;margin-top:-4px}.monaco-diff-editor .diff-moved-code-block .action-bar .action-label.codicon{width:12px;height:12px;font-size:12px}.monaco-diff-editor .diffOverview{z-index:9}.monaco-diff-editor .diffOverview .diffViewport{z-index:10}.monaco-diff-editor.vs .diffOverview{background:rgba(0, 0, 0, 0.03)}.monaco-diff-editor.vs-dark .diffOverview{background:hsla(0, 0%, 100%, 0.01)}.monaco-scrollable-element.modified-in-monaco-diff-editor.vs-dark .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.vs .scrollbar{background:transparent}.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-black .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-light .scrollbar{background:none}.monaco-scrollable-element.modified-in-monaco-diff-editor .slider{z-index:10}.modified-in-monaco-diff-editor .slider.active{background:hsla(0, 0%, 67.1%, 0.4)}.modified-in-monaco-diff-editor.hc-black .slider.active,.modified-in-monaco-diff-editor.hc-light .slider.active{background:none}.monaco-diff-editor .delete-sign,.monaco-diff-editor .insert-sign,.monaco-editor .delete-sign,.monaco-editor .insert-sign{font-size:11px !important;opacity:0.7 !important;display:flex !important;align-items:center}.monaco-diff-editor.hc-black .delete-sign,.monaco-diff-editor.hc-black .insert-sign,.monaco-diff-editor.hc-light .delete-sign,.monaco-diff-editor.hc-light .insert-sign,.monaco-editor.hc-black .delete-sign,.monaco-editor.hc-black .insert-sign,.monaco-editor.hc-light .delete-sign,.monaco-editor.hc-light .insert-sign{opacity:1}.monaco-editor .inline-added-margin-view-zone,.monaco-editor .inline-deleted-margin-view-zone{text-align:right}.monaco-editor .arrow-revert-change{z-index:10;position:absolute}.monaco-editor .arrow-revert-change:hover{cursor:pointer}.monaco-editor .view-zones .view-lines .view-line span{display:inline-block}.monaco-editor .margin-view-zones .lightbulb-glyph:hover{cursor:pointer}.monaco-diff-editor .char-insert,.monaco-editor .char-insert{background-color:var(--vscode-diffEditor-insertedTextBackground)}.monaco-diff-editor .line-insert,.monaco-editor .line-insert{background-color:var(--vscode-diffEditor-insertedLineBackground, var(--vscode-diffEditor-insertedTextBackground))}.monaco-editor .char-insert,.monaco-editor .line-insert{box-sizing:border-box;border:1px solid var(--vscode-diffEditor-insertedTextBorder)}.monaco-editor.hc-black .char-insert,.monaco-editor.hc-black .line-insert,.monaco-editor.hc-light .char-insert,.monaco-editor.hc-light .line-insert{border-style:dashed}.monaco-editor .char-delete,.monaco-editor .line-delete{box-sizing:border-box;border:1px solid var(--vscode-diffEditor-removedTextBorder)}.monaco-editor.hc-black .char-delete,.monaco-editor.hc-black .line-delete,.monaco-editor.hc-light .char-delete,.monaco-editor.hc-light .line-delete{border-style:dashed}.monaco-diff-editor .gutter-insert,.monaco-editor .gutter-insert,.monaco-editor .inline-added-margin-view-zone{background-color:var(--vscode-diffEditorGutter-insertedLineBackground, var(--vscode-diffEditor-insertedLineBackground), var(--vscode-diffEditor-insertedTextBackground))}.monaco-diff-editor .char-delete,.monaco-editor .char-delete{background-color:var(--vscode-diffEditor-removedTextBackground)}.monaco-diff-editor .line-delete,.monaco-editor .line-delete{background-color:var(--vscode-diffEditor-removedLineBackground, var(--vscode-diffEditor-removedTextBackground))}.monaco-diff-editor .gutter-delete,.monaco-editor .gutter-delete,.monaco-editor .inline-deleted-margin-view-zone{background-color:var(--vscode-diffEditorGutter-removedLineBackground, var(--vscode-diffEditor-removedLineBackground), var(--vscode-diffEditor-removedTextBackground))}.monaco-diff-editor.side-by-side .editor.modified{box-shadow:-6px 0 5px -5px var(--vscode-scrollbar-shadow);border-left:1px solid var(--vscode-diffEditor-border)}.monaco-diff-editor .diffViewport{background:var(--vscode-scrollbarSlider-background)}.monaco-diff-editor .diffViewport:hover{background:var(--vscode-scrollbarSlider-hoverBackground)}.monaco-diff-editor .diffViewport:active{background:var(--vscode-scrollbarSlider-activeBackground)}.monaco-editor .diagonal-fill{background-image:linear-gradient(-45deg, var(--vscode-diffEditor-diagonalFill) 12.5%, transparent 0, transparent 50%, var(--vscode-diffEditor-diagonalFill) 0, var(--vscode-diffEditor-diagonalFill) 62.5%, transparent 0, transparent);background-size:8px 8px}::-ms-clear{display:none}.monaco-editor .editor-widget input{color:inherit}.monaco-editor{position:relative;overflow:visible;-webkit-text-size-adjust:100%;color:var(--vscode-editor-foreground)}.monaco-editor,.monaco-editor-background{background-color:var(--vscode-editor-background)}.monaco-editor .rangeHighlight{background-color:var(--vscode-editor-rangeHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-rangeHighlightBorder)}.monaco-editor.hc-black .rangeHighlight,.monaco-editor.hc-light .rangeHighlight{border-style:dotted}.monaco-editor .symbolHighlight{background-color:var(--vscode-editor-symbolHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-symbolHighlightBorder)}.monaco-editor.hc-black .symbolHighlight,.monaco-editor.hc-light .symbolHighlight{border-style:dotted}.monaco-editor .overflow-guard{position:relative;overflow:hidden}.monaco-editor .view-overlays{position:absolute;top:0}.monaco-editor .squiggly-error{border-bottom:4px double var(--vscode-editorError-border)}.monaco-editor .squiggly-error:before{display:block;content:\"\";width:100%;height:100%;background:var(--vscode-editorError-background)}.monaco-editor .squiggly-warning{border-bottom:4px double var(--vscode-editorWarning-border)}.monaco-editor .squiggly-warning:before{display:block;content:\"\";width:100%;height:100%;background:var(--vscode-editorWarning-background)}.monaco-editor .squiggly-info{border-bottom:4px double var(--vscode-editorInfo-border)}.monaco-editor .squiggly-info:before{display:block;content:\"\";width:100%;height:100%;background:var(--vscode-editorInfo-background)}.monaco-editor .squiggly-hint{border-bottom:2px dotted var(--vscode-editorHint-border)}.monaco-editor.showUnused .squiggly-unnecessary{border-bottom:2px dashed var(--vscode-editorUnnecessaryCode-border)}.monaco-editor.showDeprecated .squiggly-inline-deprecated{text-decoration:line-through;text-decoration-color:var(--vscode-editor-foreground, inherit)}.monaco-component .multiDiffEntry{display:flex;flex-direction:column}.monaco-component .multiDiffEntry .editorParent{border-left:2px solid var(--vscode-tab-inactiveBackground)}.monaco-component .multiDiffEntry.focused .editorParent{border-left:2px solid var(--vscode-notebook-focusedCellBorder)}.monaco-component .multiDiffEntry .editorParent .editorContainer{border-left:17px solid var(--vscode-tab-inactiveBackground)}.monaco-component .multiDiffEntry .collapse-button{margin:0 5px;cursor:pointer}.monaco-component .multiDiffEntry .collapse-button a{display:block}.monaco-component .multiDiffEntry .header{display:flex;align-items:center;padding:8px 5px;color:var(--vscode-foreground);background:var(--vscode-editor-background);z-index:1000;border-bottom:1px solid var(--vscode-sideBarSectionHeader-border);border-top:1px solid var(--vscode-sideBarSectionHeader-border);border-left:2px solid var(--vscode-editor-background)}.monaco-component .multiDiffEntry.focused .header{border-left:2px solid var(--vscode-notebook-focusedCellBorder)}.monaco-component .multiDiffEntry .header.shadow{box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px}.monaco-component .multiDiffEntry .header .title{flex:1;font-size:14px;line-height:22px}.monaco-component .multiDiffEntry .header .actions{padding:0 8px}.monaco-editor .selection-anchor{background-color:#007acc;width:2px !important}.monaco-editor .bracket-match{box-sizing:border-box;background-color:var(--vscode-editorBracketMatch-background);border:1px solid var(--vscode-editorBracketMatch-border)}.monaco-editor .lightBulbWidget{display:flex;align-items:center;justify-content:center}.monaco-editor .lightBulbWidget:hover{cursor:pointer}.monaco-editor .lightBulbWidget.codicon-light-bulb,.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle{color:var(--vscode-editorLightBulb-foreground)}.monaco-editor .lightBulbWidget.codicon-lightbulb-autofix,.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle-autofix{color:var(--vscode-editorLightBulbAutoFix-foreground, var(--vscode-editorLightBulb-foreground))}.monaco-editor .lightBulbWidget.codicon-sparkle-filled{color:var(--vscode-editorLightBulbAi-foreground, var(--vscode-icon-foreground))}.monaco-editor .lightBulbWidget:before{position:relative;z-index:2}.monaco-editor .lightBulbWidget:after{position:absolute;top:0;left:0;content:\"\";display:block;width:100%;height:100%;opacity:0.3;background-color:var(--vscode-editor-background);z-index:1}.monaco-editor .codelens-decoration{overflow:hidden;display:inline-block;text-overflow:ellipsis;white-space:nowrap;color:var(--vscode-editorCodeLens-foreground);line-height:var(--vscode-editorCodeLens-lineHeight);font-size:var(--vscode-editorCodeLens-fontSize);padding-right:calc(var(--vscode-editorCodeLens-fontSize) * 0.5);font-feature-settings:var(--vscode-editorCodeLens-fontFeatureSettings);font-family:var(--vscode-editorCodeLens-fontFamily), var(--vscode-editorCodeLens-fontFamilyDefault)}.monaco-editor .codelens-decoration>a,.monaco-editor .codelens-decoration>span{user-select:none;-webkit-user-select:none;white-space:nowrap;vertical-align:sub}.monaco-editor .codelens-decoration>a{text-decoration:none}.monaco-editor .codelens-decoration>a:hover{cursor:pointer}.monaco-editor .codelens-decoration>a:hover,.monaco-editor .codelens-decoration>a:hover .codicon{color:var(--vscode-editorLink-activeForeground) !important}.monaco-editor .codelens-decoration .codicon{vertical-align:middle;color:currentColor !important;color:var(--vscode-editorCodeLens-foreground);line-height:var(--vscode-editorCodeLens-lineHeight);font-size:var(--vscode-editorCodeLens-fontSize)}.monaco-editor .codelens-decoration>a:hover .codicon:before{cursor:pointer}@keyframes fadein{0%{opacity:0;visibility:visible}to{opacity:1}}.monaco-editor .codelens-decoration.fadein{animation:fadein 0.1s linear}.colorpicker-widget{height:190px;user-select:none;-webkit-user-select:none}.colorpicker-color-decoration,.hc-light .colorpicker-color-decoration{border:0.1em solid #000;box-sizing:border-box;margin:0.1em 0.2em 0;width:0.8em;height:0.8em;line-height:0.8em;display:inline-block;cursor:pointer}.hc-black .colorpicker-color-decoration,.vs-dark .colorpicker-color-decoration{border:0.1em solid #eee}.colorpicker-header{display:flex;height:24px;position:relative;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=);background-size:9px 9px;image-rendering:pixelated}.colorpicker-header .picked-color{width:240px;display:flex;align-items:center;justify-content:center;line-height:24px;cursor:pointer;color:#fff;flex:1;white-space:nowrap;overflow:hidden}.colorpicker-header .picked-color .picked-color-presentation{white-space:nowrap;margin-left:5px;margin-right:5px}.colorpicker-header .picked-color .codicon{color:inherit;font-size:14px}.colorpicker-header .picked-color.light{color:#000}.colorpicker-header .original-color{width:74px;z-index:inherit;cursor:pointer}.standalone-colorpicker{color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.colorpicker-header.standalone-colorpicker{border-bottom:none}.colorpicker-header .close-button{cursor:pointer;background-color:var(--vscode-editorHoverWidget-background);border-left:1px solid var(--vscode-editorHoverWidget-border)}.colorpicker-header .close-button-inner-div{width:100%;height:100%;text-align:center}.colorpicker-header .close-button-inner-div:hover{background-color:var(--vscode-toolbar-hoverBackground)}.colorpicker-header .close-icon{padding:3px}.colorpicker-body{display:flex;padding:8px;position:relative}.colorpicker-body .saturation-wrap{overflow:hidden;height:150px;position:relative;min-width:220px;flex:1}.colorpicker-body .saturation-box{height:150px;position:absolute}.colorpicker-body .saturation-selection{width:9px;height:9px;margin:-5px 0 0 -5px;border:1px solid #fff;border-radius:100%;box-shadow:0 0 2px rgba(0, 0, 0, 0.8);position:absolute}.colorpicker-body .strip{width:25px;height:150px}.colorpicker-body .standalone-strip{width:25px;height:122px}.colorpicker-body .hue-strip{position:relative;margin-left:8px;cursor:grab;background:linear-gradient(180deg, red 0, #ff0 17%, #0f0 33%, #0ff 50%, #00f 67%, #f0f 83%, red)}.colorpicker-body .opacity-strip{position:relative;margin-left:8px;cursor:grab;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=);background-size:9px 9px;image-rendering:pixelated}.colorpicker-body .strip.grabbing{cursor:grabbing}.colorpicker-body .slider{position:absolute;top:0;left:-2px;width:calc(100% + 4px);height:4px;box-sizing:border-box;border:1px solid hsla(0, 0%, 100%, 0.71);box-shadow:0 0 1px rgba(0, 0, 0, 0.85)}.colorpicker-body .strip .overlay{height:150px;pointer-events:none}.colorpicker-body .standalone-strip .standalone-overlay{height:122px;pointer-events:none}.standalone-colorpicker-body{display:block;border:1px solid transparent;border-bottom:1px solid var(--vscode-editorHoverWidget-border);overflow:hidden}.colorpicker-body .insert-button{position:absolute;height:20px;width:58px;padding:0;right:8px;bottom:8px;background:var(--vscode-button-background);color:var(--vscode-button-foreground);border-radius:2px;border:none;cursor:pointer}.colorpicker-body .insert-button:hover{background:var(--vscode-button-hoverBackground)}.monaco-editor.hc-light .dnd-target,.monaco-editor.vs .dnd-target{border-right:2px dotted #000;color:#fff}.monaco-editor.vs-dark .dnd-target{border-right:2px dotted #aeafad;color:#51504f}.monaco-editor.hc-black .dnd-target{border-right:2px dotted #fff;color:#000}.monaco-editor.hc-black.mac.mouse-default .view-lines,.monaco-editor.hc-light.mac.mouse-default .view-lines,.monaco-editor.mouse-default .view-lines,.monaco-editor.vs-dark.mac.mouse-default .view-lines{cursor:default}.monaco-editor.hc-black.mac.mouse-copy .view-lines,.monaco-editor.hc-light.mac.mouse-copy .view-lines,.monaco-editor.mouse-copy .view-lines,.monaco-editor.vs-dark.mac.mouse-copy .view-lines{cursor:copy}.post-edit-widget{box-shadow:0 0 8px 2px var(--vscode-widget-shadow);border:1px solid var(--vscode-widget-border, transparent);border-radius:4px;background-color:var(--vscode-editorWidget-background);overflow:hidden}.post-edit-widget .monaco-button{padding:2px;border:none;border-radius:0}.post-edit-widget .monaco-button:hover{background-color:var(--vscode-button-secondaryHoverBackground) !important}.post-edit-widget .monaco-button .codicon{margin:0}.monaco-editor .findOptionsWidget{background-color:var(--vscode-editorWidget-background);color:var(--vscode-editorWidget-foreground);box-shadow:0 0 8px 2px var(--vscode-widget-shadow);border:2px solid var(--vscode-contrastBorder)}.monaco-editor .find-widget{position:absolute;z-index:35;height:33px;overflow:hidden;line-height:19px;transition:transform 0.2s linear;padding:0 4px;box-sizing:border-box;transform:translateY(calc(-100% - 10px));border-bottom-left-radius:4px;border-bottom-right-radius:4px}.monaco-workbench.reduce-motion .monaco-editor .find-widget{transition:transform 0ms linear}.monaco-editor .find-widget textarea{margin:0}.monaco-editor .find-widget.hiddenEditor{display:none}.monaco-editor .find-widget.replaceToggled>.replace-part{display:flex}.monaco-editor .find-widget.visible{transform:translateY(0)}.monaco-editor .find-widget .monaco-inputbox.synthetic-focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px}.monaco-editor .find-widget .monaco-inputbox .input{background-color:transparent;min-height:0}.monaco-editor .find-widget .monaco-findInput .input{font-size:13px}.monaco-editor .find-widget>.find-part,.monaco-editor .find-widget>.replace-part{margin:3px 25px 0 17px;font-size:12px;display:flex}.monaco-editor .find-widget>.find-part .monaco-inputbox,.monaco-editor .find-widget>.replace-part .monaco-inputbox{min-height:25px}.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.mirror{padding-right:22px}.monaco-editor .find-widget>.find-part .monaco-inputbox>.ibwrapper>.input,.monaco-editor .find-widget>.find-part .monaco-inputbox>.ibwrapper>.mirror,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.input,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.mirror{padding-top:2px;padding-bottom:2px}.monaco-editor .find-widget>.find-part .find-actions,.monaco-editor .find-widget>.replace-part .replace-actions{height:25px;display:flex;align-items:center}.monaco-editor .find-widget .monaco-findInput{vertical-align:middle;display:flex;flex:1}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element{width:100%}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element .scrollbar.vertical{opacity:0}.monaco-editor .find-widget .matchesCount{display:flex;flex:initial;margin:0 0 0 3px;padding:2px 0 0 2px;height:25px;vertical-align:middle;box-sizing:border-box;text-align:center;line-height:23px}.monaco-editor .find-widget .button{width:16px;height:16px;padding:3px;border-radius:5px;flex:initial;margin-left:3px;background-position:50%;background-repeat:no-repeat;cursor:pointer;display:flex;align-items:center;justify-content:center}.monaco-editor .find-widget .codicon-find-selection{width:22px;height:22px;padding:3px;border-radius:5px}.monaco-editor .find-widget .button.left{margin-left:0;margin-right:3px}.monaco-editor .find-widget .button.wide{width:auto;padding:1px 6px;top:-1px}.monaco-editor .find-widget .button.toggle{position:absolute;top:0;left:3px;width:18px;height:100%;border-radius:0;box-sizing:border-box}.monaco-editor .find-widget .button.toggle.disabled{display:none}.monaco-editor .find-widget .disabled{color:var(--vscode-disabledForeground);cursor:default}.monaco-editor .find-widget>.replace-part{display:none}.monaco-editor .find-widget>.replace-part>.monaco-findInput{position:relative;display:flex;vertical-align:middle;flex:auto;flex-grow:0;flex-shrink:0}.monaco-editor .find-widget>.replace-part>.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.monaco-editor .find-widget.reduced-find-widget .matchesCount{display:none}.monaco-editor .find-widget.narrow-find-widget{max-width:257px !important}.monaco-editor .find-widget.collapsed-find-widget{max-width:170px !important}.monaco-editor .find-widget.collapsed-find-widget .button.next,.monaco-editor .find-widget.collapsed-find-widget .button.previous,.monaco-editor .find-widget.collapsed-find-widget .button.replace,.monaco-editor .find-widget.collapsed-find-widget .button.replace-all,.monaco-editor .find-widget.collapsed-find-widget>.find-part .monaco-findInput .controls{display:none}.monaco-editor .findMatch{animation-duration:0;animation-name:inherit !important}.monaco-editor .find-widget .monaco-sash{left:0 !important}.monaco-editor.hc-black .find-widget .button:before{position:relative;top:1px;left:2px}.monaco-editor .find-widget>.button.codicon-widget-close{position:absolute;top:5px;right:4px}.monaco-editor .margin-view-overlays .codicon-folding-collapsed,.monaco-editor .margin-view-overlays .codicon-folding-expanded,.monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,.monaco-editor .margin-view-overlays .codicon-folding-manual-expanded{cursor:pointer;opacity:0;transition:opacity 0.5s;display:flex;align-items:center;justify-content:center;font-size:140%;margin-left:2px}.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-collapsed,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-expanded,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-expanded{transition:initial}.monaco-editor .margin-view-overlays .codicon.alwaysShowFoldIcons,.monaco-editor .margin-view-overlays .codicon.codicon-folding-collapsed,.monaco-editor .margin-view-overlays .codicon.codicon-folding-manual-collapsed,.monaco-editor .margin-view-overlays:hover .codicon{opacity:1}.monaco-editor .inline-folded:after{color:grey;margin:0.1em 0.2em 0;content:\"⋯\";display:inline;line-height:1em;cursor:pointer}.monaco-editor .folded-background{background-color:var(--vscode-editor-foldBackground)}.monaco-editor .cldr.codicon.codicon-folding-collapsed,.monaco-editor .cldr.codicon.codicon-folding-expanded,.monaco-editor .cldr.codicon.codicon-folding-manual-collapsed,.monaco-editor .cldr.codicon.codicon-folding-manual-expanded{color:var(--vscode-editorGutter-foldingControlForeground) !important}.monaco-editor .peekview-widget .head .peekview-title .severity-icon{display:inline-block;vertical-align:text-top;margin-right:4px}.monaco-editor .marker-widget{text-overflow:ellipsis;white-space:nowrap}.monaco-editor .marker-widget>.stale{opacity:0.6;font-style:italic}.monaco-editor .marker-widget .title{display:inline-block;padding-right:5px}.monaco-editor .marker-widget .descriptioncontainer{position:absolute;white-space:pre;user-select:text;-webkit-user-select:text;padding:8px 12px 0 20px}.monaco-editor .marker-widget .descriptioncontainer .message{display:flex;flex-direction:column}.monaco-editor .marker-widget .descriptioncontainer .message .details{padding-left:6px}.monaco-editor .marker-widget .descriptioncontainer .message .source,.monaco-editor .marker-widget .descriptioncontainer .message span.code{opacity:0.6}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link{opacity:0.6;color:inherit}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:before{content:\"(\"}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:after{content:\")\"}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under;color:var(--vscode-textLink-foreground);color:var(--vscode-textLink-activeForeground)}.monaco-editor .marker-widget .descriptioncontainer .filename{cursor:pointer}.monaco-editor .goto-definition-link{text-decoration:underline;cursor:pointer;color:var(--vscode-editorLink-activeForeground) !important}.monaco-editor .zone-widget .zone-widget-container.reference-zone-widget{border-top-width:1px;border-bottom-width:1px}.monaco-editor .reference-zone-widget .inline{display:inline-block;vertical-align:top}.monaco-editor .reference-zone-widget .messages{height:100%;width:100%;text-align:center;padding:3em 0}.monaco-editor .reference-zone-widget .ref-tree{line-height:23px;background-color:var(--vscode-peekViewResult-background);color:var(--vscode-peekViewResult-lineForeground)}.monaco-editor .reference-zone-widget .ref-tree .reference{text-overflow:ellipsis;overflow:hidden}.monaco-editor .reference-zone-widget .ref-tree .reference-file{display:inline-flex;width:100%;height:100%;color:var(--vscode-peekViewResult-fileForeground)}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .selected .reference-file{color:inherit !important}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .monaco-list-rows>.monaco-list-row.selected:not(.highlighted){background-color:var(--vscode-peekViewResult-selectionBackground);color:var(--vscode-peekViewResult-selectionForeground) !important}.monaco-editor .reference-zone-widget .ref-tree .reference-file .count{margin-right:12px;margin-left:auto}.monaco-editor .reference-zone-widget .ref-tree .referenceMatch .highlight{background-color:var(--vscode-peekViewResult-matchHighlightBackground)}.monaco-editor .reference-zone-widget .preview .reference-decoration{background-color:var(--vscode-peekViewEditor-matchHighlightBackground);border:2px solid var(--vscode-peekViewEditor-matchHighlightBorder);box-sizing:border-box}.monaco-editor .reference-zone-widget .preview .monaco-editor .inputarea.ime-input,.monaco-editor .reference-zone-widget .preview .monaco-editor .monaco-editor-background{background-color:var(--vscode-peekViewEditor-background)}.monaco-editor .reference-zone-widget .preview .monaco-editor .margin{background-color:var(--vscode-peekViewEditorGutter-background)}.monaco-editor.hc-black .reference-zone-widget .ref-tree .reference-file,.monaco-editor.hc-light .reference-zone-widget .ref-tree .reference-file{font-weight:700}.monaco-editor.hc-black .reference-zone-widget .ref-tree .referenceMatch .highlight,.monaco-editor.hc-light .reference-zone-widget .ref-tree .referenceMatch .highlight{border:1px dotted var(--vscode-contrastActiveBorder, transparent);box-sizing:border-box}.monaco-editor .hoverHighlight{background-color:var(--vscode-editor-hoverHighlightBackground)}.monaco-editor .monaco-hover{color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border);border-radius:3px}.monaco-editor .monaco-hover a{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-hover a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .monaco-hover .hover-row .actions{background-color:var(--vscode-editorHoverWidget-statusBarBackground)}.monaco-editor .monaco-hover code{background-color:var(--vscode-textCodeBlock-background)}.monaco-editor.vs .valueSetReplacement{outline:solid 2px var(--vscode-editorBracketMatch-border)}.monaco-editor .suggest-preview-additional-widget{white-space:nowrap}.monaco-editor .suggest-preview-additional-widget .content-spacer{color:transparent;white-space:pre}.monaco-editor .suggest-preview-additional-widget .button{display:inline-block;cursor:pointer;text-decoration:underline;text-underline-position:under}.monaco-editor .ghost-text-hidden{opacity:0;font-size:0}.monaco-editor .ghost-text-decoration,.monaco-editor .suggest-preview-text .ghost-text{font-style:italic}.monaco-editor .inline-completion-text-to-replace{text-decoration:underline;text-underline-position:under}.monaco-editor .ghost-text-decoration,.monaco-editor .ghost-text-decoration-preview,.monaco-editor .suggest-preview-text .ghost-text{color:var(--vscode-editorGhostText-foreground) !important;background-color:var(--vscode-editorGhostText-background);border:1px solid var(--vscode-editorGhostText-border)}.monaco-editor .inlineSuggestionsHints.withBorder{z-index:39;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .inlineSuggestionsHints a,.monaco-editor .inlineSuggestionsHints a:hover{color:var(--vscode-foreground)}.monaco-editor .inlineSuggestionsHints .keybinding{display:flex;margin-left:4px;opacity:0.6}.monaco-editor .inlineSuggestionsHints .keybinding .monaco-keybinding-key{font-size:8px;padding:2px 3px}.monaco-editor .inlineSuggestionsHints .availableSuggestionCount a{display:flex;min-width:19px;justify-content:center}.monaco-editor .inlineSuggestionStatusBarItemLabel{margin-right:2px}.inline-editor-progress-decoration{display:inline-block;width:1em;height:1em}.inline-progress-widget{display:flex !important;justify-content:center;align-items:center}.inline-progress-widget .icon{font-size:80% !important}.inline-progress-widget:hover .icon{font-size:90% !important;animation:none}.inline-progress-widget:hover .icon:before{content:\"\\ea76\"}.monaco-editor .linked-editing-decoration{background-color:var(--vscode-editor-linkedEditingBackground);min-width:1px}.monaco-editor .detected-link,.monaco-editor .detected-link-active{text-decoration:underline;text-underline-position:under}.monaco-editor .detected-link-active{cursor:pointer;color:var(--vscode-editorLink-activeForeground) !important}.monaco-editor .rendered-markdown kbd{background-color:var(--vscode-keybindingLabel-background);color:var(--vscode-keybindingLabel-foreground);border-radius:3px;border:1px solid var(--vscode-keybindingLabel-border);border-bottom-color:var(--vscode-keybindingLabel-bottomBorder);box-shadow:inset 0 -1px 0 var(--vscode-widget-shadow);vertical-align:middle;padding:1px 3px}.monaco-editor .monaco-editor-overlaymessage{padding-bottom:8px;z-index:10000}.monaco-editor .monaco-editor-overlaymessage.below{padding-bottom:0;padding-top:8px;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.monaco-editor .monaco-editor-overlaymessage.fadeIn{animation:fadeIn 0.15s ease-out}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.monaco-editor .monaco-editor-overlaymessage.fadeOut{animation:fadeOut 0.1s ease-out}.monaco-editor .monaco-editor-overlaymessage .message{padding:2px 4px;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-inputValidation-infoBorder);border-radius:3px}.monaco-editor .monaco-editor-overlaymessage .message p{margin-block:0}.monaco-editor .monaco-editor-overlaymessage .message a{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-editor-overlaymessage .message a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor.hc-black .monaco-editor-overlaymessage .message,.monaco-editor.hc-light .monaco-editor-overlaymessage .message{border-width:2px}.monaco-editor .monaco-editor-overlaymessage .anchor{width:0 !important;height:0 !important;z-index:1000;border:8px solid transparent;position:absolute;left:2px}.monaco-editor .monaco-editor-overlaymessage .anchor.top{border-bottom-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage .anchor.below{border-top-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage.below .anchor.below,.monaco-editor .monaco-editor-overlaymessage:not(.below) .anchor.top{display:none}.monaco-editor .monaco-editor-overlaymessage.below .anchor.top{display:inherit;top:-8px}.monaco-editor .parameter-hints-widget{z-index:39;display:flex;flex-direction:column;line-height:1.5em;cursor:default;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.hc-black .monaco-editor .parameter-hints-widget,.hc-light .monaco-editor .parameter-hints-widget{border-width:2px}.monaco-editor .parameter-hints-widget>.phwrapper{max-width:440px;display:flex;flex-direction:row}.monaco-editor .parameter-hints-widget.multiple{min-height:3.3em;padding:0}.monaco-editor .parameter-hints-widget.multiple .body:before{content:\"\";display:block;height:100%;position:absolute;opacity:0.5;border-left:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .parameter-hints-widget p,.monaco-editor .parameter-hints-widget ul{margin:8px 0}.monaco-editor .parameter-hints-widget .body,.monaco-editor .parameter-hints-widget .monaco-scrollable-element{display:flex;flex:1;flex-direction:column;min-height:100%}.monaco-editor .parameter-hints-widget .signature{padding:4px 5px;position:relative}.monaco-editor .parameter-hints-widget .signature.has-docs:after{content:\"\";display:block;position:absolute;left:0;width:100%;padding-top:4px;opacity:0.5;border-bottom:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .parameter-hints-widget .docs{padding:0 10px 0 5px;white-space:pre-wrap}.monaco-editor .parameter-hints-widget .docs.empty{display:none}.monaco-editor .parameter-hints-widget .docs a{color:var(--vscode-textLink-foreground)}.monaco-editor .parameter-hints-widget .docs a:hover{color:var(--vscode-textLink-activeForeground);cursor:pointer}.monaco-editor .parameter-hints-widget .docs .markdown-docs{white-space:normal}.monaco-editor .parameter-hints-widget .docs code{font-family:var(--monaco-monospace-font);border-radius:3px;padding:0 0.4em;background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .parameter-hints-widget .docs .code,.monaco-editor .parameter-hints-widget .docs .monaco-tokenized-source{white-space:pre-wrap}.monaco-editor .parameter-hints-widget .controls{display:none;flex-direction:column;align-items:center;min-width:22px;justify-content:flex-end}.monaco-editor .parameter-hints-widget.multiple .controls{display:flex;padding:0 2px}.monaco-editor .parameter-hints-widget.multiple .button{width:16px;height:16px;background-repeat:no-repeat;cursor:pointer}.monaco-editor .parameter-hints-widget .button.previous{bottom:24px}.monaco-editor .parameter-hints-widget .overloads{text-align:center;height:12px;line-height:12px;font-family:var(--monaco-monospace-font)}.monaco-editor .parameter-hints-widget .signature .parameter.active{color:var(--vscode-editorHoverWidget-highlightForeground);font-weight:700}.monaco-editor .parameter-hints-widget .documentation-parameter>.parameter{font-weight:700;margin-right:0.5em}.monaco-editor .peekview-widget .head{box-sizing:border-box;display:flex;justify-content:space-between;flex-wrap:nowrap}.monaco-editor .peekview-widget .head .peekview-title{display:flex;align-items:baseline;font-size:13px;margin-left:20px;min-width:0;text-overflow:ellipsis;overflow:hidden}.monaco-editor .peekview-widget .head .peekview-title.clickable{cursor:pointer}.monaco-editor .peekview-widget .head .peekview-title .dirname:not(:empty){font-size:0.9em;margin-left:0.5em}.monaco-editor .peekview-widget .head .peekview-title .dirname,.monaco-editor .peekview-widget .head .peekview-title .filename,.monaco-editor .peekview-widget .head .peekview-title .meta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.monaco-editor .peekview-widget .head .peekview-title .meta:not(:empty):before{content:\"-\";padding:0 0.3em}.monaco-editor .peekview-widget .head .peekview-actions{flex:1;text-align:right;padding-right:2px}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar{display:inline-block}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar,.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar>.actions-container{height:100%}.monaco-editor .peekview-widget>.body{border-top:1px solid;position:relative}.monaco-editor .peekview-widget .head .peekview-title .codicon{margin-right:4px;align-self:center}.monaco-editor .peekview-widget .monaco-list .monaco-list-row.focused .codicon{color:inherit !important}.monaco-editor .rename-box{z-index:100;color:inherit;border-radius:4px}.monaco-editor .rename-box.preview{padding:4px 4px 0}.monaco-editor .rename-box .rename-input{padding:3px;border-radius:2px}.monaco-editor .rename-box .rename-label{display:none;opacity:0.8}.monaco-editor .rename-box.preview .rename-label{display:inherit}.monaco-editor .snippet-placeholder{min-width:2px;outline-style:solid;outline-width:1px;background-color:var(--vscode-editor-snippetTabstopHighlightBackground, transparent);outline-color:var(--vscode-editor-snippetTabstopHighlightBorder, transparent)}.monaco-editor .finish-snippet-placeholder{outline-style:solid;outline-width:1px;background-color:var(--vscode-editor-snippetFinalTabstopHighlightBackground, transparent);outline-color:var(--vscode-editor-snippetFinalTabstopHighlightBorder, transparent)}.monaco-editor .sticky-widget{overflow:hidden}.monaco-editor .sticky-widget-line-numbers{float:left;background-color:inherit}.monaco-editor .sticky-widget-lines-scrollable{display:inline-block;position:absolute;overflow:hidden;width:var(--vscode-editorStickyScroll-scrollableWidth);background-color:inherit}.monaco-editor .sticky-widget-lines{position:absolute;background-color:inherit}.monaco-editor .sticky-line-content,.monaco-editor .sticky-line-number{color:var(--vscode-editorLineNumber-foreground);white-space:nowrap;display:inline-block;position:absolute;background-color:inherit}.monaco-editor .sticky-line-number .codicon-folding-collapsed,.monaco-editor .sticky-line-number .codicon-folding-expanded{float:right;transition:var(--vscode-editorStickyScroll-foldingOpacityTransition)}.monaco-editor .sticky-line-content{width:var(--vscode-editorStickyScroll-scrollableWidth);background-color:inherit;white-space:nowrap}.monaco-editor .sticky-line-number-inner{display:inline-block;text-align:right}.monaco-editor.hc-black .sticky-widget,.monaco-editor.hc-light .sticky-widget{border-bottom:1px solid var(--vscode-contrastBorder)}.monaco-editor .sticky-line-content:hover{background-color:var(--vscode-editorStickyScrollHover-background);cursor:pointer}.monaco-editor .sticky-widget{width:100%;box-shadow:var(--vscode-scrollbar-shadow) 0 3px 2px -2px;z-index:4;background-color:var(--vscode-editorStickyScroll-background)}.monaco-editor .sticky-widget.peek{background-color:var(--vscode-peekViewEditorStickyScroll-background)}.monaco-editor .suggest-widget{width:430px;z-index:40;display:flex;flex-direction:column;border-radius:3px}.monaco-editor .suggest-widget.message{flex-direction:row;align-items:center}.monaco-editor .suggest-details,.monaco-editor .suggest-widget{flex:0 1 auto;width:100%;border:1px solid var(--vscode-editorSuggestWidget-border);background-color:var(--vscode-editorSuggestWidget-background)}.monaco-editor.hc-black .suggest-details,.monaco-editor.hc-black .suggest-widget,.monaco-editor.hc-light .suggest-details,.monaco-editor.hc-light .suggest-widget{border-width:2px}.monaco-editor .suggest-widget .suggest-status-bar{box-sizing:border-box;display:none;flex-flow:row nowrap;justify-content:space-between;width:100%;font-size:80%;padding:0 4px;border-top:1px solid var(--vscode-editorSuggestWidget-border);overflow:hidden}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar{display:flex}.monaco-editor .suggest-widget .suggest-status-bar .left{padding-right:8px}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-label{color:var(--vscode-editorSuggestWidgetStatus-foreground)}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label{margin-right:0}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label:after{content:\", \";margin-right:0.3em}.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row.focused.string-label>.contents>.main>.right>.readMore,.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget.with-status-bar:not(.docs-side) .monaco-list .monaco-list-row:hover>.contents>.main>.right.can-expand-details>.details-label{width:100%}.monaco-editor .suggest-widget>.message{padding-left:22px}.monaco-editor .suggest-widget>.tree{height:100%;width:100%}.monaco-editor .suggest-widget .monaco-list{user-select:none;-webkit-user-select:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row{display:flex;-mox-box-sizing:border-box;box-sizing:border-box;padding-right:10px;background-repeat:no-repeat;background-position:2px 2px;white-space:nowrap;cursor:pointer;touch-action:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused{color:var(--vscode-editorSuggestWidget-selectedForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused .codicon{color:var(--vscode-editorSuggestWidget-selectedIconForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents{flex:1;height:100%;overflow:hidden;padding-left:2px}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main{display:flex;overflow:hidden;text-overflow:ellipsis;white-space:pre;justify-content:space-between}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{display:flex}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.focused)>.contents>.main .monaco-icon-label{color:var(--vscode-editorSuggestWidget-foreground)}.monaco-editor .suggest-widget:not(.frozen) .monaco-highlighted-label .highlight{font-weight:700}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main .monaco-highlighted-label .highlight{color:var(--vscode-editorSuggestWidget-highlightForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused>.contents>.main .monaco-highlighted-label .highlight{color:var(--vscode-editorSuggestWidget-focusHighlightForeground)}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:before{color:inherit;opacity:1;font-size:14px;cursor:pointer}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close{position:absolute;top:6px;right:2px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close:hover,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:hover{opacity:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{opacity:0.7}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.signature-label{overflow:hidden;text-overflow:ellipsis;opacity:0.6}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.qualifier-label{margin-left:12px;opacity:0.4;font-size:85%;line-height:normal;text-overflow:ellipsis;overflow:hidden;align-self:center}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{font-size:85%;margin-left:1.1em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label>.monaco-tokenized-source{display:inline}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{display:none}.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row.focused:not(.string-label)>.contents>.main>.right>.details-label,.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label)>.contents>.main>.right>.details-label,.monaco-editor .suggest-widget:not(.shows-details) .monaco-list .monaco-list-row.focused>.contents>.main>.right>.details-label{display:inline}.monaco-editor .suggest-widget:not(.docs-side) .monaco-list .monaco-list-row.focused:hover>.contents>.main>.right.can-expand-details>.details-label{width:calc(100% - 26px)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left{flex-shrink:1;flex-grow:1;overflow:hidden}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.monaco-icon-label{flex-shrink:0}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label)>.contents>.main>.left>.monaco-icon-label{max-width:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label>.contents>.main>.left>.monaco-icon-label{flex-shrink:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{overflow:hidden;flex-shrink:4;max-width:70%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:inline-block;position:absolute;right:10px;width:18px;height:18px;visibility:hidden}.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none !important}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused.string-label>.contents>.main>.right>.readMore{display:inline-block}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused:hover>.contents>.main>.right>.readMore{visibility:visible}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated{opacity:0.66;text-decoration:unset}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated>.monaco-icon-label-container>.monaco-icon-name-container{text-decoration:line-through}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label:before{height:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon{display:block;height:16px;width:16px;margin-left:2px;background-repeat:no-repeat;background-size:80%;background-position:50%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.hide{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .suggest-icon{display:flex;align-items:center;margin-right:4px}.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .icon,.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .suggest-icon:before{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.customcolor .colorspan{margin:0 0 0 0.3em;border:0.1em solid #000;width:0.7em;height:0.7em;display:inline-block}.monaco-editor .suggest-details-container{z-index:41}.monaco-editor .suggest-details{display:flex;flex-direction:column;cursor:default;color:var(--vscode-editorSuggestWidget-foreground)}.monaco-editor .suggest-details.focused{border-color:var(--vscode-focusBorder)}.monaco-editor .suggest-details a{color:var(--vscode-textLink-foreground)}.monaco-editor .suggest-details a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .suggest-details code{background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .suggest-details.no-docs{display:none}.monaco-editor .suggest-details>.monaco-scrollable-element{flex:1}.monaco-editor .suggest-details>.monaco-scrollable-element>.body{box-sizing:border-box;height:100%;width:100%}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.type{flex:2;overflow:hidden;text-overflow:ellipsis;opacity:0.7;white-space:pre;margin:0 24px 0 0;padding:4px 0 12px 5px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.type.auto-wrap{white-space:normal;word-break:break-all}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs{margin:0;padding:4px 5px;white-space:pre-wrap}.monaco-editor .suggest-details.no-type>.monaco-scrollable-element>.body>.docs{margin-right:24px;overflow:hidden}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs{padding:0;white-space:normal;min-height:calc(1rem + 8px)}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div,.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>span:not(:empty){padding:4px 5px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:first-child{margin-top:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:last-child{margin-bottom:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs .monaco-tokenized-source{white-space:pre}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs .code{white-space:pre-wrap;word-wrap:break-word}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs .codicon{vertical-align:sub}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>p:empty{display:none}.monaco-editor .suggest-details code{border-radius:3px;padding:0 0.4em}.monaco-editor .suggest-details ol,.monaco-editor .suggest-details ul{padding-left:20px}.monaco-editor .suggest-details p code{font-family:var(--monaco-monospace-font)}.monaco-editor .codicon.codicon-symbol-array,.monaco-workbench .codicon.codicon-symbol-array{color:var(--vscode-symbolIcon-arrayForeground)}.monaco-editor .codicon.codicon-symbol-boolean,.monaco-workbench .codicon.codicon-symbol-boolean{color:var(--vscode-symbolIcon-booleanForeground)}.monaco-editor .codicon.codicon-symbol-class,.monaco-workbench .codicon.codicon-symbol-class{color:var(--vscode-symbolIcon-classForeground)}.monaco-editor .codicon.codicon-symbol-method,.monaco-workbench .codicon.codicon-symbol-method{color:var(--vscode-symbolIcon-methodForeground)}.monaco-editor .codicon.codicon-symbol-color,.monaco-workbench .codicon.codicon-symbol-color{color:var(--vscode-symbolIcon-colorForeground)}.monaco-editor .codicon.codicon-symbol-constant,.monaco-workbench .codicon.codicon-symbol-constant{color:var(--vscode-symbolIcon-constantForeground)}.monaco-editor .codicon.codicon-symbol-constructor,.monaco-workbench .codicon.codicon-symbol-constructor{color:var(--vscode-symbolIcon-constructorForeground)}.monaco-editor .codicon.codicon-symbol-enum,.monaco-editor .codicon.codicon-symbol-value,.monaco-workbench .codicon.codicon-symbol-enum,.monaco-workbench .codicon.codicon-symbol-value{color:var(--vscode-symbolIcon-enumeratorForeground)}.monaco-editor .codicon.codicon-symbol-enum-member,.monaco-workbench .codicon.codicon-symbol-enum-member{color:var(--vscode-symbolIcon-enumeratorMemberForeground)}.monaco-editor .codicon.codicon-symbol-event,.monaco-workbench .codicon.codicon-symbol-event{color:var(--vscode-symbolIcon-eventForeground)}.monaco-editor .codicon.codicon-symbol-field,.monaco-workbench .codicon.codicon-symbol-field{color:var(--vscode-symbolIcon-fieldForeground)}.monaco-editor .codicon.codicon-symbol-file,.monaco-workbench .codicon.codicon-symbol-file{color:var(--vscode-symbolIcon-fileForeground)}.monaco-editor .codicon.codicon-symbol-folder,.monaco-workbench .codicon.codicon-symbol-folder{color:var(--vscode-symbolIcon-folderForeground)}.monaco-editor .codicon.codicon-symbol-function,.monaco-workbench .codicon.codicon-symbol-function{color:var(--vscode-symbolIcon-functionForeground)}.monaco-editor .codicon.codicon-symbol-interface,.monaco-workbench .codicon.codicon-symbol-interface{color:var(--vscode-symbolIcon-interfaceForeground)}.monaco-editor .codicon.codicon-symbol-key,.monaco-workbench .codicon.codicon-symbol-key{color:var(--vscode-symbolIcon-keyForeground)}.monaco-editor .codicon.codicon-symbol-keyword,.monaco-workbench .codicon.codicon-symbol-keyword{color:var(--vscode-symbolIcon-keywordForeground)}.monaco-editor .codicon.codicon-symbol-module,.monaco-workbench .codicon.codicon-symbol-module{color:var(--vscode-symbolIcon-moduleForeground)}.monaco-editor .codicon.codicon-symbol-namespace,.monaco-workbench .codicon.codicon-symbol-namespace{color:var(--vscode-symbolIcon-namespaceForeground)}.monaco-editor .codicon.codicon-symbol-null,.monaco-workbench .codicon.codicon-symbol-null{color:var(--vscode-symbolIcon-nullForeground)}.monaco-editor .codicon.codicon-symbol-number,.monaco-workbench .codicon.codicon-symbol-number{color:var(--vscode-symbolIcon-numberForeground)}.monaco-editor .codicon.codicon-symbol-object,.monaco-workbench .codicon.codicon-symbol-object{color:var(--vscode-symbolIcon-objectForeground)}.monaco-editor .codicon.codicon-symbol-operator,.monaco-workbench .codicon.codicon-symbol-operator{color:var(--vscode-symbolIcon-operatorForeground)}.monaco-editor .codicon.codicon-symbol-package,.monaco-workbench .codicon.codicon-symbol-package{color:var(--vscode-symbolIcon-packageForeground)}.monaco-editor .codicon.codicon-symbol-property,.monaco-workbench .codicon.codicon-symbol-property{color:var(--vscode-symbolIcon-propertyForeground)}.monaco-editor .codicon.codicon-symbol-reference,.monaco-workbench .codicon.codicon-symbol-reference{color:var(--vscode-symbolIcon-referenceForeground)}.monaco-editor .codicon.codicon-symbol-snippet,.monaco-workbench .codicon.codicon-symbol-snippet{color:var(--vscode-symbolIcon-snippetForeground)}.monaco-editor .codicon.codicon-symbol-string,.monaco-workbench .codicon.codicon-symbol-string{color:var(--vscode-symbolIcon-stringForeground)}.monaco-editor .codicon.codicon-symbol-struct,.monaco-workbench .codicon.codicon-symbol-struct{color:var(--vscode-symbolIcon-structForeground)}.monaco-editor .codicon.codicon-symbol-text,.monaco-workbench .codicon.codicon-symbol-text{color:var(--vscode-symbolIcon-textForeground)}.monaco-editor .codicon.codicon-symbol-type-parameter,.monaco-workbench .codicon.codicon-symbol-type-parameter{color:var(--vscode-symbolIcon-typeParameterForeground)}.monaco-editor .codicon.codicon-symbol-unit,.monaco-workbench .codicon.codicon-symbol-unit{color:var(--vscode-symbolIcon-unitForeground)}.monaco-editor .codicon.codicon-symbol-variable,.monaco-workbench .codicon.codicon-symbol-variable{color:var(--vscode-symbolIcon-variableForeground)}.editor-banner{box-sizing:border-box;cursor:default;width:100%;font-size:12px;display:flex;overflow:visible;height:26px;background:var(--vscode-banner-background)}.editor-banner .icon-container{display:flex;flex-shrink:0;align-items:center;padding:0 6px 0 10px}.editor-banner .icon-container.custom-icon{background-repeat:no-repeat;background-position:50%;background-size:16px;width:16px;padding:0;margin:0 6px 0 10px}.editor-banner .message-container{display:flex;align-items:center;line-height:26px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.editor-banner .message-container p{margin-block-start:0;margin-block-end:0}.editor-banner .message-actions-container{flex-grow:1;flex-shrink:0;line-height:26px;margin:0 4px}.editor-banner .message-actions-container a.monaco-button{width:inherit;margin:2px 8px;padding:0 12px}.editor-banner .message-actions-container a{padding:3px;margin-left:12px;text-decoration:underline}.editor-banner .action-container{padding:0 10px 0 6px}.editor-banner{background-color:var(--vscode-banner-background)}.editor-banner,.editor-banner .action-container .codicon,.editor-banner .message-actions-container .monaco-link{color:var(--vscode-banner-foreground)}.editor-banner .icon-container .codicon{color:var(--vscode-banner-iconForeground)}.monaco-editor .unicode-highlight{border:1px solid var(--vscode-editorUnicodeHighlight-border);background-color:var(--vscode-editorUnicodeHighlight-background);box-sizing:border-box}.monaco-editor .focused .selectionHighlight{background-color:var(--vscode-editor-selectionHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-selectionHighlightBorder)}.monaco-editor.hc-black .focused .selectionHighlight,.monaco-editor.hc-light .focused .selectionHighlight{border-style:dotted}.monaco-editor .wordHighlight{background-color:var(--vscode-editor-wordHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightBorder)}.monaco-editor.hc-black .wordHighlight,.monaco-editor.hc-light .wordHighlight{border-style:dotted}.monaco-editor .wordHighlightStrong{background-color:var(--vscode-editor-wordHighlightStrongBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightStrongBorder)}.monaco-editor.hc-black .wordHighlightStrong,.monaco-editor.hc-light .wordHighlightStrong{border-style:dotted}.monaco-editor .wordHighlightText{background-color:var(--vscode-editor-wordHighlightTextBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightTextBorder)}.monaco-editor.hc-black .wordHighlightText,.monaco-editor.hc-light .wordHighlightText{border-style:dotted}.monaco-editor .zone-widget{position:absolute;z-index:10}.monaco-editor .zone-widget .zone-widget-container{border-top-style:solid;border-bottom-style:solid;border-top-width:0;border-bottom-width:0;position:relative}.monaco-editor .iPadShowKeyboard{width:58px;min-width:0;height:36px;min-height:0;margin:0;padding:0;position:absolute;resize:none;overflow:hidden;background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00OC4wMzYgNC4wMUg0LjAwOFYzMi4wM2g0NC4wMjhWNC4wMXpNNC4wMDguMDA4QTQuMDAzIDQuMDAzIDAgMDAuMDA1IDQuMDFWMzIuMDNhNC4wMDMgNC4wMDMgMCAwMDQuMDAzIDQuMDAyaDQ0LjAyOGE0LjAwMyA0LjAwMyAwIDAwNC4wMDMtNC4wMDJWNC4wMUE0LjAwMyA0LjAwMyAwIDAwNDguMDM2LjAwOEg0LjAwOHpNOC4wMSA4LjAxM2g0LjAwM3Y0LjAwM0g4LjAxVjguMDEzem0xMi4wMDggMGgtNC4wMDJ2NC4wMDNoNC4wMDJWOC4wMTN6bTQuMDAzIDBoNC4wMDJ2NC4wMDNoLTQuMDAyVjguMDEzem0xMi4wMDggMGgtNC4wMDN2NC4wMDNoNC4wMDNWOC4wMTN6bTQuMDAyIDBoNC4wMDN2NC4wMDNINDAuMDNWOC4wMTN6bS0yNC4wMTUgOC4wMDVIOC4wMXY0LjAwM2g4LjAwNnYtNC4wMDN6bTQuMDAyIDBoNC4wMDN2NC4wMDNoLTQuMDAzdi00LjAwM3ptMTIuMDA4IDBoLTQuMDAzdjQuMDAzaDQuMDAzdi00LjAwM3ptMTIuMDA4IDB2NC4wMDNoLTguMDA1di00LjAwM2g4LjAwNXptLTMyLjAyMSA4LjAwNUg4LjAxdjQuMDAzaDQuMDAzdi00LjAwM3ptNC4wMDMgMGgyMC4wMTN2NC4wMDNIMTYuMDE2di00LjAwM3ptMjguMDE4IDBINDAuMDN2NC4wMDNoNC4wMDN2LTQuMDAzeiIgZmlsbD0iIzQyNDI0MiIvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9ImNsaXAwIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMCAwaDUzdjM2SDB6Ii8+PC9jbGlwUGF0aD48L2RlZnM+PC9zdmc+) 50% no-repeat;border:4px solid #f6f6f6;border-radius:4px}.monaco-editor.vs-dark .iPadShowKeyboard{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00OC4wMzYgNC4wMUg0LjAwOFYzMi4wM2g0NC4wMjhWNC4wMXpNNC4wMDguMDA4QTQuMDAzIDQuMDAzIDAgMDAuMDA1IDQuMDFWMzIuMDNhNC4wMDMgNC4wMDMgMCAwMDQuMDAzIDQuMDAyaDQ0LjAyOGE0LjAwMyA0LjAwMyAwIDAwNC4wMDMtNC4wMDJWNC4wMUE0LjAwMyA0LjAwMyAwIDAwNDguMDM2LjAwOEg0LjAwOHpNOC4wMSA4LjAxM2g0LjAwM3Y0LjAwM0g4LjAxVjguMDEzem0xMi4wMDggMGgtNC4wMDJ2NC4wMDNoNC4wMDJWOC4wMTN6bTQuMDAzIDBoNC4wMDJ2NC4wMDNoLTQuMDAyVjguMDEzem0xMi4wMDggMGgtNC4wMDN2NC4wMDNoNC4wMDNWOC4wMTN6bTQuMDAyIDBoNC4wMDN2NC4wMDNINDAuMDNWOC4wMTN6bS0yNC4wMTUgOC4wMDVIOC4wMXY0LjAwM2g4LjAwNnYtNC4wMDN6bTQuMDAyIDBoNC4wMDN2NC4wMDNoLTQuMDAzdi00LjAwM3ptMTIuMDA4IDBoLTQuMDAzdjQuMDAzaDQuMDAzdi00LjAwM3ptMTIuMDA4IDB2NC4wMDNoLTguMDA1di00LjAwM2g4LjAwNXptLTMyLjAyMSA4LjAwNUg4LjAxdjQuMDAzaDQuMDAzdi00LjAwM3ptNC4wMDMgMGgyMC4wMTN2NC4wMDNIMTYuMDE2di00LjAwM3ptMjguMDE4IDBINDAuMDN2NC4wMDNoNC4wMDN2LTQuMDAzeiIgZmlsbD0iI0M1QzVDNSIvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9ImNsaXAwIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMCAwaDUzdjM2SDB6Ii8+PC9jbGlwUGF0aD48L2RlZnM+PC9zdmc+) 50% no-repeat;border:4px solid #252526}.monaco-editor .tokens-inspect-widget{z-index:50;user-select:text;-webkit-user-select:text;padding:10px;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor.hc-black .tokens-inspect-widget,.monaco-editor.hc-light .tokens-inspect-widget{border-width:2px}.monaco-editor .tokens-inspect-widget .tokens-inspect-separator{height:1px;border:0;background-color:var(--vscode-editorHoverWidget-border)}.monaco-editor .tokens-inspect-widget .tm-token{font-family:var(--monaco-monospace-font)}.monaco-editor .tokens-inspect-widget .tm-token-length{font-weight:400;font-size:60%;float:right}.monaco-editor .tokens-inspect-widget .tm-metadata-table{width:100%}.monaco-editor .tokens-inspect-widget .tm-metadata-value{font-family:var(--monaco-monospace-font);text-align:right}.monaco-editor .tokens-inspect-widget .tm-token-type{font-family:var(--monaco-monospace-font)}.quick-input-widget{font-size:13px}.quick-input-widget .monaco-highlighted-label .highlight{color:#0066bf}.vs .quick-input-widget .monaco-list-row.focused .monaco-highlighted-label .highlight{color:#9dddff}.vs-dark .quick-input-widget .monaco-highlighted-label .highlight{color:#0097fb}.hc-black .quick-input-widget .monaco-highlighted-label .highlight{color:#f38518}.hc-light .quick-input-widget .monaco-highlighted-label .highlight{color:#0f4a85}.monaco-keybinding>.monaco-keybinding-key{background-color:hsla(0, 0%, 86.7%, 0.4);border:1px solid hsla(0, 0%, 80%, 0.4);border-bottom-color:hsla(0, 0%, 73.3%, 0.4);box-shadow:inset 0 -1px 0 hsla(0, 0%, 73.3%, 0.4);color:#555}.hc-black .monaco-keybinding>.monaco-keybinding-key{background-color:transparent;border:1px solid #6fc3df;box-shadow:none;color:#fff}.hc-light .monaco-keybinding>.monaco-keybinding-key{background-color:transparent;border:1px solid #0f4a85;box-shadow:none;color:#292929}.vs-dark .monaco-keybinding>.monaco-keybinding-key{background-color:hsla(0, 0%, 50.2%, 0.17);border:1px solid rgba(51, 51, 51, 0.6);border-bottom-color:rgba(68, 68, 68, 0.6);box-shadow:inset 0 -1px 0 rgba(68, 68, 68, 0.6);color:#ccc}.monaco-editor{font-family:-apple-system, BlinkMacSystemFont, Segoe WPC, Segoe UI, HelveticaNeue-Light, system-ui, Ubuntu, Droid Sans, sans-serif;--monaco-monospace-font:\"SF Mono\",Monaco,Menlo,Consolas,\"Ubuntu Mono\",\"Liberation Mono\",\"DejaVu Sans Mono\",\"Courier New\",monospace}.monaco-editor.hc-black .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.hc-light .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-menu .monaco-action-bar.vertical .action-item .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-hover p{margin:0}.monaco-aria-container{position:absolute !important;top:0;height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;clip:rect(1px, 1px, 1px, 1px);clip-path:inset(50%)}.action-widget{font-size:13px;border-radius:0;min-width:160px;max-width:80vw;z-index:40;display:block;width:100%;border:1px solid var(--vscode-editorWidget-border) !important;border-radius:2px;background-color:var(--vscode-editorWidget-background);color:var(--vscode-editorWidget-foreground)}.context-view-block{z-index:-1}.context-view-block,.context-view-pointerBlock{position:fixed;cursor:auto;left:0;top:0;width:100%;height:100%}.context-view-pointerBlock{z-index:2}.action-widget .monaco-list{user-select:none;-webkit-user-select:none;border:0 !important}.action-widget .monaco-list:focus:before{outline:0 !important}.action-widget .monaco-list .monaco-scrollable-element{overflow:visible}.action-widget .monaco-list .monaco-list-row{padding:0 10px;white-space:nowrap;cursor:pointer;touch-action:none;width:100%}.action-widget .monaco-list .monaco-list-row.action.focused:not(.option-disabled){background-color:var(--vscode-quickInputList-focusBackground) !important;color:var(--vscode-quickInputList-focusForeground);outline:1px solid var(--vscode-menu-selectionBorder, transparent);outline-offset:-1px}.action-widget .monaco-list-row.group-header{color:var(--vscode-descriptionForeground) !important;font-weight:600}.action-widget .monaco-list .group-header,.action-widget .monaco-list .option-disabled,.action-widget .monaco-list .option-disabled .focused,.action-widget .monaco-list .option-disabled .focused:before,.action-widget .monaco-list .option-disabled:before{cursor:default !important;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;background-color:transparent !important;outline:0 solid !important}.action-widget .monaco-list-row.action{display:flex;gap:6px;align-items:center}.action-widget .monaco-list-row.action.option-disabled,.action-widget .monaco-list-row.action.option-disabled .codicon,.action-widget .monaco-list:focus .monaco-list-row.focused.action.option-disabled,.action-widget .monaco-list:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused).option-disabled{color:var(--vscode-disabledForeground)}.action-widget .monaco-list-row.action:not(.option-disabled) .codicon{color:inherit}.action-widget .monaco-list-row.action .title{flex:1;overflow:hidden;text-overflow:ellipsis}.action-widget .action-widget-action-bar{background-color:var(--vscode-editorHoverWidget-statusBarBackground);border-top:1px solid var(--vscode-editorHoverWidget-border)}.action-widget .action-widget-action-bar:before{display:block;content:\"\";width:100%}.action-widget .action-widget-action-bar .actions-container{padding:0 8px}.action-widget-action-bar .action-label{color:var(--vscode-textLink-activeForeground);font-size:12px;line-height:22px;padding:0;pointer-events:all}.action-widget-action-bar .action-item{margin-right:16px;pointer-events:none}.action-widget-action-bar .action-label:hover{background-color:transparent !important}.monaco-action-bar .actions-container.highlight-toggled .action-label.checked{background:var(--vscode-actionBar-toggledBackground) !important}.monaco-action-bar .action-item.menu-entry .action-label.icon{width:16px;height:16px;background-repeat:no-repeat;background-position:50%;background-size:16px}.monaco-dropdown-with-default{display:flex !important;flex-direction:row;border-radius:5px}.monaco-dropdown-with-default>.action-container>.action-label{margin-right:0}.monaco-dropdown-with-default>.action-container.menu-entry>.action-label.icon{width:16px;height:16px;background-repeat:no-repeat;background-position:50%;background-size:16px}.monaco-dropdown-with-default>.dropdown-action-container>.monaco-dropdown>.dropdown-label .codicon[class*=codicon-]{font-size:12px;padding-left:0;padding-right:0;line-height:16px;margin-left:-3px}.monaco-dropdown-with-default>.dropdown-action-container>.monaco-dropdown>.dropdown-label>.action-label{display:block;background-size:16px;background-position:50%;background-repeat:no-repeat}.monaco-link{color:var(--vscode-textLink-foreground)}.monaco-link:hover{color:var(--vscode-textLink-activeForeground)}.quick-input-widget{position:absolute;width:600px;z-index:2550;left:50%;margin-left:-300px;-webkit-app-region:no-drag;border-radius:6px}.quick-input-titlebar{display:flex;align-items:center;border-top-left-radius:5px;border-top-right-radius:5px}.quick-input-left-action-bar{display:flex;margin-left:4px;flex:1}.quick-input-title{padding:3px 0;text-align:center;text-overflow:ellipsis;overflow:hidden}.quick-input-right-action-bar{display:flex;margin-right:4px;flex:1}.quick-input-right-action-bar>.actions-container{justify-content:flex-end}.quick-input-titlebar .monaco-action-bar .action-label.codicon{background-position:50%;background-repeat:no-repeat;padding:2px}.quick-input-description{margin:6px 6px 6px 11px}.quick-input-header .quick-input-description{margin:4px 2px;flex:1}.quick-input-header{display:flex;padding:8px 6px 6px}.quick-input-widget.hidden-input .quick-input-header{padding:0;margin-bottom:0}.quick-input-and-message{display:flex;flex-direction:column;flex-grow:1;min-width:0;position:relative}.quick-input-check-all{align-self:center;margin:0}.quick-input-filter{flex-grow:1;display:flex;position:relative}.quick-input-box{flex-grow:1}.quick-input-widget.show-checkboxes .quick-input-box,.quick-input-widget.show-checkboxes .quick-input-message{margin-left:5px}.quick-input-visible-count{position:absolute;left:-10000px}.quick-input-count{align-self:center;position:absolute;right:4px;display:flex;align-items:center}.quick-input-count .monaco-count-badge{vertical-align:middle;padding:2px 4px;border-radius:2px;min-height:auto;line-height:normal}.quick-input-action{margin-left:6px}.quick-input-action .monaco-text-button{font-size:11px;padding:0 6px;display:flex;height:25px;align-items:center}.quick-input-message{margin-top:-1px;padding:5px;overflow-wrap:break-word}.quick-input-message>.codicon{margin:0 0.2em;vertical-align:text-bottom}.quick-input-message a{color:inherit}.quick-input-progress.monaco-progress-container{position:relative}.quick-input-list{line-height:22px}.quick-input-widget.hidden-input .quick-input-list{margin-top:4px;padding-bottom:4px}.quick-input-list .monaco-list{overflow:hidden;max-height:440px;padding-bottom:5px}.quick-input-list .monaco-scrollable-element{padding:0 5px}.quick-input-list .quick-input-list-entry{box-sizing:border-box;overflow:hidden;display:flex;height:100%;padding:0 6px}.quick-input-list .quick-input-list-entry.quick-input-list-separator-border{border-top-width:1px;border-top-style:solid}.quick-input-list .monaco-list-row{border-radius:3px}.quick-input-list .monaco-list-row[data-index=\"0\"] .quick-input-list-entry.quick-input-list-separator-border{border-top-style:none}.quick-input-list .quick-input-list-label{overflow:hidden;display:flex;height:100%;flex:1}.quick-input-list .quick-input-list-checkbox{align-self:center;margin:0}.quick-input-list .quick-input-list-icon{background-size:16px;background-position:0;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;display:flex;align-items:center;justify-content:center}.quick-input-list .quick-input-list-rows{overflow:hidden;text-overflow:ellipsis;display:flex;flex-direction:column;height:100%;flex:1;margin-left:5px}.quick-input-widget.show-checkboxes .quick-input-list .quick-input-list-rows{margin-left:10px}.quick-input-widget .quick-input-list .quick-input-list-checkbox{display:none}.quick-input-widget.show-checkboxes .quick-input-list .quick-input-list-checkbox{display:inline}.quick-input-list .quick-input-list-rows>.quick-input-list-row{display:flex;align-items:center}.quick-input-list .quick-input-list-rows>.quick-input-list-row .monaco-icon-label,.quick-input-list .quick-input-list-rows>.quick-input-list-row .monaco-icon-label .monaco-icon-label-container>.monaco-icon-name-container{flex:1}.quick-input-list .quick-input-list-rows>.quick-input-list-row .codicon[class*=codicon-]{vertical-align:text-bottom}.quick-input-list .quick-input-list-rows .monaco-highlighted-label>span{opacity:1}.quick-input-list .quick-input-list-entry .quick-input-list-entry-keybinding{margin-right:8px}.quick-input-list .quick-input-list-label-meta{opacity:0.7;line-height:normal;text-overflow:ellipsis;overflow:hidden}.quick-input-list .monaco-highlighted-label .highlight{font-weight:700}.quick-input-list .quick-input-list-entry .quick-input-list-separator{margin-right:4px}.quick-input-list .quick-input-list-entry-action-bar{display:flex;flex:0;overflow:visible}.quick-input-list .quick-input-list-entry-action-bar .action-label{display:none}.quick-input-list .quick-input-list-entry-action-bar .action-label.codicon{margin-right:4px;padding:0 2px 2px}.quick-input-list .quick-input-list-entry-action-bar{margin-top:1px;margin-right:4px}.quick-input-list .monaco-list-row.focused .quick-input-list-entry-action-bar .action-label,.quick-input-list .quick-input-list-entry .quick-input-list-entry-action-bar .action-label.always-visible,.quick-input-list .quick-input-list-entry:hover .quick-input-list-entry-action-bar .action-label{display:flex}.quick-input-list .monaco-list-row.focused .monaco-keybinding-key,.quick-input-list .monaco-list-row.focused .quick-input-list-entry .quick-input-list-separator{color:inherit}.quick-input-list .monaco-list-row.focused .monaco-keybinding-key{background:none}.quick-input-list .quick-input-list-separator-as-item{font-weight:600;font-size:12px}.extension-editor .codicon.codicon-error,.extensions-viewlet>.extensions .codicon.codicon-error,.markers-panel .marker-icon .codicon.codicon-error,.markers-panel .marker-icon.error,.monaco-editor .zone-widget .codicon.codicon-error,.preferences-editor .codicon.codicon-error,.text-search-provider-messages .providerMessage .codicon.codicon-error{color:var(--vscode-problemsErrorIcon-foreground)}.extension-editor .codicon.codicon-warning,.extensions-viewlet>.extensions .codicon.codicon-warning,.markers-panel .marker-icon .codicon.codicon-warning,.markers-panel .marker-icon.warning,.monaco-editor .zone-widget .codicon.codicon-warning,.preferences-editor .codicon.codicon-warning,.text-search-provider-messages .providerMessage .codicon.codicon-warning{color:var(--vscode-problemsWarningIcon-foreground)}.extension-editor .codicon.codicon-info,.extensions-viewlet>.extensions .codicon.codicon-info,.markers-panel .marker-icon .codicon.codicon-info,.markers-panel .marker-icon.info,.monaco-editor .zone-widget .codicon.codicon-info,.preferences-editor .codicon.codicon-info,.text-search-provider-messages .providerMessage .codicon.codicon-info{color:var(--vscode-problemsInfoIcon-foreground)}arcgis-code-editor{display:flex;width:100%;height:100%;flex-direction:column;direction:ltr}arcgis-code-editor .monaco-editor{flex:1 1 auto}arcgis-code-editor .monaco-editor .monaco-hover,arcgis-code-editor .monaco-editor .editor-widget,arcgis-code-editor .monaco-editor .suggest-details-container{z-index:9999}";
4293
4373
 
4294
4374
  // Our default options for the Editor
4295
4375
  const EditorOptionsDefaults = {
4296
- autoIndent: "advanced",
4297
- automaticLayout: true,
4298
- bracketPairColorization: { enabled: true },
4299
- minimap: { enabled: false },
4300
- renderLineHighlight: "none",
4301
- suggest: {
4302
- snippetsPreventQuickSuggestions: false,
4303
- showWords: false
4304
- },
4305
- tabSize: 2,
4306
- useShadowDOM: true
4376
+ autoIndent: "advanced",
4377
+ automaticLayout: true,
4378
+ bracketPairColorization: { enabled: true },
4379
+ minimap: { enabled: false },
4380
+ renderLineHighlight: "none",
4381
+ suggest: {
4382
+ snippetsPreventQuickSuggestions: false,
4383
+ showWords: false
4384
+ },
4385
+ tabSize: 2,
4386
+ useShadowDOM: true
4307
4387
  };
4308
4388
  const ArcgisCodeEditor = class {
4309
- constructor(hostRef) {
4310
- index.registerInstance(this, hostRef);
4311
- this.valueChange = index.createEvent(this, "valueChange", 3);
4312
- this._componentReadyDefer = new arcadeDefaults.h();
4313
- this._disposables = [];
4314
- this.value = undefined;
4315
- this.language = undefined;
4316
- this.modelId = "";
4317
- }
4318
- valuePropChange(newValue, oldValue) {
4319
- if (!this._editorInstance || newValue === oldValue) {
4320
- return;
4389
+ constructor(hostRef) {
4390
+ index.registerInstance(this, hostRef);
4391
+ this.valueChange = index.createEvent(this, "valueChange", 3);
4392
+ this._componentReadyDefer = new arcadeDefaults.h();
4393
+ this._disposables = [];
4394
+ this.value = undefined;
4395
+ this.language = undefined;
4396
+ this.modelId = arcadeDefaults.U();
4321
4397
  }
4322
- this._editorInstance.setValue(newValue ?? "");
4323
- }
4324
- languagePropChange(newValue, oldValue) {
4325
- if (!this._editorInstance || newValue === oldValue) {
4326
- return;
4398
+ valuePropChange(newValue, oldValue) {
4399
+ if (!this._editorInstance || newValue === oldValue) {
4400
+ return;
4401
+ }
4402
+ this._editorInstance.setValue(newValue ?? "");
4327
4403
  }
4328
- this.updateModel();
4329
- }
4330
- modelIdPropChange(newValue, oldValue) {
4331
- if (!this._editorInstance || newValue === oldValue) {
4332
- return;
4404
+ languagePropChange(newValue, oldValue) {
4405
+ if (!this._editorInstance || newValue === oldValue) {
4406
+ return;
4407
+ }
4408
+ this.updateModel();
4333
4409
  }
4334
- this.updateModel();
4335
- }
4336
- //#endregion
4337
- // #region Public methods API
4338
- /**
4339
- * Gets the current value in the editor.
4340
- * @returns {Promise<string>}
4341
- */
4342
- async getValue() {
4343
- await this._componentReadyDefer.promise;
4344
- return this._editorInstance?.getValue() ?? "";
4345
- }
4346
- /**
4347
- * Sets the new value in the editor. Use this method instead of setting the value
4348
- * on the model to preserve undo/redo stack.
4349
- * @param text
4350
- * @returns {Promise<void>}
4351
- */
4352
- async setValue(text) {
4353
- await this._componentReadyDefer.promise;
4354
- if (!this._editorInstance) {
4355
- return;
4410
+ modelIdPropChange(newValue, oldValue) {
4411
+ if (!this._editorInstance || newValue === oldValue) {
4412
+ return;
4413
+ }
4414
+ this.updateModel();
4356
4415
  }
4357
- const model = this._editorInstance.getModel();
4358
- if (!model) {
4359
- return;
4416
+ //#endregion
4417
+ // #region Public methods API
4418
+ /**
4419
+ * Gets the current value in the editor.
4420
+ * @returns {Promise<string>}
4421
+ */
4422
+ async getValue() {
4423
+ await this._componentReadyDefer.promise;
4424
+ return this._editorInstance?.getValue() ?? "";
4360
4425
  }
4361
- const range = model.getFullModelRange();
4362
- this._editorInstance.executeEdits("", [{ range, text: text ?? "", forceMoveMarkers: true }]);
4363
- this._editorInstance.pushUndoStop();
4364
- }
4365
- /**
4366
- * Inserts a text at the current position in the editor.
4367
- * @param {string} text - The string to insert
4368
- * @returns {Promise<void>}
4369
- */
4370
- async insertText(text) {
4371
- await this._componentReadyDefer.promise;
4372
- if (!this._editorInstance) {
4373
- return;
4426
+ /**
4427
+ * Sets the new value in the editor. Use this method instead of setting the value
4428
+ * on the model to preserve undo/redo stack.
4429
+ * @param text
4430
+ * @returns {Promise<void>}
4431
+ */
4432
+ async setValue(text) {
4433
+ await this._componentReadyDefer.promise;
4434
+ if (!this._editorInstance) {
4435
+ return;
4436
+ }
4437
+ const model = this._editorInstance.getModel();
4438
+ if (!model) {
4439
+ return;
4440
+ }
4441
+ const range = model.getFullModelRange();
4442
+ this._editorInstance.executeEdits("", [{ range, text: text ?? "", forceMoveMarkers: true }]);
4443
+ this._editorInstance.pushUndoStop();
4374
4444
  }
4375
- const model = this._editorInstance.getModel();
4376
- if (!model) {
4377
- return;
4445
+ /**
4446
+ * Inserts a text at the current position in the editor.
4447
+ * @param {string} text - The string to insert
4448
+ * @returns {Promise<void>}
4449
+ */
4450
+ async insertText(text) {
4451
+ await this._componentReadyDefer.promise;
4452
+ if (!this._editorInstance) {
4453
+ return;
4454
+ }
4455
+ const model = this._editorInstance.getModel();
4456
+ if (!model) {
4457
+ return;
4458
+ }
4459
+ const range = this._editorInstance.getSelection() ?? new arcadeDefaults.Range(1, 1, 1, 1);
4460
+ this._editorInstance.executeEdits("", [{ range, text: text ?? "", forceMoveMarkers: true }]);
4378
4461
  }
4379
- const range = this._editorInstance.getSelection() ?? new arcadeDefaults.Range(1, 1, 1, 1);
4380
- this._editorInstance.executeEdits("", [{ range, text: text ?? "", forceMoveMarkers: true }]);
4381
- }
4382
- /**
4383
- * Inserts a snippet at the current position in the editor.
4384
- * @param {string} text - The string snippet to insert
4385
- * @returns {Promise<void>}
4386
- */
4387
- async insertSnippet(text) {
4388
- await this._componentReadyDefer.promise;
4389
- if (!this._editorInstance) {
4390
- return;
4462
+ /**
4463
+ * Inserts a snippet at the current position in the editor.
4464
+ * @param {string} text - The string snippet to insert
4465
+ * @returns {Promise<void>}
4466
+ */
4467
+ async insertSnippet(text) {
4468
+ await this._componentReadyDefer.promise;
4469
+ if (!this._editorInstance) {
4470
+ return;
4471
+ }
4472
+ const snippetController = this._editorInstance.getContribution("snippetController2");
4473
+ snippetController?.insert(text ?? "");
4474
+ this._editorInstance.focus();
4391
4475
  }
4392
- const snippetController = this._editorInstance.getContribution("snippetController2");
4393
- snippetController.insert(text ?? "");
4394
- this._editorInstance.focus();
4395
- }
4396
- /**
4397
- * @internal
4398
- * Returns the editor instance.
4399
- * @returns {Promise<IStandaloneCodeEditor>} - The monaco editor instance
4400
- */
4401
- async getEditorInstance() {
4402
- await this._componentReadyDefer.promise;
4403
- return this._editorInstance;
4404
- }
4405
- /**
4406
- * Sets the focus on the editor.
4407
- * @returns {Promise<void>}
4408
- */
4409
- async setFocus() {
4410
- await this._componentReadyDefer.promise;
4411
- this._editorInstance?.focus();
4412
- }
4413
- //#endregion
4414
- //#region Listeners
4415
- //#endregion
4416
- // #region Component lifecycle events
4417
- componentWillLoad() {
4418
- // Define the Monaco environemt.
4419
- // Can only do this when assets path has been defined.
4420
- // If we were placing this logic in connectedCallback, assets path would have not yet been defined.
4421
- // setupMonacoEnvironment will not redefine if already defined.
4422
- setupMonacoEnvironment(index.getAssetPath("./assets"));
4423
- }
4424
- componentDidLoad() {
4425
- // Create and attach and instance of Monaco Editor to the inner element
4426
- arcadeDefaults.editor.getModel(this.getUri())?.dispose();
4427
- // Create the model without the value.
4428
- // Since it's not yet attached to the editor the diagnostic service will not process it.
4429
- // We will set the value after the editor has been created to trigger the diagnostic again.
4430
- const model = arcadeDefaults.editor.createModel("", this.language, this.getUri());
4431
- // Create the editor for the host element.
4432
- // This will not trigger a diagnostic.
4433
- this._editorInstance = arcadeDefaults.editor.create(this._hostElt, {
4434
- model,
4435
- fixedOverflowWidgets: true,
4436
- scrollBeyondLastLine: false
4437
- });
4438
- this._disposables.push(this._editorInstance);
4439
- // Set the value now to trigger a diagnostic again
4440
- model.setValue(this.value ?? "");
4441
- // Now we can set are component as ready
4442
- this._componentReadyDefer.resolve();
4443
- this._editorInstance.updateOptions(EditorOptionsDefaults);
4444
- // Listen to the Monaco Editor content change event and propagate
4445
- this._editorInstance.onDidChangeModelContent(() => {
4446
- const script = this._editorInstance?.getValue() ?? "";
4447
- this.valueChange.emit(script);
4448
- });
4449
- // Detect if the host element or its ancestors got a theme attribute mutation
4450
- this._themeObserver = arcadeDefaults.p(this._hostElt, ["class"], () => this.updateTheme());
4451
- // Update the theme of the Monaco Editor
4452
- this.updateTheme();
4453
- // Creates a resize observer to re-layout the editor on size changing
4454
- const resizeObserver = new ResizeObserver(() => this._editorInstance?.layout());
4455
- resizeObserver.observe(this._hostElt);
4456
- // Add common actions to the Monaco Editor's context menu and command palette
4457
- this.addCommonEditorActions();
4458
- }
4459
- disconnectedCallback() {
4460
- while (this._disposables.length) {
4461
- this._disposables.pop()?.dispose();
4476
+ /**
4477
+ * @internal
4478
+ * Returns the editor instance.
4479
+ * @returns {Promise<IStandaloneCodeEditor>} - The monaco editor instance
4480
+ */
4481
+ async getEditorInstance() {
4482
+ await this._componentReadyDefer.promise;
4483
+ return this._editorInstance;
4462
4484
  }
4463
- this._themeObserver?.disconnect();
4464
- }
4465
- //#endregion
4466
- // #region Private methods API
4467
- updateModel() {
4468
- if (!this._editorInstance) {
4469
- return;
4485
+ /**
4486
+ * Sets the focus on the editor.
4487
+ * @returns {Promise<void>}
4488
+ */
4489
+ async setFocus() {
4490
+ await this._componentReadyDefer.promise;
4491
+ this._editorInstance?.focus();
4470
4492
  }
4471
- this._editorInstance.getModel()?.dispose();
4472
- this._editorInstance.setModel(arcadeDefaults.editor.createModel(this.value ?? "", this.language, this.getUri()));
4473
- }
4474
- getUri() {
4475
- return this.modelId ? arcadeDefaults.Uri.parse(this.modelId) : arcadeDefaults.Uri.parse("");
4476
- }
4477
- updateTheme() {
4478
- // This is called the first time and subsequently by the Mutation Observer
4479
- // Figure out the theme by walking the ancestor path.
4480
- // If no theme is found then default to light.
4481
- const theme = arcadeDefaults.C(this._hostElt) === "light" ? "vs" : "vs-dark";
4482
- if (theme === this._currentTheme) {
4483
- return;
4493
+ //#endregion
4494
+ //#region Listeners
4495
+ //#endregion
4496
+ // #region Component lifecycle events
4497
+ componentWillLoad() {
4498
+ // Define the Monaco environemt.
4499
+ // Can only do this when assets path has been defined.
4500
+ // If we were placing this logic in connectedCallback, assets path would have not yet been defined.
4501
+ // setupMonacoEnvironment will not redefine if already defined.
4502
+ setupMonacoEnvironment(index.getAssetPath("./assets"));
4484
4503
  }
4485
- this._currentTheme = theme;
4486
- arcadeDefaults.editor.setTheme(theme);
4487
- }
4488
- //#endregion
4489
- // #region Private methods API
4490
- addCommonEditorActions() {
4491
- // Copy zoom in / out command functions
4492
- const zoomInFn = this._editorInstance?.getAction("editor.action.fontZoomIn");
4493
- const zoomOutFn = this._editorInstance?.getAction("editor.action.fontZoomOut");
4494
- // Override the two existing commands so that they appear in the context menu
4495
- this._editorInstance?.addAction({
4496
- // Use an existing action's ID to override it
4497
- id: "editor.action.fontZoomIn",
4498
- // A label of the action that will be presented to the user.
4499
- label: "Editor Font Zoom In",
4500
- // An optional array of keybindings for the action.
4501
- keybindings: [arcadeDefaults.KeyMod.CtrlCmd | arcadeDefaults.KeyCode.Equal],
4502
- contextMenuGroupId: "zooming",
4503
- contextMenuOrder: 1,
4504
- // Method that will be executed when the action is triggered.
4505
- // @param editor The editor instance is passed in as a convenience
4506
- run: () => {
4507
- zoomInFn?.run();
4508
- }
4509
- });
4510
- this._editorInstance?.addAction({
4511
- id: "editor.action.fontZoomOut",
4512
- label: "Editor Font Zoom Out",
4513
- keybindings: [arcadeDefaults.KeyMod.CtrlCmd | arcadeDefaults.KeyCode.Minus],
4514
- contextMenuGroupId: "zooming",
4515
- contextMenuOrder: 2,
4516
- run: () => {
4517
- zoomOutFn?.run();
4518
- }
4519
- });
4520
- }
4521
- //#endregion
4522
- // #region Rendering
4523
- render() {
4524
- return index.h(index.Host, null);
4525
- }
4526
- static get assetsDirs() { return ["assets"]; }
4527
- get _hostElt() { return index.getElement(this); }
4528
- static get watchers() { return {
4529
- "value": ["valuePropChange"],
4530
- "language": ["languagePropChange"],
4531
- "modelId": ["modelIdPropChange"]
4532
- }; }
4504
+ componentDidLoad() {
4505
+ // Create and attach and instance of Monaco Editor to the inner element
4506
+ arcadeDefaults.editor.getModel(this.getUri())?.dispose();
4507
+ // Create the model without the value.
4508
+ // Since it's not yet attached to the editor the diagnostic service will not process it.
4509
+ // We will set the value after the editor has been created to trigger the diagnostic again.
4510
+ const model = arcadeDefaults.editor.createModel("", this.language, this.getUri());
4511
+ // Create the editor for the host element.
4512
+ // This will not trigger a diagnostic.
4513
+ this._editorInstance = arcadeDefaults.editor.create(this._hostElt, {
4514
+ model,
4515
+ fixedOverflowWidgets: true,
4516
+ scrollBeyondLastLine: false
4517
+ });
4518
+ this._disposables.push(this._editorInstance);
4519
+ // Set the value now to trigger a diagnostic again
4520
+ model.setValue(this.value ?? "");
4521
+ // Now we can set are component as ready
4522
+ this._componentReadyDefer.resolve();
4523
+ this._editorInstance.updateOptions(EditorOptionsDefaults);
4524
+ // Listen to the Monaco Editor content change event and propagate
4525
+ this._editorInstance.onDidChangeModelContent(() => {
4526
+ const script = this._editorInstance?.getValue() ?? "";
4527
+ this.valueChange.emit(script);
4528
+ });
4529
+ // Detect if the host element or its ancestors got a theme attribute mutation
4530
+ this._themeObserver = arcadeDefaults.x(this._hostElt, ["class"], () => this.updateTheme());
4531
+ // Update the theme of the Monaco Editor
4532
+ this.updateTheme();
4533
+ // Creates a resize observer to re-layout the editor on size changing
4534
+ const resizeObserver = new ResizeObserver(() => this._editorInstance?.layout());
4535
+ resizeObserver.observe(this._hostElt);
4536
+ // Add common actions to the Monaco Editor's context menu and command palette
4537
+ this.addCommonEditorActions();
4538
+ }
4539
+ disconnectedCallback() {
4540
+ while (this._disposables.length) {
4541
+ this._disposables.pop()?.dispose();
4542
+ }
4543
+ this._themeObserver?.disconnect();
4544
+ }
4545
+ //#endregion
4546
+ // #region Private methods API
4547
+ updateModel() {
4548
+ if (!this._editorInstance) {
4549
+ return;
4550
+ }
4551
+ this._editorInstance.getModel()?.dispose();
4552
+ this._editorInstance.setModel(arcadeDefaults.editor.createModel(this.value ?? "", this.language, this.getUri()));
4553
+ }
4554
+ getUri() {
4555
+ return this.modelId ? arcadeDefaults.Uri.parse(this.modelId) : arcadeDefaults.Uri.parse("");
4556
+ }
4557
+ updateTheme() {
4558
+ // This is called the first time and subsequently by the Mutation Observer
4559
+ // Figure out the theme by walking the ancestor path.
4560
+ // If no theme is found then default to light.
4561
+ const theme = arcadeDefaults.k(this._hostElt) === "light" ? "vs" : "vs-dark";
4562
+ if (theme === this._currentTheme) {
4563
+ return;
4564
+ }
4565
+ this._currentTheme = theme;
4566
+ arcadeDefaults.editor.setTheme(theme);
4567
+ }
4568
+ //#endregion
4569
+ // #region Private methods API
4570
+ addCommonEditorActions() {
4571
+ // Copy zoom in / out command functions
4572
+ const zoomInFn = this._editorInstance?.getAction("editor.action.fontZoomIn");
4573
+ const zoomOutFn = this._editorInstance?.getAction("editor.action.fontZoomOut");
4574
+ // Override the two existing commands so that they appear in the context menu
4575
+ this._editorInstance?.addAction({
4576
+ // Use an existing action's ID to override it
4577
+ id: "editor.action.fontZoomIn",
4578
+ // A label of the action that will be presented to the user.
4579
+ label: "Editor Font Zoom In",
4580
+ // An optional array of keybindings for the action.
4581
+ keybindings: [arcadeDefaults.KeyMod.CtrlCmd | arcadeDefaults.KeyCode.Equal],
4582
+ contextMenuGroupId: "zooming",
4583
+ contextMenuOrder: 1,
4584
+ // Method that will be executed when the action is triggered.
4585
+ // @param editor The editor instance is passed in as a convenience
4586
+ run: async () => await zoomInFn?.run()
4587
+ });
4588
+ this._editorInstance?.addAction({
4589
+ id: "editor.action.fontZoomOut",
4590
+ label: "Editor Font Zoom Out",
4591
+ keybindings: [arcadeDefaults.KeyMod.CtrlCmd | arcadeDefaults.KeyCode.Minus],
4592
+ contextMenuGroupId: "zooming",
4593
+ contextMenuOrder: 2,
4594
+ run: async () => await zoomOutFn?.run()
4595
+ });
4596
+ }
4597
+ //#endregion
4598
+ // #region Rendering
4599
+ render() {
4600
+ return index.h(index.Host, null);
4601
+ }
4602
+ static get assetsDirs() { return ["assets"]; }
4603
+ get _hostElt() { return index.getElement(this); }
4604
+ static get watchers() { return {
4605
+ "value": ["valuePropChange"],
4606
+ "language": ["languagePropChange"],
4607
+ "modelId": ["modelIdPropChange"]
4608
+ }; }
4533
4609
  };
4534
4610
  ArcgisCodeEditor.style = codeEditorCss;
4535
4611