@igo2/geo 1.14.3 → 1.14.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/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/esm2020/igo2-geo.mjs +4 -4
- package/esm2020/lib/catalog/catalog-browser/catalog-browser-group.component.mjs +300 -300
- package/esm2020/lib/catalog/catalog-browser/catalog-browser-layer.component.mjs +305 -305
- package/esm2020/lib/catalog/catalog-browser/catalog-browser.component.mjs +246 -246
- package/esm2020/lib/catalog/catalog-browser/catalog-browser.module.mjs +79 -79
- package/esm2020/lib/catalog/catalog-library/add-catalog-dialog.component.mjs +208 -208
- package/esm2020/lib/catalog/catalog-library/catalog-library-item.component.mjs +78 -78
- package/esm2020/lib/catalog/catalog-library/catalog-library.component.mjs +216 -216
- package/esm2020/lib/catalog/catalog-library/catalog-library.module.mjs +94 -94
- package/esm2020/lib/catalog/catalog.module.mjs +52 -52
- package/esm2020/lib/catalog/index.mjs +4 -4
- package/esm2020/lib/catalog/shared/catalog.abstract.mjs +94 -94
- package/esm2020/lib/catalog/shared/catalog.enum.mjs +15 -15
- package/esm2020/lib/catalog/shared/catalog.interface.mjs +1 -1
- package/esm2020/lib/catalog/shared/catalog.service.mjs +605 -605
- package/esm2020/lib/catalog/shared/index.mjs +5 -5
- package/esm2020/lib/datasource/datasource.module.mjs +21 -21
- package/esm2020/lib/datasource/index.mjs +3 -3
- package/esm2020/lib/datasource/shared/capabilities.service.mjs +431 -431
- package/esm2020/lib/datasource/shared/datasource.service.mjs +235 -235
- package/esm2020/lib/datasource/shared/datasources/any-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/any-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/arcgisrest-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/arcgisrest-datasource.mjs +144 -144
- package/esm2020/lib/datasource/shared/datasources/carto-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/carto-datasource.mjs +108 -108
- package/esm2020/lib/datasource/shared/datasources/cluster-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/cluster-datasource.mjs +14 -14
- package/esm2020/lib/datasource/shared/datasources/data.service.mjs +2 -2
- package/esm2020/lib/datasource/shared/datasources/datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/datasource.mjs +28 -28
- package/esm2020/lib/datasource/shared/datasources/feature-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/feature-datasource.mjs +42 -42
- package/esm2020/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/imagearcgisrest-datasource.mjs +56 -56
- package/esm2020/lib/datasource/shared/datasources/index.mjs +36 -36
- package/esm2020/lib/datasource/shared/datasources/mvt-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/mvt-datasource.mjs +27 -27
- package/esm2020/lib/datasource/shared/datasources/osm-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/osm-datasource.mjs +11 -11
- package/esm2020/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/tilearcgisrest-datasource.mjs +48 -48
- package/esm2020/lib/datasource/shared/datasources/tiledebug-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/tiledebug-datasource.mjs +14 -14
- package/esm2020/lib/datasource/shared/datasources/websocket-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/websocket-datasource.mjs +53 -53
- package/esm2020/lib/datasource/shared/datasources/wfs-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/wfs-datasource.mjs +71 -71
- package/esm2020/lib/datasource/shared/datasources/wfs.service.mjs +151 -151
- package/esm2020/lib/datasource/shared/datasources/wms-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/wms-datasource.mjs +205 -205
- package/esm2020/lib/datasource/shared/datasources/wms-wfs.utils.mjs +206 -206
- package/esm2020/lib/datasource/shared/datasources/wmts-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/wmts-datasource.mjs +15 -15
- package/esm2020/lib/datasource/shared/datasources/xyz-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/xyz-datasource.mjs +8 -8
- package/esm2020/lib/datasource/shared/index.mjs +4 -4
- package/esm2020/lib/datasource/shared/options/index.mjs +4 -4
- package/esm2020/lib/datasource/shared/options/options-api.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/options/options-api.providers.mjs +14 -14
- package/esm2020/lib/datasource/shared/options/options-api.service.mjs +80 -80
- package/esm2020/lib/datasource/shared/options/options.service.mjs +2 -2
- package/esm2020/lib/datasource/utils/esri-style-generator.mjs +356 -356
- package/esm2020/lib/datasource/utils/index.mjs +2 -2
- package/esm2020/lib/datasource/utils/tilegrid.mjs +19 -19
- package/esm2020/lib/directions/directions-buttons/directions-buttons.component.mjs +223 -223
- package/esm2020/lib/directions/directions-buttons/index.mjs +2 -2
- package/esm2020/lib/directions/directions-inputs/directions-inputs.component.mjs +289 -289
- package/esm2020/lib/directions/directions-inputs/index.mjs +2 -2
- package/esm2020/lib/directions/directions-results/directions-results.component.mjs +195 -195
- package/esm2020/lib/directions/directions-results/index.mjs +2 -2
- package/esm2020/lib/directions/directions-sources/directions-source.interface.mjs +1 -1
- package/esm2020/lib/directions/directions-sources/directions-source.mjs +2 -2
- package/esm2020/lib/directions/directions-sources/directions-source.provider.mjs +15 -15
- package/esm2020/lib/directions/directions-sources/index.mjs +5 -5
- package/esm2020/lib/directions/directions-sources/osrm-directions-source.mjs +99 -99
- package/esm2020/lib/directions/directions.component.mjs +310 -310
- package/esm2020/lib/directions/directions.module.mjs +101 -101
- package/esm2020/lib/directions/index.mjs +7 -7
- package/esm2020/lib/directions/shared/directions-source.service.mjs +17 -17
- package/esm2020/lib/directions/shared/directions.enum.mjs +28 -28
- package/esm2020/lib/directions/shared/directions.interface.mjs +1 -1
- package/esm2020/lib/directions/shared/directions.service.mjs +28 -28
- package/esm2020/lib/directions/shared/directions.utils.mjs +508 -508
- package/esm2020/lib/directions/shared/index.mjs +6 -6
- package/esm2020/lib/directions/shared/store.mjs +23 -23
- package/esm2020/lib/download/download-button/download-button.component.mjs +60 -60
- package/esm2020/lib/download/download-button/index.mjs +2 -2
- package/esm2020/lib/download/download.module.mjs +41 -41
- package/esm2020/lib/download/index.mjs +3 -3
- package/esm2020/lib/download/shared/download.interface.mjs +2 -2
- package/esm2020/lib/download/shared/download.service.mjs +64 -64
- package/esm2020/lib/download/shared/index.mjs +3 -3
- package/esm2020/lib/draw/draw/draw-layer-popup.component.mjs +54 -54
- package/esm2020/lib/draw/draw/draw-popup.component.mjs +590 -590
- package/esm2020/lib/draw/draw/draw-shorcuts.component.mjs +47 -47
- package/esm2020/lib/draw/draw/draw.component.mjs +1298 -1298
- package/esm2020/lib/draw/draw/draw.module.mjs +112 -112
- package/esm2020/lib/draw/drawingTool.module.mjs +19 -19
- package/esm2020/lib/draw/index.mjs +3 -3
- package/esm2020/lib/draw/shared/draw-icon.service.mjs +26 -26
- package/esm2020/lib/draw/shared/draw-style.service.mjs +189 -189
- package/esm2020/lib/draw/shared/draw.enum.mjs +36 -36
- package/esm2020/lib/draw/shared/draw.interface.mjs +1 -1
- package/esm2020/lib/draw/shared/draw.utils.mjs +121 -121
- package/esm2020/lib/draw/shared/index.mjs +5 -5
- package/esm2020/lib/feature/feature-details/feature-details.component.mjs +404 -404
- package/esm2020/lib/feature/feature-details/feature-details.directive.mjs +53 -53
- package/esm2020/lib/feature/feature-details/feature-details.module.mjs +47 -47
- package/esm2020/lib/feature/feature-form/feature-form.component.mjs +111 -111
- package/esm2020/lib/feature/feature-form/feature-form.module.mjs +33 -33
- package/esm2020/lib/feature/feature.module.mjs +27 -27
- package/esm2020/lib/feature/index.mjs +3 -3
- package/esm2020/lib/feature/shared/feature.enums.mjs +9 -9
- package/esm2020/lib/feature/shared/feature.interfaces.mjs +1 -1
- package/esm2020/lib/feature/shared/feature.utils.mjs +346 -346
- package/esm2020/lib/feature/shared/index.mjs +6 -6
- package/esm2020/lib/feature/shared/store.mjs +123 -123
- package/esm2020/lib/feature/shared/strategies/in-map-extent.mjs +112 -112
- package/esm2020/lib/feature/shared/strategies/in-map-resolution.mjs +93 -93
- package/esm2020/lib/feature/shared/strategies/index.mjs +5 -5
- package/esm2020/lib/feature/shared/strategies/loading-layer.mjs +103 -103
- package/esm2020/lib/feature/shared/strategies/loading.mjs +132 -132
- package/esm2020/lib/feature/shared/strategies/selection.mjs +369 -369
- package/esm2020/lib/feature/shared/strategies.utils.mjs +36 -36
- package/esm2020/lib/filter/filter.module.mjs +288 -288
- package/esm2020/lib/filter/index.mjs +15 -15
- package/esm2020/lib/filter/ogc-filter-button/index.mjs +1 -1
- package/esm2020/lib/filter/ogc-filter-button/ogc-filter-button.component.mjs +139 -139
- package/esm2020/lib/filter/ogc-filter-form/index.mjs +1 -1
- package/esm2020/lib/filter/ogc-filter-form/ogc-filter-form.component.mjs +644 -644
- package/esm2020/lib/filter/ogc-filter-selection/index.mjs +1 -1
- package/esm2020/lib/filter/ogc-filter-selection/ogc-filter-selection.component.mjs +1301 -1301
- package/esm2020/lib/filter/ogc-filter-time/index.mjs +2 -2
- package/esm2020/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.mjs +176 -176
- package/esm2020/lib/filter/ogc-filter-time/ogc-filter-time.component.mjs +897 -897
- package/esm2020/lib/filter/ogc-filterable-form/index.mjs +1 -1
- package/esm2020/lib/filter/ogc-filterable-form/ogc-filterable-form.component.mjs +58 -58
- package/esm2020/lib/filter/ogc-filterable-item/index.mjs +1 -1
- package/esm2020/lib/filter/ogc-filterable-item/ogc-filterable-item.component.mjs +306 -306
- package/esm2020/lib/filter/ogc-filterable-list/index.mjs +2 -2
- package/esm2020/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.mjs +30 -30
- package/esm2020/lib/filter/ogc-filterable-list/ogc-filterable-list.component.mjs +43 -43
- package/esm2020/lib/filter/shared/filterable-datasource.pipe.mjs +54 -54
- package/esm2020/lib/filter/shared/index.mjs +11 -11
- package/esm2020/lib/filter/shared/ogc-filter-time.service.mjs +71 -71
- package/esm2020/lib/filter/shared/ogc-filter.enum.mjs +29 -29
- package/esm2020/lib/filter/shared/ogc-filter.interface.mjs +1 -1
- package/esm2020/lib/filter/shared/ogc-filter.mjs +691 -691
- package/esm2020/lib/filter/shared/ogc-filter.service.mjs +45 -45
- package/esm2020/lib/filter/shared/spatial-filter.enum.mjs +22 -22
- package/esm2020/lib/filter/shared/spatial-filter.interface.mjs +1 -1
- package/esm2020/lib/filter/shared/spatial-filter.service.mjs +268 -268
- package/esm2020/lib/filter/shared/time-filter.enum.mjs +12 -12
- package/esm2020/lib/filter/shared/time-filter.interface.mjs +1 -1
- package/esm2020/lib/filter/shared/time-filter.service.mjs +106 -106
- package/esm2020/lib/filter/spatial-filter/spatial-filter-item/index.mjs +1 -1
- package/esm2020/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.mjs +1088 -1088
- package/esm2020/lib/filter/spatial-filter/spatial-filter-list/index.mjs +1 -1
- package/esm2020/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.mjs +207 -207
- package/esm2020/lib/filter/spatial-filter/spatial-filter-type/index.mjs +1 -1
- package/esm2020/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.mjs +143 -143
- package/esm2020/lib/filter/time-filter-button/index.mjs +1 -1
- package/esm2020/lib/filter/time-filter-button/time-filter-button.component.mjs +77 -77
- package/esm2020/lib/filter/time-filter-form/index.mjs +1 -1
- package/esm2020/lib/filter/time-filter-form/time-filter-form.component.mjs +733 -733
- package/esm2020/lib/filter/time-filter-item/index.mjs +1 -1
- package/esm2020/lib/filter/time-filter-item/time-filter-item.component.mjs +118 -118
- package/esm2020/lib/filter/time-filter-list/index.mjs +2 -2
- package/esm2020/lib/filter/time-filter-list/time-filter-list-binding.directive.mjs +30 -30
- package/esm2020/lib/filter/time-filter-list/time-filter-list.component.mjs +38 -38
- package/esm2020/lib/geo.module.mjs +101 -101
- package/esm2020/lib/geometry/geometry-form-field/geometry-form-field-input.component.mjs +520 -520
- package/esm2020/lib/geometry/geometry-form-field/geometry-form-field.component.mjs +188 -188
- package/esm2020/lib/geometry/geometry-form-field/geometry-form-field.module.mjs +63 -63
- package/esm2020/lib/geometry/geometry.module.mjs +26 -26
- package/esm2020/lib/geometry/index.mjs +3 -3
- package/esm2020/lib/geometry/shared/controls/draw.mjs +313 -313
- package/esm2020/lib/geometry/shared/controls/index.mjs +4 -4
- package/esm2020/lib/geometry/shared/controls/modify.mjs +520 -520
- package/esm2020/lib/geometry/shared/controls/slice.mjs +176 -176
- package/esm2020/lib/geometry/shared/geometry.errors.mjs +25 -25
- package/esm2020/lib/geometry/shared/geometry.interfaces.mjs +1 -1
- package/esm2020/lib/geometry/shared/geometry.utils.mjs +121 -121
- package/esm2020/lib/geometry/shared/index.mjs +5 -5
- package/esm2020/lib/import-export/export-button/export-button.component.mjs +63 -63
- package/esm2020/lib/import-export/export-button/index.mjs +2 -2
- package/esm2020/lib/import-export/import-export/import-export.component.mjs +1219 -1219
- package/esm2020/lib/import-export/import-export/index.mjs +2 -2
- package/esm2020/lib/import-export/import-export.module.mjs +95 -95
- package/esm2020/lib/import-export/index.mjs +4 -4
- package/esm2020/lib/import-export/shared/drop-geo-file.directive.mjs +134 -134
- package/esm2020/lib/import-export/shared/export.errors.mjs +15 -15
- package/esm2020/lib/import-export/shared/export.interface.mjs +1 -1
- package/esm2020/lib/import-export/shared/export.service.mjs +194 -194
- package/esm2020/lib/import-export/shared/export.type.mjs +3 -3
- package/esm2020/lib/import-export/shared/export.utils.mjs +54 -54
- package/esm2020/lib/import-export/shared/import.errors.mjs +38 -38
- package/esm2020/lib/import-export/shared/import.interface.mjs +1 -1
- package/esm2020/lib/import-export/shared/import.service.mjs +214 -214
- package/esm2020/lib/import-export/shared/import.utils.mjs +234 -234
- package/esm2020/lib/import-export/shared/index.mjs +11 -11
- package/esm2020/lib/import-export/style-list/index.mjs +4 -4
- package/esm2020/lib/import-export/style-list/style-list.interface.mjs +1 -1
- package/esm2020/lib/import-export/style-list/style-list.module.mjs +22 -22
- package/esm2020/lib/import-export/style-list/style-list.provider.mjs +20 -20
- package/esm2020/lib/import-export/style-list/style-list.service.mjs +50 -50
- package/esm2020/lib/layer/index.mjs +10 -10
- package/esm2020/lib/layer/layer-item/index.mjs +1 -1
- package/esm2020/lib/layer/layer-item/layer-item.component.mjs +299 -299
- package/esm2020/lib/layer/layer-legend/index.mjs +1 -1
- package/esm2020/lib/layer/layer-legend/layer-legend.component.mjs +387 -387
- package/esm2020/lib/layer/layer-legend-item/index.mjs +1 -1
- package/esm2020/lib/layer/layer-legend-item/layer-legend-item.component.mjs +83 -83
- package/esm2020/lib/layer/layer-legend-list/index.mjs +2 -2
- package/esm2020/lib/layer/layer-legend-list/layer-legend-list-binding.directive.mjs +47 -47
- package/esm2020/lib/layer/layer-legend-list/layer-legend-list.component.mjs +194 -194
- package/esm2020/lib/layer/layer-list/index.mjs +3 -3
- package/esm2020/lib/layer/layer-list/layer-list-binding.directive.mjs +58 -58
- package/esm2020/lib/layer/layer-list/layer-list.component.mjs +1008 -1008
- package/esm2020/lib/layer/layer-list/layer-list.enum.mjs +18 -18
- package/esm2020/lib/layer/layer-list-tool/index.mjs +4 -4
- package/esm2020/lib/layer/layer-list-tool/layer-list-tool.component.mjs +164 -164
- package/esm2020/lib/layer/layer-list-tool/layer-list-tool.enum.mjs +6 -6
- package/esm2020/lib/layer/layer-list-tool/layer-list-tool.interface.mjs +1 -1
- package/esm2020/lib/layer/layer-list-tool/layer-list-tool.service.mjs +21 -21
- package/esm2020/lib/layer/layer.module.mjs +184 -184
- package/esm2020/lib/layer/shared/clusterParam.mjs +1 -1
- package/esm2020/lib/layer/shared/index.mjs +6 -6
- package/esm2020/lib/layer/shared/layer.enums.mjs +1 -1
- package/esm2020/lib/layer/shared/layer.service.mjs +185 -185
- package/esm2020/lib/layer/shared/layers/any-layer.interface.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/any-layer.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/image-layer.interface.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/image-layer.mjs +67 -67
- package/esm2020/lib/layer/shared/layers/index.mjs +13 -13
- package/esm2020/lib/layer/shared/layers/layer.interface.mjs +16 -16
- package/esm2020/lib/layer/shared/layers/layer.mjs +163 -163
- package/esm2020/lib/layer/shared/layers/tile-layer.interface.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/tile-layer.mjs +46 -46
- package/esm2020/lib/layer/shared/layers/vector-layer.interface.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/vector-layer.mjs +377 -377
- package/esm2020/lib/layer/shared/layers/vectortile-layer.interface.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/vectortile-layer.mjs +103 -103
- package/esm2020/lib/layer/shared/style.service.mjs +355 -355
- package/esm2020/lib/layer/shared/vector-style.interface.mjs +1 -1
- package/esm2020/lib/layer/style-modal/index.mjs +1 -1
- package/esm2020/lib/layer/style-modal/style-modal.component.mjs +287 -287
- package/esm2020/lib/layer/track-feature-button/index.mjs +1 -1
- package/esm2020/lib/layer/track-feature-button/track-feature-button.component.mjs +58 -58
- package/esm2020/lib/layer/utils/image-watcher.mjs +61 -61
- package/esm2020/lib/layer/utils/index.mjs +5 -5
- package/esm2020/lib/layer/utils/layer.utils.mjs +9 -9
- package/esm2020/lib/layer/utils/outputLegend.mjs +26 -26
- package/esm2020/lib/layer/utils/tile-watcher.mjs +49 -49
- package/esm2020/lib/layer/utils/vector-watcher.mjs +47 -47
- package/esm2020/lib/map/baselayers-switcher/baselayers-switcher.animation.mjs +19 -19
- package/esm2020/lib/map/baselayers-switcher/baselayers-switcher.component.mjs +96 -96
- package/esm2020/lib/map/baselayers-switcher/index.mjs +2 -2
- package/esm2020/lib/map/baselayers-switcher/mini-basemap.component.mjs +140 -140
- package/esm2020/lib/map/geolocate-button/geolocate-button.component.mjs +78 -78
- package/esm2020/lib/map/geolocate-button/index.mjs +1 -1
- package/esm2020/lib/map/home-extent-button/home-extent-button.component.mjs +62 -62
- package/esm2020/lib/map/home-extent-button/index.mjs +1 -1
- package/esm2020/lib/map/index.mjs +13 -13
- package/esm2020/lib/map/info-section/index.mjs +1 -1
- package/esm2020/lib/map/info-section/info-section.component.mjs +29 -29
- package/esm2020/lib/map/map-browser/index.mjs +1 -1
- package/esm2020/lib/map/map-browser/map-browser.component.mjs +65 -65
- package/esm2020/lib/map/map-center/index.mjs +1 -1
- package/esm2020/lib/map/map-center/map-center.component.mjs +49 -49
- package/esm2020/lib/map/map.module.mjs +126 -126
- package/esm2020/lib/map/menu-button/index.mjs +1 -1
- package/esm2020/lib/map/menu-button/menu-button.component.mjs +61 -61
- package/esm2020/lib/map/offline-button/index.mjs +1 -1
- package/esm2020/lib/map/offline-button/offline-button.component.mjs +75 -75
- package/esm2020/lib/map/rotation-button/index.mjs +1 -1
- package/esm2020/lib/map/rotation-button/rotation-button.component.mjs +69 -69
- package/esm2020/lib/map/shared/controllers/controller.mjs +41 -41
- package/esm2020/lib/map/shared/controllers/geolocation.mjs +307 -307
- package/esm2020/lib/map/shared/controllers/index.mjs +3 -3
- package/esm2020/lib/map/shared/controllers/view.mjs +350 -350
- package/esm2020/lib/map/shared/hover-feature.directive.mjs +502 -502
- package/esm2020/lib/map/shared/index.mjs +13 -13
- package/esm2020/lib/map/shared/linkedLayers.utils.mjs +237 -237
- package/esm2020/lib/map/shared/map-pointer-position.directive.mjs +106 -106
- package/esm2020/lib/map/shared/map.enums.mjs +5 -5
- package/esm2020/lib/map/shared/map.interface.mjs +1 -1
- package/esm2020/lib/map/shared/map.mjs +412 -407
- package/esm2020/lib/map/shared/map.service.mjs +28 -28
- package/esm2020/lib/map/shared/map.utils.mjs +462 -462
- package/esm2020/lib/map/shared/mapOffline.directive.mjs +162 -162
- package/esm2020/lib/map/shared/projection.interfaces.mjs +1 -1
- package/esm2020/lib/map/shared/projection.service.mjs +64 -64
- package/esm2020/lib/map/shared/projection.utils.mjs +63 -63
- package/esm2020/lib/map/swipe-control/index.mjs +1 -1
- package/esm2020/lib/map/swipe-control/swipe-control.component.mjs +192 -192
- package/esm2020/lib/map/utils/layer-watcher.mjs +78 -78
- package/esm2020/lib/map/wake-lock-button/index.mjs +1 -1
- package/esm2020/lib/map/wake-lock-button/wake-lock-button.component.mjs +113 -113
- package/esm2020/lib/map/zoom-button/index.mjs +1 -1
- package/esm2020/lib/map/zoom-button/zoom-button.component.mjs +39 -39
- package/esm2020/lib/measure/index.mjs +3 -3
- package/esm2020/lib/measure/measure.module.mjs +19 -19
- package/esm2020/lib/measure/measurer/measure-format.pipe.mjs +36 -36
- package/esm2020/lib/measure/measurer/measurer-dialog.component.mjs +179 -179
- package/esm2020/lib/measure/measurer/measurer-item.component.mjs +139 -139
- package/esm2020/lib/measure/measurer/measurer.component.mjs +1041 -1041
- package/esm2020/lib/measure/measurer/measurer.module.mjs +93 -93
- package/esm2020/lib/measure/shared/index.mjs +4 -4
- package/esm2020/lib/measure/shared/measure.enum.mjs +36 -36
- package/esm2020/lib/measure/shared/measure.interfaces.mjs +1 -1
- package/esm2020/lib/measure/shared/measure.utils.mjs +488 -488
- package/esm2020/lib/metadata/index.mjs +2 -2
- package/esm2020/lib/metadata/metadata-button/index.mjs +2 -2
- package/esm2020/lib/metadata/metadata-button/metadata-button.component.mjs +134 -134
- package/esm2020/lib/metadata/metadata.module.mjs +54 -54
- package/esm2020/lib/metadata/shared/index.mjs +3 -3
- package/esm2020/lib/metadata/shared/metadata.interface.mjs +1 -1
- package/esm2020/lib/metadata/shared/metadata.service.mjs +19 -19
- package/esm2020/lib/offline/geoDB/configFileToGeoDB.service.mjs +104 -104
- package/esm2020/lib/offline/geoDB/geoDB.enums.mjs +5 -5
- package/esm2020/lib/offline/geoDB/geoDB.interface.mjs +1 -1
- package/esm2020/lib/offline/geoDB/geoDB.service.mjs +166 -166
- package/esm2020/lib/offline/geoDB/index.mjs +5 -5
- package/esm2020/lib/offline/index.mjs +2 -2
- package/esm2020/lib/offline/shared/geo-network.service.mjs +65 -65
- package/esm2020/lib/offline/shared/index.mjs +2 -2
- package/esm2020/lib/overlay/index.mjs +2 -2
- package/esm2020/lib/overlay/overlay.module.mjs +22 -22
- package/esm2020/lib/overlay/shared/index.mjs +6 -6
- package/esm2020/lib/overlay/shared/overlay-marker-style.utils.mjs +68 -68
- package/esm2020/lib/overlay/shared/overlay.directive.mjs +32 -32
- package/esm2020/lib/overlay/shared/overlay.enum.mjs +7 -7
- package/esm2020/lib/overlay/shared/overlay.mjs +129 -129
- package/esm2020/lib/overlay/shared/overlay.service.mjs +26 -26
- package/esm2020/lib/overlay/shared/overlay.utils.mjs +102 -102
- package/esm2020/lib/print/index.mjs +4 -4
- package/esm2020/lib/print/print/print.component.mjs +125 -125
- package/esm2020/lib/print/print-form/index.mjs +2 -2
- package/esm2020/lib/print/print-form/print-form.component.mjs +427 -427
- package/esm2020/lib/print/print.module.mjs +64 -64
- package/esm2020/lib/print/shared/geopdf.mjs +57 -57
- package/esm2020/lib/print/shared/index.mjs +5 -5
- package/esm2020/lib/print/shared/print.interface.mjs +1 -1
- package/esm2020/lib/print/shared/print.service.mjs +933 -933
- package/esm2020/lib/print/shared/print.type.mjs +29 -29
- package/esm2020/lib/query/index.mjs +2 -2
- package/esm2020/lib/query/query.module.mjs +28 -28
- package/esm2020/lib/query/shared/index.mjs +7 -7
- package/esm2020/lib/query/shared/query-search-source.mjs +34 -34
- package/esm2020/lib/query/shared/query-search-source.providers.mjs +21 -21
- package/esm2020/lib/query/shared/query.directive.mjs +260 -260
- package/esm2020/lib/query/shared/query.enums.mjs +30 -30
- package/esm2020/lib/query/shared/query.interfaces.mjs +1 -1
- package/esm2020/lib/query/shared/query.service.mjs +732 -732
- package/esm2020/lib/query/shared/query.utils.mjs +36 -36
- package/esm2020/lib/search/index.mjs +11 -11
- package/esm2020/lib/search/search-bar/search-bar.component.mjs +511 -511
- package/esm2020/lib/search/search-bar/search-bar.module.mjs +74 -74
- package/esm2020/lib/search/search-bar/search-url-param.directive.mjs +34 -34
- package/esm2020/lib/search/search-results/save-feature-dialog.component.mjs +117 -117
- package/esm2020/lib/search/search-results/search-results-add-button.component.mjs +370 -370
- package/esm2020/lib/search/search-results/search-results-item.component.mjs +123 -123
- package/esm2020/lib/search/search-results/search-results.component.mjs +339 -339
- package/esm2020/lib/search/search-results/search-results.module.mjs +103 -103
- package/esm2020/lib/search/search-selector/search-selector.component.mjs +122 -122
- package/esm2020/lib/search/search-selector/search-selector.module.mjs +55 -55
- package/esm2020/lib/search/search-settings/search-settings.component.mjs +441 -441
- package/esm2020/lib/search/search-settings/search-settings.module.mjs +59 -59
- package/esm2020/lib/search/search.module.mjs +66 -66
- package/esm2020/lib/search/shared/index.mjs +9 -9
- package/esm2020/lib/search/shared/search-pointer-summary.directive.mjs +321 -321
- package/esm2020/lib/search/shared/search-source-service.providers.mjs +19 -19
- package/esm2020/lib/search/shared/search-source.service.mjs +46 -46
- package/esm2020/lib/search/shared/search.enums.mjs +3 -3
- package/esm2020/lib/search/shared/search.interfaces.mjs +1 -1
- package/esm2020/lib/search/shared/search.service.mjs +120 -120
- package/esm2020/lib/search/shared/search.utils.mjs +90 -90
- package/esm2020/lib/search/shared/sources/coordinates.interfaces.mjs +1 -1
- package/esm2020/lib/search/shared/sources/coordinates.mjs +153 -153
- package/esm2020/lib/search/shared/sources/coordinates.providers.mjs +39 -39
- package/esm2020/lib/search/shared/sources/icherche.interfaces.mjs +1 -1
- package/esm2020/lib/search/shared/sources/icherche.mjs +767 -767
- package/esm2020/lib/search/shared/sources/icherche.providers.mjs +65 -65
- package/esm2020/lib/search/shared/sources/ilayer.interfaces.mjs +1 -1
- package/esm2020/lib/search/shared/sources/ilayer.mjs +320 -320
- package/esm2020/lib/search/shared/sources/ilayer.providers.mjs +39 -39
- package/esm2020/lib/search/shared/sources/index.mjs +17 -17
- package/esm2020/lib/search/shared/sources/nominatim.interfaces.mjs +2 -2
- package/esm2020/lib/search/shared/sources/nominatim.mjs +252 -252
- package/esm2020/lib/search/shared/sources/nominatim.providers.mjs +22 -22
- package/esm2020/lib/search/shared/sources/source.interfaces.mjs +1 -1
- package/esm2020/lib/search/shared/sources/source.mjs +178 -178
- package/esm2020/lib/search/shared/sources/storedqueries.interfaces.mjs +1 -1
- package/esm2020/lib/search/shared/sources/storedqueries.mjs +425 -425
- package/esm2020/lib/search/shared/sources/storedqueries.providers.mjs +40 -40
- package/esm2020/lib/toast/index.mjs +2 -2
- package/esm2020/lib/toast/toast.component.mjs +112 -112
- package/esm2020/lib/toast/toast.module.mjs +44 -44
- package/esm2020/lib/utils/commonVectorStyle.interface.mjs +1 -1
- package/esm2020/lib/utils/commonVectorStyle.mjs +74 -74
- package/esm2020/lib/utils/googleLinks.mjs +12 -12
- package/esm2020/lib/utils/id-generator.mjs +109 -109
- package/esm2020/lib/utils/index.mjs +5 -5
- package/esm2020/lib/utils/osmLinks.mjs +9 -9
- package/esm2020/lib/wkt/index.mjs +2 -2
- package/esm2020/lib/wkt/shared/index.mjs +2 -2
- package/esm2020/lib/wkt/shared/wkt.service.mjs +224 -224
- package/esm2020/lib/wkt/wkt.module.mjs +21 -21
- package/esm2020/lib/workspace/confirmation-popup/confirmation-popup.component.mjs +47 -47
- package/esm2020/lib/workspace/confirmation-popup/confirmation-popup.module.mjs +35 -35
- package/esm2020/lib/workspace/confirmation-popup/index.mjs +2 -2
- package/esm2020/lib/workspace/index.mjs +8 -8
- package/esm2020/lib/workspace/shared/edition-workspace.mjs +279 -279
- package/esm2020/lib/workspace/shared/edition-workspace.service.mjs +656 -656
- package/esm2020/lib/workspace/shared/feature-workspace.mjs +34 -34
- package/esm2020/lib/workspace/shared/feature-workspace.service.mjs +149 -149
- package/esm2020/lib/workspace/shared/index.mjs +8 -8
- package/esm2020/lib/workspace/shared/wfs-workspace.mjs +34 -34
- package/esm2020/lib/workspace/shared/wfs-workspace.service.mjs +149 -149
- package/esm2020/lib/workspace/shared/wms-workspace.service.mjs +259 -259
- package/esm2020/lib/workspace/shared/workspace.utils.mjs +23 -23
- package/esm2020/lib/workspace/widgets/index.mjs +4 -4
- package/esm2020/lib/workspace/widgets/ogc-filter/ogc-filter.component.mjs +46 -46
- package/esm2020/lib/workspace/widgets/ogc-filter/ogc-filter.module.mjs +35 -35
- package/esm2020/lib/workspace/widgets/widgets.mjs +15 -15
- package/esm2020/lib/workspace/workspace-selector/workspace-selector.directive.mjs +132 -132
- package/esm2020/lib/workspace/workspace-selector/workspace-selector.module.mjs +27 -27
- package/esm2020/lib/workspace/workspace-updator/workspace-updator.directive.mjs +112 -112
- package/esm2020/lib/workspace/workspace-updator/workspace-updator.module.mjs +27 -27
- package/esm2020/lib/workspace/workspace.module.mjs +61 -61
- package/esm2020/public_api.mjs +54 -54
- package/fesm2015/igo2-geo.mjs +44992 -44987
- package/fesm2015/igo2-geo.mjs.map +1 -1
- package/fesm2020/igo2-geo.mjs +43034 -43029
- package/fesm2020/igo2-geo.mjs.map +1 -1
- package/index.d.ts +5 -5
- package/lib/catalog/catalog-browser/catalog-browser-group.component.d.ts +126 -126
- package/lib/catalog/catalog-browser/catalog-browser-layer.component.d.ts +80 -80
- package/lib/catalog/catalog-browser/catalog-browser.component.d.ts +105 -105
- package/lib/catalog/catalog-browser/catalog-browser.module.d.ts +22 -22
- package/lib/catalog/catalog-library/add-catalog-dialog.component.d.ts +45 -45
- package/lib/catalog/catalog-library/catalog-library-item.component.d.ts +25 -25
- package/lib/catalog/catalog-library/catalog-library.component.d.ts +65 -65
- package/lib/catalog/catalog-library/catalog-library.module.d.ts +26 -26
- package/lib/catalog/catalog.module.d.ts +14 -14
- package/lib/catalog/index.d.ts +4 -4
- package/lib/catalog/shared/catalog.abstract.d.ts +50 -50
- package/lib/catalog/shared/catalog.enum.d.ts +14 -14
- package/lib/catalog/shared/catalog.interface.d.ts +66 -66
- package/lib/catalog/shared/catalog.service.d.ts +36 -36
- package/lib/catalog/shared/index.d.ts +4 -4
- package/lib/datasource/datasource.module.d.ts +8 -8
- package/lib/datasource/index.d.ts +2 -2
- package/lib/datasource/shared/capabilities.service.d.ts +37 -37
- package/lib/datasource/shared/datasource.service.d.ts +37 -37
- package/lib/datasource/shared/datasources/any-datasource.d.ts +16 -16
- package/lib/datasource/shared/datasources/any-datasource.interface.d.ts +15 -15
- package/lib/datasource/shared/datasources/arcgisrest-datasource.d.ts +14 -14
- package/lib/datasource/shared/datasources/arcgisrest-datasource.interface.d.ts +14 -14
- package/lib/datasource/shared/datasources/carto-datasource.d.ts +15 -15
- package/lib/datasource/shared/datasources/carto-datasource.interface.d.ts +13 -13
- package/lib/datasource/shared/datasources/cluster-datasource.d.ts +10 -10
- package/lib/datasource/shared/datasources/cluster-datasource.interface.d.ts +11 -11
- package/lib/datasource/shared/datasources/data.service.d.ts +3 -3
- package/lib/datasource/shared/datasources/datasource.d.ts +20 -20
- package/lib/datasource/shared/datasources/datasource.interface.d.ts +100 -100
- package/lib/datasource/shared/datasources/feature-datasource.d.ts +12 -12
- package/lib/datasource/shared/datasources/feature-datasource.interface.d.ts +18 -18
- package/lib/datasource/shared/datasources/imagearcgisrest-datasource.d.ts +15 -15
- package/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.d.ts +15 -15
- package/lib/datasource/shared/datasources/index.d.ts +35 -35
- package/lib/datasource/shared/datasources/mvt-datasource.d.ts +10 -10
- package/lib/datasource/shared/datasources/mvt-datasource.interface.d.ts +13 -13
- package/lib/datasource/shared/datasources/osm-datasource.d.ts +9 -9
- package/lib/datasource/shared/datasources/osm-datasource.interface.d.ts +7 -7
- package/lib/datasource/shared/datasources/tilearcgisrest-datasource.d.ts +15 -15
- package/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.d.ts +14 -14
- package/lib/datasource/shared/datasources/tiledebug-datasource.d.ts +9 -9
- package/lib/datasource/shared/datasources/tiledebug-datasource.interface.d.ts +9 -9
- package/lib/datasource/shared/datasources/websocket-datasource.d.ts +15 -15
- package/lib/datasource/shared/datasources/websocket-datasource.interface.d.ts +7 -7
- package/lib/datasource/shared/datasources/wfs-datasource.d.ts +20 -20
- package/lib/datasource/shared/datasources/wfs-datasource.interface.d.ts +20 -20
- package/lib/datasource/shared/datasources/wfs.service.d.ts +17 -17
- package/lib/datasource/shared/datasources/wms-datasource.d.ts +31 -31
- package/lib/datasource/shared/datasources/wms-datasource.interface.d.ts +32 -32
- package/lib/datasource/shared/datasources/wms-wfs.utils.d.ts +41 -41
- package/lib/datasource/shared/datasources/wmts-datasource.d.ts +10 -10
- package/lib/datasource/shared/datasources/wmts-datasource.interface.d.ts +13 -13
- package/lib/datasource/shared/datasources/xyz-datasource.d.ts +9 -9
- package/lib/datasource/shared/datasources/xyz-datasource.interface.d.ts +11 -11
- package/lib/datasource/shared/index.d.ts +4 -4
- package/lib/datasource/shared/options/index.d.ts +4 -4
- package/lib/datasource/shared/options/options-api.interface.d.ts +4 -4
- package/lib/datasource/shared/options/options-api.providers.d.ts +10 -10
- package/lib/datasource/shared/options/options-api.service.d.ts +16 -16
- package/lib/datasource/shared/options/options.service.d.ts +6 -6
- package/lib/datasource/utils/esri-style-generator.d.ts +21 -21
- package/lib/datasource/utils/index.d.ts +2 -2
- package/lib/datasource/utils/tilegrid.d.ts +2 -2
- package/lib/directions/directions-buttons/directions-buttons.component.d.ts +30 -30
- package/lib/directions/directions-buttons/index.d.ts +1 -1
- package/lib/directions/directions-inputs/directions-inputs.component.d.ts +45 -45
- package/lib/directions/directions-inputs/index.d.ts +1 -1
- package/lib/directions/directions-results/directions-results.component.d.ts +30 -30
- package/lib/directions/directions-results/index.d.ts +1 -1
- package/lib/directions/directions-sources/directions-source.d.ts +7 -7
- package/lib/directions/directions-sources/directions-source.interface.d.ts +11 -11
- package/lib/directions/directions-sources/directions-source.provider.d.ts +11 -11
- package/lib/directions/directions-sources/index.d.ts +4 -4
- package/lib/directions/directions-sources/osrm-directions-source.d.ts +23 -23
- package/lib/directions/directions.component.d.ts +56 -56
- package/lib/directions/directions.module.d.ts +26 -26
- package/lib/directions/index.d.ts +6 -6
- package/lib/directions/shared/directions-source.service.d.ts +11 -11
- package/lib/directions/shared/directions.enum.d.ts +22 -22
- package/lib/directions/shared/directions.interface.d.ts +126 -126
- package/lib/directions/shared/directions.service.d.ts +13 -13
- package/lib/directions/shared/directions.utils.d.ts +42 -42
- package/lib/directions/shared/index.d.ts +5 -5
- package/lib/directions/shared/store.d.ts +18 -18
- package/lib/download/download-button/download-button.component.d.ts +18 -18
- package/lib/download/download-button/index.d.ts +1 -1
- package/lib/download/download.module.d.ts +14 -14
- package/lib/download/index.d.ts +2 -2
- package/lib/download/shared/download.interface.d.ts +10 -10
- package/lib/download/shared/download.service.d.ts +11 -11
- package/lib/download/shared/index.d.ts +2 -2
- package/lib/draw/draw/draw-layer-popup.component.d.ts +14 -14
- package/lib/draw/draw/draw-popup.component.d.ts +63 -63
- package/lib/draw/draw/draw-shorcuts.component.d.ts +5 -5
- package/lib/draw/draw/draw.component.d.ts +239 -239
- package/lib/draw/draw/draw.module.d.ts +34 -34
- package/lib/draw/drawingTool.module.d.ts +7 -7
- package/lib/draw/index.d.ts +2 -2
- package/lib/draw/shared/draw-icon.service.d.ts +12 -12
- package/lib/draw/shared/draw-style.service.d.ts +36 -36
- package/lib/draw/shared/draw.enum.d.ts +32 -32
- package/lib/draw/shared/draw.interface.d.ts +40 -40
- package/lib/draw/shared/draw.utils.d.ts +35 -35
- package/lib/draw/shared/index.d.ts +5 -5
- package/lib/feature/feature-details/feature-details.component.d.ts +60 -60
- package/lib/feature/feature-details/feature-details.directive.d.ts +19 -19
- package/lib/feature/feature-details/feature-details.module.d.ts +15 -15
- package/lib/feature/feature-form/feature-form.component.d.ts +50 -50
- package/lib/feature/feature-form/feature-form.module.d.ts +12 -12
- package/lib/feature/feature.module.d.ts +9 -9
- package/lib/feature/index.d.ts +3 -3
- package/lib/feature/shared/feature.enums.d.ts +7 -7
- package/lib/feature/shared/feature.interfaces.d.ts +74 -74
- package/lib/feature/shared/feature.utils.d.ts +104 -104
- package/lib/feature/shared/index.d.ts +6 -6
- package/lib/feature/shared/store.d.ts +71 -71
- package/lib/feature/shared/strategies/in-map-extent.d.ts +52 -52
- package/lib/feature/shared/strategies/in-map-resolution.d.ts +52 -52
- package/lib/feature/shared/strategies/index.d.ts +5 -5
- package/lib/feature/shared/strategies/loading-layer.d.ts +59 -59
- package/lib/feature/shared/strategies/loading.d.ts +75 -75
- package/lib/feature/shared/strategies/selection.d.ts +176 -176
- package/lib/feature/shared/strategies.utils.d.ts +17 -17
- package/lib/filter/filter.module.d.ts +53 -53
- package/lib/filter/index.d.ts +15 -15
- package/lib/filter/ogc-filter-button/index.d.ts +1 -1
- package/lib/filter/ogc-filter-button/ogc-filter-button.component.d.ts +20 -20
- package/lib/filter/ogc-filter-form/index.d.ts +1 -1
- package/lib/filter/ogc-filter-form/ogc-filter-form.component.d.ts +65 -65
- package/lib/filter/ogc-filter-selection/index.d.ts +1 -1
- package/lib/filter/ogc-filter-selection/ogc-filter-selection.component.d.ts +93 -93
- package/lib/filter/ogc-filter-time/index.d.ts +2 -2
- package/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.d.ts +39 -39
- package/lib/filter/ogc-filter-time/ogc-filter-time.component.d.ts +86 -86
- package/lib/filter/ogc-filterable-form/index.d.ts +1 -1
- package/lib/filter/ogc-filterable-form/ogc-filterable-form.component.d.ts +15 -15
- package/lib/filter/ogc-filterable-item/index.d.ts +1 -1
- package/lib/filter/ogc-filterable-item/ogc-filterable-item.component.d.ts +41 -41
- package/lib/filter/ogc-filterable-list/index.d.ts +2 -2
- package/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.d.ts +14 -14
- package/lib/filter/ogc-filterable-list/ogc-filterable-list.component.d.ts +10 -10
- package/lib/filter/shared/filterable-datasource.pipe.d.ts +10 -10
- package/lib/filter/shared/index.d.ts +11 -11
- package/lib/filter/shared/ogc-filter-time.service.d.ts +19 -19
- package/lib/filter/shared/ogc-filter.d.ts +29 -29
- package/lib/filter/shared/ogc-filter.enum.d.ts +27 -27
- package/lib/filter/shared/ogc-filter.interface.d.ts +200 -200
- package/lib/filter/shared/ogc-filter.service.d.ts +11 -11
- package/lib/filter/shared/spatial-filter.enum.d.ts +19 -19
- package/lib/filter/shared/spatial-filter.interface.d.ts +10 -10
- package/lib/filter/shared/spatial-filter.service.d.ts +37 -37
- package/lib/filter/shared/time-filter.enum.d.ts +10 -10
- package/lib/filter/shared/time-filter.interface.d.ts +29 -29
- package/lib/filter/shared/time-filter.service.d.ts +11 -11
- package/lib/filter/spatial-filter/spatial-filter-item/index.d.ts +1 -1
- package/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.d.ts +166 -166
- package/lib/filter/spatial-filter/spatial-filter-list/index.d.ts +1 -1
- package/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.d.ts +58 -58
- package/lib/filter/spatial-filter/spatial-filter-type/index.d.ts +1 -1
- package/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.d.ts +45 -45
- package/lib/filter/time-filter-button/index.d.ts +1 -1
- package/lib/filter/time-filter-button/time-filter-button.component.d.ts +20 -20
- package/lib/filter/time-filter-form/index.d.ts +1 -1
- package/lib/filter/time-filter-form/time-filter-form.component.d.ts +77 -77
- package/lib/filter/time-filter-item/index.d.ts +1 -1
- package/lib/filter/time-filter-item/time-filter-item.component.d.ts +28 -28
- package/lib/filter/time-filter-list/index.d.ts +2 -2
- package/lib/filter/time-filter-list/time-filter-list-binding.directive.d.ts +14 -14
- package/lib/filter/time-filter-list/time-filter-list.component.d.ts +12 -12
- package/lib/geo.module.d.ts +28 -28
- package/lib/geometry/geometry-form-field/geometry-form-field-input.component.d.ts +206 -206
- package/lib/geometry/geometry-form-field/geometry-form-field.component.d.ts +88 -88
- package/lib/geometry/geometry-form-field/geometry-form-field.module.d.ts +19 -19
- package/lib/geometry/geometry.module.d.ts +8 -8
- package/lib/geometry/index.d.ts +3 -3
- package/lib/geometry/shared/controls/draw.d.ts +150 -150
- package/lib/geometry/shared/controls/index.d.ts +3 -3
- package/lib/geometry/shared/controls/modify.d.ts +228 -228
- package/lib/geometry/shared/controls/slice.d.ts +99 -99
- package/lib/geometry/shared/geometry.errors.d.ts +11 -11
- package/lib/geometry/shared/geometry.interfaces.d.ts +13 -13
- package/lib/geometry/shared/geometry.utils.d.ts +45 -45
- package/lib/geometry/shared/index.d.ts +4 -4
- package/lib/import-export/export-button/export-button.component.d.ts +16 -16
- package/lib/import-export/export-button/index.d.ts +1 -1
- package/lib/import-export/import-export/import-export.component.d.ts +104 -104
- package/lib/import-export/import-export/index.d.ts +1 -1
- package/lib/import-export/import-export.module.d.ts +26 -26
- package/lib/import-export/index.d.ts +4 -4
- package/lib/import-export/shared/drop-geo-file.directive.d.ts +36 -36
- package/lib/import-export/shared/export.errors.d.ts +8 -8
- package/lib/import-export/shared/export.interface.d.ts +11 -11
- package/lib/import-export/shared/export.service.d.ts +30 -30
- package/lib/import-export/shared/export.type.d.ts +16 -16
- package/lib/import-export/shared/export.utils.d.ts +19 -19
- package/lib/import-export/shared/import.errors.d.ts +20 -20
- package/lib/import-export/shared/import.interface.d.ts +8 -8
- package/lib/import-export/shared/import.service.d.ts +31 -31
- package/lib/import-export/shared/import.utils.d.ts +18 -18
- package/lib/import-export/shared/index.d.ts +10 -10
- package/lib/import-export/style-list/index.d.ts +4 -4
- package/lib/import-export/style-list/style-list.interface.d.ts +6 -6
- package/lib/import-export/style-list/style-list.module.d.ts +8 -8
- package/lib/import-export/style-list/style-list.provider.d.ts +15 -15
- package/lib/import-export/style-list/style-list.service.d.ts +18 -18
- package/lib/layer/index.d.ts +10 -10
- package/lib/layer/layer-item/index.d.ts +1 -1
- package/lib/layer/layer-item/layer-item.component.d.ts +62 -62
- package/lib/layer/layer-legend/index.d.ts +1 -1
- package/lib/layer/layer-legend/layer-legend.component.d.ts +90 -90
- package/lib/layer/layer-legend-item/index.d.ts +1 -1
- package/lib/layer/layer-legend-item/layer-legend-item.component.d.ts +22 -22
- package/lib/layer/layer-legend-list/index.d.ts +2 -2
- package/lib/layer/layer-legend-list/layer-legend-list-binding.directive.d.ts +16 -16
- package/lib/layer/layer-legend-list/layer-legend-list.component.d.ts +31 -31
- package/lib/layer/layer-list/index.d.ts +3 -3
- package/lib/layer/layer-list/layer-list-binding.directive.d.ts +19 -19
- package/lib/layer/layer-list/layer-list.component.d.ts +127 -127
- package/lib/layer/layer-list/layer-list.enum.d.ts +15 -15
- package/lib/layer/layer-list-tool/index.d.ts +4 -4
- package/lib/layer/layer-list-tool/layer-list-tool.component.d.ts +32 -32
- package/lib/layer/layer-list-tool/layer-list-tool.enum.d.ts +5 -5
- package/lib/layer/layer-list-tool/layer-list-tool.interface.d.ts +8 -8
- package/lib/layer/layer-list-tool/layer-list-tool.service.d.ts +14 -14
- package/lib/layer/layer.module.d.ts +36 -36
- package/lib/layer/shared/clusterParam.d.ts +13 -13
- package/lib/layer/shared/index.d.ts +6 -6
- package/lib/layer/shared/layer.enums.d.ts +1 -1
- package/lib/layer/shared/layer.service.d.ts +30 -30
- package/lib/layer/shared/layers/any-layer.d.ts +6 -6
- package/lib/layer/shared/layers/any-layer.interface.d.ts +6 -6
- package/lib/layer/shared/layers/image-layer.d.ts +22 -22
- package/lib/layer/shared/layers/image-layer.interface.d.ts +19 -19
- package/lib/layer/shared/layers/index.d.ts +12 -12
- package/lib/layer/shared/layers/layer.d.ts +62 -62
- package/lib/layer/shared/layers/layer.interface.d.ts +109 -109
- package/lib/layer/shared/layers/tile-layer.d.ts +31 -31
- package/lib/layer/shared/layers/tile-layer.interface.d.ts +20 -20
- package/lib/layer/shared/layers/vector-layer.d.ts +78 -78
- package/lib/layer/shared/layers/vector-layer.interface.d.ts +41 -41
- package/lib/layer/shared/layers/vectortile-layer.d.ts +28 -28
- package/lib/layer/shared/layers/vectortile-layer.interface.d.ts +18 -18
- package/lib/layer/shared/style.service.d.ts +57 -57
- package/lib/layer/shared/vector-style.interface.d.ts +38 -38
- package/lib/layer/style-modal/index.d.ts +1 -1
- package/lib/layer/style-modal/style-modal.component.d.ts +42 -42
- package/lib/layer/track-feature-button/index.d.ts +1 -1
- package/lib/layer/track-feature-button/track-feature-button.component.d.ts +15 -15
- package/lib/layer/utils/image-watcher.d.ts +17 -17
- package/lib/layer/utils/index.d.ts +5 -5
- package/lib/layer/utils/layer.utils.d.ts +2 -2
- package/lib/layer/utils/outputLegend.d.ts +7 -7
- package/lib/layer/utils/tile-watcher.d.ts +14 -14
- package/lib/layer/utils/vector-watcher.d.ts +13 -13
- package/lib/map/baselayers-switcher/baselayers-switcher.animation.d.ts +2 -2
- package/lib/map/baselayers-switcher/baselayers-switcher.component.d.ts +21 -21
- package/lib/map/baselayers-switcher/index.d.ts +2 -2
- package/lib/map/baselayers-switcher/mini-basemap.component.d.ts +29 -29
- package/lib/map/geolocate-button/geolocate-button.component.d.ts +22 -22
- package/lib/map/geolocate-button/index.d.ts +1 -1
- package/lib/map/home-extent-button/home-extent-button.component.d.ts +20 -20
- package/lib/map/home-extent-button/index.d.ts +1 -1
- package/lib/map/index.d.ts +13 -13
- package/lib/map/info-section/index.d.ts +1 -1
- package/lib/map/info-section/info-section.component.d.ts +7 -7
- package/lib/map/map-browser/index.d.ts +1 -1
- package/lib/map/map-browser/map-browser.component.d.ts +25 -25
- package/lib/map/map-center/index.d.ts +1 -1
- package/lib/map/map-center/map-center.component.d.ts +31 -31
- package/lib/map/map.module.d.ts +28 -28
- package/lib/map/menu-button/index.d.ts +1 -1
- package/lib/map/menu-button/menu-button.component.d.ts +17 -17
- package/lib/map/offline-button/index.d.ts +1 -1
- package/lib/map/offline-button/offline-button.component.d.ts +23 -23
- package/lib/map/rotation-button/index.d.ts +1 -1
- package/lib/map/rotation-button/rotation-button.component.d.ts +17 -17
- package/lib/map/shared/controllers/controller.d.ts +29 -29
- package/lib/map/shared/controllers/geolocation.d.ts +112 -112
- package/lib/map/shared/controllers/index.d.ts +3 -3
- package/lib/map/shared/controllers/view.d.ts +200 -200
- package/lib/map/shared/hover-feature.directive.d.ts +132 -132
- package/lib/map/shared/index.d.ts +13 -13
- package/lib/map/shared/linkedLayers.utils.d.ts +17 -17
- package/lib/map/shared/map-pointer-position.directive.d.ts +71 -71
- package/lib/map/shared/map.d.ts +135 -135
- package/lib/map/shared/map.enums.d.ts +4 -4
- package/lib/map/shared/map.interface.d.ts +57 -57
- package/lib/map/shared/map.service.d.ts +19 -19
- package/lib/map/shared/map.utils.d.ts +90 -90
- package/lib/map/shared/mapOffline.directive.d.ts +21 -21
- package/lib/map/shared/projection.interfaces.d.ts +29 -29
- package/lib/map/shared/projection.service.d.ts +19 -19
- package/lib/map/shared/projection.utils.d.ts +19 -19
- package/lib/map/swipe-control/index.d.ts +1 -1
- package/lib/map/swipe-control/swipe-control.component.d.ts +97 -97
- package/lib/map/utils/layer-watcher.d.ts +20 -20
- package/lib/map/wake-lock-button/index.d.ts +1 -1
- package/lib/map/wake-lock-button/wake-lock-button.component.d.ts +30 -30
- package/lib/map/zoom-button/index.d.ts +1 -1
- package/lib/map/zoom-button/zoom-button.component.d.ts +12 -12
- package/lib/measure/index.d.ts +3 -3
- package/lib/measure/measure.module.d.ts +7 -7
- package/lib/measure/measurer/measure-format.pipe.d.ts +15 -15
- package/lib/measure/measurer/measurer-dialog.component.d.ts +14 -14
- package/lib/measure/measurer/measurer-item.component.d.ts +66 -66
- package/lib/measure/measurer/measurer.component.d.ts +405 -405
- package/lib/measure/measurer/measurer.module.d.ts +25 -25
- package/lib/measure/shared/index.d.ts +3 -3
- package/lib/measure/shared/measure.enum.d.ts +33 -33
- package/lib/measure/shared/measure.interfaces.d.ts +21 -21
- package/lib/measure/shared/measure.utils.d.ts +180 -180
- package/lib/metadata/index.d.ts +2 -2
- package/lib/metadata/metadata-button/index.d.ts +1 -1
- package/lib/metadata/metadata-button/metadata-button.component.d.ts +26 -26
- package/lib/metadata/metadata.module.d.ts +15 -15
- package/lib/metadata/shared/index.d.ts +2 -2
- package/lib/metadata/shared/metadata.interface.d.ts +13 -13
- package/lib/metadata/shared/metadata.service.d.ts +8 -8
- package/lib/offline/geoDB/configFileToGeoDB.service.d.ts +14 -14
- package/lib/offline/geoDB/geoDB.enums.d.ts +4 -4
- package/lib/offline/geoDB/geoDB.interface.d.ts +19 -19
- package/lib/offline/geoDB/geoDB.service.d.ts +37 -37
- package/lib/offline/geoDB/index.d.ts +4 -4
- package/lib/offline/index.d.ts +2 -2
- package/lib/offline/shared/geo-network.service.d.ts +28 -28
- package/lib/offline/shared/index.d.ts +1 -1
- package/lib/overlay/index.d.ts +1 -1
- package/lib/overlay/overlay.module.d.ts +9 -9
- package/lib/overlay/shared/index.d.ts +6 -6
- package/lib/overlay/shared/overlay-marker-style.utils.d.ts +11 -11
- package/lib/overlay/shared/overlay.d.ts +81 -81
- package/lib/overlay/shared/overlay.directive.d.ts +18 -18
- package/lib/overlay/shared/overlay.enum.d.ts +6 -6
- package/lib/overlay/shared/overlay.service.d.ts +14 -14
- package/lib/overlay/shared/overlay.utils.d.ts +17 -17
- package/lib/print/index.d.ts +3 -3
- package/lib/print/print/print.component.d.ts +35 -35
- package/lib/print/print-form/index.d.ts +1 -1
- package/lib/print/print-form/print-form.component.d.ts +97 -97
- package/lib/print/print.module.d.ts +19 -19
- package/lib/print/shared/geopdf.d.ts +1 -1
- package/lib/print/shared/index.d.ts +4 -4
- package/lib/print/shared/print.interface.d.ts +22 -22
- package/lib/print/shared/print.service.d.ts +168 -168
- package/lib/print/shared/print.type.d.ts +45 -45
- package/lib/query/index.d.ts +1 -1
- package/lib/query/query.module.d.ts +11 -11
- package/lib/query/shared/index.d.ts +6 -6
- package/lib/query/shared/query-search-source.d.ts +17 -17
- package/lib/query/shared/query-search-source.providers.d.ts +17 -17
- package/lib/query/shared/query.directive.d.ts +105 -105
- package/lib/query/shared/query.enums.d.ts +26 -26
- package/lib/query/shared/query.interfaces.d.ts +35 -35
- package/lib/query/shared/query.service.d.ts +56 -56
- package/lib/query/shared/query.utils.d.ts +27 -27
- package/lib/search/index.d.ts +11 -11
- package/lib/search/search-bar/search-bar.component.d.ts +230 -230
- package/lib/search/search-bar/search-bar.module.d.ts +23 -23
- package/lib/search/search-bar/search-url-param.directive.d.ts +13 -13
- package/lib/search/search-results/save-feature-dialog.component.d.ts +32 -32
- package/lib/search/search-results/search-results-add-button.component.d.ts +76 -76
- package/lib/search/search-results/search-results-item.component.d.ts +47 -47
- package/lib/search/search-results/search-results.component.d.ts +161 -161
- package/lib/search/search-results/search-results.module.d.ts +28 -28
- package/lib/search/search-selector/search-selector.component.d.ts +58 -58
- package/lib/search/search-selector/search-selector.module.d.ts +19 -19
- package/lib/search/search-settings/search-settings.component.d.ts +102 -102
- package/lib/search/search-settings/search-settings.module.d.ts +20 -20
- package/lib/search/search.module.d.ts +14 -14
- package/lib/search/shared/index.d.ts +8 -8
- package/lib/search/shared/search-pointer-summary.directive.d.ts +133 -133
- package/lib/search/shared/search-source-service.providers.d.ts +15 -15
- package/lib/search/shared/search-source.service.d.ts +32 -32
- package/lib/search/shared/search.enums.d.ts +1 -1
- package/lib/search/shared/search.interfaces.d.ts +29 -29
- package/lib/search/shared/search.service.d.ts +53 -53
- package/lib/search/shared/search.utils.d.ts +39 -39
- package/lib/search/shared/sources/coordinates.d.ts +40 -40
- package/lib/search/shared/sources/coordinates.interfaces.d.ts +12 -12
- package/lib/search/shared/sources/coordinates.providers.d.ts +31 -31
- package/lib/search/shared/sources/icherche.d.ts +96 -96
- package/lib/search/shared/sources/icherche.interfaces.d.ts +30 -30
- package/lib/search/shared/sources/icherche.providers.d.ts +46 -46
- package/lib/search/shared/sources/ilayer.d.ts +55 -55
- package/lib/search/shared/sources/ilayer.interfaces.d.ts +47 -47
- package/lib/search/shared/sources/ilayer.providers.d.ts +31 -31
- package/lib/search/shared/sources/index.d.ts +17 -17
- package/lib/search/shared/sources/nominatim.d.ts +45 -45
- package/lib/search/shared/sources/nominatim.interfaces.d.ts +10 -10
- package/lib/search/shared/sources/nominatim.providers.d.ts +18 -18
- package/lib/search/shared/sources/source.d.ts +108 -108
- package/lib/search/shared/sources/source.interfaces.d.ts +47 -47
- package/lib/search/shared/sources/storedqueries.d.ts +73 -73
- package/lib/search/shared/sources/storedqueries.interfaces.d.ts +42 -42
- package/lib/search/shared/sources/storedqueries.providers.d.ts +32 -32
- package/lib/toast/index.d.ts +1 -1
- package/lib/toast/toast.component.d.ts +33 -33
- package/lib/toast/toast.module.d.ts +14 -14
- package/lib/utils/commonVectorStyle.d.ts +14 -14
- package/lib/utils/commonVectorStyle.interface.d.ts +16 -16
- package/lib/utils/googleLinks.d.ts +5 -5
- package/lib/utils/id-generator.d.ts +54 -54
- package/lib/utils/index.d.ts +5 -5
- package/lib/utils/osmLinks.d.ts +4 -4
- package/lib/wkt/index.d.ts +1 -1
- package/lib/wkt/shared/index.d.ts +1 -1
- package/lib/wkt/shared/wkt.service.d.ts +19 -19
- package/lib/wkt/wkt.module.d.ts +8 -8
- package/lib/workspace/confirmation-popup/confirmation-popup.component.d.ts +23 -23
- package/lib/workspace/confirmation-popup/confirmation-popup.module.d.ts +14 -14
- package/lib/workspace/confirmation-popup/index.d.ts +2 -2
- package/lib/workspace/index.d.ts +7 -7
- package/lib/workspace/shared/edition-workspace.d.ts +82 -82
- package/lib/workspace/shared/edition-workspace.service.d.ts +52 -52
- package/lib/workspace/shared/feature-workspace.d.ts +18 -18
- package/lib/workspace/shared/feature-workspace.service.d.ts +19 -19
- package/lib/workspace/shared/index.d.ts +7 -7
- package/lib/workspace/shared/wfs-workspace.d.ts +18 -18
- package/lib/workspace/shared/wfs-workspace.service.d.ts +19 -19
- package/lib/workspace/shared/wms-workspace.service.d.ts +22 -22
- package/lib/workspace/shared/workspace.utils.d.ts +10 -10
- package/lib/workspace/widgets/index.d.ts +3 -3
- package/lib/workspace/widgets/ogc-filter/ogc-filter.component.d.ts +29 -29
- package/lib/workspace/widgets/ogc-filter/ogc-filter.module.d.ts +14 -14
- package/lib/workspace/widgets/widgets.d.ts +9 -9
- package/lib/workspace/workspace-selector/workspace-selector.directive.d.ts +32 -32
- package/lib/workspace/workspace-selector/workspace-selector.module.d.ts +11 -11
- package/lib/workspace/workspace-updator/workspace-updator.directive.d.ts +26 -26
- package/lib/workspace/workspace-updator/workspace-updator.module.d.ts +11 -11
- package/lib/workspace/workspace.module.d.ts +14 -14
- package/package.json +4 -4
- package/public_api.d.ts +51 -51
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
export * from './map';
|
|
2
|
-
export * from './map.enums';
|
|
3
|
-
export * from './map.interface';
|
|
4
|
-
export * from './map.service';
|
|
5
|
-
export * from './map.utils';
|
|
6
|
-
export * from './mapOffline.directive';
|
|
7
|
-
export * from './map-pointer-position.directive';
|
|
8
|
-
export * from './hover-feature.directive';
|
|
9
|
-
export * from './projection.interfaces';
|
|
10
|
-
export * from './projection.service';
|
|
11
|
-
export * from './controllers';
|
|
12
|
-
export * from './projection.utils';
|
|
13
|
-
export * from './linkedLayers.utils';
|
|
1
|
+
export * from './map';
|
|
2
|
+
export * from './map.enums';
|
|
3
|
+
export * from './map.interface';
|
|
4
|
+
export * from './map.service';
|
|
5
|
+
export * from './map.utils';
|
|
6
|
+
export * from './mapOffline.directive';
|
|
7
|
+
export * from './map-pointer-position.directive';
|
|
8
|
+
export * from './hover-feature.directive';
|
|
9
|
+
export * from './projection.interfaces';
|
|
10
|
+
export * from './projection.service';
|
|
11
|
+
export * from './controllers';
|
|
12
|
+
export * from './projection.utils';
|
|
13
|
+
export * from './linkedLayers.utils';
|
|
14
14
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9tYXAvc2hhcmVkL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsT0FBTyxDQUFDO0FBQ3RCLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbWFwJztcbmV4cG9ydCAqIGZyb20gJy4vbWFwLmVudW1zJztcbmV4cG9ydCAqIGZyb20gJy4vbWFwLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL21hcC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbWFwLnV0aWxzJztcbmV4cG9ydCAqIGZyb20gJy4vbWFwT2ZmbGluZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXAtcG9pbnRlci1wb3NpdGlvbi5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9ob3Zlci1mZWF0dXJlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3Byb2plY3Rpb24uaW50ZXJmYWNlcyc7XG5leHBvcnQgKiBmcm9tICcuL3Byb2plY3Rpb24uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRyb2xsZXJzJztcbmV4cG9ydCAqIGZyb20gJy4vcHJvamVjdGlvbi51dGlscyc7XG5leHBvcnQgKiBmcm9tICcuL2xpbmtlZExheWVycy51dGlscyc7XG4iXX0=
|
|
@@ -1,240 +1,240 @@
|
|
|
1
|
-
import { getUid } from "ol/util";
|
|
2
|
-
import { WMSDataSource } from "../../datasource/shared/datasources/wms-datasource";
|
|
3
|
-
import { LinkedProperties } from "../../layer/shared/layers";
|
|
4
|
-
import { OgcFilterWriter } from '../../filter/shared/ogc-filter';
|
|
5
|
-
export function getLinkedLayersOptions(layer) {
|
|
6
|
-
return layer.options.linkedLayers;
|
|
7
|
-
}
|
|
8
|
-
export function getIgoLayerByLinkId(map, id) {
|
|
9
|
-
return map.layers.find(l => l.options.linkedLayers?.linkId === id);
|
|
10
|
-
}
|
|
11
|
-
export function layerHasLinkWithProperty(layer, property) {
|
|
12
|
-
let hasLinkWithProperty = false;
|
|
13
|
-
const layerLLOptions = getLinkedLayersOptions(layer);
|
|
14
|
-
if (layerLLOptions?.links) {
|
|
15
|
-
const link = layerLLOptions.links.find(l => l.properties.includes(property));
|
|
16
|
-
hasLinkWithProperty = link ? true : false;
|
|
17
|
-
}
|
|
18
|
-
return hasLinkWithProperty;
|
|
19
|
-
}
|
|
20
|
-
export function layerHasLinkDeletion(layer) {
|
|
21
|
-
let hasLinkWithSyncedDelete = false;
|
|
22
|
-
const layerLLOptions = getLinkedLayersOptions(layer);
|
|
23
|
-
if (layerLLOptions?.links) {
|
|
24
|
-
const link = layerLLOptions.links.find(l => l.syncedDelete);
|
|
25
|
-
hasLinkWithSyncedDelete = link ? true : false;
|
|
26
|
-
}
|
|
27
|
-
return hasLinkWithSyncedDelete;
|
|
28
|
-
}
|
|
29
|
-
export function getRootParentByProperty(map, layer, property) {
|
|
30
|
-
let layerToUse = layer;
|
|
31
|
-
let parentLayer = layerToUse;
|
|
32
|
-
let hasParentLayer = true;
|
|
33
|
-
while (hasParentLayer) {
|
|
34
|
-
layerToUse = parentLayer;
|
|
35
|
-
parentLayer = getDirectParentLayerByProperty(map, layerToUse, property);
|
|
36
|
-
hasParentLayer = parentLayer ? true : false;
|
|
37
|
-
}
|
|
38
|
-
if (!hasParentLayer) {
|
|
39
|
-
if (!layerHasLinkWithProperty(layerToUse, property)) {
|
|
40
|
-
layerToUse = undefined;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
return hasParentLayer ? parentLayer : layerToUse;
|
|
44
|
-
}
|
|
45
|
-
export function getDirectParentLayerByProperty(map, layer, property) {
|
|
46
|
-
if (layer?.options.linkedLayers?.linkId) {
|
|
47
|
-
const currentLinkId = layer.options.linkedLayers.linkId;
|
|
48
|
-
let parents = map.layers.filter(pl => {
|
|
49
|
-
const linkedLayers = pl.options.linkedLayers;
|
|
50
|
-
if (linkedLayers && linkedLayers.links) {
|
|
51
|
-
const a = linkedLayers.links.find(l => l.linkedIds.includes(currentLinkId) && l.properties.includes(property));
|
|
52
|
-
return a;
|
|
53
|
-
}
|
|
54
|
-
});
|
|
55
|
-
if (parents.length > 1) {
|
|
1
|
+
import { getUid } from "ol/util";
|
|
2
|
+
import { WMSDataSource } from "../../datasource/shared/datasources/wms-datasource";
|
|
3
|
+
import { LinkedProperties } from "../../layer/shared/layers";
|
|
4
|
+
import { OgcFilterWriter } from '../../filter/shared/ogc-filter';
|
|
5
|
+
export function getLinkedLayersOptions(layer) {
|
|
6
|
+
return layer.options.linkedLayers;
|
|
7
|
+
}
|
|
8
|
+
export function getIgoLayerByLinkId(map, id) {
|
|
9
|
+
return map.layers.find(l => l.options.linkedLayers?.linkId === id);
|
|
10
|
+
}
|
|
11
|
+
export function layerHasLinkWithProperty(layer, property) {
|
|
12
|
+
let hasLinkWithProperty = false;
|
|
13
|
+
const layerLLOptions = getLinkedLayersOptions(layer);
|
|
14
|
+
if (layerLLOptions?.links) {
|
|
15
|
+
const link = layerLLOptions.links.find(l => l.properties.includes(property));
|
|
16
|
+
hasLinkWithProperty = link ? true : false;
|
|
17
|
+
}
|
|
18
|
+
return hasLinkWithProperty;
|
|
19
|
+
}
|
|
20
|
+
export function layerHasLinkDeletion(layer) {
|
|
21
|
+
let hasLinkWithSyncedDelete = false;
|
|
22
|
+
const layerLLOptions = getLinkedLayersOptions(layer);
|
|
23
|
+
if (layerLLOptions?.links) {
|
|
24
|
+
const link = layerLLOptions.links.find(l => l.syncedDelete);
|
|
25
|
+
hasLinkWithSyncedDelete = link ? true : false;
|
|
26
|
+
}
|
|
27
|
+
return hasLinkWithSyncedDelete;
|
|
28
|
+
}
|
|
29
|
+
export function getRootParentByProperty(map, layer, property) {
|
|
30
|
+
let layerToUse = layer;
|
|
31
|
+
let parentLayer = layerToUse;
|
|
32
|
+
let hasParentLayer = true;
|
|
33
|
+
while (hasParentLayer) {
|
|
34
|
+
layerToUse = parentLayer;
|
|
35
|
+
parentLayer = getDirectParentLayerByProperty(map, layerToUse, property);
|
|
36
|
+
hasParentLayer = parentLayer ? true : false;
|
|
37
|
+
}
|
|
38
|
+
if (!hasParentLayer) {
|
|
39
|
+
if (!layerHasLinkWithProperty(layerToUse, property)) {
|
|
40
|
+
layerToUse = undefined;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
return hasParentLayer ? parentLayer : layerToUse;
|
|
44
|
+
}
|
|
45
|
+
export function getDirectParentLayerByProperty(map, layer, property) {
|
|
46
|
+
if (layer?.options.linkedLayers?.linkId) {
|
|
47
|
+
const currentLinkId = layer.options.linkedLayers.linkId;
|
|
48
|
+
let parents = map.layers.filter(pl => {
|
|
49
|
+
const linkedLayers = pl.options.linkedLayers;
|
|
50
|
+
if (linkedLayers && linkedLayers.links) {
|
|
51
|
+
const a = linkedLayers.links.find(l => l.linkedIds.includes(currentLinkId) && l.properties.includes(property));
|
|
52
|
+
return a;
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
if (parents.length > 1) {
|
|
56
56
|
console.warn(`Your layer ${layer.title || layer.id} must only have 1 parent (${parents.map(p => p.title || p.id)})
|
|
57
|
-
, The first parent (${parents[0].title || parents[0].id}) will be use to sync properties`);
|
|
58
|
-
}
|
|
59
|
-
return parents[0];
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
export function getDirectChildLayersByProperty(map, layer, property) {
|
|
63
|
-
let linkedIds = [];
|
|
64
|
-
if (layer?.options.linkedLayers?.links) {
|
|
65
|
-
layer.options.linkedLayers.links
|
|
66
|
-
.filter(l => l.properties.includes(property))
|
|
67
|
-
.map(link => {
|
|
68
|
-
linkedIds = linkedIds.concat(link.linkedIds);
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
return linkedIds.map(lid => getIgoLayerByLinkId(map, lid));
|
|
72
|
-
}
|
|
73
|
-
export function getAllChildLayersByProperty(map, layer, knownChildLayers, property) {
|
|
74
|
-
let childLayers = getDirectChildLayersByProperty(map, layer, property);
|
|
75
|
-
childLayers.map(cl => {
|
|
76
|
-
knownChildLayers.push(cl);
|
|
77
|
-
const directChildLayers = getDirectChildLayersByProperty(map, cl, property);
|
|
78
|
-
if (directChildLayers) {
|
|
79
|
-
getAllChildLayersByProperty(map, cl, knownChildLayers, property);
|
|
80
|
-
}
|
|
81
|
-
});
|
|
82
|
-
return knownChildLayers;
|
|
83
|
-
}
|
|
84
|
-
export function getRootParentByDeletion(map, layer) {
|
|
85
|
-
let layerToUse = layer;
|
|
86
|
-
let parentLayer = layerToUse;
|
|
87
|
-
let hasParentLayer = true;
|
|
88
|
-
while (hasParentLayer) {
|
|
89
|
-
layerToUse = parentLayer;
|
|
90
|
-
parentLayer = getDirectParentLayerByDeletion(map, layerToUse);
|
|
91
|
-
hasParentLayer = parentLayer ? true : false;
|
|
92
|
-
}
|
|
93
|
-
if (!hasParentLayer) {
|
|
94
|
-
if (!layerHasLinkDeletion(layerToUse)) {
|
|
95
|
-
layerToUse = undefined;
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
return hasParentLayer ? parentLayer : layerToUse;
|
|
99
|
-
}
|
|
100
|
-
export function getDirectParentLayerByDeletion(map, layer) {
|
|
101
|
-
if (layer.options.linkedLayers?.linkId) {
|
|
102
|
-
const currentLinkId = layer.options.linkedLayers.linkId;
|
|
103
|
-
let parents = map.layers.filter(pl => {
|
|
104
|
-
const linkedLayers = pl.options.linkedLayers;
|
|
105
|
-
if (linkedLayers && linkedLayers.links) {
|
|
106
|
-
const a = linkedLayers.links.find(l => (l.linkedIds.includes(currentLinkId) && l.syncedDelete));
|
|
107
|
-
return a;
|
|
108
|
-
}
|
|
109
|
-
});
|
|
110
|
-
if (parents.length > 1) {
|
|
57
|
+
, The first parent (${parents[0].title || parents[0].id}) will be use to sync properties`);
|
|
58
|
+
}
|
|
59
|
+
return parents[0];
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
export function getDirectChildLayersByProperty(map, layer, property) {
|
|
63
|
+
let linkedIds = [];
|
|
64
|
+
if (layer?.options.linkedLayers?.links) {
|
|
65
|
+
layer.options.linkedLayers.links
|
|
66
|
+
.filter(l => l.properties.includes(property))
|
|
67
|
+
.map(link => {
|
|
68
|
+
linkedIds = linkedIds.concat(link.linkedIds);
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
return linkedIds.map(lid => getIgoLayerByLinkId(map, lid));
|
|
72
|
+
}
|
|
73
|
+
export function getAllChildLayersByProperty(map, layer, knownChildLayers, property) {
|
|
74
|
+
let childLayers = getDirectChildLayersByProperty(map, layer, property);
|
|
75
|
+
childLayers.map(cl => {
|
|
76
|
+
knownChildLayers.push(cl);
|
|
77
|
+
const directChildLayers = getDirectChildLayersByProperty(map, cl, property);
|
|
78
|
+
if (directChildLayers) {
|
|
79
|
+
getAllChildLayersByProperty(map, cl, knownChildLayers, property);
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
return knownChildLayers;
|
|
83
|
+
}
|
|
84
|
+
export function getRootParentByDeletion(map, layer) {
|
|
85
|
+
let layerToUse = layer;
|
|
86
|
+
let parentLayer = layerToUse;
|
|
87
|
+
let hasParentLayer = true;
|
|
88
|
+
while (hasParentLayer) {
|
|
89
|
+
layerToUse = parentLayer;
|
|
90
|
+
parentLayer = getDirectParentLayerByDeletion(map, layerToUse);
|
|
91
|
+
hasParentLayer = parentLayer ? true : false;
|
|
92
|
+
}
|
|
93
|
+
if (!hasParentLayer) {
|
|
94
|
+
if (!layerHasLinkDeletion(layerToUse)) {
|
|
95
|
+
layerToUse = undefined;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
return hasParentLayer ? parentLayer : layerToUse;
|
|
99
|
+
}
|
|
100
|
+
export function getDirectParentLayerByDeletion(map, layer) {
|
|
101
|
+
if (layer.options.linkedLayers?.linkId) {
|
|
102
|
+
const currentLinkId = layer.options.linkedLayers.linkId;
|
|
103
|
+
let parents = map.layers.filter(pl => {
|
|
104
|
+
const linkedLayers = pl.options.linkedLayers;
|
|
105
|
+
if (linkedLayers && linkedLayers.links) {
|
|
106
|
+
const a = linkedLayers.links.find(l => (l.linkedIds.includes(currentLinkId) && l.syncedDelete));
|
|
107
|
+
return a;
|
|
108
|
+
}
|
|
109
|
+
});
|
|
110
|
+
if (parents.length > 1) {
|
|
111
111
|
console.warn(`Your layer ${layer.title || layer.id} must only have 1 parent (${parents.map(p => p.title || p.id)})
|
|
112
|
-
, The first parent (${parents[0].title || parents[0].id}) will be use to sync properties`);
|
|
113
|
-
}
|
|
114
|
-
return parents[0];
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
export function getDirectChildLayersByDeletion(map, layer) {
|
|
118
|
-
let linkedIds = [];
|
|
119
|
-
if (layer?.options.linkedLayers?.links) {
|
|
120
|
-
layer.options.linkedLayers.links
|
|
121
|
-
.filter(l => l.syncedDelete)
|
|
122
|
-
.map(link => {
|
|
123
|
-
linkedIds = linkedIds.concat(link.linkedIds);
|
|
124
|
-
});
|
|
125
|
-
}
|
|
126
|
-
return linkedIds.map(lid => getIgoLayerByLinkId(map, lid));
|
|
127
|
-
}
|
|
128
|
-
export function getAllChildLayersByDeletion(map, layer, knownChildLayers) {
|
|
129
|
-
let childLayers = getDirectChildLayersByDeletion(map, layer);
|
|
130
|
-
childLayers.map(cl => {
|
|
131
|
-
knownChildLayers.push(cl);
|
|
132
|
-
const directChildLayers = getDirectChildLayersByDeletion(map, cl);
|
|
133
|
-
if (directChildLayers) {
|
|
134
|
-
getAllChildLayersByDeletion(map, cl, knownChildLayers);
|
|
135
|
-
}
|
|
136
|
-
});
|
|
137
|
-
return knownChildLayers;
|
|
138
|
-
}
|
|
139
|
-
export function initLayerSyncFromRootParentLayers(map, layers) {
|
|
140
|
-
const rootLayersByProperty = {};
|
|
141
|
-
const keys = Object.keys(LinkedProperties);
|
|
142
|
-
keys.map(k => {
|
|
143
|
-
rootLayersByProperty[LinkedProperties[k]] = [];
|
|
144
|
-
});
|
|
145
|
-
layers
|
|
146
|
-
.filter(l => getLinkedLayersOptions(l))
|
|
147
|
-
.map(l => {
|
|
148
|
-
keys.map(key => {
|
|
149
|
-
const k = LinkedProperties[key];
|
|
150
|
-
const plbp = getRootParentByProperty(map, l, k);
|
|
151
|
-
const layers = rootLayersByProperty[k];
|
|
152
|
-
const layersId = layers.map(l => l.id);
|
|
153
|
-
if (plbp && !layersId.includes(plbp.id)) {
|
|
154
|
-
rootLayersByProperty[k].push(plbp);
|
|
155
|
-
}
|
|
156
|
-
});
|
|
157
|
-
});
|
|
158
|
-
Object.keys(rootLayersByProperty).map(k => {
|
|
159
|
-
const layers = rootLayersByProperty[k];
|
|
160
|
-
layers.map((l) => l.ol.notify(k, undefined));
|
|
161
|
-
});
|
|
162
|
-
}
|
|
163
|
-
export function handleLayerPropertyChange(map, propertyChange, initiatorIgoLayer) {
|
|
164
|
-
if (!propertyChange) {
|
|
165
|
-
return;
|
|
166
|
-
}
|
|
167
|
-
const ogcFilterWriter = new OgcFilterWriter();
|
|
168
|
-
let isLayerProperty = true;
|
|
169
|
-
let isDatasourceProperty = true;
|
|
170
|
-
const key = propertyChange.key;
|
|
171
|
-
let newValue;
|
|
172
|
-
if (key === 'ogcFilters') {
|
|
173
|
-
isLayerProperty = false;
|
|
174
|
-
isDatasourceProperty = true;
|
|
175
|
-
newValue = initiatorIgoLayer.dataSource.options.ogcFilters;
|
|
176
|
-
}
|
|
177
|
-
else if (key === 'timeFilter') {
|
|
178
|
-
isLayerProperty = false;
|
|
179
|
-
isDatasourceProperty = true;
|
|
180
|
-
newValue = initiatorIgoLayer.dataSource.options.timeFilter;
|
|
181
|
-
}
|
|
182
|
-
else {
|
|
183
|
-
isLayerProperty = true;
|
|
184
|
-
isDatasourceProperty = false;
|
|
185
|
-
newValue = initiatorIgoLayer.ol.get(key);
|
|
186
|
-
}
|
|
187
|
-
const initiatorLinkedLayersOptions = getLinkedLayersOptions(initiatorIgoLayer);
|
|
188
|
-
if (initiatorLinkedLayersOptions) {
|
|
189
|
-
let rootParentByProperty = getRootParentByProperty(map, initiatorIgoLayer, key);
|
|
190
|
-
if (!rootParentByProperty) {
|
|
191
|
-
rootParentByProperty = initiatorIgoLayer;
|
|
192
|
-
}
|
|
193
|
-
const clbp = [rootParentByProperty];
|
|
194
|
-
getAllChildLayersByProperty(map, rootParentByProperty, clbp, key);
|
|
195
|
-
let resolutionPropertyHasChanged = false;
|
|
196
|
-
const initiatorIgoLayerSourceType = initiatorIgoLayer.options.source.options.type;
|
|
197
|
-
const initiatorIgoLayerOgcFilterableDataSourceOptions = initiatorIgoLayer.dataSource.options;
|
|
198
|
-
clbp.map(l => {
|
|
199
|
-
if (initiatorIgoLayer && l && getUid(initiatorIgoLayer.ol) !== getUid(l?.ol)) {
|
|
200
|
-
const lLayerType = l.options.source.options.type;
|
|
201
|
-
if (isLayerProperty) {
|
|
202
|
-
l.ol.set(key, newValue, true);
|
|
203
|
-
if (key === 'visible') {
|
|
204
|
-
l.visible$.next(newValue);
|
|
205
|
-
}
|
|
206
|
-
if (key === 'minResolution' || key === 'maxResolution') {
|
|
207
|
-
resolutionPropertyHasChanged = true;
|
|
208
|
-
}
|
|
209
|
-
}
|
|
210
|
-
else if (isDatasourceProperty) {
|
|
211
|
-
if (key === 'ogcFilters') {
|
|
212
|
-
l.dataSource.setOgcFilters(newValue, false);
|
|
213
|
-
if (lLayerType === 'wfs') {
|
|
214
|
-
l.ol.getSource().refresh();
|
|
215
|
-
}
|
|
216
|
-
if (lLayerType === 'wms') {
|
|
217
|
-
let appliedOgcFilter;
|
|
218
|
-
if (initiatorIgoLayerSourceType === 'wfs') {
|
|
219
|
-
appliedOgcFilter = ogcFilterWriter.handleOgcFiltersAppliedValue(initiatorIgoLayerOgcFilterableDataSourceOptions, initiatorIgoLayer.dataSource.options.fieldNameGeometry, undefined, map.viewController.getOlProjection());
|
|
220
|
-
}
|
|
221
|
-
else if (initiatorIgoLayerSourceType === 'wms') {
|
|
222
|
-
appliedOgcFilter = initiatorIgoLayer.dataSource.ol.getParams().FILTER;
|
|
223
|
-
}
|
|
224
|
-
l.dataSource.ol.updateParams({ FILTER: appliedOgcFilter });
|
|
225
|
-
}
|
|
226
|
-
}
|
|
227
|
-
else if (l.dataSource instanceof WMSDataSource && key === 'timeFilter') {
|
|
228
|
-
l.dataSource.setTimeFilter(newValue, false);
|
|
229
|
-
const appliedTimeFilter = initiatorIgoLayer.ol.getSource().getParams().TIME;
|
|
230
|
-
l.dataSource.ol.updateParams({ TIME: appliedTimeFilter });
|
|
231
|
-
}
|
|
232
|
-
}
|
|
233
|
-
}
|
|
234
|
-
});
|
|
235
|
-
if (resolutionPropertyHasChanged) {
|
|
236
|
-
map.viewController.resolution$.next(map.viewController.resolution$.value);
|
|
237
|
-
}
|
|
238
|
-
}
|
|
239
|
-
}
|
|
112
|
+
, The first parent (${parents[0].title || parents[0].id}) will be use to sync properties`);
|
|
113
|
+
}
|
|
114
|
+
return parents[0];
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
export function getDirectChildLayersByDeletion(map, layer) {
|
|
118
|
+
let linkedIds = [];
|
|
119
|
+
if (layer?.options.linkedLayers?.links) {
|
|
120
|
+
layer.options.linkedLayers.links
|
|
121
|
+
.filter(l => l.syncedDelete)
|
|
122
|
+
.map(link => {
|
|
123
|
+
linkedIds = linkedIds.concat(link.linkedIds);
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
return linkedIds.map(lid => getIgoLayerByLinkId(map, lid));
|
|
127
|
+
}
|
|
128
|
+
export function getAllChildLayersByDeletion(map, layer, knownChildLayers) {
|
|
129
|
+
let childLayers = getDirectChildLayersByDeletion(map, layer);
|
|
130
|
+
childLayers.map(cl => {
|
|
131
|
+
knownChildLayers.push(cl);
|
|
132
|
+
const directChildLayers = getDirectChildLayersByDeletion(map, cl);
|
|
133
|
+
if (directChildLayers) {
|
|
134
|
+
getAllChildLayersByDeletion(map, cl, knownChildLayers);
|
|
135
|
+
}
|
|
136
|
+
});
|
|
137
|
+
return knownChildLayers;
|
|
138
|
+
}
|
|
139
|
+
export function initLayerSyncFromRootParentLayers(map, layers) {
|
|
140
|
+
const rootLayersByProperty = {};
|
|
141
|
+
const keys = Object.keys(LinkedProperties);
|
|
142
|
+
keys.map(k => {
|
|
143
|
+
rootLayersByProperty[LinkedProperties[k]] = [];
|
|
144
|
+
});
|
|
145
|
+
layers
|
|
146
|
+
.filter(l => getLinkedLayersOptions(l))
|
|
147
|
+
.map(l => {
|
|
148
|
+
keys.map(key => {
|
|
149
|
+
const k = LinkedProperties[key];
|
|
150
|
+
const plbp = getRootParentByProperty(map, l, k);
|
|
151
|
+
const layers = rootLayersByProperty[k];
|
|
152
|
+
const layersId = layers.map(l => l.id);
|
|
153
|
+
if (plbp && !layersId.includes(plbp.id)) {
|
|
154
|
+
rootLayersByProperty[k].push(plbp);
|
|
155
|
+
}
|
|
156
|
+
});
|
|
157
|
+
});
|
|
158
|
+
Object.keys(rootLayersByProperty).map(k => {
|
|
159
|
+
const layers = rootLayersByProperty[k];
|
|
160
|
+
layers.map((l) => l.ol.notify(k, undefined));
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
export function handleLayerPropertyChange(map, propertyChange, initiatorIgoLayer) {
|
|
164
|
+
if (!propertyChange) {
|
|
165
|
+
return;
|
|
166
|
+
}
|
|
167
|
+
const ogcFilterWriter = new OgcFilterWriter();
|
|
168
|
+
let isLayerProperty = true;
|
|
169
|
+
let isDatasourceProperty = true;
|
|
170
|
+
const key = propertyChange.key;
|
|
171
|
+
let newValue;
|
|
172
|
+
if (key === 'ogcFilters') {
|
|
173
|
+
isLayerProperty = false;
|
|
174
|
+
isDatasourceProperty = true;
|
|
175
|
+
newValue = initiatorIgoLayer.dataSource.options.ogcFilters;
|
|
176
|
+
}
|
|
177
|
+
else if (key === 'timeFilter') {
|
|
178
|
+
isLayerProperty = false;
|
|
179
|
+
isDatasourceProperty = true;
|
|
180
|
+
newValue = initiatorIgoLayer.dataSource.options.timeFilter;
|
|
181
|
+
}
|
|
182
|
+
else {
|
|
183
|
+
isLayerProperty = true;
|
|
184
|
+
isDatasourceProperty = false;
|
|
185
|
+
newValue = initiatorIgoLayer.ol.get(key);
|
|
186
|
+
}
|
|
187
|
+
const initiatorLinkedLayersOptions = getLinkedLayersOptions(initiatorIgoLayer);
|
|
188
|
+
if (initiatorLinkedLayersOptions) {
|
|
189
|
+
let rootParentByProperty = getRootParentByProperty(map, initiatorIgoLayer, key);
|
|
190
|
+
if (!rootParentByProperty) {
|
|
191
|
+
rootParentByProperty = initiatorIgoLayer;
|
|
192
|
+
}
|
|
193
|
+
const clbp = [rootParentByProperty];
|
|
194
|
+
getAllChildLayersByProperty(map, rootParentByProperty, clbp, key);
|
|
195
|
+
let resolutionPropertyHasChanged = false;
|
|
196
|
+
const initiatorIgoLayerSourceType = initiatorIgoLayer.options.source.options.type;
|
|
197
|
+
const initiatorIgoLayerOgcFilterableDataSourceOptions = initiatorIgoLayer.dataSource.options;
|
|
198
|
+
clbp.map(l => {
|
|
199
|
+
if (initiatorIgoLayer && l && getUid(initiatorIgoLayer.ol) !== getUid(l?.ol)) {
|
|
200
|
+
const lLayerType = l.options.source.options.type;
|
|
201
|
+
if (isLayerProperty) {
|
|
202
|
+
l.ol.set(key, newValue, true);
|
|
203
|
+
if (key === 'visible') {
|
|
204
|
+
l.visible$.next(newValue);
|
|
205
|
+
}
|
|
206
|
+
if (key === 'minResolution' || key === 'maxResolution') {
|
|
207
|
+
resolutionPropertyHasChanged = true;
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
else if (isDatasourceProperty) {
|
|
211
|
+
if (key === 'ogcFilters') {
|
|
212
|
+
l.dataSource.setOgcFilters(newValue, false);
|
|
213
|
+
if (lLayerType === 'wfs') {
|
|
214
|
+
l.ol.getSource().refresh();
|
|
215
|
+
}
|
|
216
|
+
if (lLayerType === 'wms') {
|
|
217
|
+
let appliedOgcFilter;
|
|
218
|
+
if (initiatorIgoLayerSourceType === 'wfs') {
|
|
219
|
+
appliedOgcFilter = ogcFilterWriter.handleOgcFiltersAppliedValue(initiatorIgoLayerOgcFilterableDataSourceOptions, initiatorIgoLayer.dataSource.options.fieldNameGeometry, undefined, map.viewController.getOlProjection());
|
|
220
|
+
}
|
|
221
|
+
else if (initiatorIgoLayerSourceType === 'wms') {
|
|
222
|
+
appliedOgcFilter = initiatorIgoLayer.dataSource.ol.getParams().FILTER;
|
|
223
|
+
}
|
|
224
|
+
l.dataSource.ol.updateParams({ FILTER: appliedOgcFilter });
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
else if (l.dataSource instanceof WMSDataSource && key === 'timeFilter') {
|
|
228
|
+
l.dataSource.setTimeFilter(newValue, false);
|
|
229
|
+
const appliedTimeFilter = initiatorIgoLayer.ol.getSource().getParams().TIME;
|
|
230
|
+
l.dataSource.ol.updateParams({ TIME: appliedTimeFilter });
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
});
|
|
235
|
+
if (resolutionPropertyHasChanged) {
|
|
236
|
+
map.viewController.resolution$.next(map.viewController.resolution$.value);
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
240
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlua2VkTGF5ZXJzLnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvbWFwL3NoYXJlZC9saW5rZWRMYXllcnMudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNqQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFHbkYsT0FBTyxFQUFTLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFHcEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRWpFLE1BQU0sVUFBVSxzQkFBc0IsQ0FBQyxLQUFZO0lBQy9DLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUM7QUFDdEMsQ0FBQztBQUVELE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxHQUFXLEVBQUUsRUFBVTtJQUN2RCxPQUFPLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsTUFBTSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0FBQ3ZFLENBQUM7QUFFRCxNQUFNLFVBQVUsd0JBQXdCLENBQUMsS0FBWSxFQUFFLFFBQTBCO0lBQzdFLElBQUksbUJBQW1CLEdBQUcsS0FBSyxDQUFDO0lBQ2hDLE1BQU0sY0FBYyxHQUFHLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3JELElBQUksY0FBYyxFQUFFLEtBQUssRUFBRTtRQUN2QixNQUFNLElBQUksR0FBRyxjQUFjLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDN0UsbUJBQW1CLEdBQUcsSUFBSSxDQUFDLENB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QUFNLElBQUksMkJBQTJCLEtBQUssS0FBSyxFQUFFO2dDQUNoRCxnQkFBZ0IsR0FBSSxpQkFBaUIsQ0FBQyxVQUE0QixDQUFDLEVBQUUsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxNQUFNLENBQUM7NkJBQzFGOzRCQUNBLENBQUMsQ0FBQyxVQUE0QixDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsRUFBRSxNQUFNLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO3lCQUMvRTtxQkFDRjt5QkFBTSxJQUFJLENBQUMsQ0FBQyxVQUFVLFlBQVksYUFBYSxJQUFJLEdBQUcsS0FBSyxZQUFZLEVBQUU7d0JBQ3ZFLENBQUMsQ0FBQyxVQUF1QyxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUM7d0JBQzFFLE1BQU0saUJBQWlCLEdBQUksaUJBQWlCLENBQUMsRUFBRSxDQUFDLFNBQVMsRUFBdUIsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxJQUFJLENBQUM7d0JBQ2xHLENBQUMsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxFQUFFLElBQUksRUFBRSxpQkFBaUIsRUFBRSxDQUFDLENBQUM7cUJBQzNEO2lCQUNGO2FBQ0Y7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksNEJBQTRCLEVBQUU7WUFDaEMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzNFO0tBR0Y7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JqZWN0RXZlbnQgfSBmcm9tIFwib2wvT2JqZWN0XCI7XG5pbXBvcnQgeyBnZXRVaWQgfSBmcm9tIFwib2wvdXRpbFwiO1xuaW1wb3J0IHsgV01TRGF0YVNvdXJjZSB9IGZyb20gXCIuLi8uLi9kYXRhc291cmNlL3NoYXJlZC9kYXRhc291cmNlcy93bXMtZGF0YXNvdXJjZVwiO1xuaW1wb3J0IHsgT2djRmlsdGVyYWJsZURhdGFTb3VyY2UsIE9nY0ZpbHRlcmFibGVEYXRhU291cmNlT3B0aW9ucyB9IGZyb20gXCIuLi8uLi9maWx0ZXIvc2hhcmVkL29nYy1maWx0ZXIuaW50ZXJmYWNlXCI7XG5pbXBvcnQgeyBUaW1lRmlsdGVyYWJsZURhdGFTb3VyY2UsIFRpbWVGaWx0ZXJhYmxlRGF0YVNvdXJjZU9wdGlvbnMgfSBmcm9tIFwiLi4vLi4vZmlsdGVyL3NoYXJlZC90aW1lLWZpbHRlci5pbnRlcmZhY2VcIjtcbmltcG9ydCB7IExheWVyLCBMaW5rZWRQcm9wZXJ0aWVzIH0gZnJvbSBcIi4uLy4uL2xheWVyL3NoYXJlZC9sYXllcnNcIjtcbmltcG9ydCB7IElnb01hcCB9IGZyb20gXCIuL21hcFwiO1xuaW1wb3J0IG9sU291cmNlSW1hZ2VXTVMgZnJvbSAnb2wvc291cmNlL0ltYWdlV01TJztcbmltcG9ydCB7IE9nY0ZpbHRlcldyaXRlciB9IGZyb20gJy4uLy4uL2ZpbHRlci9zaGFyZWQvb2djLWZpbHRlcic7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRMaW5rZWRMYXllcnNPcHRpb25zKGxheWVyOiBMYXllcikge1xuICAgIHJldHVybiBsYXllci5vcHRpb25zLmxpbmtlZExheWVycztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldElnb0xheWVyQnlMaW5rSWQobWFwOiBJZ29NYXAsIGlkOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gbWFwLmxheWVycy5maW5kKGwgPT4gbC5vcHRpb25zLmxpbmtlZExheWVycz8ubGlua0lkID09PSBpZCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsYXllckhhc0xpbmtXaXRoUHJvcGVydHkobGF5ZXI6IExheWVyLCBwcm9wZXJ0eTogTGlua2VkUHJvcGVydGllcyk6IGJvb2xlYW4ge1xuICAgIGxldCBoYXNMaW5rV2l0aFByb3BlcnR5ID0gZmFsc2U7XG4gICAgY29uc3QgbGF5ZXJMTE9wdGlvbnMgPSBnZXRMaW5rZWRMYXllcnNPcHRpb25zKGxheWVyKTtcbiAgICBpZiAobGF5ZXJMTE9wdGlvbnM/LmxpbmtzKSB7XG4gICAgICAgIGNvbnN0IGxpbmsgPSBsYXllckxMT3B0aW9ucy5saW5rcy5maW5kKGwgPT4gbC5wcm9wZXJ0aWVzLmluY2x1ZGVzKHByb3BlcnR5KSk7XG4gICAgICAgIGhhc0xpbmtXaXRoUHJvcGVydHkgPSBsaW5rID8gdHJ1ZSA6IGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gaGFzTGlua1dpdGhQcm9wZXJ0eTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxheWVySGFzTGlua0RlbGV0aW9uKGxheWVyOiBMYXllcik6IGJvb2xlYW4ge1xuICBsZXQgaGFzTGlua1dpdGhTeW5jZWREZWxldGUgPSBmYWxzZTtcbiAgY29uc3QgbGF5ZXJMTE9wdGlvbnMgPSBnZXRMaW5rZWRMYXllcnNPcHRpb25zKGxheWVyKTtcbiAgaWYgKGxheWVyTExPcHRpb25zPy5saW5rcykge1xuICAgICAgY29uc3QgbGluayA9IGxheWVyTExPcHRpb25zLmxpbmtzLmZpbmQobCA9PiBsLnN5bmNlZERlbGV0ZSk7XG4gICAgICBoYXNMaW5rV2l0aFN5bmNlZERlbGV0ZSA9IGxpbmsgPyB0cnVlIDogZmFsc2U7XG4gIH1cbiAgcmV0dXJuIGhhc0xpbmtXaXRoU3luY2VkRGVsZXRlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Um9vdFBhcmVudEJ5UHJvcGVydHkobWFwOiBJZ29NYXAsIGxheWVyOiBMYXllciwgcHJvcGVydHk6IExpbmtlZFByb3BlcnRpZXMpOiBMYXllciB7XG4gICAgbGV0IGxheWVyVG9Vc2UgPSBsYXllcjtcbiAgICBsZXQgcGFyZW50TGF5ZXIgPSBsYXllclRvVXNlO1xuICAgIGxldCBoYXNQYXJlbnRMYXllciA9IHRydWU7XG4gICAgd2hpbGUgKGhhc1BhcmVudExheWVyKSB7XG4gICAgICAgIGxheWVyVG9Vc2UgPSBwYXJlbnRMYXllcjtcbiAgICAgICAgcGFyZW50TGF5ZXIgPSBnZXREaXJlY3RQYXJlbnRMYXllckJ5UHJvcGVydHkobWFwLCBsYXllclRvVXNlLCBwcm9wZXJ0eSk7XG4gICAgICAgIGhhc1BhcmVudExheWVyID0gcGFyZW50TGF5ZXIgPyB0cnVlIDogZmFsc2U7XG4gICAgfVxuICAgIGlmICghaGFzUGFyZW50TGF5ZXIpIHtcbiAgICAgICAgaWYgKCFsYXllckhhc0xpbmtXaXRoUHJvcGVydHkobGF5ZXJUb1VzZSxwcm9wZXJ0eSkpIHtcbiAgICAgICAgICAgIGxheWVyVG9Vc2UgPSB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGhhc1BhcmVudExheWVyID8gcGFyZW50TGF5ZXIgOiBsYXllclRvVXNlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGlyZWN0UGFyZW50TGF5ZXJCeVByb3BlcnR5KG1hcDogSWdvTWFwLCBsYXllcjogTGF5ZXIsIHByb3BlcnR5OiBMaW5rZWRQcm9wZXJ0aWVzKTogTGF5ZXIge1xuICAgIGlmIChsYXllcj8ub3B0aW9ucy5saW5rZWRMYXllcnM/LmxpbmtJZCkge1xuICAgICAgICBjb25zdCBjdXJyZW50TGlua0lkID0gbGF5ZXIub3B0aW9ucy5saW5rZWRMYXllcnMubGlua0lkO1xuICAgICAgICBsZXQgcGFyZW50cyA9IG1hcC5sYXllcnMuZmlsdGVyKHBsID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGxpbmtlZExheWVycyA9IHBsLm9wdGlvbnMubGlua2VkTGF5ZXJzO1xuICAgICAgICAgICAgaWYgKGxpbmtlZExheWVycyAmJiBsaW5rZWRMYXllcnMubGlua3MpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBhID0gbGlua2VkTGF5ZXJzLmxpbmtzLmZpbmQobCA9PiBsLmxpbmtlZElkcy5pbmNsdWRlcyhjdXJyZW50TGlua0lkKSAmJiBsLnByb3BlcnRpZXMuaW5jbHVkZXMocHJvcGVydHkpKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gYTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIGlmIChwYXJlbnRzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgIGNvbnNvbGUud2FybihgWW91ciBsYXllciAke2xheWVyLnRpdGxlIHx8IGxheWVyLmlkfSBtdXN0IG9ubHkgaGF2ZSAxIHBhcmVudCAoJHtwYXJlbnRzLm1hcChwID0+IHAudGl0bGUgfHwgcC5pZCl9KVxuICAgICAgICAgICAgLCBUaGUgZmlyc3QgcGFyZW50ICgke3BhcmVudHNbMF0udGl0bGUgfHwgcGFyZW50c1swXS5pZH0pIHdpbGwgYmUgdXNlIHRvIHN5bmMgcHJvcGVydGllc2ApO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBwYXJlbnRzWzBdO1xuICAgIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldERpcmVjdENoaWxkTGF5ZXJzQnlQcm9wZXJ0eShtYXA6IElnb01hcCwgbGF5ZXI6IExheWVyLCBwcm9wZXJ0eTogTGlua2VkUHJvcGVydGllcyk6IExheWVyW10ge1xuICAgIGxldCBsaW5rZWRJZHMgPSBbXTtcbiAgICBpZiAobGF5ZXI/Lm9wdGlvbnMubGlua2VkTGF5ZXJzPy5saW5rcykge1xuICAgICAgICBsYXllci5vcHRpb25zLmxpbmtlZExheWVycy5saW5rc1xuICAgICAgICAuZmlsdGVyKGwgPT4gbC5wcm9wZXJ0aWVzLmluY2x1ZGVzKHByb3BlcnR5KSlcbiAgICAgICAgLm1hcChsaW5rID0+IHtcbiAgICAgICAgICAgIGxpbmtlZElkcyA9IGxpbmtlZElkcy5jb25jYXQobGluay5saW5rZWRJZHMpO30pO1xuICAgIH1cbiAgICByZXR1cm4gbGlua2VkSWRzLm1hcChsaWQgPT4gZ2V0SWdvTGF5ZXJCeUxpbmtJZChtYXAsIGxpZCkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QWxsQ2hpbGRMYXllcnNCeVByb3BlcnR5KG1hcDogSWdvTWFwLCBsYXllcjogTGF5ZXIsIGtub3duQ2hpbGRMYXllcnM6IExheWVyW10sIHByb3BlcnR5OiBMaW5rZWRQcm9wZXJ0aWVzKTogTGF5ZXJbXSB7XG4gICAgbGV0IGNoaWxkTGF5ZXJzID0gZ2V0RGlyZWN0Q2hpbGRMYXllcnNCeVByb3BlcnR5KG1hcCwgbGF5ZXIscHJvcGVydHkpO1xuICAgIGNoaWxkTGF5ZXJzLm1hcChjbCA9PiB7XG4gICAgICAgIGtub3duQ2hpbGRMYXllcnMucHVzaChjbCk7XG4gICAgICAgIGNvbnN0IGRpcmVjdENoaWxkTGF5ZXJzID0gZ2V0RGlyZWN0Q2hpbGRMYXllcnNCeVByb3BlcnR5KG1hcCwgY2wsIHByb3BlcnR5KTtcbiAgICAgICAgaWYgKGRpcmVjdENoaWxkTGF5ZXJzKSB7XG4gICAgICAgICAgICBnZXRBbGxDaGlsZExheWVyc0J5UHJvcGVydHkobWFwLCBjbCwga25vd25DaGlsZExheWVycywgcHJvcGVydHkpO1xuICAgICAgICB9XG5cbiAgICB9KTtcbiAgICByZXR1cm4ga25vd25DaGlsZExheWVycztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFJvb3RQYXJlbnRCeURlbGV0aW9uKG1hcDogSWdvTWFwLCBsYXllcjogTGF5ZXIpOiBMYXllciB7XG4gIGxldCBsYXllclRvVXNlID0gbGF5ZXI7XG4gIGxldCBwYXJlbnRMYXllciA9IGxheWVyVG9Vc2U7XG4gIGxldCBoYXNQYXJlbnRMYXllciA9IHRydWU7XG4gIHdoaWxlIChoYXNQYXJlbnRMYXllcikge1xuICAgICAgbGF5ZXJUb1VzZSA9IHBhcmVudExheWVyO1xuICAgICAgcGFyZW50TGF5ZXIgPSBnZXREaXJlY3RQYXJlbnRMYXllckJ5RGVsZXRpb24obWFwLCBsYXllclRvVXNlKTtcbiAgICAgIGhhc1BhcmVudExheWVyID0gcGFyZW50TGF5ZXIgPyB0cnVlIDogZmFsc2U7XG4gIH1cbiAgaWYgKCFoYXNQYXJlbnRMYXllcikge1xuICAgIGlmICghbGF5ZXJIYXNMaW5rRGVsZXRpb24obGF5ZXJUb1VzZSkpIHtcbiAgICAgIGxheWVyVG9Vc2UgPSB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG4gIHJldHVybiBoYXNQYXJlbnRMYXllciA/IHBhcmVudExheWVyIDogbGF5ZXJUb1VzZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldERpcmVjdFBhcmVudExheWVyQnlEZWxldGlvbihtYXA6IElnb01hcCwgbGF5ZXI6IExheWVyKTogTGF5ZXIge1xuICBpZiAobGF5ZXIub3B0aW9ucy5saW5rZWRMYXllcnM/LmxpbmtJZCkge1xuICAgICAgY29uc3QgY3VycmVudExpbmtJZCA9IGxheWVyLm9wdGlvbnMubGlua2VkTGF5ZXJzLmxpbmtJZDtcbiAgICAgIGxldCBwYXJlbnRzID0gbWFwLmxheWVycy5maWx0ZXIocGwgPT4ge1xuICAgICAgICAgIGNvbnN0IGxpbmtlZExheWVycyA9IHBsLm9wdGlvbnMubGlua2VkTGF5ZXJzO1xuICAgICAgICAgIGlmIChsaW5rZWRMYXllcnMgJiYgbGlua2VkTGF5ZXJzLmxpbmtzKSB7XG4gICAgICAgICAgICAgIGNvbnN0IGEgPSBsaW5rZWRMYXllcnMubGlua3MuZmluZChsID0+IChsLmxpbmtlZElkcy5pbmNsdWRlcyhjdXJyZW50TGlua0lkKSAmJiBsLnN5bmNlZERlbGV0ZSkpO1xuICAgICAgICAgICAgICByZXR1cm4gYTtcbiAgICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIGlmIChwYXJlbnRzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICBjb25zb2xlLndhcm4oYFlvdXIgbGF5ZXIgJHtsYXllci50aXRsZSB8fCBsYXllci5pZH0gbXVzdCBvbmx5IGhhdmUgMSBwYXJlbnQgKCR7cGFyZW50cy5tYXAocCA9PiBwLnRpdGxlIHx8IHAuaWQpfSlcbiAgICAgICAgICAsIFRoZSBmaXJzdCBwYXJlbnQgKCR7cGFyZW50c1swXS50aXRsZSB8fCBwYXJlbnRzWzBdLmlkfSkgd2lsbCBiZSB1c2UgdG8gc3luYyBwcm9wZXJ0aWVzYCk7XG4gICAgICB9XG4gICAgICByZXR1cm4gcGFyZW50c1swXTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGlyZWN0Q2hpbGRMYXllcnNCeURlbGV0aW9uKG1hcDogSWdvTWFwLCBsYXllcjogTGF5ZXIpOiBMYXllcltdIHtcbiAgbGV0IGxpbmtlZElkcyA9IFtdO1xuICBpZiAobGF5ZXI/Lm9wdGlvbnMubGlua2VkTGF5ZXJzPy5saW5rcykge1xuICAgICAgbGF5ZXIub3B0aW9ucy5saW5rZWRMYXllcnMubGlua3NcbiAgICAgIC5maWx0ZXIobCA9PiBsLnN5bmNlZERlbGV0ZSlcbiAgICAgIC5tYXAobGluayA9PiB7XG4gICAgICAgICAgbGlua2VkSWRzID0gbGlua2VkSWRzLmNvbmNhdChsaW5rLmxpbmtlZElkcyk7fSk7XG4gIH1cbiAgcmV0dXJuIGxpbmtlZElkcy5tYXAobGlkID0+IGdldElnb0xheWVyQnlMaW5rSWQobWFwLCBsaWQpKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEFsbENoaWxkTGF5ZXJzQnlEZWxldGlvbihtYXA6IElnb01hcCwgbGF5ZXI6IExheWVyLCBrbm93bkNoaWxkTGF5ZXJzOiBMYXllcltdKTogTGF5ZXJbXSB7XG4gIGxldCBjaGlsZExheWVycyA9IGdldERpcmVjdENoaWxkTGF5ZXJzQnlEZWxldGlvbihtYXAsIGxheWVyKTtcbiAgY2hpbGRMYXllcnMubWFwKGNsID0+IHtcbiAgICAgIGtub3duQ2hpbGRMYXllcnMucHVzaChjbCk7XG4gICAgICBjb25zdCBkaXJlY3RDaGlsZExheWVycyA9IGdldERpcmVjdENoaWxkTGF5ZXJzQnlEZWxldGlvbihtYXAsIGNsKTtcbiAgICAgIGlmIChkaXJlY3RDaGlsZExheWVycykge1xuICAgICAgICBnZXRBbGxDaGlsZExheWVyc0J5RGVsZXRpb24obWFwLCBjbCwga25vd25DaGlsZExheWVycyk7XG4gICAgICB9XG5cbiAgfSk7XG4gIHJldHVybiBrbm93bkNoaWxkTGF5ZXJzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaW5pdExheWVyU3luY0Zyb21Sb290UGFyZW50TGF5ZXJzKG1hcDogSWdvTWFwLCBsYXllcnM6IExheWVyW10pIHtcbiAgICBjb25zdCByb290TGF5ZXJzQnlQcm9wZXJ0eSA9IHt9O1xuICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhMaW5rZWRQcm9wZXJ0aWVzKTtcbiAgICBrZXlzLm1hcChrID0+IHtcbiAgICAgIHJvb3RMYXllcnNCeVByb3BlcnR5W0xpbmtlZFByb3BlcnRpZXNba11dID0gW107XG4gICAgfSk7XG4gICAgbGF5ZXJzXG4gICAgICAuZmlsdGVyKGwgPT4gZ2V0TGlua2VkTGF5ZXJzT3B0aW9ucyhsKSlcbiAgICAgIC5tYXAobCA9PiB7XG4gICAgICAgIGtleXMubWFwKGtleSA9PiB7XG4gICAgICAgICAgY29uc3QgayA9IExpbmtlZFByb3BlcnRpZXNba2V5XTtcbiAgICAgICAgICBjb25zdCBwbGJwID0gZ2V0Um9vdFBhcmVudEJ5UHJvcGVydHkobWFwLCBsLCBrIGFzIExpbmtlZFByb3BlcnRpZXMpO1xuICAgICAgICAgIGNvbnN0IGxheWVycyA9IHJvb3RMYXllcnNCeVByb3BlcnR5W2tdO1xuICAgICAgICAgIGNvbnN0IGxheWVyc0lkID0gbGF5ZXJzLm1hcChsID0+IGwuaWQpO1xuICAgICAgICAgIGlmIChwbGJwICYmICFsYXllcnNJZC5pbmNsdWRlcyhwbGJwLmlkKSkge1xuICAgICAgICAgICAgcm9vdExheWVyc0J5UHJvcGVydHlba10ucHVzaChwbGJwKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgT2JqZWN0LmtleXMocm9vdExheWVyc0J5UHJvcGVydHkpLm1hcChrID0+IHtcbiAgICAgIGNvbnN0IGxheWVycyA9IHJvb3RMYXllcnNCeVByb3BlcnR5W2tdO1xuICAgICAgbGF5ZXJzLm1hcCgobDogTGF5ZXIpID0+IGwub2wubm90aWZ5KGssIHVuZGVmaW5lZCkpO1xuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0IGZ1bmN0aW9uIGhhbmRsZUxheWVyUHJvcGVydHlDaGFuZ2UobWFwOiBJZ29NYXAsIHByb3BlcnR5Q2hhbmdlOiBPYmplY3RFdmVudCwgaW5pdGlhdG9ySWdvTGF5ZXI6IExheWVyKSB7XG4gICAgaWYgKCFwcm9wZXJ0eUNoYW5nZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBvZ2NGaWx0ZXJXcml0ZXIgPSBuZXcgT2djRmlsdGVyV3JpdGVyKCk7XG4gICAgbGV0IGlzTGF5ZXJQcm9wZXJ0eSA9IHRydWU7XG4gICAgbGV0IGlzRGF0YXNvdXJjZVByb3BlcnR5ID0gdHJ1ZTtcbiAgICBjb25zdCBrZXkgPSBwcm9wZXJ0eUNoYW5nZS5rZXk7XG4gICAgbGV0IG5ld1ZhbHVlO1xuICAgIGlmIChrZXkgPT09ICdvZ2NGaWx0ZXJzJykge1xuICAgICAgaXNMYXllclByb3BlcnR5ID0gZmFsc2U7XG4gICAgICBpc0RhdGFzb3VyY2VQcm9wZXJ0eSA9IHRydWU7XG4gICAgICBuZXdWYWx1ZSA9IChpbml0aWF0b3JJZ29MYXllci5kYXRhU291cmNlLm9wdGlvbnMgYXMgT2djRmlsdGVyYWJsZURhdGFTb3VyY2VPcHRpb25zKS5vZ2NGaWx0ZXJzO1xuICAgIH0gZWxzZSBpZiAoa2V5ID09PSAndGltZUZpbHRlcicpIHtcbiAgICAgIGlzTGF5ZXJQcm9wZXJ0eSA9IGZhbHNlO1xuICAgICAgaXNEYXRhc291cmNlUHJvcGVydHkgPSB0cnVlO1xuICAgICAgbmV3VmFsdWUgPSAoaW5pdGlhdG9ySWdvTGF5ZXIuZGF0YVNvdXJjZS5vcHRpb25zIGFzIFRpbWVGaWx0ZXJhYmxlRGF0YVNvdXJjZU9wdGlvbnMpLnRpbWVGaWx0ZXI7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlzTGF5ZXJQcm9wZXJ0eSA9IHRydWU7XG4gICAgICBpc0RhdGFzb3VyY2VQcm9wZXJ0eSA9IGZhbHNlO1xuICAgICAgbmV3VmFsdWUgPSBpbml0aWF0b3JJZ29MYXllci5vbC5nZXQoa2V5KTtcbiAgICB9XG5cbiAgICBjb25zdCBpbml0aWF0b3JMaW5rZWRMYXllcnNPcHRpb25zID0gZ2V0TGlua2VkTGF5ZXJzT3B0aW9ucyhpbml0aWF0b3JJZ29MYXllcik7XG4gICAgaWYgKGluaXRpYXRvckxpbmtlZExheWVyc09wdGlvbnMpIHtcbiAgICAgIGxldCByb290UGFyZW50QnlQcm9wZXJ0eSA9IGdldFJvb3RQYXJlbnRCeVByb3BlcnR5KG1hcCxpbml0aWF0b3JJZ29MYXllciwga2V5IGFzIExpbmtlZFByb3BlcnRpZXMpO1xuICAgICAgaWYgKCFyb290UGFyZW50QnlQcm9wZXJ0eSkge1xuICAgICAgICByb290UGFyZW50QnlQcm9wZXJ0eSA9IGluaXRpYXRvcklnb0xheWVyO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBjbGJwID0gW3Jvb3RQYXJlbnRCeVByb3BlcnR5XTtcbiAgICAgIGdldEFsbENoaWxkTGF5ZXJzQnlQcm9wZXJ0eShtYXAsIHJvb3RQYXJlbnRCeVByb3BlcnR5LCBjbGJwLCBrZXkgYXMgTGlua2VkUHJvcGVydGllcyk7XG5cbiAgICAgIGxldCByZXNvbHV0aW9uUHJvcGVydHlIYXNDaGFuZ2VkID0gZmFsc2U7XG4gICAgICBjb25zdCBpbml0aWF0b3JJZ29MYXllclNvdXJjZVR5cGUgPSBpbml0aWF0b3JJZ29MYXllci5vcHRpb25zLnNvdXJjZS5vcHRpb25zLnR5cGU7XG4gICAgICBjb25zdCBpbml0aWF0b3JJZ29MYXllck9nY0ZpbHRlcmFibGVEYXRhU291cmNlT3B0aW9ucyA9IGluaXRpYXRvcklnb0xheWVyLmRhdGFTb3VyY2Uub3B0aW9ucyBhcyBPZ2NGaWx0ZXJhYmxlRGF0YVNvdXJjZU9wdGlvbnM7XG4gICAgICBjbGJwLm1hcChsID0+IHtcbiAgICAgICAgaWYgKGluaXRpYXRvcklnb0xheWVyICYmIGwgJiYgZ2V0VWlkKGluaXRpYXRvcklnb0xheWVyLm9sKSAhPT0gZ2V0VWlkKGw/Lm9sKSkge1xuICAgICAgICAgIGNvbnN0IGxMYXllclR5cGUgPSBsLm9wdGlvbnMuc291cmNlLm9wdGlvbnMudHlwZTtcbiAgICAgICAgICBpZiAoaXNMYXllclByb3BlcnR5KSB7XG4gICAgICAgICAgbC5vbC5zZXQoa2V5LCBuZXdWYWx1ZSwgdHJ1ZSk7XG4gICAgICAgICAgaWYgKGtleSA9PT0gJ3Zpc2libGUnKSB7XG4gICAgICAgICAgICBsLnZpc2libGUkLm5leHQobmV3VmFsdWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoa2V5ID09PSAnbWluUmVzb2x1dGlvbicgfHwga2V5ID09PSAnbWF4UmVzb2x1dGlvbicpIHtcbiAgICAgICAgICAgIHJlc29sdXRpb25Qcm9wZXJ0eUhhc0NoYW5nZWQgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2UgaWYgKGlzRGF0YXNvdXJjZVByb3BlcnR5KSB7XG4gICAgICAgICAgICBpZiAoa2V5ID09PSAnb2djRmlsdGVycycpIHtcbiAgICAgICAgICAgICAgKGwuZGF0YVNvdXJjZSBhcyBPZ2NGaWx0ZXJhYmxlRGF0YVNvdXJjZSkuc2V0T2djRmlsdGVycyhuZXdWYWx1ZSwgZmFsc2UpO1xuICAgICAgICAgICAgICBpZiAobExheWVyVHlwZSA9PT0gJ3dmcycpIHtcbiAgICAgICAgICAgICAgICBsLm9sLmdldFNvdXJjZSgpLnJlZnJlc2goKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpZiAobExheWVyVHlwZSA9PT0gJ3dtcycpIHtcbiAgICAgICAgICAgICAgICBsZXQgYXBwbGllZE9nY0ZpbHRlcjtcbiAgICAgICAgICAgICAgICBpZiAoaW5pdGlhdG9ySWdvTGF5ZXJTb3VyY2VUeXBlID09PSAnd2ZzJykge1xuICAgICAgICAgICAgICAgICAgYXBwbGllZE9nY0ZpbHRlciA9IG9nY0ZpbHRlcldyaXRlci5oYW5kbGVPZ2NGaWx0ZXJzQXBwbGllZFZhbHVlKFxuICAgICAgICAgICAgICAgICAgICBpbml0aWF0b3JJZ29MYXllck9nY0ZpbHRlcmFibGVEYXRhU291cmNlT3B0aW9ucyxcbiAgICAgICAgICAgICAgICAgICAgKGluaXRpYXRvcklnb0xheWVyLmRhdGFTb3VyY2Uub3B0aW9ucyBhcyBhbnkpLmZpZWxkTmFtZUdlb21ldHJ5LFxuICAgICAgICAgICAgICAgICAgICB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgIG1hcC52aWV3Q29udHJvbGxlci5nZXRPbFByb2plY3Rpb24oKVxuICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGluaXRpYXRvcklnb0xheWVyU291cmNlVHlwZSA9PT0gJ3dtcycpIHtcbiAgICAgICAgICAgICAgICAgIGFwcGxpZWRPZ2NGaWx0ZXIgPSAoaW5pdGlhdG9ySWdvTGF5ZXIuZGF0YVNvdXJjZSBhcyBXTVNEYXRhU291cmNlKS5vbC5nZXRQYXJhbXMoKS5GSUxURVI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIChsLmRhdGFTb3VyY2UgYXMgV01TRGF0YVNvdXJjZSkub2wudXBkYXRlUGFyYW1zKHsgRklMVEVSOiBhcHBsaWVkT2djRmlsdGVyIH0pO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGwuZGF0YVNvdXJjZSBpbnN0YW5jZW9mIFdNU0RhdGFTb3VyY2UgJiYga2V5ID09PSAndGltZUZpbHRlcicpIHtcbiAgICAgICAgICAgICAgKGwuZGF0YVNvdXJjZSBhcyBUaW1lRmlsdGVyYWJsZURhdGFTb3VyY2UpLnNldFRpbWVGaWx0ZXIobmV3VmFsdWUsIGZhbHNlKTtcbiAgICAgICAgICAgICAgY29uc3QgYXBwbGllZFRpbWVGaWx0ZXIgPSAoaW5pdGlhdG9ySWdvTGF5ZXIub2wuZ2V0U291cmNlKCkgYXMgb2xTb3VyY2VJbWFnZVdNUykuZ2V0UGFyYW1zKCkuVElNRTtcbiAgICAgICAgICAgICAgbC5kYXRhU291cmNlLm9sLnVwZGF0ZVBhcmFtcyh7IFRJTUU6IGFwcGxpZWRUaW1lRmlsdGVyIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICBpZiAocmVzb2x1dGlvblByb3BlcnR5SGFzQ2hhbmdlZCkge1xuICAgICAgICBtYXAudmlld0NvbnRyb2xsZXIucmVzb2x1dGlvbiQubmV4dChtYXAudmlld0NvbnRyb2xsZXIucmVzb2x1dGlvbiQudmFsdWUpO1xuICAgICAgfVxuXG5cbiAgICB9XG4gIH1cbiJdfQ==
|