@arcgis/coding-components 4.30.0 → 4.31.0-next.10

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 (215) hide show
  1. package/dist/arcgis-coding-components/arcgis-coding-components.esm.js +3 -3
  2. package/dist/arcgis-coding-components/assets/code-editor/arcade.worker.js +13 -13
  3. package/dist/arcgis-coding-components/assets/code-editor/css.worker.js +1 -1
  4. package/dist/arcgis-coding-components/assets/code-editor/html.worker.js +1 -1
  5. package/dist/arcgis-coding-components/assets/code-editor/json.worker.js +1 -1
  6. package/dist/arcgis-coding-components/assets/code-editor/sql-expr.worker.js +11 -0
  7. package/dist/arcgis-coding-components/assets/code-editor/ts.worker.js +1 -1
  8. package/dist/arcgis-coding-components/assets/sql-expression-editor/api/sql-expression-api.t9n.en.json +735 -0
  9. package/dist/arcgis-coding-components/index.esm.js +3 -3
  10. package/dist/arcgis-coding-components/p-025fda85.js +6 -0
  11. package/dist/arcgis-coding-components/{p-b7981062.js → p-02cae55d.js} +4 -4
  12. package/dist/arcgis-coding-components/p-193ac44f.js +6 -0
  13. package/dist/arcgis-coding-components/{p-ed5c78ce.js → p-22253750.js} +2 -2
  14. package/dist/arcgis-coding-components/p-4fc79a07.entry.js +6 -0
  15. package/dist/arcgis-coding-components/p-50484a4f.js +6 -0
  16. package/dist/arcgis-coding-components/p-6e28fd70.js +6 -0
  17. package/dist/arcgis-coding-components/p-7164c348.js +6 -0
  18. package/dist/arcgis-coding-components/p-767b17ee.entry.js +6 -0
  19. package/dist/arcgis-coding-components/{p-69ef969a.js → p-790067b1.js} +11 -11
  20. package/dist/arcgis-coding-components/{p-e9510c84.js → p-8196fa73.js} +3 -3
  21. package/dist/arcgis-coding-components/{p-f40fe9c5.js → p-8cf09bcc.js} +2 -2
  22. package/dist/arcgis-coding-components/{p-ca3f5530.js → p-923858b5.js} +3 -3
  23. package/dist/arcgis-coding-components/{p-ae0db715.js → p-960aa9dc.js} +3 -3
  24. package/dist/arcgis-coding-components/p-9956a574.js +6 -0
  25. package/dist/arcgis-coding-components/{p-9770fb37.js → p-ab78d6c4.js} +4 -4
  26. package/dist/arcgis-coding-components/{p-e37595ba.js → p-ad75160d.js} +4 -4
  27. package/dist/arcgis-coding-components/{p-24fb1d11.js → p-da9431ba.js} +3 -3
  28. package/dist/arcgis-coding-components/p-f452d4b8.entry.js +6 -0
  29. package/dist/cjs/{app-globals-18ba6880.js → app-globals-bade840e.js} +2 -2
  30. package/dist/cjs/arcade-defaults-8b8d6c07.js +116 -0
  31. package/dist/cjs/arcade-language-features-747fb1da.js +274 -0
  32. package/dist/cjs/arcade-mode-dce44622.js +336 -0
  33. package/dist/cjs/{arcgis-arcade-api_6.cjs.entry.js → arcgis-arcade-editor_6.cjs.entry.js} +3806 -5154
  34. package/dist/cjs/arcgis-coding-components.cjs.js +5 -5
  35. package/dist/cjs/arcgis-sql-expression-editor.cjs.entry.js +81 -0
  36. package/dist/cjs/arcgis-sql-expression-fields.cjs.entry.js +80 -0
  37. package/dist/cjs/{css-d8a65bb9.js → css-077ba0c5.js} +2 -2
  38. package/dist/cjs/{cssMode-07dbb853.js → cssMode-7f2030db.js} +5 -5
  39. package/dist/cjs/{html-bb10cced.js → html-e3a243e9.js} +5 -5
  40. package/dist/cjs/{htmlMode-7df0a09d.js → htmlMode-c273d6dc.js} +5 -5
  41. package/dist/cjs/{index-15bcce7e.js → index-37a86ff4.js} +12 -4
  42. package/dist/cjs/index.cjs.js +5 -4
  43. package/dist/cjs/{javascript-f0dbed11.js → javascript-7a33cca7.js} +5 -5
  44. package/dist/cjs/{jsonMode-9e54e9b7.js → jsonMode-6b4e0850.js} +5 -5
  45. package/dist/cjs/{arcade-defaults-d0931224.js → language-defaults-base-b32cb091.js} +88 -144
  46. package/dist/cjs/loader.cjs.js +5 -5
  47. package/dist/cjs/sql-expr-defaults-8a5834f3.js +1280 -0
  48. package/dist/cjs/sql-expr-mode-a72a1f92.js +21838 -0
  49. package/dist/cjs/{tsMode-ca28bc5f.js → tsMode-c2edcd57.js} +6 -6
  50. package/dist/cjs/{typescript-39540ed7.js → typescript-c50c5516.js} +5 -5
  51. package/dist/components/arcade-defaults.js +47 -1537
  52. package/dist/components/arcade-language-features.js +271 -0
  53. package/dist/components/arcade-mode.js +7 -267
  54. package/dist/components/arcade-results.js +7 -7
  55. package/dist/components/arcade-suggestions.js +8 -8
  56. package/dist/components/arcade-variables.js +7 -7
  57. package/dist/components/arcgis-arcade-editor.js +49 -50
  58. package/dist/components/arcgis-arcade-results.js +2 -2
  59. package/dist/components/arcgis-arcade-suggestions.js +2 -2
  60. package/dist/components/arcgis-arcade-variables.js +2 -2
  61. package/dist/components/arcgis-assets.d.ts +2 -2
  62. package/dist/components/arcgis-assets.js +3 -3
  63. package/dist/components/arcgis-code-editor.js +2 -2
  64. package/dist/components/arcgis-language-api-panel.d.ts +11 -0
  65. package/dist/components/arcgis-language-api-panel.js +11 -0
  66. package/dist/components/arcgis-sql-expression-editor.d.ts +11 -0
  67. package/dist/components/arcgis-sql-expression-editor.js +120 -0
  68. package/dist/components/arcgis-sql-expression-fields.d.ts +11 -0
  69. package/dist/components/arcgis-sql-expression-fields.js +11 -0
  70. package/dist/components/chunk-3IUJHIAA.js +1154 -0
  71. package/dist/components/code-editor.js +186 -17
  72. package/dist/components/fields.js +3 -3
  73. package/dist/components/index.js +2 -2
  74. package/dist/components/index2.js +31 -23
  75. package/dist/components/{arcade-api.js → language-api-panel.js} +29 -60
  76. package/dist/components/language-defaults-base.js +1535 -0
  77. package/dist/components/markdown.js +3 -3
  78. package/dist/components/sql-expr-defaults.js +131 -0
  79. package/dist/components/sql-expr-mode.js +21836 -0
  80. package/dist/components/sql-expression-fields.js +102 -0
  81. package/dist/components/useT9n.js +46 -9
  82. package/dist/components/utilities.js +2 -2
  83. package/dist/esm/{app-globals-2a0e9afb.js → app-globals-ed47e16d.js} +2 -2
  84. package/dist/esm/arcade-defaults-562fe19b.js +111 -0
  85. package/dist/esm/arcade-language-features-8edb3527.js +269 -0
  86. package/dist/esm/{arcade-mode-e9728a63.js → arcade-mode-ad036f46.js} +7 -266
  87. package/dist/esm/{arcgis-arcade-api_6.entry.js → arcgis-arcade-editor_6.entry.js} +3793 -5141
  88. package/dist/esm/arcgis-coding-components.js +6 -6
  89. package/dist/esm/arcgis-sql-expression-editor.entry.js +77 -0
  90. package/dist/esm/arcgis-sql-expression-fields.entry.js +76 -0
  91. package/dist/esm/{css-61c794c2.js → css-810518f1.js} +2 -2
  92. package/dist/esm/{cssMode-6e0ccd51.js → cssMode-a7208024.js} +4 -4
  93. package/dist/esm/{html-44ad432e.js → html-e187d7d8.js} +4 -4
  94. package/dist/esm/{htmlMode-fd336434.js → htmlMode-06b7bae2.js} +4 -4
  95. package/dist/esm/{index-0d124a57.js → index-3743d31f.js} +12 -4
  96. package/dist/esm/index.js +5 -4
  97. package/dist/esm/{javascript-ac057954.js → javascript-04a3f866.js} +5 -5
  98. package/dist/esm/{jsonMode-ea8fa529.js → jsonMode-ee8bb2ea.js} +4 -4
  99. package/dist/esm/{arcade-defaults-811bdd4d.js → language-defaults-base-52a397f5.js} +82 -142
  100. package/dist/esm/loader.js +6 -6
  101. package/dist/esm/sql-expr-defaults-f7c2d5ef.js +1274 -0
  102. package/dist/esm/sql-expr-mode-433b4a39.js +21835 -0
  103. package/dist/esm/{tsMode-af9c3001.js → tsMode-c80c462e.js} +4 -4
  104. package/dist/esm/{typescript-baec45d6.js → typescript-a9b8caa7.js} +4 -4
  105. package/dist/loader/cdn.js +2 -2
  106. package/dist/loader/index.cjs.js +2 -2
  107. package/dist/loader/index.es2017.js +2 -2
  108. package/dist/loader/index.js +2 -2
  109. package/dist/types/components/arcade-editor/arcade-editor.d.ts +45 -10
  110. package/dist/types/components/arcade-results/arcade-results.d.ts +43 -1
  111. package/dist/types/components/arcade-suggestions/arcade-suggestions.d.ts +22 -1
  112. package/dist/types/components/arcade-variables/arcade-variables.d.ts +28 -1
  113. package/dist/types/components/code-editor/code-editor.d.ts +16 -5
  114. package/dist/types/components/language-api-panel/language-api-panel.d.ts +73 -0
  115. package/dist/types/components/sql-expression-editor/sql-expression-editor.d.ts +24 -0
  116. package/dist/types/components/sql-expression-fields/sql-expression-fields.d.ts +32 -0
  117. package/dist/types/components.d.ts +148 -70
  118. 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
  119. package/dist/types/dependencies.d.ts +21 -0
  120. package/dist/types/utils/arcade-monaco/arcade-contribution.d.ts +1 -24
  121. package/dist/types/utils/arcade-monaco/arcade-defaults.d.ts +12 -49
  122. package/dist/types/utils/arcade-monaco/arcade-language-features.d.ts +6 -4
  123. package/dist/types/utils/arcade-monaco/arcade-mode.d.ts +3 -2
  124. package/dist/types/utils/arcade-monaco/arcade-service-accessors.d.ts +31 -0
  125. package/dist/types/utils/arcade-monaco/arcade-worker-manager.d.ts +3 -2
  126. package/dist/types/utils/arcade-monaco/arcade.worker.d.ts +5 -5
  127. package/dist/types/utils/arcade-monaco/types.d.ts +6 -35
  128. package/dist/types/utils/language-defaults-base.d.ts +69 -0
  129. package/dist/types/utils/profile/predefined-profile.d.ts +3 -1
  130. package/dist/types/utils/profile/types.d.ts +29 -69
  131. package/dist/types/utils/profile/utils.d.ts +4 -7
  132. package/dist/types/utils/sql-expr-monaco/DependentFiles/DateOnly.d.ts +41 -0
  133. package/dist/types/utils/sql-expr-monaco/DependentFiles/SqlInterval.d.ts +16 -0
  134. package/dist/types/utils/sql-expr-monaco/DependentFiles/SqlTimestampOffset.d.ts +26 -0
  135. package/dist/types/utils/sql-expr-monaco/DependentFiles/TimeOnly.d.ts +37 -0
  136. package/dist/types/utils/sql-expr-monaco/DependentFiles/UnknownTimeZone.d.ts +11 -0
  137. package/dist/types/utils/sql-expr-monaco/DependentFiles/WhereGrammar.d.ts +122 -0
  138. package/dist/types/utils/sql-expr-monaco/DependentFiles/sqlCompareUtils.d.ts +5 -0
  139. package/dist/types/utils/sql-expr-monaco/DependentFiles/sqlDateParsingUtils.d.ts +18 -0
  140. package/dist/types/utils/sql-expr-monaco/DependentFiles/sqlUtils.d.ts +6 -0
  141. package/dist/types/utils/sql-expr-monaco/DependentFiles/standardizedFunctions.d.ts +156 -0
  142. package/dist/types/utils/sql-expr-monaco/DependentFiles/support.d.ts +150 -0
  143. package/dist/types/utils/sql-expr-monaco/PeggyGrammar/sql92grammar.d.ts +1397 -0
  144. package/dist/types/utils/sql-expr-monaco/libraries/date/properties/index.d.ts +59 -0
  145. package/dist/types/utils/sql-expr-monaco/libraries/numeric/properties/index.d.ts +295 -0
  146. package/dist/types/utils/sql-expr-monaco/libraries/string/properties/index.d.ts +135 -0
  147. package/dist/types/utils/sql-expr-monaco/sql-expr-completion.d.ts +6 -0
  148. package/dist/types/utils/sql-expr-monaco/sql-expr-contribution.d.ts +11 -0
  149. package/dist/types/utils/sql-expr-monaco/sql-expr-defaults.d.ts +22 -0
  150. package/dist/types/utils/sql-expr-monaco/sql-expr-language-features.d.ts +61 -0
  151. package/dist/types/utils/sql-expr-monaco/sql-expr-language-syntax.d.ts +8 -0
  152. package/dist/types/utils/sql-expr-monaco/sql-expr-mode.d.ts +10 -0
  153. package/dist/types/utils/sql-expr-monaco/sql-expr-validation-adapter.d.ts +3 -0
  154. package/dist/types/utils/sql-expr-monaco/sql-expr-validation-diagnostic-adapter.d.ts +41 -0
  155. package/dist/types/utils/sql-expr-monaco/sql-expr-validation-utils.d.ts +99 -0
  156. package/dist/types/utils/sql-expr-monaco/sql-expr-validation.d.ts +41 -0
  157. package/dist/types/utils/sql-expr-monaco/sql-expr-worker-manager.d.ts +15 -0
  158. package/dist/types/utils/sql-expr-monaco/sql-expr.worker.d.ts +21 -0
  159. package/dist/types/utils/sql-expr-monaco/types.d.ts +91 -0
  160. package/dist/types/utils/sql-expr-profile/predefined-profile.d.ts +2 -0
  161. package/package.json +23 -17
  162. package/dist/arcgis-coding-components/p-98cf909d.js +0 -6
  163. package/dist/arcgis-coding-components/p-bf047552.entry.js +0 -6
  164. package/dist/arcgis-coding-components/p-f602fc86.js +0 -6
  165. package/dist/cjs/arcade-mode-8424eafa.js +0 -595
  166. package/dist/components/arcade-contribution.js +0 -181
  167. package/dist/components/arcgis-arcade-api.d.ts +0 -11
  168. package/dist/components/arcgis-arcade-api.js +0 -11
  169. package/dist/components/chunk-2CDDVOQU.js +0 -1364
  170. package/dist/types/components/arcade-api/arcade-api.d.ts +0 -45
  171. package/dist/types/components/arcade-api/t9n-types.d.ts +0 -8
  172. package/dist/types/components/arcade-editor/t9n-types.d.ts +0 -8
  173. package/dist/types/components/arcade-results/t9n-types.d.ts +0 -13
  174. package/dist/types/components/arcade-suggestions/t9n-types.d.ts +0 -6
  175. package/dist/types/components/arcade-variables/t9n-types.d.ts +0 -8
  176. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.ar.json → language-api-panel/t9n/language-api-panel.t9n.ar.json} +0 -0
  177. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.bg.json → language-api-panel/t9n/language-api-panel.t9n.bg.json} +0 -0
  178. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.bs.json → language-api-panel/t9n/language-api-panel.t9n.bs.json} +0 -0
  179. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.ca.json → language-api-panel/t9n/language-api-panel.t9n.ca.json} +0 -0
  180. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.cs.json → language-api-panel/t9n/language-api-panel.t9n.cs.json} +0 -0
  181. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.da.json → language-api-panel/t9n/language-api-panel.t9n.da.json} +0 -0
  182. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.de.json → language-api-panel/t9n/language-api-panel.t9n.de.json} +0 -0
  183. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.el.json → language-api-panel/t9n/language-api-panel.t9n.el.json} +0 -0
  184. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.en.json → language-api-panel/t9n/language-api-panel.t9n.en.json} +0 -0
  185. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.es.json → language-api-panel/t9n/language-api-panel.t9n.es.json} +0 -0
  186. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.et.json → language-api-panel/t9n/language-api-panel.t9n.et.json} +0 -0
  187. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.fi.json → language-api-panel/t9n/language-api-panel.t9n.fi.json} +0 -0
  188. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.fr.json → language-api-panel/t9n/language-api-panel.t9n.fr.json} +0 -0
  189. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.he.json → language-api-panel/t9n/language-api-panel.t9n.he.json} +0 -0
  190. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.hr.json → language-api-panel/t9n/language-api-panel.t9n.hr.json} +0 -0
  191. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.hu.json → language-api-panel/t9n/language-api-panel.t9n.hu.json} +0 -0
  192. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.id.json → language-api-panel/t9n/language-api-panel.t9n.id.json} +0 -0
  193. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.it.json → language-api-panel/t9n/language-api-panel.t9n.it.json} +0 -0
  194. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.ja.json → language-api-panel/t9n/language-api-panel.t9n.ja.json} +0 -0
  195. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.ko.json → language-api-panel/t9n/language-api-panel.t9n.ko.json} +0 -0
  196. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.lt.json → language-api-panel/t9n/language-api-panel.t9n.lt.json} +0 -0
  197. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.lv.json → language-api-panel/t9n/language-api-panel.t9n.lv.json} +0 -0
  198. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.nb.json → language-api-panel/t9n/language-api-panel.t9n.nb.json} +0 -0
  199. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.nl.json → language-api-panel/t9n/language-api-panel.t9n.nl.json} +0 -0
  200. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.pl.json → language-api-panel/t9n/language-api-panel.t9n.pl.json} +0 -0
  201. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.pt-BR.json → language-api-panel/t9n/language-api-panel.t9n.pt-BR.json} +0 -0
  202. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.pt-PT.json → language-api-panel/t9n/language-api-panel.t9n.pt-PT.json} +0 -0
  203. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.ro.json → language-api-panel/t9n/language-api-panel.t9n.ro.json} +0 -0
  204. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.ru.json → language-api-panel/t9n/language-api-panel.t9n.ru.json} +0 -0
  205. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.sk.json → language-api-panel/t9n/language-api-panel.t9n.sk.json} +0 -0
  206. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.sl.json → language-api-panel/t9n/language-api-panel.t9n.sl.json} +0 -0
  207. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.sr.json → language-api-panel/t9n/language-api-panel.t9n.sr.json} +0 -0
  208. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.sv.json → language-api-panel/t9n/language-api-panel.t9n.sv.json} +0 -0
  209. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.th.json → language-api-panel/t9n/language-api-panel.t9n.th.json} +0 -0
  210. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.tr.json → language-api-panel/t9n/language-api-panel.t9n.tr.json} +0 -0
  211. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.uk.json → language-api-panel/t9n/language-api-panel.t9n.uk.json} +0 -0
  212. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.vi.json → language-api-panel/t9n/language-api-panel.t9n.vi.json} +0 -0
  213. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.zh-CN.json → language-api-panel/t9n/language-api-panel.t9n.zh-CN.json} +0 -0
  214. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.zh-HK.json → language-api-panel/t9n/language-api-panel.t9n.zh-HK.json} +0 -0
  215. /package/dist/arcgis-coding-components/assets/{arcade-api/t9n/arcade-api.t9n.zh-TW.json → language-api-panel/t9n/language-api-panel.t9n.zh-TW.json} +0 -0
@@ -1,39 +1,10 @@
1
- import type { Thenable, Uri, IEvent } from "monaco-editor";
2
- import type { ApiCategory, ArcadeLanguageServiceSettings, ApiContext, Diagnostic } from "@arcgis/arcade-languageservice";
1
+ import type { Thenable, Uri } from "monaco-editor";
2
+ import type { ApiCategory, ArcadeApiContext, Diagnostic } from "@arcgis/arcade-languageservice";
3
3
  import type { CompletionList, Position, TextEdit } from "vscode-languageserver-types";
4
4
  export interface IArcadeWorker {
5
- doValidation: (modelId: string, context: ApiContext) => Thenable<Diagnostic[]>;
6
- doComplete: (modelId: string, position: Position, context: ApiContext) => Thenable<CompletionList>;
7
- doFormat: (modelId: string, context: ApiContext) => Thenable<TextEdit[]>;
8
- getApiLibrary: (context: ApiContext) => Thenable<ApiCategory[]>;
5
+ doValidation: (modelId: string, context: ArcadeApiContext) => Thenable<Diagnostic[]>;
6
+ doComplete: (modelId: string, position: Position, context: ArcadeApiContext) => Thenable<CompletionList>;
7
+ doFormat: (modelId: string, context: ArcadeApiContext) => Thenable<TextEdit[]>;
8
+ getApiLibrary: (context: ArcadeApiContext) => Thenable<ApiCategory[]>;
9
9
  }
10
10
  export type IArcadeWorkerAccessor = (...more: Uri[]) => Thenable<IArcadeWorker>;
11
- /**
12
- * The Arcade Language Service Defaults interface.
13
- */
14
- export interface IArcadeLanguageServiceDefaults {
15
- /**
16
- * The language id for which the settings are valid.
17
- */
18
- readonly languageId: string;
19
- /**
20
- * The language options for the arcade language service.
21
- */
22
- readonly languageOptions: ArcadeLanguageServiceSettings | null;
23
- /**
24
- * An event to signal changes to the settings.
25
- */
26
- readonly onDidChange: IEvent<IArcadeLanguageServiceDefaults>;
27
- /**
28
- * An event to signal changes to a model context.
29
- * The event value is the uri string.
30
- */
31
- readonly onModelContextDidChange: IEvent<string>;
32
- /**
33
- * Get the api context for a model.
34
- * If the model has no context, then the default context is returned.
35
- * @param modelId The model id for which to get the context.
36
- * @returns The api context for the model.
37
- */
38
- getApiContextForModel: (modelId: Uri | string) => ApiContext;
39
- }
@@ -0,0 +1,69 @@
1
+ import { Emitter, type IEvent, Uri } from "monaco-editor";
2
+ import type { EditorProfile } from "./profile/editor-profile";
3
+ import type { ApiCategory, ApiContext, ApiSnippet, LanguageServiceSettings } from "@arcgis/arcade-languageservice";
4
+ import type { IEditorProfileDefinition, IPredefinedProfile } from "./profile/types";
5
+ type DefaultLanguageServiceSettings = Pick<LanguageServiceSettings, "assetsPath">;
6
+ export declare abstract class LanguageDefaultsBase<TApiContext extends ApiContext = ApiContext> {
7
+ protected abstract _languageId: string;
8
+ protected abstract _languageOptions?: DefaultLanguageServiceSettings;
9
+ protected _onDidChange: Emitter<this>;
10
+ protected _profileMap: Map<string, EditorProfile>;
11
+ protected _apiContextMap: Map<string, TApiContext>;
12
+ protected _onModelContextDidChange: Emitter<string>;
13
+ protected _onDidModelContextChangeTimeout: number;
14
+ protected _fireModelContextDidChange(key: string): void;
15
+ protected _getApiKey(modelId: Uri | string): string;
16
+ get onDidChange(): IEvent<this>;
17
+ get languageOptions(): typeof this._languageOptions | null;
18
+ /**
19
+ * Dispose any cached resources for the model
20
+ */
21
+ disposeForModel(modelId: Uri | string): void;
22
+ /**
23
+ * Returns the editor profile for the given model id.
24
+ * @param modelId The model id for which to get the editor profile.
25
+ * @returns The editor profile for the model.
26
+ */
27
+ getEditorProfileForModel(modelId: Uri | string): EditorProfile | undefined;
28
+ /**
29
+ * Returns the API context for the given model id.
30
+ * Returns the default context if the model has no context.
31
+ * @param modelId The model id for which to get the API context.
32
+ * @returns The API context for the model.
33
+ */
34
+ getApiContextForModel(contextId: Uri | string): TApiContext;
35
+ /**
36
+ * Set or update api context for the given model id.
37
+ * @param modelId The model id for which to set the context.
38
+ * @param apiContext The api context to set.
39
+ */
40
+ updateApiContextForModel(modelId: Uri | string, apiContext: TApiContext): void;
41
+ get onModelContextDidChange(): IEvent<string>;
42
+ get languageId(): string;
43
+ /**
44
+ * Create an EditorProfile for the given model id using the given definition and locale.
45
+ * The EditorProfile is used by the the Language service as well by the components.
46
+ * The definition can be a pre-defined profile or an editor profile definition.
47
+ * If the locale is not provided then the 'en' locale is used.
48
+ * @param modelId The model id for which to create the context.
49
+ * @param definition The definition to use for the model context.
50
+ * @param locale The locale to use for the model context.
51
+ * @returns The EditorProfile for the model.
52
+ */
53
+ abstract setProfileForModel(modelId: Uri | string, definition: IEditorProfileDefinition | IPredefinedProfile | undefined, apiContext: {
54
+ locale: string;
55
+ snippets?: ApiSnippet[];
56
+ }): Promise<void>;
57
+ /**
58
+ * Set or update the language service options.
59
+ * @param languageOptions The language options to set.
60
+ */
61
+ abstract setLanguageOptions(languageOptions: DefaultLanguageServiceSettings): void;
62
+ /**
63
+ * Gets the API library for the given model id.
64
+ * @param modelId The model id for which to get the API library.
65
+ * @returns The API library for the model.
66
+ */
67
+ abstract getApiLibrary(modelId: string): Promise<ApiCategory[]>;
68
+ }
69
+ export {};
@@ -1,2 +1,4 @@
1
- import type { IEditorProfileDefinition, IPredefinedProfile } from "./types";
1
+ import type { FeatureDefinition, FeatureSetDefinition, IEditorProfileDefinition, IPredefinedProfile } from "./types";
2
+ export declare function isFeatureDefinition(item: unknown): item is FeatureDefinition;
3
+ export declare function isFeatureSetDefinition(item: unknown): item is FeatureSetDefinition;
2
4
  export declare function convertToEditorProfileDefinition(predefinedProfile: IPredefinedProfile, locale?: string): Promise<IEditorProfileDefinition | undefined>;
@@ -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,30 +213,15 @@ 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 {
240
- /**
241
- * The layer id of the source.
242
- */
243
- layerId: number;
244
- }
224
+ export type ILayerIdCapableSource = Pick<__esri.FeatureLayer, "layerId">;
245
225
  /**
246
226
  * Layer that supports queryFeatures
247
227
  */
@@ -279,62 +259,39 @@ export interface IDomainsCapableSource {
279
259
  /**
280
260
  * Layer that implements types
281
261
  */
282
- export interface IFeatureTypesCapableSource extends IDomainsCapableSource {
283
- /**
284
- * The name of the field holding the type ID or subtypes for the features.
285
- */
286
- typeIdField: string;
287
- /**
288
- * An array of subtypes defined in the feature service exposed by ArcGIS REST API.
289
- */
290
- types: __esri.FeatureType[];
291
- }
262
+ export type IFeatureTypesCapableSource = IDomainsCapableSource & Pick<__esri.FeatureLayer, "typeIdField" | "types">;
292
263
  /**
293
264
  * Layer that has a subtype field
294
265
  */
295
- export interface ISubtypeFieldCapableSource extends IDomainsCapableSource {
296
- /**
297
- * The name of the field which holds the id of the subtypes.
298
- */
299
- subtypeField: string;
300
- }
266
+ export type ISubtypeFieldCapableSource = IDomainsCapableSource & Pick<__esri.FeatureLayer, "subtypeField">;
301
267
  /**
302
268
  * Layer that exposes subtypes.
303
269
  */
304
- export interface ISubtypesCapableSource extends ISubtypeFieldCapableSource {
305
- /**
306
- * An array of subtypes defined in the layer.
307
- */
308
- subtypes: __esri.Subtype[];
309
- }
270
+ export type ISubtypesCapableSource = ISubtypeFieldCapableSource & Pick<__esri.FeatureLayer, "subtypes">;
310
271
  /**
311
272
  * Layer that supports relationships.
312
273
  */
313
- export interface IRelationshipsCapableSource extends ILayerIdCapableSource {
314
- /**
315
- * Array of relationships set up for the layer.
316
- */
317
- relationships: __esri.Relationship[];
318
- /**
319
- * The absolute URL of the REST endpoint of the layer, non-spatial table or service.
320
- */
321
- url: string;
322
- }
274
+ export type IRelationshipsCapableSource = ILayerIdCapableSource & IUrlCapableSource & Pick<__esri.FeatureLayer, "relationships">;
323
275
  /**
324
276
  * Layer that is capable of being npn-spatial.
325
277
  */
326
- export interface ITableCapableSource {
327
- /**
328
- * Returns `true` if the layer is loaded from a non-spatial table in a service.
329
- */
330
- isTable: boolean;
331
- }
332
- export interface ILoadableSource {
333
- /**
334
- * Loads the resources referenced by the layer.
335
- */
336
- load: (signal?: AbortSignal) => Promise<any>;
337
- }
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">;
338
295
  /**
339
296
  * Represents a string that will have to be manufactured from a Intl strings resource.
340
297
  */
@@ -351,6 +308,9 @@ export interface IIntlString {
351
308
  */
352
309
  formatValues?: Record<string, string>;
353
310
  }
311
+ /**
312
+ * The bare minimum interface for layer information coming from the rest API.
313
+ */
354
314
  export interface LayerInfo {
355
315
  id: number;
356
316
  type: string;
@@ -1,12 +1,8 @@
1
1
  import type * as types from "./types";
2
2
  export declare function isFeatureLayerLikeInstance(item: unknown): item is types.IFeatureLayerLikeInstance;
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;
3
+ export declare function isGroupLayerCapable(item: unknown): item is types.IGroupLayerCapable;
4
+ export declare function isMapInstance(item: unknown): item is __esri.Map;
5
+ export declare function isLoadAllCapable(item: unknown): item is types.ILoadAllCapable;
10
6
  export declare function isPortalItemDefinition(item: unknown): item is types.IPortalItemDefinition;
11
7
  export declare function isFeatureLayerItemDefinition(item: unknown): item is types.IFeatureLayerItemDefinition;
12
8
  export declare function isFieldsDefinition(item: unknown): item is types.IFieldsDefinition;
@@ -23,6 +19,7 @@ export declare function isFeatureTypesCapableLayer(item: unknown): item is types
23
19
  export declare function isDomainsCapableLayer(item: unknown): item is types.IDomainsCapableSource;
24
20
  export declare function isSubtypeFieldCapableLayer(item: unknown): item is types.ISubtypeFieldCapableSource;
25
21
  export declare function isSubtypesCapableLayer(item: unknown): item is types.ISubtypesCapableSource;
22
+ export declare function isPortalItemCapable(item: unknown): item is types.IPortalItemCapable;
26
23
  export declare function isRelationshipsCapableLayer(item: unknown): item is types.IRelationshipsCapableSource;
27
24
  export declare function isTableCapableLayer(item: unknown): item is types.ITableCapableSource;
28
25
  export declare function isLoadableSource(item: unknown): item is types.ILoadableSource;
@@ -0,0 +1,41 @@
1
+ import type { SqlTimeStampOffset } from "./SqlTimestampOffset";
2
+ import { ArcadeDate } from "./support";
3
+ import type { Zone } from "luxon";
4
+ import { DateTime } from "luxon";
5
+ export declare function standardiseDateOnlyFormat(format: string): string;
6
+ export declare class DateOnly {
7
+ protected _year: number;
8
+ protected _month: number;
9
+ protected _day: number;
10
+ private constructor();
11
+ readonly declaredRootClass: string;
12
+ get month(): number;
13
+ get monthJS(): number;
14
+ get year(): number;
15
+ get day(): number;
16
+ get isValid(): boolean;
17
+ equals(v: any): boolean;
18
+ clone(): DateOnly;
19
+ toDateTime(timeZone: Zone | string): DateTime;
20
+ toDateTimeLuxon(timeZone: Zone | string): DateTime;
21
+ toString(): string;
22
+ toFormat(format?: string | null): string;
23
+ toArcadeDate(): ArcadeDate;
24
+ toNumber(): number;
25
+ toJSDate(): Date;
26
+ toStorageFormat(): string;
27
+ toSQLValue(): string;
28
+ toSQLWithKeyword(): string;
29
+ plus(format: string, amount: number): DateOnly | null;
30
+ toUTCDateTime(): DateTime;
31
+ difference(dateonly: DateOnly, format: string): number;
32
+ static fromMilliseconds(ms: number): DateOnly | null;
33
+ static fromSeconds(seconds: number): DateOnly | null;
34
+ static fromReader(v: string | null): DateOnly | null;
35
+ static fromParts(year: number, month: number, day: number): DateOnly | null;
36
+ static fromDateJS(date: Date): DateOnly;
37
+ static fromDateTime(date: DateTime): DateOnly;
38
+ static fromSqlTimeStampOffset(date: SqlTimeStampOffset): DateOnly;
39
+ static fromString(datestring: string, format?: string | null): DateOnly | null;
40
+ static fromNow(timeReferenceZone?: string): DateOnly;
41
+ }
@@ -0,0 +1,16 @@
1
+ import type { IntervalPeriodNode, IntervalQualifierNode } from "./support";
2
+ export declare class SqlInterval {
3
+ private static _fixDefaults;
4
+ static _parseSecondsComponent(destination: SqlInterval, seconds: string): void;
5
+ static createFromMilliseconds(vo: number): SqlInterval;
6
+ static createFromValueAndQualifer(value: string, qualifier: IntervalPeriodNode | IntervalQualifierNode, op: "-" | "" | "+"): SqlInterval;
7
+ op: "-" | "+";
8
+ day: number;
9
+ second: number;
10
+ hour: number;
11
+ month: number;
12
+ year: number;
13
+ minute: number;
14
+ millis: number;
15
+ valueInMilliseconds(): number;
16
+ }
@@ -0,0 +1,26 @@
1
+ import { DateTime } from "luxon";
2
+ export declare class SqlTimeStampOffset {
3
+ private _timeStampOffset;
4
+ constructor(_timeStampOffset: string);
5
+ private _date;
6
+ toDateTime(): DateTime;
7
+ get isValid(): boolean;
8
+ get timezoneOffsetHour(): number;
9
+ get timezoneOffsetMinutes(): number;
10
+ toMilliseconds(): number;
11
+ get hour(): number;
12
+ get minute(): number;
13
+ get second(): number;
14
+ get day(): number;
15
+ get month(): number;
16
+ get year(): number;
17
+ startOfDay(): SqlTimeStampOffset;
18
+ static fromJSDate(value: Date): SqlTimeStampOffset;
19
+ static fromDateTime(value: DateTime): SqlTimeStampOffset;
20
+ static fromParts(year: number, month: number, day?: number, hour?: number, minute?: number, second?: number, millisecond?: number, negativeOffset?: boolean, offseth?: number, offsetm?: number): SqlTimeStampOffset;
21
+ toStorageFormat(): string;
22
+ toString(): string;
23
+ toSQLValue(): string;
24
+ toSQLWithKeyword(): string;
25
+ addMilliseconds(mills: number): SqlTimeStampOffset;
26
+ }
@@ -0,0 +1,37 @@
1
+ import type { SqlTimeStampOffset } from "./SqlTimestampOffset";
2
+ import { DateTime } from "luxon";
3
+ export declare function standardiseTimeFormat(format: string | null): string;
4
+ /**
5
+ * TimeOnly: Arcade type for defining a Time value
6
+ */
7
+ export declare class TimeOnly {
8
+ protected _hour: number;
9
+ protected _minute: number;
10
+ protected _second: number;
11
+ protected _millisecond: number;
12
+ constructor(_hour: number, _minute: number, _second: number, _millisecond: number);
13
+ readonly declaredRootClass: string;
14
+ get hour(): number;
15
+ get minute(): number;
16
+ get second(): number;
17
+ get millisecond(): number;
18
+ equals(v: any): boolean;
19
+ clone(): TimeOnly;
20
+ isValid(): boolean;
21
+ toString(): string;
22
+ toSQLValue(): string;
23
+ toSQLWithKeyword(): string;
24
+ toStorageString(): string;
25
+ toFormat(format?: string | null): string;
26
+ toNumber(): number;
27
+ static fromParts(hour: number, minute: number, second: number, millisecond: number): TimeOnly | null;
28
+ static fromReader(value: string | null): TimeOnly | null;
29
+ static fromMilliseconds(ms: number): TimeOnly | null;
30
+ static fromDateJS(date: Date): TimeOnly;
31
+ static fromDateTime(date: DateTime): TimeOnly;
32
+ static fromSqlTimeStampOffset(date: SqlTimeStampOffset): TimeOnly;
33
+ static fromString(timestring: string, format?: string | null): TimeOnly | null;
34
+ plus(format: string, amount: number): TimeOnly | null;
35
+ toUTCDateTime(): DateTime;
36
+ difference(time: TimeOnly, format: string): number;
37
+ }
@@ -0,0 +1,11 @@
1
+ import { IANAZone, Zone, DateTime } from "luxon";
2
+ /**
3
+ * A zone with a fixed offset (meaning no DST)
4
+ * @implements {Zone}
5
+ */
6
+ export declare class UnknownTimeZone {
7
+ static instance: IANAZone;
8
+ }
9
+ export declare function isUnknownTimeZone(zone: Zone | string): boolean;
10
+ export declare function substituteUnknownTimezone(zone: Zone | string): Zone | string;
11
+ export declare function adoptTimeZone(date: DateTime, zone: Zone): DateTime;
@@ -0,0 +1,122 @@
1
+ import type { DateTime } from "luxon";
2
+ import type { SQLDates } from "./sqlDateParsingUtils";
3
+ import type { SqlTimeStampOffset } from "./SqlTimestampOffset";
4
+ import type { FileRange } from "../PeggyGrammar/sql92grammar";
5
+ type PeggyLocation = FileRange;
6
+ type WithRange<T> = {
7
+ [P in keyof T]: T[P];
8
+ } & {
9
+ range: PeggyLocation;
10
+ };
11
+ export type SQLNode = WithRange<BinaryNode | BoolNode | ColumnNode | CurrentTimeNode | DataTypeNode | DateNode | FunctionNode | IntervalNode | IntervalPeriodNode | IntervalQualifierNode | ListNode | NullNode | NumberNode | ParamNode | SearchedCaseNode | SimpleCaseNode | StringNode | TimeNode | TimeStampNode | UnaryNode | WhenNode>;
12
+ export interface SimpleCaseNode {
13
+ type: "case-expression";
14
+ format: "simple";
15
+ clauses: WithRange<WhenNode>[];
16
+ operand: SQLNode;
17
+ else: SQLNode;
18
+ elseRange: PeggyLocation;
19
+ }
20
+ export interface SearchedCaseNode {
21
+ type: "case-expression";
22
+ format: "searched";
23
+ clauses: WithRange<WhenNode>[];
24
+ else: SQLNode;
25
+ elseRange: PeggyLocation;
26
+ }
27
+ export interface WhenNode {
28
+ type: "when-clause";
29
+ operand: SQLNode;
30
+ value: SQLNode;
31
+ }
32
+ export interface ParamNode {
33
+ type: "parameter";
34
+ value: "string";
35
+ }
36
+ export interface ListNode {
37
+ type: "expression-list";
38
+ value: SQLNode[];
39
+ }
40
+ export interface UnaryNode {
41
+ type: "unary-expression";
42
+ expr: SQLNode;
43
+ }
44
+ export interface BinaryNode {
45
+ type: "binary-expression";
46
+ operator: BinaryOperator;
47
+ left: SQLNode;
48
+ right: SQLNode;
49
+ escape?: string;
50
+ }
51
+ export interface NullNode {
52
+ type: "null";
53
+ value: null;
54
+ }
55
+ export interface BoolNode {
56
+ type: "boolean";
57
+ value: boolean;
58
+ }
59
+ export interface StringNode {
60
+ type: "string";
61
+ value: string;
62
+ }
63
+ export interface NumberNode {
64
+ type: "number";
65
+ value: number;
66
+ }
67
+ export interface DateNode {
68
+ type: "date";
69
+ value: string;
70
+ parsedValue?: SQLDates;
71
+ }
72
+ export interface TimeNode {
73
+ type: "time";
74
+ value: string;
75
+ }
76
+ export interface TimeStampNode {
77
+ type: "timestamp";
78
+ value: string;
79
+ withtimezone?: boolean;
80
+ parsedValue?: DateTime | SqlTimeStampOffset;
81
+ }
82
+ export interface ColumnNode {
83
+ type: "column-reference";
84
+ column: string;
85
+ delimited?: boolean;
86
+ }
87
+ export interface CurrentTimeNode {
88
+ type: "current-time";
89
+ mode: "date" | "timestamp";
90
+ }
91
+ export interface IntervalNode {
92
+ type: "interval";
93
+ value: WithRange<ParamNode | StringNode>;
94
+ op: "-" | "" | "+";
95
+ qualifier: WithRange<IntervalPeriodNode | IntervalQualifierNode>;
96
+ }
97
+ export interface IntervalQualifierNode {
98
+ type: "interval-qualifier";
99
+ start: WithRange<IntervalPeriodNode>;
100
+ end: WithRange<IntervalPeriodNode>;
101
+ }
102
+ export interface IntervalPeriodNode {
103
+ type: "interval-period";
104
+ period: "day" | "hour" | "minute" | "month" | "second" | "year";
105
+ precision: number;
106
+ secondary: number;
107
+ }
108
+ export interface FunctionNode {
109
+ type: "function";
110
+ name: string;
111
+ args: WithRange<ListNode>;
112
+ }
113
+ export type BinaryOperator = "-" | "*" | "/" | "+" | "<" | "<=" | "<>" | "=" | ">" | ">=" | "||" | "AND" | "BETWEEN" | "IN" | "IS" | "ISNOT" | "LIKE" | "NOT IN" | "NOT LIKE" | "NOTBETWEEN" | "OR";
114
+ export interface DataTypeNode {
115
+ type: "data-type";
116
+ value: {
117
+ type: "date" | "float" | "integer" | "real" | "smallint" | "time" | "timestamp" | "varchar";
118
+ size?: number;
119
+ withtimezone?: boolean;
120
+ };
121
+ }
122
+ export {};
@@ -0,0 +1,5 @@
1
+ export type SqlComparisonOperator = "<" | "<=" | "<>" | "=" | ">" | ">=";
2
+ export declare function isDateTimeComparableValue(dt: any): boolean;
3
+ export declare function isDateOrTimeValue(dt: any): boolean;
4
+ export declare function dateValueInMilliseconds(dt: any): number;
5
+ export declare function sqlCompare(left: any, right: any, operator: SqlComparisonOperator, _defaultTimeZone: string): boolean | null;
@@ -0,0 +1,18 @@
1
+ import { DateOnly } from "./DateOnly";
2
+ import { SqlInterval } from "./SqlInterval";
3
+ import { SqlTimeStampOffset } from "./SqlTimestampOffset";
4
+ import { TimeOnly } from "./TimeOnly";
5
+ import { DateTime } from "luxon";
6
+ export type SQLDates = DateOnly | DateTime | SqlTimeStampOffset;
7
+ export declare function convertToExecutingTimeZone(dt: Date, timeReferenceZone: string): DateTime;
8
+ export declare function isNumber(value: any): value is number;
9
+ export declare function isString(value: any): value is string;
10
+ export declare function isSqlInterval(value: any): value is SqlInterval;
11
+ export declare function isDate(v: any): v is Date;
12
+ export declare function isDateTime(v: any): v is DateTime;
13
+ export declare function isDateOnly(v: any): v is DateOnly;
14
+ export declare function isTimeOnly(v: any): v is TimeOnly;
15
+ export declare function isTimestampOffset(v: any): v is SqlTimeStampOffset;
16
+ export declare function parseTime(v: string): TimeOnly;
17
+ export declare function parseTimestamp(v: string, timeReferenceZone: string, _withtimezoneexplicit?: boolean): DateTime | SqlTimeStampOffset;
18
+ export declare function parseDate(v: string, timeReferenceZone: string): SQLDates;
@@ -0,0 +1,6 @@
1
+ import type { IntervalPeriodNode, IntervalQualifierNode } from "./support";
2
+ import { FeatureServiceDatabaseType } from "./support";
3
+ export declare function evaluateNodeToWhereClause(node: any, dbtype: FeatureServiceDatabaseType): string[] | string;
4
+ export declare function translateFunctionToDatabaseSpecific(functionname: string, params: any[], dbtype: FeatureServiceDatabaseType): string;
5
+ export declare function makeToday(justdate: boolean, dbtype: FeatureServiceDatabaseType): string;
6
+ export declare function convertIntervalToSql(value: string, qualifier: IntervalQualifierNode | IntervalPeriodNode, op: "+" | "-" | ""): string;