@smartbit4all/ng-client 4.5.31 → 4.5.33
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/README.md +386 -386
- package/esm2022/lib/component-factory-service/component-factory-service.module.mjs +1 -1
- package/esm2022/lib/component-factory-service/component-factory-service.service.mjs +1 -1
- package/esm2022/lib/component-factory-service/projects.mjs +1 -1
- package/esm2022/lib/session/api/api/api.mjs +1 -1
- package/esm2022/lib/session/api/api/session.service.mjs +1 -1
- package/esm2022/lib/session/api/configuration.mjs +1 -1
- package/esm2022/lib/session/api/encoder.mjs +1 -1
- package/esm2022/lib/session/api/index.mjs +1 -1
- package/esm2022/lib/session/api/model/accountInfo.mjs +1 -1
- package/esm2022/lib/session/api/model/apiError.mjs +1 -1
- package/esm2022/lib/session/api/model/authenticationProviderData.mjs +1 -1
- package/esm2022/lib/session/api/model/getAuthenticationProvidersResponse.mjs +1 -1
- package/esm2022/lib/session/api/model/models.mjs +1 -1
- package/esm2022/lib/session/api/model/refreshSessionRequest.mjs +1 -1
- package/esm2022/lib/session/api/model/session.mjs +1 -1
- package/esm2022/lib/session/api/model/sessionInfoData.mjs +1 -1
- package/esm2022/lib/session/api/model/userActivityLog.mjs +1 -1
- package/esm2022/lib/session/api/param.mjs +1 -1
- package/esm2022/lib/session/api/variables.mjs +1 -1
- package/esm2022/lib/session/cookie-service/smart-cookie.service.mjs +1 -1
- package/esm2022/lib/session/projects.mjs +1 -1
- package/esm2022/lib/session/smart-backend-bootstrap.config.mjs +1 -1
- package/esm2022/lib/session/smart-backend-bootstrap.service.mjs +1 -1
- package/esm2022/lib/session/smart-default-error-ui.service.mjs +1 -1
- package/esm2022/lib/session/smart-error-catching.interceptor.mjs +3 -3
- package/esm2022/lib/session/smart-header-maintainer.interceptor.mjs +1 -1
- package/esm2022/lib/session/smart-session-handler.service.mjs +1 -1
- package/esm2022/lib/session/smart-session.module.mjs +1 -1
- package/esm2022/lib/session/smart-session.service.mjs +48 -23
- package/esm2022/lib/session/smart-timer/smart-session-timer.component.mjs +3 -3
- package/esm2022/lib/session/smart-timer/smart-session-timer.service.mjs +1 -1
- package/esm2022/lib/shared/projects.mjs +1 -1
- package/esm2022/lib/shared/shared.module.mjs +1 -1
- package/esm2022/lib/shared/smart-tooltip.directive.mjs +1 -1
- package/esm2022/lib/shared/smarttable.date-pipe.mjs +1 -1
- package/esm2022/lib/smart-client/projects.mjs +1 -1
- package/esm2022/lib/smart-client/smart-component-api-client.mjs +1 -1
- package/esm2022/lib/smart-client/smart-file-uploader/smart-file-uploader.component.mjs +3 -3
- package/esm2022/lib/smart-client/smart.component.mjs +1 -1
- package/esm2022/lib/smart-client/smart.service.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/api/api.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/api/default.service.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/api.module.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/configuration.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/encoder.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/index.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/model/componentType.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/model/componentWidgetType.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/model/layoutDefinitionDescriptor.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/model/layoutDirection.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/model/models.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/model/smartComponentLayoutDefinition.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/model/smartComponentWidgetDefinition.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/model/toolbarDirection.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/model/toolbarProperties.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/param.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/variables.mjs +1 -1
- package/esm2022/lib/smart-component-layout/projects.mjs +1 -1
- package/esm2022/lib/smart-component-layout/smart-component-layout-utility.mjs +1 -1
- package/esm2022/lib/smart-component-layout/smart-component-layout.component.mjs +3 -3
- package/esm2022/lib/smart-component-layout/smart-component-layout.module.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/api/api.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/api/diagramService.service.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/api.module.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/configuration.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/encoder.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/index.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/model/diagramColor.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/model/diagramDataContainer.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/model/diagramDataItem.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/model/diagramDataSet.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/model/diagramDescriptor.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/model/diagramModel.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/model/diagramShape.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/model/drawTime.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/model/labelText.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/model/models.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/param.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/variables.mjs +1 -1
- package/esm2022/lib/smart-diagram/component/default-smart-diagram-options.provider.mjs +1 -1
- package/esm2022/lib/smart-diagram/component/smart-diagram.component.mjs +22 -22
- package/esm2022/lib/smart-diagram/component/smart-diagram.module.mjs +1 -1
- package/esm2022/lib/smart-diagram/component/smart-diagram.util.mjs +1 -1
- package/esm2022/lib/smart-diagram/projects.mjs +1 -1
- package/esm2022/lib/smart-dialog/projects.mjs +1 -1
- package/esm2022/lib/smart-dialog/smartdialog.component.mjs +3 -3
- package/esm2022/lib/smart-dialog/smartdialog.model.mjs +1 -1
- package/esm2022/lib/smart-dialog/smartdialog.module.mjs +1 -1
- package/esm2022/lib/smart-dialog/smartdialog.service.mjs +1 -1
- package/esm2022/lib/smart-expandable-section/expandable-section.component.mjs +3 -3
- package/esm2022/lib/smart-expandable-section/expandable-section.model.mjs +1 -1
- package/esm2022/lib/smart-expandable-section/projects.mjs +1 -1
- package/esm2022/lib/smart-expandable-section/smart-expandable-section.module.mjs +1 -1
- package/esm2022/lib/smart-expandable-section/smart-expandable-section.service.mjs +1 -1
- package/esm2022/lib/smart-filter/api/filter/model/filterExpressionBoolOperator.mjs +1 -1
- package/esm2022/lib/smart-filter/api/filter/model/filterExpressionBuilderField.mjs +1 -1
- package/esm2022/lib/smart-filter/api/filter/model/filterExpressionBuilderGroup.mjs +1 -1
- package/esm2022/lib/smart-filter/api/filter/model/filterExpressionBuilderModel.mjs +1 -1
- package/esm2022/lib/smart-filter/api/filter/model/filterExpressionData.mjs +1 -1
- package/esm2022/lib/smart-filter/api/filter/model/filterExpressionDataType.mjs +1 -1
- package/esm2022/lib/smart-filter/api/filter/model/filterExpressionField.mjs +1 -1
- package/esm2022/lib/smart-filter/api/filter/model/filterExpressionFieldList.mjs +1 -1
- package/esm2022/lib/smart-filter/api/filter/model/filterExpressionFieldWidgetType.mjs +1 -1
- package/esm2022/lib/smart-filter/api/filter/model/filterExpressionList.mjs +1 -1
- package/esm2022/lib/smart-filter/api/filter/model/filterExpressionOperandData.mjs +1 -1
- package/esm2022/lib/smart-filter/api/filter/model/filterExpressionOperation.mjs +1 -1
- package/esm2022/lib/smart-filter/api/filter/model/filterExpressionOrderBy.mjs +1 -1
- package/esm2022/lib/smart-filter/api/filter/model/model.mjs +1 -1
- package/esm2022/lib/smart-filter/api/filter/model/searchIndexObjectDefinitionData.mjs +1 -1
- package/esm2022/lib/smart-filter/api/filter/model/searchIndexPropertyDefinitionData.mjs +1 -1
- package/esm2022/lib/smart-filter/api/value/model/value.mjs +1 -1
- package/esm2022/lib/smart-filter/projects.mjs +1 -1
- package/esm2022/lib/smart-filter/smart-filter/components/smart-filter-expression-field/smart-filter-expression-field.component.mjs +1 -1
- package/esm2022/lib/smart-filter/smart-filter/components/smart-filter-simple/components/smart-filter-simple-field/smart-filter-simple-field.component.mjs +3 -3
- package/esm2022/lib/smart-filter/smart-filter/components/smart-filter-simple/smart-filter-simple.component.mjs +3 -3
- package/esm2022/lib/smart-filter/smart-filter/smart-filter.component.mjs +3 -3
- package/esm2022/lib/smart-filter/smart-filter/smart-filter.service.mjs +1 -1
- package/esm2022/lib/smart-filter/smart-filter.model.mjs +1 -1
- package/esm2022/lib/smart-filter/smart-filter.module.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/api/api/filter.service.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/api/configuration.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/api/encoder.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBoolOperator.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBuilderApiConfig.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBuilderField.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBuilderGroup.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBuilderModel.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBuilderUiModel.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/api/model/filterExpressionData.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/api/model/filterExpressionDataType.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/api/model/filterExpressionField.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/api/model/filterExpressionFieldEditor.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/api/model/filterExpressionFieldList.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/api/model/filterExpressionFieldWidgetType.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/api/model/filterExpressionList.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/api/model/filterExpressionOperandData.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/api/model/filterExpressionOperation.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/api/model/filterExpressionOrderBy.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/api/model/smartFilterType.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/api/param.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/api/variables.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/filterExpressionBuilderApiActions.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/project.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/smart-filter-editor-content/components/smart-filter-expression-item/smart-filter-expression-item.component.mjs +3 -3
- package/esm2022/lib/smart-filter-editor/smart-filter-editor-content/components/smart-filter-expression-items/smart-filter-expression-items.component.mjs +3 -3
- package/esm2022/lib/smart-filter-editor/smart-filter-editor-content/smart-filter-editor-content.component.mjs +3 -3
- package/esm2022/lib/smart-filter-editor/smart-filter-editor.model.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/smart-filter-editor.module.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/smart-filter-editor.service.mjs +1 -1
- package/esm2022/lib/smart-filter-editor/smart-filter-params/components/smart-filter-param/smart-filter-param.component.mjs +3 -3
- package/esm2022/lib/smart-filter-editor/smart-filter-params/smart-filter-params.component.mjs +3 -3
- package/esm2022/lib/smart-form/api/api/api.mjs +1 -1
- package/esm2022/lib/smart-form/api/api/default.service.mjs +1 -1
- package/esm2022/lib/smart-form/api/api.module.mjs +1 -1
- package/esm2022/lib/smart-form/api/configuration.mjs +1 -1
- package/esm2022/lib/smart-form/api/encoder.mjs +1 -1
- package/esm2022/lib/smart-form/api/index.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/dateFieldProperties.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/fileUploaderProperties.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/imageProperties.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/models.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/multiFileUploaderProperties.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/propertyMapping.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/recordingUploaderProperties.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/selectionDefinition.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/smartFormInputMode.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/smartFormWidgetDirection.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/smartFormWidgetType.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/smartLayoutDefinition.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/smartMatrixModel.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/smartWidgetDefinition.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/smartWidgetHint.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/sortDefinition.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/textBoxProperties.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/textFieldProperties.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/valueChangeMode.mjs +1 -1
- package/esm2022/lib/smart-form/api/param.mjs +1 -1
- package/esm2022/lib/smart-form/api/variables.mjs +1 -1
- package/esm2022/lib/smart-form/highlightMacthingString-pipe.mjs +1 -1
- package/esm2022/lib/smart-form/projects.mjs +1 -1
- package/esm2022/lib/smart-form/services/smartform.layout-definition.service.mjs +1 -1
- package/esm2022/lib/smart-form/services/smartform.service.mjs +1 -1
- package/esm2022/lib/smart-form/smartfileuploader/large-file-snack-bar/large-file-snack-bar.component.mjs +3 -3
- package/esm2022/lib/smart-form/smartfileuploader/smartfileuploader.component.mjs +3 -3
- package/esm2022/lib/smart-form/smartfileuploader/smartfileuploader.model.mjs +1 -1
- package/esm2022/lib/smart-form/smartform.component.mjs +3 -3
- package/esm2022/lib/smart-form/smartform.form-model.mjs +1 -1
- package/esm2022/lib/smart-form/smartform.model.mjs +1 -1
- package/esm2022/lib/smart-form/widgets/components/smart-file-editor/smart-file-editor.component.mjs +3 -3
- package/esm2022/lib/smart-form/widgets/components/smart-month-picker/smart-month-picker.component.mjs +3 -3
- package/esm2022/lib/smart-form/widgets/components/smart-multi-file-editor/smart-multi-file-editor.component.mjs +3 -3
- package/esm2022/lib/smart-form/widgets/components/smart-voice-recorder/smart-voice-recorder.component.mjs +3 -3
- package/esm2022/lib/smart-form/widgets/directives/comparable-dropdown.directive.mjs +1 -1
- package/esm2022/lib/smart-form/widgets/directives/comparable-multiselect.directive.mjs +1 -1
- package/esm2022/lib/smart-form/widgets/smartformwidget/smartformwidget.component.mjs +3 -3
- package/esm2022/lib/smart-form/widgets/smartformwidget/sortable-widget/sortable-widget.component.mjs +3 -3
- package/esm2022/lib/smart-form/widgets/smartformwidget/trackCaps.directive.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/api/api.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/api/grid.service.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/api.module.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/configuration.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/encoder.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/index.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/model/gridColumnContentType.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/model/gridColumnMeta.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/model/gridDataAccessConfig.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/model/gridExportDescriptor.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/model/gridModel.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/model/gridPage.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/model/gridRow.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/model/gridSelectionChange.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/model/gridSelectionMode.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/model/gridSelectionType.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/model/gridServerModel.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/model/gridUpdateData.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/model/gridView.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/model/gridViewDescriptor.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/model/models.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/param.mjs +1 -1
- package/esm2022/lib/smart-grid/api/grid-api/variables.mjs +1 -1
- package/esm2022/lib/smart-grid/components/expandable-grid/expandable-grid.component.mjs +3 -3
- package/esm2022/lib/smart-grid/components/generic-component/expanded-row-renderer.component.mjs +3 -3
- package/esm2022/lib/smart-grid/components/smart-grid-card/smart-grid-card.component.mjs +3 -3
- package/esm2022/lib/smart-grid/components/table-layout-definer/table-layout-definer.component.mjs +3 -3
- package/esm2022/lib/smart-grid/models/model.mjs +1 -1
- package/esm2022/lib/smart-grid/projects.mjs +1 -1
- package/esm2022/lib/smart-grid/smart-grid-toolbar-util.mjs +1 -1
- package/esm2022/lib/smart-grid/smart-grid.component.mjs +3 -3
- package/esm2022/lib/smart-grid/smart-grid.module.mjs +1 -1
- package/esm2022/lib/smart-grid/smart-grid.service.mjs +1 -1
- package/esm2022/lib/smart-icon/projects.mjs +1 -1
- package/esm2022/lib/smart-icon/smart-icon/smart-icon.component.mjs +3 -3
- package/esm2022/lib/smart-icon/smart-icon/ui-badge/ui-badge.component.mjs +3 -3
- package/esm2022/lib/smart-icon/smart-icon/ui-badge/ui-badge.directive.mjs +1 -1
- package/esm2022/lib/smart-icon/smart-icon.module.mjs +1 -1
- package/esm2022/lib/smart-icon/smart-icon.service.mjs +1 -1
- package/esm2022/lib/smart-map/abstract-map.mjs +1 -1
- package/esm2022/lib/smart-map/api/api/api.mjs +1 -1
- package/esm2022/lib/smart-map/api/api/geoMap.service.mjs +1 -1
- package/esm2022/lib/smart-map/api/api.module.mjs +1 -1
- package/esm2022/lib/smart-map/api/configuration.mjs +1 -1
- package/esm2022/lib/smart-map/api/encoder.mjs +1 -1
- package/esm2022/lib/smart-map/api/index.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/gPSPosition.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/gPSRoute.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapChange.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapDataLoadingMode.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapDataSourceDescriptor.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapDataSourceType.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapEditingSession.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapInteraction.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapItem.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapItemKind.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapLayer.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapLayerChange.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapLayerDescriptor.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapModel.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapOperationMode.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapSelectionMode.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapServerModel.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapTextType.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapViewState.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapViewport.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/models.mjs +1 -1
- package/esm2022/lib/smart-map/api/param.mjs +1 -1
- package/esm2022/lib/smart-map/api/variables.mjs +1 -1
- package/esm2022/lib/smart-map/api-default/api-default.mjs +1 -1
- package/esm2022/lib/smart-map/impl/google-map.mjs +1 -1
- package/esm2022/lib/smart-map/impl/leaflet-map.mjs +1 -1
- package/esm2022/lib/smart-map/projects.mjs +1 -1
- package/esm2022/lib/smart-map/smart-map.component.mjs +3 -3
- package/esm2022/lib/smart-map/smart-map.module.mjs +1 -1
- package/esm2022/lib/smart-map/smart-map.types.mjs +1 -1
- package/esm2022/lib/smart-navbar/projects.mjs +1 -1
- package/esm2022/lib/smart-navbar/smart-navbar.component.mjs +3 -3
- package/esm2022/lib/smart-navbar/smart-navbar.model.mjs +1 -1
- package/esm2022/lib/smart-navbar/smart-navbar.module.mjs +1 -1
- package/esm2022/lib/smart-navbar/smart-navbar.service.mjs +1 -1
- package/esm2022/lib/smart-navigation/projects.mjs +1 -1
- package/esm2022/lib/smart-navigation/smart-navigation.interface.mjs +1 -1
- package/esm2022/lib/smart-navigation/smart-navigation.module.mjs +1 -1
- package/esm2022/lib/smart-navigation/smart-navigation.service.mjs +1 -1
- package/esm2022/lib/smart-ng-client.module.mjs +1 -1
- package/esm2022/lib/smart-ng-client.service.mjs +1 -1
- package/esm2022/lib/smart-subject/projects.mjs +1 -1
- package/esm2022/lib/smart-subject/smart-subject.mjs +1 -1
- package/esm2022/lib/smart-tab-group/projects.mjs +1 -1
- package/esm2022/lib/smart-tab-group/smart-tab-group.component.mjs +3 -3
- package/esm2022/lib/smart-tab-group/smart-tab-group.module.mjs +1 -1
- package/esm2022/lib/smart-tab-group/smart-tab-group.service.mjs +1 -1
- package/esm2022/lib/smart-tab-group/tab-content/tab-content.component.mjs +3 -3
- package/esm2022/lib/smart-tab-group/tab-group-simplified/tab-group.component.mjs +3 -3
- package/esm2022/lib/smart-tab-group/tabTile.model.mjs +1 -1
- package/esm2022/lib/smart-table/components/default-actions-popup/default-actions-popup.component.mjs +3 -3
- package/esm2022/lib/smart-table/components/loading/loading.component.mjs +3 -3
- package/esm2022/lib/smart-table/directives/mat-context-menu-trigger-for.directive.mjs +1 -1
- package/esm2022/lib/smart-table/projects.mjs +1 -1
- package/esm2022/lib/smart-table/smarttable.component.mjs +3 -3
- package/esm2022/lib/smart-table/smarttable.model.mjs +1 -1
- package/esm2022/lib/smart-table/smarttable.module.mjs +1 -1
- package/esm2022/lib/smart-table/smarttable.service.mjs +1 -1
- package/esm2022/lib/smart-table/tables/material-table/material-table.component.mjs +3 -3
- package/esm2022/lib/smart-table/tables/mobile-table/mobile-table.component.mjs +3 -3
- package/esm2022/lib/smart-table/tables/table.mjs +1 -1
- package/esm2022/lib/smart-tree/projects.mjs +1 -1
- package/esm2022/lib/smart-tree/smarttree-generic.service.mjs +1 -1
- package/esm2022/lib/smart-tree/smarttree.component.mjs +3 -3
- package/esm2022/lib/smart-tree/smarttree.model.mjs +1 -1
- package/esm2022/lib/smart-tree/smarttree.module.mjs +1 -1
- package/esm2022/lib/smart-tree/smarttree.node.model.mjs +1 -1
- package/esm2022/lib/smart-tree/smarttree.service.interface.mjs +1 -1
- package/esm2022/lib/smart-tree/smarttree.service.mjs +1 -1
- package/esm2022/lib/smart-tree/tree-api/api/tree.service.mjs +1 -1
- package/esm2022/lib/smart-tree/tree-api/configuration.mjs +1 -1
- package/esm2022/lib/smart-tree/tree-api/encoder.mjs +1 -1
- package/esm2022/lib/smart-tree/tree-api/param.mjs +1 -1
- package/esm2022/lib/smart-tree/tree-api/variables.mjs +1 -1
- package/esm2022/lib/smart-validation/named-validator.service.mjs +1 -1
- package/esm2022/lib/smart-validation/projects.mjs +1 -1
- package/esm2022/lib/smart-validation/smart-validation.module.mjs +1 -1
- package/esm2022/lib/smart-validation/smart-validation.types.mjs +1 -1
- package/esm2022/lib/view-context/api/api-default/binaryData.mjs +1 -1
- package/esm2022/lib/view-context/api/api-default/invocationError.mjs +1 -1
- package/esm2022/lib/view-context/api/api-default/invocationRequest.mjs +1 -1
- package/esm2022/lib/view-context/api/api-default/invocationRun.mjs +1 -1
- package/esm2022/lib/view-context/api/model/iconPosition.mjs +1 -1
- package/esm2022/lib/view-context/api/model/namedValidator.mjs +1 -1
- package/esm2022/lib/view-context/invalid-fields-snack-bar/invalid-fields-snack-bar.component.mjs +3 -3
- package/esm2022/lib/view-context/message-dialog/message-dialog.component.mjs +3 -3
- package/esm2022/lib/view-context/projects.mjs +1 -1
- package/esm2022/lib/view-context/property-definition-data.mjs +1 -1
- package/esm2022/lib/view-context/smart-embedded-slot.directive.mjs +1 -1
- package/esm2022/lib/view-context/smart-ui-action/components/menu/menu.component.mjs +3 -3
- package/esm2022/lib/view-context/smart-ui-action/components/menu/menu.constants.mjs +1 -1
- package/esm2022/lib/view-context/smart-ui-action/components/menu/menu.service.mjs +1 -1
- package/esm2022/lib/view-context/smart-ui-action/components/success-snack-bar/success-snack-bar.component.mjs +3 -3
- package/esm2022/lib/view-context/smart-ui-action/components/upload-widget/photo-capture-widget/photo-capture-widget.component.mjs +3 -3
- package/esm2022/lib/view-context/smart-ui-action/components/upload-widget/prime-file-uploader/prime-file-uploader.component.mjs +3 -3
- package/esm2022/lib/view-context/smart-ui-action/components/upload-widget/upload-widget.component.mjs +3 -3
- package/esm2022/lib/view-context/smart-ui-action/components/upload-widget/upload-widget.utils.mjs +1 -1
- package/esm2022/lib/view-context/smart-ui-action/components/upload-widget/voice-record-widget/voice-record-widget.component.mjs +3 -3
- package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-confirm-dialog/ui-action-confirm-dialog.component.mjs +3 -3
- package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-confirm-dialog/ui-action-confirm-dialog.service.mjs +1 -1
- package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-dialog-button/ui-action-dialog-button.component.mjs +3 -3
- package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-file-upload-dialog/ui-action-file-upload-dialog.component.mjs +3 -3
- package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-file-upload-dialog/ui-action-file-upload-dialog.service.mjs +1 -1
- package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-input-dialog/ui-action-input-dialog.component.mjs +3 -3
- package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-input-dialog/ui-action-input-dialog.service.mjs +1 -1
- package/esm2022/lib/view-context/smart-ui-action/file-editor-toolbar/file-editor-toolbar.component.mjs +3 -3
- package/esm2022/lib/view-context/smart-ui-action/ui-action-button/ui-action-button.component.mjs +3 -3
- package/esm2022/lib/view-context/smart-ui-action/ui-action-toolbar.component.mjs +3 -3
- package/esm2022/lib/view-context/smart-ui-action/ui-action.descriptor.service.mjs +1 -1
- package/esm2022/lib/view-context/smart-ui-action/ui-action.model.mjs +1 -1
- package/esm2022/lib/view-context/smart-ui-action/ui-action.service.mjs +1 -1
- package/esm2022/lib/view-context/smart-view-context-dialog.service.mjs +1 -1
- package/esm2022/lib/view-context/smart-view-context-error-dialog/smart-view-context-error-dialog.component.mjs +3 -3
- package/esm2022/lib/view-context/smart-view-context-error-dialog/smart-view-context-error-dialog.service.mjs +1 -1
- package/esm2022/lib/view-context/smart-view-context.interceptor.mjs +1 -1
- package/esm2022/lib/view-context/smart-view-context.model.mjs +1 -1
- package/esm2022/lib/view-context/smart-view-context.module.mjs +1 -1
- package/esm2022/lib/view-context/smart-view-context.service.mjs +1 -1
- package/esm2022/lib/view-context/smart-view-redirect/smart-view-redirect.mjs +1 -1
- package/esm2022/lib/view-context/utility/componentLibrary.mjs +1 -1
- package/esm2022/lib/view-context/utility/smart-object-utility.mjs +1 -1
- package/esm2022/lib/view-context/utility/smart-style-utility.mjs +1 -1
- package/esm2022/lib/view-context/value-api/api/api.mjs +1 -1
- package/esm2022/lib/view-context/value-api/api/value.service.mjs +1 -1
- package/esm2022/lib/view-context/value-api/api.module.mjs +1 -1
- package/esm2022/lib/view-context/value-api/configuration.mjs +1 -1
- package/esm2022/lib/view-context/value-api/encoder.mjs +1 -1
- package/esm2022/lib/view-context/value-api/index.mjs +1 -1
- package/esm2022/lib/view-context/value-api/model/genericValue.mjs +1 -1
- package/esm2022/lib/view-context/value-api/model/models.mjs +1 -1
- package/esm2022/lib/view-context/value-api/model/value.mjs +1 -1
- package/esm2022/lib/view-context/value-api/model/valueSetData.mjs +1 -1
- package/esm2022/lib/view-context/value-api/model/valueSetDefinition.mjs +1 -1
- package/esm2022/lib/view-context/value-api/model/valueSetDefinitionData.mjs +1 -1
- package/esm2022/lib/view-context/value-api/model/valueSetDefinitionIdentifier.mjs +1 -1
- package/esm2022/lib/view-context/value-api/model/valueSetDefinitionKind.mjs +1 -1
- package/esm2022/lib/view-context/value-api/model/valueSetExpression.mjs +1 -1
- package/esm2022/lib/view-context/value-api/model/valueSetOperand.mjs +1 -1
- package/esm2022/lib/view-context/value-api/model/valueSetOperation.mjs +1 -1
- package/esm2022/lib/view-context/value-api/param.mjs +1 -1
- package/esm2022/lib/view-context/value-api/variables.mjs +1 -1
- package/esm2022/projects.mjs +1 -1
- package/fesm2022/smartbit4all-ng-client.mjs +409 -385
- package/fesm2022/smartbit4all-ng-client.mjs.map +1 -1
- package/lib/session/smart-error-catching.interceptor.d.ts +2 -1
- package/lib/session/smart-session.service.d.ts +18 -1
- package/package.json +1 -1
- package/smartbit4all-ng-client-4.5.33.tgz +0 -0
- package/smartbit4all-ng-client-4.5.31.tgz +0 -0
|
@@ -211,4 +211,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
|
|
|
211
211
|
type: Injectable,
|
|
212
212
|
args: [{ providedIn: 'root' }]
|
|
213
213
|
}], ctorParameters: () => [{ type: i1.SmartSessionService }, { type: i2.SmartViewContextService }] });
|
|
214
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtYmFja2VuZC1ib290c3RyYXAuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LW5nLWNsaWVudC9zcmMvbGliL3Nlc3Npb24vc21hcnQtYmFja2VuZC1ib290c3RyYXAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBVzNDOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsS0FBSztJQUNoRDtRQUNFLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxJQUFJLEdBQUcseUJBQXlCLENBQUM7SUFDeEMsQ0FBQztDQUNGO0FBR0QsTUFBTSxPQUFPLDRCQUE0QjtJQVF2QyxZQUNVLE9BQTRCLEVBQzVCLFdBQW9DO1FBRHBDLFlBQU8sR0FBUCxPQUFPLENBQXFCO1FBQzVCLGdCQUFXLEdBQVgsV0FBVyxDQUF5QjtRQVB0QyxtQkFBYyxHQUFHLEtBQUssQ0FBQztJQVE1QixDQUFDO0lBRUosU0FBUyxDQUFDLE1BQW1DO1FBQzNDLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2hCLE9BQU8sQ0FBQyxJQUFJLENBQUMsdUZBQXVGLENBQUMsQ0FBQztZQUN0RyxPQUFPO1FBQ1QsQ0FBQztRQUNELElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBRXJCLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDOUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUU1QyxJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxNQUFN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LG1CQUFtQixFQUFFLENBQUM7WUFDN0IsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUM7UUFDbEMsQ0FBQztRQUNELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3JELE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDO0lBQ2xDLENBQUM7SUFFTyxLQUFLLENBQUMsZUFBZSxDQUFDLEdBQWlCO1FBQzdDLElBQUksQ0FBQztZQUNILElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxjQUFjLEVBQUUsQ0FBQztnQkFDaEMsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDdEMsT0FBTztZQUNULENBQUM7WUFDRCxrRkFBa0Y7WUFDbEYsaUZBQWlGO1lBQ2pGLE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO1FBQy9DLENBQUM7Z0JBQVMsQ0FBQztZQUNULElBQUksQ0FBQyxtQkFBbUIsR0FBRyxTQUFTLENBQUM7UUFDdkMsQ0FBQztJQUNILENBQUM7K0dBdk5VLDRCQUE0QjttSEFBNUIsNEJBQTRCLGNBRGYsTUFBTTs7NEZBQ25CLDRCQUE0QjtrQkFEeEMsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTbWFydFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi9zbWFydC1zZXNzaW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTbWFydFZpZXdDb250ZXh0U2VydmljZSB9IGZyb20gJy4uL3ZpZXctY29udGV4dC9zbWFydC12aWV3LWNvbnRleHQuc2VydmljZSc7XHJcbmltcG9ydCB7IFNlc3Npb25FcnJvciwgU21hcnRTZXNzaW9uSGFuZGxlclNlcnZpY2UgfSBmcm9tICcuL3NtYXJ0LXNlc3Npb24taGFuZGxlci5zZXJ2aWNlJztcclxuaW1wb3J0IHtcclxuICBTbWFydEJhY2tlbmRCb290c3RyYXBDb25maWcsXHJcbiAgU21hcnRCYWNrZW5kQm9vdHN0cmFwQ3JlZGVudGlhbHMsXHJcbn0gZnJvbSAnLi9zbWFydC1iYWNrZW5kLWJvb3RzdHJhcC5jb25maWcnO1xyXG5cclxudHlwZSBCb290c3RyYXBNb2RlID0gJ3N0YXJ0JyB8ICdib290c3RyYXBXaXRoJztcclxuXHJcbi8qKlxyXG4gKiBUaHJvd24gYnkgYHdoZW5SZWFkeSgpYCB3aGVuIHRoZSB2aWV3Y29udGV4dCB3YXMgcmVidWlsdCBiZXR3ZWVuIHRoZVxyXG4gKiBjYWxsZXIncyBlbnRyeSBpbnRvIGB3aGVuUmVhZHkoKWAgYW5kIHRoZSBnYXRlIHJlbGVhc2luZy4gQW55IHV1aWQgdGhlXHJcbiAqIGNhbGxlciByZXNvbHZlZCBiZWZvcmUgZW50ZXJpbmcgaXMgbm93IHN0YWxlOyBgU21hcnRDb21wb25lbnRBcGlDbGllbnQucnVuKClgXHJcbiAqIGNhdGNoZXMgdGhpcyBhbmQgc2tpcHMgdGhlIGxvYWQg4oCUIHRoZSBjb21wb25lbnQgaXMgZXhwZWN0ZWQgdG8gcmVjZWl2ZSBhXHJcbiAqIGZyZXNoIHV1aWQgdGhyb3VnaCBgdXVpZE9mUGFnZUhhc0JlZW5DaGFuZ2VkYCAoTk9STUFMIHZpZXdzKSBvciB0byBiZVxyXG4gKiByZWNyZWF0ZWQgYnkgYG9wZW5WaWV3YCAoRU1CRURERUQvRElBTE9HIHZpZXdzKS5cclxuICovXHJcbmV4cG9ydCBjbGFzcyBWaWV3Q29udGV4dFJlYnVpbHRFcnJvciBleHRlbmRzIEVycm9yIHtcclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHN1cGVyKCdWaWV3Q29udGV4dFJlYnVpbHQnKTtcclxuICAgIHRoaXMubmFtZSA9ICdWaWV3Q29udGV4dFJlYnVpbHRFcnJvcic7XHJcbiAgfVxyXG59XHJcblxyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgU21hcnRCYWNrZW5kQm9vdHN0cmFwU2VydmljZSBpbXBsZW1lbnRzIFNtYXJ0U2Vzc2lvbkhhbmRsZXJTZXJ2aWNlIHtcclxuICBwcml2YXRlIGNvbmZpZz86IFNtYXJ0QmFja2VuZEJvb3RzdHJhcENvbmZpZztcclxuICBwcml2YXRlIHJ1bm5pbmdJbml0PzogUHJvbWlzZTx2b2lkPjtcclxuICBwcml2YXRlIGxhc3RJbml0RmFpbGVkID0gZmFsc2U7XHJcbiAgcHJpdmF0ZSBtb2RlPzogQm9vdHN0cmFwTW9kZTtcclxuICBwcml2YXRlIHJ1bm5pbmdWaWV3Q29udGV4dExvc3Q/OiBQcm9taXNlPHZvaWQ+O1xyXG4gIHByaXZhdGUgcnVubmluZ1Nlc3Npb25FcnJvcj86IFByb21pc2U8dm9pZD47XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBzZXNzaW9uOiBTbWFydFNlc3Npb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB2aWV3Q29udGV4dDogU21hcnRWaWV3Q29udGV4dFNlcnZpY2UsXHJcbiAgKSB7fVxyXG5cclxuICBjb25maWd1cmUoY29uZmlnOiBTbWFydEJhY2tlbmRCb290c3RyYXBDb25maWcpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmNvbmZpZykge1xyXG4gICAgICBjb25zb2xlLndhcm4oJ1NtYXJ0QmFja2VuZEJvb3RzdHJhcFNlcnZpY2UgYWxyZWFkeSBjb25maWd1cmVkOyBpZ25vcmluZyBkdXBsaWNhdGUgY29uZmlndXJlKCkgY2FsbC4nKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jb25maWcgPSBjb25maWc7XHJcblxyXG4gICAgdGhpcy5zZXNzaW9uLnNldFVybChjb25maWcudXJsKTtcclxuICAgIHRoaXMuc2Vzc2lvbi5zZXRDb29raWVOYW1lKGNvbmZpZy5jb29raWVOYW1lKTtcclxuICAgIHRoaXMuc2Vzc2lvbi5zZXRTZXNzaW9uSGFuZGxlclNlcnZpY2UodGhpcyk7XHJcblxyXG4gICAgdGhpcy52aWV3Q29udGV4dC5zZXRWaWV3SGFuZGxlcnMoY29uZmlnLnZpZXdIYW5kbGVycyk7XHJcbiAgICB0aGlzLnZpZXdDb250ZXh0LnNldE1lc3NhZ2VEaWFsb2dOYW1lKGNvbmZpZy5tZXNzYWdlRGlhbG9nTmFtZSA/PyAnbWVzc2FnZS1kaWFsb2cnKTtcclxuICAgIHRoaXMudmlld0NvbnRleHQuc2V0QWN0aW9uRGVzY3JpcHRvcnMoY29uZmlnLmFjdGlvbkRlc2NyaXB0b3JzKTtcclxuXHJcbiAgICB0aGlzLnZpZXdDb250ZXh0Lm9wZW5TbWFydExpbmsuc3Vic2NyaWJlKChjaGFubmVsOiBzdHJpbmcpID0+IHtcclxuICAgICAgdGhpcy5oYW5kbGVTbWFydExpbmsoY2hhbm5lbCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgaGFuZGxlU21hcnRMaW5rKGNoYW5uZWw6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgaWYgKHRoaXMuY29uZmlnPy5vblNtYXJ0TGluaykge1xyXG4gICAgICBhd2FpdCB0aGlzLmNvbmZpZy5vblNtYXJ0TGluayhjaGFubmVsKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgLy8gRGVmYXVsdDogc2ltcGx5IHVuYmxvY2sgc2hvd1B1Ymxpc2hlZFZpZXcncyBgYXdhaXQgb3BlblNtYXJ0TGluay50b1Byb21pc2UoKWAuXHJcbiAgICAvLyBUaGUgdmlld0NvbnRleHQgaXMgYWxyZWFkeSBpbml0aWFsaXplZCBieSBzdGFydCgpL2Jvb3RzdHJhcFdpdGgoKSDigJQgY2FsbGluZ1xyXG4gICAgLy8gaW5pdGlhbGl6ZSgpIGhlcmUgd2l0aG91dCBhIHV1aWQgd291bGQgYWx3YXlzIHRyaWdnZXIgc3RhcnRWaWV3Q29udGV4dCgpLFxyXG4gICAgLy8gY3JlYXRpbmcgYSBzZWNvbmQgdmlld2NvbnRleHQgYW5kIHByb2R1Y2luZyBkdXBsaWNhdGUgVUkgKGUuZy4gdHdvIGxvZ2luIHBhZ2VzKS5cclxuICAgIHRoaXMudmlld0NvbnRleHQub3BlblNtYXJ0TGluay5jb21wbGV0ZSgpO1xyXG4gIH1cclxuXHJcbiAgc3RhcnQoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBpZiAoIXRoaXMuY29uZmlnKSB7XHJcbiAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoJ1NtYXJ0QmFja2VuZEJvb3RzdHJhcFNlcnZpY2UuY29uZmlndXJlKCkgbXVzdCBiZSBjYWxsZWQgYmVmb3JlIHN0YXJ0KCkuJykpO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMubW9kZSA9PT0gJ2Jvb3RzdHJhcFdpdGgnICYmICF0aGlzLmxhc3RJbml0RmFpbGVkKSB7XHJcbiAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoXHJcbiAgICAgICAgJ1NtYXJ0QmFja2VuZEJvb3RzdHJhcFNlcnZpY2UuYm9vdHN0cmFwV2l0aCgpIHdhcyBhbHJlYWR5IGNhbGxlZDsgc3RhcnQoKSBpcyBtdXR1YWxseSBleGNsdXNpdmUgd2l0aCBpdC4gQ2FsbCByZXNldCgpIGZpcnN0IHRvIHN3aXRjaCBlbnRyeSBwb2ludHMuJyxcclxuICAgICAgKSk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5ydW5uaW5nSW5pdCAmJiAhdGhpcy5sYXN0SW5pdEZhaWxlZCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5ydW5uaW5nSW5pdDtcclxuICAgIH1cclxuICAgIHRoaXMubW9kZSA9ICdzdGFydCc7XHJcbiAgICB0aGlzLmxhc3RJbml0RmFpbGVkID0gZmFsc2U7XHJcbiAgICB0aGlzLnJ1bm5pbmdJbml0ID0gdGhpcy5ydW5Jbml0KCk7XHJcbiAgICByZXR1cm4gdGhpcy5ydW5uaW5nSW5pdDtcclxuICB9XHJcblxyXG4gIGJvb3RzdHJhcFdpdGgoY3JlZHM6IFNtYXJ0QmFja2VuZEJvb3RzdHJhcENyZWRlbnRpYWxzKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBpZiAoIXRoaXMuY29uZmlnKSB7XHJcbiAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoJ1NtYXJ0QmFja2VuZEJvb3RzdHJhcFNlcnZpY2UuY29uZmlndXJlKCkgbXVzdCBiZSBjYWxsZWQgYmVmb3JlIGJvb3RzdHJhcFdpdGgoKS4nKSk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5tb2RlID09PSAnc3RhcnQnICYmICF0aGlzLmxhc3RJbml0RmFpbGVkKSB7XHJcbiAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoXHJcbiAgICAgICAgJ1NtYXJ0QmFja2VuZEJvb3RzdHJhcFNlcnZpY2Uuc3RhcnQoKSB3YXMgYWxyZWFkeSBjYWxsZWQ7IGJvb3RzdHJhcFdpdGgoKSBpcyBtdXR1YWxseSBleGNsdXNpdmUgd2l0aCBpdC4gQ2FsbCByZXNldCgpIGZpcnN0IHRvIHN3aXRjaCBlbnRyeSBwb2ludHMuJyxcclxuICAgICAgKSk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5ydW5uaW5nSW5pdCAmJiAhdGhpcy5sYXN0SW5pdEZhaWxlZCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5ydW5uaW5nSW5pdDtcclxuICAgIH1cclxuICAgIHRoaXMubW9kZSA9ICdib290c3RyYXBXaXRoJztcclxuICAgIHRoaXMubGFzdEluaXRGYWlsZWQgPSBmYWxzZTtcclxuICAgIHRoaXMucnVubmluZ0luaXQgPSB0aGlzLnJ1bkJvb3RzdHJhcFdpdGgoY3JlZHMpO1xyXG4gICAgcmV0dXJuIHRoaXMucnVubmluZ0luaXQ7XHJcbiAgfVxyXG5cclxuICBhc3luYyB3aGVuUmVhZHkoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBpZiAoIXRoaXMucnVubmluZ0luaXQpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdCb290c3RyYXBOb3RTdGFydGVkJyk7XHJcbiAgICB9XHJcbiAgICBhd2FpdCB0aGlzLnJ1bm5pbmdJbml0O1xyXG4gICAgY29uc3QgZ2VuZXJhdGlvbkJlZm9yZSA9IHRoaXMudmlld0NvbnRleHQuZ2V0R2VuZXJhdGlvbigpO1xyXG4gICAgLy8gR2F0ZSBvbiBhbnkgaW4tZmxpZ2h0IHNlc3Npb24vdmlld2NvbnRleHQgcmVjb3Zlcnkgc28gYSBjb21wb25lbnQnc1xyXG4gICAgLy8gQkZGIGNhbGwgY2Fubm90IHJhY2UgYWdhaW5zdCB0aGUgc2Vzc2lvbiBiZWluZyB0b3JuIGRvd24gYW5kIHJlYnVpbHQuXHJcbiAgICAvLyBUaGUgbG9vcCBoYW5kbGVzIGNhc2NhZGluZyByZWNvdmVyaWVzIChlLmcuIHZjLWxvc3Qgc3VyZmFjZXMgZHVyaW5nXHJcbiAgICAvLyBhIHNlc3Npb24gcmVzdGFydCk6IGVhY2ggc2V0dGxlIGNsZWFycyBpdHMgb3duIGxhdGNoIGluIGZpbmFsbHksIGFuZFxyXG4gICAgLy8gdGhlIG5leHQgaXRlcmF0aW9uIHBpY2tzIHVwIHdoYXRldmVyIHN0YXJ0ZWQgaW4gdGhlIG1lYW50aW1lLlxyXG4gICAgd2hpbGUgKHRoaXMucnVubmluZ1ZpZXdDb250ZXh0TG9zdCB8fCB0aGlzLnJ1bm5pbmdTZXNzaW9uRXJyb3IpIHtcclxuICAgICAgYXdhaXQgdGhpcy5ydW5uaW5nVmlld0NvbnRleHRMb3N0O1xyXG4gICAgICBhd2FpdCB0aGlzLnJ1bm5pbmdTZXNzaW9uRXJyb3I7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy52aWV3Q29udGV4dC5nZXRHZW5lcmF0aW9uKCkgIT09IGdlbmVyYXRpb25CZWZvcmUpIHtcclxuICAgICAgdGhyb3cgbmV3IFZpZXdDb250ZXh0UmVidWlsdEVycm9yKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBhc3luYyByZXNldCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMucnVubmluZ0luaXQgPSB1bmRlZmluZWQ7XHJcbiAgICB0aGlzLmxhc3RJbml0RmFpbGVkID0gZmFsc2U7XHJcbiAgICB0aGlzLm1vZGUgPSB1bmRlZmluZWQ7XHJcbiAgICB0aGlzLnJ1bm5pbmdWaWV3Q29udGV4dExvc3QgPSB1bmRlZmluZWQ7XHJcbiAgICB0aGlzLnJ1bm5pbmdTZXNzaW9uRXJyb3IgPSB1bmRlZmluZWQ7XHJcbiAgICByZXR1cm4gdGhpcy5zdGFydCgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2FsbGVkIGJ5IGBTbWFydEVycm9yQ2F0Y2hpbmdJbnRlcmNlcHRvcmAgd2hlbiB0aGUgYmFja2VuZCByZXBvcnRzXHJcbiAgICogYHNlc3Npb24udmlld2NvbnRleHQubWlzc2luZ2AuIElkZW1wb3RlbnQgYWNyb3NzIGNvbmN1cnJlbnQgYW5kXHJcbiAgICogc2VxdWVudGlhbCBjYWxscyB1bnRpbCB0aGUgbmV4dCBgcmVzZXQoKWAg4oCUIG11bHRpcGxlIHJhY2luZyBCRkZcclxuICAgKiBmYWlsdXJlcyBjb2xsYXBzZSBpbnRvIGEgc2luZ2xlIHJlY292ZXJ5IGF0dGVtcHQuXHJcbiAgICovXHJcbiAgaGFuZGxlVmlld0NvbnRleHRMb3N0KGVycjogU2Vzc2lvbkVycm9yKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBpZiAoIXRoaXMuY29uZmlnKSB7XHJcbiAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoXHJcbiAgICAgICAgJ1NtYXJ0QmFja2VuZEJvb3RzdHJhcFNlcnZpY2UuY29uZmlndXJlKCkgbXVzdCBiZSBjYWxsZWQgYmVmb3JlIGhhbmRsZVZpZXdDb250ZXh0TG9zdCgpLicsXHJcbiAgICAgICkpO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMucnVubmluZ1ZpZXdDb250ZXh0TG9zdCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5ydW5uaW5nVmlld0NvbnRleHRMb3N0O1xyXG4gICAgfVxyXG4gICAgdGhpcy5ydW5uaW5nVmlld0NvbnRleHRMb3N0ID0gdGhpcy5ydW5WaWV3Q29udGV4dExvc3QoZXJyKTtcclxuICAgIHJldHVybiB0aGlzLnJ1bm5pbmdWaWV3Q29udGV4dExvc3Q7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFzeW5jIHJ1blZpZXdDb250ZXh0TG9zdChlcnI6IFNlc3Npb25FcnJvcik6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdHJ5IHtcclxuICAgICAgaWYgKHRoaXMuY29uZmlnPy5vblZpZXdDb250ZXh0TG9zdCkge1xyXG4gICAgICAgIGF3YWl0IHRoaXMuY29uZmlnLm9uVmlld0NvbnRleHRMb3N0KGVycik7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGF3YWl0IHRoaXMudmlld0NvbnRleHQuaW5pdE5ld1ZpZXdDb250ZXh0KCk7XHJcbiAgICB9IGZpbmFsbHkge1xyXG4gICAgICB0aGlzLnJ1bm5pbmdWaWV3Q29udGV4dExvc3QgPSB1bmRlZmluZWQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDYWxsZWQgYnkgYFNtYXJ0RXJyb3JDYXRjaGluZ0ludGVyY2VwdG9yYCBmb3IgdHJhbnNwb3J0LWxldmVsIGZhaWx1cmVzXHJcbiAgICogKHN0YXR1cyAwLCA1eHgpLiBGaXJlLWFuZC1mb3JnZXQ7IHRoZSByZXF1ZXN0IHN0aWxsIHJlamVjdHMgd2l0aCB0aGVcclxuICAgKiBvcmlnaW5hbCBlcnJvciBzbyBjYWxsZXJzIGNhbiBkbyBwZXItY2FsbCBoYW5kbGluZy5cclxuICAgKi9cclxuICBhc3luYyBoYW5kbGVUcmFuc3BvcnRFcnJvcihlcnI6IEh0dHBFcnJvclJlc3BvbnNlKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBpZiAoIXRoaXMuY29uZmlnKSB7XHJcbiAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoXHJcbiAgICAgICAgJ1NtYXJ0QmFja2VuZEJvb3RzdHJhcFNlcnZpY2UuY29uZmlndXJlKCkgbXVzdCBiZSBjYWxsZWQgYmVmb3JlIGhhbmRsZVRyYW5zcG9ydEVycm9yKCkuJyxcclxuICAgICAgKSk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5jb25maWcub25UcmFuc3BvcnRFcnJvcikge1xyXG4gICAgICBhd2FpdCB0aGlzLmNvbmZpZy5vblRyYW5zcG9ydEVycm9yKGVycik7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnNvbGUud2FybignVHJhbnNwb3J0IGVycm9yIOKAlCBzZXJ2ZXIgdW5yZWFjaGFibGUgb3IgNXh4JywgZXJyKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgcnVuSW5pdCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRyeSB7XHJcbiAgICAgIGF3YWl0IHRoaXMuc2Vzc2lvbi5pbml0aWFsaXplKCk7XHJcbiAgICAgIGF3YWl0IHRoaXMudmlld0NvbnRleHQuaW5pdFZpZXdDb250ZXh0KCk7XHJcbiAgICB9IGNhdGNoIChlcnIpIHtcclxuICAgICAgYXdhaXQgdGhpcy5oYW5kbGVJbml0RmFpbHVyZShlcnIpO1xyXG4gICAgICB0aHJvdyBlcnI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFzeW5jIHJ1bkJvb3RzdHJhcFdpdGgoY3JlZHM6IFNtYXJ0QmFja2VuZEJvb3RzdHJhcENyZWRlbnRpYWxzKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0cnkge1xyXG4gICAgICB0aGlzLnNlc3Npb24uc2V0U2Vzc2lvblRva2VuKGNyZWRzLnNlc3Npb25Ub2tlbiwgY3JlZHMucmVmcmVzaFRva2VuKTtcclxuICAgICAgYXdhaXQgdGhpcy52aWV3Q29udGV4dC5pbml0RnJvbUV4aXN0aW5nVmlld0NvbnRleHQoY3JlZHMudmlld0NvbnRleHRVdWlkKTtcclxuICAgIH0gY2F0Y2ggKGVycikge1xyXG4gICAgICBhd2FpdCB0aGlzLmhhbmRsZUluaXRGYWlsdXJlKGVycik7XHJcbiAgICAgIHRocm93IGVycjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgaGFuZGxlSW5pdEZhaWx1cmUoZXJyOiB1bmtub3duKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLmxhc3RJbml0RmFpbGVkID0gdHJ1ZTtcclxuICAgIGlmICh0aGlzLmNvbmZpZz8ub25TdGFydEVycm9yKSB7XHJcbiAgICAgIHRyeSB7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5jb25maWcub25TdGFydEVycm9yKGVycik7XHJcbiAgICAgIH0gY2F0Y2ggKGNhbGxiYWNrRXJyKSB7XHJcbiAgICAgICAgY29uc29sZS5lcnJvcignU21hcnRCYWNrZW5kQm9vdHN0cmFwU2VydmljZS5vblN0YXJ0RXJyb3IgY2FsbGJhY2sgdGhyZXcnLCBjYWxsYmFja0Vycik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGhhbmRsZVNlc3Npb25FcnJvcihlcnI6IFNlc3Npb25FcnJvcik6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgaWYgKCF0aGlzLmNvbmZpZykge1xyXG4gICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKFxyXG4gICAgICAgICdTbWFydEJhY2tlbmRCb290c3RyYXBTZXJ2aWNlLmNvbmZpZ3VyZSgpIG11c3QgYmUgY2FsbGVkIGJlZm9yZSBoYW5kbGVTZXNzaW9uRXJyb3IoKS4nLFxyXG4gICAgICApKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnJ1bm5pbmdTZXNzaW9uRXJyb3IpIHtcclxuICAgICAgcmV0dXJuIHRoaXMucnVubmluZ1Nlc3Npb25FcnJvcjtcclxuICAgIH1cclxuICAgIHRoaXMucnVubmluZ1Nlc3Npb25FcnJvciA9IHRoaXMucnVuU2Vzc2lvbkVycm9yKGVycik7XHJcbiAgICByZXR1cm4gdGhpcy5ydW5uaW5nU2Vzc2lvbkVycm9yO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyBydW5TZXNzaW9uRXJyb3IoZXJyOiBTZXNzaW9uRXJyb3IpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRyeSB7XHJcbiAgICAgIGlmICh0aGlzLmNvbmZpZz8ub25TZXNzaW9uRXJyb3IpIHtcclxuICAgICAgICBhd2FpdCB0aGlzLmNvbmZpZy5vblNlc3Npb25FcnJvcihlcnIpO1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICAvLyBEZWZhdWx0OiBjbGVhciB0aGUgc2Vzc2lvbiBhbmQgbGV0IHRoZSBiYWNrZW5kIHJlYnVpbGQgdmlhIFJFU1RBUlRfVklFV0NPTlRFWFQuXHJcbiAgICAgIC8vIE5vIHJvdXRlciBuYXZpZ2F0aW9uIGhlcmUg4oCUIHRoZSBuZXcgdmlld2NvbnRleHQgZHJpdmVzIG5hdmlnYXRpb24gc2VydmVyLXNpZGUuXHJcbiAgICAgIGF3YWl0IHRoaXMuc2Vzc2lvbi5jbGVhckFuZFN0YXJ0TmV3U2Vzc2lvbigpO1xyXG4gICAgfSBmaW5hbGx5IHtcclxuICAgICAgdGhpcy5ydW5uaW5nU2Vzc2lvbkVycm9yID0gdW5kZWZpbmVkO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
214
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtYmFja2VuZC1ib290c3RyYXAuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LW5nLWNsaWVudC9zcmMvbGliL3Nlc3Npb24vc21hcnQtYmFja2VuZC1ib290c3RyYXAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBVzNDOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsS0FBSztJQUNoRDtRQUNFLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxJQUFJLEdBQUcseUJBQXlCLENBQUM7SUFDeEMsQ0FBQztDQUNGO0FBR0QsTUFBTSxPQUFPLDRCQUE0QjtJQVF2QyxZQUNVLE9BQTRCLEVBQzVCLFdBQW9DO1FBRHBDLFlBQU8sR0FBUCxPQUFPLENBQXFCO1FBQzVCLGdCQUFXLEdBQVgsV0FBVyxDQUF5QjtRQVB0QyxtQkFBYyxHQUFHLEtBQUssQ0FBQztJQVE1QixDQUFDO0lBRUosU0FBUyxDQUFDLE1BQW1DO1FBQzNDLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2hCLE9BQU8sQ0FBQyxJQUFJLENBQUMsdUZBQXVGLENBQUMsQ0FBQztZQUN0RyxPQUFPO1FBQ1QsQ0FBQztRQUNELElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBRXJCLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDOUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUU1QyxJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxNQUFN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LG1CQUFtQixFQUFFLENBQUM7WUFDN0IsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUM7UUFDbEMsQ0FBQztRQUNELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3JELE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDO0lBQ2xDLENBQUM7SUFFTyxLQUFLLENBQUMsZUFBZSxDQUFDLEdBQWlCO1FBQzdDLElBQUksQ0FBQztZQUNILElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxjQUFjLEVBQUUsQ0FBQztnQkFDaEMsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDdEMsT0FBTztZQUNULENBQUM7WUFDRCxrRkFBa0Y7WUFDbEYsaUZBQWlGO1lBQ2pGLE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO1FBQy9DLENBQUM7Z0JBQVMsQ0FBQztZQUNULElBQUksQ0FBQyxtQkFBbUIsR0FBRyxTQUFTLENBQUM7UUFDdkMsQ0FBQztJQUNILENBQUM7K0dBdk5VLDRCQUE0QjttSEFBNUIsNEJBQTRCLGNBRGYsTUFBTTs7NEZBQ25CLDRCQUE0QjtrQkFEeEMsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNtYXJ0U2Vzc2lvblNlcnZpY2UgfSBmcm9tICcuL3NtYXJ0LXNlc3Npb24uc2VydmljZSc7XG5pbXBvcnQgeyBTbWFydFZpZXdDb250ZXh0U2VydmljZSB9IGZyb20gJy4uL3ZpZXctY29udGV4dC9zbWFydC12aWV3LWNvbnRleHQuc2VydmljZSc7XG5pbXBvcnQgeyBTZXNzaW9uRXJyb3IsIFNtYXJ0U2Vzc2lvbkhhbmRsZXJTZXJ2aWNlIH0gZnJvbSAnLi9zbWFydC1zZXNzaW9uLWhhbmRsZXIuc2VydmljZSc7XG5pbXBvcnQge1xuICBTbWFydEJhY2tlbmRCb290c3RyYXBDb25maWcsXG4gIFNtYXJ0QmFja2VuZEJvb3RzdHJhcENyZWRlbnRpYWxzLFxufSBmcm9tICcuL3NtYXJ0LWJhY2tlbmQtYm9vdHN0cmFwLmNvbmZpZyc7XG5cbnR5cGUgQm9vdHN0cmFwTW9kZSA9ICdzdGFydCcgfCAnYm9vdHN0cmFwV2l0aCc7XG5cbi8qKlxuICogVGhyb3duIGJ5IGB3aGVuUmVhZHkoKWAgd2hlbiB0aGUgdmlld2NvbnRleHQgd2FzIHJlYnVpbHQgYmV0d2VlbiB0aGVcbiAqIGNhbGxlcidzIGVudHJ5IGludG8gYHdoZW5SZWFkeSgpYCBhbmQgdGhlIGdhdGUgcmVsZWFzaW5nLiBBbnkgdXVpZCB0aGVcbiAqIGNhbGxlciByZXNvbHZlZCBiZWZvcmUgZW50ZXJpbmcgaXMgbm93IHN0YWxlOyBgU21hcnRDb21wb25lbnRBcGlDbGllbnQucnVuKClgXG4gKiBjYXRjaGVzIHRoaXMgYW5kIHNraXBzIHRoZSBsb2FkIOKAlCB0aGUgY29tcG9uZW50IGlzIGV4cGVjdGVkIHRvIHJlY2VpdmUgYVxuICogZnJlc2ggdXVpZCB0aHJvdWdoIGB1dWlkT2ZQYWdlSGFzQmVlbkNoYW5nZWRgIChOT1JNQUwgdmlld3MpIG9yIHRvIGJlXG4gKiByZWNyZWF0ZWQgYnkgYG9wZW5WaWV3YCAoRU1CRURERUQvRElBTE9HIHZpZXdzKS5cbiAqL1xuZXhwb3J0IGNsYXNzIFZpZXdDb250ZXh0UmVidWlsdEVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcignVmlld0NvbnRleHRSZWJ1aWx0Jyk7XG4gICAgdGhpcy5uYW1lID0gJ1ZpZXdDb250ZXh0UmVidWlsdEVycm9yJztcbiAgfVxufVxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFNtYXJ0QmFja2VuZEJvb3RzdHJhcFNlcnZpY2UgaW1wbGVtZW50cyBTbWFydFNlc3Npb25IYW5kbGVyU2VydmljZSB7XG4gIHByaXZhdGUgY29uZmlnPzogU21hcnRCYWNrZW5kQm9vdHN0cmFwQ29uZmlnO1xuICBwcml2YXRlIHJ1bm5pbmdJbml0PzogUHJvbWlzZTx2b2lkPjtcbiAgcHJpdmF0ZSBsYXN0SW5pdEZhaWxlZCA9IGZhbHNlO1xuICBwcml2YXRlIG1vZGU/OiBCb290c3RyYXBNb2RlO1xuICBwcml2YXRlIHJ1bm5pbmdWaWV3Q29udGV4dExvc3Q/OiBQcm9taXNlPHZvaWQ+O1xuICBwcml2YXRlIHJ1bm5pbmdTZXNzaW9uRXJyb3I/OiBQcm9taXNlPHZvaWQ+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgc2Vzc2lvbjogU21hcnRTZXNzaW9uU2VydmljZSxcbiAgICBwcml2YXRlIHZpZXdDb250ZXh0OiBTbWFydFZpZXdDb250ZXh0U2VydmljZSxcbiAgKSB7fVxuXG4gIGNvbmZpZ3VyZShjb25maWc6IFNtYXJ0QmFja2VuZEJvb3RzdHJhcENvbmZpZyk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNvbmZpZykge1xuICAgICAgY29uc29sZS53YXJuKCdTbWFydEJhY2tlbmRCb290c3RyYXBTZXJ2aWNlIGFscmVhZHkgY29uZmlndXJlZDsgaWdub3JpbmcgZHVwbGljYXRlIGNvbmZpZ3VyZSgpIGNhbGwuJyk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuY29uZmlnID0gY29uZmlnO1xuXG4gICAgdGhpcy5zZXNzaW9uLnNldFVybChjb25maWcudXJsKTtcbiAgICB0aGlzLnNlc3Npb24uc2V0Q29va2llTmFtZShjb25maWcuY29va2llTmFtZSk7XG4gICAgdGhpcy5zZXNzaW9uLnNldFNlc3Npb25IYW5kbGVyU2VydmljZSh0aGlzKTtcblxuICAgIHRoaXMudmlld0NvbnRleHQuc2V0Vmlld0hhbmRsZXJzKGNvbmZpZy52aWV3SGFuZGxlcnMpO1xuICAgIHRoaXMudmlld0NvbnRleHQuc2V0TWVzc2FnZURpYWxvZ05hbWUoY29uZmlnLm1lc3NhZ2VEaWFsb2dOYW1lID8/ICdtZXNzYWdlLWRpYWxvZycpO1xuICAgIHRoaXMudmlld0NvbnRleHQuc2V0QWN0aW9uRGVzY3JpcHRvcnMoY29uZmlnLmFjdGlvbkRlc2NyaXB0b3JzKTtcblxuICAgIHRoaXMudmlld0NvbnRleHQub3BlblNtYXJ0TGluay5zdWJzY3JpYmUoKGNoYW5uZWw6IHN0cmluZykgPT4ge1xuICAgICAgdGhpcy5oYW5kbGVTbWFydExpbmsoY2hhbm5lbCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGhhbmRsZVNtYXJ0TGluayhjaGFubmVsOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAodGhpcy5jb25maWc/Lm9uU21hcnRMaW5rKSB7XG4gICAgICBhd2FpdCB0aGlzLmNvbmZpZy5vblNtYXJ0TGluayhjaGFubmVsKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLy8gRGVmYXVsdDogc2ltcGx5IHVuYmxvY2sgc2hvd1B1Ymxpc2hlZFZpZXcncyBgYXdhaXQgb3BlblNtYXJ0TGluay50b1Byb21pc2UoKWAuXG4gICAgLy8gVGhlIHZpZXdDb250ZXh0IGlzIGFscmVhZHkgaW5pdGlhbGl6ZWQgYnkgc3RhcnQoKS9ib290c3RyYXBXaXRoKCkg4oCUIGNhbGxpbmdcbiAgICAvLyBpbml0aWFsaXplKCkgaGVyZSB3aXRob3V0IGEgdXVpZCB3b3VsZCBhbHdheXMgdHJpZ2dlciBzdGFydFZpZXdDb250ZXh0KCksXG4gICAgLy8gY3JlYXRpbmcgYSBzZWNvbmQgdmlld2NvbnRleHQgYW5kIHByb2R1Y2luZyBkdXBsaWNhdGUgVUkgKGUuZy4gdHdvIGxvZ2luIHBhZ2VzKS5cbiAgICB0aGlzLnZpZXdDb250ZXh0Lm9wZW5TbWFydExpbmsuY29tcGxldGUoKTtcbiAgfVxuXG4gIHN0YXJ0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICghdGhpcy5jb25maWcpIHtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoJ1NtYXJ0QmFja2VuZEJvb3RzdHJhcFNlcnZpY2UuY29uZmlndXJlKCkgbXVzdCBiZSBjYWxsZWQgYmVmb3JlIHN0YXJ0KCkuJykpO1xuICAgIH1cbiAgICBpZiAodGhpcy5tb2RlID09PSAnYm9vdHN0cmFwV2l0aCcgJiYgIXRoaXMubGFzdEluaXRGYWlsZWQpIHtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoXG4gICAgICAgICdTbWFydEJhY2tlbmRCb290c3RyYXBTZXJ2aWNlLmJvb3RzdHJhcFdpdGgoKSB3YXMgYWxyZWFkeSBjYWxsZWQ7IHN0YXJ0KCkgaXMgbXV0dWFsbHkgZXhjbHVzaXZlIHdpdGggaXQuIENhbGwgcmVzZXQoKSBmaXJzdCB0byBzd2l0Y2ggZW50cnkgcG9pbnRzLicsXG4gICAgICApKTtcbiAgICB9XG4gICAgaWYgKHRoaXMucnVubmluZ0luaXQgJiYgIXRoaXMubGFzdEluaXRGYWlsZWQpIHtcbiAgICAgIHJldHVybiB0aGlzLnJ1bm5pbmdJbml0O1xuICAgIH1cbiAgICB0aGlzLm1vZGUgPSAnc3RhcnQnO1xuICAgIHRoaXMubGFzdEluaXRGYWlsZWQgPSBmYWxzZTtcbiAgICB0aGlzLnJ1bm5pbmdJbml0ID0gdGhpcy5ydW5Jbml0KCk7XG4gICAgcmV0dXJuIHRoaXMucnVubmluZ0luaXQ7XG4gIH1cblxuICBib290c3RyYXBXaXRoKGNyZWRzOiBTbWFydEJhY2tlbmRCb290c3RyYXBDcmVkZW50aWFscyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICghdGhpcy5jb25maWcpIHtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoJ1NtYXJ0QmFja2VuZEJvb3RzdHJhcFNlcnZpY2UuY29uZmlndXJlKCkgbXVzdCBiZSBjYWxsZWQgYmVmb3JlIGJvb3RzdHJhcFdpdGgoKS4nKSk7XG4gICAgfVxuICAgIGlmICh0aGlzLm1vZGUgPT09ICdzdGFydCcgJiYgIXRoaXMubGFzdEluaXRGYWlsZWQpIHtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoXG4gICAgICAgICdTbWFydEJhY2tlbmRCb290c3RyYXBTZXJ2aWNlLnN0YXJ0KCkgd2FzIGFscmVhZHkgY2FsbGVkOyBib290c3RyYXBXaXRoKCkgaXMgbXV0dWFsbHkgZXhjbHVzaXZlIHdpdGggaXQuIENhbGwgcmVzZXQoKSBmaXJzdCB0byBzd2l0Y2ggZW50cnkgcG9pbnRzLicsXG4gICAgICApKTtcbiAgICB9XG4gICAgaWYgKHRoaXMucnVubmluZ0luaXQgJiYgIXRoaXMubGFzdEluaXRGYWlsZWQpIHtcbiAgICAgIHJldHVybiB0aGlzLnJ1bm5pbmdJbml0O1xuICAgIH1cbiAgICB0aGlzLm1vZGUgPSAnYm9vdHN0cmFwV2l0aCc7XG4gICAgdGhpcy5sYXN0SW5pdEZhaWxlZCA9IGZhbHNlO1xuICAgIHRoaXMucnVubmluZ0luaXQgPSB0aGlzLnJ1bkJvb3RzdHJhcFdpdGgoY3JlZHMpO1xuICAgIHJldHVybiB0aGlzLnJ1bm5pbmdJbml0O1xuICB9XG5cbiAgYXN5bmMgd2hlblJlYWR5KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICghdGhpcy5ydW5uaW5nSW5pdCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdCb290c3RyYXBOb3RTdGFydGVkJyk7XG4gICAgfVxuICAgIGF3YWl0IHRoaXMucnVubmluZ0luaXQ7XG4gICAgY29uc3QgZ2VuZXJhdGlvbkJlZm9yZSA9IHRoaXMudmlld0NvbnRleHQuZ2V0R2VuZXJhdGlvbigpO1xuICAgIC8vIEdhdGUgb24gYW55IGluLWZsaWdodCBzZXNzaW9uL3ZpZXdjb250ZXh0IHJlY292ZXJ5IHNvIGEgY29tcG9uZW50J3NcbiAgICAvLyBCRkYgY2FsbCBjYW5ub3QgcmFjZSBhZ2FpbnN0IHRoZSBzZXNzaW9uIGJlaW5nIHRvcm4gZG93biBhbmQgcmVidWlsdC5cbiAgICAvLyBUaGUgbG9vcCBoYW5kbGVzIGNhc2NhZGluZyByZWNvdmVyaWVzIChlLmcuIHZjLWxvc3Qgc3VyZmFjZXMgZHVyaW5nXG4gICAgLy8gYSBzZXNzaW9uIHJlc3RhcnQpOiBlYWNoIHNldHRsZSBjbGVhcnMgaXRzIG93biBsYXRjaCBpbiBmaW5hbGx5LCBhbmRcbiAgICAvLyB0aGUgbmV4dCBpdGVyYXRpb24gcGlja3MgdXAgd2hhdGV2ZXIgc3RhcnRlZCBpbiB0aGUgbWVhbnRpbWUuXG4gICAgd2hpbGUgKHRoaXMucnVubmluZ1ZpZXdDb250ZXh0TG9zdCB8fCB0aGlzLnJ1bm5pbmdTZXNzaW9uRXJyb3IpIHtcbiAgICAgIGF3YWl0IHRoaXMucnVubmluZ1ZpZXdDb250ZXh0TG9zdDtcbiAgICAgIGF3YWl0IHRoaXMucnVubmluZ1Nlc3Npb25FcnJvcjtcbiAgICB9XG4gICAgaWYgKHRoaXMudmlld0NvbnRleHQuZ2V0R2VuZXJhdGlvbigpICE9PSBnZW5lcmF0aW9uQmVmb3JlKSB7XG4gICAgICB0aHJvdyBuZXcgVmlld0NvbnRleHRSZWJ1aWx0RXJyb3IoKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyByZXNldCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0aGlzLnJ1bm5pbmdJbml0ID0gdW5kZWZpbmVkO1xuICAgIHRoaXMubGFzdEluaXRGYWlsZWQgPSBmYWxzZTtcbiAgICB0aGlzLm1vZGUgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5ydW5uaW5nVmlld0NvbnRleHRMb3N0ID0gdW5kZWZpbmVkO1xuICAgIHRoaXMucnVubmluZ1Nlc3Npb25FcnJvciA9IHVuZGVmaW5lZDtcbiAgICByZXR1cm4gdGhpcy5zdGFydCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGxlZCBieSBgU21hcnRFcnJvckNhdGNoaW5nSW50ZXJjZXB0b3JgIHdoZW4gdGhlIGJhY2tlbmQgcmVwb3J0c1xuICAgKiBgc2Vzc2lvbi52aWV3Y29udGV4dC5taXNzaW5nYC4gSWRlbXBvdGVudCBhY3Jvc3MgY29uY3VycmVudCBhbmRcbiAgICogc2VxdWVudGlhbCBjYWxscyB1bnRpbCB0aGUgbmV4dCBgcmVzZXQoKWAg4oCUIG11bHRpcGxlIHJhY2luZyBCRkZcbiAgICogZmFpbHVyZXMgY29sbGFwc2UgaW50byBhIHNpbmdsZSByZWNvdmVyeSBhdHRlbXB0LlxuICAgKi9cbiAgaGFuZGxlVmlld0NvbnRleHRMb3N0KGVycjogU2Vzc2lvbkVycm9yKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCF0aGlzLmNvbmZpZykge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBFcnJvcihcbiAgICAgICAgJ1NtYXJ0QmFja2VuZEJvb3RzdHJhcFNlcnZpY2UuY29uZmlndXJlKCkgbXVzdCBiZSBjYWxsZWQgYmVmb3JlIGhhbmRsZVZpZXdDb250ZXh0TG9zdCgpLicsXG4gICAgICApKTtcbiAgICB9XG4gICAgaWYgKHRoaXMucnVubmluZ1ZpZXdDb250ZXh0TG9zdCkge1xuICAgICAgcmV0dXJuIHRoaXMucnVubmluZ1ZpZXdDb250ZXh0TG9zdDtcbiAgICB9XG4gICAgdGhpcy5ydW5uaW5nVmlld0NvbnRleHRMb3N0ID0gdGhpcy5ydW5WaWV3Q29udGV4dExvc3QoZXJyKTtcbiAgICByZXR1cm4gdGhpcy5ydW5uaW5nVmlld0NvbnRleHRMb3N0O1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBydW5WaWV3Q29udGV4dExvc3QoZXJyOiBTZXNzaW9uRXJyb3IpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgaWYgKHRoaXMuY29uZmlnPy5vblZpZXdDb250ZXh0TG9zdCkge1xuICAgICAgICBhd2FpdCB0aGlzLmNvbmZpZy5vblZpZXdDb250ZXh0TG9zdChlcnIpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBhd2FpdCB0aGlzLnZpZXdDb250ZXh0LmluaXROZXdWaWV3Q29udGV4dCgpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnJ1bm5pbmdWaWV3Q29udGV4dExvc3QgPSB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENhbGxlZCBieSBgU21hcnRFcnJvckNhdGNoaW5nSW50ZXJjZXB0b3JgIGZvciB0cmFuc3BvcnQtbGV2ZWwgZmFpbHVyZXNcbiAgICogKHN0YXR1cyAwLCA1eHgpLiBGaXJlLWFuZC1mb3JnZXQ7IHRoZSByZXF1ZXN0IHN0aWxsIHJlamVjdHMgd2l0aCB0aGVcbiAgICogb3JpZ2luYWwgZXJyb3Igc28gY2FsbGVycyBjYW4gZG8gcGVyLWNhbGwgaGFuZGxpbmcuXG4gICAqL1xuICBhc3luYyBoYW5kbGVUcmFuc3BvcnRFcnJvcihlcnI6IEh0dHBFcnJvclJlc3BvbnNlKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCF0aGlzLmNvbmZpZykge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBFcnJvcihcbiAgICAgICAgJ1NtYXJ0QmFja2VuZEJvb3RzdHJhcFNlcnZpY2UuY29uZmlndXJlKCkgbXVzdCBiZSBjYWxsZWQgYmVmb3JlIGhhbmRsZVRyYW5zcG9ydEVycm9yKCkuJyxcbiAgICAgICkpO1xuICAgIH1cbiAgICBpZiAodGhpcy5jb25maWcub25UcmFuc3BvcnRFcnJvcikge1xuICAgICAgYXdhaXQgdGhpcy5jb25maWcub25UcmFuc3BvcnRFcnJvcihlcnIpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zb2xlLndhcm4oJ1RyYW5zcG9ydCBlcnJvciDigJQgc2VydmVyIHVucmVhY2hhYmxlIG9yIDV4eCcsIGVycik7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHJ1bkluaXQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRoaXMuc2Vzc2lvbi5pbml0aWFsaXplKCk7XG4gICAgICBhd2FpdCB0aGlzLnZpZXdDb250ZXh0LmluaXRWaWV3Q29udGV4dCgpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgYXdhaXQgdGhpcy5oYW5kbGVJbml0RmFpbHVyZShlcnIpO1xuICAgICAgdGhyb3cgZXJyO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgcnVuQm9vdHN0cmFwV2l0aChjcmVkczogU21hcnRCYWNrZW5kQm9vdHN0cmFwQ3JlZGVudGlhbHMpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5zZXNzaW9uLnNldFNlc3Npb25Ub2tlbihjcmVkcy5zZXNzaW9uVG9rZW4sIGNyZWRzLnJlZnJlc2hUb2tlbik7XG4gICAgICBhd2FpdCB0aGlzLnZpZXdDb250ZXh0LmluaXRGcm9tRXhpc3RpbmdWaWV3Q29udGV4dChjcmVkcy52aWV3Q29udGV4dFV1aWQpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgYXdhaXQgdGhpcy5oYW5kbGVJbml0RmFpbHVyZShlcnIpO1xuICAgICAgdGhyb3cgZXJyO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgaGFuZGxlSW5pdEZhaWx1cmUoZXJyOiB1bmtub3duKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy5sYXN0SW5pdEZhaWxlZCA9IHRydWU7XG4gICAgaWYgKHRoaXMuY29uZmlnPy5vblN0YXJ0RXJyb3IpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IHRoaXMuY29uZmlnLm9uU3RhcnRFcnJvcihlcnIpO1xuICAgICAgfSBjYXRjaCAoY2FsbGJhY2tFcnIpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcignU21hcnRCYWNrZW5kQm9vdHN0cmFwU2VydmljZS5vblN0YXJ0RXJyb3IgY2FsbGJhY2sgdGhyZXcnLCBjYWxsYmFja0Vycik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlU2Vzc2lvbkVycm9yKGVycjogU2Vzc2lvbkVycm9yKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCF0aGlzLmNvbmZpZykge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBFcnJvcihcbiAgICAgICAgJ1NtYXJ0QmFja2VuZEJvb3RzdHJhcFNlcnZpY2UuY29uZmlndXJlKCkgbXVzdCBiZSBjYWxsZWQgYmVmb3JlIGhhbmRsZVNlc3Npb25FcnJvcigpLicsXG4gICAgICApKTtcbiAgICB9XG4gICAgaWYgKHRoaXMucnVubmluZ1Nlc3Npb25FcnJvcikge1xuICAgICAgcmV0dXJuIHRoaXMucnVubmluZ1Nlc3Npb25FcnJvcjtcbiAgICB9XG4gICAgdGhpcy5ydW5uaW5nU2Vzc2lvbkVycm9yID0gdGhpcy5ydW5TZXNzaW9uRXJyb3IoZXJyKTtcbiAgICByZXR1cm4gdGhpcy5ydW5uaW5nU2Vzc2lvbkVycm9yO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBydW5TZXNzaW9uRXJyb3IoZXJyOiBTZXNzaW9uRXJyb3IpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgaWYgKHRoaXMuY29uZmlnPy5vblNlc3Npb25FcnJvcikge1xuICAgICAgICBhd2FpdCB0aGlzLmNvbmZpZy5vblNlc3Npb25FcnJvcihlcnIpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICAvLyBEZWZhdWx0OiBjbGVhciB0aGUgc2Vzc2lvbiBhbmQgbGV0IHRoZSBiYWNrZW5kIHJlYnVpbGQgdmlhIFJFU1RBUlRfVklFV0NPTlRFWFQuXG4gICAgICAvLyBObyByb3V0ZXIgbmF2aWdhdGlvbiBoZXJlIOKAlCB0aGUgbmV3IHZpZXdjb250ZXh0IGRyaXZlcyBuYXZpZ2F0aW9uIHNlcnZlci1zaWRlLlxuICAgICAgYXdhaXQgdGhpcy5zZXNzaW9uLmNsZWFyQW5kU3RhcnROZXdTZXNzaW9uKCk7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMucnVubmluZ1Nlc3Npb25FcnJvciA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -131,4 +131,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
|
|
|
131
131
|
type: Injectable,
|
|
132
132
|
args: [{ providedIn: 'root' }]
|
|
133
133
|
}] });
|
|
134
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtZGVmYXVsdC1lcnJvci11aS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvc2Vzc2lvbi9zbWFydC1kZWZhdWx0LWVycm9yLXVpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTFELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQW9DOUQsTUFBTSxVQUFVLEdBQTBCO0lBQ3hDLGlCQUFpQixFQUFFLHlCQUF5QjtJQUM1QyxlQUFlLEVBQUUsY0FBYztJQUMvQixxQkFBcUIsRUFBRSx5QkFBeUI7SUFDaEQsb0JBQW9CLEVBQUUsWUFBWTtJQUNsQyxtQkFBbUIsRUFBRSxtREFBbUQ7SUFDeEUsa0JBQWtCLEVBQUUsZUFBZTtDQUNwQyxDQUFDO0FBRUYsTUFBTSxVQUFVLEdBQTBCO0lBQ3hDLGlCQUFpQixFQUFFLDRCQUE0QjtJQUMvQyxlQUFlLEVBQUUsT0FBTztJQUN4QixxQkFBcUIsRUFBRSw0QkFBNEI7SUFDbkQsb0JBQW9CLEVBQUUsUUFBUTtJQUM5QixtQkFBbUIsRUFBRSxnREFBZ0Q7SUFDckUsa0JBQWtCLEVBQUUsUUFBUTtDQUM3QixDQUFDO0FBRUY7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsTUFBTSxPQUFPLDBCQUEwQjtJQUR2QztRQUVVLGFBQVEsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDL0IsWUFBTyxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0tBaUcvQztJQS9GQywyRUFBMkU7SUFDM0UsS0FBSyxDQUFDLFVBQWlDLEVBQUU7UUFLdkMsT0FBTztZQUNMLFlBQVksRUFBRSxDQUFD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QUE4QjtRQUNuRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNwRCxNQUFNLElBQUksR0FBRyxJQUFJLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQztRQUNyRCxPQUFPLEVBQUUsR0FBRyxJQUFJLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQztJQUNqRCxDQUFDO0lBRU8sZUFBZSxDQUFDLElBQTZCO1FBQ25ELElBQUksSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDbkMsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBQ0QsT0FBTyxTQUFTLENBQUMsUUFBUSxFQUFFLFdBQVcsRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDMUUsQ0FBQzsrR0FsR1UsMEJBQTBCO21IQUExQiwwQkFBMEIsY0FEYixNQUFNOzs0RkFDbkIsMEJBQTBCO2tCQUR0QyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0U25hY2tCYXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zbmFjay1iYXInO1xyXG5pbXBvcnQgeyBTZXNzaW9uRXJyb3IgfSBmcm9tICcuL3NtYXJ0LXNlc3Npb24taGFuZGxlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU21hcnRTZXNzaW9uU2VydmljZSB9IGZyb20gJy4vc21hcnQtc2Vzc2lvbi5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCB0eXBlIERlZmF1bHRFcnJvclVpTGFuZ3VhZ2UgPSAnaHUnIHwgJ2VuJyB8ICdhdXRvJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRGVmYXVsdEVycm9yVWlTdHJpbmdzIHtcclxuICBzdGFydEVycm9yTWVzc2FnZTogc3RyaW5nO1xyXG4gIHN0YXJ0RXJyb3JSZXRyeTogc3RyaW5nO1xyXG4gIHRyYW5zcG9ydEVycm9yTWVzc2FnZTogc3RyaW5nO1xyXG4gIHRyYW5zcG9ydEVycm9yUmVsb2FkOiBzdHJpbmc7XHJcbiAgc2Vzc2lvbkVycm9yTWVzc2FnZTogc3RyaW5nO1xyXG4gIHNlc3Npb25FcnJvckFjdGlvbjogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIERlZmF1bHRFcnJvclVpT3B0aW9ucyB7XHJcbiAgLyoqICdhdXRvJyAoZGVmYXVsdCkgcGlja3MgJ2h1JyBpZiBuYXZpZ2F0b3IubGFuZ3VhZ2Ugc3RhcnRzIHdpdGggJ2h1JywgZWxzZSAnZW4nLiAqL1xyXG4gIGxhbmd1YWdlPzogRGVmYXVsdEVycm9yVWlMYW5ndWFnZTtcclxuICAvKiogT3ZlcnJpZGUgaW5kaXZpZHVhbCBzdHJpbmdzOyBtaXNzaW5nIGtleXMgZmFsbCBiYWNrIHRvIHRoZSBsYW5ndWFnZSBkZWZhdWx0LiAqL1xyXG4gIHN0cmluZ3M/OiBQYXJ0aWFsPERlZmF1bHRFcnJvclVpU3RyaW5ncz47XHJcbiAgLyoqXHJcbiAgICogU25hY2tiYXIgYXV0by1kaXNtaXNzIGluIG1zIGZvciB0cmFuc3BvcnRFcnJvci4gRGVmYXVsdDogMCAoc3RpY2t5KS5cclxuICAgKlxyXG4gICAqIFN0aWNreSBkZWZhdWx0IHJhdGlvbmFsZTogYSB0cmFuc3BvcnQgZXJyb3IgY29tbW9ubHkgbGVhdmVzIHRoZSBzY3JlZW4gaW5cclxuICAgKiBhbiBpbmNvbnNpc3RlbnQgc3RhdGUgKGZhaWxlZCBjb21wb25lbnQgbG9hZHMsIHN0dWNrIHNwaW5uZXJzKSB0aGF0IGRvZXNcclxuICAgKiBOT1Qgc2VsZi1yZWNvdmVyIHdoZW4gdGhlIHNlcnZlciByZXR1cm5zLiBBbiBhdXRvLWRpc21pc3Npbmcgc25hY2tiYXJcclxuICAgKiB3b3VsZCBoaWRlIHRoZSBub3RpZmljYXRpb24gYmVmb3JlIHRoZSB1c2VyIGNhbiBhY3QsIGxlYXZpbmcgdGhlbSB3aXRoIGFcclxuICAgKiBicm9rZW4gVUkgYW5kIG5vIHdheSBiYWNrLiBTdGlja3kgZm9yY2VzIHRoZSBSZWxvYWQgYWN0aW9uLlxyXG4gICAqXHJcbiAgICogU2V0IGEgcG9zaXRpdmUgbnVtYmVyIHRvIG9wdCBpbnRvIGF1dG8tZGlzbWlzcyAoZS5nLiBtb2JpbGUtc2hlbGwgZmxvd3NcclxuICAgKiB3aGVyZSB0aGUgc2hlbGwgdGVhcnMgZG93biB0aGUgd2VidmlldyBvbiB0cmFuc3BvcnQgZXJyb3IgYW55d2F5KS5cclxuICAgKlxyXG4gICAqIGBzdGFydEVycm9yYCBpcyBhbHdheXMgc3RpY2t5IHJlZ2FyZGxlc3Mg4oCUIHRoZSBhcHAgaXMgdW51c2FibGUgdW50aWwgdGhlXHJcbiAgICogdXNlciByZXRyaWVzLlxyXG4gICAqL1xyXG4gIHRyYW5zcG9ydEVycm9yRHVyYXRpb24/OiBudW1iZXI7XHJcbn1cclxuXHJcbmNvbnN0IFNUUklOR1NfSFU6IERlZmF1bHRFcnJvclVpU3RyaW5ncyA9IHtcclxuICBzdGFydEVycm9yTWVzc2FnZTogJ0Egc3plcnZlciBuZW0gZWzDqXJoZXTFkS4nLFxyXG4gIHN0YXJ0RXJyb3JSZXRyeTogJ8OaanJhcHLDs2LDoWzDoXMnLFxyXG4gIHRyYW5zcG9ydEVycm9yTWVzc2FnZTogJ0Egc3plcnZlciBuZW0gZWzDqXJoZXTFkS4nLFxyXG4gIHRyYW5zcG9ydEVycm9yUmVsb2FkOiAnw5pqcmF0w7ZsdMOpcycsXHJcbiAgc2Vzc2lvbkVycm9yTWVzc2FnZTogJ0EgbXVua2FtZW5ldCBsZWrDoXJ0LCBrw6lyasO8ayBqZWxlbnRrZXp6ZW4gYmUgw7pqcmEuJyxcclxuICBzZXNzaW9uRXJyb3JBY3Rpb246ICdCZWplbGVudGtlesOpcycsXHJcbn07XHJcblxyXG5jb25zdCBTVFJJTkdTX0VOOiBEZWZhdWx0RXJyb3JVaVN0cmluZ3MgPSB7XHJcbiAgc3RhcnRFcnJvck1lc3NhZ2U6ICdUaGUgc2VydmVyIGlzIHVuYXZhaWxhYmxlLicsXHJcbiAgc3RhcnRFcnJvclJldHJ5OiAnUmV0cnknLFxyXG4gIHRyYW5zcG9ydEVycm9yTWVzc2FnZTogJ1RoZSBzZXJ2ZXIgaXMgdW5hdmFpbGFibGUuJyxcclxuICB0cmFuc3BvcnRFcnJvclJlbG9hZDogJ1JlbG9hZCcsXHJcbiAgc2Vzc2lvbkVycm9yTWVzc2FnZTogJ1lvdXIgc2Vzc2lvbiBoYXMgZXhwaXJlZC4gUGxlYXNlIGxvZyBpbiBhZ2Fpbi4nLFxyXG4gIHNlc3Npb25FcnJvckFjdGlvbjogJ0xvZyBpbicsXHJcbn07XHJcblxyXG4vKipcclxuICogT3B0LWluIGRlZmF1bHQgVVggZm9yIGBTbWFydEJhY2tlbmRCb290c3RyYXBTZXJ2aWNlYCBlcnJvciBob29rcy5cclxuICpcclxuICogU3ByZWFkIHRoZSByZXN1bHQgb2YgYGhvb2tzKG9wdGlvbnMpYCBpbnRvIGBib290c3RyYXAuY29uZmlndXJlKClgIHRvIGdldCBhXHJcbiAqIE1hdFNuYWNrQmFyLWJhc2VkIFwiZXJyb3IgKyByZXRyeVwiIFVJIHdpdGhvdXQgd3JpdGluZyB0aGUgaG9zdCBnbHVlOlxyXG4gKlxyXG4gKiBgYGB0c1xyXG4gKiBib290c3RyYXAuY29uZmlndXJlKHtcclxuICogICAuLi5taW5pbWFsQ29uZmlnLFxyXG4gKiAgIC4uLmRlZmF1bHRFcnJvclVpLmhvb2tzKHsgbGFuZ3VhZ2U6ICdodScgfSksXHJcbiAqIH0pO1xyXG4gKiBgYGBcclxuICpcclxuICogSG9zdHMgdGhhdCB3YW50IGN1c3RvbSBsb2dpYyBjYW4gb21pdCB0aGlzIHNlcnZpY2UgYW5kIHdyaXRlIHRoZWlyIG93blxyXG4gKiBgb25TdGFydEVycm9yYCAvIGBvblRyYW5zcG9ydEVycm9yYCBjYWxsYmFja3MgZGlyZWN0bHkuXHJcbiAqL1xyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgU21hcnREZWZhdWx0RXJyb3JVaVNlcnZpY2Uge1xyXG4gIHByaXZhdGUgc25hY2tCYXIgPSBpbmplY3QoTWF0U25hY2tCYXIpO1xyXG4gIHByaXZhdGUgc2Vzc2lvbiA9IGluamVjdChTbWFydFNlc3Npb25TZXJ2aWNlKTtcclxuXHJcbiAgLyoqIFJldHVybnMgYSBob29rcyBidW5kbGUgcmVhZHkgdG8gc3ByZWFkIGludG8gYGJvb3RzdHJhcC5jb25maWd1cmUoKWAuICovXHJcbiAgaG9va3Mob3B0aW9uczogRGVmYXVsdEVycm9yVWlPcHRpb25zID0ge30pOiB7XHJcbiAgICBvblN0YXJ0RXJyb3I6IChlcnI6IHVua25vd24pID0+IHZvaWQ7XHJcbiAgICBvblRyYW5zcG9ydEVycm9yOiAoZXJyOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4gdm9pZDtcclxuICAgIG9uU2Vzc2lvbkVycm9yOiAoZXJyOiBTZXNzaW9uRXJyb3IpID0+IHZvaWQ7XHJcbiAgfSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBvblN0YXJ0RXJyb3I6IChlcnI6IHVua25vd24pID0+IHRoaXMuc2hvd1N0YXJ0RXJyb3IoZXJyLCBvcHRpb25zKSxcclxuICAgICAgb25UcmFuc3BvcnRFcnJvcjogKGVycjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHRoaXMuc2hvd1RyYW5zcG9ydEVycm9yKGVyciwgb3B0aW9ucyksXHJcbiAgICAgIG9uU2Vzc2lvbkVycm9yOiAoZXJyOiBTZXNzaW9uRXJyb3IpID0+IHRoaXMuc2hvd1Nlc3Npb25FcnJvcihlcnIsIG9wdGlvbnMpLFxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHNob3dTdGFydEVycm9yKF9lcnI6IHVua25vd24sIG9wdGlvbnM6IERlZmF1bHRFcnJvclVpT3B0aW9ucyA9IHt9KTogdm9pZCB7XHJcbiAgICBjb25zdCBzID0gdGhpcy5yZXNvbHZlU3RyaW5ncyhvcHRpb25zKTtcclxuICAgIGNvbnN0IHJlZiA9IHRoaXMuc25hY2tCYXIub3BlbihzLnN0YXJ0RXJyb3JNZXNzYWdlLCBzLnN0YXJ0RXJyb3JSZXRyeSwge1xyXG4gICAgICBkdXJhdGlvbjogMCwgLy8gc3RpY2t5IOKAlCBhcHAgaXMgbm90IHVzYWJsZSB1bnRpbCByZXRyeSBzdWNjZWVkc1xyXG4gICAgfSk7XHJcbiAgICAvLyBGdWxsIHJlbG9hZCwgbm90IGJvb3RzdHJhcC5zdGFydCgpLiBBIGJvb3RzdHJhcC5zdGFydCgpIHJldHJ5IG9ubHkgcmUtcnVuc1xyXG4gICAgLy8gdGhlIGluaXQgc2VxdWVuY2U7IGFueSBjb21wb25lbnRzIHRoYXQgYWxyZWFkeSBtb3VudGVkIGR1cmluZyB0aGUgZmFpbGVkXHJcbiAgICAvLyBhdHRlbXB0IGhhdmUgcmVqZWN0ZWQgYHdoZW5SZWFkeSgpYCBQcm9taXNlcyBhbmQgd29uJ3QgcmUtdHJpZ2dlciB0aGVpclxyXG4gICAgLy8gcnVuKCkgd2hlbiBib290c3RyYXAgZXZlbnR1YWxseSBzdWNjZWVkcy4gUmVsb2FkIGd1YXJhbnRlZXMgYSBjbGVhbiBtb3VudC5cclxuICAgIHJlZi5vbkFjdGlvbigpLnN1YnNjcmliZSgoKSA9PiB0aGlzLnZlcmlmeVNlcnZlckFuZFJlbG9hZCgpKTtcclxuICB9XHJcblxyXG4gIHNob3dUcmFuc3BvcnRFcnJvcihfZXJyOiBIdHRwRXJyb3JSZXNwb25zZSwgb3B0aW9uczogRGVmYXVsdEVycm9yVWlPcHRpb25zID0ge30pOiB2b2lkIHtcclxuICAgIGNvbnN0IHMgPSB0aGlzLnJlc29sdmVTdHJpbmdzKG9wdGlvbnMpO1xyXG4gICAgY29uc3QgcmVmID0gdGhpcy5zbmFja0Jhci5vcGVuKHMudHJhbnNwb3J0RXJyb3JNZXNzYWdlLCBzLnRyYW5zcG9ydEVycm9yUmVsb2FkLCB7XHJcbiAgICAgIGR1cmF0aW9uOiBvcHRpb25zLnRyYW5zcG9ydEVycm9yRHVyYXRpb24gPz8gMCxcclxuICAgIH0pO1xyXG4gICAgcmVmLm9uQWN0aW9uKCkuc3Vic2NyaWJlKCgpID0+IHRoaXMudmVyaWZ5U2VydmVyQW5kUmVsb2FkKCkpO1xyXG4gIH1cclxuXHJcbiAgc2hvd1Nlc3Npb25FcnJvcihfZXJyOiBTZXNzaW9uRXJyb3IsIG9wdGlvbnM6IERlZmF1bHRFcnJvclVpT3B0aW9ucyA9IHt9KTogdm9pZCB7XHJcbiAgICBjb25zdCBzID0gdGhpcy5yZXNvbHZlU3RyaW5ncyhvcHRpb25zKTtcclxuICAgIGNvbnN0IHJlZiA9IHRoaXMuc25hY2tCYXIub3BlbihzLnNlc3Npb25FcnJvck1lc3NhZ2UsIHMuc2Vzc2lvbkVycm9yQWN0aW9uLCB7XHJcbiAgICAgIGR1cmF0aW9uOiAwLCAvLyBzdGlja3kg4oCUIHNlc3Npb24gaXMgaW52YWxpZCB1bnRpbCB0aGUgdXNlciB0YWtlcyBhY3Rpb25cclxuICAgIH0pO1xyXG4gICAgcmVmLm9uQWN0aW9uKCkuc3Vic2NyaWJlKCgpID0+IHRoaXMucmVjb3ZlclNlc3Npb24oKSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDbGVhcnMgdGhlIGRlYWQgc2Vzc2lvbiBhbmQgcmVsb2Fkcy4gVW5saWtlIGB2ZXJpZnlTZXJ2ZXJBbmRSZWxvYWRgLCB0aGlzXHJcbiAgICogZG9lcyBOT1QgcHJlLWNoZWNrIHZpYSBgZ2V0U2Vzc2lvbigpYCDigJQgdGhlIFNJRCBpcyBrbm93biB0byBiZSBpbnZhbGlkLFxyXG4gICAqIHNvIHRoZSBjaGVjayB3b3VsZCBmYWlsLiBXZSBiZXN0LWVmZm9ydCBgY2xlYXJBbmRTdGFydE5ld1Nlc3Npb24oKWBcclxuICAgKiAoY3JlYXRlcyBhIGZyZXNoIGFub255bW91cyBzZXNzaW9uKTsgcmVsb2FkIGhhcHBlbnMgcmVnYXJkbGVzcyBzbyB0aGVcclxuICAgKiB1c2VyIGlzIG5vdCBzdHVjayBpZiB0aGUgY2xlYXIgZmFpbHMgKGUuZy4sIHNlcnZlciBmbGFwcGluZykuXHJcbiAgICpcclxuICAgKiBPdmVycmlkYWJsZSBpbiB0ZXN0cy5cclxuICAgKi9cclxuICBwcm90ZWN0ZWQgYXN5bmMgcmVjb3ZlclNlc3Npb24oKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0cnkge1xyXG4gICAgICBhd2FpdCB0aGlzLnNlc3Npb24uY2xlYXJBbmRTdGFydE5ld1Nlc3Npb24oKTtcclxuICAgIH0gY2F0Y2gge1xyXG4gICAgICAvLyBTZXJ2ZXIgbWF5IGFsc28gYmUgZG93bjsgcmVsb2FkIGFueXdheSBhbmQgbGV0IGJvb3RzdHJhcC5zdGFydCgpIHJldHJ5LlxyXG4gICAgfVxyXG4gICAgdGhpcy5yZWxvYWRQYWdlKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBQaW5ncyBgZ2V0U2Vzc2lvbigpYCBiZWZvcmUgcmVsb2FkaW5nOiBpZiB0aGUgc2VydmVyIGlzIHN0aWxsIGRvd24sIHRoZVxyXG4gICAqIHJlbG9hZCB3b3VsZCBqdXN0IHJlLXRyaWdnZXIgdGhlIGJyb2tlbi1zY3JlZW4gc3RhdGUuIFRoZSBmYWlsZWQgY2hlY2tcclxuICAgKiBnb2VzIHRocm91Z2ggYFNtYXJ0RXJyb3JDYXRjaGluZ0ludGVyY2VwdG9yYCBhbmQgcmUtZmlyZXMgYG9uVHJhbnNwb3J0RXJyb3JgLFxyXG4gICAqIHNvIHRoZSB1c2VyIHNlZXMgYSBmcmVzaCBzbmFja2JhciDigJQgdGhleSBnZXQgdmlzaWJsZSBmZWVkYmFjayB0aGF0IHRoZVxyXG4gICAqIHNlcnZlciBpcyBzdGlsbCB1bnJlYWNoYWJsZSwgd2l0aG91dCBwYXlpbmcgdGhlIGNvc3Qgb2YgYSBmdWxsIGJ1bmRsZVxyXG4gICAqIHJlbG9hZCB0aGF0IGxhbmRzIG9uIHRoZSBzYW1lIGJyb2tlbiBzdGF0ZS5cclxuICAgKlxyXG4gICAqIE92ZXJyaWRhYmxlIGluIHRlc3RzLlxyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBhc3luYyB2ZXJpZnlTZXJ2ZXJBbmRSZWxvYWQoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0cnkge1xyXG4gICAgICBhd2FpdCB0aGlzLnNlc3Npb24uZ2V0U2Vzc2lvbigpO1xyXG4gICAgfSBjYXRjaCB7XHJcbiAgICAgIHJldHVybjsgLy8gc2VydmVyIHN0aWxsIHVucmVhY2hhYmxlIOKAlCBpbnRlcmNlcHRvciByZS1vcGVucyB0aGUgc25hY2tiYXJcclxuICAgIH1cclxuICAgIHRoaXMucmVsb2FkUGFnZSgpO1xyXG4gIH1cclxuXHJcbiAgLyoqIE92ZXJyaWRhYmxlIGluIHRlc3RzLiAqL1xyXG4gIHByb3RlY3RlZCByZWxvYWRQYWdlKCk6IHZvaWQge1xyXG4gICAgd2luZG93LmxvY2F0aW9uLnJlbG9hZCgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSByZXNvbHZlU3RyaW5ncyhvcHRpb25zOiBEZWZhdWx0RXJyb3JVaU9wdGlvbnMpOiBEZWZhdWx0RXJyb3JVaVN0cmluZ3Mge1xyXG4gICAgY29uc3QgbGFuZyA9IHRoaXMucmVzb2x2ZUxhbmd1YWdlKG9wdGlvbnMubGFuZ3VhZ2UpO1xyXG4gICAgY29uc3QgYmFzZSA9IGxhbmcgPT09ICdodScgPyBTVFJJTkdTX0hVIDogU1RSSU5HU19FTjtcclxuICAgIHJldHVybiB7IC4uLmJhc2UsIC4uLihvcHRpb25zLnN0cmluZ3MgPz8ge30pIH07XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlc29sdmVMYW5ndWFnZShsYW5nPzogRGVmYXVsdEVycm9yVWlMYW5ndWFnZSk6ICdodScgfCAnZW4nIHtcclxuICAgIGlmIChsYW5nID09PSAnaHUnIHx8IGxhbmcgPT09ICdlbicpIHtcclxuICAgICAgcmV0dXJuIGxhbmc7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbmF2aWdhdG9yLmxhbmd1YWdlPy50b0xvd2VyQ2FzZSgpLnN0YXJ0c1dpdGgoJ2h1JykgPyAnaHUnIDogJ2VuJztcclxuICB9XHJcbn1cclxuIl19
|
|
134
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtZGVmYXVsdC1lcnJvci11aS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvc2Vzc2lvbi9zbWFydC1kZWZhdWx0LWVycm9yLXVpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTFELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQW9DOUQsTUFBTSxVQUFVLEdBQTBCO0lBQ3hDLGlCQUFpQixFQUFFLHlCQUF5QjtJQUM1QyxlQUFlLEVBQUUsY0FBYztJQUMvQixxQkFBcUIsRUFBRSx5QkFBeUI7SUFDaEQsb0JBQW9CLEVBQUUsWUFBWTtJQUNsQyxtQkFBbUIsRUFBRSxtREFBbUQ7SUFDeEUsa0JBQWtCLEVBQUUsZUFBZTtDQUNwQyxDQUFDO0FBRUYsTUFBTSxVQUFVLEdBQTBCO0lBQ3hDLGlCQUFpQixFQUFFLDRCQUE0QjtJQUMvQyxlQUFlLEVBQUUsT0FBTztJQUN4QixxQkFBcUIsRUFBRSw0QkFBNEI7SUFDbkQsb0JBQW9CLEVBQUUsUUFBUTtJQUM5QixtQkFBbUIsRUFBRSxnREFBZ0Q7SUFDckUsa0JBQWtCLEVBQUUsUUFBUTtDQUM3QixDQUFDO0FBRUY7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsTUFBTSxPQUFPLDBCQUEwQjtJQUR2QztRQUVVLGFBQVEsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDL0IsWUFBTyxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0tBaUcvQztJQS9GQywyRUFBMkU7SUFDM0UsS0FBSyxDQUFDLFVBQWlDLEVBQUU7UUFLdkMsT0FBTztZQUNMLFlBQVksRUFBRSxDQUFDLEdBQVksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDO1lBQ2pFLGdCQUFnQixFQUFFLENBQUMsR0FBc0IsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUM7WUFDbkYsY0FBYyxFQUFFLENBQUMsR0FBaUIsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUM7U0FDM0UsQ0FBQztJQUNKLENBQUM7SUFFRCxjQUFjLENBQUMsSUFBYSxFQUFFLFVBQWlDLEVBQUU7UUFDL0QsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN2QyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLGVBQWUsRUFBRTtZQUNyRSxRQUFRLEVBQUUsQ0FBQyxFQUFFLGtEQUFrRDtTQUNoRSxDQUFDLENBQUM7UUFDSCw2RUFBNkU7UUFDN0UsMkVBQTJFO1FBQzNFLDBFQUEwRTtRQUMxRSw2RUFBNkU7UUFDN0UsR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxJQUF1QixFQUFFLFVBQWlDLEVBQUU7UUFDN0UsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN2QyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxDQUFDLG9CQUFvQixFQUFFO1lBQzlFLFFBQVEsRUFBRSxPQUFPLENBQUMsc0JBQXNCLElBQUksQ0FBQztTQUM5QyxDQUFDLENBQUM7UUFDSCxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVELGdCQUFnQixDQUFDLElBQWtCLEVBQUUsVUFBaUMsRUFBRTtRQUN0RSxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUMsa0JBQWtCLEVBQUU7WUFDMUUsUUFBUSxFQUFFLENBQUMsRUFBRSwwREFBMEQ7U0FDeEUsQ0FBQyxDQUFDO1FBQ0gsR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDTyxLQUFLLENBQUMsY0FBYztRQUM1QixJQUFJLENBQUM7WUFDSCxNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztRQUMvQyxDQUFDO1FBQUMsTUFBTSxDQUFDO1lBQ1AsMEVBQTBFO1FBQzVFLENBQUM7UUFDRCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVEOzs7Ozs7Ozs7T0FTRztJQUNPLEtBQUssQ0FBQyxxQkFBcUI7UUFDbkMsSUFBSSxDQUFDO1lBQ0gsTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2xDLENBQUM7UUFBQyxNQUFNLENBQUM7WUFDUCxPQUFPLENBQUMsK0RBQStEO1FBQ3pFLENBQUM7UUFDRCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELDRCQUE0QjtJQUNsQixVQUFVO1FBQ2xCLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVPLGNBQWMsQ0FBQyxPQUE4QjtRQUNuRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNwRCxNQUFNLElBQUksR0FBRyxJQUFJLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQztRQUNyRCxPQUFPLEVBQUUsR0FBRyxJQUFJLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQztJQUNqRCxDQUFDO0lBRU8sZUFBZSxDQUFDLElBQTZCO1FBQ25ELElBQUksSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDbkMsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBQ0QsT0FBTyxTQUFTLENBQUMsUUFBUSxFQUFFLFdBQVcsRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDMUUsQ0FBQzsrR0FsR1UsMEJBQTBCO21IQUExQiwwQkFBMEIsY0FEYixNQUFNOzs0RkFDbkIsMEJBQTBCO2tCQUR0QyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRTbmFja0JhciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XG5pbXBvcnQgeyBTZXNzaW9uRXJyb3IgfSBmcm9tICcuL3NtYXJ0LXNlc3Npb24taGFuZGxlci5zZXJ2aWNlJztcbmltcG9ydCB7IFNtYXJ0U2Vzc2lvblNlcnZpY2UgfSBmcm9tICcuL3NtYXJ0LXNlc3Npb24uc2VydmljZSc7XG5cbmV4cG9ydCB0eXBlIERlZmF1bHRFcnJvclVpTGFuZ3VhZ2UgPSAnaHUnIHwgJ2VuJyB8ICdhdXRvJztcblxuZXhwb3J0IGludGVyZmFjZSBEZWZhdWx0RXJyb3JVaVN0cmluZ3Mge1xuICBzdGFydEVycm9yTWVzc2FnZTogc3RyaW5nO1xuICBzdGFydEVycm9yUmV0cnk6IHN0cmluZztcbiAgdHJhbnNwb3J0RXJyb3JNZXNzYWdlOiBzdHJpbmc7XG4gIHRyYW5zcG9ydEVycm9yUmVsb2FkOiBzdHJpbmc7XG4gIHNlc3Npb25FcnJvck1lc3NhZ2U6IHN0cmluZztcbiAgc2Vzc2lvbkVycm9yQWN0aW9uOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGVmYXVsdEVycm9yVWlPcHRpb25zIHtcbiAgLyoqICdhdXRvJyAoZGVmYXVsdCkgcGlja3MgJ2h1JyBpZiBuYXZpZ2F0b3IubGFuZ3VhZ2Ugc3RhcnRzIHdpdGggJ2h1JywgZWxzZSAnZW4nLiAqL1xuICBsYW5ndWFnZT86IERlZmF1bHRFcnJvclVpTGFuZ3VhZ2U7XG4gIC8qKiBPdmVycmlkZSBpbmRpdmlkdWFsIHN0cmluZ3M7IG1pc3Npbmcga2V5cyBmYWxsIGJhY2sgdG8gdGhlIGxhbmd1YWdlIGRlZmF1bHQuICovXG4gIHN0cmluZ3M/OiBQYXJ0aWFsPERlZmF1bHRFcnJvclVpU3RyaW5ncz47XG4gIC8qKlxuICAgKiBTbmFja2JhciBhdXRvLWRpc21pc3MgaW4gbXMgZm9yIHRyYW5zcG9ydEVycm9yLiBEZWZhdWx0OiAwIChzdGlja3kpLlxuICAgKlxuICAgKiBTdGlja3kgZGVmYXVsdCByYXRpb25hbGU6IGEgdHJhbnNwb3J0IGVycm9yIGNvbW1vbmx5IGxlYXZlcyB0aGUgc2NyZWVuIGluXG4gICAqIGFuIGluY29uc2lzdGVudCBzdGF0ZSAoZmFpbGVkIGNvbXBvbmVudCBsb2Fkcywgc3R1Y2sgc3Bpbm5lcnMpIHRoYXQgZG9lc1xuICAgKiBOT1Qgc2VsZi1yZWNvdmVyIHdoZW4gdGhlIHNlcnZlciByZXR1cm5zLiBBbiBhdXRvLWRpc21pc3Npbmcgc25hY2tiYXJcbiAgICogd291bGQgaGlkZSB0aGUgbm90aWZpY2F0aW9uIGJlZm9yZSB0aGUgdXNlciBjYW4gYWN0LCBsZWF2aW5nIHRoZW0gd2l0aCBhXG4gICAqIGJyb2tlbiBVSSBhbmQgbm8gd2F5IGJhY2suIFN0aWNreSBmb3JjZXMgdGhlIFJlbG9hZCBhY3Rpb24uXG4gICAqXG4gICAqIFNldCBhIHBvc2l0aXZlIG51bWJlciB0byBvcHQgaW50byBhdXRvLWRpc21pc3MgKGUuZy4gbW9iaWxlLXNoZWxsIGZsb3dzXG4gICAqIHdoZXJlIHRoZSBzaGVsbCB0ZWFycyBkb3duIHRoZSB3ZWJ2aWV3IG9uIHRyYW5zcG9ydCBlcnJvciBhbnl3YXkpLlxuICAgKlxuICAgKiBgc3RhcnRFcnJvcmAgaXMgYWx3YXlzIHN0aWNreSByZWdhcmRsZXNzIOKAlCB0aGUgYXBwIGlzIHVudXNhYmxlIHVudGlsIHRoZVxuICAgKiB1c2VyIHJldHJpZXMuXG4gICAqL1xuICB0cmFuc3BvcnRFcnJvckR1cmF0aW9uPzogbnVtYmVyO1xufVxuXG5jb25zdCBTVFJJTkdTX0hVOiBEZWZhdWx0RXJyb3JVaVN0cmluZ3MgPSB7XG4gIHN0YXJ0RXJyb3JNZXNzYWdlOiAnQSBzemVydmVyIG5lbSBlbMOpcmhldMWRLicsXG4gIHN0YXJ0RXJyb3JSZXRyeTogJ8OaanJhcHLDs2LDoWzDoXMnLFxuICB0cmFuc3BvcnRFcnJvck1lc3NhZ2U6ICdBIHN6ZXJ2ZXIgbmVtIGVsw6lyaGV0xZEuJyxcbiAgdHJhbnNwb3J0RXJyb3JSZWxvYWQ6ICfDmmpyYXTDtmx0w6lzJyxcbiAgc2Vzc2lvbkVycm9yTWVzc2FnZTogJ0EgbXVua2FtZW5ldCBsZWrDoXJ0LCBrw6lyasO8ayBqZWxlbnRrZXp6ZW4gYmUgw7pqcmEuJyxcbiAgc2Vzc2lvbkVycm9yQWN0aW9uOiAnQmVqZWxlbnRrZXrDqXMnLFxufTtcblxuY29uc3QgU1RSSU5HU19FTjogRGVmYXVsdEVycm9yVWlTdHJpbmdzID0ge1xuICBzdGFydEVycm9yTWVzc2FnZTogJ1RoZSBzZXJ2ZXIgaXMgdW5hdmFpbGFibGUuJyxcbiAgc3RhcnRFcnJvclJldHJ5OiAnUmV0cnknLFxuICB0cmFuc3BvcnRFcnJvck1lc3NhZ2U6ICdUaGUgc2VydmVyIGlzIHVuYXZhaWxhYmxlLicsXG4gIHRyYW5zcG9ydEVycm9yUmVsb2FkOiAnUmVsb2FkJyxcbiAgc2Vzc2lvbkVycm9yTWVzc2FnZTogJ1lvdXIgc2Vzc2lvbiBoYXMgZXhwaXJlZC4gUGxlYXNlIGxvZyBpbiBhZ2Fpbi4nLFxuICBzZXNzaW9uRXJyb3JBY3Rpb246ICdMb2cgaW4nLFxufTtcblxuLyoqXG4gKiBPcHQtaW4gZGVmYXVsdCBVWCBmb3IgYFNtYXJ0QmFja2VuZEJvb3RzdHJhcFNlcnZpY2VgIGVycm9yIGhvb2tzLlxuICpcbiAqIFNwcmVhZCB0aGUgcmVzdWx0IG9mIGBob29rcyhvcHRpb25zKWAgaW50byBgYm9vdHN0cmFwLmNvbmZpZ3VyZSgpYCB0byBnZXQgYVxuICogTWF0U25hY2tCYXItYmFzZWQgXCJlcnJvciArIHJldHJ5XCIgVUkgd2l0aG91dCB3cml0aW5nIHRoZSBob3N0IGdsdWU6XG4gKlxuICogYGBgdHNcbiAqIGJvb3RzdHJhcC5jb25maWd1cmUoe1xuICogICAuLi5taW5pbWFsQ29uZmlnLFxuICogICAuLi5kZWZhdWx0RXJyb3JVaS5ob29rcyh7IGxhbmd1YWdlOiAnaHUnIH0pLFxuICogfSk7XG4gKiBgYGBcbiAqXG4gKiBIb3N0cyB0aGF0IHdhbnQgY3VzdG9tIGxvZ2ljIGNhbiBvbWl0IHRoaXMgc2VydmljZSBhbmQgd3JpdGUgdGhlaXIgb3duXG4gKiBgb25TdGFydEVycm9yYCAvIGBvblRyYW5zcG9ydEVycm9yYCBjYWxsYmFja3MgZGlyZWN0bHkuXG4gKi9cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgU21hcnREZWZhdWx0RXJyb3JVaVNlcnZpY2Uge1xuICBwcml2YXRlIHNuYWNrQmFyID0gaW5qZWN0KE1hdFNuYWNrQmFyKTtcbiAgcHJpdmF0ZSBzZXNzaW9uID0gaW5qZWN0KFNtYXJ0U2Vzc2lvblNlcnZpY2UpO1xuXG4gIC8qKiBSZXR1cm5zIGEgaG9va3MgYnVuZGxlIHJlYWR5IHRvIHNwcmVhZCBpbnRvIGBib290c3RyYXAuY29uZmlndXJlKClgLiAqL1xuICBob29rcyhvcHRpb25zOiBEZWZhdWx0RXJyb3JVaU9wdGlvbnMgPSB7fSk6IHtcbiAgICBvblN0YXJ0RXJyb3I6IChlcnI6IHVua25vd24pID0+IHZvaWQ7XG4gICAgb25UcmFuc3BvcnRFcnJvcjogKGVycjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHZvaWQ7XG4gICAgb25TZXNzaW9uRXJyb3I6IChlcnI6IFNlc3Npb25FcnJvcikgPT4gdm9pZDtcbiAgfSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG9uU3RhcnRFcnJvcjogKGVycjogdW5rbm93bikgPT4gdGhpcy5zaG93U3RhcnRFcnJvcihlcnIsIG9wdGlvbnMpLFxuICAgICAgb25UcmFuc3BvcnRFcnJvcjogKGVycjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHRoaXMuc2hvd1RyYW5zcG9ydEVycm9yKGVyciwgb3B0aW9ucyksXG4gICAgICBvblNlc3Npb25FcnJvcjogKGVycjogU2Vzc2lvbkVycm9yKSA9PiB0aGlzLnNob3dTZXNzaW9uRXJyb3IoZXJyLCBvcHRpb25zKSxcbiAgICB9O1xuICB9XG5cbiAgc2hvd1N0YXJ0RXJyb3IoX2VycjogdW5rbm93biwgb3B0aW9uczogRGVmYXVsdEVycm9yVWlPcHRpb25zID0ge30pOiB2b2lkIHtcbiAgICBjb25zdCBzID0gdGhpcy5yZXNvbHZlU3RyaW5ncyhvcHRpb25zKTtcbiAgICBjb25zdCByZWYgPSB0aGlzLnNuYWNrQmFyLm9wZW4ocy5zdGFydEVycm9yTWVzc2FnZSwgcy5zdGFydEVycm9yUmV0cnksIHtcbiAgICAgIGR1cmF0aW9uOiAwLCAvLyBzdGlja3kg4oCUIGFwcCBpcyBub3QgdXNhYmxlIHVudGlsIHJldHJ5IHN1Y2NlZWRzXG4gICAgfSk7XG4gICAgLy8gRnVsbCByZWxvYWQsIG5vdCBib290c3RyYXAuc3RhcnQoKS4gQSBib290c3RyYXAuc3RhcnQoKSByZXRyeSBvbmx5IHJlLXJ1bnNcbiAgICAvLyB0aGUgaW5pdCBzZXF1ZW5jZTsgYW55IGNvbXBvbmVudHMgdGhhdCBhbHJlYWR5IG1vdW50ZWQgZHVyaW5nIHRoZSBmYWlsZWRcbiAgICAvLyBhdHRlbXB0IGhhdmUgcmVqZWN0ZWQgYHdoZW5SZWFkeSgpYCBQcm9taXNlcyBhbmQgd29uJ3QgcmUtdHJpZ2dlciB0aGVpclxuICAgIC8vIHJ1bigpIHdoZW4gYm9vdHN0cmFwIGV2ZW50dWFsbHkgc3VjY2VlZHMuIFJlbG9hZCBndWFyYW50ZWVzIGEgY2xlYW4gbW91bnQuXG4gICAgcmVmLm9uQWN0aW9uKCkuc3Vic2NyaWJlKCgpID0+IHRoaXMudmVyaWZ5U2VydmVyQW5kUmVsb2FkKCkpO1xuICB9XG5cbiAgc2hvd1RyYW5zcG9ydEVycm9yKF9lcnI6IEh0dHBFcnJvclJlc3BvbnNlLCBvcHRpb25zOiBEZWZhdWx0RXJyb3JVaU9wdGlvbnMgPSB7fSk6IHZvaWQge1xuICAgIGNvbnN0IHMgPSB0aGlzLnJlc29sdmVTdHJpbmdzKG9wdGlvbnMpO1xuICAgIGNvbnN0IHJlZiA9IHRoaXMuc25hY2tCYXIub3BlbihzLnRyYW5zcG9ydEVycm9yTWVzc2FnZSwgcy50cmFuc3BvcnRFcnJvclJlbG9hZCwge1xuICAgICAgZHVyYXRpb246IG9wdGlvbnMudHJhbnNwb3J0RXJyb3JEdXJhdGlvbiA/PyAwLFxuICAgIH0pO1xuICAgIHJlZi5vbkFjdGlvbigpLnN1YnNjcmliZSgoKSA9PiB0aGlzLnZlcmlmeVNlcnZlckFuZFJlbG9hZCgpKTtcbiAgfVxuXG4gIHNob3dTZXNzaW9uRXJyb3IoX2VycjogU2Vzc2lvbkVycm9yLCBvcHRpb25zOiBEZWZhdWx0RXJyb3JVaU9wdGlvbnMgPSB7fSk6IHZvaWQge1xuICAgIGNvbnN0IHMgPSB0aGlzLnJlc29sdmVTdHJpbmdzKG9wdGlvbnMpO1xuICAgIGNvbnN0IHJlZiA9IHRoaXMuc25hY2tCYXIub3BlbihzLnNlc3Npb25FcnJvck1lc3NhZ2UsIHMuc2Vzc2lvbkVycm9yQWN0aW9uLCB7XG4gICAgICBkdXJhdGlvbjogMCwgLy8gc3RpY2t5IOKAlCBzZXNzaW9uIGlzIGludmFsaWQgdW50aWwgdGhlIHVzZXIgdGFrZXMgYWN0aW9uXG4gICAgfSk7XG4gICAgcmVmLm9uQWN0aW9uKCkuc3Vic2NyaWJlKCgpID0+IHRoaXMucmVjb3ZlclNlc3Npb24oKSk7XG4gIH1cblxuICAvKipcbiAgICogQ2xlYXJzIHRoZSBkZWFkIHNlc3Npb24gYW5kIHJlbG9hZHMuIFVubGlrZSBgdmVyaWZ5U2VydmVyQW5kUmVsb2FkYCwgdGhpc1xuICAgKiBkb2VzIE5PVCBwcmUtY2hlY2sgdmlhIGBnZXRTZXNzaW9uKClgIOKAlCB0aGUgU0lEIGlzIGtub3duIHRvIGJlIGludmFsaWQsXG4gICAqIHNvIHRoZSBjaGVjayB3b3VsZCBmYWlsLiBXZSBiZXN0LWVmZm9ydCBgY2xlYXJBbmRTdGFydE5ld1Nlc3Npb24oKWBcbiAgICogKGNyZWF0ZXMgYSBmcmVzaCBhbm9ueW1vdXMgc2Vzc2lvbik7IHJlbG9hZCBoYXBwZW5zIHJlZ2FyZGxlc3Mgc28gdGhlXG4gICAqIHVzZXIgaXMgbm90IHN0dWNrIGlmIHRoZSBjbGVhciBmYWlscyAoZS5nLiwgc2VydmVyIGZsYXBwaW5nKS5cbiAgICpcbiAgICogT3ZlcnJpZGFibGUgaW4gdGVzdHMuXG4gICAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgcmVjb3ZlclNlc3Npb24oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRoaXMuc2Vzc2lvbi5jbGVhckFuZFN0YXJ0TmV3U2Vzc2lvbigpO1xuICAgIH0gY2F0Y2gge1xuICAgICAgLy8gU2VydmVyIG1heSBhbHNvIGJlIGRvd247IHJlbG9hZCBhbnl3YXkgYW5kIGxldCBib290c3RyYXAuc3RhcnQoKSByZXRyeS5cbiAgICB9XG4gICAgdGhpcy5yZWxvYWRQYWdlKCk7XG4gIH1cblxuICAvKipcbiAgICogUGluZ3MgYGdldFNlc3Npb24oKWAgYmVmb3JlIHJlbG9hZGluZzogaWYgdGhlIHNlcnZlciBpcyBzdGlsbCBkb3duLCB0aGVcbiAgICogcmVsb2FkIHdvdWxkIGp1c3QgcmUtdHJpZ2dlciB0aGUgYnJva2VuLXNjcmVlbiBzdGF0ZS4gVGhlIGZhaWxlZCBjaGVja1xuICAgKiBnb2VzIHRocm91Z2ggYFNtYXJ0RXJyb3JDYXRjaGluZ0ludGVyY2VwdG9yYCBhbmQgcmUtZmlyZXMgYG9uVHJhbnNwb3J0RXJyb3JgLFxuICAgKiBzbyB0aGUgdXNlciBzZWVzIGEgZnJlc2ggc25hY2tiYXIg4oCUIHRoZXkgZ2V0IHZpc2libGUgZmVlZGJhY2sgdGhhdCB0aGVcbiAgICogc2VydmVyIGlzIHN0aWxsIHVucmVhY2hhYmxlLCB3aXRob3V0IHBheWluZyB0aGUgY29zdCBvZiBhIGZ1bGwgYnVuZGxlXG4gICAqIHJlbG9hZCB0aGF0IGxhbmRzIG9uIHRoZSBzYW1lIGJyb2tlbiBzdGF0ZS5cbiAgICpcbiAgICogT3ZlcnJpZGFibGUgaW4gdGVzdHMuXG4gICAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgdmVyaWZ5U2VydmVyQW5kUmVsb2FkKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCB0aGlzLnNlc3Npb24uZ2V0U2Vzc2lvbigpO1xuICAgIH0gY2F0Y2gge1xuICAgICAgcmV0dXJuOyAvLyBzZXJ2ZXIgc3RpbGwgdW5yZWFjaGFibGUg4oCUIGludGVyY2VwdG9yIHJlLW9wZW5zIHRoZSBzbmFja2JhclxuICAgIH1cbiAgICB0aGlzLnJlbG9hZFBhZ2UoKTtcbiAgfVxuXG4gIC8qKiBPdmVycmlkYWJsZSBpbiB0ZXN0cy4gKi9cbiAgcHJvdGVjdGVkIHJlbG9hZFBhZ2UoKTogdm9pZCB7XG4gICAgd2luZG93LmxvY2F0aW9uLnJlbG9hZCgpO1xuICB9XG5cbiAgcHJpdmF0ZSByZXNvbHZlU3RyaW5ncyhvcHRpb25zOiBEZWZhdWx0RXJyb3JVaU9wdGlvbnMpOiBEZWZhdWx0RXJyb3JVaVN0cmluZ3Mge1xuICAgIGNvbnN0IGxhbmcgPSB0aGlzLnJlc29sdmVMYW5ndWFnZShvcHRpb25zLmxhbmd1YWdlKTtcbiAgICBjb25zdCBiYXNlID0gbGFuZyA9PT0gJ2h1JyA/IFNUUklOR1NfSFUgOiBTVFJJTkdTX0VOO1xuICAgIHJldHVybiB7IC4uLmJhc2UsIC4uLihvcHRpb25zLnN0cmluZ3MgPz8ge30pIH07XG4gIH1cblxuICBwcml2YXRlIHJlc29sdmVMYW5ndWFnZShsYW5nPzogRGVmYXVsdEVycm9yVWlMYW5ndWFnZSk6ICdodScgfCAnZW4nIHtcbiAgICBpZiAobGFuZyA9PT0gJ2h1JyB8fCBsYW5nID09PSAnZW4nKSB7XG4gICAgICByZXR1cm4gbGFuZztcbiAgICB9XG4gICAgcmV0dXJuIG5hdmlnYXRvci5sYW5ndWFnZT8udG9Mb3dlckNhc2UoKS5zdGFydHNXaXRoKCdodScpID8gJ2h1JyA6ICdlbic7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
2
|
import { from, throwError } from 'rxjs';
|
|
3
3
|
import { catchError, switchMap } from 'rxjs/operators';
|
|
4
|
-
import { SessionErrorBehaviour
|
|
4
|
+
import { SessionErrorBehaviour } from './smart-session-handler.service';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "./
|
|
6
|
+
import * as i1 from "./smart-session.service";
|
|
7
7
|
import * as i2 from "./smart-backend-bootstrap.service";
|
|
8
8
|
export class SmartErrorCatchingInterceptor {
|
|
9
9
|
constructor(session, bootstrap) {
|
|
@@ -106,4 +106,4 @@ export class SmartErrorCatchingInterceptor {
|
|
|
106
106
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartErrorCatchingInterceptor, decorators: [{
|
|
107
107
|
type: Injectable
|
|
108
108
|
}], ctorParameters: () => [{ type: i1.SmartSessionService }, { type: i2.SmartBackendBootstrapService }] });
|
|
109
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtZXJyb3ItY2F0Y2hpbmcuaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zZXNzaW9uL3NtYXJ0LWVycm9yLWNhdGNoaW5nLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLElBQUksRUFBYyxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RCxPQUFPLEVBSUwscUJBQXFCLEdBRXRCLE1BQU0sWUFBWSxDQUFDOzs7O0FBSXBCLE1BQU0sT0FBTyw2QkFBNkI7SUFnQ3hDLFlBQ1UsT0FBNEIsRUFDNUIsU0FBdUM7UUFEdkMsWUFBTyxHQUFQLE9BQU8sQ0FBcUI7UUFDNUIsY0FBUyxHQUFULFNBQVMsQ0FBOEI7UUFqQ2pELHNCQUFpQixHQUFtQjtZQUNsQztnQkFDRSxJQUFJLEVBQUUsaUJBQWlCO2dCQUN2QixTQUFTLEVBQUUscUJBQXFCLENBQUMsT0FBTzthQUN6QztZQUNEO2dCQUNFLElBQUksRUFBRSw4QkFBOEI7Z0JBQ3BDLFNBQVMsRUFBRSxxQkFBcUIsQ0FBQyxPQUFPO2FBQ3pDO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLGlDQUFpQztnQkFDdkMsU0FBUyxFQUFFLHFCQUFxQixDQUFDLE9BQU87YUFDekM7WUFDRDtnQkFDRSxJQUFJLEVBQUUsNEJBQTRCO2dCQUNsQyxTQUFTLEVBQUUscUJBQXFCLENBQUMsT0FBTzthQUN6QztZQUNEO2dCQUNFLElBQUksRUFBRSwyQkFBMkI7Z0JBQ2pDLFNBQVMsRUFBRSxxQkFBcUIsQ0FBQyxPQUFPO2FBQ3pDO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLHdCQUF3QjtnQkFDOUIsU0FB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QUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxLQUFNLEtBQUssQ0FBQyxLQUFrQixDQUFDLElBQUksQ0FDckYsQ0FBQztJQUNKLENBQUM7SUFFTyxZQUFZLENBQUMsWUFBMEI7UUFDN0MsSUFBSSxZQUFZLENBQUMsU0FBUyxLQUFLLHFCQUFxQixDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzdELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztRQUM3RCxDQUFDO1FBQ0QsSUFBSSxZQUFZLENBQUMsU0FBUyxLQUFLLHFCQUFxQixDQUFDLG1CQUFtQixFQUFFLENBQUM7WUFDekUsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxxQkFBcUIsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO1FBQ2xFLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVPLG9CQUFvQixDQUFDLE9BQTZCO1FBQ3hELElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFdBQXdCLEVBQUUsRUFBRTtZQUM3RCxPQUFPLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQztnQkFDdEIsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxVQUFVLEVBQUUsV0FBVyxDQUFDLEtBQUssQ0FBQzthQUN4RSxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7K0dBL0dVLDZCQUE2QjttSEFBN0IsNkJBQTZCOzs0RkFBN0IsNkJBQTZCO2tCQUR6QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBIdHRwRXJyb3JSZXNwb25zZSxcclxuICBIdHRwRXZlbnQsXHJcbiAgSHR0cEhhbmRsZXIsXHJcbiAgSHR0cEludGVyY2VwdG9yLFxyXG4gIEh0dHBSZXF1ZXN0LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBmcm9tLCBPYnNlcnZhYmxlLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHtcclxuICBBcGlFcnJvcixcclxuICBIZWFkZXJQYXJhbSxcclxuICBTZXNzaW9uRXJyb3IsXHJcbiAgU2Vzc2lvbkVycm9yQmVoYXZpb3VyLFxyXG4gIFNtYXJ0U2Vzc2lvblNlcnZpY2UsXHJcbn0gZnJvbSAnLi9wcm9qZWN0cyc7XHJcbmltcG9ydCB7IFNtYXJ0QmFja2VuZEJvb3RzdHJhcFNlcnZpY2UgfSBmcm9tICcuL3NtYXJ0LWJhY2tlbmQtYm9vdHN0cmFwLnNlcnZpY2UnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgU21hcnRFcnJvckNhdGNoaW5nSW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xyXG4gIHNlc3Npb25FcnJvckNvZGVzOiBTZXNzaW9uRXJyb3JbXSA9IFtcclxuICAgIHtcclxuICAgICAgY29kZTogJ3Nlc3Npb24uZXhwaXJlZCcsXHJcbiAgICAgIGJlaGF2aW91cjogU2Vzc2lvbkVycm9yQmVoYXZpb3VyLlJFRlJFU0gsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBjb2RlOiAnc2Vzc2lvbi5yZWZyZXNodG9rZW4uaW52YWxpZCcsXHJcbiAgICAgIGJlaGF2aW91cjogU2Vzc2lvbkVycm9yQmVoYXZpb3VyLlJFU1RBUlQsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBjb2RlOiAnc2Vzc2lvbi5iYWRyZXF1ZXN0Lm1pc3Npbmd0b2tlbicsXHJcbiAgICAgIGJlaGF2aW91cjogU2Vzc2lvbkVycm9yQmVoYXZpb3VyLlJFU1RBUlQsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBjb2RlOiAnc2Vzc2lvbi5zZWN1cml0eS5ub2NvbnRleHQnLFxyXG4gICAgICBiZWhhdmlvdXI6IFNlc3Npb25FcnJvckJlaGF2aW91ci5SRVNUQVJULFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgY29kZTogJ3Nlc3Npb24uaW52YWxpZHNlc3Npb251cmknLFxyXG4gICAgICBiZWhhdmlvdXI6IFNlc3Npb25FcnJvckJlaGF2aW91ci5SRVNUQVJULFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgY29kZTogJ3Nlc3Npb24ubm90aW5pdGlhbGl6ZWQnLFxyXG4gICAgICBiZWhhdmlvdXI6IFNlc3Npb25FcnJvckJlaGF2aW91ci5SRVNUQVJULFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgY29kZTogJ3Nlc3Npb24udmlld2NvbnRleHQubWlzc2luZycsXHJcbiAgICAgIGJlaGF2aW91cjogU2Vzc2lvbkVycm9yQmVoYXZpb3VyLlJFU1RBUlRfVklFV0NPTlRFWFQsXHJcbiAgICB9LFxyXG4gIF07XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBzZXNzaW9uOiBTbWFydFNlc3Npb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBib290c3RyYXA6IFNtYXJ0QmFja2VuZEJvb3RzdHJhcFNlcnZpY2UsXHJcbiAgKSB7fVxyXG5cclxuICBpbnRlcmNlcHQocmVxdWVzdDogSHR0cFJlcXVlc3Q8dW5rbm93bj4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8dW5rbm93bj4+IHtcclxuICAgIHJldHVybiBuZXh0XHJcbiAgICAgIC5oYW5kbGUocmVxdWVzdClcclxuICAgICAgLnBpcGUoY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB0aGlzLmhhbmRsZUVycm9yKGVycm9yLCByZXF1ZXN0LCBuZXh0KSkpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBoYW5kbGVFcnJvcihcclxuICAgIGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSxcclxuICAgIHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PHVua25vd24+LFxyXG4gICAgbmV4dDogSHR0cEhhbmRsZXJcclxuICApOiBPYnNlcnZhYmxlPEh0dHBFdmVudDx1bmtub3duPj4ge1xyXG4gICAgaWYgKHRoaXMuaXNTZXNzaW9uRXJyb3IoZXJyb3IpKSB7XHJcbiAgICAgIGNvbnN0IHNlc3Npb25FcnJvciA9IHRoaXMuZ2V0U2Vzc2lvbkVycm9yKGVycm9yKTtcclxuICAgICAgaWYgKHNlc3Npb25FcnJvcikge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnJlc29sdmVFcnJvcihzZXNzaW9uRXJyb3IpLnBpcGUoXHJcbiAgICAgICAgICBzd2l0Y2hNYXAoKHJlc29sdmVkKSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChyZXNvbHZlZCAmJiBzZXNzaW9uRXJyb3IuYmVoYXZpb3VyID09PSBTZXNzaW9uRXJyb3JCZWhhdmlvdXIuUkVGUkVTSCkge1xyXG4gICAgICAgICAgICAgIHJldHVybiBuZXh0LmhhbmRsZSh0aGlzLnVwZGF0ZVJlcXVlc3RIZWFkZXJzKHJlcXVlc3QpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnJvcik7XHJcbiAgICAgICAgICB9KSxcclxuICAgICAgICAgIGNhdGNoRXJyb3IoKHJlc29sdmVFcnJvcikgPT4ge1xyXG4gICAgICAgICAgICAvLyB3aGVuIHRoZSByZXNvbHZlRXJyb3IgdGhyb3dzIGEgcmVzdGFydCBlcnJvciAoaW4gdGhlIHJlZnJlc2hTZXNzaW9uKSwgcmV0aHJvdyB0aGUgb3JpZ2luYWwgZXJyb3JcclxuICAgICAgICAgICAgaWYgKHRoaXMuaXNTZXNzaW9uRXJyb3IocmVzb2x2ZUVycm9yKSkge1xyXG4gICAgICAgICAgICAgIGNvbnN0IHJlc29sdmVTZXNzaW9uRXJyb3IgPSB0aGlzLmdldFNlc3Npb25FcnJvcihyZXNvbHZlRXJyb3IpO1xyXG4gICAgICAgICAgICAgIGlmIChyZXNvbHZlU2Vzc2lvbkVycm9yPy5iZWhhdmlvdXIgPT09IFNlc3Npb25FcnJvckJlaGF2aW91ci5SRVNUQVJUKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnJvcik7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IHJlc29sdmVFcnJvcik7XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGlmICh0aGlzLmlzVHJhbnNwb3J0RXJyb3IoZXJyb3IpKSB7XHJcbiAgICAgIC8vIEZpcmUtYW5kLWZvcmdldDsgdGhlIHJlcXVlc3Qgc3RpbGwgcmVqZWN0cyBzbyBjYWxsZXJzIGNhbiByZWFjdCBwZXItY2FsbC5cclxuICAgICAgdGhpcy5ib290c3RyYXAuaGFuZGxlVHJhbnNwb3J0RXJyb3IoZXJyb3IpLmNhdGNoKChlcnIpID0+IHtcclxuICAgICAgICBjb25zb2xlLmVycm9yKCdoYW5kbGVUcmFuc3BvcnRFcnJvciBob29rIHRocmV3JywgZXJyKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnJvcik7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzU2Vzc2lvbkVycm9yKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIGVycm9yLnN0YXR1cyA9PT0gNDAwICYmIChlcnJvci5lcnJvciBhcyBBcGlFcnJvcikuY29kZSAhPSBudWxsO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc1RyYW5zcG9ydEVycm9yKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIGVycm9yLnN0YXR1cyA9PT0gMCB8fCBlcnJvci5zdGF0dXMgPj0gNTAwO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRTZXNzaW9uRXJyb3IoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKTogU2Vzc2lvbkVycm9yIHwgdW5kZWZpbmVkIHtcclxuICAgIHJldHVybiB0aGlzLnNlc3Npb25FcnJvckNvZGVzLmZpbmQoXHJcbiAgICAgIChzZXNzaW9uRXJyb3I6IFNlc3Npb25FcnJvcikgPT4gc2Vzc2lvbkVycm9yLmNvZGUgPT09IChlcnJvci5lcnJvciBhcyBBcGlFcnJvcikuY29kZVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcmVzb2x2ZUVycm9yKHNlc3Npb25FcnJvcjogU2Vzc2lvbkVycm9yKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGlmIChzZXNzaW9uRXJyb3IuYmVoYXZpb3VyID09PSBTZXNzaW9uRXJyb3JCZWhhdmlvdXIuUkVTVEFSVCkge1xyXG4gICAgICByZXR1cm4gZnJvbSh0aGlzLnNlc3Npb24uaGFuZGxlU2Vzc2lvbkVycm9yKHNlc3Npb25FcnJvcikpO1xyXG4gICAgfVxyXG4gICAgaWYgKHNlc3Npb25FcnJvci5iZWhhdmlvdXIgPT09IFNlc3Npb25FcnJvckJlaGF2aW91ci5SRVNUQVJUX1ZJRVdDT05URVhUKSB7XHJcbiAgICAgIHJldHVybiBmcm9tKHRoaXMuYm9vdHN0cmFwLmhhbmRsZVZpZXdDb250ZXh0TG9zdChzZXNzaW9uRXJyb3IpKTtcclxuICAgIH1cclxuICAgIHJldHVybiBmcm9tKHRoaXMuc2Vzc2lvbi5yZWZyZXNoU2Vzc2lvbigpKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlUmVxdWVzdEhlYWRlcnMocmVxdWVzdDogSHR0cFJlcXVlc3Q8dW5rbm93bj4pOiBIdHRwUmVxdWVzdDx1bmtub3duPiB7XHJcbiAgICB0aGlzLnNlc3Npb24uaGVhZGVyUGFyYW1zLmZvckVhY2goKGhlYWRlclBhcmFtOiBIZWFkZXJQYXJhbSkgPT4ge1xyXG4gICAgICByZXF1ZXN0ID0gcmVxdWVzdC5jbG9uZSh7XHJcbiAgICAgICAgaGVhZGVyczogcmVxdWVzdC5oZWFkZXJzLnNldChoZWFkZXJQYXJhbS5oZWFkZXJOYW1lLCBoZWFkZXJQYXJhbS52YWx1ZSksXHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gcmVxdWVzdDtcclxuICB9XHJcbn1cclxuIl19
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtZXJyb3ItY2F0Y2hpbmcuaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zZXNzaW9uL3NtYXJ0LWVycm9yLWNhdGNoaW5nLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLElBQUksRUFBYyxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2RCxPQUFPLEVBQWdCLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7Ozs7QUFLdEYsTUFBTSxPQUFPLDZCQUE2QjtJQWdDeEMsWUFDVSxPQUE0QixFQUM1QixTQUF1QztRQUR2QyxZQUFPLEdBQVAsT0FBTyxDQUFxQjtRQUM1QixjQUFTLEdBQVQsU0FBUyxDQUE4QjtRQWpDakQsc0JBQWlCLEdBQW1CO1lBQ2xDO2dCQUNFLElBQUksRUFBRSxpQkFBaUI7Z0JBQ3ZCLFNBQVMsRUFBRSxxQkFBcUIsQ0FBQyxPQUFPO2FBQ3pDO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLDhCQUE4QjtnQkFDcEMsU0FBUyxFQUFFLHFCQUFxQixDQUFDLE9BQU87YUFDekM7WUFDRDtnQkFDRSxJQUFJLEVBQUUsaUNBQWlDO2dCQUN2QyxTQUFTLEVBQUUscUJBQXFCLENBQUMsT0FBTzthQUN6QztZQUNEO2dCQUNFLElBQUksRUFBRSw0QkFBNEI7Z0JBQ2xDLFNBQVMsRUFBRSxxQkFBcUIsQ0FBQyxPQUFPO2FBQ3pDO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLDJCQUEyQjtnQkFDakMsU0FBUyxFQUFFLHFCQUFxQixDQUFDLE9BQU87YUFDekM7WUFDRDtnQkFDRSxJQUFJLEVBQUUsd0JBQXdCO2dCQUM5QixT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RUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLEtBQU0sS0FBSyxDQUFDLEtBQWtCLENBQUMsSUFBSSxDQUNyRixDQUFDO0lBQ0osQ0FBQztJQUVPLFlBQVksQ0FBQyxZQUEwQjtRQUM3QyxJQUFJLFlBQVksQ0FBQyxTQUFTLEtBQUsscUJBQXFCLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDN0QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO1FBQzdELENBQUM7UUFDRCxJQUFJLFlBQVksQ0FBQyxTQUFTLEtBQUsscUJBQXFCLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztZQUN6RSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLHFCQUFxQixDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7UUFDbEUsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRU8sb0JBQW9CLENBQUMsT0FBNkI7UUFDeEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsV0FBd0IsRUFBRSxFQUFFO1lBQzdELE9BQU8sR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO2dCQUN0QixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxXQUFXLENBQUMsS0FBSyxDQUFDO2FBQ3hFLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQzsrR0EvR1UsNkJBQTZCO21IQUE3Qiw2QkFBNkI7OzRGQUE3Qiw2QkFBNkI7a0JBRHpDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBIdHRwRXJyb3JSZXNwb25zZSxcbiAgSHR0cEV2ZW50LFxuICBIdHRwSGFuZGxlcixcbiAgSHR0cEludGVyY2VwdG9yLFxuICBIdHRwUmVxdWVzdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZnJvbSwgT2JzZXJ2YWJsZSwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQXBpRXJyb3IgfSBmcm9tICcuL2FwaSc7XG5pbXBvcnQgeyBTZXNzaW9uRXJyb3IsIFNlc3Npb25FcnJvckJlaGF2aW91ciB9IGZyb20gJy4vc21hcnQtc2Vzc2lvbi1oYW5kbGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgSGVhZGVyUGFyYW0sIFNtYXJ0U2Vzc2lvblNlcnZpY2UgfSBmcm9tICcuL3NtYXJ0LXNlc3Npb24uc2VydmljZSc7XG5pbXBvcnQgeyBTbWFydEJhY2tlbmRCb290c3RyYXBTZXJ2aWNlIH0gZnJvbSAnLi9zbWFydC1iYWNrZW5kLWJvb3RzdHJhcC5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNtYXJ0RXJyb3JDYXRjaGluZ0ludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcbiAgc2Vzc2lvbkVycm9yQ29kZXM6IFNlc3Npb25FcnJvcltdID0gW1xuICAgIHtcbiAgICAgIGNvZGU6ICdzZXNzaW9uLmV4cGlyZWQnLFxuICAgICAgYmVoYXZpb3VyOiBTZXNzaW9uRXJyb3JCZWhhdmlvdXIuUkVGUkVTSCxcbiAgICB9LFxuICAgIHtcbiAgICAgIGNvZGU6ICdzZXNzaW9uLnJlZnJlc2h0b2tlbi5pbnZhbGlkJyxcbiAgICAgIGJlaGF2aW91cjogU2Vzc2lvbkVycm9yQmVoYXZpb3VyLlJFU1RBUlQsXG4gICAgfSxcbiAgICB7XG4gICAgICBjb2RlOiAnc2Vzc2lvbi5iYWRyZXF1ZXN0Lm1pc3Npbmd0b2tlbicsXG4gICAgICBiZWhhdmlvdXI6IFNlc3Npb25FcnJvckJlaGF2aW91ci5SRVNUQVJULFxuICAgIH0sXG4gICAge1xuICAgICAgY29kZTogJ3Nlc3Npb24uc2VjdXJpdHkubm9jb250ZXh0JyxcbiAgICAgIGJlaGF2aW91cjogU2Vzc2lvbkVycm9yQmVoYXZpb3VyLlJFU1RBUlQsXG4gICAgfSxcbiAgICB7XG4gICAgICBjb2RlOiAnc2Vzc2lvbi5pbnZhbGlkc2Vzc2lvbnVyaScsXG4gICAgICBiZWhhdmlvdXI6IFNlc3Npb25FcnJvckJlaGF2aW91ci5SRVNUQVJULFxuICAgIH0sXG4gICAge1xuICAgICAgY29kZTogJ3Nlc3Npb24ubm90aW5pdGlhbGl6ZWQnLFxuICAgICAgYmVoYXZpb3VyOiBTZXNzaW9uRXJyb3JCZWhhdmlvdXIuUkVTVEFSVCxcbiAgICB9LFxuICAgIHtcbiAgICAgIGNvZGU6ICdzZXNzaW9uLnZpZXdjb250ZXh0Lm1pc3NpbmcnLFxuICAgICAgYmVoYXZpb3VyOiBTZXNzaW9uRXJyb3JCZWhhdmlvdXIuUkVTVEFSVF9WSUVXQ09OVEVYVCxcbiAgICB9LFxuICBdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgc2Vzc2lvbjogU21hcnRTZXNzaW9uU2VydmljZSxcbiAgICBwcml2YXRlIGJvb3RzdHJhcDogU21hcnRCYWNrZW5kQm9vdHN0cmFwU2VydmljZSxcbiAgKSB7fVxuXG4gIGludGVyY2VwdChyZXF1ZXN0OiBIdHRwUmVxdWVzdDx1bmtub3duPiwgbmV4dDogSHR0cEhhbmRsZXIpOiBPYnNlcnZhYmxlPEh0dHBFdmVudDx1bmtub3duPj4ge1xuICAgIHJldHVybiBuZXh0XG4gICAgICAuaGFuZGxlKHJlcXVlc3QpXG4gICAgICAucGlwZShjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHRoaXMuaGFuZGxlRXJyb3IoZXJyb3IsIHJlcXVlc3QsIG5leHQpKSk7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZUVycm9yKFxuICAgIGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSxcbiAgICByZXF1ZXN0OiBIdHRwUmVxdWVzdDx1bmtub3duPixcbiAgICBuZXh0OiBIdHRwSGFuZGxlclxuICApOiBPYnNlcnZhYmxlPEh0dHBFdmVudDx1bmtub3duPj4ge1xuICAgIGlmICh0aGlzLmlzU2Vzc2lvbkVycm9yKGVycm9yKSkge1xuICAgICAgY29uc3Qgc2Vzc2lvbkVycm9yID0gdGhpcy5nZXRTZXNzaW9uRXJyb3IoZXJyb3IpO1xuICAgICAgaWYgKHNlc3Npb25FcnJvcikge1xuICAgICAgICByZXR1cm4gdGhpcy5yZXNvbHZlRXJyb3Ioc2Vzc2lvbkVycm9yKS5waXBlKFxuICAgICAgICAgIHN3aXRjaE1hcCgocmVzb2x2ZWQpID0+IHtcbiAgICAgICAgICAgIGlmIChyZXNvbHZlZCAmJiBzZXNzaW9uRXJyb3IuYmVoYXZpb3VyID09PSBTZXNzaW9uRXJyb3JCZWhhdmlvdXIuUkVGUkVTSCkge1xuICAgICAgICAgICAgICByZXR1cm4gbmV4dC5oYW5kbGUodGhpcy51cGRhdGVSZXF1ZXN0SGVhZGVycyhyZXF1ZXN0KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnJvcik7XG4gICAgICAgICAgfSksXG4gICAgICAgICAgY2F0Y2hFcnJvcigocmVzb2x2ZUVycm9yKSA9PiB7XG4gICAgICAgICAgICAvLyB3aGVuIHRoZSByZXNvbHZlRXJyb3IgdGhyb3dzIGEgcmVzdGFydCBlcnJvciAoaW4gdGhlIHJlZnJlc2hTZXNzaW9uKSwgcmV0aHJvdyB0aGUgb3JpZ2luYWwgZXJyb3JcbiAgICAgICAgICAgIGlmICh0aGlzLmlzU2Vzc2lvbkVycm9yKHJlc29sdmVFcnJvcikpIHtcbiAgICAgICAgICAgICAgY29uc3QgcmVzb2x2ZVNlc3Npb25FcnJvciA9IHRoaXMuZ2V0U2Vzc2lvbkVycm9yKHJlc29sdmVFcnJvcik7XG4gICAgICAgICAgICAgIGlmIChyZXNvbHZlU2Vzc2lvbkVycm9yPy5iZWhhdmlvdXIgPT09IFNlc3Npb25FcnJvckJlaGF2aW91ci5SRVNUQVJUKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyb3IpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiByZXNvbHZlRXJyb3IpO1xuICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICAgIGlmICh0aGlzLmlzVHJhbnNwb3J0RXJyb3IoZXJyb3IpKSB7XG4gICAgICAvLyBGaXJlLWFuZC1mb3JnZXQ7IHRoZSByZXF1ZXN0IHN0aWxsIHJlamVjdHMgc28gY2FsbGVycyBjYW4gcmVhY3QgcGVyLWNhbGwuXG4gICAgICB0aGlzLmJvb3RzdHJhcC5oYW5kbGVUcmFuc3BvcnRFcnJvcihlcnJvcikuY2F0Y2goKGVycikgPT4ge1xuICAgICAgICBjb25zb2xlLmVycm9yKCdoYW5kbGVUcmFuc3BvcnRFcnJvciBob29rIHRocmV3JywgZXJyKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnJvcik7XG4gIH1cblxuICBwcml2YXRlIGlzU2Vzc2lvbkVycm9yKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBlcnJvci5zdGF0dXMgPT09IDQwMCAmJiAoZXJyb3IuZXJyb3IgYXMgQXBpRXJyb3IpLmNvZGUgIT0gbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgaXNUcmFuc3BvcnRFcnJvcihlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZXJyb3Iuc3RhdHVzID09PSAwIHx8IGVycm9yLnN0YXR1cyA+PSA1MDA7XG4gIH1cblxuICBwcml2YXRlIGdldFNlc3Npb25FcnJvcihlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpOiBTZXNzaW9uRXJyb3IgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnNlc3Npb25FcnJvckNvZGVzLmZpbmQoXG4gICAgICAoc2Vzc2lvbkVycm9yOiBTZXNzaW9uRXJyb3IpID0+IHNlc3Npb25FcnJvci5jb2RlID09PSAoZXJyb3IuZXJyb3IgYXMgQXBpRXJyb3IpLmNvZGVcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSByZXNvbHZlRXJyb3Ioc2Vzc2lvbkVycm9yOiBTZXNzaW9uRXJyb3IpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGlmIChzZXNzaW9uRXJyb3IuYmVoYXZpb3VyID09PSBTZXNzaW9uRXJyb3JCZWhhdmlvdXIuUkVTVEFSVCkge1xuICAgICAgcmV0dXJuIGZyb20odGhpcy5zZXNzaW9uLmhhbmRsZVNlc3Npb25FcnJvcihzZXNzaW9uRXJyb3IpKTtcbiAgICB9XG4gICAgaWYgKHNlc3Npb25FcnJvci5iZWhhdmlvdXIgPT09IFNlc3Npb25FcnJvckJlaGF2aW91ci5SRVNUQVJUX1ZJRVdDT05URVhUKSB7XG4gICAgICByZXR1cm4gZnJvbSh0aGlzLmJvb3RzdHJhcC5oYW5kbGVWaWV3Q29udGV4dExvc3Qoc2Vzc2lvbkVycm9yKSk7XG4gICAgfVxuICAgIHJldHVybiBmcm9tKHRoaXMuc2Vzc2lvbi5yZWZyZXNoU2Vzc2lvbigpKTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlUmVxdWVzdEhlYWRlcnMocmVxdWVzdDogSHR0cFJlcXVlc3Q8dW5rbm93bj4pOiBIdHRwUmVxdWVzdDx1bmtub3duPiB7XG4gICAgdGhpcy5zZXNzaW9uLmhlYWRlclBhcmFtcy5mb3JFYWNoKChoZWFkZXJQYXJhbTogSGVhZGVyUGFyYW0pID0+IHtcbiAgICAgIHJlcXVlc3QgPSByZXF1ZXN0LmNsb25lKHtcbiAgICAgICAgaGVhZGVyczogcmVxdWVzdC5oZWFkZXJzLnNldChoZWFkZXJQYXJhbS5oZWFkZXJOYW1lLCBoZWFkZXJQYXJhbS52YWx1ZSksXG4gICAgICB9KTtcbiAgICB9KTtcbiAgICByZXR1cm4gcmVxdWVzdDtcbiAgfVxufVxuIl19
|
|
@@ -41,4 +41,4 @@ export class SmartHeaderMaintainerInterceptor {
|
|
|
41
41
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartHeaderMaintainerInterceptor, decorators: [{
|
|
42
42
|
type: Injectable
|
|
43
43
|
}], ctorParameters: () => [{ type: i1.SmartSessionService }] });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtaGVhZGVyLW1haW50YWluZXIuaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zZXNzaW9uL3NtYXJ0LWhlYWRlci1tYWludGFpbmVyLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQU0zQyxNQUFNLE9BQU8sZ0NBQWdDO0lBQzNDLFlBQW9CLE9BQTRCO1FBQTVCLFlBQU8sR0FBUCxPQUFPLENBQXFCO0lBQUcsQ0FBQztJQUVwRCxTQUFTLENBQUMsT0FBeUIsRUFBRSxJQUFpQjtRQUNwRCxtQkFBbUI7UUFDbkIsY0FBYztRQUNkLElBQUksT0FBTyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztZQUNoRDs7aUJBRUssQ0FBQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDcEMsQ0FBQztRQUVELElBQUksT0FBTyxHQUEwQyxFQUFFLENBQUM7UUFFeEQsdUJBQXVCO1FBQ3ZCLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDakMsSUFBSSxLQUFLLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDeEMsSUFBSSxLQUFLLEVBQUUsQ0FBQztnQkFDVixPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDO1lBQ3ZCLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILGtCQUFrQjtRQUNsQixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUM7UUFDakYsSUFBSSxVQUFVLEVBQUUsQ0FBQztZQUNmLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFO2dCQUM1QyxPQUFPLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUM7WUFDdEQsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsZ0RBQWdEO1FBQ2hELE9BQU8sR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQ3RCLGlCQUFpQjtZQUNqQixVQUFVLEVBQUUsT0FBTztTQUNwQixDQUFDLENBQUM7UUFFSCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDOUIsQ0FBQzsrR0FyQ1UsZ0NBQWdDO21IQUFoQyxnQ0FBZ0M7OzRGQUFoQyxnQ0FBZ0M7a0JBRDVDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwUmVxdWVzdCwgSHR0cEhhbmRsZXIsIEh0dHBFdmVudCwgSHR0cEludGVyY2VwdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU21hcnRTZXNzaW9uU2VydmljZSB9IGZyb20gJy4vc21hcnQtc2Vzc2lvbi5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNtYXJ0SGVhZGVyTWFpbnRhaW5lckludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzZXNzaW9uOiBTbWFydFNlc3Npb25TZXJ2aWNlKSB7fVxuXG4gIGludGVyY2VwdChyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcbiAgICAvLyBuZXcgcmVxdWVzdCBkYXRhXG4gICAgLy8gVE9ETyBmaXggbWVcbiAgICBpZiAocmVxdWVzdC51cmxXaXRoUGFyYW1zLmluY2x1ZGVzKCcva2VyYi9zc28nKSkge1xuICAgICAgLyogICByZXF1ZXN0ID0gcmVxdWVzdC5jbG9uZSh7XG4gICAgICAgIHVybDogdXJsLFxuICAgICAgfSkgKi8gcmV0dXJuIG5leHQuaGFuZGxlKHJlcXVlc3QpO1xuICAgIH1cblxuICAgIGxldCBoZWFkZXJzOiB7IFtuYW1lOiBzdHJpbmddOiBzdHJpbmcgfCBzdHJpbmdbXSB9ID0ge307XG5cbiAgICAvLyBjb3B5IGN1cnJlbnQgaGVhZGVyc1xuICAgIHJlcXVlc3QuaGVhZGVycy5rZXlzKCkubWFwKChrZXkpID0+IHtcbiAgICAgIGxldCB2YWx1ZSA9IHJlcXVlc3QuaGVhZGVycy5nZXRBbGwoa2V5KTtcbiAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICBoZWFkZXJzW2tleV0gPSB2YWx1ZTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIC8vIGFkZCBvd24gaGVhZGVyc1xuICAgIGNvbnN0IGhhc0hlYWRlcnMgPSB0aGlzLnNlc3Npb24uaGVhZGVyUGFyYW1zICYmIHRoaXMuc2Vzc2lvbi5oZWFkZXJQYXJhbXMubGVuZ3RoO1xuICAgIGlmIChoYXNIZWFkZXJzKSB7XG4gICAgICB0aGlzLnNlc3Npb24uaGVhZGVyUGFyYW1zLm1hcCgoaGVhZGVyUGFyYW0pID0+IHtcbiAgICAgICAgaGVhZGVyc1toZWFkZXJQYXJhbS5oZWFkZXJOYW1lXSA9IGhlYWRlclBhcmFtLnZhbHVlO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gY3JlYXRlIG5ldyByZXF1ZXN0IChuZWNlc3NhcnkgdG8gcmV3cml0ZSB1cmwpXG4gICAgcmVxdWVzdCA9IHJlcXVlc3QuY2xvbmUoe1xuICAgICAgLyogICB1cmw6IHVybCwgKi9cbiAgICAgIHNldEhlYWRlcnM6IGhlYWRlcnMsXG4gICAgfSk7XG5cbiAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxdWVzdCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -4,4 +4,4 @@ export var SessionErrorBehaviour;
|
|
|
4
4
|
SessionErrorBehaviour[SessionErrorBehaviour["RESTART"] = 1] = "RESTART";
|
|
5
5
|
SessionErrorBehaviour[SessionErrorBehaviour["RESTART_VIEWCONTEXT"] = 2] = "RESTART_VIEWCONTEXT";
|
|
6
6
|
})(SessionErrorBehaviour || (SessionErrorBehaviour = {}));
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtc2Vzc2lvbi1oYW5kbGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zZXNzaW9uL3NtYXJ0LXNlc3Npb24taGFuZGxlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW1CQSxNQUFNLENBQU4sSUFBWSxxQkFJWDtBQUpELFdBQVkscUJBQXFCO0lBQy9CLHVFQUFPLENBQUE7SUFDUCx1RUFBTyxDQUFBO0lBQ1AsK0ZBQW1CLENBQUE7QUFDckIsQ0FBQyxFQUpXLHFCQUFxQixLQUFyQixxQkFBcUIsUUFJaEMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFNtYXJ0U2Vzc2lvbkhhbmRsZXJTZXJ2aWNlIHtcbiAgLyoqXG4gICAqIEhhbmRsZXMgU2Vzc2lvbkVycm9ycyB3aXRoIFJFU1RBUlQgYmVoYXZpb3VyLiBXaXRoIHRoaXMgbWV0aG9kIGl0IGlzIHBvc3NpYmxlIHRvIGFkZCBhcHBsaWNhdGlvblxuICAgKiBzcGVjaWZpYyBsb2dpYyB0byB0aGUgc2Vzc2lvbiByZXN0YXJ0IG1lY2hhbmlzbS5cbiAgICogRS5nLjogbmF2aWdhdGUgdG8gdGhlIGxvZ2luIHBhZ2Ugd2hlbiB0aGUgc2Vzc2lvbiBjYW4gbm90IGJlIHJlZnJlc2hlZC5cbiAgICpcbiAgICogQnkgZGVmYXVsdCB3aGVuIHRoZSBzZXNzaW9uIGNhbiBub3QgYmUgcmVmcmVzaGVkLCB0aGUgc21hcnQtc2Vzc2lvbi5zZXJ2aWNlIGNsZWFycyBhbmQgc3RhcnRzIGEgbmV3IHNlc3Npb24uXG4gICAqIEJ5IHRocm93aW5nIGFuIGV4Y2VwdGlvbiBpbiB0aGlzIG1ldGhvZCBpdCBpcyBwb3NzaWJsZSB0byBhdm9pZCB0aGlzIGRlZmF1bHQgZnVuY3Rpb25hbGl0eSxcbiAgICogYW5kIGhhbmRsZSB0aGUgc2Vzc2lvbiByZWNyZWF0aW9uIGNvbXBsZXRlbHkgaGVyZSBpbiB0aGUgYXBwbGljYXRpb24gbGV2ZWwuXG4gICAqIEBwYXJhbSBzZXNzaW9uRXJyb3IgdGhlIFNlc3Npb25FcnJvciB3aXRoIFJFU1RBUlQgYmVoYXZpb3VyIGNhY2hlZCBpbiB0aGUgaHR0cCBpbnRlcmNlcHRvclxuICAgKi9cbiAgaGFuZGxlU2Vzc2lvbkVycm9yKHNlc3Npb25FcnJvcjogU2Vzc2lvbkVycm9yKTogUHJvbWlzZTx2b2lkPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZXNzaW9uRXJyb3Ige1xuICBjb2RlOiBzdHJpbmc7XG4gIGJlaGF2aW91cjogU2Vzc2lvbkVycm9yQmVoYXZpb3VyO1xufVxuXG5leHBvcnQgZW51bSBTZXNzaW9uRXJyb3JCZWhhdmlvdXIge1xuICBSRUZSRVNILFxuICBSRVNUQVJULFxuICBSRVNUQVJUX1ZJRVdDT05URVhULFxufVxuIl19
|
|
@@ -55,4 +55,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
|
|
|
55
55
|
],
|
|
56
56
|
}]
|
|
57
57
|
}] });
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtc2Vzc2lvbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zZXNzaW9uL3NtYXJ0LXNlc3Npb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBRTNFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDOztBQXVCekYsTUFBTSxPQUFPLGtCQUFrQjsrR0FBbEIsa0JBQWtCO2dIQUFsQixrQkFBa0IsaUJBcEJkLDBCQUEwQixhQUMvQixhQUFhLEVBQUUsZUFBZSxFQUFFLGtCQUFrQixFQUFFLGVBQWUsRUFBRSxlQUFlLGFBQ3BGLDBCQUEwQjtnSEFrQnpCLGtCQUFrQixhQWhCbEI7WUFDVCxrQkFBa0I7WUFDbEIsbUJBQW1CO1lBQ25CLGlCQUFpQjtZQUNqQjtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixRQUFRLEVBQUUsNkJBQTZCO2dCQUN2QyxLQUFLLEVBQUUsSUFBSTthQUNaO1lBQ0Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsUUFBUSxFQUFFLGdDQUFnQztnQkFDMUMsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGLFlBakJTLGFBQWEsRUFBRSxlQUFlLEVBQUUsa0JBQWtCLEVBQUUsZUFBZSxFQUFFLGVBQWU7OzRGQW1CbkYsa0JBQWtCO2tCQXJCOUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztvQkFDMUMsT0FBTyxFQUFFLENBQUMsYUFBYSxFQUFFLGVBQWUsRUFBRSxrQkFBa0IsRUFBRSxlQUFlLEVBQUUsZUFBZSxDQUFDO29CQUMvRixPQUFPLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztvQkFDckMsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7b0JBQ2pDLFNBQVMsRUFBRTt3QkFDVCxrQkFBa0I7d0JBQ2xCLG1CQUFtQjt3QkFDbkIsaUJBQWlCO3dCQUNqQjs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixRQUFRLEVBQUUsNkJBQTZCOzRCQUN2QyxLQUFLLEVBQUUsSUFBSTt5QkFDWjt3QkFDRDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixRQUFRLEVBQUUsZ0NBQWdDOzRCQUMxQyxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEhUVFBfSU5URVJDRVBUT1JTIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSwgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IE1hdEV4cGFuc2lvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2V4cGFuc2lvbic7XG5pbXBvcnQgeyBCcm93c2VyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBTbWFydGRpYWxvZ01vZHVsZSB9IGZyb20gJy4uL3NtYXJ0LWRpYWxvZy9wcm9qZWN0cyc7XG5pbXBvcnQgeyBTbWFydEljb25Nb2R1bGUgfSBmcm9tICcuLi9zbWFydC1pY29uL3Byb2plY3RzJztcbmltcG9ydCB7IFNtYXJ0Q29va2llU2VydmljZSB9IGZyb20gJy4vY29va2llLXNlcnZpY2Uvc21hcnQtY29va2llLnNlcnZpY2UnO1xuXG5pbXBvcnQgeyBTbWFydEVycm9yQ2F0Y2hpbmdJbnRlcmNlcHRvciB9IGZyb20gJy4vc21hcnQtZXJyb3ItY2F0Y2hpbmcuaW50ZXJjZXB0b3InO1xuaW1wb3J0IHsgU21hcnRIZWFkZXJNYWludGFpbmVySW50ZXJjZXB0b3IgfSBmcm9tICcuL3NtYXJ0LWhlYWRlci1tYWludGFpbmVyLmludGVyY2VwdG9yJztcbmltcG9ydCB7IFNtYXJ0U2Vzc2lvblNlcnZpY2UgfSBmcm9tICcuL3NtYXJ0LXNlc3Npb24uc2VydmljZSc7XG5pbXBvcnQgeyBTbWFydFNlc3Npb25UaW1lckNvbXBvbmVudCB9IGZyb20gJy4vc21hcnQtdGltZXIvc21hcnQtc2Vzc2lvbi10aW1lci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtTbWFydFNlc3Npb25UaW1lckNvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtCcm93c2VyTW9kdWxlLCBNYXRDb21tb25Nb2R1bGUsIE1hdEV4cGFuc2lvbk1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlLCBTbWFydEljb25Nb2R1bGVdLFxuICBleHBvcnRzOiBbU21hcnRTZXNzaW9uVGltZXJDb21wb25lbnRdLFxuICBzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV0sXG4gIHByb3ZpZGVyczogW1xuICAgIFNtYXJ0Q29va2llU2VydmljZSxcbiAgICBTbWFydFNlc3Npb25TZXJ2aWNlLFxuICAgIFNtYXJ0ZGlhbG9nTW9kdWxlLFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEhUVFBfSU5URVJDRVBUT1JTLFxuICAgICAgdXNlQ2xhc3M6IFNtYXJ0RXJyb3JDYXRjaGluZ0ludGVyY2VwdG9yLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBIVFRQX0lOVEVSQ0VQVE9SUyxcbiAgICAgIHVzZUNsYXNzOiBTbWFydEhlYWRlck1haW50YWluZXJJbnRlcmNlcHRvcixcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFNtYXJ0U2Vzc2lvbk1vZHVsZSB7fVxuIl19
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { HttpErrorResponse } from '@angular/common/http';
|
|
2
2
|
import { Injectable } from '@angular/core';
|
|
3
3
|
import { lastValueFrom, Subject } from 'rxjs';
|
|
4
|
+
import { SessionErrorBehaviour, } from './smart-session-handler.service';
|
|
4
5
|
import { SmartSubject } from '../smart-subject/projects';
|
|
5
6
|
import * as i0 from "@angular/core";
|
|
6
7
|
import * as i1 from "./api";
|
|
@@ -183,31 +184,60 @@ export class SmartSessionService {
|
|
|
183
184
|
}
|
|
184
185
|
async doRefreshSession() {
|
|
185
186
|
try {
|
|
186
|
-
|
|
187
|
+
const refreshToken = localStorage.getItem('refreshToken');
|
|
187
188
|
if (!refreshToken) {
|
|
188
|
-
|
|
189
|
+
// No refresh token at all: there is no HTTP refresh round-trip that the
|
|
190
|
+
// interceptor could classify as an error, so run the session-restart
|
|
191
|
+
// handling here instead of silently starting a new session.
|
|
192
|
+
return await this.failRefresh();
|
|
189
193
|
}
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
}
|
|
196
|
-
}
|
|
197
|
-
catch (error) {
|
|
198
|
-
if (this.isInvalidRefreshTokenError(error)) {
|
|
199
|
-
await this.clearAndStartNewSession();
|
|
200
|
-
// still throw the error, so the error can be handled in the caller
|
|
201
|
-
}
|
|
202
|
-
throw error;
|
|
194
|
+
const sessionInfo = await lastValueFrom(this.apiService.refreshSession({ refreshToken }));
|
|
195
|
+
if (!sessionInfo) {
|
|
196
|
+
// The refresh round-trip completed (HTTP 200) but yielded no session, so
|
|
197
|
+
// the interceptor never saw an error response — handle it here as well.
|
|
198
|
+
return await this.failRefresh();
|
|
203
199
|
}
|
|
204
|
-
|
|
205
|
-
|
|
200
|
+
this.updateSessionInfo(sessionInfo);
|
|
201
|
+
return sessionInfo;
|
|
202
|
+
// If the refresh call itself FAILS with a session error, the
|
|
203
|
+
// SmartErrorCatchingInterceptor already runs handleSessionError for that
|
|
204
|
+
// (nested) HTTP error response. We let that error propagate unchanged and
|
|
205
|
+
// must NOT handle it again here — that would invoke handleSessionError twice.
|
|
206
206
|
}
|
|
207
207
|
finally {
|
|
208
208
|
this.runningRefresh = undefined;
|
|
209
209
|
}
|
|
210
210
|
}
|
|
211
|
+
/**
|
|
212
|
+
* Runs the standard session-restart handling for a refresh that finished
|
|
213
|
+
* without an error HTTP response (no refresh token, or an empty refresh
|
|
214
|
+
* result), then throws a failure shaped like the backend's rejected refresh.
|
|
215
|
+
*
|
|
216
|
+
* Only the paths that do NOT produce an error HTTP response come here: a
|
|
217
|
+
* refresh call that fails with a session error is already handled by the
|
|
218
|
+
* SmartErrorCatchingInterceptor, so routing it through here too would invoke
|
|
219
|
+
* handleSessionError a second time.
|
|
220
|
+
*/
|
|
221
|
+
async failRefresh() {
|
|
222
|
+
await this.handleSessionError({
|
|
223
|
+
code: 'session.refreshtoken.invalid',
|
|
224
|
+
behaviour: SessionErrorBehaviour.RESTART,
|
|
225
|
+
});
|
|
226
|
+
throw this.createRefreshFailedError();
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Builds a failure shaped exactly like the backend's rejected-refresh
|
|
230
|
+
* response (HTTP 400 + ApiError.code === 'session.refreshtoken.invalid'), so a
|
|
231
|
+
* failed/impossible refresh surfaces like any other invalid refresh token
|
|
232
|
+
* instead of producing a fresh session as a refresh side effect.
|
|
233
|
+
*/
|
|
234
|
+
createRefreshFailedError() {
|
|
235
|
+
const error = {
|
|
236
|
+
code: 'session.refreshtoken.invalid',
|
|
237
|
+
message: 'Unable to refresh session',
|
|
238
|
+
};
|
|
239
|
+
return new HttpErrorResponse({ status: 400, error });
|
|
240
|
+
}
|
|
211
241
|
updateSessionInfo(sessionInfo) {
|
|
212
242
|
this.sessionInfoData = sessionInfo;
|
|
213
243
|
this.token = sessionInfo.sid;
|
|
@@ -221,11 +251,6 @@ export class SmartSessionService {
|
|
|
221
251
|
this.setUpTokenForSessionService();
|
|
222
252
|
this.setAuthenticationStatus();
|
|
223
253
|
}
|
|
224
|
-
isInvalidRefreshTokenError(error) {
|
|
225
|
-
return (error instanceof HttpErrorResponse &&
|
|
226
|
-
error.error &&
|
|
227
|
-
error.error.code === 'session.refreshtoken.invalid');
|
|
228
|
-
}
|
|
229
254
|
async getAuthenticationProviders() {
|
|
230
255
|
let providers = await this.apiService
|
|
231
256
|
.getAuthenticationProviders()
|
|
@@ -281,4 +306,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
|
|
|
281
306
|
providedIn: 'root',
|
|
282
307
|
}]
|
|
283
308
|
}], ctorParameters: () => [{ type: i1.SessionService }, { type: i2.SmartCookieService }] });
|
|
284
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtc2Vzc2lvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvc2Vzc2lvbi9zbWFydC1zZXNzaW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQVU5QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7Ozs7QUFTekQsTUFBTSxPQUFPLG1CQUFtQjtJQU05QixJQUFXLGVBQWU7UUFDeEIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDL0IsQ0FBQztJQUNELElBQVksZUFBZSxDQUFDLGVBQTRDO1FBQ3RFLElBQUksZUFBZSxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsVUFBVSxLQUFLLGVBQWUsRUFBRSxVQUFVLENBQUM7UUFFdkYsSUFBSSxDQUFDLGdCQUFnQixHQUFHLGVBQWUsQ0FBQztRQUV4QyxJQUFJLGVBQWUsRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyQyxDQUFDO0lBQ0gsQ0FBQztJQW9CRCxZQUNVLFVBQTBCLEVBQzFCLGFBQWlDO1FBRGpDLGVBQVUsR0FBVixVQUFVLENBQWdCO1FBQzFCLGtCQUFhLEdBQWIsYUFBYSxDQUFvQjtRQW5DbkMsY0FBUyxHQUFrQixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBaUIxQyxvQkFBZSxHQUFZLEtBQUssQ0FBQztRQUVqQywrQkFBMEIsR0FBcUIsSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRWhGLGlCQUFZLEdBQXVCLElB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QVMsRUFBRSxDQUFDO1FBQzNFLElBQUksSUFBSSxDQUFDLGVBQWUsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3hELFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDL0UsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM1QixDQUFDO0lBQ0gsQ0FBQzsrR0FoVVUsbUJBQW1CO21IQUFuQixtQkFBbUIsY0FGbEIsTUFBTTs7NEZBRVAsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgbGFzdFZhbHVlRnJvbSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge1xyXG4gIEFwaUVycm9yLFxyXG4gIEF1dGhlbnRpY2F0aW9uUHJvdmlkZXJEYXRhLFxyXG4gIEdldEF1dGhlbnRpY2F0aW9uUHJvdmlkZXJzUmVzcG9uc2UsXHJcbiAgU2Vzc2lvbkluZm9EYXRhLFxyXG4gIFNlc3Npb25TZXJ2aWNlLFxyXG59IGZyb20gJy4vYXBpJztcclxuaW1wb3J0IHsgU21hcnRDb29raWVTZXJ2aWNlIH0gZnJvbSAnLi9jb29raWUtc2VydmljZS9zbWFydC1jb29raWUuc2VydmljZSc7XHJcbmltcG9ydCB7IFNlc3Npb25FcnJvciwgU21hcnRTZXNzaW9uSGFuZGxlclNlcnZpY2UgfSBmcm9tICcuL3NtYXJ0LXNlc3Npb24taGFuZGxlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU21hcnRTdWJqZWN0IH0gZnJvbSAnLi4vc21hcnQtc3ViamVjdC9wcm9qZWN0cyc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEhlYWRlclBhcmFtIHtcclxuICBoZWFkZXJOYW1lOiBzdHJpbmc7XHJcbiAgdmFsdWU6IHN0cmluZztcclxufVxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU21hcnRTZXNzaW9uU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XHJcbiAgcHJpdmF0ZSBiYXNlUGF0aD86IHN0cmluZztcclxuICBwcml2YXRlIHRva2VuPzogc3RyaW5nO1xyXG4gIHByaXZhdGUgX3Nlc3Npb25JbmZvRGF0YT86IFNlc3Npb25JbmZvRGF0YTtcclxuICBwcml2YXRlIF9kZXN0cm95JDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0KCk7XHJcblxyXG4gIHB1YmxpYyBnZXQgc2Vzc2lvbkluZm9EYXRhKCk6IFNlc3Npb25JbmZvRGF0YSB8IHVuZGVmaW5lZCB7XHJcbiAgICByZXR1cm4gdGhpcy5fc2Vzc2lvbkluZm9EYXRhO1xyXG4gIH1cclxuICBwcml2YXRlIHNldCBzZXNzaW9uSW5mb0RhdGEoc2Vzc2lvbkluZm9EYXRhOiBTZXNzaW9uSW5mb0RhdGEgfCB1bmRlZmluZWQpIHtcclxuICAgIGxldCBleHBpcmFjeUNoYW5nZWQgPSB0aGlzLnNlc3Npb25JbmZvRGF0YT8uZXhwaXJhdGlvbiAhPT0gc2Vzc2lvbkluZm9EYXRhPy5leHBpcmF0aW9uO1xyXG5cclxuICAgIHRoaXMuX3Nlc3Npb25JbmZvRGF0YSA9IHNlc3Npb25JbmZvRGF0YTtcclxuXHJcbiAgICBpZiAoZXhwaXJhY3lDaGFuZ2VkKSB7XHJcbiAgICAgIHRoaXMuc2Vzc2lvbkV4cGlyYWN5Q2hhbmdlZC5uZXh0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHByb3ZpZGVycz86IEFycmF5PEF1dGhlbnRpY2F0aW9uUHJvdmlkZXJEYXRhPjtcclxuICBwcml2YXRlIGNvb2tpZU5hbWU/OiBzdHJpbmc7XHJcbiAgcHVibGljIGlzQXV0aGVudGljYXRlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBwdWJsaWMgYXV0aGVudGljYXRpb25TdGF0ZUNoYW5nZWQ6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU21hcnRTdWJqZWN0KHRoaXMuX2Rlc3Ryb3kkKTtcclxuXHJcbiAgcHVibGljIGhlYWRlclBhcmFtczogQXJyYXk8SGVhZGVyUGFyYW0+ID0gbmV3IEFycmF5KCk7XHJcblxyXG4gIC8vIExvY2FsZVxyXG4gIHByaXZhdGUgbG9jYWxTdG9yYWdlTG9jYWxlTmFtZTogc3RyaW5nID0gJ2xvY2FsZSc7XHJcbiAgcHVibGljIGxvY2FsZUNoYW5nZWQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU21hcnRTdWJqZWN0KHRoaXMuX2Rlc3Ryb3kkKTtcclxuICBwcml2YXRlIGluaXRpYWxpemVSdW5uaW5nOiBTdWJqZWN0PHZvaWQ+IHwgdW5kZWZpbmVkO1xyXG4gIHByaXZhdGUgcnVubmluZ1JlZnJlc2g/OiBQcm9taXNlPFNlc3Npb25JbmZvRGF0YT47XHJcblxyXG4gIHB1YmxpYyBzZXNzaW9uRXhwaXJhY3lDaGFuZ2VkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFNtYXJ0U3ViamVjdCh0aGlzLl9kZXN0cm95JCk7XHJcblxyXG4gIHByaXZhdGUgc2Vzc2lvbkhhbmRsZXJTZXJ2aWNlPzogU21hcnRTZXNzaW9uSGFuZGxlclNlcnZpY2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBhcGlTZXJ2aWNlOiBTZXNzaW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgY29va2llU2VydmljZTogU21hcnRDb29raWVTZXJ2aWNlXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX2Rlc3Ryb3kkLm5leHQoKTtcclxuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0U2Vzc2lvbkhhbmRsZXJTZXJ2aWNlKHNtYXJ0U2Vzc2lvbkhhbmRsZXJTZXJ2aWNlOiBTbWFydFNlc3Npb25IYW5kbGVyU2VydmljZSk6IHZvaWQge1xyXG4gICAgdGhpcy5zZXNzaW9uSGFuZGxlclNlcnZpY2UgPSBzbWFydFNlc3Npb25IYW5kbGVyU2VydmljZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBoYW5kbGVTZXNzaW9uRXJyb3Ioc2Vzc2lvbkVycm9yOiBTZXNzaW9uRXJyb3IpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmICh0aGlzLnNlc3Npb25IYW5kbGVyU2VydmljZSkge1xyXG4gICAgICByZXR1cm4gYXdhaXQgdGhpcy5zZXNzaW9uSGFuZGxlclNlcnZpY2UuaGFuZGxlU2Vzc2lvbkVycm9yKHNlc3Npb25FcnJvcik7XHJcbiAgICB9XHJcbiAgICB0aHJvdyBuZXcgRXJyb3IoYHNlc3Npb25IYW5kbGVyU2VydmljZSB3YXMgbm90IGluaXRpYWxpemVkLiBFcnJvcjogJHtzZXNzaW9uRXJyb3IuY29kZX1gKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhZGRIZWFkZXJQYXJhbShoZWFkZXJQYXJhbTogSGVhZGVyUGFyYW0pOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmhlYWRlclBhcmFtcy5maW5kKChoOiBIZWFkZXJQYXJhbSkgPT4gaC5oZWFkZXJOYW1lID09PSBoZWFkZXJQYXJhbS5oZWFkZXJOYW1lKSkge1xyXG4gICAgICBsZXQgaW5kZXggPSB0aGlzLmhlYWRlclBhcmFtcy5maW5kSW5kZXgoXHJcbiAgICAgICAgKGg6IEhlYWRlclBhcmFtKSA9PiBoLmhlYWRlck5hbWUgPT09IGhlYWRlclBhcmFtLmhlYWRlck5hbWVcclxuICAgICAgKTtcclxuICAgICAgdGhpcy5oZWFkZXJQYXJhbXNbaW5kZXghXS52YWx1ZSA9IGhlYWRlclBhcmFtLnZhbHVlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5oZWFkZXJQYXJhbXMucHVzaChoZWFkZXJQYXJhbSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldFVwVG9rZW5Gb3JTZXNzaW9uU2VydmljZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuYWRkSGVhZGVyUGFyYW0oe1xyXG4gICAgICBoZWFkZXJOYW1lOiAnQXV0aG9yaXphdGlvbicsXHJcbiAgICAgIHZhbHVlOiBgQmVhcmVyICR7dGhpcy50b2tlbiF9YCxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSHlkcmF0ZXMgdGhlIHNlc3Npb24gd2l0aCBhbiBleHRlcm5hbGx5IG9idGFpbmVkIFNJRCwgYnlwYXNzaW5nXHJcbiAgICogYGluaXRpYWxpemUoKWAncyBiYWNrZW5kIHJvdW5kLXRyaXAuIFVzZWQgYnkgdGhlXHJcbiAgICogYFNtYXJ0QmFja2VuZEJvb3RzdHJhcFNlcnZpY2UuYm9vdHN0cmFwV2l0aCgpYCBmbG93IHdoZW4gYSBob3N0XHJcbiAgICogKGUuZy4gbmF0aXZlIG1vYmlsZSBzaGVsbCkgaGFuZHMgb3ZlciBhbiBhbHJlYWR5LWF1dGhlbnRpY2F0ZWQgc2Vzc2lvbi5cclxuICAgKlxyXG4gICAqIFBlcnNpc3RzIHRoZSBTSUQgdG8gbG9jYWxTdG9yYWdlICsgY29va2llIHNvIHRoYXQgYSBwYWdlIHJlbG9hZCBjYW5cclxuICAgKiByZWh5ZHJhdGUgdGhlIHNlc3Npb24gdGhyb3VnaCBgaW5pdGlhbGl6ZSgpYCdzIHJlZ3VsYXJcclxuICAgKiBgdG9rZW5Gcm9tTG9jYWxTdG9yYWdlID09PSB0b2tlbkZyb21Db29raWVzYCBwYXRoLiBUaGUgb3B0aW9uYWxcclxuICAgKiByZWZyZXNoVG9rZW4gaXMgcGVyc2lzdGVkIHRvIGVuYWJsZSBhdXRvbm9tb3VzIHJlZnJlc2ggdmlhXHJcbiAgICogYHJlZnJlc2hTZXNzaW9uKClgIHdoZW4gdGhlIFNJRCBleHBpcmVzLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZXRTZXNzaW9uVG9rZW4odG9rZW46IHN0cmluZywgcmVmcmVzaFRva2VuPzogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLnRva2VuID0gdG9rZW47XHJcbiAgICB0aGlzLnNldFVwVG9rZW5Gb3JTZXNzaW9uU2VydmljZSgpO1xyXG4gICAgaWYgKHRoaXMuY29va2llTmFtZSkge1xyXG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgndG9rZW4nLCB0b2tlbik7XHJcbiAgICAgIHRoaXMuY29va2llU2VydmljZS5zZXQodGhpcy5jb29raWVOYW1lLCB0b2tlbik7XHJcbiAgICAgIGlmIChyZWZyZXNoVG9rZW4pIHtcclxuICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgncmVmcmVzaFRva2VuJywgcmVmcmVzaFRva2VuKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldFVybCh1cmw6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy5iYXNlUGF0aCA9IHVybDtcclxuICB9XHJcbiAgcHVibGljIGdldEJhc2VQYXRoKCk6IHN0cmluZyB7XHJcbiAgICBpZiAoIXRoaXMuYmFzZVBhdGgpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdCYXNlUGF0aCBoYXMgbm90IGJlZW4gc2V0IGluIFNtYXJ0U2Vzc2lvblNlcnZpY2UhJyk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5iYXNlUGF0aDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXRDb29raWVOYW1lKG5hbWU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy5jb29raWVOYW1lID0gbmFtZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2F2ZVRva2VuVG9Mb2NhbFN0b3JhZ2UoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5zZXNzaW9uSW5mb0RhdGEgJiYgdGhpcy5jb29raWVOYW1lKSB7XHJcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCd0b2tlbicsIHRoaXMuc2Vzc2lvbkluZm9EYXRhLnNpZCk7XHJcbiAgICAgIGlmIChcclxuICAgICAgICB0aGlzLnNlc3Npb25JbmZvRGF0YS5yZWZyZXNoVG9rZW4gJiZcclxuICAgICAgICB0aGlzLnNlc3Npb25JbmZvRGF0YS5yZWZyZXNoVG9rZW4gIT09IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdyZWZyZXNoVG9rZW4nKVxyXG4gICAgICApIHtcclxuICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgncmVmcmVzaFRva2VuJywgdGhpcy5zZXNzaW9uSW5mb0RhdGEucmVmcmVzaFRva2VuKTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmNvb2tpZVNlcnZpY2Uuc2V0KHRoaXMuY29va2llTmFtZSwgdGhpcy50b2tlbiEpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRBdXRoZW50aWNhdGlvblN0YXR1cygpOiB2b2lkIHtcclxuICAgIGNvbnN0IHByZXZpb3VzID0gdGhpcy5pc0F1dGhlbnRpY2F0ZWQ7XHJcbiAgICBpZiAodGhpcy5zZXNzaW9uSW5mb0RhdGEgJiYgdGhpcy5zZXNzaW9uSW5mb0RhdGEuYXV0aGVudGljYXRpb25zKSB7XHJcbiAgICAgIHRoaXMuaXNBdXRoZW50aWNhdGVkID0gdGhpcy5zZXNzaW9uSW5mb0RhdGEuYXV0aGVudGljYXRpb25zLmxlbmd0aCA+IDA7XHJcbiAgICB9XHJcbiAgICAvLyBFbWl0IG9ubHkgb24gYWN0dWFsIHRyYW5zaXRpb25zLiBSZS1lbWl0dGluZyBvbiBldmVyeSBzZXNzaW9uIHJlZnJlc2hcclxuICAgIC8vIHdvdWxkIGZhbiBvdXQgaW50byBkdXBsaWNhdGVkIGhvc3Qgd29yayAoZS5nLiBsb2dvdXQvbG9naW4gbmF2aWdhdGlvblxyXG4gICAgLy8gc3Vic2NyaWJlcnMgcmUtZmlyaW5nIHRoZWlyIGZsb3cgZWFjaCB0aW1lIGEgc3RhcnRTZXNzaW9uKCkgcmV0dXJucykuXHJcbiAgICBpZiAocHJldmlvdXMgIT09IHRoaXMuaXNBdXRoZW50aWNhdGVkKSB7XHJcbiAgICAgIHRoaXMuYXV0aGVudGljYXRpb25TdGF0ZUNoYW5nZWQubmV4dCh0aGlzLmlzQXV0aGVudGljYXRlZCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNoZWNrU3RhdGVtZW50cygpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5iYXNlUGF0aCkge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSB1cmwgb2YgdGhlIGJhY2tlbmQgYXBpIGhhcyBub3QgYmVlbiBzZXQhJyk7XHJcbiAgICB9IGVsc2UgaWYgKCF0aGlzLmNvb2tpZU5hbWUpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgbmFtZSBvZiB0aGUgY29va2llIHJlcXVpcmVkIGJ5IHRoZSBiYWNrZW5kIGhhcyBub3QgYmVlbiBzZXQhJyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgaW5pdGlhbGl6ZSgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmICh0aGlzLmluaXRpYWxpemVSdW5uaW5nKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVSdW5uaW5nLnRvUHJvbWlzZSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5pbml0aWFsaXplUnVubmluZyA9IG5ldyBTbWFydFN1YmplY3QodGhpcy5fZGVzdHJveSQpO1xyXG4gICAgICB0cnkge1xyXG4gICAgICAgIHRoaXMuY2hlY2tTdGF0ZW1lbnRzKCk7XHJcblxyXG4gICAgICAgIGxldCB0b2tlbkZyb21Mb2NhbFN0b3JhZ2UgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgndG9rZW4nKTtcclxuICAgICAgICBsZXQgdG9rZW5Gcm9tQ29va2llcyA9IHRoaXMuY29va2llU2VydmljZS5nZXQodGhpcy5jb29raWVOYW1lISk7XHJcblxyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgIHRva2VuRnJvbUxvY2FsU3RvcmFnZSAmJlxyXG4gICAgICAgICAgdG9rZW5Gcm9tQ29va2llcyAmJlxyXG4gICAgICAgICAgdG9rZW5Gcm9tTG9jYWxTdG9yYWdlID09PSB0b2tlbkZyb21Db29raWVzXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICB0aGlzLnRva2VuID0gdG9rZW5Gcm9tTG9jYWxTdG9yYWdlO1xyXG4gICAgICAgICAgdGhpcy5zZXRVcFRva2VuRm9yU2Vzc2lvblNlcnZpY2UoKTtcclxuICAgICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuZ2V0U2Vzc2lvbigpO1xyXG4gICAgICAgICAgfSBjYXRjaCAoZXJyKSB7XHJcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuc3RhcnRTZXNzaW9uKCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGF3YWl0IHRoaXMuY2xlYXJBbmRTdGFydE5ld1Nlc3Npb24oKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHRoaXMuc2Vzc2lvbkluZm9EYXRhICYmIHRoaXMuc2Vzc2lvbkluZm9EYXRhLmxvY2FsZSkge1xyXG4gICAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5sb2NhbFN0b3JhZ2VMb2NhbGVOYW1lLCB0aGlzLnNlc3Npb25JbmZvRGF0YS5sb2NhbGUpO1xyXG4gICAgICAgICAgdGhpcy5sb2NhbGVDaGFuZ2VkLm5leHQoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZmluYWxseSB7XHJcbiAgICAgICAgdGhpcy5pbml0aWFsaXplUnVubmluZy5jb21wbGV0ZSgpO1xyXG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZVJ1bm5pbmcgPSB1bmRlZmluZWQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgc3RhcnRTZXNzaW9uKCk6IFByb21pc2U8U2Vzc2lvbkluZm9EYXRhPiB7XHJcbiAgICBsZXQgc2Vzc2lvbkluZm8gPSBhd2FpdCB0aGlzLmFwaVNlcnZpY2Uuc3RhcnRTZXNzaW9uKCkudG9Qcm9taXNlKCk7XHJcbiAgICBpZiAoc2Vzc2lvbkluZm8pIHtcclxuICAgICAgdGhpcy51cGRhdGVTZXNzaW9uSW5mbyhzZXNzaW9uSW5mbyk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuc2Vzc2lvbkluZm9EYXRhITtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRTZXNzaW9uKCk6IFByb21pc2U8U2Vzc2lvbkluZm9EYXRhPiB7XHJcbiAgICBsZXQgc2Vzc2lvbkluZm8gPSBhd2FpdCB0aGlzLmFwaVNlcnZpY2UuZ2V0U2Vzc2lvbigpLnRvUHJvbWlzZSgpO1xyXG4gICAgaWYgKHNlc3Npb25JbmZvKSB7XHJcbiAgICAgIHRoaXMuc2Vzc2lvbkluZm9EYXRhID0gc2Vzc2lvbkluZm87XHJcbiAgICAgIHRoaXMudG9rZW4gPSBzZXNzaW9uSW5mby5zaWQ7XHJcbiAgICAgIHRoaXMuc2F2ZVRva2VuVG9Mb2NhbFN0b3JhZ2UoKTtcclxuICAgICAgdGhpcy5zZXRBdXRoZW50aWNhdGlvblN0YXR1cygpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0aGlzLnNlc3Npb25JbmZvRGF0YSE7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVmcmVzaFNlc3Npb24oKTogUHJvbWlzZTxTZXNzaW9uSW5mb0RhdGE+IHtcclxuICAgIGlmICh0aGlzLnJ1bm5pbmdSZWZyZXNoKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLnJ1bm5pbmdSZWZyZXNoO1xyXG4gICAgfVxyXG4gICAgdGhpcy5ydW5uaW5nUmVmcmVzaCA9IHRoaXMuZG9SZWZyZXNoU2Vzc2lvbigpO1xyXG4gICAgcmV0dXJuIHRoaXMucnVubmluZ1JlZnJlc2g7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFzeW5jIGRvUmVmcmVzaFNlc3Npb24oKTogUHJvbWlzZTxTZXNzaW9uSW5mb0RhdGE+IHtcclxuICAgIHRyeSB7XHJcbiAgICAgIGxldCByZWZyZXNoVG9rZW4gPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgncmVmcmVzaFRva2VuJyk7XHJcbiAgICAgIGlmICghcmVmcmVzaFRva2VuKSB7XHJcbiAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuc3RhcnRTZXNzaW9uKCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRyeSB7XHJcbiAgICAgICAgY29uc3Qgc2Vzc2lvbkluZm8gPSBhd2FpdCBsYXN0VmFsdWVGcm9tKHRoaXMuYXBpU2VydmljZS5yZWZyZXNoU2Vzc2lvbih7IHJlZnJlc2hUb2tlbiB9KSk7XHJcbiAgICAgICAgaWYgKHNlc3Npb25JbmZvKSB7XHJcbiAgICAgICAgICB0aGlzLnVwZGF0ZVNlc3Npb25JbmZvKHNlc3Npb25JbmZvKTtcclxuICAgICAgICAgIHJldHVybiBzZXNzaW9uSW5mbztcclxuICAgICAgICB9XHJcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuaXNJbnZhbGlkUmVmcmVzaFRva2VuRXJyb3IoZXJyb3IpKSB7XHJcbiAgICAgICAgICBhd2FpdCB0aGlzLmNsZWFyQW5kU3RhcnROZXdTZXNzaW9uKCk7XHJcbiAgICAgICAgICAvLyBzdGlsbCB0aHJvdyB0aGUgZXJyb3IsIHNvIHRoZSBlcnJvciBjYW4gYmUgaGFuZGxlZCBpbiB0aGUgY2FsbGVyXHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRocm93IGVycm9yO1xyXG4gICAgICB9XHJcbiAgICAgIC8vIG5vIHNlc3Npb25JbmZvIHJldHVybmVkXHJcbiAgICAgIHRocm93IG5ldyBFcnJvcignVW5hYmxlIHRvIHJlZnJlc2ggc2Vzc2lvbicpO1xyXG4gICAgfSBmaW5hbGx5IHtcclxuICAgICAgdGhpcy5ydW5uaW5nUmVmcmVzaCA9IHVuZGVmaW5lZDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlU2Vzc2lvbkluZm8oc2Vzc2lvbkluZm86IFNlc3Npb25JbmZvRGF0YSk6IHZvaWQge1xyXG4gICAgdGhpcy5zZXNzaW9uSW5mb0RhdGEgPSBzZXNzaW9uSW5mbztcclxuICAgIHRoaXMudG9rZW4gPSBzZXNzaW9uSW5mby5zaWQ7XHJcbiAgICB0aGlzLnNhdmVUb2tlblRvTG9jYWxTdG9yYWdlKCk7XHJcbiAgICAvLyBJbnN0YWxsIHRoZSBBdXRob3JpemF0aW9uIGhlYWRlciBCRUZPUkUgbm90aWZ5aW5nIHN1YnNjcmliZXJzLiBTdWJqZWN0XHJcbiAgICAvLyBlbWlzc2lvbiBpcyBzeW5jaHJvbm91cywgYW5kIGhvc3Qgc3Vic2NyaWJlcnMgKGUuZy4gYXV0aC1zdGF0ZSBsaXN0ZW5lcnNcclxuICAgIC8vIHRoYXQgaW1tZWRpYXRlbHkgaW5pdGlhdGUgQkZGIGNhbGxzKSBleGVjdXRlIHRoZWlyIHN5bmMgcHJvbG9ndWUg4oCUXHJcbiAgICAvLyBpbmNsdWRpbmcgWEhSIHNlbmQoKSDigJQgYmVmb3JlIHRoaXMgbWV0aG9kIHJldHVybnMuIEluc3RhbGxpbmcgdGhlIGhlYWRlclxyXG4gICAgLy8gZmlyc3QgZ3VhcmFudGVlcyB0aG9zZSBzeW5jaHJvbm91cyBkb3duc3RyZWFtIHJlcXVlc3RzIGNhcnJ5IHRoZSBuZXdcclxuICAgIC8vIHRva2VuLCBwcmV2ZW50aW5nIGEgJ3Nlc3Npb24uc2VjdXJpdHkubm9jb250ZXh0JyAvIHJlLWF1dGggY2FzY2FkZS5cclxuICAgIHRoaXMuc2V0VXBUb2tlbkZvclNlc3Npb25TZXJ2aWNlKCk7XHJcbiAgICB0aGlzLnNldEF1dGhlbnRpY2F0aW9uU3RhdHVzKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzSW52YWxpZFJlZnJlc2hUb2tlbkVycm9yKGVycm9yOiBhbnkpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAoXHJcbiAgICAgIGVycm9yIGluc3RhbmNlb2YgSHR0cEVycm9yUmVzcG9uc2UgJiZcclxuICAgICAgZXJyb3IuZXJyb3IgJiZcclxuICAgICAgKGVycm9yLmVycm9yIGFzIEFwaUVycm9yKS5jb2RlID09PSAnc2Vzc2lvbi5yZWZyZXNodG9rZW4uaW52YWxpZCdcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZ2V0QXV0aGVudGljYXRpb25Qcm92aWRlcnMoKTogUHJvbWlzZTxBcnJheTxBdXRoZW50aWNhdGlvblByb3ZpZGVyRGF0YT4+IHtcclxuICAgIGxldCBwcm92aWRlcnM6IEdldEF1dGhlbnRpY2F0aW9uUHJvdmlkZXJzUmVzcG9uc2UgfCB1bmRlZmluZWQgPSBhd2FpdCB0aGlzLmFwaVNlcnZpY2VcclxuICAgICAgLmdldEF1dGhlbnRpY2F0aW9uUHJvdmlkZXJzKClcclxuICAgICAgLnRvUHJvbWlzZSgpO1xyXG5cclxuICAgIHRoaXMucHJvdmlkZXJzID0gcHJvdmlkZXJzPy5hdXRoZW50aWNhdGlvblByb3ZpZGVycztcclxuXHJcbiAgICByZXR1cm4gdGhpcy5wcm92aWRlcnMhO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGdldElzQXV0aGVudGljYXRlZCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgIGlmICh0aGlzLnNlc3Npb25JbmZvRGF0YSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5pc0F1dGhlbnRpY2F0ZWQ7XHJcbiAgICB9XHJcbiAgICBhd2FpdCB0aGlzLmdldFNlc3Npb24oKTtcclxuICAgIHJldHVybiB0aGlzLmlzQXV0aGVudGljYXRlZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBpczJGQU5lY2Vzc2FyeSgpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgIGlmICh0aGlzLnNlc3Npb25JbmZvRGF0YSkge1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIHRoaXMuc2Vzc2lvbkluZm9EYXRhLmF1dGhlbnRpY2F0aW9ucz8uc29tZSgoYWNjb3VudEluZm8pID0+IGFjY291bnRJbmZvLnR3b0ZBID09PSB0cnVlKSA/P1xyXG4gICAgICAgIGZhbHNlXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgICBhd2FpdCB0aGlzLmdldFNlc3Npb24oKTtcclxuICAgIHJldHVybiAoXHJcbiAgICAgIHRoaXMuc2Vzc2lvbkluZm9EYXRhIS5hdXRoZW50aWNhdGlvbnM/LnNvbWUoKGFjY291bnRJbmZvKSA9PiBhY2NvdW50SW5mby50d29GQSA9PT0gdHJ1ZSkgPz9cclxuICAgICAgZmFsc2VcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgY2xlYXJBbmRTdGFydE5ld1Nlc3Npb24oKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBzZXNzaW9uU3RvcmFnZS5jbGVhcigpO1xyXG4gICAgbG9jYWxTdG9yYWdlLmNsZWFyKCk7XHJcbiAgICB0aGlzLmhlYWRlclBhcmFtcyA9IFtdO1xyXG4gICAgdGhpcy5jb29raWVTZXJ2aWNlLmRlbGV0ZSh0aGlzLmNvb2tpZU5hbWUhKTtcclxuXHJcbiAgICBhd2FpdCB0aGlzLnN0YXJ0U2Vzc2lvbigpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldExvY2FsZSgpOiBzdHJpbmcge1xyXG4gICAgaWYgKHRoaXMuc2Vzc2lvbkluZm9EYXRhICYmIHRoaXMuc2Vzc2lvbkluZm9EYXRhLmxvY2FsZSkge1xyXG4gICAgICBpZiAobG9jYWxTdG9yYWdlLmdldEl0ZW0odGhpcy5sb2NhbFN0b3JhZ2VMb2NhbGVOYW1lKSAhPT0gdGhpcy5zZXNzaW9uSW5mb0RhdGEubG9jYWxlKSB7XHJcbiAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5sb2NhbFN0b3JhZ2VMb2NhbGVOYW1lLCB0aGlzLnNlc3Npb25JbmZvRGF0YS5sb2NhbGUpO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiB0aGlzLnNlc3Npb25JbmZvRGF0YS5sb2NhbGU7XHJcbiAgICB9XHJcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZXJlIGlzIG5vIFNlc3Npb25JbmZvRGF0YSBvciBsb2NhbGUgaXMgdW5kZWZpbmVkLicpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGNoYW5nZUxvY2FsZShsb2NhbGU6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy5zZXNzaW9uSW5mb0RhdGEgPSBhd2FpdCB0aGlzLmFwaVNlcnZpY2Uuc2V0TG9jYWxlKGxvY2FsZSkudG9Qcm9taXNlKCk7XHJcbiAgICBpZiAodGhpcy5zZXNzaW9uSW5mb0RhdGEgJiYgdGhpcy5zZXNzaW9uSW5mb0RhdGEubG9jYWxlKSB7XHJcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMubG9jYWxTdG9yYWdlTG9jYWxlTmFtZSwgdGhpcy5zZXNzaW9uSW5mb0RhdGEubG9jYWxlKTtcclxuICAgICAgdGhpcy5sb2NhbGVDaGFuZ2VkLm5leHQoKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
|
|
309
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtc2Vzc2lvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvc2Vzc2lvbi9zbWFydC1zZXNzaW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQVM5QyxPQUFPLEVBRUwscUJBQXFCLEdBRXRCLE1BQU0saUNBQWlDLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7O0FBU3pELE1BQU0sT0FBTyxtQkFBbUI7SUFNOUIsSUFBVyxlQUFlO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDO0lBQy9CLENBQUM7SUFDRCxJQUFZLGVBQWUsQ0FBQyxlQUE0QztRQUN0RSxJQUFJLGVBQWUsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLFVBQVUsS0FBSyxlQUFlLEVBQUUsVUFBVSxDQUFDO1FBRXZGLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxlQUFlLENBQUM7UUFFeEMsSUFBSSxlQUFlLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDckMsQ0FBQztJQUNILENBQUM7SUFvQkQsWUFDVSxVQUEwQixFQUMxQixhQUFpQztRQURqQyxlQUFVLEdBQVYsVUFBVSxDQUFnQjtRQUMxQixrQkFBYSxHQUFiLGFBQWEsQ0FBb0I7UUFuQ25DLGNBQVMsR0FBa0IsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQWlCMUMsb0JBQWUsR0FBWSxLQUFLLENBQUM7UUFFakMsK0JBQTBCLEdBQXFCLElBQUksWUFBWSxDQUFD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LGVBQWUsQ0FBQyxNQUFNLENBQUM7UUFDckMsQ0FBQztRQUNELE1BQU0sSUFBSSxLQUFLLENBQUMscURBQXFELENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBRU0sS0FBSyxDQUFDLFlBQVksQ0FBQyxNQUFjO1FBQ3RDLElBQUksQ0FBQyxlQUFlLEdBQUcsTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUMzRSxJQUFJLElBQUksQ0FBQyxlQUFlLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUN4RCxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQy9FLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDNUIsQ0FBQztJQUNILENBQUM7K0dBeFZVLG1CQUFtQjttSEFBbkIsbUJBQW1CLGNBRmxCLE1BQU07OzRGQUVQLG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgbGFzdFZhbHVlRnJvbSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgQXBpRXJyb3IsXG4gIEF1dGhlbnRpY2F0aW9uUHJvdmlkZXJEYXRhLFxuICBHZXRBdXRoZW50aWNhdGlvblByb3ZpZGVyc1Jlc3BvbnNlLFxuICBTZXNzaW9uSW5mb0RhdGEsXG4gIFNlc3Npb25TZXJ2aWNlLFxufSBmcm9tICcuL2FwaSc7XG5pbXBvcnQgeyBTbWFydENvb2tpZVNlcnZpY2UgfSBmcm9tICcuL2Nvb2tpZS1zZXJ2aWNlL3NtYXJ0LWNvb2tpZS5zZXJ2aWNlJztcbmltcG9ydCB7XG4gIFNlc3Npb25FcnJvcixcbiAgU2Vzc2lvbkVycm9yQmVoYXZpb3VyLFxuICBTbWFydFNlc3Npb25IYW5kbGVyU2VydmljZSxcbn0gZnJvbSAnLi9zbWFydC1zZXNzaW9uLWhhbmRsZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTbWFydFN1YmplY3QgfSBmcm9tICcuLi9zbWFydC1zdWJqZWN0L3Byb2plY3RzJztcblxuZXhwb3J0IGludGVyZmFjZSBIZWFkZXJQYXJhbSB7XG4gIGhlYWRlck5hbWU6IHN0cmluZztcbiAgdmFsdWU6IHN0cmluZztcbn1cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTbWFydFNlc3Npb25TZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBiYXNlUGF0aD86IHN0cmluZztcbiAgcHJpdmF0ZSB0b2tlbj86IHN0cmluZztcbiAgcHJpdmF0ZSBfc2Vzc2lvbkluZm9EYXRhPzogU2Vzc2lvbkluZm9EYXRhO1xuICBwcml2YXRlIF9kZXN0cm95JDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgcHVibGljIGdldCBzZXNzaW9uSW5mb0RhdGEoKTogU2Vzc2lvbkluZm9EYXRhIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5fc2Vzc2lvbkluZm9EYXRhO1xuICB9XG4gIHByaXZhdGUgc2V0IHNlc3Npb25JbmZvRGF0YShzZXNzaW9uSW5mb0RhdGE6IFNlc3Npb25JbmZvRGF0YSB8IHVuZGVmaW5lZCkge1xuICAgIGxldCBleHBpcmFjeUNoYW5nZWQgPSB0aGlzLnNlc3Npb25JbmZvRGF0YT8uZXhwaXJhdGlvbiAhPT0gc2Vzc2lvbkluZm9EYXRhPy5leHBpcmF0aW9uO1xuXG4gICAgdGhpcy5fc2Vzc2lvbkluZm9EYXRhID0gc2Vzc2lvbkluZm9EYXRhO1xuXG4gICAgaWYgKGV4cGlyYWN5Q2hhbmdlZCkge1xuICAgICAgdGhpcy5zZXNzaW9uRXhwaXJhY3lDaGFuZ2VkLm5leHQoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHByb3ZpZGVycz86IEFycmF5PEF1dGhlbnRpY2F0aW9uUHJvdmlkZXJEYXRhPjtcbiAgcHJpdmF0ZSBjb29raWVOYW1lPzogc3RyaW5nO1xuICBwdWJsaWMgaXNBdXRoZW50aWNhdGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHVibGljIGF1dGhlbnRpY2F0aW9uU3RhdGVDaGFuZ2VkOiBTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IFNtYXJ0U3ViamVjdCh0aGlzLl9kZXN0cm95JCk7XG5cbiAgcHVibGljIGhlYWRlclBhcmFtczogQXJyYXk8SGVhZGVyUGFyYW0+ID0gbmV3IEFycmF5KCk7XG5cbiAgLy8gTG9jYWxlXG4gIHByaXZhdGUgbG9jYWxTdG9yYWdlTG9jYWxlTmFtZTogc3RyaW5nID0gJ2xvY2FsZSc7XG4gIHB1YmxpYyBsb2NhbGVDaGFuZ2VkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFNtYXJ0U3ViamVjdCh0aGlzLl9kZXN0cm95JCk7XG4gIHByaXZhdGUgaW5pdGlhbGl6ZVJ1bm5pbmc6IFN1YmplY3Q8dm9pZD4gfCB1bmRlZmluZWQ7XG4gIHByaXZhdGUgcnVubmluZ1JlZnJlc2g/OiBQcm9taXNlPFNlc3Npb25JbmZvRGF0YT47XG5cbiAgcHVibGljIHNlc3Npb25FeHBpcmFjeUNoYW5nZWQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU21hcnRTdWJqZWN0KHRoaXMuX2Rlc3Ryb3kkKTtcblxuICBwcml2YXRlIHNlc3Npb25IYW5kbGVyU2VydmljZT86IFNtYXJ0U2Vzc2lvbkhhbmRsZXJTZXJ2aWNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYXBpU2VydmljZTogU2Vzc2lvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb29raWVTZXJ2aWNlOiBTbWFydENvb2tpZVNlcnZpY2VcbiAgKSB7fVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2Rlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLl9kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHVibGljIHNldFNlc3Npb25IYW5kbGVyU2VydmljZShzbWFydFNlc3Npb25IYW5kbGVyU2VydmljZTogU21hcnRTZXNzaW9uSGFuZGxlclNlcnZpY2UpOiB2b2lkIHtcbiAgICB0aGlzLnNlc3Npb25IYW5kbGVyU2VydmljZSA9IHNtYXJ0U2Vzc2lvbkhhbmRsZXJTZXJ2aWNlO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGhhbmRsZVNlc3Npb25FcnJvcihzZXNzaW9uRXJyb3I6IFNlc3Npb25FcnJvcik6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICh0aGlzLnNlc3Npb25IYW5kbGVyU2VydmljZSkge1xuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuc2Vzc2lvbkhhbmRsZXJTZXJ2aWNlLmhhbmRsZVNlc3Npb25FcnJvcihzZXNzaW9uRXJyb3IpO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgRXJyb3IoYHNlc3Npb25IYW5kbGVyU2VydmljZSB3YXMgbm90IGluaXRpYWxpemVkLiBFcnJvcjogJHtzZXNzaW9uRXJyb3IuY29kZX1gKTtcbiAgfVxuXG4gIHB1YmxpYyBhZGRIZWFkZXJQYXJhbShoZWFkZXJQYXJhbTogSGVhZGVyUGFyYW0pOiB2b2lkIHtcbiAgICBpZiAodGhpcy5oZWFkZXJQYXJhbXMuZmluZCgoaDogSGVhZGVyUGFyYW0pID0+IGguaGVhZGVyTmFtZSA9PT0gaGVhZGVyUGFyYW0uaGVhZGVyTmFtZSkpIHtcbiAgICAgIGxldCBpbmRleCA9IHRoaXMuaGVhZGVyUGFyYW1zLmZpbmRJbmRleChcbiAgICAgICAgKGg6IEhlYWRlclBhcmFtKSA9PiBoLmhlYWRlck5hbWUgPT09IGhlYWRlclBhcmFtLmhlYWRlck5hbWVcbiAgICAgICk7XG4gICAgICB0aGlzLmhlYWRlclBhcmFtc1tpbmRleCFdLnZhbHVlID0gaGVhZGVyUGFyYW0udmFsdWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaGVhZGVyUGFyYW1zLnB1c2goaGVhZGVyUGFyYW0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0VXBUb2tlbkZvclNlc3Npb25TZXJ2aWNlKCk6IHZvaWQge1xuICAgIHRoaXMuYWRkSGVhZGVyUGFyYW0oe1xuICAgICAgaGVhZGVyTmFtZTogJ0F1dGhvcml6YXRpb24nLFxuICAgICAgdmFsdWU6IGBCZWFyZXIgJHt0aGlzLnRva2VuIX1gLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEh5ZHJhdGVzIHRoZSBzZXNzaW9uIHdpdGggYW4gZXh0ZXJuYWxseSBvYnRhaW5lZCBTSUQsIGJ5cGFzc2luZ1xuICAgKiBgaW5pdGlhbGl6ZSgpYCdzIGJhY2tlbmQgcm91bmQtdHJpcC4gVXNlZCBieSB0aGVcbiAgICogYFNtYXJ0QmFja2VuZEJvb3RzdHJhcFNlcnZpY2UuYm9vdHN0cmFwV2l0aCgpYCBmbG93IHdoZW4gYSBob3N0XG4gICAqIChlLmcuIG5hdGl2ZSBtb2JpbGUgc2hlbGwpIGhhbmRzIG92ZXIgYW4gYWxyZWFkeS1hdXRoZW50aWNhdGVkIHNlc3Npb24uXG4gICAqXG4gICAqIFBlcnNpc3RzIHRoZSBTSUQgdG8gbG9jYWxTdG9yYWdlICsgY29va2llIHNvIHRoYXQgYSBwYWdlIHJlbG9hZCBjYW5cbiAgICogcmVoeWRyYXRlIHRoZSBzZXNzaW9uIHRocm91Z2ggYGluaXRpYWxpemUoKWAncyByZWd1bGFyXG4gICAqIGB0b2tlbkZyb21Mb2NhbFN0b3JhZ2UgPT09IHRva2VuRnJvbUNvb2tpZXNgIHBhdGguIFRoZSBvcHRpb25hbFxuICAgKiByZWZyZXNoVG9rZW4gaXMgcGVyc2lzdGVkIHRvIGVuYWJsZSBhdXRvbm9tb3VzIHJlZnJlc2ggdmlhXG4gICAqIGByZWZyZXNoU2Vzc2lvbigpYCB3aGVuIHRoZSBTSUQgZXhwaXJlcy5cbiAgICovXG4gIHB1YmxpYyBzZXRTZXNzaW9uVG9rZW4odG9rZW46IHN0cmluZywgcmVmcmVzaFRva2VuPzogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy50b2tlbiA9IHRva2VuO1xuICAgIHRoaXMuc2V0VXBUb2tlbkZvclNlc3Npb25TZXJ2aWNlKCk7XG4gICAgaWYgKHRoaXMuY29va2llTmFtZSkge1xuICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ3Rva2VuJywgdG9rZW4pO1xuICAgICAgdGhpcy5jb29raWVTZXJ2aWNlLnNldCh0aGlzLmNvb2tpZU5hbWUsIHRva2VuKTtcbiAgICAgIGlmIChyZWZyZXNoVG9rZW4pIHtcbiAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ3JlZnJlc2hUb2tlbicsIHJlZnJlc2hUb2tlbik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHNldFVybCh1cmw6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuYmFzZVBhdGggPSB1cmw7XG4gIH1cbiAgcHVibGljIGdldEJhc2VQYXRoKCk6IHN0cmluZyB7XG4gICAgaWYgKCF0aGlzLmJhc2VQYXRoKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Jhc2VQYXRoIGhhcyBub3QgYmVlbiBzZXQgaW4gU21hcnRTZXNzaW9uU2VydmljZSEnKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuYmFzZVBhdGg7XG4gIH1cblxuICBwdWJsaWMgc2V0Q29va2llTmFtZShuYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmNvb2tpZU5hbWUgPSBuYW1lO1xuICB9XG5cbiAgcHJpdmF0ZSBzYXZlVG9rZW5Ub0xvY2FsU3RvcmFnZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zZXNzaW9uSW5mb0RhdGEgJiYgdGhpcy5jb29raWVOYW1lKSB7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgndG9rZW4nLCB0aGlzLnNlc3Npb25JbmZvRGF0YS5zaWQpO1xuICAgICAgaWYgKFxuICAgICAgICB0aGlzLnNlc3Npb25JbmZvRGF0YS5yZWZyZXNoVG9rZW4gJiZcbiAgICAgICAgdGhpcy5zZXNzaW9uSW5mb0RhdGEucmVmcmVzaFRva2VuICE9PSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgncmVmcmVzaFRva2VuJylcbiAgICAgICkge1xuICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgncmVmcmVzaFRva2VuJywgdGhpcy5zZXNzaW9uSW5mb0RhdGEucmVmcmVzaFRva2VuKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY29va2llU2VydmljZS5zZXQodGhpcy5jb29raWVOYW1lLCB0aGlzLnRva2VuISk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXRBdXRoZW50aWNhdGlvblN0YXR1cygpOiB2b2lkIHtcbiAgICBjb25zdCBwcmV2aW91cyA9IHRoaXMuaXNBdXRoZW50aWNhdGVkO1xuICAgIGlmICh0aGlzLnNlc3Npb25JbmZvRGF0YSAmJiB0aGlzLnNlc3Npb25JbmZvRGF0YS5hdXRoZW50aWNhdGlvbnMpIHtcbiAgICAgIHRoaXMuaXNBdXRoZW50aWNhdGVkID0gdGhpcy5zZXNzaW9uSW5mb0RhdGEuYXV0aGVudGljYXRpb25zLmxlbmd0aCA+IDA7XG4gICAgfVxuICAgIC8vIEVtaXQgb25seSBvbiBhY3R1YWwgdHJhbnNpdGlvbnMuIFJlLWVtaXR0aW5nIG9uIGV2ZXJ5IHNlc3Npb24gcmVmcmVzaFxuICAgIC8vIHdvdWxkIGZhbiBvdXQgaW50byBkdXBsaWNhdGVkIGhvc3Qgd29yayAoZS5nLiBsb2dvdXQvbG9naW4gbmF2aWdhdGlvblxuICAgIC8vIHN1YnNjcmliZXJzIHJlLWZpcmluZyB0aGVpciBmbG93IGVhY2ggdGltZSBhIHN0YXJ0U2Vzc2lvbigpIHJldHVybnMpLlxuICAgIGlmIChwcmV2aW91cyAhPT0gdGhpcy5pc0F1dGhlbnRpY2F0ZWQpIHtcbiAgICAgIHRoaXMuYXV0aGVudGljYXRpb25TdGF0ZUNoYW5nZWQubmV4dCh0aGlzLmlzQXV0aGVudGljYXRlZCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjaGVja1N0YXRlbWVudHMoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmJhc2VQYXRoKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSB1cmwgb2YgdGhlIGJhY2tlbmQgYXBpIGhhcyBub3QgYmVlbiBzZXQhJyk7XG4gICAgfSBlbHNlIGlmICghdGhpcy5jb29raWVOYW1lKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBuYW1lIG9mIHRoZSBjb29raWUgcmVxdWlyZWQgYnkgdGhlIGJhY2tlbmQgaGFzIG5vdCBiZWVuIHNldCEnKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgaW5pdGlhbGl6ZSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAodGhpcy5pbml0aWFsaXplUnVubmluZykge1xuICAgICAgcmV0dXJuIHRoaXMuaW5pdGlhbGl6ZVJ1bm5pbmcudG9Qcm9taXNlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW5pdGlhbGl6ZVJ1bm5pbmcgPSBuZXcgU21hcnRTdWJqZWN0KHRoaXMuX2Rlc3Ryb3kkKTtcbiAgICAgIHRyeSB7XG4gICAgICAgIHRoaXMuY2hlY2tTdGF0ZW1lbnRzKCk7XG5cbiAgICAgICAgbGV0IHRva2VuRnJvbUxvY2FsU3RvcmFnZSA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCd0b2tlbicpO1xuICAgICAgICBsZXQgdG9rZW5Gcm9tQ29va2llcyA9IHRoaXMuY29va2llU2VydmljZS5nZXQodGhpcy5jb29raWVOYW1lISk7XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgIHRva2VuRnJvbUxvY2FsU3RvcmFnZSAmJlxuICAgICAgICAgIHRva2VuRnJvbUNvb2tpZXMgJiZcbiAgICAgICAgICB0b2tlbkZyb21Mb2NhbFN0b3JhZ2UgPT09IHRva2VuRnJvbUNvb2tpZXNcbiAgICAgICAgKSB7XG4gICAgICAgICAgdGhpcy50b2tlbiA9IHRva2VuRnJvbUxvY2FsU3RvcmFnZTtcbiAgICAgICAgICB0aGlzLnNldFVwVG9rZW5Gb3JTZXNzaW9uU2VydmljZSgpO1xuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICBhd2FpdCB0aGlzLmdldFNlc3Npb24oKTtcbiAgICAgICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuc3RhcnRTZXNzaW9uKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGF3YWl0IHRoaXMuY2xlYXJBbmRTdGFydE5ld1Nlc3Npb24oKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5zZXNzaW9uSW5mb0RhdGEgJiYgdGhpcy5zZXNzaW9uSW5mb0RhdGEubG9jYWxlKSB7XG4gICAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5sb2NhbFN0b3JhZ2VMb2NhbGVOYW1lLCB0aGlzLnNlc3Npb25JbmZvRGF0YS5sb2NhbGUpO1xuICAgICAgICAgIHRoaXMubG9jYWxlQ2hhbmdlZC5uZXh0KCk7XG4gICAgICAgIH1cbiAgICAgIH0gZmluYWxseSB7XG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZVJ1bm5pbmcuY29tcGxldGUoKTtcbiAgICAgICAgdGhpcy5pbml0aWFsaXplUnVubmluZyA9IHVuZGVmaW5lZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHN0YXJ0U2Vzc2lvbigpOiBQcm9taXNlPFNlc3Npb25JbmZvRGF0YT4ge1xuICAgIGxldCBzZXNzaW9uSW5mbyA9IGF3YWl0IHRoaXMuYXBpU2VydmljZS5zdGFydFNlc3Npb24oKS50b1Byb21pc2UoKTtcbiAgICBpZiAoc2Vzc2lvbkluZm8pIHtcbiAgICAgIHRoaXMudXBkYXRlU2Vzc2lvbkluZm8oc2Vzc2lvbkluZm8pO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnNlc3Npb25JbmZvRGF0YSE7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZ2V0U2Vzc2lvbigpOiBQcm9taXNlPFNlc3Npb25JbmZvRGF0YT4ge1xuICAgIGxldCBzZXNzaW9uSW5mbyA9IGF3YWl0IHRoaXMuYXBpU2VydmljZS5nZXRTZXNzaW9uKCkudG9Qcm9taXNlKCk7XG4gICAgaWYgKHNlc3Npb25JbmZvKSB7XG4gICAgICB0aGlzLnNlc3Npb25JbmZvRGF0YSA9IHNlc3Npb25JbmZvO1xuICAgICAgdGhpcy50b2tlbiA9IHNlc3Npb25JbmZvLnNpZDtcbiAgICAgIHRoaXMuc2F2ZVRva2VuVG9Mb2NhbFN0b3JhZ2UoKTtcbiAgICAgIHRoaXMuc2V0QXV0aGVudGljYXRpb25TdGF0dXMoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5zZXNzaW9uSW5mb0RhdGEhO1xuICB9XG5cbiAgcHVibGljIHJlZnJlc2hTZXNzaW9uKCk6IFByb21pc2U8U2Vzc2lvbkluZm9EYXRhPiB7XG4gICAgaWYgKHRoaXMucnVubmluZ1JlZnJlc2gpIHtcbiAgICAgIHJldHVybiB0aGlzLnJ1bm5pbmdSZWZyZXNoO1xuICAgIH1cbiAgICB0aGlzLnJ1bm5pbmdSZWZyZXNoID0gdGhpcy5kb1JlZnJlc2hTZXNzaW9uKCk7XG4gICAgcmV0dXJuIHRoaXMucnVubmluZ1JlZnJlc2g7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGRvUmVmcmVzaFNlc3Npb24oKTogUHJvbWlzZTxTZXNzaW9uSW5mb0RhdGE+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVmcmVzaFRva2VuID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3JlZnJlc2hUb2tlbicpO1xuICAgICAgaWYgKCFyZWZyZXNoVG9rZW4pIHtcbiAgICAgICAgLy8gTm8gcmVmcmVzaCB0b2tlbiBhdCBhbGw6IHRoZXJlIGlzIG5vIEhUVFAgcmVmcmVzaCByb3VuZC10cmlwIHRoYXQgdGhlXG4gICAgICAgIC8vIGludGVyY2VwdG9yIGNvdWxkIGNsYXNzaWZ5IGFzIGFuIGVycm9yLCBzbyBydW4gdGhlIHNlc3Npb24tcmVzdGFydFxuICAgICAgICAvLyBoYW5kbGluZyBoZXJlIGluc3RlYWQgb2Ygc2lsZW50bHkgc3RhcnRpbmcgYSBuZXcgc2Vzc2lvbi5cbiAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuZmFpbFJlZnJlc2goKTtcbiAgICAgIH1cblxuICAgICAgY29uc3Qgc2Vzc2lvbkluZm8gPSBhd2FpdCBsYXN0VmFsdWVGcm9tKHRoaXMuYXBpU2VydmljZS5yZWZyZXNoU2Vzc2lvbih7IHJlZnJlc2hUb2tlbiB9KSk7XG4gICAgICBpZiAoIXNlc3Npb25JbmZvKSB7XG4gICAgICAgIC8vIFRoZSByZWZyZXNoIHJvdW5kLXRyaXAgY29tcGxldGVkIChIVFRQIDIwMCkgYnV0IHlpZWxkZWQgbm8gc2Vzc2lvbiwgc29cbiAgICAgICAgLy8gdGhlIGludGVyY2VwdG9yIG5ldmVyIHNhdyBhbiBlcnJvciByZXNwb25zZSDigJQgaGFuZGxlIGl0IGhlcmUgYXMgd2VsbC5cbiAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuZmFpbFJlZnJlc2goKTtcbiAgICAgIH1cbiAgICAgIHRoaXMudXBkYXRlU2Vzc2lvbkluZm8oc2Vzc2lvbkluZm8pO1xuICAgICAgcmV0dXJuIHNlc3Npb25JbmZvO1xuICAgICAgLy8gSWYgdGhlIHJlZnJlc2ggY2FsbCBpdHNlbGYgRkFJTFMgd2l0aCBhIHNlc3Npb24gZXJyb3IsIHRoZVxuICAgICAgLy8gU21hcnRFcnJvckNhdGNoaW5nSW50ZXJjZXB0b3IgYWxyZWFkeSBydW5zIGhhbmRsZVNlc3Npb25FcnJvciBmb3IgdGhhdFxuICAgICAgLy8gKG5lc3RlZCkgSFRUUCBlcnJvciByZXNwb25zZS4gV2UgbGV0IHRoYXQgZXJyb3IgcHJvcGFnYXRlIHVuY2hhbmdlZCBhbmRcbiAgICAgIC8vIG11c3QgTk9UIGhhbmRsZSBpdCBhZ2FpbiBoZXJlIOKAlCB0aGF0IHdvdWxkIGludm9rZSBoYW5kbGVTZXNzaW9uRXJyb3IgdHdpY2UuXG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMucnVubmluZ1JlZnJlc2ggPSB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJ1bnMgdGhlIHN0YW5kYXJkIHNlc3Npb24tcmVzdGFydCBoYW5kbGluZyBmb3IgYSByZWZyZXNoIHRoYXQgZmluaXNoZWRcbiAgICogd2l0aG91dCBhbiBlcnJvciBIVFRQIHJlc3BvbnNlIChubyByZWZyZXNoIHRva2VuLCBvciBhbiBlbXB0eSByZWZyZXNoXG4gICAqIHJlc3VsdCksIHRoZW4gdGhyb3dzIGEgZmFpbHVyZSBzaGFwZWQgbGlrZSB0aGUgYmFja2VuZCdzIHJlamVjdGVkIHJlZnJlc2guXG4gICAqXG4gICAqIE9ubHkgdGhlIHBhdGhzIHRoYXQgZG8gTk9UIHByb2R1Y2UgYW4gZXJyb3IgSFRUUCByZXNwb25zZSBjb21lIGhlcmU6IGFcbiAgICogcmVmcmVzaCBjYWxsIHRoYXQgZmFpbHMgd2l0aCBhIHNlc3Npb24gZXJyb3IgaXMgYWxyZWFkeSBoYW5kbGVkIGJ5IHRoZVxuICAgKiBTbWFydEVycm9yQ2F0Y2hpbmdJbnRlcmNlcHRvciwgc28gcm91dGluZyBpdCB0aHJvdWdoIGhlcmUgdG9vIHdvdWxkIGludm9rZVxuICAgKiBoYW5kbGVTZXNzaW9uRXJyb3IgYSBzZWNvbmQgdGltZS5cbiAgICovXG4gIHByaXZhdGUgYXN5bmMgZmFpbFJlZnJlc2goKTogUHJvbWlzZTxuZXZlcj4ge1xuICAgIGF3YWl0IHRoaXMuaGFuZGxlU2Vzc2lvbkVycm9yKHtcbiAgICAgIGNvZGU6ICdzZXNzaW9uLnJlZnJlc2h0b2tlbi5pbnZhbGlkJyxcbiAgICAgIGJlaGF2aW91cjogU2Vzc2lvbkVycm9yQmVoYXZpb3VyLlJFU1RBUlQsXG4gICAgfSk7XG4gICAgdGhyb3cgdGhpcy5jcmVhdGVSZWZyZXNoRmFpbGVkRXJyb3IoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZHMgYSBmYWlsdXJlIHNoYXBlZCBleGFjdGx5IGxpa2UgdGhlIGJhY2tlbmQncyByZWplY3RlZC1yZWZyZXNoXG4gICAqIHJlc3BvbnNlIChIVFRQIDQwMCArIEFwaUVycm9yLmNvZGUgPT09ICdzZXNzaW9uLnJlZnJlc2h0b2tlbi5pbnZhbGlkJyksIHNvIGFcbiAgICogZmFpbGVkL2ltcG9zc2libGUgcmVmcmVzaCBzdXJmYWNlcyBsaWtlIGFueSBvdGhlciBpbnZhbGlkIHJlZnJlc2ggdG9rZW5cbiAgICogaW5zdGVhZCBvZiBwcm9kdWNpbmcgYSBmcmVzaCBzZXNzaW9uIGFzIGEgcmVmcmVzaCBzaWRlIGVmZmVjdC5cbiAgICovXG4gIHByaXZhdGUgY3JlYXRlUmVmcmVzaEZhaWxlZEVycm9yKCk6IEh0dHBFcnJvclJlc3BvbnNlIHtcbiAgICBjb25zdCBlcnJvcjogQXBpRXJyb3IgPSB7XG4gICAgICBjb2RlOiAnc2Vzc2lvbi5yZWZyZXNodG9rZW4uaW52YWxpZCcsXG4gICAgICBtZXNzYWdlOiAnVW5hYmxlIHRvIHJlZnJlc2ggc2Vzc2lvbicsXG4gICAgfTtcbiAgICByZXR1cm4gbmV3IEh0dHBFcnJvclJlc3BvbnNlKHsgc3RhdHVzOiA0MDAsIGVycm9yIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVTZXNzaW9uSW5mbyhzZXNzaW9uSW5mbzogU2Vzc2lvbkluZm9EYXRhKTogdm9pZCB7XG4gICAgdGhpcy5zZXNzaW9uSW5mb0RhdGEgPSBzZXNzaW9uSW5mbztcbiAgICB0aGlzLnRva2VuID0gc2Vzc2lvbkluZm8uc2lkO1xuICAgIHRoaXMuc2F2ZVRva2VuVG9Mb2NhbFN0b3JhZ2UoKTtcbiAgICAvLyBJbnN0YWxsIHRoZSBBdXRob3JpemF0aW9uIGhlYWRlciBCRUZPUkUgbm90aWZ5aW5nIHN1YnNjcmliZXJzLiBTdWJqZWN0XG4gICAgLy8gZW1pc3Npb24gaXMgc3luY2hyb25vdXMsIGFuZCBob3N0IHN1YnNjcmliZXJzIChlLmcuIGF1dGgtc3RhdGUgbGlzdGVuZXJzXG4gICAgLy8gdGhhdCBpbW1lZGlhdGVseSBpbml0aWF0ZSBCRkYgY2FsbHMpIGV4ZWN1dGUgdGhlaXIgc3luYyBwcm9sb2d1ZSDigJRcbiAgICAvLyBpbmNsdWRpbmcgWEhSIHNlbmQoKSDigJQgYmVmb3JlIHRoaXMgbWV0aG9kIHJldHVybnMuIEluc3RhbGxpbmcgdGhlIGhlYWRlclxuICAgIC8vIGZpcnN0IGd1YXJhbnRlZXMgdGhvc2Ugc3luY2hyb25vdXMgZG93bnN0cmVhbSByZXF1ZXN0cyBjYXJyeSB0aGUgbmV3XG4gICAgLy8gdG9rZW4sIHByZXZlbnRpbmcgYSAnc2Vzc2lvbi5zZWN1cml0eS5ub2NvbnRleHQnIC8gcmUtYXV0aCBjYXNjYWRlLlxuICAgIHRoaXMuc2V0VXBUb2tlbkZvclNlc3Npb25TZXJ2aWNlKCk7XG4gICAgdGhpcy5zZXRBdXRoZW50aWNhdGlvblN0YXR1cygpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldEF1dGhlbnRpY2F0aW9uUHJvdmlkZXJzKCk6IFByb21pc2U8QXJyYXk8QXV0aGVudGljYXRpb25Qcm92aWRlckRhdGE+PiB7XG4gICAgbGV0IHByb3ZpZGVyczogR2V0QXV0aGVudGljYXRpb25Qcm92aWRlcnNSZXNwb25zZSB8IHVuZGVmaW5lZCA9IGF3YWl0IHRoaXMuYXBpU2VydmljZVxuICAgICAgLmdldEF1dGhlbnRpY2F0aW9uUHJvdmlkZXJzKClcbiAgICAgIC50b1Byb21pc2UoKTtcblxuICAgIHRoaXMucHJvdmlkZXJzID0gcHJvdmlkZXJzPy5hdXRoZW50aWNhdGlvblByb3ZpZGVycztcblxuICAgIHJldHVybiB0aGlzLnByb3ZpZGVycyE7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZ2V0SXNBdXRoZW50aWNhdGVkKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGlmICh0aGlzLnNlc3Npb25JbmZvRGF0YSkge1xuICAgICAgcmV0dXJuIHRoaXMuaXNBdXRoZW50aWNhdGVkO1xuICAgIH1cbiAgICBhd2FpdCB0aGlzLmdldFNlc3Npb24oKTtcbiAgICByZXR1cm4gdGhpcy5pc0F1dGhlbnRpY2F0ZWQ7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgaXMyRkFOZWNlc3NhcnkoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgaWYgKHRoaXMuc2Vzc2lvbkluZm9EYXRhKSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICB0aGlzLnNlc3Npb25JbmZvRGF0YS5hdXRoZW50aWNhdGlvbnM/LnNvbWUoKGFjY291bnRJbmZvKSA9PiBhY2NvdW50SW5mby50d29GQSA9PT0gdHJ1ZSkgPz9cbiAgICAgICAgZmFsc2VcbiAgICAgICk7XG4gICAgfVxuICAgIGF3YWl0IHRoaXMuZ2V0U2Vzc2lvbigpO1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLnNlc3Npb25JbmZvRGF0YSEuYXV0aGVudGljYXRpb25zPy5zb21lKChhY2NvdW50SW5mbykgPT4gYWNjb3VudEluZm8udHdvRkEgPT09IHRydWUpID8/XG4gICAgICBmYWxzZVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgY2xlYXJBbmRTdGFydE5ld1Nlc3Npb24oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgc2Vzc2lvblN0b3JhZ2UuY2xlYXIoKTtcbiAgICBsb2NhbFN0b3JhZ2UuY2xlYXIoKTtcbiAgICB0aGlzLmhlYWRlclBhcmFtcyA9IFtdO1xuICAgIHRoaXMuY29va2llU2VydmljZS5kZWxldGUodGhpcy5jb29raWVOYW1lISk7XG5cbiAgICBhd2FpdCB0aGlzLnN0YXJ0U2Vzc2lvbigpO1xuICB9XG5cbiAgcHVibGljIGdldExvY2FsZSgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLnNlc3Npb25JbmZvRGF0YSAmJiB0aGlzLnNlc3Npb25JbmZvRGF0YS5sb2NhbGUpIHtcbiAgICAgIGlmIChsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLmxvY2FsU3RvcmFnZUxvY2FsZU5hbWUpICE9PSB0aGlzLnNlc3Npb25JbmZvRGF0YS5sb2NhbGUpIHtcbiAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5sb2NhbFN0b3JhZ2VMb2NhbGVOYW1lLCB0aGlzLnNlc3Npb25JbmZvRGF0YS5sb2NhbGUpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHRoaXMuc2Vzc2lvbkluZm9EYXRhLmxvY2FsZTtcbiAgICB9XG4gICAgdGhyb3cgbmV3IEVycm9yKCdUaGVyZSBpcyBubyBTZXNzaW9uSW5mb0RhdGEgb3IgbG9jYWxlIGlzIHVuZGVmaW5lZC4nKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBjaGFuZ2VMb2NhbGUobG9jYWxlOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0aGlzLnNlc3Npb25JbmZvRGF0YSA9IGF3YWl0IHRoaXMuYXBpU2VydmljZS5zZXRMb2NhbGUobG9jYWxlKS50b1Byb21pc2UoKTtcbiAgICBpZiAodGhpcy5zZXNzaW9uSW5mb0RhdGEgJiYgdGhpcy5zZXNzaW9uSW5mb0RhdGEubG9jYWxlKSB7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0aGlzLmxvY2FsU3RvcmFnZUxvY2FsZU5hbWUsIHRoaXMuc2Vzc2lvbkluZm9EYXRhLmxvY2FsZSk7XG4gICAgICB0aGlzLmxvY2FsZUNoYW5nZWQubmV4dCgpO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -30,10 +30,10 @@ export class SmartSessionTimerComponent {
|
|
|
30
30
|
return `${minutes}:${remainingSeconds < 10 ? '0' : ''}${remainingSeconds}`;
|
|
31
31
|
}
|
|
32
32
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartSessionTimerComponent, deps: [{ token: i1.SmartSessionTimerService }, { token: i2.SmartBackendBootstrapService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
33
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: SmartSessionTimerComponent, selector: "smart-session-timer", providers: [SmartSessionTimerService], ngImport: i0, template: "<div class=\"smart-session-timer-container\">\
|
|
33
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: SmartSessionTimerComponent, selector: "smart-session-timer", providers: [SmartSessionTimerService], ngImport: i0, template: "<div class=\"smart-session-timer-container\">\n <span class=\"smart-session-timer\" *ngIf=\"timeInSeconds\">\n {{ formatTime(timeInSeconds!) }}\n </span>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
34
34
|
}
|
|
35
35
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartSessionTimerComponent, decorators: [{
|
|
36
36
|
type: Component,
|
|
37
|
-
args: [{ selector: 'smart-session-timer', providers: [SmartSessionTimerService], template: "<div class=\"smart-session-timer-container\">\
|
|
37
|
+
args: [{ selector: 'smart-session-timer', providers: [SmartSessionTimerService], template: "<div class=\"smart-session-timer-container\">\n <span class=\"smart-session-timer\" *ngIf=\"timeInSeconds\">\n {{ formatTime(timeInSeconds!) }}\n </span>\n</div>\n" }]
|
|
38
38
|
}], ctorParameters: () => [{ type: i1.SmartSessionTimerService }, { type: i2.SmartBackendBootstrapService }] });
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtc2Vzc2lvbi10aW1lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zZXNzaW9uL3NtYXJ0LXRpbWVyL3NtYXJ0LXNlc3Npb24tdGltZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvc2Vzc2lvbi9zbWFydC10aW1lci9zbWFydC1zZXNzaW9uLXRpbWVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBRTdELE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7OztBQVN6RSxNQUFNLE9BQU8sMEJBQTBCO0lBS3JDLFlBQ1MsT0FBaUMsRUFDaEMsU0FBdUM7UUFEeEMsWUFBTyxHQUFQLE9BQU8sQ0FBMEI7UUFDaEMsY0FBUyxHQUFULFNBQVMsQ0FBOEI7UUFOekMsY0FBUyxHQUFrQixJQUFJLE9BQU8sRUFBRSxDQUFDO0lBTzlDLENBQUM7SUFFSixRQUFRO1FBQ04sSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ25DLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDMUIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDO1lBRXBELElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDdEUsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDO1lBQ3RELENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQsVUFBVSxDQUFDLE9BQWU7UUFDeEIsSUFBSSxPQUFPLEdBQVcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDL0MsSUFBSSxnQkFBZ0IsR0FBVyxPQUFPLEdBQUcsRUFBRSxDQUFDO1FBQzVDLE9BQU8sR0FBRyxPQUFPLElBQUksZ0JBQWdCLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzdFLENBQUM7K0dBOUJVLDBCQUEwQjttR0FBMUIsMEJBQTBCLDhDQUYxQixDQUFDLHdCQUF3QixDQUFDLDBCQ1Z2QyxrTEFLQTs7NEZET2EsMEJBQTBCO2tCQU50QyxTQUFTOytCQUNFLHFCQUFxQixhQUdwQixDQUFDLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFNtYXJ0U2Vzc2lvblRpbWVyU2VydmljZSB9IGZyb20gJy4vc21hcnQtc2Vzc2lvbi10aW1lci5zZXJ2aWNlJztcbmltcG9ydCB7IFNtYXJ0QmFja2VuZEJvb3RzdHJhcFNlcnZpY2UgfSBmcm9tICcuLi9zbWFydC1iYWNrZW5kLWJvb3RzdHJhcC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc21hcnQtc2Vzc2lvbi10aW1lcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9zbWFydC1zZXNzaW9uLXRpbWVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc21hcnQtc2Vzc2lvbi10aW1lci5jb21wb25lbnQuY3NzJ10sXG4gIHByb3ZpZGVyczogW1NtYXJ0U2Vzc2lvblRpbWVyU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNtYXJ0U2Vzc2lvblRpbWVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIF9kZXN0cm95JDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgdGltZUluU2Vjb25kcz86IG51bWJlcjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgc2VydmljZTogU21hcnRTZXNzaW9uVGltZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgYm9vdHN0cmFwOiBTbWFydEJhY2tlbmRCb290c3RyYXBTZXJ2aWNlXG4gICkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmJvb3RzdHJhcC53aGVuUmVhZHkoKS50aGVuKCgpID0+IHtcbiAgICAgIHRoaXMuc2VydmljZS5zdGFydFRpbWVyKCk7XG4gICAgICB0aGlzLnRpbWVJblNlY29uZHMgPSB0aGlzLnNlcnZpY2UudGltZUxlZnRJblNlY29uZHM7XG5cbiAgICAgIHRoaXMuc2VydmljZS50aW1lQ2hhbmdlZC5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMudGltZUluU2Vjb25kcyA9IHRoaXMuc2VydmljZS50aW1lTGVmdEluU2Vjb25kcztcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBmb3JtYXRUaW1lKHNlY29uZHM6IG51bWJlcik6IHN0cmluZyB7XG4gICAgbGV0IG1pbnV0ZXM6IG51bWJlciA9IE1hdGguZmxvb3Ioc2Vjb25kcyAvIDYwKTtcbiAgICBsZXQgcmVtYWluaW5nU2Vjb25kczogbnVtYmVyID0gc2Vjb25kcyAlIDYwO1xuICAgIHJldHVybiBgJHttaW51dGVzfToke3JlbWFpbmluZ1NlY29uZHMgPCAxMCA/ICcwJyA6ICcnfSR7cmVtYWluaW5nU2Vjb25kc31gO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwic21hcnQtc2Vzc2lvbi10aW1lci1jb250YWluZXJcIj5cbiAgICA8c3BhbiBjbGFzcz1cInNtYXJ0LXNlc3Npb24tdGltZXJcIiAqbmdJZj1cInRpbWVJblNlY29uZHNcIj5cbiAgICAgICAge3sgZm9ybWF0VGltZSh0aW1lSW5TZWNvbmRzISkgfX1cbiAgICA8L3NwYW4+XG48L2Rpdj5cbiJdfQ==
|