@esri/solutions-components 0.10.33 → 0.10.35
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/cjs/basemap-gallery_7.cjs.entry.js +6 -6
- package/dist/cjs/buffer-tools_3.cjs.entry.js +1 -1
- package/dist/cjs/calcite-alert_5.cjs.entry.js +7 -5
- package/dist/cjs/calcite-combobox_3.cjs.entry.js +1 -1
- package/dist/cjs/calcite-flow_4.cjs.entry.js +18 -16
- package/dist/cjs/{calcite-modal_3.cjs.entry.js → calcite-modal.cjs.entry.js} +27 -368
- package/dist/cjs/calcite-shell-panel_14.cjs.entry.js +7 -7
- package/dist/cjs/calcite-shell_3.cjs.entry.js +440 -0
- package/dist/cjs/card-manager_3.cjs.entry.js +114 -10
- package/dist/cjs/crowdsource-manager.cjs.entry.js +16 -6
- package/dist/cjs/crowdsource-reporter.cjs.entry.js +24 -21
- package/dist/cjs/feature-comments.cjs.entry.js +1 -1
- package/dist/cjs/feature-form-flow-item.cjs.entry.js +1 -1
- package/dist/cjs/feature-list.cjs.entry.js +4 -4
- package/dist/cjs/features-flow-item.cjs.entry.js +1 -1
- package/dist/cjs/instant-apps-time-filter.cjs.entry.js +2 -2
- package/dist/cjs/layout-manager.cjs.entry.js +1 -1
- package/dist/cjs/list-flow-item.cjs.entry.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/location-flow-item.cjs.entry.js +1 -1
- package/dist/cjs/map-select-tools_3.cjs.entry.js +3 -3
- package/dist/cjs/pci-calculator.cjs.entry.js +1 -1
- package/dist/cjs/public-notification.cjs.entry.js +1 -1
- package/dist/cjs/refine-results-flow-item.cjs.entry.js +1 -1
- package/dist/cjs/share-item.cjs.entry.js +1 -1
- package/dist/cjs/solution-configuration.cjs.entry.js +3 -3
- package/dist/cjs/solution-contents_3.cjs.entry.js +3 -3
- package/dist/cjs/solution-item-accordion.cjs.entry.js +1 -1
- package/dist/cjs/solution-item-icon.cjs.entry.js +1 -1
- package/dist/cjs/solutions-components.cjs.js +1 -1
- package/dist/cjs/spatial-ref.cjs.entry.js +1 -1
- package/dist/collection/assets/t9n/delete-dialog/resources.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_ar.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_bg.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_bs.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_ca.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_cs.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_da.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_de.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_el.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_en.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_es.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_et.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_fi.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_fr.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_he.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_hr.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_hu.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_id.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_it.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_ja.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_ko.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_lt.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_lv.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_nb.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_nl.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_pl.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_pt-BR.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_pt-PT.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_ro.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_ru.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_sk.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_sl.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_sr.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_sv.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_th.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_tr.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_uk.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_vi.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_zh-CN.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_zh-HK.json +8 -0
- package/dist/collection/assets/t9n/delete-dialog/resources_zh-TW.json +8 -0
- package/dist/collection/assets/t9n/map-card/resources.json +2 -1
- package/dist/collection/assets/t9n/map-card/resources_en.json +2 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/create-feature/create-feature.css +2 -1
- package/dist/collection/components/create-feature/create-feature.js +3 -1
- package/dist/collection/components/crowdsource-manager/crowdsource-manager.css +4 -0
- package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +38 -5
- package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.js +24 -21
- package/dist/collection/components/delete-button/delete-button.js +20 -27
- package/dist/collection/components/delete-dialog/delete-dialog.css +23 -0
- package/dist/collection/components/delete-dialog/delete-dialog.js +239 -0
- package/dist/collection/components/edit-card/edit-card.js +1 -1
- package/dist/collection/components/feature-comments/feature-comments.js +1 -1
- package/dist/collection/components/feature-details/feature-details.js +13 -11
- package/dist/collection/components/feature-form-flow-item/feature-form-flow-item.js +1 -1
- package/dist/collection/components/feature-list/feature-list.js +4 -4
- package/dist/collection/components/features-flow-item/features-flow-item.js +1 -1
- package/dist/collection/components/floor-filter/floor-filter.js +1 -1
- package/dist/collection/components/info-card/info-card.js +2 -2
- package/dist/collection/components/json-editor/json-editor.js +1 -1
- package/dist/collection/components/layer-list/layer-list.js +5 -5
- package/dist/collection/components/layer-table/layer-table.css +6 -0
- package/dist/collection/components/layer-table/layer-table.js +53 -7
- package/dist/collection/components/layout-manager/layout-manager.js +1 -1
- package/dist/collection/components/list-flow-item/list-flow-item.js +1 -1
- package/dist/collection/components/location-flow-item/location-flow-item.js +1 -1
- package/dist/collection/components/map-card/map-card.js +168 -2
- package/dist/collection/components/map-draw-tools/map-draw-tools.js +1 -1
- package/dist/collection/components/map-fullscreen/map-fullscreen.js +1 -1
- package/dist/collection/components/map-layer-picker/map-layer-picker.js +1 -1
- package/dist/collection/components/map-legend/map-legend.js +1 -1
- package/dist/collection/components/map-picker/map-picker.js +1 -1
- package/dist/collection/components/map-search/map-search.js +1 -1
- package/dist/collection/components/map-select-tools/map-select-tools.js +1 -1
- package/dist/collection/components/map-tools/map-tools.js +1 -1
- package/dist/collection/components/pci-calculator/pci-calculator.js +1 -1
- package/dist/collection/components/pdf-download/pdf-download.js +1 -1
- package/dist/collection/components/public-notification/public-notification.js +1 -1
- package/dist/collection/components/refine-results-flow-item/refine-results-flow-item.js +1 -1
- package/dist/collection/components/refine-selection/refine-selection.js +1 -1
- package/dist/collection/components/share-item/share-item.js +1 -1
- package/dist/collection/components/solution-configuration/solution-configuration.js +3 -3
- package/dist/collection/components/solution-contents/solution-contents.js +1 -1
- package/dist/collection/components/solution-item/solution-item.js +1 -1
- package/dist/collection/components/solution-item-accordion/solution-item-accordion.js +1 -1
- package/dist/collection/components/solution-item-details/solution-item-details.js +1 -1
- package/dist/collection/components/solution-item-icon/solution-item-icon.js +1 -1
- package/dist/collection/components/solution-item-sharing/solution-item-sharing.js +1 -1
- package/dist/collection/components/solution-organization-variables/solution-organization-variables.js +1 -1
- package/dist/collection/components/solution-resource-item/solution-resource-item.js +1 -1
- package/dist/collection/components/solution-spatial-ref/solution-spatial-ref.js +1 -1
- package/dist/collection/components/solution-template-data/solution-template-data.js +1 -1
- package/dist/collection/components/solution-variables/solution-variables.js +1 -1
- package/dist/collection/components/spatial-ref/spatial-ref.js +1 -1
- package/dist/components/card-manager2.js +40 -34
- package/dist/components/create-feature2.js +4 -2
- package/dist/components/crowdsource-manager.js +115 -98
- package/dist/components/crowdsource-reporter.js +110 -101
- package/dist/components/delete-button2.js +24 -41
- package/dist/components/delete-dialog.d.ts +11 -0
- package/dist/components/delete-dialog.js +11 -0
- package/dist/components/delete-dialog2.js +165 -0
- package/dist/components/edit-card2.js +1 -1
- package/dist/components/feature-comments.js +1 -1
- package/dist/components/feature-details2.js +67 -59
- package/dist/components/feature-form-flow-item.js +1 -1
- package/dist/components/feature-list2.js +4 -4
- package/dist/components/features-flow-item.js +1 -1
- package/dist/components/floor-filter2.js +1 -1
- package/dist/components/info-card2.js +38 -32
- package/dist/components/instant-apps-time-filter.js +2 -2
- package/dist/components/json-editor2.js +1 -1
- package/dist/components/layer-list2.js +5 -5
- package/dist/components/layer-table2.js +111 -82
- package/dist/components/layout-manager.js +1 -1
- package/dist/components/list-flow-item.js +1 -1
- package/dist/components/location-flow-item.js +1 -1
- package/dist/components/map-card2.js +157 -60
- package/dist/components/map-draw-tools2.js +1 -1
- package/dist/components/map-fullscreen2.js +1 -1
- package/dist/components/map-layer-picker2.js +1 -1
- package/dist/components/map-legend2.js +1 -1
- package/dist/components/map-picker2.js +1 -1
- package/dist/components/map-search2.js +1 -1
- package/dist/components/map-select-tools2.js +1 -1
- package/dist/components/map-tools2.js +1 -1
- package/dist/components/pci-calculator.js +1 -1
- package/dist/components/pdf-download2.js +1 -1
- package/dist/components/public-notification.js +1 -1
- package/dist/components/refine-results-flow-item.js +1 -1
- package/dist/components/refine-selection2.js +1 -1
- package/dist/components/share-item.js +1 -1
- package/dist/components/solution-configuration.js +3 -3
- package/dist/components/solution-contents2.js +1 -1
- package/dist/components/solution-item-accordion.js +1 -1
- package/dist/components/solution-item-details2.js +1 -1
- package/dist/components/solution-item-icon2.js +1 -1
- package/dist/components/solution-item-sharing2.js +1 -1
- package/dist/components/solution-item2.js +1 -1
- package/dist/components/solution-organization-variables2.js +1 -1
- package/dist/components/solution-resource-item2.js +1 -1
- package/dist/components/solution-spatial-ref2.js +1 -1
- package/dist/components/solution-template-data2.js +1 -1
- package/dist/components/solution-variables2.js +1 -1
- package/dist/components/spatial-ref.js +1 -1
- package/dist/esm/basemap-gallery_7.entry.js +6 -6
- package/dist/esm/buffer-tools_3.entry.js +1 -1
- package/dist/esm/calcite-alert_5.entry.js +7 -5
- package/dist/esm/calcite-combobox_3.entry.js +1 -1
- package/dist/esm/calcite-flow_4.entry.js +18 -16
- package/dist/esm/{calcite-modal_3.entry.js → calcite-modal.entry.js} +30 -369
- package/dist/esm/calcite-shell-panel_14.entry.js +7 -7
- package/dist/esm/calcite-shell_3.entry.js +434 -0
- package/dist/esm/card-manager_3.entry.js +114 -10
- package/dist/esm/crowdsource-manager.entry.js +16 -6
- package/dist/esm/crowdsource-reporter.entry.js +24 -21
- package/dist/esm/feature-comments.entry.js +1 -1
- package/dist/esm/feature-form-flow-item.entry.js +1 -1
- package/dist/esm/feature-list.entry.js +4 -4
- package/dist/esm/features-flow-item.entry.js +1 -1
- package/dist/esm/instant-apps-time-filter.entry.js +2 -2
- package/dist/esm/layout-manager.entry.js +1 -1
- package/dist/esm/list-flow-item.entry.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/location-flow-item.entry.js +1 -1
- package/dist/esm/map-select-tools_3.entry.js +3 -3
- package/dist/esm/pci-calculator.entry.js +1 -1
- package/dist/esm/public-notification.entry.js +1 -1
- package/dist/esm/refine-results-flow-item.entry.js +1 -1
- package/dist/esm/share-item.entry.js +1 -1
- package/dist/esm/solution-configuration.entry.js +3 -3
- package/dist/esm/solution-contents_3.entry.js +3 -3
- package/dist/esm/solution-item-accordion.entry.js +1 -1
- package/dist/esm/solution-item-icon.entry.js +1 -1
- package/dist/esm/solutions-components.js +1 -1
- package/dist/esm/spatial-ref.entry.js +1 -1
- package/dist/solutions-components/assets/t9n/delete-dialog/resources.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_ar.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_bg.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_bs.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_ca.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_cs.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_da.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_de.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_el.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_en.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_es.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_et.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_fi.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_fr.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_he.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_hr.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_hu.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_id.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_it.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_ja.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_ko.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_lt.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_lv.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_nb.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_nl.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_pl.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_pt-BR.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_pt-PT.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_ro.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_ru.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_sk.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_sl.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_sr.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_sv.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_th.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_tr.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_uk.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_vi.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_zh-CN.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_zh-HK.json +8 -0
- package/dist/solutions-components/assets/t9n/delete-dialog/resources_zh-TW.json +8 -0
- package/dist/solutions-components/assets/t9n/map-card/resources.json +2 -1
- package/dist/solutions-components/assets/t9n/map-card/resources_en.json +2 -1
- package/dist/solutions-components/{p-6c3261d7.entry.js → p-06364211.entry.js} +1 -1
- package/dist/solutions-components/{p-d119872d.entry.js → p-18089a0b.entry.js} +1 -1
- package/dist/solutions-components/p-1f07e21a.entry.js +6 -0
- package/dist/solutions-components/p-2a6ecaa9.entry.js +11 -0
- package/dist/solutions-components/p-3a513c67.entry.js +6 -0
- package/dist/solutions-components/p-46416e11.entry.js +6 -0
- package/dist/solutions-components/{p-a8525233.entry.js → p-588adf13.entry.js} +1 -1
- package/dist/solutions-components/{p-5fc0e134.entry.js → p-59ccd27c.entry.js} +1 -1
- package/dist/solutions-components/p-5eb9a413.entry.js +6 -0
- package/dist/solutions-components/{p-42f75c8f.entry.js → p-6502d0f8.entry.js} +1 -1
- package/dist/solutions-components/p-70c0050c.entry.js +6 -0
- package/dist/solutions-components/p-74bcef23.entry.js +11 -0
- package/dist/solutions-components/{p-4cb12506.entry.js → p-76154700.entry.js} +1 -1
- package/dist/solutions-components/p-82ddf716.entry.js +6 -0
- package/dist/solutions-components/{p-d08ece15.entry.js → p-841816a1.entry.js} +1 -1
- package/dist/solutions-components/{p-4f5913f3.entry.js → p-89046451.entry.js} +1 -1
- package/dist/solutions-components/p-938bc915.entry.js +6 -0
- package/dist/solutions-components/{p-fa7672c7.entry.js → p-9d56f4b5.entry.js} +1 -1
- package/dist/solutions-components/p-9da8a590.entry.js +6 -0
- package/dist/solutions-components/{p-5fdb8f83.entry.js → p-a5d79c86.entry.js} +1 -1
- package/dist/solutions-components/{p-dd0bd439.entry.js → p-b4c49411.entry.js} +2 -2
- package/dist/solutions-components/p-b86b2664.entry.js +6 -0
- package/dist/solutions-components/{p-ddc1218d.entry.js → p-be4c7ffd.entry.js} +1 -1
- package/dist/solutions-components/{p-ffa9a117.entry.js → p-cb3199f9.entry.js} +1 -1
- package/dist/solutions-components/{p-a07322cc.entry.js → p-df7de4b7.entry.js} +1 -1
- package/dist/solutions-components/{p-1f072e2c.entry.js → p-eadff42b.entry.js} +1 -1
- package/dist/solutions-components/{p-8a411917.entry.js → p-ecf642c2.entry.js} +1 -1
- package/dist/solutions-components/{p-06db1bfd.entry.js → p-efb4cb43.entry.js} +1 -1
- package/dist/solutions-components/{p-e4a42efa.entry.js → p-fa1c368c.entry.js} +1 -1
- package/dist/solutions-components/solutions-components.esm.js +1 -1
- package/dist/types/components/crowdsource-manager/crowdsource-manager.d.ts +8 -0
- package/dist/types/components/crowdsource-reporter/crowdsource-reporter.d.ts +6 -1
- package/dist/types/components/delete-button/delete-button.d.ts +4 -12
- package/dist/types/components/delete-dialog/delete-dialog.d.ts +75 -0
- package/dist/types/components/layer-table/layer-table.d.ts +21 -1
- package/dist/types/components/map-card/map-card.d.ts +46 -1
- package/dist/types/components.d.ts +117 -0
- package/dist/types/preact.d.ts +5 -0
- package/package.json +2 -2
- package/dist/solutions-components/p-084719d6.entry.js +0 -6
- package/dist/solutions-components/p-3bcdf332.entry.js +0 -6
- package/dist/solutions-components/p-51e2500f.entry.js +0 -6
- package/dist/solutions-components/p-52280e10.entry.js +0 -17
- package/dist/solutions-components/p-67ca4a64.entry.js +0 -6
- package/dist/solutions-components/p-710bd9ec.entry.js +0 -6
- package/dist/solutions-components/p-7e6a8c06.entry.js +0 -6
- package/dist/solutions-components/p-8e6081e0.entry.js +0 -6
- package/dist/solutions-components/p-b9b77b87.entry.js +0 -6
- package/dist/solutions-components/p-edd88d2d.entry.js +0 -6
@@ -232,8 +232,8 @@ export class InfoCard {
|
|
232
232
|
const id = this._features?.selectedFeature?.getObjectId();
|
233
233
|
const ids = parseInt(id?.toString(), 10) > -1 ? [id] : [];
|
234
234
|
const deleteEnabled = this._layer?.editingEnabled && this._layer?.capabilities?.operations?.supportsDelete;
|
235
|
-
return (h(Host, { key: '
|
236
|
-
h("div", { key: '
|
235
|
+
return (h(Host, { key: 'e200fd8d903d1c3295247a45f352ae62394501d5' }, h("calcite-shell", { key: '0b467ed0b480944660ef2194b302070d56cb70e4', style: { position: this.position } }, this._getHeader(), h("calcite-loader", { key: 'cf6172f533f67274b04ac61af75f44ffe62cbc9e', class: loadingClass, label: this._translations.fetchingData }), h("div", { key: '06f3e0c61e14fe73c0fadd58c3cf2c7c03efff6d', class: "esri-widget feature-node " + featureNodeClass, id: this._featuresNodeId }), h("div", { key: '0f964afa075abbd27db827f90d189b9bc2a7c9d4', class: `${editButtonClass} width-100`, slot: "footer" }, this.allowEditing &&
|
236
|
+
h("div", { key: 'd518934d172425ecb46e6b28ea683427d8982382', class: "display-flex top-border padding-1-2" }, h("calcite-button", { key: '4d4f3583b6448e33e3d3ad1aba8c9178f71d75b8', appearance: "solid", id: "solutions-edit", onClick: () => this._openEditRecord(), width: "full" }, this._translations.edit), this.isMobile && deleteEnabled ? (h("delete-button", { class: "padding-inline-start-1 width-100", id: "solutions-delete", ids: ids, layer: this._layer, onEditsComplete: () => this._closePopup() })) : undefined, h("calcite-tooltip", { key: '5358ba4079f1906d23b6df5b1facb84eec9692d3', placement: "bottom", "reference-element": "solutions-edit" }, h("span", { key: '8466cfb97ce12e46a06ed665afe974377911e101' }, this._translations.edit)), this.isMobile ? (h("calcite-tooltip", { placement: "bottom", "reference-element": "solutions-delete" }, h("span", null, this._translations.delete))) : undefined), this.paginationEnabled && !nextBackDisabled && h("div", { key: '61c551cc2b0c0a2981daa9bf67c7e13318508ca6', class: `display-flex padding-1-2 button-container top-border ${nextBackClass}` }, h("div", { key: '379dc6697743caedf8fdbea16423b83e9e823a5b' }, h("calcite-button", { key: '616a52367d2f56db0104ce279951a81fcf60a376', appearance: 'transparent', disabled: nextBackDisabled, iconFlipRtl: "both", iconStart: "chevron-left", id: "solutions-back", onClick: () => this._back(), width: "full" }), h("calcite-tooltip", { key: 'f7f83e145c25591de025650fd358ca6200c4b6c5', placement: "top", "reference-element": "solutions-back" }, h("span", { key: '8afbde57b91ee8597de237db87efda7eabc10d69' }, this._translations.back))), h("calcite-action", { key: '23344d4abac515d089b8770d63181a989971aa33', class: 'pagination-action', iconFlipRtl: true, onClick: () => this._toggleListView(), scale: "s", text: "", textEnabled: true }, h("span", { key: 'a4c784c5a2c7dfeb9442a58f86961a3242f55055', class: "pagination-count" }, this._count)), h("div", { key: '75e33452a93e9a77f30505957e87b8758ab8d2dd' }, h("calcite-button", { key: '0283a96c401e1929588e28d6ec014eb28b93d1f1', appearance: "transparent", disabled: nextBackDisabled, iconFlipRtl: "both", iconStart: "chevron-right", id: "solutions-next", onClick: () => this._next(), width: "full" }), h("calcite-tooltip", { key: '658a26b1bca471b96799cb81ee941f0556619dc9', placement: "top", "reference-element": "solutions-next" }, h("span", { key: '9892d4ee61a1b5656711bb0a188282d9b46bd3f9' }, this._translations.next))))), h("edit-card", { key: '541268c24631ab526bf1b65313d39f3ca606cb6d', class: editClass, enableEditGeometry: this.enableEditGeometry, graphicIndex: this._features?.selectedFeatureIndex, graphics: this.graphics, mapView: this.mapView, open: this._editRecordOpen }), h("calcite-alert", { key: '1cdff00f5d7e72b5db220750d290593a1baf68c4', icon: "layer-broken", kind: "warning", label: "", onCalciteAlertClose: () => this._alertClosed(), open: this._alertOpen, placement: "top" }, h("div", { key: 'bb250c5906f0e998a794b5c02c22f9643fab16a9', slot: "title" }, this._translations.editDisabled), h("div", { key: 'd330d1ce74473fc76630d2607ab3ca2584aabbd7', slot: "message" }, this._translations.enableEditing)))));
|
237
237
|
}
|
238
238
|
//--------------------------------------------------------------------------
|
239
239
|
//
|
@@ -135,7 +135,7 @@ export class JsonEditor {
|
|
135
135
|
* Renders the component.
|
136
136
|
*/
|
137
137
|
render() {
|
138
|
-
return (h(Host, { key: '
|
138
|
+
return (h(Host, { key: '0c7531c8c816eb9be80d357b19b568ccdb22c407' }, h("div", { key: '866f82b68c2a750edfc80d801e4ea95a3f655100', id: `${this.instanceid}-editor-container`, class: "editor-container padding-right" }, h("div", { key: '5b9f15641f6a26daeb3847d8ef75c76b8be44fc5', class: "editor-controls" }, h("div", { key: 'd1e91eaa242ccd23d5dc1386b6a58d2fafeb4083', class: "editor-buttons" }, h("calcite-icon", { key: 'd9364f7dfdbc22a414b4711c8a22e145b533998e', id: `${this.instanceid}-errorFlag`, icon: "exclamation-mark-triangle", title: this._translations.errorFlag, scale: "s", class: "edit-error-flag" }), h("calcite-button", { key: '29750fc7cedf1f9caf556df3ff84dc45d6b922b9', id: `${this.instanceid}-undo`, color: "blue", appearance: "solid", title: this._translations.undo, onClick: () => this._undo(), scale: "s", class: "edit-button" }, h("calcite-icon", { key: 'c95008b3fccb8bc33f01eb1bd204c84141850981', icon: "undo", scale: "s" })), h("calcite-button", { key: '49ac9ee70c58954f6dee34524f4c7ab6fa0d7a49', id: `${this.instanceid}-redo`, color: "blue", appearance: "solid", title: this._translations.redo, onClick: () => this._redo(), scale: "s", class: "edit-button" }, h("calcite-icon", { key: '2170c36d0fd236c989222991353324d50afa8ac0', icon: "redo", scale: "s" })), h("calcite-button", { key: 'c6e1a0f84fac6fb02d2590cc7b32aefffbc06d25', id: `${this.instanceid}-diff`, color: "blue", appearance: "solid", title: this._translations.diff, onClick: () => this._toggleEditor(), scale: "s", class: "edit-button" }, h("calcite-icon", { key: '88443cfd2a8888447acc75588ecff7938ade5273', icon: "compare", scale: "s" })), h("calcite-button", { key: '42dcd8f63600d4ddb77eaedd529321999cf537b3', id: `${this.instanceid}-search`, appearance: "outline", color: "blue", title: this._translations.search, onClick: () => this._search(), scale: "s", class: "edit-button" }, h("calcite-icon", { key: '31e8ced3f14f1475c62133fbd7730e34b2bc4028', icon: "search", scale: "s" })), h("calcite-button", { key: '769b268d7476f3fe1a8623e9432cfae56602db0c', id: `${this.instanceid}-reset`, color: "blue", appearance: "solid", disabled: true, title: this._translations.cancelEdits, onClick: () => this._reset(), scale: "s", class: "edit-button" }, h("calcite-icon", { key: '4a8ead1dbf8fefe8b4106a0f6f9c42fb5b875cd2', icon: "reset", scale: "s" })))), h("div", { key: '98f29030a0fa0ecbce0d165840a30edd655ba249', class: "edit-parent" }, h("div", { key: '1441e32a184bc24f2a0a25fcb855c41b40bd0cec', id: `${this.instanceid}-container`, class: "json-edit-container" }), h("div", { key: 'f0cf0a3bd11d3f8102c4cc8695ac1743bac36bbb', id: `${this.instanceid}-diff-container`, class: "json-edit-container display-none" })))));
|
139
139
|
}
|
140
140
|
//--------------------------------------------------------------------------
|
141
141
|
//
|
@@ -91,22 +91,20 @@ export class LayerList {
|
|
91
91
|
*/
|
92
92
|
async componentWillLoad() {
|
93
93
|
await this._getTranslations();
|
94
|
-
this._isLoading = true;
|
95
94
|
}
|
96
95
|
/**
|
97
96
|
* StencilJS: Called once just after the component is fully loaded and the first render() occurs.
|
98
97
|
*/
|
99
98
|
async componentDidLoad() {
|
100
99
|
await this.setLayers();
|
101
|
-
this._isLoading = false;
|
102
100
|
}
|
103
101
|
/**
|
104
102
|
* Renders the component.
|
105
103
|
*/
|
106
104
|
render() {
|
107
|
-
return (h(Fragment, { key: '
|
108
|
-
h("calcite-notice", { key: '
|
109
|
-
h("calcite-list", { key: '
|
105
|
+
return (h(Fragment, { key: 'f8e0c21d4ff87d663a1e0f00f1d9ef1123091db9' }, this._isLoading && h("calcite-loader", { key: '42058be6b41126e58d33895bc237b174e55a16ed', label: "", scale: "m" }), !this._isLoading && this.mapView && this._noLayersToDisplay &&
|
106
|
+
h("calcite-notice", { key: '89d9073a156f07379699cc5b67bf9ba54654cc68', class: "error-msg", icon: "layers-reference", kind: "danger", open: true }, h("div", { key: '730b8dcca79bd45a7a6eecb5030626d1dcd01238', slot: "title" }, this._translations.error), h("div", { key: '656e8276ffab75734909348f49f11492de1d5a8b', slot: "message" }, this._translations.noLayerToDisplayErrorMsg)), !this._isLoading && this.mapView &&
|
107
|
+
h("calcite-list", { key: '1d2206d3163b6c5ed8511e32ab296f0025889824', "selection-appearance": "border", "selection-mode": "none" }, this.renderLayerList())));
|
110
108
|
}
|
111
109
|
//--------------------------------------------------------------------------
|
112
110
|
//
|
@@ -120,7 +118,9 @@ export class LayerList {
|
|
120
118
|
*/
|
121
119
|
async setLayers() {
|
122
120
|
if (this.mapView) {
|
121
|
+
this._isLoading = true;
|
123
122
|
await this.initLayerHash();
|
123
|
+
this._isLoading = false;
|
124
124
|
}
|
125
125
|
}
|
126
126
|
/**
|
@@ -148,4 +148,10 @@ html[dir="rtl"] .share-action {
|
|
148
148
|
--calcite-color-border-input: var(--calcite-color-border-3);
|
149
149
|
width: 60%;
|
150
150
|
padding: 10px;
|
151
|
+
}
|
152
|
+
|
153
|
+
.delete-red {
|
154
|
+
--calcite-icon-color: var(--calcite-color-status-danger);
|
155
|
+
--calcite-color-text-1: var(--calcite-color-status-danger);
|
156
|
+
--calcite-color-text-3: var(--calcite-color-status-danger);
|
151
157
|
}
|
@@ -27,6 +27,7 @@ import * as downloadUtils from "../../utils/downloadUtils";
|
|
27
27
|
import "@esri/instant-apps-components/dist/components/instant-apps-social-share";
|
28
28
|
export class LayerTable {
|
29
29
|
constructor() {
|
30
|
+
this.appLayout = undefined;
|
30
31
|
this.defaultGlobalId = undefined;
|
31
32
|
this.defaultLayerId = undefined;
|
32
33
|
this.defaultOid = undefined;
|
@@ -55,6 +56,7 @@ export class LayerTable {
|
|
55
56
|
this._filterOpen = false;
|
56
57
|
this._layer = undefined;
|
57
58
|
this._selectAllActive = false;
|
59
|
+
this._deleteDialogOpen = false;
|
58
60
|
this._showHideOpen = false;
|
59
61
|
this._showOnlySelected = false;
|
60
62
|
this._toolInfos = undefined;
|
@@ -235,6 +237,12 @@ export class LayerTable {
|
|
235
237
|
// Watch handlers
|
236
238
|
//
|
237
239
|
//--------------------------------------------------------------------------
|
240
|
+
/**
|
241
|
+
* Update the url params when the appLayout changes
|
242
|
+
*/
|
243
|
+
appLayoutWatchHandler() {
|
244
|
+
this._updateShareUrl();
|
245
|
+
}
|
238
246
|
/**
|
239
247
|
* Handle url defaults when defaultOid is set
|
240
248
|
*/
|
@@ -521,11 +529,12 @@ export class LayerTable {
|
|
521
529
|
const tableHeightClass = this.isMobile ? "height-full" : "height-full-adjusted";
|
522
530
|
const showSearch = this._canShowFullTextSearch();
|
523
531
|
this._validateActiveActions();
|
524
|
-
return (h(Host, { key: '
|
525
|
-
h("div", { key: '
|
532
|
+
return (h(Host, { key: '04fccaaa9862ed315d99ad74f7e1135dd5656613' }, h("calcite-shell", { key: 'e332d781be1499857a5e17e37ad2e058bba453b1' }, this._getTableControlRow("header"), h("div", { key: '6337e494f879c250494c5f5859daec627fdd0700', class: `width-full ${tableHeightClass}` }, h("calcite-panel", { key: 'd0d437997906fd15f97765cb89c3917f66b20c37', class: "height-full width-full" }, showSearch &&
|
533
|
+
h("div", { key: '596a2d54fd707941d9e2ec167598313d9ee9b295', class: "search-container" }, h("calcite-input", { key: '31cd1ffb09bc2c6c9c1f9daf39f3e9549cbceeb2', class: "search", clearable: true, icon: "search", onCalciteInputChange: (evt) => void this._searchTextChanged(evt), placeholder: this._searchPlaceHolder, title: this._searchPlaceHolder, type: "search" })), h("calcite-loader", { key: 'b4ba3d32fb346134672e08d55428bd38ac43f40d', class: loadingClass, label: this._translations.fetchingData, scale: "l" }), h("div", { key: '4fbac73935be7a1163643543e6d77a200534e5e3', class: tableNodeClass, ref: this.onTableNodeCreate }))), !this.isMobile ? (h("div", { class: "bottom-left text-color height-19" }, this._translations.recordsSelected
|
526
534
|
.replace("{{total}}", total)
|
527
|
-
.replace("{{selected}}", selected))) : undefined), this.createFilterModal && this._filterModal()));
|
535
|
+
.replace("{{selected}}", selected))) : undefined), this.createFilterModal && this._filterModal(), h("delete-dialog", { key: '3b0dba8bc391d777f4687ad6f4e905aeb1eb580b', id: "deleteDialogId", ids: this._getIds(), layer: this._layer, onDeleteDialogClose: () => this._deleteDialogOpen = false, open: this._deleteDialogOpen, ref: (el) => this._deleteDialog = el })));
|
528
536
|
}
|
537
|
+
_deleteDialog;
|
529
538
|
/**
|
530
539
|
* Called once after the component is loaded
|
531
540
|
*/
|
@@ -828,7 +837,7 @@ export class LayerTable {
|
|
828
837
|
icon: "trash",
|
829
838
|
indicator: undefined,
|
830
839
|
label: this._translations.delete,
|
831
|
-
func: () =>
|
840
|
+
func: () => this._showDelete(),
|
832
841
|
disabled: !featuresSelected,
|
833
842
|
isDanger: true,
|
834
843
|
isOverflow: false
|
@@ -1068,7 +1077,7 @@ export class LayerTable {
|
|
1068
1077
|
_getDropdown(id) {
|
1069
1078
|
const dropdownItems = this._getDropdownItems();
|
1070
1079
|
return dropdownItems.length > 0 ? (h("calcite-dropdown", { closeOnSelectDisabled: true, disabled: this._layer === undefined, id: "solutions-more", onCalciteDropdownBeforeClose: () => this._forceShowHide(), ref: (el) => this._moreDropdown = el }, h("calcite-action", { appearance: "solid", id: id, label: "", onClick: () => this._closeShowHide(), slot: "trigger", text: "" }, h("calcite-button", { appearance: "transparent", iconEnd: "chevron-down", kind: "neutral" }, this._translations.more)), h("calcite-dropdown-group", { "selection-mode": "none" }, dropdownItems.map(item => {
|
1071
|
-
return (h("calcite-dropdown-group", { class: item.disabled ? "disabled" : ""
|
1080
|
+
return (h("calcite-dropdown-group", { class: `${item.disabled ? "disabled" : ""} ${item.icon === "trash" ? "delete-red" : ""}`, selectionMode: "none" }, h("calcite-dropdown-item", { disabled: item.loading, iconStart: item.isSublist && this._showHideOpen ? "chevron-down" : item.loading ? "" : item.icon, id: `layer-table-${item.icon}`, onClick: item.func }, item.loading ? (h("div", { class: "display-flex" }, h("calcite-loader", { inline: true, label: item.label, scale: "m" }), item.label)) : item.label)));
|
1072
1081
|
})), this._showHideOpen ? this._getFieldlist() : undefined)) : undefined;
|
1073
1082
|
}
|
1074
1083
|
/**
|
@@ -1093,6 +1102,15 @@ export class LayerTable {
|
|
1093
1102
|
const _disabled = this._layer === undefined ? true : disabled;
|
1094
1103
|
return (h("div", { class: "display-flex", id: this._getId(icon), slot: slot }, h("calcite-action", { active: active, appearance: "solid", disabled: _disabled, icon: icon, id: `layer-table-${icon}`, indicator: indicator, label: label, loading: loading, onClick: func, text: label, textEnabled: true }), this._getToolTip("bottom", icon, label)));
|
1095
1104
|
}
|
1105
|
+
/**
|
1106
|
+
* Show the delete dialog
|
1107
|
+
*
|
1108
|
+
* @param
|
1109
|
+
*
|
1110
|
+
*/
|
1111
|
+
_showDelete() {
|
1112
|
+
this._deleteDialogOpen = true;
|
1113
|
+
}
|
1096
1114
|
/**
|
1097
1115
|
* Get an action and tooltip for share
|
1098
1116
|
*
|
@@ -1131,6 +1149,7 @@ export class LayerTable {
|
|
1131
1149
|
else {
|
1132
1150
|
urlObj.searchParams.delete("oid");
|
1133
1151
|
}
|
1152
|
+
urlObj.searchParams.set("applayout", this.appLayout);
|
1134
1153
|
this._shareNode.shareUrl = urlObj.href;
|
1135
1154
|
}
|
1136
1155
|
/**
|
@@ -1168,7 +1187,7 @@ export class LayerTable {
|
|
1168
1187
|
*/
|
1169
1188
|
_getDangerAction(icon, label, func, disabled) {
|
1170
1189
|
const _disabled = this._layer === undefined ? true : disabled;
|
1171
|
-
return (h("div", { class: "display-flex", id: this._getId(icon) }, icon === "trash" ? (h("delete-button", { buttonType: "action", class: "display-flex", disabled: _disabled, icon: icon, ids: this._getIds(), layer: this._layer })) : (h("calcite-action", { appearance: "solid", disabled: _disabled, id: icon, onClick: func, text: label }, h("calcite-button", { appearance: "transparent", iconStart: icon, kind: "danger" }, label))), this._getToolTip("bottom", icon, label)));
|
1190
|
+
return (h("div", { class: "display-flex", id: this._getId(icon) }, icon === "trash" ? (h("delete-button", { buttonType: "action", class: "display-flex", disabled: _disabled, icon: icon, id: "solutions-delete", ids: this._getIds(), layer: this._layer })) : (h("calcite-action", { appearance: "solid", disabled: _disabled, id: icon, onClick: func, text: label }, h("calcite-button", { appearance: "transparent", iconStart: icon, kind: "danger" }, label))), this._getToolTip("bottom", icon, label)));
|
1172
1191
|
}
|
1173
1192
|
/**
|
1174
1193
|
* Return all currently selected IDs from the table
|
@@ -1176,7 +1195,7 @@ export class LayerTable {
|
|
1176
1195
|
* @param number[] the selected ids
|
1177
1196
|
*/
|
1178
1197
|
_getIds() {
|
1179
|
-
return this._table
|
1198
|
+
return this._table?.highlightIds?.toArray();
|
1180
1199
|
}
|
1181
1200
|
/**
|
1182
1201
|
* Store a reference to the table node after it's first created
|
@@ -1887,6 +1906,29 @@ export class LayerTable {
|
|
1887
1906
|
}
|
1888
1907
|
static get properties() {
|
1889
1908
|
return {
|
1909
|
+
"appLayout": {
|
1910
|
+
"type": "string",
|
1911
|
+
"mutable": false,
|
1912
|
+
"complexType": {
|
1913
|
+
"original": "AppLayout",
|
1914
|
+
"resolved": "\"mapView\" | \"splitView\" | \"tableView\"",
|
1915
|
+
"references": {
|
1916
|
+
"AppLayout": {
|
1917
|
+
"location": "import",
|
1918
|
+
"path": "../../utils/interfaces",
|
1919
|
+
"id": "src/utils/interfaces.ts::AppLayout"
|
1920
|
+
}
|
1921
|
+
}
|
1922
|
+
},
|
1923
|
+
"required": false,
|
1924
|
+
"optional": false,
|
1925
|
+
"docs": {
|
1926
|
+
"tags": [],
|
1927
|
+
"text": "AppLayout: the current app layout"
|
1928
|
+
},
|
1929
|
+
"attribute": "app-layout",
|
1930
|
+
"reflect": false
|
1931
|
+
},
|
1890
1932
|
"defaultGlobalId": {
|
1891
1933
|
"type": "unknown",
|
1892
1934
|
"mutable": false,
|
@@ -2243,6 +2285,7 @@ export class LayerTable {
|
|
2243
2285
|
"_filterOpen": {},
|
2244
2286
|
"_layer": {},
|
2245
2287
|
"_selectAllActive": {},
|
2288
|
+
"_deleteDialogOpen": {},
|
2246
2289
|
"_showHideOpen": {},
|
2247
2290
|
"_showOnlySelected": {},
|
2248
2291
|
"_toolInfos": {},
|
@@ -2360,6 +2403,9 @@ export class LayerTable {
|
|
2360
2403
|
static get elementRef() { return "el"; }
|
2361
2404
|
static get watchers() {
|
2362
2405
|
return [{
|
2406
|
+
"propName": "appLayout",
|
2407
|
+
"methodName": "appLayoutWatchHandler"
|
2408
|
+
}, {
|
2363
2409
|
"propName": "defaultOid",
|
2364
2410
|
"methodName": "defaultOidWatchHandler"
|
2365
2411
|
}, {
|
@@ -76,7 +76,7 @@ export class LayoutManager {
|
|
76
76
|
* Renders the component.
|
77
77
|
*/
|
78
78
|
render() {
|
79
|
-
return (h(Host, { key: '
|
79
|
+
return (h(Host, { key: '030b3a829da8eceb1ed2588ec9d0cf56e6c3b801' }, h("div", { key: 'c883b792dae7fd3118d50ca19529ad215812636a', class: "display-flex" }, h("div", { key: '24a8dacb438879ad29ad216d904c0c12229937c8', class: "display-flex action-center" }, h("calcite-icon", { key: 'd8ab7b953f906c807a5a3b8f6a38736e5da7308e', class: "icon icon-color", icon: "information", id: "app-information-icon", scale: "s" }), h("calcite-popover", { key: 'f43e72d3edbb29dadd4d7bf16e0f2028f16fa515', closable: true, label: "", referenceElement: "app-information-icon" }, h("span", { key: '0059d393750540cbcfe0051a9440447c261ec99f', class: "tooltip-message" }, this._translations.appInfo))), h("div", { key: 'ea6e944271a0538cc6c8558c08c9940f9a84a6bf', class: "header-text" }, this._translations.layout), this._getAction("grid-background", ELayoutMode.GRID, this._translations.grid), this._getAction("vertical-background", ELayoutMode.VERTICAL, this._translations.vertical), this._getAction("horizontal-background", ELayoutMode.HORIZONTAL, this._translations.horizontal))));
|
80
80
|
}
|
81
81
|
//--------------------------------------------------------------------------
|
82
82
|
//
|
@@ -62,7 +62,7 @@ export class ListFlowItem {
|
|
62
62
|
//
|
63
63
|
//--------------------------------------------------------------------------
|
64
64
|
render() {
|
65
|
-
return (h(Host, { key: '
|
65
|
+
return (h(Host, { key: 'e241883e9516ea61cd50c0f6b023bbc51870b4a1' }, h("slot", { key: 'ec5f8579ecdbee858ec2ec200e3183aacb19c9ba' })));
|
66
66
|
}
|
67
67
|
static get is() { return "list-flow-item"; }
|
68
68
|
static get encapsulation() { return "shadow"; }
|
@@ -62,7 +62,7 @@ export class LocationFlowItem {
|
|
62
62
|
//
|
63
63
|
//--------------------------------------------------------------------------
|
64
64
|
render() {
|
65
|
-
return (h(Host, { key: '
|
65
|
+
return (h(Host, { key: '65473b5e82ede7018cc249c583e09be2981172ed' }, h("slot", { key: '0d637e47de593df9cd1e716538742996d9de682e' })));
|
66
66
|
}
|
67
67
|
static get is() { return "location-flow-item"; }
|
68
68
|
static get encapsulation() { return "shadow"; }
|
@@ -23,6 +23,7 @@ import { loadModules } from "../../utils/loadModules";
|
|
23
23
|
import { joinAppProxies } from "templates-common-library-esm/functionality/proxy";
|
24
24
|
import { getLocaleComponentStrings } from "../../utils/locale";
|
25
25
|
import { getFeatureLayerView, goToSelection } from "../../utils/mapViewUtils";
|
26
|
+
import "@esri/instant-apps-components/dist/components/instant-apps-social-share";
|
26
27
|
// TODO navigation and accessability isn't right for the map list
|
27
28
|
// tab does not go into the list when it's open
|
28
29
|
// focus is not set when it opens
|
@@ -31,6 +32,7 @@ import { getFeatureLayerView, goToSelection } from "../../utils/mapViewUtils";
|
|
31
32
|
// TODO map list should close if the user clicks something else...hope this will be easy when I figure out how to set focus when it opens
|
32
33
|
export class MapCard {
|
33
34
|
constructor() {
|
35
|
+
this.appLayout = undefined;
|
34
36
|
this.appProxies = undefined;
|
35
37
|
this.defaultWebmapId = "";
|
36
38
|
this.defaultLayerId = undefined;
|
@@ -38,6 +40,7 @@ export class MapCard {
|
|
38
40
|
this.enableLegend = undefined;
|
39
41
|
this.enableFloorFilter = undefined;
|
40
42
|
this.enableFullscreen = undefined;
|
43
|
+
this.enableShare = false;
|
41
44
|
this.enableSingleExpand = true;
|
42
45
|
this.enableSearch = undefined;
|
43
46
|
this.enableBasemap = undefined;
|
@@ -55,6 +58,8 @@ export class MapCard {
|
|
55
58
|
this.theme = undefined;
|
56
59
|
this.toolOrder = undefined;
|
57
60
|
this.isMapLayout = undefined;
|
61
|
+
this.shareIncludeEmbed = undefined;
|
62
|
+
this.shareIncludeSocial = undefined;
|
58
63
|
this.selectedFeaturesIds = undefined;
|
59
64
|
this.selectedLayer = undefined;
|
60
65
|
this.zoomToScale = undefined;
|
@@ -143,6 +148,10 @@ export class MapCard {
|
|
143
148
|
* ResizeObserver: The observer that watches for toolbar size changes
|
144
149
|
*/
|
145
150
|
_resizeObserver;
|
151
|
+
/**
|
152
|
+
* HTMLInstantAppsSocialShareElement: Element to support app sharing to social media
|
153
|
+
*/
|
154
|
+
_shareNode;
|
146
155
|
/**
|
147
156
|
* HTMLCalciteDropdownElement: Dropdown the will support show/hide of table columns
|
148
157
|
*/
|
@@ -172,12 +181,36 @@ export class MapCard {
|
|
172
181
|
// Watch handlers
|
173
182
|
//
|
174
183
|
//--------------------------------------------------------------------------
|
184
|
+
/**
|
185
|
+
* Update the url params when the appLayout changes
|
186
|
+
*/
|
187
|
+
appLayoutWatchHandler() {
|
188
|
+
this._updateShareUrl();
|
189
|
+
}
|
175
190
|
/**
|
176
191
|
* Add/remove home widget
|
177
192
|
*/
|
178
193
|
enableHomeWatchHandler() {
|
179
194
|
this._initHome();
|
180
195
|
}
|
196
|
+
/**
|
197
|
+
* Update the toolbar when the share button is enabled/disabled
|
198
|
+
*/
|
199
|
+
enableShareWatchHandler() {
|
200
|
+
// this should be caught by component did render and is when I test locally
|
201
|
+
// however have had reported case where it is not somehow on devext so adding explicit check here
|
202
|
+
if (this._toolbar) {
|
203
|
+
this._updateToolbar();
|
204
|
+
}
|
205
|
+
}
|
206
|
+
/**
|
207
|
+
* watch for changes in map view and get the first layer
|
208
|
+
*/
|
209
|
+
async mapViewWatchHandler() {
|
210
|
+
if (this.mapView) {
|
211
|
+
this._updateShareUrl();
|
212
|
+
}
|
213
|
+
}
|
181
214
|
/**
|
182
215
|
* watch for changes in layer view and verify if it has editing enabled
|
183
216
|
*/
|
@@ -190,6 +223,7 @@ export class MapCard {
|
|
190
223
|
* watch for features ids changes
|
191
224
|
*/
|
192
225
|
async selectedFeaturesIdsWatchHandler() {
|
226
|
+
this._updateShareUrl();
|
193
227
|
this._validateEnabledActions();
|
194
228
|
}
|
195
229
|
/**
|
@@ -218,12 +252,14 @@ export class MapCard {
|
|
218
252
|
*/
|
219
253
|
async resetFilter() {
|
220
254
|
this._filterActive = false;
|
255
|
+
this._updateShareUrl();
|
221
256
|
}
|
222
257
|
/**
|
223
258
|
* updates the filter
|
224
259
|
*/
|
225
260
|
async updateFilterState() {
|
226
261
|
this._filterActive = this._definitionExpression !== this.selectedLayer.definitionExpression;
|
262
|
+
this._updateShareUrl();
|
227
263
|
}
|
228
264
|
/**
|
229
265
|
* updates the layer in map layer picker
|
@@ -299,7 +335,7 @@ export class MapCard {
|
|
299
335
|
const mapHeightClass = this.mapInfos?.length > 1 || this.isMapLayout ? "map-height" : "height-full";
|
300
336
|
const progressClass = this.isMapLayout ? "" : "display-none";
|
301
337
|
this._validateActiveActions();
|
302
|
-
return (h(Host, { key: '
|
338
|
+
return (h(Host, { key: 'd4e5ff9c4aa08a4effe19a54a1a48463cb8b3774' }, h("div", { key: '51ee35d267d5ef081a4c160de3e03b1790d328c8', class: `${mapContainerClass} width-full`, ref: (el) => this._toolbar = el }, this._getActionBar(), !this.isMobile && this.isMapLayout && this._getDropdown("more-table-options"), this.enableShare && !this.isMobile && this.isMapLayout ? this._getShare("share") : undefined), h("calcite-progress", { key: '70a5c232aae8a9ff6740fd326e6ba6fe61936541', class: progressClass, value: 0 }), h("div", { key: 'c399acc019d7f0a16dbb644eee4cfdd1e6e83c7c', class: `${mapHeightClass} ${mapClass}`, ref: (el) => (this._mapDiv = el) }), h("map-tools", { key: 'c6a88ccfa140fe9b0d059f74b9254af6ef0997ce', basemapConfig: this.basemapConfig, class: `box-shadow ${themeClass}`, enableBasemap: this.enableBasemap, enableFloorFilter: this.enableFloorFilter, enableFullscreen: this.enableFullscreen, enableHome: this.enableHome, enableLegend: this.enableLegend, enableSearch: this.enableSearch, enableSingleExpand: this.enableSingleExpand, homeZoomToolsSize: this.homeZoomToolsSize, mapView: this.mapView, mapWidgetsSize: this.mapWidgetsSize, position: this.mapWidgetsPosition, ref: (el) => this._mapTools = el, searchConfiguration: this._searchConfiguration, stackTools: this.stackTools, toolOrder: this.toolOrder })));
|
303
339
|
}
|
304
340
|
/**
|
305
341
|
* Called each time after the component is loaded
|
@@ -318,6 +354,7 @@ export class MapCard {
|
|
318
354
|
this._resizeObserver.observe(this._toolbar);
|
319
355
|
this._observerSet = true;
|
320
356
|
}
|
357
|
+
this._updateShareUrl();
|
321
358
|
}
|
322
359
|
//--------------------------------------------------------------------------
|
323
360
|
//
|
@@ -396,6 +433,7 @@ export class MapCard {
|
|
396
433
|
mapView: this.mapView
|
397
434
|
});
|
398
435
|
}
|
436
|
+
this._updateShareUrl();
|
399
437
|
}
|
400
438
|
/**
|
401
439
|
* Add/Remove tools from the action bar and dropdown based on available size
|
@@ -414,7 +452,7 @@ export class MapCard {
|
|
414
452
|
prev += cur.width;
|
415
453
|
return prev;
|
416
454
|
}, 0);
|
417
|
-
const skipControls = ["solutions-more", "solutions-map-layer-picker-container", "map-picker"];
|
455
|
+
const skipControls = ["solutions-more", "solutions-map-layer-picker-container", "map-picker", "solutions-action-share"];
|
418
456
|
if (controlsWidth > toolbarWidth) {
|
419
457
|
if (this._toolbarSizeInfos.length > 0) {
|
420
458
|
const controlsThatFit = [...this._toolbarSizeInfos].reverse().reduce((prev, cur) => {
|
@@ -540,6 +578,50 @@ export class MapCard {
|
|
540
578
|
return (h("calcite-dropdown-group", { class: item.disabled ? "disabled" : "", selectionMode: "none" }, h("calcite-dropdown-item", { disabled: item.loading, iconStart: item.icon, id: "solutions-subset-list", onClick: item.func }, item.loading ? (h("div", { class: "display-flex" }, h("calcite-loader", { inline: true, label: item.label, scale: "m" }), item.label)) : item.label)));
|
541
579
|
})))) : undefined;
|
542
580
|
}
|
581
|
+
/**
|
582
|
+
* Get an action and tooltip for share
|
583
|
+
*
|
584
|
+
* @param icon string the name of the icon to display, will also be used in its id
|
585
|
+
*
|
586
|
+
* @returns VNode The node representing the DOM element that will contain the action
|
587
|
+
*/
|
588
|
+
_getShare(icon) {
|
589
|
+
return (h("div", { class: "share-action", id: this._getId(icon) }, h("instant-apps-social-share", { autoUpdateShareUrl: false, class: "instant-app-share", embed: this.shareIncludeEmbed, popoverButtonIconScale: "s", ref: el => {
|
590
|
+
this._shareNode = el;
|
591
|
+
this._updateShareUrl();
|
592
|
+
}, scale: "m", shareButtonColor: "neutral", shareButtonType: "action", socialMedia: this.shareIncludeSocial, view: this.mapView }), this._getToolTip("bottom", icon, this._translations.share)));
|
593
|
+
}
|
594
|
+
/**
|
595
|
+
* Called each time the values that are used for custom url params change
|
596
|
+
*/
|
597
|
+
_updateShareUrl() {
|
598
|
+
const url = this._shareNode?.shareUrl;
|
599
|
+
if (!url) {
|
600
|
+
return;
|
601
|
+
}
|
602
|
+
const urlObj = new URL(url);
|
603
|
+
//set the additional search params
|
604
|
+
if (this._loadedId) {
|
605
|
+
urlObj.searchParams.set("webmap", this._loadedId);
|
606
|
+
}
|
607
|
+
else {
|
608
|
+
urlObj.searchParams.delete("webmap");
|
609
|
+
}
|
610
|
+
if (this.selectedLayer?.id) {
|
611
|
+
urlObj.searchParams.set("layer", this.selectedLayer.id);
|
612
|
+
}
|
613
|
+
else {
|
614
|
+
urlObj.searchParams.delete("layer");
|
615
|
+
}
|
616
|
+
if (this.selectedFeaturesIds?.length > 0) {
|
617
|
+
urlObj.searchParams.set("oid", this.selectedFeaturesIds.join(","));
|
618
|
+
}
|
619
|
+
else {
|
620
|
+
urlObj.searchParams.delete("oid");
|
621
|
+
}
|
622
|
+
urlObj.searchParams.set("applayout", this.appLayout);
|
623
|
+
this._shareNode.shareUrl = urlObj.href;
|
624
|
+
}
|
543
625
|
/**
|
544
626
|
* Open show/hide dropdown
|
545
627
|
* @protected
|
@@ -827,6 +909,29 @@ export class MapCard {
|
|
827
909
|
}
|
828
910
|
static get properties() {
|
829
911
|
return {
|
912
|
+
"appLayout": {
|
913
|
+
"type": "string",
|
914
|
+
"mutable": false,
|
915
|
+
"complexType": {
|
916
|
+
"original": "AppLayout",
|
917
|
+
"resolved": "\"mapView\" | \"splitView\" | \"tableView\"",
|
918
|
+
"references": {
|
919
|
+
"AppLayout": {
|
920
|
+
"location": "import",
|
921
|
+
"path": "../../utils/interfaces",
|
922
|
+
"id": "src/utils/interfaces.ts::AppLayout"
|
923
|
+
}
|
924
|
+
}
|
925
|
+
},
|
926
|
+
"required": false,
|
927
|
+
"optional": false,
|
928
|
+
"docs": {
|
929
|
+
"tags": [],
|
930
|
+
"text": "AppLayout: the current app layout"
|
931
|
+
},
|
932
|
+
"attribute": "app-layout",
|
933
|
+
"reflect": false
|
934
|
+
},
|
830
935
|
"appProxies": {
|
831
936
|
"type": "any",
|
832
937
|
"mutable": false,
|
@@ -947,6 +1052,24 @@ export class MapCard {
|
|
947
1052
|
"attribute": "enable-fullscreen",
|
948
1053
|
"reflect": false
|
949
1054
|
},
|
1055
|
+
"enableShare": {
|
1056
|
+
"type": "boolean",
|
1057
|
+
"mutable": false,
|
1058
|
+
"complexType": {
|
1059
|
+
"original": "boolean",
|
1060
|
+
"resolved": "boolean",
|
1061
|
+
"references": {}
|
1062
|
+
},
|
1063
|
+
"required": false,
|
1064
|
+
"optional": false,
|
1065
|
+
"docs": {
|
1066
|
+
"tags": [],
|
1067
|
+
"text": "boolean: when true the share widget will be available"
|
1068
|
+
},
|
1069
|
+
"attribute": "enable-share",
|
1070
|
+
"reflect": false,
|
1071
|
+
"defaultValue": "false"
|
1072
|
+
},
|
950
1073
|
"enableSingleExpand": {
|
951
1074
|
"type": "boolean",
|
952
1075
|
"mutable": false,
|
@@ -1270,6 +1393,40 @@ export class MapCard {
|
|
1270
1393
|
"attribute": "is-map-layout",
|
1271
1394
|
"reflect": false
|
1272
1395
|
},
|
1396
|
+
"shareIncludeEmbed": {
|
1397
|
+
"type": "boolean",
|
1398
|
+
"mutable": false,
|
1399
|
+
"complexType": {
|
1400
|
+
"original": "boolean",
|
1401
|
+
"resolved": "boolean",
|
1402
|
+
"references": {}
|
1403
|
+
},
|
1404
|
+
"required": false,
|
1405
|
+
"optional": false,
|
1406
|
+
"docs": {
|
1407
|
+
"tags": [],
|
1408
|
+
"text": "boolean: When true the share options will include embed option"
|
1409
|
+
},
|
1410
|
+
"attribute": "share-include-embed",
|
1411
|
+
"reflect": false
|
1412
|
+
},
|
1413
|
+
"shareIncludeSocial": {
|
1414
|
+
"type": "boolean",
|
1415
|
+
"mutable": false,
|
1416
|
+
"complexType": {
|
1417
|
+
"original": "boolean",
|
1418
|
+
"resolved": "boolean",
|
1419
|
+
"references": {}
|
1420
|
+
},
|
1421
|
+
"required": false,
|
1422
|
+
"optional": false,
|
1423
|
+
"docs": {
|
1424
|
+
"tags": [],
|
1425
|
+
"text": "boolean: When true the share options will include social media sharing"
|
1426
|
+
},
|
1427
|
+
"attribute": "share-include-social",
|
1428
|
+
"reflect": false
|
1429
|
+
},
|
1273
1430
|
"selectedFeaturesIds": {
|
1274
1431
|
"type": "unknown",
|
1275
1432
|
"mutable": false,
|
@@ -1516,8 +1673,17 @@ export class MapCard {
|
|
1516
1673
|
static get elementRef() { return "el"; }
|
1517
1674
|
static get watchers() {
|
1518
1675
|
return [{
|
1676
|
+
"propName": "appLayout",
|
1677
|
+
"methodName": "appLayoutWatchHandler"
|
1678
|
+
}, {
|
1519
1679
|
"propName": "enableHome",
|
1520
1680
|
"methodName": "enableHomeWatchHandler"
|
1681
|
+
}, {
|
1682
|
+
"propName": "enableShare",
|
1683
|
+
"methodName": "enableShareWatchHandler"
|
1684
|
+
}, {
|
1685
|
+
"propName": "mapView",
|
1686
|
+
"methodName": "mapViewWatchHandler"
|
1521
1687
|
}, {
|
1522
1688
|
"propName": "selectedLayer",
|
1523
1689
|
"methodName": "selectedLayerWatchHandler"
|
@@ -183,7 +183,7 @@ export class MapDrawTools {
|
|
183
183
|
"border" : "border esri-widget esri-sketch__panel";
|
184
184
|
const undoRedoClass = this.drawMode === EDrawMode.SKETCH ?
|
185
185
|
"display-none" : "esri-widget esri-sketch__panel border-left esri-sketch__section";
|
186
|
-
return (h(Host, { key: '
|
186
|
+
return (h(Host, { key: 'c6717ea80242f622168f49efeaf2cebf497ca09e' }, h("div", { key: '2dd805c704381cb411d69b757072371d91fb243d', class: containerClass }, h("div", { key: '28b81cb37f3e11f66656195fc10b4c170f8d8fe9', ref: (el) => { this._sketchElement = el; } }), h("div", { key: 'a6de7ee6dbf4f02eb355c032c7bd9bf4ec4426e9', class: undoRedoClass }, h("calcite-action", { key: '2efeab5db057e1657c3639a39ae4d4150d331776', disabled: !this.undoEnabled, icon: "undo", onClick: () => this._undo(), scale: "s", text: this._translations.undo }), h("calcite-action", { key: '770693e30a6cfb58f593bb471342ea34556fc8d4', disabled: !this.redoEnabled, icon: "redo", onClick: () => this._redo(), scale: "s", text: this._translations.redo })))));
|
187
187
|
}
|
188
188
|
//--------------------------------------------------------------------------
|
189
189
|
//
|
@@ -95,7 +95,7 @@ export class MapFullscreen {
|
|
95
95
|
* Renders the component.
|
96
96
|
*/
|
97
97
|
render() {
|
98
|
-
return (h(Host, { key: '
|
98
|
+
return (h(Host, { key: '350ebb01c52631c9441b6554f5b8e26f8ca1418e' }, h("div", { key: 'b09344b721da2cc18b74fb21f8017446ba5baa03', class: "fullscreen-widget", ref: (el) => { this._fullscreenElement = el; } })));
|
99
99
|
}
|
100
100
|
/**
|
101
101
|
* StencilJS: Called just after the component updates.
|
@@ -160,7 +160,7 @@ export class MapLayerPicker {
|
|
160
160
|
const id = "map-layer-picker";
|
161
161
|
let style = this.height > 0 ? { "height": `${this.height.toString()}px` } : {};
|
162
162
|
style = { ...style, "display": this.display };
|
163
|
-
return (h(Host, { key: '
|
163
|
+
return (h(Host, { key: 'a876ec719aede5ec43af1b40f09e4c9e6b693f34' }, h("div", { key: '78e720facdf3c124208ff8dbde18a056234e63ac', class: "map-layer-picker-container", style: style }, h("div", { key: '6bb47ccb7c28565b140d79b6af6399a235e3ccf9', class: "map-layer-picker", style: style }, !this._hasValidLayers ? this._getInvalidPlaceholder() :
|
164
164
|
!this._hasMultipleLayers && this.showSingleLayerAsLabel ? this._getSingleLayerPlaceholder() :
|
165
165
|
this.type === "combobox" ? this._getCombobox(id) :
|
166
166
|
this.type === "select" ? this._getSelect(id) : this._getDropdown(id)))));
|
@@ -86,7 +86,7 @@ export class MapLegend {
|
|
86
86
|
* StencilJS: Renders the component.
|
87
87
|
*/
|
88
88
|
render() {
|
89
|
-
return (h(Host, { key: '
|
89
|
+
return (h(Host, { key: '2c5cfbfd4048347ace5ff3cf17d411e85454be7a' }, h("div", { key: '3927ef8af3a4a93fbd558480a96f982ca5b477a2', ref: (el) => { this._legendElement = el; } })));
|
90
90
|
}
|
91
91
|
/**
|
92
92
|
* StencilJS: Called once just after the component is fully loaded and the first render() occurs.
|