@arcgis/coding-components 4.31.0-next.2 → 4.31.0-next.21

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 (205) 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/css.worker.js +1 -1
  43. package/dist/arcgis-coding-components/assets/code-editor/html.worker.js +1 -1
  44. package/dist/arcgis-coding-components/assets/code-editor/json.worker.js +1 -1
  45. package/dist/arcgis-coding-components/assets/code-editor/sql-expr.worker.js +33 -0
  46. package/dist/arcgis-coding-components/assets/code-editor/ts.worker.js +1 -1
  47. package/dist/arcgis-coding-components/assets/language-api-panel/t9n/language-api-panel.t9n.ca.json +1 -1
  48. package/dist/arcgis-coding-components/assets/sql-expression-editor/api/sql-expression-api.t9n.en.json +735 -0
  49. package/dist/arcgis-coding-components/index.esm.js +2 -2
  50. package/dist/arcgis-coding-components/{p-7984ea8e.js → p-1b799777.js} +2 -2
  51. package/dist/arcgis-coding-components/p-4d5cf512.entry.js +6 -0
  52. package/dist/arcgis-coding-components/{p-60c2a820.js → p-56266a64.js} +2 -2
  53. package/dist/arcgis-coding-components/{p-e8211ffe.js → p-57b8bcd7.js} +1 -1
  54. package/dist/arcgis-coding-components/{p-9eced6fc.js → p-5b67b62b.js} +2 -2
  55. package/dist/arcgis-coding-components/{p-93a97573.js → p-64137fec.js} +3 -3
  56. package/dist/arcgis-coding-components/{p-e7ee4d64.js → p-6621a80f.js} +3 -3
  57. package/dist/arcgis-coding-components/p-77dd5521.js +6 -0
  58. package/dist/arcgis-coding-components/p-8eb7e694.js +6 -0
  59. package/dist/arcgis-coding-components/p-a2341e0c.js +6 -0
  60. package/dist/arcgis-coding-components/{p-bb7e832e.js → p-b715834b.js} +3 -3
  61. package/dist/arcgis-coding-components/p-cbee273f.js +6 -0
  62. package/dist/arcgis-coding-components/{p-5ef7cce5.js → p-cdc52d2f.js} +1 -1
  63. package/dist/arcgis-coding-components/{p-36fedc23.js → p-d7d1f130.js} +12 -12
  64. package/dist/arcgis-coding-components/p-e1f9b463.entry.js +6 -0
  65. package/dist/arcgis-coding-components/{p-62ee6251.js → p-e5a924a1.js} +1 -1
  66. package/dist/arcgis-coding-components/p-f2d64a9d.js +6 -0
  67. package/dist/arcgis-coding-components/{p-03ea6cd7.js → p-ff62d134.js} +3 -3
  68. package/dist/arcgis-coding-components/p-ffce0588.entry.js +6 -0
  69. package/dist/cjs/{app-globals-aee5f4b5.js → app-globals-a9ef3ca8.js} +1 -1
  70. package/dist/cjs/arcade-defaults-f5241680.js +349 -0
  71. package/dist/cjs/arcade-language-features-0b9f3947.js +274 -0
  72. package/dist/cjs/arcade-mode-cc08d9cd.js +335 -0
  73. package/dist/cjs/arcgis-arcade-editor_6.cjs.entry.js +181 -1501
  74. package/dist/cjs/arcgis-coding-components.cjs.js +4 -4
  75. package/dist/cjs/arcgis-sql-expression-editor.cjs.entry.js +81 -0
  76. package/dist/cjs/arcgis-sql-expression-fields.cjs.entry.js +80 -0
  77. package/dist/cjs/{css-7cc05f76.js → css-bb6a49ec.js} +1 -1
  78. package/dist/cjs/{cssMode-2b0daeae.js → cssMode-e7fac7d7.js} +3 -4
  79. package/dist/cjs/{html-f56911e1.js → html-7ff4071d.js} +3 -4
  80. package/dist/cjs/{htmlMode-43eed674.js → htmlMode-c89193ec.js} +3 -4
  81. package/dist/cjs/{index-b34238a6.js → index-4b7880ab.js} +9 -1
  82. package/dist/cjs/index.cjs.js +4 -3
  83. package/dist/cjs/{javascript-5115cb76.js → javascript-864c0220.js} +3 -4
  84. package/dist/cjs/{jsonMode-550dda36.js → jsonMode-ac4a7be7.js} +3 -4
  85. package/dist/cjs/{arcade-defaults-a8d8f8e2.js → language-defaults-base-57b37f9f.js} +842 -1183
  86. package/dist/cjs/loader.cjs.js +4 -4
  87. package/dist/cjs/sql-expr-defaults-245b036d.js +1347 -0
  88. package/dist/cjs/sql-expr-mode-304f5ce2.js +20844 -0
  89. package/dist/cjs/{tsMode-336306a9.js → tsMode-d30d4ab1.js} +4 -5
  90. package/dist/cjs/{typescript-b395242f.js → typescript-6c87ddb3.js} +3 -4
  91. package/dist/components/arcade-defaults.js +54 -1369
  92. package/dist/components/arcade-language-features.js +271 -0
  93. package/dist/components/arcade-mode.js +4 -264
  94. package/dist/components/arcade-results.js +7 -5
  95. package/dist/components/arcade-suggestions.js +7 -5
  96. package/dist/components/arcade-variables.js +8 -6
  97. package/dist/components/arcgis-arcade-editor.js +37 -35
  98. package/dist/components/arcgis-arcade-results.js +1 -1
  99. package/dist/components/arcgis-arcade-suggestions.js +1 -1
  100. package/dist/components/arcgis-arcade-variables.js +1 -1
  101. package/dist/components/arcgis-assets.d.ts +1 -1
  102. package/dist/components/arcgis-assets.js +1 -1
  103. package/dist/components/arcgis-code-editor.js +1 -1
  104. package/dist/components/arcgis-language-api-panel.js +1 -1
  105. package/dist/components/arcgis-sql-expression-editor.d.ts +11 -0
  106. package/dist/components/arcgis-sql-expression-editor.js +120 -0
  107. package/dist/components/arcgis-sql-expression-fields.d.ts +11 -0
  108. package/dist/components/arcgis-sql-expression-fields.js +11 -0
  109. package/dist/components/chunk-2JTWBRMN.js +1154 -0
  110. package/dist/components/code-editor.js +40 -13
  111. package/dist/components/fields.js +5 -5
  112. package/dist/components/index.js +1 -1
  113. package/dist/components/index2.js +30 -22
  114. package/dist/components/language-api-panel.js +13 -40
  115. package/dist/components/language-defaults-base.js +1309 -0
  116. package/dist/components/markdown.js +1 -1
  117. package/dist/components/sql-expr-defaults.js +196 -0
  118. package/dist/components/sql-expr-mode.js +20842 -0
  119. package/dist/components/sql-expression-fields.js +102 -0
  120. package/dist/components/useT9n.js +45 -8
  121. package/dist/components/utilities.js +1 -1
  122. package/dist/esm/{app-globals-59faaf33.js → app-globals-6d0ca11d.js} +1 -1
  123. package/dist/esm/arcade-defaults-066445c4.js +344 -0
  124. package/dist/esm/arcade-language-features-0e00c199.js +269 -0
  125. package/dist/esm/{arcade-mode-5d46035e.js → arcade-mode-abf1e1cf.js} +3 -263
  126. package/dist/esm/arcgis-arcade-editor_6.entry.js +127 -1447
  127. package/dist/esm/arcgis-coding-components.js +5 -5
  128. package/dist/esm/arcgis-sql-expression-editor.entry.js +77 -0
  129. package/dist/esm/arcgis-sql-expression-fields.entry.js +76 -0
  130. package/dist/esm/{css-e257dc49.js → css-c6dae12d.js} +1 -1
  131. package/dist/esm/{cssMode-c11f7f40.js → cssMode-052bb603.js} +2 -3
  132. package/dist/esm/{html-a6c37a99.js → html-572696a1.js} +2 -3
  133. package/dist/esm/{htmlMode-1270bc7d.js → htmlMode-fc184f2d.js} +2 -3
  134. package/dist/esm/{index-a970952c.js → index-0edd9846.js} +9 -1
  135. package/dist/esm/index.js +4 -3
  136. package/dist/esm/{javascript-ee179624.js → javascript-8bfc0096.js} +3 -4
  137. package/dist/esm/{jsonMode-07502ccb.js → jsonMode-7adf94ff.js} +2 -3
  138. package/dist/esm/{arcade-defaults-9eb28407.js → language-defaults-base-85a7f476.js} +833 -1179
  139. package/dist/esm/loader.js +5 -5
  140. package/dist/esm/sql-expr-defaults-be84ec7f.js +1339 -0
  141. package/dist/esm/sql-expr-mode-a4413e5c.js +20840 -0
  142. package/dist/esm/{tsMode-96749a12.js → tsMode-d10773c8.js} +2 -3
  143. package/dist/esm/{typescript-a3cf9881.js → typescript-9491f23e.js} +2 -3
  144. package/dist/loader/cdn.js +1 -1
  145. package/dist/loader/index.cjs.js +1 -1
  146. package/dist/loader/index.es2017.js +1 -1
  147. package/dist/loader/index.js +1 -1
  148. package/dist/types/components/arcade-editor/arcade-editor.d.ts +45 -10
  149. package/dist/types/components/arcade-results/arcade-results.d.ts +43 -1
  150. package/dist/types/components/arcade-suggestions/arcade-suggestions.d.ts +22 -1
  151. package/dist/types/components/arcade-variables/arcade-variables.d.ts +28 -1
  152. package/dist/types/components/code-editor/code-editor.d.ts +16 -5
  153. package/dist/types/components/language-api-panel/language-api-panel.d.ts +34 -8
  154. package/dist/types/components/sql-expression-editor/sql-expression-editor.d.ts +24 -0
  155. package/dist/types/components/sql-expression-fields/sql-expression-fields.d.ts +32 -0
  156. package/dist/types/components.d.ts +98 -24
  157. package/dist/types/data/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
  158. package/dist/types/data/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
  159. package/dist/types/data/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 +13 -0
  160. package/dist/types/dependencies.d.ts +6 -10
  161. package/dist/types/utils/arcade-monaco/arcade-language-features.d.ts +1 -0
  162. package/dist/types/utils/arcade-monaco/arcade-profile-strategy.d.ts +9 -0
  163. package/dist/types/utils/fields.d.ts +2 -2
  164. package/dist/types/utils/language-defaults-base.d.ts +2 -9
  165. package/dist/types/utils/profile/editor-profile.d.ts +7 -6
  166. package/dist/types/utils/profile/types.d.ts +53 -65
  167. package/dist/types/utils/profile/utils.d.ts +9 -8
  168. package/dist/types/utils/sql-expr-monaco/DependentFiles/DateOnly.d.ts +41 -0
  169. package/dist/types/utils/sql-expr-monaco/DependentFiles/SqlInterval.d.ts +16 -0
  170. package/dist/types/utils/sql-expr-monaco/DependentFiles/SqlTimestampOffset.d.ts +26 -0
  171. package/dist/types/utils/sql-expr-monaco/DependentFiles/TimeOnly.d.ts +37 -0
  172. package/dist/types/utils/sql-expr-monaco/DependentFiles/UnknownTimeZone.d.ts +11 -0
  173. package/dist/types/utils/sql-expr-monaco/DependentFiles/WhereGrammar.d.ts +122 -0
  174. package/dist/types/utils/sql-expr-monaco/DependentFiles/sqlCompareUtils.d.ts +5 -0
  175. package/dist/types/utils/sql-expr-monaco/DependentFiles/sqlDateParsingUtils.d.ts +18 -0
  176. package/dist/types/utils/sql-expr-monaco/DependentFiles/sqlUtils.d.ts +6 -0
  177. package/dist/types/utils/sql-expr-monaco/DependentFiles/standardizedFunctions.d.ts +156 -0
  178. package/dist/types/utils/sql-expr-monaco/DependentFiles/support.d.ts +150 -0
  179. package/dist/types/utils/sql-expr-monaco/PeggyGrammar/sql92grammar.d.ts +1397 -0
  180. package/dist/types/utils/sql-expr-monaco/sql-expr-completion.d.ts +6 -0
  181. package/dist/types/utils/sql-expr-monaco/sql-expr-constants.d.ts +45 -0
  182. package/dist/types/utils/sql-expr-monaco/sql-expr-contribution.d.ts +1 -0
  183. package/dist/types/utils/sql-expr-monaco/sql-expr-defaults.d.ts +21 -0
  184. package/dist/types/utils/sql-expr-monaco/sql-expr-language-features.d.ts +39 -0
  185. package/dist/types/utils/sql-expr-monaco/sql-expr-language-syntax.d.ts +8 -0
  186. package/dist/types/utils/sql-expr-monaco/sql-expr-mode.d.ts +43 -0
  187. package/dist/types/utils/sql-expr-monaco/sql-expr-service-accessors.d.ts +19 -0
  188. package/dist/types/utils/sql-expr-monaco/sql-expr-validation-diagnostic-adapter.d.ts +34 -0
  189. package/dist/types/utils/sql-expr-monaco/sql-expr-validation-utils.d.ts +100 -0
  190. package/dist/types/utils/sql-expr-monaco/sql-expr-validation.d.ts +41 -0
  191. package/dist/types/utils/sql-expr-monaco/sql-expr-worker-manager.d.ts +17 -0
  192. package/dist/types/utils/sql-expr-monaco/sql-expr.worker.d.ts +24 -0
  193. package/dist/types/utils/sql-expr-monaco/sql-expression-profile-strategy.d.ts +13 -0
  194. package/dist/types/utils/sql-expr-monaco/types.d.ts +89 -0
  195. package/package.json +27 -21
  196. package/dist/arcgis-coding-components/p-0c6de9b3.js +0 -6
  197. package/dist/arcgis-coding-components/p-81c37dab.entry.js +0 -6
  198. package/dist/cjs/arcade-mode-b85ae7d4.js +0 -595
  199. package/dist/components/chunk-IHYYRFLQ.js +0 -1363
  200. package/dist/types/components/arcade-editor/t9n-types.d.ts +0 -8
  201. package/dist/types/components/arcade-results/t9n-types.d.ts +0 -13
  202. package/dist/types/components/arcade-suggestions/t9n-types.d.ts +0 -6
  203. package/dist/types/components/arcade-variables/t9n-types.d.ts +0 -8
  204. package/dist/types/components/language-api-panel/t9n-types.d.ts +0 -8
  205. package/dist/types/utils/profile/predefined-profile.d.ts +0 -2
@@ -8,30 +8,30 @@ import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime";
8
8
  import { IEditorProfileDefinition, IPredefinedProfile } from "./utils/profile/types";
9
9
  import { ArcadeResult, IEditorTestContext } from "./utils/arcade-executor";
10
10
  import { IEditorCodeSuggestion, IEditorCodeSuggestionGroup } from "./utils/editor-suggestions";
11
- import { ApiSnippet, Diagnostic } from "@arcgis/arcade-languageservice";
11
+ import { ApiCategory, ApiSnippet, Diagnostic } from "@arcgis/arcade-languageservice";
12
12
  import { SidePanelName } from "./components/arcade-editor/arcade-editor";
13
13
  import { editor, Selection } from "monaco-editor";
14
14
  import { IColorRules } from "./utils/arcade-monaco/arcade-theme";
15
15
  import { ResultPanelName } from "./components/arcade-results/arcade-results";
16
- import { LanguageDefaultsBase } from "./utils/language-defaults-base";
16
+ import { IPredefinedProfile as IPredefinedProfile1 } from "./components";
17
17
  export { IEditorProfileDefinition, IPredefinedProfile } from "./utils/profile/types";
18
18
  export { ArcadeResult, IEditorTestContext } from "./utils/arcade-executor";
19
19
  export { IEditorCodeSuggestion, IEditorCodeSuggestionGroup } from "./utils/editor-suggestions";
20
- export { ApiSnippet, Diagnostic } from "@arcgis/arcade-languageservice";
20
+ export { ApiCategory, ApiSnippet, Diagnostic } from "@arcgis/arcade-languageservice";
21
21
  export { SidePanelName } from "./components/arcade-editor/arcade-editor";
22
22
  export { editor, Selection } from "monaco-editor";
23
23
  export { IColorRules } from "./utils/arcade-monaco/arcade-theme";
24
24
  export { ResultPanelName } from "./components/arcade-results/arcade-results";
25
- export { LanguageDefaultsBase } from "./utils/language-defaults-base";
25
+ export { IPredefinedProfile as IPredefinedProfile1 } from "./components";
26
26
  export namespace Components {
27
27
  interface ArcgisArcadeEditor {
28
28
  /**
29
- * The instance of the Monaco Editor.
29
+ * The instance of the Monaco Editor after the component has been rendered. To determine when a component is rendered, you can use componentOnReady() method. The method returns a Promise that resolves after the component rendered for the first time.
30
30
  * @readonly
31
31
  */
32
32
  "editorInstance": editor.IStandaloneCodeEditor | undefined;
33
33
  /**
34
- * The options for the editor (see Monaco Editor options documentation for more details).
34
+ * Options to update on the editor. For example: ```json { "fontSize": 18 } ``` To get the full list of available options, see the Monaco Editor options documentation for more details.
35
35
  */
36
36
  "editorOptions": (editor.IEditorOptions & editor.IGlobalEditorOptions) | undefined;
37
37
  /**
@@ -127,10 +127,14 @@ export namespace Components {
127
127
  }
128
128
  interface ArcgisCodeEditor {
129
129
  /**
130
- * The instance of the Monaco Editor.
130
+ * The instance of the Monaco Editor after the component has been rendered. To determine when a component is rendered, you can use componentOnReady() method. The method returns a Promise that resolves after the component rendered for the first time.
131
131
  * @readonly
132
132
  */
133
133
  "editorInstance": editor.IStandaloneCodeEditor | undefined;
134
+ /**
135
+ * Options to update on the editor. For example: ```json { "fontSize": 18 } ``` To get the full list of options set on the editor, use the editorInstance property and see Monaco Editor options documentation for more details.
136
+ */
137
+ "editorOptions": (editor.IEditorOptions & editor.IGlobalEditorOptions) | undefined;
134
138
  /**
135
139
  * @deprecated Use `editorInstance` property instead.
136
140
  */
@@ -152,17 +156,13 @@ export namespace Components {
152
156
  */
153
157
  "insertText": (text: string | null | undefined) => Promise<void>;
154
158
  /**
155
- * The language for the editor. Currently supported language: arcade, json, css, html, javascript, typescript, and text.
159
+ * The language for the editor. Currently supported language: arcade, arcgis-sql-expression, json, css, html, javascript, typescript, and text.
156
160
  */
157
161
  "language": string | undefined;
158
162
  /**
159
163
  * A unique identifier for the model. The unique identifier is sometimes used by language defaults to store model metadata. For example, with arcade, the model id is used to store the arcade profile and other metadata. The unique identifier is especially useful when there are multiple editors on the same page.
160
164
  */
161
165
  "modelId": string;
162
- /**
163
- * The options for the editor (see Monaco Editor options documentation for more details).
164
- */
165
- "options": (editor.IEditorOptions & editor.IGlobalEditorOptions) | undefined;
166
166
  /**
167
167
  * Sets the focus on the editor.
168
168
  * @returns
@@ -178,13 +178,29 @@ export namespace Components {
178
178
  "value": string;
179
179
  }
180
180
  interface ArcgisLanguageApiPanel {
181
+ /**
182
+ * The api library to display
183
+ */
184
+ "apiLibrary": ApiCategory[] | undefined;
181
185
  /**
182
186
  * Should the documentation action be hidden
183
187
  */
184
188
  "hideDocumentationActions": boolean;
185
- "languageDefaults": LanguageDefaultsBase;
186
189
  /**
187
- * The model id used by the component to retrieve the api library
190
+ * When true, a busy indicator is displayed
191
+ */
192
+ "loading": boolean;
193
+ }
194
+ interface ArcgisSqlExpressionEditor {
195
+ "profile": IPredefinedProfile1 | undefined;
196
+ }
197
+ interface ArcgisSqlExpressionFields {
198
+ /**
199
+ * Loading state
200
+ */
201
+ "loading": boolean;
202
+ /**
203
+ * The model id
188
204
  */
189
205
  "modelId": string | undefined;
190
206
  }
@@ -213,6 +229,10 @@ export interface ArcgisLanguageApiPanelCustomEvent<T> extends CustomEvent<T> {
213
229
  detail: T;
214
230
  target: HTMLArcgisLanguageApiPanelElement;
215
231
  }
232
+ export interface ArcgisSqlExpressionFieldsCustomEvent<T> extends CustomEvent<T> {
233
+ detail: T;
234
+ target: HTMLArcgisSqlExpressionFieldsElement;
235
+ }
216
236
  declare global {
217
237
  interface HTMLArcgisArcadeEditorElementEventMap {
218
238
  "arcgisScriptChange": string;
@@ -325,6 +345,30 @@ declare global {
325
345
  prototype: HTMLArcgisLanguageApiPanelElement;
326
346
  new (): HTMLArcgisLanguageApiPanelElement;
327
347
  };
348
+ interface HTMLArcgisSqlExpressionEditorElement extends Components.ArcgisSqlExpressionEditor, HTMLStencilElement {
349
+ }
350
+ var HTMLArcgisSqlExpressionEditorElement: {
351
+ prototype: HTMLArcgisSqlExpressionEditorElement;
352
+ new (): HTMLArcgisSqlExpressionEditorElement;
353
+ };
354
+ interface HTMLArcgisSqlExpressionFieldsElementEventMap {
355
+ "arcgisClose": void;
356
+ "arcgisFieldSelected": string;
357
+ }
358
+ interface HTMLArcgisSqlExpressionFieldsElement extends Components.ArcgisSqlExpressionFields, HTMLStencilElement {
359
+ addEventListener<K extends keyof HTMLArcgisSqlExpressionFieldsElementEventMap>(type: K, listener: (this: HTMLArcgisSqlExpressionFieldsElement, ev: ArcgisSqlExpressionFieldsCustomEvent<HTMLArcgisSqlExpressionFieldsElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
360
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
361
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
362
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
363
+ removeEventListener<K extends keyof HTMLArcgisSqlExpressionFieldsElementEventMap>(type: K, listener: (this: HTMLArcgisSqlExpressionFieldsElement, ev: ArcgisSqlExpressionFieldsCustomEvent<HTMLArcgisSqlExpressionFieldsElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
364
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
365
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
366
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
367
+ }
368
+ var HTMLArcgisSqlExpressionFieldsElement: {
369
+ prototype: HTMLArcgisSqlExpressionFieldsElement;
370
+ new (): HTMLArcgisSqlExpressionFieldsElement;
371
+ };
328
372
  interface HTMLElementTagNameMap {
329
373
  "arcgis-arcade-editor": HTMLArcgisArcadeEditorElement;
330
374
  "arcgis-arcade-results": HTMLArcgisArcadeResultsElement;
@@ -332,12 +376,14 @@ declare global {
332
376
  "arcgis-arcade-variables": HTMLArcgisArcadeVariablesElement;
333
377
  "arcgis-code-editor": HTMLArcgisCodeEditorElement;
334
378
  "arcgis-language-api-panel": HTMLArcgisLanguageApiPanelElement;
379
+ "arcgis-sql-expression-editor": HTMLArcgisSqlExpressionEditorElement;
380
+ "arcgis-sql-expression-fields": HTMLArcgisSqlExpressionFieldsElement;
335
381
  }
336
382
  }
337
383
  declare namespace LocalJSX {
338
384
  interface ArcgisArcadeEditor {
339
385
  /**
340
- * The options for the editor (see Monaco Editor options documentation for more details).
386
+ * Options to update on the editor. For example: ```json { "fontSize": 18 } ``` To get the full list of available options, see the Monaco Editor options documentation for more details.
341
387
  */
342
388
  "editorOptions"?: (editor.IEditorOptions & editor.IGlobalEditorOptions) | undefined;
343
389
  /**
@@ -445,12 +491,16 @@ declare namespace LocalJSX {
445
491
  }
446
492
  interface ArcgisCodeEditor {
447
493
  /**
448
- * The instance of the Monaco Editor.
494
+ * The instance of the Monaco Editor after the component has been rendered. To determine when a component is rendered, you can use componentOnReady() method. The method returns a Promise that resolves after the component rendered for the first time.
449
495
  * @readonly
450
496
  */
451
497
  "editorInstance"?: editor.IStandaloneCodeEditor | undefined;
452
498
  /**
453
- * The language for the editor. Currently supported language: arcade, json, css, html, javascript, typescript, and text.
499
+ * Options to update on the editor. For example: ```json { "fontSize": 18 } ``` To get the full list of options set on the editor, use the editorInstance property and see Monaco Editor options documentation for more details.
500
+ */
501
+ "editorOptions"?: (editor.IEditorOptions & editor.IGlobalEditorOptions) | undefined;
502
+ /**
503
+ * The language for the editor. Currently supported language: arcade, arcgis-sql-expression, json, css, html, javascript, typescript, and text.
454
504
  */
455
505
  "language"?: string | undefined;
456
506
  /**
@@ -468,25 +518,24 @@ declare namespace LocalJSX {
468
518
  * Emitted when the value has changed (script, code, css, json, etc.)
469
519
  */
470
520
  "onArcgisValueChange"?: (event: ArcgisCodeEditorCustomEvent<string>) => void;
471
- /**
472
- * The options for the editor (see Monaco Editor options documentation for more details).
473
- */
474
- "options"?: (editor.IEditorOptions & editor.IGlobalEditorOptions) | undefined;
475
521
  /**
476
522
  * The initial value for the editor. The value is the script, code, css, json, etc.
477
523
  */
478
524
  "value"?: string;
479
525
  }
480
526
  interface ArcgisLanguageApiPanel {
527
+ /**
528
+ * The api library to display
529
+ */
530
+ "apiLibrary"?: ApiCategory[] | undefined;
481
531
  /**
482
532
  * Should the documentation action be hidden
483
533
  */
484
534
  "hideDocumentationActions"?: boolean;
485
- "languageDefaults": LanguageDefaultsBase;
486
535
  /**
487
- * The model id used by the component to retrieve the api library
536
+ * When true, a busy indicator is displayed
488
537
  */
489
- "modelId"?: string | undefined;
538
+ "loading"?: boolean;
490
539
  /**
491
540
  * Raised when the close action has been requested
492
541
  */
@@ -496,6 +545,27 @@ declare namespace LocalJSX {
496
545
  */
497
546
  "onArcgisItemSelected"?: (event: ArcgisLanguageApiPanelCustomEvent<string>) => void;
498
547
  }
548
+ interface ArcgisSqlExpressionEditor {
549
+ "profile"?: IPredefinedProfile1 | undefined;
550
+ }
551
+ interface ArcgisSqlExpressionFields {
552
+ /**
553
+ * Loading state
554
+ */
555
+ "loading"?: boolean;
556
+ /**
557
+ * The model id
558
+ */
559
+ "modelId"?: string | undefined;
560
+ /**
561
+ * Emitted when close action has been activated
562
+ */
563
+ "onArcgisClose"?: (event: ArcgisSqlExpressionFieldsCustomEvent<void>) => void;
564
+ /**
565
+ * Emitted when a field has been selected
566
+ */
567
+ "onArcgisFieldSelected"?: (event: ArcgisSqlExpressionFieldsCustomEvent<string>) => void;
568
+ }
499
569
  interface IntrinsicElements {
500
570
  "arcgis-arcade-editor": ArcgisArcadeEditor;
501
571
  "arcgis-arcade-results": ArcgisArcadeResults;
@@ -503,6 +573,8 @@ declare namespace LocalJSX {
503
573
  "arcgis-arcade-variables": ArcgisArcadeVariables;
504
574
  "arcgis-code-editor": ArcgisCodeEditor;
505
575
  "arcgis-language-api-panel": ArcgisLanguageApiPanel;
576
+ "arcgis-sql-expression-editor": ArcgisSqlExpressionEditor;
577
+ "arcgis-sql-expression-fields": ArcgisSqlExpressionFields;
506
578
  }
507
579
  }
508
580
  export { LocalJSX as JSX };
@@ -515,6 +587,8 @@ declare module "@stencil/core" {
515
587
  "arcgis-arcade-variables": LocalJSX.ArcgisArcadeVariables & JSXBase.HTMLAttributes<HTMLArcgisArcadeVariablesElement>;
516
588
  "arcgis-code-editor": LocalJSX.ArcgisCodeEditor & JSXBase.HTMLAttributes<HTMLArcgisCodeEditorElement>;
517
589
  "arcgis-language-api-panel": LocalJSX.ArcgisLanguageApiPanel & JSXBase.HTMLAttributes<HTMLArcgisLanguageApiPanelElement>;
590
+ "arcgis-sql-expression-editor": LocalJSX.ArcgisSqlExpressionEditor & JSXBase.HTMLAttributes<HTMLArcgisSqlExpressionEditorElement>;
591
+ "arcgis-sql-expression-fields": LocalJSX.ArcgisSqlExpressionFields & JSXBase.HTMLAttributes<HTMLArcgisSqlExpressionFieldsElement>;
518
592
  }
519
593
  }
520
594
  }
@@ -1,6 +1,8 @@
1
1
  import type { Meta, StoryObj } from "@storybook/web-components";
2
2
  import type { Components } from "../../../src/components";
3
+ import type { LayerItemPopupProfileConfiguration } from "./editorContext";
3
4
  import { type PopupProfileConfiguration } from "./editorContext";
5
+ import type { BundleType } from "@arcgis/arcade-languageservice";
4
6
  declare const meta: Meta<Components.ArcgisArcadeEditor>;
5
7
  export default meta;
6
8
  interface PopupProfileAdditionalArgs {
@@ -8,8 +10,13 @@ interface PopupProfileAdditionalArgs {
8
10
  }
9
11
  type PopupProfileStoryType = Components.ArcgisArcadeEditor & PopupProfileAdditionalArgs;
10
12
  export declare const PopupProfileStory: StoryObj<PopupProfileStoryType>;
13
+ interface SLPopupProfileAdditionalArgs {
14
+ configuration: LayerItemPopupProfileConfiguration;
15
+ }
16
+ type SLPopupProfileStoryType = Components.ArcgisArcadeEditor & SLPopupProfileAdditionalArgs;
17
+ export declare const SLPopupProfileStory: StoryObj<SLPopupProfileStoryType>;
11
18
  export declare const HideItemsCustomProfileStory: StoryObj<Components.ArcgisArcadeEditor & {
12
- bundles?: string[];
19
+ bundles?: BundleType[];
13
20
  hiddenApiItems: string[];
14
21
  }>;
15
22
  export declare const HideItemsPredefinedProfileStory: StoryObj<Components.ArcgisArcadeEditor & {
@@ -1,6 +1,7 @@
1
1
  import type { Components } from "../../../src/components";
2
+ type PortalKeyType = "devext" | "qaext" | "www";
2
3
  export interface PopupProfileConfiguration {
3
- portalKey: "devext" | "qaext" | "www";
4
+ portalKey: PortalKeyType;
4
5
  itemId: string;
5
6
  layerId: string;
6
7
  subtypeCode?: number;
@@ -9,3 +10,6 @@ export interface PopupProfileConfiguration {
9
10
  }
10
11
  export type PopupProfileEditorContext = Partial<Pick<Components.ArcgisArcadeEditor, "profile" | "testData">>;
11
12
  export declare function getPopupProfileEditorContext({ portalKey, itemId, layerId, timeZone, subtypeCode, sublayerId, }: PopupProfileConfiguration): Promise<PopupProfileEditorContext>;
13
+ export type LayerItemPopupProfileConfiguration = Pick<PopupProfileConfiguration, "layerId" | "portalKey">;
14
+ export declare function getPopupProfileEditorContextForLayerItem({ portalKey, layerId }: LayerItemPopupProfileConfiguration, createTestData?: boolean): Promise<PopupProfileEditorContext>;
15
+ export {};
@@ -0,0 +1,13 @@
1
+ import type { Meta, StoryObj } from "@storybook/web-components";
2
+ import { type Components } from "../../../src/components";
3
+ declare const meta: Meta<Components.ArcgisSqlExpressionEditor>;
4
+ export default meta;
5
+ interface Configuration {
6
+ portalKey: "devext" | "qaext" | "www";
7
+ itemId: string;
8
+ sublayerId?: number;
9
+ }
10
+ type StoryType = Components.ArcgisArcadeEditor & {
11
+ configuration: Configuration;
12
+ };
13
+ export declare const SimpleStory: StoryObj<StoryType>;
@@ -2,24 +2,20 @@
2
2
  * This is a workaround for missing JSX typing for components authored in Stencil.
3
3
  * @see https://github.com/maxpatiiuk/web-component-framework-benchmarks/tree/stencil-calcite-no-typing/stencil
4
4
  */
5
-
6
5
  import type { JSX as CalciteJsx } from "@esri/calcite-components/dist/types/components";
7
6
  import type { JSXBase } from "./stencil-public-runtime";
8
-
9
7
  /**
10
8
  * The "JSX" type exported from @esri/calcite-components includes only component
11
9
  * props, without HTMLElement props. This type re-maps the Calcite JSX type to
12
10
  * add HTMLElement props
13
11
  */
14
12
  type ReMappedCalciteJsx = {
15
- [Key in keyof CalciteJsx.IntrinsicElements]: Partial<
16
- CalciteJsx.IntrinsicElements[Key] & JSXBase.HTMLAttributes<HTMLElementTagNameMap[Key]>
17
- >;
13
+ [Key in keyof CalciteJsx.IntrinsicElements]: JSXBase.HTMLAttributes<HTMLElementTagNameMap[Key]>;
18
14
  };
19
-
20
15
  declare module "@stencil/core" {
21
- export namespace JSX {
22
- // eslint-disable-next-line @typescript-eslint/no-empty-interface
23
- interface IntrinsicElements extends ReMappedCalciteJsx {}
24
- }
16
+ namespace JSX {
17
+ interface IntrinsicElements extends ReMappedCalciteJsx {
18
+ }
19
+ }
25
20
  }
21
+ export {};
@@ -19,6 +19,7 @@ export declare class DiagnosticsAdapter {
19
19
  dispose(): void;
20
20
  private _doValidate;
21
21
  }
22
+ export declare function toCompletionItemKind(kind: number | undefined): languages.CompletionItemKind;
22
23
  export declare class CompletionProvider implements languages.CompletionItemProvider {
23
24
  private _worker;
24
25
  private _defaults;
@@ -0,0 +1,9 @@
1
+ import type { ApiProfile } from "@arcgis/arcade-languageservice";
2
+ import type { EditorProfile } from "../profile/editor-profile";
3
+ import type { IPredefinedProfile, IEditorProfileDefinition } from "../profile/types";
4
+ /**
5
+ * Converts an editor profile to an api profile.
6
+ * The api profile is an optimized version of the editor profile designed for minimal data transfer between the main thread and the worker.
7
+ */
8
+ export declare function arcadeEditorToApiProfile(editorProfile: EditorProfile): Promise<ApiProfile>;
9
+ export declare function convertToEditorProfileDefinition(predefinedProfile: IPredefinedProfile, locale?: string): Promise<IEditorProfileDefinition | undefined>;
@@ -4,8 +4,8 @@ import type { ApiValueVariableType } from "@arcgis/arcade-languageservice";
4
4
  */
5
5
  export declare function fieldTypeToIconName(field: __esri.Field): string;
6
6
  /**
7
- * Returns the Arcade type for the given field.
7
+ * Returns the ApiValueVariable type for the given field.
8
8
  */
9
- export declare function fieldTypeToArcadeType(field: __esri.Field): ApiValueVariableType;
9
+ export declare function fieldTypeToApiValueVarType(field: __esri.Field): ApiValueVariableType;
10
10
  export declare function supportedFields(fields: __esri.Field[] | null | undefined): __esri.Field[];
11
11
  export declare function fieldAlias(field: __esri.Field): string;
@@ -16,16 +16,9 @@ export declare abstract class LanguageDefaultsBase<TApiContext extends ApiContex
16
16
  get onDidChange(): IEvent<this>;
17
17
  get languageOptions(): typeof this._languageOptions | null;
18
18
  /**
19
- * Dispose the editor profile for the given model id.
20
- * It is the responsibility of the caller that created the editor profile to dispose it.
21
- * @param modelId The model id for which to dispose the editor profile.
19
+ * Dispose any cached resources for the model
22
20
  */
23
- disposeEditorProfileForModel(modelId: Uri | string): void;
24
- /**
25
- * Dispose the api context for the given model id.
26
- * @param modelId The model id for which to dispose the api context.
27
- */
28
- disposeApiContextForModel(modelId: Uri | string): void;
21
+ disposeForModel(modelId: Uri | string): void;
29
22
  /**
30
23
  * Returns the editor profile for the given model id.
31
24
  * @param modelId The model id for which to get the editor profile.
@@ -1,5 +1,6 @@
1
- import type { ApiVariableType, ApiProfile } from "@arcgis/arcade-languageservice";
1
+ import type { ApiVariableType } from "@arcgis/arcade-languageservice";
2
2
  import type * as types from "./types";
3
+ import type { ApiValueVariable } from "@arcgis/languages-api-utils";
3
4
  /**
4
5
  * FeatureSetCollection interface. Used in Arcade expressions to represent Web Maps
5
6
  * or Feature Services.
@@ -21,6 +22,10 @@ interface IFeatureSetCollections {
21
22
  */
22
23
  source: __esri.Map | __esri.WebMap | __esri.WebScene | string;
23
24
  }
25
+ /**
26
+ * converts fields to profile values and calculates the feature completion description all in one iteration
27
+ */
28
+ export declare function fieldsToProfileValues(fields: __esri.Field[], initialFeatureCompletionDescription: string, includeAliases?: boolean): [ApiValueVariable[], string];
24
29
  type ProfileItemType = ApiVariableType | "group";
25
30
  export type EditorVariable = ArrayVariable | DictionaryVariable | FeatureSetCollectionVariable | FeatureSetVariable | FeatureVariable | ValueVariable;
26
31
  interface ConstructorProperties<T> {
@@ -200,7 +205,7 @@ export declare class FeatureSetVariable extends SourceBasedVariable {
200
205
  constructor(owner: CollectionBasedVariable | undefined, props: ConstructorProperties<types.IProfileFeatureSet>, featureSetSnippets?: ValueVariable[], relationshipProps?: IRelationshipsProperties);
201
206
  get title(): types.IIntlString | string;
202
207
  protected _loadSource(): Promise<types.SupportedSource | null>;
203
- toProfileVariableDefinition(): types.IProfileVariable;
208
+ toProfileVariableDefinition(): types.IProfileFeatureSet;
204
209
  }
205
210
  export declare class FeatureSetCollectionVariable extends CollectionBasedVariable {
206
211
  type: "featureSetCollection";
@@ -239,10 +244,6 @@ export declare class EditorProfile extends DictionaryVariable {
239
244
  * Returns true if the profile supports feature set functions for snippets.
240
245
  */
241
246
  get supportFeatureSetFunctions(): boolean;
242
- /**
243
- * Returns the language service profile. It is different than the editor profile as it is optimized for Monaco.
244
- */
245
- toLSProfile(): Promise<ApiProfile>;
246
247
  /**
247
248
  * Returns the EditorProfile as a json. The EditorProfile may have been updated. This function allows to
248
249
  * get the new json representing mutations.
@@ -13,7 +13,7 @@ export interface IEditorProfileDefinition {
13
13
  label?: string;
14
14
  /**
15
15
  * The collection of variables that will be passed to the expression at execution time.
16
- * The variable declartions are used to help the editor provide validation and completion.
16
+ * The variable declarations are used to help the editor provide validation and completion.
17
17
  */
18
18
  variables: IProfileVariable[];
19
19
  /**
@@ -165,12 +165,7 @@ export interface IUrlDefinition {
165
165
  /**
166
166
  * The most basic way to define a feature or feature set is by passing a collection of fields
167
167
  */
168
- export interface IFieldsDefinition {
169
- /**
170
- * An array of fields.
171
- */
172
- fields: __esri.Field[];
173
- }
168
+ export type IFieldsDefinition = Pick<__esri.FeatureLayer, "fields">;
174
169
  /**
175
170
  * FeatureDefinition represents various ways a Feature variable could be defined.
176
171
  * Layer instance is the most common way to define a feature,
@@ -218,29 +213,39 @@ export type SupportedSource = IFieldsDefinition;
218
213
  /**
219
214
  * Layer that supports title.
220
215
  */
221
- export interface ITitleCapableSource {
222
- /**
223
- * The title of the source.
224
- */
225
- title: string;
226
- }
216
+ export type ITitleCapableSource = Pick<__esri.Layer, "title">;
227
217
  /**
228
218
  * Layer that supports url.
229
219
  */
230
- export interface IUrlCapableSource {
231
- /**
232
- * The url of the source.
233
- */
234
- url: string;
235
- }
220
+ export type IUrlCapableSource = Pick<__esri.FeatureLayer, "url">;
236
221
  /**
237
222
  * Layer that supports layer id.
238
223
  */
239
- export interface ILayerIdCapableSource {
224
+ export type ILayerIdCapableSource = Pick<__esri.FeatureLayer, "layerId">;
225
+ /**
226
+ * Layer that supports queryFeatures
227
+ */
228
+ export interface IFeatureLayerLikeInstance extends IFieldsDefinition, ITitleCapableSource {
229
+ /**
230
+ * The declared class of the layer.
231
+ */
232
+ declaredClass: string;
240
233
  /**
241
- * The layer id of the source.
234
+ * The unique ID assigned to the layer.
235
+ */
236
+ id: string;
237
+ /**
238
+ * The layer ID, or layer index, of a Feature Service layer.
242
239
  */
243
240
  layerId: number;
241
+ /**
242
+ * Executes a Query against the feature service and returns a Promise to a FeatureSet.
243
+ */
244
+ queryFeatures: (query?: __esri.Query | __esri.QueryProperties) => Promise<__esri.FeatureSet>;
245
+ /**
246
+ * The service's metadata JSON exposed by the ArcGIS REST API.
247
+ */
248
+ sourceJSON?: any;
244
249
  }
245
250
  /**
246
251
  * Layer that supports field domains.
@@ -254,62 +259,39 @@ export interface IDomainsCapableSource {
254
259
  /**
255
260
  * Layer that implements types
256
261
  */
257
- export interface IFeatureTypesCapableSource extends IDomainsCapableSource {
258
- /**
259
- * The name of the field holding the type ID or subtypes for the features.
260
- */
261
- typeIdField: string;
262
- /**
263
- * An array of subtypes defined in the feature service exposed by ArcGIS REST API.
264
- */
265
- types: __esri.FeatureType[];
266
- }
262
+ export type IFeatureTypesCapableSource = IDomainsCapableSource & Pick<__esri.FeatureLayer, "typeIdField" | "types">;
267
263
  /**
268
264
  * Layer that has a subtype field
269
265
  */
270
- export interface ISubtypeFieldCapableSource extends IDomainsCapableSource {
271
- /**
272
- * The name of the field which holds the id of the subtypes.
273
- */
274
- subtypeField: string;
275
- }
266
+ export type ISubtypeFieldCapableSource = IDomainsCapableSource & Pick<__esri.FeatureLayer, "subtypeField">;
276
267
  /**
277
268
  * Layer that exposes subtypes.
278
269
  */
279
- export interface ISubtypesCapableSource extends ISubtypeFieldCapableSource {
280
- /**
281
- * An array of subtypes defined in the layer.
282
- */
283
- subtypes: __esri.Subtype[];
284
- }
270
+ export type ISubtypesCapableSource = ISubtypeFieldCapableSource & Pick<__esri.FeatureLayer, "subtypes">;
285
271
  /**
286
272
  * Layer that supports relationships.
287
273
  */
288
- export interface IRelationshipsCapableSource extends ILayerIdCapableSource {
289
- /**
290
- * Array of relationships set up for the layer.
291
- */
292
- relationships: __esri.Relationship[];
293
- /**
294
- * The absolute URL of the REST endpoint of the layer, non-spatial table or service.
295
- */
296
- url: string;
297
- }
274
+ export type IRelationshipsCapableSource = ILayerIdCapableSource & IUrlCapableSource & Pick<__esri.FeatureLayer, "relationships">;
298
275
  /**
299
276
  * Layer that is capable of being npn-spatial.
300
277
  */
301
- export interface ITableCapableSource {
302
- /**
303
- * Returns `true` if the layer is loaded from a non-spatial table in a service.
304
- */
305
- isTable: boolean;
306
- }
307
- export interface ILoadableSource {
308
- /**
309
- * Loads the resources referenced by the layer.
310
- */
311
- load: (signal?: AbortSignal) => Promise<any>;
312
- }
278
+ export type ITableCapableSource = Pick<__esri.FeatureLayer, "isTable">;
279
+ /**
280
+ * An instance that requires a load operation to be performed.
281
+ */
282
+ export type ILoadableSource = Pick<__esri.Layer, "load">;
283
+ /**
284
+ * An instance that requires a loadAll operation to be performed.
285
+ */
286
+ export type ILoadAllCapable = Pick<__esri.WebMap | __esri.WebScene, "loadAll">;
287
+ /**
288
+ * An instance that is based on a portal item.
289
+ */
290
+ export type IPortalItemCapable = Pick<__esri.PortalItemResource, "portalItem">;
291
+ /**
292
+ * An instance that exposes all layers and tables collections.
293
+ */
294
+ export type IGroupLayerCapable = Pick<__esri.Map, "allLayers" | "allTables">;
313
295
  /**
314
296
  * Represents a string that will have to be manufactured from a Intl strings resource.
315
297
  */
@@ -326,8 +308,14 @@ export interface IIntlString {
326
308
  */
327
309
  formatValues?: Record<string, string>;
328
310
  }
311
+ /**
312
+ * The bare minimum interface for layer information coming from the rest API.
313
+ */
329
314
  export interface LayerInfo {
330
315
  id: number;
331
316
  type: string;
332
317
  capabilities?: string;
333
318
  }
319
+ export interface IExtendedPredefinedProfile extends IPredefinedProfile {
320
+ additionalVariables?: IProfileVariable[];
321
+ }
@@ -1,17 +1,17 @@
1
1
  import type * as types from "./types";
2
- export declare function isQueryableLayerInstance(item: unknown): item is __esri.FeatureLayer;
3
- export declare function isSubtypeSublayerInstance(item: unknown): item is __esri.SubtypeSublayer;
4
- export declare function isGroupLayerInstance(item: unknown): item is __esri.GroupLayer;
5
- export declare function isMapImageLayerInstance(item: unknown): item is __esri.MapImageLayer;
6
- export declare function isMapInstance(item: unknown): item is __esri.Map | __esri.WebMap | __esri.WebScene;
7
- export declare function isWebMapInstance(item: __esri.Map | __esri.WebMap | __esri.WebScene): item is __esri.WebMap;
8
- export declare function isWebSceneInstance(item: __esri.Map | __esri.WebMap | __esri.WebScene): item is __esri.WebScene;
9
- export declare function isLoadableMapInstance(item: __esri.Map | __esri.WebMap | __esri.WebScene): item is __esri.WebMap | __esri.WebScene;
2
+ import type { FeatureDefinition, FeatureSetCollectionDefinition, FeatureSetDefinition } from "./types";
3
+ export declare function isFeatureLayerLikeInstance(item: unknown): item is types.IFeatureLayerLikeInstance;
4
+ export declare function isGroupLayerCapable(item: unknown): item is types.IGroupLayerCapable;
5
+ export declare function isMapInstance(item: unknown): item is __esri.Map;
6
+ export declare function isLoadAllCapable(item: unknown): item is types.ILoadAllCapable;
10
7
  export declare function isPortalItemDefinition(item: unknown): item is types.IPortalItemDefinition;
11
8
  export declare function isFeatureLayerItemDefinition(item: unknown): item is types.IFeatureLayerItemDefinition;
12
9
  export declare function isFieldsDefinition(item: unknown): item is types.IFieldsDefinition;
13
10
  export declare function isUrlDefinition(item: unknown): item is types.IUrlDefinition;
14
11
  export declare function isSupportedServiceUrlDefinition(item: unknown): item is types.IUrlDefinition;
12
+ export declare function isFeatureDefinition(item: unknown): item is FeatureDefinition;
13
+ export declare function isFeatureSetDefinition(item: unknown): item is FeatureSetDefinition;
14
+ export declare function isFeatureSetCollectionDefinition(item: unknown): item is FeatureSetCollectionDefinition;
15
15
  export declare function isSubtypeInstance(item: unknown): item is __esri.Subtype;
16
16
  export declare function isCodedValueDomainInstance(item: unknown): item is __esri.CodedValueDomain;
17
17
  export declare function isInheritedDomainInstance(item: unknown): item is __esri.InheritedDomain;
@@ -23,6 +23,7 @@ export declare function isFeatureTypesCapableLayer(item: unknown): item is types
23
23
  export declare function isDomainsCapableLayer(item: unknown): item is types.IDomainsCapableSource;
24
24
  export declare function isSubtypeFieldCapableLayer(item: unknown): item is types.ISubtypeFieldCapableSource;
25
25
  export declare function isSubtypesCapableLayer(item: unknown): item is types.ISubtypesCapableSource;
26
+ export declare function isPortalItemCapable(item: unknown): item is types.IPortalItemCapable;
26
27
  export declare function isRelationshipsCapableLayer(item: unknown): item is types.IRelationshipsCapableSource;
27
28
  export declare function isTableCapableLayer(item: unknown): item is types.ITableCapableSource;
28
29
  export declare function isLoadableSource(item: unknown): item is types.ILoadableSource;