@igo2/geo 18.0.0 → 18.0.1-next.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/igo2-geo.mjs +684 -709
- package/fesm2022/igo2-geo.mjs.map +1 -1
- package/lib/offline/geoDB/geoDB.service.d.ts +1 -1
- package/lib/offline/layerDB/layerDB.service.d.ts +1 -1
- package/lib/style/style-list/style-list.provider.d.ts +1 -8
- package/lib/style/style-list/style-list.service.d.ts +1 -1
- package/package.json +15 -17
- package/src/lib/layer/layer-list/layer-list.theme.scss +2 -1
- package/src/lib/map/menu-button/menu-button.theming.scss +3 -3
- package/src/style/style.scss +1 -1
- package/esm2022/igo2-geo.mjs +0 -5
- package/esm2022/lib/catalog/catalog-browser/catalog-browser-group.component.mjs +0 -234
- package/esm2022/lib/catalog/catalog-browser/catalog-browser-layer.component.mjs +0 -272
- package/esm2022/lib/catalog/catalog-browser/catalog-browser.component.mjs +0 -246
- package/esm2022/lib/catalog/catalog-browser/catalog-browser.module.mjs +0 -19
- package/esm2022/lib/catalog/catalog-library/add-catalog-dialog.component.mjs +0 -136
- package/esm2022/lib/catalog/catalog-library/catalog-library-item.component.mjs +0 -60
- package/esm2022/lib/catalog/catalog-library/catalog-library.component.mjs +0 -232
- package/esm2022/lib/catalog/catalog-library/catalog-library.module.mjs +0 -24
- package/esm2022/lib/catalog/catalog-library/index.mjs +0 -4
- package/esm2022/lib/catalog/catalog.module.mjs +0 -26
- package/esm2022/lib/catalog/index.mjs +0 -6
- package/esm2022/lib/catalog/shared/catalog.abstract.mjs +0 -32
- package/esm2022/lib/catalog/shared/catalog.enum.mjs +0 -16
- package/esm2022/lib/catalog/shared/catalog.interface.mjs +0 -2
- package/esm2022/lib/catalog/shared/catalog.service.mjs +0 -706
- package/esm2022/lib/catalog/shared/catalogs.mjs +0 -75
- package/esm2022/lib/catalog/shared/index.mjs +0 -5
- package/esm2022/lib/datasource/index.mjs +0 -3
- package/esm2022/lib/datasource/shared/capabilities.interface.mjs +0 -17
- package/esm2022/lib/datasource/shared/capabilities.service.mjs +0 -441
- package/esm2022/lib/datasource/shared/datasource.service.mjs +0 -258
- package/esm2022/lib/datasource/shared/datasources/any-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/any-datasource.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/arcgisrest-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/arcgisrest-datasource.mjs +0 -222
- package/esm2022/lib/datasource/shared/datasources/carto-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/carto-datasource.mjs +0 -118
- package/esm2022/lib/datasource/shared/datasources/cluster-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/cluster-datasource.mjs +0 -24
- package/esm2022/lib/datasource/shared/datasources/data.service.mjs +0 -3
- package/esm2022/lib/datasource/shared/datasources/datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/datasource.mjs +0 -41
- package/esm2022/lib/datasource/shared/datasources/feature-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/feature-datasource.mjs +0 -52
- package/esm2022/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/imagearcgisrest-datasource.mjs +0 -70
- package/esm2022/lib/datasource/shared/datasources/index.mjs +0 -36
- package/esm2022/lib/datasource/shared/datasources/mvt-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/mvt-datasource.mjs +0 -33
- package/esm2022/lib/datasource/shared/datasources/osm-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/osm-datasource.mjs +0 -14
- package/esm2022/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/tilearcgisrest-datasource.mjs +0 -60
- package/esm2022/lib/datasource/shared/datasources/tiledebug-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/tiledebug-datasource.mjs +0 -17
- package/esm2022/lib/datasource/shared/datasources/websocket-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/websocket-datasource.mjs +0 -56
- package/esm2022/lib/datasource/shared/datasources/wfs-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/wfs-datasource.mjs +0 -137
- package/esm2022/lib/datasource/shared/datasources/wfs.service.mjs +0 -170
- package/esm2022/lib/datasource/shared/datasources/wms-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/wms-datasource.mjs +0 -227
- package/esm2022/lib/datasource/shared/datasources/wms-wfs.utils.mjs +0 -224
- package/esm2022/lib/datasource/shared/datasources/wmts-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/wmts-datasource.mjs +0 -18
- package/esm2022/lib/datasource/shared/datasources/xyz-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/xyz-datasource.mjs +0 -11
- package/esm2022/lib/datasource/shared/index.mjs +0 -6
- package/esm2022/lib/datasource/shared/options/index.mjs +0 -5
- package/esm2022/lib/datasource/shared/options/options-api.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/options/options-api.providers.mjs +0 -15
- package/esm2022/lib/datasource/shared/options/options-api.service.mjs +0 -85
- package/esm2022/lib/datasource/shared/options/options.service.mjs +0 -3
- package/esm2022/lib/datasource/utils/index.mjs +0 -2
- package/esm2022/lib/datasource/utils/tilegrid.mjs +0 -20
- package/esm2022/lib/directions/directions-buttons/directions-buttons.component.mjs +0 -246
- package/esm2022/lib/directions/directions-buttons/index.mjs +0 -2
- package/esm2022/lib/directions/directions-inputs/directions-inputs.component.mjs +0 -312
- package/esm2022/lib/directions/directions-inputs/index.mjs +0 -2
- package/esm2022/lib/directions/directions-results/directions-results.component.mjs +0 -192
- package/esm2022/lib/directions/directions-results/index.mjs +0 -2
- package/esm2022/lib/directions/directions-sources/directions-source.interface.mjs +0 -5
- package/esm2022/lib/directions/directions-sources/directions-source.mjs +0 -3
- package/esm2022/lib/directions/directions-sources/directions-source.provider.mjs +0 -23
- package/esm2022/lib/directions/directions-sources/index.mjs +0 -5
- package/esm2022/lib/directions/directions-sources/osrm-directions-source.mjs +0 -159
- package/esm2022/lib/directions/directions.component.mjs +0 -437
- package/esm2022/lib/directions/directions.module.mjs +0 -46
- package/esm2022/lib/directions/directions.provider.mjs +0 -16
- package/esm2022/lib/directions/index.mjs +0 -8
- package/esm2022/lib/directions/shared/directions-source.service.mjs +0 -18
- package/esm2022/lib/directions/shared/directions.enum.mjs +0 -72
- package/esm2022/lib/directions/shared/directions.interface.mjs +0 -2
- package/esm2022/lib/directions/shared/directions.service.mjs +0 -239
- package/esm2022/lib/directions/shared/directions.utils.mjs +0 -522
- package/esm2022/lib/directions/shared/index.mjs +0 -6
- package/esm2022/lib/directions/shared/store.mjs +0 -21
- package/esm2022/lib/download/download-button/download-button.component.mjs +0 -48
- package/esm2022/lib/download/download-button/index.mjs +0 -2
- package/esm2022/lib/download/download.module.mjs +0 -24
- package/esm2022/lib/download/index.mjs +0 -3
- package/esm2022/lib/download/shared/download.interface.mjs +0 -2
- package/esm2022/lib/download/shared/download.service.mjs +0 -67
- package/esm2022/lib/download/shared/index.mjs +0 -3
- package/esm2022/lib/draw/draw/draw-layer-popup.component.mjs +0 -42
- package/esm2022/lib/draw/draw/draw-popup.component.mjs +0 -421
- package/esm2022/lib/draw/draw/draw-shorcuts.component.mjs +0 -28
- package/esm2022/lib/draw/draw/draw.component.mjs +0 -1136
- package/esm2022/lib/draw/draw/draw.module.mjs +0 -19
- package/esm2022/lib/draw/drawingTool.module.mjs +0 -18
- package/esm2022/lib/draw/index.mjs +0 -3
- package/esm2022/lib/draw/shared/draw-icon.service.mjs +0 -30
- package/esm2022/lib/draw/shared/draw.enum.mjs +0 -21
- package/esm2022/lib/draw/shared/draw.interface.mjs +0 -2
- package/esm2022/lib/draw/shared/draw.utils.mjs +0 -125
- package/esm2022/lib/draw/shared/index.mjs +0 -5
- package/esm2022/lib/environment/environment.interface.mjs +0 -2
- package/esm2022/lib/environment/index.mjs +0 -2
- package/esm2022/lib/feature/feature-details/feature-details.component.mjs +0 -306
- package/esm2022/lib/feature/feature-details/feature-details.directive.mjs +0 -56
- package/esm2022/lib/feature/feature-details/feature-details.module.mjs +0 -26
- package/esm2022/lib/feature/feature-details/index.mjs +0 -4
- package/esm2022/lib/feature/feature-form/feature-form.component.mjs +0 -101
- package/esm2022/lib/feature/feature-form/feature-form.module.mjs +0 -19
- package/esm2022/lib/feature/feature.module.mjs +0 -26
- package/esm2022/lib/feature/index.mjs +0 -5
- package/esm2022/lib/feature/shared/feature-store.utils.mjs +0 -28
- package/esm2022/lib/feature/shared/feature.enums.mjs +0 -9
- package/esm2022/lib/feature/shared/feature.interfaces.mjs +0 -2
- package/esm2022/lib/feature/shared/feature.utils.mjs +0 -332
- package/esm2022/lib/feature/shared/index.mjs +0 -8
- package/esm2022/lib/feature/shared/store.mjs +0 -143
- package/esm2022/lib/feature/shared/strategies/geo-properties.mjs +0 -216
- package/esm2022/lib/feature/shared/strategies/in-map-extent.mjs +0 -119
- package/esm2022/lib/feature/shared/strategies/in-map-resolution.mjs +0 -99
- package/esm2022/lib/feature/shared/strategies/index.mjs +0 -8
- package/esm2022/lib/feature/shared/strategies/loading-layer.mjs +0 -103
- package/esm2022/lib/feature/shared/strategies/loading.mjs +0 -136
- package/esm2022/lib/feature/shared/strategies/search.mjs +0 -158
- package/esm2022/lib/feature/shared/strategies/selection.mjs +0 -385
- package/esm2022/lib/feature/shared/strategies.utils.mjs +0 -37
- package/esm2022/lib/filter/filter.module.mjs +0 -131
- package/esm2022/lib/filter/index.mjs +0 -17
- package/esm2022/lib/filter/ogc-filter-button/index.mjs +0 -2
- package/esm2022/lib/filter/ogc-filter-button/ogc-filter-button.component.mjs +0 -141
- package/esm2022/lib/filter/ogc-filter-form/index.mjs +0 -2
- package/esm2022/lib/filter/ogc-filter-form/ogc-filter-form.component.mjs +0 -325
- package/esm2022/lib/filter/ogc-filter-selection/index.mjs +0 -2
- package/esm2022/lib/filter/ogc-filter-selection/ogc-filter-selection.component.mjs +0 -787
- package/esm2022/lib/filter/ogc-filter-time/index.mjs +0 -3
- package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.mjs +0 -201
- package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time.component.mjs +0 -665
- package/esm2022/lib/filter/ogc-filterable-form/index.mjs +0 -2
- package/esm2022/lib/filter/ogc-filterable-form/ogc-filterable-form.component.mjs +0 -66
- package/esm2022/lib/filter/ogc-filterable-item/index.mjs +0 -2
- package/esm2022/lib/filter/ogc-filterable-item/ogc-filterable-item.component.mjs +0 -244
- package/esm2022/lib/filter/ogc-filterable-list/index.mjs +0 -3
- package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.mjs +0 -39
- package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list.component.mjs +0 -32
- package/esm2022/lib/filter/shared/filterable-datasource.pipe.mjs +0 -63
- package/esm2022/lib/filter/shared/index.mjs +0 -12
- package/esm2022/lib/filter/shared/ogc-filter-time.service.mjs +0 -72
- package/esm2022/lib/filter/shared/ogc-filter.enum.mjs +0 -30
- package/esm2022/lib/filter/shared/ogc-filter.interface.mjs +0 -2
- package/esm2022/lib/filter/shared/ogc-filter.mjs +0 -756
- package/esm2022/lib/filter/shared/ogc-filter.service.mjs +0 -47
- package/esm2022/lib/filter/shared/spatial-filter.enum.mjs +0 -23
- package/esm2022/lib/filter/shared/spatial-filter.interface.mjs +0 -2
- package/esm2022/lib/filter/shared/spatial-filter.service.mjs +0 -282
- package/esm2022/lib/filter/shared/time-filter.enum.mjs +0 -13
- package/esm2022/lib/filter/shared/time-filter.interface.mjs +0 -2
- package/esm2022/lib/filter/shared/time-filter.service.mjs +0 -107
- package/esm2022/lib/filter/spatial-filter/spatial-filter-item/index.mjs +0 -2
- package/esm2022/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.mjs +0 -875
- package/esm2022/lib/filter/spatial-filter/spatial-filter-list/index.mjs +0 -2
- package/esm2022/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.mjs +0 -191
- package/esm2022/lib/filter/spatial-filter/spatial-filter-type/index.mjs +0 -2
- package/esm2022/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.mjs +0 -120
- package/esm2022/lib/filter/time-filter-button/index.mjs +0 -2
- package/esm2022/lib/filter/time-filter-button/time-filter-button.component.mjs +0 -70
- package/esm2022/lib/filter/time-filter-form/index.mjs +0 -2
- package/esm2022/lib/filter/time-filter-form/time-filter-form.component.mjs +0 -537
- package/esm2022/lib/filter/time-filter-item/index.mjs +0 -2
- package/esm2022/lib/filter/time-filter-item/time-filter-item.component.mjs +0 -90
- package/esm2022/lib/filter/time-filter-list/index.mjs +0 -3
- package/esm2022/lib/filter/time-filter-list/time-filter-list-binding.directive.mjs +0 -39
- package/esm2022/lib/filter/time-filter-list/time-filter-list.component.mjs +0 -24
- package/esm2022/lib/geo.module.mjs +0 -63
- package/esm2022/lib/geometry/geometry-form-field/geometry-form-field-input.component.mjs +0 -559
- package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.component.mjs +0 -170
- package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.module.mjs +0 -24
- package/esm2022/lib/geometry/geometry-form-field/index.mjs +0 -4
- package/esm2022/lib/geometry/geometry.module.mjs +0 -18
- package/esm2022/lib/geometry/index.mjs +0 -3
- package/esm2022/lib/geometry/shared/controls/draw.mjs +0 -340
- package/esm2022/lib/geometry/shared/controls/index.mjs +0 -4
- package/esm2022/lib/geometry/shared/controls/modify.mjs +0 -538
- package/esm2022/lib/geometry/shared/controls/slice.mjs +0 -190
- package/esm2022/lib/geometry/shared/geometry.errors.mjs +0 -24
- package/esm2022/lib/geometry/shared/geometry.interfaces.mjs +0 -2
- package/esm2022/lib/geometry/shared/geometry.utils.mjs +0 -113
- package/esm2022/lib/geometry/shared/index.mjs +0 -5
- package/esm2022/lib/import-export/export-button/export-button.component.mjs +0 -49
- package/esm2022/lib/import-export/export-button/index.mjs +0 -2
- package/esm2022/lib/import-export/import-export/import-export.component.mjs +0 -876
- package/esm2022/lib/import-export/import-export/index.mjs +0 -2
- package/esm2022/lib/import-export/import-export.module.mjs +0 -31
- package/esm2022/lib/import-export/index.mjs +0 -5
- package/esm2022/lib/import-export/shared/drop-geo-file.directive.mjs +0 -114
- package/esm2022/lib/import-export/shared/export.errors.mjs +0 -15
- package/esm2022/lib/import-export/shared/export.interface.mjs +0 -2
- package/esm2022/lib/import-export/shared/export.service.mjs +0 -378
- package/esm2022/lib/import-export/shared/export.type.mjs +0 -13
- package/esm2022/lib/import-export/shared/export.utils.mjs +0 -51
- package/esm2022/lib/import-export/shared/import.errors.mjs +0 -39
- package/esm2022/lib/import-export/shared/import.interface.mjs +0 -2
- package/esm2022/lib/import-export/shared/import.service.mjs +0 -221
- package/esm2022/lib/import-export/shared/import.utils.mjs +0 -203
- package/esm2022/lib/import-export/shared/index.mjs +0 -11
- package/esm2022/lib/layer/index.mjs +0 -16
- package/esm2022/lib/layer/layer-group/index.mjs +0 -2
- package/esm2022/lib/layer/layer-group/layer-group.component.mjs +0 -103
- package/esm2022/lib/layer/layer-item/index.mjs +0 -2
- package/esm2022/lib/layer/layer-item/layer-item.component.mjs +0 -196
- package/esm2022/lib/layer/layer-legend/index.mjs +0 -2
- package/esm2022/lib/layer/layer-legend/layer-legend.component.mjs +0 -287
- package/esm2022/lib/layer/layer-legend-item/index.mjs +0 -2
- package/esm2022/lib/layer/layer-legend-item/layer-legend-item.component.mjs +0 -85
- package/esm2022/lib/layer/layer-legend-list/index.mjs +0 -3
- package/esm2022/lib/layer/layer-legend-list/layer-legend-list-binding.directive.mjs +0 -54
- package/esm2022/lib/layer/layer-legend-list/layer-legend-list.component.mjs +0 -104
- package/esm2022/lib/layer/layer-list/index.mjs +0 -2
- package/esm2022/lib/layer/layer-list/layer-list.component.mjs +0 -232
- package/esm2022/lib/layer/layer-list-tool/index.mjs +0 -4
- package/esm2022/lib/layer/layer-list-tool/layer-list-tool.component.mjs +0 -92
- package/esm2022/lib/layer/layer-list-tool/layer-list-tool.interface.mjs +0 -7
- package/esm2022/lib/layer/layer-list-tool/layer-list-tool.service.mjs +0 -61
- package/esm2022/lib/layer/layer-search/index.mjs +0 -2
- package/esm2022/lib/layer/layer-search/layer-search.component.mjs +0 -65
- package/esm2022/lib/layer/layer-unavailable/index.mjs +0 -3
- package/esm2022/lib/layer/layer-unavailable/layer-unavailable-list/layer-unavailable-list.component.mjs +0 -25
- package/esm2022/lib/layer/layer-unavailable/layer-unavailable.component.mjs +0 -35
- package/esm2022/lib/layer/layer-viewer/index.mjs +0 -3
- package/esm2022/lib/layer/layer-viewer/layer-viewer.component.mjs +0 -226
- package/esm2022/lib/layer/layer-viewer/layer-viewer.interface.mjs +0 -2
- package/esm2022/lib/layer/layer-viewer-bottom-actions/index.mjs +0 -2
- package/esm2022/lib/layer/layer-viewer-bottom-actions/layer-viewer-bottom-actions.component.mjs +0 -207
- package/esm2022/lib/layer/layer-visibility-button/index.mjs +0 -2
- package/esm2022/lib/layer/layer-visibility-button/layer-visibility-button.component.mjs +0 -83
- package/esm2022/lib/layer/layer.module.mjs +0 -107
- package/esm2022/lib/layer/shared/clusterParam.mjs +0 -2
- package/esm2022/lib/layer/shared/index.mjs +0 -6
- package/esm2022/lib/layer/shared/layer-controller.mjs +0 -316
- package/esm2022/lib/layer/shared/layer-selection.mjs +0 -38
- package/esm2022/lib/layer/shared/layer.enums.mjs +0 -2
- package/esm2022/lib/layer/shared/layer.service.mjs +0 -315
- package/esm2022/lib/layer/shared/layers/any-layer.interface.mjs +0 -2
- package/esm2022/lib/layer/shared/layers/any-layer.mjs +0 -2
- package/esm2022/lib/layer/shared/layers/image-layer.interface.mjs +0 -2
- package/esm2022/lib/layer/shared/layers/image-layer.mjs +0 -75
- package/esm2022/lib/layer/shared/layers/index.mjs +0 -18
- package/esm2022/lib/layer/shared/layers/layer-base.mjs +0 -199
- package/esm2022/lib/layer/shared/layers/layer-group.interface.mjs +0 -2
- package/esm2022/lib/layer/shared/layers/layer-group.mjs +0 -120
- package/esm2022/lib/layer/shared/layers/layer.interface.mjs +0 -7
- package/esm2022/lib/layer/shared/layers/layer.mjs +0 -178
- package/esm2022/lib/layer/shared/layers/legend.interface.mjs +0 -2
- package/esm2022/lib/layer/shared/layers/linked/index.mjs +0 -4
- package/esm2022/lib/layer/shared/layers/linked/linked-layer.interface.mjs +0 -12
- package/esm2022/lib/layer/shared/layers/linked/linked-layer.mjs +0 -242
- package/esm2022/lib/layer/shared/layers/linked/linked-layer.utils.mjs +0 -70
- package/esm2022/lib/layer/shared/layers/tile-layer.interface.mjs +0 -2
- package/esm2022/lib/layer/shared/layers/tile-layer.mjs +0 -55
- package/esm2022/lib/layer/shared/layers/vector-layer.interface.mjs +0 -2
- package/esm2022/lib/layer/shared/layers/vector-layer.mjs +0 -576
- package/esm2022/lib/layer/shared/layers/vectortile-layer.interface.mjs +0 -2
- package/esm2022/lib/layer/shared/layers/vectortile-layer.mjs +0 -112
- package/esm2022/lib/layer/track-feature-button/index.mjs +0 -2
- package/esm2022/lib/layer/track-feature-button/track-feature-button.component.mjs +0 -54
- package/esm2022/lib/layer/utils/image-watcher.mjs +0 -62
- package/esm2022/lib/layer/utils/index.mjs +0 -6
- package/esm2022/lib/layer/utils/layer.utils.mjs +0 -57
- package/esm2022/lib/layer/utils/outputLegend.mjs +0 -32
- package/esm2022/lib/layer/utils/tile-watcher.mjs +0 -52
- package/esm2022/lib/layer/utils/vector-watcher.mjs +0 -50
- package/esm2022/lib/map/baselayers-switcher/baselayers-switcher.animation.mjs +0 -20
- package/esm2022/lib/map/baselayers-switcher/baselayers-switcher.component.mjs +0 -87
- package/esm2022/lib/map/baselayers-switcher/index.mjs +0 -3
- package/esm2022/lib/map/baselayers-switcher/mini-basemap.component.mjs +0 -122
- package/esm2022/lib/map/geolocate-button/geolocate-button.component.mjs +0 -78
- package/esm2022/lib/map/geolocate-button/index.mjs +0 -2
- package/esm2022/lib/map/home-extent-button/home-extent-button.component.mjs +0 -73
- package/esm2022/lib/map/home-extent-button/home-extent-button.interface.mjs +0 -2
- package/esm2022/lib/map/home-extent-button/index.mjs +0 -3
- package/esm2022/lib/map/index.mjs +0 -14
- package/esm2022/lib/map/info-section/index.mjs +0 -2
- package/esm2022/lib/map/info-section/info-section.component.mjs +0 -15
- package/esm2022/lib/map/map-browser/index.mjs +0 -2
- package/esm2022/lib/map/map-browser/map-browser.component.mjs +0 -67
- package/esm2022/lib/map/map-center/index.mjs +0 -2
- package/esm2022/lib/map/map-center/map-center.component.mjs +0 -56
- package/esm2022/lib/map/map.module.mjs +0 -89
- package/esm2022/lib/map/menu-button/index.mjs +0 -2
- package/esm2022/lib/map/menu-button/menu-button.component.mjs +0 -57
- package/esm2022/lib/map/offline-button/index.mjs +0 -2
- package/esm2022/lib/map/offline-button/offline-button.component.mjs +0 -53
- package/esm2022/lib/map/rotation-button/index.mjs +0 -2
- package/esm2022/lib/map/rotation-button/rotation-button.component.mjs +0 -58
- package/esm2022/lib/map/shared/controllers/controller.mjs +0 -44
- package/esm2022/lib/map/shared/controllers/geolocation.interface.mjs +0 -8
- package/esm2022/lib/map/shared/controllers/geolocation.mjs +0 -431
- package/esm2022/lib/map/shared/controllers/index.mjs +0 -5
- package/esm2022/lib/map/shared/controllers/view.mjs +0 -361
- package/esm2022/lib/map/shared/hover-feature.directive.mjs +0 -481
- package/esm2022/lib/map/shared/index.mjs +0 -15
- package/esm2022/lib/map/shared/linkedLayers.utils.mjs +0 -238
- package/esm2022/lib/map/shared/map-pointer-position.directive.mjs +0 -122
- package/esm2022/lib/map/shared/map.abstract.mjs +0 -24
- package/esm2022/lib/map/shared/map.enums.mjs +0 -6
- package/esm2022/lib/map/shared/map.interface.mjs +0 -2
- package/esm2022/lib/map/shared/map.mjs +0 -201
- package/esm2022/lib/map/shared/map.service.mjs +0 -29
- package/esm2022/lib/map/shared/map.utils.mjs +0 -455
- package/esm2022/lib/map/shared/mapOffline.directive.mjs +0 -114
- package/esm2022/lib/map/shared/projection.interfaces.mjs +0 -2
- package/esm2022/lib/map/shared/projection.service.mjs +0 -67
- package/esm2022/lib/map/shared/projection.utils.mjs +0 -122
- package/esm2022/lib/map/swipe-control/index.mjs +0 -2
- package/esm2022/lib/map/swipe-control/swipe-control.component.mjs +0 -211
- package/esm2022/lib/map/utils/index.mjs +0 -2
- package/esm2022/lib/map/utils/layer-watcher.mjs +0 -112
- package/esm2022/lib/map/wake-lock-button/index.mjs +0 -2
- package/esm2022/lib/map/wake-lock-button/wake-lock-button.component.mjs +0 -103
- package/esm2022/lib/map/zoom-button/index.mjs +0 -2
- package/esm2022/lib/map/zoom-button/zoom-button.component.mjs +0 -35
- package/esm2022/lib/measure/index.mjs +0 -3
- package/esm2022/lib/measure/measure.module.mjs +0 -20
- package/esm2022/lib/measure/measurer/index.mjs +0 -6
- package/esm2022/lib/measure/measurer/measure-format.pipe.mjs +0 -40
- package/esm2022/lib/measure/measurer/measurer-dialog.component.mjs +0 -38
- package/esm2022/lib/measure/measurer/measurer-item.component.mjs +0 -143
- package/esm2022/lib/measure/measurer/measurer.component.mjs +0 -948
- package/esm2022/lib/measure/measurer/measurer.module.mjs +0 -20
- package/esm2022/lib/measure/shared/index.mjs +0 -4
- package/esm2022/lib/measure/shared/measure.enum.mjs +0 -37
- package/esm2022/lib/measure/shared/measure.interfaces.mjs +0 -2
- package/esm2022/lib/measure/shared/measure.utils.mjs +0 -497
- package/esm2022/lib/metadata/index.mjs +0 -4
- package/esm2022/lib/metadata/metadata-button/index.mjs +0 -2
- package/esm2022/lib/metadata/metadata-button/metadata-button.component.mjs +0 -96
- package/esm2022/lib/metadata/metadata.module.mjs +0 -29
- package/esm2022/lib/metadata/shared/index.mjs +0 -3
- package/esm2022/lib/metadata/shared/metadata.interface.mjs +0 -2
- package/esm2022/lib/metadata/shared/metadata.service.mjs +0 -18
- package/esm2022/lib/offline/geoDB/configFileToGeoDB.service.mjs +0 -130
- package/esm2022/lib/offline/geoDB/geoDB.enums.mjs +0 -6
- package/esm2022/lib/offline/geoDB/geoDB.interface.mjs +0 -2
- package/esm2022/lib/offline/geoDB/geoDB.service.mjs +0 -172
- package/esm2022/lib/offline/geoDB/index.mjs +0 -5
- package/esm2022/lib/offline/index.mjs +0 -6
- package/esm2022/lib/offline/layerDB/index.mjs +0 -3
- package/esm2022/lib/offline/layerDB/layerDB.interface.mjs +0 -2
- package/esm2022/lib/offline/layerDB/layerDB.service.mjs +0 -83
- package/esm2022/lib/offline/offline.interface.mjs +0 -2
- package/esm2022/lib/offline/offline.provider.mjs +0 -50
- package/esm2022/lib/offline/shared/geo-network.service.mjs +0 -79
- package/esm2022/lib/offline/shared/index.mjs +0 -2
- package/esm2022/lib/overlay/index.mjs +0 -2
- package/esm2022/lib/overlay/shared/index.mjs +0 -4
- package/esm2022/lib/overlay/shared/overlay.enum.mjs +0 -8
- package/esm2022/lib/overlay/shared/overlay.mjs +0 -139
- package/esm2022/lib/overlay/shared/overlay.utils.mjs +0 -17
- package/esm2022/lib/print/index.mjs +0 -4
- package/esm2022/lib/print/print/print.component.mjs +0 -116
- package/esm2022/lib/print/print-form/index.mjs +0 -2
- package/esm2022/lib/print/print-form/print-form.component.mjs +0 -320
- package/esm2022/lib/print/print.module.mjs +0 -20
- package/esm2022/lib/print/shared/geopdf.mjs +0 -68
- package/esm2022/lib/print/shared/index.mjs +0 -5
- package/esm2022/lib/print/shared/print.interface.mjs +0 -2
- package/esm2022/lib/print/shared/print.service.mjs +0 -1136
- package/esm2022/lib/print/shared/print.type.mjs +0 -30
- package/esm2022/lib/query/index.mjs +0 -2
- package/esm2022/lib/query/query.module.mjs +0 -27
- package/esm2022/lib/query/shared/index.mjs +0 -8
- package/esm2022/lib/query/shared/query-search-source.mjs +0 -35
- package/esm2022/lib/query/shared/query-search-source.providers.mjs +0 -22
- package/esm2022/lib/query/shared/query.directive.mjs +0 -290
- package/esm2022/lib/query/shared/query.enums.mjs +0 -32
- package/esm2022/lib/query/shared/query.interfaces.mjs +0 -2
- package/esm2022/lib/query/shared/query.service.mjs +0 -753
- package/esm2022/lib/query/shared/query.utils.mjs +0 -45
- package/esm2022/lib/search/index.mjs +0 -10
- package/esm2022/lib/search/search-bar/search-bar.component.mjs +0 -483
- package/esm2022/lib/search/search-bar/search-bar.module.mjs +0 -19
- package/esm2022/lib/search/search-results/index.mjs +0 -5
- package/esm2022/lib/search/search-results/save-feature-dialog.component.mjs +0 -101
- package/esm2022/lib/search/search-results/search-results-add-button.component.mjs +0 -433
- package/esm2022/lib/search/search-results/search-results-item.component.mjs +0 -119
- package/esm2022/lib/search/search-results/search-results.component.mjs +0 -297
- package/esm2022/lib/search/search-results/search-results.directive.mjs +0 -7
- package/esm2022/lib/search/search-results/search-results.module.mjs +0 -20
- package/esm2022/lib/search/search-selector/search-selector.component.mjs +0 -118
- package/esm2022/lib/search/search-selector/search-selector.module.mjs +0 -19
- package/esm2022/lib/search/search-settings/search-settings.component.mjs +0 -264
- package/esm2022/lib/search/search-settings/search-settings.module.mjs +0 -19
- package/esm2022/lib/search/search.module.mjs +0 -77
- package/esm2022/lib/search/shared/index.mjs +0 -10
- package/esm2022/lib/search/shared/search-pointer-summary.directive.mjs +0 -328
- package/esm2022/lib/search/shared/search-source-service.providers.mjs +0 -20
- package/esm2022/lib/search/shared/search-source.service.mjs +0 -56
- package/esm2022/lib/search/shared/search.enums.mjs +0 -4
- package/esm2022/lib/search/shared/search.interfaces.mjs +0 -2
- package/esm2022/lib/search/shared/search.provider.mjs +0 -20
- package/esm2022/lib/search/shared/search.service.mjs +0 -149
- package/esm2022/lib/search/shared/search.utils.mjs +0 -92
- package/esm2022/lib/search/shared/sources/cadastre.mjs +0 -142
- package/esm2022/lib/search/shared/sources/cadastre.providers.mjs +0 -32
- package/esm2022/lib/search/shared/sources/coordinates.interfaces.mjs +0 -2
- package/esm2022/lib/search/shared/sources/coordinates.mjs +0 -168
- package/esm2022/lib/search/shared/sources/coordinates.providers.mjs +0 -52
- package/esm2022/lib/search/shared/sources/icherche-icons.mjs +0 -32
- package/esm2022/lib/search/shared/sources/icherche.interfaces.mjs +0 -2
- package/esm2022/lib/search/shared/sources/icherche.mjs +0 -816
- package/esm2022/lib/search/shared/sources/icherche.providers.mjs +0 -87
- package/esm2022/lib/search/shared/sources/ilayer.interfaces.mjs +0 -2
- package/esm2022/lib/search/shared/sources/ilayer.mjs +0 -339
- package/esm2022/lib/search/shared/sources/ilayer.providers.mjs +0 -58
- package/esm2022/lib/search/shared/sources/index.mjs +0 -23
- package/esm2022/lib/search/shared/sources/nominatim.interfaces.mjs +0 -2
- package/esm2022/lib/search/shared/sources/nominatim.mjs +0 -263
- package/esm2022/lib/search/shared/sources/nominatim.providers.mjs +0 -31
- package/esm2022/lib/search/shared/sources/source.interfaces.mjs +0 -13
- package/esm2022/lib/search/shared/sources/source.mjs +0 -221
- package/esm2022/lib/search/shared/sources/storedqueries.interfaces.mjs +0 -2
- package/esm2022/lib/search/shared/sources/storedqueries.mjs +0 -454
- package/esm2022/lib/search/shared/sources/storedqueries.providers.mjs +0 -56
- package/esm2022/lib/search/shared/sources/workspace.interfaces.mjs +0 -2
- package/esm2022/lib/search/shared/sources/workspace.mjs +0 -192
- package/esm2022/lib/search/shared/sources/workspace.providers.mjs +0 -31
- package/esm2022/lib/style/index.mjs +0 -5
- package/esm2022/lib/style/shared/datasource/esri-style-generator.mjs +0 -360
- package/esm2022/lib/style/shared/datasource/index.mjs +0 -2
- package/esm2022/lib/style/shared/feature/feature-style.mjs +0 -162
- package/esm2022/lib/style/shared/feature/index.mjs +0 -2
- package/esm2022/lib/style/shared/font.enum.mjs +0 -17
- package/esm2022/lib/style/shared/index.mjs +0 -5
- package/esm2022/lib/style/shared/overlay/index.mjs +0 -3
- package/esm2022/lib/style/shared/overlay/overlay-marker-style.utils.mjs +0 -39
- package/esm2022/lib/style/shared/overlay/overlay-style.utils.mjs +0 -88
- package/esm2022/lib/style/shared/vector/commonVectorStyle.mjs +0 -78
- package/esm2022/lib/style/shared/vector/conversion.utils.mjs +0 -27
- package/esm2022/lib/style/shared/vector/index.mjs +0 -4
- package/esm2022/lib/style/shared/vector/vector-style.interface.mjs +0 -2
- package/esm2022/lib/style/style-list/index.mjs +0 -5
- package/esm2022/lib/style/style-list/style-list.interface.mjs +0 -2
- package/esm2022/lib/style/style-list/style-list.module.mjs +0 -23
- package/esm2022/lib/style/style-list/style-list.provider.mjs +0 -21
- package/esm2022/lib/style/style-list/style-list.service.mjs +0 -52
- package/esm2022/lib/style/style-modal/drawing/index.mjs +0 -2
- package/esm2022/lib/style/style-modal/drawing/style-modal-drawing.component.mjs +0 -193
- package/esm2022/lib/style/style-modal/index.mjs +0 -5
- package/esm2022/lib/style/style-modal/layer/index.mjs +0 -2
- package/esm2022/lib/style/style-modal/layer/style-modal-layer.component.mjs +0 -142
- package/esm2022/lib/style/style-modal/layer-button/index.mjs +0 -2
- package/esm2022/lib/style/style-modal/layer-button/style-modal-layer-button.component.mjs +0 -44
- package/esm2022/lib/style/style-modal/shared/index.mjs +0 -2
- package/esm2022/lib/style/style-modal/shared/style-modal.interface.mjs +0 -2
- package/esm2022/lib/style/style-service/draw-style.service.mjs +0 -255
- package/esm2022/lib/style/style-service/index.mjs +0 -3
- package/esm2022/lib/style/style-service/style.service.mjs +0 -393
- package/esm2022/lib/style/style.module.mjs +0 -46
- package/esm2022/lib/toast/index.mjs +0 -2
- package/esm2022/lib/toast/toast.component.mjs +0 -99
- package/esm2022/lib/toast/toast.module.mjs +0 -24
- package/esm2022/lib/utils/googleLinks.mjs +0 -13
- package/esm2022/lib/utils/id-generator.mjs +0 -112
- package/esm2022/lib/utils/index.mjs +0 -5
- package/esm2022/lib/utils/osmLinks.mjs +0 -9
- package/esm2022/lib/utils/propertyTypeDetector/index.mjs +0 -3
- package/esm2022/lib/utils/propertyTypeDetector/propertyTypeDetector.interface.mjs +0 -2
- package/esm2022/lib/utils/propertyTypeDetector/propertyTypeDetector.service.mjs +0 -64
- package/esm2022/lib/wkt/index.mjs +0 -2
- package/esm2022/lib/wkt/shared/index.mjs +0 -2
- package/esm2022/lib/wkt/shared/wkt.service.mjs +0 -235
- package/esm2022/lib/wkt/wkt.module.mjs +0 -25
- package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.component.mjs +0 -36
- package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.module.mjs +0 -19
- package/esm2022/lib/workspace/confirmation-popup/index.mjs +0 -3
- package/esm2022/lib/workspace/index.mjs +0 -8
- package/esm2022/lib/workspace/shared/edition-workspace.mjs +0 -301
- package/esm2022/lib/workspace/shared/edition-workspace.service.mjs +0 -720
- package/esm2022/lib/workspace/shared/feature-workspace.mjs +0 -41
- package/esm2022/lib/workspace/shared/feature-workspace.service.mjs +0 -113
- package/esm2022/lib/workspace/shared/index.mjs +0 -8
- package/esm2022/lib/workspace/shared/wfs-workspace.mjs +0 -41
- package/esm2022/lib/workspace/shared/wfs-workspace.service.mjs +0 -121
- package/esm2022/lib/workspace/shared/wms-workspace.service.mjs +0 -248
- package/esm2022/lib/workspace/shared/workspace.utils.mjs +0 -188
- package/esm2022/lib/workspace/widgets/index.mjs +0 -4
- package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.component.mjs +0 -48
- package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.module.mjs +0 -19
- package/esm2022/lib/workspace/widgets/widgets.mjs +0 -15
- package/esm2022/lib/workspace/workspace-selector/workspace-selector.directive.mjs +0 -172
- package/esm2022/lib/workspace/workspace-selector/workspace-selector.module.mjs +0 -19
- package/esm2022/lib/workspace/workspace-updator/workspace-updator.directive.mjs +0 -137
- package/esm2022/lib/workspace/workspace-updator/workspace-updator.module.mjs +0 -19
- package/esm2022/lib/workspace/workspace.module.mjs +0 -32
- package/esm2022/public_api.mjs +0 -56
|
@@ -1,199 +0,0 @@
|
|
|
1
|
-
import { BehaviorSubject, combineLatest } from 'rxjs';
|
|
2
|
-
import { getResolutionFromScale } from '../../../map/shared/map.utils';
|
|
3
|
-
export class LayerBase {
|
|
4
|
-
options;
|
|
5
|
-
collapsed;
|
|
6
|
-
firstLoadComponent = true;
|
|
7
|
-
map;
|
|
8
|
-
olLoadingProblem = false;
|
|
9
|
-
status$;
|
|
10
|
-
dataSource;
|
|
11
|
-
/**
|
|
12
|
-
* Define if a layer is generated by code OR defined by layer/context user layer.
|
|
13
|
-
* Useful for filtering layers list in mapOffline.directive or in the sharemap...
|
|
14
|
-
* return false by default.
|
|
15
|
-
*/
|
|
16
|
-
get isIgoInternalLayer() {
|
|
17
|
-
return this.options.isIgoInternalLayer || false;
|
|
18
|
-
}
|
|
19
|
-
get id() {
|
|
20
|
-
return String(this.options.id);
|
|
21
|
-
}
|
|
22
|
-
get parentId() {
|
|
23
|
-
return this.options.parentId;
|
|
24
|
-
}
|
|
25
|
-
get alias() {
|
|
26
|
-
return this.options.alias;
|
|
27
|
-
}
|
|
28
|
-
get title() {
|
|
29
|
-
return this.options.title;
|
|
30
|
-
}
|
|
31
|
-
set title(title) {
|
|
32
|
-
this.options.title = title;
|
|
33
|
-
}
|
|
34
|
-
get zIndex() {
|
|
35
|
-
return this.ol.getZIndex();
|
|
36
|
-
}
|
|
37
|
-
set zIndex(zIndex) {
|
|
38
|
-
if (zIndex === this.zIndex) {
|
|
39
|
-
return;
|
|
40
|
-
}
|
|
41
|
-
this.ol.setZIndex(zIndex);
|
|
42
|
-
}
|
|
43
|
-
get baseLayer() {
|
|
44
|
-
return this.options.baseLayer;
|
|
45
|
-
}
|
|
46
|
-
set baseLayer(baseLayer) {
|
|
47
|
-
this.options.baseLayer = baseLayer;
|
|
48
|
-
}
|
|
49
|
-
get opacity() {
|
|
50
|
-
return this.ol.get('opacity');
|
|
51
|
-
}
|
|
52
|
-
set opacity(opacity) {
|
|
53
|
-
this.ol.setOpacity(opacity);
|
|
54
|
-
}
|
|
55
|
-
set isInResolutionsRange(value) {
|
|
56
|
-
this.isInResolutionsRange$.next(value);
|
|
57
|
-
}
|
|
58
|
-
get isInResolutionsRange() {
|
|
59
|
-
return this.isInResolutionsRange$.value;
|
|
60
|
-
}
|
|
61
|
-
isInResolutionsRange$ = new BehaviorSubject(false);
|
|
62
|
-
set maxResolution(value) {
|
|
63
|
-
this.ol.setMaxResolution(value === 0 ? 0 : value || Infinity);
|
|
64
|
-
}
|
|
65
|
-
get maxResolution() {
|
|
66
|
-
return this.ol.getMaxResolution();
|
|
67
|
-
}
|
|
68
|
-
set minResolution(value) {
|
|
69
|
-
this.ol.setMinResolution(value || 0);
|
|
70
|
-
}
|
|
71
|
-
get minResolution() {
|
|
72
|
-
return this.ol.getMinResolution();
|
|
73
|
-
}
|
|
74
|
-
set visible(value) {
|
|
75
|
-
if (value === this.visible) {
|
|
76
|
-
return;
|
|
77
|
-
}
|
|
78
|
-
this.ol.setVisible(value);
|
|
79
|
-
this._visible$.next(value);
|
|
80
|
-
}
|
|
81
|
-
get visible() {
|
|
82
|
-
return this._visible$.value;
|
|
83
|
-
}
|
|
84
|
-
_visible$ = new BehaviorSubject(undefined);
|
|
85
|
-
visible$ = this._visible$.asObservable();
|
|
86
|
-
get displayed() {
|
|
87
|
-
return this._displayed$.value;
|
|
88
|
-
}
|
|
89
|
-
set displayed(value) {
|
|
90
|
-
if (value === this.displayed) {
|
|
91
|
-
return;
|
|
92
|
-
}
|
|
93
|
-
this._displayed$.next(value);
|
|
94
|
-
}
|
|
95
|
-
_displayed$ = new BehaviorSubject(undefined);
|
|
96
|
-
displayed$ = this._displayed$.asObservable();
|
|
97
|
-
displayed$$;
|
|
98
|
-
get showInLayerList() {
|
|
99
|
-
return this.options.showInLayerList !== false;
|
|
100
|
-
}
|
|
101
|
-
get saveableOptions() {
|
|
102
|
-
return {
|
|
103
|
-
title: this.options.title,
|
|
104
|
-
zIndex: this.zIndex,
|
|
105
|
-
visible: this.visible,
|
|
106
|
-
security: this.options.security,
|
|
107
|
-
opacity: this.opacity
|
|
108
|
-
};
|
|
109
|
-
}
|
|
110
|
-
constructor(options) {
|
|
111
|
-
this.options = options;
|
|
112
|
-
this.initDisplayed$$();
|
|
113
|
-
}
|
|
114
|
-
afterCreated() {
|
|
115
|
-
if (this.options.zIndex !== undefined) {
|
|
116
|
-
this.zIndex = this.options.zIndex;
|
|
117
|
-
}
|
|
118
|
-
if (this.options.baseLayer && this.options.visible === undefined) {
|
|
119
|
-
this.options.visible = false;
|
|
120
|
-
}
|
|
121
|
-
this.maxResolution =
|
|
122
|
-
this.options.maxResolution ||
|
|
123
|
-
getResolutionFromScale(Number(this.options.maxScaleDenom));
|
|
124
|
-
this.minResolution =
|
|
125
|
-
this.options.minResolution ||
|
|
126
|
-
getResolutionFromScale(Number(this.options.minScaleDenom));
|
|
127
|
-
this.visible =
|
|
128
|
-
this.options.visible === undefined ? true : this.options.visible;
|
|
129
|
-
this.opacity =
|
|
130
|
-
this.options.opacity === undefined ? 1 : this.options.opacity;
|
|
131
|
-
}
|
|
132
|
-
init(map) {
|
|
133
|
-
this.map = map;
|
|
134
|
-
}
|
|
135
|
-
add(parent) {
|
|
136
|
-
this._add(parent);
|
|
137
|
-
}
|
|
138
|
-
_add(parent) {
|
|
139
|
-
this.addParent(parent);
|
|
140
|
-
this.parent ? this.parent.addChild(this) : this.map.ol.addLayer(this.ol);
|
|
141
|
-
}
|
|
142
|
-
addParent(parent) {
|
|
143
|
-
if (this.parent && this.parent === parent) {
|
|
144
|
-
return;
|
|
145
|
-
}
|
|
146
|
-
this.parent = parent;
|
|
147
|
-
if (!this.map && this.parent) {
|
|
148
|
-
this.map = this.parent.map;
|
|
149
|
-
}
|
|
150
|
-
this.initDisplayed$$();
|
|
151
|
-
}
|
|
152
|
-
remove() {
|
|
153
|
-
this._remove();
|
|
154
|
-
}
|
|
155
|
-
_remove() {
|
|
156
|
-
if (!this.map) {
|
|
157
|
-
console.error(`No map for ${this.title}`);
|
|
158
|
-
return;
|
|
159
|
-
}
|
|
160
|
-
this.parent
|
|
161
|
-
? this.parent.removeChild(this)
|
|
162
|
-
: this.map.ol.removeLayer(this.ol);
|
|
163
|
-
}
|
|
164
|
-
reset(parent) {
|
|
165
|
-
this._remove();
|
|
166
|
-
this._add(parent);
|
|
167
|
-
}
|
|
168
|
-
moveTo(parent) {
|
|
169
|
-
if (parent == null && this.parent == null) {
|
|
170
|
-
return;
|
|
171
|
-
}
|
|
172
|
-
if (this.parent) {
|
|
173
|
-
if (this.parent.id === parent?.id) {
|
|
174
|
-
return;
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
this.reset(parent);
|
|
178
|
-
}
|
|
179
|
-
clone() {
|
|
180
|
-
const clone = Object.assign({}, this);
|
|
181
|
-
return Object.setPrototypeOf(clone, LayerBase.prototype);
|
|
182
|
-
}
|
|
183
|
-
initDisplayed$$() {
|
|
184
|
-
this.displayed$$?.unsubscribe();
|
|
185
|
-
const obs$ = [this.isInResolutionsRange$, this.visible$];
|
|
186
|
-
if (this.parent) {
|
|
187
|
-
obs$.push(this.parent.displayed$);
|
|
188
|
-
}
|
|
189
|
-
this.displayed$$ = combineLatest(obs$).subscribe(([inRes, visible, parentDisplayed = null]) => {
|
|
190
|
-
const isVisible = this.parent ? parentDisplayed && visible : visible;
|
|
191
|
-
this.displayed = isVisible && inRes;
|
|
192
|
-
});
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
export class LayerGroupBase extends LayerBase {
|
|
196
|
-
type = 'group';
|
|
197
|
-
children;
|
|
198
|
-
}
|
|
199
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXItYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2xheWVyL3NoYXJlZC9sYXllcnMvbGF5ZXItYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUUsZUFBZSxFQUF5QixhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFJN0UsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFLdkUsTUFBTSxPQUFnQixTQUFTO0lBK0hWO0lBekhaLFNBQVMsQ0FBVTtJQUNuQixrQkFBa0IsR0FBRyxJQUFJLENBQUM7SUFDMUIsR0FBRyxDQUFVO0lBQ2IsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDO0lBQ3pCLE9BQU8sQ0FBeUI7SUFDdkMsVUFBVSxDQUF5QjtJQUVuQzs7OztPQUlHO0lBQ0gsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQixJQUFJLEtBQUssQ0FBQztJQUNsRCxDQUFDO0lBRUQsSUFBSSxFQUFFO1FBQ0osT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztJQUM1QixDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsS0FBYTtRQUNyQixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDN0IsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFD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LEtBQUssRUFBRSxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVPLGVBQWU7UUFDckIsSUFBSSxDQUFDLFdBQVcsRUFBRSxXQUFXLEVBQUUsQ0FBQztRQUVoQyxNQUFNLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFekQsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3BDLENBQUM7UUFFRCxJQUFJLENBQUMsV0FBVyxHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQzlDLENBQUMsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLGVBQWUsR0FBRyxJQUFJLENBQUMsRUFBRSxFQUFFO1lBQzNDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLGVBQWUsSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztZQUNyRSxJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsSUFBSSxLQUFLLENBQUM7UUFDdEMsQ0FBQyxDQUNGLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQWdCLGNBQWUsU0FBUSxTQUFTO0lBQ3BELElBQUksR0FBYyxPQUFPLENBQUM7SUFDMUIsUUFBUSxDQUFjO0NBT3ZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3ViamVjdFN0YXR1cyB9IGZyb20gJ0BpZ28yL3V0aWxzJztcblxuaW1wb3J0IEJhc2VMYXllciBmcm9tICdvbC9sYXllci9CYXNlJztcblxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJqZWN0LCBTdWJzY3JpcHRpb24sIGNvbWJpbmVMYXRlc3QgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHR5cGUgeyBEYXRhU291cmNlIH0gZnJvbSAnLi4vLi4vLi4vZGF0YXNvdXJjZS9zaGFyZWQvZGF0YXNvdXJjZXMvZGF0YXNvdXJjZSc7XG5pbXBvcnQgdHlwZSB7IE1hcEJhc2UgfSBmcm9tICcuLi8uLi8uLi9tYXAvc2hhcmVkL21hcC5hYnN0cmFjdCc7XG5pbXBvcnQgeyBnZXRSZXNvbHV0aW9uRnJvbVNjYWxlIH0gZnJvbSAnLi4vLi4vLi4vbWFwL3NoYXJlZC9tYXAudXRpbHMnO1xuaW1wb3J0IHR5cGUgeyBMYXllck9wdGlvbnMsIExheWVyVHlwZSB9IGZyb20gJy4vbGF5ZXIuaW50ZXJmYWNlJztcblxuZXhwb3J0IHR5cGUgQW55TGF5ZXJCYXNlID0gTGF5ZXJCYXNlIHwgTGF5ZXJHcm91cEJhc2U7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBMYXllckJhc2Uge1xuICBhYnN0cmFjdCB0eXBlOiBMYXllclR5cGU7XG4gIGFic3RyYWN0IG9sOiBCYXNlTGF5ZXI7XG4gIGFic3RyYWN0IHBhcmVudDogTGF5ZXJHcm91cEJhc2U7XG4gIHByb3RlY3RlZCBhYnN0cmFjdCBjcmVhdGVPbExheWVyKCk6IEJhc2VMYXllcjtcblxuICBwdWJsaWMgY29sbGFwc2VkOiBib29sZWFuO1xuICBwdWJsaWMgZmlyc3RMb2FkQ29tcG9uZW50ID0gdHJ1ZTtcbiAgcHVibGljIG1hcDogTWFwQmFzZTtcbiAgcHVibGljIG9sTG9hZGluZ1Byb2JsZW0gPSBmYWxzZTtcbiAgcHVibGljIHN0YXR1cyQ6IFN1YmplY3Q8U3ViamVjdFN0YXR1cz47XG4gIGRhdGFTb3VyY2U6IERhdGFTb3VyY2UgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIERlZmluZSBpZiBhIGxheWVyIGlzIGdlbmVyYXRlZCBieSBjb2RlIE9SIGRlZmluZWQgYnkgbGF5ZXIvY29udGV4dCB1c2VyIGxheWVyLlxuICAgKiBVc2VmdWwgZm9yIGZpbHRlcmluZyBsYXllcnMgbGlzdCBpbiBtYXBPZmZsaW5lLmRpcmVjdGl2ZSBvciBpbiB0aGUgc2hhcmVtYXAuLi5cbiAgICogcmV0dXJuIGZhbHNlIGJ5IGRlZmF1bHQuXG4gICAqL1xuICBnZXQgaXNJZ29JbnRlcm5hbExheWVyKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLm9wdGlvbnMuaXNJZ29JbnRlcm5hbExheWVyIHx8IGZhbHNlO1xuICB9XG5cbiAgZ2V0IGlkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFN0cmluZyh0aGlzLm9wdGlvbnMuaWQpO1xuICB9XG5cbiAgZ2V0IHBhcmVudElkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMub3B0aW9ucy5wYXJlbnRJZDtcbiAgfVxuXG4gIGdldCBhbGlhcygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm9wdGlvbnMuYWxpYXM7XG4gIH1cblxuICBnZXQgdGl0bGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5vcHRpb25zLnRpdGxlO1xuICB9XG4gIHNldCB0aXRsZSh0aXRsZTogc3RyaW5nKSB7XG4gICAgdGhpcy5vcHRpb25zLnRpdGxlID0gdGl0bGU7XG4gIH1cblxuICBnZXQgekluZGV4KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMub2wuZ2V0WkluZGV4KCk7XG4gIH1cbiAgc2V0IHpJbmRleCh6SW5kZXg6IG51bWJlcikge1xuICAgIGlmICh6SW5kZXggPT09IHRoaXMuekluZGV4KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMub2wuc2V0WkluZGV4KHpJbmRleCk7XG4gIH1cblxuICBnZXQgYmFzZUxheWVyKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLm9wdGlvbnMuYmFzZUxheWVyO1xuICB9XG4gIHNldCBiYXNlTGF5ZXIoYmFzZUxheWVyOiBib29sZWFuKSB7XG4gICAgdGhpcy5vcHRpb25zLmJhc2VMYXllciA9IGJhc2VMYXllcjtcbiAgfVxuXG4gIGdldCBvcGFjaXR5KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMub2wuZ2V0KCdvcGFjaXR5Jyk7XG4gIH1cbiAgc2V0IG9wYWNpdHkob3BhY2l0eTogbnVtYmVyKSB7XG4gICAgdGhpcy5vbC5zZXRPcGFjaXR5KG9wYWNpdHkpO1xuICB9XG5cbiAgc2V0IGlzSW5SZXNvbHV0aW9uc1JhbmdlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5pc0luUmVzb2x1dGlvbnNSYW5nZSQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgZ2V0IGlzSW5SZXNvbHV0aW9uc1JhbmdlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmlzSW5SZXNvbHV0aW9uc1JhbmdlJC52YWx1ZTtcbiAgfVxuICByZWFkb25seSBpc0luUmVzb2x1dGlvbnNSYW5nZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcblxuICBzZXQgbWF4UmVzb2x1dGlvbih2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5vbC5zZXRNYXhSZXNvbHV0aW9uKHZhbHVlID09PSAwID8gMCA6IHZhbHVlIHx8IEluZmluaXR5KTtcbiAgfVxuICBnZXQgbWF4UmVzb2x1dGlvbigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLm9sLmdldE1heFJlc29sdXRpb24oKTtcbiAgfVxuXG4gIHNldCBtaW5SZXNvbHV0aW9uKHZhbHVlOiBudW1iZXIpIHtcbiAgICB0aGlzLm9sLnNldE1pblJlc29sdXRpb24odmFsdWUgfHwgMCk7XG4gIH1cbiAgZ2V0IG1pblJlc29sdXRpb24oKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5vbC5nZXRNaW5SZXNvbHV0aW9uKCk7XG4gIH1cblxuICBzZXQgdmlzaWJsZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICh2YWx1ZSA9PT0gdGhpcy52aXNpYmxlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMub2wuc2V0VmlzaWJsZSh2YWx1ZSk7XG4gICAgdGhpcy5fdmlzaWJsZSQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgZ2V0IHZpc2libGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3Zpc2libGUkLnZhbHVlO1xuICB9XG4gIHByaXZhdGUgX3Zpc2libGUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih1bmRlZmluZWQpO1xuICByZWFkb25seSB2aXNpYmxlJCA9IHRoaXMuX3Zpc2libGUkLmFzT2JzZXJ2YWJsZSgpO1xuXG4gIGdldCBkaXNwbGF5ZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc3BsYXllZCQudmFsdWU7XG4gIH1cbiAgc2V0IGRpc3BsYXllZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICh2YWx1ZSA9PT0gdGhpcy5kaXNwbGF5ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fZGlzcGxheWVkJC5uZXh0KHZhbHVlKTtcbiAgfVxuICBwcml2YXRlIF9kaXNwbGF5ZWQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih1bmRlZmluZWQpO1xuICBkaXNwbGF5ZWQkID0gdGhpcy5fZGlzcGxheWVkJC5hc09ic2VydmFibGUoKTtcbiAgcHJpdmF0ZSBkaXNwbGF5ZWQkJDogU3Vic2NyaXB0aW9uO1xuXG4gIGdldCBzaG93SW5MYXllckxpc3QoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMub3B0aW9ucy5zaG93SW5MYXllckxpc3QgIT09IGZhbHNlO1xuICB9XG5cbiAgZ2V0IHNhdmVhYmxlT3B0aW9ucygpOiBQYXJ0aWFsPExheWVyT3B0aW9ucz4ge1xuICAgIHJldHVybiB7XG4gICAgICB0aXRsZTogdGhpcy5vcHRpb25zLnRpdGxlLFxuICAgICAgekluZGV4OiB0aGlzLnpJbmRleCxcbiAgICAgIHZpc2libGU6IHRoaXMudmlzaWJsZSxcbiAgICAgIHNlY3VyaXR5OiB0aGlzLm9wdGlvbnMuc2VjdXJpdHksXG4gICAgICBvcGFjaXR5OiB0aGlzLm9wYWNpdHlcbiAgICB9O1xuICB9XG5cbiAgY29uc3RydWN0b3IocHVibGljIG9wdGlvbnM6IExheWVyT3B0aW9ucykge1xuICAgIHRoaXMuaW5pdERpc3BsYXllZCQkKCk7XG4gIH1cblxuICBhZnRlckNyZWF0ZWQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMub3B0aW9ucy56SW5kZXggIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy56SW5kZXggPSB0aGlzLm9wdGlvbnMuekluZGV4O1xuICAgIH1cblxuICAgIGlmICh0aGlzLm9wdGlvbnMuYmFzZUxheWVyICYmIHRoaXMub3B0aW9ucy52aXNpYmxlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMub3B0aW9ucy52aXNpYmxlID0gZmFsc2U7XG4gICAgfVxuXG4gICAgdGhpcy5tYXhSZXNvbHV0aW9uID1cbiAgICAgIHRoaXMub3B0aW9ucy5tYXhSZXNvbHV0aW9uIHx8XG4gICAgICBnZXRSZXNvbHV0aW9uRnJvbVNjYWxlKE51bWJlcih0aGlzLm9wdGlvbnMubWF4U2NhbGVEZW5vbSkpO1xuICAgIHRoaXMubWluUmVzb2x1dGlvbiA9XG4gICAgICB0aGlzLm9wdGlvbnMubWluUmVzb2x1dGlvbiB8fFxuICAgICAgZ2V0UmVzb2x1dGlvbkZyb21TY2FsZShOdW1iZXIodGhpcy5vcHRpb25zLm1pblNjYWxlRGVub20pKTtcblxuICAgIHRoaXMudmlzaWJsZSA9XG4gICAgICB0aGlzLm9wdGlvbnMudmlzaWJsZSA9PT0gdW5kZWZpbmVkID8gdHJ1ZSA6IHRoaXMub3B0aW9ucy52aXNpYmxlO1xuICAgIHRoaXMub3BhY2l0eSA9XG4gICAgICB0aGlzLm9wdGlvbnMub3BhY2l0eSA9PT0gdW5kZWZpbmVkID8gMSA6IHRoaXMub3B0aW9ucy5vcGFjaXR5O1xuICB9XG5cbiAgaW5pdChtYXA6IE1hcEJhc2UpOiB2b2lkIHtcbiAgICB0aGlzLm1hcCA9IG1hcDtcbiAgfVxuXG4gIGFkZChwYXJlbnQ/OiBMYXllckdyb3VwQmFzZSk6IHZvaWQge1xuICAgIHRoaXMuX2FkZChwYXJlbnQpO1xuICB9XG5cbiAgcHJpdmF0ZSBfYWRkKHBhcmVudD86IExheWVyR3JvdXBCYXNlKTogdm9pZCB7XG4gICAgdGhpcy5hZGRQYXJlbnQocGFyZW50KTtcbiAgICB0aGlzLnBhcmVudCA/IHRoaXMucGFyZW50LmFkZENoaWxkKHRoaXMpIDogdGhpcy5tYXAub2wuYWRkTGF5ZXIodGhpcy5vbCk7XG4gIH1cblxuICBhZGRQYXJlbnQocGFyZW50PzogTGF5ZXJHcm91cEJhc2UpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5wYXJlbnQgJiYgdGhpcy5wYXJlbnQgPT09IHBhcmVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMucGFyZW50ID0gcGFyZW50O1xuXG4gICAgaWYgKCF0aGlzLm1hcCAmJiB0aGlzLnBhcmVudCkge1xuICAgICAgdGhpcy5tYXAgPSB0aGlzLnBhcmVudC5tYXA7XG4gICAgfVxuXG4gICAgdGhpcy5pbml0RGlzcGxheWVkJCQoKTtcbiAgfVxuXG4gIHJlbW92ZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9yZW1vdmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlbW92ZSgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMubWFwKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBObyBtYXAgZm9yICR7dGhpcy50aXRsZX1gKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5wYXJlbnRcbiAgICAgID8gdGhpcy5wYXJlbnQucmVtb3ZlQ2hpbGQodGhpcylcbiAgICAgIDogdGhpcy5tYXAub2wucmVtb3ZlTGF5ZXIodGhpcy5vbCk7XG4gIH1cblxuICByZXNldChwYXJlbnQ/OiBMYXllckdyb3VwQmFzZSk6IHZvaWQge1xuICAgIHRoaXMuX3JlbW92ZSgpO1xuICAgIHRoaXMuX2FkZChwYXJlbnQpO1xuICB9XG5cbiAgbW92ZVRvKHBhcmVudD86IExheWVyR3JvdXBCYXNlKTogdm9pZCB7XG4gICAgaWYgKHBhcmVudCA9PSBudWxsICYmIHRoaXMucGFyZW50ID09IG51bGwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5wYXJlbnQpIHtcbiAgICAgIGlmICh0aGlzLnBhcmVudC5pZCA9PT0gcGFyZW50Py5pZCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5yZXNldChwYXJlbnQpO1xuICB9XG5cbiAgY2xvbmUoKTogTGF5ZXJCYXNlIHtcbiAgICBjb25zdCBjbG9uZSA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMpO1xuICAgIHJldHVybiBPYmplY3Quc2V0UHJvdG90eXBlT2YoY2xvbmUsIExheWVyQmFzZS5wcm90b3R5cGUpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0RGlzcGxheWVkJCQoKTogdm9pZCB7XG4gICAgdGhpcy5kaXNwbGF5ZWQkJD8udW5zdWJzY3JpYmUoKTtcblxuICAgIGNvbnN0IG9icyQgPSBbdGhpcy5pc0luUmVzb2x1dGlvbnNSYW5nZSQsIHRoaXMudmlzaWJsZSRdO1xuXG4gICAgaWYgKHRoaXMucGFyZW50KSB7XG4gICAgICBvYnMkLnB1c2godGhpcy5wYXJlbnQuZGlzcGxheWVkJCk7XG4gICAgfVxuXG4gICAgdGhpcy5kaXNwbGF5ZWQkJCA9IGNvbWJpbmVMYXRlc3Qob2JzJCkuc3Vic2NyaWJlKFxuICAgICAgKFtpblJlcywgdmlzaWJsZSwgcGFyZW50RGlzcGxheWVkID0gbnVsbF0pID0+IHtcbiAgICAgICAgY29uc3QgaXNWaXNpYmxlID0gdGhpcy5wYXJlbnQgPyBwYXJlbnREaXNwbGF5ZWQgJiYgdmlzaWJsZSA6IHZpc2libGU7XG4gICAgICAgIHRoaXMuZGlzcGxheWVkID0gaXNWaXNpYmxlICYmIGluUmVzO1xuICAgICAgfVxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIExheWVyR3JvdXBCYXNlIGV4dGVuZHMgTGF5ZXJCYXNlIHtcbiAgdHlwZTogTGF5ZXJUeXBlID0gJ2dyb3VwJztcbiAgY2hpbGRyZW46IExheWVyQmFzZVtdO1xuXG4gIGFic3RyYWN0IGdldCBkZXNjZW5kYW50cygpOiBMYXllckJhc2VbXTtcblxuICBhYnN0cmFjdCBhZGRDaGlsZChsYXllcjogTGF5ZXJCYXNlKTogdm9pZDtcbiAgYWJzdHJhY3QgcmVtb3ZlQ2hpbGQobGF5ZXI6IExheWVyQmFzZSk6IHZvaWQ7XG4gIGFic3RyYWN0IGlzRGVzY2VuZGFudChsYXllcjogTGF5ZXJCYXNlKTogYm9vbGVhbjtcbn1cbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXItZ3JvdXAuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvbGF5ZXIvc2hhcmVkL2xheWVycy9sYXllci1ncm91cC5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFueUxheWVyT3B0aW9ucyB9IGZyb20gJy4vYW55LWxheWVyLmludGVyZmFjZSc7XG5pbXBvcnQgdHlwZSB7IExheWVyT3B0aW9uc0Jhc2UgfSBmcm9tICcuL2xheWVyLmludGVyZmFjZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGF5ZXJHcm91cE9wdGlvbnMgZXh0ZW5kcyBPbWl0PExheWVyT3B0aW9uc0Jhc2UsICd0aXRsZSc+IHtcbiAgdHlwZTogJ2dyb3VwJztcbiAgdGl0bGU6IHN0cmluZztcbiAgZXhwYW5kZWQ/OiBib29sZWFuO1xuICBjaGlsZHJlbj86IEFueUxheWVyT3B0aW9uc1tdO1xufVxuIl19
|
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
import { uuid } from '@igo2/utils';
|
|
2
|
-
import { Group } from 'ol/layer.js';
|
|
3
|
-
import { BehaviorSubject, combineLatest } from 'rxjs';
|
|
4
|
-
import { LayerGroupBase } from './layer-base';
|
|
5
|
-
const ID_PREFIX = 'local-group_';
|
|
6
|
-
export class LayerGroup extends LayerGroupBase {
|
|
7
|
-
children;
|
|
8
|
-
options;
|
|
9
|
-
parent;
|
|
10
|
-
expanded;
|
|
11
|
-
isInResolutionsRange$$;
|
|
12
|
-
isInResolutionsRange$ = new BehaviorSubject(true);
|
|
13
|
-
get saveableOptions() {
|
|
14
|
-
return {
|
|
15
|
-
...super.saveableOptions,
|
|
16
|
-
id: String(this.options.id).includes(ID_PREFIX) ? null : this.options.id,
|
|
17
|
-
type: this.options.type,
|
|
18
|
-
children: [...this.children]
|
|
19
|
-
.map((layer) => layer.saveableOptions)
|
|
20
|
-
.filter(Boolean),
|
|
21
|
-
expanded: this.expanded
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
get descendants() {
|
|
25
|
-
return this._getDescendants();
|
|
26
|
-
}
|
|
27
|
-
get descendantsLevel() {
|
|
28
|
-
return this._getDescendantsLevel();
|
|
29
|
-
}
|
|
30
|
-
constructor(children, options) {
|
|
31
|
-
super(options);
|
|
32
|
-
this.children = children;
|
|
33
|
-
this.options = options;
|
|
34
|
-
this.children = children ?? [];
|
|
35
|
-
this.expanded = options.expanded === undefined ? false : options.expanded;
|
|
36
|
-
if (!options.id) {
|
|
37
|
-
options.id = ID_PREFIX + uuid();
|
|
38
|
-
}
|
|
39
|
-
this.ol = this.createOlLayer();
|
|
40
|
-
super.afterCreated();
|
|
41
|
-
}
|
|
42
|
-
init(map) {
|
|
43
|
-
super.init(map);
|
|
44
|
-
this.children.forEach((child) => child.init(map));
|
|
45
|
-
}
|
|
46
|
-
add(parent) {
|
|
47
|
-
super.add(parent);
|
|
48
|
-
this.setChildrenObserver();
|
|
49
|
-
this.children.forEach((layer) => {
|
|
50
|
-
layer.add(this);
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
addChild(...layers) {
|
|
54
|
-
this.ol.getLayers().extend(layers.map((layer) => layer.ol));
|
|
55
|
-
layers.forEach((layer) => {
|
|
56
|
-
if (this.hasChildren(layer)) {
|
|
57
|
-
return;
|
|
58
|
-
}
|
|
59
|
-
layer.addParent(this);
|
|
60
|
-
this.children.push(layer);
|
|
61
|
-
});
|
|
62
|
-
this.setChildrenObserver();
|
|
63
|
-
}
|
|
64
|
-
remove() {
|
|
65
|
-
super.remove();
|
|
66
|
-
this.children.forEach((layer) => layer.remove());
|
|
67
|
-
}
|
|
68
|
-
removeChild(layer) {
|
|
69
|
-
this.ol.getLayers().remove(layer.ol);
|
|
70
|
-
const index = this.children.indexOf(layer);
|
|
71
|
-
if (index >= 0) {
|
|
72
|
-
this.children.splice(index, 1);
|
|
73
|
-
}
|
|
74
|
-
layer.parent = null;
|
|
75
|
-
layer.options.parentId = null;
|
|
76
|
-
this.setChildrenObserver();
|
|
77
|
-
}
|
|
78
|
-
isDescendant(layer) {
|
|
79
|
-
return this._getDescendants().some((descendant) => descendant.id === layer.id);
|
|
80
|
-
}
|
|
81
|
-
setChildrenObserver() {
|
|
82
|
-
this.isInResolutionsRange$$?.unsubscribe();
|
|
83
|
-
if (!this.children) {
|
|
84
|
-
return;
|
|
85
|
-
}
|
|
86
|
-
const observers = this.children.map((layer) => layer.isInResolutionsRange$);
|
|
87
|
-
this.isInResolutionsRange$$ = combineLatest(observers).subscribe((values) => {
|
|
88
|
-
this.isInResolutionsRange = values.some((value) => value);
|
|
89
|
-
});
|
|
90
|
-
}
|
|
91
|
-
createOlLayer() {
|
|
92
|
-
return new Group({ properties: { title: this.title } });
|
|
93
|
-
}
|
|
94
|
-
hasChildren(layer) {
|
|
95
|
-
return this.children.some((child) => child.id === layer.id);
|
|
96
|
-
}
|
|
97
|
-
/** recursive */
|
|
98
|
-
_getDescendants(children = this.children) {
|
|
99
|
-
return children.reduce((list, child) => {
|
|
100
|
-
if (child instanceof LayerGroup) {
|
|
101
|
-
return list.concat(child, ...this._getDescendants(child.children));
|
|
102
|
-
}
|
|
103
|
-
else {
|
|
104
|
-
return list.concat(child);
|
|
105
|
-
}
|
|
106
|
-
}, []);
|
|
107
|
-
}
|
|
108
|
-
/** recursive */
|
|
109
|
-
_getDescendantsLevel(children = this.children) {
|
|
110
|
-
return children.reduce((level, child) => {
|
|
111
|
-
if (child instanceof LayerGroup) {
|
|
112
|
-
level = level + 1;
|
|
113
|
-
const descendantLevel = this._getDescendantsLevel(child.children);
|
|
114
|
-
return level + descendantLevel;
|
|
115
|
-
}
|
|
116
|
-
return level;
|
|
117
|
-
}, 0);
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXItZ3JvdXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9sYXllci9zaGFyZWQvbGF5ZXJzL2xheWVyLWdyb3VwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFbkMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVwQyxPQUFPLEVBQUUsZUFBZSxFQUFnQixhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFJcEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUc5QyxNQUFNLFNBQVMsR0FBRyxjQUFjLENBQUM7QUFFakMsTUFBTSxPQUFPLFVBQVcsU0FBUSxjQUFjO0lBNEJuQztJQUNBO0lBNUJULE1BQU0sQ0FBYTtJQUVuQixRQUFRLENBQVU7SUFDVixzQkFBc0IsQ0FBZTtJQUNwQyxxQkFBcUIsR0FBRyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUUzRCxJQUFJLGVBQWU7UUFDakIsT0FBTztZQUNMLEdBQUcsS0FBSyxDQUFDLGVBQWU7WUFDeEIsRUFBRSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDeEUsSUFBSSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSTtZQUN2QixRQUFRLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7aUJBQ3pCLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQztpQkFDckMsTUFBTSxDQUFDLE9BQU8sQ0FBQztZQUNsQixRQUFRLEVBQUUsSUFB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USxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVELGdCQUFnQjtJQUNSLGVBQWUsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVE7UUFDOUMsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFO1lBQ3JDLElBQUksS0FBSyxZQUFZLFVBQVUsRUFBRSxDQUFDO2dCQUNoQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztZQUNyRSxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzVCLENBQUM7UUFDSCxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDVCxDQUFDO0lBRUQsZ0JBQWdCO0lBQ1Isb0JBQW9CLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRO1FBQ25ELE9BQU8sUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRTtZQUN0QyxJQUFJLEtBQUssWUFBWSxVQUFVLEVBQUUsQ0FBQztnQkFDaEMsS0FBSyxHQUFHLEtBQUssR0FBRyxDQUFDLENBQUM7Z0JBQ2xCLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ2xFLE9BQU8sS0FBSyxHQUFHLGVBQWUsQ0FBQztZQUNqQyxDQUFDO1lBRUQsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDUixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1dWlkIH0gZnJvbSAnQGlnbzIvdXRpbHMnO1xuXG5pbXBvcnQgeyBHcm91cCB9IGZyb20gJ29sL2xheWVyLmpzJztcblxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJzY3JpcHRpb24sIGNvbWJpbmVMYXRlc3QgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHR5cGUgeyBNYXBCYXNlIH0gZnJvbSAnLi4vLi4vLi4vbWFwL3NoYXJlZC9tYXAuYWJzdHJhY3QnO1xuaW1wb3J0IHsgdHlwZSBBbnlMYXllciB9IGZyb20gJy4vYW55LWxheWVyJztcbmltcG9ydCB7IExheWVyR3JvdXBCYXNlIH0gZnJvbSAnLi9sYXllci1iYXNlJztcbmltcG9ydCB7IHR5cGUgTGF5ZXJHcm91cE9wdGlvbnMgfSBmcm9tICcuL2xheWVyLWdyb3VwLmludGVyZmFjZSc7XG5cbmNvbnN0IElEX1BSRUZJWCA9ICdsb2NhbC1ncm91cF8nO1xuXG5leHBvcnQgY2xhc3MgTGF5ZXJHcm91cCBleHRlbmRzIExheWVyR3JvdXBCYXNlIHtcbiAgcGFyZW50OiBMYXllckdyb3VwO1xuICBkZWNsYXJlIG9sOiBHcm91cDtcbiAgZXhwYW5kZWQ6IGJvb2xlYW47XG4gIHByaXZhdGUgaXNJblJlc29sdXRpb25zUmFuZ2UkJDogU3Vic2NyaXB0aW9uO1xuICByZWFkb25seSBpc0luUmVzb2x1dGlvbnNSYW5nZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHRydWUpO1xuXG4gIGdldCBzYXZlYWJsZU9wdGlvbnMoKTogUGFydGlhbDxMYXllckdyb3VwT3B0aW9ucz4ge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5zdXBlci5zYXZlYWJsZU9wdGlvbnMsXG4gICAgICBpZDogU3RyaW5nKHRoaXMub3B0aW9ucy5pZCkuaW5jbHVkZXMoSURfUFJFRklYKSA/IG51bGwgOiB0aGlzLm9wdGlvbnMuaWQsXG4gICAgICB0eXBlOiB0aGlzLm9wdGlvbnMudHlwZSxcbiAgICAgIGNoaWxkcmVuOiBbLi4udGhpcy5jaGlsZHJlbl1cbiAgICAgICAgLm1hcCgobGF5ZXIpID0+IGxheWVyLnNhdmVhYmxlT3B0aW9ucylcbiAgICAgICAgLmZpbHRlcihCb29sZWFuKSxcbiAgICAgIGV4cGFuZGVkOiB0aGlzLmV4cGFuZGVkXG4gICAgfTtcbiAgfVxuXG4gIGdldCBkZXNjZW5kYW50cygpOiBBbnlMYXllcltdIHtcbiAgICByZXR1cm4gdGhpcy5fZ2V0RGVzY2VuZGFudHMoKTtcbiAgfVxuXG4gIGdldCBkZXNjZW5kYW50c0xldmVsKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2dldERlc2NlbmRhbnRzTGV2ZWwoKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBjaGlsZHJlbjogQW55TGF5ZXJbXSB8IG51bGwsXG4gICAgcHVibGljIG9wdGlvbnM6IExheWVyR3JvdXBPcHRpb25zXG4gICkge1xuICAgIHN1cGVyKG9wdGlvbnMpO1xuXG4gICAgdGhpcy5jaGlsZHJlbiA9IGNoaWxkcmVuID8/IFtdO1xuXG4gICAgdGhpcy5leHBhbmRlZCA9IG9wdGlvbnMuZXhwYW5kZWQgPT09IHVuZGVmaW5lZCA/IGZhbHNlIDogb3B0aW9ucy5leHBhbmRlZDtcblxuICAgIGlmICghb3B0aW9ucy5pZCkge1xuICAgICAgb3B0aW9ucy5pZCA9IElEX1BSRUZJWCArIHV1aWQoKTtcbiAgICB9XG5cbiAgICB0aGlzLm9sID0gdGhpcy5jcmVhdGVPbExheWVyKCk7XG5cbiAgICBzdXBlci5hZnRlckNyZWF0ZWQoKTtcbiAgfVxuXG4gIGluaXQobWFwOiBNYXBCYXNlKTogdm9pZCB7XG4gICAgc3VwZXIuaW5pdChtYXApO1xuICAgIHRoaXMuY2hpbGRyZW4uZm9yRWFjaCgoY2hpbGQpID0+IGNoaWxkLmluaXQobWFwKSk7XG4gIH1cblxuICBhZGQocGFyZW50PzogTGF5ZXJHcm91cEJhc2UpOiB2b2lkIHtcbiAgICBzdXBlci5hZGQocGFyZW50KTtcblxuICAgIHRoaXMuc2V0Q2hpbGRyZW5PYnNlcnZlcigpO1xuXG4gICAgdGhpcy5jaGlsZHJlbi5mb3JFYWNoKChsYXllcikgPT4ge1xuICAgICAgbGF5ZXIuYWRkKHRoaXMpO1xuICAgIH0pO1xuICB9XG5cbiAgYWRkQ2hpbGQoLi4ubGF5ZXJzOiBBbnlMYXllcltdKTogdm9pZCB7XG4gICAgdGhpcy5vbC5nZXRMYXllcnMoKS5leHRlbmQobGF5ZXJzLm1hcCgobGF5ZXIpID0+IGxheWVyLm9sKSk7XG5cbiAgICBsYXllcnMuZm9yRWFjaCgobGF5ZXIpID0+IHtcbiAgICAgIGlmICh0aGlzLmhhc0NoaWxkcmVuKGxheWVyKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBsYXllci5hZGRQYXJlbnQodGhpcyk7XG4gICAgICB0aGlzLmNoaWxkcmVuLnB1c2gobGF5ZXIpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5zZXRDaGlsZHJlbk9ic2VydmVyKCk7XG4gIH1cblxuICByZW1vdmUoKTogdm9pZCB7XG4gICAgc3VwZXIucmVtb3ZlKCk7XG4gICAgdGhpcy5jaGlsZHJlbi5mb3JFYWNoKChsYXllcikgPT4gbGF5ZXIucmVtb3ZlKCkpO1xuICB9XG5cbiAgcmVtb3ZlQ2hpbGQobGF5ZXI6IEFueUxheWVyKTogdm9pZCB7XG4gICAgdGhpcy5vbC5nZXRMYXllcnMoKS5yZW1vdmUobGF5ZXIub2wpO1xuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5jaGlsZHJlbi5pbmRleE9mKGxheWVyKTtcbiAgICBpZiAoaW5kZXggPj0gMCkge1xuICAgICAgdGhpcy5jaGlsZHJlbi5zcGxpY2UoaW5kZXgsIDEpO1xuICAgIH1cbiAgICBsYXllci5wYXJlbnQgPSBudWxsO1xuICAgIGxheWVyLm9wdGlvbnMucGFyZW50SWQgPSBudWxsO1xuXG4gICAgdGhpcy5zZXRDaGlsZHJlbk9ic2VydmVyKCk7XG4gIH1cblxuICBpc0Rlc2NlbmRhbnQobGF5ZXI6IEFueUxheWVyKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2dldERlc2NlbmRhbnRzKCkuc29tZShcbiAgICAgIChkZXNjZW5kYW50KSA9PiBkZXNjZW5kYW50LmlkID09PSBsYXllci5pZFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIHNldENoaWxkcmVuT2JzZXJ2ZXIoKTogdm9pZCB7XG4gICAgdGhpcy5pc0luUmVzb2x1dGlvbnNSYW5nZSQkPy51bnN1YnNjcmliZSgpO1xuXG4gICAgaWYgKCF0aGlzLmNoaWxkcmVuKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3Qgb2JzZXJ2ZXJzID0gdGhpcy5jaGlsZHJlbi5tYXAoKGxheWVyKSA9PiBsYXllci5pc0luUmVzb2x1dGlvbnNSYW5nZSQpO1xuICAgIHRoaXMuaXNJblJlc29sdXRpb25zUmFuZ2UkJCA9IGNvbWJpbmVMYXRlc3Qob2JzZXJ2ZXJzKS5zdWJzY3JpYmUoXG4gICAgICAodmFsdWVzKSA9PiB7XG4gICAgICAgIHRoaXMuaXNJblJlc29sdXRpb25zUmFuZ2UgPSB2YWx1ZXMuc29tZSgodmFsdWUpID0+IHZhbHVlKTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZU9sTGF5ZXIoKTogR3JvdXAge1xuICAgIHJldHVybiBuZXcgR3JvdXAoeyBwcm9wZXJ0aWVzOiB7IHRpdGxlOiB0aGlzLnRpdGxlIH0gfSk7XG4gIH1cblxuICBwcml2YXRlIGhhc0NoaWxkcmVuKGxheWVyOiBBbnlMYXllcik6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNoaWxkcmVuLnNvbWUoKGNoaWxkKSA9PiBjaGlsZC5pZCA9PT0gbGF5ZXIuaWQpO1xuICB9XG5cbiAgLyoqIHJlY3Vyc2l2ZSAqL1xuICBwcml2YXRlIF9nZXREZXNjZW5kYW50cyhjaGlsZHJlbiA9IHRoaXMuY2hpbGRyZW4pOiBBbnlMYXllcltdIHtcbiAgICByZXR1cm4gY2hpbGRyZW4ucmVkdWNlKChsaXN0LCBjaGlsZCkgPT4ge1xuICAgICAgaWYgKGNoaWxkIGluc3RhbmNlb2YgTGF5ZXJHcm91cCkge1xuICAgICAgICByZXR1cm4gbGlzdC5jb25jYXQoY2hpbGQsIC4uLnRoaXMuX2dldERlc2NlbmRhbnRzKGNoaWxkLmNoaWxkcmVuKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gbGlzdC5jb25jYXQoY2hpbGQpO1xuICAgICAgfVxuICAgIH0sIFtdKTtcbiAgfVxuXG4gIC8qKiByZWN1cnNpdmUgKi9cbiAgcHJpdmF0ZSBfZ2V0RGVzY2VuZGFudHNMZXZlbChjaGlsZHJlbiA9IHRoaXMuY2hpbGRyZW4pOiBudW1iZXIge1xuICAgIHJldHVybiBjaGlsZHJlbi5yZWR1Y2UoKGxldmVsLCBjaGlsZCkgPT4ge1xuICAgICAgaWYgKGNoaWxkIGluc3RhbmNlb2YgTGF5ZXJHcm91cCkge1xuICAgICAgICBsZXZlbCA9IGxldmVsICsgMTtcbiAgICAgICAgY29uc3QgZGVzY2VuZGFudExldmVsID0gdGhpcy5fZ2V0RGVzY2VuZGFudHNMZXZlbChjaGlsZC5jaGlsZHJlbik7XG4gICAgICAgIHJldHVybiBsZXZlbCArIGRlc2NlbmRhbnRMZXZlbDtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGxldmVsO1xuICAgIH0sIDApO1xuICB9XG59XG4iXX0=
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
export var TooltipType;
|
|
2
|
-
(function (TooltipType) {
|
|
3
|
-
TooltipType["TITLE"] = "title";
|
|
4
|
-
TooltipType["ABSTRACT"] = "abstract";
|
|
5
|
-
TooltipType["CUSTOM"] = "custom";
|
|
6
|
-
})(TooltipType || (TooltipType = {}));
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXIuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvbGF5ZXIvc2hhcmVkL2xheWVycy9sYXllci5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNkVBLE1BQU0sQ0FBTixJQUFZLFdBSVg7QUFKRCxXQUFZLFdBQVc7SUFDckIsOEJBQWUsQ0FBQTtJQUNmLG9DQUFxQixDQUFBO0lBQ3JCLGdDQUFpQixDQUFBO0FBQ25CLENBQUMsRUFKVyxXQUFXLEtBQVgsV0FBVyxRQUl0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1lc3NhZ2UgfSBmcm9tICdAaWdvMi9jb3JlL21lc3NhZ2UnO1xuXG5pbXBvcnQgb2xMYXllciBmcm9tICdvbC9sYXllci9MYXllcic7XG5pbXBvcnQgb2xTb3VyY2UgZnJvbSAnb2wvc291cmNlL1NvdXJjZSc7XG5cbmltcG9ydCB0eXBlIHtcbiAgQW55RGF0YVNvdXJjZU9wdGlvbnMsXG4gIERhdGFTb3VyY2Vcbn0gZnJvbSAnLi4vLi4vLi4vZGF0YXNvdXJjZS9zaGFyZWQvZGF0YXNvdXJjZXMnO1xuaW1wb3J0IHR5cGUgeyBNYXBFeHRlbnQgfSBmcm9tICcuLi8uLi8uLi9tYXAvc2hhcmVkL21hcC5pbnRlcmZhY2UnO1xuaW1wb3J0IHR5cGUgeyBMZWdlbmRPcHRpb25zIH0gZnJvbSAnLi9sZWdlbmQuaW50ZXJmYWNlJztcbmltcG9ydCB0eXBlIHsgTGF5ZXJzTGluayB9IGZyb20gJy4vbGlua2VkL2xpbmtlZC1sYXllci5pbnRlcmZhY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIExheWVyT3B0aW9ucyBleHRlbmRzIExheWVyT3B0aW9uc0Jhc2Uge1xuICBpc0lnb0ludGVybmFsTGF5ZXI/OiBib29sZWFuOyAvLyB1c2VmdWwgd2hlbiBtYXBPZmZsaW5lIGRpcmVjdGl2ZSBzZXQgdGhlIHJlc29sdXRpb24gb2YgdGhlIGxheWVycy5cbiAgc291cmNlPzogRGF0YVNvdXJjZTtcbiAgc291cmNlT3B0aW9ucz86IEFueURhdGFTb3VyY2VPcHRpb25zO1xuICBhbGlhcz86IHN0cmluZztcbiAgc2VjdXJpdHk/OiBMYXllclNlY3VyaXR5T3B0aW9ucztcbiAgYmFzZUxheWVyPzogYm9vbGVhbjtcbiAgbWVzc2FnZXM/OiBNZXNzYWdlW107XG4gIG1pblNjYWxlRGVub20/OiBudW1iZXI7XG4gIG1heFNjYWxlRGVub20/OiBudW1iZXI7XG4gIHJlbW92YWJsZT86IGJvb2xlYW47XG4gIHdvcmtzcGFjZT86IEdlb1dvcmtzcGFjZU9wdGlvbnM7XG4gIGxlZ2VuZE9wdGlvbnM/OiBMZWdlbmRPcHRpb25zO1xuICBvbD86IG9sTGF5ZXI8b2xTb3VyY2U+O1xuICB0b29sdGlwPzogVG9vbHRpcENvbnRlbnQ7XG4gIF9pbnRlcm5hbD86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIGxpbmtlZExheWVycz86IExheWVyc0xpbms7XG4gIHNob3dCdXR0b25ab29tVG9FeHRlbnQ/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExheWVyT3B0aW9uc0Jhc2Uge1xuICBpZD86IHN0cmluZyB8IG51bWJlcjtcbiAgLyoqXG4gICAqIEFuIHVuaXF1ZSBpZGVudGlmaWVyIGNhbGN1bGF0ZWQgY2xpZW50IHNpZGVcbiAgICogVGhlIG5hbWUgcHJvcCBwcm92aWRlIGEgd2F5IHRvIGhhdmUgYSB1bmlxdWUgaWRlbnRpZmllciBiZXR3ZWVuIGFsbCBsYXllcnNcbiAgICoqL1xuICBuYW1lPzogc3RyaW5nO1xuICB0aXRsZT86IHN0cmluZztcbiAgb3BhY2l0eT86IG51bWJlcjtcbiAgdmlzaWJsZT86IGJvb2xlYW47XG4gIGV4dGVudD86IE1hcEV4dGVudDtcbiAgekluZGV4PzogbnVtYmVyO1xuICBtaW5SZXNvbHV0aW9uPzogbnVtYmVyO1xuICBtYXhSZXNvbHV0aW9uPzogbnVtYmVyO1xuICBzaG93SW5MYXllckxpc3Q/OiBib29sZWFuO1xuICBwYXJlbnRJZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMYXllclNlY3VyaXR5T3B0aW9ucyB7XG4gIHByb2ZpbHM/OiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBHZW9Xb3Jrc3BhY2VPcHRpb25zIHtcbiAgc3JjSWQ/OiBzdHJpbmc7XG4gIHdvcmtzcGFjZUlkPzogc3RyaW5nO1xuICBtaW5SZXNvbHV0aW9uPzogbnVtYmVyO1xuICBtYXhSZXNvbHV0aW9uPzogbnVtYmVyO1xuICBlbmFibGVkPzogYm9vbGVhbjtcbiAgcXVlcnlPcHRpb25zPzogR2VvV29ya3NwYWNlUXVlcnlPcHRpb25zO1xuICBwYWdlU2l6ZT86IG51bWJlcjtcbiAgcGFnZVNpemVPcHRpb25zPzogbnVtYmVyW107XG4gIHNlYXJjaEluZGV4RW5hYmxlZD86IGJvb2xlYW47XG4gIHByaW50YWJsZT86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2VvV29ya3NwYWNlUXVlcnlPcHRpb25zIHtcbiAgbWFwUXVlcnlPbk9wZW5UYWI/OiBib29sZWFuO1xuICB0YWJRdWVyeT86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVG9vbHRpcENvbnRlbnQge1xuICB0eXBlPzogVG9vbHRpcFR5cGU7XG4gIHRleHQ/OiBzdHJpbmc7XG59XG5leHBvcnQgZW51bSBUb29sdGlwVHlwZSB7XG4gIFRJVExFID0gJ3RpdGxlJyxcbiAgQUJTVFJBQ1QgPSAnYWJzdHJhY3QnLFxuICBDVVNUT00gPSAnY3VzdG9tJ1xufVxuZXhwb3J0IHR5cGUgTGF5ZXJUeXBlID0gJ3ZlY3RvcicgfCAncmFzdGVyJyB8ICdncm91cCc7XG4iXX0=
|
|
@@ -1,178 +0,0 @@
|
|
|
1
|
-
import { BehaviorSubject } from 'rxjs';
|
|
2
|
-
import { isLayerLinked, isLinkMaster } from '../../shared/layers/linked/linked-layer.utils';
|
|
3
|
-
import { isLayerItem, isSaveableLayer } from '../../utils/layer.utils';
|
|
4
|
-
import { LayerBase } from './layer-base';
|
|
5
|
-
import { Linked } from './linked/linked-layer';
|
|
6
|
-
export class Layer extends LayerBase {
|
|
7
|
-
options;
|
|
8
|
-
messageService;
|
|
9
|
-
authInterceptor;
|
|
10
|
-
parent;
|
|
11
|
-
ol;
|
|
12
|
-
hasBeenVisible$ = new BehaviorSubject(undefined);
|
|
13
|
-
legend;
|
|
14
|
-
legendCollapsed = true;
|
|
15
|
-
link;
|
|
16
|
-
linkMaster;
|
|
17
|
-
resolution$$;
|
|
18
|
-
get id() {
|
|
19
|
-
return String(this.options.id || this.dataSource.id);
|
|
20
|
-
}
|
|
21
|
-
get visible() {
|
|
22
|
-
return super.visible;
|
|
23
|
-
}
|
|
24
|
-
set visible(value) {
|
|
25
|
-
super.visible = value;
|
|
26
|
-
if (!this.hasBeenVisible$.value && value) {
|
|
27
|
-
this.hasBeenVisible$.next(value);
|
|
28
|
-
}
|
|
29
|
-
if (this.options?.messages && value) {
|
|
30
|
-
this.options?.messages
|
|
31
|
-
.filter((m) => m.options?.showOnEachLayerVisibility)
|
|
32
|
-
.map((message) => this.showMessage(message));
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
get maxResolution() {
|
|
36
|
-
return super.maxResolution;
|
|
37
|
-
}
|
|
38
|
-
set maxResolution(value) {
|
|
39
|
-
super.maxResolution = value;
|
|
40
|
-
this.updateInResolutionsRange();
|
|
41
|
-
}
|
|
42
|
-
get minResolution() {
|
|
43
|
-
return super.minResolution;
|
|
44
|
-
}
|
|
45
|
-
set minResolution(value) {
|
|
46
|
-
super.minResolution = value;
|
|
47
|
-
this.updateInResolutionsRange();
|
|
48
|
-
}
|
|
49
|
-
get saveableOptions() {
|
|
50
|
-
if (!isSaveableLayer(this)) {
|
|
51
|
-
return undefined;
|
|
52
|
-
}
|
|
53
|
-
return {
|
|
54
|
-
...super.saveableOptions,
|
|
55
|
-
sourceOptions: this.dataSource.saveableOptions
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
|
-
constructor(options, messageService, authInterceptor) {
|
|
59
|
-
super(options);
|
|
60
|
-
this.options = options;
|
|
61
|
-
this.messageService = messageService;
|
|
62
|
-
this.authInterceptor = authInterceptor;
|
|
63
|
-
this.dataSource = options.source;
|
|
64
|
-
this.legendCollapsed = options.legendOptions
|
|
65
|
-
? options.legendOptions.collapsed
|
|
66
|
-
? options.legendOptions.collapsed
|
|
67
|
-
: true
|
|
68
|
-
: true;
|
|
69
|
-
if (options.legendOptions &&
|
|
70
|
-
(options.legendOptions.url || options.legendOptions.html)) {
|
|
71
|
-
this.legend = this.dataSource.setLegend(options.legendOptions);
|
|
72
|
-
}
|
|
73
|
-
this.ol = this.createOlLayer();
|
|
74
|
-
this.ol.set('_layer', this, true);
|
|
75
|
-
super.afterCreated();
|
|
76
|
-
}
|
|
77
|
-
init(map) {
|
|
78
|
-
super.init(map);
|
|
79
|
-
map.layerWatcher.watchLayer(this);
|
|
80
|
-
this.observeResolution();
|
|
81
|
-
this.hasBeenVisible$.subscribe(() => {
|
|
82
|
-
if (this.options.messages && this.visible) {
|
|
83
|
-
this.options.messages.map((message) => {
|
|
84
|
-
this.showMessage(message);
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
});
|
|
88
|
-
this.createLink();
|
|
89
|
-
}
|
|
90
|
-
createLink() {
|
|
91
|
-
if (!isLinkMaster(this) || this.link) {
|
|
92
|
-
return;
|
|
93
|
-
}
|
|
94
|
-
this.link = new Linked(this);
|
|
95
|
-
}
|
|
96
|
-
remove() {
|
|
97
|
-
super.remove();
|
|
98
|
-
this.unobserveResolution();
|
|
99
|
-
this.map.layerWatcher.unwatchLayer(this);
|
|
100
|
-
if (isLinkMaster(this)) {
|
|
101
|
-
this.link?.deleteChildren(this.map.layerController);
|
|
102
|
-
this.link?.destroy();
|
|
103
|
-
}
|
|
104
|
-
if (isLayerLinked(this)) {
|
|
105
|
-
if (!this.linkMaster) {
|
|
106
|
-
return;
|
|
107
|
-
}
|
|
108
|
-
const masterLayer = this.linkMaster.layer;
|
|
109
|
-
const hasSync = this.linkMaster.hasSyncDeletion(this);
|
|
110
|
-
this.linkMaster.remove(this);
|
|
111
|
-
if (hasSync && masterLayer) {
|
|
112
|
-
this.map.layerController.remove(masterLayer);
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
add(parent) {
|
|
117
|
-
super.add(parent);
|
|
118
|
-
if (isLayerLinked(this)) {
|
|
119
|
-
if (isLinkMaster(this)) {
|
|
120
|
-
this.link.init();
|
|
121
|
-
}
|
|
122
|
-
this.createLinkWithParent();
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
moveTo(parent) {
|
|
126
|
-
super.moveTo(parent);
|
|
127
|
-
if (isLayerLinked(this)) {
|
|
128
|
-
this.link?.move(this, parent);
|
|
129
|
-
this.linkMaster?.move(this, parent);
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
createLinkWithParent() {
|
|
133
|
-
const masterLayer = this.findParentByLinkId(this.map.layerController.all, this.options.linkedLayers.linkId);
|
|
134
|
-
if (masterLayer) {
|
|
135
|
-
this.linkMaster = masterLayer.link;
|
|
136
|
-
masterLayer?.link.add(this);
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
findParentByLinkId(layers, id) {
|
|
140
|
-
return layers.find((layer) => {
|
|
141
|
-
if (!isLayerItem(layer)) {
|
|
142
|
-
return;
|
|
143
|
-
}
|
|
144
|
-
if (layer.options.linkedLayers?.links) {
|
|
145
|
-
return layer.options.linkedLayers.links.some((l) => l.linkedIds.includes(id));
|
|
146
|
-
}
|
|
147
|
-
return false;
|
|
148
|
-
});
|
|
149
|
-
}
|
|
150
|
-
showMessage(message) {
|
|
151
|
-
if (!this.messageService) {
|
|
152
|
-
return;
|
|
153
|
-
}
|
|
154
|
-
this.messageService.message(message);
|
|
155
|
-
}
|
|
156
|
-
observeResolution() {
|
|
157
|
-
this.resolution$$ = this.map.viewController.resolution$.subscribe(() => this.updateInResolutionsRange());
|
|
158
|
-
}
|
|
159
|
-
unobserveResolution() {
|
|
160
|
-
if (this.resolution$$ !== undefined) {
|
|
161
|
-
this.resolution$$.unsubscribe();
|
|
162
|
-
this.resolution$$ = undefined;
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
updateInResolutionsRange() {
|
|
166
|
-
if (this.map !== undefined) {
|
|
167
|
-
const resolution = this.map.viewController.getResolution();
|
|
168
|
-
const minResolution = this.minResolution;
|
|
169
|
-
const maxResolution = this.maxResolution === undefined ? Infinity : this.maxResolution;
|
|
170
|
-
this.isInResolutionsRange =
|
|
171
|
-
resolution >= minResolution && resolution <= maxResolution;
|
|
172
|
-
}
|
|
173
|
-
else {
|
|
174
|
-
this.isInResolutionsRange = false;
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9sYXllci9zaGFyZWQvbGF5ZXJzL2xheWVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU1BLE9BQU8sRUFBRSxlQUFlLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBSXJELE9BQU8sRUFDTCxhQUFhLEVBQ2IsWUFBWSxFQUNiLE1BQU0sK0NBQStDLENBQUM7QUFDdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV2RSxPQUFPLEVBQUUsU0FBUyxFQUFrQixNQUFNLGNBQWMsQ0FBQztBQUd6RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFL0MsTUFBTSxPQUFnQixLQUFNLFNBQVEsU0FBUztJQTJEbEM7SUFDRztJQUNBO0lBM0RaLE1BQU0sQ0FBYTtJQUVuQixFQUFFLENBQWtCO0lBQ3BCLGVBQWUsR0FBRyxJQUFJLGVBQWUsQ0FBVSxTQUFTLENBQUMsQ0FBQztJQUMxRCxNQUFNLENBQVc7SUFDakIsZUFBZSxHQUFHLElBQUksQ0FBQztJQUN2QixJQUFJLENBQVU7SUFDZCxVQUFVLENBQVU7SUFDWixZQUFZLENBQWU7SUFFbkMsSUFBSSxFQUFFO1FBQ0osT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQsSUFBSSxPQUFPO1FBQ1QsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDO0lBQ3ZCLENBQUM7SUFDRCxJQUFJLE9BQU8sQ0FBQyxLQUFjO1FBQ3hCLEtBQUssQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUN6QyxJ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QztJQUNILENBQUM7SUFFTyx3QkFBd0I7UUFDOUIsSUFBSSxJQUFJLENBQUMsR0FBRyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQzNCLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQzNELE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7WUFDekMsTUFBTSxhQUFhLEdBQ2pCLElBQUksQ0FBQyxhQUFhLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUM7WUFDbkUsSUFBSSxDQUFDLG9CQUFvQjtnQkFDdkIsVUFBVSxJQUFJLGFBQWEsSUFBSSxVQUFVLElBQUksYUFBYSxDQUFDO1FBQy9ELENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLG9CQUFvQixHQUFHLEtBQUssQ0FBQztRQUNwQyxDQUFDO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXV0aEludGVyY2VwdG9yIH0gZnJvbSAnQGlnbzIvYXV0aCc7XG5pbXBvcnQgeyBNZXNzYWdlLCBNZXNzYWdlU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUvbWVzc2FnZSc7XG5cbmltcG9ydCBPbExheWVyIGZyb20gJ29sL2xheWVyL0xheWVyJztcbmltcG9ydCB7IFNvdXJjZSB9IGZyb20gJ29sL3NvdXJjZSc7XG5cbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IERhdGFTb3VyY2UsIExlZ2VuZCB9IGZyb20gJy4uLy4uLy4uL2RhdGFzb3VyY2Uvc2hhcmVkL2RhdGFzb3VyY2VzJztcbmltcG9ydCB0eXBlIHsgTWFwQmFzZSB9IGZyb20gJy4uLy4uLy4uL21hcC9zaGFyZWQvbWFwLmFic3RyYWN0JztcbmltcG9ydCB7XG4gIGlzTGF5ZXJMaW5rZWQsXG4gIGlzTGlua01hc3RlclxufSBmcm9tICcuLi8uLi9zaGFyZWQvbGF5ZXJzL2xpbmtlZC9saW5rZWQtbGF5ZXIudXRpbHMnO1xuaW1wb3J0IHsgaXNMYXllckl0ZW0sIGlzU2F2ZWFibGVMYXllciB9IGZyb20gJy4uLy4uL3V0aWxzL2xheWVyLnV0aWxzJztcbmltcG9ydCB7IEFueUxheWVyIH0gZnJvbSAnLi9hbnktbGF5ZXInO1xuaW1wb3J0IHsgTGF5ZXJCYXNlLCBMYXllckdyb3VwQmFzZSB9IGZyb20gJy4vbGF5ZXItYmFzZSc7XG5pbXBvcnQgeyB0eXBlIExheWVyR3JvdXAgfSBmcm9tICcuL2xheWVyLWdyb3VwJztcbmltcG9ydCB7IHR5cGUgTGF5ZXJPcHRpb25zIH0gZnJvbSAnLi9sYXllci5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTGlua2VkIH0gZnJvbSAnLi9saW5rZWQvbGlua2VkLWxheWVyJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIExheWVyIGV4dGVuZHMgTGF5ZXJCYXNlIHtcbiAgZGVjbGFyZSBkYXRhU291cmNlOiBEYXRhU291cmNlO1xuICBwYXJlbnQ6IExheWVyR3JvdXA7XG5cbiAgb2w6IE9sTGF5ZXI8U291cmNlPjtcbiAgaGFzQmVlblZpc2libGUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih1bmRlZmluZWQpO1xuICBsZWdlbmQ6IExlZ2VuZFtdO1xuICBsZWdlbmRDb2xsYXBzZWQgPSB0cnVlO1xuICBsaW5rPzogTGlua2VkO1xuICBsaW5rTWFzdGVyPzogTGlua2VkO1xuICBwcml2YXRlIHJlc29sdXRpb24kJDogU3Vic2NyaXB0aW9uO1xuXG4gIGdldCBpZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBTdHJpbmcodGhpcy5vcHRpb25zLmlkIHx8IHRoaXMuZGF0YVNvdXJjZS5pZCk7XG4gIH1cblxuICBnZXQgdmlzaWJsZSgpIHtcbiAgICByZXR1cm4gc3VwZXIudmlzaWJsZTtcbiAgfVxuICBzZXQgdmlzaWJsZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHN1cGVyLnZpc2libGUgPSB2YWx1ZTtcbiAgICBpZiAoIXRoaXMuaGFzQmVlblZpc2libGUkLnZhbHVlICYmIHZhbHVlKSB7XG4gICAgICB0aGlzLmhhc0JlZW5WaXNpYmxlJC5uZXh0KHZhbHVlKTtcbiAgICB9XG4gICAgaWYgKHRoaXMub3B0aW9ucz8ubWVzc2FnZXMgJiYgdmFsdWUpIHtcbiAgICAgIHRoaXMub3B0aW9ucz8ubWVzc2FnZXNcbiAgICAgICAgLmZpbHRlcigobSkgPT4gbS5vcHRpb25zPy5zaG93T25FYWNoTGF5ZXJWaXNpYmlsaXR5KVxuICAgICAgICAubWFwKChtZXNzYWdlKSA9PiB0aGlzLnNob3dNZXNzYWdlKG1lc3NhZ2UpKTtcbiAgICB9XG4gIH1cblxuICBnZXQgbWF4UmVzb2x1dGlvbigpIHtcbiAgICByZXR1cm4gc3VwZXIubWF4UmVzb2x1dGlvbjtcbiAgfVxuICBzZXQgbWF4UmVzb2x1dGlvbih2YWx1ZTogbnVtYmVyKSB7XG4gICAgc3VwZXIubWF4UmVzb2x1dGlvbiA9IHZhbHVlO1xuICAgIHRoaXMudXBkYXRlSW5SZXNvbHV0aW9uc1JhbmdlKCk7XG4gIH1cblxuICBnZXQgbWluUmVzb2x1dGlvbigpIHtcbiAgICByZXR1cm4gc3VwZXIubWluUmVzb2x1dGlvbjtcbiAgfVxuICBzZXQgbWluUmVzb2x1dGlvbih2YWx1ZTogbnVtYmVyKSB7XG4gICAgc3VwZXIubWluUmVzb2x1dGlvbiA9IHZhbHVlO1xuICAgIHRoaXMudXBkYXRlSW5SZXNvbHV0aW9uc1JhbmdlKCk7XG4gIH1cblxuICBnZXQgc2F2ZWFibGVPcHRpb25zKCk6IFBhcnRpYWw8TGF5ZXJPcHRpb25zPiB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCFpc1NhdmVhYmxlTGF5ZXIodGhpcykpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnN1cGVyLnNhdmVhYmxlT3B0aW9ucyxcbiAgICAgIHNvdXJjZU9wdGlvbnM6IHRoaXMuZGF0YVNvdXJjZS5zYXZlYWJsZU9wdGlvbnNcbiAgICB9O1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIG9wdGlvbnM6IExheWVyT3B0aW9ucyxcbiAgICBwcm90ZWN0ZWQgbWVzc2FnZVNlcnZpY2U/OiBNZXNzYWdlU2VydmljZSxcbiAgICBwcm90ZWN0ZWQgYXV0aEludGVyY2VwdG9yPzogQXV0aEludGVyY2VwdG9yXG4gICkge1xuICAgIHN1cGVyKG9wdGlvbnMpO1xuXG4gICAgdGhpcy5kYXRhU291cmNlID0gb3B0aW9ucy5zb3VyY2U7XG5cbiAgICB0aGlzLmxlZ2VuZENvbGxhcHNlZCA9IG9wdGlvbnMubGVnZW5kT3B0aW9uc1xuICAgICAgPyBvcHRpb25zLmxlZ2VuZE9wdGlvbnMuY29sbGFwc2VkXG4gICAgICAgID8gb3B0aW9ucy5sZWdlbmRPcHRpb25zLmNvbGxhcHNlZFxuICAgICAgICA6IHRydWVcbiAgICAgIDogdHJ1ZTtcblxuICAgIGlmIChcbiAgICAgIG9wdGlvbnMubGVnZW5kT3B0aW9ucyAmJlxuICAgICAgKG9wdGlvbnMubGVnZW5kT3B0aW9ucy51cmwgfHwgb3B0aW9ucy5sZWdlbmRPcHRpb25zLmh0bWwpXG4gICAgKSB7XG4gICAgICB0aGlzLmxlZ2VuZCA9IHRoaXMuZGF0YVNvdXJjZS5zZXRMZWdlbmQob3B0aW9ucy5sZWdlbmRPcHRpb25zKTtcbiAgICB9XG5cbiAgICB0aGlzLm9sID0gdGhpcy5jcmVhdGVPbExheWVyKCk7XG4gICAgdGhpcy5vbC5zZXQoJ19sYXllcicsIHRoaXMsIHRydWUpO1xuXG4gICAgc3VwZXIuYWZ0ZXJDcmVhdGVkKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgY3JlYXRlT2xMYXllcigpOiBPbExheWVyPFNvdXJjZT47XG5cbiAgaW5pdChtYXA6IE1hcEJhc2UpOiB2b2lkIHtcbiAgICBzdXBlci5pbml0KG1hcCk7XG5cbiAgICBtYXAubGF5ZXJXYXRjaGVyLndhdGNoTGF5ZXIodGhpcyk7XG5cbiAgICB0aGlzLm9ic2VydmVSZXNvbHV0aW9uKCk7XG4gICAgdGhpcy5oYXNCZWVuVmlzaWJsZSQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIGlmICh0aGlzLm9wdGlvbnMubWVzc2FnZXMgJiYgdGhpcy52aXNpYmxlKSB7XG4gICAgICAgIHRoaXMub3B0aW9ucy5tZXNzYWdlcy5tYXAoKG1lc3NhZ2UpID0+IHtcbiAgICAgICAgICB0aGlzLnNob3dNZXNzYWdlKG1lc3NhZ2UpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRoaXMuY3JlYXRlTGluaygpO1xuICB9XG5cbiAgY3JlYXRlTGluaygpOiB2b2lkIHtcbiAgICBpZiAoIWlzTGlua01hc3Rlcih0aGlzKSB8fCB0aGlzLmxpbmspIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5saW5rID0gbmV3IExpbmtlZCh0aGlzKTtcbiAgfVxuXG4gIHJlbW92ZSgpOiB2b2lkIHtcbiAgICBzdXBlci5yZW1vdmUoKTtcblxuICAgIHRoaXMudW5vYnNlcnZlUmVzb2x1dGlvbigpO1xuXG4gICAgdGhpcy5tYXAubGF5ZXJXYXRjaGVyLnVud2F0Y2hMYXllcih0aGlzKTtcblxuICAgIGlmIChpc0xpbmtNYXN0ZXIodGhpcykpIHtcbiAgICAgIHRoaXMubGluaz8uZGVsZXRlQ2hpbGRyZW4odGhpcy5tYXAubGF5ZXJDb250cm9sbGVyKTtcbiAgICAgIHRoaXMubGluaz8uZGVzdHJveSgpO1xuICAgIH1cblxuICAgIGlmIChpc0xheWVyTGlua2VkKHRoaXMpKSB7XG4gICAgICBpZiAoIXRoaXMubGlua01hc3Rlcikge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBjb25zdCBtYXN0ZXJMYXllciA9IHRoaXMubGlua01hc3Rlci5sYXllcjtcbiAgICAgIGNvbnN0IGhhc1N5bmMgPSB0aGlzLmxpbmtNYXN0ZXIuaGFzU3luY0RlbGV0aW9uKHRoaXMpO1xuXG4gICAgICB0aGlzLmxpbmtNYXN0ZXIucmVtb3ZlKHRoaXMpO1xuXG4gICAgICBpZiAoaGFzU3luYyAmJiBtYXN0ZXJMYXllcikge1xuICAgICAgICB0aGlzLm1hcC5sYXllckNvbnRyb2xsZXIucmVtb3ZlKG1hc3RlckxheWVyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBhZGQocGFyZW50PzogTGF5ZXJHcm91cEJhc2UpOiB2b2lkIHtcbiAgICBzdXBlci5hZGQocGFyZW50KTtcblxuICAgIGlmIChpc0xheWVyTGlua2VkKHRoaXMpKSB7XG4gICAgICBpZiAoaXNMaW5rTWFzdGVyKHRoaXMpKSB7XG4gICAgICAgIHRoaXMubGluay5pbml0KCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuY3JlYXRlTGlua1dpdGhQYXJlbnQoKTtcbiAgICB9XG4gIH1cblxuICBtb3ZlVG8ocGFyZW50PzogTGF5ZXJHcm91cCk6IHZvaWQge1xuICAgIHN1cGVyLm1vdmVUbyhwYXJlbnQpO1xuXG4gICAgaWYgKGlzTGF5ZXJMaW5rZWQodGhpcykpIHtcbiAgICAgIHRoaXMubGluaz8ubW92ZSh0aGlzLCBwYXJlbnQpO1xuICAgICAgdGhpcy5saW5rTWFzdGVyPy5tb3ZlKHRoaXMsIHBhcmVudCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVMaW5rV2l0aFBhcmVudCgpIHtcbiAgICBjb25zdCBtYXN0ZXJMYXllciA9IHRoaXMuZmluZFBhcmVudEJ5TGlua0lkKFxuICAgICAgdGhpcy5tYXAubGF5ZXJDb250cm9sbGVyLmFsbCxcbiAgICAgIHRoaXMub3B0aW9ucy5saW5rZWRMYXllcnMubGlua0lkXG4gICAgKTtcbiAgICBpZiAobWFzdGVyTGF5ZXIpIHtcbiAgICAgIHRoaXMubGlua01hc3RlciA9IG1hc3RlckxheWVyLmxpbms7XG4gICAgICBtYXN0ZXJMYXllcj8ubGluay5hZGQodGhpcyk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBmaW5kUGFyZW50QnlMaW5rSWQobGF5ZXJzOiBBbnlMYXllcltdLCBpZDogc3RyaW5nKTogTGF5ZXIge1xuICAgIHJldHVybiBsYXllcnMuZmluZCgobGF5ZXIpID0+IHtcbiAgICAgIGlmICghaXNMYXllckl0ZW0obGF5ZXIpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGlmIChsYXllci5vcHRpb25zLmxpbmtlZExheWVycz8ubGlua3MpIHtcbiAgICAgICAgcmV0dXJuIGxheWVyLm9wdGlvbnMubGlua2VkTGF5ZXJzLmxpbmtzLnNvbWUoKGwpID0+XG4gICAgICAgICAgbC5saW5rZWRJZHMuaW5jbHVkZXMoaWQpXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfSkgYXMgTGF5ZXI7XG4gIH1cblxuICBwcml2YXRlIHNob3dNZXNzYWdlKG1lc3NhZ2U6IE1lc3NhZ2UpIHtcbiAgICBpZiAoIXRoaXMubWVzc2FnZVNlcnZpY2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5tZXNzYWdlU2VydmljZS5tZXNzYWdlKG1lc3NhZ2UgYXMgTWVzc2FnZSk7XG4gIH1cblxuICBwcml2YXRlIG9ic2VydmVSZXNvbHV0aW9uKCkge1xuICAgIHRoaXMucmVzb2x1dGlvbiQkID0gdGhpcy5tYXAudmlld0NvbnRyb2xsZXIucmVzb2x1dGlvbiQuc3Vic2NyaWJlKCgpID0+XG4gICAgICB0aGlzLnVwZGF0ZUluUmVzb2x1dGlvbnNSYW5nZSgpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgdW5vYnNlcnZlUmVzb2x1dGlvbigpIHtcbiAgICBpZiAodGhpcy5yZXNvbHV0aW9uJCQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5yZXNvbHV0aW9uJCQudW5zdWJzY3JpYmUoKTtcbiAgICAgIHRoaXMucmVzb2x1dGlvbiQkID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlSW5SZXNvbHV0aW9uc1JhbmdlKCkge1xuICAgIGlmICh0aGlzLm1hcCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBjb25zdCByZXNvbHV0aW9uID0gdGhpcy5tYXAudmlld0NvbnRyb2xsZXIuZ2V0UmVzb2x1dGlvbigpO1xuICAgICAgY29uc3QgbWluUmVzb2x1dGlvbiA9IHRoaXMubWluUmVzb2x1dGlvbjtcbiAgICAgIGNvbnN0IG1heFJlc29sdXRpb24gPVxuICAgICAgICB0aGlzLm1heFJlc29sdXRpb24gPT09IHVuZGVmaW5lZCA/IEluZmluaXR5IDogdGhpcy5tYXhSZXNvbHV0aW9uO1xuICAgICAgdGhpcy5pc0luUmVzb2x1dGlvbnNSYW5nZSA9XG4gICAgICAgIHJlc29sdXRpb24gPj0gbWluUmVzb2x1dGlvbiAmJiByZXNvbHV0aW9uIDw9IG1heFJlc29sdXRpb247XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaXNJblJlc29sdXRpb25zUmFuZ2UgPSBmYWxzZTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnZW5kLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2xheWVyL3NoYXJlZC9sYXllcnMvbGVnZW5kLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWFwVmlld09wdGlvbnMgfSBmcm9tICcuLi8uLi8uLi9tYXAvc2hhcmVkL21hcC5pbnRlcmZhY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIExlZ2VuZE9wdGlvbnMge1xuICBjb2xsYXBzZWQ/OiBib29sZWFuO1xuICBkaXNwbGF5PzogYm9vbGVhbjtcbiAgdXJsPzogc3RyaW5nO1xuICBodG1sPzogc3RyaW5nO1xuICBzdHlsZXNBdmFpbGFibGU/OiBJdGVtU3R5bGVPcHRpb25zW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGVnZW5kTWFwVmlld09wdGlvbnMgZXh0ZW5kcyBNYXBWaWV3T3B0aW9ucyB7XG4gIHNjYWxlPzogbnVtYmVyO1xuICBzaXplPzogW251bWJlciwgbnVtYmVyXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJdGVtU3R5bGVPcHRpb25zIHtcbiAgbmFtZTogc3RyaW5nO1xuICB0aXRsZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPdXRwdXRMYXllckxlZ2VuZCB7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIHVybDogc3RyaW5nO1xuICBkaXNwbGF5OiBib29sZWFuO1xuICBpc0luUmVzb2x1dGlvbnNSYW5nZTogYm9vbGVhbjtcbn1cbiJdfQ==
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export * from './linked-layer';
|
|
2
|
-
export * from './linked-layer.interface';
|
|
3
|
-
export * from './linked-layer.utils';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9sYXllci9zaGFyZWQvbGF5ZXJzL2xpbmtlZC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGlua2VkLWxheWVyJztcbmV4cG9ydCAqIGZyb20gJy4vbGlua2VkLWxheWVyLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpbmtlZC1sYXllci51dGlscyc7XG4iXX0=
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
export var LinkedProperties;
|
|
2
|
-
(function (LinkedProperties) {
|
|
3
|
-
LinkedProperties["OPACITY"] = "opacity";
|
|
4
|
-
LinkedProperties["VISIBLE"] = "visible";
|
|
5
|
-
LinkedProperties["DISPLAYED"] = "displayed";
|
|
6
|
-
LinkedProperties["OGCFILTERS"] = "ogcFilters";
|
|
7
|
-
LinkedProperties["MINRESOLUTION"] = "minResolution";
|
|
8
|
-
LinkedProperties["MAXRESOLUTION"] = "maxResolution";
|
|
9
|
-
LinkedProperties["ZINDEX"] = "zIndex";
|
|
10
|
-
LinkedProperties["TIMEFILTER"] = "timeFilter";
|
|
11
|
-
})(LinkedProperties || (LinkedProperties = {}));
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlua2VkLWxheWVyLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2xheWVyL3NoYXJlZC9sYXllcnMvbGlua2VkL2xpbmtlZC1sYXllci5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMEJBLE1BQU0sQ0FBTixJQUFZLGdCQVNYO0FBVEQsV0FBWSxnQkFBZ0I7SUFDMUIsdUNBQW1CLENBQUE7SUFDbkIsdUNBQW1CLENBQUE7SUFDbkIsMkNBQXVCLENBQUE7SUFDdkIsNkNBQXlCLENBQUE7SUFDekIsbURBQStCLENBQUE7SUFDL0IsbURBQStCLENBQUE7SUFDL0IscUNBQWlCLENBQUE7SUFDakIsNkNBQXlCLENBQUE7QUFDM0IsQ0FBQyxFQVRXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFTM0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEFueUxheWVyIH0gZnJvbSAnLi4vYW55LWxheWVyJztcbmltcG9ydCB0eXBlIHsgTGF5ZXIgfSBmcm9tICcuLi9sYXllcic7XG5cbmV4cG9ydCB0eXBlIEFueVByb3BlcnR5T3B0aW9ucyA9IFppbmRleFByb3BlcnR5T3B0aW9ucyB8IEJhc2VQcm9wZXJ0eU9wdGlvbnM7XG5cbmV4cG9ydCBpbnRlcmZhY2UgWmluZGV4UHJvcGVydHlPcHRpb25zIGV4dGVuZHMgQmFzZVByb3BlcnR5T3B0aW9ucyB7XG4gIGluaXRpYWxPcmRlcjogQW55TGF5ZXJbXTtcbn1cblxuaW50ZXJmYWNlIEJhc2VQcm9wZXJ0eU9wdGlvbnMge1xuICBsYXllcnM6IExheWVyW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGF5ZXJzTGluayB7XG4gIGxpbmtJZDogc3RyaW5nO1xuICAvKiogRGVmYXVsdCB2YWx1ZSBpcyB0cnVlICovXG4gIHNob3dJbk1pbmlCYXNlTWFwPzogYm9vbGVhbjtcbiAgbGlua3M/OiBMYXllcnNMaW5rUHJvcGVydGllc1tdO1xufVxuZXhwb3J0IGludGVyZmFjZSBMYXllcnNMaW5rUHJvcGVydGllcyB7XG4gIGJpZGlyZWN0aW9ubmFsPzogYm9vbGVhbjtcbiAgbGlua2VkSWRzOiBzdHJpbmdbXTtcbiAgc3luY2VkRGVsZXRlOiBib29sZWFuO1xuICBwcm9wZXJ0aWVzOiBMaW5rZWRQcm9wZXJ0aWVzW107XG59XG5cbmV4cG9ydCBlbnVtIExpbmtlZFByb3BlcnRpZXMge1xuICBPUEFDSVRZID0gJ29wYWNpdHknLFxuICBWSVNJQkxFID0gJ3Zpc2libGUnLFxuICBESVNQTEFZRUQgPSAnZGlzcGxheWVkJyxcbiAgT0dDRklMVEVSUyA9ICdvZ2NGaWx0ZXJzJyxcbiAgTUlOUkVTT0xVVElPTiA9ICdtaW5SZXNvbHV0aW9uJyxcbiAgTUFYUkVTT0xVVElPTiA9ICdtYXhSZXNvbHV0aW9uJyxcbiAgWklOREVYID0gJ3pJbmRleCcsXG4gIFRJTUVGSUxURVIgPSAndGltZUZpbHRlcidcbn1cbiJdfQ==
|