@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.
- package/dist/assets/t9n/layer-table/resources.json +4 -3
- package/dist/assets/t9n/layer-table/resources_en.json +4 -3
- package/dist/assets/t9n/map-layer-picker/resources.json +4 -0
- package/dist/assets/t9n/map-layer-picker/resources_en.json +4 -0
- package/dist/cjs/basemap-gallery_6.cjs.entry.js +20 -5
- package/dist/cjs/buffer-tools_4.cjs.entry.js +1 -1
- package/dist/cjs/calcite-chip_3.cjs.entry.js +803 -0
- package/dist/cjs/calcite-combobox_6.cjs.entry.js +76 -28
- package/dist/cjs/calcite-shell-panel_14.cjs.entry.js +2 -1
- package/dist/cjs/card-manager_3.cjs.entry.js +169 -79
- package/dist/cjs/clean-url-d5326abb.js +573 -0
- package/dist/cjs/crowdsource-manager.cjs.entry.js +22 -7
- package/dist/cjs/{downloadUtils-43f5be48.js → downloadUtils-34a515ad.js} +297 -52
- package/dist/cjs/edit-card_2.cjs.entry.js +8 -3
- package/dist/cjs/{index.es-8da43c21.js → index.es-0ba11065.js} +3 -2
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/map-select-tools_3.cjs.entry.js +10 -7
- package/dist/cjs/{mapViewUtils-a4dd36ec.js → mapViewUtils-a2884698.js} +39 -55
- package/dist/cjs/public-notification.cjs.entry.js +7 -6
- package/dist/cjs/{publicNotificationStore-b69862af.js → publicNotificationStore-610bd880.js} +0 -4
- package/dist/cjs/solution-configuration.cjs.entry.js +44 -43
- package/dist/cjs/solution-contents_3.cjs.entry.js +2 -1
- package/dist/cjs/{solution-store-3cd104d8.js → solution-store-c443e657.js} +7 -572
- package/dist/cjs/solutions-components.cjs.js +1 -1
- package/dist/collection/components/basemap-gallery/basemap-gallery.js +23 -1
- package/dist/collection/components/card-manager/card-manager.css +0 -5
- package/dist/collection/components/card-manager/card-manager.js +3 -3
- package/dist/collection/components/crowdsource-manager/crowdsource-manager.css +2 -2
- package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +210 -6
- package/dist/collection/components/edit-card/edit-card.css +8 -0
- package/dist/collection/components/edit-card/edit-card.js +19 -0
- package/dist/collection/components/info-card/info-card.css +14 -14
- package/dist/collection/components/info-card/info-card.js +1 -1
- package/dist/collection/components/layer-table/layer-table.css +12 -0
- package/dist/collection/components/layer-table/layer-table.js +215 -69
- package/dist/collection/components/map-card/map-card.js +115 -5
- package/dist/collection/components/map-layer-picker/map-layer-picker.css +4 -0
- package/dist/collection/components/map-layer-picker/map-layer-picker.js +107 -27
- package/dist/collection/components/map-picker/map-picker.css +5 -1
- package/dist/collection/components/map-picker/map-picker.js +3 -3
- package/dist/collection/components/map-tools/map-tools.js +104 -1
- package/dist/collection/components/pdf-download/pdf-download.js +34 -6
- package/dist/collection/components/public-notification/public-notification.js +3 -3
- package/dist/collection/utils/downloadUtils.js +208 -82
- package/dist/collection/utils/downloadUtils.ts +257 -85
- package/dist/collection/utils/interfaces.ts +12 -1
- package/dist/collection/utils/mapViewUtils.js +38 -52
- package/dist/collection/utils/mapViewUtils.ts +41 -57
- package/dist/collection/utils/publicNotificationStore.js +0 -4
- package/dist/collection/utils/publicNotificationStore.ts +0 -4
- package/dist/collection/utils/test/downloadUtils.spec.js +163 -134
- package/dist/collection/utils/test/downloadUtils.spec.tsx +2 -0
- package/dist/components/basemap-gallery2.js +2 -0
- package/dist/components/calcite-modal.js +1 -409
- package/dist/components/card-manager2.js +4 -4
- package/dist/components/clean-url.js +567 -0
- package/dist/components/crowdsource-manager.js +42 -17
- package/dist/components/downloadUtils.js +295 -50
- package/dist/components/edit-card2.js +6 -1
- package/dist/components/info-card2.js +2 -2
- package/dist/components/layer-table2.js +194 -102
- package/dist/components/map-card2.js +17 -5
- package/dist/components/map-layer-picker2.js +114 -52
- package/dist/components/map-picker2.js +4 -4
- package/dist/components/map-select-tools2.js +55 -43
- package/dist/components/map-tools2.js +20 -1
- package/dist/components/mapViewUtils.js +39 -53
- package/dist/components/modal.js +416 -0
- package/dist/components/pdf-download2.js +6 -4
- package/dist/components/public-notification.js +4 -4
- package/dist/components/publicNotificationStore.js +0 -4
- package/dist/components/refine-selection2.js +61 -49
- package/dist/components/solution-configuration.js +25 -24
- package/dist/components/solution-store.js +2 -562
- package/dist/esm/{ExpandToggle-86761b28.js → ExpandToggle-e614e3e4.js} +1 -1
- package/dist/esm/{ar-4a5375c6.js → ar-2f678abc.js} +8 -8
- package/dist/esm/basemap-gallery_6.entry.js +20 -5
- package/dist/esm/{bg-b25e4b7a.js → bg-e514c4d7.js} +8 -8
- package/dist/esm/{bs-2485dfed.js → bs-81584b09.js} +8 -8
- package/dist/esm/buffer-tools_4.entry.js +5 -5
- package/dist/esm/{ca-bba36d26.js → ca-e8c40e21.js} +8 -8
- package/dist/esm/calcite-accordion-item.entry.js +1 -1
- package/dist/esm/calcite-action-bar_3.entry.js +5 -5
- package/dist/esm/calcite-action-group_2.entry.js +3 -3
- package/dist/esm/calcite-action-pad.entry.js +4 -4
- package/dist/esm/calcite-action_2.entry.js +5 -5
- package/dist/esm/calcite-alert.entry.js +3 -3
- package/dist/esm/calcite-avatar.entry.js +1 -1
- package/dist/esm/calcite-block-section.entry.js +3 -3
- package/dist/esm/calcite-block.entry.js +3 -3
- package/dist/esm/calcite-button.entry.js +5 -5
- package/dist/esm/calcite-card.entry.js +3 -3
- package/dist/esm/calcite-checkbox.entry.js +3 -3
- package/dist/esm/calcite-chip-group.entry.js +1 -1
- package/dist/esm/calcite-chip_3.entry.js +797 -0
- package/dist/esm/calcite-color-picker-hex-input_2.entry.js +1 -1
- package/dist/esm/calcite-color-picker.entry.js +3 -3
- package/dist/esm/calcite-combobox-item-group.entry.js +2 -2
- package/dist/esm/calcite-combobox_6.entry.js +83 -35
- package/dist/esm/calcite-date-picker-day_3.entry.js +3 -3
- package/dist/esm/calcite-date-picker.entry.js +5 -5
- package/dist/esm/calcite-fab.entry.js +1 -1
- package/dist/esm/calcite-filter_3.entry.js +3 -3
- package/dist/esm/calcite-flow-item.entry.js +3 -3
- package/dist/esm/calcite-icon.entry.js +1 -1
- package/dist/esm/calcite-inline-editable.entry.js +4 -4
- package/dist/esm/calcite-input-date-picker.entry.js +9 -9
- package/dist/esm/calcite-input-number_2.entry.js +5 -5
- package/dist/esm/{calcite-input-time-picker-7da2e80a.js → calcite-input-time-picker-fe6e499a.js} +55 -55
- package/dist/esm/calcite-input-time-picker.entry.js +8 -8
- package/dist/esm/calcite-input-time-zone.entry.js +5 -5
- package/dist/esm/calcite-input_2.entry.js +5 -5
- package/dist/esm/calcite-label.entry.js +2 -2
- package/dist/esm/calcite-link.entry.js +1 -1
- package/dist/esm/calcite-menu-item.entry.js +3 -3
- package/dist/esm/calcite-menu.entry.js +3 -3
- package/dist/esm/calcite-modal.entry.js +4 -4
- package/dist/esm/calcite-navigation.entry.js +1 -1
- package/dist/esm/calcite-option_2.entry.js +3 -3
- package/dist/esm/calcite-pagination.entry.js +3 -3
- package/dist/esm/calcite-panel_2.entry.js +3 -3
- package/dist/esm/calcite-pick-list-group.entry.js +1 -1
- package/dist/esm/calcite-pick-list-item.entry.js +3 -3
- package/dist/esm/calcite-pick-list.entry.js +2 -2
- package/dist/esm/calcite-radio-button.entry.js +3 -3
- package/dist/esm/calcite-rating.entry.js +5 -5
- package/dist/esm/calcite-scrim.entry.js +3 -3
- package/dist/esm/calcite-segmented-control_2.entry.js +3 -3
- package/dist/esm/calcite-shell-center-row.entry.js +1 -1
- package/dist/esm/calcite-shell-panel_14.entry.js +7 -6
- package/dist/esm/calcite-sortable-list.entry.js +2 -2
- package/dist/esm/calcite-stepper-item.entry.js +2 -2
- package/dist/esm/calcite-stepper.entry.js +1 -1
- package/dist/esm/calcite-switch.entry.js +3 -3
- package/dist/esm/calcite-text-area.entry.js +5 -5
- package/dist/esm/calcite-tile.entry.js +1 -1
- package/dist/esm/calcite-time-picker.entry.js +4 -4
- package/dist/esm/calcite-tip-manager.entry.js +3 -3
- package/dist/esm/calcite-tip.entry.js +3 -3
- package/dist/esm/calcite-tree_3.entry.js +1 -1
- package/dist/esm/card-manager_3.entry.js +169 -79
- package/dist/esm/clean-url-bce022e6.js +567 -0
- package/dist/esm/crowdsource-manager.entry.js +22 -7
- package/dist/esm/{cs-1052c5ac.js → cs-af5f115e.js} +8 -8
- package/dist/esm/{da-b7ed9204.js → da-06d9e22c.js} +8 -8
- package/dist/esm/{date-bd5b879c.js → date-641ae749.js} +1 -1
- package/dist/esm/{de-at-a993e5ae.js → de-at-f55a700a.js} +8 -8
- package/dist/esm/{de-ch-acff745d.js → de-ch-7307675f.js} +8 -8
- package/dist/esm/{de-bb68e752.js → de-dc98363f.js} +8 -8
- package/dist/esm/{dom-37f2dec9.js → dom-2b326ec3.js} +1 -1
- package/dist/esm/{downloadUtils-42156cd8.js → downloadUtils-ac67a786.js} +297 -52
- package/dist/esm/edit-card_2.entry.js +8 -3
- package/dist/esm/{el-9de96ff0.js → el-91c64808.js} +8 -8
- package/dist/esm/{en-au-f68b6bde.js → en-au-df08cc25.js} +8 -8
- package/dist/esm/{en-ca-5360517e.js → en-ca-175f7c0f.js} +8 -8
- package/dist/esm/{en-gb-de0b3125.js → en-gb-90a08c7f.js} +8 -8
- package/dist/esm/{es-5ecbba77.js → es-5cb54b05.js} +8 -8
- package/dist/esm/{es-mx-aa126462.js → es-mx-3a0cb804.js} +8 -8
- package/dist/esm/{et-7113eeb8.js → et-eceac6dc.js} +8 -8
- package/dist/esm/{fi-ffa60f15.js → fi-26e1c14f.js} +8 -8
- package/dist/esm/{floating-ui-7cde67cf.js → floating-ui-9f8e4ed4.js} +1 -1
- package/dist/esm/{focusTrapComponent-ec344399.js → focusTrapComponent-ad2c3a31.js} +1 -1
- package/dist/esm/{form-24e6ef1d.js → form-0871d2c6.js} +1 -1
- package/dist/esm/{fr-681c5bf6.js → fr-12a5b0f7.js} +8 -8
- package/dist/esm/{fr-ch-9af1f8b1.js → fr-ch-e3406887.js} +8 -8
- package/dist/esm/{he-5188f277.js → he-61eba811.js} +8 -8
- package/dist/esm/{hi-6a31e3a4.js → hi-a50282b5.js} +8 -8
- package/dist/esm/{hr-0598e59d.js → hr-da8bffaf.js} +8 -8
- package/dist/esm/{hu-13cb9f41.js → hu-dab932f1.js} +8 -8
- package/dist/esm/{id-7f342499.js → id-de468947.js} +8 -8
- package/dist/esm/{index.es-f47c4153.js → index.es-f553598f.js} +3 -2
- package/dist/esm/{it-57d790f2.js → it-375d9936.js} +8 -8
- package/dist/esm/{it-ch-081af760.js → it-ch-7e663d63.js} +8 -8
- package/dist/esm/{ja-3affb68e.js → ja-36dbe39d.js} +8 -8
- package/dist/esm/{ko-736632aa.js → ko-858bc871.js} +8 -8
- package/dist/esm/{label-b6dfb4d5.js → label-b8caf984.js} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{locale-146251f7.js → locale-00000ab4.js} +1 -1
- package/dist/esm/{lt-e7d9b1c3.js → lt-d6dfa7e4.js} +8 -8
- package/dist/esm/{lv-4d1a507e.js → lv-facd25c5.js} +8 -8
- package/dist/esm/map-select-tools_3.entry.js +10 -7
- package/dist/esm/{mapViewUtils-00a04d52.js → mapViewUtils-8141d8c1.js} +39 -53
- package/dist/esm/{mk-f960312d.js → mk-5ed05b6a.js} +8 -8
- package/dist/esm/{nb-4556b5e9.js → nb-936fc687.js} +8 -8
- package/dist/esm/{nl-8e281c01.js → nl-a923d626.js} +8 -8
- package/dist/esm/{pl-1460fd5a.js → pl-b1426275.js} +8 -8
- package/dist/esm/{pt-660332b6.js → pt-1ac2453f.js} +8 -8
- package/dist/esm/{pt-br-dba48f49.js → pt-br-7194cc5f.js} +8 -8
- package/dist/esm/public-notification.entry.js +7 -6
- package/dist/esm/{publicNotificationStore-90a6a274.js → publicNotificationStore-dcf39a55.js} +0 -4
- package/dist/esm/{ro-ac18f292.js → ro-518aaed1.js} +8 -8
- package/dist/esm/{ru-b914f6b7.js → ru-762127a3.js} +8 -8
- package/dist/esm/{shared-list-render-cc889757.js → shared-list-render-ec232615.js} +1 -1
- package/dist/esm/{sk-1be12963.js → sk-f367b7ba.js} +8 -8
- package/dist/esm/{sl-5d47e4e4.js → sl-052fd4d2.js} +8 -8
- package/dist/esm/solution-configuration.entry.js +25 -24
- package/dist/esm/solution-contents_3.entry.js +2 -1
- package/dist/esm/{solution-store-cf902566.js → solution-store-b29d50f7.js} +2 -562
- package/dist/esm/solutions-components.js +1 -1
- package/dist/esm/{sortableComponent-8a84709a.js → sortableComponent-ebd6bb72.js} +1 -1
- package/dist/esm/{sr-3281c92d.js → sr-4dc0fdb9.js} +8 -8
- package/dist/esm/{sv-e5169404.js → sv-bdc87a4d.js} +8 -8
- package/dist/esm/{t9n-d9c203e4.js → t9n-9791aa0c.js} +1 -1
- package/dist/esm/{th-937796b8.js → th-d9df674c.js} +8 -8
- package/dist/esm/{time-fa1151aa.js → time-73378c4a.js} +1 -1
- package/dist/esm/{tr-6d3b100b.js → tr-61e134eb.js} +8 -8
- package/dist/esm/{uk-a6edcacf.js → uk-ea3d8da7.js} +8 -8
- package/dist/esm/{utils-667cc396.js → utils-593fafd7.js} +1 -1
- package/dist/esm/{utils-24a35b5a.js → utils-bd52db7d.js} +2 -2
- package/dist/esm/{vi-bf4c179c.js → vi-ade1c25b.js} +8 -8
- package/dist/esm/{zh-cn-de1858cb.js → zh-cn-b8756118.js} +8 -8
- package/dist/esm/{zh-hk-12fa404f.js → zh-hk-d18c05d9.js} +8 -8
- package/dist/esm/{zh-tw-5c4220e5.js → zh-tw-9c98ff7c.js} +8 -8
- package/dist/solutions-components/{p-3b891cc4.entry.js → p-01fea8d5.entry.js} +1 -1
- package/dist/solutions-components/{p-65022e7f.entry.js → p-02ff64f4.entry.js} +1 -1
- package/dist/solutions-components/p-062254a6.entry.js +6 -0
- package/dist/solutions-components/{p-bff158ff.js → p-062d2f9a.js} +1 -1
- package/dist/solutions-components/{p-f4e5b7e5.entry.js → p-084bced1.entry.js} +1 -1
- package/dist/solutions-components/{p-c261335b.entry.js → p-088e4cfc.entry.js} +1 -1
- package/dist/solutions-components/p-08b52ed8.entry.js +6 -0
- package/dist/solutions-components/{p-96239d0d.js → p-08e35485.js} +1 -1
- package/dist/solutions-components/{p-3d3772fb.js → p-0d14d33a.js} +1 -1
- package/dist/solutions-components/{p-7f271c31.js → p-11550b3c.js} +3 -3
- package/dist/solutions-components/{p-ad19f9b0.entry.js → p-120c4098.entry.js} +1 -1
- package/dist/solutions-components/{p-45419d93.entry.js → p-12bcd474.entry.js} +1 -1
- package/dist/solutions-components/{p-bd82849c.entry.js → p-1597ec4b.entry.js} +1 -1
- package/dist/solutions-components/p-16362eb4.js +36 -0
- package/dist/solutions-components/{p-afb35c95.js → p-17d176b5.js} +14 -43
- package/dist/solutions-components/{p-3691a072.js → p-1ab414e0.js} +2 -2
- package/dist/solutions-components/{p-127c3866.js → p-1c5787b1.js} +1 -1
- package/dist/solutions-components/{p-b97886b3.entry.js → p-1d9a5198.entry.js} +1 -1
- package/dist/solutions-components/{p-8e3e1ce8.entry.js → p-1dd5c4e6.entry.js} +1 -1
- package/dist/solutions-components/{p-97b69f54.entry.js → p-1e62d118.entry.js} +1 -1
- package/dist/solutions-components/{p-537c34a4.entry.js → p-1fae3819.entry.js} +1 -1
- package/dist/solutions-components/{p-82f0b25b.js → p-21aa112d.js} +1 -1
- package/dist/solutions-components/{p-f8944f59.entry.js → p-252a9a7f.entry.js} +1 -1
- package/dist/solutions-components/{p-80ea5869.js → p-26b28806.js} +1 -1
- package/dist/solutions-components/{p-dac10448.js → p-280fd963.js} +3 -3
- package/dist/solutions-components/{p-79d7f324.js → p-29049359.js} +1 -1
- package/dist/solutions-components/{p-c033b8ec.entry.js → p-2b378389.entry.js} +1 -1
- package/dist/solutions-components/{p-19ec0463.js → p-2bdd1a5d.js} +1 -1
- package/dist/solutions-components/{p-cacfa6ae.js → p-2ee21e9d.js} +1 -1
- package/dist/solutions-components/{p-300f4299.js → p-2f42ae51.js} +1 -1
- package/dist/solutions-components/{p-418be467.js → p-30b3261c.js} +1 -1
- package/dist/solutions-components/{p-4d91443a.entry.js → p-32ba2223.entry.js} +1 -1
- package/dist/solutions-components/{p-702c6093.js → p-34673137.js} +1 -1
- package/dist/solutions-components/{p-61af54b9.entry.js → p-3566ee69.entry.js} +1 -1
- package/dist/solutions-components/{p-90a9126f.js → p-358b9cc8.js} +1 -1
- package/dist/solutions-components/p-3a8d82a2.js +11 -0
- package/dist/solutions-components/{p-628c170b.entry.js → p-3ab94526.entry.js} +1 -1
- package/dist/solutions-components/{p-9791fbf1.entry.js → p-3d7aa1b2.entry.js} +1 -1
- package/dist/solutions-components/{p-b1daad7e.js → p-3f7119c1.js} +1 -1
- package/dist/solutions-components/{p-f0f5ecb2.js → p-3fcd035e.js} +1 -1
- package/dist/solutions-components/{p-3766be72.js → p-419c9d89.js} +1 -1
- package/dist/solutions-components/p-453d1b31.entry.js +6 -0
- package/dist/solutions-components/{p-337f6adf.js → p-46918548.js} +1 -1
- package/dist/solutions-components/p-49e9e4e3.js +12 -0
- package/dist/solutions-components/p-4d942b0f.entry.js +36 -0
- package/dist/solutions-components/{p-85e0d2a3.js → p-4fc92419.js} +1 -1
- package/dist/solutions-components/{p-0d08a75d.entry.js → p-52afbe07.entry.js} +1 -1
- package/dist/solutions-components/{p-9391bb74.js → p-573d0763.js} +1 -1
- package/dist/solutions-components/p-57cf6784.entry.js +6 -0
- package/dist/solutions-components/{p-87971116.entry.js → p-59ef9461.entry.js} +1 -1
- package/dist/solutions-components/{p-25718b9f.entry.js → p-5e5749c0.entry.js} +1 -1
- package/dist/solutions-components/{p-54064b61.entry.js → p-5ff22d2e.entry.js} +1 -1
- package/dist/solutions-components/{p-4bd793ef.entry.js → p-617f32a0.entry.js} +1 -1
- package/dist/solutions-components/p-64b22d57.entry.js +6 -0
- package/dist/solutions-components/{p-747a1293.js → p-6510c06c.js} +1 -1
- package/dist/solutions-components/p-654dd5df.entry.js +6 -0
- package/dist/solutions-components/{p-1f69762c.js → p-65ba4d10.js} +1 -1
- package/dist/solutions-components/{p-4cb7cdb7.entry.js → p-65ffe4b0.entry.js} +1 -1
- package/dist/solutions-components/{p-1b4d6511.js → p-68007503.js} +1 -1
- package/dist/solutions-components/{p-e849d2ba.entry.js → p-6ba8483c.entry.js} +2 -2
- package/dist/solutions-components/{p-9961a2f9.entry.js → p-6c8c7b98.entry.js} +2 -2
- package/dist/solutions-components/{p-ff863f3d.entry.js → p-6e5d9ae9.entry.js} +1 -1
- package/dist/solutions-components/{p-b6a1c34f.entry.js → p-6ebf870c.entry.js} +1 -1
- package/dist/solutions-components/{p-d2d3e4b5.js → p-72f34a0a.js} +1 -1
- package/dist/solutions-components/{p-981fc8e4.entry.js → p-7359a6ac.entry.js} +1 -1
- package/dist/solutions-components/{p-9abb1c4c.entry.js → p-73fe6f7e.entry.js} +1 -1
- package/dist/solutions-components/{p-62e3adbb.js → p-7452d79a.js} +1 -1
- package/dist/solutions-components/{p-34169501.js → p-76c2c379.js} +1 -1
- package/dist/solutions-components/{p-941721ba.js → p-788aa5d7.js} +1 -1
- package/dist/solutions-components/{p-557d4cc5.js → p-79cc0531.js} +2 -2
- package/dist/solutions-components/{p-a19d8147.js → p-7a0fa011.js} +1 -1
- package/dist/solutions-components/{p-019fe9fe.entry.js → p-7a55cee6.entry.js} +3 -3
- package/dist/solutions-components/{p-48329056.entry.js → p-7bc63171.entry.js} +1 -1
- package/dist/solutions-components/{p-e7304151.entry.js → p-81664d83.entry.js} +1 -1
- package/dist/solutions-components/{p-9504c1b7.js → p-8354f486.js} +1 -1
- package/dist/solutions-components/{p-f812e3ee.entry.js → p-84dff306.entry.js} +1 -1
- package/dist/solutions-components/{p-a59dba2f.js → p-8594fe6b.js} +1 -1
- package/dist/solutions-components/{p-ae3ec77d.js → p-8b2d396e.js} +1 -1
- package/dist/solutions-components/{p-38cc8a4d.js → p-8ec6ea34.js} +1 -1
- package/dist/solutions-components/{p-da760d1d.entry.js → p-8ee00658.entry.js} +1 -1
- package/dist/solutions-components/{p-38211628.js → p-905fcf73.js} +1 -1
- package/dist/solutions-components/{p-e502ccce.entry.js → p-929909bc.entry.js} +1 -1
- package/dist/solutions-components/{p-dd5f68f2.js → p-948b5722.js} +1 -1
- package/dist/solutions-components/{p-39fe9a4c.js → p-956f3207.js} +1 -1
- package/dist/solutions-components/{p-f7aa542c.js → p-96287d23.js} +1 -1
- package/dist/solutions-components/{p-68630513.entry.js → p-964c0e7d.entry.js} +1 -1
- package/dist/solutions-components/{p-b09d8c0e.entry.js → p-98051370.entry.js} +1 -1
- package/dist/solutions-components/{p-efd70bf7.entry.js → p-9a94f48c.entry.js} +2 -2
- package/dist/solutions-components/{p-318790b8.js → p-9b94501c.js} +1 -1
- package/dist/solutions-components/{p-69e26726.js → p-9d4467a3.js} +1 -1
- package/dist/solutions-components/{p-f6cf9943.js → p-9e3c9cd2.js} +1 -1
- package/dist/solutions-components/{p-30542275.js → p-9fd59203.js} +1 -1
- package/dist/solutions-components/{p-d902b790.js → p-a201bffc.js} +1 -1
- package/dist/solutions-components/{p-89cbb86a.js → p-a26711e8.js} +3 -3
- package/dist/solutions-components/{p-1552c479.entry.js → p-a3729795.entry.js} +1 -1
- package/dist/solutions-components/{p-ae4ad673.entry.js → p-a47ed290.entry.js} +2 -2
- package/dist/solutions-components/{p-ca5be55f.entry.js → p-a5ef322f.entry.js} +2 -2
- package/dist/solutions-components/{p-3658ebd8.entry.js → p-a97e8d6a.entry.js} +1 -1
- package/dist/solutions-components/{p-2937523d.js → p-aaea9203.js} +1 -1
- package/dist/solutions-components/{p-b7093e6d.entry.js → p-ad1d56b1.entry.js} +1 -1
- package/dist/solutions-components/{p-0ca528ec.js → p-adeb0e8f.js} +1 -1
- package/dist/solutions-components/{p-31d2a105.entry.js → p-af63959a.entry.js} +1 -1
- package/dist/solutions-components/{p-fbd71543.entry.js → p-b1125581.entry.js} +2 -2
- package/dist/solutions-components/p-b1c8c6d7.entry.js +6 -0
- package/dist/solutions-components/{p-b029c6d8.js → p-b20a31c8.js} +1 -1
- package/dist/solutions-components/{p-71400268.js → p-b81131b3.js} +1 -1
- package/dist/solutions-components/{p-cc624b0c.entry.js → p-b89c5865.entry.js} +1 -1
- package/dist/solutions-components/{p-245d667e.js → p-b9b52743.js} +1 -1
- package/dist/solutions-components/p-b9d29f30.entry.js +6 -0
- package/dist/solutions-components/{p-0870f436.entry.js → p-ba99e562.entry.js} +1 -1
- package/dist/solutions-components/{p-2d614afc.js → p-bc548c06.js} +1 -1
- package/dist/solutions-components/{p-29b2f046.js → p-bccbdeb5.js} +1 -1
- package/dist/solutions-components/{p-f72e0965.entry.js → p-bd318e33.entry.js} +1 -1
- package/dist/solutions-components/{p-74aa84f6.js → p-bd766e49.js} +1 -1
- package/dist/solutions-components/{p-9b75102b.entry.js → p-c073d2d6.entry.js} +1 -1
- package/dist/solutions-components/p-c6b7e7ff.js +11 -0
- package/dist/solutions-components/{p-0503c78d.js → p-c8d0ce92.js} +44 -29
- package/dist/solutions-components/{p-dc80cb69.entry.js → p-ca0b3a2b.entry.js} +1 -1
- package/dist/solutions-components/{p-e9fcf408.js → p-d5228aed.js} +1 -1
- package/dist/solutions-components/{p-80b87453.js → p-d98caa4c.js} +1 -1
- package/dist/solutions-components/{p-45b829b5.js → p-dd9c065e.js} +1 -1
- package/dist/solutions-components/{p-05b2bdf9.js → p-dedc167c.js} +1 -1
- package/dist/solutions-components/{p-a16feeec.js → p-e4f9b782.js} +1 -1
- package/dist/solutions-components/{p-ac1bd870.entry.js → p-e572a692.entry.js} +1 -1
- package/dist/solutions-components/{p-74521615.entry.js → p-e5dda947.entry.js} +1 -1
- package/dist/solutions-components/{p-d793ec96.entry.js → p-e76949eb.entry.js} +5 -5
- package/dist/solutions-components/{p-bbfc2724.js → p-e7fbf2fe.js} +1 -1
- package/dist/solutions-components/{p-dda325a4.entry.js → p-e9ba0c7f.entry.js} +1 -1
- package/dist/solutions-components/{p-75e707d1.js → p-eb60ec2a.js} +1 -1
- package/dist/solutions-components/p-ecc95259.js +20 -0
- package/dist/solutions-components/{p-85791b16.entry.js → p-ee144348.entry.js} +1 -1
- package/dist/solutions-components/p-ee7e2f00.entry.js +34 -0
- package/dist/solutions-components/{p-4b4559f9.js → p-f03bed0c.js} +1 -1
- package/dist/solutions-components/{p-7a11983d.js → p-f5028a8e.js} +1 -1
- package/dist/solutions-components/{p-fb23ba4a.entry.js → p-f50cf603.entry.js} +1 -1
- package/dist/solutions-components/{p-f7b520ae.js → p-f7d8b6b3.js} +1 -1
- package/dist/solutions-components/{p-792fcd62.entry.js → p-fb0f2016.entry.js} +1 -1
- package/dist/solutions-components/solutions-components.esm.js +1 -1
- package/dist/solutions-components/utils/downloadUtils.ts +257 -85
- package/dist/solutions-components/utils/interfaces.ts +12 -1
- package/dist/solutions-components/utils/mapViewUtils.ts +41 -57
- package/dist/solutions-components/utils/publicNotificationStore.ts +0 -4
- package/dist/solutions-components/utils/test/downloadUtils.spec.tsx +2 -0
- package/dist/types/components/basemap-gallery/basemap-gallery.d.ts +5 -0
- package/dist/types/components/crowdsource-manager/crowdsource-manager.d.ts +45 -1
- package/dist/types/components/edit-card/edit-card.d.ts +8 -0
- package/dist/types/components/layer-table/layer-table.d.ts +82 -26
- package/dist/types/components/map-card/map-card.d.ts +25 -1
- package/dist/types/components/map-layer-picker/map-layer-picker.d.ts +50 -3
- package/dist/types/components/map-picker/map-picker.d.ts +2 -2
- package/dist/types/components/map-tools/map-tools.d.ts +21 -1
- package/dist/types/components/pdf-download/pdf-download.d.ts +4 -2
- package/dist/types/components.d.ts +218 -4
- package/dist/types/preact.d.ts +6 -3
- package/dist/types/utils/downloadUtils.d.ts +34 -16
- package/dist/types/utils/interfaces.d.ts +10 -1
- package/dist/types/utils/mapViewUtils.d.ts +8 -24
- package/dist/types/utils/publicNotificationStore.d.ts +0 -2
- package/package.json +8 -9
- package/dist/cjs/calcite-chip.cjs.entry.js +0 -259
- package/dist/cjs/calcite-notice.cjs.entry.js +0 -139
- package/dist/cjs/calcite-tooltip.cjs.entry.js +0 -439
- package/dist/esm/calcite-chip.entry.js +0 -255
- package/dist/esm/calcite-notice.entry.js +0 -135
- package/dist/esm/calcite-tooltip.entry.js +0 -435
- package/dist/solutions-components/p-06712292.js +0 -11
- package/dist/solutions-components/p-0a0c3764.js +0 -11
- package/dist/solutions-components/p-12a7c2db.entry.js +0 -6
- package/dist/solutions-components/p-1a47516a.entry.js +0 -22
- package/dist/solutions-components/p-2cff8331.entry.js +0 -6
- package/dist/solutions-components/p-3a7cd2b0.entry.js +0 -37
- package/dist/solutions-components/p-3e9fc0aa.entry.js +0 -11
- package/dist/solutions-components/p-712ea336.entry.js +0 -11
- package/dist/solutions-components/p-767002cd.js +0 -36
- package/dist/solutions-components/p-8e9d9e6a.js +0 -12
- package/dist/solutions-components/p-97088307.entry.js +0 -6
- package/dist/solutions-components/p-a16e6f5f.entry.js +0 -6
- package/dist/solutions-components/p-d118a76e.entry.js +0 -6
- package/dist/solutions-components/p-d54c2dfd.entry.js +0 -6
- package/dist/solutions-components/p-d7d466e8.entry.js +0 -6
- 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 {
|
|
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
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
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(
|
|
87
|
-
|
|
88
|
-
|
|
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
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
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
|
|
156
|
-
|
|
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
|
-
|
|
168
|
-
const
|
|
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
|
|
182
|
-
|
|
183
|
-
|
|
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
|
-
|
|
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 :
|
|
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
|
-
|
|
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-
|
|
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.
|
|
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
|
-
|
|
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
|
}
|