@igo2/geo 18.0.1-next.2 → 18.0.2
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/esm2022/igo2-geo.mjs +5 -0
- package/esm2022/lib/catalog/catalog-browser/catalog-browser-group.component.mjs +234 -0
- package/esm2022/lib/catalog/catalog-browser/catalog-browser-layer.component.mjs +272 -0
- package/esm2022/lib/catalog/catalog-browser/catalog-browser.component.mjs +246 -0
- package/esm2022/lib/catalog/catalog-browser/catalog-browser.module.mjs +19 -0
- package/esm2022/lib/catalog/catalog-library/add-catalog-dialog.component.mjs +136 -0
- package/esm2022/lib/catalog/catalog-library/catalog-library-item.component.mjs +60 -0
- package/esm2022/lib/catalog/catalog-library/catalog-library.component.mjs +232 -0
- package/esm2022/lib/catalog/catalog-library/catalog-library.module.mjs +24 -0
- package/esm2022/lib/catalog/catalog-library/index.mjs +4 -0
- package/esm2022/lib/catalog/catalog.module.mjs +26 -0
- package/esm2022/lib/catalog/index.mjs +6 -0
- package/esm2022/lib/catalog/shared/catalog.abstract.mjs +32 -0
- package/esm2022/lib/catalog/shared/catalog.enum.mjs +16 -0
- package/esm2022/lib/catalog/shared/catalog.interface.mjs +2 -0
- package/esm2022/lib/catalog/shared/catalog.service.mjs +706 -0
- package/esm2022/lib/catalog/shared/catalogs.mjs +75 -0
- package/esm2022/lib/catalog/shared/index.mjs +5 -0
- package/esm2022/lib/datasource/index.mjs +3 -0
- package/esm2022/lib/datasource/shared/capabilities.interface.mjs +17 -0
- package/esm2022/lib/datasource/shared/capabilities.service.mjs +441 -0
- package/esm2022/lib/datasource/shared/datasource.service.mjs +258 -0
- package/esm2022/lib/datasource/shared/datasources/any-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/any-datasource.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/arcgisrest-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/arcgisrest-datasource.mjs +222 -0
- package/esm2022/lib/datasource/shared/datasources/carto-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/carto-datasource.mjs +118 -0
- package/esm2022/lib/datasource/shared/datasources/cluster-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/cluster-datasource.mjs +24 -0
- package/esm2022/lib/datasource/shared/datasources/data.service.mjs +3 -0
- package/esm2022/lib/datasource/shared/datasources/datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/datasource.mjs +42 -0
- package/esm2022/lib/datasource/shared/datasources/feature-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/feature-datasource.mjs +52 -0
- package/esm2022/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/imagearcgisrest-datasource.mjs +70 -0
- package/esm2022/lib/datasource/shared/datasources/index.mjs +36 -0
- package/esm2022/lib/datasource/shared/datasources/mvt-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/mvt-datasource.mjs +33 -0
- package/esm2022/lib/datasource/shared/datasources/osm-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/osm-datasource.mjs +14 -0
- package/esm2022/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/tilearcgisrest-datasource.mjs +60 -0
- package/esm2022/lib/datasource/shared/datasources/tiledebug-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/tiledebug-datasource.mjs +17 -0
- package/esm2022/lib/datasource/shared/datasources/websocket-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/websocket-datasource.mjs +56 -0
- package/esm2022/lib/datasource/shared/datasources/wfs-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/wfs-datasource.mjs +137 -0
- package/esm2022/lib/datasource/shared/datasources/wfs.service.mjs +170 -0
- package/esm2022/lib/datasource/shared/datasources/wms-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/wms-datasource.mjs +227 -0
- package/esm2022/lib/datasource/shared/datasources/wms-wfs.utils.mjs +224 -0
- package/esm2022/lib/datasource/shared/datasources/wmts-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/wmts-datasource.mjs +18 -0
- package/esm2022/lib/datasource/shared/datasources/xyz-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/xyz-datasource.mjs +11 -0
- package/esm2022/lib/datasource/shared/index.mjs +6 -0
- package/esm2022/lib/datasource/shared/options/index.mjs +5 -0
- package/esm2022/lib/datasource/shared/options/options-api.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/options/options-api.providers.mjs +15 -0
- package/esm2022/lib/datasource/shared/options/options-api.service.mjs +85 -0
- package/esm2022/lib/datasource/shared/options/options.service.mjs +3 -0
- package/esm2022/lib/datasource/utils/index.mjs +2 -0
- package/esm2022/lib/datasource/utils/tilegrid.mjs +20 -0
- package/esm2022/lib/directions/directions-buttons/directions-buttons.component.mjs +246 -0
- package/esm2022/lib/directions/directions-buttons/index.mjs +2 -0
- package/esm2022/lib/directions/directions-inputs/directions-inputs.component.mjs +312 -0
- package/esm2022/lib/directions/directions-inputs/index.mjs +2 -0
- package/esm2022/lib/directions/directions-results/directions-results.component.mjs +192 -0
- package/esm2022/lib/directions/directions-results/index.mjs +2 -0
- package/esm2022/lib/directions/directions-sources/directions-source.interface.mjs +5 -0
- package/esm2022/lib/directions/directions-sources/directions-source.mjs +3 -0
- package/esm2022/lib/directions/directions-sources/directions-source.provider.mjs +23 -0
- package/esm2022/lib/directions/directions-sources/index.mjs +5 -0
- package/esm2022/lib/directions/directions-sources/osrm-directions-source.mjs +159 -0
- package/esm2022/lib/directions/directions.component.mjs +437 -0
- package/esm2022/lib/directions/directions.module.mjs +46 -0
- package/esm2022/lib/directions/directions.provider.mjs +16 -0
- package/esm2022/lib/directions/index.mjs +8 -0
- package/esm2022/lib/directions/shared/directions-source.service.mjs +18 -0
- package/esm2022/lib/directions/shared/directions.enum.mjs +72 -0
- package/esm2022/lib/directions/shared/directions.interface.mjs +2 -0
- package/esm2022/lib/directions/shared/directions.service.mjs +239 -0
- package/esm2022/lib/directions/shared/directions.utils.mjs +522 -0
- package/esm2022/lib/directions/shared/index.mjs +6 -0
- package/esm2022/lib/directions/shared/store.mjs +21 -0
- package/esm2022/lib/download/download-button/download-button.component.mjs +48 -0
- package/esm2022/lib/download/download-button/index.mjs +2 -0
- package/esm2022/lib/download/download.module.mjs +24 -0
- package/esm2022/lib/download/index.mjs +3 -0
- package/esm2022/lib/download/shared/download.interface.mjs +2 -0
- package/esm2022/lib/download/shared/download.service.mjs +67 -0
- package/esm2022/lib/download/shared/index.mjs +3 -0
- package/esm2022/lib/draw/draw/draw-layer-popup.component.mjs +42 -0
- package/esm2022/lib/draw/draw/draw-popup.component.mjs +421 -0
- package/esm2022/lib/draw/draw/draw-shorcuts.component.mjs +28 -0
- package/esm2022/lib/draw/draw/draw.component.mjs +1136 -0
- package/esm2022/lib/draw/draw/draw.module.mjs +19 -0
- package/esm2022/lib/draw/drawingTool.module.mjs +18 -0
- package/esm2022/lib/draw/index.mjs +3 -0
- package/esm2022/lib/draw/shared/draw-icon.service.mjs +30 -0
- package/esm2022/lib/draw/shared/draw.enum.mjs +21 -0
- package/esm2022/lib/draw/shared/draw.interface.mjs +2 -0
- package/esm2022/lib/draw/shared/draw.utils.mjs +125 -0
- package/esm2022/lib/draw/shared/index.mjs +5 -0
- package/esm2022/lib/environment/environment.interface.mjs +2 -0
- package/esm2022/lib/environment/index.mjs +2 -0
- package/esm2022/lib/feature/feature-details/feature-details.component.mjs +306 -0
- package/esm2022/lib/feature/feature-details/feature-details.directive.mjs +56 -0
- package/esm2022/lib/feature/feature-details/feature-details.module.mjs +26 -0
- package/esm2022/lib/feature/feature-details/index.mjs +4 -0
- package/esm2022/lib/feature/feature-form/feature-form.component.mjs +101 -0
- package/esm2022/lib/feature/feature-form/feature-form.module.mjs +19 -0
- package/esm2022/lib/feature/feature.module.mjs +26 -0
- package/esm2022/lib/feature/index.mjs +5 -0
- package/esm2022/lib/feature/shared/feature-store.utils.mjs +28 -0
- package/esm2022/lib/feature/shared/feature.enums.mjs +9 -0
- package/esm2022/lib/feature/shared/feature.interfaces.mjs +2 -0
- package/esm2022/lib/feature/shared/feature.utils.mjs +332 -0
- package/esm2022/lib/feature/shared/index.mjs +8 -0
- package/esm2022/lib/feature/shared/store.mjs +143 -0
- package/esm2022/lib/feature/shared/strategies/geo-properties.mjs +216 -0
- package/esm2022/lib/feature/shared/strategies/in-map-extent.mjs +119 -0
- package/esm2022/lib/feature/shared/strategies/in-map-resolution.mjs +99 -0
- package/esm2022/lib/feature/shared/strategies/index.mjs +8 -0
- package/esm2022/lib/feature/shared/strategies/loading-layer.mjs +103 -0
- package/esm2022/lib/feature/shared/strategies/loading.mjs +136 -0
- package/esm2022/lib/feature/shared/strategies/search.mjs +158 -0
- package/esm2022/lib/feature/shared/strategies/selection.mjs +385 -0
- package/esm2022/lib/feature/shared/strategies.utils.mjs +37 -0
- package/esm2022/lib/filter/filter.module.mjs +131 -0
- package/esm2022/lib/filter/index.mjs +17 -0
- package/esm2022/lib/filter/ogc-filter-button/index.mjs +2 -0
- package/esm2022/lib/filter/ogc-filter-button/ogc-filter-button.component.mjs +141 -0
- package/esm2022/lib/filter/ogc-filter-form/index.mjs +2 -0
- package/esm2022/lib/filter/ogc-filter-form/ogc-filter-form.component.mjs +325 -0
- package/esm2022/lib/filter/ogc-filter-selection/index.mjs +2 -0
- package/esm2022/lib/filter/ogc-filter-selection/ogc-filter-selection.component.mjs +787 -0
- package/esm2022/lib/filter/ogc-filter-time/index.mjs +3 -0
- package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.mjs +201 -0
- package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time.component.mjs +665 -0
- package/esm2022/lib/filter/ogc-filterable-form/index.mjs +2 -0
- package/esm2022/lib/filter/ogc-filterable-form/ogc-filterable-form.component.mjs +66 -0
- package/esm2022/lib/filter/ogc-filterable-item/index.mjs +2 -0
- package/esm2022/lib/filter/ogc-filterable-item/ogc-filterable-item.component.mjs +244 -0
- package/esm2022/lib/filter/ogc-filterable-list/index.mjs +3 -0
- package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.mjs +39 -0
- package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list.component.mjs +32 -0
- package/esm2022/lib/filter/shared/filterable-datasource.pipe.mjs +63 -0
- package/esm2022/lib/filter/shared/index.mjs +12 -0
- package/esm2022/lib/filter/shared/ogc-filter-time.service.mjs +72 -0
- package/esm2022/lib/filter/shared/ogc-filter.enum.mjs +30 -0
- package/esm2022/lib/filter/shared/ogc-filter.interface.mjs +2 -0
- package/esm2022/lib/filter/shared/ogc-filter.mjs +756 -0
- package/esm2022/lib/filter/shared/ogc-filter.service.mjs +47 -0
- package/esm2022/lib/filter/shared/spatial-filter.enum.mjs +23 -0
- package/esm2022/lib/filter/shared/spatial-filter.interface.mjs +2 -0
- package/esm2022/lib/filter/shared/spatial-filter.service.mjs +282 -0
- package/esm2022/lib/filter/shared/time-filter.enum.mjs +13 -0
- package/esm2022/lib/filter/shared/time-filter.interface.mjs +2 -0
- package/esm2022/lib/filter/shared/time-filter.service.mjs +107 -0
- package/esm2022/lib/filter/spatial-filter/spatial-filter-item/index.mjs +2 -0
- package/esm2022/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.mjs +875 -0
- package/esm2022/lib/filter/spatial-filter/spatial-filter-list/index.mjs +2 -0
- package/esm2022/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.mjs +191 -0
- package/esm2022/lib/filter/spatial-filter/spatial-filter-type/index.mjs +2 -0
- package/esm2022/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.mjs +120 -0
- package/esm2022/lib/filter/time-filter-button/index.mjs +2 -0
- package/esm2022/lib/filter/time-filter-button/time-filter-button.component.mjs +70 -0
- package/esm2022/lib/filter/time-filter-form/index.mjs +2 -0
- package/esm2022/lib/filter/time-filter-form/time-filter-form.component.mjs +537 -0
- package/esm2022/lib/filter/time-filter-item/index.mjs +2 -0
- package/esm2022/lib/filter/time-filter-item/time-filter-item.component.mjs +90 -0
- package/esm2022/lib/filter/time-filter-list/index.mjs +3 -0
- package/esm2022/lib/filter/time-filter-list/time-filter-list-binding.directive.mjs +39 -0
- package/esm2022/lib/filter/time-filter-list/time-filter-list.component.mjs +24 -0
- package/esm2022/lib/geo.module.mjs +63 -0
- package/esm2022/lib/geometry/geometry-form-field/geometry-form-field-input.component.mjs +559 -0
- package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.component.mjs +170 -0
- package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.module.mjs +24 -0
- package/esm2022/lib/geometry/geometry-form-field/index.mjs +4 -0
- package/esm2022/lib/geometry/geometry.module.mjs +18 -0
- package/esm2022/lib/geometry/index.mjs +3 -0
- package/esm2022/lib/geometry/shared/controls/draw.mjs +340 -0
- package/esm2022/lib/geometry/shared/controls/index.mjs +4 -0
- package/esm2022/lib/geometry/shared/controls/modify.mjs +538 -0
- package/esm2022/lib/geometry/shared/controls/slice.mjs +190 -0
- package/esm2022/lib/geometry/shared/geometry.errors.mjs +24 -0
- package/esm2022/lib/geometry/shared/geometry.interfaces.mjs +2 -0
- package/esm2022/lib/geometry/shared/geometry.utils.mjs +113 -0
- package/esm2022/lib/geometry/shared/index.mjs +5 -0
- package/esm2022/lib/import-export/export-button/export-button.component.mjs +49 -0
- package/esm2022/lib/import-export/export-button/index.mjs +2 -0
- package/esm2022/lib/import-export/import-export/import-export.component.mjs +876 -0
- package/esm2022/lib/import-export/import-export/index.mjs +2 -0
- package/esm2022/lib/import-export/import-export.module.mjs +31 -0
- package/esm2022/lib/import-export/index.mjs +5 -0
- package/esm2022/lib/import-export/shared/drop-geo-file.directive.mjs +114 -0
- package/esm2022/lib/import-export/shared/export.errors.mjs +15 -0
- package/esm2022/lib/import-export/shared/export.interface.mjs +2 -0
- package/esm2022/lib/import-export/shared/export.service.mjs +378 -0
- package/esm2022/lib/import-export/shared/export.type.mjs +13 -0
- package/esm2022/lib/import-export/shared/export.utils.mjs +51 -0
- package/esm2022/lib/import-export/shared/import.errors.mjs +39 -0
- package/esm2022/lib/import-export/shared/import.interface.mjs +2 -0
- package/esm2022/lib/import-export/shared/import.service.mjs +221 -0
- package/esm2022/lib/import-export/shared/import.utils.mjs +203 -0
- package/esm2022/lib/import-export/shared/index.mjs +11 -0
- package/esm2022/lib/layer/index.mjs +16 -0
- package/esm2022/lib/layer/layer-group/index.mjs +2 -0
- package/esm2022/lib/layer/layer-group/layer-group.component.mjs +103 -0
- package/esm2022/lib/layer/layer-item/index.mjs +2 -0
- package/esm2022/lib/layer/layer-item/layer-item.component.mjs +196 -0
- package/esm2022/lib/layer/layer-legend/index.mjs +2 -0
- package/esm2022/lib/layer/layer-legend/layer-legend.component.mjs +287 -0
- package/esm2022/lib/layer/layer-legend-item/index.mjs +2 -0
- package/esm2022/lib/layer/layer-legend-item/layer-legend-item.component.mjs +85 -0
- package/esm2022/lib/layer/layer-legend-list/index.mjs +3 -0
- package/esm2022/lib/layer/layer-legend-list/layer-legend-list-binding.directive.mjs +54 -0
- package/esm2022/lib/layer/layer-legend-list/layer-legend-list.component.mjs +104 -0
- package/esm2022/lib/layer/layer-list/index.mjs +2 -0
- package/esm2022/lib/layer/layer-list/layer-list.component.mjs +232 -0
- package/esm2022/lib/layer/layer-list-tool/index.mjs +4 -0
- package/esm2022/lib/layer/layer-list-tool/layer-list-tool.component.mjs +92 -0
- package/esm2022/lib/layer/layer-list-tool/layer-list-tool.interface.mjs +7 -0
- package/esm2022/lib/layer/layer-list-tool/layer-list-tool.service.mjs +61 -0
- package/esm2022/lib/layer/layer-search/index.mjs +2 -0
- package/esm2022/lib/layer/layer-search/layer-search.component.mjs +65 -0
- package/esm2022/lib/layer/layer-unavailable/index.mjs +3 -0
- package/esm2022/lib/layer/layer-unavailable/layer-unavailable-list/layer-unavailable-list.component.mjs +26 -0
- package/esm2022/lib/layer/layer-unavailable/layer-unavailable.component.mjs +35 -0
- package/esm2022/lib/layer/layer-viewer/index.mjs +3 -0
- package/esm2022/lib/layer/layer-viewer/layer-viewer.component.mjs +226 -0
- package/esm2022/lib/layer/layer-viewer/layer-viewer.interface.mjs +2 -0
- package/esm2022/lib/layer/layer-viewer-bottom-actions/index.mjs +2 -0
- package/esm2022/lib/layer/layer-viewer-bottom-actions/layer-viewer-bottom-actions.component.mjs +207 -0
- package/esm2022/lib/layer/layer-visibility-button/index.mjs +2 -0
- package/esm2022/lib/layer/layer-visibility-button/layer-visibility-button.component.mjs +83 -0
- package/esm2022/lib/layer/layer.module.mjs +107 -0
- package/esm2022/lib/layer/shared/clusterParam.mjs +2 -0
- package/esm2022/lib/layer/shared/index.mjs +6 -0
- package/esm2022/lib/layer/shared/layer-controller.mjs +316 -0
- package/esm2022/lib/layer/shared/layer-selection.mjs +38 -0
- package/esm2022/lib/layer/shared/layer.enums.mjs +2 -0
- package/esm2022/lib/layer/shared/layer.service.mjs +315 -0
- package/esm2022/lib/layer/shared/layers/any-layer.interface.mjs +2 -0
- package/esm2022/lib/layer/shared/layers/any-layer.mjs +2 -0
- package/esm2022/lib/layer/shared/layers/image-layer.interface.mjs +2 -0
- package/esm2022/lib/layer/shared/layers/image-layer.mjs +75 -0
- package/esm2022/lib/layer/shared/layers/index.mjs +18 -0
- package/esm2022/lib/layer/shared/layers/layer-base.mjs +199 -0
- package/esm2022/lib/layer/shared/layers/layer-group.interface.mjs +2 -0
- package/esm2022/lib/layer/shared/layers/layer-group.mjs +120 -0
- package/esm2022/lib/layer/shared/layers/layer.interface.mjs +7 -0
- package/esm2022/lib/layer/shared/layers/layer.mjs +178 -0
- package/esm2022/lib/layer/shared/layers/legend.interface.mjs +2 -0
- package/esm2022/lib/layer/shared/layers/linked/index.mjs +4 -0
- package/esm2022/lib/layer/shared/layers/linked/linked-layer.interface.mjs +12 -0
- package/esm2022/lib/layer/shared/layers/linked/linked-layer.mjs +242 -0
- package/esm2022/lib/layer/shared/layers/linked/linked-layer.utils.mjs +70 -0
- package/esm2022/lib/layer/shared/layers/tile-layer.interface.mjs +2 -0
- package/esm2022/lib/layer/shared/layers/tile-layer.mjs +55 -0
- package/esm2022/lib/layer/shared/layers/vector-layer.interface.mjs +2 -0
- package/esm2022/lib/layer/shared/layers/vector-layer.mjs +576 -0
- package/esm2022/lib/layer/shared/layers/vectortile-layer.interface.mjs +2 -0
- package/esm2022/lib/layer/shared/layers/vectortile-layer.mjs +112 -0
- package/esm2022/lib/layer/track-feature-button/index.mjs +2 -0
- package/esm2022/lib/layer/track-feature-button/track-feature-button.component.mjs +54 -0
- package/esm2022/lib/layer/utils/image-watcher.mjs +62 -0
- package/esm2022/lib/layer/utils/index.mjs +6 -0
- package/esm2022/lib/layer/utils/layer.utils.mjs +57 -0
- package/esm2022/lib/layer/utils/outputLegend.mjs +32 -0
- package/esm2022/lib/layer/utils/tile-watcher.mjs +52 -0
- package/esm2022/lib/layer/utils/vector-watcher.mjs +50 -0
- package/esm2022/lib/map/baselayers-switcher/baselayers-switcher.animation.mjs +20 -0
- package/esm2022/lib/map/baselayers-switcher/baselayers-switcher.component.mjs +87 -0
- package/esm2022/lib/map/baselayers-switcher/index.mjs +3 -0
- package/esm2022/lib/map/baselayers-switcher/mini-basemap.component.mjs +122 -0
- package/esm2022/lib/map/geolocate-button/geolocate-button.component.mjs +78 -0
- package/esm2022/lib/map/geolocate-button/index.mjs +2 -0
- package/esm2022/lib/map/home-extent-button/home-extent-button.component.mjs +73 -0
- package/esm2022/lib/map/home-extent-button/home-extent-button.interface.mjs +2 -0
- package/esm2022/lib/map/home-extent-button/index.mjs +3 -0
- package/esm2022/lib/map/index.mjs +14 -0
- package/esm2022/lib/map/info-section/index.mjs +2 -0
- package/esm2022/lib/map/info-section/info-section.component.mjs +15 -0
- package/esm2022/lib/map/map-browser/index.mjs +2 -0
- package/esm2022/lib/map/map-browser/map-browser.component.mjs +67 -0
- package/esm2022/lib/map/map-center/index.mjs +2 -0
- package/esm2022/lib/map/map-center/map-center.component.mjs +56 -0
- package/esm2022/lib/map/map.module.mjs +89 -0
- package/esm2022/lib/map/menu-button/index.mjs +2 -0
- package/esm2022/lib/map/menu-button/menu-button.component.mjs +57 -0
- package/esm2022/lib/map/offline-button/index.mjs +2 -0
- package/esm2022/lib/map/offline-button/offline-button.component.mjs +53 -0
- package/esm2022/lib/map/rotation-button/index.mjs +2 -0
- package/esm2022/lib/map/rotation-button/rotation-button.component.mjs +58 -0
- package/esm2022/lib/map/shared/controllers/controller.mjs +44 -0
- package/esm2022/lib/map/shared/controllers/geolocation.interface.mjs +8 -0
- package/esm2022/lib/map/shared/controllers/geolocation.mjs +431 -0
- package/esm2022/lib/map/shared/controllers/index.mjs +5 -0
- package/esm2022/lib/map/shared/controllers/view.mjs +361 -0
- package/esm2022/lib/map/shared/hover-feature.directive.mjs +481 -0
- package/esm2022/lib/map/shared/index.mjs +15 -0
- package/esm2022/lib/map/shared/linkedLayers.utils.mjs +238 -0
- package/esm2022/lib/map/shared/map-pointer-position.directive.mjs +122 -0
- package/esm2022/lib/map/shared/map.abstract.mjs +24 -0
- package/esm2022/lib/map/shared/map.enums.mjs +6 -0
- package/esm2022/lib/map/shared/map.interface.mjs +2 -0
- package/esm2022/lib/map/shared/map.mjs +201 -0
- package/esm2022/lib/map/shared/map.service.mjs +29 -0
- package/esm2022/lib/map/shared/map.utils.mjs +455 -0
- package/esm2022/lib/map/shared/mapOffline.directive.mjs +114 -0
- package/esm2022/lib/map/shared/projection.interfaces.mjs +2 -0
- package/esm2022/lib/map/shared/projection.service.mjs +67 -0
- package/esm2022/lib/map/shared/projection.utils.mjs +122 -0
- package/esm2022/lib/map/swipe-control/index.mjs +2 -0
- package/esm2022/lib/map/swipe-control/swipe-control.component.mjs +211 -0
- package/esm2022/lib/map/utils/index.mjs +2 -0
- package/esm2022/lib/map/utils/layer-watcher.mjs +112 -0
- package/esm2022/lib/map/wake-lock-button/index.mjs +2 -0
- package/esm2022/lib/map/wake-lock-button/wake-lock-button.component.mjs +103 -0
- package/esm2022/lib/map/zoom-button/index.mjs +2 -0
- package/esm2022/lib/map/zoom-button/zoom-button.component.mjs +35 -0
- package/esm2022/lib/measure/index.mjs +3 -0
- package/esm2022/lib/measure/measure.module.mjs +20 -0
- package/esm2022/lib/measure/measurer/index.mjs +6 -0
- package/esm2022/lib/measure/measurer/measure-format.pipe.mjs +40 -0
- package/esm2022/lib/measure/measurer/measurer-dialog.component.mjs +38 -0
- package/esm2022/lib/measure/measurer/measurer-item.component.mjs +143 -0
- package/esm2022/lib/measure/measurer/measurer.component.mjs +948 -0
- package/esm2022/lib/measure/measurer/measurer.module.mjs +20 -0
- package/esm2022/lib/measure/shared/index.mjs +4 -0
- package/esm2022/lib/measure/shared/measure.enum.mjs +37 -0
- package/esm2022/lib/measure/shared/measure.interfaces.mjs +2 -0
- package/esm2022/lib/measure/shared/measure.utils.mjs +497 -0
- package/esm2022/lib/metadata/index.mjs +4 -0
- package/esm2022/lib/metadata/metadata-button/index.mjs +2 -0
- package/esm2022/lib/metadata/metadata-button/metadata-button.component.mjs +96 -0
- package/esm2022/lib/metadata/metadata.module.mjs +29 -0
- package/esm2022/lib/metadata/shared/index.mjs +3 -0
- package/esm2022/lib/metadata/shared/metadata.interface.mjs +2 -0
- package/esm2022/lib/metadata/shared/metadata.service.mjs +18 -0
- package/esm2022/lib/offline/geoDB/configFileToGeoDB.service.mjs +130 -0
- package/esm2022/lib/offline/geoDB/geoDB.enums.mjs +6 -0
- package/esm2022/lib/offline/geoDB/geoDB.interface.mjs +2 -0
- package/esm2022/lib/offline/geoDB/geoDB.service.mjs +172 -0
- package/esm2022/lib/offline/geoDB/index.mjs +5 -0
- package/esm2022/lib/offline/index.mjs +6 -0
- package/esm2022/lib/offline/layerDB/index.mjs +3 -0
- package/esm2022/lib/offline/layerDB/layerDB.interface.mjs +2 -0
- package/esm2022/lib/offline/layerDB/layerDB.service.mjs +83 -0
- package/esm2022/lib/offline/offline.interface.mjs +2 -0
- package/esm2022/lib/offline/offline.provider.mjs +50 -0
- package/esm2022/lib/offline/shared/geo-network.service.mjs +79 -0
- package/esm2022/lib/offline/shared/index.mjs +2 -0
- package/esm2022/lib/overlay/index.mjs +2 -0
- package/esm2022/lib/overlay/shared/index.mjs +4 -0
- package/esm2022/lib/overlay/shared/overlay.enum.mjs +8 -0
- package/esm2022/lib/overlay/shared/overlay.mjs +139 -0
- package/esm2022/lib/overlay/shared/overlay.utils.mjs +17 -0
- package/esm2022/lib/print/index.mjs +4 -0
- package/esm2022/lib/print/print/print.component.mjs +116 -0
- package/esm2022/lib/print/print-form/index.mjs +2 -0
- package/esm2022/lib/print/print-form/print-form.component.mjs +320 -0
- package/esm2022/lib/print/print.module.mjs +20 -0
- package/esm2022/lib/print/shared/geopdf.mjs +68 -0
- package/esm2022/lib/print/shared/index.mjs +5 -0
- package/esm2022/lib/print/shared/print.interface.mjs +2 -0
- package/esm2022/lib/print/shared/print.service.mjs +1136 -0
- package/esm2022/lib/print/shared/print.type.mjs +30 -0
- package/esm2022/lib/query/index.mjs +2 -0
- package/esm2022/lib/query/query.module.mjs +27 -0
- package/esm2022/lib/query/shared/index.mjs +8 -0
- package/esm2022/lib/query/shared/query-search-source.mjs +35 -0
- package/esm2022/lib/query/shared/query-search-source.providers.mjs +22 -0
- package/esm2022/lib/query/shared/query.directive.mjs +290 -0
- package/esm2022/lib/query/shared/query.enums.mjs +32 -0
- package/esm2022/lib/query/shared/query.interfaces.mjs +2 -0
- package/esm2022/lib/query/shared/query.service.mjs +753 -0
- package/esm2022/lib/query/shared/query.utils.mjs +45 -0
- package/esm2022/lib/search/index.mjs +10 -0
- package/esm2022/lib/search/search-bar/search-bar.component.mjs +483 -0
- package/esm2022/lib/search/search-bar/search-bar.module.mjs +19 -0
- package/esm2022/lib/search/search-results/index.mjs +5 -0
- package/esm2022/lib/search/search-results/save-feature-dialog.component.mjs +101 -0
- package/esm2022/lib/search/search-results/search-results-add-button.component.mjs +433 -0
- package/esm2022/lib/search/search-results/search-results-item.component.mjs +119 -0
- package/esm2022/lib/search/search-results/search-results.component.mjs +297 -0
- package/esm2022/lib/search/search-results/search-results.directive.mjs +7 -0
- package/esm2022/lib/search/search-results/search-results.module.mjs +20 -0
- package/esm2022/lib/search/search-selector/search-selector.component.mjs +118 -0
- package/esm2022/lib/search/search-selector/search-selector.module.mjs +19 -0
- package/esm2022/lib/search/search-settings/search-settings.component.mjs +264 -0
- package/esm2022/lib/search/search-settings/search-settings.module.mjs +19 -0
- package/esm2022/lib/search/search.module.mjs +77 -0
- package/esm2022/lib/search/shared/index.mjs +10 -0
- package/esm2022/lib/search/shared/search-pointer-summary.directive.mjs +328 -0
- package/esm2022/lib/search/shared/search-source-service.providers.mjs +20 -0
- package/esm2022/lib/search/shared/search-source.service.mjs +56 -0
- package/esm2022/lib/search/shared/search.enums.mjs +4 -0
- package/esm2022/lib/search/shared/search.interfaces.mjs +2 -0
- package/esm2022/lib/search/shared/search.provider.mjs +20 -0
- package/esm2022/lib/search/shared/search.service.mjs +149 -0
- package/esm2022/lib/search/shared/search.utils.mjs +92 -0
- package/esm2022/lib/search/shared/sources/cadastre.mjs +142 -0
- package/esm2022/lib/search/shared/sources/cadastre.providers.mjs +32 -0
- package/esm2022/lib/search/shared/sources/coordinates.interfaces.mjs +2 -0
- package/esm2022/lib/search/shared/sources/coordinates.mjs +168 -0
- package/esm2022/lib/search/shared/sources/coordinates.providers.mjs +52 -0
- package/esm2022/lib/search/shared/sources/icherche-icons.mjs +32 -0
- package/esm2022/lib/search/shared/sources/icherche.interfaces.mjs +2 -0
- package/esm2022/lib/search/shared/sources/icherche.mjs +816 -0
- package/esm2022/lib/search/shared/sources/icherche.providers.mjs +87 -0
- package/esm2022/lib/search/shared/sources/ilayer.interfaces.mjs +2 -0
- package/esm2022/lib/search/shared/sources/ilayer.mjs +339 -0
- package/esm2022/lib/search/shared/sources/ilayer.providers.mjs +58 -0
- package/esm2022/lib/search/shared/sources/index.mjs +23 -0
- package/esm2022/lib/search/shared/sources/nominatim.interfaces.mjs +2 -0
- package/esm2022/lib/search/shared/sources/nominatim.mjs +263 -0
- package/esm2022/lib/search/shared/sources/nominatim.providers.mjs +31 -0
- package/esm2022/lib/search/shared/sources/source.interfaces.mjs +13 -0
- package/esm2022/lib/search/shared/sources/source.mjs +221 -0
- package/esm2022/lib/search/shared/sources/storedqueries.interfaces.mjs +2 -0
- package/esm2022/lib/search/shared/sources/storedqueries.mjs +454 -0
- package/esm2022/lib/search/shared/sources/storedqueries.providers.mjs +56 -0
- package/esm2022/lib/search/shared/sources/workspace.interfaces.mjs +2 -0
- package/esm2022/lib/search/shared/sources/workspace.mjs +192 -0
- package/esm2022/lib/search/shared/sources/workspace.providers.mjs +31 -0
- package/esm2022/lib/style/index.mjs +5 -0
- package/esm2022/lib/style/shared/datasource/esri-style-generator.mjs +360 -0
- package/esm2022/lib/style/shared/datasource/index.mjs +2 -0
- package/esm2022/lib/style/shared/feature/feature-style.mjs +162 -0
- package/esm2022/lib/style/shared/feature/index.mjs +2 -0
- package/esm2022/lib/style/shared/font.enum.mjs +17 -0
- package/esm2022/lib/style/shared/index.mjs +5 -0
- package/esm2022/lib/style/shared/overlay/index.mjs +3 -0
- package/esm2022/lib/style/shared/overlay/overlay-marker-style.utils.mjs +39 -0
- package/esm2022/lib/style/shared/overlay/overlay-style.utils.mjs +88 -0
- package/esm2022/lib/style/shared/vector/commonVectorStyle.mjs +78 -0
- package/esm2022/lib/style/shared/vector/conversion.utils.mjs +27 -0
- package/esm2022/lib/style/shared/vector/index.mjs +4 -0
- package/esm2022/lib/style/shared/vector/vector-style.interface.mjs +2 -0
- package/esm2022/lib/style/style-list/index.mjs +5 -0
- package/esm2022/lib/style/style-list/style-list.interface.mjs +2 -0
- package/esm2022/lib/style/style-list/style-list.module.mjs +23 -0
- package/esm2022/lib/style/style-list/style-list.provider.mjs +21 -0
- package/esm2022/lib/style/style-list/style-list.service.mjs +52 -0
- package/esm2022/lib/style/style-modal/drawing/index.mjs +2 -0
- package/esm2022/lib/style/style-modal/drawing/style-modal-drawing.component.mjs +193 -0
- package/esm2022/lib/style/style-modal/index.mjs +5 -0
- package/esm2022/lib/style/style-modal/layer/index.mjs +2 -0
- package/esm2022/lib/style/style-modal/layer/style-modal-layer.component.mjs +142 -0
- package/esm2022/lib/style/style-modal/layer-button/index.mjs +2 -0
- package/esm2022/lib/style/style-modal/layer-button/style-modal-layer-button.component.mjs +44 -0
- package/esm2022/lib/style/style-modal/shared/index.mjs +2 -0
- package/esm2022/lib/style/style-modal/shared/style-modal.interface.mjs +2 -0
- package/esm2022/lib/style/style-service/draw-style.service.mjs +255 -0
- package/esm2022/lib/style/style-service/index.mjs +3 -0
- package/esm2022/lib/style/style-service/style.service.mjs +393 -0
- package/esm2022/lib/style/style.module.mjs +46 -0
- package/esm2022/lib/toast/index.mjs +2 -0
- package/esm2022/lib/toast/toast.component.mjs +99 -0
- package/esm2022/lib/toast/toast.module.mjs +24 -0
- package/esm2022/lib/utils/googleLinks.mjs +13 -0
- package/esm2022/lib/utils/id-generator.mjs +112 -0
- package/esm2022/lib/utils/index.mjs +5 -0
- package/esm2022/lib/utils/osmLinks.mjs +9 -0
- package/esm2022/lib/utils/propertyTypeDetector/index.mjs +3 -0
- package/esm2022/lib/utils/propertyTypeDetector/propertyTypeDetector.interface.mjs +2 -0
- package/esm2022/lib/utils/propertyTypeDetector/propertyTypeDetector.service.mjs +64 -0
- package/esm2022/lib/wkt/index.mjs +2 -0
- package/esm2022/lib/wkt/shared/index.mjs +2 -0
- package/esm2022/lib/wkt/shared/wkt.service.mjs +235 -0
- package/esm2022/lib/wkt/wkt.module.mjs +25 -0
- package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.component.mjs +36 -0
- package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.module.mjs +19 -0
- package/esm2022/lib/workspace/confirmation-popup/index.mjs +3 -0
- package/esm2022/lib/workspace/index.mjs +8 -0
- package/esm2022/lib/workspace/shared/edition-workspace.mjs +301 -0
- package/esm2022/lib/workspace/shared/edition-workspace.service.mjs +720 -0
- package/esm2022/lib/workspace/shared/feature-workspace.mjs +41 -0
- package/esm2022/lib/workspace/shared/feature-workspace.service.mjs +113 -0
- package/esm2022/lib/workspace/shared/index.mjs +8 -0
- package/esm2022/lib/workspace/shared/wfs-workspace.mjs +41 -0
- package/esm2022/lib/workspace/shared/wfs-workspace.service.mjs +121 -0
- package/esm2022/lib/workspace/shared/wms-workspace.service.mjs +248 -0
- package/esm2022/lib/workspace/shared/workspace.utils.mjs +188 -0
- package/esm2022/lib/workspace/widgets/index.mjs +4 -0
- package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.component.mjs +48 -0
- package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.module.mjs +19 -0
- package/esm2022/lib/workspace/widgets/widgets.mjs +15 -0
- package/esm2022/lib/workspace/workspace-selector/workspace-selector.directive.mjs +172 -0
- package/esm2022/lib/workspace/workspace-selector/workspace-selector.module.mjs +19 -0
- package/esm2022/lib/workspace/workspace-updator/workspace-updator.directive.mjs +137 -0
- package/esm2022/lib/workspace/workspace-updator/workspace-updator.module.mjs +19 -0
- package/esm2022/lib/workspace/workspace.module.mjs +32 -0
- package/esm2022/public_api.mjs +56 -0
- package/fesm2022/igo2-geo.mjs +717 -691
- package/fesm2022/igo2-geo.mjs.map +1 -1
- package/lib/datasource/shared/datasources/datasource.d.ts +2 -2
- package/lib/directions/shared/directions.service.d.ts +0 -1
- package/lib/offline/geoDB/geoDB.service.d.ts +1 -1
- package/lib/offline/layerDB/layerDB.service.d.ts +1 -1
- package/lib/style/style-list/style-list.provider.d.ts +8 -1
- package/lib/style/style-list/style-list.service.d.ts +1 -1
- package/package.json +16 -14
- package/src/lib/layer/layer-list/layer-list.theme.scss +1 -2
- package/src/lib/map/menu-button/menu-button.theming.scss +3 -3
- package/src/style/style.scss +1 -1
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { AsyncPipe, NgFor, NgIf } from '@angular/common';
|
|
2
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
|
|
3
|
+
import { MatDividerModule } from '@angular/material/divider';
|
|
4
|
+
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
|
|
5
|
+
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
6
|
+
import { ListComponent, ListItemDirective } from '@igo2/common/list';
|
|
7
|
+
import { IgoLanguageModule } from '@igo2/core/language';
|
|
8
|
+
import { BehaviorSubject, EMPTY, ReplaySubject, timer } from 'rxjs';
|
|
9
|
+
import { debounce } from 'rxjs/operators';
|
|
10
|
+
import { LayerLegendItemComponent } from '../layer-legend-item/layer-legend-item.component';
|
|
11
|
+
import { isBaseLayer, isLayerItem, sortLayersByZindex } from '../utils';
|
|
12
|
+
import * as i0 from "@angular/core";
|
|
13
|
+
import * as i1 from "@angular/material/slide-toggle";
|
|
14
|
+
import * as i2 from "@angular/material/tooltip";
|
|
15
|
+
import * as i3 from "@angular/material/divider";
|
|
16
|
+
import * as i4 from "@ngx-translate/core";
|
|
17
|
+
export class LayerLegendListComponent {
|
|
18
|
+
orderable = true;
|
|
19
|
+
hasVisibleOrInRangeLayers$ = new BehaviorSubject(true);
|
|
20
|
+
hasVisibleAndNotInRangeLayers$ = new BehaviorSubject(true);
|
|
21
|
+
layersInUi$ = new BehaviorSubject([]);
|
|
22
|
+
layers$ = new BehaviorSubject([]);
|
|
23
|
+
showAllLegend = false;
|
|
24
|
+
change$ = new ReplaySubject(1);
|
|
25
|
+
change$$;
|
|
26
|
+
layers;
|
|
27
|
+
excludeBaseLayers = false;
|
|
28
|
+
updateLegendOnResolutionChange = false;
|
|
29
|
+
allowShowAllLegends = false;
|
|
30
|
+
showAllLegendsValue = false;
|
|
31
|
+
allLegendsShown = new EventEmitter(false);
|
|
32
|
+
isLayerItem = isLayerItem;
|
|
33
|
+
ngOnInit() {
|
|
34
|
+
this.change$$ = this.change$
|
|
35
|
+
.pipe(debounce(() => {
|
|
36
|
+
return this.layers.length === 0 ? EMPTY : timer(50);
|
|
37
|
+
}))
|
|
38
|
+
.subscribe(() => {
|
|
39
|
+
const layers = this.computeShownLayers(this.layers.slice(0));
|
|
40
|
+
this.layers$.next(layers);
|
|
41
|
+
this.hasVisibleOrInRangeLayers$.next(this.layers
|
|
42
|
+
.slice(0)
|
|
43
|
+
.filter((layer) => !isBaseLayer(layer))
|
|
44
|
+
.filter((layer) => layer.displayed).length > 0);
|
|
45
|
+
this.hasVisibleAndNotInRangeLayers$.next(this.layers
|
|
46
|
+
.slice(0)
|
|
47
|
+
.filter((layer) => !isBaseLayer(layer))
|
|
48
|
+
.filter((layer) => layer.visible && !layer.isInResolutionsRange)
|
|
49
|
+
.length > 0);
|
|
50
|
+
this.layersInUi$.next(this.layers
|
|
51
|
+
.slice(0)
|
|
52
|
+
.filter((layer) => layer.showInLayerList !== false &&
|
|
53
|
+
(!this.excludeBaseLayers || !isBaseLayer(layer))));
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
ngOnDestroy() {
|
|
57
|
+
this.change$$.unsubscribe();
|
|
58
|
+
}
|
|
59
|
+
next() {
|
|
60
|
+
this.change$.next();
|
|
61
|
+
}
|
|
62
|
+
computeShownLayers(layers) {
|
|
63
|
+
let shownLayers = layers.filter((layer) => layer.displayed);
|
|
64
|
+
if (this.showAllLegendsValue) {
|
|
65
|
+
shownLayers = layers;
|
|
66
|
+
}
|
|
67
|
+
return sortLayersByZindex(shownLayers, 'desc');
|
|
68
|
+
}
|
|
69
|
+
toggleShowAllLegends(toggle) {
|
|
70
|
+
this.showAllLegendsValue = toggle;
|
|
71
|
+
this.next();
|
|
72
|
+
this.allLegendsShown.emit(toggle);
|
|
73
|
+
}
|
|
74
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LayerLegendListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
75
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: LayerLegendListComponent, isStandalone: true, selector: "igo-layer-legend-list", inputs: { layers: "layers", excludeBaseLayers: "excludeBaseLayers", updateLegendOnResolutionChange: "updateLegendOnResolutionChange", allowShowAllLegends: "allowShowAllLegends", showAllLegendsValue: "showAllLegendsValue" }, outputs: { allLegendsShown: "allLegendsShown" }, ngImport: i0, template: "<div class=\"layer-legend-list-container\">\n <mat-slide-toggle\n tooltip-position=\"above\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.layer.legend.showAll' | translate\"\n [checked]=\"showAllLegendsValue\"\n class=\"mat-typography\"\n *ngIf=\"(layersInUi$ | async).length && allowShowAllLegends\"\n [labelPosition]=\"'before'\"\n (change)=\"toggleShowAllLegends($event.checked)\"\n >\n {{ 'igo.geo.layer.legend.showAll' | translate }}\n </mat-slide-toggle>\n <mat-divider\n *ngIf=\"(layersInUi$ | async).length && allowShowAllLegends\"\n ></mat-divider>\n <igo-list [navigation]=\"false\" [selection]=\"false\">\n <ng-template ngFor let-layer let-i=\"index\" [ngForOf]=\"layers$ | async\">\n <igo-layer-legend-item\n *ngIf=\"!(excludeBaseLayers && isLayerItem(layer) && layer.baseLayer)\"\n igoListItem\n [layer]=\"$any(layer)\"\n [updateLegendOnResolutionChange]=\"updateLegendOnResolutionChange\"\n >\n </igo-layer-legend-item>\n </ng-template>\n </igo-list>\n <p\n class=\"layers-empty mat-typography\"\n *ngIf=\"\n !showAllLegendsValue &&\n (layersInUi$ | async).length &&\n (hasVisibleOrInRangeLayers$ | async) === false &&\n (hasVisibleAndNotInRangeLayers$ | async) === false &&\n allowShowAllLegends\n \"\n >\n {{ 'igo.geo.layer.legend.noLayersVisibleWithShowAllButton' | translate }}\n </p>\n <p\n class=\"layers-empty mat-typography\"\n *ngIf=\"\n !showAllLegendsValue &&\n (layersInUi$ | async).length &&\n (hasVisibleOrInRangeLayers$ | async) === false &&\n (hasVisibleAndNotInRangeLayers$ | async) &&\n allowShowAllLegends\n \"\n >\n {{\n 'igo.geo.layer.legend.noLayersVisibleWithShowAllButtonButZoom' | translate\n }}\n </p>\n <p\n class=\"layers-empty mat-typography\"\n *ngIf=\"\n (layersInUi$ | async).length &&\n (hasVisibleOrInRangeLayers$ | async) === false &&\n (hasVisibleAndNotInRangeLayers$ | async) === false &&\n !allowShowAllLegends\n \"\n >\n {{ 'igo.geo.layer.legend.noLayersVisible' | translate }}\n </p>\n <p\n class=\"layers-empty mat-typography\"\n *ngIf=\"\n (layersInUi$ | async).length &&\n (hasVisibleOrInRangeLayers$ | async) === false &&\n (hasVisibleAndNotInRangeLayers$ | async) &&\n !allowShowAllLegends\n \"\n >\n {{ 'igo.geo.layer.legend.noLayersVisibleButZoom' | translate }}\n </p>\n</div>\n", styles: [":host mat-slide-toggle{width:100%;padding:10px}:host mat-slide-toggle ::ng-deep .mdc-form-field{width:100%}:host mat-slide-toggle ::ng-deep .mdc-label{margin-left:0;width:calc(100% - 60px)}:host igo-list{display:contents}:host .layers-empty{text-align:justify;margin:10px}:host .layer-legend-list-container{max-height:100%;overflow:auto}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatSlideToggleModule }, { kind: "component", type: i1.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["name", "id", "labelPosition", "aria-label", "aria-labelledby", "aria-describedby", "required", "color", "disabled", "disableRipple", "tabIndex", "checked", "hideIcon", "disabledInteractive"], outputs: ["change", "toggleChange"], exportAs: ["matSlideToggle"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatDividerModule }, { kind: "component", type: i3.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: ListComponent, selector: "igo-list", inputs: ["navigation", "selection"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: LayerLegendItemComponent, selector: "igo-layer-legend-item", inputs: ["layer", "updateLegendOnResolutionChange"] }, { kind: "directive", type: ListItemDirective, selector: "[igoListItem]", inputs: ["color", "focused", "selected", "disabled"], outputs: ["beforeSelect", "beforeFocus", "beforeUnselect", "beforeUnfocus", "beforeDisable", "beforeEnable", "focus", "unfocus", "select", "unselect", "disable", "enable"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
76
|
+
}
|
|
77
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LayerLegendListComponent, decorators: [{
|
|
78
|
+
type: Component,
|
|
79
|
+
args: [{ selector: 'igo-layer-legend-list', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
80
|
+
NgIf,
|
|
81
|
+
MatSlideToggleModule,
|
|
82
|
+
MatTooltipModule,
|
|
83
|
+
MatDividerModule,
|
|
84
|
+
ListComponent,
|
|
85
|
+
NgFor,
|
|
86
|
+
LayerLegendItemComponent,
|
|
87
|
+
ListItemDirective,
|
|
88
|
+
AsyncPipe,
|
|
89
|
+
IgoLanguageModule
|
|
90
|
+
], template: "<div class=\"layer-legend-list-container\">\n <mat-slide-toggle\n tooltip-position=\"above\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.layer.legend.showAll' | translate\"\n [checked]=\"showAllLegendsValue\"\n class=\"mat-typography\"\n *ngIf=\"(layersInUi$ | async).length && allowShowAllLegends\"\n [labelPosition]=\"'before'\"\n (change)=\"toggleShowAllLegends($event.checked)\"\n >\n {{ 'igo.geo.layer.legend.showAll' | translate }}\n </mat-slide-toggle>\n <mat-divider\n *ngIf=\"(layersInUi$ | async).length && allowShowAllLegends\"\n ></mat-divider>\n <igo-list [navigation]=\"false\" [selection]=\"false\">\n <ng-template ngFor let-layer let-i=\"index\" [ngForOf]=\"layers$ | async\">\n <igo-layer-legend-item\n *ngIf=\"!(excludeBaseLayers && isLayerItem(layer) && layer.baseLayer)\"\n igoListItem\n [layer]=\"$any(layer)\"\n [updateLegendOnResolutionChange]=\"updateLegendOnResolutionChange\"\n >\n </igo-layer-legend-item>\n </ng-template>\n </igo-list>\n <p\n class=\"layers-empty mat-typography\"\n *ngIf=\"\n !showAllLegendsValue &&\n (layersInUi$ | async).length &&\n (hasVisibleOrInRangeLayers$ | async) === false &&\n (hasVisibleAndNotInRangeLayers$ | async) === false &&\n allowShowAllLegends\n \"\n >\n {{ 'igo.geo.layer.legend.noLayersVisibleWithShowAllButton' | translate }}\n </p>\n <p\n class=\"layers-empty mat-typography\"\n *ngIf=\"\n !showAllLegendsValue &&\n (layersInUi$ | async).length &&\n (hasVisibleOrInRangeLayers$ | async) === false &&\n (hasVisibleAndNotInRangeLayers$ | async) &&\n allowShowAllLegends\n \"\n >\n {{\n 'igo.geo.layer.legend.noLayersVisibleWithShowAllButtonButZoom' | translate\n }}\n </p>\n <p\n class=\"layers-empty mat-typography\"\n *ngIf=\"\n (layersInUi$ | async).length &&\n (hasVisibleOrInRangeLayers$ | async) === false &&\n (hasVisibleAndNotInRangeLayers$ | async) === false &&\n !allowShowAllLegends\n \"\n >\n {{ 'igo.geo.layer.legend.noLayersVisible' | translate }}\n </p>\n <p\n class=\"layers-empty mat-typography\"\n *ngIf=\"\n (layersInUi$ | async).length &&\n (hasVisibleOrInRangeLayers$ | async) === false &&\n (hasVisibleAndNotInRangeLayers$ | async) &&\n !allowShowAllLegends\n \"\n >\n {{ 'igo.geo.layer.legend.noLayersVisibleButZoom' | translate }}\n </p>\n</div>\n", styles: [":host mat-slide-toggle{width:100%;padding:10px}:host mat-slide-toggle ::ng-deep .mdc-form-field{width:100%}:host mat-slide-toggle ::ng-deep .mdc-label{margin-left:0;width:calc(100% - 60px)}:host igo-list{display:contents}:host .layers-empty{text-align:justify;margin:10px}:host .layer-legend-list-container{max-height:100%;overflow:auto}\n"] }]
|
|
91
|
+
}], propDecorators: { layers: [{
|
|
92
|
+
type: Input
|
|
93
|
+
}], excludeBaseLayers: [{
|
|
94
|
+
type: Input
|
|
95
|
+
}], updateLegendOnResolutionChange: [{
|
|
96
|
+
type: Input
|
|
97
|
+
}], allowShowAllLegends: [{
|
|
98
|
+
type: Input
|
|
99
|
+
}], showAllLegendsValue: [{
|
|
100
|
+
type: Input
|
|
101
|
+
}], allLegendsShown: [{
|
|
102
|
+
type: Output
|
|
103
|
+
}] } });
|
|
104
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXItbGVnZW5kLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvbGF5ZXIvbGF5ZXItbGVnZW5kLWxpc3QvbGF5ZXItbGVnZW5kLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvbGF5ZXIvbGF5ZXItbGVnZW5kLWxpc3QvbGF5ZXItbGVnZW5kLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXhELE9BQU8sRUFDTCxlQUFlLEVBQ2YsS0FBSyxFQUNMLGFBQWEsRUFFYixLQUFLLEVBQ04sTUFBTSxNQUFNLENBQUM7QUFDZCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFMUMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFFNUYsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxVQUFVLENBQUM7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O3NCQUEzQixLQUFLO2dCQUVJLGVBQWU7c0JBQXhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBc3luY1BpcGUsIE5nRm9yLCBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaXZpZGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGl2aWRlcic7XG5pbXBvcnQgeyBNYXRTbGlkZVRvZ2dsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NsaWRlLXRvZ2dsZSc7XG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XG5cbmltcG9ydCB7IExpc3RDb21wb25lbnQsIExpc3RJdGVtRGlyZWN0aXZlIH0gZnJvbSAnQGlnbzIvY29tbW9uL2xpc3QnO1xuaW1wb3J0IHsgSWdvTGFuZ3VhZ2VNb2R1bGUgfSBmcm9tICdAaWdvMi9jb3JlL2xhbmd1YWdlJztcblxuaW1wb3J0IHtcbiAgQmVoYXZpb3JTdWJqZWN0LFxuICBFTVBUWSxcbiAgUmVwbGF5U3ViamVjdCxcbiAgU3Vic2NyaXB0aW9uLFxuICB0aW1lclxufSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBMYXllckxlZ2VuZEl0ZW1Db21wb25lbnQgfSBmcm9tICcuLi9sYXllci1sZWdlbmQtaXRlbS9sYXllci1sZWdlbmQtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQW55TGF5ZXIgfSBmcm9tICcuLi9zaGFyZWQvbGF5ZXJzL2FueS1sYXllcic7XG5pbXBvcnQgeyBpc0Jhc2VMYXllciwgaXNMYXllckl0ZW0sIHNvcnRMYXllcnNCeVppbmRleCB9IGZyb20gJy4uL3V0aWxzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaWdvLWxheWVyLWxlZ2VuZC1saXN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xheWVyLWxlZ2VuZC1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbGF5ZXItbGVnZW5kLWxpc3QuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBOZ0lmLFxuICAgIE1hdFNsaWRlVG9nZ2xlTW9kdWxlLFxuICAgIE1hdFRvb2x0aXBNb2R1bGUsXG4gICAgTWF0RGl2aWRlck1vZHVsZSxcbiAgICBMaXN0Q29tcG9uZW50LFxuICAgIE5nRm9yLFxuICAgIExheWVyTGVnZW5kSXRlbUNvbXBvbmVudCxcbiAgICBMaXN0SXRlbURpcmVjdGl2ZSxcbiAgICBBc3luY1BpcGUsXG4gICAgSWdvTGFuZ3VhZ2VNb2R1bGVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBMYXllckxlZ2VuZExpc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIG9yZGVyYWJsZSA9IHRydWU7XG4gIGhhc1Zpc2libGVPckluUmFuZ2VMYXllcnMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKTtcbiAgaGFzVmlzaWJsZUFuZE5vdEluUmFuZ2VMYXllcnMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKTtcbiAgbGF5ZXJzSW5VaSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEFueUxheWVyW10+KFtdKTtcbiAgbGF5ZXJzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QW55TGF5ZXJbXT4oW10pO1xuICBzaG93QWxsTGVnZW5kID0gZmFsc2U7XG5cbiAgcHVibGljIGNoYW5nZSQgPSBuZXcgUmVwbGF5U3ViamVjdDx2b2lkPigxKTtcbiAgcHJpdmF0ZSBjaGFuZ2UkJDogU3Vic2NyaXB0aW9uO1xuXG4gIEBJbnB1dCgpIGxheWVyczogQW55TGF5ZXJbXTtcblxuICBASW5wdXQoKSBleGNsdWRlQmFzZUxheWVycyA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpIHVwZGF0ZUxlZ2VuZE9uUmVzb2x1dGlvbkNoYW5nZSA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpIGFsbG93U2hvd0FsbExlZ2VuZHMgPSBmYWxzZTtcblxuICBASW5wdXQoKSBzaG93QWxsTGVnZW5kc1ZhbHVlID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpIGFsbExlZ2VuZHNTaG93biA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIGlzTGF5ZXJJdGVtID0gaXNMYXllckl0ZW07XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jaGFuZ2UkJCA9IHRoaXMuY2hhbmdlJFxuICAgICAgLnBpcGUoXG4gICAgICAgIGRlYm91bmNlKCgpID0+IHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5sYXllcnMubGVuZ3RoID09PSAwID8gRU1QVFkgOiB0aW1lcig1MCk7XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgY29uc3QgbGF5ZXJzID0gdGhpcy5jb21wdXRlU2hvd25MYXllcnModGhpcy5sYXllcnMuc2xpY2UoMCkpO1xuICAgICAgICB0aGlzLmxheWVycyQubmV4dChsYXllcnMpO1xuICAgICAgICB0aGlzLmhhc1Zpc2libGVPckluUmFuZ2VMYXllcnMkLm5leHQoXG4gICAgICAgICAgdGhpcy5sYXllcnNcbiAgICAgICAgICAgIC5zbGljZSgwKVxuICAgICAgICAgICAgLmZpbHRlcigobGF5ZXIpID0+ICFpc0Jhc2VMYXllcihsYXllcikpXG4gICAgICAgICAgICAuZmlsdGVyKChsYXllcikgPT4gbGF5ZXIuZGlzcGxheWVkKS5sZW5ndGggPiAwXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuaGFzVmlzaWJsZUFuZE5vdEluUmFuZ2VMYXllcnMkLm5leHQoXG4gICAgICAgICAgdGhpcy5sYXllcnNcbiAgICAgICAgICAgIC5zbGljZSgwKVxuICAgICAgICAgICAgLmZpbHRlcigobGF5ZXIpID0+ICFpc0Jhc2VMYXllcihsYXllcikpXG4gICAgICAgICAgICAuZmlsdGVyKChsYXllcikgPT4gbGF5ZXIudmlzaWJsZSAmJiAhbGF5ZXIuaXNJblJlc29sdXRpb25zUmFuZ2UpXG4gICAgICAgICAgICAubGVuZ3RoID4gMFxuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMubGF5ZXJzSW5VaSQubmV4dChcbiAgICAgICAgICB0aGlzLmxheWVyc1xuICAgICAgICAgICAgLnNsaWNlKDApXG4gICAgICAgICAgICAuZmlsdGVyKFxuICAgICAgICAgICAgICAobGF5ZXIpID0+XG4gICAgICAgICAgICAgICAgbGF5ZXIuc2hvd0luTGF5ZXJMaXN0ICE9PSBmYWxzZSAmJlxuICAgICAgICAgICAgICAgICghdGhpcy5leGNsdWRlQmFzZUxheWVycyB8fCAhaXNCYXNlTGF5ZXIobGF5ZXIpKVxuICAgICAgICAgICAgKVxuICAgICAgICApO1xuICAgICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmNoYW5nZSQkLnVuc3Vic2NyaWJlKCk7XG4gIH1cbiAgcHJpdmF0ZSBuZXh0KCkge1xuICAgIHRoaXMuY2hhbmdlJC5uZXh0KCk7XG4gIH1cbiAgcHJpdmF0ZSBjb21wdXRlU2hvd25MYXllcnMobGF5ZXJzOiBBbnlMYXllcltdKSB7XG4gICAgbGV0IHNob3duTGF5ZXJzID0gbGF5ZXJzLmZpbHRlcigobGF5ZXIpID0+IGxheWVyLmRpc3BsYXllZCk7XG4gICAgaWYgKHRoaXMuc2hvd0FsbExlZ2VuZHNWYWx1ZSkge1xuICAgICAgc2hvd25MYXllcnMgPSBsYXllcnM7XG4gICAgfVxuICAgIHJldHVybiBzb3J0TGF5ZXJzQnlaaW5kZXgoc2hvd25MYXllcnMsICdkZXNjJyk7XG4gIH1cblxuICB0b2dnbGVTaG93QWxsTGVnZW5kcyh0b2dnbGU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnNob3dBbGxMZWdlbmRzVmFsdWUgPSB0b2dnbGU7XG4gICAgdGhpcy5uZXh0KCk7XG4gICAgdGhpcy5hbGxMZWdlbmRzU2hvd24uZW1pdCh0b2dnbGUpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwibGF5ZXItbGVnZW5kLWxpc3QtY29udGFpbmVyXCI+XG4gIDxtYXQtc2xpZGUtdG9nZ2xlXG4gICAgdG9vbHRpcC1wb3NpdGlvbj1cImFib3ZlXCJcbiAgICBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcbiAgICBbbWF0VG9vbHRpcF09XCInaWdvLmdlby5sYXllci5sZWdlbmQuc2hvd0FsbCcgfCB0cmFuc2xhdGVcIlxuICAgIFtjaGVja2VkXT1cInNob3dBbGxMZWdlbmRzVmFsdWVcIlxuICAgIGNsYXNzPVwibWF0LXR5cG9ncmFwaHlcIlxuICAgICpuZ0lmPVwiKGxheWVyc0luVWkkIHwgYXN5bmMpLmxlbmd0aCAmJiBhbGxvd1Nob3dBbGxMZWdlbmRzXCJcbiAgICBbbGFiZWxQb3NpdGlvbl09XCInYmVmb3JlJ1wiXG4gICAgKGNoYW5nZSk9XCJ0b2dnbGVTaG93QWxsTGVnZW5kcygkZXZlbnQuY2hlY2tlZClcIlxuICA+XG4gICAge3sgJ2lnby5nZW8ubGF5ZXIubGVnZW5kLnNob3dBbGwnIHwgdHJhbnNsYXRlIH19XG4gIDwvbWF0LXNsaWRlLXRvZ2dsZT5cbiAgPG1hdC1kaXZpZGVyXG4gICAgKm5nSWY9XCIobGF5ZXJzSW5VaSQgfCBhc3luYykubGVuZ3RoICYmIGFsbG93U2hvd0FsbExlZ2VuZHNcIlxuICA+PC9tYXQtZGl2aWRlcj5cbiAgPGlnby1saXN0IFtuYXZpZ2F0aW9uXT1cImZhbHNlXCIgW3NlbGVjdGlvbl09XCJmYWxzZVwiPlxuICAgIDxuZy10ZW1wbGF0ZSBuZ0ZvciBsZXQtbGF5ZXIgbGV0LWk9XCJpbmRleFwiIFtuZ0Zvck9mXT1cImxheWVycyQgfCBhc3luY1wiPlxuICAgICAgPGlnby1sYXllci1sZWdlbmQtaXRlbVxuICAgICAgICAqbmdJZj1cIiEoZXhjbHVkZUJhc2VMYXllcnMgJiYgaXNMYXllckl0ZW0obGF5ZXIpICYmIGxheWVyLmJhc2VMYXllcilcIlxuICAgICAgICBpZ29MaXN0SXRlbVxuICAgICAgICBbbGF5ZXJdPVwiJGFueShsYXllcilcIlxuICAgICAgICBbdXBkYXRlTGVnZW5kT25SZXNvbHV0aW9uQ2hhbmdlXT1cInVwZGF0ZUxlZ2VuZE9uUmVzb2x1dGlvbkNoYW5nZVwiXG4gICAgICA+XG4gICAgICA8L2lnby1sYXllci1sZWdlbmQtaXRlbT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2lnby1saXN0PlxuICA8cFxuICAgIGNsYXNzPVwibGF5ZXJzLWVtcHR5IG1hdC10eXBvZ3JhcGh5XCJcbiAgICAqbmdJZj1cIlxuICAgICAgIXNob3dBbGxMZWdlbmRzVmFsdWUgJiZcbiAgICAgIChsYXllcnNJblVpJCB8IGFzeW5jKS5sZW5ndGggJiZcbiAgICAgIChoYXNWaXNpYmxlT3JJblJhbmdlTGF5ZXJzJCB8IGFzeW5jKSA9PT0gZmFsc2UgJiZcbiAgICAgIChoYXNWaXNpYmxlQW5kTm90SW5SYW5nZUxheWVycyQgfCBhc3luYykgPT09IGZhbHNlICYmXG4gICAgICBhbGxvd1Nob3dBbGxMZWdlbmRzXG4gICAgXCJcbiAgPlxuICAgIHt7ICdpZ28uZ2VvLmxheWVyLmxlZ2VuZC5ub0xheWVyc1Zpc2libGVXaXRoU2hvd0FsbEJ1dHRvbicgfCB0cmFuc2xhdGUgfX1cbiAgPC9wPlxuICA8cFxuICAgIGNsYXNzPVwibGF5ZXJzLWVtcHR5IG1hdC10eXBvZ3JhcGh5XCJcbiAgICAqbmdJZj1cIlxuICAgICAgIXNob3dBbGxMZWdlbmRzVmFsdWUgJiZcbiAgICAgIChsYXllcnNJblVpJCB8IGFzeW5jKS5sZW5ndGggJiZcbiAgICAgIChoYXNWaXNpYmxlT3JJblJhbmdlTGF5ZXJzJCB8IGFzeW5jKSA9PT0gZmFsc2UgJiZcbiAgICAgIChoYXNWaXNpYmxlQW5kTm90SW5SYW5nZUxheWVycyQgfCBhc3luYykgJiZcbiAgICAgIGFsbG93U2hvd0FsbExlZ2VuZHNcbiAgICBcIlxuICA+XG4gICAge3tcbiAgICAgICdpZ28uZ2VvLmxheWVyLmxlZ2VuZC5ub0xheWVyc1Zpc2libGVXaXRoU2hvd0FsbEJ1dHRvbkJ1dFpvb20nIHwgdHJhbnNsYXRlXG4gICAgfX1cbiAgPC9wPlxuICA8cFxuICAgIGNsYXNzPVwibGF5ZXJzLWVtcHR5IG1hdC10eXBvZ3JhcGh5XCJcbiAgICAqbmdJZj1cIlxuICAgICAgKGxheWVyc0luVWkkIHwgYXN5bmMpLmxlbmd0aCAmJlxuICAgICAgKGhhc1Zpc2libGVPckluUmFuZ2VMYXllcnMkIHwgYXN5bmMpID09PSBmYWxzZSAmJlxuICAgICAgKGhhc1Zpc2libGVBbmROb3RJblJhbmdlTGF5ZXJzJCB8IGFzeW5jKSA9PT0gZmFsc2UgJiZcbiAgICAgICFhbGxvd1Nob3dBbGxMZWdlbmRzXG4gICAgXCJcbiAgPlxuICAgIHt7ICdpZ28uZ2VvLmxheWVyLmxlZ2VuZC5ub0xheWVyc1Zpc2libGUnIHwgdHJhbnNsYXRlIH19XG4gIDwvcD5cbiAgPHBcbiAgICBjbGFzcz1cImxheWVycy1lbXB0eSBtYXQtdHlwb2dyYXBoeVwiXG4gICAgKm5nSWY9XCJcbiAgICAgIChsYXllcnNJblVpJCB8IGFzeW5jKS5sZW5ndGggJiZcbiAgICAgIChoYXNWaXNpYmxlT3JJblJhbmdlTGF5ZXJzJCB8IGFzeW5jKSA9PT0gZmFsc2UgJiZcbiAgICAgIChoYXNWaXNpYmxlQW5kTm90SW5SYW5nZUxheWVycyQgfCBhc3luYykgJiZcbiAgICAgICFhbGxvd1Nob3dBbGxMZWdlbmRzXG4gICAgXCJcbiAgPlxuICAgIHt7ICdpZ28uZ2VvLmxheWVyLmxlZ2VuZC5ub0xheWVyc1Zpc2libGVCdXRab29tJyB8IHRyYW5zbGF0ZSB9fVxuICA8L3A+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './layer-list.component';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9sYXllci9sYXllci1saXN0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsd0JBQXdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xheWVyLWxpc3QuY29tcG9uZW50JztcbiJdfQ==
|
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
import { FlatTreeControl } from '@angular/cdk/tree';
|
|
2
|
+
import { AsyncPipe, NgFor, NgIf, NgTemplateOutlet } from '@angular/common';
|
|
3
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
|
|
4
|
+
import { FormsModule } from '@angular/forms';
|
|
5
|
+
import { MatBadgeModule } from '@angular/material/badge';
|
|
6
|
+
import { MatButtonModule } from '@angular/material/button';
|
|
7
|
+
import { MatCheckboxModule } from '@angular/material/checkbox';
|
|
8
|
+
import { MatDividerModule } from '@angular/material/divider';
|
|
9
|
+
import { MatIconModule } from '@angular/material/icon';
|
|
10
|
+
import { MatMenuModule } from '@angular/material/menu';
|
|
11
|
+
import { MatSliderModule } from '@angular/material/slider';
|
|
12
|
+
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
13
|
+
import { MatTreeFlatDataSource, MatTreeFlattener, MatTreeModule } from '@angular/material/tree';
|
|
14
|
+
import { TreeDragDropDirective } from '@igo2/common/drag-drop';
|
|
15
|
+
import { IgoIconComponent, VECTOR_SQUARE_ICON } from '@igo2/common/icon';
|
|
16
|
+
import { ListComponent, ListItemDirective } from '@igo2/common/list';
|
|
17
|
+
import { PanelComponent } from '@igo2/common/panel';
|
|
18
|
+
import { IgoLanguageModule } from '@igo2/core/language';
|
|
19
|
+
import { MessageService } from '@igo2/core/message';
|
|
20
|
+
import { LayerGroupComponent } from '../layer-group';
|
|
21
|
+
import { LayerItemComponent } from '../layer-item';
|
|
22
|
+
import { LayerListToolComponent } from '../layer-list-tool';
|
|
23
|
+
import { isLayerGroup, isLayerItem } from '../utils/layer.utils';
|
|
24
|
+
import * as i0 from "@angular/core";
|
|
25
|
+
import * as i1 from "@igo2/core/message";
|
|
26
|
+
import * as i2 from "@angular/material/button";
|
|
27
|
+
import * as i3 from "@angular/material/icon";
|
|
28
|
+
import * as i4 from "@angular/material/tree";
|
|
29
|
+
export class LayerListComponent {
|
|
30
|
+
messageService;
|
|
31
|
+
toggleOpacity = false;
|
|
32
|
+
isInit;
|
|
33
|
+
controller;
|
|
34
|
+
set layers(layers) {
|
|
35
|
+
this._layers = layers;
|
|
36
|
+
this.updateDatasource(layers ?? []);
|
|
37
|
+
}
|
|
38
|
+
get layers() {
|
|
39
|
+
return this._layers;
|
|
40
|
+
}
|
|
41
|
+
_layers;
|
|
42
|
+
isDesktop;
|
|
43
|
+
isDragDropDisabled;
|
|
44
|
+
selectAll;
|
|
45
|
+
viewerOptions;
|
|
46
|
+
activeChange = new EventEmitter();
|
|
47
|
+
_transformer = (layer, level) => {
|
|
48
|
+
return {
|
|
49
|
+
id: layer.id || layer.options.name,
|
|
50
|
+
isGroup: !!isLayerGroup(layer),
|
|
51
|
+
descendantLevels: isLayerGroup(layer)
|
|
52
|
+
? layer.descendantsLevel
|
|
53
|
+
: undefined,
|
|
54
|
+
level: level,
|
|
55
|
+
data: layer,
|
|
56
|
+
disabled: false
|
|
57
|
+
};
|
|
58
|
+
};
|
|
59
|
+
treeControl = new FlatTreeControl((node) => node.level, (node) => node.isGroup);
|
|
60
|
+
treeFlattener = new MatTreeFlattener(this._transformer, (node) => node.level, (node) => node.isGroup, (node) => node.children
|
|
61
|
+
.filter((layer) => layer.showInLayerList)
|
|
62
|
+
.sort((a, b) => a.zIndex + b.zIndex));
|
|
63
|
+
dataSource;
|
|
64
|
+
constructor(messageService) {
|
|
65
|
+
this.messageService = messageService;
|
|
66
|
+
this.dataSource = new MatTreeFlatDataSource(this.treeControl, this.treeFlattener, []);
|
|
67
|
+
}
|
|
68
|
+
isGroup = (_, node) => node.isGroup;
|
|
69
|
+
isLayerGroup = isLayerGroup;
|
|
70
|
+
isLayerItem = isLayerItem;
|
|
71
|
+
isSelected = (layer) => this.controller.isSelected(layer);
|
|
72
|
+
isDescendantSelection = (layer) => this.controller.isDescendantSelection(layer);
|
|
73
|
+
toggleActive(layer) {
|
|
74
|
+
const isSelected = this.controller.isSelected(layer);
|
|
75
|
+
this.controller.clearSelection();
|
|
76
|
+
if (!isSelected) {
|
|
77
|
+
this.controller.select(layer);
|
|
78
|
+
}
|
|
79
|
+
this.activeChange.emit(layer);
|
|
80
|
+
}
|
|
81
|
+
handleSelect(checked, layer) {
|
|
82
|
+
checked ? this.controller.select(layer) : this.controller.deselect(layer);
|
|
83
|
+
}
|
|
84
|
+
getLayerType(layer) {
|
|
85
|
+
return layer.type === 'raster'
|
|
86
|
+
? 'raster'
|
|
87
|
+
: layer.id.includes('measure')
|
|
88
|
+
? 'measure'
|
|
89
|
+
: layer.id.includes('draw')
|
|
90
|
+
? 'draw'
|
|
91
|
+
: 'vector';
|
|
92
|
+
}
|
|
93
|
+
getLayerIcon(layer) {
|
|
94
|
+
const type = this.getLayerType(layer);
|
|
95
|
+
return type === 'raster'
|
|
96
|
+
? layer.baseLayer
|
|
97
|
+
? 'wallpaper'
|
|
98
|
+
: 'image'
|
|
99
|
+
: type === 'measure'
|
|
100
|
+
? 'square_foot'
|
|
101
|
+
: type === 'draw'
|
|
102
|
+
? 'draw'
|
|
103
|
+
: VECTOR_SQUARE_ICON;
|
|
104
|
+
}
|
|
105
|
+
dropNode({ node, ref, position }) {
|
|
106
|
+
let nodesToDrop = [node.data];
|
|
107
|
+
if (this.controller.hasSelection) {
|
|
108
|
+
// The selection could contains data from the outside the TreeController
|
|
109
|
+
nodesToDrop = this.controller.selected.filter((layer) => !!this.findNodeByLayerId(layer.id));
|
|
110
|
+
}
|
|
111
|
+
if (node.isGroup) {
|
|
112
|
+
nodesToDrop = nodesToDrop.filter((nodeDrop) => !node.data.isDescendant(nodeDrop));
|
|
113
|
+
}
|
|
114
|
+
if (ref.isGroup) {
|
|
115
|
+
const isSelected = nodesToDrop.some((nodeDrop) => nodeDrop.id === ref.id);
|
|
116
|
+
if (isSelected) {
|
|
117
|
+
nodesToDrop = nodesToDrop.filter((nodeDrop) => nodeDrop.id !== ref.id);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
if (!nodesToDrop.includes(node.data)) {
|
|
121
|
+
nodesToDrop.push(node.data);
|
|
122
|
+
}
|
|
123
|
+
switch (position) {
|
|
124
|
+
case 'above':
|
|
125
|
+
this.controller.moveAbove(ref.data, ...nodesToDrop);
|
|
126
|
+
break;
|
|
127
|
+
case 'inside':
|
|
128
|
+
this.controller.moveInside(ref.data, ...nodesToDrop);
|
|
129
|
+
break;
|
|
130
|
+
default:
|
|
131
|
+
this.controller.moveBelow(ref.data, ...nodesToDrop);
|
|
132
|
+
break;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
dropNodeError(details) {
|
|
136
|
+
this.messageService.alert(details.message, 'igo.geo.layer.layer', null, details.params);
|
|
137
|
+
}
|
|
138
|
+
dragStart() {
|
|
139
|
+
if (this.viewerOptions.mode === 'selection') {
|
|
140
|
+
return;
|
|
141
|
+
}
|
|
142
|
+
this.controller.clearSelection();
|
|
143
|
+
}
|
|
144
|
+
handleNodeToggle(node) {
|
|
145
|
+
node.data.expanded = this.treeControl.isExpanded(node);
|
|
146
|
+
}
|
|
147
|
+
findNodeByLayerId(id) {
|
|
148
|
+
return this.treeControl.dataNodes.find((node) => node.id === id);
|
|
149
|
+
}
|
|
150
|
+
updateDatasource(layers) {
|
|
151
|
+
const expansionModel = this.treeControl.expansionModel;
|
|
152
|
+
this.dataSource.data = layers;
|
|
153
|
+
this.isInit
|
|
154
|
+
? this.restoreModel(expansionModel, (node) => this.treeControl.expand(node))
|
|
155
|
+
: this.expandGroup(layers);
|
|
156
|
+
if (!this.isInit && layers.length) {
|
|
157
|
+
this.isInit = true;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
/** Recursive */
|
|
161
|
+
expandGroup(layers) {
|
|
162
|
+
layers.forEach((layer) => {
|
|
163
|
+
if (!isLayerGroup(layer)) {
|
|
164
|
+
return;
|
|
165
|
+
}
|
|
166
|
+
if (layer.expanded) {
|
|
167
|
+
const node = this.findNodeByLayerId(layer.id);
|
|
168
|
+
if (!node) {
|
|
169
|
+
return;
|
|
170
|
+
}
|
|
171
|
+
this.treeControl.expand(node);
|
|
172
|
+
}
|
|
173
|
+
this.expandGroup(layer.children);
|
|
174
|
+
});
|
|
175
|
+
}
|
|
176
|
+
restoreModel(model, callback) {
|
|
177
|
+
const ids = Array.from(model['_selection']).map((value) => value['id']);
|
|
178
|
+
model.clear();
|
|
179
|
+
this.treeControl.dataNodes.forEach((node) => {
|
|
180
|
+
if (model.isSelected(node) || ids.includes(node.id)) {
|
|
181
|
+
callback(node);
|
|
182
|
+
}
|
|
183
|
+
});
|
|
184
|
+
}
|
|
185
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LayerListComponent, deps: [{ token: i1.MessageService }], target: i0.ɵɵFactoryTarget.Component });
|
|
186
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: LayerListComponent, isStandalone: true, selector: "igo-layer-list", inputs: { controller: "controller", layers: "layers", isDesktop: "isDesktop", isDragDropDisabled: "isDragDropDisabled", selectAll: "selectAll", viewerOptions: "viewerOptions" }, outputs: { activeChange: "activeChange" }, ngImport: i0, template: "<mat-tree\n [class.--not-desktop]=\"!isDesktop\"\n igoTreeDragDrop\n [treeDragDropIsDisabled]=\"isDragDropDisabled\"\n [maxLevel]=\"viewerOptions?.group?.maxHierarchyLevel\"\n [dataSource]=\"dataSource\"\n [treeControl]=\"treeControl\"\n (dragStart)=\"dragStart()\"\n (onDrop)=\"dropNode($event)\"\n (onDropError)=\"dropNodeError($event)\"\n>\n <!-- This is the tree node template for leaf nodes -->\n <mat-tree-node\n *matTreeNodeDef=\"let node\"\n [class.--selected]=\"isSelected(node.data)\"\n [class.--children-selected]=\"isDescendantSelection(node.data)\"\n >\n <igo-layer-item\n [matTreeNodePadding]=\"node.level === 0 ? 1 : node.level\"\n [matTreeNodePaddingIndent]=\"node.level === 0 ? 16 : 24 + 16 / node.level\"\n class=\"tree-node-item\"\n [layer]=\"node.data\"\n [visible]=\"node.data.visible\"\n [viewerOptions]=\"viewerOptions\"\n [selected]=\"isSelected(node.data) || isDescendantSelection(node.data)\"\n [selectionDisabled]=\"isDescendantSelection(node.data)\"\n (action)=\"toggleActive($event)\"\n (selectChange)=\"handleSelect($event, node.data)\"\n >\n </igo-layer-item>\n </mat-tree-node>\n <!-- This is the tree node template for expandable nodes -->\n <mat-tree-node\n *matTreeNodeDef=\"let node; when: isGroup\"\n [class.--selected]=\"isSelected(node.data)\"\n [class.--children-selected]=\"isDescendantSelection(node.data)\"\n >\n <igo-layer-group\n matTreeNodePadding\n [matTreeNodePaddingIndent]=\"24\"\n class=\"tree-node-item\"\n [layer]=\"node.data\"\n [viewerOptions]=\"viewerOptions\"\n [selected]=\"isSelected(node.data) || isDescendantSelection(node.data)\"\n [selectionDisabled]=\"isDescendantSelection(node.data)\"\n (action)=\"toggleActive($event)\"\n (expand)=\"treeControl.toggle(node); handleNodeToggle(node)\"\n (selectChange)=\"handleSelect($event, node.data)\"\n >\n <button\n mat-icon-button\n matTreeNodeToggle\n class=\"layer-indicator\"\n [attr.aria-label]=\"'Toggle ' + node.data.title\"\n (click)=\"handleNodeToggle(node)\"\n >\n <mat-icon class=\"mat-icon-rtl-mirror\">\n {{\n treeControl.isExpanded(node)\n ? 'keyboard_arrow_down'\n : 'keyboard_arrow_right'\n }}\n </mat-icon>\n </button>\n </igo-layer-group>\n </mat-tree-node>\n</mat-tree>\n", styles: [".--not-desktop igo-layer-group ::ng-deep .list-secondary-actions button,.--not-desktop igo-layer-item ::ng-deep .list-secondary-actions button{visibility:visible!important}.tree-node-item{flex:1}mat-tree-node{position:relative;min-height:40px}mat-tree-node:hover:after,mat-tree-node.--drag-hover:after{content:\"\";position:absolute;inset:0;border-style:solid;border-width:1px;border-color:transparent;pointer-events:none}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: MatBadgeModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "ngmodule", type: MatDividerModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "ngmodule", type: MatSliderModule }, { kind: "ngmodule", type: MatTreeModule }, { kind: "directive", type: i4.MatTreeNodeDef, selector: "[matTreeNodeDef]", inputs: ["matTreeNodeDefWhen", "matTreeNode"] }, { kind: "directive", type: i4.MatTreeNodePadding, selector: "[matTreeNodePadding]", inputs: ["matTreeNodePadding", "matTreeNodePaddingIndent"] }, { kind: "directive", type: i4.MatTreeNodeToggle, selector: "[matTreeNodeToggle]", inputs: ["matTreeNodeToggleRecursive"] }, { kind: "component", type: i4.MatTree, selector: "mat-tree", exportAs: ["matTree"] }, { kind: "directive", type: i4.MatTreeNode, selector: "mat-tree-node", inputs: ["tabIndex", "disabled"], outputs: ["activation", "expandedChange"], exportAs: ["matTreeNode"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: TreeDragDropDirective, selector: "[igoTreeDragDrop]", inputs: ["treeControl", "maxLevel", "treeDragDropIsDisabled"], outputs: ["dragStart", "onDrop", "onDropError"] }, { kind: "component", type: LayerGroupComponent, selector: "igo-layer-group", inputs: ["layer", "viewerOptions", "selected", "selectionDisabled"], outputs: ["action", "visibilityChange", "expand", "selectChange"] }, { kind: "component", type: LayerItemComponent, selector: "igo-layer-item", inputs: ["layer", "visible", "selected", "selectionDisabled", "viewerOptions"], outputs: ["action", "selectChange", "visibilityChange"] }, { kind: "ngmodule", type: IgoLanguageModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
187
|
+
}
|
|
188
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LayerListComponent, decorators: [{
|
|
189
|
+
type: Component,
|
|
190
|
+
args: [{ selector: 'igo-layer-list', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
191
|
+
NgIf,
|
|
192
|
+
NgFor,
|
|
193
|
+
NgTemplateOutlet,
|
|
194
|
+
FormsModule,
|
|
195
|
+
AsyncPipe,
|
|
196
|
+
MatBadgeModule,
|
|
197
|
+
MatButtonModule,
|
|
198
|
+
MatCheckboxModule,
|
|
199
|
+
MatDividerModule,
|
|
200
|
+
MatIconModule,
|
|
201
|
+
MatMenuModule,
|
|
202
|
+
MatSliderModule,
|
|
203
|
+
MatTreeModule,
|
|
204
|
+
MatTooltipModule,
|
|
205
|
+
TreeDragDropDirective,
|
|
206
|
+
LayerListToolComponent,
|
|
207
|
+
LayerGroupComponent,
|
|
208
|
+
ListComponent,
|
|
209
|
+
LayerItemComponent,
|
|
210
|
+
ListItemDirective,
|
|
211
|
+
PanelComponent,
|
|
212
|
+
IgoLanguageModule,
|
|
213
|
+
IgoIconComponent
|
|
214
|
+
], template: "<mat-tree\n [class.--not-desktop]=\"!isDesktop\"\n igoTreeDragDrop\n [treeDragDropIsDisabled]=\"isDragDropDisabled\"\n [maxLevel]=\"viewerOptions?.group?.maxHierarchyLevel\"\n [dataSource]=\"dataSource\"\n [treeControl]=\"treeControl\"\n (dragStart)=\"dragStart()\"\n (onDrop)=\"dropNode($event)\"\n (onDropError)=\"dropNodeError($event)\"\n>\n <!-- This is the tree node template for leaf nodes -->\n <mat-tree-node\n *matTreeNodeDef=\"let node\"\n [class.--selected]=\"isSelected(node.data)\"\n [class.--children-selected]=\"isDescendantSelection(node.data)\"\n >\n <igo-layer-item\n [matTreeNodePadding]=\"node.level === 0 ? 1 : node.level\"\n [matTreeNodePaddingIndent]=\"node.level === 0 ? 16 : 24 + 16 / node.level\"\n class=\"tree-node-item\"\n [layer]=\"node.data\"\n [visible]=\"node.data.visible\"\n [viewerOptions]=\"viewerOptions\"\n [selected]=\"isSelected(node.data) || isDescendantSelection(node.data)\"\n [selectionDisabled]=\"isDescendantSelection(node.data)\"\n (action)=\"toggleActive($event)\"\n (selectChange)=\"handleSelect($event, node.data)\"\n >\n </igo-layer-item>\n </mat-tree-node>\n <!-- This is the tree node template for expandable nodes -->\n <mat-tree-node\n *matTreeNodeDef=\"let node; when: isGroup\"\n [class.--selected]=\"isSelected(node.data)\"\n [class.--children-selected]=\"isDescendantSelection(node.data)\"\n >\n <igo-layer-group\n matTreeNodePadding\n [matTreeNodePaddingIndent]=\"24\"\n class=\"tree-node-item\"\n [layer]=\"node.data\"\n [viewerOptions]=\"viewerOptions\"\n [selected]=\"isSelected(node.data) || isDescendantSelection(node.data)\"\n [selectionDisabled]=\"isDescendantSelection(node.data)\"\n (action)=\"toggleActive($event)\"\n (expand)=\"treeControl.toggle(node); handleNodeToggle(node)\"\n (selectChange)=\"handleSelect($event, node.data)\"\n >\n <button\n mat-icon-button\n matTreeNodeToggle\n class=\"layer-indicator\"\n [attr.aria-label]=\"'Toggle ' + node.data.title\"\n (click)=\"handleNodeToggle(node)\"\n >\n <mat-icon class=\"mat-icon-rtl-mirror\">\n {{\n treeControl.isExpanded(node)\n ? 'keyboard_arrow_down'\n : 'keyboard_arrow_right'\n }}\n </mat-icon>\n </button>\n </igo-layer-group>\n </mat-tree-node>\n</mat-tree>\n", styles: [".--not-desktop igo-layer-group ::ng-deep .list-secondary-actions button,.--not-desktop igo-layer-item ::ng-deep .list-secondary-actions button{visibility:visible!important}.tree-node-item{flex:1}mat-tree-node{position:relative;min-height:40px}mat-tree-node:hover:after,mat-tree-node.--drag-hover:after{content:\"\";position:absolute;inset:0;border-style:solid;border-width:1px;border-color:transparent;pointer-events:none}\n"] }]
|
|
215
|
+
}], ctorParameters: () => [{ type: i1.MessageService }], propDecorators: { controller: [{
|
|
216
|
+
type: Input,
|
|
217
|
+
args: [{ required: true }]
|
|
218
|
+
}], layers: [{
|
|
219
|
+
type: Input,
|
|
220
|
+
args: [{ required: true }]
|
|
221
|
+
}], isDesktop: [{
|
|
222
|
+
type: Input
|
|
223
|
+
}], isDragDropDisabled: [{
|
|
224
|
+
type: Input
|
|
225
|
+
}], selectAll: [{
|
|
226
|
+
type: Input
|
|
227
|
+
}], viewerOptions: [{
|
|
228
|
+
type: Input
|
|
229
|
+
}], activeChange: [{
|
|
230
|
+
type: Output
|
|
231
|
+
}] } });
|
|
232
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXItbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9sYXllci9sYXllci1saXN0L2xheWVyLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvbGF5ZXIvbGF5ZXItbGlzdC9sYXllci1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzRSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQ0wscUJBQXFCLEVBQ3JCLGdCQUFnQixFQUNoQixh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L2Nkay9jb2xsZWN0aW9ucyc7XG5pbXBvcnQgeyBGbGF0VHJlZUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9jZGsvdHJlZSc7XG5pbXBvcnQgeyBBc3luY1BpcGUsIE5nRm9yLCBOZ0lmLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0QmFkZ2VNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9iYWRnZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0Q2hlY2tib3hNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGVja2JveCc7XG5pbXBvcnQgeyBNYXREaXZpZGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGl2aWRlcic7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRNZW51TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XG5pbXBvcnQgeyBNYXRTbGlkZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zbGlkZXInO1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuaW1wb3J0IHtcbiAgTWF0VHJlZUZsYXREYXRhU291cmNlLFxuICBNYXRUcmVlRmxhdHRlbmVyLFxuICBNYXRUcmVlTW9kdWxlXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RyZWUnO1xuXG5pbXBvcnQge1xuICBEcm9wUGVybWlzc2lvbixcbiAgVHJlZURyYWdEcm9wRGlyZWN0aXZlLFxuICBUcmVlRHJvcEV2ZW50LFxuICBUcmVlRmxhdE5vZGVcbn0gZnJvbSAnQGlnbzIvY29tbW9uL2RyYWctZHJvcCc7XG5pbXBvcnQge1xuICBJY29uU3ZnLFxuICBJZ29JY29uQ29tcG9uZW50LFxuICBWRUNUT1JfU1FVQVJFX0lDT05cbn0gZnJvbSAnQGlnbzIvY29tbW9uL2ljb24nO1xuaW1wb3J0IHsgTGlzdENvbXBvbmVudCwgTGlzdEl0ZW1EaXJlY3RpdmUgfSBmcm9tICdAaWdvMi9jb21tb24vbGlzdCc7XG5pbXBvcnQgeyBQYW5lbENvbXBvbmVudCB9IGZyb20gJ0BpZ28yL2NvbW1vbi9wYW5lbCc7XG5pbXBvcnQgeyBJZ29MYW5ndWFnZU1vZHVsZSB9IGZyb20gJ0BpZ28yL2NvcmUvbGFuZ3VhZ2UnO1xuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlL21lc3NhZ2UnO1xuXG5pbXBvcnQgeyBMYXllckdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi4vbGF5ZXItZ3JvdXAnO1xuaW1wb3J0IHsgTGF5ZXJJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vbGF5ZXItaXRlbSc7XG5pbXBvcnQgeyBMYXllckxpc3RUb29sQ29tcG9uZW50IH0gZnJvbSAnLi4vbGF5ZXItbGlzdC10b29sJztcbmltcG9ydCB0eXBlIHsgTGF5ZXJWaWV3ZXJPcHRpb25zIH0gZnJvbSAnLi4vbGF5ZXItdmlld2VyL2xheWVyLXZpZXdlci5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTGF5ZXJUeXBlIH0gZnJvbSAnLi4vc2hhcmVkJztcbmltcG9ydCB0eXBlIHsgTGF5ZXJDb250cm9sbGVyIH0gZnJvbSAnLi4vc2hhcmVkL2xheWVyLWNvbnRyb2xsZXInO1xuaW1wb3J0IHR5cGUgeyBBbnlMYXllciB9IGZyb20gJy4uL3NoYXJlZC9sYXllcnMvYW55LWxheWVyJztcbmltcG9ydCB0eXBlIHsgTGF5ZXIgfSBmcm9tICcuLi9zaGFyZWQvbGF5ZXJzL2xheWVyJztcbmltcG9ydCB0eXBlIHsgTGF5ZXJHcm91cCB9IGZyb20gJy4uL3NoYXJlZC9sYXllcnMvbGF5ZXItZ3JvdXAnO1xuaW1wb3J0IHsgaXNMYXllckdyb3VwLCBpc0xheWVySXRlbSB9IGZyb20gJy4uL3V0aWxzL2xheWVyLnV0aWxzJztcblxudHlwZSBMYXllckZsYXROb2RlPFQgPSBBbnlMYXllcj4gPSBUcmVlRmxhdE5vZGU8VD47XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2lnby1sYXllci1saXN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xheWVyLWxpc3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9sYXllci1saXN0LmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTmdJZixcbiAgICBOZ0ZvcixcbiAgICBOZ1RlbXBsYXRlT3V0bGV0LFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIEFzeW5jUGlwZSxcbiAgICBNYXRCYWRnZU1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWF0Q2hlY2tib3hNb2R1bGUsXG4gICAgTWF0RGl2aWRlck1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIE1hdE1lbnVNb2R1bGUsXG4gICAgTWF0U2xpZGVyTW9kdWxlLFxuICAgIE1hdFRyZWVNb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICBUcmVlRHJhZ0Ryb3BEaXJlY3RpdmUsXG4gICAgTGF5ZXJMaXN0VG9vbENvbXBvbmVudCxcbiAgICBMYXllckdyb3VwQ29tcG9uZW50LFxuICAgIExpc3RDb21wb25lbnQsXG4gICAgTGF5ZXJJdGVtQ29tcG9uZW50LFxuICAgIExpc3RJdGVtRGlyZWN0aXZlLFxuICAgIFBhbmVsQ29tcG9uZW50LFxuICAgIElnb0xhbmd1YWdlTW9kdWxlLFxuICAgIElnb0ljb25Db21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBMYXllckxpc3RDb21wb25lbnQge1xuICBwdWJsaWMgdG9nZ2xlT3BhY2l0eSA9IGZhbHNlO1xuICBpc0luaXQ6IGJvb2xlYW47XG5cbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgY29udHJvbGxlcjogTGF5ZXJDb250cm9sbGVyO1xuXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pXG4gIHNldCBsYXllcnMobGF5ZXJzOiBBbnlMYXllcltdKSB7XG4gICAgdGhpcy5fbGF5ZXJzID0gbGF5ZXJzO1xuICAgIHRoaXMudXBkYXRlRGF0YXNvdXJjZShsYXllcnMgPz8gW10pO1xuICB9XG4gIGdldCBsYXllcnMoKTogQW55TGF5ZXJbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2xheWVycztcbiAgfVxuICBwcml2YXRlIF9sYXllcnM6IEFueUxheWVyW107XG5cbiAgQElucHV0KCkgaXNEZXNrdG9wOiBib29sZWFuO1xuICBASW5wdXQoKSBpc0RyYWdEcm9wRGlzYWJsZWQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHNlbGVjdEFsbDogYm9vbGVhbjtcbiAgQElucHV0KCkgdmlld2VyT3B0aW9uczogTGF5ZXJWaWV3ZXJPcHRpb25zO1xuXG4gIEBPdXRwdXQoKSBhY3RpdmVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPEFueUxheWVyPigpO1xuXG4gIHByaXZhdGUgX3RyYW5zZm9ybWVyID0gKGxheWVyOiBBbnlMYXllciwgbGV2ZWw6IG51bWJlcik6IExheWVyRmxhdE5vZGUgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICBpZDogbGF5ZXIuaWQgfHwgbGF5ZXIub3B0aW9ucy5uYW1lLFxuICAgICAgaXNHcm91cDogISFpc0xheWVyR3JvdXAobGF5ZXIpLFxuICAgICAgZGVzY2VuZGFudExldmVsczogaXNMYXllckdyb3VwKGxheWVyKVxuICAgICAgICA/IGxheWVyLmRlc2NlbmRhbnRzTGV2ZWxcbiAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICBsZXZlbDogbGV2ZWwsXG4gICAgICBkYXRhOiBsYXllcixcbiAgICAgIGRpc2FibGVkOiBmYWxzZVxuICAgIH07XG4gIH07XG5cbiAgdHJlZUNvbnRyb2wgPSBuZXcgRmxhdFRyZWVDb250cm9sPExheWVyRmxhdE5vZGU+KFxuICAgIChub2RlKSA9PiBub2RlLmxldmVsLFxuICAgIChub2RlKSA9PiBub2RlLmlzR3JvdXBcbiAgKTtcblxuICB0cmVlRmxhdHRlbmVyID0gbmV3IE1hdFRyZWVGbGF0dGVuZXIoXG4gICAgdGhpcy5fdHJhbnNmb3JtZXIsXG4gICAgKG5vZGUpID0+IG5vZGUubGV2ZWwsXG4gICAgKG5vZGUpID0+IG5vZGUuaXNHcm91cCxcbiAgICAobm9kZSkgPT5cbiAgICAgIChub2RlIGFzIExheWVyR3JvdXApLmNoaWxkcmVuXG4gICAgICAgIC5maWx0ZXIoKGxheWVyKSA9PiBsYXllci5zaG93SW5MYXllckxpc3QpXG4gICAgICAgIC5zb3J0KChhLCBiKSA9PiBhLnpJbmRleCArIGIuekluZGV4KVxuICApO1xuXG4gIGRhdGFTb3VyY2U6IE1hdFRyZWVGbGF0RGF0YVNvdXJjZTxBbnlMYXllciwgTGF5ZXJGbGF0Tm9kZT47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UpIHtcbiAgICB0aGlzLmRhdGFTb3VyY2UgPSBuZXcgTWF0VHJlZUZsYXREYXRhU291cmNlKFxuICAgICAgdGhpcy50cmVlQ29udHJvbCxcbiAgICAgIHRoaXMudHJlZUZsYXR0ZW5lcixcbiAgICAgIFtdXG4gICAgKTtcbiAgfVxuXG4gIGlzR3JvdXAgPSAoXzogbnVtYmVyLCBub2RlOiBMYXllckZsYXROb2RlKSA9PiBub2RlLmlzR3JvdXA7XG5cbiAgaXNMYXllckdyb3VwID0gaXNMYXllckdyb3VwO1xuICBpc0xheWVySXRlbSA9IGlzTGF5ZXJJdGVtO1xuXG4gIGlzU2VsZWN0ZWQgPSAobGF5ZXI6IEFueUxheWVyKTogYm9vbGVhbiA9PiB0aGlzLmNvbnRyb2xsZXIuaXNTZWxlY3RlZChsYXllcik7XG4gIGlzRGVzY2VuZGFudFNlbGVjdGlvbiA9IChsYXllcjogQW55TGF5ZXIpOiBib29sZWFuID0+XG4gICAgdGhpcy5jb250cm9sbGVyLmlzRGVzY2VuZGFudFNlbGVjdGlvbihsYXllcik7XG5cbiAgdG9nZ2xlQWN0aXZlKGxheWVyOiBBbnlMYXllcik6IHZvaWQge1xuICAgIGNvbnN0IGlzU2VsZWN0ZWQgPSB0aGlzLmNvbnRyb2xsZXIuaXNTZWxlY3RlZChsYXllcik7XG5cbiAgICB0aGlzLmNvbnRyb2xsZXIuY2xlYXJTZWxlY3Rpb24oKTtcblxuICAgIGlmICghaXNTZWxlY3RlZCkge1xuICAgICAgdGhpcy5jb250cm9sbGVyLnNlbGVjdChsYXllcik7XG4gICAgfVxuICAgIHRoaXMuYWN0aXZlQ2hhbmdlLmVtaXQobGF5ZXIpO1xuICB9XG5cbiAgaGFuZGxlU2VsZWN0KGNoZWNrZWQ6IGJvb2xlYW4sIGxheWVyOiBBbnlMYXllcik6IHZvaWQge1xuICAgIGNoZWNrZWQgPyB0aGlzLmNvbnRyb2xsZXIuc2VsZWN0KGxheWVyKSA6IHRoaXMuY29udHJvbGxlci5kZXNlbGVjdChsYXllcik7XG4gIH1cblxuICBnZXRMYXllclR5cGUobGF5ZXI6IExheWVyKTogTGF5ZXJUeXBlIHwgJ21lYXN1cmUnIHwgJ2RyYXcnIHtcbiAgICByZXR1cm4gbGF5ZXIudHlwZSA9PT0gJ3Jhc3RlcidcbiAgICAgID8gJ3Jhc3RlcidcbiAgICAgIDogbGF5ZXIuaWQuaW5jbHVkZXMoJ21lYXN1cmUnKVxuICAgICAgICA/ICdtZWFzdXJlJ1xuICAgICAgICA6IGxheWVyLmlkLmluY2x1ZGVzKCdkcmF3JylcbiAgICAgICAgICA/ICdkcmF3J1xuICAgICAgICAgIDogJ3ZlY3Rvcic7XG4gIH1cblxuICBnZXRMYXllckljb24obGF5ZXI6IExheWVyKTogc3RyaW5nIHwgSWNvblN2ZyB7XG4gICAgY29uc3QgdHlwZSA9IHRoaXMuZ2V0TGF5ZXJUeXBlKGxheWVyKTtcbiAgICByZXR1cm4gdHlwZSA9PT0gJ3Jhc3RlcidcbiAgICAgID8gbGF5ZXIuYmFzZUxheWVyXG4gICAgICAgID8gJ3dhbGxwYXBlcidcbiAgICAgICAgOiAnaW1hZ2UnXG4gICAgICA6IHR5cGUgPT09ICdtZWFzdXJlJ1xuICAgICAgICA/ICdzcXVhcmVfZm9vdCdcbiAgICAgICAgOiB0eXBlID09PSAnZHJhdydcbiAgICAgICAgICA/ICdkcmF3J1xuICAgICAgICAgIDogVkVDVE9SX1NRVUFSRV9JQ09OO1xuICB9XG5cbiAgZHJvcE5vZGUoeyBub2RlLCByZWYsIHBvc2l0aW9uIH06IFRyZWVEcm9wRXZlbnQ8QW55TGF5ZXI+KTogdm9pZCB7XG4gICAgbGV0IG5vZGVzVG9Ecm9wID0gW25vZGUuZGF0YV07XG5cbiAgICBpZiAodGhpcy5jb250cm9sbGVyLmhhc1NlbGVjdGlvbikge1xuICAgICAgLy8gVGhlIHNlbGVjdGlvbiBjb3VsZCBjb250YWlucyBkYXRhIGZyb20gdGhlIG91dHNpZGUgdGhlIFRyZWVDb250cm9sbGVyXG4gICAgICBub2Rlc1RvRHJvcCA9IHRoaXMuY29udHJvbGxlci5zZWxlY3RlZC5maWx0ZXIoXG4gICAgICAgIChsYXllcikgPT4gISF0aGlzLmZpbmROb2RlQnlMYXllcklkKGxheWVyLmlkKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAobm9kZS5pc0dyb3VwKSB7XG4gICAgICBub2Rlc1RvRHJvcCA9IG5vZGVzVG9Ecm9wLmZpbHRlcihcbiAgICAgICAgKG5vZGVEcm9wKSA9PiAhKG5vZGUuZGF0YSBhcyBMYXllckdyb3VwKS5pc0Rlc2NlbmRhbnQobm9kZURyb3ApXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmIChyZWYuaXNHcm91cCkge1xuICAgICAgY29uc3QgaXNTZWxlY3RlZCA9IG5vZGVzVG9Ecm9wLnNvbWUoKG5vZGVEcm9wKSA9PiBub2RlRHJvcC5pZCA9PT0gcmVmLmlkKTtcbiAgICAgIGlmIChpc1NlbGVjdGVkKSB7XG4gICAgICAgIG5vZGVzVG9Ecm9wID0gbm9kZXNUb0Ryb3AuZmlsdGVyKChub2RlRHJvcCkgPT4gbm9kZURyb3AuaWQgIT09IHJlZi5pZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKCFub2Rlc1RvRHJvcC5pbmNsdWRlcyhub2RlLmRhdGEpKSB7XG4gICAgICBub2Rlc1RvRHJvcC5wdXNoKG5vZGUuZGF0YSk7XG4gICAgfVxuXG4gICAgc3dpdGNoIChwb3NpdGlvbikge1xuICAgICAgY2FzZSAnYWJvdmUnOlxuICAgICAgICB0aGlzLmNvbnRyb2xsZXIubW92ZUFib3ZlKHJlZi5kYXRhLCAuLi5ub2Rlc1RvRHJvcCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnaW5zaWRlJzpcbiAgICAgICAgdGhpcy5jb250cm9sbGVyLm1vdmVJbnNpZGUocmVmLmRhdGEgYXMgTGF5ZXJHcm91cCwgLi4ubm9kZXNUb0Ryb3ApO1xuICAgICAgICBicmVhaztcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhpcy5jb250cm9sbGVyLm1vdmVCZWxvdyhyZWYuZGF0YSwgLi4ubm9kZXNUb0Ryb3ApO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICBkcm9wTm9kZUVycm9yKGRldGFpbHM6IERyb3BQZXJtaXNzaW9uKTogdm9pZCB7XG4gICAgdGhpcy5tZXNzYWdlU2VydmljZS5hbGVydChcbiAgICAgIGRldGFpbHMubWVzc2FnZSxcbiAgICAgICdpZ28uZ2VvLmxheWVyLmxheWVyJyxcbiAgICAgIG51bGwsXG4gICAgICBkZXRhaWxzLnBhcmFtc1xuICAgICk7XG4gIH1cblxuICBkcmFnU3RhcnQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudmlld2VyT3B0aW9ucy5tb2RlID09PSAnc2VsZWN0aW9uJykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuY29udHJvbGxlci5jbGVhclNlbGVjdGlvbigpO1xuICB9XG5cbiAgaGFuZGxlTm9kZVRvZ2dsZShub2RlOiBMYXllckZsYXROb2RlPExheWVyR3JvdXA+KTogdm9pZCB7XG4gICAgbm9kZS5kYXRhLmV4cGFuZGVkID0gdGhpcy50cmVlQ29udHJvbC5pc0V4cGFuZGVkKG5vZGUpO1xuICB9XG5cbiAgcHJpdmF0ZSBmaW5kTm9kZUJ5TGF5ZXJJZChpZDogc3RyaW5nKTogTGF5ZXJGbGF0Tm9kZSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMudHJlZUNvbnRyb2wuZGF0YU5vZGVzLmZpbmQoKG5vZGUpID0+IG5vZGUuaWQgPT09IGlkKTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlRGF0YXNvdXJjZShsYXllcnM6IEFueUxheWVyW10pOiB2b2lkIHtcbiAgICBjb25zdCBleHBhbnNpb25Nb2RlbCA9IHRoaXMudHJlZUNvbnRyb2wuZXhwYW5zaW9uTW9kZWw7XG4gICAgdGhpcy5kYXRhU291cmNlLmRhdGEgPSBsYXllcnM7XG5cbiAgICB0aGlzLmlzSW5pdFxuICAgICAgPyB0aGlzLnJlc3RvcmVNb2RlbChleHBhbnNpb25Nb2RlbCwgKG5vZGUpID0+XG4gICAgICAgICAgdGhpcy50cmVlQ29udHJvbC5leHBhbmQobm9kZSlcbiAgICAgICAgKVxuICAgICAgOiB0aGlzLmV4cGFuZEdyb3VwKGxheWVycyk7XG5cbiAgICBpZiAoIXRoaXMuaXNJbml0ICYmIGxheWVycy5sZW5ndGgpIHtcbiAgICAgIHRoaXMuaXNJbml0ID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICAvKiogUmVjdXJzaXZlICovXG4gIHByaXZhdGUgZXhwYW5kR3JvdXAobGF5ZXJzOiBBbnlMYXllcltdKTogdm9pZCB7XG4gICAgbGF5ZXJzLmZvckVhY2goKGxheWVyKSA9PiB7XG4gICAgICBpZiAoIWlzTGF5ZXJHcm91cChsYXllcikpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgaWYgKGxheWVyLmV4cGFuZGVkKSB7XG4gICAgICAgIGNvbnN0IG5vZGUgPSB0aGlzLmZpbmROb2RlQnlMYXllcklkKGxheWVyLmlkKTtcbiAgICAgICAgaWYgKCFub2RlKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudHJlZUNvbnRyb2wuZXhwYW5kKG5vZGUpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmV4cGFuZEdyb3VwKGxheWVyLmNoaWxkcmVuKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgcmVzdG9yZU1vZGVsKFxuICAgIG1vZGVsOiBTZWxlY3Rpb25Nb2RlbDxMYXllckZsYXROb2RlPixcbiAgICBjYWxsYmFjazogKG5vZGU6IExheWVyRmxhdE5vZGUpID0+IHZvaWRcbiAgKSB7XG4gICAgY29uc3QgaWRzOiBzdHJpbmdbXSA9IEFycmF5LmZyb20obW9kZWxbJ19zZWxlY3Rpb24nXSkubWFwKFxuICAgICAgKHZhbHVlKSA9PiB2YWx1ZVsnaWQnXVxuICAgICk7XG4gICAgbW9kZWwuY2xlYXIoKTtcbiAgICB0aGlzLnRyZWVDb250cm9sLmRhdGFOb2Rlcy5mb3JFYWNoKChub2RlKSA9PiB7XG4gICAgICBpZiAobW9kZWwuaXNTZWxlY3RlZChub2RlKSB8fCBpZHMuaW5jbHVkZXMobm9kZS5pZCkpIHtcbiAgICAgICAgY2FsbGJhY2sobm9kZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbn1cbiIsIjxtYXQtdHJlZVxuICBbY2xhc3MuLS1ub3QtZGVza3RvcF09XCIhaXNEZXNrdG9wXCJcbiAgaWdvVHJlZURyYWdEcm9wXG4gIFt0cmVlRHJhZ0Ryb3BJc0Rpc2FibGVkXT1cImlzRHJhZ0Ryb3BEaXNhYmxlZFwiXG4gIFttYXhMZXZlbF09XCJ2aWV3ZXJPcHRpb25zPy5ncm91cD8ubWF4SGllcmFyY2h5TGV2ZWxcIlxuICBbZGF0YVNvdXJjZV09XCJkYXRhU291cmNlXCJcbiAgW3RyZWVDb250cm9sXT1cInRyZWVDb250cm9sXCJcbiAgKGRyYWdTdGFydCk9XCJkcmFnU3RhcnQoKVwiXG4gIChvbkRyb3ApPVwiZHJvcE5vZGUoJGV2ZW50KVwiXG4gIChvbkRyb3BFcnJvcik9XCJkcm9wTm9kZUVycm9yKCRldmVudClcIlxuPlxuICA8IS0tIFRoaXMgaXMgdGhlIHRyZWUgbm9kZSB0ZW1wbGF0ZSBmb3IgbGVhZiBub2RlcyAtLT5cbiAgPG1hdC10cmVlLW5vZGVcbiAgICAqbWF0VHJlZU5vZGVEZWY9XCJsZXQgbm9kZVwiXG4gICAgW2NsYXNzLi0tc2VsZWN0ZWRdPVwiaXNTZWxlY3RlZChub2RlLmRhdGEpXCJcbiAgICBbY2xhc3MuLS1jaGlsZHJlbi1zZWxlY3RlZF09XCJpc0Rlc2NlbmRhbnRTZWxlY3Rpb24obm9kZS5kYXRhKVwiXG4gID5cbiAgICA8aWdvLWxheWVyLWl0ZW1cbiAgICAgIFttYXRUcmVlTm9kZVBhZGRpbmddPVwibm9kZS5sZXZlbCA9PT0gMCA/IDEgOiBub2RlLmxldmVsXCJcbiAgICAgIFttYXRUcmVlTm9kZVBhZGRpbmdJbmRlbnRdPVwibm9kZS5sZXZlbCA9PT0gMCA/IDE2IDogMjQgKyAxNiAvIG5vZGUubGV2ZWxcIlxuICAgICAgY2xhc3M9XCJ0cmVlLW5vZGUtaXRlbVwiXG4gICAgICBbbGF5ZXJdPVwibm9kZS5kYXRhXCJcbiAgICAgIFt2aXNpYmxlXT1cIm5vZGUuZGF0YS52aXNpYmxlXCJcbiAgICAgIFt2aWV3ZXJPcHRpb25zXT1cInZpZXdlck9wdGlvbnNcIlxuICAgICAgW3NlbGVjdGVkXT1cImlzU2VsZWN0ZWQobm9kZS5kYXRhKSB8fCBpc0Rlc2NlbmRhbnRTZWxlY3Rpb24obm9kZS5kYXRhKVwiXG4gICAgICBbc2VsZWN0aW9uRGlzYWJsZWRdPVwiaXNEZXNjZW5kYW50U2VsZWN0aW9uKG5vZGUuZGF0YSlcIlxuICAgICAgKGFjdGlvbik9XCJ0b2dnbGVBY3RpdmUoJGV2ZW50KVwiXG4gICAgICAoc2VsZWN0Q2hhbmdlKT1cImhhbmRsZVNlbGVjdCgkZXZlbnQsIG5vZGUuZGF0YSlcIlxuICAgID5cbiAgICA8L2lnby1sYXllci1pdGVtPlxuICA8L21hdC10cmVlLW5vZGU+XG4gIDwhLS0gVGhpcyBpcyB0aGUgdHJlZSBub2RlIHRlbXBsYXRlIGZvciBleHBhbmRhYmxlIG5vZGVzIC0tPlxuICA8bWF0LXRyZWUtbm9kZVxuICAgICptYXRUcmVlTm9kZURlZj1cImxldCBub2RlOyB3aGVuOiBpc0dyb3VwXCJcbiAgICBbY2xhc3MuLS1zZWxlY3RlZF09XCJpc1NlbGVjdGVkKG5vZGUuZGF0YSlcIlxuICAgIFtjbGFzcy4tLWNoaWxkcmVuLXNlbGVjdGVkXT1cImlzRGVzY2VuZGFudFNlbGVjdGlvbihub2RlLmRhdGEpXCJcbiAgPlxuICAgIDxpZ28tbGF5ZXItZ3JvdXBcbiAgICAgIG1hdFRyZWVOb2RlUGFkZGluZ1xuICAgICAgW21hdFRyZWVOb2RlUGFkZGluZ0luZGVudF09XCIyNFwiXG4gICAgICBjbGFzcz1cInRyZWUtbm9kZS1pdGVtXCJcbiAgICAgIFtsYXllcl09XCJub2RlLmRhdGFcIlxuICAgICAgW3ZpZXdlck9wdGlvbnNdPVwidmlld2VyT3B0aW9uc1wiXG4gICAgICBbc2VsZWN0ZWRdPVwiaXNTZWxlY3RlZChub2RlLmRhdGEpIHx8IGlzRGVzY2VuZGFudFNlbGVjdGlvbihub2RlLmRhdGEpXCJcbiAgICAgIFtzZWxlY3Rpb25EaXNhYmxlZF09XCJpc0Rlc2NlbmRhbnRTZWxlY3Rpb24obm9kZS5kYXRhKVwiXG4gICAgICAoYWN0aW9uKT1cInRvZ2dsZUFjdGl2ZSgkZXZlbnQpXCJcbiAgICAgIChleHBhbmQpPVwidHJlZUNvbnRyb2wudG9nZ2xlKG5vZGUpOyBoYW5kbGVOb2RlVG9nZ2xlKG5vZGUpXCJcbiAgICAgIChzZWxlY3RDaGFuZ2UpPVwiaGFuZGxlU2VsZWN0KCRldmVudCwgbm9kZS5kYXRhKVwiXG4gICAgPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgbWF0VHJlZU5vZGVUb2dnbGVcbiAgICAgICAgY2xhc3M9XCJsYXllci1pbmRpY2F0b3JcIlxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidUb2dnbGUgJyArIG5vZGUuZGF0YS50aXRsZVwiXG4gICAgICAgIChjbGljayk9XCJoYW5kbGVOb2RlVG9nZ2xlKG5vZGUpXCJcbiAgICAgID5cbiAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwibWF0LWljb24tcnRsLW1pcnJvclwiPlxuICAgICAgICAgIHt7XG4gICAgICAgICAgICB0cmVlQ29udHJvbC5pc0V4cGFuZGVkKG5vZGUpXG4gICAgICAgICAgICAgID8gJ2tleWJvYXJkX2Fycm93X2Rvd24nXG4gICAgICAgICAgICAgIDogJ2tleWJvYXJkX2Fycm93X3JpZ2h0J1xuICAgICAgICAgIH19XG4gICAgICAgIDwvbWF0LWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2lnby1sYXllci1ncm91cD5cbiAgPC9tYXQtdHJlZS1ub2RlPlxuPC9tYXQtdHJlZT5cbiJdfQ==
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export * from './layer-list-tool.component';
|
|
2
|
+
export * from './layer-list-tool.interface';
|
|
3
|
+
export * from './layer-list-tool.service';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9sYXllci9sYXllci1saXN0LXRvb2wvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xheWVyLWxpc3QtdG9vbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9sYXllci1saXN0LXRvb2wuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGF5ZXItbGlzdC10b29sLnNlcnZpY2UnO1xuIl19
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { NgIf } from '@angular/common';
|
|
2
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
|
|
3
|
+
import { FormsModule } from '@angular/forms';
|
|
4
|
+
import { MatBadgeModule } from '@angular/material/badge';
|
|
5
|
+
import { MatButtonModule } from '@angular/material/button';
|
|
6
|
+
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
7
|
+
import { MatIconModule } from '@angular/material/icon';
|
|
8
|
+
import { MatInputModule } from '@angular/material/input';
|
|
9
|
+
import { MatMenuModule } from '@angular/material/menu';
|
|
10
|
+
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
11
|
+
import { IgoBadgeIconDirective } from '@igo2/common/badge';
|
|
12
|
+
import { FormDialogService } from '@igo2/common/form';
|
|
13
|
+
import { IgoLanguageModule } from '@igo2/core/language';
|
|
14
|
+
import { LayerSearchComponent } from '../layer-search/layer-search.component';
|
|
15
|
+
import { LayerListToolService } from './layer-list-tool.service';
|
|
16
|
+
import * as i0 from "@angular/core";
|
|
17
|
+
import * as i1 from "./layer-list-tool.service";
|
|
18
|
+
import * as i2 from "@angular/material/tooltip";
|
|
19
|
+
import * as i3 from "@angular/material/button";
|
|
20
|
+
import * as i4 from "@angular/material/icon";
|
|
21
|
+
import * as i5 from "@ngx-translate/core";
|
|
22
|
+
export class LayerListToolComponent {
|
|
23
|
+
layerListToolService;
|
|
24
|
+
mode;
|
|
25
|
+
viewerOptions;
|
|
26
|
+
floatLabel = 'auto';
|
|
27
|
+
onlyVisible;
|
|
28
|
+
term;
|
|
29
|
+
searchChange = new EventEmitter();
|
|
30
|
+
visibilityOnlyChange = new EventEmitter();
|
|
31
|
+
modeChange = new EventEmitter();
|
|
32
|
+
addedLayer = new EventEmitter();
|
|
33
|
+
get selectionActive() {
|
|
34
|
+
return this.mode === 'selection';
|
|
35
|
+
}
|
|
36
|
+
constructor(layerListToolService) {
|
|
37
|
+
this.layerListToolService = layerListToolService;
|
|
38
|
+
}
|
|
39
|
+
handleTermChange(value) {
|
|
40
|
+
this.searchChange.emit(value);
|
|
41
|
+
}
|
|
42
|
+
toggleSelectionMode() {
|
|
43
|
+
this.modeChange.emit(!this.selectionActive);
|
|
44
|
+
}
|
|
45
|
+
createGroup() {
|
|
46
|
+
this.layerListToolService.createGroup().subscribe((group) => {
|
|
47
|
+
if (!group) {
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
this.addedLayer.emit(group);
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LayerListToolComponent, deps: [{ token: i1.LayerListToolService }], target: i0.ɵɵFactoryTarget.Component });
|
|
54
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: LayerListToolComponent, isStandalone: true, selector: "igo-layer-list-tool", inputs: { mode: "mode", viewerOptions: "viewerOptions", floatLabel: "floatLabel", onlyVisible: "onlyVisible", term: "term" }, outputs: { searchChange: "searchChange", visibilityOnlyChange: "visibilityOnlyChange", modeChange: "modeChange", addedLayer: "addedLayer" }, providers: [LayerListToolService, FormDialogService], ngImport: i0, template: "<igo-layer-search\n [initialValue]=\"term\"\n [floatLabel]=\"floatLabel\"\n placeholder=\"igo.geo.layer.filterPlaceholder\"\n tooltip=\"igo.geo.layer.subsetLayersListKeyword\"\n (searchChange)=\"handleTermChange($event)\"\n></igo-layer-search>\n\n<div class=\"actions-container\">\n <button\n mat-icon-button\n [color]=\"selectionActive ? 'warn' : 'primary'\"\n [matTooltip]=\"\n selectionActive\n ? ('igo.geo.layer.deactivateSelectionMode' | translate)\n : ('igo.geo.layer.activateSelectionMode' | translate)\n \"\n matTooltipShowDelay=\"500\"\n (click)=\"toggleSelectionMode()\"\n >\n <mat-icon>{{\n selectionActive ? 'remove_done' : 'library_add_check'\n }}</mat-icon>\n </button>\n\n <button\n *ngIf=\"viewerOptions?.group?.canCreate\"\n mat-icon-button\n [disabled]=\"!viewerOptions.group.enable\"\n [matTooltip]=\"'igo.geo.layer.group.create' | translate\"\n matTooltipShowDelay=\"500\"\n type=\"button\"\n color=\"primary\"\n (click)=\"createGroup()\"\n >\n <mat-icon>create_new_folder</mat-icon>\n </button>\n</div>\n", styles: [":host{display:flex;align-items:center;justify-content:space-between;padding:8px 12px}.sort-alpha.--active mat-icon{color:red}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "ngmodule", type: MatInputModule }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatBadgeModule }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "component", type: LayerSearchComponent, selector: "igo-layer-search", inputs: ["initialValue", "floatLabel", "placeholder", "tooltip"], outputs: ["searchChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
55
|
+
}
|
|
56
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LayerListToolComponent, decorators: [{
|
|
57
|
+
type: Component,
|
|
58
|
+
args: [{ selector: 'igo-layer-list-tool', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
59
|
+
FormsModule,
|
|
60
|
+
NgIf,
|
|
61
|
+
MatFormFieldModule,
|
|
62
|
+
MatInputModule,
|
|
63
|
+
MatTooltipModule,
|
|
64
|
+
MatButtonModule,
|
|
65
|
+
MatMenuModule,
|
|
66
|
+
MatIconModule,
|
|
67
|
+
MatBadgeModule,
|
|
68
|
+
IgoBadgeIconDirective,
|
|
69
|
+
IgoLanguageModule,
|
|
70
|
+
LayerSearchComponent
|
|
71
|
+
], providers: [LayerListToolService, FormDialogService], template: "<igo-layer-search\n [initialValue]=\"term\"\n [floatLabel]=\"floatLabel\"\n placeholder=\"igo.geo.layer.filterPlaceholder\"\n tooltip=\"igo.geo.layer.subsetLayersListKeyword\"\n (searchChange)=\"handleTermChange($event)\"\n></igo-layer-search>\n\n<div class=\"actions-container\">\n <button\n mat-icon-button\n [color]=\"selectionActive ? 'warn' : 'primary'\"\n [matTooltip]=\"\n selectionActive\n ? ('igo.geo.layer.deactivateSelectionMode' | translate)\n : ('igo.geo.layer.activateSelectionMode' | translate)\n \"\n matTooltipShowDelay=\"500\"\n (click)=\"toggleSelectionMode()\"\n >\n <mat-icon>{{\n selectionActive ? 'remove_done' : 'library_add_check'\n }}</mat-icon>\n </button>\n\n <button\n *ngIf=\"viewerOptions?.group?.canCreate\"\n mat-icon-button\n [disabled]=\"!viewerOptions.group.enable\"\n [matTooltip]=\"'igo.geo.layer.group.create' | translate\"\n matTooltipShowDelay=\"500\"\n type=\"button\"\n color=\"primary\"\n (click)=\"createGroup()\"\n >\n <mat-icon>create_new_folder</mat-icon>\n </button>\n</div>\n", styles: [":host{display:flex;align-items:center;justify-content:space-between;padding:8px 12px}.sort-alpha.--active mat-icon{color:red}\n"] }]
|
|
72
|
+
}], ctorParameters: () => [{ type: i1.LayerListToolService }], propDecorators: { mode: [{
|
|
73
|
+
type: Input,
|
|
74
|
+
args: [{ required: true }]
|
|
75
|
+
}], viewerOptions: [{
|
|
76
|
+
type: Input
|
|
77
|
+
}], floatLabel: [{
|
|
78
|
+
type: Input
|
|
79
|
+
}], onlyVisible: [{
|
|
80
|
+
type: Input
|
|
81
|
+
}], term: [{
|
|
82
|
+
type: Input
|
|
83
|
+
}], searchChange: [{
|
|
84
|
+
type: Output
|
|
85
|
+
}], visibilityOnlyChange: [{
|
|
86
|
+
type: Output
|
|
87
|
+
}], modeChange: [{
|
|
88
|
+
type: Output
|
|
89
|
+
}], addedLayer: [{
|
|
90
|
+
type: Output
|
|
91
|
+
}] } });
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXItbGlzdC10b29sLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2xheWVyL2xheWVyLWxpc3QtdG9vbC9sYXllci1saXN0LXRvb2wuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvbGF5ZXIvbGF5ZXItbGlzdC10b29sL2xheWVyLWxpc3QtdG9vbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdkMsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUVMLGtCQUFrQixFQUNuQixNQUFNLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTdELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzNELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXhELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBTTlFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7O0FBd0JqRSxNQUFNLE9BQU8sc0JBQXNCO0lBZ0JiO0lBZk8sSUFBSSxDQUFnQjtJQUN0QyxhQUFhLENBQXFCO0lBQ2xDLFVBQVUsR0FBbUIsTUFBTSxDQUFDO0lBQ3BDLFdBQVcsQ0FBVTtJQUNyQixJQUFJLENBQVM7SUFFWixZQUFZLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztJQUMxQyxvQkFBb0IsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO0lBQ25ELFVBQVUsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO0lBQ3pDLFVBQVUsR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO0lBRXRELElBQUksZUFBZTtRQUNqQixPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssV0FBVyxDQUFDO0lBQ25DLENBQUM7SUFFRCxZQUFvQixvQkFBMEM7UUFBMUMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtJQUFHLENBQUM7SUFFbEUsZ0JBQWdCLENBQUMsS0FBeUI7UUFDeEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUMxRCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ1gsT0FBTztZQUNULENBQUM7WUFDRCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7d0dBakNVLHNCQUFzQjs0RkFBdEIsc0JBQXNCLDZVQUZ0QixDQUFDLG9CQUFvQixFQUFFLGlCQUFpQixDQUFDLDBCQ3BEdEQseWxDQXNDQSx3TERDSSxXQUFXLCtCQUNYLElBQUksNEZBQ0osa0JBQWtCLDhCQUNsQixjQUFjLDhCQUNkLGdCQUFnQiw0VEFDaEIsZUFBZSwySUFDZixhQUFhLDhCQUNiLGFBQWEsbUxBQ2IsY0FBYyw4QkFFZCxpQkFBaUIsNEZBQ2pCLG9CQUFvQjs7NEZBSVgsc0JBQXNCO2tCQXRCbEMsU0FBUzsrQkFDRSxxQkFBcUIsbUJBR2QsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1AsV0FBVzt3QkFDWCxJQUFJO3dCQUNKLGtCQUFrQjt3QkFDbEIsY0FBYzt3QkFDZCxnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYixhQUFhO3dCQUNiLGNBQWM7d0JBQ2QscUJBQXFCO3dCQUNyQixpQkFBaUI7d0JBQ2pCLG9CQUFvQjtxQkFDckIsYUFDVSxDQUFDLG9CQUFvQixFQUFFLGlCQUFpQixDQUFDO3lGQUd6QixJQUFJO3NCQUE5QixLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFDaEIsYUFBYTtzQkFBckIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUVJLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csb0JBQW9CO3NCQUE3QixNQUFNO2dCQUNHLFVBQVU7c0JBQW5CLE1BQU07Z0JBQ0csVUFBVTtzQkFBbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRCYWRnZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2JhZGdlJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQge1xuICBGbG9hdExhYmVsVHlwZSxcbiAgTWF0Rm9ybUZpZWxkTW9kdWxlXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBNYXRNZW51TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XG5cbmltcG9ydCB7IElnb0JhZGdlSWNvbkRpcmVjdGl2ZSB9IGZyb20gJ0BpZ28yL2NvbW1vbi9iYWRnZSc7XG5pbXBvcnQgeyBGb3JtRGlhbG9nU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvbW1vbi9mb3JtJztcbmltcG9ydCB7IElnb0xhbmd1YWdlTW9kdWxlIH0gZnJvbSAnQGlnbzIvY29yZS9sYW5ndWFnZSc7XG5cbmltcG9ydCB7IExheWVyU2VhcmNoQ29tcG9uZW50IH0gZnJvbSAnLi4vbGF5ZXItc2VhcmNoL2xheWVyLXNlYXJjaC5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgTGF5ZXJUb29sTW9kZSxcbiAgTGF5ZXJWaWV3ZXJPcHRpb25zXG59IGZyb20gJy4uL2xheWVyLXZpZXdlci9sYXllci12aWV3ZXIuaW50ZXJmYWNlJztcbmltcG9ydCB7IExheWVyR3JvdXAgfSBmcm9tICcuLi9zaGFyZWQvbGF5ZXJzL2xheWVyLWdyb3VwJztcbmltcG9ydCB7IExheWVyTGlzdFRvb2xTZXJ2aWNlIH0gZnJvbSAnLi9sYXllci1saXN0LXRvb2wuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2lnby1sYXllci1saXN0LXRvb2wnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGF5ZXItbGlzdC10b29sLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbGF5ZXItbGlzdC10b29sLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgTmdJZixcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWF0TWVudU1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIE1hdEJhZGdlTW9kdWxlLFxuICAgIElnb0JhZGdlSWNvbkRpcmVjdGl2ZSxcbiAgICBJZ29MYW5ndWFnZU1vZHVsZSxcbiAgICBMYXllclNlYXJjaENvbXBvbmVudFxuICBdLFxuICBwcm92aWRlcnM6IFtMYXllckxpc3RUb29sU2VydmljZSwgRm9ybURpYWxvZ1NlcnZpY2VdXG59KVxuZXhwb3J0IGNsYXNzIExheWVyTGlzdFRvb2xDb21wb25lbnQge1xuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBtb2RlOiBMYXllclRvb2xNb2RlO1xuICBASW5wdXQoKSB2aWV3ZXJPcHRpb25zOiBMYXllclZpZXdlck9wdGlvbnM7XG4gIEBJbnB1dCgpIGZsb2F0TGFiZWw6IEZsb2F0TGFiZWxUeXBlID0gJ2F1dG8nO1xuICBASW5wdXQoKSBvbmx5VmlzaWJsZTogYm9vbGVhbjtcbiAgQElucHV0KCkgdGVybTogc3RyaW5nO1xuXG4gIEBPdXRwdXQoKSBzZWFyY2hDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIHZpc2liaWxpdHlPbmx5Q2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICBAT3V0cHV0KCkgbW9kZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcbiAgQE91dHB1dCgpIGFkZGVkTGF5ZXIgPSBuZXcgRXZlbnRFbWl0dGVyPExheWVyR3JvdXA+KCk7XG5cbiAgZ2V0IHNlbGVjdGlvbkFjdGl2ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5tb2RlID09PSAnc2VsZWN0aW9uJztcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbGF5ZXJMaXN0VG9vbFNlcnZpY2U6IExheWVyTGlzdFRvb2xTZXJ2aWNlKSB7fVxuXG4gIGhhbmRsZVRlcm1DaGFuZ2UodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoQ2hhbmdlLmVtaXQodmFsdWUpO1xuICB9XG5cbiAgdG9nZ2xlU2VsZWN0aW9uTW9kZSgpIHtcbiAgICB0aGlzLm1vZGVDaGFuZ2UuZW1pdCghdGhpcy5zZWxlY3Rpb25BY3RpdmUpO1xuICB9XG5cbiAgY3JlYXRlR3JvdXAoKTogdm9pZCB7XG4gICAgdGhpcy5sYXllckxpc3RUb29sU2VydmljZS5jcmVhdGVHcm91cCgpLnN1YnNjcmliZSgoZ3JvdXApID0+IHtcbiAgICAgIGlmICghZ3JvdXApIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgdGhpcy5hZGRlZExheWVyLmVtaXQoZ3JvdXApO1xuICAgIH0pO1xuICB9XG59XG4iLCI8aWdvLWxheWVyLXNlYXJjaFxuICBbaW5pdGlhbFZhbHVlXT1cInRlcm1cIlxuICBbZmxvYXRMYWJlbF09XCJmbG9hdExhYmVsXCJcbiAgcGxhY2Vob2xkZXI9XCJpZ28uZ2VvLmxheWVyLmZpbHRlclBsYWNlaG9sZGVyXCJcbiAgdG9vbHRpcD1cImlnby5nZW8ubGF5ZXIuc3Vic2V0TGF5ZXJzTGlzdEtleXdvcmRcIlxuICAoc2VhcmNoQ2hhbmdlKT1cImhhbmRsZVRlcm1DaGFuZ2UoJGV2ZW50KVwiXG4+PC9pZ28tbGF5ZXItc2VhcmNoPlxuXG48ZGl2IGNsYXNzPVwiYWN0aW9ucy1jb250YWluZXJcIj5cbiAgPGJ1dHRvblxuICAgIG1hdC1pY29uLWJ1dHRvblxuICAgIFtjb2xvcl09XCJzZWxlY3Rpb25BY3RpdmUgPyAnd2FybicgOiAncHJpbWFyeSdcIlxuICAgIFttYXRUb29sdGlwXT1cIlxuICAgICAgc2VsZWN0aW9uQWN0aXZlXG4gICAgICAgID8gKCdpZ28uZ2VvLmxheWVyLmRlYWN0aXZhdGVTZWxlY3Rpb25Nb2RlJyB8IHRyYW5zbGF0ZSlcbiAgICAgICAgOiAoJ2lnby5nZW8ubGF5ZXIuYWN0aXZhdGVTZWxlY3Rpb25Nb2RlJyB8IHRyYW5zbGF0ZSlcbiAgICBcIlxuICAgIG1hdFRvb2x0aXBTaG93RGVsYXk9XCI1MDBcIlxuICAgIChjbGljayk9XCJ0b2dnbGVTZWxlY3Rpb25Nb2RlKClcIlxuICA+XG4gICAgPG1hdC1pY29uPnt7XG4gICAgICBzZWxlY3Rpb25BY3RpdmUgPyAncmVtb3ZlX2RvbmUnIDogJ2xpYnJhcnlfYWRkX2NoZWNrJ1xuICAgIH19PC9tYXQtaWNvbj5cbiAgPC9idXR0b24+XG5cbiAgPGJ1dHRvblxuICAgICpuZ0lmPVwidmlld2VyT3B0aW9ucz8uZ3JvdXA/LmNhbkNyZWF0ZVwiXG4gICAgbWF0LWljb24tYnV0dG9uXG4gICAgW2Rpc2FibGVkXT1cIiF2aWV3ZXJPcHRpb25zLmdyb3VwLmVuYWJsZVwiXG4gICAgW21hdFRvb2x0aXBdPVwiJ2lnby5nZW8ubGF5ZXIuZ3JvdXAuY3JlYXRlJyB8IHRyYW5zbGF0ZVwiXG4gICAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXG4gICAgdHlwZT1cImJ1dHRvblwiXG4gICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAoY2xpY2spPVwiY3JlYXRlR3JvdXAoKVwiXG4gID5cbiAgICA8bWF0LWljb24+Y3JlYXRlX25ld19mb2xkZXI8L21hdC1pY29uPlxuICA8L2J1dHRvbj5cbjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export var LayerListControlsEnum;
|
|
2
|
+
(function (LayerListControlsEnum) {
|
|
3
|
+
LayerListControlsEnum["always"] = "always";
|
|
4
|
+
LayerListControlsEnum["never"] = "never";
|
|
5
|
+
LayerListControlsEnum["default"] = "default";
|
|
6
|
+
})(LayerListControlsEnum || (LayerListControlsEnum = {}));
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXItbGlzdC10b29sLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2xheWVyL2xheWVyLWxpc3QtdG9vbC9sYXllci1saXN0LXRvb2wuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLE1BQU0sQ0FBTixJQUFZLHFCQUlYO0FBSkQsV0FBWSxxQkFBcUI7SUFDL0IsMENBQWlCLENBQUE7SUFDakIsd0NBQWUsQ0FBQTtJQUNmLDRDQUFtQixDQUFBO0FBQ3JCLENBQUMsRUFKVyxxQkFBcUIsS0FBckIscUJBQXFCLFFBSWhDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBMYXllckxpc3RDb250cm9sc09wdGlvbnMge1xuICBleGNsdWRlQmFzZUxheWVycz86IGJvb2xlYW47XG4gIHNob3dUb29sYmFyPzogTGF5ZXJMaXN0Q29udHJvbHNFbnVtO1xuICBrZXl3b3JkPzogc3RyaW5nO1xuICBzb3J0QWxwaGE/OiBib29sZWFuO1xuICBvbmx5VmlzaWJsZT86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBlbnVtIExheWVyTGlzdENvbnRyb2xzRW51bSB7XG4gIGFsd2F5cyA9ICdhbHdheXMnLFxuICBuZXZlciA9ICduZXZlcicsXG4gIGRlZmF1bHQgPSAnZGVmYXVsdCdcbn1cbiJdfQ==
|