@igo2/geo 1.14.1 → 1.14.3
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/esm2020/igo2-geo.mjs +4 -4
- package/esm2020/lib/catalog/catalog-browser/catalog-browser-group.component.mjs +301 -299
- package/esm2020/lib/catalog/catalog-browser/catalog-browser-layer.component.mjs +306 -268
- package/esm2020/lib/catalog/catalog-browser/catalog-browser.component.mjs +247 -247
- 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 +4 -4
- package/esm2020/lib/datasource/datasource.module.mjs +21 -21
- package/esm2020/lib/datasource/index.mjs +2 -2
- package/esm2020/lib/datasource/shared/capabilities.service.mjs +430 -430
- 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 +35 -35
- 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 +1 -1
- package/esm2020/lib/directions/directions-inputs/directions-inputs.component.mjs +289 -289
- package/esm2020/lib/directions/directions-inputs/index.mjs +1 -1
- package/esm2020/lib/directions/directions-results/directions-results.component.mjs +195 -195
- package/esm2020/lib/directions/directions-results/index.mjs +1 -1
- 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 +4 -4
- package/esm2020/lib/directions/directions-sources/osrm-directions-source.mjs +98 -98
- package/esm2020/lib/directions/directions.component.mjs +310 -310
- package/esm2020/lib/directions/directions.module.mjs +101 -101
- package/esm2020/lib/directions/index.mjs +6 -6
- package/esm2020/lib/directions/shared/directions-source.service.mjs +16 -16
- package/esm2020/lib/directions/shared/directions.enum.mjs +27 -27
- 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 +5 -5
- 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 +1 -1
- package/esm2020/lib/download/download.module.mjs +41 -41
- package/esm2020/lib/download/index.mjs +2 -2
- package/esm2020/lib/download/shared/download.interface.mjs +1 -1
- package/esm2020/lib/download/shared/download.service.mjs +64 -64
- package/esm2020/lib/download/shared/index.mjs +2 -2
- 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 +2 -2
- 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 +8 -8
- 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 +3 -3
- 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 +4 -4
- package/esm2020/lib/import-export/export-button/export-button.component.mjs +63 -63
- package/esm2020/lib/import-export/export-button/index.mjs +1 -1
- package/esm2020/lib/import-export/import-export/import-export.component.mjs +1219 -1219
- package/esm2020/lib/import-export/import-export/index.mjs +1 -1
- 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 +14 -14
- package/esm2020/lib/import-export/shared/export.interface.mjs +1 -1
- package/esm2020/lib/import-export/shared/export.service.mjs +195 -195
- 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 +10 -10
- 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 +12 -12
- package/esm2020/lib/layer/shared/layers/layer.interface.mjs +17 -17
- 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 +141 -133
- 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 +406 -406
- package/esm2020/lib/map/shared/map.service.mjs +28 -28
- package/esm2020/lib/map/shared/map.utils.mjs +463 -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 +3 -3
- 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 +1 -1
- package/esm2020/lib/metadata/metadata-button/metadata-button.component.mjs +133 -133
- package/esm2020/lib/metadata/metadata.module.mjs +54 -54
- package/esm2020/lib/metadata/shared/index.mjs +2 -2
- package/esm2020/lib/metadata/shared/metadata.interface.mjs +1 -1
- package/esm2020/lib/metadata/shared/metadata.service.mjs +18 -18
- 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 +4 -4
- 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 +1 -1
- package/esm2020/lib/overlay/index.mjs +1 -1
- 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 +3 -3
- package/esm2020/lib/print/print/print.component.mjs +126 -123
- package/esm2020/lib/print/print-form/index.mjs +1 -1
- package/esm2020/lib/print/print-form/print-form.component.mjs +428 -405
- 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 +4 -4
- package/esm2020/lib/print/shared/print.interface.mjs +1 -1
- package/esm2020/lib/print/shared/print.service.mjs +934 -861
- package/esm2020/lib/print/shared/print.type.mjs +29 -29
- package/esm2020/lib/query/index.mjs +1 -1
- package/esm2020/lib/query/query.module.mjs +28 -28
- package/esm2020/lib/query/shared/index.mjs +6 -6
- 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 +29 -29
- package/esm2020/lib/query/shared/query.interfaces.mjs +2 -2
- package/esm2020/lib/query/shared/query.service.mjs +733 -619
- 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 +512 -493
- 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 +118 -0
- package/esm2020/lib/search/search-results/search-results-add-button.component.mjs +371 -193
- package/esm2020/lib/search/search-results/search-results-item.component.mjs +124 -124
- package/esm2020/lib/search/search-results/search-results.component.mjs +340 -340
- package/esm2020/lib/search/search-results/search-results.module.mjs +104 -77
- 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 +442 -418
- 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 +8 -8
- 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 +121 -118
- 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 -147
- 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 +1 -1
- package/esm2020/lib/search/shared/sources/nominatim.mjs +251 -251
- 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 +179 -179
- package/esm2020/lib/search/shared/sources/storedqueries.interfaces.mjs +1 -1
- package/esm2020/lib/search/shared/sources/storedqueries.mjs +424 -424
- package/esm2020/lib/search/shared/sources/storedqueries.providers.mjs +40 -40
- package/esm2020/lib/toast/index.mjs +1 -1
- 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 +1 -1
- package/esm2020/lib/wkt/shared/index.mjs +1 -1
- 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 +7 -7
- 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 +7 -7
- 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 +3 -3
- 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 +14 -14
- 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 +44993 -44364
- package/fesm2015/igo2-geo.mjs.map +1 -1
- package/fesm2020/igo2-geo.mjs +43075 -42470
- 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 -124
- package/lib/catalog/catalog-browser/catalog-browser-layer.component.d.ts +80 -73
- 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 -107
- 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 -26
- 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 -89
- 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 -159
- 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 -28
- package/lib/query/shared/query.service.d.ts +56 -54
- 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 -220
- 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 -0
- package/lib/search/search-results/search-results-add-button.component.d.ts +76 -58
- package/lib/search/search-results/search-results-item.component.d.ts +47 -48
- package/lib/search/search-results/search-results.component.d.ts +161 -161
- package/lib/search/search-results/search-results.module.d.ts +28 -21
- 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 -96
- 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 -51
- 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,290 +1,290 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
-
import { moveItemInArray } from '@angular/cdk/drag-drop';
|
|
3
|
-
import * as olProj from 'ol/proj';
|
|
4
|
-
import * as olObservable from 'ol/Observable';
|
|
5
|
-
import pointOnFeature from '@turf/point-on-feature';
|
|
6
|
-
import { computeRelativePosition, removeStopFromStore, updateStoreSorting } from '../shared/directions.utils';
|
|
7
|
-
import { roundCoordTo } from '../../map/shared/map.utils';
|
|
8
|
-
import { DirectionRelativePositionType } from '../shared/directions.enum';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1 from "@igo2/core";
|
|
11
|
-
import * as i2 from "@angular/common";
|
|
12
|
-
import * as i3 from "@angular/cdk/drag-drop";
|
|
13
|
-
import * as i4 from "@angular/forms";
|
|
14
|
-
import * as i5 from "@angular/material/icon";
|
|
15
|
-
import * as i6 from "@angular/material/button";
|
|
16
|
-
import * as i7 from "@angular/material/form-field";
|
|
17
|
-
import * as i8 from "@angular/material/input";
|
|
18
|
-
import * as i9 from "@angular/material/core";
|
|
19
|
-
import * as i10 from "@angular/material/tooltip";
|
|
20
|
-
import * as i11 from "@angular/material/autocomplete";
|
|
21
|
-
import * as i12 from "@ngx-translate/core";
|
|
22
|
-
function DirectionsInputsComponent_div_1_button_4_Template(rf, ctx) { if (rf & 1) {
|
|
23
|
-
const _r9 = i0.ɵɵgetCurrentView();
|
|
24
|
-
i0.ɵɵelementStart(0, "button", 10);
|
|
25
|
-
i0.ɵɵlistener("click", function DirectionsInputsComponent_div_1_button_4_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r9); const stop_r1 = i0.ɵɵnextContext().$implicit; const ctx_r7 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r7.clearStop(stop_r1)); });
|
|
26
|
-
i0.ɵɵpipe(1, "translate");
|
|
27
|
-
i0.ɵɵelement(2, "mat-icon", 11);
|
|
28
|
-
i0.ɵɵelementEnd();
|
|
29
|
-
} if (rf & 2) {
|
|
30
|
-
i0.ɵɵproperty("matTooltip", i0.ɵɵpipeBind1(1, 1, "igo.geo.directionsForm.clearStop"));
|
|
31
|
-
} }
|
|
32
|
-
function DirectionsInputsComponent_div_1_mat_optgroup_7_mat_option_1_Template(rf, ctx) { if (rf & 1) {
|
|
33
|
-
i0.ɵɵelementStart(0, "mat-option", 14);
|
|
34
|
-
i0.ɵɵtext(1);
|
|
35
|
-
i0.ɵɵelementEnd();
|
|
36
|
-
} if (rf & 2) {
|
|
37
|
-
const result_r12 = ctx.$implicit;
|
|
38
|
-
i0.ɵɵproperty("value", result_r12)("matTooltip", result_r12.meta ? result_r12.meta.title : "");
|
|
39
|
-
i0.ɵɵadvance(1);
|
|
40
|
-
i0.ɵɵtextInterpolate1(" ", result_r12.meta ? result_r12.meta.title : "", " ");
|
|
41
|
-
} }
|
|
42
|
-
function DirectionsInputsComponent_div_1_mat_optgroup_7_Template(rf, ctx) { if (rf & 1) {
|
|
43
|
-
i0.ɵɵelementStart(0, "mat-optgroup", 12);
|
|
44
|
-
i0.ɵɵtemplate(1, DirectionsInputsComponent_div_1_mat_optgroup_7_mat_option_1_Template, 2, 3, "mat-option", 13);
|
|
45
|
-
i0.ɵɵelementEnd();
|
|
46
|
-
} if (rf & 2) {
|
|
47
|
-
const source_r10 = ctx.$implicit;
|
|
48
|
-
i0.ɵɵproperty("label", source_r10.source.title)("disabled", source_r10.source.enabled === false);
|
|
49
|
-
i0.ɵɵadvance(1);
|
|
50
|
-
i0.ɵɵproperty("ngForOf", source_r10.results);
|
|
51
|
-
} }
|
|
52
|
-
function DirectionsInputsComponent_div_1_div_8_button_4_Template(rf, ctx) { if (rf & 1) {
|
|
53
|
-
const _r17 = i0.ɵɵgetCurrentView();
|
|
54
|
-
i0.ɵɵelementStart(0, "button", 20);
|
|
55
|
-
i0.ɵɵlistener("click", function DirectionsInputsComponent_div_1_div_8_button_4_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r17); const stop_r1 = i0.ɵɵnextContext(2).$implicit; const ctx_r15 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r15.removeStop(stop_r1)); });
|
|
56
|
-
i0.ɵɵpipe(1, "translate");
|
|
57
|
-
i0.ɵɵelement(2, "mat-icon", 21);
|
|
58
|
-
i0.ɵɵelementEnd();
|
|
59
|
-
} if (rf & 2) {
|
|
60
|
-
i0.ɵɵproperty("matTooltip", i0.ɵɵpipeBind1(1, 1, "igo.geo.directionsForm.removeStop"));
|
|
61
|
-
} }
|
|
62
|
-
function DirectionsInputsComponent_div_1_div_8_button_6_Template(rf, ctx) { if (rf & 1) {
|
|
63
|
-
i0.ɵɵelementStart(0, "button", 22);
|
|
64
|
-
i0.ɵɵpipe(1, "translate");
|
|
65
|
-
i0.ɵɵelement(2, "mat-icon", 23);
|
|
66
|
-
i0.ɵɵelementEnd();
|
|
67
|
-
} if (rf & 2) {
|
|
68
|
-
i0.ɵɵproperty("matTooltip", i0.ɵɵpipeBind1(1, 1, "igo.geo.directionsForm.removeStop"));
|
|
69
|
-
} }
|
|
70
|
-
function DirectionsInputsComponent_div_1_div_8_Template(rf, ctx) { if (rf & 1) {
|
|
71
|
-
i0.ɵɵelementStart(0, "div", 15)(1, "button", 16);
|
|
72
|
-
i0.ɵɵpipe(2, "translate");
|
|
73
|
-
i0.ɵɵelement(3, "mat-icon", 17);
|
|
74
|
-
i0.ɵɵelementEnd();
|
|
75
|
-
i0.ɵɵtemplate(4, DirectionsInputsComponent_div_1_div_8_button_4_Template, 3, 3, "button", 18);
|
|
76
|
-
i0.ɵɵpipe(5, "async");
|
|
77
|
-
i0.ɵɵtemplate(6, DirectionsInputsComponent_div_1_div_8_button_6_Template, 3, 3, "button", 19);
|
|
78
|
-
i0.ɵɵpipe(7, "async");
|
|
79
|
-
i0.ɵɵelementEnd();
|
|
80
|
-
} if (rf & 2) {
|
|
81
|
-
const ctx_r6 = i0.ɵɵnextContext(2);
|
|
82
|
-
i0.ɵɵadvance(1);
|
|
83
|
-
i0.ɵɵproperty("matTooltip", i0.ɵɵpipeBind1(2, 3, "igo.geo.directionsForm.moveStop"));
|
|
84
|
-
i0.ɵɵadvance(3);
|
|
85
|
-
i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(5, 5, ctx_r6.stopsStore.count$) > 2);
|
|
86
|
-
i0.ɵɵadvance(2);
|
|
87
|
-
i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(7, 7, ctx_r6.stopsStore.count$) <= 2);
|
|
88
|
-
} }
|
|
89
|
-
function DirectionsInputsComponent_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
90
|
-
const _r19 = i0.ɵɵgetCurrentView();
|
|
91
|
-
i0.ɵɵelementStart(0, "div", 2);
|
|
92
|
-
i0.ɵɵlistener("touchenter", function DirectionsInputsComponent_div_1_Template_div_touchenter_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r19); const stop_r1 = restoredCtx.$implicit; const ctx_r18 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r18.onStopEnter(stop_r1)); })("touchleave", function DirectionsInputsComponent_div_1_Template_div_touchleave_0_listener() { i0.ɵɵrestoreView(_r19); const ctx_r20 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r20.onStopLeave()); })("mouseover", function DirectionsInputsComponent_div_1_Template_div_mouseover_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r19); const stop_r1 = restoredCtx.$implicit; const ctx_r21 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r21.onStopEnter(stop_r1)); })("mouseleave", function DirectionsInputsComponent_div_1_Template_div_mouseleave_0_listener() { i0.ɵɵrestoreView(_r19); const ctx_r22 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r22.onStopLeave()); })("cdkDragStarted", function DirectionsInputsComponent_div_1_Template_div_cdkDragStarted_0_listener() { i0.ɵɵrestoreView(_r19); const ctx_r23 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r23.stopIsDragged = true); })("cdkDragEnded", function DirectionsInputsComponent_div_1_Template_div_cdkDragEnded_0_listener() { i0.ɵɵrestoreView(_r19); const ctx_r24 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r24.stopIsDragged = false); });
|
|
93
|
-
i0.ɵɵelementStart(1, "div", 3)(2, "mat-form-field")(3, "input", 4);
|
|
94
|
-
i0.ɵɵlistener("focus", function DirectionsInputsComponent_div_1_Template_input_focus_3_listener() { const restoredCtx = i0.ɵɵrestoreView(_r19); const stop_r1 = restoredCtx.$implicit; const ctx_r25 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r25.onInputFocus(stop_r1)); })("ngModelChange", function DirectionsInputsComponent_div_1_Template_input_ngModelChange_3_listener($event) { const restoredCtx = i0.ɵɵrestoreView(_r19); const stop_r1 = restoredCtx.$implicit; return i0.ɵɵresetView(stop_r1.text = $event); })("keyup", function DirectionsInputsComponent_div_1_Template_input_keyup_3_listener($event) { const restoredCtx = i0.ɵɵrestoreView(_r19); const stop_r1 = restoredCtx.$implicit; const ctx_r27 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r27.setStopText($event, stop_r1)); })("keydown.enter", function DirectionsInputsComponent_div_1_Template_input_keydown_enter_3_listener($event) { return $event.preventDefault(); });
|
|
95
|
-
i0.ɵɵelementEnd();
|
|
96
|
-
i0.ɵɵtemplate(4, DirectionsInputsComponent_div_1_button_4_Template, 3, 3, "button", 5);
|
|
97
|
-
i0.ɵɵelementStart(5, "mat-autocomplete", 6, 7);
|
|
98
|
-
i0.ɵɵlistener("optionSelected", function DirectionsInputsComponent_div_1_Template_mat_autocomplete_optionSelected_5_listener($event) { const restoredCtx = i0.ɵɵrestoreView(_r19); const stop_r1 = restoredCtx.$implicit; const ctx_r29 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r29.chooseProposal($event, stop_r1)); });
|
|
99
|
-
i0.ɵɵtemplate(7, DirectionsInputsComponent_div_1_mat_optgroup_7_Template, 2, 3, "mat-optgroup", 8);
|
|
100
|
-
i0.ɵɵelementEnd()()();
|
|
101
|
-
i0.ɵɵtemplate(8, DirectionsInputsComponent_div_1_div_8_Template, 8, 9, "div", 9);
|
|
102
|
-
i0.ɵɵelementEnd();
|
|
103
|
-
} if (rf & 2) {
|
|
104
|
-
const stop_r1 = ctx.$implicit;
|
|
105
|
-
const _r4 = i0.ɵɵreference(6);
|
|
106
|
-
const ctx_r0 = i0.ɵɵnextContext();
|
|
107
|
-
i0.ɵɵadvance(1);
|
|
108
|
-
i0.ɵɵproperty("ngClass", ctx_r0.getNgClass(stop_r1));
|
|
109
|
-
i0.ɵɵadvance(2);
|
|
110
|
-
i0.ɵɵpropertyInterpolate("id", stop_r1.id);
|
|
111
|
-
i0.ɵɵproperty("placeholder", ctx_r0.getPlaceholder(stop_r1))("matTooltip", stop_r1.text)("ngModel", stop_r1.text)("matAutocomplete", _r4);
|
|
112
|
-
i0.ɵɵadvance(1);
|
|
113
|
-
i0.ɵɵproperty("ngIf", (stop_r1.text || stop_r1.coordinates) && ctx_r0.stopWithHover && stop_r1.id === ctx_r0.stopWithHover.id);
|
|
114
|
-
i0.ɵɵadvance(1);
|
|
115
|
-
i0.ɵɵproperty("displayWith", ctx_r0.getOptionText);
|
|
116
|
-
i0.ɵɵadvance(2);
|
|
117
|
-
i0.ɵɵproperty("ngForOf", stop_r1.searchProposals);
|
|
118
|
-
i0.ɵɵadvance(1);
|
|
119
|
-
i0.ɵɵproperty("ngIf", !ctx_r0.stopIsDragged && ctx_r0.stopWithHover && stop_r1.id === ctx_r0.stopWithHover.id);
|
|
120
|
-
} }
|
|
121
|
-
export class DirectionsInputsComponent {
|
|
122
|
-
constructor(languageService) {
|
|
123
|
-
this.languageService = languageService;
|
|
124
|
-
this.invalidKeys = ['Control', 'Shift', 'Alt'];
|
|
125
|
-
this.onMapClickEventKeys = [];
|
|
126
|
-
this.stopIsDragged = false;
|
|
127
|
-
this.coordRoundedDecimals = 6;
|
|
128
|
-
this.debounce = 200;
|
|
129
|
-
this.length = 2;
|
|
130
|
-
this.stopInputHasFocus = new EventEmitter(false);
|
|
131
|
-
}
|
|
132
|
-
ngOnDestroy() {
|
|
133
|
-
this.unlistenMapSingleClick();
|
|
134
|
-
}
|
|
135
|
-
onStopEnter(stop) {
|
|
136
|
-
this.stopWithHover = stop;
|
|
137
|
-
}
|
|
138
|
-
onStopLeave() {
|
|
139
|
-
this.stopWithHover = undefined;
|
|
140
|
-
}
|
|
141
|
-
getOptionText(option) {
|
|
142
|
-
if (option instanceof Object) {
|
|
143
|
-
return option?.meta ? option.meta.title : '';
|
|
144
|
-
}
|
|
145
|
-
return option;
|
|
146
|
-
}
|
|
147
|
-
chooseProposal(event, stop) {
|
|
148
|
-
const result = event.option.value;
|
|
149
|
-
if (result) {
|
|
150
|
-
let geomCoord;
|
|
151
|
-
const geom = result.geometry;
|
|
152
|
-
if (geom.type === 'Point') {
|
|
153
|
-
geomCoord = geom.coordinates;
|
|
154
|
-
}
|
|
155
|
-
else {
|
|
156
|
-
const point = pointOnFeature(result.geometry);
|
|
157
|
-
geomCoord = [
|
|
158
|
-
point.geometry.coordinates[0],
|
|
159
|
-
point.geometry.coordinates[1]
|
|
160
|
-
];
|
|
161
|
-
}
|
|
162
|
-
if (geomCoord) {
|
|
163
|
-
stop.coordinates = geomCoord;
|
|
164
|
-
stop.text = result.meta.title;
|
|
165
|
-
this.stopsStore.update(stop);
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
setStopText(event, stop) {
|
|
170
|
-
this.unlistenMapSingleClick();
|
|
171
|
-
const term = event.target.value;
|
|
172
|
-
if (term.length === 0) {
|
|
173
|
-
this.clearStop(stop);
|
|
174
|
-
}
|
|
175
|
-
else if (this.validateTerm(term)) {
|
|
176
|
-
stop.text = term;
|
|
177
|
-
this.stopsStore.update(stop);
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
validateTerm(term) {
|
|
181
|
-
if (this.keyIsValid(term) &&
|
|
182
|
-
(term.length >= this.length || term.length === 0)) {
|
|
183
|
-
return true;
|
|
184
|
-
}
|
|
185
|
-
return false;
|
|
186
|
-
}
|
|
187
|
-
keyIsValid(key) {
|
|
188
|
-
return this.invalidKeys.find(value => value === key) === undefined;
|
|
189
|
-
}
|
|
190
|
-
getNgClass(stop) {
|
|
191
|
-
if (!this.stopWithHover) {
|
|
192
|
-
return 'igo-input-container';
|
|
193
|
-
}
|
|
194
|
-
else if (stop.id === this.stopWithHover.id) {
|
|
195
|
-
return 'igo-input-container reduce';
|
|
196
|
-
}
|
|
197
|
-
else {
|
|
198
|
-
return 'igo-input-container';
|
|
199
|
-
}
|
|
200
|
-
}
|
|
201
|
-
getPlaceholder(stop) {
|
|
202
|
-
let extra = '';
|
|
203
|
-
if (stop.relativePosition) {
|
|
204
|
-
if (stop.relativePosition === DirectionRelativePositionType.Intermediate) {
|
|
205
|
-
extra = ' #' + stop.position;
|
|
206
|
-
}
|
|
207
|
-
return this.languageService.translate.instant('igo.geo.directionsForm.' + stop.relativePosition) + extra;
|
|
208
|
-
}
|
|
209
|
-
else {
|
|
210
|
-
return '';
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
removeStop(stop) {
|
|
214
|
-
removeStopFromStore(this.stopsStore, stop);
|
|
215
|
-
}
|
|
216
|
-
clearStop(stop) {
|
|
217
|
-
this.stopsStore.update({ id: stop.id, relativePosition: stop.relativePosition, position: stop.position });
|
|
218
|
-
}
|
|
219
|
-
drop(event) {
|
|
220
|
-
this.moveStops(event.previousIndex, event.currentIndex);
|
|
221
|
-
}
|
|
222
|
-
moveStops(fromIndex, toIndex) {
|
|
223
|
-
if (fromIndex !== toIndex) {
|
|
224
|
-
const stops = [...this.stopsStore.view.all()];
|
|
225
|
-
moveItemInArray(stops, fromIndex, toIndex);
|
|
226
|
-
stops.map((stop, i) => {
|
|
227
|
-
stop.relativePosition = computeRelativePosition(i, stops.length);
|
|
228
|
-
stop.position = i;
|
|
229
|
-
});
|
|
230
|
-
this.stopsStore.updateMany(stops);
|
|
231
|
-
updateStoreSorting(this.stopsStore);
|
|
232
|
-
}
|
|
233
|
-
}
|
|
234
|
-
onInputFocus(stop) {
|
|
235
|
-
if (!stop.text || stop.text?.length === 0) {
|
|
236
|
-
this.unlistenMapSingleClick();
|
|
237
|
-
this.stopInputHasFocus.emit(true);
|
|
238
|
-
this.listenMapSingleClick(stop);
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
|
-
listenMapSingleClick(stop) {
|
|
242
|
-
const key = this.stopsFeatureStore.layer.map.ol.once('singleclick', event => {
|
|
243
|
-
const clickCoordinates = olProj.transform(event.coordinate, this.stopsFeatureStore.layer.map.projection, this.projection);
|
|
244
|
-
const roundedCoord = roundCoordTo(clickCoordinates, this.coordRoundedDecimals);
|
|
245
|
-
stop.text = roundedCoord.join(',');
|
|
246
|
-
stop.coordinates = roundedCoord;
|
|
247
|
-
this.stopsStore.update(stop);
|
|
248
|
-
setTimeout(() => {
|
|
249
|
-
this.stopInputHasFocus.emit(false);
|
|
250
|
-
}, 500);
|
|
251
|
-
});
|
|
252
|
-
this.onMapClickEventKeys.push(key);
|
|
253
|
-
}
|
|
254
|
-
unlistenMapSingleClick() {
|
|
255
|
-
this.onMapClickEventKeys.map(key => {
|
|
256
|
-
olObservable.unByKey(key);
|
|
257
|
-
});
|
|
258
|
-
this.onMapClickEventKeys = [];
|
|
259
|
-
}
|
|
260
|
-
}
|
|
261
|
-
DirectionsInputsComponent.ɵfac = function DirectionsInputsComponent_Factory(t) { return new (t || DirectionsInputsComponent)(i0.ɵɵdirectiveInject(i1.LanguageService)); };
|
|
262
|
-
DirectionsInputsComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: DirectionsInputsComponent, selectors: [["igo-directions-inputs"]], inputs: { stopsStore: "stopsStore", stopsFeatureStore: "stopsFeatureStore", projection: "projection", coordRoundedDecimals: "coordRoundedDecimals", debounce: "debounce", length: "length" }, outputs: { stopInputHasFocus: "stopInputHasFocus" }, decls: 3, vars: 3, consts: [["cdkDropList", "", 1, "stops-list", 3, "cdkDropListDropped"], ["touchleave", "", "cdkDragLockAxis", "y", "class", "stop-box mat-typography", "cdkDrag", "", 3, "touchenter", "touchleave", "mouseover", "mouseleave", "cdkDragStarted", "cdkDragEnded", 4, "ngFor", "ngForOf"], ["touchleave", "", "cdkDragLockAxis", "y", "cdkDrag", "", 1, "stop-box", "mat-typography", 3, "touchenter", "touchleave", "mouseover", "mouseleave", "cdkDragStarted", "cdkDragEnded"], [3, "ngClass"], ["type", "text", "matTooltipShowDelay", "500", "aria-label", "Number", "matInput", "", 3, "id", "placeholder", "matTooltip", "ngModel", "matAutocomplete", "focus", "ngModelChange", "keyup", "keydown.enter"], ["mat-button", "", "matTooltipShowDelay", "500", "matSuffix", "", "mat-icon-button", "", "color", "warn", "aria-label", "Clear", 3, "matTooltip", "click", 4, "ngIf"], [3, "displayWith", "optionSelected"], ["auto", "matAutocomplete"], [3, "label", "disabled", 4, "ngFor", "ngForOf"], ["class", "igo-form-button-group", 4, "ngIf"], ["mat-button", "", "matTooltipShowDelay", "500", "matSuffix", "", "mat-icon-button", "", "color", "warn", "aria-label", "Clear", 3, "matTooltip", "click"], ["svgIcon", "close"], [3, "label", "disabled"], ["matTooltipShowDelay", "500", 3, "value", "matTooltip", 4, "ngFor", "ngForOf"], ["matTooltipShowDelay", "500", 3, "value", "matTooltip"], [1, "igo-form-button-group"], ["cdkDragHandle", "", "mat-icon-button", "", "tooltip-position", "below", "matTooltipShowDelay", "500", "color", "primary", 1, "swipe-vertical", 3, "matTooltip"], ["svgIcon", "gesture-swipe-vertical"], ["mat-icon-button", "", "tooltip-position", "below", "matTooltipShowDelay", "500", "color", "warn", 3, "matTooltip", "click", 4, "ngIf"], ["disabled", "true", "mat-icon-button", "", "tooltip-position", "below", "matTooltipShowDelay", "500", "color", "warn", 3, "matTooltip", 4, "ngIf"], ["mat-icon-button", "", "tooltip-position", "below", "matTooltipShowDelay", "500", "color", "warn", 3, "matTooltip", "click"], ["svgIcon", "delete"], ["disabled", "true", "mat-icon-button", "", "tooltip-position", "below", "matTooltipShowDelay", "500", "color", "warn", 3, "matTooltip"], ["svgIcon", "blank"]], template: function DirectionsInputsComponent_Template(rf, ctx) { if (rf & 1) {
|
|
263
|
-
i0.ɵɵelementStart(0, "div", 0);
|
|
264
|
-
i0.ɵɵlistener("cdkDropListDropped", function DirectionsInputsComponent_Template_div_cdkDropListDropped_0_listener($event) { return ctx.drop($event); });
|
|
265
|
-
i0.ɵɵtemplate(1, DirectionsInputsComponent_div_1_Template, 9, 10, "div", 1);
|
|
266
|
-
i0.ɵɵpipe(2, "async");
|
|
267
|
-
i0.ɵɵelementEnd();
|
|
268
|
-
} if (rf & 2) {
|
|
269
|
-
i0.ɵɵadvance(1);
|
|
270
|
-
i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(2, 1, ctx.stopsStore.view.all$()));
|
|
271
|
-
} }, dependencies: [i2.NgClass, i2.NgForOf, i2.NgIf, i3.CdkDropList, i3.CdkDrag, i3.CdkDragHandle, i4.DefaultValueAccessor, i4.NgControlStatus, i4.NgModel, i5.MatIcon, i6.MatButton, i7.MatFormField, i7.MatSuffix, i8.MatInput, i9.MatOption, i9.MatOptgroup, i10.MatTooltip, i11.MatAutocomplete, i11.MatAutocompleteTrigger, i2.AsyncPipe, i12.TranslatePipe], styles: [".igo-input-container[_ngcontent-%COMP%]{width:100%}.igo-input-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%}.igo-input-container.reduce[_ngcontent-%COMP%]{width:70%}.igo-input-container.reduce[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%}.stops-list[_ngcontent-%COMP%]{max-width:100%;min-height:60px;display:block;background:white;border-radius:4px;overflow:hidden;padding:20px 10px}.swipe-vertical[_ngcontent-%COMP%]{cursor:move}.stop-box[_ngcontent-%COMP%]{height:60px;padding:20px 10px;color:#000000de;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;background:white}.cdk-drag-preview[_ngcontent-%COMP%]{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder[_ngcontent-%COMP%]{opacity:0}.cdk-drag-animating[_ngcontent-%COMP%]{transition:transform .25s cubic-bezier(0,0,.2,1)}.stops-list.cdk-drop-list-dragging[_ngcontent-%COMP%] .stop-box[_ngcontent-%COMP%]:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}"] });
|
|
272
|
-
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DirectionsInputsComponent, [{
|
|
273
|
-
type: Component,
|
|
274
|
-
args: [{ selector: 'igo-directions-inputs', template: "<div cdkDropList class=\"stops-list\" (cdkDropListDropped)=\"drop($event)\">\n <div touchleave \n (touchenter)=\"onStopEnter(stop)\"\n (touchleave)=\"onStopLeave()\"\n (mouseover)=\"onStopEnter(stop)\"\n (mouseleave)=\"onStopLeave()\"\n (cdkDragStarted)=\"stopIsDragged=true\"\n (cdkDragEnded)=\"stopIsDragged=false\"\n cdkDragLockAxis=\"y\" class=\"stop-box mat-typography\" *ngFor=\"let stop of stopsStore.view.all$() | async; let i = index;\" cdkDrag>\n <div [ngClass]=\"getNgClass(stop)\">\n <mat-form-field>\n <input id=\"{{stop.id}}\" type=\"text\"\n [placeholder]=\"getPlaceholder(stop)\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"stop.text\"\n aria-label=\"Number\"\n matInput\n (focus)=\"onInputFocus(stop)\"\n [(ngModel)]=\"stop.text\"\n (keyup)=\"setStopText($event,stop)\"\n (keydown.enter)=\"$event.preventDefault()\"\n [matAutocomplete]=\"auto\">\n <button \n mat-button \n *ngIf=\"(stop.text || stop.coordinates) && stopWithHover && stop.id===stopWithHover.id\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.directionsForm.clearStop' | translate\"\n matSuffix mat-icon-button color=\"warn\" aria-label=\"Clear\" (click)=\"clearStop(stop)\">\n <mat-icon svgIcon=\"close\"></mat-icon>\n </button>\n \n <mat-autocomplete [displayWith]=\"getOptionText\" #auto=\"matAutocomplete\" (optionSelected)=\"chooseProposal($event,stop)\">\n <mat-optgroup *ngFor=\"let source of stop.searchProposals\" [label]=\"source.source.title\" [disabled]=\"source.source.enabled === false\">\n <mat-option *ngFor=\"let result of source.results\" [value]=\"result\" \n matTooltipShowDelay=\"500\" [matTooltip]=\"result.meta ? result.meta.title : ''\">\n {{ result.meta ? result.meta.title : '' }}\n </mat-option>\n </mat-optgroup>\n </mat-autocomplete>\n </mat-form-field>\n </div>\n\n\n\n\n <div class=\"igo-form-button-group\" *ngIf=\"!stopIsDragged && stopWithHover && stop.id === stopWithHover.id\">\n <button class=\"swipe-vertical\" cdkDragHandle mat-icon-button tooltip-position=\"below\" matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.directionsForm.moveStop' | translate\" color=\"primary\">\n <mat-icon svgIcon=\"gesture-swipe-vertical\"></mat-icon>\n </button>\n\n <button *ngIf=\"(stopsStore.count$ | async)> 2\" mat-icon-button tooltip-position=\"below\" matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.directionsForm.removeStop' | translate\" color=\"warn\" (click)=\"removeStop(stop)\">\n <mat-icon svgIcon=\"delete\"></mat-icon>\n </button>\n <button *ngIf=\"(stopsStore.count$ | async)<= 2\" disabled=\"true\" mat-icon-button tooltip-position=\"below\"\n matTooltipShowDelay=\"500\" [matTooltip]=\"'igo.geo.directionsForm.removeStop' | translate\" color=\"warn\">\n <mat-icon svgIcon=\"blank\"></mat-icon>\n </button>\n </div>\n </div>\n</div>", styles: [".igo-input-container{width:100%}.igo-input-container mat-form-field{width:100%}.igo-input-container.reduce{width:70%}.igo-input-container.reduce mat-form-field{width:100%}.stops-list{max-width:100%;min-height:60px;display:block;background:white;border-radius:4px;overflow:hidden;padding:20px 10px}.swipe-vertical{cursor:move}.stop-box{height:60px;padding:20px 10px;color:#000000de;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;background:white}.cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.stops-list.cdk-drop-list-dragging .stop-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"] }]
|
|
275
|
-
}], function () { return [{ type: i1.LanguageService }]; }, { stopsStore: [{
|
|
276
|
-
type: Input
|
|
277
|
-
}], stopsFeatureStore: [{
|
|
278
|
-
type: Input
|
|
279
|
-
}], projection: [{
|
|
280
|
-
type: Input
|
|
281
|
-
}], coordRoundedDecimals: [{
|
|
282
|
-
type: Input
|
|
283
|
-
}], debounce: [{
|
|
284
|
-
type: Input
|
|
285
|
-
}], length: [{
|
|
286
|
-
type: Input
|
|
287
|
-
}], stopInputHasFocus: [{
|
|
288
|
-
type: Output
|
|
289
|
-
}] }); })();
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { moveItemInArray } from '@angular/cdk/drag-drop';
|
|
3
|
+
import * as olProj from 'ol/proj';
|
|
4
|
+
import * as olObservable from 'ol/Observable';
|
|
5
|
+
import pointOnFeature from '@turf/point-on-feature';
|
|
6
|
+
import { computeRelativePosition, removeStopFromStore, updateStoreSorting } from '../shared/directions.utils';
|
|
7
|
+
import { roundCoordTo } from '../../map/shared/map.utils';
|
|
8
|
+
import { DirectionRelativePositionType } from '../shared/directions.enum';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "@igo2/core";
|
|
11
|
+
import * as i2 from "@angular/common";
|
|
12
|
+
import * as i3 from "@angular/cdk/drag-drop";
|
|
13
|
+
import * as i4 from "@angular/forms";
|
|
14
|
+
import * as i5 from "@angular/material/icon";
|
|
15
|
+
import * as i6 from "@angular/material/button";
|
|
16
|
+
import * as i7 from "@angular/material/form-field";
|
|
17
|
+
import * as i8 from "@angular/material/input";
|
|
18
|
+
import * as i9 from "@angular/material/core";
|
|
19
|
+
import * as i10 from "@angular/material/tooltip";
|
|
20
|
+
import * as i11 from "@angular/material/autocomplete";
|
|
21
|
+
import * as i12 from "@ngx-translate/core";
|
|
22
|
+
function DirectionsInputsComponent_div_1_button_4_Template(rf, ctx) { if (rf & 1) {
|
|
23
|
+
const _r9 = i0.ɵɵgetCurrentView();
|
|
24
|
+
i0.ɵɵelementStart(0, "button", 10);
|
|
25
|
+
i0.ɵɵlistener("click", function DirectionsInputsComponent_div_1_button_4_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r9); const stop_r1 = i0.ɵɵnextContext().$implicit; const ctx_r7 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r7.clearStop(stop_r1)); });
|
|
26
|
+
i0.ɵɵpipe(1, "translate");
|
|
27
|
+
i0.ɵɵelement(2, "mat-icon", 11);
|
|
28
|
+
i0.ɵɵelementEnd();
|
|
29
|
+
} if (rf & 2) {
|
|
30
|
+
i0.ɵɵproperty("matTooltip", i0.ɵɵpipeBind1(1, 1, "igo.geo.directionsForm.clearStop"));
|
|
31
|
+
} }
|
|
32
|
+
function DirectionsInputsComponent_div_1_mat_optgroup_7_mat_option_1_Template(rf, ctx) { if (rf & 1) {
|
|
33
|
+
i0.ɵɵelementStart(0, "mat-option", 14);
|
|
34
|
+
i0.ɵɵtext(1);
|
|
35
|
+
i0.ɵɵelementEnd();
|
|
36
|
+
} if (rf & 2) {
|
|
37
|
+
const result_r12 = ctx.$implicit;
|
|
38
|
+
i0.ɵɵproperty("value", result_r12)("matTooltip", result_r12.meta ? result_r12.meta.title : "");
|
|
39
|
+
i0.ɵɵadvance(1);
|
|
40
|
+
i0.ɵɵtextInterpolate1(" ", result_r12.meta ? result_r12.meta.title : "", " ");
|
|
41
|
+
} }
|
|
42
|
+
function DirectionsInputsComponent_div_1_mat_optgroup_7_Template(rf, ctx) { if (rf & 1) {
|
|
43
|
+
i0.ɵɵelementStart(0, "mat-optgroup", 12);
|
|
44
|
+
i0.ɵɵtemplate(1, DirectionsInputsComponent_div_1_mat_optgroup_7_mat_option_1_Template, 2, 3, "mat-option", 13);
|
|
45
|
+
i0.ɵɵelementEnd();
|
|
46
|
+
} if (rf & 2) {
|
|
47
|
+
const source_r10 = ctx.$implicit;
|
|
48
|
+
i0.ɵɵproperty("label", source_r10.source.title)("disabled", source_r10.source.enabled === false);
|
|
49
|
+
i0.ɵɵadvance(1);
|
|
50
|
+
i0.ɵɵproperty("ngForOf", source_r10.results);
|
|
51
|
+
} }
|
|
52
|
+
function DirectionsInputsComponent_div_1_div_8_button_4_Template(rf, ctx) { if (rf & 1) {
|
|
53
|
+
const _r17 = i0.ɵɵgetCurrentView();
|
|
54
|
+
i0.ɵɵelementStart(0, "button", 20);
|
|
55
|
+
i0.ɵɵlistener("click", function DirectionsInputsComponent_div_1_div_8_button_4_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r17); const stop_r1 = i0.ɵɵnextContext(2).$implicit; const ctx_r15 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r15.removeStop(stop_r1)); });
|
|
56
|
+
i0.ɵɵpipe(1, "translate");
|
|
57
|
+
i0.ɵɵelement(2, "mat-icon", 21);
|
|
58
|
+
i0.ɵɵelementEnd();
|
|
59
|
+
} if (rf & 2) {
|
|
60
|
+
i0.ɵɵproperty("matTooltip", i0.ɵɵpipeBind1(1, 1, "igo.geo.directionsForm.removeStop"));
|
|
61
|
+
} }
|
|
62
|
+
function DirectionsInputsComponent_div_1_div_8_button_6_Template(rf, ctx) { if (rf & 1) {
|
|
63
|
+
i0.ɵɵelementStart(0, "button", 22);
|
|
64
|
+
i0.ɵɵpipe(1, "translate");
|
|
65
|
+
i0.ɵɵelement(2, "mat-icon", 23);
|
|
66
|
+
i0.ɵɵelementEnd();
|
|
67
|
+
} if (rf & 2) {
|
|
68
|
+
i0.ɵɵproperty("matTooltip", i0.ɵɵpipeBind1(1, 1, "igo.geo.directionsForm.removeStop"));
|
|
69
|
+
} }
|
|
70
|
+
function DirectionsInputsComponent_div_1_div_8_Template(rf, ctx) { if (rf & 1) {
|
|
71
|
+
i0.ɵɵelementStart(0, "div", 15)(1, "button", 16);
|
|
72
|
+
i0.ɵɵpipe(2, "translate");
|
|
73
|
+
i0.ɵɵelement(3, "mat-icon", 17);
|
|
74
|
+
i0.ɵɵelementEnd();
|
|
75
|
+
i0.ɵɵtemplate(4, DirectionsInputsComponent_div_1_div_8_button_4_Template, 3, 3, "button", 18);
|
|
76
|
+
i0.ɵɵpipe(5, "async");
|
|
77
|
+
i0.ɵɵtemplate(6, DirectionsInputsComponent_div_1_div_8_button_6_Template, 3, 3, "button", 19);
|
|
78
|
+
i0.ɵɵpipe(7, "async");
|
|
79
|
+
i0.ɵɵelementEnd();
|
|
80
|
+
} if (rf & 2) {
|
|
81
|
+
const ctx_r6 = i0.ɵɵnextContext(2);
|
|
82
|
+
i0.ɵɵadvance(1);
|
|
83
|
+
i0.ɵɵproperty("matTooltip", i0.ɵɵpipeBind1(2, 3, "igo.geo.directionsForm.moveStop"));
|
|
84
|
+
i0.ɵɵadvance(3);
|
|
85
|
+
i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(5, 5, ctx_r6.stopsStore.count$) > 2);
|
|
86
|
+
i0.ɵɵadvance(2);
|
|
87
|
+
i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(7, 7, ctx_r6.stopsStore.count$) <= 2);
|
|
88
|
+
} }
|
|
89
|
+
function DirectionsInputsComponent_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
90
|
+
const _r19 = i0.ɵɵgetCurrentView();
|
|
91
|
+
i0.ɵɵelementStart(0, "div", 2);
|
|
92
|
+
i0.ɵɵlistener("touchenter", function DirectionsInputsComponent_div_1_Template_div_touchenter_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r19); const stop_r1 = restoredCtx.$implicit; const ctx_r18 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r18.onStopEnter(stop_r1)); })("touchleave", function DirectionsInputsComponent_div_1_Template_div_touchleave_0_listener() { i0.ɵɵrestoreView(_r19); const ctx_r20 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r20.onStopLeave()); })("mouseover", function DirectionsInputsComponent_div_1_Template_div_mouseover_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r19); const stop_r1 = restoredCtx.$implicit; const ctx_r21 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r21.onStopEnter(stop_r1)); })("mouseleave", function DirectionsInputsComponent_div_1_Template_div_mouseleave_0_listener() { i0.ɵɵrestoreView(_r19); const ctx_r22 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r22.onStopLeave()); })("cdkDragStarted", function DirectionsInputsComponent_div_1_Template_div_cdkDragStarted_0_listener() { i0.ɵɵrestoreView(_r19); const ctx_r23 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r23.stopIsDragged = true); })("cdkDragEnded", function DirectionsInputsComponent_div_1_Template_div_cdkDragEnded_0_listener() { i0.ɵɵrestoreView(_r19); const ctx_r24 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r24.stopIsDragged = false); });
|
|
93
|
+
i0.ɵɵelementStart(1, "div", 3)(2, "mat-form-field")(3, "input", 4);
|
|
94
|
+
i0.ɵɵlistener("focus", function DirectionsInputsComponent_div_1_Template_input_focus_3_listener() { const restoredCtx = i0.ɵɵrestoreView(_r19); const stop_r1 = restoredCtx.$implicit; const ctx_r25 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r25.onInputFocus(stop_r1)); })("ngModelChange", function DirectionsInputsComponent_div_1_Template_input_ngModelChange_3_listener($event) { const restoredCtx = i0.ɵɵrestoreView(_r19); const stop_r1 = restoredCtx.$implicit; return i0.ɵɵresetView(stop_r1.text = $event); })("keyup", function DirectionsInputsComponent_div_1_Template_input_keyup_3_listener($event) { const restoredCtx = i0.ɵɵrestoreView(_r19); const stop_r1 = restoredCtx.$implicit; const ctx_r27 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r27.setStopText($event, stop_r1)); })("keydown.enter", function DirectionsInputsComponent_div_1_Template_input_keydown_enter_3_listener($event) { return $event.preventDefault(); });
|
|
95
|
+
i0.ɵɵelementEnd();
|
|
96
|
+
i0.ɵɵtemplate(4, DirectionsInputsComponent_div_1_button_4_Template, 3, 3, "button", 5);
|
|
97
|
+
i0.ɵɵelementStart(5, "mat-autocomplete", 6, 7);
|
|
98
|
+
i0.ɵɵlistener("optionSelected", function DirectionsInputsComponent_div_1_Template_mat_autocomplete_optionSelected_5_listener($event) { const restoredCtx = i0.ɵɵrestoreView(_r19); const stop_r1 = restoredCtx.$implicit; const ctx_r29 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r29.chooseProposal($event, stop_r1)); });
|
|
99
|
+
i0.ɵɵtemplate(7, DirectionsInputsComponent_div_1_mat_optgroup_7_Template, 2, 3, "mat-optgroup", 8);
|
|
100
|
+
i0.ɵɵelementEnd()()();
|
|
101
|
+
i0.ɵɵtemplate(8, DirectionsInputsComponent_div_1_div_8_Template, 8, 9, "div", 9);
|
|
102
|
+
i0.ɵɵelementEnd();
|
|
103
|
+
} if (rf & 2) {
|
|
104
|
+
const stop_r1 = ctx.$implicit;
|
|
105
|
+
const _r4 = i0.ɵɵreference(6);
|
|
106
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
107
|
+
i0.ɵɵadvance(1);
|
|
108
|
+
i0.ɵɵproperty("ngClass", ctx_r0.getNgClass(stop_r1));
|
|
109
|
+
i0.ɵɵadvance(2);
|
|
110
|
+
i0.ɵɵpropertyInterpolate("id", stop_r1.id);
|
|
111
|
+
i0.ɵɵproperty("placeholder", ctx_r0.getPlaceholder(stop_r1))("matTooltip", stop_r1.text)("ngModel", stop_r1.text)("matAutocomplete", _r4);
|
|
112
|
+
i0.ɵɵadvance(1);
|
|
113
|
+
i0.ɵɵproperty("ngIf", (stop_r1.text || stop_r1.coordinates) && ctx_r0.stopWithHover && stop_r1.id === ctx_r0.stopWithHover.id);
|
|
114
|
+
i0.ɵɵadvance(1);
|
|
115
|
+
i0.ɵɵproperty("displayWith", ctx_r0.getOptionText);
|
|
116
|
+
i0.ɵɵadvance(2);
|
|
117
|
+
i0.ɵɵproperty("ngForOf", stop_r1.searchProposals);
|
|
118
|
+
i0.ɵɵadvance(1);
|
|
119
|
+
i0.ɵɵproperty("ngIf", !ctx_r0.stopIsDragged && ctx_r0.stopWithHover && stop_r1.id === ctx_r0.stopWithHover.id);
|
|
120
|
+
} }
|
|
121
|
+
export class DirectionsInputsComponent {
|
|
122
|
+
constructor(languageService) {
|
|
123
|
+
this.languageService = languageService;
|
|
124
|
+
this.invalidKeys = ['Control', 'Shift', 'Alt'];
|
|
125
|
+
this.onMapClickEventKeys = [];
|
|
126
|
+
this.stopIsDragged = false;
|
|
127
|
+
this.coordRoundedDecimals = 6;
|
|
128
|
+
this.debounce = 200;
|
|
129
|
+
this.length = 2;
|
|
130
|
+
this.stopInputHasFocus = new EventEmitter(false);
|
|
131
|
+
}
|
|
132
|
+
ngOnDestroy() {
|
|
133
|
+
this.unlistenMapSingleClick();
|
|
134
|
+
}
|
|
135
|
+
onStopEnter(stop) {
|
|
136
|
+
this.stopWithHover = stop;
|
|
137
|
+
}
|
|
138
|
+
onStopLeave() {
|
|
139
|
+
this.stopWithHover = undefined;
|
|
140
|
+
}
|
|
141
|
+
getOptionText(option) {
|
|
142
|
+
if (option instanceof Object) {
|
|
143
|
+
return option?.meta ? option.meta.title : '';
|
|
144
|
+
}
|
|
145
|
+
return option;
|
|
146
|
+
}
|
|
147
|
+
chooseProposal(event, stop) {
|
|
148
|
+
const result = event.option.value;
|
|
149
|
+
if (result) {
|
|
150
|
+
let geomCoord;
|
|
151
|
+
const geom = result.geometry;
|
|
152
|
+
if (geom.type === 'Point') {
|
|
153
|
+
geomCoord = geom.coordinates;
|
|
154
|
+
}
|
|
155
|
+
else {
|
|
156
|
+
const point = pointOnFeature(result.geometry);
|
|
157
|
+
geomCoord = [
|
|
158
|
+
point.geometry.coordinates[0],
|
|
159
|
+
point.geometry.coordinates[1]
|
|
160
|
+
];
|
|
161
|
+
}
|
|
162
|
+
if (geomCoord) {
|
|
163
|
+
stop.coordinates = geomCoord;
|
|
164
|
+
stop.text = result.meta.title;
|
|
165
|
+
this.stopsStore.update(stop);
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
setStopText(event, stop) {
|
|
170
|
+
this.unlistenMapSingleClick();
|
|
171
|
+
const term = event.target.value;
|
|
172
|
+
if (term.length === 0) {
|
|
173
|
+
this.clearStop(stop);
|
|
174
|
+
}
|
|
175
|
+
else if (this.validateTerm(term)) {
|
|
176
|
+
stop.text = term;
|
|
177
|
+
this.stopsStore.update(stop);
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
validateTerm(term) {
|
|
181
|
+
if (this.keyIsValid(term) &&
|
|
182
|
+
(term.length >= this.length || term.length === 0)) {
|
|
183
|
+
return true;
|
|
184
|
+
}
|
|
185
|
+
return false;
|
|
186
|
+
}
|
|
187
|
+
keyIsValid(key) {
|
|
188
|
+
return this.invalidKeys.find(value => value === key) === undefined;
|
|
189
|
+
}
|
|
190
|
+
getNgClass(stop) {
|
|
191
|
+
if (!this.stopWithHover) {
|
|
192
|
+
return 'igo-input-container';
|
|
193
|
+
}
|
|
194
|
+
else if (stop.id === this.stopWithHover.id) {
|
|
195
|
+
return 'igo-input-container reduce';
|
|
196
|
+
}
|
|
197
|
+
else {
|
|
198
|
+
return 'igo-input-container';
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
getPlaceholder(stop) {
|
|
202
|
+
let extra = '';
|
|
203
|
+
if (stop.relativePosition) {
|
|
204
|
+
if (stop.relativePosition === DirectionRelativePositionType.Intermediate) {
|
|
205
|
+
extra = ' #' + stop.position;
|
|
206
|
+
}
|
|
207
|
+
return this.languageService.translate.instant('igo.geo.directionsForm.' + stop.relativePosition) + extra;
|
|
208
|
+
}
|
|
209
|
+
else {
|
|
210
|
+
return '';
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
removeStop(stop) {
|
|
214
|
+
removeStopFromStore(this.stopsStore, stop);
|
|
215
|
+
}
|
|
216
|
+
clearStop(stop) {
|
|
217
|
+
this.stopsStore.update({ id: stop.id, relativePosition: stop.relativePosition, position: stop.position });
|
|
218
|
+
}
|
|
219
|
+
drop(event) {
|
|
220
|
+
this.moveStops(event.previousIndex, event.currentIndex);
|
|
221
|
+
}
|
|
222
|
+
moveStops(fromIndex, toIndex) {
|
|
223
|
+
if (fromIndex !== toIndex) {
|
|
224
|
+
const stops = [...this.stopsStore.view.all()];
|
|
225
|
+
moveItemInArray(stops, fromIndex, toIndex);
|
|
226
|
+
stops.map((stop, i) => {
|
|
227
|
+
stop.relativePosition = computeRelativePosition(i, stops.length);
|
|
228
|
+
stop.position = i;
|
|
229
|
+
});
|
|
230
|
+
this.stopsStore.updateMany(stops);
|
|
231
|
+
updateStoreSorting(this.stopsStore);
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
onInputFocus(stop) {
|
|
235
|
+
if (!stop.text || stop.text?.length === 0) {
|
|
236
|
+
this.unlistenMapSingleClick();
|
|
237
|
+
this.stopInputHasFocus.emit(true);
|
|
238
|
+
this.listenMapSingleClick(stop);
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
listenMapSingleClick(stop) {
|
|
242
|
+
const key = this.stopsFeatureStore.layer.map.ol.once('singleclick', event => {
|
|
243
|
+
const clickCoordinates = olProj.transform(event.coordinate, this.stopsFeatureStore.layer.map.projection, this.projection);
|
|
244
|
+
const roundedCoord = roundCoordTo(clickCoordinates, this.coordRoundedDecimals);
|
|
245
|
+
stop.text = roundedCoord.join(',');
|
|
246
|
+
stop.coordinates = roundedCoord;
|
|
247
|
+
this.stopsStore.update(stop);
|
|
248
|
+
setTimeout(() => {
|
|
249
|
+
this.stopInputHasFocus.emit(false);
|
|
250
|
+
}, 500);
|
|
251
|
+
});
|
|
252
|
+
this.onMapClickEventKeys.push(key);
|
|
253
|
+
}
|
|
254
|
+
unlistenMapSingleClick() {
|
|
255
|
+
this.onMapClickEventKeys.map(key => {
|
|
256
|
+
olObservable.unByKey(key);
|
|
257
|
+
});
|
|
258
|
+
this.onMapClickEventKeys = [];
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
DirectionsInputsComponent.ɵfac = function DirectionsInputsComponent_Factory(t) { return new (t || DirectionsInputsComponent)(i0.ɵɵdirectiveInject(i1.LanguageService)); };
|
|
262
|
+
DirectionsInputsComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: DirectionsInputsComponent, selectors: [["igo-directions-inputs"]], inputs: { stopsStore: "stopsStore", stopsFeatureStore: "stopsFeatureStore", projection: "projection", coordRoundedDecimals: "coordRoundedDecimals", debounce: "debounce", length: "length" }, outputs: { stopInputHasFocus: "stopInputHasFocus" }, decls: 3, vars: 3, consts: [["cdkDropList", "", 1, "stops-list", 3, "cdkDropListDropped"], ["touchleave", "", "cdkDragLockAxis", "y", "class", "stop-box mat-typography", "cdkDrag", "", 3, "touchenter", "touchleave", "mouseover", "mouseleave", "cdkDragStarted", "cdkDragEnded", 4, "ngFor", "ngForOf"], ["touchleave", "", "cdkDragLockAxis", "y", "cdkDrag", "", 1, "stop-box", "mat-typography", 3, "touchenter", "touchleave", "mouseover", "mouseleave", "cdkDragStarted", "cdkDragEnded"], [3, "ngClass"], ["type", "text", "matTooltipShowDelay", "500", "aria-label", "Number", "matInput", "", 3, "id", "placeholder", "matTooltip", "ngModel", "matAutocomplete", "focus", "ngModelChange", "keyup", "keydown.enter"], ["mat-button", "", "matTooltipShowDelay", "500", "matSuffix", "", "mat-icon-button", "", "color", "warn", "aria-label", "Clear", 3, "matTooltip", "click", 4, "ngIf"], [3, "displayWith", "optionSelected"], ["auto", "matAutocomplete"], [3, "label", "disabled", 4, "ngFor", "ngForOf"], ["class", "igo-form-button-group", 4, "ngIf"], ["mat-button", "", "matTooltipShowDelay", "500", "matSuffix", "", "mat-icon-button", "", "color", "warn", "aria-label", "Clear", 3, "matTooltip", "click"], ["svgIcon", "close"], [3, "label", "disabled"], ["matTooltipShowDelay", "500", 3, "value", "matTooltip", 4, "ngFor", "ngForOf"], ["matTooltipShowDelay", "500", 3, "value", "matTooltip"], [1, "igo-form-button-group"], ["cdkDragHandle", "", "mat-icon-button", "", "tooltip-position", "below", "matTooltipShowDelay", "500", "color", "primary", 1, "swipe-vertical", 3, "matTooltip"], ["svgIcon", "gesture-swipe-vertical"], ["mat-icon-button", "", "tooltip-position", "below", "matTooltipShowDelay", "500", "color", "warn", 3, "matTooltip", "click", 4, "ngIf"], ["disabled", "true", "mat-icon-button", "", "tooltip-position", "below", "matTooltipShowDelay", "500", "color", "warn", 3, "matTooltip", 4, "ngIf"], ["mat-icon-button", "", "tooltip-position", "below", "matTooltipShowDelay", "500", "color", "warn", 3, "matTooltip", "click"], ["svgIcon", "delete"], ["disabled", "true", "mat-icon-button", "", "tooltip-position", "below", "matTooltipShowDelay", "500", "color", "warn", 3, "matTooltip"], ["svgIcon", "blank"]], template: function DirectionsInputsComponent_Template(rf, ctx) { if (rf & 1) {
|
|
263
|
+
i0.ɵɵelementStart(0, "div", 0);
|
|
264
|
+
i0.ɵɵlistener("cdkDropListDropped", function DirectionsInputsComponent_Template_div_cdkDropListDropped_0_listener($event) { return ctx.drop($event); });
|
|
265
|
+
i0.ɵɵtemplate(1, DirectionsInputsComponent_div_1_Template, 9, 10, "div", 1);
|
|
266
|
+
i0.ɵɵpipe(2, "async");
|
|
267
|
+
i0.ɵɵelementEnd();
|
|
268
|
+
} if (rf & 2) {
|
|
269
|
+
i0.ɵɵadvance(1);
|
|
270
|
+
i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(2, 1, ctx.stopsStore.view.all$()));
|
|
271
|
+
} }, dependencies: [i2.NgClass, i2.NgForOf, i2.NgIf, i3.CdkDropList, i3.CdkDrag, i3.CdkDragHandle, i4.DefaultValueAccessor, i4.NgControlStatus, i4.NgModel, i5.MatIcon, i6.MatButton, i7.MatFormField, i7.MatSuffix, i8.MatInput, i9.MatOption, i9.MatOptgroup, i10.MatTooltip, i11.MatAutocomplete, i11.MatAutocompleteTrigger, i2.AsyncPipe, i12.TranslatePipe], styles: [".igo-input-container[_ngcontent-%COMP%]{width:100%}.igo-input-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%}.igo-input-container.reduce[_ngcontent-%COMP%]{width:70%}.igo-input-container.reduce[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%}.stops-list[_ngcontent-%COMP%]{max-width:100%;min-height:60px;display:block;background:white;border-radius:4px;overflow:hidden;padding:20px 10px}.swipe-vertical[_ngcontent-%COMP%]{cursor:move}.stop-box[_ngcontent-%COMP%]{height:60px;padding:20px 10px;color:#000000de;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;background:white}.cdk-drag-preview[_ngcontent-%COMP%]{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder[_ngcontent-%COMP%]{opacity:0}.cdk-drag-animating[_ngcontent-%COMP%]{transition:transform .25s cubic-bezier(0,0,.2,1)}.stops-list.cdk-drop-list-dragging[_ngcontent-%COMP%] .stop-box[_ngcontent-%COMP%]:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}"] });
|
|
272
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DirectionsInputsComponent, [{
|
|
273
|
+
type: Component,
|
|
274
|
+
args: [{ selector: 'igo-directions-inputs', template: "<div cdkDropList class=\"stops-list\" (cdkDropListDropped)=\"drop($event)\">\n <div touchleave \n (touchenter)=\"onStopEnter(stop)\"\n (touchleave)=\"onStopLeave()\"\n (mouseover)=\"onStopEnter(stop)\"\n (mouseleave)=\"onStopLeave()\"\n (cdkDragStarted)=\"stopIsDragged=true\"\n (cdkDragEnded)=\"stopIsDragged=false\"\n cdkDragLockAxis=\"y\" class=\"stop-box mat-typography\" *ngFor=\"let stop of stopsStore.view.all$() | async; let i = index;\" cdkDrag>\n <div [ngClass]=\"getNgClass(stop)\">\n <mat-form-field>\n <input id=\"{{stop.id}}\" type=\"text\"\n [placeholder]=\"getPlaceholder(stop)\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"stop.text\"\n aria-label=\"Number\"\n matInput\n (focus)=\"onInputFocus(stop)\"\n [(ngModel)]=\"stop.text\"\n (keyup)=\"setStopText($event,stop)\"\n (keydown.enter)=\"$event.preventDefault()\"\n [matAutocomplete]=\"auto\">\n <button \n mat-button \n *ngIf=\"(stop.text || stop.coordinates) && stopWithHover && stop.id===stopWithHover.id\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.directionsForm.clearStop' | translate\"\n matSuffix mat-icon-button color=\"warn\" aria-label=\"Clear\" (click)=\"clearStop(stop)\">\n <mat-icon svgIcon=\"close\"></mat-icon>\n </button>\n \n <mat-autocomplete [displayWith]=\"getOptionText\" #auto=\"matAutocomplete\" (optionSelected)=\"chooseProposal($event,stop)\">\n <mat-optgroup *ngFor=\"let source of stop.searchProposals\" [label]=\"source.source.title\" [disabled]=\"source.source.enabled === false\">\n <mat-option *ngFor=\"let result of source.results\" [value]=\"result\" \n matTooltipShowDelay=\"500\" [matTooltip]=\"result.meta ? result.meta.title : ''\">\n {{ result.meta ? result.meta.title : '' }}\n </mat-option>\n </mat-optgroup>\n </mat-autocomplete>\n </mat-form-field>\n </div>\n\n\n\n\n <div class=\"igo-form-button-group\" *ngIf=\"!stopIsDragged && stopWithHover && stop.id === stopWithHover.id\">\n <button class=\"swipe-vertical\" cdkDragHandle mat-icon-button tooltip-position=\"below\" matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.directionsForm.moveStop' | translate\" color=\"primary\">\n <mat-icon svgIcon=\"gesture-swipe-vertical\"></mat-icon>\n </button>\n\n <button *ngIf=\"(stopsStore.count$ | async)> 2\" mat-icon-button tooltip-position=\"below\" matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.directionsForm.removeStop' | translate\" color=\"warn\" (click)=\"removeStop(stop)\">\n <mat-icon svgIcon=\"delete\"></mat-icon>\n </button>\n <button *ngIf=\"(stopsStore.count$ | async)<= 2\" disabled=\"true\" mat-icon-button tooltip-position=\"below\"\n matTooltipShowDelay=\"500\" [matTooltip]=\"'igo.geo.directionsForm.removeStop' | translate\" color=\"warn\">\n <mat-icon svgIcon=\"blank\"></mat-icon>\n </button>\n </div>\n </div>\n</div>", styles: [".igo-input-container{width:100%}.igo-input-container mat-form-field{width:100%}.igo-input-container.reduce{width:70%}.igo-input-container.reduce mat-form-field{width:100%}.stops-list{max-width:100%;min-height:60px;display:block;background:white;border-radius:4px;overflow:hidden;padding:20px 10px}.swipe-vertical{cursor:move}.stop-box{height:60px;padding:20px 10px;color:#000000de;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;background:white}.cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.stops-list.cdk-drop-list-dragging .stop-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"] }]
|
|
275
|
+
}], function () { return [{ type: i1.LanguageService }]; }, { stopsStore: [{
|
|
276
|
+
type: Input
|
|
277
|
+
}], stopsFeatureStore: [{
|
|
278
|
+
type: Input
|
|
279
|
+
}], projection: [{
|
|
280
|
+
type: Input
|
|
281
|
+
}], coordRoundedDecimals: [{
|
|
282
|
+
type: Input
|
|
283
|
+
}], debounce: [{
|
|
284
|
+
type: Input
|
|
285
|
+
}], length: [{
|
|
286
|
+
type: Input
|
|
287
|
+
}], stopInputHasFocus: [{
|
|
288
|
+
type: Output
|
|
289
|
+
}] }); })();
|
|
290
290
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlyZWN0aW9ucy1pbnB1dHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvZGlyZWN0aW9ucy9kaXJlY3Rpb25zLWlucHV0cy9kaXJlY3Rpb25zLWlucHV0cy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9kaXJlY3Rpb25zL2RpcmVjdGlvbnMtaW5wdXRzL2RpcmVjdGlvbnMtaW5wdXRzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEYsT0FBTyxFQUFlLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXRFLE9BQU8sS0FBSyxNQUFNLE1BQU0sU0FBUyxDQUFDO0FBQ2xDLE9BQU8sS0FBSyxZQUFZLE1BQU0sZUFBZSxDQUFDO0FBSzlDLE9BQU8sY0FBYyxNQUFNLHdCQUF3QixDQUFDO0FBQ3BELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxtQkFBbUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBSTlHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUUxRCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7OztJQ01sRSxrQ0FLd0Y7SUFBMUIsNk5BQVMsZUFBQSx5QkFBZSxDQUFBLElBQUM7O0lBQ25GLCtCQUFxQztJQUN6QyxpQkFBUzs7SUFITCxxRkFBNkQ7OztJQU8vRCxzQ0FDOEU7SUFDNUUsWUFDRjtJQUFBLGlCQUFhOzs7SUFIcUMsa0NBQWdCLDREQUFBO0lBRWhFLGVBQ0Y7SUFERSw2RUFDRjs7O0lBSkEsd0NBQXFJO0lBQ3JJLDhHQUdhO0lBQ2IsaUJBQWU7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Q0gsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEVBQUUsQ0FBQztJQUNoQyxDQUFDOztrR0EvSlUseUJBQXlCOzRFQUF6Qix5QkFBeUI7UUN2QnRDLDhCQUF3RTtRQUFwQyxtSUFBc0IsZ0JBQVksSUFBQztRQUNyRSwyRUEyRE07O1FBQ1IsaUJBQU07O1FBckRpRSxlQUFtQztRQUFuQywwRUFBbUM7O3VGRGU3Rix5QkFBeUI7Y0FMckMsU0FBUzsyQkFDRSx1QkFBdUI7a0VBVXhCLFVBQVU7a0JBQWxCLEtBQUs7WUFDRyxpQkFBaUI7a0JBQXpCLEtBQUs7WUFDRyxVQUFVO2tCQUFsQixLQUFLO1lBQ0csb0JBQW9CO2tCQUE1QixLQUFLO1lBRUcsUUFBUTtrQkFBaEIsS0FBSztZQUNHLE1BQU07a0JBQWQsS0FBSztZQUVJLGlCQUFpQjtrQkFBMUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENka0RyYWdEcm9wLCBtb3ZlSXRlbUluQXJyYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcblxuaW1wb3J0ICogYXMgb2xQcm9qIGZyb20gJ29sL3Byb2onO1xuaW1wb3J0ICogYXMgb2xPYnNlcnZhYmxlIGZyb20gJ29sL09ic2VydmFibGUnO1xuXG5pbXBvcnQgeyBTdG9wIH0gZnJvbSAnLi4vc2hhcmVkL2RpcmVjdGlvbnMuaW50ZXJmYWNlJztcblxuaW1wb3J0IHsgRmVhdHVyZSB9IGZyb20gJy4uLy4uL2ZlYXR1cmUvc2hhcmVkL2ZlYXR1cmUuaW50ZXJmYWNlcyc7XG5pbXBvcnQgcG9pbnRPbkZlYXR1cmUgZnJvbSAnQHR1cmYvcG9pbnQtb24tZmVhdHVyZSc7XG5pbXBvcnQgeyBjb21wdXRlUmVsYXRpdmVQb3NpdGlvbiwgcmVtb3ZlU3RvcEZyb21TdG9yZSwgdXBkYXRlU3RvcmVTb3J0aW5nIH0gZnJvbSAnLi4vc2hhcmVkL2RpcmVjdGlvbnMudXRpbHMnO1xuaW1wb3J0IHsgTWF0QXV0b2NvbXBsZXRlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcbmltcG9ydCB7IE1hdE9wdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgU3RvcHNGZWF0dXJlU3RvcmUsIFN0b3BzU3RvcmUgfSBmcm9tICcuLi9zaGFyZWQvc3RvcmUnO1xuaW1wb3J0IHsgcm91bmRDb29yZFRvIH0gZnJvbSAnLi4vLi4vbWFwL3NoYXJlZC9tYXAudXRpbHMnO1xuaW1wb3J0IHsgTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZSc7XG5pbXBvcnQgeyBEaXJlY3Rpb25SZWxhdGl2ZVBvc2l0aW9uVHlwZSB9IGZyb20gJy4uL3NoYXJlZC9kaXJlY3Rpb25zLmVudW0nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpZ28tZGlyZWN0aW9ucy1pbnB1dHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZGlyZWN0aW9ucy1pbnB1dHMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kaXJlY3Rpb25zLWlucHV0cy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIERpcmVjdGlvbnNJbnB1dHNDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgaW52YWxpZEtleXMgPSBbJ0NvbnRyb2wnLCAnU2hpZnQnLCAnQWx0J107XG4gIHByaXZhdGUgb25NYXBDbGlja0V2ZW50S2V5cyA9IFtdO1xuICBwdWJsaWMgc3RvcFdpdGhIb3ZlcjogU3RvcDtcbiAgcHVibGljIHN0b3BJc0RyYWdnZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgc3RvcHNTdG9yZTogU3RvcHNTdG9yZTtcbiAgQElucHV0KCkgc3RvcHNGZWF0dXJlU3RvcmU6IFN0b3BzRmVhdHVyZVN0b3JlO1xuICBASW5wdXQoKSBwcm9qZWN0aW9uOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNvb3JkUm91bmRlZERlY2ltYWxzOiBudW1iZXIgPSA2O1xuXG4gIEBJbnB1dCgpIGRlYm91bmNlOiBudW1iZXIgPSAyMDA7XG4gIEBJbnB1dCgpIGxlbmd0aDogbnVtYmVyID0gMjtcblxuICBAT3V0cHV0KCkgc3RvcElucHV0SGFzRm9jdXM6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oZmFsc2UpO1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGxhbmd1YWdlU2VydmljZTogTGFuZ3VhZ2VTZXJ2aWNlKSB7IH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnVubGlzdGVuTWFwU2luZ2xlQ2xpY2soKTtcbiAgfVxuICBvblN0b3BFbnRlcihzdG9wOiBTdG9wKSB7XG4gICAgdGhpcy5zdG9wV2l0aEhvdmVyID0gc3RvcDtcbiAgfVxuICBvblN0b3BMZWF2ZSgpIHtcbiAgICB0aGlzLnN0b3BXaXRoSG92ZXIgPSB1bmRlZmluZWQ7XG4gIH1cblxuICBnZXRPcHRpb25UZXh0KG9wdGlvbikge1xuICAgIGlmIChvcHRpb24gaW5zdGFuY2VvZiBPYmplY3QpIHtcbiAgICAgIHJldHVybiBvcHRpb24/Lm1ldGEgPyBvcHRpb24ubWV0YS50aXRsZSA6ICcnO1xuICAgIH1cbiAgICByZXR1cm4gb3B0aW9uO1xuICB9XG5cbiAgY2hvb3NlUHJvcG9zYWwoZXZlbnQ6IHsgc291cmNlOiBNYXRBdXRvY29tcGxldGUsIG9wdGlvbjogTWF0T3B0aW9uIH0sIHN0b3A6IFN0b3ApIHtcbiAgICBjb25zdCByZXN1bHQ6IEZlYXR1cmUgPSBldmVudC5vcHRpb24udmFsdWU7XG4gICAgaWYgKHJlc3VsdCkge1xuICAgICAgbGV0IGdlb21Db29yZDtcbiAgICAgIGNvbnN0IGdlb20gPSByZXN1bHQuZ2VvbWV0cnk7XG4gICAgICBpZiAoZ2VvbS50eXBlID09PSAnUG9pbnQnKSB7XG4gICAgICAgIGdlb21Db29yZCA9IGdlb20uY29vcmRpbmF0ZXM7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBwb2ludCA9IHBvaW50T25GZWF0dXJlKHJlc3VsdC5nZW9tZXRyeSk7XG4gICAgICAgIGdlb21Db29yZCA9IFtcbiAgICAgICAgICBwb2ludC5nZW9tZXRyeS5jb29yZGluYXRlc1swXSxcbiAgICAgICAgICBwb2ludC5nZW9tZXRyeS5jb29yZGluYXRlc1sxXVxuICAgICAgICBdO1xuICAgICAgfVxuICAgICAgaWYgKGdlb21Db29yZCkge1xuICAgICAgICBzdG9wLmNvb3JkaW5hdGVzID0gZ2VvbUNvb3JkO1xuICAgICAgICBzdG9wLnRleHQgPSByZXN1bHQubWV0YS50aXRsZTtcbiAgICAgICAgdGhpcy5zdG9wc1N0b3JlLnVwZGF0ZShzdG9wKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBzZXRTdG9wVGV4dChldmVudDogS2V5Ym9hcmRFdmVudCwgc3RvcDogU3RvcCkge1xuICAgIHRoaXMudW5saXN0ZW5NYXBTaW5nbGVDbGljaygpO1xuICAgIGNvbnN0IHRlcm0gPSAoZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpLnZhbHVlO1xuICAgIGlmICh0ZXJtLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5jbGVhclN0b3Aoc3RvcCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnZhbGlkYXRlVGVybSh0ZXJtKSkge1xuICAgICAgc3RvcC50ZXh0ID0gdGVybTtcbiAgICAgIHRoaXMuc3RvcHNTdG9yZS51cGRhdGUoc3RvcCk7XG4gICAgfVxuICB9XG5cbiAgdmFsaWRhdGVUZXJtKHRlcm06IHN0cmluZykge1xuICAgIGlmIChcbiAgICAgIHRoaXMua2V5SXNWYWxpZCh0ZXJtKSAmJlxuICAgICAgKHRlcm0ubGVuZ3RoID49IHRoaXMubGVuZ3RoIHx8IHRlcm0ubGVuZ3RoID09PSAwKVxuICAgICkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHByaXZhdGUga2V5SXNWYWxpZChrZXk6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmludmFsaWRLZXlzLmZpbmQodmFsdWUgPT4gdmFsdWUgPT09IGtleSkgPT09IHVuZGVmaW5lZDtcbiAgfVxuXG4gIGdldE5nQ2xhc3Moc3RvcDogU3RvcCk6IHN0cmluZyB7XG4gICAgaWYgKCF0aGlzLnN0b3BXaXRoSG92ZXIpIHtcbiAgICAgIHJldHVybiAnaWdvLWlucHV0LWNvbnRhaW5lcic7XG4gICAgfSBlbHNlIGlmIChzdG9wLmlkID09PSB0aGlzLnN0b3BXaXRoSG92ZXIuaWQpIHtcbiAgICAgIHJldHVybiAnaWdvLWlucHV0LWNvbnRhaW5lciByZWR1Y2UnO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gJ2lnby1pbnB1dC1jb250YWluZXInO1xuICAgIH1cbiAgfVxuXG4gIGdldFBsYWNlaG9sZGVyKHN0b3A6IFN0b3ApOiBzdHJpbmcge1xuICAgIGxldCBleHRyYSA9ICcnO1xuICAgIGlmIChzdG9wLnJlbGF0aXZlUG9zaXRpb24pIHtcbiAgICAgIGlmIChzdG9wLnJlbGF0aXZlUG9zaXRpb24gPT09IERpcmVjdGlvblJlbGF0aXZlUG9zaXRpb25UeXBlLkludGVybWVkaWF0ZSkge1xuICAgICAgICBleHRyYSA9ICcgIycgKyBzdG9wLnBvc2l0aW9uO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KCdpZ28uZ2VvLmRpcmVjdGlvbnNGb3JtLicgKyBzdG9wLnJlbGF0aXZlUG9zaXRpb24pICsgZXh0cmE7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG4gIH1cblxuICByZW1vdmVTdG9wKHN0b3A6IFN0b3ApIHtcbiAgICByZW1vdmVTdG9wRnJvbVN0b3JlKHRoaXMuc3RvcHNTdG9yZSwgc3RvcCk7XG4gIH1cblxuICBjbGVhclN0b3Aoc3RvcDogU3RvcCkge1xuICAgIHRoaXMuc3RvcHNTdG9yZS51cGRhdGUoeyBpZDogc3RvcC5pZCwgcmVsYXRpdmVQb3NpdGlvbjogc3RvcC5yZWxhdGl2ZVBvc2l0aW9uLCBwb3NpdGlvbjogc3RvcC5wb3NpdGlvbiB9KTtcbiAgfVxuXG4gIGRyb3AoZXZlbnQ6IENka0RyYWdEcm9wPHN0cmluZ1tdPikge1xuICAgIHRoaXMubW92ZVN0b3BzKGV2ZW50LnByZXZpb3VzSW5kZXgsIGV2ZW50LmN1cnJlbnRJbmRleCk7XG4gIH1cblxuICBwcml2YXRlIG1vdmVTdG9wcyhmcm9tSW5kZXgsIHRvSW5kZXgpIHtcbiAgICBpZiAoZnJvbUluZGV4ICE9PSB0b0luZGV4KSB7XG4gICAgICBjb25zdCBzdG9wcyA9IFsuLi50aGlzLnN0b3BzU3RvcmUudmlldy5hbGwoKV07XG4gICAgICBtb3ZlSXRlbUluQXJyYXkoc3RvcHMsIGZyb21JbmRleCwgdG9JbmRleCk7XG4gICAgICBzdG9wcy5tYXAoKHN0b3AsIGkpID0+IHtcbiAgICAgICAgc3RvcC5yZWxhdGl2ZVBvc2l0aW9uID0gY29tcHV0ZVJlbGF0aXZlUG9zaXRpb24oaSwgc3RvcHMubGVuZ3RoKTtcbiAgICAgICAgc3RvcC5wb3NpdGlvbiA9IGk7XG4gICAgICB9KTtcbiAgICAgIHRoaXMuc3RvcHNTdG9yZS51cGRhdGVNYW55KHN0b3BzKTtcbiAgICAgIHVwZGF0ZVN0b3JlU29ydGluZyh0aGlzLnN0b3BzU3RvcmUpO1xuICAgIH1cbiAgfVxuXG4gIG9uSW5wdXRGb2N1cyhzdG9wOiBTdG9wKSB7XG4gICAgaWYgKCFzdG9wLnRleHQgfHwgc3RvcC50ZXh0Py5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMudW5saXN0ZW5NYXBTaW5nbGVDbGljaygpO1xuICAgICAgdGhpcy5zdG9wSW5wdXRIYXNGb2N1cy5lbWl0KHRydWUpO1xuICAgICAgdGhpcy5saXN0ZW5NYXBTaW5nbGVDbGljayhzdG9wKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGxpc3Rlbk1hcFNpbmdsZUNsaWNrKHN0b3A6IFN0b3ApIHtcbiAgICBjb25zdCBrZXkgPSB0aGlzLnN0b3BzRmVhdHVyZVN0b3JlLmxheWVyLm1hcC5vbC5vbmNlKCdzaW5nbGVjbGljaycsIGV2ZW50ID0+IHtcbiAgICAgIGNvbnN0IGNsaWNrQ29vcmRpbmF0ZXMgPSBvbFByb2oudHJhbnNmb3JtKFxuICAgICAgICBldmVudC5jb29yZGluYXRlLFxuICAgICAgICB0aGlzLnN0b3BzRmVhdHVyZVN0b3JlLmxheWVyLm1hcC5wcm9qZWN0aW9uLFxuICAgICAgICB0aGlzLnByb2plY3Rpb25cbiAgICAgICk7XG4gICAgICBjb25zdCByb3VuZGVkQ29vcmQgPSByb3VuZENvb3JkVG8oY2xpY2tDb29yZGluYXRlcyBhcyBbbnVtYmVyLCBudW1iZXJdLCB0aGlzLmNvb3JkUm91bmRlZERlY2ltYWxzKTtcbiAgICAgIHN0b3AudGV4dCA9IHJvdW5kZWRDb29yZC5qb2luKCcsJyk7XG4gICAgICBzdG9wLmNvb3JkaW5hdGVzID0gcm91bmRlZENvb3JkO1xuICAgICAgdGhpcy5zdG9wc1N0b3JlLnVwZGF0ZShzdG9wKTtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLnN0b3BJbnB1dEhhc0ZvY3VzLmVtaXQoZmFsc2UpO1xuICAgICAgfSwgNTAwKTtcbiAgICB9KTtcbiAgICB0aGlzLm9uTWFwQ2xpY2tFdmVudEtleXMucHVzaChrZXkpO1xuICB9XG5cbiAgcHJpdmF0ZSB1bmxpc3Rlbk1hcFNpbmdsZUNsaWNrKCkge1xuICAgIHRoaXMub25NYXBDbGlja0V2ZW50S2V5cy5tYXAoa2V5ID0+IHtcbiAgICAgIG9sT2JzZXJ2YWJsZS51bkJ5S2V5KGtleSk7XG4gICAgfSk7XG4gICAgdGhpcy5vbk1hcENsaWNrRXZlbnRLZXlzID0gW107XG4gIH1cbn1cbiIsIjxkaXYgY2RrRHJvcExpc3QgY2xhc3M9XCJzdG9wcy1saXN0XCIgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJkcm9wKCRldmVudClcIj5cbiAgPGRpdiB0b3VjaGxlYXZlICBcbiAgKHRvdWNoZW50ZXIpPVwib25TdG9wRW50ZXIoc3RvcClcIlxuICAodG91Y2hsZWF2ZSk9XCJvblN0b3BMZWF2ZSgpXCJcbiAgKG1vdXNlb3Zlcik9XCJvblN0b3BFbnRlcihzdG9wKVwiXG4gIChtb3VzZWxlYXZlKT1cIm9uU3RvcExlYXZlKClcIlxuICAoY2RrRHJhZ1N0YXJ0ZWQpPVwic3RvcElzRHJhZ2dlZD10cnVlXCJcbiAgKGNka0RyYWdFbmRlZCk9XCJzdG9wSXNEcmFnZ2VkPWZhbHNlXCJcbiAgY2RrRHJhZ0xvY2tBeGlzPVwieVwiIGNsYXNzPVwic3RvcC1ib3ggbWF0LXR5cG9ncmFwaHlcIiAqbmdGb3I9XCJsZXQgc3RvcCBvZiBzdG9wc1N0b3JlLnZpZXcuYWxsJCgpIHwgYXN5bmM7IGxldCBpID0gaW5kZXg7XCIgY2RrRHJhZz5cbiAgICA8ZGl2IFtuZ0NsYXNzXT1cImdldE5nQ2xhc3Moc3RvcClcIj5cbiAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPGlucHV0IGlkPVwie3tzdG9wLmlkfX1cIiB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiZ2V0UGxhY2Vob2xkZXIoc3RvcClcIlxuICAgICAgICAgICAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXG4gICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJzdG9wLnRleHRcIlxuICAgICAgICAgICAgYXJpYS1sYWJlbD1cIk51bWJlclwiXG4gICAgICAgICAgICBtYXRJbnB1dFxuICAgICAgICAgICAgKGZvY3VzKT1cIm9uSW5wdXRGb2N1cyhzdG9wKVwiXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cInN0b3AudGV4dFwiXG4gICAgICAgICAgICAoa2V5dXApPVwic2V0U3RvcFRleHQoJGV2ZW50LHN0b3ApXCJcbiAgICAgICAgICAgIChrZXlkb3duLmVudGVyKT1cIiRldmVudC5wcmV2ZW50RGVmYXVsdCgpXCJcbiAgICAgICAgICAgIFttYXRBdXRvY29tcGxldGVdPVwiYXV0b1wiPlxuICAgICAgICA8YnV0dG9uIFxuICAgICAgICAgICAgbWF0LWJ1dHRvbiBcbiAgICAgICAgICAgICpuZ0lmPVwiKHN0b3AudGV4dCB8fCBzdG9wLmNvb3JkaW5hdGVzKSAmJiBzdG9wV2l0aEhvdmVyICYmIHN0b3AuaWQ9PT1zdG9wV2l0aEhvdmVyLmlkXCJcbiAgICAgICAgICAgIG1hdFRvb2x0aXBTaG93RGVsYXk9XCI1MDBcIlxuICAgICAgICAgICAgW21hdFRvb2x0aXBdPVwiJ2lnby5nZW8uZGlyZWN0aW9uc0Zvcm0uY2xlYXJTdG9wJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICBtYXRTdWZmaXggbWF0LWljb24tYnV0dG9uIGNvbG9yPVwid2FyblwiIGFyaWEtbGFiZWw9XCJDbGVhclwiIChjbGljayk9XCJjbGVhclN0b3Aoc3RvcClcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiBzdmdJY29uPVwiY2xvc2VcIj48L21hdC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIFxuICAgICAgICA8bWF0LWF1dG9jb21wbGV0ZSBbZGlzcGxheVdpdGhdPVwiZ2V0T3B0aW9uVGV4dFwiICNhdXRvPVwibWF0QXV0b2NvbXBsZXRlXCIgKG9wdGlvblNlbGVjdGVkKT1cImNob29zZVByb3Bvc2FsKCRldmVudCxzdG9wKVwiPlxuICAgICAgICAgIDxtYXQtb3B0Z3JvdXAgKm5nRm9yPVwibGV0IHNvdXJjZSBvZiBzdG9wLnNlYXJjaFByb3Bvc2Fsc1wiIFtsYWJlbF09XCJzb3VyY2Uuc291cmNlLnRpdGxlXCIgW2Rpc2FibGVkXT1cInNvdXJjZS5zb3VyY2UuZW5hYmxlZCA9PT0gZmFsc2VcIj5cbiAgICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgcmVzdWx0IG9mIHNvdXJjZS5yZXN1bHRzXCIgW3ZhbHVlXT1cInJlc3VsdFwiIFxuICAgICAgICAgIG1hdFRvb2x0aXBTaG93RGVsYXk9XCI1MDBcIiBbbWF0VG9vbHRpcF09XCJyZXN1bHQubWV0YSA/IHJlc3VsdC5tZXRhLnRpdGxlIDogJydcIj5cbiAgICAgICAgICAgIHt7IHJlc3VsdC5tZXRhID8gcmVzdWx0Lm1ldGEudGl0bGUgOiAnJyB9fVxuICAgICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgICAgICA8L21hdC1vcHRncm91cD5cbiAgICAgICAgPC9tYXQtYXV0b2NvbXBsZXRlPlxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICA8L2Rpdj5cblxuXG5cblxuICAgIDxkaXYgY2xhc3M9XCJpZ28tZm9ybS1idXR0b24tZ3JvdXBcIiAqbmdJZj1cIiFzdG9wSXNEcmFnZ2VkICYmIHN0b3BXaXRoSG92ZXIgJiYgc3RvcC5pZCA9PT0gc3RvcFdpdGhIb3Zlci5pZFwiPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cInN3aXBlLXZlcnRpY2FsXCIgY2RrRHJhZ0hhbmRsZSBtYXQtaWNvbi1idXR0b24gdG9vbHRpcC1wb3NpdGlvbj1cImJlbG93XCIgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXG4gICAgICAgIFttYXRUb29sdGlwXT1cIidpZ28uZ2VvLmRpcmVjdGlvbnNGb3JtLm1vdmVTdG9wJyB8IHRyYW5zbGF0ZVwiIGNvbG9yPVwicHJpbWFyeVwiPlxuICAgICAgICA8bWF0LWljb24gc3ZnSWNvbj1cImdlc3R1cmUtc3dpcGUtdmVydGljYWxcIj48L21hdC1pY29uPlxuICAgICAgPC9idXR0b24+XG5cbiAgICAgIDxidXR0b24gKm5nSWY9XCIoc3RvcHNTdG9yZS5jb3VudCQgfCBhc3luYyk+IDJcIiBtYXQtaWNvbi1idXR0b24gdG9vbHRpcC1wb3NpdGlvbj1cImJlbG93XCIgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXG4gICAgICAgIFttYXRUb29sdGlwXT1cIidpZ28uZ2VvLmRpcmVjdGlvbnNGb3JtLnJlbW92ZVN0b3AnIHwgdHJhbnNsYXRlXCIgY29sb3I9XCJ3YXJuXCIgKGNsaWNrKT1cInJlbW92ZVN0b3Aoc3RvcClcIj5cbiAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJkZWxldGVcIj48L21hdC1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8YnV0dG9uICpuZ0lmPVwiKHN0b3BzU3RvcmUuY291bnQkIHwgYXN5bmMpPD0gMlwiIGRpc2FibGVkPVwidHJ1ZVwiIG1hdC1pY29uLWJ1dHRvbiB0b29sdGlwLXBvc2l0aW9uPVwiYmVsb3dcIlxuICAgICAgICBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCIgW21hdFRvb2x0aXBdPVwiJ2lnby5nZW8uZGlyZWN0aW9uc0Zvcm0ucmVtb3ZlU3RvcCcgfCB0cmFuc2xhdGVcIiBjb2xvcj1cIndhcm5cIj5cbiAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJibGFua1wiPjwvbWF0LWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj4iXX0=
|