@esri/solutions-components 0.6.7 → 0.6.8

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 (1280) hide show
  1. package/dist/cjs/ExpandToggle-e6a0d66e.js +117 -0
  2. package/dist/cjs/FloatingArrow-0119ec6e.js +48 -0
  3. package/dist/cjs/Heading-521f39ac.js +25 -0
  4. package/dist/cjs/app-globals-72576a1c.js +69 -0
  5. package/dist/cjs/ar-1718ae57.js +97 -0
  6. package/dist/cjs/basemap-gallery_4.cjs.entry.js +622 -0
  7. package/dist/cjs/bg-190a176c.js +78 -0
  8. package/dist/cjs/bs-919e0de8.js +47 -0
  9. package/dist/cjs/buffer-tools_4.cjs.entry.js +1437 -1437
  10. package/dist/cjs/ca-94918e06.js +67 -0
  11. package/dist/cjs/calcite-accordion-item.cjs.entry.js +140 -140
  12. package/dist/cjs/calcite-accordion.cjs.entry.js +75 -75
  13. package/dist/cjs/calcite-action-bar.cjs.entry.js +216 -216
  14. package/dist/cjs/calcite-action-group_2.cjs.entry.js +365 -365
  15. package/dist/cjs/calcite-action-pad.cjs.entry.js +135 -135
  16. package/dist/cjs/calcite-action_2.cjs.entry.js +445 -445
  17. package/dist/cjs/calcite-alert.cjs.entry.js +247 -247
  18. package/dist/cjs/calcite-avatar.cjs.entry.js +73 -73
  19. package/dist/cjs/calcite-block-section.cjs.entry.js +122 -122
  20. package/dist/cjs/calcite-block.cjs.entry.js +131 -131
  21. package/dist/cjs/calcite-button.cjs.entry.js +182 -182
  22. package/dist/cjs/calcite-card.cjs.entry.js +99 -99
  23. package/dist/cjs/calcite-checkbox.cjs.entry.js +125 -125
  24. package/dist/cjs/calcite-chip-group.cjs.entry.js +164 -164
  25. package/dist/cjs/calcite-chip.cjs.entry.js +213 -213
  26. package/dist/cjs/calcite-color-picker-hex-input_2.cjs.entry.js +303 -303
  27. package/dist/cjs/calcite-color-picker.cjs.entry.js +886 -886
  28. package/dist/cjs/calcite-combobox-item-group.cjs.entry.js +35 -35
  29. package/dist/cjs/calcite-combobox_6.cjs.entry.js +1786 -1786
  30. package/dist/cjs/calcite-date-picker-day_3.cjs.entry.js +589 -589
  31. package/dist/cjs/calcite-date-picker.cjs.entry.js +434 -434
  32. package/dist/cjs/calcite-fab.cjs.entry.js +66 -66
  33. package/dist/cjs/calcite-filter_5.cjs.entry.js +1131 -1131
  34. package/dist/cjs/calcite-flow-item.cjs.entry.js +146 -146
  35. package/dist/cjs/calcite-flow.cjs.entry.js +117 -117
  36. package/dist/cjs/calcite-graph.cjs.entry.js +66 -66
  37. package/dist/cjs/calcite-icon.cjs.entry.js +80 -80
  38. package/dist/cjs/calcite-inline-editable.cjs.entry.js +225 -225
  39. package/dist/cjs/calcite-input-date-picker.cjs.entry.js +632 -632
  40. package/dist/cjs/calcite-input-number_2.cjs.entry.js +846 -846
  41. package/dist/cjs/calcite-input-time-picker-b99baf7b.js +1718 -0
  42. package/dist/cjs/calcite-input-time-picker.cjs.entry.js +15 -15
  43. package/dist/cjs/calcite-input-time-zone.cjs.entry.js +150 -150
  44. package/dist/cjs/calcite-input_2.cjs.entry.js +645 -645
  45. package/dist/cjs/calcite-label.cjs.entry.js +40 -40
  46. package/dist/cjs/calcite-link.cjs.entry.js +96 -96
  47. package/dist/cjs/calcite-list-item-group.cjs.entry.js +46 -46
  48. package/dist/cjs/calcite-loader.cjs.entry.js +65 -65
  49. package/dist/cjs/calcite-menu-item.cjs.entry.js +246 -246
  50. package/dist/cjs/calcite-menu.cjs.entry.js +161 -161
  51. package/dist/cjs/calcite-modal.cjs.entry.js +282 -282
  52. package/dist/cjs/calcite-navigation-logo.cjs.entry.js +52 -52
  53. package/dist/cjs/calcite-navigation-user.cjs.entry.js +45 -45
  54. package/dist/cjs/calcite-navigation.cjs.entry.js +126 -126
  55. package/dist/cjs/calcite-notice.cjs.entry.js +105 -105
  56. package/dist/cjs/calcite-option-group.cjs.entry.js +24 -24
  57. package/dist/cjs/calcite-option_2.cjs.entry.js +271 -271
  58. package/dist/cjs/calcite-pagination.cjs.entry.js +191 -191
  59. package/dist/cjs/calcite-panel_2.cjs.entry.js +346 -346
  60. package/dist/cjs/calcite-pick-list-group.cjs.entry.js +46 -46
  61. package/dist/cjs/calcite-pick-list-item.cjs.entry.js +181 -181
  62. package/dist/cjs/calcite-pick-list.cjs.entry.js +130 -130
  63. package/dist/cjs/calcite-radio-button-group.cjs.entry.js +118 -118
  64. package/dist/cjs/calcite-radio-button.cjs.entry.js +292 -292
  65. package/dist/cjs/calcite-rating.cjs.entry.js +245 -245
  66. package/dist/cjs/calcite-scrim.cjs.entry.js +93 -93
  67. package/dist/cjs/calcite-segmented-control_2.cjs.entry.js +225 -225
  68. package/dist/cjs/calcite-shell-center-row.cjs.entry.js +42 -42
  69. package/dist/cjs/calcite-shell-panel_14.cjs.entry.js +2604 -2604
  70. package/dist/cjs/calcite-sortable-list.cjs.entry.js +134 -134
  71. package/dist/cjs/calcite-split-button.cjs.entry.js +92 -92
  72. package/dist/cjs/calcite-stepper-item.cjs.entry.js +197 -197
  73. package/dist/cjs/calcite-stepper.cjs.entry.js +187 -187
  74. package/dist/cjs/calcite-switch.cjs.entry.js +100 -100
  75. package/dist/cjs/calcite-text-area.cjs.entry.js +235 -235
  76. package/dist/cjs/calcite-tile-select-group.cjs.entry.js +27 -27
  77. package/dist/cjs/calcite-tile-select.cjs.entry.js +180 -180
  78. package/dist/cjs/calcite-tile.cjs.entry.js +58 -58
  79. package/dist/cjs/calcite-time-picker.cjs.entry.js +619 -619
  80. package/dist/cjs/calcite-tip-group.cjs.entry.js +10 -10
  81. package/dist/cjs/calcite-tip-manager.cjs.entry.js +185 -185
  82. package/dist/cjs/calcite-tip.cjs.entry.js +94 -94
  83. package/dist/cjs/calcite-tooltip.cjs.entry.js +185 -185
  84. package/dist/cjs/calcite-tree_3.cjs.entry.js +821 -821
  85. package/dist/cjs/card-manager_4.cjs.entry.js +707 -653
  86. package/dist/cjs/conditionalSlot-85b3a6b3.js +63 -0
  87. package/dist/cjs/crowdsource-manager.cjs.entry.js +258 -256
  88. package/dist/cjs/crowdsource-reporter.cjs.entry.js +60 -60
  89. package/dist/cjs/cs-fe27e732.js +143 -0
  90. package/dist/cjs/da-1b7f3440.js +62 -0
  91. package/dist/cjs/date-cec32b0e.js +250 -0
  92. package/dist/cjs/de-0dc1effa.js +87 -0
  93. package/dist/cjs/de-at-acdc4d01.js +86 -0
  94. package/dist/cjs/de-ch-778a0d99.js +86 -0
  95. package/dist/cjs/deduct-calculator.cjs.entry.js +90 -90
  96. package/dist/cjs/dom-c1807fc1.js +1046 -0
  97. package/dist/cjs/downloadUtils-a8c530f7.js +2767 -0
  98. package/dist/cjs/edit-card_2.cjs.entry.js +345 -345
  99. package/dist/cjs/el-fdbc9bc1.js +62 -0
  100. package/dist/cjs/en-au-0ff50cdf.js +62 -0
  101. package/dist/cjs/en-ca-284e9368.js +61 -0
  102. package/dist/cjs/en-gb-0fcae8ae.js +65 -0
  103. package/dist/cjs/es-cd54acba.js +62 -0
  104. package/dist/cjs/es-mx-2078d50f.js +61 -0
  105. package/dist/cjs/et-17f323f6.js +88 -0
  106. package/dist/cjs/fi-82f27397.js +111 -0
  107. package/dist/cjs/filter-bda212b4.js +765 -0
  108. package/dist/cjs/floating-ui-8d10af88.js +1888 -0
  109. package/dist/cjs/focusTrapComponent-a22fc6a8.js +1009 -0
  110. package/dist/cjs/form-9d8ebf06.js +288 -0
  111. package/dist/cjs/fr-af7e1192.js +64 -0
  112. package/dist/cjs/fr-ch-5e1f2c28.js +62 -0
  113. package/dist/cjs/he-ea851800.js +101 -0
  114. package/dist/cjs/hi-5212a21d.js +61 -0
  115. package/dist/cjs/hr-4eecb2ed.js +76 -0
  116. package/dist/cjs/hu-6b527d8e.js +84 -0
  117. package/dist/cjs/id-d78f12ec.js +62 -0
  118. package/dist/cjs/index-0e50040c.js +1938 -0
  119. package/dist/cjs/index-2b60e135.js +201 -0
  120. package/dist/cjs/index.es-4542630e.js +10808 -0
  121. package/dist/cjs/interfaces-d539e30c.js +85 -0
  122. package/dist/cjs/it-15242935.js +62 -0
  123. package/dist/cjs/it-ch-9dc21944.js +62 -0
  124. package/dist/cjs/ja-f702cfc2.js +68 -0
  125. package/dist/cjs/ko-aa9bde2c.js +68 -0
  126. package/dist/cjs/label-6e33e971.js +136 -0
  127. package/dist/cjs/list-item.cjs.entry.js +60 -60
  128. package/dist/cjs/loadModules-31cab7ac.js +30 -0
  129. package/dist/cjs/loadable-bac9cdd6.js +94 -0
  130. package/dist/cjs/loader.cjs.js +5 -14
  131. package/dist/cjs/locale-c63a1b57.js +604 -0
  132. package/dist/cjs/locale-d15cd743.js +416 -0
  133. package/dist/cjs/lt-e741ff2f.js +93 -0
  134. package/dist/cjs/lv-92d6768e.js +62 -0
  135. package/dist/cjs/map-select-tools_3.cjs.entry.js +1285 -1285
  136. package/dist/cjs/mapViewUtils-9da2dddd.js +411 -0
  137. package/dist/cjs/mk-b209ac0d.js +62 -0
  138. package/dist/cjs/nb-db13e666.js +63 -0
  139. package/dist/cjs/nl-fcd9e0c5.js +63 -0
  140. package/dist/cjs/openCloseComponent-5d70fcd8.js +84 -0
  141. package/dist/cjs/pci-calculator.cjs.entry.js +102 -102
  142. package/dist/cjs/pciUtils-e0ddeb7c.js +847 -0
  143. package/dist/cjs/pl-87c83322.js +110 -0
  144. package/dist/cjs/pt-b0b5f472.js +63 -0
  145. package/dist/cjs/pt-br-03333e90.js +61 -0
  146. package/dist/cjs/public-notification.cjs.entry.js +844 -844
  147. package/dist/cjs/publicNotificationStore-55edd658.js +51 -0
  148. package/dist/cjs/ro-c3661b73.js +62 -0
  149. package/dist/cjs/ru-8dd3fd58.js +122 -0
  150. package/dist/cjs/shared-list-render-c0adb192.js +364 -0
  151. package/dist/cjs/sk-151d9acf.js +144 -0
  152. package/dist/cjs/sl-9b45a152.js +62 -0
  153. package/dist/cjs/solution-configuration.cjs.entry.js +888 -888
  154. package/dist/cjs/solution-contents_3.cjs.entry.js +21506 -21506
  155. package/dist/cjs/solution-store-0004e4e6.js +4100 -0
  156. package/dist/cjs/solutions-components.cjs.js +5 -5
  157. package/dist/cjs/sortableComponent-58679f07.js +3112 -0
  158. package/dist/cjs/sr-186bf15c.js +97 -0
  159. package/dist/cjs/store-manager.cjs.entry.js +52 -52
  160. package/dist/cjs/sv-a93fee0c.js +67 -0
  161. package/dist/cjs/t9n-1d032c30.js +100 -0
  162. package/dist/cjs/th-41680352.js +61 -0
  163. package/dist/cjs/throttle-aeeb1b4d.js +75 -0
  164. package/dist/cjs/time-5e450ec8.js +208 -0
  165. package/dist/cjs/tr-0bd886d6.js +62 -0
  166. package/dist/cjs/uk-4fade133.js +100 -0
  167. package/dist/cjs/utils-acfeed9d.js +64 -0
  168. package/dist/cjs/utils-ae9bdd59.js +55 -0
  169. package/dist/cjs/vi-1c9fe343.js +66 -0
  170. package/dist/cjs/zh-cn-28fa1fe1.js +90 -0
  171. package/dist/cjs/zh-hk-5abf8eb5.js +67 -0
  172. package/dist/cjs/zh-tw-07500357.js +88 -0
  173. package/dist/collection/collection-manifest.json +37 -35
  174. package/dist/collection/components/basemap-gallery/basemap-gallery.css +19 -0
  175. package/dist/collection/components/basemap-gallery/basemap-gallery.js +166 -0
  176. package/dist/collection/components/basemap-gallery/test/basemap-gallery.e2e.js +29 -0
  177. package/dist/collection/components/basemap-gallery/test/basemap-gallery.spec.js +37 -0
  178. package/dist/collection/components/buffer-tools/buffer-tools.js +481 -476
  179. package/dist/collection/components/buffer-tools/test/buffer-tools.e2e.js +29 -0
  180. package/dist/collection/components/buffer-tools/test/buffer-tools.spec.js +160 -0
  181. package/dist/collection/components/card-manager/card-manager.js +199 -197
  182. package/dist/collection/components/card-manager/test/card-manager.e2e.js +29 -0
  183. package/dist/collection/components/card-manager/test/card-manager.spec.js +37 -0
  184. package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +448 -406
  185. package/dist/collection/components/crowdsource-manager/test/crowdsource-manager.e2e.js +29 -0
  186. package/dist/collection/components/crowdsource-manager/test/crowdsource-manager.spec.js +37 -0
  187. package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.js +89 -89
  188. package/dist/collection/components/crowdsource-reporter/test/crowdsource-reporter.e2e.js +29 -0
  189. package/dist/collection/components/crowdsource-reporter/test/crowdsource-reporter.spec.js +37 -0
  190. package/dist/collection/components/deduct-calculator/deduct-calculator.js +143 -143
  191. package/dist/collection/components/deduct-calculator/test/deduct-calculator.e2e.js +29 -0
  192. package/dist/collection/components/deduct-calculator/test/deduct-calculator.spec.js +37 -0
  193. package/dist/collection/components/edit-card/edit-card.js +302 -300
  194. package/dist/collection/components/edit-card/test/edit-card.e2e.js +14 -0
  195. package/dist/collection/components/edit-card/test/edit-card.spec.js +22 -0
  196. package/dist/collection/components/info-card/info-card.js +361 -357
  197. package/dist/collection/components/info-card/test/info-card.e2e.js +29 -0
  198. package/dist/collection/components/info-card/test/info-card.spec.js +37 -0
  199. package/dist/collection/components/json-editor/json-editor.js +618 -614
  200. package/dist/collection/components/json-editor/test/json-editor.e2e.js +36 -0
  201. package/dist/collection/components/json-editor/test/json-editor.spec.js +65 -0
  202. package/dist/collection/components/layer-table/layer-table.js +620 -548
  203. package/dist/collection/components/layer-table/test/layer-table.e2e.js +29 -0
  204. package/dist/collection/components/layer-table/test/layer-table.spec.js +37 -0
  205. package/dist/collection/components/layout-manager/layout-manager.js +136 -135
  206. package/dist/collection/components/layout-manager/test/layout-manager.e2e.js +29 -0
  207. package/dist/collection/components/layout-manager/test/layout-manager.spec.js +37 -0
  208. package/dist/collection/components/list-item/list-item.js +89 -89
  209. package/dist/collection/components/list-item/test/list-item.e2e.js +29 -0
  210. package/dist/collection/components/list-item/test/list-item.spec.js +37 -0
  211. package/dist/collection/components/map-card/map-card.css +0 -7
  212. package/dist/collection/components/map-card/map-card.js +211 -203
  213. package/dist/collection/components/map-card/test/map-card.e2e.js +29 -0
  214. package/dist/collection/components/map-card/test/map-card.spec.js +37 -0
  215. package/dist/collection/components/map-draw-tools/map-draw-tools.js +692 -683
  216. package/dist/collection/components/map-draw-tools/test/map-draw-tools.e2e.js +29 -0
  217. package/dist/collection/components/map-draw-tools/test/map-draw-tools.spec.js +37 -0
  218. package/dist/collection/components/map-layer-picker/map-layer-picker.js +424 -423
  219. package/dist/collection/components/map-layer-picker/test/map-layer-picker.e2e.js +29 -0
  220. package/dist/collection/components/map-layer-picker/test/map-layer-picker.spec.js +114 -0
  221. package/dist/collection/components/map-picker/map-picker.js +226 -224
  222. package/dist/collection/components/map-picker/test/map-picker.e2e.js +29 -0
  223. package/dist/collection/components/map-picker/test/map-picker.spec.js +37 -0
  224. package/dist/collection/components/map-search/map-search.css +24 -0
  225. package/dist/collection/components/map-search/map-search.js +321 -0
  226. package/dist/collection/components/map-search/test/map-search.e2e.js +29 -0
  227. package/dist/collection/components/map-search/test/map-search.spec.js +37 -0
  228. package/dist/collection/components/map-select-tools/map-select-tools.js +1242 -1229
  229. package/dist/collection/components/map-select-tools/test/map-select-tools.e2e.js +29 -0
  230. package/dist/collection/components/map-select-tools/test/map-select-tools.spec.js +366 -0
  231. package/dist/collection/components/map-tools/map-tools.js +337 -210
  232. package/dist/collection/components/map-tools/test/map-tools.e2e.js +29 -0
  233. package/dist/collection/components/map-tools/test/map-tools.spec.js +37 -0
  234. package/dist/collection/components/pci-calculator/pci-calculator.js +143 -143
  235. package/dist/collection/components/pci-calculator/test/pci-calculator.e2e.js +29 -0
  236. package/dist/collection/components/pci-calculator/test/pci-calculator.spec.js +37 -0
  237. package/dist/collection/components/pdf-download/pdf-download.js +338 -333
  238. package/dist/collection/components/pdf-download/test/pdf-download.e2e.js +76 -0
  239. package/dist/collection/components/pdf-download/test/pdf-download.spec.js +107 -0
  240. package/dist/collection/components/public-notification/public-notification.js +1295 -1287
  241. package/dist/collection/components/public-notification/test/public-notification.spec.js +161 -0
  242. package/dist/collection/components/refine-selection/refine-selection.js +608 -601
  243. package/dist/collection/components/refine-selection/test/refine-selection.e2e.js +14 -0
  244. package/dist/collection/components/refine-selection/test/refine-selection.spec.js +22 -0
  245. package/dist/collection/components/solution-configuration/solution-configuration.js +739 -735
  246. package/dist/collection/components/solution-configuration/test/solution-configuration.e2e.js +36 -0
  247. package/dist/collection/components/solution-configuration/test/solution-configuration.spec.js +119 -0
  248. package/dist/collection/components/solution-contents/solution-contents.js +163 -162
  249. package/dist/collection/components/solution-contents/test/solution-contents.e2e.js +94 -0
  250. package/dist/collection/components/solution-contents/test/solution-contents.spec.js +143 -0
  251. package/dist/collection/components/solution-item/solution-item.js +203 -202
  252. package/dist/collection/components/solution-item/test/solution-item.e2e.js +36 -0
  253. package/dist/collection/components/solution-item/test/solution-item.spec.js +77 -0
  254. package/dist/collection/components/solution-item-details/solution-item-details.js +248 -248
  255. package/dist/collection/components/solution-item-details/test/solution-item-details.e2e.js +36 -0
  256. package/dist/collection/components/solution-item-details/test/solution-item-details.spec.js +142 -0
  257. package/dist/collection/components/solution-item-icon/solution-item-icon.js +398 -398
  258. package/dist/collection/components/solution-item-icon/test/solution-item-icon.e2e.js +29 -0
  259. package/dist/collection/components/solution-item-icon/test/solution-item-icon.spec.js +39 -0
  260. package/dist/collection/components/solution-item-sharing/solution-item-sharing.js +200 -199
  261. package/dist/collection/components/solution-item-sharing/test/solution-item-sharing.e2e.js +36 -0
  262. package/dist/collection/components/solution-item-sharing/test/solution-item-sharing.spec.js +54 -0
  263. package/dist/collection/components/solution-organization-variables/solution-organization-variables.js +156 -156
  264. package/dist/collection/components/solution-organization-variables/test/solution-organization-variables.e2e.js +36 -0
  265. package/dist/collection/components/solution-organization-variables/test/solution-organization-variables.spec.js +65 -0
  266. package/dist/collection/components/solution-resource-item/solution-resource-item.js +348 -347
  267. package/dist/collection/components/solution-resource-item/test/solution-resource-item.e2e.js +36 -0
  268. package/dist/collection/components/solution-resource-item/test/solution-resource-item.spec.js +55 -0
  269. package/dist/collection/components/solution-spatial-ref/solution-spatial-ref.js +515 -510
  270. package/dist/collection/components/solution-spatial-ref/spatialreferences.js +21046 -21046
  271. package/dist/collection/components/solution-spatial-ref/test/solution-spatial-ref.e2e.js +36 -0
  272. package/dist/collection/components/solution-spatial-ref/test/solution-spatial-ref.spec.js +175 -0
  273. package/dist/collection/components/solution-template-data/solution-template-data.js +230 -230
  274. package/dist/collection/components/solution-template-data/test/solution-template-data.e2e.js +36 -0
  275. package/dist/collection/components/solution-template-data/test/solution-template-data.spec.js +60 -0
  276. package/dist/collection/components/solution-variables/solution-variables.js +168 -168
  277. package/dist/collection/components/solution-variables/test/solution-variables.e2e.js +36 -0
  278. package/dist/collection/components/solution-variables/test/solution-variables.spec.js +131 -0
  279. package/dist/collection/components/store-manager/store-manager.js +128 -127
  280. package/dist/collection/demos/crowdsource-manager.html +3 -3
  281. package/dist/collection/index.js +1 -1
  282. package/dist/collection/utils/common.js +296 -296
  283. package/dist/collection/utils/csvDownload.js +41 -41
  284. package/dist/collection/utils/csvUtils.js +37 -37
  285. package/dist/collection/utils/downloadUtils.js +530 -530
  286. package/dist/collection/utils/interfaces.js +83 -83
  287. package/dist/collection/utils/interfaces.ts +2 -0
  288. package/dist/collection/utils/languageUtil.js +90 -90
  289. package/dist/collection/utils/loadModules.js +25 -25
  290. package/dist/collection/utils/locale.js +61 -61
  291. package/dist/collection/utils/mapViewUtils.js +240 -240
  292. package/dist/collection/utils/pciUtils.js +842 -842
  293. package/dist/collection/utils/pdfUtils.js +87 -87
  294. package/dist/collection/utils/publicNotificationStore.js +47 -47
  295. package/dist/collection/utils/queryUtils.js +200 -200
  296. package/dist/collection/utils/solution-store.js +584 -584
  297. package/dist/collection/utils/templates.e2e.js +30 -0
  298. package/dist/collection/utils/templates.js +346 -346
  299. package/dist/collection/utils/test/csvUtils.spec.js +51 -0
  300. package/dist/collection/utils/test/downloadUtils.spec.js +357 -0
  301. package/dist/collection/utils/test/mocks/jsApi.js +79 -79
  302. package/dist/collection/utils/test/pciUtils.spec.js +302 -0
  303. package/dist/collection/utils/test/solution-store.spec.js +444 -0
  304. package/dist/collection/utils/test/testUtils.js +123 -123
  305. package/dist/collection/utils/types.js +1 -1
  306. package/dist/components/ExpandToggle.js +1 -1
  307. package/dist/components/action-bar.js +262 -262
  308. package/dist/components/action-group.js +144 -144
  309. package/dist/components/action-menu.js +310 -310
  310. package/dist/components/action.js +185 -185
  311. package/dist/components/alert.js +286 -286
  312. package/dist/components/avatar.js +99 -99
  313. package/dist/components/basemap-gallery.d.ts +11 -0
  314. package/dist/components/basemap-gallery.js +11 -0
  315. package/dist/components/basemap-gallery2.js +118 -0
  316. package/dist/components/buffer-tools2.js +263 -263
  317. package/dist/components/button.js +225 -225
  318. package/dist/components/calcite-accordion-item.js +168 -167
  319. package/dist/components/calcite-accordion.js +95 -95
  320. package/dist/components/calcite-action-pad.js +180 -180
  321. package/dist/components/calcite-block-section.js +150 -150
  322. package/dist/components/calcite-block.js +186 -186
  323. package/dist/components/calcite-card.js +132 -132
  324. package/dist/components/calcite-chip-group.js +181 -181
  325. package/dist/components/calcite-color-picker.js +979 -979
  326. package/dist/components/calcite-combobox-item-group.js +52 -52
  327. package/dist/components/calcite-fab.js +104 -104
  328. package/dist/components/calcite-filter.js +1 -1
  329. package/dist/components/calcite-flow-item.js +204 -204
  330. package/dist/components/calcite-flow.js +136 -136
  331. package/dist/components/calcite-inline-editable.js +259 -259
  332. package/dist/components/calcite-input-date-picker.js +703 -703
  333. package/dist/components/calcite-input-time-picker.js +595 -595
  334. package/dist/components/calcite-input-time-zone.js +189 -189
  335. package/dist/components/calcite-label.js +1 -1
  336. package/dist/components/calcite-list-item-group.js +64 -64
  337. package/dist/components/calcite-menu-item.js +297 -296
  338. package/dist/components/calcite-modal.js +328 -328
  339. package/dist/components/calcite-navigation-logo.js +76 -76
  340. package/dist/components/calcite-navigation-user.js +78 -78
  341. package/dist/components/calcite-navigation.js +166 -166
  342. package/dist/components/calcite-option-group.js +42 -42
  343. package/dist/components/calcite-pagination.js +217 -217
  344. package/dist/components/calcite-pick-list-group.js +59 -59
  345. package/dist/components/calcite-pick-list.js +150 -150
  346. package/dist/components/calcite-radio-button-group.js +141 -141
  347. package/dist/components/calcite-radio-button.js +316 -316
  348. package/dist/components/calcite-rating.js +279 -279
  349. package/dist/components/calcite-shell-center-row.js +57 -57
  350. package/dist/components/calcite-sortable-list.js +153 -153
  351. package/dist/components/calcite-split-button.js +142 -142
  352. package/dist/components/calcite-stack.js +1 -1
  353. package/dist/components/calcite-stepper-item.js +225 -225
  354. package/dist/components/calcite-stepper.js +212 -212
  355. package/dist/components/calcite-text-area.js +266 -266
  356. package/dist/components/calcite-tile-select-group.js +44 -44
  357. package/dist/components/calcite-tile-select.js +223 -223
  358. package/dist/components/calcite-tip-group.js +27 -27
  359. package/dist/components/calcite-tip-manager.js +222 -222
  360. package/dist/components/calcite-tip.js +126 -126
  361. package/dist/components/card-manager2.js +155 -155
  362. package/dist/components/checkbox.js +146 -146
  363. package/dist/components/chip.js +245 -245
  364. package/dist/components/color-picker-hex-input.js +287 -287
  365. package/dist/components/color-picker-swatch.js +79 -79
  366. package/dist/components/combobox-item.js +135 -135
  367. package/dist/components/combobox.js +921 -921
  368. package/dist/components/crowdsource-manager.js +528 -512
  369. package/dist/components/crowdsource-reporter.js +75 -75
  370. package/dist/components/date-picker-day.js +110 -109
  371. package/dist/components/date-picker-month-header.js +197 -197
  372. package/dist/components/date-picker-month.js +372 -372
  373. package/dist/components/date-picker.js +492 -492
  374. package/dist/components/date.js +1 -1
  375. package/dist/components/deduct-calculator2.js +981 -981
  376. package/dist/components/dom.js +2 -23
  377. package/dist/components/downloadUtils.js +655 -655
  378. package/dist/components/dropdown-group.js +72 -72
  379. package/dist/components/dropdown-item.js +195 -195
  380. package/dist/components/dropdown.js +420 -420
  381. package/dist/components/edit-card2.js +191 -191
  382. package/dist/components/esri-loader.js +301 -0
  383. package/dist/components/filter.js +751 -202
  384. package/dist/components/filter2.js +191 -740
  385. package/dist/components/floating-ui.js +2 -2
  386. package/dist/components/focusTrapComponent.js +1 -1
  387. package/dist/components/graph.js +86 -86
  388. package/dist/components/handle.js +165 -165
  389. package/dist/components/icon.js +99 -99
  390. package/dist/components/index.d.ts +5 -35
  391. package/dist/components/index.js +26 -154
  392. package/dist/components/info-card2.js +251 -251
  393. package/dist/components/input-message.js +66 -66
  394. package/dist/components/input-number.js +600 -599
  395. package/dist/components/input-text.js +368 -367
  396. package/dist/components/input.js +687 -686
  397. package/dist/components/interfaces.js +78 -78
  398. package/dist/components/json-editor2.js +425 -425
  399. package/dist/components/label.js +117 -65
  400. package/dist/components/label2.js +58 -110
  401. package/dist/components/layer-table2.js +598 -547
  402. package/dist/components/layout-manager2.js +118 -118
  403. package/dist/components/link.js +123 -122
  404. package/dist/components/list-item.js +75 -75
  405. package/dist/components/list-item2.js +431 -431
  406. package/dist/components/list.js +510 -510
  407. package/dist/components/loadModules.js +19 -19
  408. package/dist/components/loader.js +86 -86
  409. package/dist/components/locale.js +106 -399
  410. package/dist/components/locale2.js +2 -2
  411. package/dist/components/map-card2.js +236 -218
  412. package/dist/components/map-draw-tools2.js +383 -383
  413. package/dist/components/map-layer-picker2.js +291 -291
  414. package/dist/components/map-picker2.js +235 -235
  415. package/dist/components/map-search.d.ts +11 -0
  416. package/dist/components/map-search.js +11 -0
  417. package/dist/components/map-search2.js +201 -0
  418. package/dist/components/map-select-tools2.js +916 -916
  419. package/dist/components/map-tools2.js +287 -177
  420. package/dist/components/mapViewUtils.js +235 -235
  421. package/dist/components/menu.js +178 -178
  422. package/dist/components/notice.js +130 -130
  423. package/dist/components/option.js +91 -91
  424. package/dist/components/panel.js +307 -307
  425. package/dist/components/pci-calculator.js +169 -169
  426. package/dist/components/pdf-download2.js +173 -173
  427. package/dist/components/pick-list-item.js +219 -219
  428. package/dist/components/popover.js +349 -349
  429. package/dist/components/progress.js +46 -45
  430. package/dist/components/public-notification.js +1101 -1101
  431. package/dist/components/publicNotificationStore.js +39 -39
  432. package/dist/components/queryUtils.js +152 -152
  433. package/dist/components/refine-selection2.js +546 -546
  434. package/dist/components/resources.js +17 -9
  435. package/dist/components/resources2.js +9 -13
  436. package/dist/components/resources3.js +9 -5
  437. package/dist/components/scrim.js +115 -115
  438. package/dist/components/segmented-control-item.js +62 -62
  439. package/dist/components/segmented-control.js +213 -213
  440. package/dist/components/select.js +226 -226
  441. package/dist/components/shared-list-render.js +3 -3
  442. package/dist/components/shell-panel.js +398 -397
  443. package/dist/components/shell.js +119 -119
  444. package/dist/components/slider.js +898 -898
  445. package/dist/components/solution-configuration.js +1095 -1095
  446. package/dist/components/solution-contents2.js +111 -111
  447. package/dist/components/solution-item-details2.js +217 -217
  448. package/dist/components/solution-item-icon2.js +330 -330
  449. package/dist/components/solution-item-sharing2.js +151 -151
  450. package/dist/components/solution-item2.js +269 -269
  451. package/dist/components/solution-organization-variables2.js +115 -115
  452. package/dist/components/solution-resource-item2.js +331 -331
  453. package/dist/components/solution-spatial-ref2.js +21420 -21420
  454. package/dist/components/solution-store.js +575 -575
  455. package/dist/components/solution-template-data2.js +202 -202
  456. package/dist/components/solution-variables2.js +132 -132
  457. package/dist/components/sortableComponent.js +1 -1
  458. package/dist/components/stack.js +78 -78
  459. package/dist/components/store-manager.js +70 -70
  460. package/dist/components/switch.js +118 -118
  461. package/dist/components/tab-nav.js +254 -254
  462. package/dist/components/tab-title.js +300 -300
  463. package/dist/components/tab.js +111 -111
  464. package/dist/components/tabs.js +130 -130
  465. package/dist/components/tile.js +89 -89
  466. package/dist/components/time-picker.js +654 -654
  467. package/dist/components/tooltip.js +207 -207
  468. package/dist/components/tree-item.js +288 -287
  469. package/dist/components/tree.js +281 -281
  470. package/dist/components/utils.js +1 -1
  471. package/dist/components/utils2.js +2 -2
  472. package/dist/components/utils3.js +1 -1
  473. package/dist/components/value-list-item.js +169 -169
  474. package/dist/components/value-list.js +275 -275
  475. package/dist/esm/ExpandToggle-3d10bd1e.js +109 -0
  476. package/dist/esm/FloatingArrow-29db6da6.js +46 -0
  477. package/dist/esm/Heading-cb79e5b2.js +22 -0
  478. package/dist/esm/app-globals-5cbac6b0.js +67 -0
  479. package/dist/esm/ar-4b751ba8.js +95 -0
  480. package/dist/esm/basemap-gallery_4.entry.js +615 -0
  481. package/dist/esm/bg-5d8bf5ea.js +76 -0
  482. package/dist/esm/bs-ff510e71.js +45 -0
  483. package/dist/esm/buffer-tools_4.entry.js +1437 -1437
  484. package/dist/esm/ca-b9a5e51a.js +65 -0
  485. package/dist/esm/calcite-accordion-item.entry.js +140 -140
  486. package/dist/esm/calcite-accordion.entry.js +75 -75
  487. package/dist/esm/calcite-action-bar.entry.js +216 -216
  488. package/dist/esm/calcite-action-group_2.entry.js +365 -365
  489. package/dist/esm/calcite-action-pad.entry.js +135 -135
  490. package/dist/esm/calcite-action_2.entry.js +445 -445
  491. package/dist/esm/calcite-alert.entry.js +247 -247
  492. package/dist/esm/calcite-avatar.entry.js +73 -73
  493. package/dist/esm/calcite-block-section.entry.js +122 -122
  494. package/dist/esm/calcite-block.entry.js +131 -131
  495. package/dist/esm/calcite-button.entry.js +182 -182
  496. package/dist/esm/calcite-card.entry.js +99 -99
  497. package/dist/esm/calcite-checkbox.entry.js +125 -125
  498. package/dist/esm/calcite-chip-group.entry.js +164 -164
  499. package/dist/esm/calcite-chip.entry.js +213 -213
  500. package/dist/esm/calcite-color-picker-hex-input_2.entry.js +303 -303
  501. package/dist/esm/calcite-color-picker.entry.js +886 -886
  502. package/dist/esm/calcite-combobox-item-group.entry.js +35 -35
  503. package/dist/esm/calcite-combobox_6.entry.js +1786 -1786
  504. package/dist/esm/calcite-date-picker-day_3.entry.js +589 -589
  505. package/dist/esm/calcite-date-picker.entry.js +434 -434
  506. package/dist/esm/calcite-fab.entry.js +66 -66
  507. package/dist/esm/calcite-filter_5.entry.js +1131 -1131
  508. package/dist/esm/calcite-flow-item.entry.js +146 -146
  509. package/dist/esm/calcite-flow.entry.js +117 -117
  510. package/dist/esm/calcite-graph.entry.js +66 -66
  511. package/dist/esm/calcite-icon.entry.js +80 -80
  512. package/dist/esm/calcite-inline-editable.entry.js +225 -225
  513. package/dist/esm/calcite-input-date-picker.entry.js +632 -632
  514. package/dist/esm/calcite-input-number_2.entry.js +846 -846
  515. package/dist/esm/calcite-input-time-picker-13448515.js +1715 -0
  516. package/dist/esm/calcite-input-time-picker.entry.js +15 -15
  517. package/dist/esm/calcite-input-time-zone.entry.js +150 -150
  518. package/dist/esm/calcite-input_2.entry.js +645 -645
  519. package/dist/esm/calcite-label.entry.js +40 -40
  520. package/dist/esm/calcite-link.entry.js +96 -96
  521. package/dist/esm/calcite-list-item-group.entry.js +46 -46
  522. package/dist/esm/calcite-loader.entry.js +65 -65
  523. package/dist/esm/calcite-menu-item.entry.js +246 -246
  524. package/dist/esm/calcite-menu.entry.js +161 -161
  525. package/dist/esm/calcite-modal.entry.js +282 -282
  526. package/dist/esm/calcite-navigation-logo.entry.js +52 -52
  527. package/dist/esm/calcite-navigation-user.entry.js +45 -45
  528. package/dist/esm/calcite-navigation.entry.js +126 -126
  529. package/dist/esm/calcite-notice.entry.js +105 -105
  530. package/dist/esm/calcite-option-group.entry.js +24 -24
  531. package/dist/esm/calcite-option_2.entry.js +271 -271
  532. package/dist/esm/calcite-pagination.entry.js +191 -191
  533. package/dist/esm/calcite-panel_2.entry.js +346 -346
  534. package/dist/esm/calcite-pick-list-group.entry.js +46 -46
  535. package/dist/esm/calcite-pick-list-item.entry.js +181 -181
  536. package/dist/esm/calcite-pick-list.entry.js +130 -130
  537. package/dist/esm/calcite-radio-button-group.entry.js +118 -118
  538. package/dist/esm/calcite-radio-button.entry.js +292 -292
  539. package/dist/esm/calcite-rating.entry.js +245 -245
  540. package/dist/esm/calcite-scrim.entry.js +93 -93
  541. package/dist/esm/calcite-segmented-control_2.entry.js +225 -225
  542. package/dist/esm/calcite-shell-center-row.entry.js +42 -42
  543. package/dist/esm/calcite-shell-panel_14.entry.js +2604 -2604
  544. package/dist/esm/calcite-sortable-list.entry.js +134 -134
  545. package/dist/esm/calcite-split-button.entry.js +92 -92
  546. package/dist/esm/calcite-stepper-item.entry.js +197 -197
  547. package/dist/esm/calcite-stepper.entry.js +187 -187
  548. package/dist/esm/calcite-switch.entry.js +100 -100
  549. package/dist/esm/calcite-text-area.entry.js +235 -235
  550. package/dist/esm/calcite-tile-select-group.entry.js +27 -27
  551. package/dist/esm/calcite-tile-select.entry.js +180 -180
  552. package/dist/esm/calcite-tile.entry.js +58 -58
  553. package/dist/esm/calcite-time-picker.entry.js +619 -619
  554. package/dist/esm/calcite-tip-group.entry.js +10 -10
  555. package/dist/esm/calcite-tip-manager.entry.js +185 -185
  556. package/dist/esm/calcite-tip.entry.js +94 -94
  557. package/dist/esm/calcite-tooltip.entry.js +185 -185
  558. package/dist/esm/calcite-tree_3.entry.js +821 -821
  559. package/dist/esm/card-manager_4.entry.js +707 -653
  560. package/dist/esm/conditionalSlot-27a0fce0.js +60 -0
  561. package/dist/esm/crowdsource-manager.entry.js +258 -256
  562. package/dist/esm/crowdsource-reporter.entry.js +60 -60
  563. package/dist/esm/cs-f21a0628.js +141 -0
  564. package/dist/esm/da-dc48fc4c.js +60 -0
  565. package/dist/esm/date-0ed48e97.js +235 -0
  566. package/dist/esm/de-59290071.js +85 -0
  567. package/dist/esm/de-at-cd6e6ab7.js +84 -0
  568. package/dist/esm/de-ch-27c44e34.js +84 -0
  569. package/dist/esm/deduct-calculator.entry.js +90 -90
  570. package/dist/esm/dom-843e3afd.js +1017 -0
  571. package/dist/esm/downloadUtils-63661805.js +2761 -0
  572. package/dist/esm/edit-card_2.entry.js +345 -345
  573. package/dist/esm/el-f09fdec6.js +60 -0
  574. package/dist/esm/en-au-90087aa5.js +60 -0
  575. package/dist/esm/en-ca-10751695.js +59 -0
  576. package/dist/esm/en-gb-0f8547bd.js +63 -0
  577. package/dist/esm/es-b0997cf1.js +60 -0
  578. package/dist/esm/es-mx-226f5028.js +59 -0
  579. package/dist/esm/et-dc96c453.js +86 -0
  580. package/dist/esm/fi-0941704d.js +109 -0
  581. package/dist/esm/filter-1cac3edf.js +763 -0
  582. package/dist/esm/floating-ui-d28d0fd6.js +1880 -0
  583. package/dist/esm/focusTrapComponent-ff3a9f28.js +1004 -0
  584. package/dist/esm/form-11c6a015.js +280 -0
  585. package/dist/esm/fr-8da3458d.js +62 -0
  586. package/dist/esm/fr-ch-739ceddf.js +60 -0
  587. package/dist/esm/he-8b662dfa.js +99 -0
  588. package/dist/esm/hi-10996f89.js +59 -0
  589. package/dist/esm/hr-42c2024d.js +74 -0
  590. package/dist/esm/hu-4768b3ff.js +82 -0
  591. package/dist/esm/id-24a08170.js +60 -0
  592. package/dist/esm/index-b5d9d795.js +1904 -0
  593. package/dist/esm/index-b91c174c.js +199 -0
  594. package/dist/esm/index.es-3a3aa8e3.js +10722 -0
  595. package/dist/esm/interfaces-5a2fe8b4.js +85 -0
  596. package/dist/esm/it-ad09649f.js +60 -0
  597. package/dist/esm/it-ch-b05fc10d.js +60 -0
  598. package/dist/esm/ja-ab839b73.js +66 -0
  599. package/dist/esm/ko-c778539e.js +66 -0
  600. package/dist/esm/label-6a1caf64.js +130 -0
  601. package/dist/esm/list-item.entry.js +60 -60
  602. package/dist/esm/loadModules-2ecd1e44.js +28 -0
  603. package/dist/esm/loadable-6bca96ad.js +89 -0
  604. package/dist/esm/loader.js +6 -15
  605. package/dist/esm/locale-aa3de591.js +412 -0
  606. package/dist/esm/locale-d8561d54.js +592 -0
  607. package/dist/esm/lt-447d9aa9.js +91 -0
  608. package/dist/esm/lv-4d715e11.js +60 -0
  609. package/dist/esm/map-select-tools_3.entry.js +1285 -1285
  610. package/dist/esm/mapViewUtils-f0c04325.js +395 -0
  611. package/dist/esm/mk-b3d7401a.js +60 -0
  612. package/dist/esm/nb-2b4a8366.js +61 -0
  613. package/dist/esm/nl-c0db1da2.js +61 -0
  614. package/dist/esm/openCloseComponent-2b5c6bed.js +82 -0
  615. package/dist/esm/pci-calculator.entry.js +102 -102
  616. package/dist/esm/pciUtils-59c29b42.js +844 -0
  617. package/dist/esm/pl-0d322bb4.js +108 -0
  618. package/dist/esm/pt-5997598c.js +61 -0
  619. package/dist/esm/pt-br-6b77e7db.js +59 -0
  620. package/dist/esm/public-notification.entry.js +844 -844
  621. package/dist/esm/publicNotificationStore-ade82148.js +49 -0
  622. package/dist/esm/resources-40d8e06f.js +20 -0
  623. package/dist/esm/ro-ac3724e0.js +60 -0
  624. package/dist/esm/ru-4e75151f.js +120 -0
  625. package/dist/esm/shared-list-render-abd19c8d.js +342 -0
  626. package/dist/esm/sk-bbfa22a3.js +142 -0
  627. package/dist/esm/sl-867cecfc.js +60 -0
  628. package/dist/esm/solution-configuration.entry.js +888 -888
  629. package/dist/esm/solution-contents_3.entry.js +21506 -21506
  630. package/dist/esm/solution-store-46bc46a5.js +4092 -0
  631. package/dist/esm/solutions-components.js +6 -6
  632. package/dist/esm/sortableComponent-db502e97.js +3109 -0
  633. package/dist/esm/sr-198b5c00.js +95 -0
  634. package/dist/esm/store-manager.entry.js +52 -52
  635. package/dist/esm/sv-02d64370.js +65 -0
  636. package/dist/esm/t9n-76168237.js +95 -0
  637. package/dist/esm/th-1616e303.js +59 -0
  638. package/dist/esm/throttle-9ab70933.js +73 -0
  639. package/dist/esm/time-6721a4c2.js +195 -0
  640. package/dist/esm/tr-f4619f64.js +60 -0
  641. package/dist/esm/uk-df7df34a.js +98 -0
  642. package/dist/esm/utils-ccfd94a7.js +45 -0
  643. package/dist/esm/utils-f54411df.js +61 -0
  644. package/dist/esm/vi-176ca9f7.js +64 -0
  645. package/dist/esm/zh-cn-e13d83d1.js +88 -0
  646. package/dist/esm/zh-hk-d97365d8.js +65 -0
  647. package/dist/esm/zh-tw-a2b6f0b7.js +86 -0
  648. package/dist/loader/index.d.ts +2 -2
  649. package/dist/solutions-components/demos/crowdsource-manager.html +3 -3
  650. package/dist/solutions-components/p-022a9b7a.js +6 -0
  651. package/dist/solutions-components/p-03fccde6.entry.js +11 -0
  652. package/dist/solutions-components/p-052ff2c7.js +6 -0
  653. package/dist/solutions-components/p-05db4340.js +6 -0
  654. package/dist/solutions-components/p-07bc4f07.entry.js +11 -0
  655. package/dist/solutions-components/p-0cc32f06.js +6 -0
  656. package/dist/solutions-components/p-0e7914e6.entry.js +11 -0
  657. package/dist/solutions-components/p-0ece6df1.entry.js +12 -0
  658. package/dist/solutions-components/p-0f8440bb.entry.js +6 -0
  659. package/dist/solutions-components/p-0fbc27fd.entry.js +11 -0
  660. package/dist/solutions-components/p-10248e04.js +11 -0
  661. package/dist/solutions-components/p-108fbf59.entry.js +6 -0
  662. package/dist/solutions-components/p-12a4fa84.js +6 -0
  663. package/dist/solutions-components/p-13290851.js +259 -0
  664. package/dist/solutions-components/p-15ef7894.js +6 -0
  665. package/dist/solutions-components/p-164be8ef.entry.js +6 -0
  666. package/dist/solutions-components/p-19fe7725.js +6 -0
  667. package/dist/solutions-components/p-1add4e39.entry.js +11 -0
  668. package/dist/solutions-components/p-1ea1dcac.js +61 -0
  669. package/dist/solutions-components/p-1ede2e18.js +11 -0
  670. package/dist/solutions-components/p-2005280f.js +11 -0
  671. package/dist/solutions-components/p-216801d5.js +6 -0
  672. package/dist/solutions-components/p-21f00df6.js +6 -0
  673. package/dist/solutions-components/p-22d580b0.entry.js +11 -0
  674. package/dist/solutions-components/p-2656168f.entry.js +11 -0
  675. package/dist/solutions-components/p-27a1ac1f.entry.js +17 -0
  676. package/dist/solutions-components/p-28d2670f.entry.js +6 -0
  677. package/dist/solutions-components/p-29d41c7e.js +11 -0
  678. package/dist/solutions-components/p-2ae17fa2.js +6 -0
  679. package/dist/solutions-components/p-2b252afd.entry.js +6 -0
  680. package/dist/solutions-components/p-2b96e551.entry.js +11 -0
  681. package/dist/solutions-components/p-2c0dc7b1.js +6 -0
  682. package/dist/solutions-components/p-2d70d3fd.js +12 -0
  683. package/dist/solutions-components/p-31316d61.entry.js +11 -0
  684. package/dist/solutions-components/p-31ff3452.entry.js +11 -0
  685. package/dist/solutions-components/p-326fa270.js +6 -0
  686. package/dist/solutions-components/p-32ef065d.entry.js +11 -0
  687. package/dist/solutions-components/p-32f9c709.js +6 -0
  688. package/dist/solutions-components/p-3445a8c6.js +21 -0
  689. package/dist/solutions-components/p-35123c90.js +6 -0
  690. package/dist/solutions-components/p-361f1fe1.js +11 -0
  691. package/dist/solutions-components/p-39ff5ee5.js +11 -0
  692. package/dist/solutions-components/p-3aba40e8.js +18 -0
  693. package/dist/solutions-components/p-3bd99fc9.js +11 -0
  694. package/dist/solutions-components/p-3cbe5ef3.js +6 -0
  695. package/dist/solutions-components/p-3cce003d.js +27 -0
  696. package/dist/solutions-components/p-3e139360.js +6 -0
  697. package/dist/solutions-components/p-3f0193e9.js +6 -0
  698. package/dist/solutions-components/p-418d0b60.entry.js +6 -0
  699. package/dist/solutions-components/p-421d5e7c.js +6 -0
  700. package/dist/solutions-components/p-42c7a5fa.entry.js +11 -0
  701. package/dist/solutions-components/p-46d5970b.entry.js +37 -0
  702. package/dist/solutions-components/p-4b95d05e.entry.js +6 -0
  703. package/dist/solutions-components/p-4bc7b875.entry.js +11 -0
  704. package/dist/solutions-components/p-4c43820f.entry.js +6 -0
  705. package/dist/solutions-components/p-4d17943f.js +6 -0
  706. package/dist/solutions-components/p-4daae757.js +6 -0
  707. package/dist/solutions-components/p-4e4b55b9.entry.js +37 -0
  708. package/dist/solutions-components/p-4f0c3fc1.js +6 -0
  709. package/dist/solutions-components/p-525f1188.js +11 -0
  710. package/dist/solutions-components/p-5383607a.js +22 -0
  711. package/dist/solutions-components/p-541697d0.js +11 -0
  712. package/dist/solutions-components/p-55aefaa8.entry.js +6 -0
  713. package/dist/solutions-components/p-56300653.js +16 -0
  714. package/dist/solutions-components/p-57c08531.entry.js +6 -0
  715. package/dist/solutions-components/p-5adf37ea.entry.js +12 -0
  716. package/dist/solutions-components/p-5b5a6ac8.entry.js +6 -0
  717. package/dist/solutions-components/p-5b9b1cbb.entry.js +11 -0
  718. package/dist/solutions-components/p-5c097e25.entry.js +11 -0
  719. package/dist/solutions-components/p-5e59219b.entry.js +6 -0
  720. package/dist/solutions-components/p-5f5c371e.js +6 -0
  721. package/dist/solutions-components/p-606ca126.js +6 -0
  722. package/dist/solutions-components/p-634e1240.js +6 -0
  723. package/dist/solutions-components/p-639cca97.js +6 -0
  724. package/dist/solutions-components/p-6431fd69.js +11 -0
  725. package/dist/solutions-components/p-647a4130.js +16 -0
  726. package/dist/solutions-components/p-6665fa1f.js +6 -0
  727. package/dist/solutions-components/p-67ce3c0c.entry.js +11 -0
  728. package/dist/solutions-components/p-680d193d.entry.js +11 -0
  729. package/dist/solutions-components/p-6a524392.entry.js +11 -0
  730. package/dist/solutions-components/p-6a820c4d.js +6 -0
  731. package/dist/solutions-components/p-6b2f2b85.js +17 -0
  732. package/dist/solutions-components/p-6de98c51.js +21 -0
  733. package/dist/solutions-components/p-754e2df2.js +6 -0
  734. package/dist/solutions-components/p-75f26870.js +474 -0
  735. package/dist/solutions-components/p-7601988d.entry.js +11 -0
  736. package/dist/solutions-components/p-761a033a.entry.js +11 -0
  737. package/dist/solutions-components/p-7920b5a2.entry.js +11 -0
  738. package/dist/solutions-components/p-7aa949a3.entry.js +11 -0
  739. package/dist/solutions-components/p-7b90c18e.entry.js +6 -0
  740. package/dist/solutions-components/p-7b9adfff.js +6 -0
  741. package/dist/solutions-components/p-7c33e500.entry.js +6 -0
  742. package/dist/solutions-components/p-804e4751.entry.js +17 -0
  743. package/dist/solutions-components/p-82199b7b.entry.js +6 -0
  744. package/dist/solutions-components/p-825bac0e.js +6 -0
  745. package/dist/solutions-components/p-844ee452.entry.js +11 -0
  746. package/dist/solutions-components/p-8a758303.js +17 -0
  747. package/dist/solutions-components/p-90bbf223.entry.js +6 -0
  748. package/dist/solutions-components/p-916f90ec.entry.js +6 -0
  749. package/dist/solutions-components/p-91caf655.entry.js +11 -0
  750. package/dist/solutions-components/p-93074bd4.entry.js +11 -0
  751. package/dist/solutions-components/p-9310b882.js +7 -0
  752. package/dist/solutions-components/p-955a956a.entry.js +23 -0
  753. package/dist/solutions-components/p-9603c3ff.entry.js +11 -0
  754. package/dist/solutions-components/p-97c47bbd.entry.js +18 -0
  755. package/dist/solutions-components/p-9bbc05ff.js +11 -0
  756. package/dist/solutions-components/p-9cb94ea0.js +6 -0
  757. package/dist/solutions-components/p-9e727488.js +6 -0
  758. package/dist/solutions-components/p-9fb16c72.entry.js +35 -0
  759. package/dist/solutions-components/p-a040efff.js +6 -0
  760. package/dist/solutions-components/p-a08bd8c1.entry.js +6 -0
  761. package/dist/solutions-components/p-a0a2c53d.js +21 -0
  762. package/dist/solutions-components/p-a0edbb27.js +6 -0
  763. package/dist/solutions-components/p-a258f5e7.js +6 -0
  764. package/dist/solutions-components/p-a2748b38.entry.js +6 -0
  765. package/dist/solutions-components/p-a6900100.entry.js +11 -0
  766. package/dist/solutions-components/p-a6c85bd7.entry.js +6 -0
  767. package/dist/solutions-components/p-a775ba2f.entry.js +11 -0
  768. package/dist/solutions-components/p-a777b18c.js +11 -0
  769. package/dist/solutions-components/p-a82f35c9.js +6 -0
  770. package/dist/solutions-components/p-a843af2a.js +6 -0
  771. package/dist/solutions-components/p-ab8f5c6b.entry.js +11 -0
  772. package/dist/solutions-components/p-abda8ca2.entry.js +11 -0
  773. package/dist/solutions-components/p-ad4d6d02.entry.js +22 -0
  774. package/dist/solutions-components/p-ad72a379.entry.js +16 -0
  775. package/dist/solutions-components/p-aeebdb15.js +6 -0
  776. package/dist/solutions-components/p-b0c4138f.entry.js +11 -0
  777. package/dist/solutions-components/p-b1f84ae5.js +6 -0
  778. package/dist/solutions-components/p-b2e6c578.js +6 -0
  779. package/dist/solutions-components/p-b4157e6a.js +6 -0
  780. package/dist/solutions-components/p-b49bdc72.entry.js +6 -0
  781. package/dist/solutions-components/p-b5d67495.entry.js +11 -0
  782. package/dist/solutions-components/p-b6578a32.js +6 -0
  783. package/dist/solutions-components/p-b684bbc7.entry.js +6 -0
  784. package/dist/solutions-components/p-b86b4512.entry.js +11 -0
  785. package/dist/solutions-components/p-b948ecd2.entry.js +11 -0
  786. package/dist/solutions-components/p-baccfd70.entry.js +6 -0
  787. package/dist/solutions-components/p-bba3fa4e.entry.js +11 -0
  788. package/dist/solutions-components/p-bbb0d957.entry.js +6 -0
  789. package/dist/solutions-components/p-bd3a3afe.js +6 -0
  790. package/dist/solutions-components/p-bf9e18d4.js +8 -0
  791. package/dist/solutions-components/p-c07af9c2.entry.js +11 -0
  792. package/dist/solutions-components/p-c1ee0d69.js +11 -0
  793. package/dist/solutions-components/p-c3f8b670.js +6 -0
  794. package/dist/solutions-components/p-c5e294e4.js +6 -0
  795. package/dist/solutions-components/p-c6d83122.entry.js +11 -0
  796. package/dist/solutions-components/p-c70392c4.entry.js +6 -0
  797. package/dist/solutions-components/p-c9858d8f.entry.js +11 -0
  798. package/dist/solutions-components/p-cad5587c.entry.js +35 -0
  799. package/dist/solutions-components/p-cf1af08f.entry.js +6 -0
  800. package/dist/solutions-components/p-cf43278c.entry.js +11 -0
  801. package/dist/solutions-components/p-d3a22725.js +6 -0
  802. package/dist/solutions-components/p-d62784a4.js +11 -0
  803. package/dist/solutions-components/p-d6322e4b.js +6 -0
  804. package/dist/solutions-components/p-dc9dad31.entry.js +6 -0
  805. package/dist/solutions-components/p-de58bd49.js +6 -0
  806. package/dist/solutions-components/p-de59d2f5.js +6 -0
  807. package/dist/solutions-components/p-e02fcfa9.entry.js +12 -0
  808. package/dist/solutions-components/p-e07b8a72.entry.js +11 -0
  809. package/dist/solutions-components/p-e10a62f4.entry.js +11 -0
  810. package/dist/solutions-components/p-e4253e1b.entry.js +6 -0
  811. package/dist/solutions-components/p-e645edf2.entry.js +6 -0
  812. package/dist/solutions-components/p-e6bee82f.js +6 -0
  813. package/dist/solutions-components/p-ea282908.js +6 -0
  814. package/dist/solutions-components/p-ee066c67.js +16 -0
  815. package/dist/solutions-components/p-ef48bd77.entry.js +17 -0
  816. package/dist/solutions-components/p-ef96894d.entry.js +23 -0
  817. package/dist/solutions-components/p-f28d69ac.entry.js +11 -0
  818. package/dist/solutions-components/p-f41105c8.js +6 -0
  819. package/dist/solutions-components/p-f8dd2784.js +36 -0
  820. package/dist/solutions-components/p-ffac6f88.entry.js +6 -0
  821. package/dist/solutions-components/solutions-components.esm.js +1 -1
  822. package/dist/solutions-components/utils/interfaces.ts +2 -0
  823. package/dist/types/components/basemap-gallery/basemap-gallery.d.ts +64 -0
  824. package/dist/types/components/buffer-tools/buffer-tools.d.ts +170 -170
  825. package/dist/types/components/card-manager/card-manager.d.ts +70 -70
  826. package/dist/types/components/crowdsource-manager/crowdsource-manager.d.ts +182 -174
  827. package/dist/types/components/crowdsource-reporter/crowdsource-reporter.d.ts +26 -26
  828. package/dist/types/components/deduct-calculator/deduct-calculator.d.ts +90 -90
  829. package/dist/types/components/edit-card/edit-card.d.ts +140 -140
  830. package/dist/types/components/info-card/info-card.d.ts +143 -143
  831. package/dist/types/components/json-editor/json-editor.d.ts +229 -229
  832. package/dist/types/components/layer-table/layer-table.d.ts +298 -276
  833. package/dist/types/components/layout-manager/layout-manager.d.ts +69 -69
  834. package/dist/types/components/list-item/list-item.d.ts +26 -26
  835. package/dist/types/components/map-card/map-card.d.ts +91 -83
  836. package/dist/types/components/map-draw-tools/map-draw-tools.d.ts +231 -231
  837. package/dist/types/components/map-layer-picker/map-layer-picker.d.ts +160 -160
  838. package/dist/types/components/map-picker/map-picker.d.ts +109 -109
  839. package/dist/types/components/map-search/map-search.d.ts +107 -0
  840. package/dist/types/components/map-select-tools/map-select-tools.d.ts +469 -469
  841. package/dist/types/components/map-tools/map-tools.d.ts +167 -104
  842. package/dist/types/components/pci-calculator/pci-calculator.d.ts +71 -71
  843. package/dist/types/components/pdf-download/pdf-download.d.ts +101 -101
  844. package/dist/types/components/public-notification/public-notification.d.ts +610 -610
  845. package/dist/types/components/refine-selection/refine-selection.d.ts +234 -234
  846. package/dist/types/components/solution-configuration/solution-configuration.d.ts +205 -205
  847. package/dist/types/components/solution-contents/solution-contents.d.ts +46 -46
  848. package/dist/types/components/solution-item/solution-item.d.ts +71 -71
  849. package/dist/types/components/solution-item-details/solution-item-details.d.ts +100 -100
  850. package/dist/types/components/solution-item-icon/solution-item-icon.d.ts +44 -44
  851. package/dist/types/components/solution-item-sharing/solution-item-sharing.d.ts +62 -62
  852. package/dist/types/components/solution-organization-variables/solution-organization-variables.d.ts +63 -63
  853. package/dist/types/components/solution-resource-item/solution-resource-item.d.ts +144 -144
  854. package/dist/types/components/solution-spatial-ref/solution-spatial-ref.d.ts +180 -180
  855. package/dist/types/components/solution-spatial-ref/spatialreferences.d.ts +17 -17
  856. package/dist/types/components/solution-template-data/solution-template-data.d.ts +72 -72
  857. package/dist/types/components/solution-variables/solution-variables.d.ts +69 -69
  858. package/dist/types/components/store-manager/store-manager.d.ts +55 -55
  859. package/dist/types/components.d.ts +124 -0
  860. package/dist/types/index.d.ts +16 -16
  861. package/dist/types/preact.d.ts +4 -0
  862. package/dist/types/stencil-public-runtime.d.ts +29 -14
  863. package/dist/types/utils/common.d.ts +49 -49
  864. package/dist/types/utils/csvDownload.d.ts +24 -24
  865. package/dist/types/utils/csvUtils.d.ts +22 -22
  866. package/dist/types/utils/downloadUtils.d.ts +118 -118
  867. package/dist/types/utils/interfaces.d.ts +400 -398
  868. package/dist/types/utils/languageUtil.d.ts +11 -11
  869. package/dist/types/utils/loadModules.d.ts +17 -17
  870. package/dist/types/utils/locale.d.ts +22 -22
  871. package/dist/types/utils/mapViewUtils.d.ts +124 -124
  872. package/dist/types/utils/pciUtils.d.ts +97 -97
  873. package/dist/types/utils/pdfUtils.d.ts +27 -27
  874. package/dist/types/utils/publicNotificationStore.d.ts +24 -24
  875. package/dist/types/utils/queryUtils.d.ts +95 -95
  876. package/dist/types/utils/solution-store.d.ts +234 -234
  877. package/dist/types/utils/templates.d.ts +50 -50
  878. package/dist/types/utils/test/mocks/jsApi.d.ts +59 -59
  879. package/dist/types/utils/test/testUtils.d.ts +36 -36
  880. package/dist/types/utils/types.d.ts +1 -1
  881. package/package.json +2 -2
  882. package/dist/cjs/ExpandToggle-70890ae0.js +0 -117
  883. package/dist/cjs/FloatingArrow-4ca06439.js +0 -48
  884. package/dist/cjs/Heading-c5c71fc5.js +0 -25
  885. package/dist/cjs/app-globals-a34c0991.js +0 -64
  886. package/dist/cjs/ar-fa16156d.js +0 -97
  887. package/dist/cjs/bg-b39e773e.js +0 -78
  888. package/dist/cjs/bs-4579ea2a.js +0 -47
  889. package/dist/cjs/ca-f3f64686.js +0 -67
  890. package/dist/cjs/calcite-input-time-picker-6f38ef8c.js +0 -1718
  891. package/dist/cjs/conditionalSlot-a51326e7.js +0 -63
  892. package/dist/cjs/cs-1bcd5b46.js +0 -143
  893. package/dist/cjs/da-30ee21db.js +0 -62
  894. package/dist/cjs/date-f6611a19.js +0 -250
  895. package/dist/cjs/de-42aae5ad.js +0 -87
  896. package/dist/cjs/de-at-a3a6f020.js +0 -86
  897. package/dist/cjs/de-ch-36c13310.js +0 -86
  898. package/dist/cjs/dom-d529bae8.js +0 -1046
  899. package/dist/cjs/downloadUtils-6eb59363.js +0 -2767
  900. package/dist/cjs/el-90d066ae.js +0 -62
  901. package/dist/cjs/en-au-685b882b.js +0 -62
  902. package/dist/cjs/en-ca-ff4bc403.js +0 -61
  903. package/dist/cjs/en-gb-2f5587ad.js +0 -65
  904. package/dist/cjs/es-e9183ca0.js +0 -62
  905. package/dist/cjs/es-mx-dcc9afb2.js +0 -61
  906. package/dist/cjs/et-a18949ea.js +0 -88
  907. package/dist/cjs/fi-1ce00d38.js +0 -111
  908. package/dist/cjs/filter-494bf35e.js +0 -765
  909. package/dist/cjs/floating-ui-7d6e57d3.js +0 -1888
  910. package/dist/cjs/focusTrapComponent-0c4d7671.js +0 -1009
  911. package/dist/cjs/form-bcf49eae.js +0 -288
  912. package/dist/cjs/fr-a9435a19.js +0 -64
  913. package/dist/cjs/fr-ch-51efa9bf.js +0 -62
  914. package/dist/cjs/he-c5dccfa2.js +0 -101
  915. package/dist/cjs/hi-0898e7f2.js +0 -61
  916. package/dist/cjs/hr-68f7d8da.js +0 -76
  917. package/dist/cjs/hu-e494037d.js +0 -84
  918. package/dist/cjs/id-bef40c1c.js +0 -62
  919. package/dist/cjs/index-6654298b.js +0 -1796
  920. package/dist/cjs/index-e1b1954f.js +0 -201
  921. package/dist/cjs/index.es-d9b5d3a5.js +0 -10808
  922. package/dist/cjs/interfaces-ad03ec39.js +0 -85
  923. package/dist/cjs/it-1144ca67.js +0 -62
  924. package/dist/cjs/it-ch-2c14dca7.js +0 -62
  925. package/dist/cjs/ja-caad9809.js +0 -68
  926. package/dist/cjs/ko-ddec9054.js +0 -68
  927. package/dist/cjs/label-215c4af3.js +0 -136
  928. package/dist/cjs/loadModules-ae7715f2.js +0 -30
  929. package/dist/cjs/loadable-6da743c6.js +0 -94
  930. package/dist/cjs/locale-477d8d51.js +0 -604
  931. package/dist/cjs/locale-b113c6b2.js +0 -416
  932. package/dist/cjs/lt-205a1aa6.js +0 -93
  933. package/dist/cjs/lv-3ba82f9b.js +0 -62
  934. package/dist/cjs/map-picker_2.cjs.entry.js +0 -264
  935. package/dist/cjs/mapViewUtils-77a1ff88.js +0 -411
  936. package/dist/cjs/mk-069ea86a.js +0 -62
  937. package/dist/cjs/nb-9e9c934f.js +0 -63
  938. package/dist/cjs/nl-5dd0116f.js +0 -63
  939. package/dist/cjs/openCloseComponent-3fa18210.js +0 -84
  940. package/dist/cjs/pciUtils-423cfc68.js +0 -847
  941. package/dist/cjs/pl-74e70b37.js +0 -110
  942. package/dist/cjs/pt-br-0f76e430.js +0 -61
  943. package/dist/cjs/pt-cc737fcc.js +0 -63
  944. package/dist/cjs/publicNotificationStore-ec1bdd2d.js +0 -51
  945. package/dist/cjs/ro-5e396753.js +0 -62
  946. package/dist/cjs/ru-f7371aca.js +0 -122
  947. package/dist/cjs/shared-list-render-76c5dc25.js +0 -364
  948. package/dist/cjs/sk-ec02498f.js +0 -144
  949. package/dist/cjs/sl-8363f4d7.js +0 -62
  950. package/dist/cjs/solution-store-bd956f06.js +0 -4100
  951. package/dist/cjs/sortableComponent-8135ea87.js +0 -3112
  952. package/dist/cjs/sr-b0f92cb1.js +0 -97
  953. package/dist/cjs/sv-e2c27fff.js +0 -67
  954. package/dist/cjs/t9n-8be30efb.js +0 -100
  955. package/dist/cjs/th-8a6dc2cc.js +0 -61
  956. package/dist/cjs/throttle-8ee74c77.js +0 -75
  957. package/dist/cjs/time-9004df7e.js +0 -208
  958. package/dist/cjs/tr-09137435.js +0 -62
  959. package/dist/cjs/uk-c30401f4.js +0 -100
  960. package/dist/cjs/utils-ed4e5028.js +0 -55
  961. package/dist/cjs/utils-fb81c6b3.js +0 -64
  962. package/dist/cjs/vi-e069c9e4.js +0 -66
  963. package/dist/cjs/zh-cn-50f223a8.js +0 -90
  964. package/dist/cjs/zh-hk-5498073d.js +0 -67
  965. package/dist/cjs/zh-tw-dfdb0ae8.js +0 -88
  966. package/dist/esm/ExpandToggle-3420fa39.js +0 -109
  967. package/dist/esm/FloatingArrow-cd8eafa4.js +0 -46
  968. package/dist/esm/Heading-1763134e.js +0 -22
  969. package/dist/esm/app-globals-580889bd.js +0 -62
  970. package/dist/esm/ar-ceb1b389.js +0 -95
  971. package/dist/esm/bg-a8824832.js +0 -76
  972. package/dist/esm/bs-5c2ca44f.js +0 -45
  973. package/dist/esm/ca-47f86073.js +0 -65
  974. package/dist/esm/calcite-input-time-picker-59a3ed66.js +0 -1715
  975. package/dist/esm/conditionalSlot-91396dd5.js +0 -60
  976. package/dist/esm/cs-f651c3cd.js +0 -141
  977. package/dist/esm/da-e32ccc0a.js +0 -60
  978. package/dist/esm/date-51fa981b.js +0 -235
  979. package/dist/esm/de-9b417aed.js +0 -85
  980. package/dist/esm/de-at-f73447e2.js +0 -84
  981. package/dist/esm/de-ch-7ec8c31e.js +0 -84
  982. package/dist/esm/dom-8a9e4ee8.js +0 -1017
  983. package/dist/esm/downloadUtils-43b53f5a.js +0 -2761
  984. package/dist/esm/el-9a3189a2.js +0 -60
  985. package/dist/esm/en-au-5aea3b73.js +0 -60
  986. package/dist/esm/en-ca-fe3e706b.js +0 -59
  987. package/dist/esm/en-gb-a4278000.js +0 -63
  988. package/dist/esm/es-383f9c9e.js +0 -60
  989. package/dist/esm/es-mx-7845b382.js +0 -59
  990. package/dist/esm/et-d8f8df06.js +0 -86
  991. package/dist/esm/fi-14894338.js +0 -109
  992. package/dist/esm/filter-bf34614b.js +0 -763
  993. package/dist/esm/floating-ui-9870f74c.js +0 -1880
  994. package/dist/esm/focusTrapComponent-34010d00.js +0 -1004
  995. package/dist/esm/form-6669a774.js +0 -280
  996. package/dist/esm/fr-6f570086.js +0 -62
  997. package/dist/esm/fr-ch-b9f89159.js +0 -60
  998. package/dist/esm/he-174aca6e.js +0 -99
  999. package/dist/esm/hi-7e469aab.js +0 -59
  1000. package/dist/esm/hr-a4ac455a.js +0 -74
  1001. package/dist/esm/hu-207da291.js +0 -82
  1002. package/dist/esm/id-8e4d57bf.js +0 -60
  1003. package/dist/esm/index-4c4a4f3d.js +0 -199
  1004. package/dist/esm/index-d298aca9.js +0 -1762
  1005. package/dist/esm/index.es-a185f2b1.js +0 -10722
  1006. package/dist/esm/interfaces-bf20e69c.js +0 -85
  1007. package/dist/esm/it-7ade952c.js +0 -60
  1008. package/dist/esm/it-ch-181d76ab.js +0 -60
  1009. package/dist/esm/ja-42013dd3.js +0 -66
  1010. package/dist/esm/ko-8de07550.js +0 -66
  1011. package/dist/esm/label-661d8e10.js +0 -130
  1012. package/dist/esm/loadModules-cd3569de.js +0 -28
  1013. package/dist/esm/loadable-08376d90.js +0 -89
  1014. package/dist/esm/locale-54cac39a.js +0 -412
  1015. package/dist/esm/locale-73d0926a.js +0 -592
  1016. package/dist/esm/lt-1ef29b5b.js +0 -91
  1017. package/dist/esm/lv-263a2f78.js +0 -60
  1018. package/dist/esm/map-picker_2.entry.js +0 -259
  1019. package/dist/esm/mapViewUtils-1e68cede.js +0 -395
  1020. package/dist/esm/mk-d8bae136.js +0 -60
  1021. package/dist/esm/nb-494542b3.js +0 -61
  1022. package/dist/esm/nl-cd882d7f.js +0 -61
  1023. package/dist/esm/openCloseComponent-a40fd6fd.js +0 -82
  1024. package/dist/esm/pciUtils-ecda46e5.js +0 -844
  1025. package/dist/esm/pl-b79095d5.js +0 -108
  1026. package/dist/esm/polyfills/css-shim.js +0 -1
  1027. package/dist/esm/pt-5ca0b751.js +0 -61
  1028. package/dist/esm/pt-br-e1a1ce60.js +0 -59
  1029. package/dist/esm/publicNotificationStore-6ef555f3.js +0 -49
  1030. package/dist/esm/ro-5cbc0f2a.js +0 -60
  1031. package/dist/esm/ru-e66f5b84.js +0 -120
  1032. package/dist/esm/shared-list-render-5b788e63.js +0 -342
  1033. package/dist/esm/sk-be2b5cec.js +0 -142
  1034. package/dist/esm/sl-74600272.js +0 -60
  1035. package/dist/esm/solution-store-c107ca4d.js +0 -4092
  1036. package/dist/esm/sortableComponent-1dd8a4ae.js +0 -3109
  1037. package/dist/esm/sr-58280ce5.js +0 -95
  1038. package/dist/esm/sv-f0e2171a.js +0 -65
  1039. package/dist/esm/t9n-745553e0.js +0 -95
  1040. package/dist/esm/th-6c3eac31.js +0 -59
  1041. package/dist/esm/throttle-26fa347b.js +0 -73
  1042. package/dist/esm/time-7e3ba7c6.js +0 -195
  1043. package/dist/esm/tr-092713ca.js +0 -60
  1044. package/dist/esm/uk-95df0f95.js +0 -98
  1045. package/dist/esm/utils-4f695ec2.js +0 -45
  1046. package/dist/esm/utils-ddff4ef3.js +0 -61
  1047. package/dist/esm/vi-70a9857c.js +0 -64
  1048. package/dist/esm/zh-cn-e024ef2d.js +0 -88
  1049. package/dist/esm/zh-hk-36ff9e8f.js +0 -65
  1050. package/dist/esm/zh-tw-96ddb74c.js +0 -86
  1051. package/dist/solutions-components/p-0056655c.js +0 -6
  1052. package/dist/solutions-components/p-017265ef.entry.js +0 -23
  1053. package/dist/solutions-components/p-017543d5.entry.js +0 -11
  1054. package/dist/solutions-components/p-0209ed2e.js +0 -6
  1055. package/dist/solutions-components/p-0245bb56.entry.js +0 -6
  1056. package/dist/solutions-components/p-043ead99.entry.js +0 -6
  1057. package/dist/solutions-components/p-048a2a6d.js +0 -6
  1058. package/dist/solutions-components/p-050e12eb.entry.js +0 -12
  1059. package/dist/solutions-components/p-06916de9.entry.js +0 -11
  1060. package/dist/solutions-components/p-08320fb9.entry.js +0 -11
  1061. package/dist/solutions-components/p-08e12eb0.js +0 -6
  1062. package/dist/solutions-components/p-0a2c02fd.js +0 -6
  1063. package/dist/solutions-components/p-0a4bc416.js +0 -6
  1064. package/dist/solutions-components/p-0afa17dc.entry.js +0 -23
  1065. package/dist/solutions-components/p-0b4eb6e4.entry.js +0 -11
  1066. package/dist/solutions-components/p-0d900572.js +0 -6
  1067. package/dist/solutions-components/p-0f4d3009.entry.js +0 -11
  1068. package/dist/solutions-components/p-10181f33.entry.js +0 -6
  1069. package/dist/solutions-components/p-105ef63c.entry.js +0 -17
  1070. package/dist/solutions-components/p-11983a08.js +0 -6
  1071. package/dist/solutions-components/p-1260db08.js +0 -61
  1072. package/dist/solutions-components/p-129fcd0a.js +0 -6
  1073. package/dist/solutions-components/p-13f7e487.js +0 -11
  1074. package/dist/solutions-components/p-14769a01.js +0 -11
  1075. package/dist/solutions-components/p-14a4ad77.entry.js +0 -11
  1076. package/dist/solutions-components/p-15e67907.entry.js +0 -11
  1077. package/dist/solutions-components/p-17799448.entry.js +0 -11
  1078. package/dist/solutions-components/p-185a82e0.js +0 -17
  1079. package/dist/solutions-components/p-191c59e9.js +0 -6
  1080. package/dist/solutions-components/p-1b63bec9.entry.js +0 -11
  1081. package/dist/solutions-components/p-1c810f4c.entry.js +0 -6
  1082. package/dist/solutions-components/p-1d28ff09.entry.js +0 -11
  1083. package/dist/solutions-components/p-1e30069a.entry.js +0 -6
  1084. package/dist/solutions-components/p-1e63db11.entry.js +0 -6
  1085. package/dist/solutions-components/p-20274226.entry.js +0 -6
  1086. package/dist/solutions-components/p-2411f1f6.js +0 -6
  1087. package/dist/solutions-components/p-2509b65f.entry.js +0 -22
  1088. package/dist/solutions-components/p-25faeab6.js +0 -6
  1089. package/dist/solutions-components/p-27f5bb4f.js +0 -36
  1090. package/dist/solutions-components/p-2a0d8a46.entry.js +0 -11
  1091. package/dist/solutions-components/p-2dea68b6.entry.js +0 -17
  1092. package/dist/solutions-components/p-2ecd5cb7.js +0 -6
  1093. package/dist/solutions-components/p-30dbc43d.entry.js +0 -11
  1094. package/dist/solutions-components/p-32d821d1.entry.js +0 -37
  1095. package/dist/solutions-components/p-3479d873.entry.js +0 -6
  1096. package/dist/solutions-components/p-36d09c0c.entry.js +0 -35
  1097. package/dist/solutions-components/p-375f0b74.js +0 -474
  1098. package/dist/solutions-components/p-38b4873b.entry.js +0 -6
  1099. package/dist/solutions-components/p-38d61356.js +0 -18
  1100. package/dist/solutions-components/p-3a7156b8.entry.js +0 -6
  1101. package/dist/solutions-components/p-3b041268.js +0 -6
  1102. package/dist/solutions-components/p-3ca9bb95.js +0 -6
  1103. package/dist/solutions-components/p-3e5c8b2f.js +0 -6
  1104. package/dist/solutions-components/p-3ee6af74.js +0 -11
  1105. package/dist/solutions-components/p-3eecbcf0.entry.js +0 -18
  1106. package/dist/solutions-components/p-40432de5.entry.js +0 -11
  1107. package/dist/solutions-components/p-4058733e.entry.js +0 -11
  1108. package/dist/solutions-components/p-4152fae0.js +0 -6
  1109. package/dist/solutions-components/p-4321edfc.js +0 -6
  1110. package/dist/solutions-components/p-4344b6ca.entry.js +0 -11
  1111. package/dist/solutions-components/p-44e26e37.js +0 -6
  1112. package/dist/solutions-components/p-477ae127.js +0 -21
  1113. package/dist/solutions-components/p-4c8b1179.js +0 -6
  1114. package/dist/solutions-components/p-4e32bf8c.js +0 -6
  1115. package/dist/solutions-components/p-4e93132b.entry.js +0 -6
  1116. package/dist/solutions-components/p-4ea79dc4.entry.js +0 -11
  1117. package/dist/solutions-components/p-4f51db32.js +0 -6
  1118. package/dist/solutions-components/p-4f64d786.js +0 -6
  1119. package/dist/solutions-components/p-4ff653eb.js +0 -6
  1120. package/dist/solutions-components/p-53347add.js +0 -6
  1121. package/dist/solutions-components/p-54fce798.js +0 -11
  1122. package/dist/solutions-components/p-573d282b.entry.js +0 -11
  1123. package/dist/solutions-components/p-58340eba.js +0 -6
  1124. package/dist/solutions-components/p-5930cd6d.entry.js +0 -6
  1125. package/dist/solutions-components/p-5fc99541.js +0 -257
  1126. package/dist/solutions-components/p-6071078a.entry.js +0 -6
  1127. package/dist/solutions-components/p-69863a28.entry.js +0 -6
  1128. package/dist/solutions-components/p-699031c9.entry.js +0 -11
  1129. package/dist/solutions-components/p-6998e886.entry.js +0 -11
  1130. package/dist/solutions-components/p-6a813a31.entry.js +0 -6
  1131. package/dist/solutions-components/p-6b12b5eb.entry.js +0 -16
  1132. package/dist/solutions-components/p-6e89e9dd.js +0 -6
  1133. package/dist/solutions-components/p-705b7f81.entry.js +0 -12
  1134. package/dist/solutions-components/p-75578ebf.entry.js +0 -6
  1135. package/dist/solutions-components/p-7c72df3c.js +0 -22
  1136. package/dist/solutions-components/p-7ca47589.entry.js +0 -11
  1137. package/dist/solutions-components/p-7cb8a4db.js +0 -6
  1138. package/dist/solutions-components/p-7cc13b24.js +0 -8
  1139. package/dist/solutions-components/p-8008b2fe.entry.js +0 -6
  1140. package/dist/solutions-components/p-81531fbe.entry.js +0 -11
  1141. package/dist/solutions-components/p-81627211.entry.js +0 -11
  1142. package/dist/solutions-components/p-8aa806fe.js +0 -12
  1143. package/dist/solutions-components/p-8ae8b789.js +0 -6
  1144. package/dist/solutions-components/p-8b1236bf.js +0 -6
  1145. package/dist/solutions-components/p-8b14f9aa.js +0 -16
  1146. package/dist/solutions-components/p-8b4e79fd.js +0 -16
  1147. package/dist/solutions-components/p-8bc91d5b.entry.js +0 -11
  1148. package/dist/solutions-components/p-8df0c98c.entry.js +0 -35
  1149. package/dist/solutions-components/p-953cf07a.entry.js +0 -6
  1150. package/dist/solutions-components/p-95cf8aa0.entry.js +0 -11
  1151. package/dist/solutions-components/p-99ece5e1.js +0 -11
  1152. package/dist/solutions-components/p-9a2a551d.js +0 -6
  1153. package/dist/solutions-components/p-9b43b4cf.js +0 -11
  1154. package/dist/solutions-components/p-9f922d49.js +0 -11
  1155. package/dist/solutions-components/p-9fb09c2c.js +0 -11
  1156. package/dist/solutions-components/p-a0e50ea6.entry.js +0 -6
  1157. package/dist/solutions-components/p-a1154bb5.entry.js +0 -11
  1158. package/dist/solutions-components/p-a709a84a.js +0 -11
  1159. package/dist/solutions-components/p-a99832c1.js +0 -27
  1160. package/dist/solutions-components/p-ad41cd27.entry.js +0 -6
  1161. package/dist/solutions-components/p-ad962e25.js +0 -6
  1162. package/dist/solutions-components/p-ae1459ed.entry.js +0 -6
  1163. package/dist/solutions-components/p-af9510a4.entry.js +0 -6
  1164. package/dist/solutions-components/p-afc462f0.js +0 -6
  1165. package/dist/solutions-components/p-b02a2b2f.js +0 -11
  1166. package/dist/solutions-components/p-b0eb13a1.js +0 -6
  1167. package/dist/solutions-components/p-b1228e6c.entry.js +0 -11
  1168. package/dist/solutions-components/p-b1ff9f2e.entry.js +0 -11
  1169. package/dist/solutions-components/p-b20bf7b7.entry.js +0 -6
  1170. package/dist/solutions-components/p-b361af64.entry.js +0 -11
  1171. package/dist/solutions-components/p-b4a6abe2.js +0 -11
  1172. package/dist/solutions-components/p-b68b17b6.entry.js +0 -37
  1173. package/dist/solutions-components/p-b73e9c4d.js +0 -6
  1174. package/dist/solutions-components/p-b9111e12.js +0 -6
  1175. package/dist/solutions-components/p-b9653a1e.js +0 -6
  1176. package/dist/solutions-components/p-b9fa9ca9.js +0 -6
  1177. package/dist/solutions-components/p-ba9bb2ba.entry.js +0 -11
  1178. package/dist/solutions-components/p-bc35e445.entry.js +0 -6
  1179. package/dist/solutions-components/p-bccc74a8.js +0 -6
  1180. package/dist/solutions-components/p-bd213033.entry.js +0 -6
  1181. package/dist/solutions-components/p-c0dc792a.entry.js +0 -11
  1182. package/dist/solutions-components/p-c16e540d.js +0 -6
  1183. package/dist/solutions-components/p-c35b219b.entry.js +0 -11
  1184. package/dist/solutions-components/p-c38c0612.entry.js +0 -11
  1185. package/dist/solutions-components/p-c8c3554b.js +0 -17
  1186. package/dist/solutions-components/p-cbebdffa.js +0 -6
  1187. package/dist/solutions-components/p-cbf52aa2.entry.js +0 -11
  1188. package/dist/solutions-components/p-ce21ee76.js +0 -6
  1189. package/dist/solutions-components/p-ce3e73ae.entry.js +0 -6
  1190. package/dist/solutions-components/p-cf14e2f3.js +0 -6
  1191. package/dist/solutions-components/p-cfebc45c.entry.js +0 -11
  1192. package/dist/solutions-components/p-d15a4f36.entry.js +0 -11
  1193. package/dist/solutions-components/p-d3550542.js +0 -6
  1194. package/dist/solutions-components/p-d3dceabd.entry.js +0 -11
  1195. package/dist/solutions-components/p-d43c1fc8.entry.js +0 -11
  1196. package/dist/solutions-components/p-d7ddd3a2.js +0 -21
  1197. package/dist/solutions-components/p-d841cb8b.js +0 -6
  1198. package/dist/solutions-components/p-d9868bac.js +0 -6
  1199. package/dist/solutions-components/p-dc94bec2.js +0 -6
  1200. package/dist/solutions-components/p-dd0f8875.js +0 -6
  1201. package/dist/solutions-components/p-dec7b660.js +0 -11
  1202. package/dist/solutions-components/p-deca8a07.js +0 -6
  1203. package/dist/solutions-components/p-df5ec082.entry.js +0 -11
  1204. package/dist/solutions-components/p-e046f728.js +0 -6
  1205. package/dist/solutions-components/p-e27ce6d2.entry.js +0 -11
  1206. package/dist/solutions-components/p-e2abc969.js +0 -6
  1207. package/dist/solutions-components/p-e3f9e213.js +0 -6
  1208. package/dist/solutions-components/p-e43839a8.entry.js +0 -11
  1209. package/dist/solutions-components/p-e4d5188b.entry.js +0 -6
  1210. package/dist/solutions-components/p-e666c0d6.entry.js +0 -6
  1211. package/dist/solutions-components/p-e6c20791.js +0 -11
  1212. package/dist/solutions-components/p-ec4c8dc3.js +0 -11
  1213. package/dist/solutions-components/p-ef34c9e2.entry.js +0 -11
  1214. package/dist/solutions-components/p-f346f8ab.js +0 -11
  1215. package/dist/solutions-components/p-f780ecc1.entry.js +0 -11
  1216. package/dist/solutions-components/p-f8be5d5f.js +0 -7
  1217. package/dist/solutions-components/p-f9a56d6b.entry.js +0 -6
  1218. package/dist/solutions-components/p-f9b9b211.entry.js +0 -12
  1219. package/dist/solutions-components/p-fc2277fe.js +0 -21
  1220. package/dist/solutions-components/p-fd65b14d.entry.js +0 -6
  1221. package/dist/solutions-components/p-fe0e8542.entry.js +0 -17
  1222. /package/dist/cjs/{array-51e7da8f.js → array-46bb7df1.js} +0 -0
  1223. /package/dist/cjs/{debounce-69c3bada.js → debounce-30afab47.js} +0 -0
  1224. /package/dist/cjs/{guid-ca85ade0.js → guid-3abe3cc6.js} +0 -0
  1225. /package/dist/cjs/{html2canvas-770c1171.js → html2canvas-34208bbf.js} +0 -0
  1226. /package/dist/cjs/{interactive-4e212b36.js → interactive-2fe0f43a.js} +0 -0
  1227. /package/dist/cjs/{key-b32a6438.js → key-b8b55ea3.js} +0 -0
  1228. /package/dist/cjs/{math-ef14a84a.js → math-5132d9bd.js} +0 -0
  1229. /package/dist/cjs/{observers-20fe6f01.js → observers-f5fa975b.js} +0 -0
  1230. /package/dist/cjs/{purify-5389d8d6.js → purify-f8c3e427.js} +0 -0
  1231. /package/dist/cjs/{resources-1d2258a1.js → resources-2901b608.js} +0 -0
  1232. /package/dist/cjs/{resources-a7e3371d.js → resources-4da89742.js} +0 -0
  1233. /package/dist/cjs/{resources-7c9bff85.js → resources-60c27547.js} +0 -0
  1234. /package/dist/cjs/{resources-b4b4b4fe.js → resources-77713c2e.js} +0 -0
  1235. /package/dist/cjs/{resources-b176fc52.js → resources-8233a151.js} +0 -0
  1236. /package/dist/cjs/{resources-f13e2605.js → resources-91409a5d.js} +0 -0
  1237. /package/dist/cjs/{resources-9dcbf30f.js → resources-9f2b33ee.js} +0 -0
  1238. /package/dist/cjs/{resources-f3e30b7b.js → resources-c913200c.js} +0 -0
  1239. /package/dist/cjs/{resources-c6f066a4.js → resources-e1258e8a.js} +0 -0
  1240. /package/dist/cjs/{utils-662561ad.js → utils-bae432a9.js} +0 -0
  1241. /package/dist/cjs/{utils-8a0f3e68.js → utils-cd14113f.js} +0 -0
  1242. /package/dist/{esm/resources-b5267429.js → components/resources4.js} +0 -0
  1243. /package/dist/esm/{array-4a653f59.js → array-751a2b87.js} +0 -0
  1244. /package/dist/esm/{debounce-4c884e5c.js → debounce-229b1a22.js} +0 -0
  1245. /package/dist/esm/{guid-1608fd71.js → guid-2bbb8cd1.js} +0 -0
  1246. /package/dist/esm/{html2canvas-12c862c8.js → html2canvas-a0a4df55.js} +0 -0
  1247. /package/dist/esm/{interactive-0733ee76.js → interactive-eaf4be29.js} +0 -0
  1248. /package/dist/esm/{key-97b504af.js → key-7a525416.js} +0 -0
  1249. /package/dist/esm/{math-e006358c.js → math-5f92f517.js} +0 -0
  1250. /package/dist/esm/{observers-67bdf9e5.js → observers-9d66685a.js} +0 -0
  1251. /package/dist/esm/{purify-75c61cf7.js → purify-c99d2ace.js} +0 -0
  1252. /package/dist/esm/{resources-913009ae.js → resources-58d30a0f.js} +0 -0
  1253. /package/dist/esm/{resources-6be20fcc.js → resources-5bce3953.js} +0 -0
  1254. /package/dist/esm/{resources-f97db74e.js → resources-94c47e64.js} +0 -0
  1255. /package/dist/esm/{resources-43d63050.js → resources-a9b2d33c.js} +0 -0
  1256. /package/dist/esm/{resources-34b761fa.js → resources-c253772f.js} +0 -0
  1257. /package/dist/esm/{resources-6b7800e6.js → resources-c65f5654.js} +0 -0
  1258. /package/dist/esm/{resources-01034dfa.js → resources-d6a4d343.js} +0 -0
  1259. /package/dist/esm/{resources-5490ccf4.js → resources-dca3d475.js} +0 -0
  1260. /package/dist/esm/{utils-dcd05f69.js → utils-18db6b1d.js} +0 -0
  1261. /package/dist/esm/{utils-649c76ab.js → utils-2c91c963.js} +0 -0
  1262. /package/dist/solutions-components/{p-5d25ba99.js → p-18869c0f.js} +0 -0
  1263. /package/dist/solutions-components/{p-43ebe36a.js → p-18f1772b.js} +0 -0
  1264. /package/dist/solutions-components/{p-76b83a13.js → p-1f468797.js} +0 -0
  1265. /package/dist/solutions-components/{p-f93e6931.js → p-215d3505.js} +0 -0
  1266. /package/dist/solutions-components/{p-0b32d4fe.js → p-2291b598.js} +0 -0
  1267. /package/dist/solutions-components/{p-0630e686.js → p-283e3a2d.js} +0 -0
  1268. /package/dist/solutions-components/{p-a963dd48.js → p-38ef0684.js} +0 -0
  1269. /package/dist/solutions-components/{p-3adf63ca.js → p-3fc17d72.js} +0 -0
  1270. /package/dist/solutions-components/{p-fb3ba11a.js → p-4805ff13.js} +0 -0
  1271. /package/dist/solutions-components/{p-5242a652.js → p-58ce5639.js} +0 -0
  1272. /package/dist/solutions-components/{p-203b16df.js → p-5961c4e0.js} +0 -0
  1273. /package/dist/solutions-components/{p-cc815aca.js → p-63a0e9bf.js} +0 -0
  1274. /package/dist/solutions-components/{p-d556b5c4.js → p-6f2edf5b.js} +0 -0
  1275. /package/dist/solutions-components/{p-9ab03591.js → p-868df4a0.js} +0 -0
  1276. /package/dist/solutions-components/{p-ff4afb7d.js → p-b9749e09.js} +0 -0
  1277. /package/dist/solutions-components/{p-3b72043f.js → p-d4c103a8.js} +0 -0
  1278. /package/dist/solutions-components/{p-7ac7b1a1.js → p-d554507d.js} +0 -0
  1279. /package/dist/solutions-components/{p-0506e06f.js → p-f055a840.js} +0 -0
  1280. /package/dist/solutions-components/{p-08ab045a.js → p-fb7e0054.js} +0 -0
@@ -1,530 +1,530 @@
1
- /*!
2
- * Copyright 2022 Esri
3
- * Licensed under the Apache License, Version 2.0
4
- * http://www.apache.org/licenses/LICENSE-2.0
5
- */
6
- /** @license
7
- * Copyright 2022 Esri
8
- *
9
- * Licensed under the Apache License, Version 2.0 (the "License");
10
- * you may not use this file except in compliance with the License.
11
- * You may obtain a copy of the License at
12
- *
13
- * http://www.apache.org/licenses/LICENSE-2.0
14
- *
15
- * Unless required by applicable law or agreed to in writing, software
16
- * distributed under the License is distributed on an "AS IS" BASIS,
17
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18
- * See the License for the specific language governing permissions and
19
- * limitations under the License.
20
- */
21
- //#region Declarations
22
- import { exportCSV } from "./csvUtils";
23
- import { exportPDF } from "./pdfUtils";
24
- import { loadModules } from "./loadModules";
25
- import { queryFeaturesByID } from "./queryUtils";
26
- export { ILabel } from "./pdfUtils";
27
- const lineSeparatorChar = "|";
28
- //#endregion
29
- //#region Public functions
30
- /**
31
- * Downloads csv of mailing labels for the provided list of ids
32
- *
33
- * @param exportInfos Key details about what to export (ids, layer, and selectionSetNames)
34
- * @param formatUsingLayerPopup When true, the layer's popup is used to choose attributes for each column; when false,
35
- * all attributes are exported
36
- * @param removeDuplicates When true a single label is generated when multiple featues have a shared address value
37
- * @param addColumnTitle Indicates if column headings should be included in output
38
- * @returns Promise resolving when function is done
39
- */
40
- export async function downloadCSV(exportInfos, formatUsingLayerPopup, removeDuplicates = false, addColumnTitle = false) {
41
- let labels = await consolidateLabels(exportInfos, formatUsingLayerPopup, addColumnTitle, true);
42
- labels = removeDuplicates ? removeDuplicateLabels(labels) : labels;
43
- const layerIds = Object.keys(exportInfos);
44
- let layerLabels = [];
45
- labels.forEach(label => {
46
- const id = label[0];
47
- // layerIds are stored as value separator at the end of the values for a given layer
48
- if (layerIds.indexOf(id) < 0) {
49
- layerLabels.push(label);
50
- }
51
- else {
52
- const selectionSetNames = _getSelectionSetNames(exportInfos, new RegExp(`\\b${id}\\b`));
53
- // once we see the layerId we have reached the end of it's values and should export
54
- exportCSV(_createFilename(selectionSetNames), layerLabels);
55
- layerLabels = [];
56
- }
57
- });
58
- return Promise.resolve();
59
- }
60
- /**
61
- * Downloads csv of mailing labels for the provided list of ids
62
- *
63
- * @param exportInfos Key details about what to export (ids, layer, and selectionSetNames)
64
- * @param labelPageDescription Provides PDF page layout info
65
- * @param removeDuplicates When true a single label is generated when multiple featues have a shared address value
66
- * @param title Title for each page
67
- * @param initialImageDataUrl Data URL of image for first page
68
- * @returns Promise resolving when function is done
69
- */
70
- export async function downloadPDF(exportInfos, labelPageDescription, removeDuplicates = false, title = "", initialImageDataUrl = "") {
71
- let labels = await consolidateLabels(exportInfos);
72
- const selectionSetNames = _getSelectionSetNames(exportInfos);
73
- labels =
74
- // Remove empty lines in labels
75
- labels.map(labelLines => labelLines.filter(line => line.length > 0))
76
- // Remove empty labels
77
- .filter(label => label.length > 0);
78
- labels = removeDuplicates ? removeDuplicateLabels(labels) : labels;
79
- exportPDF(_createFilename(selectionSetNames), labels, labelPageDescription, title, initialImageDataUrl);
80
- return Promise.resolve();
81
- }
82
- //#endregion
83
- //#region Private functions
84
- /**
85
- * Converts a set of fieldInfos into template lines.
86
- *
87
- * @param fieldInfos Layer's fieldInfos structure
88
- * @param bypassFieldVisiblity Indicates if the configured fieldInfo visibility property should be ignored
89
- * @return Label spec with lines separated by `lineSeparatorChar`
90
- */
91
- export function _convertPopupFieldsToLabelSpec(fieldInfos, bypassFieldVisiblity = false) {
92
- const labelSpec = [];
93
- // Every visible attribute is used
94
- fieldInfos.forEach(fieldInfo => {
95
- if (fieldInfo.visible || bypassFieldVisiblity) {
96
- labelSpec.push(`{${fieldInfo.fieldName}}`);
97
- }
98
- });
99
- return labelSpec.join(lineSeparatorChar);
100
- }
101
- ;
102
- /**
103
- * Converts the text of a custom popup into a multiline label specification; conversion splits text into
104
- * lines on <br>s, and removes HTML tags. It does not handle Arcade and related records.
105
- *
106
- * @param popupInfo Layer's popupInfo structure containing description, fieldInfos, and expressionInfos, e.g.,
107
- * "<div style='text-align: left;'>{NAME}<br />{STREET}<br />{CITY}, {STATE} {ZIP} <br /></div>"
108
- * @return Label spec with lines separated by `lineSeparatorChar`
109
- */
110
- export function _convertPopupTextToLabelSpec(popupInfo) {
111
- // Replace <br> variants with the line separator character
112
- popupInfo = popupInfo.replace(/<br\s*\/?>/gi, lineSeparatorChar);
113
- // Replace <p> variants with the line separator character, except in the first position
114
- popupInfo = popupInfo.replace(/<p[^>]*>/gi, lineSeparatorChar).trim().replace(/^\|/, "");
115
- // Remove </p>
116
- popupInfo = popupInfo.replace(/<\/p>/gi, "");
117
- // Replace \n with the line separator character
118
- popupInfo = popupInfo.replace(/\n/gi, "|");
119
- // Remove remaining HTML tags, replace 0xA0 that popup uses for spaces, and replace some char representations
120
- let labelSpec = popupInfo
121
- .replace(/<[\s.]*[^<>]*\/?>/gi, "")
122
- .replace(/\xA0/gi, " ")
123
- .replace(/&lt;/gi, "<")
124
- .replace(/&gt;/gi, ">")
125
- .replace(/&nbsp;/gi, " ");
126
- // Trim each line
127
- labelSpec = labelSpec.replace(/\s*\|\s*/g, "|");
128
- // Remove empty lines
129
- while (labelSpec.match(/\|\|/)) {
130
- labelSpec = labelSpec.replace(/\|\|/, "|");
131
- }
132
- // Remove leading and trailing line feeds
133
- labelSpec = labelSpec.replace(/^\|/, "");
134
- labelSpec = labelSpec.replace(/\|$/, "");
135
- return labelSpec.trim();
136
- }
137
- ;
138
- /**
139
- * Extracts Arcade expressions from the lines of a label format and creates an Arcade executor for each
140
- * referenced expression name.
141
- *
142
- * @param labelFormat Label to examine
143
- * @param layer Layer from which to fetch features
144
- * @return Promise resolving to a set of executors keyed using the expression name
145
- */
146
- async function _createArcadeExecutors(labelFormat, layer) {
147
- const arcadeExecutors = {};
148
- // Are any Arcade expressions in the layer?
149
- if (!Array.isArray(layer.popupTemplate.expressionInfos) || layer.popupTemplate.expressionInfos.length === 0) {
150
- return Promise.resolve(arcadeExecutors);
151
- }
152
- // Are there any Arcade expressions in the label format?
153
- const arcadeExpressionRegExp = /\{expression\/\w+\}/g;
154
- const arcadeExpressionsMatches = labelFormat.match(arcadeExpressionRegExp);
155
- if (!arcadeExpressionsMatches) {
156
- return Promise.resolve(arcadeExecutors);
157
- }
158
- // Generate an Arcade executor for each match
159
- const [arcade] = await loadModules(["esri/arcade"]);
160
- const labelingProfile = {
161
- variables: [
162
- {
163
- name: "$feature",
164
- type: "feature"
165
- },
166
- {
167
- name: "$layer",
168
- type: "featureSet"
169
- },
170
- {
171
- name: "$datastore",
172
- type: "featureSetCollection"
173
- },
174
- {
175
- name: "$map",
176
- type: "featureSetCollection"
177
- }
178
- ]
179
- };
180
- const createArcadeExecutorPromises = {};
181
- arcadeExpressionsMatches.forEach((match) => {
182
- const expressionName = match.substring(match.indexOf("/") + 1, match.length - 1);
183
- (layer.popupTemplate.expressionInfos || []).forEach(expressionInfo => {
184
- if (expressionInfo.name === expressionName) {
185
- createArcadeExecutorPromises[expressionName] =
186
- arcade.createArcadeExecutor(expressionInfo.expression, labelingProfile);
187
- }
188
- });
189
- });
190
- const promises = Object.values(createArcadeExecutorPromises);
191
- return Promise.all(promises)
192
- .then(executors => {
193
- const expressionNames = Object.keys(createArcadeExecutorPromises);
194
- for (let i = 0; i < expressionNames.length; ++i) {
195
- arcadeExecutors[expressionNames[i]] = executors[i].valueOf();
196
- }
197
- return arcadeExecutors;
198
- });
199
- }
200
- /**
201
- * Creates a title from a list of selection set names.
202
- *
203
- * @param selectionSetNames Names to use in title
204
- * @return Title composed of the selectionSetNames separated by commas; if there are no
205
- * selection set names supplied, "download" is returned
206
- */
207
- export function _createFilename(selectionSetNames) {
208
- // Windows doesn't permit the characters \/:*?"<>|
209
- const title = selectionSetNames.length > 0 ? selectionSetNames.join(", ") : "download";
210
- return title;
211
- }
212
- /**
213
- * Creates relationship queries for each relationship flag in a popup.
214
- * @param layer Layer whose popup is to be examined
215
- * @return Hash of relationships by their id, or null if there are no relationship flags in the
216
- * popup; each relationship has the properties layer and relatedQuery for the related layer
217
- * and the query for that layer
218
- */
219
- export function _createRelationshipQueries(layer) {
220
- const relationships = {};
221
- const relationshipFieldPattern = /\{relationships\/\d+\//gm;
222
- const relationshipIdPattern = /\d+/;
223
- // Test if this popup has any relationship references
224
- const matches = layer.popupTemplate.content[0].text.match(relationshipFieldPattern);
225
- if (matches) {
226
- matches.forEach(match => {
227
- // Add a query to a found relationship if we don't already have one
228
- const id = match.match(relationshipIdPattern)[0];
229
- if (!relationships.hasOwnProperty(id)) {
230
- const relatedQuery = {
231
- outFields: ['*'],
232
- relationshipId: id,
233
- returnGeometry: false
234
- };
235
- relationships[id] = {
236
- layer,
237
- relatedQuery
238
- };
239
- }
240
- });
241
- }
242
- return relationships;
243
- }
244
- /**
245
- * Extracts Arcade expression references from the lines of a label format.
246
- *
247
- * @param labelFormat Label to examine
248
- * @return Array of Arcade expression references, e.g., ["{expression/expr1}", "{expression/expr2}"]
249
- */
250
- export function _getExpressionsFromLabel(labelFormat) {
251
- var _a;
252
- const arcadeExpressionRegExp = /\{expression\/\w+\}/g;
253
- return (_a = labelFormat.match(arcadeExpressionRegExp)) !== null && _a !== void 0 ? _a : [];
254
- }
255
- /**
256
- * Extracts field name expressions from the lines of a label format.
257
- *
258
- * @param labelFormat Label to examine
259
- * @returns Array of field name expressions, e.g., ["{NAME}", "{STREET}", "{CITY}", "{STATE}", "{ZIP}"]
260
- */
261
- export function _getFieldsFromLabel(labelFormat) {
262
- // Get all fields
263
- const fieldExpressions = [];
264
- let iStart = 0;
265
- while (iStart < labelFormat.length) {
266
- const iOpen = labelFormat.indexOf("{", iStart); // Find the next open brace
267
- if (iOpen < 0) {
268
- break;
269
- } // No more open braces
270
- const iClose = labelFormat.indexOf("}", iOpen); // Find the matching close brace
271
- if (iClose < 0) {
272
- break;
273
- } // No more close braces
274
- const fieldName = labelFormat.substring(iOpen, iClose + 1); // Extract the field name with braces
275
- fieldExpressions.push(fieldName);
276
- iStart = iClose + 1; // Start looking for the next field name after the close brace
277
- }
278
- // Get the Arcade expressions
279
- const arcadeExpressions = _getExpressionsFromLabel(labelFormat);
280
- // Remove the Arcade expressions from the returned list of field expressions
281
- return fieldExpressions.filter(fieldExpression => arcadeExpressions.indexOf(fieldExpression) < 0);
282
- }
283
- /**
284
- * Prepares an attribute's value by applying domain and type information.
285
- *
286
- * @param attributeValue Value of attribute
287
- * @param attributeType Type of attribute
288
- * @param attributeDomain Domain info for attribute, if any
289
- * @param attributeFormat Format info for attribute, if any
290
- * @param intl esri/intl
291
- * @return Attribute value modified appropriate to domain and type
292
- */
293
- function _prepareAttributeValue(attributeValue, attributeType, attributeDomain, attributeFormat, intl) {
294
- if (attributeDomain && attributeDomain.type === "coded-value") {
295
- // "coded-value" domain field
296
- const value = attributeDomain.getName(attributeValue);
297
- return value;
298
- }
299
- else {
300
- // Non-domain field or unsupported domain type
301
- let value = attributeValue;
302
- switch (attributeType) {
303
- case "date":
304
- if (attributeFormat === null || attributeFormat === void 0 ? void 0 : attributeFormat.dateFormat) {
305
- const dateFormatIntlOptions = intl.convertDateFormatToIntlOptions(attributeFormat.dateFormat);
306
- value = intl.formatDate(value, dateFormatIntlOptions);
307
- }
308
- else {
309
- value = intl.formatDate(value);
310
- }
311
- // Format date produces odd characters for the space between the time and the AM/PM text,
312
- // e.g., "12/31/1969, 4:00 PM"
313
- value = value.replace(/\xe2\x80\xaf/g, "");
314
- break;
315
- case "double":
316
- case "integer":
317
- case "long":
318
- case "small-integer":
319
- if (attributeFormat) {
320
- const numberFormatIntlOptions = intl.convertNumberFormatToIntlOptions(attributeFormat);
321
- value = intl.formatNumber(value, numberFormatIntlOptions);
322
- }
323
- else {
324
- value = intl.formatNumber(value);
325
- }
326
- break;
327
- }
328
- return value;
329
- }
330
- }
331
- /**
332
- * Creates labels from items.
333
- *
334
- * @param layer Layer from which to fetch features
335
- * @param ids List of ids to download
336
- * @param formatUsingLayerPopup When true, the layer's popup is used to choose attributes for each column; when false,
337
- * all attributes are exported
338
- * @param includeHeaderNames Add the label format at the front of the list of generated labels
339
- * @returns Promise resolving when function is done
340
- */
341
- async function _prepareLabels(layer, ids, formatUsingLayerPopup = true, includeHeaderNames = false) {
342
- var _a, _b, _c, _d;
343
- const [intl] = await loadModules(["esri/intl"]);
344
- // Get the features to export
345
- const featureSet = await queryFeaturesByID(ids, layer, [], false);
346
- // Get field data types. Do we have any domain-based fields?
347
- const attributeTypes = {};
348
- const attributeDomains = {};
349
- layer.fields.forEach(field => {
350
- attributeTypes[field.name] = field.type;
351
- attributeDomains[field.name] = field.domain;
352
- });
353
- const attributeFormats = {};
354
- // Get the label formatting, if any
355
- let labelFormat;
356
- let relationshipQueries = {};
357
- let arcadeExecutors = {};
358
- if (layer.popupEnabled) {
359
- layer.popupTemplate.fieldInfos.forEach(
360
- // Extract any format info that we have
361
- fieldInfo => {
362
- if (fieldInfo.format) {
363
- attributeFormats[fieldInfo.fieldName] = fieldInfo.format;
364
- }
365
- });
366
- // What data fields are used in the labels?
367
- // Example labelFormat: ['{NAME}', '{STREET}', '{CITY}, {STATE} {ZIP}']
368
- if (formatUsingLayerPopup && ((_b = (_a = layer.popupTemplate) === null || _a === void 0 ? void 0 : _a.content[0]) === null || _b === void 0 ? void 0 : _b.type) === "fields") {
369
- labelFormat = _convertPopupFieldsToLabelSpec(layer.popupTemplate.fieldInfos);
370
- // If popup is configured with "no attribute information", then no fields will visible
371
- if (labelFormat.length === 0) {
372
- // Can we use the popup title?
373
- // eslint-disable-next-line unicorn/prefer-ternary
374
- if (typeof layer.popupTemplate.title === "string") {
375
- labelFormat = layer.popupTemplate.title;
376
- // Otherwise revert to using attributes
377
- }
378
- else {
379
- labelFormat = _convertPopupFieldsToLabelSpec(layer.popupTemplate.fieldInfos, true);
380
- }
381
- }
382
- }
383
- else if (formatUsingLayerPopup && ((_d = (_c = layer.popupTemplate) === null || _c === void 0 ? void 0 : _c.content[0]) === null || _d === void 0 ? void 0 : _d.type) === "text") {
384
- labelFormat = _convertPopupTextToLabelSpec(layer.popupTemplate.content[0].text);
385
- // Do we need any relationship queries?
386
- relationshipQueries = _createRelationshipQueries(layer);
387
- // Do we need any Arcade executors?
388
- arcadeExecutors = await _createArcadeExecutors(labelFormat, layer);
389
- }
390
- }
391
- // Apply the label format
392
- let labels;
393
- // eslint-disable-next-line unicorn/prefer-ternary
394
- if (labelFormat) {
395
- // Find the label fields that we need to replace with values
396
- const arcadeExpressionMatches = _getExpressionsFromLabel(labelFormat);
397
- const attributeMatches = _getFieldsFromLabel(labelFormat);
398
- // Convert feature attributes into an array of labels
399
- const relationshipKeys = Object.keys(relationshipQueries);
400
- labels = await Promise.all(featureSet.map(async (feature) => {
401
- let labelPrep = labelFormat;
402
- // Replace Arcade expressions in this feature
403
- arcadeExpressionMatches.forEach((match) => {
404
- const expressionName = match.substring(match.indexOf("/") + 1, match.length - 1);
405
- const value = arcadeExecutors[expressionName].execute({ "$feature": feature });
406
- labelPrep = labelPrep.replace(match, value);
407
- });
408
- // Replace relationship expressions in this feature
409
- const relatedFeatureQueries = [];
410
- const relationshipIds = [];
411
- relationshipKeys.forEach((relationshipId) => {
412
- const relationship = relationshipQueries[relationshipId];
413
- const objectId = feature.attributes[relationship.layer.objectIdField];
414
- const relatedQuery = Object.assign(Object.assign({}, relationship.relatedQuery), { objectIds: [objectId] });
415
- relatedFeatureQueries.push(relationship.layer.queryRelatedFeatures(relatedQuery));
416
- relationshipIds.push(relationshipId);
417
- });
418
- // Wait for all of the queries for related records for this label
419
- const relatedFeatureQueryResults = await Promise.all(relatedFeatureQueries);
420
- relatedFeatureQueryResults.forEach((relatedFeatureQueryResult, i) => {
421
- // We have an object with FeatureSets grouped by source layer or table objectIds
422
- const relationshipId = relationshipIds[i];
423
- // Run through the source layer or table objectIds
424
- Object.keys(relatedFeatureQueryResult).forEach(relatedFeatureSetId => {
425
- // We have a feature set
426
- const relatedFeatures = relatedFeatureQueryResult[relatedFeatureSetId].features;
427
- // Get the values from each feature and replace them in the label
428
- relatedFeatures.forEach(feature => {
429
- // Merge the base and related feature attributes and create the label
430
- // Prefix related feature's attributes with "relationships/<id>/" to match popup
431
- const rePrefix = "\{relationships/" + relationshipId + "/";
432
- const reSuffix = "\}";
433
- const attributes = feature.attributes;
434
- Object.keys(attributes).forEach(attributeName => {
435
- // Replace the value using the attribute name as a relationship
436
- const attributeRelationshipRegExp = new RegExp(rePrefix + attributeName + reSuffix, "g");
437
- labelPrep = labelPrep.replaceAll(attributeRelationshipRegExp, attributes[attributeName]);
438
- });
439
- });
440
- });
441
- });
442
- // Replace non-Arcade fields in this feature
443
- attributeMatches.forEach((match) => {
444
- const attributeName = match.substring(1, match.length - 1);
445
- const value = _prepareAttributeValue(feature.attributes[attributeName], attributeTypes[attributeName], attributeDomains[attributeName], attributeFormats[attributeName], intl);
446
- labelPrep = labelPrep.replace(match, value);
447
- });
448
- // Split label into lines
449
- let label = labelPrep.split(lineSeparatorChar);
450
- // Trim lines
451
- label = label.map(line => line.trim());
452
- return label;
453
- }));
454
- }
455
- else {
456
- // Export all attributes
457
- labels = featureSet.map(feature => {
458
- return Object.keys(feature.attributes).map((attributeName) => {
459
- const value = _prepareAttributeValue(feature.attributes[attributeName], attributeTypes[attributeName], attributeDomains[attributeName], null, intl);
460
- return `${value}`;
461
- });
462
- });
463
- }
464
- // Add header names
465
- if (includeHeaderNames) {
466
- let headerNames = [];
467
- if (labelFormat) {
468
- headerNames = labelFormat.replace(/\{/g, "").replace(/\}/g, "").split(lineSeparatorChar);
469
- }
470
- else {
471
- const featuresAttrs = featureSet[0].attributes;
472
- Object.keys(featuresAttrs).forEach(k => {
473
- headerNames.push(k);
474
- });
475
- }
476
- labels.unshift(headerNames);
477
- }
478
- return Promise.resolve(labels);
479
- }
480
- /**
481
- * Remove any duplicate labels
482
- *
483
- * @param labels Labels to evaluate for duplicates
484
- * @returns labels with duplicates removed
485
- */
486
- export function removeDuplicateLabels(labels) {
487
- const labelsAsStrings = labels.map(label => JSON.stringify(label));
488
- const uniqueLabels = new Set(labelsAsStrings);
489
- return Array.from(uniqueLabels, labelString => JSON.parse(labelString));
490
- }
491
- /**
492
- * Extract selectionSetNames from the provided exportInfos
493
- *
494
- * @param exportInfos Key details about what to export (ids, layer, and selectionSetNames)
495
- * @returns selectionSetNames that will be used for export filenames
496
- */
497
- function _getSelectionSetNames(exportInfos, id = /.+/) {
498
- let selectionSetNames = [];
499
- Object.keys(exportInfos).forEach(k => {
500
- const exportInfo = exportInfos[k];
501
- if (id.test(k)) {
502
- selectionSetNames = selectionSetNames.concat(exportInfo.selectionSetNames);
503
- }
504
- });
505
- return selectionSetNames;
506
- }
507
- /**
508
- * Create and consolidate labels from all layers
509
- *
510
- * @param exportInfos Key details about what to export (ids, layer, and selectionSetNames)
511
- * @param formatUsingLayerPopup When true, the layer's popup is used to choose attributes for each column; when false,
512
- * all attributes are exported
513
- * @param includeHeaderNames Add the label format at the front of the list of generated labels
514
- * @returns selectionSetNames that will be used for export filenames
515
- */
516
- export async function consolidateLabels(exportInfos, formatUsingLayerPopup = true, includeHeaderNames = false, isCSVExport = false) {
517
- const labelRequests = [];
518
- Object.keys(exportInfos).forEach(k => {
519
- var _a;
520
- const labelInfo = exportInfos[k];
521
- labelRequests.push(_prepareLabels(((_a = labelInfo.layerView) === null || _a === void 0 ? void 0 : _a.layer) || labelInfo.layer, labelInfo.ids, formatUsingLayerPopup, includeHeaderNames));
522
- if (isCSVExport) {
523
- // add the layer id as a temp value separator that we can use to split values for CSV export
524
- labelRequests.push(Promise.resolve([[k]]));
525
- }
526
- });
527
- const labels = await Promise.all(labelRequests);
528
- return labels.reduce((prev, cur) => prev.concat(cur), []);
529
- }
530
- //#endregion
1
+ /*!
2
+ * Copyright 2022 Esri
3
+ * Licensed under the Apache License, Version 2.0
4
+ * http://www.apache.org/licenses/LICENSE-2.0
5
+ */
6
+ /** @license
7
+ * Copyright 2022 Esri
8
+ *
9
+ * Licensed under the Apache License, Version 2.0 (the "License");
10
+ * you may not use this file except in compliance with the License.
11
+ * You may obtain a copy of the License at
12
+ *
13
+ * http://www.apache.org/licenses/LICENSE-2.0
14
+ *
15
+ * Unless required by applicable law or agreed to in writing, software
16
+ * distributed under the License is distributed on an "AS IS" BASIS,
17
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18
+ * See the License for the specific language governing permissions and
19
+ * limitations under the License.
20
+ */
21
+ //#region Declarations
22
+ import { exportCSV } from "./csvUtils";
23
+ import { exportPDF } from "./pdfUtils";
24
+ import { loadModules } from "./loadModules";
25
+ import { queryFeaturesByID } from "./queryUtils";
26
+ export { ILabel } from "./pdfUtils";
27
+ const lineSeparatorChar = "|";
28
+ //#endregion
29
+ //#region Public functions
30
+ /**
31
+ * Downloads csv of mailing labels for the provided list of ids
32
+ *
33
+ * @param exportInfos Key details about what to export (ids, layer, and selectionSetNames)
34
+ * @param formatUsingLayerPopup When true, the layer's popup is used to choose attributes for each column; when false,
35
+ * all attributes are exported
36
+ * @param removeDuplicates When true a single label is generated when multiple featues have a shared address value
37
+ * @param addColumnTitle Indicates if column headings should be included in output
38
+ * @returns Promise resolving when function is done
39
+ */
40
+ export async function downloadCSV(exportInfos, formatUsingLayerPopup, removeDuplicates = false, addColumnTitle = false) {
41
+ let labels = await consolidateLabels(exportInfos, formatUsingLayerPopup, addColumnTitle, true);
42
+ labels = removeDuplicates ? removeDuplicateLabels(labels) : labels;
43
+ const layerIds = Object.keys(exportInfos);
44
+ let layerLabels = [];
45
+ labels.forEach(label => {
46
+ const id = label[0];
47
+ // layerIds are stored as value separator at the end of the values for a given layer
48
+ if (layerIds.indexOf(id) < 0) {
49
+ layerLabels.push(label);
50
+ }
51
+ else {
52
+ const selectionSetNames = _getSelectionSetNames(exportInfos, new RegExp(`\\b${id}\\b`));
53
+ // once we see the layerId we have reached the end of it's values and should export
54
+ exportCSV(_createFilename(selectionSetNames), layerLabels);
55
+ layerLabels = [];
56
+ }
57
+ });
58
+ return Promise.resolve();
59
+ }
60
+ /**
61
+ * Downloads csv of mailing labels for the provided list of ids
62
+ *
63
+ * @param exportInfos Key details about what to export (ids, layer, and selectionSetNames)
64
+ * @param labelPageDescription Provides PDF page layout info
65
+ * @param removeDuplicates When true a single label is generated when multiple featues have a shared address value
66
+ * @param title Title for each page
67
+ * @param initialImageDataUrl Data URL of image for first page
68
+ * @returns Promise resolving when function is done
69
+ */
70
+ export async function downloadPDF(exportInfos, labelPageDescription, removeDuplicates = false, title = "", initialImageDataUrl = "") {
71
+ let labels = await consolidateLabels(exportInfos);
72
+ const selectionSetNames = _getSelectionSetNames(exportInfos);
73
+ labels =
74
+ // Remove empty lines in labels
75
+ labels.map(labelLines => labelLines.filter(line => line.length > 0))
76
+ // Remove empty labels
77
+ .filter(label => label.length > 0);
78
+ labels = removeDuplicates ? removeDuplicateLabels(labels) : labels;
79
+ exportPDF(_createFilename(selectionSetNames), labels, labelPageDescription, title, initialImageDataUrl);
80
+ return Promise.resolve();
81
+ }
82
+ //#endregion
83
+ //#region Private functions
84
+ /**
85
+ * Converts a set of fieldInfos into template lines.
86
+ *
87
+ * @param fieldInfos Layer's fieldInfos structure
88
+ * @param bypassFieldVisiblity Indicates if the configured fieldInfo visibility property should be ignored
89
+ * @return Label spec with lines separated by `lineSeparatorChar`
90
+ */
91
+ export function _convertPopupFieldsToLabelSpec(fieldInfos, bypassFieldVisiblity = false) {
92
+ const labelSpec = [];
93
+ // Every visible attribute is used
94
+ fieldInfos.forEach(fieldInfo => {
95
+ if (fieldInfo.visible || bypassFieldVisiblity) {
96
+ labelSpec.push(`{${fieldInfo.fieldName}}`);
97
+ }
98
+ });
99
+ return labelSpec.join(lineSeparatorChar);
100
+ }
101
+ ;
102
+ /**
103
+ * Converts the text of a custom popup into a multiline label specification; conversion splits text into
104
+ * lines on <br>s, and removes HTML tags. It does not handle Arcade and related records.
105
+ *
106
+ * @param popupInfo Layer's popupInfo structure containing description, fieldInfos, and expressionInfos, e.g.,
107
+ * "<div style='text-align: left;'>{NAME}<br />{STREET}<br />{CITY}, {STATE} {ZIP} <br /></div>"
108
+ * @return Label spec with lines separated by `lineSeparatorChar`
109
+ */
110
+ export function _convertPopupTextToLabelSpec(popupInfo) {
111
+ // Replace <br> variants with the line separator character
112
+ popupInfo = popupInfo.replace(/<br\s*\/?>/gi, lineSeparatorChar);
113
+ // Replace <p> variants with the line separator character, except in the first position
114
+ popupInfo = popupInfo.replace(/<p[^>]*>/gi, lineSeparatorChar).trim().replace(/^\|/, "");
115
+ // Remove </p>
116
+ popupInfo = popupInfo.replace(/<\/p>/gi, "");
117
+ // Replace \n with the line separator character
118
+ popupInfo = popupInfo.replace(/\n/gi, "|");
119
+ // Remove remaining HTML tags, replace 0xA0 that popup uses for spaces, and replace some char representations
120
+ let labelSpec = popupInfo
121
+ .replace(/<[\s.]*[^<>]*\/?>/gi, "")
122
+ .replace(/\xA0/gi, " ")
123
+ .replace(/&lt;/gi, "<")
124
+ .replace(/&gt;/gi, ">")
125
+ .replace(/&nbsp;/gi, " ");
126
+ // Trim each line
127
+ labelSpec = labelSpec.replace(/\s*\|\s*/g, "|");
128
+ // Remove empty lines
129
+ while (labelSpec.match(/\|\|/)) {
130
+ labelSpec = labelSpec.replace(/\|\|/, "|");
131
+ }
132
+ // Remove leading and trailing line feeds
133
+ labelSpec = labelSpec.replace(/^\|/, "");
134
+ labelSpec = labelSpec.replace(/\|$/, "");
135
+ return labelSpec.trim();
136
+ }
137
+ ;
138
+ /**
139
+ * Extracts Arcade expressions from the lines of a label format and creates an Arcade executor for each
140
+ * referenced expression name.
141
+ *
142
+ * @param labelFormat Label to examine
143
+ * @param layer Layer from which to fetch features
144
+ * @return Promise resolving to a set of executors keyed using the expression name
145
+ */
146
+ async function _createArcadeExecutors(labelFormat, layer) {
147
+ const arcadeExecutors = {};
148
+ // Are any Arcade expressions in the layer?
149
+ if (!Array.isArray(layer.popupTemplate.expressionInfos) || layer.popupTemplate.expressionInfos.length === 0) {
150
+ return Promise.resolve(arcadeExecutors);
151
+ }
152
+ // Are there any Arcade expressions in the label format?
153
+ const arcadeExpressionRegExp = /\{expression\/\w+\}/g;
154
+ const arcadeExpressionsMatches = labelFormat.match(arcadeExpressionRegExp);
155
+ if (!arcadeExpressionsMatches) {
156
+ return Promise.resolve(arcadeExecutors);
157
+ }
158
+ // Generate an Arcade executor for each match
159
+ const [arcade] = await loadModules(["esri/arcade"]);
160
+ const labelingProfile = {
161
+ variables: [
162
+ {
163
+ name: "$feature",
164
+ type: "feature"
165
+ },
166
+ {
167
+ name: "$layer",
168
+ type: "featureSet"
169
+ },
170
+ {
171
+ name: "$datastore",
172
+ type: "featureSetCollection"
173
+ },
174
+ {
175
+ name: "$map",
176
+ type: "featureSetCollection"
177
+ }
178
+ ]
179
+ };
180
+ const createArcadeExecutorPromises = {};
181
+ arcadeExpressionsMatches.forEach((match) => {
182
+ const expressionName = match.substring(match.indexOf("/") + 1, match.length - 1);
183
+ (layer.popupTemplate.expressionInfos || []).forEach(expressionInfo => {
184
+ if (expressionInfo.name === expressionName) {
185
+ createArcadeExecutorPromises[expressionName] =
186
+ arcade.createArcadeExecutor(expressionInfo.expression, labelingProfile);
187
+ }
188
+ });
189
+ });
190
+ const promises = Object.values(createArcadeExecutorPromises);
191
+ return Promise.all(promises)
192
+ .then(executors => {
193
+ const expressionNames = Object.keys(createArcadeExecutorPromises);
194
+ for (let i = 0; i < expressionNames.length; ++i) {
195
+ arcadeExecutors[expressionNames[i]] = executors[i].valueOf();
196
+ }
197
+ return arcadeExecutors;
198
+ });
199
+ }
200
+ /**
201
+ * Creates a title from a list of selection set names.
202
+ *
203
+ * @param selectionSetNames Names to use in title
204
+ * @return Title composed of the selectionSetNames separated by commas; if there are no
205
+ * selection set names supplied, "download" is returned
206
+ */
207
+ export function _createFilename(selectionSetNames) {
208
+ // Windows doesn't permit the characters \/:*?"<>|
209
+ const title = selectionSetNames.length > 0 ? selectionSetNames.join(", ") : "download";
210
+ return title;
211
+ }
212
+ /**
213
+ * Creates relationship queries for each relationship flag in a popup.
214
+ * @param layer Layer whose popup is to be examined
215
+ * @return Hash of relationships by their id, or null if there are no relationship flags in the
216
+ * popup; each relationship has the properties layer and relatedQuery for the related layer
217
+ * and the query for that layer
218
+ */
219
+ export function _createRelationshipQueries(layer) {
220
+ const relationships = {};
221
+ const relationshipFieldPattern = /\{relationships\/\d+\//gm;
222
+ const relationshipIdPattern = /\d+/;
223
+ // Test if this popup has any relationship references
224
+ const matches = layer.popupTemplate.content[0].text.match(relationshipFieldPattern);
225
+ if (matches) {
226
+ matches.forEach(match => {
227
+ // Add a query to a found relationship if we don't already have one
228
+ const id = match.match(relationshipIdPattern)[0];
229
+ if (!relationships.hasOwnProperty(id)) {
230
+ const relatedQuery = {
231
+ outFields: ['*'],
232
+ relationshipId: id,
233
+ returnGeometry: false
234
+ };
235
+ relationships[id] = {
236
+ layer,
237
+ relatedQuery
238
+ };
239
+ }
240
+ });
241
+ }
242
+ return relationships;
243
+ }
244
+ /**
245
+ * Extracts Arcade expression references from the lines of a label format.
246
+ *
247
+ * @param labelFormat Label to examine
248
+ * @return Array of Arcade expression references, e.g., ["{expression/expr1}", "{expression/expr2}"]
249
+ */
250
+ export function _getExpressionsFromLabel(labelFormat) {
251
+ var _a;
252
+ const arcadeExpressionRegExp = /\{expression\/\w+\}/g;
253
+ return (_a = labelFormat.match(arcadeExpressionRegExp)) !== null && _a !== void 0 ? _a : [];
254
+ }
255
+ /**
256
+ * Extracts field name expressions from the lines of a label format.
257
+ *
258
+ * @param labelFormat Label to examine
259
+ * @returns Array of field name expressions, e.g., ["{NAME}", "{STREET}", "{CITY}", "{STATE}", "{ZIP}"]
260
+ */
261
+ export function _getFieldsFromLabel(labelFormat) {
262
+ // Get all fields
263
+ const fieldExpressions = [];
264
+ let iStart = 0;
265
+ while (iStart < labelFormat.length) {
266
+ const iOpen = labelFormat.indexOf("{", iStart); // Find the next open brace
267
+ if (iOpen < 0) {
268
+ break;
269
+ } // No more open braces
270
+ const iClose = labelFormat.indexOf("}", iOpen); // Find the matching close brace
271
+ if (iClose < 0) {
272
+ break;
273
+ } // No more close braces
274
+ const fieldName = labelFormat.substring(iOpen, iClose + 1); // Extract the field name with braces
275
+ fieldExpressions.push(fieldName);
276
+ iStart = iClose + 1; // Start looking for the next field name after the close brace
277
+ }
278
+ // Get the Arcade expressions
279
+ const arcadeExpressions = _getExpressionsFromLabel(labelFormat);
280
+ // Remove the Arcade expressions from the returned list of field expressions
281
+ return fieldExpressions.filter(fieldExpression => arcadeExpressions.indexOf(fieldExpression) < 0);
282
+ }
283
+ /**
284
+ * Prepares an attribute's value by applying domain and type information.
285
+ *
286
+ * @param attributeValue Value of attribute
287
+ * @param attributeType Type of attribute
288
+ * @param attributeDomain Domain info for attribute, if any
289
+ * @param attributeFormat Format info for attribute, if any
290
+ * @param intl esri/intl
291
+ * @return Attribute value modified appropriate to domain and type
292
+ */
293
+ function _prepareAttributeValue(attributeValue, attributeType, attributeDomain, attributeFormat, intl) {
294
+ if (attributeDomain && attributeDomain.type === "coded-value") {
295
+ // "coded-value" domain field
296
+ const value = attributeDomain.getName(attributeValue);
297
+ return value;
298
+ }
299
+ else {
300
+ // Non-domain field or unsupported domain type
301
+ let value = attributeValue;
302
+ switch (attributeType) {
303
+ case "date":
304
+ if (attributeFormat === null || attributeFormat === void 0 ? void 0 : attributeFormat.dateFormat) {
305
+ const dateFormatIntlOptions = intl.convertDateFormatToIntlOptions(attributeFormat.dateFormat);
306
+ value = intl.formatDate(value, dateFormatIntlOptions);
307
+ }
308
+ else {
309
+ value = intl.formatDate(value);
310
+ }
311
+ // Format date produces odd characters for the space between the time and the AM/PM text,
312
+ // e.g., "12/31/1969, 4:00 PM"
313
+ value = value.replace(/\xe2\x80\xaf/g, "");
314
+ break;
315
+ case "double":
316
+ case "integer":
317
+ case "long":
318
+ case "small-integer":
319
+ if (attributeFormat) {
320
+ const numberFormatIntlOptions = intl.convertNumberFormatToIntlOptions(attributeFormat);
321
+ value = intl.formatNumber(value, numberFormatIntlOptions);
322
+ }
323
+ else {
324
+ value = intl.formatNumber(value);
325
+ }
326
+ break;
327
+ }
328
+ return value;
329
+ }
330
+ }
331
+ /**
332
+ * Creates labels from items.
333
+ *
334
+ * @param layer Layer from which to fetch features
335
+ * @param ids List of ids to download
336
+ * @param formatUsingLayerPopup When true, the layer's popup is used to choose attributes for each column; when false,
337
+ * all attributes are exported
338
+ * @param includeHeaderNames Add the label format at the front of the list of generated labels
339
+ * @returns Promise resolving when function is done
340
+ */
341
+ async function _prepareLabels(layer, ids, formatUsingLayerPopup = true, includeHeaderNames = false) {
342
+ var _a, _b, _c, _d;
343
+ const [intl] = await loadModules(["esri/intl"]);
344
+ // Get the features to export
345
+ const featureSet = await queryFeaturesByID(ids, layer, [], false);
346
+ // Get field data types. Do we have any domain-based fields?
347
+ const attributeTypes = {};
348
+ const attributeDomains = {};
349
+ layer.fields.forEach(field => {
350
+ attributeTypes[field.name] = field.type;
351
+ attributeDomains[field.name] = field.domain;
352
+ });
353
+ const attributeFormats = {};
354
+ // Get the label formatting, if any
355
+ let labelFormat;
356
+ let relationshipQueries = {};
357
+ let arcadeExecutors = {};
358
+ if (layer.popupEnabled) {
359
+ layer.popupTemplate.fieldInfos.forEach(
360
+ // Extract any format info that we have
361
+ fieldInfo => {
362
+ if (fieldInfo.format) {
363
+ attributeFormats[fieldInfo.fieldName] = fieldInfo.format;
364
+ }
365
+ });
366
+ // What data fields are used in the labels?
367
+ // Example labelFormat: ['{NAME}', '{STREET}', '{CITY}, {STATE} {ZIP}']
368
+ if (formatUsingLayerPopup && ((_b = (_a = layer.popupTemplate) === null || _a === void 0 ? void 0 : _a.content[0]) === null || _b === void 0 ? void 0 : _b.type) === "fields") {
369
+ labelFormat = _convertPopupFieldsToLabelSpec(layer.popupTemplate.fieldInfos);
370
+ // If popup is configured with "no attribute information", then no fields will visible
371
+ if (labelFormat.length === 0) {
372
+ // Can we use the popup title?
373
+ // eslint-disable-next-line unicorn/prefer-ternary
374
+ if (typeof layer.popupTemplate.title === "string") {
375
+ labelFormat = layer.popupTemplate.title;
376
+ // Otherwise revert to using attributes
377
+ }
378
+ else {
379
+ labelFormat = _convertPopupFieldsToLabelSpec(layer.popupTemplate.fieldInfos, true);
380
+ }
381
+ }
382
+ }
383
+ else if (formatUsingLayerPopup && ((_d = (_c = layer.popupTemplate) === null || _c === void 0 ? void 0 : _c.content[0]) === null || _d === void 0 ? void 0 : _d.type) === "text") {
384
+ labelFormat = _convertPopupTextToLabelSpec(layer.popupTemplate.content[0].text);
385
+ // Do we need any relationship queries?
386
+ relationshipQueries = _createRelationshipQueries(layer);
387
+ // Do we need any Arcade executors?
388
+ arcadeExecutors = await _createArcadeExecutors(labelFormat, layer);
389
+ }
390
+ }
391
+ // Apply the label format
392
+ let labels;
393
+ // eslint-disable-next-line unicorn/prefer-ternary
394
+ if (labelFormat) {
395
+ // Find the label fields that we need to replace with values
396
+ const arcadeExpressionMatches = _getExpressionsFromLabel(labelFormat);
397
+ const attributeMatches = _getFieldsFromLabel(labelFormat);
398
+ // Convert feature attributes into an array of labels
399
+ const relationshipKeys = Object.keys(relationshipQueries);
400
+ labels = await Promise.all(featureSet.map(async (feature) => {
401
+ let labelPrep = labelFormat;
402
+ // Replace Arcade expressions in this feature
403
+ arcadeExpressionMatches.forEach((match) => {
404
+ const expressionName = match.substring(match.indexOf("/") + 1, match.length - 1);
405
+ const value = arcadeExecutors[expressionName].execute({ "$feature": feature });
406
+ labelPrep = labelPrep.replace(match, value);
407
+ });
408
+ // Replace relationship expressions in this feature
409
+ const relatedFeatureQueries = [];
410
+ const relationshipIds = [];
411
+ relationshipKeys.forEach((relationshipId) => {
412
+ const relationship = relationshipQueries[relationshipId];
413
+ const objectId = feature.attributes[relationship.layer.objectIdField];
414
+ const relatedQuery = Object.assign(Object.assign({}, relationship.relatedQuery), { objectIds: [objectId] });
415
+ relatedFeatureQueries.push(relationship.layer.queryRelatedFeatures(relatedQuery));
416
+ relationshipIds.push(relationshipId);
417
+ });
418
+ // Wait for all of the queries for related records for this label
419
+ const relatedFeatureQueryResults = await Promise.all(relatedFeatureQueries);
420
+ relatedFeatureQueryResults.forEach((relatedFeatureQueryResult, i) => {
421
+ // We have an object with FeatureSets grouped by source layer or table objectIds
422
+ const relationshipId = relationshipIds[i];
423
+ // Run through the source layer or table objectIds
424
+ Object.keys(relatedFeatureQueryResult).forEach(relatedFeatureSetId => {
425
+ // We have a feature set
426
+ const relatedFeatures = relatedFeatureQueryResult[relatedFeatureSetId].features;
427
+ // Get the values from each feature and replace them in the label
428
+ relatedFeatures.forEach(feature => {
429
+ // Merge the base and related feature attributes and create the label
430
+ // Prefix related feature's attributes with "relationships/<id>/" to match popup
431
+ const rePrefix = "\{relationships/" + relationshipId + "/";
432
+ const reSuffix = "\}";
433
+ const attributes = feature.attributes;
434
+ Object.keys(attributes).forEach(attributeName => {
435
+ // Replace the value using the attribute name as a relationship
436
+ const attributeRelationshipRegExp = new RegExp(rePrefix + attributeName + reSuffix, "g");
437
+ labelPrep = labelPrep.replaceAll(attributeRelationshipRegExp, attributes[attributeName]);
438
+ });
439
+ });
440
+ });
441
+ });
442
+ // Replace non-Arcade fields in this feature
443
+ attributeMatches.forEach((match) => {
444
+ const attributeName = match.substring(1, match.length - 1);
445
+ const value = _prepareAttributeValue(feature.attributes[attributeName], attributeTypes[attributeName], attributeDomains[attributeName], attributeFormats[attributeName], intl);
446
+ labelPrep = labelPrep.replace(match, value);
447
+ });
448
+ // Split label into lines
449
+ let label = labelPrep.split(lineSeparatorChar);
450
+ // Trim lines
451
+ label = label.map(line => line.trim());
452
+ return label;
453
+ }));
454
+ }
455
+ else {
456
+ // Export all attributes
457
+ labels = featureSet.map(feature => {
458
+ return Object.keys(feature.attributes).map((attributeName) => {
459
+ const value = _prepareAttributeValue(feature.attributes[attributeName], attributeTypes[attributeName], attributeDomains[attributeName], null, intl);
460
+ return `${value}`;
461
+ });
462
+ });
463
+ }
464
+ // Add header names
465
+ if (includeHeaderNames) {
466
+ let headerNames = [];
467
+ if (labelFormat) {
468
+ headerNames = labelFormat.replace(/\{/g, "").replace(/\}/g, "").split(lineSeparatorChar);
469
+ }
470
+ else {
471
+ const featuresAttrs = featureSet[0].attributes;
472
+ Object.keys(featuresAttrs).forEach(k => {
473
+ headerNames.push(k);
474
+ });
475
+ }
476
+ labels.unshift(headerNames);
477
+ }
478
+ return Promise.resolve(labels);
479
+ }
480
+ /**
481
+ * Remove any duplicate labels
482
+ *
483
+ * @param labels Labels to evaluate for duplicates
484
+ * @returns labels with duplicates removed
485
+ */
486
+ export function removeDuplicateLabels(labels) {
487
+ const labelsAsStrings = labels.map(label => JSON.stringify(label));
488
+ const uniqueLabels = new Set(labelsAsStrings);
489
+ return Array.from(uniqueLabels, labelString => JSON.parse(labelString));
490
+ }
491
+ /**
492
+ * Extract selectionSetNames from the provided exportInfos
493
+ *
494
+ * @param exportInfos Key details about what to export (ids, layer, and selectionSetNames)
495
+ * @returns selectionSetNames that will be used for export filenames
496
+ */
497
+ function _getSelectionSetNames(exportInfos, id = /.+/) {
498
+ let selectionSetNames = [];
499
+ Object.keys(exportInfos).forEach(k => {
500
+ const exportInfo = exportInfos[k];
501
+ if (id.test(k)) {
502
+ selectionSetNames = selectionSetNames.concat(exportInfo.selectionSetNames);
503
+ }
504
+ });
505
+ return selectionSetNames;
506
+ }
507
+ /**
508
+ * Create and consolidate labels from all layers
509
+ *
510
+ * @param exportInfos Key details about what to export (ids, layer, and selectionSetNames)
511
+ * @param formatUsingLayerPopup When true, the layer's popup is used to choose attributes for each column; when false,
512
+ * all attributes are exported
513
+ * @param includeHeaderNames Add the label format at the front of the list of generated labels
514
+ * @returns selectionSetNames that will be used for export filenames
515
+ */
516
+ export async function consolidateLabels(exportInfos, formatUsingLayerPopup = true, includeHeaderNames = false, isCSVExport = false) {
517
+ const labelRequests = [];
518
+ Object.keys(exportInfos).forEach(k => {
519
+ var _a;
520
+ const labelInfo = exportInfos[k];
521
+ labelRequests.push(_prepareLabels(((_a = labelInfo.layerView) === null || _a === void 0 ? void 0 : _a.layer) || labelInfo.layer, labelInfo.ids, formatUsingLayerPopup, includeHeaderNames));
522
+ if (isCSVExport) {
523
+ // add the layer id as a temp value separator that we can use to split values for CSV export
524
+ labelRequests.push(Promise.resolve([[k]]));
525
+ }
526
+ });
527
+ const labels = await Promise.all(labelRequests);
528
+ return labels.reduce((prev, cur) => prev.concat(cur), []);
529
+ }
530
+ //#endregion