@esri/solutions-components 0.6.12 → 0.6.14

Sign up to get free protection for your applications and to get access to all the features.
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
@@ -0,0 +1,573 @@
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
+ 'use strict';
7
+
8
+ /*! *****************************************************************************
9
+ Copyright (c) Microsoft Corporation.
10
+
11
+ Permission to use, copy, modify, and/or distribute this software for any
12
+ purpose with or without fee is hereby granted.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
15
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
16
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
17
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
18
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
19
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
20
+ PERFORMANCE OF THIS SOFTWARE.
21
+ ***************************************************************************** */
22
+ /* global Reflect, Promise */
23
+
24
+ var extendStatics = function(d, b) {
25
+ extendStatics = Object.setPrototypeOf ||
26
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
27
+ function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
28
+ return extendStatics(d, b);
29
+ };
30
+
31
+ function __extends(d, b) {
32
+ extendStatics(d, b);
33
+ function __() { this.constructor = d; }
34
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
35
+ }
36
+
37
+ exports.__assign = function() {
38
+ exports.__assign = Object.assign || function __assign(t) {
39
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
40
+ s = arguments[i];
41
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
42
+ }
43
+ return t;
44
+ };
45
+ return exports.__assign.apply(this, arguments);
46
+ };
47
+
48
+ /* Copyright (c) 2017 Environmental Systems Research Institute, Inc.
49
+ * Apache-2.0 */
50
+ /**
51
+ * Checks parameters to see if we should use FormData to send the request
52
+ * @param params The object whose keys will be encoded.
53
+ * @return A boolean indicating if FormData will be required.
54
+ */
55
+ function requiresFormData(params) {
56
+ return Object.keys(params).some(function (key) {
57
+ var value = params[key];
58
+ if (!value) {
59
+ return false;
60
+ }
61
+ if (value && value.toParam) {
62
+ value = value.toParam();
63
+ }
64
+ var type = value.constructor.name;
65
+ switch (type) {
66
+ case "Array":
67
+ return false;
68
+ case "Object":
69
+ return false;
70
+ case "Date":
71
+ return false;
72
+ case "Function":
73
+ return false;
74
+ case "Boolean":
75
+ return false;
76
+ case "String":
77
+ return false;
78
+ case "Number":
79
+ return false;
80
+ default:
81
+ return true;
82
+ }
83
+ });
84
+ }
85
+ /**
86
+ * Converts parameters to the proper representation to send to the ArcGIS REST API.
87
+ * @param params The object whose keys will be encoded.
88
+ * @return A new object with properly encoded values.
89
+ */
90
+ function processParams(params) {
91
+ var newParams = {};
92
+ Object.keys(params).forEach(function (key) {
93
+ var _a, _b;
94
+ var param = params[key];
95
+ if (param && param.toParam) {
96
+ param = param.toParam();
97
+ }
98
+ if (!param &&
99
+ param !== 0 &&
100
+ typeof param !== "boolean" &&
101
+ typeof param !== "string") {
102
+ return;
103
+ }
104
+ var type = param.constructor.name;
105
+ var value;
106
+ // properly encodes objects, arrays and dates for arcgis.com and other services.
107
+ // ported from https://github.com/Esri/esri-leaflet/blob/master/src/Request.js#L22-L30
108
+ // also see https://github.com/Esri/arcgis-rest-js/issues/18:
109
+ // null, undefined, function are excluded. If you want to send an empty key you need to send an empty string "".
110
+ switch (type) {
111
+ case "Array":
112
+ // Based on the first element of the array, classify array as an array of arrays, an array of objects
113
+ // to be stringified, or an array of non-objects to be comma-separated
114
+ // eslint-disable-next-line no-case-declarations
115
+ var firstElementType = (_b = (_a = param[0]) === null || _a === void 0 ? void 0 : _a.constructor) === null || _b === void 0 ? void 0 : _b.name;
116
+ value =
117
+ firstElementType === "Array" ? param : // pass thru array of arrays
118
+ firstElementType === "Object" ? JSON.stringify(param) : // stringify array of objects
119
+ param.join(","); // join other types of array elements
120
+ break;
121
+ case "Object":
122
+ value = JSON.stringify(param);
123
+ break;
124
+ case "Date":
125
+ value = param.valueOf();
126
+ break;
127
+ case "Function":
128
+ value = null;
129
+ break;
130
+ case "Boolean":
131
+ value = param + "";
132
+ break;
133
+ default:
134
+ value = param;
135
+ break;
136
+ }
137
+ if (value || value === 0 || typeof value === "string" || Array.isArray(value)) {
138
+ newParams[key] = value;
139
+ }
140
+ });
141
+ return newParams;
142
+ }
143
+
144
+ /* Copyright (c) 2017 Environmental Systems Research Institute, Inc.
145
+ * Apache-2.0 */
146
+ /**
147
+ * Encodes keys and parameters for use in a URL's query string.
148
+ *
149
+ * @param key Parameter's key
150
+ * @param value Parameter's value
151
+ * @returns Query string with key and value pairs separated by "&"
152
+ */
153
+ function encodeParam(key, value) {
154
+ // For array of arrays, repeat key=value for each element of containing array
155
+ if (Array.isArray(value) && value[0] && Array.isArray(value[0])) {
156
+ return value.map(function (arrayElem) { return encodeParam(key, arrayElem); }).join("&");
157
+ }
158
+ return encodeURIComponent(key) + "=" + encodeURIComponent(value);
159
+ }
160
+ /**
161
+ * Encodes the passed object as a query string.
162
+ *
163
+ * @param params An object to be encoded.
164
+ * @returns An encoded query string.
165
+ */
166
+ function encodeQueryString(params) {
167
+ var newParams = processParams(params);
168
+ return Object.keys(newParams)
169
+ .map(function (key) {
170
+ return encodeParam(key, newParams[key]);
171
+ })
172
+ .join("&");
173
+ }
174
+
175
+ /* Copyright (c) 2017 Environmental Systems Research Institute, Inc.
176
+ * Apache-2.0 */
177
+ /**
178
+ * Encodes parameters in a [FormData](https://developer.mozilla.org/en-US/docs/Web/API/FormData) object in browsers or in a [FormData](https://github.com/form-data/form-data) in Node.js
179
+ *
180
+ * @param params An object to be encoded.
181
+ * @returns The complete [FormData](https://developer.mozilla.org/en-US/docs/Web/API/FormData) object.
182
+ */
183
+ function encodeFormData(params, forceFormData) {
184
+ // see https://github.com/Esri/arcgis-rest-js/issues/499 for more info.
185
+ var useFormData = requiresFormData(params) || forceFormData;
186
+ var newParams = processParams(params);
187
+ if (useFormData) {
188
+ var formData_1 = new FormData();
189
+ Object.keys(newParams).forEach(function (key) {
190
+ if (typeof Blob !== "undefined" && newParams[key] instanceof Blob) {
191
+ /* To name the Blob:
192
+ 1. look to an alternate request parameter called 'fileName'
193
+ 2. see if 'name' has been tacked onto the Blob manually
194
+ 3. if all else fails, use the request parameter
195
+ */
196
+ var filename = newParams["fileName"] || newParams[key].name || key;
197
+ formData_1.append(key, newParams[key], filename);
198
+ }
199
+ else {
200
+ formData_1.append(key, newParams[key]);
201
+ }
202
+ });
203
+ return formData_1;
204
+ }
205
+ else {
206
+ return encodeQueryString(params);
207
+ }
208
+ }
209
+
210
+ /* Copyright (c) 2017 Environmental Systems Research Institute, Inc.
211
+ * Apache-2.0 */
212
+ // TypeScript 2.1 no longer allows you to extend built in types. See https://github.com/Microsoft/TypeScript/issues/12790#issuecomment-265981442
213
+ // and https://github.com/Microsoft/TypeScript-wiki/blob/master/Breaking-Changes.md#extending-built-ins-like-error-array-and-map-may-no-longer-work
214
+ //
215
+ // This code is from MDN https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error#Custom_Error_Types.
216
+ var ArcGISRequestError = /** @class */ (function () {
217
+ /**
218
+ * Create a new `ArcGISRequestError` object.
219
+ *
220
+ * @param message - The error message from the API
221
+ * @param code - The error code from the API
222
+ * @param response - The original response from the API that caused the error
223
+ * @param url - The original url of the request
224
+ * @param options - The original options and parameters of the request
225
+ */
226
+ function ArcGISRequestError(message, code, response, url, options) {
227
+ message = message || "UNKNOWN_ERROR";
228
+ code = code || "UNKNOWN_ERROR_CODE";
229
+ this.name = "ArcGISRequestError";
230
+ this.message =
231
+ code === "UNKNOWN_ERROR_CODE" ? message : code + ": " + message;
232
+ this.originalMessage = message;
233
+ this.code = code;
234
+ this.response = response;
235
+ this.url = url;
236
+ this.options = options;
237
+ }
238
+ return ArcGISRequestError;
239
+ }());
240
+ ArcGISRequestError.prototype = Object.create(Error.prototype);
241
+ ArcGISRequestError.prototype.constructor = ArcGISRequestError;
242
+
243
+ /* Copyright (c) 2017-2018 Environmental Systems Research Institute, Inc.
244
+ * Apache-2.0 */
245
+ var NODEJS_DEFAULT_REFERER_HEADER = "@esri/arcgis-rest-js";
246
+ var DEFAULT_ARCGIS_REQUEST_OPTIONS = {
247
+ httpMethod: "POST",
248
+ params: {
249
+ f: "json",
250
+ },
251
+ };
252
+ var ArcGISAuthError = /** @class */ (function (_super) {
253
+ __extends(ArcGISAuthError, _super);
254
+ /**
255
+ * Create a new `ArcGISAuthError` object.
256
+ *
257
+ * @param message - The error message from the API
258
+ * @param code - The error code from the API
259
+ * @param response - The original response from the API that caused the error
260
+ * @param url - The original url of the request
261
+ * @param options - The original options of the request
262
+ */
263
+ function ArcGISAuthError(message, code, response, url, options) {
264
+ if (message === void 0) { message = "AUTHENTICATION_ERROR"; }
265
+ if (code === void 0) { code = "AUTHENTICATION_ERROR_CODE"; }
266
+ var _this = _super.call(this, message, code, response, url, options) || this;
267
+ _this.name = "ArcGISAuthError";
268
+ _this.message =
269
+ code === "AUTHENTICATION_ERROR_CODE" ? message : code + ": " + message;
270
+ return _this;
271
+ }
272
+ ArcGISAuthError.prototype.retry = function (getSession, retryLimit) {
273
+ var _this = this;
274
+ if (retryLimit === void 0) { retryLimit = 3; }
275
+ var tries = 0;
276
+ var retryRequest = function (resolve, reject) {
277
+ getSession(_this.url, _this.options)
278
+ .then(function (session) {
279
+ var newOptions = exports.__assign(exports.__assign({}, _this.options), { authentication: session });
280
+ tries = tries + 1;
281
+ return request(_this.url, newOptions);
282
+ })
283
+ .then(function (response) {
284
+ resolve(response);
285
+ })
286
+ .catch(function (e) {
287
+ if (e.name === "ArcGISAuthError" && tries < retryLimit) {
288
+ retryRequest(resolve, reject);
289
+ }
290
+ else if (e.name === "ArcGISAuthError" && tries >= retryLimit) {
291
+ reject(_this);
292
+ }
293
+ else {
294
+ reject(e);
295
+ }
296
+ });
297
+ };
298
+ return new Promise(function (resolve, reject) {
299
+ retryRequest(resolve, reject);
300
+ });
301
+ };
302
+ return ArcGISAuthError;
303
+ }(ArcGISRequestError));
304
+ /**
305
+ * Checks for errors in a JSON response from the ArcGIS REST API. If there are no errors, it will return the `data` passed in. If there is an error, it will throw an `ArcGISRequestError` or `ArcGISAuthError`.
306
+ *
307
+ * @param data The response JSON to check for errors.
308
+ * @param url The url of the original request
309
+ * @param params The parameters of the original request
310
+ * @param options The options of the original request
311
+ * @returns The data that was passed in the `data` parameter
312
+ */
313
+ function checkForErrors(response, url, params, options, originalAuthError) {
314
+ // this is an error message from billing.arcgis.com backend
315
+ if (response.code >= 400) {
316
+ var message = response.message, code = response.code;
317
+ throw new ArcGISRequestError(message, code, response, url, options);
318
+ }
319
+ // error from ArcGIS Online or an ArcGIS Portal or server instance.
320
+ if (response.error) {
321
+ var _a = response.error, message = _a.message, code = _a.code, messageCode = _a.messageCode;
322
+ var errorCode = messageCode || code || "UNKNOWN_ERROR_CODE";
323
+ if (code === 498 ||
324
+ code === 499 ||
325
+ messageCode === "GWM_0003" ||
326
+ (code === 400 && message === "Unable to generate token.")) {
327
+ if (originalAuthError) {
328
+ throw originalAuthError;
329
+ }
330
+ else {
331
+ throw new ArcGISAuthError(message, errorCode, response, url, options);
332
+ }
333
+ }
334
+ throw new ArcGISRequestError(message, errorCode, response, url, options);
335
+ }
336
+ // error from a status check
337
+ if (response.status === "failed" || response.status === "failure") {
338
+ var message = void 0;
339
+ var code = "UNKNOWN_ERROR_CODE";
340
+ try {
341
+ message = JSON.parse(response.statusMessage).message;
342
+ code = JSON.parse(response.statusMessage).code;
343
+ }
344
+ catch (e) {
345
+ message = response.statusMessage || response.message;
346
+ }
347
+ throw new ArcGISRequestError(message, code, response, url, options);
348
+ }
349
+ return response;
350
+ }
351
+ /**
352
+ * ```js
353
+ * import { request } from '@esri/arcgis-rest-request';
354
+ * //
355
+ * request('https://www.arcgis.com/sharing/rest')
356
+ * .then(response) // response.currentVersion === 5.2
357
+ * //
358
+ * request('https://www.arcgis.com/sharing/rest', {
359
+ * httpMethod: "GET"
360
+ * })
361
+ * //
362
+ * request('https://www.arcgis.com/sharing/rest/search', {
363
+ * params: { q: 'parks' }
364
+ * })
365
+ * .then(response) // response.total => 78379
366
+ * ```
367
+ * Generic method for making HTTP requests to ArcGIS REST API endpoints.
368
+ *
369
+ * @param url - The URL of the ArcGIS REST API endpoint.
370
+ * @param requestOptions - Options for the request, including parameters relevant to the endpoint.
371
+ * @returns A Promise that will resolve with the data from the response.
372
+ */
373
+ function request(url, requestOptions) {
374
+ if (requestOptions === void 0) { requestOptions = { params: { f: "json" } }; }
375
+ var options = exports.__assign(exports.__assign(exports.__assign({ httpMethod: "POST" }, DEFAULT_ARCGIS_REQUEST_OPTIONS), requestOptions), {
376
+ params: exports.__assign(exports.__assign({}, DEFAULT_ARCGIS_REQUEST_OPTIONS.params), requestOptions.params),
377
+ headers: exports.__assign(exports.__assign({}, DEFAULT_ARCGIS_REQUEST_OPTIONS.headers), requestOptions.headers),
378
+ });
379
+ var missingGlobals = [];
380
+ var recommendedPackages = [];
381
+ // don't check for a global fetch if a custom implementation was passed through
382
+ if (!options.fetch && typeof fetch !== "undefined") {
383
+ options.fetch = fetch.bind(Function("return this")());
384
+ }
385
+ else {
386
+ missingGlobals.push("`fetch`");
387
+ recommendedPackages.push("`node-fetch`");
388
+ }
389
+ if (typeof Promise === "undefined") {
390
+ missingGlobals.push("`Promise`");
391
+ recommendedPackages.push("`es6-promise`");
392
+ }
393
+ if (typeof FormData === "undefined") {
394
+ missingGlobals.push("`FormData`");
395
+ recommendedPackages.push("`isomorphic-form-data`");
396
+ }
397
+ if (!options.fetch ||
398
+ typeof Promise === "undefined" ||
399
+ typeof FormData === "undefined") {
400
+ throw new Error("`arcgis-rest-request` requires a `fetch` implementation and global variables for `Promise` and `FormData` to be present in the global scope. You are missing " + missingGlobals.join(", ") + ". We recommend installing the " + recommendedPackages.join(", ") + " modules at the root of your application to add these to the global scope. See https://bit.ly/2KNwWaJ for more info.");
401
+ }
402
+ var httpMethod = options.httpMethod, authentication = options.authentication, rawResponse = options.rawResponse;
403
+ var params = exports.__assign({ f: "json" }, options.params);
404
+ var originalAuthError = null;
405
+ var fetchOptions = {
406
+ method: httpMethod,
407
+ /* ensures behavior mimics XMLHttpRequest.
408
+ needed to support sending IWA cookies */
409
+ credentials: options.credentials || "same-origin",
410
+ };
411
+ // the /oauth2/platformSelf route will add X-Esri-Auth-Client-Id header
412
+ // and that request needs to send cookies cross domain
413
+ // so we need to set the credentials to "include"
414
+ if (options.headers &&
415
+ options.headers["X-Esri-Auth-Client-Id"] &&
416
+ url.indexOf("/oauth2/platformSelf") > -1) {
417
+ fetchOptions.credentials = "include";
418
+ }
419
+ return (authentication
420
+ ? authentication.getToken(url, { fetch: options.fetch }).catch(function (err) {
421
+ /**
422
+ * append original request url and requestOptions
423
+ * to the error thrown by getToken()
424
+ * to assist with retrying
425
+ */
426
+ err.url = url;
427
+ err.options = options;
428
+ /**
429
+ * if an attempt is made to talk to an unfederated server
430
+ * first try the request anonymously. if a 'token required'
431
+ * error is thrown, throw the UNFEDERATED error then.
432
+ */
433
+ originalAuthError = err;
434
+ return Promise.resolve("");
435
+ })
436
+ : Promise.resolve(""))
437
+ .then(function (token) {
438
+ if (token.length) {
439
+ params.token = token;
440
+ }
441
+ if (authentication && authentication.getDomainCredentials) {
442
+ fetchOptions.credentials = authentication.getDomainCredentials(url);
443
+ }
444
+ // Custom headers to add to request. IRequestOptions.headers with merge over requestHeaders.
445
+ var requestHeaders = {};
446
+ if (fetchOptions.method === "GET") {
447
+ // Prevents token from being passed in query params when hideToken option is used.
448
+ /* istanbul ignore if - window is always defined in a browser. Test case is covered by Jasmine in node test */
449
+ if (params.token &&
450
+ options.hideToken &&
451
+ // Sharing API does not support preflight check required by modern browsers https://developer.mozilla.org/en-US/docs/Glossary/Preflight_request
452
+ typeof window === "undefined") {
453
+ requestHeaders["X-Esri-Authorization"] = "Bearer " + params.token;
454
+ delete params.token;
455
+ }
456
+ // encode the parameters into the query string
457
+ var queryParams = encodeQueryString(params);
458
+ // dont append a '?' unless parameters are actually present
459
+ var urlWithQueryString = queryParams === "" ? url : url + "?" + encodeQueryString(params);
460
+ if (
461
+ // This would exceed the maximum length for URLs specified by the consumer and requires POST
462
+ (options.maxUrlLength &&
463
+ urlWithQueryString.length > options.maxUrlLength) ||
464
+ // Or if the customer requires the token to be hidden and it has not already been hidden in the header (for browsers)
465
+ (params.token && options.hideToken)) {
466
+ // the consumer specified a maximum length for URLs
467
+ // and this would exceed it, so use post instead
468
+ fetchOptions.method = "POST";
469
+ // If the token was already added as a Auth header, add the token back to body with other params instead of header
470
+ if (token.length && options.hideToken) {
471
+ params.token = token;
472
+ // Remove existing header that was added before url query length was checked
473
+ delete requestHeaders["X-Esri-Authorization"];
474
+ }
475
+ }
476
+ else {
477
+ // just use GET
478
+ url = urlWithQueryString;
479
+ }
480
+ }
481
+ /* updateResources currently requires FormData even when the input parameters dont warrant it.
482
+ https://developers.arcgis.com/rest/users-groups-and-items/update-resources.htm
483
+ see https://github.com/Esri/arcgis-rest-js/pull/500 for more info. */
484
+ var forceFormData = new RegExp("/items/.+/updateResources").test(url);
485
+ if (fetchOptions.method === "POST") {
486
+ fetchOptions.body = encodeFormData(params, forceFormData);
487
+ }
488
+ // Mixin headers from request options
489
+ fetchOptions.headers = exports.__assign(exports.__assign({}, requestHeaders), options.headers);
490
+ /* istanbul ignore next - karma reports coverage on browser tests only */
491
+ if (typeof window === "undefined" && !fetchOptions.headers.referer) {
492
+ fetchOptions.headers.referer = NODEJS_DEFAULT_REFERER_HEADER;
493
+ }
494
+ /* istanbul ignore else blob responses are difficult to make cross platform we will just have to trust the isomorphic fetch will do its job */
495
+ if (!requiresFormData(params) && !forceFormData) {
496
+ fetchOptions.headers["Content-Type"] =
497
+ "application/x-www-form-urlencoded";
498
+ }
499
+ return options.fetch(url, fetchOptions);
500
+ })
501
+ .then(function (response) {
502
+ if (!response.ok) {
503
+ // server responded w/ an actual error (404, 500, etc)
504
+ var status_1 = response.status, statusText = response.statusText;
505
+ throw new ArcGISRequestError(statusText, "HTTP " + status_1, response, url, options);
506
+ }
507
+ if (rawResponse) {
508
+ return response;
509
+ }
510
+ switch (params.f) {
511
+ case "json":
512
+ return response.json();
513
+ case "geojson":
514
+ return response.json();
515
+ case "html":
516
+ return response.text();
517
+ case "text":
518
+ return response.text();
519
+ /* istanbul ignore next blob responses are difficult to make cross platform we will just have to trust that isomorphic fetch will do its job */
520
+ default:
521
+ return response.blob();
522
+ }
523
+ })
524
+ .then(function (data) {
525
+ if ((params.f === "json" || params.f === "geojson") && !rawResponse) {
526
+ var response = checkForErrors(data, url, params, options, originalAuthError);
527
+ if (originalAuthError) {
528
+ /* If the request was made to an unfederated service that
529
+ didn't require authentication, add the base url and a dummy token
530
+ to the list of trusted servers to avoid another federation check
531
+ in the event of a repeat request */
532
+ var truncatedUrl = url
533
+ .toLowerCase()
534
+ .split(/\/rest(\/admin)?\/services\//)[0];
535
+ options.authentication.federatedServers[truncatedUrl] = {
536
+ token: [],
537
+ // default to 24 hours
538
+ expires: new Date(Date.now() + 86400 * 1000),
539
+ };
540
+ originalAuthError = null;
541
+ }
542
+ return response;
543
+ }
544
+ else {
545
+ return data;
546
+ }
547
+ });
548
+ }
549
+
550
+ /* Copyright (c) 2018 Environmental Systems Research Institute, Inc.
551
+ * Apache-2.0 */
552
+ /**
553
+ * Helper method to ensure that user supplied urls don't include whitespace or a trailing slash.
554
+ */
555
+ function cleanUrl(url) {
556
+ // Guard so we don't try to trim something that's not a string
557
+ if (typeof url !== "string") {
558
+ return url;
559
+ }
560
+ // trim leading and trailing spaces, but not spaces inside the url
561
+ url = url.trim();
562
+ // remove the trailing slash to the url if one was included
563
+ if (url[url.length - 1] === "/") {
564
+ url = url.slice(0, -1);
565
+ }
566
+ return url;
567
+ }
568
+
569
+ exports.ArcGISAuthError = ArcGISAuthError;
570
+ exports.NODEJS_DEFAULT_REFERER_HEADER = NODEJS_DEFAULT_REFERER_HEADER;
571
+ exports.cleanUrl = cleanUrl;
572
+ exports.encodeQueryString = encodeQueryString;
573
+ exports.request = request;
@@ -12,7 +12,7 @@ const locale = require('./locale-67f5f6b6.js');
12
12
  const interfaces = require('./interfaces-000be6de.js');
13
13
  require('./_commonjsHelpers-384729db.js');
14
14
 
15
- const crowdsourceManagerCss = ":host{display:block;--calcite-label-margin-bottom:0px}.padding-1-2{padding:0.5rem}.display-flex{display:flex}.width-full{width:100%}.width-1-2{position:relative;width:50%}.width-1-3{position:relative;width:33.33%}.width-2-3{position:relative;width:66.66%}.width-0{width:0}.height-full{height:100%}.height-1-2{position:relative;height:50%}.height-0{height:0}.toggle-node{width:51px;height:51px}.overflow-hidden{overflow:hidden}.flex-column{flex-direction:column}.border{border:1px solid var(--calcite-ui-border-3)}.border-bottom{border-bottom:1px solid var(--calcite-ui-border-3)}.position-relative{position:relative}.height-50{height:50%}.adjusted-height-50{height:calc(50% - 0.5rem - 25px)}.adjusted-height-100{height:calc(100% - 1rem - 50px)}.adjusted-height-100-50{height:calc(100% - 50px)}.display-none{display:none}.height-53{height:53px}.position-absolute-53{position:absolute;top:53px}.display-grid{display:grid}.height-49-px{height:49px}.height-50-px{height:50px}.padding-inline-end-75{padding-inline-end:0.75rem}.align-items-center{align-items:center}";
15
+ const crowdsourceManagerCss = ":host{display:block;--calcite-label-margin-bottom:0px}.padding-1-2{padding:0.5rem}.display-flex{display:flex}.width-full{width:100%}.width-1-2{position:relative;width:50%}.width-1-3{position:relative;width:33.33%}.width-2-3{position:relative;width:66.66%}.width-0{width:0}.height-full{height:100%}.height-1-2{position:relative;height:50%}.height-0{height:0}.toggle-node{width:51px;height:51px}.overflow-hidden{overflow:hidden}.flex-column{flex-direction:column}.border{border:1px solid var(--calcite-ui-border-3)}.border-bottom{border-bottom:1px solid var(--calcite-ui-border-3)}.position-relative{position:relative}.height-50{height:50%}.adjusted-height-50{height:calc(50% - 25px)}.adjusted-height-100{height:calc(100% - 50px)}.adjusted-height-100-50{height:calc(100% - 50px)}.display-none{display:none}.height-53{height:53px}.position-absolute-53{position:absolute;top:53px}.display-grid{display:grid}.height-49-px{height:49px}.height-50-px{height:50px}.padding-inline-end-75{padding-inline-end:0.75rem}.align-items-center{align-items:center}";
16
16
 
17
17
  const CrowdsourceManager = class {
18
18
  constructor(hostRef) {
@@ -23,9 +23,19 @@ const CrowdsourceManager = class {
23
23
  */
24
24
  this._shouldSetMapView = false;
25
25
  this.classicGrid = false;
26
+ this.enableAutoRefresh = true;
27
+ this.enableFullscreen = true;
28
+ this.enableInlineEdit = false;
29
+ this.enableLegend = true;
30
+ this.enableSearch = true;
31
+ this.enableHome = true;
32
+ this.enableZoom = true;
33
+ this.enableBasemap = true;
34
+ this.basemapConfig = undefined;
26
35
  this.showNewestFirst = true;
27
36
  this.hideMap = false;
28
37
  this.mapInfos = [];
38
+ this.onlyShowUpdatableLayers = true;
29
39
  this.searchConfiguration = undefined;
30
40
  this.zoomAndScrollToSelected = false;
31
41
  this._expandPopup = false;
@@ -60,13 +70,18 @@ const CrowdsourceManager = class {
60
70
  */
61
71
  async mapChanged(evt) {
62
72
  this._mapChange = evt.detail;
73
+ await this._mapChange.mapView.when(() => {
74
+ this._setMapView();
75
+ });
76
+ }
77
+ /**
78
+ * Listen for beforeMapChanged and minimize the popup if it's expanded
79
+ */
80
+ async beforeMapChanged() {
63
81
  if (this._expandPopup) {
64
82
  this._shouldSetMapView = true;
65
83
  this._expandPopup = false;
66
84
  }
67
- else {
68
- this._setMapView();
69
- }
70
85
  }
71
86
  //--------------------------------------------------------------------------
72
87
  //
@@ -225,7 +240,7 @@ const CrowdsourceManager = class {
225
240
  const mapDisplayClass = this.classicGrid && layoutMode === interfaces.ELayoutMode.GRID ? "display-flex height-full width-1-2" :
226
241
  layoutMode === interfaces.ELayoutMode.GRID && !hideMap ? "" : "display-none";
227
242
  const mapContainerClass = this.classicGrid && layoutMode === interfaces.ELayoutMode.GRID ? "width-full" : this._expandPopup ? "height-50-px" : "adjusted-height-50";
228
- return (index.h("div", { class: `${mapContainerClass} overflow-hidden ${mapDisplayClass}` }, index.h("map-card", { class: "width-full", mapInfos: this.mapInfos })));
243
+ return (index.h("div", { class: `${mapContainerClass} overflow-hidden ${mapDisplayClass}` }, index.h("map-card", { basemapConfig: this.basemapConfig, class: "width-full", enableBasemap: this.enableBasemap, enableFullscreen: this.enableFullscreen, enableLegend: this.enableLegend, enableSearch: this.enableSearch, mapInfos: this.mapInfos })));
229
244
  }
230
245
  /**
231
246
  * Get the expand node for the popup information
@@ -259,7 +274,7 @@ const CrowdsourceManager = class {
259
274
  layoutMode === interfaces.ELayoutMode.GRID && !this._expandPopup && !hideMap ? "adjusted-height-50" : "adjusted-height-100";
260
275
  const cardManagerContainer = this.classicGrid && layoutMode === interfaces.ELayoutMode.GRID ?
261
276
  "width-full adjusted-height-100" : this._expandPopup ? "width-50 adjusted-height-100-50" : "width-50 height-full";
262
- return (index.h("div", { class: `padding-1-2 ${cardManagerContainer}` }, index.h("card-manager", { class: `${cardManagerHeight} width-full`, mapView: this === null || this === void 0 ? void 0 : this._mapView, zoomAndScrollToSelected: this.zoomAndScrollToSelected })));
277
+ return (index.h("div", { class: `${cardManagerContainer}` }, index.h("card-manager", { class: `${cardManagerHeight} width-full`, mapView: this === null || this === void 0 ? void 0 : this._mapView, zoomAndScrollToSelected: this.zoomAndScrollToSelected })));
263
278
  }
264
279
  /**
265
280
  * Get the table node based for the current layout
@@ -279,7 +294,7 @@ const CrowdsourceManager = class {
279
294
  const toggleSlot = this.classicGrid && layoutMode !== interfaces.ELayoutMode.VERTICAL ? "footer" :
280
295
  this.classicGrid && layoutMode === interfaces.ELayoutMode.VERTICAL ? "panel-end" :
281
296
  layoutMode === interfaces.ELayoutMode.HORIZONTAL ? "header" : "panel-start";
282
- return (index.h("calcite-shell", { class: tableSizeClass + " border-bottom" }, index.h("calcite-action-bar", { class: "border", expandDisabled: true, layout: toggleLayout, slot: toggleSlot }, index.h("calcite-action", { class: "toggle-node", icon: icon, id: id, onClick: () => this._toggleLayout(), text: "" }), index.h("calcite-tooltip", { label: tooltip, placement: "bottom", "reference-element": id }, index.h("span", null, tooltip))), index.h("div", { class: "width-full height-full position-relative" }, index.h("layer-table", { mapInfo: this._mapInfo, mapView: this === null || this === void 0 ? void 0 : this._mapView, showNewestFirst: this.showNewestFirst, zoomAndScrollToSelected: this.zoomAndScrollToSelected }))));
297
+ return (index.h("calcite-shell", { class: tableSizeClass + " border-bottom" }, index.h("calcite-action-bar", { class: "border", expandDisabled: true, layout: toggleLayout, slot: toggleSlot }, index.h("calcite-action", { class: "toggle-node", icon: icon, id: id, onClick: () => this._toggleLayout(), text: "" }), index.h("calcite-tooltip", { label: tooltip, placement: "bottom", "reference-element": id }, index.h("span", null, tooltip))), index.h("div", { class: "width-full height-full position-relative" }, index.h("layer-table", { enableAutoRefresh: this.enableAutoRefresh, enableInlineEdit: this.enableInlineEdit, mapInfo: this._mapInfo, mapView: this === null || this === void 0 ? void 0 : this._mapView, onlyShowUpdatableLayers: this.onlyShowUpdatableLayers, showNewestFirst: this.showNewestFirst, zoomAndScrollToSelected: this.zoomAndScrollToSelected }))));
283
298
  }
284
299
  /**
285
300
  * Open/Close the appropriate panel.