@esri/solutions-components 0.2.3 → 0.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/t9n/solution-config-modal/resources.json +22 -0
- package/dist/assets/t9n/solution-config-modal/resources_en.json +22 -0
- package/dist/cjs/ExpandToggle-73df0d51.js +2 -0
- package/dist/cjs/ExpandToggle-73df0d51.js.map +1 -0
- package/dist/cjs/Heading-6b7b374c.js +2 -0
- package/dist/cjs/Heading-6b7b374c.js.map +1 -0
- package/dist/cjs/_commonjsHelpers-6aafa5de.js +2 -0
- package/dist/cjs/_commonjsHelpers-6aafa5de.js.map +1 -0
- package/dist/cjs/app-globals-2f48e57e.js +2 -0
- package/dist/cjs/app-globals-2f48e57e.js.map +1 -0
- package/dist/cjs/array-ace6d4b5.js +2 -0
- package/dist/cjs/array-ace6d4b5.js.map +1 -0
- package/dist/cjs/buffer-tools_6.cjs.entry.js +2 -0
- package/dist/cjs/buffer-tools_6.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-accordion-item.cjs.entry.js +2 -0
- package/dist/cjs/calcite-accordion-item.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-accordion.cjs.entry.js +2 -0
- package/dist/cjs/calcite-accordion.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-action-bar_6.cjs.entry.js +2 -0
- package/dist/cjs/calcite-action-bar_6.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-action-group.cjs.entry.js +2 -0
- package/dist/cjs/calcite-action-group.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-action-menu_2.cjs.entry.js +20 -401
- package/dist/cjs/calcite-action-menu_2.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-action-pad.cjs.entry.js +2 -0
- package/dist/cjs/calcite-action-pad.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-action_2.cjs.entry.js +425 -71
- package/dist/cjs/calcite-action_2.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-alert.cjs.entry.js +2 -0
- package/dist/cjs/calcite-alert.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-avatar.cjs.entry.js +2 -0
- package/dist/cjs/calcite-avatar.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-block-section.cjs.entry.js +2 -0
- package/dist/cjs/calcite-block-section.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-block.cjs.entry.js +2 -0
- package/dist/cjs/calcite-block.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-button.cjs.entry.js +2 -0
- package/dist/cjs/calcite-button.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-card.cjs.entry.js +2 -0
- package/dist/cjs/calcite-card.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-checkbox.cjs.entry.js +2 -0
- package/dist/cjs/calcite-checkbox.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-chip.cjs.entry.js +2 -0
- package/dist/cjs/calcite-chip.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-color-picker-hex-input.cjs.entry.js +2 -0
- package/dist/cjs/calcite-color-picker-hex-input.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-color-picker-swatch.cjs.entry.js +2 -0
- package/dist/cjs/calcite-color-picker-swatch.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-color-picker.cjs.entry.js +2 -0
- package/dist/cjs/calcite-color-picker.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-combobox-item-group.cjs.entry.js +2 -0
- package/dist/cjs/calcite-combobox-item-group.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-combobox_3.cjs.entry.js +2 -0
- package/dist/cjs/calcite-combobox_3.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-date-picker-day_3.cjs.entry.js +2 -0
- package/dist/cjs/calcite-date-picker-day_3.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-date-picker.cjs.entry.js +2 -0
- package/dist/cjs/calcite-date-picker.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-dropdown-group.cjs.entry.js +2 -0
- package/dist/cjs/calcite-dropdown-group.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-dropdown-item.cjs.entry.js +2 -0
- package/dist/cjs/calcite-dropdown-item.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-dropdown.cjs.entry.js +2 -0
- package/dist/cjs/calcite-dropdown.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-fab.cjs.entry.js +2 -0
- package/dist/cjs/calcite-fab.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-filter.cjs.entry.js +2 -0
- package/dist/cjs/calcite-filter.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-flow-item.cjs.entry.js +2 -0
- package/dist/cjs/calcite-flow-item.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-flow.cjs.entry.js +2 -0
- package/dist/cjs/calcite-flow.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-graph.cjs.entry.js +2 -0
- package/dist/cjs/calcite-graph.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-handle.cjs.entry.js +2 -0
- package/dist/cjs/calcite-handle.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-icon.cjs.entry.js +2 -0
- package/dist/cjs/calcite-icon.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-inline-editable.cjs.entry.js +2 -0
- package/dist/cjs/calcite-inline-editable.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-input-date-picker.cjs.entry.js +2 -0
- package/dist/cjs/calcite-input-date-picker.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-input-number.cjs.entry.js +2 -0
- package/dist/cjs/calcite-input-number.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-input-text.cjs.entry.js +2 -0
- package/dist/cjs/calcite-input-text.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-input-time-picker.cjs.entry.js +2 -0
- package/dist/cjs/calcite-input-time-picker.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-input_2.cjs.entry.js +2 -0
- package/dist/cjs/calcite-input_2.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-label.cjs.entry.js +2 -0
- package/dist/cjs/calcite-label.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-link.cjs.entry.js +2 -0
- package/dist/cjs/calcite-link.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-list-item-group.cjs.entry.js +2 -0
- package/dist/cjs/calcite-list-item-group.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-list_2.cjs.entry.js +2 -0
- package/dist/cjs/calcite-list_2.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-loader.cjs.entry.js +97 -0
- package/dist/cjs/calcite-loader.cjs.entry.js.map +1 -0
- package/dist/cjs/{solution-configuration.cjs.entry.js → calcite-modal_2.cjs.entry.js} +452 -6
- package/dist/cjs/calcite-modal_2.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-option-group.cjs.entry.js +2 -0
- package/dist/cjs/calcite-option-group.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-option_2.cjs.entry.js +2 -0
- package/dist/cjs/calcite-option_2.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-pagination.cjs.entry.js +2 -0
- package/dist/cjs/calcite-pagination.cjs.entry.js.map +1 -0
- package/dist/cjs/{calcite-shell-panel_14.cjs.entry.js → calcite-panel_12.cjs.entry.js} +469 -711
- package/dist/cjs/calcite-panel_12.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-pick-list-group.cjs.entry.js +2 -0
- package/dist/cjs/calcite-pick-list-group.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-pick-list-item.cjs.entry.js +2 -0
- package/dist/cjs/calcite-pick-list-item.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-pick-list.cjs.entry.js +2 -0
- package/dist/cjs/calcite-pick-list.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-popover-manager.cjs.entry.js +2 -0
- package/dist/cjs/calcite-popover-manager.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-radio-button-group.cjs.entry.js +2 -0
- package/dist/cjs/calcite-radio-button-group.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-radio-button.cjs.entry.js +2 -0
- package/dist/cjs/calcite-radio-button.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-rating.cjs.entry.js +2 -0
- package/dist/cjs/calcite-rating.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-shell-center-row.cjs.entry.js +2 -0
- package/dist/cjs/calcite-shell-center-row.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-sortable-list.cjs.entry.js +2 -0
- package/dist/cjs/calcite-sortable-list.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-split-button.cjs.entry.js +2 -0
- package/dist/cjs/calcite-split-button.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-stepper-item.cjs.entry.js +2 -0
- package/dist/cjs/calcite-stepper-item.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-stepper.cjs.entry.js +2 -0
- package/dist/cjs/calcite-stepper.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-switch.cjs.entry.js +2 -0
- package/dist/cjs/calcite-switch.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-tile-select-group.cjs.entry.js +2 -0
- package/dist/cjs/calcite-tile-select-group.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-tile-select.cjs.entry.js +2 -0
- package/dist/cjs/calcite-tile-select.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-tile.cjs.entry.js +2 -0
- package/dist/cjs/calcite-tile.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-time-picker.cjs.entry.js +2 -0
- package/dist/cjs/calcite-time-picker.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-tip-group.cjs.entry.js +2 -0
- package/dist/cjs/calcite-tip-group.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-tip-manager.cjs.entry.js +2 -0
- package/dist/cjs/calcite-tip-manager.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-tip.cjs.entry.js +2 -0
- package/dist/cjs/calcite-tip.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-tooltip-manager.cjs.entry.js +2 -0
- package/dist/cjs/calcite-tooltip-manager.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-tooltip.cjs.entry.js +2 -0
- package/dist/cjs/calcite-tooltip.cjs.entry.js.map +1 -0
- package/dist/cjs/calcite-tree_3.cjs.entry.js +2 -0
- package/dist/cjs/calcite-tree_3.cjs.entry.js.map +1 -0
- package/dist/cjs/check-list.cjs.entry.js +2 -0
- package/dist/cjs/check-list.cjs.entry.js.map +1 -0
- package/dist/cjs/conditionalSlot-2defe83d.js +2 -0
- package/dist/cjs/conditionalSlot-2defe83d.js.map +1 -0
- package/dist/cjs/config-buffer-tools.cjs.entry.js +2 -0
- package/dist/cjs/config-buffer-tools.cjs.entry.js.map +1 -0
- package/dist/cjs/config-draw-tools.cjs.entry.js +2 -0
- package/dist/cjs/config-draw-tools.cjs.entry.js.map +1 -0
- package/dist/cjs/config-layer-picker.cjs.entry.js +2 -0
- package/dist/cjs/config-layer-picker.cjs.entry.js.map +1 -0
- package/dist/cjs/config-pdf-download.cjs.entry.js +2 -0
- package/dist/cjs/config-pdf-download.cjs.entry.js.map +1 -0
- package/dist/cjs/date-e21b2052.js +2 -0
- package/dist/cjs/date-e21b2052.js.map +1 -0
- package/dist/cjs/debounce-69c3bada.js +2 -0
- package/dist/cjs/debounce-69c3bada.js.map +1 -0
- package/dist/cjs/dom-4a580af6.js +2 -0
- package/dist/cjs/dom-4a580af6.js.map +1 -0
- package/dist/cjs/filter-325f654f.js +2 -0
- package/dist/cjs/filter-325f654f.js.map +1 -0
- package/dist/cjs/floating-ui-ca1bcead.js +2 -0
- package/dist/cjs/floating-ui-ca1bcead.js.map +1 -0
- package/dist/cjs/form-45849654.js +2 -0
- package/dist/cjs/form-45849654.js.map +1 -0
- package/dist/cjs/guid-84ac4d91.js +2 -0
- package/dist/cjs/guid-84ac4d91.js.map +1 -0
- package/dist/cjs/index-7af21b6f.js +2 -0
- package/dist/cjs/index-7af21b6f.js.map +1 -0
- package/dist/cjs/index-a86078a0.js +2 -0
- package/dist/cjs/index-a86078a0.js.map +1 -0
- package/dist/cjs/index-d7f9770d.js +2 -0
- package/dist/cjs/index-d7f9770d.js.map +1 -0
- package/dist/cjs/index.cjs.js +2 -0
- package/dist/cjs/index.cjs.js.map +1 -0
- package/dist/cjs/interactive-0a68ab99.js +2 -0
- package/dist/cjs/interactive-0a68ab99.js.map +1 -0
- package/dist/cjs/interfaces-ab603e16.js +2 -0
- package/dist/cjs/interfaces-ab603e16.js.map +1 -0
- package/dist/cjs/interfaces-e76f31e9.js +2 -0
- package/dist/cjs/interfaces-e76f31e9.js.map +1 -0
- package/dist/cjs/key-55aca5c0.js +2 -0
- package/dist/cjs/key-55aca5c0.js.map +1 -0
- package/dist/cjs/label-24fcd8a5.js +2 -0
- package/dist/cjs/label-24fcd8a5.js.map +1 -0
- package/dist/cjs/labelFormats-3236d2e0.js +2 -0
- package/dist/cjs/labelFormats-3236d2e0.js.map +1 -0
- package/dist/cjs/loadModules-38269f99.js +2 -0
- package/dist/cjs/loadModules-38269f99.js.map +1 -0
- package/dist/cjs/loader.cjs.js +3 -1
- package/dist/cjs/loader.cjs.js.map +1 -0
- package/dist/cjs/locale-73cab8e8.js +2 -0
- package/dist/cjs/locale-73cab8e8.js.map +1 -0
- package/dist/cjs/locale-746a095d.js +2 -0
- package/dist/cjs/locale-746a095d.js.map +1 -0
- package/dist/cjs/map-search.cjs.entry.js +2 -0
- package/dist/cjs/map-search.cjs.entry.js.map +1 -0
- package/dist/cjs/mapViewUtils-67cfc412.js +2 -0
- package/dist/cjs/mapViewUtils-67cfc412.js.map +1 -0
- package/dist/cjs/math-460fffaf.js +2 -0
- package/dist/cjs/math-460fffaf.js.map +1 -0
- package/dist/cjs/nonChromiumPlatformUtils-7a6a84d2.js +2 -0
- package/dist/cjs/nonChromiumPlatformUtils-7a6a84d2.js.map +1 -0
- package/dist/cjs/observers-5311faf8.js +2 -0
- package/dist/cjs/observers-5311faf8.js.map +1 -0
- package/dist/cjs/openCloseComponent-bf986132.js +2 -0
- package/dist/cjs/openCloseComponent-bf986132.js.map +1 -0
- package/dist/cjs/public-notification.cjs.entry.js +2 -0
- package/dist/cjs/public-notification.cjs.entry.js.map +1 -0
- package/dist/cjs/publicNotificationStore-6a3d40b3.js +2 -0
- package/dist/cjs/publicNotificationStore-6a3d40b3.js.map +1 -0
- package/dist/cjs/publicNotificationUtils-9d585d8d.js +2 -0
- package/dist/cjs/publicNotificationUtils-9d585d8d.js.map +1 -0
- package/dist/cjs/resources-1f785471.js +2 -0
- package/dist/cjs/resources-1f785471.js.map +1 -0
- package/dist/cjs/resources-2260d186.js +2 -0
- package/dist/cjs/resources-2260d186.js.map +1 -0
- package/dist/cjs/resources-2a9862c7.js +2 -0
- package/dist/cjs/resources-2a9862c7.js.map +1 -0
- package/dist/cjs/resources-308edbd8.js +2 -0
- package/dist/cjs/resources-308edbd8.js.map +1 -0
- package/dist/cjs/resources-6152b073.js +2 -0
- package/dist/cjs/resources-6152b073.js.map +1 -0
- package/dist/cjs/resources-808cfca8.js +2 -0
- package/dist/cjs/resources-808cfca8.js.map +1 -0
- package/dist/cjs/resources-9c55e05c.js +2 -0
- package/dist/cjs/resources-9c55e05c.js.map +1 -0
- package/dist/cjs/resources-aa19bf8c.js +2 -0
- package/dist/cjs/resources-aa19bf8c.js.map +1 -0
- package/dist/cjs/resources-b56bce71.js +2 -0
- package/dist/cjs/resources-b56bce71.js.map +1 -0
- package/dist/cjs/resources-cc7f63b0.js +2 -0
- package/dist/cjs/resources-cc7f63b0.js.map +1 -0
- package/dist/cjs/shared-list-render-4c7d84bf.js +2 -0
- package/dist/cjs/shared-list-render-4c7d84bf.js.map +1 -0
- package/dist/cjs/solution-config-modal.cjs.entry.js +131 -0
- package/dist/cjs/solution-config-modal.cjs.entry.js.map +1 -0
- package/dist/cjs/{solution-contents_3.cjs.entry.js → solution-contents_7.cjs.entry.js} +665 -2
- package/dist/cjs/solution-contents_7.cjs.entry.js.map +1 -0
- package/dist/cjs/{solution-store-e2fc11ac.js → solution-store-09b3fc53.js} +5 -3
- package/dist/cjs/solution-store-09b3fc53.js.map +1 -0
- package/dist/cjs/solutions-components.cjs.js +3 -1
- package/dist/cjs/solutions-components.cjs.js.map +1 -0
- package/dist/cjs/sortable.esm-bf47019d.js +2 -0
- package/dist/cjs/sortable.esm-bf47019d.js.map +1 -0
- package/dist/cjs/store-manager.cjs.entry.js +2 -0
- package/dist/cjs/store-manager.cjs.entry.js.map +1 -0
- package/dist/cjs/time-3f5577cb.js +2 -0
- package/dist/cjs/time-3f5577cb.js.map +1 -0
- package/dist/cjs/utils-120bbbeb.js +2 -0
- package/dist/cjs/utils-120bbbeb.js.map +1 -0
- package/dist/cjs/utils-b4236001.js +2 -0
- package/dist/cjs/utils-b4236001.js.map +1 -0
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/buffer-tools/buffer-tools.js +1 -0
- package/dist/collection/components/buffer-tools/buffer-tools.js.map +1 -0
- package/dist/collection/components/check-list/check-list.js +1 -0
- package/dist/collection/components/check-list/check-list.js.map +1 -0
- package/dist/collection/components/config-buffer-tools/config-buffer-tools.js +1 -0
- package/dist/collection/components/config-buffer-tools/config-buffer-tools.js.map +1 -0
- package/dist/collection/components/config-draw-tools/config-draw-tools.js +1 -0
- package/dist/collection/components/config-draw-tools/config-draw-tools.js.map +1 -0
- package/dist/collection/components/config-layer-picker/config-layer-picker.js +1 -0
- package/dist/collection/components/config-layer-picker/config-layer-picker.js.map +1 -0
- package/dist/collection/components/config-pdf-download/config-pdf-download.js +1 -0
- package/dist/collection/components/config-pdf-download/config-pdf-download.js.map +1 -0
- package/dist/collection/components/json-editor/json-editor.js +1 -0
- package/dist/collection/components/json-editor/json-editor.js.map +1 -0
- package/dist/collection/components/map-draw-tools/map-draw-tools.js +1 -0
- package/dist/collection/components/map-draw-tools/map-draw-tools.js.map +1 -0
- package/dist/collection/components/map-layer-picker/map-layer-picker.js +1 -0
- package/dist/collection/components/map-layer-picker/map-layer-picker.js.map +1 -0
- package/dist/collection/components/map-search/map-search.js +1 -0
- package/dist/collection/components/map-search/map-search.js.map +1 -0
- package/dist/collection/components/map-select-tools/map-select-tools.js +1 -0
- package/dist/collection/components/map-select-tools/map-select-tools.js.map +1 -0
- package/dist/collection/components/pdf-download/pdf-download.js +1 -0
- package/dist/collection/components/pdf-download/pdf-download.js.map +1 -0
- package/dist/collection/components/public-notification/public-notification.js +1 -0
- package/dist/collection/components/public-notification/public-notification.js.map +1 -0
- package/dist/collection/components/refine-selection/refine-selection.js +1 -0
- package/dist/collection/components/refine-selection/refine-selection.js.map +1 -0
- package/dist/collection/components/refine-selection-tools/refine-selection-tools.js +1 -0
- package/dist/collection/components/refine-selection-tools/refine-selection-tools.js.map +1 -0
- package/dist/collection/components/solution-config-modal/solution-config-modal.css +91 -0
- package/dist/collection/components/solution-config-modal/solution-config-modal.js +245 -0
- package/dist/collection/components/solution-config-modal/solution-config-modal.js.map +1 -0
- package/dist/collection/components/solution-configuration/solution-configuration.js +24 -11
- package/dist/collection/components/solution-configuration/solution-configuration.js.map +1 -0
- package/dist/collection/components/solution-contents/solution-contents.js +1 -0
- package/dist/collection/components/solution-contents/solution-contents.js.map +1 -0
- package/dist/collection/components/solution-item/solution-item.js +1 -0
- package/dist/collection/components/solution-item/solution-item.js.map +1 -0
- package/dist/collection/components/solution-item-details/solution-item-details.js +1 -0
- package/dist/collection/components/solution-item-details/solution-item-details.js.map +1 -0
- package/dist/collection/components/solution-item-icon/solution-item-icon.js +1 -0
- package/dist/collection/components/solution-item-icon/solution-item-icon.js.map +1 -0
- package/dist/collection/components/solution-item-sharing/solution-item-sharing.js +1 -0
- package/dist/collection/components/solution-item-sharing/solution-item-sharing.js.map +1 -0
- package/dist/collection/components/solution-organization-variables/solution-organization-variables.js +1 -0
- package/dist/collection/components/solution-organization-variables/solution-organization-variables.js.map +1 -0
- package/dist/collection/components/solution-resource-item/solution-resource-item.js +1 -0
- package/dist/collection/components/solution-resource-item/solution-resource-item.js.map +1 -0
- package/dist/collection/components/solution-spatial-ref/solution-spatial-ref.js +1 -0
- package/dist/collection/components/solution-spatial-ref/solution-spatial-ref.js.map +1 -0
- package/dist/collection/components/solution-spatial-ref/spatialreferences.js +1 -0
- package/dist/collection/components/solution-spatial-ref/spatialreferences.js.map +1 -0
- package/dist/collection/components/solution-template-data/solution-template-data.js +1 -0
- package/dist/collection/components/solution-template-data/solution-template-data.js.map +1 -0
- package/dist/collection/components/solution-variables/solution-variables.js +1 -0
- package/dist/collection/components/solution-variables/solution-variables.js.map +1 -0
- package/dist/collection/components/store-manager/store-manager.js +1 -0
- package/dist/collection/components/store-manager/store-manager.js.map +1 -0
- package/dist/collection/index.js +1 -0
- package/dist/collection/index.js.map +1 -0
- package/dist/collection/utils/common.js +1 -0
- package/dist/collection/utils/common.js.map +1 -0
- package/dist/collection/utils/csvUtils.js +1 -0
- package/dist/collection/utils/csvUtils.js.map +1 -0
- package/dist/collection/utils/interfaces.js +1 -0
- package/dist/collection/utils/interfaces.js.map +1 -0
- package/dist/collection/utils/languageUtil.js +1 -0
- package/dist/collection/utils/languageUtil.js.map +1 -0
- package/dist/collection/utils/loadModules.js +1 -0
- package/dist/collection/utils/loadModules.js.map +1 -0
- package/dist/collection/utils/locale.js +1 -0
- package/dist/collection/utils/locale.js.map +1 -0
- package/dist/collection/utils/mapViewUtils.js +1 -0
- package/dist/collection/utils/mapViewUtils.js.map +1 -0
- package/dist/collection/utils/publicNotificationStore.js +1 -0
- package/dist/collection/utils/publicNotificationStore.js.map +1 -0
- package/dist/collection/utils/publicNotificationUtils.js +1 -0
- package/dist/collection/utils/publicNotificationUtils.js.map +1 -0
- package/dist/collection/utils/queryUtils.js +1 -0
- package/dist/collection/utils/queryUtils.js.map +1 -0
- package/dist/collection/utils/solution-store.js +4 -3
- package/dist/collection/utils/solution-store.js.map +1 -0
- package/dist/collection/utils/solution-store.ts +3 -3
- package/dist/collection/utils/templates.js +1 -0
- package/dist/collection/utils/templates.js.map +1 -0
- package/dist/collection/utils/test/testUtils.js +1 -0
- package/dist/collection/utils/test/testUtils.js.map +1 -0
- package/dist/collection/utils/types.js +1 -0
- package/dist/collection/utils/types.js.map +1 -0
- package/dist/esm/ExpandToggle-b7d1fb3c.js +2 -0
- package/dist/esm/ExpandToggle-b7d1fb3c.js.map +1 -0
- package/dist/esm/Heading-1efb4837.js +2 -0
- package/dist/esm/Heading-1efb4837.js.map +1 -0
- package/dist/esm/_commonjsHelpers-8fd39c50.js +2 -0
- package/dist/esm/_commonjsHelpers-8fd39c50.js.map +1 -0
- package/dist/esm/app-globals-09b9efee.js +2 -0
- package/dist/esm/app-globals-09b9efee.js.map +1 -0
- package/dist/esm/array-2ab3b18f.js +2 -0
- package/dist/esm/array-2ab3b18f.js.map +1 -0
- package/dist/esm/buffer-tools_6.entry.js +4 -2
- package/dist/esm/buffer-tools_6.entry.js.map +1 -0
- package/dist/esm/calcite-accordion-item.entry.js +2 -0
- package/dist/esm/calcite-accordion-item.entry.js.map +1 -0
- package/dist/esm/calcite-accordion.entry.js +2 -0
- package/dist/esm/calcite-accordion.entry.js.map +1 -0
- package/dist/esm/calcite-action-bar_6.entry.js +4 -2
- package/dist/esm/calcite-action-bar_6.entry.js.map +1 -0
- package/dist/esm/calcite-action-group.entry.js +2 -0
- package/dist/esm/calcite-action-group.entry.js.map +1 -0
- package/dist/esm/calcite-action-menu_2.entry.js +22 -403
- package/dist/esm/calcite-action-menu_2.entry.js.map +1 -0
- package/dist/esm/calcite-action-pad.entry.js +2 -0
- package/dist/esm/calcite-action-pad.entry.js.map +1 -0
- package/dist/esm/calcite-action_2.entry.js +426 -72
- package/dist/esm/calcite-action_2.entry.js.map +1 -0
- package/dist/esm/calcite-alert.entry.js +2 -0
- package/dist/esm/calcite-alert.entry.js.map +1 -0
- package/dist/esm/calcite-avatar.entry.js +2 -0
- package/dist/esm/calcite-avatar.entry.js.map +1 -0
- package/dist/esm/calcite-block-section.entry.js +2 -0
- package/dist/esm/calcite-block-section.entry.js.map +1 -0
- package/dist/esm/calcite-block.entry.js +2 -0
- package/dist/esm/calcite-block.entry.js.map +1 -0
- package/dist/esm/calcite-button.entry.js +2 -0
- package/dist/esm/calcite-button.entry.js.map +1 -0
- package/dist/esm/calcite-card.entry.js +2 -0
- package/dist/esm/calcite-card.entry.js.map +1 -0
- package/dist/esm/calcite-checkbox.entry.js +2 -0
- package/dist/esm/calcite-checkbox.entry.js.map +1 -0
- package/dist/esm/calcite-chip.entry.js +2 -0
- package/dist/esm/calcite-chip.entry.js.map +1 -0
- package/dist/esm/calcite-color-picker-hex-input.entry.js +2 -0
- package/dist/esm/calcite-color-picker-hex-input.entry.js.map +1 -0
- package/dist/esm/calcite-color-picker-swatch.entry.js +2 -0
- package/dist/esm/calcite-color-picker-swatch.entry.js.map +1 -0
- package/dist/esm/calcite-color-picker.entry.js +2 -0
- package/dist/esm/calcite-color-picker.entry.js.map +1 -0
- package/dist/esm/calcite-combobox-item-group.entry.js +2 -0
- package/dist/esm/calcite-combobox-item-group.entry.js.map +1 -0
- package/dist/esm/calcite-combobox_3.entry.js +4 -2
- package/dist/esm/calcite-combobox_3.entry.js.map +1 -0
- package/dist/esm/calcite-date-picker-day_3.entry.js +2 -0
- package/dist/esm/calcite-date-picker-day_3.entry.js.map +1 -0
- package/dist/esm/calcite-date-picker.entry.js +2 -0
- package/dist/esm/calcite-date-picker.entry.js.map +1 -0
- package/dist/esm/calcite-dropdown-group.entry.js +2 -0
- package/dist/esm/calcite-dropdown-group.entry.js.map +1 -0
- package/dist/esm/calcite-dropdown-item.entry.js +2 -0
- package/dist/esm/calcite-dropdown-item.entry.js.map +1 -0
- package/dist/esm/calcite-dropdown.entry.js +2 -0
- package/dist/esm/calcite-dropdown.entry.js.map +1 -0
- package/dist/esm/calcite-fab.entry.js +2 -0
- package/dist/esm/calcite-fab.entry.js.map +1 -0
- package/dist/esm/calcite-filter.entry.js +2 -0
- package/dist/esm/calcite-filter.entry.js.map +1 -0
- package/dist/esm/calcite-flow-item.entry.js +2 -0
- package/dist/esm/calcite-flow-item.entry.js.map +1 -0
- package/dist/esm/calcite-flow.entry.js +2 -0
- package/dist/esm/calcite-flow.entry.js.map +1 -0
- package/dist/esm/calcite-graph.entry.js +2 -0
- package/dist/esm/calcite-graph.entry.js.map +1 -0
- package/dist/esm/calcite-handle.entry.js +2 -0
- package/dist/esm/calcite-handle.entry.js.map +1 -0
- package/dist/esm/calcite-icon.entry.js +2 -0
- package/dist/esm/calcite-icon.entry.js.map +1 -0
- package/dist/esm/calcite-inline-editable.entry.js +2 -0
- package/dist/esm/calcite-inline-editable.entry.js.map +1 -0
- package/dist/esm/calcite-input-date-picker.entry.js +2 -0
- package/dist/esm/calcite-input-date-picker.entry.js.map +1 -0
- package/dist/esm/calcite-input-number.entry.js +2 -0
- package/dist/esm/calcite-input-number.entry.js.map +1 -0
- package/dist/esm/calcite-input-text.entry.js +2 -0
- package/dist/esm/calcite-input-text.entry.js.map +1 -0
- package/dist/esm/calcite-input-time-picker.entry.js +2 -0
- package/dist/esm/calcite-input-time-picker.entry.js.map +1 -0
- package/dist/esm/calcite-input_2.entry.js +2 -0
- package/dist/esm/calcite-input_2.entry.js.map +1 -0
- package/dist/esm/calcite-label.entry.js +2 -0
- package/dist/esm/calcite-label.entry.js.map +1 -0
- package/dist/esm/calcite-link.entry.js +2 -0
- package/dist/esm/calcite-link.entry.js.map +1 -0
- package/dist/esm/calcite-list-item-group.entry.js +2 -0
- package/dist/esm/calcite-list-item-group.entry.js.map +1 -0
- package/dist/esm/calcite-list_2.entry.js +2 -0
- package/dist/esm/calcite-list_2.entry.js.map +1 -0
- package/dist/esm/calcite-loader.entry.js +93 -0
- package/dist/esm/calcite-loader.entry.js.map +1 -0
- package/dist/esm/{solution-configuration.entry.js → calcite-modal_2.entry.js} +454 -9
- package/dist/esm/calcite-modal_2.entry.js.map +1 -0
- package/dist/esm/calcite-option-group.entry.js +2 -0
- package/dist/esm/calcite-option-group.entry.js.map +1 -0
- package/dist/esm/calcite-option_2.entry.js +2 -0
- package/dist/esm/calcite-option_2.entry.js.map +1 -0
- package/dist/esm/calcite-pagination.entry.js +2 -0
- package/dist/esm/calcite-pagination.entry.js.map +1 -0
- package/dist/esm/{calcite-shell-panel_14.entry.js → calcite-panel_12.entry.js} +468 -708
- package/dist/esm/calcite-panel_12.entry.js.map +1 -0
- package/dist/esm/calcite-pick-list-group.entry.js +2 -0
- package/dist/esm/calcite-pick-list-group.entry.js.map +1 -0
- package/dist/esm/calcite-pick-list-item.entry.js +2 -0
- package/dist/esm/calcite-pick-list-item.entry.js.map +1 -0
- package/dist/esm/calcite-pick-list.entry.js +2 -0
- package/dist/esm/calcite-pick-list.entry.js.map +1 -0
- package/dist/esm/calcite-popover-manager.entry.js +2 -0
- package/dist/esm/calcite-popover-manager.entry.js.map +1 -0
- package/dist/esm/calcite-radio-button-group.entry.js +2 -0
- package/dist/esm/calcite-radio-button-group.entry.js.map +1 -0
- package/dist/esm/calcite-radio-button.entry.js +2 -0
- package/dist/esm/calcite-radio-button.entry.js.map +1 -0
- package/dist/esm/calcite-rating.entry.js +2 -0
- package/dist/esm/calcite-rating.entry.js.map +1 -0
- package/dist/esm/calcite-shell-center-row.entry.js +2 -0
- package/dist/esm/calcite-shell-center-row.entry.js.map +1 -0
- package/dist/esm/calcite-sortable-list.entry.js +2 -0
- package/dist/esm/calcite-sortable-list.entry.js.map +1 -0
- package/dist/esm/calcite-split-button.entry.js +2 -0
- package/dist/esm/calcite-split-button.entry.js.map +1 -0
- package/dist/esm/calcite-stepper-item.entry.js +2 -0
- package/dist/esm/calcite-stepper-item.entry.js.map +1 -0
- package/dist/esm/calcite-stepper.entry.js +2 -0
- package/dist/esm/calcite-stepper.entry.js.map +1 -0
- package/dist/esm/calcite-switch.entry.js +2 -0
- package/dist/esm/calcite-switch.entry.js.map +1 -0
- package/dist/esm/calcite-tile-select-group.entry.js +2 -0
- package/dist/esm/calcite-tile-select-group.entry.js.map +1 -0
- package/dist/esm/calcite-tile-select.entry.js +2 -0
- package/dist/esm/calcite-tile-select.entry.js.map +1 -0
- package/dist/esm/calcite-tile.entry.js +2 -0
- package/dist/esm/calcite-tile.entry.js.map +1 -0
- package/dist/esm/calcite-time-picker.entry.js +2 -0
- package/dist/esm/calcite-time-picker.entry.js.map +1 -0
- package/dist/esm/calcite-tip-group.entry.js +2 -0
- package/dist/esm/calcite-tip-group.entry.js.map +1 -0
- package/dist/esm/calcite-tip-manager.entry.js +2 -0
- package/dist/esm/calcite-tip-manager.entry.js.map +1 -0
- package/dist/esm/calcite-tip.entry.js +2 -0
- package/dist/esm/calcite-tip.entry.js.map +1 -0
- package/dist/esm/calcite-tooltip-manager.entry.js +2 -0
- package/dist/esm/calcite-tooltip-manager.entry.js.map +1 -0
- package/dist/esm/calcite-tooltip.entry.js +2 -0
- package/dist/esm/calcite-tooltip.entry.js.map +1 -0
- package/dist/esm/calcite-tree_3.entry.js +2 -0
- package/dist/esm/calcite-tree_3.entry.js.map +1 -0
- package/dist/esm/check-list.entry.js +2 -0
- package/dist/esm/check-list.entry.js.map +1 -0
- package/dist/esm/conditionalSlot-bb4cab11.js +2 -0
- package/dist/esm/conditionalSlot-bb4cab11.js.map +1 -0
- package/dist/esm/config-buffer-tools.entry.js +2 -0
- package/dist/esm/config-buffer-tools.entry.js.map +1 -0
- package/dist/esm/config-draw-tools.entry.js +2 -0
- package/dist/esm/config-draw-tools.entry.js.map +1 -0
- package/dist/esm/config-layer-picker.entry.js +4 -2
- package/dist/esm/config-layer-picker.entry.js.map +1 -0
- package/dist/esm/config-pdf-download.entry.js +2 -0
- package/dist/esm/config-pdf-download.entry.js.map +1 -0
- package/dist/esm/date-45de0016.js +2 -0
- package/dist/esm/date-45de0016.js.map +1 -0
- package/dist/esm/debounce-4c884e5c.js +2 -0
- package/dist/esm/debounce-4c884e5c.js.map +1 -0
- package/dist/esm/dom-e593bf85.js +2 -0
- package/dist/esm/dom-e593bf85.js.map +1 -0
- package/dist/esm/filter-82935f2d.js +2 -0
- package/dist/esm/filter-82935f2d.js.map +1 -0
- package/dist/esm/floating-ui-69a55a27.js +2 -0
- package/dist/esm/floating-ui-69a55a27.js.map +1 -0
- package/dist/esm/form-dbfde8ce.js +2 -0
- package/dist/esm/form-dbfde8ce.js.map +1 -0
- package/dist/esm/guid-15fce7c0.js +2 -0
- package/dist/esm/guid-15fce7c0.js.map +1 -0
- package/dist/esm/index-15022d11.js +2 -0
- package/dist/esm/index-15022d11.js.map +1 -0
- package/dist/esm/index-9c882a6e.js +2 -0
- package/dist/esm/index-9c882a6e.js.map +1 -0
- package/dist/esm/index-d33ebc35.js +2 -0
- package/dist/esm/index-d33ebc35.js.map +1 -0
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/interactive-822ffed6.js +2 -0
- package/dist/esm/interactive-822ffed6.js.map +1 -0
- package/dist/esm/interfaces-1bdfc3a8.js +72 -0
- package/dist/esm/interfaces-1bdfc3a8.js.map +1 -0
- package/dist/esm/interfaces-4ae145eb.js +2 -0
- package/dist/esm/interfaces-4ae145eb.js.map +1 -0
- package/dist/esm/key-acb660e7.js +2 -0
- package/dist/esm/key-acb660e7.js.map +1 -0
- package/dist/esm/label-d411de44.js +2 -0
- package/dist/esm/label-d411de44.js.map +1 -0
- package/dist/esm/labelFormats-b37958c3.js +2 -0
- package/dist/esm/labelFormats-b37958c3.js.map +1 -0
- package/dist/esm/loadModules-d3b50f95.js +2 -0
- package/dist/esm/loadModules-d3b50f95.js.map +1 -0
- package/dist/esm/loader.js +3 -1
- package/dist/esm/loader.js.map +1 -0
- package/dist/esm/locale-0b490b02.js +2 -0
- package/dist/esm/locale-0b490b02.js.map +1 -0
- package/dist/esm/locale-0e10d7e5.js +2 -0
- package/dist/esm/locale-0e10d7e5.js.map +1 -0
- package/dist/esm/map-search.entry.js +2 -0
- package/dist/esm/map-search.entry.js.map +1 -0
- package/dist/esm/mapViewUtils-809947c8.js +284 -0
- package/dist/esm/mapViewUtils-809947c8.js.map +1 -0
- package/dist/esm/math-552c5420.js +2 -0
- package/dist/esm/math-552c5420.js.map +1 -0
- package/dist/esm/nonChromiumPlatformUtils-ee349005.js +2 -0
- package/dist/esm/nonChromiumPlatformUtils-ee349005.js.map +1 -0
- package/dist/esm/observers-31601001.js +2 -0
- package/dist/esm/observers-31601001.js.map +1 -0
- package/dist/esm/openCloseComponent-5caff873.js +2 -0
- package/dist/esm/openCloseComponent-5caff873.js.map +1 -0
- package/dist/esm/public-notification.entry.js +4 -2
- package/dist/esm/public-notification.entry.js.map +1 -0
- package/dist/esm/publicNotificationStore-060c59c8.js +2 -0
- package/dist/esm/publicNotificationStore-060c59c8.js.map +1 -0
- package/dist/esm/publicNotificationUtils-5cb5a607.js +2 -0
- package/dist/esm/publicNotificationUtils-5cb5a607.js.map +1 -0
- package/dist/esm/resources-2235e4ff.js +2 -0
- package/dist/esm/resources-2235e4ff.js.map +1 -0
- package/dist/esm/resources-3d641588.js +2 -0
- package/dist/esm/resources-3d641588.js.map +1 -0
- package/dist/esm/resources-436ae282.js +2 -0
- package/dist/esm/resources-436ae282.js.map +1 -0
- package/dist/esm/resources-4d02cb48.js +2 -0
- package/dist/esm/resources-4d02cb48.js.map +1 -0
- package/dist/esm/resources-78132e50.js +2 -0
- package/dist/esm/resources-78132e50.js.map +1 -0
- package/dist/esm/resources-7d4a587f.js +2 -0
- package/dist/esm/resources-7d4a587f.js.map +1 -0
- package/dist/esm/resources-971845d1.js +2 -0
- package/dist/esm/resources-971845d1.js.map +1 -0
- package/dist/esm/resources-9eb63965.js +2 -0
- package/dist/esm/resources-9eb63965.js.map +1 -0
- package/dist/esm/resources-d60362c3.js +2 -0
- package/dist/esm/resources-d60362c3.js.map +1 -0
- package/dist/esm/resources-e3a5cf27.js +2 -0
- package/dist/esm/resources-e3a5cf27.js.map +1 -0
- package/dist/esm/shared-list-render-4e9d47a3.js +2 -0
- package/dist/esm/shared-list-render-4e9d47a3.js.map +1 -0
- package/dist/esm/solution-config-modal.entry.js +127 -0
- package/dist/esm/solution-config-modal.entry.js.map +1 -0
- package/dist/esm/{solution-contents_3.entry.js → solution-contents_7.entry.js} +662 -3
- package/dist/esm/solution-contents_7.entry.js.map +1 -0
- package/dist/esm/{solution-store-b3c65467.js → solution-store-d8519c64.js} +6 -4
- package/dist/esm/solution-store-d8519c64.js.map +1 -0
- package/dist/esm/solutions-components.js +3 -1
- package/dist/esm/solutions-components.js.map +1 -0
- package/dist/esm/sortable.esm-3b2eaa5c.js +2 -0
- package/dist/esm/sortable.esm-3b2eaa5c.js.map +1 -0
- package/dist/esm/store-manager.entry.js +2 -0
- package/dist/esm/store-manager.entry.js.map +1 -0
- package/dist/esm/time-f014778c.js +2 -0
- package/dist/esm/time-f014778c.js.map +1 -0
- package/dist/esm/utils-3f4ee4c3.js +2 -0
- package/dist/esm/utils-3f4ee4c3.js.map +1 -0
- package/dist/esm/utils-583554bc.js +2 -0
- package/dist/esm/utils-583554bc.js.map +1 -0
- package/dist/solutions-components/index.esm.js +2 -0
- package/dist/solutions-components/index.esm.js.map +1 -0
- package/dist/solutions-components/p-06dab43c.entry.js +140 -0
- package/dist/solutions-components/p-06dab43c.entry.js.map +1 -0
- package/dist/solutions-components/p-0bbe4865.entry.js +620 -0
- package/dist/solutions-components/p-0bbe4865.entry.js.map +1 -0
- package/dist/solutions-components/p-0fddf8a4.entry.js +349 -0
- package/dist/solutions-components/p-0fddf8a4.entry.js.map +1 -0
- package/dist/solutions-components/p-11068040.entry.js +1121 -0
- package/dist/solutions-components/p-11068040.entry.js.map +1 -0
- package/dist/solutions-components/p-11bc6805.entry.js +87 -0
- package/dist/solutions-components/p-11bc6805.entry.js.map +1 -0
- package/dist/solutions-components/p-13b37f05.js +308 -3
- package/dist/solutions-components/p-13b37f05.js.map +1 -0
- package/dist/solutions-components/p-1dfb5fae.entry.js +713 -0
- package/dist/solutions-components/p-1dfb5fae.entry.js.map +1 -0
- package/dist/solutions-components/p-1e15b1a3.js +183 -2
- package/dist/solutions-components/p-1e15b1a3.js.map +1 -0
- package/dist/solutions-components/p-1e5bc9c3.entry.js +96 -0
- package/dist/solutions-components/p-1e5bc9c3.entry.js.map +1 -0
- package/dist/solutions-components/p-1ed05745.entry.js +214 -0
- package/dist/solutions-components/p-1ed05745.entry.js.map +1 -0
- package/dist/solutions-components/p-20bdf42f.js +407 -14
- package/dist/solutions-components/p-20bdf42f.js.map +1 -0
- package/dist/solutions-components/p-22574d83.entry.js +74 -0
- package/dist/solutions-components/p-22574d83.entry.js.map +1 -0
- package/dist/solutions-components/p-23904a3d.js +401 -3
- package/dist/solutions-components/p-23904a3d.js.map +1 -0
- package/dist/solutions-components/p-26484399.entry.js +108 -0
- package/dist/solutions-components/p-26484399.entry.js.map +1 -0
- package/dist/solutions-components/p-2910dd9e.js +4094 -0
- package/dist/solutions-components/p-2910dd9e.js.map +1 -0
- package/dist/solutions-components/p-29bdbd3e.entry.js +280 -0
- package/dist/solutions-components/p-29bdbd3e.entry.js.map +1 -0
- package/dist/solutions-components/p-2ac06389.js +25 -16
- package/dist/solutions-components/p-2ac06389.js.map +1 -0
- package/dist/solutions-components/p-2bce7fa2.entry.js +45 -0
- package/dist/solutions-components/p-2bce7fa2.entry.js.map +1 -0
- package/dist/solutions-components/p-2e9ed892.js +48 -1
- package/dist/solutions-components/p-2e9ed892.js.map +1 -0
- package/dist/solutions-components/p-2f12ff1b.entry.js +202 -0
- package/dist/solutions-components/p-2f12ff1b.entry.js.map +1 -0
- package/dist/solutions-components/p-30810b45.entry.js +1250 -0
- package/dist/solutions-components/p-30810b45.entry.js.map +1 -0
- package/dist/solutions-components/p-32a67cb2.js +207 -2
- package/dist/solutions-components/p-32a67cb2.js.map +1 -0
- package/dist/solutions-components/p-341ff921.entry.js +449 -0
- package/dist/solutions-components/p-341ff921.entry.js.map +1 -0
- package/dist/solutions-components/p-36ce64e4.entry.js +215 -0
- package/dist/solutions-components/p-36ce64e4.entry.js.map +1 -0
- package/dist/solutions-components/p-374a5031.js +107 -2
- package/dist/solutions-components/p-374a5031.js.map +1 -0
- package/dist/solutions-components/p-38ddadf2.entry.js +342 -0
- package/dist/solutions-components/p-38ddadf2.entry.js.map +1 -0
- package/dist/solutions-components/p-3b010ce1.js +19 -1
- package/dist/solutions-components/p-3b010ce1.js.map +1 -0
- package/dist/solutions-components/p-3f6b0af4.js +221 -2
- package/dist/solutions-components/p-3f6b0af4.js.map +1 -0
- package/dist/solutions-components/p-400e1427.entry.js +236 -0
- package/dist/solutions-components/p-400e1427.entry.js.map +1 -0
- package/dist/solutions-components/p-40d7cf01.entry.js +228 -0
- package/dist/solutions-components/p-40d7cf01.entry.js.map +1 -0
- package/dist/solutions-components/p-45556aff.entry.js +215 -0
- package/dist/solutions-components/p-45556aff.entry.js.map +1 -0
- package/dist/solutions-components/p-49aaa793.entry.js +95 -0
- package/dist/solutions-components/p-49aaa793.entry.js.map +1 -0
- package/dist/solutions-components/p-4e32bf8c.js +484 -1
- package/dist/solutions-components/p-4e32bf8c.js.map +1 -0
- package/dist/solutions-components/p-4e89b243.entry.js +479 -0
- package/dist/solutions-components/p-4e89b243.entry.js.map +1 -0
- package/dist/solutions-components/p-515637fb.entry.js +183 -0
- package/dist/solutions-components/p-515637fb.entry.js.map +1 -0
- package/dist/solutions-components/p-5243a654.entry.js +147 -0
- package/dist/solutions-components/p-5243a654.entry.js.map +1 -0
- package/dist/solutions-components/p-55673790.entry.js +82 -0
- package/dist/solutions-components/p-55673790.entry.js.map +1 -0
- package/dist/solutions-components/p-56350bff.js +173 -2
- package/dist/solutions-components/p-56350bff.js.map +1 -0
- package/dist/solutions-components/p-58b374c0.entry.js +347 -0
- package/dist/solutions-components/p-58b374c0.entry.js.map +1 -0
- package/dist/solutions-components/p-58c69df2.js +2024 -2
- package/dist/solutions-components/p-58c69df2.js.map +1 -0
- package/dist/solutions-components/p-59fd6684.entry.js +22 -0
- package/dist/solutions-components/p-59fd6684.entry.js.map +1 -0
- package/dist/solutions-components/p-5b0d7c7d.js +35 -16
- package/dist/solutions-components/p-5b0d7c7d.js.map +1 -0
- package/dist/solutions-components/p-5b20090f.entry.js +22189 -0
- package/dist/solutions-components/p-5b20090f.entry.js.map +1 -0
- package/dist/solutions-components/p-5cf33602.js +43 -2
- package/dist/solutions-components/p-5cf33602.js.map +1 -0
- package/dist/solutions-components/p-600e23c6.js +1770 -2
- package/dist/solutions-components/p-600e23c6.js.map +1 -0
- package/dist/solutions-components/p-61398a7b.entry.js +74 -0
- package/dist/solutions-components/p-61398a7b.entry.js.map +1 -0
- package/dist/solutions-components/p-63a05701.entry.js +45 -0
- package/dist/solutions-components/p-63a05701.entry.js.map +1 -0
- package/dist/solutions-components/p-63f6e8f1.js +16 -1
- package/dist/solutions-components/p-63f6e8f1.js.map +1 -0
- package/dist/solutions-components/p-64a2040e.entry.js +63 -0
- package/dist/solutions-components/p-64a2040e.entry.js.map +1 -0
- package/dist/solutions-components/p-64c63eb2.entry.js +157 -0
- package/dist/solutions-components/p-64c63eb2.entry.js.map +1 -0
- package/dist/solutions-components/p-6940e2fd.entry.js +100 -0
- package/dist/solutions-components/p-6940e2fd.entry.js.map +1 -0
- package/dist/solutions-components/p-69900b68.entry.js +152 -0
- package/dist/solutions-components/p-69900b68.entry.js.map +1 -0
- package/dist/solutions-components/p-699125b6.entry.js +44 -0
- package/dist/solutions-components/p-699125b6.entry.js.map +1 -0
- package/dist/solutions-components/p-6d0899c8.entry.js +118 -0
- package/dist/solutions-components/p-6d0899c8.entry.js.map +1 -0
- package/dist/solutions-components/p-6e0da576.js +15 -1
- package/dist/solutions-components/p-6e0da576.js.map +1 -0
- package/dist/solutions-components/p-6fe17794.js +11 -1
- package/dist/solutions-components/p-6fe17794.js.map +1 -0
- package/dist/solutions-components/p-708a63a8.js +14 -1
- package/dist/solutions-components/p-708a63a8.js.map +1 -0
- package/dist/solutions-components/p-729708a3.js +16 -1
- package/dist/solutions-components/p-729708a3.js.map +1 -0
- package/dist/solutions-components/p-73e23995.js +8 -1
- package/dist/solutions-components/p-73e23995.js.map +1 -0
- package/dist/solutions-components/p-75f54a34.entry.js +883 -0
- package/dist/solutions-components/p-75f54a34.entry.js.map +1 -0
- package/dist/solutions-components/p-77182c3a.js +3017 -1
- package/dist/solutions-components/p-77182c3a.js.map +1 -0
- package/dist/solutions-components/p-794ba85d.entry.js +175 -0
- package/dist/solutions-components/p-794ba85d.entry.js.map +1 -0
- package/dist/solutions-components/p-79cde78e.entry.js +203 -0
- package/dist/solutions-components/p-79cde78e.entry.js.map +1 -0
- package/dist/solutions-components/p-7a2c75a4.entry.js +230 -0
- package/dist/solutions-components/p-7a2c75a4.entry.js.map +1 -0
- package/dist/solutions-components/p-7daea1df.js +43 -1
- package/dist/solutions-components/p-7daea1df.js.map +1 -0
- package/dist/solutions-components/p-7de77097.entry.js +162 -0
- package/dist/solutions-components/p-7de77097.entry.js.map +1 -0
- package/dist/solutions-components/p-7f2b74a9.entry.js +56 -0
- package/dist/solutions-components/p-7f2b74a9.entry.js.map +1 -0
- package/dist/solutions-components/p-81e606c0.entry.js +915 -0
- package/dist/solutions-components/p-81e606c0.entry.js.map +1 -0
- package/dist/solutions-components/p-86908777.js +62 -3
- package/dist/solutions-components/p-86908777.js.map +1 -0
- package/dist/solutions-components/p-87a0ccb4.entry.js +254 -0
- package/dist/solutions-components/p-87a0ccb4.entry.js.map +1 -0
- package/dist/solutions-components/p-93d3119d.js +1950 -1
- package/dist/solutions-components/p-93d3119d.js.map +1 -0
- package/dist/solutions-components/p-958e2979.entry.js +111 -0
- package/dist/solutions-components/p-958e2979.entry.js.map +1 -0
- package/dist/solutions-components/p-95ddb529.entry.js +181 -0
- package/dist/solutions-components/p-95ddb529.entry.js.map +1 -0
- package/dist/solutions-components/p-991ee695.js +111 -1
- package/dist/solutions-components/p-991ee695.js.map +1 -0
- package/dist/solutions-components/p-99d9b624.entry.js +177 -0
- package/dist/solutions-components/p-99d9b624.entry.js.map +1 -0
- package/dist/solutions-components/p-9a9955db.js +43 -1
- package/dist/solutions-components/p-9a9955db.js.map +1 -0
- package/dist/solutions-components/p-9d925d5b.entry.js +233 -0
- package/dist/solutions-components/p-9d925d5b.entry.js.map +1 -0
- package/dist/solutions-components/p-9dc0210f.entry.js +125 -0
- package/dist/solutions-components/p-9dc0210f.entry.js.map +1 -0
- package/dist/solutions-components/p-9ef1328a.entry.js +542 -0
- package/dist/solutions-components/p-9ef1328a.entry.js.map +1 -0
- package/dist/solutions-components/p-9fec2884.entry.js +216 -0
- package/dist/solutions-components/p-9fec2884.entry.js.map +1 -0
- package/dist/solutions-components/p-a1786d11.entry.js +2380 -0
- package/dist/solutions-components/p-a1786d11.entry.js.map +1 -0
- package/dist/solutions-components/p-a2ada355.entry.js +135 -0
- package/dist/solutions-components/p-a2ada355.entry.js.map +1 -0
- package/dist/solutions-components/p-a57adb27.entry.js +154 -0
- package/dist/solutions-components/p-a57adb27.entry.js.map +1 -0
- package/dist/solutions-components/p-a80b3880.js +16 -1
- package/dist/solutions-components/p-a80b3880.js.map +1 -0
- package/dist/solutions-components/p-a88dd457.entry.js +123 -0
- package/dist/solutions-components/p-a88dd457.entry.js.map +1 -0
- package/dist/solutions-components/p-ac6efd19.entry.js +57 -0
- package/dist/solutions-components/p-ac6efd19.entry.js.map +1 -0
- package/dist/solutions-components/p-ae1fd76b.js +13 -1
- package/dist/solutions-components/p-ae1fd76b.js.map +1 -0
- package/dist/solutions-components/p-afffa81a.entry.js +140 -0
- package/dist/solutions-components/p-afffa81a.entry.js.map +1 -0
- package/dist/solutions-components/p-b0f3ed4d.entry.js +376 -0
- package/dist/solutions-components/p-b0f3ed4d.entry.js.map +1 -0
- package/dist/solutions-components/p-b359dc78.js +43 -1
- package/dist/solutions-components/p-b359dc78.js.map +1 -0
- package/dist/solutions-components/p-b66cba3e.entry.js +97 -0
- package/dist/solutions-components/p-b66cba3e.entry.js.map +1 -0
- package/dist/solutions-components/p-b6c2f470.entry.js +574 -0
- package/dist/solutions-components/p-b6c2f470.entry.js.map +1 -0
- package/dist/solutions-components/p-b978636e.js +16 -1
- package/dist/solutions-components/p-b978636e.js.map +1 -0
- package/dist/solutions-components/p-bd19837e.entry.js +96 -0
- package/dist/solutions-components/p-bd19837e.entry.js.map +1 -0
- package/dist/solutions-components/p-be8cc144.entry.js +567 -0
- package/dist/solutions-components/p-be8cc144.entry.js.map +1 -0
- package/dist/solutions-components/p-bfd20deb.entry.js +80 -0
- package/dist/solutions-components/p-bfd20deb.entry.js.map +1 -0
- package/dist/{esm/mapViewUtils-09f1e7bd.js → solutions-components/p-c20bd963.js} +3 -1
- package/dist/solutions-components/p-c20bd963.js.map +1 -0
- package/dist/solutions-components/p-c2c8442d.entry.js +140 -0
- package/dist/solutions-components/p-c2c8442d.entry.js.map +1 -0
- package/dist/solutions-components/p-c3f93cec.entry.js +158 -0
- package/dist/solutions-components/p-c3f93cec.entry.js.map +1 -0
- package/dist/solutions-components/p-c5721b0f.entry.js +127 -0
- package/dist/solutions-components/p-c5721b0f.entry.js.map +1 -0
- package/dist/solutions-components/p-c818e661.entry.js +107 -0
- package/dist/solutions-components/p-c818e661.entry.js.map +1 -0
- package/dist/solutions-components/p-c9870dc4.entry.js +38 -0
- package/dist/solutions-components/p-c9870dc4.entry.js.map +1 -0
- package/dist/solutions-components/p-cbd9fecf.js +500 -2
- package/dist/solutions-components/p-cbd9fecf.js.map +1 -0
- package/dist/solutions-components/p-cf59eb16.entry.js +2423 -0
- package/dist/solutions-components/p-cf59eb16.entry.js.map +1 -0
- package/dist/solutions-components/p-cfb300c6.entry.js +250 -0
- package/dist/solutions-components/p-cfb300c6.entry.js.map +1 -0
- package/dist/solutions-components/p-d48a24e6.js +756 -2
- package/dist/solutions-components/p-d48a24e6.js.map +1 -0
- package/dist/solutions-components/p-dbad98e8.js +124 -2
- package/dist/solutions-components/p-dbad98e8.js.map +1 -0
- package/dist/solutions-components/p-dd79118e.entry.js +708 -0
- package/dist/solutions-components/p-dd79118e.entry.js.map +1 -0
- package/dist/solutions-components/p-de5416e8.js +30 -1
- package/dist/solutions-components/p-de5416e8.js.map +1 -0
- package/dist/solutions-components/p-de881187.entry.js +87 -0
- package/dist/solutions-components/p-de881187.entry.js.map +1 -0
- package/dist/solutions-components/p-e1905f7b.entry.js +120 -0
- package/dist/solutions-components/p-e1905f7b.entry.js.map +1 -0
- package/dist/solutions-components/p-e405ebe8.entry.js +93 -0
- package/dist/solutions-components/p-e405ebe8.entry.js.map +1 -0
- package/dist/solutions-components/p-e515767a.entry.js +116 -0
- package/dist/solutions-components/p-e515767a.entry.js.map +1 -0
- package/dist/solutions-components/p-e611d8c8.js +30 -1
- package/dist/solutions-components/p-e611d8c8.js.map +1 -0
- package/dist/solutions-components/p-e6a695a5.js +103 -2
- package/dist/solutions-components/p-e6a695a5.js.map +1 -0
- package/dist/solutions-components/p-e6fb9cde.entry.js +1872 -0
- package/dist/solutions-components/p-e6fb9cde.entry.js.map +1 -0
- package/dist/solutions-components/p-e947d3b0.js +7 -1
- package/dist/solutions-components/p-e947d3b0.js.map +1 -0
- package/dist/solutions-components/p-e99b1247.js +207 -1
- package/dist/solutions-components/p-e99b1247.js.map +1 -0
- package/dist/solutions-components/p-eb5b78c3.entry.js +125 -0
- package/dist/solutions-components/p-eb5b78c3.entry.js.map +1 -0
- package/dist/solutions-components/p-eb976965.js +35 -3
- package/dist/solutions-components/p-eb976965.js.map +1 -0
- package/dist/solutions-components/p-ed075c2f.entry.js +186 -0
- package/dist/solutions-components/p-ed075c2f.entry.js.map +1 -0
- package/dist/solutions-components/p-eeb0321d.js +15 -2
- package/dist/solutions-components/p-eeb0321d.js.map +1 -0
- package/dist/solutions-components/p-ef6f9e24.entry.js +609 -0
- package/dist/solutions-components/p-ef6f9e24.entry.js.map +1 -0
- package/dist/solutions-components/p-f0294899.entry.js +84 -0
- package/dist/solutions-components/p-f0294899.entry.js.map +1 -0
- package/dist/{esm/interfaces-e2a2064d.js → solutions-components/p-f04fdb9a.js} +3 -1
- package/dist/solutions-components/p-f04fdb9a.js.map +1 -0
- package/dist/solutions-components/p-f477f146.entry.js +310 -0
- package/dist/solutions-components/p-f477f146.entry.js.map +1 -0
- package/dist/solutions-components/p-f48821a2.js +60 -7
- package/dist/solutions-components/p-f48821a2.js.map +1 -0
- package/dist/solutions-components/p-f496ed0c.entry.js +150 -0
- package/dist/solutions-components/p-f496ed0c.entry.js.map +1 -0
- package/dist/solutions-components/p-f759a6e7.js +196 -1
- package/dist/solutions-components/p-f759a6e7.js.map +1 -0
- package/dist/solutions-components/p-fc884dd6.js +30 -16
- package/dist/solutions-components/p-fc884dd6.js.map +1 -0
- package/dist/solutions-components/solutions-components.css +10531 -1
- package/dist/solutions-components/solutions-components.esm.js +22 -1
- package/dist/solutions-components/solutions-components.esm.js.map +1 -0
- package/dist/solutions-components/utils/solution-store.ts +3 -3
- package/dist/solutions-components_commit.txt +8 -6
- package/dist/types/components/solution-config-modal/solution-config-modal.d.ts +69 -0
- package/dist/types/components/solution-configuration/solution-configuration.d.ts +4 -2
- package/dist/types/components.d.ts +43 -5
- package/dist/types/preact.d.ts +4 -0
- package/package.json +1 -1
- package/dist/cjs/calcite-modal.cjs.entry.js +0 -447
- package/dist/cjs/calcite-panel_2.cjs.entry.js +0 -437
- package/dist/cjs/calcite-scrim.cjs.entry.js +0 -62
- package/dist/esm/calcite-modal.entry.js +0 -443
- package/dist/esm/calcite-panel_2.entry.js +0 -432
- package/dist/esm/calcite-scrim.entry.js +0 -58
- package/dist/solutions-components/p-006c6ae1.entry.js +0 -11
- package/dist/solutions-components/p-04a37fc0.entry.js +0 -6
- package/dist/solutions-components/p-062dbde8.entry.js +0 -6
- package/dist/solutions-components/p-0b941521.entry.js +0 -11
- package/dist/solutions-components/p-0c80eb51.entry.js +0 -11
- package/dist/solutions-components/p-10501e21.entry.js +0 -23
- package/dist/solutions-components/p-109e4684.entry.js +0 -6
- package/dist/solutions-components/p-12dfd43e.entry.js +0 -11
- package/dist/solutions-components/p-1c3bcd99.entry.js +0 -12
- package/dist/solutions-components/p-1c589630.entry.js +0 -6
- package/dist/solutions-components/p-1fb471cf.entry.js +0 -11
- package/dist/solutions-components/p-23275dbd.entry.js +0 -6
- package/dist/solutions-components/p-236d76e7.entry.js +0 -11
- package/dist/solutions-components/p-29246858.entry.js +0 -11
- package/dist/solutions-components/p-2af67c67.entry.js +0 -6
- package/dist/solutions-components/p-2bee764f.entry.js +0 -11
- package/dist/solutions-components/p-2f6b4f04.entry.js +0 -6
- package/dist/solutions-components/p-305ae3fe.entry.js +0 -11
- package/dist/solutions-components/p-343e325d.entry.js +0 -11
- package/dist/solutions-components/p-3485601e.entry.js +0 -6
- package/dist/solutions-components/p-395e9b6c.entry.js +0 -6
- package/dist/solutions-components/p-39c5f2d2.entry.js +0 -6
- package/dist/solutions-components/p-3c4f2257.entry.js +0 -11
- package/dist/solutions-components/p-3c8ec7a3.entry.js +0 -12
- package/dist/solutions-components/p-4130fbcd.entry.js +0 -11
- package/dist/solutions-components/p-421cbb15.entry.js +0 -6
- package/dist/solutions-components/p-43fa414d.entry.js +0 -11
- package/dist/solutions-components/p-4760f22a.entry.js +0 -6
- package/dist/solutions-components/p-4fb6d2cf.entry.js +0 -11
- package/dist/solutions-components/p-54384555.entry.js +0 -11
- package/dist/solutions-components/p-5493f036.entry.js +0 -6
- package/dist/solutions-components/p-551fd063.entry.js +0 -11
- package/dist/solutions-components/p-5a61ef0d.entry.js +0 -6
- package/dist/solutions-components/p-6a3ce8f6.entry.js +0 -6
- package/dist/solutions-components/p-6b9dc092.js +0 -21
- package/dist/solutions-components/p-6be581f5.entry.js +0 -6
- package/dist/solutions-components/p-6cf432f9.entry.js +0 -11
- package/dist/solutions-components/p-70368b2b.entry.js +0 -6
- package/dist/solutions-components/p-708ffad0.entry.js +0 -11
- package/dist/solutions-components/p-7321ba65.entry.js +0 -11
- package/dist/solutions-components/p-75b35018.entry.js +0 -11
- package/dist/solutions-components/p-764c0a90.entry.js +0 -11
- package/dist/solutions-components/p-77031b01.entry.js +0 -11
- package/dist/solutions-components/p-778a1b4a.entry.js +0 -11
- package/dist/solutions-components/p-7cdc6089.entry.js +0 -6
- package/dist/solutions-components/p-81467529.entry.js +0 -6
- package/dist/solutions-components/p-834380d6.entry.js +0 -11
- package/dist/solutions-components/p-89cc843b.entry.js +0 -11
- package/dist/solutions-components/p-8e3a2736.entry.js +0 -11
- package/dist/solutions-components/p-8e8b182f.entry.js +0 -12
- package/dist/solutions-components/p-8f052987.entry.js +0 -11
- package/dist/solutions-components/p-93790a9e.entry.js +0 -37
- package/dist/solutions-components/p-9bbee464.entry.js +0 -6
- package/dist/solutions-components/p-9bdd4abe.entry.js +0 -17
- package/dist/solutions-components/p-a4a7d49d.entry.js +0 -17
- package/dist/solutions-components/p-a7036d68.entry.js +0 -11
- package/dist/solutions-components/p-ac91cd40.entry.js +0 -11
- package/dist/solutions-components/p-acd0a09f.entry.js +0 -11
- package/dist/solutions-components/p-acd3b2bf.entry.js +0 -11
- package/dist/solutions-components/p-aea937fb.entry.js +0 -12
- package/dist/solutions-components/p-b1b36556.entry.js +0 -11
- package/dist/solutions-components/p-b25f6ebe.js +0 -257
- package/dist/solutions-components/p-b2ae8634.entry.js +0 -6
- package/dist/solutions-components/p-ba104266.entry.js +0 -11
- package/dist/solutions-components/p-bfcab358.entry.js +0 -11
- package/dist/solutions-components/p-c848d1bd.entry.js +0 -29
- package/dist/solutions-components/p-c9766584.entry.js +0 -6
- package/dist/solutions-components/p-d2cc1b94.entry.js +0 -12
- package/dist/solutions-components/p-d51a72d2.entry.js +0 -11
- package/dist/solutions-components/p-d88fe54b.entry.js +0 -18
- package/dist/solutions-components/p-daee23cc.entry.js +0 -11
- package/dist/solutions-components/p-db7d14d5.entry.js +0 -12
- package/dist/solutions-components/p-dc724c1d.entry.js +0 -11
- package/dist/solutions-components/p-dc7bc20f.entry.js +0 -11
- package/dist/solutions-components/p-de242ea9.entry.js +0 -6
- package/dist/solutions-components/p-e4ebb82a.entry.js +0 -11
- package/dist/solutions-components/p-e64c5c11.entry.js +0 -6
- package/dist/solutions-components/p-e9e47eab.entry.js +0 -6
- package/dist/solutions-components/p-eb3be6d4.entry.js +0 -6
- package/dist/solutions-components/p-ed27c151.entry.js +0 -6
- package/dist/solutions-components/p-ef170bb1.entry.js +0 -6
- package/dist/solutions-components/p-f044863f.entry.js +0 -16
- package/dist/solutions-components/p-f0bae2f0.entry.js +0 -37
- package/dist/solutions-components/p-f5a3b34f.entry.js +0 -23
- package/dist/solutions-components/p-fa2575c2.entry.js +0 -6
- package/dist/solutions-components/p-fe0fdd8b.js +0 -36
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"map-select-tools.js","sourceRoot":"","sources":["../../../src/components/map-select-tools/map-select-tools.tsx"],"names":[],"mappings":"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","sourcesContent":["/** @license\r\n * Copyright 2022 Esri\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n */\r\n\r\nimport { Component, Element, Event, EventEmitter, Host, h, Method, Listen, Prop, State, VNode, Watch } from \"@stencil/core\";\r\nimport { loadModules } from \"../../utils/loadModules\";\r\nimport { highlightFeatures, goToSelection } from \"../../utils/mapViewUtils\";\r\nimport { getQueryGeoms, queryObjectIds } from \"../../utils/queryUtils\";\r\nimport { EWorkflowType, ESelectionMode, ISelectionSet, ERefineMode } from \"../../utils/interfaces\";\r\nimport state from \"../../utils/publicNotificationStore\";\r\nimport MapSelectTools_T9n from \"../../assets/t9n/map-select-tools/resources.json\";\r\nimport { getLocaleComponentStrings } from \"../../utils/locale\";\r\n\r\n@Component({\r\n tag: \"map-select-tools\",\r\n styleUrl: \"map-select-tools.css\",\r\n shadow: false,\r\n})\r\nexport class MapSelectTools {\r\n //--------------------------------------------------------------------------\r\n //\r\n // Host element access\r\n //\r\n //--------------------------------------------------------------------------\r\n @Element() el: HTMLElement;\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Properties (public)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html\r\n */\r\n @Prop() mapView: __esri.MapView;\r\n\r\n /**\r\n * esri/views/layers/FeatureLayerView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html\r\n */\r\n @Prop() selectLayerView: __esri.FeatureLayerView;\r\n\r\n /**\r\n * esri/geometry: https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry.html\r\n */\r\n @Prop() geometries: __esri.Geometry[];\r\n\r\n /**\r\n * utils/interfaces/ISelectionSet: Used to store key details about any selections that have been made.\r\n */\r\n @Prop({reflect: false}) selectionSet: ISelectionSet;\r\n\r\n /**\r\n * boolean: When true a new label is not generated for the stored selection set\r\n */\r\n @Prop() isUpdate = false;\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Properties (protected)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * string: Text entered by the end user.\r\n * Used to search against the locator.\r\n */\r\n @State() _searchTerm: string;\r\n\r\n /**\r\n * Contains the translations for this component.\r\n * All UI strings should be defined here.\r\n */\r\n @State() protected _translations: typeof MapSelectTools_T9n;\r\n\r\n /**\r\n * EWorkflowType: \"SEARCH\", \"SELECT\", \"SKETCH\", \"REFINE\"\r\n */\r\n @State() _workflowType: EWorkflowType;\r\n\r\n /**\r\n * esri/geometry/Geometry: https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Geometry.html\r\n */\r\n protected Geometry: typeof __esri.Geometry;\r\n\r\n /**\r\n * esri/Graphic: https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html\r\n */\r\n protected Graphic: typeof __esri.Graphic;\r\n\r\n /**\r\n * esri/layers/GraphicsLayer: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-GraphicsLayer.html\r\n */\r\n protected GraphicsLayer: typeof __esri.GraphicsLayer;\r\n\r\n /**\r\n * esri/widgets/Search: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Search.html\r\n */\r\n protected Search: typeof __esri.widgetsSearch;\r\n\r\n /**\r\n * esri/geometry: https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry.html\r\n */\r\n protected _bufferGeometry: __esri.Geometry;\r\n\r\n /**\r\n * esri/layers/GraphicsLayer: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-GraphicsLayer.html\r\n */\r\n protected _bufferGraphicsLayer: __esri.GraphicsLayer;\r\n\r\n /**\r\n * HTMLBufferToolsElement: The container div for the buffer tools\r\n */\r\n protected _bufferTools: HTMLBufferToolsElement;\r\n\r\n /**\r\n * HTMLMapDrawToolsElement: The container div for the sketch widget\r\n */\r\n protected _drawTools: HTMLMapDrawToolsElement;\r\n\r\n /**\r\n * esri/geometry/geometryEngine: https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngine.html\r\n */\r\n protected _geometryEngine: __esri.geometryEngine;\r\n\r\n /**\r\n * esri/views/layers/FeatureLayerView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html\r\n */\r\n protected _refineSelectLayers: __esri.FeatureLayerView[];\r\n\r\n /**\r\n * HTMLRefineSelectionToolsElement: The container div for the sketch widget\r\n */\r\n protected _refineTools: HTMLRefineSelectionToolsElement;\r\n\r\n /**\r\n * HTMLElement: The container div for the search widget\r\n */\r\n protected _searchElement: HTMLElement;\r\n\r\n /**\r\n * An array of objects representing the results of search\r\n */\r\n protected _searchResult: any;\r\n\r\n /**\r\n * esri/widgets/Search: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Search.html\r\n */\r\n protected _searchWidget: __esri.widgetsSearch;\r\n\r\n /**\r\n * number[]: the oids of the selected features\r\n */\r\n protected _selectedIds: number[] = [];\r\n\r\n /**\r\n * string: A label to help uniquely identify the selection set\r\n */\r\n protected _selectionLabel = \"\";\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Watch handlers\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * Called each time the geometries prop is changed.\r\n *\r\n * @returns Promise when complete\r\n */\r\n @Watch(\"geometries\")\r\n async watchGeometriesHandler(\r\n newValue: __esri.Geometry[],\r\n oldValue: __esri.Geometry[]\r\n ): Promise<void> {\r\n if (newValue !== oldValue) {\r\n if (newValue.length > 0) {\r\n return this._geomQuery(this.geometries);\r\n } else if (newValue.length === 0) {\r\n return this._clearResults(true, true);\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Called each time the workflowType prop is changed and emits the workflowTypeChange event.\r\n *\r\n * @returns Promise when complete\r\n */\r\n @Watch(\"_workflowType\")\r\n async workflowTypeHandler(\r\n newValue: EWorkflowType,\r\n oldValue: EWorkflowType\r\n ): Promise<void> {\r\n if (newValue !== oldValue) {\r\n this.workflowTypeChange.emit(newValue);\r\n }\r\n }\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Methods (public)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * Clear any selection results\r\n *\r\n * @returns Promise when the results have been cleared\r\n */\r\n @Method()\r\n async clearSelection(): Promise<void> {\r\n return this._clearResults();\r\n }\r\n\r\n /**\r\n * Get the new selection set\r\n *\r\n * @returns Promise with the new selection set\r\n */\r\n @Method()\r\n async getSelection(): Promise<ISelectionSet> {\r\n return {\r\n id: this.isUpdate ? this.selectionSet.id : Date.now(),\r\n workflowType: this._workflowType,\r\n searchResult: this._searchResult,\r\n buffer: this._bufferGeometry,\r\n distance: this._bufferTools.distance,\r\n download: true,\r\n unit: this._bufferTools.unit,\r\n label: this._workflowType === EWorkflowType.SEARCH ?\r\n this._selectionLabel : `${this._selectionLabel} ${this._bufferTools.distance} ${this._bufferTools.unit}`,\r\n selectedIds: this._selectedIds,\r\n layerView: this.selectLayerView,\r\n geometries: this.geometries,\r\n refineSelectLayers: this._refineTools.layerViews\r\n } as ISelectionSet;\r\n }\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Events (public)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * Emitted on demand when the selection set changes.\r\n *\r\n */\r\n @Event() selectionSetChange: EventEmitter<number>;\r\n\r\n /**\r\n * Emitted on demand when the workflow type changes.\r\n *\r\n */\r\n @Event() workflowTypeChange: EventEmitter<EWorkflowType>;\r\n\r\n /**\r\n * Listen to changes in the sketch graphics\r\n *\r\n */\r\n @Listen(\"sketchGraphicsChange\", { target: \"window\" })\r\n sketchGraphicsChange(event: CustomEvent): void {\r\n this._updateSelection(EWorkflowType.SKETCH, event.detail, this._translations.sketch);\r\n }\r\n\r\n /**\r\n * Listen to changes in the refine graphics\r\n *\r\n */\r\n @Listen(\"refineSelectionGraphicsChange\", { target: \"window\" })\r\n refineSelectionGraphicsChange(event: CustomEvent): Promise<void> {\r\n const graphics = event.detail;\r\n\r\n this._updateSelection(EWorkflowType.SELECT, graphics, this._translations.select);\r\n // Using OIDs to avoid issue with points\r\n const oids = Array.isArray(graphics) ? graphics.map(g => g.attributes[g?.layer?.objectIdField]) : [];\r\n return this._highlightFeatures(oids);\r\n }\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Functions (lifecycle)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * StencilJS: Called once just after the component is first connected to the DOM.\r\n */\r\n async componentWillLoad(): Promise<void> {\r\n await this._getTranslations();\r\n await this._initModules();\r\n }\r\n\r\n /**\r\n * StencilJS: Called once just after the component is fully loaded and the first render() occurs.\r\n */\r\n async componentDidLoad(): Promise<void> {\r\n return this._init();\r\n }\r\n\r\n /**\r\n * Renders the component.\r\n */\r\n render(): VNode {\r\n const searchEnabled = this._workflowType === EWorkflowType.SEARCH;\r\n const showSearchClass = searchEnabled ? \" div-visible-search\" : \" div-not-visible\";\r\n\r\n const drawEnabled = this._workflowType === EWorkflowType.SKETCH;\r\n const showDrawToolsClass = drawEnabled ? \" div-visible\" : \" div-not-visible\";\r\n\r\n const selectEnabled = this._workflowType === EWorkflowType.SELECT;\r\n const showSelectToolsClass = selectEnabled ? \" div-visible\" : \" div-not-visible\";\r\n\r\n return (\r\n <Host>\r\n <div class=\"padding-bottom-1\">\r\n <calcite-radio-group\r\n class=\"w-100\"\r\n onCalciteRadioGroupChange={(evt) => this._workflowChange(evt)}\r\n >\r\n <calcite-radio-group-item\r\n checked={searchEnabled}\r\n class=\"w-50 end-border\"\r\n value={EWorkflowType.SEARCH}\r\n >\r\n {this._translations.search}\r\n </calcite-radio-group-item>\r\n <calcite-radio-group-item\r\n checked={selectEnabled}\r\n class=\"w-50 end-border\"\r\n value={EWorkflowType.SELECT}\r\n >\r\n {this._translations.select}\r\n </calcite-radio-group-item>\r\n <calcite-radio-group-item\r\n checked={drawEnabled}\r\n class=\"w-50\"\r\n value={EWorkflowType.SKETCH}\r\n >\r\n {this._translations.sketch}\r\n </calcite-radio-group-item>\r\n </calcite-radio-group>\r\n </div>\r\n <div class={showSearchClass}>\r\n <div class=\"search-widget\" ref={(el) => { this._searchElement = el }} />\r\n </div>\r\n <map-draw-tools\r\n active={drawEnabled}\r\n border={true}\r\n class={showDrawToolsClass}\r\n mapView={this.mapView}\r\n ref={(el) => { this._drawTools = el}}\r\n />\r\n <refine-selection-tools\r\n active={selectEnabled}\r\n border={true}\r\n class={showSelectToolsClass}\r\n layerViews={this._refineSelectLayers}\r\n mapView={this.mapView}\r\n mode={ESelectionMode.ADD}\r\n ref={(el) => { this._refineTools = el }}\r\n refineMode={ERefineMode.SUBSET}\r\n />\r\n <calcite-label style={{ \"display\": \"flex\", \"padding-top\": \"1rem\" }}>\r\n {this._translations?.searchDistance}\r\n <buffer-tools\r\n distance={this.selectionSet?.distance}\r\n geometries={this.geometries}\r\n onBufferComplete={(evt) => this._bufferComplete(evt)}\r\n ref={(el) => this._bufferTools = el}\r\n unit={this.selectionSet?.unit}\r\n />\r\n </calcite-label>\r\n <slot />\r\n </Host>\r\n );\r\n }\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Functions (protected)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * Load esri javascript api modules\r\n *\r\n * @returns Promise resolving when function is done\r\n *\r\n * @protected\r\n */\r\n protected async _initModules(): Promise<void> {\r\n const [GraphicsLayer, Graphic, Search, Geometry, geometryEngine]: [\r\n __esri.GraphicsLayerConstructor,\r\n __esri.GraphicConstructor,\r\n __esri.widgetsSearchConstructor,\r\n __esri.GeometryConstructor,\r\n __esri.geometryEngine\r\n ] = await loadModules([\r\n \"esri/layers/GraphicsLayer\",\r\n \"esri/Graphic\",\r\n \"esri/widgets/Search\",\r\n \"esri/geometry/Geometry\",\r\n \"esri/geometry/geometryEngine\"\r\n ]);\r\n this.GraphicsLayer = GraphicsLayer;\r\n this.Graphic = Graphic;\r\n this.Search = Search;\r\n this.Geometry = Geometry;\r\n this._geometryEngine = geometryEngine;\r\n }\r\n\r\n /**\r\n * Initialize the graphics layer, selection set, and search widget\r\n *\r\n * @returns Promise when the operation has completed\r\n */\r\n protected async _init(): Promise<void> {\r\n this._initGraphicsLayer();\r\n this._initSelectionSet();\r\n this._initSearchWidget();\r\n }\r\n\r\n /**\r\n * Initialize the state of the component with any stored values in a selection set\r\n *\r\n * @protected\r\n */\r\n protected _initSelectionSet(): void {\r\n if (this.selectionSet) {\r\n this._searchTerm = this.selectionSet?.searchResult?.name;\r\n this._workflowType = this.selectionSet?.workflowType;\r\n this._searchResult = this.selectionSet?.searchResult;\r\n this._refineSelectLayers = this.selectionSet?.refineSelectLayers;\r\n this.geometries = [\r\n ...this.selectionSet?.geometries\r\n ];\r\n // reset selection label base\r\n this._selectionLabel = this._workflowType === EWorkflowType.SKETCH ?\r\n this._translations.sketch : this._workflowType === EWorkflowType.SELECT ?\r\n this._translations.select : this.selectionSet?.label;\r\n\r\n void goToSelection(this.selectionSet.selectedIds, this.selectionSet.layerView, this.mapView, false);\r\n } else {\r\n this._workflowType = EWorkflowType.SEARCH;\r\n }\r\n }\r\n\r\n /**\r\n * Initialize the search widget\r\n *\r\n * @protected\r\n */\r\n protected _initSearchWidget(): void {\r\n if (this.mapView && this._searchElement) {\r\n const searchOptions: __esri.widgetsSearchProperties = {\r\n view: this.mapView,\r\n container: this._searchElement,\r\n searchTerm: this._searchTerm\r\n };\r\n\r\n this._searchWidget = new this.Search(searchOptions);\r\n\r\n this._searchWidget.on(\"search-clear\", () => {\r\n void this._clearResults(false);\r\n });\r\n\r\n this._searchWidget.on(\"select-result\", (searchResults) => {\r\n void this._clearResults(false);\r\n if (searchResults.result) {\r\n this._searchResult = searchResults.result;\r\n this._updateSelection(\r\n EWorkflowType.SEARCH,\r\n [searchResults.result.feature],\r\n searchResults?.result?.name\r\n );\r\n }\r\n });\r\n }\r\n }\r\n\r\n /**\r\n * Initialize the graphics layer used to store any buffer grapghics\r\n *\r\n * @protected\r\n */\r\n protected _initGraphicsLayer(): void {\r\n const title = this._translations.bufferLayer;\r\n\r\n const bufferIndex = this.mapView.map.layers.findIndex((l) => l.title === title);\r\n if (bufferIndex > -1) {\r\n this._bufferGraphicsLayer = this.mapView.map.layers.getItemAt(bufferIndex) as __esri.GraphicsLayer;\r\n } else {\r\n this._bufferGraphicsLayer = new this.GraphicsLayer({ title });\r\n state.managedLayers.push(title);\r\n const sketchIndex = this.mapView.map.layers.findIndex((l) => l.title === this._translations.sketchLayer);\r\n if (sketchIndex > -1) {\r\n this.mapView.map.layers.add(this._bufferGraphicsLayer, sketchIndex);\r\n } else {\r\n this.mapView.map.layers.add(this._bufferGraphicsLayer);\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Store workflow type change\r\n *\r\n * @protected\r\n */\r\n protected _workflowChange(evt: CustomEvent): void {\r\n this._workflowType = evt.detail;\r\n }\r\n\r\n /**\r\n * Highlight the features in the map\r\n *\r\n * @protected\r\n */\r\n protected async _highlightFeatures(\r\n ids: number[]\r\n ): Promise<void> {\r\n state.highlightHandle?.remove();\r\n if (ids.length > 0) {\r\n state.highlightHandle = await highlightFeatures(\r\n ids,\r\n this.selectLayerView,\r\n this.mapView\r\n );\r\n }\r\n this.selectionSetChange.emit(ids.length);\r\n }\r\n\r\n /**\r\n * Query the selectLayerView based on any user drawn geometries or buffers\r\n *\r\n * @param geometries Array of geometries used for the selection of ids from the select layer view\r\n *\r\n * @returns Promise when the selection is complete and the graphics have been highlighted\r\n */\r\n protected async _selectFeatures(\r\n geometries: __esri.Geometry[]\r\n ): Promise<void> {\r\n this._selectedIds = await queryObjectIds(\r\n geometries,\r\n this.selectLayerView.layer\r\n );\r\n // Add geometries used for selecting features as graphics\r\n this._drawTools.graphics = this.geometries.map(geom => {\r\n const props = {\r\n \"geometry\": geom,\r\n \"symbol\": geom.type === \"point\" ?\r\n this._drawTools?.pointSymbol : geom.type === \"polyline\" ?\r\n this._drawTools?.polylineSymbol : geom.type === \"polygon\" ?\r\n this._drawTools?.polygonSymbol : undefined\r\n };\r\n return new this.Graphic(props)\r\n });\r\n void this._highlightFeatures(this._selectedIds);\r\n }\r\n\r\n /**\r\n * Query the selectLayerView based on any user drawn geometries or buffers\r\n *\r\n * @param evt CustomEvent that contains the result of the buffer\r\n *\r\n * @protected\r\n */\r\n protected async _bufferComplete(\r\n evt: CustomEvent\r\n ): Promise<void> {\r\n this._bufferGeometry = Array.isArray(evt.detail) ?\r\n evt.detail[0] : evt.detail;\r\n\r\n if (this._bufferGeometry) {\r\n // Create a symbol for rendering the graphic\r\n const symbol = {\r\n type: \"simple-fill\",\r\n color: [227, 139, 79, 0.8],\r\n outline: {\r\n color: [255, 255, 255],\r\n width: 1\r\n }\r\n };\r\n\r\n // Add the geometry and symbol to a new graphic\r\n const polygonGraphic = new this.Graphic({\r\n geometry: this._bufferGeometry,\r\n symbol\r\n });\r\n\r\n this._bufferGraphicsLayer.removeAll();\r\n this._bufferGraphicsLayer.add(polygonGraphic);\r\n void this._selectFeatures([this._bufferGeometry]);\r\n void this.mapView.goTo(polygonGraphic.geometry.extent);\r\n } else {\r\n if (this._bufferGraphicsLayer) {\r\n this._bufferGraphicsLayer.removeAll();\r\n }\r\n void this._geomQuery(this.geometries);\r\n }\r\n }\r\n\r\n /**\r\n * Fetch a single geometry for each potential geometry type\r\n *\r\n * @param geometries All current selection geometries\r\n *\r\n * @protected\r\n */\r\n protected _geomQuery(\r\n geometries: __esri.Geometry[]\r\n ): Promise<void> {\r\n const queryGeoms = getQueryGeoms(geometries, this._geometryEngine);\r\n return this._selectFeatures(queryGeoms);\r\n }\r\n\r\n /**\r\n * Clear all stored values and general state for the component\r\n *\r\n * @param clearSearchWidget Optional boolean for clearing the search widget (default is true)\r\n * @param clearLabel Optional boolean for clearing the search label (default is true)\r\n *\r\n * @protected\r\n */\r\n protected async _clearResults(\r\n clearSearchWidget = true,\r\n clearLabel = true\r\n ): Promise<void> {\r\n this._selectedIds = [];\r\n\r\n if (clearLabel) {\r\n this._selectionLabel = \"\";\r\n }\r\n\r\n if (this._bufferGraphicsLayer) {\r\n this._bufferGraphicsLayer.removeAll();\r\n }\r\n\r\n if (clearSearchWidget && this._searchWidget) {\r\n this._searchWidget.clear();\r\n }\r\n\r\n state.highlightHandle?.remove();\r\n\r\n // for sketch\r\n if (this._drawTools) {\r\n void this._drawTools.clear();\r\n }\r\n this.selectionSetChange.emit(this._selectedIds.length);\r\n }\r\n\r\n /**\r\n * Fetch a single geometry for the current geometry type\r\n *\r\n * @param type worflow type\r\n * @param graphics graphics to be used for selection\r\n * @param label selection label\r\n *\r\n * @protected\r\n */\r\n protected _updateSelection(\r\n type: EWorkflowType,\r\n graphics: __esri.Graphic[],\r\n label: string\r\n ): void {\r\n this.geometries = Array.isArray(graphics) ? graphics.map(g => g.geometry) : this.geometries;\r\n this._workflowType = type;\r\n this._selectionLabel = label;\r\n }\r\n\r\n /**\r\n * Fetches the component's translations\r\n *\r\n * @protected\r\n */\r\n protected async _getTranslations(): Promise<void> {\r\n const translations = await getLocaleComponentStrings(this.el);\r\n this._translations = translations[0] as typeof MapSelectTools_T9n;\r\n }\r\n}\r\n"]}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"pdf-download.js","sourceRoot":"","sources":["../../../src/components/pdf-download/pdf-download.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAS,MAAM,eAAe,CAAC;AACxF,OAAO,KAAK,QAAQ,MAAM,qCAAqC,CAAC;AAChE,OAAO,0BAA0B,CAAC;AAElC,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAOjD,MAAM,OAAO,WAAW;;oBAiBH,IAAI;;;;EAwBvB,4EAA4E;EAC5E,EAAE;EACF,kBAAkB;EAClB,EAAE;EACF,4EAA4E;EAE5E,4EAA4E;EAC5E,EAAE;EACF,oBAAoB;EACpB,EAAE;EACF,4EAA4E;EAE5E;;;;;;KAMG;EAEH,KAAK,CAAC,WAAW,CACf,GAAa,EACb,gBAAyB;IAEzB,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;EAClD,CAAC;EAED;;;;;;KAMG;EAEH,KAAK,CAAC,WAAW,CACf,GAAa,EACb,gBAAyB;IAEzB,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;EAClD,CAAC;EAED,4EAA4E;EAC5E,EAAE;EACF,mBAAmB;EACnB,EAAE;EACF,4EAA4E;EAE5E,4EAA4E;EAC5E,EAAE;EACF,yBAAyB;EACzB,EAAE;EACF,4EAA4E;EAE5E;;KAEG;EACH,KAAK,CAAC,iBAAiB;IACrB,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;EAChC,CAAC;EAED;;KAEG;EACH,MAAM;IACJ,OAAO,CACL,EAAC,IAAI;MACH,sBACE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,KAAK,EAAC,EAAE,EACR,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAA,CAAC,CAAC,IAE3C,IAAI,CAAC,YAAY,EAAE,CACL,CACZ,CACR,CAAC;EACJ,CAAC;EAED,4EAA4E;EAC5E,EAAE;EACF,yBAAyB;EACzB,EAAE;EACF,4EAA4E;EAE5E;;;;;;KAMG;EACO,YAAY;IACpB,MAAM,CAAC,GAAQ,QAAQ,CAAC;IACxB,MAAM,aAAa,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;MACnD,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;MAC/D,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;MAC/D,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACvC,CAAC,CAAC,CAAC;IACH,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;MAC7B,OAAO,CAAC,sBAAgB,KAAK,EAAE,CAAC,IAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAkB,CAAC,CAAA;IACjF,CAAC,CAAC,CAAC;EACL,CAAC;EAED;;;;;;;;KAQG;EACO,KAAK,CAAC,YAAY,CAC1B,GAAa,EACb,gBAAyB;IAEzB,MAAM,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,KAAK,CAAC;IACtD,KAAK,CAAC,kBAAkB,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,mBAAmB,gBAAgB,KAAK,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;EAC7G,CAAC;EAED;;;;;;;;;KASG;EACO,KAAK,CAAC,YAAY,CAC1B,GAAa,EACb,gBAAyB;IAEzB,yEAAyE;IACzE,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;IAC7B,MAAM,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;EACvC,CAAC;EAED;;;;;;;KAOG;EACO,iBAAiB,CACzB,SAAc;IAEd,MAAM,IAAI,GAAG,SAAS,CAAC,cAAc,CAAC,oBAAoB,CAAC;IAC3D,MAAM,KAAK,GAAG,GAAG,SAAS,CAAC,cAAc,CAAC,iBAAiB,MAAM,SAAS,CAAC,cAAc,CAAC,kBAAkB,EAAE,CAAC;IAC/G,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;EAC5F,CAAC;EAED;;;;KAIG;EACO,KAAK,CAAC,gBAAgB;IAC9B,MAAM,YAAY,GAAG,MAAM,yBAAyB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC9D,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC,CAAC,CAA2B,CAAC;EACjE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAEF","sourcesContent":["/** @license\r\n * Copyright 2022 Esri\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n */\r\n\r\nimport { Component, Element, Host, h, Method, Prop, State, VNode } from \"@stencil/core\";\r\nimport * as pdfUtils from \"../../assets/data/labelFormats.json\";\r\nimport \"@esri/calcite-components\";\r\nimport PdfDownload_T9n from \"../../assets/t9n/pdf-download/resources.json\";\r\nimport { getLocaleComponentStrings } from \"../../utils/locale\";\r\nimport { exportCSV } from \"../../utils/csvUtils\";\r\n\r\n@Component({\r\n tag: \"pdf-download\",\r\n styleUrl: \"pdf-download.css\",\r\n shadow: true,\r\n})\r\nexport class PdfDownload {\r\n //--------------------------------------------------------------------------\r\n //\r\n // Host element access\r\n //\r\n //--------------------------------------------------------------------------\r\n @Element() el: HTMLPdfDownloadElement;\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Properties (public)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * boolean: Controls the enabled/disabled state of download\r\n */\r\n @Prop() disabled = true;\r\n\r\n /**\r\n * esri/views/layers/FeatureLayerView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html\r\n */\r\n @Prop() layerView: __esri.FeatureLayerView;\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Properties (protected)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * Contains the translations for this component.\r\n * All UI strings should be defined here.\r\n */\r\n @State() protected _translations: typeof PdfDownload_T9n;\r\n\r\n /**\r\n * HTMLCalciteSelectElement: The html element for selecting buffer unit\r\n */\r\n protected _labelInfoElement: HTMLCalciteSelectElement;\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Watch handlers\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Methods (public)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * Downloads pdf of mailing labels for the provided list of ids\r\n *\r\n * @param ids List of ids to download\r\n * @param removeDuplicates When true a single label is generated when multiple featues have a shared address value\r\n * @returns Promise resolving when function is done\r\n */\r\n @Method()\r\n async downloadPDF(\r\n ids: number[],\r\n removeDuplicates: boolean\r\n ): Promise<void> {\r\n return this._downloadPDF(ids, removeDuplicates);\r\n }\r\n\r\n /**\r\n * Downloads csv of mailing labels for the provided list of ids\r\n *\r\n * @param ids List of ids to download\r\n * @param removeDuplicates When true a single label is generated when multiple featues have a shared address value\r\n * @returns Promise resolving when function is done\r\n */\r\n @Method()\r\n async downloadCSV(\r\n ids: number[],\r\n removeDuplicates: boolean\r\n ): Promise<void> {\r\n return this._downloadCSV(ids, removeDuplicates);\r\n }\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Events (public)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Functions (lifecycle)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * StencilJS: Called once just after the component is first connected to the DOM.\r\n */\r\n async componentWillLoad(): Promise<void> {\r\n await this._getTranslations();\r\n }\r\n\r\n /**\r\n * Renders the component.\r\n */\r\n render(): VNode {\r\n return (\r\n <Host>\r\n <calcite-select\r\n disabled={this.disabled}\r\n label=\"\"\r\n ref={(el) => { this._labelInfoElement = el }}\r\n >\r\n {this._renderItems()}\r\n </calcite-select>\r\n </Host>\r\n );\r\n }\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Functions (protected)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * Renders the pdf export size options\r\n *\r\n * @returns Node array of size options\r\n *\r\n * @protected\r\n */\r\n protected _renderItems(): VNode[] {\r\n const s: any = pdfUtils;\r\n const sortedPdfIndo = (s.default || s).sort((a, b) => {\r\n const _a = parseInt(a.descriptionPDF.labelsPerPageDisplay, 10);\r\n const _b = parseInt(b.descriptionPDF.labelsPerPageDisplay, 10);\r\n return _a < _b ? -1 : _a > _b ? 1 : 0\r\n });\r\n return sortedPdfIndo.map((l) => {\r\n return (<calcite-option value={l}>{this._getLabelSizeText(l)}</calcite-option>)\r\n });\r\n }\r\n\r\n /**\r\n * Downloads pdf of mailing labels for the provided list of ids\r\n *\r\n * @param ids List of ids to download\r\n * @param removeDuplicates When true a single label is generated when multiple featues have a shared address value\r\n *\r\n * @returns Promise resolving when function is done\r\n * @protected\r\n */\r\n protected async _downloadPDF(\r\n ids: number[],\r\n removeDuplicates: boolean\r\n ): Promise<void> {\r\n const l = this._labelInfoElement.selectedOption.value;\r\n alert(`PDF download: (${this._getLabelSizeText(l)}) (remove dups: ${removeDuplicates}) ${ids.join(\", \")}`);\r\n }\r\n\r\n /**\r\n * Downloads csv of mailing labels for the provided list of ids\r\n *\r\n * @param ids List of ids to download\r\n * @param removeDuplicates When true a single label is generated when multiple featues have a shared address value\r\n * @returns Promise resolving when function is done\r\n *\r\n * @returns Promise that will resolve when the download is complete\r\n * @protected\r\n */\r\n protected async _downloadCSV(\r\n ids: number[],\r\n removeDuplicates: boolean\r\n ): Promise<void> {\r\n // TODO this will be leveraged when we do the real implementation of this\r\n console.log(removeDuplicates)\r\n await exportCSV(this.layerView, ids);\r\n }\r\n\r\n /**\r\n * Gets the formatted pdf export size text\r\n *\r\n * @param labelInfo current user selected label info\r\n *\r\n * @returns the pdf label as a string\r\n * @protected\r\n */\r\n protected _getLabelSizeText(\r\n labelInfo: any\r\n ): string {\r\n const lNum = labelInfo.descriptionPDF.labelsPerPageDisplay;\r\n const lSize = `${labelInfo.descriptionPDF.labelWidthDisplay} x ${labelInfo.descriptionPDF.labelHeightDisplay}`;\r\n return this._translations.pdfLabel.replace(\"{{n}}\", lNum).replace(\"{{labelSize}}\", lSize);\r\n }\r\n\r\n /**\r\n * Fetches the component's translations\r\n *\r\n * @protected\r\n */\r\n protected async _getTranslations(): Promise<void> {\r\n const translations = await getLocaleComponentStrings(this.el);\r\n this._translations = translations[0] as typeof PdfDownload_T9n;\r\n }\r\n\r\n}\r\n"]}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"public-notification.js","sourceRoot":"","sources":["../../../src/components/public-notification/public-notification.tsx"],"names":[],"mappings":"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","sourcesContent":["/** @license\r\n * Copyright 2022 Esri\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n */\r\n\r\nimport { Component, Element, Host, h, Listen, Prop, State, VNode, Watch } from \"@stencil/core\";\r\nimport { loadModules } from \"../../utils/loadModules\";\r\nimport { EExportType, EPageType, EWorkflowType, ISelectionSet } from \"../../utils/interfaces\";\r\nimport { goToSelection, getMapLayerView, highlightFeatures } from \"../../utils/mapViewUtils\";\r\nimport { getSelectionSetQuery } from \"../../utils/queryUtils\";\r\nimport state from \"../../utils/publicNotificationStore\";\r\nimport NewPublicNotification_T9n from \"../../assets/t9n/public-notification/resources.json\";\r\nimport { getLocaleComponentStrings } from \"../../utils/locale\";\r\nimport * as utils from \"../../utils/publicNotificationUtils\";\r\n\r\n@Component({\r\n tag: \"public-notification\",\r\n styleUrl: \"public-notification.css\",\r\n shadow: false,\r\n})\r\nexport class PublicNotification {\r\n //--------------------------------------------------------------------------\r\n //\r\n // Host element access\r\n //\r\n //--------------------------------------------------------------------------\r\n @Element() el: HTMLPublicNotificationElement;\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Properties (public)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * esri/views/layers/FeatureLayerView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html\r\n */\r\n @Prop() addresseeLayer: __esri.FeatureLayerView;\r\n\r\n /**\r\n * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html\r\n */\r\n @Prop() mapView: __esri.MapView;\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Properties (protected)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * boolean: Enabled when we have 1 or more selection sets that is enabled in the download pages.\r\n * By default all selection sets are enabled for download when they are first created.\r\n */\r\n @State() _downloadActive = true;\r\n\r\n /**\r\n * number: The number of selected features\r\n */\r\n @State() _numSelected = 0;\r\n\r\n /**\r\n * utils/interfaces/EPageType: LIST | SELECT | REFINE | PDF | CSV\r\n */\r\n @State() _pageType: EPageType = EPageType.LIST;\r\n\r\n /**\r\n * boolean: Save is enabled when we have 1 or more selected features\r\n */\r\n @State() _saveEnabled = false;\r\n\r\n /**\r\n * utils/interfaces/ISelectionSet: An array of user defined selection sets\r\n */\r\n @State() _selectionSets: ISelectionSet[] = [];\r\n\r\n /**\r\n * utils/interfaces/EWorkflowType: SEARCH | SELECT | SKETCH\r\n */\r\n @State() _selectionWorkflowType = EWorkflowType.SEARCH;\r\n\r\n /**\r\n * Contains the translations for this component.\r\n * All UI strings should be defined here.\r\n */\r\n @State() protected _translations: typeof NewPublicNotification_T9n;\r\n\r\n /**\r\n * ISelectionSet: The current active selection set\r\n */\r\n protected _activeSelection: ISelectionSet;\r\n\r\n /**\r\n * HTMLPdfDownloadElement: The pdf tools element\r\n */\r\n protected _downloadTools: HTMLPdfDownloadElement;\r\n\r\n /**\r\n * esri/geometry/geometryEngine: https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngine.html\r\n */\r\n protected _geometryEngine: __esri.geometryEngine;\r\n\r\n /**\r\n * HTMLCalciteCheckboxElement: The remove duplicates checkbox element\r\n */\r\n protected _removeDuplicates: HTMLCalciteCheckboxElement;\r\n\r\n /**\r\n * HTMLMapSelectToolsElement: The select tools element\r\n */\r\n protected _selectTools: HTMLMapSelectToolsElement;\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Watch handlers\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * Called each time the selectionSets prop is changed.\r\n */\r\n @Watch(\"_selectionSets\")\r\n async selectionSetsWatchHandler(\r\n v: ISelectionSet[],\r\n oldV: ISelectionSet[]\r\n ): Promise<void> {\r\n if (v && v !== oldV && v.length > 0) {\r\n const nonRefineSets = v.filter(ss => ss.workflowType !== EWorkflowType.REFINE)\r\n if (nonRefineSets.length === 0) {\r\n this._selectionSets = [];\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Called each time the pageType prop is changed.\r\n */\r\n @Watch(\"_pageType\")\r\n async pageTypeWatchHandler(\r\n pageType: EPageType,\r\n oldPageType: EPageType\r\n ): Promise<void> {\r\n this._clearHighlight();\r\n\r\n if (oldPageType === EPageType.SELECT || oldPageType === EPageType.REFINE) {\r\n // clear any draw shapes or buffers\r\n await this._clearSelection()\r\n }\r\n\r\n if (pageType !== EPageType.SELECT) {\r\n return this._highlightFeatures();\r\n }\r\n }\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Methods (public)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Events (public)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * Handle changes to the selection sets\r\n */\r\n @Listen(\"selectionSetsChanged\", { target: \"window\" })\r\n selectionSetsChanged(event: CustomEvent): void {\r\n this._selectionSets = [...event.detail];\r\n }\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Functions (lifecycle)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * StencilJS: Called once just after the component is first connected to the DOM.\r\n */\r\n async componentWillLoad(): Promise<void> {\r\n await this._getTranslations();\r\n await this._initModules();\r\n }\r\n\r\n /**\r\n * Renders the component.\r\n */\r\n render():void {\r\n const hasSelections = this._selectionSets.length > 0;\r\n return (\r\n <Host>\r\n <calcite-shell>\r\n <calcite-action-bar class=\"border-bottom-1 action-bar-size\" expand-disabled layout=\"horizontal\" slot=\"header\">\r\n {this._getActionGroup(\"list-check\", false, EPageType.LIST, this._translations?.myLists)}\r\n {this._getActionGroup(\"test-data\", !hasSelections, EPageType.REFINE, this._translations?.refineSelection)}\r\n {this._getActionGroup(\"file-pdf\", !hasSelections, EPageType.PDF, this._translations?.downloadPDF)}\r\n {this._getActionGroup(\"file-csv\", !hasSelections, EPageType.CSV, this._translations?.downloadCSV)}\r\n </calcite-action-bar>\r\n {this._getPage(this._pageType)}\r\n </calcite-shell>\r\n </Host>\r\n );\r\n }\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Functions (protected)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * Load esri javascript api modules\r\n *\r\n * @returns Promise resolving when function is done\r\n *\r\n * @protected\r\n */\r\n protected async _initModules(): Promise<void> {\r\n const [geometryEngine]: [\r\n __esri.geometryEngine\r\n ] = await loadModules([\r\n \"esri/geometry/geometryEngine\"\r\n ]);\r\n this._geometryEngine = geometryEngine;\r\n }\r\n\r\n /**\r\n * Get a calcite action group for the current action\r\n *\r\n * @param icon the icon to display for the current action\r\n * @param disabled should the action be disabled\r\n * @param pageType what page type will the action navigate to\r\n * @param tip information tip to display helpful details to end user\r\n *\r\n * @protected\r\n */\r\n protected _getActionGroup(\r\n icon: string,\r\n disabled: boolean,\r\n pageType: EPageType,\r\n tip: string\r\n ): VNode {\r\n return (\r\n <calcite-action-group class={\"action-center w-1-4\"} layout=\"horizontal\">\r\n <calcite-action\r\n active={this._pageType === pageType}\r\n alignment=\"center\"\r\n class=\"width-full height-full\"\r\n compact={false}\r\n disabled={disabled}\r\n icon={icon}\r\n id={icon}\r\n onClick={() => { this._setPageType(pageType) }}\r\n text=\"\"\r\n />\r\n <calcite-tooltip label=\"\" placement=\"bottom\" reference-element={icon}>\r\n <span>{tip}</span>\r\n </calcite-tooltip>\r\n </calcite-action-group>\r\n );\r\n }\r\n\r\n /**\r\n * Navigate to the defined page type\r\n *\r\n * @param pageType what page type will the action navigate to\r\n *\r\n * @protected\r\n */\r\n protected _setPageType(\r\n pageType: EPageType\r\n ): void {\r\n this._pageType = pageType;\r\n }\r\n\r\n /**\r\n * Navigate to the defined page type\r\n *\r\n * @param pageType what page type will the action navigate to\r\n *\r\n * @returns the page node\r\n * @protected\r\n */\r\n _getPage(\r\n pageType: EPageType\r\n ): VNode {\r\n let page: VNode;\r\n switch (pageType) {\r\n case EPageType.LIST:\r\n page = this._getListPage();\r\n break;\r\n\r\n case EPageType.SELECT:\r\n page = this._getSelectPage();\r\n break;\r\n\r\n case EPageType.REFINE:\r\n page = this._getRefinePage();\r\n break;\r\n\r\n case EPageType.PDF:\r\n page = this._getPDFPage();\r\n break;\r\n\r\n case EPageType.CSV:\r\n page = this._getCSVPage();\r\n break;\r\n\r\n }\r\n return page;\r\n }\r\n\r\n /**\r\n * Create the List page that shows as the initial home screen\r\n * This page is also used to show and selection sets that have been created\r\n *\r\n * @returns the page node\r\n * @protected\r\n */\r\n protected _getListPage(): VNode {\r\n const hasSets = this._selectionSets.filter(ss => ss.workflowType !== EWorkflowType.REFINE).length > 0;\r\n const total = utils.getTotal(this._selectionSets);\r\n return hasSets ? (\r\n <calcite-panel>\r\n <div class=\"padding-top-sides-1\">\r\n <calcite-label class=\"font-bold\">{this._translations?.myLists}</calcite-label>\r\n </div>\r\n {this._getNotice(this._translations?.listHasSetsTip, \"padding-sides-1 padding-bottom-1\")}\r\n <div class=\"display-flex padding-sides-1\">\r\n <calcite-label class=\"font-bold width-full\">{this._translations?.addresseeLayer}\r\n <map-layer-picker\r\n mapView={this.mapView}\r\n onLayerSelectionChange={(evt) => this._layerSelectionChange(evt)}\r\n selectedLayers={this.addresseeLayer ? [this.addresseeLayer?.layer.title] : []}\r\n selectionMode={\"single\"}\r\n />\r\n </calcite-label>\r\n </div>\r\n <div class=\"padding-sides-1 height-1-1-2\">\r\n <div class=\"position-left\">\r\n <calcite-label alignment=\"start\" class=\"font-bold\">{this._translations?.notifications}</calcite-label>\r\n </div>\r\n <div class=\"position-right\">\r\n <calcite-input-message active class=\"info-blue margin-top-0\" scale=\"m\">{this._translations?.uniqueCout.replace(\"{{n}}\", total.toString())}</calcite-input-message>\r\n </div>\r\n </div>\r\n {\r\n hasSets ? this._getSelectionSetList() : (\r\n <div class=\"info-message\">\r\n <calcite-input-message active class=\"info-blue\" scale=\"m\">{this._translations?.noNotifications}</calcite-input-message>\r\n </div>\r\n )\r\n }\r\n <div class=\"display-flex padding-1\">\r\n <calcite-button onClick={() => { this._setPageType(EPageType.SELECT) }} width=\"full\">{this._translations?.add}</calcite-button>\r\n </div>\r\n </calcite-panel>\r\n ) : (\r\n <calcite-panel>\r\n <div class=\"padding-top-sides-1\">\r\n <calcite-label class=\"font-bold\">{this._translations?.myLists}</calcite-label>\r\n </div>\r\n <div class=\"padding-sides-1\">\r\n <calcite-label>{this._translations?.notifications}</calcite-label>\r\n </div>\r\n <div class=\"info-message padding-bottom-1\">\r\n <calcite-input-message active class=\"info-blue\" scale=\"m\">{this._translations?.noNotifications}</calcite-input-message>\r\n </div>\r\n {this._getNotice(this._translations?.selectLayerAndAdd, \"padding-sides-1 padding-bottom-1\")}\r\n <div class=\"display-flex padding-sides-1\">\r\n <calcite-label class=\"font-bold width-full\">{this._translations?.addresseeLayer}\r\n <map-layer-picker\r\n mapView={this.mapView}\r\n onLayerSelectionChange={(evt) => this._layerSelectionChange(evt)}\r\n selectedLayers={this.addresseeLayer ? [this.addresseeLayer?.layer.title] : []}\r\n selectionMode={\"single\"}\r\n />\r\n </calcite-label>\r\n </div>\r\n <div class=\"display-flex padding-1\">\r\n <calcite-button onClick={() => { this._setPageType(EPageType.SELECT) }} width=\"full\">{this._translations?.add}</calcite-button>\r\n </div>\r\n </calcite-panel>\r\n );\r\n }\r\n\r\n /**\r\n * Create the selection sets list node for the List page\r\n *\r\n * @returns selection sets list node\r\n * @protected\r\n */\r\n protected _getSelectionSetList(): VNode {\r\n return (\r\n <calcite-list class=\"list-border margin-sides-1\">\r\n {\r\n // REFINE is handled seperately from the core selection sets\r\n // You can only access after clicking the refine action\r\n this._selectionSets.reduce((prev, cur, i) => {\r\n if (cur.workflowType !== EWorkflowType.REFINE) {\r\n prev.push((\r\n <calcite-list-item\r\n description={this._translations.selectedFeatures.replace(\"{{n}}\", cur.selectedIds.length.toString())}\r\n label={cur.label}\r\n onClick={() => goToSelection(cur.selectedIds, cur.layerView, this.mapView)}\r\n >\r\n {this._getAction(true, \"pencil\", \"\", (evt): void => this._openSelection(cur, evt), false, \"actions-end\")}\r\n {this._getAction(true, \"x\", \"\", (evt): Promise<void> => this._deleteSelection(i, evt), false, \"actions-end\")}\r\n </calcite-list-item>\r\n ));\r\n }\r\n return prev;\r\n }, [])\r\n }\r\n </calcite-list>\r\n );\r\n }\r\n\r\n /**\r\n * Create the Select page that shows the selection workflows\r\n *\r\n * @returns the page node\r\n * @protected\r\n */\r\n protected _getSelectPage(): VNode {\r\n const searchTip = `${this._translations?.selectSearchTip} ${this._translations?.optionalSearchDistance}`;\r\n const selectTip = `${this._translations?.selectLayerTip} ${this._translations?.optionalSearchDistance}`;\r\n const sketchTip = `${this._translations?.selectSketchTip} ${this._translations?.optionalSearchDistance}`;\r\n\r\n const noticeText = this._selectionWorkflowType === EWorkflowType.SELECT ? selectTip :\r\n this._selectionWorkflowType === EWorkflowType.SKETCH ? sketchTip : searchTip;\r\n\r\n return (\r\n <calcite-panel>\r\n {this._getLabel(this._translations?.stepTwoFull, true)}\r\n {this._getNotice(noticeText)}\r\n <div class={\"padding-1\"}>\r\n <map-select-tools\r\n class=\"font-bold\"\r\n isUpdate={!!this._activeSelection}\r\n mapView={this.mapView}\r\n onSelectionSetChange={(evt) => this._updateForSelection(evt)}\r\n onWorkflowTypeChange={(evt) => this._updateForWorkflowType(evt)}\r\n ref={(el) => { this._selectTools = el }}\r\n selectLayerView={this.addresseeLayer}\r\n selectionSet={this._activeSelection}\r\n />\r\n </div>\r\n <div class=\"padding-sides-1 padding-bottom-1\" style={{ \"align-items\": \"end\", \"display\": \"flex\" }}>\r\n <calcite-icon class=\"info-blue padding-end-1-2\" icon=\"feature-layer\" scale=\"s\" />\r\n <calcite-input-message active class=\"info-blue\" scale=\"m\">\r\n {this._translations?.selectedAddresses.replace(\"{{n}}\", this._numSelected.toString())}\r\n </calcite-input-message>\r\n </div>\r\n {\r\n this._getPageNavButtons(\r\n this._translations?.done,\r\n this._numSelected === 0,\r\n (): void => { void this._saveSelection() },\r\n this._translations?.cancel,\r\n false,\r\n (): void => { void this._home() }\r\n )\r\n }\r\n </calcite-panel>\r\n );\r\n }\r\n\r\n /**\r\n * Create the Refine page that users can interactively add/remove features from existing selection sets\r\n *\r\n * @returns the page node\r\n * @protected\r\n */\r\n protected _getRefinePage(): VNode {\r\n return (\r\n <calcite-panel>\r\n {this._getLabel(this._translations?.refineSelection)}\r\n {this._getNotice(this._translations?.refineTip, \"padding-sides-1\")}\r\n <refine-selection\r\n addresseeLayer={this.addresseeLayer}\r\n mapView={this.mapView}\r\n selectionSets={this._selectionSets}\r\n />\r\n </calcite-panel>\r\n );\r\n }\r\n\r\n /**\r\n * Create the PDF download page that shows the download options\r\n *\r\n * @returns the page node\r\n * @protected\r\n */\r\n protected _getPDFPage(): VNode {\r\n return this._getDownloadPage(EExportType.PDF);\r\n }\r\n\r\n /**\r\n * Create the CSV download page that shows the download options\r\n *\r\n * @returns the page node\r\n * @protected\r\n */\r\n protected _getCSVPage(): VNode {\r\n return this._getDownloadPage(EExportType.CSV);\r\n }\r\n\r\n /**\r\n * Create the main download page that has the shared aspects of both PDF and CSV\r\n * But only show the current PDF or CSV page content\r\n *\r\n * @param type EExportType of the current type expected\r\n *\r\n * @returns the page node\r\n * @protected\r\n */\r\n protected _getDownloadPage(\r\n type: EExportType\r\n ): VNode {\r\n const isPdf = type === EExportType.PDF;\r\n return (\r\n <calcite-panel>\r\n <div>\r\n <div class=\"padding-top-sides-1\">\r\n <calcite-label class=\"font-bold\">\r\n {isPdf ? this._translations?.pdfDownloads : this._translations?.csvDownloads}\r\n </calcite-label>\r\n <calcite-label>{this._translations?.notifications}</calcite-label>\r\n </div>\r\n {this._getSelectionLists()}\r\n <div class=\"margin-side-1 padding-top-1 border-bottom\" />\r\n <div class=\"padding-top-sides-1\">\r\n <calcite-label disabled={!this._downloadActive} layout=\"inline\">\r\n <calcite-checkbox disabled={!this._downloadActive} ref={(el) => { this._removeDuplicates = el }} />\r\n {this._translations?.removeDuplicate}\r\n </calcite-label>\r\n </div>\r\n <div class={isPdf ? \"\" : \"display-none\"}>\r\n {this._getLabel(this._translations?.selectPDFLabelOption, false, !this._downloadActive)}\r\n <div class={\"padding-sides-1\"}>\r\n <pdf-download\r\n disabled={!this._downloadActive}\r\n layerView={this.addresseeLayer}\r\n ref={(el) => { this._downloadTools = el }}\r\n />\r\n </div>\r\n </div>\r\n <div class=\"padding-1 display-flex\">\r\n <calcite-button\r\n disabled={!this._downloadActive}\r\n onClick={isPdf ? () => this._downloadPDF() : () => this._downloadCSV()}\r\n width=\"full\"\r\n >\r\n {isPdf ? this._translations?.downloadPDF : this._translations?.downloadCSV}\r\n </calcite-button>\r\n </div>\r\n </div>\r\n </calcite-panel>\r\n );\r\n }\r\n\r\n /**\r\n * Create the stacked navigation buttons for a page\r\n *\r\n * @param topLabel the label to use for the button on top\r\n * @param topDisabled should the button be disabled\r\n * @param topFunc the fucntion to execute when the button is clicked\r\n * @param bottomLabel the label to use for the button on bottom\r\n * @param bottomDisabled should the button be disabled\r\n * @param bottomFunc the fucntion to execute when the button is clicked\r\n *\r\n * @returns the page node\r\n * @protected\r\n */\r\n protected _getPageNavButtons(\r\n topLabel: string,\r\n topDisabled: boolean,\r\n topFunc: () => void,\r\n bottomLabel: string,\r\n bottomDisabled: boolean,\r\n bottomFunc: () => void\r\n ): VNode {\r\n return (\r\n <div>\r\n <div class=\"display-flex padding-top-sides-1\">\r\n <calcite-button\r\n disabled={topDisabled}\r\n onClick={topFunc}\r\n width=\"full\"\r\n >\r\n {topLabel}\r\n </calcite-button>\r\n </div>\r\n <div class=\"display-flex padding-top-1-2 padding-sides-1\">\r\n <calcite-button\r\n appearance=\"outline\"\r\n disabled={bottomDisabled}\r\n onClick={bottomFunc}\r\n width=\"full\"\r\n >\r\n {bottomLabel}\r\n </calcite-button>\r\n </div>\r\n </div>\r\n )\r\n }\r\n\r\n /**\r\n * Create an informational notice\r\n *\r\n * @param message the message to display in the notice\r\n * @param noticeClass any custom css for the notice (default is \"padding-1\")\r\n *\r\n * @returns the notice node\r\n * @protected\r\n */\r\n protected _getNotice(\r\n message: string,\r\n noticeClass = \"padding-1\"\r\n ): VNode {\r\n return (\r\n <calcite-notice active class={noticeClass} color=\"green\" icon=\"lightbulb\">\r\n <div slot=\"message\">{message}</div>\r\n </calcite-notice>\r\n );\r\n }\r\n\r\n /**\r\n * Create a calcite label\r\n *\r\n * @param label value to display in the label\r\n * @param disableSpacing should extra calcite defined spacing be applied\r\n * @param disabled should the label be disabled\r\n *\r\n * @returns the label node\r\n * @protected\r\n */\r\n protected _getLabel(\r\n label: string,\r\n disableSpacing = false,\r\n disabled = false\r\n ): VNode {\r\n return (\r\n <div class=\"padding-top-sides-1\">\r\n <calcite-label\r\n class=\"font-bold\"\r\n disable-spacing={disableSpacing}\r\n disabled={disabled}\r\n >\r\n {label}\r\n </calcite-label>\r\n </div>\r\n );\r\n }\r\n\r\n /**\r\n * Get selection set list node with checkbox for Download pages\r\n *\r\n * @returns the list node\r\n * @protected\r\n */\r\n protected _getSelectionLists(): VNode {\r\n return this._selectionSets.reduce((prev, cur) => {\r\n if (cur.workflowType !== EWorkflowType.REFINE) {\r\n if (!this._downloadActive && cur.download) {\r\n this._downloadActive = true;\r\n }\r\n prev.push((\r\n <div class=\"display-flex padding-sides-1 padding-bottom-1\">\r\n <calcite-checkbox checked={cur.download} onClick={() => { void this._toggleDownload(cur.id) }} />\r\n <calcite-list class=\"list-border margin-start-1-2 w-100\" id=\"download-list\">\r\n <calcite-list-item\r\n description={this._translations.selectedFeatures.replace(\"{{n}}\", cur.selectedIds.length.toString())}\r\n disabled={!cur.download}\r\n label={cur.label}\r\n onClick={() => { void this._toggleDownload(cur.id) }}\r\n />\r\n </calcite-list>\r\n </div>\r\n ));\r\n }\r\n return prev;\r\n }, []) || (<div />);\r\n }\r\n\r\n /**\r\n * Toggle the disabled state for the download options based on user selection\r\n *\r\n * @param id the selection set id to toggle\r\n *\r\n * @protected\r\n */\r\n protected async _toggleDownload(\r\n id: number\r\n ): Promise<void> {\r\n let isActive = false;\r\n this._selectionSets = this._selectionSets.map(ss => {\r\n ss.download = ss.id === id ? !ss.download : ss.download;\r\n isActive = ss.download ? true : isActive;\r\n return ss;\r\n });\r\n this._downloadActive = isActive;\r\n await this._highlightFeatures();\r\n }\r\n\r\n /**\r\n * Download all selection sets as PDF\r\n *\r\n * @protected\r\n */\r\n protected _downloadPDF(): Promise<void> {\r\n const ids = utils.getSelectionIds(this._getDownloadSelectionSets());\r\n return this._downloadTools.downloadPDF(ids, this._removeDuplicates.checked);\r\n }\r\n\r\n /**\r\n * Download all selection sets as CSV\r\n *\r\n * @protected\r\n */\r\n protected _downloadCSV(): Promise<void> {\r\n const ids = utils.getSelectionIds(this._getDownloadSelectionSets());\r\n return this._downloadTools.downloadCSV(ids, this._removeDuplicates.checked);\r\n }\r\n\r\n /**\r\n * Get all enabled selection sets\r\n *\r\n * @returns the selection sets\r\n * @protected\r\n */\r\n protected _getDownloadSelectionSets(): ISelectionSet[] {\r\n return this._selectionSets.filter(ss => {\r\n return ss.download || ss.workflowType === EWorkflowType.REFINE;\r\n });\r\n }\r\n\r\n /**\r\n * Store the current workflow type\r\n *\r\n * @protected\r\n */\r\n protected _updateForWorkflowType(\r\n evt: CustomEvent\r\n ): void {\r\n this._selectionWorkflowType = evt.detail;\r\n }\r\n\r\n /**\r\n * Create a calcite action\r\n *\r\n * @param enabled controls the enabled state of the control\r\n * @param icon the image to display in the action\r\n * @param text and supporting text for the action\r\n * @param onClick the fucntion the actio will execute\r\n * @param indicator boolean to control if an indicator should be shown (default is false)\r\n * @param slot the supporting slot to use\r\n *\r\n * @returns the calcite action node\r\n * @protected\r\n */\r\n protected _getAction(\r\n enabled: boolean,\r\n icon: string,\r\n text: string,\r\n onClick: any,\r\n indicator = false,\r\n slot = \"\"\r\n ): VNode {\r\n return (\r\n <calcite-action\r\n disabled={!enabled}\r\n icon={icon}\r\n indicator={indicator}\r\n onClick={onClick}\r\n slot={slot}\r\n text={text} />\r\n );\r\n }\r\n\r\n /**\r\n * Store the number of selected features and if it's more than one enable save\r\n *\r\n * @returns the page node\r\n * @protected\r\n */\r\n protected _updateForSelection(evt: CustomEvent): void {\r\n this._numSelected = evt.detail;\r\n this._saveEnabled = this._numSelected > 0;\r\n }\r\n\r\n /**\r\n * Clear the selection and navigate to the home page\r\n *\r\n * @returns Promise when the function has completed\r\n * @protected\r\n */\r\n protected async _home(): Promise<void> {\r\n await this._clearSelection();\r\n this._setPageType(EPageType.LIST);\r\n }\r\n\r\n /**\r\n * Fetch the layer defined in the selection change event\r\n *\r\n * @returns Promise when the function has completed\r\n * @protected\r\n */\r\n protected async _layerSelectionChange(\r\n evt: CustomEvent\r\n ): Promise<void> {\r\n const title: string = evt?.detail?.length > 0 ? evt.detail[0] : \"\";\r\n if (title !== this.addresseeLayer?.layer.title) {\r\n this.addresseeLayer = await getMapLayerView(this.mapView, title);\r\n await this._updateSelectionSets(this.addresseeLayer);\r\n }\r\n }\r\n\r\n /**\r\n * Update selection sets when the addressee layer changes.\r\n * Will remove any \"refine\" selection set.\r\n * Will use stored search, select, and sketch geometries and any buffers to select from the new addressee layer.\r\n *\r\n * @param layerView The new addressee layer view to select from\r\n *\r\n * @returns Promise when the function has completed\r\n * @protected\r\n */\r\n protected async _updateSelectionSets(\r\n layerView: __esri.FeatureLayerView\r\n ): Promise<void> {\r\n const _selectionSets = this._selectionSets.filter(\r\n selectionSet => selectionSet.workflowType !== EWorkflowType.REFINE\r\n );\r\n const oidDefs = [];\r\n _selectionSets.forEach(selectionSet => {\r\n selectionSet.layerView = layerView;\r\n selectionSet.selectedIds = [];\r\n oidDefs.push(getSelectionSetQuery(selectionSet, this._geometryEngine));\r\n });\r\n\r\n return Promise.all(oidDefs).then(async (results): Promise<void> => {\r\n results.forEach((result, i) => {\r\n _selectionSets[i].selectedIds = result;\r\n });\r\n await this._highlightFeatures();\r\n this._selectionSets = [\r\n ..._selectionSets\r\n ];\r\n });\r\n }\r\n\r\n /**\r\n * Update the selection sets with any new selections from the select tools\r\n *\r\n * @returns Promise when the function has completed\r\n * @protected\r\n */\r\n protected async _saveSelection(): Promise<void> {\r\n const results = await this._selectTools?.getSelection();\r\n const isUpdate = this._selectTools?.isUpdate;\r\n\r\n this._selectionSets = isUpdate ? this._selectionSets.map(ss => {\r\n return ss.id === results.id ? results : ss;\r\n }) : [\r\n ...this._selectionSets,\r\n results\r\n ];\r\n return this._home();\r\n }\r\n\r\n /**\r\n * Clear any selections\r\n *\r\n * @returns Promise when the function has completed\r\n * @protected\r\n */\r\n protected async _clearSelection(): Promise<void> {\r\n await this._selectTools?.clearSelection();\r\n this._numSelected = 0;\r\n this._activeSelection = undefined;\r\n }\r\n\r\n /**\r\n * Delete the selection at the defined index\r\n *\r\n * @param index number that defines what selection set to delete\r\n *\r\n * @protected\r\n */\r\n protected _deleteSelection(\r\n index: number,\r\n evt: CustomEvent\r\n ): Promise<void> {\r\n evt.stopPropagation();\r\n this._selectionSets = this._selectionSets.filter((ss, i) => {\r\n if (i !== index) {\r\n return ss;\r\n }\r\n });\r\n return this._highlightFeatures();\r\n }\r\n\r\n /**\r\n * Open the selection set for further adjustment\r\n *\r\n * @protected\r\n */\r\n protected _openSelection(\r\n selectionSet: ISelectionSet,\r\n evt: CustomEvent\r\n ): void {\r\n evt.stopPropagation();\r\n this._activeSelection = selectionSet;\r\n this._pageType = EPageType.SELECT;\r\n }\r\n\r\n /**\r\n * Highlight any selected features in the map\r\n *\r\n * @protected\r\n */\r\n protected async _highlightFeatures(): Promise<void> {\r\n this._clearHighlight();\r\n const ids = utils.getSelectionIds(this._selectionSets);\r\n if (ids.length > 0) {\r\n state.highlightHandle = await highlightFeatures(\r\n ids,\r\n this.addresseeLayer,\r\n this.mapView\r\n );\r\n }\r\n }\r\n\r\n /**\r\n * Clear any highlighted features in the map\r\n *\r\n * @protected\r\n */\r\n protected _clearHighlight(): void {\r\n state.highlightHandle?.remove();\r\n }\r\n\r\n /**\r\n * Fetches the component's translations\r\n *\r\n * @protected\r\n */\r\n protected async _getTranslations(): Promise<void> {\r\n const translations = await getLocaleComponentStrings(this.el);\r\n this._translations = translations[0] as typeof NewPublicNotification_T9n;\r\n }\r\n}\r\n"]}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"refine-selection.js","sourceRoot":"","sources":["../../../src/components/refine-selection/refine-selection.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, Host, h, Listen, Prop, State, VNode } from \"@stencil/core\";\r\nimport { ESelectionMode, EWorkflowType, ISelectionSet } from \"../../utils/interfaces\";\r\nimport * as utils from \"../../utils/publicNotificationUtils\";\r\nimport RefineSelection_T9n from \"../../assets/t9n/refine-selection/resources.json\";\r\nimport { getLocaleComponentStrings } from \"../../utils/locale\";\r\n\r\n@Component({\r\n tag: \"refine-selection\",\r\n styleUrl: \"refine-selection.css\",\r\n shadow: false,\r\n})\r\nexport class RefineSelection {\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Host element access\r\n //\r\n //--------------------------------------------------------------------------\r\n @Element() el: HTMLRefineSelectionToolsElement;\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Properties (public)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * esri/views/layers/FeatureLayerView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html\r\n */\r\n @Prop() addresseeLayer: __esri.FeatureLayerView;\r\n\r\n /**\r\n * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html\r\n */\r\n @Prop() mapView: __esri.MapView;\r\n\r\n /**\r\n * utils/interfaces/ISelectionSet: An array of user defined selection sets\r\n */\r\n @Prop() selectionSets: ISelectionSet[] = [];\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Properties (protected)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * Contains the translations for this component.\r\n * All UI strings should be defined here.\r\n */\r\n @State() protected _translations: typeof RefineSelection_T9n;\r\n\r\n /**\r\n * boolean: Indicates if any new graphics should be added or removed\r\n */\r\n protected _addEnabled = true;\r\n\r\n /**\r\n * HTMLRefineSelectionToolsElement: The html element for the refine selection tools\r\n */\r\n protected _refineTools: HTMLRefineSelectionToolsElement;\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Watch handlers\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Methods (public)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Events (public)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * Emitted on demand when selection sets change.\r\n *\r\n */\r\n @Event() selectionSetsChanged: EventEmitter<ISelectionSet[]>;\r\n\r\n /**\r\n * Handles changes to refine selection ids.\r\n *\r\n */\r\n @Listen(\"refineSelectionIdsChange\", { target: \"window\" })\r\n refineSelectionIdsChange(event: CustomEvent): void {\r\n const addIds = event.detail?.addIds || [];\r\n const removeIds = event.detail?.removeIds || [];\r\n\r\n this._updateSelectionSets(removeIds);\r\n this._updateRefineSelectionSet(addIds, removeIds);\r\n }\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Functions (lifecycle)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * StencilJS: Called once just after the component is first connected to the DOM.\r\n */\r\n async componentWillLoad(): Promise<void> {\r\n await this._getTranslations();\r\n }\r\n\r\n /**\r\n * Renders the component.\r\n */\r\n render(): VNode {\r\n return (\r\n <Host>\r\n <div class=\"padding-1\">\r\n <div>\r\n <calcite-radio-group\r\n class=\"w-100\"\r\n onCalciteRadioGroupChange={(evt) => this._modeChanged(evt)}\r\n >\r\n <calcite-radio-group-item\r\n checked={this._addEnabled}\r\n class=\"w-50\"\r\n onClick={() => this._setSelectionMode(ESelectionMode.ADD)}\r\n value={ESelectionMode.ADD}\r\n >\r\n {this._translations.add}\r\n </calcite-radio-group-item>\r\n <calcite-radio-group-item\r\n checked={!this._addEnabled}\r\n class=\"w-50\"\r\n onClick={() => this._setSelectionMode(ESelectionMode.REMOVE)}\r\n value={ESelectionMode.REMOVE}\r\n >\r\n {this._translations.remove}\r\n </calcite-radio-group-item>\r\n </calcite-radio-group>\r\n <refine-selection-tools\r\n border={true}\r\n ids={utils.getSelectionIds(this.selectionSets)}\r\n layerViews={[this.addresseeLayer]}\r\n mapView={this.mapView}\r\n mode={this._addEnabled ? ESelectionMode.ADD : ESelectionMode.REMOVE}\r\n ref={(el) => { this._refineTools = el }}\r\n useLayerPicker={false}\r\n />\r\n </div>\r\n <br />\r\n {\r\n (\r\n <calcite-list class=\"list-border\">\r\n {this._getRefineSelectionSetList()}\r\n </calcite-list>\r\n )\r\n }\r\n </div>\r\n </Host>\r\n );\r\n }\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Functions (protected)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * Store the Add/Remove mode\r\n *\r\n * @protected\r\n */\r\n protected _modeChanged(\r\n evt: CustomEvent\r\n ): void {\r\n this._addEnabled = evt.detail === ESelectionMode.ADD;\r\n }\r\n\r\n /**\r\n * Set the refine tools selection mode\r\n *\r\n * @protected\r\n */\r\n protected _setSelectionMode(\r\n mode: ESelectionMode\r\n ): void {\r\n this._refineTools.mode = mode;\r\n }\r\n\r\n /**\r\n * Create a list to show the number added/removed/total unique selected\r\n *\r\n * @returns the list node\r\n * @protected\r\n */\r\n protected _getRefineSelectionSetList(): VNode[] {\r\n const total = utils.getTotal(this.selectionSets);\r\n const refineSet = this._getRefineSelectionSet(this.selectionSets);\r\n const numAdded = refineSet?.refineIds.addIds.length || 0;\r\n const numRemoved = refineSet?.refineIds.removeIds.length || 0;\r\n\r\n return [(\r\n <calcite-list-item\r\n label={this._translations.featuresAdded?.replace(\"{{n}}\", numAdded.toString())}\r\n />\r\n ),(\r\n <calcite-list-item\r\n label={this._translations.featuresRemoved?.replace(\"{{n}}\", numRemoved.toString())}\r\n />\r\n ), (\r\n <calcite-list-item\r\n label={this._translations.totalSelected?.replace(\"{{n}}\", total.toString())}\r\n />\r\n )];\r\n }\r\n\r\n /**\r\n * Fetch the refine selection set\r\n *\r\n * @returns the refine selection set\r\n * @protected\r\n */\r\n protected _getRefineSelectionSet(\r\n selectionSets: ISelectionSet[]\r\n ): ISelectionSet {\r\n let refineSelectionSet: ISelectionSet;\r\n selectionSets.some(ss => {\r\n if (ss.workflowType === EWorkflowType.REFINE) {\r\n refineSelectionSet = ss;\r\n return true;\r\n }\r\n });\r\n return refineSelectionSet;\r\n }\r\n\r\n /**\r\n * Create a calcite action\r\n *\r\n * @param enabled controls the enabled state of the control\r\n * @param icon the image to display in the action\r\n * @param text and supporting text for the action\r\n * @param onClick the fucntion the actio will execute\r\n * @param indicator boolean to control if an indicator should be shown (default is false)\r\n * @param slot the supporting slot to use\r\n *\r\n * @returns the calcite action node\r\n * @protected\r\n */\r\n protected _getAction(\r\n enabled: boolean,\r\n icon: string,\r\n text: string,\r\n onClick: any,\r\n indicator = false,\r\n slot = \"\"\r\n ): VNode {\r\n return (\r\n <calcite-action\r\n disabled={!enabled}\r\n icon={icon}\r\n indicator={indicator}\r\n onClick={onClick}\r\n slot={slot}\r\n text={text} />\r\n );\r\n }\r\n\r\n /**\r\n * Remove ids from existing selection sets.\r\n * Remove any selection sets than have no selected ids\r\n * This can update any selection set not just the refine set.\r\n * We do not do something similar for adds as we will only ever add from refine tools to the single REFINE selection set.\r\n *\r\n * @param removeIds the ids to remove\r\n *\r\n * @protected\r\n */\r\n protected _updateSelectionSets(\r\n removeIds: number[]\r\n ): void {\r\n if (removeIds.length > 0) {\r\n this.selectionSets = this.selectionSets.reduce((prev, cur) => {\r\n cur.selectedIds = cur.selectedIds.filter(id => removeIds.indexOf(id) < 0);\r\n if (cur.selectedIds.length > 0) {\r\n prev.push(cur);\r\n }\r\n return prev;\r\n }, []);\r\n this.selectionSetsChanged.emit(this.selectionSets);\r\n }\r\n }\r\n\r\n /**\r\n * Update the refine selection set with any adds or removes\r\n *\r\n * @param addIds any ids to add\r\n * @param removeIds any ids to remove\r\n *\r\n * @returns Promise resolving when function is done\r\n * @protected\r\n */\r\n protected _updateRefineSelectionSet(\r\n addIds: number[],\r\n removeIds: number[]\r\n ): void {\r\n const selectionSet = this._getRefineSelectionSet(this.selectionSets);\r\n this.selectionSets = selectionSet ?\r\n this._updateRefineIds(selectionSet, addIds, removeIds) :\r\n this._addRefineSelectionSet(addIds, removeIds);\r\n this.selectionSetsChanged.emit(this.selectionSets);\r\n }\r\n\r\n /**\r\n * Update the ids stored for the refine selection set\r\n *\r\n * @param selectionSet the refine selection set\r\n * @param addIds any ids to add\r\n * @param removeIds any ids to remove\r\n *\r\n * @returns updated selection sets\r\n * @protected\r\n */\r\n protected _updateRefineIds(\r\n selectionSet: ISelectionSet,\r\n addIds: number[],\r\n removeIds: number[]\r\n ): ISelectionSet[] {\r\n // remove ids if they exist in the current add or remove list\r\n selectionSet.refineIds.addIds = selectionSet.refineIds.addIds.filter(id => removeIds.indexOf(id) < 0)\r\n selectionSet.refineIds.removeIds = selectionSet.refineIds.removeIds.filter(id => addIds.indexOf(id) < 0)\r\n\r\n const _addIds = [...new Set(selectionSet.refineIds.addIds.concat(addIds))];\r\n const _removeIds = [...new Set(selectionSet.refineIds.removeIds.concat(removeIds))];\r\n selectionSet.refineIds = {\r\n addIds: _addIds.filter(id => _removeIds.indexOf(id) < 0),\r\n removeIds: _removeIds.filter(id => _addIds.indexOf(id) < 0)\r\n }\r\n selectionSet.selectedIds = selectionSet.refineIds.addIds.length > 0 ?\r\n [...new Set(selectionSet.selectedIds.concat(selectionSet.refineIds.addIds))] :\r\n selectionSet.selectedIds.filter(id => selectionSet.refineIds.removeIds.indexOf(id) < 0);\r\n\r\n return this.selectionSets.map(ss => {\r\n return ss.workflowType === EWorkflowType.REFINE ? selectionSet : ss;\r\n });\r\n }\r\n\r\n /**\r\n * Add a new refine selection set\r\n *\r\n * @param addIds any ids to add\r\n * @param removeIds any ids to remove\r\n *\r\n * @returns updated selection sets\r\n * @protected\r\n */\r\n protected _addRefineSelectionSet(\r\n addIds: number[],\r\n removeIds: number[]\r\n ): ISelectionSet[] {\r\n return [\r\n ...this.selectionSets,\r\n ({\r\n buffer: undefined,\r\n distance: 0,\r\n download: true,\r\n geometries: [],\r\n id: Date.now(),\r\n label: \"Refine\",\r\n layerView: this.addresseeLayer,\r\n refineSelectLayers: [],\r\n searchResult: undefined,\r\n selectedIds: addIds,\r\n unit: \"feet\",\r\n workflowType: EWorkflowType.REFINE,\r\n refineIds: {\r\n addIds: addIds,\r\n removeIds: removeIds\r\n }\r\n })\r\n ];\r\n }\r\n\r\n /**\r\n * Fetches the component's translations\r\n *\r\n * @protected\r\n */\r\n protected async _getTranslations(): Promise<void> {\r\n const translations = await getLocaleComponentStrings(this.el);\r\n this._translations = translations[0] as typeof RefineSelection_T9n;\r\n }\r\n\r\n}\r\n"]}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"refine-selection-tools.js","sourceRoot":"","sources":["../../../src/components/refine-selection-tools/refine-selection-tools.tsx"],"names":[],"mappings":"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","sourcesContent":["/** @license\r\n * Copyright 2022 Esri\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n */\r\n\r\nimport { Component, Element, Event, EventEmitter, Host, h, Method, Prop, State, VNode, Watch } from \"@stencil/core\";\r\nimport { ERefineMode, ESelectionMode, ESelectionType, IRefineOperation } from \"../../utils/interfaces\";\r\nimport { getMapLayerView, highlightFeatures } from \"../../utils/mapViewUtils\";\r\nimport { queryFeaturesByGeometry } from \"../../utils/queryUtils\";\r\nimport state from \"../../utils/publicNotificationStore\";\r\nimport { loadModules } from \"../../utils/loadModules\";\r\nimport RefineSelectionTools_T9n from \"../../assets/t9n/refine-selection-tools/resources.json\";\r\nimport { getLocaleComponentStrings } from \"../../utils/locale\";\r\n\r\n@Component({\r\n tag: \"refine-selection-tools\",\r\n styleUrl: \"refine-selection-tools.css\",\r\n shadow: true,\r\n})\r\nexport class RefineSelectionTools {\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Host element access\r\n //\r\n //--------------------------------------------------------------------------\r\n @Element() el: HTMLRefineSelectionToolsElement;\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Properties (public)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * boolean: sketch is used by multiple components...need a way to know who should respond...\r\n */\r\n @Prop() active = false;\r\n\r\n /**\r\n * boolean: Optionally draw a border around the draw tools\r\n */\r\n @Prop() border = false;\r\n\r\n /**\r\n * esri/Graphic: https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html\r\n */\r\n @Prop({ mutable: true }) graphics: __esri.Graphic[];\r\n\r\n /**\r\n * number: The oids of the selected features\r\n */\r\n @Prop() ids: number[] = [];\r\n\r\n /**\r\n * esri/views/layers/LayerView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-LayerView.html\r\n */\r\n @Prop() layerView: __esri.FeatureLayerView;\r\n\r\n /**\r\n * esri/views/layers/FeatureLayerView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html\r\n */\r\n @Prop() layerViews: __esri.FeatureLayerView[] = [];\r\n\r\n /**\r\n * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html\r\n */\r\n @Prop() mapView: __esri.MapView;\r\n\r\n /**\r\n * utils/interfaces/ESelectionMode: ADD, REMOVE\r\n */\r\n @Prop() mode: ESelectionMode;\r\n\r\n /**\r\n * utils/interfaces/ERefineMode: ALL, SUBSET\r\n */\r\n @Prop() refineMode: ERefineMode;\r\n\r\n /**\r\n * boolean: Used to control the visibility of the layer picker\r\n */\r\n @Prop() useLayerPicker = true;\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Properties (protected)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * boolean: Is selected enabled\r\n */\r\n @State() _selectEnabled = false;\r\n\r\n /**\r\n * utils/interfaces/ESelectionType: POINT, LINE, POLY, RECT\r\n */\r\n @State() _selectionMode: ESelectionType;\r\n\r\n /**\r\n * Contains the translations for this component.\r\n * All UI strings should be defined here.\r\n */\r\n @State() _translations: typeof RefineSelectionTools_T9n;\r\n\r\n /**\r\n * esri/layers/GraphicsLayer: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-GraphicsLayer.html\r\n * The graphics layer constructor\r\n */\r\n protected GraphicsLayer: typeof __esri.GraphicsLayer;\r\n\r\n /**\r\n * esri/widgets/Sketch/SketchViewModel: https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Sketch-SketchViewModel.html\r\n * The sketch view model constructor\r\n */\r\n protected SketchViewModel: typeof __esri.SketchViewModel;\r\n\r\n /**\r\n * {<layer title>: Graphic[]}: Collection of graphics returned from queries to the layer\r\n */\r\n protected _featuresCollection: {[key: string]: __esri.Graphic[]} = {};\r\n\r\n /**\r\n * esri/core/Handles: https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Handles.html#Handle\r\n */\r\n protected _hitTestHandle: __esri.Handle;\r\n\r\n /**\r\n * IRefineOperation[]: Array to maintain the possible redo operations\r\n */\r\n protected _redoStack: IRefineOperation[] = [];\r\n\r\n /**\r\n * esri/geometry/Geometry: https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Geometry.html\r\n */\r\n protected _sketchGeometry: __esri.Geometry;\r\n\r\n /**\r\n * esri/layers/GraphicsLayer: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-GraphicsLayer.html\r\n * The graphics layer used to show selections.\r\n */\r\n protected _sketchGraphicsLayer: __esri.GraphicsLayer;\r\n\r\n /**\r\n * esri/widgets/Sketch/SketchViewModel: The html element for selecting buffer unit\r\n * The sketch view model used to create graphics\r\n */\r\n protected _sketchViewModel: __esri.SketchViewModel;\r\n\r\n /**\r\n * IRefineOperation[]: Array to maintain the possible undo operations\r\n */\r\n protected _undoStack: IRefineOperation[] = [];\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Watch handlers\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * Called each time the ids prop is changed.\r\n * Highlight the features based on the provided ids\r\n */\r\n @Watch(\"ids\")\r\n idsWatchHandler(v: any, oldV: any): void {\r\n if (v && JSON.stringify(v) !== JSON.stringify(oldV)) {\r\n void this._highlightFeatures(v);\r\n }\r\n }\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Methods (public)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * Reset the ids collection\r\n *\r\n * @returns Promise when complete\r\n */\r\n @Method()\r\n async reset(): Promise<void> {\r\n this.ids = [];\r\n }\r\n\r\n /**\r\n * Clear current highlight handle\r\n *\r\n * @returns Promise when complete\r\n */\r\n @Method()\r\n async clearHighlight(): Promise<void> {\r\n this._clearHighlight();\r\n }\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Events (public)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * Emitted on demand when selection graphics change.\r\n */\r\n @Event() refineSelectionGraphicsChange: EventEmitter<any[]>;\r\n\r\n /**\r\n * Emitted on demand when selection ids change\r\n */\r\n @Event() refineSelectionIdsChange: EventEmitter<{ addIds: any[]; removeIds: any[]; }>;\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Functions (lifecycle)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * StencilJS: Called once just after the component is first connected to the DOM.\r\n */\r\n async componentWillLoad(): Promise<void> {\r\n await this._getTranslations();\r\n await this._initModules();\r\n }\r\n\r\n /**\r\n * StencilJS: Called once just after the component is fully loaded and the first render() occurs.\r\n */\r\n componentDidLoad(): void {\r\n this._init();\r\n }\r\n\r\n /**\r\n * StencilJS: Called every time the component is disconnected from the DOM, ie,\r\n * it can be dispatched more than once, DO not confuse with a \"onDestroy\" kind of event.\r\n */\r\n disconnectedCallback(): void {\r\n this.active = false;\r\n }\r\n\r\n /**\r\n * Called every time the component is connected to the DOM.\r\n * When the component is first connected, this method is called before componentWillLoad.\r\n */\r\n connectedCallback(): void {\r\n this.active = true;\r\n if (this.ids.length > 0) {\r\n this._selectEnabled = true;\r\n void this._highlightFeatures(this.ids);\r\n }\r\n }\r\n\r\n /**\r\n * Renders the component.\r\n */\r\n render(): VNode {\r\n const showLayerPickerClass = this.useLayerPicker ? \"div-visible\" : \"div-not-visible\";\r\n const drawClass = this.border ? \" border\" : \"\";\r\n return (\r\n <Host>\r\n <div>\r\n <div class={\"main-label \" + showLayerPickerClass}>\r\n <calcite-label>{this._translations.selectLayers}</calcite-label>\r\n </div>\r\n <map-layer-picker\r\n class={showLayerPickerClass}\r\n mapView={this.mapView}\r\n onLayerSelectionChange={(evt) => { void this._layerSelectionChange(evt) }}\r\n selectedLayers={this.layerViews.map(l => l.layer.title)}\r\n selectionMode={\"single\"}\r\n />\r\n <div class={\"margin-top-1\" + drawClass}>\r\n <div class=\"esri-sketch esri-widget\">\r\n <div class=\"esri-sketch__panel\">\r\n <div class=\"esri-sketch__tool-section esri-sketch__section\">\r\n <calcite-action\r\n disabled={!this._selectEnabled}\r\n icon=\"select\"\r\n onClick={() => this._setSelectionMode(ESelectionType.POINT)}\r\n scale=\"s\"\r\n text={this._translations.select}\r\n />\r\n </div>\r\n <div class=\"esri-sketch__tool-section esri-sketch__section\">\r\n <calcite-action\r\n disabled={!this._selectEnabled}\r\n icon=\"line\"\r\n onClick={() => this._setSelectionMode(ESelectionType.LINE)}\r\n scale=\"s\"\r\n text={this._translations.selectLine}\r\n />\r\n <calcite-action\r\n disabled={!this._selectEnabled}\r\n icon=\"polygon\"\r\n onClick={() => this._setSelectionMode(ESelectionType.POLY)}\r\n scale=\"s\"\r\n text={this._translations.selectPolygon}\r\n />\r\n <calcite-action\r\n disabled={!this._selectEnabled}\r\n icon=\"rectangle\"\r\n onClick={() => this._setSelectionMode(ESelectionType.RECT)}\r\n scale=\"s\"\r\n text={this._translations.selectRectangle}\r\n />\r\n </div>\r\n <div class=\"esri-sketch__tool-section esri-sketch__section\">\r\n <calcite-action\r\n disabled={this._undoStack.length === 0}\r\n icon=\"undo\"\r\n onClick={() => this._undo()}\r\n scale=\"s\"\r\n text={this._translations.undo}\r\n />\r\n <calcite-action\r\n disabled={this._redoStack.length === 0}\r\n icon=\"redo\"\r\n onClick={() => this._redo()}\r\n scale=\"s\"\r\n text={this._translations.redo}\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </Host>\r\n );\r\n }\r\n\r\n //--------------------------------------------------------------------------\r\n //\r\n // Functions (protected)\r\n //\r\n //--------------------------------------------------------------------------\r\n\r\n /**\r\n * Load esri javascript api modules\r\n *\r\n * @returns Promise resolving when function is done\r\n *\r\n * @protected\r\n */\r\n protected async _initModules(): Promise<void> {\r\n const [GraphicsLayer, SketchViewModel]: [\r\n __esri.GraphicsLayerConstructor,\r\n __esri.SketchViewModelConstructor\r\n ] = await loadModules([\r\n \"esri/layers/GraphicsLayer\",\r\n \"esri/widgets/Sketch/SketchViewModel\"\r\n ]);\r\n this.GraphicsLayer = GraphicsLayer;\r\n this.SketchViewModel = SketchViewModel;\r\n }\r\n\r\n /**\r\n * Initialize the graphics layer and skecth view model\r\n *\r\n * @returns Promise when the operation has completed\r\n * @protected\r\n */\r\n protected _init(): void {\r\n this._initGraphicsLayer();\r\n this._initSketchViewModel();\r\n }\r\n\r\n /**\r\n * Initialize the skecth view model\r\n *\r\n * @returns Promise when the operation has completed\r\n * @protected\r\n */\r\n protected _initSketchViewModel(): void {\r\n this._sketchViewModel = new this.SketchViewModel({\r\n layer: this._sketchGraphicsLayer,\r\n defaultUpdateOptions: {\r\n tool: \"reshape\",\r\n toggleToolOnClick: false\r\n },\r\n view: this.mapView\r\n });\r\n\r\n this._sketchViewModel.on(\"create\", (event) => {\r\n if (event.state === \"complete\" && this.active) {\r\n this._featuresCollection = {};\r\n this._sketchGeometry = event.graphic.geometry;\r\n void this._selectFeatures(this._sketchGeometry);\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Clear any skecth graphics\r\n *\r\n * @returns Promise when the operation has completed\r\n * @protected\r\n */\r\n protected _clear(): void {\r\n this._sketchGeometry = null;\r\n this._sketchViewModel.cancel();\r\n this._sketchGraphicsLayer.removeAll();\r\n }\r\n\r\n /**\r\n * Initialize the graphics layer\r\n *\r\n * @returns Promise when the operation has completed\r\n * @protected\r\n */\r\n protected _initGraphicsLayer(): void {\r\n const title = this._translations.sketchLayer;\r\n const sketchIndex = this.mapView.map.layers.findIndex((l) => l.title === title);\r\n if (sketchIndex > -1) {\r\n this._sketchGraphicsLayer = this.mapView.map.layers.getItemAt(sketchIndex) as __esri.GraphicsLayer;\r\n } else {\r\n this._sketchGraphicsLayer = new this.GraphicsLayer({ title });\r\n state.managedLayers.push(title);\r\n this.mapView.map.layers.add(this._sketchGraphicsLayer);\r\n }\r\n\r\n if (this.graphics && this.graphics.length > 0) {\r\n this._sketchGraphicsLayer.addMany(this.graphics);\r\n }\r\n }\r\n\r\n /**\r\n * Clear selection based on map click\r\n *\r\n * @protected\r\n */\r\n protected _initHitTest(): void {\r\n if (this._hitTestHandle) {\r\n this._hitTestHandle.remove();\r\n }\r\n this._hitTestHandle = this.mapView.on(\"click\", (event) => {\r\n event.stopPropagation();\r\n const opts = {\r\n include: this.layerViews.map(lv => lv.layer)\r\n };\r\n void this.mapView.hitTest(event, opts).then((response) => {\r\n let graphics = [];\r\n if (response.results.length > 0) {\r\n graphics = response.results.reduce((prev, cur) => {\r\n const g = (cur as any)?.graphic;\r\n if (g) {\r\n prev.push(g);\r\n }\r\n return prev;\r\n }, []);\r\n }\r\n this.refineSelectionGraphicsChange.emit(graphics);\r\n this._clear();\r\n });\r\n });\r\n\r\n }\r\n\r\n /**\r\n * Gets the layer views from the map when the layer selection changes\r\n *\r\n * @returns Promise resolving when function is done\r\n *\r\n * @protected\r\n */\r\n protected async _layerSelectionChange(\r\n evt: CustomEvent\r\n ): Promise<void> {\r\n if (Array.isArray(evt.detail) && evt.detail.length > 0) {\r\n this._selectEnabled = true;\r\n const layerPromises = evt.detail.map(title => {\r\n return getMapLayerView(this.mapView, title)\r\n });\r\n\r\n return Promise.all(layerPromises).then((layerViews) => {\r\n this.layerViews = layerViews;\r\n });\r\n } else {\r\n this._selectEnabled = false;\r\n }\r\n }\r\n\r\n /**\r\n * Store the current selection mode\r\n *\r\n * @protected\r\n */\r\n protected _setSelectionMode(\r\n mode: ESelectionType\r\n ): void {\r\n this._selectionMode = mode;\r\n\r\n if (this._hitTestHandle) {\r\n this._hitTestHandle.remove();\r\n }\r\n\r\n switch (this._selectionMode) {\r\n case ESelectionType.POINT:\r\n this._sketchViewModel.create(\"point\");\r\n //this._initHitTest();\r\n break;\r\n case ESelectionType.LINE:\r\n this._sketchViewModel.create(\"polyline\");\r\n break;\r\n case ESelectionType.POLY:\r\n this._sketchViewModel.create(\"polygon\");\r\n break;\r\n case ESelectionType.RECT:\r\n this._sketchViewModel.create(\"rectangle\");\r\n break;\r\n }\r\n }\r\n\r\n /**\r\n * Select features based on the input geometry\r\n *\r\n * @param geom the geometry used for selection\r\n *\r\n * @returns Promise resolving when function is done\r\n *\r\n * @protected\r\n */\r\n protected async _selectFeatures(\r\n geom: __esri.Geometry\r\n ): Promise<void> {\r\n const queryFeaturePromises = this.layerViews.map(layerView => {\r\n this._featuresCollection[layerView.layer.title] = [];\r\n return queryFeaturesByGeometry(0, layerView.layer, geom, this._featuresCollection)\r\n });\r\n\r\n return Promise.all(queryFeaturePromises).then(async response => {\r\n let graphics = [];\r\n response.forEach(r => {\r\n Object.keys(r).forEach(k => {\r\n graphics = graphics.concat(r[k]);\r\n })\r\n });\r\n\r\n if (this.refineMode === ERefineMode.SUBSET) {\r\n this.refineSelectionGraphicsChange.emit(graphics);\r\n } else {\r\n const oids = Array.isArray(graphics) ? graphics.map(g => g.attributes[g?.layer?.objectIdField]) : [];\r\n await this._updateIds(oids, this.mode, this._undoStack, this.mode);\r\n }\r\n this._clear();\r\n });\r\n }\r\n\r\n /**\r\n * Highlight any selected features in the map\r\n *\r\n * @returns Promise resolving when function is done\r\n * @protected\r\n */\r\n protected async _highlightFeatures(\r\n ids: number[],\r\n updateExtent = false\r\n ): Promise<void> {\r\n this._clearHighlight();\r\n if (ids.length > 0) {\r\n state.highlightHandle = await highlightFeatures(ids, this.layerViews[0], this.mapView, updateExtent);\r\n }\r\n }\r\n\r\n /**\r\n * Clear any highlighted features in the map\r\n *\r\n * @protected\r\n */\r\n protected _clearHighlight(): void {\r\n state.highlightHandle?.remove();\r\n }\r\n\r\n /**\r\n * Update the ids for any ADD or REMOVE operation and highlight the features.\r\n *\r\n * @param oids the ids to add or remove\r\n * @param mode ADD or REMOVE this will control if the ids are added or removed\r\n * @param operationStack the undo or redo stack to push the operation to\r\n * @param operationMode ADD or REMOVE the mode of the individual refine operation\r\n *\r\n * @returns Promise resolving when function is done\r\n *\r\n * @protected\r\n */\r\n protected async _updateIds(\r\n oids: number[],\r\n mode: ESelectionMode,\r\n operationStack: IRefineOperation[],\r\n operationMode: ESelectionMode\r\n ): Promise<void> {\r\n const idUpdates = { addIds: [], removeIds: [] };\r\n if (mode === ESelectionMode.ADD) {\r\n idUpdates.addIds = oids.filter(id => this.ids.indexOf(id) < 0);\r\n this.ids = [...this.ids, ...idUpdates.addIds];\r\n operationStack.push({ mode: operationMode, ids: idUpdates.addIds });\r\n } else {\r\n idUpdates.removeIds = oids.filter(id => this.ids.indexOf(id) > -1);\r\n this.ids = this.ids.filter(id => idUpdates.removeIds.indexOf(id) < 0);\r\n operationStack.push({ mode: operationMode, ids: idUpdates.removeIds });\r\n }\r\n await this._highlightFeatures(this.ids).then(() => {\r\n this.refineSelectionIdsChange.emit(idUpdates);\r\n });\r\n }\r\n\r\n /**\r\n * Undo the most current ADD or REMOVE operation\r\n *\r\n * @returns Promise resolving when function is done\r\n *\r\n * @protected\r\n */\r\n async _undo(): Promise<void> {\r\n const undoOp = this._undoStack.pop();\r\n return this._updateIds(\r\n undoOp.ids,\r\n undoOp.mode === ESelectionMode.ADD ? ESelectionMode.REMOVE : ESelectionMode.ADD,\r\n this._redoStack,\r\n undoOp.mode\r\n );\r\n }\r\n\r\n /**\r\n * Redo the most current ADD or REMOVE operation\r\n *\r\n * @returns Promise resolving when function is done\r\n *\r\n * @protected\r\n */\r\n async _redo(): Promise<void> {\r\n const redoOp = this._redoStack.pop();\r\n return this._updateIds(\r\n redoOp.ids,\r\n redoOp.mode,\r\n this._undoStack,\r\n redoOp.mode\r\n );\r\n }\r\n\r\n /**\r\n * Fetches the component's translations\r\n *\r\n * @protected\r\n */\r\n protected async _getTranslations(): Promise<void> {\r\n const translations = await getLocaleComponentStrings(this.el);\r\n this._translations = translations[0] as typeof RefineSelectionTools_T9n;\r\n }\r\n}\r\n"]}
|
@@ -0,0 +1,91 @@
|
|
1
|
+
/** @license
|
2
|
+
* Copyright 2022 Esri
|
3
|
+
*
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
* you may not use this file except in compliance with the License.
|
6
|
+
* You may obtain a copy of the License at
|
7
|
+
*
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
*
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
* See the License for the specific language governing permissions and
|
14
|
+
* limitations under the License.
|
15
|
+
*/
|
16
|
+
.configuration-container {
|
17
|
+
position: relative;
|
18
|
+
height: 100%;
|
19
|
+
width: 100%
|
20
|
+
}
|
21
|
+
|
22
|
+
.configuration {
|
23
|
+
position: absolute;
|
24
|
+
top: 0px;
|
25
|
+
right: 0px;
|
26
|
+
bottom: 0px;
|
27
|
+
left: 0px;
|
28
|
+
display: flex;
|
29
|
+
padding: 0.5rem;
|
30
|
+
border: 1px #808080 solid
|
31
|
+
}
|
32
|
+
|
33
|
+
.config-tabs {
|
34
|
+
width: 100%
|
35
|
+
}
|
36
|
+
|
37
|
+
.config-tab {
|
38
|
+
width: 100%
|
39
|
+
}
|
40
|
+
|
41
|
+
.config-solution {
|
42
|
+
position: absolute;
|
43
|
+
top: 3.5rem;
|
44
|
+
right: -1px;
|
45
|
+
bottom: -1px;
|
46
|
+
left: -1px;
|
47
|
+
display: flex;
|
48
|
+
padding: 0.5rem
|
49
|
+
}
|
50
|
+
|
51
|
+
.config-inventory {
|
52
|
+
display: inline;
|
53
|
+
max-width: -moz-min-content;
|
54
|
+
max-width: min-content;
|
55
|
+
flex-grow: 0;
|
56
|
+
overflow-y: auto
|
57
|
+
}
|
58
|
+
|
59
|
+
.config-inventory-hide {
|
60
|
+
display: none;
|
61
|
+
max-width: -moz-min-content;
|
62
|
+
max-width: min-content;
|
63
|
+
flex-grow: 0;
|
64
|
+
overflow-y: auto
|
65
|
+
}
|
66
|
+
|
67
|
+
.config-item {
|
68
|
+
position: relative;
|
69
|
+
display: inline;
|
70
|
+
flex-grow: 1;
|
71
|
+
overflow-y: auto;
|
72
|
+
-webkit-margin-start: 0.5rem;
|
73
|
+
margin-inline-start: 0.5rem
|
74
|
+
}
|
75
|
+
|
76
|
+
solution-contents {
|
77
|
+
position: relative;
|
78
|
+
height: 100%
|
79
|
+
}
|
80
|
+
|
81
|
+
solution-item {
|
82
|
+
position: relative;
|
83
|
+
height: 100%
|
84
|
+
}
|
85
|
+
|
86
|
+
solution-spatial-ref {
|
87
|
+
position: relative;
|
88
|
+
height: 100%;
|
89
|
+
width: 100%;
|
90
|
+
overflow-y: auto
|
91
|
+
}
|