@igo2/geo 1.10.0 → 1.12.0
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/assets/icons/cross_black_18px.svg +88 -88
- package/assets/icons/place_blue_36px.svg +55 -55
- package/assets/icons/place_green_36px.svg +55 -55
- package/assets/icons/place_red_36px.svg +55 -55
- package/assets/icons/place_yellow_36px.svg +55 -55
- package/bundles/igo2-geo.umd.js +4971 -1353
- package/bundles/igo2-geo.umd.js.map +1 -1
- package/esm2015/lib/catalog/catalog-browser/catalog-browser-group.component.js +1 -1
- package/esm2015/lib/catalog/catalog-browser/catalog-browser-layer.component.js +1 -1
- package/esm2015/lib/catalog/catalog-browser/catalog-browser.component.js +2 -2
- package/esm2015/lib/catalog/catalog-browser/catalog-browser.module.js +1 -1
- package/esm2015/lib/catalog/catalog-library/add-catalog-dialog.component.js +1 -1
- package/esm2015/lib/catalog/catalog-library/catalog-library-item.component.js +1 -1
- package/esm2015/lib/catalog/catalog-library/catalog-library.component.js +6 -6
- package/esm2015/lib/catalog/catalog-library/catalog-library.module.js +1 -1
- package/esm2015/lib/catalog/catalog.module.js +1 -1
- package/esm2015/lib/catalog/index.js +1 -1
- package/esm2015/lib/catalog/shared/catalog.abstract.js +1 -1
- package/esm2015/lib/catalog/shared/catalog.enum.js +1 -1
- package/esm2015/lib/catalog/shared/catalog.interface.js +1 -1
- package/esm2015/lib/catalog/shared/catalog.service.js +117 -43
- package/esm2015/lib/catalog/shared/index.js +1 -1
- package/esm2015/lib/datasource/datasource.module.js +1 -1
- package/esm2015/lib/datasource/index.js +1 -1
- package/esm2015/lib/datasource/shared/capabilities.service.js +25 -11
- package/esm2015/lib/datasource/shared/datasource.service.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/any-datasource.interface.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/any-datasource.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/arcgisrest-datasource.interface.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/arcgisrest-datasource.js +84 -14
- package/esm2015/lib/datasource/shared/datasources/carto-datasource.interface.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/carto-datasource.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/cluster-datasource.interface.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/cluster-datasource.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/data.service.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/datasource.interface.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/datasource.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/feature-datasource.interface.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/feature-datasource.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/imagearcgisrest-datasource.js +7 -10
- package/esm2015/lib/datasource/shared/datasources/index.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/mvt-datasource.interface.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/mvt-datasource.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/osm-datasource.interface.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/osm-datasource.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/tilearcgisrest-datasource.js +7 -9
- package/esm2015/lib/datasource/shared/datasources/tiledebug-datasource.interface.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/tiledebug-datasource.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/websocket-datasource.interface.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/websocket-datasource.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/wfs-datasource.interface.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/wfs-datasource.js +6 -1
- package/esm2015/lib/datasource/shared/datasources/wfs.service.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/wms-datasource.interface.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/wms-datasource.js +11 -2
- package/esm2015/lib/datasource/shared/datasources/wms-wfs.utils.js +5 -2
- package/esm2015/lib/datasource/shared/datasources/wmts-datasource.interface.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/wmts-datasource.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/xyz-datasource.interface.js +1 -1
- package/esm2015/lib/datasource/shared/datasources/xyz-datasource.js +1 -1
- package/esm2015/lib/datasource/shared/index.js +1 -1
- package/esm2015/lib/datasource/shared/options/index.js +1 -1
- package/esm2015/lib/datasource/shared/options/options-api.interface.js +1 -1
- package/esm2015/lib/datasource/shared/options/options-api.providers.js +1 -1
- package/esm2015/lib/datasource/shared/options/options-api.service.js +1 -1
- package/esm2015/lib/datasource/shared/options/options.service.js +1 -1
- package/esm2015/lib/datasource/utils/esri-style-generator.js +1 -1
- package/esm2015/lib/datasource/utils/index.js +1 -1
- package/esm2015/lib/datasource/utils/tilegrid.js +1 -1
- package/esm2015/lib/directions/directions-buttons/directions-buttons.component.js +10 -4
- package/esm2015/lib/directions/directions-buttons/index.js +1 -1
- package/esm2015/lib/directions/directions-inputs/directions-inputs.component.js +1 -1
- package/esm2015/lib/directions/directions-inputs/index.js +1 -1
- package/esm2015/lib/directions/directions-results/directions-results.component.js +1 -1
- package/esm2015/lib/directions/directions-results/index.js +1 -1
- package/esm2015/lib/directions/directions-sources/directions-source.interface.js +1 -1
- package/esm2015/lib/directions/directions-sources/directions-source.js +1 -1
- package/esm2015/lib/directions/directions-sources/directions-source.provider.js +1 -1
- package/esm2015/lib/directions/directions-sources/index.js +1 -1
- package/esm2015/lib/directions/directions-sources/osrm-directions-source.js +1 -1
- package/esm2015/lib/directions/directions.component.js +6 -4
- package/esm2015/lib/directions/directions.module.js +1 -1
- package/esm2015/lib/directions/index.js +1 -1
- package/esm2015/lib/directions/shared/directions-source.service.js +1 -1
- package/esm2015/lib/directions/shared/directions.enum.js +1 -1
- package/esm2015/lib/directions/shared/directions.interface.js +1 -1
- package/esm2015/lib/directions/shared/directions.service.js +1 -1
- package/esm2015/lib/directions/shared/directions.utils.js +4 -1
- package/esm2015/lib/directions/shared/index.js +1 -1
- package/esm2015/lib/directions/shared/store.js +1 -1
- package/esm2015/lib/download/download-button/download-button.component.js +1 -1
- package/esm2015/lib/download/download-button/index.js +1 -1
- package/esm2015/lib/download/download.module.js +1 -1
- package/esm2015/lib/download/index.js +1 -1
- package/esm2015/lib/download/shared/download.interface.js +1 -1
- package/esm2015/lib/download/shared/download.service.js +1 -1
- package/esm2015/lib/download/shared/index.js +1 -1
- package/esm2015/lib/draw/draw/draw-popup.component.js +21 -15
- package/esm2015/lib/draw/draw/draw-shorcuts.component.js +1 -1
- package/esm2015/lib/draw/draw/draw.component.js +186 -77
- package/esm2015/lib/draw/draw/draw.module.js +1 -1
- package/esm2015/lib/draw/drawingTool.module.js +1 -1
- package/esm2015/lib/draw/index.js +1 -1
- package/esm2015/lib/draw/shared/draw-icon.service.js +1 -1
- package/esm2015/lib/draw/shared/draw-style.service.js +24 -5
- package/esm2015/lib/draw/shared/draw.enum.js +17 -1
- package/esm2015/lib/draw/shared/draw.interface.js +1 -1
- package/esm2015/lib/draw/shared/draw.utils.js +1 -1
- package/esm2015/lib/draw/shared/index.js +1 -1
- package/esm2015/lib/feature/feature-details/feature-details.component.js +119 -43
- package/esm2015/lib/feature/feature-details/feature-details.directive.js +2 -57
- package/esm2015/lib/feature/feature-details/feature-details.module.js +1 -1
- package/esm2015/lib/feature/feature-form/feature-form.component.js +1 -1
- package/esm2015/lib/feature/feature-form/feature-form.module.js +1 -1
- package/esm2015/lib/feature/feature.module.js +1 -1
- package/esm2015/lib/feature/index.js +1 -1
- package/esm2015/lib/feature/shared/feature.enums.js +1 -1
- package/esm2015/lib/feature/shared/feature.interfaces.js +1 -1
- package/esm2015/lib/feature/shared/feature.utils.js +2 -1
- package/esm2015/lib/feature/shared/index.js +1 -1
- package/esm2015/lib/feature/shared/store.js +1 -1
- package/esm2015/lib/feature/shared/strategies/in-map-extent.js +17 -4
- package/esm2015/lib/feature/shared/strategies/in-map-resolution.js +1 -1
- package/esm2015/lib/feature/shared/strategies/index.js +1 -1
- package/esm2015/lib/feature/shared/strategies/loading-layer.js +1 -1
- package/esm2015/lib/feature/shared/strategies/loading.js +1 -1
- package/esm2015/lib/feature/shared/strategies/selection.js +1 -1
- package/esm2015/lib/feature/shared/strategies.utils.js +1 -1
- package/esm2015/lib/filter/filter.module.js +7 -4
- package/esm2015/lib/filter/index.js +1 -1
- package/esm2015/lib/filter/ogc-filter-button/index.js +1 -1
- package/esm2015/lib/filter/ogc-filter-button/ogc-filter-button.component.js +46 -7
- package/esm2015/lib/filter/ogc-filter-form/index.js +1 -1
- package/esm2015/lib/filter/ogc-filter-form/ogc-filter-form.component.js +1 -1
- package/esm2015/lib/filter/ogc-filter-selection/index.js +1 -1
- package/esm2015/lib/filter/ogc-filter-selection/ogc-filter-selection.component.js +676 -296
- package/esm2015/lib/filter/ogc-filter-time/index.js +1 -1
- package/esm2015/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.js +1 -1
- package/esm2015/lib/filter/ogc-filter-time/ogc-filter-time.component.js +296 -161
- package/esm2015/lib/filter/ogc-filterable-form/index.js +1 -1
- package/esm2015/lib/filter/ogc-filterable-form/ogc-filterable-form.component.js +1 -1
- package/esm2015/lib/filter/ogc-filterable-item/index.js +1 -1
- package/esm2015/lib/filter/ogc-filterable-item/ogc-filterable-item.component.js +3 -2
- package/esm2015/lib/filter/ogc-filterable-list/index.js +1 -1
- package/esm2015/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.js +1 -1
- package/esm2015/lib/filter/ogc-filterable-list/ogc-filterable-list.component.js +1 -1
- package/esm2015/lib/filter/shared/filterable-datasource.pipe.js +3 -2
- package/esm2015/lib/filter/shared/index.js +1 -1
- package/esm2015/lib/filter/shared/ogc-filter-time.service.js +1 -1
- package/esm2015/lib/filter/shared/ogc-filter.enum.js +1 -1
- package/esm2015/lib/filter/shared/ogc-filter.interface.js +1 -1
- package/esm2015/lib/filter/shared/ogc-filter.js +24 -6
- package/esm2015/lib/filter/shared/ogc-filter.service.js +1 -1
- package/esm2015/lib/filter/shared/spatial-filter.enum.js +1 -1
- package/esm2015/lib/filter/shared/spatial-filter.interface.js +1 -1
- package/esm2015/lib/filter/shared/spatial-filter.service.js +1 -1
- package/esm2015/lib/filter/shared/time-filter.enum.js +1 -1
- package/esm2015/lib/filter/shared/time-filter.interface.js +1 -1
- package/esm2015/lib/filter/shared/time-filter.service.js +1 -1
- package/esm2015/lib/filter/spatial-filter/spatial-filter-item/index.js +1 -1
- package/esm2015/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.js +1 -1
- package/esm2015/lib/filter/spatial-filter/spatial-filter-list/index.js +1 -1
- package/esm2015/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.js +1 -1
- package/esm2015/lib/filter/spatial-filter/spatial-filter-type/index.js +1 -1
- package/esm2015/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.js +1 -1
- package/esm2015/lib/filter/time-filter-button/index.js +1 -1
- package/esm2015/lib/filter/time-filter-button/time-filter-button.component.js +1 -1
- package/esm2015/lib/filter/time-filter-form/index.js +1 -1
- package/esm2015/lib/filter/time-filter-form/time-filter-form.component.js +1 -1
- package/esm2015/lib/filter/time-filter-item/index.js +1 -1
- package/esm2015/lib/filter/time-filter-item/time-filter-item.component.js +1 -1
- package/esm2015/lib/filter/time-filter-list/index.js +1 -1
- package/esm2015/lib/filter/time-filter-list/time-filter-list-binding.directive.js +1 -1
- package/esm2015/lib/filter/time-filter-list/time-filter-list.component.js +1 -1
- package/esm2015/lib/geo.module.js +1 -1
- package/esm2015/lib/geometry/geometry-form-field/geometry-form-field-input.component.js +1 -1
- package/esm2015/lib/geometry/geometry-form-field/geometry-form-field.component.js +1 -1
- package/esm2015/lib/geometry/geometry-form-field/geometry-form-field.module.js +1 -1
- package/esm2015/lib/geometry/geometry.module.js +1 -1
- package/esm2015/lib/geometry/index.js +1 -1
- package/esm2015/lib/geometry/shared/controls/draw.js +7 -2
- package/esm2015/lib/geometry/shared/controls/index.js +1 -1
- package/esm2015/lib/geometry/shared/controls/modify.js +1 -1
- package/esm2015/lib/geometry/shared/controls/slice.js +1 -1
- package/esm2015/lib/geometry/shared/geometry.errors.js +1 -1
- package/esm2015/lib/geometry/shared/geometry.interfaces.js +1 -1
- package/esm2015/lib/geometry/shared/geometry.utils.js +1 -1
- package/esm2015/lib/geometry/shared/index.js +1 -1
- package/esm2015/lib/import-export/export-button/export-button.component.js +1 -1
- package/esm2015/lib/import-export/export-button/index.js +1 -1
- package/esm2015/lib/import-export/import-export/import-export.component.js +60 -11
- package/esm2015/lib/import-export/import-export/index.js +1 -1
- package/esm2015/lib/import-export/import-export.module.js +1 -1
- package/esm2015/lib/import-export/index.js +1 -1
- package/esm2015/lib/import-export/shared/drop-geo-file.directive.js +1 -1
- package/esm2015/lib/import-export/shared/export.errors.js +1 -1
- package/esm2015/lib/import-export/shared/export.interface.js +1 -1
- package/esm2015/lib/import-export/shared/export.service.js +10 -2
- package/esm2015/lib/import-export/shared/export.type.js +1 -1
- package/esm2015/lib/import-export/shared/export.utils.js +1 -1
- package/esm2015/lib/import-export/shared/import.errors.js +1 -1
- package/esm2015/lib/import-export/shared/import.interface.js +1 -1
- package/esm2015/lib/import-export/shared/import.service.js +1 -1
- package/esm2015/lib/import-export/shared/import.utils.js +65 -38
- package/esm2015/lib/import-export/shared/index.js +1 -1
- package/esm2015/lib/import-export/style-list/index.js +1 -1
- package/esm2015/lib/import-export/style-list/style-list.interface.js +1 -1
- package/esm2015/lib/import-export/style-list/style-list.module.js +1 -1
- package/esm2015/lib/import-export/style-list/style-list.provider.js +1 -1
- package/esm2015/lib/import-export/style-list/style-list.service.js +1 -1
- package/esm2015/lib/layer/index.js +1 -1
- package/esm2015/lib/layer/layer-item/index.js +1 -1
- package/esm2015/lib/layer/layer-item/layer-item.component.js +15 -8
- package/esm2015/lib/layer/layer-legend/index.js +1 -1
- package/esm2015/lib/layer/layer-legend/layer-legend.component.js +24 -24
- package/esm2015/lib/layer/layer-legend-item/index.js +1 -1
- package/esm2015/lib/layer/layer-legend-item/layer-legend-item.component.js +1 -1
- package/esm2015/lib/layer/layer-legend-list/index.js +1 -1
- package/esm2015/lib/layer/layer-legend-list/layer-legend-list-binding.directive.js +1 -1
- package/esm2015/lib/layer/layer-legend-list/layer-legend-list.component.js +1 -1
- package/esm2015/lib/layer/layer-list/index.js +1 -1
- package/esm2015/lib/layer/layer-list/layer-list-binding.directive.js +1 -1
- package/esm2015/lib/layer/layer-list/layer-list.component.js +2 -2
- package/esm2015/lib/layer/layer-list/layer-list.enum.js +1 -1
- package/esm2015/lib/layer/layer-list-tool/index.js +1 -1
- package/esm2015/lib/layer/layer-list-tool/layer-list-tool.component.js +1 -1
- package/esm2015/lib/layer/layer-list-tool/layer-list-tool.enum.js +1 -1
- package/esm2015/lib/layer/layer-list-tool/layer-list-tool.interface.js +1 -1
- package/esm2015/lib/layer/layer-list-tool/layer-list-tool.service.js +1 -1
- package/esm2015/lib/layer/layer.module.js +1 -1
- package/esm2015/lib/layer/shared/clusterParam.js +1 -1
- package/esm2015/lib/layer/shared/index.js +1 -1
- package/esm2015/lib/layer/shared/layer.enums.js +1 -1
- package/esm2015/lib/layer/shared/layer.service.js +44 -20
- package/esm2015/lib/layer/shared/layers/any-layer.interface.js +1 -1
- package/esm2015/lib/layer/shared/layers/any-layer.js +1 -1
- package/esm2015/lib/layer/shared/layers/image-layer.interface.js +1 -1
- package/esm2015/lib/layer/shared/layers/image-layer.js +1 -1
- package/esm2015/lib/layer/shared/layers/index.js +1 -1
- package/esm2015/lib/layer/shared/layers/layer.interface.js +1 -1
- package/esm2015/lib/layer/shared/layers/layer.js +9 -1
- package/esm2015/lib/layer/shared/layers/tile-layer.interface.js +1 -1
- package/esm2015/lib/layer/shared/layers/tile-layer.js +1 -1
- package/esm2015/lib/layer/shared/layers/vector-layer.interface.js +1 -1
- package/esm2015/lib/layer/shared/layers/vector-layer.js +106 -47
- package/esm2015/lib/layer/shared/layers/vectortile-layer.interface.js +1 -1
- package/esm2015/lib/layer/shared/layers/vectortile-layer.js +1 -1
- package/esm2015/lib/layer/shared/style.service.js +80 -11
- package/esm2015/lib/layer/shared/vector-style.interface.js +1 -1
- package/esm2015/lib/layer/track-feature-button/index.js +1 -1
- package/esm2015/lib/layer/track-feature-button/track-feature-button.component.js +1 -1
- package/esm2015/lib/layer/utils/image-watcher.js +1 -1
- package/esm2015/lib/layer/utils/index.js +1 -1
- package/esm2015/lib/layer/utils/layer.utils.js +1 -1
- package/esm2015/lib/layer/utils/layerSync-watcher.js +3 -3
- package/esm2015/lib/layer/utils/outputLegend.js +5 -3
- package/esm2015/lib/layer/utils/tile-watcher.js +1 -1
- package/esm2015/lib/layer/utils/vector-watcher.js +1 -1
- package/esm2015/lib/map/baselayers-switcher/baselayers-switcher.animation.js +1 -1
- package/esm2015/lib/map/baselayers-switcher/baselayers-switcher.component.js +1 -1
- package/esm2015/lib/map/baselayers-switcher/index.js +1 -1
- package/esm2015/lib/map/baselayers-switcher/mini-basemap.component.js +1 -1
- package/esm2015/lib/map/geolocate-button/geolocate-button.component.js +52 -17
- package/esm2015/lib/map/geolocate-button/index.js +1 -1
- package/esm2015/lib/map/home-extent-button/home-extent-button.component.js +69 -0
- package/esm2015/lib/map/home-extent-button/index.js +2 -0
- package/esm2015/lib/map/index.js +4 -1
- package/esm2015/lib/map/info-section/index.js +2 -0
- package/esm2015/lib/map/info-section/info-section.component.js +36 -0
- package/esm2015/lib/map/map-browser/index.js +1 -1
- package/esm2015/lib/map/map-browser/map-browser.component.js +2 -2
- package/esm2015/lib/map/map-center/index.js +1 -1
- package/esm2015/lib/map/map-center/map-center.component.js +2 -2
- package/esm2015/lib/map/map.module.js +16 -1
- package/esm2015/lib/map/menu-button/index.js +1 -1
- package/esm2015/lib/map/menu-button/menu-button.component.js +1 -1
- package/esm2015/lib/map/offline-button/index.js +1 -1
- package/esm2015/lib/map/offline-button/offline-button.component.js +1 -1
- package/esm2015/lib/map/rotation-button/index.js +1 -1
- package/esm2015/lib/map/rotation-button/rotation-button.component.js +1 -1
- package/esm2015/lib/map/shared/controllers/controller.js +1 -1
- package/esm2015/lib/map/shared/controllers/geolocation.js +295 -0
- package/esm2015/lib/map/shared/controllers/index.js +2 -1
- package/esm2015/lib/map/shared/controllers/view.js +17 -1
- package/esm2015/lib/map/shared/hover-feature.directive.js +9 -7
- package/esm2015/lib/map/shared/index.js +1 -1
- package/esm2015/lib/map/shared/map-pointer-position.directive.js +1 -1
- package/esm2015/lib/map/shared/map.enums.js +1 -1
- package/esm2015/lib/map/shared/map.interface.js +1 -1
- package/esm2015/lib/map/shared/map.js +14 -135
- package/esm2015/lib/map/shared/map.service.js +1 -1
- package/esm2015/lib/map/shared/map.utils.js +1 -1
- package/esm2015/lib/map/shared/mapOffline.directive.js +17 -6
- package/esm2015/lib/map/shared/projection.interfaces.js +1 -1
- package/esm2015/lib/map/shared/projection.service.js +1 -1
- package/esm2015/lib/map/shared/projection.utils.js +1 -1
- package/esm2015/lib/map/swipe-control/index.js +1 -1
- package/esm2015/lib/map/swipe-control/swipe-control.component.js +1 -1
- package/esm2015/lib/map/utils/layer-watcher.js +1 -1
- package/esm2015/lib/map/wake-lock-button/index.js +2 -0
- package/esm2015/lib/map/wake-lock-button/wake-lock-button.component.js +122 -0
- package/esm2015/lib/map/zoom-button/index.js +1 -1
- package/esm2015/lib/map/zoom-button/zoom-button.component.js +1 -1
- package/esm2015/lib/measure/index.js +1 -1
- package/esm2015/lib/measure/measure.module.js +1 -1
- package/esm2015/lib/measure/measurer/measure-format.pipe.js +1 -1
- package/esm2015/lib/measure/measurer/measurer-dialog.component.js +1 -1
- package/esm2015/lib/measure/measurer/measurer-item.component.js +1 -1
- package/esm2015/lib/measure/measurer/measurer.component.js +7 -1
- package/esm2015/lib/measure/measurer/measurer.module.js +1 -1
- package/esm2015/lib/measure/shared/index.js +1 -1
- package/esm2015/lib/measure/shared/measure.enum.js +1 -1
- package/esm2015/lib/measure/shared/measure.interfaces.js +1 -1
- package/esm2015/lib/measure/shared/measure.utils.js +1 -1
- package/esm2015/lib/metadata/index.js +1 -1
- package/esm2015/lib/metadata/metadata-button/index.js +1 -1
- package/esm2015/lib/metadata/metadata-button/metadata-button.component.js +1 -1
- package/esm2015/lib/metadata/metadata.module.js +1 -1
- package/esm2015/lib/metadata/shared/index.js +1 -1
- package/esm2015/lib/metadata/shared/metadata.interface.js +1 -1
- package/esm2015/lib/metadata/shared/metadata.service.js +1 -1
- package/esm2015/lib/offline/geoDB/geoDB.enums.js +6 -0
- package/esm2015/lib/offline/geoDB/geoDB.interface.js +2 -0
- package/esm2015/lib/offline/geoDB/geoDB.service.js +161 -0
- package/esm2015/lib/offline/geoDB/index.js +4 -0
- package/esm2015/lib/offline/index.js +3 -0
- package/esm2015/lib/offline/shared/geo-network.service.js +66 -0
- package/esm2015/lib/offline/shared/index.js +2 -0
- package/esm2015/lib/overlay/index.js +1 -1
- package/esm2015/lib/overlay/overlay.module.js +1 -1
- package/esm2015/lib/overlay/shared/index.js +1 -1
- package/esm2015/lib/overlay/shared/overlay-marker-style.utils.js +1 -1
- package/esm2015/lib/overlay/shared/overlay.directive.js +1 -1
- package/esm2015/lib/overlay/shared/overlay.enum.js +1 -1
- package/esm2015/lib/overlay/shared/overlay.js +1 -1
- package/esm2015/lib/overlay/shared/overlay.service.js +1 -1
- package/esm2015/lib/overlay/shared/overlay.utils.js +3 -3
- package/esm2015/lib/print/index.js +1 -1
- package/esm2015/lib/print/print/print.component.js +1 -1
- package/esm2015/lib/print/print-form/index.js +1 -1
- package/esm2015/lib/print/print-form/print-form.component.js +1 -1
- package/esm2015/lib/print/print.module.js +1 -1
- package/esm2015/lib/print/shared/index.js +1 -1
- package/esm2015/lib/print/shared/print.interface.js +1 -1
- package/esm2015/lib/print/shared/print.service.js +22 -16
- package/esm2015/lib/print/shared/print.type.js +1 -1
- package/esm2015/lib/query/index.js +1 -1
- package/esm2015/lib/query/query.module.js +5 -4
- package/esm2015/lib/query/shared/index.js +1 -1
- package/esm2015/lib/query/shared/query-search-source.js +1 -1
- package/esm2015/lib/query/shared/query-search-source.providers.js +1 -1
- package/esm2015/lib/query/shared/query.directive.js +4 -1
- package/esm2015/lib/query/shared/query.enums.js +1 -1
- package/esm2015/lib/query/shared/query.interfaces.js +1 -1
- package/esm2015/lib/query/shared/query.service.js +67 -18
- package/esm2015/lib/query/shared/query.utils.js +1 -1
- package/esm2015/lib/search/index.js +1 -1
- package/esm2015/lib/search/search-bar/search-bar.component.js +4 -2
- package/esm2015/lib/search/search-bar/search-bar.module.js +1 -1
- package/esm2015/lib/search/search-bar/search-url-param.directive.js +1 -1
- package/esm2015/lib/search/search-results/search-results-add-button.component.js +7 -7
- package/esm2015/lib/search/search-results/search-results-item.component.js +1 -1
- package/esm2015/lib/search/search-results/search-results.component.js +1 -1
- package/esm2015/lib/search/search-results/search-results.module.js +1 -1
- package/esm2015/lib/search/search-selector/search-selector.component.js +1 -1
- package/esm2015/lib/search/search-selector/search-selector.module.js +1 -1
- package/esm2015/lib/search/search-settings/search-settings.component.js +1 -1
- package/esm2015/lib/search/search-settings/search-settings.module.js +1 -1
- package/esm2015/lib/search/search.module.js +1 -1
- package/esm2015/lib/search/shared/index.js +1 -1
- package/esm2015/lib/search/shared/search-pointer-summary.directive.js +2 -1
- package/esm2015/lib/search/shared/search-source-service.providers.js +1 -1
- package/esm2015/lib/search/shared/search-source.service.js +1 -1
- package/esm2015/lib/search/shared/search.enums.js +1 -1
- package/esm2015/lib/search/shared/search.interfaces.js +1 -1
- package/esm2015/lib/search/shared/search.service.js +1 -1
- package/esm2015/lib/search/shared/search.utils.js +1 -1
- package/esm2015/lib/search/shared/sources/cadastre.js +1 -1
- package/esm2015/lib/search/shared/sources/cadastre.providers.js +1 -1
- package/esm2015/lib/search/shared/sources/coordinates.interfaces.js +1 -1
- package/esm2015/lib/search/shared/sources/coordinates.js +1 -1
- package/esm2015/lib/search/shared/sources/coordinates.providers.js +1 -1
- package/esm2015/lib/search/shared/sources/icherche.interfaces.js +1 -1
- package/esm2015/lib/search/shared/sources/icherche.js +1 -1
- package/esm2015/lib/search/shared/sources/icherche.providers.js +1 -1
- package/esm2015/lib/search/shared/sources/ilayer.interfaces.js +1 -1
- package/esm2015/lib/search/shared/sources/ilayer.js +1 -1
- package/esm2015/lib/search/shared/sources/ilayer.providers.js +1 -1
- package/esm2015/lib/search/shared/sources/index.js +1 -1
- package/esm2015/lib/search/shared/sources/nominatim.interfaces.js +1 -1
- package/esm2015/lib/search/shared/sources/nominatim.js +2 -2
- package/esm2015/lib/search/shared/sources/nominatim.providers.js +1 -1
- package/esm2015/lib/search/shared/sources/source.interfaces.js +1 -1
- package/esm2015/lib/search/shared/sources/source.js +3 -3
- package/esm2015/lib/search/shared/sources/storedqueries.interfaces.js +1 -1
- package/esm2015/lib/search/shared/sources/storedqueries.js +2 -2
- package/esm2015/lib/search/shared/sources/storedqueries.providers.js +1 -1
- package/esm2015/lib/toast/index.js +1 -1
- package/esm2015/lib/toast/toast.component.js +1 -1
- package/esm2015/lib/toast/toast.module.js +1 -1
- package/esm2015/lib/utils/commonVectorStyle.interface.js +1 -1
- package/esm2015/lib/utils/commonVectorStyle.js +1 -1
- package/esm2015/lib/utils/googleLinks.js +1 -1
- package/esm2015/lib/utils/id-generator.js +1 -1
- package/esm2015/lib/utils/index.js +1 -1
- package/esm2015/lib/utils/osmLinks.js +1 -1
- package/esm2015/lib/wkt/index.js +1 -1
- package/esm2015/lib/wkt/shared/index.js +1 -1
- package/esm2015/lib/wkt/shared/wkt.service.js +15 -15
- package/esm2015/lib/wkt/wkt.module.js +1 -1
- package/esm2015/lib/workspace/confirmation-popup/confirmation-popup.component.js +56 -0
- package/esm2015/lib/workspace/confirmation-popup/confirmation-popup.module.js +38 -0
- package/esm2015/lib/workspace/confirmation-popup/index.js +3 -0
- package/esm2015/lib/workspace/index.js +2 -1
- package/esm2015/lib/workspace/shared/edition-workspace.js +279 -0
- package/esm2015/lib/workspace/shared/edition-workspace.service.js +646 -0
- package/esm2015/lib/workspace/shared/feature-workspace.js +18 -1
- package/esm2015/lib/workspace/shared/feature-workspace.service.js +36 -10
- package/esm2015/lib/workspace/shared/index.js +3 -1
- package/esm2015/lib/workspace/shared/wfs-workspace.js +18 -1
- package/esm2015/lib/workspace/shared/wfs-workspace.service.js +36 -9
- package/esm2015/lib/workspace/shared/wms-workspace.service.js +87 -19
- package/esm2015/lib/workspace/shared/workspace.utils.js +1 -1
- package/esm2015/lib/workspace/widgets/index.js +1 -1
- package/esm2015/lib/workspace/widgets/ogc-filter/ogc-filter.component.js +1 -1
- package/esm2015/lib/workspace/widgets/ogc-filter/ogc-filter.module.js +1 -1
- package/esm2015/lib/workspace/widgets/widgets.js +1 -1
- package/esm2015/lib/workspace/workspace-selector/workspace-selector.directive.js +40 -10
- package/esm2015/lib/workspace/workspace-selector/workspace-selector.module.js +1 -1
- package/esm2015/lib/workspace/workspace-updator/workspace-updator.directive.js +22 -8
- package/esm2015/lib/workspace/workspace-updator/workspace-updator.module.js +1 -1
- package/esm2015/lib/workspace/workspace.module.js +19 -7
- package/esm2015/public_api.js +2 -1
- package/fesm2015/igo2-geo.js +4487 -1380
- package/fesm2015/igo2-geo.js.map +1 -1
- package/lib/catalog/shared/catalog.interface.d.ts +9 -1
- package/lib/catalog/shared/catalog.service.d.ts +1 -0
- package/lib/datasource/shared/datasources/arcgisrest-datasource.d.ts +2 -0
- package/lib/datasource/shared/datasources/datasource.interface.d.ts +50 -0
- package/lib/datasource/shared/datasources/wfs-datasource.d.ts +1 -0
- package/lib/datasource/shared/datasources/wms-wfs.utils.d.ts +1 -1
- package/lib/directions/directions-buttons/directions-buttons.component.d.ts +2 -1
- package/lib/directions/directions.component.d.ts +2 -1
- package/lib/draw/draw/draw-popup.component.d.ts +4 -2
- package/lib/draw/draw/draw.component.d.ts +19 -2
- package/lib/draw/shared/draw-style.service.d.ts +6 -0
- package/lib/draw/shared/draw.enum.d.ts +15 -0
- package/lib/feature/feature-details/feature-details.component.d.ts +12 -2
- package/lib/feature/feature-details/feature-details.directive.d.ts +2 -13
- package/lib/filter/filter.module.d.ts +1 -1
- package/lib/filter/ogc-filter-selection/ogc-filter-selection.component.d.ts +31 -13
- package/lib/filter/ogc-filter-time/ogc-filter-time.component.d.ts +6 -0
- package/lib/filter/shared/ogc-filter.interface.d.ts +20 -2
- package/lib/geometry/shared/controls/draw.d.ts +8 -4
- package/lib/geometry/shared/controls/modify.d.ts +3 -4
- package/lib/geometry/shared/controls/slice.d.ts +3 -4
- package/lib/import-export/shared/import.utils.d.ts +1 -1
- package/lib/layer/layer-item/layer-item.component.d.ts +1 -0
- package/lib/layer/layer-legend/layer-legend.component.d.ts +3 -2
- package/lib/layer/shared/layer.service.d.ts +6 -3
- package/lib/layer/shared/layers/layer.d.ts +6 -0
- package/lib/layer/shared/layers/layer.interface.d.ts +9 -0
- package/lib/layer/shared/layers/vector-layer.d.ts +7 -2
- package/lib/layer/shared/style.service.d.ts +38 -3
- package/lib/layer/shared/vector-style.interface.d.ts +11 -0
- package/lib/map/geolocate-button/geolocate-button.component.d.ts +8 -1
- package/lib/map/home-extent-button/home-extent-button.component.d.ts +20 -0
- package/lib/map/home-extent-button/index.d.ts +1 -0
- package/lib/map/index.d.ts +3 -0
- package/lib/map/info-section/index.d.ts +1 -0
- package/lib/map/info-section/info-section.component.d.ts +7 -0
- package/lib/map/map.module.d.ts +20 -17
- package/lib/map/shared/controllers/geolocation.d.ts +111 -0
- package/lib/map/shared/controllers/index.d.ts +1 -0
- package/lib/map/shared/controllers/view.d.ts +7 -0
- package/lib/map/shared/hover-feature.directive.d.ts +1 -1
- package/lib/map/shared/map.d.ts +6 -19
- package/lib/map/shared/map.interface.d.ts +0 -1
- package/lib/map/shared/mapOffline.directive.d.ts +1 -0
- package/lib/map/wake-lock-button/index.d.ts +1 -0
- package/lib/map/wake-lock-button/wake-lock-button.component.d.ts +30 -0
- package/lib/offline/geoDB/geoDB.enums.d.ts +4 -0
- package/lib/offline/geoDB/geoDB.interface.d.ts +9 -0
- package/lib/offline/geoDB/geoDB.service.d.ts +35 -0
- package/lib/offline/geoDB/index.d.ts +3 -0
- package/lib/offline/index.d.ts +2 -0
- package/lib/offline/shared/geo-network.service.d.ts +28 -0
- package/lib/offline/shared/index.d.ts +1 -0
- package/lib/print/shared/print.service.d.ts +3 -2
- package/lib/query/query.module.d.ts +2 -1
- package/lib/query/shared/query.interfaces.d.ts +1 -0
- package/lib/query/shared/query.service.d.ts +7 -1
- package/lib/workspace/confirmation-popup/confirmation-popup.component.d.ts +23 -0
- package/lib/workspace/confirmation-popup/confirmation-popup.module.d.ts +14 -0
- package/lib/workspace/confirmation-popup/index.d.ts +2 -0
- package/lib/workspace/index.d.ts +1 -0
- package/lib/workspace/shared/edition-workspace.d.ts +82 -0
- package/lib/workspace/shared/edition-workspace.service.d.ts +48 -0
- package/lib/workspace/shared/feature-workspace.d.ts +3 -0
- package/lib/workspace/shared/feature-workspace.service.d.ts +5 -2
- package/lib/workspace/shared/index.d.ts +2 -0
- package/lib/workspace/shared/wfs-workspace.d.ts +3 -0
- package/lib/workspace/shared/wfs-workspace.service.d.ts +5 -2
- package/lib/workspace/shared/wms-workspace.service.d.ts +7 -2
- package/lib/workspace/shared/workspace.utils.d.ts +3 -2
- package/lib/workspace/workspace-selector/workspace-selector.directive.d.ts +10 -3
- package/lib/workspace/workspace-updator/workspace-updator.directive.d.ts +3 -1
- package/lib/workspace/workspace.module.d.ts +8 -5
- package/ngcc.config.js +3 -3
- package/package.json +7 -5
- package/public_api.d.ts +1 -0
- package/style/geo.theming.scss +12 -11
|
@@ -16,5 +16,22 @@ export class FeatureWorkspace extends Workspace {
|
|
|
16
16
|
}
|
|
17
17
|
get layer() { return this.options.layer; }
|
|
18
18
|
get map() { return this.options.map; }
|
|
19
|
+
getLayerWksOptionTabQuery() {
|
|
20
|
+
var _a;
|
|
21
|
+
if (((_a = this.layer.options.workspace.queryOptions) === null || _a === void 0 ? void 0 : _a.tabQuery) !== undefined) {
|
|
22
|
+
return this.layer.options.workspace.queryOptions.tabQuery;
|
|
23
|
+
}
|
|
24
|
+
return true;
|
|
25
|
+
}
|
|
26
|
+
getLayerWksOptionMapQuery() {
|
|
27
|
+
var _a;
|
|
28
|
+
if (((_a = this.layer.options.workspace.queryOptions) === null || _a === void 0 ? void 0 : _a.mapQueryOnOpenTab) !== undefined) {
|
|
29
|
+
return this.layer.options.workspace.queryOptions.mapQueryOnOpenTab;
|
|
30
|
+
}
|
|
31
|
+
return true;
|
|
32
|
+
}
|
|
33
|
+
getInResolutionRange() {
|
|
34
|
+
return this.inResolutionRange$.value;
|
|
35
|
+
}
|
|
19
36
|
}
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS13b3Jrc3BhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi93b3Jrc3BhY2Uvc2hhcmVkL2ZlYXR1cmUtd29ya3NwYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVYsTUFBTSxjQUFjLENBQUM7QUFDdEIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQVV2QyxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsU0FBUztJQVE3QyxZQUFzQixPQUFnQztRQUNwRCxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFESyxZQUFPLEdBQVAsT0FBTyxDQUF5QjtRQU43Qyx1QkFBa0IsR0FBNkIsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7UUFRaEYsSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLGFBQWEsRUFBRSxFQUFFO1lBQzlELElBQUksYUFBYSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxJQUFJLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRTtnQkFDeEYsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNwQztpQkFBTTtnQkFDTCxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ3JDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBYkQsSUFBSSxLQUFLLEtBQWtCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBRXZELElBQUksR0FBRyxLQUFhLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBYXZDLHlCQUF5Qjs7UUFDOUIsSUFBSSxDQUFBLE1BQUEsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLFlBQVksMENBQUUsUUFBUSxNQUFLLFNBQVMsRUFBRTtZQUNyRSxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDO1NBQzNEO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU0seUJBQXlCOztRQUM5QixJQUFJLENBQUEsTUFBQSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsWUFBWSwwQ0FBRSxpQkFBaUIsTUFBSyxTQUFTLEVBQUU7WUFDOUUsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLGlCQUFpQixDQUFDO1NBQ3BFO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU8sb0JBQW9CO1FBQzFCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQztJQUN2QyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIFdvcmtzcGFjZSxcclxuICBXb3Jrc3BhY2VPcHRpb25zXHJcbn0gZnJvbSAnQGlnbzIvY29tbW9uJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgeyBWZWN0b3JMYXllciB9IGZyb20gJy4uLy4uL2xheWVyJztcclxuaW1wb3J0IHsgSWdvTWFwIH0gZnJvbSAnLi4vLi4vbWFwJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRmVhdHVyZVdvcmtzcGFjZU9wdGlvbnMgZXh0ZW5kcyBXb3Jrc3BhY2VPcHRpb25zIHtcclxuICBsYXllcjogVmVjdG9yTGF5ZXI7XHJcbiAgbWFwOiBJZ29NYXA7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBGZWF0dXJlV29ya3NwYWNlIGV4dGVuZHMgV29ya3NwYWNlIHtcclxuXHJcbiAgcmVhZG9ubHkgaW5SZXNvbHV0aW9uUmFuZ2UkOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHRydWUpO1xyXG5cclxuICBnZXQgbGF5ZXIoKTogVmVjdG9yTGF5ZXIgeyByZXR1cm4gdGhpcy5vcHRpb25zLmxheWVyOyB9XHJcblxyXG4gIGdldCBtYXAoKTogSWdvTWFwIHsgcmV0dXJuIHRoaXMub3B0aW9ucy5tYXA7IH1cclxuXHJcbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIG9wdGlvbnM6IEZlYXR1cmVXb3Jrc3BhY2VPcHRpb25zKSB7XHJcbiAgICBzdXBlcihvcHRpb25zKTtcclxuICAgIHRoaXMubWFwLnZpZXdDb250cm9sbGVyLnJlc29sdXRpb24kLnN1YnNjcmliZSgobWFwUmVzb2x1dGlvbikgPT4ge1xyXG4gICAgICBpZiAobWFwUmVzb2x1dGlvbiA+IHRoaXMubGF5ZXIubWluUmVzb2x1dGlvbiAmJiBtYXBSZXNvbHV0aW9uIDwgdGhpcy5sYXllci5tYXhSZXNvbHV0aW9uKSB7XHJcbiAgICAgICAgdGhpcy5pblJlc29sdXRpb25SYW5nZSQubmV4dCh0cnVlKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmluUmVzb2x1dGlvblJhbmdlJC5uZXh0KGZhbHNlKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0TGF5ZXJXa3NPcHRpb25UYWJRdWVyeSgpOiBib29sZWFuIHtcclxuICAgIGlmICh0aGlzLmxheWVyLm9wdGlvbnMud29ya3NwYWNlLnF1ZXJ5T3B0aW9ucz8udGFiUXVlcnkgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5sYXllci5vcHRpb25zLndvcmtzcGFjZS5xdWVyeU9wdGlvbnMudGFiUXVlcnk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRMYXllcldrc09wdGlvbk1hcFF1ZXJ5KCk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKHRoaXMubGF5ZXIub3B0aW9ucy53b3Jrc3BhY2UucXVlcnlPcHRpb25zPy5tYXBRdWVyeU9uT3BlblRhYiAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmxheWVyLm9wdGlvbnMud29ya3NwYWNlLnF1ZXJ5T3B0aW9ucy5tYXBRdWVyeU9uT3BlblRhYjtcclxuICAgIH1cclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRJblJlc29sdXRpb25SYW5nZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmluUmVzb2x1dGlvblJhbmdlJC52YWx1ZTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,29 +1,32 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
|
+
import { BehaviorSubject } from 'rxjs';
|
|
2
3
|
import { ActionStore, EntityStoreFilterCustomFuncStrategy, EntityStoreFilterSelectionStrategy, EntityTableColumnRenderer } from '@igo2/common';
|
|
3
4
|
import { FeatureStore, FeatureStoreLoadingLayerStrategy, FeatureStoreSelectionStrategy, FeatureStoreInMapExtentStrategy, FeatureMotion, FeatureStoreInMapResolutionStrategy } from '../../feature';
|
|
4
5
|
import { VectorLayer } from '../../layer';
|
|
5
6
|
import { FeatureDataSource } from '../../datasource';
|
|
7
|
+
import { getCommonVectorSelectedStyle } from '../../utils';
|
|
6
8
|
import { FeatureWorkspace } from './feature-workspace';
|
|
7
9
|
import { skipWhile, take } from 'rxjs/operators';
|
|
8
10
|
import * as i0 from "@angular/core";
|
|
9
11
|
import * as i1 from "@igo2/core";
|
|
10
12
|
export class FeatureWorkspaceService {
|
|
11
|
-
constructor(storageService) {
|
|
13
|
+
constructor(storageService, configService) {
|
|
12
14
|
this.storageService = storageService;
|
|
15
|
+
this.configService = configService;
|
|
16
|
+
this.ws$ = new BehaviorSubject(undefined);
|
|
13
17
|
}
|
|
14
18
|
get zoomAuto() {
|
|
15
19
|
return this.storageService.get('zoomAuto');
|
|
16
20
|
}
|
|
17
21
|
createWorkspace(layer, map) {
|
|
18
22
|
var _a;
|
|
19
|
-
if (((_a = layer.options.workspace) === null || _a === void 0 ? void 0 : _a.enabled) === false) {
|
|
23
|
+
if (((_a = layer.options.workspace) === null || _a === void 0 ? void 0 : _a.enabled) === false || layer.dataSource.options.edition) {
|
|
20
24
|
return;
|
|
21
25
|
}
|
|
22
|
-
layer.options.workspace = Object.assign({}, layer.options.workspace, { enabled: true });
|
|
23
26
|
layer.options.workspace = Object.assign({}, layer.options.workspace, {
|
|
24
|
-
enabled: true,
|
|
25
27
|
srcId: layer.id,
|
|
26
|
-
workspaceId: layer.id
|
|
28
|
+
workspaceId: layer.id,
|
|
29
|
+
enabled: true
|
|
27
30
|
});
|
|
28
31
|
const wks = new FeatureWorkspace({
|
|
29
32
|
id: layer.id,
|
|
@@ -46,11 +49,14 @@ export class FeatureWorkspaceService {
|
|
|
46
49
|
const inMapExtentStrategy = new FeatureStoreInMapExtentStrategy({});
|
|
47
50
|
const inMapResolutionStrategy = new FeatureStoreInMapResolutionStrategy({});
|
|
48
51
|
const selectedRecordStrategy = new EntityStoreFilterSelectionStrategy({});
|
|
52
|
+
const confQueryOverlayStyle = this.configService.getConfig('queryOverlayStyle');
|
|
49
53
|
const selectionStrategy = new FeatureStoreSelectionStrategy({
|
|
50
54
|
layer: new VectorLayer({
|
|
51
55
|
zIndex: 300,
|
|
52
56
|
source: new FeatureDataSource(),
|
|
53
|
-
style:
|
|
57
|
+
style: (feature) => {
|
|
58
|
+
return getCommonVectorSelectedStyle(Object.assign({}, { feature }, confQueryOverlayStyle.selection || {}));
|
|
59
|
+
},
|
|
54
60
|
showInLayerList: false,
|
|
55
61
|
exportable: false,
|
|
56
62
|
browsable: false
|
|
@@ -71,6 +77,7 @@ export class FeatureWorkspaceService {
|
|
|
71
77
|
}
|
|
72
78
|
createTableTemplate(workspace, layer) {
|
|
73
79
|
const fields = layer.dataSource.options.sourceFields || [];
|
|
80
|
+
const relations = layer.dataSource.options.relations || [];
|
|
74
81
|
if (fields.length === 0) {
|
|
75
82
|
workspace.entityStore.entities$.pipe(skipWhile(val => val.length === 0), take(1)).subscribe(entities => {
|
|
76
83
|
const ol = entities[0].ol;
|
|
@@ -98,9 +105,28 @@ export class FeatureWorkspaceService {
|
|
|
98
105
|
return {
|
|
99
106
|
name: `properties.${field.name}`,
|
|
100
107
|
title: field.alias ? field.alias : field.name,
|
|
101
|
-
renderer: EntityTableColumnRenderer.UnsanitizedHTML
|
|
108
|
+
renderer: EntityTableColumnRenderer.UnsanitizedHTML,
|
|
109
|
+
tooltip: field.tooltip
|
|
102
110
|
};
|
|
103
111
|
});
|
|
112
|
+
const relationsColumn = relations.map((relation) => {
|
|
113
|
+
return {
|
|
114
|
+
name: `properties.${relation.name}`,
|
|
115
|
+
title: relation.alias ? relation.alias : relation.name,
|
|
116
|
+
renderer: EntityTableColumnRenderer.Icon,
|
|
117
|
+
icon: relation.icon,
|
|
118
|
+
parent: relation.parent,
|
|
119
|
+
type: 'relation',
|
|
120
|
+
tooltip: relation.tooltip,
|
|
121
|
+
onClick: () => {
|
|
122
|
+
this.ws$.next(relation.title);
|
|
123
|
+
},
|
|
124
|
+
cellClassFunc: () => {
|
|
125
|
+
return { 'class_icon': true };
|
|
126
|
+
}
|
|
127
|
+
};
|
|
128
|
+
});
|
|
129
|
+
columns.push(...relationsColumn);
|
|
104
130
|
workspace.meta.tableTemplate = {
|
|
105
131
|
selection: true,
|
|
106
132
|
sort: true,
|
|
@@ -114,12 +140,12 @@ export class FeatureWorkspaceService {
|
|
|
114
140
|
return new EntityStoreFilterCustomFuncStrategy({ filterClauseFunc });
|
|
115
141
|
}
|
|
116
142
|
}
|
|
117
|
-
FeatureWorkspaceService.ɵfac = function FeatureWorkspaceService_Factory(t) { return new (t || FeatureWorkspaceService)(i0.ɵɵinject(i1.StorageService)); };
|
|
143
|
+
FeatureWorkspaceService.ɵfac = function FeatureWorkspaceService_Factory(t) { return new (t || FeatureWorkspaceService)(i0.ɵɵinject(i1.StorageService), i0.ɵɵinject(i1.ConfigService)); };
|
|
118
144
|
FeatureWorkspaceService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: FeatureWorkspaceService, factory: FeatureWorkspaceService.ɵfac, providedIn: 'root' });
|
|
119
145
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FeatureWorkspaceService, [{
|
|
120
146
|
type: Injectable,
|
|
121
147
|
args: [{
|
|
122
148
|
providedIn: 'root'
|
|
123
149
|
}]
|
|
124
|
-
}], function () { return [{ type: i1.StorageService }]; }, null); })();
|
|
125
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS13b3Jrc3BhY2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3dvcmtzcGFjZS9zaGFyZWQvZmVhdHVyZS13b3Jrc3BhY2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFDTCxXQUFXLEVBRVgsbUNBQW1DLEVBR25DLGtDQUFrQyxFQUNsQyx5QkFBeUIsRUFDMUIsTUFBTSxjQUFjLENBQUM7QUFFdEIsT0FBTyxFQUNMLFlBQVksRUFDWixnQ0FBZ0MsRUFDaEMsNkJBQTZCLEVBQzdCLCtCQUErQixFQUUvQixhQUFhLEVBQ2IsbUNBQW1DLEVBQ3BDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFHMUMsT0FBTyxFQUE2QixpQkFBaUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRWhGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQVNqRCxNQUFNLE9BQU8sdUJBQXVCO0lBT2xDLFlBQW9CLGNBQThCO1FBQTlCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtJQUFHLENBQUM7SUFKdEQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQVksQ0FBQztJQUN4RCxDQUFDO0lBSUQsZUFBZSxDQUFDLEtBQWtCLEVBQUUsR0FBVzs7UUFDN0MsSUFBSSxDQUFBLE1BQUEsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLDBDQUFFLE9BQU8sTUFBSyxLQUFLLEVBQUU7WUFDOUMsT0FBTztTQUNSO1FBQ0QsS0FBSyxDQUFDLE9BQU8s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TSxPQUFPLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQWdDLEVBQUUsRUFBRTtZQUM5RCxPQUFPO2dCQUNMLElBQUksRUFBRSxjQUFjLEtBQUssQ0FBQyxJQUFJLEVBQUU7Z0JBQ2hDLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSTtnQkFDN0MsUUFBUSxFQUFFLHlCQUF5QixDQUFDLGVBQWU7YUFDcEQsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO1FBQ0gsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLEdBQUc7WUFDN0IsU0FBUyxFQUFFLElBQUk7WUFDZixJQUFJLEVBQUUsSUFBSTtZQUNWLE9BQU87U0FDUixDQUFDO0lBQ0osQ0FBQztJQUVPLDJDQUEyQztRQUNqRCxNQUFNLGdCQUFnQixHQUFHLENBQUMsTUFBNEIsRUFBRSxFQUFFO1lBQ3hELE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxXQUFXLEtBQUssSUFBSSxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsZUFBZSxLQUFLLElBQUksQ0FBQztRQUNwRixDQUFDLENBQUM7UUFDRixPQUFPLElBQUksbUNBQW1DLENBQUMsRUFBQyxnQkFBZ0IsRUFBbUMsQ0FBQyxDQUFDO0lBQ3ZHLENBQUM7OzhGQXhIVSx1QkFBdUI7NkVBQXZCLHVCQUF1QixXQUF2Qix1QkFBdUIsbUJBRnRCLE1BQU07dUZBRVAsdUJBQXVCO2NBSG5DLFVBQVU7ZUFBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgQWN0aW9uU3RvcmUsXG4gIEVudGl0eVRhYmxlVGVtcGxhdGUsXG4gIEVudGl0eVN0b3JlRmlsdGVyQ3VzdG9tRnVuY1N0cmF0ZWd5LFxuICBFbnRpdHlSZWNvcmQsXG4gIEVudGl0eVN0b3JlU3RyYXRlZ3lGdW5jT3B0aW9ucyxcbiAgRW50aXR5U3RvcmVGaWx0ZXJTZWxlY3Rpb25TdHJhdGVneSxcbiAgRW50aXR5VGFibGVDb2x1bW5SZW5kZXJlclxufSBmcm9tICdAaWdvMi9jb21tb24nO1xuXG5pbXBvcnQge1xuICBGZWF0dXJlU3RvcmUsXG4gIEZlYXR1cmVTdG9yZUxvYWRpbmdMYXllclN0cmF0ZWd5LFxuICBGZWF0dXJlU3RvcmVTZWxlY3Rpb25TdHJhdGVneSxcbiAgRmVhdHVyZVN0b3JlSW5NYXBFeHRlbnRTdHJhdGVneSxcbiAgRmVhdHVyZSxcbiAgRmVhdHVyZU1vdGlvbixcbiAgRmVhdHVyZVN0b3JlSW5NYXBSZXNvbHV0aW9uU3RyYXRlZ3lcbn0gZnJvbSAnLi4vLi4vZmVhdHVyZSc7XG5pbXBvcnQgeyBWZWN0b3JMYXllciB9IGZyb20gJy4uLy4uL2xheWVyJztcbmltcG9ydCB7IEdlb1dvcmtzcGFjZU9wdGlvbnMgfSBmcm9tICcuLi8uLi9sYXllci9zaGFyZWQvbGF5ZXJzL2xheWVyLmludGVyZmFjZSc7XG5pbXBvcnQgeyBJZ29NYXAgfSBmcm9tICcuLi8uLi9tYXAnO1xuaW1wb3J0IHsgU291cmNlRmllbGRzT3B0aW9uc1BhcmFtcywgRmVhdHVyZURhdGFTb3VyY2UgfSBmcm9tICcuLi8uLi9kYXRhc291cmNlJztcblxuaW1wb3J0IHsgRmVhdHVyZVdvcmtzcGFjZSB9IGZyb20gJy4vZmVhdHVyZS13b3Jrc3BhY2UnO1xuaW1wb3J0IHsgc2tpcFdoaWxlLCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU3RvcmFnZVNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlJztcblxuaW1wb3J0IG9sRmVhdHVyZSBmcm9tICdvbC9GZWF0dXJlJztcbmltcG9ydCB0eXBlIHsgZGVmYXVsdCBhcyBPbEdlb21ldHJ5IH0gZnJvbSAnb2wvZ2VvbS9HZW9tZXRyeSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEZlYXR1cmVXb3Jrc3BhY2VTZXJ2aWNlIHtcblxuXG4gIGdldCB6b29tQXV0bygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdG9yYWdlU2VydmljZS5nZXQoJ3pvb21BdXRvJykgYXMgYm9vbGVhbjtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmFnZVNlcnZpY2U6IFN0b3JhZ2VTZXJ2aWNlKSB7fVxuXG4gIGNyZWF0ZVdvcmtzcGFjZShsYXllcjogVmVjdG9yTGF5ZXIsIG1hcDogSWdvTWFwKTogRmVhdHVyZVdvcmtzcGFjZSB7XG4gICAgaWYgKGxheWVyLm9wdGlvbnMud29ya3NwYWNlPy5lbmFibGVkID09PSBmYWxzZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBsYXllci5vcHRpb25zLndvcmtzcGFjZSA9IE9iamVjdC5hc3NpZ24oe30sIGxheWVyLm9wdGlvbnMud29ya3NwYWNlLCB7ZW5hYmxlZDogdHJ1ZX0pO1xuXG4gICAgbGF5ZXIub3B0aW9ucy53b3Jrc3BhY2UgPSBPYmplY3QuYXNzaWduKHt9LCBsYXllci5vcHRpb25zLndvcmtzcGFjZSxcbiAgICAgIHtcbiAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgc3JjSWQ6IGxheWVyLmlkLFxuICAgICAgICB3b3Jrc3BhY2VJZDogbGF5ZXIuaWRcbiAgICAgIH0gYXMgR2VvV29ya3NwYWNlT3B0aW9ucyk7XG5cblxuICAgIGNvbnN0IHdrcyA9IG5ldyBGZWF0dXJlV29ya3NwYWNlKHtcbiAgICAgIGlkOiBsYXllci5pZCxcbiAgICAgIHRpdGxlOiBsYXllci50aXRsZSxcbiAgICAgIGxheWVyLFxuICAgICAgbWFwLFxuICAgICAgZW50aXR5U3RvcmU6IHRoaXMuY3JlYXRlRmVhdHVyZVN0b3JlKGxheWVyLCBtYXApLFxuICAgICAgYWN0aW9uU3RvcmU6IG5ldyBBY3Rpb25TdG9yZShbXSksXG4gICAgICBtZXRhOiB7XG4gICAgICAgIHRhYmxlVGVtcGxhdGU6IHVuZGVmaW5lZFxuICAgICAgfVxuICAgIH0pO1xuICAgIHRoaXMuY3JlYXRlVGFibGVUZW1wbGF0ZSh3a3MsIGxheWVyKTtcbiAgICByZXR1cm4gd2tzO1xuXG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUZlYXR1cmVTdG9yZShsYXllcjogVmVjdG9yTGF5ZXIsIG1hcDogSWdvTWFwKTogRmVhdHVyZVN0b3JlIHtcbiAgICBjb25zdCBzdG9yZSA9IG5ldyBGZWF0dXJlU3RvcmUoW10sIHttYXB9KTtcbiAgICBzdG9yZS5iaW5kTGF5ZXIobGF5ZXIpO1xuXG4gICAgY29uc3QgbG9hZGluZ1N0cmF0ZWd5ID0gbmV3IEZlYXR1cmVTdG9yZUxvYWRpbmdMYXllclN0cmF0ZWd5KHt9KTtcbiAgICBjb25zdCBpbk1hcEV4dGVudFN0cmF0ZWd5ID0gbmV3IEZlYXR1cmVTdG9yZUluTWFwRXh0ZW50U3RyYXRlZ3koe30pO1xuICAgIGNvbnN0IGluTWFwUmVzb2x1dGlvblN0cmF0ZWd5ID0gbmV3IEZlYXR1cmVTdG9yZUluTWFwUmVzb2x1dGlvblN0cmF0ZWd5KHt9KTtcbiAgICBjb25zdCBzZWxlY3RlZFJlY29yZFN0cmF0ZWd5ID0gbmV3IEVudGl0eVN0b3JlRmlsdGVyU2VsZWN0aW9uU3RyYXRlZ3koe30pO1xuICAgIGNvbnN0IHNlbGVjdGlvblN0cmF0ZWd5ID0gbmV3IEZlYXR1cmVTdG9yZVNlbGVjdGlvblN0cmF0ZWd5KHtcbiAgICAgIGxheWVyOiBuZXcgVmVjdG9yTGF5ZXIoe1xuICAgICAgICB6SW5kZXg6IDMwMCxcbiAgICAgICAgc291cmNlOiBuZXcgRmVhdHVyZURhdGFTb3VyY2UoKSxcbiAgICAgICAgc3R5bGU6IHVuZGVmaW5lZCxcbiAgICAgICAgc2hvd0luTGF5ZXJMaXN0OiBmYWxzZSxcbiAgICAgICAgZXhwb3J0YWJsZTogZmFsc2UsXG4gICAgICAgIGJyb3dzYWJsZTogZmFsc2VcbiAgICAgIH0pLFxuICAgICAgbWFwLFxuICAgICAgaGl0VG9sZXJhbmNlOiAxNSxcbiAgICAgIG1vdGlvbjogdGhpcy56b29tQXV0byA/IEZlYXR1cmVNb3Rpb24uRGVmYXVsdCA6IEZlYXR1cmVNb3Rpb24uTm9uZSxcbiAgICAgIG1hbnk6IHRydWUsXG4gICAgICBkcmFnQm94OiB0cnVlXG4gICAgfSk7XG4gICAgc3RvcmUuYWRkU3RyYXRlZ3kobG9hZGluZ1N0cmF0ZWd5LCB0cnVlKTtcbiAgICBzdG9yZS5hZGRTdHJhdGVneShpbk1hcEV4dGVudFN0cmF0ZWd5LCB0cnVlKTtcbiAgICBzdG9yZS5hZGRTdHJhdGVneShpbk1hcFJlc29sdXRpb25TdHJhdGVneSwgdHJ1ZSk7XG4gICAgc3RvcmUuYWRkU3RyYXRlZ3koc2VsZWN0aW9uU3RyYXRlZ3ksIHRydWUpO1xuICAgIHN0b3JlLmFkZFN0cmF0ZWd5KHNlbGVjdGVkUmVjb3JkU3RyYXRlZ3ksIGZhbHNlKTtcbiAgICBzdG9yZS5hZGRTdHJhdGVneSh0aGlzLmNyZWF0ZUZpbHRlckluTWFwRXh0ZW50T3JSZXNvbHV0aW9uU3RyYXRlZ3koKSwgdHJ1ZSk7XG4gICAgcmV0dXJuIHN0b3JlO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVUYWJsZVRlbXBsYXRlKHdvcmtzcGFjZTogRmVhdHVyZVdvcmtzcGFjZSwgbGF5ZXI6IFZlY3RvckxheWVyKTogRW50aXR5VGFibGVUZW1wbGF0ZSB7XG4gICAgY29uc3QgZmllbGRzID0gbGF5ZXIuZGF0YVNvdXJjZS5vcHRpb25zLnNvdXJjZUZpZWxkcyB8fCBbXTtcblxuICAgIGlmIChmaWVsZHMubGVuZ3RoID09PSAwKSB7XG4gICAgICB3b3Jrc3BhY2UuZW50aXR5U3RvcmUuZW50aXRpZXMkLnBpcGUoXG4gICAgICAgIHNraXBXaGlsZSh2YWwgPT4gdmFsLmxlbmd0aCA9PT0gMCksXG4gICAgICAgIHRha2UoMSlcbiAgICAgICkuc3Vic2NyaWJlKGVudGl0aWVzID0+IHtcbiAgICAgICAgY29uc3Qgb2wgPSAoZW50aXRpZXNbMF0gYXMgRmVhdHVyZSkub2wgYXMgb2xGZWF0dXJlPE9sR2VvbWV0cnk+O1xuICAgICAgICBjb25zdCBjb2x1bW5zRnJvbUZlYXR1cmVzID0gb2wuZ2V0S2V5cygpXG4gICAgICAgIC5maWx0ZXIoXG4gICAgICAgICAgY29sID0+ICFjb2wuc3RhcnRzV2l0aCgnXycpICYmXG4gICAgICAgICAgY29sICE9PSAnZ2VvbWV0cnknICYmXG4gICAgICAgICAgY29sICE9PSBvbC5nZXRHZW9tZXRyeU5hbWUoKSAmJlxuICAgICAgICAgICFjb2wubWF0Y2goL2JvdW5kZWRieS9naSkpXG4gICAgICAgIC5tYXAoa2V5ID0+IHtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmFtZTogYHByb3BlcnRpZXMuJHtrZXl9YCxcbiAgICAgICAgICAgIHRpdGxlOiBrZXksXG4gICAgICAgICAgICByZW5kZXJlcjogRW50aXR5VGFibGVDb2x1bW5SZW5kZXJlci5VbnNhbml0aXplZEhUTUxcbiAgICAgICAgICB9O1xuICAgICAgICB9KTtcbiAgICAgICAgd29ya3NwYWNlLm1ldGEudGFibGVUZW1wbGF0ZSA9IHtcbiAgICAgICAgICBzZWxlY3Rpb246IHRydWUsXG4gICAgICAgICAgc29ydDogdHJ1ZSxcbiAgICAgICAgICBjb2x1bW5zOiBjb2x1bW5zRnJvbUZlYXR1cmVzXG4gICAgICAgIH07XG4gICAgICB9KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgY29sdW1ucyA9IGZpZWxkcy5tYXAoKGZpZWxkOiBTb3VyY2VGaWVsZHNPcHRpb25zUGFyYW1zKSA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBuYW1lOiBgcHJvcGVydGllcy4ke2ZpZWxkLm5hbWV9YCxcbiAgICAgICAgdGl0bGU6IGZpZWxkLmFsaWFzID8gZmllbGQuYWxpYXMgOiBmaWVsZC5uYW1lLFxuICAgICAgICByZW5kZXJlcjogRW50aXR5VGFibGVDb2x1bW5SZW5kZXJlci5VbnNhbml0aXplZEhUTUxcbiAgICAgIH07XG4gICAgfSk7XG4gICAgd29ya3NwYWNlLm1ldGEudGFibGVUZW1wbGF0ZSA9IHtcbiAgICAgIHNlbGVjdGlvbjogdHJ1ZSxcbiAgICAgIHNvcnQ6IHRydWUsXG4gICAgICBjb2x1bW5zXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlRmlsdGVySW5NYXBFeHRlbnRPclJlc29sdXRpb25TdHJhdGVneSgpOiBFbnRpdHlTdG9yZUZpbHRlckN1c3RvbUZ1bmNTdHJhdGVneSB7XG4gICAgY29uc3QgZmlsdGVyQ2xhdXNlRnVuYyA9IChyZWNvcmQ6IEVudGl0eVJlY29yZDxvYmplY3Q+KSA9PiB7XG4gICAgICByZXR1cm4gcmVjb3JkLnN0YXRlLmluTWFwRXh0ZW50ID09PSB0cnVlICYmIHJlY29yZC5zdGF0ZS5pbk1hcFJlc29sdXRpb24gPT09IHRydWU7XG4gICAgfTtcbiAgICByZXR1cm4gbmV3IEVudGl0eVN0b3JlRmlsdGVyQ3VzdG9tRnVuY1N0cmF0ZWd5KHtmaWx0ZXJDbGF1c2VGdW5jfSBhcyBFbnRpdHlTdG9yZVN0cmF0ZWd5RnVuY09wdGlvbnMpO1xuICB9XG59XG4iXX0=
|
|
150
|
+
}], function () { return [{ type: i1.StorageService }, { type: i1.ConfigService }]; }, null); })();
|
|
151
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS13b3Jrc3BhY2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3dvcmtzcGFjZS9zaGFyZWQvZmVhdHVyZS13b3Jrc3BhY2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdkMsT0FBTyxFQUNMLFdBQVcsRUFFWCxtQ0FBbUMsRUFHbkMsa0NBQWtDLEVBQ2xDLHlCQUF5QixFQUMxQixNQUFNLGNBQWMsQ0FBQztBQUV0QixPQUFPLEVBQ0wsWUFBWSxFQUNaLGdDQUFnQyxFQUNoQyw2QkFBNkIsRUFDN0IsK0JBQStCLEVBRS9CLGFBQWEsRUFDYixtQ0FBbUMsRUFDcEMsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUcxQyxPQUFPLEVBQTZCLGlCQUFpQixFQUFtQixNQUFNLGtCQUFrQixDQUFDO0FBQ2pHLE9BQU8sRUFBRSw0QkFBNEIsRUFBQyxNQUFNLGFBQWEsQ0FBQztBQUUxRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFTakQsTUFBTSxPQUFPLHVCQUF1QjtJQVFsQyxZQUFvQixjQUE4QixFQUFVLGFBQTRCO1FBQXBFLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUFVLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBRmpGLFFBQUcsR0FBRyxJQUFJLGVBQWUsQ0FBUyxTQUFTLENBQUMsQ0FBQztJQUV1QyxDQUFDO0lBTjVGLElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENB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QyxJQUFJLEVBQUUsUUFBUSxDQUFDLElBQUk7Z0JBQ25CLE1BQU0sRUFBRSxRQUFRLENBQUMsTUFBTTtnQkFDdkIsSUFBSSxFQUFFLFVBQVU7Z0JBQ2hCLE9BQU8sRUFBRSxRQUFRLENBQUMsT0FBTztnQkFDekIsT0FBTyxFQUFFLEdBQUcsRUFBRTtvQkFDVixJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ2xDLENBQUM7Z0JBQ0QsYUFBYSxFQUFFLEdBQUcsRUFBRTtvQkFDbEIsT0FBTyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsQ0FBQztnQkFDaEMsQ0FBQzthQUNGLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxlQUFlLENBQUMsQ0FBQztRQUNqQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsR0FBRztZQUM3QixTQUFTLEVBQUUsSUFBSTtZQUNmLElBQUksRUFBRSxJQUFJO1lBQ1YsT0FBTztTQUNSLENBQUM7SUFDSixDQUFDO0lBRU8sMkNBQTJDO1FBQ2pELE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxNQUE0QixFQUFFLEVBQUU7WUFDeEQsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLFdBQVcsS0FBSyxJQUFJLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxlQUFlLEtBQUssSUFBSSxDQUFDO1FBQ3BGLENBQUMsQ0FBQztRQUNGLE9BQU8sSUFBSSxtQ0FBbUMsQ0FBQyxFQUFDLGdCQUFnQixFQUFtQyxDQUFDLENBQUM7SUFDdkcsQ0FBQzs7OEZBbkpVLHVCQUF1Qjs2RUFBdkIsdUJBQXVCLFdBQXZCLHVCQUF1QixtQkFGdEIsTUFBTTt1RkFFUCx1QkFBdUI7Y0FIbkMsVUFBVTtlQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtcclxuICBBY3Rpb25TdG9yZSxcclxuICBFbnRpdHlUYWJsZVRlbXBsYXRlLFxyXG4gIEVudGl0eVN0b3JlRmlsdGVyQ3VzdG9tRnVuY1N0cmF0ZWd5LFxyXG4gIEVudGl0eVJlY29yZCxcclxuICBFbnRpdHlTdG9yZVN0cmF0ZWd5RnVuY09wdGlvbnMsXHJcbiAgRW50aXR5U3RvcmVGaWx0ZXJTZWxlY3Rpb25TdHJhdGVneSxcclxuICBFbnRpdHlUYWJsZUNvbHVtblJlbmRlcmVyXHJcbn0gZnJvbSAnQGlnbzIvY29tbW9uJztcclxuXHJcbmltcG9ydCB7XHJcbiAgRmVhdHVyZVN0b3JlLFxyXG4gIEZlYXR1cmVTdG9yZUxvYWRpbmdMYXllclN0cmF0ZWd5LFxyXG4gIEZlYXR1cmVTdG9yZVNlbGVjdGlvblN0cmF0ZWd5LFxyXG4gIEZlYXR1cmVTdG9yZUluTWFwRXh0ZW50U3RyYXRlZ3ksXHJcbiAgRmVhdHVyZSxcclxuICBGZWF0dXJlTW90aW9uLFxyXG4gIEZlYXR1cmVTdG9yZUluTWFwUmVzb2x1dGlvblN0cmF0ZWd5XHJcbn0gZnJvbSAnLi4vLi4vZmVhdHVyZSc7XHJcbmltcG9ydCB7IFZlY3RvckxheWVyIH0gZnJvbSAnLi4vLi4vbGF5ZXInO1xyXG5pbXBvcnQgeyBHZW9Xb3Jrc3BhY2VPcHRpb25zIH0gZnJvbSAnLi4vLi4vbGF5ZXIvc2hhcmVkL2xheWVycy9sYXllci5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBJZ29NYXAgfSBmcm9tICcuLi8uLi9tYXAnO1xyXG5pbXBvcnQgeyBTb3VyY2VGaWVsZHNPcHRpb25zUGFyYW1zLCBGZWF0dXJlRGF0YVNvdXJjZSwgUmVsYXRpb25PcHRpb25zIH0gZnJvbSAnLi4vLi4vZGF0YXNvdXJjZSc7XHJcbmltcG9ydCB7IGdldENvbW1vblZlY3RvclNlbGVjdGVkU3R5bGV9IGZyb20gJy4uLy4uL3V0aWxzJztcclxuXHJcbmltcG9ydCB7IEZlYXR1cmVXb3Jrc3BhY2UgfSBmcm9tICcuL2ZlYXR1cmUtd29ya3NwYWNlJztcclxuaW1wb3J0IHsgc2tpcFdoaWxlLCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBDb25maWdTZXJ2aWNlLCBTdG9yYWdlU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUnO1xyXG5cclxuaW1wb3J0IG9sRmVhdHVyZSBmcm9tICdvbC9GZWF0dXJlJztcclxuaW1wb3J0IHR5cGUgeyBkZWZhdWx0IGFzIE9sR2VvbWV0cnkgfSBmcm9tICdvbC9nZW9tL0dlb21ldHJ5JztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEZlYXR1cmVXb3Jrc3BhY2VTZXJ2aWNlIHtcclxuXHJcbiAgZ2V0IHpvb21BdXRvKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0KCd6b29tQXV0bycpIGFzIGJvb2xlYW47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgd3MkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KHVuZGVmaW5lZCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmFnZVNlcnZpY2U6IFN0b3JhZ2VTZXJ2aWNlLCBwcml2YXRlIGNvbmZpZ1NlcnZpY2U6IENvbmZpZ1NlcnZpY2UpIHt9XHJcblxyXG4gIGNyZWF0ZVdvcmtzcGFjZShsYXllcjogVmVjdG9yTGF5ZXIsIG1hcDogSWdvTWFwKTogRmVhdHVyZVdvcmtzcGFjZSB7XHJcbiAgICBpZiAobGF5ZXIub3B0aW9ucy53b3Jrc3BhY2U/LmVuYWJsZWQgPT09IGZhbHNlIHx8IGxheWVyLmRhdGFTb3VyY2Uub3B0aW9ucy5lZGl0aW9uKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBsYXllci5vcHRpb25zLndvcmtzcGFjZSA9IE9iamVjdC5hc3NpZ24oe30sIGxheWVyLm9wdGlvbnMud29ya3NwYWNlLFxyXG4gICAgICB7XHJcbiAgICAgICAgc3JjSWQ6IGxheWVyLmlkLFxyXG4gICAgICAgIHdvcmtzcGFjZUlkOiBsYXllci5pZCxcclxuICAgICAgICBlbmFibGVkOiB0cnVlXHJcbiAgICAgIH0gYXMgR2VvV29ya3NwYWNlT3B0aW9ucyk7XHJcblxyXG5cclxuICAgIGNvbnN0IHdrcyA9IG5ldyBGZWF0dXJlV29ya3NwYWNlKHtcclxuICAgICAgaWQ6IGxheWVyLmlkLFxyXG4gICAgICB0aXRsZTogbGF5ZXIudGl0bGUsXHJcbiAgICAgIGxheWVyLFxyXG4gICAgICBtYXAsXHJcbiAgICAgIGVudGl0eVN0b3JlOiB0aGlzLmNyZWF0ZUZlYXR1cmVTdG9yZShsYXllciwgbWFwKSxcclxuICAgICAgYWN0aW9uU3RvcmU6IG5ldyBBY3Rpb25TdG9yZShbXSksXHJcbiAgICAgIG1ldGE6IHtcclxuICAgICAgICB0YWJsZVRlbXBsYXRlOiB1bmRlZmluZWRcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICB0aGlzLmNyZWF0ZVRhYmxlVGVtcGxhdGUod2tzLCBsYXllcik7XHJcbiAgICByZXR1cm4gd2tzO1xyXG5cclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlRmVhdHVyZVN0b3JlKGxheWVyOiBWZWN0b3JMYXllciwgbWFwOiBJZ29NYXApOiBGZWF0dXJlU3RvcmUge1xyXG4gICAgY29uc3Qgc3RvcmUgPSBuZXcgRmVhdHVyZVN0b3JlKFtdLCB7bWFwfSk7XHJcbiAgICBzdG9yZS5iaW5kTGF5ZXIobGF5ZXIpO1xyXG5cclxuICAgIGNvbnN0IGxvYWRpbmdTdHJhdGVneSA9IG5ldyBGZWF0dXJlU3RvcmVMb2FkaW5nTGF5ZXJTdHJhdGVneSh7fSk7XHJcbiAgICBjb25zdCBpbk1hcEV4dGVudFN0cmF0ZWd5ID0gbmV3IEZlYXR1cmVTdG9yZUluTWFwRXh0ZW50U3RyYXRlZ3koe30pO1xyXG4gICAgY29uc3QgaW5NYXBSZXNvbHV0aW9uU3RyYXRlZ3kgPSBuZXcgRmVhdHVyZVN0b3JlSW5NYXBSZXNvbHV0aW9uU3RyYXRlZ3koe30pO1xyXG4gICAgY29uc3Qgc2VsZWN0ZWRSZWNvcmRTdHJhdGVneSA9IG5ldyBFbnRpdHlTdG9yZUZpbHRlclNlbGVjdGlvblN0cmF0ZWd5KHt9KTtcclxuICAgIGNvbnN0IGNvbmZRdWVyeU92ZXJsYXlTdHlsZT0gdGhpcy5jb25maWdTZXJ2aWNlLmdldENvbmZpZygncXVlcnlPdmVybGF5U3R5bGUnKTtcclxuXHJcbiAgICBjb25zdCBzZWxlY3Rpb25TdHJhdGVneSA9IG5ldyBGZWF0dXJlU3RvcmVTZWxlY3Rpb25TdHJhdGVneSh7XHJcbiAgICAgIGxheWVyOiBuZXcgVmVjdG9yTGF5ZXIoe1xyXG4gICAgICAgIHpJbmRleDogMzAwLFxyXG4gICAgICAgIHNvdXJjZTogbmV3IEZlYXR1cmVEYXRhU291cmNlKCksXHJcbiAgICAgICAgc3R5bGU6IChmZWF0dXJlKSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4gZ2V0Q29tbW9uVmVjdG9yU2VsZWN0ZWRTdHlsZShPYmplY3QuYXNzaWduKHt9LCB7ZmVhdHVyZX0sIGNvbmZRdWVyeU92ZXJsYXlTdHlsZS5zZWxlY3Rpb24gfHwge30pKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIHNob3dJbkxheWVyTGlzdDogZmFsc2UsXHJcbiAgICAgICAgZXhwb3J0YWJsZTogZmFsc2UsXHJcbiAgICAgICAgYnJvd3NhYmxlOiBmYWxzZVxyXG4gICAgICB9KSxcclxuICAgICAgbWFwLFxyXG4gICAgICBoaXRUb2xlcmFuY2U6IDE1LFxyXG4gICAgICBtb3Rpb246IHRoaXMuem9vbUF1dG8gPyBGZWF0dXJlTW90aW9uLkRlZmF1bHQgOiBGZWF0dXJlTW90aW9uLk5vbmUsXHJcbiAgICAgIG1hbnk6IHRydWUsXHJcbiAgICAgIGRyYWdCb3g6IHRydWVcclxuICAgIH0pO1xyXG4gICAgc3RvcmUuYWRkU3RyYXRlZ3kobG9hZGluZ1N0cmF0ZWd5LCB0cnVlKTtcclxuICAgIHN0b3JlLmFkZFN0cmF0ZWd5KGluTWFwRXh0ZW50U3RyYXRlZ3ksIHRydWUpO1xyXG4gICAgc3RvcmUuYWRkU3RyYXRlZ3koaW5NYXBSZXNvbHV0aW9uU3RyYXRlZ3ksIHRydWUpO1xyXG4gICAgc3RvcmUuYWRkU3RyYXRlZ3koc2VsZWN0aW9uU3RyYXRlZ3ksIHRydWUpO1xyXG4gICAgc3RvcmUuYWRkU3RyYXRlZ3koc2VsZWN0ZWRSZWNvcmRTdHJhdGVneSwgZmFsc2UpO1xyXG4gICAgc3RvcmUuYWRkU3RyYXRlZ3kodGhpcy5jcmVhdGVGaWx0ZXJJbk1hcEV4dGVudE9yUmVzb2x1dGlvblN0cmF0ZWd5KCksIHRydWUpO1xyXG4gICAgcmV0dXJuIHN0b3JlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVUYWJsZVRlbXBsYXRlKHdvcmtzcGFjZTogRmVhdHVyZVdvcmtzcGFjZSwgbGF5ZXI6IFZlY3RvckxheWVyKTogRW50aXR5VGFibGVUZW1wbGF0ZSB7XHJcbiAgICBjb25zdCBmaWVsZHMgPSBsYXllci5kYXRhU291cmNlLm9wdGlvbnMuc291cmNlRmllbGRzIHx8IFtdO1xyXG5cclxuICAgIGNvbnN0IHJlbGF0aW9ucyA9IGxheWVyLmRhdGFTb3VyY2Uub3B0aW9ucy5yZWxhdGlvbnMgfHwgW107XHJcblxyXG4gICAgaWYgKGZpZWxkcy5sZW5ndGggPT09IDApIHtcclxuICAgICAgd29ya3NwYWNlLmVudGl0eVN0b3JlLmVudGl0aWVzJC5waXBlKFxyXG4gICAgICAgIHNraXBXaGlsZSh2YWwgPT4gdmFsLmxlbmd0aCA9PT0gMCksXHJcbiAgICAgICAgdGFrZSgxKVxyXG4gICAgICApLnN1YnNjcmliZShlbnRpdGllcyA9PiB7XHJcbiAgICAgICAgY29uc3Qgb2wgPSAoZW50aXRpZXNbMF0gYXMgRmVhdHVyZSkub2wgYXMgb2xGZWF0dXJlPE9sR2VvbWV0cnk+O1xyXG4gICAgICAgIGNvbnN0IGNvbHVtbnNGcm9tRmVhdHVyZXMgPSBvbC5nZXRLZXlzKClcclxuICAgICAgICAuZmlsdGVyKFxyXG4gICAgICAgICAgY29sID0+ICFjb2wuc3RhcnRzV2l0aCgnXycpICYmXHJcbiAgICAgICAgICBjb2wgIT09ICdnZW9tZXRyeScgJiZcclxuICAgICAgICAgIGNvbCAhPT0gb2wuZ2V0R2VvbWV0cnlOYW1lKCkgJiZcclxuICAgICAgICAgICFjb2wubWF0Y2goL2JvdW5kZWRieS9naSkpXHJcbiAgICAgICAgLm1hcChrZXkgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgbmFtZTogYHByb3BlcnRpZXMuJHtrZXl9YCxcclxuICAgICAgICAgICAgdGl0bGU6IGtleSxcclxuICAgICAgICAgICAgcmVuZGVyZXI6IEVudGl0eVRhYmxlQ29sdW1uUmVuZGVyZXIuVW5zYW5pdGl6ZWRIVE1MXHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHdvcmtzcGFjZS5tZXRhLnRhYmxlVGVtcGxhdGUgPSB7XHJcbiAgICAgICAgICBzZWxlY3Rpb246IHRydWUsXHJcbiAgICAgICAgICBzb3J0OiB0cnVlLFxyXG4gICAgICAgICAgY29sdW1uczogY29sdW1uc0Zyb21GZWF0dXJlc1xyXG4gICAgICAgIH07XHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBjb25zdCBjb2x1bW5zID0gZmllbGRzLm1hcCgoZmllbGQ6IFNvdXJjZUZpZWxkc09wdGlvbnNQYXJhbXMpID0+IHtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBuYW1lOiBgcHJvcGVydGllcy4ke2ZpZWxkLm5hbWV9YCxcclxuICAgICAgICB0aXRsZTogZmllbGQuYWxpYXMgPyBmaWVsZC5hbGlhcyA6IGZpZWxkLm5hbWUsXHJcbiAgICAgICAgcmVuZGVyZXI6IEVudGl0eVRhYmxlQ29sdW1uUmVuZGVyZXIuVW5zYW5pdGl6ZWRIVE1MLFxyXG4gICAgICAgIHRvb2x0aXA6IGZpZWxkLnRvb2x0aXBcclxuICAgICAgfTtcclxuICAgIH0pO1xyXG5cclxuICAgIGNvbnN0IHJlbGF0aW9uc0NvbHVtbiA9IHJlbGF0aW9ucy5tYXAoKHJlbGF0aW9uOiBSZWxhdGlvbk9wdGlvbnMpID0+IHtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBuYW1lOiBgcHJvcGVydGllcy4ke3JlbGF0aW9uLm5hbWV9YCxcclxuICAgICAgICB0aXRsZTogcmVsYXRpb24uYWxpYXMgPyByZWxhdGlvbi5hbGlhcyA6IHJlbGF0aW9uLm5hbWUsXHJcbiAgICAgICAgcmVuZGVyZXI6IEVudGl0eVRhYmxlQ29sdW1uUmVuZGVyZXIuSWNvbixcclxuICAgICAgICBpY29uOiByZWxhdGlvbi5pY29uLFxyXG4gICAgICAgIHBhcmVudDogcmVsYXRpb24ucGFyZW50LFxyXG4gICAgICAgIHR5cGU6ICdyZWxhdGlvbicsXHJcbiAgICAgICAgdG9vbHRpcDogcmVsYXRpb24udG9vbHRpcCxcclxuICAgICAgICBvbkNsaWNrOiAoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMud3MkLm5leHQocmVsYXRpb24udGl0bGUpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgY2VsbENsYXNzRnVuYzogKCkgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIHsgJ2NsYXNzX2ljb24nOiB0cnVlIH07XHJcbiAgICAgICAgfVxyXG4gICAgICB9O1xyXG4gICAgfSk7XHJcblxyXG4gICAgY29sdW1ucy5wdXNoKC4uLnJlbGF0aW9uc0NvbHVtbik7XHJcbiAgICB3b3Jrc3BhY2UubWV0YS50YWJsZVRlbXBsYXRlID0ge1xyXG4gICAgICBzZWxlY3Rpb246IHRydWUsXHJcbiAgICAgIHNvcnQ6IHRydWUsXHJcbiAgICAgIGNvbHVtbnNcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNyZWF0ZUZpbHRlckluTWFwRXh0ZW50T3JSZXNvbHV0aW9uU3RyYXRlZ3koKTogRW50aXR5U3RvcmVGaWx0ZXJDdXN0b21GdW5jU3RyYXRlZ3kge1xyXG4gICAgY29uc3QgZmlsdGVyQ2xhdXNlRnVuYyA9IChyZWNvcmQ6IEVudGl0eVJlY29yZDxvYmplY3Q+KSA9PiB7XHJcbiAgICAgIHJldHVybiByZWNvcmQuc3RhdGUuaW5NYXBFeHRlbnQgPT09IHRydWUgJiYgcmVjb3JkLnN0YXRlLmluTWFwUmVzb2x1dGlvbiA9PT0gdHJ1ZTtcclxuICAgIH07XHJcbiAgICByZXR1cm4gbmV3IEVudGl0eVN0b3JlRmlsdGVyQ3VzdG9tRnVuY1N0cmF0ZWd5KHtmaWx0ZXJDbGF1c2VGdW5jfSBhcyBFbnRpdHlTdG9yZVN0cmF0ZWd5RnVuY09wdGlvbnMpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -2,5 +2,7 @@ export * from './wfs-workspace';
|
|
|
2
2
|
export * from './wfs-workspace.service';
|
|
3
3
|
export * from './feature-workspace';
|
|
4
4
|
export * from './feature-workspace.service';
|
|
5
|
+
export * from './edition-workspace';
|
|
6
|
+
export * from './edition-workspace.service';
|
|
5
7
|
export * from './workspace.utils';
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi93b3Jrc3BhY2Uvc2hhcmVkL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3dmcy13b3Jrc3BhY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL3dmcy13b3Jrc3BhY2Uuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZmVhdHVyZS13b3Jrc3BhY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2ZlYXR1cmUtd29ya3NwYWNlLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2VkaXRpb24td29ya3NwYWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9lZGl0aW9uLXdvcmtzcGFjZS5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi93b3Jrc3BhY2UudXRpbHMnO1xyXG4iXX0=
|
|
@@ -16,5 +16,22 @@ export class WfsWorkspace extends Workspace {
|
|
|
16
16
|
}
|
|
17
17
|
get layer() { return this.options.layer; }
|
|
18
18
|
get map() { return this.options.map; }
|
|
19
|
+
getLayerWksOptionTabQuery() {
|
|
20
|
+
var _a;
|
|
21
|
+
if (((_a = this.layer.options.workspace.queryOptions) === null || _a === void 0 ? void 0 : _a.tabQuery) !== undefined) {
|
|
22
|
+
return this.layer.options.workspace.queryOptions.tabQuery;
|
|
23
|
+
}
|
|
24
|
+
return true;
|
|
25
|
+
}
|
|
26
|
+
getLayerWksOptionMapQuery() {
|
|
27
|
+
var _a;
|
|
28
|
+
if (((_a = this.layer.options.workspace.queryOptions) === null || _a === void 0 ? void 0 : _a.mapQueryOnOpenTab) !== undefined) {
|
|
29
|
+
return this.layer.options.workspace.queryOptions.mapQueryOnOpenTab;
|
|
30
|
+
}
|
|
31
|
+
return true;
|
|
32
|
+
}
|
|
33
|
+
getInResolutionRange() {
|
|
34
|
+
return this.inResolutionRange$.value;
|
|
35
|
+
}
|
|
19
36
|
}
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2ZzLXdvcmtzcGFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3dvcmtzcGFjZS9zaGFyZWQvd2ZzLXdvcmtzcGFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVWLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFVdkMsTUFBTSxPQUFPLFlBQWEsU0FBUSxTQUFTO0lBUXpDLFlBQXNCLE9BQTRCO1FBQ2hELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQURLLFlBQU8sR0FBUCxPQUFPLENBQXFCO1FBTnpDLHVCQUFrQixHQUE2QixJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQVFoRixJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsYUFBYSxFQUFFLEVBQUU7WUFDOUQsSUFBSSxhQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLElBQUksYUFBYSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFO2dCQUN4RixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ3BDO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDckM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFiRCxJQUFJLEtBQUssS0FBa0IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFFdkQsSUFBSSxHQUFHLEtBQWEsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFhdkMseUJBQXlCOztRQUM5QixJQUFJLENBQUEsTUFBQSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsWUFBWSwwQ0FBRSxRQUFRLE1BQUssU0FBUyxFQUFFO1lBQ3JFLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUM7U0FDM0Q7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTSx5QkFBeUI7O1FBQzlCLElBQUksQ0FBQSxNQUFBLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxZQUFZLDBDQUFFLGlCQUFpQixNQUFLLFNBQVMsRUFBRTtZQUM5RSxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsaUJBQWlCLENBQUM7U0FDcEU7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTyxvQkFBb0I7UUFDMUIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDO0lBQ3ZDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgV29ya3NwYWNlLFxyXG4gIFdvcmtzcGFjZU9wdGlvbnNcclxufSBmcm9tICdAaWdvMi9jb21tb24nO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IFZlY3RvckxheWVyIH0gZnJvbSAnLi4vLi4vbGF5ZXInO1xyXG5pbXBvcnQgeyBJZ29NYXAgfSBmcm9tICcuLi8uLi9tYXAnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBXZnNXb3Jrc3BhY2VPcHRpb25zIGV4dGVuZHMgV29ya3NwYWNlT3B0aW9ucyB7XHJcbiAgbGF5ZXI6IFZlY3RvckxheWVyO1xyXG4gIG1hcDogSWdvTWFwO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgV2ZzV29ya3NwYWNlIGV4dGVuZHMgV29ya3NwYWNlIHtcclxuXHJcbiAgcmVhZG9ubHkgaW5SZXNvbHV0aW9uUmFuZ2UkOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHRydWUpO1xyXG5cclxuICBnZXQgbGF5ZXIoKTogVmVjdG9yTGF5ZXIgeyByZXR1cm4gdGhpcy5vcHRpb25zLmxheWVyOyB9XHJcblxyXG4gIGdldCBtYXAoKTogSWdvTWFwIHsgcmV0dXJuIHRoaXMub3B0aW9ucy5tYXA7IH1cclxuXHJcbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIG9wdGlvbnM6IFdmc1dvcmtzcGFjZU9wdGlvbnMpIHtcclxuICAgIHN1cGVyKG9wdGlvbnMpO1xyXG4gICAgdGhpcy5tYXAudmlld0NvbnRyb2xsZXIucmVzb2x1dGlvbiQuc3Vic2NyaWJlKChtYXBSZXNvbHV0aW9uKSA9PiB7XHJcbiAgICAgIGlmIChtYXBSZXNvbHV0aW9uID4gdGhpcy5sYXllci5taW5SZXNvbHV0aW9uICYmIG1hcFJlc29sdXRpb24gPCB0aGlzLmxheWVyLm1heFJlc29sdXRpb24pIHtcclxuICAgICAgICB0aGlzLmluUmVzb2x1dGlvblJhbmdlJC5uZXh0KHRydWUpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuaW5SZXNvbHV0aW9uUmFuZ2UkLm5leHQoZmFsc2UpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRMYXllcldrc09wdGlvblRhYlF1ZXJ5KCk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKHRoaXMubGF5ZXIub3B0aW9ucy53b3Jrc3BhY2UucXVlcnlPcHRpb25zPy50YWJRdWVyeSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmxheWVyLm9wdGlvbnMud29ya3NwYWNlLnF1ZXJ5T3B0aW9ucy50YWJRdWVyeTtcclxuICAgIH1cclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldExheWVyV2tzT3B0aW9uTWFwUXVlcnkoKTogYm9vbGVhbiB7XHJcbiAgICBpZiAodGhpcy5sYXllci5vcHRpb25zLndvcmtzcGFjZS5xdWVyeU9wdGlvbnM/Lm1hcFF1ZXJ5T25PcGVuVGFiICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgcmV0dXJuIHRoaXMubGF5ZXIub3B0aW9ucy53b3Jrc3BhY2UucXVlcnlPcHRpb25zLm1hcFF1ZXJ5T25PcGVuVGFiO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldEluUmVzb2x1dGlvblJhbmdlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaW5SZXNvbHV0aW9uUmFuZ2UkLnZhbHVlO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,28 +1,32 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
|
+
import { BehaviorSubject } from 'rxjs';
|
|
2
3
|
import { ActionStore, EntityStoreFilterCustomFuncStrategy, EntityStoreFilterSelectionStrategy, EntityTableColumnRenderer } from '@igo2/common';
|
|
3
4
|
import { FeatureStore, FeatureStoreLoadingLayerStrategy, FeatureStoreSelectionStrategy, FeatureStoreInMapExtentStrategy, FeatureMotion, FeatureStoreInMapResolutionStrategy } from '../../feature';
|
|
4
5
|
import { VectorLayer } from '../../layer';
|
|
5
6
|
import { FeatureDataSource } from '../../datasource';
|
|
7
|
+
import { getCommonVectorSelectedStyle } from '../../utils';
|
|
6
8
|
import { WfsWorkspace } from './wfs-workspace';
|
|
7
9
|
import { skipWhile, take } from 'rxjs/operators';
|
|
8
10
|
import * as i0 from "@angular/core";
|
|
9
11
|
import * as i1 from "@igo2/core";
|
|
10
12
|
export class WfsWorkspaceService {
|
|
11
|
-
constructor(storageService) {
|
|
13
|
+
constructor(storageService, configService) {
|
|
12
14
|
this.storageService = storageService;
|
|
15
|
+
this.configService = configService;
|
|
16
|
+
this.ws$ = new BehaviorSubject(undefined);
|
|
13
17
|
}
|
|
14
18
|
get zoomAuto() {
|
|
15
19
|
return this.storageService.get('zoomAuto');
|
|
16
20
|
}
|
|
17
21
|
createWorkspace(layer, map) {
|
|
18
22
|
var _a;
|
|
19
|
-
if (((_a = layer.options.workspace) === null || _a === void 0 ? void 0 : _a.enabled) === false) {
|
|
23
|
+
if (((_a = layer.options.workspace) === null || _a === void 0 ? void 0 : _a.enabled) === false || layer.dataSource.options.edition) {
|
|
20
24
|
return;
|
|
21
25
|
}
|
|
22
26
|
layer.options.workspace = Object.assign({}, layer.options.workspace, {
|
|
23
|
-
enabled: true,
|
|
24
27
|
srcId: layer.id,
|
|
25
|
-
workspaceId: layer.id
|
|
28
|
+
workspaceId: layer.id,
|
|
29
|
+
enabled: true
|
|
26
30
|
});
|
|
27
31
|
const wks = new WfsWorkspace({
|
|
28
32
|
id: layer.id,
|
|
@@ -45,11 +49,14 @@ export class WfsWorkspaceService {
|
|
|
45
49
|
const inMapExtentStrategy = new FeatureStoreInMapExtentStrategy({});
|
|
46
50
|
const inMapResolutionStrategy = new FeatureStoreInMapResolutionStrategy({});
|
|
47
51
|
const selectedRecordStrategy = new EntityStoreFilterSelectionStrategy({});
|
|
52
|
+
const confQueryOverlayStyle = this.configService.getConfig('queryOverlayStyle');
|
|
48
53
|
const selectionStrategy = new FeatureStoreSelectionStrategy({
|
|
49
54
|
layer: new VectorLayer({
|
|
50
55
|
zIndex: 300,
|
|
51
56
|
source: new FeatureDataSource(),
|
|
52
|
-
style:
|
|
57
|
+
style: (feature) => {
|
|
58
|
+
return getCommonVectorSelectedStyle(Object.assign({}, { feature }, confQueryOverlayStyle.selection || {}));
|
|
59
|
+
},
|
|
53
60
|
showInLayerList: false,
|
|
54
61
|
exportable: false,
|
|
55
62
|
browsable: false
|
|
@@ -70,6 +77,7 @@ export class WfsWorkspaceService {
|
|
|
70
77
|
}
|
|
71
78
|
createTableTemplate(workspace, layer) {
|
|
72
79
|
const fields = layer.dataSource.options.sourceFields || [];
|
|
80
|
+
const relations = layer.dataSource.options.relations || [];
|
|
73
81
|
if (fields.length === 0) {
|
|
74
82
|
workspace.entityStore.entities$.pipe(skipWhile(val => val.length === 0), take(1)).subscribe(entities => {
|
|
75
83
|
const ol = entities[0].ol;
|
|
@@ -97,9 +105,28 @@ export class WfsWorkspaceService {
|
|
|
97
105
|
return {
|
|
98
106
|
name: `properties.${field.name}`,
|
|
99
107
|
title: field.alias ? field.alias : field.name,
|
|
100
|
-
renderer: EntityTableColumnRenderer.UnsanitizedHTML
|
|
108
|
+
renderer: EntityTableColumnRenderer.UnsanitizedHTML,
|
|
109
|
+
tooltip: field.tooltip
|
|
101
110
|
};
|
|
102
111
|
});
|
|
112
|
+
const relationsColumn = relations.map((relation) => {
|
|
113
|
+
return {
|
|
114
|
+
name: `properties.${relation.name}`,
|
|
115
|
+
title: relation.alias ? relation.alias : relation.name,
|
|
116
|
+
renderer: EntityTableColumnRenderer.Icon,
|
|
117
|
+
icon: relation.icon,
|
|
118
|
+
parent: relation.parent,
|
|
119
|
+
type: 'relation',
|
|
120
|
+
tooltip: relation.tooltip,
|
|
121
|
+
onClick: () => {
|
|
122
|
+
this.ws$.next(relation.title);
|
|
123
|
+
},
|
|
124
|
+
cellClassFunc: () => {
|
|
125
|
+
return { 'class_icon': true };
|
|
126
|
+
}
|
|
127
|
+
};
|
|
128
|
+
});
|
|
129
|
+
columns.push(...relationsColumn);
|
|
103
130
|
workspace.meta.tableTemplate = {
|
|
104
131
|
selection: true,
|
|
105
132
|
sort: true,
|
|
@@ -113,12 +140,12 @@ export class WfsWorkspaceService {
|
|
|
113
140
|
return new EntityStoreFilterCustomFuncStrategy({ filterClauseFunc });
|
|
114
141
|
}
|
|
115
142
|
}
|
|
116
|
-
WfsWorkspaceService.ɵfac = function WfsWorkspaceService_Factory(t) { return new (t || WfsWorkspaceService)(i0.ɵɵinject(i1.StorageService)); };
|
|
143
|
+
WfsWorkspaceService.ɵfac = function WfsWorkspaceService_Factory(t) { return new (t || WfsWorkspaceService)(i0.ɵɵinject(i1.StorageService), i0.ɵɵinject(i1.ConfigService)); };
|
|
117
144
|
WfsWorkspaceService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: WfsWorkspaceService, factory: WfsWorkspaceService.ɵfac, providedIn: 'root' });
|
|
118
145
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WfsWorkspaceService, [{
|
|
119
146
|
type: Injectable,
|
|
120
147
|
args: [{
|
|
121
148
|
providedIn: 'root'
|
|
122
149
|
}]
|
|
123
|
-
}], function () { return [{ type: i1.StorageService }]; }, null); })();
|
|
124
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2ZzLXdvcmtzcGFjZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvd29ya3NwYWNlL3NoYXJlZC93ZnMtd29ya3NwYWNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQ0wsV0FBVyxFQUVYLG1DQUFtQyxFQUduQyxrQ0FBa0MsRUFDbEMseUJBQXlCLEVBQzFCLE1BQU0sY0FBYyxDQUFDO0FBRXRCLE9BQU8sRUFDTCxZQUFZLEVBQ1osZ0NBQWdDLEVBQ2hDLDZCQUE2QixFQUM3QiwrQkFBK0IsRUFFL0IsYUFBYSxFQUNiLG1DQUFtQyxFQUNwQyxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRzFDLE9BQU8sRUFBNkIsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVoRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBUWpELE1BQU0sT0FBTyxtQkFBbUI7SUFNOUIsWUFBb0IsY0FBOEI7UUFBOUIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO0lBQUcsQ0FBQztJQUp0RCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBWSxDQUFDO0lBQ3hELENBQUM7SUFJRCxlQUFlLENBQUMsS0FBa0IsRUFBRSxHQUFXOztRQUM3QyxJQUFJLENBQUEsTUFBQSxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVMsMENBQUUsT0FBTyxNQUFLLEtBQUssRUFBRTtZQUM5QyxPQUFPO1NBQ1I7UUFFRCxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVMs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QUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUk7Z0JBQzdDLFFBQVEsRUFBRSx5QkFBeUIsQ0FBQyxlQUFlO2FBQ3BELENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztRQUNILFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxHQUFHO1lBQzdCLFNBQVMsRUFBRSxJQUFJO1lBQ2YsSUFBSSxFQUFFLElBQUk7WUFDVixPQUFPO1NBQ1IsQ0FBQztJQUNKLENBQUM7SUFDTywyQ0FBMkM7UUFDakQsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLE1BQTRCLEVBQUUsRUFBRTtZQUN4RCxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsV0FBVyxLQUFLLElBQUksSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLGVBQWUsS0FBSyxJQUFJLENBQUM7UUFDcEYsQ0FBQyxDQUFDO1FBQ0YsT0FBTyxJQUFJLG1DQUFtQyxDQUFDLEVBQUMsZ0JBQWdCLEVBQW1DLENBQUMsQ0FBQztJQUN2RyxDQUFDOztzRkFwSFUsbUJBQW1CO3lFQUFuQixtQkFBbUIsV0FBbkIsbUJBQW1CLG1CQUZsQixNQUFNO3VGQUVQLG1CQUFtQjtjQUgvQixVQUFVO2VBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIEFjdGlvblN0b3JlLFxuICBFbnRpdHlUYWJsZVRlbXBsYXRlLFxuICBFbnRpdHlTdG9yZUZpbHRlckN1c3RvbUZ1bmNTdHJhdGVneSxcbiAgRW50aXR5UmVjb3JkLFxuICBFbnRpdHlTdG9yZVN0cmF0ZWd5RnVuY09wdGlvbnMsXG4gIEVudGl0eVN0b3JlRmlsdGVyU2VsZWN0aW9uU3RyYXRlZ3ksXG4gIEVudGl0eVRhYmxlQ29sdW1uUmVuZGVyZXJcbn0gZnJvbSAnQGlnbzIvY29tbW9uJztcblxuaW1wb3J0IHtcbiAgRmVhdHVyZVN0b3JlLFxuICBGZWF0dXJlU3RvcmVMb2FkaW5nTGF5ZXJTdHJhdGVneSxcbiAgRmVhdHVyZVN0b3JlU2VsZWN0aW9uU3RyYXRlZ3ksXG4gIEZlYXR1cmVTdG9yZUluTWFwRXh0ZW50U3RyYXRlZ3ksXG4gIEZlYXR1cmUsXG4gIEZlYXR1cmVNb3Rpb24sXG4gIEZlYXR1cmVTdG9yZUluTWFwUmVzb2x1dGlvblN0cmF0ZWd5XG59IGZyb20gJy4uLy4uL2ZlYXR1cmUnO1xuaW1wb3J0IHsgVmVjdG9yTGF5ZXIgfSBmcm9tICcuLi8uLi9sYXllcic7XG5pbXBvcnQgeyBHZW9Xb3Jrc3BhY2VPcHRpb25zIH0gZnJvbSAnLi4vLi4vbGF5ZXIvc2hhcmVkL2xheWVycy9sYXllci5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSWdvTWFwIH0gZnJvbSAnLi4vLi4vbWFwJztcbmltcG9ydCB7IFNvdXJjZUZpZWxkc09wdGlvbnNQYXJhbXMsIEZlYXR1cmVEYXRhU291cmNlIH0gZnJvbSAnLi4vLi4vZGF0YXNvdXJjZSc7XG5cbmltcG9ydCB7IFdmc1dvcmtzcGFjZSB9IGZyb20gJy4vd2ZzLXdvcmtzcGFjZSc7XG5pbXBvcnQgeyBza2lwV2hpbGUsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBTdG9yYWdlU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUnO1xuaW1wb3J0IG9sRmVhdHVyZSBmcm9tICdvbC9GZWF0dXJlJztcbmltcG9ydCB0eXBlIHsgZGVmYXVsdCBhcyBPbEdlb21ldHJ5IH0gZnJvbSAnb2wvZ2VvbS9HZW9tZXRyeSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFdmc1dvcmtzcGFjZVNlcnZpY2Uge1xuXG4gIGdldCB6b29tQXV0bygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdG9yYWdlU2VydmljZS5nZXQoJ3pvb21BdXRvJykgYXMgYm9vbGVhbjtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmFnZVNlcnZpY2U6IFN0b3JhZ2VTZXJ2aWNlKSB7fVxuXG4gIGNyZWF0ZVdvcmtzcGFjZShsYXllcjogVmVjdG9yTGF5ZXIsIG1hcDogSWdvTWFwKTogV2ZzV29ya3NwYWNlIHtcbiAgICBpZiAobGF5ZXIub3B0aW9ucy53b3Jrc3BhY2U/LmVuYWJsZWQgPT09IGZhbHNlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbGF5ZXIub3B0aW9ucy53b3Jrc3BhY2UgPSBPYmplY3QuYXNzaWduKHt9LCBsYXllci5vcHRpb25zLndvcmtzcGFjZSxcbiAgICAgIHtcbiAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgc3JjSWQ6IGxheWVyLmlkLFxuICAgICAgICB3b3Jrc3BhY2VJZDogbGF5ZXIuaWRcbiAgICAgIH0gYXMgR2VvV29ya3NwYWNlT3B0aW9ucyk7XG5cbiAgICBjb25zdCB3a3MgPSBuZXcgV2ZzV29ya3NwYWNlKHtcbiAgICAgIGlkOiBsYXllci5pZCxcbiAgICAgIHRpdGxlOiBsYXllci50aXRsZSxcbiAgICAgIGxheWVyLFxuICAgICAgbWFwLFxuICAgICAgZW50aXR5U3RvcmU6IHRoaXMuY3JlYXRlRmVhdHVyZVN0b3JlKGxheWVyLCBtYXApLFxuICAgICAgYWN0aW9uU3RvcmU6IG5ldyBBY3Rpb25TdG9yZShbXSksXG4gICAgICBtZXRhOiB7XG4gICAgICAgIHRhYmxlVGVtcGxhdGU6IHVuZGVmaW5lZFxuICAgICAgfVxuICAgIH0pO1xuICAgIHRoaXMuY3JlYXRlVGFibGVUZW1wbGF0ZSh3a3MsIGxheWVyKTtcbiAgICByZXR1cm4gd2tzO1xuXG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUZlYXR1cmVTdG9yZShsYXllcjogVmVjdG9yTGF5ZXIsIG1hcDogSWdvTWFwKTogRmVhdHVyZVN0b3JlIHtcbiAgICBjb25zdCBzdG9yZSA9IG5ldyBGZWF0dXJlU3RvcmUoW10sIHttYXB9KTtcbiAgICBzdG9yZS5iaW5kTGF5ZXIobGF5ZXIpO1xuXG4gICAgY29uc3QgbG9hZGluZ1N0cmF0ZWd5ID0gbmV3IEZlYXR1cmVTdG9yZUxvYWRpbmdMYXllclN0cmF0ZWd5KHt9KTtcbiAgICBjb25zdCBpbk1hcEV4dGVudFN0cmF0ZWd5ID0gbmV3IEZlYXR1cmVTdG9yZUluTWFwRXh0ZW50U3RyYXRlZ3koe30pO1xuICAgIGNvbnN0IGluTWFwUmVzb2x1dGlvblN0cmF0ZWd5ID0gbmV3IEZlYXR1cmVTdG9yZUluTWFwUmVzb2x1dGlvblN0cmF0ZWd5KHt9KTtcbiAgICBjb25zdCBzZWxlY3RlZFJlY29yZFN0cmF0ZWd5ID0gbmV3IEVudGl0eVN0b3JlRmlsdGVyU2VsZWN0aW9uU3RyYXRlZ3koe30pO1xuICAgIGNvbnN0IHNlbGVjdGlvblN0cmF0ZWd5ID0gbmV3IEZlYXR1cmVTdG9yZVNlbGVjdGlvblN0cmF0ZWd5KHtcbiAgICAgIGxheWVyOiBuZXcgVmVjdG9yTGF5ZXIoe1xuICAgICAgICB6SW5kZXg6IDMwMCxcbiAgICAgICAgc291cmNlOiBuZXcgRmVhdHVyZURhdGFTb3VyY2UoKSxcbiAgICAgICAgc3R5bGU6IHVuZGVmaW5lZCxcbiAgICAgICAgc2hvd0luTGF5ZXJMaXN0OiBmYWxzZSxcbiAgICAgICAgZXhwb3J0YWJsZTogZmFsc2UsXG4gICAgICAgIGJyb3dzYWJsZTogZmFsc2VcbiAgICAgIH0pLFxuICAgICAgbWFwLFxuICAgICAgaGl0VG9sZXJhbmNlOiAxNSxcbiAgICAgIG1vdGlvbjogdGhpcy56b29tQXV0byA/IEZlYXR1cmVNb3Rpb24uRGVmYXVsdCA6IEZlYXR1cmVNb3Rpb24uTm9uZSxcbiAgICAgIG1hbnk6IHRydWUsXG4gICAgICBkcmFnQm94OiB0cnVlXG4gICAgfSk7XG4gICAgc3RvcmUuYWRkU3RyYXRlZ3kobG9hZGluZ1N0cmF0ZWd5LCB0cnVlKTtcbiAgICBzdG9yZS5hZGRTdHJhdGVneShpbk1hcEV4dGVudFN0cmF0ZWd5LCB0cnVlKTtcbiAgICBzdG9yZS5hZGRTdHJhdGVneShpbk1hcFJlc29sdXRpb25TdHJhdGVneSwgdHJ1ZSk7XG4gICAgc3RvcmUuYWRkU3RyYXRlZ3koc2VsZWN0aW9uU3RyYXRlZ3ksIHRydWUpO1xuICAgIHN0b3JlLmFkZFN0cmF0ZWd5KHNlbGVjdGVkUmVjb3JkU3RyYXRlZ3ksIGZhbHNlKTtcbiAgICBzdG9yZS5hZGRTdHJhdGVneSh0aGlzLmNyZWF0ZUZpbHRlckluTWFwRXh0ZW50T3JSZXNvbHV0aW9uU3RyYXRlZ3koKSwgdHJ1ZSk7XG4gICAgcmV0dXJuIHN0b3JlO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVUYWJsZVRlbXBsYXRlKHdvcmtzcGFjZTogV2ZzV29ya3NwYWNlLCBsYXllcjogVmVjdG9yTGF5ZXIpOiBFbnRpdHlUYWJsZVRlbXBsYXRlIHtcbiAgICBjb25zdCBmaWVsZHMgPSBsYXllci5kYXRhU291cmNlLm9wdGlvbnMuc291cmNlRmllbGRzIHx8IFtdO1xuXG4gICAgaWYgKGZpZWxkcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHdvcmtzcGFjZS5lbnRpdHlTdG9yZS5lbnRpdGllcyQucGlwZShcbiAgICAgICAgc2tpcFdoaWxlKHZhbCA9PiB2YWwubGVuZ3RoID09PSAwKSxcbiAgICAgICAgdGFrZSgxKVxuICAgICAgKS5zdWJzY3JpYmUoZW50aXRpZXMgPT4ge1xuICAgICAgICBjb25zdCBvbCA9IChlbnRpdGllc1swXSBhcyBGZWF0dXJlKS5vbCBhcyBvbEZlYXR1cmU8T2xHZW9tZXRyeT47XG4gICAgICAgIGNvbnN0IGNvbHVtbnNGcm9tRmVhdHVyZXMgPSBvbC5nZXRLZXlzKClcbiAgICAgICAgLmZpbHRlcihcbiAgICAgICAgICBjb2wgPT4gIWNvbC5zdGFydHNXaXRoKCdfJykgJiZcbiAgICAgICAgICBjb2wgIT09ICdnZW9tZXRyeScgJiZcbiAgICAgICAgICBjb2wgIT09IG9sLmdldEdlb21ldHJ5TmFtZSgpICYmXG4gICAgICAgICAgIWNvbC5tYXRjaCgvYm91bmRlZGJ5L2dpKSlcbiAgICAgICAgLm1hcChrZXkgPT4ge1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBuYW1lOiBgcHJvcGVydGllcy4ke2tleX1gLFxuICAgICAgICAgICAgdGl0bGU6IGtleSxcbiAgICAgICAgICAgIHJlbmRlcmVyOiBFbnRpdHlUYWJsZUNvbHVtblJlbmRlcmVyLlVuc2FuaXRpemVkSFRNTFxuICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuICAgICAgICB3b3Jrc3BhY2UubWV0YS50YWJsZVRlbXBsYXRlID0ge1xuICAgICAgICAgIHNlbGVjdGlvbjogdHJ1ZSxcbiAgICAgICAgICBzb3J0OiB0cnVlLFxuICAgICAgICAgIGNvbHVtbnM6IGNvbHVtbnNGcm9tRmVhdHVyZXNcbiAgICAgICAgfTtcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBjb2x1bW5zID0gZmllbGRzLm1hcCgoZmllbGQ6IFNvdXJjZUZpZWxkc09wdGlvbnNQYXJhbXMpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG5hbWU6IGBwcm9wZXJ0aWVzLiR7ZmllbGQubmFtZX1gLFxuICAgICAgICB0aXRsZTogZmllbGQuYWxpYXMgPyBmaWVsZC5hbGlhcyA6IGZpZWxkLm5hbWUsXG4gICAgICAgIHJlbmRlcmVyOiBFbnRpdHlUYWJsZUNvbHVtblJlbmRlcmVyLlVuc2FuaXRpemVkSFRNTFxuICAgICAgfTtcbiAgICB9KTtcbiAgICB3b3Jrc3BhY2UubWV0YS50YWJsZVRlbXBsYXRlID0ge1xuICAgICAgc2VsZWN0aW9uOiB0cnVlLFxuICAgICAgc29ydDogdHJ1ZSxcbiAgICAgIGNvbHVtbnNcbiAgICB9O1xuICB9XG4gIHByaXZhdGUgY3JlYXRlRmlsdGVySW5NYXBFeHRlbnRPclJlc29sdXRpb25TdHJhdGVneSgpOiBFbnRpdHlTdG9yZUZpbHRlckN1c3RvbUZ1bmNTdHJhdGVneSB7XG4gICAgY29uc3QgZmlsdGVyQ2xhdXNlRnVuYyA9IChyZWNvcmQ6IEVudGl0eVJlY29yZDxvYmplY3Q+KSA9PiB7XG4gICAgICByZXR1cm4gcmVjb3JkLnN0YXRlLmluTWFwRXh0ZW50ID09PSB0cnVlICYmIHJlY29yZC5zdGF0ZS5pbk1hcFJlc29sdXRpb24gPT09IHRydWU7XG4gICAgfTtcbiAgICByZXR1cm4gbmV3IEVudGl0eVN0b3JlRmlsdGVyQ3VzdG9tRnVuY1N0cmF0ZWd5KHtmaWx0ZXJDbGF1c2VGdW5jfSBhcyBFbnRpdHlTdG9yZVN0cmF0ZWd5RnVuY09wdGlvbnMpO1xuICB9XG59XG4iXX0=
|
|
150
|
+
}], function () { return [{ type: i1.StorageService }, { type: i1.ConfigService }]; }, null); })();
|
|
151
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2ZzLXdvcmtzcGFjZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvd29ya3NwYWNlL3NoYXJlZC93ZnMtd29ya3NwYWNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFDTCxXQUFXLEVBRVgsbUNBQW1DLEVBR25DLGtDQUFrQyxFQUNsQyx5QkFBeUIsRUFDMUIsTUFBTSxjQUFjLENBQUM7QUFFdEIsT0FBTyxFQUNMLFlBQVksRUFDWixnQ0FBZ0MsRUFDaEMsNkJBQTZCLEVBQzdCLCtCQUErQixFQUUvQixhQUFhLEVBQ2IsbUNBQW1DLEVBQ3BDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFHMUMsT0FBTyxFQUE2QixpQkFBaUIsRUFBbUIsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRyxPQUFPLEVBQUUsNEJBQTRCLEVBQUMsTUFBTSxhQUFhLENBQUM7QUFFMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQU9qRCxNQUFNLE9BQU8sbUJBQW1CO0lBUTlCLFlBQW9CLGNBQThCLEVBQVUsYUFBNEI7UUFBcEUsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQVUsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFGakYsUUFBRyxHQUFHLElBQUksZUFBZSxDQUFTLFNBQVMsQ0FBQyxDQUFDO0lBRXVDLENBQUM7SUFONUYsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENB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UUFBUSxDQUFDLElBQUk7Z0JBQ25CLE1BQU0sRUFBRSxRQUFRLENBQUMsTUFBTTtnQkFDdkIsSUFBSSxFQUFFLFVBQVU7Z0JBQ2hCLE9BQU8sRUFBRSxRQUFRLENBQUMsT0FBTztnQkFDekIsT0FBTyxFQUFFLEdBQUcsRUFBRTtvQkFDVixJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ2xDLENBQUM7Z0JBQ0QsYUFBYSxFQUFFLEdBQUcsRUFBRTtvQkFDbEIsT0FBTyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsQ0FBQztnQkFDaEMsQ0FBQzthQUNGLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxlQUFlLENBQUMsQ0FBQztRQUNqQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsR0FBRztZQUM3QixTQUFTLEVBQUUsSUFBSTtZQUNmLElBQUksRUFBRSxJQUFJO1lBQ1YsT0FBTztTQUNSLENBQUM7SUFDSixDQUFDO0lBQ08sMkNBQTJDO1FBQ2pELE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxNQUE0QixFQUFFLEVBQUU7WUFDeEQsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLFdBQVcsS0FBSyxJQUFJLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxlQUFlLEtBQUssSUFBSSxDQUFDO1FBQ3BGLENBQUMsQ0FBQztRQUNGLE9BQU8sSUFBSSxtQ0FBbUMsQ0FBQyxFQUFDLGdCQUFnQixFQUFtQyxDQUFDLENBQUM7SUFDdkcsQ0FBQzs7c0ZBaEpVLG1CQUFtQjt5RUFBbkIsbUJBQW1CLFdBQW5CLG1CQUFtQixtQkFGbEIsTUFBTTt1RkFFUCxtQkFBbUI7Y0FIL0IsVUFBVTtlQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtcclxuICBBY3Rpb25TdG9yZSxcclxuICBFbnRpdHlUYWJsZVRlbXBsYXRlLFxyXG4gIEVudGl0eVN0b3JlRmlsdGVyQ3VzdG9tRnVuY1N0cmF0ZWd5LFxyXG4gIEVudGl0eVJlY29yZCxcclxuICBFbnRpdHlTdG9yZVN0cmF0ZWd5RnVuY09wdGlvbnMsXHJcbiAgRW50aXR5U3RvcmVGaWx0ZXJTZWxlY3Rpb25TdHJhdGVneSxcclxuICBFbnRpdHlUYWJsZUNvbHVtblJlbmRlcmVyXHJcbn0gZnJvbSAnQGlnbzIvY29tbW9uJztcclxuXHJcbmltcG9ydCB7XHJcbiAgRmVhdHVyZVN0b3JlLFxyXG4gIEZlYXR1cmVTdG9yZUxvYWRpbmdMYXllclN0cmF0ZWd5LFxyXG4gIEZlYXR1cmVTdG9yZVNlbGVjdGlvblN0cmF0ZWd5LFxyXG4gIEZlYXR1cmVTdG9yZUluTWFwRXh0ZW50U3RyYXRlZ3ksXHJcbiAgRmVhdHVyZSxcclxuICBGZWF0dXJlTW90aW9uLFxyXG4gIEZlYXR1cmVTdG9yZUluTWFwUmVzb2x1dGlvblN0cmF0ZWd5XHJcbn0gZnJvbSAnLi4vLi4vZmVhdHVyZSc7XHJcbmltcG9ydCB7IFZlY3RvckxheWVyIH0gZnJvbSAnLi4vLi4vbGF5ZXInO1xyXG5pbXBvcnQgeyBHZW9Xb3Jrc3BhY2VPcHRpb25zIH0gZnJvbSAnLi4vLi4vbGF5ZXIvc2hhcmVkL2xheWVycy9sYXllci5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBJZ29NYXAgfSBmcm9tICcuLi8uLi9tYXAnO1xyXG5pbXBvcnQgeyBTb3VyY2VGaWVsZHNPcHRpb25zUGFyYW1zLCBGZWF0dXJlRGF0YVNvdXJjZSwgUmVsYXRpb25PcHRpb25zIH0gZnJvbSAnLi4vLi4vZGF0YXNvdXJjZSc7XHJcbmltcG9ydCB7IGdldENvbW1vblZlY3RvclNlbGVjdGVkU3R5bGV9IGZyb20gJy4uLy4uL3V0aWxzJztcclxuXHJcbmltcG9ydCB7IFdmc1dvcmtzcGFjZSB9IGZyb20gJy4vd2ZzLXdvcmtzcGFjZSc7XHJcbmltcG9ydCB7IHNraXBXaGlsZSwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgU3RvcmFnZVNlcnZpY2UsIENvbmZpZ1NlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlJztcclxuaW1wb3J0IG9sRmVhdHVyZSBmcm9tICdvbC9GZWF0dXJlJztcclxuaW1wb3J0IHR5cGUgeyBkZWZhdWx0IGFzIE9sR2VvbWV0cnkgfSBmcm9tICdvbC9nZW9tL0dlb21ldHJ5JztcclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgV2ZzV29ya3NwYWNlU2VydmljZSB7XHJcblxyXG4gIGdldCB6b29tQXV0bygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldCgnem9vbUF1dG8nKSBhcyBib29sZWFuO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHdzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPih1bmRlZmluZWQpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHN0b3JhZ2VTZXJ2aWNlOiBTdG9yYWdlU2VydmljZSwgcHJpdmF0ZSBjb25maWdTZXJ2aWNlOiBDb25maWdTZXJ2aWNlKSB7fVxyXG5cclxuICBjcmVhdGVXb3Jrc3BhY2UobGF5ZXI6IFZlY3RvckxheWVyLCBtYXA6IElnb01hcCk6IFdmc1dvcmtzcGFjZSB7XHJcbiAgICBpZiAobGF5ZXIub3B0aW9ucy53b3Jrc3BhY2U/LmVuYWJsZWQgPT09IGZhbHNlIHx8IGxheWVyLmRhdGFTb3VyY2Uub3B0aW9ucy5lZGl0aW9uKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBsYXllci5vcHRpb25zLndvcmtzcGFjZSA9IE9iamVjdC5hc3NpZ24oe30sIGxheWVyLm9wdGlvbnMud29ya3NwYWNlLFxyXG4gICAgICB7XHJcbiAgICAgICAgc3JjSWQ6IGxheWVyLmlkLFxyXG4gICAgICAgIHdvcmtzcGFjZUlkOiBsYXllci5pZCxcclxuICAgICAgICBlbmFibGVkOiB0cnVlXHJcbiAgICAgIH0gYXMgR2VvV29ya3NwYWNlT3B0aW9ucyk7XHJcblxyXG4gICAgY29uc3Qgd2tzID0gbmV3IFdmc1dvcmtzcGFjZSh7XHJcbiAgICAgIGlkOiBsYXllci5pZCxcclxuICAgICAgdGl0bGU6IGxheWVyLnRpdGxlLFxyXG4gICAgICBsYXllcixcclxuICAgICAgbWFwLFxyXG4gICAgICBlbnRpdHlTdG9yZTogdGhpcy5jcmVhdGVGZWF0dXJlU3RvcmUobGF5ZXIsIG1hcCksXHJcbiAgICAgIGFjdGlvblN0b3JlOiBuZXcgQWN0aW9uU3RvcmUoW10pLFxyXG4gICAgICBtZXRhOiB7XHJcbiAgICAgICAgdGFibGVUZW1wbGF0ZTogdW5kZWZpbmVkXHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgdGhpcy5jcmVhdGVUYWJsZVRlbXBsYXRlKHdrcywgbGF5ZXIpO1xyXG4gICAgcmV0dXJuIHdrcztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlRmVhdHVyZVN0b3JlKGxheWVyOiBWZWN0b3JMYXllciwgbWFwOiBJZ29NYXApOiBGZWF0dXJlU3RvcmUge1xyXG4gICAgY29uc3Qgc3RvcmUgPSBuZXcgRmVhdHVyZVN0b3JlKFtdLCB7bWFwfSk7XHJcbiAgICBzdG9yZS5iaW5kTGF5ZXIobGF5ZXIpO1xyXG5cclxuICAgIGNvbnN0IGxvYWRpbmdTdHJhdGVneSA9IG5ldyBGZWF0dXJlU3RvcmVMb2FkaW5nTGF5ZXJTdHJhdGVneSh7fSk7XHJcbiAgICBjb25zdCBpbk1hcEV4dGVudFN0cmF0ZWd5ID0gbmV3IEZlYXR1cmVTdG9yZUluTWFwRXh0ZW50U3RyYXRlZ3koe30pO1xyXG4gICAgY29uc3QgaW5NYXBSZXNvbHV0aW9uU3RyYXRlZ3kgPSBuZXcgRmVhdHVyZVN0b3JlSW5NYXBSZXNvbHV0aW9uU3RyYXRlZ3koe30pO1xyXG4gICAgY29uc3Qgc2VsZWN0ZWRSZWNvcmRTdHJhdGVneSA9IG5ldyBFbnRpdHlTdG9yZUZpbHRlclNlbGVjdGlvblN0cmF0ZWd5KHt9KTtcclxuICAgIGNvbnN0IGNvbmZRdWVyeU92ZXJsYXlTdHlsZT0gdGhpcy5jb25maWdTZXJ2aWNlLmdldENvbmZpZygncXVlcnlPdmVybGF5U3R5bGUnKTtcclxuXHJcbiAgICBjb25zdCBzZWxlY3Rpb25TdHJhdGVneSA9IG5ldyBGZWF0dXJlU3RvcmVTZWxlY3Rpb25TdHJhdGVneSh7XHJcbiAgICAgIGxheWVyOiBuZXcgVmVjdG9yTGF5ZXIoe1xyXG4gICAgICAgIHpJbmRleDogMzAwLFxyXG4gICAgICAgIHNvdXJjZTogbmV3IEZlYXR1cmVEYXRhU291cmNlKCksXHJcbiAgICAgICAgc3R5bGU6IChmZWF0dXJlKSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4gZ2V0Q29tbW9uVmVjdG9yU2VsZWN0ZWRTdHlsZShPYmplY3QuYXNzaWduKHt9LCB7ZmVhdHVyZX0sIGNvbmZRdWVyeU92ZXJsYXlTdHlsZS5zZWxlY3Rpb24gfHwge30pKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIHNob3dJbkxheWVyTGlzdDogZmFsc2UsXHJcbiAgICAgICAgZXhwb3J0YWJsZTogZmFsc2UsXHJcbiAgICAgICAgYnJvd3NhYmxlOiBmYWxzZVxyXG4gICAgICB9KSxcclxuICAgICAgbWFwLFxyXG4gICAgICBoaXRUb2xlcmFuY2U6IDE1LFxyXG4gICAgICBtb3Rpb246IHRoaXMuem9vbUF1dG8gPyBGZWF0dXJlTW90aW9uLkRlZmF1bHQgOiBGZWF0dXJlTW90aW9uLk5vbmUsXHJcbiAgICAgIG1hbnk6IHRydWUsXHJcbiAgICAgIGRyYWdCb3g6IHRydWVcclxuICAgIH0pO1xyXG4gICAgc3RvcmUuYWRkU3RyYXRlZ3kobG9hZGluZ1N0cmF0ZWd5LCB0cnVlKTtcclxuICAgIHN0b3JlLmFkZFN0cmF0ZWd5KGluTWFwRXh0ZW50U3RyYXRlZ3ksIHRydWUpO1xyXG4gICAgc3RvcmUuYWRkU3RyYXRlZ3koaW5NYXBSZXNvbHV0aW9uU3RyYXRlZ3ksIHRydWUpO1xyXG4gICAgc3RvcmUuYWRkU3RyYXRlZ3koc2VsZWN0aW9uU3RyYXRlZ3ksIHRydWUpO1xyXG4gICAgc3RvcmUuYWRkU3RyYXRlZ3koc2VsZWN0ZWRSZWNvcmRTdHJhdGVneSwgZmFsc2UpO1xyXG4gICAgc3RvcmUuYWRkU3RyYXRlZ3kodGhpcy5jcmVhdGVGaWx0ZXJJbk1hcEV4dGVudE9yUmVzb2x1dGlvblN0cmF0ZWd5KCksIHRydWUpO1xyXG4gICAgcmV0dXJuIHN0b3JlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVUYWJsZVRlbXBsYXRlKHdvcmtzcGFjZTogV2ZzV29ya3NwYWNlLCBsYXllcjogVmVjdG9yTGF5ZXIpOiBFbnRpdHlUYWJsZVRlbXBsYXRlIHtcclxuICAgIGNvbnN0IGZpZWxkcyA9IGxheWVyLmRhdGFTb3VyY2Uub3B0aW9ucy5zb3VyY2VGaWVsZHMgfHwgW107XHJcblxyXG4gICAgY29uc3QgcmVsYXRpb25zID0gbGF5ZXIuZGF0YVNvdXJjZS5vcHRpb25zLnJlbGF0aW9ucyB8fCBbXTtcclxuXHJcbiAgICBpZiAoZmllbGRzLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICB3b3Jrc3BhY2UuZW50aXR5U3RvcmUuZW50aXRpZXMkLnBpcGUoXHJcbiAgICAgICAgc2tpcFdoaWxlKHZhbCA9PiB2YWwubGVuZ3RoID09PSAwKSxcclxuICAgICAgICB0YWtlKDEpXHJcbiAgICAgICkuc3Vic2NyaWJlKGVudGl0aWVzID0+IHtcclxuICAgICAgICBjb25zdCBvbCA9IChlbnRpdGllc1swXSBhcyBGZWF0dXJlKS5vbCBhcyBvbEZlYXR1cmU8T2xHZW9tZXRyeT47XHJcbiAgICAgICAgY29uc3QgY29sdW1uc0Zyb21GZWF0dXJlcyA9IG9sLmdldEtleXMoKVxyXG4gICAgICAgIC5maWx0ZXIoXHJcbiAgICAgICAgICBjb2wgPT4gIWNvbC5zdGFydHNXaXRoKCdfJykgJiZcclxuICAgICAgICAgIGNvbCAhPT0gJ2dlb21ldHJ5JyAmJlxyXG4gICAgICAgICAgY29sICE9PSBvbC5nZXRHZW9tZXRyeU5hbWUoKSAmJlxyXG4gICAgICAgICAgIWNvbC5tYXRjaCgvYm91bmRlZGJ5L2dpKSlcclxuICAgICAgICAubWFwKGtleSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBuYW1lOiBgcHJvcGVydGllcy4ke2tleX1gLFxyXG4gICAgICAgICAgICB0aXRsZToga2V5LFxyXG4gICAgICAgICAgICByZW5kZXJlcjogRW50aXR5VGFibGVDb2x1bW5SZW5kZXJlci5VbnNhbml0aXplZEhUTUxcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgd29ya3NwYWNlLm1ldGEudGFibGVUZW1wbGF0ZSA9IHtcclxuICAgICAgICAgIHNlbGVjdGlvbjogdHJ1ZSxcclxuICAgICAgICAgIHNvcnQ6IHRydWUsXHJcbiAgICAgICAgICBjb2x1bW5zOiBjb2x1bW5zRnJvbUZlYXR1cmVzXHJcbiAgICAgICAgfTtcclxuICAgICAgfSk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnN0IGNvbHVtbnMgPSBmaWVsZHMubWFwKChmaWVsZDogU291cmNlRmllbGRzT3B0aW9uc1BhcmFtcykgPT4ge1xyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIG5hbWU6IGBwcm9wZXJ0aWVzLiR7ZmllbGQubmFtZX1gLFxyXG4gICAgICAgIHRpdGxlOiBmaWVsZC5hbGlhcyA/IGZpZWxkLmFsaWFzIDogZmllbGQubmFtZSxcclxuICAgICAgICByZW5kZXJlcjogRW50aXR5VGFibGVDb2x1bW5SZW5kZXJlci5VbnNhbml0aXplZEhUTUwsXHJcbiAgICAgICAgdG9vbHRpcDogZmllbGQudG9vbHRpcFxyXG4gICAgICB9O1xyXG4gICAgfSk7XHJcblxyXG4gICAgY29uc3QgcmVsYXRpb25zQ29sdW1uID0gcmVsYXRpb25zLm1hcCgocmVsYXRpb246IFJlbGF0aW9uT3B0aW9ucykgPT4ge1xyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIG5hbWU6IGBwcm9wZXJ0aWVzLiR7cmVsYXRpb24ubmFtZX1gLFxyXG4gICAgICAgIHRpdGxlOiByZWxhdGlvbi5hbGlhcyA/IHJlbGF0aW9uLmFsaWFzIDogcmVsYXRpb24ubmFtZSxcclxuICAgICAgICByZW5kZXJlcjogRW50aXR5VGFibGVDb2x1bW5SZW5kZXJlci5JY29uLFxyXG4gICAgICAgIGljb246IHJlbGF0aW9uLmljb24sXHJcbiAgICAgICAgcGFyZW50OiByZWxhdGlvbi5wYXJlbnQsXHJcbiAgICAgICAgdHlwZTogJ3JlbGF0aW9uJyxcclxuICAgICAgICB0b29sdGlwOiByZWxhdGlvbi50b29sdGlwLFxyXG4gICAgICAgIG9uQ2xpY2s6ICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy53cyQubmV4dChyZWxhdGlvbi50aXRsZSk7XHJcbiAgICAgICAgfSxcclxuICAgICAgICBjZWxsQ2xhc3NGdW5jOiAoKSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4geyAnY2xhc3NfaWNvbic6IHRydWUgfTtcclxuICAgICAgICB9XHJcbiAgICAgIH07XHJcbiAgICB9KTtcclxuXHJcbiAgICBjb2x1bW5zLnB1c2goLi4ucmVsYXRpb25zQ29sdW1uKTtcclxuICAgIHdvcmtzcGFjZS5tZXRhLnRhYmxlVGVtcGxhdGUgPSB7XHJcbiAgICAgIHNlbGVjdGlvbjogdHJ1ZSxcclxuICAgICAgc29ydDogdHJ1ZSxcclxuICAgICAgY29sdW1uc1xyXG4gICAgfTtcclxuICB9XHJcbiAgcHJpdmF0ZSBjcmVhdGVGaWx0ZXJJbk1hcEV4dGVudE9yUmVzb2x1dGlvblN0cmF0ZWd5KCk6IEVudGl0eVN0b3JlRmlsdGVyQ3VzdG9tRnVuY1N0cmF0ZWd5IHtcclxuICAgIGNvbnN0IGZpbHRlckNsYXVzZUZ1bmMgPSAocmVjb3JkOiBFbnRpdHlSZWNvcmQ8b2JqZWN0PikgPT4ge1xyXG4gICAgICByZXR1cm4gcmVjb3JkLnN0YXRlLmluTWFwRXh0ZW50ID09PSB0cnVlICYmIHJlY29yZC5zdGF0ZS5pbk1hcFJlc29sdXRpb24gPT09IHRydWU7XHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIG5ldyBFbnRpdHlTdG9yZUZpbHRlckN1c3RvbUZ1bmNTdHJhdGVneSh7ZmlsdGVyQ2xhdXNlRnVuY30gYXMgRW50aXR5U3RvcmVTdHJhdGVneUZ1bmNPcHRpb25zKTtcclxuICB9XHJcbn1cclxuIl19
|