@esri/solutions-components 0.7.23 → 0.7.24
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/assets/t9n/crowdsource-manager/resources.json +1 -3
- package/dist/assets/t9n/crowdsource-manager/resources_en.json +1 -3
- package/dist/assets/t9n/crowdsource-reporter/resources.json +18 -1
- package/dist/assets/t9n/crowdsource-reporter/resources_en.json +18 -1
- package/dist/assets/t9n/delete-button/resources.json +8 -0
- package/dist/assets/t9n/delete-button/resources_en.json +8 -0
- package/dist/assets/t9n/feature-list/resources.json +4 -0
- package/dist/assets/t9n/feature-list/resources_en.json +4 -0
- package/dist/assets/t9n/info-card/resources.json +1 -1
- package/dist/assets/t9n/info-card/resources_en.json +1 -1
- package/dist/assets/t9n/layer-list/resources.json +4 -0
- package/dist/assets/t9n/layer-list/resources_en.json +4 -0
- package/dist/assets/t9n/layer-table/resources.json +0 -9
- package/dist/assets/t9n/layer-table/resources_en.json +0 -9
- package/dist/cjs/basemap-gallery_5.cjs.entry.js +573 -0
- package/dist/cjs/buffer-tools_3.cjs.entry.js +1 -1
- package/dist/cjs/calcite-action-bar.cjs.entry.js +255 -0
- package/dist/cjs/calcite-alert_3.cjs.entry.js +136 -357
- package/dist/cjs/calcite-combobox_6.cjs.entry.js +2 -1
- package/dist/cjs/{calcite-action-bar_3.cjs.entry.js → calcite-filter_5.cjs.entry.js} +333 -172
- package/dist/cjs/calcite-flow_4.cjs.entry.js +658 -0
- package/dist/cjs/calcite-input-date-picker_3.cjs.entry.js +22 -11
- package/dist/cjs/calcite-shell-panel_14.cjs.entry.js +2 -1
- package/dist/cjs/{card-manager_3.cjs.entry.js → card-manager_2.cjs.entry.js} +48 -268
- package/dist/cjs/crowdsource-manager.cjs.entry.js +18 -3
- package/dist/cjs/crowdsource-reporter.cjs.entry.js +215 -36
- package/dist/cjs/{basemap-gallery_7.cjs.entry.js → info-card_4.cjs.entry.js} +322 -409
- package/dist/cjs/instant-apps-export.cjs.entry.js +1 -1
- package/dist/cjs/instant-apps-language-translator.cjs.entry.js +41 -1
- package/dist/cjs/layout-manager.cjs.entry.js +2 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{locale-9db09b63.js → locale-1ff119f5.js} +19 -1
- package/dist/cjs/map-select-tools_3.cjs.entry.js +1 -1
- package/dist/cjs/popupUtils-8d5b6e94.js +99 -0
- package/dist/cjs/public-notification.cjs.entry.js +1 -1
- package/dist/cjs/solution-configuration.cjs.entry.js +2 -1
- package/dist/cjs/solution-contents_3.cjs.entry.js +16 -2
- package/dist/cjs/solutions-components.cjs.js +1 -1
- package/dist/cjs/spatial-ref.cjs.entry.js +2 -1
- package/dist/collection/collection-manifest.json +3 -0
- package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +23 -2
- package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.css +73 -0
- package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.js +349 -56
- package/dist/collection/components/delete-button/delete-button.css +19 -0
- package/dist/collection/components/delete-button/delete-button.js +299 -0
- package/dist/collection/components/delete-button/test/delete-button.e2e.js +29 -0
- package/dist/collection/components/delete-button/test/delete-button.spec.js +37 -0
- package/dist/collection/components/feature-list/feature-list.css +38 -0
- package/dist/collection/components/feature-list/feature-list.js +303 -0
- package/dist/collection/components/info-card/info-card.js +65 -21
- package/dist/collection/components/layer-list/layer-list.css +28 -0
- package/dist/collection/components/layer-list/layer-list.js +288 -0
- package/dist/collection/components/layer-table/layer-table.js +63 -116
- package/dist/collection/components/solution-spatial-ref/solution-spatial-ref.js +31 -1
- package/dist/collection/demos/crowdsource-reporter.html +42 -70
- package/dist/collection/demos/feature-list.html +43 -0
- package/dist/collection/demos/layer-list.html +43 -0
- package/dist/collection/utils/interfaces.ts +4 -0
- package/dist/components/calcite-flow-item.js +1 -261
- package/dist/components/calcite-flow.js +1 -165
- package/dist/components/card-manager2.js +38 -26
- package/dist/components/crowdsource-manager.js +110 -89
- package/dist/components/crowdsource-reporter.js +463 -42
- package/dist/components/delete-button.d.ts +11 -0
- package/dist/components/delete-button.js +11 -0
- package/dist/components/delete-button2.js +209 -0
- package/dist/components/feature-list.d.ts +11 -0
- package/dist/components/feature-list.js +11 -0
- package/dist/components/feature-list2.js +281 -0
- package/dist/{esm/calcite-flow-item.entry.js → components/flow-item.js} +94 -19
- package/dist/{esm/calcite-flow.entry.js → components/flow.js} +33 -10
- package/dist/components/info-card2.js +87 -136
- package/dist/components/instant-apps-export.js +1 -1
- package/dist/components/instant-apps-filter-list2.js +22 -11
- package/dist/components/instant-apps-language-translator2.js +48 -4
- package/dist/components/layer-list.d.ts +11 -0
- package/dist/components/layer-list.js +11 -0
- package/dist/components/layer-list2.js +268 -0
- package/dist/components/layer-table2.js +126 -165
- package/dist/components/locale.js +19 -2
- package/dist/components/popupUtils.js +97 -0
- package/dist/components/queryUtils.js +1 -1
- package/dist/components/solution-spatial-ref2.js +17 -2
- package/dist/esm/{ExpandToggle-540998b5.js → ExpandToggle-96688cda.js} +1 -1
- package/dist/esm/{ar-35006b74.js → ar-29711364.js} +8 -8
- package/dist/esm/basemap-gallery_5.entry.js +565 -0
- package/dist/esm/{bg-c289978f.js → bg-c0f5033b.js} +8 -8
- package/dist/esm/{bs-6f9fb44a.js → bs-60479ce5.js} +8 -8
- package/dist/esm/buffer-tools_3.entry.js +3 -3
- package/dist/esm/{ca-7962c8b7.js → ca-4317b986.js} +8 -8
- package/dist/esm/calcite-accordion-item.entry.js +1 -1
- package/dist/esm/calcite-action-bar.entry.js +251 -0
- package/dist/esm/calcite-action-group.entry.js +3 -3
- package/dist/esm/calcite-action-menu_2.entry.js +5 -5
- package/dist/esm/calcite-action-pad_2.entry.js +4 -4
- package/dist/esm/calcite-action_2.entry.js +3 -3
- package/dist/esm/calcite-alert_3.entry.js +141 -362
- package/dist/esm/calcite-avatar.entry.js +1 -1
- package/dist/esm/calcite-block-section.entry.js +3 -3
- package/dist/esm/calcite-block_2.entry.js +5 -5
- 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.entry.js +3 -3
- 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 +11 -10
- package/dist/esm/calcite-date-picker-day_3.entry.js +3 -3
- package/dist/esm/calcite-fab.entry.js +1 -1
- package/dist/esm/{calcite-action-bar_3.entry.js → calcite-filter_5.entry.js} +363 -204
- package/dist/esm/calcite-flow_4.entry.js +651 -0
- package/dist/esm/calcite-graph_2.entry.js +4 -4
- 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_3.entry.js +31 -20
- package/dist/esm/calcite-input-number.entry.js +5 -5
- package/dist/esm/calcite-input-text.entry.js +5 -5
- package/dist/esm/{calcite-input-time-picker-63439178.js → calcite-input-time-picker-2e1b2157.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-meter.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-notice.entry.js +3 -3
- 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-sheet.entry.js +2 -2
- package/dist/esm/calcite-shell-center-row.entry.js +1 -1
- package/dist/esm/calcite-shell-panel_14.entry.js +8 -7
- package/dist/esm/calcite-sortable-list.entry.js +1 -1
- package/dist/esm/calcite-stepper-item.entry.js +3 -3
- package/dist/esm/calcite-stepper.entry.js +3 -3
- package/dist/esm/calcite-switch.entry.js +3 -3
- package/dist/esm/calcite-table-cell_2.entry.js +3 -3
- package/dist/esm/calcite-table-row.entry.js +1 -1
- package/dist/esm/calcite-table.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-tooltip.entry.js +2 -2
- package/dist/esm/calcite-tree_2.entry.js +1 -1
- package/dist/esm/{card-manager_3.entry.js → card-manager_2.entry.js} +51 -270
- package/dist/esm/{common-2cf42ac2.js → common-d04ccc0d.js} +1 -1
- package/dist/esm/crowdsource-manager.entry.js +19 -4
- package/dist/esm/crowdsource-reporter.entry.js +215 -36
- package/dist/esm/{cs-6d13069b.js → cs-da404a04.js} +8 -8
- package/dist/esm/{da-14097e6c.js → da-1afac3fa.js} +8 -8
- package/dist/esm/{date-1743b515.js → date-8b4a8f33.js} +1 -1
- package/dist/esm/{de-dff2571b.js → de-98f3129e.js} +8 -8
- package/dist/esm/{de-at-b733db65.js → de-at-ed4817af.js} +8 -8
- package/dist/esm/{de-ch-5ad0cb74.js → de-ch-556c82c8.js} +8 -8
- package/dist/esm/{dom-492b1b24.js → dom-8f926f33.js} +1 -1
- package/dist/esm/{downloadUtils-13579d93.js → downloadUtils-067dc2ff.js} +2 -2
- package/dist/esm/{el-688e05ba.js → el-394dfd74.js} +8 -8
- package/dist/esm/{en-au-357e70d8.js → en-au-6dde1e7e.js} +8 -8
- package/dist/esm/{en-ca-1e0b6b47.js → en-ca-420be416.js} +8 -8
- package/dist/esm/{en-gb-861a17f2.js → en-gb-0a7caa85.js} +8 -8
- package/dist/esm/{es-291ab4bd.js → es-2e1beb99.js} +8 -8
- package/dist/esm/{es-mx-0a7283a7.js → es-mx-ef132a24.js} +8 -8
- package/dist/esm/{et-addd2617.js → et-83d139c1.js} +8 -8
- package/dist/esm/{fi-469884d5.js → fi-8b81ed94.js} +8 -8
- package/dist/esm/{floating-ui-03eb4c82.js → floating-ui-c397f653.js} +1 -1
- package/dist/esm/{focusTrapComponent-2e7de651.js → focusTrapComponent-14368766.js} +1 -1
- package/dist/esm/{form-9bccaf85.js → form-133b00c7.js} +1 -1
- package/dist/esm/{fr-f5cb34ca.js → fr-c47c114a.js} +8 -8
- package/dist/esm/{fr-ch-115d3fda.js → fr-ch-97635343.js} +8 -8
- package/dist/esm/{he-6e5f5c56.js → he-ed2a12b9.js} +8 -8
- package/dist/esm/{hi-503240c2.js → hi-a05727ac.js} +8 -8
- package/dist/esm/{hr-cc08d6fc.js → hr-d01671ca.js} +8 -8
- package/dist/esm/{hu-69ac240d.js → hu-16506ca7.js} +8 -8
- package/dist/esm/{id-99547746.js → id-e9367e87.js} +8 -8
- package/dist/esm/{index.es-04d2e63e.js → index.es-92e46d8b.js} +3 -3
- package/dist/esm/{basemap-gallery_7.entry.js → info-card_4.entry.js} +322 -406
- package/dist/esm/instant-apps-export.entry.js +1 -1
- package/dist/esm/instant-apps-language-translator.entry.js +42 -2
- package/dist/esm/{interfaces-341e3ab3.js → interfaces-586e863c.js} +1 -1
- package/dist/esm/{it-dbb6ea7d.js → it-14246b4a.js} +8 -8
- package/dist/esm/{it-ch-a83801f6.js → it-ch-a877e111.js} +8 -8
- package/dist/esm/{ja-79dbb02f.js → ja-67a0cfa0.js} +8 -8
- package/dist/esm/{ko-31ebe067.js → ko-35b0b83a.js} +8 -8
- package/dist/esm/{label-14301f4d.js → label-cd393c81.js} +1 -1
- package/dist/esm/layout-manager.entry.js +3 -2
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{locale-834c52c6.js → locale-13e3c96c.js} +19 -2
- package/dist/esm/{locale-8cfa3086.js → locale-6107ef11.js} +1 -1
- package/dist/esm/{lt-94d3f4b8.js → lt-71014faf.js} +8 -8
- package/dist/esm/{lv-d770ed0d.js → lv-def9df38.js} +8 -8
- package/dist/esm/map-select-tools_3.entry.js +4 -4
- package/dist/esm/{mapViewUtils-8fe70944.js → mapViewUtils-6daedef8.js} +2 -2
- package/dist/esm/{mk-1046d60a.js → mk-bfeac49e.js} +8 -8
- package/dist/esm/{nb-dad0b4b9.js → nb-0723b461.js} +8 -8
- package/dist/esm/{nl-a968c4b7.js → nl-89663165.js} +8 -8
- package/dist/esm/{pl-a0037bd3.js → pl-0157c37c.js} +8 -8
- package/dist/esm/popupUtils-b71f30fc.js +97 -0
- package/dist/esm/{pt-e3d9370c.js → pt-80d1520c.js} +8 -8
- package/dist/esm/{pt-br-44c11565.js → pt-br-ee5003c7.js} +8 -8
- package/dist/esm/public-notification.entry.js +4 -4
- package/dist/esm/{ro-290e025d.js → ro-eff987f8.js} +8 -8
- package/dist/esm/{ru-38ff91f1.js → ru-62839398.js} +8 -8
- package/dist/esm/{shared-list-render-89e4bcff.js → shared-list-render-a2ab63e8.js} +1 -1
- package/dist/esm/{sk-9622a24b.js → sk-c2f4bd58.js} +8 -8
- package/dist/esm/{sl-6bc83a24.js → sl-328ff1db.js} +8 -8
- package/dist/esm/solution-configuration.entry.js +4 -3
- package/dist/esm/solution-contents_3.entry.js +19 -5
- package/dist/esm/{solution-store-b08696f7.js → solution-store-19f7825b.js} +1 -1
- package/dist/esm/solutions-components.js +1 -1
- package/dist/esm/spatial-ref.entry.js +4 -3
- package/dist/esm/{sr-35e575d8.js → sr-75a3ad46.js} +8 -8
- package/dist/esm/{sv-d80fa359.js → sv-10da5ef2.js} +8 -8
- package/dist/esm/{t9n-3c5e55ab.js → t9n-f16911e7.js} +1 -1
- package/dist/esm/{th-23e71d40.js → th-aa112042.js} +8 -8
- package/dist/esm/{time-d956a7c8.js → time-855b3426.js} +1 -1
- package/dist/esm/{tr-961fd2f3.js → tr-5925a2f5.js} +8 -8
- package/dist/esm/{uk-4e8a425a.js → uk-c40eeb9f.js} +8 -8
- package/dist/esm/{utils-56206ec2.js → utils-93fd55c4.js} +2 -2
- package/dist/esm/{utils-8287806a.js → utils-c3509713.js} +1 -1
- package/dist/esm/{vi-ad983882.js → vi-27922b93.js} +8 -8
- package/dist/esm/{zh-cn-5b6fd039.js → zh-cn-38a2e1d3.js} +8 -8
- package/dist/esm/{zh-hk-7439b11d.js → zh-hk-e0217bd1.js} +8 -8
- package/dist/esm/{zh-tw-cf384663.js → zh-tw-31f0447c.js} +8 -8
- package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-filter-list/instant-apps-filter-list.css +0 -1
- package/dist/solutions-components/demos/crowdsource-reporter.html +42 -70
- package/dist/solutions-components/demos/feature-list.html +43 -0
- package/dist/solutions-components/demos/layer-list.html +43 -0
- package/dist/solutions-components/{p-c634d047.entry.js → p-01032eec.entry.js} +2 -18
- package/dist/solutions-components/{p-e7951fcb.js → p-0392679d.js} +1 -1
- package/dist/solutions-components/{p-3022da2d.js → p-05f702ae.js} +1 -1
- package/dist/solutions-components/{p-4da72ee8.entry.js → p-068f5a8c.entry.js} +1 -1
- package/dist/solutions-components/{p-4f71a1a0.js → p-0d774e41.js} +1 -1
- package/dist/solutions-components/{p-0e723ffc.js → p-0f6b58b2.js} +1 -1
- package/dist/solutions-components/{p-ec8f042e.entry.js → p-10410f92.entry.js} +1 -1
- package/dist/solutions-components/{p-6a4b1e48.entry.js → p-10f2d6b0.entry.js} +2 -2
- package/dist/solutions-components/{p-5d2ccc75.entry.js → p-13be5cf5.entry.js} +1 -1
- package/dist/solutions-components/{p-58054bc2.js → p-14548a83.js} +1 -1
- package/dist/solutions-components/{p-c9f87acb.js → p-14ff1465.js} +2 -2
- package/dist/solutions-components/{p-026b1345.js → p-17668cb7.js} +3 -3
- package/dist/solutions-components/{p-5e530f8c.js → p-1c75bb3d.js} +1 -1
- package/dist/solutions-components/p-1f7046e9.entry.js +6 -0
- package/dist/solutions-components/{p-121a5dac.entry.js → p-234a8293.entry.js} +1 -1
- package/dist/solutions-components/{p-355249fc.js → p-2447b332.js} +1 -1
- package/dist/solutions-components/{p-48828002.entry.js → p-24c699b0.entry.js} +1 -1
- package/dist/solutions-components/{p-9bcbc1cc.js → p-2592e0dd.js} +1 -1
- package/dist/solutions-components/{p-b78a1c21.js → p-28b33708.js} +1 -1
- package/dist/solutions-components/{p-fa6ef970.js → p-2d68a6fd.js} +1 -1
- package/dist/solutions-components/{p-6437fee1.entry.js → p-2e2d01de.entry.js} +1 -1
- package/dist/solutions-components/{p-5e9b05c0.entry.js → p-2f425700.entry.js} +1 -1
- package/dist/solutions-components/p-3606c4b8.entry.js +6 -0
- package/dist/solutions-components/{p-6c3cdd09.entry.js → p-364486d1.entry.js} +1 -1
- package/dist/solutions-components/{p-85a89f1d.entry.js → p-368cbb2c.entry.js} +1 -1
- package/dist/solutions-components/{p-c68a6d4f.js → p-36cbf14f.js} +1 -1
- package/dist/solutions-components/{p-52ad6ff9.entry.js → p-36f247db.entry.js} +1 -1
- package/dist/solutions-components/{p-080249de.js → p-38544b17.js} +1 -1
- package/dist/solutions-components/{p-a0be72b6.entry.js → p-3a73ee38.entry.js} +1 -1
- package/dist/solutions-components/{p-532b7378.entry.js → p-3ad4426b.entry.js} +1 -1
- package/dist/solutions-components/{p-5752785e.entry.js → p-3c10901a.entry.js} +1 -1
- package/dist/solutions-components/{p-6e406a7b.js → p-3c7d0eb9.js} +1 -1
- package/dist/solutions-components/{p-bf23173c.js → p-411b73a7.js} +1 -1
- package/dist/solutions-components/{p-76d60881.entry.js → p-429e1284.entry.js} +1 -1
- package/dist/solutions-components/{p-f3d277c2.entry.js → p-42f0e1fa.entry.js} +1 -1
- package/dist/solutions-components/{p-1fc220c7.js → p-4416d288.js} +1 -1
- package/dist/solutions-components/{p-663a433a.entry.js → p-451b16b3.entry.js} +2 -2
- package/dist/solutions-components/{p-b5d1b979.js → p-4566438a.js} +3 -3
- package/dist/solutions-components/{p-7a06dcdf.js → p-4647b2a6.js} +1 -1
- package/dist/solutions-components/{p-75fbe76c.js → p-480d0789.js} +1 -1
- package/dist/solutions-components/p-49b02dda.entry.js +6 -0
- package/dist/solutions-components/{p-722ae773.js → p-49fb1bfa.js} +2 -2
- package/dist/solutions-components/{p-17183100.js → p-4abf1c34.js} +1 -1
- package/dist/solutions-components/p-4ae36626.js +6 -0
- package/dist/solutions-components/{p-5c3fd315.entry.js → p-4bff69aa.entry.js} +1 -1
- package/dist/solutions-components/{p-f8f18a94.entry.js → p-4ccdac24.entry.js} +1 -1
- package/dist/solutions-components/{p-a3a64af2.entry.js → p-4d402bcf.entry.js} +1 -1
- package/dist/solutions-components/{p-7e82a730.js → p-4d8fc031.js} +1 -1
- package/dist/solutions-components/{p-1c720ed5.entry.js → p-4d99cb49.entry.js} +1 -1
- package/dist/solutions-components/p-4fbadb84.entry.js +6 -0
- package/dist/solutions-components/{p-e0276e26.entry.js → p-5268d845.entry.js} +2 -2
- package/dist/solutions-components/{p-f3f09834.js → p-5e12026e.js} +1 -1
- package/dist/solutions-components/p-5e832d65.entry.js +6 -0
- package/dist/solutions-components/{p-ffee4847.entry.js → p-5fe99315.entry.js} +1 -1
- package/dist/solutions-components/{p-d6208a47.js → p-6105d57c.js} +1 -1
- package/dist/solutions-components/{p-f3dfb34f.entry.js → p-613315a7.entry.js} +1 -1
- package/dist/solutions-components/{p-0d97c2c5.entry.js → p-62eba559.entry.js} +1 -1
- package/dist/solutions-components/{p-40235cb7.entry.js → p-63fa7791.entry.js} +1 -1
- package/dist/solutions-components/{p-cfccae7c.js → p-6604ac77.js} +1 -1
- package/dist/solutions-components/{p-9b1766ef.entry.js → p-674be06c.entry.js} +1 -1
- package/dist/solutions-components/{p-a4aef40c.entry.js → p-67ff8e9a.entry.js} +1 -1
- package/dist/solutions-components/{p-16df3a9e.entry.js → p-685257d1.entry.js} +1 -1
- package/dist/solutions-components/{p-4647c429.js → p-68e0adcf.js} +1 -1
- package/dist/solutions-components/{p-fc8338c6.entry.js → p-68e84199.entry.js} +1 -1
- package/dist/solutions-components/{p-aa3092cf.js → p-69763854.js} +1 -1
- package/dist/solutions-components/{p-e31754c8.js → p-6ae45648.js} +1 -1
- package/dist/solutions-components/{p-98013072.entry.js → p-6cce7009.entry.js} +1 -1
- package/dist/solutions-components/{p-34cacf32.js → p-6d511162.js} +1 -1
- package/dist/solutions-components/{p-337acb3c.js → p-727596e6.js} +1 -1
- package/dist/solutions-components/{p-b170916e.js → p-73100e79.js} +2 -2
- package/dist/solutions-components/{p-23662977.entry.js → p-734bc1b0.entry.js} +2 -2
- package/dist/solutions-components/{p-f3626331.entry.js → p-752ece4a.entry.js} +2 -2
- package/dist/solutions-components/{p-ecdd587c.entry.js → p-75e2a322.entry.js} +3 -3
- package/dist/solutions-components/{p-ca33fa09.entry.js → p-787203af.entry.js} +1 -1
- package/dist/solutions-components/{p-a9fc934d.js → p-79110824.js} +1 -1
- package/dist/solutions-components/{p-b82179c0.js → p-793cad54.js} +1 -1
- package/dist/solutions-components/{p-0250dec5.js → p-797aa505.js} +1 -1
- package/dist/solutions-components/{p-133de052.entry.js → p-7ebd34df.entry.js} +1 -1
- package/dist/solutions-components/{p-8934e858.entry.js → p-809b7e47.entry.js} +2 -2
- package/dist/solutions-components/{p-ca97465b.js → p-83fd31d5.js} +1 -1
- package/dist/solutions-components/{p-2e1f7c0e.entry.js → p-84378c8d.entry.js} +2 -2
- package/dist/solutions-components/p-864b1d72.entry.js +6 -0
- package/dist/solutions-components/{p-50ea26de.entry.js → p-8b47b607.entry.js} +1 -1
- package/dist/solutions-components/{p-f4e91113.js → p-8d49a084.js} +1 -1
- package/dist/solutions-components/{p-f84848b0.entry.js → p-8fabb8a4.entry.js} +1 -1
- package/dist/solutions-components/p-8fc072ca.entry.js +6 -0
- package/dist/solutions-components/{p-29602eff.entry.js → p-96c2ed64.entry.js} +1 -1
- package/dist/solutions-components/{p-b42bde59.entry.js → p-978d936a.entry.js} +1 -1
- package/dist/solutions-components/{p-79ba73cb.js → p-981e9549.js} +1 -1
- package/dist/solutions-components/{p-02714171.entry.js → p-98308b13.entry.js} +2 -2
- package/dist/solutions-components/p-99c5701d.entry.js +6 -0
- package/dist/solutions-components/{p-fe68d502.js → p-9cbfd8cd.js} +1 -1
- package/dist/solutions-components/{p-8f8fe5d0.entry.js → p-a09c8edf.entry.js} +1 -1
- package/dist/solutions-components/p-a2d3df14.entry.js +6 -0
- package/dist/solutions-components/{p-ac6a3e13.js → p-a5272d7e.js} +1 -1
- package/dist/solutions-components/p-a5c5b24d.js +6 -0
- package/dist/solutions-components/{p-5d9ad152.entry.js → p-a5e93c7e.entry.js} +1 -1
- package/dist/solutions-components/{p-07b31dc9.js → p-a6bb4148.js} +1 -1
- package/dist/solutions-components/{p-11b59592.entry.js → p-a8c9ac0b.entry.js} +2 -2
- package/dist/solutions-components/{p-41f7bc94.entry.js → p-a9bd945b.entry.js} +1 -1
- package/dist/solutions-components/p-ab006ace.js +21 -0
- package/dist/solutions-components/{p-634835fe.js → p-abdd289e.js} +1 -1
- package/dist/solutions-components/{p-43e67b3c.entry.js → p-aca29f67.entry.js} +2 -2
- package/dist/solutions-components/{p-8118146c.entry.js → p-ad96cd8b.entry.js} +1 -1
- package/dist/solutions-components/{p-8772a573.js → p-af1bb992.js} +1 -1
- package/dist/solutions-components/{p-36eb8399.js → p-b1b768f7.js} +4 -4
- package/dist/solutions-components/{p-dd37c504.js → p-b29677ca.js} +1 -1
- package/dist/solutions-components/{p-82b4ab94.js → p-b2c5e62b.js} +1 -1
- package/dist/solutions-components/{p-db436a77.entry.js → p-b326b592.entry.js} +1 -1
- package/dist/solutions-components/{p-a4772574.js → p-b7285bd5.js} +1 -1
- package/dist/solutions-components/{p-8b5b4662.js → p-b8959537.js} +1 -1
- package/dist/solutions-components/p-ba56035f.entry.js +6 -0
- package/dist/solutions-components/{p-c21f578f.js → p-baf4cb37.js} +1 -1
- package/dist/solutions-components/{p-799c3f19.js → p-bfebff0e.js} +1 -1
- package/dist/solutions-components/p-c0ed2b83.entry.js +6 -0
- package/dist/solutions-components/p-c0f97ed2.entry.js +6 -0
- package/dist/solutions-components/{p-4af32c75.js → p-c1cf3ebc.js} +1 -1
- package/dist/solutions-components/{p-cfb83693.js → p-c3190f85.js} +1 -1
- package/dist/solutions-components/{p-0511c98c.js → p-c4ebb5d1.js} +1 -1
- package/dist/solutions-components/p-c56fd16c.entry.js +11 -0
- package/dist/solutions-components/{p-2d1b8cfa.js → p-c6b9a129.js} +1 -1
- package/dist/solutions-components/{p-1cb4c542.entry.js → p-c7e7da9a.entry.js} +1 -1
- package/dist/solutions-components/{p-d8b3d156.entry.js → p-ca4023f4.entry.js} +1 -1
- package/dist/solutions-components/p-cb1d29d4.entry.js +17 -0
- package/dist/solutions-components/p-cc88bb42.entry.js +6 -0
- package/dist/solutions-components/{p-034d43fb.js → p-cdee3846.js} +1 -1
- package/dist/solutions-components/{p-c5cb8804.js → p-cfb3d66a.js} +1 -1
- package/dist/solutions-components/{p-ebbeec9f.entry.js → p-d2d7d6b4.entry.js} +2 -2
- package/dist/solutions-components/{p-dd071507.js → p-d44e2fd7.js} +1 -1
- package/dist/solutions-components/{p-48a5ae32.entry.js → p-d50f34c4.entry.js} +1 -1
- package/dist/solutions-components/{p-5953ebe8.entry.js → p-d9061e5d.entry.js} +1 -1
- package/dist/solutions-components/{p-414240b2.js → p-d9a59fcc.js} +1 -1
- package/dist/solutions-components/{p-24286e8c.entry.js → p-db69f4ba.entry.js} +1 -1
- package/dist/solutions-components/{p-ede84883.js → p-de281b08.js} +2 -2
- package/dist/solutions-components/{p-a11fca14.js → p-df118036.js} +1 -1
- package/dist/solutions-components/p-e274f3b0.entry.js +23 -0
- package/dist/solutions-components/p-e3061220.entry.js +6 -0
- package/dist/solutions-components/{p-4613e205.js → p-e6d4bdce.js} +1 -1
- package/dist/solutions-components/{p-3c5d3b4a.js → p-e6dfc80f.js} +1 -1
- package/dist/solutions-components/{p-92ea9e81.js → p-e834d132.js} +1 -1
- package/dist/solutions-components/{p-f9eb2f2d.js → p-ee4e5212.js} +1 -1
- package/dist/solutions-components/{p-efce2e85.js → p-ef05dea5.js} +1 -1
- package/dist/solutions-components/{p-5fd1eb64.js → p-f0d68a3f.js} +2 -2
- package/dist/solutions-components/p-f17941f1.entry.js +6 -0
- package/dist/solutions-components/{p-9e3b8632.entry.js → p-f1e6ce96.entry.js} +1 -1
- package/dist/solutions-components/p-f54f3719.entry.js +17 -0
- package/dist/solutions-components/{p-fdb1ace8.entry.js → p-fb1c6811.entry.js} +2 -2
- package/dist/solutions-components/p-fec77450.js +21 -0
- package/dist/solutions-components/{p-50764143.entry.js → p-ff460d05.entry.js} +3 -3
- package/dist/solutions-components/{p-d1ca57f3.entry.js → p-ff7c9bc3.entry.js} +1 -1
- package/dist/solutions-components/{p-0b47b407.js → p-ffa2c430.js} +1 -1
- package/dist/solutions-components/{p-89520d31.entry.js → p-ffbed9b2.entry.js} +1 -1
- package/dist/solutions-components/solutions-components.esm.js +1 -1
- package/dist/solutions-components/utils/interfaces.ts +4 -0
- package/dist/types/components/crowdsource-manager/crowdsource-manager.d.ts +8 -0
- package/dist/types/components/crowdsource-reporter/crowdsource-reporter.d.ts +159 -11
- package/dist/types/components/delete-button/delete-button.d.ts +120 -0
- package/dist/types/components/feature-list/feature-list.d.ts +128 -0
- package/dist/types/components/info-card/info-card.d.ts +19 -0
- package/dist/types/components/layer-list/layer-list.d.ts +133 -0
- package/dist/types/components/layer-table/layer-table.d.ts +12 -40
- package/dist/types/components/solution-spatial-ref/solution-spatial-ref.d.ts +5 -1
- package/dist/types/components.d.ts +269 -11
- package/dist/types/preact.d.ts +15 -1
- package/dist/types/utils/interfaces.d.ts +2 -0
- package/package.json +2 -2
- package/dist/cjs/calcite-filter_2.cjs.entry.js +0 -237
- package/dist/cjs/calcite-flow-item.cjs.entry.js +0 -197
- package/dist/cjs/calcite-flow.cjs.entry.js +0 -153
- package/dist/cjs/calcite-handle.cjs.entry.js +0 -184
- package/dist/cjs/resources-55ba2752.js +0 -29
- package/dist/esm/calcite-filter_2.entry.js +0 -232
- package/dist/esm/calcite-handle.entry.js +0 -180
- package/dist/esm/resources-221791b0.js +0 -26
- package/dist/solutions-components/p-0200864c.entry.js +0 -11
- package/dist/solutions-components/p-02fad071.entry.js +0 -6
- package/dist/solutions-components/p-04f05bc5.entry.js +0 -6
- package/dist/solutions-components/p-166d5bcc.entry.js +0 -6
- package/dist/solutions-components/p-1711c535.entry.js +0 -6
- package/dist/solutions-components/p-1f88a556.entry.js +0 -6
- package/dist/solutions-components/p-2ddd9cf8.entry.js +0 -6
- package/dist/solutions-components/p-3cf20613.entry.js +0 -17
- package/dist/solutions-components/p-43546966.entry.js +0 -6
- package/dist/solutions-components/p-6b943f52.js +0 -21
- package/dist/solutions-components/p-79f95735.entry.js +0 -11
- package/dist/solutions-components/p-7f333e23.js +0 -11
- package/dist/solutions-components/p-897037f0.entry.js +0 -6
- package/dist/solutions-components/p-8c7fc78f.entry.js +0 -11
- package/dist/solutions-components/p-941ab8c0.js +0 -6
- package/dist/solutions-components/p-96974e5f.js +0 -6
- package/dist/solutions-components/p-a32b61ee.entry.js +0 -6
- package/dist/solutions-components/p-ad9fbb2a.entry.js +0 -6
- package/dist/solutions-components/p-bacc9b0d.entry.js +0 -6
- package/dist/solutions-components/p-c252997f.entry.js +0 -17
- package/dist/solutions-components/p-c5db42ad.entry.js +0 -6
- package/dist/solutions-components/p-e89c5860.entry.js +0 -6
- package/dist/solutions-components/p-eb9b003a.entry.js +0 -11
- package/dist/solutions-components/p-eff7f407.entry.js +0 -6
@@ -0,0 +1,288 @@
|
|
1
|
+
/*!
|
2
|
+
* Copyright 2022 Esri
|
3
|
+
* Licensed under the Apache License, Version 2.0
|
4
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
5
|
+
*/
|
6
|
+
/** @license
|
7
|
+
* Copyright 2022 Esri
|
8
|
+
*
|
9
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
10
|
+
* you may not use this file except in compliance with the License.
|
11
|
+
* You may obtain a copy of the License at
|
12
|
+
*
|
13
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
14
|
+
*
|
15
|
+
* Unless required by applicable law or agreed to in writing, software
|
16
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
17
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
18
|
+
* See the License for the specific language governing permissions and
|
19
|
+
* limitations under the License.
|
20
|
+
*/
|
21
|
+
import { h, Fragment } from "@stencil/core";
|
22
|
+
import { getAllLayers, getMapLayerHash } from "../../utils/mapViewUtils";
|
23
|
+
import { getLocaleComponentStrings } from "../../utils/locale";
|
24
|
+
import { formatNumber } from "../../utils/languageUtil";
|
25
|
+
export class LayerList {
|
26
|
+
constructor() {
|
27
|
+
this.mapView = undefined;
|
28
|
+
this.layers = undefined;
|
29
|
+
this.noLayerErrorMsg = undefined;
|
30
|
+
this._noLayersToDisplay = false;
|
31
|
+
this._mapLayerIds = [];
|
32
|
+
this._isLoading = false;
|
33
|
+
this._translations = undefined;
|
34
|
+
}
|
35
|
+
//--------------------------------------------------------------------------
|
36
|
+
//
|
37
|
+
// Functions (lifecycle)
|
38
|
+
//
|
39
|
+
//--------------------------------------------------------------------------
|
40
|
+
/**
|
41
|
+
* StencilJS: Called once just after the component is first connected to the DOM.
|
42
|
+
* @returns Promise when complete
|
43
|
+
*/
|
44
|
+
async componentWillLoad() {
|
45
|
+
await this._getTranslations();
|
46
|
+
this._isLoading = true;
|
47
|
+
}
|
48
|
+
/**
|
49
|
+
* StencilJS: Called once just after the component is fully loaded and the first render() occurs.
|
50
|
+
*/
|
51
|
+
async componentDidLoad() {
|
52
|
+
await this.setLayers();
|
53
|
+
this._isLoading = false;
|
54
|
+
}
|
55
|
+
/**
|
56
|
+
* Renders the component.
|
57
|
+
*/
|
58
|
+
render() {
|
59
|
+
return (h(Fragment, null, this._isLoading && h("calcite-loader", { scale: "m" }), !this._isLoading && this.mapView && this._noLayersToDisplay && h("calcite-notice", { class: "error-msg", icon: "layers-reference", kind: "danger", open: true }, h("div", { slot: "title" }, this._translations.error), h("div", { slot: "message" }, this.noLayerErrorMsg ? this.noLayerErrorMsg : this._translations.noLayerToDisplayErrorMsg)), !this._isLoading && this.mapView &&
|
60
|
+
h("calcite-list", null, this.renderLayerList())));
|
61
|
+
}
|
62
|
+
//--------------------------------------------------------------------------
|
63
|
+
//
|
64
|
+
// Functions (protected)
|
65
|
+
//
|
66
|
+
//--------------------------------------------------------------------------
|
67
|
+
/**
|
68
|
+
* Fetch the ids of the layers from the map
|
69
|
+
* @returns Promise when the operation has completed
|
70
|
+
* @protected
|
71
|
+
*/
|
72
|
+
async setLayers() {
|
73
|
+
if (this.mapView) {
|
74
|
+
await this.initLayerHash();
|
75
|
+
}
|
76
|
+
}
|
77
|
+
/**
|
78
|
+
* Create a layer hash for layer name display
|
79
|
+
* @returns Promise when the operation has completed
|
80
|
+
* @protected
|
81
|
+
*/
|
82
|
+
async initLayerHash() {
|
83
|
+
const def = [];
|
84
|
+
this._layerItemsHash = await getMapLayerHash(this.mapView, true);
|
85
|
+
const allMapLayers = await getAllLayers(this.mapView);
|
86
|
+
// eslint-disable-next-line @typescript-eslint/no-misused-promises
|
87
|
+
allMapLayers.forEach(async (eachLayer) => {
|
88
|
+
var _a, _b;
|
89
|
+
//TODO: checking editable condition could be configurable
|
90
|
+
if ((eachLayer === null || eachLayer === void 0 ? void 0 : eachLayer.type) === "feature" && (eachLayer === null || eachLayer === void 0 ? void 0 : eachLayer.editingEnabled) && ((_b = (_a = eachLayer === null || eachLayer === void 0 ? void 0 : eachLayer.capabilities) === null || _a === void 0 ? void 0 : _a.operations) === null || _b === void 0 ? void 0 : _b.supportsUpdate)) {
|
91
|
+
const q = eachLayer.createQuery();
|
92
|
+
const result = eachLayer.queryFeatureCount(q);
|
93
|
+
def.push(result);
|
94
|
+
void result.then(async (resCount) => {
|
95
|
+
const formattedCount = !isNaN(resCount) ? await formatNumber(resCount, {
|
96
|
+
places: 0,
|
97
|
+
api: 4,
|
98
|
+
type: "decimal"
|
99
|
+
}) : "";
|
100
|
+
this._layerItemsHash[eachLayer.id].formattedFeatureCount = formattedCount;
|
101
|
+
});
|
102
|
+
}
|
103
|
+
});
|
104
|
+
await Promise.all(def).then(() => {
|
105
|
+
const editableLayerIds = this.getEditableIds(this._layerItemsHash);
|
106
|
+
this._mapLayerIds = editableLayerIds.reverse();
|
107
|
+
this.handleNoLayersToDisplay();
|
108
|
+
}, () => {
|
109
|
+
this._mapLayerIds = [];
|
110
|
+
this.handleNoLayersToDisplay();
|
111
|
+
});
|
112
|
+
}
|
113
|
+
/**
|
114
|
+
* Set no layers to display state and emit event
|
115
|
+
*/
|
116
|
+
handleNoLayersToDisplay() {
|
117
|
+
this._noLayersToDisplay = !(this._mapLayerIds.length > 0);
|
118
|
+
this.layersListLoaded.emit(this._mapLayerIds);
|
119
|
+
}
|
120
|
+
/**
|
121
|
+
* Returns the ids of all OR configured layers that support edits with the update capability
|
122
|
+
* @param hash each layer item details
|
123
|
+
* @returns array of layer ids
|
124
|
+
*/
|
125
|
+
getEditableIds(hash) {
|
126
|
+
var _a;
|
127
|
+
const configuredLayers = ((_a = this.layers) === null || _a === void 0 ? void 0 : _a.length) > 0 ? this.layers : [];
|
128
|
+
return Object.keys(hash).reduce((prev, cur) => {
|
129
|
+
let showLayer = hash[cur].supportsUpdate;
|
130
|
+
if ((configuredLayers === null || configuredLayers === void 0 ? void 0 : configuredLayers.length) > 0) {
|
131
|
+
showLayer = configuredLayers.indexOf(cur) > -1 ? hash[cur].supportsUpdate : false;
|
132
|
+
}
|
133
|
+
if (showLayer) {
|
134
|
+
prev.push(cur);
|
135
|
+
}
|
136
|
+
return prev;
|
137
|
+
}, []);
|
138
|
+
}
|
139
|
+
/**
|
140
|
+
* Render feature layer list
|
141
|
+
* @returns layer list
|
142
|
+
* @protected
|
143
|
+
*/
|
144
|
+
renderLayerList() {
|
145
|
+
return this._mapLayerIds.length > 0 && this._mapLayerIds.reduce((prev, layerId) => {
|
146
|
+
if (this._layerItemsHash[layerId]) {
|
147
|
+
prev.push(this.getLayerListItem(layerId));
|
148
|
+
}
|
149
|
+
return prev;
|
150
|
+
}, []);
|
151
|
+
}
|
152
|
+
/**
|
153
|
+
* Get each item
|
154
|
+
* @param layerId Layer id
|
155
|
+
* @returns individual item
|
156
|
+
* @protected
|
157
|
+
*/
|
158
|
+
getLayerListItem(layerId) {
|
159
|
+
const layerName = this._layerItemsHash[layerId].name;
|
160
|
+
const featureCount = this._layerItemsHash[layerId].formattedFeatureCount;
|
161
|
+
return (h("calcite-list-item", { onCalciteListItemSelect: () => { this.showFeaturesList(layerId); } }, h("div", { class: "layer-name", slot: "content-start" }, layerName), featureCount !== "" && h("div", { slot: "content-end" }, "(" + featureCount + ")"), h("calcite-icon", { icon: "chevron-right", scale: "s", slot: "content-end" })));
|
162
|
+
}
|
163
|
+
/**On click of layer list item show feature list
|
164
|
+
* @param layerId Layer id
|
165
|
+
* @protected
|
166
|
+
*/
|
167
|
+
showFeaturesList(layerId) {
|
168
|
+
this.layerSelect.emit({ layerId, layerName: this._layerItemsHash[layerId].name });
|
169
|
+
}
|
170
|
+
/**
|
171
|
+
* Fetches the component's translations
|
172
|
+
* @returns Promise when complete
|
173
|
+
* @protected
|
174
|
+
*/
|
175
|
+
async _getTranslations() {
|
176
|
+
const messages = await getLocaleComponentStrings(this.el);
|
177
|
+
this._translations = messages[0];
|
178
|
+
}
|
179
|
+
static get is() { return "layer-list"; }
|
180
|
+
static get originalStyleUrls() {
|
181
|
+
return {
|
182
|
+
"$": ["layer-list.css"]
|
183
|
+
};
|
184
|
+
}
|
185
|
+
static get styleUrls() {
|
186
|
+
return {
|
187
|
+
"$": ["layer-list.css"]
|
188
|
+
};
|
189
|
+
}
|
190
|
+
static get properties() {
|
191
|
+
return {
|
192
|
+
"mapView": {
|
193
|
+
"type": "unknown",
|
194
|
+
"mutable": false,
|
195
|
+
"complexType": {
|
196
|
+
"original": "__esri.MapView",
|
197
|
+
"resolved": "MapView",
|
198
|
+
"references": {
|
199
|
+
"___esri": {
|
200
|
+
"location": "global",
|
201
|
+
"id": "global::___esri"
|
202
|
+
}
|
203
|
+
}
|
204
|
+
},
|
205
|
+
"required": false,
|
206
|
+
"optional": false,
|
207
|
+
"docs": {
|
208
|
+
"tags": [],
|
209
|
+
"text": "esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html"
|
210
|
+
}
|
211
|
+
},
|
212
|
+
"layers": {
|
213
|
+
"type": "unknown",
|
214
|
+
"mutable": false,
|
215
|
+
"complexType": {
|
216
|
+
"original": "string[]",
|
217
|
+
"resolved": "string[]",
|
218
|
+
"references": {}
|
219
|
+
},
|
220
|
+
"required": false,
|
221
|
+
"optional": false,
|
222
|
+
"docs": {
|
223
|
+
"tags": [],
|
224
|
+
"text": "string[]: If passed will show only these layers in the list if they are present in map and are editable"
|
225
|
+
}
|
226
|
+
},
|
227
|
+
"noLayerErrorMsg": {
|
228
|
+
"type": "string",
|
229
|
+
"mutable": false,
|
230
|
+
"complexType": {
|
231
|
+
"original": "string",
|
232
|
+
"resolved": "string",
|
233
|
+
"references": {}
|
234
|
+
},
|
235
|
+
"required": false,
|
236
|
+
"optional": true,
|
237
|
+
"docs": {
|
238
|
+
"tags": [],
|
239
|
+
"text": "string: Error message to be displayed when no layers found"
|
240
|
+
},
|
241
|
+
"attribute": "no-layer-error-msg",
|
242
|
+
"reflect": false
|
243
|
+
}
|
244
|
+
};
|
245
|
+
}
|
246
|
+
static get states() {
|
247
|
+
return {
|
248
|
+
"_noLayersToDisplay": {},
|
249
|
+
"_mapLayerIds": {},
|
250
|
+
"_isLoading": {},
|
251
|
+
"_translations": {}
|
252
|
+
};
|
253
|
+
}
|
254
|
+
static get events() {
|
255
|
+
return [{
|
256
|
+
"method": "layerSelect",
|
257
|
+
"name": "layerSelect",
|
258
|
+
"bubbles": true,
|
259
|
+
"cancelable": true,
|
260
|
+
"composed": true,
|
261
|
+
"docs": {
|
262
|
+
"tags": [],
|
263
|
+
"text": "Emitted on demand when feature layer clicked with details layerId and layerName"
|
264
|
+
},
|
265
|
+
"complexType": {
|
266
|
+
"original": "{ layerId: string, layerName: string }",
|
267
|
+
"resolved": "{ layerId: string; layerName: string; }",
|
268
|
+
"references": {}
|
269
|
+
}
|
270
|
+
}, {
|
271
|
+
"method": "layersListLoaded",
|
272
|
+
"name": "layersListLoaded",
|
273
|
+
"bubbles": true,
|
274
|
+
"cancelable": true,
|
275
|
+
"composed": true,
|
276
|
+
"docs": {
|
277
|
+
"tags": [],
|
278
|
+
"text": "Emitted on demand when list of layers to be listed are created.\r\nWhen empty array received in this event means no valid layers are found to be listed"
|
279
|
+
},
|
280
|
+
"complexType": {
|
281
|
+
"original": "string[]",
|
282
|
+
"resolved": "string[]",
|
283
|
+
"references": {}
|
284
|
+
}
|
285
|
+
}];
|
286
|
+
}
|
287
|
+
static get elementRef() { return "el"; }
|
288
|
+
}
|
@@ -85,19 +85,17 @@ export class LayerTable {
|
|
85
85
|
this.mapInfo = undefined;
|
86
86
|
this.mapView = undefined;
|
87
87
|
this.onlyShowUpdatableLayers = undefined;
|
88
|
+
this.selectedIds = [];
|
88
89
|
this.shareIncludeEmbed = undefined;
|
89
90
|
this.shareIncludeSocial = undefined;
|
90
91
|
this.showNewestFirst = undefined;
|
91
92
|
this.zoomAndScrollToSelected = undefined;
|
92
|
-
this._confirmDelete = false;
|
93
93
|
this._controlsThatFit = undefined;
|
94
94
|
this._fetchingData = false;
|
95
95
|
this._filterActive = false;
|
96
96
|
this._filterOpen = false;
|
97
|
-
this._isDeleting = false;
|
98
97
|
this._layer = undefined;
|
99
98
|
this._selectAllActive = false;
|
100
|
-
this._selectedIndexes = [];
|
101
99
|
this._showHideOpen = false;
|
102
100
|
this._showOnlySelected = false;
|
103
101
|
this._sortActive = false;
|
@@ -190,10 +188,10 @@ export class LayerTable {
|
|
190
188
|
/**
|
191
189
|
* watch for selection changes
|
192
190
|
*/
|
193
|
-
async
|
191
|
+
async _selectedIdsWatchHandler() {
|
194
192
|
this._updateShareUrl();
|
195
193
|
this._validateEnabledActions();
|
196
|
-
if (this._selectAllActive && this.
|
194
|
+
if (this._selectAllActive && this.selectedIds.length !== this._allIds.length) {
|
197
195
|
this._selectAllActive = false;
|
198
196
|
}
|
199
197
|
}
|
@@ -205,19 +203,6 @@ export class LayerTable {
|
|
205
203
|
await this._sortTable();
|
206
204
|
}
|
207
205
|
}
|
208
|
-
//--------------------------------------------------------------------------
|
209
|
-
//
|
210
|
-
// Methods (public)
|
211
|
-
//
|
212
|
-
//--------------------------------------------------------------------------
|
213
|
-
/**
|
214
|
-
* Delete currently selected features
|
215
|
-
*
|
216
|
-
* @returns Promise resolving when the process is complete
|
217
|
-
*/
|
218
|
-
async deleteFeatures() {
|
219
|
-
return this._delete();
|
220
|
-
}
|
221
206
|
/**
|
222
207
|
* Scroll and zoom to the selected feature from the Features widget.
|
223
208
|
*
|
@@ -246,7 +231,11 @@ export class LayerTable {
|
|
246
231
|
/**
|
247
232
|
* Refresh the table when edits are completed
|
248
233
|
*/
|
249
|
-
async editsComplete() {
|
234
|
+
async editsComplete(evt) {
|
235
|
+
const editType = evt.detail;
|
236
|
+
if (editType === "delete" || editType === "add") {
|
237
|
+
this._allIds = await queryAllIds(this._layer);
|
238
|
+
}
|
250
239
|
await this._refresh();
|
251
240
|
}
|
252
241
|
/**
|
@@ -289,12 +278,12 @@ export class LayerTable {
|
|
289
278
|
const tableNodeClass = this._fetchingData ? "display-none" : "";
|
290
279
|
const loadingClass = this._fetchingData ? "" : "display-none";
|
291
280
|
const total = this._allIds.length.toString();
|
292
|
-
const selected = this.
|
281
|
+
const selected = this.selectedIds.length.toString();
|
293
282
|
const tableHeightClass = this.isMobile ? "height-full" : "height-full-adjusted";
|
294
283
|
this._validateActiveActions();
|
295
284
|
return (h(Host, null, h("calcite-shell", null, this._getTableControlRow("header"), h("div", { class: `width-full ${tableHeightClass}` }, h("calcite-panel", { class: "height-full width-full" }, h("calcite-loader", { class: loadingClass, label: this._translations.fetchingData, scale: "l" }), h("div", { class: tableNodeClass, ref: this.onTableNodeCreate })), !this.isMobile ? (h("div", { class: "bottom-left text-color height-19" }, this._translations.recordsSelected
|
296
285
|
.replace("{{total}}", total)
|
297
|
-
.replace("{{selected}}", selected))) : undefined)), this.
|
286
|
+
.replace("{{selected}}", selected))) : undefined)), this._filterModal()));
|
298
287
|
}
|
299
288
|
/**
|
300
289
|
* Called once after the component is loaded
|
@@ -472,11 +461,11 @@ export class LayerTable {
|
|
472
461
|
isOverflow: false
|
473
462
|
} : undefined,
|
474
463
|
this._deleteEnabled ? {
|
475
|
-
active:
|
464
|
+
active: undefined,
|
476
465
|
icon: "trash",
|
477
|
-
indicator:
|
478
|
-
label:
|
479
|
-
func:
|
466
|
+
indicator: undefined,
|
467
|
+
label: undefined,
|
468
|
+
func: undefined,
|
480
469
|
disabled: !featuresSelected,
|
481
470
|
isDanger: true,
|
482
471
|
isOverflow: false
|
@@ -558,7 +547,7 @@ export class LayerTable {
|
|
558
547
|
* @returns boolean
|
559
548
|
*/
|
560
549
|
_featuresSelected() {
|
561
|
-
return this.
|
550
|
+
return this.selectedIds.length > 0;
|
562
551
|
}
|
563
552
|
/**
|
564
553
|
* Return true when we have no features
|
@@ -770,8 +759,8 @@ export class LayerTable {
|
|
770
759
|
else {
|
771
760
|
urlObj.searchParams.delete("layer");
|
772
761
|
}
|
773
|
-
if (((_d = this.
|
774
|
-
urlObj.searchParams.set("oid", this.
|
762
|
+
if (((_d = this.selectedIds) === null || _d === void 0 ? void 0 : _d.length) > 0) {
|
763
|
+
urlObj.searchParams.set("oid", this.selectedIds.join(","));
|
775
764
|
}
|
776
765
|
else {
|
777
766
|
urlObj.searchParams.delete("oid");
|
@@ -793,7 +782,6 @@ export class LayerTable {
|
|
793
782
|
urlObj.searchParams.delete("filter");
|
794
783
|
}
|
795
784
|
this._shareNode.shareUrl = urlObj.href;
|
796
|
-
history.pushState(history.state, document.title, urlObj.href);
|
797
785
|
}
|
798
786
|
/**
|
799
787
|
* Get a tooltip
|
@@ -830,7 +818,15 @@ export class LayerTable {
|
|
830
818
|
*/
|
831
819
|
_getDangerAction(icon, label, func, disabled) {
|
832
820
|
const _disabled = this._layer === undefined ? true : disabled;
|
833
|
-
return (h("div", { class: "display-flex", id: this._getId(icon) }, h("calcite-action", { appearance: "solid", disabled: _disabled, id: icon, onClick: func, text: "" }, h("calcite-button", { appearance: "transparent", iconStart: icon, kind: "danger" }, label)), this._getToolTip("bottom", icon, label)));
|
821
|
+
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: "" }, h("calcite-button", { appearance: "transparent", iconStart: icon, kind: "danger" }, label))), this._getToolTip("bottom", icon, label)));
|
822
|
+
}
|
823
|
+
/**
|
824
|
+
* Return all currently selected IDs from the table
|
825
|
+
*
|
826
|
+
* @param number[] the selected ids
|
827
|
+
*/
|
828
|
+
_getIds() {
|
829
|
+
return this._table.highlightIds.toArray();
|
834
830
|
}
|
835
831
|
/**
|
836
832
|
* Initialize the FeatureTable
|
@@ -876,15 +872,15 @@ export class LayerTable {
|
|
876
872
|
const ids = [...this._table.highlightIds.toArray()];
|
877
873
|
if (!this._skipOnChange) {
|
878
874
|
if (!this._ctrlIsPressed && !this._shiftIsPressed) {
|
879
|
-
if (this.
|
875
|
+
if (this.selectedIds.length > 0) {
|
880
876
|
this._skipOnChange = true;
|
881
877
|
// only readd in specific case where we have multiple selected and then click one of the currently selected
|
882
|
-
const reAdd = this.
|
883
|
-
const
|
878
|
+
const reAdd = this.selectedIds.length > 1 && evt.removed.length === 1;
|
879
|
+
const newIds = reAdd ? evt.removed : ids.filter(id => this.selectedIds.indexOf(id) < 0);
|
884
880
|
this._clearSelection();
|
885
|
-
this.
|
886
|
-
if (
|
887
|
-
this._table.highlightIds.add(
|
881
|
+
this.selectedIds = [...newIds];
|
882
|
+
if (newIds.length > 0) {
|
883
|
+
this._table.highlightIds.add(newIds[0]);
|
888
884
|
}
|
889
885
|
else {
|
890
886
|
this._skipOnChange = false;
|
@@ -892,11 +888,11 @@ export class LayerTable {
|
|
892
888
|
}
|
893
889
|
else {
|
894
890
|
// https://github.com/Esri/solutions-components/issues/365
|
895
|
-
this.
|
891
|
+
this.selectedIds = ids.reverse();
|
896
892
|
}
|
897
893
|
}
|
898
894
|
else if (this._ctrlIsPressed) {
|
899
|
-
this.
|
895
|
+
this.selectedIds = ids.reverse();
|
900
896
|
}
|
901
897
|
else if (this._shiftIsPressed) {
|
902
898
|
this._skipOnChange = true;
|
@@ -915,7 +911,7 @@ export class LayerTable {
|
|
915
911
|
const startIndex = _start < _end ? _start : _end;
|
916
912
|
const endIndex = _end > _start ? _end : _start;
|
917
913
|
this._skipOnChange = startIndex + 1 !== endIndex;
|
918
|
-
const
|
914
|
+
const selectedIds = oids.reduce((prev, cur) => {
|
919
915
|
const id = cur;
|
920
916
|
const index = this._table.viewModel.getObjectIdIndex(id);
|
921
917
|
if ((id === this._currentId || id === this._previousCurrentId)) {
|
@@ -932,13 +928,13 @@ export class LayerTable {
|
|
932
928
|
}
|
933
929
|
// Also add index based check.
|
934
930
|
// In some cases the FeatureTable and Layer query will have differences in how null/undefined field values are sorted
|
935
|
-
if ((this.
|
931
|
+
if ((this.selectedIds.indexOf(id) > -1 || (index >= startIndex && index <= endIndex)) && prev.indexOf(id) < 0 && index > -1) {
|
936
932
|
prev.push(id);
|
937
933
|
}
|
938
934
|
return prev;
|
939
935
|
}, []);
|
940
|
-
this.
|
941
|
-
this._table.highlightIds.addMany(this.
|
936
|
+
this.selectedIds = _start < _end ? selectedIds.reverse() : selectedIds;
|
937
|
+
this._table.highlightIds.addMany(this.selectedIds.filter(i => ids.indexOf(i) < 0));
|
942
938
|
}
|
943
939
|
}
|
944
940
|
this._finishOnChange();
|
@@ -960,7 +956,7 @@ export class LayerTable {
|
|
960
956
|
this._toggleShowSelected();
|
961
957
|
}
|
962
958
|
}
|
963
|
-
this.featureSelectionChange.emit(this.
|
959
|
+
this.featureSelectionChange.emit(this.selectedIds);
|
964
960
|
}
|
965
961
|
/**
|
966
962
|
* Reset basic table props
|
@@ -969,7 +965,7 @@ export class LayerTable {
|
|
969
965
|
var _a;
|
970
966
|
this._clearSelection();
|
971
967
|
this._allIds = [];
|
972
|
-
this.featureSelectionChange.emit(this.
|
968
|
+
this.featureSelectionChange.emit(this.selectedIds);
|
973
969
|
const columnTemplates = this._getColumnTemplates(this._layer.id, (_a = this._layer) === null || _a === void 0 ? void 0 : _a.fields);
|
974
970
|
this._allIds = await queryAllIds(this._layer);
|
975
971
|
if (!this._table) {
|
@@ -1139,30 +1135,6 @@ export class LayerTable {
|
|
1139
1135
|
this._filterOpen = false;
|
1140
1136
|
}
|
1141
1137
|
}
|
1142
|
-
/**
|
1143
|
-
* Show delete confirmation message
|
1144
|
-
*
|
1145
|
-
* @returns node to confirm or deny the delete operation
|
1146
|
-
*/
|
1147
|
-
_deleteMessage() {
|
1148
|
-
return (h("calcite-modal", { "aria-labelledby": "modal-title", kind: "danger", onCalciteModalClose: () => this._deleteClosed(), open: this._confirmDelete }, h("div", { class: "display-flex align-center", id: "modal-title", slot: "header" }, this._translations.deleteFeature), h("div", { slot: "content" }, this._translations.confirm), h("calcite-button", { appearance: "outline", kind: "danger", onClick: () => this._deleteClosed(), slot: "secondary", width: "full" }, this._translations.cancel), h("calcite-button", { kind: "danger", loading: this._isDeleting, onClick: () => void this._deleteFeatures(), slot: "primary", width: "full" }, this._translations.delete)));
|
1149
|
-
}
|
1150
|
-
/**
|
1151
|
-
* Delete the currently selected features
|
1152
|
-
*/
|
1153
|
-
async _deleteFeatures() {
|
1154
|
-
this._isDeleting = true;
|
1155
|
-
const deleteFeatures = this._table.highlightIds.toArray().map((objectId) => {
|
1156
|
-
return { objectId };
|
1157
|
-
});
|
1158
|
-
await this._layer.applyEdits({
|
1159
|
-
deleteFeatures
|
1160
|
-
});
|
1161
|
-
await this._table.refresh();
|
1162
|
-
this._allIds = await queryAllIds(this._layer);
|
1163
|
-
this._isDeleting = false;
|
1164
|
-
this._deleteClosed();
|
1165
|
-
}
|
1166
1138
|
/**
|
1167
1139
|
* Handle map click events to keep table and map click selection in sync
|
1168
1140
|
*
|
@@ -1190,12 +1162,6 @@ export class LayerTable {
|
|
1190
1162
|
}
|
1191
1163
|
}
|
1192
1164
|
}
|
1193
|
-
/**
|
1194
|
-
* Set the alertOpen member to false when the alert is closed
|
1195
|
-
*/
|
1196
|
-
_deleteClosed() {
|
1197
|
-
this._confirmDelete = false;
|
1198
|
-
}
|
1199
1165
|
/**
|
1200
1166
|
* Select or deselect all rows
|
1201
1167
|
*/
|
@@ -1204,7 +1170,7 @@ export class LayerTable {
|
|
1204
1170
|
this._table.highlightIds.removeAll();
|
1205
1171
|
this._skipOnChange = true;
|
1206
1172
|
this._table.highlightIds.addMany(ids);
|
1207
|
-
this.
|
1173
|
+
this.selectedIds = ids;
|
1208
1174
|
this._finishOnChange();
|
1209
1175
|
this._selectAllActive = true;
|
1210
1176
|
}
|
@@ -1226,7 +1192,7 @@ export class LayerTable {
|
|
1226
1192
|
*/
|
1227
1193
|
_clearSelection() {
|
1228
1194
|
var _a;
|
1229
|
-
this.
|
1195
|
+
this.selectedIds = [];
|
1230
1196
|
(_a = this._table) === null || _a === void 0 ? void 0 : _a.highlightIds.removeAll();
|
1231
1197
|
this._finishOnChange();
|
1232
1198
|
}
|
@@ -1249,7 +1215,7 @@ export class LayerTable {
|
|
1249
1215
|
* Select all rows that are not currently selectd
|
1250
1216
|
*/
|
1251
1217
|
_switchSelected() {
|
1252
|
-
const currentIndexes = [...this.
|
1218
|
+
const currentIndexes = [...this.selectedIds];
|
1253
1219
|
this._table.highlightIds.removeAll();
|
1254
1220
|
const ids = this._allIds.reduce((prev, _cur) => {
|
1255
1221
|
if (currentIndexes.indexOf(_cur) < 0) {
|
@@ -1259,7 +1225,7 @@ export class LayerTable {
|
|
1259
1225
|
}, []).sort((a, b) => a - b);
|
1260
1226
|
this._skipOnChange = true;
|
1261
1227
|
this._table.highlightIds.addMany(ids);
|
1262
|
-
this.
|
1228
|
+
this.selectedIds = ids;
|
1263
1229
|
this._finishOnChange();
|
1264
1230
|
}
|
1265
1231
|
/**
|
@@ -1292,7 +1258,7 @@ export class LayerTable {
|
|
1292
1258
|
*/
|
1293
1259
|
async _refresh() {
|
1294
1260
|
await this._table.refresh();
|
1295
|
-
this.featureSelectionChange.emit(this.
|
1261
|
+
this.featureSelectionChange.emit(this.selectedIds);
|
1296
1262
|
}
|
1297
1263
|
/**
|
1298
1264
|
* Zoom to all selected features
|
@@ -1302,14 +1268,6 @@ export class LayerTable {
|
|
1302
1268
|
_zoom() {
|
1303
1269
|
this._table.zoomToSelection();
|
1304
1270
|
}
|
1305
|
-
/**
|
1306
|
-
* Delete all selected records or shows an alert if the layer does not have editing enabled
|
1307
|
-
*
|
1308
|
-
* @returns a promise that will resolve when the operation is complete
|
1309
|
-
*/
|
1310
|
-
_delete() {
|
1311
|
-
this._confirmDelete = true;
|
1312
|
-
}
|
1313
1271
|
/**
|
1314
1272
|
* Handles layer selection change to show new table
|
1315
1273
|
*
|
@@ -1648,6 +1606,22 @@ export class LayerTable {
|
|
1648
1606
|
"attribute": "only-show-updatable-layers",
|
1649
1607
|
"reflect": false
|
1650
1608
|
},
|
1609
|
+
"selectedIds": {
|
1610
|
+
"type": "unknown",
|
1611
|
+
"mutable": false,
|
1612
|
+
"complexType": {
|
1613
|
+
"original": "number[]",
|
1614
|
+
"resolved": "number[]",
|
1615
|
+
"references": {}
|
1616
|
+
},
|
1617
|
+
"required": false,
|
1618
|
+
"optional": false,
|
1619
|
+
"docs": {
|
1620
|
+
"tags": [],
|
1621
|
+
"text": "number[]: A list of ids that are currently selected"
|
1622
|
+
},
|
1623
|
+
"defaultValue": "[]"
|
1624
|
+
},
|
1651
1625
|
"shareIncludeEmbed": {
|
1652
1626
|
"type": "boolean",
|
1653
1627
|
"mutable": false,
|
@@ -1720,15 +1694,12 @@ export class LayerTable {
|
|
1720
1694
|
}
|
1721
1695
|
static get states() {
|
1722
1696
|
return {
|
1723
|
-
"_confirmDelete": {},
|
1724
1697
|
"_controlsThatFit": {},
|
1725
1698
|
"_fetchingData": {},
|
1726
1699
|
"_filterActive": {},
|
1727
1700
|
"_filterOpen": {},
|
1728
|
-
"_isDeleting": {},
|
1729
1701
|
"_layer": {},
|
1730
1702
|
"_selectAllActive": {},
|
1731
|
-
"_selectedIndexes": {},
|
1732
1703
|
"_showHideOpen": {},
|
1733
1704
|
"_showOnlySelected": {},
|
1734
1705
|
"_sortActive": {},
|
@@ -1753,30 +1724,6 @@ export class LayerTable {
|
|
1753
1724
|
}
|
1754
1725
|
}];
|
1755
1726
|
}
|
1756
|
-
static get methods() {
|
1757
|
-
return {
|
1758
|
-
"deleteFeatures": {
|
1759
|
-
"complexType": {
|
1760
|
-
"signature": "() => Promise<void>",
|
1761
|
-
"parameters": [],
|
1762
|
-
"references": {
|
1763
|
-
"Promise": {
|
1764
|
-
"location": "global",
|
1765
|
-
"id": "global::Promise"
|
1766
|
-
}
|
1767
|
-
},
|
1768
|
-
"return": "Promise<void>"
|
1769
|
-
},
|
1770
|
-
"docs": {
|
1771
|
-
"text": "Delete currently selected features",
|
1772
|
-
"tags": [{
|
1773
|
-
"name": "returns",
|
1774
|
-
"text": "Promise resolving when the process is complete"
|
1775
|
-
}]
|
1776
|
-
}
|
1777
|
-
}
|
1778
|
-
};
|
1779
|
-
}
|
1780
1727
|
static get elementRef() { return "el"; }
|
1781
1728
|
static get watchers() {
|
1782
1729
|
return [{
|
@@ -1801,8 +1748,8 @@ export class LayerTable {
|
|
1801
1748
|
"propName": "_layer",
|
1802
1749
|
"methodName": "_layerWatchHandler"
|
1803
1750
|
}, {
|
1804
|
-
"propName": "
|
1805
|
-
"methodName": "
|
1751
|
+
"propName": "_selectedIds",
|
1752
|
+
"methodName": "_selectedIdsWatchHandler"
|
1806
1753
|
}, {
|
1807
1754
|
"propName": "_sortActive",
|
1808
1755
|
"methodName": "_sortActiveWatchHandler"
|