@igo2/geo 17.0.0 → 17.0.1-next.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/catalog/catalog-browser/catalog-browser-group.component.mjs +4 -4
- package/esm2022/lib/catalog/catalog-browser/catalog-browser-layer.component.mjs +6 -6
- package/esm2022/lib/catalog/catalog-browser/catalog-browser.component.mjs +4 -4
- package/esm2022/lib/catalog/catalog-browser/catalog-browser.module.mjs +4 -4
- package/esm2022/lib/catalog/catalog-library/add-catalog-dialog.component.mjs +3 -3
- package/esm2022/lib/catalog/catalog-library/catalog-library-item.component.mjs +3 -3
- package/esm2022/lib/catalog/catalog-library/catalog-library.component.mjs +4 -4
- package/esm2022/lib/catalog/catalog-library/catalog-library.module.mjs +4 -4
- package/esm2022/lib/catalog/catalog.module.mjs +4 -4
- package/esm2022/lib/catalog/shared/catalog.abstract.mjs +1 -1
- package/esm2022/lib/catalog/shared/catalog.interface.mjs +1 -1
- package/esm2022/lib/catalog/shared/catalog.service.mjs +17 -21
- package/esm2022/lib/datasource/shared/capabilities.interface.mjs +3 -1
- package/esm2022/lib/datasource/shared/capabilities.service.mjs +3 -3
- package/esm2022/lib/datasource/shared/datasource.service.mjs +6 -5
- package/esm2022/lib/datasource/shared/datasources/arcgisrest-datasource.mjs +5 -3
- package/esm2022/lib/datasource/shared/datasources/carto-datasource.mjs +4 -2
- package/esm2022/lib/datasource/shared/datasources/cluster-datasource.interface.mjs +1 -1
- package/esm2022/lib/datasource/shared/datasources/cluster-datasource.mjs +4 -2
- package/esm2022/lib/datasource/shared/datasources/datasource.interface.mjs +1 -1
- package/esm2022/lib/datasource/shared/datasources/datasource.mjs +2 -2
- package/esm2022/lib/datasource/shared/datasources/feature-datasource.interface.mjs +1 -1
- package/esm2022/lib/datasource/shared/datasources/feature-datasource.mjs +4 -2
- package/esm2022/lib/datasource/shared/datasources/imagearcgisrest-datasource.mjs +4 -2
- package/esm2022/lib/datasource/shared/datasources/mvt-datasource.interface.mjs +1 -1
- package/esm2022/lib/datasource/shared/datasources/mvt-datasource.mjs +4 -2
- package/esm2022/lib/datasource/shared/datasources/osm-datasource.mjs +4 -2
- package/esm2022/lib/datasource/shared/datasources/tilearcgisrest-datasource.mjs +4 -2
- package/esm2022/lib/datasource/shared/datasources/tiledebug-datasource.mjs +4 -2
- package/esm2022/lib/datasource/shared/datasources/websocket-datasource.mjs +6 -5
- package/esm2022/lib/datasource/shared/datasources/wfs-datasource.mjs +4 -2
- package/esm2022/lib/datasource/shared/datasources/wfs.service.mjs +7 -6
- package/esm2022/lib/datasource/shared/datasources/wms-datasource.interface.mjs +1 -1
- package/esm2022/lib/datasource/shared/datasources/wms-datasource.mjs +4 -2
- package/esm2022/lib/datasource/shared/datasources/wms-wfs.utils.mjs +1 -1
- package/esm2022/lib/datasource/shared/datasources/wmts-datasource.mjs +4 -2
- package/esm2022/lib/datasource/shared/datasources/xyz-datasource.interface.mjs +1 -1
- package/esm2022/lib/datasource/shared/datasources/xyz-datasource.mjs +4 -2
- package/esm2022/lib/datasource/shared/options/options-api.service.mjs +4 -4
- package/esm2022/lib/directions/directions-buttons/directions-buttons.component.mjs +4 -4
- package/esm2022/lib/directions/directions-inputs/directions-inputs.component.mjs +4 -4
- package/esm2022/lib/directions/directions-results/directions-results.component.mjs +3 -3
- package/esm2022/lib/directions/directions-sources/osrm-directions-source.mjs +3 -3
- package/esm2022/lib/directions/directions.component.mjs +6 -7
- package/esm2022/lib/directions/directions.module.mjs +4 -4
- package/esm2022/lib/directions/shared/directions.interface.mjs +1 -1
- package/esm2022/lib/directions/shared/directions.service.mjs +12 -11
- package/esm2022/lib/directions/shared/directions.utils.mjs +3 -3
- package/esm2022/lib/directions/shared/store.mjs +1 -1
- package/esm2022/lib/download/download-button/download-button.component.mjs +3 -3
- package/esm2022/lib/download/download.module.mjs +4 -4
- package/esm2022/lib/download/shared/download.service.mjs +3 -3
- package/esm2022/lib/draw/draw/draw-layer-popup.component.mjs +4 -4
- package/esm2022/lib/draw/draw/draw-popup.component.mjs +9 -9
- package/esm2022/lib/draw/draw/draw-shorcuts.component.mjs +3 -3
- package/esm2022/lib/draw/draw/draw.component.mjs +15 -19
- package/esm2022/lib/draw/draw/draw.module.mjs +4 -4
- package/esm2022/lib/draw/drawingTool.module.mjs +4 -4
- package/esm2022/lib/draw/shared/draw-icon.service.mjs +4 -4
- package/esm2022/lib/draw/shared/draw.interface.mjs +1 -1
- package/esm2022/lib/draw/shared/draw.utils.mjs +3 -3
- package/esm2022/lib/feature/feature-details/feature-details.component.mjs +6 -6
- package/esm2022/lib/feature/feature-details/feature-details.directive.mjs +3 -3
- package/esm2022/lib/feature/feature-details/feature-details.module.mjs +4 -4
- package/esm2022/lib/feature/feature-form/feature-form.component.mjs +5 -6
- package/esm2022/lib/feature/feature-form/feature-form.module.mjs +4 -4
- package/esm2022/lib/feature/feature.module.mjs +4 -4
- package/esm2022/lib/feature/shared/feature.interfaces.mjs +1 -1
- package/esm2022/lib/feature/shared/feature.utils.mjs +1 -2
- package/esm2022/lib/feature/shared/store.mjs +4 -4
- package/esm2022/lib/feature/shared/strategies/geo-properties.mjs +2 -2
- package/esm2022/lib/feature/shared/strategies/loading-layer.mjs +2 -3
- package/esm2022/lib/feature/shared/strategies/search.mjs +2 -3
- package/esm2022/lib/feature/shared/strategies/selection.mjs +1 -1
- package/esm2022/lib/filter/filter.module.mjs +4 -4
- package/esm2022/lib/filter/ogc-filter-button/ogc-filter-button.component.mjs +5 -6
- package/esm2022/lib/filter/ogc-filter-form/ogc-filter-form.component.mjs +5 -5
- package/esm2022/lib/filter/ogc-filter-selection/ogc-filter-selection.component.mjs +9 -29
- package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.mjs +8 -9
- package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time.component.mjs +5 -5
- package/esm2022/lib/filter/ogc-filterable-form/ogc-filterable-form.component.mjs +5 -6
- package/esm2022/lib/filter/ogc-filterable-item/ogc-filterable-item.component.mjs +4 -4
- package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.mjs +3 -3
- package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list.component.mjs +5 -6
- package/esm2022/lib/filter/shared/filterable-datasource.pipe.mjs +3 -3
- package/esm2022/lib/filter/shared/ogc-filter-time.service.mjs +5 -6
- package/esm2022/lib/filter/shared/ogc-filter.interface.mjs +1 -1
- package/esm2022/lib/filter/shared/ogc-filter.mjs +3 -2
- package/esm2022/lib/filter/shared/ogc-filter.service.mjs +5 -6
- package/esm2022/lib/filter/shared/spatial-filter.service.mjs +7 -7
- package/esm2022/lib/filter/shared/time-filter.service.mjs +5 -6
- package/esm2022/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.mjs +5 -5
- package/esm2022/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.mjs +3 -3
- package/esm2022/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.mjs +7 -8
- package/esm2022/lib/filter/time-filter-button/time-filter-button.component.mjs +5 -6
- package/esm2022/lib/filter/time-filter-form/time-filter-form.component.mjs +17 -17
- package/esm2022/lib/filter/time-filter-item/time-filter-item.component.mjs +4 -4
- package/esm2022/lib/filter/time-filter-list/time-filter-list-binding.directive.mjs +3 -3
- package/esm2022/lib/filter/time-filter-list/time-filter-list.component.mjs +3 -3
- package/esm2022/lib/geo.module.mjs +5 -9
- package/esm2022/lib/geometry/geometry-form-field/geometry-form-field-input.component.mjs +7 -8
- package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.component.mjs +4 -4
- package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.module.mjs +4 -4
- package/esm2022/lib/geometry/geometry.module.mjs +4 -4
- package/esm2022/lib/geometry/shared/controls/draw.mjs +1 -1
- package/esm2022/lib/geometry/shared/controls/modify.mjs +1 -4
- package/esm2022/lib/geometry/shared/controls/slice.mjs +3 -3
- package/esm2022/lib/geometry/shared/geometry.errors.mjs +1 -3
- package/esm2022/lib/geometry/shared/geometry.utils.mjs +2 -11
- package/esm2022/lib/import-export/export-button/export-button.component.mjs +5 -6
- package/esm2022/lib/import-export/import-export/import-export.component.mjs +25 -18
- package/esm2022/lib/import-export/import-export.module.mjs +4 -4
- package/esm2022/lib/import-export/shared/drop-geo-file.directive.mjs +4 -4
- package/esm2022/lib/import-export/shared/export.service.mjs +5 -4
- package/esm2022/lib/import-export/shared/export.utils.mjs +2 -2
- package/esm2022/lib/import-export/shared/import.service.mjs +6 -6
- package/esm2022/lib/import-export/shared/import.utils.mjs +1 -1
- package/esm2022/lib/layer/layer-item/layer-item.component.mjs +4 -4
- package/esm2022/lib/layer/layer-legend/layer-legend.component.mjs +7 -7
- package/esm2022/lib/layer/layer-legend-item/layer-legend-item.component.mjs +4 -4
- package/esm2022/lib/layer/layer-legend-list/layer-legend-list-binding.directive.mjs +5 -5
- package/esm2022/lib/layer/layer-legend-list/layer-legend-list.component.mjs +5 -6
- package/esm2022/lib/layer/layer-list/layer-list-binding.directive.mjs +3 -3
- package/esm2022/lib/layer/layer-list/layer-list.component.mjs +4 -4
- package/esm2022/lib/layer/layer-list-tool/layer-list-tool.component.mjs +4 -4
- package/esm2022/lib/layer/layer-list-tool/layer-list-tool.service.mjs +5 -6
- package/esm2022/lib/layer/layer.module.mjs +4 -4
- package/esm2022/lib/layer/shared/clusterParam.mjs +1 -1
- package/esm2022/lib/layer/shared/layer.service.mjs +6 -5
- package/esm2022/lib/layer/shared/layers/image-layer.mjs +2 -2
- package/esm2022/lib/layer/shared/layers/layer.interface.mjs +1 -1
- package/esm2022/lib/layer/shared/layers/layer.mjs +1 -3
- package/esm2022/lib/layer/shared/layers/tile-layer.mjs +2 -2
- package/esm2022/lib/layer/shared/layers/vector-layer.mjs +5 -5
- package/esm2022/lib/layer/shared/layers/vectortile-layer.mjs +3 -3
- package/esm2022/lib/layer/track-feature-button/track-feature-button.component.mjs +6 -7
- package/esm2022/lib/layer/utils/outputLegend.mjs +3 -3
- package/esm2022/lib/layer/utils/vector-watcher.mjs +9 -9
- package/esm2022/lib/map/baselayers-switcher/baselayers-switcher.component.mjs +3 -3
- package/esm2022/lib/map/baselayers-switcher/mini-basemap.component.mjs +3 -3
- package/esm2022/lib/map/geolocate-button/geolocate-button.component.mjs +7 -7
- package/esm2022/lib/map/home-extent-button/home-extent-button.component.mjs +3 -3
- package/esm2022/lib/map/info-section/info-section.component.mjs +5 -6
- package/esm2022/lib/map/map-browser/map-browser.component.mjs +3 -3
- package/esm2022/lib/map/map-center/map-center.component.mjs +9 -9
- package/esm2022/lib/map/map.module.mjs +4 -4
- package/esm2022/lib/map/menu-button/menu-button.component.mjs +3 -3
- package/esm2022/lib/map/offline-button/offline-button.component.mjs +5 -6
- package/esm2022/lib/map/rotation-button/rotation-button.component.mjs +5 -6
- package/esm2022/lib/map/shared/controllers/geolocation.mjs +10 -10
- package/esm2022/lib/map/shared/controllers/view.mjs +3 -3
- package/esm2022/lib/map/shared/hover-feature.directive.mjs +8 -11
- package/esm2022/lib/map/shared/linkedLayers.utils.mjs +5 -5
- package/esm2022/lib/map/shared/map-pointer-position.directive.mjs +4 -4
- package/esm2022/lib/map/shared/map.mjs +4 -4
- package/esm2022/lib/map/shared/map.service.mjs +5 -6
- package/esm2022/lib/map/shared/map.utils.mjs +2 -3
- package/esm2022/lib/map/shared/mapOffline.directive.mjs +3 -3
- package/esm2022/lib/map/shared/projection.service.mjs +3 -3
- package/esm2022/lib/map/shared/projection.utils.mjs +2 -3
- package/esm2022/lib/map/swipe-control/swipe-control.component.mjs +7 -6
- package/esm2022/lib/map/utils/layer-watcher.mjs +4 -2
- package/esm2022/lib/map/wake-lock-button/wake-lock-button.component.mjs +5 -4
- package/esm2022/lib/map/zoom-button/zoom-button.component.mjs +5 -6
- package/esm2022/lib/measure/measure.module.mjs +4 -4
- package/esm2022/lib/measure/measurer/measure-format.pipe.mjs +5 -5
- package/esm2022/lib/measure/measurer/measurer-dialog.component.mjs +3 -3
- package/esm2022/lib/measure/measurer/measurer-item.component.mjs +5 -6
- package/esm2022/lib/measure/measurer/measurer.component.mjs +8 -16
- package/esm2022/lib/measure/measurer/measurer.module.mjs +4 -4
- package/esm2022/lib/measure/shared/measure.interfaces.mjs +1 -1
- package/esm2022/lib/measure/shared/measure.utils.mjs +1 -1
- package/esm2022/lib/metadata/metadata-button/metadata-button.component.mjs +6 -6
- package/esm2022/lib/metadata/metadata.module.mjs +4 -4
- package/esm2022/lib/metadata/shared/metadata.service.mjs +5 -6
- package/esm2022/lib/offline/geoDB/configFileToGeoDB.service.mjs +3 -3
- package/esm2022/lib/offline/geoDB/geoDB.service.mjs +6 -6
- package/esm2022/lib/offline/layerDB/layerDB.service.mjs +4 -4
- package/esm2022/lib/offline/shared/geo-network.service.mjs +4 -4
- package/esm2022/lib/overlay/shared/index.mjs +1 -3
- package/esm2022/lib/print/print/print.component.mjs +3 -3
- package/esm2022/lib/print/print-form/print-form.component.mjs +5 -5
- package/esm2022/lib/print/print.module.mjs +4 -4
- package/esm2022/lib/print/shared/print.service.mjs +32 -44
- package/esm2022/lib/query/query.module.mjs +4 -4
- package/esm2022/lib/query/shared/query-search-source.mjs +3 -3
- package/esm2022/lib/query/shared/query.directive.mjs +4 -4
- package/esm2022/lib/query/shared/query.enums.mjs +3 -1
- package/esm2022/lib/query/shared/query.service.mjs +23 -21
- package/esm2022/lib/search/search-bar/search-bar.component.mjs +4 -4
- package/esm2022/lib/search/search-bar/search-bar.module.mjs +4 -4
- package/esm2022/lib/search/search-results/save-feature-dialog.component.mjs +3 -3
- package/esm2022/lib/search/search-results/search-results-add-button.component.mjs +7 -9
- package/esm2022/lib/search/search-results/search-results-item.component.mjs +10 -12
- package/esm2022/lib/search/search-results/search-results.component.mjs +4 -4
- package/esm2022/lib/search/search-results/search-results.module.mjs +4 -4
- package/esm2022/lib/search/search-selector/search-selector.component.mjs +4 -4
- package/esm2022/lib/search/search-selector/search-selector.module.mjs +4 -4
- package/esm2022/lib/search/search-settings/search-settings.component.mjs +4 -4
- package/esm2022/lib/search/search-settings/search-settings.module.mjs +4 -4
- package/esm2022/lib/search/search.module.mjs +4 -4
- package/esm2022/lib/search/shared/search-pointer-summary.directive.mjs +5 -4
- package/esm2022/lib/search/shared/search.interfaces.mjs +1 -1
- package/esm2022/lib/search/shared/search.service.mjs +4 -4
- package/esm2022/lib/search/shared/search.utils.mjs +1 -1
- package/esm2022/lib/search/shared/sources/cadastre.mjs +3 -3
- package/esm2022/lib/search/shared/sources/coordinates.mjs +6 -6
- package/esm2022/lib/search/shared/sources/coordinates.providers.mjs +2 -2
- package/esm2022/lib/search/shared/sources/icherche-icons.mjs +1 -1
- package/esm2022/lib/search/shared/sources/icherche.interfaces.mjs +1 -1
- package/esm2022/lib/search/shared/sources/icherche.mjs +14 -13
- package/esm2022/lib/search/shared/sources/ilayer.interfaces.mjs +1 -1
- package/esm2022/lib/search/shared/sources/ilayer.mjs +10 -10
- package/esm2022/lib/search/shared/sources/nominatim.mjs +4 -4
- package/esm2022/lib/search/shared/sources/source.interfaces.mjs +1 -1
- package/esm2022/lib/search/shared/sources/source.mjs +3 -2
- package/esm2022/lib/search/shared/sources/storedqueries.interfaces.mjs +1 -1
- package/esm2022/lib/search/shared/sources/storedqueries.mjs +7 -10
- package/esm2022/lib/search/shared/sources/workspace.mjs +8 -8
- package/esm2022/lib/style/shared/datasource/esri-style-generator.mjs +2 -1
- package/esm2022/lib/style/shared/feature/feature-style.mjs +3 -3
- package/esm2022/lib/style/shared/overlay/overlay-marker-style.utils.mjs +10 -16
- package/esm2022/lib/style/shared/overlay/overlay-style.utils.mjs +1 -1
- package/esm2022/lib/style/shared/vector/vector-style.interface.mjs +1 -1
- package/esm2022/lib/style/style-list/style-list.interface.mjs +1 -1
- package/esm2022/lib/style/style-list/style-list.module.mjs +4 -4
- package/esm2022/lib/style/style-list/style-list.provider.mjs +2 -2
- package/esm2022/lib/style/style-list/style-list.service.mjs +5 -5
- package/esm2022/lib/style/style-modal/drawing/style-modal-drawing.component.mjs +4 -4
- package/esm2022/lib/style/style-modal/layer/style-modal-layer.component.mjs +4 -4
- package/esm2022/lib/style/style-modal/layer-button/style-modal-layer-button.component.mjs +5 -5
- package/esm2022/lib/style/style-service/draw-style.service.mjs +5 -6
- package/esm2022/lib/style/style-service/style.service.mjs +4 -4
- package/esm2022/lib/style/style.module.mjs +4 -4
- package/esm2022/lib/toast/toast.component.mjs +5 -6
- package/esm2022/lib/toast/toast.module.mjs +4 -4
- package/esm2022/lib/utils/id-generator.mjs +6 -4
- package/esm2022/lib/utils/osmLinks.mjs +1 -1
- package/esm2022/lib/utils/propertyTypeDetector/propertyTypeDetector.service.mjs +3 -3
- package/esm2022/lib/wkt/shared/wkt.service.mjs +7 -8
- package/esm2022/lib/wkt/wkt.module.mjs +4 -4
- package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.component.mjs +3 -3
- package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.module.mjs +4 -4
- package/esm2022/lib/workspace/shared/edition-workspace.mjs +1 -1
- package/esm2022/lib/workspace/shared/edition-workspace.service.mjs +11 -9
- package/esm2022/lib/workspace/shared/feature-workspace.mjs +1 -1
- package/esm2022/lib/workspace/shared/feature-workspace.service.mjs +3 -3
- package/esm2022/lib/workspace/shared/wfs-workspace.mjs +1 -1
- package/esm2022/lib/workspace/shared/wfs-workspace.service.mjs +3 -3
- package/esm2022/lib/workspace/shared/wms-workspace.service.mjs +7 -5
- package/esm2022/lib/workspace/shared/workspace.utils.mjs +2 -2
- package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.component.mjs +3 -3
- package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.module.mjs +4 -4
- package/esm2022/lib/workspace/workspace-selector/workspace-selector.directive.mjs +3 -3
- package/esm2022/lib/workspace/workspace-selector/workspace-selector.module.mjs +4 -4
- package/esm2022/lib/workspace/workspace-updator/workspace-updator.directive.mjs +3 -3
- package/esm2022/lib/workspace/workspace-updator/workspace-updator.module.mjs +4 -4
- package/esm2022/lib/workspace/workspace.module.mjs +4 -4
- package/esm2022/public_api.mjs +1 -2
- package/fesm2022/igo2-geo.mjs +943 -1071
- package/fesm2022/igo2-geo.mjs.map +1 -1
- package/lib/catalog/catalog-browser/catalog-browser-layer.component.d.ts +1 -1
- package/lib/catalog/shared/catalog.abstract.d.ts +2 -6
- package/lib/catalog/shared/catalog.interface.d.ts +2 -6
- package/lib/catalog/shared/catalogs.d.ts +2 -2
- package/lib/datasource/shared/datasources/cluster-datasource.interface.d.ts +2 -2
- package/lib/datasource/shared/datasources/datasource.d.ts +2 -2
- package/lib/datasource/shared/datasources/datasource.interface.d.ts +4 -12
- package/lib/datasource/shared/datasources/feature-datasource.interface.d.ts +2 -2
- package/lib/datasource/shared/datasources/mvt-datasource.interface.d.ts +2 -2
- package/lib/datasource/shared/datasources/websocket-datasource.d.ts +3 -3
- package/lib/datasource/shared/datasources/wms-datasource.interface.d.ts +1 -1
- package/lib/datasource/shared/datasources/xyz-datasource.interface.d.ts +2 -2
- package/lib/directions/shared/directions.interface.d.ts +4 -9
- package/lib/directions/shared/directions.utils.d.ts +2 -2
- package/lib/draw/draw/draw.component.d.ts +1 -1
- package/lib/draw/shared/draw-icon.service.d.ts +1 -1
- package/lib/draw/shared/draw.interface.d.ts +1 -2
- package/lib/draw/shared/draw.utils.d.ts +1 -1
- package/lib/feature/feature-details/feature-details.component.d.ts +1 -3
- package/lib/feature/feature-details/feature-details.directive.d.ts +1 -3
- package/lib/feature/feature-form/feature-form.component.d.ts +3 -8
- package/lib/feature/shared/feature.interfaces.d.ts +11 -17
- package/lib/filter/ogc-filter-button/ogc-filter-button.component.d.ts +0 -1
- package/lib/filter/ogc-filter-form/ogc-filter-form.component.d.ts +1 -3
- package/lib/filter/ogc-filter-selection/ogc-filter-selection.component.d.ts +2 -4
- package/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.d.ts +2 -2
- package/lib/filter/ogc-filterable-form/ogc-filterable-form.component.d.ts +0 -1
- package/lib/filter/ogc-filterable-list/ogc-filterable-list.component.d.ts +0 -1
- package/lib/filter/shared/ogc-filter-time.service.d.ts +0 -1
- package/lib/filter/shared/ogc-filter.interface.d.ts +2 -4
- package/lib/filter/shared/ogc-filter.service.d.ts +0 -1
- package/lib/filter/shared/spatial-filter.service.d.ts +1 -3
- package/lib/filter/shared/time-filter.service.d.ts +0 -1
- package/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.d.ts +2 -6
- package/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.d.ts +2 -6
- package/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.d.ts +3 -8
- package/lib/filter/time-filter-button/time-filter-button.component.d.ts +0 -1
- package/lib/filter/time-filter-form/time-filter-form.component.d.ts +10 -10
- package/lib/geo.module.d.ts +8 -9
- package/lib/geometry/geometry-form-field/geometry-form-field-input.component.d.ts +3 -5
- package/lib/geometry/geometry-form-field/geometry-form-field.component.d.ts +1 -3
- package/lib/geometry/shared/geometry.utils.d.ts +1 -8
- package/lib/import-export/export-button/export-button.component.d.ts +0 -1
- package/lib/layer/layer-legend/layer-legend.component.d.ts +1 -3
- package/lib/layer/layer-legend-list/layer-legend-list.component.d.ts +0 -1
- package/lib/layer/layer-list-tool/layer-list-tool.service.d.ts +0 -1
- package/lib/layer/shared/clusterParam.d.ts +1 -3
- package/lib/layer/shared/layers/layer.interface.d.ts +1 -3
- package/lib/layer/shared/layers/vector-layer.d.ts +1 -1
- package/lib/layer/track-feature-button/track-feature-button.component.d.ts +0 -1
- package/lib/layer/utils/outputLegend.d.ts +2 -2
- package/lib/map/info-section/info-section.component.d.ts +0 -1
- package/lib/map/map-center/map-center.component.d.ts +0 -1
- package/lib/map/offline-button/offline-button.component.d.ts +0 -1
- package/lib/map/rotation-button/rotation-button.component.d.ts +3 -2
- package/lib/map/shared/map.d.ts +2 -2
- package/lib/map/shared/map.service.d.ts +0 -1
- package/lib/map/swipe-control/swipe-control.component.d.ts +0 -1
- package/lib/map/zoom-button/zoom-button.component.d.ts +0 -1
- package/lib/measure/measurer/measure-format.pipe.d.ts +1 -1
- package/lib/measure/measurer/measurer-item.component.d.ts +0 -1
- package/lib/measure/shared/measure.interfaces.d.ts +1 -2
- package/lib/metadata/shared/metadata.service.d.ts +0 -1
- package/lib/overlay/shared/index.d.ts +0 -2
- package/lib/print/shared/print.service.d.ts +7 -8
- package/lib/query/shared/query.service.d.ts +0 -1
- package/lib/search/search-results/search-results.component.d.ts +5 -15
- package/lib/search/shared/search.interfaces.d.ts +1 -3
- package/lib/search/shared/sources/coordinates.providers.d.ts +1 -1
- package/lib/search/shared/sources/icherche-icons.d.ts +1 -3
- package/lib/search/shared/sources/icherche.interfaces.d.ts +2 -6
- package/lib/search/shared/sources/ilayer.interfaces.d.ts +4 -8
- package/lib/search/shared/sources/source.interfaces.d.ts +2 -6
- package/lib/search/shared/sources/storedqueries.interfaces.d.ts +2 -6
- package/lib/style/shared/feature/feature-style.d.ts +2 -2
- package/lib/style/shared/vector/vector-style.interface.d.ts +12 -20
- package/lib/style/style-list/style-list.interface.d.ts +1 -3
- package/lib/style/style-list/style-list.provider.d.ts +2 -2
- package/lib/style/style-service/draw-style.service.d.ts +0 -1
- package/lib/style/style-service/style.service.d.ts +1 -3
- package/lib/toast/toast.component.d.ts +0 -1
- package/lib/utils/id-generator.d.ts +1 -2
- package/lib/wkt/shared/wkt.service.d.ts +0 -1
- package/lib/workspace/shared/edition-workspace.service.d.ts +2 -6
- package/package.json +18 -19
- package/public_api.d.ts +0 -1
- package/src/lib/catalog/catalog-browser/catalog-browser.theming.scss +1 -1
- package/src/lib/directions/directions-results/directions-results.theming.scss +1 -1
- package/src/lib/draw/draw.theming.scss +4 -4
- package/src/lib/feature/feature-details/feature-details.theming.scss +1 -1
- package/src/lib/filter/ogc-filter-selection/ogc-filter-selection.theming.scss +3 -3
- package/src/lib/layer/layer-item/layer-item.theme.scss +4 -4
- package/src/lib/layer/layer-legend/layer-legend.theming.scss +1 -1
- package/src/lib/layer/layer-list-tool/layer-list-tool.theming.scss +1 -1
- package/src/lib/map/map-browser/map-browser.theming.scss +5 -5
- package/src/lib/map/menu-button/menu-button.theming.scss +2 -2
- package/src/lib/map/zoom-button/zoom-button.theming.scss +4 -4
- package/src/lib/measure/measurer/measurer.theming.scss +2 -2
- package/src/lib/workspace/confirmation-popup/confirmation-popup.theming.scss +2 -2
- package/esm2022/lib/overlay/overlay.module.mjs +0 -24
- package/esm2022/lib/overlay/shared/overlay.directive.mjs +0 -39
- package/esm2022/lib/overlay/shared/overlay.service.mjs +0 -26
- package/lib/overlay/overlay.module.d.ts +0 -12
- package/lib/overlay/shared/overlay.directive.d.ts +0 -18
- package/lib/overlay/shared/overlay.service.d.ts +0 -14
|
@@ -116,10 +116,10 @@ export class StyleModalLayerComponent {
|
|
|
116
116
|
closePicker() {
|
|
117
117
|
this.dialogRef.disableClose = false;
|
|
118
118
|
}
|
|
119
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
120
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
119
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StyleModalLayerComponent, deps: [{ token: i1.MatDialogRef }, { token: i2.UntypedFormBuilder }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
120
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: StyleModalLayerComponent, isStandalone: true, selector: "igo-style-modal-layer", inputs: { confirmFlag: "confirmFlag" }, ngImport: i0, template: "<h2 mat-dialog-title>\n {{ 'igo.geo.style.styleModal' | translate }}\n</h2>\n<div mat-dialog-content>\n <div class=\"edit-colorpicker\">\n <form class=\"igo-form\" [formGroup]=\"form\">\n <div class=\"color-picker\">\n <ng-container *ngIf=\"linestringOnly !== true\">\n <span>\n <mat-icon class=\"stroke-palette-icon\">format_color_fill</mat-icon>\n {{ 'igo.geo.style.fill' | translate }}\n </span>\n\n <igo-color-picker-form-field\n formControlName=\"fill\"\n (colorChange)=\"setLayerFillColor($event)\"\n ></igo-color-picker-form-field>\n </ng-container>\n\n <span>\n <mat-icon class=\"stroke-palette-icon\">border_color</mat-icon>\n {{ 'igo.geo.style.stroke' | translate }}\n </span>\n <igo-color-picker-form-field\n formControlName=\"stroke\"\n (colorChange)=\"setLayerStrokeColor($event)\"\n ></igo-color-picker-form-field>\n </div>\n </form>\n </div>\n</div>\n<div mat-dialog-actions>\n <button mat-raised-button (click)=\"cancel()\">\n {{ 'igo.geo.style.cancel' | translate }}\n </button>\n <button mat-raised-button color=\"primary\" (click)=\"confirm()\">OK</button>\n</div>\n", styles: ["h2{font-weight:700;font-size:large}.igo-form{padding:10px}.color-picker{display:grid;grid-template-columns:auto 1fr;align-items:center;grid-gap:16px;margin-bottom:16px}.color-picker span{display:flex;align-items:center}.color-picker span mat-icon{margin-right:8px}.edit-colorpicker{padding:10px 0}button{margin-right:5px}\n"], dependencies: [{ kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: ColorPickerFormFieldComponent, selector: "igo-color-picker-form-field", inputs: ["outputFormat"], outputs: ["colorChange"] }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] });
|
|
121
121
|
}
|
|
122
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
122
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StyleModalLayerComponent, decorators: [{
|
|
123
123
|
type: Component,
|
|
124
124
|
args: [{ selector: 'igo-style-modal-layer', standalone: true, imports: [
|
|
125
125
|
MatDialogTitle,
|
|
@@ -139,4 +139,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImpor
|
|
|
139
139
|
}] }], propDecorators: { confirmFlag: [{
|
|
140
140
|
type: Input
|
|
141
141
|
}] } });
|
|
142
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUtbW9kYWwtbGF5ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvc3R5bGUvc3R5bGUtbW9kYWwvbGF5ZXIvc3R5bGUtbW9kYWwtbGF5ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvc3R5bGUvc3R5bGUtbW9kYWwvbGF5ZXIvc3R5bGUtbW9kYWwtbGF5ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQ0wsV0FBVyxFQUNYLG1CQUFtQixFQUNuQixrQkFBa0IsRUFFbkIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUNMLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsZ0JBQWdCLEVBQ2hCLFlBQVksRUFDWixjQUFjLEVBQ2YsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFdkQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFeEQsT0FBTyxFQUFFLE9BQU8sSUFBSSxZQUFZLEVBQUUsTUFBTSxVQUFVLENBQUM7Ozs7Ozs7QUEwQm5ELE1BQU0sT0FBTyx3QkFBd0I7SUFxQjFCO0lBQ0M7SUFDd0I7SUF0QnpCLFdBQVcsR0FBWSxLQUFLLENBQUM7SUFFL0IsSUFBSSxDQUFtQjtJQUV2QixjQUFjLENBQWlC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SSxjQUFjLCtIQUNkLGdCQUFnQix3R0FDaEIsV0FBVywyWUFDWCxtQkFBbUIsZ1ZBQ25CLElBQUksNEZBQ0osYUFBYSxvTEFDYiw2QkFBNkIsNEhBQzdCLGdCQUFnQiwySEFDaEIsZUFBZSwyTkFDZixpQkFBaUI7OzJGQUdSLHdCQUF3QjtrQkFsQnBDLFNBQVM7K0JBQ0UsdUJBQXVCLGNBR3JCLElBQUksV0FDUDt3QkFDUCxjQUFjO3dCQUNkLGdCQUFnQjt3QkFDaEIsV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLElBQUk7d0JBQ0osYUFBYTt3QkFDYiw2QkFBNkI7d0JBQzdCLGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixpQkFBaUI7cUJBQ2xCOzswQkF5QkUsTUFBTTsyQkFBQyxlQUFlO3lDQXRCaEIsV0FBVztzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEZvcm1zTW9kdWxlLFxuICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gIFVudHlwZWRGb3JtR3JvdXBcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7XG4gIE1BVF9ESUFMT0dfREFUQSxcbiAgTWF0RGlhbG9nQWN0aW9ucyxcbiAgTWF0RGlhbG9nQ29udGVudCxcbiAgTWF0RGlhbG9nUmVmLFxuICBNYXREaWFsb2dUaXRsZVxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuXG5pbXBvcnQgeyBDb2xvclBpY2tlckZvcm1GaWVsZENvbXBvbmVudCB9IGZyb20gJ0BpZ28yL2NvbW1vbi9jb2xvcic7XG5pbXBvcnQgeyBJZ29MYW5ndWFnZU1vZHVsZSB9IGZyb20gJ0BpZ28yL2NvcmUvbGFuZ3VhZ2UnO1xuXG5pbXBvcnQgeyBhc0FycmF5IGFzIENvbG9yQXNBcnJheSB9IGZyb20gJ29sL2NvbG9yJztcbmltcG9ydCBvbFN0eWxlIGZyb20gJ29sL3N0eWxlL1N0eWxlJztcblxuaW1wb3J0IHtcbiAgTGF5ZXJNYXREaWFsb2dEYXRhLFxuICBTdHlsZU1vZGFsRGF0YVxufSBmcm9tICcuLi9zaGFyZWQvc3R5bGUtbW9kYWwuaW50ZXJmYWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaWdvLXN0eWxlLW1vZGFsLWxheWVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3N0eWxlLW1vZGFsLWxheWVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3R5bGUtbW9kYWwtbGF5ZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE1hdERpYWxvZ1RpdGxlLFxuICAgIE1hdERpYWxvZ0NvbnRlbnQsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBOZ0lmLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgQ29sb3JQaWNrZXJGb3JtRmllbGRDb21wb25lbnQsXG4gICAgTWF0RGlhbG9nQWN0aW9ucyxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgSWdvTGFuZ3VhZ2VNb2R1bGVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTdHlsZU1vZGFsTGF5ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBjb25maXJtRmxhZzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHB1YmxpYyBmb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xuXG4gIHB1YmxpYyBzdHlsZU1vZGFsRGF0YTogU3R5bGVNb2RhbERhdGE7XG4gIHB1YmxpYyBsaW5lc3RyaW5nT25seTogYm9vbGVhbjtcblxuICBwcml2YXRlIGluaXRpYWxWYWx1ZXM6IFN0eWxlTW9kYWxEYXRhO1xuXG4gIHByaXZhdGUgZGVmYXVsdFZhbHVlczogU3R5bGVNb2RhbERhdGEgPSB7XG4gICAgZmlsbENvbG9yOiAncmdiYSgyNTUsMjU1LDI1NSwwLjQpJyxcbiAgICBzdHJva2VDb2xvcjogJ3JnYmEoMTQzLDcsNywxKSdcbiAgfTtcblxuICBnZXQgbGF5ZXJPbFN0eWxlKCk6IG9sU3R5bGUge1xuICAgIGNvbnN0IHN0eWxlID0gdGhpcy5kYXRhLmxheWVyLm9sLmdldFN0eWxlKCk7XG4gICAgcmV0dXJuIHN0eWxlIGluc3RhbmNlb2YgRnVuY3Rpb24gPyB1bmRlZmluZWQgOiAoc3R5bGUgYXMgb2xTdHlsZSkuY2xvbmUoKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxTdHlsZU1vZGFsTGF5ZXJDb21wb25lbnQ+LFxuICAgIHByaXZhdGUgZm9ybUJ1aWxkZXI6IFVudHlwZWRGb3JtQnVpbGRlcixcbiAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGE6IExheWVyTWF0RGlhbG9nRGF0YVxuICApIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5saW5lc3RyaW5nT25seSA9IHRydWU7XG4gICAgZm9yIChjb25zdCBmZWF0dXJlIG9mIHRoaXMuZGF0YS5sYXllci5vbC5nZXRTb3VyY2UoKS5nZXRGZWF0dXJlcygpKSB7XG4gICAgICBpZiAoZmVhdHVyZS5nZXRHZW9tZXRyeSgpPy5nZXRUeXBlKCkgIT09ICdMaW5lU3RyaW5nJykge1xuICAgICAgICB0aGlzLmxpbmVzdHJpbmdPbmx5ID0gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuYnVpbGRTdHlsZURhdGEoKTtcbiAgICB0aGlzLmJ1aWxkRm9ybSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZEZvcm0oKSB7XG4gICAgdGhpcy5mb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICBmaWxsOiBbdGhpcy5nZXRMYXllckZpbGxDb2xvcigpXSxcbiAgICAgIHN0cm9rZTogW3RoaXMuZ2V0TGF5ZXJTdHJva2VDb2xvcigpXVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZFN0eWxlRGF0YSgpIHtcbiAgICB0aGlzLnN0eWxlTW9kYWxEYXRhID0ge1xuICAgICAgZmlsbENvbG9yOiB0aGlzLmdldExheWVyRmlsbENvbG9yKCksXG4gICAgICBzdHJva2VDb2xvcjogdGhpcy5nZXRMYXllclN0cm9rZUNvbG9yKClcbiAgICB9O1xuICAgIHRoaXMuaW5pdGlhbFZhbHVlcyA9IHtcbiAgICAgIGZpbGxDb2xvcjogdGhpcy5nZXRMYXllckZpbGxDb2xvcigpLFxuICAgICAgc3Ryb2tlQ29sb3I6IHRoaXMuZ2V0TGF5ZXJTdHJva2VDb2xvcigpXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0TGF5ZXJGaWxsQ29sb3IoKSB7XG4gICAgbGV0IGZpbGxDb2xvciA9IHRoaXMuZGVmYXVsdFZhbHVlcy5maWxsQ29sb3I7XG4gICAgY29uc3Qgc3R5bGUgPSB0aGlzLmxheWVyT2xTdHlsZTtcbiAgICBpZiAoc3R5bGU/LmdldEZpbGwoKT8uZ2V0Q29sb3IoKSkge1xuICAgICAgY29uc3QgYXJyYXlDb2xvciA9IHN0eWxlLmdldEZpbGwoKS5nZXRDb2xvcigpO1xuICAgICAgZmlsbENvbG9yID0gYHJnYmEoJHthcnJheUNvbG9yWzBdfSwke2FycmF5Q29sb3JbMV19LCR7YXJyYXlDb2xvclsyXX0sJHtcbiAgICAgICAgYXJyYXlDb2xvclszXSB8fCAwLjRcbiAgICAgIH0pYDtcbiAgICB9XG4gICAgcmV0dXJuIGZpbGxDb2xvcjtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0TGF5ZXJTdHJva2VDb2xvcigpIHtcbiAgICBsZXQgc3Ryb2tlQ29sb3IgPSB0aGlzLmRlZmF1bHRWYWx1ZXMuc3Ryb2tlQ29sb3I7XG4gICAgY29uc3Qgc3R5bGUgPSB0aGlzLmxheWVyT2xTdHlsZTtcbiAgICBpZiAoc3R5bGU/LmdldFN0cm9rZSgpPy5nZXRDb2xvcigpKSB7XG4gICAgICBjb25zdCBhcnJheUNvbG9yID0gc3R5bGUuZ2V0U3Ryb2tlKCkuZ2V0Q29sb3IoKTtcbiAgICAgIHN0cm9rZUNvbG9yID0gYHJnYmEoJHthcnJheUNvbG9yWzBdfSwke2FycmF5Q29sb3JbMV19LCR7YXJyYXlDb2xvclsyXX0sJHtcbiAgICAgICAgYXJyYXlDb2xvclszXSB8fCAxXG4gICAgICB9KWA7XG4gICAgfVxuICAgIHJldHVybiBzdHJva2VDb2xvcjtcbiAgfVxuXG4gIHNldExheWVyRmlsbENvbG9yKGV2ZW50KSB7XG4gICAgY29uc3QgY0FBID0gQ29sb3JBc0FycmF5KGV2ZW50KTtcbiAgICBjb25zdCBzID0gdGhpcy5sYXllck9sU3R5bGUuY2xvbmUoKTtcbiAgICAocy5nZXRJbWFnZSgpIGFzIGFueSkuZ2V0RmlsbCgpLnNldENvbG9yKGNBQSk7XG4gICAgcy5nZXRGaWxsKCkuc2V0Q29sb3IoY0FBKTtcbiAgICB0aGlzLmRhdGEubGF5ZXIub2wuc2V0U3R5bGUocyk7XG4gICAgdGhpcy5zdHlsZU1vZGFsRGF0YS5maWxsQ29sb3IgPSBldmVudDtcbiAgfVxuXG4gIHNldExheWVyU3Ryb2tlQ29sb3IoZXZlbnQpIHtcbiAgICBjb25zdCBjQUEgPSBDb2xvckFzQXJyYXkoZXZlbnQpO1xuICAgIGNvbnN0IHMgPSB0aGlzLmxheWVyT2xTdHlsZS5jbG9uZSgpO1xuICAgIChzLmdldEltYWdlKCkgYXMgYW55KS5nZXRTdHJva2UoKS5zZXRDb2xvcihjQUEpO1xuICAgIHMuZ2V0U3Ryb2tlKCkuc2V0Q29sb3IoY0FBKTtcbiAgICB0aGlzLmRhdGEubGF5ZXIub2wuc2V0U3R5bGUocyk7XG4gICAgdGhpcy5zdHlsZU1vZGFsRGF0YS5zdHJva2VDb2xvciA9IGV2ZW50O1xuICB9XG5cbiAgY2FuY2VsKCkge1xuICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKCk7XG4gICAgdGhpcy5zZXRMYXllckZpbGxDb2xvcih0aGlzLmluaXRpYWxWYWx1ZXMuZmlsbENvbG9yKTtcbiAgICB0aGlzLnNldExheWVyU3Ryb2tlQ29sb3IodGhpcy5pbml0aWFsVmFsdWVzLnN0cm9rZUNvbG9yKTtcbiAgfVxuXG4gIGNvbmZpcm0oKSB7XG4gICAgdGhpcy5jb25maXJtRmxhZyA9IHRydWU7XG4gICAgaWYgKHRoaXMuZm9ybS5nZXQoJ2ZpbGwnKS52YWx1ZSkge1xuICAgICAgdGhpcy5zdHlsZU1vZGFsRGF0YS5maWxsQ29sb3IgPSB0aGlzLmZvcm0uZ2V0KCdmaWxsJykudmFsdWU7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZm9ybS5nZXQoJ3N0cm9rZScpLnZhbHVlKSB7XG4gICAgICB0aGlzLnN0eWxlTW9kYWxEYXRhLnN0cm9rZUNvbG9yID0gdGhpcy5mb3JtLmdldCgnc3Ryb2tlJykudmFsdWU7XG4gICAgfVxuICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKHRoaXMuc3R5bGVNb2RhbERhdGEpO1xuICB9XG5cbiAgb3BlblBpY2tlcigpIHtcbiAgICB0aGlzLmRpYWxvZ1JlZi5kaXNhYmxlQ2xvc2UgPSB0cnVlO1xuICB9XG5cbiAgY2xvc2VQaWNrZXIoKSB7XG4gICAgdGhpcy5kaWFsb2dSZWYuZGlzYWJsZUNsb3NlID0gZmFsc2U7XG4gIH1cbn1cbiIsIjxoMiBtYXQtZGlhbG9nLXRpdGxlPlxuICB7eyAnaWdvLmdlby5zdHlsZS5zdHlsZU1vZGFsJyB8IHRyYW5zbGF0ZSB9fVxuPC9oMj5cbjxkaXYgbWF0LWRpYWxvZy1jb250ZW50PlxuICA8ZGl2IGNsYXNzPVwiZWRpdC1jb2xvcnBpY2tlclwiPlxuICAgIDxmb3JtIGNsYXNzPVwiaWdvLWZvcm1cIiBbZm9ybUdyb3VwXT1cImZvcm1cIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2xvci1waWNrZXJcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImxpbmVzdHJpbmdPbmx5ICE9PSB0cnVlXCI+XG4gICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJzdHJva2UtcGFsZXR0ZS1pY29uXCI+Zm9ybWF0X2NvbG9yX2ZpbGw8L21hdC1pY29uPlxuICAgICAgICAgICAge3sgJ2lnby5nZW8uc3R5bGUuZmlsbCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICA8L3NwYW4+XG5cbiAgICAgICAgICA8aWdvLWNvbG9yLXBpY2tlci1mb3JtLWZpZWxkXG4gICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJmaWxsXCJcbiAgICAgICAgICAgIChjb2xvckNoYW5nZSk9XCJzZXRMYXllckZpbGxDb2xvcigkZXZlbnQpXCJcbiAgICAgICAgICA+PC9pZ28tY29sb3ItcGlja2VyLWZvcm0tZmllbGQ+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxzcGFuPlxuICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cInN0cm9rZS1wYWxldHRlLWljb25cIj5ib3JkZXJfY29sb3I8L21hdC1pY29uPlxuICAgICAgICAgIHt7ICdpZ28uZ2VvLnN0eWxlLnN0cm9rZScgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8aWdvLWNvbG9yLXBpY2tlci1mb3JtLWZpZWxkXG4gICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwic3Ryb2tlXCJcbiAgICAgICAgICAoY29sb3JDaGFuZ2UpPVwic2V0TGF5ZXJTdHJva2VDb2xvcigkZXZlbnQpXCJcbiAgICAgICAgPjwvaWdvLWNvbG9yLXBpY2tlci1mb3JtLWZpZWxkPlxuICAgICAgPC9kaXY+XG4gICAgPC9mb3JtPlxuICA8L2Rpdj5cbjwvZGl2PlxuPGRpdiBtYXQtZGlhbG9nLWFjdGlvbnM+XG4gIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gKGNsaWNrKT1cImNhbmNlbCgpXCI+XG4gICAge3sgJ2lnby5nZW8uc3R5bGUuY2FuY2VsJyB8IHRyYW5zbGF0ZSB9fVxuICA8L2J1dHRvbj5cbiAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwiY29uZmlybSgpXCI+T0s8L2J1dHRvbj5cbjwvZGl2PlxuIl19
|
|
142
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUtbW9kYWwtbGF5ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvc3R5bGUvc3R5bGUtbW9kYWwvbGF5ZXIvc3R5bGUtbW9kYWwtbGF5ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvc3R5bGUvc3R5bGUtbW9kYWwvbGF5ZXIvc3R5bGUtbW9kYWwtbGF5ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQ0wsV0FBVyxFQUNYLG1CQUFtQixFQUNuQixrQkFBa0IsRUFFbkIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUNMLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsZ0JBQWdCLEVBQ2hCLFlBQVksRUFDWixjQUFjLEVBQ2YsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFdkQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFeEQsT0FBTyxFQUFFLE9BQU8sSUFBSSxZQUFZLEVBQUUsTUFBTSxVQUFVLENBQUM7Ozs7Ozs7QUEwQm5ELE1BQU0sT0FBTyx3QkFBd0I7SUFxQjFCO0lBQ0M7SUFDd0I7SUF0QnpCLFdBQVcsR0FBRyxLQUFLLENBQUM7SUFFdEIsSUFBSSxDQUFtQjtJQUV2QixjQUFjLENBQWlC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SSxjQUFjLCtIQUNkLGdCQUFnQix3R0FDaEIsV0FBVywyWUFDWCxtQkFBbUIsZ1ZBQ25CLElBQUksNEZBQ0osYUFBYSxvTEFDYiw2QkFBNkIsNEhBQzdCLGdCQUFnQiwySEFDaEIsZUFBZSwyTkFDZixpQkFBaUI7OzJGQUdSLHdCQUF3QjtrQkFsQnBDLFNBQVM7K0JBQ0UsdUJBQXVCLGNBR3JCLElBQUksV0FDUDt3QkFDUCxjQUFjO3dCQUNkLGdCQUFnQjt3QkFDaEIsV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLElBQUk7d0JBQ0osYUFBYTt3QkFDYiw2QkFBNkI7d0JBQzdCLGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixpQkFBaUI7cUJBQ2xCOzswQkF5QkUsTUFBTTsyQkFBQyxlQUFlO3lDQXRCaEIsV0FBVztzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEZvcm1zTW9kdWxlLFxuICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gIFVudHlwZWRGb3JtR3JvdXBcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7XG4gIE1BVF9ESUFMT0dfREFUQSxcbiAgTWF0RGlhbG9nQWN0aW9ucyxcbiAgTWF0RGlhbG9nQ29udGVudCxcbiAgTWF0RGlhbG9nUmVmLFxuICBNYXREaWFsb2dUaXRsZVxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuXG5pbXBvcnQgeyBDb2xvclBpY2tlckZvcm1GaWVsZENvbXBvbmVudCB9IGZyb20gJ0BpZ28yL2NvbW1vbi9jb2xvcic7XG5pbXBvcnQgeyBJZ29MYW5ndWFnZU1vZHVsZSB9IGZyb20gJ0BpZ28yL2NvcmUvbGFuZ3VhZ2UnO1xuXG5pbXBvcnQgeyBhc0FycmF5IGFzIENvbG9yQXNBcnJheSB9IGZyb20gJ29sL2NvbG9yJztcbmltcG9ydCBvbFN0eWxlIGZyb20gJ29sL3N0eWxlL1N0eWxlJztcblxuaW1wb3J0IHtcbiAgTGF5ZXJNYXREaWFsb2dEYXRhLFxuICBTdHlsZU1vZGFsRGF0YVxufSBmcm9tICcuLi9zaGFyZWQvc3R5bGUtbW9kYWwuaW50ZXJmYWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaWdvLXN0eWxlLW1vZGFsLWxheWVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3N0eWxlLW1vZGFsLWxheWVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3R5bGUtbW9kYWwtbGF5ZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE1hdERpYWxvZ1RpdGxlLFxuICAgIE1hdERpYWxvZ0NvbnRlbnQsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBOZ0lmLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgQ29sb3JQaWNrZXJGb3JtRmllbGRDb21wb25lbnQsXG4gICAgTWF0RGlhbG9nQWN0aW9ucyxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgSWdvTGFuZ3VhZ2VNb2R1bGVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTdHlsZU1vZGFsTGF5ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBjb25maXJtRmxhZyA9IGZhbHNlO1xuXG4gIHB1YmxpYyBmb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xuXG4gIHB1YmxpYyBzdHlsZU1vZGFsRGF0YTogU3R5bGVNb2RhbERhdGE7XG4gIHB1YmxpYyBsaW5lc3RyaW5nT25seTogYm9vbGVhbjtcblxuICBwcml2YXRlIGluaXRpYWxWYWx1ZXM6IFN0eWxlTW9kYWxEYXRhO1xuXG4gIHByaXZhdGUgZGVmYXVsdFZhbHVlczogU3R5bGVNb2RhbERhdGEgPSB7XG4gICAgZmlsbENvbG9yOiAncmdiYSgyNTUsMjU1LDI1NSwwLjQpJyxcbiAgICBzdHJva2VDb2xvcjogJ3JnYmEoMTQzLDcsNywxKSdcbiAgfTtcblxuICBnZXQgbGF5ZXJPbFN0eWxlKCk6IG9sU3R5bGUge1xuICAgIGNvbnN0IHN0eWxlID0gdGhpcy5kYXRhLmxheWVyLm9sLmdldFN0eWxlKCk7XG4gICAgcmV0dXJuIHN0eWxlIGluc3RhbmNlb2YgRnVuY3Rpb24gPyB1bmRlZmluZWQgOiAoc3R5bGUgYXMgb2xTdHlsZSkuY2xvbmUoKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxTdHlsZU1vZGFsTGF5ZXJDb21wb25lbnQ+LFxuICAgIHByaXZhdGUgZm9ybUJ1aWxkZXI6IFVudHlwZWRGb3JtQnVpbGRlcixcbiAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGE6IExheWVyTWF0RGlhbG9nRGF0YVxuICApIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5saW5lc3RyaW5nT25seSA9IHRydWU7XG4gICAgZm9yIChjb25zdCBmZWF0dXJlIG9mIHRoaXMuZGF0YS5sYXllci5vbC5nZXRTb3VyY2UoKS5nZXRGZWF0dXJlcygpKSB7XG4gICAgICBpZiAoZmVhdHVyZS5nZXRHZW9tZXRyeSgpPy5nZXRUeXBlKCkgIT09ICdMaW5lU3RyaW5nJykge1xuICAgICAgICB0aGlzLmxpbmVzdHJpbmdPbmx5ID0gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuYnVpbGRTdHlsZURhdGEoKTtcbiAgICB0aGlzLmJ1aWxkRm9ybSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZEZvcm0oKSB7XG4gICAgdGhpcy5mb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICBmaWxsOiBbdGhpcy5nZXRMYXllckZpbGxDb2xvcigpXSxcbiAgICAgIHN0cm9rZTogW3RoaXMuZ2V0TGF5ZXJTdHJva2VDb2xvcigpXVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZFN0eWxlRGF0YSgpIHtcbiAgICB0aGlzLnN0eWxlTW9kYWxEYXRhID0ge1xuICAgICAgZmlsbENvbG9yOiB0aGlzLmdldExheWVyRmlsbENvbG9yKCksXG4gICAgICBzdHJva2VDb2xvcjogdGhpcy5nZXRMYXllclN0cm9rZUNvbG9yKClcbiAgICB9O1xuICAgIHRoaXMuaW5pdGlhbFZhbHVlcyA9IHtcbiAgICAgIGZpbGxDb2xvcjogdGhpcy5nZXRMYXllckZpbGxDb2xvcigpLFxuICAgICAgc3Ryb2tlQ29sb3I6IHRoaXMuZ2V0TGF5ZXJTdHJva2VDb2xvcigpXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0TGF5ZXJGaWxsQ29sb3IoKSB7XG4gICAgbGV0IGZpbGxDb2xvciA9IHRoaXMuZGVmYXVsdFZhbHVlcy5maWxsQ29sb3I7XG4gICAgY29uc3Qgc3R5bGUgPSB0aGlzLmxheWVyT2xTdHlsZTtcbiAgICBpZiAoc3R5bGU/LmdldEZpbGwoKT8uZ2V0Q29sb3IoKSkge1xuICAgICAgY29uc3QgYXJyYXlDb2xvciA9IHN0eWxlLmdldEZpbGwoKS5nZXRDb2xvcigpO1xuICAgICAgZmlsbENvbG9yID0gYHJnYmEoJHthcnJheUNvbG9yWzBdfSwke2FycmF5Q29sb3JbMV19LCR7YXJyYXlDb2xvclsyXX0sJHtcbiAgICAgICAgYXJyYXlDb2xvclszXSB8fCAwLjRcbiAgICAgIH0pYDtcbiAgICB9XG4gICAgcmV0dXJuIGZpbGxDb2xvcjtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0TGF5ZXJTdHJva2VDb2xvcigpIHtcbiAgICBsZXQgc3Ryb2tlQ29sb3IgPSB0aGlzLmRlZmF1bHRWYWx1ZXMuc3Ryb2tlQ29sb3I7XG4gICAgY29uc3Qgc3R5bGUgPSB0aGlzLmxheWVyT2xTdHlsZTtcbiAgICBpZiAoc3R5bGU/LmdldFN0cm9rZSgpPy5nZXRDb2xvcigpKSB7XG4gICAgICBjb25zdCBhcnJheUNvbG9yID0gc3R5bGUuZ2V0U3Ryb2tlKCkuZ2V0Q29sb3IoKTtcbiAgICAgIHN0cm9rZUNvbG9yID0gYHJnYmEoJHthcnJheUNvbG9yWzBdfSwke2FycmF5Q29sb3JbMV19LCR7YXJyYXlDb2xvclsyXX0sJHtcbiAgICAgICAgYXJyYXlDb2xvclszXSB8fCAxXG4gICAgICB9KWA7XG4gICAgfVxuICAgIHJldHVybiBzdHJva2VDb2xvcjtcbiAgfVxuXG4gIHNldExheWVyRmlsbENvbG9yKGV2ZW50KSB7XG4gICAgY29uc3QgY0FBID0gQ29sb3JBc0FycmF5KGV2ZW50KTtcbiAgICBjb25zdCBzID0gdGhpcy5sYXllck9sU3R5bGUuY2xvbmUoKTtcbiAgICAocy5nZXRJbWFnZSgpIGFzIGFueSkuZ2V0RmlsbCgpLnNldENvbG9yKGNBQSk7XG4gICAgcy5nZXRGaWxsKCkuc2V0Q29sb3IoY0FBKTtcbiAgICB0aGlzLmRhdGEubGF5ZXIub2wuc2V0U3R5bGUocyk7XG4gICAgdGhpcy5zdHlsZU1vZGFsRGF0YS5maWxsQ29sb3IgPSBldmVudDtcbiAgfVxuXG4gIHNldExheWVyU3Ryb2tlQ29sb3IoZXZlbnQpIHtcbiAgICBjb25zdCBjQUEgPSBDb2xvckFzQXJyYXkoZXZlbnQpO1xuICAgIGNvbnN0IHMgPSB0aGlzLmxheWVyT2xTdHlsZS5jbG9uZSgpO1xuICAgIChzLmdldEltYWdlKCkgYXMgYW55KS5nZXRTdHJva2UoKS5zZXRDb2xvcihjQUEpO1xuICAgIHMuZ2V0U3Ryb2tlKCkuc2V0Q29sb3IoY0FBKTtcbiAgICB0aGlzLmRhdGEubGF5ZXIub2wuc2V0U3R5bGUocyk7XG4gICAgdGhpcy5zdHlsZU1vZGFsRGF0YS5zdHJva2VDb2xvciA9IGV2ZW50O1xuICB9XG5cbiAgY2FuY2VsKCkge1xuICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKCk7XG4gICAgdGhpcy5zZXRMYXllckZpbGxDb2xvcih0aGlzLmluaXRpYWxWYWx1ZXMuZmlsbENvbG9yKTtcbiAgICB0aGlzLnNldExheWVyU3Ryb2tlQ29sb3IodGhpcy5pbml0aWFsVmFsdWVzLnN0cm9rZUNvbG9yKTtcbiAgfVxuXG4gIGNvbmZpcm0oKSB7XG4gICAgdGhpcy5jb25maXJtRmxhZyA9IHRydWU7XG4gICAgaWYgKHRoaXMuZm9ybS5nZXQoJ2ZpbGwnKS52YWx1ZSkge1xuICAgICAgdGhpcy5zdHlsZU1vZGFsRGF0YS5maWxsQ29sb3IgPSB0aGlzLmZvcm0uZ2V0KCdmaWxsJykudmFsdWU7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZm9ybS5nZXQoJ3N0cm9rZScpLnZhbHVlKSB7XG4gICAgICB0aGlzLnN0eWxlTW9kYWxEYXRhLnN0cm9rZUNvbG9yID0gdGhpcy5mb3JtLmdldCgnc3Ryb2tlJykudmFsdWU7XG4gICAgfVxuICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKHRoaXMuc3R5bGVNb2RhbERhdGEpO1xuICB9XG5cbiAgb3BlblBpY2tlcigpIHtcbiAgICB0aGlzLmRpYWxvZ1JlZi5kaXNhYmxlQ2xvc2UgPSB0cnVlO1xuICB9XG5cbiAgY2xvc2VQaWNrZXIoKSB7XG4gICAgdGhpcy5kaWFsb2dSZWYuZGlzYWJsZUNsb3NlID0gZmFsc2U7XG4gIH1cbn1cbiIsIjxoMiBtYXQtZGlhbG9nLXRpdGxlPlxuICB7eyAnaWdvLmdlby5zdHlsZS5zdHlsZU1vZGFsJyB8IHRyYW5zbGF0ZSB9fVxuPC9oMj5cbjxkaXYgbWF0LWRpYWxvZy1jb250ZW50PlxuICA8ZGl2IGNsYXNzPVwiZWRpdC1jb2xvcnBpY2tlclwiPlxuICAgIDxmb3JtIGNsYXNzPVwiaWdvLWZvcm1cIiBbZm9ybUdyb3VwXT1cImZvcm1cIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2xvci1waWNrZXJcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImxpbmVzdHJpbmdPbmx5ICE9PSB0cnVlXCI+XG4gICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJzdHJva2UtcGFsZXR0ZS1pY29uXCI+Zm9ybWF0X2NvbG9yX2ZpbGw8L21hdC1pY29uPlxuICAgICAgICAgICAge3sgJ2lnby5nZW8uc3R5bGUuZmlsbCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICA8L3NwYW4+XG5cbiAgICAgICAgICA8aWdvLWNvbG9yLXBpY2tlci1mb3JtLWZpZWxkXG4gICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJmaWxsXCJcbiAgICAgICAgICAgIChjb2xvckNoYW5nZSk9XCJzZXRMYXllckZpbGxDb2xvcigkZXZlbnQpXCJcbiAgICAgICAgICA+PC9pZ28tY29sb3ItcGlja2VyLWZvcm0tZmllbGQ+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxzcGFuPlxuICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cInN0cm9rZS1wYWxldHRlLWljb25cIj5ib3JkZXJfY29sb3I8L21hdC1pY29uPlxuICAgICAgICAgIHt7ICdpZ28uZ2VvLnN0eWxlLnN0cm9rZScgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8aWdvLWNvbG9yLXBpY2tlci1mb3JtLWZpZWxkXG4gICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwic3Ryb2tlXCJcbiAgICAgICAgICAoY29sb3JDaGFuZ2UpPVwic2V0TGF5ZXJTdHJva2VDb2xvcigkZXZlbnQpXCJcbiAgICAgICAgPjwvaWdvLWNvbG9yLXBpY2tlci1mb3JtLWZpZWxkPlxuICAgICAgPC9kaXY+XG4gICAgPC9mb3JtPlxuICA8L2Rpdj5cbjwvZGl2PlxuPGRpdiBtYXQtZGlhbG9nLWFjdGlvbnM+XG4gIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gKGNsaWNrKT1cImNhbmNlbCgpXCI+XG4gICAge3sgJ2lnby5nZW8uc3R5bGUuY2FuY2VsJyB8IHRyYW5zbGF0ZSB9fVxuICA8L2J1dHRvbj5cbiAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwiY29uZmlybSgpXCI+T0s8L2J1dHRvbj5cbjwvZGl2PlxuIl19
|
|
@@ -25,20 +25,20 @@ export class StyleModalLayerButtonComponent {
|
|
|
25
25
|
setTimeout(() => {
|
|
26
26
|
// open the dialog box used to style features
|
|
27
27
|
const data = { layer: this.layer };
|
|
28
|
-
|
|
28
|
+
this.dialog.open(StyleModalLayerComponent, {
|
|
29
29
|
disableClose: false,
|
|
30
30
|
data,
|
|
31
31
|
autoFocus: false
|
|
32
32
|
});
|
|
33
33
|
}, 250);
|
|
34
34
|
}
|
|
35
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
36
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
35
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StyleModalLayerButtonComponent, deps: [{ token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Component });
|
|
36
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: StyleModalLayerButtonComponent, isStandalone: true, selector: "igo-style-modal-layer-button", inputs: { layer: "layer" }, ngImport: i0, template: "<button\n mat-icon-button\n color=\"primary\"\n (click)=\"openStyleModalDialog()\"\n [matTooltip]=\"'igo.geo.style.styleModalTooltipLayer' | translate\"\n>\n <mat-icon class=\"style-icon\">palette </mat-icon>\n</button>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
37
37
|
}
|
|
38
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StyleModalLayerButtonComponent, decorators: [{
|
|
39
39
|
type: Component,
|
|
40
40
|
args: [{ selector: 'igo-style-modal-layer-button', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [MatButtonModule, MatTooltipModule, MatIconModule, IgoLanguageModule], template: "<button\n mat-icon-button\n color=\"primary\"\n (click)=\"openStyleModalDialog()\"\n [matTooltip]=\"'igo.geo.style.styleModalTooltipLayer' | translate\"\n>\n <mat-icon class=\"style-icon\">palette </mat-icon>\n</button>\n" }]
|
|
41
41
|
}], ctorParameters: () => [{ type: i1.MatDialog }], propDecorators: { layer: [{
|
|
42
42
|
type: Input
|
|
43
43
|
}] } });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUtbW9kYWwtbGF5ZXItYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3N0eWxlL3N0eWxlLW1vZGFsL2xheWVyLWJ1dHRvbi9zdHlsZS1tb2RhbC1sYXllci1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvc3R5bGUvc3R5bGUtbW9kYWwvbGF5ZXItYnV0dG9uL3N0eWxlLW1vZGFsLWxheWVyLWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUU3RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV4RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDeEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7QUFXaEYsTUFBTSxPQUFPLDhCQUE4QjtJQUVyQjtJQURYLEtBQUssQ0FBYztJQUM1QixZQUFvQixNQUFpQjtRQUFqQixXQUFNLEdBQU4sTUFBTSxDQUFXO0lBQUcsQ0FBQztJQUV6Qzs7T0FFRztJQUNILG9CQUFvQjtRQUNsQixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsNkNBQTZDO1lBQzdDLE1BQU0sSUFBSSxHQUF1QixFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDdkQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsd0JBQXdCLEVBQUU7Z0JBQ3pDLFlBQVksRUFBRSxLQUFLO2dCQUNuQixJQUFJO2dCQUNKLFNBQVMsRUFBRSxLQUFLO2FBQ2pCLENBQUMsQ0FBQztRQUNMLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNWLENBQUM7dUdBakJVLDhCQUE4QjsyRkFBOUIsOEJBQThCLG9IQ3BCM0Msb09BUUEseUREVVksZUFBZSwySUFBRSxnQkFBZ0IsNFRBQUUsYUFBYSxtTEFBRSxpQkFBaUI7OzJGQUVsRSw4QkFBOEI7a0JBUjFDLFNBQVM7K0JBQ0UsOEJBQThCLG1CQUd2Qix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsaUJBQWlCLENBQUM7OEVBR3JFLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcblxuaW1wb3J0IHsgSWdvTGFuZ3VhZ2VNb2R1bGUgfSBmcm9tICdAaWdvMi9jb3JlL2xhbmd1YWdlJztcblxuaW1wb3J0IHsgVmVjdG9yTGF5ZXIgfSBmcm9tICcuLi8uLi8uLi9sYXllci9zaGFyZWQvbGF5ZXJzL3ZlY3Rvci1sYXllcic7XG5pbXBvcnQgeyBTdHlsZU1vZGFsTGF5ZXJDb21wb25lbnQgfSBmcm9tICcuLi9sYXllci9zdHlsZS1tb2RhbC1sYXllci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGF5ZXJNYXREaWFsb2dEYXRhIH0gZnJvbSAnLi4vc2hhcmVkL3N0eWxlLW1vZGFsLmludGVyZmFjZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2lnby1zdHlsZS1tb2RhbC1sYXllci1idXR0b24nLFxuICB0ZW1wbGF0ZVVybDogJy4vc3R5bGUtbW9kYWwtbGF5ZXItYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3R5bGUtbW9kYWwtbGF5ZXItYnV0dG9uLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTWF0QnV0dG9uTW9kdWxlLCBNYXRUb29sdGlwTW9kdWxlLCBNYXRJY29uTW9kdWxlLCBJZ29MYW5ndWFnZU1vZHVsZV1cbn0pXG5leHBvcnQgY2xhc3MgU3R5bGVNb2RhbExheWVyQnV0dG9uQ29tcG9uZW50IHtcbiAgQElucHV0KCkgbGF5ZXI6IFZlY3RvckxheWVyO1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nKSB7fVxuXG4gIC8qKlxuICAgKiBPcGVuIHRoZSBzdHlsZSBtb2RhbCBkaWFsb2cgYm94XG4gICAqL1xuICBvcGVuU3R5bGVNb2RhbERpYWxvZygpIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIC8vIG9wZW4gdGhlIGRpYWxvZyBib3ggdXNlZCB0byBzdHlsZSBmZWF0dXJlc1xuICAgICAgY29uc3QgZGF0YTogTGF5ZXJNYXREaWFsb2dEYXRhID0geyBsYXllcjogdGhpcy5sYXllciB9O1xuICAgICAgdGhpcy5kaWFsb2cub3BlbihTdHlsZU1vZGFsTGF5ZXJDb21wb25lbnQsIHtcbiAgICAgICAgZGlzYWJsZUNsb3NlOiBmYWxzZSxcbiAgICAgICAgZGF0YSxcbiAgICAgICAgYXV0b0ZvY3VzOiBmYWxzZVxuICAgICAgfSk7XG4gICAgfSwgMjUwKTtcbiAgfVxufVxuIiwiPGJ1dHRvblxuICBtYXQtaWNvbi1idXR0b25cbiAgY29sb3I9XCJwcmltYXJ5XCJcbiAgKGNsaWNrKT1cIm9wZW5TdHlsZU1vZGFsRGlhbG9nKClcIlxuICBbbWF0VG9vbHRpcF09XCInaWdvLmdlby5zdHlsZS5zdHlsZU1vZGFsVG9vbHRpcExheWVyJyB8IHRyYW5zbGF0ZVwiXG4+XG4gIDxtYXQtaWNvbiBjbGFzcz1cInN0eWxlLWljb25cIj5wYWxldHRlIDwvbWF0LWljb24+XG48L2J1dHRvbj5cbiJdfQ==
|
|
@@ -14,7 +14,6 @@ export class DrawStyleService {
|
|
|
14
14
|
fontStyle = FontType.Arial.toString();
|
|
15
15
|
offsetX = 0;
|
|
16
16
|
offsetY = 0;
|
|
17
|
-
constructor() { }
|
|
18
17
|
getFillColor() {
|
|
19
18
|
return this.fillColor;
|
|
20
19
|
}
|
|
@@ -244,13 +243,13 @@ export class DrawStyleService {
|
|
|
244
243
|
return style;
|
|
245
244
|
}
|
|
246
245
|
}
|
|
247
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
248
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
246
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DrawStyleService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
247
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DrawStyleService, providedIn: 'root' });
|
|
249
248
|
}
|
|
250
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
249
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DrawStyleService, decorators: [{
|
|
251
250
|
type: Injectable,
|
|
252
251
|
args: [{
|
|
253
252
|
providedIn: 'root'
|
|
254
253
|
}]
|
|
255
|
-
}]
|
|
256
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhdy1zdHlsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvc3R5bGUvc3R5bGUtc2VydmljZS9kcmF3LXN0eWxlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLE9BQU8sTUFBTSxlQUFlLENBQUM7QUFDcEMsT0FBTyxFQUFrQixTQUFTLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDcEQsT0FBTyxLQUFLLE9BQU8sTUFBTSxVQUFVLENBQUM7QUFFcEMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQUsvQyxNQUFNLE9BQU8sZ0JBQWdCO0lBQ25CLFNBQVMsR0FBRyx1QkFBdUIsQ0FBQztJQUNwQyxXQUFXLEdBQUcsaUJBQWlCLENBQUM7SUFDaEMsV0FBVyxHQUFXLENBQUMsQ0FBQztJQUN4QixjQUFjLEdBQUcsSUFBSSxDQUFDO0lBQ3RCLElBQUksQ0FBUztJQUNiLFFBQVEsR0FBVyxJQUFJLENBQUM7SUFDeEIsU0FBUyxHQUFXLFFBQVEsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDOUMsT0FBTyxHQUFXLENBQUMsQ0FBQztJQUNwQixPQUFPLEdBQVcsQ0FBQyxDQUFDO0lBRTVCLGdCQUFlLENBQUM7SUFFaEIsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBRUQsWUFBWSxDQUFDLFNBQWlCO1FBQzVCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO0lBQzdCLENBQUM7SUFFRCxjQUFjO1FBQ1osT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFFRCxjQUFjLENBQUMsV0FBbUI7UUFDaEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7SUFDakMsQ0FB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LE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQztJQUNILENBQUM7dUdBbFNVLGdCQUFnQjsyR0FBaEIsZ0JBQWdCLGNBRmYsTUFBTTs7MkZBRVAsZ0JBQWdCO2tCQUg1QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IE9sUG9pbnQgZnJvbSAnb2wvZ2VvbS9Qb2ludCc7XG5pbXBvcnQgeyBQcm9qZWN0aW9uTGlrZSwgdHJhbnNmb3JtIH0gZnJvbSAnb2wvcHJvaic7XG5pbXBvcnQgKiBhcyBPbFN0eWxlIGZyb20gJ29sL3N0eWxlJztcblxuaW1wb3J0IHsgRm9udFR5cGUgfSBmcm9tICcuLi9zaGFyZWQvZm9udC5lbnVtJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRHJhd1N0eWxlU2VydmljZSB7XG4gIHByaXZhdGUgZmlsbENvbG9yID0gJ3JnYmEoMjU1LDI1NSwyNTUsMC40KSc7XG4gIHByaXZhdGUgc3Ryb2tlQ29sb3IgPSAncmdiYSgxNDMsNyw3LDEpJztcbiAgcHJpdmF0ZSBzdHJva2VXaWR0aDogbnVtYmVyID0gMTtcbiAgcHJpdmF0ZSBsYWJlbHNBcmVTaG93biA9IHRydWU7XG4gIHByaXZhdGUgaWNvbjogc3RyaW5nO1xuICBwcml2YXRlIGZvbnRTaXplOiBzdHJpbmcgPSAnMTUnO1xuICBwcml2YXRlIGZvbnRTdHlsZTogc3RyaW5nID0gRm9udFR5cGUuQXJpYWwudG9TdHJpbmcoKTtcbiAgcHJpdmF0ZSBvZmZzZXRYOiBudW1iZXIgPSAwO1xuICBwcml2YXRlIG9mZnNldFk6IG51bWJlciA9IDA7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIGdldEZpbGxDb2xvcigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmZpbGxDb2xvcjtcbiAgfVxuXG4gIHNldEZpbGxDb2xvcihmaWxsQ29sb3I6IHN0cmluZykge1xuICAgIHRoaXMuZmlsbENvbG9yID0gZmlsbENvbG9yO1xuICB9XG5cbiAgZ2V0U3Ryb2tlQ29sb3IoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5zdHJva2VDb2xvcjtcbiAgfVxuXG4gIHNldFN0cm9rZUNvbG9yKHN0cm9rZUNvbG9yOiBzdHJpbmcpIHtcbiAgICB0aGlzLnN0cm9rZUNvbG9yID0gc3Ryb2tlQ29sb3I7XG4gIH1cblxuICBnZXRTdHJva2VXaWR0aCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnN0cm9rZVdpZHRoO1xuICB9XG5cbiAgZ2V0TGFiZWxzQXJlU2hvd24oKSB7XG4gICAgcmV0dXJuIHRoaXMubGFiZWxzQXJlU2hvd247XG4gIH1cblxuICB0b2dnbGVMYWJlbHNBcmVTaG93bigpIHtcbiAgICB0aGlzLmxhYmVsc0FyZVNob3duID0gIXRoaXMubGFiZWxzQXJlU2hvd247XG4gIH1cblxuICBzZXRJY29uKGljb246IHN0cmluZykge1xuICAgIHRoaXMuaWNvbiA9IGljb247XG4gIH1cblxuICBnZXRJY29uKCkge1xuICAgIHJldHVybiB0aGlzLmljb247XG4gIH1cblxuICAvLyBUbyBlZGl0IHRoZSBsYWJlbCBvZiBkcmF3aW5nXG4gIGdldEZvbnRTaXplKCkge1xuICAgIHJldHVybiB0aGlzLmZvbnRTaXplO1xuICB9XG5cbiAgc2V0Rm9udFNpemUoZm9udFNpemU6IHN0cmluZykge1xuICAgIHRoaXMuZm9udFNpemUgPSBmb250U2l6ZTtcbiAgfVxuXG4gIGdldEZvbnRTdHlsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5mb250U3R5bGU7XG4gIH1cblxuICBzZXRGb250U3R5bGUoZm9udFN0eWxlOiBzdHJpbmcpIHtcbiAgICB0aGlzLmZvbnRTdHlsZSA9IGZvbnRTdHlsZTtcbiAgfVxuXG4gIGdldE9mZnNldFgoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5vZmZzZXRYO1xuICB9XG5cbiAgc2V0T2Zmc2V0WChvZmZzZXRYOiBudW1iZXIpIHtcbiAgICB0aGlzLm9mZnNldFggPSBvZmZzZXRYO1xuICB9XG5cbiAgZ2V0T2Zmc2V0WSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLm9mZnNldFk7XG4gIH1cblxuICBzZXRPZmZzZXRZKG9mZnNldFk6IG51bWJlcikge1xuICAgIHRoaXMub2Zmc2V0WSA9IG9mZnNldFk7XG4gIH1cblxuICBjcmVhdGVJbmRpdmlkdWFsRWxlbWVudFN0eWxlKFxuICAgIGZlYXR1cmUsXG4gICAgcmVzb2x1dGlvbixcbiAgICBsYWJlbHNBcmVTaG93bjogYm9vbGVhbixcbiAgICBmb250U2l6ZUFuZFN0eWxlOiBzdHJpbmcsXG4gICAgZmlsbENvbG9yOiBzdHJpbmcsXG4gICAgc3Ryb2tlQ29sb3I6IHN0cmluZyxcbiAgICBvZmZzZXRYOiBudW1iZXIsXG4gICAgb2Zmc2V0WTogbnVtYmVyLFxuICAgIHByb2o6IFByb2plY3Rpb25MaWtlLFxuICAgIGljb24/OiBzdHJpbmdcbiAgKTogT2xTdHlsZS5TdHlsZSB7XG4gICAgbGV0IHN0eWxlO1xuICAgIGxldCBsYWJlbHNBcmVPZmZzZXQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBjb25zdCBnZW9tID0gZmVhdHVyZS5nZXRHZW9tZXRyeSgpO1xuXG4gICAgaWYgKGdlb20gaW5zdGFuY2VvZiBPbFBvaW50KSB7XG4gICAgICBsYWJlbHNBcmVPZmZzZXQgPSAhbGFiZWxzQXJlT2Zmc2V0O1xuICAgIH1cbiAgICBjb25zdCB0ZXh0VG9TaG93ID0gbGFiZWxzQXJlU2hvd24gPyBmZWF0dXJlLmdldCgnZHJhdycpIDogJyc7XG4gICAgZmVhdHVyZS5zZXQoJ19tYXBUaXRsZScsIHRleHRUb1Nob3cpO1xuICAgIGNvbnN0IHRleHRJZ29TdHlsZU9iamVjdCA9IHtcbiAgICAgIHRleHQ6IHRleHRUb1Nob3csXG4gICAgICBzdHJva2U6IHtcbiAgICAgICAgY29sb3I6ICd3aGl0ZScsXG4gICAgICAgIHdpZHRoOiAwLjc1XG4gICAgICB9LFxuICAgICAgZmlsbDogeyBjb2xvcjogJ2JsYWNrJyB9LFxuICAgICAgZm9udDogZm9udFNpemVBbmRTdHlsZSxcbiAgICAgIG92ZXJmbG93OiB0cnVlLFxuICAgICAgb2Zmc2V0WDogb2Zmc2V0WCxcbiAgICAgIG9mZnNldFk6IG9mZnNldFlcbiAgICB9O1xuXG4gICAgbGV0IGlnb1N0eWxlT2JqZWN0O1xuXG4gICAgLy8gaWYgZmVhdHVyZSBpcyBhIGNpcmNsZVxuICAgIGlmIChmZWF0dXJlLmdldCgncmFkJykpIHtcbiAgICAgIGNvbnN0IGNvb3JkaW5hdGVzID0gdHJhbnNmb3JtKFxuICAgICAgICBmZWF0dXJlLmdldEdlb21ldHJ5KCkuZmxhdENvb3JkaW5hdGVzLFxuICAgICAgICBwcm9qLFxuICAgICAgICAnRVBTRzo0MzI2J1xuICAgICAgKTtcbiAgICAgIGNvbnN0IHJhZGl1cyA9XG4gICAgICAgIGZlYXR1cmUuZ2V0KCdyYWQnKSAvXG4gICAgICAgIE1hdGguY29zKChNYXRoLlBJIC8gMTgwKSAqIGNvb3JkaW5hdGVzWzFdKSAvXG4gICAgICAgIHJlc29sdXRpb247XG4gICAgICBpZ29TdHlsZU9iamVjdCA9IHtcbiAgICAgICAgdGV4dDogdGV4dElnb1N0eWxlT2JqZWN0LFxuICAgICAgICBjaXJjbGU6IHtcbiAgICAgICAgICByYWRpdXMsXG4gICAgICAgICAgc3Ryb2tlOiB7XG4gICAgICAgICAgICBjb2xvcjogc3Ryb2tlQ29sb3IgPyBzdHJva2VDb2xvciA6IHRoaXMuc3Ryb2tlQ29sb3IsXG4gICAgICAgICAgICB3aWR0aDogdGhpcy5zdHJva2VXaWR0aFxuICAgICAgICAgIH0sXG4gICAgICAgICAgZmlsbDoge1xuICAgICAgICAgICAgY29sb3I6IGZpbGxDb2xvclxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfTtcbiAgICAgIGZlYXR1cmUuc2V0KCdfc3R5bGUnLCBpZ29TdHlsZU9iamVjdCk7XG5cbiAgICAgIHN0eWxlID0gbmV3IE9sU3R5bGUuU3R5bGUoe1xuICAgICAgICB0ZXh0OiBuZXcgT2xTdHlsZS5UZXh0KHtcbiAgICAgICAgICB0ZXh0OiB0ZXh0VG9TaG93LFxuICAgICAgICAgIHN0cm9rZTogbmV3IE9sU3R5bGUuU3Ryb2tlKHtcbiAgICAgICAgICAgIGNvbG9yOiAnd2hpdGUnLFxuICAgICAgICAgICAgd2lkdGg6IDAuNzVcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBmaWxsOiBuZXcgT2xTdHlsZS5GaWxsKHtcbiAgICAgICAgICAgIGNvbG9yOiAnYmxhY2snXG4gICAgICAgICAgfSksXG5cbiAgICAgICAgICBmb250OiBmb250U2l6ZUFuZFN0eWxlLFxuICAgICAgICAgIG92ZXJmbG93OiB0cnVlLFxuICAgICAgICAgIG9mZnNldFg6IG9mZnNldFgsXG4gICAgICAgICAgb2Zmc2V0WTogb2Zmc2V0WVxuICAgICAgICB9KSxcblxuICAgICAgICBpbWFnZTogbmV3IE9sU3R5bGUuQ2lyY2xlKHtcbiAgICAgICAgICByYWRpdXMsXG4gICAgICAgICAgc3Ryb2tlOiBuZXcgT2xTdHlsZS5TdHJva2Uoe1xuICAgICAgICAgICAgY29sb3I6IHN0cm9rZUNvbG9yID8gc3Ryb2tlQ29sb3IgOiB0aGlzLnN0cm9rZUNvbG9yLFxuICAgICAgICAgICAgd2lkdGg6IHRoaXMuc3Ryb2tlV2lkdGhcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBmaWxsOiBuZXcgT2xTdHlsZS5GaWxsKHtcbiAgICAgICAgICAgIGNvbG9yOiBmaWxsQ29sb3JcbiAgICAgICAgICB9KVxuICAgICAgICB9KVxuICAgICAgfSk7XG4gICAgICByZXR1cm4gc3R5bGU7XG5cbiAgICAgIC8vIGlmIGZlYXR1cmUgaXMgYW4gaWNvblxuICAgIH0gZWxzZSBpZiAoaWNvbikge1xuICAgICAgdGhpcy5vZmZzZXRZID0gLTI2O1xuICAgICAgdGV4dElnb1N0eWxlT2JqZWN0Lm9mZnNldFkgPSB0aGlzLm9mZnNldFk7XG4gICAgICBjb25zdCBpZ29TdHlsZU9iamVjdCA9IHtcbiAgICAgICAgdGV4dDogdGV4dElnb1N0eWxlT2JqZWN0LFxuICAgICAgICBzdHJva2U6IHtcbiAgICAgICAgICBjb2xvcjogc3Ryb2tlQ29sb3IsXG4gICAgICAgICAgd2lkdGg6IHRoaXMuc3Ryb2tlV2lkdGhcbiAgICAgICAgfSxcbiAgICAgICAgZmlsbDoge1xuICAgICAgICAgIGNvbG9yOiBmaWxsQ29sb3JcbiAgICAgICAgfSxcbiAgICAgICAgaWNvbjoge1xuICAgICAgICAgIHNyYzogaWNvblxuICAgICAgICB9XG4gICAgICB9O1xuICAgICAgZmVhdHVyZS5zZXQoJ19zdHlsZScsIGlnb1N0eWxlT2JqZWN0KTtcblxuICAgICAgc3R5bGUgPSBuZXcgT2xTdHlsZS5TdHlsZSh7XG4gICAgICAgIHRleHQ6IG5ldyBPbFN0eWxlLlRleHQoe1xuICAgICAgICAgIHRleHQ6IGxhYmVsc0FyZVNob3duID8gZmVhdHVyZS5nZXQoJ2RyYXcnKSA6ICcnLFxuICAgICAgICAgIHN0cm9rZTogbmV3IE9sU3R5bGUuU3Ryb2tlKHtcbiAgICAgICAgICAgIGNvbG9yOiAnd2hpdGUnLFxuICAgICAgICAgICAgd2lkdGg6IDAuNzVcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBmaWxsOiBuZXcgT2xTdHlsZS5GaWxsKHtcbiAgICAgICAgICAgIGNvbG9yOiAnYmxhY2snXG4gICAgICAgICAgfSksXG4gICAgICAgICAgZm9udDogZm9udFNpemVBbmRTdHlsZSxcbiAgICAgICAgICBvdmVyZmxvdzogdHJ1ZSxcbiAgICAgICAgICBvZmZzZXRYOiBvZmZzZXRYLFxuICAgICAgICAgIG9mZnNldFk6IG9mZnNldFlcbiAgICAgICAgfSksXG5cbiAgICAgICAgc3Ryb2tlOiBuZXcgT2xTdHlsZS5TdHJva2Uoe1xuICAgICAgICAgIGNvbG9yOiBzdHJva2VDb2xvcixcbiAgICAgICAgICB3aWR0aDogdGhpcy5zdHJva2VXaWR0aFxuICAgICAgICB9KSxcblxuICAgICAgICBmaWxsOiBuZXcgT2xTdHlsZS5GaWxsKHtcbiAgICAgICAgICBjb2xvcjogZmlsbENvbG9yXG4gICAgICAgIH0pLFxuXG4gICAgICAgIGltYWdlOiBuZXcgT2xTdHlsZS5JY29uKHtcbiAgICAgICAgICBzcmM6IGljb25cbiAgICAgICAgfSlcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIHN0eWxlO1xuXG4gICAgICAvLyBpZiBmZWF0dXJlIGlzIGEgcG9pbnQsIGEgbGluZXN0cmluZyBvciBhIHBvbHlnb25cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5vZmZzZXRZID0gbGFiZWxzQXJlT2Zmc2V0ID8gLTE1IDogMDtcblxuICAgICAgdGV4dElnb1N0eWxlT2JqZWN0Lm9mZnNldFkgPSB0aGlzLm9mZnNldFk7XG4gICAgICBjb25zdCBpZ29TdHlsZU9iamVjdCA9IHtcbiAgICAgICAgdGV4dDogdGV4dElnb1N0eWxlT2JqZWN0LFxuICAgICAgICBzdHJva2U6IHtcbiAgICAgICAgICBjb2xvcjogc3Ryb2tlQ29sb3IsXG4gICAgICAgICAgd2lkdGg6IHRoaXMuc3Ryb2tlV2lkdGhcbiAgICAgICAgfSxcbiAgICAgICAgZmlsbDoge1xuICAgICAgICAgIGNvbG9yOiBmaWxsQ29sb3JcbiAgICAgICAgfSxcbiAgICAgICAgY2lyY2xlOiB7XG4gICAgICAgICAgcmFkaXVzOiA1LFxuICAgICAgICAgIHN0cm9rZToge1xuICAgICAgICAgICAgY29sb3I6IHN0cm9rZUNvbG9yLFxuICAgICAgICAgICAgd2lkdGg6IHRoaXMuc3Ryb2tlV2lkdGhcbiAgICAgICAgICB9LFxuICAgICAgICAgIGZpbGw6IHtcbiAgICAgICAgICAgIGNvbG9yOiBmaWxsQ29sb3JcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgICBmZWF0dXJlLnNldCgnX3N0eWxlJywgaWdvU3R5bGVPYmplY3QpO1xuXG4gICAgICBzdHlsZSA9IG5ldyBPbFN0eWxlLlN0eWxlKHtcbiAgICAgICAgdGV4dDogbmV3IE9sU3R5bGUuVGV4dCh7XG4gICAgICAgICAgdGV4dDogbGFiZWxzQXJlU2hvd24gPyBmZWF0dXJlLmdldCgnZHJhdycpIDogJycsXG4gICAgICAgICAgc3Ryb2tlOiBuZXcgT2xTdHlsZS5TdHJva2Uoe1xuICAgICAgICAgICAgY29sb3I6ICd3aGl0ZScsXG4gICAgICAgICAgICB3aWR0aDogMC43NVxuICAgICAgICAgIH0pLFxuICAgICAgICAgIGZpbGw6IG5ldyBPbFN0eWxlLkZpbGwoe1xuICAgICAgICAgICAgY29sb3I6ICdibGFjaydcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBmb250OiBmb250U2l6ZUFuZFN0eWxlLFxuICAgICAgICAgIG92ZXJmbG93OiB0cnVlLFxuXG4gICAgICAgICAgb2Zmc2V0WDogb2Zmc2V0WCxcbiAgICAgICAgICBvZmZzZXRZOiBvZmZzZXRZXG4gICAgICAgIH0pLFxuXG4gICAgICAgIHN0cm9rZTogbmV3IE9sU3R5bGUuU3Ryb2tlKHtcbiAgICAgICAgICBjb2xvcjogc3Ryb2tlQ29sb3IsXG4gICAgICAgICAgd2lkdGg6IHRoaXMuc3Ryb2tlV2lkdGhcbiAgICAgICAgfSksXG5cbiAgICAgICAgZmlsbDogbmV3IE9sU3R5bGUuRmlsbCh7XG4gICAgICAgICAgY29sb3I6IGZpbGxDb2xvclxuICAgICAgICB9KSxcblxuICAgICAgICBpbWFnZTogbmV3IE9sU3R5bGUuQ2lyY2xlKHtcbiAgICAgICAgICByYWRpdXM6IDUsXG4gICAgICAgICAgc3Ryb2tlOiBuZXcgT2xTdHlsZS5TdHJva2Uoe1xuICAgICAgICAgICAgY29sb3I6IHN0cm9rZUNvbG9yLFxuICAgICAgICAgICAgd2lkdGg6IHRoaXMuc3Ryb2tlV2lkdGhcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBmaWxsOiBuZXcgT2xTdHlsZS5GaWxsKHtcbiAgICAgICAgICAgIGNvbG9yOiBmaWxsQ29sb3JcbiAgICAgICAgICB9KVxuICAgICAgICB9KVxuICAgICAgfSk7XG4gICAgICByZXR1cm4gc3R5bGU7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
254
|
+
}] });
|
|
255
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhdy1zdHlsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvc3R5bGUvc3R5bGUtc2VydmljZS9kcmF3LXN0eWxlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLE9BQU8sTUFBTSxlQUFlLENBQUM7QUFDcEMsT0FBTyxFQUFrQixTQUFTLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDcEQsT0FBTyxLQUFLLE9BQU8sTUFBTSxVQUFVLENBQUM7QUFFcEMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQUsvQyxNQUFNLE9BQU8sZ0JBQWdCO0lBQ25CLFNBQVMsR0FBRyx1QkFBdUIsQ0FBQztJQUNwQyxXQUFXLEdBQUcsaUJBQWlCLENBQUM7SUFDaEMsV0FBVyxHQUFHLENBQUMsQ0FBQztJQUNoQixjQUFjLEdBQUcsSUFBSSxDQUFDO0lBQ3RCLElBQUksQ0FBUztJQUNiLFFBQVEsR0FBRyxJQUFJLENBQUM7SUFDaEIsU0FBUyxHQUFXLFFBQVEsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDOUMsT0FBTyxHQUFHLENBQUMsQ0FBQztJQUNaLE9BQU8sR0FBRyxDQUFDLENBQUM7SUFFcEIsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBRUQsWUFBWSxDQUFDLFNBQWlCO1FBQzVCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO0lBQzdCLENBQUM7SUFFRCxjQUFjO1FBQ1osT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFFRCxjQUFjLENBQUMsV0FBbUI7UUFDaEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7SUFDakMsQ0FBQztJQUVELGNBQWM7UUFDWixP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Q2YsQ0FBQztJQUNILENBQUM7dUdBaFNVLGdCQUFnQjsyR0FBaEIsZ0JBQWdCLGNBRmYsTUFBTTs7MkZBRVAsZ0JBQWdCO2tCQUg1QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IE9sUG9pbnQgZnJvbSAnb2wvZ2VvbS9Qb2ludCc7XG5pbXBvcnQgeyBQcm9qZWN0aW9uTGlrZSwgdHJhbnNmb3JtIH0gZnJvbSAnb2wvcHJvaic7XG5pbXBvcnQgKiBhcyBPbFN0eWxlIGZyb20gJ29sL3N0eWxlJztcblxuaW1wb3J0IHsgRm9udFR5cGUgfSBmcm9tICcuLi9zaGFyZWQvZm9udC5lbnVtJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRHJhd1N0eWxlU2VydmljZSB7XG4gIHByaXZhdGUgZmlsbENvbG9yID0gJ3JnYmEoMjU1LDI1NSwyNTUsMC40KSc7XG4gIHByaXZhdGUgc3Ryb2tlQ29sb3IgPSAncmdiYSgxNDMsNyw3LDEpJztcbiAgcHJpdmF0ZSBzdHJva2VXaWR0aCA9IDE7XG4gIHByaXZhdGUgbGFiZWxzQXJlU2hvd24gPSB0cnVlO1xuICBwcml2YXRlIGljb246IHN0cmluZztcbiAgcHJpdmF0ZSBmb250U2l6ZSA9ICcxNSc7XG4gIHByaXZhdGUgZm9udFN0eWxlOiBzdHJpbmcgPSBGb250VHlwZS5BcmlhbC50b1N0cmluZygpO1xuICBwcml2YXRlIG9mZnNldFggPSAwO1xuICBwcml2YXRlIG9mZnNldFkgPSAwO1xuXG4gIGdldEZpbGxDb2xvcigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmZpbGxDb2xvcjtcbiAgfVxuXG4gIHNldEZpbGxDb2xvcihmaWxsQ29sb3I6IHN0cmluZykge1xuICAgIHRoaXMuZmlsbENvbG9yID0gZmlsbENvbG9yO1xuICB9XG5cbiAgZ2V0U3Ryb2tlQ29sb3IoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5zdHJva2VDb2xvcjtcbiAgfVxuXG4gIHNldFN0cm9rZUNvbG9yKHN0cm9rZUNvbG9yOiBzdHJpbmcpIHtcbiAgICB0aGlzLnN0cm9rZUNvbG9yID0gc3Ryb2tlQ29sb3I7XG4gIH1cblxuICBnZXRTdHJva2VXaWR0aCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnN0cm9rZVdpZHRoO1xuICB9XG5cbiAgZ2V0TGFiZWxzQXJlU2hvd24oKSB7XG4gICAgcmV0dXJuIHRoaXMubGFiZWxzQXJlU2hvd247XG4gIH1cblxuICB0b2dnbGVMYWJlbHNBcmVTaG93bigpIHtcbiAgICB0aGlzLmxhYmVsc0FyZVNob3duID0gIXRoaXMubGFiZWxzQXJlU2hvd247XG4gIH1cblxuICBzZXRJY29uKGljb246IHN0cmluZykge1xuICAgIHRoaXMuaWNvbiA9IGljb247XG4gIH1cblxuICBnZXRJY29uKCkge1xuICAgIHJldHVybiB0aGlzLmljb247XG4gIH1cblxuICAvLyBUbyBlZGl0IHRoZSBsYWJlbCBvZiBkcmF3aW5nXG4gIGdldEZvbnRTaXplKCkge1xuICAgIHJldHVybiB0aGlzLmZvbnRTaXplO1xuICB9XG5cbiAgc2V0Rm9udFNpemUoZm9udFNpemU6IHN0cmluZykge1xuICAgIHRoaXMuZm9udFNpemUgPSBmb250U2l6ZTtcbiAgfVxuXG4gIGdldEZvbnRTdHlsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5mb250U3R5bGU7XG4gIH1cblxuICBzZXRGb250U3R5bGUoZm9udFN0eWxlOiBzdHJpbmcpIHtcbiAgICB0aGlzLmZvbnRTdHlsZSA9IGZvbnRTdHlsZTtcbiAgfVxuXG4gIGdldE9mZnNldFgoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5vZmZzZXRYO1xuICB9XG5cbiAgc2V0T2Zmc2V0WChvZmZzZXRYOiBudW1iZXIpIHtcbiAgICB0aGlzLm9mZnNldFggPSBvZmZzZXRYO1xuICB9XG5cbiAgZ2V0T2Zmc2V0WSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLm9mZnNldFk7XG4gIH1cblxuICBzZXRPZmZzZXRZKG9mZnNldFk6IG51bWJlcikge1xuICAgIHRoaXMub2Zmc2V0WSA9IG9mZnNldFk7XG4gIH1cblxuICBjcmVhdGVJbmRpdmlkdWFsRWxlbWVudFN0eWxlKFxuICAgIGZlYXR1cmUsXG4gICAgcmVzb2x1dGlvbixcbiAgICBsYWJlbHNBcmVTaG93bjogYm9vbGVhbixcbiAgICBmb250U2l6ZUFuZFN0eWxlOiBzdHJpbmcsXG4gICAgZmlsbENvbG9yOiBzdHJpbmcsXG4gICAgc3Ryb2tlQ29sb3I6IHN0cmluZyxcbiAgICBvZmZzZXRYOiBudW1iZXIsXG4gICAgb2Zmc2V0WTogbnVtYmVyLFxuICAgIHByb2o6IFByb2plY3Rpb25MaWtlLFxuICAgIGljb24/OiBzdHJpbmdcbiAgKTogT2xTdHlsZS5TdHlsZSB7XG4gICAgbGV0IHN0eWxlO1xuICAgIGxldCBsYWJlbHNBcmVPZmZzZXQgPSBmYWxzZTtcbiAgICBjb25zdCBnZW9tID0gZmVhdHVyZS5nZXRHZW9tZXRyeSgpO1xuXG4gICAgaWYgKGdlb20gaW5zdGFuY2VvZiBPbFBvaW50KSB7XG4gICAgICBsYWJlbHNBcmVPZmZzZXQgPSAhbGFiZWxzQXJlT2Zmc2V0O1xuICAgIH1cbiAgICBjb25zdCB0ZXh0VG9TaG93ID0gbGFiZWxzQXJlU2hvd24gPyBmZWF0dXJlLmdldCgnZHJhdycpIDogJyc7XG4gICAgZmVhdHVyZS5zZXQoJ19tYXBUaXRsZScsIHRleHRUb1Nob3cpO1xuICAgIGNvbnN0IHRleHRJZ29TdHlsZU9iamVjdCA9IHtcbiAgICAgIHRleHQ6IHRleHRUb1Nob3csXG4gICAgICBzdHJva2U6IHtcbiAgICAgICAgY29sb3I6ICd3aGl0ZScsXG4gICAgICAgIHdpZHRoOiAwLjc1XG4gICAgICB9LFxuICAgICAgZmlsbDogeyBjb2xvcjogJ2JsYWNrJyB9LFxuICAgICAgZm9udDogZm9udFNpemVBbmRTdHlsZSxcbiAgICAgIG92ZXJmbG93OiB0cnVlLFxuICAgICAgb2Zmc2V0WDogb2Zmc2V0WCxcbiAgICAgIG9mZnNldFk6IG9mZnNldFlcbiAgICB9O1xuXG4gICAgbGV0IGlnb1N0eWxlT2JqZWN0O1xuXG4gICAgLy8gaWYgZmVhdHVyZSBpcyBhIGNpcmNsZVxuICAgIGlmIChmZWF0dXJlLmdldCgncmFkJykpIHtcbiAgICAgIGNvbnN0IGNvb3JkaW5hdGVzID0gdHJhbnNmb3JtKFxuICAgICAgICBmZWF0dXJlLmdldEdlb21ldHJ5KCkuZmxhdENvb3JkaW5hdGVzLFxuICAgICAgICBwcm9qLFxuICAgICAgICAnRVBTRzo0MzI2J1xuICAgICAgKTtcbiAgICAgIGNvbnN0IHJhZGl1cyA9XG4gICAgICAgIGZlYXR1cmUuZ2V0KCdyYWQnKSAvXG4gICAgICAgIE1hdGguY29zKChNYXRoLlBJIC8gMTgwKSAqIGNvb3JkaW5hdGVzWzFdKSAvXG4gICAgICAgIHJlc29sdXRpb247XG4gICAgICBpZ29TdHlsZU9iamVjdCA9IHtcbiAgICAgICAgdGV4dDogdGV4dElnb1N0eWxlT2JqZWN0LFxuICAgICAgICBjaXJjbGU6IHtcbiAgICAgICAgICByYWRpdXMsXG4gICAgICAgICAgc3Ryb2tlOiB7XG4gICAgICAgICAgICBjb2xvcjogc3Ryb2tlQ29sb3IgPyBzdHJva2VDb2xvciA6IHRoaXMuc3Ryb2tlQ29sb3IsXG4gICAgICAgICAgICB3aWR0aDogdGhpcy5zdHJva2VXaWR0aFxuICAgICAgICAgIH0sXG4gICAgICAgICAgZmlsbDoge1xuICAgICAgICAgICAgY29sb3I6IGZpbGxDb2xvclxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfTtcbiAgICAgIGZlYXR1cmUuc2V0KCdfc3R5bGUnLCBpZ29TdHlsZU9iamVjdCk7XG5cbiAgICAgIHN0eWxlID0gbmV3IE9sU3R5bGUuU3R5bGUoe1xuICAgICAgICB0ZXh0OiBuZXcgT2xTdHlsZS5UZXh0KHtcbiAgICAgICAgICB0ZXh0OiB0ZXh0VG9TaG93LFxuICAgICAgICAgIHN0cm9rZTogbmV3IE9sU3R5bGUuU3Ryb2tlKHtcbiAgICAgICAgICAgIGNvbG9yOiAnd2hpdGUnLFxuICAgICAgICAgICAgd2lkdGg6IDAuNzVcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBmaWxsOiBuZXcgT2xTdHlsZS5GaWxsKHtcbiAgICAgICAgICAgIGNvbG9yOiAnYmxhY2snXG4gICAgICAgICAgfSksXG5cbiAgICAgICAgICBmb250OiBmb250U2l6ZUFuZFN0eWxlLFxuICAgICAgICAgIG92ZXJmbG93OiB0cnVlLFxuICAgICAgICAgIG9mZnNldFg6IG9mZnNldFgsXG4gICAgICAgICAgb2Zmc2V0WTogb2Zmc2V0WVxuICAgICAgICB9KSxcblxuICAgICAgICBpbWFnZTogbmV3IE9sU3R5bGUuQ2lyY2xlKHtcbiAgICAgICAgICByYWRpdXMsXG4gICAgICAgICAgc3Ryb2tlOiBuZXcgT2xTdHlsZS5TdHJva2Uoe1xuICAgICAgICAgICAgY29sb3I6IHN0cm9rZUNvbG9yID8gc3Ryb2tlQ29sb3IgOiB0aGlzLnN0cm9rZUNvbG9yLFxuICAgICAgICAgICAgd2lkdGg6IHRoaXMuc3Ryb2tlV2lkdGhcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBmaWxsOiBuZXcgT2xTdHlsZS5GaWxsKHtcbiAgICAgICAgICAgIGNvbG9yOiBmaWxsQ29sb3JcbiAgICAgICAgICB9KVxuICAgICAgICB9KVxuICAgICAgfSk7XG4gICAgICByZXR1cm4gc3R5bGU7XG5cbiAgICAgIC8vIGlmIGZlYXR1cmUgaXMgYW4gaWNvblxuICAgIH0gZWxzZSBpZiAoaWNvbikge1xuICAgICAgdGhpcy5vZmZzZXRZID0gLTI2O1xuICAgICAgdGV4dElnb1N0eWxlT2JqZWN0Lm9mZnNldFkgPSB0aGlzLm9mZnNldFk7XG4gICAgICBjb25zdCBpZ29TdHlsZU9iamVjdCA9IHtcbiAgICAgICAgdGV4dDogdGV4dElnb1N0eWxlT2JqZWN0LFxuICAgICAgICBzdHJva2U6IHtcbiAgICAgICAgICBjb2xvcjogc3Ryb2tlQ29sb3IsXG4gICAgICAgICAgd2lkdGg6IHRoaXMuc3Ryb2tlV2lkdGhcbiAgICAgICAgfSxcbiAgICAgICAgZmlsbDoge1xuICAgICAgICAgIGNvbG9yOiBmaWxsQ29sb3JcbiAgICAgICAgfSxcbiAgICAgICAgaWNvbjoge1xuICAgICAgICAgIHNyYzogaWNvblxuICAgICAgICB9XG4gICAgICB9O1xuICAgICAgZmVhdHVyZS5zZXQoJ19zdHlsZScsIGlnb1N0eWxlT2JqZWN0KTtcblxuICAgICAgc3R5bGUgPSBuZXcgT2xTdHlsZS5TdHlsZSh7XG4gICAgICAgIHRleHQ6IG5ldyBPbFN0eWxlLlRleHQoe1xuICAgICAgICAgIHRleHQ6IGxhYmVsc0FyZVNob3duID8gZmVhdHVyZS5nZXQoJ2RyYXcnKSA6ICcnLFxuICAgICAgICAgIHN0cm9rZTogbmV3IE9sU3R5bGUuU3Ryb2tlKHtcbiAgICAgICAgICAgIGNvbG9yOiAnd2hpdGUnLFxuICAgICAgICAgICAgd2lkdGg6IDAuNzVcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBmaWxsOiBuZXcgT2xTdHlsZS5GaWxsKHtcbiAgICAgICAgICAgIGNvbG9yOiAnYmxhY2snXG4gICAgICAgICAgfSksXG4gICAgICAgICAgZm9udDogZm9udFNpemVBbmRTdHlsZSxcbiAgICAgICAgICBvdmVyZmxvdzogdHJ1ZSxcbiAgICAgICAgICBvZmZzZXRYOiBvZmZzZXRYLFxuICAgICAgICAgIG9mZnNldFk6IG9mZnNldFlcbiAgICAgICAgfSksXG5cbiAgICAgICAgc3Ryb2tlOiBuZXcgT2xTdHlsZS5TdHJva2Uoe1xuICAgICAgICAgIGNvbG9yOiBzdHJva2VDb2xvcixcbiAgICAgICAgICB3aWR0aDogdGhpcy5zdHJva2VXaWR0aFxuICAgICAgICB9KSxcblxuICAgICAgICBmaWxsOiBuZXcgT2xTdHlsZS5GaWxsKHtcbiAgICAgICAgICBjb2xvcjogZmlsbENvbG9yXG4gICAgICAgIH0pLFxuXG4gICAgICAgIGltYWdlOiBuZXcgT2xTdHlsZS5JY29uKHtcbiAgICAgICAgICBzcmM6IGljb25cbiAgICAgICAgfSlcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIHN0eWxlO1xuXG4gICAgICAvLyBpZiBmZWF0dXJlIGlzIGEgcG9pbnQsIGEgbGluZXN0cmluZyBvciBhIHBvbHlnb25cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5vZmZzZXRZID0gbGFiZWxzQXJlT2Zmc2V0ID8gLTE1IDogMDtcblxuICAgICAgdGV4dElnb1N0eWxlT2JqZWN0Lm9mZnNldFkgPSB0aGlzLm9mZnNldFk7XG4gICAgICBjb25zdCBpZ29TdHlsZU9iamVjdCA9IHtcbiAgICAgICAgdGV4dDogdGV4dElnb1N0eWxlT2JqZWN0LFxuICAgICAgICBzdHJva2U6IHtcbiAgICAgICAgICBjb2xvcjogc3Ryb2tlQ29sb3IsXG4gICAgICAgICAgd2lkdGg6IHRoaXMuc3Ryb2tlV2lkdGhcbiAgICAgICAgfSxcbiAgICAgICAgZmlsbDoge1xuICAgICAgICAgIGNvbG9yOiBmaWxsQ29sb3JcbiAgICAgICAgfSxcbiAgICAgICAgY2lyY2xlOiB7XG4gICAgICAgICAgcmFkaXVzOiA1LFxuICAgICAgICAgIHN0cm9rZToge1xuICAgICAgICAgICAgY29sb3I6IHN0cm9rZUNvbG9yLFxuICAgICAgICAgICAgd2lkdGg6IHRoaXMuc3Ryb2tlV2lkdGhcbiAgICAgICAgICB9LFxuICAgICAgICAgIGZpbGw6IHtcbiAgICAgICAgICAgIGNvbG9yOiBmaWxsQ29sb3JcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgICBmZWF0dXJlLnNldCgnX3N0eWxlJywgaWdvU3R5bGVPYmplY3QpO1xuXG4gICAgICBzdHlsZSA9IG5ldyBPbFN0eWxlLlN0eWxlKHtcbiAgICAgICAgdGV4dDogbmV3IE9sU3R5bGUuVGV4dCh7XG4gICAgICAgICAgdGV4dDogbGFiZWxzQXJlU2hvd24gPyBmZWF0dXJlLmdldCgnZHJhdycpIDogJycsXG4gICAgICAgICAgc3Ryb2tlOiBuZXcgT2xTdHlsZS5TdHJva2Uoe1xuICAgICAgICAgICAgY29sb3I6ICd3aGl0ZScsXG4gICAgICAgICAgICB3aWR0aDogMC43NVxuICAgICAgICAgIH0pLFxuICAgICAgICAgIGZpbGw6IG5ldyBPbFN0eWxlLkZpbGwoe1xuICAgICAgICAgICAgY29sb3I6ICdibGFjaydcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBmb250OiBmb250U2l6ZUFuZFN0eWxlLFxuICAgICAgICAgIG92ZXJmbG93OiB0cnVlLFxuXG4gICAgICAgICAgb2Zmc2V0WDogb2Zmc2V0WCxcbiAgICAgICAgICBvZmZzZXRZOiBvZmZzZXRZXG4gICAgICAgIH0pLFxuXG4gICAgICAgIHN0cm9rZTogbmV3IE9sU3R5bGUuU3Ryb2tlKHtcbiAgICAgICAgICBjb2xvcjogc3Ryb2tlQ29sb3IsXG4gICAgICAgICAgd2lkdGg6IHRoaXMuc3Ryb2tlV2lkdGhcbiAgICAgICAgfSksXG5cbiAgICAgICAgZmlsbDogbmV3IE9sU3R5bGUuRmlsbCh7XG4gICAgICAgICAgY29sb3I6IGZpbGxDb2xvclxuICAgICAgICB9KSxcblxuICAgICAgICBpbWFnZTogbmV3IE9sU3R5bGUuQ2lyY2xlKHtcbiAgICAgICAgICByYWRpdXM6IDUsXG4gICAgICAgICAgc3Ryb2tlOiBuZXcgT2xTdHlsZS5TdHJva2Uoe1xuICAgICAgICAgICAgY29sb3I6IHN0cm9rZUNvbG9yLFxuICAgICAgICAgICAgd2lkdGg6IHRoaXMuc3Ryb2tlV2lkdGhcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBmaWxsOiBuZXcgT2xTdHlsZS5GaWxsKHtcbiAgICAgICAgICAgIGNvbG9yOiBmaWxsQ29sb3JcbiAgICAgICAgICB9KVxuICAgICAgICB9KVxuICAgICAgfSk7XG4gICAgICByZXR1cm4gc3R5bGU7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -381,13 +381,13 @@ export class StyleService {
|
|
|
381
381
|
return 'regular';
|
|
382
382
|
}
|
|
383
383
|
}
|
|
384
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
385
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
384
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StyleService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
385
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StyleService, providedIn: 'root' });
|
|
386
386
|
}
|
|
387
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
387
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StyleService, decorators: [{
|
|
388
388
|
type: Injectable,
|
|
389
389
|
args: [{
|
|
390
390
|
providedIn: 'root'
|
|
391
391
|
}]
|
|
392
392
|
}] });
|
|
393
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3N0eWxlL3N0eWxlLXNlcnZpY2Uvc3R5bGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sU0FBUyxNQUFNLFlBQVksQ0FBQztBQUduQyxPQUFPLEtBQUssT0FBTyxNQUFNLFVBQVUsQ0FBQztBQUdwQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQzs7QUFNeEYsTUFBTSxPQUFPLFlBQVk7SUFDaEIsS0FBSyxDQUFnQjtJQUU1Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQWtDRztJQUNILFdBQVcsQ0FDVCxPQUErQixFQUMvQixPQUErQyxFQUMvQyxVQUFtQjtRQUVuQixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDYixPQUFPLHdCQUF3QixFQUFFLENBQUM7UUFDcEMsQ0FBQztRQUNELElBQUksT0FBTyxPQUFPLEtBQUssVUFBVSxJQUFJLE9BQU8sWUFBWSxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDdEUsT0FBTyxPQUFPLENBQUM7UUFDakIsQ0FBQztRQUNELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3RELElBQUksV0FBVyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7WUFDMUIsSUFBSSxrQkFBa0IsR0FBRyxDQUFDLENBQUM7WUFDM0IsSUFBSSxrQkFBa0IsR0FBRyxRQUFRLENBQUM7WUFDbEMsSUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ2pCLE1BQU0sMkJBQTJCLEdBQUcsT0FB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QztJQUNILENBQUM7dUdBcmFVLFlBQVk7MkdBQVosWUFBWSxjQUZYLE1BQU07OzJGQUVQLFlBQVk7a0JBSHhCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgT2xGZWF0dXJlIGZyb20gJ29sL0ZlYXR1cmUnO1xuaW1wb3J0IHR5cGUgeyBkZWZhdWx0IGFzIE9sR2VvbWV0cnkgfSBmcm9tICdvbC9nZW9tL0dlb21ldHJ5JztcbmltcG9ydCBSZW5kZXJGZWF0dXJlIGZyb20gJ29sL3JlbmRlci9GZWF0dXJlJztcbmltcG9ydCAqIGFzIG9sU3R5bGUgZnJvbSAnb2wvc3R5bGUnO1xuXG5pbXBvcnQgeyBDbHVzdGVyUGFyYW0gfSBmcm9tICcuLi8uLi9sYXllci9zaGFyZWQvY2x1c3RlclBhcmFtJztcbmltcG9ydCB7IGdldFJlc29sdXRpb25Gcm9tU2NhbGUgfSBmcm9tICcuLi8uLi9tYXAvc2hhcmVkL21hcC51dGlscyc7XG5pbXBvcnQgeyBjcmVhdGVPdmVybGF5TWFya2VyU3R5bGUgfSBmcm9tICcuLi9zaGFyZWQvb3ZlcmxheS9vdmVybGF5LW1hcmtlci1zdHlsZS51dGlscyc7XG5pbXBvcnQgeyBTdHlsZUJ5QXR0cmlidXRlIH0gZnJvbSAnLi4vc2hhcmVkL3ZlY3Rvci92ZWN0b3Itc3R5bGUuaW50ZXJmYWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgU3R5bGVTZXJ2aWNlIHtcbiAgcHVibGljIHN0eWxlOiBvbFN0eWxlLlN0eWxlO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBzdHlsZSBiYXNlZCBvbiBhIG9iamVjdCBhc1xuICAgKiBzdHlsZToge1xuICAgKiAgICAgICBcInN0cm9rZVwiOiB7XG4gICAqICAgICAgICAgXCJjb2xvclwiOiBcImJsdWVcIixcbiAgICogICAgICAgICBcImxpbmVEYXNoXCI6IFsxMCwgNV1cbiAgICogICAgICAgfSxcbiAgICogICAgICAgXCJ0ZXh0XCI6IHtcbiAgICogICAgICAgICBcIm1pblNjYWxlRGVub21cIjogNTAwMDAsXG4gICAqICAgICAgICAgXCJtYXhTY2FsZURlbm9tXCI6IDIwMDAwMCxcbiAgICogICAgICAgICBcIm1pblJlc29sdXRpb25cIjogMTAwLFxuICAgKiAgICAgICAgIFwibWF4UmVzb2x1dGlvblwiOiA0MDAsXG4gICAqICAgICAgICAgXCJhdHRyaWJ1dGVcIjogXCJUSEUgQ09MVU1OIE5BTUUgVE8gUkVUUklFVkUgVEhFIExBQkVMIFZBTFVFXCIsXG4gICAqICAgICAgICAgXCJ0ZXh0XCI6IFwiTVkgSEFSQ09ERUQgVEVYVFwiLFxuICAgKiAgICAgICAgIFwic3Ryb2tlXCI6IHtcbiAgICogICAgICAgICAgIFwiY29sb3JcIjogXCJibHVlXCIsXG4gICAqICAgICAgICAgICBcIndpZHRoXCI6IDAuNzVcbiAgICogICAgICAgICB9LFxuICAgKiAgICAgICAgIFwiZmlsbFwiOiB7XG4gICAqICAgICAgICAgICBcImNvbG9yXCI6IFwiYmxhY2tcIlxuICAgKiAgICAgICAgIH0sXG4gICAqICAgICAgICAgXCJmb250XCI6IFwiMjBweCBzYW5zLXNlcmlmXCIsXG4gICAqICAgICAgICAgXCJvdmVyZmxvd1wiOiB0cnVlLFxuICAgKiAgICAgICAgIFwib2Zmc2V0WFwiOiAxMCxcbiAgICogICAgICAgICBcIm9mZnNldFlcIjogMjAsXG4gICAqICAgICAgICAgXCJwYWRkaW5nXCI6IFsyLjUsIDIuNSwgMi41LCAyLjVdXG4gICAqICAgICAgIH0sXG4gICAqICAgICAgIFwid2lkdGhcIjogNVxuICAgKiAgICAgfVxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9uc1xuICAgKiBAcGFyYW0gZmVhdHVyZSBmZWF0dXJlIHRvIGFwcGx5IHN0eWxlIG9uXG4gICAqIEBwYXJhbSByZXNvbHV0aW9uIGN1cnJlbnQgbWFwIHJlc29sdXRpb24sIHRvIGNvbnRyb2wgbGFiZWwgcmVzb2x1dGlvbiByYW5nZVxuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgY3JlYXRlU3R5bGUoXG4gICAgb3B0aW9uczogeyBba2V5OiBzdHJpbmddOiBhbnkgfSxcbiAgICBmZWF0dXJlPzogUmVuZGVyRmVhdHVyZSB8IE9sRmVhdHVyZTxPbEdlb21ldHJ5PixcbiAgICByZXNvbHV0aW9uPzogbnVtYmVyXG4gICkge1xuICAgIGlmICghb3B0aW9ucykge1xuICAgICAgcmV0dXJuIGNyZWF0ZU92ZXJsYXlNYXJrZXJTdHlsZSgpO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIG9wdGlvbnMgPT09ICdmdW5jdGlvbicgfHwgb3B0aW9ucyBpbnN0YW5jZW9mIG9sU3R5bGUuU3R5bGUpIHtcbiAgICAgIHJldHVybiBvcHRpb25zO1xuICAgIH1cbiAgICBjb25zdCBwYXJzZWRTdHlsZSA9IHRoaXMucGFyc2VTdHlsZSgnc3R5bGUnLCBvcHRpb25zKTtcbiAgICBpZiAocGFyc2VkU3R5bGUuZ2V0VGV4dCgpKSB7XG4gICAgICBsZXQgbGFiZWxNaW5SZXNvbHV0aW9uID0gMDtcbiAgICAgIGxldCBsYWJlbE1heFJlc29sdXRpb24gPSBJbmZpbml0eTtcbiAgICAgIGlmIChvcHRpb25zLnRleHQpIHtcbiAgICAgICAgY29uc3QgbGFiZWxNaW5SZXNvbHV0aW9uRnJvbVNjYWxlID0gb3B0aW9ucy50ZXh0Py5taW5TY2FsZURlbm9tXG4gICAgICAgICAgPyBnZXRSZXNvbHV0aW9uRnJvbVNjYWxlKE51bWJlcihvcHRpb25zLnRleHQubWluU2NhbGVEZW5vbSkpXG4gICAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IGxhYmVsTWF4UmVzb2x1dGlvbkZyb21TY2FsZSA9IG9wdGlvbnMudGV4dD8ubWF4U2NhbGVEZW5vbVxuICAgICAgICAgID8gZ2V0UmVzb2x1dGlvbkZyb21TY2FsZShOdW1iZXIob3B0aW9ucy50ZXh0Lm1heFNjYWxlRGVub20pKVxuICAgICAgICAgIDogdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBtaW5SZXNvbHV0aW9uID0gb3B0aW9ucy50ZXh0Py5taW5SZXNvbHV0aW9uXG4gICAgICAgICAgPyBvcHRpb25zLnRleHQubWluUmVzb2x1dGlvblxuICAgICAgICAgIDogMDtcbiAgICAgICAgY29uc3QgbWF4UmVzb2x1dGlvbiA9IG9wdGlvbnMudGV4dD8ubWF4UmVzb2x1dGlvblxuICAgICAgICAgID8gb3B0aW9ucy50ZXh0Lm1heFJlc29sdXRpb25cbiAgICAgICAgICA6IEluZmluaXR5O1xuXG4gICAgICAgIGxhYmVsTWluUmVzb2x1dGlvbiA9IGxhYmVsTWluUmVzb2x1dGlvbkZyb21TY2FsZSB8fCBtaW5SZXNvbHV0aW9uO1xuICAgICAgICBsYWJlbE1heFJlc29sdXRpb24gPSBsYWJlbE1heFJlc29sdXRpb25Gcm9tU2NhbGUgfHwgbWF4UmVzb2x1dGlvbjtcbiAgICAgIH1cbiAgICAgIGlmIChcbiAgICAgICAgb3B0aW9ucy50ZXh0Py5taW5TY2FsZURlbm9tIHx8XG4gICAgICAgIG9wdGlvbnMudGV4dD8ubWF4U2NhbGVEZW5vbSB8fFxuICAgICAgICBvcHRpb25zLnRleHQ/Lm1pblJlc29sdXRpb24gfHxcbiAgICAgICAgb3B0aW9ucy50ZXh0Py5tYXhSZXNvbHV0aW9uXG4gICAgICApIHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIGZlYXR1cmUgJiZcbiAgICAgICAgICByZXNvbHV0aW9uID49IGxhYmVsTWluUmVzb2x1dGlvbiAmJlxuICAgICAgICAgIHJlc29sdXRpb24gPD0gbGFiZWxNYXhSZXNvbHV0aW9uXG4gICAgICAgICkge1xuICAgICAgICAgIGlmIChmZWF0dXJlICYmIG9wdGlvbnMudGV4dC5hdHRyaWJ1dGUpIHtcbiAgICAgICAgICAgIHBhcnNlZFN0eWxlXG4gICAgICAgICAgICAgIC5nZXRUZXh0KClcbiAgICAgICAgICAgICAgLnNldFRleHQodGhpcy5nZXRMYWJlbChmZWF0dXJlLCBvcHRpb25zLnRleHQuYXR0cmlidXRlKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHBhcnNlZFN0eWxlLnNldFRleHQoKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcGFyc2VkU3R5bGU7XG4gIH1cblxuICBwdWJsaWMgcGFyc2VTdHlsZShrZXk6IHN0cmluZywgdmFsdWU6IGFueSkge1xuICAgIGNvbnN0IHN0eWxlT3B0aW9ucyA9IHt9O1xuICAgIGNvbnN0IG9sQ2xzID0gdGhpcy5nZXRPbENscyhrZXkpO1xuXG4gICAgaWYgKG9sQ2xzICYmIHZhbHVlIGluc3RhbmNlb2YgT2JqZWN0KSB7XG4gICAgICBPYmplY3Qua2V5cyh2YWx1ZSkuZm9yRWFjaCgoX2tleSkgPT4ge1xuICAgICAgICBjb25zdCBvbEtleSA9IHRoaXMuZ2V0T2xLZXkoX2tleSk7XG4gICAgICAgIHN0eWxlT3B0aW9uc1tvbEtleV0gPSB0aGlzLnBhcnNlU3R5bGUoX2tleSwgdmFsdWVbX2tleV0pO1xuICAgICAgfSk7XG4gICAgICByZXR1cm4gbmV3IG9sQ2xzKHN0eWxlT3B0aW9ucyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldE9sS2V5KGtleTogYW55KSB7XG4gICAgbGV0IG9sS2V5O1xuICAgIHN3aXRjaCAoa2V5LnRvTG93ZXJDYXNlKCkpIHtcbiAgICAgIGNhc2UgJ2NpcmNsZSc6XG4gICAgICBjYXNlICdyZWd1bGFyc2hhcGUnOlxuICAgICAgY2FzZSAnaWNvbic6XG4gICAgICAgIG9sS2V5ID0gJ2ltYWdlJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICByZXR1cm4gb2xLZXkgfHwga2V5O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRPbENscyhrZXk6IGFueSkge1xuICAgIGxldCBvbENscyA9IG9sU3R5bGVba2V5LmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsga2V5LnNsaWNlKDEpXTtcbiAgICBpZiAoa2V5ID09PSAncmVndWxhcnNoYXBlJykge1xuICAgICAgb2xDbHMgPSBvbFN0eWxlLlJlZ3VsYXJTaGFwZTtcbiAgICB9XG4gICAgaWYgKGtleSA9PT0gJ2JhY2tncm91bmRGaWxsJykge1xuICAgICAgb2xDbHMgPSBvbFN0eWxlLkZpbGw7XG4gICAgfVxuICAgIGlmIChrZXkgPT09ICdiYWNrZ3JvdW5kU3Ryb2tlJykge1xuICAgICAgb2xDbHMgPSBvbFN0eWxlLlN0cm9rZTtcbiAgICB9XG5cbiAgICByZXR1cm4gb2xDbHM7XG4gIH1cblxuICBjcmVhdGVTdHlsZUJ5QXR0cmlidXRlKFxuICAgIGZlYXR1cmU6IFJlbmRlckZlYXR1cmUgfCBPbEZlYXR1cmU8T2xHZW9tZXRyeT4sXG4gICAgc3R5bGVCeUF0dHJpYnV0ZTogU3R5bGVCeUF0dHJpYnV0ZSxcbiAgICByZXNvbHV0aW9uOiBudW1iZXJcbiAgKSB7XG4gICAgbGV0IHN0eWxlO1xuICAgIGNvbnN0IHR5cGUgPSBzdHlsZUJ5QXR0cmlidXRlLnR5cGVcbiAgICAgID8gc3R5bGVCeUF0dHJpYnV0ZS50eXBlXG4gICAgICA6IHRoaXMuZ3Vlc3NUeXBlRmVhdHVyZShmZWF0dXJlKTtcbiAgICBjb25zdCBhdHRyaWJ1dGUgPSBzdHlsZUJ5QXR0cmlidXRlLmF0dHJpYnV0ZTtcbiAgICBjb25zdCBkYXRhID0gc3R5bGVCeUF0dHJpYnV0ZS5kYXRhO1xuICAgIGNvbnN0IHN0cm9rZSA9IHN0eWxlQnlBdHRyaWJ1dGUuc3Ryb2tlO1xuICAgIGNvbnN0IHdpZHRoID0gc3R5bGVCeUF0dHJpYnV0ZS53aWR0aDtcbiAgICBjb25zdCBmaWxsID0gc3R5bGVCeUF0dHJpYnV0ZS5maWxsO1xuICAgIGNvbnN0IGFuY2hvciA9IHN0eWxlQnlBdHRyaWJ1dGUuYW5jaG9yO1xuICAgIGNvbnN0IHJhZGl1cyA9IHN0eWxlQnlBdHRyaWJ1dGUucmFkaXVzO1xuICAgIGNvbnN0IGljb24gPSBzdHlsZUJ5QXR0cmlidXRlLmljb247XG4gICAgY29uc3Qgc2NhbGUgPSBzdHlsZUJ5QXR0cmlidXRlLnNjYWxlO1xuICAgIGNvbnN0IHNpemUgPSBkYXRhID8gZGF0YS5sZW5ndGggOiAwO1xuICAgIGNvbnN0IGxhYmVsID0gc3R5bGVCeUF0dHJpYnV0ZS5sYWJlbFxuICAgICAgPyBzdHlsZUJ5QXR0cmlidXRlLmxhYmVsLmF0dHJpYnV0ZVxuICAgICAgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgbGFiZWxNaW5SZXNvbHV0aW9uRnJvbVNjYWxlID0gc3R5bGVCeUF0dHJpYnV0ZS5sYWJlbD8ubWluU2NhbGVEZW5vbVxuICAgICAgPyBnZXRSZXNvbHV0aW9uRnJvbVNjYWxlKE51bWJlcihzdHlsZUJ5QXR0cmlidXRlLmxhYmVsLm1pblNjYWxlRGVub20pKVxuICAgICAgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgbGFiZWxNYXhSZXNvbHV0aW9uRnJvbVNjYWxlID0gc3R5bGVCeUF0dHJpYnV0ZS5sYWJlbD8ubWF4U2NhbGVEZW5vbVxuICAgICAgPyBnZXRSZXNvbHV0aW9uRnJvbVNjYWxlKE51bWJlcihzdHlsZUJ5QXR0cmlidXRlLmxhYmVsLm1heFNjYWxlRGVub20pKVxuICAgICAgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgbWluUmVzb2x1dGlvbiA9IHN0eWxlQnlBdHRyaWJ1dGUubGFiZWw/Lm1pblJlc29sdXRpb25cbiAgICAgID8gc3R5bGVCeUF0dHJpYnV0ZS5sYWJlbC5taW5SZXNvbHV0aW9uXG4gICAgICA6IDA7XG4gICAgY29uc3QgbWF4UmVzb2x1dGlvbiA9IHN0eWxlQnlBdHRyaWJ1dGUubGFiZWw/Lm1heFJlc29sdXRpb25cbiAgICAgID8gc3R5bGVCeUF0dHJpYnV0ZS5sYWJlbC5tYXhSZXNvbHV0aW9uXG4gICAgICA6IEluZmluaXR5O1xuXG4gICAgY29uc3QgbGFiZWxNaW5SZXNvbHV0aW9uID0gbGFiZWxNaW5SZXNvbHV0aW9uRnJvbVNjYWxlIHx8IG1pblJlc29sdXRpb247XG4gICAgY29uc3QgbGFiZWxNYXhSZXNvbHV0aW9uID0gbGFiZWxNYXhSZXNvbHV0aW9uRnJvbVNjYWxlIHx8IG1heFJlc29sdXRpb247XG5cbiAgICBsZXQgbGFiZWxTdHlsZSA9IHN0eWxlQnlBdHRyaWJ1dGUubGFiZWw/LnN0eWxlXG4gICAgICA/IHRoaXMucGFyc2VTdHlsZSgndGV4dCcsIHN0eWxlQnlBdHRyaWJ1dGUubGFiZWwuc3R5bGUpXG4gICAgICA6IHVuZGVmaW5lZDtcbiAgICBpZiAoIWxhYmVsU3R5bGUgJiYgbGFiZWwpIHtcbiAgICAgIGxhYmVsU3R5bGUgPSBuZXcgb2xTdHlsZS5UZXh0KCk7XG4gICAgfVxuICAgIGNvbnN0IGJhc2VTdHlsZSA9IHN0eWxlQnlBdHRyaWJ1dGUuYmFzZVN0eWxlO1xuXG4gICAgaWYgKGxhYmVsU3R5bGUpIHtcbiAgICAgIGlmIChcbiAgICAgICAgcmVzb2x1dGlvbiA+PSBsYWJlbE1pblJlc29sdXRpb24gJiZcbiAgICAgICAgcmVzb2x1dGlvbiA8PSBsYWJlbE1heFJlc29sdXRpb25cbiAgICAgICkge1xuICAgICAgICBsYWJlbFN0eWxlLnNldFRleHQodGhpcy5nZXRMYWJlbChmZWF0dXJlLCBsYWJlbCkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbGFiZWxTdHlsZS5zZXRUZXh0KCcnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodHlwZSA9PT0gJ2NpcmNsZScpIHtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2l6ZTsgaSsrKSB7XG4gICAgICAgIGNvbnN0IHZhbCA9XG4gICAgICAgICAgdHlwZW9mIGZlYXR1cmUuZ2V0KGF0dHJpYnV0ZSkgIT09ICd1bmRlZmluZWQnICYmXG4gICAgICAgICAgZmVhdHVyZS5nZXQoYXR0cmlidXRlKSAhPT0gbnVsbFxuICAgICAgICAgICAgPyBmZWF0dXJlLmdldChhdHRyaWJ1dGUpXG4gICAgICAgICAgICA6ICcnO1xuICAgICAgICBpZiAoXG4gICAgICAgICAgdmFsID09PSBkYXRhW2ldIHx8XG4gICAgICAgICAgdmFsLnRvU3RyaW5nKCkubWF0Y2gobmV3IFJlZ0V4cChkYXRhW2ldLCAnZ21pJykpXG4gICAgICAgICkge1xuICAgICAgICAgIGlmIChpY29uKSB7XG4gICAgICAgICAgICBzdHlsZSA9IFtcbiAgICAgICAgICAgICAgbmV3IG9sU3R5bGUuU3R5bGUoe1xuICAgICAgICAgICAgICAgIGltYWdlOiBuZXcgb2xTdHlsZS5JY29uKHtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiBmaWxsID8gZmlsbFtpXSA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAgIHNyYzogaWNvbltpXSxcbiAgICAgICAgICAgICAgICAgIHNjYWxlOiBzY2FsZSA/IHNjYWxlW2ldIDogMSxcbiAgICAgICAgICAgICAgICAgIGFuY2hvcjogYW5jaG9yID8gYW5jaG9yW2ldIDogWzAuNSwgMC41XVxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIHRleHQ6XG4gICAgICAgICAgICAgICAgICBsYWJlbFN0eWxlIGluc3RhbmNlb2Ygb2xTdHlsZS5UZXh0ID8gbGFiZWxTdHlsZSA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgXTtcbiAgICAgICAgICAgIHJldHVybiBzdHlsZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgc3R5bGUgPSBbXG4gICAgICAgICAgICBuZXcgb2xTdHlsZS5TdHlsZSh7XG4gICAgICAgICAgICAgIGltYWdlOiBuZXcgb2xTdHlsZS5DaXJjbGUoe1xuICAgICAgICAgICAgICAgIHJhZGl1czogcmFkaXVzID8gcmFkaXVzW2ldIDogNCxcbiAgICAgICAgICAgICAgICBzdHJva2U6IG5ldyBvbFN0eWxlLlN0cm9rZSh7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogc3Ryb2tlID8gc3Ryb2tlW2ldIDogJ2JsYWNrJyxcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiB3aWR0aCA/IHdpZHRoW2ldIDogMVxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIGZpbGw6IG5ldyBvbFN0eWxlLkZpbGwoe1xuICAgICAgICAgICAgICAgICAgY29sb3I6IGZpbGwgPyBmaWxsW2ldIDogJ2JsYWNrJ1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICB0ZXh0OiBsYWJlbFN0eWxlIGluc3RhbmNlb2Ygb2xTdHlsZS5UZXh0ID8gbGFiZWxTdHlsZSA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICBdO1xuICAgICAgICAgIHJldHVybiBzdHlsZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKCEoZmVhdHVyZSBhcyBPbEZlYXR1cmU8T2xHZW9tZXRyeT4pLmdldFN0eWxlKCkpIHtcbiAgICAgICAgaWYgKGJhc2VTdHlsZSkge1xuICAgICAgICAgIHN0eWxlID0gdGhpcy5jcmVhdGVTdHlsZShiYXNlU3R5bGUsIGZlYXR1cmUsIHJlc29sdXRpb24pO1xuICAgICAgICAgIGlmIChsYWJlbFN0eWxlKSB7XG4gICAgICAgICAgICBzdHlsZS5zZXRUZXh0KGxhYmVsU3R5bGUpO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gc3R5bGU7XG4gICAgICAgIH1cbiAgICAgICAgc3R5bGUgPSBbXG4gICAgICAgICAgbmV3IG9sU3R5bGUuU3R5bGUoe1xuICAgICAgICAgICAgaW1hZ2U6IG5ldyBvbFN0eWxlLkNpcmNsZSh7XG4gICAgICAgICAgICAgIHJhZGl1czogNCxcbiAgICAgICAgICAgICAgc3Ryb2tlOiBuZXcgb2xTdHlsZS5TdHJva2Uoe1xuICAgICAgICAgICAgICAgIGNvbG9yOiAnYmxhY2snXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICBmaWxsOiBuZXcgb2xTdHlsZS5GaWxsKHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJyNiYmJiZjInXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH0pXG4gICAgICAgIF07XG4gICAgICAgIHJldHVybiBzdHlsZTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHR5cGUgPT09ICdyZWd1bGFyJykge1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzaXplOyBpKyspIHtcbiAgICAgICAgY29uc3QgdmFsID1cbiAgICAgICAgICB0eXBlb2YgZmVhdHVyZS5nZXQoYXR0cmlidXRlKSAhPT0gJ3VuZGVmaW5lZCcgJiZcbiAgICAgICAgICBmZWF0dXJlLmdldChhdHRyaWJ1dGUpICE9PSBudWxsXG4gICAgICAgICAgICA/IGZlYXR1cmUuZ2V0KGF0dHJpYnV0ZSlcbiAgICAgICAgICAgIDogJyc7XG4gICAgICAgIGlmIChcbiAgICAgICAgICB2YWwgPT09IGRhdGFbaV0gfHxcbiAgICAgICAgICB2YWwudG9TdHJpbmcoKS5tYXRjaChuZXcgUmVnRXhwKGRhdGFbaV0sICdnbWknKSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgc3R5bGUgPSBbXG4gICAgICAgICAgICBuZXcgb2xTdHlsZS5TdHlsZSh7XG4gICAgICAgICAgICAgIHN0cm9rZTogbmV3IG9sU3R5bGUuU3Ryb2tlKHtcbiAgICAgICAgICAgICAgICBjb2xvcjogc3Ryb2tlID8gc3Ryb2tlW2ldIDogJ2JsYWNrJyxcbiAgICAgICAgICAgICAgICB3aWR0aDogd2lkdGggPyB3aWR0aFtpXSA6IDFcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgIGZpbGw6IG5ldyBvbFN0eWxlLkZpbGwoe1xuICAgICAgICAgICAgICAgIGNvbG9yOiBmaWxsID8gZmlsbFtpXSA6ICdyZ2JhKDI1NSwyNTUsMjU1LDAuNCknXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICB0ZXh0OiBsYWJlbFN0eWxlIGluc3RhbmNlb2Ygb2xTdHlsZS5UZXh0ID8gbGFiZWxTdHlsZSA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICBdO1xuICAgICAgICAgIHJldHVybiBzdHlsZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKGZlYXR1cmUgaW5zdGFuY2VvZiBPbEZlYXR1cmUpIHtcbiAgICAgICAgaWYgKCFmZWF0dXJlLmdldFN0eWxlKCkpIHtcbiAgICAgICAgICBpZiAoYmFzZVN0eWxlKSB7XG4gICAgICAgICAgICBzdHlsZSA9IHRoaXMuY3JlYXRlU3R5bGUoYmFzZVN0eWxlLCBmZWF0dXJlLCByZXNvbHV0aW9uKTtcbiAgICAgICAgICAgIGlmIChsYWJlbFN0eWxlKSB7XG4gICAgICAgICAgICAgIHN0eWxlLnNldFRleHQobGFiZWxTdHlsZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gc3R5bGU7XG4gICAgICAgICAgfVxuICAgICAgICAgIHN0eWxlID0gW1xuICAgICAgICAgICAgbmV3IG9sU3R5bGUuU3R5bGUoe1xuICAgICAgICAgICAgICBzdHJva2U6IG5ldyBvbFN0eWxlLlN0cm9rZSh7XG4gICAgICAgICAgICAgICAgY29sb3I6ICdibGFjaydcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgIGZpbGw6IG5ldyBvbFN0eWxlLkZpbGwoe1xuICAgICAgICAgICAgICAgIGNvbG9yOiAnI2JiYmJmMidcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgXTtcbiAgICAgICAgICByZXR1cm4gc3R5bGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBjcmVhdGVDbHVzdGVyU3R5bGUoXG4gICAgZmVhdHVyZTogUmVuZGVyRmVhdHVyZSB8IE9sRmVhdHVyZTxPbEdlb21ldHJ5PixcbiAgICByZXNvbHV0aW9uOiBudW1iZXIsXG4gICAgY2x1c3RlclBhcmFtOiBDbHVzdGVyUGFyYW0gPSB7fSxcbiAgICBsYXllclN0eWxlXG4gICkge1xuICAgIGxldCBzdHlsZTtcbiAgICBjb25zdCBzaXplID0gZmVhdHVyZS5nZXQoJ2ZlYXR1cmVzJykubGVuZ3RoO1xuICAgIGlmIChzaXplICE9PSAxKSB7XG4gICAgICBpZiAoY2x1c3RlclBhcmFtLmNsdXN0ZXJSYW5nZXMpIHtcbiAgICAgICAgZm9yIChjb25zdCByIG9mIGNsdXN0ZXJQYXJhbS5jbHVzdGVyUmFuZ2VzKSB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgKCFyLm1pblJhZGl1cyB8fCByLm1pblJhZGl1cyA8PSBzaXplKSAmJlxuICAgICAgICAgICAgKCFyLm1heFJhZGl1cyB8fCByLm1heFJhZGl1cyA+PSBzaXplKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgc3R5bGUgPSB0aGlzLmNyZWF0ZVN0eWxlKHIuc3R5bGUpIGFzIG9sU3R5bGUuQ2lyY2xlO1xuXG4gICAgICAgICAgICBpZiAoci5zaG93UmFuZ2UpIHtcbiAgICAgICAgICAgICAgY29uc3QgdGV4dCA9IG5ldyBvbFN0eWxlLlRleHQoe1xuICAgICAgICAgICAgICAgIHRleHQ6IHNpemUudG9TdHJpbmcoKSxcbiAgICAgICAgICAgICAgICBmaWxsOiBuZXcgb2xTdHlsZS5GaWxsKHtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAnI2ZmZidcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgc3R5bGUuc2V0VGV4dCh0ZXh0KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHIuZHluYW1pY1JhZGl1cykge1xuICAgICAgICAgICAgICBsZXQgY2x1c3RlclJhZGl1czogbnVtYmVyO1xuICAgICAgICAgICAgICBjb25zdCByYWRpdXNNaW4gPSBzdHlsZS5nZXRSYWRpdXMoKTtcbiAgICAgICAgICAgICAgY2x1c3RlclJhZGl1cyA9IDUgKiBNYXRoLmxvZyhzaXplKTtcbiAgICAgICAgICAgICAgaWYgKGNsdXN0ZXJSYWRpdXMgPCByYWRpdXNNaW4pIHtcbiAgICAgICAgICAgICAgICBjbHVzdGVyUmFkaXVzID0gcmFkaXVzTWluO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIHN0eWxlLmltYWdlXy5zZXRSYWRpdXMoY2x1c3RlclJhZGl1cyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKCFzdHlsZSkge1xuICAgICAgICBsZXQgY2x1c3RlclJhZGl1czogbnVtYmVyO1xuICAgICAgICBpZiAoY2x1c3RlclBhcmFtLnJhZGl1c0NhbGMpIHtcbiAgICAgICAgICBjbHVzdGVyUmFkaXVzID0gY2x1c3RlclBhcmFtLnJhZGl1c0NhbGMoc2l6ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc3QgcmFkaXVzTWluID0gNjtcbiAgICAgICAgICBjbHVzdGVyUmFkaXVzID0gNSAqIE1hdGgubG9nKHNpemUpO1xuICAgICAgICAgIGlmIChjbHVzdGVyUmFkaXVzIDwgcmFkaXVzTWluKSB7XG4gICAgICAgICAgICBjbHVzdGVyUmFkaXVzID0gcmFkaXVzTWluO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHN0eWxlID0gW1xuICAgICAgICAgIG5ldyBvbFN0eWxlLlN0eWxlKHtcbiAgICAgICAgICAgIGltYWdlOiBuZXcgb2xTdHlsZS5DaXJjbGUoe1xuICAgICAgICAgICAgICByYWRpdXM6IGNsdXN0ZXJSYWRpdXMsXG4gICAgICAgICAgICAgIHN0cm9rZTogbmV3IG9sU3R5bGUuU3Ryb2tlKHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJ2JsYWNrJ1xuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgZmlsbDogbmV3IG9sU3R5bGUuRmlsbCh7XG4gICAgICAgICAgICAgICAgY29sb3I6ICdyZ2JhKDI0LCAxMzQsIDQ1LCAwLjUpJ1xuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB0ZXh0OiBuZXcgb2xTdHlsZS5UZXh0KHtcbiAgICAgICAgICAgICAgdGV4dDogc2l6ZS50b1N0cmluZygpLFxuICAgICAgICAgICAgICBmaWxsOiBuZXcgb2xTdHlsZS5GaWxsKHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJyNmZmYnXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH0pXG4gICAgICAgIF07XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHN0eWxlID0gdGhpcy5jcmVhdGVTdHlsZShsYXllclN0eWxlLCBmZWF0dXJlLCByZXNvbHV0aW9uKTtcbiAgICB9XG4gICAgcmV0dXJuIHN0eWxlO1xuICB9XG5cbiAgZ2V0TGFiZWwoZmVhdHVyZSwgbGFiZWxNYXRjaCk6IHN0cmluZyB7XG4gICAgbGV0IGxhYmVsID0gbGFiZWxNYXRjaDtcbiAgICBpZiAoIWxhYmVsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGxhYmVsVG9HZXQgPSBBcnJheS5mcm9tKGxhYmVsTWF0Y2gubWF0Y2hBbGwoL1xcJFxceyhbXlxce1xcfV0rKVxcfS9nKSk7XG5cbiAgICBsYWJlbFRvR2V0LmZvckVhY2goKHYpID0+IHtcbiAgICAgIGxhYmVsID0gbGFiZWwucmVwbGFjZSh2WzBdLCBmZWF0dXJlLmdldCh2WzFdKSk7XG4gICAgfSk7XG5cbiAgICAvLyBOb3RoaW5nIGRvbmU/IGNoZWNrIGZlYXR1cmUncyBhdHRyaWJ1dGVcbiAgICBpZiAobGFiZWxUb0dldC5sZW5ndGggPT09IDAgJiYgbGFiZWwgPT09IGxhYmVsTWF0Y2gpIHtcbiAgICAgIGxhYmVsID0gZmVhdHVyZS5nZXQobGFiZWxNYXRjaCkgfHwgbGFiZWxNYXRjaDtcbiAgICB9XG5cbiAgICByZXR1cm4gbGFiZWw7XG4gIH1cblxuICBwcml2YXRlIGd1ZXNzVHlwZUZlYXR1cmUoZmVhdHVyZSkge1xuICAgIHN3aXRjaCAoZmVhdHVyZS5nZXRHZW9tZXRyeSgpLmdldFR5cGUoKSkge1xuICAgICAgY2FzZSAnUG9pbnQnOlxuICAgICAgY2FzZSAnTXVsdGlQb2ludCc6XG4gICAgICBjYXNlICdDaXJjbGUnOlxuICAgICAgICByZXR1cm4gJ2NpcmNsZSc7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gJ3JlZ3VsYXInO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
393
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3N0eWxlL3N0eWxlLXNlcnZpY2Uvc3R5bGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sU0FBUyxNQUFNLFlBQVksQ0FBQztBQUduQyxPQUFPLEtBQUssT0FBTyxNQUFNLFVBQVUsQ0FBQztBQUdwQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQzs7QUFNeEYsTUFBTSxPQUFPLFlBQVk7SUFDaEIsS0FBSyxDQUFnQjtJQUU1Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQWtDRztJQUNILFdBQVcsQ0FDVCxPQUE0QixFQUM1QixPQUErQyxFQUMvQyxVQUFtQjtRQUVuQixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDYixPQUFPLHdCQUF3QixFQUFFLENBQUM7UUFDcEMsQ0FBQztRQUNELElBQUksT0FBTyxPQUFPLEtBQUssVUFBVSxJQUFJLE9BQU8sWUFBWSxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDdEUsT0FBTyxPQUFPLENBQUM7UUFDakIsQ0FBQztRQUNELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3RELElBQUksV0FBVyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7WUFDMUIsSUFBSSxrQkFBa0IsR0FBRyxDQUFDLENBQUM7WUFDM0IsSUFBSSxrQkFBa0IsR0FBRyxRQUFRLENBQUM7WUFDbEMsSUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ2pCLE1BQU0sMkJBQTJCLEdBQUcsT0FB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QztJQUNILENBQUM7dUdBcmFVLFlBQVk7MkdBQVosWUFBWSxjQUZYLE1BQU07OzJGQUVQLFlBQVk7a0JBSHhCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgT2xGZWF0dXJlIGZyb20gJ29sL0ZlYXR1cmUnO1xuaW1wb3J0IHR5cGUgeyBkZWZhdWx0IGFzIE9sR2VvbWV0cnkgfSBmcm9tICdvbC9nZW9tL0dlb21ldHJ5JztcbmltcG9ydCBSZW5kZXJGZWF0dXJlIGZyb20gJ29sL3JlbmRlci9GZWF0dXJlJztcbmltcG9ydCAqIGFzIG9sU3R5bGUgZnJvbSAnb2wvc3R5bGUnO1xuXG5pbXBvcnQgeyBDbHVzdGVyUGFyYW0gfSBmcm9tICcuLi8uLi9sYXllci9zaGFyZWQvY2x1c3RlclBhcmFtJztcbmltcG9ydCB7IGdldFJlc29sdXRpb25Gcm9tU2NhbGUgfSBmcm9tICcuLi8uLi9tYXAvc2hhcmVkL21hcC51dGlscyc7XG5pbXBvcnQgeyBjcmVhdGVPdmVybGF5TWFya2VyU3R5bGUgfSBmcm9tICcuLi9zaGFyZWQvb3ZlcmxheS9vdmVybGF5LW1hcmtlci1zdHlsZS51dGlscyc7XG5pbXBvcnQgeyBTdHlsZUJ5QXR0cmlidXRlIH0gZnJvbSAnLi4vc2hhcmVkL3ZlY3Rvci92ZWN0b3Itc3R5bGUuaW50ZXJmYWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgU3R5bGVTZXJ2aWNlIHtcbiAgcHVibGljIHN0eWxlOiBvbFN0eWxlLlN0eWxlO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBzdHlsZSBiYXNlZCBvbiBhIG9iamVjdCBhc1xuICAgKiBzdHlsZToge1xuICAgKiAgICAgICBcInN0cm9rZVwiOiB7XG4gICAqICAgICAgICAgXCJjb2xvclwiOiBcImJsdWVcIixcbiAgICogICAgICAgICBcImxpbmVEYXNoXCI6IFsxMCwgNV1cbiAgICogICAgICAgfSxcbiAgICogICAgICAgXCJ0ZXh0XCI6IHtcbiAgICogICAgICAgICBcIm1pblNjYWxlRGVub21cIjogNTAwMDAsXG4gICAqICAgICAgICAgXCJtYXhTY2FsZURlbm9tXCI6IDIwMDAwMCxcbiAgICogICAgICAgICBcIm1pblJlc29sdXRpb25cIjogMTAwLFxuICAgKiAgICAgICAgIFwibWF4UmVzb2x1dGlvblwiOiA0MDAsXG4gICAqICAgICAgICAgXCJhdHRyaWJ1dGVcIjogXCJUSEUgQ09MVU1OIE5BTUUgVE8gUkVUUklFVkUgVEhFIExBQkVMIFZBTFVFXCIsXG4gICAqICAgICAgICAgXCJ0ZXh0XCI6IFwiTVkgSEFSQ09ERUQgVEVYVFwiLFxuICAgKiAgICAgICAgIFwic3Ryb2tlXCI6IHtcbiAgICogICAgICAgICAgIFwiY29sb3JcIjogXCJibHVlXCIsXG4gICAqICAgICAgICAgICBcIndpZHRoXCI6IDAuNzVcbiAgICogICAgICAgICB9LFxuICAgKiAgICAgICAgIFwiZmlsbFwiOiB7XG4gICAqICAgICAgICAgICBcImNvbG9yXCI6IFwiYmxhY2tcIlxuICAgKiAgICAgICAgIH0sXG4gICAqICAgICAgICAgXCJmb250XCI6IFwiMjBweCBzYW5zLXNlcmlmXCIsXG4gICAqICAgICAgICAgXCJvdmVyZmxvd1wiOiB0cnVlLFxuICAgKiAgICAgICAgIFwib2Zmc2V0WFwiOiAxMCxcbiAgICogICAgICAgICBcIm9mZnNldFlcIjogMjAsXG4gICAqICAgICAgICAgXCJwYWRkaW5nXCI6IFsyLjUsIDIuNSwgMi41LCAyLjVdXG4gICAqICAgICAgIH0sXG4gICAqICAgICAgIFwid2lkdGhcIjogNVxuICAgKiAgICAgfVxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9uc1xuICAgKiBAcGFyYW0gZmVhdHVyZSBmZWF0dXJlIHRvIGFwcGx5IHN0eWxlIG9uXG4gICAqIEBwYXJhbSByZXNvbHV0aW9uIGN1cnJlbnQgbWFwIHJlc29sdXRpb24sIHRvIGNvbnRyb2wgbGFiZWwgcmVzb2x1dGlvbiByYW5nZVxuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgY3JlYXRlU3R5bGUoXG4gICAgb3B0aW9uczogUmVjb3JkPHN0cmluZywgYW55PixcbiAgICBmZWF0dXJlPzogUmVuZGVyRmVhdHVyZSB8IE9sRmVhdHVyZTxPbEdlb21ldHJ5PixcbiAgICByZXNvbHV0aW9uPzogbnVtYmVyXG4gICkge1xuICAgIGlmICghb3B0aW9ucykge1xuICAgICAgcmV0dXJuIGNyZWF0ZU92ZXJsYXlNYXJrZXJTdHlsZSgpO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIG9wdGlvbnMgPT09ICdmdW5jdGlvbicgfHwgb3B0aW9ucyBpbnN0YW5jZW9mIG9sU3R5bGUuU3R5bGUpIHtcbiAgICAgIHJldHVybiBvcHRpb25zO1xuICAgIH1cbiAgICBjb25zdCBwYXJzZWRTdHlsZSA9IHRoaXMucGFyc2VTdHlsZSgnc3R5bGUnLCBvcHRpb25zKTtcbiAgICBpZiAocGFyc2VkU3R5bGUuZ2V0VGV4dCgpKSB7XG4gICAgICBsZXQgbGFiZWxNaW5SZXNvbHV0aW9uID0gMDtcbiAgICAgIGxldCBsYWJlbE1heFJlc29sdXRpb24gPSBJbmZpbml0eTtcbiAgICAgIGlmIChvcHRpb25zLnRleHQpIHtcbiAgICAgICAgY29uc3QgbGFiZWxNaW5SZXNvbHV0aW9uRnJvbVNjYWxlID0gb3B0aW9ucy50ZXh0Py5taW5TY2FsZURlbm9tXG4gICAgICAgICAgPyBnZXRSZXNvbHV0aW9uRnJvbVNjYWxlKE51bWJlcihvcHRpb25zLnRleHQubWluU2NhbGVEZW5vbSkpXG4gICAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IGxhYmVsTWF4UmVzb2x1dGlvbkZyb21TY2FsZSA9IG9wdGlvbnMudGV4dD8ubWF4U2NhbGVEZW5vbVxuICAgICAgICAgID8gZ2V0UmVzb2x1dGlvbkZyb21TY2FsZShOdW1iZXIob3B0aW9ucy50ZXh0Lm1heFNjYWxlRGVub20pKVxuICAgICAgICAgIDogdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBtaW5SZXNvbHV0aW9uID0gb3B0aW9ucy50ZXh0Py5taW5SZXNvbHV0aW9uXG4gICAgICAgICAgPyBvcHRpb25zLnRleHQubWluUmVzb2x1dGlvblxuICAgICAgICAgIDogMDtcbiAgICAgICAgY29uc3QgbWF4UmVzb2x1dGlvbiA9IG9wdGlvbnMudGV4dD8ubWF4UmVzb2x1dGlvblxuICAgICAgICAgID8gb3B0aW9ucy50ZXh0Lm1heFJlc29sdXRpb25cbiAgICAgICAgICA6IEluZmluaXR5O1xuXG4gICAgICAgIGxhYmVsTWluUmVzb2x1dGlvbiA9IGxhYmVsTWluUmVzb2x1dGlvbkZyb21TY2FsZSB8fCBtaW5SZXNvbHV0aW9uO1xuICAgICAgICBsYWJlbE1heFJlc29sdXRpb24gPSBsYWJlbE1heFJlc29sdXRpb25Gcm9tU2NhbGUgfHwgbWF4UmVzb2x1dGlvbjtcbiAgICAgIH1cbiAgICAgIGlmIChcbiAgICAgICAgb3B0aW9ucy50ZXh0Py5taW5TY2FsZURlbm9tIHx8XG4gICAgICAgIG9wdGlvbnMudGV4dD8ubWF4U2NhbGVEZW5vbSB8fFxuICAgICAgICBvcHRpb25zLnRleHQ/Lm1pblJlc29sdXRpb24gfHxcbiAgICAgICAgb3B0aW9ucy50ZXh0Py5tYXhSZXNvbHV0aW9uXG4gICAgICApIHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIGZlYXR1cmUgJiZcbiAgICAgICAgICByZXNvbHV0aW9uID49IGxhYmVsTWluUmVzb2x1dGlvbiAmJlxuICAgICAgICAgIHJlc29sdXRpb24gPD0gbGFiZWxNYXhSZXNvbHV0aW9uXG4gICAgICAgICkge1xuICAgICAgICAgIGlmIChmZWF0dXJlICYmIG9wdGlvbnMudGV4dC5hdHRyaWJ1dGUpIHtcbiAgICAgICAgICAgIHBhcnNlZFN0eWxlXG4gICAgICAgICAgICAgIC5nZXRUZXh0KClcbiAgICAgICAgICAgICAgLnNldFRleHQodGhpcy5nZXRMYWJlbChmZWF0dXJlLCBvcHRpb25zLnRleHQuYXR0cmlidXRlKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHBhcnNlZFN0eWxlLnNldFRleHQoKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcGFyc2VkU3R5bGU7XG4gIH1cblxuICBwdWJsaWMgcGFyc2VTdHlsZShrZXk6IHN0cmluZywgdmFsdWU6IGFueSkge1xuICAgIGNvbnN0IHN0eWxlT3B0aW9ucyA9IHt9O1xuICAgIGNvbnN0IG9sQ2xzID0gdGhpcy5nZXRPbENscyhrZXkpO1xuXG4gICAgaWYgKG9sQ2xzICYmIHZhbHVlIGluc3RhbmNlb2YgT2JqZWN0KSB7XG4gICAgICBPYmplY3Qua2V5cyh2YWx1ZSkuZm9yRWFjaCgoX2tleSkgPT4ge1xuICAgICAgICBjb25zdCBvbEtleSA9IHRoaXMuZ2V0T2xLZXkoX2tleSk7XG4gICAgICAgIHN0eWxlT3B0aW9uc1tvbEtleV0gPSB0aGlzLnBhcnNlU3R5bGUoX2tleSwgdmFsdWVbX2tleV0pO1xuICAgICAgfSk7XG4gICAgICByZXR1cm4gbmV3IG9sQ2xzKHN0eWxlT3B0aW9ucyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldE9sS2V5KGtleTogYW55KSB7XG4gICAgbGV0IG9sS2V5O1xuICAgIHN3aXRjaCAoa2V5LnRvTG93ZXJDYXNlKCkpIHtcbiAgICAgIGNhc2UgJ2NpcmNsZSc6XG4gICAgICBjYXNlICdyZWd1bGFyc2hhcGUnOlxuICAgICAgY2FzZSAnaWNvbic6XG4gICAgICAgIG9sS2V5ID0gJ2ltYWdlJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICByZXR1cm4gb2xLZXkgfHwga2V5O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRPbENscyhrZXk6IGFueSkge1xuICAgIGxldCBvbENscyA9IG9sU3R5bGVba2V5LmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsga2V5LnNsaWNlKDEpXTtcbiAgICBpZiAoa2V5ID09PSAncmVndWxhcnNoYXBlJykge1xuICAgICAgb2xDbHMgPSBvbFN0eWxlLlJlZ3VsYXJTaGFwZTtcbiAgICB9XG4gICAgaWYgKGtleSA9PT0gJ2JhY2tncm91bmRGaWxsJykge1xuICAgICAgb2xDbHMgPSBvbFN0eWxlLkZpbGw7XG4gICAgfVxuICAgIGlmIChrZXkgPT09ICdiYWNrZ3JvdW5kU3Ryb2tlJykge1xuICAgICAgb2xDbHMgPSBvbFN0eWxlLlN0cm9rZTtcbiAgICB9XG5cbiAgICByZXR1cm4gb2xDbHM7XG4gIH1cblxuICBjcmVhdGVTdHlsZUJ5QXR0cmlidXRlKFxuICAgIGZlYXR1cmU6IFJlbmRlckZlYXR1cmUgfCBPbEZlYXR1cmU8T2xHZW9tZXRyeT4sXG4gICAgc3R5bGVCeUF0dHJpYnV0ZTogU3R5bGVCeUF0dHJpYnV0ZSxcbiAgICByZXNvbHV0aW9uOiBudW1iZXJcbiAgKSB7XG4gICAgbGV0IHN0eWxlO1xuICAgIGNvbnN0IHR5cGUgPSBzdHlsZUJ5QXR0cmlidXRlLnR5cGVcbiAgICAgID8gc3R5bGVCeUF0dHJpYnV0ZS50eXBlXG4gICAgICA6IHRoaXMuZ3Vlc3NUeXBlRmVhdHVyZShmZWF0dXJlKTtcbiAgICBjb25zdCBhdHRyaWJ1dGUgPSBzdHlsZUJ5QXR0cmlidXRlLmF0dHJpYnV0ZTtcbiAgICBjb25zdCBkYXRhID0gc3R5bGVCeUF0dHJpYnV0ZS5kYXRhO1xuICAgIGNvbnN0IHN0cm9rZSA9IHN0eWxlQnlBdHRyaWJ1dGUuc3Ryb2tlO1xuICAgIGNvbnN0IHdpZHRoID0gc3R5bGVCeUF0dHJpYnV0ZS53aWR0aDtcbiAgICBjb25zdCBmaWxsID0gc3R5bGVCeUF0dHJpYnV0ZS5maWxsO1xuICAgIGNvbnN0IGFuY2hvciA9IHN0eWxlQnlBdHRyaWJ1dGUuYW5jaG9yO1xuICAgIGNvbnN0IHJhZGl1cyA9IHN0eWxlQnlBdHRyaWJ1dGUucmFkaXVzO1xuICAgIGNvbnN0IGljb24gPSBzdHlsZUJ5QXR0cmlidXRlLmljb247XG4gICAgY29uc3Qgc2NhbGUgPSBzdHlsZUJ5QXR0cmlidXRlLnNjYWxlO1xuICAgIGNvbnN0IHNpemUgPSBkYXRhID8gZGF0YS5sZW5ndGggOiAwO1xuICAgIGNvbnN0IGxhYmVsID0gc3R5bGVCeUF0dHJpYnV0ZS5sYWJlbFxuICAgICAgPyBzdHlsZUJ5QXR0cmlidXRlLmxhYmVsLmF0dHJpYnV0ZVxuICAgICAgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgbGFiZWxNaW5SZXNvbHV0aW9uRnJvbVNjYWxlID0gc3R5bGVCeUF0dHJpYnV0ZS5sYWJlbD8ubWluU2NhbGVEZW5vbVxuICAgICAgPyBnZXRSZXNvbHV0aW9uRnJvbVNjYWxlKE51bWJlcihzdHlsZUJ5QXR0cmlidXRlLmxhYmVsLm1pblNjYWxlRGVub20pKVxuICAgICAgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgbGFiZWxNYXhSZXNvbHV0aW9uRnJvbVNjYWxlID0gc3R5bGVCeUF0dHJpYnV0ZS5sYWJlbD8ubWF4U2NhbGVEZW5vbVxuICAgICAgPyBnZXRSZXNvbHV0aW9uRnJvbVNjYWxlKE51bWJlcihzdHlsZUJ5QXR0cmlidXRlLmxhYmVsLm1heFNjYWxlRGVub20pKVxuICAgICAgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgbWluUmVzb2x1dGlvbiA9IHN0eWxlQnlBdHRyaWJ1dGUubGFiZWw/Lm1pblJlc29sdXRpb25cbiAgICAgID8gc3R5bGVCeUF0dHJpYnV0ZS5sYWJlbC5taW5SZXNvbHV0aW9uXG4gICAgICA6IDA7XG4gICAgY29uc3QgbWF4UmVzb2x1dGlvbiA9IHN0eWxlQnlBdHRyaWJ1dGUubGFiZWw/Lm1heFJlc29sdXRpb25cbiAgICAgID8gc3R5bGVCeUF0dHJpYnV0ZS5sYWJlbC5tYXhSZXNvbHV0aW9uXG4gICAgICA6IEluZmluaXR5O1xuXG4gICAgY29uc3QgbGFiZWxNaW5SZXNvbHV0aW9uID0gbGFiZWxNaW5SZXNvbHV0aW9uRnJvbVNjYWxlIHx8IG1pblJlc29sdXRpb247XG4gICAgY29uc3QgbGFiZWxNYXhSZXNvbHV0aW9uID0gbGFiZWxNYXhSZXNvbHV0aW9uRnJvbVNjYWxlIHx8IG1heFJlc29sdXRpb247XG5cbiAgICBsZXQgbGFiZWxTdHlsZSA9IHN0eWxlQnlBdHRyaWJ1dGUubGFiZWw/LnN0eWxlXG4gICAgICA/IHRoaXMucGFyc2VTdHlsZSgndGV4dCcsIHN0eWxlQnlBdHRyaWJ1dGUubGFiZWwuc3R5bGUpXG4gICAgICA6IHVuZGVmaW5lZDtcbiAgICBpZiAoIWxhYmVsU3R5bGUgJiYgbGFiZWwpIHtcbiAgICAgIGxhYmVsU3R5bGUgPSBuZXcgb2xTdHlsZS5UZXh0KCk7XG4gICAgfVxuICAgIGNvbnN0IGJhc2VTdHlsZSA9IHN0eWxlQnlBdHRyaWJ1dGUuYmFzZVN0eWxlO1xuXG4gICAgaWYgKGxhYmVsU3R5bGUpIHtcbiAgICAgIGlmIChcbiAgICAgICAgcmVzb2x1dGlvbiA+PSBsYWJlbE1pblJlc29sdXRpb24gJiZcbiAgICAgICAgcmVzb2x1dGlvbiA8PSBsYWJlbE1heFJlc29sdXRpb25cbiAgICAgICkge1xuICAgICAgICBsYWJlbFN0eWxlLnNldFRleHQodGhpcy5nZXRMYWJlbChmZWF0dXJlLCBsYWJlbCkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbGFiZWxTdHlsZS5zZXRUZXh0KCcnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodHlwZSA9PT0gJ2NpcmNsZScpIHtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2l6ZTsgaSsrKSB7XG4gICAgICAgIGNvbnN0IHZhbCA9XG4gICAgICAgICAgdHlwZW9mIGZlYXR1cmUuZ2V0KGF0dHJpYnV0ZSkgIT09ICd1bmRlZmluZWQnICYmXG4gICAgICAgICAgZmVhdHVyZS5nZXQoYXR0cmlidXRlKSAhPT0gbnVsbFxuICAgICAgICAgICAgPyBmZWF0dXJlLmdldChhdHRyaWJ1dGUpXG4gICAgICAgICAgICA6ICcnO1xuICAgICAgICBpZiAoXG4gICAgICAgICAgdmFsID09PSBkYXRhW2ldIHx8XG4gICAgICAgICAgdmFsLnRvU3RyaW5nKCkubWF0Y2gobmV3IFJlZ0V4cChkYXRhW2ldLCAnZ21pJykpXG4gICAgICAgICkge1xuICAgICAgICAgIGlmIChpY29uKSB7XG4gICAgICAgICAgICBzdHlsZSA9IFtcbiAgICAgICAgICAgICAgbmV3IG9sU3R5bGUuU3R5bGUoe1xuICAgICAgICAgICAgICAgIGltYWdlOiBuZXcgb2xTdHlsZS5JY29uKHtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiBmaWxsID8gZmlsbFtpXSA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAgIHNyYzogaWNvbltpXSxcbiAgICAgICAgICAgICAgICAgIHNjYWxlOiBzY2FsZSA/IHNjYWxlW2ldIDogMSxcbiAgICAgICAgICAgICAgICAgIGFuY2hvcjogYW5jaG9yID8gYW5jaG9yW2ldIDogWzAuNSwgMC41XVxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIHRleHQ6XG4gICAgICAgICAgICAgICAgICBsYWJlbFN0eWxlIGluc3RhbmNlb2Ygb2xTdHlsZS5UZXh0ID8gbGFiZWxTdHlsZSA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgXTtcbiAgICAgICAgICAgIHJldHVybiBzdHlsZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgc3R5bGUgPSBbXG4gICAgICAgICAgICBuZXcgb2xTdHlsZS5TdHlsZSh7XG4gICAgICAgICAgICAgIGltYWdlOiBuZXcgb2xTdHlsZS5DaXJjbGUoe1xuICAgICAgICAgICAgICAgIHJhZGl1czogcmFkaXVzID8gcmFkaXVzW2ldIDogNCxcbiAgICAgICAgICAgICAgICBzdHJva2U6IG5ldyBvbFN0eWxlLlN0cm9rZSh7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogc3Ryb2tlID8gc3Ryb2tlW2ldIDogJ2JsYWNrJyxcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiB3aWR0aCA/IHdpZHRoW2ldIDogMVxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIGZpbGw6IG5ldyBvbFN0eWxlLkZpbGwoe1xuICAgICAgICAgICAgICAgICAgY29sb3I6IGZpbGwgPyBmaWxsW2ldIDogJ2JsYWNrJ1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICB0ZXh0OiBsYWJlbFN0eWxlIGluc3RhbmNlb2Ygb2xTdHlsZS5UZXh0ID8gbGFiZWxTdHlsZSA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICBdO1xuICAgICAgICAgIHJldHVybiBzdHlsZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKCEoZmVhdHVyZSBhcyBPbEZlYXR1cmU8T2xHZW9tZXRyeT4pLmdldFN0eWxlKCkpIHtcbiAgICAgICAgaWYgKGJhc2VTdHlsZSkge1xuICAgICAgICAgIHN0eWxlID0gdGhpcy5jcmVhdGVTdHlsZShiYXNlU3R5bGUsIGZlYXR1cmUsIHJlc29sdXRpb24pO1xuICAgICAgICAgIGlmIChsYWJlbFN0eWxlKSB7XG4gICAgICAgICAgICBzdHlsZS5zZXRUZXh0KGxhYmVsU3R5bGUpO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gc3R5bGU7XG4gICAgICAgIH1cbiAgICAgICAgc3R5bGUgPSBbXG4gICAgICAgICAgbmV3IG9sU3R5bGUuU3R5bGUoe1xuICAgICAgICAgICAgaW1hZ2U6IG5ldyBvbFN0eWxlLkNpcmNsZSh7XG4gICAgICAgICAgICAgIHJhZGl1czogNCxcbiAgICAgICAgICAgICAgc3Ryb2tlOiBuZXcgb2xTdHlsZS5TdHJva2Uoe1xuICAgICAgICAgICAgICAgIGNvbG9yOiAnYmxhY2snXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICBmaWxsOiBuZXcgb2xTdHlsZS5GaWxsKHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJyNiYmJiZjInXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH0pXG4gICAgICAgIF07XG4gICAgICAgIHJldHVybiBzdHlsZTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHR5cGUgPT09ICdyZWd1bGFyJykge1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzaXplOyBpKyspIHtcbiAgICAgICAgY29uc3QgdmFsID1cbiAgICAgICAgICB0eXBlb2YgZmVhdHVyZS5nZXQoYXR0cmlidXRlKSAhPT0gJ3VuZGVmaW5lZCcgJiZcbiAgICAgICAgICBmZWF0dXJlLmdldChhdHRyaWJ1dGUpICE9PSBudWxsXG4gICAgICAgICAgICA/IGZlYXR1cmUuZ2V0KGF0dHJpYnV0ZSlcbiAgICAgICAgICAgIDogJyc7XG4gICAgICAgIGlmIChcbiAgICAgICAgICB2YWwgPT09IGRhdGFbaV0gfHxcbiAgICAgICAgICB2YWwudG9TdHJpbmcoKS5tYXRjaChuZXcgUmVnRXhwKGRhdGFbaV0sICdnbWknKSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgc3R5bGUgPSBbXG4gICAgICAgICAgICBuZXcgb2xTdHlsZS5TdHlsZSh7XG4gICAgICAgICAgICAgIHN0cm9rZTogbmV3IG9sU3R5bGUuU3Ryb2tlKHtcbiAgICAgICAgICAgICAgICBjb2xvcjogc3Ryb2tlID8gc3Ryb2tlW2ldIDogJ2JsYWNrJyxcbiAgICAgICAgICAgICAgICB3aWR0aDogd2lkdGggPyB3aWR0aFtpXSA6IDFcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgIGZpbGw6IG5ldyBvbFN0eWxlLkZpbGwoe1xuICAgICAgICAgICAgICAgIGNvbG9yOiBmaWxsID8gZmlsbFtpXSA6ICdyZ2JhKDI1NSwyNTUsMjU1LDAuNCknXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICB0ZXh0OiBsYWJlbFN0eWxlIGluc3RhbmNlb2Ygb2xTdHlsZS5UZXh0ID8gbGFiZWxTdHlsZSA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICBdO1xuICAgICAgICAgIHJldHVybiBzdHlsZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKGZlYXR1cmUgaW5zdGFuY2VvZiBPbEZlYXR1cmUpIHtcbiAgICAgICAgaWYgKCFmZWF0dXJlLmdldFN0eWxlKCkpIHtcbiAgICAgICAgICBpZiAoYmFzZVN0eWxlKSB7XG4gICAgICAgICAgICBzdHlsZSA9IHRoaXMuY3JlYXRlU3R5bGUoYmFzZVN0eWxlLCBmZWF0dXJlLCByZXNvbHV0aW9uKTtcbiAgICAgICAgICAgIGlmIChsYWJlbFN0eWxlKSB7XG4gICAgICAgICAgICAgIHN0eWxlLnNldFRleHQobGFiZWxTdHlsZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gc3R5bGU7XG4gICAgICAgICAgfVxuICAgICAgICAgIHN0eWxlID0gW1xuICAgICAgICAgICAgbmV3IG9sU3R5bGUuU3R5bGUoe1xuICAgICAgICAgICAgICBzdHJva2U6IG5ldyBvbFN0eWxlLlN0cm9rZSh7XG4gICAgICAgICAgICAgICAgY29sb3I6ICdibGFjaydcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgIGZpbGw6IG5ldyBvbFN0eWxlLkZpbGwoe1xuICAgICAgICAgICAgICAgIGNvbG9yOiAnI2JiYmJmMidcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgXTtcbiAgICAgICAgICByZXR1cm4gc3R5bGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBjcmVhdGVDbHVzdGVyU3R5bGUoXG4gICAgZmVhdHVyZTogUmVuZGVyRmVhdHVyZSB8IE9sRmVhdHVyZTxPbEdlb21ldHJ5PixcbiAgICByZXNvbHV0aW9uOiBudW1iZXIsXG4gICAgY2x1c3RlclBhcmFtOiBDbHVzdGVyUGFyYW0gPSB7fSxcbiAgICBsYXllclN0eWxlXG4gICkge1xuICAgIGxldCBzdHlsZTtcbiAgICBjb25zdCBzaXplID0gZmVhdHVyZS5nZXQoJ2ZlYXR1cmVzJykubGVuZ3RoO1xuICAgIGlmIChzaXplICE9PSAxKSB7XG4gICAgICBpZiAoY2x1c3RlclBhcmFtLmNsdXN0ZXJSYW5nZXMpIHtcbiAgICAgICAgZm9yIChjb25zdCByIG9mIGNsdXN0ZXJQYXJhbS5jbHVzdGVyUmFuZ2VzKSB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgKCFyLm1pblJhZGl1cyB8fCByLm1pblJhZGl1cyA8PSBzaXplKSAmJlxuICAgICAgICAgICAgKCFyLm1heFJhZGl1cyB8fCByLm1heFJhZGl1cyA+PSBzaXplKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgc3R5bGUgPSB0aGlzLmNyZWF0ZVN0eWxlKHIuc3R5bGUpIGFzIG9sU3R5bGUuQ2lyY2xlO1xuXG4gICAgICAgICAgICBpZiAoci5zaG93UmFuZ2UpIHtcbiAgICAgICAgICAgICAgY29uc3QgdGV4dCA9IG5ldyBvbFN0eWxlLlRleHQoe1xuICAgICAgICAgICAgICAgIHRleHQ6IHNpemUudG9TdHJpbmcoKSxcbiAgICAgICAgICAgICAgICBmaWxsOiBuZXcgb2xTdHlsZS5GaWxsKHtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAnI2ZmZidcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgc3R5bGUuc2V0VGV4dCh0ZXh0KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHIuZHluYW1pY1JhZGl1cykge1xuICAgICAgICAgICAgICBsZXQgY2x1c3RlclJhZGl1czogbnVtYmVyO1xuICAgICAgICAgICAgICBjb25zdCByYWRpdXNNaW4gPSBzdHlsZS5nZXRSYWRpdXMoKTtcbiAgICAgICAgICAgICAgY2x1c3RlclJhZGl1cyA9IDUgKiBNYXRoLmxvZyhzaXplKTtcbiAgICAgICAgICAgICAgaWYgKGNsdXN0ZXJSYWRpdXMgPCByYWRpdXNNaW4pIHtcbiAgICAgICAgICAgICAgICBjbHVzdGVyUmFkaXVzID0gcmFkaXVzTWluO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIHN0eWxlLmltYWdlXy5zZXRSYWRpdXMoY2x1c3RlclJhZGl1cyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKCFzdHlsZSkge1xuICAgICAgICBsZXQgY2x1c3RlclJhZGl1czogbnVtYmVyO1xuICAgICAgICBpZiAoY2x1c3RlclBhcmFtLnJhZGl1c0NhbGMpIHtcbiAgICAgICAgICBjbHVzdGVyUmFkaXVzID0gY2x1c3RlclBhcmFtLnJhZGl1c0NhbGMoc2l6ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc3QgcmFkaXVzTWluID0gNjtcbiAgICAgICAgICBjbHVzdGVyUmFkaXVzID0gNSAqIE1hdGgubG9nKHNpemUpO1xuICAgICAgICAgIGlmIChjbHVzdGVyUmFkaXVzIDwgcmFkaXVzTWluKSB7XG4gICAgICAgICAgICBjbHVzdGVyUmFkaXVzID0gcmFkaXVzTWluO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHN0eWxlID0gW1xuICAgICAgICAgIG5ldyBvbFN0eWxlLlN0eWxlKHtcbiAgICAgICAgICAgIGltYWdlOiBuZXcgb2xTdHlsZS5DaXJjbGUoe1xuICAgICAgICAgICAgICByYWRpdXM6IGNsdXN0ZXJSYWRpdXMsXG4gICAgICAgICAgICAgIHN0cm9rZTogbmV3IG9sU3R5bGUuU3Ryb2tlKHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJ2JsYWNrJ1xuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgZmlsbDogbmV3IG9sU3R5bGUuRmlsbCh7XG4gICAgICAgICAgICAgICAgY29sb3I6ICdyZ2JhKDI0LCAxMzQsIDQ1LCAwLjUpJ1xuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB0ZXh0OiBuZXcgb2xTdHlsZS5UZXh0KHtcbiAgICAgICAgICAgICAgdGV4dDogc2l6ZS50b1N0cmluZygpLFxuICAgICAgICAgICAgICBmaWxsOiBuZXcgb2xTdHlsZS5GaWxsKHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJyNmZmYnXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH0pXG4gICAgICAgIF07XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHN0eWxlID0gdGhpcy5jcmVhdGVTdHlsZShsYXllclN0eWxlLCBmZWF0dXJlLCByZXNvbHV0aW9uKTtcbiAgICB9XG4gICAgcmV0dXJuIHN0eWxlO1xuICB9XG5cbiAgZ2V0TGFiZWwoZmVhdHVyZSwgbGFiZWxNYXRjaCk6IHN0cmluZyB7XG4gICAgbGV0IGxhYmVsID0gbGFiZWxNYXRjaDtcbiAgICBpZiAoIWxhYmVsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGxhYmVsVG9HZXQgPSBBcnJheS5mcm9tKGxhYmVsTWF0Y2gubWF0Y2hBbGwoL1xcJFxceyhbXlxce1xcfV0rKVxcfS9nKSk7XG5cbiAgICBsYWJlbFRvR2V0LmZvckVhY2goKHYpID0+IHtcbiAgICAgIGxhYmVsID0gbGFiZWwucmVwbGFjZSh2WzBdLCBmZWF0dXJlLmdldCh2WzFdKSk7XG4gICAgfSk7XG5cbiAgICAvLyBOb3RoaW5nIGRvbmU/IGNoZWNrIGZlYXR1cmUncyBhdHRyaWJ1dGVcbiAgICBpZiAobGFiZWxUb0dldC5sZW5ndGggPT09IDAgJiYgbGFiZWwgPT09IGxhYmVsTWF0Y2gpIHtcbiAgICAgIGxhYmVsID0gZmVhdHVyZS5nZXQobGFiZWxNYXRjaCkgfHwgbGFiZWxNYXRjaDtcbiAgICB9XG5cbiAgICByZXR1cm4gbGFiZWw7XG4gIH1cblxuICBwcml2YXRlIGd1ZXNzVHlwZUZlYXR1cmUoZmVhdHVyZSkge1xuICAgIHN3aXRjaCAoZmVhdHVyZS5nZXRHZW9tZXRyeSgpLmdldFR5cGUoKSkge1xuICAgICAgY2FzZSAnUG9pbnQnOlxuICAgICAgY2FzZSAnTXVsdGlQb2ludCc6XG4gICAgICBjYXNlICdDaXJjbGUnOlxuICAgICAgICByZXR1cm4gJ2NpcmNsZSc7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gJ3JlZ3VsYXInO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -14,19 +14,19 @@ export class IgoStyleModule {
|
|
|
14
14
|
providers: [StyleService, DrawStyleService]
|
|
15
15
|
};
|
|
16
16
|
}
|
|
17
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
18
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
17
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: IgoStyleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
18
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: IgoStyleModule, imports: [i1.IgoStyleListModule, StyleModalDrawingComponent,
|
|
19
19
|
StyleModalLayerComponent,
|
|
20
20
|
StyleModalLayerButtonComponent], exports: [IgoStyleListModule,
|
|
21
21
|
StyleModalDrawingComponent,
|
|
22
22
|
StyleModalLayerComponent,
|
|
23
23
|
StyleModalLayerButtonComponent] });
|
|
24
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
24
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: IgoStyleModule, imports: [IgoStyleListModule.forRoot(),
|
|
25
25
|
StyleModalDrawingComponent,
|
|
26
26
|
StyleModalLayerComponent,
|
|
27
27
|
StyleModalLayerButtonComponent, IgoStyleListModule] });
|
|
28
28
|
}
|
|
29
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: IgoStyleModule, decorators: [{
|
|
30
30
|
type: NgModule,
|
|
31
31
|
args: [{
|
|
32
32
|
imports: [
|
|
@@ -49,7 +49,6 @@ export class ToastComponent {
|
|
|
49
49
|
get title() {
|
|
50
50
|
return getEntityTitle(this.feature);
|
|
51
51
|
}
|
|
52
|
-
constructor() { }
|
|
53
52
|
toggle() {
|
|
54
53
|
this.expanded = !this.expanded;
|
|
55
54
|
this.opened.emit(this.expanded);
|
|
@@ -75,10 +74,10 @@ export class ToastComponent {
|
|
|
75
74
|
}
|
|
76
75
|
}
|
|
77
76
|
}
|
|
78
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
79
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
77
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: ToastComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
78
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: ToastComponent, isStandalone: true, selector: "igo-toast", inputs: { expanded: "expanded", map: "map", feature: "feature" }, outputs: { opened: "opened" }, ngImport: i0, template: "<igo-flexible\n #flex\n collapsedMobile=\"51px\"\n expandedMobile=\"300px\"\n [state]=\"state\"\n (swipeup)=\"swipe($event.type)\"\n (swipedown)=\"swipe($event.type)\"\n>\n <igo-panel [title]=\"title\">\n <button mat-icon-button panelLeftButton (click)=\"toggle()\">\n <mat-icon>{{\n ['collapsed', 'initial'].indexOf(flex.state) >= 0\n ? 'arrow_upward'\n : 'arrow_downward'\n }}</mat-icon>\n </button>\n\n <button\n mat-icon-button\n panelRightButton\n class=\"igo-icon-button\"\n (click)=\"zoomToFeatureExtent()\"\n *ngIf=\"feature.geometry\"\n >\n <mat-icon>zoom_in</mat-icon>\n </button>\n\n <igo-feature-details [feature]=\"feature\"></igo-feature-details>\n </igo-panel>\n</igo-flexible>\n", styles: [":host{position:absolute;bottom:0;width:100%;max-height:calc(100% - 50px);background-color:#fff}igo-feature-details ::ng-deep table{width:100%}\n"], dependencies: [{ kind: "component", type: FlexibleComponent, selector: "igo-flexible", inputs: ["initial", "collapsed", "expanded", "initialMobile", "collapsedMobile", "expandedMobile", "direction", "state"] }, { kind: "component", type: PanelComponent, selector: "igo-panel", inputs: ["title", "withHeader", "cursorPointer"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FeatureDetailsComponent, selector: "igo-feature-details", inputs: ["source", "map", "toolbox", "feature"], outputs: ["routeEvent", "selectFeature", "htmlDisplayEvent"] }] });
|
|
80
79
|
}
|
|
81
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
80
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: ToastComponent, decorators: [{
|
|
82
81
|
type: Component,
|
|
83
82
|
args: [{ selector: 'igo-toast', standalone: true, imports: [
|
|
84
83
|
FlexibleComponent,
|
|
@@ -88,7 +87,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImpor
|
|
|
88
87
|
NgIf,
|
|
89
88
|
FeatureDetailsComponent
|
|
90
89
|
], template: "<igo-flexible\n #flex\n collapsedMobile=\"51px\"\n expandedMobile=\"300px\"\n [state]=\"state\"\n (swipeup)=\"swipe($event.type)\"\n (swipedown)=\"swipe($event.type)\"\n>\n <igo-panel [title]=\"title\">\n <button mat-icon-button panelLeftButton (click)=\"toggle()\">\n <mat-icon>{{\n ['collapsed', 'initial'].indexOf(flex.state) >= 0\n ? 'arrow_upward'\n : 'arrow_downward'\n }}</mat-icon>\n </button>\n\n <button\n mat-icon-button\n panelRightButton\n class=\"igo-icon-button\"\n (click)=\"zoomToFeatureExtent()\"\n *ngIf=\"feature.geometry\"\n >\n <mat-icon>zoom_in</mat-icon>\n </button>\n\n <igo-feature-details [feature]=\"feature\"></igo-feature-details>\n </igo-panel>\n</igo-flexible>\n", styles: [":host{position:absolute;bottom:0;width:100%;max-height:calc(100% - 50px);background-color:#fff}igo-feature-details ::ng-deep table{width:100%}\n"] }]
|
|
91
|
-
}],
|
|
90
|
+
}], propDecorators: { expanded: [{
|
|
92
91
|
type: Input
|
|
93
92
|
}], map: [{
|
|
94
93
|
type: Input
|
|
@@ -97,4 +96,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImpor
|
|
|
97
96
|
}], opened: [{
|
|
98
97
|
type: Output
|
|
99
98
|
}] } });
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvdG9hc3QvdG9hc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvdG9hc3QvdG9hc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUFFLGlCQUFpQixFQUFpQixNQUFNLHVCQUF1QixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVwRCxPQUFPLGVBQWUsTUFBTSxtQkFBbUIsQ0FBQztBQUVoRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUMvRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFaEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDbkUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7O0FBZ0IzQyxNQUFNLE9BQU8sY0FBYztJQUN6QixNQUFNLENBQUMsWUFBWSxHQUFHO1FBQ3BCLEVBQUUsRUFBRSxTQUFTO1FBQ2IsSUFBSSxFQUFFLFdBQVc7S0FDbEIsQ0FBQztJQUNNLE1BQU0sR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO0lB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SWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5cbmltcG9ydCB7IGdldEVudGl0eVRpdGxlIH0gZnJvbSAnQGlnbzIvY29tbW9uL2VudGl0eSc7XG5pbXBvcnQgeyBGbGV4aWJsZUNvbXBvbmVudCwgRmxleGlibGVTdGF0ZSB9IGZyb20gJ0BpZ28yL2NvbW1vbi9mbGV4aWJsZSc7XG5pbXBvcnQgeyBQYW5lbENvbXBvbmVudCB9IGZyb20gJ0BpZ28yL2NvbW1vbi9wYW5lbCc7XG5cbmltcG9ydCBvbEZvcm1hdEdlb0pTT04gZnJvbSAnb2wvZm9ybWF0L0dlb0pTT04nO1xuXG5pbXBvcnQgeyBGZWF0dXJlRGV0YWlsc0NvbXBvbmVudCB9IGZyb20gJy4uL2ZlYXR1cmUvZmVhdHVyZS1kZXRhaWxzL2ZlYXR1cmUtZGV0YWlscy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmVhdHVyZU1vdGlvbiB9IGZyb20gJy4uL2ZlYXR1cmUvc2hhcmVkL2ZlYXR1cmUuZW51bXMnO1xuaW1wb3J0IHsgRmVhdHVyZSB9IGZyb20gJy4uL2ZlYXR1cmUvc2hhcmVkL2ZlYXR1cmUuaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBtb3ZlVG9PbEZlYXR1cmVzIH0gZnJvbSAnLi4vZmVhdHVyZS9zaGFyZWQvZmVhdHVyZS51dGlscyc7XG5pbXBvcnQgeyBJZ29NYXAgfSBmcm9tICcuLi9tYXAvc2hhcmVkL21hcCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2lnby10b2FzdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90b2FzdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RvYXN0LmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBGbGV4aWJsZUNvbXBvbmVudCxcbiAgICBQYW5lbENvbXBvbmVudCxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBOZ0lmLFxuICAgIEZlYXR1cmVEZXRhaWxzQ29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgVG9hc3RDb21wb25lbnQge1xuICBzdGF0aWMgU1dJUEVfQUNUSU9OID0ge1xuICAgIFVQOiAnc3dpcGV1cCcsXG4gICAgRE9XTjogJ3N3aXBlZG93bidcbiAgfTtcbiAgcHJpdmF0ZSBmb3JtYXQgPSBuZXcgb2xGb3JtYXRHZW9KU09OKCk7XG5cbiAgQElucHV0KClcbiAgZ2V0IGV4cGFuZGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9leHBhbmRlZDtcbiAgfVxuICBzZXQgZXhwYW5kZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnN0YXRlID0gdmFsdWUgPyAnZXhwYW5kZWQnIDogJ2NvbGxhcHNlZCc7XG4gICAgdGhpcy5fZXhwYW5kZWQgPSB2YWx1ZTtcbiAgfVxuICBwcml2YXRlIF9leHBhbmRlZDogYm9vbGVhbjtcblxuICBASW5wdXQoKVxuICBnZXQgbWFwKCk6IElnb01hcCB7XG4gICAgcmV0dXJuIHRoaXMuX21hcDtcbiAgfVxuICBzZXQgbWFwKHZhbHVlOiBJZ29NYXApIHtcbiAgICB0aGlzLl9tYXAgPSB2YWx1ZTtcbiAgfVxuICBwcml2YXRlIF9tYXA6IElnb01hcDtcblxuICBASW5wdXQoKVxuICBnZXQgZmVhdHVyZSgpOiBGZWF0dXJlIHtcbiAgICByZXR1cm4gdGhpcy5fZmVhdHVyZTtcbiAgfVxuICBzZXQgZmVhdHVyZSh2YWx1ZTogRmVhdHVyZSkge1xuICAgIHRoaXMuX2ZlYXR1cmUgPSB2YWx1ZTtcbiAgfVxuICBwcml2YXRlIF9mZWF0dXJlOiBGZWF0dXJlO1xuXG4gIEBPdXRwdXQoKSBvcGVuZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgcHVibGljIHN0YXRlOiBGbGV4aWJsZVN0YXRlO1xuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIGdldCB0aXRsZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiBnZXRFbnRpdHlUaXRsZSh0aGlzLmZlYXR1cmUpO1xuICB9XG5cbiAgdG9nZ2xlKCkge1xuICAgIHRoaXMuZXhwYW5kZWQgPSAhdGhpcy5leHBhbmRlZDtcbiAgICB0aGlzLm9wZW5lZC5lbWl0KHRoaXMuZXhwYW5kZWQpO1xuICB9XG5cbiAgem9vbVRvRmVhdHVyZUV4dGVudCgpIHtcbiAgICBpZiAodGhpcy5mZWF0dXJlLmdlb21ldHJ5KSB7XG4gICAgICBjb25zdCBvbEZlYXR1cmUgPSB0aGlzLmZvcm1hdC5yZWFkRmVhdHVyZSh0aGlzLmZlYXR1cmUsIHtcbiAgICAgICAgZGF0YVByb2plY3Rpb246IHRoaXMuZmVhdHVyZS5wcm9qZWN0aW9uLFxuICAgICAgICBmZWF0dXJlUHJvamVjdGlvbjogdGhpcy5tYXAucHJvamVjdGlvblxuICAgICAgfSk7XG4gICAgICBtb3ZlVG9PbEZlYXR1cmVzKFxuICAgICAgICB0aGlzLm1hcC52aWV3Q29udHJvbGxlcixcbiAgICAgICAgW29sRmVhdHVyZV0sXG4gICAgICAgIEZlYXR1cmVNb3Rpb24uWm9vbVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBzd2lwZShhY3Rpb246IHN0cmluZykge1xuICAgIGlmIChhY3Rpb24gPT09IFRvYXN0Q29tcG9uZW50LlNXSVBFX0FDVElPTi5VUCkge1xuICAgICAgaWYgKCF0aGlzLmV4cGFuZGVkKSB7XG4gICAgICAgIHRoaXMudG9nZ2xlKCk7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChhY3Rpb24gPT09IFRvYXN0Q29tcG9uZW50LlNXSVBFX0FDVElPTi5ET1dOKSB7XG4gICAgICBpZiAodGhpcy5leHBhbmRlZCkge1xuICAgICAgICB0aGlzLnRvZ2dsZSgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiPGlnby1mbGV4aWJsZVxuICAjZmxleFxuICBjb2xsYXBzZWRNb2JpbGU9XCI1MXB4XCJcbiAgZXhwYW5kZWRNb2JpbGU9XCIzMDBweFwiXG4gIFtzdGF0ZV09XCJzdGF0ZVwiXG4gIChzd2lwZXVwKT1cInN3aXBlKCRldmVudC50eXBlKVwiXG4gIChzd2lwZWRvd24pPVwic3dpcGUoJGV2ZW50LnR5cGUpXCJcbj5cbiAgPGlnby1wYW5lbCBbdGl0bGVdPVwidGl0bGVcIj5cbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBwYW5lbExlZnRCdXR0b24gKGNsaWNrKT1cInRvZ2dsZSgpXCI+XG4gICAgICA8bWF0LWljb24+e3tcbiAgICAgICAgWydjb2xsYXBzZWQnLCAnaW5pdGlhbCddLmluZGV4T2YoZmxleC5zdGF0ZSkgPj0gMFxuICAgICAgICAgID8gJ2Fycm93X3Vwd2FyZCdcbiAgICAgICAgICA6ICdhcnJvd19kb3dud2FyZCdcbiAgICAgIH19PC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cblxuICAgIDxidXR0b25cbiAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgcGFuZWxSaWdodEJ1dHRvblxuICAgICAgY2xhc3M9XCJpZ28taWNvbi1idXR0b25cIlxuICAgICAgKGNsaWNrKT1cInpvb21Ub0ZlYXR1cmVFeHRlbnQoKVwiXG4gICAgICAqbmdJZj1cImZlYXR1cmUuZ2VvbWV0cnlcIlxuICAgID5cbiAgICAgIDxtYXQtaWNvbj56b29tX2luPC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cblxuICAgIDxpZ28tZmVhdHVyZS1kZXRhaWxzIFtmZWF0dXJlXT1cImZlYXR1cmVcIj48L2lnby1mZWF0dXJlLWRldGFpbHM+XG4gIDwvaWdvLXBhbmVsPlxuPC9pZ28tZmxleGlibGU+XG4iXX0=
|
|
@@ -10,11 +10,11 @@ export class IgoToastModule {
|
|
|
10
10
|
ngModule: IgoToastModule
|
|
11
11
|
};
|
|
12
12
|
}
|
|
13
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
14
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
15
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
13
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: IgoToastModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
14
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: IgoToastModule, imports: [ToastComponent], exports: [ToastComponent] });
|
|
15
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: IgoToastModule, imports: [ToastComponent] });
|
|
16
16
|
}
|
|
17
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: IgoToastModule, decorators: [{
|
|
18
18
|
type: NgModule,
|
|
19
19
|
args: [{
|
|
20
20
|
imports: [ToastComponent],
|