@igo2/geo 17.0.0-next.4 → 17.0.0-next.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/icons/cross_black_18px.svg +88 -88
- package/assets/icons/place_blue_36px.svg +55 -55
- package/assets/icons/place_green_36px.svg +55 -55
- package/assets/icons/place_red_36px.svg +55 -55
- package/assets/icons/place_yellow_36px.svg +55 -55
- package/esm2022/lib/catalog/catalog-browser/catalog-browser-group.component.mjs +3 -3
- package/esm2022/lib/catalog/catalog-browser/catalog-browser-layer.component.mjs +5 -5
- package/esm2022/lib/catalog/catalog-browser/catalog-browser.component.mjs +3 -3
- package/esm2022/lib/catalog/catalog-browser/catalog-browser.module.mjs +1 -1
- 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 +3 -3
- package/esm2022/lib/catalog/catalog-library/catalog-library.module.mjs +1 -1
- package/esm2022/lib/catalog/catalog-library/index.mjs +1 -1
- package/esm2022/lib/catalog/catalog.module.mjs +1 -1
- package/esm2022/lib/catalog/index.mjs +1 -1
- package/esm2022/lib/catalog/shared/catalog.abstract.mjs +1 -1
- package/esm2022/lib/catalog/shared/catalog.enum.mjs +1 -1
- package/esm2022/lib/catalog/shared/catalog.interface.mjs +1 -1
- package/esm2022/lib/catalog/shared/catalog.service.mjs +1 -1
- package/esm2022/lib/catalog/shared/catalogs.mjs +1 -1
- package/esm2022/lib/catalog/shared/index.mjs +1 -1
- package/esm2022/lib/datasource/index.mjs +1 -1
- package/esm2022/lib/datasource/shared/capabilities.interface.mjs +1 -1
- package/esm2022/lib/datasource/shared/capabilities.service.mjs +1 -1
- package/esm2022/lib/datasource/shared/datasource.service.mjs +1 -1
- package/esm2022/lib/datasource/shared/datasources/any-datasource.interface.mjs +1 -1
- package/esm2022/lib/datasource/shared/datasources/arcgisrest-datasource.mjs +1 -1
- package/esm2022/lib/datasource/shared/datasources/carto-datasource.mjs +1 -1
- package/esm2022/lib/datasource/shared/datasources/cluster-datasource.interface.mjs +1 -1
- package/esm2022/lib/datasource/shared/datasources/datasource.interface.mjs +1 -1
- package/esm2022/lib/datasource/shared/datasources/datasource.mjs +1 -1
- package/esm2022/lib/datasource/shared/datasources/feature-datasource.interface.mjs +1 -1
- package/esm2022/lib/datasource/shared/datasources/feature-datasource.mjs +1 -1
- package/esm2022/lib/datasource/shared/datasources/index.mjs +1 -1
- package/esm2022/lib/datasource/shared/datasources/websocket-datasource.mjs +1 -1
- package/esm2022/lib/datasource/shared/datasources/wfs-datasource.interface.mjs +1 -1
- package/esm2022/lib/datasource/shared/datasources/wfs-datasource.mjs +1 -1
- package/esm2022/lib/datasource/shared/datasources/wms-datasource.interface.mjs +1 -1
- package/esm2022/lib/datasource/shared/datasources/wms-wfs.utils.mjs +1 -1
- package/esm2022/lib/datasource/shared/options/options-api.providers.mjs +1 -1
- package/esm2022/lib/directions/directions-buttons/directions-buttons.component.mjs +3 -3
- package/esm2022/lib/directions/directions-buttons/index.mjs +1 -1
- package/esm2022/lib/directions/directions-inputs/directions-inputs.component.mjs +3 -3
- package/esm2022/lib/directions/directions-inputs/index.mjs +1 -1
- package/esm2022/lib/directions/directions-results/directions-results.component.mjs +3 -3
- package/esm2022/lib/directions/directions-results/index.mjs +1 -1
- package/esm2022/lib/directions/directions-sources/directions-source.interface.mjs +1 -1
- package/esm2022/lib/directions/directions-sources/directions-source.mjs +1 -1
- package/esm2022/lib/directions/directions-sources/directions-source.provider.mjs +1 -1
- package/esm2022/lib/directions/directions-sources/index.mjs +1 -1
- package/esm2022/lib/directions/directions-sources/osrm-directions-source.mjs +1 -1
- package/esm2022/lib/directions/directions.component.mjs +3 -3
- package/esm2022/lib/directions/directions.module.mjs +1 -1
- package/esm2022/lib/directions/index.mjs +1 -1
- package/esm2022/lib/directions/shared/directions-source.service.mjs +1 -1
- package/esm2022/lib/directions/shared/directions.enum.mjs +1 -1
- package/esm2022/lib/directions/shared/directions.interface.mjs +1 -1
- package/esm2022/lib/directions/shared/directions.service.mjs +1 -1
- package/esm2022/lib/directions/shared/directions.utils.mjs +21 -21
- package/esm2022/lib/directions/shared/index.mjs +1 -1
- 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-button/index.mjs +1 -1
- package/esm2022/lib/download/download.module.mjs +1 -1
- package/esm2022/lib/download/index.mjs +1 -1
- package/esm2022/lib/download/shared/download.interface.mjs +1 -1
- package/esm2022/lib/download/shared/download.service.mjs +1 -1
- package/esm2022/lib/download/shared/index.mjs +1 -1
- package/esm2022/lib/draw/draw/draw-layer-popup.component.mjs +3 -3
- package/esm2022/lib/draw/draw/draw-popup.component.mjs +3 -3
- package/esm2022/lib/draw/draw/draw-shorcuts.component.mjs +7 -4
- package/esm2022/lib/draw/draw/draw.component.mjs +4 -4
- package/esm2022/lib/draw/draw/draw.module.mjs +1 -1
- package/esm2022/lib/draw/drawingTool.module.mjs +1 -1
- package/esm2022/lib/draw/index.mjs +1 -1
- package/esm2022/lib/draw/shared/draw-icon.service.mjs +1 -1
- package/esm2022/lib/draw/shared/draw.enum.mjs +1 -1
- package/esm2022/lib/draw/shared/draw.interface.mjs +1 -1
- package/esm2022/lib/draw/shared/draw.utils.mjs +1 -1
- package/esm2022/lib/draw/shared/index.mjs +1 -1
- package/esm2022/lib/environment/environment.interface.mjs +1 -1
- package/esm2022/lib/environment/index.mjs +1 -1
- package/esm2022/lib/feature/feature-details/feature-details.component.mjs +3 -3
- package/esm2022/lib/feature/feature-details/feature-details.directive.mjs +1 -1
- package/esm2022/lib/feature/feature-details/feature-details.module.mjs +1 -1
- package/esm2022/lib/feature/feature-details/index.mjs +1 -1
- package/esm2022/lib/feature/feature-form/feature-form.component.mjs +3 -3
- package/esm2022/lib/feature/feature-form/feature-form.module.mjs +1 -1
- package/esm2022/lib/feature/feature.module.mjs +1 -1
- package/esm2022/lib/feature/index.mjs +1 -1
- package/esm2022/lib/feature/shared/feature-store.utils.mjs +1 -1
- package/esm2022/lib/feature/shared/feature.enums.mjs +1 -1
- package/esm2022/lib/feature/shared/feature.interfaces.mjs +1 -1
- package/esm2022/lib/feature/shared/feature.utils.mjs +1 -1
- package/esm2022/lib/feature/shared/index.mjs +1 -1
- package/esm2022/lib/feature/shared/store.mjs +1 -1
- package/esm2022/lib/feature/shared/strategies/geo-properties.mjs +1 -1
- package/esm2022/lib/feature/shared/strategies/in-map-extent.mjs +1 -1
- package/esm2022/lib/feature/shared/strategies/in-map-resolution.mjs +1 -1
- package/esm2022/lib/feature/shared/strategies/index.mjs +1 -1
- package/esm2022/lib/feature/shared/strategies/loading-layer.mjs +1 -1
- package/esm2022/lib/feature/shared/strategies/loading.mjs +1 -1
- package/esm2022/lib/feature/shared/strategies/search.mjs +1 -1
- package/esm2022/lib/feature/shared/strategies/selection.mjs +1 -1
- package/esm2022/lib/feature/shared/strategies.utils.mjs +1 -1
- package/esm2022/lib/filter/filter.module.mjs +1 -1
- package/esm2022/lib/filter/index.mjs +1 -1
- package/esm2022/lib/filter/ogc-filter-button/ogc-filter-button.component.mjs +3 -3
- package/esm2022/lib/filter/ogc-filter-form/ogc-filter-form.component.mjs +3 -3
- package/esm2022/lib/filter/ogc-filter-selection/ogc-filter-selection.component.mjs +3 -3
- package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.mjs +7 -7
- package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time.component.mjs +3 -3
- package/esm2022/lib/filter/ogc-filterable-form/ogc-filterable-form.component.mjs +1 -1
- package/esm2022/lib/filter/ogc-filterable-item/ogc-filterable-item.component.mjs +3 -3
- package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.mjs +1 -1
- package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list.component.mjs +1 -1
- package/esm2022/lib/filter/shared/filterable-datasource.pipe.mjs +1 -1
- package/esm2022/lib/filter/shared/ogc-filter.interface.mjs +1 -1
- package/esm2022/lib/filter/shared/ogc-filter.mjs +1 -1
- package/esm2022/lib/filter/shared/spatial-filter.service.mjs +1 -1
- package/esm2022/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.mjs +3 -3
- package/esm2022/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.mjs +1 -1
- package/esm2022/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.mjs +3 -3
- package/esm2022/lib/filter/time-filter-button/time-filter-button.component.mjs +3 -3
- package/esm2022/lib/filter/time-filter-form/time-filter-form.component.mjs +7 -7
- package/esm2022/lib/filter/time-filter-item/time-filter-item.component.mjs +3 -3
- package/esm2022/lib/filter/time-filter-list/time-filter-list-binding.directive.mjs +1 -1
- package/esm2022/lib/filter/time-filter-list/time-filter-list.component.mjs +1 -1
- package/esm2022/lib/geo.module.mjs +1 -1
- package/esm2022/lib/geometry/geometry-form-field/geometry-form-field-input.component.mjs +3 -3
- package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.component.mjs +3 -3
- package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.module.mjs +1 -1
- package/esm2022/lib/geometry/geometry-form-field/index.mjs +1 -1
- package/esm2022/lib/geometry/geometry.module.mjs +1 -1
- package/esm2022/lib/geometry/index.mjs +1 -1
- package/esm2022/lib/geometry/shared/controls/draw.mjs +1 -1
- package/esm2022/lib/geometry/shared/controls/index.mjs +1 -1
- package/esm2022/lib/geometry/shared/controls/modify.mjs +1 -1
- package/esm2022/lib/geometry/shared/controls/slice.mjs +1 -1
- package/esm2022/lib/geometry/shared/geometry.errors.mjs +1 -1
- package/esm2022/lib/geometry/shared/geometry.interfaces.mjs +1 -1
- package/esm2022/lib/geometry/shared/geometry.utils.mjs +1 -1
- package/esm2022/lib/geometry/shared/index.mjs +1 -1
- package/esm2022/lib/import-export/export-button/export-button.component.mjs +3 -3
- package/esm2022/lib/import-export/export-button/index.mjs +1 -1
- package/esm2022/lib/import-export/import-export/import-export.component.mjs +3 -3
- package/esm2022/lib/import-export/import-export/index.mjs +1 -1
- package/esm2022/lib/import-export/import-export.module.mjs +1 -1
- package/esm2022/lib/import-export/index.mjs +1 -1
- package/esm2022/lib/import-export/shared/drop-geo-file.directive.mjs +5 -56
- package/esm2022/lib/import-export/shared/export.errors.mjs +1 -1
- package/esm2022/lib/import-export/shared/export.interface.mjs +1 -1
- package/esm2022/lib/import-export/shared/export.service.mjs +1 -1
- package/esm2022/lib/import-export/shared/export.type.mjs +1 -1
- package/esm2022/lib/import-export/shared/export.utils.mjs +1 -1
- package/esm2022/lib/import-export/shared/import.errors.mjs +1 -1
- package/esm2022/lib/import-export/shared/import.interface.mjs +1 -1
- package/esm2022/lib/import-export/shared/import.service.mjs +1 -1
- package/esm2022/lib/import-export/shared/import.utils.mjs +1 -1
- package/esm2022/lib/import-export/shared/index.mjs +1 -1
- package/esm2022/lib/layer/index.mjs +1 -1
- package/esm2022/lib/layer/layer-item/layer-item.component.mjs +3 -3
- package/esm2022/lib/layer/layer-legend/layer-legend.component.mjs +3 -3
- package/esm2022/lib/layer/layer-legend-item/layer-legend-item.component.mjs +1 -1
- package/esm2022/lib/layer/layer-legend-list/layer-legend-list-binding.directive.mjs +1 -1
- package/esm2022/lib/layer/layer-legend-list/layer-legend-list.component.mjs +1 -1
- package/esm2022/lib/layer/layer-list/layer-list-binding.directive.mjs +1 -1
- package/esm2022/lib/layer/layer-list/layer-list.component.mjs +5 -4
- package/esm2022/lib/layer/layer-list-tool/layer-list-tool.component.mjs +3 -3
- package/esm2022/lib/layer/layer.module.mjs +1 -1
- package/esm2022/lib/layer/shared/layer.service.mjs +6 -6
- package/esm2022/lib/layer/shared/layers/image-layer.interface.mjs +1 -1
- package/esm2022/lib/layer/shared/layers/image-layer.mjs +1 -1
- package/esm2022/lib/layer/shared/layers/index.mjs +1 -1
- package/esm2022/lib/layer/shared/layers/layer.interface.mjs +1 -1
- package/esm2022/lib/layer/shared/layers/layer.mjs +1 -1
- package/esm2022/lib/layer/shared/layers/legend.interface.mjs +1 -1
- package/esm2022/lib/layer/shared/layers/tile-layer.interface.mjs +1 -1
- package/esm2022/lib/layer/shared/layers/tile-layer.mjs +1 -1
- package/esm2022/lib/layer/shared/layers/vector-layer.interface.mjs +1 -1
- package/esm2022/lib/layer/shared/layers/vector-layer.mjs +1 -1
- package/esm2022/lib/layer/shared/layers/vectortile-layer.interface.mjs +1 -1
- package/esm2022/lib/layer/shared/layers/vectortile-layer.mjs +1 -1
- package/esm2022/lib/layer/track-feature-button/track-feature-button.component.mjs +3 -3
- package/esm2022/lib/layer/utils/image-watcher.mjs +1 -1
- package/esm2022/lib/layer/utils/tile-watcher.mjs +1 -1
- package/esm2022/lib/layer/utils/vector-watcher.mjs +1 -1
- package/esm2022/lib/map/baselayers-switcher/baselayers-switcher.animation.mjs +1 -1
- package/esm2022/lib/map/baselayers-switcher/baselayers-switcher.component.mjs +3 -3
- package/esm2022/lib/map/baselayers-switcher/mini-basemap.component.mjs +1 -1
- 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/index.mjs +1 -1
- package/esm2022/lib/map/info-section/info-section.component.mjs +1 -1
- package/esm2022/lib/map/map-browser/map-browser.component.mjs +1 -1
- package/esm2022/lib/map/map-center/map-center.component.mjs +1 -1
- package/esm2022/lib/map/map.module.mjs +1 -1
- package/esm2022/lib/map/menu-button/menu-button.component.mjs +3 -3
- package/esm2022/lib/map/offline-button/offline-button.component.mjs +3 -3
- package/esm2022/lib/map/rotation-button/rotation-button.component.mjs +3 -3
- package/esm2022/lib/map/shared/controllers/geolocation.mjs +1 -1
- package/esm2022/lib/map/shared/controllers/view.mjs +1 -1
- package/esm2022/lib/map/shared/hover-feature.directive.mjs +1 -1
- package/esm2022/lib/map/shared/linkedLayers.utils.mjs +3 -3
- package/esm2022/lib/map/shared/map-pointer-position.directive.mjs +1 -1
- package/esm2022/lib/map/shared/map.abstract.mjs +1 -1
- package/esm2022/lib/map/shared/map.mjs +1 -1
- package/esm2022/lib/map/shared/mapOffline.directive.mjs +1 -1
- package/esm2022/lib/map/shared/projection.service.mjs +1 -1
- package/esm2022/lib/map/shared/projection.utils.mjs +60 -1
- package/esm2022/lib/map/swipe-control/swipe-control.component.mjs +1 -1
- package/esm2022/lib/map/utils/layer-watcher.mjs +1 -1
- package/esm2022/lib/map/wake-lock-button/wake-lock-button.component.mjs +6 -6
- package/esm2022/lib/map/zoom-button/zoom-button.component.mjs +3 -3
- package/esm2022/lib/measure/index.mjs +1 -1
- package/esm2022/lib/measure/measure.module.mjs +1 -1
- package/esm2022/lib/measure/measurer/index.mjs +1 -1
- package/esm2022/lib/measure/measurer/measure-format.pipe.mjs +1 -1
- package/esm2022/lib/measure/measurer/measurer-dialog.component.mjs +3 -3
- package/esm2022/lib/measure/measurer/measurer-item.component.mjs +3 -3
- package/esm2022/lib/measure/measurer/measurer.component.mjs +3 -3
- package/esm2022/lib/measure/measurer/measurer.module.mjs +1 -1
- package/esm2022/lib/measure/shared/index.mjs +1 -1
- package/esm2022/lib/measure/shared/measure.enum.mjs +1 -1
- package/esm2022/lib/measure/shared/measure.interfaces.mjs +1 -1
- package/esm2022/lib/measure/shared/measure.utils.mjs +1 -1
- package/esm2022/lib/metadata/index.mjs +1 -1
- package/esm2022/lib/metadata/metadata-button/index.mjs +1 -1
- package/esm2022/lib/metadata/metadata-button/metadata-button.component.mjs +5 -5
- package/esm2022/lib/metadata/metadata.module.mjs +1 -1
- package/esm2022/lib/metadata/shared/index.mjs +1 -1
- package/esm2022/lib/metadata/shared/metadata.interface.mjs +1 -1
- package/esm2022/lib/metadata/shared/metadata.service.mjs +1 -1
- package/esm2022/lib/offline/geoDB/configFileToGeoDB.service.mjs +1 -1
- package/esm2022/lib/offline/geoDB/geoDB.enums.mjs +1 -1
- package/esm2022/lib/offline/geoDB/geoDB.interface.mjs +1 -1
- package/esm2022/lib/offline/geoDB/geoDB.service.mjs +1 -1
- package/esm2022/lib/offline/geoDB/index.mjs +1 -1
- package/esm2022/lib/offline/index.mjs +1 -1
- package/esm2022/lib/offline/layerDB/index.mjs +1 -1
- package/esm2022/lib/offline/layerDB/layerDB.interface.mjs +1 -1
- package/esm2022/lib/offline/layerDB/layerDB.service.mjs +1 -1
- package/esm2022/lib/offline/shared/geo-network.service.mjs +1 -1
- package/esm2022/lib/offline/shared/index.mjs +1 -1
- package/esm2022/lib/overlay/index.mjs +1 -1
- package/esm2022/lib/overlay/overlay.module.mjs +1 -1
- package/esm2022/lib/overlay/shared/index.mjs +1 -1
- package/esm2022/lib/overlay/shared/overlay.directive.mjs +1 -1
- package/esm2022/lib/overlay/shared/overlay.enum.mjs +1 -1
- package/esm2022/lib/overlay/shared/overlay.mjs +1 -1
- package/esm2022/lib/overlay/shared/overlay.service.mjs +1 -1
- package/esm2022/lib/overlay/shared/overlay.utils.mjs +1 -1
- package/esm2022/lib/print/index.mjs +1 -1
- package/esm2022/lib/print/print/print.component.mjs +3 -3
- package/esm2022/lib/print/print-form/index.mjs +1 -1
- package/esm2022/lib/print/print-form/print-form.component.mjs +3 -3
- package/esm2022/lib/print/print.module.mjs +1 -1
- package/esm2022/lib/print/shared/geopdf.mjs +1 -1
- package/esm2022/lib/print/shared/index.mjs +1 -1
- package/esm2022/lib/print/shared/print.interface.mjs +1 -1
- package/esm2022/lib/print/shared/print.service.mjs +1 -1
- package/esm2022/lib/print/shared/print.type.mjs +1 -1
- package/esm2022/lib/query/index.mjs +1 -1
- package/esm2022/lib/query/query.module.mjs +1 -1
- package/esm2022/lib/query/shared/index.mjs +1 -1
- package/esm2022/lib/query/shared/query-search-source.mjs +1 -1
- package/esm2022/lib/query/shared/query-search-source.providers.mjs +1 -1
- package/esm2022/lib/query/shared/query.directive.mjs +1 -1
- package/esm2022/lib/query/shared/query.enums.mjs +1 -1
- package/esm2022/lib/query/shared/query.interfaces.mjs +1 -1
- package/esm2022/lib/query/shared/query.service.mjs +1 -1
- package/esm2022/lib/query/shared/query.utils.mjs +1 -1
- package/esm2022/lib/search/index.mjs +1 -1
- package/esm2022/lib/search/search-bar/search-bar.component.mjs +3 -3
- package/esm2022/lib/search/search-bar/search-bar.module.mjs +1 -1
- package/esm2022/lib/search/search-results/index.mjs +1 -1
- 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 +5 -5
- package/esm2022/lib/search/search-results/search-results-item.component.mjs +3 -3
- package/esm2022/lib/search/search-results/search-results.component.mjs +3 -3
- package/esm2022/lib/search/search-results/search-results.module.mjs +1 -1
- package/esm2022/lib/search/search-selector/search-selector.component.mjs +3 -3
- package/esm2022/lib/search/search-selector/search-selector.module.mjs +1 -1
- package/esm2022/lib/search/search-settings/search-settings.component.mjs +3 -3
- package/esm2022/lib/search/search-settings/search-settings.module.mjs +1 -1
- package/esm2022/lib/search/search.module.mjs +1 -1
- package/esm2022/lib/search/shared/index.mjs +1 -1
- package/esm2022/lib/search/shared/search-pointer-summary.directive.mjs +1 -1
- package/esm2022/lib/search/shared/search-source-service.providers.mjs +1 -1
- package/esm2022/lib/search/shared/search-source.service.mjs +1 -1
- package/esm2022/lib/search/shared/search.enums.mjs +1 -1
- package/esm2022/lib/search/shared/search.interfaces.mjs +1 -1
- package/esm2022/lib/search/shared/search.service.mjs +1 -1
- package/esm2022/lib/search/shared/search.utils.mjs +2 -2
- package/esm2022/lib/search/shared/sources/cadastre.mjs +2 -2
- package/esm2022/lib/search/shared/sources/cadastre.providers.mjs +1 -1
- package/esm2022/lib/search/shared/sources/coordinates.interfaces.mjs +1 -1
- package/esm2022/lib/search/shared/sources/coordinates.mjs +2 -2
- package/esm2022/lib/search/shared/sources/coordinates.providers.mjs +1 -1
- package/esm2022/lib/search/shared/sources/icherche-icons.mjs +32 -0
- package/esm2022/lib/search/shared/sources/icherche.interfaces.mjs +1 -1
- package/esm2022/lib/search/shared/sources/icherche.mjs +8 -3
- package/esm2022/lib/search/shared/sources/icherche.providers.mjs +1 -1
- package/esm2022/lib/search/shared/sources/ilayer.interfaces.mjs +1 -1
- package/esm2022/lib/search/shared/sources/ilayer.mjs +1 -1
- package/esm2022/lib/search/shared/sources/ilayer.providers.mjs +1 -1
- package/esm2022/lib/search/shared/sources/index.mjs +1 -1
- package/esm2022/lib/search/shared/sources/nominatim.interfaces.mjs +1 -1
- package/esm2022/lib/search/shared/sources/nominatim.mjs +3 -3
- package/esm2022/lib/search/shared/sources/nominatim.providers.mjs +1 -1
- package/esm2022/lib/search/shared/sources/source.interfaces.mjs +1 -1
- package/esm2022/lib/search/shared/sources/source.mjs +1 -1
- package/esm2022/lib/search/shared/sources/storedqueries.interfaces.mjs +1 -1
- package/esm2022/lib/search/shared/sources/storedqueries.mjs +3 -3
- package/esm2022/lib/search/shared/sources/storedqueries.providers.mjs +1 -1
- package/esm2022/lib/search/shared/sources/workspace.interfaces.mjs +1 -1
- package/esm2022/lib/search/shared/sources/workspace.mjs +2 -2
- package/esm2022/lib/search/shared/sources/workspace.providers.mjs +1 -1
- package/esm2022/lib/style/index.mjs +1 -1
- package/esm2022/lib/style/shared/datasource/esri-style-generator.mjs +1 -1
- package/esm2022/lib/style/shared/datasource/index.mjs +1 -1
- package/esm2022/lib/style/shared/feature/feature-style.mjs +1 -1
- package/esm2022/lib/style/shared/feature/index.mjs +1 -1
- package/esm2022/lib/style/shared/font.enum.mjs +1 -1
- package/esm2022/lib/style/shared/index.mjs +1 -1
- package/esm2022/lib/style/shared/overlay/index.mjs +1 -1
- package/esm2022/lib/style/shared/overlay/overlay-marker-style.utils.mjs +1 -1
- package/esm2022/lib/style/shared/overlay/overlay-style.utils.mjs +1 -1
- package/esm2022/lib/style/shared/vector/commonVectorStyle.mjs +1 -1
- package/esm2022/lib/style/shared/vector/conversion.utils.mjs +1 -1
- package/esm2022/lib/style/shared/vector/index.mjs +1 -1
- package/esm2022/lib/style/shared/vector/vector-style.interface.mjs +1 -1
- package/esm2022/lib/style/style-list/index.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 +1 -1
- package/esm2022/lib/style/style-list/style-list.provider.mjs +1 -1
- package/esm2022/lib/style/style-list/style-list.service.mjs +1 -1
- package/esm2022/lib/style/style-modal/drawing/index.mjs +1 -1
- package/esm2022/lib/style/style-modal/drawing/style-modal-drawing.component.mjs +3 -3
- package/esm2022/lib/style/style-modal/index.mjs +1 -1
- package/esm2022/lib/style/style-modal/layer/index.mjs +1 -1
- package/esm2022/lib/style/style-modal/layer/style-modal-layer.component.mjs +3 -3
- package/esm2022/lib/style/style-modal/layer-button/index.mjs +1 -1
- package/esm2022/lib/style/style-modal/layer-button/style-modal-layer-button.component.mjs +3 -3
- package/esm2022/lib/style/style-modal/shared/index.mjs +1 -1
- package/esm2022/lib/style/style-modal/shared/style-modal.interface.mjs +1 -1
- package/esm2022/lib/style/style-service/draw-style.service.mjs +1 -1
- package/esm2022/lib/style/style-service/index.mjs +1 -1
- package/esm2022/lib/style/style-service/style.service.mjs +1 -1
- package/esm2022/lib/style/style.module.mjs +1 -1
- package/esm2022/lib/toast/index.mjs +1 -1
- package/esm2022/lib/toast/toast.component.mjs +3 -3
- package/esm2022/lib/toast/toast.module.mjs +1 -1
- package/esm2022/lib/utils/googleLinks.mjs +1 -1
- package/esm2022/lib/utils/id-generator.mjs +1 -1
- package/esm2022/lib/utils/index.mjs +1 -1
- package/esm2022/lib/utils/osmLinks.mjs +1 -1
- package/esm2022/lib/utils/propertyTypeDetector/index.mjs +1 -1
- package/esm2022/lib/utils/propertyTypeDetector/propertyTypeDetector.interface.mjs +1 -1
- package/esm2022/lib/utils/propertyTypeDetector/propertyTypeDetector.service.mjs +1 -1
- package/esm2022/lib/wkt/index.mjs +1 -1
- package/esm2022/lib/wkt/shared/index.mjs +1 -1
- package/esm2022/lib/wkt/shared/wkt.service.mjs +15 -15
- package/esm2022/lib/wkt/wkt.module.mjs +1 -1
- package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.component.mjs +3 -3
- package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.module.mjs +1 -1
- package/esm2022/lib/workspace/confirmation-popup/index.mjs +1 -1
- package/esm2022/lib/workspace/index.mjs +1 -1
- package/esm2022/lib/workspace/shared/edition-workspace.mjs +1 -1
- package/esm2022/lib/workspace/shared/edition-workspace.service.mjs +3 -3
- package/esm2022/lib/workspace/shared/feature-workspace.mjs +1 -1
- package/esm2022/lib/workspace/shared/feature-workspace.service.mjs +1 -1
- package/esm2022/lib/workspace/shared/index.mjs +1 -1
- package/esm2022/lib/workspace/shared/wfs-workspace.mjs +1 -1
- package/esm2022/lib/workspace/shared/wfs-workspace.service.mjs +1 -1
- package/esm2022/lib/workspace/shared/wms-workspace.service.mjs +1 -1
- package/esm2022/lib/workspace/shared/workspace.utils.mjs +2 -2
- package/esm2022/lib/workspace/widgets/index.mjs +1 -1
- package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.component.mjs +3 -3
- package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.module.mjs +1 -1
- package/esm2022/lib/workspace/widgets/widgets.mjs +1 -1
- package/esm2022/lib/workspace/workspace-selector/workspace-selector.directive.mjs +1 -1
- package/esm2022/lib/workspace/workspace-selector/workspace-selector.module.mjs +1 -1
- package/esm2022/lib/workspace/workspace-updator/workspace-updator.directive.mjs +1 -1
- package/esm2022/lib/workspace/workspace-updator/workspace-updator.module.mjs +1 -1
- package/esm2022/lib/workspace/workspace.module.mjs +1 -1
- package/esm2022/public_api.mjs +1 -1
- package/fesm2022/igo2-geo.mjs +307 -262
- package/fesm2022/igo2-geo.mjs.map +1 -1
- package/lib/catalog/catalog-browser/catalog-browser-layer.component.d.ts +1 -1
- package/lib/datasource/shared/datasources/arcgisrest-datasource.d.ts +2 -3
- package/lib/datasource/shared/datasources/cluster-datasource.interface.d.ts +2 -3
- package/lib/datasource/shared/datasources/datasource.d.ts +1 -2
- package/lib/datasource/shared/datasources/feature-datasource.d.ts +2 -3
- package/lib/datasource/shared/datasources/feature-datasource.interface.d.ts +2 -3
- package/lib/datasource/shared/datasources/websocket-datasource.d.ts +1 -2
- package/lib/datasource/shared/datasources/wfs-datasource.d.ts +2 -3
- package/lib/datasource/shared/datasources/wfs-datasource.interface.d.ts +1 -2
- package/lib/datasource/shared/datasources/wms-datasource.interface.d.ts +1 -2
- package/lib/directions/shared/directions.interface.d.ts +2 -9
- package/lib/draw/draw/draw-shorcuts.component.d.ts +2 -0
- package/lib/filter/shared/ogc-filter.interface.d.ts +1 -2
- package/lib/geometry/geometry-form-field/geometry-form-field-input.component.d.ts +1 -2
- package/lib/geometry/shared/controls/draw.d.ts +4 -4
- package/lib/geometry/shared/controls/slice.d.ts +4 -4
- package/lib/import-export/shared/drop-geo-file.directive.d.ts +0 -2
- package/lib/layer/layer-list/layer-list.component.d.ts +2 -0
- package/lib/layer/shared/layers/vector-layer.d.ts +3 -4
- package/lib/layer/shared/layers/vector-layer.interface.d.ts +1 -2
- package/lib/map/shared/projection.utils.d.ts +11 -0
- package/lib/query/shared/query.interfaces.d.ts +1 -2
- package/lib/search/search-results/search-results-add-button.component.d.ts +1 -1
- package/lib/search/shared/search.interfaces.d.ts +12 -10
- package/lib/search/shared/sources/icherche-icons.d.ts +7 -0
- package/lib/style/shared/vector/conversion.utils.d.ts +2 -3
- package/lib/workspace/shared/edition-workspace.service.d.ts +2 -1
- package/locale/en.geo.json +818 -818
- package/locale/fr.geo.json +819 -819
- package/package.json +6 -6
- package/src/_index.scss +2 -2
- package/src/lib/catalog/catalog-browser/catalog-browser.theming.scss +22 -22
- package/src/lib/catalog/catalog.theming.scss +5 -5
- package/src/lib/directions/directions-results/directions-results.theming.scss +10 -10
- package/src/lib/directions/directions.theming.scss +6 -6
- package/src/lib/draw/draw.theming.scss +32 -32
- package/src/lib/feature/feature-details/feature-details.theming.scss +16 -16
- package/src/lib/feature/feature.theming.scss +4 -4
- package/src/lib/measure/measure.theming.scss +5 -5
- package/src/lib/measure/measurer/measurer.theming.scss +26 -26
- package/src/lib/search/search-bar/search-bar.theming.scss +33 -33
- package/src/lib/search/search-results/search-results-item.theme.scss +20 -20
- package/src/lib/search/search.theming.scss +7 -7
- package/src/lib/workspace/confirmation-popup/confirmation-popup.theming.scss +14 -14
- package/src/lib/workspace/workspace.theming.scss +6 -6
- package/style/style.css +2 -1
|
@@ -64,4 +64,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImpor
|
|
|
64
64
|
]
|
|
65
65
|
}]
|
|
66
66
|
}] });
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2dlby5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzVELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBcUJyRSxNQUFNLE9BQU8sWUFBWTt1R0FBWixZQUFZO3dHQUFaLFlBQVksWUFmckIsaUJBQWlCO1lBQ2pCLGVBQWU7WUFDZixxQkFBcUI7WUFDckIsY0FBYztZQUNkLGlCQUFpQjtZQUNqQixnQkFBZ0I7WUFDaEIsY0FBYztZQUNkLG1CQUFtQjtZQUNuQixlQUFlO1lBQ2YsY0FBYztZQUNkLHFCQUFxQjtZQUNyQixjQUFjO1lBQ2QsWUFBWTt3R0FHSCxZQUFZLFlBZnJCLGlCQUFpQjtZQUNqQixlQUFlO1lBQ2YscUJBQXFCO1lBQ3JCLGNBQWM7WUFDZCxpQkFBaUI7WUFDakIsZ0JBQWdCO1lBQ2hCLGNBQWM7WUFDZCxtQkFBbUI7WUFDbkIsZUFBZTtZQUNmLGNBQWM7WUFDZCxxQkFBcUI7WUFDckIsY0FBYztZQUNkLFlBQVk7OzJGQUdILFlBQVk7a0JBbkJ4QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxFQUFFO29CQUNYLFlBQVksRUFBRSxFQUFFO29CQUNoQixPQUFPLEVBQUU7d0JBQ1AsaUJBQWlCO3dCQUNqQixlQUFlO3dCQUNmLHFCQUFxQjt3QkFDckIsY0FBYzt3QkFDZCxpQkFBaUI7d0JBQ2pCLGdCQUFnQjt3QkFDaEIsY0FBYzt3QkFDZCxtQkFBbUI7d0JBQ25CLGVBQWU7d0JBQ2YsY0FBYzt3QkFDZCxxQkFBcUI7d0JBQ3JCLGNBQWM7d0JBQ2QsWUFBWTtxQkFDYjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IElnb0RpcmVjdGlvbnNNb2R1bGUgfSBmcm9tICcuL2RpcmVjdGlvbnMvZGlyZWN0aW9ucy5tb2R1bGUnO1xuaW1wb3J0IHsgSWdvRG93bmxvYWRNb2R1bGUgfSBmcm9tICcuL2Rvd25sb2FkL2Rvd25sb2FkLm1vZHVsZSc7XG5pbXBvcnQgeyBJZ29GaWx0ZXJNb2R1bGUgfSBmcm9tICcuL2ZpbHRlci9maWx0ZXIubW9kdWxlJztcbmltcG9ydCB7IElnb0ltcG9ydEV4cG9ydE1vZHVsZSB9IGZyb20gJy4vaW1wb3J0LWV4cG9ydC9pbXBvcnQtZXhwb3J0Lm1vZHVsZSc7XG5pbXBvcnQgeyBJZ29MYXllck1vZHVsZSB9IGZyb20gJy4vbGF5ZXIvbGF5ZXIubW9kdWxlJztcbmltcG9ydCB7IElnb01ldGFkYXRhTW9kdWxlIH0gZnJvbSAnLi9tZXRhZGF0YS9tZXRhZGF0YS5tb2R1bGUnO1xuaW1wb3J0IHsgSWdvT3ZlcmxheU1vZHVsZSB9IGZyb20gJy4vb3ZlcmxheS9vdmVybGF5Lm1vZHVsZSc7XG5pbXBvcnQgeyBJZ29RdWVyeU1vZHVsZSB9IGZyb20gJy4vcXVlcnkvcXVlcnkubW9kdWxlJztcbmltcG9ydCB7IElnb1NlYXJjaE1vZHVsZSB9IGZyb20gJy4vc2VhcmNoL3NlYXJjaC5tb2R1bGUnO1xuaW1wb3J0IHsgSWdvU3R5bGVNb2R1bGUgfSBmcm9tICcuL3N0eWxlL3N0eWxlLm1vZHVsZSc7XG5pbXBvcnQgeyBJZ29Ub2FzdE1vZHVsZSB9IGZyb20gJy4vdG9hc3QvdG9hc3QubW9kdWxlJztcbmltcG9ydCB7IElnb1drdE1vZHVsZSB9IGZyb20gJy4vd2t0L3drdC5tb2R1bGUnO1xuaW1wb3J0IHsgSWdvR2VvV29ya3NwYWNlTW9kdWxlIH0gZnJvbSAnLi93b3Jrc3BhY2Uvd29ya3NwYWNlLm1vZHVsZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtdLFxuICBkZWNsYXJhdGlvbnM6IFtdLFxuICBleHBvcnRzOiBbXG4gICAgSWdvRG93bmxvYWRNb2R1bGUsXG4gICAgSWdvRmlsdGVyTW9kdWxlLFxuICAgIElnb0ltcG9ydEV4cG9ydE1vZHVsZSxcbiAgICBJZ29MYXllck1vZHVsZSxcbiAgICBJZ29NZXRhZGF0YU1vZHVsZSxcbiAgICBJZ29PdmVybGF5TW9kdWxlLFxuICAgIElnb1F1ZXJ5TW9kdWxlLFxuICAgIElnb0RpcmVjdGlvbnNNb2R1bGUsXG4gICAgSWdvU2VhcmNoTW9kdWxlLFxuICAgIElnb1RvYXN0TW9kdWxlLFxuICAgIElnb0dlb1dvcmtzcGFjZU1vZHVsZSxcbiAgICBJZ29TdHlsZU1vZHVsZSxcbiAgICBJZ29Xa3RNb2R1bGVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBJZ29HZW9Nb2R1bGUge31cbiJdfQ==
|
|
@@ -523,11 +523,11 @@ export class GeometryFormFieldInputComponent {
|
|
|
523
523
|
return guideStyle;
|
|
524
524
|
}
|
|
525
525
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: GeometryFormFieldInputComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
526
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.4", type: GeometryFormFieldInputComponent, isStandalone: true, selector: "igo-geometry-form-field-input", inputs: { map: "map", geometryType: "geometryType", drawGuide: "drawGuide", measure: "measure", drawControlIsActive: "drawControlIsActive", freehandDrawIsActive: "freehandDrawIsActive", predefinedRadius: "predefinedRadius", controlOptions: "controlOptions", drawStyle: "drawStyle", overlayStyle: "overlayStyle", value: "value", radius: "radius" }, ngImport: i0, template: "<ng-template></ng-template>\
|
|
526
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.4", type: GeometryFormFieldInputComponent, isStandalone: true, selector: "igo-geometry-form-field-input", inputs: { map: "map", geometryType: "geometryType", drawGuide: "drawGuide", measure: "measure", drawControlIsActive: "drawControlIsActive", freehandDrawIsActive: "freehandDrawIsActive", predefinedRadius: "predefinedRadius", controlOptions: "controlOptions", drawStyle: "drawStyle", overlayStyle: "overlayStyle", value: "value", radius: "radius" }, ngImport: i0, template: "<ng-template></ng-template>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
527
527
|
}
|
|
528
528
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: GeometryFormFieldInputComponent, decorators: [{
|
|
529
529
|
type: Component,
|
|
530
|
-
args: [{ selector: 'igo-geometry-form-field-input', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<ng-template></ng-template>\
|
|
530
|
+
args: [{ selector: 'igo-geometry-form-field-input', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<ng-template></ng-template>\n" }]
|
|
531
531
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.NgControl, decorators: [{
|
|
532
532
|
type: Optional
|
|
533
533
|
}, {
|
|
@@ -557,4 +557,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImpor
|
|
|
557
557
|
}], radius: [{
|
|
558
558
|
type: Input
|
|
559
559
|
}] } });
|
|
560
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvbWV0cnktZm9ybS1maWVsZC1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9nZW9tZXRyeS9nZW9tZXRyeS1mb3JtLWZpZWxkL2dlb21ldHJ5LWZvcm0tZmllbGQtaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvZ2VvbWV0cnkvZ2VvbWV0cnktZm9ybS1maWVsZC9nZW9tZXRyeS1mb3JtLWZpZWxkLWlucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxLQUFLLEVBR0wsUUFBUSxFQUNSLElBQUksRUFDTCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWpFLE9BQU8sU0FBUyxNQUFNLFlBQVksQ0FBQztBQUNuQyxPQUFPLFNBQVMsTUFBTSxZQUFZLENBQUM7QUFDbkMsT0FBTyxTQUFTLE1BQU0sbUJBQW1CLENBQUM7QUFLMUMsT0FBTyxLQUFLLE1BQU0sZUFBZSxDQUFDO0FBR2xDLE9BQU8sYUFBYSxNQUFNLGlCQUFpQixDQUFDO0FBQzVDLE9BQU8sS0FBSyxNQUFNLE1BQU0sU0FBUyxDQUFDO0FBQ2xDLE9BQU8sY0FBYyxNQUFNLGtCQUFrQixDQUFDO0FBTTlDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QyxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLGFBQWEsRUFDYixpQkFBaUIsRUFDakIseUJBQXlCLEVBQzFCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxXQUFXLEVBQ1gsYUFBYSxFQUVkLE1BQU0sb0JBQW9CLENBQUM7QUFFNUIsT0FBTyxFQUFFLDBCQUEwQixF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LFNBQVMsR0FBRyxPQUFPLENBQUM7UUFDdEIsQ0FBQztRQUVELElBQUksT0FBUSxTQUFpQixDQUFDLFFBQVEsS0FBSyxVQUFVLEVBQUUsQ0FBQztZQUN0RCxTQUFTLEdBQUksU0FBaUIsQ0FBQyxRQUFRLEVBQW1CLENBQUM7UUFDN0QsQ0FBQztRQUVELElBQUksVUFBcUIsQ0FBQztRQUMxQixJQUFJLE9BQVEsU0FBaUIsQ0FBQyxTQUFTLEtBQUssVUFBVSxFQUFFLENBQUM7WUFDdkQsVUFBVSxHQUFHLFNBQXNCLENBQUM7UUFDdEMsQ0FBQztRQUVELE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7dUdBOWtCVSwrQkFBK0I7MkZBQS9CLCtCQUErQixxYkMvRDVDLGlDQUNBOzsyRkQ4RGEsK0JBQStCO2tCQU4zQyxTQUFTOytCQUNFLCtCQUErQixtQkFFeEIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJOzswQkFrT2IsUUFBUTs7MEJBQUksSUFBSTt5Q0F6TVYsR0FBRztzQkFBWCxLQUFLO2dCQU1GLFlBQVk7c0JBRGYsS0FBSztnQkFvQkcsU0FBUztzQkFBakIsS0FBSztnQkFLRyxPQUFPO3NCQUFmLEtBQUs7Z0JBTUYsbUJBQW1CO3NCQUR0QixLQUFLO2dCQXNCRixvQkFBb0I7c0JBRHZCLEtBQUs7Z0JBNEJGLGdCQUFnQjtzQkFEbkIsS0FBSztnQkFhRyxjQUFjO3NCQUF0QixLQUFLO2dCQU1GLFNBQVM7c0JBRFosS0FBSztnQkFtQ0YsWUFBWTtzQkFEZixLQUFLO2dCQWNGLEtBQUs7c0JBRFIsS0FBSztnQkE4QkYsTUFBTTtzQkFEVCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgSW5wdXQsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBPcHRpb25hbCxcclxuICBTZWxmXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5pbXBvcnQgT2xGZWF0dXJlIGZyb20gJ29sL0ZlYXR1cmUnO1xyXG5pbXBvcnQgT2xPdmVybGF5IGZyb20gJ29sL092ZXJsYXknO1xyXG5pbXBvcnQgT2xHZW9KU09OIGZyb20gJ29sL2Zvcm1hdC9HZW9KU09OJztcclxuaW1wb3J0IE9sQ2lyY2xlIGZyb20gJ29sL2dlb20vQ2lyY2xlJztcclxuaW1wb3J0IE9sR2VvbWV0cnkgZnJvbSAnb2wvZ2VvbS9HZW9tZXRyeSc7XHJcbmltcG9ydCB0eXBlIHsgVHlwZSB9IGZyb20gJ29sL2dlb20vR2VvbWV0cnknO1xyXG5pbXBvcnQgT2xMaW5lU3RyaW5nIGZyb20gJ29sL2dlb20vTGluZVN0cmluZyc7XHJcbmltcG9ydCBQb2ludCBmcm9tICdvbC9nZW9tL1BvaW50JztcclxuaW1wb3J0IE9sUG9pbnQgZnJvbSAnb2wvZ2VvbS9Qb2ludCc7XHJcbmltcG9ydCBPbFBvbHlnb24gZnJvbSAnb2wvZ2VvbS9Qb2x5Z29uJztcclxuaW1wb3J0IE9sVmVjdG9yTGF5ZXIgZnJvbSAnb2wvbGF5ZXIvVmVjdG9yJztcclxuaW1wb3J0ICogYXMgb2xwcm9qIGZyb20gJ29sL3Byb2onO1xyXG5pbXBvcnQgT2xWZWN0b3JTb3VyY2UgZnJvbSAnb2wvc291cmNlL1ZlY3Rvcic7XHJcbmltcG9ydCAqIGFzIE9sU3R5bGUgZnJvbSAnb2wvc3R5bGUnO1xyXG5pbXBvcnQgeyBTdHlsZUxpa2UgYXMgT2xTdHlsZUxpa2UgfSBmcm9tICdvbC9zdHlsZS9TdHlsZSc7XHJcblxyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IElnb01hcCB9IGZyb20gJy4uLy4uL21hcC9zaGFyZWQvbWFwJztcclxuaW1wb3J0IHtcclxuICBNZWFzdXJlTGVuZ3RoVW5pdCxcclxuICBmb3JtYXRNZWFzdXJlLFxyXG4gIG1lYXN1cmVPbEdlb21ldHJ5LFxyXG4gIHVwZGF0ZU9sR2VvbWV0cnlNaWRwb2ludHNcclxufSBmcm9tICcuLi8uLi9tZWFzdXJlJztcclxuaW1wb3J0IHtcclxuICBEcmF3Q29udHJvbCxcclxuICBNb2RpZnlDb250cm9sLFxyXG4gIE1vZGlmeUNvbnRyb2xPcHRpb25zXHJcbn0gZnJvbSAnLi4vc2hhcmVkL2NvbnRyb2xzJztcclxuaW1wb3J0IHsgR2VvSlNPTkdlb21ldHJ5IH0gZnJvbSAnLi4vc2hhcmVkL2dlb21ldHJ5LmludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBjcmVhdGVEcmF3SW50ZXJhY3Rpb25TdHlsZSB9IGZyb20gJy4uL3NoYXJlZC9nZW9tZXRyeS51dGlscyc7XHJcbmltcG9ydCB7IERyYXdDb250cm9sT3B0aW9ucyB9IGZyb20gJy4vLi4vc2hhcmVkL2NvbnRyb2xzL2RyYXcnO1xyXG5cclxuaW50ZXJmYWNlIEhhc1JhZGl1cyB7XHJcbiAgZ2V0UmFkaXVzOiAoKSA9PiBudW1iZXI7XHJcbiAgc2V0UmFkaXVzOiAocmFkaXVzOiBudW1iZXIpID0+IHZvaWQ7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBUaGlzIGlucHV0IGFsbG93cyBhIHVzZXIgdG8gZHJhdyBhIG5ldyBnZW9tZXRyeSBvciB0byBlZGl0XHJcbiAqIGFuIGV4aXN0aW5nIG9uZSBvbiBhIG1hcC4gQSB0ZXh0IGlucHV0IGlzIGFsc28gZGlzcGxheWVkIGluIHRoZVxyXG4gKiBmb3JtIHdpdGggc29tZSBpbnN0cnVjdGlvbnMuXHJcbiAqIFRoaXMgaXMgc3RpbGwgV0lQLlxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpZ28tZ2VvbWV0cnktZm9ybS1maWVsZC1pbnB1dCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2dlb21ldHJ5LWZvcm0tZmllbGQtaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHN0YW5kYWxvbmU6IHRydWVcclxufSlcclxuZXhwb3J0IGNsYXNzIEdlb21ldHJ5Rm9ybUZpZWxkSW5wdXRDb21wb25lbnRcclxuICBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBDb250cm9sVmFsdWVBY2Nlc3NvclxyXG57XHJcbiAgcHJpdmF0ZSBvbE92ZXJsYXlMYXllcjogT2xWZWN0b3JMYXllcjxPbFZlY3RvclNvdXJjZTxPbEdlb21ldHJ5Pj47XHJcbiAgcHJpdmF0ZSBvbEdlb0pTT04gPSBuZXcgT2xHZW9KU09OKCk7XHJcbiAgcHJpdmF0ZSByZWFkeSA9IGZhbHNlO1xyXG5cclxuICBwcml2YXRlIGRyYXdDb250cm9sOiBEcmF3Q29udHJvbDtcclxuICBwcml2YXRlIG1vZGlmeUNvbnRyb2w6IE1vZGlmeUNvbnRyb2w7XHJcbiAgcHJpdmF0ZSBkZWZhdWx0RHJhd1N0eWxlUmFkaXVzOiBudW1iZXI7XHJcbiAgcHJpdmF0ZSBvbEdlb21ldHJ5RW5kcyQkOiBTdWJzY3JpcHRpb247XHJcbiAgcHJpdmF0ZSBvbEdlb21ldHJ5Q2hhbmdlcyQkOiBTdWJzY3JpcHRpb247XHJcbiAgcHJpdmF0ZSBvbFRvb2x0aXAgPSB0aGlzLmNyZWF0ZU1lYXN1cmVUb29sdGlwKCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIEFjdGl2ZSBjb250cm9sXHJcbiAgICogQGludGVybmFsXHJcbiAgICovXHJcbiAgcHVibGljIGFjdGl2ZUNvbnRyb2w6IERyYXdDb250cm9sIHwgTW9kaWZ5Q29udHJvbDtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIG1hcCB0byBkcmF3IHRoZSBnZW9tZXRyeSBvblxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIG1hcDogSWdvTWFwO1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgZ2VvbWV0cnkgdHlwZVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IGdlb21ldHJ5VHlwZSh2YWx1ZTogVHlwZSkge1xyXG4gICAgdGhpcy5fZ2VvbWV0cnlUeXBlID0gdmFsdWU7XHJcbiAgICBpZiAodGhpcy5yZWFkeSA9PT0gZmFsc2UpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuZGVhY3RpdmF0ZUNvbnRyb2woKTtcclxuICAgIHRoaXMuY3JlYXRlRHJhd0NvbnRyb2woKTtcclxuICAgIHRoaXMuZHJhd0NvbnRyb2wuZnJlZWhhbmQkLm5leHQodGhpcy5mcmVlaGFuZERyYXdJc0FjdGl2ZSk7XHJcbiAgICB0aGlzLnRvZ2dsZUNvbnRyb2woKTtcclxuICB9XHJcbiAgZ2V0IGdlb21ldHJ5VHlwZSgpOiBUeXBlIHtcclxuICAgIHJldHVybiB0aGlzLl9nZW9tZXRyeVR5cGU7XHJcbiAgfVxyXG4gIHByaXZhdGUgX2dlb21ldHJ5VHlwZTogVHlwZTtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIGRyYXdHdWlkZSBhcm91bmQgdGhlIG1vdXNlIHBvaW50ZXIgdG8gaGVscCBkcmF3aW5nXHJcbiAgICovXHJcbiAgQElucHV0KCkgZHJhd0d1aWRlOiBudW1iZXIgPSBudWxsO1xyXG5cclxuICAvKipcclxuICAgKiBXaGV0aGVyIGEgbWVhc3VyZSB0b29sdGlwIHNob3VsZCBiZSBkaXNwbGF5ZWRcclxuICAgKi9cclxuICBASW5wdXQoKSBtZWFzdXJlOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZXRoZXIgZHJhdyBjb250cm9sIHNob3VsZCBiZSBhY3RpdmUgb3Igbm90XHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICBnZXQgZHJhd0NvbnRyb2xJc0FjdGl2ZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9kcmF3Q29udHJvbElzQWN0aXZlO1xyXG4gIH1cclxuICBzZXQgZHJhd0NvbnRyb2xJc0FjdGl2ZSh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5fZHJhd0NvbnRyb2xJc0FjdGl2ZSA9IHZhbHVlO1xyXG4gICAgaWYgKHRoaXMucmVhZHkgPT09IGZhbHNlKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMuZGVhY3RpdmF0ZUNvbnRyb2woKTtcclxuICAgIGlmICghdGhpcy5fZHJhd0NvbnRyb2xJc0FjdGl2ZSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnRvZ2dsZUNvbnRyb2woKTtcclxuICAgIH1cclxuICB9XHJcbiAgcHJpdmF0ZSBfZHJhd0NvbnRyb2xJc0FjdGl2ZTogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZXRoZXIgZnJlZWhhbmQgZHJhdyBjb250cm9sIHNob3VsZCBiZSBhY3RpdmUgb3Igbm90XHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICBnZXQgZnJlZWhhbmREcmF3SXNBY3RpdmUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fZnJlZWhhbmREcmF3SXNBY3RpdmU7XHJcbiAgfVxyXG4gIHNldCBmcmVlaGFuZERyYXdJc0FjdGl2ZSh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5fZnJlZWhhbmREcmF3SXNBY3RpdmUgPSB2YWx1ZTtcclxuICAgIHRoaXMuZGVhY3RpdmF0ZUNvbnRyb2woKTtcclxuXHJcbiAgICB0aGlzLmNyZWF0ZURyYXdDb250cm9sKCk7XHJcbiAgICB0aGlzLmNyZWF0ZU1vZGlmeUNvbnRyb2woKTtcclxuXHJcbiAgICB0aGlzLmRyYXdDb250cm9sLmZyZWVoYW5kJC5uZXh0KHRoaXMuZnJlZWhhbmREcmF3SXNBY3RpdmUpO1xyXG5cclxuICAgIGlmICh0aGlzLnJlYWR5ID09PSBmYWxzZSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCF0aGlzLmRyYXdDb250cm9sSXNBY3RpdmUpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy50b2dnbGVDb250cm9sKCk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX2ZyZWVoYW5kRHJhd0lzQWN0aXZlOiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBXaGV0aGVyIGZyZWVoYW5kIGRyYXcgY29udHJvbCBzaG91bGQgYmUgYWN0aXZlIG9yIG5vdFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgZ2V0IHByZWRlZmluZWRSYWRpdXMoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fcHJlZGVmaW5lZFJhZGl1cztcclxuICB9XHJcbiAgc2V0IHByZWRlZmluZWRSYWRpdXModmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuX3ByZWRlZmluZWRSYWRpdXMgPSB2YWx1ZTtcclxuICAgIHRoaXMuZHJhd0NvbnRyb2wuaXNwcmVkZWZpbmVkUmFkaXVzJC5uZXh0KHZhbHVlKTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfcHJlZGVmaW5lZFJhZGl1czogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogQ29udHJvbCBvcHRpb25zXHJcbiAgICovXHJcbiAgQElucHV0KCkgY29udHJvbE9wdGlvbnM6IHsgW2tleTogc3RyaW5nXTogYW55IH0gPSB7fTtcclxuXHJcbiAgLyoqXHJcbiAgICogU3R5bGUgZm9yIHRoZSBkcmF3IGNvbnRyb2wgKGFwcGxpZXMgd2hpbGUgdGhlIGdlb21ldHJ5IGlzIGJlaW5nIGRyYXduKVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IGRyYXdTdHlsZSh2YWx1ZTogT2xTdHlsZUxpa2UgfCBPbFN0eWxlLlJlZ3VsYXJTaGFwZSkge1xyXG4gICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgdmFsdWUgPSBjcmVhdGVEcmF3SW50ZXJhY3Rpb25TdHlsZSgpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5fZHJhd1N0eWxlID0gdmFsdWU7XHJcblxyXG4gICAgY29uc3Qgb2xHdWlkZVN0eWxlID0gdGhpcy5nZXRHdWlkZVN0eWxlRnJvbURyYXdTdHlsZSh2YWx1ZSk7XHJcbiAgICBpZiAob2xHdWlkZVN0eWxlICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy5kZWZhdWx0RHJhd1N0eWxlUmFkaXVzID0gb2xHdWlkZVN0eWxlLmdldFJhZGl1cygpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5kZWZhdWx0RHJhd1N0eWxlUmFkaXVzID0gbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5yZWFkeSA9PT0gZmFsc2UpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuZGVhY3RpdmF0ZUNvbnRyb2woKTtcclxuICAgIHRoaXMuY3JlYXRlRHJhd0NvbnRyb2woKTtcclxuICAgIHRoaXMuY3JlYXRlTW9kaWZ5Q29udHJvbCgpO1xyXG5cclxuICAgIHRoaXMuZHJhd0NvbnRyb2wuZnJlZWhhbmQkLm5leHQodGhpcy5mcmVlaGFuZERyYXdJc0FjdGl2ZSk7XHJcbiAgICB0aGlzLnRvZ2dsZUNvbnRyb2woKTtcclxuICB9XHJcbiAgZ2V0IGRyYXdTdHlsZSgpOiBPbFN0eWxlTGlrZSB8IE9sU3R5bGUuUmVndWxhclNoYXBlIHtcclxuICAgIHJldHVybiB0aGlzLl9kcmF3U3R5bGU7XHJcbiAgfVxyXG4gIHByaXZhdGUgX2RyYXdTdHlsZTogT2xTdHlsZUxpa2UgfCBPbFN0eWxlLlJlZ3VsYXJTaGFwZTtcclxuXHJcbiAgLyoqXHJcbiAgICogU3R5bGUgZm9yIHRoZSBvdmVybGF5IGxheWVyIChhcHBsaWVzIG9uY2UgdGhlIGdlb21ldHJ5IGlzIGFkZGVkIHRvIHRoZSBtYXApXHJcbiAgICogSWYgbm90IHNwZWNpZmllZCwgZHJhd1N0eWxlIGFwcGxpZXNcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHNldCBvdmVybGF5U3R5bGUodmFsdWU6IE9sU3R5bGVMaWtlIHwgT2xTdHlsZS5SZWd1bGFyU2hhcGUpIHtcclxuICAgIHRoaXMuX292ZXJsYXlTdHlsZSA9IHZhbHVlO1xyXG4gIH1cclxuICBnZXQgb3ZlcmxheVN0eWxlKCk6IE9sU3R5bGVMaWtlIHwgT2xTdHlsZS5SZWd1bGFyU2hhcGUge1xyXG4gICAgcmV0dXJuIHRoaXMuX292ZXJsYXlTdHlsZTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfb3ZlcmxheVN0eWxlOiBPbFN0eWxlTGlrZSB8IE9sU3R5bGUuUmVndWxhclNoYXBlO1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgZ2VvbWV0cnkgdmFsdWUgKEdlb0pTT04pXHJcbiAgICogSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHNldCB2YWx1ZSh2YWx1ZTogR2VvSlNPTkdlb21ldHJ5KSB7XHJcbiAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xyXG4gICAgaWYgKHRoaXMucmVhZHkgPT09IGZhbHNlKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodmFsdWUpIHtcclxuICAgICAgdGhpcy5hZGRHZW9KU09OVG9PdmVybGF5KHZhbHVlKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMub2xPdmVybGF5U291cmNlLmNsZWFyKHRydWUpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XHJcbiAgICB0aGlzLnRvZ2dsZUNvbnRyb2woKTtcclxuICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuICBnZXQgdmFsdWUoKTogR2VvSlNPTkdlb21ldHJ5IHtcclxuICAgIHJldHVybiB0aGlzLl92YWx1ZTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfdmFsdWU6IEdlb0pTT05HZW9tZXRyeTtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIHZlY3RvciBzb3VyY2UgdG8gYWRkIHRoZSBnZW9tZXRyeSB0b1xyXG4gICAqIEBpbnRlcm5hbFxyXG4gICAqL1xyXG4gIGdldCBvbE92ZXJsYXlTb3VyY2UoKTogT2xWZWN0b3JTb3VyY2U8T2xHZW9tZXRyeT4ge1xyXG4gICAgcmV0dXJuIHRoaXMub2xPdmVybGF5TGF5ZXIuZ2V0U291cmNlKCk7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHNldCByYWRpdXModmFsdWU6IGFueSkge1xyXG4gICAgaWYgKHRoaXMucmVhZHkgPT09IGZhbHNlKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLm1vZGlmeUNvbnRyb2wuZ2V0U291cmNlKCkpIHtcclxuICAgICAgdGhpcy5tb2RpZnlDb250cm9sLmdldFNvdXJjZSgpLnJlZnJlc2goKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmZyZWVoYW5kRHJhd0lzQWN0aXZlKSB7XHJcbiAgICAgIGxldCBvbE1vZGlmeTtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgb2xNb2RpZnkgPSB0aGlzLm1vZGlmeUNvbnRyb2wub2xNb2RpZnlJbnRlcmFjdGlvbjtcclxuICAgICAgICBpZiAob2xNb2RpZnkpIHtcclxuICAgICAgICAgIGlmIChvbE1vZGlmeS5mZWF0dXJlc18pIHtcclxuICAgICAgICAgICAgb2xNb2RpZnkuZmVhdHVyZXNfLmNsZWFyKCk7XHJcbiAgICAgICAgICAgIHRoaXMuYWRkR2VvSlNPTlRvT3ZlcmxheSh0aGlzLnZhbHVlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH0sIDApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIEBPcHRpb25hbCgpIEBTZWxmKCkgcHVibGljIG5nQ29udHJvbDogTmdDb250cm9sXHJcbiAgKSB7XHJcbiAgICBpZiAodGhpcy5uZ0NvbnRyb2wgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAvLyBTZXR0aW5nIHRoZSB2YWx1ZSBhY2Nlc3NvciBkaXJlY3RseSAoaW5zdGVhZCBvZiB1c2luZ1xyXG4gICAgICAvLyB0aGUgcHJvdmlkZXJzKSB0byBhdm9pZCBydW5uaW5nIGludG8gYSBjaXJjdWxhciBpbXBvcnQuXHJcbiAgICAgIHRoaXMubmdDb250cm9sLnZhbHVlQWNjZXNzb3IgPSB0aGlzO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ3JlYXRlIGFuIG92ZXJsYXkgbGF5ZXIsIGFkZCB0aGUgaW5pdGlhbCBnZW9tZXRyeSB0byBpdCAoaWYgYW55KVxyXG4gICAqIGFuZCB0b2dnbGUgdGhlIHJpZ2h0IGludGVyYWN0aW9uLlxyXG4gICAqIEBpbnRlcm5hbFxyXG4gICAqL1xyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgaWYgKHRoaXMuZHJhd1N0eWxlID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy5kcmF3U3R5bGUgPSBjcmVhdGVEcmF3SW50ZXJhY3Rpb25TdHlsZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLm92ZXJsYXlTdHlsZSA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMub3ZlcmxheVN0eWxlID0gdGhpcy5kcmF3U3R5bGU7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5hZGRPbE92ZXJsYXlMYXllcigpO1xyXG4gICAgdGhpcy5jcmVhdGVEcmF3Q29udHJvbCgpO1xyXG4gICAgdGhpcy5jcmVhdGVNb2RpZnlDb250cm9sKCk7XHJcblxyXG4gICAgaWYgKHRoaXMudmFsdWUpIHtcclxuICAgICAgdGhpcy5hZGRHZW9KU09OVG9PdmVybGF5KHRoaXMudmFsdWUpO1xyXG4gICAgfVxyXG4gICAgdGhpcy50b2dnbGVDb250cm9sKCk7XHJcblxyXG4gICAgdGhpcy5yZWFkeSA9IHRydWU7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDbGVhciB0aGUgb3ZlcmxheSBsYXllciBhbmQgYW55IGludGVyYWN0aW9uIGFkZGVkIGJ5IHRoaXMgY29tcG9uZW50LlxyXG4gICAqIEBpbnRlcm5hbFxyXG4gICAqL1xyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgLy8gVGhpcyBpcyBtYW5kYXRvcnkgd2hlbiB0aGUgZm9ybSBjb250cm9sIGlzIHJldXNlZCBhZnRlclxyXG4gICAgLy8gdGhpcyBjb21wb25lbnQgaGFzIGJlZW4gZGVzdHJveWVkLiBJdCBzZWVtcyBsaWtlIHRoZSBjb250cm9sXHJcbiAgICAvLyBrZWVwcyBhIHJlZmVyZW5jZSB0byB0aGlzIGNvbXBvbmVudCBldmVuIGFmdGVyIGl0J3MgZGVzdHJveWVkXHJcbiAgICAvLyBhbmQgaXQgYXR0ZW1wdHMgdG8gc2V0IGl0J3MgdmFsdWVcclxuICAgIHRoaXMucmVhZHkgPSBmYWxzZTtcclxuXHJcbiAgICB0aGlzLmRlYWN0aXZhdGVDb250cm9sKCk7XHJcbiAgICB0aGlzLm9sT3ZlcmxheVNvdXJjZS5jbGVhcigpO1xyXG4gICAgdGhpcy5tYXAub2wucmVtb3ZlTGF5ZXIodGhpcy5vbE92ZXJsYXlMYXllcik7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxyXG4gICAqL1xyXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IEZ1bmN0aW9uKSB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgfVxyXG4gIHByaXZhdGUgb25DaGFuZ2U6IGFueSA9ICgpID0+IHt9O1xyXG5cclxuICAvKipcclxuICAgKiBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxyXG4gICAqL1xyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBGdW5jdGlvbikge1xyXG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcclxuICB9XHJcbiAgcHJpdmF0ZSBvblRvdWNoZWQ6IGFueSA9ICgpID0+IHt9O1xyXG5cclxuICAvKipcclxuICAgKiBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxyXG4gICAqL1xyXG4gIHdyaXRlVmFsdWUodmFsdWU6IEdlb0pTT05HZW9tZXRyeSkge1xyXG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQWRkIGFuIG92ZXJsYXkgbGF5ZXIgdG8gdGhlIG1hcFxyXG4gICAqL1xyXG4gIHByaXZhdGUgYWRkT2xPdmVybGF5TGF5ZXIoKSB7XHJcbiAgICB0aGlzLm9sT3ZlcmxheUxheWVyID0gbmV3IE9sVmVjdG9yTGF5ZXIoe1xyXG4gICAgICBzb3VyY2U6IG5ldyBPbFZlY3RvclNvdXJjZSgpLFxyXG4gICAgICB6SW5kZXg6IDUwMCxcclxuICAgICAgc3R5bGU6IG51bGxcclxuICAgIH0pO1xyXG4gICAgdGhpcy5tYXAub2wuYWRkTGF5ZXIodGhpcy5vbE92ZXJsYXlMYXllcik7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDcmVhdGUgYSBkcmF3IGNvbnRyb2wgYW5kIHN1YnNjcmliZSB0byBpdCdzIGdlb21ldHJ5XHJcbiAgICovXHJcbiAgcHJpdmF0ZSBjcmVhdGVEcmF3Q29udHJvbCgpIHtcclxuICAgIGNvbnN0IGNvbnRyb2xPcHRpb25zID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5jb250cm9sT3B0aW9ucywge1xyXG4gICAgICBnZW9tZXRyeVR5cGU6IHRoaXMuZ2VvbWV0cnlUeXBlIHx8ICdQb2ludCcsXHJcbiAgICAgIGRyYXdpbmdMYXllcjogdGhpcy5vbE92ZXJsYXlMYXllcixcclxuICAgICAgaW50ZXJhY3Rpb25TdHlsZTpcclxuICAgICAgICB0eXBlb2YgdGhpcy5kcmF3U3R5bGUgPT09ICdmdW5jdGlvbidcclxuICAgICAgICAgID8gdGhpcy5kcmF3U3R5bGVcclxuICAgICAgICAgIDogKG9sRmVhdHVyZTogT2xGZWF0dXJlPE9sR2VvbWV0cnk+LCByZXNvbHV0aW9uOiBudW1iZXIpID0+IHtcclxuICAgICAgICAgICAgICBjb25zdCBzdHlsZSA9IHRoaXMuZHJhd1N0eWxlO1xyXG4gICAgICAgICAgICAgIHRoaXMudXBkYXRlRHJhd1N0eWxlV2l0aERyYXdHdWlkZShzdHlsZSwgcmVzb2x1dGlvbik7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIHN0eWxlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICB9KSBhcyBEcmF3Q29udHJvbE9wdGlvbnM7XHJcbiAgICB0aGlzLmRyYXdDb250cm9sID0gbmV3IERyYXdDb250cm9sKGNvbnRyb2xPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENyZWF0ZSBhIG1vZGlmeSBjb250cm9sIGFuZCBzdWJzY3JpYmUgdG8gaXQncyBnZW9tZXRyeVxyXG4gICAqL1xyXG4gIHByaXZhdGUgY3JlYXRlTW9kaWZ5Q29udHJvbCgpIHtcclxuICAgIGNvbnN0IGNvbnRyb2xPcHRpb25zID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5jb250cm9sT3B0aW9ucywge1xyXG4gICAgICBsYXllcjogdGhpcy5vbE92ZXJsYXlMYXllcixcclxuICAgICAgZHJhd1N0eWxlOlxyXG4gICAgICAgIHR5cGVvZiB0aGlzLmRyYXdTdHlsZSA9PT0gJ2Z1bmN0aW9uJ1xyXG4gICAgICAgICAgPyB0aGlzLmRyYXdTdHlsZVxyXG4gICAgICAgICAgOiAob2xGZWF0dXJlOiBPbEZlYXR1cmU8T2xHZW9tZXRyeT4sIHJlc29sdXRpb246IG51bWJlcikgPT4ge1xyXG4gICAgICAgICAgICAgIGNvbnN0IHN0eWxlID0gdGhpcy5kcmF3U3R5bGU7XHJcbiAgICAgICAgICAgICAgdGhpcy51cGRhdGVEcmF3U3R5bGVXaXRoRHJhd0d1aWRlKHN0eWxlLCByZXNvbHV0aW9uKTtcclxuICAgICAgICAgICAgICByZXR1cm4gc3R5bGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgIH0pIGFzIE1vZGlmeUNvbnRyb2xPcHRpb25zO1xyXG4gICAgdGhpcy5tb2RpZnlDb250cm9sID0gbmV3IE1vZGlmeUNvbnRyb2woY29udHJvbE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVG9nZ2xlIHRoZSBwcm9wZXIgY29udHJvbCAoZHJhdyBvciBtb2RpZnkpXHJcbiAgICovXHJcbiAgcHJpdmF0ZSB0b2dnbGVDb250cm9sKCkge1xyXG4gICAgbGV0IGFjdGl2YXRlO1xyXG4gICAgaWYgKCF0aGlzLnZhbHVlICYmIHRoaXMuZ2VvbWV0cnlUeXBlKSB7XHJcbiAgICAgIGFjdGl2YXRlID0gdGhpcy5kcmF3Q29udHJvbDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGFjdGl2YXRlID0gdGhpcy5tb2RpZnlDb250cm9sO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIElmIHRoZSBjb250cm9sIHRoYXQgc2hvdWxkIGJlIGFjdGl2YXRlZFxyXG4gICAgLy8gaXMgbm90IHRoZSBzYW1lIGFzIHRoZSBjdXJyZW50IGFjdGl2ZSBjb250cm9sLFxyXG4gICAgLy8gZGVhY3RpdmF0ZSB0aGUgY3VycmVudCBjb250cm9sIGFuZCBhY3RpdmF0ZSB0aGUgbmV3IG9uZVxyXG4gICAgLy8gT3RoZXJ3aXNlLCBkbyBub3RoaW5nIGFuZCBrZWVwIHRoZSBjdXJyZW50IGNvbnRyb2wgYWN0aXZlXHJcbiAgICBpZiAoYWN0aXZhdGUgIT09IHRoaXMuYWN0aXZlQ29udHJvbCkge1xyXG4gICAgICB0aGlzLmRlYWN0aXZhdGVDb250cm9sKCk7XHJcbiAgICAgIHRoaXMuYWN0aXZhdGVDb250cm9sKGFjdGl2YXRlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEFjdGl2YXRlIGEgZ2l2ZW4gY29udHJvbFxyXG4gICAqIEBwYXJhbSBjb250cm9sIENvbnRyb2xcclxuICAgKi9cclxuICBwcml2YXRlIGFjdGl2YXRlQ29udHJvbChjb250cm9sOiBEcmF3Q29udHJvbCB8IE1vZGlmeUNvbnRyb2wpIHtcclxuICAgIHRoaXMuYWN0aXZlQ29udHJvbCA9IGNvbnRyb2w7XHJcbiAgICB0aGlzLm9sR2VvbWV0cnlFbmRzJCQgPSBjb250cm9sLmVuZCQuc3Vic2NyaWJlKChvbEdlb21ldHJ5OiBPbEdlb21ldHJ5KSA9PlxyXG4gICAgICB0aGlzLm9uT2xHZW9tZXRyeUVuZHMob2xHZW9tZXRyeSlcclxuICAgICk7XHJcbiAgICBpZiAodGhpcy5tZWFzdXJlID09PSB0cnVlICYmIGNvbnRyb2wgPT09IHRoaXMuZHJhd0NvbnRyb2wpIHtcclxuICAgICAgdGhpcy5vbEdlb21ldHJ5Q2hhbmdlcyQkID0gY29udHJvbC5jaGFuZ2VzJC5zdWJzY3JpYmUoXHJcbiAgICAgICAgKG9sR2VvbWV0cnk6IE9sUG9seWdvbiB8IE9sUG9pbnQgfCBPbExpbmVTdHJpbmcgfCBPbENpcmNsZSkgPT5cclxuICAgICAgICAgIHRoaXMub25PbEdlb21ldHJ5Q2hhbmdlcyhvbEdlb21ldHJ5KVxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gICAgY29udHJvbC5zZXRPbE1hcCh0aGlzLm1hcC5vbCwgZmFsc2UpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGVhY3RpdmF0ZSB0aGUgYWN0aXZlIGNvbnRyb2xcclxuICAgKi9cclxuICBwcml2YXRlIGRlYWN0aXZhdGVDb250cm9sKCkge1xyXG4gICAgdGhpcy5yZW1vdmVNZWFzdXJlVG9vbHRpcCgpO1xyXG4gICAgaWYgKHRoaXMuYWN0aXZlQ29udHJvbCAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMuYWN0aXZlQ29udHJvbC5zZXRPbE1hcCh1bmRlZmluZWQpO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMub2xHZW9tZXRyeUVuZHMkJCAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMub2xHZW9tZXRyeUVuZHMkJC51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMub2xHZW9tZXRyeUNoYW5nZXMkJCAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMub2xHZW9tZXRyeUNoYW5nZXMkJC51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5hY3RpdmVDb250cm9sID0gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVXBkYXRlIG1lYXN1cmVzIG9ic2VydmFibGVzIGFuZCBtYXAgdG9vbHRpcHNcclxuICAgKiBAcGFyYW0gb2xHZW9tZXRyeSBPbCBsaW5lc3RyaW5nIG9yIHBvbHlnb25cclxuICAgKi9cclxuICBwcml2YXRlIG9uT2xHZW9tZXRyeUVuZHMob2xHZW9tZXRyeTogT2xHZW9tZXRyeSB8IHVuZGVmaW5lZCkge1xyXG4gICAgdGhpcy5yZW1vdmVNZWFzdXJlVG9vbHRpcCgpO1xyXG4gICAgdGhpcy5zZXRPbEdlb21ldHJ5KG9sR2VvbWV0cnkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVXBkYXRlIG1lYXN1cmVzIG9ic2VydmFibGVzIGFuZCBtYXAgdG9vbHRpcHNcclxuICAgKiBAcGFyYW0gb2xHZW9tZXRyeSBPbCBsaW5lc3RyaW5nIG9yIHBvbHlnb25cclxuICAgKi9cclxuICBwcml2YXRlIG9uT2xHZW9tZXRyeUNoYW5nZXMoXHJcbiAgICBvbEdlb21ldHJ5OiBPbFBvbHlnb24gfCBPbFBvaW50IHwgT2xMaW5lU3RyaW5nIHwgT2xDaXJjbGVcclxuICApIHtcclxuICAgIGlmIChvbEdlb21ldHJ5LmdldFR5cGUoKSAhPT0gJ1BvaW50Jykge1xyXG4gICAgICB0aGlzLnVwZGF0ZU1lYXN1cmVUb29sdGlwKG9sR2VvbWV0cnkpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogV2hlbiBkcmF3aW5nIGVuZHMsIGNvbnZlcnQgdGhlIG91dHB1dCB2YWx1ZSB0byBHZW9KU09OIGFuZCBrZWVwIGl0LlxyXG4gICAqIFJlc3RvcmUgdGhlIGRvdWJsZSBjbGljayBpbnRlcmFjdGlvbi5cclxuICAgKiBAcGFyYW0gb2xHZW9tZXRyeSBPTCBnZW9tZXRyeVxyXG4gICAqL1xyXG4gIHByaXZhdGUgc2V0T2xHZW9tZXRyeShvbEdlb21ldHJ5OiBPbEdlb21ldHJ5IHwgdW5kZWZpbmVkKSB7XHJcbiAgICBsZXQgdmFsdWU7XHJcbiAgICBpZiAob2xHZW9tZXRyeSA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAob2xHZW9tZXRyeS5nZXRUeXBlKCkgPT09ICdDaXJjbGUnKSB7XHJcbiAgICAgIC8vIEJlY2F1c2UgQ2lyY2xlIGRvZXNuJ3QgZXhpc3QgYXMgYSBHZW9KU09OIG9iamVjdFxyXG4gICAgICBvbEdlb21ldHJ5ID0gdGhpcy5jaXJjbGVUb1BvaW50KG9sR2VvbWV0cnkpO1xyXG4gICAgfVxyXG5cclxuICAgIHZhbHVlID0gdGhpcy5vbEdlb0pTT04ud3JpdGVHZW9tZXRyeU9iamVjdChvbEdlb21ldHJ5LCB7XHJcbiAgICAgIGZlYXR1cmVQcm9qZWN0aW9uOiB0aGlzLm1hcC5wcm9qZWN0aW9uLFxyXG4gICAgICBkYXRhUHJvamVjdGlvbjogJ0VQU0c6NDMyNidcclxuICAgIH0pO1xyXG4gICAgaWYgKG9sR2VvbWV0cnkuZ2V0KCdyYWRpdXMnKSkge1xyXG4gICAgICB2YWx1ZS5yYWRpdXMgPSBvbEdlb21ldHJ5LmdldCgncmFkaXVzJyk7XHJcbiAgICAgIG9sR2VvbWV0cnkuc2V0KCdyYWRpdXMnLCB2YWx1ZS5yYWRpdXMpO1xyXG4gICAgfVxyXG4gICAgdGhpcy53cml0ZVZhbHVlKHZhbHVlKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY2lyY2xlVG9Qb2ludChvbEdlb21ldHJ5KSB7XHJcbiAgICBjb25zdCBjZW50ZXIgPSBvbEdlb21ldHJ5LmdldENlbnRlcigpO1xyXG4gICAgY29uc3QgY29vcmRpbmF0ZXMgPSBvbHByb2oudHJhbnNmb3JtKFxyXG4gICAgICBjZW50ZXIsXHJcbiAgICAgIHRoaXMubWFwLnByb2plY3Rpb24sXHJcbiAgICAgICdFUFNHOjQzMjYnXHJcbiAgICApO1xyXG4gICAgY29uc3QgcmFkaXVzID0gTWF0aC5yb3VuZChcclxuICAgICAgb2xHZW9tZXRyeS5nZXRSYWRpdXMoKSAqIE1hdGguY29zKChNYXRoLlBJIC8gMTgwKSAqIGNvb3JkaW5hdGVzWzFdKVxyXG4gICAgKTtcclxuXHJcbiAgICAvLyBDb252ZXJ0IGl0IHRvIGEgcG9pbnQgb2JqZWN0XHJcbiAgICBvbEdlb21ldHJ5ID0gbmV3IFBvaW50KGNlbnRlcik7XHJcbiAgICBvbEdlb21ldHJ5LnNldCgncmFkaXVzJywgcmFkaXVzLCB0cnVlKTtcclxuICAgIHJldHVybiBvbEdlb21ldHJ5O1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQWRkIGEgR2VvSlNPTiBnZW9tZXRyeSB0byB0aGUgb3ZlcmxheVxyXG4gICAqIEBwYXJhbSBnZW9tZXRyeSBHZW9KU09OIGdlb21ldHJ5XHJcbiAgICovXHJcbiAgcHJpdmF0ZSBhZGRHZW9KU09OVG9PdmVybGF5KGdlb21ldHJ5OiBHZW9KU09OR2VvbWV0cnkpIHtcclxuICAgIGNvbnN0IG9sR2VvbWV0cnkgPSB0aGlzLm9sR2VvSlNPTi5yZWFkR2VvbWV0cnkoZ2VvbWV0cnksIHtcclxuICAgICAgZGF0YVByb2plY3Rpb246ICdFUFNHOjQzMjYnLFxyXG4gICAgICBmZWF0dXJlUHJvamVjdGlvbjogdGhpcy5tYXAucHJvamVjdGlvblxyXG4gICAgfSk7XHJcbiAgICBjb25zdCBvbEZlYXR1cmUgPSBuZXcgT2xGZWF0dXJlKHtcclxuICAgICAgZ2VvbWV0cnk6IG9sR2VvbWV0cnlcclxuICAgIH0pO1xyXG4gICAgb2xGZWF0dXJlLnNldFN0eWxlKHRoaXMub3ZlcmxheVN0eWxlIGFzIE9sU3R5bGUuU3R5bGUpO1xyXG4gICAgdGhpcy5vbE92ZXJsYXlTb3VyY2UuY2xlYXIoKTtcclxuICAgIHRoaXMub2xPdmVybGF5U291cmNlLmFkZEZlYXR1cmUob2xGZWF0dXJlKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENyZWF0ZSB0aGUgbWVhc3VyZSB0b29sdGlwXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBjcmVhdGVNZWFzdXJlVG9vbHRpcCgpIHtcclxuICAgIHJldHVybiBuZXcgT2xPdmVybGF5KHtcclxuICAgICAgZWxlbWVudDogZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2JyksXHJcbiAgICAgIG9mZnNldDogWy0zMCwgLTEwXSxcclxuICAgICAgY2xhc3NOYW1lOiBbJ2lnby1tYXAtdG9vbHRpcCcsICdpZ28tbWFwLXRvb2x0aXAtbWVhc3VyZSddLmpvaW4oJyAnKSxcclxuICAgICAgc3RvcEV2ZW50OiBmYWxzZVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBVcGRhdGUgdGhlIG1lYXN1cmUgdG9vbHRpcCBvZiBhbiBPTCBnZW9tZXRyeVxyXG4gICAqIEBwYXJhbSBvbEdlb21ldHJ5IE9MIEdlb21ldHJ5XHJcbiAgICovXHJcbiAgcHJpdmF0ZSB1cGRhdGVNZWFzdXJlVG9vbHRpcChcclxuICAgIG9sR2VvbWV0cnk6IE9sUG9seWdvbiB8IE9sUG9pbnQgfCBPbExpbmVTdHJpbmcgfCBPbENpcmNsZVxyXG4gICkge1xyXG4gICAgY29uc3QgbWVhc3VyZSA9IG1lYXN1cmVPbEdlb21ldHJ5KG9sR2VvbWV0cnksIHRoaXMubWFwLnByb2plY3Rpb24pO1xyXG4gICAgY29uc3QgbGVuZ3RocyA9IG1lYXN1cmUubGVuZ3RocztcclxuICAgIGNvbnN0IGxhc3RJbmRleCA9XHJcbiAgICAgIG9sR2VvbWV0cnkuZ2V0VHlwZSgpID09PSAnUG9seWdvbidcclxuICAgICAgICA/IGxlbmd0aHMubGVuZ3RoIC0gMlxyXG4gICAgICAgIDogbGVuZ3Rocy5sZW5ndGggLSAxO1xyXG4gICAgY29uc3QgbGFzdExlbmd0aCA9IGxlbmd0aHNbbGFzdEluZGV4XTtcclxuXHJcbiAgICBjb25zdCBvbE1pZHBvaW50cyA9IHVwZGF0ZU9sR2VvbWV0cnlNaWRwb2ludHMob2xHZW9tZXRyeSk7XHJcbiAgICBjb25zdCBvbExhc3RNaWRwb2ludCA9IG9sTWlkcG9pbnRzW2xhc3RJbmRleF07XHJcbiAgICBpZiAob2xNaWRwb2ludHMubGVuZ3RoID09PSAwIHx8IG9sTGFzdE1pZHBvaW50ID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy5yZW1vdmVNZWFzdXJlVG9vbHRpcCgpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5vbFRvb2x0aXAuc2V0UG9zaXRpb24ob2xMYXN0TWlkcG9pbnQuZ2V0RmxhdENvb3JkaW5hdGVzKCkpO1xyXG5cclxuICAgIGNvbnN0IGlubmVySHRtbCA9IGZvcm1hdE1lYXN1cmUobGFzdExlbmd0aCwge1xyXG4gICAgICBkZWNpbWFsOiAxLFxyXG4gICAgICB1bml0OiBNZWFzdXJlTGVuZ3RoVW5pdC5NZXRlcnMsXHJcbiAgICAgIHVuaXRBYmJyOiB0cnVlLFxyXG4gICAgICBsb2NhbGU6ICdmcidcclxuICAgIH0pO1xyXG4gICAgdGhpcy5vbFRvb2x0aXAuZ2V0RWxlbWVudCgpLmlubmVySFRNTCA9IGlubmVySHRtbDtcclxuICAgIGlmICh0aGlzLm9sVG9vbHRpcC5nZXRNYXAoKSA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMubWFwLm9sLmFkZE92ZXJsYXkodGhpcy5vbFRvb2x0aXApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmVtb3ZlIHRoZSBtZWFzdXJlIHRvb2x0aXAgZnJvbSB0aGUgbWFwXHJcbiAgICovXHJcbiAgcHJpdmF0ZSByZW1vdmVNZWFzdXJlVG9vbHRpcCgpIHtcclxuICAgIGlmICh0aGlzLm9sVG9vbHRpcC5nZXRNYXAgJiYgdGhpcy5vbFRvb2x0aXAuZ2V0TWFwKCkgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLm1hcC5vbC5yZW1vdmVPdmVybGF5KHRoaXMub2xUb29sdGlwKTtcclxuICAgICAgdGhpcy5vbFRvb2x0aXAuc2V0TWFwKHVuZGVmaW5lZCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBZGp1c3QgdGhlIGRyYXcgc3R5bGUgd2l0aCB0aGUgc3BlY2lmaWVkIGRyYXcgZ3VpZGUgZGlzdGFuY2UsIGlmIHBvc3NpYmxlXHJcbiAgICogQHBhcmFtIG9sU3R5bGUgRHJhdyBzdHlsZSB0byB1cGRhdGVcclxuICAgKiBAcGFyYW0gcmVzb2x1dGlvbiBSZXNvbHV0aW9uICh0byBtYWtlIHRoZSBzY3JlZW4gc2l6ZSBvZiBzeW1ib2wgZml0IHRoZSBkcmF3R3VpZGUgdmFsdWUpXHJcbiAgICovXHJcbiAgcHJpdmF0ZSB1cGRhdGVEcmF3U3R5bGVXaXRoRHJhd0d1aWRlKFxyXG4gICAgb2xTdHlsZTogT2xTdHlsZUxpa2UgfCBPbFN0eWxlLlJlZ3VsYXJTaGFwZSxcclxuICAgIHJlc29sdXRpb246IG51bWJlclxyXG4gICkge1xyXG4gICAgY29uc3Qgb2xHdWlkZVN0eWxlID0gdGhpcy5nZXRHdWlkZVN0eWxlRnJvbURyYXdTdHlsZShvbFN0eWxlKTtcclxuICAgIGlmIChvbEd1aWRlU3R5bGUgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBjb25zdCBkcmF3R3VpZGUgPSB0aGlzLmRyYXdHdWlkZTtcclxuICAgIGxldCByYWRpdXM7XHJcbiAgICBpZiAoIWRyYXdHdWlkZSB8fCBkcmF3R3VpZGUgPCAwKSB7XHJcbiAgICAgIHJhZGl1cyA9IHRoaXMuZGVmYXVsdERyYXdTdHlsZVJhZGl1cztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJhZGl1cyA9IGRyYXdHdWlkZSA+IDAgPyBkcmF3R3VpZGUgLyByZXNvbHV0aW9uIDogZHJhd0d1aWRlO1xyXG4gICAgfVxyXG4gICAgb2xHdWlkZVN0eWxlLnNldFJhZGl1cyhyYWRpdXMpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0dXJucyB3ZXRoZXIgYSBnaXZlbiBPcGVuIExheWVycyBzdHlsZSBoYXMgYSByYWRpdXMgcHJvcGVydHkgdGhhdCBjYW4gYmUgc2V0ICh1c2VkIHRvIHNldCBkcmF3IGd1aWRlKVxyXG4gICAqIEBwYXJhbSBvbFN0eWxlIFRoZSBzdHlsZSBvbiB3aGljaCB0byBwZXJmb3JtIHRoZSBjaGVja1xyXG4gICAqL1xyXG4gIHByaXZhdGUgZ2V0R3VpZGVTdHlsZUZyb21EcmF3U3R5bGUoXHJcbiAgICBvbFN0eWxlOiBPbFN0eWxlTGlrZSB8IE9sU3R5bGUuUmVndWxhclNoYXBlXHJcbiAgKTogSGFzUmFkaXVzIHwgdW5kZWZpbmVkIHtcclxuICAgIGxldCBiYXNlU3R5bGU6IHVua25vd247XHJcbiAgICBpZiAoQXJyYXkuaXNBcnJheShvbFN0eWxlKSkge1xyXG4gICAgICBiYXNlU3R5bGUgPSBvbFN0eWxlWzBdO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgYmFzZVN0eWxlID0gb2xTdHlsZTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodHlwZW9mIChiYXNlU3R5bGUgYXMgYW55KS5nZXRJbWFnZSA9PT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgICBiYXNlU3R5bGUgPSAoYmFzZVN0eWxlIGFzIGFueSkuZ2V0SW1hZ2UoKSBhcyBPbFN0eWxlLkltYWdlO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCBndWlkZVN0eWxlOiBIYXNSYWRpdXM7XHJcbiAgICBpZiAodHlwZW9mIChiYXNlU3R5bGUgYXMgYW55KS5zZXRSYWRpdXMgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgZ3VpZGVTdHlsZSA9IGJhc2VTdHlsZSBhcyBIYXNSYWRpdXM7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGd1aWRlU3R5bGU7XHJcbiAgfVxyXG59XHJcbiIsIjxuZy10ZW1wbGF0ZT48L25nLXRlbXBsYXRlPlxyXG4iXX0=
|
|
560
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvbWV0cnktZm9ybS1maWVsZC1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9nZW9tZXRyeS9nZW9tZXRyeS1mb3JtLWZpZWxkL2dlb21ldHJ5LWZvcm0tZmllbGQtaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvZ2VvbWV0cnkvZ2VvbWV0cnktZm9ybS1maWVsZC9nZW9tZXRyeS1mb3JtLWZpZWxkLWlucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxLQUFLLEVBR0wsUUFBUSxFQUNSLElBQUksRUFDTCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWpFLE9BQU8sU0FBUyxNQUFNLFlBQVksQ0FBQztBQUNuQyxPQUFPLFNBQVMsTUFBTSxZQUFZLENBQUM7QUFDbkMsT0FBTyxTQUFTLE1BQU0sbUJBQW1CLENBQUM7QUFLMUMsT0FBTyxLQUFLLE1BQU0sZUFBZSxDQUFDO0FBR2xDLE9BQU8sYUFBYSxNQUFNLGlCQUFpQixDQUFDO0FBQzVDLE9BQU8sS0FBSyxNQUFNLE1BQU0sU0FBUyxDQUFDO0FBQ2xDLE9BQU8sY0FBYyxNQUFNLGtCQUFrQixDQUFDO0FBTTlDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QyxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLGFBQWEsRUFDYixpQkFBaUIsRUFDakIseUJBQXlCLEVBQzFCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxXQUFXLEVBQ1gsYUFBYSxFQUVkLE1BQU0sb0JBQW9CLENBQUM7QUFFNUIsT0FBTyxFQUFFLDBCQUEwQixF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LFNBQVMsR0FBRyxPQUFPLENBQUM7UUFDdEIsQ0FBQztRQUVELElBQUksT0FBUSxTQUFpQixDQUFDLFFBQVEsS0FBSyxVQUFVLEVBQUUsQ0FBQztZQUN0RCxTQUFTLEdBQUksU0FBaUIsQ0FBQyxRQUFRLEVBQW1CLENBQUM7UUFDN0QsQ0FBQztRQUVELElBQUksVUFBcUIsQ0FBQztRQUMxQixJQUFJLE9BQVEsU0FBaUIsQ0FBQyxTQUFTLEtBQUssVUFBVSxFQUFFLENBQUM7WUFDdkQsVUFBVSxHQUFHLFNBQXNCLENBQUM7UUFDdEMsQ0FBQztRQUVELE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7dUdBOWtCVSwrQkFBK0I7MkZBQS9CLCtCQUErQixxYkMvRDVDLCtCQUNBOzsyRkQ4RGEsK0JBQStCO2tCQU4zQyxTQUFTOytCQUNFLCtCQUErQixtQkFFeEIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJOzswQkFrT2IsUUFBUTs7MEJBQUksSUFBSTt5Q0F6TVYsR0FBRztzQkFBWCxLQUFLO2dCQU1GLFlBQVk7c0JBRGYsS0FBSztnQkFvQkcsU0FBUztzQkFBakIsS0FBSztnQkFLRyxPQUFPO3NCQUFmLEtBQUs7Z0JBTUYsbUJBQW1CO3NCQUR0QixLQUFLO2dCQXNCRixvQkFBb0I7c0JBRHZCLEtBQUs7Z0JBNEJGLGdCQUFnQjtzQkFEbkIsS0FBSztnQkFhRyxjQUFjO3NCQUF0QixLQUFLO2dCQU1GLFNBQVM7c0JBRFosS0FBSztnQkFtQ0YsWUFBWTtzQkFEZixLQUFLO2dCQWNGLEtBQUs7c0JBRFIsS0FBSztnQkE4QkYsTUFBTTtzQkFEVCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsXG4gIFNlbGZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTmdDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgT2xGZWF0dXJlIGZyb20gJ29sL0ZlYXR1cmUnO1xuaW1wb3J0IE9sT3ZlcmxheSBmcm9tICdvbC9PdmVybGF5JztcbmltcG9ydCBPbEdlb0pTT04gZnJvbSAnb2wvZm9ybWF0L0dlb0pTT04nO1xuaW1wb3J0IE9sQ2lyY2xlIGZyb20gJ29sL2dlb20vQ2lyY2xlJztcbmltcG9ydCBPbEdlb21ldHJ5IGZyb20gJ29sL2dlb20vR2VvbWV0cnknO1xuaW1wb3J0IHR5cGUgeyBUeXBlIH0gZnJvbSAnb2wvZ2VvbS9HZW9tZXRyeSc7XG5pbXBvcnQgT2xMaW5lU3RyaW5nIGZyb20gJ29sL2dlb20vTGluZVN0cmluZyc7XG5pbXBvcnQgUG9pbnQgZnJvbSAnb2wvZ2VvbS9Qb2ludCc7XG5pbXBvcnQgT2xQb2ludCBmcm9tICdvbC9nZW9tL1BvaW50JztcbmltcG9ydCBPbFBvbHlnb24gZnJvbSAnb2wvZ2VvbS9Qb2x5Z29uJztcbmltcG9ydCBPbFZlY3RvckxheWVyIGZyb20gJ29sL2xheWVyL1ZlY3Rvcic7XG5pbXBvcnQgKiBhcyBvbHByb2ogZnJvbSAnb2wvcHJvaic7XG5pbXBvcnQgT2xWZWN0b3JTb3VyY2UgZnJvbSAnb2wvc291cmNlL1ZlY3Rvcic7XG5pbXBvcnQgKiBhcyBPbFN0eWxlIGZyb20gJ29sL3N0eWxlJztcbmltcG9ydCB7IFN0eWxlTGlrZSBhcyBPbFN0eWxlTGlrZSB9IGZyb20gJ29sL3N0eWxlL1N0eWxlJztcblxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IElnb01hcCB9IGZyb20gJy4uLy4uL21hcC9zaGFyZWQvbWFwJztcbmltcG9ydCB7XG4gIE1lYXN1cmVMZW5ndGhVbml0LFxuICBmb3JtYXRNZWFzdXJlLFxuICBtZWFzdXJlT2xHZW9tZXRyeSxcbiAgdXBkYXRlT2xHZW9tZXRyeU1pZHBvaW50c1xufSBmcm9tICcuLi8uLi9tZWFzdXJlJztcbmltcG9ydCB7XG4gIERyYXdDb250cm9sLFxuICBNb2RpZnlDb250cm9sLFxuICBNb2RpZnlDb250cm9sT3B0aW9uc1xufSBmcm9tICcuLi9zaGFyZWQvY29udHJvbHMnO1xuaW1wb3J0IHsgR2VvSlNPTkdlb21ldHJ5IH0gZnJvbSAnLi4vc2hhcmVkL2dlb21ldHJ5LmludGVyZmFjZXMnO1xuaW1wb3J0IHsgY3JlYXRlRHJhd0ludGVyYWN0aW9uU3R5bGUgfSBmcm9tICcuLi9zaGFyZWQvZ2VvbWV0cnkudXRpbHMnO1xuaW1wb3J0IHsgRHJhd0NvbnRyb2xPcHRpb25zIH0gZnJvbSAnLi8uLi9zaGFyZWQvY29udHJvbHMvZHJhdyc7XG5cbmludGVyZmFjZSBIYXNSYWRpdXMge1xuICBnZXRSYWRpdXM6ICgpID0+IG51bWJlcjtcbiAgc2V0UmFkaXVzOiAocmFkaXVzOiBudW1iZXIpID0+IHZvaWQ7XG59XG5cbi8qKlxuICogVGhpcyBpbnB1dCBhbGxvd3MgYSB1c2VyIHRvIGRyYXcgYSBuZXcgZ2VvbWV0cnkgb3IgdG8gZWRpdFxuICogYW4gZXhpc3Rpbmcgb25lIG9uIGEgbWFwLiBBIHRleHQgaW5wdXQgaXMgYWxzbyBkaXNwbGF5ZWQgaW4gdGhlXG4gKiBmb3JtIHdpdGggc29tZSBpbnN0cnVjdGlvbnMuXG4gKiBUaGlzIGlzIHN0aWxsIFdJUC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaWdvLWdlb21ldHJ5LWZvcm0tZmllbGQtaW5wdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ2VvbWV0cnktZm9ybS1maWVsZC1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEdlb21ldHJ5Rm9ybUZpZWxkSW5wdXRDb21wb25lbnRcbiAgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQ29udHJvbFZhbHVlQWNjZXNzb3JcbntcbiAgcHJpdmF0ZSBvbE92ZXJsYXlMYXllcjogT2xWZWN0b3JMYXllcjxPbFZlY3RvclNvdXJjZT47XG4gIHByaXZhdGUgb2xHZW9KU09OID0gbmV3IE9sR2VvSlNPTigpO1xuICBwcml2YXRlIHJlYWR5ID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBkcmF3Q29udHJvbDogRHJhd0NvbnRyb2w7XG4gIHByaXZhdGUgbW9kaWZ5Q29udHJvbDogTW9kaWZ5Q29udHJvbDtcbiAgcHJpdmF0ZSBkZWZhdWx0RHJhd1N0eWxlUmFkaXVzOiBudW1iZXI7XG4gIHByaXZhdGUgb2xHZW9tZXRyeUVuZHMkJDogU3Vic2NyaXB0aW9uO1xuICBwcml2YXRlIG9sR2VvbWV0cnlDaGFuZ2VzJCQ6IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSBvbFRvb2x0aXAgPSB0aGlzLmNyZWF0ZU1lYXN1cmVUb29sdGlwKCk7XG5cbiAgLyoqXG4gICAqIEFjdGl2ZSBjb250cm9sXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGFjdGl2ZUNvbnRyb2w6IERyYXdDb250cm9sIHwgTW9kaWZ5Q29udHJvbDtcblxuICAvKipcbiAgICogVGhlIG1hcCB0byBkcmF3IHRoZSBnZW9tZXRyeSBvblxuICAgKi9cbiAgQElucHV0KCkgbWFwOiBJZ29NYXA7XG5cbiAgLyoqXG4gICAqIFRoZSBnZW9tZXRyeSB0eXBlXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgZ2VvbWV0cnlUeXBlKHZhbHVlOiBUeXBlKSB7XG4gICAgdGhpcy5fZ2VvbWV0cnlUeXBlID0gdmFsdWU7XG4gICAgaWYgKHRoaXMucmVhZHkgPT09IGZhbHNlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5kZWFjdGl2YXRlQ29udHJvbCgpO1xuICAgIHRoaXMuY3JlYXRlRHJhd0NvbnRyb2woKTtcbiAgICB0aGlzLmRyYXdDb250cm9sLmZyZWVoYW5kJC5uZXh0KHRoaXMuZnJlZWhhbmREcmF3SXNBY3RpdmUpO1xuICAgIHRoaXMudG9nZ2xlQ29udHJvbCgpO1xuICB9XG4gIGdldCBnZW9tZXRyeVR5cGUoKTogVHlwZSB7XG4gICAgcmV0dXJuIHRoaXMuX2dlb21ldHJ5VHlwZTtcbiAgfVxuICBwcml2YXRlIF9nZW9tZXRyeVR5cGU6IFR5cGU7XG5cbiAgLyoqXG4gICAqIFRoZSBkcmF3R3VpZGUgYXJvdW5kIHRoZSBtb3VzZSBwb2ludGVyIHRvIGhlbHAgZHJhd2luZ1xuICAgKi9cbiAgQElucHV0KCkgZHJhd0d1aWRlOiBudW1iZXIgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIGEgbWVhc3VyZSB0b29sdGlwIHNob3VsZCBiZSBkaXNwbGF5ZWRcbiAgICovXG4gIEBJbnB1dCgpIG1lYXN1cmU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogV2hldGhlciBkcmF3IGNvbnRyb2wgc2hvdWxkIGJlIGFjdGl2ZSBvciBub3RcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBkcmF3Q29udHJvbElzQWN0aXZlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9kcmF3Q29udHJvbElzQWN0aXZlO1xuICB9XG4gIHNldCBkcmF3Q29udHJvbElzQWN0aXZlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZHJhd0NvbnRyb2xJc0FjdGl2ZSA9IHZhbHVlO1xuICAgIGlmICh0aGlzLnJlYWR5ID09PSBmYWxzZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmRlYWN0aXZhdGVDb250cm9sKCk7XG4gICAgaWYgKCF0aGlzLl9kcmF3Q29udHJvbElzQWN0aXZlKSB7XG4gICAgICByZXR1cm47XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudG9nZ2xlQ29udHJvbCgpO1xuICAgIH1cbiAgfVxuICBwcml2YXRlIF9kcmF3Q29udHJvbElzQWN0aXZlOiBib29sZWFuID0gdHJ1ZTtcblxuICAvKipcbiAgICogV2hldGhlciBmcmVlaGFuZCBkcmF3IGNvbnRyb2wgc2hvdWxkIGJlIGFjdGl2ZSBvciBub3RcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBmcmVlaGFuZERyYXdJc0FjdGl2ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZnJlZWhhbmREcmF3SXNBY3RpdmU7XG4gIH1cbiAgc2V0IGZyZWVoYW5kRHJhd0lzQWN0aXZlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZnJlZWhhbmREcmF3SXNBY3RpdmUgPSB2YWx1ZTtcbiAgICB0aGlzLmRlYWN0aXZhdGVDb250cm9sKCk7XG5cbiAgICB0aGlzLmNyZWF0ZURyYXdDb250cm9sKCk7XG4gICAgdGhpcy5jcmVhdGVNb2RpZnlDb250cm9sKCk7XG5cbiAgICB0aGlzLmRyYXdDb250cm9sLmZyZWVoYW5kJC5uZXh0KHRoaXMuZnJlZWhhbmREcmF3SXNBY3RpdmUpO1xuXG4gICAgaWYgKHRoaXMucmVhZHkgPT09IGZhbHNlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLmRyYXdDb250cm9sSXNBY3RpdmUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy50b2dnbGVDb250cm9sKCk7XG4gIH1cbiAgcHJpdmF0ZSBfZnJlZWhhbmREcmF3SXNBY3RpdmU6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgZnJlZWhhbmQgZHJhdyBjb250cm9sIHNob3VsZCBiZSBhY3RpdmUgb3Igbm90XG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgcHJlZGVmaW5lZFJhZGl1cygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fcHJlZGVmaW5lZFJhZGl1cztcbiAgfVxuICBzZXQgcHJlZGVmaW5lZFJhZGl1cyh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3ByZWRlZmluZWRSYWRpdXMgPSB2YWx1ZTtcbiAgICB0aGlzLmRyYXdDb250cm9sLmlzcHJlZGVmaW5lZFJhZGl1cyQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgcHJpdmF0ZSBfcHJlZGVmaW5lZFJhZGl1czogYm9vbGVhbjtcblxuICAvKipcbiAgICogQ29udHJvbCBvcHRpb25zXG4gICAqL1xuICBASW5wdXQoKSBjb250cm9sT3B0aW9uczogeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9IHt9O1xuXG4gIC8qKlxuICAgKiBTdHlsZSBmb3IgdGhlIGRyYXcgY29udHJvbCAoYXBwbGllcyB3aGlsZSB0aGUgZ2VvbWV0cnkgaXMgYmVpbmcgZHJhd24pXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgZHJhd1N0eWxlKHZhbHVlOiBPbFN0eWxlTGlrZSB8IE9sU3R5bGUuUmVndWxhclNoYXBlKSB7XG4gICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHZhbHVlID0gY3JlYXRlRHJhd0ludGVyYWN0aW9uU3R5bGUoKTtcbiAgICB9XG4gICAgdGhpcy5fZHJhd1N0eWxlID0gdmFsdWU7XG5cbiAgICBjb25zdCBvbEd1aWRlU3R5bGUgPSB0aGlzLmdldEd1aWRlU3R5bGVGcm9tRHJhd1N0eWxlKHZhbHVlKTtcbiAgICBpZiAob2xHdWlkZVN0eWxlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuZGVmYXVsdERyYXdTdHlsZVJhZGl1cyA9IG9sR3VpZGVTdHlsZS5nZXRSYWRpdXMoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kZWZhdWx0RHJhd1N0eWxlUmFkaXVzID0gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5yZWFkeSA9PT0gZmFsc2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmRlYWN0aXZhdGVDb250cm9sKCk7XG4gICAgdGhpcy5jcmVhdGVEcmF3Q29udHJvbCgpO1xuICAgIHRoaXMuY3JlYXRlTW9kaWZ5Q29udHJvbCgpO1xuXG4gICAgdGhpcy5kcmF3Q29udHJvbC5mcmVlaGFuZCQubmV4dCh0aGlzLmZyZWVoYW5kRHJhd0lzQWN0aXZlKTtcbiAgICB0aGlzLnRvZ2dsZUNvbnRyb2woKTtcbiAgfVxuICBnZXQgZHJhd1N0eWxlKCk6IE9sU3R5bGVMaWtlIHwgT2xTdHlsZS5SZWd1bGFyU2hhcGUge1xuICAgIHJldHVybiB0aGlzLl9kcmF3U3R5bGU7XG4gIH1cbiAgcHJpdmF0ZSBfZHJhd1N0eWxlOiBPbFN0eWxlTGlrZSB8IE9sU3R5bGUuUmVndWxhclNoYXBlO1xuXG4gIC8qKlxuICAgKiBTdHlsZSBmb3IgdGhlIG92ZXJsYXkgbGF5ZXIgKGFwcGxpZXMgb25jZSB0aGUgZ2VvbWV0cnkgaXMgYWRkZWQgdG8gdGhlIG1hcClcbiAgICogSWYgbm90IHNwZWNpZmllZCwgZHJhd1N0eWxlIGFwcGxpZXNcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBvdmVybGF5U3R5bGUodmFsdWU6IE9sU3R5bGVMaWtlIHwgT2xTdHlsZS5SZWd1bGFyU2hhcGUpIHtcbiAgICB0aGlzLl9vdmVybGF5U3R5bGUgPSB2YWx1ZTtcbiAgfVxuICBnZXQgb3ZlcmxheVN0eWxlKCk6IE9sU3R5bGVMaWtlIHwgT2xTdHlsZS5SZWd1bGFyU2hhcGUge1xuICAgIHJldHVybiB0aGlzLl9vdmVybGF5U3R5bGU7XG4gIH1cbiAgcHJpdmF0ZSBfb3ZlcmxheVN0eWxlOiBPbFN0eWxlTGlrZSB8IE9sU3R5bGUuUmVndWxhclNoYXBlO1xuXG4gIC8qKlxuICAgKiBUaGUgZ2VvbWV0cnkgdmFsdWUgKEdlb0pTT04pXG4gICAqIEltcGxlbWVudGVkIGFzIHBhcnQgb2YgQ29udHJvbFZhbHVlQWNjZXNzb3IuXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgdmFsdWUodmFsdWU6IEdlb0pTT05HZW9tZXRyeSkge1xuICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgaWYgKHRoaXMucmVhZHkgPT09IGZhbHNlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLmFkZEdlb0pTT05Ub092ZXJsYXkodmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm9sT3ZlcmxheVNvdXJjZS5jbGVhcih0cnVlKTtcbiAgICB9XG4gICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gICAgdGhpcy50b2dnbGVDb250cm9sKCk7XG4gICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cbiAgZ2V0IHZhbHVlKCk6IEdlb0pTT05HZW9tZXRyeSB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICB9XG4gIHByaXZhdGUgX3ZhbHVlOiBHZW9KU09OR2VvbWV0cnk7XG5cbiAgLyoqXG4gICAqIFRoZSB2ZWN0b3Igc291cmNlIHRvIGFkZCB0aGUgZ2VvbWV0cnkgdG9cbiAgICogQGludGVybmFsXG4gICAqL1xuICBnZXQgb2xPdmVybGF5U291cmNlKCk6IE9sVmVjdG9yU291cmNlIHtcbiAgICByZXR1cm4gdGhpcy5vbE92ZXJsYXlMYXllci5nZXRTb3VyY2UoKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCByYWRpdXModmFsdWU6IGFueSkge1xuICAgIGlmICh0aGlzLnJlYWR5ID09PSBmYWxzZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAodGhpcy5tb2RpZnlDb250cm9sLmdldFNvdXJjZSgpKSB7XG4gICAgICB0aGlzLm1vZGlmeUNvbnRyb2wuZ2V0U291cmNlKCkucmVmcmVzaCgpO1xuICAgIH1cbiAgICBpZiAodGhpcy5mcmVlaGFuZERyYXdJc0FjdGl2ZSkge1xuICAgICAgbGV0IG9sTW9kaWZ5O1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIG9sTW9kaWZ5ID0gdGhpcy5tb2RpZnlDb250cm9sLm9sTW9kaWZ5SW50ZXJhY3Rpb247XG4gICAgICAgIGlmIChvbE1vZGlmeSkge1xuICAgICAgICAgIGlmIChvbE1vZGlmeS5mZWF0dXJlc18pIHtcbiAgICAgICAgICAgIG9sTW9kaWZ5LmZlYXR1cmVzXy5jbGVhcigpO1xuICAgICAgICAgICAgdGhpcy5hZGRHZW9KU09OVG9PdmVybGF5KHRoaXMudmFsdWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSwgMCk7XG4gICAgfVxuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQE9wdGlvbmFsKCkgQFNlbGYoKSBwdWJsaWMgbmdDb250cm9sOiBOZ0NvbnRyb2xcbiAgKSB7XG4gICAgaWYgKHRoaXMubmdDb250cm9sICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIC8vIFNldHRpbmcgdGhlIHZhbHVlIGFjY2Vzc29yIGRpcmVjdGx5IChpbnN0ZWFkIG9mIHVzaW5nXG4gICAgICAvLyB0aGUgcHJvdmlkZXJzKSB0byBhdm9pZCBydW5uaW5nIGludG8gYSBjaXJjdWxhciBpbXBvcnQuXG4gICAgICB0aGlzLm5nQ29udHJvbC52YWx1ZUFjY2Vzc29yID0gdGhpcztcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGFuIG92ZXJsYXkgbGF5ZXIsIGFkZCB0aGUgaW5pdGlhbCBnZW9tZXRyeSB0byBpdCAoaWYgYW55KVxuICAgKiBhbmQgdG9nZ2xlIHRoZSByaWdodCBpbnRlcmFjdGlvbi5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAodGhpcy5kcmF3U3R5bGUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5kcmF3U3R5bGUgPSBjcmVhdGVEcmF3SW50ZXJhY3Rpb25TdHlsZSgpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLm92ZXJsYXlTdHlsZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLm92ZXJsYXlTdHlsZSA9IHRoaXMuZHJhd1N0eWxlO1xuICAgIH1cblxuICAgIHRoaXMuYWRkT2xPdmVybGF5TGF5ZXIoKTtcbiAgICB0aGlzLmNyZWF0ZURyYXdDb250cm9sKCk7XG4gICAgdGhpcy5jcmVhdGVNb2RpZnlDb250cm9sKCk7XG5cbiAgICBpZiAodGhpcy52YWx1ZSkge1xuICAgICAgdGhpcy5hZGRHZW9KU09OVG9PdmVybGF5KHRoaXMudmFsdWUpO1xuICAgIH1cbiAgICB0aGlzLnRvZ2dsZUNvbnRyb2woKTtcblxuICAgIHRoaXMucmVhZHkgPSB0cnVlO1xuICB9XG5cbiAgLyoqXG4gICAqIENsZWFyIHRoZSBvdmVybGF5IGxheWVyIGFuZCBhbnkgaW50ZXJhY3Rpb24gYWRkZWQgYnkgdGhpcyBjb21wb25lbnQuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgLy8gVGhpcyBpcyBtYW5kYXRvcnkgd2hlbiB0aGUgZm9ybSBjb250cm9sIGlzIHJldXNlZCBhZnRlclxuICAgIC8vIHRoaXMgY29tcG9uZW50IGhhcyBiZWVuIGRlc3Ryb3llZC4gSXQgc2VlbXMgbGlrZSB0aGUgY29udHJvbFxuICAgIC8vIGtlZXBzIGEgcmVmZXJlbmNlIHRvIHRoaXMgY29tcG9uZW50IGV2ZW4gYWZ0ZXIgaXQncyBkZXN0cm95ZWRcbiAgICAvLyBhbmQgaXQgYXR0ZW1wdHMgdG8gc2V0IGl0J3MgdmFsdWVcbiAgICB0aGlzLnJlYWR5ID0gZmFsc2U7XG5cbiAgICB0aGlzLmRlYWN0aXZhdGVDb250cm9sKCk7XG4gICAgdGhpcy5vbE92ZXJsYXlTb3VyY2UuY2xlYXIoKTtcbiAgICB0aGlzLm1hcC5vbC5yZW1vdmVMYXllcih0aGlzLm9sT3ZlcmxheUxheWVyKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAgKi9cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogRnVuY3Rpb24pIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cbiAgcHJpdmF0ZSBvbkNoYW5nZTogYW55ID0gKCkgPT4ge307XG5cbiAgLyoqXG4gICAqIEltcGxlbWVudGVkIGFzIHBhcnQgb2YgQ29udHJvbFZhbHVlQWNjZXNzb3IuXG4gICAqL1xuICByZWdpc3Rlck9uVG91Y2hlZChmbjogRnVuY3Rpb24pIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG4gIHByaXZhdGUgb25Ub3VjaGVkOiBhbnkgPSAoKSA9PiB7fTtcblxuICAvKipcbiAgICogSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgICovXG4gIHdyaXRlVmFsdWUodmFsdWU6IEdlb0pTT05HZW9tZXRyeSkge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYW4gb3ZlcmxheSBsYXllciB0byB0aGUgbWFwXG4gICAqL1xuICBwcml2YXRlIGFkZE9sT3ZlcmxheUxheWVyKCkge1xuICAgIHRoaXMub2xPdmVybGF5TGF5ZXIgPSBuZXcgT2xWZWN0b3JMYXllcih7XG4gICAgICBzb3VyY2U6IG5ldyBPbFZlY3RvclNvdXJjZSgpLFxuICAgICAgekluZGV4OiA1MDAsXG4gICAgICBzdHlsZTogbnVsbFxuICAgIH0pO1xuICAgIHRoaXMubWFwLm9sLmFkZExheWVyKHRoaXMub2xPdmVybGF5TGF5ZXIpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIGRyYXcgY29udHJvbCBhbmQgc3Vic2NyaWJlIHRvIGl0J3MgZ2VvbWV0cnlcbiAgICovXG4gIHByaXZhdGUgY3JlYXRlRHJhd0NvbnRyb2woKSB7XG4gICAgY29uc3QgY29udHJvbE9wdGlvbnMgPSBPYmplY3QuYXNzaWduKHt9LCB0aGlzLmNvbnRyb2xPcHRpb25zLCB7XG4gICAgICBnZW9tZXRyeVR5cGU6IHRoaXMuZ2VvbWV0cnlUeXBlIHx8ICdQb2ludCcsXG4gICAgICBkcmF3aW5nTGF5ZXI6IHRoaXMub2xPdmVybGF5TGF5ZXIsXG4gICAgICBpbnRlcmFjdGlvblN0eWxlOlxuICAgICAgICB0eXBlb2YgdGhpcy5kcmF3U3R5bGUgPT09ICdmdW5jdGlvbidcbiAgICAgICAgICA/IHRoaXMuZHJhd1N0eWxlXG4gICAgICAgICAgOiAob2xGZWF0dXJlOiBPbEZlYXR1cmU8T2xHZW9tZXRyeT4sIHJlc29sdXRpb246IG51bWJlcikgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBzdHlsZSA9IHRoaXMuZHJhd1N0eWxlO1xuICAgICAgICAgICAgICB0aGlzLnVwZGF0ZURyYXdTdHlsZVdpdGhEcmF3R3VpZGUoc3R5bGUsIHJlc29sdXRpb24pO1xuICAgICAgICAgICAgICByZXR1cm4gc3R5bGU7XG4gICAgICAgICAgICB9XG4gICAgfSkgYXMgRHJhd0NvbnRyb2xPcHRpb25zO1xuICAgIHRoaXMuZHJhd0NvbnRyb2wgPSBuZXcgRHJhd0NvbnRyb2woY29udHJvbE9wdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG1vZGlmeSBjb250cm9sIGFuZCBzdWJzY3JpYmUgdG8gaXQncyBnZW9tZXRyeVxuICAgKi9cbiAgcHJpdmF0ZSBjcmVhdGVNb2RpZnlDb250cm9sKCkge1xuICAgIGNvbnN0IGNvbnRyb2xPcHRpb25zID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5jb250cm9sT3B0aW9ucywge1xuICAgICAgbGF5ZXI6IHRoaXMub2xPdmVybGF5TGF5ZXIsXG4gICAgICBkcmF3U3R5bGU6XG4gICAgICAgIHR5cGVvZiB0aGlzLmRyYXdTdHlsZSA9PT0gJ2Z1bmN0aW9uJ1xuICAgICAgICAgID8gdGhpcy5kcmF3U3R5bGVcbiAgICAgICAgICA6IChvbEZlYXR1cmU6IE9sRmVhdHVyZTxPbEdlb21ldHJ5PiwgcmVzb2x1dGlvbjogbnVtYmVyKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IHN0eWxlID0gdGhpcy5kcmF3U3R5bGU7XG4gICAgICAgICAgICAgIHRoaXMudXBkYXRlRHJhd1N0eWxlV2l0aERyYXdHdWlkZShzdHlsZSwgcmVzb2x1dGlvbik7XG4gICAgICAgICAgICAgIHJldHVybiBzdHlsZTtcbiAgICAgICAgICAgIH1cbiAgICB9KSBhcyBNb2RpZnlDb250cm9sT3B0aW9ucztcbiAgICB0aGlzLm1vZGlmeUNvbnRyb2wgPSBuZXcgTW9kaWZ5Q29udHJvbChjb250cm9sT3B0aW9ucyk7XG4gIH1cblxuICAvKipcbiAgICogVG9nZ2xlIHRoZSBwcm9wZXIgY29udHJvbCAoZHJhdyBvciBtb2RpZnkpXG4gICAqL1xuICBwcml2YXRlIHRvZ2dsZUNvbnRyb2woKSB7XG4gICAgbGV0IGFjdGl2YXRlO1xuICAgIGlmICghdGhpcy52YWx1ZSAmJiB0aGlzLmdlb21ldHJ5VHlwZSkge1xuICAgICAgYWN0aXZhdGUgPSB0aGlzLmRyYXdDb250cm9sO1xuICAgIH0gZWxzZSB7XG4gICAgICBhY3RpdmF0ZSA9IHRoaXMubW9kaWZ5Q29udHJvbDtcbiAgICB9XG5cbiAgICAvLyBJZiB0aGUgY29udHJvbCB0aGF0IHNob3VsZCBiZSBhY3RpdmF0ZWRcbiAgICAvLyBpcyBub3QgdGhlIHNhbWUgYXMgdGhlIGN1cnJlbnQgYWN0aXZlIGNvbnRyb2wsXG4gICAgLy8gZGVhY3RpdmF0ZSB0aGUgY3VycmVudCBjb250cm9sIGFuZCBhY3RpdmF0ZSB0aGUgbmV3IG9uZVxuICAgIC8vIE90aGVyd2lzZSwgZG8gbm90aGluZyBhbmQga2VlcCB0aGUgY3VycmVudCBjb250cm9sIGFjdGl2ZVxuICAgIGlmIChhY3RpdmF0ZSAhPT0gdGhpcy5hY3RpdmVDb250cm9sKSB7XG4gICAgICB0aGlzLmRlYWN0aXZhdGVDb250cm9sKCk7XG4gICAgICB0aGlzLmFjdGl2YXRlQ29udHJvbChhY3RpdmF0ZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEFjdGl2YXRlIGEgZ2l2ZW4gY29udHJvbFxuICAgKiBAcGFyYW0gY29udHJvbCBDb250cm9sXG4gICAqL1xuICBwcml2YXRlIGFjdGl2YXRlQ29udHJvbChjb250cm9sOiBEcmF3Q29udHJvbCB8IE1vZGlmeUNvbnRyb2wpIHtcbiAgICB0aGlzLmFjdGl2ZUNvbnRyb2wgPSBjb250cm9sO1xuICAgIHRoaXMub2xHZW9tZXRyeUVuZHMkJCA9IGNvbnRyb2wuZW5kJC5zdWJzY3JpYmUoKG9sR2VvbWV0cnk6IE9sR2VvbWV0cnkpID0+XG4gICAgICB0aGlzLm9uT2xHZW9tZXRyeUVuZHMob2xHZW9tZXRyeSlcbiAgICApO1xuICAgIGlmICh0aGlzLm1lYXN1cmUgPT09IHRydWUgJiYgY29udHJvbCA9PT0gdGhpcy5kcmF3Q29udHJvbCkge1xuICAgICAgdGhpcy5vbEdlb21ldHJ5Q2hhbmdlcyQkID0gY29udHJvbC5jaGFuZ2VzJC5zdWJzY3JpYmUoXG4gICAgICAgIChvbEdlb21ldHJ5OiBPbFBvbHlnb24gfCBPbFBvaW50IHwgT2xMaW5lU3RyaW5nIHwgT2xDaXJjbGUpID0+XG4gICAgICAgICAgdGhpcy5vbk9sR2VvbWV0cnlDaGFuZ2VzKG9sR2VvbWV0cnkpXG4gICAgICApO1xuICAgIH1cbiAgICBjb250cm9sLnNldE9sTWFwKHRoaXMubWFwLm9sLCBmYWxzZSk7XG4gIH1cblxuICAvKipcbiAgICogRGVhY3RpdmF0ZSB0aGUgYWN0aXZlIGNvbnRyb2xcbiAgICovXG4gIHByaXZhdGUgZGVhY3RpdmF0ZUNvbnRyb2woKSB7XG4gICAgdGhpcy5yZW1vdmVNZWFzdXJlVG9vbHRpcCgpO1xuICAgIGlmICh0aGlzLmFjdGl2ZUNvbnRyb2wgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5hY3RpdmVDb250cm9sLnNldE9sTWFwKHVuZGVmaW5lZCk7XG4gICAgfVxuICAgIGlmICh0aGlzLm9sR2VvbWV0cnlFbmRzJCQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5vbEdlb21ldHJ5RW5kcyQkLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICAgIGlmICh0aGlzLm9sR2VvbWV0cnlDaGFuZ2VzJCQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5vbEdlb21ldHJ5Q2hhbmdlcyQkLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICAgIHRoaXMuYWN0aXZlQ29udHJvbCA9IHVuZGVmaW5lZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgbWVhc3VyZXMgb2JzZXJ2YWJsZXMgYW5kIG1hcCB0b29sdGlwc1xuICAgKiBAcGFyYW0gb2xHZW9tZXRyeSBPbCBsaW5lc3RyaW5nIG9yIHBvbHlnb25cbiAgICovXG4gIHByaXZhdGUgb25PbEdlb21ldHJ5RW5kcyhvbEdlb21ldHJ5OiBPbEdlb21ldHJ5IHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5yZW1vdmVNZWFzdXJlVG9vbHRpcCgpO1xuICAgIHRoaXMuc2V0T2xHZW9tZXRyeShvbEdlb21ldHJ5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgbWVhc3VyZXMgb2JzZXJ2YWJsZXMgYW5kIG1hcCB0b29sdGlwc1xuICAgKiBAcGFyYW0gb2xHZW9tZXRyeSBPbCBsaW5lc3RyaW5nIG9yIHBvbHlnb25cbiAgICovXG4gIHByaXZhdGUgb25PbEdlb21ldHJ5Q2hhbmdlcyhcbiAgICBvbEdlb21ldHJ5OiBPbFBvbHlnb24gfCBPbFBvaW50IHwgT2xMaW5lU3RyaW5nIHwgT2xDaXJjbGVcbiAgKSB7XG4gICAgaWYgKG9sR2VvbWV0cnkuZ2V0VHlwZSgpICE9PSAnUG9pbnQnKSB7XG4gICAgICB0aGlzLnVwZGF0ZU1lYXN1cmVUb29sdGlwKG9sR2VvbWV0cnkpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBXaGVuIGRyYXdpbmcgZW5kcywgY29udmVydCB0aGUgb3V0cHV0IHZhbHVlIHRvIEdlb0pTT04gYW5kIGtlZXAgaXQuXG4gICAqIFJlc3RvcmUgdGhlIGRvdWJsZSBjbGljayBpbnRlcmFjdGlvbi5cbiAgICogQHBhcmFtIG9sR2VvbWV0cnkgT0wgZ2VvbWV0cnlcbiAgICovXG4gIHByaXZhdGUgc2V0T2xHZW9tZXRyeShvbEdlb21ldHJ5OiBPbEdlb21ldHJ5IHwgdW5kZWZpbmVkKSB7XG4gICAgbGV0IHZhbHVlO1xuICAgIGlmIChvbEdlb21ldHJ5ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAob2xHZW9tZXRyeS5nZXRUeXBlKCkgPT09ICdDaXJjbGUnKSB7XG4gICAgICAvLyBCZWNhdXNlIENpcmNsZSBkb2Vzbid0IGV4aXN0IGFzIGEgR2VvSlNPTiBvYmplY3RcbiAgICAgIG9sR2VvbWV0cnkgPSB0aGlzLmNpcmNsZVRvUG9pbnQob2xHZW9tZXRyeSk7XG4gICAgfVxuXG4gICAgdmFsdWUgPSB0aGlzLm9sR2VvSlNPTi53cml0ZUdlb21ldHJ5T2JqZWN0KG9sR2VvbWV0cnksIHtcbiAgICAgIGZlYXR1cmVQcm9qZWN0aW9uOiB0aGlzLm1hcC5wcm9qZWN0aW9uLFxuICAgICAgZGF0YVByb2plY3Rpb246ICdFUFNHOjQzMjYnXG4gICAgfSk7XG4gICAgaWYgKG9sR2VvbWV0cnkuZ2V0KCdyYWRpdXMnKSkge1xuICAgICAgdmFsdWUucmFkaXVzID0gb2xHZW9tZXRyeS5nZXQoJ3JhZGl1cycpO1xuICAgICAgb2xHZW9tZXRyeS5zZXQoJ3JhZGl1cycsIHZhbHVlLnJhZGl1cyk7XG4gICAgfVxuICAgIHRoaXMud3JpdGVWYWx1ZSh2YWx1ZSk7XG4gIH1cblxuICBwcml2YXRlIGNpcmNsZVRvUG9pbnQob2xHZW9tZXRyeSkge1xuICAgIGNvbnN0IGNlbnRlciA9IG9sR2VvbWV0cnkuZ2V0Q2VudGVyKCk7XG4gICAgY29uc3QgY29vcmRpbmF0ZXMgPSBvbHByb2oudHJhbnNmb3JtKFxuICAgICAgY2VudGVyLFxuICAgICAgdGhpcy5tYXAucHJvamVjdGlvbixcbiAgICAgICdFUFNHOjQzMjYnXG4gICAgKTtcbiAgICBjb25zdCByYWRpdXMgPSBNYXRoLnJvdW5kKFxuICAgICAgb2xHZW9tZXRyeS5nZXRSYWRpdXMoKSAqIE1hdGguY29zKChNYXRoLlBJIC8gMTgwKSAqIGNvb3JkaW5hdGVzWzFdKVxuICAgICk7XG5cbiAgICAvLyBDb252ZXJ0IGl0IHRvIGEgcG9pbnQgb2JqZWN0XG4gICAgb2xHZW9tZXRyeSA9IG5ldyBQb2ludChjZW50ZXIpO1xuICAgIG9sR2VvbWV0cnkuc2V0KCdyYWRpdXMnLCByYWRpdXMsIHRydWUpO1xuICAgIHJldHVybiBvbEdlb21ldHJ5O1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIEdlb0pTT04gZ2VvbWV0cnkgdG8gdGhlIG92ZXJsYXlcbiAgICogQHBhcmFtIGdlb21ldHJ5IEdlb0pTT04gZ2VvbWV0cnlcbiAgICovXG4gIHByaXZhdGUgYWRkR2VvSlNPTlRvT3ZlcmxheShnZW9tZXRyeTogR2VvSlNPTkdlb21ldHJ5KSB7XG4gICAgY29uc3Qgb2xHZW9tZXRyeSA9IHRoaXMub2xHZW9KU09OLnJlYWRHZW9tZXRyeShnZW9tZXRyeSwge1xuICAgICAgZGF0YVByb2plY3Rpb246ICdFUFNHOjQzMjYnLFxuICAgICAgZmVhdHVyZVByb2plY3Rpb246IHRoaXMubWFwLnByb2plY3Rpb25cbiAgICB9KTtcbiAgICBjb25zdCBvbEZlYXR1cmUgPSBuZXcgT2xGZWF0dXJlKHtcbiAgICAgIGdlb21ldHJ5OiBvbEdlb21ldHJ5XG4gICAgfSk7XG4gICAgb2xGZWF0dXJlLnNldFN0eWxlKHRoaXMub3ZlcmxheVN0eWxlIGFzIE9sU3R5bGUuU3R5bGUpO1xuICAgIHRoaXMub2xPdmVybGF5U291cmNlLmNsZWFyKCk7XG4gICAgdGhpcy5vbE92ZXJsYXlTb3VyY2UuYWRkRmVhdHVyZShvbEZlYXR1cmUpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSB0aGUgbWVhc3VyZSB0b29sdGlwXG4gICAqL1xuICBwcml2YXRlIGNyZWF0ZU1lYXN1cmVUb29sdGlwKCkge1xuICAgIHJldHVybiBuZXcgT2xPdmVybGF5KHtcbiAgICAgIGVsZW1lbnQ6IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpLFxuICAgICAgb2Zmc2V0OiBbLTMwLCAtMTBdLFxuICAgICAgY2xhc3NOYW1lOiBbJ2lnby1tYXAtdG9vbHRpcCcsICdpZ28tbWFwLXRvb2x0aXAtbWVhc3VyZSddLmpvaW4oJyAnKSxcbiAgICAgIHN0b3BFdmVudDogZmFsc2VcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgdGhlIG1lYXN1cmUgdG9vbHRpcCBvZiBhbiBPTCBnZW9tZXRyeVxuICAgKiBAcGFyYW0gb2xHZW9tZXRyeSBPTCBHZW9tZXRyeVxuICAgKi9cbiAgcHJpdmF0ZSB1cGRhdGVNZWFzdXJlVG9vbHRpcChcbiAgICBvbEdlb21ldHJ5OiBPbFBvbHlnb24gfCBPbFBvaW50IHwgT2xMaW5lU3RyaW5nIHwgT2xDaXJjbGVcbiAgKSB7XG4gICAgY29uc3QgbWVhc3VyZSA9IG1lYXN1cmVPbEdlb21ldHJ5KG9sR2VvbWV0cnksIHRoaXMubWFwLnByb2plY3Rpb24pO1xuICAgIGNvbnN0IGxlbmd0aHMgPSBtZWFzdXJlLmxlbmd0aHM7XG4gICAgY29uc3QgbGFzdEluZGV4ID1cbiAgICAgIG9sR2VvbWV0cnkuZ2V0VHlwZSgpID09PSAnUG9seWdvbidcbiAgICAgICAgPyBsZW5ndGhzLmxlbmd0aCAtIDJcbiAgICAgICAgOiBsZW5ndGhzLmxlbmd0aCAtIDE7XG4gICAgY29uc3QgbGFzdExlbmd0aCA9IGxlbmd0aHNbbGFzdEluZGV4XTtcblxuICAgIGNvbnN0IG9sTWlkcG9pbnRzID0gdXBkYXRlT2xHZW9tZXRyeU1pZHBvaW50cyhvbEdlb21ldHJ5KTtcbiAgICBjb25zdCBvbExhc3RNaWRwb2ludCA9IG9sTWlkcG9pbnRzW2xhc3RJbmRleF07XG4gICAgaWYgKG9sTWlkcG9pbnRzLmxlbmd0aCA9PT0gMCB8fCBvbExhc3RNaWRwb2ludCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLnJlbW92ZU1lYXN1cmVUb29sdGlwKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5vbFRvb2x0aXAuc2V0UG9zaXRpb24ob2xMYXN0TWlkcG9pbnQuZ2V0RmxhdENvb3JkaW5hdGVzKCkpO1xuXG4gICAgY29uc3QgaW5uZXJIdG1sID0gZm9ybWF0TWVhc3VyZShsYXN0TGVuZ3RoLCB7XG4gICAgICBkZWNpbWFsOiAxLFxuICAgICAgdW5pdDogTWVhc3VyZUxlbmd0aFVuaXQuTWV0ZXJzLFxuICAgICAgdW5pdEFiYnI6IHRydWUsXG4gICAgICBsb2NhbGU6ICdmcidcbiAgICB9KTtcbiAgICB0aGlzLm9sVG9vbHRpcC5nZXRFbGVtZW50KCkuaW5uZXJIVE1MID0gaW5uZXJIdG1sO1xuICAgIGlmICh0aGlzLm9sVG9vbHRpcC5nZXRNYXAoKSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLm1hcC5vbC5hZGRPdmVybGF5KHRoaXMub2xUb29sdGlwKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlIHRoZSBtZWFzdXJlIHRvb2x0aXAgZnJvbSB0aGUgbWFwXG4gICAqL1xuICBwcml2YXRlIHJlbW92ZU1lYXN1cmVUb29sdGlwKCkge1xuICAgIGlmICh0aGlzLm9sVG9vbHRpcC5nZXRNYXAgJiYgdGhpcy5vbFRvb2x0aXAuZ2V0TWFwKCkgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5tYXAub2wucmVtb3ZlT3ZlcmxheSh0aGlzLm9sVG9vbHRpcCk7XG4gICAgICB0aGlzLm9sVG9vbHRpcC5zZXRNYXAodW5kZWZpbmVkKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQWRqdXN0IHRoZSBkcmF3IHN0eWxlIHdpdGggdGhlIHNwZWNpZmllZCBkcmF3IGd1aWRlIGRpc3RhbmNlLCBpZiBwb3NzaWJsZVxuICAgKiBAcGFyYW0gb2xTdHlsZSBEcmF3IHN0eWxlIHRvIHVwZGF0ZVxuICAgKiBAcGFyYW0gcmVzb2x1dGlvbiBSZXNvbHV0aW9uICh0byBtYWtlIHRoZSBzY3JlZW4gc2l6ZSBvZiBzeW1ib2wgZml0IHRoZSBkcmF3R3VpZGUgdmFsdWUpXG4gICAqL1xuICBwcml2YXRlIHVwZGF0ZURyYXdTdHlsZVdpdGhEcmF3R3VpZGUoXG4gICAgb2xTdHlsZTogT2xTdHlsZUxpa2UgfCBPbFN0eWxlLlJlZ3VsYXJTaGFwZSxcbiAgICByZXNvbHV0aW9uOiBudW1iZXJcbiAgKSB7XG4gICAgY29uc3Qgb2xHdWlkZVN0eWxlID0gdGhpcy5nZXRHdWlkZVN0eWxlRnJvbURyYXdTdHlsZShvbFN0eWxlKTtcbiAgICBpZiAob2xHdWlkZVN0eWxlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgZHJhd0d1aWRlID0gdGhpcy5kcmF3R3VpZGU7XG4gICAgbGV0IHJhZGl1cztcbiAgICBpZiAoIWRyYXdHdWlkZSB8fCBkcmF3R3VpZGUgPCAwKSB7XG4gICAgICByYWRpdXMgPSB0aGlzLmRlZmF1bHREcmF3U3R5bGVSYWRpdXM7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJhZGl1cyA9IGRyYXdHdWlkZSA+IDAgPyBkcmF3R3VpZGUgLyByZXNvbHV0aW9uIDogZHJhd0d1aWRlO1xuICAgIH1cbiAgICBvbEd1aWRlU3R5bGUuc2V0UmFkaXVzKHJhZGl1cyk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB3ZXRoZXIgYSBnaXZlbiBPcGVuIExheWVycyBzdHlsZSBoYXMgYSByYWRpdXMgcHJvcGVydHkgdGhhdCBjYW4gYmUgc2V0ICh1c2VkIHRvIHNldCBkcmF3IGd1aWRlKVxuICAgKiBAcGFyYW0gb2xTdHlsZSBUaGUgc3R5bGUgb24gd2hpY2ggdG8gcGVyZm9ybSB0aGUgY2hlY2tcbiAgICovXG4gIHByaXZhdGUgZ2V0R3VpZGVTdHlsZUZyb21EcmF3U3R5bGUoXG4gICAgb2xTdHlsZTogT2xTdHlsZUxpa2UgfCBPbFN0eWxlLlJlZ3VsYXJTaGFwZVxuICApOiBIYXNSYWRpdXMgfCB1bmRlZmluZWQge1xuICAgIGxldCBiYXNlU3R5bGU6IHVua25vd247XG4gICAgaWYgKEFycmF5LmlzQXJyYXkob2xTdHlsZSkpIHtcbiAgICAgIGJhc2VTdHlsZSA9IG9sU3R5bGVbMF07XG4gICAgfSBlbHNlIHtcbiAgICAgIGJhc2VTdHlsZSA9IG9sU3R5bGU7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiAoYmFzZVN0eWxlIGFzIGFueSkuZ2V0SW1hZ2UgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGJhc2VTdHlsZSA9IChiYXNlU3R5bGUgYXMgYW55KS5nZXRJbWFnZSgpIGFzIE9sU3R5bGUuSW1hZ2U7XG4gICAgfVxuXG4gICAgbGV0IGd1aWRlU3R5bGU6IEhhc1JhZGl1cztcbiAgICBpZiAodHlwZW9mIChiYXNlU3R5bGUgYXMgYW55KS5zZXRSYWRpdXMgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGd1aWRlU3R5bGUgPSBiYXNlU3R5bGUgYXMgSGFzUmFkaXVzO1xuICAgIH1cblxuICAgIHJldHVybiBndWlkZVN0eWxlO1xuICB9XG59XG4iLCI8bmctdGVtcGxhdGU+PC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
@@ -121,7 +121,7 @@ let GeometryFormFieldComponent = class GeometryFormFieldComponent {
|
|
|
121
121
|
this.value$$.unsubscribe();
|
|
122
122
|
}
|
|
123
123
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: GeometryFormFieldComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
124
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.4", type: GeometryFormFieldComponent, isStandalone: true, selector: "igo-geometry-form-field", inputs: { formControl: "formControl", map: "map", geometryType: "geometryType", geometryTypeField: "geometryTypeField", geometryTypes: "geometryTypes", drawGuideField: "drawGuideField", drawGuide: "drawGuide", drawGuidePlaceholder: "drawGuidePlaceholder", measure: "measure", controlOptions: "controlOptions", drawStyle: "drawStyle", overlayStyle: "overlayStyle" }, ngImport: i0, template: "<igo-geometry-form-field-input\
|
|
124
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.4", type: GeometryFormFieldComponent, isStandalone: true, selector: "igo-geometry-form-field", inputs: { formControl: "formControl", map: "map", geometryType: "geometryType", geometryTypeField: "geometryTypeField", geometryTypes: "geometryTypes", drawGuideField: "drawGuideField", drawGuide: "drawGuide", drawGuidePlaceholder: "drawGuidePlaceholder", measure: "measure", controlOptions: "controlOptions", drawStyle: "drawStyle", overlayStyle: "overlayStyle" }, ngImport: i0, template: "<igo-geometry-form-field-input\n [formControl]=\"formControl\"\n [map]=\"map\"\n [geometryType]=\"geometryType$ | async\"\n [drawGuide]=\"drawGuide$ | async\"\n [measure]=\"measure\"\n [drawControlIsActive]=\"drawControlIsActive\"\n [freehandDrawIsActive]=\"freehandDrawIsActive\"\n [controlOptions]=\"controlOptions\"\n [drawStyle]=\"drawStyle\"\n [overlayStyle]=\"overlayStyle\"\n>\n</igo-geometry-form-field-input>\n\n<div *ngIf=\"geometryTypeField\" class=\"geometry-type-toggle\">\n <mat-button-toggle-group\n [disabled]=\"(value$ | async) !== undefined\"\n [(ngModel)]=\"geometryType\"\n >\n <mat-button-toggle\n value=\"Point\"\n [disabled]=\"geometryTypes.indexOf('Point') < 0\"\n >\n {{ 'igo.geo.geometry.point' | translate }}\n </mat-button-toggle>\n <mat-button-toggle\n value=\"LineString\"\n [disabled]=\"geometryTypes.indexOf('LineString') < 0\"\n >\n {{ 'igo.geo.geometry.line' | translate }}\n </mat-button-toggle>\n <mat-button-toggle\n value=\"Polygon\"\n [disabled]=\"geometryTypes.indexOf('Polygon') < 0\"\n >\n {{ 'igo.geo.geometry.polygon' | translate }}\n </mat-button-toggle>\n </mat-button-toggle-group>\n</div>\n\n<mat-form-field *ngIf=\"drawGuideField\" class=\"draw-guide-field\">\n <input\n matInput\n type=\"number\"\n [placeholder]=\"drawGuidePlaceholder\"\n [(ngModel)]=\"drawGuide\"\n />\n <mat-icon matPrefix [color]=\"'primary'\">adjust </mat-icon>\n <span matSuffix class=\"draw-guide-units\">{{\n 'igo.geo.measure.meters' | translate\n }}</span>\n</mat-form-field>\n", styles: [":host{display:block;width:100%}.geometry-type-toggle,.draw-guide-field{width:100%}.geometry-type-toggle{padding:10px;text-align:center}.draw-guide-field mat-icon{margin:0 10px}.draw-guide-units{padding:10px}\n"], dependencies: [{ kind: "component", type: GeometryFormFieldInputComponent, selector: "igo-geometry-form-field-input", inputs: ["map", "geometryType", "drawGuide", "measure", "drawControlIsActive", "freehandDrawIsActive", "predefinedRadius", "controlOptions", "drawStyle", "overlayStyle", "value", "radius"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonToggleModule }, { kind: "directive", type: i2.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }, { kind: "component", type: i2.MatButtonToggle, selector: "mat-button-toggle", inputs: ["aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "disableRipple", "appearance", "checked", "disabled"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
125
125
|
};
|
|
126
126
|
GeometryFormFieldComponent = __decorate([
|
|
127
127
|
IgoFormFieldComponent('geometry'),
|
|
@@ -141,7 +141,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImpor
|
|
|
141
141
|
MatIconModule,
|
|
142
142
|
AsyncPipe,
|
|
143
143
|
TranslateModule
|
|
144
|
-
], template: "<igo-geometry-form-field-input\
|
|
144
|
+
], template: "<igo-geometry-form-field-input\n [formControl]=\"formControl\"\n [map]=\"map\"\n [geometryType]=\"geometryType$ | async\"\n [drawGuide]=\"drawGuide$ | async\"\n [measure]=\"measure\"\n [drawControlIsActive]=\"drawControlIsActive\"\n [freehandDrawIsActive]=\"freehandDrawIsActive\"\n [controlOptions]=\"controlOptions\"\n [drawStyle]=\"drawStyle\"\n [overlayStyle]=\"overlayStyle\"\n>\n</igo-geometry-form-field-input>\n\n<div *ngIf=\"geometryTypeField\" class=\"geometry-type-toggle\">\n <mat-button-toggle-group\n [disabled]=\"(value$ | async) !== undefined\"\n [(ngModel)]=\"geometryType\"\n >\n <mat-button-toggle\n value=\"Point\"\n [disabled]=\"geometryTypes.indexOf('Point') < 0\"\n >\n {{ 'igo.geo.geometry.point' | translate }}\n </mat-button-toggle>\n <mat-button-toggle\n value=\"LineString\"\n [disabled]=\"geometryTypes.indexOf('LineString') < 0\"\n >\n {{ 'igo.geo.geometry.line' | translate }}\n </mat-button-toggle>\n <mat-button-toggle\n value=\"Polygon\"\n [disabled]=\"geometryTypes.indexOf('Polygon') < 0\"\n >\n {{ 'igo.geo.geometry.polygon' | translate }}\n </mat-button-toggle>\n </mat-button-toggle-group>\n</div>\n\n<mat-form-field *ngIf=\"drawGuideField\" class=\"draw-guide-field\">\n <input\n matInput\n type=\"number\"\n [placeholder]=\"drawGuidePlaceholder\"\n [(ngModel)]=\"drawGuide\"\n />\n <mat-icon matPrefix [color]=\"'primary'\">adjust </mat-icon>\n <span matSuffix class=\"draw-guide-units\">{{\n 'igo.geo.measure.meters' | translate\n }}</span>\n</mat-form-field>\n", styles: [":host{display:block;width:100%}.geometry-type-toggle,.draw-guide-field{width:100%}.geometry-type-toggle{padding:10px;text-align:center}.draw-guide-field mat-icon{margin:0 10px}.draw-guide-units{padding:10px}\n"] }]
|
|
145
145
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { formControl: [{
|
|
146
146
|
type: Input
|
|
147
147
|
}], map: [{
|
|
@@ -167,4 +167,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImpor
|
|
|
167
167
|
}], overlayStyle: [{
|
|
168
168
|
type: Input
|
|
169
169
|
}] } });
|
|
170
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvbWV0cnktZm9ybS1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9nZW9tZXRyeS9nZW9tZXRyeS1mb3JtLWZpZWxkL2dlb21ldHJ5LWZvcm0tZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvZ2VvbWV0cnkvZ2VvbWV0cnktZm9ybS1maWVsZC9nZW9tZXRyeS1mb3JtLWZpZWxkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xELE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxLQUFLLEVBR04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLFdBQVcsRUFDWCxtQkFBbUIsRUFDbkIsa0JBQWtCLEVBQ25CLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV6RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFLckQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxlQUFlLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBRXJELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUU5QyxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSx1Q0FBdUMs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O0lBQzdCLENBQUM7dUdBNUhVLDBCQUEwQjsyRkFBMUIsMEJBQTBCLGljQ3ZEdkMscXNEQW9EQSwyUURUSSwrQkFBK0IsdVFBQy9CLFdBQVcsZ3hCQUNYLG1CQUFtQixrTkFDbkIsSUFBSSw0RkFDSixxQkFBcUIsc2hCQUNyQixrQkFBa0IsMmVBQ2xCLGNBQWMsMFdBQ2QsYUFBYSwrS0FDYixTQUFTLDZDQUNULGVBQWU7O0FBR04sMEJBQTBCO0lBcEJ0QyxxQkFBcUIsQ0FBQyxVQUFVLENBQUM7cUNBeUhMLGlCQUFpQjtHQXJHakMsMEJBQTBCLENBNkh0Qzs7MkZBN0hZLDBCQUEwQjtrQkFuQnRDLFNBQVM7K0JBQ0UseUJBQXlCLG1CQUdsQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCwrQkFBK0I7d0JBQy9CLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixJQUFJO3dCQUNKLHFCQUFxQjt3QkFDckIsa0JBQWtCO3dCQUNsQixjQUFjO3dCQUNkLGFBQWE7d0JBQ2IsU0FBUzt3QkFDVCxlQUFlO3FCQUNoQjtzRkFnQ1EsV0FBVztzQkFBbkIsS0FBSztnQkFLRyxHQUFHO3NCQUFYLEtBQUs7Z0JBR0YsWUFBWTtzQkFEZixLQUFLO2dCQWNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFLRyxhQUFhO3NCQUFyQixLQUFLO2dCQUtHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBTUYsU0FBUztzQkFEWixLQUFLO2dCQVlHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFLRyxPQUFPO3NCQUFmLEtBQUs7Z0JBS0csY0FBYztzQkFBdEIsS0FBSztnQkFLRyxTQUFTO3NCQUFqQixLQUFLO2dCQU1HLFlBQVk7c0JBQXBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBc3luY1BpcGUsIE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQge1xyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBJbnB1dCxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0XHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgRm9ybXNNb2R1bGUsXHJcbiAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICBVbnR5cGVkRm9ybUNvbnRyb2xcclxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdEJ1dHRvblRvZ2dsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbi10b2dnbGUnO1xyXG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcclxuXHJcbmltcG9ydCB7IElnb0Zvcm1GaWVsZENvbXBvbmVudCB9IGZyb20gJ0BpZ28yL2NvbW1vbic7XHJcblxyXG5pbXBvcnQgdHlwZSB7IFR5cGUgfSBmcm9tICdvbC9nZW9tL0dlb21ldHJ5JztcclxuaW1wb3J0IHsgU3R5bGVMaWtlIGFzIE9sU3R5bGVMaWtlIH0gZnJvbSAnb2wvc3R5bGUvU3R5bGUnO1xyXG5cclxuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgeyBJZ29NYXAgfSBmcm9tICcuLi8uLi9tYXAvc2hhcmVkL21hcCc7XHJcbmltcG9ydCB7IEdlb0pTT05HZW9tZXRyeSB9IGZyb20gJy4uL3NoYXJlZC9nZW9tZXRyeS5pbnRlcmZhY2VzJztcclxuaW1wb3J0IHsgR2VvbWV0cnlGb3JtRmllbGRJbnB1dENvbXBvbmVudCB9IGZyb20gJy4vZ2VvbWV0cnktZm9ybS1maWVsZC1pbnB1dC5jb21wb25lbnQnO1xyXG5cclxuLyoqXHJcbiAqIFRoaXMgaW5wdXQgYWxsb3dzIGEgdXNlciB0byBkcmF3IGEgbmV3IGdlb21ldHJ5IG9yIHRvIGVkaXRcclxuICogYW4gZXhpc3Rpbmcgb25lIG9uIGEgbWFwLlxyXG4gKi9cclxuQElnb0Zvcm1GaWVsZENvbXBvbmVudCgnZ2VvbWV0cnknKVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2lnby1nZW9tZXRyeS1mb3JtLWZpZWxkJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZ2VvbWV0cnktZm9ybS1maWVsZC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZ2VvbWV0cnktZm9ybS1maWVsZC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgR2VvbWV0cnlGb3JtRmllbGRJbnB1dENvbXBvbmVudCxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIE5nSWYsXHJcbiAgICBNYXRCdXR0b25Ub2dnbGVNb2R1bGUsXHJcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXHJcbiAgICBNYXRJbnB1dE1vZHVsZSxcclxuICAgIE1hdEljb25Nb2R1bGUsXHJcbiAgICBBc3luY1BpcGUsXHJcbiAgICBUcmFuc2xhdGVNb2R1bGVcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBHZW9tZXRyeUZvcm1GaWVsZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICByZWFkb25seSB2YWx1ZSQ6IEJlaGF2aW9yU3ViamVjdDxHZW9KU09OR2VvbWV0cnk+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChcclxuICAgIHVuZGVmaW5lZFxyXG4gICk7XHJcblxyXG4gIHByaXZhdGUgdmFsdWUkJDogU3Vic2NyaXB0aW9uO1xyXG5cclxuICBzZXQgZHJhd0NvbnRyb2xJc0FjdGl2ZSh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5fZHJhd0NvbnRyb2xJc0FjdGl2ZSA9IHZhbHVlO1xyXG4gICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBnZXQgZHJhd0NvbnRyb2xJc0FjdGl2ZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9kcmF3Q29udHJvbElzQWN0aXZlO1xyXG4gIH1cclxuICBwcml2YXRlIF9kcmF3Q29udHJvbElzQWN0aXZlID0gdHJ1ZTtcclxuXHJcbiAgc2V0IGZyZWVoYW5kRHJhd0lzQWN0aXZlKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9mcmVlaGFuZERyYXdJc0FjdGl2ZSA9IHZhbHVlO1xyXG4gICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBnZXQgZnJlZWhhbmREcmF3SXNBY3RpdmUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fZnJlZWhhbmREcmF3SXNBY3RpdmU7XHJcbiAgfVxyXG4gIHByaXZhdGUgX2ZyZWVoYW5kRHJhd0lzQWN0aXZlID0gZmFsc2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBmaWVsZCdzIGZvcm0gY29udHJvbFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGZvcm1Db250cm9sOiBVbnR5cGVkRm9ybUNvbnRyb2w7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBtYXAgdG8gZHJhdyB0aGUgZ2VvbWV0cnkgb25cclxuICAgKi9cclxuICBASW5wdXQoKSBtYXA6IElnb01hcDtcclxuXHJcbiAgQElucHV0KClcclxuICBzZXQgZ2VvbWV0cnlUeXBlKHZhbHVlOiBUeXBlKSB7XHJcbiAgICB0aGlzLmdlb21ldHJ5VHlwZSQubmV4dCh2YWx1ZSk7XHJcbiAgfVxyXG4gIGdldCBnZW9tZXRyeVR5cGUoKTogVHlwZSB7XHJcbiAgICByZXR1cm4gdGhpcy5nZW9tZXRyeVR5cGUkLnZhbHVlO1xyXG4gIH1cclxuICByZWFkb25seSBnZW9tZXRyeVR5cGUkOiBCZWhhdmlvclN1YmplY3Q8VHlwZT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KFxyXG4gICAgdW5kZWZpbmVkXHJcbiAgKTtcclxuXHJcbiAgLyoqXHJcbiAgICogV2hldGhlciBhIGdlb21ldHJ5IHR5cGUgdG9nZ2xlIHNob3VsZCBiZSBkaXNwbGF5ZWRcclxuICAgKi9cclxuICBASW5wdXQoKSBnZW9tZXRyeVR5cGVGaWVsZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBBdmFpbGFibGUgZ2VvbWV0cnkgdHlwZXNcclxuICAgKi9cclxuICBASW5wdXQoKSBnZW9tZXRyeVR5cGVzOiBzdHJpbmdbXSA9IFsnUG9pbnQnLCAnTGluZVN0cmluZycsICdQb2x5Z29uJ107XHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZXRoZXIgYSBkcmF3IGd1aWRlIGZpZWxkIHNob3VsZCBiZSBkaXNwbGF5ZWRcclxuICAgKi9cclxuICBASW5wdXQoKSBkcmF3R3VpZGVGaWVsZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgZHJhd0d1aWRlIGFyb3VuZCB0aGUgbW91c2UgcG9pbnRlciB0byBoZWxwIGRyYXdpbmdcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHNldCBkcmF3R3VpZGUodmFsdWU6IG51bWJlcikge1xyXG4gICAgdGhpcy5kcmF3R3VpZGUkLm5leHQodmFsdWUpO1xyXG4gIH1cclxuICBnZXQgZHJhd0d1aWRlKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5kcmF3R3VpZGUkLnZhbHVlO1xyXG4gIH1cclxuICByZWFkb25seSBkcmF3R3VpZGUkOiBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoMCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIERyYXcgZ3VpZGUgcGxhY2Vob2xkZXJcclxuICAgKi9cclxuICBASW5wdXQoKSBkcmF3R3VpZGVQbGFjZWhvbGRlcjogc3RyaW5nID0gJyc7XHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZXRoZXIgYSBtZWFzdXJlIHRvb2x0aXAgc2hvdWxkIGJlIGRpc3BsYXllZFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIG1lYXN1cmU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgLyoqXHJcbiAgICogQ29udHJvbCBvcHRpb25zXHJcbiAgICovXHJcbiAgQElucHV0KCkgY29udHJvbE9wdGlvbnM6IHsgW2tleTogc3RyaW5nXTogYW55IH0gPSB7fTtcclxuXHJcbiAgLyoqXHJcbiAgICogU3R5bGUgZm9yIHRoZSBkcmF3IGNvbnRyb2wgKGFwcGxpZXMgd2hpbGUgdGhlIGdlb21ldHJ5IGlzIGJlaW5nIGRyYXduKVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGRyYXdTdHlsZTogT2xTdHlsZUxpa2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIFN0eWxlIGZvciB0aGUgb3ZlcmxheSBsYXllciAoYXBwbGllcyBvbmNlIHRoZSBnZW9tZXRyeSBpcyBhZGRlZCB0byB0aGUgbWFwKVxyXG4gICAqIElmIG5vdCBzcGVjaWZpZWQsIGRyYXdTdHlsZSBhcHBsaWVzXHJcbiAgICovXHJcbiAgQElucHV0KCkgb3ZlcmxheVN0eWxlOiBPbFN0eWxlTGlrZTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldCB1cCBhIHZhbHVlIHN0cmVhbVxyXG4gICAqIEBpbnRlcm5hbFxyXG4gICAqL1xyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy52YWx1ZSQubmV4dChcclxuICAgICAgdGhpcy5mb3JtQ29udHJvbC52YWx1ZSA/IHRoaXMuZm9ybUNvbnRyb2wudmFsdWUgOiB1bmRlZmluZWRcclxuICAgICk7XHJcbiAgICB0aGlzLnZhbHVlJCQgPSB0aGlzLmZvcm1Db250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoXHJcbiAgICAgICh2YWx1ZTogR2VvSlNPTkdlb21ldHJ5KSA9PiB7XHJcbiAgICAgICAgdGhpcy52YWx1ZSQubmV4dCh2YWx1ZSA/IHZhbHVlIDogdW5kZWZpbmVkKTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFVuc3Vic2NyaWJlIHRvIHRoZSB2YWx1ZSBzdHJlYW1cclxuICAgKiBAaW50ZXJuYWxcclxuICAgKi9cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMudmFsdWUkJC51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxufVxyXG4iLCI8aWdvLWdlb21ldHJ5LWZvcm0tZmllbGQtaW5wdXRcclxuICBbZm9ybUNvbnRyb2xdPVwiZm9ybUNvbnRyb2xcIlxyXG4gIFttYXBdPVwibWFwXCJcclxuICBbZ2VvbWV0cnlUeXBlXT1cImdlb21ldHJ5VHlwZSQgfCBhc3luY1wiXHJcbiAgW2RyYXdHdWlkZV09XCJkcmF3R3VpZGUkIHwgYXN5bmNcIlxyXG4gIFttZWFzdXJlXT1cIm1lYXN1cmVcIlxyXG4gIFtkcmF3Q29udHJvbElzQWN0aXZlXT1cImRyYXdDb250cm9sSXNBY3RpdmVcIlxyXG4gIFtmcmVlaGFuZERyYXdJc0FjdGl2ZV09XCJmcmVlaGFuZERyYXdJc0FjdGl2ZVwiXHJcbiAgW2NvbnRyb2xPcHRpb25zXT1cImNvbnRyb2xPcHRpb25zXCJcclxuICBbZHJhd1N0eWxlXT1cImRyYXdTdHlsZVwiXHJcbiAgW292ZXJsYXlTdHlsZV09XCJvdmVybGF5U3R5bGVcIlxyXG4+XHJcbjwvaWdvLWdlb21ldHJ5LWZvcm0tZmllbGQtaW5wdXQ+XHJcblxyXG48ZGl2ICpuZ0lmPVwiZ2VvbWV0cnlUeXBlRmllbGRcIiBjbGFzcz1cImdlb21ldHJ5LXR5cGUtdG9nZ2xlXCI+XHJcbiAgPG1hdC1idXR0b24tdG9nZ2xlLWdyb3VwXHJcbiAgICBbZGlzYWJsZWRdPVwiKHZhbHVlJCB8IGFzeW5jKSAhPT0gdW5kZWZpbmVkXCJcclxuICAgIFsobmdNb2RlbCldPVwiZ2VvbWV0cnlUeXBlXCJcclxuICA+XHJcbiAgICA8bWF0LWJ1dHRvbi10b2dnbGVcclxuICAgICAgdmFsdWU9XCJQb2ludFwiXHJcbiAgICAgIFtkaXNhYmxlZF09XCJnZW9tZXRyeVR5cGVzLmluZGV4T2YoJ1BvaW50JykgPCAwXCJcclxuICAgID5cclxuICAgICAge3sgJ2lnby5nZW8uZ2VvbWV0cnkucG9pbnQnIHwgdHJhbnNsYXRlIH19XHJcbiAgICA8L21hdC1idXR0b24tdG9nZ2xlPlxyXG4gICAgPG1hdC1idXR0b24tdG9nZ2xlXHJcbiAgICAgIHZhbHVlPVwiTGluZVN0cmluZ1wiXHJcbiAgICAgIFtkaXNhYmxlZF09XCJnZW9tZXRyeVR5cGVzLmluZGV4T2YoJ0xpbmVTdHJpbmcnKSA8IDBcIlxyXG4gICAgPlxyXG4gICAgICB7eyAnaWdvLmdlby5nZW9tZXRyeS5saW5lJyB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgPC9tYXQtYnV0dG9uLXRvZ2dsZT5cclxuICAgIDxtYXQtYnV0dG9uLXRvZ2dsZVxyXG4gICAgICB2YWx1ZT1cIlBvbHlnb25cIlxyXG4gICAgICBbZGlzYWJsZWRdPVwiZ2VvbWV0cnlUeXBlcy5pbmRleE9mKCdQb2x5Z29uJykgPCAwXCJcclxuICAgID5cclxuICAgICAge3sgJ2lnby5nZW8uZ2VvbWV0cnkucG9seWdvbicgfCB0cmFuc2xhdGUgfX1cclxuICAgIDwvbWF0LWJ1dHRvbi10b2dnbGU+XHJcbiAgPC9tYXQtYnV0dG9uLXRvZ2dsZS1ncm91cD5cclxuPC9kaXY+XHJcblxyXG48bWF0LWZvcm0tZmllbGQgKm5nSWY9XCJkcmF3R3VpZGVGaWVsZFwiIGNsYXNzPVwiZHJhdy1ndWlkZS1maWVsZFwiPlxyXG4gIDxpbnB1dFxyXG4gICAgbWF0SW5wdXRcclxuICAgIHR5cGU9XCJudW1iZXJcIlxyXG4gICAgW3BsYWNlaG9sZGVyXT1cImRyYXdHdWlkZVBsYWNlaG9sZGVyXCJcclxuICAgIFsobmdNb2RlbCldPVwiZHJhd0d1aWRlXCJcclxuICAvPlxyXG4gIDxtYXQtaWNvbiBtYXRQcmVmaXggW2NvbG9yXT1cIidwcmltYXJ5J1wiIHN2Z0ljb249XCJhZGp1c3RcIj4gPC9tYXQtaWNvbj5cclxuICA8c3BhbiBtYXRTdWZmaXggY2xhc3M9XCJkcmF3LWd1aWRlLXVuaXRzXCI+e3tcclxuICAgICdpZ28uZ2VvLm1lYXN1cmUubWV0ZXJzJyB8IHRyYW5zbGF0ZVxyXG4gIH19PC9zcGFuPlxyXG48L21hdC1mb3JtLWZpZWxkPlxyXG4iXX0=
|
|
170
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvbWV0cnktZm9ybS1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9nZW9tZXRyeS9nZW9tZXRyeS1mb3JtLWZpZWxkL2dlb21ldHJ5LWZvcm0tZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvZ2VvbWV0cnkvZ2VvbWV0cnktZm9ybS1maWVsZC9nZW9tZXRyeS1mb3JtLWZpZWxkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xELE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxLQUFLLEVBR04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLFdBQVcsRUFDWCxtQkFBbUIsRUFDbkIsa0JBQWtCLEVBQ25CLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV6RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFLckQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxlQUFlLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBRXJELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUU5QyxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSx1Q0FBdUMs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O0lBQzdCLENBQUM7dUdBNUhVLDBCQUEwQjsyRkFBMUIsMEJBQTBCLGljQ3ZEdkMsZ2xEQW9EQSwyUURUSSwrQkFBK0IsdVFBQy9CLFdBQVcsZ3hCQUNYLG1CQUFtQixrTkFDbkIsSUFBSSw0RkFDSixxQkFBcUIsc2hCQUNyQixrQkFBa0IsMmVBQ2xCLGNBQWMsMFdBQ2QsYUFBYSwrS0FDYixTQUFTLDZDQUNULGVBQWU7O0FBR04sMEJBQTBCO0lBcEJ0QyxxQkFBcUIsQ0FBQyxVQUFVLENBQUM7cUNBeUhMLGlCQUFpQjtHQXJHakMsMEJBQTBCLENBNkh0Qzs7MkZBN0hZLDBCQUEwQjtrQkFuQnRDLFNBQVM7K0JBQ0UseUJBQXlCLG1CQUdsQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCwrQkFBK0I7d0JBQy9CLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixJQUFJO3dCQUNKLHFCQUFxQjt3QkFDckIsa0JBQWtCO3dCQUNsQixjQUFjO3dCQUNkLGFBQWE7d0JBQ2IsU0FBUzt3QkFDVCxlQUFlO3FCQUNoQjtzRkFnQ1EsV0FBVztzQkFBbkIsS0FBSztnQkFLRyxHQUFHO3NCQUFYLEtBQUs7Z0JBR0YsWUFBWTtzQkFEZixLQUFLO2dCQWNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFLRyxhQUFhO3NCQUFyQixLQUFLO2dCQUtHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBTUYsU0FBUztzQkFEWixLQUFLO2dCQVlHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFLRyxPQUFPO3NCQUFmLEtBQUs7Z0JBS0csY0FBYztzQkFBdEIsS0FBSztnQkFLRyxTQUFTO3NCQUFqQixLQUFLO2dCQU1HLFlBQVk7c0JBQXBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBc3luY1BpcGUsIE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEZvcm1zTW9kdWxlLFxuICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICBVbnR5cGVkRm9ybUNvbnRyb2xcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0QnV0dG9uVG9nZ2xlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uLXRvZ2dsZSc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuXG5pbXBvcnQgeyBJZ29Gb3JtRmllbGRDb21wb25lbnQgfSBmcm9tICdAaWdvMi9jb21tb24nO1xuXG5pbXBvcnQgdHlwZSB7IFR5cGUgfSBmcm9tICdvbC9nZW9tL0dlb21ldHJ5JztcbmltcG9ydCB7IFN0eWxlTGlrZSBhcyBPbFN0eWxlTGlrZSB9IGZyb20gJ29sL3N0eWxlL1N0eWxlJztcblxuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBJZ29NYXAgfSBmcm9tICcuLi8uLi9tYXAvc2hhcmVkL21hcCc7XG5pbXBvcnQgeyBHZW9KU09OR2VvbWV0cnkgfSBmcm9tICcuLi9zaGFyZWQvZ2VvbWV0cnkuaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBHZW9tZXRyeUZvcm1GaWVsZElucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9nZW9tZXRyeS1mb3JtLWZpZWxkLWlucHV0LmNvbXBvbmVudCc7XG5cbi8qKlxuICogVGhpcyBpbnB1dCBhbGxvd3MgYSB1c2VyIHRvIGRyYXcgYSBuZXcgZ2VvbWV0cnkgb3IgdG8gZWRpdFxuICogYW4gZXhpc3Rpbmcgb25lIG9uIGEgbWFwLlxuICovXG5ASWdvRm9ybUZpZWxkQ29tcG9uZW50KCdnZW9tZXRyeScpXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpZ28tZ2VvbWV0cnktZm9ybS1maWVsZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9nZW9tZXRyeS1mb3JtLWZpZWxkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZ2VvbWV0cnktZm9ybS1maWVsZC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIEdlb21ldHJ5Rm9ybUZpZWxkSW5wdXRDb21wb25lbnQsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBOZ0lmLFxuICAgIE1hdEJ1dHRvblRvZ2dsZU1vZHVsZSxcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBBc3luY1BpcGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgR2VvbWV0cnlGb3JtRmllbGRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHJlYWRvbmx5IHZhbHVlJDogQmVoYXZpb3JTdWJqZWN0PEdlb0pTT05HZW9tZXRyeT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KFxuICAgIHVuZGVmaW5lZFxuICApO1xuXG4gIHByaXZhdGUgdmFsdWUkJDogU3Vic2NyaXB0aW9uO1xuXG4gIHNldCBkcmF3Q29udHJvbElzQWN0aXZlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZHJhd0NvbnRyb2xJc0FjdGl2ZSA9IHZhbHVlO1xuICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgZ2V0IGRyYXdDb250cm9sSXNBY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2RyYXdDb250cm9sSXNBY3RpdmU7XG4gIH1cbiAgcHJpdmF0ZSBfZHJhd0NvbnRyb2xJc0FjdGl2ZSA9IHRydWU7XG5cbiAgc2V0IGZyZWVoYW5kRHJhd0lzQWN0aXZlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZnJlZWhhbmREcmF3SXNBY3RpdmUgPSB2YWx1ZTtcbiAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIGdldCBmcmVlaGFuZERyYXdJc0FjdGl2ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZnJlZWhhbmREcmF3SXNBY3RpdmU7XG4gIH1cbiAgcHJpdmF0ZSBfZnJlZWhhbmREcmF3SXNBY3RpdmUgPSBmYWxzZTtcblxuICAvKipcbiAgICogVGhlIGZpZWxkJ3MgZm9ybSBjb250cm9sXG4gICAqL1xuICBASW5wdXQoKSBmb3JtQ29udHJvbDogVW50eXBlZEZvcm1Db250cm9sO1xuXG4gIC8qKlxuICAgKiBUaGUgbWFwIHRvIGRyYXcgdGhlIGdlb21ldHJ5IG9uXG4gICAqL1xuICBASW5wdXQoKSBtYXA6IElnb01hcDtcblxuICBASW5wdXQoKVxuICBzZXQgZ2VvbWV0cnlUeXBlKHZhbHVlOiBUeXBlKSB7XG4gICAgdGhpcy5nZW9tZXRyeVR5cGUkLm5leHQodmFsdWUpO1xuICB9XG4gIGdldCBnZW9tZXRyeVR5cGUoKTogVHlwZSB7XG4gICAgcmV0dXJuIHRoaXMuZ2VvbWV0cnlUeXBlJC52YWx1ZTtcbiAgfVxuICByZWFkb25seSBnZW9tZXRyeVR5cGUkOiBCZWhhdmlvclN1YmplY3Q8VHlwZT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KFxuICAgIHVuZGVmaW5lZFxuICApO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIGEgZ2VvbWV0cnkgdHlwZSB0b2dnbGUgc2hvdWxkIGJlIGRpc3BsYXllZFxuICAgKi9cbiAgQElucHV0KCkgZ2VvbWV0cnlUeXBlRmllbGQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogQXZhaWxhYmxlIGdlb21ldHJ5IHR5cGVzXG4gICAqL1xuICBASW5wdXQoKSBnZW9tZXRyeVR5cGVzOiBzdHJpbmdbXSA9IFsnUG9pbnQnLCAnTGluZVN0cmluZycsICdQb2x5Z29uJ107XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgYSBkcmF3IGd1aWRlIGZpZWxkIHNob3VsZCBiZSBkaXNwbGF5ZWRcbiAgICovXG4gIEBJbnB1dCgpIGRyYXdHdWlkZUZpZWxkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFRoZSBkcmF3R3VpZGUgYXJvdW5kIHRoZSBtb3VzZSBwb2ludGVyIHRvIGhlbHAgZHJhd2luZ1xuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IGRyYXdHdWlkZSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5kcmF3R3VpZGUkLm5leHQodmFsdWUpO1xuICB9XG4gIGdldCBkcmF3R3VpZGUoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5kcmF3R3VpZGUkLnZhbHVlO1xuICB9XG4gIHJlYWRvbmx5IGRyYXdHdWlkZSQ6IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+ID0gbmV3IEJlaGF2aW9yU3ViamVjdCgwKTtcblxuICAvKipcbiAgICogRHJhdyBndWlkZSBwbGFjZWhvbGRlclxuICAgKi9cbiAgQElucHV0KCkgZHJhd0d1aWRlUGxhY2Vob2xkZXI6IHN0cmluZyA9ICcnO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIGEgbWVhc3VyZSB0b29sdGlwIHNob3VsZCBiZSBkaXNwbGF5ZWRcbiAgICovXG4gIEBJbnB1dCgpIG1lYXN1cmU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogQ29udHJvbCBvcHRpb25zXG4gICAqL1xuICBASW5wdXQoKSBjb250cm9sT3B0aW9uczogeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9IHt9O1xuXG4gIC8qKlxuICAgKiBTdHlsZSBmb3IgdGhlIGRyYXcgY29udHJvbCAoYXBwbGllcyB3aGlsZSB0aGUgZ2VvbWV0cnkgaXMgYmVpbmcgZHJhd24pXG4gICAqL1xuICBASW5wdXQoKSBkcmF3U3R5bGU6IE9sU3R5bGVMaWtlO1xuXG4gIC8qKlxuICAgKiBTdHlsZSBmb3IgdGhlIG92ZXJsYXkgbGF5ZXIgKGFwcGxpZXMgb25jZSB0aGUgZ2VvbWV0cnkgaXMgYWRkZWQgdG8gdGhlIG1hcClcbiAgICogSWYgbm90IHNwZWNpZmllZCwgZHJhd1N0eWxlIGFwcGxpZXNcbiAgICovXG4gIEBJbnB1dCgpIG92ZXJsYXlTdHlsZTogT2xTdHlsZUxpa2U7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgLyoqXG4gICAqIFNldCB1cCBhIHZhbHVlIHN0cmVhbVxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMudmFsdWUkLm5leHQoXG4gICAgICB0aGlzLmZvcm1Db250cm9sLnZhbHVlID8gdGhpcy5mb3JtQ29udHJvbC52YWx1ZSA6IHVuZGVmaW5lZFxuICAgICk7XG4gICAgdGhpcy52YWx1ZSQkID0gdGhpcy5mb3JtQ29udHJvbC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKFxuICAgICAgKHZhbHVlOiBHZW9KU09OR2VvbWV0cnkpID0+IHtcbiAgICAgICAgdGhpcy52YWx1ZSQubmV4dCh2YWx1ZSA/IHZhbHVlIDogdW5kZWZpbmVkKTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFVuc3Vic2NyaWJlIHRvIHRoZSB2YWx1ZSBzdHJlYW1cbiAgICogQGludGVybmFsXG4gICAqL1xuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnZhbHVlJCQudW5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIiwiPGlnby1nZW9tZXRyeS1mb3JtLWZpZWxkLWlucHV0XG4gIFtmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbFwiXG4gIFttYXBdPVwibWFwXCJcbiAgW2dlb21ldHJ5VHlwZV09XCJnZW9tZXRyeVR5cGUkIHwgYXN5bmNcIlxuICBbZHJhd0d1aWRlXT1cImRyYXdHdWlkZSQgfCBhc3luY1wiXG4gIFttZWFzdXJlXT1cIm1lYXN1cmVcIlxuICBbZHJhd0NvbnRyb2xJc0FjdGl2ZV09XCJkcmF3Q29udHJvbElzQWN0aXZlXCJcbiAgW2ZyZWVoYW5kRHJhd0lzQWN0aXZlXT1cImZyZWVoYW5kRHJhd0lzQWN0aXZlXCJcbiAgW2NvbnRyb2xPcHRpb25zXT1cImNvbnRyb2xPcHRpb25zXCJcbiAgW2RyYXdTdHlsZV09XCJkcmF3U3R5bGVcIlxuICBbb3ZlcmxheVN0eWxlXT1cIm92ZXJsYXlTdHlsZVwiXG4+XG48L2lnby1nZW9tZXRyeS1mb3JtLWZpZWxkLWlucHV0PlxuXG48ZGl2ICpuZ0lmPVwiZ2VvbWV0cnlUeXBlRmllbGRcIiBjbGFzcz1cImdlb21ldHJ5LXR5cGUtdG9nZ2xlXCI+XG4gIDxtYXQtYnV0dG9uLXRvZ2dsZS1ncm91cFxuICAgIFtkaXNhYmxlZF09XCIodmFsdWUkIHwgYXN5bmMpICE9PSB1bmRlZmluZWRcIlxuICAgIFsobmdNb2RlbCldPVwiZ2VvbWV0cnlUeXBlXCJcbiAgPlxuICAgIDxtYXQtYnV0dG9uLXRvZ2dsZVxuICAgICAgdmFsdWU9XCJQb2ludFwiXG4gICAgICBbZGlzYWJsZWRdPVwiZ2VvbWV0cnlUeXBlcy5pbmRleE9mKCdQb2ludCcpIDwgMFwiXG4gICAgPlxuICAgICAge3sgJ2lnby5nZW8uZ2VvbWV0cnkucG9pbnQnIHwgdHJhbnNsYXRlIH19XG4gICAgPC9tYXQtYnV0dG9uLXRvZ2dsZT5cbiAgICA8bWF0LWJ1dHRvbi10b2dnbGVcbiAgICAgIHZhbHVlPVwiTGluZVN0cmluZ1wiXG4gICAgICBbZGlzYWJsZWRdPVwiZ2VvbWV0cnlUeXBlcy5pbmRleE9mKCdMaW5lU3RyaW5nJykgPCAwXCJcbiAgICA+XG4gICAgICB7eyAnaWdvLmdlby5nZW9tZXRyeS5saW5lJyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvbWF0LWJ1dHRvbi10b2dnbGU+XG4gICAgPG1hdC1idXR0b24tdG9nZ2xlXG4gICAgICB2YWx1ZT1cIlBvbHlnb25cIlxuICAgICAgW2Rpc2FibGVkXT1cImdlb21ldHJ5VHlwZXMuaW5kZXhPZignUG9seWdvbicpIDwgMFwiXG4gICAgPlxuICAgICAge3sgJ2lnby5nZW8uZ2VvbWV0cnkucG9seWdvbicgfCB0cmFuc2xhdGUgfX1cbiAgICA8L21hdC1idXR0b24tdG9nZ2xlPlxuICA8L21hdC1idXR0b24tdG9nZ2xlLWdyb3VwPlxuPC9kaXY+XG5cbjxtYXQtZm9ybS1maWVsZCAqbmdJZj1cImRyYXdHdWlkZUZpZWxkXCIgY2xhc3M9XCJkcmF3LWd1aWRlLWZpZWxkXCI+XG4gIDxpbnB1dFxuICAgIG1hdElucHV0XG4gICAgdHlwZT1cIm51bWJlclwiXG4gICAgW3BsYWNlaG9sZGVyXT1cImRyYXdHdWlkZVBsYWNlaG9sZGVyXCJcbiAgICBbKG5nTW9kZWwpXT1cImRyYXdHdWlkZVwiXG4gIC8+XG4gIDxtYXQtaWNvbiBtYXRQcmVmaXggW2NvbG9yXT1cIidwcmltYXJ5J1wiPmFkanVzdCA8L21hdC1pY29uPlxuICA8c3BhbiBtYXRTdWZmaXggY2xhc3M9XCJkcmF3LWd1aWRlLXVuaXRzXCI+e3tcbiAgICAnaWdvLmdlby5tZWFzdXJlLm1ldGVycycgfCB0cmFuc2xhdGVcbiAgfX08L3NwYW4+XG48L21hdC1mb3JtLWZpZWxkPlxuIl19
|
|
@@ -17,4 +17,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImpor
|
|
|
17
17
|
exports: [GeometryFormFieldComponent, GeometryFormFieldInputComponent]
|
|
18
18
|
}]
|
|
19
19
|
}] });
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvbWV0cnktZm9ybS1maWVsZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9nZW9tZXRyeS9nZW9tZXRyeS1mb3JtLWZpZWxkL2dlb21ldHJ5LWZvcm0tZmllbGQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDeEYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7O0FBRTdFOztHQUVHO0FBS0gsTUFBTSxPQUFPLDBCQUEwQjt1R0FBMUIsMEJBQTBCO3dHQUExQiwwQkFBMEIsWUFIM0IsMEJBQTBCLEVBQUUsK0JBQStCLGFBQzNELDBCQUEwQixFQUFFLCtCQUErQjt3R0FFMUQsMEJBQTBCLFlBSDNCLDBCQUEwQjs7MkZBR3pCLDBCQUEwQjtrQkFKdEMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQywwQkFBMEIsRUFBRSwrQkFBK0IsQ0FBQztvQkFDdEUsT0FBTyxFQUFFLENBQUMsMEJBQTBCLEVBQUUsK0JBQStCLENBQUM7aUJBQ3ZFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgR2VvbWV0cnlGb3JtRmllbGRJbnB1dENvbXBvbmVudCB9IGZyb20gJy4vZ2VvbWV0cnktZm9ybS1maWVsZC1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgR2VvbWV0cnlGb3JtRmllbGRDb21wb25lbnQgfSBmcm9tICcuL2dlb21ldHJ5LWZvcm0tZmllbGQuY29tcG9uZW50JztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCBpbXBvcnQgdGhlIGNvbXBvbmVudHMgZGlyZWN0bHkgb3IgdGhlIEdFT01FVFJZX0ZPUk1fRklFTERfRElSRUNUSVZFUyBmb3IgdGhlIHNldFxuICovXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbR2VvbWV0cnlGb3JtRmllbGRDb21wb25lbnQsIEdlb21ldHJ5Rm9ybUZpZWxkSW5wdXRDb21wb25lbnRdLFxuICBleHBvcnRzOiBbR2VvbWV0cnlGb3JtRmllbGRDb21wb25lbnQsIEdlb21ldHJ5Rm9ybUZpZWxkSW5wdXRDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIElnb0dlb21ldHJ5Rm9ybUZpZWxkTW9kdWxlIHt9XG4iXX0=
|
|
@@ -6,4 +6,4 @@ export const GEOMETRY_FORM_FIELD_DIRECTIVES = [
|
|
|
6
6
|
GeometryFormFieldComponent,
|
|
7
7
|
GeometryFormFieldInputComponent
|
|
8
8
|
];
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9nZW9tZXRyeS9nZW9tZXRyeS1mb3JtLWZpZWxkL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRTdFLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUVoRCxNQUFNLENBQUMsTUFBTSw4QkFBOEIsR0FBRztJQUM1QywwQkFBMEI7SUFDMUIsK0JBQStCO0NBQ3ZCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHZW9tZXRyeUZvcm1GaWVsZElucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9nZW9tZXRyeS1mb3JtLWZpZWxkLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHZW9tZXRyeUZvcm1GaWVsZENvbXBvbmVudCB9IGZyb20gJy4vZ2VvbWV0cnktZm9ybS1maWVsZC5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2dlb21ldHJ5LWZvcm0tZmllbGQtaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZ2VvbWV0cnktZm9ybS1maWVsZC5jb21wb25lbnQnO1xuXG5leHBvcnQgY29uc3QgR0VPTUVUUllfRk9STV9GSUVMRF9ESVJFQ1RJVkVTID0gW1xuICBHZW9tZXRyeUZvcm1GaWVsZENvbXBvbmVudCxcbiAgR2VvbWV0cnlGb3JtRmllbGRJbnB1dENvbXBvbmVudFxuXSBhcyBjb25zdDtcbiJdfQ==
|
|
@@ -15,4 +15,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImpor
|
|
|
15
15
|
exports: [IgoGeometryFormFieldModule]
|
|
16
16
|
}]
|
|
17
17
|
}] });
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvbWV0cnkubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvZ2VvbWV0cnkvZ2VvbWV0cnkubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sa0RBQWtELENBQUM7O0FBRTlGOztHQUVHO0FBSUgsTUFBTSxPQUFPLGlCQUFpQjt1R0FBakIsaUJBQWlCO3dHQUFqQixpQkFBaUIsWUFGbEIsMEJBQTBCO3dHQUV6QixpQkFBaUIsWUFGbEIsMEJBQTBCOzsyRkFFekIsaUJBQWlCO2tCQUg3QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLDBCQUEwQixDQUFDO2lCQUN0QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IElnb0dlb21ldHJ5Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnLi9nZW9tZXRyeS1mb3JtLWZpZWxkL2dlb21ldHJ5LWZvcm0tZmllbGQubW9kdWxlJztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCBpbXBvcnQgdGhlIGNvbXBvbmVudHMgZGlyZWN0bHkgb3IgdGhlIEdFT01FVFJZX0ZPUk1fRklFTERfRElSRUNUSVZFUyBmb3IgdGhlIHNldFxuICovXG5ATmdNb2R1bGUoe1xuICBleHBvcnRzOiBbSWdvR2VvbWV0cnlGb3JtRmllbGRNb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIElnb0dlb21ldHJ5TW9kdWxlIHt9XG4iXX0=
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export * from './shared';
|
|
2
2
|
export * from './geometry-form-field';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9nZW9tZXRyeS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQnO1xuZXhwb3J0ICogZnJvbSAnLi9nZW9tZXRyeS1mb3JtLWZpZWxkJztcbiJdfQ==
|
|
@@ -337,4 +337,4 @@ export class DrawControl {
|
|
|
337
337
|
}
|
|
338
338
|
}
|
|
339
339
|
}
|
|
340
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhdy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2dlb21ldHJ5L3NoYXJlZC9jb250cm9scy9kcmF3LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHeEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBR2xELE9BQU8sTUFBTSxNQUFNLHFCQUFxQixDQUFDO0FBRXpDLE9BQU8sUUFBUSxNQUFNLHVCQUF1QixDQUFDO0FBQzdDLE9BQU8sUUFBUSxNQUFNLHVCQUF1QixDQUFDO0FBRTdDLE9BQU8sYUFBYSxNQUFNLGlCQUFpQixDQUFDO0FBQzVDLE9BQU8sY0FBYyxNQUFNLGtCQUFrQixDQUFDO0FBRzlDLE9BQU8sRUFBRSxlQUFlLEVBQUUsT0FBTyxFQUFnQixTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFekUsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFXeEU7O0dBRUc7QUFDSCxNQUFNLE9BQU8sV0FBVztJQW9GRjtJQW5GcEI7O09BRUc7SUFDSSxNQUFNLEdBQXdCLElBQUksT0FBTyxFQUFFLENBQUM7SUFFbkQ7O09BRUc7SUFDSSxJQUFJLEdBQXdCLElBQUksT0FBTyxFQUFFLENBQUM7SUFFakQ7O09BRUc7SUFDSSxRQUFRLEdBQWlCLElBQUksT0FBTyxFQUFFLENBQUM7SUFFOUM7O09BRUc7SUFDSSxPQUFPLEdBQXdCLElBQUksT0FBTyxFQUFFLENBQUM7SUFFcEQ7O09BRUc7SUFDSSxPQUFPLEdBQWlCLElBQUksT0FBTyxFQUFFLENBQUM7SUFFN0M7O09BRUc7SUFDSSxNQUFNLEdBQWlCLElBQUksT0FBTyxFQUFFLENBQUM7SUFFNUM7O09BRUc7SUFDSCxTQUFTLEdBQTZCLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lB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QUVHO0lBQ0ssa0JBQWtCO1FBQ3hCLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDN0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDN0IsQ0FBQztJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBPbE1hcCBmcm9tICdvbC9NYXAnO1xyXG5pbXBvcnQgeyB1bkJ5S2V5IH0gZnJvbSAnb2wvT2JzZXJ2YWJsZSc7XHJcbmltcG9ydCB7IEV2ZW50c0tleSB9IGZyb20gJ29sL2V2ZW50cyc7XHJcbmltcG9ydCBCYXNpY0V2ZW50IGZyb20gJ29sL2V2ZW50cy9FdmVudCc7XHJcbmltcG9ydCB7IGRvdWJsZUNsaWNrIH0gZnJvbSAnb2wvZXZlbnRzL2NvbmRpdGlvbic7XHJcbmltcG9ydCB0eXBlIHsgVHlwZSB9IGZyb20gJ29sL2dlb20vR2VvbWV0cnknO1xyXG5pbXBvcnQgdHlwZSB7IGRlZmF1bHQgYXMgT2xHZW9tZXRyeSB9IGZyb20gJ29sL2dlb20vR2VvbWV0cnknO1xyXG5pbXBvcnQgT2xEcmF3IGZyb20gJ29sL2ludGVyYWN0aW9uL0RyYXcnO1xyXG5pbXBvcnQgeyBEcmF3RXZlbnQgYXMgT2xEcmF3RXZlbnQgfSBmcm9tICdvbC9pbnRlcmFjdGlvbi9EcmF3JztcclxuaW1wb3J0IE9sTW9kaWZ5IGZyb20gJ29sL2ludGVyYWN0aW9uL01vZGlmeSc7XHJcbmltcG9ydCBPbFNlbGVjdCBmcm9tICdvbC9pbnRlcmFjdGlvbi9TZWxlY3QnO1xyXG5pbXBvcnQgeyBTZWxlY3RFdmVudCBhcyBPbFNlbGVjdEV2ZW50IH0gZnJvbSAnb2wvaW50ZXJhY3Rpb24vU2VsZWN0JztcclxuaW1wb3J0IE9sVmVjdG9yTGF5ZXIgZnJvbSAnb2wvbGF5ZXIvVmVjdG9yJztcclxuaW1wb3J0IE9sVmVjdG9yU291cmNlIGZyb20gJ29sL3NvdXJjZS9WZWN0b3InO1xyXG5pbXBvcnQgeyBTdHlsZUxpa2UgYXMgT2xTdHlsZUxpa2UgfSBmcm9tICdvbC9zdHlsZS9TdHlsZSc7XHJcblxyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YmplY3QsIFN1YnNjcmlwdGlvbiwgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgeyBnZXRNb3VzZVBvc2l0aW9uRnJvbU9sR2VvbWV0cnlFdmVudCB9IGZyb20gJy4uL2dlb21ldHJ5LnV0aWxzJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRHJhd0NvbnRyb2xPcHRpb25zIHtcclxuICBnZW9tZXRyeVR5cGU6IFR5cGUgfCBzdHJpbmc7XHJcbiAgZHJhd2luZ0xheWVyU291cmNlPzogT2xWZWN0b3JTb3VyY2U8T2xHZW9tZXRyeT47XHJcbiAgZHJhd2luZ0xheWVyPzogT2xWZWN0b3JMYXllcjxPbFZlY3RvclNvdXJjZTxPbEdlb21ldHJ5Pj47XHJcbiAgZHJhd2luZ0xheWVyU3R5bGU/OiBPbFN0eWxlTGlrZTtcclxuICBpbnRlcmFjdGlvblN0eWxlPzogT2xTdHlsZUxpa2U7XHJcbiAgbWF4UG9pbnRzPzogbnVtYmVyO1xyXG59XHJcblxyXG4vKipcclxuICogQ29udHJvbCB0byBkcmF3IGVudGl0aWVzXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgRHJhd0NvbnRyb2wge1xyXG4gIC8qKlxyXG4gICAqIERyYXcgc3RhcnQgb2JzZXJ2YWJsZVxyXG4gICAqL1xyXG4gIHB1YmxpYyBzdGFydCQ6IFN1YmplY3Q8T2xHZW9tZXRyeT4gPSBuZXcgU3ViamVjdCgpO1xyXG5cclxuICAvKipcclxuICAgKiBEcmF3IGVuZCBvYnNlcnZhYmxlXHJcbiAgICovXHJcbiAgcHVibGljIGVuZCQ6IFN1YmplY3Q8T2xHZW9tZXRyeT4gPSBuZXcgU3ViamVjdCgpO1xyXG5cclxuICAvKipcclxuICAgKiBEcmF3IGNoYW5nZXMgb2JzZXJ2YWJsZSAod2hpbGUgZHJhd2luZylcclxuICAgKi9cclxuICBwdWJsaWMgY2hhbmdlcyQ6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0KCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIERyYXcgbW9kaWZ5IG9ic2VydmFibGUgKG1vZGlmeSBkcmF3biBmZWF0dXJlcylcclxuICAgKi9cclxuICBwdWJsaWMgbW9kaWZ5JDogU3ViamVjdDxPbEdlb21ldHJ5PiA9IG5ldyBTdWJqZWN0KCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIERyYXcgc2VsZWN0IG9ic2VydmFibGUgKG1vZGlmeSBkcmF3biBmZWF0dXJlcylcclxuICAgKi9cclxuICBwdWJsaWMgc2VsZWN0JDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgLyoqXHJcbiAgICogRHJhdyBhYm9ydCBvYnNlcnZhYmxlIChhYm9ydCBkcmF3biBmZWF0dXJlcylcclxuICAgKi9cclxuICBwdWJsaWMgYWJvcnQkOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdCgpO1xyXG5cclxuICAvKipcclxuICAgKiBGcmVlaGFuZCBtb2RlIG9ic2VydmFibGUgKGRlZmF1bHRzIHRvIGZhbHNlKVxyXG4gICAqL1xyXG4gIGZyZWVoYW5kJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XHJcbiAgLyoqXHJcbiAgICogT2JzZXJ2YWJsZXMgZnJvbSBwcmVkZWZpbmVkIHJhZGl1cyAoZGVmYXVsdHMgdG8gZmFsc2UgYW5kIHVuZGVmaW5lZClcclxuICAgKi9cclxuICBpc3ByZWRlZmluZWRSYWRpdXMkOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcclxuICBwcmVkZWZpbmVkUmFkaXVzJDogQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHVuZGVmaW5lZCk7XHJcbiAgcmFkaXVzRHJhd0VuZCQ6IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+ID0gbmV3IEJlaGF2aW9yU3ViamVjdCh1bmRlZmluZWQpO1xyXG5cclxuICBwcml2YXRlIGtleURvd24kJDogU3Vic2NyaXB0aW9uO1xyXG5cclxuICBwcml2YXRlIG9sR2VvbWV0cnlUeXBlOiB0eXBlb2YgT2xHZW9tZXRyeSB8IHVuZGVmaW5lZCB8IHN0cmluZztcclxuICBwcml2YXRlIG9sSW50ZXJhY3Rpb25TdHlsZTogT2xTdHlsZUxpa2U7XHJcbiAgcHJpdmF0ZSBvbE1hcDogT2xNYXA7XHJcbiAgcHJpdmF0ZSBvbERyYXdpbmdMYXllcjogT2xWZWN0b3JMYXllcjxPbFZlY3RvclNvdXJjZTxPbEdlb21ldHJ5Pj47XHJcbiAgcHJpdmF0ZSBvbERyYXdJbnRlcmFjdGlvbjogT2xEcmF3O1xyXG4gIHByaXZhdGUgb2xTZWxlY3RJbnRlcmFjdGlvbjogT2xTZWxlY3Q7XHJcbiAgcHJpdmF0ZSBvbE1vZGlmeUludGVyYWN0aW9uOiBPbE1vZGlmeTtcclxuICBwcml2YXRlIG9uRHJhd1N0YXJ0S2V5OiBFdmVudHNLZXk7XHJcbiAgcHJpdmF0ZSBvbkRyYXdFbmRLZXk6IEV2ZW50c0tleTtcclxuICBwcml2YXRlIG9uRHJhd0Fib3J0S2V5OiBFdmVudHNLZXk7XHJcbiAgcHJpdmF0ZSBvbkRyYXdLZXk6IEV2ZW50c0tleTtcclxuICBwdWJsaWMgcmFkaXVzOiBudW1iZXI7XHJcblxyXG4gIHByaXZhdGUgbW91c2VQb3NpdGlvbjogW251bWJlciwgbnVtYmVyXTtcclxuXHJcbiAgLyoqXHJcbiAgICogdGFrZSB0aGUgdmFsdWUgb2YgcmFkaXVzXHJcbiAgICovXHJcbiAgZ2V0IHJhZGl1c1ZhbCgpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMucHJlZGVmaW5lZFJhZGl1cyQuZ2V0VmFsdWUoKTtcclxuICB9XHJcbiAgc2V0IHJhZGl1c1ZhbERhdGEocmFkaXVzQ2VyY2xlOiBudW1iZXIpIHtcclxuICAgIHRoaXMucHJlZGVmaW5lZFJhZGl1cyQubmV4dChyYWRpdXNDZXJjbGUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogV2hldGVyIHRoZSBjb250cm9sIGlzIGFjdGl2ZVxyXG4gICAqL1xyXG4gIGdldCBhY3RpdmUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5vbE1hcCAhPT0gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogT0wgb3ZlcmxheSBzb3VyY2VcclxuICAgKiBAaW50ZXJuYWxcclxuICAgKi9cclxuICBnZXQgb2xEcmF3aW5nTGF5ZXJTb3VyY2UoKTogT2xWZWN0b3JTb3VyY2U8T2xHZW9tZXRyeT4ge1xyXG4gICAgcmV0dXJuIHRoaXMub2xEcmF3aW5nTGF5ZXIuZ2V0U291cmNlKCk7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG9wdGlvbnM6IERyYXdDb250cm9sT3B0aW9ucykge1xyXG4gICAgdGhpcy5vbERyYXdpbmdMYXllciA9IG9wdGlvbnMuZHJhd2luZ0xheWVyXHJcbiAgICAgID8gb3B0aW9ucy5kcmF3aW5nTGF5ZXJcclxuICAgICAgOiB0aGlzLmNyZWF0ZU9sSW5uZXJPdmVybGF5TGF5ZXIoKTtcclxuICAgIHRoaXMub2xHZW9tZXRyeVR5cGUgPSB0aGlzLm9wdGlvbnMuZ2VvbWV0cnlUeXBlO1xyXG4gICAgdGhpcy5vbEludGVyYWN0aW9uU3R5bGUgPSB0aGlzLm9wdGlvbnMuaW50ZXJhY3Rpb25TdHlsZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEFkZCBvciByZW1vdmUgdGhpcyBjb250cm9sIHRvL2Zyb20gYSBtYXAuXHJcbiAgICogQHBhcmFtIG1hcCBPTCBNYXBcclxuICAgKi9cclxuICBzZXRPbE1hcChvbE1hcDogT2xNYXAgfCB1bmRlZmluZWQsIGFjdGl2YXRlTW9kaWZ5QW5kU2VsZWN0PzogYm9vbGVhbikge1xyXG4gICAgaWYgKCFvbE1hcCkge1xyXG4gICAgICB0aGlzLmNsZWFyT2xJbm5lck92ZXJsYXlTb3VyY2UoKTtcclxuICAgICAgdGhpcy5yZW1vdmVPbElubmVyT3ZlcmxheUxheWVyKCk7XHJcbiAgICAgIHRoaXMucmVtb3ZlT2xJbnRlcmFjdGlvbnMoKTtcclxuICAgICAgdGhpcy5vbE1hcCA9IG9sTWFwO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5vbE1hcCA9IG9sTWFwO1xyXG4gICAgdGhpcy5hZGRPbElubmVyT3ZlcmxheUxheWVyKCk7XHJcbiAgICB0aGlzLmFkZE9sSW50ZXJhY3Rpb25zKGFjdGl2YXRlTW9kaWZ5QW5kU2VsZWN0KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHVybiB0aGUgZHJhd2luZyBsYXllciBzb3VyY2VcclxuICAgKi9cclxuICBnZXRTb3VyY2UoKTogT2xWZWN0b3JTb3VyY2U8T2xHZW9tZXRyeT4ge1xyXG4gICAgcmV0dXJuIHRoaXMub2xEcmF3aW5nTGF5ZXJTb3VyY2U7XHJcbiAgfVxyXG5cclxuICBzZXRPbEludGVyYWN0aW9uU3R5bGUoc3R5bGUpIHtcclxuICAgIHRoaXMub2xJbnRlcmFjdGlvblN0eWxlID0gc3R5bGU7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZXQgdGhlIGN1cnJlbnQgZ2VvbWV0cnkgdHlwZVxyXG4gICAqIEBwYXJhbSBnZW9tZXRyeVR5cGUgdGhlIGdlb21ldHJ5IHR5cGVcclxuICAgKi9cclxuICBzZXRHZW9tZXRyeVR5cGUoZ2VvbWV0cnlUeXBlOiBUeXBlKSB7XHJcbiAgICB0aGlzLm9sR2VvbWV0cnlUeXBlID0gZ2VvbWV0cnlUeXBlO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0IHRoZSBjdXJyZW50IGdlb21ldHJ5IHR5cGVcclxuICAgKi9cclxuICBnZXRHZW9tZXRyeVR5cGUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5vbEdlb21ldHJ5VHlwZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENyZWF0ZSBhIGRyYXdpbmcgc291cmNlIGlmIG5vbmUgaXMgZGVmaW5lZCBpbiB0aGUgb3B0aW9uc1xyXG4gICAqL1xyXG4gIHByaXZhdGUgY3JlYXRlT2xJbm5lck92ZXJsYXlMYXllcigpOiBPbFZlY3RvckxheWVyPFxyXG4gICAgT2xWZWN0b3JTb3VyY2U8T2xHZW9tZXRyeT5cclxuICA+IHtcclxuICAgIHJldHVybiBuZXcgT2xWZWN0b3JMYXllcih7XHJcbiAgICAgIHNvdXJjZTogdGhpcy5vcHRpb25zLmRyYXdpbmdMYXllclNvdXJjZVxyXG4gICAgICAgID8gdGhpcy5vcHRpb25zLmRyYXdpbmdMYXllclNvdXJjZVxyXG4gICAgICAgIDogbmV3IE9sVmVjdG9yU291cmNlKCksXHJcbiAgICAgIHN0eWxlOiB0aGlzLm9wdGlvbnMuZHJhd2luZ0xheWVyU3R5bGUsXHJcbiAgICAgIHpJbmRleDogNTAwXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENsZWFyIHRoZSBkcmF3aW5nIGxheWVyIGlmIGl0IHdhc24ndCBkZWZpbmVkIGluIHRoZSBvcHRpb25zXHJcbiAgICovXHJcbiAgcHJpdmF0ZSByZW1vdmVPbElubmVyT3ZlcmxheUxheWVyKCkge1xyXG4gICAgaWYgKCF0aGlzLm9wdGlvbnMuZHJhd2luZ0xheWVyICYmIHRoaXMub2xNYXApIHtcclxuICAgICAgdGhpcy5vbE1hcC5yZW1vdmVMYXllcih0aGlzLm9sRHJhd2luZ0xheWVyKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEFkZCB0aGUgZHJhd2luZyBsYXllciBpZiBpdCB3YXNuJ3QgZGVmaW5lZCBpbiB0aGUgb3B0aW9uc1xyXG4gICAqL1xyXG4gIHByaXZhdGUgYWRkT2xJbm5lck92ZXJsYXlMYXllcigpIHtcclxuICAgIGlmICghdGhpcy5vcHRpb25zLmRyYXdpbmdMYXllcikge1xyXG4gICAgICB0aGlzLm9sTWFwLmFkZExheWVyKHRoaXMub2xEcmF3aW5nTGF5ZXIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2xlYXIgdGhlIGRyYXdpbmcgbGF5ZXIgc291cmNlIGlmIGl0IHdhc24ndCBkZWZpbmVkIGluIHRoZSBvcHRpb25zXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBjbGVhck9sSW5uZXJPdmVybGF5U291cmNlKCkge1xyXG4gICAgaWYgKCF0aGlzLm9wdGlvbnMuZHJhd2luZ0xheWVyICYmICF0aGlzLm9wdGlvbnMuZHJhd2luZ0xheWVyU291cmNlKSB7XHJcbiAgICAgIHRoaXMub2xEcmF3aW5nTGF5ZXJTb3VyY2UuY2xlYXIodHJ1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBZGQgaW50ZXJhY3Rpb25zIHRvIHRoZSBtYXAgYW4gc2V0IHVwIHNvbWUgbGlzdGVuZXJzXHJcbiAgICovXHJcbiAgYWRkT2xJbnRlcmFjdGlvbnMoYWN0aXZhdGVNb2RpZnlBbmRTZWxlY3Q/OiBib29sZWFuKSB7XHJcbiAgICAvLyBDcmVhdGUgRHJhdyBpbnRlcmFjdGlvblxyXG4gICAgbGV0IG9sRHJhd0ludGVyYWN0aW9uO1xyXG4gICAgaWYgKCF0aGlzLmZyZWVoYW5kJC5nZXRWYWx1ZSgpKSB7XHJcbiAgICAgIGlmICghdGhpcy5pc3ByZWRlZmluZWRSYWRpdXMkLmdldFZhbHVlKCkpIHtcclxuICAgICAgICBvbERyYXdJbnRlcmFjdGlvbiA9IG5ldyBPbERyYXcoe1xyXG4gICAgICAgICAgdHlwZTogdGhpcy5vbEdlb21ldHJ5VHlwZSBhcyBUeXBlLFxyXG4gICAgICAgICAgc291cmNlOiB0aGlzLmdldFNvdXJjZSgpLFxyXG4gICAgICAgICAgc3RvcENsaWNrOiB0cnVlLFxyXG4gICAgICAgICAgc3R5bGU6IHRoaXMub2xJbnRlcmFjdGlvblN0eWxlLFxyXG4gICAgICAgICAgbWF4UG9pbnRzOiB0aGlzLm9wdGlvbnMubWF4UG9pbnRzLFxyXG4gICAgICAgICAgZnJlZWhhbmQ6IGZhbHNlLFxyXG4gICAgICAgICAgZnJlZWhhbmRDb25kaXRpb246ICgpID0+IGZhbHNlXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgb2xEcmF3SW50ZXJhY3Rpb24gPSBuZXcgT2xEcmF3KHtcclxuICAgICAgICAgIHR5cGU6ICdQb2ludCcsXHJcbiAgICAgICAgICBzb3VyY2U6IHRoaXMuZ2V0U291cmNlKCksXHJcbiAgICAgICAgICBzdG9wQ2xpY2s6IHRydWUsXHJcbiAgICAgICAgICBzdHlsZTogdGhpcy5vbEludGVyYWN0aW9uU3R5bGUsXHJcbiAgICAgICAgICBtYXhQb2ludHM6IHRoaXMub3B0aW9ucy5tYXhQb2ludHMsXHJcbiAgICAgICAgICBmcmVlaGFuZDogZmFsc2UsXHJcbiAgICAgICAgICBmcmVlaGFuZENvbmRpdGlvbjogKCkgPT4gZmFsc2VcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKHRoaXMub2xHZW9tZXRyeVR5cGUgPT09ICdQb2ludCcpIHtcclxuICAgICAgICBvbERyYXdJbnRlcmFjdGlvbiA9IG5ldyBPbERyYXcoe1xyXG4gICAgICAgICAgdHlwZTogJ0NpcmNsZScsXHJcbiAgICAgICAgICBzb3VyY2U6IHRoaXMuZ2V0U291cmNlKCksXHJcbiAgICAgICAgICBzdHlsZTpcclxuICAgICAgICAgICAgdHlwZW9mIHRoaXMub2xJbnRlcmFjdGlvblN0eWxlID09PSAnZnVuY3Rpb24nXHJcbiAgICAgICAgICAgICAgPyB1bmRlZmluZWRcclxuICAgICAgICAgICAgICA6IHRoaXMub2xJbnRlcmFjdGlvblN0eWxlLFxyXG4gICAgICAgICAgbWF4UG9pbnRzOiB0aGlzLm9wdGlvbnMubWF4UG9pbnRzLFxyXG4gICAgICAgICAgZnJlZWhhbmQ6IHRydWVcclxuICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBvbERyYXdJbnRlcmFjdGlvbiA9IG5ldyBPbERyYXcoe1xyXG4gICAgICAgICAgdHlwZTogdGhpcy5vbEdlb21ldHJ5VHlwZSBhcyBUeXBlLFxyXG4gICAgICAgICAgc291cmNlOiB0aGlzLmdldFNvdXJjZSgpLFxyXG4gICAgICAgICAgc3R5bGU6IHRoaXMub2xJbnRlcmFjdGlvblN0eWxlLFxyXG4gICAgICAgICAgbWF4UG9pbnRzOiB0aGlzLm9wdGlvbnMubWF4UG9pbnRzLFxyXG4gICAgICAgICAgZnJlZWhhbmQ6IHRydWVcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIEFkZCBEcmF3IGludGVyYWN0aW9uIHRvIG1hcCBhbmQgY3JlYXRlIGxpc3RlbmVyc1xyXG4gICAgdGhpcy5vbE1hcC5hZGRJbnRlcmFjdGlvbihvbERyYXdJbnRlcmFjdGlvbik7XHJcbiAgICB0aGlzLm9sRHJhd0ludGVyYWN0aW9uID0gb2xEcmF3SW50ZXJhY3Rpb247XHJcbiAgICB0aGlzLm9uRHJhd1N0YXJ0S2V5ID0gb2xEcmF3SW50ZXJhY3Rpb24ub24oXHJcbiAgICAgICdkcmF3c3RhcnQnLFxyXG4gICAgICAoZXZlbnQ6IE9sRHJhd0V2ZW50KSA9PiB0aGlzLm9uRHJhd1N0YXJ0KGV2ZW50KVxyXG4gICAgKTtcclxuICAgIHRoaXMub25EcmF3RW5kS2V5ID0gb2xEcmF3SW50ZXJhY3Rpb24ub24oJ2RyYXdlbmQnLCAoZXZlbnQ6IE9sRHJhd0V2ZW50KSA9PlxyXG4gICAgICB0aGlzLm9uRHJhd0VuZChldmVudClcclxuICAgICk7XHJcbiAgICB0aGlzLm9uRHJhd0Fib3J0S2V5ID0gb2xEcmF3SW50ZXJhY3Rpb24ub24oXHJcbiAgICAgICdkcmF3YWJvcnQnLFxyXG4gICAgICAoZXZlbnQ6IE9sRHJhd0V2ZW50KSA9PiB0aGlzLmFib3J0JC5uZXh0KGV2ZW50LmZlYXR1cmUuZ2V0R2VvbWV0cnkoKSlcclxuICAgICk7XHJcblxyXG4gICAgaWYgKGFjdGl2YXRlTW9kaWZ5QW5kU2VsZWN0KSB7XHJcbiAgICAgIC8vIENyZWF0ZSBhIE1vZGlmeSBpbnRlcmFjdGlvbiwgYWRkIGl0IHRvIG1hcCBhbmQgY3JlYXRlIGEgbGlzdGVuZXJcclxuICAgICAgY29uc3Qgb2xNb2RpZnlJbnRlcmFjdGlvbiA9IG5ldyBPbE1vZGlmeSh7XHJcbiAgICAgICAgc291cmNlOiB0aGlzLmdldFNvdXJjZSgpXHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgdGhpcy5vbE1hcC5hZGRJbnRlcmFjdGlvbihvbE1vZGlmeUludGVyYWN0aW9uKTtcclxuICAgICAgdGhpcy5vbE1vZGlmeUludGVyYWN0aW9uID0gb2xNb2RpZnlJbnRlcmFjdGlvbjtcclxuXHJcbiAgICAgIC8vIENyZWF0ZSBhIHNlbGVjdCBpbnRlcmFjdGlvbiBhbmQgYWRkIGl0IHRvIG1hcFxyXG4gICAgICBpZiAoIXRoaXMub2xTZWxlY3RJbnRlcmFjdGlvbikge1xyXG4gICAgICAgIGNvbnN0IG9sU2VsZWN0SW50ZXJhY3Rpb24gPSBuZXcgT2xTZWxlY3Qoe1xyXG4gICAgICAgICAgY29uZGl0aW9uOiBkb3VibGVDbGljayxcclxuICAgICAgICAgIHN0eWxlOiB1bmRlZmluZWRcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLm9sTWFwLmFkZEludGVyYWN0aW9uKG9sU2VsZWN0SW50ZXJhY3Rpb24pO1xyXG4gICAgICAgIHRoaXMub2xTZWxlY3RJbnRlcmFjdGlvbiA9IG9sU2VsZWN0SW50ZXJhY3Rpb247XHJcblxyXG4gICAgICAgIHRoaXMub2xTZWxlY3RJbnRlcmFjdGlvbi5vbignc2VsZWN0JywgKGV2ZW50OiBPbFNlbGVjdEV2ZW50KSA9PlxyXG4gICAgICAgICAgdGhpcy5vblNlbGVjdChldmVudClcclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZW1vdmUgaW50ZXJhY3Rpb25zXHJcbiAgICovXHJcbiAgcHJpdmF0ZSByZW1vdmVPbEludGVyYWN0aW9ucygpIHtcclxuICAgIHRoaXMudW5zdWJzY3JpYmVLZXlEb3duKCk7XHJcbiAgICB1bkJ5S2V5KFtcclxuICAgICAgdGhpcy5vbkRyYXdTdGFydEtleSxcclxuICAgICAgdGhpcy5vbkRyYXdFbmRLZXksXHJcbiAgICAgIHRoaXMub25EcmF3S2V5LFxyXG4gICAgICB0aGlzLm9uRHJhd0Fib3J0S2V5XHJcbiAgICBdKTtcclxuXHJcbiAgICBpZiAodGhpcy5vbE1hcCkge1xyXG4gICAgICB0aGlzLm9sTWFwLnJlbW92ZUludGVyYWN0aW9uKHRoaXMub2xEcmF3SW50ZXJhY3Rpb24pO1xyXG4gICAgICB0aGlzLm9sTWFwLnJlbW92ZUludGVyYWN0aW9uKHRoaXMub2xNb2RpZnlJbnRlcmFjdGlvbik7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5vbERyYXdJbnRlcmFjdGlvbiA9IHVuZGVmaW5lZDtcclxuICAgIHRoaXMub2xNb2RpZnlJbnRlcmFjdGlvbiA9IHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZW4gZHJhd2luZyBzdGFydHMsIGNsZWFyIHRoZSBvdmVybGF5IGFuZCBzdGFydCB3YXRjaGluZyBmb3IgY2hhbmdlc1xyXG4gICAqIEBwYXJhbSBldmVudCBEcmF3IHN0YXJ0IGV2ZW50XHJcbiAgICovXHJcbiAgcHJpdmF0ZSBvbkRyYXdTdGFydChldmVudDogT2xEcmF3RXZlbnQpIHtcclxuICAgIGNvbnN0IG9sR2VvbWV0cnkgPSBldmVudC5mZWF0dXJlLmdldEdlb21ldHJ5KCk7XHJcbiAgICB0aGlzLnN0YXJ0JC5uZXh0KG9sR2VvbWV0cnkpO1xyXG4gICAgdGhpcy5jbGVhck9sSW5uZXJPdmVybGF5U291cmNlKCk7XHJcbiAgICB0aGlzLm9uRHJhd0tleSA9IG9sR2VvbWV0cnkub24oJ2NoYW5nZScsIChvbEdlb21ldHJ5RXZlbnQ6IEJhc2ljRXZlbnQpID0+IHtcclxuICAgICAgdGhpcy5tb3VzZVBvc2l0aW9uID0gZ2V0TW91c2VQb3NpdGlvbkZyb21PbEdlb21ldHJ5RXZlbnQob2xHZW9tZXRyeUV2ZW50KTtcclxuICAgICAgdGhpcy5jaGFuZ2VzJC5uZXh0KG9sR2VvbWV0cnlFdmVudC50YXJnZXQpO1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLnN1YnNjcmliZUtleURvd24oKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZW4gZHJhd2luZyBlbmRzLCB1cGRhdGUgdGhlIGRyYXdpbmcgKGZlYXR1cmUpIGdlb21ldHJ5IG9ic2VydmFibGUgYW5kIGFkZFxyXG4gICAqIEBwYXJhbSBldmVudCBEcmF3IGV2ZW50IChkcmF3ZW5kKVxyXG4gICAqL1xyXG4gIHByaXZhdGUgb25EcmF3RW5kKGV2ZW50OiBPbERyYXdFdmVudCkge1xyXG4gICAgaWYgKGV2ZW50LmZlYXR1cmUuZ2V0R2VvbWV0cnkoKS5nZXRUeXBlKCkgPT09ICdQb2ludCcpIHtcclxuICAgICAgdGhpcy5yYWRpdXNEcmF3RW5kJC5uZXh0KHRoaXMucHJlZGVmaW5lZFJhZGl1cyQuZ2V0VmFsdWUoKSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnVuc3Vic2NyaWJlS2V5RG93bigpO1xyXG4gICAgdW5CeUtleSh0aGlzLm9uRHJhd0tleSk7XHJcbiAgICBjb25zdCBvbEdlb21ldHJ5ID0gZXZlbnQuZmVhdHVyZS5nZXRHZW9tZXRyeSgpO1xyXG4gICAgb2xHZW9tZXRyeS5vbignY2hhbmdlJywgKCkgPT4ge1xyXG4gICAgICB0aGlzLm1vZGlmeSQubmV4dChvbEdlb21ldHJ5KTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5lbmQkLm5leHQob2xHZW9tZXRyeSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBXaGVuIGEgZmVhdHVyZSBpcyBzZWxlY3RlZCwgdXBkYXRlIHRoZSBzZWxlY3RlZCBmZWF0dXJlIG9ic2VydmFibGVcclxuICAgKiBAcGFyYW0gZXZlbnQgTW9kaWZ5IGV2ZW50IChtb2RpZnllbmQpXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBvblNlbGVjdChldmVudDogT2xTZWxlY3RFdmVudCkge1xyXG4gICAgaWYgKGV2ZW50LnNlbGVjdGVkLmxlbmd0aCA9PT0gMSkge1xyXG4gICAgICB0aGlzLnNlbGVjdCQubmV4dChldmVudC5zZWxlY3RlZFswXSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTdWJzY3JpYmUgdG8ga2V5IGRvd25zIHVzZWQgYXMgZHJhd2luZyBpbnRlcmFjdGlvbiBzaG9yY3V0c1xyXG4gICAqL1xyXG4gIHByaXZhdGUgc3Vic2NyaWJlS2V5RG93bigpIHtcclxuICAgIHRoaXMudW5zdWJzY3JpYmVLZXlEb3duKCk7XHJcbiAgICB0aGlzLmtleURvd24kJCA9IGZyb21FdmVudChkb2N1bWVudCwgJ2tleWRvd24nKS5zdWJzY3JpYmUoXHJcbiAgICAgIChldmVudDogS2V5Ym9hcmRFdmVudCkgPT4ge1xyXG4gICAgICAgIC8vIE9uIEVzY2FwZSBvciAnYycga2V5ZG93bnMsIGFib3J0IHRoZSBjdXJyZW50IGRyYXdpbmdcclxuICAgICAgICBpZiAoZXZlbnQua2V5ID09PSAnRXNjYXBlJykge1xyXG4gICAgICAgICAgdGhpcy5vbERyYXdJbnRlcmFjdGlvbi5hYm9ydERyYXdpbmcoKTtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIE9uIEJhY2tzcGFjZSBvciAndScga2V5ZG93bnMsIHJlbW92ZSBsYXN0IHZlcnRleCBvZiBjdXJyZW50IGRyYXdpbmdcclxuICAgICAgICBpZiAoZXZlbnQua2V5ID09PSAnQmFja3NwYWNlJykge1xyXG4gICAgICAgICAgdGhpcy5vbERyYXdJbnRlcmFjdGlvbi5yZW1vdmVMYXN0UG9pbnQoKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIE9uIEVudGVyIG9yICdmJyBrZXlkb3ducywgZmluaXNoIGN1cnJlbnQgZHJhd2luZ1xyXG4gICAgICAgIGlmIChldmVudC5rZXkgPT09ICdFbnRlcicpIHtcclxuICAgICAgICAgIHRoaXMub2xEcmF3SW50ZXJhY3Rpb24uZmluaXNoRHJhd2luZygpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gT24gc3BhY2UgYmFyIGtleSBkb3duLCBwYW4gdG8gdGhlIGN1cnJlbnQgbW91c2UgcG9zaXRpb25cclxuICAgICAgICBpZiAoZXZlbnQua2V5ID09PSAnICcpIHtcclxuICAgICAgICAgIHRoaXMub2xNYXAuZ2V0VmlldygpLmFuaW1hdGUoe1xyXG4gICAgICAgICAgICBjZW50ZXI6IHRoaXMubW91c2VQb3NpdGlvbixcclxuICAgICAgICAgICAgZHVyYXRpb246IDEwMFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVW5zdWJzY3JpYmUgdG8ga2V5IGRvd25cclxuICAgKi9cclxuICBwcml2YXRlIHVuc3Vic2NyaWJlS2V5RG93bigpIHtcclxuICAgIGlmICh0aGlzLmtleURvd24kJCkge1xyXG4gICAgICB0aGlzLmtleURvd24kJC51bnN1YnNjcmliZSgpO1xyXG4gICAgICB0aGlzLmtleURvd24kJCA9IHVuZGVmaW5lZDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
|
|
340
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhdy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2dlb21ldHJ5L3NoYXJlZC9jb250cm9scy9kcmF3LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHeEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBR2xELE9BQU8sTUFBTSxNQUFNLHFCQUFxQixDQUFDO0FBRXpDLE9BQU8sUUFBUSxNQUFNLHVCQUF1QixDQUFDO0FBQzdDLE9BQU8sUUFBUSxNQUFNLHVCQUF1QixDQUFDO0FBRTdDLE9BQU8sYUFBYSxNQUFNLGlCQUFpQixDQUFDO0FBQzVDLE9BQU8sY0FBYyxNQUFNLGtCQUFrQixDQUFDO0FBRzlDLE9BQU8sRUFBRSxlQUFlLEVBQUUsT0FBTyxFQUFnQixTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFekUsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFXeEU7O0dBRUc7QUFDSCxNQUFNLE9BQU8sV0FBVztJQW9GRjtJQW5GcEI7O09BRUc7SUFDSSxNQUFNLEdBQXdCLElBQUksT0FBTyxFQUFFLENBQUM7SUFFbkQ7O09BRUc7SUFDSSxJQUFJLEdBQXdCLElBQUksT0FBTyxFQUFFLENBQUM7SUFFakQ7O09BRUc7SUFDSSxRQUFRLEdBQWlCLElBQUksT0FBTyxFQUFFLENBQUM7SUFFOUM7O09BRUc7SUFDSSxPQUFPLEdBQXdCLElBQUksT0FBTyxFQUFFLENBQUM7SUFFcEQ7O09BRUc7SUFDSSxPQUFPLEdBQWlCLElBQUksT0FBTyxFQUFFLENBQUM7SUFFN0M7O09BRUc7SUFDSSxNQUFNLEdBQWlCLElBQUksT0FBTyxFQUFFLENBQUM7SUFFNUM7O09BRUc7SUFDSCxTQUFTLEdBQTZCLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lB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QUVHO0lBQ0ssa0JBQWtCO1FBQ3hCLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDN0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDN0IsQ0FBQztJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBPbE1hcCBmcm9tICdvbC9NYXAnO1xuaW1wb3J0IHsgdW5CeUtleSB9IGZyb20gJ29sL09ic2VydmFibGUnO1xuaW1wb3J0IHsgRXZlbnRzS2V5IH0gZnJvbSAnb2wvZXZlbnRzJztcbmltcG9ydCBCYXNpY0V2ZW50IGZyb20gJ29sL2V2ZW50cy9FdmVudCc7XG5pbXBvcnQgeyBkb3VibGVDbGljayB9IGZyb20gJ29sL2V2ZW50cy9jb25kaXRpb24nO1xuaW1wb3J0IHR5cGUgeyBUeXBlIH0gZnJvbSAnb2wvZ2VvbS9HZW9tZXRyeSc7XG5pbXBvcnQgdHlwZSB7IGRlZmF1bHQgYXMgT2xHZW9tZXRyeSB9IGZyb20gJ29sL2dlb20vR2VvbWV0cnknO1xuaW1wb3J0IE9sRHJhdyBmcm9tICdvbC9pbnRlcmFjdGlvbi9EcmF3JztcbmltcG9ydCB7IERyYXdFdmVudCBhcyBPbERyYXdFdmVudCB9IGZyb20gJ29sL2ludGVyYWN0aW9uL0RyYXcnO1xuaW1wb3J0IE9sTW9kaWZ5IGZyb20gJ29sL2ludGVyYWN0aW9uL01vZGlmeSc7XG5pbXBvcnQgT2xTZWxlY3QgZnJvbSAnb2wvaW50ZXJhY3Rpb24vU2VsZWN0JztcbmltcG9ydCB7IFNlbGVjdEV2ZW50IGFzIE9sU2VsZWN0RXZlbnQgfSBmcm9tICdvbC9pbnRlcmFjdGlvbi9TZWxlY3QnO1xuaW1wb3J0IE9sVmVjdG9yTGF5ZXIgZnJvbSAnb2wvbGF5ZXIvVmVjdG9yJztcbmltcG9ydCBPbFZlY3RvclNvdXJjZSBmcm9tICdvbC9zb3VyY2UvVmVjdG9yJztcbmltcG9ydCB7IFN0eWxlTGlrZSBhcyBPbFN0eWxlTGlrZSB9IGZyb20gJ29sL3N0eWxlL1N0eWxlJztcblxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJqZWN0LCBTdWJzY3JpcHRpb24sIGZyb21FdmVudCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBnZXRNb3VzZVBvc2l0aW9uRnJvbU9sR2VvbWV0cnlFdmVudCB9IGZyb20gJy4uL2dlb21ldHJ5LnV0aWxzJztcblxuZXhwb3J0IGludGVyZmFjZSBEcmF3Q29udHJvbE9wdGlvbnMge1xuICBnZW9tZXRyeVR5cGU6IFR5cGUgfCBzdHJpbmc7XG4gIGRyYXdpbmdMYXllclNvdXJjZT86IE9sVmVjdG9yU291cmNlO1xuICBkcmF3aW5nTGF5ZXI/OiBPbFZlY3RvckxheWVyPE9sVmVjdG9yU291cmNlPjtcbiAgZHJhd2luZ0xheWVyU3R5bGU/OiBPbFN0eWxlTGlrZTtcbiAgaW50ZXJhY3Rpb25TdHlsZT86IE9sU3R5bGVMaWtlO1xuICBtYXhQb2ludHM/OiBudW1iZXI7XG59XG5cbi8qKlxuICogQ29udHJvbCB0byBkcmF3IGVudGl0aWVzXG4gKi9cbmV4cG9ydCBjbGFzcyBEcmF3Q29udHJvbCB7XG4gIC8qKlxuICAgKiBEcmF3IHN0YXJ0IG9ic2VydmFibGVcbiAgICovXG4gIHB1YmxpYyBzdGFydCQ6IFN1YmplY3Q8T2xHZW9tZXRyeT4gPSBuZXcgU3ViamVjdCgpO1xuXG4gIC8qKlxuICAgKiBEcmF3IGVuZCBvYnNlcnZhYmxlXG4gICAqL1xuICBwdWJsaWMgZW5kJDogU3ViamVjdDxPbEdlb21ldHJ5PiA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgLyoqXG4gICAqIERyYXcgY2hhbmdlcyBvYnNlcnZhYmxlICh3aGlsZSBkcmF3aW5nKVxuICAgKi9cbiAgcHVibGljIGNoYW5nZXMkOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdCgpO1xuXG4gIC8qKlxuICAgKiBEcmF3IG1vZGlmeSBvYnNlcnZhYmxlIChtb2RpZnkgZHJhd24gZmVhdHVyZXMpXG4gICAqL1xuICBwdWJsaWMgbW9kaWZ5JDogU3ViamVjdDxPbEdlb21ldHJ5PiA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgLyoqXG4gICAqIERyYXcgc2VsZWN0IG9ic2VydmFibGUgKG1vZGlmeSBkcmF3biBmZWF0dXJlcylcbiAgICovXG4gIHB1YmxpYyBzZWxlY3QkOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdCgpO1xuXG4gIC8qKlxuICAgKiBEcmF3IGFib3J0IG9ic2VydmFibGUgKGFib3J0IGRyYXduIGZlYXR1cmVzKVxuICAgKi9cbiAgcHVibGljIGFib3J0JDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcblxuICAvKipcbiAgICogRnJlZWhhbmQgbW9kZSBvYnNlcnZhYmxlIChkZWZhdWx0cyB0byBmYWxzZSlcbiAgICovXG4gIGZyZWVoYW5kJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG4gIC8qKlxuICAgKiBPYnNlcnZhYmxlcyBmcm9tIHByZWRlZmluZWQgcmFkaXVzIChkZWZhdWx0cyB0byBmYWxzZSBhbmQgdW5kZWZpbmVkKVxuICAgKi9cbiAgaXNwcmVkZWZpbmVkUmFkaXVzJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG4gIHByZWRlZmluZWRSYWRpdXMkOiBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPiA9IG5ldyBCZWhhdmlvclN1YmplY3QodW5kZWZpbmVkKTtcbiAgcmFkaXVzRHJhd0VuZCQ6IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+ID0gbmV3IEJlaGF2aW9yU3ViamVjdCh1bmRlZmluZWQpO1xuXG4gIHByaXZhdGUga2V5RG93biQkOiBTdWJzY3JpcHRpb247XG5cbiAgcHJpdmF0ZSBvbEdlb21ldHJ5VHlwZTogdHlwZW9mIE9sR2VvbWV0cnkgfCB1bmRlZmluZWQgfCBzdHJpbmc7XG4gIHByaXZhdGUgb2xJbnRlcmFjdGlvblN0eWxlOiBPbFN0eWxlTGlrZTtcbiAgcHJpdmF0ZSBvbE1hcDogT2xNYXA7XG4gIHByaXZhdGUgb2xEcmF3aW5nTGF5ZXI6IE9sVmVjdG9yTGF5ZXI8T2xWZWN0b3JTb3VyY2U+O1xuICBwcml2YXRlIG9sRHJhd0ludGVyYWN0aW9uOiBPbERyYXc7XG4gIHByaXZhdGUgb2xTZWxlY3RJbnRlcmFjdGlvbjogT2xTZWxlY3Q7XG4gIHByaXZhdGUgb2xNb2RpZnlJbnRlcmFjdGlvbjogT2xNb2RpZnk7XG4gIHByaXZhdGUgb25EcmF3U3RhcnRLZXk6IEV2ZW50c0tleTtcbiAgcHJpdmF0ZSBvbkRyYXdFbmRLZXk6IEV2ZW50c0tleTtcbiAgcHJpdmF0ZSBvbkRyYXdBYm9ydEtleTogRXZlbnRzS2V5O1xuICBwcml2YXRlIG9uRHJhd0tleTogRXZlbnRzS2V5O1xuICBwdWJsaWMgcmFkaXVzOiBudW1iZXI7XG5cbiAgcHJpdmF0ZSBtb3VzZVBvc2l0aW9uOiBbbnVtYmVyLCBudW1iZXJdO1xuXG4gIC8qKlxuICAgKiB0YWtlIHRoZSB2YWx1ZSBvZiByYWRpdXNcbiAgICovXG4gIGdldCByYWRpdXNWYWwoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wcmVkZWZpbmVkUmFkaXVzJC5nZXRWYWx1ZSgpO1xuICB9XG4gIHNldCByYWRpdXNWYWxEYXRhKHJhZGl1c0NlcmNsZTogbnVtYmVyKSB7XG4gICAgdGhpcy5wcmVkZWZpbmVkUmFkaXVzJC5uZXh0KHJhZGl1c0NlcmNsZSk7XG4gIH1cblxuICAvKipcbiAgICogV2hldGVyIHRoZSBjb250cm9sIGlzIGFjdGl2ZVxuICAgKi9cbiAgZ2V0IGFjdGl2ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5vbE1hcCAhPT0gdW5kZWZpbmVkO1xuICB9XG5cbiAgLyoqXG4gICAqIE9MIG92ZXJsYXkgc291cmNlXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgZ2V0IG9sRHJhd2luZ0xheWVyU291cmNlKCk6IE9sVmVjdG9yU291cmNlIHtcbiAgICByZXR1cm4gdGhpcy5vbERyYXdpbmdMYXllci5nZXRTb3VyY2UoKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgb3B0aW9uczogRHJhd0NvbnRyb2xPcHRpb25zKSB7XG4gICAgdGhpcy5vbERyYXdpbmdMYXllciA9IG9wdGlvbnMuZHJhd2luZ0xheWVyXG4gICAgICA/IG9wdGlvbnMuZHJhd2luZ0xheWVyXG4gICAgICA6IHRoaXMuY3JlYXRlT2xJbm5lck92ZXJsYXlMYXllcigpO1xuICAgIHRoaXMub2xHZW9tZXRyeVR5cGUgPSB0aGlzLm9wdGlvbnMuZ2VvbWV0cnlUeXBlO1xuICAgIHRoaXMub2xJbnRlcmFjdGlvblN0eWxlID0gdGhpcy5vcHRpb25zLmludGVyYWN0aW9uU3R5bGU7XG4gIH1cblxuICAvKipcbiAgICogQWRkIG9yIHJlbW92ZSB0aGlzIGNvbnRyb2wgdG8vZnJvbSBhIG1hcC5cbiAgICogQHBhcmFtIG1hcCBPTCBNYXBcbiAgICovXG4gIHNldE9sTWFwKG9sTWFwOiBPbE1hcCB8IHVuZGVmaW5lZCwgYWN0aXZhdGVNb2RpZnlBbmRTZWxlY3Q/OiBib29sZWFuKSB7XG4gICAgaWYgKCFvbE1hcCkge1xuICAgICAgdGhpcy5jbGVhck9sSW5uZXJPdmVybGF5U291cmNlKCk7XG4gICAgICB0aGlzLnJlbW92ZU9sSW5uZXJPdmVybGF5TGF5ZXIoKTtcbiAgICAgIHRoaXMucmVtb3ZlT2xJbnRlcmFjdGlvbnMoKTtcbiAgICAgIHRoaXMub2xNYXAgPSBvbE1hcDtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLm9sTWFwID0gb2xNYXA7XG4gICAgdGhpcy5hZGRPbElubmVyT3ZlcmxheUxheWVyKCk7XG4gICAgdGhpcy5hZGRPbEludGVyYWN0aW9ucyhhY3RpdmF0ZU1vZGlmeUFuZFNlbGVjdCk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIHRoZSBkcmF3aW5nIGxheWVyIHNvdXJjZVxuICAgKi9cbiAgZ2V0U291cmNlKCk6IE9sVmVjdG9yU291cmNlIHtcbiAgICByZXR1cm4gdGhpcy5vbERyYXdpbmdMYXllclNvdXJjZTtcbiAgfVxuXG4gIHNldE9sSW50ZXJhY3Rpb25TdHlsZShzdHlsZSkge1xuICAgIHRoaXMub2xJbnRlcmFjdGlvblN0eWxlID0gc3R5bGU7XG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBjdXJyZW50IGdlb21ldHJ5IHR5cGVcbiAgICogQHBhcmFtIGdlb21ldHJ5VHlwZSB0aGUgZ2VvbWV0cnkgdHlwZVxuICAgKi9cbiAgc2V0R2VvbWV0cnlUeXBlKGdlb21ldHJ5VHlwZTogVHlwZSkge1xuICAgIHRoaXMub2xHZW9tZXRyeVR5cGUgPSBnZW9tZXRyeVR5cGU7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBjdXJyZW50IGdlb21ldHJ5IHR5cGVcbiAgICovXG4gIGdldEdlb21ldHJ5VHlwZSgpIHtcbiAgICByZXR1cm4gdGhpcy5vbEdlb21ldHJ5VHlwZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBkcmF3aW5nIHNvdXJjZSBpZiBub25lIGlzIGRlZmluZWQgaW4gdGhlIG9wdGlvbnNcbiAgICovXG4gIHByaXZhdGUgY3JlYXRlT2xJbm5lck92ZXJsYXlMYXllcigpOiBPbFZlY3RvckxheWVyPE9sVmVjdG9yU291cmNlPiB7XG4gICAgcmV0dXJuIG5ldyBPbFZlY3RvckxheWVyKHtcbiAgICAgIHNvdXJjZTogdGhpcy5vcHRpb25zLmRyYXdpbmdMYXllclNvdXJjZVxuICAgICAgICA/IHRoaXMub3B0aW9ucy5kcmF3aW5nTGF5ZXJTb3VyY2VcbiAgICAgICAgOiBuZXcgT2xWZWN0b3JTb3VyY2UoKSxcbiAgICAgIHN0eWxlOiB0aGlzLm9wdGlvbnMuZHJhd2luZ0xheWVyU3R5bGUsXG4gICAgICB6SW5kZXg6IDUwMFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENsZWFyIHRoZSBkcmF3aW5nIGxheWVyIGlmIGl0IHdhc24ndCBkZWZpbmVkIGluIHRoZSBvcHRpb25zXG4gICAqL1xuICBwcml2YXRlIHJlbW92ZU9sSW5uZXJPdmVybGF5TGF5ZXIoKSB7XG4gICAgaWYgKCF0aGlzLm9wdGlvbnMuZHJhd2luZ0xheWVyICYmIHRoaXMub2xNYXApIHtcbiAgICAgIHRoaXMub2xNYXAucmVtb3ZlTGF5ZXIodGhpcy5vbERyYXdpbmdMYXllcik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEFkZCB0aGUgZHJhd2luZyBsYXllciBpZiBpdCB3YXNuJ3QgZGVmaW5lZCBpbiB0aGUgb3B0aW9uc1xuICAgKi9cbiAgcHJpdmF0ZSBhZGRPbElubmVyT3ZlcmxheUxheWVyKCkge1xuICAgIGlmICghdGhpcy5vcHRpb25zLmRyYXdpbmdMYXllcikge1xuICAgICAgdGhpcy5vbE1hcC5hZGRMYXllcih0aGlzLm9sRHJhd2luZ0xheWVyKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2xlYXIgdGhlIGRyYXdpbmcgbGF5ZXIgc291cmNlIGlmIGl0IHdhc24ndCBkZWZpbmVkIGluIHRoZSBvcHRpb25zXG4gICAqL1xuICBwcml2YXRlIGNsZWFyT2xJbm5lck92ZXJsYXlTb3VyY2UoKSB7XG4gICAgaWYgKCF0aGlzLm9wdGlvbnMuZHJhd2luZ0xheWVyICYmICF0aGlzLm9wdGlvbnMuZHJhd2luZ0xheWVyU291cmNlKSB7XG4gICAgICB0aGlzLm9sRHJhd2luZ0xheWVyU291cmNlLmNsZWFyKHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgaW50ZXJhY3Rpb25zIHRvIHRoZSBtYXAgYW4gc2V0IHVwIHNvbWUgbGlzdGVuZXJzXG4gICAqL1xuICBhZGRPbEludGVyYWN0aW9ucyhhY3RpdmF0ZU1vZGlmeUFuZFNlbGVjdD86IGJvb2xlYW4pIHtcbiAgICAvLyBDcmVhdGUgRHJhdyBpbnRlcmFjdGlvblxuICAgIGxldCBvbERyYXdJbnRlcmFjdGlvbjtcbiAgICBpZiAoIXRoaXMuZnJlZWhhbmQkLmdldFZhbHVlKCkpIHtcbiAgICAgIGlmICghdGhpcy5pc3ByZWRlZmluZWRSYWRpdXMkLmdldFZhbHVlKCkpIHtcbiAgICAgICAgb2xEcmF3SW50ZXJhY3Rpb24gPSBuZXcgT2xEcmF3KHtcbiAgICAgICAgICB0eXBlOiB0aGlzLm9sR2VvbWV0cnlUeXBlIGFzIFR5cGUsXG4gICAgICAgICAgc291cmNlOiB0aGlzLmdldFNvdXJjZSgpLFxuICAgICAgICAgIHN0b3BDbGljazogdHJ1ZSxcbiAgICAgICAgICBzdHlsZTogdGhpcy5vbEludGVyYWN0aW9uU3R5bGUsXG4gICAgICAgICAgbWF4UG9pbnRzOiB0aGlzLm9wdGlvbnMubWF4UG9pbnRzLFxuICAgICAgICAgIGZyZWVoYW5kOiBmYWxzZSxcbiAgICAgICAgICBmcmVlaGFuZENvbmRpdGlvbjogKCkgPT4gZmFsc2VcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBvbERyYXdJbnRlcmFjdGlvbiA9IG5ldyBPbERyYXcoe1xuICAgICAgICAgIHR5cGU6ICdQb2ludCcsXG4gICAgICAgICAgc291cmNlOiB0aGlzLmdldFNvdXJjZSgpLFxuICAgICAgICAgIHN0b3BDbGljazogdHJ1ZSxcbiAgICAgICAgICBzdHlsZTogdGhpcy5vbEludGVyYWN0aW9uU3R5bGUsXG4gICAgICAgICAgbWF4UG9pbnRzOiB0aGlzLm9wdGlvbnMubWF4UG9pbnRzLFxuICAgICAgICAgIGZyZWVoYW5kOiBmYWxzZSxcbiAgICAgICAgICBmcmVlaGFuZENvbmRpdGlvbjogKCkgPT4gZmFsc2VcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLm9sR2VvbWV0cnlUeXBlID09PSAnUG9pbnQnKSB7XG4gICAgICAgIG9sRHJhd0ludGVyYWN0aW9uID0gbmV3IE9sRHJhdyh7XG4gICAgICAgICAgdHlwZTogJ0NpcmNsZScsXG4gICAgICAgICAgc291cmNlOiB0aGlzLmdldFNvdXJjZSgpLFxuICAgICAgICAgIHN0eWxlOlxuICAgICAgICAgICAgdHlwZW9mIHRoaXMub2xJbnRlcmFjdGlvblN0eWxlID09PSAnZnVuY3Rpb24nXG4gICAgICAgICAgICAgID8gdW5kZWZpbmVkXG4gICAgICAgICAgICAgIDogdGhpcy5vbEludGVyYWN0aW9uU3R5bGUsXG4gICAgICAgICAgbWF4UG9pbnRzOiB0aGlzLm9wdGlvbnMubWF4UG9pbnRzLFxuICAgICAgICAgIGZyZWVoYW5kOiB0cnVlXG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgb2xEcmF3SW50ZXJhY3Rpb24gPSBuZXcgT2xEcmF3KHtcbiAgICAgICAgICB0eXBlOiB0aGlzLm9sR2VvbWV0cnlUeXBlIGFzIFR5cGUsXG4gICAgICAgICAgc291cmNlOiB0aGlzLmdldFNvdXJjZSgpLFxuICAgICAgICAgIHN0eWxlOiB0aGlzLm9sSW50ZXJhY3Rpb25TdHlsZSxcbiAgICAgICAgICBtYXhQb2ludHM6IHRoaXMub3B0aW9ucy5tYXhQb2ludHMsXG4gICAgICAgICAgZnJlZWhhbmQ6IHRydWVcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWRkIERyYXcgaW50ZXJhY3Rpb24gdG8gbWFwIGFuZCBjcmVhdGUgbGlzdGVuZXJzXG4gICAgdGhpcy5vbE1hcC5hZGRJbnRlcmFjdGlvbihvbERyYXdJbnRlcmFjdGlvbik7XG4gICAgdGhpcy5vbERyYXdJbnRlcmFjdGlvbiA9IG9sRHJhd0ludGVyYWN0aW9uO1xuICAgIHRoaXMub25EcmF3U3RhcnRLZXkgPSBvbERyYXdJbnRlcmFjdGlvbi5vbihcbiAgICAgICdkcmF3c3RhcnQnLFxuICAgICAgKGV2ZW50OiBPbERyYXdFdmVudCkgPT4gdGhpcy5vbkRyYXdTdGFydChldmVudClcbiAgICApO1xuICAgIHRoaXMub25EcmF3RW5kS2V5ID0gb2xEcmF3SW50ZXJhY3Rpb24ub24oJ2RyYXdlbmQnLCAoZXZlbnQ6IE9sRHJhd0V2ZW50KSA9PlxuICAgICAgdGhpcy5vbkRyYXdFbmQoZXZlbnQpXG4gICAgKTtcbiAgICB0aGlzLm9uRHJhd0Fib3J0S2V5ID0gb2xEcmF3SW50ZXJhY3Rpb24ub24oXG4gICAgICAnZHJhd2Fib3J0JyxcbiAgICAgIChldmVudDogT2xEcmF3RXZlbnQpID0+IHRoaXMuYWJvcnQkLm5leHQoZXZlbnQuZmVhdHVyZS5nZXRHZW9tZXRyeSgpKVxuICAgICk7XG5cbiAgICBpZiAoYWN0aXZhdGVNb2RpZnlBbmRTZWxlY3QpIHtcbiAgICAgIC8vIENyZWF0ZSBhIE1vZGlmeSBpbnRlcmFjdGlvbiwgYWRkIGl0IHRvIG1hcCBhbmQgY3JlYXRlIGEgbGlzdGVuZXJcbiAgICAgIGNvbnN0IG9sTW9kaWZ5SW50ZXJhY3Rpb24gPSBuZXcgT2xNb2RpZnkoe1xuICAgICAgICBzb3VyY2U6IHRoaXMuZ2V0U291cmNlKClcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLm9sTWFwLmFkZEludGVyYWN0aW9uKG9sTW9kaWZ5SW50ZXJhY3Rpb24pO1xuICAgICAgdGhpcy5vbE1vZGlmeUludGVyYWN0aW9uID0gb2xNb2RpZnlJbnRlcmFjdGlvbjtcblxuICAgICAgLy8gQ3JlYXRlIGEgc2VsZWN0IGludGVyYWN0aW9uIGFuZCBhZGQgaXQgdG8gbWFwXG4gICAgICBpZiAoIXRoaXMub2xTZWxlY3RJbnRlcmFjdGlvbikge1xuICAgICAgICBjb25zdCBvbFNlbGVjdEludGVyYWN0aW9uID0gbmV3IE9sU2VsZWN0KHtcbiAgICAgICAgICBjb25kaXRpb246IGRvdWJsZUNsaWNrLFxuICAgICAgICAgIHN0eWxlOiB1bmRlZmluZWRcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMub2xNYXAuYWRkSW50ZXJhY3Rpb24ob2xTZWxlY3RJbnRlcmFjdGlvbik7XG4gICAgICAgIHRoaXMub2xTZWxlY3RJbnRlcmFjdGlvbiA9IG9sU2VsZWN0SW50ZXJhY3Rpb247XG5cbiAgICAgICAgdGhpcy5vbFNlbGVjdEludGVyYWN0aW9uLm9uKCdzZWxlY3QnLCAoZXZlbnQ6IE9sU2VsZWN0RXZlbnQpID0+XG4gICAgICAgICAgdGhpcy5vblNlbGVjdChldmVudClcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlIGludGVyYWN0aW9uc1xuICAgKi9cbiAgcHJpdmF0ZSByZW1vdmVPbEludGVyYWN0aW9ucygpIHtcbiAgICB0aGlzLnVuc3Vic2NyaWJlS2V5RG93bigpO1xuICAgIHVuQnlLZXkoW1xuICAgICAgdGhpcy5vbkRyYXdTdGFydEtleSxcbiAgICAgIHRoaXMub25EcmF3RW5kS2V5LFxuICAgICAgdGhpcy5vbkRyYXdLZXksXG4gICAgICB0aGlzLm9uRHJhd0Fib3J0S2V5XG4gICAgXSk7XG5cbiAgICBpZiAodGhpcy5vbE1hcCkge1xuICAgICAgdGhpcy5vbE1hcC5yZW1vdmVJbnRlcmFjdGlvbih0aGlzLm9sRHJhd0ludGVyYWN0aW9uKTtcbiAgICAgIHRoaXMub2xNYXAucmVtb3ZlSW50ZXJhY3Rpb24odGhpcy5vbE1vZGlmeUludGVyYWN0aW9uKTtcbiAgICB9XG5cbiAgICB0aGlzLm9sRHJhd0ludGVyYWN0aW9uID0gdW5kZWZpbmVkO1xuICAgIHRoaXMub2xNb2RpZnlJbnRlcmFjdGlvbiA9IHVuZGVmaW5lZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGVuIGRyYXdpbmcgc3RhcnRzLCBjbGVhciB0aGUgb3ZlcmxheSBhbmQgc3RhcnQgd2F0Y2hpbmcgZm9yIGNoYW5nZXNcbiAgICogQHBhcmFtIGV2ZW50IERyYXcgc3RhcnQgZXZlbnRcbiAgICovXG4gIHByaXZhdGUgb25EcmF3U3RhcnQoZXZlbnQ6IE9sRHJhd0V2ZW50KSB7XG4gICAgY29uc3Qgb2xHZW9tZXRyeSA9IGV2ZW50LmZlYXR1cmUuZ2V0R2VvbWV0cnkoKTtcbiAgICB0aGlzLnN0YXJ0JC5uZXh0KG9sR2VvbWV0cnkpO1xuICAgIHRoaXMuY2xlYXJPbElubmVyT3ZlcmxheVNvdXJjZSgpO1xuICAgIHRoaXMub25EcmF3S2V5ID0gb2xHZW9tZXRyeS5vbignY2hhbmdlJywgKG9sR2VvbWV0cnlFdmVudDogQmFzaWNFdmVudCkgPT4ge1xuICAgICAgdGhpcy5tb3VzZVBvc2l0aW9uID0gZ2V0TW91c2VQb3NpdGlvbkZyb21PbEdlb21ldHJ5RXZlbnQob2xHZW9tZXRyeUV2ZW50KTtcbiAgICAgIHRoaXMuY2hhbmdlcyQubmV4dChvbEdlb21ldHJ5RXZlbnQudGFyZ2V0KTtcbiAgICB9KTtcbiAgICB0aGlzLnN1YnNjcmliZUtleURvd24oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGVuIGRyYXdpbmcgZW5kcywgdXBkYXRlIHRoZSBkcmF3aW5nIChmZWF0dXJlKSBnZW9tZXRyeSBvYnNlcnZhYmxlIGFuZCBhZGRcbiAgICogQHBhcmFtIGV2ZW50IERyYXcgZXZlbnQgKGRyYXdlbmQpXG4gICAqL1xuICBwcml2YXRlIG9uRHJhd0VuZChldmVudDogT2xEcmF3RXZlbnQpIHtcbiAgICBpZiAoZXZlbnQuZmVhdHVyZS5nZXRHZW9tZXRyeSgpLmdldFR5cGUoKSA9PT0gJ1BvaW50Jykge1xuICAgICAgdGhpcy5yYWRpdXNEcmF3RW5kJC5uZXh0KHRoaXMucHJlZGVmaW5lZFJhZGl1cyQuZ2V0VmFsdWUoKSk7XG4gICAgfVxuICAgIHRoaXMudW5zdWJzY3JpYmVLZXlEb3duKCk7XG4gICAgdW5CeUtleSh0aGlzLm9uRHJhd0tleSk7XG4gICAgY29uc3Qgb2xHZW9tZXRyeSA9IGV2ZW50LmZlYXR1cmUuZ2V0R2VvbWV0cnkoKTtcbiAgICBvbEdlb21ldHJ5Lm9uKCdjaGFuZ2UnLCAoKSA9PiB7XG4gICAgICB0aGlzLm1vZGlmeSQubmV4dChvbEdlb21ldHJ5KTtcbiAgICB9KTtcbiAgICB0aGlzLmVuZCQubmV4dChvbEdlb21ldHJ5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGVuIGEgZmVhdHVyZSBpcyBzZWxlY3RlZCwgdXBkYXRlIHRoZSBzZWxlY3RlZCBmZWF0dXJlIG9ic2VydmFibGVcbiAgICogQHBhcmFtIGV2ZW50IE1vZGlmeSBldmVudCAobW9kaWZ5ZW5kKVxuICAgKi9cbiAgcHJpdmF0ZSBvblNlbGVjdChldmVudDogT2xTZWxlY3RFdmVudCkge1xuICAgIGlmIChldmVudC5zZWxlY3RlZC5sZW5ndGggPT09IDEpIHtcbiAgICAgIHRoaXMuc2VsZWN0JC5uZXh0KGV2ZW50LnNlbGVjdGVkWzBdKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU3Vic2NyaWJlIHRvIGtleSBkb3ducyB1c2VkIGFzIGRyYXdpbmcgaW50ZXJhY3Rpb24gc2hvcmN1dHNcbiAgICovXG4gIHByaXZhdGUgc3Vic2NyaWJlS2V5RG93bigpIHtcbiAgICB0aGlzLnVuc3Vic2NyaWJlS2V5RG93bigpO1xuICAgIHRoaXMua2V5RG93biQkID0gZnJvbUV2ZW50KGRvY3VtZW50LCAna2V5ZG93bicpLnN1YnNjcmliZShcbiAgICAgIChldmVudDogS2V5Ym9hcmRFdmVudCkgPT4ge1xuICAgICAgICAvLyBPbiBFc2NhcGUgb3IgJ2MnIGtleWRvd25zLCBhYm9ydCB0aGUgY3VycmVudCBkcmF3aW5nXG4gICAgICAgIGlmIChldmVudC5rZXkgPT09ICdFc2NhcGUnKSB7XG4gICAgICAgICAgdGhpcy5vbERyYXdJbnRlcmFjdGlvbi5hYm9ydERyYXdpbmcoKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICAvLyBPbiBCYWNrc3BhY2Ugb3IgJ3UnIGtleWRvd25zLCByZW1vdmUgbGFzdCB2ZXJ0ZXggb2YgY3VycmVudCBkcmF3aW5nXG4gICAgICAgIGlmIChldmVudC5rZXkgPT09ICdCYWNrc3BhY2UnKSB7XG4gICAgICAgICAgdGhpcy5vbERyYXdJbnRlcmFjdGlvbi5yZW1vdmVMYXN0UG9pbnQoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE9uIEVudGVyIG9yICdmJyBrZXlkb3ducywgZmluaXNoIGN1cnJlbnQgZHJhd2luZ1xuICAgICAgICBpZiAoZXZlbnQua2V5ID09PSAnRW50ZXInKSB7XG4gICAgICAgICAgdGhpcy5vbERyYXdJbnRlcmFjdGlvbi5maW5pc2hEcmF3aW5nKCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBPbiBzcGFjZSBiYXIga2V5IGRvd24sIHBhbiB0byB0aGUgY3VycmVudCBtb3VzZSBwb3NpdGlvblxuICAgICAgICBpZiAoZXZlbnQua2V5ID09PSAnICcpIHtcbiAgICAgICAgICB0aGlzLm9sTWFwLmdldFZpZXcoKS5hbmltYXRlKHtcbiAgICAgICAgICAgIGNlbnRlcjogdGhpcy5tb3VzZVBvc2l0aW9uLFxuICAgICAgICAgICAgZHVyYXRpb246IDEwMFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogVW5zdWJzY3JpYmUgdG8ga2V5IGRvd25cbiAgICovXG4gIHByaXZhdGUgdW5zdWJzY3JpYmVLZXlEb3duKCkge1xuICAgIGlmICh0aGlzLmtleURvd24kJCkge1xuICAgICAgdGhpcy5rZXlEb3duJCQudW5zdWJzY3JpYmUoKTtcbiAgICAgIHRoaXMua2V5RG93biQkID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export * from './draw';
|
|
2
2
|
export * from './modify';
|
|
3
3
|
export * from './slice';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9nZW9tZXRyeS9zaGFyZWQvY29udHJvbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2RyYXcnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RpZnknO1xuZXhwb3J0ICogZnJvbSAnLi9zbGljZSc7XG4iXX0=
|