@esri/solutions-components 0.6.12 → 0.6.14

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 (394) hide show
  1. package/dist/assets/t9n/layer-table/resources.json +4 -3
  2. package/dist/assets/t9n/layer-table/resources_en.json +4 -3
  3. package/dist/assets/t9n/map-layer-picker/resources.json +4 -0
  4. package/dist/assets/t9n/map-layer-picker/resources_en.json +4 -0
  5. package/dist/cjs/basemap-gallery_6.cjs.entry.js +20 -5
  6. package/dist/cjs/buffer-tools_4.cjs.entry.js +1 -1
  7. package/dist/cjs/calcite-chip_3.cjs.entry.js +803 -0
  8. package/dist/cjs/calcite-combobox_6.cjs.entry.js +76 -28
  9. package/dist/cjs/calcite-shell-panel_14.cjs.entry.js +2 -1
  10. package/dist/cjs/card-manager_3.cjs.entry.js +169 -79
  11. package/dist/cjs/clean-url-d5326abb.js +573 -0
  12. package/dist/cjs/crowdsource-manager.cjs.entry.js +22 -7
  13. package/dist/cjs/{downloadUtils-43f5be48.js → downloadUtils-34a515ad.js} +297 -52
  14. package/dist/cjs/edit-card_2.cjs.entry.js +8 -3
  15. package/dist/cjs/{index.es-8da43c21.js → index.es-0ba11065.js} +3 -2
  16. package/dist/cjs/loader.cjs.js +1 -1
  17. package/dist/cjs/map-select-tools_3.cjs.entry.js +10 -7
  18. package/dist/cjs/{mapViewUtils-a4dd36ec.js → mapViewUtils-a2884698.js} +39 -55
  19. package/dist/cjs/public-notification.cjs.entry.js +7 -6
  20. package/dist/cjs/{publicNotificationStore-b69862af.js → publicNotificationStore-610bd880.js} +0 -4
  21. package/dist/cjs/solution-configuration.cjs.entry.js +44 -43
  22. package/dist/cjs/solution-contents_3.cjs.entry.js +2 -1
  23. package/dist/cjs/{solution-store-3cd104d8.js → solution-store-c443e657.js} +7 -572
  24. package/dist/cjs/solutions-components.cjs.js +1 -1
  25. package/dist/collection/components/basemap-gallery/basemap-gallery.js +23 -1
  26. package/dist/collection/components/card-manager/card-manager.css +0 -5
  27. package/dist/collection/components/card-manager/card-manager.js +3 -3
  28. package/dist/collection/components/crowdsource-manager/crowdsource-manager.css +2 -2
  29. package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +210 -6
  30. package/dist/collection/components/edit-card/edit-card.css +8 -0
  31. package/dist/collection/components/edit-card/edit-card.js +19 -0
  32. package/dist/collection/components/info-card/info-card.css +14 -14
  33. package/dist/collection/components/info-card/info-card.js +1 -1
  34. package/dist/collection/components/layer-table/layer-table.css +12 -0
  35. package/dist/collection/components/layer-table/layer-table.js +215 -69
  36. package/dist/collection/components/map-card/map-card.js +115 -5
  37. package/dist/collection/components/map-layer-picker/map-layer-picker.css +4 -0
  38. package/dist/collection/components/map-layer-picker/map-layer-picker.js +107 -27
  39. package/dist/collection/components/map-picker/map-picker.css +5 -1
  40. package/dist/collection/components/map-picker/map-picker.js +3 -3
  41. package/dist/collection/components/map-tools/map-tools.js +104 -1
  42. package/dist/collection/components/pdf-download/pdf-download.js +34 -6
  43. package/dist/collection/components/public-notification/public-notification.js +3 -3
  44. package/dist/collection/utils/downloadUtils.js +208 -82
  45. package/dist/collection/utils/downloadUtils.ts +257 -85
  46. package/dist/collection/utils/interfaces.ts +12 -1
  47. package/dist/collection/utils/mapViewUtils.js +38 -52
  48. package/dist/collection/utils/mapViewUtils.ts +41 -57
  49. package/dist/collection/utils/publicNotificationStore.js +0 -4
  50. package/dist/collection/utils/publicNotificationStore.ts +0 -4
  51. package/dist/collection/utils/test/downloadUtils.spec.js +163 -134
  52. package/dist/collection/utils/test/downloadUtils.spec.tsx +2 -0
  53. package/dist/components/basemap-gallery2.js +2 -0
  54. package/dist/components/calcite-modal.js +1 -409
  55. package/dist/components/card-manager2.js +4 -4
  56. package/dist/components/clean-url.js +567 -0
  57. package/dist/components/crowdsource-manager.js +42 -17
  58. package/dist/components/downloadUtils.js +295 -50
  59. package/dist/components/edit-card2.js +6 -1
  60. package/dist/components/info-card2.js +2 -2
  61. package/dist/components/layer-table2.js +194 -102
  62. package/dist/components/map-card2.js +17 -5
  63. package/dist/components/map-layer-picker2.js +114 -52
  64. package/dist/components/map-picker2.js +4 -4
  65. package/dist/components/map-select-tools2.js +55 -43
  66. package/dist/components/map-tools2.js +20 -1
  67. package/dist/components/mapViewUtils.js +39 -53
  68. package/dist/components/modal.js +416 -0
  69. package/dist/components/pdf-download2.js +6 -4
  70. package/dist/components/public-notification.js +4 -4
  71. package/dist/components/publicNotificationStore.js +0 -4
  72. package/dist/components/refine-selection2.js +61 -49
  73. package/dist/components/solution-configuration.js +25 -24
  74. package/dist/components/solution-store.js +2 -562
  75. package/dist/esm/{ExpandToggle-86761b28.js → ExpandToggle-e614e3e4.js} +1 -1
  76. package/dist/esm/{ar-4a5375c6.js → ar-2f678abc.js} +8 -8
  77. package/dist/esm/basemap-gallery_6.entry.js +20 -5
  78. package/dist/esm/{bg-b25e4b7a.js → bg-e514c4d7.js} +8 -8
  79. package/dist/esm/{bs-2485dfed.js → bs-81584b09.js} +8 -8
  80. package/dist/esm/buffer-tools_4.entry.js +5 -5
  81. package/dist/esm/{ca-bba36d26.js → ca-e8c40e21.js} +8 -8
  82. package/dist/esm/calcite-accordion-item.entry.js +1 -1
  83. package/dist/esm/calcite-action-bar_3.entry.js +5 -5
  84. package/dist/esm/calcite-action-group_2.entry.js +3 -3
  85. package/dist/esm/calcite-action-pad.entry.js +4 -4
  86. package/dist/esm/calcite-action_2.entry.js +5 -5
  87. package/dist/esm/calcite-alert.entry.js +3 -3
  88. package/dist/esm/calcite-avatar.entry.js +1 -1
  89. package/dist/esm/calcite-block-section.entry.js +3 -3
  90. package/dist/esm/calcite-block.entry.js +3 -3
  91. package/dist/esm/calcite-button.entry.js +5 -5
  92. package/dist/esm/calcite-card.entry.js +3 -3
  93. package/dist/esm/calcite-checkbox.entry.js +3 -3
  94. package/dist/esm/calcite-chip-group.entry.js +1 -1
  95. package/dist/esm/calcite-chip_3.entry.js +797 -0
  96. package/dist/esm/calcite-color-picker-hex-input_2.entry.js +1 -1
  97. package/dist/esm/calcite-color-picker.entry.js +3 -3
  98. package/dist/esm/calcite-combobox-item-group.entry.js +2 -2
  99. package/dist/esm/calcite-combobox_6.entry.js +83 -35
  100. package/dist/esm/calcite-date-picker-day_3.entry.js +3 -3
  101. package/dist/esm/calcite-date-picker.entry.js +5 -5
  102. package/dist/esm/calcite-fab.entry.js +1 -1
  103. package/dist/esm/calcite-filter_3.entry.js +3 -3
  104. package/dist/esm/calcite-flow-item.entry.js +3 -3
  105. package/dist/esm/calcite-icon.entry.js +1 -1
  106. package/dist/esm/calcite-inline-editable.entry.js +4 -4
  107. package/dist/esm/calcite-input-date-picker.entry.js +9 -9
  108. package/dist/esm/calcite-input-number_2.entry.js +5 -5
  109. package/dist/esm/{calcite-input-time-picker-7da2e80a.js → calcite-input-time-picker-fe6e499a.js} +55 -55
  110. package/dist/esm/calcite-input-time-picker.entry.js +8 -8
  111. package/dist/esm/calcite-input-time-zone.entry.js +5 -5
  112. package/dist/esm/calcite-input_2.entry.js +5 -5
  113. package/dist/esm/calcite-label.entry.js +2 -2
  114. package/dist/esm/calcite-link.entry.js +1 -1
  115. package/dist/esm/calcite-menu-item.entry.js +3 -3
  116. package/dist/esm/calcite-menu.entry.js +3 -3
  117. package/dist/esm/calcite-modal.entry.js +4 -4
  118. package/dist/esm/calcite-navigation.entry.js +1 -1
  119. package/dist/esm/calcite-option_2.entry.js +3 -3
  120. package/dist/esm/calcite-pagination.entry.js +3 -3
  121. package/dist/esm/calcite-panel_2.entry.js +3 -3
  122. package/dist/esm/calcite-pick-list-group.entry.js +1 -1
  123. package/dist/esm/calcite-pick-list-item.entry.js +3 -3
  124. package/dist/esm/calcite-pick-list.entry.js +2 -2
  125. package/dist/esm/calcite-radio-button.entry.js +3 -3
  126. package/dist/esm/calcite-rating.entry.js +5 -5
  127. package/dist/esm/calcite-scrim.entry.js +3 -3
  128. package/dist/esm/calcite-segmented-control_2.entry.js +3 -3
  129. package/dist/esm/calcite-shell-center-row.entry.js +1 -1
  130. package/dist/esm/calcite-shell-panel_14.entry.js +7 -6
  131. package/dist/esm/calcite-sortable-list.entry.js +2 -2
  132. package/dist/esm/calcite-stepper-item.entry.js +2 -2
  133. package/dist/esm/calcite-stepper.entry.js +1 -1
  134. package/dist/esm/calcite-switch.entry.js +3 -3
  135. package/dist/esm/calcite-text-area.entry.js +5 -5
  136. package/dist/esm/calcite-tile.entry.js +1 -1
  137. package/dist/esm/calcite-time-picker.entry.js +4 -4
  138. package/dist/esm/calcite-tip-manager.entry.js +3 -3
  139. package/dist/esm/calcite-tip.entry.js +3 -3
  140. package/dist/esm/calcite-tree_3.entry.js +1 -1
  141. package/dist/esm/card-manager_3.entry.js +169 -79
  142. package/dist/esm/clean-url-bce022e6.js +567 -0
  143. package/dist/esm/crowdsource-manager.entry.js +22 -7
  144. package/dist/esm/{cs-1052c5ac.js → cs-af5f115e.js} +8 -8
  145. package/dist/esm/{da-b7ed9204.js → da-06d9e22c.js} +8 -8
  146. package/dist/esm/{date-bd5b879c.js → date-641ae749.js} +1 -1
  147. package/dist/esm/{de-at-a993e5ae.js → de-at-f55a700a.js} +8 -8
  148. package/dist/esm/{de-ch-acff745d.js → de-ch-7307675f.js} +8 -8
  149. package/dist/esm/{de-bb68e752.js → de-dc98363f.js} +8 -8
  150. package/dist/esm/{dom-37f2dec9.js → dom-2b326ec3.js} +1 -1
  151. package/dist/esm/{downloadUtils-42156cd8.js → downloadUtils-ac67a786.js} +297 -52
  152. package/dist/esm/edit-card_2.entry.js +8 -3
  153. package/dist/esm/{el-9de96ff0.js → el-91c64808.js} +8 -8
  154. package/dist/esm/{en-au-f68b6bde.js → en-au-df08cc25.js} +8 -8
  155. package/dist/esm/{en-ca-5360517e.js → en-ca-175f7c0f.js} +8 -8
  156. package/dist/esm/{en-gb-de0b3125.js → en-gb-90a08c7f.js} +8 -8
  157. package/dist/esm/{es-5ecbba77.js → es-5cb54b05.js} +8 -8
  158. package/dist/esm/{es-mx-aa126462.js → es-mx-3a0cb804.js} +8 -8
  159. package/dist/esm/{et-7113eeb8.js → et-eceac6dc.js} +8 -8
  160. package/dist/esm/{fi-ffa60f15.js → fi-26e1c14f.js} +8 -8
  161. package/dist/esm/{floating-ui-7cde67cf.js → floating-ui-9f8e4ed4.js} +1 -1
  162. package/dist/esm/{focusTrapComponent-ec344399.js → focusTrapComponent-ad2c3a31.js} +1 -1
  163. package/dist/esm/{form-24e6ef1d.js → form-0871d2c6.js} +1 -1
  164. package/dist/esm/{fr-681c5bf6.js → fr-12a5b0f7.js} +8 -8
  165. package/dist/esm/{fr-ch-9af1f8b1.js → fr-ch-e3406887.js} +8 -8
  166. package/dist/esm/{he-5188f277.js → he-61eba811.js} +8 -8
  167. package/dist/esm/{hi-6a31e3a4.js → hi-a50282b5.js} +8 -8
  168. package/dist/esm/{hr-0598e59d.js → hr-da8bffaf.js} +8 -8
  169. package/dist/esm/{hu-13cb9f41.js → hu-dab932f1.js} +8 -8
  170. package/dist/esm/{id-7f342499.js → id-de468947.js} +8 -8
  171. package/dist/esm/{index.es-f47c4153.js → index.es-f553598f.js} +3 -2
  172. package/dist/esm/{it-57d790f2.js → it-375d9936.js} +8 -8
  173. package/dist/esm/{it-ch-081af760.js → it-ch-7e663d63.js} +8 -8
  174. package/dist/esm/{ja-3affb68e.js → ja-36dbe39d.js} +8 -8
  175. package/dist/esm/{ko-736632aa.js → ko-858bc871.js} +8 -8
  176. package/dist/esm/{label-b6dfb4d5.js → label-b8caf984.js} +1 -1
  177. package/dist/esm/loader.js +1 -1
  178. package/dist/esm/{locale-146251f7.js → locale-00000ab4.js} +1 -1
  179. package/dist/esm/{lt-e7d9b1c3.js → lt-d6dfa7e4.js} +8 -8
  180. package/dist/esm/{lv-4d1a507e.js → lv-facd25c5.js} +8 -8
  181. package/dist/esm/map-select-tools_3.entry.js +10 -7
  182. package/dist/esm/{mapViewUtils-00a04d52.js → mapViewUtils-8141d8c1.js} +39 -53
  183. package/dist/esm/{mk-f960312d.js → mk-5ed05b6a.js} +8 -8
  184. package/dist/esm/{nb-4556b5e9.js → nb-936fc687.js} +8 -8
  185. package/dist/esm/{nl-8e281c01.js → nl-a923d626.js} +8 -8
  186. package/dist/esm/{pl-1460fd5a.js → pl-b1426275.js} +8 -8
  187. package/dist/esm/{pt-660332b6.js → pt-1ac2453f.js} +8 -8
  188. package/dist/esm/{pt-br-dba48f49.js → pt-br-7194cc5f.js} +8 -8
  189. package/dist/esm/public-notification.entry.js +7 -6
  190. package/dist/esm/{publicNotificationStore-90a6a274.js → publicNotificationStore-dcf39a55.js} +0 -4
  191. package/dist/esm/{ro-ac18f292.js → ro-518aaed1.js} +8 -8
  192. package/dist/esm/{ru-b914f6b7.js → ru-762127a3.js} +8 -8
  193. package/dist/esm/{shared-list-render-cc889757.js → shared-list-render-ec232615.js} +1 -1
  194. package/dist/esm/{sk-1be12963.js → sk-f367b7ba.js} +8 -8
  195. package/dist/esm/{sl-5d47e4e4.js → sl-052fd4d2.js} +8 -8
  196. package/dist/esm/solution-configuration.entry.js +25 -24
  197. package/dist/esm/solution-contents_3.entry.js +2 -1
  198. package/dist/esm/{solution-store-cf902566.js → solution-store-b29d50f7.js} +2 -562
  199. package/dist/esm/solutions-components.js +1 -1
  200. package/dist/esm/{sortableComponent-8a84709a.js → sortableComponent-ebd6bb72.js} +1 -1
  201. package/dist/esm/{sr-3281c92d.js → sr-4dc0fdb9.js} +8 -8
  202. package/dist/esm/{sv-e5169404.js → sv-bdc87a4d.js} +8 -8
  203. package/dist/esm/{t9n-d9c203e4.js → t9n-9791aa0c.js} +1 -1
  204. package/dist/esm/{th-937796b8.js → th-d9df674c.js} +8 -8
  205. package/dist/esm/{time-fa1151aa.js → time-73378c4a.js} +1 -1
  206. package/dist/esm/{tr-6d3b100b.js → tr-61e134eb.js} +8 -8
  207. package/dist/esm/{uk-a6edcacf.js → uk-ea3d8da7.js} +8 -8
  208. package/dist/esm/{utils-667cc396.js → utils-593fafd7.js} +1 -1
  209. package/dist/esm/{utils-24a35b5a.js → utils-bd52db7d.js} +2 -2
  210. package/dist/esm/{vi-bf4c179c.js → vi-ade1c25b.js} +8 -8
  211. package/dist/esm/{zh-cn-de1858cb.js → zh-cn-b8756118.js} +8 -8
  212. package/dist/esm/{zh-hk-12fa404f.js → zh-hk-d18c05d9.js} +8 -8
  213. package/dist/esm/{zh-tw-5c4220e5.js → zh-tw-9c98ff7c.js} +8 -8
  214. package/dist/solutions-components/{p-3b891cc4.entry.js → p-01fea8d5.entry.js} +1 -1
  215. package/dist/solutions-components/{p-65022e7f.entry.js → p-02ff64f4.entry.js} +1 -1
  216. package/dist/solutions-components/p-062254a6.entry.js +6 -0
  217. package/dist/solutions-components/{p-bff158ff.js → p-062d2f9a.js} +1 -1
  218. package/dist/solutions-components/{p-f4e5b7e5.entry.js → p-084bced1.entry.js} +1 -1
  219. package/dist/solutions-components/{p-c261335b.entry.js → p-088e4cfc.entry.js} +1 -1
  220. package/dist/solutions-components/p-08b52ed8.entry.js +6 -0
  221. package/dist/solutions-components/{p-96239d0d.js → p-08e35485.js} +1 -1
  222. package/dist/solutions-components/{p-3d3772fb.js → p-0d14d33a.js} +1 -1
  223. package/dist/solutions-components/{p-7f271c31.js → p-11550b3c.js} +3 -3
  224. package/dist/solutions-components/{p-ad19f9b0.entry.js → p-120c4098.entry.js} +1 -1
  225. package/dist/solutions-components/{p-45419d93.entry.js → p-12bcd474.entry.js} +1 -1
  226. package/dist/solutions-components/{p-bd82849c.entry.js → p-1597ec4b.entry.js} +1 -1
  227. package/dist/solutions-components/p-16362eb4.js +36 -0
  228. package/dist/solutions-components/{p-afb35c95.js → p-17d176b5.js} +14 -43
  229. package/dist/solutions-components/{p-3691a072.js → p-1ab414e0.js} +2 -2
  230. package/dist/solutions-components/{p-127c3866.js → p-1c5787b1.js} +1 -1
  231. package/dist/solutions-components/{p-b97886b3.entry.js → p-1d9a5198.entry.js} +1 -1
  232. package/dist/solutions-components/{p-8e3e1ce8.entry.js → p-1dd5c4e6.entry.js} +1 -1
  233. package/dist/solutions-components/{p-97b69f54.entry.js → p-1e62d118.entry.js} +1 -1
  234. package/dist/solutions-components/{p-537c34a4.entry.js → p-1fae3819.entry.js} +1 -1
  235. package/dist/solutions-components/{p-82f0b25b.js → p-21aa112d.js} +1 -1
  236. package/dist/solutions-components/{p-f8944f59.entry.js → p-252a9a7f.entry.js} +1 -1
  237. package/dist/solutions-components/{p-80ea5869.js → p-26b28806.js} +1 -1
  238. package/dist/solutions-components/{p-dac10448.js → p-280fd963.js} +3 -3
  239. package/dist/solutions-components/{p-79d7f324.js → p-29049359.js} +1 -1
  240. package/dist/solutions-components/{p-c033b8ec.entry.js → p-2b378389.entry.js} +1 -1
  241. package/dist/solutions-components/{p-19ec0463.js → p-2bdd1a5d.js} +1 -1
  242. package/dist/solutions-components/{p-cacfa6ae.js → p-2ee21e9d.js} +1 -1
  243. package/dist/solutions-components/{p-300f4299.js → p-2f42ae51.js} +1 -1
  244. package/dist/solutions-components/{p-418be467.js → p-30b3261c.js} +1 -1
  245. package/dist/solutions-components/{p-4d91443a.entry.js → p-32ba2223.entry.js} +1 -1
  246. package/dist/solutions-components/{p-702c6093.js → p-34673137.js} +1 -1
  247. package/dist/solutions-components/{p-61af54b9.entry.js → p-3566ee69.entry.js} +1 -1
  248. package/dist/solutions-components/{p-90a9126f.js → p-358b9cc8.js} +1 -1
  249. package/dist/solutions-components/p-3a8d82a2.js +11 -0
  250. package/dist/solutions-components/{p-628c170b.entry.js → p-3ab94526.entry.js} +1 -1
  251. package/dist/solutions-components/{p-9791fbf1.entry.js → p-3d7aa1b2.entry.js} +1 -1
  252. package/dist/solutions-components/{p-b1daad7e.js → p-3f7119c1.js} +1 -1
  253. package/dist/solutions-components/{p-f0f5ecb2.js → p-3fcd035e.js} +1 -1
  254. package/dist/solutions-components/{p-3766be72.js → p-419c9d89.js} +1 -1
  255. package/dist/solutions-components/p-453d1b31.entry.js +6 -0
  256. package/dist/solutions-components/{p-337f6adf.js → p-46918548.js} +1 -1
  257. package/dist/solutions-components/p-49e9e4e3.js +12 -0
  258. package/dist/solutions-components/p-4d942b0f.entry.js +36 -0
  259. package/dist/solutions-components/{p-85e0d2a3.js → p-4fc92419.js} +1 -1
  260. package/dist/solutions-components/{p-0d08a75d.entry.js → p-52afbe07.entry.js} +1 -1
  261. package/dist/solutions-components/{p-9391bb74.js → p-573d0763.js} +1 -1
  262. package/dist/solutions-components/p-57cf6784.entry.js +6 -0
  263. package/dist/solutions-components/{p-87971116.entry.js → p-59ef9461.entry.js} +1 -1
  264. package/dist/solutions-components/{p-25718b9f.entry.js → p-5e5749c0.entry.js} +1 -1
  265. package/dist/solutions-components/{p-54064b61.entry.js → p-5ff22d2e.entry.js} +1 -1
  266. package/dist/solutions-components/{p-4bd793ef.entry.js → p-617f32a0.entry.js} +1 -1
  267. package/dist/solutions-components/p-64b22d57.entry.js +6 -0
  268. package/dist/solutions-components/{p-747a1293.js → p-6510c06c.js} +1 -1
  269. package/dist/solutions-components/p-654dd5df.entry.js +6 -0
  270. package/dist/solutions-components/{p-1f69762c.js → p-65ba4d10.js} +1 -1
  271. package/dist/solutions-components/{p-4cb7cdb7.entry.js → p-65ffe4b0.entry.js} +1 -1
  272. package/dist/solutions-components/{p-1b4d6511.js → p-68007503.js} +1 -1
  273. package/dist/solutions-components/{p-e849d2ba.entry.js → p-6ba8483c.entry.js} +2 -2
  274. package/dist/solutions-components/{p-9961a2f9.entry.js → p-6c8c7b98.entry.js} +2 -2
  275. package/dist/solutions-components/{p-ff863f3d.entry.js → p-6e5d9ae9.entry.js} +1 -1
  276. package/dist/solutions-components/{p-b6a1c34f.entry.js → p-6ebf870c.entry.js} +1 -1
  277. package/dist/solutions-components/{p-d2d3e4b5.js → p-72f34a0a.js} +1 -1
  278. package/dist/solutions-components/{p-981fc8e4.entry.js → p-7359a6ac.entry.js} +1 -1
  279. package/dist/solutions-components/{p-9abb1c4c.entry.js → p-73fe6f7e.entry.js} +1 -1
  280. package/dist/solutions-components/{p-62e3adbb.js → p-7452d79a.js} +1 -1
  281. package/dist/solutions-components/{p-34169501.js → p-76c2c379.js} +1 -1
  282. package/dist/solutions-components/{p-941721ba.js → p-788aa5d7.js} +1 -1
  283. package/dist/solutions-components/{p-557d4cc5.js → p-79cc0531.js} +2 -2
  284. package/dist/solutions-components/{p-a19d8147.js → p-7a0fa011.js} +1 -1
  285. package/dist/solutions-components/{p-019fe9fe.entry.js → p-7a55cee6.entry.js} +3 -3
  286. package/dist/solutions-components/{p-48329056.entry.js → p-7bc63171.entry.js} +1 -1
  287. package/dist/solutions-components/{p-e7304151.entry.js → p-81664d83.entry.js} +1 -1
  288. package/dist/solutions-components/{p-9504c1b7.js → p-8354f486.js} +1 -1
  289. package/dist/solutions-components/{p-f812e3ee.entry.js → p-84dff306.entry.js} +1 -1
  290. package/dist/solutions-components/{p-a59dba2f.js → p-8594fe6b.js} +1 -1
  291. package/dist/solutions-components/{p-ae3ec77d.js → p-8b2d396e.js} +1 -1
  292. package/dist/solutions-components/{p-38cc8a4d.js → p-8ec6ea34.js} +1 -1
  293. package/dist/solutions-components/{p-da760d1d.entry.js → p-8ee00658.entry.js} +1 -1
  294. package/dist/solutions-components/{p-38211628.js → p-905fcf73.js} +1 -1
  295. package/dist/solutions-components/{p-e502ccce.entry.js → p-929909bc.entry.js} +1 -1
  296. package/dist/solutions-components/{p-dd5f68f2.js → p-948b5722.js} +1 -1
  297. package/dist/solutions-components/{p-39fe9a4c.js → p-956f3207.js} +1 -1
  298. package/dist/solutions-components/{p-f7aa542c.js → p-96287d23.js} +1 -1
  299. package/dist/solutions-components/{p-68630513.entry.js → p-964c0e7d.entry.js} +1 -1
  300. package/dist/solutions-components/{p-b09d8c0e.entry.js → p-98051370.entry.js} +1 -1
  301. package/dist/solutions-components/{p-efd70bf7.entry.js → p-9a94f48c.entry.js} +2 -2
  302. package/dist/solutions-components/{p-318790b8.js → p-9b94501c.js} +1 -1
  303. package/dist/solutions-components/{p-69e26726.js → p-9d4467a3.js} +1 -1
  304. package/dist/solutions-components/{p-f6cf9943.js → p-9e3c9cd2.js} +1 -1
  305. package/dist/solutions-components/{p-30542275.js → p-9fd59203.js} +1 -1
  306. package/dist/solutions-components/{p-d902b790.js → p-a201bffc.js} +1 -1
  307. package/dist/solutions-components/{p-89cbb86a.js → p-a26711e8.js} +3 -3
  308. package/dist/solutions-components/{p-1552c479.entry.js → p-a3729795.entry.js} +1 -1
  309. package/dist/solutions-components/{p-ae4ad673.entry.js → p-a47ed290.entry.js} +2 -2
  310. package/dist/solutions-components/{p-ca5be55f.entry.js → p-a5ef322f.entry.js} +2 -2
  311. package/dist/solutions-components/{p-3658ebd8.entry.js → p-a97e8d6a.entry.js} +1 -1
  312. package/dist/solutions-components/{p-2937523d.js → p-aaea9203.js} +1 -1
  313. package/dist/solutions-components/{p-b7093e6d.entry.js → p-ad1d56b1.entry.js} +1 -1
  314. package/dist/solutions-components/{p-0ca528ec.js → p-adeb0e8f.js} +1 -1
  315. package/dist/solutions-components/{p-31d2a105.entry.js → p-af63959a.entry.js} +1 -1
  316. package/dist/solutions-components/{p-fbd71543.entry.js → p-b1125581.entry.js} +2 -2
  317. package/dist/solutions-components/p-b1c8c6d7.entry.js +6 -0
  318. package/dist/solutions-components/{p-b029c6d8.js → p-b20a31c8.js} +1 -1
  319. package/dist/solutions-components/{p-71400268.js → p-b81131b3.js} +1 -1
  320. package/dist/solutions-components/{p-cc624b0c.entry.js → p-b89c5865.entry.js} +1 -1
  321. package/dist/solutions-components/{p-245d667e.js → p-b9b52743.js} +1 -1
  322. package/dist/solutions-components/p-b9d29f30.entry.js +6 -0
  323. package/dist/solutions-components/{p-0870f436.entry.js → p-ba99e562.entry.js} +1 -1
  324. package/dist/solutions-components/{p-2d614afc.js → p-bc548c06.js} +1 -1
  325. package/dist/solutions-components/{p-29b2f046.js → p-bccbdeb5.js} +1 -1
  326. package/dist/solutions-components/{p-f72e0965.entry.js → p-bd318e33.entry.js} +1 -1
  327. package/dist/solutions-components/{p-74aa84f6.js → p-bd766e49.js} +1 -1
  328. package/dist/solutions-components/{p-9b75102b.entry.js → p-c073d2d6.entry.js} +1 -1
  329. package/dist/solutions-components/p-c6b7e7ff.js +11 -0
  330. package/dist/solutions-components/{p-0503c78d.js → p-c8d0ce92.js} +44 -29
  331. package/dist/solutions-components/{p-dc80cb69.entry.js → p-ca0b3a2b.entry.js} +1 -1
  332. package/dist/solutions-components/{p-e9fcf408.js → p-d5228aed.js} +1 -1
  333. package/dist/solutions-components/{p-80b87453.js → p-d98caa4c.js} +1 -1
  334. package/dist/solutions-components/{p-45b829b5.js → p-dd9c065e.js} +1 -1
  335. package/dist/solutions-components/{p-05b2bdf9.js → p-dedc167c.js} +1 -1
  336. package/dist/solutions-components/{p-a16feeec.js → p-e4f9b782.js} +1 -1
  337. package/dist/solutions-components/{p-ac1bd870.entry.js → p-e572a692.entry.js} +1 -1
  338. package/dist/solutions-components/{p-74521615.entry.js → p-e5dda947.entry.js} +1 -1
  339. package/dist/solutions-components/{p-d793ec96.entry.js → p-e76949eb.entry.js} +5 -5
  340. package/dist/solutions-components/{p-bbfc2724.js → p-e7fbf2fe.js} +1 -1
  341. package/dist/solutions-components/{p-dda325a4.entry.js → p-e9ba0c7f.entry.js} +1 -1
  342. package/dist/solutions-components/{p-75e707d1.js → p-eb60ec2a.js} +1 -1
  343. package/dist/solutions-components/p-ecc95259.js +20 -0
  344. package/dist/solutions-components/{p-85791b16.entry.js → p-ee144348.entry.js} +1 -1
  345. package/dist/solutions-components/p-ee7e2f00.entry.js +34 -0
  346. package/dist/solutions-components/{p-4b4559f9.js → p-f03bed0c.js} +1 -1
  347. package/dist/solutions-components/{p-7a11983d.js → p-f5028a8e.js} +1 -1
  348. package/dist/solutions-components/{p-fb23ba4a.entry.js → p-f50cf603.entry.js} +1 -1
  349. package/dist/solutions-components/{p-f7b520ae.js → p-f7d8b6b3.js} +1 -1
  350. package/dist/solutions-components/{p-792fcd62.entry.js → p-fb0f2016.entry.js} +1 -1
  351. package/dist/solutions-components/solutions-components.esm.js +1 -1
  352. package/dist/solutions-components/utils/downloadUtils.ts +257 -85
  353. package/dist/solutions-components/utils/interfaces.ts +12 -1
  354. package/dist/solutions-components/utils/mapViewUtils.ts +41 -57
  355. package/dist/solutions-components/utils/publicNotificationStore.ts +0 -4
  356. package/dist/solutions-components/utils/test/downloadUtils.spec.tsx +2 -0
  357. package/dist/types/components/basemap-gallery/basemap-gallery.d.ts +5 -0
  358. package/dist/types/components/crowdsource-manager/crowdsource-manager.d.ts +45 -1
  359. package/dist/types/components/edit-card/edit-card.d.ts +8 -0
  360. package/dist/types/components/layer-table/layer-table.d.ts +82 -26
  361. package/dist/types/components/map-card/map-card.d.ts +25 -1
  362. package/dist/types/components/map-layer-picker/map-layer-picker.d.ts +50 -3
  363. package/dist/types/components/map-picker/map-picker.d.ts +2 -2
  364. package/dist/types/components/map-tools/map-tools.d.ts +21 -1
  365. package/dist/types/components/pdf-download/pdf-download.d.ts +4 -2
  366. package/dist/types/components.d.ts +218 -4
  367. package/dist/types/preact.d.ts +6 -3
  368. package/dist/types/utils/downloadUtils.d.ts +34 -16
  369. package/dist/types/utils/interfaces.d.ts +10 -1
  370. package/dist/types/utils/mapViewUtils.d.ts +8 -24
  371. package/dist/types/utils/publicNotificationStore.d.ts +0 -2
  372. package/package.json +8 -9
  373. package/dist/cjs/calcite-chip.cjs.entry.js +0 -259
  374. package/dist/cjs/calcite-notice.cjs.entry.js +0 -139
  375. package/dist/cjs/calcite-tooltip.cjs.entry.js +0 -439
  376. package/dist/esm/calcite-chip.entry.js +0 -255
  377. package/dist/esm/calcite-notice.entry.js +0 -135
  378. package/dist/esm/calcite-tooltip.entry.js +0 -435
  379. package/dist/solutions-components/p-06712292.js +0 -11
  380. package/dist/solutions-components/p-0a0c3764.js +0 -11
  381. package/dist/solutions-components/p-12a7c2db.entry.js +0 -6
  382. package/dist/solutions-components/p-1a47516a.entry.js +0 -22
  383. package/dist/solutions-components/p-2cff8331.entry.js +0 -6
  384. package/dist/solutions-components/p-3a7cd2b0.entry.js +0 -37
  385. package/dist/solutions-components/p-3e9fc0aa.entry.js +0 -11
  386. package/dist/solutions-components/p-712ea336.entry.js +0 -11
  387. package/dist/solutions-components/p-767002cd.js +0 -36
  388. package/dist/solutions-components/p-8e9d9e6a.js +0 -12
  389. package/dist/solutions-components/p-97088307.entry.js +0 -6
  390. package/dist/solutions-components/p-a16e6f5f.entry.js +0 -6
  391. package/dist/solutions-components/p-d118a76e.entry.js +0 -6
  392. package/dist/solutions-components/p-d54c2dfd.entry.js +0 -6
  393. package/dist/solutions-components/p-d7d466e8.entry.js +0 -6
  394. package/dist/solutions-components/p-ffbe89cf.entry.js +0 -6
@@ -19,7 +19,8 @@
19
19
  * limitations under the License.
20
20
  */
21
21
  import { Host, h } from "@stencil/core";
22
- import { getMapLayerHash, getMapLayerIds, getMapTableHash, getMapTableIds } from "../../utils/mapViewUtils";
22
+ import { getLocaleComponentStrings } from "../../utils/locale";
23
+ import { getMapLayerHash, getMapTableHash } from "../../utils/mapViewUtils";
23
24
  import state from "../../utils/publicNotificationStore";
24
25
  export class MapLayerPicker {
25
26
  constructor() {
@@ -27,13 +28,16 @@ export class MapLayerPicker {
27
28
  this.enabledLayerIds = [];
28
29
  this.enabledTableIds = [];
29
30
  this.mapView = undefined;
31
+ this.onlyShowUpdatableLayers = undefined;
30
32
  this.placeholderIcon = "";
31
33
  this.selectedIds = [];
32
34
  this.scale = "m";
33
35
  this.showTables = true;
34
36
  this.type = "select";
37
+ this._hasValidLayers = true;
35
38
  this.ids = [];
36
39
  this.selectedName = "";
40
+ this._translations = undefined;
37
41
  }
38
42
  //--------------------------------------------------------------------------
39
43
  //
@@ -46,10 +50,13 @@ export class MapLayerPicker {
46
50
  */
47
51
  async mapViewWatchHandler() {
48
52
  await this._setLayers();
49
- const hasLayers = Object.keys(state.layerNameHash).length > 0;
50
- const hasTables = Object.keys(state.tableNameHash).length > 0 && this.showTables;
51
- if (hasLayers || hasTables) {
52
- this._setSelectedLayer(this.ids[0], hasLayers ? "layer" : "table");
53
+ if (this.ids.length > 0) {
54
+ this._hasValidLayers = true;
55
+ this._setSelectedLayer(this.ids[0]);
56
+ }
57
+ else {
58
+ this._hasValidLayers = false;
59
+ this.noLayersFound.emit();
53
60
  }
54
61
  }
55
62
  //--------------------------------------------------------------------------
@@ -61,6 +68,7 @@ export class MapLayerPicker {
61
68
  * StencilJS: Called once just after the component is first connected to the DOM.
62
69
  */
63
70
  async componentWillLoad() {
71
+ await this._getTranslations();
64
72
  await this._setLayers();
65
73
  if (this.ids.length > 0 || this.selectedIds.length === 1) {
66
74
  this.layerSelectionChange.emit(this.selectedIds.length === 1 ? [this.selectedIds[0]] : [this.ids[0]]);
@@ -70,7 +78,7 @@ export class MapLayerPicker {
70
78
  * Renders the component.
71
79
  */
72
80
  render() {
73
- return (h(Host, null, h("div", { class: "map-layer-picker-container" }, h("div", { class: "map-layer-picker" }, this.type === "combobox" ? this._getCombobox() :
81
+ return (h(Host, null, h("div", { class: "map-layer-picker-container" }, h("div", { class: "map-layer-picker" }, !this._hasValidLayers ? this._getInvalidPlaceholder() : this.type === "combobox" ? this._getCombobox() :
74
82
  this.type === "select" ? this._getSelect() : this._getDropdown()))));
75
83
  }
76
84
  /**
@@ -83,9 +91,9 @@ export class MapLayerPicker {
83
91
  this._layerElement.value = id;
84
92
  }
85
93
  else if (this.type === "dropdown") {
86
- this.selectedName = Object.keys(state.layerNameHash).indexOf(id) > -1 ?
87
- state.layerNameHash[id] : Object.keys(state.tableNameHash).indexOf(id) > -1 ?
88
- state.tableNameHash[id] : "";
94
+ this.selectedName = Object.keys(this._layerNameHash).indexOf(id) > -1 ?
95
+ this._layerNameHash[id].name : Object.keys(this._tableNameHash).indexOf(id) > -1 ?
96
+ this._tableNameHash[id].name : "";
89
97
  }
90
98
  }
91
99
  }
@@ -94,6 +102,14 @@ export class MapLayerPicker {
94
102
  // Functions (protected)
95
103
  //
96
104
  //--------------------------------------------------------------------------
105
+ /**
106
+ * Create a notice to inform the user that no layers were found
107
+ *
108
+ * @returns Calcite Notice component with the message
109
+ */
110
+ _getInvalidPlaceholder() {
111
+ return (h("div", null, h("calcite-notice", { class: "height-100", icon: "exclamation-mark-triangle", id: "no-valid-layers", kind: "danger", open: true }, h("div", { slot: "message" }, this._translations.noLayersFound)), h("calcite-tooltip", { label: this._translations.enableEditUpdate, placement: "bottom", "reference-element": "no-valid-layers" }, h("span", null, this._translations.enableEditUpdate))));
112
+ }
97
113
  /**
98
114
  * Create a list of layers from the map
99
115
  *
@@ -144,16 +160,21 @@ export class MapLayerPicker {
144
160
  * @returns A dom node with the name of the layer or table
145
161
  */
146
162
  _getItem(id, itemType) {
147
- const name = itemType === "layer" ? state.layerNameHash[id] : state.tableNameHash[id];
148
- return this.type === "combobox" ? (h("calcite-combobox-item", { textLabel: name, value: id })) :
149
- this.type === "select" ? (h("calcite-option", { label: name, value: id })) :
150
- (h("calcite-dropdown-item", { onClick: () => void this._setSelectedLayer(id, itemType) }, name));
163
+ const item = itemType === "layer" ? this._layerNameHash[id] : this._tableNameHash[id];
164
+ const disabled = this.onlyShowUpdatableLayers ? !item.supportsUpdate : false;
165
+ const name = item.name;
166
+ return this.type === "combobox" ? (h("calcite-combobox-item", { disabled: disabled, textLabel: name, value: id })) :
167
+ this.type === "select" ? (h("calcite-option", { disabled: disabled, label: name, value: id })) :
168
+ (h("calcite-dropdown-item", { disabled: disabled, onClick: disabled ? undefined : () => void this._setSelectedLayer(id) }, name));
151
169
  }
152
170
  /**
153
171
  * Store the layer name based on the user selection
154
172
  */
155
- _setSelectedLayer(id, type) {
156
- this.selectedName = type === "layer" ? state.layerNameHash[id] : state.tableNameHash[id];
173
+ _setSelectedLayer(id) {
174
+ const item = Object.keys(this._layerNameHash).indexOf(id) > -1 ?
175
+ this._layerNameHash[id] : Object.keys(this._tableNameHash).indexOf(id) > -1 ?
176
+ this._tableNameHash[id] : undefined;
177
+ this.selectedName = item === null || item === void 0 ? void 0 : item.name;
157
178
  this.selectedIds = [id];
158
179
  this.layerSelectionChange.emit(this.selectedIds);
159
180
  }
@@ -164,25 +185,38 @@ export class MapLayerPicker {
164
185
  */
165
186
  async _setLayers() {
166
187
  if (this.mapView) {
167
- const mapLayerIds = await getMapLayerIds(this.mapView);
168
- const mapTableIds = this.showTables ? await getMapTableIds(this.mapView) : [];
188
+ await this._initLayerTableHash();
189
+ const mapLayerIds = this.onlyShowUpdatableLayers ?
190
+ this._getEditableIds(this._layerNameHash) : Object.keys(this._layerNameHash);
191
+ const mapTableIds = this.showTables ? this.onlyShowUpdatableLayers ?
192
+ this._getEditableIds(this._tableNameHash) : Object.keys(this._tableNameHash) : [];
169
193
  this.ids = [
170
194
  ...mapLayerIds.filter(n => { var _a; return ((_a = this.enabledLayerIds) === null || _a === void 0 ? void 0 : _a.length) > 0 ? this.enabledLayerIds.indexOf(n) > -1 : true; }),
171
195
  ...mapTableIds.filter(n => { var _a; return ((_a = this.enabledTableIds) === null || _a === void 0 ? void 0 : _a.length) > 0 ? this.enabledTableIds.indexOf(n) > -1 : true; }),
172
196
  ];
173
- await this._initStateHash();
174
197
  }
175
198
  }
199
+ /**
200
+ * Fetch the ids of all layers that support edits with the update capability
201
+ *
202
+ * @returns array of layer ids
203
+ */
204
+ _getEditableIds(hash) {
205
+ return Object.keys(hash).reduce((prev, cur) => {
206
+ if (hash[cur].supportsUpdate) {
207
+ prev.push(cur);
208
+ }
209
+ return prev;
210
+ }, []);
211
+ }
176
212
  /**
177
213
  * Create a layer id:title hash for layer name display
178
214
  *
179
215
  * @returns Promise when the operation has completed
180
216
  */
181
- async _initStateHash() {
182
- if (this.mapView) {
183
- state.layerNameHash = await getMapLayerHash(this.mapView);
184
- state.tableNameHash = this.showTables ? await getMapTableHash(this.mapView) : {};
185
- }
217
+ async _initLayerTableHash() {
218
+ this._layerNameHash = await getMapLayerHash(this.mapView, this.onlyShowUpdatableLayers);
219
+ this._tableNameHash = this.showTables ? await getMapTableHash(this.mapView, this.onlyShowUpdatableLayers) : {};
186
220
  }
187
221
  /**
188
222
  * Evaluate if the id exists in the current hash and verify if it should be excluded
@@ -190,9 +224,10 @@ export class MapLayerPicker {
190
224
  * @returns boolean when true the layer will be used in the current layer picker type
191
225
  */
192
226
  _validLayer(id) {
193
- const name = state.layerNameHash[id];
227
+ var _a;
228
+ const name = (_a = this._layerNameHash[id]) === null || _a === void 0 ? void 0 : _a.name;
194
229
  return name && state.managedLayers.indexOf(name) < 0 && (this.enabledLayerIds.length > 0 ?
195
- this.enabledLayerIds.indexOf(id) > -1 : name);
230
+ this.enabledLayerIds.indexOf(id) > -1 : true);
196
231
  }
197
232
  /**
198
233
  * Evaluate if the id exists in the current hash and verify if it should be excluded
@@ -200,7 +235,8 @@ export class MapLayerPicker {
200
235
  * @returns boolean when true the table will be used in the current layer picker type
201
236
  */
202
237
  _validTable(id) {
203
- const name = state.tableNameHash[id];
238
+ var _a;
239
+ const name = (_a = this._tableNameHash[id]) === null || _a === void 0 ? void 0 : _a.name;
204
240
  const validName = name && this.showTables;
205
241
  return validName ? state.managedTables.indexOf(name) < 0 &&
206
242
  (this.enabledTableIds.length > 0 ? this.enabledTableIds.indexOf(id) > -1 : true) : validName;
@@ -217,6 +253,16 @@ export class MapLayerPicker {
217
253
  this.layerSelectionChange.emit(this.selectedIds);
218
254
  }
219
255
  }
256
+ /**
257
+ * Fetches the component's translations
258
+ *
259
+ * @returns Promise when complete
260
+ * @protected
261
+ */
262
+ async _getTranslations() {
263
+ const messages = await getLocaleComponentStrings(this.el);
264
+ this._translations = messages[0];
265
+ }
220
266
  static get is() { return "map-layer-picker"; }
221
267
  static get originalStyleUrls() {
222
268
  return {
@@ -300,6 +346,23 @@ export class MapLayerPicker {
300
346
  "text": "esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html"
301
347
  }
302
348
  },
349
+ "onlyShowUpdatableLayers": {
350
+ "type": "boolean",
351
+ "mutable": false,
352
+ "complexType": {
353
+ "original": "boolean",
354
+ "resolved": "boolean",
355
+ "references": {}
356
+ },
357
+ "required": false,
358
+ "optional": false,
359
+ "docs": {
360
+ "tags": [],
361
+ "text": "boolean: When true only editable layers that support the update capability will be available"
362
+ },
363
+ "attribute": "only-show-updatable-layers",
364
+ "reflect": false
365
+ },
303
366
  "placeholderIcon": {
304
367
  "type": "string",
305
368
  "mutable": false,
@@ -392,12 +455,29 @@ export class MapLayerPicker {
392
455
  }
393
456
  static get states() {
394
457
  return {
458
+ "_hasValidLayers": {},
395
459
  "ids": {},
396
- "selectedName": {}
460
+ "selectedName": {},
461
+ "_translations": {}
397
462
  };
398
463
  }
399
464
  static get events() {
400
465
  return [{
466
+ "method": "noLayersFound",
467
+ "name": "noLayersFound",
468
+ "bubbles": true,
469
+ "cancelable": true,
470
+ "composed": true,
471
+ "docs": {
472
+ "tags": [],
473
+ "text": "Emitted on demand when no valid layers are found"
474
+ },
475
+ "complexType": {
476
+ "original": "void",
477
+ "resolved": "void",
478
+ "references": {}
479
+ }
480
+ }, {
401
481
  "method": "layerSelectionChange",
402
482
  "name": "layerSelectionChange",
403
483
  "bubbles": true,
@@ -48,7 +48,7 @@
48
48
  flex-direction: column;
49
49
  overflow: hidden;
50
50
  animation: calcite-scrim-fade-in var(--calcite-internal-animation-timing-medium) ease-in-out;
51
- background-color: var(--calcite-scrim-background);
51
+ background-color: var(--calcite-ui-background);
52
52
  z-index: 1000;
53
53
  width: 100%;
54
54
  height: -moz-fit-content;
@@ -62,3 +62,7 @@
62
62
  .action-bar-color {
63
63
  background-color: var(--calcite-ui-border-3) !important;
64
64
  }
65
+
66
+ .align-center {
67
+ align-items: center;
68
+ }
@@ -46,9 +46,9 @@ export class MapPicker {
46
46
  /**
47
47
  * Called each time the mapInfos prop is changed.
48
48
  */
49
- mapInfosWatchHandler(v, oldV) {
49
+ async mapInfosWatchHandler(v, oldV) {
50
50
  if (v && JSON.stringify(v) !== JSON.stringify(oldV)) {
51
- this.mapInfoChange.emit(v[0]);
51
+ this._webMapSelected(v[0]);
52
52
  }
53
53
  }
54
54
  //--------------------------------------------------------------------------
@@ -73,7 +73,7 @@ export class MapPicker {
73
73
  /**
74
74
  * Called once after the component has loaded
75
75
  */
76
- componentDidLoad() {
76
+ async componentDidLoad() {
77
77
  const webMapInfo = this.mapInfos && this.mapInfos.length > 0 ? this.mapInfos[0] : undefined;
78
78
  if (webMapInfo) {
79
79
  this._webMapSelected(webMapInfo);
@@ -22,6 +22,11 @@ import { Host, h } from "@stencil/core";
22
22
  import { getLocaleComponentStrings } from "../../utils/locale";
23
23
  export class MapTools {
24
24
  constructor() {
25
+ this.enableLegend = undefined;
26
+ this.enableFullscreen = undefined;
27
+ this.enableSearch = undefined;
28
+ this.enableBasemap = undefined;
29
+ this.basemapConfig = undefined;
25
30
  this.layout = "vertical";
26
31
  this.mapView = undefined;
27
32
  this.searchConfiguration = undefined;
@@ -125,7 +130,16 @@ export class MapTools {
125
130
  const fullscreenIcon = this._showFullscreen ? "full-screen-exit" : "full-screen";
126
131
  const fullscreenTip = this._showFullscreen ? this._translations.exitFullscreen : this._translations.enterFullscreen;
127
132
  const expandTip = this._showTools ? this._translations.collapse : this._translations.expand;
128
- return (h(Host, null, h("div", null, h("div", { class: "box-shadow" }, this._getActionGroup(toggleIcon, false, expandTip, () => this._toggleTools())), h("div", { class: `margin-top-1-2 box-shadow ${toolsClass}` }, this._getActionGroup("legend", false, this._translations.legend, () => this._showLegend()), this._getActionGroup("magnifying-glass", false, this._translations.search, () => this._search()), this._getActionGroup(fullscreenIcon, false, fullscreenTip, () => this._expand()), this._getActionGroup("basemap", false, this._translations.basemap, () => this._toggleBasemapPicker()))), h("basemap-gallery", { class: basemapClass, mapView: this.mapView, ref: (el) => { this._basemapElement = el; } }), h("map-search", { class: searchClass, mapView: this.mapView, ref: (el) => { this._searchElement = el; }, searchConfiguration: this.searchConfiguration }), h("map-legend", { class: legendClass, mapView: this.mapView, ref: (el) => { this._legendElement = el; } }), h("map-fullscreen", { class: fullscreenClass, mapView: this.mapView, ref: (el) => { this._fullscreenElement = el; } })));
133
+ const containerClass = !this.enableBasemap && !this.enableFullscreen && !this.enableLegend && !this.enableSearch ? "display-none" : "";
134
+ return (h(Host, null, h("div", { class: containerClass }, h("div", { class: "box-shadow" }, this._getActionGroup(toggleIcon, false, expandTip, () => this._toggleTools())), h("div", { class: `margin-top-1-2 box-shadow ${toolsClass}` }, this.enableLegend ?
135
+ this._getActionGroup("legend", false, this._translations.legend, () => this._showLegend()) :
136
+ undefined, this.enableSearch ?
137
+ this._getActionGroup("magnifying-glass", false, this._translations.search, () => this._search()) :
138
+ undefined, this.enableFullscreen ?
139
+ this._getActionGroup(fullscreenIcon, false, fullscreenTip, () => this._expand()) :
140
+ undefined, this.enableBasemap ?
141
+ this._getActionGroup("basemap", false, this._translations.basemap, () => this._toggleBasemapPicker()) :
142
+ undefined)), h("basemap-gallery", { basemapConfig: this.basemapConfig, class: basemapClass, mapView: this.mapView, ref: (el) => { this._basemapElement = el; } }), h("map-search", { class: searchClass, mapView: this.mapView, ref: (el) => { this._searchElement = el; }, searchConfiguration: this.searchConfiguration }), h("map-legend", { class: legendClass, mapView: this.mapView, ref: (el) => { this._legendElement = el; } }), h("map-fullscreen", { class: fullscreenClass, mapView: this.mapView, ref: (el) => { this._fullscreenElement = el; } })));
129
143
  }
130
144
  //--------------------------------------------------------------------------
131
145
  //
@@ -217,6 +231,95 @@ export class MapTools {
217
231
  }
218
232
  static get properties() {
219
233
  return {
234
+ "enableLegend": {
235
+ "type": "boolean",
236
+ "mutable": false,
237
+ "complexType": {
238
+ "original": "boolean",
239
+ "resolved": "boolean",
240
+ "references": {}
241
+ },
242
+ "required": false,
243
+ "optional": false,
244
+ "docs": {
245
+ "tags": [],
246
+ "text": "boolean: when true the legend widget will be available"
247
+ },
248
+ "attribute": "enable-legend",
249
+ "reflect": false
250
+ },
251
+ "enableFullscreen": {
252
+ "type": "boolean",
253
+ "mutable": false,
254
+ "complexType": {
255
+ "original": "boolean",
256
+ "resolved": "boolean",
257
+ "references": {}
258
+ },
259
+ "required": false,
260
+ "optional": false,
261
+ "docs": {
262
+ "tags": [],
263
+ "text": "boolean: when true the fullscreen widget will be available"
264
+ },
265
+ "attribute": "enable-fullscreen",
266
+ "reflect": false
267
+ },
268
+ "enableSearch": {
269
+ "type": "boolean",
270
+ "mutable": false,
271
+ "complexType": {
272
+ "original": "boolean",
273
+ "resolved": "boolean",
274
+ "references": {}
275
+ },
276
+ "required": false,
277
+ "optional": false,
278
+ "docs": {
279
+ "tags": [],
280
+ "text": "boolean: when true the search widget will be available"
281
+ },
282
+ "attribute": "enable-search",
283
+ "reflect": false
284
+ },
285
+ "enableBasemap": {
286
+ "type": "boolean",
287
+ "mutable": false,
288
+ "complexType": {
289
+ "original": "boolean",
290
+ "resolved": "boolean",
291
+ "references": {}
292
+ },
293
+ "required": false,
294
+ "optional": false,
295
+ "docs": {
296
+ "tags": [],
297
+ "text": "boolean: when true the basemap widget will be available"
298
+ },
299
+ "attribute": "enable-basemap",
300
+ "reflect": false
301
+ },
302
+ "basemapConfig": {
303
+ "type": "unknown",
304
+ "mutable": false,
305
+ "complexType": {
306
+ "original": "IBasemapConfig",
307
+ "resolved": "IBasemapConfig",
308
+ "references": {
309
+ "IBasemapConfig": {
310
+ "location": "import",
311
+ "path": "../../utils/interfaces",
312
+ "id": "src/utils/interfaces.ts::IBasemapConfig"
313
+ }
314
+ }
315
+ },
316
+ "required": false,
317
+ "optional": false,
318
+ "docs": {
319
+ "tags": [],
320
+ "text": "IBasemapConfig: List of any basemaps to filter out from the basemap widget"
321
+ }
322
+ },
220
323
  "layout": {
221
324
  "type": "string",
222
325
  "mutable": false,
@@ -43,27 +43,29 @@ export class PdfDownload {
43
43
  /**
44
44
  * Downloads csv of mailing labels for the provided list of ids
45
45
  *
46
+ * @param webmap Webmap containing layer
46
47
  * @param exportInfos Information about items to be exported
47
48
  * @param removeDuplicates When true a single label is generated when multiple featues have a shared address value
48
49
  * @param addColumnTitle Indicates if column headings should be included in output
49
50
  * @returns Promise resolving when function is done
50
51
  */
51
- async downloadCSV(exportInfos, removeDuplicates, addColumnTitle = true) {
52
- return downloadUtils.downloadCSV(exportInfos, true, // formatUsingLayerPopup
52
+ async downloadCSV(webmap, exportInfos, removeDuplicates, addColumnTitle = true) {
53
+ return downloadUtils.downloadCSV(webmap, exportInfos, true, // formatUsingLayerPopup
53
54
  removeDuplicates, addColumnTitle);
54
55
  }
55
56
  /**
56
57
  * Downloads pdf of mailing labels for the provided list of ids
57
58
  *
59
+ * @param webmap Webmap containing layer
58
60
  * @param exportInfos Information about items to be exported
59
61
  * @param removeDuplicates When true a single label is generated when multiple featues have a shared address value
60
62
  * @param title Title for each page
61
63
  * @param initialImageDataUrl Data URL of image for first page
62
64
  * @returns Promise resolving when function is done
63
65
  */
64
- async downloadPDF(exportInfos, removeDuplicates = false, title = "", initialImageDataUrl = "") {
66
+ async downloadPDF(webmap, exportInfos, removeDuplicates = false, title = "", initialImageDataUrl = "") {
65
67
  var _c;
66
- return downloadUtils.downloadPDF(exportInfos, (_c = this._labelInfoElement.selectedOption) === null || _c === void 0 ? void 0 : _c.value, removeDuplicates, title, initialImageDataUrl);
68
+ return downloadUtils.downloadPDF(webmap, exportInfos, (_c = this._labelInfoElement.selectedOption) === null || _c === void 0 ? void 0 : _c.value, removeDuplicates, title, initialImageDataUrl);
67
69
  }
68
70
  //--------------------------------------------------------------------------
69
71
  //
@@ -217,8 +219,14 @@ export class PdfDownload {
217
219
  return {
218
220
  "downloadCSV": {
219
221
  "complexType": {
220
- "signature": "(exportInfos: IExportInfos, removeDuplicates: boolean, addColumnTitle?: boolean) => Promise<void>",
222
+ "signature": "(webmap: __esri.Map, exportInfos: IExportInfos, removeDuplicates: boolean, addColumnTitle?: boolean) => Promise<void>",
221
223
  "parameters": [{
224
+ "tags": [{
225
+ "name": "param",
226
+ "text": "webmap Webmap containing layer"
227
+ }],
228
+ "text": "Webmap containing layer"
229
+ }, {
222
230
  "tags": [{
223
231
  "name": "param",
224
232
  "text": "exportInfos Information about items to be exported"
@@ -242,6 +250,10 @@ export class PdfDownload {
242
250
  "location": "global",
243
251
  "id": "global::Promise"
244
252
  },
253
+ "___esri": {
254
+ "location": "global",
255
+ "id": "global::___esri"
256
+ },
245
257
  "IExportInfos": {
246
258
  "location": "import",
247
259
  "path": "../../utils/interfaces",
@@ -253,6 +265,9 @@ export class PdfDownload {
253
265
  "docs": {
254
266
  "text": "Downloads csv of mailing labels for the provided list of ids",
255
267
  "tags": [{
268
+ "name": "param",
269
+ "text": "webmap Webmap containing layer"
270
+ }, {
256
271
  "name": "param",
257
272
  "text": "exportInfos Information about items to be exported"
258
273
  }, {
@@ -269,8 +284,14 @@ export class PdfDownload {
269
284
  },
270
285
  "downloadPDF": {
271
286
  "complexType": {
272
- "signature": "(exportInfos: IExportInfos, removeDuplicates?: boolean, title?: string, initialImageDataUrl?: string) => Promise<void>",
287
+ "signature": "(webmap: __esri.Map, exportInfos: IExportInfos, removeDuplicates?: boolean, title?: string, initialImageDataUrl?: string) => Promise<void>",
273
288
  "parameters": [{
289
+ "tags": [{
290
+ "name": "param",
291
+ "text": "webmap Webmap containing layer"
292
+ }],
293
+ "text": "Webmap containing layer"
294
+ }, {
274
295
  "tags": [{
275
296
  "name": "param",
276
297
  "text": "exportInfos Information about items to be exported"
@@ -300,6 +321,10 @@ export class PdfDownload {
300
321
  "location": "global",
301
322
  "id": "global::Promise"
302
323
  },
324
+ "___esri": {
325
+ "location": "global",
326
+ "id": "global::___esri"
327
+ },
303
328
  "IExportInfos": {
304
329
  "location": "import",
305
330
  "path": "../../utils/interfaces",
@@ -315,6 +340,9 @@ export class PdfDownload {
315
340
  "docs": {
316
341
  "text": "Downloads pdf of mailing labels for the provided list of ids",
317
342
  "tags": [{
343
+ "name": "param",
344
+ "text": "webmap Webmap containing layer"
345
+ }, {
318
346
  "name": "param",
319
347
  "text": "exportInfos Information about items to be exported"
320
348
  }, {
@@ -422,7 +422,7 @@ export class PublicNotification {
422
422
  */
423
423
  async _getNumDuplicates() {
424
424
  const exportInfos = this._getExportInfos();
425
- const labels = await consolidateLabels(exportInfos);
425
+ const labels = await consolidateLabels(this.mapView.map, exportInfos);
426
426
  const duplicatesRemoved = removeDuplicateLabels(labels);
427
427
  return labels.length - duplicatesRemoved.length;
428
428
  }
@@ -633,12 +633,12 @@ export class PublicNotification {
633
633
  }
634
634
  this._fetchingData = true;
635
635
  // Create the labels for each selection set
636
- await this._downloadTools.downloadPDF(exportInfos, this._removeDuplicates.checked, this._addTitle ? this._titleElement.value : "", initialImageDataUrl);
636
+ await this._downloadTools.downloadPDF(this.mapView.map, exportInfos, this._removeDuplicates.checked, this._addTitle ? this._titleElement.value : "", initialImageDataUrl);
637
637
  this._fetchingData = false;
638
638
  }
639
639
  if (this._exportType === EExportType.CSV) {
640
640
  this._fetchingData = true;
641
- await this._downloadTools.downloadCSV(exportInfos, this._removeDuplicates.checked);
641
+ await this._downloadTools.downloadCSV(this.mapView.map, exportInfos, this._removeDuplicates.checked);
642
642
  this._fetchingData = false;
643
643
  }
644
644
  }