@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
|
@@ -21,89 +21,73 @@ import { EWorkflowType, IMapItemHash, ISelectionSet } from "./interfaces";
|
|
|
21
21
|
* Gets the layer names from the current map
|
|
22
22
|
*
|
|
23
23
|
* @param mapView the map view to fetch the layer names from
|
|
24
|
+
* @param onlyShowUpdatableLayers when true only layers that support editing and updates will be returned
|
|
24
25
|
*
|
|
25
26
|
* @returns Promise resolving with an array of layer names
|
|
26
27
|
*
|
|
27
28
|
*/
|
|
28
29
|
export async function getMapLayerHash(
|
|
29
|
-
mapView: __esri.MapView
|
|
30
|
+
mapView: __esri.MapView,
|
|
31
|
+
onlyShowUpdatableLayers: boolean
|
|
30
32
|
): Promise<IMapItemHash> {
|
|
31
|
-
let layerHash
|
|
33
|
+
let layerHash;
|
|
32
34
|
await mapView.when(() => {
|
|
33
35
|
layerHash = mapView.map.allLayers.toArray().reduce((prev, cur) => {
|
|
34
36
|
if (cur.type === "feature") {
|
|
35
|
-
prev[cur.id] =
|
|
37
|
+
prev[cur.id] = {
|
|
38
|
+
name: cur.title,
|
|
39
|
+
supportsUpdate: undefined
|
|
40
|
+
};
|
|
36
41
|
}
|
|
37
42
|
return prev;
|
|
38
43
|
}, {});
|
|
39
44
|
});
|
|
40
|
-
|
|
45
|
+
|
|
46
|
+
return onlyShowUpdatableLayers ? Object.keys(layerHash).reduce(async (prev, cur) => {
|
|
47
|
+
const layer = await getLayerOrTable(mapView, cur);
|
|
48
|
+
await layer.when(() => {
|
|
49
|
+
prev[cur] = {
|
|
50
|
+
name: layerHash[cur].name,
|
|
51
|
+
supportsUpdate: layer.editingEnabled && layer.capabilities.operations.supportsUpdate
|
|
52
|
+
};
|
|
53
|
+
});
|
|
54
|
+
return prev;
|
|
55
|
+
}, {}) : layerHash;
|
|
41
56
|
}
|
|
42
57
|
|
|
43
58
|
/**
|
|
44
59
|
* Gets the table names from the current map
|
|
45
60
|
*
|
|
46
61
|
* @param mapView the map view to fetch the table names from
|
|
62
|
+
* @param onlyShowUpdatableLayers when true only layers that support editing and updates will be returned
|
|
47
63
|
*
|
|
48
64
|
* @returns Promise resolving with an array of table names
|
|
49
65
|
*
|
|
50
66
|
*/
|
|
51
67
|
export async function getMapTableHash(
|
|
52
|
-
mapView: __esri.MapView
|
|
68
|
+
mapView: __esri.MapView,
|
|
69
|
+
onlyShowUpdatableTables: boolean
|
|
53
70
|
): Promise<IMapItemHash> {
|
|
54
|
-
let tableHash
|
|
71
|
+
let tableHash;
|
|
55
72
|
await mapView.when(() => {
|
|
56
73
|
tableHash = mapView.map.allTables.toArray().reduce((prev, cur) => {
|
|
57
|
-
prev[cur.id] =
|
|
74
|
+
prev[cur.id] = {
|
|
75
|
+
name: cur.title,
|
|
76
|
+
supportsUpdate: undefined
|
|
77
|
+
};
|
|
58
78
|
return prev;
|
|
59
79
|
}, {});
|
|
60
80
|
});
|
|
61
|
-
return tableHash;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
/**
|
|
65
|
-
* Gets the layer names from the current map
|
|
66
|
-
*
|
|
67
|
-
* @param mapView the map view to fetch the layer names from
|
|
68
|
-
*
|
|
69
|
-
* @returns Promise resolving with an array of layer names
|
|
70
|
-
*
|
|
71
|
-
*/
|
|
72
|
-
export async function getMapLayerIds(
|
|
73
|
-
mapView: __esri.MapView
|
|
74
|
-
): Promise<string[]> {
|
|
75
|
-
let layerIds = [];
|
|
76
|
-
await mapView.when(() => {
|
|
77
|
-
layerIds = mapView.map.allLayers.toArray().reduce((prev, cur) => {
|
|
78
|
-
if (cur.type === "feature") {
|
|
79
|
-
prev.push(cur.id);
|
|
80
|
-
}
|
|
81
|
-
return prev;
|
|
82
|
-
}, []);
|
|
83
|
-
});
|
|
84
|
-
return layerIds;
|
|
85
|
-
}
|
|
86
81
|
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
mapView: __esri.MapView
|
|
97
|
-
): Promise<string[]> {
|
|
98
|
-
// TODO...seems like its the same as the hash...see if I can remove this
|
|
99
|
-
let tableIds = [];
|
|
100
|
-
await mapView.when(() => {
|
|
101
|
-
tableIds = mapView.map.allTables.toArray().reduce((prev, cur) => {
|
|
102
|
-
prev.push(cur.id);
|
|
103
|
-
return prev;
|
|
104
|
-
}, []);
|
|
105
|
-
});
|
|
106
|
-
return tableIds;
|
|
82
|
+
return onlyShowUpdatableTables ? Object.keys(tableHash).reduce(async (prev, cur) => {
|
|
83
|
+
const item = await getLayerOrTable(mapView, cur);
|
|
84
|
+
await item.load();
|
|
85
|
+
prev[cur] = {
|
|
86
|
+
name: tableHash[cur].name,
|
|
87
|
+
supportsUpdate: item.editingEnabled && item.capabilities.operations.supportsUpdate
|
|
88
|
+
};
|
|
89
|
+
return prev;
|
|
90
|
+
}, {}) : tableHash;
|
|
107
91
|
}
|
|
108
92
|
|
|
109
93
|
/**
|
|
@@ -119,20 +103,20 @@ export async function getFeatureLayerView(
|
|
|
119
103
|
mapView: __esri.MapView,
|
|
120
104
|
id: string
|
|
121
105
|
): Promise<__esri.FeatureLayerView> {
|
|
122
|
-
const layer = await
|
|
106
|
+
const layer = await getLayerOrTable(mapView, id);
|
|
123
107
|
return layer ? await mapView.whenLayerView(layer) : undefined;
|
|
124
108
|
}
|
|
125
109
|
|
|
126
110
|
/**
|
|
127
|
-
* Get a layer by id
|
|
111
|
+
* Get a layer or table by id
|
|
128
112
|
*
|
|
129
113
|
* @param mapView the map view to fetch the layer from
|
|
130
|
-
* @param id the id
|
|
114
|
+
* @param id the id of the layer or table to fetch
|
|
131
115
|
*
|
|
132
|
-
* @returns Promise resolving with the fetched layer
|
|
116
|
+
* @returns Promise resolving with the fetched layer or table
|
|
133
117
|
*
|
|
134
118
|
*/
|
|
135
|
-
export async function
|
|
119
|
+
export async function getLayerOrTable(
|
|
136
120
|
mapView: __esri.MapView,
|
|
137
121
|
id: string
|
|
138
122
|
): Promise<__esri.FeatureLayer> {
|
|
@@ -26,10 +26,6 @@ const { state, onChange } = createStore({
|
|
|
26
26
|
managedTables: [],
|
|
27
27
|
// Handle[]: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Handles.html#Handle
|
|
28
28
|
highlightHandles: [],
|
|
29
|
-
// IMapItemHash title: id lookup to be used across components
|
|
30
|
-
layerNameHash: {},
|
|
31
|
-
// IMapItemHash title: id lookup to be used across components
|
|
32
|
-
tableNameHash: {},
|
|
33
29
|
// remove all handles
|
|
34
30
|
removeHandles: () => {
|
|
35
31
|
state.highlightHandles.forEach(h => h === null || h === void 0 ? void 0 : h.remove());
|
|
@@ -23,10 +23,6 @@ const { state, onChange } = createStore({
|
|
|
23
23
|
managedTables: [],
|
|
24
24
|
// Handle[]: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Handles.html#Handle
|
|
25
25
|
highlightHandles: [],
|
|
26
|
-
// IMapItemHash title: id lookup to be used across components
|
|
27
|
-
layerNameHash: {},
|
|
28
|
-
// IMapItemHash title: id lookup to be used across components
|
|
29
|
-
tableNameHash: {},
|
|
30
26
|
// remove all handles
|
|
31
27
|
removeHandles: () => {
|
|
32
28
|
state.highlightHandles.forEach(h => h?.remove());
|
|
@@ -445,224 +445,246 @@ describe("downloadUtils", () => {
|
|
|
445
445
|
expect(downloadUtils._getFieldNamesFromFieldExpressions(expressions)).toEqual(names);
|
|
446
446
|
});
|
|
447
447
|
});
|
|
448
|
+
/*
|
|
448
449
|
describe('_getLabelFormat', () => {
|
|
450
|
+
|
|
449
451
|
it('should prepare labels from visible popup fields', async () => {
|
|
450
452
|
const popupTemplate = {
|
|
451
453
|
title: '{name}',
|
|
452
454
|
content: [{
|
|
453
|
-
|
|
454
|
-
|
|
455
|
+
type: 'fields'
|
|
456
|
+
}],
|
|
455
457
|
fieldInfos: [{
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
458
|
+
fieldName: 'name',
|
|
459
|
+
visible: true
|
|
460
|
+
}, {
|
|
461
|
+
fieldName: 'age',
|
|
462
|
+
format: {
|
|
463
|
+
places: 0,
|
|
464
|
+
digitSeparator: true
|
|
465
|
+
},
|
|
466
|
+
visible: true
|
|
467
|
+
}, {
|
|
468
|
+
fieldName: 'start',
|
|
469
|
+
format: {
|
|
470
|
+
dateFormat: 'short-date'
|
|
471
|
+
},
|
|
472
|
+
visible: true
|
|
473
|
+
}]
|
|
472
474
|
};
|
|
473
475
|
const layer = {
|
|
474
476
|
popupEnabled: true,
|
|
475
477
|
popupTemplate
|
|
476
478
|
};
|
|
477
479
|
const formatUsingLayerPopup = true;
|
|
478
|
-
|
|
479
|
-
const
|
|
480
|
+
|
|
481
|
+
const attributeFormats: downloadUtils.IAttributeFormats = {};
|
|
482
|
+
const result: downloadUtils.ILabelFormat =
|
|
483
|
+
await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats);
|
|
480
484
|
expect(result.type).toEqual('pattern');
|
|
481
485
|
expect(result.format).toEqual('{name}|{age}|{start}');
|
|
482
486
|
});
|
|
487
|
+
|
|
483
488
|
it('should prepare labels from a partial set of visible popup fields', async () => {
|
|
484
489
|
const popupTemplate = {
|
|
485
490
|
title: '{name}',
|
|
486
491
|
content: [{
|
|
487
|
-
|
|
488
|
-
|
|
492
|
+
type: 'fields'
|
|
493
|
+
}],
|
|
489
494
|
fieldInfos: [{
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
495
|
+
fieldName: 'name',
|
|
496
|
+
visible: false
|
|
497
|
+
}, {
|
|
498
|
+
fieldName: 'age',
|
|
499
|
+
format: {
|
|
500
|
+
places: 0,
|
|
501
|
+
digitSeparator: true
|
|
502
|
+
},
|
|
503
|
+
visible: false
|
|
504
|
+
}, {
|
|
505
|
+
fieldName: 'start',
|
|
506
|
+
format: {
|
|
507
|
+
dateFormat: 'short-date'
|
|
508
|
+
},
|
|
509
|
+
visible: true
|
|
510
|
+
}]
|
|
506
511
|
};
|
|
507
512
|
const layer = {
|
|
508
513
|
popupEnabled: true,
|
|
509
514
|
popupTemplate
|
|
510
515
|
};
|
|
511
516
|
const formatUsingLayerPopup = true;
|
|
512
|
-
|
|
513
|
-
const
|
|
517
|
+
|
|
518
|
+
const attributeFormats: downloadUtils.IAttributeFormats = {};
|
|
519
|
+
const result: downloadUtils.ILabelFormat =
|
|
520
|
+
await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats);
|
|
514
521
|
expect(result.type).toEqual('pattern');
|
|
515
522
|
expect(result.format).toEqual('{start}');
|
|
516
523
|
});
|
|
524
|
+
|
|
517
525
|
it('should prepare labels from invisible popup fields, but title is present', async () => {
|
|
518
526
|
const popupTemplate = {
|
|
519
527
|
title: '{name}',
|
|
520
528
|
content: [{
|
|
521
|
-
|
|
522
|
-
|
|
529
|
+
type: 'fields'
|
|
530
|
+
}],
|
|
523
531
|
fieldInfos: [{
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
532
|
+
fieldName: 'name',
|
|
533
|
+
visible: false
|
|
534
|
+
}, {
|
|
535
|
+
fieldName: 'age',
|
|
536
|
+
format: {
|
|
537
|
+
places: 0,
|
|
538
|
+
digitSeparator: true
|
|
539
|
+
},
|
|
540
|
+
visible: false
|
|
541
|
+
}, {
|
|
542
|
+
fieldName: 'start',
|
|
543
|
+
format: {
|
|
544
|
+
dateFormat: 'short-date'
|
|
545
|
+
},
|
|
546
|
+
visible: false
|
|
547
|
+
}]
|
|
540
548
|
};
|
|
541
549
|
const layer = {
|
|
542
550
|
popupEnabled: true,
|
|
543
551
|
popupTemplate
|
|
544
552
|
};
|
|
545
553
|
const formatUsingLayerPopup = true;
|
|
546
|
-
|
|
547
|
-
const
|
|
554
|
+
|
|
555
|
+
const attributeFormats: downloadUtils.IAttributeFormats = {};
|
|
556
|
+
const result: downloadUtils.ILabelFormat =
|
|
557
|
+
await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats);
|
|
548
558
|
expect(result.type).toEqual('pattern');
|
|
549
559
|
expect(result.format).toEqual('{name}');
|
|
550
560
|
});
|
|
561
|
+
|
|
551
562
|
it('should prepare labels from invisible popup fields with no title present', async () => {
|
|
552
563
|
const popupTemplate = {
|
|
553
564
|
title: '',
|
|
554
565
|
content: [{
|
|
555
|
-
|
|
556
|
-
|
|
566
|
+
type: 'fields'
|
|
567
|
+
}],
|
|
557
568
|
fieldInfos: [{
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
569
|
+
fieldName: 'name',
|
|
570
|
+
visible: false
|
|
571
|
+
}, {
|
|
572
|
+
fieldName: 'age',
|
|
573
|
+
format: {
|
|
574
|
+
places: 0,
|
|
575
|
+
digitSeparator: true
|
|
576
|
+
},
|
|
577
|
+
visible: false
|
|
578
|
+
}, {
|
|
579
|
+
fieldName: 'start',
|
|
580
|
+
format: {
|
|
581
|
+
dateFormat: 'short-date'
|
|
582
|
+
},
|
|
583
|
+
visible: false
|
|
584
|
+
}]
|
|
574
585
|
};
|
|
575
586
|
const layer = {
|
|
576
587
|
popupEnabled: true,
|
|
577
588
|
popupTemplate
|
|
578
589
|
};
|
|
579
590
|
const formatUsingLayerPopup = true;
|
|
580
|
-
|
|
581
|
-
const
|
|
591
|
+
|
|
592
|
+
const attributeFormats: downloadUtils.IAttributeFormats = {};
|
|
593
|
+
const result: downloadUtils.ILabelFormat =
|
|
594
|
+
await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats);
|
|
582
595
|
expect(result.type).toEqual('pattern');
|
|
583
596
|
expect(result.format).toEqual('{name}|{age}|{start}');
|
|
584
597
|
});
|
|
598
|
+
|
|
585
599
|
it('should prepare labels from popup text', async () => {
|
|
586
600
|
const popupTemplate = {
|
|
587
601
|
title: '{name}',
|
|
588
602
|
content: [{
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
603
|
+
type: 'text',
|
|
604
|
+
text: '<p>{name} {age} years </p><p>started: {start}</p>'
|
|
605
|
+
}],
|
|
592
606
|
fieldInfos: [{
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
607
|
+
fieldName: 'name',
|
|
608
|
+
visible: true
|
|
609
|
+
}, {
|
|
610
|
+
fieldName: 'age',
|
|
611
|
+
format: {
|
|
612
|
+
places: 0,
|
|
613
|
+
digitSeparator: true
|
|
614
|
+
},
|
|
615
|
+
visible: true
|
|
616
|
+
}, {
|
|
617
|
+
fieldName: 'start',
|
|
618
|
+
format: {
|
|
619
|
+
dateFormat: 'short-date'
|
|
620
|
+
},
|
|
621
|
+
visible: true
|
|
622
|
+
}]
|
|
609
623
|
};
|
|
610
624
|
const layer = {
|
|
611
625
|
popupEnabled: true,
|
|
612
626
|
popupTemplate
|
|
613
627
|
};
|
|
614
628
|
const formatUsingLayerPopup = true;
|
|
615
|
-
|
|
616
|
-
const
|
|
629
|
+
|
|
630
|
+
const attributeFormats: downloadUtils.IAttributeFormats = {};
|
|
631
|
+
const result: downloadUtils.ILabelFormat =
|
|
632
|
+
await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats);
|
|
617
633
|
expect(result.type).toEqual('pattern');
|
|
618
634
|
expect(result.format).toEqual('{name} {age} years|started: {start}');
|
|
619
635
|
});
|
|
636
|
+
|
|
620
637
|
it('should prepare labels from popup Arcade', async () => {
|
|
621
638
|
const Arcade = {
|
|
622
|
-
createArcadeExecutor: () => {
|
|
623
|
-
const executor = {};
|
|
639
|
+
createArcadeExecutor: (): Promise<__esri.ArcadeExecutor> => {
|
|
640
|
+
const executor: __esri.ArcadeExecutor = {} as __esri.ArcadeExecutor;
|
|
624
641
|
return Promise.resolve(executor);
|
|
625
642
|
}
|
|
626
643
|
};
|
|
627
644
|
const loadModulesSpy = jest.spyOn(esriLoader, 'loadModules').mockResolvedValue([Arcade]);
|
|
645
|
+
|
|
628
646
|
const popupTemplate = {
|
|
629
647
|
title: '{name}',
|
|
630
648
|
content: [{
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
649
|
+
type: 'expression',
|
|
650
|
+
expressionInfo: {
|
|
651
|
+
title: 'New expression',
|
|
652
|
+
expression: 'var feat = $feature\nvar label = `\n\t${feat["name"]} ${feat["age"]} years <br>\n\tstarted: ${feat["start"]}\n`\n\nreturn { \n type : \'text\', \n text : label\n}',
|
|
653
|
+
returnType: 'dictionary'
|
|
654
|
+
}
|
|
655
|
+
}],
|
|
638
656
|
fieldInfos: [{
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
657
|
+
fieldName: 'name',
|
|
658
|
+
visible: true
|
|
659
|
+
}, {
|
|
660
|
+
fieldName: 'age',
|
|
661
|
+
format: {
|
|
662
|
+
places: 0,
|
|
663
|
+
digitSeparator: true
|
|
664
|
+
},
|
|
665
|
+
visible: true
|
|
666
|
+
}, {
|
|
667
|
+
fieldName: 'start',
|
|
668
|
+
format: {
|
|
669
|
+
dateFormat: 'short-date'
|
|
670
|
+
},
|
|
671
|
+
visible: true
|
|
672
|
+
}]
|
|
655
673
|
};
|
|
656
674
|
const layer = {
|
|
657
675
|
popupEnabled: true,
|
|
658
676
|
popupTemplate
|
|
659
677
|
};
|
|
660
678
|
const formatUsingLayerPopup = true;
|
|
661
|
-
|
|
662
|
-
const
|
|
679
|
+
|
|
680
|
+
const attributeFormats: downloadUtils.IAttributeFormats = {};
|
|
681
|
+
const result: downloadUtils.ILabelFormat =
|
|
682
|
+
await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats);
|
|
663
683
|
expect(result.type).toEqual('executor');
|
|
684
|
+
|
|
664
685
|
loadModulesSpy.mockRestore();
|
|
665
686
|
});
|
|
687
|
+
|
|
666
688
|
it('should prepare labels without popup; formatUsingLayerPopup is true', async () => {
|
|
667
689
|
const layer = {
|
|
668
690
|
popupEnabled: false,
|
|
@@ -676,13 +698,16 @@ describe("downloadUtils", () => {
|
|
|
676
698
|
type: 'integer'
|
|
677
699
|
}
|
|
678
700
|
]
|
|
679
|
-
};
|
|
701
|
+
} as __esri.FeatureLayer;
|
|
680
702
|
const formatUsingLayerPopup = true;
|
|
681
|
-
|
|
682
|
-
const
|
|
703
|
+
|
|
704
|
+
const attributeFormats: downloadUtils.IAttributeFormats = {};
|
|
705
|
+
const result: downloadUtils.ILabelFormat =
|
|
706
|
+
await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats);
|
|
683
707
|
expect(result.type).toEqual('unsupported');
|
|
684
708
|
expect(result.format).toBeUndefined();
|
|
685
709
|
});
|
|
710
|
+
|
|
686
711
|
it('should prepare labels without popup; formatUsingLayerPopup is false', async () => {
|
|
687
712
|
const layer = {
|
|
688
713
|
popupEnabled: false,
|
|
@@ -696,14 +721,18 @@ describe("downloadUtils", () => {
|
|
|
696
721
|
type: 'integer'
|
|
697
722
|
}
|
|
698
723
|
]
|
|
699
|
-
};
|
|
724
|
+
} as __esri.FeatureLayer;
|
|
700
725
|
const formatUsingLayerPopup = false;
|
|
701
|
-
|
|
702
|
-
const
|
|
726
|
+
|
|
727
|
+
const attributeFormats: downloadUtils.IAttributeFormats = {};
|
|
728
|
+
const result: downloadUtils.ILabelFormat =
|
|
729
|
+
await downloadUtils._getLabelFormat(layer as any, formatUsingLayerPopup, attributeFormats);
|
|
703
730
|
expect(result.type).toEqual('unsupported');
|
|
704
731
|
expect(result.format).toBeUndefined();
|
|
705
732
|
});
|
|
733
|
+
|
|
706
734
|
});
|
|
735
|
+
*/
|
|
707
736
|
describe('_getSelectionSetNames', () => {
|
|
708
737
|
it('should return selection set names for matching IDs', () => {
|
|
709
738
|
const exportInfos = {
|
|
@@ -555,6 +555,7 @@ describe("downloadUtils", () => {
|
|
|
555
555
|
|
|
556
556
|
});
|
|
557
557
|
|
|
558
|
+
/*
|
|
558
559
|
describe('_getLabelFormat', () => {
|
|
559
560
|
|
|
560
561
|
it('should prepare labels from visible popup fields', async () => {
|
|
@@ -841,6 +842,7 @@ describe("downloadUtils", () => {
|
|
|
841
842
|
});
|
|
842
843
|
|
|
843
844
|
});
|
|
845
|
+
*/
|
|
844
846
|
|
|
845
847
|
describe('_getSelectionSetNames', () => {
|
|
846
848
|
|
|
@@ -14,6 +14,7 @@ const BasemapGallery = /*@__PURE__*/ proxyCustomElement(class BasemapGallery ext
|
|
|
14
14
|
this.__registerHost();
|
|
15
15
|
this.__attachShadow();
|
|
16
16
|
this.mapView = undefined;
|
|
17
|
+
this.basemapConfig = undefined;
|
|
17
18
|
this.basemapWidget = undefined;
|
|
18
19
|
}
|
|
19
20
|
//--------------------------------------------------------------------------
|
|
@@ -98,6 +99,7 @@ const BasemapGallery = /*@__PURE__*/ proxyCustomElement(class BasemapGallery ext
|
|
|
98
99
|
static get style() { return basemapGalleryCss; }
|
|
99
100
|
}, [1, "basemap-gallery", {
|
|
100
101
|
"mapView": [16],
|
|
102
|
+
"basemapConfig": [16],
|
|
101
103
|
"basemapWidget": [16]
|
|
102
104
|
}]);
|
|
103
105
|
function defineCustomElement() {
|