@igo2/geo 1.13.4 → 1.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/icons/cross_black_18px.svg +88 -88
- package/assets/icons/place_blue_36px.svg +55 -55
- package/assets/icons/place_green_36px.svg +55 -55
- package/assets/icons/place_red_36px.svg +55 -55
- package/assets/icons/place_yellow_36px.svg +55 -55
- package/esm2020/lib/catalog/catalog-browser/catalog-browser-group.component.mjs +2 -2
- package/esm2020/lib/catalog/catalog-browser/catalog-browser-layer.component.mjs +2 -2
- package/esm2020/lib/catalog/catalog-browser/catalog-browser.component.mjs +5 -2
- package/esm2020/lib/catalog/catalog-browser/catalog-browser.module.mjs +1 -1
- package/esm2020/lib/catalog/catalog-library/add-catalog-dialog.component.mjs +2 -2
- package/esm2020/lib/catalog/catalog-library/catalog-library-item.component.mjs +2 -2
- package/esm2020/lib/catalog/catalog-library/catalog-library.component.mjs +2 -2
- package/esm2020/lib/catalog/catalog-library/catalog-library.module.mjs +1 -1
- package/esm2020/lib/catalog/catalog.module.mjs +1 -1
- package/esm2020/lib/catalog/index.mjs +1 -1
- package/esm2020/lib/catalog/shared/catalog.abstract.mjs +1 -1
- package/esm2020/lib/catalog/shared/catalog.enum.mjs +1 -1
- package/esm2020/lib/catalog/shared/catalog.interface.mjs +1 -1
- package/esm2020/lib/catalog/shared/catalog.service.mjs +1 -1
- package/esm2020/lib/catalog/shared/index.mjs +1 -1
- package/esm2020/lib/datasource/datasource.module.mjs +1 -1
- package/esm2020/lib/datasource/index.mjs +1 -1
- package/esm2020/lib/datasource/shared/capabilities.service.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasource.service.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/any-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/any-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/arcgisrest-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/arcgisrest-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/carto-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/carto-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/cluster-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/cluster-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/data.service.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/feature-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/feature-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/imagearcgisrest-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/index.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/mvt-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/mvt-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/osm-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/osm-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/tilearcgisrest-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/tiledebug-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/tiledebug-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/websocket-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/websocket-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/wfs-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/wfs-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/wfs.service.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/wms-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/wms-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/wms-wfs.utils.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/wmts-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/wmts-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/xyz-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/xyz-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/index.mjs +1 -1
- package/esm2020/lib/datasource/shared/options/index.mjs +1 -1
- package/esm2020/lib/datasource/shared/options/options-api.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/options/options-api.providers.mjs +1 -1
- package/esm2020/lib/datasource/shared/options/options-api.service.mjs +1 -1
- package/esm2020/lib/datasource/shared/options/options.service.mjs +1 -1
- package/esm2020/lib/datasource/utils/esri-style-generator.mjs +1 -1
- package/esm2020/lib/datasource/utils/index.mjs +1 -1
- package/esm2020/lib/datasource/utils/tilegrid.mjs +1 -1
- package/esm2020/lib/directions/directions-buttons/directions-buttons.component.mjs +2 -2
- package/esm2020/lib/directions/directions-buttons/index.mjs +1 -1
- package/esm2020/lib/directions/directions-inputs/directions-inputs.component.mjs +2 -2
- package/esm2020/lib/directions/directions-inputs/index.mjs +1 -1
- package/esm2020/lib/directions/directions-results/directions-results.component.mjs +2 -2
- package/esm2020/lib/directions/directions-results/index.mjs +1 -1
- package/esm2020/lib/directions/directions-sources/directions-source.interface.mjs +1 -1
- package/esm2020/lib/directions/directions-sources/directions-source.mjs +1 -1
- package/esm2020/lib/directions/directions-sources/directions-source.provider.mjs +1 -1
- package/esm2020/lib/directions/directions-sources/index.mjs +1 -1
- package/esm2020/lib/directions/directions-sources/osrm-directions-source.mjs +1 -1
- package/esm2020/lib/directions/directions.component.mjs +2 -2
- package/esm2020/lib/directions/directions.module.mjs +1 -1
- package/esm2020/lib/directions/index.mjs +1 -1
- package/esm2020/lib/directions/shared/directions-source.service.mjs +1 -1
- package/esm2020/lib/directions/shared/directions.enum.mjs +1 -1
- package/esm2020/lib/directions/shared/directions.interface.mjs +1 -1
- package/esm2020/lib/directions/shared/directions.service.mjs +1 -1
- package/esm2020/lib/directions/shared/directions.utils.mjs +1 -1
- package/esm2020/lib/directions/shared/index.mjs +1 -1
- package/esm2020/lib/directions/shared/store.mjs +1 -1
- package/esm2020/lib/download/download-button/download-button.component.mjs +2 -2
- package/esm2020/lib/download/download-button/index.mjs +1 -1
- package/esm2020/lib/download/download.module.mjs +1 -1
- package/esm2020/lib/download/index.mjs +1 -1
- package/esm2020/lib/download/shared/download.interface.mjs +1 -1
- package/esm2020/lib/download/shared/download.service.mjs +1 -1
- package/esm2020/lib/download/shared/index.mjs +1 -1
- package/esm2020/lib/draw/draw/draw-layer-popup.component.mjs +2 -2
- package/esm2020/lib/draw/draw/draw-popup.component.mjs +562 -32
- package/esm2020/lib/draw/draw/draw-shorcuts.component.mjs +2 -2
- package/esm2020/lib/draw/draw/draw.component.mjs +358 -130
- package/esm2020/lib/draw/draw/draw.module.mjs +12 -4
- package/esm2020/lib/draw/drawingTool.module.mjs +1 -1
- package/esm2020/lib/draw/index.mjs +1 -1
- package/esm2020/lib/draw/shared/draw-icon.service.mjs +1 -1
- package/esm2020/lib/draw/shared/draw-style.service.mjs +2 -2
- package/esm2020/lib/draw/shared/draw.enum.mjs +14 -1
- package/esm2020/lib/draw/shared/draw.interface.mjs +1 -1
- package/esm2020/lib/draw/shared/draw.utils.mjs +19 -1
- package/esm2020/lib/draw/shared/index.mjs +1 -1
- package/esm2020/lib/feature/feature-details/feature-details.component.mjs +2 -2
- package/esm2020/lib/feature/feature-details/feature-details.directive.mjs +1 -1
- package/esm2020/lib/feature/feature-details/feature-details.module.mjs +1 -1
- package/esm2020/lib/feature/feature-form/feature-form.component.mjs +2 -2
- package/esm2020/lib/feature/feature-form/feature-form.module.mjs +1 -1
- package/esm2020/lib/feature/feature.module.mjs +1 -1
- package/esm2020/lib/feature/index.mjs +1 -1
- package/esm2020/lib/feature/shared/feature.enums.mjs +1 -1
- package/esm2020/lib/feature/shared/feature.interfaces.mjs +1 -1
- package/esm2020/lib/feature/shared/feature.utils.mjs +1 -1
- package/esm2020/lib/feature/shared/index.mjs +1 -1
- package/esm2020/lib/feature/shared/store.mjs +1 -1
- package/esm2020/lib/feature/shared/strategies/in-map-extent.mjs +1 -1
- package/esm2020/lib/feature/shared/strategies/in-map-resolution.mjs +1 -1
- package/esm2020/lib/feature/shared/strategies/index.mjs +1 -1
- package/esm2020/lib/feature/shared/strategies/loading-layer.mjs +1 -1
- package/esm2020/lib/feature/shared/strategies/loading.mjs +1 -1
- package/esm2020/lib/feature/shared/strategies/selection.mjs +1 -1
- package/esm2020/lib/feature/shared/strategies.utils.mjs +1 -1
- package/esm2020/lib/filter/filter.module.mjs +1 -1
- package/esm2020/lib/filter/index.mjs +1 -1
- package/esm2020/lib/filter/ogc-filter-button/index.mjs +1 -1
- package/esm2020/lib/filter/ogc-filter-button/ogc-filter-button.component.mjs +2 -2
- package/esm2020/lib/filter/ogc-filter-form/index.mjs +1 -1
- package/esm2020/lib/filter/ogc-filter-form/ogc-filter-form.component.mjs +2 -2
- package/esm2020/lib/filter/ogc-filter-selection/index.mjs +1 -1
- package/esm2020/lib/filter/ogc-filter-selection/ogc-filter-selection.component.mjs +2 -2
- package/esm2020/lib/filter/ogc-filter-time/index.mjs +1 -1
- package/esm2020/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.mjs +2 -2
- package/esm2020/lib/filter/ogc-filter-time/ogc-filter-time.component.mjs +2 -2
- package/esm2020/lib/filter/ogc-filterable-form/index.mjs +1 -1
- package/esm2020/lib/filter/ogc-filterable-form/ogc-filterable-form.component.mjs +2 -2
- package/esm2020/lib/filter/ogc-filterable-item/index.mjs +1 -1
- package/esm2020/lib/filter/ogc-filterable-item/ogc-filterable-item.component.mjs +2 -2
- package/esm2020/lib/filter/ogc-filterable-list/index.mjs +1 -1
- package/esm2020/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.mjs +1 -1
- package/esm2020/lib/filter/ogc-filterable-list/ogc-filterable-list.component.mjs +2 -2
- package/esm2020/lib/filter/shared/filterable-datasource.pipe.mjs +1 -1
- package/esm2020/lib/filter/shared/index.mjs +1 -1
- package/esm2020/lib/filter/shared/ogc-filter-time.service.mjs +1 -1
- package/esm2020/lib/filter/shared/ogc-filter.enum.mjs +1 -1
- package/esm2020/lib/filter/shared/ogc-filter.interface.mjs +1 -1
- package/esm2020/lib/filter/shared/ogc-filter.mjs +1 -1
- package/esm2020/lib/filter/shared/ogc-filter.service.mjs +1 -1
- package/esm2020/lib/filter/shared/spatial-filter.enum.mjs +1 -1
- package/esm2020/lib/filter/shared/spatial-filter.interface.mjs +1 -1
- package/esm2020/lib/filter/shared/spatial-filter.service.mjs +1 -1
- package/esm2020/lib/filter/shared/time-filter.enum.mjs +1 -1
- package/esm2020/lib/filter/shared/time-filter.interface.mjs +1 -1
- package/esm2020/lib/filter/shared/time-filter.service.mjs +1 -1
- package/esm2020/lib/filter/spatial-filter/spatial-filter-item/index.mjs +1 -1
- package/esm2020/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.mjs +21 -8
- package/esm2020/lib/filter/spatial-filter/spatial-filter-list/index.mjs +1 -1
- package/esm2020/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.mjs +2 -2
- package/esm2020/lib/filter/spatial-filter/spatial-filter-type/index.mjs +1 -1
- package/esm2020/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.mjs +2 -2
- package/esm2020/lib/filter/time-filter-button/index.mjs +1 -1
- package/esm2020/lib/filter/time-filter-button/time-filter-button.component.mjs +2 -2
- package/esm2020/lib/filter/time-filter-form/index.mjs +1 -1
- package/esm2020/lib/filter/time-filter-form/time-filter-form.component.mjs +2 -2
- package/esm2020/lib/filter/time-filter-item/index.mjs +1 -1
- package/esm2020/lib/filter/time-filter-item/time-filter-item.component.mjs +2 -2
- package/esm2020/lib/filter/time-filter-list/index.mjs +1 -1
- package/esm2020/lib/filter/time-filter-list/time-filter-list-binding.directive.mjs +1 -1
- package/esm2020/lib/filter/time-filter-list/time-filter-list.component.mjs +2 -2
- package/esm2020/lib/geo.module.mjs +1 -1
- package/esm2020/lib/geometry/geometry-form-field/geometry-form-field-input.component.mjs +12 -2
- package/esm2020/lib/geometry/geometry-form-field/geometry-form-field.component.mjs +2 -2
- package/esm2020/lib/geometry/geometry-form-field/geometry-form-field.module.mjs +1 -1
- package/esm2020/lib/geometry/geometry.module.mjs +1 -1
- package/esm2020/lib/geometry/index.mjs +1 -1
- package/esm2020/lib/geometry/shared/controls/draw.mjs +53 -10
- package/esm2020/lib/geometry/shared/controls/index.mjs +1 -1
- package/esm2020/lib/geometry/shared/controls/modify.mjs +1 -1
- package/esm2020/lib/geometry/shared/controls/slice.mjs +1 -1
- package/esm2020/lib/geometry/shared/geometry.errors.mjs +1 -1
- package/esm2020/lib/geometry/shared/geometry.interfaces.mjs +1 -1
- package/esm2020/lib/geometry/shared/geometry.utils.mjs +1 -1
- package/esm2020/lib/geometry/shared/index.mjs +1 -1
- package/esm2020/lib/import-export/export-button/export-button.component.mjs +2 -2
- package/esm2020/lib/import-export/export-button/index.mjs +1 -1
- package/esm2020/lib/import-export/import-export/import-export.component.mjs +2 -2
- package/esm2020/lib/import-export/import-export/index.mjs +1 -1
- package/esm2020/lib/import-export/import-export.module.mjs +1 -1
- package/esm2020/lib/import-export/index.mjs +1 -1
- package/esm2020/lib/import-export/shared/drop-geo-file.directive.mjs +1 -1
- package/esm2020/lib/import-export/shared/export.errors.mjs +1 -1
- package/esm2020/lib/import-export/shared/export.interface.mjs +1 -1
- package/esm2020/lib/import-export/shared/export.service.mjs +2 -2
- package/esm2020/lib/import-export/shared/export.type.mjs +1 -1
- package/esm2020/lib/import-export/shared/export.utils.mjs +1 -1
- package/esm2020/lib/import-export/shared/import.errors.mjs +1 -1
- package/esm2020/lib/import-export/shared/import.interface.mjs +1 -1
- package/esm2020/lib/import-export/shared/import.service.mjs +26 -6
- package/esm2020/lib/import-export/shared/import.utils.mjs +1 -1
- package/esm2020/lib/import-export/shared/index.mjs +1 -1
- package/esm2020/lib/import-export/style-list/index.mjs +1 -1
- package/esm2020/lib/import-export/style-list/style-list.interface.mjs +1 -1
- package/esm2020/lib/import-export/style-list/style-list.module.mjs +1 -1
- package/esm2020/lib/import-export/style-list/style-list.provider.mjs +1 -1
- package/esm2020/lib/import-export/style-list/style-list.service.mjs +1 -1
- package/esm2020/lib/layer/index.mjs +1 -1
- package/esm2020/lib/layer/layer-item/index.mjs +1 -1
- package/esm2020/lib/layer/layer-item/layer-item.component.mjs +2 -2
- package/esm2020/lib/layer/layer-legend/index.mjs +1 -1
- package/esm2020/lib/layer/layer-legend/layer-legend.component.mjs +2 -2
- package/esm2020/lib/layer/layer-legend-item/index.mjs +1 -1
- package/esm2020/lib/layer/layer-legend-item/layer-legend-item.component.mjs +2 -2
- package/esm2020/lib/layer/layer-legend-list/index.mjs +1 -1
- package/esm2020/lib/layer/layer-legend-list/layer-legend-list-binding.directive.mjs +1 -1
- package/esm2020/lib/layer/layer-legend-list/layer-legend-list.component.mjs +2 -2
- package/esm2020/lib/layer/layer-list/index.mjs +1 -1
- package/esm2020/lib/layer/layer-list/layer-list-binding.directive.mjs +1 -1
- package/esm2020/lib/layer/layer-list/layer-list.component.mjs +2 -2
- package/esm2020/lib/layer/layer-list/layer-list.enum.mjs +1 -1
- package/esm2020/lib/layer/layer-list-tool/index.mjs +1 -1
- package/esm2020/lib/layer/layer-list-tool/layer-list-tool.component.mjs +2 -2
- package/esm2020/lib/layer/layer-list-tool/layer-list-tool.enum.mjs +1 -1
- package/esm2020/lib/layer/layer-list-tool/layer-list-tool.interface.mjs +1 -1
- package/esm2020/lib/layer/layer-list-tool/layer-list-tool.service.mjs +1 -1
- package/esm2020/lib/layer/layer.module.mjs +1 -1
- package/esm2020/lib/layer/shared/clusterParam.mjs +1 -1
- package/esm2020/lib/layer/shared/index.mjs +1 -1
- package/esm2020/lib/layer/shared/layer.enums.mjs +1 -1
- package/esm2020/lib/layer/shared/layer.service.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/any-layer.interface.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/any-layer.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/image-layer.interface.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/image-layer.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/index.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/layer.interface.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/layer.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/tile-layer.interface.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/tile-layer.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/vector-layer.interface.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/vector-layer.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/vectortile-layer.interface.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/vectortile-layer.mjs +1 -1
- package/esm2020/lib/layer/shared/style.service.mjs +1 -1
- package/esm2020/lib/layer/shared/vector-style.interface.mjs +1 -1
- package/esm2020/lib/layer/style-modal/index.mjs +1 -1
- package/esm2020/lib/layer/style-modal/style-modal.component.mjs +2 -2
- package/esm2020/lib/layer/track-feature-button/index.mjs +1 -1
- package/esm2020/lib/layer/track-feature-button/track-feature-button.component.mjs +2 -2
- package/esm2020/lib/layer/utils/image-watcher.mjs +1 -1
- package/esm2020/lib/layer/utils/index.mjs +1 -1
- package/esm2020/lib/layer/utils/layer.utils.mjs +1 -1
- package/esm2020/lib/layer/utils/outputLegend.mjs +1 -1
- package/esm2020/lib/layer/utils/tile-watcher.mjs +1 -1
- package/esm2020/lib/layer/utils/vector-watcher.mjs +1 -1
- package/esm2020/lib/map/baselayers-switcher/baselayers-switcher.animation.mjs +1 -1
- package/esm2020/lib/map/baselayers-switcher/baselayers-switcher.component.mjs +2 -2
- package/esm2020/lib/map/baselayers-switcher/index.mjs +1 -1
- package/esm2020/lib/map/baselayers-switcher/mini-basemap.component.mjs +2 -2
- package/esm2020/lib/map/geolocate-button/geolocate-button.component.mjs +2 -2
- package/esm2020/lib/map/geolocate-button/index.mjs +1 -1
- package/esm2020/lib/map/index.mjs +1 -1
- package/esm2020/lib/map/info-section/index.mjs +1 -1
- package/esm2020/lib/map/info-section/info-section.component.mjs +2 -2
- package/esm2020/lib/map/map-browser/index.mjs +1 -1
- package/esm2020/lib/map/map-browser/map-browser.component.mjs +2 -2
- package/esm2020/lib/map/map-center/index.mjs +1 -1
- package/esm2020/lib/map/map-center/map-center.component.mjs +2 -2
- package/esm2020/lib/map/map.module.mjs +1 -1
- package/esm2020/lib/map/menu-button/index.mjs +1 -1
- package/esm2020/lib/map/menu-button/menu-button.component.mjs +2 -2
- package/esm2020/lib/map/offline-button/index.mjs +1 -1
- package/esm2020/lib/map/offline-button/offline-button.component.mjs +2 -2
- package/esm2020/lib/map/rotation-button/index.mjs +1 -1
- package/esm2020/lib/map/rotation-button/rotation-button.component.mjs +2 -2
- package/esm2020/lib/map/shared/controllers/controller.mjs +1 -1
- package/esm2020/lib/map/shared/controllers/geolocation.mjs +1 -1
- package/esm2020/lib/map/shared/controllers/index.mjs +1 -1
- package/esm2020/lib/map/shared/controllers/view.mjs +1 -1
- package/esm2020/lib/map/shared/hover-feature.directive.mjs +2 -2
- package/esm2020/lib/map/shared/index.mjs +1 -1
- package/esm2020/lib/map/shared/linkedLayers.utils.mjs +3 -3
- package/esm2020/lib/map/shared/map-pointer-position.directive.mjs +1 -1
- package/esm2020/lib/map/shared/map.enums.mjs +1 -1
- package/esm2020/lib/map/shared/map.interface.mjs +1 -1
- package/esm2020/lib/map/shared/map.mjs +1 -1
- package/esm2020/lib/map/shared/map.service.mjs +1 -1
- package/esm2020/lib/map/shared/map.utils.mjs +4 -1
- package/esm2020/lib/map/shared/mapOffline.directive.mjs +1 -1
- package/esm2020/lib/map/shared/projection.interfaces.mjs +1 -1
- package/esm2020/lib/map/shared/projection.service.mjs +1 -1
- package/esm2020/lib/map/shared/projection.utils.mjs +1 -1
- package/esm2020/lib/map/swipe-control/index.mjs +1 -1
- package/esm2020/lib/map/swipe-control/swipe-control.component.mjs +2 -2
- package/esm2020/lib/map/utils/layer-watcher.mjs +1 -1
- package/esm2020/lib/map/wake-lock-button/index.mjs +1 -1
- package/esm2020/lib/map/wake-lock-button/wake-lock-button.component.mjs +2 -2
- package/esm2020/lib/map/zoom-button/index.mjs +1 -1
- package/esm2020/lib/map/zoom-button/zoom-button.component.mjs +2 -2
- package/esm2020/lib/measure/index.mjs +1 -1
- package/esm2020/lib/measure/measure.module.mjs +1 -1
- package/esm2020/lib/measure/measurer/measure-format.pipe.mjs +1 -1
- package/esm2020/lib/measure/measurer/measurer-dialog.component.mjs +2 -2
- package/esm2020/lib/measure/measurer/measurer-item.component.mjs +2 -2
- package/esm2020/lib/measure/measurer/measurer.component.mjs +2 -2
- package/esm2020/lib/measure/measurer/measurer.module.mjs +1 -1
- package/esm2020/lib/measure/shared/index.mjs +1 -1
- package/esm2020/lib/measure/shared/measure.enum.mjs +1 -1
- package/esm2020/lib/measure/shared/measure.interfaces.mjs +1 -1
- package/esm2020/lib/measure/shared/measure.utils.mjs +1 -1
- package/esm2020/lib/metadata/index.mjs +1 -1
- package/esm2020/lib/metadata/metadata-button/index.mjs +1 -1
- package/esm2020/lib/metadata/metadata-button/metadata-button.component.mjs +3 -3
- package/esm2020/lib/metadata/metadata.module.mjs +1 -1
- package/esm2020/lib/metadata/shared/index.mjs +1 -1
- package/esm2020/lib/metadata/shared/metadata.interface.mjs +1 -1
- package/esm2020/lib/metadata/shared/metadata.service.mjs +1 -1
- package/esm2020/lib/offline/geoDB/configFileToGeoDB.service.mjs +33 -4
- package/esm2020/lib/offline/geoDB/geoDB.enums.mjs +1 -1
- package/esm2020/lib/offline/geoDB/geoDB.interface.mjs +1 -1
- package/esm2020/lib/offline/geoDB/geoDB.service.mjs +12 -12
- package/esm2020/lib/offline/geoDB/index.mjs +1 -1
- package/esm2020/lib/offline/index.mjs +1 -1
- package/esm2020/lib/offline/shared/geo-network.service.mjs +1 -1
- package/esm2020/lib/offline/shared/index.mjs +1 -1
- package/esm2020/lib/overlay/index.mjs +1 -1
- package/esm2020/lib/overlay/overlay.module.mjs +1 -1
- package/esm2020/lib/overlay/shared/index.mjs +1 -1
- package/esm2020/lib/overlay/shared/overlay-marker-style.utils.mjs +1 -1
- package/esm2020/lib/overlay/shared/overlay.directive.mjs +1 -1
- package/esm2020/lib/overlay/shared/overlay.enum.mjs +1 -1
- package/esm2020/lib/overlay/shared/overlay.mjs +1 -1
- package/esm2020/lib/overlay/shared/overlay.service.mjs +1 -1
- package/esm2020/lib/overlay/shared/overlay.utils.mjs +1 -1
- package/esm2020/lib/print/index.mjs +1 -1
- package/esm2020/lib/print/print/print.component.mjs +2 -2
- package/esm2020/lib/print/print-form/index.mjs +1 -1
- package/esm2020/lib/print/print-form/print-form.component.mjs +2 -2
- package/esm2020/lib/print/print.module.mjs +1 -1
- package/esm2020/lib/print/shared/geopdf.mjs +58 -0
- package/esm2020/lib/print/shared/index.mjs +2 -1
- package/esm2020/lib/print/shared/print.interface.mjs +1 -1
- package/esm2020/lib/print/shared/print.service.mjs +118 -64
- package/esm2020/lib/print/shared/print.type.mjs +1 -1
- package/esm2020/lib/query/index.mjs +1 -1
- package/esm2020/lib/query/query.module.mjs +1 -1
- package/esm2020/lib/query/shared/index.mjs +1 -1
- package/esm2020/lib/query/shared/query-search-source.mjs +1 -1
- package/esm2020/lib/query/shared/query-search-source.providers.mjs +1 -1
- package/esm2020/lib/query/shared/query.directive.mjs +1 -1
- package/esm2020/lib/query/shared/query.enums.mjs +1 -1
- package/esm2020/lib/query/shared/query.interfaces.mjs +1 -1
- package/esm2020/lib/query/shared/query.service.mjs +3 -3
- package/esm2020/lib/query/shared/query.utils.mjs +1 -1
- package/esm2020/lib/search/index.mjs +1 -1
- package/esm2020/lib/search/search-bar/search-bar.component.mjs +2 -2
- package/esm2020/lib/search/search-bar/search-bar.module.mjs +1 -1
- package/esm2020/lib/search/search-bar/search-url-param.directive.mjs +1 -1
- package/esm2020/lib/search/search-results/search-results-add-button.component.mjs +2 -2
- package/esm2020/lib/search/search-results/search-results-item.component.mjs +2 -2
- package/esm2020/lib/search/search-results/search-results.component.mjs +2 -2
- package/esm2020/lib/search/search-results/search-results.module.mjs +1 -1
- package/esm2020/lib/search/search-selector/search-selector.component.mjs +2 -2
- package/esm2020/lib/search/search-selector/search-selector.module.mjs +1 -1
- package/esm2020/lib/search/search-settings/search-settings.component.mjs +2 -2
- package/esm2020/lib/search/search-settings/search-settings.module.mjs +1 -1
- package/esm2020/lib/search/search.module.mjs +1 -1
- package/esm2020/lib/search/shared/index.mjs +1 -1
- package/esm2020/lib/search/shared/search-pointer-summary.directive.mjs +1 -1
- package/esm2020/lib/search/shared/search-source-service.providers.mjs +1 -1
- package/esm2020/lib/search/shared/search-source.service.mjs +1 -1
- package/esm2020/lib/search/shared/search.enums.mjs +1 -1
- package/esm2020/lib/search/shared/search.interfaces.mjs +1 -1
- package/esm2020/lib/search/shared/search.service.mjs +1 -1
- package/esm2020/lib/search/shared/search.utils.mjs +1 -1
- package/esm2020/lib/search/shared/sources/coordinates.interfaces.mjs +1 -1
- package/esm2020/lib/search/shared/sources/coordinates.mjs +1 -1
- package/esm2020/lib/search/shared/sources/coordinates.providers.mjs +1 -1
- package/esm2020/lib/search/shared/sources/icherche.interfaces.mjs +1 -1
- package/esm2020/lib/search/shared/sources/icherche.mjs +1 -1
- package/esm2020/lib/search/shared/sources/icherche.providers.mjs +1 -1
- package/esm2020/lib/search/shared/sources/ilayer.interfaces.mjs +1 -1
- package/esm2020/lib/search/shared/sources/ilayer.mjs +1 -1
- package/esm2020/lib/search/shared/sources/ilayer.providers.mjs +1 -1
- package/esm2020/lib/search/shared/sources/index.mjs +1 -3
- package/esm2020/lib/search/shared/sources/nominatim.interfaces.mjs +1 -1
- package/esm2020/lib/search/shared/sources/nominatim.mjs +2 -2
- package/esm2020/lib/search/shared/sources/nominatim.providers.mjs +1 -1
- package/esm2020/lib/search/shared/sources/source.interfaces.mjs +1 -1
- package/esm2020/lib/search/shared/sources/source.mjs +1 -1
- package/esm2020/lib/search/shared/sources/storedqueries.interfaces.mjs +1 -1
- package/esm2020/lib/search/shared/sources/storedqueries.mjs +1 -1
- package/esm2020/lib/search/shared/sources/storedqueries.providers.mjs +1 -1
- package/esm2020/lib/toast/index.mjs +1 -1
- package/esm2020/lib/toast/toast.component.mjs +2 -2
- package/esm2020/lib/toast/toast.module.mjs +1 -1
- package/esm2020/lib/utils/commonVectorStyle.interface.mjs +1 -1
- package/esm2020/lib/utils/commonVectorStyle.mjs +1 -1
- package/esm2020/lib/utils/googleLinks.mjs +1 -1
- package/esm2020/lib/utils/id-generator.mjs +1 -1
- package/esm2020/lib/utils/index.mjs +1 -1
- package/esm2020/lib/utils/osmLinks.mjs +1 -1
- package/esm2020/lib/wkt/index.mjs +1 -1
- package/esm2020/lib/wkt/shared/index.mjs +1 -1
- package/esm2020/lib/wkt/shared/wkt.service.mjs +15 -15
- package/esm2020/lib/wkt/wkt.module.mjs +1 -1
- package/esm2020/lib/workspace/confirmation-popup/confirmation-popup.component.mjs +2 -2
- package/esm2020/lib/workspace/confirmation-popup/confirmation-popup.module.mjs +1 -1
- package/esm2020/lib/workspace/confirmation-popup/index.mjs +1 -1
- package/esm2020/lib/workspace/index.mjs +1 -1
- package/esm2020/lib/workspace/shared/edition-workspace.mjs +1 -1
- package/esm2020/lib/workspace/shared/edition-workspace.service.mjs +1 -1
- package/esm2020/lib/workspace/shared/feature-workspace.mjs +1 -1
- package/esm2020/lib/workspace/shared/feature-workspace.service.mjs +1 -1
- package/esm2020/lib/workspace/shared/index.mjs +1 -1
- package/esm2020/lib/workspace/shared/wfs-workspace.mjs +1 -1
- package/esm2020/lib/workspace/shared/wfs-workspace.service.mjs +1 -1
- package/esm2020/lib/workspace/shared/wms-workspace.service.mjs +1 -1
- package/esm2020/lib/workspace/shared/workspace.utils.mjs +1 -1
- package/esm2020/lib/workspace/widgets/index.mjs +1 -1
- package/esm2020/lib/workspace/widgets/ogc-filter/ogc-filter.component.mjs +2 -2
- package/esm2020/lib/workspace/widgets/ogc-filter/ogc-filter.module.mjs +1 -1
- package/esm2020/lib/workspace/widgets/widgets.mjs +1 -1
- package/esm2020/lib/workspace/workspace-selector/workspace-selector.directive.mjs +1 -1
- package/esm2020/lib/workspace/workspace-selector/workspace-selector.module.mjs +1 -1
- package/esm2020/lib/workspace/workspace-updator/workspace-updator.directive.mjs +1 -1
- package/esm2020/lib/workspace/workspace-updator/workspace-updator.module.mjs +1 -1
- package/esm2020/lib/workspace/workspace.module.mjs +1 -1
- package/esm2020/public_api.mjs +1 -1
- package/fesm2015/igo2-geo.mjs +1405 -494
- package/fesm2015/igo2-geo.mjs.map +1 -1
- package/fesm2020/igo2-geo.mjs +1357 -490
- package/fesm2020/igo2-geo.mjs.map +1 -1
- package/lib/catalog/shared/catalog.abstract.d.ts +1 -0
- package/lib/draw/draw/draw-popup.component.d.ts +52 -5
- package/lib/draw/draw/draw.component.d.ts +34 -4
- package/lib/draw/draw/draw.module.d.ts +3 -1
- package/lib/draw/shared/draw.enum.d.ts +11 -0
- package/lib/draw/shared/draw.interface.d.ts +4 -0
- package/lib/draw/shared/draw.utils.d.ts +2 -0
- package/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.d.ts +2 -1
- package/lib/geometry/geometry-form-field/geometry-form-field-input.component.d.ts +7 -1
- package/lib/geometry/shared/controls/draw.d.ts +18 -0
- package/lib/import-export/shared/import.interface.d.ts +2 -1
- package/lib/import-export/shared/import.service.d.ts +7 -0
- package/lib/layer/shared/layers/layer.interface.d.ts +4 -0
- package/lib/map/shared/map.utils.d.ts +1 -0
- package/lib/offline/geoDB/configFileToGeoDB.service.d.ts +1 -0
- package/lib/offline/geoDB/geoDB.interface.d.ts +1 -0
- package/lib/offline/geoDB/geoDB.service.d.ts +3 -3
- package/lib/print/shared/geopdf.d.ts +1 -0
- package/lib/print/shared/index.d.ts +1 -0
- package/lib/print/shared/print.interface.d.ts +5 -0
- package/lib/print/shared/print.service.d.ts +17 -8
- package/lib/search/shared/sources/index.d.ts +0 -2
- package/ngcc.config.js +3 -3
- package/package.json +4 -4
- package/style/geo.theming.scss +12 -12
- package/esm2020/lib/search/shared/sources/cadastre.mjs +0 -126
- package/esm2020/lib/search/shared/sources/cadastre.providers.mjs +0 -23
- package/lib/search/shared/sources/cadastre.d.ts +0 -33
- package/lib/search/shared/sources/cadastre.providers.d.ts +0 -18
|
@@ -232,4 +232,4 @@ function createImportedLayerRandomStyle() {
|
|
|
232
232
|
return style;
|
|
233
233
|
};
|
|
234
234
|
}
|
|
235
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0LnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvaW1wb3J0LWV4cG9ydC9zaGFyZWQvaW1wb3J0LnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sVUFBVSxDQUFDO0FBTXBDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBRzNGLE9BQU8sRUFDTCxXQUFXLEVBQ1gsZ0JBQWdCLEVBQ2hCLHVCQUF1QixFQUN4QixNQUFNLG9DQUFvQyxDQUFDO0FBQzVDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUdyRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFJaEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFFM0YsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVuQyxNQUFNLFVBQVUsd0JBQXdCLENBQ3RDLFFBQW1CLEVBQ25CLEdBQVcsRUFDWCxVQUFrQjtJQUVsQixNQUFNLFVBQVUsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBZ0IsRUFBRSxFQUFFLENBQ25ELFdBQVcsQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUNyQyxDQUFDO0lBRUYsTUFBTSxhQUFhLEdBQTBEO1FBQzNFLElBQUksRUFBRSxRQUFRO1FBQ2QsU0FBUyxFQUFFLElBQUk7S0FDaEIsQ0FBQztJQUNGLE1BQU0sTUFBTSxHQUFHLElBQUksaUJBQWlCLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDcEQsTUFBTSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxXQUFXLENBQUM7UUFDNUIsS0FBSyxFQUFFLFVBQVU7UUFD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T0FBTyxFQUFFLENBQUM7Z0JBQ1YsT0FBTyxFQUFFLENBQUMsQ0FBQztnQkFDWCxJQUFJLEVBQUUseUJBQXlCO2dCQUMvQixJQUFJLEVBQUUsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFDO2dCQUN6QyxNQUFNLEVBQUUsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUM7Z0JBQ3ZELFFBQVEsRUFBRSxJQUFJO2FBQ2YsQ0FBQyxDQUFBLENBQUMsQ0FBQyxTQUFTO1NBQ2QsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIG9sU3R5bGUgZnJvbSAnb2wvc3R5bGUnO1xuaW1wb3J0IE9sRmVhdHVyZSBmcm9tICdvbC9GZWF0dXJlJztcbmltcG9ydCB0eXBlIHsgZGVmYXVsdCBhcyBPbEdlb21ldHJ5IH0gZnJvbSAnb2wvZ2VvbS9HZW9tZXRyeSc7XG5cbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlLCBMYW5ndWFnZVNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlJztcblxuaW1wb3J0IHsgRmVhdHVyZURhdGFTb3VyY2UgfSBmcm9tICcuLi8uLi9kYXRhc291cmNlL3NoYXJlZC9kYXRhc291cmNlcy9mZWF0dXJlLWRhdGFzb3VyY2UnO1xuaW1wb3J0IHsgRmVhdHVyZURhdGFTb3VyY2VPcHRpb25zIH0gZnJvbSAnLi4vLi4vZGF0YXNvdXJjZS9zaGFyZWQvZGF0YXNvdXJjZXMvZmVhdHVyZS1kYXRhc291cmNlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBGZWF0dXJlIH0gZnJvbSAnLi4vLi4vZmVhdHVyZS9zaGFyZWQvZmVhdHVyZS5pbnRlcmZhY2VzJztcbmltcG9ydCB7XG4gIGZlYXR1cmVUb09sLFxuICBtb3ZlVG9PbEZlYXR1cmVzLFxuICBjb21wdXRlT2xGZWF0dXJlc0V4dGVudFxufSBmcm9tICcuLi8uLi9mZWF0dXJlL3NoYXJlZC9mZWF0dXJlLnV0aWxzJztcbmltcG9ydCB7IFZlY3RvckxheWVyIH0gZnJvbSAnLi4vLi4vbGF5ZXIvc2hhcmVkL2xheWVycy92ZWN0b3ItbGF5ZXInO1xuaW1wb3J0IHsgSWdvTWFwIH0gZnJvbSAnLi4vLi4vbWFwL3NoYXJlZC9tYXAnO1xuaW1wb3J0IHsgUXVlcnlhYmxlRGF0YVNvdXJjZU9wdGlvbnMgfSBmcm9tICcuLi8uLi9xdWVyeS9zaGFyZWQvcXVlcnkuaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBTdHlsZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9sYXllci9zaGFyZWQvc3R5bGUuc2VydmljZSc7XG5pbXBvcnQgeyBTdHlsZUJ5QXR0cmlidXRlIH0gZnJvbSAnLi4vLi4vbGF5ZXIvc2hhcmVkL3ZlY3Rvci1zdHlsZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU3R5bGVMaXN0U2VydmljZSB9IGZyb20gJy4uL3N0eWxlLWxpc3Qvc3R5bGUtbGlzdC5zZXJ2aWNlJztcbmltcG9ydCB7IENsdXN0ZXJQYXJhbSB9IGZyb20gJy4uLy4uL2xheWVyL3NoYXJlZC9jbHVzdGVyUGFyYW0nO1xuaW1wb3J0IHsgQ2x1c3RlckRhdGFTb3VyY2UgfSBmcm9tICcuLi8uLi9kYXRhc291cmNlL3NoYXJlZC9kYXRhc291cmNlcy9jbHVzdGVyLWRhdGFzb3VyY2UnO1xuaW1wb3J0IHsgQ2x1c3RlckRhdGFTb3VyY2VPcHRpb25zIH0gZnJvbSAnLi4vLi4vZGF0YXNvdXJjZS9zaGFyZWQvZGF0YXNvdXJjZXMvY2x1c3Rlci1kYXRhc291cmNlLmludGVyZmFjZSc7XG5pbXBvcnQgeyB1dWlkIH0gZnJvbSAnQGlnbzIvdXRpbHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gYWRkTGF5ZXJBbmRGZWF0dXJlc1RvTWFwKFxuICBmZWF0dXJlczogRmVhdHVyZVtdLFxuICBtYXA6IElnb01hcCxcbiAgbGF5ZXJUaXRsZTogc3RyaW5nXG4pOiBWZWN0b3JMYXllciB7XG4gIGNvbnN0IG9sRmVhdHVyZXMgPSBmZWF0dXJlcy5tYXAoKGZlYXR1cmU6IEZlYXR1cmUpID0+XG4gICAgZmVhdHVyZVRvT2woZmVhdHVyZSwgbWFwLnByb2plY3Rpb24pXG4gICk7XG5cbiAgY29uc3Qgc291cmNlT3B0aW9uczogRmVhdHVyZURhdGFTb3VyY2VPcHRpb25zICYgUXVlcnlhYmxlRGF0YVNvdXJjZU9wdGlvbnMgPSB7XG4gICAgdHlwZTogJ3ZlY3RvcicsXG4gICAgcXVlcnlhYmxlOiB0cnVlXG4gIH07XG4gIGNvbnN0IHNvdXJjZSA9IG5ldyBGZWF0dXJlRGF0YVNvdXJjZShzb3VyY2VPcHRpb25zKTtcbiAgc291cmNlLm9sLmFkZEZlYXR1cmVzKG9sRmVhdHVyZXMpO1xuICBjb25zdCBsYXllciA9IG5ldyBWZWN0b3JMYXllcih7XG4gICAgdGl0bGU6IGxheWVyVGl0bGUsXG4gICAgaXNJZ29JbnRlcm5hbExheWVyOiB0cnVlLFxuICAgIHNvdXJjZSxcbiAgICBzdHlsZTogY3JlYXRlSW1wb3J0ZWRMYXllclJhbmRvbVN0eWxlKClcbiAgfSk7XG4gIGxheWVyLnNldEV4dGVudChjb21wdXRlT2xGZWF0dXJlc0V4dGVudChtYXAsIG9sRmVhdHVyZXMpKTtcbiAgbWFwLmFkZExheWVyKGxheWVyKTtcbiAgbW92ZVRvT2xGZWF0dXJlcyhtYXAsIG9sRmVhdHVyZXMpO1xuXG4gIHJldHVybiBsYXllcjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFkZExheWVyQW5kRmVhdHVyZXNTdHlsZWRUb01hcChcbiAgZmVhdHVyZXM6IEZlYXR1cmVbXSxcbiAgbWFwOiBJZ29NYXAsXG4gIGxheWVyVGl0bGU6IHN0cmluZyxcbiAgc3R5bGVMaXN0U2VydmljZTogU3R5bGVMaXN0U2VydmljZSxcbiAgc3R5bGVTZXJ2aWNlOiBTdHlsZVNlcnZpY2UsXG4gIGxheWVySWQ/OiBzdHJpbmcsXG4gIGltcG9zZWRTb3VyY2VPcHRpb25zPyxcbiAgaW1wb3NlZExheWVyT3B0aW9ucz8sXG4gIHpvb21UbzogYm9vbGVhbiA9IHRydWVcblxuKTogVmVjdG9yTGF5ZXIge1xuICBjb25zdCBvbEZlYXR1cmVzID0gZmVhdHVyZXMubWFwKChmZWF0dXJlOiBGZWF0dXJlKSA9PlxuICAgIGZlYXR1cmVUb09sKGZlYXR1cmUsIG1hcC5wcm9qZWN0aW9uKVxuICApO1xuICBsZXQgc3R5bGU7XG4gIGxldCBkaXN0YW5jZTogbnVtYmVyO1xuXG4gIGlmIChcbiAgICBzdHlsZUxpc3RTZXJ2aWNlLmdldFN0eWxlTGlzdChsYXllclRpdGxlLnRvU3RyaW5nKCkgKyAnLnN0eWxlQnlBdHRyaWJ1dGUnKVxuICApIHtcbiAgICBjb25zdCBzdHlsZUJ5QXR0cmlidXRlOiBTdHlsZUJ5QXR0cmlidXRlID0gc3R5bGVMaXN0U2VydmljZS5nZXRTdHlsZUxpc3QoXG4gICAgICBsYXllclRpdGxlLnRvU3RyaW5nKCkgKyAnLnN0eWxlQnlBdHRyaWJ1dGUnXG4gICAgKTtcblxuICAgIHN0eWxlID0gKGZlYXR1cmUsIHJlc29sdXRpb24pID0+IHtcbiAgICAgIHJldHVybiBzdHlsZVNlcnZpY2UuY3JlYXRlU3R5bGVCeUF0dHJpYnV0ZShmZWF0dXJlLCBzdHlsZUJ5QXR0cmlidXRlLCByZXNvbHV0aW9uKTtcbiAgICB9O1xuICB9IGVsc2UgaWYgKFxuICAgIHN0eWxlTGlzdFNlcnZpY2UuZ2V0U3R5bGVMaXN0KGxheWVyVGl0bGUudG9TdHJpbmcoKSArICcuY2x1c3RlclN0eWxlJylcbiAgKSB7XG4gICAgY29uc3QgY2x1c3RlclBhcmFtOiBDbHVzdGVyUGFyYW0gPSBzdHlsZUxpc3RTZXJ2aWNlLmdldFN0eWxlTGlzdChcbiAgICAgIGxheWVyVGl0bGUudG9TdHJpbmcoKSArICcuY2x1c3RlclBhcmFtJ1xuICAgICk7XG4gICAgZGlzdGFuY2UgPSBzdHlsZUxpc3RTZXJ2aWNlLmdldFN0eWxlTGlzdChcbiAgICAgIGxheWVyVGl0bGUudG9TdHJpbmcoKSArICcuZGlzdGFuY2UnXG4gICAgKTtcblxuICAgIHN0eWxlID0gKGZlYXR1cmUsIHJlc29sdXRpb24pID0+IHtcbiAgICAgIGNvbnN0IGJhc2VTdHlsZSA9IHN0eWxlU2VydmljZS5jcmVhdGVTdHlsZShcbiAgICAgICAgc3R5bGVMaXN0U2VydmljZS5nZXRTdHlsZUxpc3QobGF5ZXJUaXRsZS50b1N0cmluZygpICsgJy5jbHVzdGVyU3R5bGUnKSwgZmVhdHVyZSwgcmVzb2x1dGlvblxuICAgICAgKTtcbiAgICAgIHJldHVybiBzdHlsZVNlcnZpY2UuY3JlYXRlQ2x1c3RlclN0eWxlKGZlYXR1cmUsIHJlc29sdXRpb24sIGNsdXN0ZXJQYXJhbSwgYmFzZVN0eWxlKTtcbiAgICB9O1xuICB9IGVsc2UgaWYgKHN0eWxlTGlzdFNlcnZpY2UuZ2V0U3R5bGVMaXN0KGxheWVyVGl0bGUudG9TdHJpbmcoKSArICcuc3R5bGUnKSkge1xuICAgIHN0eWxlID0gKGZlYXR1cmUsIHJlc29sdXRpb24pID0+IHN0eWxlU2VydmljZS5jcmVhdGVTdHlsZShcbiAgICAgIHN0eWxlTGlzdFNlcnZpY2UuZ2V0U3R5bGVMaXN0KGxheWVyVGl0bGUudG9TdHJpbmcoKSArICcuc3R5bGUnKSwgZmVhdHVyZSwgcmVzb2x1dGlvblxuICAgICk7XG4gIH0gZWxzZSBpZiAoXG4gICAgc3R5bGVMaXN0U2VydmljZS5nZXRTdHlsZUxpc3QoJ2RlZmF1bHQuY2x1c3RlclN0eWxlJykgJiZcbiAgICBmZWF0dXJlc1swXS5nZW9tZXRyeS50eXBlID09PSAnUG9pbnQnXG4gICkge1xuICAgIGNvbnN0IGNsdXN0ZXJQYXJhbTogQ2x1c3RlclBhcmFtID0gc3R5bGVMaXN0U2VydmljZS5nZXRTdHlsZUxpc3QoXG4gICAgICAnZGVmYXVsdC5jbHVzdGVyUGFyYW0nXG4gICAgKTtcbiAgICBkaXN0YW5jZSA9IHN0eWxlTGlzdFNlcnZpY2UuZ2V0U3R5bGVMaXN0KCdkZWZhdWx0LmRpc3RhbmNlJyk7XG5cbiAgICBzdHlsZSA9IChmZWF0dXJlLCByZXNvbHV0aW9uKSA9PiB7XG4gICAgICBjb25zdCBiYXNlU3R5bGUgPSBzdHlsZVNlcnZpY2UuY3JlYXRlU3R5bGUoXG4gICAgICAgIHN0eWxlTGlzdFNlcnZpY2UuZ2V0U3R5bGVMaXN0KCdkZWZhdWx0LmNsdXN0ZXJTdHlsZScpLCBmZWF0dXJlLCByZXNvbHV0aW9uXG4gICAgICApO1xuICAgICAgcmV0dXJuIHN0eWxlU2VydmljZS5jcmVhdGVDbHVzdGVyU3R5bGUoZmVhdHVyZSwgcmVzb2x1dGlvbiwgY2x1c3RlclBhcmFtLCBiYXNlU3R5bGUpO1xuICAgIH07XG4gIH0gZWxzZSB7XG4gICAgc3R5bGUgPSAoZmVhdHVyZSwgcmVzb2x1dGlvbikgPT4gc3R5bGVTZXJ2aWNlLmNyZWF0ZVN0eWxlKFxuICAgICAgc3R5bGVMaXN0U2VydmljZS5nZXRTdHlsZUxpc3QoJ2RlZmF1bHQuc3R5bGUnKSwgZmVhdHVyZSwgcmVzb2x1dGlvblxuICAgICk7XG4gIH1cblxuICBsZXQgc291cmNlO1xuICBpZiAoc3R5bGVMaXN0U2VydmljZS5nZXRTdHlsZUxpc3QobGF5ZXJUaXRsZS50b1N0cmluZygpICsgJy5jbHVzdGVyU3R5bGUnKSkge1xuICAgIGNvbnN0IHNvdXJjZU9wdGlvbnM6IENsdXN0ZXJEYXRhU291cmNlT3B0aW9ucyAmXG4gICAgICBRdWVyeWFibGVEYXRhU291cmNlT3B0aW9ucyA9IHtcbiAgICAgIGRpc3RhbmNlLFxuICAgICAgdHlwZTogJ2NsdXN0ZXInLFxuICAgICAgcXVlcnlhYmxlOiB0cnVlXG4gICAgfTtcbiAgICBzb3VyY2UgPSBuZXcgQ2x1c3RlckRhdGFTb3VyY2UoT2JqZWN0LmFzc2lnbihzb3VyY2VPcHRpb25zLCBpbXBvc2VkU291cmNlT3B0aW9ucykpO1xuICAgIHNvdXJjZS5vbC5zb3VyY2UuYWRkRmVhdHVyZXMob2xGZWF0dXJlcyk7XG4gIH0gZWxzZSBpZiAoc3R5bGVMaXN0U2VydmljZS5nZXRTdHlsZUxpc3QobGF5ZXJUaXRsZS50b1N0cmluZygpKSkge1xuICAgIGNvbnN0IHNvdXJjZU9wdGlvbnM6IEZlYXR1cmVEYXRhU291cmNlT3B0aW9ucyAmIFF1ZXJ5YWJsZURhdGFTb3VyY2VPcHRpb25zID0ge1xuICAgICAgdHlwZTogJ3ZlY3RvcicsXG4gICAgICBxdWVyeWFibGU6IHRydWVcbiAgICB9O1xuICAgIHNvdXJjZSA9IG5ldyBGZWF0dXJlRGF0YVNvdXJjZShPYmplY3QuYXNzaWduKHNvdXJjZU9wdGlvbnMsIGltcG9zZWRTb3VyY2VPcHRpb25zKSk7XG4gICAgc291cmNlLm9sLmFkZEZlYXR1cmVzKG9sRmVhdHVyZXMpO1xuICB9IGVsc2UgaWYgKFxuICAgIHN0eWxlTGlzdFNlcnZpY2UuZ2V0U3R5bGVMaXN0KCdkZWZhdWx0LmNsdXN0ZXJTdHlsZScpICYmXG4gICAgZmVhdHVyZXNbMF0uZ2VvbWV0cnkudHlwZSA9PT0gJ1BvaW50J1xuICApIHtcbiAgICBjb25zdCBzb3VyY2VPcHRpb25zOiBDbHVzdGVyRGF0YVNvdXJjZU9wdGlvbnMgJlxuICAgICAgUXVlcnlhYmxlRGF0YVNvdXJjZU9wdGlvbnMgPSB7XG4gICAgICBkaXN0YW5jZSxcbiAgICAgIHR5cGU6ICdjbHVzdGVyJyxcbiAgICAgIHF1ZXJ5YWJsZTogdHJ1ZVxuICAgIH07XG4gICAgc291cmNlID0gbmV3IENsdXN0ZXJEYXRhU291cmNlKE9iamVjdC5hc3NpZ24oc291cmNlT3B0aW9ucywgaW1wb3NlZFNvdXJjZU9wdGlvbnMpKTtcbiAgICBzb3VyY2Uub2wuc291cmNlLmFkZEZlYXR1cmVzKG9sRmVhdHVyZXMpO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IHNvdXJjZU9wdGlvbnM6IEZlYXR1cmVEYXRhU291cmNlT3B0aW9ucyAmIFF1ZXJ5YWJsZURhdGFTb3VyY2VPcHRpb25zID0ge1xuICAgICAgdHlwZTogJ3ZlY3RvcicsXG4gICAgICBxdWVyeWFibGU6IHRydWVcbiAgICB9O1xuICAgIHNvdXJjZSA9IG5ldyBGZWF0dXJlRGF0YVNvdXJjZShPYmplY3QuYXNzaWduKHNvdXJjZU9wdGlvbnMsIGltcG9zZWRTb3VyY2VPcHRpb25zKSk7XG4gICAgc291cmNlLm9sLmFkZEZlYXR1cmVzKG9sRmVhdHVyZXMpO1xuICB9XG5cbiAgY29uc3QgbGF5ZXIgPSBuZXcgVmVjdG9yTGF5ZXIoXG4gICAgT2JqZWN0LmFzc2lnbih7XG4gICAgICB0aXRsZTogbGF5ZXJUaXRsZSxcbiAgICAgIGlkOiBsYXllcklkIHx8IHV1aWQoKSxcbiAgICAgIGlzSWdvSW50ZXJuYWxMYXllcjogdHJ1ZSxcbiAgICAgIHNvdXJjZSxcbiAgICAgIHN0eWxlXG4gICAgfSwgaW1wb3NlZExheWVyT3B0aW9ucykpO1xuICBtYXAuYWRkTGF5ZXIobGF5ZXIpO1xuICBpZiAoem9vbVRvKXtcbiAgICBtb3ZlVG9PbEZlYXR1cmVzKG1hcCwgb2xGZWF0dXJlcyk7XG4gIH1cbiAgcmV0dXJuIGxheWVyO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaGFuZGxlRmlsZUltcG9ydFN1Y2Nlc3MoXG4gIGZpbGU6IEZpbGUsXG4gIGZlYXR1cmVzOiBGZWF0dXJlW10sXG4gIG1hcDogSWdvTWFwLFxuICBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXG4gIGxhbmd1YWdlU2VydmljZTogTGFuZ3VhZ2VTZXJ2aWNlLFxuICBzdHlsZUxpc3RTZXJ2aWNlPzogU3R5bGVMaXN0U2VydmljZSxcbiAgc3R5bGVTZXJ2aWNlPzogU3R5bGVTZXJ2aWNlXG4pIHtcbiAgaWYgKGZlYXR1cmVzLmxlbmd0aCA9PT0gMCkge1xuICAgIGhhbmRsZU5vdGhpbmdUb0ltcG9ydEVycm9yKGZpbGUsIG1lc3NhZ2VTZXJ2aWNlLCBsYW5ndWFnZVNlcnZpY2UpO1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IGxheWVyVGl0bGUgPSBjb21wdXRlTGF5ZXJUaXRsZUZyb21GaWxlKGZpbGUpO1xuXG4gIGlmICghc3R5bGVMaXN0U2VydmljZSkge1xuICAgIGFkZExheWVyQW5kRmVhdHVyZXNUb01hcChmZWF0dXJlcywgbWFwLCBsYXllclRpdGxlKTtcbiAgfSBlbHNlIHtcbiAgICBhZGRMYXllckFuZEZlYXR1cmVzU3R5bGVkVG9NYXAoXG4gICAgICBmZWF0dXJlcyxcbiAgICAgIG1hcCxcbiAgICAgIGxheWVyVGl0bGUsXG4gICAgICBzdHlsZUxpc3RTZXJ2aWNlLFxuICAgICAgc3R5bGVTZXJ2aWNlXG4gICAgKTtcbiAgfVxuXG4gIGNvbnN0IHRyYW5zbGF0ZSA9IGxhbmd1YWdlU2VydmljZS50cmFuc2xhdGU7XG4gIGNvbnN0IG1lc3NhZ2VUaXRsZSA9IHRyYW5zbGF0ZS5pbnN0YW50KCdpZ28uZ2VvLmRyb3BHZW9GaWxlLnN1Y2Nlc3MudGl0bGUnKTtcbiAgY29uc3QgbWVzc2FnZSA9IHRyYW5zbGF0ZS5pbnN0YW50KCdpZ28uZ2VvLmRyb3BHZW9GaWxlLnN1Y2Nlc3MudGV4dCcsIHtcbiAgICB2YWx1ZTogbGF5ZXJUaXRsZVxuICB9KTtcbiAgbWVzc2FnZVNlcnZpY2Uuc3VjY2VzcyhtZXNzYWdlLCBtZXNzYWdlVGl0bGUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaGFuZGxlRmlsZUltcG9ydEVycm9yKFxuICBmaWxlOiBGaWxlLFxuICBlcnJvcjogRXJyb3IsXG4gIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcbiAgbGFuZ3VhZ2VTZXJ2aWNlOiBMYW5ndWFnZVNlcnZpY2UsXG4gIHNpemVNYj86IG51bWJlclxuKSB7XG4gIHNpemVNYiA9IHNpemVNYiA/IHNpemVNYiA6IDMwO1xuICBjb25zdCBlcnJNYXBwaW5nID0ge1xuICAgICdJbnZhbGlkIGZpbGUnOiBoYW5kbGVJbnZhbGlkRmlsZUltcG9ydEVycm9yLFxuICAgICdGaWxlIGlzIHRvbyBsYXJnZSc6IGhhbmRsZVNpemVGaWxlSW1wb3J0RXJyb3IsXG4gICAgJ0ZhaWxlZCB0byByZWFkIGZpbGUnOiBoYW5kbGVVbnJlYWRibGVGaWxlSW1wb3J0RXJyb3IsXG4gICAgJ0ludmFsaWQgU1JTIGRlZmluaXRpb24nOiBoYW5kbGVTUlNJbXBvcnRFcnJvcixcbiAgICAnRXJyb3IgNTAwIHdpdGggT0dSRSc6IGhhbmRsZU9ncmVTZXJ2ZXJJbXBvcnRFcnJvclxuICB9O1xuICBlcnJNYXBwaW5nW2Vycm9yLm1lc3NhZ2VdKFxuICAgIGZpbGUsXG4gICAgZXJyb3IsXG4gICAgbWVzc2FnZVNlcnZpY2UsXG4gICAgbGFuZ3VhZ2VTZXJ2aWNlLFxuICAgIHNpemVNYlxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaGFuZGxlSW52YWxpZEZpbGVJbXBvcnRFcnJvcihcbiAgZmlsZTogRmlsZSxcbiAgZXJyb3I6IEVycm9yLFxuICBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXG4gIGxhbmd1YWdlU2VydmljZTogTGFuZ3VhZ2VTZXJ2aWNlXG4pIHtcbiAgY29uc3QgdHJhbnNsYXRlID0gbGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZTtcbiAgY29uc3QgdGl0bGUgPSB0cmFuc2xhdGUuaW5zdGFudCgnaWdvLmdlby5kcm9wR2VvRmlsZS5pbnZhbGlkLnRpdGxlJyk7XG4gIGNvbnN0IG1lc3NhZ2UgPSB0cmFuc2xhdGUuaW5zdGFudCgnaWdvLmdlby5kcm9wR2VvRmlsZS5pbnZhbGlkLnRleHQnLCB7XG4gICAgdmFsdWU6IGZpbGUubmFtZSxcbiAgICBtaW1lVHlwZTogZmlsZS50eXBlXG4gIH0pO1xuICBtZXNzYWdlU2VydmljZS5lcnJvcihtZXNzYWdlLCB0aXRsZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBoYW5kbGVVbnJlYWRibGVGaWxlSW1wb3J0RXJyb3IoXG4gIGZpbGU6IEZpbGUsXG4gIGVycm9yOiBFcnJvcixcbiAgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLFxuICBsYW5ndWFnZVNlcnZpY2U6IExhbmd1YWdlU2VydmljZVxuKSB7XG4gIGNvbnN0IHRyYW5zbGF0ZSA9IGxhbmd1YWdlU2VydmljZS50cmFuc2xhdGU7XG4gIGNvbnN0IHRpdGxlID0gdHJhbnNsYXRlLmluc3RhbnQoJ2lnby5nZW8uZHJvcEdlb0ZpbGUudW5yZWFkYWJsZS50aXRsZScpO1xuICBjb25zdCBtZXNzYWdlID0gdHJhbnNsYXRlLmluc3RhbnQoJ2lnby5nZW8uZHJvcEdlb0ZpbGUudW5yZWFkYWJsZS50ZXh0Jywge1xuICAgIHZhbHVlOiBmaWxlLm5hbWVcbiAgfSk7XG4gIG1lc3NhZ2VTZXJ2aWNlLmVycm9yKG1lc3NhZ2UsIHRpdGxlKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGhhbmRsZVNpemVGaWxlSW1wb3J0RXJyb3IoXG4gIGZpbGU6IEZpbGUsXG4gIGVycm9yOiBFcnJvcixcbiAgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLFxuICBsYW5ndWFnZVNlcnZpY2U6IExhbmd1YWdlU2VydmljZSxcbiAgc2l6ZU1iOiBudW1iZXJcbikge1xuICBjb25zdCB0cmFuc2xhdGUgPSBsYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlO1xuICBjb25zdCB0aXRsZSA9IHRyYW5zbGF0ZS5pbnN0YW50KCdpZ28uZ2VvLmRyb3BHZW9GaWxlLnRvb0xhcmdlLnRpdGxlJyk7XG4gIGNvbnN0IG1lc3NhZ2UgPSB0cmFuc2xhdGUuaW5zdGFudCgnaWdvLmdlby5kcm9wR2VvRmlsZS50b29MYXJnZS50ZXh0Jywge1xuICAgIHZhbHVlOiBmaWxlLm5hbWUsXG4gICAgc2l6ZTogc2l6ZU1iXG4gIH0pO1xuICBtZXNzYWdlU2VydmljZS5lcnJvcihtZXNzYWdlLCB0aXRsZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBoYW5kbGVOb3RoaW5nVG9JbXBvcnRFcnJvcihcbiAgZmlsZTogRmlsZSxcbiAgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLFxuICBsYW5ndWFnZVNlcnZpY2U6IExhbmd1YWdlU2VydmljZVxuKSB7XG4gIGNvbnN0IHRyYW5zbGF0ZSA9IGxhbmd1YWdlU2VydmljZS50cmFuc2xhdGU7XG4gIGNvbnN0IHRpdGxlID0gdHJhbnNsYXRlLmluc3RhbnQoJ2lnby5nZW8uZHJvcEdlb0ZpbGUuZW1wdHkudGl0bGUnKTtcbiAgY29uc3QgbWVzc2FnZSA9IHRyYW5zbGF0ZS5pbnN0YW50KCdpZ28uZ2VvLmRyb3BHZW9GaWxlLmVtcHR5LnRleHQnLCB7XG4gICAgdmFsdWU6IGZpbGUubmFtZSxcbiAgICBtaW1lVHlwZTogZmlsZS50eXBlXG4gIH0pO1xuICBtZXNzYWdlU2VydmljZS5lcnJvcihtZXNzYWdlLCB0aXRsZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBoYW5kbGVTUlNJbXBvcnRFcnJvcihcbiAgZmlsZTogRmlsZSxcbiAgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLFxuICBsYW5ndWFnZVNlcnZpY2U6IExhbmd1YWdlU2VydmljZVxuKSB7XG4gIGNvbnN0IHRyYW5zbGF0ZSA9IGxhbmd1YWdlU2VydmljZS50cmFuc2xhdGU7XG4gIGNvbnN0IHRpdGxlID0gdHJhbnNsYXRlLmluc3RhbnQoJ2lnby5nZW8uZHJvcEdlb0ZpbGUuaW52YWxpZFNSUy50aXRsZScpO1xuICBjb25zdCBtZXNzYWdlID0gdHJhbnNsYXRlLmluc3RhbnQoJ2lnby5nZW8uZHJvcEdlb0ZpbGUuaW52YWxpZFNSUy50ZXh0Jywge1xuICAgIHZhbHVlOiBmaWxlLm5hbWUsXG4gICAgbWltZVR5cGU6IGZpbGUudHlwZVxuICB9KTtcbiAgbWVzc2FnZVNlcnZpY2UuZXJyb3IobWVzc2FnZSwgdGl0bGUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaGFuZGxlT2dyZVNlcnZlckltcG9ydEVycm9yKFxuICBmaWxlOiBGaWxlLFxuICBlcnJvcjogRXJyb3IsXG4gIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcbiAgbGFuZ3VhZ2VTZXJ2aWNlOiBMYW5ndWFnZVNlcnZpY2Vcbikge1xuICBjb25zdCB0aXRsZSA9IGxhbmd1YWdlU2VydmljZS50cmFuc2xhdGUuaW5zdGFudCgnaWdvLmdlby5kcm9wR2VvRmlsZS5vZ3JlU2VydmVyLnRpdGxlJyk7XG4gIGNvbnN0IG1lc3NhZ2UgPSBsYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoJ2lnby5nZW8uZHJvcEdlb0ZpbGUub2dyZVNlcnZlci50ZXh0Jyk7XG4gIG1lc3NhZ2VTZXJ2aWNlLmVycm9yKG1lc3NhZ2UsIHRpdGxlKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEZpbGVFeHRlbnNpb24oZmlsZTogRmlsZSk6IHN0cmluZyB7XG4gIHJldHVybiBmaWxlLm5hbWVcbiAgICAuc3BsaXQoJy4nKVxuICAgIC5wb3AoKVxuICAgIC50b0xvd2VyQ2FzZSgpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY29tcHV0ZUxheWVyVGl0bGVGcm9tRmlsZShmaWxlOiBGaWxlKTogc3RyaW5nIHtcbiAgcmV0dXJuIGZpbGUubmFtZS5zdWJzdHIoMCwgZmlsZS5uYW1lLmxhc3RJbmRleE9mKCcuJykpO1xufVxuZnVuY3Rpb24gY3JlYXRlSW1wb3J0ZWRMYXllclJhbmRvbVN0eWxlKCk6IChvbEZlYXR1cmU6IE9sRmVhdHVyZTxPbEdlb21ldHJ5PikgPT4gb2xTdHlsZS5TdHlsZSB7XG4gIGNvbnN0IHIgPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAyNTUpO1xuICBjb25zdCBnID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMjU1KTtcbiAgY29uc3QgYiA9IE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIDI1NSk7XG4gIGNvbnN0IHN0cm9rZSA9IG5ldyBvbFN0eWxlLlN0cm9rZSh7XG4gICAgY29sb3I6IFtyLCBnLCBiLCAxXSxcbiAgICB3aWR0aDogMlxuICB9KTtcbiAgY29uc3QgZmlsbCA9IG5ldyBvbFN0eWxlLkZpbGwoe1xuICAgIGNvbG9yOiBbciwgZywgYiwgMC40XVxuICB9KTtcblxuICByZXR1cm4gKG9sRmVhdHVyZTogT2xGZWF0dXJlPE9sR2VvbWV0cnk+KSA9PiB7XG4gICAgICBjb25zdCBjdXN0b21TdHlsZSA9IG9sRmVhdHVyZS5nZXQoJ19zdHlsZScpO1xuICAgICAgaWYgKGN1c3RvbVN0eWxlKSB7XG4gICAgICAgIGNvbnN0IHN0eWxlU2VydmljZSA9IG5ldyBTdHlsZVNlcnZpY2UoKTtcbiAgICAgICAgcmV0dXJuIHN0eWxlU2VydmljZS5jcmVhdGVTdHlsZShjdXN0b21TdHlsZSk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHN0eWxlID0gbmV3IG9sU3R5bGUuU3R5bGUoe1xuICAgICAgICBzdHJva2UsXG4gICAgICAgIGZpbGwsXG4gICAgICAgIGltYWdlOiBuZXcgb2xTdHlsZS5DaXJjbGUoe1xuICAgICAgICAgIHJhZGl1czogNSxcbiAgICAgICAgICBzdHJva2UsXG4gICAgICAgICAgZmlsbFxuICAgICAgICB9KSxcbiAgICAgICAgdGV4dDogb2xGZWF0dXJlLmdldCgnX21hcFRpdGxlJykgPyBuZXcgb2xTdHlsZS5UZXh0KHtcbiAgICAgICAgICB0ZXh0OiBvbEZlYXR1cmUuZ2V0KCdfbWFwVGl0bGUnKS50b1N0cmluZygpLFxuICAgICAgICAgIG9mZnNldFg6IDUsXG4gICAgICAgICAgb2Zmc2V0WTogLTUsXG4gICAgICAgICAgZm9udDogJzEycHggQ2FsaWJyaSxzYW5zLXNlcmlmJyxcbiAgICAgICAgICBmaWxsOiBuZXcgb2xTdHlsZS5GaWxsKHsgY29sb3I6ICcjMDAwJyB9KSxcbiAgICAgICAgICBzdHJva2U6IG5ldyBvbFN0eWxlLlN0cm9rZSh7IGNvbG9yOiAnI2ZmZicsIHdpZHRoOiAzIH0pLFxuICAgICAgICAgIG92ZXJmbG93OiB0cnVlXG4gICAgICAgIH0pOiB1bmRlZmluZWRcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIHN0eWxlO1xuICB9O1xufVxuXG4iXX0=
|
|
235
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0LnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvaW1wb3J0LWV4cG9ydC9zaGFyZWQvaW1wb3J0LnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sVUFBVSxDQUFDO0FBTXBDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBRzNGLE9BQU8sRUFDTCxXQUFXLEVBQ1gsZ0JBQWdCLEVBQ2hCLHVCQUF1QixFQUN4QixNQUFNLG9DQUFvQyxDQUFDO0FBQzVDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUdyRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFJaEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFFM0YsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVuQyxNQUFNLFVBQVUsd0JBQXdCLENBQ3RDLFFBQW1CLEVBQ25CLEdBQVcsRUFDWCxVQUFrQjtJQUVsQixNQUFNLFVBQVUsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBZ0IsRUFBRSxFQUFFLENBQ25ELFdBQVcsQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUNyQyxDQUFDO0lBRUYsTUFBTSxhQUFhLEdBQTBEO1FBQzNFLElBQUksRUFBRSxRQUFRO1FBQ2QsU0FBUyxFQUFFLElBQUk7S0FDaEIsQ0FBQztJQUNGLE1BQU0sTUFBTSxHQUFHLElBQUksaUJBQWlCLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDcEQsTUFBTSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxXQUFXLENBQUM7UUFDNUIsS0FBSyxFQUFFLFVBQVU7UUFD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T0FBTyxFQUFFLENBQUM7Z0JBQ1YsT0FBTyxFQUFFLENBQUMsQ0FBQztnQkFDWCxJQUFJLEVBQUUseUJBQXlCO2dCQUMvQixJQUFJLEVBQUUsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFDO2dCQUN6QyxNQUFNLEVBQUUsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUM7Z0JBQ3ZELFFBQVEsRUFBRSxJQUFJO2FBQ2YsQ0FBQyxDQUFBLENBQUMsQ0FBQyxTQUFTO1NBQ2QsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIG9sU3R5bGUgZnJvbSAnb2wvc3R5bGUnO1xyXG5pbXBvcnQgT2xGZWF0dXJlIGZyb20gJ29sL0ZlYXR1cmUnO1xyXG5pbXBvcnQgdHlwZSB7IGRlZmF1bHQgYXMgT2xHZW9tZXRyeSB9IGZyb20gJ29sL2dlb20vR2VvbWV0cnknO1xyXG5cclxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UsIExhbmd1YWdlU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgRmVhdHVyZURhdGFTb3VyY2UgfSBmcm9tICcuLi8uLi9kYXRhc291cmNlL3NoYXJlZC9kYXRhc291cmNlcy9mZWF0dXJlLWRhdGFzb3VyY2UnO1xyXG5pbXBvcnQgeyBGZWF0dXJlRGF0YVNvdXJjZU9wdGlvbnMgfSBmcm9tICcuLi8uLi9kYXRhc291cmNlL3NoYXJlZC9kYXRhc291cmNlcy9mZWF0dXJlLWRhdGFzb3VyY2UuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgRmVhdHVyZSB9IGZyb20gJy4uLy4uL2ZlYXR1cmUvc2hhcmVkL2ZlYXR1cmUuaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7XHJcbiAgZmVhdHVyZVRvT2wsXHJcbiAgbW92ZVRvT2xGZWF0dXJlcyxcclxuICBjb21wdXRlT2xGZWF0dXJlc0V4dGVudFxyXG59IGZyb20gJy4uLy4uL2ZlYXR1cmUvc2hhcmVkL2ZlYXR1cmUudXRpbHMnO1xyXG5pbXBvcnQgeyBWZWN0b3JMYXllciB9IGZyb20gJy4uLy4uL2xheWVyL3NoYXJlZC9sYXllcnMvdmVjdG9yLWxheWVyJztcclxuaW1wb3J0IHsgSWdvTWFwIH0gZnJvbSAnLi4vLi4vbWFwL3NoYXJlZC9tYXAnO1xyXG5pbXBvcnQgeyBRdWVyeWFibGVEYXRhU291cmNlT3B0aW9ucyB9IGZyb20gJy4uLy4uL3F1ZXJ5L3NoYXJlZC9xdWVyeS5pbnRlcmZhY2VzJztcclxuaW1wb3J0IHsgU3R5bGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vbGF5ZXIvc2hhcmVkL3N0eWxlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTdHlsZUJ5QXR0cmlidXRlIH0gZnJvbSAnLi4vLi4vbGF5ZXIvc2hhcmVkL3ZlY3Rvci1zdHlsZS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBTdHlsZUxpc3RTZXJ2aWNlIH0gZnJvbSAnLi4vc3R5bGUtbGlzdC9zdHlsZS1saXN0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDbHVzdGVyUGFyYW0gfSBmcm9tICcuLi8uLi9sYXllci9zaGFyZWQvY2x1c3RlclBhcmFtJztcclxuaW1wb3J0IHsgQ2x1c3RlckRhdGFTb3VyY2UgfSBmcm9tICcuLi8uLi9kYXRhc291cmNlL3NoYXJlZC9kYXRhc291cmNlcy9jbHVzdGVyLWRhdGFzb3VyY2UnO1xyXG5pbXBvcnQgeyBDbHVzdGVyRGF0YVNvdXJjZU9wdGlvbnMgfSBmcm9tICcuLi8uLi9kYXRhc291cmNlL3NoYXJlZC9kYXRhc291cmNlcy9jbHVzdGVyLWRhdGFzb3VyY2UuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgdXVpZCB9IGZyb20gJ0BpZ28yL3V0aWxzJztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBhZGRMYXllckFuZEZlYXR1cmVzVG9NYXAoXHJcbiAgZmVhdHVyZXM6IEZlYXR1cmVbXSxcclxuICBtYXA6IElnb01hcCxcclxuICBsYXllclRpdGxlOiBzdHJpbmdcclxuKTogVmVjdG9yTGF5ZXIge1xyXG4gIGNvbnN0IG9sRmVhdHVyZXMgPSBmZWF0dXJlcy5tYXAoKGZlYXR1cmU6IEZlYXR1cmUpID0+XHJcbiAgICBmZWF0dXJlVG9PbChmZWF0dXJlLCBtYXAucHJvamVjdGlvbilcclxuICApO1xyXG5cclxuICBjb25zdCBzb3VyY2VPcHRpb25zOiBGZWF0dXJlRGF0YVNvdXJjZU9wdGlvbnMgJiBRdWVyeWFibGVEYXRhU291cmNlT3B0aW9ucyA9IHtcclxuICAgIHR5cGU6ICd2ZWN0b3InLFxyXG4gICAgcXVlcnlhYmxlOiB0cnVlXHJcbiAgfTtcclxuICBjb25zdCBzb3VyY2UgPSBuZXcgRmVhdHVyZURhdGFTb3VyY2Uoc291cmNlT3B0aW9ucyk7XHJcbiAgc291cmNlLm9sLmFkZEZlYXR1cmVzKG9sRmVhdHVyZXMpO1xyXG4gIGNvbnN0IGxheWVyID0gbmV3IFZlY3RvckxheWVyKHtcclxuICAgIHRpdGxlOiBsYXllclRpdGxlLFxyXG4gICAgaXNJZ29JbnRlcm5hbExheWVyOiB0cnVlLFxyXG4gICAgc291cmNlLFxyXG4gICAgc3R5bGU6IGNyZWF0ZUltcG9ydGVkTGF5ZXJSYW5kb21TdHlsZSgpXHJcbiAgfSk7XHJcbiAgbGF5ZXIuc2V0RXh0ZW50KGNvbXB1dGVPbEZlYXR1cmVzRXh0ZW50KG1hcCwgb2xGZWF0dXJlcykpO1xyXG4gIG1hcC5hZGRMYXllcihsYXllcik7XHJcbiAgbW92ZVRvT2xGZWF0dXJlcyhtYXAsIG9sRmVhdHVyZXMpO1xyXG5cclxuICByZXR1cm4gbGF5ZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBhZGRMYXllckFuZEZlYXR1cmVzU3R5bGVkVG9NYXAoXHJcbiAgZmVhdHVyZXM6IEZlYXR1cmVbXSxcclxuICBtYXA6IElnb01hcCxcclxuICBsYXllclRpdGxlOiBzdHJpbmcsXHJcbiAgc3R5bGVMaXN0U2VydmljZTogU3R5bGVMaXN0U2VydmljZSxcclxuICBzdHlsZVNlcnZpY2U6IFN0eWxlU2VydmljZSxcclxuICBsYXllcklkPzogc3RyaW5nLFxyXG4gIGltcG9zZWRTb3VyY2VPcHRpb25zPyxcclxuICBpbXBvc2VkTGF5ZXJPcHRpb25zPyxcclxuICB6b29tVG86IGJvb2xlYW4gPSB0cnVlXHJcblxyXG4pOiBWZWN0b3JMYXllciB7XHJcbiAgY29uc3Qgb2xGZWF0dXJlcyA9IGZlYXR1cmVzLm1hcCgoZmVhdHVyZTogRmVhdHVyZSkgPT5cclxuICAgIGZlYXR1cmVUb09sKGZlYXR1cmUsIG1hcC5wcm9qZWN0aW9uKVxyXG4gICk7XHJcbiAgbGV0IHN0eWxlO1xyXG4gIGxldCBkaXN0YW5jZTogbnVtYmVyO1xyXG5cclxuICBpZiAoXHJcbiAgICBzdHlsZUxpc3RTZXJ2aWNlLmdldFN0eWxlTGlzdChsYXllclRpdGxlLnRvU3RyaW5nKCkgKyAnLnN0eWxlQnlBdHRyaWJ1dGUnKVxyXG4gICkge1xyXG4gICAgY29uc3Qgc3R5bGVCeUF0dHJpYnV0ZTogU3R5bGVCeUF0dHJpYnV0ZSA9IHN0eWxlTGlzdFNlcnZpY2UuZ2V0U3R5bGVMaXN0KFxyXG4gICAgICBsYXllclRpdGxlLnRvU3RyaW5nKCkgKyAnLnN0eWxlQnlBdHRyaWJ1dGUnXHJcbiAgICApO1xyXG5cclxuICAgIHN0eWxlID0gKGZlYXR1cmUsIHJlc29sdXRpb24pID0+IHtcclxuICAgICAgcmV0dXJuIHN0eWxlU2VydmljZS5jcmVhdGVTdHlsZUJ5QXR0cmlidXRlKGZlYXR1cmUsIHN0eWxlQnlBdHRyaWJ1dGUsIHJlc29sdXRpb24pO1xyXG4gICAgfTtcclxuICB9IGVsc2UgaWYgKFxyXG4gICAgc3R5bGVMaXN0U2VydmljZS5nZXRTdHlsZUxpc3QobGF5ZXJUaXRsZS50b1N0cmluZygpICsgJy5jbHVzdGVyU3R5bGUnKVxyXG4gICkge1xyXG4gICAgY29uc3QgY2x1c3RlclBhcmFtOiBDbHVzdGVyUGFyYW0gPSBzdHlsZUxpc3RTZXJ2aWNlLmdldFN0eWxlTGlzdChcclxuICAgICAgbGF5ZXJUaXRsZS50b1N0cmluZygpICsgJy5jbHVzdGVyUGFyYW0nXHJcbiAgICApO1xyXG4gICAgZGlzdGFuY2UgPSBzdHlsZUxpc3RTZXJ2aWNlLmdldFN0eWxlTGlzdChcclxuICAgICAgbGF5ZXJUaXRsZS50b1N0cmluZygpICsgJy5kaXN0YW5jZSdcclxuICAgICk7XHJcblxyXG4gICAgc3R5bGUgPSAoZmVhdHVyZSwgcmVzb2x1dGlvbikgPT4ge1xyXG4gICAgICBjb25zdCBiYXNlU3R5bGUgPSBzdHlsZVNlcnZpY2UuY3JlYXRlU3R5bGUoXHJcbiAgICAgICAgc3R5bGVMaXN0U2VydmljZS5nZXRTdHlsZUxpc3QobGF5ZXJUaXRsZS50b1N0cmluZygpICsgJy5jbHVzdGVyU3R5bGUnKSwgZmVhdHVyZSwgcmVzb2x1dGlvblxyXG4gICAgICApO1xyXG4gICAgICByZXR1cm4gc3R5bGVTZXJ2aWNlLmNyZWF0ZUNsdXN0ZXJTdHlsZShmZWF0dXJlLCByZXNvbHV0aW9uLCBjbHVzdGVyUGFyYW0sIGJhc2VTdHlsZSk7XHJcbiAgICB9O1xyXG4gIH0gZWxzZSBpZiAoc3R5bGVMaXN0U2VydmljZS5nZXRTdHlsZUxpc3QobGF5ZXJUaXRsZS50b1N0cmluZygpICsgJy5zdHlsZScpKSB7XHJcbiAgICBzdHlsZSA9IChmZWF0dXJlLCByZXNvbHV0aW9uKSA9PiBzdHlsZVNlcnZpY2UuY3JlYXRlU3R5bGUoXHJcbiAgICAgIHN0eWxlTGlzdFNlcnZpY2UuZ2V0U3R5bGVMaXN0KGxheWVyVGl0bGUudG9TdHJpbmcoKSArICcuc3R5bGUnKSwgZmVhdHVyZSwgcmVzb2x1dGlvblxyXG4gICAgKTtcclxuICB9IGVsc2UgaWYgKFxyXG4gICAgc3R5bGVMaXN0U2VydmljZS5nZXRTdHlsZUxpc3QoJ2RlZmF1bHQuY2x1c3RlclN0eWxlJykgJiZcclxuICAgIGZlYXR1cmVzWzBdLmdlb21ldHJ5LnR5cGUgPT09ICdQb2ludCdcclxuICApIHtcclxuICAgIGNvbnN0IGNsdXN0ZXJQYXJhbTogQ2x1c3RlclBhcmFtID0gc3R5bGVMaXN0U2VydmljZS5nZXRTdHlsZUxpc3QoXHJcbiAgICAgICdkZWZhdWx0LmNsdXN0ZXJQYXJhbSdcclxuICAgICk7XHJcbiAgICBkaXN0YW5jZSA9IHN0eWxlTGlzdFNlcnZpY2UuZ2V0U3R5bGVMaXN0KCdkZWZhdWx0LmRpc3RhbmNlJyk7XHJcblxyXG4gICAgc3R5bGUgPSAoZmVhdHVyZSwgcmVzb2x1dGlvbikgPT4ge1xyXG4gICAgICBjb25zdCBiYXNlU3R5bGUgPSBzdHlsZVNlcnZpY2UuY3JlYXRlU3R5bGUoXHJcbiAgICAgICAgc3R5bGVMaXN0U2VydmljZS5nZXRTdHlsZUxpc3QoJ2RlZmF1bHQuY2x1c3RlclN0eWxlJyksIGZlYXR1cmUsIHJlc29sdXRpb25cclxuICAgICAgKTtcclxuICAgICAgcmV0dXJuIHN0eWxlU2VydmljZS5jcmVhdGVDbHVzdGVyU3R5bGUoZmVhdHVyZSwgcmVzb2x1dGlvbiwgY2x1c3RlclBhcmFtLCBiYXNlU3R5bGUpO1xyXG4gICAgfTtcclxuICB9IGVsc2Uge1xyXG4gICAgc3R5bGUgPSAoZmVhdHVyZSwgcmVzb2x1dGlvbikgPT4gc3R5bGVTZXJ2aWNlLmNyZWF0ZVN0eWxlKFxyXG4gICAgICBzdHlsZUxpc3RTZXJ2aWNlLmdldFN0eWxlTGlzdCgnZGVmYXVsdC5zdHlsZScpLCBmZWF0dXJlLCByZXNvbHV0aW9uXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgbGV0IHNvdXJjZTtcclxuICBpZiAoc3R5bGVMaXN0U2VydmljZS5nZXRTdHlsZUxpc3QobGF5ZXJUaXRsZS50b1N0cmluZygpICsgJy5jbHVzdGVyU3R5bGUnKSkge1xyXG4gICAgY29uc3Qgc291cmNlT3B0aW9uczogQ2x1c3RlckRhdGFTb3VyY2VPcHRpb25zICZcclxuICAgICAgUXVlcnlhYmxlRGF0YVNvdXJjZU9wdGlvbnMgPSB7XHJcbiAgICAgIGRpc3RhbmNlLFxyXG4gICAgICB0eXBlOiAnY2x1c3RlcicsXHJcbiAgICAgIHF1ZXJ5YWJsZTogdHJ1ZVxyXG4gICAgfTtcclxuICAgIHNvdXJjZSA9IG5ldyBDbHVzdGVyRGF0YVNvdXJjZShPYmplY3QuYXNzaWduKHNvdXJjZU9wdGlvbnMsIGltcG9zZWRTb3VyY2VPcHRpb25zKSk7XHJcbiAgICBzb3VyY2Uub2wuc291cmNlLmFkZEZlYXR1cmVzKG9sRmVhdHVyZXMpO1xyXG4gIH0gZWxzZSBpZiAoc3R5bGVMaXN0U2VydmljZS5nZXRTdHlsZUxpc3QobGF5ZXJUaXRsZS50b1N0cmluZygpKSkge1xyXG4gICAgY29uc3Qgc291cmNlT3B0aW9uczogRmVhdHVyZURhdGFTb3VyY2VPcHRpb25zICYgUXVlcnlhYmxlRGF0YVNvdXJjZU9wdGlvbnMgPSB7XHJcbiAgICAgIHR5cGU6ICd2ZWN0b3InLFxyXG4gICAgICBxdWVyeWFibGU6IHRydWVcclxuICAgIH07XHJcbiAgICBzb3VyY2UgPSBuZXcgRmVhdHVyZURhdGFTb3VyY2UoT2JqZWN0LmFzc2lnbihzb3VyY2VPcHRpb25zLCBpbXBvc2VkU291cmNlT3B0aW9ucykpO1xyXG4gICAgc291cmNlLm9sLmFkZEZlYXR1cmVzKG9sRmVhdHVyZXMpO1xyXG4gIH0gZWxzZSBpZiAoXHJcbiAgICBzdHlsZUxpc3RTZXJ2aWNlLmdldFN0eWxlTGlzdCgnZGVmYXVsdC5jbHVzdGVyU3R5bGUnKSAmJlxyXG4gICAgZmVhdHVyZXNbMF0uZ2VvbWV0cnkudHlwZSA9PT0gJ1BvaW50J1xyXG4gICkge1xyXG4gICAgY29uc3Qgc291cmNlT3B0aW9uczogQ2x1c3RlckRhdGFTb3VyY2VPcHRpb25zICZcclxuICAgICAgUXVlcnlhYmxlRGF0YVNvdXJjZU9wdGlvbnMgPSB7XHJcbiAgICAgIGRpc3RhbmNlLFxyXG4gICAgICB0eXBlOiAnY2x1c3RlcicsXHJcbiAgICAgIHF1ZXJ5YWJsZTogdHJ1ZVxyXG4gICAgfTtcclxuICAgIHNvdXJjZSA9IG5ldyBDbHVzdGVyRGF0YVNvdXJjZShPYmplY3QuYXNzaWduKHNvdXJjZU9wdGlvbnMsIGltcG9zZWRTb3VyY2VPcHRpb25zKSk7XHJcbiAgICBzb3VyY2Uub2wuc291cmNlLmFkZEZlYXR1cmVzKG9sRmVhdHVyZXMpO1xyXG4gIH0gZWxzZSB7XHJcbiAgICBjb25zdCBzb3VyY2VPcHRpb25zOiBGZWF0dXJlRGF0YVNvdXJjZU9wdGlvbnMgJiBRdWVyeWFibGVEYXRhU291cmNlT3B0aW9ucyA9IHtcclxuICAgICAgdHlwZTogJ3ZlY3RvcicsXHJcbiAgICAgIHF1ZXJ5YWJsZTogdHJ1ZVxyXG4gICAgfTtcclxuICAgIHNvdXJjZSA9IG5ldyBGZWF0dXJlRGF0YVNvdXJjZShPYmplY3QuYXNzaWduKHNvdXJjZU9wdGlvbnMsIGltcG9zZWRTb3VyY2VPcHRpb25zKSk7XHJcbiAgICBzb3VyY2Uub2wuYWRkRmVhdHVyZXMob2xGZWF0dXJlcyk7XHJcbiAgfVxyXG5cclxuICBjb25zdCBsYXllciA9IG5ldyBWZWN0b3JMYXllcihcclxuICAgIE9iamVjdC5hc3NpZ24oe1xyXG4gICAgICB0aXRsZTogbGF5ZXJUaXRsZSxcclxuICAgICAgaWQ6IGxheWVySWQgfHwgdXVpZCgpLFxyXG4gICAgICBpc0lnb0ludGVybmFsTGF5ZXI6IHRydWUsXHJcbiAgICAgIHNvdXJjZSxcclxuICAgICAgc3R5bGVcclxuICAgIH0sIGltcG9zZWRMYXllck9wdGlvbnMpKTtcclxuICBtYXAuYWRkTGF5ZXIobGF5ZXIpO1xyXG4gIGlmICh6b29tVG8pe1xyXG4gICAgbW92ZVRvT2xGZWF0dXJlcyhtYXAsIG9sRmVhdHVyZXMpO1xyXG4gIH1cclxuICByZXR1cm4gbGF5ZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBoYW5kbGVGaWxlSW1wb3J0U3VjY2VzcyhcclxuICBmaWxlOiBGaWxlLFxyXG4gIGZlYXR1cmVzOiBGZWF0dXJlW10sXHJcbiAgbWFwOiBJZ29NYXAsXHJcbiAgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLFxyXG4gIGxhbmd1YWdlU2VydmljZTogTGFuZ3VhZ2VTZXJ2aWNlLFxyXG4gIHN0eWxlTGlzdFNlcnZpY2U/OiBTdHlsZUxpc3RTZXJ2aWNlLFxyXG4gIHN0eWxlU2VydmljZT86IFN0eWxlU2VydmljZVxyXG4pIHtcclxuICBpZiAoZmVhdHVyZXMubGVuZ3RoID09PSAwKSB7XHJcbiAgICBoYW5kbGVOb3RoaW5nVG9JbXBvcnRFcnJvcihmaWxlLCBtZXNzYWdlU2VydmljZSwgbGFuZ3VhZ2VTZXJ2aWNlKTtcclxuICAgIHJldHVybjtcclxuICB9XHJcblxyXG4gIGNvbnN0IGxheWVyVGl0bGUgPSBjb21wdXRlTGF5ZXJUaXRsZUZyb21GaWxlKGZpbGUpO1xyXG5cclxuICBpZiAoIXN0eWxlTGlzdFNlcnZpY2UpIHtcclxuICAgIGFkZExheWVyQW5kRmVhdHVyZXNUb01hcChmZWF0dXJlcywgbWFwLCBsYXllclRpdGxlKTtcclxuICB9IGVsc2Uge1xyXG4gICAgYWRkTGF5ZXJBbmRGZWF0dXJlc1N0eWxlZFRvTWFwKFxyXG4gICAgICBmZWF0dXJlcyxcclxuICAgICAgbWFwLFxyXG4gICAgICBsYXllclRpdGxlLFxyXG4gICAgICBzdHlsZUxpc3RTZXJ2aWNlLFxyXG4gICAgICBzdHlsZVNlcnZpY2VcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBjb25zdCB0cmFuc2xhdGUgPSBsYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlO1xyXG4gIGNvbnN0IG1lc3NhZ2VUaXRsZSA9IHRyYW5zbGF0ZS5pbnN0YW50KCdpZ28uZ2VvLmRyb3BHZW9GaWxlLnN1Y2Nlc3MudGl0bGUnKTtcclxuICBjb25zdCBtZXNzYWdlID0gdHJhbnNsYXRlLmluc3RhbnQoJ2lnby5nZW8uZHJvcEdlb0ZpbGUuc3VjY2Vzcy50ZXh0Jywge1xyXG4gICAgdmFsdWU6IGxheWVyVGl0bGVcclxuICB9KTtcclxuICBtZXNzYWdlU2VydmljZS5zdWNjZXNzKG1lc3NhZ2UsIG1lc3NhZ2VUaXRsZSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBoYW5kbGVGaWxlSW1wb3J0RXJyb3IoXHJcbiAgZmlsZTogRmlsZSxcclxuICBlcnJvcjogRXJyb3IsXHJcbiAgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLFxyXG4gIGxhbmd1YWdlU2VydmljZTogTGFuZ3VhZ2VTZXJ2aWNlLFxyXG4gIHNpemVNYj86IG51bWJlclxyXG4pIHtcclxuICBzaXplTWIgPSBzaXplTWIgPyBzaXplTWIgOiAzMDtcclxuICBjb25zdCBlcnJNYXBwaW5nID0ge1xyXG4gICAgJ0ludmFsaWQgZmlsZSc6IGhhbmRsZUludmFsaWRGaWxlSW1wb3J0RXJyb3IsXHJcbiAgICAnRmlsZSBpcyB0b28gbGFyZ2UnOiBoYW5kbGVTaXplRmlsZUltcG9ydEVycm9yLFxyXG4gICAgJ0ZhaWxlZCB0byByZWFkIGZpbGUnOiBoYW5kbGVVbnJlYWRibGVGaWxlSW1wb3J0RXJyb3IsXHJcbiAgICAnSW52YWxpZCBTUlMgZGVmaW5pdGlvbic6IGhhbmRsZVNSU0ltcG9ydEVycm9yLFxyXG4gICAgJ0Vycm9yIDUwMCB3aXRoIE9HUkUnOiBoYW5kbGVPZ3JlU2VydmVySW1wb3J0RXJyb3JcclxuICB9O1xyXG4gIGVyck1hcHBpbmdbZXJyb3IubWVzc2FnZV0oXHJcbiAgICBmaWxlLFxyXG4gICAgZXJyb3IsXHJcbiAgICBtZXNzYWdlU2VydmljZSxcclxuICAgIGxhbmd1YWdlU2VydmljZSxcclxuICAgIHNpemVNYlxyXG4gICk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBoYW5kbGVJbnZhbGlkRmlsZUltcG9ydEVycm9yKFxyXG4gIGZpbGU6IEZpbGUsXHJcbiAgZXJyb3I6IEVycm9yLFxyXG4gIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcclxuICBsYW5ndWFnZVNlcnZpY2U6IExhbmd1YWdlU2VydmljZVxyXG4pIHtcclxuICBjb25zdCB0cmFuc2xhdGUgPSBsYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlO1xyXG4gIGNvbnN0IHRpdGxlID0gdHJhbnNsYXRlLmluc3RhbnQoJ2lnby5nZW8uZHJvcEdlb0ZpbGUuaW52YWxpZC50aXRsZScpO1xyXG4gIGNvbnN0IG1lc3NhZ2UgPSB0cmFuc2xhdGUuaW5zdGFudCgnaWdvLmdlby5kcm9wR2VvRmlsZS5pbnZhbGlkLnRleHQnLCB7XHJcbiAgICB2YWx1ZTogZmlsZS5uYW1lLFxyXG4gICAgbWltZVR5cGU6IGZpbGUudHlwZVxyXG4gIH0pO1xyXG4gIG1lc3NhZ2VTZXJ2aWNlLmVycm9yKG1lc3NhZ2UsIHRpdGxlKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGhhbmRsZVVucmVhZGJsZUZpbGVJbXBvcnRFcnJvcihcclxuICBmaWxlOiBGaWxlLFxyXG4gIGVycm9yOiBFcnJvcixcclxuICBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXHJcbiAgbGFuZ3VhZ2VTZXJ2aWNlOiBMYW5ndWFnZVNlcnZpY2VcclxuKSB7XHJcbiAgY29uc3QgdHJhbnNsYXRlID0gbGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZTtcclxuICBjb25zdCB0aXRsZSA9IHRyYW5zbGF0ZS5pbnN0YW50KCdpZ28uZ2VvLmRyb3BHZW9GaWxlLnVucmVhZGFibGUudGl0bGUnKTtcclxuICBjb25zdCBtZXNzYWdlID0gdHJhbnNsYXRlLmluc3RhbnQoJ2lnby5nZW8uZHJvcEdlb0ZpbGUudW5yZWFkYWJsZS50ZXh0Jywge1xyXG4gICAgdmFsdWU6IGZpbGUubmFtZVxyXG4gIH0pO1xyXG4gIG1lc3NhZ2VTZXJ2aWNlLmVycm9yKG1lc3NhZ2UsIHRpdGxlKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGhhbmRsZVNpemVGaWxlSW1wb3J0RXJyb3IoXHJcbiAgZmlsZTogRmlsZSxcclxuICBlcnJvcjogRXJyb3IsXHJcbiAgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLFxyXG4gIGxhbmd1YWdlU2VydmljZTogTGFuZ3VhZ2VTZXJ2aWNlLFxyXG4gIHNpemVNYjogbnVtYmVyXHJcbikge1xyXG4gIGNvbnN0IHRyYW5zbGF0ZSA9IGxhbmd1YWdlU2VydmljZS50cmFuc2xhdGU7XHJcbiAgY29uc3QgdGl0bGUgPSB0cmFuc2xhdGUuaW5zdGFudCgnaWdvLmdlby5kcm9wR2VvRmlsZS50b29MYXJnZS50aXRsZScpO1xyXG4gIGNvbnN0IG1lc3NhZ2UgPSB0cmFuc2xhdGUuaW5zdGFudCgnaWdvLmdlby5kcm9wR2VvRmlsZS50b29MYXJnZS50ZXh0Jywge1xyXG4gICAgdmFsdWU6IGZpbGUubmFtZSxcclxuICAgIHNpemU6IHNpemVNYlxyXG4gIH0pO1xyXG4gIG1lc3NhZ2VTZXJ2aWNlLmVycm9yKG1lc3NhZ2UsIHRpdGxlKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGhhbmRsZU5vdGhpbmdUb0ltcG9ydEVycm9yKFxyXG4gIGZpbGU6IEZpbGUsXHJcbiAgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLFxyXG4gIGxhbmd1YWdlU2VydmljZTogTGFuZ3VhZ2VTZXJ2aWNlXHJcbikge1xyXG4gIGNvbnN0IHRyYW5zbGF0ZSA9IGxhbmd1YWdlU2VydmljZS50cmFuc2xhdGU7XHJcbiAgY29uc3QgdGl0bGUgPSB0cmFuc2xhdGUuaW5zdGFudCgnaWdvLmdlby5kcm9wR2VvRmlsZS5lbXB0eS50aXRsZScpO1xyXG4gIGNvbnN0IG1lc3NhZ2UgPSB0cmFuc2xhdGUuaW5zdGFudCgnaWdvLmdlby5kcm9wR2VvRmlsZS5lbXB0eS50ZXh0Jywge1xyXG4gICAgdmFsdWU6IGZpbGUubmFtZSxcclxuICAgIG1pbWVUeXBlOiBmaWxlLnR5cGVcclxuICB9KTtcclxuICBtZXNzYWdlU2VydmljZS5lcnJvcihtZXNzYWdlLCB0aXRsZSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBoYW5kbGVTUlNJbXBvcnRFcnJvcihcclxuICBmaWxlOiBGaWxlLFxyXG4gIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcclxuICBsYW5ndWFnZVNlcnZpY2U6IExhbmd1YWdlU2VydmljZVxyXG4pIHtcclxuICBjb25zdCB0cmFuc2xhdGUgPSBsYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlO1xyXG4gIGNvbnN0IHRpdGxlID0gdHJhbnNsYXRlLmluc3RhbnQoJ2lnby5nZW8uZHJvcEdlb0ZpbGUuaW52YWxpZFNSUy50aXRsZScpO1xyXG4gIGNvbnN0IG1lc3NhZ2UgPSB0cmFuc2xhdGUuaW5zdGFudCgnaWdvLmdlby5kcm9wR2VvRmlsZS5pbnZhbGlkU1JTLnRleHQnLCB7XHJcbiAgICB2YWx1ZTogZmlsZS5uYW1lLFxyXG4gICAgbWltZVR5cGU6IGZpbGUudHlwZVxyXG4gIH0pO1xyXG4gIG1lc3NhZ2VTZXJ2aWNlLmVycm9yKG1lc3NhZ2UsIHRpdGxlKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGhhbmRsZU9ncmVTZXJ2ZXJJbXBvcnRFcnJvcihcclxuICBmaWxlOiBGaWxlLFxyXG4gIGVycm9yOiBFcnJvcixcclxuICBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXHJcbiAgbGFuZ3VhZ2VTZXJ2aWNlOiBMYW5ndWFnZVNlcnZpY2VcclxuKSB7XHJcbiAgY29uc3QgdGl0bGUgPSBsYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoJ2lnby5nZW8uZHJvcEdlb0ZpbGUub2dyZVNlcnZlci50aXRsZScpO1xyXG4gIGNvbnN0IG1lc3NhZ2UgPSBsYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoJ2lnby5nZW8uZHJvcEdlb0ZpbGUub2dyZVNlcnZlci50ZXh0Jyk7XHJcbiAgbWVzc2FnZVNlcnZpY2UuZXJyb3IobWVzc2FnZSwgdGl0bGUpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0RmlsZUV4dGVuc2lvbihmaWxlOiBGaWxlKTogc3RyaW5nIHtcclxuICByZXR1cm4gZmlsZS5uYW1lXHJcbiAgICAuc3BsaXQoJy4nKVxyXG4gICAgLnBvcCgpXHJcbiAgICAudG9Mb3dlckNhc2UoKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNvbXB1dGVMYXllclRpdGxlRnJvbUZpbGUoZmlsZTogRmlsZSk6IHN0cmluZyB7XHJcbiAgcmV0dXJuIGZpbGUubmFtZS5zdWJzdHIoMCwgZmlsZS5uYW1lLmxhc3RJbmRleE9mKCcuJykpO1xyXG59XHJcbmZ1bmN0aW9uIGNyZWF0ZUltcG9ydGVkTGF5ZXJSYW5kb21TdHlsZSgpOiAob2xGZWF0dXJlOiBPbEZlYXR1cmU8T2xHZW9tZXRyeT4pID0+IG9sU3R5bGUuU3R5bGUge1xyXG4gIGNvbnN0IHIgPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAyNTUpO1xyXG4gIGNvbnN0IGcgPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAyNTUpO1xyXG4gIGNvbnN0IGIgPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAyNTUpO1xyXG4gIGNvbnN0IHN0cm9rZSA9IG5ldyBvbFN0eWxlLlN0cm9rZSh7XHJcbiAgICBjb2xvcjogW3IsIGcsIGIsIDFdLFxyXG4gICAgd2lkdGg6IDJcclxuICB9KTtcclxuICBjb25zdCBmaWxsID0gbmV3IG9sU3R5bGUuRmlsbCh7XHJcbiAgICBjb2xvcjogW3IsIGcsIGIsIDAuNF1cclxuICB9KTtcclxuXHJcbiAgcmV0dXJuIChvbEZlYXR1cmU6IE9sRmVhdHVyZTxPbEdlb21ldHJ5PikgPT4ge1xyXG4gICAgICBjb25zdCBjdXN0b21TdHlsZSA9IG9sRmVhdHVyZS5nZXQoJ19zdHlsZScpO1xyXG4gICAgICBpZiAoY3VzdG9tU3R5bGUpIHtcclxuICAgICAgICBjb25zdCBzdHlsZVNlcnZpY2UgPSBuZXcgU3R5bGVTZXJ2aWNlKCk7XHJcbiAgICAgICAgcmV0dXJuIHN0eWxlU2VydmljZS5jcmVhdGVTdHlsZShjdXN0b21TdHlsZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGNvbnN0IHN0eWxlID0gbmV3IG9sU3R5bGUuU3R5bGUoe1xyXG4gICAgICAgIHN0cm9rZSxcclxuICAgICAgICBmaWxsLFxyXG4gICAgICAgIGltYWdlOiBuZXcgb2xTdHlsZS5DaXJjbGUoe1xyXG4gICAgICAgICAgcmFkaXVzOiA1LFxyXG4gICAgICAgICAgc3Ryb2tlLFxyXG4gICAgICAgICAgZmlsbFxyXG4gICAgICAgIH0pLFxyXG4gICAgICAgIHRleHQ6IG9sRmVhdHVyZS5nZXQoJ19tYXBUaXRsZScpID8gbmV3IG9sU3R5bGUuVGV4dCh7XHJcbiAgICAgICAgICB0ZXh0OiBvbEZlYXR1cmUuZ2V0KCdfbWFwVGl0bGUnKS50b1N0cmluZygpLFxyXG4gICAgICAgICAgb2Zmc2V0WDogNSxcclxuICAgICAgICAgIG9mZnNldFk6IC01LFxyXG4gICAgICAgICAgZm9udDogJzEycHggQ2FsaWJyaSxzYW5zLXNlcmlmJyxcclxuICAgICAgICAgIGZpbGw6IG5ldyBvbFN0eWxlLkZpbGwoeyBjb2xvcjogJyMwMDAnIH0pLFxyXG4gICAgICAgICAgc3Ryb2tlOiBuZXcgb2xTdHlsZS5TdHJva2UoeyBjb2xvcjogJyNmZmYnLCB3aWR0aDogMyB9KSxcclxuICAgICAgICAgIG92ZXJmbG93OiB0cnVlXHJcbiAgICAgICAgfSk6IHVuZGVmaW5lZFxyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIHN0eWxlO1xyXG4gIH07XHJcbn1cclxuXHJcbiJdfQ==
|
|
@@ -8,4 +8,4 @@ export * from './import.errors';
|
|
|
8
8
|
export * from './import.interface';
|
|
9
9
|
export * from './import.service';
|
|
10
10
|
export * from './import.utils';
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9pbXBvcnQtZXhwb3J0L3NoYXJlZC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZHJvcC1nZW8tZmlsZS5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2V4cG9ydC5lcnJvcnMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2V4cG9ydC5pbnRlcmZhY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2V4cG9ydC5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9leHBvcnQudHlwZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZXhwb3J0LnV0aWxzJztcclxuZXhwb3J0ICogZnJvbSAnLi9pbXBvcnQuZXJyb3JzJztcclxuZXhwb3J0ICogZnJvbSAnLi9pbXBvcnQuaW50ZXJmYWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9pbXBvcnQuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vaW1wb3J0LnV0aWxzJztcclxuIl19
|
|
@@ -2,4 +2,4 @@ export * from './style-list.module';
|
|
|
2
2
|
export * from './style-list.service';
|
|
3
3
|
export * from './style-list.provider';
|
|
4
4
|
export * from './style-list.interface';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9pbXBvcnQtZXhwb3J0L3N0eWxlLWxpc3QvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3R5bGUtbGlzdC5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL3N0eWxlLWxpc3Quc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc3R5bGUtbGlzdC5wcm92aWRlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vc3R5bGUtbGlzdC5pbnRlcmZhY2UnO1xyXG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUtbGlzdC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9pbXBvcnQtZXhwb3J0L3N0eWxlLWxpc3Qvc3R5bGUtbGlzdC5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgU3R5bGVMaXN0T3B0aW9ucyB7XHJcbiAgZGVmYXVsdD86IHsgW2tleTogc3RyaW5nXTogYW55IH07XHJcbiAgcGF0aD86IHN0cmluZztcclxufVxyXG4iXX0=
|
|
@@ -20,4 +20,4 @@ IgoStyleListModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({});
|
|
|
20
20
|
exports: []
|
|
21
21
|
}]
|
|
22
22
|
}], null, null); })();
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUtbGlzdC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9pbXBvcnQtZXhwb3J0L3N0eWxlLWxpc3Qvc3R5bGUtbGlzdC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBdUIsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLHNCQUFzQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBT3hGLE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsTUFBTSxDQUFDLE9BQU87UUFDWixPQUFPO1lBQ0wsUUFBUSxFQUFFLGtCQUFrQjtZQUM1QixTQUFTLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxzQkFBc0IsRUFBRSxDQUFDO1NBQ25FLENBQUM7SUFDSixDQUFDOztvRkFOVSxrQkFBa0I7b0VBQWxCLGtCQUFrQjs7dUZBQWxCLGtCQUFrQjtjQUw5QixRQUFRO2VBQUM7Z0JBQ1IsT0FBTyxFQUFFLEVBQUU7Z0JBQ1gsWUFBWSxFQUFFLEVBQUU7Z0JBQ2hCLE9BQU8sRUFBRSxFQUFFO2FBQ1oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSwgTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBwcm92aWRlU3R5bGVMaXN0T3B0aW9ucywgcHJvdmlkZVN0eWxlTGlzdExvYWRlciB9IGZyb20gJy4vc3R5bGUtbGlzdC5wcm92aWRlcic7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtdLFxyXG4gIGRlY2xhcmF0aW9uczogW10sXHJcbiAgZXhwb3J0czogW11cclxufSlcclxuZXhwb3J0IGNsYXNzIElnb1N0eWxlTGlzdE1vZHVsZSB7XHJcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxJZ29TdHlsZUxpc3RNb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBJZ29TdHlsZUxpc3RNb2R1bGUsXHJcbiAgICAgIHByb3ZpZGVyczogW3Byb3ZpZGVTdHlsZUxpc3RPcHRpb25zKHt9KSwgcHJvdmlkZVN0eWxlTGlzdExvYWRlcigpXVxyXG4gICAgfTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -18,4 +18,4 @@ export function provideStyleListLoader() {
|
|
|
18
18
|
deps: [StyleListService, STYLELIST_OPTIONS]
|
|
19
19
|
};
|
|
20
20
|
}
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUtbGlzdC5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2ltcG9ydC1leHBvcnQvc3R5bGUtbGlzdC9zdHlsZS1saXN0LnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWhFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBR3hELE1BQU0sQ0FBQyxJQUFJLGlCQUFpQixHQUFHLElBQUksY0FBYyxDQUFtQixrQkFBa0IsQ0FBQyxDQUFDO0FBRXhGLE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxPQUF5QjtJQUMvRCxPQUFPO1FBQ0wsT0FBTyxFQUFFLGlCQUFpQjtRQUMxQixRQUFRLEVBQUUsT0FBTztLQUNsQixDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sVUFBVSxnQkFBZ0IsQ0FDOUIsZ0JBQWtDLEVBQ2xDLE9BQXlCO0lBRXpCLE9BQU8sR0FBRyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQzlDLENBQUM7QUFFRCxNQUFNLFVBQVUsc0JBQXNCO0lBQ3BDLE9BQU87UUFDTCxPQUFPLEVBQUUsZUFBZTtRQUN4QixVQUFVLEVBQUUsZ0JBQWdCO1FBQzVCLEtBQUssRUFBRSxJQUFJO1FBQ1gsSUFBSSxFQUFFLENBQUMsZ0JBQWdCLEVBQUUsaUJBQWlCLENBQUM7S0FDNUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBUFBfSU5JVElBTElaRVIsIEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBTdHlsZUxpc3RTZXJ2aWNlIH0gZnJvbSAnLi9zdHlsZS1saXN0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTdHlsZUxpc3RPcHRpb25zIH0gZnJvbSAnLi9zdHlsZS1saXN0LmludGVyZmFjZSc7XHJcblxyXG5leHBvcnQgbGV0IFNUWUxFTElTVF9PUFRJT05TID0gbmV3IEluamVjdGlvblRva2VuPFN0eWxlTGlzdE9wdGlvbnM+KCdzdHlsZUxpc3RPcHRpb25zJyk7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZVN0eWxlTGlzdE9wdGlvbnMob3B0aW9uczogU3R5bGVMaXN0T3B0aW9ucykge1xyXG4gIHJldHVybiB7XHJcbiAgICBwcm92aWRlOiBTVFlMRUxJU1RfT1BUSU9OUyxcclxuICAgIHVzZVZhbHVlOiBvcHRpb25zXHJcbiAgfTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHN0eWxlTGlzdEZhY3RvcnkoXHJcbiAgc3R5bGVMaXN0U2VydmljZTogU3R5bGVMaXN0U2VydmljZSxcclxuICBvcHRpb25zOiBTdHlsZUxpc3RPcHRpb25zXHJcbikge1xyXG4gIHJldHVybiAoKSA9PiBzdHlsZUxpc3RTZXJ2aWNlLmxvYWQob3B0aW9ucyk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlU3R5bGVMaXN0TG9hZGVyKCkge1xyXG4gIHJldHVybiB7XHJcbiAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXHJcbiAgICB1c2VGYWN0b3J5OiBzdHlsZUxpc3RGYWN0b3J5LFxyXG4gICAgbXVsdGk6IHRydWUsXHJcbiAgICBkZXBzOiBbU3R5bGVMaXN0U2VydmljZSwgU1RZTEVMSVNUX09QVElPTlNdXHJcbiAgfTtcclxufVxyXG4iXX0=
|
|
@@ -48,4 +48,4 @@ StyleListService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: StyleLi
|
|
|
48
48
|
providedIn: 'root'
|
|
49
49
|
}]
|
|
50
50
|
}], function () { return [{ type: i0.Injector }]; }, null); })();
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUtbGlzdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvaW1wb3J0LWV4cG9ydC9zdHlsZS1saXN0L3N0eWxlLWxpc3Quc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQU8xQyxNQUFNLE9BQU8sZ0JBQWdCO0lBRzNCLFlBQW9CLFFBQWtCO1FBQWxCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFGOUIsY0FBUyxHQUFXLEVBQUUsQ0FBQztJQUVVLENBQUM7SUFFMUM7O09BRUc7SUFDSSxZQUFZLENBQUMsR0FBVztRQUM3QixPQUFPLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxJQUFJLENBQUMsT0FBeUI7UUFDbkMsTUFBTSxhQUFhLEdBQUcsT0FBTyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDNUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUU7WUFDakIsSUFBSSxDQUFDLFNBQVMsR0FBRyxhQUFhLENBQUM7WUFDL0IsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRTNDLE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLEVBQUU7WUFDdEMsSUFBSTtpQkFDRCxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztpQkFDakIsSUFBSSxDQUNILFVBQVUsQ0FBQyxDQUFDLEtBQVUsRUFBTyxFQUFFO2dCQUM3QixPQUFPLENBQUMsR0FBRyxDQUFDLGtCQUFrQixPQUFPLENBQUMsSUFBSSxvQkFBb0IsQ0FBQyxDQUFDO2dCQUNoRSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ2QsT0FBTyxVQUFVLENBQUMsS0FBSyxDQUFDLEtBQUssSUFBSSxjQUFjLENBQUMsQ0FBQztZQUNuRCxDQUFDLENBQUMsQ0FDSDtpQkFDQSxTQUFTLENBQUMsQ0FBQyxpQkFBeUIsRUFBRSxFQUFFO2dCQUN2QyxJQUFJLENBQUMsU0FBUyxHQUFHLFdBQVcsQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLGlCQUFpQixDQUFDLENBQUM7Z0JBQ3pFLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNoQixDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7Z0ZBdkNVLGdCQUFnQjtzRUFBaEIsZ0JBQWdCLFdBQWhCLGdCQUFnQixtQkFGZixNQUFNO3VGQUVQLGdCQUFnQjtjQUg1QixVQUFVO2VBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5pbXBvcnQgeyBPYmplY3RVdGlscyB9IGZyb20gJ0BpZ28yL3V0aWxzJztcclxuXHJcbmltcG9ydCB7IFN0eWxlTGlzdE9wdGlvbnMgfSBmcm9tICcuL3N0eWxlLWxpc3QuaW50ZXJmYWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFN0eWxlTGlzdFNlcnZpY2Uge1xyXG4gIHByaXZhdGUgc3R5bGVMaXN0OiBvYmplY3QgPSB7fTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IpIHt9XHJcblxyXG4gIC8qKlxyXG4gICAqIFVzZSB0byBnZXQgdGhlIGRhdGEgZm91bmQgaW4gc3R5bGVMaXN0IGZpbGVcclxuICAgKi9cclxuICBwdWJsaWMgZ2V0U3R5bGVMaXN0KGtleTogc3RyaW5nKTogYW55IHtcclxuICAgIHJldHVybiBPYmplY3RVdGlscy5yZXNvbHZlKHRoaXMuc3R5bGVMaXN0LCBrZXkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVGhpcyBtZXRob2QgbG9hZHMgXCJbcGF0aF1cIiB0byBnZXQgYWxsIHN0eWxlTGlzdCdzIHZhcmlhYmxlc1xyXG4gICAqL1xyXG4gIHB1YmxpYyBsb2FkKG9wdGlvbnM6IFN0eWxlTGlzdE9wdGlvbnMpIHtcclxuICAgIGNvbnN0IGJhc2VTdHlsZUxpc3QgPSBvcHRpb25zLmRlZmF1bHQgfHwge307XHJcbiAgICBpZiAoIW9wdGlvbnMucGF0aCkge1xyXG4gICAgICB0aGlzLnN0eWxlTGlzdCA9IGJhc2VTdHlsZUxpc3Q7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGh0dHAgPSB0aGlzLmluamVjdG9yLmdldChIdHRwQ2xpZW50KTtcclxuXHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIF9yZWplY3QpID0+IHtcclxuICAgICAgaHR0cFxyXG4gICAgICAgIC5nZXQob3B0aW9ucy5wYXRoKVxyXG4gICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IGFueSk6IGFueSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGBTdHlsZUxpc3QgZmlsZSAke29wdGlvbnMucGF0aH0gY291bGQgbm90IGJlIHJlYWRgKTtcclxuICAgICAgICAgICAgcmVzb2x2ZSh0cnVlKTtcclxuICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoZXJyb3IuZXJyb3IgfHwgJ1NlcnZlciBlcnJvcicpO1xyXG4gICAgICAgICAgfSlcclxuICAgICAgICApXHJcbiAgICAgICAgLnN1YnNjcmliZSgoc3R5bGVMaXN0UmVzcG9uc2U6IG9iamVjdCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5zdHlsZUxpc3QgPSBPYmplY3RVdGlscy5tZXJnZURlZXAoYmFzZVN0eWxlTGlzdCwgc3R5bGVMaXN0UmVzcG9uc2UpO1xyXG4gICAgICAgICAgcmVzb2x2ZSh0cnVlKTtcclxuICAgICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -8,4 +8,4 @@ export * from './layer-list-tool';
|
|
|
8
8
|
export * from './track-feature-button';
|
|
9
9
|
export * from './utils';
|
|
10
10
|
export * from './style-modal';
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9sYXllci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NoYXJlZCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGF5ZXItaXRlbSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGF5ZXItbGVnZW5kJztcclxuZXhwb3J0ICogZnJvbSAnLi9sYXllci1sZWdlbmQtaXRlbSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGF5ZXItbGVnZW5kLWxpc3QnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xheWVyLWxpc3QnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xheWVyLWxpc3QtdG9vbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdHJhY2stZmVhdHVyZS1idXR0b24nO1xyXG5leHBvcnQgKiBmcm9tICcuL3V0aWxzJztcclxuZXhwb3J0ICogZnJvbSAnLi9zdHlsZS1tb2RhbCc7XHJcbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './layer-item.component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9sYXllci9sYXllci1pdGVtL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsd0JBQXdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xheWVyLWl0ZW0uY29tcG9uZW50JztcclxuIl19
|
|
@@ -265,7 +265,7 @@ LayerItemComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LayerIte
|
|
|
265
265
|
} }, styles: ["[_nghost-%COMP%]{overflow:hidden}mat-list-item[_ngcontent-%COMP%] .mat-list-item-content .layerCheck{align-self:baseline;width:16px;padding-right:0}.igo-layer-list-item[_ngcontent-%COMP%]{height:46px;clear:both}.igo-layer-title[_ngcontent-%COMP%]{cursor:pointer}.igo-layer-legend-container[_ngcontent-%COMP%]{padding-left:18px;width:calc(100% - 18px)}mat-icon.disabled[_ngcontent-%COMP%]{color:#00000061}mat-icon[matBadge][_ngcontent-%COMP%] .mat-badge-content{font-size:12px}.selection-eye[_ngcontent-%COMP%]{padding-right:45px}"], changeDetection: 0 });
|
|
266
266
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LayerItemComponent, [{
|
|
267
267
|
type: Component,
|
|
268
|
-
args: [{ selector: 'igo-layer-item', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-list-item class= \"igo-layer-list-item\">\n <mat-checkbox *ngIf=\"selectionMode\"\n class=\"layerCheck\"\n mat-list-icon\n (change)=\"check()\"\n [checked]=\"layerCheck\">\n </mat-checkbox>\n <h4 (click)=\"toggleLegendOnClick()\" matLine class=\"igo-layer-title\" [matTooltip]=\"tooltipText\" matTooltipShowDelay=\"500\">{{layer.title}}</h4>\n\n <button *ngIf=\"!selectionMode\"\n mat-icon-button\n [color]=\"layer.visible ? 'primary' : 'default'\"\n collapsibleButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"eyeTooltip | translate\"\n (click)=\"toggleVisibility()\">\n <mat-icon\n matBadge=\"?\"\n matBadgeColor=\"accent\"\n matBadgeSize=\"small\"\n matBadgePosition=\"after\"\n [matBadgeHidden]=\"queryBadgeHidden$ | async\"\n [ngClass]=\"{disabled: (inResolutionRange$ | async)===false}\"\n [svgIcon]=\"(layer.visible$ | async) ? 'eye' : 'eye-off'\">\n </mat-icon>\n </button>\n\n <button *ngIf=\"selectionMode\" class=\"selection-eye\"\n mat-icon-button\n [color]=\"layer.visible ? 'primary' : 'default'\"\n collapsibleButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"layer.visible ?\n ('igo.geo.layer.hideLayer' | translate) :\n ('igo.geo.layer.showLayer' | translate)\"\n (click)=\"toggleVisibility()\">\n <mat-icon\n matBadge=\"?\"\n matBadgeColor=\"accent\"\n matBadgeSize=\"small\"\n matBadgePosition=\"after\"\n [matBadgeHidden]=\"queryBadgeHidden$ | async\"\n [ngClass]=\"{disabled: (inResolutionRange$ | async)===false}\"\n [svgIcon]=\"layer.visible ? 'eye' : 'eye-off'\">\n </mat-icon>\n</button>\n\n <button *ngIf=\"!selectionMode\"\n class=\"actions-button\"\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]= \"'igo.geo.layer.moreOptions' | translate\"\n mat-icon-button\n color=\"primary\"\n (click)=\"toggleLayerTool()\">\n <mat-icon svgIcon=\"dots-horizontal\"></mat-icon>\n </button>\n</mat-list-item>\n\n<div #legend class=\"igo-layer-legend-container\">\n <igo-layer-legend\n *ngIf=\"showLegend$ | async\"\n [layer]=\"layer\"\n [updateLegendOnResolutionChange]=\"updateLegendOnResolutionChange\">\n </igo-layer-legend>\n</div>\n", styles: [":host{overflow:hidden}mat-list-item ::ng-deep .mat-list-item-content .layerCheck{align-self:baseline;width:16px;padding-right:0}.igo-layer-list-item{height:46px;clear:both}.igo-layer-title{cursor:pointer}.igo-layer-legend-container{padding-left:18px;width:calc(100% - 18px)}mat-icon.disabled{color:#00000061}mat-icon[matBadge] ::ng-deep .mat-badge-content{font-size:12px}.selection-eye{padding-right:45px}\n"] }]
|
|
268
|
+
args: [{ selector: 'igo-layer-item', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-list-item class= \"igo-layer-list-item\">\r\n <mat-checkbox *ngIf=\"selectionMode\"\r\n class=\"layerCheck\"\r\n mat-list-icon\r\n (change)=\"check()\"\r\n [checked]=\"layerCheck\">\r\n </mat-checkbox>\r\n <h4 (click)=\"toggleLegendOnClick()\" matLine class=\"igo-layer-title\" [matTooltip]=\"tooltipText\" matTooltipShowDelay=\"500\">{{layer.title}}</h4>\r\n\r\n <button *ngIf=\"!selectionMode\"\r\n mat-icon-button\r\n [color]=\"layer.visible ? 'primary' : 'default'\"\r\n collapsibleButton\r\n tooltip-position=\"below\"\r\n matTooltipShowDelay=\"500\"\r\n [matTooltip]=\"eyeTooltip | translate\"\r\n (click)=\"toggleVisibility()\">\r\n <mat-icon\r\n matBadge=\"?\"\r\n matBadgeColor=\"accent\"\r\n matBadgeSize=\"small\"\r\n matBadgePosition=\"after\"\r\n [matBadgeHidden]=\"queryBadgeHidden$ | async\"\r\n [ngClass]=\"{disabled: (inResolutionRange$ | async)===false}\"\r\n [svgIcon]=\"(layer.visible$ | async) ? 'eye' : 'eye-off'\">\r\n </mat-icon>\r\n </button>\r\n\r\n <button *ngIf=\"selectionMode\" class=\"selection-eye\"\r\n mat-icon-button\r\n [color]=\"layer.visible ? 'primary' : 'default'\"\r\n collapsibleButton\r\n tooltip-position=\"below\"\r\n matTooltipShowDelay=\"500\"\r\n [matTooltip]=\"layer.visible ?\r\n ('igo.geo.layer.hideLayer' | translate) :\r\n ('igo.geo.layer.showLayer' | translate)\"\r\n (click)=\"toggleVisibility()\">\r\n <mat-icon\r\n matBadge=\"?\"\r\n matBadgeColor=\"accent\"\r\n matBadgeSize=\"small\"\r\n matBadgePosition=\"after\"\r\n [matBadgeHidden]=\"queryBadgeHidden$ | async\"\r\n [ngClass]=\"{disabled: (inResolutionRange$ | async)===false}\"\r\n [svgIcon]=\"layer.visible ? 'eye' : 'eye-off'\">\r\n </mat-icon>\r\n</button>\r\n\r\n <button *ngIf=\"!selectionMode\"\r\n class=\"actions-button\"\r\n tooltip-position=\"below\"\r\n matTooltipShowDelay=\"500\"\r\n [matTooltip]= \"'igo.geo.layer.moreOptions' | translate\"\r\n mat-icon-button\r\n color=\"primary\"\r\n (click)=\"toggleLayerTool()\">\r\n <mat-icon svgIcon=\"dots-horizontal\"></mat-icon>\r\n </button>\r\n</mat-list-item>\r\n\r\n<div #legend class=\"igo-layer-legend-container\">\r\n <igo-layer-legend\r\n *ngIf=\"showLegend$ | async\"\r\n [layer]=\"layer\"\r\n [updateLegendOnResolutionChange]=\"updateLegendOnResolutionChange\">\r\n </igo-layer-legend>\r\n</div>\r\n", styles: [":host{overflow:hidden}mat-list-item ::ng-deep .mat-list-item-content .layerCheck{align-self:baseline;width:16px;padding-right:0}.igo-layer-list-item{height:46px;clear:both}.igo-layer-title{cursor:pointer}.igo-layer-legend-container{padding-left:18px;width:calc(100% - 18px)}mat-icon.disabled{color:#00000061}mat-icon[matBadge] ::ng-deep .mat-badge-content{font-size:12px}.selection-eye{padding-right:45px}\n"] }]
|
|
269
269
|
}], function () { return [{ type: i1.NetworkService }, { type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, { activeLayer: [{
|
|
270
270
|
type: Input
|
|
271
271
|
}], selectAll: [{
|
|
@@ -297,4 +297,4 @@ LayerItemComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LayerIte
|
|
|
297
297
|
}], checkbox: [{
|
|
298
298
|
type: Output
|
|
299
299
|
}] }); })();
|
|
300
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXItaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9sYXllci9sYXllci1pdGVtL2xheWVyLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvbGF5ZXIvbGF5ZXItaXRlbS9sYXllci1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUdMLHVCQUF1QixFQUN2QixNQUFNLEVBQ04sWUFBWSxFQUliLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBZ0IsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBR3JELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2xFLE9BQU8sRUFBUyxXQUFXLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7SUNmcEQsdUNBSXlCO0lBRHZCLGdMQUFVLGVBQUEsY0FBTyxDQUFBLElBQUM7SUFFcEIsaUJBQWU7OztJQURiLDJDQUFzQjs7Ozs7SUFJeEIsa0NBTytCO0lBQTdCLGtLQUFTLGVBQUEseUJBQWtCLENBQUEsSUFBQzs7SUFDNUIsK0JBUVc7Ozs7SUFDYixpQkFBUzs7O0lBZlAsb0VBQStDLHVEQUFBO0lBVzdDLGVBQTRDO0lBQTVDLCtFQUE0QyxtR0FBQSw2RUFBQTs7OztJQU1oRCxrQ0FTNkI7SUFBN0Isb0tBQVMsZUFBQSwwQkFBa0IsQ0FBQSxJQUFDOzs7SUFDNUIsK0JBUVc7OztJQUNiLGlCQUFTOzs7SUFqQlAsb0VBQStDLHdJQUFBO0lBYTdDLGVBQTRDO0lBQTVDLCtFQUE0QyxvR0FBQSxxREFBQTs7OztJQU05QyxrQ0FPOEI7SUFBNUIsb0tBQVMsZUFBQSx5QkFBaUIsQ0FBQSxJQUFDOztJQUMzQiwrQkFBK0M7SUFDakQsaUJBQVM7O0lB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QU07WUFDRyxRQUFRO2tCQUFqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPbkRlc3Ryb3ksXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgUmVuZGVyZXIyLFxuICBFbGVtZW50UmVmLFxuICBDaGFuZ2VEZXRlY3RvclJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IE1ldGFkYXRhTGF5ZXJPcHRpb25zIH0gZnJvbSAnLi4vLi4vbWV0YWRhdGEvc2hhcmVkL21ldGFkYXRhLmludGVyZmFjZSc7XG5pbXBvcnQgeyBsYXllcklzUXVlcnlhYmxlIH0gZnJvbSAnLi4vLi4vcXVlcnkvc2hhcmVkL3F1ZXJ5LnV0aWxzJztcbmltcG9ydCB7IExheWVyLCBUb29sdGlwVHlwZSB9IGZyb20gJy4uL3NoYXJlZC9sYXllcnMnO1xuaW1wb3J0IHsgTmV0d29ya1NlcnZpY2UsIENvbm5lY3Rpb25TdGF0ZSB9IGZyb20gJ0BpZ28yL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpZ28tbGF5ZXItaXRlbScsXG4gIHRlbXBsYXRlVXJsOiAnLi9sYXllci1pdGVtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbGF5ZXItaXRlbS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBMYXllckl0ZW1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHB1YmxpYyBmb2N1c2VkQ2xzID0gJ2lnby1sYXllci1pdGVtLWZvY3VzZWQnO1xuXG4gIEBJbnB1dCgpXG4gIGdldCBhY3RpdmVMYXllcigpIHtcbiAgICByZXR1cm4gdGhpcy5fYWN0aXZlTGF5ZXI7XG4gIH1cbiAgc2V0IGFjdGl2ZUxheWVyKHZhbHVlKSB7XG4gICAgaWYgKHZhbHVlICYmIHRoaXMubGF5ZXIgJiYgdmFsdWUuaWQgPT09IHRoaXMubGF5ZXIuaWQgJiYgIXRoaXMuc2VsZWN0aW9uTW9kZSkge1xuICAgICAgdGhpcy5sYXllclRvb2wkLm5leHQodHJ1ZSk7XG4gICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5mb2N1c2VkQ2xzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQsIHRoaXMuZm9jdXNlZENscyk7XG4gICAgfVxuICB9XG4gIHByaXZhdGUgX2FjdGl2ZUxheWVyO1xuXG4gIGxheWVyVG9vbCQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuXG4gIHNob3dMZWdlbmQkOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHRydWUpO1xuXG4gIGluUmVzb2x1dGlvblJhbmdlJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdCh0cnVlKTtcblxuICBxdWVyeUJhZGdlSGlkZGVuJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdCh0cnVlKTtcblxuICB0b29sdGlwVGV4dDogc3RyaW5nO1xuXG4gIHN0YXRlOiBDb25uZWN0aW9uU3RhdGU7XG5cbiAgQElucHV0KClcbiAgZ2V0IHNlbGVjdEFsbCgpIHtcbiAgICByZXR1cm4gdGhpcy5fc2VsZWN0QWxsO1xuICB9XG4gIHNldCBzZWxlY3RBbGwodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9zZWxlY3RBbGwgPSB2YWx1ZTtcbiAgICBpZiAodmFsdWUgPT09IHRydWUpIHtcbiAgICAgIHRoaXMubGF5ZXJDaGVjayA9IHRydWU7XG4gICAgfVxuICB9XG4gIHByaXZhdGUgX3NlbGVjdEFsbCA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpIGxheWVyQ2hlY2s7XG5cbiAgcHJpdmF0ZSByZXNvbHV0aW9uJCQ6IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSBuZXR3b3JrJCQ6IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSBsYXllcnMkJDogU3Vic2NyaXB0aW9uO1xuXG4gIGxheWVycyQ6IEJlaGF2aW9yU3ViamVjdDxMYXllcj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PExheWVyPih1bmRlZmluZWQpO1xuXG4gIEBJbnB1dCgpXG4gIGdldCBsYXllcigpIHtcbiAgICByZXR1cm4gdGhpcy5fbGF5ZXI7XG4gIH1cbiAgc2V0IGxheWVyKHZhbHVlKSB7XG4gICAgdGhpcy5fbGF5ZXIgPSB2YWx1ZTtcbiAgICB0aGlzLmxheWVycyQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgcHJpdmF0ZSBfbGF5ZXI7XG5cbiAgQElucHV0KCkgdG9nZ2xlTGVnZW5kT25WaXNpYmlsaXR5Q2hhbmdlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KCkgZXhwYW5kTGVnZW5kSWZWaXNpYmxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KCkgdXBkYXRlTGVnZW5kT25SZXNvbHV0aW9uQ2hhbmdlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KCkgb3JkZXJhYmxlOiBib29sZWFuID0gdHJ1ZTtcblxuICBASW5wdXQoKSBsb3dlckRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KCkgcmFpc2VEaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpIHF1ZXJ5QmFkZ2U6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKSBzZWxlY3Rpb25Nb2RlO1xuXG4gIEBJbnB1dCgpIGNoYW5nZURldGVjdGlvbjtcblxuICBnZXQgb3BhY2l0eSgpIHtcbiAgICByZXR1cm4gdGhpcy5sYXllci5vcGFjaXR5ICogMTAwO1xuICB9XG4gIHNldCBvcGFjaXR5KG9wYWNpdHk6IG51bWJlcikge1xuICAgIHRoaXMubGF5ZXIub3BhY2l0eSA9IG9wYWNpdHkgLyAxMDA7XG4gIH1cblxuICBnZXQgZXllVG9vbHRpcCgpIHtcbiAgICBpZiAodGhpcy5pblJlc29sdXRpb25SYW5nZSQuZ2V0VmFsdWUoKSA9PT0gZmFsc2UpIHtcbiAgICAgIHJldHVybiAnaWdvLmdlby5sYXllci5ub3RJblJlc29sdXRpb24nO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5sYXllci52aXNpYmxlID8gJ2lnby5nZW8ubGF5ZXIuaGlkZUxheWVyJyA6ICdpZ28uZ2VvLmxheWVyLnNob3dMYXllcic7XG4gICAgfVxuICB9XG5cbiAgQE91dHB1dCgpIGFjdGlvbjogRXZlbnRFbWl0dGVyPExheWVyPiA9IG5ldyBFdmVudEVtaXR0ZXI8TGF5ZXI+KHVuZGVmaW5lZCk7XG4gIEBPdXRwdXQoKSBjaGVja2JveCA9IG5ldyBFdmVudEVtaXR0ZXI8e1xuICAgIGxheWVyOiBMYXllcjtcbiAgICBjaGVjazogYm9vbGVhbjtcbiAgfT4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIG5ldHdvcmtTZXJ2aWNlOiBOZXR3b3JrU2VydmljZSxcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgcHJpdmF0ZSBlbFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAoXG4gICAgICB0aGlzLmxheWVyLnZpc2libGUgJiZcbiAgICAgIHRoaXMuZXhwYW5kTGVnZW5kSWZWaXNpYmxlICYmXG4gICAgICB0aGlzLmxheWVyLmZpcnN0TG9hZENvbXBvbmVudCA9PT0gdHJ1ZVxuICAgICkge1xuICAgICAgdGhpcy5sYXllci5maXJzdExvYWRDb21wb25lbnQgPSBmYWxzZTtcbiAgICAgIHRoaXMubGF5ZXIubGVnZW5kQ29sbGFwc2VkID0gZmFsc2U7XG4gICAgfVxuICAgIHRoaXMudG9nZ2xlTGVnZW5kKHRoaXMubGF5ZXIubGVnZW5kQ29sbGFwc2VkKTtcbiAgICB0aGlzLnVwZGF0ZVF1ZXJ5QmFkZ2UoKTtcblxuICAgIGNvbnN0IHJlc29sdXRpb24kID0gdGhpcy5sYXllci5tYXAudmlld0NvbnRyb2xsZXIucmVzb2x1dGlvbiQ7XG4gICAgdGhpcy5yZXNvbHV0aW9uJCQgPSByZXNvbHV0aW9uJC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5vblJlc29sdXRpb25DaGFuZ2UoKTtcbiAgICB9KTtcbiAgICB0aGlzLnRvb2x0aXBUZXh0ID0gdGhpcy5jb21wdXRlVG9vbHRpcCgpO1xuXG4gICAgdGhpcy5uZXR3b3JrJCQgPSB0aGlzLm5ldHdvcmtTZXJ2aWNlLmN1cnJlbnRTdGF0ZSgpLnN1YnNjcmliZSgoc3RhdGU6IENvbm5lY3Rpb25TdGF0ZSkgPT4ge1xuICAgICAgdGhpcy5zdGF0ZSA9IHN0YXRlO1xuICAgICAgdGhpcy5vblJlc29sdXRpb25DaGFuZ2UoKTtcbiAgICB9KTtcblxuICAgIHRoaXMubGF5ZXJzJCQgPSB0aGlzLmxheWVycyQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIGlmICh0aGlzLmxheWVyICYmIHRoaXMubGF5ZXIub3B0aW9ucy5hY3RpdmUpIHtcbiAgICAgICAgdGhpcy5sYXllclRvb2wkLm5leHQodHJ1ZSk7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50LCB0aGlzLmZvY3VzZWRDbHMpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaWYgKHRoaXMuY2hhbmdlRGV0ZWN0aW9uKSB7XG4gICAgICB0aGlzLmNoYW5nZURldGVjdGlvbi5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCkpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMucmVzb2x1dGlvbiQkLnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5uZXR3b3JrJCQudW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLmxheWVycyQkLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICB0b2dnbGVMZWdlbmQoY29sbGFwc2VkOiBib29sZWFuKSB7XG4gICAgdGhpcy5sYXllci5sZWdlbmRDb2xsYXBzZWQgPSBjb2xsYXBzZWQ7XG4gICAgdGhpcy5zaG93TGVnZW5kJC5uZXh0KCFjb2xsYXBzZWQpO1xuICB9XG5cbiAgdG9nZ2xlTGVnZW5kT25DbGljaygpIHtcbiAgICB0aGlzLnRvZ2dsZUxlZ2VuZCh0aGlzLnNob3dMZWdlbmQkLnZhbHVlKTtcbiAgfVxuXG4gIHRvZ2dsZVZpc2liaWxpdHkoKSB7XG4gICAgdGhpcy5sYXllci52aXNpYmxlID0gIXRoaXMubGF5ZXIudmlzaWJsZTtcbiAgICBpZiAodGhpcy50b2dnbGVMZWdlbmRPblZpc2liaWxpdHlDaGFuZ2UpIHtcbiAgICAgIHRoaXMudG9nZ2xlTGVnZW5kKCF0aGlzLmxheWVyLnZpc2libGUpO1xuICAgIH1cbiAgICB0aGlzLnVwZGF0ZVF1ZXJ5QmFkZ2UoKTtcbiAgfVxuXG4gIGNvbXB1dGVUb29sdGlwKCk6IHN0cmluZyB7XG4gICAgY29uc3QgbGF5ZXJPcHRpb25zID0gdGhpcy5sYXllci5vcHRpb25zO1xuICAgIGlmICghbGF5ZXJPcHRpb25zLnRvb2x0aXApIHtcbiAgICAgIHJldHVybiB0aGlzLmxheWVyLnRpdGxlO1xuICAgIH1cbiAgICBjb25zdCBsYXllclRvb2x0aXAgPSBsYXllck9wdGlvbnMudG9vbHRpcDtcbiAgICBjb25zdCBsYXllck1ldGFkYXRhID0gKGxheWVyT3B0aW9ucyBhcyBNZXRhZGF0YUxheWVyT3B0aW9ucykubWV0YWRhdGE7XG4gICAgc3dpdGNoIChsYXllck9wdGlvbnMudG9vbHRpcC50eXBlKSB7XG4gICAgICBjYXNlIFRvb2x0aXBUeXBlLlRJVExFOlxuICAgICAgICByZXR1cm4gdGhpcy5sYXllci50aXRsZTtcbiAgICAgIGNhc2UgVG9vbHRpcFR5cGUuQUJTVFJBQ1Q6XG4gICAgICAgIGlmIChsYXllck1ldGFkYXRhICYmIGxheWVyTWV0YWRhdGEuYWJzdHJhY3QpIHtcbiAgICAgICAgICByZXR1cm4gbGF5ZXJNZXRhZGF0YS5hYnN0cmFjdDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5sYXllci50aXRsZTtcbiAgICAgICAgfVxuICAgICAgY2FzZSBUb29sdGlwVHlwZS5DVVNUT006XG4gICAgICAgIGlmIChsYXllclRvb2x0aXAgJiYgbGF5ZXJUb29sdGlwLnRleHQpIHtcbiAgICAgICAgICByZXR1cm4gbGF5ZXJUb29sdGlwLnRleHQ7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMubGF5ZXIudGl0bGU7XG4gICAgICAgIH1cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiB0aGlzLmxheWVyLnRpdGxlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgb25SZXNvbHV0aW9uQ2hhbmdlKCkge1xuICAgIGNvbnN0IGluUmVzb2x1dGlvblJhbmdlID0gdGhpcy5sYXllci5pc0luUmVzb2x1dGlvbnNSYW5nZTtcbiAgICBpZiAoXG4gICAgICBpblJlc29sdXRpb25SYW5nZSA9PT0gZmFsc2UgJiZcbiAgICAgIHRoaXMudXBkYXRlTGVnZW5kT25SZXNvbHV0aW9uQ2hhbmdlID09PSB0cnVlXG4gICAgKSB7XG4gICAgICB0aGlzLnRvZ2dsZUxlZ2VuZCh0cnVlKTtcbiAgICB9XG4gICAgdGhpcy5pblJlc29sdXRpb25SYW5nZSQubmV4dChpblJlc29sdXRpb25SYW5nZSk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZVF1ZXJ5QmFkZ2UoKSB7XG4gICAgY29uc3QgaGlkZGVuID1cbiAgICAgIHRoaXMucXVlcnlCYWRnZSA9PT0gZmFsc2UgfHxcbiAgICAgIHRoaXMubGF5ZXIudmlzaWJsZSA9PT0gZmFsc2UgfHxcbiAgICAgICFsYXllcklzUXVlcnlhYmxlKHRoaXMubGF5ZXIpO1xuICAgIHRoaXMucXVlcnlCYWRnZUhpZGRlbiQubmV4dChoaWRkZW4pO1xuICB9XG5cbiAgdG9nZ2xlTGF5ZXJUb29sKCkge1xuICAgIHRoaXMubGF5ZXJUb29sJC5uZXh0KCF0aGlzLmxheWVyVG9vbCQuZ2V0VmFsdWUoKSk7XG4gICAgaWYgKHRoaXMubGF5ZXJUb29sJC5nZXRWYWx1ZSgpID09PSB0cnVlKSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5mb2N1c2VkQ2xzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQsIHRoaXMuZm9jdXNlZENscyk7XG4gICAgfVxuICAgIHRoaXMuYWN0aW9uLmVtaXQodGhpcy5sYXllcik7XG4gIH1cblxuICBwdWJsaWMgY2hlY2soKSB7XG4gICAgdGhpcy5sYXllckNoZWNrID0gIXRoaXMubGF5ZXJDaGVjaztcbiAgICB0aGlzLmNoZWNrYm94LmVtaXQoe2xheWVyOiB0aGlzLmxheWVyLCBjaGVjazogdGhpcy5sYXllckNoZWNrfSk7XG4gIH1cbn1cbiIsIjxtYXQtbGlzdC1pdGVtIGNsYXNzPSBcImlnby1sYXllci1saXN0LWl0ZW1cIj5cbiAgPG1hdC1jaGVja2JveCAqbmdJZj1cInNlbGVjdGlvbk1vZGVcIlxuICAgIGNsYXNzPVwibGF5ZXJDaGVja1wiXG4gICAgbWF0LWxpc3QtaWNvblxuICAgIChjaGFuZ2UpPVwiY2hlY2soKVwiXG4gICAgW2NoZWNrZWRdPVwibGF5ZXJDaGVja1wiPlxuICA8L21hdC1jaGVja2JveD5cbiAgPGg0IChjbGljayk9XCJ0b2dnbGVMZWdlbmRPbkNsaWNrKClcIiBtYXRMaW5lIGNsYXNzPVwiaWdvLWxheWVyLXRpdGxlXCIgW21hdFRvb2x0aXBdPVwidG9vbHRpcFRleHRcIiBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCI+e3tsYXllci50aXRsZX19PC9oND5cblxuICA8YnV0dG9uICpuZ0lmPVwiIXNlbGVjdGlvbk1vZGVcIlxuICAgIG1hdC1pY29uLWJ1dHRvblxuICAgIFtjb2xvcl09XCJsYXllci52aXNpYmxlID8gJ3ByaW1hcnknIDogJ2RlZmF1bHQnXCJcbiAgICBjb2xsYXBzaWJsZUJ1dHRvblxuICAgIHRvb2x0aXAtcG9zaXRpb249XCJiZWxvd1wiXG4gICAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXG4gICAgW21hdFRvb2x0aXBdPVwiZXllVG9vbHRpcCB8IHRyYW5zbGF0ZVwiXG4gICAgKGNsaWNrKT1cInRvZ2dsZVZpc2liaWxpdHkoKVwiPlxuICAgIDxtYXQtaWNvblxuICAgICAgbWF0QmFkZ2U9XCI/XCJcbiAgICAgIG1hdEJhZGdlQ29sb3I9XCJhY2NlbnRcIlxuICAgICAgbWF0QmFkZ2VTaXplPVwic21hbGxcIlxuICAgICAgbWF0QmFkZ2VQb3NpdGlvbj1cImFmdGVyXCJcbiAgICAgIFttYXRCYWRnZUhpZGRlbl09XCJxdWVyeUJhZGdlSGlkZGVuJCB8IGFzeW5jXCJcbiAgICAgIFtuZ0NsYXNzXT1cIntkaXNhYmxlZDogKGluUmVzb2x1dGlvblJhbmdlJCB8IGFzeW5jKT09PWZhbHNlfVwiXG4gICAgICBbc3ZnSWNvbl09XCIobGF5ZXIudmlzaWJsZSQgfCBhc3luYykgPyAnZXllJyA6ICdleWUtb2ZmJ1wiPlxuICAgIDwvbWF0LWljb24+XG4gIDwvYnV0dG9uPlxuXG4gIDxidXR0b24gKm5nSWY9XCJzZWxlY3Rpb25Nb2RlXCIgY2xhc3M9XCJzZWxlY3Rpb24tZXllXCJcbiAgbWF0LWljb24tYnV0dG9uXG4gIFtjb2xvcl09XCJsYXllci52aXNpYmxlID8gJ3ByaW1hcnknIDogJ2RlZmF1bHQnXCJcbiAgY29sbGFwc2libGVCdXR0b25cbiAgdG9vbHRpcC1wb3NpdGlvbj1cImJlbG93XCJcbiAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXG4gIFttYXRUb29sdGlwXT1cImxheWVyLnZpc2libGUgP1xuICAgICAgICAgICAgICAgICgnaWdvLmdlby5sYXllci5oaWRlTGF5ZXInIHwgdHJhbnNsYXRlKSA6XG4gICAgICAgICAgICAgICAgKCdpZ28uZ2VvLmxheWVyLnNob3dMYXllcicgfCB0cmFuc2xhdGUpXCJcbiAgKGNsaWNrKT1cInRvZ2dsZVZpc2liaWxpdHkoKVwiPlxuICA8bWF0LWljb25cbiAgICBtYXRCYWRnZT1cIj9cIlxuICAgIG1hdEJhZGdlQ29sb3I9XCJhY2NlbnRcIlxuICAgIG1hdEJhZGdlU2l6ZT1cInNtYWxsXCJcbiAgICBtYXRCYWRnZVBvc2l0aW9uPVwiYWZ0ZXJcIlxuICAgIFttYXRCYWRnZUhpZGRlbl09XCJxdWVyeUJhZGdlSGlkZGVuJCB8IGFzeW5jXCJcbiAgICBbbmdDbGFzc109XCJ7ZGlzYWJsZWQ6IChpblJlc29sdXRpb25SYW5nZSQgfCBhc3luYyk9PT1mYWxzZX1cIlxuICAgIFtzdmdJY29uXT1cImxheWVyLnZpc2libGUgPyAnZXllJyA6ICdleWUtb2ZmJ1wiPlxuICA8L21hdC1pY29uPlxuPC9idXR0b24+XG5cbiAgPGJ1dHRvbiAqbmdJZj1cIiFzZWxlY3Rpb25Nb2RlXCJcbiAgICBjbGFzcz1cImFjdGlvbnMtYnV0dG9uXCJcbiAgICB0b29sdGlwLXBvc2l0aW9uPVwiYmVsb3dcIlxuICAgIG1hdFRvb2x0aXBTaG93RGVsYXk9XCI1MDBcIlxuICAgIFttYXRUb29sdGlwXT0gXCInaWdvLmdlby5sYXllci5tb3JlT3B0aW9ucycgfCB0cmFuc2xhdGVcIlxuICAgIG1hdC1pY29uLWJ1dHRvblxuICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgKGNsaWNrKT1cInRvZ2dsZUxheWVyVG9vbCgpXCI+XG4gICAgPG1hdC1pY29uIHN2Z0ljb249XCJkb3RzLWhvcml6b250YWxcIj48L21hdC1pY29uPlxuICA8L2J1dHRvbj5cbjwvbWF0LWxpc3QtaXRlbT5cblxuPGRpdiAjbGVnZW5kIGNsYXNzPVwiaWdvLWxheWVyLWxlZ2VuZC1jb250YWluZXJcIj5cbiAgPGlnby1sYXllci1sZWdlbmRcbiAgICAqbmdJZj1cInNob3dMZWdlbmQkIHwgYXN5bmNcIlxuICAgIFtsYXllcl09XCJsYXllclwiXG4gICAgW3VwZGF0ZUxlZ2VuZE9uUmVzb2x1dGlvbkNoYW5nZV09XCJ1cGRhdGVMZWdlbmRPblJlc29sdXRpb25DaGFuZ2VcIj5cbiAgPC9pZ28tbGF5ZXItbGVnZW5kPlxuPC9kaXY+XG4iXX0=
|
|
300
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXItaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9sYXllci9sYXllci1pdGVtL2xheWVyLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvbGF5ZXIvbGF5ZXItaXRlbS9sYXllci1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUdMLHVCQUF1QixFQUN2QixNQUFNLEVBQ04sWUFBWSxFQUliLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBZ0IsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBR3JELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2xFLE9BQU8sRUFBUyxXQUFXLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7SUNmcEQsdUNBSXlCO0lBRHZCLGdMQUFVLGVBQUEsY0FBTyxDQUFBLElBQUM7SUFFcEIsaUJBQWU7OztJQURiLDJDQUFzQjs7Ozs7SUFJeEIsa0NBTytCO0lBQTdCLGtLQUFTLGVBQUEseUJBQWtCLENBQUEsSUFBQzs7SUFDNUIsK0JBUVc7Ozs7SUFDYixpQkFBUzs7O0lBZlAsb0VBQStDLHVEQUFBO0lBVzdDLGVBQTRDO0lBQTVDLCtFQUE0QyxtR0FBQSw2RUFBQTs7OztJQU1oRCxrQ0FTNkI7SUFBN0Isb0tBQVMsZUFBQSwwQkFBa0IsQ0FBQSxJQUFDOzs7SUFDNUIsK0JBUVc7OztJQUNiLGlCQUFTOzs7SUFqQlAsb0VBQStDLHdJQUFBO0lBYTdDLGVBQTRDO0lBQTVDLCtFQUE0QyxvR0FBQSxxREFBQTs7OztJQU05QyxrQ0FPOEI7SUFBNUIsb0tBQVMsZUFBQSx5QkFBaUIsQ0FBQSxJQUFDOztJQUMzQiwrQkFBK0M7SUFDakQsaUJBQVM7O0lBTFAsOEVBQXVEOzs7SUFTekQsdUNBSW1COzs7SUFGakIsb0NBQWUseUVBQUE7O0FEdkNuQixNQUFNLE9BQU8sa0JBQWtCO0lBa0c3QixZQUNVLGNBQThCLEVBQzlCLFFBQW1CLEVBQ25CLEtBQWlCLEVBQ2pCLEtBQXdCO1FBSHhCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLFVBQUssR0FBTCxLQUFLLENBQVk7UUFDakIsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFyRzNCLGVBQVUsR0FBRyx3QkFBd0IsQ0FBQztRQWdCN0MsZUFBVSxHQUE2QixJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVsRSxnQkFBVyxHQUE2QixJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVsRSx1QkFBa0IsR0FBNkIsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFekUsc0JBQWlCLEdBQTZCLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBZ0JoRSxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBUTNCLFlBQU8sR0FBMkIsSUFBSSxlQUFlLENBQVEsU0FBUyxDQUFDLENBQUM7UUFZL0QsbUNBQThCLEdBQVksS0FBSyxDQUFDO1FBRWhELDBCQUFxQixHQUFZLEtBQUssQ0FBQztRQUV2QyxtQ0FBOEIsR0FBWSxLQUFLLENBQUM7UUFFaEQsY0FBUyxHQUFZLElBQUksQ0FBQztRQUUxQixrQkFBYSxHQUFZLEtBQUssQ0FBQztRQUUvQixrQkFBYSxHQUFZLEtBQUssQ0FBQztRQUUvQixlQUFVLEdBQVksS0FBSyxDQUFDO1FBcUIzQixXQUFNLEdBQXdCLElBQUksWUFBWSxDQUFRLFNBQVMsQ0FBQyxDQUFDO1FBQ2pFLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFHakMsQ0FBQztJQU1nQyxDQUFDO0lBbkd0QyxJQUNJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUNELElBQUksV0FBVyxDQUFDLEtBQUs7UUFDbkIsSUFBSSxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxLQUFLLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUM1RSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUMzQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDbkU7YUFBTTtZQUNMLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUN0RTtJQUNILENBQUM7SUFlRCxJQUNJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQUNELElBQUksU0FBUyxDQUFDLEtBQWM7UUFDMUIsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7UUFDeEIsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1NBQ3hCO0lBQ0gsQ0FBQztJQVdELElBQ0ksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsS0FBSztRQUNiLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFxQkQsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUM7SUFDbEMsQ0FBQztJQUNELElBQUksT0FBTyxDQUFDLE9BQWU7UUFDekIsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsT0FBTyxHQUFHLEdBQUcsQ0FBQztJQUNyQyxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsUUFBUSxFQUFFLEtBQUssS0FBSyxFQUFFO1lBQ2hELE9BQU8sK0JBQStCLENBQUM7U0FDeEM7YUFBTTtZQUNMLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLHlCQUF5QixDQUFDLENBQUMsQ0FBQyx5QkFBeUIsQ0FBQztTQUNuRjtJQUNILENBQUM7SUFjRCxRQUFRO1FBQ04sSUFDRSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU87WUFDbEIsSUFBSSxDQUFDLHFCQUFxQjtZQUMxQixJQUFJLENBQUMsS0FBSyxDQUFDLGtCQUFrQixLQUFLLElBQUksRUFDdEM7WUFDQSxJQUFJLENBQUMsS0FBSyxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztZQUN0QyxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7U0FDcEM7UUFDRCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDOUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFFeEIsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQztRQUM5RCxJQUFJLENBQUMsWUFBWSxHQUFHLFdBQVcsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQzdDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQzVCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFFekMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQXNCLEVBQUUsRUFBRTtZQUN2RixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztZQUNuQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUM1QixDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQzFDLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUU7Z0JBQzNDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUMzQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7YUFDbkU7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUN4QixJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7U0FDbEU7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDaEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCxZQUFZLENBQUMsU0FBa0I7UUFDN0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLEdBQUcsU0FBUyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELGdCQUFnQjtRQUNkLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFDekMsSUFBSSxJQUFJLENBQUMsOEJBQThCLEVBQUU7WUFDdkMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDeEM7UUFDRCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsY0FBYztRQUNaLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFO1lBQ3pCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7U0FDekI7UUFDRCxNQUFNLFlBQVksR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDO1FBQzFDLE1BQU0sYUFBYSxHQUFJLFlBQXFDLENBQUMsUUFBUSxDQUFDO1FBQ3RFLFFBQVEsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUU7WUFDakMsS0FBSyxXQUFXLENBQUMsS0FBSztnQkFDcEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztZQUMxQixLQUFLLFdBQVcsQ0FBQyxRQUFRO2dCQUN2QixJQUFJLGFBQWEsSUFBSSxhQUFhLENBQUMsUUFBUSxFQUFFO29CQUMzQyxPQUFPLGFBQWEsQ0FBQyxRQUFRLENBQUM7aUJBQy9CO3FCQUFNO29CQUNMLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7aUJBQ3pCO1lBQ0gsS0FBSyxXQUFXLENBQUMsTUFBTTtnQkFDckIsSUFBSSxZQUFZLElBQUksWUFBWSxDQUFDLElBQUksRUFBRTtvQkFDckMsT0FBTyxZQUFZLENBQUMsSUFBSSxDQUFDO2lCQUMxQjtxQkFBTTtvQkFDTCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO2lCQUN6QjtZQUNIO2dCQUNFLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7U0FDM0I7SUFDSCxDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQztRQUMxRCxJQUNFLGlCQUFpQixLQUFLLEtBQUs7WUFDM0IsSUFBSSxDQUFDLDhCQUE4QixLQUFLLElBQUksRUFDNUM7WUFDQSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3pCO1FBQ0QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFTyxnQkFBZ0I7UUFDdEIsTUFBTSxNQUFNLEdBQ1YsSUFBSSxDQUFDLFVBQVUsS0FBSyxLQUFLO1lBQ3pCLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxLQUFLLEtBQUs7WUFDNUIsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ2xELElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsS0FBSyxJQUFJLEVBQUU7WUFDdkMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ25FO2FBQU07WUFDTCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDdEU7UUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVNLEtBQUs7UUFDVixJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUNuQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFDLENBQUMsQ0FBQztJQUNsRSxDQUFDOztvRkE3TlUsa0JBQWtCO3FFQUFsQixrQkFBa0I7UUN6Qi9CLHdDQUE0QztRQUMxQyxxRkFLZTtRQUNmLDZCQUF5SDtRQUFySCwyRkFBUyx5QkFBcUIsSUFBQztRQUFzRixZQUFlO1FBQUEsaUJBQUs7UUFFN0ksMEVBaUJTO1FBRVQsMEVBbUJPO1FBRVAseUVBU1M7UUFDWCxpQkFBZ0I7UUFFaEIsaUNBQWdEO1FBQzlDLDZGQUltQjs7UUFDckIsaUJBQU07O1FBbEVXLGVBQW1CO1FBQW5CLHdDQUFtQjtRQU1rQyxlQUEwQjtRQUExQiw0Q0FBMEI7UUFBMkIsZUFBZTtRQUFmLHFDQUFlO1FBRS9ILGVBQW9CO1FBQXBCLHlDQUFvQjtRQW1CcEIsZUFBbUI7UUFBbkIsd0NBQW1CO1FBcUJuQixlQUFvQjtRQUFwQix5Q0FBb0I7UUFjMUIsZUFBeUI7UUFBekIsNkRBQXlCOzt1RkR0Q2pCLGtCQUFrQjtjQU45QixTQUFTOzJCQUNFLGdCQUFnQixtQkFHVCx1QkFBdUIsQ0FBQyxNQUFNO2tKQU0zQyxXQUFXO2tCQURkLEtBQUs7WUEyQkYsU0FBUztrQkFEWixLQUFLO1lBWUcsVUFBVTtrQkFBbEIsS0FBSztZQVNGLEtBQUs7a0JBRFIsS0FBSztZQVVHLDhCQUE4QjtrQkFBdEMsS0FBSztZQUVHLHFCQUFxQjtrQkFBN0IsS0FBSztZQUVHLDhCQUE4QjtrQkFBdEMsS0FBSztZQUVHLFNBQVM7a0JBQWpCLEtBQUs7WUFFRyxhQUFhO2tCQUFyQixLQUFLO1lBRUcsYUFBYTtrQkFBckIsS0FBSztZQUVHLFVBQVU7a0JBQWxCLEtBQUs7WUFFRyxhQUFhO2tCQUFyQixLQUFLO1lBRUcsZUFBZTtrQkFBdkIsS0FBSztZQWlCSSxNQUFNO2tCQUFmLE1BQU07WUFDRyxRQUFRO2tCQUFqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgSW5wdXQsXHJcbiAgT25Jbml0LFxyXG4gIE9uRGVzdHJveSxcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBPdXRwdXQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIFJlbmRlcmVyMixcclxuICBFbGVtZW50UmVmLFxyXG4gIENoYW5nZURldGVjdG9yUmVmXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgeyBNZXRhZGF0YUxheWVyT3B0aW9ucyB9IGZyb20gJy4uLy4uL21ldGFkYXRhL3NoYXJlZC9tZXRhZGF0YS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBsYXllcklzUXVlcnlhYmxlIH0gZnJvbSAnLi4vLi4vcXVlcnkvc2hhcmVkL3F1ZXJ5LnV0aWxzJztcclxuaW1wb3J0IHsgTGF5ZXIsIFRvb2x0aXBUeXBlIH0gZnJvbSAnLi4vc2hhcmVkL2xheWVycyc7XHJcbmltcG9ydCB7IE5ldHdvcmtTZXJ2aWNlLCBDb25uZWN0aW9uU3RhdGUgfSBmcm9tICdAaWdvMi9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnaWdvLWxheWVyLWl0ZW0nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9sYXllci1pdGVtLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9sYXllci1pdGVtLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIExheWVySXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBwdWJsaWMgZm9jdXNlZENscyA9ICdpZ28tbGF5ZXItaXRlbS1mb2N1c2VkJztcclxuXHJcbiAgQElucHV0KClcclxuICBnZXQgYWN0aXZlTGF5ZXIoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fYWN0aXZlTGF5ZXI7XHJcbiAgfVxyXG4gIHNldCBhY3RpdmVMYXllcih2YWx1ZSkge1xyXG4gICAgaWYgKHZhbHVlICYmIHRoaXMubGF5ZXIgJiYgdmFsdWUuaWQgPT09IHRoaXMubGF5ZXIuaWQgJiYgIXRoaXMuc2VsZWN0aW9uTW9kZSkge1xyXG4gICAgICB0aGlzLmxheWVyVG9vbCQubmV4dCh0cnVlKTtcclxuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQsIHRoaXMuZm9jdXNlZENscyk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5mb2N1c2VkQ2xzKTtcclxuICAgIH1cclxuICB9XHJcbiAgcHJpdmF0ZSBfYWN0aXZlTGF5ZXI7XHJcblxyXG4gIGxheWVyVG9vbCQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xyXG5cclxuICBzaG93TGVnZW5kJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdCh0cnVlKTtcclxuXHJcbiAgaW5SZXNvbHV0aW9uUmFuZ2UkOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHRydWUpO1xyXG5cclxuICBxdWVyeUJhZGdlSGlkZGVuJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdCh0cnVlKTtcclxuXHJcbiAgdG9vbHRpcFRleHQ6IHN0cmluZztcclxuXHJcbiAgc3RhdGU6IENvbm5lY3Rpb25TdGF0ZTtcclxuXHJcbiAgQElucHV0KClcclxuICBnZXQgc2VsZWN0QWxsKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX3NlbGVjdEFsbDtcclxuICB9XHJcbiAgc2V0IHNlbGVjdEFsbCh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5fc2VsZWN0QWxsID0gdmFsdWU7XHJcbiAgICBpZiAodmFsdWUgPT09IHRydWUpIHtcclxuICAgICAgdGhpcy5sYXllckNoZWNrID0gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcbiAgcHJpdmF0ZSBfc2VsZWN0QWxsID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpIGxheWVyQ2hlY2s7XHJcblxyXG4gIHByaXZhdGUgcmVzb2x1dGlvbiQkOiBTdWJzY3JpcHRpb247XHJcbiAgcHJpdmF0ZSBuZXR3b3JrJCQ6IFN1YnNjcmlwdGlvbjtcclxuICBwcml2YXRlIGxheWVycyQkOiBTdWJzY3JpcHRpb247XHJcblxyXG4gIGxheWVycyQ6IEJlaGF2aW9yU3ViamVjdDxMYXllcj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PExheWVyPih1bmRlZmluZWQpO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGdldCBsYXllcigpIHtcclxuICAgIHJldHVybiB0aGlzLl9sYXllcjtcclxuICB9XHJcbiAgc2V0IGxheWVyKHZhbHVlKSB7XHJcbiAgICB0aGlzLl9sYXllciA9IHZhbHVlO1xyXG4gICAgdGhpcy5sYXllcnMkLm5leHQodmFsdWUpO1xyXG4gIH1cclxuICBwcml2YXRlIF9sYXllcjtcclxuXHJcbiAgQElucHV0KCkgdG9nZ2xlTGVnZW5kT25WaXNpYmlsaXR5Q2hhbmdlOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpIGV4cGFuZExlZ2VuZElmVmlzaWJsZTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKSB1cGRhdGVMZWdlbmRPblJlc29sdXRpb25DaGFuZ2U6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KCkgb3JkZXJhYmxlOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgQElucHV0KCkgbG93ZXJEaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKSByYWlzZURpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpIHF1ZXJ5QmFkZ2U6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KCkgc2VsZWN0aW9uTW9kZTtcclxuXHJcbiAgQElucHV0KCkgY2hhbmdlRGV0ZWN0aW9uO1xyXG5cclxuICBnZXQgb3BhY2l0eSgpIHtcclxuICAgIHJldHVybiB0aGlzLmxheWVyLm9wYWNpdHkgKiAxMDA7XHJcbiAgfVxyXG4gIHNldCBvcGFjaXR5KG9wYWNpdHk6IG51bWJlcikge1xyXG4gICAgdGhpcy5sYXllci5vcGFjaXR5ID0gb3BhY2l0eSAvIDEwMDtcclxuICB9XHJcblxyXG4gIGdldCBleWVUb29sdGlwKCkge1xyXG4gICAgaWYgKHRoaXMuaW5SZXNvbHV0aW9uUmFuZ2UkLmdldFZhbHVlKCkgPT09IGZhbHNlKSB7XHJcbiAgICAgIHJldHVybiAnaWdvLmdlby5sYXllci5ub3RJblJlc29sdXRpb24nO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHRoaXMubGF5ZXIudmlzaWJsZSA/ICdpZ28uZ2VvLmxheWVyLmhpZGVMYXllcicgOiAnaWdvLmdlby5sYXllci5zaG93TGF5ZXInO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQE91dHB1dCgpIGFjdGlvbjogRXZlbnRFbWl0dGVyPExheWVyPiA9IG5ldyBFdmVudEVtaXR0ZXI8TGF5ZXI+KHVuZGVmaW5lZCk7XHJcbiAgQE91dHB1dCgpIGNoZWNrYm94ID0gbmV3IEV2ZW50RW1pdHRlcjx7XHJcbiAgICBsYXllcjogTGF5ZXI7XHJcbiAgICBjaGVjazogYm9vbGVhbjtcclxuICB9PigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgbmV0d29ya1NlcnZpY2U6IE5ldHdvcmtTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgcHJpdmF0ZSBlbFJlZjogRWxlbWVudFJlZixcclxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIGlmIChcclxuICAgICAgdGhpcy5sYXllci52aXNpYmxlICYmXHJcbiAgICAgIHRoaXMuZXhwYW5kTGVnZW5kSWZWaXNpYmxlICYmXHJcbiAgICAgIHRoaXMubGF5ZXIuZmlyc3RMb2FkQ29tcG9uZW50ID09PSB0cnVlXHJcbiAgICApIHtcclxuICAgICAgdGhpcy5sYXllci5maXJzdExvYWRDb21wb25lbnQgPSBmYWxzZTtcclxuICAgICAgdGhpcy5sYXllci5sZWdlbmRDb2xsYXBzZWQgPSBmYWxzZTtcclxuICAgIH1cclxuICAgIHRoaXMudG9nZ2xlTGVnZW5kKHRoaXMubGF5ZXIubGVnZW5kQ29sbGFwc2VkKTtcclxuICAgIHRoaXMudXBkYXRlUXVlcnlCYWRnZSgpO1xyXG5cclxuICAgIGNvbnN0IHJlc29sdXRpb24kID0gdGhpcy5sYXllci5tYXAudmlld0NvbnRyb2xsZXIucmVzb2x1dGlvbiQ7XHJcbiAgICB0aGlzLnJlc29sdXRpb24kJCA9IHJlc29sdXRpb24kLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIHRoaXMub25SZXNvbHV0aW9uQ2hhbmdlKCk7XHJcbiAgICB9KTtcclxuICAgIHRoaXMudG9vbHRpcFRleHQgPSB0aGlzLmNvbXB1dGVUb29sdGlwKCk7XHJcblxyXG4gICAgdGhpcy5uZXR3b3JrJCQgPSB0aGlzLm5ldHdvcmtTZXJ2aWNlLmN1cnJlbnRTdGF0ZSgpLnN1YnNjcmliZSgoc3RhdGU6IENvbm5lY3Rpb25TdGF0ZSkgPT4ge1xyXG4gICAgICB0aGlzLnN0YXRlID0gc3RhdGU7XHJcbiAgICAgIHRoaXMub25SZXNvbHV0aW9uQ2hhbmdlKCk7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmxheWVycyQkID0gdGhpcy5sYXllcnMkLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIGlmICh0aGlzLmxheWVyICYmIHRoaXMubGF5ZXIub3B0aW9ucy5hY3RpdmUpIHtcclxuICAgICAgICB0aGlzLmxheWVyVG9vbCQubmV4dCh0cnVlKTtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5mb2N1c2VkQ2xzKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgaWYgKHRoaXMuY2hhbmdlRGV0ZWN0aW9uKSB7XHJcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0aW9uLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMucmVzb2x1dGlvbiQkLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB0aGlzLm5ldHdvcmskJC51bnN1YnNjcmliZSgpO1xyXG4gICAgdGhpcy5sYXllcnMkJC51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgdG9nZ2xlTGVnZW5kKGNvbGxhcHNlZDogYm9vbGVhbikge1xyXG4gICAgdGhpcy5sYXllci5sZWdlbmRDb2xsYXBzZWQgPSBjb2xsYXBzZWQ7XHJcbiAgICB0aGlzLnNob3dMZWdlbmQkLm5leHQoIWNvbGxhcHNlZCk7XHJcbiAgfVxyXG5cclxuICB0b2dnbGVMZWdlbmRPbkNsaWNrKCkge1xyXG4gICAgdGhpcy50b2dnbGVMZWdlbmQodGhpcy5zaG93TGVnZW5kJC52YWx1ZSk7XHJcbiAgfVxyXG5cclxuICB0b2dnbGVWaXNpYmlsaXR5KCkge1xyXG4gICAgdGhpcy5sYXllci52aXNpYmxlID0gIXRoaXMubGF5ZXIudmlzaWJsZTtcclxuICAgIGlmICh0aGlzLnRvZ2dsZUxlZ2VuZE9uVmlzaWJpbGl0eUNoYW5nZSkge1xyXG4gICAgICB0aGlzLnRvZ2dsZUxlZ2VuZCghdGhpcy5sYXllci52aXNpYmxlKTtcclxuICAgIH1cclxuICAgIHRoaXMudXBkYXRlUXVlcnlCYWRnZSgpO1xyXG4gIH1cclxuXHJcbiAgY29tcHV0ZVRvb2x0aXAoKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGxheWVyT3B0aW9ucyA9IHRoaXMubGF5ZXIub3B0aW9ucztcclxuICAgIGlmICghbGF5ZXJPcHRpb25zLnRvb2x0aXApIHtcclxuICAgICAgcmV0dXJuIHRoaXMubGF5ZXIudGl0bGU7XHJcbiAgICB9XHJcbiAgICBjb25zdCBsYXllclRvb2x0aXAgPSBsYXllck9wdGlvbnMudG9vbHRpcDtcclxuICAgIGNvbnN0IGxheWVyTWV0YWRhdGEgPSAobGF5ZXJPcHRpb25zIGFzIE1ldGFkYXRhTGF5ZXJPcHRpb25zKS5tZXRhZGF0YTtcclxuICAgIHN3aXRjaCAobGF5ZXJPcHRpb25zLnRvb2x0aXAudHlwZSkge1xyXG4gICAgICBjYXNlIFRvb2x0aXBUeXBlLlRJVExFOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmxheWVyLnRpdGxlO1xyXG4gICAgICBjYXNlIFRvb2x0aXBUeXBlLkFCU1RSQUNUOlxyXG4gICAgICAgIGlmIChsYXllck1ldGFkYXRhICYmIGxheWVyTWV0YWRhdGEuYWJzdHJhY3QpIHtcclxuICAgICAgICAgIHJldHVybiBsYXllck1ldGFkYXRhLmFic3RyYWN0O1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZXR1cm4gdGhpcy5sYXllci50aXRsZTtcclxuICAgICAgICB9XHJcbiAgICAgIGNhc2UgVG9vbHRpcFR5cGUuQ1VTVE9NOlxyXG4gICAgICAgIGlmIChsYXllclRvb2x0aXAgJiYgbGF5ZXJUb29sdGlwLnRleHQpIHtcclxuICAgICAgICAgIHJldHVybiBsYXllclRvb2x0aXAudGV4dDtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmV0dXJuIHRoaXMubGF5ZXIudGl0bGU7XHJcbiAgICAgICAgfVxyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybiB0aGlzLmxheWVyLnRpdGxlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBvblJlc29sdXRpb25DaGFuZ2UoKSB7XHJcbiAgICBjb25zdCBpblJlc29sdXRpb25SYW5nZSA9IHRoaXMubGF5ZXIuaXNJblJlc29sdXRpb25zUmFuZ2U7XHJcbiAgICBpZiAoXHJcbiAgICAgIGluUmVzb2x1dGlvblJhbmdlID09PSBmYWxzZSAmJlxyXG4gICAgICB0aGlzLnVwZGF0ZUxlZ2VuZE9uUmVzb2x1dGlvbkNoYW5nZSA9PT0gdHJ1ZVxyXG4gICAgKSB7XHJcbiAgICAgIHRoaXMudG9nZ2xlTGVnZW5kKHRydWUpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5pblJlc29sdXRpb25SYW5nZSQubmV4dChpblJlc29sdXRpb25SYW5nZSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZVF1ZXJ5QmFkZ2UoKSB7XHJcbiAgICBjb25zdCBoaWRkZW4gPVxyXG4gICAgICB0aGlzLnF1ZXJ5QmFkZ2UgPT09IGZhbHNlIHx8XHJcbiAgICAgIHRoaXMubGF5ZXIudmlzaWJsZSA9PT0gZmFsc2UgfHxcclxuICAgICAgIWxheWVySXNRdWVyeWFibGUodGhpcy5sYXllcik7XHJcbiAgICB0aGlzLnF1ZXJ5QmFkZ2VIaWRkZW4kLm5leHQoaGlkZGVuKTtcclxuICB9XHJcblxyXG4gIHRvZ2dsZUxheWVyVG9vbCgpIHtcclxuICAgIHRoaXMubGF5ZXJUb29sJC5uZXh0KCF0aGlzLmxheWVyVG9vbCQuZ2V0VmFsdWUoKSk7XHJcbiAgICBpZiAodGhpcy5sYXllclRvb2wkLmdldFZhbHVlKCkgPT09IHRydWUpIHtcclxuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQsIHRoaXMuZm9jdXNlZENscyk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5mb2N1c2VkQ2xzKTtcclxuICAgIH1cclxuICAgIHRoaXMuYWN0aW9uLmVtaXQodGhpcy5sYXllcik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2hlY2soKSB7XHJcbiAgICB0aGlzLmxheWVyQ2hlY2sgPSAhdGhpcy5sYXllckNoZWNrO1xyXG4gICAgdGhpcy5jaGVja2JveC5lbWl0KHtsYXllcjogdGhpcy5sYXllciwgY2hlY2s6IHRoaXMubGF5ZXJDaGVja30pO1xyXG4gIH1cclxufVxyXG4iLCI8bWF0LWxpc3QtaXRlbSBjbGFzcz0gXCJpZ28tbGF5ZXItbGlzdC1pdGVtXCI+XHJcbiAgPG1hdC1jaGVja2JveCAqbmdJZj1cInNlbGVjdGlvbk1vZGVcIlxyXG4gICAgY2xhc3M9XCJsYXllckNoZWNrXCJcclxuICAgIG1hdC1saXN0LWljb25cclxuICAgIChjaGFuZ2UpPVwiY2hlY2soKVwiXHJcbiAgICBbY2hlY2tlZF09XCJsYXllckNoZWNrXCI+XHJcbiAgPC9tYXQtY2hlY2tib3g+XHJcbiAgPGg0IChjbGljayk9XCJ0b2dnbGVMZWdlbmRPbkNsaWNrKClcIiBtYXRMaW5lIGNsYXNzPVwiaWdvLWxheWVyLXRpdGxlXCIgW21hdFRvb2x0aXBdPVwidG9vbHRpcFRleHRcIiBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCI+e3tsYXllci50aXRsZX19PC9oND5cclxuXHJcbiAgPGJ1dHRvbiAqbmdJZj1cIiFzZWxlY3Rpb25Nb2RlXCJcclxuICAgIG1hdC1pY29uLWJ1dHRvblxyXG4gICAgW2NvbG9yXT1cImxheWVyLnZpc2libGUgPyAncHJpbWFyeScgOiAnZGVmYXVsdCdcIlxyXG4gICAgY29sbGFwc2libGVCdXR0b25cclxuICAgIHRvb2x0aXAtcG9zaXRpb249XCJiZWxvd1wiXHJcbiAgICBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcclxuICAgIFttYXRUb29sdGlwXT1cImV5ZVRvb2x0aXAgfCB0cmFuc2xhdGVcIlxyXG4gICAgKGNsaWNrKT1cInRvZ2dsZVZpc2liaWxpdHkoKVwiPlxyXG4gICAgPG1hdC1pY29uXHJcbiAgICAgIG1hdEJhZGdlPVwiP1wiXHJcbiAgICAgIG1hdEJhZGdlQ29sb3I9XCJhY2NlbnRcIlxyXG4gICAgICBtYXRCYWRnZVNpemU9XCJzbWFsbFwiXHJcbiAgICAgIG1hdEJhZGdlUG9zaXRpb249XCJhZnRlclwiXHJcbiAgICAgIFttYXRCYWRnZUhpZGRlbl09XCJxdWVyeUJhZGdlSGlkZGVuJCB8IGFzeW5jXCJcclxuICAgICAgW25nQ2xhc3NdPVwie2Rpc2FibGVkOiAoaW5SZXNvbHV0aW9uUmFuZ2UkIHwgYXN5bmMpPT09ZmFsc2V9XCJcclxuICAgICAgW3N2Z0ljb25dPVwiKGxheWVyLnZpc2libGUkIHwgYXN5bmMpID8gJ2V5ZScgOiAnZXllLW9mZidcIj5cclxuICAgIDwvbWF0LWljb24+XHJcbiAgPC9idXR0b24+XHJcblxyXG4gIDxidXR0b24gKm5nSWY9XCJzZWxlY3Rpb25Nb2RlXCIgY2xhc3M9XCJzZWxlY3Rpb24tZXllXCJcclxuICBtYXQtaWNvbi1idXR0b25cclxuICBbY29sb3JdPVwibGF5ZXIudmlzaWJsZSA/ICdwcmltYXJ5JyA6ICdkZWZhdWx0J1wiXHJcbiAgY29sbGFwc2libGVCdXR0b25cclxuICB0b29sdGlwLXBvc2l0aW9uPVwiYmVsb3dcIlxyXG4gIG1hdFRvb2x0aXBTaG93RGVsYXk9XCI1MDBcIlxyXG4gIFttYXRUb29sdGlwXT1cImxheWVyLnZpc2libGUgP1xyXG4gICAgICAgICAgICAgICAgKCdpZ28uZ2VvLmxheWVyLmhpZGVMYXllcicgfCB0cmFuc2xhdGUpIDpcclxuICAgICAgICAgICAgICAgICgnaWdvLmdlby5sYXllci5zaG93TGF5ZXInIHwgdHJhbnNsYXRlKVwiXHJcbiAgKGNsaWNrKT1cInRvZ2dsZVZpc2liaWxpdHkoKVwiPlxyXG4gIDxtYXQtaWNvblxyXG4gICAgbWF0QmFkZ2U9XCI/XCJcclxuICAgIG1hdEJhZGdlQ29sb3I9XCJhY2NlbnRcIlxyXG4gICAgbWF0QmFkZ2VTaXplPVwic21hbGxcIlxyXG4gICAgbWF0QmFkZ2VQb3NpdGlvbj1cImFmdGVyXCJcclxuICAgIFttYXRCYWRnZUhpZGRlbl09XCJxdWVyeUJhZGdlSGlkZGVuJCB8IGFzeW5jXCJcclxuICAgIFtuZ0NsYXNzXT1cIntkaXNhYmxlZDogKGluUmVzb2x1dGlvblJhbmdlJCB8IGFzeW5jKT09PWZhbHNlfVwiXHJcbiAgICBbc3ZnSWNvbl09XCJsYXllci52aXNpYmxlID8gJ2V5ZScgOiAnZXllLW9mZidcIj5cclxuICA8L21hdC1pY29uPlxyXG48L2J1dHRvbj5cclxuXHJcbiAgPGJ1dHRvbiAqbmdJZj1cIiFzZWxlY3Rpb25Nb2RlXCJcclxuICAgIGNsYXNzPVwiYWN0aW9ucy1idXR0b25cIlxyXG4gICAgdG9vbHRpcC1wb3NpdGlvbj1cImJlbG93XCJcclxuICAgIG1hdFRvb2x0aXBTaG93RGVsYXk9XCI1MDBcIlxyXG4gICAgW21hdFRvb2x0aXBdPSBcIidpZ28uZ2VvLmxheWVyLm1vcmVPcHRpb25zJyB8IHRyYW5zbGF0ZVwiXHJcbiAgICBtYXQtaWNvbi1idXR0b25cclxuICAgIGNvbG9yPVwicHJpbWFyeVwiXHJcbiAgICAoY2xpY2spPVwidG9nZ2xlTGF5ZXJUb29sKClcIj5cclxuICAgIDxtYXQtaWNvbiBzdmdJY29uPVwiZG90cy1ob3Jpem9udGFsXCI+PC9tYXQtaWNvbj5cclxuICA8L2J1dHRvbj5cclxuPC9tYXQtbGlzdC1pdGVtPlxyXG5cclxuPGRpdiAjbGVnZW5kIGNsYXNzPVwiaWdvLWxheWVyLWxlZ2VuZC1jb250YWluZXJcIj5cclxuICA8aWdvLWxheWVyLWxlZ2VuZFxyXG4gICAgKm5nSWY9XCJzaG93TGVnZW5kJCB8IGFzeW5jXCJcclxuICAgIFtsYXllcl09XCJsYXllclwiXHJcbiAgICBbdXBkYXRlTGVnZW5kT25SZXNvbHV0aW9uQ2hhbmdlXT1cInVwZGF0ZUxlZ2VuZE9uUmVzb2x1dGlvbkNoYW5nZVwiPlxyXG4gIDwvaWdvLWxheWVyLWxlZ2VuZD5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './layer-legend.component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9sYXllci9sYXllci1sZWdlbmQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGF5ZXItbGVnZW5kLmNvbXBvbmVudCc7XHJcbiJdfQ==
|
|
@@ -376,7 +376,7 @@ LayerLegendComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LayerL
|
|
|
376
376
|
} }, dependencies: [i4.MatFormField, i5.NgControlStatus, i6.NgClass, i6.NgForOf, i6.NgIf, i6.NgStyle, i5.NgModel, i7.MatIcon, i8.MatSelect, i9.MatOption, i10.MatTooltip, i11.MatListItem, i11.MatListAvatarCssMatStyler, i9.MatLine, i12.CollapseDirective, i12.ImageErrorDirective, i6.AsyncPipe, i13.TranslatePipe, i12.SanitizeHtmlPipe], styles: [".igo-layer-legend.with-title[_ngcontent-%COMP%]{padding-left:18px}img[_ngcontent-%COMP%]:after{content:\" \";position:relative;height:17px;float:left;width:17px;top:-3px;right:19px;background-color:#fff;border:3px solid #f3f3f3;border-radius:50%;-webkit-animation:2s linear infinite spin;animation:2s linear infinite spin}@-moz-document url-prefix(){img:after{margin-left:19px}}@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}"], changeDetection: 0 });
|
|
377
377
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LayerLegendComponent, [{
|
|
378
378
|
type: Component,
|
|
379
|
-
args: [{ selector: 'igo-layer-legend', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"legendItems$ | async as items\">\n <ng-container *ngIf=\"items.length; else noItems\">\n <ng-container *ngFor=\"let item of items.slice().reverse()\" #renderedLegends>\n <div *ngIf=\"getLegend; else noItems\">\n <mat-list-item *ngIf=\"item.title\">\n <mat-icon\n id=\"legend-toggle\"\n class=\"igo-chevron\"\n mat-list-avatar\n igoCollapse\n [target]=\"legend\"\n [collapsed]=\"(item.collapsed)\"\n (toggle)=\"toggleLegendItem($event, item)\"\n svgIcon=\"chevron-up\">\n </mat-icon>\n <h4 matLine>{{computeItemTitle(item) | async}} </h4>\n </mat-list-item>\n <div #legend class=\"igo-layer-legend\" [ngClass]=\"{'with-title': item.title}\">\n <div *ngIf=\"currentStyle !== undefined\">\n <mat-form-field>\n <mat-select tooltip-position=\"below\" matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.layer.legend.selectStyle' | translate\" [(ngModel)]=\"currentStyle\"\n (selectionChange)=\"onChangeStyle()\">\n <mat-option *ngFor=\"let style of styles\" [value]=\"style.name\">{{style.title}}</mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n <div *ngIf=\"!(item.collapsed)\">\n <div *ngIf=\"item.url\">\n <img igoImageError *ngIf=\"item.imgGraphValue\" hideError=\"true\" #renderedLegend id=\"{{item.title}}\" (load)=\"onLoadImage(item.title)\"\n [src]=\"item.imgGraphValue\"\n alt=\"{{'igo.geo.layer.legend.loadingLegendText' | translate}}\">\n <small *ngIf=\"imagesHeight[item.title]<16\">\n {{'igo.geo.layer.legend.noLegendScale' | translate}}\n </small>\n </div>\n <div\n [ngStyle]=\"item.style\"\n [innerHTML]=\"item.html | sanitizeHtml\"\n *ngIf=\"item.html\">\n </div>\n </div>\n </div>\n </div>\n </ng-container>\n </ng-container>\n\n <ng-template #noItems>\n <small>\n {{'igo.geo.layer.legend.noLegendText' | translate}}\n </small>\n </ng-template>\n\n</ng-container>\n", styles: [".igo-layer-legend.with-title{padding-left:18px}img:after{content:\" \";position:relative;height:17px;float:left;width:17px;top:-3px;right:19px;background-color:#fff;border:3px solid #f3f3f3;border-radius:50%;-webkit-animation:2s linear infinite spin;animation:2s linear infinite spin}@-moz-document url-prefix(){img:after{margin-left:19px}}@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}\n"] }]
|
|
379
|
+
args: [{ selector: 'igo-layer-legend', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"legendItems$ | async as items\">\r\n <ng-container *ngIf=\"items.length; else noItems\">\r\n <ng-container *ngFor=\"let item of items.slice().reverse()\" #renderedLegends>\r\n <div *ngIf=\"getLegend; else noItems\">\r\n <mat-list-item *ngIf=\"item.title\">\r\n <mat-icon\r\n id=\"legend-toggle\"\r\n class=\"igo-chevron\"\r\n mat-list-avatar\r\n igoCollapse\r\n [target]=\"legend\"\r\n [collapsed]=\"(item.collapsed)\"\r\n (toggle)=\"toggleLegendItem($event, item)\"\r\n svgIcon=\"chevron-up\">\r\n </mat-icon>\r\n <h4 matLine>{{computeItemTitle(item) | async}} </h4>\r\n </mat-list-item>\r\n <div #legend class=\"igo-layer-legend\" [ngClass]=\"{'with-title': item.title}\">\r\n <div *ngIf=\"currentStyle !== undefined\">\r\n <mat-form-field>\r\n <mat-select tooltip-position=\"below\" matTooltipShowDelay=\"500\"\r\n [matTooltip]=\"'igo.geo.layer.legend.selectStyle' | translate\" [(ngModel)]=\"currentStyle\"\r\n (selectionChange)=\"onChangeStyle()\">\r\n <mat-option *ngFor=\"let style of styles\" [value]=\"style.name\">{{style.title}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div *ngIf=\"!(item.collapsed)\">\r\n <div *ngIf=\"item.url\">\r\n <img igoImageError *ngIf=\"item.imgGraphValue\" hideError=\"true\" #renderedLegend id=\"{{item.title}}\" (load)=\"onLoadImage(item.title)\"\r\n [src]=\"item.imgGraphValue\"\r\n alt=\"{{'igo.geo.layer.legend.loadingLegendText' | translate}}\">\r\n <small *ngIf=\"imagesHeight[item.title]<16\">\r\n {{'igo.geo.layer.legend.noLegendScale' | translate}}\r\n </small>\r\n </div>\r\n <div\r\n [ngStyle]=\"item.style\"\r\n [innerHTML]=\"item.html | sanitizeHtml\"\r\n *ngIf=\"item.html\">\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-template #noItems>\r\n <small>\r\n {{'igo.geo.layer.legend.noLegendText' | translate}}\r\n </small>\r\n </ng-template>\r\n\r\n</ng-container>\r\n", styles: [".igo-layer-legend.with-title{padding-left:18px}img:after{content:\" \";position:relative;height:17px;float:left;width:17px;top:-3px;right:19px;background-color:#fff;border:3px solid #f3f3f3;border-radius:50%;-webkit-animation:2s linear infinite spin;animation:2s linear infinite spin}@-moz-document url-prefix(){img:after{margin-left:19px}}@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}\n"] }]
|
|
380
380
|
}], function () { return [{ type: i1.CapabilitiesService }, { type: i2.LanguageService }, { type: i2.ConfigService }, { type: i3.HttpClient }, { type: i0.ChangeDetectorRef }]; }, { updateLegendOnResolutionChange: [{
|
|
381
381
|
type: Input
|
|
382
382
|
}], renderedLegends: [{
|
|
@@ -385,4 +385,4 @@ LayerLegendComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LayerL
|
|
|
385
385
|
}], layer: [{
|
|
386
386
|
type: Input
|
|
387
387
|
}] }); })();
|
|
388
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXItbGVnZW5kLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2xheWVyL2xheWVyLWxlZ2VuZC9sYXllci1sZWdlbmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvbGF5ZXIvbGF5ZXItbGVnZW5kL2xheWVyLWxlZ2VuZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBcUIsdUJBQXVCLEVBQUUsWUFBWSxFQUFpQyxNQUFNLGVBQWUsQ0FBQztBQUcxSSxPQUFPLEVBQWdCLGVBQWUsRUFBRSxFQUFFLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFNckUsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRCxPQUFPLEVBQUUsYUFBYSxFQUF3QixNQUFNLGtCQUFrQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQ1R2QyxxQ0FBa0Msa0JBQUE7SUFROUIsMFJBQVUsZUFBQSx5Q0FBOEIsQ0FBQSxJQUFDO0lBRTNDLGlCQUFXO0lBQ1gsNkJBQVk7SUFBQSxZQUFtQzs7SUFBQSxpQkFBSyxFQUFBOzs7Ozs7SUFMbEQsZUFBaUI7SUFBakIsNkJBQWlCLGdDQUFBO0lBS1AsZUFBbUM7SUFBbkMsc0ZBQW1DOzs7SUFRdkMsc0NBQThEO0lBQUEsWUFBZTtJQUFBLGlCQUFhOzs7SUFBakQsc0NBQW9CO0lBQUMsZUFBZTtJQUFmLHFDQUFlOzs7O0lBTHJGLDJCQUF3QyxxQkFBQSxvQkFBQTtJQUc4QixrU0FBMEIsa09BQ3JFLGVBQUEsdUJBQWUsQ0FBQSxJQURzRDs7SUFFeEYsNklBQTBGO0lBQzVGLGlCQUFhLEVBQUEsRUFBQTs7O0lB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QyxDQUFDLENBQUM7WUFDN0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7U0FDbkQ7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUFDLEVBQVU7UUFDcEIsSUFBSSxPQUF5QixDQUFDO1FBQzlCLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3JDLE9BQU8sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxhQUFpQyxDQUFDO1NBQ3hFO2FBQU07WUFDTCxPQUFPLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxhQUFpQyxDQUFDO1NBQ2pJO1FBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDO0lBQ3pDLENBQUM7O3dGQXRPVSxvQkFBb0I7dUVBQXBCLG9CQUFvQjs7Ozs7O1FDckJqQyx1RkFxRGU7OztRQXJEQSw2REFBMkI7O3VGRHFCN0Isb0JBQW9CO2NBTmhDLFNBQVM7MkJBQ0Usa0JBQWtCLG1CQUdYLHVCQUF1QixDQUFDLE1BQU07eUxBSXRDLDhCQUE4QjtrQkFBdEMsS0FBSztZQWtDMEIsZUFBZTtrQkFBOUMsWUFBWTttQkFBQyxnQkFBZ0I7WUFVckIsS0FBSztrQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgT25EZXN0cm95LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgVmlld0NoaWxkcmVuLCBFbGVtZW50UmVmLCBDaGFuZ2VEZXRlY3RvclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHR5cGUgeyBRdWVyeUxpc3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uLCBCZWhhdmlvclN1YmplY3QsIG9mLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IExlZ2VuZCB9IGZyb20gJy4uLy4uL2RhdGFzb3VyY2Uvc2hhcmVkL2RhdGFzb3VyY2VzL2RhdGFzb3VyY2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IExheWVyLCBJdGVtU3R5bGVPcHRpb25zIH0gZnJvbSAnLi4vc2hhcmVkL2xheWVycyc7XG5pbXBvcnQgeyBMZWdlbmRNYXBWaWV3T3B0aW9ucyB9IGZyb20gJy4uL3NoYXJlZC9sYXllcnMvbGF5ZXIuaW50ZXJmYWNlJztcbmltcG9ydCB7IENhcGFiaWxpdGllc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9kYXRhc291cmNlL3NoYXJlZC9jYXBhYmlsaXRpZXMuc2VydmljZSc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBMYW5ndWFnZVNlcnZpY2UsIENvbmZpZ1NlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlJztcbmltcG9ydCB7IFdNU0RhdGFTb3VyY2UsIFdNU0RhdGFTb3VyY2VPcHRpb25zIH0gZnJvbSAnLi4vLi4vZGF0YXNvdXJjZSc7XG5pbXBvcnQgeyBTZWN1cmVJbWFnZVBpcGUgfSBmcm9tICdAaWdvMi9jb21tb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpZ28tbGF5ZXItbGVnZW5kJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xheWVyLWxlZ2VuZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2xheWVyLWxlZ2VuZC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBMYXllckxlZ2VuZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBASW5wdXQoKSB1cGRhdGVMZWdlbmRPblJlc29sdXRpb25DaGFuZ2U6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogT2JzZXJ2YWJsZSBvZiB0aGUgbGVnZW5kIGl0ZW1zXG4gICAqL1xuICBsZWdlbmRJdGVtcyQ6IEJlaGF2aW9yU3ViamVjdDxMZWdlbmRbXT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KFtdKTtcblxuICAvKipcbiAgICogU3Vic2NyaXB0aW9uIHRvIHRoZSBtYXAncyByZXNvbHV0aW9uXG4gICAqL1xuICBwcml2YXRlIHN0YXRlJCQ6IFN1YnNjcmlwdGlvbjtcblxuICAvKipcbiAgICogVGhlIGF2YWlsYWJsZSBzdHlsZXNcbiAgICovXG4gIHB1YmxpYyBzdHlsZXM7XG5cbiAgLyoqXG4gICAqIFRoZSBzdHlsZSB1c2VkIHRvIG1ha2UgdGhlIGxlZ2VuZFxuICAgKi9cbiAgcHVibGljIGN1cnJlbnRTdHlsZTtcblxuICAvKipcbiAgICogVGhlIHNjYWxlIHVzZWQgdG8gbWFrZSB0aGUgbGVnZW5kXG4gICAqL1xuICBwcml2YXRlIHNjYWxlOiBudW1iZXIgPSB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFRoZSBleHRlbnQgdXNlZCB0byBtYWtlIHRoZSBsZWdlbmRcbiAgICovXG4gIHByaXZhdGUgdmlldzogTGVnZW5kTWFwVmlld09wdGlvbnMgPSB1bmRlZmluZWQ7XG4gIC8qKlxuICAgKiBHZXQgbGlzdCBvZiBpbWFnZXMgZGlzcGxheVxuICAgKi9cbiAgQFZpZXdDaGlsZHJlbigncmVuZGVyZWRMZWdlbmQnKSByZW5kZXJlZExlZ2VuZHM6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPjtcblxuICAvKipcbiAgICogTGlzdCBvZiBzaXplIG9mIGltYWdlcyBkaXNwbGF5ZWRcbiAgICovXG4gIHB1YmxpYyBpbWFnZXNIZWlnaHQ6IHsgW3NyY0tleTogc3RyaW5nXTogbnVtYmVyIH0gPSB7fTtcblxuICAvKipcbiAgICogTGF5ZXJcbiAgICovXG4gIEBJbnB1dCgpIGxheWVyOiBMYXllcjtcblxuICAvKipcbiAgICogaWYgZ2V0TGVnZW5kR3JhcGhpYyBpcyBhdXRob3JpemVkXG4gICAqL1xuICBwdWJsaWMgZ2V0TGVnZW5kID0gdHJ1ZTtcblxuICAvKipcbiAgICogYWN0aXZlTGVnZW5kXG4gICAqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY2FwYWJpbGl0aWVzU2VydmljZTogQ2FwYWJpbGl0aWVzU2VydmljZSxcbiAgICBwcml2YXRlIGxhbmd1YWdlU2VydmljZTogTGFuZ3VhZ2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29uZmlnU2VydmljZTogQ29uZmlnU2VydmljZSxcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgcHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgLyoqXG4gICAqIE9uIGluaXQsIHN1YnNjcmliZSB0byB0aGUgbWFwJ3MgcmVzb2x1dGlvbiBhbmQgdXBkYXRlIHRoZSBsZWdlbmQgYWNjb3JkaW5nbHlcbiAgICovXG4gIG5nT25Jbml0KCkge1xuICAgIGxldCBsYXN0bExlZ2VuZCA9IHRoaXMubGF5ZXIubGVnZW5kO1xuICAgIHRoaXMuc3R5bGVzID0gdGhpcy5saXN0U3R5bGVzKCk7XG4gICAgY29uc3Qgc291cmNlT3B0aW9ucyA9IHRoaXMubGF5ZXIub3B0aW9ucy5zb3VyY2Uub3B0aW9ucyBhcyBhbnk7XG4gICAgaWYgKHNvdXJjZU9wdGlvbnMgJiYgc291cmNlT3B0aW9ucy5wYXJhbXMgJiYgc291cmNlT3B0aW9ucy5wYXJhbXMuU1RZTEVTKSB7XG4gICAgICAvLyBpZiBhIHN0eWxlcyBpcyBwcm92aWRlZCBpbnRvIHRoZSBsYXllcnMgd21zIHBhcmFtc1xuICAgICAgdGhpcy5jdXJyZW50U3R5bGUgPSB0aGlzLnN0eWxlcy5maW5kKHN0eWxlID0+IHN0eWxlLm5hbWUgPT09IHNvdXJjZU9wdGlvbnMucGFyYW1zLlNUWUxFUykubmFtZTtcbiAgICB9IGVsc2UgaWYgKCFsYXN0bExlZ2VuZCkge1xuICAgICAgLy8gaWYgbm8gbGVnZW5kIGlzIG1hbnVhbGx5IHByb3ZpZGVkXG4gICAgICBpZiAodGhpcy5zdHlsZXMgJiYgdGhpcy5zdHlsZXMubGVuZ3RoID4gMSkge1xuICAgICAgICB0aGlzLmN1cnJlbnRTdHlsZSA9IHRoaXMuc3R5bGVzWzBdLm5hbWU7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICh0aGlzLnN0eWxlcyAmJiB0aGlzLnN0eWxlcy5sZW5ndGggPiAxKSB7XG4gICAgICB0aGlzLmN1cnJlbnRTdHlsZSA9IGxhc3RsTGVnZW5kWzBdLmN1cnJlbnRTdHlsZTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiB0aGlzLmxheWVyLm9wdGlvbnMubGVnZW5kT3B0aW9ucyAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5sYXllci5vcHRpb25zLmxlZ2VuZE9wdGlvbnMuZGlzcGxheSA9PT0gZmFsc2UpIHtcbiAgICAgIGxhc3RsTGVnZW5kID0gW107XG4gICAgfSBlbHNlIHtcbiAgICAgIGxhc3RsTGVnZW5kID0gdGhpcy5sYXllci5kYXRhU291cmNlLmdldExlZ2VuZCh0aGlzLmN1cnJlbnRTdHlsZSwgdGhpcy52aWV3KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy51cGRhdGVMZWdlbmRPblJlc29sdXRpb25DaGFuZ2UgfHwgKHNvdXJjZU9wdGlvbnMgYXMgV01TRGF0YVNvdXJjZU9wdGlvbnMpLmNvbnRlbnREZXBlbmRlbnRMZWdlbmQpIHtcbiAgICAgIGNvbnN0IHN0YXRlJCA9IHRoaXMubGF5ZXIubWFwLnZpZXdDb250cm9sbGVyLnN0YXRlJDtcbiAgICAgIHRoaXMuc3RhdGUkJCA9IHN0YXRlJC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5vblZpZXdDb250cm9sbGVyU3RhdGVDaGFuZ2UoKSk7XG4gICAgfSBlbHNlIGlmIChsYXN0bExlZ2VuZCAmJiBsYXN0bExlZ2VuZC5sZW5ndGggIT09IDApIHtcbiAgICAgIHRoaXMubGVnZW5kSXRlbXMkLm5leHQobGFzdGxMZWdlbmQpO1xuICAgICAgZm9yIChjb25zdCBsZWdlbmQgb2YgbGFzdGxMZWdlbmQpIHtcbiAgICAgICAgdGhpcy5nZXRMZWdlbmRHcmFwaGljKGxlZ2VuZCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE9uIGRlc3Ryb3ksIHVuc3Vic2NyaWJlIHRvIHRoZSBtYXAncyB2aWV3IHN0YXRlXG4gICAqL1xuICBuZ09uRGVzdHJveSgpIHtcbiAgICBpZiAodGhpcy5zdGF0ZSQkICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuc3RhdGUkJC51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgfVxuXG4gIGdldExlZ2VuZEdyYXBoaWMoaXRlbTogTGVnZW5kKSB7XG4gICAgaWYgKGl0ZW0udXJsKSB7XG4gICAgICBjb25zdCBzZWN1cmVJTUcgPSBuZXcgU2VjdXJlSW1hZ2VQaXBlKHRoaXMuaHR0cCwgdGhpcy5jb25maWdTZXJ2aWNlKTtcbiAgICAgIHNlY3VyZUlNRy50cmFuc2Zvcm0oaXRlbS51cmwpLnBpcGUoXG4gICAgICAgIGNhdGNoRXJyb3IoKGVycikgPT4ge1xuICAgICAgICAgIGlmIChlcnIuZXJyb3IpIHtcbiAgICAgICAgICAgIGVyci5lcnJvci5jYXVnaHQgPSB0cnVlO1xuICAgICAgICAgICAgdGhpcy5nZXRMZWdlbmQgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICAgICAgcmV0dXJuIGVycjtcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICAgICkuc3Vic2NyaWJlKG9ic0xlZ0dyYXBoID0+IHtcbiAgICAgICAgICBjb25zdCBpZHggPSB0aGlzLmxlZ2VuZEl0ZW1zJC52YWx1ZS5maW5kSW5kZXgobGVnID0+IGxlZy50aXRsZSA9PT0gaXRlbS50aXRsZSk7XG4gICAgICAgICAgY29uc3QgbGVnZW5kR3JhcGggPSBvYnNMZWdHcmFwaCBhcyBzdHJpbmc7XG4gICAgICAgICAgdGhpcy5sZWdlbmRJdGVtcyQudmFsdWVbaWR4XS5pbWdHcmFwaFZhbHVlID0gbGVnZW5kR3JhcGg7XG4gICAgICAgICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH1cbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgdG9nZ2xlTGVnZW5kSXRlbShjb2xsYXBzZWQ6IGJvb2xlYW4sIGl0ZW06IExlZ2VuZCkge1xuICAgIGl0ZW0uY29sbGFwc2VkID0gY29sbGFwc2VkO1xuICB9XG5cbiAgcHJpdmF0ZSB0cmFuc2ZlcnRUb2dnbGVMZWdlbmRJdGVtKG5ld0xlZ2VuZHM6IExlZ2VuZFtdKTogTGVnZW5kW10ge1xuICAgIGNvbnN0IG91dExlZ2VuZHM6IExlZ2VuZFtdID0gbmV3TGVnZW5kcztcbiAgICBjb25zdCBsYXN0TGVnZW5kcyA9IHRoaXMubGF5ZXIubGVnZW5kO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGFzdExlZ2VuZHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIG91dExlZ2VuZHNbaV0uY29sbGFwc2VkID0gbGFzdExlZ2VuZHNbaV0uY29sbGFwc2VkO1xuICAgfVxuICAgIHJldHVybiBvdXRMZWdlbmRzO1xuICB9XG5cbiAgY29tcHV0ZUl0ZW1UaXRsZShsYXllckxlZ2VuZCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgY29uc3QgbGF5ZXJPcHRpb25zID0gdGhpcy5sYXllci5kYXRhU291cmNlLm9wdGlvbnMgYXMgYW55O1xuICAgIGlmIChsYXllck9wdGlvbnMudHlwZSAhPT0gJ3dtcycpIHtcbiAgICAgIHJldHVybiBvZihsYXllckxlZ2VuZC50aXRsZSk7XG4gICAgfVxuXG4gICAgY29uc3QgbGF5ZXJzID0gbGF5ZXJPcHRpb25zLnBhcmFtcy5MQVlFUlMuc3BsaXQoJywnKTtcbiAgICBjb25zdCBsb2NhbExheWVyT3B0aW9ucyA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkobGF5ZXJPcHRpb25zKSk7IC8vIHRvIGF2b2lkIHRvIGFsdGVyIHRoZSBvcmlnaW5hbCBvcHRpb25zLlxuICAgIGxvY2FsTGF5ZXJPcHRpb25zLnBhcmFtcy5MQVlFUlMgPSBsYXllcnMuZmluZChsYXllciA9PiBsYXllciA9PT0gbGF5ZXJMZWdlbmQudGl0bGUpO1xuICAgIHJldHVybiB0aGlzLmNhcGFiaWxpdGllc1NlcnZpY2VcbiAgICAgIC5nZXRXTVNPcHRpb25zKGxvY2FsTGF5ZXJPcHRpb25zKVxuICAgICAgLnBpcGUobWFwKHdtc0RhdGFTb3VyY2VPcHRpb25zID0+IHtcbiAgICAgICAgcmV0dXJuIHdtc0RhdGFTb3VyY2VPcHRpb25zLl9sYXllck9wdGlvbnNGcm9tU291cmNlLnRpdGxlO1xuICAgICAgfSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIE9uIHJlc29sdXRpb24gY2hhbmdlLCBjb21wdXRlIHRoZSBlZmZlY3RpdmUgc2NhbGUgbGV2ZWwgYW5kIHVwZGF0ZSB0aGVcbiAgICogbGVnZW5kIGFjY29yZGluZ2x5LlxuICAgKiBAcGFyYW0gcmVzb2x1dGlvbiBNYXAgcmVzb2x1dGlvblxuICAgKi9cbiAgcHJpdmF0ZSBvblZpZXdDb250cm9sbGVyU3RhdGVDaGFuZ2UoKSB7XG4gICAgdGhpcy52aWV3ID0ge1xuICAgICAgcmVzb2x1dGlvbjogdGhpcy5sYXllci5tYXAudmlld0NvbnRyb2xsZXIuZ2V0UmVzb2x1dGlvbigpLFxuICAgICAgZXh0ZW50OiB0aGlzLmxheWVyLm1hcC52aWV3Q29udHJvbGxlci5nZXRFeHRlbnQoKSxcbiAgICAgIHByb2plY3Rpb246IHRoaXMubGF5ZXIubWFwLnZpZXdDb250cm9sbGVyLmdldE9sUHJvamVjdGlvbigpLmdldENvZGUoKSxcbiAgICAgIHNjYWxlOiB0aGlzLmxheWVyLm1hcC52aWV3Q29udHJvbGxlci5nZXRTY2FsZSgpLFxuICAgICAgc2l6ZTogdGhpcy5sYXllci5tYXAub2wuZ2V0U2l6ZSgpXG4gICAgfSBhcyBMZWdlbmRNYXBWaWV3T3B0aW9ucztcbiAgICB0aGlzLnVwZGF0ZUxlZ2VuZCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSB0aGUgbGVnZW5kIHdpdGggc2NhbGUgbGV2ZWwgYW5kIHN0eWxlIGRlZmluZVxuICAgKi9cbiAgcHJpdmF0ZSB1cGRhdGVMZWdlbmQoKSB7XG4gICAgbGV0IGxlZ2VuZEl0ZW1zID0gdGhpcy5sYXllci5kYXRhU291cmNlLmdldExlZ2VuZCh0aGlzLmN1cnJlbnRTdHlsZSwgdGhpcy52aWV3KTtcbiAgICBpZiAodGhpcy5sYXllci5sZWdlbmQgJiYgdGhpcy5sYXllci5sZWdlbmQubGVuZ3RoID4gMSkgeyBsZWdlbmRJdGVtcyA9IHRoaXMudHJhbnNmZXJ0VG9nZ2xlTGVnZW5kSXRlbShsZWdlbmRJdGVtcyk7IH1cbiAgICB0aGlzLmxheWVyLmxlZ2VuZCA9IGxlZ2VuZEl0ZW1zO1xuXG4gICAgaWYgKGxlZ2VuZEl0ZW1zLmxlbmd0aCA9PT0gMCAmJiB0aGlzLmxlZ2VuZEl0ZW1zJC52YWx1ZS5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5sZWdlbmRJdGVtcyQubmV4dChsZWdlbmRJdGVtcyk7XG4gICAgZm9yIChjb25zdCBsZWdlbmQgb2YgdGhpcy5sZWdlbmRJdGVtcyQudmFsdWUpIHtcbiAgICAgIHRoaXMuZ2V0TGVnZW5kR3JhcGhpYyhsZWdlbmQpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgbGlzdFN0eWxlcygpIHtcbiAgICBjb25zdCBsYXllck9wdGlvbnMgPSB0aGlzLmxheWVyLm9wdGlvbnM7XG4gICAgaWYgKGxheWVyT3B0aW9ucyAmJiBsYXllck9wdGlvbnMubGVnZW5kT3B0aW9ucykge1xuICAgICAgY29uc3QgdHJhbnNsYXRlID0gdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlO1xuICAgICAgY29uc3QgdGl0bGUgPSB0cmFuc2xhdGUuaW5zdGFudCgnaWdvLmdlby5sYXllci5sZWdlbmQuZGVmYXVsdCcpO1xuICAgICAgbGV0IHN0eWxlc0F2YWlsYWJsZSA9IFt7IG5hbWU6ICcnLCB0aXRsZSB9IGFzIEl0ZW1TdHlsZU9wdGlvbnNdO1xuICAgICAgaWYgKGxheWVyT3B0aW9ucy5sZWdlbmRPcHRpb25zLnN0eWxlc0F2YWlsYWJsZSkge1xuICAgICAgICBzdHlsZXNBdmFpbGFibGUgPSBzdHlsZXNBdmFpbGFibGUuY29uY2F0KGxheWVyT3B0aW9ucy5sZWdlbmRPcHRpb25zLnN0eWxlc0F2YWlsYWJsZS5maWx0ZXIoc0EgPT4gKFxuICAgICAgICAgIHNBLm5hbWUubm9ybWFsaXplKCdORkQnKS5yZXBsYWNlKC9bXFx1MDMwMC1cXHUwMzZmXS9naSwgJycpICE9PSAnZGVmYXVsdCcgJiZcbiAgICAgICAgICBzQS5uYW1lLm5vcm1hbGl6ZSgnTkZEJykucmVwbGFjZSgvW1xcdTAzMDAtXFx1MDM2Zl0vZ2ksICcnKSAhPT0gJ2RlZmF1dCcpKSk7XG4gICAgICB9XG4gICAgICBzdHlsZXNBdmFpbGFibGUuZmlsdGVyKHNhID0+ICFzYS50aXRsZSkubWFwKChzYSkgPT4gc2EudGl0bGUgPSBzYS5uYW1lKTtcbiAgICAgIHN0eWxlc0F2YWlsYWJsZS5tYXAocyA9PiBzLnRpdGxlID0gcy50aXRsZS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHMudGl0bGUuc2xpY2UoMSkucmVwbGFjZSgvXy9nLCAnICcpKTtcbiAgICAgIHJldHVybiBzdHlsZXNBdmFpbGFibGU7XG4gICAgfVxuICAgIHJldHVybiA7XG4gIH1cblxuICBvbkNoYW5nZVN0eWxlKCkge1xuICAgIHRoaXMudXBkYXRlTGVnZW5kKCk7XG4gICAgbGV0IFNUWUxFUyA9ICcnO1xuICAgIGlmICh0aGlzLmxheWVyLmRhdGFTb3VyY2UgaW5zdGFuY2VvZiBXTVNEYXRhU291cmNlKSB7XG4gICAgICB0aGlzLmxheWVyLmRhdGFTb3VyY2Uub2wuZ2V0UGFyYW1zKCkuTEFZRVJTLnNwbGl0KCcsJykubWFwKGxheWVyID0+XG4gICAgICAgIFNUWUxFUyArPSB0aGlzLmN1cnJlbnRTdHlsZSArICcsJ1xuICAgICAgKTtcbiAgICAgIFNUWUxFUyA9IFNUWUxFUy5zbGljZSgwLCAtMSk7XG4gICAgICB0aGlzLmxheWVyLmRhdGFTb3VyY2Uub2wudXBkYXRlUGFyYW1zKHsgU1RZTEVTIH0pO1xuICAgIH1cbiAgfVxuXG4gIG9uTG9hZEltYWdlKGlkOiBzdHJpbmcpIHtcbiAgICBsZXQgZWxlbVJlZjogSFRNTEltYWdlRWxlbWVudDtcbiAgICBpZiAodGhpcy5yZW5kZXJlZExlZ2VuZHMubGVuZ3RoID09PSAxKSB7XG4gICAgICBlbGVtUmVmID0gdGhpcy5yZW5kZXJlZExlZ2VuZHMuZmlyc3QubmF0aXZlRWxlbWVudCBhcyBIVE1MSW1hZ2VFbGVtZW50O1xuICAgIH0gZWxzZSB7XG4gICAgICBlbGVtUmVmID0gdGhpcy5yZW5kZXJlZExlZ2VuZHMuZmluZChyZW5kZXJlZExlZ2VuZCA9PiByZW5kZXJlZExlZ2VuZC5uYXRpdmVFbGVtZW50LmlkID09PSBpZCkubmF0aXZlRWxlbWVudCBhcyBIVE1MSW1hZ2VFbGVtZW50O1xuICAgIH1cbiAgICB0aGlzLmltYWdlc0hlaWdodFtpZF0gPSBlbGVtUmVmLmhlaWdodDtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImxlZ2VuZEl0ZW1zJCB8IGFzeW5jIGFzIGl0ZW1zXCI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJpdGVtcy5sZW5ndGg7IGVsc2Ugbm9JdGVtc1wiPlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXMuc2xpY2UoKS5yZXZlcnNlKClcIiAjcmVuZGVyZWRMZWdlbmRzPlxuICAgICAgPGRpdiAqbmdJZj1cImdldExlZ2VuZDsgZWxzZSBub0l0ZW1zXCI+XG4gICAgICAgIDxtYXQtbGlzdC1pdGVtICpuZ0lmPVwiaXRlbS50aXRsZVwiPlxuICAgICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICAgaWQ9XCJsZWdlbmQtdG9nZ2xlXCJcbiAgICAgICAgICAgIGNsYXNzPVwiaWdvLWNoZXZyb25cIlxuICAgICAgICAgICAgbWF0LWxpc3QtYXZhdGFyXG4gICAgICAgICAgICBpZ29Db2xsYXBzZVxuICAgICAgICAgICAgW3RhcmdldF09XCJsZWdlbmRcIlxuICAgICAgICAgICAgW2NvbGxhcHNlZF09XCIoaXRlbS5jb2xsYXBzZWQpXCJcbiAgICAgICAgICAgICh0b2dnbGUpPVwidG9nZ2xlTGVnZW5kSXRlbSgkZXZlbnQsIGl0ZW0pXCJcbiAgICAgICAgICAgIHN2Z0ljb249XCJjaGV2cm9uLXVwXCI+XG4gICAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgICA8aDQgbWF0TGluZT57e2NvbXB1dGVJdGVtVGl0bGUoaXRlbSkgfCBhc3luY319IDwvaDQ+XG4gICAgICAgIDwvbWF0LWxpc3QtaXRlbT5cbiAgICAgICAgPGRpdiAjbGVnZW5kIGNsYXNzPVwiaWdvLWxheWVyLWxlZ2VuZFwiIFtuZ0NsYXNzXT1cInsnd2l0aC10aXRsZSc6IGl0ZW0udGl0bGV9XCI+XG4gICAgICAgICAgPGRpdiAqbmdJZj1cImN1cnJlbnRTdHlsZSAhPT0gdW5kZWZpbmVkXCI+XG4gICAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICAgICAgICA8bWF0LXNlbGVjdCB0b29sdGlwLXBvc2l0aW9uPVwiYmVsb3dcIiBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcbiAgICAgICAgICAgICAgICAgIFttYXRUb29sdGlwXT1cIidpZ28uZ2VvLmxheWVyLmxlZ2VuZC5zZWxlY3RTdHlsZScgfCB0cmFuc2xhdGVcIiBbKG5nTW9kZWwpXT1cImN1cnJlbnRTdHlsZVwiXG4gICAgICAgICAgICAgICAgICAoc2VsZWN0aW9uQ2hhbmdlKT1cIm9uQ2hhbmdlU3R5bGUoKVwiPlxuICAgICAgICAgICAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IHN0eWxlIG9mIHN0eWxlc1wiIFt2YWx1ZV09XCJzdHlsZS5uYW1lXCI+e3tzdHlsZS50aXRsZX19PC9tYXQtb3B0aW9uPlxuICAgICAgICAgICAgICAgIDwvbWF0LXNlbGVjdD5cbiAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiAqbmdJZj1cIiEoaXRlbS5jb2xsYXBzZWQpXCI+XG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaXRlbS51cmxcIj5cbiAgICAgICAgICAgICAgPGltZyBpZ29JbWFnZUVycm9yICpuZ0lmPVwiaXRlbS5pbWdHcmFwaFZhbHVlXCIgaGlkZUVycm9yPVwidHJ1ZVwiICNyZW5kZXJlZExlZ2VuZCBpZD1cInt7aXRlbS50aXRsZX19XCIgKGxvYWQpPVwib25Mb2FkSW1hZ2UoaXRlbS50aXRsZSlcIlxuICAgICAgICAgICAgICAgIFtzcmNdPVwiaXRlbS5pbWdHcmFwaFZhbHVlXCJcbiAgICAgICAgICAgICAgICBhbHQ9XCJ7eydpZ28uZ2VvLmxheWVyLmxlZ2VuZC5sb2FkaW5nTGVnZW5kVGV4dCcgfCB0cmFuc2xhdGV9fVwiPlxuICAgICAgICAgICAgICA8c21hbGwgKm5nSWY9XCJpbWFnZXNIZWlnaHRbaXRlbS50aXRsZV08MTZcIj5cbiAgICAgICAgICAgICAgICAgIHt7J2lnby5nZW8ubGF5ZXIubGVnZW5kLm5vTGVnZW5kU2NhbGUnIHwgdHJhbnNsYXRlfX1cbiAgICAgICAgICAgICAgPC9zbWFsbD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBbbmdTdHlsZV09XCJpdGVtLnN0eWxlXCJcbiAgICAgICAgICAgICAgW2lubmVySFRNTF09XCJpdGVtLmh0bWwgfCBzYW5pdGl6ZUh0bWxcIlxuICAgICAgICAgICAgICAqbmdJZj1cIml0ZW0uaHRtbFwiPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvbmctY29udGFpbmVyPlxuXG4gIDxuZy10ZW1wbGF0ZSAjbm9JdGVtcz5cbiAgICA8c21hbGw+XG4gICAgICB7eydpZ28uZ2VvLmxheWVyLmxlZ2VuZC5ub0xlZ2VuZFRleHQnIHwgdHJhbnNsYXRlfX1cbiAgICA8L3NtYWxsPlxuICA8L25nLXRlbXBsYXRlPlxuXG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
388
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXItbGVnZW5kLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2xheWVyL2xheWVyLWxlZ2VuZC9sYXllci1sZWdlbmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvbGF5ZXIvbGF5ZXItbGVnZW5kL2xheWVyLWxlZ2VuZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBcUIsdUJBQXVCLEVBQUUsWUFBWSxFQUFpQyxNQUFNLGVBQWUsQ0FBQztBQUcxSSxPQUFPLEVBQWdCLGVBQWUsRUFBRSxFQUFFLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFNckUsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRCxPQUFPLEVBQUUsYUFBYSxFQUF3QixNQUFNLGtCQUFrQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQ1R2QyxxQ0FBa0Msa0JBQUE7SUFROUIsMFJBQVUsZUFBQSx5Q0FBOEIsQ0FBQSxJQUFDO0lBRTNDLGlCQUFXO0lBQ1gsNkJBQVk7SUFBQSxZQUFtQzs7SUFBQSxpQkFBSyxFQUFBOzs7Ozs7SUFMbEQsZUFBaUI7SUFBakIsNkJBQWlCLGdDQUFBO0lBS1AsZUFBbUM7SUFBbkMsc0ZBQW1DOzs7SUFRdkMsc0NBQThEO0lBQUEsWUFBZTtJQUFBLGlCQUFhOzs7SUFBakQsc0NBQW9CO0lBQUMsZUFBZTtJQUFmLHFDQUFlOzs7O0lBTHJGLDJCQUF3QyxxQkFBQSxvQkFBQTtJQUc4QixrU0FBMEIsa09BQ3JFLGVBQUEsdUJBQWUsQ0FBQSxJQURzRDs7SUFFeEYsNklBQTBGO0lBQzVGLGlCQUFhLEVBQUEsRUFBQTs7O0lBSFgsZUFBNkQ7SUFBN0QscUZBQTZELGlDQUFBO0lBRS9CLGVBQVM7SUFBVCx3Q0FBUzs7OztJQU0zQyxtQ0FFaUU7SUFGa0MsNlFBQVEsZUFBQSxrQ0FBdUIsQ0FBQSxJQUFDOztJQUFuSSxpQkFFaUU7OztJQUZjLDZDQUFtQjtJQUVoRywrRkFBOEQ7SUFEOUQsNkRBQTBCOzs7SUFFNUIsNkJBQTJDO0lBQ3ZDLFlBQ0o7O0lBQUEsaUJBQVE7O0lBREosZUFDSjtJQURJLDJGQUNKOzs7SUFORiwyQkFBc0I7SUFDcEIscUlBRWlFO0lBQ2pFLHdJQUVRO0lBQ1YsaUJBQU07Ozs7SUFOZ0IsZUFBd0I7SUFBeEIsNENBQXdCO0lBR3BDLGVBQWlDO0lBQWpDLCtEQUFpQzs7O0lBSTNDLDBCQUlNOzs7O0lBSEosdUNBQXNCLG9FQUFBOzs7SUFWMUIsMkJBQStCO0lBQzdCLDhIQU9NO0lBQ04sK0hBSU07SUFDUixpQkFBTTs7O0lBYkUsZUFBYztJQUFkLGtDQUFjO0lBV2pCLGVBQWU7SUFBZixtQ0FBZTs7OztJQXBDeEIsMkJBQXFDO0lBQ25DLDRJQVlnQjtJQUNoQixpQ0FBNkU7SUFDM0Usd0hBUU07SUFDTix3SEFjTTtJQUNSLGlCQUFNLEVBQUE7Ozs7SUF0Q1UsZUFBZ0I7SUFBaEIsb0NBQWdCO0lBYU0sZUFBc0M7SUFBdEMsbUVBQXNDO0lBQ3BFLGVBQWdDO0lBQWhDLHdEQUFnQztJQVNoQyxlQUF1QjtJQUF2Qix5Q0FBdUI7OztJQXpCbkMsc0NBQTRFO0lBQzFFLGtIQXdDTTtJQUNSLDBCQUFlOzs7OztJQXpDUCxlQUFpQjtJQUFqQix1Q0FBaUIsaUJBQUE7OztJQUYzQiw2QkFBaUQ7SUFDL0MscUhBMENlO0lBQ2pCLDBCQUFlOzs7SUEzQ2tCLGVBQTBCO0lBQTFCLG9EQUEwQjs7O0lBOEN6RCw2QkFBTztJQUNMLFlBQ0Y7O0lBQUEsaUJBQVE7O0lBRE4sZUFDRjtJQURFLDBGQUNGOzs7SUFsREosNkJBQW9EO0lBQ2xELHNHQTRDZTtJQUVmLHFJQUljO0lBRWhCLDBCQUFlOzs7O0lBcERFLGVBQW9CO0lBQXBCLHNDQUFvQixpQkFBQTs7QURvQnJDLE1BQU0sT0FBTyxvQkFBb0I7SUFxRC9COztPQUVHO0lBRUgsWUFDVSxtQkFBd0MsRUFDeEMsZUFBZ0MsRUFDaEMsYUFBNEIsRUFDNUIsSUFBZ0IsRUFDaEIsS0FBd0I7UUFKeEIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4QyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixVQUFLLEdBQUwsS0FBSyxDQUFtQjtRQTVEekIsbUNBQThCLEdBQVksS0FBSyxDQUFDO1FBRXpEOztXQUVHO1FBQ0gsaUJBQVksR0FBOEIsSUFBSSxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUM7UUFpQmxFOztXQUVHO1FBQ0ssVUFBSyxHQUFXLFNBQVMsQ0FBQztRQUVsQzs7V0FFRztRQUNLLFNBQUksR0FBeUIsU0FBUyxDQUFDO1FBTS9DOztXQUVHO1FBQ0ksaUJBQVksR0FBaUMsRUFBRSxDQUFDO1FBT3ZEOztXQUVHO1FBQ0ksY0FBUyxHQUFHLElBQUksQ0FBQztJQVdhLENBQUM7SUFFdEM7O09BRUc7SUFDSCxRQUFRO1FBQ04sSUFBSSxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDcEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDaEMsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQWMsQ0FBQztRQUMvRCxJQUFJLGFBQWEsSUFBSSxhQUFhLENBQUMsTUFBTSxJQUFJLGFBQWEsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO1lBQ3hFLHFEQUFxRDtZQUNyRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxhQUFhLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQztTQUNoRzthQUFNLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDdkIsb0NBQW9DO1lBQ3BDLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQ3pDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7YUFDekM7U0FDRjthQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDaEQsSUFBSSxDQUFDLFlBQVksR0FBRyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDO1NBQ2pEO1FBQ0QsSUFBSSxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGFBQWEsS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLE9BQU8sS0FBSyxLQUFLLEVBQUU7WUFDakgsV0FBVyxHQUFHLEVBQUUsQ0FBQztTQUNsQjthQUFNO1lBQ0wsV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM3RTtRQUVELElBQUksSUFBSSxDQUFDLDhCQUE4QixJQUFLLGFBQXNDLENBQUMsc0JBQXNCLEVBQUU7WUFDekcsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQztZQUNwRCxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQUMsQ0FBQztTQUMzRTthQUFNLElBQUksV0FBVyxJQUFJLFdBQVcsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ2xELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ3BDLEtBQUssTUFBTSxNQUFNLElBQUksV0FBVyxFQUFFO2dCQUNoQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDL0I7U0FDRjtJQUNILENBQUM7SUFFRDs7T0FFRztJQUNILFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxPQUFPLEtBQUssU0FBUyxFQUFFO1lBQzlCLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDNUI7SUFDSCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsSUFBWTtRQUMzQixJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDWixNQUFNLFNBQVMsR0FBRyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUNyRSxTQUFTLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQ2hDLFVBQVUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO2dCQUNqQixJQUFJLEdBQUcsQ0FBQyxLQUFLLEVBQUU7b0JBQ2IsR0FBRyxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO29CQUN4QixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztvQkFDdkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztvQkFDM0IsT0FBTyxHQUFHLENBQUM7aUJBQ1o7WUFDSCxDQUFDLENBQUMsQ0FDRCxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsRUFBRTtnQkFDeEIsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQy9FLE1BQU0sV0FBVyxHQUFHLFdBQXFCLENBQUM7Z0JBQzFDLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLGFBQWEsR0FBRyxXQUFXLENBQUM7Z0JBQ3pELElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDN0IsQ0FBQyxDQUNGLENBQUM7U0FDSDtJQUNILENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxTQUFrQixFQUFFLElBQVk7UUFDL0MsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7SUFDN0IsQ0FBQztJQUVPLHlCQUF5QixDQUFDLFVBQW9CO1FBQ3BELE1BQU0sVUFBVSxHQUFhLFVBQVUsQ0FBQztRQUN4QyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUN0QyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUMzQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7U0FDckQ7UUFDQSxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsV0FBVztRQUMxQixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxPQUFjLENBQUM7UUFDMUQsSUFBSSxZQUFZLENBQUMsSUFBSSxLQUFLLEtBQUssRUFBRTtZQUMvQixPQUFPLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDOUI7UUFFRCxNQUFNLE1BQU0sR0FBRyxZQUFZLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDckQsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLDBDQUEwQztRQUM5RyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEtBQUssV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BGLE9BQU8sSUFBSSxDQUFDLG1CQUFtQjthQUM1QixhQUFhLENBQUMsaUJBQWlCLENBQUM7YUFDaEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFO1lBQy9CLE9BQU8sb0JBQW9CLENBQUMsdUJBQXVCLENBQUMsS0FBSyxDQUFDO1FBQzVELENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDUixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLDJCQUEyQjtRQUNqQyxJQUFJLENBQUMsSUFBSSxHQUFHO1lBQ1YsVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxhQUFhLEVBQUU7WUFDekQsTUFBTSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxTQUFTLEVBQUU7WUFDakQsVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxPQUFPLEVBQUU7WUFDckUsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUU7WUFDL0MsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUU7U0FDVixDQUFDO1FBQzFCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQ7O09BRUc7SUFDSyxZQUFZO1FBQ2xCLElBQUksV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNoRixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFBRSxXQUFXLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQUU7UUFDckgsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsV0FBVyxDQUFDO1FBRWhDLElBQUksV0FBVyxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUNwRSxPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNwQyxLQUFLLE1BQU0sTUFBTSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFO1lBQzVDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUMvQjtJQUNILENBQUM7SUFFTyxVQUFVO1FBQ2hCLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQ3hDLElBQUksWUFBWSxJQUFJLFlBQVksQ0FBQyxhQUFhLEVBQUU7WUFDOUMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUM7WUFDakQsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO1lBQ2hFLElBQUksZUFBZSxHQUFHLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBc0IsQ0FBQyxDQUFDO1lBQ2hFLElBQUksWUFBWSxDQUFDLGFBQWEsQ0FBQyxlQUFlLEVBQUU7Z0JBQzlDLGVBQWUsR0FBRyxlQUFlLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQy9GLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRSxFQUFFLENBQUMsS0FBSyxTQUFTO29CQUN2RSxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxDQUFDLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQzdFO1lBQ0QsZUFBZSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDeEUsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQzFHLE9BQU8sZUFBZSxDQUFDO1NBQ3hCO1FBQ0QsT0FBUTtJQUNWLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3BCLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNoQixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxZQUFZLGFBQWEsRUFBRTtZQUNsRCxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FDakUsTUFBTSxJQUFJLElBQUksQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUNsQyxDQUFDO1lBQ0YsTUFBTSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDN0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7U0FDbkQ7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUFDLEVBQVU7UUFDcEIsSUFBSSxPQUF5QixDQUFDO1FBQzlCLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3JDLE9BQU8sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxhQUFpQyxDQUFDO1NBQ3hFO2FBQU07WUFDTCxPQUFPLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxhQUFpQyxDQUFDO1NBQ2pJO1FBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDO0lBQ3pDLENBQUM7O3dGQXRPVSxvQkFBb0I7dUVBQXBCLG9CQUFvQjs7Ozs7O1FDckJqQyx1RkFxRGU7OztRQXJEQSw2REFBMkI7O3VGRHFCN0Isb0JBQW9CO2NBTmhDLFNBQVM7MkJBQ0Usa0JBQWtCLG1CQUdYLHVCQUF1QixDQUFDLE1BQU07eUxBSXRDLDhCQUE4QjtrQkFBdEMsS0FBSztZQWtDMEIsZUFBZTtrQkFBOUMsWUFBWTttQkFBQyxnQkFBZ0I7WUFVckIsS0FBSztrQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0LCBPbkRlc3Ryb3ksIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBWaWV3Q2hpbGRyZW4sIEVsZW1lbnRSZWYsIENoYW5nZURldGVjdG9yUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB0eXBlIHsgUXVlcnlMaXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24sIEJlaGF2aW9yU3ViamVjdCwgb2YsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IExlZ2VuZCB9IGZyb20gJy4uLy4uL2RhdGFzb3VyY2Uvc2hhcmVkL2RhdGFzb3VyY2VzL2RhdGFzb3VyY2UuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgTGF5ZXIsIEl0ZW1TdHlsZU9wdGlvbnMgfSBmcm9tICcuLi9zaGFyZWQvbGF5ZXJzJztcclxuaW1wb3J0IHsgTGVnZW5kTWFwVmlld09wdGlvbnMgfSBmcm9tICcuLi9zaGFyZWQvbGF5ZXJzL2xheWVyLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IENhcGFiaWxpdGllc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9kYXRhc291cmNlL3NoYXJlZC9jYXBhYmlsaXRpZXMuc2VydmljZSc7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgTGFuZ3VhZ2VTZXJ2aWNlLCBDb25maWdTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZSc7XHJcbmltcG9ydCB7IFdNU0RhdGFTb3VyY2UsIFdNU0RhdGFTb3VyY2VPcHRpb25zIH0gZnJvbSAnLi4vLi4vZGF0YXNvdXJjZSc7XHJcbmltcG9ydCB7IFNlY3VyZUltYWdlUGlwZSB9IGZyb20gJ0BpZ28yL2NvbW1vbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2lnby1sYXllci1sZWdlbmQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9sYXllci1sZWdlbmQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2xheWVyLWxlZ2VuZC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMYXllckxlZ2VuZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgQElucHV0KCkgdXBkYXRlTGVnZW5kT25SZXNvbHV0aW9uQ2hhbmdlOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9ic2VydmFibGUgb2YgdGhlIGxlZ2VuZCBpdGVtc1xyXG4gICAqL1xyXG4gIGxlZ2VuZEl0ZW1zJDogQmVoYXZpb3JTdWJqZWN0PExlZ2VuZFtdPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoW10pO1xyXG5cclxuICAvKipcclxuICAgKiBTdWJzY3JpcHRpb24gdG8gdGhlIG1hcCdzIHJlc29sdXRpb25cclxuICAgKi9cclxuICBwcml2YXRlIHN0YXRlJCQ6IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIGF2YWlsYWJsZSBzdHlsZXNcclxuICAgKi9cclxuICBwdWJsaWMgc3R5bGVzO1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgc3R5bGUgdXNlZCB0byBtYWtlIHRoZSBsZWdlbmRcclxuICAgKi9cclxuICBwdWJsaWMgY3VycmVudFN0eWxlO1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgc2NhbGUgdXNlZCB0byBtYWtlIHRoZSBsZWdlbmRcclxuICAgKi9cclxuICBwcml2YXRlIHNjYWxlOiBudW1iZXIgPSB1bmRlZmluZWQ7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBleHRlbnQgdXNlZCB0byBtYWtlIHRoZSBsZWdlbmRcclxuICAgKi9cclxuICBwcml2YXRlIHZpZXc6IExlZ2VuZE1hcFZpZXdPcHRpb25zID0gdW5kZWZpbmVkO1xyXG4gIC8qKlxyXG4gICAqIEdldCBsaXN0IG9mIGltYWdlcyBkaXNwbGF5XHJcbiAgICovXHJcbiAgQFZpZXdDaGlsZHJlbigncmVuZGVyZWRMZWdlbmQnKSByZW5kZXJlZExlZ2VuZHM6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPjtcclxuXHJcbiAgLyoqXHJcbiAgICogTGlzdCBvZiBzaXplIG9mIGltYWdlcyBkaXNwbGF5ZWRcclxuICAgKi9cclxuICBwdWJsaWMgaW1hZ2VzSGVpZ2h0OiB7IFtzcmNLZXk6IHN0cmluZ106IG51bWJlciB9ID0ge307XHJcblxyXG4gIC8qKlxyXG4gICAqIExheWVyXHJcbiAgICovXHJcbiAgQElucHV0KCkgbGF5ZXI6IExheWVyO1xyXG5cclxuICAvKipcclxuICAgKiBpZiBnZXRMZWdlbmRHcmFwaGljIGlzIGF1dGhvcml6ZWRcclxuICAgKi9cclxuICBwdWJsaWMgZ2V0TGVnZW5kID0gdHJ1ZTtcclxuXHJcbiAgLyoqXHJcbiAgICogYWN0aXZlTGVnZW5kXHJcbiAgICovXHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBjYXBhYmlsaXRpZXNTZXJ2aWNlOiBDYXBhYmlsaXRpZXNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBsYW5ndWFnZVNlcnZpY2U6IExhbmd1YWdlU2VydmljZSxcclxuICAgIHByaXZhdGUgY29uZmlnU2VydmljZTogQ29uZmlnU2VydmljZSxcclxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcclxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7fVxyXG5cclxuICAvKipcclxuICAgKiBPbiBpbml0LCBzdWJzY3JpYmUgdG8gdGhlIG1hcCdzIHJlc29sdXRpb24gYW5kIHVwZGF0ZSB0aGUgbGVnZW5kIGFjY29yZGluZ2x5XHJcbiAgICovXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBsZXQgbGFzdGxMZWdlbmQgPSB0aGlzLmxheWVyLmxlZ2VuZDtcclxuICAgIHRoaXMuc3R5bGVzID0gdGhpcy5saXN0U3R5bGVzKCk7XHJcbiAgICBjb25zdCBzb3VyY2VPcHRpb25zID0gdGhpcy5sYXllci5vcHRpb25zLnNvdXJjZS5vcHRpb25zIGFzIGFueTtcclxuICAgIGlmIChzb3VyY2VPcHRpb25zICYmIHNvdXJjZU9wdGlvbnMucGFyYW1zICYmIHNvdXJjZU9wdGlvbnMucGFyYW1zLlNUWUxFUykge1xyXG4gICAgICAvLyBpZiBhIHN0eWxlcyBpcyBwcm92aWRlZCBpbnRvIHRoZSBsYXllcnMgd21zIHBhcmFtc1xyXG4gICAgICB0aGlzLmN1cnJlbnRTdHlsZSA9IHRoaXMuc3R5bGVzLmZpbmQoc3R5bGUgPT4gc3R5bGUubmFtZSA9PT0gc291cmNlT3B0aW9ucy5wYXJhbXMuU1RZTEVTKS5uYW1lO1xyXG4gICAgfSBlbHNlIGlmICghbGFzdGxMZWdlbmQpIHtcclxuICAgICAgLy8gaWYgbm8gbGVnZW5kIGlzIG1hbnVhbGx5IHByb3ZpZGVkXHJcbiAgICAgIGlmICh0aGlzLnN0eWxlcyAmJiB0aGlzLnN0eWxlcy5sZW5ndGggPiAxKSB7XHJcbiAgICAgICAgdGhpcy5jdXJyZW50U3R5bGUgPSB0aGlzLnN0eWxlc1swXS5uYW1lO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuc3R5bGVzICYmIHRoaXMuc3R5bGVzLmxlbmd0aCA+IDEpIHtcclxuICAgICAgdGhpcy5jdXJyZW50U3R5bGUgPSBsYXN0bExlZ2VuZFswXS5jdXJyZW50U3R5bGU7XHJcbiAgICB9XHJcbiAgICBpZiAodHlwZW9mIHRoaXMubGF5ZXIub3B0aW9ucy5sZWdlbmRPcHRpb25zICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLmxheWVyLm9wdGlvbnMubGVnZW5kT3B0aW9ucy5kaXNwbGF5ID09PSBmYWxzZSkge1xyXG4gICAgICBsYXN0bExlZ2VuZCA9IFtdO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbGFzdGxMZWdlbmQgPSB0aGlzLmxheWVyLmRhdGFTb3VyY2UuZ2V0TGVnZW5kKHRoaXMuY3VycmVudFN0eWxlLCB0aGlzLnZpZXcpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLnVwZGF0ZUxlZ2VuZE9uUmVzb2x1dGlvbkNoYW5nZSB8fCAoc291cmNlT3B0aW9ucyBhcyBXTVNEYXRhU291cmNlT3B0aW9ucykuY29udGVudERlcGVuZGVudExlZ2VuZCkge1xyXG4gICAgICBjb25zdCBzdGF0ZSQgPSB0aGlzLmxheWVyLm1hcC52aWV3Q29udHJvbGxlci5zdGF0ZSQ7XHJcbiAgICAgIHRoaXMuc3RhdGUkJCA9IHN0YXRlJC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5vblZpZXdDb250cm9sbGVyU3RhdGVDaGFuZ2UoKSk7XHJcbiAgICB9IGVsc2UgaWYgKGxhc3RsTGVnZW5kICYmIGxhc3RsTGVnZW5kLmxlbmd0aCAhPT0gMCkge1xyXG4gICAgICB0aGlzLmxlZ2VuZEl0ZW1zJC5uZXh0KGxhc3RsTGVnZW5kKTtcclxuICAgICAgZm9yIChjb25zdCBsZWdlbmQgb2YgbGFzdGxMZWdlbmQpIHtcclxuICAgICAgICB0aGlzLmdldExlZ2VuZEdyYXBoaWMobGVnZW5kKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogT24gZGVzdHJveSwgdW5zdWJzY3JpYmUgdG8gdGhlIG1hcCdzIHZpZXcgc3RhdGVcclxuICAgKi9cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIGlmICh0aGlzLnN0YXRlJCQgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLnN0YXRlJCQudW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldExlZ2VuZEdyYXBoaWMoaXRlbTogTGVnZW5kKSB7XHJcbiAgICBpZiAoaXRlbS51cmwpIHtcclxuICAgICAgY29uc3Qgc2VjdXJlSU1HID0gbmV3IFNlY3VyZUltYWdlUGlwZSh0aGlzLmh0dHAsIHRoaXMuY29uZmlnU2VydmljZSk7XHJcbiAgICAgIHNlY3VyZUlNRy50cmFuc2Zvcm0oaXRlbS51cmwpLnBpcGUoXHJcbiAgICAgICAgY2F0Y2hFcnJvcigoZXJyKSA9PiB7XHJcbiAgICAgICAgICBpZiAoZXJyLmVycm9yKSB7XHJcbiAgICAgICAgICAgIGVyci5lcnJvci5jYXVnaHQgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLmdldExlZ2VuZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICAgICAgcmV0dXJuIGVycjtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICAgICkuc3Vic2NyaWJlKG9ic0xlZ0dyYXBoID0+IHtcclxuICAgICAgICAgIGNvbnN0IGlkeCA9IHRoaXMubGVnZW5kSXRlbXMkLnZhbHVlLmZpbmRJbmRleChsZWcgPT4gbGVnLnRpdGxlID09PSBpdGVtLnRpdGxlKTtcclxuICAgICAgICAgIGNvbnN0IGxlZ2VuZEdyYXBoID0gb2JzTGVnR3JhcGggYXMgc3RyaW5nO1xyXG4gICAgICAgICAgdGhpcy5sZWdlbmRJdGVtcyQudmFsdWVbaWR4XS5pbWdHcmFwaFZhbHVlID0gbGVnZW5kR3JhcGg7XHJcbiAgICAgICAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB0b2dnbGVMZWdlbmRJdGVtKGNvbGxhcHNlZDogYm9vbGVhbiwgaXRlbTogTGVnZW5kKSB7XHJcbiAgICBpdGVtLmNvbGxhcHNlZCA9IGNvbGxhcHNlZDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdHJhbnNmZXJ0VG9nZ2xlTGVnZW5kSXRlbShuZXdMZWdlbmRzOiBMZWdlbmRbXSk6IExlZ2VuZFtdIHtcclxuICAgIGNvbnN0IG91dExlZ2VuZHM6IExlZ2VuZFtdID0gbmV3TGVnZW5kcztcclxuICAgIGNvbnN0IGxhc3RMZWdlbmRzID0gdGhpcy5sYXllci5sZWdlbmQ7XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxhc3RMZWdlbmRzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIG91dExlZ2VuZHNbaV0uY29sbGFwc2VkID0gbGFzdExlZ2VuZHNbaV0uY29sbGFwc2VkO1xyXG4gICB9XHJcbiAgICByZXR1cm4gb3V0TGVnZW5kcztcclxuICB9XHJcblxyXG4gIGNvbXB1dGVJdGVtVGl0bGUobGF5ZXJMZWdlbmQpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xyXG4gICAgY29uc3QgbGF5ZXJPcHRpb25zID0gdGhpcy5sYXllci5kYXRhU291cmNlLm9wdGlvbnMgYXMgYW55O1xyXG4gICAgaWYgKGxheWVyT3B0aW9ucy50eXBlICE9PSAnd21zJykge1xyXG4gICAgICByZXR1cm4gb2YobGF5ZXJMZWdlbmQudGl0bGUpO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGxheWVycyA9IGxheWVyT3B0aW9ucy5wYXJhbXMuTEFZRVJTLnNwbGl0KCcsJyk7XHJcbiAgICBjb25zdCBsb2NhbExheWVyT3B0aW9ucyA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkobGF5ZXJPcHRpb25zKSk7IC8vIHRvIGF2b2lkIHRvIGFsdGVyIHRoZSBvcmlnaW5hbCBvcHRpb25zLlxyXG4gICAgbG9jYWxMYXllck9wdGlvbnMucGFyYW1zLkxBWUVSUyA9IGxheWVycy5maW5kKGxheWVyID0+IGxheWVyID09PSBsYXllckxlZ2VuZC50aXRsZSk7XHJcbiAgICByZXR1cm4gdGhpcy5jYXBhYmlsaXRpZXNTZXJ2aWNlXHJcbiAgICAgIC5nZXRXTVNPcHRpb25zKGxvY2FsTGF5ZXJPcHRpb25zKVxyXG4gICAgICAucGlwZShtYXAod21zRGF0YVNvdXJjZU9wdGlvbnMgPT4ge1xyXG4gICAgICAgIHJldHVybiB3bXNEYXRhU291cmNlT3B0aW9ucy5fbGF5ZXJPcHRpb25zRnJvbVNvdXJjZS50aXRsZTtcclxuICAgICAgfSkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogT24gcmVzb2x1dGlvbiBjaGFuZ2UsIGNvbXB1dGUgdGhlIGVmZmVjdGl2ZSBzY2FsZSBsZXZlbCBhbmQgdXBkYXRlIHRoZVxyXG4gICAqIGxlZ2VuZCBhY2NvcmRpbmdseS5cclxuICAgKiBAcGFyYW0gcmVzb2x1dGlvbiBNYXAgcmVzb2x1dGlvblxyXG4gICAqL1xyXG4gIHByaXZhdGUgb25WaWV3Q29udHJvbGxlclN0YXRlQ2hhbmdlKCkge1xyXG4gICAgdGhpcy52aWV3ID0ge1xyXG4gICAgICByZXNvbHV0aW9uOiB0aGlzLmxheWVyLm1hcC52aWV3Q29udHJvbGxlci5nZXRSZXNvbHV0aW9uKCksXHJcbiAgICAgIGV4dGVudDogdGhpcy5sYXllci5tYXAudmlld0NvbnRyb2xsZXIuZ2V0RXh0ZW50KCksXHJcbiAgICAgIHByb2plY3Rpb246IHRoaXMubGF5ZXIubWFwLnZpZXdDb250cm9sbGVyLmdldE9sUHJvamVjdGlvbigpLmdldENvZGUoKSxcclxuICAgICAgc2NhbGU6IHRoaXMubGF5ZXIubWFwLnZpZXdDb250cm9sbGVyLmdldFNjYWxlKCksXHJcbiAgICAgIHNpemU6IHRoaXMubGF5ZXIubWFwLm9sLmdldFNpemUoKVxyXG4gICAgfSBhcyBMZWdlbmRNYXBWaWV3T3B0aW9ucztcclxuICAgIHRoaXMudXBkYXRlTGVnZW5kKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBVcGRhdGUgdGhlIGxlZ2VuZCB3aXRoIHNjYWxlIGxldmVsIGFuZCBzdHlsZSBkZWZpbmVcclxuICAgKi9cclxuICBwcml2YXRlIHVwZGF0ZUxlZ2VuZCgpIHtcclxuICAgIGxldCBsZWdlbmRJdGVtcyA9IHRoaXMubGF5ZXIuZGF0YVNvdXJjZS5nZXRMZWdlbmQodGhpcy5jdXJyZW50U3R5bGUsIHRoaXMudmlldyk7XHJcbiAgICBpZiAodGhpcy5sYXllci5sZWdlbmQgJiYgdGhpcy5sYXllci5sZWdlbmQubGVuZ3RoID4gMSkgeyBsZWdlbmRJdGVtcyA9IHRoaXMudHJhbnNmZXJ0VG9nZ2xlTGVnZW5kSXRlbShsZWdlbmRJdGVtcyk7IH1cclxuICAgIHRoaXMubGF5ZXIubGVnZW5kID0gbGVnZW5kSXRlbXM7XHJcblxyXG4gICAgaWYgKGxlZ2VuZEl0ZW1zLmxlbmd0aCA9PT0gMCAmJiB0aGlzLmxlZ2VuZEl0ZW1zJC52YWx1ZS5sZW5ndGggPT09IDApIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5sZWdlbmRJdGVtcyQubmV4dChsZWdlbmRJdGVtcyk7XHJcbiAgICBmb3IgKGNvbnN0IGxlZ2VuZCBvZiB0aGlzLmxlZ2VuZEl0ZW1zJC52YWx1ZSkge1xyXG4gICAgICB0aGlzLmdldExlZ2VuZEdyYXBoaWMobGVnZW5kKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgbGlzdFN0eWxlcygpIHtcclxuICAgIGNvbnN0IGxheWVyT3B0aW9ucyA9IHRoaXMubGF5ZXIub3B0aW9ucztcclxuICAgIGlmIChsYXllck9wdGlvbnMgJiYgbGF5ZXJPcHRpb25zLmxlZ2VuZE9wdGlvbnMpIHtcclxuICAgICAgY29uc3QgdHJhbnNsYXRlID0gdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlO1xyXG4gICAgICBjb25zdCB0aXRsZSA9IHRyYW5zbGF0ZS5pbnN0YW50KCdpZ28uZ2VvLmxheWVyLmxlZ2VuZC5kZWZhdWx0Jyk7XHJcbiAgICAgIGxldCBzdHlsZXNBdmFpbGFibGUgPSBbeyBuYW1lOiAnJywgdGl0bGUgfSBhcyBJdGVtU3R5bGVPcHRpb25zXTtcclxuICAgICAgaWYgKGxheWVyT3B0aW9ucy5sZWdlbmRPcHRpb25zLnN0eWxlc0F2YWlsYWJsZSkge1xyXG4gICAgICAgIHN0eWxlc0F2YWlsYWJsZSA9IHN0eWxlc0F2YWlsYWJsZS5jb25jYXQobGF5ZXJPcHRpb25zLmxlZ2VuZE9wdGlvbnMuc3R5bGVzQXZhaWxhYmxlLmZpbHRlcihzQSA9PiAoXHJcbiAgICAgICAgICBzQS5uYW1lLm5vcm1hbGl6ZSgnTkZEJykucmVwbGFjZSgvW1xcdTAzMDAtXFx1MDM2Zl0vZ2ksICcnKSAhPT0gJ2RlZmF1bHQnICYmXHJcbiAgICAgICAgICBzQS5uYW1lLm5vcm1hbGl6ZSgnTkZEJykucmVwbGFjZSgvW1xcdTAzMDAtXFx1MDM2Zl0vZ2ksICcnKSAhPT0gJ2RlZmF1dCcpKSk7XHJcbiAgICAgIH1cclxuICAgICAgc3R5bGVzQXZhaWxhYmxlLmZpbHRlcihzYSA9PiAhc2EudGl0bGUpLm1hcCgoc2EpID0+IHNhLnRpdGxlID0gc2EubmFtZSk7XHJcbiAgICAgIHN0eWxlc0F2YWlsYWJsZS5tYXAocyA9PiBzLnRpdGxlID0gcy50aXRsZS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHMudGl0bGUuc2xpY2UoMSkucmVwbGFjZSgvXy9nLCAnICcpKTtcclxuICAgICAgcmV0dXJuIHN0eWxlc0F2YWlsYWJsZTtcclxuICAgIH1cclxuICAgIHJldHVybiA7XHJcbiAgfVxyXG5cclxuICBvbkNoYW5nZVN0eWxlKCkge1xyXG4gICAgdGhpcy51cGRhdGVMZWdlbmQoKTtcclxuICAgIGxldCBTVFlMRVMgPSAnJztcclxuICAgIGlmICh0aGlzLmxheWVyLmRhdGFTb3VyY2UgaW5zdGFuY2VvZiBXTVNEYXRhU291cmNlKSB7XHJcbiAgICAgIHRoaXMubGF5ZXIuZGF0YVNvdXJjZS5vbC5nZXRQYXJhbXMoKS5MQVlFUlMuc3BsaXQoJywnKS5tYXAobGF5ZXIgPT5cclxuICAgICAgICBTVFlMRVMgKz0gdGhpcy5jdXJyZW50U3R5bGUgKyAnLCdcclxuICAgICAgKTtcclxuICAgICAgU1RZTEVTID0gU1RZTEVTLnNsaWNlKDAsIC0xKTtcclxuICAgICAgdGhpcy5sYXllci5kYXRhU291cmNlLm9sLnVwZGF0ZVBhcmFtcyh7IFNUWUxFUyB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uTG9hZEltYWdlKGlkOiBzdHJpbmcpIHtcclxuICAgIGxldCBlbGVtUmVmOiBIVE1MSW1hZ2VFbGVtZW50O1xyXG4gICAgaWYgKHRoaXMucmVuZGVyZWRMZWdlbmRzLmxlbmd0aCA9PT0gMSkge1xyXG4gICAgICBlbGVtUmVmID0gdGhpcy5yZW5kZXJlZExlZ2VuZHMuZmlyc3QubmF0aXZlRWxlbWVudCBhcyBIVE1MSW1hZ2VFbGVtZW50O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgZWxlbVJlZiA9IHRoaXMucmVuZGVyZWRMZWdlbmRzLmZpbmQocmVuZGVyZWRMZWdlbmQgPT4gcmVuZGVyZWRMZWdlbmQubmF0aXZlRWxlbWVudC5pZCA9PT0gaWQpLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEltYWdlRWxlbWVudDtcclxuICAgIH1cclxuICAgIHRoaXMuaW1hZ2VzSGVpZ2h0W2lkXSA9IGVsZW1SZWYuaGVpZ2h0O1xyXG4gIH1cclxufVxyXG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwibGVnZW5kSXRlbXMkIHwgYXN5bmMgYXMgaXRlbXNcIj5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbXMubGVuZ3RoOyBlbHNlIG5vSXRlbXNcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXMuc2xpY2UoKS5yZXZlcnNlKClcIiAjcmVuZGVyZWRMZWdlbmRzPlxyXG4gICAgICA8ZGl2ICpuZ0lmPVwiZ2V0TGVnZW5kOyBlbHNlIG5vSXRlbXNcIj5cclxuICAgICAgICA8bWF0LWxpc3QtaXRlbSAqbmdJZj1cIml0ZW0udGl0bGVcIj5cclxuICAgICAgICAgIDxtYXQtaWNvblxyXG4gICAgICAgICAgICBpZD1cImxlZ2VuZC10b2dnbGVcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImlnby1jaGV2cm9uXCJcclxuICAgICAgICAgICAgbWF0LWxpc3QtYXZhdGFyXHJcbiAgICAgICAgICAgIGlnb0NvbGxhcHNlXHJcbiAgICAgICAgICAgIFt0YXJnZXRdPVwibGVnZW5kXCJcclxuICAgICAgICAgICAgW2NvbGxhcHNlZF09XCIoaXRlbS5jb2xsYXBzZWQpXCJcclxuICAgICAgICAgICAgKHRvZ2dsZSk9XCJ0b2dnbGVMZWdlbmRJdGVtKCRldmVudCwgaXRlbSlcIlxyXG4gICAgICAgICAgICBzdmdJY29uPVwiY2hldnJvbi11cFwiPlxyXG4gICAgICAgICAgPC9tYXQtaWNvbj5cclxuICAgICAgICAgIDxoNCBtYXRMaW5lPnt7Y29tcHV0ZUl0ZW1UaXRsZShpdGVtKSB8IGFzeW5jfX0gPC9oND5cclxuICAgICAgICA8L21hdC1saXN0LWl0ZW0+XHJcbiAgICAgICAgPGRpdiAjbGVnZW5kIGNsYXNzPVwiaWdvLWxheWVyLWxlZ2VuZFwiIFtuZ0NsYXNzXT1cInsnd2l0aC10aXRsZSc6IGl0ZW0udGl0bGV9XCI+XHJcbiAgICAgICAgICA8ZGl2ICpuZ0lmPVwiY3VycmVudFN0eWxlICE9PSB1bmRlZmluZWRcIj5cclxuICAgICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICAgICAgICA8bWF0LXNlbGVjdCB0b29sdGlwLXBvc2l0aW9uPVwiYmVsb3dcIiBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcclxuICAgICAgICAgICAgICAgICAgW21hdFRvb2x0aXBdPVwiJ2lnby5nZW8ubGF5ZXIubGVnZW5kLnNlbGVjdFN0eWxlJyB8IHRyYW5zbGF0ZVwiIFsobmdNb2RlbCldPVwiY3VycmVudFN0eWxlXCJcclxuICAgICAgICAgICAgICAgICAgKHNlbGVjdGlvbkNoYW5nZSk9XCJvbkNoYW5nZVN0eWxlKClcIj5cclxuICAgICAgICAgICAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IHN0eWxlIG9mIHN0eWxlc1wiIFt2YWx1ZV09XCJzdHlsZS5uYW1lXCI+e3tzdHlsZS50aXRsZX19PC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIShpdGVtLmNvbGxhcHNlZClcIj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIml0ZW0udXJsXCI+XHJcbiAgICAgICAgICAgICAgPGltZyBpZ29JbWFnZUVycm9yICpuZ0lmPVwiaXRlbS5pbWdHcmFwaFZhbHVlXCIgaGlkZUVycm9yPVwidHJ1ZVwiICNyZW5kZXJlZExlZ2VuZCBpZD1cInt7aXRlbS50aXRsZX19XCIgKGxvYWQpPVwib25Mb2FkSW1hZ2UoaXRlbS50aXRsZSlcIlxyXG4gICAgICAgICAgICAgICAgW3NyY109XCJpdGVtLmltZ0dyYXBoVmFsdWVcIlxyXG4gICAgICAgICAgICAgICAgYWx0PVwie3snaWdvLmdlby5sYXllci5sZWdlbmQubG9hZGluZ0xlZ2VuZFRleHQnIHwgdHJhbnNsYXRlfX1cIj5cclxuICAgICAgICAgICAgICA8c21hbGwgKm5nSWY9XCJpbWFnZXNIZWlnaHRbaXRlbS50aXRsZV08MTZcIj5cclxuICAgICAgICAgICAgICAgICAge3snaWdvLmdlby5sYXllci5sZWdlbmQubm9MZWdlbmRTY2FsZScgfCB0cmFuc2xhdGV9fVxyXG4gICAgICAgICAgICAgIDwvc21hbGw+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgW25nU3R5bGVdPVwiaXRlbS5zdHlsZVwiXHJcbiAgICAgICAgICAgICAgW2lubmVySFRNTF09XCJpdGVtLmh0bWwgfCBzYW5pdGl6ZUh0bWxcIlxyXG4gICAgICAgICAgICAgICpuZ0lmPVwiaXRlbS5odG1sXCI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gIDxuZy10ZW1wbGF0ZSAjbm9JdGVtcz5cclxuICAgIDxzbWFsbD5cclxuICAgICAge3snaWdvLmdlby5sYXllci5sZWdlbmQubm9MZWdlbmRUZXh0JyB8IHRyYW5zbGF0ZX19XHJcbiAgICA8L3NtYWxsPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcblxyXG48L25nLWNvbnRhaW5lcj5cclxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './layer-legend-item.component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9sYXllci9sYXllci1sZWdlbmQtaXRlbS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9sYXllci1sZWdlbmQtaXRlbS5jb21wb25lbnQnO1xyXG4iXX0=
|