@igo2/geo 18.0.0 → 18.0.1-next.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/igo2-geo.mjs +684 -709
- package/fesm2022/igo2-geo.mjs.map +1 -1
- package/lib/offline/geoDB/geoDB.service.d.ts +1 -1
- package/lib/offline/layerDB/layerDB.service.d.ts +1 -1
- package/lib/style/style-list/style-list.provider.d.ts +1 -8
- package/lib/style/style-list/style-list.service.d.ts +1 -1
- package/package.json +15 -17
- package/src/lib/layer/layer-list/layer-list.theme.scss +2 -1
- package/src/lib/map/menu-button/menu-button.theming.scss +3 -3
- package/src/style/style.scss +1 -1
- package/esm2022/igo2-geo.mjs +0 -5
- package/esm2022/lib/catalog/catalog-browser/catalog-browser-group.component.mjs +0 -234
- package/esm2022/lib/catalog/catalog-browser/catalog-browser-layer.component.mjs +0 -272
- package/esm2022/lib/catalog/catalog-browser/catalog-browser.component.mjs +0 -246
- package/esm2022/lib/catalog/catalog-browser/catalog-browser.module.mjs +0 -19
- package/esm2022/lib/catalog/catalog-library/add-catalog-dialog.component.mjs +0 -136
- package/esm2022/lib/catalog/catalog-library/catalog-library-item.component.mjs +0 -60
- package/esm2022/lib/catalog/catalog-library/catalog-library.component.mjs +0 -232
- package/esm2022/lib/catalog/catalog-library/catalog-library.module.mjs +0 -24
- package/esm2022/lib/catalog/catalog-library/index.mjs +0 -4
- package/esm2022/lib/catalog/catalog.module.mjs +0 -26
- package/esm2022/lib/catalog/index.mjs +0 -6
- package/esm2022/lib/catalog/shared/catalog.abstract.mjs +0 -32
- package/esm2022/lib/catalog/shared/catalog.enum.mjs +0 -16
- package/esm2022/lib/catalog/shared/catalog.interface.mjs +0 -2
- package/esm2022/lib/catalog/shared/catalog.service.mjs +0 -706
- package/esm2022/lib/catalog/shared/catalogs.mjs +0 -75
- package/esm2022/lib/catalog/shared/index.mjs +0 -5
- package/esm2022/lib/datasource/index.mjs +0 -3
- package/esm2022/lib/datasource/shared/capabilities.interface.mjs +0 -17
- package/esm2022/lib/datasource/shared/capabilities.service.mjs +0 -441
- package/esm2022/lib/datasource/shared/datasource.service.mjs +0 -258
- package/esm2022/lib/datasource/shared/datasources/any-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/any-datasource.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/arcgisrest-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/arcgisrest-datasource.mjs +0 -222
- package/esm2022/lib/datasource/shared/datasources/carto-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/carto-datasource.mjs +0 -118
- package/esm2022/lib/datasource/shared/datasources/cluster-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/cluster-datasource.mjs +0 -24
- package/esm2022/lib/datasource/shared/datasources/data.service.mjs +0 -3
- package/esm2022/lib/datasource/shared/datasources/datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/datasource.mjs +0 -41
- package/esm2022/lib/datasource/shared/datasources/feature-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/feature-datasource.mjs +0 -52
- package/esm2022/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/imagearcgisrest-datasource.mjs +0 -70
- package/esm2022/lib/datasource/shared/datasources/index.mjs +0 -36
- package/esm2022/lib/datasource/shared/datasources/mvt-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/mvt-datasource.mjs +0 -33
- package/esm2022/lib/datasource/shared/datasources/osm-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/osm-datasource.mjs +0 -14
- package/esm2022/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/tilearcgisrest-datasource.mjs +0 -60
- package/esm2022/lib/datasource/shared/datasources/tiledebug-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/tiledebug-datasource.mjs +0 -17
- package/esm2022/lib/datasource/shared/datasources/websocket-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/websocket-datasource.mjs +0 -56
- package/esm2022/lib/datasource/shared/datasources/wfs-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/wfs-datasource.mjs +0 -137
- package/esm2022/lib/datasource/shared/datasources/wfs.service.mjs +0 -170
- package/esm2022/lib/datasource/shared/datasources/wms-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/wms-datasource.mjs +0 -227
- package/esm2022/lib/datasource/shared/datasources/wms-wfs.utils.mjs +0 -224
- package/esm2022/lib/datasource/shared/datasources/wmts-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/wmts-datasource.mjs +0 -18
- package/esm2022/lib/datasource/shared/datasources/xyz-datasource.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/datasources/xyz-datasource.mjs +0 -11
- package/esm2022/lib/datasource/shared/index.mjs +0 -6
- package/esm2022/lib/datasource/shared/options/index.mjs +0 -5
- package/esm2022/lib/datasource/shared/options/options-api.interface.mjs +0 -2
- package/esm2022/lib/datasource/shared/options/options-api.providers.mjs +0 -15
- package/esm2022/lib/datasource/shared/options/options-api.service.mjs +0 -85
- package/esm2022/lib/datasource/shared/options/options.service.mjs +0 -3
- package/esm2022/lib/datasource/utils/index.mjs +0 -2
- package/esm2022/lib/datasource/utils/tilegrid.mjs +0 -20
- package/esm2022/lib/directions/directions-buttons/directions-buttons.component.mjs +0 -246
- package/esm2022/lib/directions/directions-buttons/index.mjs +0 -2
- package/esm2022/lib/directions/directions-inputs/directions-inputs.component.mjs +0 -312
- package/esm2022/lib/directions/directions-inputs/index.mjs +0 -2
- package/esm2022/lib/directions/directions-results/directions-results.component.mjs +0 -192
- package/esm2022/lib/directions/directions-results/index.mjs +0 -2
- package/esm2022/lib/directions/directions-sources/directions-source.interface.mjs +0 -5
- package/esm2022/lib/directions/directions-sources/directions-source.mjs +0 -3
- package/esm2022/lib/directions/directions-sources/directions-source.provider.mjs +0 -23
- package/esm2022/lib/directions/directions-sources/index.mjs +0 -5
- package/esm2022/lib/directions/directions-sources/osrm-directions-source.mjs +0 -159
- package/esm2022/lib/directions/directions.component.mjs +0 -437
- package/esm2022/lib/directions/directions.module.mjs +0 -46
- package/esm2022/lib/directions/directions.provider.mjs +0 -16
- package/esm2022/lib/directions/index.mjs +0 -8
- package/esm2022/lib/directions/shared/directions-source.service.mjs +0 -18
- package/esm2022/lib/directions/shared/directions.enum.mjs +0 -72
- package/esm2022/lib/directions/shared/directions.interface.mjs +0 -2
- package/esm2022/lib/directions/shared/directions.service.mjs +0 -239
- package/esm2022/lib/directions/shared/directions.utils.mjs +0 -522
- package/esm2022/lib/directions/shared/index.mjs +0 -6
- package/esm2022/lib/directions/shared/store.mjs +0 -21
- package/esm2022/lib/download/download-button/download-button.component.mjs +0 -48
- package/esm2022/lib/download/download-button/index.mjs +0 -2
- package/esm2022/lib/download/download.module.mjs +0 -24
- package/esm2022/lib/download/index.mjs +0 -3
- package/esm2022/lib/download/shared/download.interface.mjs +0 -2
- package/esm2022/lib/download/shared/download.service.mjs +0 -67
- package/esm2022/lib/download/shared/index.mjs +0 -3
- package/esm2022/lib/draw/draw/draw-layer-popup.component.mjs +0 -42
- package/esm2022/lib/draw/draw/draw-popup.component.mjs +0 -421
- package/esm2022/lib/draw/draw/draw-shorcuts.component.mjs +0 -28
- package/esm2022/lib/draw/draw/draw.component.mjs +0 -1136
- package/esm2022/lib/draw/draw/draw.module.mjs +0 -19
- package/esm2022/lib/draw/drawingTool.module.mjs +0 -18
- package/esm2022/lib/draw/index.mjs +0 -3
- package/esm2022/lib/draw/shared/draw-icon.service.mjs +0 -30
- package/esm2022/lib/draw/shared/draw.enum.mjs +0 -21
- package/esm2022/lib/draw/shared/draw.interface.mjs +0 -2
- package/esm2022/lib/draw/shared/draw.utils.mjs +0 -125
- package/esm2022/lib/draw/shared/index.mjs +0 -5
- package/esm2022/lib/environment/environment.interface.mjs +0 -2
- package/esm2022/lib/environment/index.mjs +0 -2
- package/esm2022/lib/feature/feature-details/feature-details.component.mjs +0 -306
- package/esm2022/lib/feature/feature-details/feature-details.directive.mjs +0 -56
- package/esm2022/lib/feature/feature-details/feature-details.module.mjs +0 -26
- package/esm2022/lib/feature/feature-details/index.mjs +0 -4
- package/esm2022/lib/feature/feature-form/feature-form.component.mjs +0 -101
- package/esm2022/lib/feature/feature-form/feature-form.module.mjs +0 -19
- package/esm2022/lib/feature/feature.module.mjs +0 -26
- package/esm2022/lib/feature/index.mjs +0 -5
- package/esm2022/lib/feature/shared/feature-store.utils.mjs +0 -28
- package/esm2022/lib/feature/shared/feature.enums.mjs +0 -9
- package/esm2022/lib/feature/shared/feature.interfaces.mjs +0 -2
- package/esm2022/lib/feature/shared/feature.utils.mjs +0 -332
- package/esm2022/lib/feature/shared/index.mjs +0 -8
- package/esm2022/lib/feature/shared/store.mjs +0 -143
- package/esm2022/lib/feature/shared/strategies/geo-properties.mjs +0 -216
- package/esm2022/lib/feature/shared/strategies/in-map-extent.mjs +0 -119
- package/esm2022/lib/feature/shared/strategies/in-map-resolution.mjs +0 -99
- package/esm2022/lib/feature/shared/strategies/index.mjs +0 -8
- package/esm2022/lib/feature/shared/strategies/loading-layer.mjs +0 -103
- package/esm2022/lib/feature/shared/strategies/loading.mjs +0 -136
- package/esm2022/lib/feature/shared/strategies/search.mjs +0 -158
- package/esm2022/lib/feature/shared/strategies/selection.mjs +0 -385
- package/esm2022/lib/feature/shared/strategies.utils.mjs +0 -37
- package/esm2022/lib/filter/filter.module.mjs +0 -131
- package/esm2022/lib/filter/index.mjs +0 -17
- package/esm2022/lib/filter/ogc-filter-button/index.mjs +0 -2
- package/esm2022/lib/filter/ogc-filter-button/ogc-filter-button.component.mjs +0 -141
- package/esm2022/lib/filter/ogc-filter-form/index.mjs +0 -2
- package/esm2022/lib/filter/ogc-filter-form/ogc-filter-form.component.mjs +0 -325
- package/esm2022/lib/filter/ogc-filter-selection/index.mjs +0 -2
- package/esm2022/lib/filter/ogc-filter-selection/ogc-filter-selection.component.mjs +0 -787
- package/esm2022/lib/filter/ogc-filter-time/index.mjs +0 -3
- package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.mjs +0 -201
- package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time.component.mjs +0 -665
- package/esm2022/lib/filter/ogc-filterable-form/index.mjs +0 -2
- package/esm2022/lib/filter/ogc-filterable-form/ogc-filterable-form.component.mjs +0 -66
- package/esm2022/lib/filter/ogc-filterable-item/index.mjs +0 -2
- package/esm2022/lib/filter/ogc-filterable-item/ogc-filterable-item.component.mjs +0 -244
- package/esm2022/lib/filter/ogc-filterable-list/index.mjs +0 -3
- package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.mjs +0 -39
- package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list.component.mjs +0 -32
- package/esm2022/lib/filter/shared/filterable-datasource.pipe.mjs +0 -63
- package/esm2022/lib/filter/shared/index.mjs +0 -12
- package/esm2022/lib/filter/shared/ogc-filter-time.service.mjs +0 -72
- package/esm2022/lib/filter/shared/ogc-filter.enum.mjs +0 -30
- package/esm2022/lib/filter/shared/ogc-filter.interface.mjs +0 -2
- package/esm2022/lib/filter/shared/ogc-filter.mjs +0 -756
- package/esm2022/lib/filter/shared/ogc-filter.service.mjs +0 -47
- package/esm2022/lib/filter/shared/spatial-filter.enum.mjs +0 -23
- package/esm2022/lib/filter/shared/spatial-filter.interface.mjs +0 -2
- package/esm2022/lib/filter/shared/spatial-filter.service.mjs +0 -282
- package/esm2022/lib/filter/shared/time-filter.enum.mjs +0 -13
- package/esm2022/lib/filter/shared/time-filter.interface.mjs +0 -2
- package/esm2022/lib/filter/shared/time-filter.service.mjs +0 -107
- package/esm2022/lib/filter/spatial-filter/spatial-filter-item/index.mjs +0 -2
- package/esm2022/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.mjs +0 -875
- package/esm2022/lib/filter/spatial-filter/spatial-filter-list/index.mjs +0 -2
- package/esm2022/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.mjs +0 -191
- package/esm2022/lib/filter/spatial-filter/spatial-filter-type/index.mjs +0 -2
- package/esm2022/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.mjs +0 -120
- package/esm2022/lib/filter/time-filter-button/index.mjs +0 -2
- package/esm2022/lib/filter/time-filter-button/time-filter-button.component.mjs +0 -70
- package/esm2022/lib/filter/time-filter-form/index.mjs +0 -2
- package/esm2022/lib/filter/time-filter-form/time-filter-form.component.mjs +0 -537
- package/esm2022/lib/filter/time-filter-item/index.mjs +0 -2
- package/esm2022/lib/filter/time-filter-item/time-filter-item.component.mjs +0 -90
- package/esm2022/lib/filter/time-filter-list/index.mjs +0 -3
- package/esm2022/lib/filter/time-filter-list/time-filter-list-binding.directive.mjs +0 -39
- package/esm2022/lib/filter/time-filter-list/time-filter-list.component.mjs +0 -24
- package/esm2022/lib/geo.module.mjs +0 -63
- package/esm2022/lib/geometry/geometry-form-field/geometry-form-field-input.component.mjs +0 -559
- package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.component.mjs +0 -170
- package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.module.mjs +0 -24
- package/esm2022/lib/geometry/geometry-form-field/index.mjs +0 -4
- package/esm2022/lib/geometry/geometry.module.mjs +0 -18
- package/esm2022/lib/geometry/index.mjs +0 -3
- package/esm2022/lib/geometry/shared/controls/draw.mjs +0 -340
- package/esm2022/lib/geometry/shared/controls/index.mjs +0 -4
- package/esm2022/lib/geometry/shared/controls/modify.mjs +0 -538
- package/esm2022/lib/geometry/shared/controls/slice.mjs +0 -190
- package/esm2022/lib/geometry/shared/geometry.errors.mjs +0 -24
- package/esm2022/lib/geometry/shared/geometry.interfaces.mjs +0 -2
- package/esm2022/lib/geometry/shared/geometry.utils.mjs +0 -113
- package/esm2022/lib/geometry/shared/index.mjs +0 -5
- package/esm2022/lib/import-export/export-button/export-button.component.mjs +0 -49
- package/esm2022/lib/import-export/export-button/index.mjs +0 -2
- package/esm2022/lib/import-export/import-export/import-export.component.mjs +0 -876
- package/esm2022/lib/import-export/import-export/index.mjs +0 -2
- package/esm2022/lib/import-export/import-export.module.mjs +0 -31
- package/esm2022/lib/import-export/index.mjs +0 -5
- package/esm2022/lib/import-export/shared/drop-geo-file.directive.mjs +0 -114
- package/esm2022/lib/import-export/shared/export.errors.mjs +0 -15
- package/esm2022/lib/import-export/shared/export.interface.mjs +0 -2
- package/esm2022/lib/import-export/shared/export.service.mjs +0 -378
- package/esm2022/lib/import-export/shared/export.type.mjs +0 -13
- package/esm2022/lib/import-export/shared/export.utils.mjs +0 -51
- package/esm2022/lib/import-export/shared/import.errors.mjs +0 -39
- package/esm2022/lib/import-export/shared/import.interface.mjs +0 -2
- package/esm2022/lib/import-export/shared/import.service.mjs +0 -221
- package/esm2022/lib/import-export/shared/import.utils.mjs +0 -203
- package/esm2022/lib/import-export/shared/index.mjs +0 -11
- package/esm2022/lib/layer/index.mjs +0 -16
- package/esm2022/lib/layer/layer-group/index.mjs +0 -2
- package/esm2022/lib/layer/layer-group/layer-group.component.mjs +0 -103
- package/esm2022/lib/layer/layer-item/index.mjs +0 -2
- package/esm2022/lib/layer/layer-item/layer-item.component.mjs +0 -196
- package/esm2022/lib/layer/layer-legend/index.mjs +0 -2
- package/esm2022/lib/layer/layer-legend/layer-legend.component.mjs +0 -287
- package/esm2022/lib/layer/layer-legend-item/index.mjs +0 -2
- package/esm2022/lib/layer/layer-legend-item/layer-legend-item.component.mjs +0 -85
- package/esm2022/lib/layer/layer-legend-list/index.mjs +0 -3
- package/esm2022/lib/layer/layer-legend-list/layer-legend-list-binding.directive.mjs +0 -54
- package/esm2022/lib/layer/layer-legend-list/layer-legend-list.component.mjs +0 -104
- package/esm2022/lib/layer/layer-list/index.mjs +0 -2
- package/esm2022/lib/layer/layer-list/layer-list.component.mjs +0 -232
- package/esm2022/lib/layer/layer-list-tool/index.mjs +0 -4
- package/esm2022/lib/layer/layer-list-tool/layer-list-tool.component.mjs +0 -92
- package/esm2022/lib/layer/layer-list-tool/layer-list-tool.interface.mjs +0 -7
- package/esm2022/lib/layer/layer-list-tool/layer-list-tool.service.mjs +0 -61
- package/esm2022/lib/layer/layer-search/index.mjs +0 -2
- package/esm2022/lib/layer/layer-search/layer-search.component.mjs +0 -65
- package/esm2022/lib/layer/layer-unavailable/index.mjs +0 -3
- package/esm2022/lib/layer/layer-unavailable/layer-unavailable-list/layer-unavailable-list.component.mjs +0 -25
- package/esm2022/lib/layer/layer-unavailable/layer-unavailable.component.mjs +0 -35
- package/esm2022/lib/layer/layer-viewer/index.mjs +0 -3
- package/esm2022/lib/layer/layer-viewer/layer-viewer.component.mjs +0 -226
- package/esm2022/lib/layer/layer-viewer/layer-viewer.interface.mjs +0 -2
- package/esm2022/lib/layer/layer-viewer-bottom-actions/index.mjs +0 -2
- package/esm2022/lib/layer/layer-viewer-bottom-actions/layer-viewer-bottom-actions.component.mjs +0 -207
- package/esm2022/lib/layer/layer-visibility-button/index.mjs +0 -2
- package/esm2022/lib/layer/layer-visibility-button/layer-visibility-button.component.mjs +0 -83
- package/esm2022/lib/layer/layer.module.mjs +0 -107
- package/esm2022/lib/layer/shared/clusterParam.mjs +0 -2
- package/esm2022/lib/layer/shared/index.mjs +0 -6
- package/esm2022/lib/layer/shared/layer-controller.mjs +0 -316
- package/esm2022/lib/layer/shared/layer-selection.mjs +0 -38
- package/esm2022/lib/layer/shared/layer.enums.mjs +0 -2
- package/esm2022/lib/layer/shared/layer.service.mjs +0 -315
- package/esm2022/lib/layer/shared/layers/any-layer.interface.mjs +0 -2
- package/esm2022/lib/layer/shared/layers/any-layer.mjs +0 -2
- package/esm2022/lib/layer/shared/layers/image-layer.interface.mjs +0 -2
- package/esm2022/lib/layer/shared/layers/image-layer.mjs +0 -75
- package/esm2022/lib/layer/shared/layers/index.mjs +0 -18
- package/esm2022/lib/layer/shared/layers/layer-base.mjs +0 -199
- package/esm2022/lib/layer/shared/layers/layer-group.interface.mjs +0 -2
- package/esm2022/lib/layer/shared/layers/layer-group.mjs +0 -120
- package/esm2022/lib/layer/shared/layers/layer.interface.mjs +0 -7
- package/esm2022/lib/layer/shared/layers/layer.mjs +0 -178
- package/esm2022/lib/layer/shared/layers/legend.interface.mjs +0 -2
- package/esm2022/lib/layer/shared/layers/linked/index.mjs +0 -4
- package/esm2022/lib/layer/shared/layers/linked/linked-layer.interface.mjs +0 -12
- package/esm2022/lib/layer/shared/layers/linked/linked-layer.mjs +0 -242
- package/esm2022/lib/layer/shared/layers/linked/linked-layer.utils.mjs +0 -70
- package/esm2022/lib/layer/shared/layers/tile-layer.interface.mjs +0 -2
- package/esm2022/lib/layer/shared/layers/tile-layer.mjs +0 -55
- package/esm2022/lib/layer/shared/layers/vector-layer.interface.mjs +0 -2
- package/esm2022/lib/layer/shared/layers/vector-layer.mjs +0 -576
- package/esm2022/lib/layer/shared/layers/vectortile-layer.interface.mjs +0 -2
- package/esm2022/lib/layer/shared/layers/vectortile-layer.mjs +0 -112
- package/esm2022/lib/layer/track-feature-button/index.mjs +0 -2
- package/esm2022/lib/layer/track-feature-button/track-feature-button.component.mjs +0 -54
- package/esm2022/lib/layer/utils/image-watcher.mjs +0 -62
- package/esm2022/lib/layer/utils/index.mjs +0 -6
- package/esm2022/lib/layer/utils/layer.utils.mjs +0 -57
- package/esm2022/lib/layer/utils/outputLegend.mjs +0 -32
- package/esm2022/lib/layer/utils/tile-watcher.mjs +0 -52
- package/esm2022/lib/layer/utils/vector-watcher.mjs +0 -50
- package/esm2022/lib/map/baselayers-switcher/baselayers-switcher.animation.mjs +0 -20
- package/esm2022/lib/map/baselayers-switcher/baselayers-switcher.component.mjs +0 -87
- package/esm2022/lib/map/baselayers-switcher/index.mjs +0 -3
- package/esm2022/lib/map/baselayers-switcher/mini-basemap.component.mjs +0 -122
- package/esm2022/lib/map/geolocate-button/geolocate-button.component.mjs +0 -78
- package/esm2022/lib/map/geolocate-button/index.mjs +0 -2
- package/esm2022/lib/map/home-extent-button/home-extent-button.component.mjs +0 -73
- package/esm2022/lib/map/home-extent-button/home-extent-button.interface.mjs +0 -2
- package/esm2022/lib/map/home-extent-button/index.mjs +0 -3
- package/esm2022/lib/map/index.mjs +0 -14
- package/esm2022/lib/map/info-section/index.mjs +0 -2
- package/esm2022/lib/map/info-section/info-section.component.mjs +0 -15
- package/esm2022/lib/map/map-browser/index.mjs +0 -2
- package/esm2022/lib/map/map-browser/map-browser.component.mjs +0 -67
- package/esm2022/lib/map/map-center/index.mjs +0 -2
- package/esm2022/lib/map/map-center/map-center.component.mjs +0 -56
- package/esm2022/lib/map/map.module.mjs +0 -89
- package/esm2022/lib/map/menu-button/index.mjs +0 -2
- package/esm2022/lib/map/menu-button/menu-button.component.mjs +0 -57
- package/esm2022/lib/map/offline-button/index.mjs +0 -2
- package/esm2022/lib/map/offline-button/offline-button.component.mjs +0 -53
- package/esm2022/lib/map/rotation-button/index.mjs +0 -2
- package/esm2022/lib/map/rotation-button/rotation-button.component.mjs +0 -58
- package/esm2022/lib/map/shared/controllers/controller.mjs +0 -44
- package/esm2022/lib/map/shared/controllers/geolocation.interface.mjs +0 -8
- package/esm2022/lib/map/shared/controllers/geolocation.mjs +0 -431
- package/esm2022/lib/map/shared/controllers/index.mjs +0 -5
- package/esm2022/lib/map/shared/controllers/view.mjs +0 -361
- package/esm2022/lib/map/shared/hover-feature.directive.mjs +0 -481
- package/esm2022/lib/map/shared/index.mjs +0 -15
- package/esm2022/lib/map/shared/linkedLayers.utils.mjs +0 -238
- package/esm2022/lib/map/shared/map-pointer-position.directive.mjs +0 -122
- package/esm2022/lib/map/shared/map.abstract.mjs +0 -24
- package/esm2022/lib/map/shared/map.enums.mjs +0 -6
- package/esm2022/lib/map/shared/map.interface.mjs +0 -2
- package/esm2022/lib/map/shared/map.mjs +0 -201
- package/esm2022/lib/map/shared/map.service.mjs +0 -29
- package/esm2022/lib/map/shared/map.utils.mjs +0 -455
- package/esm2022/lib/map/shared/mapOffline.directive.mjs +0 -114
- package/esm2022/lib/map/shared/projection.interfaces.mjs +0 -2
- package/esm2022/lib/map/shared/projection.service.mjs +0 -67
- package/esm2022/lib/map/shared/projection.utils.mjs +0 -122
- package/esm2022/lib/map/swipe-control/index.mjs +0 -2
- package/esm2022/lib/map/swipe-control/swipe-control.component.mjs +0 -211
- package/esm2022/lib/map/utils/index.mjs +0 -2
- package/esm2022/lib/map/utils/layer-watcher.mjs +0 -112
- package/esm2022/lib/map/wake-lock-button/index.mjs +0 -2
- package/esm2022/lib/map/wake-lock-button/wake-lock-button.component.mjs +0 -103
- package/esm2022/lib/map/zoom-button/index.mjs +0 -2
- package/esm2022/lib/map/zoom-button/zoom-button.component.mjs +0 -35
- package/esm2022/lib/measure/index.mjs +0 -3
- package/esm2022/lib/measure/measure.module.mjs +0 -20
- package/esm2022/lib/measure/measurer/index.mjs +0 -6
- package/esm2022/lib/measure/measurer/measure-format.pipe.mjs +0 -40
- package/esm2022/lib/measure/measurer/measurer-dialog.component.mjs +0 -38
- package/esm2022/lib/measure/measurer/measurer-item.component.mjs +0 -143
- package/esm2022/lib/measure/measurer/measurer.component.mjs +0 -948
- package/esm2022/lib/measure/measurer/measurer.module.mjs +0 -20
- package/esm2022/lib/measure/shared/index.mjs +0 -4
- package/esm2022/lib/measure/shared/measure.enum.mjs +0 -37
- package/esm2022/lib/measure/shared/measure.interfaces.mjs +0 -2
- package/esm2022/lib/measure/shared/measure.utils.mjs +0 -497
- package/esm2022/lib/metadata/index.mjs +0 -4
- package/esm2022/lib/metadata/metadata-button/index.mjs +0 -2
- package/esm2022/lib/metadata/metadata-button/metadata-button.component.mjs +0 -96
- package/esm2022/lib/metadata/metadata.module.mjs +0 -29
- package/esm2022/lib/metadata/shared/index.mjs +0 -3
- package/esm2022/lib/metadata/shared/metadata.interface.mjs +0 -2
- package/esm2022/lib/metadata/shared/metadata.service.mjs +0 -18
- package/esm2022/lib/offline/geoDB/configFileToGeoDB.service.mjs +0 -130
- package/esm2022/lib/offline/geoDB/geoDB.enums.mjs +0 -6
- package/esm2022/lib/offline/geoDB/geoDB.interface.mjs +0 -2
- package/esm2022/lib/offline/geoDB/geoDB.service.mjs +0 -172
- package/esm2022/lib/offline/geoDB/index.mjs +0 -5
- package/esm2022/lib/offline/index.mjs +0 -6
- package/esm2022/lib/offline/layerDB/index.mjs +0 -3
- package/esm2022/lib/offline/layerDB/layerDB.interface.mjs +0 -2
- package/esm2022/lib/offline/layerDB/layerDB.service.mjs +0 -83
- package/esm2022/lib/offline/offline.interface.mjs +0 -2
- package/esm2022/lib/offline/offline.provider.mjs +0 -50
- package/esm2022/lib/offline/shared/geo-network.service.mjs +0 -79
- package/esm2022/lib/offline/shared/index.mjs +0 -2
- package/esm2022/lib/overlay/index.mjs +0 -2
- package/esm2022/lib/overlay/shared/index.mjs +0 -4
- package/esm2022/lib/overlay/shared/overlay.enum.mjs +0 -8
- package/esm2022/lib/overlay/shared/overlay.mjs +0 -139
- package/esm2022/lib/overlay/shared/overlay.utils.mjs +0 -17
- package/esm2022/lib/print/index.mjs +0 -4
- package/esm2022/lib/print/print/print.component.mjs +0 -116
- package/esm2022/lib/print/print-form/index.mjs +0 -2
- package/esm2022/lib/print/print-form/print-form.component.mjs +0 -320
- package/esm2022/lib/print/print.module.mjs +0 -20
- package/esm2022/lib/print/shared/geopdf.mjs +0 -68
- package/esm2022/lib/print/shared/index.mjs +0 -5
- package/esm2022/lib/print/shared/print.interface.mjs +0 -2
- package/esm2022/lib/print/shared/print.service.mjs +0 -1136
- package/esm2022/lib/print/shared/print.type.mjs +0 -30
- package/esm2022/lib/query/index.mjs +0 -2
- package/esm2022/lib/query/query.module.mjs +0 -27
- package/esm2022/lib/query/shared/index.mjs +0 -8
- package/esm2022/lib/query/shared/query-search-source.mjs +0 -35
- package/esm2022/lib/query/shared/query-search-source.providers.mjs +0 -22
- package/esm2022/lib/query/shared/query.directive.mjs +0 -290
- package/esm2022/lib/query/shared/query.enums.mjs +0 -32
- package/esm2022/lib/query/shared/query.interfaces.mjs +0 -2
- package/esm2022/lib/query/shared/query.service.mjs +0 -753
- package/esm2022/lib/query/shared/query.utils.mjs +0 -45
- package/esm2022/lib/search/index.mjs +0 -10
- package/esm2022/lib/search/search-bar/search-bar.component.mjs +0 -483
- package/esm2022/lib/search/search-bar/search-bar.module.mjs +0 -19
- package/esm2022/lib/search/search-results/index.mjs +0 -5
- package/esm2022/lib/search/search-results/save-feature-dialog.component.mjs +0 -101
- package/esm2022/lib/search/search-results/search-results-add-button.component.mjs +0 -433
- package/esm2022/lib/search/search-results/search-results-item.component.mjs +0 -119
- package/esm2022/lib/search/search-results/search-results.component.mjs +0 -297
- package/esm2022/lib/search/search-results/search-results.directive.mjs +0 -7
- package/esm2022/lib/search/search-results/search-results.module.mjs +0 -20
- package/esm2022/lib/search/search-selector/search-selector.component.mjs +0 -118
- package/esm2022/lib/search/search-selector/search-selector.module.mjs +0 -19
- package/esm2022/lib/search/search-settings/search-settings.component.mjs +0 -264
- package/esm2022/lib/search/search-settings/search-settings.module.mjs +0 -19
- package/esm2022/lib/search/search.module.mjs +0 -77
- package/esm2022/lib/search/shared/index.mjs +0 -10
- package/esm2022/lib/search/shared/search-pointer-summary.directive.mjs +0 -328
- package/esm2022/lib/search/shared/search-source-service.providers.mjs +0 -20
- package/esm2022/lib/search/shared/search-source.service.mjs +0 -56
- package/esm2022/lib/search/shared/search.enums.mjs +0 -4
- package/esm2022/lib/search/shared/search.interfaces.mjs +0 -2
- package/esm2022/lib/search/shared/search.provider.mjs +0 -20
- package/esm2022/lib/search/shared/search.service.mjs +0 -149
- package/esm2022/lib/search/shared/search.utils.mjs +0 -92
- package/esm2022/lib/search/shared/sources/cadastre.mjs +0 -142
- package/esm2022/lib/search/shared/sources/cadastre.providers.mjs +0 -32
- package/esm2022/lib/search/shared/sources/coordinates.interfaces.mjs +0 -2
- package/esm2022/lib/search/shared/sources/coordinates.mjs +0 -168
- package/esm2022/lib/search/shared/sources/coordinates.providers.mjs +0 -52
- package/esm2022/lib/search/shared/sources/icherche-icons.mjs +0 -32
- package/esm2022/lib/search/shared/sources/icherche.interfaces.mjs +0 -2
- package/esm2022/lib/search/shared/sources/icherche.mjs +0 -816
- package/esm2022/lib/search/shared/sources/icherche.providers.mjs +0 -87
- package/esm2022/lib/search/shared/sources/ilayer.interfaces.mjs +0 -2
- package/esm2022/lib/search/shared/sources/ilayer.mjs +0 -339
- package/esm2022/lib/search/shared/sources/ilayer.providers.mjs +0 -58
- package/esm2022/lib/search/shared/sources/index.mjs +0 -23
- package/esm2022/lib/search/shared/sources/nominatim.interfaces.mjs +0 -2
- package/esm2022/lib/search/shared/sources/nominatim.mjs +0 -263
- package/esm2022/lib/search/shared/sources/nominatim.providers.mjs +0 -31
- package/esm2022/lib/search/shared/sources/source.interfaces.mjs +0 -13
- package/esm2022/lib/search/shared/sources/source.mjs +0 -221
- package/esm2022/lib/search/shared/sources/storedqueries.interfaces.mjs +0 -2
- package/esm2022/lib/search/shared/sources/storedqueries.mjs +0 -454
- package/esm2022/lib/search/shared/sources/storedqueries.providers.mjs +0 -56
- package/esm2022/lib/search/shared/sources/workspace.interfaces.mjs +0 -2
- package/esm2022/lib/search/shared/sources/workspace.mjs +0 -192
- package/esm2022/lib/search/shared/sources/workspace.providers.mjs +0 -31
- package/esm2022/lib/style/index.mjs +0 -5
- package/esm2022/lib/style/shared/datasource/esri-style-generator.mjs +0 -360
- package/esm2022/lib/style/shared/datasource/index.mjs +0 -2
- package/esm2022/lib/style/shared/feature/feature-style.mjs +0 -162
- package/esm2022/lib/style/shared/feature/index.mjs +0 -2
- package/esm2022/lib/style/shared/font.enum.mjs +0 -17
- package/esm2022/lib/style/shared/index.mjs +0 -5
- package/esm2022/lib/style/shared/overlay/index.mjs +0 -3
- package/esm2022/lib/style/shared/overlay/overlay-marker-style.utils.mjs +0 -39
- package/esm2022/lib/style/shared/overlay/overlay-style.utils.mjs +0 -88
- package/esm2022/lib/style/shared/vector/commonVectorStyle.mjs +0 -78
- package/esm2022/lib/style/shared/vector/conversion.utils.mjs +0 -27
- package/esm2022/lib/style/shared/vector/index.mjs +0 -4
- package/esm2022/lib/style/shared/vector/vector-style.interface.mjs +0 -2
- package/esm2022/lib/style/style-list/index.mjs +0 -5
- package/esm2022/lib/style/style-list/style-list.interface.mjs +0 -2
- package/esm2022/lib/style/style-list/style-list.module.mjs +0 -23
- package/esm2022/lib/style/style-list/style-list.provider.mjs +0 -21
- package/esm2022/lib/style/style-list/style-list.service.mjs +0 -52
- package/esm2022/lib/style/style-modal/drawing/index.mjs +0 -2
- package/esm2022/lib/style/style-modal/drawing/style-modal-drawing.component.mjs +0 -193
- package/esm2022/lib/style/style-modal/index.mjs +0 -5
- package/esm2022/lib/style/style-modal/layer/index.mjs +0 -2
- package/esm2022/lib/style/style-modal/layer/style-modal-layer.component.mjs +0 -142
- package/esm2022/lib/style/style-modal/layer-button/index.mjs +0 -2
- package/esm2022/lib/style/style-modal/layer-button/style-modal-layer-button.component.mjs +0 -44
- package/esm2022/lib/style/style-modal/shared/index.mjs +0 -2
- package/esm2022/lib/style/style-modal/shared/style-modal.interface.mjs +0 -2
- package/esm2022/lib/style/style-service/draw-style.service.mjs +0 -255
- package/esm2022/lib/style/style-service/index.mjs +0 -3
- package/esm2022/lib/style/style-service/style.service.mjs +0 -393
- package/esm2022/lib/style/style.module.mjs +0 -46
- package/esm2022/lib/toast/index.mjs +0 -2
- package/esm2022/lib/toast/toast.component.mjs +0 -99
- package/esm2022/lib/toast/toast.module.mjs +0 -24
- package/esm2022/lib/utils/googleLinks.mjs +0 -13
- package/esm2022/lib/utils/id-generator.mjs +0 -112
- package/esm2022/lib/utils/index.mjs +0 -5
- package/esm2022/lib/utils/osmLinks.mjs +0 -9
- package/esm2022/lib/utils/propertyTypeDetector/index.mjs +0 -3
- package/esm2022/lib/utils/propertyTypeDetector/propertyTypeDetector.interface.mjs +0 -2
- package/esm2022/lib/utils/propertyTypeDetector/propertyTypeDetector.service.mjs +0 -64
- package/esm2022/lib/wkt/index.mjs +0 -2
- package/esm2022/lib/wkt/shared/index.mjs +0 -2
- package/esm2022/lib/wkt/shared/wkt.service.mjs +0 -235
- package/esm2022/lib/wkt/wkt.module.mjs +0 -25
- package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.component.mjs +0 -36
- package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.module.mjs +0 -19
- package/esm2022/lib/workspace/confirmation-popup/index.mjs +0 -3
- package/esm2022/lib/workspace/index.mjs +0 -8
- package/esm2022/lib/workspace/shared/edition-workspace.mjs +0 -301
- package/esm2022/lib/workspace/shared/edition-workspace.service.mjs +0 -720
- package/esm2022/lib/workspace/shared/feature-workspace.mjs +0 -41
- package/esm2022/lib/workspace/shared/feature-workspace.service.mjs +0 -113
- package/esm2022/lib/workspace/shared/index.mjs +0 -8
- package/esm2022/lib/workspace/shared/wfs-workspace.mjs +0 -41
- package/esm2022/lib/workspace/shared/wfs-workspace.service.mjs +0 -121
- package/esm2022/lib/workspace/shared/wms-workspace.service.mjs +0 -248
- package/esm2022/lib/workspace/shared/workspace.utils.mjs +0 -188
- package/esm2022/lib/workspace/widgets/index.mjs +0 -4
- package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.component.mjs +0 -48
- package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.module.mjs +0 -19
- package/esm2022/lib/workspace/widgets/widgets.mjs +0 -15
- package/esm2022/lib/workspace/workspace-selector/workspace-selector.directive.mjs +0 -172
- package/esm2022/lib/workspace/workspace-selector/workspace-selector.module.mjs +0 -19
- package/esm2022/lib/workspace/workspace-updator/workspace-updator.directive.mjs +0 -137
- package/esm2022/lib/workspace/workspace-updator/workspace-updator.module.mjs +0 -19
- package/esm2022/lib/workspace/workspace.module.mjs +0 -32
- package/esm2022/public_api.mjs +0 -56
|
@@ -1,136 +0,0 @@
|
|
|
1
|
-
import { AsyncPipe, NgFor, NgIf } from '@angular/common';
|
|
2
|
-
import { Component, Inject, Optional } from '@angular/core';
|
|
3
|
-
import { FormsModule, ReactiveFormsModule, UntypedFormBuilder, Validators } from '@angular/forms';
|
|
4
|
-
import { MatAutocompleteModule } from '@angular/material/autocomplete';
|
|
5
|
-
import { MatButtonModule } from '@angular/material/button';
|
|
6
|
-
import { MatOptionModule } from '@angular/material/core';
|
|
7
|
-
import { MAT_DIALOG_DATA, MatDialogActions, MatDialogContent, MatDialogRef, MatDialogTitle } from '@angular/material/dialog';
|
|
8
|
-
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
9
|
-
import { MatInputModule } from '@angular/material/input';
|
|
10
|
-
import { MatListModule } from '@angular/material/list';
|
|
11
|
-
import { MatSelectModule } from '@angular/material/select';
|
|
12
|
-
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
13
|
-
import { ConfigService } from '@igo2/core/config';
|
|
14
|
-
import { LanguageService } from '@igo2/core/language';
|
|
15
|
-
import { IgoLanguageModule } from '@igo2/core/language';
|
|
16
|
-
import { BehaviorSubject } from 'rxjs';
|
|
17
|
-
import { TypeCapabilities } from '../../datasource/shared/capabilities.interface';
|
|
18
|
-
import * as i0 from "@angular/core";
|
|
19
|
-
import * as i1 from "@angular/forms";
|
|
20
|
-
import * as i2 from "@igo2/core/language";
|
|
21
|
-
import * as i3 from "@igo2/core/config";
|
|
22
|
-
import * as i4 from "@angular/material/dialog";
|
|
23
|
-
import * as i5 from "@angular/material/form-field";
|
|
24
|
-
import * as i6 from "@angular/material/input";
|
|
25
|
-
import * as i7 from "@angular/material/autocomplete";
|
|
26
|
-
import * as i8 from "@angular/material/core";
|
|
27
|
-
import * as i9 from "@angular/material/tooltip";
|
|
28
|
-
import * as i10 from "@angular/material/select";
|
|
29
|
-
import * as i11 from "@angular/material/list";
|
|
30
|
-
import * as i12 from "@angular/material/button";
|
|
31
|
-
import * as i13 from "@ngx-translate/core";
|
|
32
|
-
export class AddCatalogDialogComponent {
|
|
33
|
-
formBuilder;
|
|
34
|
-
languageService;
|
|
35
|
-
configService;
|
|
36
|
-
dialogRef;
|
|
37
|
-
data;
|
|
38
|
-
form;
|
|
39
|
-
defaultAddedCatalogType = 'wms';
|
|
40
|
-
addedCatalogType$$;
|
|
41
|
-
predefinedCatalogsList$ = new BehaviorSubject([]);
|
|
42
|
-
typeCapabilities;
|
|
43
|
-
predefinedCatalogs = [];
|
|
44
|
-
store;
|
|
45
|
-
error = false;
|
|
46
|
-
addedCatalog;
|
|
47
|
-
emailAddress;
|
|
48
|
-
storeViewAll$$;
|
|
49
|
-
constructor(formBuilder, languageService, configService, dialogRef, data) {
|
|
50
|
-
this.formBuilder = formBuilder;
|
|
51
|
-
this.languageService = languageService;
|
|
52
|
-
this.configService = configService;
|
|
53
|
-
this.dialogRef = dialogRef;
|
|
54
|
-
this.data = data;
|
|
55
|
-
this.store = data.store;
|
|
56
|
-
this.predefinedCatalogs = data.predefinedCatalogs;
|
|
57
|
-
this.error = data.error;
|
|
58
|
-
this.addedCatalog = data.addedCatalog;
|
|
59
|
-
this.form = this.formBuilder.group({
|
|
60
|
-
id: ['', []],
|
|
61
|
-
title: ['', []],
|
|
62
|
-
url: ['', [Validators.required]],
|
|
63
|
-
type: [this.defaultAddedCatalogType, [Validators.required]]
|
|
64
|
-
});
|
|
65
|
-
}
|
|
66
|
-
ngOnInit() {
|
|
67
|
-
this.store.state.clear();
|
|
68
|
-
this.typeCapabilities = Object.keys(TypeCapabilities);
|
|
69
|
-
this.addedCatalogType$$ = this.form
|
|
70
|
-
.get('type')
|
|
71
|
-
.valueChanges.subscribe((value) => {
|
|
72
|
-
if (value === 'wmts') {
|
|
73
|
-
this.form.get('title').setValidators(Validators.required);
|
|
74
|
-
}
|
|
75
|
-
else {
|
|
76
|
-
this.form.get('title').setValidators([]);
|
|
77
|
-
}
|
|
78
|
-
this.form.get('title').updateValueAndValidity();
|
|
79
|
-
});
|
|
80
|
-
this.computePredefinedCatalogList();
|
|
81
|
-
this.storeViewAll$$ = this.store.view
|
|
82
|
-
.all$()
|
|
83
|
-
.subscribe(() => this.computePredefinedCatalogList());
|
|
84
|
-
this.emailAddress = this.configService.getConfig('emailAddress');
|
|
85
|
-
}
|
|
86
|
-
ngOnDestroy() {
|
|
87
|
-
this.addedCatalogType$$.unsubscribe();
|
|
88
|
-
this.storeViewAll$$.unsubscribe();
|
|
89
|
-
}
|
|
90
|
-
changeUrlOrTitle(catalog) {
|
|
91
|
-
this.form.patchValue(catalog);
|
|
92
|
-
this.error = false;
|
|
93
|
-
this.computePredefinedCatalogList();
|
|
94
|
-
}
|
|
95
|
-
computePredefinedCatalogList() {
|
|
96
|
-
this.predefinedCatalogsList$.next(this.predefinedCatalogs.filter((c) => !this.store.get(c.id)));
|
|
97
|
-
}
|
|
98
|
-
addCatalog(addedCatalog) {
|
|
99
|
-
this.error = false;
|
|
100
|
-
this.dialogRef.close(addedCatalog);
|
|
101
|
-
}
|
|
102
|
-
cancel() {
|
|
103
|
-
this.error = false;
|
|
104
|
-
this.dialogRef.close();
|
|
105
|
-
}
|
|
106
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AddCatalogDialogComponent, deps: [{ token: i1.UntypedFormBuilder }, { token: i2.LanguageService }, { token: i3.ConfigService }, { token: i4.MatDialogRef }, { token: MAT_DIALOG_DATA, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
107
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AddCatalogDialogComponent, isStandalone: true, selector: "igo-add-catalog-dialog", ngImport: i0, template: "<h1 mat-dialog-title class=\"mat-typography\">\n {{ 'igo.geo.catalog.library.addTitle' | translate }}\n</h1>\n<div mat-dialog-content class=\"mat-typography\">\n <form class=\"igo-form\" [formGroup]=\"form\">\n <div class=\"igo-input-container\">\n <mat-form-field>\n <input\n type=\"text\"\n formControlName=\"title\"\n placeholder=\"{{ 'igo.geo.printForm.title' | translate }}\"\n matInput\n [matAutocomplete]=\"auto2\"\n />\n <mat-autocomplete\n #auto2=\"matAutocomplete\"\n (optionSelected)=\"changeUrlOrTitle($event.option.value)\"\n >\n <mat-option\n *ngFor=\"let predefinedCatalog of predefinedCatalogsList$ | async\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"predefinedCatalog.title\"\n [value]=\"predefinedCatalog\"\n >\n {{ predefinedCatalog.title }}\n </mat-option>\n </mat-autocomplete>\n </mat-form-field>\n </div>\n <div class=\"igo-input-container\">\n <mat-form-field>\n <input\n type=\"text\"\n formControlName=\"url\"\n placeholder=\"URL\"\n matInput\n [matAutocomplete]=\"auto\"\n />\n <mat-autocomplete\n #auto=\"matAutocomplete\"\n (optionSelected)=\"changeUrlOrTitle($event.option.value)\"\n >\n <mat-option\n *ngFor=\"let predefinedCatalog of predefinedCatalogsList$ | async\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"predefinedCatalog.url\"\n [value]=\"predefinedCatalog\"\n >\n {{ predefinedCatalog.url }}\n </mat-option>\n </mat-autocomplete>\n </mat-form-field>\n </div>\n <div class=\"igo-input-container\">\n <mat-form-field>\n <mat-select formControlName=\"type\" placeholder=\"Type\">\n <mat-option\n *ngFor=\"let type of typeCapabilities\"\n [value]=\"type\"\n (click)=\"$event.stopPropagation()\"\n >\n <p matListItemTitle>{{ type }}</p>\n </mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n </form>\n <span *ngIf=\"error && addedCatalog && emailAddress\">\n <p class=\"error\">\n {{\n languageService.translate.instant(\n 'igo.geo.catalog.externalProvider.unavailableWithEmail',\n { value: addedCatalog.url, email: emailAddress }\n )\n }}\n </p>\n </span>\n <span *ngIf=\"error && addedCatalog && !emailAddress\">\n <p class=\"error\">\n {{\n languageService.translate.instant('igo.geo.catalog.unavailable', {\n value: addedCatalog.url\n })\n }}\n </p>\n </span>\n</div>\n<div mat-dialog-actions style=\"justify-content: center\">\n <div class=\"igo-form-button-group add-catalog-button-top-padding\">\n <button mat-raised-button type=\"button\" (click)=\"cancel()\">\n {{ 'igo.geo.catalog.library.cancel' | translate }}\n </button>\n <button\n id=\"addCatalogBtnDialog\"\n mat-raised-button\n type=\"button\"\n color=\"primary\"\n [disabled]=\"!form.valid\"\n (click)=\"addCatalog(form.value)\"\n >\n {{ 'igo.geo.catalog.library.add' | translate }}\n </button>\n </div>\n</div>\n", styles: ["mat-form-field{width:100%}.add-catalog-button-top-padding{padding-top:25px}.igo-form{padding:10px 5px 5px}.igo-form-button-group{text-align:center}button{cursor:pointer}button#addCatalogBtnDialog[disabled=true]{cursor:default;background-color:#0000001f;color:#00000042}.error{color:red}\n"], dependencies: [{ kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "ngmodule", type: MatAutocompleteModule }, { kind: "component", type: i7.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i8.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i7.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: MatOptionModule }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i9.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i10.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "ngmodule", type: MatListModule }, { kind: "directive", type: i11.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i12.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: i13.TranslatePipe, name: "translate" }] });
|
|
108
|
-
}
|
|
109
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AddCatalogDialogComponent, decorators: [{
|
|
110
|
-
type: Component,
|
|
111
|
-
args: [{ selector: 'igo-add-catalog-dialog', standalone: true, imports: [
|
|
112
|
-
MatDialogTitle,
|
|
113
|
-
MatDialogContent,
|
|
114
|
-
FormsModule,
|
|
115
|
-
ReactiveFormsModule,
|
|
116
|
-
MatFormFieldModule,
|
|
117
|
-
MatInputModule,
|
|
118
|
-
MatAutocompleteModule,
|
|
119
|
-
NgFor,
|
|
120
|
-
MatOptionModule,
|
|
121
|
-
MatTooltipModule,
|
|
122
|
-
MatSelectModule,
|
|
123
|
-
MatListModule,
|
|
124
|
-
NgIf,
|
|
125
|
-
MatDialogActions,
|
|
126
|
-
MatButtonModule,
|
|
127
|
-
AsyncPipe,
|
|
128
|
-
IgoLanguageModule
|
|
129
|
-
], template: "<h1 mat-dialog-title class=\"mat-typography\">\n {{ 'igo.geo.catalog.library.addTitle' | translate }}\n</h1>\n<div mat-dialog-content class=\"mat-typography\">\n <form class=\"igo-form\" [formGroup]=\"form\">\n <div class=\"igo-input-container\">\n <mat-form-field>\n <input\n type=\"text\"\n formControlName=\"title\"\n placeholder=\"{{ 'igo.geo.printForm.title' | translate }}\"\n matInput\n [matAutocomplete]=\"auto2\"\n />\n <mat-autocomplete\n #auto2=\"matAutocomplete\"\n (optionSelected)=\"changeUrlOrTitle($event.option.value)\"\n >\n <mat-option\n *ngFor=\"let predefinedCatalog of predefinedCatalogsList$ | async\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"predefinedCatalog.title\"\n [value]=\"predefinedCatalog\"\n >\n {{ predefinedCatalog.title }}\n </mat-option>\n </mat-autocomplete>\n </mat-form-field>\n </div>\n <div class=\"igo-input-container\">\n <mat-form-field>\n <input\n type=\"text\"\n formControlName=\"url\"\n placeholder=\"URL\"\n matInput\n [matAutocomplete]=\"auto\"\n />\n <mat-autocomplete\n #auto=\"matAutocomplete\"\n (optionSelected)=\"changeUrlOrTitle($event.option.value)\"\n >\n <mat-option\n *ngFor=\"let predefinedCatalog of predefinedCatalogsList$ | async\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"predefinedCatalog.url\"\n [value]=\"predefinedCatalog\"\n >\n {{ predefinedCatalog.url }}\n </mat-option>\n </mat-autocomplete>\n </mat-form-field>\n </div>\n <div class=\"igo-input-container\">\n <mat-form-field>\n <mat-select formControlName=\"type\" placeholder=\"Type\">\n <mat-option\n *ngFor=\"let type of typeCapabilities\"\n [value]=\"type\"\n (click)=\"$event.stopPropagation()\"\n >\n <p matListItemTitle>{{ type }}</p>\n </mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n </form>\n <span *ngIf=\"error && addedCatalog && emailAddress\">\n <p class=\"error\">\n {{\n languageService.translate.instant(\n 'igo.geo.catalog.externalProvider.unavailableWithEmail',\n { value: addedCatalog.url, email: emailAddress }\n )\n }}\n </p>\n </span>\n <span *ngIf=\"error && addedCatalog && !emailAddress\">\n <p class=\"error\">\n {{\n languageService.translate.instant('igo.geo.catalog.unavailable', {\n value: addedCatalog.url\n })\n }}\n </p>\n </span>\n</div>\n<div mat-dialog-actions style=\"justify-content: center\">\n <div class=\"igo-form-button-group add-catalog-button-top-padding\">\n <button mat-raised-button type=\"button\" (click)=\"cancel()\">\n {{ 'igo.geo.catalog.library.cancel' | translate }}\n </button>\n <button\n id=\"addCatalogBtnDialog\"\n mat-raised-button\n type=\"button\"\n color=\"primary\"\n [disabled]=\"!form.valid\"\n (click)=\"addCatalog(form.value)\"\n >\n {{ 'igo.geo.catalog.library.add' | translate }}\n </button>\n </div>\n</div>\n", styles: ["mat-form-field{width:100%}.add-catalog-button-top-padding{padding-top:25px}.igo-form{padding:10px 5px 5px}.igo-form-button-group{text-align:center}button{cursor:pointer}button#addCatalogBtnDialog[disabled=true]{cursor:default;background-color:#0000001f;color:#00000042}.error{color:red}\n"] }]
|
|
130
|
-
}], ctorParameters: () => [{ type: i1.UntypedFormBuilder }, { type: i2.LanguageService }, { type: i3.ConfigService }, { type: i4.MatDialogRef }, { type: undefined, decorators: [{
|
|
131
|
-
type: Optional
|
|
132
|
-
}, {
|
|
133
|
-
type: Inject,
|
|
134
|
-
args: [MAT_DIALOG_DATA]
|
|
135
|
-
}] }] });
|
|
136
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWNhdGFsb2ctZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2NhdGFsb2cvY2F0YWxvZy1saWJyYXJ5L2FkZC1jYXRhbG9nLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9jYXRhbG9nL2NhdGFsb2ctbGlicmFyeS9hZGQtY2F0YWxvZy1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQXFCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQ0wsV0FBVyxFQUNYLG1CQUFtQixFQUNuQixrQkFBa0IsRUFFbEIsVUFBVSxFQUNYLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN6RCxPQUFPLEVBQ0wsZUFBZSxFQUNmLGdCQUFnQixFQUNoQixnQkFBZ0IsRUFDaEIsWUFBWSxFQUNaLGNBQWMsRUFDZixNQUFNLDBCQUEwQixDQUFDO0FBQ2xDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FB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RSxDQUFDO0lBQ3pCLENBQUM7d0dBdkZVLHlCQUF5Qiw0SUFtQjFCLGVBQWU7NEZBbkJkLHlCQUF5QixrRkM1RHRDLG96R0F3R0EsMFZEL0RJLGNBQWMsK0hBQ2QsZ0JBQWdCLHdHQUNoQixXQUFXLDJwQkFDWCxtQkFBbUIsK1VBQ25CLGtCQUFrQix5T0FDbEIsY0FBYywwV0FDZCxxQkFBcUIseTFCQUNyQixLQUFLLGtIQUNMLGVBQWUsOEJBQ2YsZ0JBQWdCLDRUQUNoQixlQUFlLG1oQkFDZixhQUFhLGtIQUNiLElBQUksNkZBQ0osZ0JBQWdCLDJIQUNoQixlQUFlLHdOQUNmLFNBQVMsNkNBQ1QsaUJBQWlCOzs0RkFHUix5QkFBeUI7a0JBekJyQyxTQUFTOytCQUNFLHdCQUF3QixjQUd0QixJQUFJLFdBQ1A7d0JBQ1AsY0FBYzt3QkFDZCxnQkFBZ0I7d0JBQ2hCLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixrQkFBa0I7d0JBQ2xCLGNBQWM7d0JBQ2QscUJBQXFCO3dCQUNyQixLQUFLO3dCQUNMLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsSUFBSTt3QkFDSixnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2YsU0FBUzt3QkFDVCxpQkFBaUI7cUJBQ2xCOzswQkFvQkUsUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXN5bmNQaXBlLCBOZ0ZvciwgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgT25EZXN0cm95LCBPbkluaXQsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBGb3Jtc01vZHVsZSxcbiAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgVW50eXBlZEZvcm1CdWlsZGVyLFxuICBVbnR5cGVkRm9ybUdyb3VwLFxuICBWYWxpZGF0b3JzXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdEF1dG9jb21wbGV0ZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2F1dG9jb21wbGV0ZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0T3B0aW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQge1xuICBNQVRfRElBTE9HX0RBVEEsXG4gIE1hdERpYWxvZ0FjdGlvbnMsXG4gIE1hdERpYWxvZ0NvbnRlbnQsXG4gIE1hdERpYWxvZ1JlZixcbiAgTWF0RGlhbG9nVGl0bGVcbn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBNYXRMaXN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbGlzdCc7XG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuXG5pbXBvcnQgeyBFbnRpdHlTdG9yZSB9IGZyb20gJ0BpZ28yL2NvbW1vbi9lbnRpdHknO1xuaW1wb3J0IHsgQ29uZmlnU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUvY29uZmlnJztcbmltcG9ydCB7IExhbmd1YWdlU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUvbGFuZ3VhZ2UnO1xuaW1wb3J0IHsgSWdvTGFuZ3VhZ2VNb2R1bGUgfSBmcm9tICdAaWdvMi9jb3JlL2xhbmd1YWdlJztcblxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgVHlwZUNhcGFiaWxpdGllcyB9IGZyb20gJy4uLy4uL2RhdGFzb3VyY2Uvc2hhcmVkL2NhcGFiaWxpdGllcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ2F0YWxvZyB9IGZyb20gJy4uL3NoYXJlZC9jYXRhbG9nLmFic3RyYWN0JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaWdvLWFkZC1jYXRhbG9nLWRpYWxvZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9hZGQtY2F0YWxvZy1kaWFsb2cuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hZGQtY2F0YWxvZy1kaWFsb2cuY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE1hdERpYWxvZ1RpdGxlLFxuICAgIE1hdERpYWxvZ0NvbnRlbnQsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgTWF0QXV0b2NvbXBsZXRlTW9kdWxlLFxuICAgIE5nRm9yLFxuICAgIE1hdE9wdGlvbk1vZHVsZSxcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxuICAgIE1hdFNlbGVjdE1vZHVsZSxcbiAgICBNYXRMaXN0TW9kdWxlLFxuICAgIE5nSWYsXG4gICAgTWF0RGlhbG9nQWN0aW9ucyxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgQXN5bmNQaXBlLFxuICAgIElnb0xhbmd1YWdlTW9kdWxlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQWRkQ2F0YWxvZ0RpYWxvZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHVibGljIGZvcm06IFVudHlwZWRGb3JtR3JvdXA7XG4gIHByaXZhdGUgZGVmYXVsdEFkZGVkQ2F0YWxvZ1R5cGUgPSAnd21zJztcbiAgcHJpdmF0ZSBhZGRlZENhdGFsb2dUeXBlJCQ6IFN1YnNjcmlwdGlvbjtcbiAgcHVibGljIHByZWRlZmluZWRDYXRhbG9nc0xpc3QkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxDYXRhbG9nW10+KFtdKTtcbiAgdHlwZUNhcGFiaWxpdGllczogc3RyaW5nW107XG4gIHByZWRlZmluZWRDYXRhbG9nczogQ2F0YWxvZ1tdID0gW107XG4gIHN0b3JlOiBFbnRpdHlTdG9yZTxDYXRhbG9nPjtcbiAgZXJyb3IgPSBmYWxzZTtcbiAgYWRkZWRDYXRhbG9nOiBDYXRhbG9nO1xuICBlbWFpbEFkZHJlc3M6IHN0cmluZztcbiAgcHJpdmF0ZSBzdG9yZVZpZXdBbGwkJDogU3Vic2NyaXB0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZm9ybUJ1aWxkZXI6IFVudHlwZWRGb3JtQnVpbGRlcixcbiAgICBwdWJsaWMgbGFuZ3VhZ2VTZXJ2aWNlOiBMYW5ndWFnZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb25maWdTZXJ2aWNlOiBDb25maWdTZXJ2aWNlLFxuICAgIHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxBZGRDYXRhbG9nRGlhbG9nQ29tcG9uZW50PixcbiAgICBAT3B0aW9uYWwoKVxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKVxuICAgIHB1YmxpYyBkYXRhOiB7XG4gICAgICBwcmVkZWZpbmVkQ2F0YWxvZ3M6IENhdGFsb2dbXTtcbiAgICAgIHN0b3JlOiBFbnRpdHlTdG9yZTxDYXRhbG9nPjtcbiAgICAgIGVycm9yOiBib29sZWFuO1xuICAgICAgYWRkZWRDYXRhbG9nOiBDYXRhbG9nO1xuICAgIH1cbiAgKSB7XG4gICAgdGhpcy5zdG9yZSA9IGRhdGEuc3RvcmU7XG4gICAgdGhpcy5wcmVkZWZpbmVkQ2F0YWxvZ3MgPSBkYXRhLnByZWRlZmluZWRDYXRhbG9ncztcbiAgICB0aGlzLmVycm9yID0gZGF0YS5lcnJvcjtcbiAgICB0aGlzLmFkZGVkQ2F0YWxvZyA9IGRhdGEuYWRkZWRDYXRhbG9nO1xuICAgIHRoaXMuZm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgaWQ6IFsnJywgW11dLFxuICAgICAgdGl0bGU6IFsnJywgW11dLFxuICAgICAgdXJsOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXG4gICAgICB0eXBlOiBbdGhpcy5kZWZhdWx0QWRkZWRDYXRhbG9nVHlwZSwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXVxuICAgIH0pO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5zdG9yZS5zdGF0ZS5jbGVhcigpO1xuICAgIHRoaXMudHlwZUNhcGFiaWxpdGllcyA9IE9iamVjdC5rZXlzKFR5cGVDYXBhYmlsaXRpZXMpO1xuXG4gICAgdGhpcy5hZGRlZENhdGFsb2dUeXBlJCQgPSB0aGlzLmZvcm1cbiAgICAgIC5nZXQoJ3R5cGUnKVxuICAgICAgLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgIGlmICh2YWx1ZSA9PT0gJ3dtdHMnKSB7XG4gICAgICAgICAgdGhpcy5mb3JtLmdldCgndGl0bGUnKS5zZXRWYWxpZGF0b3JzKFZhbGlkYXRvcnMucmVxdWlyZWQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuZm9ybS5nZXQoJ3RpdGxlJykuc2V0VmFsaWRhdG9ycyhbXSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5mb3JtLmdldCgndGl0bGUnKS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gICAgICB9KTtcblxuICAgIHRoaXMuY29tcHV0ZVByZWRlZmluZWRDYXRhbG9nTGlzdCgpO1xuICAgIHRoaXMuc3RvcmVWaWV3QWxsJCQgPSB0aGlzLnN0b3JlLnZpZXdcbiAgICAgIC5hbGwkKClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jb21wdXRlUHJlZGVmaW5lZENhdGFsb2dMaXN0KCkpO1xuXG4gICAgdGhpcy5lbWFpbEFkZHJlc3MgPSB0aGlzLmNvbmZpZ1NlcnZpY2UuZ2V0Q29uZmlnKCdlbWFpbEFkZHJlc3MnKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuYWRkZWRDYXRhbG9nVHlwZSQkLnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5zdG9yZVZpZXdBbGwkJC51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgY2hhbmdlVXJsT3JUaXRsZShjYXRhbG9nOiBDYXRhbG9nKSB7XG4gICAgdGhpcy5mb3JtLnBhdGNoVmFsdWUoY2F0YWxvZyk7XG4gICAgdGhpcy5lcnJvciA9IGZhbHNlO1xuICAgIHRoaXMuY29tcHV0ZVByZWRlZmluZWRDYXRhbG9nTGlzdCgpO1xuICB9XG5cbiAgY29tcHV0ZVByZWRlZmluZWRDYXRhbG9nTGlzdCgpIHtcbiAgICB0aGlzLnByZWRlZmluZWRDYXRhbG9nc0xpc3QkLm5leHQoXG4gICAgICB0aGlzLnByZWRlZmluZWRDYXRhbG9ncy5maWx0ZXIoKGMpID0+ICF0aGlzLnN0b3JlLmdldChjLmlkKSlcbiAgICApO1xuICB9XG5cbiAgYWRkQ2F0YWxvZyhhZGRlZENhdGFsb2c6IENhdGFsb2cpIHtcbiAgICB0aGlzLmVycm9yID0gZmFsc2U7XG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoYWRkZWRDYXRhbG9nKTtcbiAgfVxuXG4gIGNhbmNlbCgpIHtcbiAgICB0aGlzLmVycm9yID0gZmFsc2U7XG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoKTtcbiAgfVxufVxuIiwiPGgxIG1hdC1kaWFsb2ctdGl0bGUgY2xhc3M9XCJtYXQtdHlwb2dyYXBoeVwiPlxuICB7eyAnaWdvLmdlby5jYXRhbG9nLmxpYnJhcnkuYWRkVGl0bGUnIHwgdHJhbnNsYXRlIH19XG48L2gxPlxuPGRpdiBtYXQtZGlhbG9nLWNvbnRlbnQgY2xhc3M9XCJtYXQtdHlwb2dyYXBoeVwiPlxuICA8Zm9ybSBjbGFzcz1cImlnby1mb3JtXCIgW2Zvcm1Hcm91cF09XCJmb3JtXCI+XG4gICAgPGRpdiBjbGFzcz1cImlnby1pbnB1dC1jb250YWluZXJcIj5cbiAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInRpdGxlXCJcbiAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7ICdpZ28uZ2VvLnByaW50Rm9ybS50aXRsZScgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICAgIG1hdElucHV0XG4gICAgICAgICAgW21hdEF1dG9jb21wbGV0ZV09XCJhdXRvMlwiXG4gICAgICAgIC8+XG4gICAgICAgIDxtYXQtYXV0b2NvbXBsZXRlXG4gICAgICAgICAgI2F1dG8yPVwibWF0QXV0b2NvbXBsZXRlXCJcbiAgICAgICAgICAob3B0aW9uU2VsZWN0ZWQpPVwiY2hhbmdlVXJsT3JUaXRsZSgkZXZlbnQub3B0aW9uLnZhbHVlKVwiXG4gICAgICAgID5cbiAgICAgICAgICA8bWF0LW9wdGlvblxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IHByZWRlZmluZWRDYXRhbG9nIG9mIHByZWRlZmluZWRDYXRhbG9nc0xpc3QkIHwgYXN5bmNcIlxuICAgICAgICAgICAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXG4gICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJwcmVkZWZpbmVkQ2F0YWxvZy50aXRsZVwiXG4gICAgICAgICAgICBbdmFsdWVdPVwicHJlZGVmaW5lZENhdGFsb2dcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt7IHByZWRlZmluZWRDYXRhbG9nLnRpdGxlIH19XG4gICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICA8L21hdC1hdXRvY29tcGxldGU+XG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJpZ28taW5wdXQtY29udGFpbmVyXCI+XG4gICAgICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJ1cmxcIlxuICAgICAgICAgIHBsYWNlaG9sZGVyPVwiVVJMXCJcbiAgICAgICAgICBtYXRJbnB1dFxuICAgICAgICAgIFttYXRBdXRvY29tcGxldGVdPVwiYXV0b1wiXG4gICAgICAgIC8+XG4gICAgICAgIDxtYXQtYXV0b2NvbXBsZXRlXG4gICAgICAgICAgI2F1dG89XCJtYXRBdXRvY29tcGxldGVcIlxuICAgICAgICAgIChvcHRpb25TZWxlY3RlZCk9XCJjaGFuZ2VVcmxPclRpdGxlKCRldmVudC5vcHRpb24udmFsdWUpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxtYXQtb3B0aW9uXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgcHJlZGVmaW5lZENhdGFsb2cgb2YgcHJlZGVmaW5lZENhdGFsb2dzTGlzdCQgfCBhc3luY1wiXG4gICAgICAgICAgICBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcbiAgICAgICAgICAgIFttYXRUb29sdGlwXT1cInByZWRlZmluZWRDYXRhbG9nLnVybFwiXG4gICAgICAgICAgICBbdmFsdWVdPVwicHJlZGVmaW5lZENhdGFsb2dcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt7IHByZWRlZmluZWRDYXRhbG9nLnVybCB9fVxuICAgICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgICAgPC9tYXQtYXV0b2NvbXBsZXRlPlxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiaWdvLWlucHV0LWNvbnRhaW5lclwiPlxuICAgICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgICA8bWF0LXNlbGVjdCBmb3JtQ29udHJvbE5hbWU9XCJ0eXBlXCIgcGxhY2Vob2xkZXI9XCJUeXBlXCI+XG4gICAgICAgICAgPG1hdC1vcHRpb25cbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCB0eXBlIG9mIHR5cGVDYXBhYmlsaXRpZXNcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cInR5cGVcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHAgbWF0TGlzdEl0ZW1UaXRsZT57eyB0eXBlIH19PC9wPlxuICAgICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgICAgPC9tYXQtc2VsZWN0PlxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICA8L2Rpdj5cbiAgPC9mb3JtPlxuICA8c3BhbiAqbmdJZj1cImVycm9yICYmIGFkZGVkQ2F0YWxvZyAmJiBlbWFpbEFkZHJlc3NcIj5cbiAgICA8cCBjbGFzcz1cImVycm9yXCI+XG4gICAgICB7e1xuICAgICAgICBsYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgJ2lnby5nZW8uY2F0YWxvZy5leHRlcm5hbFByb3ZpZGVyLnVuYXZhaWxhYmxlV2l0aEVtYWlsJyxcbiAgICAgICAgICB7IHZhbHVlOiBhZGRlZENhdGFsb2cudXJsLCBlbWFpbDogZW1haWxBZGRyZXNzIH1cbiAgICAgICAgKVxuICAgICAgfX1cbiAgICA8L3A+XG4gIDwvc3Bhbj5cbiAgPHNwYW4gKm5nSWY9XCJlcnJvciAmJiBhZGRlZENhdGFsb2cgJiYgIWVtYWlsQWRkcmVzc1wiPlxuICAgIDxwIGNsYXNzPVwiZXJyb3JcIj5cbiAgICAgIHt7XG4gICAgICAgIGxhbmd1YWdlU2VydmljZS50cmFuc2xhdGUuaW5zdGFudCgnaWdvLmdlby5jYXRhbG9nLnVuYXZhaWxhYmxlJywge1xuICAgICAgICAgIHZhbHVlOiBhZGRlZENhdGFsb2cudXJsXG4gICAgICAgIH0pXG4gICAgICB9fVxuICAgIDwvcD5cbiAgPC9zcGFuPlxuPC9kaXY+XG48ZGl2IG1hdC1kaWFsb2ctYWN0aW9ucyBzdHlsZT1cImp1c3RpZnktY29udGVudDogY2VudGVyXCI+XG4gIDxkaXYgY2xhc3M9XCJpZ28tZm9ybS1idXR0b24tZ3JvdXAgYWRkLWNhdGFsb2ctYnV0dG9uLXRvcC1wYWRkaW5nXCI+XG4gICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cImNhbmNlbCgpXCI+XG4gICAgICB7eyAnaWdvLmdlby5jYXRhbG9nLmxpYnJhcnkuY2FuY2VsJyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b25cbiAgICAgIGlkPVwiYWRkQ2F0YWxvZ0J0bkRpYWxvZ1wiXG4gICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgW2Rpc2FibGVkXT1cIiFmb3JtLnZhbGlkXCJcbiAgICAgIChjbGljayk9XCJhZGRDYXRhbG9nKGZvcm0udmFsdWUpXCJcbiAgICA+XG4gICAgICB7eyAnaWdvLmdlby5jYXRhbG9nLmxpYnJhcnkuYWRkJyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { NgIf } from '@angular/common';
|
|
2
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
|
|
3
|
-
import { MatButtonModule } from '@angular/material/button';
|
|
4
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
5
|
-
import { MatListModule } from '@angular/material/list';
|
|
6
|
-
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
7
|
-
import { getEntityTitle } from '@igo2/common/entity';
|
|
8
|
-
import { IgoLanguageModule } from '@igo2/core/language';
|
|
9
|
-
import { IgoMap } from '../../map/shared/map';
|
|
10
|
-
import { Catalog } from '../shared/catalog.abstract';
|
|
11
|
-
import * as i0 from "@angular/core";
|
|
12
|
-
import * as i1 from "@angular/material/list";
|
|
13
|
-
import * as i2 from "@angular/material/icon";
|
|
14
|
-
import * as i3 from "@angular/material/tooltip";
|
|
15
|
-
import * as i4 from "@angular/material/button";
|
|
16
|
-
import * as i5 from "@ngx-translate/core";
|
|
17
|
-
/**
|
|
18
|
-
* Catalog library item
|
|
19
|
-
*/
|
|
20
|
-
export class CatalogLibaryItemComponent {
|
|
21
|
-
/**
|
|
22
|
-
* Catalog
|
|
23
|
-
*/
|
|
24
|
-
catalog;
|
|
25
|
-
/**
|
|
26
|
-
* Map to add the catalog items to
|
|
27
|
-
*/
|
|
28
|
-
map;
|
|
29
|
-
catalogRemove = new EventEmitter();
|
|
30
|
-
/**
|
|
31
|
-
* @internal
|
|
32
|
-
*/
|
|
33
|
-
get title() {
|
|
34
|
-
return getEntityTitle(this.catalog);
|
|
35
|
-
}
|
|
36
|
-
removeCatalogFromLibrary(event) {
|
|
37
|
-
event.stopPropagation();
|
|
38
|
-
this.catalogRemove.emit();
|
|
39
|
-
}
|
|
40
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CatalogLibaryItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
41
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CatalogLibaryItemComponent, isStandalone: true, selector: "igo-catalog-library-item", inputs: { catalog: "catalog", map: "map" }, outputs: { catalogRemove: "catalogRemove" }, ngImport: i0, template: "<mat-list-item>\n <span matListItemTitle>\n {{ title }}\n </span>\n <div matListItemMeta>\n <mat-icon\n *ngIf=\"catalog.externalProvider\"\n matListItemIcon\n class=\"igo-external-provider\"\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.catalog.externalProvider.catalog' | translate\"\n color=\"primary\"\n (click)=\"$event.stopPropagation()\"\n >\n public\n </mat-icon>\n <button\n *ngIf=\"catalog.removable\"\n mat-icon-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.catalog.library.remove' | translate\"\n color=\"warn\"\n (click)=\"removeCatalogFromLibrary($event)\"\n >\n <mat-icon>delete</mat-icon>\n </button>\n\n <button\n class=\"igo-blank\"\n *ngIf=\"!catalog.removable\"\n disabled=\"true\"\n mat-icon-button\n >\n <mat-icon></mat-icon>\n </button>\n </div>\n</mat-list-item>\n", styles: [".igo-blank{cursor:pointer}.igo-external-provider{cursor:help}\n"], dependencies: [{ kind: "ngmodule", type: MatListModule }, { kind: "component", type: i1.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i1.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i1.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "directive", type: i1.MatListItemMeta, selector: "[matListItemMeta]" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
42
|
-
}
|
|
43
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CatalogLibaryItemComponent, decorators: [{
|
|
44
|
-
type: Component,
|
|
45
|
-
args: [{ selector: 'igo-catalog-library-item', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
46
|
-
MatListModule,
|
|
47
|
-
NgIf,
|
|
48
|
-
MatIconModule,
|
|
49
|
-
MatTooltipModule,
|
|
50
|
-
MatButtonModule,
|
|
51
|
-
IgoLanguageModule
|
|
52
|
-
], template: "<mat-list-item>\n <span matListItemTitle>\n {{ title }}\n </span>\n <div matListItemMeta>\n <mat-icon\n *ngIf=\"catalog.externalProvider\"\n matListItemIcon\n class=\"igo-external-provider\"\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.catalog.externalProvider.catalog' | translate\"\n color=\"primary\"\n (click)=\"$event.stopPropagation()\"\n >\n public\n </mat-icon>\n <button\n *ngIf=\"catalog.removable\"\n mat-icon-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.catalog.library.remove' | translate\"\n color=\"warn\"\n (click)=\"removeCatalogFromLibrary($event)\"\n >\n <mat-icon>delete</mat-icon>\n </button>\n\n <button\n class=\"igo-blank\"\n *ngIf=\"!catalog.removable\"\n disabled=\"true\"\n mat-icon-button\n >\n <mat-icon></mat-icon>\n </button>\n </div>\n</mat-list-item>\n", styles: [".igo-blank{cursor:pointer}.igo-external-provider{cursor:help}\n"] }]
|
|
53
|
-
}], propDecorators: { catalog: [{
|
|
54
|
-
type: Input
|
|
55
|
-
}], map: [{
|
|
56
|
-
type: Input
|
|
57
|
-
}], catalogRemove: [{
|
|
58
|
-
type: Output
|
|
59
|
-
}] } });
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1saWJyYXJ5LWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvY2F0YWxvZy9jYXRhbG9nLWxpYnJhcnkvY2F0YWxvZy1saWJyYXJ5LWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvY2F0YWxvZy9jYXRhbG9nLWxpYnJhcnkvY2F0YWxvZy1saWJyYXJ5LWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTdELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV4RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDOUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7Ozs7O0FBRXJEOztHQUVHO0FBZ0JILE1BQU0sT0FBTywwQkFBMEI7SUFDckM7O09BRUc7SUFDTSxPQUFPLENBQVU7SUFFMUI7O09BRUc7SUFDTSxHQUFHLENBQVM7SUFFWCxhQUFhLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUU3Qzs7T0FFRztJQUNILElBQUksS0FBSztRQUNQLE9BQU8sY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsd0JBQXdCLENBQUMsS0FBSztRQUM1QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM1QixDQUFDO3dHQXZCVSwwQkFBMEI7NEZBQTFCLDBCQUEwQiw2S0NyQ3ZDLDAvQkF1Q0Esd0hEVkksYUFBYSxvYkFDYixJQUFJLDRGQUNKLGFBQWEsbUxBQ2IsZ0JBQWdCLDRUQUNoQixlQUFlLDJJQUNmLGlCQUFpQjs7NEZBR1IsMEJBQTBCO2tCQWZ0QyxTQUFTOytCQUNFLDBCQUEwQixtQkFHbkIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1AsYUFBYTt3QkFDYixJQUFJO3dCQUNKLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLGlCQUFpQjtxQkFDbEI7OEJBTVEsT0FBTztzQkFBZixLQUFLO2dCQUtHLEdBQUc7c0JBQVgsS0FBSztnQkFFSSxhQUFhO3NCQUF0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0TGlzdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xpc3QnO1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuXG5pbXBvcnQgeyBnZXRFbnRpdHlUaXRsZSB9IGZyb20gJ0BpZ28yL2NvbW1vbi9lbnRpdHknO1xuaW1wb3J0IHsgSWdvTGFuZ3VhZ2VNb2R1bGUgfSBmcm9tICdAaWdvMi9jb3JlL2xhbmd1YWdlJztcblxuaW1wb3J0IHsgSWdvTWFwIH0gZnJvbSAnLi4vLi4vbWFwL3NoYXJlZC9tYXAnO1xuaW1wb3J0IHsgQ2F0YWxvZyB9IGZyb20gJy4uL3NoYXJlZC9jYXRhbG9nLmFic3RyYWN0JztcblxuLyoqXG4gKiBDYXRhbG9nIGxpYnJhcnkgaXRlbVxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpZ28tY2F0YWxvZy1saWJyYXJ5LWl0ZW0nLFxuICB0ZW1wbGF0ZVVybDogJy4vY2F0YWxvZy1saWJyYXJ5LWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jYXRhbG9nLWxpYnJhcnktaXRlbS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE1hdExpc3RNb2R1bGUsXG4gICAgTmdJZixcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIE1hdFRvb2x0aXBNb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIElnb0xhbmd1YWdlTW9kdWxlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQ2F0YWxvZ0xpYmFyeUl0ZW1Db21wb25lbnQge1xuICAvKipcbiAgICogQ2F0YWxvZ1xuICAgKi9cbiAgQElucHV0KCkgY2F0YWxvZzogQ2F0YWxvZztcblxuICAvKipcbiAgICogTWFwIHRvIGFkZCB0aGUgY2F0YWxvZyBpdGVtcyB0b1xuICAgKi9cbiAgQElucHV0KCkgbWFwOiBJZ29NYXA7XG5cbiAgQE91dHB1dCgpIGNhdGFsb2dSZW1vdmUgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgZ2V0IHRpdGxlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGdldEVudGl0eVRpdGxlKHRoaXMuY2F0YWxvZyk7XG4gIH1cblxuICByZW1vdmVDYXRhbG9nRnJvbUxpYnJhcnkoZXZlbnQpIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmNhdGFsb2dSZW1vdmUuZW1pdCgpO1xuICB9XG59XG4iLCI8bWF0LWxpc3QtaXRlbT5cbiAgPHNwYW4gbWF0TGlzdEl0ZW1UaXRsZT5cbiAgICB7eyB0aXRsZSB9fVxuICA8L3NwYW4+XG4gIDxkaXYgbWF0TGlzdEl0ZW1NZXRhPlxuICAgIDxtYXQtaWNvblxuICAgICAgKm5nSWY9XCJjYXRhbG9nLmV4dGVybmFsUHJvdmlkZXJcIlxuICAgICAgbWF0TGlzdEl0ZW1JY29uXG4gICAgICBjbGFzcz1cImlnby1leHRlcm5hbC1wcm92aWRlclwiXG4gICAgICB0b29sdGlwLXBvc2l0aW9uPVwiYmVsb3dcIlxuICAgICAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXG4gICAgICBbbWF0VG9vbHRpcF09XCInaWdvLmdlby5jYXRhbG9nLmV4dGVybmFsUHJvdmlkZXIuY2F0YWxvZycgfCB0cmFuc2xhdGVcIlxuICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgID5cbiAgICAgIHB1YmxpY1xuICAgIDwvbWF0LWljb24+XG4gICAgPGJ1dHRvblxuICAgICAgKm5nSWY9XCJjYXRhbG9nLnJlbW92YWJsZVwiXG4gICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgIHRvb2x0aXAtcG9zaXRpb249XCJiZWxvd1wiXG4gICAgICBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcbiAgICAgIFttYXRUb29sdGlwXT1cIidpZ28uZ2VvLmNhdGFsb2cubGlicmFyeS5yZW1vdmUnIHwgdHJhbnNsYXRlXCJcbiAgICAgIGNvbG9yPVwid2FyblwiXG4gICAgICAoY2xpY2spPVwicmVtb3ZlQ2F0YWxvZ0Zyb21MaWJyYXJ5KCRldmVudClcIlxuICAgID5cbiAgICAgIDxtYXQtaWNvbj5kZWxldGU8L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuXG4gICAgPGJ1dHRvblxuICAgICAgY2xhc3M9XCJpZ28tYmxhbmtcIlxuICAgICAgKm5nSWY9XCIhY2F0YWxvZy5yZW1vdmFibGVcIlxuICAgICAgZGlzYWJsZWQ9XCJ0cnVlXCJcbiAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgID5cbiAgICAgIDxtYXQtaWNvbj48L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvbWF0LWxpc3QtaXRlbT5cbiJdfQ==
|
|
@@ -1,232 +0,0 @@
|
|
|
1
|
-
import { AsyncPipe, NgFor, NgIf } from '@angular/common';
|
|
2
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
|
|
3
|
-
import { MatButtonModule } from '@angular/material/button';
|
|
4
|
-
import { MatDialog } from '@angular/material/dialog';
|
|
5
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
6
|
-
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
7
|
-
import { EntityStore } from '@igo2/common/entity';
|
|
8
|
-
import { ListComponent, ListItemDirective } from '@igo2/common/list';
|
|
9
|
-
import { IgoLanguageModule } from '@igo2/core/language';
|
|
10
|
-
import { MessageService } from '@igo2/core/message';
|
|
11
|
-
import { StorageScope, StorageService } from '@igo2/core/storage';
|
|
12
|
-
import { ObjectUtils } from '@igo2/utils';
|
|
13
|
-
import { catchError } from 'rxjs/operators';
|
|
14
|
-
import { Md5 } from 'ts-md5';
|
|
15
|
-
import { CapabilitiesService } from '../../datasource/shared/capabilities.service';
|
|
16
|
-
import { IgoMap } from '../../map/shared/map';
|
|
17
|
-
import { standardizeUrl } from '../../utils/id-generator';
|
|
18
|
-
import { AddCatalogDialogComponent } from './add-catalog-dialog.component';
|
|
19
|
-
import { CatalogLibaryItemComponent } from './catalog-library-item.component';
|
|
20
|
-
import * as i0 from "@angular/core";
|
|
21
|
-
import * as i1 from "../../datasource/shared/capabilities.service";
|
|
22
|
-
import * as i2 from "@igo2/core/message";
|
|
23
|
-
import * as i3 from "@igo2/core/storage";
|
|
24
|
-
import * as i4 from "@angular/material/dialog";
|
|
25
|
-
import * as i5 from "@angular/material/button";
|
|
26
|
-
import * as i6 from "@angular/material/tooltip";
|
|
27
|
-
import * as i7 from "@angular/material/icon";
|
|
28
|
-
import * as i8 from "@ngx-translate/core";
|
|
29
|
-
/**
|
|
30
|
-
* Component to browse a list of available catalogs
|
|
31
|
-
*/
|
|
32
|
-
export class CatalogLibaryComponent {
|
|
33
|
-
capabilitiesService;
|
|
34
|
-
messageService;
|
|
35
|
-
storageService;
|
|
36
|
-
dialog;
|
|
37
|
-
/**
|
|
38
|
-
* Store holding the catalogs
|
|
39
|
-
*/
|
|
40
|
-
store;
|
|
41
|
-
/**
|
|
42
|
-
* Map to add the catalog items to
|
|
43
|
-
*/
|
|
44
|
-
map;
|
|
45
|
-
/**
|
|
46
|
-
* Determine if the form to add a catalog is allowed
|
|
47
|
-
*/
|
|
48
|
-
addCatalogAllowed = false;
|
|
49
|
-
/**
|
|
50
|
-
* Determine if the form to add a catalog is allowed
|
|
51
|
-
*/
|
|
52
|
-
predefinedCatalogs = [];
|
|
53
|
-
/**
|
|
54
|
-
* Event emitted a catalog is selected or unselected
|
|
55
|
-
*/
|
|
56
|
-
catalogSelectChange = new EventEmitter();
|
|
57
|
-
submitDisabled = true;
|
|
58
|
-
addingCatalog$$;
|
|
59
|
-
get addedCatalogs() {
|
|
60
|
-
return (this.storageService.get('addedCatalogs') || []);
|
|
61
|
-
}
|
|
62
|
-
set addedCatalogs(catalogs) {
|
|
63
|
-
this.storageService.set('addedCatalogs', catalogs);
|
|
64
|
-
}
|
|
65
|
-
get selectedCatalogId() {
|
|
66
|
-
return this.storageService.get('selectedCatalogId', StorageScope.SESSION);
|
|
67
|
-
}
|
|
68
|
-
set selectedCatalogId(id) {
|
|
69
|
-
this.storageService.set('selectedCatalogId', id, StorageScope.SESSION);
|
|
70
|
-
}
|
|
71
|
-
constructor(capabilitiesService, messageService, storageService, dialog) {
|
|
72
|
-
this.capabilitiesService = capabilitiesService;
|
|
73
|
-
this.messageService = messageService;
|
|
74
|
-
this.storageService = storageService;
|
|
75
|
-
this.dialog = dialog;
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* @internal
|
|
79
|
-
*/
|
|
80
|
-
ngOnInit() {
|
|
81
|
-
this.store.state.clear();
|
|
82
|
-
if (this.selectedCatalogId) {
|
|
83
|
-
const selectedCatalog = this.store
|
|
84
|
-
.all()
|
|
85
|
-
.find((item) => item.id === this.selectedCatalogId);
|
|
86
|
-
if (selectedCatalog) {
|
|
87
|
-
this.onCatalogSelect(selectedCatalog);
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
this.predefinedCatalogs = this.predefinedCatalogs.map((c) => {
|
|
91
|
-
c.id = Md5.hashStr((c.type || 'wms') + standardizeUrl(c.url));
|
|
92
|
-
c.title = c.title === '' || !c.title ? c.url : c.title;
|
|
93
|
-
return c;
|
|
94
|
-
});
|
|
95
|
-
}
|
|
96
|
-
getCatalogs() {
|
|
97
|
-
return this.store.view.all$();
|
|
98
|
-
}
|
|
99
|
-
/**
|
|
100
|
-
* When a catalog is selected, update it's state in the store
|
|
101
|
-
* and emit the catalog select change event
|
|
102
|
-
* @internal
|
|
103
|
-
*/
|
|
104
|
-
onCatalogSelect(catalog) {
|
|
105
|
-
this.store.state.update(catalog, {
|
|
106
|
-
selected: true,
|
|
107
|
-
focused: true
|
|
108
|
-
}, true);
|
|
109
|
-
this.selectedCatalogId = catalog.id;
|
|
110
|
-
this.catalogSelectChange.emit({ selected: true, catalog });
|
|
111
|
-
}
|
|
112
|
-
unsubscribeAddingCatalog() {
|
|
113
|
-
if (this.addingCatalog$$) {
|
|
114
|
-
this.addingCatalog$$.unsubscribe();
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
addCatalog(addedCatalog) {
|
|
118
|
-
if (!addedCatalog) {
|
|
119
|
-
return;
|
|
120
|
-
}
|
|
121
|
-
let id = Md5.hashStr(addedCatalog.type + standardizeUrl(addedCatalog.url));
|
|
122
|
-
const predefinedCatalog = this.predefinedCatalogs.find((c) => c.id === addedCatalog.id);
|
|
123
|
-
if (predefinedCatalog) {
|
|
124
|
-
addedCatalog.version = predefinedCatalog.version;
|
|
125
|
-
addedCatalog.externalProvider = predefinedCatalog.externalProvider;
|
|
126
|
-
id = predefinedCatalog.id;
|
|
127
|
-
}
|
|
128
|
-
if (this.store.get(id)) {
|
|
129
|
-
this.messageService.alert('igo.geo.catalog.library.inlist.message', 'igo.geo.catalog.library.inlist.title');
|
|
130
|
-
return;
|
|
131
|
-
}
|
|
132
|
-
this.unsubscribeAddingCatalog();
|
|
133
|
-
this.addingCatalog$$ = this.capabilitiesService
|
|
134
|
-
.getCapabilities(addedCatalog.type, addedCatalog.url, addedCatalog.version)
|
|
135
|
-
.pipe(catchError((e) => {
|
|
136
|
-
if (e.error) {
|
|
137
|
-
this.addCatalogDialog(true, addedCatalog);
|
|
138
|
-
e.error.caught = true;
|
|
139
|
-
return e;
|
|
140
|
-
}
|
|
141
|
-
this.messageService.error('igo.geo.catalog.unavailable', 'igo.geo.catalog.unavailableTitle', undefined, { value: addedCatalog.url });
|
|
142
|
-
throw e;
|
|
143
|
-
}))
|
|
144
|
-
.subscribe((capabilities) => {
|
|
145
|
-
let title;
|
|
146
|
-
let version;
|
|
147
|
-
switch (addedCatalog.type) {
|
|
148
|
-
case 'wms':
|
|
149
|
-
title = addedCatalog.title || capabilities.Service.Title;
|
|
150
|
-
version = addedCatalog.version || capabilities.version;
|
|
151
|
-
break;
|
|
152
|
-
case 'arcgisrest':
|
|
153
|
-
case 'imagearcgisrest':
|
|
154
|
-
case 'tilearcgisrest':
|
|
155
|
-
title = addedCatalog.title || capabilities.mapName;
|
|
156
|
-
break;
|
|
157
|
-
case 'wmts':
|
|
158
|
-
title =
|
|
159
|
-
addedCatalog.title ||
|
|
160
|
-
capabilities.ServiceIdentification.ServiceType;
|
|
161
|
-
break;
|
|
162
|
-
default:
|
|
163
|
-
title = addedCatalog.title;
|
|
164
|
-
}
|
|
165
|
-
const catalogToAdd = ObjectUtils.removeUndefined(Object.assign({}, predefinedCatalog, ObjectUtils.removeUndefined({
|
|
166
|
-
id,
|
|
167
|
-
title,
|
|
168
|
-
url: addedCatalog.url,
|
|
169
|
-
type: addedCatalog.type || 'wms',
|
|
170
|
-
externalProvider: addedCatalog.externalProvider || false,
|
|
171
|
-
removable: true,
|
|
172
|
-
version
|
|
173
|
-
})));
|
|
174
|
-
this.store.insert(catalogToAdd);
|
|
175
|
-
const newCatalogs = this.addedCatalogs.slice(0);
|
|
176
|
-
newCatalogs.push(catalogToAdd);
|
|
177
|
-
this.addedCatalogs = newCatalogs;
|
|
178
|
-
this.unsubscribeAddingCatalog();
|
|
179
|
-
});
|
|
180
|
-
}
|
|
181
|
-
ngOnDestroy() {
|
|
182
|
-
this.unsubscribeAddingCatalog();
|
|
183
|
-
}
|
|
184
|
-
onCatalogRemove(catalog) {
|
|
185
|
-
this.store.delete(catalog);
|
|
186
|
-
this.addedCatalogs = this.addedCatalogs
|
|
187
|
-
.slice(0)
|
|
188
|
-
.filter((c) => c.id !== catalog.id);
|
|
189
|
-
}
|
|
190
|
-
addCatalogDialog(error, addedCatalog) {
|
|
191
|
-
const dialogRef = this.dialog.open(AddCatalogDialogComponent, {
|
|
192
|
-
width: '700px',
|
|
193
|
-
data: {
|
|
194
|
-
predefinedCatalogs: this.predefinedCatalogs,
|
|
195
|
-
store: this.store,
|
|
196
|
-
error,
|
|
197
|
-
addedCatalog
|
|
198
|
-
}
|
|
199
|
-
});
|
|
200
|
-
dialogRef.afterClosed().subscribe((catalog) => {
|
|
201
|
-
this.addCatalog(catalog);
|
|
202
|
-
});
|
|
203
|
-
}
|
|
204
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CatalogLibaryComponent, deps: [{ token: i1.CapabilitiesService }, { token: i2.MessageService }, { token: i3.StorageService }, { token: i4.MatDialog }], target: i0.ɵɵFactoryTarget.Component });
|
|
205
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CatalogLibaryComponent, isStandalone: true, selector: "igo-catalog-library", inputs: { store: "store", map: "map", addCatalogAllowed: "addCatalogAllowed", predefinedCatalogs: "predefinedCatalogs" }, outputs: { catalogSelectChange: "catalogSelectChange" }, ngImport: i0, template: "<igo-list [navigation]=\"false\">\n <ng-template ngFor let-catalog [ngForOf]=\"getCatalogs() | async\">\n <igo-catalog-library-item\n igoListItem\n color=\"accent\"\n [map]=\"map\"\n [catalog]=\"catalog\"\n (catalogRemove)=\"onCatalogRemove(catalog)\"\n (select)=\"onCatalogSelect(catalog)\"\n >\n </igo-catalog-library-item>\n </ng-template>\n</igo-list>\n\n<div *ngIf=\"addCatalogAllowed\" class=\"btnAddCatalog\">\n <button\n mat-raised-button\n [matTooltip]=\"'igo.geo.catalog.library.addBtn' | translate\"\n matTooltipPosition=\"above\"\n color=\"primary\"\n (click)=\"addCatalogDialog()\"\n >\n {{ 'igo.geo.catalog.library.addBtn' | translate }}\n <mat-icon>library_add</mat-icon>\n </button>\n</div>\n", styles: [":host igo-list{height:auto}:host .btnAddCatalog{justify-content:center;display:flex;margin:30px 0}\n"], dependencies: [{ kind: "component", type: ListComponent, selector: "igo-list", inputs: ["navigation", "selection"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: CatalogLibaryItemComponent, selector: "igo-catalog-library-item", inputs: ["catalog", "map"], outputs: ["catalogRemove"] }, { kind: "directive", type: ListItemDirective, selector: "[igoListItem]", inputs: ["color", "focused", "selected", "disabled"], outputs: ["beforeSelect", "beforeFocus", "beforeUnselect", "beforeUnfocus", "beforeDisable", "beforeEnable", "focus", "unfocus", "select", "unselect", "disable", "enable"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
206
|
-
}
|
|
207
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CatalogLibaryComponent, decorators: [{
|
|
208
|
-
type: Component,
|
|
209
|
-
args: [{ selector: 'igo-catalog-library', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
210
|
-
ListComponent,
|
|
211
|
-
NgFor,
|
|
212
|
-
CatalogLibaryItemComponent,
|
|
213
|
-
ListItemDirective,
|
|
214
|
-
NgIf,
|
|
215
|
-
MatButtonModule,
|
|
216
|
-
MatTooltipModule,
|
|
217
|
-
MatIconModule,
|
|
218
|
-
AsyncPipe,
|
|
219
|
-
IgoLanguageModule
|
|
220
|
-
], template: "<igo-list [navigation]=\"false\">\n <ng-template ngFor let-catalog [ngForOf]=\"getCatalogs() | async\">\n <igo-catalog-library-item\n igoListItem\n color=\"accent\"\n [map]=\"map\"\n [catalog]=\"catalog\"\n (catalogRemove)=\"onCatalogRemove(catalog)\"\n (select)=\"onCatalogSelect(catalog)\"\n >\n </igo-catalog-library-item>\n </ng-template>\n</igo-list>\n\n<div *ngIf=\"addCatalogAllowed\" class=\"btnAddCatalog\">\n <button\n mat-raised-button\n [matTooltip]=\"'igo.geo.catalog.library.addBtn' | translate\"\n matTooltipPosition=\"above\"\n color=\"primary\"\n (click)=\"addCatalogDialog()\"\n >\n {{ 'igo.geo.catalog.library.addBtn' | translate }}\n <mat-icon>library_add</mat-icon>\n </button>\n</div>\n", styles: [":host igo-list{height:auto}:host .btnAddCatalog{justify-content:center;display:flex;margin:30px 0}\n"] }]
|
|
221
|
-
}], ctorParameters: () => [{ type: i1.CapabilitiesService }, { type: i2.MessageService }, { type: i3.StorageService }, { type: i4.MatDialog }], propDecorators: { store: [{
|
|
222
|
-
type: Input
|
|
223
|
-
}], map: [{
|
|
224
|
-
type: Input
|
|
225
|
-
}], addCatalogAllowed: [{
|
|
226
|
-
type: Input
|
|
227
|
-
}], predefinedCatalogs: [{
|
|
228
|
-
type: Input
|
|
229
|
-
}], catalogSelectChange: [{
|
|
230
|
-
type: Output
|
|
231
|
-
}] } });
|
|
232
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1saWJyYXJ5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2NhdGFsb2cvY2F0YWxvZy1saWJyYXJ5L2NhdGFsb2ctbGlicmFyeS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9jYXRhbG9nL2NhdGFsb2ctbGlicmFyeS9jYXRhbG9nLWxpYnJhcnkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFN0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRzFDLE9B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TCwwQkFBMEIsNkhBQzFCLGlCQUFpQiw2UkFDakIsSUFBSSw0RkFDSixlQUFlLDJOQUNmLGdCQUFnQiw0VEFDaEIsYUFBYSwrS0FDYixTQUFTLDZDQUNULGlCQUFpQjs7NEZBR1Isc0JBQXNCO2tCQW5CbEMsU0FBUzsrQkFDRSxxQkFBcUIsbUJBR2QsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1AsYUFBYTt3QkFDYixLQUFLO3dCQUNMLDBCQUEwQjt3QkFDMUIsaUJBQWlCO3dCQUNqQixJQUFJO3dCQUNKLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixhQUFhO3dCQUNiLFNBQVM7d0JBQ1QsaUJBQWlCO3FCQUNsQjswS0FNUSxLQUFLO3NCQUFiLEtBQUs7Z0JBS0csR0FBRztzQkFBWCxLQUFLO2dCQUtHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFLRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBS0ksbUJBQW1CO3NCQUE1QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXN5bmNQaXBlLCBOZ0ZvciwgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XG5cbmltcG9ydCB7IEVudGl0eVN0b3JlIH0gZnJvbSAnQGlnbzIvY29tbW9uL2VudGl0eSc7XG5pbXBvcnQgeyBMaXN0Q29tcG9uZW50LCBMaXN0SXRlbURpcmVjdGl2ZSB9IGZyb20gJ0BpZ28yL2NvbW1vbi9saXN0JztcbmltcG9ydCB7IElnb0xhbmd1YWdlTW9kdWxlIH0gZnJvbSAnQGlnbzIvY29yZS9sYW5ndWFnZSc7XG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUvbWVzc2FnZSc7XG5pbXBvcnQgeyBTdG9yYWdlU2NvcGUsIFN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZS9zdG9yYWdlJztcbmltcG9ydCB7IE9iamVjdFV0aWxzIH0gZnJvbSAnQGlnbzIvdXRpbHMnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBNZDUgfSBmcm9tICd0cy1tZDUnO1xuXG5pbXBvcnQgeyBDYXBhYmlsaXRpZXNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZGF0YXNvdXJjZS9zaGFyZWQvY2FwYWJpbGl0aWVzLnNlcnZpY2UnO1xuaW1wb3J0IHsgSWdvTWFwIH0gZnJvbSAnLi4vLi4vbWFwL3NoYXJlZC9tYXAnO1xuaW1wb3J0IHsgc3RhbmRhcmRpemVVcmwgfSBmcm9tICcuLi8uLi91dGlscy9pZC1nZW5lcmF0b3InO1xuaW1wb3J0IHsgQ2F0YWxvZyB9IGZyb20gJy4uL3NoYXJlZC9jYXRhbG9nLmFic3RyYWN0JztcbmltcG9ydCB7IEFkZENhdGFsb2dEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2FkZC1jYXRhbG9nLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2F0YWxvZ0xpYmFyeUl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2NhdGFsb2ctbGlicmFyeS1pdGVtLmNvbXBvbmVudCc7XG5cbi8qKlxuICogQ29tcG9uZW50IHRvIGJyb3dzZSBhIGxpc3Qgb2YgYXZhaWxhYmxlIGNhdGFsb2dzXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2lnby1jYXRhbG9nLWxpYnJhcnknLFxuICB0ZW1wbGF0ZVVybDogJy4vY2F0YWxvZy1saWJyYXJ5LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2F0YWxvZy1saWJyYXJ5LmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTGlzdENvbXBvbmVudCxcbiAgICBOZ0ZvcixcbiAgICBDYXRhbG9nTGliYXJ5SXRlbUNvbXBvbmVudCxcbiAgICBMaXN0SXRlbURpcmVjdGl2ZSxcbiAgICBOZ0lmLFxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgQXN5bmNQaXBlLFxuICAgIElnb0xhbmd1YWdlTW9kdWxlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQ2F0YWxvZ0xpYmFyeUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgLyoqXG4gICAqIFN0b3JlIGhvbGRpbmcgdGhlIGNhdGFsb2dzXG4gICAqL1xuICBASW5wdXQoKSBzdG9yZTogRW50aXR5U3RvcmU8Q2F0YWxvZz47XG5cbiAgLyoqXG4gICAqIE1hcCB0byBhZGQgdGhlIGNhdGFsb2cgaXRlbXMgdG9cbiAgICovXG4gIEBJbnB1dCgpIG1hcDogSWdvTWFwO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmUgaWYgdGhlIGZvcm0gdG8gYWRkIGEgY2F0YWxvZyBpcyBhbGxvd2VkXG4gICAqL1xuICBASW5wdXQoKSBhZGRDYXRhbG9nQWxsb3dlZCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmUgaWYgdGhlIGZvcm0gdG8gYWRkIGEgY2F0YWxvZyBpcyBhbGxvd2VkXG4gICAqL1xuICBASW5wdXQoKSBwcmVkZWZpbmVkQ2F0YWxvZ3M6IENhdGFsb2dbXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBFdmVudCBlbWl0dGVkIGEgY2F0YWxvZyBpcyBzZWxlY3RlZCBvciB1bnNlbGVjdGVkXG4gICAqL1xuICBAT3V0cHV0KCkgY2F0YWxvZ1NlbGVjdENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8e1xuICAgIHNlbGVjdGVkOiBib29sZWFuO1xuICAgIGNhdGFsb2c6IENhdGFsb2c7XG4gIH0+KCk7XG5cbiAgc3VibWl0RGlzYWJsZWQgPSB0cnVlO1xuXG4gIHByaXZhdGUgYWRkaW5nQ2F0YWxvZyQkOiBTdWJzY3JpcHRpb247XG5cbiAgZ2V0IGFkZGVkQ2F0YWxvZ3MoKTogQ2F0YWxvZ1tdIHtcbiAgICByZXR1cm4gKHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0KCdhZGRlZENhdGFsb2dzJykgfHwgW10pIGFzIENhdGFsb2dbXTtcbiAgfVxuICBzZXQgYWRkZWRDYXRhbG9ncyhjYXRhbG9nczogQ2F0YWxvZ1tdKSB7XG4gICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXQoJ2FkZGVkQ2F0YWxvZ3MnLCBjYXRhbG9ncyk7XG4gIH1cblxuICBnZXQgc2VsZWN0ZWRDYXRhbG9nSWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0KCdzZWxlY3RlZENhdGFsb2dJZCcsIFN0b3JhZ2VTY29wZS5TRVNTSU9OKTtcbiAgfVxuICBzZXQgc2VsZWN0ZWRDYXRhbG9nSWQoaWQpIHtcbiAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnNldCgnc2VsZWN0ZWRDYXRhbG9nSWQnLCBpZCwgU3RvcmFnZVNjb3BlLlNFU1NJT04pO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjYXBhYmlsaXRpZXNTZXJ2aWNlOiBDYXBhYmlsaXRpZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgc3RvcmFnZVNlcnZpY2U6IFN0b3JhZ2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgZGlhbG9nOiBNYXREaWFsb2dcbiAgKSB7fVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuc3RvcmUuc3RhdGUuY2xlYXIoKTtcblxuICAgIGlmICh0aGlzLnNlbGVjdGVkQ2F0YWxvZ0lkKSB7XG4gICAgICBjb25zdCBzZWxlY3RlZENhdGFsb2cgPSB0aGlzLnN0b3JlXG4gICAgICAgIC5hbGwoKVxuICAgICAgICAuZmluZCgoaXRlbSkgPT4gaXRlbS5pZCA9PT0gdGhpcy5zZWxlY3RlZENhdGFsb2dJZCk7XG4gICAgICBpZiAoc2VsZWN0ZWRDYXRhbG9nKSB7XG4gICAgICAgIHRoaXMub25DYXRhbG9nU2VsZWN0KHNlbGVjdGVkQ2F0YWxvZyk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMucHJlZGVmaW5lZENhdGFsb2dzID0gdGhpcy5wcmVkZWZpbmVkQ2F0YWxvZ3MubWFwKChjKSA9PiB7XG4gICAgICBjLmlkID0gTWQ1Lmhhc2hTdHIoKGMudHlwZSB8fCAnd21zJykgKyBzdGFuZGFyZGl6ZVVybChjLnVybCkpIGFzIHN0cmluZztcbiAgICAgIGMudGl0bGUgPSBjLnRpdGxlID09PSAnJyB8fCAhYy50aXRsZSA/IGMudXJsIDogYy50aXRsZTtcbiAgICAgIHJldHVybiBjO1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0Q2F0YWxvZ3MoKTogT2JzZXJ2YWJsZTxDYXRhbG9nW10+IHtcbiAgICByZXR1cm4gdGhpcy5zdG9yZS52aWV3LmFsbCQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGVuIGEgY2F0YWxvZyBpcyBzZWxlY3RlZCwgdXBkYXRlIGl0J3Mgc3RhdGUgaW4gdGhlIHN0b3JlXG4gICAqIGFuZCBlbWl0IHRoZSBjYXRhbG9nIHNlbGVjdCBjaGFuZ2UgZXZlbnRcbiAgICogQGludGVybmFsXG4gICAqL1xuICBvbkNhdGFsb2dTZWxlY3QoY2F0YWxvZzogQ2F0YWxvZykge1xuICAgIHRoaXMuc3RvcmUuc3RhdGUudXBkYXRlKFxuICAgICAgY2F0YWxvZyxcbiAgICAgIHtcbiAgICAgICAgc2VsZWN0ZWQ6IHRydWUsXG4gICAgICAgIGZvY3VzZWQ6IHRydWVcbiAgICAgIH0sXG4gICAgICB0cnVlXG4gICAgKTtcbiAgICB0aGlzLnNlbGVjdGVkQ2F0YWxvZ0lkID0gY2F0YWxvZy5pZDtcbiAgICB0aGlzLmNhdGFsb2dTZWxlY3RDaGFuZ2UuZW1pdCh7IHNlbGVjdGVkOiB0cnVlLCBjYXRhbG9nIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSB1bnN1YnNjcmliZUFkZGluZ0NhdGFsb2coKSB7XG4gICAgaWYgKHRoaXMuYWRkaW5nQ2F0YWxvZyQkKSB7XG4gICAgICB0aGlzLmFkZGluZ0NhdGFsb2ckJC51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgfVxuXG4gIGFkZENhdGFsb2coYWRkZWRDYXRhbG9nOiBDYXRhbG9nKSB7XG4gICAgaWYgKCFhZGRlZENhdGFsb2cpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgbGV0IGlkID0gTWQ1Lmhhc2hTdHIoXG4gICAgICBhZGRlZENhdGFsb2cudHlwZSArIHN0YW5kYXJkaXplVXJsKGFkZGVkQ2F0YWxvZy51cmwpXG4gICAgKSBhcyBzdHJpbmc7XG4gICAgY29uc3QgcHJlZGVmaW5lZENhdGFsb2cgPSB0aGlzLnByZWRlZmluZWRDYXRhbG9ncy5maW5kKFxuICAgICAgKGMpID0+IGMuaWQgPT09IGFkZGVkQ2F0YWxvZy5pZFxuICAgICk7XG5cbiAgICBpZiAocHJlZGVmaW5lZENhdGFsb2cpIHtcbiAgICAgIGFkZGVkQ2F0YWxvZy52ZXJzaW9uID0gcHJlZGVmaW5lZENhdGFsb2cudmVyc2lvbjtcbiAgICAgIGFkZGVkQ2F0YWxvZy5leHRlcm5hbFByb3ZpZGVyID0gcHJlZGVmaW5lZENhdGFsb2cuZXh0ZXJuYWxQcm92aWRlcjtcbiAgICAgIGlkID0gcHJlZGVmaW5lZENhdGFsb2cuaWQ7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc3RvcmUuZ2V0KGlkKSkge1xuICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS5hbGVydChcbiAgICAgICAgJ2lnby5nZW8uY2F0YWxvZy5saWJyYXJ5LmlubGlzdC5tZXNzYWdlJyxcbiAgICAgICAgJ2lnby5nZW8uY2F0YWxvZy5saWJyYXJ5LmlubGlzdC50aXRsZSdcbiAgICAgICk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMudW5zdWJzY3JpYmVBZGRpbmdDYXRhbG9nKCk7XG5cbiAgICB0aGlzLmFkZGluZ0NhdGFsb2ckJCA9IHRoaXMuY2FwYWJpbGl0aWVzU2VydmljZVxuICAgICAgLmdldENhcGFiaWxpdGllcyhcbiAgICAgICAgYWRkZWRDYXRhbG9nLnR5cGUgYXMgYW55LFxuICAgICAgICBhZGRlZENhdGFsb2cudXJsLFxuICAgICAgICBhZGRlZENhdGFsb2cudmVyc2lvblxuICAgICAgKVxuICAgICAgLnBpcGUoXG4gICAgICAgIGNhdGNoRXJyb3IoKGUpID0+IHtcbiAgICAgICAgICBpZiAoZS5lcnJvcikge1xuICAgICAgICAgICAgdGhpcy5hZGRDYXRhbG9nRGlhbG9nKHRydWUsIGFkZGVkQ2F0YWxvZyk7XG4gICAgICAgICAgICBlLmVycm9yLmNhdWdodCA9IHRydWU7XG4gICAgICAgICAgICByZXR1cm4gZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS5lcnJvcihcbiAgICAgICAgICAgICdpZ28uZ2VvLmNhdGFsb2cudW5hdmFpbGFibGUnLFxuICAgICAgICAgICAgJ2lnby5nZW8uY2F0YWxvZy51bmF2YWlsYWJsZVRpdGxlJyxcbiAgICAgICAgICAgIHVuZGVmaW5lZCxcbiAgICAgICAgICAgIHsgdmFsdWU6IGFkZGVkQ2F0YWxvZy51cmwgfVxuICAgICAgICAgICk7XG4gICAgICAgICAgdGhyb3cgZTtcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKGNhcGFiaWxpdGllcykgPT4ge1xuICAgICAgICBsZXQgdGl0bGU7XG4gICAgICAgIGxldCB2ZXJzaW9uO1xuICAgICAgICBzd2l0Y2ggKGFkZGVkQ2F0YWxvZy50eXBlKSB7XG4gICAgICAgICAgY2FzZSAnd21zJzpcbiAgICAgICAgICAgIHRpdGxlID0gYWRkZWRDYXRhbG9nLnRpdGxlIHx8IGNhcGFiaWxpdGllcy5TZXJ2aWNlLlRpdGxlO1xuICAgICAgICAgICAgdmVyc2lvbiA9IGFkZGVkQ2F0YWxvZy52ZXJzaW9uIHx8IGNhcGFiaWxpdGllcy52ZXJzaW9uO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnYXJjZ2lzcmVzdCc6XG4gICAgICAgICAgY2FzZSAnaW1hZ2VhcmNnaXNyZXN0JzpcbiAgICAgICAgICBjYXNlICd0aWxlYXJjZ2lzcmVzdCc6XG4gICAgICAgICAgICB0aXRsZSA9IGFkZGVkQ2F0YWxvZy50aXRsZSB8fCBjYXBhYmlsaXRpZXMubWFwTmFtZTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ3dtdHMnOlxuICAgICAgICAgICAgdGl0bGUgPVxuICAgICAgICAgICAgICBhZGRlZENhdGFsb2cudGl0bGUgfHxcbiAgICAgICAgICAgICAgY2FwYWJpbGl0aWVzLlNlcnZpY2VJZGVudGlmaWNhdGlvbi5TZXJ2aWNlVHlwZTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICB0aXRsZSA9IGFkZGVkQ2F0YWxvZy50aXRsZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGNhdGFsb2dUb0FkZCA9IE9iamVjdFV0aWxzLnJlbW92ZVVuZGVmaW5lZChcbiAgICAgICAgICBPYmplY3QuYXNzaWduKFxuICAgICAgICAgICAge30sXG4gICAgICAgICAgICBwcmVkZWZpbmVkQ2F0YWxvZyxcbiAgICAgICAgICAgIE9iamVjdFV0aWxzLnJlbW92ZVVuZGVmaW5lZCh7XG4gICAgICAgICAgICAgIGlkLFxuICAgICAgICAgICAgICB0aXRsZSxcbiAgICAgICAgICAgICAgdXJsOiBhZGRlZENhdGFsb2cudXJsLFxuICAgICAgICAgICAgICB0eXBlOiBhZGRlZENhdGFsb2cudHlwZSB8fCAnd21zJyxcbiAgICAgICAgICAgICAgZXh0ZXJuYWxQcm92aWRlcjogYWRkZWRDYXRhbG9nLmV4dGVybmFsUHJvdmlkZXIgfHwgZmFsc2UsXG4gICAgICAgICAgICAgIHJlbW92YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgICAgdmVyc2lvblxuICAgICAgICAgICAgfSlcbiAgICAgICAgICApIGFzIENhdGFsb2dcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5zdG9yZS5pbnNlcnQoY2F0YWxvZ1RvQWRkKTtcbiAgICAgICAgY29uc3QgbmV3Q2F0YWxvZ3MgPSB0aGlzLmFkZGVkQ2F0YWxvZ3Muc2xpY2UoMCk7XG4gICAgICAgIG5ld0NhdGFsb2dzLnB1c2goY2F0YWxvZ1RvQWRkKTtcbiAgICAgICAgdGhpcy5hZGRlZENhdGFsb2dzID0gbmV3Q2F0YWxvZ3M7XG4gICAgICAgIHRoaXMudW5zdWJzY3JpYmVBZGRpbmdDYXRhbG9nKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMudW5zdWJzY3JpYmVBZGRpbmdDYXRhbG9nKCk7XG4gIH1cblxuICBvbkNhdGFsb2dSZW1vdmUoY2F0YWxvZykge1xuICAgIHRoaXMuc3RvcmUuZGVsZXRlKGNhdGFsb2cpO1xuICAgIHRoaXMuYWRkZWRDYXRhbG9ncyA9IHRoaXMuYWRkZWRDYXRhbG9nc1xuICAgICAgLnNsaWNlKDApXG4gICAgICAuZmlsdGVyKChjKSA9PiBjLmlkICE9PSBjYXRhbG9nLmlkKTtcbiAgfVxuXG4gIGFkZENhdGFsb2dEaWFsb2coZXJyb3I/LCBhZGRlZENhdGFsb2c/OiBDYXRhbG9nKSB7XG4gICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihBZGRDYXRhbG9nRGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICB3aWR0aDogJzcwMHB4JyxcbiAgICAgIGRhdGE6IHtcbiAgICAgICAgcHJlZGVmaW5lZENhdGFsb2dzOiB0aGlzLnByZWRlZmluZWRDYXRhbG9ncyxcbiAgICAgICAgc3RvcmU6IHRoaXMuc3RvcmUsXG4gICAgICAgIGVycm9yLFxuICAgICAgICBhZGRlZENhdGFsb2dcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgoY2F0YWxvZykgPT4ge1xuICAgICAgdGhpcy5hZGRDYXRhbG9nKGNhdGFsb2cpO1xuICAgIH0pO1xuICB9XG59XG4iLCI8aWdvLWxpc3QgW25hdmlnYXRpb25dPVwiZmFsc2VcIj5cbiAgPG5nLXRlbXBsYXRlIG5nRm9yIGxldC1jYXRhbG9nIFtuZ0Zvck9mXT1cImdldENhdGFsb2dzKCkgfCBhc3luY1wiPlxuICAgIDxpZ28tY2F0YWxvZy1saWJyYXJ5LWl0ZW1cbiAgICAgIGlnb0xpc3RJdGVtXG4gICAgICBjb2xvcj1cImFjY2VudFwiXG4gICAgICBbbWFwXT1cIm1hcFwiXG4gICAgICBbY2F0YWxvZ109XCJjYXRhbG9nXCJcbiAgICAgIChjYXRhbG9nUmVtb3ZlKT1cIm9uQ2F0YWxvZ1JlbW92ZShjYXRhbG9nKVwiXG4gICAgICAoc2VsZWN0KT1cIm9uQ2F0YWxvZ1NlbGVjdChjYXRhbG9nKVwiXG4gICAgPlxuICAgIDwvaWdvLWNhdGFsb2ctbGlicmFyeS1pdGVtPlxuICA8L25nLXRlbXBsYXRlPlxuPC9pZ28tbGlzdD5cblxuPGRpdiAqbmdJZj1cImFkZENhdGFsb2dBbGxvd2VkXCIgY2xhc3M9XCJidG5BZGRDYXRhbG9nXCI+XG4gIDxidXR0b25cbiAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgIFttYXRUb29sdGlwXT1cIidpZ28uZ2VvLmNhdGFsb2cubGlicmFyeS5hZGRCdG4nIHwgdHJhbnNsYXRlXCJcbiAgICBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiXG4gICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAoY2xpY2spPVwiYWRkQ2F0YWxvZ0RpYWxvZygpXCJcbiAgPlxuICAgIHt7ICdpZ28uZ2VvLmNhdGFsb2cubGlicmFyeS5hZGRCdG4nIHwgdHJhbnNsYXRlIH19XG4gICAgPG1hdC1pY29uPmxpYnJhcnlfYWRkPC9tYXQtaWNvbj5cbiAgPC9idXR0b24+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { AddCatalogDialogComponent } from './add-catalog-dialog.component';
|
|
3
|
-
import { CatalogLibaryComponent } from './catalog-library.component';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export const CATALOG_LIBRARY_DIRECTIVES = [
|
|
6
|
-
CatalogLibaryComponent,
|
|
7
|
-
AddCatalogDialogComponent
|
|
8
|
-
];
|
|
9
|
-
/**
|
|
10
|
-
* @deprecated import the CatalogLibaryComponent, AddCatalogDialogComponent directly
|
|
11
|
-
*/
|
|
12
|
-
export class IgoCatalogLibraryModule {
|
|
13
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoCatalogLibraryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
14
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: IgoCatalogLibraryModule, imports: [CatalogLibaryComponent, AddCatalogDialogComponent], exports: [CatalogLibaryComponent, AddCatalogDialogComponent] });
|
|
15
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoCatalogLibraryModule, imports: [CatalogLibaryComponent, AddCatalogDialogComponent] });
|
|
16
|
-
}
|
|
17
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoCatalogLibraryModule, decorators: [{
|
|
18
|
-
type: NgModule,
|
|
19
|
-
args: [{
|
|
20
|
-
imports: [CatalogLibaryComponent, AddCatalogDialogComponent],
|
|
21
|
-
exports: [CatalogLibaryComponent, AddCatalogDialogComponent]
|
|
22
|
-
}]
|
|
23
|
-
}] });
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1saWJyYXJ5Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2NhdGFsb2cvY2F0YWxvZy1saWJyYXJ5L2NhdGFsb2ctbGlicmFyeS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7QUFFckUsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUc7SUFDeEMsc0JBQXNCO0lBQ3RCLHlCQUF5QjtDQUNqQixDQUFDO0FBRVg7O0dBRUc7QUFLSCxNQUFNLE9BQU8sdUJBQXVCO3dHQUF2Qix1QkFBdUI7eUdBQXZCLHVCQUF1QixZQUh4QixzQkFBc0IsRUFBRSx5QkFBeUIsYUFDakQsc0JBQXNCLEVBQUUseUJBQXlCO3lHQUVoRCx1QkFBdUIsWUFIeEIsc0JBQXNCLEVBQUUseUJBQXlCOzs0RkFHaEQsdUJBQXVCO2tCQUpuQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixFQUFFLHlCQUF5QixDQUFDO29CQUM1RCxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsRUFBRSx5QkFBeUIsQ0FBQztpQkFDN0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBBZGRDYXRhbG9nRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9hZGQtY2F0YWxvZy1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7IENhdGFsb2dMaWJhcnlDb21wb25lbnQgfSBmcm9tICcuL2NhdGFsb2ctbGlicmFyeS5jb21wb25lbnQnO1xuXG5leHBvcnQgY29uc3QgQ0FUQUxPR19MSUJSQVJZX0RJUkVDVElWRVMgPSBbXG4gIENhdGFsb2dMaWJhcnlDb21wb25lbnQsXG4gIEFkZENhdGFsb2dEaWFsb2dDb21wb25lbnRcbl0gYXMgY29uc3Q7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgaW1wb3J0IHRoZSBDYXRhbG9nTGliYXJ5Q29tcG9uZW50LCBBZGRDYXRhbG9nRGlhbG9nQ29tcG9uZW50IGRpcmVjdGx5XG4gKi9cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDYXRhbG9nTGliYXJ5Q29tcG9uZW50LCBBZGRDYXRhbG9nRGlhbG9nQ29tcG9uZW50XSxcbiAgZXhwb3J0czogW0NhdGFsb2dMaWJhcnlDb21wb25lbnQsIEFkZENhdGFsb2dEaWFsb2dDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIElnb0NhdGFsb2dMaWJyYXJ5TW9kdWxlIHt9XG4iXX0=
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export * from './add-catalog-dialog.component';
|
|
2
|
-
export * from './catalog-library.component';
|
|
3
|
-
export * from './catalog-library.module';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9jYXRhbG9nL2NhdGFsb2ctbGlicmFyeS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYywwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYWRkLWNhdGFsb2ctZGlhbG9nLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2NhdGFsb2ctbGlicmFyeS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jYXRhbG9nLWxpYnJhcnkubW9kdWxlJztcbiJdfQ==
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CatalogBrowserComponent } from './catalog-browser/catalog-browser.component';
|
|
3
|
-
import { CATALOG_LIBRARY_DIRECTIVES } from './catalog-library';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "./catalog-library/catalog-library.component";
|
|
6
|
-
import * as i2 from "./catalog-library/add-catalog-dialog.component";
|
|
7
|
-
export const CATALOG_DIRECTIVES = [
|
|
8
|
-
CatalogBrowserComponent,
|
|
9
|
-
...CATALOG_LIBRARY_DIRECTIVES
|
|
10
|
-
];
|
|
11
|
-
/**
|
|
12
|
-
* @deprecated import the components directly or the CATALOG_DIRECTIVES
|
|
13
|
-
*/
|
|
14
|
-
export class IgoCatalogModule {
|
|
15
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoCatalogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
16
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: IgoCatalogModule, imports: [CatalogBrowserComponent, i1.CatalogLibaryComponent, i2.AddCatalogDialogComponent], exports: [CatalogBrowserComponent, i1.CatalogLibaryComponent, i2.AddCatalogDialogComponent] });
|
|
17
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoCatalogModule, imports: [CATALOG_DIRECTIVES] });
|
|
18
|
-
}
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoCatalogModule, decorators: [{
|
|
20
|
-
type: NgModule,
|
|
21
|
-
args: [{
|
|
22
|
-
imports: [...CATALOG_DIRECTIVES],
|
|
23
|
-
exports: [...CATALOG_DIRECTIVES]
|
|
24
|
-
}]
|
|
25
|
-
}] });
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9jYXRhbG9nL2NhdGFsb2cubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDdEYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7QUFFL0QsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUc7SUFDaEMsdUJBQXVCO0lBQ3ZCLEdBQUcsMEJBQTBCO0NBQ3JCLENBQUM7QUFFWDs7R0FFRztBQUtILE1BQU0sT0FBTyxnQkFBZ0I7d0dBQWhCLGdCQUFnQjt5R0FBaEIsZ0JBQWdCLFlBWDNCLHVCQUF1QixzRUFBdkIsdUJBQXVCO3lHQVdaLGdCQUFnQixZQUhkLGtCQUFrQjs7NEZBR3BCLGdCQUFnQjtrQkFKNUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxHQUFHLGtCQUFrQixDQUFDO29CQUNoQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLGtCQUFrQixDQUFDO2lCQUNqQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IENhdGFsb2dCcm93c2VyQ29tcG9uZW50IH0gZnJvbSAnLi9jYXRhbG9nLWJyb3dzZXIvY2F0YWxvZy1icm93c2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDQVRBTE9HX0xJQlJBUllfRElSRUNUSVZFUyB9IGZyb20gJy4vY2F0YWxvZy1saWJyYXJ5JztcblxuZXhwb3J0IGNvbnN0IENBVEFMT0dfRElSRUNUSVZFUyA9IFtcbiAgQ2F0YWxvZ0Jyb3dzZXJDb21wb25lbnQsXG4gIC4uLkNBVEFMT0dfTElCUkFSWV9ESVJFQ1RJVkVTXG5dIGFzIGNvbnN0O1xuXG4vKipcbiAqIEBkZXByZWNhdGVkIGltcG9ydCB0aGUgY29tcG9uZW50cyBkaXJlY3RseSBvciB0aGUgQ0FUQUxPR19ESVJFQ1RJVkVTXG4gKi9cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFsuLi5DQVRBTE9HX0RJUkVDVElWRVNdLFxuICBleHBvcnRzOiBbLi4uQ0FUQUxPR19ESVJFQ1RJVkVTXVxufSlcbmV4cG9ydCBjbGFzcyBJZ29DYXRhbG9nTW9kdWxlIHt9XG4iXX0=
|