@igo2/geo 18.0.1-next.2 → 18.0.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/esm2022/igo2-geo.mjs +5 -0
- package/esm2022/lib/catalog/catalog-browser/catalog-browser-group.component.mjs +234 -0
- package/esm2022/lib/catalog/catalog-browser/catalog-browser-layer.component.mjs +272 -0
- package/esm2022/lib/catalog/catalog-browser/catalog-browser.component.mjs +246 -0
- package/esm2022/lib/catalog/catalog-browser/catalog-browser.module.mjs +19 -0
- package/esm2022/lib/catalog/catalog-library/add-catalog-dialog.component.mjs +136 -0
- package/esm2022/lib/catalog/catalog-library/catalog-library-item.component.mjs +60 -0
- package/esm2022/lib/catalog/catalog-library/catalog-library.component.mjs +232 -0
- package/esm2022/lib/catalog/catalog-library/catalog-library.module.mjs +24 -0
- package/esm2022/lib/catalog/catalog-library/index.mjs +4 -0
- package/esm2022/lib/catalog/catalog.module.mjs +26 -0
- package/esm2022/lib/catalog/index.mjs +6 -0
- package/esm2022/lib/catalog/shared/catalog.abstract.mjs +32 -0
- package/esm2022/lib/catalog/shared/catalog.enum.mjs +16 -0
- package/esm2022/lib/catalog/shared/catalog.interface.mjs +2 -0
- package/esm2022/lib/catalog/shared/catalog.service.mjs +706 -0
- package/esm2022/lib/catalog/shared/catalogs.mjs +75 -0
- package/esm2022/lib/catalog/shared/index.mjs +5 -0
- package/esm2022/lib/datasource/index.mjs +3 -0
- package/esm2022/lib/datasource/shared/capabilities.interface.mjs +17 -0
- package/esm2022/lib/datasource/shared/capabilities.service.mjs +441 -0
- package/esm2022/lib/datasource/shared/datasource.service.mjs +258 -0
- package/esm2022/lib/datasource/shared/datasources/any-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/any-datasource.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/arcgisrest-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/arcgisrest-datasource.mjs +222 -0
- package/esm2022/lib/datasource/shared/datasources/carto-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/carto-datasource.mjs +118 -0
- package/esm2022/lib/datasource/shared/datasources/cluster-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/cluster-datasource.mjs +24 -0
- package/esm2022/lib/datasource/shared/datasources/data.service.mjs +3 -0
- package/esm2022/lib/datasource/shared/datasources/datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/datasource.mjs +42 -0
- package/esm2022/lib/datasource/shared/datasources/feature-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/feature-datasource.mjs +52 -0
- package/esm2022/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/imagearcgisrest-datasource.mjs +70 -0
- package/esm2022/lib/datasource/shared/datasources/index.mjs +36 -0
- package/esm2022/lib/datasource/shared/datasources/mvt-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/mvt-datasource.mjs +33 -0
- package/esm2022/lib/datasource/shared/datasources/osm-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/osm-datasource.mjs +14 -0
- package/esm2022/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/tilearcgisrest-datasource.mjs +60 -0
- package/esm2022/lib/datasource/shared/datasources/tiledebug-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/tiledebug-datasource.mjs +17 -0
- package/esm2022/lib/datasource/shared/datasources/websocket-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/websocket-datasource.mjs +56 -0
- package/esm2022/lib/datasource/shared/datasources/wfs-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/wfs-datasource.mjs +137 -0
- package/esm2022/lib/datasource/shared/datasources/wfs.service.mjs +170 -0
- package/esm2022/lib/datasource/shared/datasources/wms-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/wms-datasource.mjs +227 -0
- package/esm2022/lib/datasource/shared/datasources/wms-wfs.utils.mjs +224 -0
- package/esm2022/lib/datasource/shared/datasources/wmts-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/wmts-datasource.mjs +18 -0
- package/esm2022/lib/datasource/shared/datasources/xyz-datasource.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/datasources/xyz-datasource.mjs +11 -0
- package/esm2022/lib/datasource/shared/index.mjs +6 -0
- package/esm2022/lib/datasource/shared/options/index.mjs +5 -0
- package/esm2022/lib/datasource/shared/options/options-api.interface.mjs +2 -0
- package/esm2022/lib/datasource/shared/options/options-api.providers.mjs +15 -0
- package/esm2022/lib/datasource/shared/options/options-api.service.mjs +85 -0
- package/esm2022/lib/datasource/shared/options/options.service.mjs +3 -0
- package/esm2022/lib/datasource/utils/index.mjs +2 -0
- package/esm2022/lib/datasource/utils/tilegrid.mjs +20 -0
- package/esm2022/lib/directions/directions-buttons/directions-buttons.component.mjs +246 -0
- package/esm2022/lib/directions/directions-buttons/index.mjs +2 -0
- package/esm2022/lib/directions/directions-inputs/directions-inputs.component.mjs +312 -0
- package/esm2022/lib/directions/directions-inputs/index.mjs +2 -0
- package/esm2022/lib/directions/directions-results/directions-results.component.mjs +192 -0
- package/esm2022/lib/directions/directions-results/index.mjs +2 -0
- package/esm2022/lib/directions/directions-sources/directions-source.interface.mjs +5 -0
- package/esm2022/lib/directions/directions-sources/directions-source.mjs +3 -0
- package/esm2022/lib/directions/directions-sources/directions-source.provider.mjs +23 -0
- package/esm2022/lib/directions/directions-sources/index.mjs +5 -0
- package/esm2022/lib/directions/directions-sources/osrm-directions-source.mjs +159 -0
- package/esm2022/lib/directions/directions.component.mjs +437 -0
- package/esm2022/lib/directions/directions.module.mjs +46 -0
- package/esm2022/lib/directions/directions.provider.mjs +16 -0
- package/esm2022/lib/directions/index.mjs +8 -0
- package/esm2022/lib/directions/shared/directions-source.service.mjs +18 -0
- package/esm2022/lib/directions/shared/directions.enum.mjs +72 -0
- package/esm2022/lib/directions/shared/directions.interface.mjs +2 -0
- package/esm2022/lib/directions/shared/directions.service.mjs +239 -0
- package/esm2022/lib/directions/shared/directions.utils.mjs +522 -0
- package/esm2022/lib/directions/shared/index.mjs +6 -0
- package/esm2022/lib/directions/shared/store.mjs +21 -0
- package/esm2022/lib/download/download-button/download-button.component.mjs +48 -0
- package/esm2022/lib/download/download-button/index.mjs +2 -0
- package/esm2022/lib/download/download.module.mjs +24 -0
- package/esm2022/lib/download/index.mjs +3 -0
- package/esm2022/lib/download/shared/download.interface.mjs +2 -0
- package/esm2022/lib/download/shared/download.service.mjs +67 -0
- package/esm2022/lib/download/shared/index.mjs +3 -0
- package/esm2022/lib/draw/draw/draw-layer-popup.component.mjs +42 -0
- package/esm2022/lib/draw/draw/draw-popup.component.mjs +421 -0
- package/esm2022/lib/draw/draw/draw-shorcuts.component.mjs +28 -0
- package/esm2022/lib/draw/draw/draw.component.mjs +1136 -0
- package/esm2022/lib/draw/draw/draw.module.mjs +19 -0
- package/esm2022/lib/draw/drawingTool.module.mjs +18 -0
- package/esm2022/lib/draw/index.mjs +3 -0
- package/esm2022/lib/draw/shared/draw-icon.service.mjs +30 -0
- package/esm2022/lib/draw/shared/draw.enum.mjs +21 -0
- package/esm2022/lib/draw/shared/draw.interface.mjs +2 -0
- package/esm2022/lib/draw/shared/draw.utils.mjs +125 -0
- package/esm2022/lib/draw/shared/index.mjs +5 -0
- package/esm2022/lib/environment/environment.interface.mjs +2 -0
- package/esm2022/lib/environment/index.mjs +2 -0
- package/esm2022/lib/feature/feature-details/feature-details.component.mjs +306 -0
- package/esm2022/lib/feature/feature-details/feature-details.directive.mjs +56 -0
- package/esm2022/lib/feature/feature-details/feature-details.module.mjs +26 -0
- package/esm2022/lib/feature/feature-details/index.mjs +4 -0
- package/esm2022/lib/feature/feature-form/feature-form.component.mjs +101 -0
- package/esm2022/lib/feature/feature-form/feature-form.module.mjs +19 -0
- package/esm2022/lib/feature/feature.module.mjs +26 -0
- package/esm2022/lib/feature/index.mjs +5 -0
- package/esm2022/lib/feature/shared/feature-store.utils.mjs +28 -0
- package/esm2022/lib/feature/shared/feature.enums.mjs +9 -0
- package/esm2022/lib/feature/shared/feature.interfaces.mjs +2 -0
- package/esm2022/lib/feature/shared/feature.utils.mjs +332 -0
- package/esm2022/lib/feature/shared/index.mjs +8 -0
- package/esm2022/lib/feature/shared/store.mjs +143 -0
- package/esm2022/lib/feature/shared/strategies/geo-properties.mjs +216 -0
- package/esm2022/lib/feature/shared/strategies/in-map-extent.mjs +119 -0
- package/esm2022/lib/feature/shared/strategies/in-map-resolution.mjs +99 -0
- package/esm2022/lib/feature/shared/strategies/index.mjs +8 -0
- package/esm2022/lib/feature/shared/strategies/loading-layer.mjs +103 -0
- package/esm2022/lib/feature/shared/strategies/loading.mjs +136 -0
- package/esm2022/lib/feature/shared/strategies/search.mjs +158 -0
- package/esm2022/lib/feature/shared/strategies/selection.mjs +385 -0
- package/esm2022/lib/feature/shared/strategies.utils.mjs +37 -0
- package/esm2022/lib/filter/filter.module.mjs +131 -0
- package/esm2022/lib/filter/index.mjs +17 -0
- package/esm2022/lib/filter/ogc-filter-button/index.mjs +2 -0
- package/esm2022/lib/filter/ogc-filter-button/ogc-filter-button.component.mjs +141 -0
- package/esm2022/lib/filter/ogc-filter-form/index.mjs +2 -0
- package/esm2022/lib/filter/ogc-filter-form/ogc-filter-form.component.mjs +325 -0
- package/esm2022/lib/filter/ogc-filter-selection/index.mjs +2 -0
- package/esm2022/lib/filter/ogc-filter-selection/ogc-filter-selection.component.mjs +787 -0
- package/esm2022/lib/filter/ogc-filter-time/index.mjs +3 -0
- package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.mjs +201 -0
- package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time.component.mjs +665 -0
- package/esm2022/lib/filter/ogc-filterable-form/index.mjs +2 -0
- package/esm2022/lib/filter/ogc-filterable-form/ogc-filterable-form.component.mjs +66 -0
- package/esm2022/lib/filter/ogc-filterable-item/index.mjs +2 -0
- package/esm2022/lib/filter/ogc-filterable-item/ogc-filterable-item.component.mjs +244 -0
- package/esm2022/lib/filter/ogc-filterable-list/index.mjs +3 -0
- package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.mjs +39 -0
- package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list.component.mjs +32 -0
- package/esm2022/lib/filter/shared/filterable-datasource.pipe.mjs +63 -0
- package/esm2022/lib/filter/shared/index.mjs +12 -0
- package/esm2022/lib/filter/shared/ogc-filter-time.service.mjs +72 -0
- package/esm2022/lib/filter/shared/ogc-filter.enum.mjs +30 -0
- package/esm2022/lib/filter/shared/ogc-filter.interface.mjs +2 -0
- package/esm2022/lib/filter/shared/ogc-filter.mjs +756 -0
- package/esm2022/lib/filter/shared/ogc-filter.service.mjs +47 -0
- package/esm2022/lib/filter/shared/spatial-filter.enum.mjs +23 -0
- package/esm2022/lib/filter/shared/spatial-filter.interface.mjs +2 -0
- package/esm2022/lib/filter/shared/spatial-filter.service.mjs +282 -0
- package/esm2022/lib/filter/shared/time-filter.enum.mjs +13 -0
- package/esm2022/lib/filter/shared/time-filter.interface.mjs +2 -0
- package/esm2022/lib/filter/shared/time-filter.service.mjs +107 -0
- package/esm2022/lib/filter/spatial-filter/spatial-filter-item/index.mjs +2 -0
- package/esm2022/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.mjs +875 -0
- package/esm2022/lib/filter/spatial-filter/spatial-filter-list/index.mjs +2 -0
- package/esm2022/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.mjs +191 -0
- package/esm2022/lib/filter/spatial-filter/spatial-filter-type/index.mjs +2 -0
- package/esm2022/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.mjs +120 -0
- package/esm2022/lib/filter/time-filter-button/index.mjs +2 -0
- package/esm2022/lib/filter/time-filter-button/time-filter-button.component.mjs +70 -0
- package/esm2022/lib/filter/time-filter-form/index.mjs +2 -0
- package/esm2022/lib/filter/time-filter-form/time-filter-form.component.mjs +537 -0
- package/esm2022/lib/filter/time-filter-item/index.mjs +2 -0
- package/esm2022/lib/filter/time-filter-item/time-filter-item.component.mjs +90 -0
- package/esm2022/lib/filter/time-filter-list/index.mjs +3 -0
- package/esm2022/lib/filter/time-filter-list/time-filter-list-binding.directive.mjs +39 -0
- package/esm2022/lib/filter/time-filter-list/time-filter-list.component.mjs +24 -0
- package/esm2022/lib/geo.module.mjs +63 -0
- package/esm2022/lib/geometry/geometry-form-field/geometry-form-field-input.component.mjs +559 -0
- package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.component.mjs +170 -0
- package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.module.mjs +24 -0
- package/esm2022/lib/geometry/geometry-form-field/index.mjs +4 -0
- package/esm2022/lib/geometry/geometry.module.mjs +18 -0
- package/esm2022/lib/geometry/index.mjs +3 -0
- package/esm2022/lib/geometry/shared/controls/draw.mjs +340 -0
- package/esm2022/lib/geometry/shared/controls/index.mjs +4 -0
- package/esm2022/lib/geometry/shared/controls/modify.mjs +538 -0
- package/esm2022/lib/geometry/shared/controls/slice.mjs +190 -0
- package/esm2022/lib/geometry/shared/geometry.errors.mjs +24 -0
- package/esm2022/lib/geometry/shared/geometry.interfaces.mjs +2 -0
- package/esm2022/lib/geometry/shared/geometry.utils.mjs +113 -0
- package/esm2022/lib/geometry/shared/index.mjs +5 -0
- package/esm2022/lib/import-export/export-button/export-button.component.mjs +49 -0
- package/esm2022/lib/import-export/export-button/index.mjs +2 -0
- package/esm2022/lib/import-export/import-export/import-export.component.mjs +876 -0
- package/esm2022/lib/import-export/import-export/index.mjs +2 -0
- package/esm2022/lib/import-export/import-export.module.mjs +31 -0
- package/esm2022/lib/import-export/index.mjs +5 -0
- package/esm2022/lib/import-export/shared/drop-geo-file.directive.mjs +114 -0
- package/esm2022/lib/import-export/shared/export.errors.mjs +15 -0
- package/esm2022/lib/import-export/shared/export.interface.mjs +2 -0
- package/esm2022/lib/import-export/shared/export.service.mjs +378 -0
- package/esm2022/lib/import-export/shared/export.type.mjs +13 -0
- package/esm2022/lib/import-export/shared/export.utils.mjs +51 -0
- package/esm2022/lib/import-export/shared/import.errors.mjs +39 -0
- package/esm2022/lib/import-export/shared/import.interface.mjs +2 -0
- package/esm2022/lib/import-export/shared/import.service.mjs +221 -0
- package/esm2022/lib/import-export/shared/import.utils.mjs +203 -0
- package/esm2022/lib/import-export/shared/index.mjs +11 -0
- package/esm2022/lib/layer/index.mjs +16 -0
- package/esm2022/lib/layer/layer-group/index.mjs +2 -0
- package/esm2022/lib/layer/layer-group/layer-group.component.mjs +103 -0
- package/esm2022/lib/layer/layer-item/index.mjs +2 -0
- package/esm2022/lib/layer/layer-item/layer-item.component.mjs +196 -0
- package/esm2022/lib/layer/layer-legend/index.mjs +2 -0
- package/esm2022/lib/layer/layer-legend/layer-legend.component.mjs +287 -0
- package/esm2022/lib/layer/layer-legend-item/index.mjs +2 -0
- package/esm2022/lib/layer/layer-legend-item/layer-legend-item.component.mjs +85 -0
- package/esm2022/lib/layer/layer-legend-list/index.mjs +3 -0
- package/esm2022/lib/layer/layer-legend-list/layer-legend-list-binding.directive.mjs +54 -0
- package/esm2022/lib/layer/layer-legend-list/layer-legend-list.component.mjs +104 -0
- package/esm2022/lib/layer/layer-list/index.mjs +2 -0
- package/esm2022/lib/layer/layer-list/layer-list.component.mjs +232 -0
- package/esm2022/lib/layer/layer-list-tool/index.mjs +4 -0
- package/esm2022/lib/layer/layer-list-tool/layer-list-tool.component.mjs +92 -0
- package/esm2022/lib/layer/layer-list-tool/layer-list-tool.interface.mjs +7 -0
- package/esm2022/lib/layer/layer-list-tool/layer-list-tool.service.mjs +61 -0
- package/esm2022/lib/layer/layer-search/index.mjs +2 -0
- package/esm2022/lib/layer/layer-search/layer-search.component.mjs +65 -0
- package/esm2022/lib/layer/layer-unavailable/index.mjs +3 -0
- package/esm2022/lib/layer/layer-unavailable/layer-unavailable-list/layer-unavailable-list.component.mjs +26 -0
- package/esm2022/lib/layer/layer-unavailable/layer-unavailable.component.mjs +35 -0
- package/esm2022/lib/layer/layer-viewer/index.mjs +3 -0
- package/esm2022/lib/layer/layer-viewer/layer-viewer.component.mjs +226 -0
- package/esm2022/lib/layer/layer-viewer/layer-viewer.interface.mjs +2 -0
- package/esm2022/lib/layer/layer-viewer-bottom-actions/index.mjs +2 -0
- package/esm2022/lib/layer/layer-viewer-bottom-actions/layer-viewer-bottom-actions.component.mjs +207 -0
- package/esm2022/lib/layer/layer-visibility-button/index.mjs +2 -0
- package/esm2022/lib/layer/layer-visibility-button/layer-visibility-button.component.mjs +83 -0
- package/esm2022/lib/layer/layer.module.mjs +107 -0
- package/esm2022/lib/layer/shared/clusterParam.mjs +2 -0
- package/esm2022/lib/layer/shared/index.mjs +6 -0
- package/esm2022/lib/layer/shared/layer-controller.mjs +316 -0
- package/esm2022/lib/layer/shared/layer-selection.mjs +38 -0
- package/esm2022/lib/layer/shared/layer.enums.mjs +2 -0
- package/esm2022/lib/layer/shared/layer.service.mjs +315 -0
- package/esm2022/lib/layer/shared/layers/any-layer.interface.mjs +2 -0
- package/esm2022/lib/layer/shared/layers/any-layer.mjs +2 -0
- package/esm2022/lib/layer/shared/layers/image-layer.interface.mjs +2 -0
- package/esm2022/lib/layer/shared/layers/image-layer.mjs +75 -0
- package/esm2022/lib/layer/shared/layers/index.mjs +18 -0
- package/esm2022/lib/layer/shared/layers/layer-base.mjs +199 -0
- package/esm2022/lib/layer/shared/layers/layer-group.interface.mjs +2 -0
- package/esm2022/lib/layer/shared/layers/layer-group.mjs +120 -0
- package/esm2022/lib/layer/shared/layers/layer.interface.mjs +7 -0
- package/esm2022/lib/layer/shared/layers/layer.mjs +178 -0
- package/esm2022/lib/layer/shared/layers/legend.interface.mjs +2 -0
- package/esm2022/lib/layer/shared/layers/linked/index.mjs +4 -0
- package/esm2022/lib/layer/shared/layers/linked/linked-layer.interface.mjs +12 -0
- package/esm2022/lib/layer/shared/layers/linked/linked-layer.mjs +242 -0
- package/esm2022/lib/layer/shared/layers/linked/linked-layer.utils.mjs +70 -0
- package/esm2022/lib/layer/shared/layers/tile-layer.interface.mjs +2 -0
- package/esm2022/lib/layer/shared/layers/tile-layer.mjs +55 -0
- package/esm2022/lib/layer/shared/layers/vector-layer.interface.mjs +2 -0
- package/esm2022/lib/layer/shared/layers/vector-layer.mjs +576 -0
- package/esm2022/lib/layer/shared/layers/vectortile-layer.interface.mjs +2 -0
- package/esm2022/lib/layer/shared/layers/vectortile-layer.mjs +112 -0
- package/esm2022/lib/layer/track-feature-button/index.mjs +2 -0
- package/esm2022/lib/layer/track-feature-button/track-feature-button.component.mjs +54 -0
- package/esm2022/lib/layer/utils/image-watcher.mjs +62 -0
- package/esm2022/lib/layer/utils/index.mjs +6 -0
- package/esm2022/lib/layer/utils/layer.utils.mjs +57 -0
- package/esm2022/lib/layer/utils/outputLegend.mjs +32 -0
- package/esm2022/lib/layer/utils/tile-watcher.mjs +52 -0
- package/esm2022/lib/layer/utils/vector-watcher.mjs +50 -0
- package/esm2022/lib/map/baselayers-switcher/baselayers-switcher.animation.mjs +20 -0
- package/esm2022/lib/map/baselayers-switcher/baselayers-switcher.component.mjs +87 -0
- package/esm2022/lib/map/baselayers-switcher/index.mjs +3 -0
- package/esm2022/lib/map/baselayers-switcher/mini-basemap.component.mjs +122 -0
- package/esm2022/lib/map/geolocate-button/geolocate-button.component.mjs +78 -0
- package/esm2022/lib/map/geolocate-button/index.mjs +2 -0
- package/esm2022/lib/map/home-extent-button/home-extent-button.component.mjs +73 -0
- package/esm2022/lib/map/home-extent-button/home-extent-button.interface.mjs +2 -0
- package/esm2022/lib/map/home-extent-button/index.mjs +3 -0
- package/esm2022/lib/map/index.mjs +14 -0
- package/esm2022/lib/map/info-section/index.mjs +2 -0
- package/esm2022/lib/map/info-section/info-section.component.mjs +15 -0
- package/esm2022/lib/map/map-browser/index.mjs +2 -0
- package/esm2022/lib/map/map-browser/map-browser.component.mjs +67 -0
- package/esm2022/lib/map/map-center/index.mjs +2 -0
- package/esm2022/lib/map/map-center/map-center.component.mjs +56 -0
- package/esm2022/lib/map/map.module.mjs +89 -0
- package/esm2022/lib/map/menu-button/index.mjs +2 -0
- package/esm2022/lib/map/menu-button/menu-button.component.mjs +57 -0
- package/esm2022/lib/map/offline-button/index.mjs +2 -0
- package/esm2022/lib/map/offline-button/offline-button.component.mjs +53 -0
- package/esm2022/lib/map/rotation-button/index.mjs +2 -0
- package/esm2022/lib/map/rotation-button/rotation-button.component.mjs +58 -0
- package/esm2022/lib/map/shared/controllers/controller.mjs +44 -0
- package/esm2022/lib/map/shared/controllers/geolocation.interface.mjs +8 -0
- package/esm2022/lib/map/shared/controllers/geolocation.mjs +431 -0
- package/esm2022/lib/map/shared/controllers/index.mjs +5 -0
- package/esm2022/lib/map/shared/controllers/view.mjs +361 -0
- package/esm2022/lib/map/shared/hover-feature.directive.mjs +481 -0
- package/esm2022/lib/map/shared/index.mjs +15 -0
- package/esm2022/lib/map/shared/linkedLayers.utils.mjs +238 -0
- package/esm2022/lib/map/shared/map-pointer-position.directive.mjs +122 -0
- package/esm2022/lib/map/shared/map.abstract.mjs +24 -0
- package/esm2022/lib/map/shared/map.enums.mjs +6 -0
- package/esm2022/lib/map/shared/map.interface.mjs +2 -0
- package/esm2022/lib/map/shared/map.mjs +201 -0
- package/esm2022/lib/map/shared/map.service.mjs +29 -0
- package/esm2022/lib/map/shared/map.utils.mjs +455 -0
- package/esm2022/lib/map/shared/mapOffline.directive.mjs +114 -0
- package/esm2022/lib/map/shared/projection.interfaces.mjs +2 -0
- package/esm2022/lib/map/shared/projection.service.mjs +67 -0
- package/esm2022/lib/map/shared/projection.utils.mjs +122 -0
- package/esm2022/lib/map/swipe-control/index.mjs +2 -0
- package/esm2022/lib/map/swipe-control/swipe-control.component.mjs +211 -0
- package/esm2022/lib/map/utils/index.mjs +2 -0
- package/esm2022/lib/map/utils/layer-watcher.mjs +112 -0
- package/esm2022/lib/map/wake-lock-button/index.mjs +2 -0
- package/esm2022/lib/map/wake-lock-button/wake-lock-button.component.mjs +103 -0
- package/esm2022/lib/map/zoom-button/index.mjs +2 -0
- package/esm2022/lib/map/zoom-button/zoom-button.component.mjs +35 -0
- package/esm2022/lib/measure/index.mjs +3 -0
- package/esm2022/lib/measure/measure.module.mjs +20 -0
- package/esm2022/lib/measure/measurer/index.mjs +6 -0
- package/esm2022/lib/measure/measurer/measure-format.pipe.mjs +40 -0
- package/esm2022/lib/measure/measurer/measurer-dialog.component.mjs +38 -0
- package/esm2022/lib/measure/measurer/measurer-item.component.mjs +143 -0
- package/esm2022/lib/measure/measurer/measurer.component.mjs +948 -0
- package/esm2022/lib/measure/measurer/measurer.module.mjs +20 -0
- package/esm2022/lib/measure/shared/index.mjs +4 -0
- package/esm2022/lib/measure/shared/measure.enum.mjs +37 -0
- package/esm2022/lib/measure/shared/measure.interfaces.mjs +2 -0
- package/esm2022/lib/measure/shared/measure.utils.mjs +497 -0
- package/esm2022/lib/metadata/index.mjs +4 -0
- package/esm2022/lib/metadata/metadata-button/index.mjs +2 -0
- package/esm2022/lib/metadata/metadata-button/metadata-button.component.mjs +96 -0
- package/esm2022/lib/metadata/metadata.module.mjs +29 -0
- package/esm2022/lib/metadata/shared/index.mjs +3 -0
- package/esm2022/lib/metadata/shared/metadata.interface.mjs +2 -0
- package/esm2022/lib/metadata/shared/metadata.service.mjs +18 -0
- package/esm2022/lib/offline/geoDB/configFileToGeoDB.service.mjs +130 -0
- package/esm2022/lib/offline/geoDB/geoDB.enums.mjs +6 -0
- package/esm2022/lib/offline/geoDB/geoDB.interface.mjs +2 -0
- package/esm2022/lib/offline/geoDB/geoDB.service.mjs +172 -0
- package/esm2022/lib/offline/geoDB/index.mjs +5 -0
- package/esm2022/lib/offline/index.mjs +6 -0
- package/esm2022/lib/offline/layerDB/index.mjs +3 -0
- package/esm2022/lib/offline/layerDB/layerDB.interface.mjs +2 -0
- package/esm2022/lib/offline/layerDB/layerDB.service.mjs +83 -0
- package/esm2022/lib/offline/offline.interface.mjs +2 -0
- package/esm2022/lib/offline/offline.provider.mjs +50 -0
- package/esm2022/lib/offline/shared/geo-network.service.mjs +79 -0
- package/esm2022/lib/offline/shared/index.mjs +2 -0
- package/esm2022/lib/overlay/index.mjs +2 -0
- package/esm2022/lib/overlay/shared/index.mjs +4 -0
- package/esm2022/lib/overlay/shared/overlay.enum.mjs +8 -0
- package/esm2022/lib/overlay/shared/overlay.mjs +139 -0
- package/esm2022/lib/overlay/shared/overlay.utils.mjs +17 -0
- package/esm2022/lib/print/index.mjs +4 -0
- package/esm2022/lib/print/print/print.component.mjs +116 -0
- package/esm2022/lib/print/print-form/index.mjs +2 -0
- package/esm2022/lib/print/print-form/print-form.component.mjs +320 -0
- package/esm2022/lib/print/print.module.mjs +20 -0
- package/esm2022/lib/print/shared/geopdf.mjs +68 -0
- package/esm2022/lib/print/shared/index.mjs +5 -0
- package/esm2022/lib/print/shared/print.interface.mjs +2 -0
- package/esm2022/lib/print/shared/print.service.mjs +1136 -0
- package/esm2022/lib/print/shared/print.type.mjs +30 -0
- package/esm2022/lib/query/index.mjs +2 -0
- package/esm2022/lib/query/query.module.mjs +27 -0
- package/esm2022/lib/query/shared/index.mjs +8 -0
- package/esm2022/lib/query/shared/query-search-source.mjs +35 -0
- package/esm2022/lib/query/shared/query-search-source.providers.mjs +22 -0
- package/esm2022/lib/query/shared/query.directive.mjs +290 -0
- package/esm2022/lib/query/shared/query.enums.mjs +32 -0
- package/esm2022/lib/query/shared/query.interfaces.mjs +2 -0
- package/esm2022/lib/query/shared/query.service.mjs +753 -0
- package/esm2022/lib/query/shared/query.utils.mjs +45 -0
- package/esm2022/lib/search/index.mjs +10 -0
- package/esm2022/lib/search/search-bar/search-bar.component.mjs +483 -0
- package/esm2022/lib/search/search-bar/search-bar.module.mjs +19 -0
- package/esm2022/lib/search/search-results/index.mjs +5 -0
- package/esm2022/lib/search/search-results/save-feature-dialog.component.mjs +101 -0
- package/esm2022/lib/search/search-results/search-results-add-button.component.mjs +433 -0
- package/esm2022/lib/search/search-results/search-results-item.component.mjs +119 -0
- package/esm2022/lib/search/search-results/search-results.component.mjs +297 -0
- package/esm2022/lib/search/search-results/search-results.directive.mjs +7 -0
- package/esm2022/lib/search/search-results/search-results.module.mjs +20 -0
- package/esm2022/lib/search/search-selector/search-selector.component.mjs +118 -0
- package/esm2022/lib/search/search-selector/search-selector.module.mjs +19 -0
- package/esm2022/lib/search/search-settings/search-settings.component.mjs +264 -0
- package/esm2022/lib/search/search-settings/search-settings.module.mjs +19 -0
- package/esm2022/lib/search/search.module.mjs +77 -0
- package/esm2022/lib/search/shared/index.mjs +10 -0
- package/esm2022/lib/search/shared/search-pointer-summary.directive.mjs +328 -0
- package/esm2022/lib/search/shared/search-source-service.providers.mjs +20 -0
- package/esm2022/lib/search/shared/search-source.service.mjs +56 -0
- package/esm2022/lib/search/shared/search.enums.mjs +4 -0
- package/esm2022/lib/search/shared/search.interfaces.mjs +2 -0
- package/esm2022/lib/search/shared/search.provider.mjs +20 -0
- package/esm2022/lib/search/shared/search.service.mjs +149 -0
- package/esm2022/lib/search/shared/search.utils.mjs +92 -0
- package/esm2022/lib/search/shared/sources/cadastre.mjs +142 -0
- package/esm2022/lib/search/shared/sources/cadastre.providers.mjs +32 -0
- package/esm2022/lib/search/shared/sources/coordinates.interfaces.mjs +2 -0
- package/esm2022/lib/search/shared/sources/coordinates.mjs +168 -0
- package/esm2022/lib/search/shared/sources/coordinates.providers.mjs +52 -0
- package/esm2022/lib/search/shared/sources/icherche-icons.mjs +32 -0
- package/esm2022/lib/search/shared/sources/icherche.interfaces.mjs +2 -0
- package/esm2022/lib/search/shared/sources/icherche.mjs +816 -0
- package/esm2022/lib/search/shared/sources/icherche.providers.mjs +87 -0
- package/esm2022/lib/search/shared/sources/ilayer.interfaces.mjs +2 -0
- package/esm2022/lib/search/shared/sources/ilayer.mjs +339 -0
- package/esm2022/lib/search/shared/sources/ilayer.providers.mjs +58 -0
- package/esm2022/lib/search/shared/sources/index.mjs +23 -0
- package/esm2022/lib/search/shared/sources/nominatim.interfaces.mjs +2 -0
- package/esm2022/lib/search/shared/sources/nominatim.mjs +263 -0
- package/esm2022/lib/search/shared/sources/nominatim.providers.mjs +31 -0
- package/esm2022/lib/search/shared/sources/source.interfaces.mjs +13 -0
- package/esm2022/lib/search/shared/sources/source.mjs +221 -0
- package/esm2022/lib/search/shared/sources/storedqueries.interfaces.mjs +2 -0
- package/esm2022/lib/search/shared/sources/storedqueries.mjs +454 -0
- package/esm2022/lib/search/shared/sources/storedqueries.providers.mjs +56 -0
- package/esm2022/lib/search/shared/sources/workspace.interfaces.mjs +2 -0
- package/esm2022/lib/search/shared/sources/workspace.mjs +192 -0
- package/esm2022/lib/search/shared/sources/workspace.providers.mjs +31 -0
- package/esm2022/lib/style/index.mjs +5 -0
- package/esm2022/lib/style/shared/datasource/esri-style-generator.mjs +360 -0
- package/esm2022/lib/style/shared/datasource/index.mjs +2 -0
- package/esm2022/lib/style/shared/feature/feature-style.mjs +162 -0
- package/esm2022/lib/style/shared/feature/index.mjs +2 -0
- package/esm2022/lib/style/shared/font.enum.mjs +17 -0
- package/esm2022/lib/style/shared/index.mjs +5 -0
- package/esm2022/lib/style/shared/overlay/index.mjs +3 -0
- package/esm2022/lib/style/shared/overlay/overlay-marker-style.utils.mjs +39 -0
- package/esm2022/lib/style/shared/overlay/overlay-style.utils.mjs +88 -0
- package/esm2022/lib/style/shared/vector/commonVectorStyle.mjs +78 -0
- package/esm2022/lib/style/shared/vector/conversion.utils.mjs +27 -0
- package/esm2022/lib/style/shared/vector/index.mjs +4 -0
- package/esm2022/lib/style/shared/vector/vector-style.interface.mjs +2 -0
- package/esm2022/lib/style/style-list/index.mjs +5 -0
- package/esm2022/lib/style/style-list/style-list.interface.mjs +2 -0
- package/esm2022/lib/style/style-list/style-list.module.mjs +23 -0
- package/esm2022/lib/style/style-list/style-list.provider.mjs +21 -0
- package/esm2022/lib/style/style-list/style-list.service.mjs +52 -0
- package/esm2022/lib/style/style-modal/drawing/index.mjs +2 -0
- package/esm2022/lib/style/style-modal/drawing/style-modal-drawing.component.mjs +193 -0
- package/esm2022/lib/style/style-modal/index.mjs +5 -0
- package/esm2022/lib/style/style-modal/layer/index.mjs +2 -0
- package/esm2022/lib/style/style-modal/layer/style-modal-layer.component.mjs +142 -0
- package/esm2022/lib/style/style-modal/layer-button/index.mjs +2 -0
- package/esm2022/lib/style/style-modal/layer-button/style-modal-layer-button.component.mjs +44 -0
- package/esm2022/lib/style/style-modal/shared/index.mjs +2 -0
- package/esm2022/lib/style/style-modal/shared/style-modal.interface.mjs +2 -0
- package/esm2022/lib/style/style-service/draw-style.service.mjs +255 -0
- package/esm2022/lib/style/style-service/index.mjs +3 -0
- package/esm2022/lib/style/style-service/style.service.mjs +393 -0
- package/esm2022/lib/style/style.module.mjs +46 -0
- package/esm2022/lib/toast/index.mjs +2 -0
- package/esm2022/lib/toast/toast.component.mjs +99 -0
- package/esm2022/lib/toast/toast.module.mjs +24 -0
- package/esm2022/lib/utils/googleLinks.mjs +13 -0
- package/esm2022/lib/utils/id-generator.mjs +112 -0
- package/esm2022/lib/utils/index.mjs +5 -0
- package/esm2022/lib/utils/osmLinks.mjs +9 -0
- package/esm2022/lib/utils/propertyTypeDetector/index.mjs +3 -0
- package/esm2022/lib/utils/propertyTypeDetector/propertyTypeDetector.interface.mjs +2 -0
- package/esm2022/lib/utils/propertyTypeDetector/propertyTypeDetector.service.mjs +64 -0
- package/esm2022/lib/wkt/index.mjs +2 -0
- package/esm2022/lib/wkt/shared/index.mjs +2 -0
- package/esm2022/lib/wkt/shared/wkt.service.mjs +235 -0
- package/esm2022/lib/wkt/wkt.module.mjs +25 -0
- package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.component.mjs +36 -0
- package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.module.mjs +19 -0
- package/esm2022/lib/workspace/confirmation-popup/index.mjs +3 -0
- package/esm2022/lib/workspace/index.mjs +8 -0
- package/esm2022/lib/workspace/shared/edition-workspace.mjs +301 -0
- package/esm2022/lib/workspace/shared/edition-workspace.service.mjs +720 -0
- package/esm2022/lib/workspace/shared/feature-workspace.mjs +41 -0
- package/esm2022/lib/workspace/shared/feature-workspace.service.mjs +113 -0
- package/esm2022/lib/workspace/shared/index.mjs +8 -0
- package/esm2022/lib/workspace/shared/wfs-workspace.mjs +41 -0
- package/esm2022/lib/workspace/shared/wfs-workspace.service.mjs +121 -0
- package/esm2022/lib/workspace/shared/wms-workspace.service.mjs +248 -0
- package/esm2022/lib/workspace/shared/workspace.utils.mjs +188 -0
- package/esm2022/lib/workspace/widgets/index.mjs +4 -0
- package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.component.mjs +48 -0
- package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.module.mjs +19 -0
- package/esm2022/lib/workspace/widgets/widgets.mjs +15 -0
- package/esm2022/lib/workspace/workspace-selector/workspace-selector.directive.mjs +172 -0
- package/esm2022/lib/workspace/workspace-selector/workspace-selector.module.mjs +19 -0
- package/esm2022/lib/workspace/workspace-updator/workspace-updator.directive.mjs +137 -0
- package/esm2022/lib/workspace/workspace-updator/workspace-updator.module.mjs +19 -0
- package/esm2022/lib/workspace/workspace.module.mjs +32 -0
- package/esm2022/public_api.mjs +56 -0
- package/fesm2022/igo2-geo.mjs +717 -691
- package/fesm2022/igo2-geo.mjs.map +1 -1
- package/lib/datasource/shared/datasources/datasource.d.ts +2 -2
- package/lib/directions/shared/directions.service.d.ts +0 -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 +8 -1
- package/lib/style/style-list/style-list.service.d.ts +1 -1
- package/package.json +16 -14
- package/src/lib/layer/layer-list/layer-list.theme.scss +1 -2
- package/src/lib/map/menu-button/menu-button.theming.scss +3 -3
- package/src/style/style.scss +1 -1
|
@@ -0,0 +1,119 @@
|
|
|
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 { getEntityIcon, getEntityTitle, getEntityTitleHtml } from '@igo2/common/entity';
|
|
8
|
+
import { StopPropagationDirective } from '@igo2/common/stop-propagation';
|
|
9
|
+
import olFormatGeoJSON from 'ol/format/GeoJSON';
|
|
10
|
+
import { FeatureMotion, moveToOlFeatures } from '../../feature';
|
|
11
|
+
import { IgoMap } from '../../map/shared/map';
|
|
12
|
+
import * as i0 from "@angular/core";
|
|
13
|
+
import * as i1 from "@angular/material/list";
|
|
14
|
+
import * as i2 from "@angular/material/icon";
|
|
15
|
+
import * as i3 from "@angular/material/tooltip";
|
|
16
|
+
import * as i4 from "@angular/material/button";
|
|
17
|
+
/**
|
|
18
|
+
* Search results list item
|
|
19
|
+
*/
|
|
20
|
+
export class SearchResultsItemComponent {
|
|
21
|
+
/**
|
|
22
|
+
* Search result item
|
|
23
|
+
*/
|
|
24
|
+
result;
|
|
25
|
+
map;
|
|
26
|
+
/**
|
|
27
|
+
* Search result title
|
|
28
|
+
* @internal
|
|
29
|
+
*/
|
|
30
|
+
/**
|
|
31
|
+
* to show hide results icons
|
|
32
|
+
*/
|
|
33
|
+
showIcons;
|
|
34
|
+
/**
|
|
35
|
+
* Whether there should be a zoom button
|
|
36
|
+
*/
|
|
37
|
+
withZoomButton = false;
|
|
38
|
+
zoomEvent = new EventEmitter();
|
|
39
|
+
format = new olFormatGeoJSON();
|
|
40
|
+
get title() {
|
|
41
|
+
return getEntityTitle(this.result);
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Search result HTML title
|
|
45
|
+
* @internal
|
|
46
|
+
*/
|
|
47
|
+
get titleHtml() {
|
|
48
|
+
return getEntityTitleHtml(this.result);
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Search result tooltip
|
|
52
|
+
* @internal
|
|
53
|
+
*/
|
|
54
|
+
get tooltipHtml() {
|
|
55
|
+
return this.titleHtml
|
|
56
|
+
.replace(/<small?[^>]+(>|$)/g, '\n')
|
|
57
|
+
.replace(/<\/?[^>]+(>|$)/g, '');
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Search result icon
|
|
61
|
+
* @internal
|
|
62
|
+
*/
|
|
63
|
+
get icon() {
|
|
64
|
+
return getEntityIcon(this.result);
|
|
65
|
+
}
|
|
66
|
+
onZoomHandler() {
|
|
67
|
+
const olFeature = this.format.readFeature(this.result.data, {
|
|
68
|
+
dataProjection: this.result.data.projection,
|
|
69
|
+
featureProjection: this.map.projection
|
|
70
|
+
});
|
|
71
|
+
moveToOlFeatures(this.map.viewController, [olFeature], FeatureMotion.Default);
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* On mouse event, mouseenter /mouseleave
|
|
75
|
+
* @internal
|
|
76
|
+
*/
|
|
77
|
+
onMouseEvent(event) {
|
|
78
|
+
const element = event.target;
|
|
79
|
+
const type = event.type;
|
|
80
|
+
switch (type) {
|
|
81
|
+
case 'mouseenter': {
|
|
82
|
+
const hideBtn = element.querySelector('#hide-save-search-result-btn');
|
|
83
|
+
hideBtn?.setAttribute('id', 'show-save-search-result-btn');
|
|
84
|
+
break;
|
|
85
|
+
}
|
|
86
|
+
case 'mouseleave': {
|
|
87
|
+
const showBtn = element.querySelector('#show-save-search-result-btn');
|
|
88
|
+
showBtn?.setAttribute('id', 'hide-save-search-result-btn');
|
|
89
|
+
break;
|
|
90
|
+
}
|
|
91
|
+
default:
|
|
92
|
+
break;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SearchResultsItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
96
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SearchResultsItemComponent, isStandalone: true, selector: "igo-search-results-item", inputs: { result: "result", map: "map", showIcons: "showIcons", withZoomButton: "withZoomButton" }, outputs: { zoomEvent: "zoomEvent" }, ngImport: i0, template: "<mat-list-item\n (mouseenter)=\"onMouseEvent($event)\"\n (mouseleave)=\"onMouseEvent($event)\"\n>\n <mat-icon *ngIf=\"icon\" matListItemIcon>{{\n showIcons ? icon : 'blank'\n }}</mat-icon>\n\n <div\n matListItemTitle\n *ngIf=\"titleHtml; else normalTitle\"\n [innerHtml]=\"titleHtml\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"tooltipHtml\"\n matTooltipClass=\"search-result-tooltip\"\n ></div>\n <ng-template #normalTitle>\n <span\n matListItemTitle\n *ngIf=\"!titleHtml\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"title\"\n >{{ title }}</span\n >\n </ng-template>\n\n <div matListItemMeta>\n <button\n *ngIf=\"withZoomButton\"\n igoStopPropagation\n mat-icon-button\n (click)=\"onZoomHandler()\"\n >\n <mat-icon>search</mat-icon>\n </button>\n\n <ng-content select=\"[igoSearchItemToolbar]\"> </ng-content>\n </div>\n</mat-list-item>\n", styles: [":host ::ng-deep small{color:#8c8c8c}:host div[matlistitemmeta]:empty{display:none}:host ::ng-deep .search-result-tooltip{white-space:pre-line}\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: "directive", type: StopPropagationDirective, selector: "[igoStopPropagation]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
97
|
+
}
|
|
98
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SearchResultsItemComponent, decorators: [{
|
|
99
|
+
type: Component,
|
|
100
|
+
args: [{ selector: 'igo-search-results-item', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
101
|
+
MatListModule,
|
|
102
|
+
NgIf,
|
|
103
|
+
MatIconModule,
|
|
104
|
+
MatTooltipModule,
|
|
105
|
+
MatButtonModule,
|
|
106
|
+
StopPropagationDirective
|
|
107
|
+
], template: "<mat-list-item\n (mouseenter)=\"onMouseEvent($event)\"\n (mouseleave)=\"onMouseEvent($event)\"\n>\n <mat-icon *ngIf=\"icon\" matListItemIcon>{{\n showIcons ? icon : 'blank'\n }}</mat-icon>\n\n <div\n matListItemTitle\n *ngIf=\"titleHtml; else normalTitle\"\n [innerHtml]=\"titleHtml\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"tooltipHtml\"\n matTooltipClass=\"search-result-tooltip\"\n ></div>\n <ng-template #normalTitle>\n <span\n matListItemTitle\n *ngIf=\"!titleHtml\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"title\"\n >{{ title }}</span\n >\n </ng-template>\n\n <div matListItemMeta>\n <button\n *ngIf=\"withZoomButton\"\n igoStopPropagation\n mat-icon-button\n (click)=\"onZoomHandler()\"\n >\n <mat-icon>search</mat-icon>\n </button>\n\n <ng-content select=\"[igoSearchItemToolbar]\"> </ng-content>\n </div>\n</mat-list-item>\n", styles: [":host ::ng-deep small{color:#8c8c8c}:host div[matlistitemmeta]:empty{display:none}:host ::ng-deep .search-result-tooltip{white-space:pre-line}\n"] }]
|
|
108
|
+
}], propDecorators: { result: [{
|
|
109
|
+
type: Input
|
|
110
|
+
}], map: [{
|
|
111
|
+
type: Input
|
|
112
|
+
}], showIcons: [{
|
|
113
|
+
type: Input
|
|
114
|
+
}], withZoomButton: [{
|
|
115
|
+
type: Input
|
|
116
|
+
}], zoomEvent: [{
|
|
117
|
+
type: Output
|
|
118
|
+
}] } });
|
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLXJlc3VsdHMtaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9zZWFyY2gvc2VhcmNoLXJlc3VsdHMvc2VhcmNoLXJlc3VsdHMtaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9zZWFyY2gvc2VhcmNoLXJlc3VsdHMvc2VhcmNoLXJlc3VsdHMtaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdkMsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFN0QsT0FBTyxFQUNMLGFBQWEsRUFDYixjQUFjLEVBQ2Qsa0JBQWtCLEVBQ25CLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFekUsT0FBTyxlQUFlLE1BQU0sbUJBQW1CLENBQUM7QUFFaEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7OztBQUc5Qzs7R0FFRztBQWdCSCxNQUFNLE9BQU8sMEJBQTBCO0lBQ3JDOztPQUVHO0lBQ00sTUFB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L2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0TGlzdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xpc3QnO1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuXG5pbXBvcnQge1xuICBnZXRFbnRpdHlJY29uLFxuICBnZXRFbnRpdHlUaXRsZSxcbiAgZ2V0RW50aXR5VGl0bGVIdG1sXG59IGZyb20gJ0BpZ28yL2NvbW1vbi9lbnRpdHknO1xuaW1wb3J0IHsgU3RvcFByb3BhZ2F0aW9uRGlyZWN0aXZlIH0gZnJvbSAnQGlnbzIvY29tbW9uL3N0b3AtcHJvcGFnYXRpb24nO1xuXG5pbXBvcnQgb2xGb3JtYXRHZW9KU09OIGZyb20gJ29sL2Zvcm1hdC9HZW9KU09OJztcblxuaW1wb3J0IHsgRmVhdHVyZU1vdGlvbiwgbW92ZVRvT2xGZWF0dXJlcyB9IGZyb20gJy4uLy4uL2ZlYXR1cmUnO1xuaW1wb3J0IHsgSWdvTWFwIH0gZnJvbSAnLi4vLi4vbWFwL3NoYXJlZC9tYXAnO1xuaW1wb3J0IHsgU2VhcmNoUmVzdWx0IH0gZnJvbSAnLi4vc2hhcmVkL3NlYXJjaC5pbnRlcmZhY2VzJztcblxuLyoqXG4gKiBTZWFyY2ggcmVzdWx0cyBsaXN0IGl0ZW1cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaWdvLXNlYXJjaC1yZXN1bHRzLWl0ZW0nLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VhcmNoLXJlc3VsdHMtaXRlbS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NlYXJjaC1yZXN1bHRzLWl0ZW0uY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBNYXRMaXN0TW9kdWxlLFxuICAgIE5nSWYsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICBTdG9wUHJvcGFnYXRpb25EaXJlY3RpdmVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTZWFyY2hSZXN1bHRzSXRlbUNvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBTZWFyY2ggcmVzdWx0IGl0ZW1cbiAgICovXG4gIEBJbnB1dCgpIHJlc3VsdDogU2VhcmNoUmVzdWx0O1xuXG4gIEBJbnB1dCgpIG1hcDogSWdvTWFwO1xuXG4gIC8qKlxuICAgKiBTZWFyY2ggcmVzdWx0IHRpdGxlXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cblxuICAvKipcbiAgICogdG8gc2hvdyBoaWRlIHJlc3VsdHMgaWNvbnNcbiAgICovXG4gIEBJbnB1dCgpIHNob3dJY29uczogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciB0aGVyZSBzaG91bGQgYmUgYSB6b29tIGJ1dHRvblxuICAgKi9cbiAgQElucHV0KCkgd2l0aFpvb21CdXR0b24gPSBmYWxzZTtcblxuICBAT3V0cHV0KCkgem9vbUV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIHByaXZhdGUgZm9ybWF0ID0gbmV3IG9sRm9ybWF0R2VvSlNPTigpO1xuXG4gIGdldCB0aXRsZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiBnZXRFbnRpdHlUaXRsZSh0aGlzLnJlc3VsdCk7XG4gIH1cblxuICAvKipcbiAgICogU2VhcmNoIHJlc3VsdCBIVE1MIHRpdGxlXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgZ2V0IHRpdGxlSHRtbCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBnZXRFbnRpdHlUaXRsZUh0bWwodGhpcy5yZXN1bHQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNlYXJjaCByZXN1bHQgdG9vbHRpcFxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIGdldCB0b29sdGlwSHRtbCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnRpdGxlSHRtbFxuICAgICAgLnJlcGxhY2UoLzxzbWFsbD9bXj5dKyg+fCQpL2csICdcXG4nKVxuICAgICAgLnJlcGxhY2UoLzxcXC8/W14+XSsoPnwkKS9nLCAnJyk7XG4gIH1cblxuICAvKipcbiAgICogU2VhcmNoIHJlc3VsdCBpY29uXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgZ2V0IGljb24oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZ2V0RW50aXR5SWNvbih0aGlzLnJlc3VsdCk7XG4gIH1cblxuICBvblpvb21IYW5kbGVyKCkge1xuICAgIGNvbnN0IG9sRmVhdHVyZSA9IHRoaXMuZm9ybWF0LnJlYWRGZWF0dXJlKHRoaXMucmVzdWx0LmRhdGEsIHtcbiAgICAgIGRhdGFQcm9qZWN0aW9uOiB0aGlzLnJlc3VsdC5kYXRhLnByb2plY3Rpb24sXG4gICAgICBmZWF0dXJlUHJvamVjdGlvbjogdGhpcy5tYXAucHJvamVjdGlvblxuICAgIH0pO1xuICAgIG1vdmVUb09sRmVhdHVyZXMoXG4gICAgICB0aGlzLm1hcC52aWV3Q29udHJvbGxlcixcbiAgICAgIFtvbEZlYXR1cmVdLFxuICAgICAgRmVhdHVyZU1vdGlvbi5EZWZhdWx0XG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPbiBtb3VzZSBldmVudCwgbW91c2VlbnRlciAvbW91c2VsZWF2ZVxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIG9uTW91c2VFdmVudChldmVudCkge1xuICAgIGNvbnN0IGVsZW1lbnQgPSBldmVudC50YXJnZXQ7XG4gICAgY29uc3QgdHlwZSA9IGV2ZW50LnR5cGU7XG4gICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICBjYXNlICdtb3VzZWVudGVyJzoge1xuICAgICAgICBjb25zdCBoaWRlQnRuID0gZWxlbWVudC5xdWVyeVNlbGVjdG9yKCcjaGlkZS1zYXZlLXNlYXJjaC1yZXN1bHQtYnRuJyk7XG4gICAgICAgIGhpZGVCdG4/LnNldEF0dHJpYnV0ZSgnaWQnLCAnc2hvdy1zYXZlLXNlYXJjaC1yZXN1bHQtYnRuJyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSAnbW91c2VsZWF2ZSc6IHtcbiAgICAgICAgY29uc3Qgc2hvd0J0biA9IGVsZW1lbnQucXVlcnlTZWxlY3RvcignI3Nob3ctc2F2ZS1zZWFyY2gtcmVzdWx0LWJ0bicpO1xuICAgICAgICBzaG93QnRuPy5zZXRBdHRyaWJ1dGUoJ2lkJywgJ2hpZGUtc2F2ZS1zZWFyY2gtcmVzdWx0LWJ0bicpO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxufVxuIiwiPG1hdC1saXN0LWl0ZW1cbiAgKG1vdXNlZW50ZXIpPVwib25Nb3VzZUV2ZW50KCRldmVudClcIlxuICAobW91c2VsZWF2ZSk9XCJvbk1vdXNlRXZlbnQoJGV2ZW50KVwiXG4+XG4gIDxtYXQtaWNvbiAqbmdJZj1cImljb25cIiBtYXRMaXN0SXRlbUljb24+e3tcbiAgICBzaG93SWNvbnMgPyBpY29uIDogJ2JsYW5rJ1xuICB9fTwvbWF0LWljb24+XG5cbiAgPGRpdlxuICAgIG1hdExpc3RJdGVtVGl0bGVcbiAgICAqbmdJZj1cInRpdGxlSHRtbDsgZWxzZSBub3JtYWxUaXRsZVwiXG4gICAgW2lubmVySHRtbF09XCJ0aXRsZUh0bWxcIlxuICAgIG1hdFRvb2x0aXBTaG93RGVsYXk9XCI1MDBcIlxuICAgIFttYXRUb29sdGlwXT1cInRvb2x0aXBIdG1sXCJcbiAgICBtYXRUb29sdGlwQ2xhc3M9XCJzZWFyY2gtcmVzdWx0LXRvb2x0aXBcIlxuICA+PC9kaXY+XG4gIDxuZy10ZW1wbGF0ZSAjbm9ybWFsVGl0bGU+XG4gICAgPHNwYW5cbiAgICAgIG1hdExpc3RJdGVtVGl0bGVcbiAgICAgICpuZ0lmPVwiIXRpdGxlSHRtbFwiXG4gICAgICBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcbiAgICAgIFttYXRUb29sdGlwXT1cInRpdGxlXCJcbiAgICAgID57eyB0aXRsZSB9fTwvc3BhblxuICAgID5cbiAgPC9uZy10ZW1wbGF0ZT5cblxuICA8ZGl2IG1hdExpc3RJdGVtTWV0YT5cbiAgICA8YnV0dG9uXG4gICAgICAqbmdJZj1cIndpdGhab29tQnV0dG9uXCJcbiAgICAgIGlnb1N0b3BQcm9wYWdhdGlvblxuICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAoY2xpY2spPVwib25ab29tSGFuZGxlcigpXCJcbiAgICA+XG4gICAgICA8bWF0LWljb24+c2VhcmNoPC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cblxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltpZ29TZWFyY2hJdGVtVG9vbGJhcl1cIj4gPC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbjwvbWF0LWxpc3QtaXRlbT5cbiJdfQ==
|
|
@@ -0,0 +1,297 @@
|
|
|
1
|
+
import { AsyncPipe, NgFor, NgIf, NgTemplateOutlet } from '@angular/common';
|
|
2
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, EventEmitter, Input, Output } from '@angular/core';
|
|
3
|
+
import { MatTabsModule } from '@angular/material/tabs';
|
|
4
|
+
import { CollapsibleComponent } from '@igo2/common/collapsible';
|
|
5
|
+
import { EntityStore, EntityStoreFilterCustomFuncStrategy, EntityStoreWatcher } from '@igo2/common/entity';
|
|
6
|
+
import { ListComponent, ListItemDirective } from '@igo2/common/list';
|
|
7
|
+
import { ConfigService } from '@igo2/core/config';
|
|
8
|
+
import { IgoLanguageModule } from '@igo2/core/language';
|
|
9
|
+
import { BehaviorSubject, EMPTY, timer } from 'rxjs';
|
|
10
|
+
import { debounce, map } from 'rxjs/operators';
|
|
11
|
+
import { IgoMap } from '../../map/shared/map';
|
|
12
|
+
import { SearchService } from '../shared/search.service';
|
|
13
|
+
import { SearchResultsItemComponent } from './search-results-item.component';
|
|
14
|
+
import * as i0 from "@angular/core";
|
|
15
|
+
import * as i1 from "../shared/search.service";
|
|
16
|
+
import * as i2 from "@igo2/core/config";
|
|
17
|
+
import * as i3 from "@angular/material/tabs";
|
|
18
|
+
import * as i4 from "@ngx-translate/core";
|
|
19
|
+
export var SearchResultMode;
|
|
20
|
+
(function (SearchResultMode) {
|
|
21
|
+
SearchResultMode["Grouped"] = "grouped";
|
|
22
|
+
SearchResultMode["Flat"] = "flat";
|
|
23
|
+
})(SearchResultMode || (SearchResultMode = {}));
|
|
24
|
+
/**
|
|
25
|
+
* List of search results with focus and selection capabilities.
|
|
26
|
+
* This component is dumb and only emits events.
|
|
27
|
+
*/
|
|
28
|
+
export class SearchResultsComponent {
|
|
29
|
+
cdRef;
|
|
30
|
+
searchService;
|
|
31
|
+
configService;
|
|
32
|
+
showResultsCount = true;
|
|
33
|
+
/**
|
|
34
|
+
* Reference to the SearchResultMode enum
|
|
35
|
+
* @internal
|
|
36
|
+
*/
|
|
37
|
+
searchResultMode = SearchResultMode;
|
|
38
|
+
/**
|
|
39
|
+
* Search results store watcher
|
|
40
|
+
*/
|
|
41
|
+
watcher;
|
|
42
|
+
settingsChange$$;
|
|
43
|
+
pageIterator = [];
|
|
44
|
+
collapsed = [];
|
|
45
|
+
map;
|
|
46
|
+
/**
|
|
47
|
+
* Search results store
|
|
48
|
+
*/
|
|
49
|
+
store;
|
|
50
|
+
/**
|
|
51
|
+
* to show hide results icons
|
|
52
|
+
*/
|
|
53
|
+
showIcons;
|
|
54
|
+
/**
|
|
55
|
+
* Search results display mode
|
|
56
|
+
*/
|
|
57
|
+
mode = SearchResultMode.Grouped;
|
|
58
|
+
/**
|
|
59
|
+
* Whether there should be a zoom button
|
|
60
|
+
*/
|
|
61
|
+
withZoomButton = false;
|
|
62
|
+
/**
|
|
63
|
+
* To check if the view for tabsMode for search-result-tools
|
|
64
|
+
*/
|
|
65
|
+
tabsMode = false;
|
|
66
|
+
/**
|
|
67
|
+
* Search term
|
|
68
|
+
*/
|
|
69
|
+
get term() {
|
|
70
|
+
return this._term;
|
|
71
|
+
}
|
|
72
|
+
set term(value) {
|
|
73
|
+
this._term = value;
|
|
74
|
+
this.pageIterator = [];
|
|
75
|
+
}
|
|
76
|
+
_term;
|
|
77
|
+
settingsChange$ = new BehaviorSubject(undefined);
|
|
78
|
+
termSplitter = '|';
|
|
79
|
+
/**
|
|
80
|
+
* Event emitted when a result is focused
|
|
81
|
+
*/
|
|
82
|
+
resultFocus = new EventEmitter();
|
|
83
|
+
/**
|
|
84
|
+
* Event emitted when a result is unfocused
|
|
85
|
+
*/
|
|
86
|
+
resultUnfocus = new EventEmitter();
|
|
87
|
+
/**
|
|
88
|
+
* Event emitted when a result is selected
|
|
89
|
+
*/
|
|
90
|
+
resultSelect = new EventEmitter();
|
|
91
|
+
/**
|
|
92
|
+
* Event emitted when a research is completed after displaying more results is clicked
|
|
93
|
+
*/
|
|
94
|
+
moreResults = new EventEmitter();
|
|
95
|
+
/**
|
|
96
|
+
* Events emitted when a result is focus or unfocus by mouse event
|
|
97
|
+
*/
|
|
98
|
+
resultMouseenter = new EventEmitter();
|
|
99
|
+
resultMouseleave = new EventEmitter();
|
|
100
|
+
templateSearchToolbar;
|
|
101
|
+
get results$() {
|
|
102
|
+
if (this._results$ === undefined) {
|
|
103
|
+
this._results$ = this.liftResults();
|
|
104
|
+
}
|
|
105
|
+
return this._results$;
|
|
106
|
+
}
|
|
107
|
+
_results$;
|
|
108
|
+
constructor(cdRef, searchService, configService) {
|
|
109
|
+
this.cdRef = cdRef;
|
|
110
|
+
this.searchService = searchService;
|
|
111
|
+
this.configService = configService;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Bind the search results store to the watcher
|
|
115
|
+
* @internal
|
|
116
|
+
*/
|
|
117
|
+
ngOnInit() {
|
|
118
|
+
this.watcher = new EntityStoreWatcher(this.store, this.cdRef);
|
|
119
|
+
this.settingsChange$$ = this.settingsChange$.subscribe(() => {
|
|
120
|
+
this.pageIterator = [];
|
|
121
|
+
});
|
|
122
|
+
if (this.configService.getConfig('searchSources.showResultsCount') === false) {
|
|
123
|
+
this.showResultsCount = false;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Unbind the search results store from the watcher
|
|
128
|
+
* @internal
|
|
129
|
+
*/
|
|
130
|
+
ngOnDestroy() {
|
|
131
|
+
this.watcher.destroy();
|
|
132
|
+
this.settingsChange$$.unsubscribe();
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Compute a group title
|
|
136
|
+
* @param group Search results group
|
|
137
|
+
* @returns Group title
|
|
138
|
+
* @internal
|
|
139
|
+
*/
|
|
140
|
+
computeGroupTitle(group) {
|
|
141
|
+
const parts = [group.source.title];
|
|
142
|
+
const count = group.results.length;
|
|
143
|
+
if (count > 1 && this.showResultsCount) {
|
|
144
|
+
parts.push(`(${count})`);
|
|
145
|
+
}
|
|
146
|
+
return parts.join(' ');
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* When a result is selected, update it's state in the store and emit
|
|
150
|
+
* an event. A selected result is also considered focused
|
|
151
|
+
* @param result Search result
|
|
152
|
+
* @internal
|
|
153
|
+
*/
|
|
154
|
+
onResultSelect(result) {
|
|
155
|
+
if (this.store.state.get(result)) {
|
|
156
|
+
if (this.store.state.get(result).selected === true) {
|
|
157
|
+
return;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
this.store.state.update(result, { focused: true, selected: true }, true);
|
|
161
|
+
this.resultSelect.emit(result);
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Return an observable of the search results, grouped by search source
|
|
165
|
+
* @returns Observable of grouped search results
|
|
166
|
+
* @internal
|
|
167
|
+
*/
|
|
168
|
+
liftResults() {
|
|
169
|
+
return this.store.stateView.all$().pipe(debounce((results) => {
|
|
170
|
+
return results.length === 0 ? EMPTY : timer(200);
|
|
171
|
+
}), map((results) => {
|
|
172
|
+
return this.groupResults(results.map((r) => r.entity).sort(this.sortByOrder));
|
|
173
|
+
}));
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Sort the results by display order.
|
|
177
|
+
* @param r1 First result
|
|
178
|
+
* @param r2 Second result
|
|
179
|
+
*/
|
|
180
|
+
sortByOrder(r1, r2) {
|
|
181
|
+
return r1.source.displayOrder - r2.source.displayOrder;
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* Group results by search source
|
|
185
|
+
* @param results Search results from all sources
|
|
186
|
+
* @returns Search results grouped by source
|
|
187
|
+
*/
|
|
188
|
+
groupResults(results) {
|
|
189
|
+
const grouped = new Map();
|
|
190
|
+
results.forEach((result) => {
|
|
191
|
+
const source = result.source;
|
|
192
|
+
let sourceResults = grouped.get(source);
|
|
193
|
+
if (sourceResults === undefined) {
|
|
194
|
+
sourceResults = [];
|
|
195
|
+
grouped.set(source, sourceResults);
|
|
196
|
+
}
|
|
197
|
+
sourceResults.push(result);
|
|
198
|
+
});
|
|
199
|
+
return Array.from(grouped.keys()).map((source) => {
|
|
200
|
+
if (this.pageIterator[source.getId()] === undefined) {
|
|
201
|
+
this.pageIterator[source.getId()] = 1;
|
|
202
|
+
}
|
|
203
|
+
return { source, results: grouped.get(source) };
|
|
204
|
+
});
|
|
205
|
+
}
|
|
206
|
+
isMoreResults(group) {
|
|
207
|
+
const stategy = this.store.getStrategyOfType(EntityStoreFilterCustomFuncStrategy);
|
|
208
|
+
const active = stategy?.active || false;
|
|
209
|
+
if (!active) {
|
|
210
|
+
return (group.results &&
|
|
211
|
+
group.results[group.results.length - 1].meta.nextPage === true);
|
|
212
|
+
}
|
|
213
|
+
else {
|
|
214
|
+
return (group.results?.length % +group.source.params.limit === 0 &&
|
|
215
|
+
+group.source.params.page < 30);
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
displayMoreResults(group) {
|
|
219
|
+
const options = {
|
|
220
|
+
sourceId: group.source.getId(),
|
|
221
|
+
page: ++this.pageIterator[group.source.getId()]
|
|
222
|
+
};
|
|
223
|
+
let terms;
|
|
224
|
+
if (this.termSplitter &&
|
|
225
|
+
this.term.match(new RegExp(this.termSplitter, 'g'))) {
|
|
226
|
+
terms = this.term.split(this.termSplitter);
|
|
227
|
+
}
|
|
228
|
+
else {
|
|
229
|
+
terms = [this.term];
|
|
230
|
+
}
|
|
231
|
+
let researches = [];
|
|
232
|
+
terms.map((term) => {
|
|
233
|
+
researches = researches.concat(this.searchService.search(term, options));
|
|
234
|
+
});
|
|
235
|
+
researches.map((research) => {
|
|
236
|
+
research.request.subscribe((results) => {
|
|
237
|
+
const newResults = group.results.concat(results);
|
|
238
|
+
if (!results.length) {
|
|
239
|
+
newResults[newResults.length - 1].meta.nextPage = false;
|
|
240
|
+
}
|
|
241
|
+
this.moreResults.emit({ research, results: newResults });
|
|
242
|
+
});
|
|
243
|
+
});
|
|
244
|
+
return;
|
|
245
|
+
}
|
|
246
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SearchResultsComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.SearchService }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Component });
|
|
247
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SearchResultsComponent, isStandalone: true, selector: "igo-search-results", inputs: { map: "map", store: "store", showIcons: "showIcons", mode: "mode", withZoomButton: "withZoomButton", tabsMode: "tabsMode", term: "term", settingsChange$: "settingsChange$", termSplitter: "termSplitter" }, outputs: { resultFocus: "resultFocus", resultUnfocus: "resultUnfocus", resultSelect: "resultSelect", moreResults: "moreResults", resultMouseenter: "resultMouseenter", resultMouseleave: "resultMouseleave" }, queries: [{ propertyName: "templateSearchToolbar", first: true, predicate: ["igoSearchItemToolbar"], descendants: true }], ngImport: i0, template: "<igo-list [navigation]=\"true\" *ngIf=\"tabsMode === false\">\n <ng-template #groupTemplate ngFor let-group [ngForOf]=\"results$ | async\">\n <igo-collapsible\n [class]=\"group.source.getId()\"\n *ngIf=\"mode === searchResultMode.Grouped; else flatTemplate\"\n [title]=\"computeGroupTitle(group)\"\n [collapsed]=\"collapsed[group.source.title]\"\n (toggle)=\"collapsed[group.source.title] = $event\"\n >\n <ng-container\n *ngTemplateOutlet=\"\n storeItemTemplate;\n context: { results: group.results }\n \"\n ></ng-container>\n </igo-collapsible>\n\n <ng-template #flatTemplate>\n <ng-container\n *ngTemplateOutlet=\"\n storeItemTemplate;\n context: { results: group.results }\n \"\n ></ng-container>\n </ng-template>\n\n <ng-template #storeItemTemplate let-results=\"results\">\n <ng-template ngFor let-result [ngForOf]=\"results\">\n <igo-search-results-item\n igoListItem\n color=\"accent\"\n [map]=\"map\"\n [result]=\"result\"\n [showIcons]=\"showIcons\"\n [withZoomButton]=\"withZoomButton\"\n [focused]=\"store.state.get(result).focused\"\n [selected]=\"store.state.get(result).selected\"\n (focus)=\"resultFocus.emit(result)\"\n (unfocus)=\"resultUnfocus.emit(result)\"\n (select)=\"onResultSelect(result)\"\n (mouseenter)=\"resultFocus.emit(result)\"\n (mouseleave)=\"resultUnfocus.emit(result)\"\n >\n <ng-container\n igoSearchItemToolbar\n [ngTemplateOutlet]=\"templateSearchToolbar\"\n [ngTemplateOutletContext]=\"{ result: result }\"\n >\n </ng-container>\n </igo-search-results-item>\n </ng-template>\n <span\n class=\"moreResults mat-typography\"\n *ngIf=\"isMoreResults(group)\"\n (click)=\"displayMoreResults(group)\"\n >\n <u>{{ 'igo.geo.search.displayMoreResults' | translate }}</u>\n </span>\n </ng-template>\n </ng-template>\n</igo-list>\n\n<igo-list [navigation]=\"true\" *ngIf=\"tabsMode\">\n <ng-container\n *ngIf=\"\n mode === searchResultMode.Grouped;\n then tabsTemplate;\n else flatTemplate\n \"\n ></ng-container>\n\n <ng-template #tabsTemplate>\n <mat-tab-group class=\"custom-tabs-view\" dynamicHeight>\n <mat-tab\n *ngFor=\"let group of results$ | async\"\n [label]=\"computeGroupTitle(group)\"\n >\n <ng-container\n *ngTemplateOutlet=\"storeItemTemplate; context: { group: group }\"\n ></ng-container>\n </mat-tab>\n </mat-tab-group>\n </ng-template>\n\n <ng-template #flatTemplate>\n <ng-template ngFor let-group [ngForOf]=\"results$ | async\">\n <ng-container\n *ngTemplateOutlet=\"storeItemTemplate; context: { group: group }\"\n ></ng-container>\n </ng-template>\n </ng-template>\n\n <ng-template #storeItemTemplate let-group=\"group\">\n <ng-template ngFor let-result [ngForOf]=\"group.results\">\n <igo-search-results-item\n igoListItem\n color=\"accent\"\n [map]=\"map\"\n [result]=\"result\"\n [showIcons]=\"showIcons\"\n [withZoomButton]=\"withZoomButton\"\n [focused]=\"store.state.get(result).focused\"\n [selected]=\"store.state.get(result).selected\"\n (focus)=\"resultFocus.emit(result)\"\n (unfocus)=\"resultUnfocus.emit(result)\"\n (select)=\"onResultSelect(result)\"\n (mouseenter)=\"resultFocus.emit(result)\"\n (mouseleave)=\"resultUnfocus.emit(result)\"\n >\n <ng-container\n igoSearchItemToolbar\n [ngTemplateOutlet]=\"templateSearchToolbar\"\n [ngTemplateOutletContext]=\"{ result: result }\"\n >\n </ng-container>\n </igo-search-results-item>\n </ng-template>\n <span\n class=\"moreResults mat-typography\"\n *ngIf=\"isMoreResults(group)\"\n (click)=\"displayMoreResults(group)\"\n >\n <u>{{ 'igo.geo.search.displayMoreResults' | translate }}</u>\n </span>\n </ng-template>\n</igo-list>\n", styles: [":host .moreResults{cursor:pointer;color:#00f;float:right;margin-right:10px;margin-top:5px}:host igo-list ::ng-deep mat-list{height:100%}:host igo-list ::ng-deep mat-list .custom-tabs-view .mat-mdc-tab-header-pagination{min-width:20px}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ListComponent, selector: "igo-list", inputs: ["navigation", "selection"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: CollapsibleComponent, selector: "igo-collapsible", inputs: ["title", "collapsed"], outputs: ["toggle"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: SearchResultsItemComponent, selector: "igo-search-results-item", inputs: ["result", "map", "showIcons", "withZoomButton"], outputs: ["zoomEvent"] }, { 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: "ngmodule", type: MatTabsModule }, { kind: "component", type: i3.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass"], exportAs: ["matTab"] }, { kind: "component", type: i3.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "fitInkBarToContent", "mat-stretch-tabs", "dynamicHeight", "selectedIndex", "headerPosition", "animationDuration", "contentTabIndex", "disablePagination", "disableRipple", "preserveContent", "backgroundColor", "aria-label", "aria-labelledby"], outputs: ["selectedIndexChange", "focusChange", "animationDone", "selectedTabChange"], exportAs: ["matTabGroup"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
248
|
+
}
|
|
249
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SearchResultsComponent, decorators: [{
|
|
250
|
+
type: Component,
|
|
251
|
+
args: [{ selector: 'igo-search-results', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
252
|
+
NgIf,
|
|
253
|
+
ListComponent,
|
|
254
|
+
NgFor,
|
|
255
|
+
CollapsibleComponent,
|
|
256
|
+
NgTemplateOutlet,
|
|
257
|
+
SearchResultsItemComponent,
|
|
258
|
+
ListItemDirective,
|
|
259
|
+
MatTabsModule,
|
|
260
|
+
AsyncPipe,
|
|
261
|
+
IgoLanguageModule
|
|
262
|
+
], template: "<igo-list [navigation]=\"true\" *ngIf=\"tabsMode === false\">\n <ng-template #groupTemplate ngFor let-group [ngForOf]=\"results$ | async\">\n <igo-collapsible\n [class]=\"group.source.getId()\"\n *ngIf=\"mode === searchResultMode.Grouped; else flatTemplate\"\n [title]=\"computeGroupTitle(group)\"\n [collapsed]=\"collapsed[group.source.title]\"\n (toggle)=\"collapsed[group.source.title] = $event\"\n >\n <ng-container\n *ngTemplateOutlet=\"\n storeItemTemplate;\n context: { results: group.results }\n \"\n ></ng-container>\n </igo-collapsible>\n\n <ng-template #flatTemplate>\n <ng-container\n *ngTemplateOutlet=\"\n storeItemTemplate;\n context: { results: group.results }\n \"\n ></ng-container>\n </ng-template>\n\n <ng-template #storeItemTemplate let-results=\"results\">\n <ng-template ngFor let-result [ngForOf]=\"results\">\n <igo-search-results-item\n igoListItem\n color=\"accent\"\n [map]=\"map\"\n [result]=\"result\"\n [showIcons]=\"showIcons\"\n [withZoomButton]=\"withZoomButton\"\n [focused]=\"store.state.get(result).focused\"\n [selected]=\"store.state.get(result).selected\"\n (focus)=\"resultFocus.emit(result)\"\n (unfocus)=\"resultUnfocus.emit(result)\"\n (select)=\"onResultSelect(result)\"\n (mouseenter)=\"resultFocus.emit(result)\"\n (mouseleave)=\"resultUnfocus.emit(result)\"\n >\n <ng-container\n igoSearchItemToolbar\n [ngTemplateOutlet]=\"templateSearchToolbar\"\n [ngTemplateOutletContext]=\"{ result: result }\"\n >\n </ng-container>\n </igo-search-results-item>\n </ng-template>\n <span\n class=\"moreResults mat-typography\"\n *ngIf=\"isMoreResults(group)\"\n (click)=\"displayMoreResults(group)\"\n >\n <u>{{ 'igo.geo.search.displayMoreResults' | translate }}</u>\n </span>\n </ng-template>\n </ng-template>\n</igo-list>\n\n<igo-list [navigation]=\"true\" *ngIf=\"tabsMode\">\n <ng-container\n *ngIf=\"\n mode === searchResultMode.Grouped;\n then tabsTemplate;\n else flatTemplate\n \"\n ></ng-container>\n\n <ng-template #tabsTemplate>\n <mat-tab-group class=\"custom-tabs-view\" dynamicHeight>\n <mat-tab\n *ngFor=\"let group of results$ | async\"\n [label]=\"computeGroupTitle(group)\"\n >\n <ng-container\n *ngTemplateOutlet=\"storeItemTemplate; context: { group: group }\"\n ></ng-container>\n </mat-tab>\n </mat-tab-group>\n </ng-template>\n\n <ng-template #flatTemplate>\n <ng-template ngFor let-group [ngForOf]=\"results$ | async\">\n <ng-container\n *ngTemplateOutlet=\"storeItemTemplate; context: { group: group }\"\n ></ng-container>\n </ng-template>\n </ng-template>\n\n <ng-template #storeItemTemplate let-group=\"group\">\n <ng-template ngFor let-result [ngForOf]=\"group.results\">\n <igo-search-results-item\n igoListItem\n color=\"accent\"\n [map]=\"map\"\n [result]=\"result\"\n [showIcons]=\"showIcons\"\n [withZoomButton]=\"withZoomButton\"\n [focused]=\"store.state.get(result).focused\"\n [selected]=\"store.state.get(result).selected\"\n (focus)=\"resultFocus.emit(result)\"\n (unfocus)=\"resultUnfocus.emit(result)\"\n (select)=\"onResultSelect(result)\"\n (mouseenter)=\"resultFocus.emit(result)\"\n (mouseleave)=\"resultUnfocus.emit(result)\"\n >\n <ng-container\n igoSearchItemToolbar\n [ngTemplateOutlet]=\"templateSearchToolbar\"\n [ngTemplateOutletContext]=\"{ result: result }\"\n >\n </ng-container>\n </igo-search-results-item>\n </ng-template>\n <span\n class=\"moreResults mat-typography\"\n *ngIf=\"isMoreResults(group)\"\n (click)=\"displayMoreResults(group)\"\n >\n <u>{{ 'igo.geo.search.displayMoreResults' | translate }}</u>\n </span>\n </ng-template>\n</igo-list>\n", styles: [":host .moreResults{cursor:pointer;color:#00f;float:right;margin-right:10px;margin-top:5px}:host igo-list ::ng-deep mat-list{height:100%}:host igo-list ::ng-deep mat-list .custom-tabs-view .mat-mdc-tab-header-pagination{min-width:20px}\n"] }]
|
|
263
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.SearchService }, { type: i2.ConfigService }], propDecorators: { map: [{
|
|
264
|
+
type: Input
|
|
265
|
+
}], store: [{
|
|
266
|
+
type: Input
|
|
267
|
+
}], showIcons: [{
|
|
268
|
+
type: Input
|
|
269
|
+
}], mode: [{
|
|
270
|
+
type: Input
|
|
271
|
+
}], withZoomButton: [{
|
|
272
|
+
type: Input
|
|
273
|
+
}], tabsMode: [{
|
|
274
|
+
type: Input
|
|
275
|
+
}], term: [{
|
|
276
|
+
type: Input
|
|
277
|
+
}], settingsChange$: [{
|
|
278
|
+
type: Input
|
|
279
|
+
}], termSplitter: [{
|
|
280
|
+
type: Input
|
|
281
|
+
}], resultFocus: [{
|
|
282
|
+
type: Output
|
|
283
|
+
}], resultUnfocus: [{
|
|
284
|
+
type: Output
|
|
285
|
+
}], resultSelect: [{
|
|
286
|
+
type: Output
|
|
287
|
+
}], moreResults: [{
|
|
288
|
+
type: Output
|
|
289
|
+
}], resultMouseenter: [{
|
|
290
|
+
type: Output
|
|
291
|
+
}], resultMouseleave: [{
|
|
292
|
+
type: Output
|
|
293
|
+
}], templateSearchToolbar: [{
|
|
294
|
+
type: ContentChild,
|
|
295
|
+
args: ['igoSearchItemToolbar', /* TODO: add static flag */ {}]
|
|
296
|
+
}] } });
|
|
297
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLXJlc3VsdHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvc2VhcmNoL3NlYXJjaC1yZXN1bHRzL3NlYXJjaC1yZXN1bHRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3NlYXJjaC9zZWFyY2gtcmVzdWx0cy9zZWFyY2gtcmVzdWx0cy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzRSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUNQLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV2RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBRUwsV0FBVyxFQUNYLG1DQUFtQyxFQUNuQyxrQkFBa0IsRUFDbkIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDckUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXhELE9BQU8sRUFBRSxlQUFlLEVBQUUsS0FBSyxFQUE0QixLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0UsT0FBTyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUvQyxPQUFPLEVBQUUsTUFB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QUFNO2dCQUtHLGFBQWE7c0JBQXRCLE1BQU07Z0JBS0csWUFBWTtzQkFBckIsTUFBTTtnQkFLRyxXQUFXO3NCQUFwQixNQUFNO2dCQVFHLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFDRyxnQkFBZ0I7c0JBQXpCLE1BQU07Z0JBR1AscUJBQXFCO3NCQURwQixZQUFZO3VCQUFDLHNCQUFzQixFQUFFLDJCQUEyQixDQUFDLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBc3luY1BpcGUsIE5nRm9yLCBOZ0lmLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgdHlwZSB7IFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRUYWJzTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFicyc7XG5cbmltcG9ydCB7IENvbGxhcHNpYmxlQ29tcG9uZW50IH0gZnJvbSAnQGlnbzIvY29tbW9uL2NvbGxhcHNpYmxlJztcbmltcG9ydCB7XG4gIEVudGl0eVN0YXRlLFxuICBFbnRpdHlTdG9yZSxcbiAgRW50aXR5U3RvcmVGaWx0ZXJDdXN0b21GdW5jU3RyYXRlZ3ksXG4gIEVudGl0eVN0b3JlV2F0Y2hlclxufSBmcm9tICdAaWdvMi9jb21tb24vZW50aXR5JztcbmltcG9ydCB7IExpc3RDb21wb25lbnQsIExpc3RJdGVtRGlyZWN0aXZlIH0gZnJvbSAnQGlnbzIvY29tbW9uL2xpc3QnO1xuaW1wb3J0IHsgQ29uZmlnU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUvY29uZmlnJztcbmltcG9ydCB7IElnb0xhbmd1YWdlTW9kdWxlIH0gZnJvbSAnQGlnbzIvY29yZS9sYW5ndWFnZSc7XG5cbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgRU1QVFksIE9ic2VydmFibGUsIFN1YnNjcmlwdGlvbiwgdGltZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IElnb01hcCB9IGZyb20gJy4uLy4uL21hcC9zaGFyZWQvbWFwJztcbmltcG9ydCB7IFJlc2VhcmNoLCBTZWFyY2hSZXN1bHQgfSBmcm9tICcuLi9zaGFyZWQvc2VhcmNoLmludGVyZmFjZXMnO1xuaW1wb3J0IHsgU2VhcmNoU2VydmljZSB9IGZyb20gJy4uL3NoYXJlZC9zZWFyY2guc2VydmljZSc7XG5pbXBvcnQgeyBTZWFyY2hTb3VyY2UgfSBmcm9tICcuLi9zaGFyZWQvc291cmNlcy9zb3VyY2UnO1xuaW1wb3J0IHsgVGV4dFNlYXJjaE9wdGlvbnMgfSBmcm9tICcuLi9zaGFyZWQvc291cmNlcy9zb3VyY2UuaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBTZWFyY2hSZXN1bHRzSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vc2VhcmNoLXJlc3VsdHMtaXRlbS5jb21wb25lbnQnO1xuXG5leHBvcnQgZW51bSBTZWFyY2hSZXN1bHRNb2RlIHtcbiAgR3JvdXBlZCA9ICdncm91cGVkJyxcbiAgRmxhdCA9ICdmbGF0J1xufVxuXG4vKipcbiAqIExpc3Qgb2Ygc2VhcmNoIHJlc3VsdHMgd2l0aCBmb2N1cyBhbmQgc2VsZWN0aW9uIGNhcGFiaWxpdGllcy5cbiAqIFRoaXMgY29tcG9uZW50IGlzIGR1bWIgYW5kIG9ubHkgZW1pdHMgZXZlbnRzLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpZ28tc2VhcmNoLXJlc3VsdHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VhcmNoLXJlc3VsdHMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zZWFyY2gtcmVzdWx0cy5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE5nSWYsXG4gICAgTGlzdENvbXBvbmVudCxcbiAgICBOZ0ZvcixcbiAgICBDb2xsYXBzaWJsZUNvbXBvbmVudCxcbiAgICBOZ1RlbXBsYXRlT3V0bGV0LFxuICAgIFNlYXJjaFJlc3VsdHNJdGVtQ29tcG9uZW50LFxuICAgIExpc3RJdGVtRGlyZWN0aXZlLFxuICAgIE1hdFRhYnNNb2R1bGUsXG4gICAgQXN5bmNQaXBlLFxuICAgIElnb0xhbmd1YWdlTW9kdWxlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgU2VhcmNoUmVzdWx0c0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBzaG93UmVzdWx0c0NvdW50ID0gdHJ1ZTtcblxuICAvKipcbiAgICogUmVmZXJlbmNlIHRvIHRoZSBTZWFyY2hSZXN1bHRNb2RlIGVudW1cbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgc2VhcmNoUmVzdWx0TW9kZSA9IFNlYXJjaFJlc3VsdE1vZGU7XG5cbiAgLyoqXG4gICAqIFNlYXJjaCByZXN1bHRzIHN0b3JlIHdhdGNoZXJcbiAgICovXG4gIHByaXZhdGUgd2F0Y2hlcjogRW50aXR5U3RvcmVXYXRjaGVyPFNlYXJjaFJlc3VsdD47XG5cbiAgcHJpdmF0ZSBzZXR0aW5nc0NoYW5nZSQkOiBTdWJzY3JpcHRpb247XG5cbiAgcHVibGljIHBhZ2VJdGVyYXRvcjogeyBzb3VyY2VJZDogc3RyaW5nIH1bXSA9IFtdO1xuXG4gIHB1YmxpYyBjb2xsYXBzZWQ6IHsgc291cmNlSWQ6IHN0cmluZyB9W10gPSBbXTtcblxuICBASW5wdXQoKSBtYXA6IElnb01hcDtcblxuICAvKipcbiAgICogU2VhcmNoIHJlc3VsdHMgc3RvcmVcbiAgICovXG4gIEBJbnB1dCgpIHN0b3JlOiBFbnRpdHlTdG9yZTxTZWFyY2hSZXN1bHQ+O1xuXG4gIC8qKlxuICAgKiB0byBzaG93IGhpZGUgcmVzdWx0cyBpY29uc1xuICAgKi9cbiAgQElucHV0KCkgc2hvd0ljb25zOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBTZWFyY2ggcmVzdWx0cyBkaXNwbGF5IG1vZGVcbiAgICovXG4gIEBJbnB1dCgpIG1vZGU6IFNlYXJjaFJlc3VsdE1vZGUgPSBTZWFyY2hSZXN1bHRNb2RlLkdyb3VwZWQ7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlcmUgc2hvdWxkIGJlIGEgem9vbSBidXR0b25cbiAgICovXG4gIEBJbnB1dCgpIHdpdGhab29tQnV0dG9uID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFRvIGNoZWNrIGlmIHRoZSB2aWV3IGZvciB0YWJzTW9kZSBmb3Igc2VhcmNoLXJlc3VsdC10b29sc1xuICAgKi9cbiAgQElucHV0KCkgdGFic01vZGUgPSBmYWxzZTtcblxuICAvKipcbiAgICogU2VhcmNoIHRlcm1cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCB0ZXJtKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3Rlcm07XG4gIH1cbiAgc2V0IHRlcm0odmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX3Rlcm0gPSB2YWx1ZTtcbiAgICB0aGlzLnBhZ2VJdGVyYXRvciA9IFtdO1xuICB9XG4gIHB1YmxpYyBfdGVybTogc3RyaW5nO1xuXG4gIEBJbnB1dCgpIHNldHRpbmdzQ2hhbmdlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4odW5kZWZpbmVkKTtcblxuICBASW5wdXQoKSB0ZXJtU3BsaXR0ZXIgPSAnfCc7XG5cbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiBhIHJlc3VsdCBpcyBmb2N1c2VkXG4gICAqL1xuICBAT3V0cHV0KCkgcmVzdWx0Rm9jdXMgPSBuZXcgRXZlbnRFbWl0dGVyPFNlYXJjaFJlc3VsdD4oKTtcblxuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIGEgcmVzdWx0IGlzIHVuZm9jdXNlZFxuICAgKi9cbiAgQE91dHB1dCgpIHJlc3VsdFVuZm9jdXMgPSBuZXcgRXZlbnRFbWl0dGVyPFNlYXJjaFJlc3VsdD4oKTtcblxuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIGEgcmVzdWx0IGlzIHNlbGVjdGVkXG4gICAqL1xuICBAT3V0cHV0KCkgcmVzdWx0U2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcjxTZWFyY2hSZXN1bHQ+KCk7XG5cbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiBhIHJlc2VhcmNoIGlzIGNvbXBsZXRlZCBhZnRlciBkaXNwbGF5aW5nIG1vcmUgcmVzdWx0cyBpcyBjbGlja2VkXG4gICAqL1xuICBAT3V0cHV0KCkgbW9yZVJlc3VsdHMgPSBuZXcgRXZlbnRFbWl0dGVyPHtcbiAgICByZXNlYXJjaDogUmVzZWFyY2g7XG4gICAgcmVzdWx0czogU2VhcmNoUmVzdWx0W107XG4gIH0+KCk7XG5cbiAgLyoqXG4gICAqIEV2ZW50cyBlbWl0dGVkIHdoZW4gYSByZXN1bHQgaXMgZm9jdXMgb3IgdW5mb2N1cyBieSBtb3VzZSBldmVudFxuICAgKi9cbiAgQE91dHB1dCgpIHJlc3VsdE1vdXNlZW50ZXIgPSBuZXcgRXZlbnRFbWl0dGVyPFNlYXJjaFJlc3VsdD4oKTtcbiAgQE91dHB1dCgpIHJlc3VsdE1vdXNlbGVhdmUgPSBuZXcgRXZlbnRFbWl0dGVyPFNlYXJjaFJlc3VsdD4oKTtcblxuICBAQ29udGVudENoaWxkKCdpZ29TZWFyY2hJdGVtVG9vbGJhcicsIC8qIFRPRE86IGFkZCBzdGF0aWMgZmxhZyAqLyB7fSlcbiAgdGVtcGxhdGVTZWFyY2hUb29sYmFyOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIGdldCByZXN1bHRzJCgpOiBPYnNlcnZhYmxlPFxuICAgIHsgc291cmNlOiBTZWFyY2hTb3VyY2U7IHJlc3VsdHM6IFNlYXJjaFJlc3VsdFtdIH1bXVxuICA+IHtcbiAgICBpZiAodGhpcy5fcmVzdWx0cyQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5fcmVzdWx0cyQgPSB0aGlzLmxpZnRSZXN1bHRzKCk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLl9yZXN1bHRzJDtcbiAgfVxuICBwcml2YXRlIF9yZXN1bHRzJDogT2JzZXJ2YWJsZTxcbiAgICB7IHNvdXJjZTogU2VhcmNoU291cmNlOyByZXN1bHRzOiBTZWFyY2hSZXN1bHRbXSB9W11cbiAgPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIHNlYXJjaFNlcnZpY2U6IFNlYXJjaFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb25maWdTZXJ2aWNlOiBDb25maWdTZXJ2aWNlXG4gICkge31cblxuICAvKipcbiAgICogQmluZCB0aGUgc2VhcmNoIHJlc3VsdHMgc3RvcmUgdG8gdGhlIHdhdGNoZXJcbiAgICogQGludGVybmFsXG4gICAqL1xuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLndhdGNoZXIgPSBuZXcgRW50aXR5U3RvcmVXYXRjaGVyKHRoaXMuc3RvcmUsIHRoaXMuY2RSZWYpO1xuXG4gICAgdGhpcy5zZXR0aW5nc0NoYW5nZSQkID0gdGhpcy5zZXR0aW5nc0NoYW5nZSQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMucGFnZUl0ZXJhdG9yID0gW107XG4gICAgfSk7XG5cbiAgICBpZiAoXG4gICAgICB0aGlzLmNvbmZpZ1NlcnZpY2UuZ2V0Q29uZmlnKCdzZWFyY2hTb3VyY2VzLnNob3dSZXN1bHRzQ291bnQnKSA9PT0gZmFsc2VcbiAgICApIHtcbiAgICAgIHRoaXMuc2hvd1Jlc3VsdHNDb3VudCA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBVbmJpbmQgdGhlIHNlYXJjaCByZXN1bHRzIHN0b3JlIGZyb20gdGhlIHdhdGNoZXJcbiAgICogQGludGVybmFsXG4gICAqL1xuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLndhdGNoZXIuZGVzdHJveSgpO1xuICAgIHRoaXMuc2V0dGluZ3NDaGFuZ2UkJC51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbXB1dGUgYSBncm91cCB0aXRsZVxuICAgKiBAcGFyYW0gZ3JvdXAgU2VhcmNoIHJlc3VsdHMgZ3JvdXBcbiAgICogQHJldHVybnMgR3JvdXAgdGl0bGVcbiAgICogQGludGVybmFsXG4gICAqL1xuICBjb21wdXRlR3JvdXBUaXRsZShncm91cDoge1xuICAgIHNvdXJjZTogU2VhcmNoU291cmNlO1xuICAgIHJlc3VsdHM6IFNlYXJjaFJlc3VsdFtdO1xuICB9KTogc3RyaW5nIHtcbiAgICBjb25zdCBwYXJ0cyA9IFtncm91cC5zb3VyY2UudGl0bGVdO1xuICAgIGNvbnN0IGNvdW50ID0gZ3JvdXAucmVzdWx0cy5sZW5ndGg7XG4gICAgaWYgKGNvdW50ID4gMSAmJiB0aGlzLnNob3dSZXN1bHRzQ291bnQpIHtcbiAgICAgIHBhcnRzLnB1c2goYCgke2NvdW50fSlgKTtcbiAgICB9XG4gICAgcmV0dXJuIHBhcnRzLmpvaW4oJyAnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGVuIGEgcmVzdWx0IGlzIHNlbGVjdGVkLCB1cGRhdGUgaXQncyBzdGF0ZSBpbiB0aGUgc3RvcmUgYW5kIGVtaXRcbiAgICogYW4gZXZlbnQuIEEgc2VsZWN0ZWQgcmVzdWx0IGlzIGFsc28gY29uc2lkZXJlZCBmb2N1c2VkXG4gICAqIEBwYXJhbSByZXN1bHQgU2VhcmNoIHJlc3VsdFxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIG9uUmVzdWx0U2VsZWN0KHJlc3VsdDogU2VhcmNoUmVzdWx0KSB7XG4gICAgaWYgKHRoaXMuc3RvcmUuc3RhdGUuZ2V0KHJlc3VsdCkpIHtcbiAgICAgIGlmICh0aGlzLnN0b3JlLnN0YXRlLmdldChyZXN1bHQpLnNlbGVjdGVkID09PSB0cnVlKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5zdG9yZS5zdGF0ZS51cGRhdGUocmVzdWx0LCB7IGZvY3VzZWQ6IHRydWUsIHNlbGVjdGVkOiB0cnVlIH0sIHRydWUpO1xuICAgIHRoaXMucmVzdWx0U2VsZWN0LmVtaXQocmVzdWx0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm4gYW4gb2JzZXJ2YWJsZSBvZiB0aGUgc2VhcmNoIHJlc3VsdHMsIGdyb3VwZWQgYnkgc2VhcmNoIHNvdXJjZVxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlIG9mIGdyb3VwZWQgc2VhcmNoIHJlc3VsdHNcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwcml2YXRlIGxpZnRSZXN1bHRzKCk6IE9ic2VydmFibGU8XG4gICAgeyBzb3VyY2U6IFNlYXJjaFNvdXJjZTsgcmVzdWx0czogU2VhcmNoUmVzdWx0W10gfVtdXG4gID4ge1xuICAgIHJldHVybiB0aGlzLnN0b3JlLnN0YXRlVmlldy5hbGwkKCkucGlwZShcbiAgICAgIGRlYm91bmNlKChyZXN1bHRzOiB7IGVudGl0eTogU2VhcmNoUmVzdWx0OyBzdGF0ZTogRW50aXR5U3RhdGUgfVtdKSA9PiB7XG4gICAgICAgIHJldHVybiByZXN1bHRzLmxlbmd0aCA9PT0gMCA/IEVNUFRZIDogdGltZXIoMjAwKTtcbiAgICAgIH0pLFxuICAgICAgbWFwKChyZXN1bHRzOiB7IGVudGl0eTogU2VhcmNoUmVzdWx0OyBzdGF0ZTogRW50aXR5U3RhdGUgfVtdKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmdyb3VwUmVzdWx0cyhcbiAgICAgICAgICByZXN1bHRzLm1hcCgocikgPT4gci5lbnRpdHkpLnNvcnQodGhpcy5zb3J0QnlPcmRlcilcbiAgICAgICAgKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTb3J0IHRoZSByZXN1bHRzIGJ5IGRpc3BsYXkgb3JkZXIuXG4gICAqIEBwYXJhbSByMSBGaXJzdCByZXN1bHRcbiAgICogQHBhcmFtIHIyIFNlY29uZCByZXN1bHRcbiAgICovXG4gIHByaXZhdGUgc29ydEJ5T3JkZXIocjE6IFNlYXJjaFJlc3VsdCwgcjI6IFNlYXJjaFJlc3VsdCkge1xuICAgIHJldHVybiByMS5zb3VyY2UuZGlzcGxheU9yZGVyIC0gcjIuc291cmNlLmRpc3BsYXlPcmRlcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcm91cCByZXN1bHRzIGJ5IHNlYXJjaCBzb3VyY2VcbiAgICogQHBhcmFtIHJlc3VsdHMgU2VhcmNoIHJlc3VsdHMgZnJvbSBhbGwgc291cmNlc1xuICAgKiBAcmV0dXJucyBTZWFyY2ggcmVzdWx0cyBncm91cGVkIGJ5IHNvdXJjZVxuICAgKi9cbiAgcHJpdmF0ZSBncm91cFJlc3VsdHMoXG4gICAgcmVzdWx0czogU2VhcmNoUmVzdWx0W11cbiAgKTogeyBzb3VyY2U6IFNlYXJjaFNvdXJjZTsgcmVzdWx0czogU2VhcmNoUmVzdWx0W10gfVtdIHtcbiAgICBjb25zdCBncm91cGVkID0gbmV3IE1hcDxTZWFyY2hTb3VyY2UsIFNlYXJjaFJlc3VsdFtdPigpO1xuICAgIHJlc3VsdHMuZm9yRWFjaCgocmVzdWx0OiBTZWFyY2hSZXN1bHQpID0+IHtcbiAgICAgIGNvbnN0IHNvdXJjZSA9IHJlc3VsdC5zb3VyY2U7XG4gICAgICBsZXQgc291cmNlUmVzdWx0cyA9IGdyb3VwZWQuZ2V0KHNvdXJjZSk7XG4gICAgICBpZiAoc291cmNlUmVzdWx0cyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHNvdXJjZVJlc3VsdHMgPSBbXTtcbiAgICAgICAgZ3JvdXBlZC5zZXQoc291cmNlLCBzb3VyY2VSZXN1bHRzKTtcbiAgICAgIH1cbiAgICAgIHNvdXJjZVJlc3VsdHMucHVzaChyZXN1bHQpO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIEFycmF5LmZyb20oZ3JvdXBlZC5rZXlzKCkpLm1hcCgoc291cmNlOiBTZWFyY2hTb3VyY2UpID0+IHtcbiAgICAgIGlmICh0aGlzLnBhZ2VJdGVyYXRvcltzb3VyY2UuZ2V0SWQoKV0gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnBhZ2VJdGVyYXRvcltzb3VyY2UuZ2V0SWQoKV0gPSAxO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHsgc291cmNlLCByZXN1bHRzOiBncm91cGVkLmdldChzb3VyY2UpIH07XG4gICAgfSk7XG4gIH1cblxuICBpc01vcmVSZXN1bHRzKGdyb3VwOiB7IHNvdXJjZTogU2VhcmNoU291cmNlOyByZXN1bHRzOiBTZWFyY2hSZXN1bHRbXSB9KSB7XG4gICAgY29uc3Qgc3RhdGVneSA9IHRoaXMuc3RvcmUuZ2V0U3RyYXRlZ3lPZlR5cGUoXG4gICAgICBFbnRpdHlTdG9yZUZpbHRlckN1c3RvbUZ1bmNTdHJhdGVneVxuICAgICk7XG4gICAgY29uc3QgYWN0aXZlID0gc3RhdGVneT8uYWN0aXZlIHx8IGZhbHNlO1xuICAgIGlmICghYWN0aXZlKSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICBncm91cC5yZXN1bHRzICYmXG4gICAgICAgIGdyb3VwLnJlc3VsdHNbZ3JvdXAucmVzdWx0cy5sZW5ndGggLSAxXS5tZXRhLm5leHRQYWdlID09PSB0cnVlXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICBncm91cC5yZXN1bHRzPy5sZW5ndGggJSArZ3JvdXAuc291cmNlLnBhcmFtcy5saW1pdCA9PT0gMCAmJlxuICAgICAgICArZ3JvdXAuc291cmNlLnBhcmFtcy5wYWdlIDwgMzBcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgZGlzcGxheU1vcmVSZXN1bHRzKGdyb3VwOiB7IHNvdXJjZTogU2VhcmNoU291cmNlOyByZXN1bHRzOiBTZWFyY2hSZXN1bHRbXSB9KSB7XG4gICAgY29uc3Qgb3B0aW9uczogVGV4dFNlYXJjaE9wdGlvbnMgPSB7XG4gICAgICBzb3VyY2VJZDogZ3JvdXAuc291cmNlLmdldElkKCksXG4gICAgICBwYWdlOiArK3RoaXMucGFnZUl0ZXJhdG9yW2dyb3VwLnNvdXJjZS5nZXRJZCgpXVxuICAgIH07XG5cbiAgICBsZXQgdGVybXM7XG4gICAgaWYgKFxuICAgICAgdGhpcy50ZXJtU3BsaXR0ZXIgJiZcbiAgICAgIHRoaXMudGVybS5tYXRjaChuZXcgUmVnRXhwKHRoaXMudGVybVNwbGl0dGVyLCAnZycpKVxuICAgICkge1xuICAgICAgdGVybXMgPSB0aGlzLnRlcm0uc3BsaXQodGhpcy50ZXJtU3BsaXR0ZXIpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0ZXJtcyA9IFt0aGlzLnRlcm1dO1xuICAgIH1cblxuICAgIGxldCByZXNlYXJjaGVzOiBSZXNlYXJjaFtdID0gW107XG4gICAgdGVybXMubWFwKCh0ZXJtOiBzdHJpbmcpID0+IHtcbiAgICAgIHJlc2VhcmNoZXMgPSByZXNlYXJjaGVzLmNvbmNhdCh0aGlzLnNlYXJjaFNlcnZpY2Uuc2VhcmNoKHRlcm0sIG9wdGlvbnMpKTtcbiAgICB9KTtcblxuICAgIHJlc2VhcmNoZXMubWFwKChyZXNlYXJjaCkgPT4ge1xuICAgICAgcmVzZWFyY2gucmVxdWVzdC5zdWJzY3JpYmUoKHJlc3VsdHM6IFNlYXJjaFJlc3VsdFtdKSA9PiB7XG4gICAgICAgIGNvbnN0IG5ld1Jlc3VsdHMgPSBncm91cC5yZXN1bHRzLmNvbmNhdChyZXN1bHRzKTtcbiAgICAgICAgaWYgKCFyZXN1bHRzLmxlbmd0aCkge1xuICAgICAgICAgIG5ld1Jlc3VsdHNbbmV3UmVzdWx0cy5sZW5ndGggLSAxXS5tZXRhLm5leHRQYWdlID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5tb3JlUmVzdWx0cy5lbWl0KHsgcmVzZWFyY2gsIHJlc3VsdHM6IG5ld1Jlc3VsdHMgfSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgICByZXR1cm47XG4gIH1cbn1cbiIsIjxpZ28tbGlzdCBbbmF2aWdhdGlvbl09XCJ0cnVlXCIgKm5nSWY9XCJ0YWJzTW9kZSA9PT0gZmFsc2VcIj5cbiAgPG5nLXRlbXBsYXRlICNncm91cFRlbXBsYXRlIG5nRm9yIGxldC1ncm91cCBbbmdGb3JPZl09XCJyZXN1bHRzJCB8IGFzeW5jXCI+XG4gICAgPGlnby1jb2xsYXBzaWJsZVxuICAgICAgW2NsYXNzXT1cImdyb3VwLnNvdXJjZS5nZXRJZCgpXCJcbiAgICAgICpuZ0lmPVwibW9kZSA9PT0gc2VhcmNoUmVzdWx0TW9kZS5Hcm91cGVkOyBlbHNlIGZsYXRUZW1wbGF0ZVwiXG4gICAgICBbdGl0bGVdPVwiY29tcHV0ZUdyb3VwVGl0bGUoZ3JvdXApXCJcbiAgICAgIFtjb2xsYXBzZWRdPVwiY29sbGFwc2VkW2dyb3VwLnNvdXJjZS50aXRsZV1cIlxuICAgICAgKHRvZ2dsZSk9XCJjb2xsYXBzZWRbZ3JvdXAuc291cmNlLnRpdGxlXSA9ICRldmVudFwiXG4gICAgPlxuICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgIHN0b3JlSXRlbVRlbXBsYXRlO1xuICAgICAgICAgIGNvbnRleHQ6IHsgcmVzdWx0czogZ3JvdXAucmVzdWx0cyB9XG4gICAgICAgIFwiXG4gICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgPC9pZ28tY29sbGFwc2libGU+XG5cbiAgICA8bmctdGVtcGxhdGUgI2ZsYXRUZW1wbGF0ZT5cbiAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICBzdG9yZUl0ZW1UZW1wbGF0ZTtcbiAgICAgICAgICBjb250ZXh0OiB7IHJlc3VsdHM6IGdyb3VwLnJlc3VsdHMgfVxuICAgICAgICBcIlxuICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICA8bmctdGVtcGxhdGUgI3N0b3JlSXRlbVRlbXBsYXRlIGxldC1yZXN1bHRzPVwicmVzdWx0c1wiPlxuICAgICAgPG5nLXRlbXBsYXRlIG5nRm9yIGxldC1yZXN1bHQgW25nRm9yT2ZdPVwicmVzdWx0c1wiPlxuICAgICAgICA8aWdvLXNlYXJjaC1yZXN1bHRzLWl0ZW1cbiAgICAgICAgICBpZ29MaXN0SXRlbVxuICAgICAgICAgIGNvbG9yPVwiYWNjZW50XCJcbiAgICAgICAgICBbbWFwXT1cIm1hcFwiXG4gICAgICAgICAgW3Jlc3VsdF09XCJyZXN1bHRcIlxuICAgICAgICAgIFtzaG93SWNvbnNdPVwic2hvd0ljb25zXCJcbiAgICAgICAgICBbd2l0aFpvb21CdXR0b25dPVwid2l0aFpvb21CdXR0b25cIlxuICAgICAgICAgIFtmb2N1c2VkXT1cInN0b3JlLnN0YXRlLmdldChyZXN1bHQpLmZvY3VzZWRcIlxuICAgICAgICAgIFtzZWxlY3RlZF09XCJzdG9yZS5zdGF0ZS5nZXQocmVzdWx0KS5zZWxlY3RlZFwiXG4gICAgICAgICAgKGZvY3VzKT1cInJlc3VsdEZvY3VzLmVtaXQocmVzdWx0KVwiXG4gICAgICAgICAgKHVuZm9jdXMpPVwicmVzdWx0VW5mb2N1cy5lbWl0KHJlc3VsdClcIlxuICAgICAgICAgIChzZWxlY3QpPVwib25SZXN1bHRTZWxlY3QocmVzdWx0KVwiXG4gICAgICAgICAgKG1vdXNlZW50ZXIpPVwicmVzdWx0Rm9jdXMuZW1pdChyZXN1bHQpXCJcbiAgICAgICAgICAobW91c2VsZWF2ZSk9XCJyZXN1bHRVbmZvY3VzLmVtaXQocmVzdWx0KVwiXG4gICAgICAgID5cbiAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICBpZ29TZWFyY2hJdGVtVG9vbGJhclxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwidGVtcGxhdGVTZWFyY2hUb29sYmFyXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IHJlc3VsdDogcmVzdWx0IH1cIlxuICAgICAgICAgID5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9pZ28tc2VhcmNoLXJlc3VsdHMtaXRlbT5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8c3BhblxuICAgICAgICBjbGFzcz1cIm1vcmVSZXN1bHRzIG1hdC10eXBvZ3JhcGh5XCJcbiAgICAgICAgKm5nSWY9XCJpc01vcmVSZXN1bHRzKGdyb3VwKVwiXG4gICAgICAgIChjbGljayk9XCJkaXNwbGF5TW9yZVJlc3VsdHMoZ3JvdXApXCJcbiAgICAgID5cbiAgICAgICAgPHU+e3sgJ2lnby5nZW8uc2VhcmNoLmRpc3BsYXlNb3JlUmVzdWx0cycgfCB0cmFuc2xhdGUgfX08L3U+XG4gICAgICA8L3NwYW4+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvaWdvLWxpc3Q+XG5cbjxpZ28tbGlzdCBbbmF2aWdhdGlvbl09XCJ0cnVlXCIgKm5nSWY9XCJ0YWJzTW9kZVwiPlxuICA8bmctY29udGFpbmVyXG4gICAgKm5nSWY9XCJcbiAgICAgIG1vZGUgPT09IHNlYXJjaFJlc3VsdE1vZGUuR3JvdXBlZDtcbiAgICAgIHRoZW4gdGFic1RlbXBsYXRlO1xuICAgICAgZWxzZSBmbGF0VGVtcGxhdGVcbiAgICBcIlxuICA+PC9uZy1jb250YWluZXI+XG5cbiAgPG5nLXRlbXBsYXRlICN0YWJzVGVtcGxhdGU+XG4gICAgPG1hdC10YWItZ3JvdXAgY2xhc3M9XCJjdXN0b20tdGFicy12aWV3XCIgZHluYW1pY0hlaWdodD5cbiAgICAgIDxtYXQtdGFiXG4gICAgICAgICpuZ0Zvcj1cImxldCBncm91cCBvZiByZXN1bHRzJCB8IGFzeW5jXCJcbiAgICAgICAgW2xhYmVsXT1cImNvbXB1dGVHcm91cFRpdGxlKGdyb3VwKVwiXG4gICAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cInN0b3JlSXRlbVRlbXBsYXRlOyBjb250ZXh0OiB7IGdyb3VwOiBncm91cCB9XCJcbiAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9tYXQtdGFiPlxuICAgIDwvbWF0LXRhYi1ncm91cD5cbiAgPC9uZy10ZW1wbGF0ZT5cblxuICA8bmctdGVtcGxhdGUgI2ZsYXRUZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgbmdGb3IgbGV0LWdyb3VwIFtuZ0Zvck9mXT1cInJlc3VsdHMkIHwgYXN5bmNcIj5cbiAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzdG9yZUl0ZW1UZW1wbGF0ZTsgY29udGV4dDogeyBncm91cDogZ3JvdXAgfVwiXG4gICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9uZy10ZW1wbGF0ZT5cblxuICA8bmctdGVtcGxhdGUgI3N0b3JlSXRlbVRlbXBsYXRlIGxldC1ncm91cD1cImdyb3VwXCI+XG4gICAgPG5nLXRlbXBsYXRlIG5nRm9yIGxldC1yZXN1bHQgW25nRm9yT2ZdPVwiZ3JvdXAucmVzdWx0c1wiPlxuICAgICAgPGlnby1zZWFyY2gtcmVzdWx0cy1pdGVtXG4gICAgICAgIGlnb0xpc3RJdGVtXG4gICAgICAgIGNvbG9yPVwiYWNjZW50XCJcbiAgICAgICAgW21hcF09XCJtYXBcIlxuICAgICAgICBbcmVzdWx0XT1cInJlc3VsdFwiXG4gICAgICAgIFtzaG93SWNvbnNdPVwic2hvd0ljb25zXCJcbiAgICAgICAgW3dpdGhab29tQnV0dG9uXT1cIndpdGhab29tQnV0dG9uXCJcbiAgICAgICAgW2ZvY3VzZWRdPVwic3RvcmUuc3RhdGUuZ2V0KHJlc3VsdCkuZm9jdXNlZFwiXG4gICAgICAgIFtzZWxlY3RlZF09XCJzdG9yZS5zdGF0ZS5nZXQocmVzdWx0KS5zZWxlY3RlZFwiXG4gICAgICAgIChmb2N1cyk9XCJyZXN1bHRGb2N1cy5lbWl0KHJlc3VsdClcIlxuICAgICAgICAodW5mb2N1cyk9XCJyZXN1bHRVbmZvY3VzLmVtaXQocmVzdWx0KVwiXG4gICAgICAgIChzZWxlY3QpPVwib25SZXN1bHRTZWxlY3QocmVzdWx0KVwiXG4gICAgICAgIChtb3VzZWVudGVyKT1cInJlc3VsdEZvY3VzLmVtaXQocmVzdWx0KVwiXG4gICAgICAgIChtb3VzZWxlYXZlKT1cInJlc3VsdFVuZm9jdXMuZW1pdChyZXN1bHQpXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgIGlnb1NlYXJjaEl0ZW1Ub29sYmFyXG4gICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwidGVtcGxhdGVTZWFyY2hUb29sYmFyXCJcbiAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyByZXN1bHQ6IHJlc3VsdCB9XCJcbiAgICAgICAgPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvaWdvLXNlYXJjaC1yZXN1bHRzLWl0ZW0+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8c3BhblxuICAgICAgY2xhc3M9XCJtb3JlUmVzdWx0cyBtYXQtdHlwb2dyYXBoeVwiXG4gICAgICAqbmdJZj1cImlzTW9yZVJlc3VsdHMoZ3JvdXApXCJcbiAgICAgIChjbGljayk9XCJkaXNwbGF5TW9yZVJlc3VsdHMoZ3JvdXApXCJcbiAgICA+XG4gICAgICA8dT57eyAnaWdvLmdlby5zZWFyY2guZGlzcGxheU1vcmVSZXN1bHRzJyB8IHRyYW5zbGF0ZSB9fTwvdT5cbiAgICA8L3NwYW4+XG4gIDwvbmctdGVtcGxhdGU+XG48L2lnby1saXN0PlxuIl19
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { SearchResultAddButtonComponent } from './search-results-add-button.component';
|
|
2
|
+
import { SearchResultsComponent } from './search-results.component';
|
|
3
|
+
export const SEARCH_RESULTS_DIRECTIVES = [
|
|
4
|
+
SearchResultsComponent,
|
|
5
|
+
SearchResultAddButtonComponent
|
|
6
|
+
];
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLXJlc3VsdHMuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvc2VhcmNoL3NlYXJjaC1yZXN1bHRzL3NlYXJjaC1yZXN1bHRzLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN2RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUVwRSxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRztJQUN2QyxzQkFBc0I7SUFDdEIsOEJBQThCO0NBQ3RCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZWFyY2hSZXN1bHRBZGRCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL3NlYXJjaC1yZXN1bHRzLWFkZC1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IFNlYXJjaFJlc3VsdHNDb21wb25lbnQgfSBmcm9tICcuL3NlYXJjaC1yZXN1bHRzLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBjb25zdCBTRUFSQ0hfUkVTVUxUU19ESVJFQ1RJVkVTID0gW1xuICBTZWFyY2hSZXN1bHRzQ29tcG9uZW50LFxuICBTZWFyY2hSZXN1bHRBZGRCdXR0b25Db21wb25lbnRcbl0gYXMgY29uc3Q7XG4iXX0=
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { SearchResultAddButtonComponent } from './search-results-add-button.component';
|
|
3
|
+
import { SearchResultsComponent } from './search-results.component';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
/**
|
|
6
|
+
* @deprecated import the components directly or the SEARCH_RESULTS_DIRECTIVES
|
|
7
|
+
*/
|
|
8
|
+
export class IgoSearchResultsModule {
|
|
9
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoSearchResultsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
10
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: IgoSearchResultsModule, imports: [SearchResultsComponent, SearchResultAddButtonComponent], exports: [SearchResultsComponent, SearchResultAddButtonComponent] });
|
|
11
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoSearchResultsModule, imports: [SearchResultsComponent, SearchResultAddButtonComponent] });
|
|
12
|
+
}
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoSearchResultsModule, decorators: [{
|
|
14
|
+
type: NgModule,
|
|
15
|
+
args: [{
|
|
16
|
+
imports: [SearchResultsComponent, SearchResultAddButtonComponent],
|
|
17
|
+
exports: [SearchResultsComponent, SearchResultAddButtonComponent]
|
|
18
|
+
}]
|
|
19
|
+
}] });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLXJlc3VsdHMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvc2VhcmNoL3NlYXJjaC1yZXN1bHRzL3NlYXJjaC1yZXN1bHRzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQUVwRTs7R0FFRztBQUtILE1BQU0sT0FBTyxzQkFBc0I7d0dBQXRCLHNCQUFzQjt5R0FBdEIsc0JBQXNCLFlBSHZCLHNCQUFzQixFQUFFLDhCQUE4QixhQUN0RCxzQkFBc0IsRUFBRSw4QkFBOEI7eUdBRXJELHNCQUFzQixZQUh2QixzQkFBc0IsRUFBRSw4QkFBOEI7OzRGQUdyRCxzQkFBc0I7a0JBSmxDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsc0JBQXNCLEVBQUUsOEJBQThCLENBQUM7b0JBQ2pFLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixFQUFFLDhCQUE4QixDQUFDO2lCQUNsRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFNlYXJjaFJlc3VsdEFkZEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vc2VhcmNoLXJlc3VsdHMtYWRkLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2VhcmNoUmVzdWx0c0NvbXBvbmVudCB9IGZyb20gJy4vc2VhcmNoLXJlc3VsdHMuY29tcG9uZW50JztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCBpbXBvcnQgdGhlIGNvbXBvbmVudHMgZGlyZWN0bHkgb3IgdGhlIFNFQVJDSF9SRVNVTFRTX0RJUkVDVElWRVNcbiAqL1xuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1NlYXJjaFJlc3VsdHNDb21wb25lbnQsIFNlYXJjaFJlc3VsdEFkZEJ1dHRvbkNvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtTZWFyY2hSZXN1bHRzQ29tcG9uZW50LCBTZWFyY2hSZXN1bHRBZGRCdXR0b25Db21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIElnb1NlYXJjaFJlc3VsdHNNb2R1bGUge31cbiJdfQ==
|