@igo2/geo 1.12.0 → 1.13.0-alpha.1
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/{esm2015/igo2-geo.js → esm2020/igo2-geo.mjs} +0 -0
- package/esm2020/lib/catalog/catalog-browser/catalog-browser-group.component.mjs +299 -0
- package/{esm2015/lib/catalog/catalog-browser/catalog-browser-layer.component.js → esm2020/lib/catalog/catalog-browser/catalog-browser-layer.component.mjs} +13 -19
- package/esm2020/lib/catalog/catalog-browser/catalog-browser.component.mjs +244 -0
- package/{esm2015/lib/catalog/catalog-browser/catalog-browser.module.js → esm2020/lib/catalog/catalog-browser/catalog-browser.module.mjs} +17 -19
- package/esm2020/lib/catalog/catalog-library/add-catalog-dialog.component.mjs +209 -0
- package/esm2020/lib/catalog/catalog-library/catalog-library-item.component.mjs +79 -0
- package/esm2020/lib/catalog/catalog-library/catalog-library.component.mjs +217 -0
- package/{esm2015/lib/catalog/catalog-library/catalog-library.module.js → esm2020/lib/catalog/catalog-library/catalog-library.module.mjs} +21 -23
- package/{esm2015/lib/catalog/catalog.module.js → esm2020/lib/catalog/catalog.module.mjs} +9 -11
- package/{esm2015/lib/catalog/index.js → esm2020/lib/catalog/index.mjs} +0 -0
- package/{esm2015/lib/catalog/shared/catalog.abstract.js → esm2020/lib/catalog/shared/catalog.abstract.mjs} +0 -0
- package/{esm2015/lib/catalog/shared/catalog.enum.js → esm2020/lib/catalog/shared/catalog.enum.mjs} +0 -0
- package/{esm2015/lib/catalog/shared/catalog.interface.js → esm2020/lib/catalog/shared/catalog.interface.mjs} +0 -0
- package/esm2020/lib/catalog/shared/catalog.service.mjs +606 -0
- package/{esm2015/lib/catalog/shared/index.js → esm2020/lib/catalog/shared/index.mjs} +0 -0
- package/{esm2015/lib/datasource/datasource.module.js → esm2020/lib/datasource/datasource.module.mjs} +2 -2
- package/{esm2015/lib/datasource/index.js → esm2020/lib/datasource/index.mjs} +0 -0
- package/esm2020/lib/datasource/shared/capabilities.service.mjs +426 -0
- package/{esm2015/lib/datasource/shared/datasource.service.js → esm2020/lib/datasource/shared/datasource.service.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/any-datasource.interface.js → esm2020/lib/datasource/shared/datasources/any-datasource.interface.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/any-datasource.js → esm2020/lib/datasource/shared/datasources/any-datasource.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/arcgisrest-datasource.interface.js → esm2020/lib/datasource/shared/datasources/arcgisrest-datasource.interface.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/arcgisrest-datasource.js → esm2020/lib/datasource/shared/datasources/arcgisrest-datasource.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/carto-datasource.interface.js → esm2020/lib/datasource/shared/datasources/carto-datasource.interface.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/carto-datasource.js → esm2020/lib/datasource/shared/datasources/carto-datasource.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/cluster-datasource.interface.js → esm2020/lib/datasource/shared/datasources/cluster-datasource.interface.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/cluster-datasource.js → esm2020/lib/datasource/shared/datasources/cluster-datasource.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/data.service.js → esm2020/lib/datasource/shared/datasources/data.service.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/datasource.interface.js → esm2020/lib/datasource/shared/datasources/datasource.interface.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/datasource.js → esm2020/lib/datasource/shared/datasources/datasource.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/feature-datasource.interface.js → esm2020/lib/datasource/shared/datasources/feature-datasource.interface.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/feature-datasource.js → esm2020/lib/datasource/shared/datasources/feature-datasource.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.js → esm2020/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/imagearcgisrest-datasource.js → esm2020/lib/datasource/shared/datasources/imagearcgisrest-datasource.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/index.js → esm2020/lib/datasource/shared/datasources/index.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/mvt-datasource.interface.js → esm2020/lib/datasource/shared/datasources/mvt-datasource.interface.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/mvt-datasource.js → esm2020/lib/datasource/shared/datasources/mvt-datasource.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/osm-datasource.interface.js → esm2020/lib/datasource/shared/datasources/osm-datasource.interface.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/osm-datasource.js → esm2020/lib/datasource/shared/datasources/osm-datasource.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.js → esm2020/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/tilearcgisrest-datasource.js → esm2020/lib/datasource/shared/datasources/tilearcgisrest-datasource.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/tiledebug-datasource.interface.js → esm2020/lib/datasource/shared/datasources/tiledebug-datasource.interface.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/tiledebug-datasource.js → esm2020/lib/datasource/shared/datasources/tiledebug-datasource.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/websocket-datasource.interface.js → esm2020/lib/datasource/shared/datasources/websocket-datasource.interface.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/websocket-datasource.js → esm2020/lib/datasource/shared/datasources/websocket-datasource.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/wfs-datasource.interface.js → esm2020/lib/datasource/shared/datasources/wfs-datasource.interface.mjs} +0 -0
- package/esm2020/lib/datasource/shared/datasources/wfs-datasource.mjs +74 -0
- package/esm2020/lib/datasource/shared/datasources/wfs.service.mjs +152 -0
- package/{esm2015/lib/datasource/shared/datasources/wms-datasource.interface.js → esm2020/lib/datasource/shared/datasources/wms-datasource.interface.mjs} +0 -0
- package/esm2020/lib/datasource/shared/datasources/wms-datasource.mjs +205 -0
- package/{esm2015/lib/datasource/shared/datasources/wms-wfs.utils.js → esm2020/lib/datasource/shared/datasources/wms-wfs.utils.mjs} +4 -4
- package/{esm2015/lib/datasource/shared/datasources/wmts-datasource.interface.js → esm2020/lib/datasource/shared/datasources/wmts-datasource.interface.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/wmts-datasource.js → esm2020/lib/datasource/shared/datasources/wmts-datasource.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/xyz-datasource.interface.js → esm2020/lib/datasource/shared/datasources/xyz-datasource.interface.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/datasources/xyz-datasource.js → esm2020/lib/datasource/shared/datasources/xyz-datasource.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/index.js → esm2020/lib/datasource/shared/index.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/options/index.js → esm2020/lib/datasource/shared/options/index.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/options/options-api.interface.js → esm2020/lib/datasource/shared/options/options-api.interface.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/options/options-api.providers.js → esm2020/lib/datasource/shared/options/options-api.providers.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/options/options-api.service.js → esm2020/lib/datasource/shared/options/options-api.service.mjs} +0 -0
- package/{esm2015/lib/datasource/shared/options/options.service.js → esm2020/lib/datasource/shared/options/options.service.mjs} +0 -0
- package/{esm2015/lib/datasource/utils/esri-style-generator.js → esm2020/lib/datasource/utils/esri-style-generator.mjs} +0 -0
- package/{esm2015/lib/datasource/utils/index.js → esm2020/lib/datasource/utils/index.mjs} +0 -0
- package/{esm2015/lib/datasource/utils/tilegrid.js → esm2020/lib/datasource/utils/tilegrid.mjs} +0 -0
- package/esm2020/lib/directions/directions-buttons/directions-buttons.component.mjs +224 -0
- package/{esm2015/lib/directions/directions-buttons/index.js → esm2020/lib/directions/directions-buttons/index.mjs} +0 -0
- package/esm2020/lib/directions/directions-inputs/directions-inputs.component.mjs +290 -0
- package/{esm2015/lib/directions/directions-inputs/index.js → esm2020/lib/directions/directions-inputs/index.mjs} +0 -0
- package/esm2020/lib/directions/directions-results/directions-results.component.mjs +196 -0
- package/{esm2015/lib/directions/directions-results/index.js → esm2020/lib/directions/directions-results/index.mjs} +0 -0
- package/{esm2015/lib/directions/directions-sources/directions-source.interface.js → esm2020/lib/directions/directions-sources/directions-source.interface.mjs} +0 -0
- package/{esm2015/lib/directions/directions-sources/directions-source.js → esm2020/lib/directions/directions-sources/directions-source.mjs} +0 -0
- package/{esm2015/lib/directions/directions-sources/directions-source.provider.js → esm2020/lib/directions/directions-sources/directions-source.provider.mjs} +0 -0
- package/{esm2015/lib/directions/directions-sources/index.js → esm2020/lib/directions/directions-sources/index.mjs} +0 -0
- package/{esm2015/lib/directions/directions-sources/osrm-directions-source.js → esm2020/lib/directions/directions-sources/osrm-directions-source.mjs} +0 -0
- package/esm2020/lib/directions/directions.component.mjs +311 -0
- package/{esm2015/lib/directions/directions.module.js → esm2020/lib/directions/directions.module.mjs} +16 -18
- package/{esm2015/lib/directions/index.js → esm2020/lib/directions/index.mjs} +0 -0
- package/{esm2015/lib/directions/shared/directions-source.service.js → esm2020/lib/directions/shared/directions-source.service.mjs} +0 -0
- package/{esm2015/lib/directions/shared/directions.enum.js → esm2020/lib/directions/shared/directions.enum.mjs} +0 -0
- package/{esm2015/lib/directions/shared/directions.interface.js → esm2020/lib/directions/shared/directions.interface.mjs} +0 -0
- package/{esm2015/lib/directions/shared/directions.service.js → esm2020/lib/directions/shared/directions.service.mjs} +0 -0
- package/esm2020/lib/directions/shared/directions.utils.mjs +510 -0
- package/{esm2015/lib/directions/shared/index.js → esm2020/lib/directions/shared/index.mjs} +0 -0
- package/{esm2015/lib/directions/shared/store.js → esm2020/lib/directions/shared/store.mjs} +0 -0
- package/esm2020/lib/download/download-button/download-button.component.mjs +61 -0
- package/{esm2015/lib/download/download-button/index.js → esm2020/lib/download/download-button/index.mjs} +0 -0
- package/{esm2015/lib/download/download.module.js → esm2020/lib/download/download.module.mjs} +6 -8
- package/{esm2015/lib/download/index.js → esm2020/lib/download/index.mjs} +0 -0
- package/{esm2015/lib/download/shared/download.interface.js → esm2020/lib/download/shared/download.interface.mjs} +0 -0
- package/{esm2015/lib/download/shared/download.service.js → esm2020/lib/download/shared/download.service.mjs} +0 -0
- package/{esm2015/lib/download/shared/index.js → esm2020/lib/download/shared/index.mjs} +0 -0
- package/{esm2015/lib/draw/draw/draw-popup.component.js → esm2020/lib/draw/draw/draw-popup.component.mjs} +11 -19
- package/esm2020/lib/draw/draw/draw-shorcuts.component.mjs +48 -0
- package/esm2020/lib/draw/draw/draw.component.mjs +714 -0
- package/{esm2015/lib/draw/draw/draw.module.js → esm2020/lib/draw/draw/draw.module.mjs} +19 -21
- package/{esm2015/lib/draw/drawingTool.module.js → esm2020/lib/draw/drawingTool.module.mjs} +2 -2
- package/{esm2015/lib/draw/index.js → esm2020/lib/draw/index.mjs} +0 -0
- package/{esm2015/lib/draw/shared/draw-icon.service.js → esm2020/lib/draw/shared/draw-icon.service.mjs} +0 -0
- package/{esm2015/lib/draw/shared/draw-style.service.js → esm2020/lib/draw/shared/draw-style.service.mjs} +0 -0
- package/{esm2015/lib/draw/shared/draw.enum.js → esm2020/lib/draw/shared/draw.enum.mjs} +0 -0
- package/{esm2015/lib/draw/shared/draw.interface.js → esm2020/lib/draw/shared/draw.interface.mjs} +0 -0
- package/{esm2015/lib/draw/shared/draw.utils.js → esm2020/lib/draw/shared/draw.utils.mjs} +0 -0
- package/{esm2015/lib/draw/shared/index.js → esm2020/lib/draw/shared/index.mjs} +0 -0
- package/esm2020/lib/feature/feature-details/feature-details.component.mjs +377 -0
- package/{esm2015/lib/feature/feature-details/feature-details.directive.js → esm2020/lib/feature/feature-details/feature-details.directive.mjs} +0 -0
- package/{esm2015/lib/feature/feature-details/feature-details.module.js → esm2020/lib/feature/feature-details/feature-details.module.mjs} +6 -8
- package/{esm2015/lib/feature/feature-form/feature-form.component.js → esm2020/lib/feature/feature-form/feature-form.component.mjs} +3 -8
- package/{esm2015/lib/feature/feature-form/feature-form.module.js → esm2020/lib/feature/feature-form/feature-form.module.mjs} +3 -5
- package/{esm2015/lib/feature/feature.module.js → esm2020/lib/feature/feature.module.mjs} +2 -4
- package/{esm2015/lib/feature/index.js → esm2020/lib/feature/index.mjs} +0 -0
- package/{esm2015/lib/feature/shared/feature.enums.js → esm2020/lib/feature/shared/feature.enums.mjs} +0 -0
- package/{esm2015/lib/feature/shared/feature.interfaces.js → esm2020/lib/feature/shared/feature.interfaces.mjs} +0 -0
- package/{esm2015/lib/feature/shared/feature.utils.js → esm2020/lib/feature/shared/feature.utils.mjs} +0 -0
- package/{esm2015/lib/feature/shared/index.js → esm2020/lib/feature/shared/index.mjs} +0 -0
- package/{esm2015/lib/feature/shared/store.js → esm2020/lib/feature/shared/store.mjs} +0 -0
- package/esm2020/lib/feature/shared/strategies/in-map-extent.mjs +113 -0
- package/{esm2015/lib/feature/shared/strategies/in-map-resolution.js → esm2020/lib/feature/shared/strategies/in-map-resolution.mjs} +0 -0
- package/{esm2015/lib/feature/shared/strategies/index.js → esm2020/lib/feature/shared/strategies/index.mjs} +0 -0
- package/{esm2015/lib/feature/shared/strategies/loading-layer.js → esm2020/lib/feature/shared/strategies/loading-layer.mjs} +0 -0
- package/{esm2015/lib/feature/shared/strategies/loading.js → esm2020/lib/feature/shared/strategies/loading.mjs} +0 -0
- package/{esm2015/lib/feature/shared/strategies/selection.js → esm2020/lib/feature/shared/strategies/selection.mjs} +0 -0
- package/{esm2015/lib/feature/shared/strategies.utils.js → esm2020/lib/feature/shared/strategies.utils.mjs} +0 -0
- package/esm2020/lib/filter/filter.module.mjs +289 -0
- package/{esm2015/lib/filter/index.js → esm2020/lib/filter/index.mjs} +0 -0
- package/{esm2015/lib/filter/ogc-filter-button/index.js → esm2020/lib/filter/ogc-filter-button/index.mjs} +0 -0
- package/esm2020/lib/filter/ogc-filter-button/ogc-filter-button.component.mjs +140 -0
- package/{esm2015/lib/filter/ogc-filter-form/index.js → esm2020/lib/filter/ogc-filter-form/index.mjs} +0 -0
- package/esm2020/lib/filter/ogc-filter-form/ogc-filter-form.component.mjs +645 -0
- package/{esm2015/lib/filter/ogc-filter-selection/index.js → esm2020/lib/filter/ogc-filter-selection/index.mjs} +0 -0
- package/esm2020/lib/filter/ogc-filter-selection/ogc-filter-selection.component.mjs +1302 -0
- package/{esm2015/lib/filter/ogc-filter-time/index.js → esm2020/lib/filter/ogc-filter-time/index.mjs} +0 -0
- package/esm2020/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.mjs +177 -0
- package/esm2020/lib/filter/ogc-filter-time/ogc-filter-time.component.mjs +871 -0
- package/{esm2015/lib/filter/ogc-filterable-form/index.js → esm2020/lib/filter/ogc-filterable-form/index.mjs} +0 -0
- package/{esm2015/lib/filter/ogc-filterable-form/ogc-filterable-form.component.js → esm2020/lib/filter/ogc-filterable-form/ogc-filterable-form.component.mjs} +3 -6
- package/{esm2015/lib/filter/ogc-filterable-item/index.js → esm2020/lib/filter/ogc-filterable-item/index.mjs} +0 -0
- package/esm2020/lib/filter/ogc-filterable-item/ogc-filterable-item.component.mjs +302 -0
- package/{esm2015/lib/filter/ogc-filterable-list/index.js → esm2020/lib/filter/ogc-filterable-list/index.mjs} +0 -0
- package/{esm2015/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.js → esm2020/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.mjs} +0 -0
- package/{esm2015/lib/filter/ogc-filterable-list/ogc-filterable-list.component.js → esm2020/lib/filter/ogc-filterable-list/ogc-filterable-list.component.mjs} +2 -6
- package/{esm2015/lib/filter/shared/filterable-datasource.pipe.js → esm2020/lib/filter/shared/filterable-datasource.pipe.mjs} +0 -0
- package/{esm2015/lib/filter/shared/index.js → esm2020/lib/filter/shared/index.mjs} +0 -0
- package/esm2020/lib/filter/shared/ogc-filter-time.service.mjs +72 -0
- package/{esm2015/lib/filter/shared/ogc-filter.enum.js → esm2020/lib/filter/shared/ogc-filter.enum.mjs} +0 -0
- package/{esm2015/lib/filter/shared/ogc-filter.interface.js → esm2020/lib/filter/shared/ogc-filter.interface.mjs} +0 -0
- package/esm2020/lib/filter/shared/ogc-filter.mjs +692 -0
- package/{esm2015/lib/filter/shared/ogc-filter.service.js → esm2020/lib/filter/shared/ogc-filter.service.mjs} +0 -0
- package/{esm2015/lib/filter/shared/spatial-filter.enum.js → esm2020/lib/filter/shared/spatial-filter.enum.mjs} +0 -0
- package/{esm2015/lib/filter/shared/spatial-filter.interface.js → esm2020/lib/filter/shared/spatial-filter.interface.mjs} +0 -0
- package/{esm2015/lib/filter/shared/spatial-filter.service.js → esm2020/lib/filter/shared/spatial-filter.service.mjs} +0 -0
- package/{esm2015/lib/filter/shared/time-filter.enum.js → esm2020/lib/filter/shared/time-filter.enum.mjs} +0 -0
- package/{esm2015/lib/filter/shared/time-filter.interface.js → esm2020/lib/filter/shared/time-filter.interface.mjs} +0 -0
- package/{esm2015/lib/filter/shared/time-filter.service.js → esm2020/lib/filter/shared/time-filter.service.mjs} +0 -0
- package/{esm2015/lib/filter/spatial-filter/spatial-filter-item/index.js → esm2020/lib/filter/spatial-filter/spatial-filter-item/index.mjs} +0 -0
- package/esm2020/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.mjs +1076 -0
- package/{esm2015/lib/filter/spatial-filter/spatial-filter-list/index.js → esm2020/lib/filter/spatial-filter/spatial-filter-list/index.mjs} +0 -0
- package/{esm2015/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.js → esm2020/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.mjs} +16 -32
- package/{esm2015/lib/filter/spatial-filter/spatial-filter-type/index.js → esm2020/lib/filter/spatial-filter/spatial-filter-type/index.mjs} +0 -0
- package/{esm2015/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.js → esm2020/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.mjs} +7 -20
- package/{esm2015/lib/filter/time-filter-button/index.js → esm2020/lib/filter/time-filter-button/index.mjs} +0 -0
- package/{esm2015/lib/filter/time-filter-button/time-filter-button.component.js → esm2020/lib/filter/time-filter-button/time-filter-button.component.mjs} +3 -8
- package/{esm2015/lib/filter/time-filter-form/index.js → esm2020/lib/filter/time-filter-form/index.mjs} +0 -0
- package/esm2020/lib/filter/time-filter-form/time-filter-form.component.mjs +734 -0
- package/{esm2015/lib/filter/time-filter-item/index.js → esm2020/lib/filter/time-filter-item/index.mjs} +0 -0
- package/esm2020/lib/filter/time-filter-item/time-filter-item.component.mjs +119 -0
- package/{esm2015/lib/filter/time-filter-list/index.js → esm2020/lib/filter/time-filter-list/index.mjs} +0 -0
- package/{esm2015/lib/filter/time-filter-list/time-filter-list-binding.directive.js → esm2020/lib/filter/time-filter-list/time-filter-list-binding.directive.mjs} +0 -0
- package/{esm2015/lib/filter/time-filter-list/time-filter-list.component.js → esm2020/lib/filter/time-filter-list/time-filter-list.component.mjs} +2 -6
- package/{esm2015/lib/geo.module.js → esm2020/lib/geo.module.mjs} +2 -2
- package/{esm2015/lib/geometry/geometry-form-field/geometry-form-field-input.component.js → esm2020/lib/geometry/geometry-form-field/geometry-form-field-input.component.mjs} +2 -6
- package/esm2020/lib/geometry/geometry-form-field/geometry-form-field.component.mjs +189 -0
- package/{esm2015/lib/geometry/geometry-form-field/geometry-form-field.module.js → esm2020/lib/geometry/geometry-form-field/geometry-form-field.module.mjs} +10 -12
- package/{esm2015/lib/geometry/geometry.module.js → esm2020/lib/geometry/geometry.module.mjs} +3 -5
- package/{esm2015/lib/geometry/index.js → esm2020/lib/geometry/index.mjs} +0 -0
- package/{esm2015/lib/geometry/shared/controls/draw.js → esm2020/lib/geometry/shared/controls/draw.mjs} +0 -0
- package/{esm2015/lib/geometry/shared/controls/index.js → esm2020/lib/geometry/shared/controls/index.mjs} +0 -0
- package/{esm2015/lib/geometry/shared/controls/modify.js → esm2020/lib/geometry/shared/controls/modify.mjs} +1 -1
- package/{esm2015/lib/geometry/shared/controls/slice.js → esm2020/lib/geometry/shared/controls/slice.mjs} +0 -0
- package/{esm2015/lib/geometry/shared/geometry.errors.js → esm2020/lib/geometry/shared/geometry.errors.mjs} +0 -0
- package/{esm2015/lib/geometry/shared/geometry.interfaces.js → esm2020/lib/geometry/shared/geometry.interfaces.mjs} +0 -0
- package/{esm2015/lib/geometry/shared/geometry.utils.js → esm2020/lib/geometry/shared/geometry.utils.mjs} +0 -0
- package/{esm2015/lib/geometry/shared/index.js → esm2020/lib/geometry/shared/index.mjs} +0 -0
- package/esm2020/lib/import-export/export-button/export-button.component.mjs +64 -0
- package/{esm2015/lib/import-export/export-button/index.js → esm2020/lib/import-export/export-button/index.mjs} +0 -0
- package/esm2020/lib/import-export/import-export/import-export.component.mjs +1190 -0
- package/{esm2015/lib/import-export/import-export/index.js → esm2020/lib/import-export/import-export/index.mjs} +0 -0
- package/{esm2015/lib/import-export/import-export.module.js → esm2020/lib/import-export/import-export.module.mjs} +19 -21
- package/{esm2015/lib/import-export/index.js → esm2020/lib/import-export/index.mjs} +0 -0
- package/esm2020/lib/import-export/shared/drop-geo-file.directive.mjs +135 -0
- package/{esm2015/lib/import-export/shared/export.errors.js → esm2020/lib/import-export/shared/export.errors.mjs} +0 -0
- package/{esm2015/lib/import-export/shared/export.interface.js → esm2020/lib/import-export/shared/export.interface.mjs} +0 -0
- package/{esm2015/lib/import-export/shared/export.service.js → esm2020/lib/import-export/shared/export.service.mjs} +0 -0
- package/{esm2015/lib/import-export/shared/export.type.js → esm2020/lib/import-export/shared/export.type.mjs} +0 -0
- package/{esm2015/lib/import-export/shared/export.utils.js → esm2020/lib/import-export/shared/export.utils.mjs} +0 -0
- package/{esm2015/lib/import-export/shared/import.errors.js → esm2020/lib/import-export/shared/import.errors.mjs} +0 -0
- package/{esm2015/lib/import-export/shared/import.interface.js → esm2020/lib/import-export/shared/import.interface.mjs} +0 -0
- package/{esm2015/lib/import-export/shared/import.service.js → esm2020/lib/import-export/shared/import.service.mjs} +0 -0
- package/{esm2015/lib/import-export/shared/import.utils.js → esm2020/lib/import-export/shared/import.utils.mjs} +0 -0
- package/{esm2015/lib/import-export/shared/index.js → esm2020/lib/import-export/shared/index.mjs} +0 -0
- package/{esm2015/lib/import-export/style-list/index.js → esm2020/lib/import-export/style-list/index.mjs} +0 -0
- package/{esm2015/lib/import-export/style-list/style-list.interface.js → esm2020/lib/import-export/style-list/style-list.interface.mjs} +0 -0
- package/{esm2015/lib/import-export/style-list/style-list.module.js → esm2020/lib/import-export/style-list/style-list.module.mjs} +2 -2
- package/{esm2015/lib/import-export/style-list/style-list.provider.js → esm2020/lib/import-export/style-list/style-list.provider.mjs} +0 -0
- package/{esm2015/lib/import-export/style-list/style-list.service.js → esm2020/lib/import-export/style-list/style-list.service.mjs} +0 -0
- package/{esm2015/lib/layer/index.js → esm2020/lib/layer/index.mjs} +0 -0
- package/{esm2015/lib/layer/layer-item/index.js → esm2020/lib/layer/layer-item/index.mjs} +0 -0
- package/esm2020/lib/layer/layer-item/layer-item.component.mjs +300 -0
- package/{esm2015/lib/layer/layer-legend/index.js → esm2020/lib/layer/layer-legend/index.mjs} +0 -0
- package/esm2020/lib/layer/layer-legend/layer-legend.component.mjs +382 -0
- package/{esm2015/lib/layer/layer-legend-item/index.js → esm2020/lib/layer/layer-legend-item/index.mjs} +0 -0
- package/{esm2015/lib/layer/layer-legend-item/layer-legend-item.component.js → esm2020/lib/layer/layer-legend-item/layer-legend-item.component.mjs} +4 -11
- package/{esm2015/lib/layer/layer-legend-list/index.js → esm2020/lib/layer/layer-legend-list/index.mjs} +0 -0
- package/{esm2015/lib/layer/layer-legend-list/layer-legend-list-binding.directive.js → esm2020/lib/layer/layer-legend-list/layer-legend-list-binding.directive.mjs} +0 -0
- package/esm2020/lib/layer/layer-legend-list/layer-legend-list.component.mjs +195 -0
- package/{esm2015/lib/layer/layer-list/index.js → esm2020/lib/layer/layer-list/index.mjs} +0 -0
- package/{esm2015/lib/layer/layer-list/layer-list-binding.directive.js → esm2020/lib/layer/layer-list/layer-list-binding.directive.mjs} +0 -0
- package/esm2020/lib/layer/layer-list/layer-list.component.mjs +1024 -0
- package/{esm2015/lib/layer/layer-list/layer-list.enum.js → esm2020/lib/layer/layer-list/layer-list.enum.mjs} +0 -0
- package/{esm2015/lib/layer/layer-list-tool/index.js → esm2020/lib/layer/layer-list-tool/index.mjs} +0 -0
- package/esm2020/lib/layer/layer-list-tool/layer-list-tool.component.mjs +165 -0
- package/{esm2015/lib/layer/layer-list-tool/layer-list-tool.enum.js → esm2020/lib/layer/layer-list-tool/layer-list-tool.enum.mjs} +0 -0
- package/{esm2015/lib/layer/layer-list-tool/layer-list-tool.interface.js → esm2020/lib/layer/layer-list-tool/layer-list-tool.interface.mjs} +0 -0
- package/{esm2015/lib/layer/layer-list-tool/layer-list-tool.service.js → esm2020/lib/layer/layer-list-tool/layer-list-tool.service.mjs} +0 -0
- package/esm2020/lib/layer/layer.module.mjs +173 -0
- package/{esm2015/lib/layer/shared/clusterParam.js → esm2020/lib/layer/shared/clusterParam.mjs} +0 -0
- package/{esm2015/lib/layer/shared/index.js → esm2020/lib/layer/shared/index.mjs} +0 -0
- package/{esm2015/lib/layer/shared/layer.enums.js → esm2020/lib/layer/shared/layer.enums.mjs} +0 -0
- package/esm2020/lib/layer/shared/layer.service.mjs +186 -0
- package/{esm2015/lib/layer/shared/layers/any-layer.interface.js → esm2020/lib/layer/shared/layers/any-layer.interface.mjs} +0 -0
- package/{esm2015/lib/layer/shared/layers/any-layer.js → esm2020/lib/layer/shared/layers/any-layer.mjs} +0 -0
- package/{esm2015/lib/layer/shared/layers/image-layer.interface.js → esm2020/lib/layer/shared/layers/image-layer.interface.mjs} +0 -0
- package/{esm2015/lib/layer/shared/layers/image-layer.js → esm2020/lib/layer/shared/layers/image-layer.mjs} +0 -0
- package/{esm2015/lib/layer/shared/layers/index.js → esm2020/lib/layer/shared/layers/index.mjs} +0 -0
- package/{esm2015/lib/layer/shared/layers/layer.interface.js → esm2020/lib/layer/shared/layers/layer.interface.mjs} +0 -0
- package/esm2020/lib/layer/shared/layers/layer.mjs +170 -0
- package/{esm2015/lib/layer/shared/layers/tile-layer.interface.js → esm2020/lib/layer/shared/layers/tile-layer.interface.mjs} +0 -0
- package/{esm2015/lib/layer/shared/layers/tile-layer.js → esm2020/lib/layer/shared/layers/tile-layer.mjs} +0 -0
- package/{esm2015/lib/layer/shared/layers/vector-layer.interface.js → esm2020/lib/layer/shared/layers/vector-layer.interface.mjs} +0 -0
- package/esm2020/lib/layer/shared/layers/vector-layer.mjs +376 -0
- package/{esm2015/lib/layer/shared/layers/vectortile-layer.interface.js → esm2020/lib/layer/shared/layers/vectortile-layer.interface.mjs} +0 -0
- package/{esm2015/lib/layer/shared/layers/vectortile-layer.js → esm2020/lib/layer/shared/layers/vectortile-layer.mjs} +0 -0
- package/esm2020/lib/layer/shared/style.service.mjs +356 -0
- package/{esm2015/lib/layer/shared/vector-style.interface.js → esm2020/lib/layer/shared/vector-style.interface.mjs} +0 -0
- package/{esm2015/lib/layer/track-feature-button/index.js → esm2020/lib/layer/track-feature-button/index.mjs} +0 -0
- package/esm2020/lib/layer/track-feature-button/track-feature-button.component.mjs +59 -0
- package/{esm2015/lib/layer/utils/image-watcher.js → esm2020/lib/layer/utils/image-watcher.mjs} +0 -0
- package/{esm2015/lib/layer/utils/index.js → esm2020/lib/layer/utils/index.mjs} +0 -0
- package/esm2020/lib/layer/utils/layer.utils.mjs +10 -0
- package/esm2020/lib/layer/utils/layerSync-watcher.mjs +242 -0
- package/esm2020/lib/layer/utils/outputLegend.mjs +27 -0
- package/{esm2015/lib/layer/utils/tile-watcher.js → esm2020/lib/layer/utils/tile-watcher.mjs} +0 -0
- package/{esm2015/lib/layer/utils/vector-watcher.js → esm2020/lib/layer/utils/vector-watcher.mjs} +0 -0
- package/{esm2015/lib/map/baselayers-switcher/baselayers-switcher.animation.js → esm2020/lib/map/baselayers-switcher/baselayers-switcher.animation.mjs} +0 -0
- package/esm2020/lib/map/baselayers-switcher/baselayers-switcher.component.mjs +97 -0
- package/{esm2015/lib/map/baselayers-switcher/index.js → esm2020/lib/map/baselayers-switcher/index.mjs} +0 -0
- package/esm2020/lib/map/baselayers-switcher/mini-basemap.component.mjs +133 -0
- package/esm2020/lib/map/geolocate-button/geolocate-button.component.mjs +76 -0
- package/{esm2015/lib/map/geolocate-button/index.js → esm2020/lib/map/geolocate-button/index.mjs} +0 -0
- package/{esm2015/lib/map/home-extent-button/home-extent-button.component.js → esm2020/lib/map/home-extent-button/home-extent-button.component.mjs} +8 -14
- package/{esm2015/lib/map/home-extent-button/index.js → esm2020/lib/map/home-extent-button/index.mjs} +0 -0
- package/{esm2015/lib/map/index.js → esm2020/lib/map/index.mjs} +0 -0
- package/{esm2015/lib/map/info-section/index.js → esm2020/lib/map/info-section/index.mjs} +0 -0
- package/esm2020/lib/map/info-section/info-section.component.mjs +30 -0
- package/{esm2015/lib/map/map-browser/index.js → esm2020/lib/map/map-browser/index.mjs} +0 -0
- package/esm2020/lib/map/map-browser/map-browser.component.mjs +66 -0
- package/{esm2015/lib/map/map-center/index.js → esm2020/lib/map/map-center/index.mjs} +0 -0
- package/{esm2015/lib/map/map-center/map-center.component.js → esm2020/lib/map/map-center/map-center.component.mjs} +3 -8
- package/{esm2015/lib/map/map.module.js → esm2020/lib/map/map.module.mjs} +11 -13
- package/{esm2015/lib/map/menu-button/index.js → esm2020/lib/map/menu-button/index.mjs} +0 -0
- package/{esm2015/lib/map/menu-button/menu-button.component.js → esm2020/lib/map/menu-button/menu-button.component.mjs} +7 -11
- package/{esm2015/lib/map/offline-button/index.js → esm2020/lib/map/offline-button/index.mjs} +0 -0
- package/esm2020/lib/map/offline-button/offline-button.component.mjs +76 -0
- package/{esm2015/lib/map/rotation-button/index.js → esm2020/lib/map/rotation-button/index.mjs} +0 -0
- package/esm2020/lib/map/rotation-button/rotation-button.component.mjs +91 -0
- package/{esm2015/lib/map/shared/controllers/controller.js → esm2020/lib/map/shared/controllers/controller.mjs} +0 -0
- package/esm2020/lib/map/shared/controllers/geolocation.mjs +308 -0
- package/{esm2015/lib/map/shared/controllers/index.js → esm2020/lib/map/shared/controllers/index.mjs} +0 -0
- package/{esm2015/lib/map/shared/controllers/view.js → esm2020/lib/map/shared/controllers/view.mjs} +0 -0
- package/esm2020/lib/map/shared/hover-feature.directive.mjs +506 -0
- package/{esm2015/lib/map/shared/index.js → esm2020/lib/map/shared/index.mjs} +0 -0
- package/{esm2015/lib/map/shared/map-pointer-position.directive.js → esm2020/lib/map/shared/map-pointer-position.directive.mjs} +0 -0
- package/{esm2015/lib/map/shared/map.enums.js → esm2020/lib/map/shared/map.enums.mjs} +0 -0
- package/{esm2015/lib/map/shared/map.interface.js → esm2020/lib/map/shared/map.interface.mjs} +0 -0
- package/esm2020/lib/map/shared/map.mjs +417 -0
- package/{esm2015/lib/map/shared/map.service.js → esm2020/lib/map/shared/map.service.mjs} +0 -0
- package/{esm2015/lib/map/shared/map.utils.js → esm2020/lib/map/shared/map.utils.mjs} +0 -0
- package/{esm2015/lib/map/shared/mapOffline.directive.js → esm2020/lib/map/shared/mapOffline.directive.mjs} +0 -0
- package/{esm2015/lib/map/shared/projection.interfaces.js → esm2020/lib/map/shared/projection.interfaces.mjs} +0 -0
- package/{esm2015/lib/map/shared/projection.service.js → esm2020/lib/map/shared/projection.service.mjs} +0 -0
- package/{esm2015/lib/map/shared/projection.utils.js → esm2020/lib/map/shared/projection.utils.mjs} +0 -0
- package/{esm2015/lib/map/swipe-control/index.js → esm2020/lib/map/swipe-control/index.mjs} +0 -0
- package/{esm2015/lib/map/swipe-control/swipe-control.component.js → esm2020/lib/map/swipe-control/swipe-control.component.mjs} +4 -10
- package/{esm2015/lib/map/utils/layer-watcher.js → esm2020/lib/map/utils/layer-watcher.mjs} +0 -0
- package/{esm2015/lib/map/wake-lock-button/index.js → esm2020/lib/map/wake-lock-button/index.mjs} +0 -0
- package/esm2020/lib/map/wake-lock-button/wake-lock-button.component.mjs +114 -0
- package/{esm2015/lib/map/zoom-button/index.js → esm2020/lib/map/zoom-button/index.mjs} +0 -0
- package/esm2020/lib/map/zoom-button/zoom-button.component.mjs +40 -0
- package/{esm2015/lib/measure/index.js → esm2020/lib/measure/index.mjs} +0 -0
- package/{esm2015/lib/measure/measure.module.js → esm2020/lib/measure/measure.module.mjs} +2 -2
- package/{esm2015/lib/measure/measurer/measure-format.pipe.js → esm2020/lib/measure/measurer/measure-format.pipe.mjs} +0 -0
- package/esm2020/lib/measure/measurer/measurer-dialog.component.mjs +180 -0
- package/{esm2015/lib/measure/measurer/measurer-item.component.js → esm2020/lib/measure/measurer/measurer-item.component.mjs} +12 -20
- package/esm2020/lib/measure/measurer/measurer.component.mjs +1042 -0
- package/esm2020/lib/measure/measurer/measurer.module.mjs +94 -0
- package/{esm2015/lib/measure/shared/index.js → esm2020/lib/measure/shared/index.mjs} +0 -0
- package/{esm2015/lib/measure/shared/measure.enum.js → esm2020/lib/measure/shared/measure.enum.mjs} +0 -0
- package/{esm2015/lib/measure/shared/measure.interfaces.js → esm2020/lib/measure/shared/measure.interfaces.mjs} +0 -0
- package/{esm2015/lib/measure/shared/measure.utils.js → esm2020/lib/measure/shared/measure.utils.mjs} +0 -0
- package/{esm2015/lib/metadata/index.js → esm2020/lib/metadata/index.mjs} +0 -0
- package/{esm2015/lib/metadata/metadata-button/index.js → esm2020/lib/metadata/metadata-button/index.mjs} +0 -0
- package/esm2020/lib/metadata/metadata-button/metadata-button.component.mjs +134 -0
- package/{esm2015/lib/metadata/metadata.module.js → esm2020/lib/metadata/metadata.module.mjs} +7 -9
- package/{esm2015/lib/metadata/shared/index.js → esm2020/lib/metadata/shared/index.mjs} +0 -0
- package/{esm2015/lib/metadata/shared/metadata.interface.js → esm2020/lib/metadata/shared/metadata.interface.mjs} +0 -0
- package/{esm2015/lib/metadata/shared/metadata.service.js → esm2020/lib/metadata/shared/metadata.service.mjs} +0 -0
- package/{esm2015/lib/offline/geoDB/geoDB.enums.js → esm2020/lib/offline/geoDB/geoDB.enums.mjs} +0 -0
- package/{esm2015/lib/offline/geoDB/geoDB.interface.js → esm2020/lib/offline/geoDB/geoDB.interface.mjs} +0 -0
- package/{esm2015/lib/offline/geoDB/geoDB.service.js → esm2020/lib/offline/geoDB/geoDB.service.mjs} +0 -0
- package/{esm2015/lib/offline/geoDB/index.js → esm2020/lib/offline/geoDB/index.mjs} +0 -0
- package/{esm2015/lib/offline/index.js → esm2020/lib/offline/index.mjs} +0 -0
- package/{esm2015/lib/offline/shared/geo-network.service.js → esm2020/lib/offline/shared/geo-network.service.mjs} +0 -0
- package/{esm2015/lib/offline/shared/index.js → esm2020/lib/offline/shared/index.mjs} +0 -0
- package/{esm2015/lib/overlay/index.js → esm2020/lib/overlay/index.mjs} +0 -0
- package/{esm2015/lib/overlay/overlay.module.js → esm2020/lib/overlay/overlay.module.mjs} +2 -2
- package/{esm2015/lib/overlay/shared/index.js → esm2020/lib/overlay/shared/index.mjs} +0 -0
- package/{esm2015/lib/overlay/shared/overlay-marker-style.utils.js → esm2020/lib/overlay/shared/overlay-marker-style.utils.mjs} +0 -0
- package/{esm2015/lib/overlay/shared/overlay.directive.js → esm2020/lib/overlay/shared/overlay.directive.mjs} +0 -0
- package/{esm2015/lib/overlay/shared/overlay.enum.js → esm2020/lib/overlay/shared/overlay.enum.mjs} +0 -0
- package/{esm2015/lib/overlay/shared/overlay.js → esm2020/lib/overlay/shared/overlay.mjs} +0 -0
- package/{esm2015/lib/overlay/shared/overlay.service.js → esm2020/lib/overlay/shared/overlay.service.mjs} +0 -0
- package/{esm2015/lib/overlay/shared/overlay.utils.js → esm2020/lib/overlay/shared/overlay.utils.mjs} +0 -0
- package/{esm2015/lib/print/index.js → esm2020/lib/print/index.mjs} +0 -0
- package/{esm2015/lib/print/print/print.component.js → esm2020/lib/print/print/print.component.mjs} +3 -6
- package/{esm2015/lib/print/print-form/index.js → esm2020/lib/print/print-form/index.mjs} +0 -0
- package/esm2020/lib/print/print-form/print-form.component.mjs +405 -0
- package/{esm2015/lib/print/print.module.js → esm2020/lib/print/print.module.mjs} +13 -15
- package/{esm2015/lib/print/shared/index.js → esm2020/lib/print/shared/index.mjs} +0 -0
- package/{esm2015/lib/print/shared/print.interface.js → esm2020/lib/print/shared/print.interface.mjs} +0 -0
- package/esm2020/lib/print/shared/print.service.mjs +807 -0
- package/{esm2015/lib/print/shared/print.type.js → esm2020/lib/print/shared/print.type.mjs} +0 -0
- package/{esm2015/lib/query/index.js → esm2020/lib/query/index.mjs} +0 -0
- package/{esm2015/lib/query/query.module.js → esm2020/lib/query/query.module.mjs} +2 -2
- package/{esm2015/lib/query/shared/index.js → esm2020/lib/query/shared/index.mjs} +0 -0
- package/{esm2015/lib/query/shared/query-search-source.js → esm2020/lib/query/shared/query-search-source.mjs} +0 -0
- package/{esm2015/lib/query/shared/query-search-source.providers.js → esm2020/lib/query/shared/query-search-source.providers.mjs} +0 -0
- package/{esm2015/lib/query/shared/query.directive.js → esm2020/lib/query/shared/query.directive.mjs} +0 -0
- package/{esm2015/lib/query/shared/query.enums.js → esm2020/lib/query/shared/query.enums.mjs} +0 -0
- package/{esm2015/lib/query/shared/query.interfaces.js → esm2020/lib/query/shared/query.interfaces.mjs} +0 -0
- package/esm2020/lib/query/shared/query.service.mjs +613 -0
- package/{esm2015/lib/query/shared/query.utils.js → esm2020/lib/query/shared/query.utils.mjs} +0 -0
- package/{esm2015/lib/search/index.js → esm2020/lib/search/index.mjs} +0 -0
- package/esm2020/lib/search/search-bar/search-bar.component.mjs +489 -0
- package/{esm2015/lib/search/search-bar/search-bar.module.js → esm2020/lib/search/search-bar/search-bar.module.mjs} +13 -15
- package/{esm2015/lib/search/search-bar/search-url-param.directive.js → esm2020/lib/search/search-bar/search-url-param.directive.mjs} +0 -0
- package/esm2020/lib/search/search-results/search-results-add-button.component.mjs +193 -0
- package/esm2020/lib/search/search-results/search-results-item.component.mjs +124 -0
- package/esm2020/lib/search/search-results/search-results.component.mjs +331 -0
- package/{esm2015/lib/search/search-results/search-results.module.js → esm2020/lib/search/search-results/search-results.module.mjs} +13 -15
- package/esm2020/lib/search/search-selector/search-selector.component.mjs +123 -0
- package/{esm2015/lib/search/search-selector/search-selector.module.js → esm2020/lib/search/search-selector/search-selector.module.mjs} +10 -12
- package/esm2020/lib/search/search-settings/search-settings.component.mjs +418 -0
- package/{esm2015/lib/search/search-settings/search-settings.module.js → esm2020/lib/search/search-settings/search-settings.module.mjs} +11 -13
- package/{esm2015/lib/search/search.module.js → esm2020/lib/search/search.module.mjs} +6 -8
- package/{esm2015/lib/search/shared/index.js → esm2020/lib/search/shared/index.mjs} +0 -0
- package/{esm2015/lib/search/shared/search-pointer-summary.directive.js → esm2020/lib/search/shared/search-pointer-summary.directive.mjs} +0 -0
- package/{esm2015/lib/search/shared/search-source-service.providers.js → esm2020/lib/search/shared/search-source-service.providers.mjs} +0 -0
- package/{esm2015/lib/search/shared/search-source.service.js → esm2020/lib/search/shared/search-source.service.mjs} +0 -0
- package/{esm2015/lib/search/shared/search.enums.js → esm2020/lib/search/shared/search.enums.mjs} +0 -0
- package/{esm2015/lib/search/shared/search.interfaces.js → esm2020/lib/search/shared/search.interfaces.mjs} +0 -0
- package/esm2020/lib/search/shared/search.service.mjs +118 -0
- package/{esm2015/lib/search/shared/search.utils.js → esm2020/lib/search/shared/search.utils.mjs} +0 -0
- package/{esm2015/lib/search/shared/sources/cadastre.js → esm2020/lib/search/shared/sources/cadastre.mjs} +1 -1
- package/{esm2015/lib/search/shared/sources/cadastre.providers.js → esm2020/lib/search/shared/sources/cadastre.providers.mjs} +0 -0
- package/{esm2015/lib/search/shared/sources/coordinates.interfaces.js → esm2020/lib/search/shared/sources/coordinates.interfaces.mjs} +0 -0
- package/{esm2015/lib/search/shared/sources/coordinates.js → esm2020/lib/search/shared/sources/coordinates.mjs} +0 -0
- package/{esm2015/lib/search/shared/sources/coordinates.providers.js → esm2020/lib/search/shared/sources/coordinates.providers.mjs} +0 -0
- package/{esm2015/lib/search/shared/sources/icherche.interfaces.js → esm2020/lib/search/shared/sources/icherche.interfaces.mjs} +0 -0
- package/esm2020/lib/search/shared/sources/icherche.mjs +755 -0
- package/{esm2015/lib/search/shared/sources/icherche.providers.js → esm2020/lib/search/shared/sources/icherche.providers.mjs} +0 -0
- package/{esm2015/lib/search/shared/sources/ilayer.interfaces.js → esm2020/lib/search/shared/sources/ilayer.interfaces.mjs} +0 -0
- package/{esm2015/lib/search/shared/sources/ilayer.js → esm2020/lib/search/shared/sources/ilayer.mjs} +0 -0
- package/{esm2015/lib/search/shared/sources/ilayer.providers.js → esm2020/lib/search/shared/sources/ilayer.providers.mjs} +0 -0
- package/{esm2015/lib/search/shared/sources/index.js → esm2020/lib/search/shared/sources/index.mjs} +0 -0
- package/{esm2015/lib/search/shared/sources/nominatim.interfaces.js → esm2020/lib/search/shared/sources/nominatim.interfaces.mjs} +0 -0
- package/{esm2015/lib/search/shared/sources/nominatim.js → esm2020/lib/search/shared/sources/nominatim.mjs} +0 -0
- package/{esm2015/lib/search/shared/sources/nominatim.providers.js → esm2020/lib/search/shared/sources/nominatim.providers.mjs} +0 -0
- package/{esm2015/lib/search/shared/sources/source.interfaces.js → esm2020/lib/search/shared/sources/source.interfaces.mjs} +0 -0
- package/{esm2015/lib/search/shared/sources/source.js → esm2020/lib/search/shared/sources/source.mjs} +0 -0
- package/{esm2015/lib/search/shared/sources/storedqueries.interfaces.js → esm2020/lib/search/shared/sources/storedqueries.interfaces.mjs} +0 -0
- package/{esm2015/lib/search/shared/sources/storedqueries.js → esm2020/lib/search/shared/sources/storedqueries.mjs} +1 -1
- package/{esm2015/lib/search/shared/sources/storedqueries.providers.js → esm2020/lib/search/shared/sources/storedqueries.providers.mjs} +0 -0
- package/{esm2015/lib/toast/index.js → esm2020/lib/toast/index.mjs} +0 -0
- package/esm2020/lib/toast/toast.component.mjs +113 -0
- package/{esm2015/lib/toast/toast.module.js → esm2020/lib/toast/toast.module.mjs} +7 -9
- package/{esm2015/lib/utils/commonVectorStyle.interface.js → esm2020/lib/utils/commonVectorStyle.interface.mjs} +0 -0
- package/{esm2015/lib/utils/commonVectorStyle.js → esm2020/lib/utils/commonVectorStyle.mjs} +0 -0
- package/{esm2015/lib/utils/googleLinks.js → esm2020/lib/utils/googleLinks.mjs} +0 -0
- package/{esm2015/lib/utils/id-generator.js → esm2020/lib/utils/id-generator.mjs} +0 -0
- package/{esm2015/lib/utils/index.js → esm2020/lib/utils/index.mjs} +0 -0
- package/{esm2015/lib/utils/osmLinks.js → esm2020/lib/utils/osmLinks.mjs} +0 -0
- package/{esm2015/lib/wkt/index.js → esm2020/lib/wkt/index.mjs} +0 -0
- package/{esm2015/lib/wkt/shared/index.js → esm2020/lib/wkt/shared/index.mjs} +0 -0
- package/{esm2015/lib/wkt/shared/wkt.service.js → esm2020/lib/wkt/shared/wkt.service.mjs} +0 -0
- package/{esm2015/lib/wkt/wkt.module.js → esm2020/lib/wkt/wkt.module.mjs} +2 -2
- package/{esm2015/lib/workspace/confirmation-popup/confirmation-popup.component.js → esm2020/lib/workspace/confirmation-popup/confirmation-popup.component.mjs} +7 -15
- package/{esm2015/lib/workspace/confirmation-popup/confirmation-popup.module.js → esm2020/lib/workspace/confirmation-popup/confirmation-popup.module.mjs} +5 -7
- package/{esm2015/lib/workspace/confirmation-popup/index.js → esm2020/lib/workspace/confirmation-popup/index.mjs} +0 -0
- package/{esm2015/lib/workspace/index.js → esm2020/lib/workspace/index.mjs} +0 -0
- package/{esm2015/lib/workspace/shared/edition-workspace.js → esm2020/lib/workspace/shared/edition-workspace.mjs} +2 -3
- package/esm2020/lib/workspace/shared/edition-workspace.service.mjs +642 -0
- package/esm2020/lib/workspace/shared/feature-workspace.mjs +35 -0
- package/{esm2015/lib/workspace/shared/wfs-workspace.service.js → esm2020/lib/workspace/shared/feature-workspace.service.mjs} +8 -9
- package/{esm2015/lib/workspace/shared/index.js → esm2020/lib/workspace/shared/index.mjs} +0 -0
- package/esm2020/lib/workspace/shared/wfs-workspace.mjs +35 -0
- package/esm2020/lib/workspace/shared/wfs-workspace.service.mjs +150 -0
- package/esm2020/lib/workspace/shared/wms-workspace.service.mjs +261 -0
- package/{esm2015/lib/workspace/shared/workspace.utils.js → esm2020/lib/workspace/shared/workspace.utils.mjs} +0 -0
- package/{esm2015/lib/workspace/widgets/index.js → esm2020/lib/workspace/widgets/index.mjs} +0 -0
- package/{esm2015/lib/workspace/widgets/ogc-filter/ogc-filter.component.js → esm2020/lib/workspace/widgets/ogc-filter/ogc-filter.component.mjs} +3 -8
- package/{esm2015/lib/workspace/widgets/ogc-filter/ogc-filter.module.js → esm2020/lib/workspace/widgets/ogc-filter/ogc-filter.module.mjs} +5 -7
- package/{esm2015/lib/workspace/widgets/widgets.js → esm2020/lib/workspace/widgets/widgets.mjs} +0 -0
- package/esm2020/lib/workspace/workspace-selector/workspace-selector.directive.mjs +133 -0
- package/{esm2015/lib/workspace/workspace-selector/workspace-selector.module.js → esm2020/lib/workspace/workspace-selector/workspace-selector.module.mjs} +2 -4
- package/{esm2015/lib/workspace/workspace-updator/workspace-updator.directive.js → esm2020/lib/workspace/workspace-updator/workspace-updator.directive.mjs} +8 -11
- package/{esm2015/lib/workspace/workspace-updator/workspace-updator.module.js → esm2020/lib/workspace/workspace-updator/workspace-updator.module.mjs} +2 -4
- package/{esm2015/lib/workspace/workspace.module.js → esm2020/lib/workspace/workspace.module.mjs} +8 -10
- package/{esm2015/public_api.js → esm2020/public_api.mjs} +0 -0
- package/fesm2015/igo2-geo.mjs +42904 -0
- package/fesm2015/igo2-geo.mjs.map +1 -0
- package/{fesm2015/igo2-geo.js → fesm2020/igo2-geo.mjs} +1635 -2527
- package/fesm2020/igo2-geo.mjs.map +1 -0
- package/{igo2-geo.d.ts → index.d.ts} +0 -0
- package/lib/catalog/catalog-browser/catalog-browser-group.component.d.ts +1 -1
- package/lib/catalog/catalog-browser/catalog-browser-layer.component.d.ts +1 -1
- package/lib/catalog/catalog-browser/catalog-browser.component.d.ts +1 -1
- package/lib/catalog/catalog-library/add-catalog-dialog.component.d.ts +1 -1
- package/lib/catalog/catalog-library/catalog-library-item.component.d.ts +1 -1
- package/lib/catalog/catalog-library/catalog-library.component.d.ts +1 -1
- package/lib/directions/directions-buttons/directions-buttons.component.d.ts +1 -1
- package/lib/directions/directions-inputs/directions-inputs.component.d.ts +1 -1
- package/lib/directions/directions-results/directions-results.component.d.ts +1 -1
- package/lib/directions/directions.component.d.ts +1 -1
- package/lib/download/download-button/download-button.component.d.ts +1 -1
- package/lib/draw/draw/draw-popup.component.d.ts +1 -1
- package/lib/draw/draw/draw-shorcuts.component.d.ts +1 -1
- package/lib/draw/draw/draw.component.d.ts +1 -1
- package/lib/feature/feature-details/feature-details.component.d.ts +1 -1
- package/lib/feature/feature-details/feature-details.directive.d.ts +1 -1
- package/lib/feature/feature-form/feature-form.component.d.ts +1 -1
- package/lib/filter/ogc-filter-button/ogc-filter-button.component.d.ts +1 -1
- package/lib/filter/ogc-filter-form/ogc-filter-form.component.d.ts +1 -1
- package/lib/filter/ogc-filter-selection/ogc-filter-selection.component.d.ts +1 -1
- package/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.d.ts +1 -1
- package/lib/filter/ogc-filter-time/ogc-filter-time.component.d.ts +5 -5
- package/lib/filter/ogc-filterable-form/ogc-filterable-form.component.d.ts +1 -1
- package/lib/filter/ogc-filterable-item/ogc-filterable-item.component.d.ts +1 -1
- package/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.d.ts +1 -1
- package/lib/filter/ogc-filterable-list/ogc-filterable-list.component.d.ts +1 -1
- package/lib/filter/shared/filterable-datasource.pipe.d.ts +1 -1
- package/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.d.ts +4 -4
- package/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.d.ts +3 -3
- package/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.d.ts +2 -2
- package/lib/filter/time-filter-button/time-filter-button.component.d.ts +1 -1
- package/lib/filter/time-filter-form/time-filter-form.component.d.ts +1 -1
- package/lib/filter/time-filter-item/time-filter-item.component.d.ts +1 -1
- package/lib/filter/time-filter-list/time-filter-list-binding.directive.d.ts +1 -1
- package/lib/filter/time-filter-list/time-filter-list.component.d.ts +1 -1
- package/lib/geometry/geometry-form-field/geometry-form-field-input.component.d.ts +1 -1
- package/lib/geometry/geometry-form-field/geometry-form-field.component.d.ts +1 -1
- package/lib/import-export/export-button/export-button.component.d.ts +1 -1
- package/lib/import-export/import-export/import-export.component.d.ts +1 -1
- package/lib/import-export/shared/drop-geo-file.directive.d.ts +1 -1
- package/lib/layer/layer-item/layer-item.component.d.ts +1 -1
- package/lib/layer/layer-legend/layer-legend.component.d.ts +1 -1
- package/lib/layer/layer-legend-item/layer-legend-item.component.d.ts +1 -1
- package/lib/layer/layer-legend-list/layer-legend-list-binding.directive.d.ts +1 -1
- package/lib/layer/layer-legend-list/layer-legend-list.component.d.ts +1 -1
- package/lib/layer/layer-list/layer-list-binding.directive.d.ts +1 -1
- package/lib/layer/layer-list/layer-list.component.d.ts +1 -1
- package/lib/layer/layer-list-tool/layer-list-tool.component.d.ts +1 -1
- package/lib/layer/track-feature-button/track-feature-button.component.d.ts +1 -1
- package/lib/map/baselayers-switcher/baselayers-switcher.component.d.ts +1 -1
- package/lib/map/baselayers-switcher/mini-basemap.component.d.ts +1 -1
- package/lib/map/geolocate-button/geolocate-button.component.d.ts +1 -1
- package/lib/map/home-extent-button/home-extent-button.component.d.ts +1 -1
- package/lib/map/info-section/info-section.component.d.ts +1 -1
- package/lib/map/map-browser/map-browser.component.d.ts +1 -1
- package/lib/map/map-center/map-center.component.d.ts +1 -1
- package/lib/map/menu-button/menu-button.component.d.ts +1 -1
- package/lib/map/offline-button/offline-button.component.d.ts +1 -1
- package/lib/map/rotation-button/rotation-button.component.d.ts +1 -1
- package/lib/map/shared/controllers/geolocation.d.ts +3 -2
- package/lib/map/shared/hover-feature.directive.d.ts +1 -1
- package/lib/map/shared/map-pointer-position.directive.d.ts +1 -1
- package/lib/map/shared/map.d.ts +3 -2
- package/lib/map/shared/mapOffline.directive.d.ts +1 -1
- package/lib/map/swipe-control/swipe-control.component.d.ts +1 -1
- package/lib/map/wake-lock-button/wake-lock-button.component.d.ts +1 -1
- package/lib/map/zoom-button/zoom-button.component.d.ts +1 -1
- package/lib/measure/measurer/measure-format.pipe.d.ts +1 -1
- package/lib/measure/measurer/measurer-dialog.component.d.ts +1 -1
- package/lib/measure/measurer/measurer-item.component.d.ts +1 -1
- package/lib/measure/measurer/measurer.component.d.ts +1 -1
- package/lib/metadata/metadata-button/metadata-button.component.d.ts +2 -2
- package/lib/overlay/shared/overlay.directive.d.ts +1 -1
- package/lib/print/print/print.component.d.ts +1 -1
- package/lib/print/print-form/print-form.component.d.ts +14 -14
- package/lib/print/shared/print.service.d.ts +6 -1
- package/lib/query/shared/query.directive.d.ts +1 -1
- package/lib/search/search-bar/search-bar.component.d.ts +1 -1
- package/lib/search/search-bar/search-url-param.directive.d.ts +1 -1
- package/lib/search/search-results/search-results-add-button.component.d.ts +1 -1
- package/lib/search/search-results/search-results-item.component.d.ts +1 -1
- package/lib/search/search-results/search-results.component.d.ts +1 -1
- package/lib/search/search-selector/search-selector.component.d.ts +1 -1
- package/lib/search/search-settings/search-settings.component.d.ts +1 -1
- package/lib/search/shared/search-pointer-summary.directive.d.ts +1 -1
- package/lib/toast/toast.component.d.ts +1 -1
- package/lib/wkt/shared/wkt.service.d.ts +1 -1
- package/lib/workspace/confirmation-popup/confirmation-popup.component.d.ts +1 -1
- package/lib/workspace/widgets/ogc-filter/ogc-filter.component.d.ts +1 -1
- package/lib/workspace/workspace-selector/workspace-selector.directive.d.ts +1 -1
- package/lib/workspace/workspace-updator/workspace-updator.directive.d.ts +1 -1
- package/package.json +31 -18
- package/bundles/igo2-geo.umd.js +0 -47612
- package/bundles/igo2-geo.umd.js.map +0 -1
- package/esm2015/lib/catalog/catalog-browser/catalog-browser-group.component.js +0 -305
- package/esm2015/lib/catalog/catalog-browser/catalog-browser.component.js +0 -248
- package/esm2015/lib/catalog/catalog-library/add-catalog-dialog.component.js +0 -235
- package/esm2015/lib/catalog/catalog-library/catalog-library-item.component.js +0 -85
- package/esm2015/lib/catalog/catalog-library/catalog-library.component.js +0 -224
- package/esm2015/lib/catalog/shared/catalog.service.js +0 -606
- package/esm2015/lib/datasource/shared/capabilities.service.js +0 -427
- package/esm2015/lib/datasource/shared/datasources/wfs-datasource.js +0 -74
- package/esm2015/lib/datasource/shared/datasources/wfs.service.js +0 -153
- package/esm2015/lib/datasource/shared/datasources/wms-datasource.js +0 -205
- package/esm2015/lib/directions/directions-buttons/directions-buttons.component.js +0 -229
- package/esm2015/lib/directions/directions-inputs/directions-inputs.component.js +0 -300
- package/esm2015/lib/directions/directions-results/directions-results.component.js +0 -204
- package/esm2015/lib/directions/directions.component.js +0 -316
- package/esm2015/lib/directions/shared/directions.utils.js +0 -510
- package/esm2015/lib/download/download-button/download-button.component.js +0 -66
- package/esm2015/lib/draw/draw/draw-shorcuts.component.js +0 -64
- package/esm2015/lib/draw/draw/draw.component.js +0 -745
- package/esm2015/lib/feature/feature-details/feature-details.component.js +0 -393
- package/esm2015/lib/feature/shared/strategies/in-map-extent.js +0 -114
- package/esm2015/lib/filter/filter.module.js +0 -290
- package/esm2015/lib/filter/ogc-filter-button/ogc-filter-button.component.js +0 -161
- package/esm2015/lib/filter/ogc-filter-form/ogc-filter-form.component.js +0 -657
- package/esm2015/lib/filter/ogc-filter-selection/ogc-filter-selection.component.js +0 -1355
- package/esm2015/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.js +0 -185
- package/esm2015/lib/filter/ogc-filter-time/ogc-filter-time.component.js +0 -898
- package/esm2015/lib/filter/ogc-filterable-item/ogc-filterable-item.component.js +0 -307
- package/esm2015/lib/filter/shared/ogc-filter-time.service.js +0 -73
- package/esm2015/lib/filter/shared/ogc-filter.js +0 -693
- package/esm2015/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.js +0 -1108
- package/esm2015/lib/filter/time-filter-form/time-filter-form.component.js +0 -772
- package/esm2015/lib/filter/time-filter-item/time-filter-item.component.js +0 -126
- package/esm2015/lib/geometry/geometry-form-field/geometry-form-field.component.js +0 -199
- package/esm2015/lib/import-export/export-button/export-button.component.js +0 -70
- package/esm2015/lib/import-export/import-export/import-export.component.js +0 -1238
- package/esm2015/lib/import-export/shared/drop-geo-file.directive.js +0 -136
- package/esm2015/lib/layer/layer-item/layer-item.component.js +0 -305
- package/esm2015/lib/layer/layer-legend/layer-legend.component.js +0 -395
- package/esm2015/lib/layer/layer-legend-list/layer-legend-list.component.js +0 -200
- package/esm2015/lib/layer/layer-list/layer-list.component.js +0 -1043
- package/esm2015/lib/layer/layer-list-tool/layer-list-tool.component.js +0 -176
- package/esm2015/lib/layer/layer.module.js +0 -174
- package/esm2015/lib/layer/shared/layer.service.js +0 -186
- package/esm2015/lib/layer/shared/layers/layer.js +0 -169
- package/esm2015/lib/layer/shared/layers/vector-layer.js +0 -376
- package/esm2015/lib/layer/shared/style.service.js +0 -358
- package/esm2015/lib/layer/track-feature-button/track-feature-button.component.js +0 -64
- package/esm2015/lib/layer/utils/layer.utils.js +0 -11
- package/esm2015/lib/layer/utils/layerSync-watcher.js +0 -249
- package/esm2015/lib/layer/utils/outputLegend.js +0 -27
- package/esm2015/lib/map/baselayers-switcher/baselayers-switcher.component.js +0 -105
- package/esm2015/lib/map/baselayers-switcher/mini-basemap.component.js +0 -137
- package/esm2015/lib/map/geolocate-button/geolocate-button.component.js +0 -82
- package/esm2015/lib/map/info-section/info-section.component.js +0 -36
- package/esm2015/lib/map/map-browser/map-browser.component.js +0 -70
- package/esm2015/lib/map/offline-button/offline-button.component.js +0 -84
- package/esm2015/lib/map/rotation-button/rotation-button.component.js +0 -97
- package/esm2015/lib/map/shared/controllers/geolocation.js +0 -295
- package/esm2015/lib/map/shared/hover-feature.directive.js +0 -509
- package/esm2015/lib/map/shared/map.js +0 -417
- package/esm2015/lib/map/wake-lock-button/wake-lock-button.component.js +0 -122
- package/esm2015/lib/map/zoom-button/zoom-button.component.js +0 -46
- package/esm2015/lib/measure/measurer/measurer-dialog.component.js +0 -220
- package/esm2015/lib/measure/measurer/measurer.component.js +0 -1053
- package/esm2015/lib/measure/measurer/measurer.module.js +0 -96
- package/esm2015/lib/metadata/metadata-button/metadata-button.component.js +0 -135
- package/esm2015/lib/print/print-form/print-form.component.js +0 -447
- package/esm2015/lib/print/shared/print.service.js +0 -820
- package/esm2015/lib/query/shared/query.service.js +0 -619
- package/esm2015/lib/search/search-bar/search-bar.component.js +0 -496
- package/esm2015/lib/search/search-results/search-results-add-button.component.js +0 -198
- package/esm2015/lib/search/search-results/search-results-item.component.js +0 -129
- package/esm2015/lib/search/search-results/search-results.component.js +0 -337
- package/esm2015/lib/search/search-selector/search-selector.component.js +0 -132
- package/esm2015/lib/search/search-settings/search-settings.component.js +0 -435
- package/esm2015/lib/search/shared/search.service.js +0 -118
- package/esm2015/lib/search/shared/sources/icherche.js +0 -756
- package/esm2015/lib/toast/toast.component.js +0 -119
- package/esm2015/lib/workspace/shared/edition-workspace.service.js +0 -646
- package/esm2015/lib/workspace/shared/feature-workspace.js +0 -37
- package/esm2015/lib/workspace/shared/feature-workspace.service.js +0 -151
- package/esm2015/lib/workspace/shared/wfs-workspace.js +0 -37
- package/esm2015/lib/workspace/shared/wms-workspace.service.js +0 -263
- package/esm2015/lib/workspace/workspace-selector/workspace-selector.directive.js +0 -135
- package/fesm2015/igo2-geo.js.map +0 -1
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
import { Component, Input, ChangeDetectionStrategy } from '@angular/core';
|
|
2
|
+
import { zip } from 'rxjs';
|
|
3
|
+
import { EntityStoreWatcher } from '@igo2/common';
|
|
4
|
+
import { CatalogItemType } from '../shared';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "../../layer/shared/layer.service";
|
|
7
|
+
function CatalogBrowserComponent_ng_template_1_ng_container_0_Template(rf, ctx) { if (rf & 1) {
|
|
8
|
+
const _r5 = i0.ɵɵgetCurrentView();
|
|
9
|
+
i0.ɵɵelementContainerStart(0);
|
|
10
|
+
i0.ɵɵelementStart(1, "igo-catalog-browser-group", 3);
|
|
11
|
+
i0.ɵɵlistener("addedChange", function CatalogBrowserComponent_ng_template_1_ng_container_0_Template_igo_catalog_browser_group_addedChange_1_listener($event) { i0.ɵɵrestoreView(_r5); const ctx_r4 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r4.onGroupAddedChange($event)); })("layerAddedChange", function CatalogBrowserComponent_ng_template_1_ng_container_0_Template_igo_catalog_browser_group_layerAddedChange_1_listener($event) { i0.ɵɵrestoreView(_r5); const ctx_r6 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r6.onLayerAddedChange($event)); });
|
|
12
|
+
i0.ɵɵpipe(2, "async");
|
|
13
|
+
i0.ɵɵelementEnd();
|
|
14
|
+
i0.ɵɵelementContainerEnd();
|
|
15
|
+
} if (rf & 2) {
|
|
16
|
+
const item_r1 = i0.ɵɵnextContext().$implicit;
|
|
17
|
+
const ctx_r2 = i0.ɵɵnextContext();
|
|
18
|
+
i0.ɵɵadvance(1);
|
|
19
|
+
i0.ɵɵproperty("catalog", ctx_r2.catalog)("group", item_r1)("state", ctx_r2.store.state)("resolution", i0.ɵɵpipeBind1(2, 7, ctx_r2.resolution$))("catalogAllowLegend", ctx_r2.catalogAllowLegend)("collapsed", ctx_r2.store.count === 1 ? false : true)("toggleCollapsed", ctx_r2.toggleCollapsedGroup);
|
|
20
|
+
} }
|
|
21
|
+
function CatalogBrowserComponent_ng_template_1_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
|
22
|
+
const _r9 = i0.ɵɵgetCurrentView();
|
|
23
|
+
i0.ɵɵelementContainerStart(0);
|
|
24
|
+
i0.ɵɵelementStart(1, "igo-catalog-browser-layer", 4);
|
|
25
|
+
i0.ɵɵlistener("addedChange", function CatalogBrowserComponent_ng_template_1_ng_container_1_Template_igo_catalog_browser_layer_addedChange_1_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r8 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r8.onLayerAddedChange($event)); });
|
|
26
|
+
i0.ɵɵpipe(2, "async");
|
|
27
|
+
i0.ɵɵelementEnd();
|
|
28
|
+
i0.ɵɵelementContainerEnd();
|
|
29
|
+
} if (rf & 2) {
|
|
30
|
+
const item_r1 = i0.ɵɵnextContext().$implicit;
|
|
31
|
+
const ctx_r3 = i0.ɵɵnextContext();
|
|
32
|
+
i0.ɵɵadvance(1);
|
|
33
|
+
i0.ɵɵproperty("layer", item_r1)("resolution", i0.ɵɵpipeBind1(2, 4, ctx_r3.resolution$))("catalogAllowLegend", ctx_r3.catalogAllowLegend)("added", ctx_r3.store.state.get(item_r1).added);
|
|
34
|
+
} }
|
|
35
|
+
function CatalogBrowserComponent_ng_template_1_Template(rf, ctx) { if (rf & 1) {
|
|
36
|
+
i0.ɵɵtemplate(0, CatalogBrowserComponent_ng_template_1_ng_container_0_Template, 3, 9, "ng-container", 2);
|
|
37
|
+
i0.ɵɵtemplate(1, CatalogBrowserComponent_ng_template_1_ng_container_1_Template, 3, 6, "ng-container", 2);
|
|
38
|
+
} if (rf & 2) {
|
|
39
|
+
const item_r1 = ctx.$implicit;
|
|
40
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
41
|
+
i0.ɵɵproperty("ngIf", ctx_r0.isGroup(item_r1));
|
|
42
|
+
i0.ɵɵadvance(1);
|
|
43
|
+
i0.ɵɵproperty("ngIf", ctx_r0.isLayer(item_r1));
|
|
44
|
+
} }
|
|
45
|
+
/**
|
|
46
|
+
* Component to browse a catalog's groups and layers and display them on a map.
|
|
47
|
+
*/
|
|
48
|
+
export class CatalogBrowserComponent {
|
|
49
|
+
constructor(layerService, cdRef) {
|
|
50
|
+
this.layerService = layerService;
|
|
51
|
+
this.cdRef = cdRef;
|
|
52
|
+
this.catalogAllowLegend = false;
|
|
53
|
+
/**
|
|
54
|
+
* Whether a group can be toggled when it's collapsed
|
|
55
|
+
*/
|
|
56
|
+
this.toggleCollapsedGroup = true;
|
|
57
|
+
}
|
|
58
|
+
// private resolution$$: Subscription;
|
|
59
|
+
get resolution$() { return this.map.viewController.resolution$; }
|
|
60
|
+
/**
|
|
61
|
+
* @internal
|
|
62
|
+
*/
|
|
63
|
+
ngOnInit() {
|
|
64
|
+
const currentItems = this.map.layers.map((layer) => {
|
|
65
|
+
return {
|
|
66
|
+
id: layer.options.source.id,
|
|
67
|
+
title: layer.title,
|
|
68
|
+
type: CatalogItemType.Layer
|
|
69
|
+
};
|
|
70
|
+
});
|
|
71
|
+
this.store.state.updateMany(currentItems, { added: true }, true);
|
|
72
|
+
if (this.catalog && this.catalog.sortDirection !== undefined) {
|
|
73
|
+
this.store.view.sort({
|
|
74
|
+
direction: this.catalog.sortDirection,
|
|
75
|
+
valueAccessor: (item) => item.title
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
const catalogShowLegend = this.catalog ? this.catalog.showLegend : false;
|
|
79
|
+
this.catalogAllowLegend = catalogShowLegend ? catalogShowLegend : this.catalogAllowLegend;
|
|
80
|
+
this.watcher = new EntityStoreWatcher(this.store, this.cdRef);
|
|
81
|
+
}
|
|
82
|
+
ngOnDestroy() {
|
|
83
|
+
this.watcher.destroy();
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* @internal
|
|
87
|
+
*/
|
|
88
|
+
isGroup(item) {
|
|
89
|
+
return item.type === CatalogItemType.Group;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* @internal
|
|
93
|
+
*/
|
|
94
|
+
isLayer(item) {
|
|
95
|
+
return item.type === CatalogItemType.Layer;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* When a layer is added or removed, add or remove it from the map
|
|
99
|
+
* @internal
|
|
100
|
+
* @param event Layer added event
|
|
101
|
+
*/
|
|
102
|
+
onLayerAddedChange(event) {
|
|
103
|
+
const layer = event.layer;
|
|
104
|
+
this.store.state.update(layer, { added: event.added }, false);
|
|
105
|
+
event.added ? this.addLayerToMap(layer) : this.removeLayerFromMap(layer);
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* When a froup is added or removed, add or remove it from the map
|
|
109
|
+
* @internal
|
|
110
|
+
* @param event Group added event
|
|
111
|
+
*/
|
|
112
|
+
onGroupAddedChange(event) {
|
|
113
|
+
const group = event.group;
|
|
114
|
+
this.store.state.update(group, { added: event.added }, false);
|
|
115
|
+
event.added ? this.addGroupToMap(group) : this.removeGroupFromMap(group);
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Add layer to map
|
|
119
|
+
* @param layer Catalog layer
|
|
120
|
+
*/
|
|
121
|
+
addLayerToMap(layer) {
|
|
122
|
+
this.addLayersToMap([layer]);
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Remove layer from map
|
|
126
|
+
* @param layer Catalog layer
|
|
127
|
+
*/
|
|
128
|
+
removeLayerFromMap(layer) {
|
|
129
|
+
this.removeLayersFromMap([layer]);
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Add multiple layers to map
|
|
133
|
+
* @param layers Catalog layers
|
|
134
|
+
*/
|
|
135
|
+
addLayersToMap(layers) {
|
|
136
|
+
const layers$ = layers.map((layer) => {
|
|
137
|
+
if (!layer.options.sourceOptions.optionsFromApi) {
|
|
138
|
+
layer.options.sourceOptions.optionsFromApi = true;
|
|
139
|
+
}
|
|
140
|
+
return this.layerService.createAsyncLayer(layer.options);
|
|
141
|
+
});
|
|
142
|
+
zip(...layers$).subscribe((oLayers) => {
|
|
143
|
+
this.store.state.updateMany(layers, { added: true });
|
|
144
|
+
this.map.addLayers(oLayers);
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Remove multiple layers from map
|
|
149
|
+
* @param layers Catalog layers
|
|
150
|
+
*/
|
|
151
|
+
removeLayersFromMap(layers) {
|
|
152
|
+
layers.forEach((layer) => {
|
|
153
|
+
this.store.state.update(layer, { added: false });
|
|
154
|
+
if (layer.options.baseLayer === true) {
|
|
155
|
+
const oLayer = this.map.getLayerById(layer.options.id);
|
|
156
|
+
if (oLayer !== undefined) {
|
|
157
|
+
this.map.removeLayer(oLayer);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
else {
|
|
161
|
+
const oLayer = this.map.getLayerById(layer.id);
|
|
162
|
+
if (oLayer !== undefined) {
|
|
163
|
+
this.map.removeLayer(oLayer);
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Sort the layers by title. asc or desc.
|
|
170
|
+
* @internal
|
|
171
|
+
*/
|
|
172
|
+
sortCatalogItemsByTitle(items, direction) {
|
|
173
|
+
const returnItem = items.sort((a, b) => {
|
|
174
|
+
const titleA = a.title.normalize('NFD').replace(/[\u0300-\u036f]/g, '');
|
|
175
|
+
const titleB = b.title.normalize('NFD').replace(/[\u0300-\u036f]/g, '');
|
|
176
|
+
if (titleA < titleB) {
|
|
177
|
+
return -1;
|
|
178
|
+
}
|
|
179
|
+
if (titleA > titleB) {
|
|
180
|
+
return 1;
|
|
181
|
+
}
|
|
182
|
+
return 0;
|
|
183
|
+
});
|
|
184
|
+
switch (direction) {
|
|
185
|
+
case 'asc':
|
|
186
|
+
return returnItem;
|
|
187
|
+
case 'desc':
|
|
188
|
+
return returnItem.reverse();
|
|
189
|
+
default:
|
|
190
|
+
return items;
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* Add all the layers of a group to map
|
|
195
|
+
* @param group Catalog group
|
|
196
|
+
*/
|
|
197
|
+
addGroupToMap(group) {
|
|
198
|
+
let layers = group.items.filter((item) => {
|
|
199
|
+
const added = this.store.state.get(item).added || false;
|
|
200
|
+
return this.isLayer(item) && added === false;
|
|
201
|
+
});
|
|
202
|
+
if (group.sortDirection !== undefined) {
|
|
203
|
+
layers = this.sortCatalogItemsByTitle(layers, group.sortDirection);
|
|
204
|
+
}
|
|
205
|
+
this.addLayersToMap(layers.reverse());
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Remove all the layers of a group from map
|
|
209
|
+
* @param group Catalog group
|
|
210
|
+
*/
|
|
211
|
+
removeGroupFromMap(group) {
|
|
212
|
+
const layers = group.items.filter((item) => {
|
|
213
|
+
const added = this.store.state.get(item).added || false;
|
|
214
|
+
return this.isLayer(item) && added === true;
|
|
215
|
+
});
|
|
216
|
+
this.removeLayersFromMap(layers);
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
CatalogBrowserComponent.ɵfac = function CatalogBrowserComponent_Factory(t) { return new (t || CatalogBrowserComponent)(i0.ɵɵdirectiveInject(i1.LayerService), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
|
|
220
|
+
CatalogBrowserComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CatalogBrowserComponent, selectors: [["igo-catalog-browser"]], inputs: { catalogAllowLegend: "catalogAllowLegend", catalog: "catalog", store: "store", map: "map", toggleCollapsedGroup: "toggleCollapsedGroup" }, decls: 3, vars: 5, consts: [[3, "navigation", "selection"], ["ngFor", "", 3, "ngForOf"], [4, "ngIf"], [3, "catalog", "group", "state", "resolution", "catalogAllowLegend", "collapsed", "toggleCollapsed", "addedChange", "layerAddedChange"], ["igoListItem", "", 3, "layer", "resolution", "catalogAllowLegend", "added", "addedChange"]], template: function CatalogBrowserComponent_Template(rf, ctx) { if (rf & 1) {
|
|
221
|
+
i0.ɵɵelementStart(0, "igo-list", 0);
|
|
222
|
+
i0.ɵɵtemplate(1, CatalogBrowserComponent_ng_template_1_Template, 2, 2, "ng-template", 1);
|
|
223
|
+
i0.ɵɵpipe(2, "async");
|
|
224
|
+
i0.ɵɵelementEnd();
|
|
225
|
+
} if (rf & 2) {
|
|
226
|
+
i0.ɵɵproperty("navigation", false)("selection", false);
|
|
227
|
+
i0.ɵɵadvance(1);
|
|
228
|
+
i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(2, 3, ctx.store.view.all$()));
|
|
229
|
+
} }, encapsulation: 2, changeDetection: 0 });
|
|
230
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CatalogBrowserComponent, [{
|
|
231
|
+
type: Component,
|
|
232
|
+
args: [{ selector: 'igo-catalog-browser', changeDetection: ChangeDetectionStrategy.OnPush, template: "<igo-list [navigation]=\"false\" [selection]=\"false\">\r\n <ng-template ngFor let-item [ngForOf]=\"store.view.all$() | async\">\r\n <ng-container *ngIf=\"isGroup(item)\">\r\n <igo-catalog-browser-group\r\n [catalog]=\"catalog\"\r\n [group]=\"item\"\r\n [state]=\"store.state\"\r\n [resolution]=\"resolution$ | async\"\r\n [catalogAllowLegend]=\"catalogAllowLegend\"\r\n [collapsed]=\"(store.count === 1) ? false : true\"\r\n [toggleCollapsed]=\"toggleCollapsedGroup\"\r\n (addedChange)=\"onGroupAddedChange($event)\"\r\n (layerAddedChange)=\"onLayerAddedChange($event)\">\r\n </igo-catalog-browser-group>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"isLayer(item)\">\r\n <igo-catalog-browser-layer\r\n igoListItem\r\n [layer]=\"item\"\r\n [resolution]=\"resolution$ | async\"\r\n [catalogAllowLegend]=\"catalogAllowLegend\"\r\n [added]=\"store.state.get(item).added\"\r\n (addedChange)=\"onLayerAddedChange($event)\">\r\n </igo-catalog-browser-layer>\r\n </ng-container>\r\n </ng-template>\r\n</igo-list>\r\n" }]
|
|
233
|
+
}], function () { return [{ type: i1.LayerService }, { type: i0.ChangeDetectorRef }]; }, { catalogAllowLegend: [{
|
|
234
|
+
type: Input
|
|
235
|
+
}], catalog: [{
|
|
236
|
+
type: Input
|
|
237
|
+
}], store: [{
|
|
238
|
+
type: Input
|
|
239
|
+
}], map: [{
|
|
240
|
+
type: Input
|
|
241
|
+
}], toggleCollapsedGroup: [{
|
|
242
|
+
type: Input
|
|
243
|
+
}] }); })();
|
|
244
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1icm93c2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2NhdGFsb2cvY2F0YWxvZy1icm93c2VyL2NhdGFsb2ctYnJvd3Nlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9jYXRhbG9nL2NhdGFsb2ctYnJvd3Nlci9jYXRhbG9nLWJyb3dzZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBQ0wsdUJBQXVCLEVBSXhCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxHQUFHLEVBQW1CLE1BQU0sTUFBTSxDQUFDO0FBRTVDLE9BQU8sRUFBZSxrQkFBa0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUsvRCxPQUFPLEVBTUwsZUFBZSxFQUNoQixNQUFNLFdBQVcsQ0FBQzs7Ozs7SUNyQmYsNkJBQW9DO0lBQ2xDLG9EQVNrRDtJQURoRCxpT0FBZSxlQUFBLGlDQUEwQixDQUFBLElBQUMsOE5BQ3RCLGVBQUEsaUNBQTBCLENBQUEsSUFESjs7SUFFNUMsaUJBQTRCO0lBQzlCLDBCQUFlOzs7O0lBVlgsZUFBbUI7SUFBbkIsd0NBQW1CLGtCQUFBLDZCQUFBLHdEQUFBLGlEQUFBLHNEQUFBLGdEQUFBOzs7O0lBWXZCLDZCQUFvQztJQUNsQyxvREFNNkM7SUFBM0MsaU9BQWUsZUFBQSxpQ0FBMEIsQ0FBQSxJQUFDOztJQUM1QyxpQkFBNEI7SUFDOUIsMEJBQWU7Ozs7SUFOWCxlQUFjO0lBQWQsK0JBQWMsd0RBQUEsaURBQUEsZ0RBQUE7OztJQWpCbEIsd0dBWWU7SUFFZix3R0FTZTs7OztJQXZCQSw4Q0FBbUI7SUFjbkIsZUFBbUI7SUFBbkIsOENBQW1COztBRFN0Qzs7R0FFRztBQU1ILE1BQU0sT0FBTyx1QkFBdUI7SUFn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SyxrQkFBa0IsQ0FBQyxLQUF1QjtRQUNoRCxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQWlCLEVBQUUsRUFBRTtZQUN0RCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQztZQUN4RCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLElBQUksQ0FBQztRQUM5QyxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxNQUE0QixDQUFDLENBQUM7SUFDekQsQ0FBQzs7OEZBbE5VLHVCQUF1QjswRUFBdkIsdUJBQXVCO1FDakNwQyxtQ0FBbUQ7UUFDakQsd0ZBeUJjOztRQUNoQixpQkFBVzs7UUEzQkQsa0NBQW9CLG9CQUFBO1FBQ0EsZUFBcUM7UUFBckMscUVBQXFDOzt1RkRnQ3RELHVCQUF1QjtjQUxuQyxTQUFTOzJCQUNFLHFCQUFxQixtQkFFZCx1QkFBdUIsQ0FBQyxNQUFNOytGQVl0QyxrQkFBa0I7a0JBQTFCLEtBQUs7WUFLRyxPQUFPO2tCQUFmLEtBQUs7WUFLRyxLQUFLO2tCQUFiLEtBQUs7WUFLRyxHQUFHO2tCQUFYLEtBQUs7WUFLRyxvQkFBb0I7a0JBQTVCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBJbnB1dCxcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBPbkluaXQsXHJcbiAgT25EZXN0cm95XHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyB6aXAsIEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5cclxuaW1wb3J0IHsgRW50aXR5U3RvcmUsIEVudGl0eVN0b3JlV2F0Y2hlciB9IGZyb20gJ0BpZ28yL2NvbW1vbic7XHJcbmltcG9ydCB7IExheWVyIH0gZnJvbSAnLi4vLi4vbGF5ZXIvc2hhcmVkL2xheWVycy9sYXllcic7XHJcbmltcG9ydCB7IExheWVyU2VydmljZSB9IGZyb20gJy4uLy4uL2xheWVyL3NoYXJlZC9sYXllci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSWdvTWFwIH0gZnJvbSAnLi4vLi4vbWFwJztcclxuXHJcbmltcG9ydCB7XHJcbiAgQ2F0YWxvZyxcclxuICBDYXRhbG9nSXRlbSxcclxuICBDYXRhbG9nSXRlbUxheWVyLFxyXG4gIENhdGFsb2dJdGVtR3JvdXAsXHJcbiAgQ2F0YWxvZ0l0ZW1TdGF0ZSxcclxuICBDYXRhbG9nSXRlbVR5cGVcclxufSBmcm9tICcuLi9zaGFyZWQnO1xyXG5cclxuLyoqXHJcbiAqIENvbXBvbmVudCB0byBicm93c2UgYSBjYXRhbG9nJ3MgZ3JvdXBzIGFuZCBsYXllcnMgYW5kIGRpc3BsYXkgdGhlbSBvbiBhIG1hcC5cclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnaWdvLWNhdGFsb2ctYnJvd3NlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NhdGFsb2ctYnJvd3Nlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIENhdGFsb2dCcm93c2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIC8qKlxyXG4gICAqIENhdGFsb2cgaXRlbXMgc3RvcmUgd2F0Y2hlclxyXG4gICAqL1xyXG4gIHByaXZhdGUgd2F0Y2hlcjogRW50aXR5U3RvcmVXYXRjaGVyPENhdGFsb2dJdGVtPjtcclxuXHJcbiAvLyBwcml2YXRlIHJlc29sdXRpb24kJDogU3Vic2NyaXB0aW9uO1xyXG5cclxuICBnZXQgcmVzb2x1dGlvbiQoKTogQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4geyByZXR1cm4gdGhpcy5tYXAudmlld0NvbnRyb2xsZXIucmVzb2x1dGlvbiQ7IH1cclxuXHJcbiAgQElucHV0KCkgY2F0YWxvZ0FsbG93TGVnZW5kID0gZmFsc2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIENhdGFsb2dcclxuICAgKi9cclxuICBASW5wdXQoKSBjYXRhbG9nOiBDYXRhbG9nO1xyXG5cclxuICAvKipcclxuICAgKiBTdG9yZSBob2xkaW5nIHRoZSBjYXRhbG9nJ3MgaXRlbXNcclxuICAgKi9cclxuICBASW5wdXQoKSBzdG9yZTogRW50aXR5U3RvcmU8Q2F0YWxvZ0l0ZW0sIENhdGFsb2dJdGVtU3RhdGU+O1xyXG5cclxuICAvKipcclxuICAgKiBNYXAgdG8gYWRkIHRoZSBjYXRhbG9nIGl0ZW1zIHRvXHJcbiAgICovXHJcbiAgQElucHV0KCkgbWFwOiBJZ29NYXA7XHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZXRoZXIgYSBncm91cCBjYW4gYmUgdG9nZ2xlZCB3aGVuIGl0J3MgY29sbGFwc2VkXHJcbiAgICovXHJcbiAgQElucHV0KCkgdG9nZ2xlQ29sbGFwc2VkR3JvdXA6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgbGF5ZXJTZXJ2aWNlOiBMYXllclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICkge31cclxuXHJcbiAgLyoqXHJcbiAgICogQGludGVybmFsXHJcbiAgICovXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBjb25zdCBjdXJyZW50SXRlbXMgPSB0aGlzLm1hcC5sYXllcnMubWFwKChsYXllcjogTGF5ZXIpID0+IHtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBpZDogbGF5ZXIub3B0aW9ucy5zb3VyY2UuaWQsXHJcbiAgICAgICAgdGl0bGU6IGxheWVyLnRpdGxlLFxyXG4gICAgICAgIHR5cGU6IENhdGFsb2dJdGVtVHlwZS5MYXllclxyXG4gICAgICB9O1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLnN0b3JlLnN0YXRlLnVwZGF0ZU1hbnkoY3VycmVudEl0ZW1zLCB7IGFkZGVkOiB0cnVlIH0sIHRydWUpO1xyXG4gICAgaWYgKHRoaXMuY2F0YWxvZyAmJiB0aGlzLmNhdGFsb2cuc29ydERpcmVjdGlvbiAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMuc3RvcmUudmlldy5zb3J0KHtcclxuICAgICAgICBkaXJlY3Rpb246IHRoaXMuY2F0YWxvZy5zb3J0RGlyZWN0aW9uLFxyXG4gICAgICAgIHZhbHVlQWNjZXNzb3I6IChpdGVtOiBDYXRhbG9nSXRlbSkgPT4gaXRlbS50aXRsZVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBjYXRhbG9nU2hvd0xlZ2VuZCA9IHRoaXMuY2F0YWxvZyA/IHRoaXMuY2F0YWxvZy5zaG93TGVnZW5kIDogZmFsc2U7XHJcbiAgICB0aGlzLmNhdGFsb2dBbGxvd0xlZ2VuZCA9IGNhdGFsb2dTaG93TGVnZW5kID8gY2F0YWxvZ1Nob3dMZWdlbmQgOiB0aGlzLmNhdGFsb2dBbGxvd0xlZ2VuZDtcclxuXHJcbiAgICB0aGlzLndhdGNoZXIgPSBuZXcgRW50aXR5U3RvcmVXYXRjaGVyKHRoaXMuc3RvcmUsIHRoaXMuY2RSZWYpO1xyXG5cclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy53YXRjaGVyLmRlc3Ryb3koKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEBpbnRlcm5hbFxyXG4gICAqL1xyXG4gIGlzR3JvdXAoaXRlbTogQ2F0YWxvZ0l0ZW0pOiBib29sZWFuIHtcclxuICAgIHJldHVybiBpdGVtLnR5cGUgPT09IENhdGFsb2dJdGVtVHlwZS5Hcm91cDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEBpbnRlcm5hbFxyXG4gICAqL1xyXG4gIGlzTGF5ZXIoaXRlbTogQ2F0YWxvZ0l0ZW0pOiBib29sZWFuIHtcclxuICAgIHJldHVybiBpdGVtLnR5cGUgPT09IENhdGFsb2dJdGVtVHlwZS5MYXllcjtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZW4gYSBsYXllciBpcyBhZGRlZCBvciByZW1vdmVkLCBhZGQgb3IgcmVtb3ZlIGl0IGZyb20gdGhlIG1hcFxyXG4gICAqIEBpbnRlcm5hbFxyXG4gICAqIEBwYXJhbSBldmVudCBMYXllciBhZGRlZCBldmVudFxyXG4gICAqL1xyXG4gIG9uTGF5ZXJBZGRlZENoYW5nZShldmVudDogeyBhZGRlZDogYm9vbGVhbjsgbGF5ZXI6IENhdGFsb2dJdGVtTGF5ZXIgfSkge1xyXG4gICAgY29uc3QgbGF5ZXIgPSBldmVudC5sYXllcjtcclxuICAgIHRoaXMuc3RvcmUuc3RhdGUudXBkYXRlKGxheWVyLCB7IGFkZGVkOiBldmVudC5hZGRlZCB9LCBmYWxzZSk7XHJcbiAgICBldmVudC5hZGRlZCA/IHRoaXMuYWRkTGF5ZXJUb01hcChsYXllcikgOiB0aGlzLnJlbW92ZUxheWVyRnJvbU1hcChsYXllcik7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBXaGVuIGEgZnJvdXAgaXMgYWRkZWQgb3IgcmVtb3ZlZCwgYWRkIG9yIHJlbW92ZSBpdCBmcm9tIHRoZSBtYXBcclxuICAgKiBAaW50ZXJuYWxcclxuICAgKiBAcGFyYW0gZXZlbnQgR3JvdXAgYWRkZWQgZXZlbnRcclxuICAgKi9cclxuICBvbkdyb3VwQWRkZWRDaGFuZ2UoZXZlbnQ6IHsgYWRkZWQ6IGJvb2xlYW47IGdyb3VwOiBDYXRhbG9nSXRlbUdyb3VwIH0pIHtcclxuICAgIGNvbnN0IGdyb3VwID0gZXZlbnQuZ3JvdXA7XHJcbiAgICB0aGlzLnN0b3JlLnN0YXRlLnVwZGF0ZShncm91cCwgeyBhZGRlZDogZXZlbnQuYWRkZWQgfSwgZmFsc2UpO1xyXG4gICAgZXZlbnQuYWRkZWQgPyB0aGlzLmFkZEdyb3VwVG9NYXAoZ3JvdXApIDogdGhpcy5yZW1vdmVHcm91cEZyb21NYXAoZ3JvdXApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQWRkIGxheWVyIHRvIG1hcFxyXG4gICAqIEBwYXJhbSBsYXllciBDYXRhbG9nIGxheWVyXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBhZGRMYXllclRvTWFwKGxheWVyOiBDYXRhbG9nSXRlbUxheWVyKSB7XHJcbiAgICB0aGlzLmFkZExheWVyc1RvTWFwKFtsYXllcl0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmVtb3ZlIGxheWVyIGZyb20gbWFwXHJcbiAgICogQHBhcmFtIGxheWVyIENhdGFsb2cgbGF5ZXJcclxuICAgKi9cclxuICBwcml2YXRlIHJlbW92ZUxheWVyRnJvbU1hcChsYXllcjogQ2F0YWxvZ0l0ZW1MYXllcikge1xyXG4gICAgdGhpcy5yZW1vdmVMYXllcnNGcm9tTWFwKFtsYXllcl0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQWRkIG11bHRpcGxlIGxheWVycyB0byBtYXBcclxuICAgKiBAcGFyYW0gbGF5ZXJzIENhdGFsb2cgbGF5ZXJzXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBhZGRMYXllcnNUb01hcChsYXllcnM6IENhdGFsb2dJdGVtTGF5ZXJbXSkge1xyXG4gICAgY29uc3QgbGF5ZXJzJCA9IGxheWVycy5tYXAoKGxheWVyOiBDYXRhbG9nSXRlbUxheWVyKSA9PiB7XHJcbiAgICAgIGlmICghbGF5ZXIub3B0aW9ucy5zb3VyY2VPcHRpb25zLm9wdGlvbnNGcm9tQXBpKSB7XHJcbiAgICAgICAgbGF5ZXIub3B0aW9ucy5zb3VyY2VPcHRpb25zLm9wdGlvbnNGcm9tQXBpID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gdGhpcy5sYXllclNlcnZpY2UuY3JlYXRlQXN5bmNMYXllcihsYXllci5vcHRpb25zKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHppcCguLi5sYXllcnMkKS5zdWJzY3JpYmUoKG9MYXllcnM6IExheWVyW10pID0+IHtcclxuICAgICAgdGhpcy5zdG9yZS5zdGF0ZS51cGRhdGVNYW55KGxheWVycywgeyBhZGRlZDogdHJ1ZSB9KTtcclxuICAgICAgdGhpcy5tYXAuYWRkTGF5ZXJzKG9MYXllcnMpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZW1vdmUgbXVsdGlwbGUgbGF5ZXJzIGZyb20gbWFwXHJcbiAgICogQHBhcmFtIGxheWVycyBDYXRhbG9nIGxheWVyc1xyXG4gICAqL1xyXG4gIHByaXZhdGUgcmVtb3ZlTGF5ZXJzRnJvbU1hcChsYXllcnM6IENhdGFsb2dJdGVtTGF5ZXJbXSkge1xyXG4gICAgbGF5ZXJzLmZvckVhY2goKGxheWVyOiBDYXRhbG9nSXRlbUxheWVyKSA9PiB7XHJcbiAgICAgIHRoaXMuc3RvcmUuc3RhdGUudXBkYXRlKGxheWVyLCB7IGFkZGVkOiBmYWxzZSB9KTtcclxuICAgICAgaWYgKGxheWVyLm9wdGlvbnMuYmFzZUxheWVyID09PSB0cnVlKSB7XHJcbiAgICAgICAgY29uc3Qgb0xheWVyID0gdGhpcy5tYXAuZ2V0TGF5ZXJCeUlkKGxheWVyLm9wdGlvbnMuaWQpO1xyXG4gICAgICAgIGlmIChvTGF5ZXIgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgdGhpcy5tYXAucmVtb3ZlTGF5ZXIob0xheWVyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgY29uc3Qgb0xheWVyID0gdGhpcy5tYXAuZ2V0TGF5ZXJCeUlkKGxheWVyLmlkKTtcclxuICAgICAgICBpZiAob0xheWVyICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgIHRoaXMubWFwLnJlbW92ZUxheWVyKG9MYXllcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNvcnQgdGhlIGxheWVycyBieSB0aXRsZS4gYXNjIG9yIGRlc2MuXHJcbiAgICogQGludGVybmFsXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBzb3J0Q2F0YWxvZ0l0ZW1zQnlUaXRsZShpdGVtczogQ2F0YWxvZ0l0ZW1bXSwgZGlyZWN0aW9uKSB7XHJcbiAgICBjb25zdCByZXR1cm5JdGVtID0gaXRlbXMuc29ydCgoYSwgYikgPT4ge1xyXG4gICAgICBjb25zdCB0aXRsZUEgPSBhLnRpdGxlLm5vcm1hbGl6ZSgnTkZEJykucmVwbGFjZSgvW1xcdTAzMDAtXFx1MDM2Zl0vZywgJycpO1xyXG4gICAgICBjb25zdCB0aXRsZUIgPSBiLnRpdGxlLm5vcm1hbGl6ZSgnTkZEJykucmVwbGFjZSgvW1xcdTAzMDAtXFx1MDM2Zl0vZywgJycpO1xyXG5cclxuICAgICAgaWYgKHRpdGxlQSA8IHRpdGxlQikge1xyXG4gICAgICAgIHJldHVybiAtMTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGl0bGVBID4gdGl0bGVCKSB7XHJcbiAgICAgICAgcmV0dXJuIDE7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIDA7XHJcbiAgICB9KTtcclxuICAgIHN3aXRjaCAoZGlyZWN0aW9uKSB7XHJcbiAgICAgIGNhc2UgJ2FzYyc6XHJcbiAgICAgICAgcmV0dXJuIHJldHVybkl0ZW07XHJcbiAgICAgIGNhc2UgJ2Rlc2MnOlxyXG4gICAgICAgIHJldHVybiByZXR1cm5JdGVtLnJldmVyc2UoKTtcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICByZXR1cm4gaXRlbXM7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBZGQgYWxsIHRoZSBsYXllcnMgb2YgYSBncm91cCB0byBtYXBcclxuICAgKiBAcGFyYW0gZ3JvdXAgQ2F0YWxvZyBncm91cFxyXG4gICAqL1xyXG4gIHByaXZhdGUgYWRkR3JvdXBUb01hcChncm91cDogQ2F0YWxvZ0l0ZW1Hcm91cCkge1xyXG4gICAgbGV0IGxheWVycyA9IGdyb3VwLml0ZW1zLmZpbHRlcigoaXRlbTogQ2F0YWxvZ0l0ZW0pID0+IHtcclxuICAgICAgY29uc3QgYWRkZWQgPSB0aGlzLnN0b3JlLnN0YXRlLmdldChpdGVtKS5hZGRlZCB8fCBmYWxzZTtcclxuICAgICAgcmV0dXJuIHRoaXMuaXNMYXllcihpdGVtKSAmJiBhZGRlZCA9PT0gZmFsc2U7XHJcbiAgICB9KTtcclxuICAgIGlmIChncm91cC5zb3J0RGlyZWN0aW9uICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgbGF5ZXJzID0gdGhpcy5zb3J0Q2F0YWxvZ0l0ZW1zQnlUaXRsZShsYXllcnMsIGdyb3VwLnNvcnREaXJlY3Rpb24pO1xyXG4gICAgfVxyXG4gICAgdGhpcy5hZGRMYXllcnNUb01hcChsYXllcnMucmV2ZXJzZSgpIGFzIENhdGFsb2dJdGVtTGF5ZXJbXSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZW1vdmUgYWxsIHRoZSBsYXllcnMgb2YgYSBncm91cCBmcm9tIG1hcFxyXG4gICAqIEBwYXJhbSBncm91cCBDYXRhbG9nIGdyb3VwXHJcbiAgICovXHJcbiAgcHJpdmF0ZSByZW1vdmVHcm91cEZyb21NYXAoZ3JvdXA6IENhdGFsb2dJdGVtR3JvdXApIHtcclxuICAgIGNvbnN0IGxheWVycyA9IGdyb3VwLml0ZW1zLmZpbHRlcigoaXRlbTogQ2F0YWxvZ0l0ZW0pID0+IHtcclxuICAgICAgY29uc3QgYWRkZWQgPSB0aGlzLnN0b3JlLnN0YXRlLmdldChpdGVtKS5hZGRlZCB8fCBmYWxzZTtcclxuICAgICAgcmV0dXJuIHRoaXMuaXNMYXllcihpdGVtKSAmJiBhZGRlZCA9PT0gdHJ1ZTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5yZW1vdmVMYXllcnNGcm9tTWFwKGxheWVycyBhcyBDYXRhbG9nSXRlbUxheWVyW10pO1xyXG4gIH1cclxufVxyXG4iLCI8aWdvLWxpc3QgW25hdmlnYXRpb25dPVwiZmFsc2VcIiBbc2VsZWN0aW9uXT1cImZhbHNlXCI+XHJcbiAgPG5nLXRlbXBsYXRlIG5nRm9yIGxldC1pdGVtIFtuZ0Zvck9mXT1cInN0b3JlLnZpZXcuYWxsJCgpIHwgYXN5bmNcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc0dyb3VwKGl0ZW0pXCI+XHJcbiAgICAgIDxpZ28tY2F0YWxvZy1icm93c2VyLWdyb3VwXHJcbiAgICAgICAgW2NhdGFsb2ddPVwiY2F0YWxvZ1wiXHJcbiAgICAgICAgW2dyb3VwXT1cIml0ZW1cIlxyXG4gICAgICAgIFtzdGF0ZV09XCJzdG9yZS5zdGF0ZVwiXHJcbiAgICAgICAgW3Jlc29sdXRpb25dPVwicmVzb2x1dGlvbiQgfCBhc3luY1wiXHJcbiAgICAgICAgW2NhdGFsb2dBbGxvd0xlZ2VuZF09XCJjYXRhbG9nQWxsb3dMZWdlbmRcIlxyXG4gICAgICAgIFtjb2xsYXBzZWRdPVwiKHN0b3JlLmNvdW50ID09PSAxKSA/IGZhbHNlIDogdHJ1ZVwiXHJcbiAgICAgICAgW3RvZ2dsZUNvbGxhcHNlZF09XCJ0b2dnbGVDb2xsYXBzZWRHcm91cFwiXHJcbiAgICAgICAgKGFkZGVkQ2hhbmdlKT1cIm9uR3JvdXBBZGRlZENoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAobGF5ZXJBZGRlZENoYW5nZSk9XCJvbkxheWVyQWRkZWRDaGFuZ2UoJGV2ZW50KVwiPlxyXG4gICAgICA8L2lnby1jYXRhbG9nLWJyb3dzZXItZ3JvdXA+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNMYXllcihpdGVtKVwiPlxyXG4gICAgICA8aWdvLWNhdGFsb2ctYnJvd3Nlci1sYXllclxyXG4gICAgICAgIGlnb0xpc3RJdGVtXHJcbiAgICAgICAgW2xheWVyXT1cIml0ZW1cIlxyXG4gICAgICAgIFtyZXNvbHV0aW9uXT1cInJlc29sdXRpb24kIHwgYXN5bmNcIlxyXG4gICAgICAgIFtjYXRhbG9nQWxsb3dMZWdlbmRdPVwiY2F0YWxvZ0FsbG93TGVnZW5kXCJcclxuICAgICAgICBbYWRkZWRdPVwic3RvcmUuc3RhdGUuZ2V0KGl0ZW0pLmFkZGVkXCJcclxuICAgICAgICAoYWRkZWRDaGFuZ2UpPVwib25MYXllckFkZGVkQ2hhbmdlKCRldmVudClcIj5cclxuICAgICAgPC9pZ28tY2F0YWxvZy1icm93c2VyLWxheWVyPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuPC9pZ28tbGlzdD5cclxuIl19
|
|
@@ -13,8 +13,8 @@ import { CatalogBrowserLayerComponent } from './catalog-browser-layer.component'
|
|
|
13
13
|
import { CatalogBrowserGroupComponent } from './catalog-browser-group.component';
|
|
14
14
|
import { IgoLayerModule } from '../../layer/layer.module';
|
|
15
15
|
import * as i0 from "@angular/core";
|
|
16
|
-
import * as i1 from "@
|
|
17
|
-
import * as i2 from "@
|
|
16
|
+
import * as i1 from "@angular/common";
|
|
17
|
+
import * as i2 from "@igo2/common";
|
|
18
18
|
/**
|
|
19
19
|
* @ignore
|
|
20
20
|
*/
|
|
@@ -22,20 +22,18 @@ export class IgoCatalogBrowserModule {
|
|
|
22
22
|
}
|
|
23
23
|
IgoCatalogBrowserModule.ɵfac = function IgoCatalogBrowserModule_Factory(t) { return new (t || IgoCatalogBrowserModule)(); };
|
|
24
24
|
IgoCatalogBrowserModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: IgoCatalogBrowserModule });
|
|
25
|
-
IgoCatalogBrowserModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
IgoLayerModule
|
|
38
|
-
]] });
|
|
25
|
+
IgoCatalogBrowserModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule,
|
|
26
|
+
MatBadgeModule,
|
|
27
|
+
MatButtonModule,
|
|
28
|
+
MatIconModule,
|
|
29
|
+
MatListModule,
|
|
30
|
+
MatTooltipModule,
|
|
31
|
+
IgoMatBadgeIconModule,
|
|
32
|
+
IgoLanguageModule,
|
|
33
|
+
IgoListModule,
|
|
34
|
+
IgoCollapsibleModule,
|
|
35
|
+
IgoMetadataModule,
|
|
36
|
+
IgoLayerModule] });
|
|
39
37
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(IgoCatalogBrowserModule, [{
|
|
40
38
|
type: NgModule,
|
|
41
39
|
args: [{
|
|
@@ -77,6 +75,6 @@ IgoCatalogBrowserModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [
|
|
|
77
75
|
IgoCollapsibleModule,
|
|
78
76
|
IgoMetadataModule,
|
|
79
77
|
IgoLayerModule], exports: [CatalogBrowserComponent] }); })();
|
|
80
|
-
i0.ɵɵsetComponentScope(CatalogBrowserComponent, [i1.
|
|
81
|
-
CatalogBrowserLayerComponent
|
|
82
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
78
|
+
i0.ɵɵsetComponentScope(CatalogBrowserComponent, [i1.NgForOf, i1.NgIf, i2.ListItemDirective, i2.ListComponent, CatalogBrowserGroupComponent,
|
|
79
|
+
CatalogBrowserLayerComponent], [i1.AsyncPipe]);
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1icm93c2VyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2NhdGFsb2cvY2F0YWxvZy1icm93c2VyL2NhdGFsb2ctYnJvd3Nlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTdELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUMvQyxPQUFPLEVBQ0wscUJBQXFCLEVBQ3JCLG9CQUFvQixFQUNwQixhQUFhLEVBQ2QsTUFBTSxjQUFjLENBQUM7QUFFdEIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDckUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdEUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDakYsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDakYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7O0FBRTFEOztHQUVHO0FBeUJILE1BQU0sT0FBTyx1QkFBdUI7OzhGQUF2Qix1QkFBdUI7eUVBQXZCLHVCQUF1Qjs2RUF0QmhDLFlBQVk7UUFDWixjQUFjO1FBQ2QsZUFBZTtRQUNmLGFBQWE7UUFDYixhQUFhO1FBQ2IsZ0JBQWdCO1FBQ2hCLHFCQUFxQjtRQUNyQixpQkFBaUI7UUFDakIsYUFBYTtRQUNiLG9CQUFvQjtRQUNwQixpQkFBaUI7UUFDakIsY0FBYzt1RkFXTCx1QkFBdUI7Y0F4Qm5DLFFBQVE7ZUFBQztnQkFDUixPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixjQUFjO29CQUNkLGVBQWU7b0JBQ2YsYUFBYTtvQkFDYixhQUFhO29CQUNiLGdCQUFnQjtvQkFDaEIscUJBQXFCO29CQUNyQixpQkFBaUI7b0JBQ2pCLGFBQWE7b0JBQ2Isb0JBQW9CO29CQUNwQixpQkFBaUI7b0JBQ2pCLGNBQWM7aUJBQ2Y7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLHVCQUF1QjtpQkFDeEI7Z0JBQ0QsWUFBWSxFQUFFO29CQUNaLHVCQUF1QjtvQkFDdkIsNEJBQTRCO29CQUM1Qiw0QkFBNEI7aUJBQzdCO2FBQ0Y7O3dGQUNZLHVCQUF1QixtQkFMaEMsdUJBQXVCO1FBQ3ZCLDRCQUE0QjtRQUM1Qiw0QkFBNEIsYUFuQjVCLFlBQVk7UUFDWixjQUFjO1FBQ2QsZUFBZTtRQUNmLGFBQWE7UUFDYixhQUFhO1FBQ2IsZ0JBQWdCO1FBQ2hCLHFCQUFxQjtRQUNyQixpQkFBaUI7UUFDakIsYUFBYTtRQUNiLG9CQUFvQjtRQUNwQixpQkFBaUI7UUFDakIsY0FBYyxhQUdkLHVCQUF1Qjt1QkFHdkIsdUJBQXVCLGdFQUN2Qiw0QkFBNEI7SUFDNUIsNEJBQTRCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbmltcG9ydCB7IE1hdEJhZGdlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYmFkZ2UnO1xyXG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0JztcclxuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xyXG5cclxuaW1wb3J0IHsgSWdvTGFuZ3VhZ2VNb2R1bGUgfSBmcm9tICdAaWdvMi9jb3JlJztcclxuaW1wb3J0IHtcclxuICBJZ29NYXRCYWRnZUljb25Nb2R1bGUsXHJcbiAgSWdvQ29sbGFwc2libGVNb2R1bGUsXHJcbiAgSWdvTGlzdE1vZHVsZVxyXG59IGZyb20gJ0BpZ28yL2NvbW1vbic7XHJcblxyXG5pbXBvcnQgeyBJZ29NZXRhZGF0YU1vZHVsZSB9IGZyb20gJy4vLi4vLi4vbWV0YWRhdGEvbWV0YWRhdGEubW9kdWxlJztcclxuaW1wb3J0IHsgQ2F0YWxvZ0Jyb3dzZXJDb21wb25lbnQgfSBmcm9tICcuL2NhdGFsb2ctYnJvd3Nlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDYXRhbG9nQnJvd3NlckxheWVyQ29tcG9uZW50IH0gZnJvbSAnLi9jYXRhbG9nLWJyb3dzZXItbGF5ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2F0YWxvZ0Jyb3dzZXJHcm91cENvbXBvbmVudCB9IGZyb20gJy4vY2F0YWxvZy1icm93c2VyLWdyb3VwLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IElnb0xheWVyTW9kdWxlIH0gZnJvbSAnLi4vLi4vbGF5ZXIvbGF5ZXIubW9kdWxlJztcclxuXHJcbi8qKlxyXG4gKiBAaWdub3JlXHJcbiAqL1xyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIE1hdEJhZGdlTW9kdWxlLFxyXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxyXG4gICAgTWF0SWNvbk1vZHVsZSxcclxuICAgIE1hdExpc3RNb2R1bGUsXHJcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxyXG4gICAgSWdvTWF0QmFkZ2VJY29uTW9kdWxlLFxyXG4gICAgSWdvTGFuZ3VhZ2VNb2R1bGUsXHJcbiAgICBJZ29MaXN0TW9kdWxlLFxyXG4gICAgSWdvQ29sbGFwc2libGVNb2R1bGUsXHJcbiAgICBJZ29NZXRhZGF0YU1vZHVsZSxcclxuICAgIElnb0xheWVyTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBDYXRhbG9nQnJvd3NlckNvbXBvbmVudFxyXG4gIF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBDYXRhbG9nQnJvd3NlckNvbXBvbmVudCxcclxuICAgIENhdGFsb2dCcm93c2VyR3JvdXBDb21wb25lbnQsXHJcbiAgICBDYXRhbG9nQnJvd3NlckxheWVyQ29tcG9uZW50XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSWdvQ2F0YWxvZ0Jyb3dzZXJNb2R1bGUge31cclxuIl19
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
import { Component, Optional, Inject } from '@angular/core';
|
|
2
|
+
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
3
|
+
import { Validators } from '@angular/forms';
|
|
4
|
+
import { BehaviorSubject } from 'rxjs';
|
|
5
|
+
import { TypeCapabilities } from '../../datasource';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/forms";
|
|
8
|
+
import * as i2 from "@igo2/core";
|
|
9
|
+
import * as i3 from "@angular/material/dialog";
|
|
10
|
+
import * as i4 from "@angular/common";
|
|
11
|
+
import * as i5 from "@angular/material/core";
|
|
12
|
+
import * as i6 from "@angular/material/tooltip";
|
|
13
|
+
import * as i7 from "@angular/material/button";
|
|
14
|
+
import * as i8 from "@angular/material/form-field";
|
|
15
|
+
import * as i9 from "@angular/material/input";
|
|
16
|
+
import * as i10 from "@angular/material/select";
|
|
17
|
+
import * as i11 from "@angular/material/autocomplete";
|
|
18
|
+
import * as i12 from "@ngx-translate/core";
|
|
19
|
+
function AddCatalogDialogComponent_mat_option_11_Template(rf, ctx) { if (rf & 1) {
|
|
20
|
+
i0.ɵɵelementStart(0, "mat-option", 17);
|
|
21
|
+
i0.ɵɵtext(1);
|
|
22
|
+
i0.ɵɵelementEnd();
|
|
23
|
+
} if (rf & 2) {
|
|
24
|
+
const predefinedCatalog_r7 = ctx.$implicit;
|
|
25
|
+
i0.ɵɵproperty("matTooltip", predefinedCatalog_r7.title)("value", predefinedCatalog_r7);
|
|
26
|
+
i0.ɵɵadvance(1);
|
|
27
|
+
i0.ɵɵtextInterpolate1(" ", predefinedCatalog_r7.title, " ");
|
|
28
|
+
} }
|
|
29
|
+
function AddCatalogDialogComponent_mat_option_18_Template(rf, ctx) { if (rf & 1) {
|
|
30
|
+
i0.ɵɵelementStart(0, "mat-option", 17);
|
|
31
|
+
i0.ɵɵtext(1);
|
|
32
|
+
i0.ɵɵelementEnd();
|
|
33
|
+
} if (rf & 2) {
|
|
34
|
+
const predefinedCatalog_r8 = ctx.$implicit;
|
|
35
|
+
i0.ɵɵproperty("matTooltip", predefinedCatalog_r8.url)("value", predefinedCatalog_r8);
|
|
36
|
+
i0.ɵɵadvance(1);
|
|
37
|
+
i0.ɵɵtextInterpolate1(" ", predefinedCatalog_r8.url, " ");
|
|
38
|
+
} }
|
|
39
|
+
function AddCatalogDialogComponent_mat_option_23_Template(rf, ctx) { if (rf & 1) {
|
|
40
|
+
i0.ɵɵelementStart(0, "mat-option", 18);
|
|
41
|
+
i0.ɵɵlistener("click", function AddCatalogDialogComponent_mat_option_23_Template_mat_option_click_0_listener($event) { return $event.stopPropagation(); });
|
|
42
|
+
i0.ɵɵelementStart(1, "p", 19);
|
|
43
|
+
i0.ɵɵtext(2);
|
|
44
|
+
i0.ɵɵelementEnd()();
|
|
45
|
+
} if (rf & 2) {
|
|
46
|
+
const type_r9 = ctx.$implicit;
|
|
47
|
+
i0.ɵɵproperty("value", type_r9);
|
|
48
|
+
i0.ɵɵadvance(2);
|
|
49
|
+
i0.ɵɵtextInterpolate(type_r9);
|
|
50
|
+
} }
|
|
51
|
+
const _c0 = function (a0, a1) { return { value: a0, email: a1 }; };
|
|
52
|
+
function AddCatalogDialogComponent_span_24_Template(rf, ctx) { if (rf & 1) {
|
|
53
|
+
i0.ɵɵelementStart(0, "span")(1, "p", 20);
|
|
54
|
+
i0.ɵɵtext(2);
|
|
55
|
+
i0.ɵɵelementEnd()();
|
|
56
|
+
} if (rf & 2) {
|
|
57
|
+
const ctx_r5 = i0.ɵɵnextContext();
|
|
58
|
+
i0.ɵɵadvance(2);
|
|
59
|
+
i0.ɵɵtextInterpolate(ctx_r5.languageService.translate.instant("igo.geo.catalog.externalProvider.unavailableWithEmail", i0.ɵɵpureFunction2(1, _c0, ctx_r5.addedCatalog.url, ctx_r5.emailAddress)));
|
|
60
|
+
} }
|
|
61
|
+
const _c1 = function (a0) { return { value: a0 }; };
|
|
62
|
+
function AddCatalogDialogComponent_span_25_Template(rf, ctx) { if (rf & 1) {
|
|
63
|
+
i0.ɵɵelementStart(0, "span")(1, "p", 20);
|
|
64
|
+
i0.ɵɵtext(2);
|
|
65
|
+
i0.ɵɵelementEnd()();
|
|
66
|
+
} if (rf & 2) {
|
|
67
|
+
const ctx_r6 = i0.ɵɵnextContext();
|
|
68
|
+
i0.ɵɵadvance(2);
|
|
69
|
+
i0.ɵɵtextInterpolate(ctx_r6.languageService.translate.instant("igo.geo.catalog.unavailable", i0.ɵɵpureFunction1(1, _c1, ctx_r6.addedCatalog.url)));
|
|
70
|
+
} }
|
|
71
|
+
export class AddCatalogDialogComponent {
|
|
72
|
+
constructor(formBuilder, languageService, configService, dialogRef, data) {
|
|
73
|
+
this.formBuilder = formBuilder;
|
|
74
|
+
this.languageService = languageService;
|
|
75
|
+
this.configService = configService;
|
|
76
|
+
this.dialogRef = dialogRef;
|
|
77
|
+
this.data = data;
|
|
78
|
+
this.defaultAddedCatalogType = 'wms';
|
|
79
|
+
this.predefinedCatalogsList$ = new BehaviorSubject([]);
|
|
80
|
+
this.predefinedCatalogs = [];
|
|
81
|
+
this.error = false;
|
|
82
|
+
this.store = data.store;
|
|
83
|
+
this.predefinedCatalogs = data.predefinedCatalogs;
|
|
84
|
+
this.error = data.error;
|
|
85
|
+
this.addedCatalog = data.addedCatalog;
|
|
86
|
+
this.form = this.formBuilder.group({
|
|
87
|
+
id: ['', []],
|
|
88
|
+
title: ['', []],
|
|
89
|
+
url: ['', [Validators.required]],
|
|
90
|
+
type: [this.defaultAddedCatalogType, [Validators.required]]
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
ngOnInit() {
|
|
94
|
+
this.store.state.clear();
|
|
95
|
+
this.typeCapabilities = Object.keys(TypeCapabilities);
|
|
96
|
+
this.addedCatalogType$$ = this.form
|
|
97
|
+
.get('type')
|
|
98
|
+
.valueChanges.subscribe((value) => {
|
|
99
|
+
if (value === 'wmts') {
|
|
100
|
+
this.form.get('title').setValidators(Validators.required);
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
this.form.get('title').setValidators([]);
|
|
104
|
+
}
|
|
105
|
+
this.form.get('title').updateValueAndValidity();
|
|
106
|
+
});
|
|
107
|
+
this.computePredefinedCatalogList();
|
|
108
|
+
this.storeViewAll$$ = this.store.view
|
|
109
|
+
.all$()
|
|
110
|
+
.subscribe(() => this.computePredefinedCatalogList());
|
|
111
|
+
this.emailAddress = this.configService.getConfig('emailAddress');
|
|
112
|
+
}
|
|
113
|
+
ngOnDestroy() {
|
|
114
|
+
this.addedCatalogType$$.unsubscribe();
|
|
115
|
+
this.storeViewAll$$.unsubscribe();
|
|
116
|
+
}
|
|
117
|
+
changeUrlOrTitle(catalog) {
|
|
118
|
+
this.form.patchValue(catalog);
|
|
119
|
+
this.error = false;
|
|
120
|
+
this.computePredefinedCatalogList();
|
|
121
|
+
}
|
|
122
|
+
computePredefinedCatalogList() {
|
|
123
|
+
this.predefinedCatalogsList$.next(this.predefinedCatalogs.filter((c) => !this.store.get(c.id)));
|
|
124
|
+
}
|
|
125
|
+
addCatalog(addedCatalog) {
|
|
126
|
+
this.error = false;
|
|
127
|
+
this.dialogRef.close(addedCatalog);
|
|
128
|
+
}
|
|
129
|
+
cancel() {
|
|
130
|
+
this.error = false;
|
|
131
|
+
this.dialogRef.close();
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
AddCatalogDialogComponent.ɵfac = function AddCatalogDialogComponent_Factory(t) { return new (t || AddCatalogDialogComponent)(i0.ɵɵdirectiveInject(i1.FormBuilder), i0.ɵɵdirectiveInject(i2.LanguageService), i0.ɵɵdirectiveInject(i2.ConfigService), i0.ɵɵdirectiveInject(i3.MatDialogRef), i0.ɵɵdirectiveInject(MAT_DIALOG_DATA, 8)); };
|
|
135
|
+
AddCatalogDialogComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AddCatalogDialogComponent, selectors: [["igo-add-catalog-dialog"]], decls: 34, vars: 25, consts: [["mat-dialog-title", "", 1, "mat-typography"], ["mat-dialog-content", "", 1, "mat-typography"], [1, "igo-form", 3, "formGroup"], [1, "igo-input-container"], ["type", "text", "formControlName", "title", "matInput", "", 3, "placeholder", "matAutocomplete"], [3, "optionSelected"], ["auto2", "matAutocomplete"], ["matTooltipShowDelay", "500", 3, "matTooltip", "value", 4, "ngFor", "ngForOf"], ["type", "text", "formControlName", "url", "placeholder", "URL", "matInput", "", 3, "matAutocomplete"], ["auto", "matAutocomplete"], ["formControlName", "type", "placeholder", "Type"], [3, "value", "click", 4, "ngFor", "ngForOf"], [4, "ngIf"], ["mat-dialog-actions", "", 2, "justify-content", "center"], [1, "igo-form-button-group", "add-catalog-button-top-padding"], ["mat-raised-button", "", "type", "button", 3, "click"], ["id", "addCatalogBtnDialog", "mat-raised-button", "", "type", "button", "color", "primary", 3, "disabled", "click"], ["matTooltipShowDelay", "500", 3, "matTooltip", "value"], [3, "value", "click"], ["mat-line", ""], [1, "error"]], template: function AddCatalogDialogComponent_Template(rf, ctx) { if (rf & 1) {
|
|
136
|
+
i0.ɵɵelementStart(0, "h1", 0);
|
|
137
|
+
i0.ɵɵtext(1);
|
|
138
|
+
i0.ɵɵpipe(2, "translate");
|
|
139
|
+
i0.ɵɵelementEnd();
|
|
140
|
+
i0.ɵɵelementStart(3, "div", 1)(4, "form", 2)(5, "div", 3)(6, "mat-form-field");
|
|
141
|
+
i0.ɵɵelement(7, "input", 4);
|
|
142
|
+
i0.ɵɵpipe(8, "translate");
|
|
143
|
+
i0.ɵɵelementStart(9, "mat-autocomplete", 5, 6);
|
|
144
|
+
i0.ɵɵlistener("optionSelected", function AddCatalogDialogComponent_Template_mat_autocomplete_optionSelected_9_listener($event) { return ctx.changeUrlOrTitle($event.option.value); });
|
|
145
|
+
i0.ɵɵtemplate(11, AddCatalogDialogComponent_mat_option_11_Template, 2, 3, "mat-option", 7);
|
|
146
|
+
i0.ɵɵpipe(12, "async");
|
|
147
|
+
i0.ɵɵelementEnd()()();
|
|
148
|
+
i0.ɵɵelementStart(13, "div", 3)(14, "mat-form-field");
|
|
149
|
+
i0.ɵɵelement(15, "input", 8);
|
|
150
|
+
i0.ɵɵelementStart(16, "mat-autocomplete", 5, 9);
|
|
151
|
+
i0.ɵɵlistener("optionSelected", function AddCatalogDialogComponent_Template_mat_autocomplete_optionSelected_16_listener($event) { return ctx.changeUrlOrTitle($event.option.value); });
|
|
152
|
+
i0.ɵɵtemplate(18, AddCatalogDialogComponent_mat_option_18_Template, 2, 3, "mat-option", 7);
|
|
153
|
+
i0.ɵɵpipe(19, "async");
|
|
154
|
+
i0.ɵɵelementEnd()()();
|
|
155
|
+
i0.ɵɵelementStart(20, "div", 3)(21, "mat-form-field")(22, "mat-select", 10);
|
|
156
|
+
i0.ɵɵtemplate(23, AddCatalogDialogComponent_mat_option_23_Template, 3, 2, "mat-option", 11);
|
|
157
|
+
i0.ɵɵelementEnd()()()();
|
|
158
|
+
i0.ɵɵtemplate(24, AddCatalogDialogComponent_span_24_Template, 3, 4, "span", 12);
|
|
159
|
+
i0.ɵɵtemplate(25, AddCatalogDialogComponent_span_25_Template, 3, 3, "span", 12);
|
|
160
|
+
i0.ɵɵelementEnd();
|
|
161
|
+
i0.ɵɵelementStart(26, "div", 13)(27, "div", 14)(28, "button", 15);
|
|
162
|
+
i0.ɵɵlistener("click", function AddCatalogDialogComponent_Template_button_click_28_listener() { return ctx.cancel(); });
|
|
163
|
+
i0.ɵɵtext(29);
|
|
164
|
+
i0.ɵɵpipe(30, "translate");
|
|
165
|
+
i0.ɵɵelementEnd();
|
|
166
|
+
i0.ɵɵelementStart(31, "button", 16);
|
|
167
|
+
i0.ɵɵlistener("click", function AddCatalogDialogComponent_Template_button_click_31_listener() { return ctx.addCatalog(ctx.form.value); });
|
|
168
|
+
i0.ɵɵtext(32);
|
|
169
|
+
i0.ɵɵpipe(33, "translate");
|
|
170
|
+
i0.ɵɵelementEnd()()();
|
|
171
|
+
} if (rf & 2) {
|
|
172
|
+
const _r0 = i0.ɵɵreference(10);
|
|
173
|
+
const _r2 = i0.ɵɵreference(17);
|
|
174
|
+
i0.ɵɵadvance(1);
|
|
175
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 13, "igo.geo.catalog.library.addTitle"));
|
|
176
|
+
i0.ɵɵadvance(3);
|
|
177
|
+
i0.ɵɵproperty("formGroup", ctx.form);
|
|
178
|
+
i0.ɵɵadvance(3);
|
|
179
|
+
i0.ɵɵpropertyInterpolate("placeholder", i0.ɵɵpipeBind1(8, 15, "igo.geo.printForm.title"));
|
|
180
|
+
i0.ɵɵproperty("matAutocomplete", _r0);
|
|
181
|
+
i0.ɵɵadvance(4);
|
|
182
|
+
i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(12, 17, ctx.predefinedCatalogsList$));
|
|
183
|
+
i0.ɵɵadvance(4);
|
|
184
|
+
i0.ɵɵproperty("matAutocomplete", _r2);
|
|
185
|
+
i0.ɵɵadvance(3);
|
|
186
|
+
i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(19, 19, ctx.predefinedCatalogsList$));
|
|
187
|
+
i0.ɵɵadvance(5);
|
|
188
|
+
i0.ɵɵproperty("ngForOf", ctx.typeCapabilities);
|
|
189
|
+
i0.ɵɵadvance(1);
|
|
190
|
+
i0.ɵɵproperty("ngIf", ctx.error && ctx.addedCatalog && ctx.emailAddress);
|
|
191
|
+
i0.ɵɵadvance(1);
|
|
192
|
+
i0.ɵɵproperty("ngIf", ctx.error && ctx.addedCatalog && !ctx.emailAddress);
|
|
193
|
+
i0.ɵɵadvance(4);
|
|
194
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(30, 21, "igo.geo.catalog.library.cancel"), " ");
|
|
195
|
+
i0.ɵɵadvance(2);
|
|
196
|
+
i0.ɵɵproperty("disabled", !ctx.form.valid);
|
|
197
|
+
i0.ɵɵadvance(1);
|
|
198
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(33, 23, "igo.geo.catalog.library.add"), " ");
|
|
199
|
+
} }, dependencies: [i4.NgForOf, i4.NgIf, i5.MatLine, i6.MatTooltip, i7.MatButton, i8.MatFormField, i1.ɵNgNoValidate, i1.DefaultValueAccessor, i1.NgControlStatus, i1.NgControlStatusGroup, i1.FormGroupDirective, i1.FormControlName, i9.MatInput, i10.MatSelect, i5.MatOption, i11.MatAutocomplete, i11.MatAutocompleteTrigger, i3.MatDialogTitle, i3.MatDialogContent, i3.MatDialogActions, i4.AsyncPipe, i12.TranslatePipe], styles: ["mat-form-field[_ngcontent-%COMP%]{width:100%}.add-catalog-button-top-padding[_ngcontent-%COMP%]{padding-top:25px}.igo-form[_ngcontent-%COMP%]{padding:10px 5px 5px}.igo-form-button-group[_ngcontent-%COMP%]{text-align:center}button[_ngcontent-%COMP%]{cursor:pointer}button#addCatalogBtnDialog[disabled=true][_ngcontent-%COMP%]{cursor:default;background-color:#0000001f;color:#00000042}.error[_ngcontent-%COMP%]{color:red}"] });
|
|
200
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AddCatalogDialogComponent, [{
|
|
201
|
+
type: Component,
|
|
202
|
+
args: [{ selector: 'igo-add-catalog-dialog', template: "<h1 mat-dialog-title class=\"mat-typography\">{{'igo.geo.catalog.library.addTitle' | translate}}</h1>\r\n<div mat-dialog-content class=\"mat-typography\">\r\n <form class=\"igo-form\" [formGroup]=\"form\">\r\n <div class=\"igo-input-container\">\r\n <mat-form-field>\r\n <input type=\"text\" formControlName=\"title\" placeholder=\"{{'igo.geo.printForm.title' | translate}}\" matInput [matAutocomplete]=\"auto2\">\r\n <mat-autocomplete #auto2=\"matAutocomplete\" (optionSelected)='changeUrlOrTitle($event.option.value)'>\r\n <mat-option *ngFor=\"let predefinedCatalog of (predefinedCatalogsList$ | async)\" matTooltipShowDelay=\"500\"\r\n [matTooltip]=\"predefinedCatalog.title\" [value]=\"predefinedCatalog\">\r\n {{predefinedCatalog.title}}\r\n </mat-option>\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"igo-input-container\">\r\n <mat-form-field>\r\n <input type=\"text\" formControlName=\"url\" placeholder=\"URL\" matInput [matAutocomplete]=\"auto\">\r\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)='changeUrlOrTitle($event.option.value)'>\r\n <mat-option *ngFor=\"let predefinedCatalog of (predefinedCatalogsList$ | async)\" matTooltipShowDelay=\"500\"\r\n [matTooltip]=\"predefinedCatalog.url\" [value]=\"predefinedCatalog\">\r\n {{predefinedCatalog.url}}\r\n </mat-option>\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"igo-input-container\">\r\n <mat-form-field>\r\n <mat-select\r\n formControlName=\"type\"\r\n placeholder=\"Type\">\r\n <mat-option\r\n *ngFor=\"let type of typeCapabilities\"\r\n [value]=\"type\"\r\n (click)=\"$event.stopPropagation()\">\r\n <p mat-line>{{type}}</p>\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n </form>\r\n <span *ngIf=\"error && addedCatalog && emailAddress\">\r\n <p class=\"error\">{{languageService.translate.instant('igo.geo.catalog.externalProvider.unavailableWithEmail', { value: addedCatalog.url, email: emailAddress })}}</p>\r\n </span>\r\n <span *ngIf=\"error && addedCatalog && !emailAddress\">\r\n <p class=\"error\">{{languageService.translate.instant('igo.geo.catalog.unavailable', { value: addedCatalog.url })}}</p>\r\n </span>\r\n</div>\r\n<div mat-dialog-actions style=\"justify-content: center\">\r\n <div class=\"igo-form-button-group add-catalog-button-top-padding\">\r\n <button\r\n mat-raised-button\r\n type=\"button\"\r\n (click)=\"cancel()\">\r\n {{'igo.geo.catalog.library.cancel' | translate}}\r\n </button>\r\n <button\r\n id=\"addCatalogBtnDialog\"\r\n mat-raised-button\r\n type=\"button\"\r\n color=\"primary\"\r\n [disabled]=\"!form.valid\"\r\n (click)=\"addCatalog(form.value)\">\r\n {{'igo.geo.catalog.library.add' | translate}}\r\n </button>\r\n </div>\r\n</div>", styles: ["mat-form-field{width:100%}.add-catalog-button-top-padding{padding-top:25px}.igo-form{padding:10px 5px 5px}.igo-form-button-group{text-align:center}button{cursor:pointer}button#addCatalogBtnDialog[disabled=true]{cursor:default;background-color:#0000001f;color:#00000042}.error{color:red}\n"] }]
|
|
203
|
+
}], function () { return [{ type: i1.FormBuilder }, { type: i2.LanguageService }, { type: i2.ConfigService }, { type: i3.MatDialogRef }, { type: undefined, decorators: [{
|
|
204
|
+
type: Optional
|
|
205
|
+
}, {
|
|
206
|
+
type: Inject,
|
|
207
|
+
args: [MAT_DIALOG_DATA]
|
|
208
|
+
}] }]; }, null); })();
|
|
209
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWNhdGFsb2ctZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2NhdGFsb2cvY2F0YWxvZy1saWJyYXJ5L2FkZC1jYXRhbG9nLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9jYXRhbG9nL2NhdGFsb2ctbGlicmFyeS9hZGQtY2F0YWxvZy1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBcUIsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQWdCLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pFLE9BQU8sRUFBMEIsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFnQixlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHckQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7Ozs7Ozs7Ozs7Ozs7OztJQ0ExQyxzQ0FDcUU7SUFDbkUsWUFDRjtJQUFBLGlCQUFhOzs7SUFGWCx1REFBc0MsK0JBQUE7SUFDdEMsZUFDRjtJQURFLDJEQUNGOzs7SUFRQSxzQ0FDbUU7SUFDakUsWUFDRjtJQUFBLGlCQUFhOzs7SUFGWCxxREFBb0MsK0JBQUE7SUFDcEMsZUFDRjtJQURFLHlEQUNGOzs7SUFTQSxzQ0FHcUM7SUFBbkMsOEhBQVMsd0JBQXdCLElBQUM7SUFDaEMsNkJBQVk7SUFBQSxZQUFRO0lBQUEsaUJBQUksRUFBQTs7O0lBRjFCLCtCQUFjO0lBRUEsZUFBUTtJQUFSLDZCQUFROzs7O0lBTWhDLDRCQUFvRCxZQUFBO0lBQ2pDLFlBQWdKO0lBQUEsaUJBQUksRUFBQTs7O0lBQXBKLGVBQWdKO0lBQWhKLGlNQUFnSjs7OztJQUVu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LEVBQUEsRUFBQSxFQUFBO1FBSW5CLCtFQUVPO1FBQ1AsK0VBRU87UUFDVCxpQkFBTTtRQUNOLGdDQUF3RCxlQUFBLGtCQUFBO1FBS2xELHVHQUFTLFlBQVEsSUFBQztRQUNsQixhQUNGOztRQUFBLGlCQUFTO1FBQ1QsbUNBTW1DO1FBQWpDLHVHQUFTLDhCQUFzQixJQUFDO1FBQ2hDLGFBQ0Y7O1FBQUEsaUJBQVMsRUFBQSxFQUFBOzs7O1FBL0QrQixlQUFrRDtRQUFsRCwrRUFBa0Q7UUFFckUsZUFBa0I7UUFBbEIsb0NBQWtCO1FBR1EsZUFBdUQ7UUFBdkQseUZBQXVEO1FBQVUscUNBQXlCO1FBRXpGLGVBQW9DO1FBQXBDLDZFQUFvQztRQVNaLGVBQXdCO1FBQXhCLHFDQUF3QjtRQUVoRCxlQUFvQztRQUFwQyw2RUFBb0M7UUFhM0QsZUFBbUI7UUFBbkIsOENBQW1CO1FBU3ZDLGVBQTJDO1FBQTNDLHdFQUEyQztRQUczQyxlQUE0QztRQUE1Qyx5RUFBNEM7UUFVL0MsZUFDRjtRQURFLHlGQUNGO1FBTUUsZUFBd0I7UUFBeEIsMENBQXdCO1FBRXhCLGVBQ0Y7UUFERSxzRkFDRjs7dUZEaERTLHlCQUF5QjtjQUxyQyxTQUFTOzJCQUNFLHdCQUF3Qjs7c0JBc0IvQixRQUFROztzQkFDUixNQUFNO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMYW5ndWFnZVNlcnZpY2UsIENvbmZpZ1NlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIE9uRGVzdHJveSwgT3B0aW9uYWwsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXREaWFsb2dSZWYsIE1BVF9ESUFMT0dfREFUQSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgeyBFbnRpdHlTdG9yZSB9IGZyb20gJ0BpZ28yL2NvbW1vbic7XHJcbmltcG9ydCB7IFR5cGVDYXBhYmlsaXRpZXMgfSBmcm9tICcuLi8uLi9kYXRhc291cmNlJztcclxuaW1wb3J0IHsgQ2F0YWxvZyB9IGZyb20gJy4uL3NoYXJlZC9jYXRhbG9nLmFic3RyYWN0JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnaWdvLWFkZC1jYXRhbG9nLWRpYWxvZycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2FkZC1jYXRhbG9nLWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYWRkLWNhdGFsb2ctZGlhbG9nLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIEFkZENhdGFsb2dEaWFsb2dDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgcHVibGljIGZvcm06IEZvcm1Hcm91cDtcclxuICBwcml2YXRlIGRlZmF1bHRBZGRlZENhdGFsb2dUeXBlID0gJ3dtcyc7XHJcbiAgcHJpdmF0ZSBhZGRlZENhdGFsb2dUeXBlJCQ6IFN1YnNjcmlwdGlvbjtcclxuICBwdWJsaWMgcHJlZGVmaW5lZENhdGFsb2dzTGlzdCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PENhdGFsb2dbXT4oW10pO1xyXG4gIHR5cGVDYXBhYmlsaXRpZXM6IHN0cmluZ1tdO1xyXG4gIHByZWRlZmluZWRDYXRhbG9nczogQ2F0YWxvZ1tdID0gW107XHJcbiAgc3RvcmU6IEVudGl0eVN0b3JlPENhdGFsb2c+O1xyXG4gIGVycm9yID0gZmFsc2U7XHJcbiAgYWRkZWRDYXRhbG9nOiBDYXRhbG9nO1xyXG4gIGVtYWlsQWRkcmVzczogc3RyaW5nO1xyXG4gIHByaXZhdGUgc3RvcmVWaWV3QWxsJCQ6IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGZvcm1CdWlsZGVyOiBGb3JtQnVpbGRlcixcclxuICAgIHB1YmxpYyBsYW5ndWFnZVNlcnZpY2U6IExhbmd1YWdlU2VydmljZSxcclxuICAgIHByaXZhdGUgY29uZmlnU2VydmljZTogQ29uZmlnU2VydmljZSxcclxuICAgIHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxBZGRDYXRhbG9nRGlhbG9nQ29tcG9uZW50PixcclxuICAgIEBPcHRpb25hbCgpXHJcbiAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSlcclxuICAgIHB1YmxpYyBkYXRhOiB7IHByZWRlZmluZWRDYXRhbG9nczogQ2F0YWxvZ1tdOyBzdG9yZTogRW50aXR5U3RvcmU8Q2F0YWxvZz47IGVycm9yOiBib29sZWFuOyBhZGRlZENhdGFsb2c6IENhdGFsb2cgfVxyXG4gICkge1xyXG4gICAgdGhpcy5zdG9yZSA9IGRhdGEuc3RvcmU7XHJcbiAgICB0aGlzLnByZWRlZmluZWRDYXRhbG9ncyA9IGRhdGEucHJlZGVmaW5lZENhdGFsb2dzO1xyXG4gICAgdGhpcy5lcnJvciA9IGRhdGEuZXJyb3I7XHJcbiAgICB0aGlzLmFkZGVkQ2F0YWxvZyA9IGRhdGEuYWRkZWRDYXRhbG9nO1xyXG4gICAgdGhpcy5mb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XHJcbiAgICAgIGlkOiBbJycsIFtdXSxcclxuICAgICAgdGl0bGU6IFsnJywgW11dLFxyXG4gICAgICB1cmw6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcclxuICAgICAgdHlwZTogW3RoaXMuZGVmYXVsdEFkZGVkQ2F0YWxvZ1R5cGUsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnN0b3JlLnN0YXRlLmNsZWFyKCk7XHJcbiAgICB0aGlzLnR5cGVDYXBhYmlsaXRpZXMgPSBPYmplY3Qua2V5cyhUeXBlQ2FwYWJpbGl0aWVzKTtcclxuXHJcbiAgICB0aGlzLmFkZGVkQ2F0YWxvZ1R5cGUkJCA9IHRoaXMuZm9ybVxyXG4gICAgICAuZ2V0KCd0eXBlJylcclxuICAgICAgLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XHJcbiAgICAgICAgaWYgKHZhbHVlID09PSAnd210cycpIHtcclxuICAgICAgICAgIHRoaXMuZm9ybS5nZXQoJ3RpdGxlJykuc2V0VmFsaWRhdG9ycyhWYWxpZGF0b3JzLnJlcXVpcmVkKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5mb3JtLmdldCgndGl0bGUnKS5zZXRWYWxpZGF0b3JzKFtdKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5mb3JtLmdldCgndGl0bGUnKS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgIHRoaXMuY29tcHV0ZVByZWRlZmluZWRDYXRhbG9nTGlzdCgpO1xyXG4gICAgdGhpcy5zdG9yZVZpZXdBbGwkJCA9IHRoaXMuc3RvcmUudmlld1xyXG4gICAgICAuYWxsJCgpXHJcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jb21wdXRlUHJlZGVmaW5lZENhdGFsb2dMaXN0KCkpO1xyXG5cclxuICAgIHRoaXMuZW1haWxBZGRyZXNzID0gdGhpcy5jb25maWdTZXJ2aWNlLmdldENvbmZpZygnZW1haWxBZGRyZXNzJyk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMuYWRkZWRDYXRhbG9nVHlwZSQkLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB0aGlzLnN0b3JlVmlld0FsbCQkLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICBjaGFuZ2VVcmxPclRpdGxlKGNhdGFsb2c6IENhdGFsb2cpIHtcclxuICAgIHRoaXMuZm9ybS5wYXRjaFZhbHVlKGNhdGFsb2cpO1xyXG4gICAgdGhpcy5lcnJvciA9IGZhbHNlO1xyXG4gICAgdGhpcy5jb21wdXRlUHJlZGVmaW5lZENhdGFsb2dMaXN0KCk7XHJcbiAgfVxyXG5cclxuICBjb21wdXRlUHJlZGVmaW5lZENhdGFsb2dMaXN0KCkge1xyXG4gICAgdGhpcy5wcmVkZWZpbmVkQ2F0YWxvZ3NMaXN0JC5uZXh0KFxyXG4gICAgICB0aGlzLnByZWRlZmluZWRDYXRhbG9ncy5maWx0ZXIoKGMpID0+ICF0aGlzLnN0b3JlLmdldChjLmlkKSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBhZGRDYXRhbG9nKGFkZGVkQ2F0YWxvZzogQ2F0YWxvZykge1xyXG4gICAgdGhpcy5lcnJvciA9IGZhbHNlO1xyXG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoYWRkZWRDYXRhbG9nKTtcclxuICB9XHJcblxyXG4gIGNhbmNlbCgpIHtcclxuICAgIHRoaXMuZXJyb3IgPSBmYWxzZTtcclxuICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxoMSBtYXQtZGlhbG9nLXRpdGxlIGNsYXNzPVwibWF0LXR5cG9ncmFwaHlcIj57eydpZ28uZ2VvLmNhdGFsb2cubGlicmFyeS5hZGRUaXRsZScgfCB0cmFuc2xhdGV9fTwvaDE+XHJcbjxkaXYgbWF0LWRpYWxvZy1jb250ZW50IGNsYXNzPVwibWF0LXR5cG9ncmFwaHlcIj5cclxuICA8Zm9ybSBjbGFzcz1cImlnby1mb3JtXCIgW2Zvcm1Hcm91cF09XCJmb3JtXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaWdvLWlucHV0LWNvbnRhaW5lclwiPlxyXG4gICAgICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgZm9ybUNvbnRyb2xOYW1lPVwidGl0bGVcIiBwbGFjZWhvbGRlcj1cInt7J2lnby5nZW8ucHJpbnRGb3JtLnRpdGxlJyB8IHRyYW5zbGF0ZX19XCIgbWF0SW5wdXQgW21hdEF1dG9jb21wbGV0ZV09XCJhdXRvMlwiPlxyXG4gICAgICAgIDxtYXQtYXV0b2NvbXBsZXRlICNhdXRvMj1cIm1hdEF1dG9jb21wbGV0ZVwiIChvcHRpb25TZWxlY3RlZCk9J2NoYW5nZVVybE9yVGl0bGUoJGV2ZW50Lm9wdGlvbi52YWx1ZSknPlxyXG4gICAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IHByZWRlZmluZWRDYXRhbG9nIG9mIChwcmVkZWZpbmVkQ2F0YWxvZ3NMaXN0JCB8IGFzeW5jKVwiIG1hdFRvb2x0aXBTaG93RGVsYXk9XCI1MDBcIlxyXG4gICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJwcmVkZWZpbmVkQ2F0YWxvZy50aXRsZVwiIFt2YWx1ZV09XCJwcmVkZWZpbmVkQ2F0YWxvZ1wiPlxyXG4gICAgICAgICAgICB7e3ByZWRlZmluZWRDYXRhbG9nLnRpdGxlfX1cclxuICAgICAgICAgIDwvbWF0LW9wdGlvbj5cclxuICAgICAgICA8L21hdC1hdXRvY29tcGxldGU+XHJcbiAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJpZ28taW5wdXQtY29udGFpbmVyXCI+XHJcbiAgICAgIDxtYXQtZm9ybS1maWVsZD5cclxuICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBmb3JtQ29udHJvbE5hbWU9XCJ1cmxcIiBwbGFjZWhvbGRlcj1cIlVSTFwiIG1hdElucHV0IFttYXRBdXRvY29tcGxldGVdPVwiYXV0b1wiPlxyXG4gICAgICAgIDxtYXQtYXV0b2NvbXBsZXRlICNhdXRvPVwibWF0QXV0b2NvbXBsZXRlXCIgKG9wdGlvblNlbGVjdGVkKT0nY2hhbmdlVXJsT3JUaXRsZSgkZXZlbnQub3B0aW9uLnZhbHVlKSc+XHJcbiAgICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgcHJlZGVmaW5lZENhdGFsb2cgb2YgKHByZWRlZmluZWRDYXRhbG9nc0xpc3QkIHwgYXN5bmMpXCIgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXHJcbiAgICAgICAgICAgIFttYXRUb29sdGlwXT1cInByZWRlZmluZWRDYXRhbG9nLnVybFwiIFt2YWx1ZV09XCJwcmVkZWZpbmVkQ2F0YWxvZ1wiPlxyXG4gICAgICAgICAgICB7e3ByZWRlZmluZWRDYXRhbG9nLnVybH19XHJcbiAgICAgICAgICA8L21hdC1vcHRpb24+XHJcbiAgICAgICAgPC9tYXQtYXV0b2NvbXBsZXRlPlxyXG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaWdvLWlucHV0LWNvbnRhaW5lclwiPlxyXG4gICAgICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgICAgPG1hdC1zZWxlY3RcclxuICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInR5cGVcIlxyXG4gICAgICAgICAgcGxhY2Vob2xkZXI9XCJUeXBlXCI+XHJcbiAgICAgICAgICA8bWF0LW9wdGlvblxyXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgdHlwZSBvZiB0eXBlQ2FwYWJpbGl0aWVzXCJcclxuICAgICAgICAgICAgW3ZhbHVlXT1cInR5cGVcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XHJcbiAgICAgICAgICAgICAgPHAgbWF0LWxpbmU+e3t0eXBlfX08L3A+XHJcbiAgICAgICAgICA8L21hdC1vcHRpb24+XHJcbiAgICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9mb3JtPlxyXG4gIDxzcGFuICpuZ0lmPVwiZXJyb3IgJiYgYWRkZWRDYXRhbG9nICYmIGVtYWlsQWRkcmVzc1wiPlxyXG4gICAgPHAgY2xhc3M9XCJlcnJvclwiPnt7bGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KCdpZ28uZ2VvLmNhdGFsb2cuZXh0ZXJuYWxQcm92aWRlci51bmF2YWlsYWJsZVdpdGhFbWFpbCcsIHsgdmFsdWU6IGFkZGVkQ2F0YWxvZy51cmwsIGVtYWlsOiBlbWFpbEFkZHJlc3MgfSl9fTwvcD5cclxuICA8L3NwYW4+XHJcbiAgPHNwYW4gKm5nSWY9XCJlcnJvciAmJiBhZGRlZENhdGFsb2cgJiYgIWVtYWlsQWRkcmVzc1wiPlxyXG4gICAgPHAgY2xhc3M9XCJlcnJvclwiPnt7bGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KCdpZ28uZ2VvLmNhdGFsb2cudW5hdmFpbGFibGUnLCB7IHZhbHVlOiBhZGRlZENhdGFsb2cudXJsIH0pfX08L3A+XHJcbiAgPC9zcGFuPlxyXG48L2Rpdj5cclxuPGRpdiBtYXQtZGlhbG9nLWFjdGlvbnMgc3R5bGU9XCJqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlclwiPlxyXG4gIDxkaXYgY2xhc3M9XCJpZ28tZm9ybS1idXR0b24tZ3JvdXAgYWRkLWNhdGFsb2ctYnV0dG9uLXRvcC1wYWRkaW5nXCI+XHJcbiAgICA8YnV0dG9uXHJcbiAgICAgIG1hdC1yYWlzZWQtYnV0dG9uXHJcbiAgICAgIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAoY2xpY2spPVwiY2FuY2VsKClcIj5cclxuICAgICAge3snaWdvLmdlby5jYXRhbG9nLmxpYnJhcnkuY2FuY2VsJyB8IHRyYW5zbGF0ZX19XHJcbiAgICA8L2J1dHRvbj5cclxuICAgIDxidXR0b25cclxuICAgICAgaWQ9XCJhZGRDYXRhbG9nQnRuRGlhbG9nXCJcclxuICAgICAgbWF0LXJhaXNlZC1idXR0b25cclxuICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgIGNvbG9yPVwicHJpbWFyeVwiXHJcbiAgICAgIFtkaXNhYmxlZF09XCIhZm9ybS52YWxpZFwiXHJcbiAgICAgIChjbGljayk9XCJhZGRDYXRhbG9nKGZvcm0udmFsdWUpXCI+XHJcbiAgICAgIHt7J2lnby5nZW8uY2F0YWxvZy5saWJyYXJ5LmFkZCcgfCB0cmFuc2xhdGV9fVxyXG4gICAgPC9idXR0b24+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
|