@arcgis/coding-components 4.31.0-next.6 → 4.31.0-next.61

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 (218) hide show
  1. package/README.md +22 -3
  2. package/dist/arcgis-coding-components/arcgis-coding-components.esm.js +2 -2
  3. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.ar.json +1 -1
  4. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.bg.json +1 -1
  5. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.bs.json +1 -1
  6. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.ca.json +6 -6
  7. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.cs.json +1 -1
  8. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.da.json +1 -1
  9. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.de.json +1 -1
  10. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.el.json +1 -1
  11. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.es.json +1 -1
  12. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.et.json +1 -1
  13. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.fi.json +1 -1
  14. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.fr.json +1 -1
  15. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.he.json +1 -1
  16. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.hr.json +1 -1
  17. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.id.json +1 -1
  18. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.it.json +1 -1
  19. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.ko.json +1 -1
  20. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.nb.json +1 -1
  21. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.nl.json +1 -1
  22. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.pl.json +1 -1
  23. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.pt-BR.json +1 -1
  24. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.pt-PT.json +1 -1
  25. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.ru.json +1 -1
  26. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.sk.json +1 -1
  27. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.sl.json +1 -1
  28. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.sr.json +1 -1
  29. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.sv.json +1 -1
  30. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.th.json +1 -1
  31. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.tr.json +1 -1
  32. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.uk.json +5 -5
  33. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.vi.json +1 -1
  34. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.zh-CN.json +1 -1
  35. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.zh-HK.json +1 -1
  36. package/dist/arcgis-coding-components/assets/arcade-language/t9n/profile.t9n.zh-TW.json +1 -1
  37. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.ca.json +2 -2
  38. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.de.json +1 -1
  39. package/dist/arcgis-coding-components/assets/arcade-results/t9n/arcade-results.t9n.he.json +1 -1
  40. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.ca.json +1 -1
  41. package/dist/arcgis-coding-components/assets/arcade-variables/t9n/arcade-variables.t9n.it.json +1 -1
  42. package/dist/arcgis-coding-components/assets/code-editor/arcade.worker.js +3 -3
  43. package/dist/arcgis-coding-components/assets/code-editor/sql-expr.worker.js +460 -7
  44. package/dist/arcgis-coding-components/assets/language-api-panel/t9n/language-api-panel.t9n.ca.json +1 -1
  45. package/dist/arcgis-coding-components/assets/sql-expression-editor/api/sql-expression-api.t9n.en.json +30 -30
  46. package/dist/arcgis-coding-components/assets/sql-expression-editor/t9n/sql-expression-editor.t9n.en.json +4 -0
  47. package/dist/arcgis-coding-components/assets/sql-expression-fields/t9n/sql-expression-fields.t9n.en.json +4 -0
  48. package/dist/arcgis-coding-components/index.esm.js +2 -2
  49. package/dist/arcgis-coding-components/p-0cb4fef5.js +68 -0
  50. package/dist/arcgis-coding-components/p-210b84af.js +6 -0
  51. package/dist/arcgis-coding-components/{p-10cab8d9.js → p-38ac5715.js} +2 -2
  52. package/dist/arcgis-coding-components/{p-41c932b5.js → p-4926ce1a.js} +3 -3
  53. package/dist/arcgis-coding-components/p-5a153155.entry.js +6 -0
  54. package/dist/arcgis-coding-components/{p-38534c31.js → p-5ebbf307.js} +3 -3
  55. package/dist/arcgis-coding-components/{p-8c6a6176.js → p-64a223f6.js} +3 -3
  56. package/dist/arcgis-coding-components/p-67743b19.js +6 -0
  57. package/dist/arcgis-coding-components/p-81daa81b.entry.js +6 -0
  58. package/dist/arcgis-coding-components/{p-14ab3ed5.js → p-8becedb9.js} +1 -1
  59. package/dist/arcgis-coding-components/{p-2a7ef2fd.js → p-9327da9f.js} +2 -2
  60. package/dist/arcgis-coding-components/{p-e11999af.js → p-a95711a0.js} +2 -2
  61. package/dist/arcgis-coding-components/{p-19b4f0e9.js → p-b53816d4.js} +2 -2
  62. package/dist/arcgis-coding-components/{p-022df536.js → p-d1bfcb69.js} +1 -1
  63. package/dist/arcgis-coding-components/p-ec5b9ea3.entry.js +6 -0
  64. package/dist/arcgis-coding-components/p-eca30e5b.js +6 -0
  65. package/dist/arcgis-coding-components/p-eee3ff96.js +7 -0
  66. package/dist/arcgis-coding-components/p-f9d23ea0.js +6 -0
  67. package/dist/cjs/{app-globals-8991f48d.js → app-globals-f4c1e97c.js} +1 -1
  68. package/dist/cjs/arcade-defaults-ec32f7d1.js +350 -0
  69. package/dist/cjs/{arcade-mode-ee5f5a57.js → arcade-mode-532caf55.js} +18 -5
  70. package/dist/cjs/arcgis-arcade-editor_6.cjs.entry.js +59 -103
  71. package/dist/cjs/arcgis-coding-components.cjs.js +5 -5
  72. package/dist/cjs/arcgis-sql-expression-editor.cjs.entry.js +32 -11
  73. package/dist/cjs/arcgis-sql-expression-fields.cjs.entry.js +16 -10
  74. package/dist/cjs/{css-c0ad88d7.js → css-498723df.js} +1 -1
  75. package/dist/cjs/{cssMode-deeb6f90.js → cssMode-2def57fb.js} +2 -3
  76. package/dist/cjs/{html-be08d94a.js → html-54a71c36.js} +2 -3
  77. package/dist/cjs/{htmlMode-f5b8239a.js → htmlMode-3a79512a.js} +2 -3
  78. package/dist/cjs/{index-358de60d.js → index-8f53c170.js} +203 -156
  79. package/dist/cjs/index.cjs.js +4 -4
  80. package/dist/cjs/{javascript-37d3d13f.js → javascript-67d269fa.js} +3 -4
  81. package/dist/cjs/{jsonMode-12a2a091.js → jsonMode-46d9bccc.js} +2 -3
  82. package/dist/cjs/{language-defaults-base-1f082ad7.js → language-defaults-base-337abff1.js} +812 -1036
  83. package/dist/cjs/loader.cjs.js +4 -4
  84. package/dist/cjs/{sql-expr-defaults-dca57c68.js → sql-expr-defaults-c246fecf.js} +226 -75
  85. package/dist/cjs/sql-expr-mode-58361d32.js +480 -0
  86. package/dist/cjs/{tsMode-d33a7021.js → tsMode-0032d144.js} +2 -3
  87. package/dist/cjs/{typescript-f3be2ce7.js → typescript-e84c6b80.js} +2 -3
  88. package/dist/components/arcade-defaults.js +239 -4
  89. package/dist/components/arcade-mode.js +18 -4
  90. package/dist/components/arcade-results.js +3 -3
  91. package/dist/components/arcade-suggestions.js +2 -2
  92. package/dist/components/arcade-variables.js +2 -2
  93. package/dist/components/arcgis-arcade-editor.js +21 -13
  94. package/dist/components/arcgis-arcade-results.js +1 -1
  95. package/dist/components/arcgis-arcade-suggestions.js +1 -1
  96. package/dist/components/arcgis-arcade-variables.js +1 -1
  97. package/dist/components/arcgis-assets.d.ts +26 -26
  98. package/dist/components/arcgis-assets.js +2 -2
  99. package/dist/components/arcgis-code-editor.js +1 -1
  100. package/dist/components/arcgis-language-api-panel.js +1 -1
  101. package/dist/components/arcgis-sql-expression-editor.js +33 -11
  102. package/dist/components/arcgis-sql-expression-fields.js +1 -1
  103. package/dist/components/{chunk-3IUJHIAA.js → chunk-WEX2VUZV.js} +87 -92
  104. package/dist/components/code-editor.js +17 -23
  105. package/dist/components/fields.js +4 -4
  106. package/dist/components/index.js +1 -1
  107. package/dist/components/index2.js +4 -4
  108. package/dist/components/language-api-panel.js +22 -4
  109. package/dist/components/language-defaults-base.js +61 -287
  110. package/dist/components/markdown.js +1 -1
  111. package/dist/components/sql-expr-defaults.js +77 -24
  112. package/dist/components/sql-expr-mode.js +294 -24950
  113. package/dist/components/sql-expression-fields.js +15 -8
  114. package/dist/components/useT9n.js +41 -2
  115. package/dist/components/utilities.js +1 -1
  116. package/dist/esm/{app-globals-3e4e0353.js → app-globals-fa265627.js} +1 -1
  117. package/dist/esm/arcade-defaults-337657fa.js +345 -0
  118. package/dist/esm/{arcade-mode-4a83348d.js → arcade-mode-a63523c8.js} +18 -5
  119. package/dist/esm/arcgis-arcade-editor_6.entry.js +55 -99
  120. package/dist/esm/arcgis-coding-components.js +6 -6
  121. package/dist/esm/arcgis-sql-expression-editor.entry.js +32 -11
  122. package/dist/esm/arcgis-sql-expression-fields.entry.js +16 -10
  123. package/dist/esm/{css-bad8d1c3.js → css-d85cb176.js} +1 -1
  124. package/dist/esm/{cssMode-68a5f601.js → cssMode-d79695ab.js} +2 -3
  125. package/dist/esm/{html-9b27df1a.js → html-16fb0022.js} +2 -3
  126. package/dist/esm/{htmlMode-361ad282.js → htmlMode-cb57ceed.js} +2 -3
  127. package/dist/esm/{index-8a552796.js → index-ebdb3a18.js} +203 -156
  128. package/dist/esm/index.js +4 -4
  129. package/dist/esm/{javascript-8004e14f.js → javascript-ae8e86d4.js} +3 -4
  130. package/dist/esm/{jsonMode-91a0be74.js → jsonMode-06c411fd.js} +2 -3
  131. package/dist/esm/{language-defaults-base-df906b3d.js → language-defaults-base-5dfd6f32.js} +809 -1036
  132. package/dist/esm/loader.js +5 -5
  133. package/dist/esm/{sql-expr-defaults-ae0be602.js → sql-expr-defaults-f324cf8f.js} +225 -74
  134. package/dist/esm/sql-expr-mode-f606957e.js +476 -0
  135. package/dist/esm/{tsMode-2756c213.js → tsMode-2114c9fd.js} +2 -3
  136. package/dist/esm/{typescript-1aaf3ddd.js → typescript-b771d29f.js} +2 -3
  137. package/dist/loader/cdn.js +2 -3
  138. package/dist/loader/index.cjs.js +2 -3
  139. package/dist/loader/index.d.ts +3 -0
  140. package/dist/loader/index.es2017.js +2 -3
  141. package/dist/loader/index.js +2 -3
  142. package/dist/types/components/arcade-editor/arcade-editor.d.ts +16 -5
  143. package/dist/types/components/code-editor/code-editor.d.ts +14 -4
  144. package/dist/types/components/language-api-panel/language-api-panel.d.ts +1 -0
  145. package/dist/types/components/sql-expression-editor/sql-expression-editor.d.ts +31 -3
  146. package/dist/types/components/sql-expression-fields/sql-expression-fields.d.ts +17 -0
  147. package/dist/types/components.d.ts +40 -13
  148. package/dist/types/data/arcgis-web-compoments/actions-runner-1/_work/arcgis-web-components/arcgis-web-components/packages/coding-packages/coding-components/.stencil/stencil.config.d.ts +3 -0
  149. package/dist/types/data/{actions-runner-1 → arcgis-web-compoments/actions-runner-1}/_work/arcgis-web-components/arcgis-web-components/packages/coding-packages/coding-components/.stencil/stories/internal/arcade-editor/arcade-editor.stories.d.ts +8 -1
  150. package/dist/types/data/{actions-runner-1 → arcgis-web-compoments/actions-runner-1}/_work/arcgis-web-components/arcgis-web-components/packages/coding-packages/coding-components/.stencil/stories/internal/arcade-editor/editorContext.d.ts +5 -1
  151. package/dist/types/stencil-public-runtime.d.ts +3 -10
  152. package/dist/types/utils/arcade-monaco/arcade-defaults.d.ts +1 -0
  153. package/dist/types/utils/arcade-monaco/arcade-language-features.d.ts +1 -0
  154. package/dist/types/utils/arcade-monaco/arcade-profile-strategy.d.ts +9 -0
  155. package/dist/types/utils/arcade-monaco/arcade-worker-manager.d.ts +6 -0
  156. package/dist/types/utils/fields.d.ts +2 -2
  157. package/dist/types/utils/profile/editor-profile.d.ts +7 -6
  158. package/dist/types/utils/profile/types.d.ts +28 -0
  159. package/dist/types/utils/profile/utils.d.ts +5 -1
  160. package/dist/types/utils/sql-expr-monaco/sql-expr-completion.d.ts +56 -5
  161. package/dist/types/utils/sql-expr-monaco/sql-expr-constants.d.ts +61 -0
  162. package/dist/types/utils/sql-expr-monaco/sql-expr-contribution.d.ts +1 -11
  163. package/dist/types/utils/sql-expr-monaco/sql-expr-defaults.d.ts +0 -1
  164. package/dist/types/utils/sql-expr-monaco/sql-expr-language-features.d.ts +18 -534
  165. package/dist/types/utils/sql-expr-monaco/sql-expr-mode.d.ts +34 -1
  166. package/dist/types/utils/sql-expr-monaco/sql-expr-parser-utils.d.ts +30 -0
  167. package/dist/types/utils/sql-expr-monaco/sql-expr-service-accessors.d.ts +19 -0
  168. package/dist/types/utils/sql-expr-monaco/sql-expr-validation-diagnostic-adapter.d.ts +0 -7
  169. package/dist/types/utils/sql-expr-monaco/sql-expr-validation-utils.d.ts +73 -77
  170. package/dist/types/utils/sql-expr-monaco/sql-expr-validation.d.ts +5 -6
  171. package/dist/types/utils/sql-expr-monaco/sql-expr-worker-manager.d.ts +8 -0
  172. package/dist/types/utils/sql-expr-monaco/sql-expr.worker.d.ts +11 -8
  173. package/dist/types/utils/sql-expr-monaco/sql-expression-profile-strategy.d.ts +13 -0
  174. package/dist/types/utils/sql-expr-monaco/types.d.ts +30 -28
  175. package/package.json +19 -19
  176. package/dist/arcgis-coding-components/p-1baf3624.entry.js +0 -6
  177. package/dist/arcgis-coding-components/p-8e61744c.js +0 -68
  178. package/dist/arcgis-coding-components/p-933de2b5.entry.js +0 -6
  179. package/dist/arcgis-coding-components/p-9dfc06ea.js +0 -6
  180. package/dist/arcgis-coding-components/p-a536144e.js +0 -6
  181. package/dist/arcgis-coding-components/p-cd67026d.js +0 -6
  182. package/dist/arcgis-coding-components/p-d7e83ea1.entry.js +0 -6
  183. package/dist/arcgis-coding-components/p-e055c041.js +0 -6
  184. package/dist/arcgis-coding-components/p-f1fab45e.js +0 -7
  185. package/dist/cjs/arcade-defaults-2d36c400.js +0 -116
  186. package/dist/cjs/sql-expr-mode-c644220d.js +0 -25135
  187. package/dist/esm/arcade-defaults-1adb5004.js +0 -111
  188. package/dist/esm/polyfills/core-js.js +0 -11
  189. package/dist/esm/polyfills/dom.js +0 -79
  190. package/dist/esm/polyfills/es5-html-element.js +0 -1
  191. package/dist/esm/polyfills/index.js +0 -34
  192. package/dist/esm/polyfills/system.js +0 -6
  193. package/dist/esm/sql-expr-mode-1821b2b9.js +0 -25132
  194. package/dist/types/data/actions-runner-1/_work/arcgis-web-components/arcgis-web-components/packages/coding-packages/coding-components/.stencil/stencil.config.d.ts +0 -3
  195. package/dist/types/utils/profile/predefined-profile.d.ts +0 -4
  196. package/dist/types/utils/sql-expr-monaco/DependentFiles/DateOnly.d.ts +0 -41
  197. package/dist/types/utils/sql-expr-monaco/DependentFiles/SqlInterval.d.ts +0 -16
  198. package/dist/types/utils/sql-expr-monaco/DependentFiles/SqlTimestampOffset.d.ts +0 -26
  199. package/dist/types/utils/sql-expr-monaco/DependentFiles/TimeOnly.d.ts +0 -37
  200. package/dist/types/utils/sql-expr-monaco/DependentFiles/UnknownTimeZone.d.ts +0 -11
  201. package/dist/types/utils/sql-expr-monaco/DependentFiles/WhereGrammar.d.ts +0 -122
  202. package/dist/types/utils/sql-expr-monaco/DependentFiles/sqlCompareUtils.d.ts +0 -5
  203. package/dist/types/utils/sql-expr-monaco/DependentFiles/sqlDateParsingUtils.d.ts +0 -18
  204. package/dist/types/utils/sql-expr-monaco/DependentFiles/sqlUtils.d.ts +0 -6
  205. package/dist/types/utils/sql-expr-monaco/DependentFiles/standardizedFunctions.d.ts +0 -156
  206. package/dist/types/utils/sql-expr-monaco/DependentFiles/support.d.ts +0 -150
  207. package/dist/types/utils/sql-expr-monaco/PeggyGrammar/sql92grammar.d.ts +0 -1397
  208. package/dist/types/utils/sql-expr-monaco/libraries/date/properties/index.d.ts +0 -59
  209. package/dist/types/utils/sql-expr-monaco/libraries/numeric/properties/index.d.ts +0 -295
  210. package/dist/types/utils/sql-expr-monaco/libraries/string/properties/index.d.ts +0 -135
  211. package/dist/types/utils/sql-expr-monaco/sql-expr-validation-adapter.d.ts +0 -3
  212. package/dist/types/utils/sql-expr-profile/predefined-profile.d.ts +0 -2
  213. /package/dist/types/data/{actions-runner-1 → arcgis-web-compoments/actions-runner-1}/_work/arcgis-web-components/arcgis-web-components/packages/coding-packages/coding-components/.stencil/stories/internal/code-editor/code-editor.stories.d.ts +0 -0
  214. /package/dist/types/data/{actions-runner-1 → arcgis-web-compoments/actions-runner-1}/_work/arcgis-web-components/arcgis-web-components/packages/coding-packages/coding-components/.stencil/stories/internal/sql-expression-editor/sql-expression-editor.stories.d.ts +0 -0
  215. /package/dist/types/data/{actions-runner-1 → arcgis-web-compoments/actions-runner-1}/_work/arcgis-web-components/arcgis-web-components/packages/coding-packages/coding-components/.stencil/stories/reference/stories/arcade-editor.stories.d.ts +0 -0
  216. /package/dist/types/data/{actions-runner-1 → arcgis-web-compoments/actions-runner-1}/_work/arcgis-web-components/arcgis-web-components/packages/coding-packages/coding-components/.stencil/support/sass-inline-url-importer.d.ts +0 -0
  217. /package/dist/types/data/{actions-runner-1 → arcgis-web-compoments/actions-runner-1}/_work/arcgis-web-components/arcgis-web-components/packages/coding-packages/coding-components/.stencil/support/sass-json-importer.d.ts +0 -0
  218. /package/dist/types/data/{actions-runner-1 → arcgis-web-compoments/actions-runner-1}/_work/arcgis-web-components/arcgis-web-components/packages/coding-packages/coding-components/.stencil/support/stencil-monaco-plugins.d.ts +0 -0
@@ -1,11 +1,12 @@
1
1
  /*!
2
2
  * All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
3
  * See https://js.arcgis.com/4.31/esri/copyright.txt for details.
4
- * v4.31.0-next.6
4
+ * v4.31.0-next.61
5
5
  */
6
6
  import { Uri } from 'monaco-editor';
7
- import { L as LanguageDefaultsBase, i as isPredefinedProfile, c as convertToEditorProfileDefinition, E as EditorProfile } from './language-defaults-base.js';
8
- import { f as fetchT9nStringsBundle } from './index2.js';
7
+ import { f as fieldsToProfileValues, i as isPredefinedProfile, a as isFeatureSetCollectionDefinition, b as isFeatureSetDefinition, c as isFeatureDefinition, L as LanguageDefaultsBase, E as EditorProfile } from './language-defaults-base.js';
8
+ import { s as supportedLocales, f as fetchT9nStringsBundle } from './index2.js';
9
+ import { CompletionItemKind, InsertTextMode, InsertTextFormat } from 'vscode-languageserver-types';
9
10
  import { getArcgisAssetPath as getAssetPath } from "./arcgis-assets.js";
10
11
 
11
12
  /**
@@ -43,6 +44,239 @@ async function getMode() {
43
44
  return await import('./arcade-mode.js');
44
45
  }
45
46
 
47
+ // #region convert editor profile to apiProfile
48
+ /**
49
+ * Converts an editor profile to an api profile.
50
+ * The api profile is an optimized version of the editor profile designed for minimal data transfer between the main thread and the worker.
51
+ */
52
+ async function arcadeEditorToApiProfile(editorProfile) {
53
+ const { apiVersion, bundles, hiddenApiItems } = editorProfile.toEditorProfileDefinition();
54
+ const variables = await variablesToLSVariable(editorProfile.dictionaryVariables);
55
+ return { apiVersion, bundles, variables, hiddenApiItems: hiddenApiItems?.map((s) => s.toLowerCase()) };
56
+ }
57
+ async function variablesToLSVariable(editorVariables, kind = CompletionItemKind.Variable) {
58
+ return await Promise.all(editorVariables.map(async (editorVariable) => {
59
+ switch (editorVariable.type) {
60
+ case "dictionary":
61
+ return await dictionaryToLSDictionary(editorVariable, kind);
62
+ case "feature":
63
+ return await featureToLSFeature(editorVariable, kind);
64
+ default:
65
+ return variableToLSVariable(editorVariable, kind);
66
+ }
67
+ }));
68
+ }
69
+ function variableToLSVariable(editorVariable, kind) {
70
+ const { name, type } = editorVariable;
71
+ const description = editorVariable.getDescription();
72
+ return {
73
+ name,
74
+ description,
75
+ type,
76
+ completion: {
77
+ label: name,
78
+ detail: name,
79
+ insertText: name,
80
+ insertTextMode: InsertTextMode.asIs,
81
+ insertTextFormat: InsertTextFormat.PlainText,
82
+ kind,
83
+ documentation: { kind: "markdown", value: description },
84
+ },
85
+ };
86
+ }
87
+ async function featureToLSFeature(editorFeature, kind) {
88
+ // Get the source for the definition
89
+ const source = await editorFeature.loadSource();
90
+ const { name } = editorFeature;
91
+ const description = editorFeature.getDescription();
92
+ const resultCompletion = {
93
+ label: name,
94
+ detail: name,
95
+ insertText: name,
96
+ insertTextMode: InsertTextMode.asIs,
97
+ insertTextFormat: InsertTextFormat.PlainText,
98
+ kind,
99
+ };
100
+ const result = {
101
+ name,
102
+ description,
103
+ type: "dictionary",
104
+ properties: [],
105
+ completion: resultCompletion,
106
+ };
107
+ // No source definition, then it will be a feature without any known fields
108
+ if (!source) {
109
+ return result;
110
+ }
111
+ // Create properties for the fields and the aliases
112
+ // Also improve the feature completion documentation
113
+ const [properties, featureCompletionDescription] = fieldsToProfileValues(source.fields, description, true);
114
+ result.properties = properties;
115
+ resultCompletion.documentation = { kind: "markdown", value: featureCompletionDescription };
116
+ return result;
117
+ }
118
+ async function dictionaryToLSDictionary(editorDictionary, kind) {
119
+ const { name, dictionaryVariables: variables } = editorDictionary;
120
+ const description = editorDictionary.getDescription();
121
+ const completionDescription = variables.reduce((previous, p) => {
122
+ if (previous !== "") {
123
+ previous += " \n \n";
124
+ }
125
+ previous += `**${p.name}** \n${p.type}`;
126
+ const description = p.getDescription();
127
+ if (description) {
128
+ previous += ` \n${description}`;
129
+ }
130
+ return previous;
131
+ }, description);
132
+ return {
133
+ name,
134
+ description,
135
+ type: "dictionary",
136
+ properties: await variablesToLSVariable(variables, CompletionItemKind.Field),
137
+ completion: {
138
+ label: name,
139
+ detail: name,
140
+ insertText: name,
141
+ insertTextMode: InsertTextMode.asIs,
142
+ insertTextFormat: InsertTextFormat.PlainText,
143
+ kind,
144
+ documentation: { kind: "markdown", value: completionDescription },
145
+ },
146
+ };
147
+ }
148
+ // #endregion
149
+ // #region predefined profile to editor profile definition
150
+ /**
151
+ * Get a PredefinedProfile for a locale. If not already loaded then fetch it.
152
+ * If the locale doesn't exist or the locale profile file doesn't exist then returns
153
+ * the english version of the profile.
154
+ */
155
+ async function getSdkPredefinedProfiles(locale = "en") {
156
+ const profiles = sdkPredefinedProfilesMap.get(locale);
157
+ if (profiles) {
158
+ return profiles;
159
+ }
160
+ if (!supportedLocales.has(locale)) {
161
+ return await getSdkPredefinedProfiles("en");
162
+ }
163
+ try {
164
+ const response = await fetch(getAssetPath(`./assets/arcade-language/profiles/arcade-profiles.t9n.${locale}.json`));
165
+ if (response.ok) {
166
+ return cacheSdkPredefinedProfiles(locale, (await response.json()));
167
+ }
168
+ if (locale === "en") {
169
+ return null;
170
+ }
171
+ return await getSdkPredefinedProfiles("en");
172
+ }
173
+ catch {
174
+ return null;
175
+ }
176
+ }
177
+ const sdkPredefinedProfilesMap = new Map();
178
+ /**
179
+ * Convert a stored profile into a PredefinedProfile and add it to the in-memory
180
+ * Map of profiles per locale.
181
+ */
182
+ function cacheSdkPredefinedProfiles(locale, profiles) {
183
+ const map = new Map();
184
+ profiles.forEach((profile) => {
185
+ map.set(profile.id, profile);
186
+ });
187
+ sdkPredefinedProfilesMap.set(locale, map);
188
+ return map;
189
+ }
190
+ async function getSdkPredefinedProfile(id, locale = "en") {
191
+ const profiles = await getSdkPredefinedProfiles(locale);
192
+ return profiles?.get(id) ?? null;
193
+ }
194
+ function isExtendedPredefinedProfileDefinition(item) {
195
+ return !!item && typeof item === "object" && "additionalVariables" in item && Array.isArray(item.additionalVariables);
196
+ }
197
+ function convertApiVariables(variables) {
198
+ return variables?.map(convertApiVariable);
199
+ }
200
+ function convertApiVariable(variable) {
201
+ switch (variable.type) {
202
+ case "dictionary":
203
+ return {
204
+ ...variable,
205
+ type: variable.type,
206
+ properties: convertApiVariables(variable.properties),
207
+ };
208
+ case "array": {
209
+ return {
210
+ ...variable,
211
+ type: variable.type,
212
+ elementType: { type: "number", name: "number" },
213
+ };
214
+ }
215
+ default:
216
+ return { ...variable, type: variable.type };
217
+ }
218
+ }
219
+ async function convertToEditorProfileDefinition(predefinedProfile, locale = "en") {
220
+ if (!isPredefinedProfile(predefinedProfile)) {
221
+ return undefined;
222
+ }
223
+ const sdkPredefinedProfile = await getSdkPredefinedProfile(predefinedProfile.id, locale);
224
+ if (!sdkPredefinedProfile) {
225
+ return undefined;
226
+ }
227
+ const editorProfile = {
228
+ bundles: [...sdkPredefinedProfile.bundles],
229
+ variables: [],
230
+ hiddenApiItems: predefinedProfile.hiddenApiItems?.map((s) => s.toLowerCase()),
231
+ };
232
+ // Merge the SDK variables' definitions/properties with the predefined profile definitions.
233
+ sdkPredefinedProfile.variables.forEach((predefinedVariable) => {
234
+ // Don't include disabled variables
235
+ if (predefinedProfile.disabledVariables?.includes(predefinedVariable.name)) {
236
+ return;
237
+ }
238
+ // Try to get a definition from the predefined profile, for the variable that needs one.
239
+ const definition = predefinedProfile.definitions[predefinedVariable.name];
240
+ // Note: Something is weird with TS. The sdkVariables are being casted to the wrong type
241
+ // despite the type checking from the switch statement.
242
+ switch (predefinedVariable.type) {
243
+ case "dictionary": {
244
+ // For dictionary, we support properties overrride
245
+ return editorProfile.variables.push(convertApiVariable({
246
+ ...predefinedVariable,
247
+ type: predefinedVariable.type,
248
+ properties: Array.isArray(definition) ? [...definition] : predefinedVariable.properties,
249
+ }));
250
+ }
251
+ case "feature":
252
+ // If the definition is not valid, then we don't include it.
253
+ if (!isFeatureDefinition(definition)) {
254
+ return;
255
+ }
256
+ return editorProfile.variables.push({ ...predefinedVariable, type: predefinedVariable.type, definition });
257
+ case "featureSet":
258
+ // If the definition is not valid, then we don't include it.
259
+ if (!isFeatureSetDefinition(definition)) {
260
+ return;
261
+ }
262
+ return editorProfile.variables.push({ ...predefinedVariable, type: predefinedVariable.type, definition });
263
+ case "featureSetCollection":
264
+ // If the definition is not valid, then we don't include it.
265
+ if (!isFeatureSetCollectionDefinition(definition)) {
266
+ return;
267
+ }
268
+ return editorProfile.variables.push({ ...predefinedVariable, type: predefinedVariable.type, definition });
269
+ default:
270
+ return editorProfile.variables.push(convertApiVariable(predefinedVariable));
271
+ }
272
+ });
273
+ if (isExtendedPredefinedProfileDefinition(predefinedProfile)) {
274
+ editorProfile.variables.push(...(predefinedProfile.additionalVariables ?? []));
275
+ }
276
+ return editorProfile;
277
+ }
278
+ // #endregion
279
+
46
280
  const arcadeLanguageId = "arcade";
47
281
  class ArcadeLanguageServiceDefaults extends LanguageDefaultsBase {
48
282
  constructor() {
@@ -73,7 +307,7 @@ class ArcadeLanguageServiceDefaults extends LanguageDefaultsBase {
73
307
  const key = this._getApiKey(modelId);
74
308
  const editorProfile = new EditorProfile(definition, profileStrings);
75
309
  this._profileMap.set(key, editorProfile);
76
- const apiProfile = await editorProfile.toLSProfile();
310
+ const apiProfile = await arcadeEditorToApiProfile(editorProfile);
77
311
  this.updateApiContextForModel(modelId, {
78
312
  locale: apiContext.locale,
79
313
  profile: apiProfile,
@@ -108,6 +342,7 @@ class ArcadeLanguageServiceDefaults extends LanguageDefaultsBase {
108
342
  const arcadeDefaults = new ArcadeLanguageServiceDefaults();
109
343
  const arcade = {
110
344
  setProfileForModel: arcadeDefaults.setProfileForModel.bind(arcadeDefaults),
345
+ getApiLibrary: arcadeDefaults.getApiLibrary.bind(arcadeDefaults),
111
346
  };
112
347
 
113
348
  export { arcade as a, arcadeDefaults as b, getMode as c, getArcadeDiagnosticService as g };
@@ -1,13 +1,13 @@
1
1
  /*!
2
2
  * All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
3
  * See https://js.arcgis.com/4.31/esri/copyright.txt for details.
4
- * v4.31.0-next.6
4
+ * v4.31.0-next.61
5
5
  */
6
6
  import { editor, MarkerSeverity, Range, languages, Emitter } from 'monaco-editor';
7
7
  import { CompletionItemKind, DiagnosticSeverity, InsertTextFormat } from 'vscode-languageserver-types';
8
- import { t as debounce } from './index2.js';
8
+ import { t as debounce, D as Deferred } from './index2.js';
9
9
 
10
- var V={False:"false",Null:"null",True:"true"},f={Break:"break",Continue:"continue",Else:"else",For:"for",From:"from",Function:"function",If:"if",Import:"import",Export:"export",In:"in",Return:"return",Var:"var",While:"while"},Ee=["++","--"],Je=["-","+","!","~"],Qe=["=","/=","*=","%=","+=","-="],Ze=["||","&&"],Lt=["|","&",">>","<<",">>>","^","==","!=","<","<=",">",">=","+","-","*","/","%"];var U=[[],[],[]];Ee.forEach(t=>U[t.length-1]?.push(t));Je.forEach(t=>U[t.length-1]?.push(t));Ze.forEach(t=>U[t.length-1]?.push(t));Qe.forEach(t=>U[t.length-1]?.push(t));Lt.forEach(t=>U[t.length-1]?.push(t));var ft=Object.values(f),gt=Object.values(V);gt.map(t=>({label:t,kind:CompletionItemKind.Constant}));ft.map(t=>({label:t,kind:CompletionItemKind.Keyword}));
10
+ var V={False:"false",Null:"null",True:"true"},f={Break:"break",Continue:"continue",Else:"else",For:"for",From:"from",Function:"function",If:"if",Import:"import",Export:"export",In:"in",Return:"return",Var:"var",While:"while"},Ee=["++","--"],Je=["-","+","!","~"],Qe=["=","/=","*=","%=","+=","-="],Ze=["||","&&"],Bt=["|","&",">>","<<",">>>","^","==","!=","<","<=",">",">=","+","-","*","/","%"];var U=[[],[],[]];Ee.forEach(t=>U[t.length-1]?.push(t));Je.forEach(t=>U[t.length-1]?.push(t));Ze.forEach(t=>U[t.length-1]?.push(t));Qe.forEach(t=>U[t.length-1]?.push(t));Bt.forEach(t=>U[t.length-1]?.push(t));var ft=Object.values(f),gt=Object.values(V);gt.map(t=>({label:t,kind:CompletionItemKind.Constant}));ft.map(t=>({label:t,kind:CompletionItemKind.Keyword}));
11
11
 
12
12
  const operators = [
13
13
  "<=",
@@ -344,6 +344,7 @@ function isInsertReplaceEdit(edit) {
344
344
  return (typeof edit.insert !== "undefined" &&
345
345
  typeof edit.replace !== "undefined");
346
346
  }
347
+ // TODO: extract this function to common util
347
348
  function toCompletionItemKind(kind) {
348
349
  const mItemKind = languages.CompletionItemKind;
349
350
  switch (kind) {
@@ -477,6 +478,8 @@ class FormattingProvider {
477
478
  }
478
479
  //#endregion
479
480
 
481
+ // hold onto a promise that resolves when the worker is ready
482
+ let deferredWorker = new Deferred();
480
483
  /**
481
484
  * Manager to create our arcade worker and client proxy
482
485
  */
@@ -496,9 +499,17 @@ class WorkerManager {
496
499
  if (this._worker) {
497
500
  this._worker.dispose();
498
501
  this._worker = null;
502
+ deferredWorker = new Deferred();
499
503
  }
500
504
  this._client = null;
501
505
  }
506
+ /**
507
+ * Wait for the worker to be ready.
508
+ * @returns A promise that resolves when the worker is ready.
509
+ */
510
+ static async waitForWorker() {
511
+ return await deferredWorker.promise;
512
+ }
502
513
  async _getClientProxy() {
503
514
  // We used createWebWorker to create or run the web worker if it isn’t already created.
504
515
  // Otherwise, we get and return the proxy client.
@@ -512,6 +523,7 @@ class WorkerManager {
512
523
  languageOptions,
513
524
  },
514
525
  });
526
+ deferredWorker.resolve(this._worker);
515
527
  this._client = this._worker.getProxy();
516
528
  }
517
529
  return await this._client;
@@ -530,9 +542,11 @@ let arcadeWorker;
530
542
  * @returns The arcade worker.
531
543
  */
532
544
  async function getArcadeWorker(...uris) {
545
+ // ensures the worker is registered
546
+ await WorkerManager.waitForWorker();
533
547
  return await new Promise((resolve, reject) => {
534
548
  if (!arcadeWorker) {
535
- reject(new Error("TypeScript not registered!"));
549
+ reject(new Error("Arcade not registered!"));
536
550
  return;
537
551
  }
538
552
  resolve(arcadeWorker(...uris));
@@ -1,12 +1,12 @@
1
1
  /*!
2
2
  * All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
3
  * See https://js.arcgis.com/4.31/esri/copyright.txt for details.
4
- * v4.31.0-next.6
4
+ * v4.31.0-next.61
5
5
  */
6
6
  import { proxyCustomElement, HTMLElement, createEvent, h, Fragment, Host, forceUpdate } from '@stencil/core/internal/client';
7
7
  import { g as importArcade, s as supportedFields } from './fields.js';
8
- import { u as useControllerManager } from './chunk-3IUJHIAA.js';
9
- import { s as setValuesInString, q as quoteString } from './index2.js';
8
+ import { u as useControllerManager } from './chunk-WEX2VUZV.js';
9
+ import { c as setValuesInString, q as quoteString } from './index2.js';
10
10
  import { u as useT9n } from './useT9n.js';
11
11
  import "@esri/calcite-components/dist/components/calcite-tree.js";
12
12
  import "@esri/calcite-components/dist/components/calcite-tree-item.js";
@@ -1,12 +1,12 @@
1
1
  /*!
2
2
  * All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
3
  * See https://js.arcgis.com/4.31/esri/copyright.txt for details.
4
- * v4.31.0-next.6
4
+ * v4.31.0-next.61
5
5
  */
6
6
  import { proxyCustomElement, HTMLElement, createEvent, forceUpdate, h, Host } from '@stencil/core/internal/client';
7
7
  import { g as generateColorizeStyles, o as onColorizeThemeChanged, c as convertMarkdownString, a as colorizeCodeElement } from './markdown.js';
8
8
  import { f as filterCollection } from './utilities.js';
9
- import { u as useControllerManager } from './chunk-3IUJHIAA.js';
9
+ import { u as useControllerManager } from './chunk-WEX2VUZV.js';
10
10
  import { r as setFocusOnElement } from './index2.js';
11
11
  import { u as useT9n } from './useT9n.js';
12
12
  import "@esri/calcite-components/dist/components/calcite-list-item-group.js";
@@ -1,10 +1,10 @@
1
1
  /*!
2
2
  * All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
3
  * See https://js.arcgis.com/4.31/esri/copyright.txt for details.
4
- * v4.31.0-next.6
4
+ * v4.31.0-next.61
5
5
  */
6
6
  import { proxyCustomElement, HTMLElement, createEvent, forceUpdate, h } from '@stencil/core/internal/client';
7
- import { u as useControllerManager } from './chunk-3IUJHIAA.js';
7
+ import { u as useControllerManager } from './chunk-WEX2VUZV.js';
8
8
  import { r as setFocusOnElement, d as createFilterExpression } from './index2.js';
9
9
  import { b as arcadeDefaults } from './arcade-defaults.js';
10
10
  import { u as useT9n } from './useT9n.js';
@@ -1,13 +1,13 @@
1
1
  /*!
2
2
  * All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
3
  * See https://js.arcgis.com/4.31/esri/copyright.txt for details.
4
- * v4.31.0-next.6
4
+ * v4.31.0-next.61
5
5
  */
6
6
  import { proxyCustomElement, HTMLElement, createEvent, forceUpdate, h, Fragment, Host } from '@stencil/core/internal/client';
7
7
  import { KeyCode } from 'monaco-editor';
8
8
  import { d as defineCustomElement$6, e as executeScript, D as DevelopersWebSitePath } from './arcade-results.js';
9
9
  import { d as defineCustomElement$3, u as updateThemeColors, c as colorRulesKeys, s as setupMonacoEnvironment } from './code-editor.js';
10
- import { u as useControllerManager, g as getSet } from './chunk-3IUJHIAA.js';
10
+ import { u as useControllerManager, g as getSet } from './chunk-WEX2VUZV.js';
11
11
  import { D as Deferred, g as generateGuid, e as getElementTheme } from './index2.js';
12
12
  import { b as arcadeDefaults, g as getArcadeDiagnosticService } from './arcade-defaults.js';
13
13
  import { u as useT9n } from './useT9n.js';
@@ -108,11 +108,13 @@ this.constructor.__registerControllers = ()=>__cmpMeta[2]??{};
108
108
  set: "ignore",
109
109
  });
110
110
  }
111
- _messagesChanged() {
112
- this._updateArcadeDefaults().catch(console.error);
111
+ async _messagesChanged() {
112
+ await this._updateEditorProfile().catch(console.error);
113
+ await this._updateApiLibrary().catch(console.error);
113
114
  }
114
- _profileChanged() {
115
- this._updateArcadeDefaults().catch(console.error);
115
+ async _profileChanged() {
116
+ await this._updateEditorProfile().catch(console.error);
117
+ await this._updateApiLibrary().catch(console.error);
116
118
  }
117
119
  _testDataChanged() {
118
120
  if (!this._showExecutionPanel) {
@@ -194,12 +196,15 @@ this.constructor.__registerControllers = ()=>__cmpMeta[2]??{};
194
196
  // However, we need to setup the environment before the code editor is instantiated because
195
197
  // we need to access the arcade language service to get the api library.
196
198
  setupMonacoEnvironment(assetsPath);
197
- await this._updateArcadeDefaults();
199
+ await this._updateEditorProfile();
198
200
  }
199
201
  async componentDidLoad() {
200
202
  // Mark on component as ready.
201
203
  // Some methods are waiting for this state to actually continue.
202
204
  this._componentReadyDefer.resolve();
205
+ // We do updateApiLibrary in componentDidLoad because we need to wait until code editor
206
+ // is rendered for worker to register and allow for fetching the sdk
207
+ await this._updateApiLibrary();
203
208
  // Start listening to the validation diagnostics.
204
209
  // We are doing this as late as possible
205
210
  const diagnosticsService = await getArcadeDiagnosticService();
@@ -229,7 +234,7 @@ this.constructor.__registerControllers = ()=>__cmpMeta[2]??{};
229
234
  }
230
235
  // #endregion
231
236
  // #region Private methods API
232
- async _updateArcadeDefaults() {
237
+ async _updateEditorProfile() {
233
238
  // The profile definition or the locale has changed.
234
239
  // Ask the arcade defaults to prepare the profile for the model and to download the api library.
235
240
  this._preparingArcade = true;
@@ -239,7 +244,6 @@ this.constructor.__registerControllers = ()=>__cmpMeta[2]??{};
239
244
  snippets: this.snippets,
240
245
  });
241
246
  this._editorProfile = arcadeDefaults.getEditorProfileForModel(this._modelId);
242
- this._apiLibrary = await arcadeDefaults.getApiLibrary(this._modelId);
243
247
  }
244
248
  catch {
245
249
  this._editorProfile = undefined;
@@ -249,6 +253,9 @@ this.constructor.__registerControllers = ()=>__cmpMeta[2]??{};
249
253
  this._preparingArcade = false;
250
254
  }
251
255
  }
256
+ async _updateApiLibrary() {
257
+ this._apiLibrary = await arcadeDefaults.getApiLibrary(this._modelId);
258
+ }
252
259
  // #endregion
253
260
  //#region Render Main Action Bar
254
261
  renderMainActionBar() {
@@ -260,12 +267,12 @@ this.constructor.__registerControllers = ()=>__cmpMeta[2]??{};
260
267
  //#endregion
261
268
  //#region Render Main Panel
262
269
  renderMainPanel() {
263
- return (h("arcgis-code-editor", { class: "flex-adjustable", language: arcadeDefaults.languageId, value: this.script ?? "", modelId: this._modelId, options: this.editorOptions, onArcgisValueChange: this._onCodeEditorValueChange, ref: (e) => (this._codeEditorElt = e) }));
270
+ return (h("arcgis-code-editor", { class: "flex-adjustable", editorOptions: this.editorOptions, language: arcadeDefaults.languageId, value: this.script ?? "", modelId: this._modelId, onArcgisValueChange: this._onCodeEditorValueChange, ref: (e) => (this._codeEditorElt = e) }));
264
271
  }
265
272
  //#endregion
266
273
  //#region Rendering the Action Bar
267
- renderAction({ id, label, icon, active, panelName, onClick = this._toggleSidePanel, }) {
268
- return (h(Fragment, null, h("calcite-action", { id: id, text: label, icon: icon, active: active, onClick: onClick, "data-panel-name": panelName }), !this.sideActionBarExpanded && (h("calcite-tooltip", { label: label, "reference-element": id }, h("span", null, label)))));
274
+ renderAction({ id, label, icon, active, panelName, iconFlipRtl = false, onClick = this._toggleSidePanel, }) {
275
+ return (h(Fragment, null, h("calcite-action", { id: id, text: label, icon: icon, active: active, onClick: onClick, "data-panel-name": panelName, iconFlipRtl: iconFlipRtl }), !this.sideActionBarExpanded && (h("calcite-tooltip", { "reference-element": id }, h("span", null, label)))));
269
276
  }
270
277
  renderSideActionBar() {
271
278
  if (this.hideSideBar) {
@@ -299,6 +306,7 @@ this.constructor.__registerControllers = ()=>__cmpMeta[2]??{};
299
306
  icon: "question",
300
307
  active: false,
301
308
  panelName: "none",
309
+ iconFlipRtl: this.messages._lang === "ar",
302
310
  onClick: this._openArcadeHelp,
303
311
  }))));
304
312
  }
@@ -330,7 +338,7 @@ this.constructor.__registerControllers = ()=>__cmpMeta[2]??{};
330
338
  //#endregion
331
339
  //#region Render
332
340
  render() {
333
- return (h(Host, { key: '6181895e6ce6843a58b7f45c33ade62ffc38f589' }, this.renderMainActionBar(), h("div", { key: '8f7bad1c9c75beca375520361683a3f67fc502c9', class: "flex-row flex-adjustable" }, h("div", { key: '36a21e23ca9218a35388ae3d92826435b28cde99', class: "flex-column flex-adjustable" }, this.renderMainPanel(), this.renderResultsPanel()), this.renderSidePanel(), this.renderSideActionBar())));
341
+ return (h(Host, { key: '0d94f0940e22ebdf09ce14dac1f29ff6d0cda848' }, this.renderMainActionBar(), h("div", { key: 'cf41e32ee268570fc70204de9885f351bf2f0f6e', class: "flex-row flex-adjustable" }, h("div", { key: 'd2dd6c0e068baa18aa057b53b31b5ee552de97bc', class: "flex-column flex-adjustable" }, this.renderMainPanel(), this.renderResultsPanel()), this.renderSidePanel(), this.renderSideActionBar())));
334
342
  }
335
343
  static get assetsDirs() { return ["assets"]; }
336
344
  get el() { return this; }
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
3
  * See https://js.arcgis.com/4.31/esri/copyright.txt for details.
4
- * v4.31.0-next.6
4
+ * v4.31.0-next.61
5
5
  */
6
6
  import { A as ArcgisArcadeResults$1, d as defineCustomElement$1 } from './arcade-results.js';
7
7
 
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
3
  * See https://js.arcgis.com/4.31/esri/copyright.txt for details.
4
- * v4.31.0-next.6
4
+ * v4.31.0-next.61
5
5
  */
6
6
  import { A as ArcgisArcadeSuggestions$1, d as defineCustomElement$1 } from './arcade-suggestions.js';
7
7
 
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
3
  * See https://js.arcgis.com/4.31/esri/copyright.txt for details.
4
- * v4.31.0-next.6
4
+ * v4.31.0-next.61
5
5
  */
6
6
  import { A as ArcgisArcadeVariables$1, d as defineCustomElement$1 } from './arcade-variables.js';
7
7
 
@@ -1,35 +1,35 @@
1
-
2
1
  /*!
3
2
  * All material copyright Esri, All Rights Reserved, unless otherwise specified.
4
3
  * See https://js.arcgis.com/4.31/esri/copyright.txt for details.
5
- * v4.31.0-next.6
4
+ * v4.31.0-next.61
6
5
  */
6
+
7
7
  /**
8
- * Get the base path to where the package assets can be found.
9
- * By default, the package asset path is set to "https://js.arcgis.com/<simplified-package-name>/<released-verion>/".
10
- * We are hosting our assets on a CDN (Content Delivery Network) to ensure fast and reliable access.
11
- * It is CORS-enabled, so you can load the assets from any domain.
12
- * Use "setArcgisAssetPath(path)" if the path needs to be customized.
13
- */
8
+ * Get the base path to where the package assets can be found.
9
+ * By default, the package asset path is set to "https://js.arcgis.com/<simplified-package-name>/<released-verion>/".
10
+ * We are hosting our assets on a CDN (Content Delivery Network) to ensure fast and reliable access.
11
+ * It is CORS-enabled, so you can load the assets from any domain.
12
+ * Use "setArcgisAssetPath(path)" if the path needs to be customized.
13
+ */
14
14
  export declare const getArcgisAssetPath: (path: string) => string;
15
15
 
16
16
  /**
17
- * Used to manually set the base path where package assets can be found.
18
- *
19
- * By default, the package asset path is set to "https://js.arcgis.com/<simplified-package-name>/<released-verion>/".
20
- * For example, "https://js.arcgis.com/map-components/4.29/".
21
- * We are hosting our assets on a CDN (Content Delivery Network) to ensure fast and reliable access.
22
- * It is CORS-enabled, so you can load the assets from any domain.
23
- * This is the recommended way to load the assets and avoid bundling them with your application.
24
- * It means that by default, you don't need to use "setArcgisAssetPath" since the path is already set.
25
- *
26
- * However, if you need to host the assets locally, you can use "setArcgisAssetPath" to set the base path.
27
- * If the script is used as "module", it's recommended to use "import.meta.url",
28
- * such as "setArcgisAssetPath(import.meta.url)". Other options include
29
- * "setArcgisAssetPath(document.currentScript.src)", or using a bundler's replace plugin to
30
- * dynamically set the path at build time, such as "setArcgisAssetPath(process.env.ASSET_PATH)".
31
- * But do note that this configuration depends on how your script is bundled, or lack of
32
- * bundling, and where your assets can be loaded from. Additionally custom bundling
33
- * will have to ensure the static assets are copied to its build directory.
34
- */
17
+ * Used to manually set the base path where package assets can be found.
18
+ *
19
+ * By default, the package asset path is set to "https://js.arcgis.com/<simplified-package-name>/<released-verion>/".
20
+ * For example, "https://js.arcgis.com/map-components/4.29/".
21
+ * We are hosting our assets on a CDN (Content Delivery Network) to ensure fast and reliable access.
22
+ * It is CORS-enabled, so you can load the assets from any domain.
23
+ * This is the recommended way to load the assets and avoid bundling them with your application.
24
+ * It means that by default, you don't need to use "setArcgisAssetPath" since the path is already set.
25
+ *
26
+ * However, if you need to host the assets locally, you can use "setArcgisAssetPath" to set the base path.
27
+ * If the script is used as "module", it's recommended to use "import.meta.url",
28
+ * such as "setArcgisAssetPath(import.meta.url)". Other options include
29
+ * "setArcgisAssetPath(document.currentScript.src)", or using a bundler's replace plugin to
30
+ * dynamically set the path at build time, such as "setArcgisAssetPath(process.env.ASSET_PATH)".
31
+ * But do note that this configuration depends on how your script is bundled, or lack of
32
+ * bundling, and where your assets can be loaded from. Additionally custom bundling
33
+ * will have to ensure the static assets are copied to its build directory.
34
+ */
35
35
  export declare const setArcgisAssetPath: (path: string) => void;
@@ -1,10 +1,10 @@
1
-
2
1
  /*!
3
2
  * All material copyright Esri, All Rights Reserved, unless otherwise specified.
4
3
  * See https://js.arcgis.com/4.31/esri/copyright.txt for details.
5
- * v4.31.0-next.6
4
+ * v4.31.0-next.61
6
5
  */
7
6
  let resourceUrl = "https://js.arcgis.com/coding-components/next/";
7
+
8
8
  export const getArcgisAssetPath = (path) => {
9
9
  const assetUrl = new URL(path, resourceUrl);
10
10
  return assetUrl.origin !== window.location.origin ? assetUrl.href : assetUrl.pathname;
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
3
  * See https://js.arcgis.com/4.31/esri/copyright.txt for details.
4
- * v4.31.0-next.6
4
+ * v4.31.0-next.61
5
5
  */
6
6
  import { A as ArcgisCodeEditor$1, d as defineCustomElement$1 } from './code-editor.js';
7
7
 
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
3
  * See https://js.arcgis.com/4.31/esri/copyright.txt for details.
4
- * v4.31.0-next.6
4
+ * v4.31.0-next.61
5
5
  */
6
6
  import { A as ArcgisLanguageApiPanel$1, d as defineCustomElement$1 } from './language-api-panel.js';
7
7