@smartbit4all/ng-client 4.3.17 → 4.3.18
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-error-catching.interceptor.mjs +1 -1
- 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 +1 -1
- 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-authentication.service.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/model/componentWidgetType.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/model/models.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/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/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/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/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 +6 -4
- 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-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/view.service.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/model/models.mjs +1 -1
- package/esm2022/lib/view-context/api/model/smartLinkData.mjs +1 -1
- package/esm2022/lib/view-context/api/model/uiAction.mjs +1 -1
- package/esm2022/lib/view-context/api/model/uiActionDefinition.mjs +1 -1
- package/esm2022/lib/view-context/api/model/uiActionInputType.mjs +1 -1
- package/esm2022/lib/view-context/api/model/uiActionSchedule.mjs +1 -1
- package/esm2022/lib/view-context/api/model/uiActionUploadDescriptor.mjs +1 -1
- package/esm2022/lib/view-context/api/model/view.mjs +1 -1
- package/esm2022/lib/view-context/api/model/viewData.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 +134 -132
- package/fesm2022/smartbit4all-ng-client.mjs.map +1 -1
- package/package.json +1 -1
- package/smartbit4all-ng-client-4.3.18.tgz +0 -0
- package/smartbit4all-ng-client-4.3.17.tgz +0 -0
|
@@ -171,11 +171,11 @@ export class PhotoCaptureWidgetComponent {
|
|
|
171
171
|
}
|
|
172
172
|
}
|
|
173
173
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PhotoCaptureWidgetComponent, deps: [{ token: COMPONENT_LIBRARY, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
174
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: PhotoCaptureWidgetComponent, selector: "photo-capture-widget", inputs: { maxFileSize: "maxFileSize" }, outputs: { photoCaptured: "photoCaptured" }, viewQueries: [{ propertyName: "videoRef", first: true, predicate: ["video"], descendants: true }, { propertyName: "canvasRef", first: true, predicate: ["canvas"], descendants: true }, { propertyName: "fileInputRef", first: true, predicate: ["fileInput"], descendants: true }], ngImport: i0, template: "<div class=\"photoWidgetContainer\">\n <ng-container *ngIf=\"!isMobile()\">\n <video #video autoplay [hidden]=\"isCaptured || !cameraActive\"></video>\n <canvas #canvas [hidden]=\"!isCaptured || cameraActive\"></canvas>\n\n <ng-container *ngIf=\"!cameraActive && !isCaptured\">\n <p class=\"message\">Kapcsolja be a kamer\u00E1t a k\u00E9p k\u00E9sz\u00EDt\u00E9s\u00E9hez!</p>\n </ng-container>\n\n <div class=\"controls\">\n <!-- START CAMERA -->\n <ui-action-button [descriptor]=\"toggleCameraButton\" (actionClick)=\"toggleCamera()\">\n </ui-action-button>\n\n <!-- CAPTURE CAMERA -->\n <ui-action-button\n [disabled]=\"!cameraActive\"\n [descriptor]=\"captureButton\"\n (actionClick)=\"capturePhoto()\"\n >\n </ui-action-button>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"isMobile()\">\n <div class=\"controls\">\n <input\n #fileInput\n type=\"file\"\n accept=\"image/*\"\n capture=\"environment\"\n (change)=\"onFileSelected($event)\"\n style=\"display: none\"\n />\n\n <ui-action-button [descriptor]=\"captureButton\" (actionClick)=\"fileInput.click()\">\n </ui-action-button>\n </div>\n </ng-container>\n</div>\n", styles: [".photoWidgetContainer{border-radius:5px;width:100%;max-width:100%;display:flex;flex-direction:column;justify-content:center;border:1px solid #dee2e6}.message{text-align:center;color:#6b7280}video,canvas{border-top-right-radius:5px;border-top-left-radius:5px;width:100%}.controls{padding:.5rem;display:flex;gap:1rem;flex-direction:row;justify-content:center;background:#f8f9fa;border-top:1px solid #dee2e6;border-bottom-right-radius:5px;border-bottom-left-radius:5px}.controls ::ng-deep button{border-radius:3px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.UiActionButtonComponent, selector: "ui-action-button", inputs: ["disabled", "descriptor", "code", "addedCssClass", "addBasicClasses"], outputs: ["actionClick", "actionDoubleClick"] }] }); }
|
|
174
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: PhotoCaptureWidgetComponent, selector: "photo-capture-widget", inputs: { maxFileSize: "maxFileSize" }, outputs: { photoCaptured: "photoCaptured" }, viewQueries: [{ propertyName: "videoRef", first: true, predicate: ["video"], descendants: true }, { propertyName: "canvasRef", first: true, predicate: ["canvas"], descendants: true }, { propertyName: "fileInputRef", first: true, predicate: ["fileInput"], descendants: true }], ngImport: i0, template: "<div class=\"photoWidgetContainer\">\r\n <ng-container *ngIf=\"!isMobile()\">\r\n <video #video autoplay [hidden]=\"isCaptured || !cameraActive\"></video>\r\n <canvas #canvas [hidden]=\"!isCaptured || cameraActive\"></canvas>\r\n\r\n <ng-container *ngIf=\"!cameraActive && !isCaptured\">\r\n <p class=\"message\">Kapcsolja be a kamer\u00E1t a k\u00E9p k\u00E9sz\u00EDt\u00E9s\u00E9hez!</p>\r\n </ng-container>\r\n\r\n <div class=\"controls\">\r\n <!-- START CAMERA -->\r\n <ui-action-button [descriptor]=\"toggleCameraButton\" (actionClick)=\"toggleCamera()\">\r\n </ui-action-button>\r\n\r\n <!-- CAPTURE CAMERA -->\r\n <ui-action-button\r\n [disabled]=\"!cameraActive\"\r\n [descriptor]=\"captureButton\"\r\n (actionClick)=\"capturePhoto()\"\r\n >\r\n </ui-action-button>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"isMobile()\">\r\n <div class=\"controls\">\r\n <input\r\n #fileInput\r\n type=\"file\"\r\n accept=\"image/*\"\r\n capture=\"environment\"\r\n (change)=\"onFileSelected($event)\"\r\n style=\"display: none\"\r\n />\r\n\r\n <ui-action-button [descriptor]=\"captureButton\" (actionClick)=\"fileInput.click()\">\r\n </ui-action-button>\r\n </div>\r\n </ng-container>\r\n</div>\r\n", styles: [".photoWidgetContainer{border-radius:5px;width:100%;max-width:100%;display:flex;flex-direction:column;justify-content:center;border:1px solid #dee2e6}.message{text-align:center;color:#6b7280}video,canvas{border-top-right-radius:5px;border-top-left-radius:5px;width:100%}.controls{padding:.5rem;display:flex;gap:1rem;flex-direction:row;justify-content:center;background:#f8f9fa;border-top:1px solid #dee2e6;border-bottom-right-radius:5px;border-bottom-left-radius:5px}.controls ::ng-deep button{border-radius:3px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.UiActionButtonComponent, selector: "ui-action-button", inputs: ["disabled", "descriptor", "code", "addedCssClass", "addBasicClasses"], outputs: ["actionClick", "actionDoubleClick"] }] }); }
|
|
175
175
|
}
|
|
176
176
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PhotoCaptureWidgetComponent, decorators: [{
|
|
177
177
|
type: Component,
|
|
178
|
-
args: [{ selector: 'photo-capture-widget', template: "<div class=\"photoWidgetContainer\">\n <ng-container *ngIf=\"!isMobile()\">\n <video #video autoplay [hidden]=\"isCaptured || !cameraActive\"></video>\n <canvas #canvas [hidden]=\"!isCaptured || cameraActive\"></canvas>\n\n <ng-container *ngIf=\"!cameraActive && !isCaptured\">\n <p class=\"message\">Kapcsolja be a kamer\u00E1t a k\u00E9p k\u00E9sz\u00EDt\u00E9s\u00E9hez!</p>\n </ng-container>\n\n <div class=\"controls\">\n <!-- START CAMERA -->\n <ui-action-button [descriptor]=\"toggleCameraButton\" (actionClick)=\"toggleCamera()\">\n </ui-action-button>\n\n <!-- CAPTURE CAMERA -->\n <ui-action-button\n [disabled]=\"!cameraActive\"\n [descriptor]=\"captureButton\"\n (actionClick)=\"capturePhoto()\"\n >\n </ui-action-button>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"isMobile()\">\n <div class=\"controls\">\n <input\n #fileInput\n type=\"file\"\n accept=\"image/*\"\n capture=\"environment\"\n (change)=\"onFileSelected($event)\"\n style=\"display: none\"\n />\n\n <ui-action-button [descriptor]=\"captureButton\" (actionClick)=\"fileInput.click()\">\n </ui-action-button>\n </div>\n </ng-container>\n</div>\n", styles: [".photoWidgetContainer{border-radius:5px;width:100%;max-width:100%;display:flex;flex-direction:column;justify-content:center;border:1px solid #dee2e6}.message{text-align:center;color:#6b7280}video,canvas{border-top-right-radius:5px;border-top-left-radius:5px;width:100%}.controls{padding:.5rem;display:flex;gap:1rem;flex-direction:row;justify-content:center;background:#f8f9fa;border-top:1px solid #dee2e6;border-bottom-right-radius:5px;border-bottom-left-radius:5px}.controls ::ng-deep button{border-radius:3px}\n"] }]
|
|
178
|
+
args: [{ selector: 'photo-capture-widget', template: "<div class=\"photoWidgetContainer\">\r\n <ng-container *ngIf=\"!isMobile()\">\r\n <video #video autoplay [hidden]=\"isCaptured || !cameraActive\"></video>\r\n <canvas #canvas [hidden]=\"!isCaptured || cameraActive\"></canvas>\r\n\r\n <ng-container *ngIf=\"!cameraActive && !isCaptured\">\r\n <p class=\"message\">Kapcsolja be a kamer\u00E1t a k\u00E9p k\u00E9sz\u00EDt\u00E9s\u00E9hez!</p>\r\n </ng-container>\r\n\r\n <div class=\"controls\">\r\n <!-- START CAMERA -->\r\n <ui-action-button [descriptor]=\"toggleCameraButton\" (actionClick)=\"toggleCamera()\">\r\n </ui-action-button>\r\n\r\n <!-- CAPTURE CAMERA -->\r\n <ui-action-button\r\n [disabled]=\"!cameraActive\"\r\n [descriptor]=\"captureButton\"\r\n (actionClick)=\"capturePhoto()\"\r\n >\r\n </ui-action-button>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"isMobile()\">\r\n <div class=\"controls\">\r\n <input\r\n #fileInput\r\n type=\"file\"\r\n accept=\"image/*\"\r\n capture=\"environment\"\r\n (change)=\"onFileSelected($event)\"\r\n style=\"display: none\"\r\n />\r\n\r\n <ui-action-button [descriptor]=\"captureButton\" (actionClick)=\"fileInput.click()\">\r\n </ui-action-button>\r\n </div>\r\n </ng-container>\r\n</div>\r\n", styles: [".photoWidgetContainer{border-radius:5px;width:100%;max-width:100%;display:flex;flex-direction:column;justify-content:center;border:1px solid #dee2e6}.message{text-align:center;color:#6b7280}video,canvas{border-top-right-radius:5px;border-top-left-radius:5px;width:100%}.controls{padding:.5rem;display:flex;gap:1rem;flex-direction:row;justify-content:center;background:#f8f9fa;border-top:1px solid #dee2e6;border-bottom-right-radius:5px;border-bottom-left-radius:5px}.controls ::ng-deep button{border-radius:3px}\n"] }]
|
|
179
179
|
}], ctorParameters: () => [{ type: i3.ComponentLibrary, decorators: [{
|
|
180
180
|
type: Inject,
|
|
181
181
|
args: [COMPONENT_LIBRARY]
|
|
@@ -195,4 +195,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
|
|
|
195
195
|
}], photoCaptured: [{
|
|
196
196
|
type: Output
|
|
197
197
|
}] } });
|
|
198
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGhvdG8tY2FwdHVyZS13aWRnZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvdmlldy1jb250ZXh0L3NtYXJ0LXVpLWFjdGlvbi9jb21wb25lbnRzL3VwbG9hZC13aWRnZXQvcGhvdG8tY2FwdHVyZS13aWRnZXQvcGhvdG8tY2FwdHVyZS13aWRnZXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvdmlldy1jb250ZXh0L3NtYXJ0LXVpLWFjdGlvbi9jb21wb25lbnRzL3VwbG9hZC13aWRnZXQvcGhvdG8tY2FwdHVyZS13aWRnZXQvcGhvdG8tY2FwdHVyZS13aWRnZXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUUzRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7Ozs7O0FBUWxFLE1BQU0sT0FBTywyQkFBMkI7SUEwQnRDLFlBQW1ELE9BQTBCO1FBcEJuRSxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFFckQsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFDckIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUtuQixxQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztRQUlwQyxrQkFBYSxHQUF1QjtZQUNsQyxJQUFJLEVBQUUsa0JBQWtCLENBQUMsTUFBTTtZQUMvQixLQUFLLEVBQUUsZUFBZTtZQUN0QixJQUFJLEVBQUUsUUFBUTtZQUNkLFlBQVksRUFBRSxZQUFZLENBQUMsR0FBRztZQUM5QixLQUFLLEVBQUUsU0FBUztTQUNqQixDQUFDO1FBR0EsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLElBQUksZ0JBQWdCLENBQUMsT0FBTyxDQUFDO1FBQ25ELElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTywyQkFBMkIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxLQUFLLENBQUMsV0FBVztRQUNmLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxTQUFTLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQ3BELElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ25DLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1FBQzFCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxLQUFLLENBQUMsWUFBWTtRQUNoQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQztRQUMxQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQztRQUM1QyxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxPQUFPO1lBQUUsT0FBTztRQUVyQixNQUFNLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUM7UUFDaEMsTUFBTSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDO1FBQ2xDLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUUvQixNQUFNLElBQUksR0FBRyxNQUFNLElBQUksT0FBTyxDQUFjLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FDdEQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsWUFBWSxFQUFFLEdBQUcsQ0FBQyxDQUMxQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLElBQUk7WUFBRSxPQUFPO1FBRWxCLElBQUksSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsU0FBUyxJQUFJLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBRS9FLElBQUksSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNyRCxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM5RCxDQUFDO1FBRUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsZUFBZTtRQUNiLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRCxLQUFLLENBQUMsY0FBYyxDQUFDLEtBQVk7UUFDL0IsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQTBCLENBQUM7UUFDL0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQztZQUFFLE9BQU87UUFFckQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUNqQyxNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQyxNQUFNLGNBQWMsR0FBVyxFQUFFLENBQUM7UUFFbEMsS0FBSyxNQUFNLElBQUksSUFBSSxVQUFVLEVBQUUsQ0FBQztZQUM5QixJQUFJLE9BQU8sSUFBSSxJQUFJLENBQUMsSUFBSSxHQUFHLE9BQU8sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO2dCQUNyRSxJQUFJLENBQUM7b0JBQ0gsTUFBTSxVQUFVLEdBQUcsTUFBTSxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO29CQUMvRCxjQUFjLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUNsQyxDQUFDO2dCQUFDLE1BQU0sQ0FBQztvQkFDUCxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUM1QixDQUFDO1lBQ0gsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUIsQ0FBQztRQUNILENBQUM7UUFFRCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNwQixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNyQixDQUFDO0lBQ0gsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxLQUFLLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQztRQUMxRixJQUFJLEtBQUssQ0FBQztRQUNWLElBQUksS0FBSyxDQUFDO1FBQ1YsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDdEIsS0FBSyxHQUFHLHFCQUFxQixDQUFDO1lBQzlCLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxLQUFLLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDdkUsQ0FBQzthQUFNLENBQUM7WUFDTixLQUFLLEdBQUcscUJBQXFCLENBQUM7WUFDOUIsS0FBSyxHQUFHLFNBQVMsQ0FBQztRQUNwQixDQUFDO1FBRUQsSUFBSSxDQUFDLGtCQUFrQixHQUFHO1lBQ3hCLElBQUksRUFBRSxrQkFBa0IsQ0FBQyxNQUFNO1lBQy9CLEtBQUssRUFBRSxLQUFLO1lBQ1osSUFBSSxFQUFFLElBQUk7WUFDVixLQUFLO1lBQ0wsWUFBWSxFQUFFLFlBQVksQ0FBQyxHQUFHO1NBQy9CLENBQUM7SUFDSixDQUFDO0lBRU8sS0FBSyxDQUFDLGlCQUFpQixDQUFDLElBQVUsRUFBRSxXQUFtQjtRQUM3RCxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFFakQsTUFBTSxHQUFHLEdBQUcsTUFBTSxJQUFJLE9BQU8sQ0FBbUIsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDbEUsTUFBTSxHQUFHLEdBQUcsR0FBRyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN0QyxNQUFNLEtBQUssR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQzFCLEtBQUssQ0FBQyxNQUFNLEdBQUcsR0FBRyxFQUFFO2dCQUNsQixHQUFHLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUN6QixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDakIsQ0FBQyxDQUFDO1lBQ0YsS0FBSyxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUNwQixHQUFHLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUN6QixNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDWixDQUFDLENBQUM7WUFDRixLQUFLLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztRQUNsQixDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEQsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNwQyxJQUFJLENBQUMsR0FBRztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBRXRCLElBQUksS0FBSyxHQUFHLEdBQUcsQ0FBQyxZQUFZLENBQUM7UUFDN0IsSUFBSSxNQUFNLEdBQUcsR0FBRyxDQUFDLGFBQWEsQ0FBQztRQUMvQixJQUFJLE9BQU8sR0FBRyxHQUFHLENBQUM7UUFDbEIsTUFBTSxVQUFVLEdBQUcsR0FBRyxDQUFDO1FBQ3ZCLE1BQU0sWUFBWSxHQUFHLEdBQUcsQ0FBQztRQUV6QixNQUFNLE9BQU8sR0FBRyxDQUFDLENBQVMsRUFBaUIsRUFBRSxDQUMzQyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQ3RCLE1BQU0sQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1lBQ3JCLE1BQU0sQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1lBQ3ZCLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDbkMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDeEMsTUFBTSxDQUFDLE1BQU0sQ0FDWCxDQUFDLElBQUksRUFBRSxFQUFFO2dCQUNQLElBQUksSUFBSTtvQkFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDMUIsQ0FBQyxFQUNELFlBQVksRUFDWixDQUFDLENBQ0YsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUwsSUFBSSxJQUFJLEdBQUcsTUFBTSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFbEMsT0FBTyxJQUFJLENBQUMsSUFBSSxHQUFHLFdBQVcsRUFBRSxDQUFDO1lBQy9CLElBQUksT0FBTyxHQUFHLFVBQVUsRUFBRSxDQUFDO2dCQUN6QixPQUFPLElBQUksR0FBRyxDQUFDO1lBQ2pCLENBQUM7aUJBQU0sSUFBSSxLQUFLLEdBQUcsWUFBWSxJQUFJLE1BQU0sR0FBRyxZQUFZLEVBQUUsQ0FBQztnQkFDekQsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQyxDQUFDO2dCQUNoQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDLENBQUM7Z0JBQ2xDLE9BQU8sR0FBRyxHQUFHLENBQUM7WUFDaEIsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE1BQU07WUFDUixDQUFDO1lBQ0QsSUFBSSxHQUFHLE1BQU0sT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2hDLENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksV0FBVyxFQUFFLENBQUM7WUFDN0IsT0FBTyxJQUFJLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUM3RCxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztJQUNILENBQUM7K0dBcE1VLDJCQUEyQixrQkEwQmxCLGlCQUFpQjttR0ExQjFCLDJCQUEyQixzYUNyQnhDLG13Q0F3Q0E7OzRGRG5CYSwyQkFBMkI7a0JBTHZDLFNBQVM7K0JBQ0Usc0JBQXNCOzswQkE4Qm5CLE1BQU07MkJBQUMsaUJBQWlCOzswQkFBRyxRQUFRO3lDQXpCNUIsUUFBUTtzQkFBM0IsU0FBUzt1QkFBQyxPQUFPO2dCQUNHLFNBQVM7c0JBQTdCLFNBQVM7dUJBQUMsUUFBUTtnQkFDSyxZQUFZO3NCQUFuQyxTQUFTO3VCQUFDLFdBQVc7Z0JBRWIsV0FBVztzQkFBbkIsS0FBSztnQkFDSSxhQUFhO3NCQUF0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9wdGlvbmFsLFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDT01QT05FTlRfTElCUkFSWSwgQ29tcG9uZW50TGlicmFyeSB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxpdHkvY29tcG9uZW50TGlicmFyeSc7XG5pbXBvcnQgeyBVaUFjdGlvbk1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vdWktYWN0aW9uLm1vZGVsJztcbmltcG9ydCB7IFVpQWN0aW9uQnV0dG9uVHlwZSB9IGZyb20gJy4uLy4uLy4uLy4uL2FwaS9tb2RlbC91aUFjdGlvbkJ1dHRvblR5cGUnO1xuaW1wb3J0IHsgSWNvblBvc2l0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vYXBpL21vZGVsL2ljb25Qb3NpdGlvbic7XG5pbXBvcnQgeyBVaUFjdGlvbkRlc2NyaXB0b3IgfSBmcm9tICcuLi8uLi8uLi8uLi9hcGknO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwaG90by1jYXB0dXJlLXdpZGdldCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9waG90by1jYXB0dXJlLXdpZGdldC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9waG90by1jYXB0dXJlLXdpZGdldC5jb21wb25lbnQuY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgUGhvdG9DYXB0dXJlV2lkZ2V0Q29tcG9uZW50IHtcbiAgQFZpZXdDaGlsZCgndmlkZW8nKSB2aWRlb1JlZiE6IEVsZW1lbnRSZWY8SFRNTFZpZGVvRWxlbWVudD47XG4gIEBWaWV3Q2hpbGQoJ2NhbnZhcycpIGNhbnZhc1JlZiE6IEVsZW1lbnRSZWY8SFRNTENhbnZhc0VsZW1lbnQ+O1xuICBAVmlld0NoaWxkKCdmaWxlSW5wdXQnKSBmaWxlSW5wdXRSZWYhOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gIEBJbnB1dCgpIG1heEZpbGVTaXplPzogbnVtYmVyO1xuICBAT3V0cHV0KCkgcGhvdG9DYXB0dXJlZCA9IG5ldyBFdmVudEVtaXR0ZXI8RmlsZVtdPigpO1xuXG4gIGNhbWVyYUFjdGl2ZSA9IGZhbHNlO1xuICBpc0NhcHR1cmVkID0gZmFsc2U7XG5cbiAgc3RyZWFtPzogTWVkaWFTdHJlYW07XG5cbiAgY29tcExpYjogQ29tcG9uZW50TGlicmFyeTtcbiAgY29tcG9uZW50TGlicmFyeSA9IENvbXBvbmVudExpYnJhcnk7XG5cbiAgdG9nZ2xlQ2FtZXJhQnV0dG9uITogVWlBY3Rpb25EZXNjcmlwdG9yO1xuXG4gIGNhcHR1cmVCdXR0b246IFVpQWN0aW9uRGVzY3JpcHRvciA9IHtcbiAgICB0eXBlOiBVaUFjdGlvbkJ1dHRvblR5cGUuUkFJU0VELFxuICAgIHRpdGxlOiAnS8OpcCBrw6lzesOtdMOpc2UnLFxuICAgIGljb246ICdjYW1lcmEnLFxuICAgIGljb25Qb3NpdGlvbjogSWNvblBvc2l0aW9uLlBSRSxcbiAgICBjb2xvcjogJ3ByaW1hcnknLFxuICB9O1xuXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoQ09NUE9ORU5UX0xJQlJBUlkpIEBPcHRpb25hbCgpIGNvbXBMaWI/OiBDb21wb25lbnRMaWJyYXJ5KSB7XG4gICAgdGhpcy5jb21wTGliID0gY29tcExpYiA/PyBDb21wb25lbnRMaWJyYXJ5LlBSSU1FTkc7XG4gICAgdGhpcy51cGRhdGVUb2dnbGVCdXR0b24oKTtcbiAgfVxuXG4gIGlzTW9iaWxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAvaVBob25lfGlQYWR8aVBvZHxBbmRyb2lkL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KTtcbiAgfVxuXG4gIGFzeW5jIHN0YXJ0Q2FtZXJhKCkge1xuICAgIHRoaXMuc3RyZWFtID0gYXdhaXQgbmF2aWdhdG9yLm1lZGlhRGV2aWNlcy5nZXRVc2VyTWVkaWEoeyB2aWRlbzogdHJ1ZSB9KTtcbiAgICB0aGlzLnZpZGVvUmVmLm5hdGl2ZUVsZW1lbnQuc3JjT2JqZWN0ID0gdGhpcy5zdHJlYW07XG4gICAgdGhpcy52aWRlb1JlZi5uYXRpdmVFbGVtZW50LnBsYXkoKTtcbiAgICB0aGlzLmNhbWVyYUFjdGl2ZSA9IHRydWU7XG4gICAgdGhpcy5pc0NhcHR1cmVkID0gZmFsc2U7XG4gICAgdGhpcy51cGRhdGVUb2dnbGVCdXR0b24oKTtcbiAgfVxuXG4gIHN0b3BDYW1lcmEoKSB7XG4gICAgdGhpcy5zdHJlYW0/LmdldFRyYWNrcygpLmZvckVhY2goKHRyYWNrKSA9PiB0cmFjay5zdG9wKCkpO1xuICAgIHRoaXMuc3RyZWFtID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuY2FtZXJhQWN0aXZlID0gZmFsc2U7XG4gICAgdGhpcy51cGRhdGVUb2dnbGVCdXR0b24oKTtcbiAgfVxuXG4gIGFzeW5jIGNhcHR1cmVQaG90bygpIHtcbiAgICBjb25zdCB2aWRlbyA9IHRoaXMudmlkZW9SZWYubmF0aXZlRWxlbWVudDtcbiAgICBjb25zdCBjYW52YXMgPSB0aGlzLmNhbnZhc1JlZi5uYXRpdmVFbGVtZW50O1xuICAgIGNvbnN0IGNvbnRleHQgPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKTtcbiAgICBpZiAoIWNvbnRleHQpIHJldHVybjtcblxuICAgIGNhbnZhcy53aWR0aCA9IHZpZGVvLnZpZGVvV2lkdGg7XG4gICAgY2FudmFzLmhlaWdodCA9IHZpZGVvLnZpZGVvSGVpZ2h0O1xuICAgIGNvbnRleHQuZHJhd0ltYWdlKHZpZGVvLCAwLCAwKTtcblxuICAgIGNvbnN0IGJsb2IgPSBhd2FpdCBuZXcgUHJvbWlzZTxCbG9iIHwgbnVsbD4oKHJlc29sdmUpID0+XG4gICAgICBjYW52YXMudG9CbG9iKHJlc29sdmUsICdpbWFnZS9qcGVnJywgMC45KVxuICAgICk7XG4gICAgaWYgKCFibG9iKSByZXR1cm47XG5cbiAgICBsZXQgZmlsZSA9IG5ldyBGaWxlKFtibG9iXSwgYHBob3RvXyR7RGF0ZS5ub3coKX0uanBnYCwgeyB0eXBlOiAnaW1hZ2UvanBlZycgfSk7XG5cbiAgICBpZiAodGhpcy5tYXhGaWxlU2l6ZSAmJiBmaWxlLnNpemUgPiB0aGlzLm1heEZpbGVTaXplKSB7XG4gICAgICBmaWxlID0gYXdhaXQgdGhpcy5jb21wcmVzc0ltYWdlRmlsZShmaWxlLCB0aGlzLm1heEZpbGVTaXplKTtcbiAgICB9XG5cbiAgICB0aGlzLnBob3RvQ2FwdHVyZWQuZW1pdChbZmlsZV0pO1xuICAgIHRoaXMuaXNDYXB0dXJlZCA9IHRydWU7XG4gICAgdGhpcy5zdG9wQ2FtZXJhKCk7XG4gIH1cblxuICBnZXRQaG90b0RhdGFVUkwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5jYW52YXNSZWYubmF0aXZlRWxlbWVudC50b0RhdGFVUkwoJ2ltYWdlL3BuZycpO1xuICB9XG5cbiAgYXN5bmMgb25GaWxlU2VsZWN0ZWQoZXZlbnQ6IEV2ZW50KSB7XG4gICAgY29uc3QgaW5wdXQgPSBldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICBpZiAoIWlucHV0LmZpbGVzIHx8IGlucHV0LmZpbGVzLmxlbmd0aCA9PT0gMCkgcmV0dXJuO1xuXG4gICAgY29uc3QgbWF4U2l6ZSA9IHRoaXMubWF4RmlsZVNpemU7XG4gICAgY29uc3QgZmlsZXNBcnJheSA9IEFycmF5LmZyb20oaW5wdXQuZmlsZXMpO1xuICAgIGNvbnN0IHByb2Nlc3NlZEZpbGVzOiBGaWxlW10gPSBbXTtcblxuICAgIGZvciAoY29uc3QgZmlsZSBvZiBmaWxlc0FycmF5KSB7XG4gICAgICBpZiAobWF4U2l6ZSAmJiBmaWxlLnNpemUgPiBtYXhTaXplICYmIGZpbGUudHlwZS5zdGFydHNXaXRoKCdpbWFnZS8nKSkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGNvbnN0IGNvbXByZXNzZWQgPSBhd2FpdCB0aGlzLmNvbXByZXNzSW1hZ2VGaWxlKGZpbGUsIG1heFNpemUpO1xuICAgICAgICAgIHByb2Nlc3NlZEZpbGVzLnB1c2goY29tcHJlc3NlZCk7XG4gICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgIHByb2Nlc3NlZEZpbGVzLnB1c2goZmlsZSk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHByb2Nlc3NlZEZpbGVzLnB1c2goZmlsZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5waG90b0NhcHR1cmVkLmVtaXQocHJvY2Vzc2VkRmlsZXMpO1xuICB9XG5cbiAgdG9nZ2xlQ2FtZXJhKCkge1xuICAgIGlmICh0aGlzLmNhbWVyYUFjdGl2ZSkge1xuICAgICAgdGhpcy5zdG9wQ2FtZXJhKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc3RhcnRDYW1lcmEoKTtcbiAgICB9XG4gIH1cblxuICB1cGRhdGVUb2dnbGVCdXR0b24oKSB7XG4gICAgbGV0IGljb24gPSB0aGlzLmNvbXBMaWIgPT09IENvbXBvbmVudExpYnJhcnkuUFJJTUVORyA/ICdwb3dlci1vZmYnIDogJ3Bvd2VyX3NldHRpbmdzX25ldyc7XG4gICAgbGV0IHRpdGxlO1xuICAgIGxldCBjb2xvcjtcbiAgICBpZiAodGhpcy5jYW1lcmFBY3RpdmUpIHtcbiAgICAgIHRpdGxlID0gJ0thbWVyYSBraWthcGNzb2zDoXNhJztcbiAgICAgIGNvbG9yID0gdGhpcy5jb21wTGliID09PSBDb21wb25lbnRMaWJyYXJ5LlBSSU1FTkcgPyAnZGFuZ2VyJyA6ICdyZWQnO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aXRsZSA9ICdLYW1lcmEgYmVrYXBjc29sw6FzYSc7XG4gICAgICBjb2xvciA9ICdwcmltYXJ5JztcbiAgICB9XG5cbiAgICB0aGlzLnRvZ2dsZUNhbWVyYUJ1dHRvbiA9IHtcbiAgICAgIHR5cGU6IFVpQWN0aW9uQnV0dG9uVHlwZS5SQUlTRUQsXG4gICAgICB0aXRsZTogdGl0bGUsXG4gICAgICBpY29uOiBpY29uLFxuICAgICAgY29sb3IsXG4gICAgICBpY29uUG9zaXRpb246IEljb25Qb3NpdGlvbi5QUkUsXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgY29tcHJlc3NJbWFnZUZpbGUoZmlsZTogRmlsZSwgbWF4RmlsZVNpemU6IG51bWJlcik6IFByb21pc2U8RmlsZT4ge1xuICAgIGlmICghZmlsZS50eXBlLnN0YXJ0c1dpdGgoJ2ltYWdlLycpKSByZXR1cm4gZmlsZTtcblxuICAgIGNvbnN0IGltZyA9IGF3YWl0IG5ldyBQcm9taXNlPEhUTUxJbWFnZUVsZW1lbnQ+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGNvbnN0IHVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoZmlsZSk7XG4gICAgICBjb25zdCBpbWFnZSA9IG5ldyBJbWFnZSgpO1xuICAgICAgaW1hZ2Uub25sb2FkID0gKCkgPT4ge1xuICAgICAgICBVUkwucmV2b2tlT2JqZWN0VVJMKHVybCk7XG4gICAgICAgIHJlc29sdmUoaW1hZ2UpO1xuICAgICAgfTtcbiAgICAgIGltYWdlLm9uZXJyb3IgPSAoZSkgPT4ge1xuICAgICAgICBVUkwucmV2b2tlT2JqZWN0VVJMKHVybCk7XG4gICAgICAgIHJlamVjdChlKTtcbiAgICAgIH07XG4gICAgICBpbWFnZS5zcmMgPSB1cmw7XG4gICAgfSk7XG5cbiAgICBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTtcbiAgICBjb25zdCBjdHggPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKTtcbiAgICBpZiAoIWN0eCkgcmV0dXJuIGZpbGU7XG5cbiAgICBsZXQgd2lkdGggPSBpbWcubmF0dXJhbFdpZHRoO1xuICAgIGxldCBoZWlnaHQgPSBpbWcubmF0dXJhbEhlaWdodDtcbiAgICBsZXQgcXVhbGl0eSA9IDAuOTtcbiAgICBjb25zdCBtaW5RdWFsaXR5ID0gMC40O1xuICAgIGNvbnN0IG1pbkRpbWVuc2lvbiA9IDY0MDtcblxuICAgIGNvbnN0IGdldEJsb2IgPSAocTogbnVtYmVyKTogUHJvbWlzZTxCbG9iPiA9PlxuICAgICAgbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgICAgY2FudmFzLndpZHRoID0gd2lkdGg7XG4gICAgICAgIGNhbnZhcy5oZWlnaHQgPSBoZWlnaHQ7XG4gICAgICAgIGN0eC5jbGVhclJlY3QoMCwgMCwgd2lkdGgsIGhlaWdodCk7XG4gICAgICAgIGN0eC5kcmF3SW1hZ2UoaW1nLCAwLCAwLCB3aWR0aCwgaGVpZ2h0KTtcbiAgICAgICAgY2FudmFzLnRvQmxvYihcbiAgICAgICAgICAoYmxvYikgPT4ge1xuICAgICAgICAgICAgaWYgKGJsb2IpIHJlc29sdmUoYmxvYik7XG4gICAgICAgICAgfSxcbiAgICAgICAgICAnaW1hZ2UvanBlZycsXG4gICAgICAgICAgcVxuICAgICAgICApO1xuICAgICAgfSk7XG5cbiAgICBsZXQgYmxvYiA9IGF3YWl0IGdldEJsb2IocXVhbGl0eSk7XG5cbiAgICB3aGlsZSAoYmxvYi5zaXplID4gbWF4RmlsZVNpemUpIHtcbiAgICAgIGlmIChxdWFsaXR5ID4gbWluUXVhbGl0eSkge1xuICAgICAgICBxdWFsaXR5IC09IDAuMTtcbiAgICAgIH0gZWxzZSBpZiAod2lkdGggPiBtaW5EaW1lbnNpb24gJiYgaGVpZ2h0ID4gbWluRGltZW5zaW9uKSB7XG4gICAgICAgIHdpZHRoID0gTWF0aC5mbG9vcih3aWR0aCAqIDAuOCk7XG4gICAgICAgIGhlaWdodCA9IE1hdGguZmxvb3IoaGVpZ2h0ICogMC44KTtcbiAgICAgICAgcXVhbGl0eSA9IDAuOTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgYmxvYiA9IGF3YWl0IGdldEJsb2IocXVhbGl0eSk7XG4gICAgfVxuXG4gICAgaWYgKGJsb2Iuc2l6ZSA8PSBtYXhGaWxlU2l6ZSkge1xuICAgICAgcmV0dXJuIG5ldyBGaWxlKFtibG9iXSwgZmlsZS5uYW1lLCB7IHR5cGU6ICdpbWFnZS9qcGVnJyB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGZpbGU7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicGhvdG9XaWRnZXRDb250YWluZXJcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpc01vYmlsZSgpXCI+XG4gICAgPHZpZGVvICN2aWRlbyBhdXRvcGxheSBbaGlkZGVuXT1cImlzQ2FwdHVyZWQgfHwgIWNhbWVyYUFjdGl2ZVwiPjwvdmlkZW8+XG4gICAgPGNhbnZhcyAjY2FudmFzIFtoaWRkZW5dPVwiIWlzQ2FwdHVyZWQgfHwgY2FtZXJhQWN0aXZlXCI+PC9jYW52YXM+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWNhbWVyYUFjdGl2ZSAmJiAhaXNDYXB0dXJlZFwiPlxuICAgICAgPHAgY2xhc3M9XCJtZXNzYWdlXCI+S2FwY3NvbGphIGJlIGEga2FtZXLDoXQgYSBrw6lwIGvDqXN6w610w6lzw6loZXohPC9wPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPGRpdiBjbGFzcz1cImNvbnRyb2xzXCI+XG4gICAgICA8IS0tIFNUQVJUIENBTUVSQSAtLT5cbiAgICAgIDx1aS1hY3Rpb24tYnV0dG9uIFtkZXNjcmlwdG9yXT1cInRvZ2dsZUNhbWVyYUJ1dHRvblwiIChhY3Rpb25DbGljayk9XCJ0b2dnbGVDYW1lcmEoKVwiPlxuICAgICAgPC91aS1hY3Rpb24tYnV0dG9uPlxuXG4gICAgICA8IS0tIENBUFRVUkUgQ0FNRVJBIC0tPlxuICAgICAgPHVpLWFjdGlvbi1idXR0b25cbiAgICAgICAgW2Rpc2FibGVkXT1cIiFjYW1lcmFBY3RpdmVcIlxuICAgICAgICBbZGVzY3JpcHRvcl09XCJjYXB0dXJlQnV0dG9uXCJcbiAgICAgICAgKGFjdGlvbkNsaWNrKT1cImNhcHR1cmVQaG90bygpXCJcbiAgICAgID5cbiAgICAgIDwvdWktYWN0aW9uLWJ1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzTW9iaWxlKClcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY29udHJvbHNcIj5cbiAgICAgIDxpbnB1dFxuICAgICAgICAjZmlsZUlucHV0XG4gICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgYWNjZXB0PVwiaW1hZ2UvKlwiXG4gICAgICAgIGNhcHR1cmU9XCJlbnZpcm9ubWVudFwiXG4gICAgICAgIChjaGFuZ2UpPVwib25GaWxlU2VsZWN0ZWQoJGV2ZW50KVwiXG4gICAgICAgIHN0eWxlPVwiZGlzcGxheTogbm9uZVwiXG4gICAgICAvPlxuXG4gICAgICA8dWktYWN0aW9uLWJ1dHRvbiBbZGVzY3JpcHRvcl09XCJjYXB0dXJlQnV0dG9uXCIgKGFjdGlvbkNsaWNrKT1cImZpbGVJbnB1dC5jbGljaygpXCI+XG4gICAgICA8L3VpLWFjdGlvbi1idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
|
|
198
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGhvdG8tY2FwdHVyZS13aWRnZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvdmlldy1jb250ZXh0L3NtYXJ0LXVpLWFjdGlvbi9jb21wb25lbnRzL3VwbG9hZC13aWRnZXQvcGhvdG8tY2FwdHVyZS13aWRnZXQvcGhvdG8tY2FwdHVyZS13aWRnZXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvdmlldy1jb250ZXh0L3NtYXJ0LXVpLWFjdGlvbi9jb21wb25lbnRzL3VwbG9hZC13aWRnZXQvcGhvdG8tY2FwdHVyZS13aWRnZXQvcGhvdG8tY2FwdHVyZS13aWRnZXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUUzRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7Ozs7O0FBUWxFLE1BQU0sT0FBTywyQkFBMkI7SUEwQnRDLFlBQW1ELE9BQTBCO1FBcEJuRSxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFFckQsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFDckIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUtuQixxQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztRQUlwQyxrQkFBYSxHQUF1QjtZQUNsQyxJQUFJLEVBQUUsa0JB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QUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUM3RCxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztJQUNILENBQUM7K0dBcE1VLDJCQUEyQixrQkEwQmxCLGlCQUFpQjttR0ExQjFCLDJCQUEyQixzYUNyQnhDLG0xQ0F3Q0E7OzRGRG5CYSwyQkFBMkI7a0JBTHZDLFNBQVM7K0JBQ0Usc0JBQXNCOzswQkE4Qm5CLE1BQU07MkJBQUMsaUJBQWlCOzswQkFBRyxRQUFRO3lDQXpCNUIsUUFBUTtzQkFBM0IsU0FBUzt1QkFBQyxPQUFPO2dCQUNHLFNBQVM7c0JBQTdCLFNBQVM7dUJBQUMsUUFBUTtnQkFDSyxZQUFZO3NCQUFuQyxTQUFTO3VCQUFDLFdBQVc7Z0JBRWIsV0FBVztzQkFBbkIsS0FBSztnQkFDSSxhQUFhO3NCQUF0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5qZWN0LFxyXG4gIElucHV0LFxyXG4gIE9wdGlvbmFsLFxyXG4gIE91dHB1dCxcclxuICBWaWV3Q2hpbGQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENPTVBPTkVOVF9MSUJSQVJZLCBDb21wb25lbnRMaWJyYXJ5IH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbGl0eS9jb21wb25lbnRMaWJyYXJ5JztcclxuaW1wb3J0IHsgVWlBY3Rpb25Nb2RlbCB9IGZyb20gJy4uLy4uLy4uL3VpLWFjdGlvbi5tb2RlbCc7XHJcbmltcG9ydCB7IFVpQWN0aW9uQnV0dG9uVHlwZSB9IGZyb20gJy4uLy4uLy4uLy4uL2FwaS9tb2RlbC91aUFjdGlvbkJ1dHRvblR5cGUnO1xyXG5pbXBvcnQgeyBJY29uUG9zaXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9hcGkvbW9kZWwvaWNvblBvc2l0aW9uJztcclxuaW1wb3J0IHsgVWlBY3Rpb25EZXNjcmlwdG9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vYXBpJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAncGhvdG8tY2FwdHVyZS13aWRnZXQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9waG90by1jYXB0dXJlLXdpZGdldC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL3Bob3RvLWNhcHR1cmUtd2lkZ2V0LmNvbXBvbmVudC5jc3MnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUGhvdG9DYXB0dXJlV2lkZ2V0Q29tcG9uZW50IHtcclxuICBAVmlld0NoaWxkKCd2aWRlbycpIHZpZGVvUmVmITogRWxlbWVudFJlZjxIVE1MVmlkZW9FbGVtZW50PjtcclxuICBAVmlld0NoaWxkKCdjYW52YXMnKSBjYW52YXNSZWYhOiBFbGVtZW50UmVmPEhUTUxDYW52YXNFbGVtZW50PjtcclxuICBAVmlld0NoaWxkKCdmaWxlSW5wdXQnKSBmaWxlSW5wdXRSZWYhOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xyXG5cclxuICBASW5wdXQoKSBtYXhGaWxlU2l6ZT86IG51bWJlcjtcclxuICBAT3V0cHV0KCkgcGhvdG9DYXB0dXJlZCA9IG5ldyBFdmVudEVtaXR0ZXI8RmlsZVtdPigpO1xyXG5cclxuICBjYW1lcmFBY3RpdmUgPSBmYWxzZTtcclxuICBpc0NhcHR1cmVkID0gZmFsc2U7XHJcblxyXG4gIHN0cmVhbT86IE1lZGlhU3RyZWFtO1xyXG5cclxuICBjb21wTGliOiBDb21wb25lbnRMaWJyYXJ5O1xyXG4gIGNvbXBvbmVudExpYnJhcnkgPSBDb21wb25lbnRMaWJyYXJ5O1xyXG5cclxuICB0b2dnbGVDYW1lcmFCdXR0b24hOiBVaUFjdGlvbkRlc2NyaXB0b3I7XHJcblxyXG4gIGNhcHR1cmVCdXR0b246IFVpQWN0aW9uRGVzY3JpcHRvciA9IHtcclxuICAgIHR5cGU6IFVpQWN0aW9uQnV0dG9uVHlwZS5SQUlTRUQsXHJcbiAgICB0aXRsZTogJ0vDqXAga8Opc3rDrXTDqXNlJyxcclxuICAgIGljb246ICdjYW1lcmEnLFxyXG4gICAgaWNvblBvc2l0aW9uOiBJY29uUG9zaXRpb24uUFJFLFxyXG4gICAgY29sb3I6ICdwcmltYXJ5JyxcclxuICB9O1xyXG5cclxuICBjb25zdHJ1Y3RvcihASW5qZWN0KENPTVBPTkVOVF9MSUJSQVJZKSBAT3B0aW9uYWwoKSBjb21wTGliPzogQ29tcG9uZW50TGlicmFyeSkge1xyXG4gICAgdGhpcy5jb21wTGliID0gY29tcExpYiA/PyBDb21wb25lbnRMaWJyYXJ5LlBSSU1FTkc7XHJcbiAgICB0aGlzLnVwZGF0ZVRvZ2dsZUJ1dHRvbigpO1xyXG4gIH1cclxuXHJcbiAgaXNNb2JpbGUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gL2lQaG9uZXxpUGFkfGlQb2R8QW5kcm9pZC9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCk7XHJcbiAgfVxyXG5cclxuICBhc3luYyBzdGFydENhbWVyYSgpIHtcclxuICAgIHRoaXMuc3RyZWFtID0gYXdhaXQgbmF2aWdhdG9yLm1lZGlhRGV2aWNlcy5nZXRVc2VyTWVkaWEoeyB2aWRlbzogdHJ1ZSB9KTtcclxuICAgIHRoaXMudmlkZW9SZWYubmF0aXZlRWxlbWVudC5zcmNPYmplY3QgPSB0aGlzLnN0cmVhbTtcclxuICAgIHRoaXMudmlkZW9SZWYubmF0aXZlRWxlbWVudC5wbGF5KCk7XHJcbiAgICB0aGlzLmNhbWVyYUFjdGl2ZSA9IHRydWU7XHJcbiAgICB0aGlzLmlzQ2FwdHVyZWQgPSBmYWxzZTtcclxuICAgIHRoaXMudXBkYXRlVG9nZ2xlQnV0dG9uKCk7XHJcbiAgfVxyXG5cclxuICBzdG9wQ2FtZXJhKCkge1xyXG4gICAgdGhpcy5zdHJlYW0/LmdldFRyYWNrcygpLmZvckVhY2goKHRyYWNrKSA9PiB0cmFjay5zdG9wKCkpO1xyXG4gICAgdGhpcy5zdHJlYW0gPSB1bmRlZmluZWQ7XHJcbiAgICB0aGlzLmNhbWVyYUFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgdGhpcy51cGRhdGVUb2dnbGVCdXR0b24oKTtcclxuICB9XHJcblxyXG4gIGFzeW5jIGNhcHR1cmVQaG90bygpIHtcclxuICAgIGNvbnN0IHZpZGVvID0gdGhpcy52aWRlb1JlZi5uYXRpdmVFbGVtZW50O1xyXG4gICAgY29uc3QgY2FudmFzID0gdGhpcy5jYW52YXNSZWYubmF0aXZlRWxlbWVudDtcclxuICAgIGNvbnN0IGNvbnRleHQgPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKTtcclxuICAgIGlmICghY29udGV4dCkgcmV0dXJuO1xyXG5cclxuICAgIGNhbnZhcy53aWR0aCA9IHZpZGVvLnZpZGVvV2lkdGg7XHJcbiAgICBjYW52YXMuaGVpZ2h0ID0gdmlkZW8udmlkZW9IZWlnaHQ7XHJcbiAgICBjb250ZXh0LmRyYXdJbWFnZSh2aWRlbywgMCwgMCk7XHJcblxyXG4gICAgY29uc3QgYmxvYiA9IGF3YWl0IG5ldyBQcm9taXNlPEJsb2IgfCBudWxsPigocmVzb2x2ZSkgPT5cclxuICAgICAgY2FudmFzLnRvQmxvYihyZXNvbHZlLCAnaW1hZ2UvanBlZycsIDAuOSlcclxuICAgICk7XHJcbiAgICBpZiAoIWJsb2IpIHJldHVybjtcclxuXHJcbiAgICBsZXQgZmlsZSA9IG5ldyBGaWxlKFtibG9iXSwgYHBob3RvXyR7RGF0ZS5ub3coKX0uanBnYCwgeyB0eXBlOiAnaW1hZ2UvanBlZycgfSk7XHJcblxyXG4gICAgaWYgKHRoaXMubWF4RmlsZVNpemUgJiYgZmlsZS5zaXplID4gdGhpcy5tYXhGaWxlU2l6ZSkge1xyXG4gICAgICBmaWxlID0gYXdhaXQgdGhpcy5jb21wcmVzc0ltYWdlRmlsZShmaWxlLCB0aGlzLm1heEZpbGVTaXplKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnBob3RvQ2FwdHVyZWQuZW1pdChbZmlsZV0pO1xyXG4gICAgdGhpcy5pc0NhcHR1cmVkID0gdHJ1ZTtcclxuICAgIHRoaXMuc3RvcENhbWVyYSgpO1xyXG4gIH1cclxuXHJcbiAgZ2V0UGhvdG9EYXRhVVJMKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5jYW52YXNSZWYubmF0aXZlRWxlbWVudC50b0RhdGFVUkwoJ2ltYWdlL3BuZycpO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgb25GaWxlU2VsZWN0ZWQoZXZlbnQ6IEV2ZW50KSB7XHJcbiAgICBjb25zdCBpbnB1dCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50O1xyXG4gICAgaWYgKCFpbnB1dC5maWxlcyB8fCBpbnB1dC5maWxlcy5sZW5ndGggPT09IDApIHJldHVybjtcclxuXHJcbiAgICBjb25zdCBtYXhTaXplID0gdGhpcy5tYXhGaWxlU2l6ZTtcclxuICAgIGNvbnN0IGZpbGVzQXJyYXkgPSBBcnJheS5mcm9tKGlucHV0LmZpbGVzKTtcclxuICAgIGNvbnN0IHByb2Nlc3NlZEZpbGVzOiBGaWxlW10gPSBbXTtcclxuXHJcbiAgICBmb3IgKGNvbnN0IGZpbGUgb2YgZmlsZXNBcnJheSkge1xyXG4gICAgICBpZiAobWF4U2l6ZSAmJiBmaWxlLnNpemUgPiBtYXhTaXplICYmIGZpbGUudHlwZS5zdGFydHNXaXRoKCdpbWFnZS8nKSkge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICBjb25zdCBjb21wcmVzc2VkID0gYXdhaXQgdGhpcy5jb21wcmVzc0ltYWdlRmlsZShmaWxlLCBtYXhTaXplKTtcclxuICAgICAgICAgIHByb2Nlc3NlZEZpbGVzLnB1c2goY29tcHJlc3NlZCk7XHJcbiAgICAgICAgfSBjYXRjaCB7XHJcbiAgICAgICAgICBwcm9jZXNzZWRGaWxlcy5wdXNoKGZpbGUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBwcm9jZXNzZWRGaWxlcy5wdXNoKGZpbGUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5waG90b0NhcHR1cmVkLmVtaXQocHJvY2Vzc2VkRmlsZXMpO1xyXG4gIH1cclxuXHJcbiAgdG9nZ2xlQ2FtZXJhKCkge1xyXG4gICAgaWYgKHRoaXMuY2FtZXJhQWN0aXZlKSB7XHJcbiAgICAgIHRoaXMuc3RvcENhbWVyYSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zdGFydENhbWVyYSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdXBkYXRlVG9nZ2xlQnV0dG9uKCkge1xyXG4gICAgbGV0IGljb24gPSB0aGlzLmNvbXBMaWIgPT09IENvbXBvbmVudExpYnJhcnkuUFJJTUVORyA/ICdwb3dlci1vZmYnIDogJ3Bvd2VyX3NldHRpbmdzX25ldyc7XHJcbiAgICBsZXQgdGl0bGU7XHJcbiAgICBsZXQgY29sb3I7XHJcbiAgICBpZiAodGhpcy5jYW1lcmFBY3RpdmUpIHtcclxuICAgICAgdGl0bGUgPSAnS2FtZXJhIGtpa2FwY3NvbMOhc2EnO1xyXG4gICAgICBjb2xvciA9IHRoaXMuY29tcExpYiA9PT0gQ29tcG9uZW50TGlicmFyeS5QUklNRU5HID8gJ2RhbmdlcicgOiAncmVkJztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRpdGxlID0gJ0thbWVyYSBiZWthcGNzb2zDoXNhJztcclxuICAgICAgY29sb3IgPSAncHJpbWFyeSc7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy50b2dnbGVDYW1lcmFCdXR0b24gPSB7XHJcbiAgICAgIHR5cGU6IFVpQWN0aW9uQnV0dG9uVHlwZS5SQUlTRUQsXHJcbiAgICAgIHRpdGxlOiB0aXRsZSxcclxuICAgICAgaWNvbjogaWNvbixcclxuICAgICAgY29sb3IsXHJcbiAgICAgIGljb25Qb3NpdGlvbjogSWNvblBvc2l0aW9uLlBSRSxcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFzeW5jIGNvbXByZXNzSW1hZ2VGaWxlKGZpbGU6IEZpbGUsIG1heEZpbGVTaXplOiBudW1iZXIpOiBQcm9taXNlPEZpbGU+IHtcclxuICAgIGlmICghZmlsZS50eXBlLnN0YXJ0c1dpdGgoJ2ltYWdlLycpKSByZXR1cm4gZmlsZTtcclxuXHJcbiAgICBjb25zdCBpbWcgPSBhd2FpdCBuZXcgUHJvbWlzZTxIVE1MSW1hZ2VFbGVtZW50PigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIGNvbnN0IHVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoZmlsZSk7XHJcbiAgICAgIGNvbnN0IGltYWdlID0gbmV3IEltYWdlKCk7XHJcbiAgICAgIGltYWdlLm9ubG9hZCA9ICgpID0+IHtcclxuICAgICAgICBVUkwucmV2b2tlT2JqZWN0VVJMKHVybCk7XHJcbiAgICAgICAgcmVzb2x2ZShpbWFnZSk7XHJcbiAgICAgIH07XHJcbiAgICAgIGltYWdlLm9uZXJyb3IgPSAoZSkgPT4ge1xyXG4gICAgICAgIFVSTC5yZXZva2VPYmplY3RVUkwodXJsKTtcclxuICAgICAgICByZWplY3QoZSk7XHJcbiAgICAgIH07XHJcbiAgICAgIGltYWdlLnNyYyA9IHVybDtcclxuICAgIH0pO1xyXG5cclxuICAgIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpO1xyXG4gICAgY29uc3QgY3R4ID0gY2FudmFzLmdldENvbnRleHQoJzJkJyk7XHJcbiAgICBpZiAoIWN0eCkgcmV0dXJuIGZpbGU7XHJcblxyXG4gICAgbGV0IHdpZHRoID0gaW1nLm5hdHVyYWxXaWR0aDtcclxuICAgIGxldCBoZWlnaHQgPSBpbWcubmF0dXJhbEhlaWdodDtcclxuICAgIGxldCBxdWFsaXR5ID0gMC45O1xyXG4gICAgY29uc3QgbWluUXVhbGl0eSA9IDAuNDtcclxuICAgIGNvbnN0IG1pbkRpbWVuc2lvbiA9IDY0MDtcclxuXHJcbiAgICBjb25zdCBnZXRCbG9iID0gKHE6IG51bWJlcik6IFByb21pc2U8QmxvYj4gPT5cclxuICAgICAgbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcclxuICAgICAgICBjYW52YXMud2lkdGggPSB3aWR0aDtcclxuICAgICAgICBjYW52YXMuaGVpZ2h0ID0gaGVpZ2h0O1xyXG4gICAgICAgIGN0eC5jbGVhclJlY3QoMCwgMCwgd2lkdGgsIGhlaWdodCk7XHJcbiAgICAgICAgY3R4LmRyYXdJbWFnZShpbWcsIDAsIDAsIHdpZHRoLCBoZWlnaHQpO1xyXG4gICAgICAgIGNhbnZhcy50b0Jsb2IoXHJcbiAgICAgICAgICAoYmxvYikgPT4ge1xyXG4gICAgICAgICAgICBpZiAoYmxvYikgcmVzb2x2ZShibG9iKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAnaW1hZ2UvanBlZycsXHJcbiAgICAgICAgICBxXHJcbiAgICAgICAgKTtcclxuICAgICAgfSk7XHJcblxyXG4gICAgbGV0IGJsb2IgPSBhd2FpdCBnZXRCbG9iKHF1YWxpdHkpO1xyXG5cclxuICAgIHdoaWxlIChibG9iLnNpemUgPiBtYXhGaWxlU2l6ZSkge1xyXG4gICAgICBpZiAocXVhbGl0eSA+IG1pblF1YWxpdHkpIHtcclxuICAgICAgICBxdWFsaXR5IC09IDAuMTtcclxuICAgICAgfSBlbHNlIGlmICh3aWR0aCA+IG1pbkRpbWVuc2lvbiAmJiBoZWlnaHQgPiBtaW5EaW1lbnNpb24pIHtcclxuICAgICAgICB3aWR0aCA9IE1hdGguZmxvb3Iod2lkdGggKiAwLjgpO1xyXG4gICAgICAgIGhlaWdodCA9IE1hdGguZmxvb3IoaGVpZ2h0ICogMC44KTtcclxuICAgICAgICBxdWFsaXR5ID0gMC45O1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgICAgIGJsb2IgPSBhd2FpdCBnZXRCbG9iKHF1YWxpdHkpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChibG9iLnNpemUgPD0gbWF4RmlsZVNpemUpIHtcclxuICAgICAgcmV0dXJuIG5ldyBGaWxlKFtibG9iXSwgZmlsZS5uYW1lLCB7IHR5cGU6ICdpbWFnZS9qcGVnJyB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBmaWxlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwicGhvdG9XaWRnZXRDb250YWluZXJcIj5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzTW9iaWxlKClcIj5cclxuICAgIDx2aWRlbyAjdmlkZW8gYXV0b3BsYXkgW2hpZGRlbl09XCJpc0NhcHR1cmVkIHx8ICFjYW1lcmFBY3RpdmVcIj48L3ZpZGVvPlxyXG4gICAgPGNhbnZhcyAjY2FudmFzIFtoaWRkZW5dPVwiIWlzQ2FwdHVyZWQgfHwgY2FtZXJhQWN0aXZlXCI+PC9jYW52YXM+XHJcblxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFjYW1lcmFBY3RpdmUgJiYgIWlzQ2FwdHVyZWRcIj5cclxuICAgICAgPHAgY2xhc3M9XCJtZXNzYWdlXCI+S2FwY3NvbGphIGJlIGEga2FtZXLDoXQgYSBrw6lwIGvDqXN6w610w6lzw6loZXohPC9wPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImNvbnRyb2xzXCI+XHJcbiAgICAgIDwhLS0gU1RBUlQgQ0FNRVJBIC0tPlxyXG4gICAgICA8dWktYWN0aW9uLWJ1dHRvbiBbZGVzY3JpcHRvcl09XCJ0b2dnbGVDYW1lcmFCdXR0b25cIiAoYWN0aW9uQ2xpY2spPVwidG9nZ2xlQ2FtZXJhKClcIj5cclxuICAgICAgPC91aS1hY3Rpb24tYnV0dG9uPlxyXG5cclxuICAgICAgPCEtLSBDQVBUVVJFIENBTUVSQSAtLT5cclxuICAgICAgPHVpLWFjdGlvbi1idXR0b25cclxuICAgICAgICBbZGlzYWJsZWRdPVwiIWNhbWVyYUFjdGl2ZVwiXHJcbiAgICAgICAgW2Rlc2NyaXB0b3JdPVwiY2FwdHVyZUJ1dHRvblwiXHJcbiAgICAgICAgKGFjdGlvbkNsaWNrKT1cImNhcHR1cmVQaG90bygpXCJcclxuICAgICAgPlxyXG4gICAgICA8L3VpLWFjdGlvbi1idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzTW9iaWxlKClcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb250cm9sc1wiPlxyXG4gICAgICA8aW5wdXRcclxuICAgICAgICAjZmlsZUlucHV0XHJcbiAgICAgICAgdHlwZT1cImZpbGVcIlxyXG4gICAgICAgIGFjY2VwdD1cImltYWdlLypcIlxyXG4gICAgICAgIGNhcHR1cmU9XCJlbnZpcm9ubWVudFwiXHJcbiAgICAgICAgKGNoYW5nZSk9XCJvbkZpbGVTZWxlY3RlZCgkZXZlbnQpXCJcclxuICAgICAgICBzdHlsZT1cImRpc3BsYXk6IG5vbmVcIlxyXG4gICAgICAvPlxyXG5cclxuICAgICAgPHVpLWFjdGlvbi1idXR0b24gW2Rlc2NyaXB0b3JdPVwiY2FwdHVyZUJ1dHRvblwiIChhY3Rpb25DbGljayk9XCJmaWxlSW5wdXQuY2xpY2soKVwiPlxyXG4gICAgICA8L3VpLWFjdGlvbi1idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -67,11 +67,11 @@ export class PrimeFileUploaderComponent {
|
|
|
67
67
|
};
|
|
68
68
|
}
|
|
69
69
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PrimeFileUploaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
70
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.11", type: PrimeFileUploaderComponent, selector: "prime-file-uploader", inputs: { isMultiple: "isMultiple", autoUpload: "autoUpload", maxSizeMb: "maxSizeMb", fileFormats: "fileFormats", title: "title", subTitle: "subTitle", isDisabled: "isDisabled" }, outputs: { uploadFilesEvent: "uploadFilesEvent" }, viewQueries: [{ propertyName: "fileUploadPrime", first: true, predicate: ["fileUploadPrimeNg"], descendants: true }], ngImport: i0, template: "@if (isMultiple) {\n <p-fileUpload\n #fileUploadPrimeNg\n name=\"files[]\"\n url=\"\"\n (onSelect)=\"select($event)\"\n (onSend)=\"uploadFiles($event)\"\n [multiple]=\"isMultiple\"\n [accept]=\"fileFormatsString\"\n [maxFileSize]=\"maxSizeBytes\"\n [disabled]=\"isDisabled\"\n [ngClass]=\"{ disabledWidget: isDisabled }\"\n uploadLabel=\"Felt\u00F6lt\u00E9s\"\n cancelLabel=\"M\u00E9gsem\"\n chooseLabel=\"V\u00E1laszt\u00E1s\"\n >\n <ng-template pTemplate=\"content\" *ngIf=\"!isMobile()\">\n <ng-container *ngTemplateOutlet=\"uploader\" />\n </ng-template>\n <ng-template pTemplate=\"file\" let-file let-i=\"index\">\n <ng-container *ngTemplateOutlet=\"fileContainer; context: { $implicit: file, i: i }\" />\n </ng-template>\n </p-fileUpload>\n} @else {\n <p-fileUpload\n #fileUploadPrimeNg\n name=\"files[]\"\n url=\"\"\n (onSelect)=\"select($event)\"\n (onSend)=\"uploadFiles($event)\"\n [disabled]=\"isDisabled\"\n [multiple]=\"isMultiple\"\n [accept]=\"fileFormatsString\"\n [maxFileSize]=\"maxSizeBytes\"\n [ngClass]=\"{ singlePrimeNg: true, autoUpload: autoUpload, disabledWidget: isDisabled }\"\n uploadLabel=\"Felt\u00F6lt\u00E9s\"\n cancelLabel=\"M\u00E9gsem\"\n chooseLabel=\"V\u00E1laszt\u00E1s\"\n >\n <ng-template pTemplate=\"content\" *ngIf=\"!isMobile()\">\n <ng-container *ngTemplateOutlet=\"uploader\" />\n </ng-template>\n <ng-template pTemplate=\"file\" let-file let-i=\"index\">\n <ng-container *ngTemplateOutlet=\"fileContainer; context: { $implicit: file, i: i }\" />\n </ng-template>\n </p-fileUpload>\n}\n\n<ng-template #uploader let-file let-i=\"index\">\n <div class=\"uploadField\" (click)=\"fileUploadPrime.choose()\">\n <div class=\"uploadData\"\n ><smart-icon class=\"uploadIcon\" [icon]=\"'upload'\"></smart-icon>\n <div class=\"dataField\">\n <span class=\"title message\">{{ title }}</span>\n <span class=\"message\">{{ subTitle }}</span>\n <span class=\"message\">{{ fileFormatsString }}</span>\n <span class=\"message\"> max {{ maxSizeMb }} Mb</span>\n </div>\n </div>\n @if (autoUpload == false && files && files.length > 0) {\n <ui-action-button [descriptor]=\"uploadButton\" (actionClick)=\"fileUploadPrime.upload()\" />\n }\n </div>\n</ng-template>\n\n<ng-template #fileContainer let-file let-i=\"index\">\n <div class=\"p-fileupload-file\">\n @if (file.objectURL) {\n <img role=\"presentation\" [alt]=\"file.name\" [src]=\"file.objectURL\" width=\"50\" height=\"50\" />\n } @else {\n <i class=\"pi pi-file\" style=\"font-size: 2rem\"></i>\n }\n\n <div class=\"fileData\">\n <span class=\"fileName\">{{ file.name }}</span>\n <span class=\"fileSize\">{{ formatSize(file.size) }}</span>\n </div>\n <div class=\"fileButtons\">\n <smart-icon\n class=\"downloadIcon\"\n icon=\"download\"\n (click)=\"downloadFile(file.dataUri)\"\n ></smart-icon>\n <smart-icon\n class=\"removeIcon\"\n icon=\"trash\"\n (click)=\"fileUploadPrime.remove($event, i)\"\n ></smart-icon>\n </div>\n </div>\n</ng-template>\n", styles: [":host{--border-color: #a6aabd60;--warninig-color: #be2d2e;--def-border-radius: .5rem}:host ::ng-deep .p-fileupload .p-fileupload-buttonbar{display:flex!important;flex-direction:row;justify-content:center;flex-wrap:wrap;gap:1rem}:host ::ng-deep .p-fileupload .p-fileupload-row>div{width:fit-content}:host ::ng-deep .p-fileupload .p-fileupload-content{padding:unset;align-content:center;text-align:center}.message{font-size:smaller;text-align:center;color:#6b7280}.title{font-size:unset;color:var(--primary-color)}.uploadField{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:1rem;padding:.5rem 1rem;cursor:pointer}.uploadField:hover{background-color:rgb(from var(--border-color) r g b / .1)}.disabledWidget ::ng-deep .uploadField:hover{background-color:unset;cursor:unset}:host ::ng-deep .p-fileupload-row{border-top:1px solid #dee2e6;border-bottom:1px solid #dee2e6}:host ::ng-deep .p-fileupload-choose,:host ::ng-deep .p-fileupload-row ::ng-deep button,:host ::ng-deep .p-fileupload-buttonbar ::ng-deep button{background-color:var(--primary-color);border-color:var(--primary-color)}:host ::ng-deep .p-fileupload-choose:hover,:host ::ng-deep .p-fileupload-row ::ng-deep button:hover,:host ::ng-deep .p-fileupload-buttonbar ::ng-deep button:hover{background-color:rgba(from var(--primary-color) r g b/.8)}.disabledWidget ::ng-deep *{opacity:.85}:host ::ng-deep .disabledWidget ::ng-deep .p-fileupload-choose:hover,:host ::ng-deep .disabledWidget ::ng-deep .p-fileupload-row ::ng-deep button:hover,:host ::ng-deep .disabledWidget ::ng-deep .p-fileupload-buttonbar ::ng-deep button:hover{background-color:unset;cursor:unset}.p-fileupload-file{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;border:1px solid #dee2e6}.p-file-data{flex:1;display:flex;flex-direction:row;justify-content:flex-start;align-items:center}.fileSize{display:flex;justify-content:flex-start}.fileData{flex:1;display:flex;flex-direction:column;justify-content:flex-end;padding-right:1rem}.uploadData{flex:1;display:flex;flex-direction:row;justify-content:flex-start;gap:1rem}.fileName{text-align:start}.singlePrimeNg ::ng-deep .uploadField{padding:1rem}.uploadIcon{align-content:center}:host ::ng-deep .uploadIcon i{font-size:2rem}:host ::ng-deep .p-fileupload-file i,:host ::ng-deep .uploadIcon i,:host ::ng-deep img{display:flex;justify-content:center;width:3rem}.dataField{display:flex;flex-direction:column;justify-content:flex-start;align-items:baseline}:host ::ng-deep .p-fileupload-content p-progressbar,:host ::ng-deep .p-fileupload ::ng-deep .p-fileupload-buttonbar{display:none!important}:host ::ng-deep .p-fileupload-content{display:flex;flex-direction:column-reverse}:host ::ng-deep .p-fileupload-file{border:unset;border-top:1px solid var(--border-color)}:host ::ng-deep .p-fileupload.p-fileupload-advanced .p-message{margin:unset}.fileButtons{display:flex;flex-direction:row;justify-content:flex-end;gap:.5rem}.fileButtons ::ng-deep .pi{width:unset!important}.removeIcon ::ng-deep i,.removeIcon ::ng-deep mat-icon{color:var(--warninig-color)}.removeIcon ::ng-deep .pi,.downloadIcon ::ng-deep .pi{font-size:1.5rem!important}.removeIcon ::ng-deep mat-icon,.downloadIcon ::ng-deep mat-icon{font-size:2rem}.removeIcon:hover,.downloadIcon:hover{cursor:pointer}smart-icon{display:flex;align-items:center}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i3.SmartIconComponent, selector: "smart-icon", inputs: ["icon", "color", "imageResource"] }, { kind: "component", type: i4.FileUpload, selector: "p-fileUpload", inputs: ["name", "url", "method", "multiple", "accept", "disabled", "auto", "withCredentials", "maxFileSize", "invalidFileSizeMessageSummary", "invalidFileSizeMessageDetail", "invalidFileTypeMessageSummary", "invalidFileTypeMessageDetail", "invalidFileLimitMessageDetail", "invalidFileLimitMessageSummary", "style", "styleClass", "previewWidth", "chooseLabel", "uploadLabel", "cancelLabel", "chooseIcon", "uploadIcon", "cancelIcon", "showUploadButton", "showCancelButton", "mode", "headers", "customUpload", "fileLimit", "uploadStyleClass", "cancelStyleClass", "removeStyleClass", "chooseStyleClass", "files"], outputs: ["onBeforeUpload", "onSend", "onUpload", "onError", "onClear", "onRemove", "onSelect", "onProgress", "uploadHandler", "onImageError", "onRemoveUploadedFile"] }, { kind: "component", type: i5.UiActionButtonComponent, selector: "ui-action-button", inputs: ["disabled", "descriptor", "code", "addedCssClass", "addBasicClasses"], outputs: ["actionClick", "actionDoubleClick"] }] }); }
|
|
70
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.11", type: PrimeFileUploaderComponent, selector: "prime-file-uploader", inputs: { isMultiple: "isMultiple", autoUpload: "autoUpload", maxSizeMb: "maxSizeMb", fileFormats: "fileFormats", title: "title", subTitle: "subTitle", isDisabled: "isDisabled" }, outputs: { uploadFilesEvent: "uploadFilesEvent" }, viewQueries: [{ propertyName: "fileUploadPrime", first: true, predicate: ["fileUploadPrimeNg"], descendants: true }], ngImport: i0, template: "@if (isMultiple) {\r\n <p-fileUpload\r\n #fileUploadPrimeNg\r\n name=\"files[]\"\r\n url=\"\"\r\n (onSelect)=\"select($event)\"\r\n (onSend)=\"uploadFiles($event)\"\r\n [multiple]=\"isMultiple\"\r\n [accept]=\"fileFormatsString\"\r\n [maxFileSize]=\"maxSizeBytes\"\r\n [disabled]=\"isDisabled\"\r\n [ngClass]=\"{ disabledWidget: isDisabled }\"\r\n uploadLabel=\"Felt\u00F6lt\u00E9s\"\r\n cancelLabel=\"M\u00E9gsem\"\r\n chooseLabel=\"V\u00E1laszt\u00E1s\"\r\n >\r\n <ng-template pTemplate=\"content\" *ngIf=\"!isMobile()\">\r\n <ng-container *ngTemplateOutlet=\"uploader\" />\r\n </ng-template>\r\n <ng-template pTemplate=\"file\" let-file let-i=\"index\">\r\n <ng-container *ngTemplateOutlet=\"fileContainer; context: { $implicit: file, i: i }\" />\r\n </ng-template>\r\n </p-fileUpload>\r\n} @else {\r\n <p-fileUpload\r\n #fileUploadPrimeNg\r\n name=\"files[]\"\r\n url=\"\"\r\n (onSelect)=\"select($event)\"\r\n (onSend)=\"uploadFiles($event)\"\r\n [disabled]=\"isDisabled\"\r\n [multiple]=\"isMultiple\"\r\n [accept]=\"fileFormatsString\"\r\n [maxFileSize]=\"maxSizeBytes\"\r\n [ngClass]=\"{ singlePrimeNg: true, autoUpload: autoUpload, disabledWidget: isDisabled }\"\r\n uploadLabel=\"Felt\u00F6lt\u00E9s\"\r\n cancelLabel=\"M\u00E9gsem\"\r\n chooseLabel=\"V\u00E1laszt\u00E1s\"\r\n >\r\n <ng-template pTemplate=\"content\" *ngIf=\"!isMobile()\">\r\n <ng-container *ngTemplateOutlet=\"uploader\" />\r\n </ng-template>\r\n <ng-template pTemplate=\"file\" let-file let-i=\"index\">\r\n <ng-container *ngTemplateOutlet=\"fileContainer; context: { $implicit: file, i: i }\" />\r\n </ng-template>\r\n </p-fileUpload>\r\n}\r\n\r\n<ng-template #uploader let-file let-i=\"index\">\r\n <div class=\"uploadField\" (click)=\"fileUploadPrime.choose()\">\r\n <div class=\"uploadData\"\r\n ><smart-icon class=\"uploadIcon\" [icon]=\"'upload'\"></smart-icon>\r\n <div class=\"dataField\">\r\n <span class=\"title message\">{{ title }}</span>\r\n <span class=\"message\">{{ subTitle }}</span>\r\n <span class=\"message\">{{ fileFormatsString }}</span>\r\n <span class=\"message\"> max {{ maxSizeMb }} Mb</span>\r\n </div>\r\n </div>\r\n @if (autoUpload == false && files && files.length > 0) {\r\n <ui-action-button [descriptor]=\"uploadButton\" (actionClick)=\"fileUploadPrime.upload()\" />\r\n }\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #fileContainer let-file let-i=\"index\">\r\n <div class=\"p-fileupload-file\">\r\n @if (file.objectURL) {\r\n <img role=\"presentation\" [alt]=\"file.name\" [src]=\"file.objectURL\" width=\"50\" height=\"50\" />\r\n } @else {\r\n <i class=\"pi pi-file\" style=\"font-size: 2rem\"></i>\r\n }\r\n\r\n <div class=\"fileData\">\r\n <span class=\"fileName\">{{ file.name }}</span>\r\n <span class=\"fileSize\">{{ formatSize(file.size) }}</span>\r\n </div>\r\n <div class=\"fileButtons\">\r\n <smart-icon\r\n class=\"downloadIcon\"\r\n icon=\"download\"\r\n (click)=\"downloadFile(file.dataUri)\"\r\n ></smart-icon>\r\n <smart-icon\r\n class=\"removeIcon\"\r\n icon=\"trash\"\r\n (click)=\"fileUploadPrime.remove($event, i)\"\r\n ></smart-icon>\r\n </div>\r\n </div>\r\n</ng-template>\r\n", styles: [":host{--border-color: #a6aabd60;--warninig-color: #be2d2e;--def-border-radius: .5rem}:host ::ng-deep .p-fileupload .p-fileupload-buttonbar{display:flex!important;flex-direction:row;justify-content:center;flex-wrap:wrap;gap:1rem}:host ::ng-deep .p-fileupload .p-fileupload-row>div{width:fit-content}:host ::ng-deep .p-fileupload .p-fileupload-content{padding:unset;align-content:center;text-align:center}.message{font-size:smaller;text-align:center;color:#6b7280}.title{font-size:unset;color:var(--primary-color)}.uploadField{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:1rem;padding:.5rem 1rem;cursor:pointer}.uploadField:hover{background-color:rgb(from var(--border-color) r g b / .1)}.disabledWidget ::ng-deep .uploadField:hover{background-color:unset;cursor:unset}:host ::ng-deep .p-fileupload-row{border-top:1px solid #dee2e6;border-bottom:1px solid #dee2e6}:host ::ng-deep .p-fileupload-choose,:host ::ng-deep .p-fileupload-row ::ng-deep button,:host ::ng-deep .p-fileupload-buttonbar ::ng-deep button{background-color:var(--primary-color);border-color:var(--primary-color)}:host ::ng-deep .p-fileupload-choose:hover,:host ::ng-deep .p-fileupload-row ::ng-deep button:hover,:host ::ng-deep .p-fileupload-buttonbar ::ng-deep button:hover{background-color:rgba(from var(--primary-color) r g b/.8)}.disabledWidget ::ng-deep *{opacity:.85}:host ::ng-deep .disabledWidget ::ng-deep .p-fileupload-choose:hover,:host ::ng-deep .disabledWidget ::ng-deep .p-fileupload-row ::ng-deep button:hover,:host ::ng-deep .disabledWidget ::ng-deep .p-fileupload-buttonbar ::ng-deep button:hover{background-color:unset;cursor:unset}.p-fileupload-file{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;border:1px solid #dee2e6}.p-file-data{flex:1;display:flex;flex-direction:row;justify-content:flex-start;align-items:center}.fileSize{display:flex;justify-content:flex-start}.fileData{flex:1;display:flex;flex-direction:column;justify-content:flex-end;padding-right:1rem}.uploadData{flex:1;display:flex;flex-direction:row;justify-content:flex-start;gap:1rem}.fileName{text-align:start}.singlePrimeNg ::ng-deep .uploadField{padding:1rem}.uploadIcon{align-content:center}:host ::ng-deep .uploadIcon i{font-size:2rem}:host ::ng-deep .p-fileupload-file i,:host ::ng-deep .uploadIcon i,:host ::ng-deep img{display:flex;justify-content:center;width:3rem}.dataField{display:flex;flex-direction:column;justify-content:flex-start;align-items:baseline}:host ::ng-deep .p-fileupload-content p-progressbar,:host ::ng-deep .p-fileupload ::ng-deep .p-fileupload-buttonbar{display:none!important}:host ::ng-deep .p-fileupload-content{display:flex;flex-direction:column-reverse}:host ::ng-deep .p-fileupload-file{border:unset;border-top:1px solid var(--border-color)}:host ::ng-deep .p-fileupload.p-fileupload-advanced .p-message{margin:unset}.fileButtons{display:flex;flex-direction:row;justify-content:flex-end;gap:.5rem}.fileButtons ::ng-deep .pi{width:unset!important}.removeIcon ::ng-deep i,.removeIcon ::ng-deep mat-icon{color:var(--warninig-color)}.removeIcon ::ng-deep .pi,.downloadIcon ::ng-deep .pi{font-size:1.5rem!important}.removeIcon ::ng-deep mat-icon,.downloadIcon ::ng-deep mat-icon{font-size:2rem}.removeIcon:hover,.downloadIcon:hover{cursor:pointer}smart-icon{display:flex;align-items:center}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i3.SmartIconComponent, selector: "smart-icon", inputs: ["icon", "color", "imageResource"] }, { kind: "component", type: i4.FileUpload, selector: "p-fileUpload", inputs: ["name", "url", "method", "multiple", "accept", "disabled", "auto", "withCredentials", "maxFileSize", "invalidFileSizeMessageSummary", "invalidFileSizeMessageDetail", "invalidFileTypeMessageSummary", "invalidFileTypeMessageDetail", "invalidFileLimitMessageDetail", "invalidFileLimitMessageSummary", "style", "styleClass", "previewWidth", "chooseLabel", "uploadLabel", "cancelLabel", "chooseIcon", "uploadIcon", "cancelIcon", "showUploadButton", "showCancelButton", "mode", "headers", "customUpload", "fileLimit", "uploadStyleClass", "cancelStyleClass", "removeStyleClass", "chooseStyleClass", "files"], outputs: ["onBeforeUpload", "onSend", "onUpload", "onError", "onClear", "onRemove", "onSelect", "onProgress", "uploadHandler", "onImageError", "onRemoveUploadedFile"] }, { kind: "component", type: i5.UiActionButtonComponent, selector: "ui-action-button", inputs: ["disabled", "descriptor", "code", "addedCssClass", "addBasicClasses"], outputs: ["actionClick", "actionDoubleClick"] }] }); }
|
|
71
71
|
}
|
|
72
72
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PrimeFileUploaderComponent, decorators: [{
|
|
73
73
|
type: Component,
|
|
74
|
-
args: [{ selector: 'prime-file-uploader', template: "@if (isMultiple) {\n <p-fileUpload\n #fileUploadPrimeNg\n name=\"files[]\"\n url=\"\"\n (onSelect)=\"select($event)\"\n (onSend)=\"uploadFiles($event)\"\n [multiple]=\"isMultiple\"\n [accept]=\"fileFormatsString\"\n [maxFileSize]=\"maxSizeBytes\"\n [disabled]=\"isDisabled\"\n [ngClass]=\"{ disabledWidget: isDisabled }\"\n uploadLabel=\"Felt\u00F6lt\u00E9s\"\n cancelLabel=\"M\u00E9gsem\"\n chooseLabel=\"V\u00E1laszt\u00E1s\"\n >\n <ng-template pTemplate=\"content\" *ngIf=\"!isMobile()\">\n <ng-container *ngTemplateOutlet=\"uploader\" />\n </ng-template>\n <ng-template pTemplate=\"file\" let-file let-i=\"index\">\n <ng-container *ngTemplateOutlet=\"fileContainer; context: { $implicit: file, i: i }\" />\n </ng-template>\n </p-fileUpload>\n} @else {\n <p-fileUpload\n #fileUploadPrimeNg\n name=\"files[]\"\n url=\"\"\n (onSelect)=\"select($event)\"\n (onSend)=\"uploadFiles($event)\"\n [disabled]=\"isDisabled\"\n [multiple]=\"isMultiple\"\n [accept]=\"fileFormatsString\"\n [maxFileSize]=\"maxSizeBytes\"\n [ngClass]=\"{ singlePrimeNg: true, autoUpload: autoUpload, disabledWidget: isDisabled }\"\n uploadLabel=\"Felt\u00F6lt\u00E9s\"\n cancelLabel=\"M\u00E9gsem\"\n chooseLabel=\"V\u00E1laszt\u00E1s\"\n >\n <ng-template pTemplate=\"content\" *ngIf=\"!isMobile()\">\n <ng-container *ngTemplateOutlet=\"uploader\" />\n </ng-template>\n <ng-template pTemplate=\"file\" let-file let-i=\"index\">\n <ng-container *ngTemplateOutlet=\"fileContainer; context: { $implicit: file, i: i }\" />\n </ng-template>\n </p-fileUpload>\n}\n\n<ng-template #uploader let-file let-i=\"index\">\n <div class=\"uploadField\" (click)=\"fileUploadPrime.choose()\">\n <div class=\"uploadData\"\n ><smart-icon class=\"uploadIcon\" [icon]=\"'upload'\"></smart-icon>\n <div class=\"dataField\">\n <span class=\"title message\">{{ title }}</span>\n <span class=\"message\">{{ subTitle }}</span>\n <span class=\"message\">{{ fileFormatsString }}</span>\n <span class=\"message\"> max {{ maxSizeMb }} Mb</span>\n </div>\n </div>\n @if (autoUpload == false && files && files.length > 0) {\n <ui-action-button [descriptor]=\"uploadButton\" (actionClick)=\"fileUploadPrime.upload()\" />\n }\n </div>\n</ng-template>\n\n<ng-template #fileContainer let-file let-i=\"index\">\n <div class=\"p-fileupload-file\">\n @if (file.objectURL) {\n <img role=\"presentation\" [alt]=\"file.name\" [src]=\"file.objectURL\" width=\"50\" height=\"50\" />\n } @else {\n <i class=\"pi pi-file\" style=\"font-size: 2rem\"></i>\n }\n\n <div class=\"fileData\">\n <span class=\"fileName\">{{ file.name }}</span>\n <span class=\"fileSize\">{{ formatSize(file.size) }}</span>\n </div>\n <div class=\"fileButtons\">\n <smart-icon\n class=\"downloadIcon\"\n icon=\"download\"\n (click)=\"downloadFile(file.dataUri)\"\n ></smart-icon>\n <smart-icon\n class=\"removeIcon\"\n icon=\"trash\"\n (click)=\"fileUploadPrime.remove($event, i)\"\n ></smart-icon>\n </div>\n </div>\n</ng-template>\n", styles: [":host{--border-color: #a6aabd60;--warninig-color: #be2d2e;--def-border-radius: .5rem}:host ::ng-deep .p-fileupload .p-fileupload-buttonbar{display:flex!important;flex-direction:row;justify-content:center;flex-wrap:wrap;gap:1rem}:host ::ng-deep .p-fileupload .p-fileupload-row>div{width:fit-content}:host ::ng-deep .p-fileupload .p-fileupload-content{padding:unset;align-content:center;text-align:center}.message{font-size:smaller;text-align:center;color:#6b7280}.title{font-size:unset;color:var(--primary-color)}.uploadField{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:1rem;padding:.5rem 1rem;cursor:pointer}.uploadField:hover{background-color:rgb(from var(--border-color) r g b / .1)}.disabledWidget ::ng-deep .uploadField:hover{background-color:unset;cursor:unset}:host ::ng-deep .p-fileupload-row{border-top:1px solid #dee2e6;border-bottom:1px solid #dee2e6}:host ::ng-deep .p-fileupload-choose,:host ::ng-deep .p-fileupload-row ::ng-deep button,:host ::ng-deep .p-fileupload-buttonbar ::ng-deep button{background-color:var(--primary-color);border-color:var(--primary-color)}:host ::ng-deep .p-fileupload-choose:hover,:host ::ng-deep .p-fileupload-row ::ng-deep button:hover,:host ::ng-deep .p-fileupload-buttonbar ::ng-deep button:hover{background-color:rgba(from var(--primary-color) r g b/.8)}.disabledWidget ::ng-deep *{opacity:.85}:host ::ng-deep .disabledWidget ::ng-deep .p-fileupload-choose:hover,:host ::ng-deep .disabledWidget ::ng-deep .p-fileupload-row ::ng-deep button:hover,:host ::ng-deep .disabledWidget ::ng-deep .p-fileupload-buttonbar ::ng-deep button:hover{background-color:unset;cursor:unset}.p-fileupload-file{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;border:1px solid #dee2e6}.p-file-data{flex:1;display:flex;flex-direction:row;justify-content:flex-start;align-items:center}.fileSize{display:flex;justify-content:flex-start}.fileData{flex:1;display:flex;flex-direction:column;justify-content:flex-end;padding-right:1rem}.uploadData{flex:1;display:flex;flex-direction:row;justify-content:flex-start;gap:1rem}.fileName{text-align:start}.singlePrimeNg ::ng-deep .uploadField{padding:1rem}.uploadIcon{align-content:center}:host ::ng-deep .uploadIcon i{font-size:2rem}:host ::ng-deep .p-fileupload-file i,:host ::ng-deep .uploadIcon i,:host ::ng-deep img{display:flex;justify-content:center;width:3rem}.dataField{display:flex;flex-direction:column;justify-content:flex-start;align-items:baseline}:host ::ng-deep .p-fileupload-content p-progressbar,:host ::ng-deep .p-fileupload ::ng-deep .p-fileupload-buttonbar{display:none!important}:host ::ng-deep .p-fileupload-content{display:flex;flex-direction:column-reverse}:host ::ng-deep .p-fileupload-file{border:unset;border-top:1px solid var(--border-color)}:host ::ng-deep .p-fileupload.p-fileupload-advanced .p-message{margin:unset}.fileButtons{display:flex;flex-direction:row;justify-content:flex-end;gap:.5rem}.fileButtons ::ng-deep .pi{width:unset!important}.removeIcon ::ng-deep i,.removeIcon ::ng-deep mat-icon{color:var(--warninig-color)}.removeIcon ::ng-deep .pi,.downloadIcon ::ng-deep .pi{font-size:1.5rem!important}.removeIcon ::ng-deep mat-icon,.downloadIcon ::ng-deep mat-icon{font-size:2rem}.removeIcon:hover,.downloadIcon:hover{cursor:pointer}smart-icon{display:flex;align-items:center}\n"] }]
|
|
74
|
+
args: [{ selector: 'prime-file-uploader', template: "@if (isMultiple) {\r\n <p-fileUpload\r\n #fileUploadPrimeNg\r\n name=\"files[]\"\r\n url=\"\"\r\n (onSelect)=\"select($event)\"\r\n (onSend)=\"uploadFiles($event)\"\r\n [multiple]=\"isMultiple\"\r\n [accept]=\"fileFormatsString\"\r\n [maxFileSize]=\"maxSizeBytes\"\r\n [disabled]=\"isDisabled\"\r\n [ngClass]=\"{ disabledWidget: isDisabled }\"\r\n uploadLabel=\"Felt\u00F6lt\u00E9s\"\r\n cancelLabel=\"M\u00E9gsem\"\r\n chooseLabel=\"V\u00E1laszt\u00E1s\"\r\n >\r\n <ng-template pTemplate=\"content\" *ngIf=\"!isMobile()\">\r\n <ng-container *ngTemplateOutlet=\"uploader\" />\r\n </ng-template>\r\n <ng-template pTemplate=\"file\" let-file let-i=\"index\">\r\n <ng-container *ngTemplateOutlet=\"fileContainer; context: { $implicit: file, i: i }\" />\r\n </ng-template>\r\n </p-fileUpload>\r\n} @else {\r\n <p-fileUpload\r\n #fileUploadPrimeNg\r\n name=\"files[]\"\r\n url=\"\"\r\n (onSelect)=\"select($event)\"\r\n (onSend)=\"uploadFiles($event)\"\r\n [disabled]=\"isDisabled\"\r\n [multiple]=\"isMultiple\"\r\n [accept]=\"fileFormatsString\"\r\n [maxFileSize]=\"maxSizeBytes\"\r\n [ngClass]=\"{ singlePrimeNg: true, autoUpload: autoUpload, disabledWidget: isDisabled }\"\r\n uploadLabel=\"Felt\u00F6lt\u00E9s\"\r\n cancelLabel=\"M\u00E9gsem\"\r\n chooseLabel=\"V\u00E1laszt\u00E1s\"\r\n >\r\n <ng-template pTemplate=\"content\" *ngIf=\"!isMobile()\">\r\n <ng-container *ngTemplateOutlet=\"uploader\" />\r\n </ng-template>\r\n <ng-template pTemplate=\"file\" let-file let-i=\"index\">\r\n <ng-container *ngTemplateOutlet=\"fileContainer; context: { $implicit: file, i: i }\" />\r\n </ng-template>\r\n </p-fileUpload>\r\n}\r\n\r\n<ng-template #uploader let-file let-i=\"index\">\r\n <div class=\"uploadField\" (click)=\"fileUploadPrime.choose()\">\r\n <div class=\"uploadData\"\r\n ><smart-icon class=\"uploadIcon\" [icon]=\"'upload'\"></smart-icon>\r\n <div class=\"dataField\">\r\n <span class=\"title message\">{{ title }}</span>\r\n <span class=\"message\">{{ subTitle }}</span>\r\n <span class=\"message\">{{ fileFormatsString }}</span>\r\n <span class=\"message\"> max {{ maxSizeMb }} Mb</span>\r\n </div>\r\n </div>\r\n @if (autoUpload == false && files && files.length > 0) {\r\n <ui-action-button [descriptor]=\"uploadButton\" (actionClick)=\"fileUploadPrime.upload()\" />\r\n }\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #fileContainer let-file let-i=\"index\">\r\n <div class=\"p-fileupload-file\">\r\n @if (file.objectURL) {\r\n <img role=\"presentation\" [alt]=\"file.name\" [src]=\"file.objectURL\" width=\"50\" height=\"50\" />\r\n } @else {\r\n <i class=\"pi pi-file\" style=\"font-size: 2rem\"></i>\r\n }\r\n\r\n <div class=\"fileData\">\r\n <span class=\"fileName\">{{ file.name }}</span>\r\n <span class=\"fileSize\">{{ formatSize(file.size) }}</span>\r\n </div>\r\n <div class=\"fileButtons\">\r\n <smart-icon\r\n class=\"downloadIcon\"\r\n icon=\"download\"\r\n (click)=\"downloadFile(file.dataUri)\"\r\n ></smart-icon>\r\n <smart-icon\r\n class=\"removeIcon\"\r\n icon=\"trash\"\r\n (click)=\"fileUploadPrime.remove($event, i)\"\r\n ></smart-icon>\r\n </div>\r\n </div>\r\n</ng-template>\r\n", styles: [":host{--border-color: #a6aabd60;--warninig-color: #be2d2e;--def-border-radius: .5rem}:host ::ng-deep .p-fileupload .p-fileupload-buttonbar{display:flex!important;flex-direction:row;justify-content:center;flex-wrap:wrap;gap:1rem}:host ::ng-deep .p-fileupload .p-fileupload-row>div{width:fit-content}:host ::ng-deep .p-fileupload .p-fileupload-content{padding:unset;align-content:center;text-align:center}.message{font-size:smaller;text-align:center;color:#6b7280}.title{font-size:unset;color:var(--primary-color)}.uploadField{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:1rem;padding:.5rem 1rem;cursor:pointer}.uploadField:hover{background-color:rgb(from var(--border-color) r g b / .1)}.disabledWidget ::ng-deep .uploadField:hover{background-color:unset;cursor:unset}:host ::ng-deep .p-fileupload-row{border-top:1px solid #dee2e6;border-bottom:1px solid #dee2e6}:host ::ng-deep .p-fileupload-choose,:host ::ng-deep .p-fileupload-row ::ng-deep button,:host ::ng-deep .p-fileupload-buttonbar ::ng-deep button{background-color:var(--primary-color);border-color:var(--primary-color)}:host ::ng-deep .p-fileupload-choose:hover,:host ::ng-deep .p-fileupload-row ::ng-deep button:hover,:host ::ng-deep .p-fileupload-buttonbar ::ng-deep button:hover{background-color:rgba(from var(--primary-color) r g b/.8)}.disabledWidget ::ng-deep *{opacity:.85}:host ::ng-deep .disabledWidget ::ng-deep .p-fileupload-choose:hover,:host ::ng-deep .disabledWidget ::ng-deep .p-fileupload-row ::ng-deep button:hover,:host ::ng-deep .disabledWidget ::ng-deep .p-fileupload-buttonbar ::ng-deep button:hover{background-color:unset;cursor:unset}.p-fileupload-file{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;border:1px solid #dee2e6}.p-file-data{flex:1;display:flex;flex-direction:row;justify-content:flex-start;align-items:center}.fileSize{display:flex;justify-content:flex-start}.fileData{flex:1;display:flex;flex-direction:column;justify-content:flex-end;padding-right:1rem}.uploadData{flex:1;display:flex;flex-direction:row;justify-content:flex-start;gap:1rem}.fileName{text-align:start}.singlePrimeNg ::ng-deep .uploadField{padding:1rem}.uploadIcon{align-content:center}:host ::ng-deep .uploadIcon i{font-size:2rem}:host ::ng-deep .p-fileupload-file i,:host ::ng-deep .uploadIcon i,:host ::ng-deep img{display:flex;justify-content:center;width:3rem}.dataField{display:flex;flex-direction:column;justify-content:flex-start;align-items:baseline}:host ::ng-deep .p-fileupload-content p-progressbar,:host ::ng-deep .p-fileupload ::ng-deep .p-fileupload-buttonbar{display:none!important}:host ::ng-deep .p-fileupload-content{display:flex;flex-direction:column-reverse}:host ::ng-deep .p-fileupload-file{border:unset;border-top:1px solid var(--border-color)}:host ::ng-deep .p-fileupload.p-fileupload-advanced .p-message{margin:unset}.fileButtons{display:flex;flex-direction:row;justify-content:flex-end;gap:.5rem}.fileButtons ::ng-deep .pi{width:unset!important}.removeIcon ::ng-deep i,.removeIcon ::ng-deep mat-icon{color:var(--warninig-color)}.removeIcon ::ng-deep .pi,.downloadIcon ::ng-deep .pi{font-size:1.5rem!important}.removeIcon ::ng-deep mat-icon,.downloadIcon ::ng-deep mat-icon{font-size:2rem}.removeIcon:hover,.downloadIcon:hover{cursor:pointer}smart-icon{display:flex;align-items:center}\n"] }]
|
|
75
75
|
}], propDecorators: { fileUploadPrime: [{
|
|
76
76
|
type: ViewChild,
|
|
77
77
|
args: ['fileUploadPrimeNg']
|
|
@@ -92,4 +92,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
|
|
|
92
92
|
}], uploadFilesEvent: [{
|
|
93
93
|
type: Output
|
|
94
94
|
}] } });
|
|
95
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbWUtZmlsZS11cGxvYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi92aWV3LWNvbnRleHQvc21hcnQtdWktYWN0aW9uL2NvbXBvbmVudHMvdXBsb2FkLXdpZGdldC9wcmltZS1maWxlLXVwbG9hZGVyL3ByaW1lLWZpbGUtdXBsb2FkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvdmlldy1jb250ZXh0L3NtYXJ0LXVpLWFjdGlvbi9jb21wb25lbnRzL3VwbG9hZC13aWRnZXQvcHJpbWUtZmlsZS11cGxvYWRlci9wcmltZS1maWxlLXVwbG9hZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWxGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzNELE9BQU8sRUFDTCxZQUFZLEVBQ1osa0JBQWtCLEdBRW5CLE1BQU0sOENBQThDLENBQUM7Ozs7Ozs7QUFPdEQsTUFBTSxPQUFPLDBCQUEwQjtJQUx2QztRQVNXLGVBQVUsR0FBYSxLQUFLLENBQUM7UUFDN0IsY0FBUyxHQUFXLEVBQUUsQ0FBQztRQUl2QixlQUFVLEdBQWEsS0FBSyxDQUFDO1FBYTVCLHFCQUFnQixHQUFHLElBQUksWUFBWSxFQUV6QyxDQUFDO0tBeUROO0lBbkVDLFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLElBQUksdUJBQXVCLENBQUM7UUFDbkQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxJQUFJLHVC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dHRlciwgSW5wdXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGaWxlVXBsb2FkIH0gZnJvbSAncHJpbWVuZy9maWxldXBsb2FkJztcbmltcG9ydCB7IFVwbG9hZFdpZGdldFV0aWxzIH0gZnJvbSAnLi4vdXBsb2FkLXdpZGdldC51dGlscyc7XG5pbXBvcnQge1xuICBJY29uUG9zaXRpb24sXG4gIFVpQWN0aW9uQnV0dG9uVHlwZSxcbiAgVWlBY3Rpb25EZXNjcmlwdG9yLFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi92aWV3LWNvbnRleHQvYXBpL21vZGVsL21vZGVscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ByaW1lLWZpbGUtdXBsb2FkZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vcHJpbWUtZmlsZS11cGxvYWRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9wcmltZS1maWxlLXVwbG9hZGVyLmNvbXBvbmVudC5jc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBQcmltZUZpbGVVcGxvYWRlckNvbXBvbmVudCB7XG4gIEBWaWV3Q2hpbGQoJ2ZpbGVVcGxvYWRQcmltZU5nJykgZmlsZVVwbG9hZFByaW1lITogRmlsZVVwbG9hZDtcblxuICBASW5wdXQoKSBpc011bHRpcGxlITogYm9vbGVhbjtcbiAgQElucHV0KCkgYXV0b1VwbG9hZD86IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgbWF4U2l6ZU1iOiBudW1iZXIgPSAyNTtcbiAgQElucHV0KCkgZmlsZUZvcm1hdHM/OiBzdHJpbmdbXTtcbiAgQElucHV0KCkgdGl0bGU/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHN1YlRpdGxlPzogc3RyaW5nO1xuICBASW5wdXQoKSBpc0Rpc2FibGVkPzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIG1heFNpemVCeXRlcz86IG51bWJlcjtcbiAgZmlsZUZvcm1hdHNTdHJpbmc/OiBzdHJpbmc7XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy50aXRsZSA9IHRoaXMudGl0bGUgPz8gJ0Rva3VtZW50dW0gaG96esOhYWTDoXNhJztcbiAgICB0aGlzLnN1YlRpdGxlID0gdGhpcy5zdWJUaXRsZSA/PyAndGFsbMOzesOhcyB2YWd5IGJlaMO6esOhcyc7XG4gICAgdGhpcy5tYXhTaXplQnl0ZXMgPSB0aGlzLm1heFNpemVNYiAqIDEwMjQgKiAxMDI0O1xuXG4gICAgdGhpcy5maWxlRm9ybWF0c1N0cmluZyA9IHRoaXMuZmlsZUZvcm1hdHM/LmpvaW4oJywgJykgPz8gJyc7XG4gIH1cblxuICBAT3V0cHV0KCkgdXBsb2FkRmlsZXNFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8e1xuICAgIGZpbGVzOiBhbnlbXTtcbiAgfT4oKTtcblxuICBpc01vYmlsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gL2lQaG9uZXxpUGFkfGlQb2R8QW5kcm9pZC9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCk7XG4gIH1cblxuICBjbGVhcigpOiB2b2lkIHtcbiAgICB0aGlzLmZpbGVVcGxvYWRQcmltZS5jbGVhcigpO1xuICB9XG4gIG9uRmlsZVNlbGVjdChldmVudDogYW55KTogdm9pZCB7XG4gICAgdGhpcy5maWxlVXBsb2FkUHJpbWUub25GaWxlU2VsZWN0KGV2ZW50KTtcbiAgfVxuXG4gIHNlbGVjdChldmVudDogYW55KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuYXV0b1VwbG9hZCAmJiBldmVudC5jdXJyZW50RmlsZXMubGVuZ3RoID09IGV2ZW50LmZpbGVzLmxlbmd0aCkge1xuICAgICAgdGhpcy51cGxvYWRGaWxlcyhldmVudCk7XG4gICAgfVxuICB9XG5cbiAgdXBsb2FkRmlsZXMoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIHRoaXMudXBsb2FkRmlsZXNFdmVudC5lbWl0KHtcbiAgICAgIGZpbGVzOiB0aGlzLmZpbGVVcGxvYWRQcmltZS5maWxlcyxcbiAgICB9KTtcblxuICAgIHRoaXMuZmlsZVVwbG9hZFByaW1lLmNsZWFyKCk7XG4gIH1cblxuICBkb3dubG9hZEZpbGUoZmlsZTogRmlsZSkge1xuICAgIGxldCB1cmwgPSB3aW5kb3cuVVJMLmNyZWF0ZU9iamVjdFVSTChmaWxlKTtcbiAgICBsZXQgYSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTtcbiAgICBhLmhyZWYgPSB1cmw7XG4gICAgYS5kb3dubG9hZCA9IGZpbGUubmFtZTtcbiAgICBhLmNsaWNrKCk7XG4gICAgd2luZG93LlVSTC5yZXZva2VPYmplY3RVUkwodXJsKTtcbiAgfVxuXG4gIGZvcm1hdFNpemUoYnl0ZXM6IG51bWJlcik6IHN0cmluZyB7XG4gICAgcmV0dXJuIFVwbG9hZFdpZGdldFV0aWxzLmZvcm1hdFNpemUoYnl0ZXMpO1xuICB9XG5cbiAgZ2V0IGZpbGVzKCk6IGFueVtdIHtcbiAgICByZXR1cm4gdGhpcy5maWxlVXBsb2FkUHJpbWU/LmZpbGVzO1xuICB9XG5cbiAgc2V0IGZpbGVzKGZpbGVzOiBhbnlbXSkge1xuICAgIHRoaXMuZmlsZVVwbG9hZFByaW1lLmZpbGVzID0gZmlsZXM7XG4gIH1cblxuICBnZXQgdXBsb2FkQnV0dG9uKCk6IFVpQWN0aW9uRGVzY3JpcHRvciB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRpdGxlOiAnRmVsdMO2bHTDqXMnLFxuICAgICAgY29sb3I6ICdwcmltYXJ5JyxcbiAgICAgIHR5cGU6IFVpQWN0aW9uQnV0dG9uVHlwZS5SQUlTRUQsXG4gICAgICBpY29uOiAndXBsb2FkJyxcbiAgICAgIGljb25Qb3NpdGlvbjogSWNvblBvc2l0aW9uLlBSRSxcbiAgICB9O1xuICB9XG59XG4iLCJAaWYgKGlzTXVsdGlwbGUpIHtcbiAgPHAtZmlsZVVwbG9hZFxuICAgICNmaWxlVXBsb2FkUHJpbWVOZ1xuICAgIG5hbWU9XCJmaWxlc1tdXCJcbiAgICB1cmw9XCJcIlxuICAgIChvblNlbGVjdCk9XCJzZWxlY3QoJGV2ZW50KVwiXG4gICAgKG9uU2VuZCk9XCJ1cGxvYWRGaWxlcygkZXZlbnQpXCJcbiAgICBbbXVsdGlwbGVdPVwiaXNNdWx0aXBsZVwiXG4gICAgW2FjY2VwdF09XCJmaWxlRm9ybWF0c1N0cmluZ1wiXG4gICAgW21heEZpbGVTaXplXT1cIm1heFNpemVCeXRlc1wiXG4gICAgW2Rpc2FibGVkXT1cImlzRGlzYWJsZWRcIlxuICAgIFtuZ0NsYXNzXT1cInsgZGlzYWJsZWRXaWRnZXQ6IGlzRGlzYWJsZWQgfVwiXG4gICAgdXBsb2FkTGFiZWw9XCJGZWx0w7ZsdMOpc1wiXG4gICAgY2FuY2VsTGFiZWw9XCJNw6lnc2VtXCJcbiAgICBjaG9vc2VMYWJlbD1cIlbDoWxhc3p0w6FzXCJcbiAgPlxuICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJjb250ZW50XCIgKm5nSWY9XCIhaXNNb2JpbGUoKVwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInVwbG9hZGVyXCIgLz5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJmaWxlXCIgbGV0LWZpbGUgbGV0LWk9XCJpbmRleFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImZpbGVDb250YWluZXI7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBmaWxlLCBpOiBpIH1cIiAvPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvcC1maWxlVXBsb2FkPlxufSBAZWxzZSB7XG4gIDxwLWZpbGVVcGxvYWRcbiAgICAjZmlsZVVwbG9hZFByaW1lTmdcbiAgICBuYW1lPVwiZmlsZXNbXVwiXG4gICAgdXJsPVwiXCJcbiAgICAob25TZWxlY3QpPVwic2VsZWN0KCRldmVudClcIlxuICAgIChvblNlbmQpPVwidXBsb2FkRmlsZXMoJGV2ZW50KVwiXG4gICAgW2Rpc2FibGVkXT1cImlzRGlzYWJsZWRcIlxuICAgIFttdWx0aXBsZV09XCJpc011bHRpcGxlXCJcbiAgICBbYWNjZXB0XT1cImZpbGVGb3JtYXRzU3RyaW5nXCJcbiAgICBbbWF4RmlsZVNpemVdPVwibWF4U2l6ZUJ5dGVzXCJcbiAgICBbbmdDbGFzc109XCJ7IHNpbmdsZVByaW1lTmc6IHRydWUsIGF1dG9VcGxvYWQ6IGF1dG9VcGxvYWQsIGRpc2FibGVkV2lkZ2V0OiBpc0Rpc2FibGVkIH1cIlxuICAgIHVwbG9hZExhYmVsPVwiRmVsdMO2bHTDqXNcIlxuICAgIGNhbmNlbExhYmVsPVwiTcOpZ3NlbVwiXG4gICAgY2hvb3NlTGFiZWw9XCJWw6FsYXN6dMOhc1wiXG4gID5cbiAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiY29udGVudFwiICpuZ0lmPVwiIWlzTW9iaWxlKClcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ1cGxvYWRlclwiIC8+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiZmlsZVwiIGxldC1maWxlIGxldC1pPVwiaW5kZXhcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmaWxlQ29udGFpbmVyOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogZmlsZSwgaTogaSB9XCIgLz5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L3AtZmlsZVVwbG9hZD5cbn1cblxuPG5nLXRlbXBsYXRlICN1cGxvYWRlciBsZXQtZmlsZSBsZXQtaT1cImluZGV4XCI+XG4gIDxkaXYgY2xhc3M9XCJ1cGxvYWRGaWVsZFwiIChjbGljayk9XCJmaWxlVXBsb2FkUHJpbWUuY2hvb3NlKClcIj5cbiAgICA8ZGl2IGNsYXNzPVwidXBsb2FkRGF0YVwiXG4gICAgICA+PHNtYXJ0LWljb24gY2xhc3M9XCJ1cGxvYWRJY29uXCIgW2ljb25dPVwiJ3VwbG9hZCdcIj48L3NtYXJ0LWljb24+XG4gICAgICA8ZGl2IGNsYXNzPVwiZGF0YUZpZWxkXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwidGl0bGUgbWVzc2FnZVwiPnt7IHRpdGxlIH19PC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cIm1lc3NhZ2VcIj57eyBzdWJUaXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJtZXNzYWdlXCI+e3sgZmlsZUZvcm1hdHNTdHJpbmcgfX08L3NwYW4+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwibWVzc2FnZVwiPiBtYXgge3sgbWF4U2l6ZU1iIH19IE1iPC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgQGlmIChhdXRvVXBsb2FkID09IGZhbHNlICYmIGZpbGVzICYmIGZpbGVzLmxlbmd0aCA+IDApIHtcbiAgICAgIDx1aS1hY3Rpb24tYnV0dG9uIFtkZXNjcmlwdG9yXT1cInVwbG9hZEJ1dHRvblwiIChhY3Rpb25DbGljayk9XCJmaWxlVXBsb2FkUHJpbWUudXBsb2FkKClcIiAvPlxuICAgIH1cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2ZpbGVDb250YWluZXIgbGV0LWZpbGUgbGV0LWk9XCJpbmRleFwiPlxuICA8ZGl2IGNsYXNzPVwicC1maWxldXBsb2FkLWZpbGVcIj5cbiAgICBAaWYgKGZpbGUub2JqZWN0VVJMKSB7XG4gICAgICA8aW1nIHJvbGU9XCJwcmVzZW50YXRpb25cIiBbYWx0XT1cImZpbGUubmFtZVwiIFtzcmNdPVwiZmlsZS5vYmplY3RVUkxcIiB3aWR0aD1cIjUwXCIgaGVpZ2h0PVwiNTBcIiAvPlxuICAgIH0gQGVsc2Uge1xuICAgICAgPGkgY2xhc3M9XCJwaSBwaS1maWxlXCIgc3R5bGU9XCJmb250LXNpemU6IDJyZW1cIj48L2k+XG4gICAgfVxuXG4gICAgPGRpdiBjbGFzcz1cImZpbGVEYXRhXCI+XG4gICAgICA8c3BhbiBjbGFzcz1cImZpbGVOYW1lXCI+e3sgZmlsZS5uYW1lIH19PC9zcGFuPlxuICAgICAgPHNwYW4gY2xhc3M9XCJmaWxlU2l6ZVwiPnt7IGZvcm1hdFNpemUoZmlsZS5zaXplKSB9fTwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZmlsZUJ1dHRvbnNcIj5cbiAgICAgIDxzbWFydC1pY29uXG4gICAgICAgIGNsYXNzPVwiZG93bmxvYWRJY29uXCJcbiAgICAgICAgaWNvbj1cImRvd25sb2FkXCJcbiAgICAgICAgKGNsaWNrKT1cImRvd25sb2FkRmlsZShmaWxlLmRhdGFVcmkpXCJcbiAgICAgID48L3NtYXJ0LWljb24+XG4gICAgICA8c21hcnQtaWNvblxuICAgICAgICBjbGFzcz1cInJlbW92ZUljb25cIlxuICAgICAgICBpY29uPVwidHJhc2hcIlxuICAgICAgICAoY2xpY2spPVwiZmlsZVVwbG9hZFByaW1lLnJlbW92ZSgkZXZlbnQsIGkpXCJcbiAgICAgID48L3NtYXJ0LWljb24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbWUtZmlsZS11cGxvYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi92aWV3LWNvbnRleHQvc21hcnQtdWktYWN0aW9uL2NvbXBvbmVudHMvdXBsb2FkLXdpZGdldC9wcmltZS1maWxlLXVwbG9hZGVyL3ByaW1lLWZpbGUtdXBsb2FkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvdmlldy1jb250ZXh0L3NtYXJ0LXVpLWFjdGlvbi9jb21wb25lbnRzL3VwbG9hZC13aWRnZXQvcHJpbWUtZmlsZS11cGxvYWRlci9wcmltZS1maWxlLXVwbG9hZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWxGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzNELE9BQU8sRUFDTCxZQUFZLEVBQ1osa0JBQWtCLEdBRW5CLE1BQU0sOENBQThDLENBQUM7Ozs7Ozs7QUFPdEQsTUFBTSxPQUFPLDBCQUEwQjtJQUx2QztRQVNXLGVBQVUsR0FBYSxLQUFLLENBQUM7UUFDN0IsY0FBUyxHQUFXLEVBQUUsQ0FBQztRQUl2QixlQUFVLEdBQWEsS0FBSyxDQUFDO1FBYTVCLHFCQUFnQixHQUFHLElBQUksWUFBWSxFQUV6QyxDQUFDO0tBeUROO0lBbkVDLFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLElBQUksdUJBQXVCLENBQUM7UUFDbkQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxJQUFJLHVC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dHRlciwgSW5wdXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZpbGVVcGxvYWQgfSBmcm9tICdwcmltZW5nL2ZpbGV1cGxvYWQnO1xyXG5pbXBvcnQgeyBVcGxvYWRXaWRnZXRVdGlscyB9IGZyb20gJy4uL3VwbG9hZC13aWRnZXQudXRpbHMnO1xyXG5pbXBvcnQge1xyXG4gIEljb25Qb3NpdGlvbixcclxuICBVaUFjdGlvbkJ1dHRvblR5cGUsXHJcbiAgVWlBY3Rpb25EZXNjcmlwdG9yLFxyXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uL3ZpZXctY29udGV4dC9hcGkvbW9kZWwvbW9kZWxzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAncHJpbWUtZmlsZS11cGxvYWRlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3ByaW1lLWZpbGUtdXBsb2FkZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9wcmltZS1maWxlLXVwbG9hZGVyLmNvbXBvbmVudC5jc3MnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUHJpbWVGaWxlVXBsb2FkZXJDb21wb25lbnQge1xyXG4gIEBWaWV3Q2hpbGQoJ2ZpbGVVcGxvYWRQcmltZU5nJykgZmlsZVVwbG9hZFByaW1lITogRmlsZVVwbG9hZDtcclxuXHJcbiAgQElucHV0KCkgaXNNdWx0aXBsZSE6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgYXV0b1VwbG9hZD86IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBtYXhTaXplTWI6IG51bWJlciA9IDI1O1xyXG4gIEBJbnB1dCgpIGZpbGVGb3JtYXRzPzogc3RyaW5nW107XHJcbiAgQElucHV0KCkgdGl0bGU/OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgc3ViVGl0bGU/OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaXNEaXNhYmxlZD86IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgbWF4U2l6ZUJ5dGVzPzogbnVtYmVyO1xyXG4gIGZpbGVGb3JtYXRzU3RyaW5nPzogc3RyaW5nO1xyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMudGl0bGUgPSB0aGlzLnRpdGxlID8/ICdEb2t1bWVudHVtIGhvenrDoWFkw6FzYSc7XHJcbiAgICB0aGlzLnN1YlRpdGxlID0gdGhpcy5zdWJUaXRsZSA/PyAndGFsbMOzesOhcyB2YWd5IGJlaMO6esOhcyc7XHJcbiAgICB0aGlzLm1heFNpemVCeXRlcyA9IHRoaXMubWF4U2l6ZU1iICogMTAyNCAqIDEwMjQ7XHJcblxyXG4gICAgdGhpcy5maWxlRm9ybWF0c1N0cmluZyA9IHRoaXMuZmlsZUZvcm1hdHM/LmpvaW4oJywgJykgPz8gJyc7XHJcbiAgfVxyXG5cclxuICBAT3V0cHV0KCkgdXBsb2FkRmlsZXNFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8e1xyXG4gICAgZmlsZXM6IGFueVtdO1xyXG4gIH0+KCk7XHJcblxyXG4gIGlzTW9iaWxlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIC9pUGhvbmV8aVBhZHxpUG9kfEFuZHJvaWQvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpO1xyXG4gIH1cclxuXHJcbiAgY2xlYXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLmZpbGVVcGxvYWRQcmltZS5jbGVhcigpO1xyXG4gIH1cclxuICBvbkZpbGVTZWxlY3QoZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5maWxlVXBsb2FkUHJpbWUub25GaWxlU2VsZWN0KGV2ZW50KTtcclxuICB9XHJcblxyXG4gIHNlbGVjdChldmVudDogYW55KTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5hdXRvVXBsb2FkICYmIGV2ZW50LmN1cnJlbnRGaWxlcy5sZW5ndGggPT0gZXZlbnQuZmlsZXMubGVuZ3RoKSB7XHJcbiAgICAgIHRoaXMudXBsb2FkRmlsZXMoZXZlbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdXBsb2FkRmlsZXMoZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy51cGxvYWRGaWxlc0V2ZW50LmVtaXQoe1xyXG4gICAgICBmaWxlczogdGhpcy5maWxlVXBsb2FkUHJpbWUuZmlsZXMsXHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmZpbGVVcGxvYWRQcmltZS5jbGVhcigpO1xyXG4gIH1cclxuXHJcbiAgZG93bmxvYWRGaWxlKGZpbGU6IEZpbGUpIHtcclxuICAgIGxldCB1cmwgPSB3aW5kb3cuVVJMLmNyZWF0ZU9iamVjdFVSTChmaWxlKTtcclxuICAgIGxldCBhID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xyXG4gICAgYS5ocmVmID0gdXJsO1xyXG4gICAgYS5kb3dubG9hZCA9IGZpbGUubmFtZTtcclxuICAgIGEuY2xpY2soKTtcclxuICAgIHdpbmRvdy5VUkwucmV2b2tlT2JqZWN0VVJMKHVybCk7XHJcbiAgfVxyXG5cclxuICBmb3JtYXRTaXplKGJ5dGVzOiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIFVwbG9hZFdpZGdldFV0aWxzLmZvcm1hdFNpemUoYnl0ZXMpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGZpbGVzKCk6IGFueVtdIHtcclxuICAgIHJldHVybiB0aGlzLmZpbGVVcGxvYWRQcmltZT8uZmlsZXM7XHJcbiAgfVxyXG5cclxuICBzZXQgZmlsZXMoZmlsZXM6IGFueVtdKSB7XHJcbiAgICB0aGlzLmZpbGVVcGxvYWRQcmltZS5maWxlcyA9IGZpbGVzO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHVwbG9hZEJ1dHRvbigpOiBVaUFjdGlvbkRlc2NyaXB0b3Ige1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgdGl0bGU6ICdGZWx0w7ZsdMOpcycsXHJcbiAgICAgIGNvbG9yOiAncHJpbWFyeScsXHJcbiAgICAgIHR5cGU6IFVpQWN0aW9uQnV0dG9uVHlwZS5SQUlTRUQsXHJcbiAgICAgIGljb246ICd1cGxvYWQnLFxyXG4gICAgICBpY29uUG9zaXRpb246IEljb25Qb3NpdGlvbi5QUkUsXHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4iLCJAaWYgKGlzTXVsdGlwbGUpIHtcclxuICA8cC1maWxlVXBsb2FkXHJcbiAgICAjZmlsZVVwbG9hZFByaW1lTmdcclxuICAgIG5hbWU9XCJmaWxlc1tdXCJcclxuICAgIHVybD1cIlwiXHJcbiAgICAob25TZWxlY3QpPVwic2VsZWN0KCRldmVudClcIlxyXG4gICAgKG9uU2VuZCk9XCJ1cGxvYWRGaWxlcygkZXZlbnQpXCJcclxuICAgIFttdWx0aXBsZV09XCJpc011bHRpcGxlXCJcclxuICAgIFthY2NlcHRdPVwiZmlsZUZvcm1hdHNTdHJpbmdcIlxyXG4gICAgW21heEZpbGVTaXplXT1cIm1heFNpemVCeXRlc1wiXHJcbiAgICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZFwiXHJcbiAgICBbbmdDbGFzc109XCJ7IGRpc2FibGVkV2lkZ2V0OiBpc0Rpc2FibGVkIH1cIlxyXG4gICAgdXBsb2FkTGFiZWw9XCJGZWx0w7ZsdMOpc1wiXHJcbiAgICBjYW5jZWxMYWJlbD1cIk3DqWdzZW1cIlxyXG4gICAgY2hvb3NlTGFiZWw9XCJWw6FsYXN6dMOhc1wiXHJcbiAgPlxyXG4gICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImNvbnRlbnRcIiAqbmdJZj1cIiFpc01vYmlsZSgpXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ1cGxvYWRlclwiIC8+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImZpbGVcIiBsZXQtZmlsZSBsZXQtaT1cImluZGV4XCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmaWxlQ29udGFpbmVyOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogZmlsZSwgaTogaSB9XCIgLz5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgPC9wLWZpbGVVcGxvYWQ+XHJcbn0gQGVsc2Uge1xyXG4gIDxwLWZpbGVVcGxvYWRcclxuICAgICNmaWxlVXBsb2FkUHJpbWVOZ1xyXG4gICAgbmFtZT1cImZpbGVzW11cIlxyXG4gICAgdXJsPVwiXCJcclxuICAgIChvblNlbGVjdCk9XCJzZWxlY3QoJGV2ZW50KVwiXHJcbiAgICAob25TZW5kKT1cInVwbG9hZEZpbGVzKCRldmVudClcIlxyXG4gICAgW2Rpc2FibGVkXT1cImlzRGlzYWJsZWRcIlxyXG4gICAgW211bHRpcGxlXT1cImlzTXVsdGlwbGVcIlxyXG4gICAgW2FjY2VwdF09XCJmaWxlRm9ybWF0c1N0cmluZ1wiXHJcbiAgICBbbWF4RmlsZVNpemVdPVwibWF4U2l6ZUJ5dGVzXCJcclxuICAgIFtuZ0NsYXNzXT1cInsgc2luZ2xlUHJpbWVOZzogdHJ1ZSwgYXV0b1VwbG9hZDogYXV0b1VwbG9hZCwgZGlzYWJsZWRXaWRnZXQ6IGlzRGlzYWJsZWQgfVwiXHJcbiAgICB1cGxvYWRMYWJlbD1cIkZlbHTDtmx0w6lzXCJcclxuICAgIGNhbmNlbExhYmVsPVwiTcOpZ3NlbVwiXHJcbiAgICBjaG9vc2VMYWJlbD1cIlbDoWxhc3p0w6FzXCJcclxuICA+XHJcbiAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiY29udGVudFwiICpuZ0lmPVwiIWlzTW9iaWxlKClcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInVwbG9hZGVyXCIgLz5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiZmlsZVwiIGxldC1maWxlIGxldC1pPVwiaW5kZXhcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImZpbGVDb250YWluZXI7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBmaWxlLCBpOiBpIH1cIiAvPlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuICA8L3AtZmlsZVVwbG9hZD5cclxufVxyXG5cclxuPG5nLXRlbXBsYXRlICN1cGxvYWRlciBsZXQtZmlsZSBsZXQtaT1cImluZGV4XCI+XHJcbiAgPGRpdiBjbGFzcz1cInVwbG9hZEZpZWxkXCIgKGNsaWNrKT1cImZpbGVVcGxvYWRQcmltZS5jaG9vc2UoKVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInVwbG9hZERhdGFcIlxyXG4gICAgICA+PHNtYXJ0LWljb24gY2xhc3M9XCJ1cGxvYWRJY29uXCIgW2ljb25dPVwiJ3VwbG9hZCdcIj48L3NtYXJ0LWljb24+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJkYXRhRmllbGRcIj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cInRpdGxlIG1lc3NhZ2VcIj57eyB0aXRsZSB9fTwvc3Bhbj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cIm1lc3NhZ2VcIj57eyBzdWJUaXRsZSB9fTwvc3Bhbj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cIm1lc3NhZ2VcIj57eyBmaWxlRm9ybWF0c1N0cmluZyB9fTwvc3Bhbj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cIm1lc3NhZ2VcIj4gbWF4IHt7IG1heFNpemVNYiB9fSBNYjwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIEBpZiAoYXV0b1VwbG9hZCA9PSBmYWxzZSAmJiBmaWxlcyAmJiBmaWxlcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIDx1aS1hY3Rpb24tYnV0dG9uIFtkZXNjcmlwdG9yXT1cInVwbG9hZEJ1dHRvblwiIChhY3Rpb25DbGljayk9XCJmaWxlVXBsb2FkUHJpbWUudXBsb2FkKClcIiAvPlxyXG4gICAgfVxyXG4gIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICNmaWxlQ29udGFpbmVyIGxldC1maWxlIGxldC1pPVwiaW5kZXhcIj5cclxuICA8ZGl2IGNsYXNzPVwicC1maWxldXBsb2FkLWZpbGVcIj5cclxuICAgIEBpZiAoZmlsZS5vYmplY3RVUkwpIHtcclxuICAgICAgPGltZyByb2xlPVwicHJlc2VudGF0aW9uXCIgW2FsdF09XCJmaWxlLm5hbWVcIiBbc3JjXT1cImZpbGUub2JqZWN0VVJMXCIgd2lkdGg9XCI1MFwiIGhlaWdodD1cIjUwXCIgLz5cclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICA8aSBjbGFzcz1cInBpIHBpLWZpbGVcIiBzdHlsZT1cImZvbnQtc2l6ZTogMnJlbVwiPjwvaT5cclxuICAgIH1cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwiZmlsZURhdGFcIj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJmaWxlTmFtZVwiPnt7IGZpbGUubmFtZSB9fTwvc3Bhbj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJmaWxlU2l6ZVwiPnt7IGZvcm1hdFNpemUoZmlsZS5zaXplKSB9fTwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImZpbGVCdXR0b25zXCI+XHJcbiAgICAgIDxzbWFydC1pY29uXHJcbiAgICAgICAgY2xhc3M9XCJkb3dubG9hZEljb25cIlxyXG4gICAgICAgIGljb249XCJkb3dubG9hZFwiXHJcbiAgICAgICAgKGNsaWNrKT1cImRvd25sb2FkRmlsZShmaWxlLmRhdGFVcmkpXCJcclxuICAgICAgPjwvc21hcnQtaWNvbj5cclxuICAgICAgPHNtYXJ0LWljb25cclxuICAgICAgICBjbGFzcz1cInJlbW92ZUljb25cIlxyXG4gICAgICAgIGljb249XCJ0cmFzaFwiXHJcbiAgICAgICAgKGNsaWNrKT1cImZpbGVVcGxvYWRQcmltZS5yZW1vdmUoJGV2ZW50LCBpKVwiXHJcbiAgICAgID48L3NtYXJ0LWljb24+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
|
|
@@ -106,11 +106,11 @@ export class UploadWidgetComponent {
|
|
|
106
106
|
};
|
|
107
107
|
}
|
|
108
108
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: UploadWidgetComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: COMPONENT_LIBRARY, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
109
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.11", type: UploadWidgetComponent, selector: "smart-upload-widget", inputs: { uploadDescriptor: "uploadDescriptor", isMultiple: "isMultiple", isDisabled: "isDisabled" }, outputs: { uploadFilesEvent: "uploadFilesEvent" }, viewQueries: [{ propertyName: "fileUploadPrime", first: true, predicate: ["fileUploadPrimeNg"], descendants: true }, { propertyName: "fileUploadMaterial", first: true, predicate: ["fileUploadMaterial"], descendants: true }], ngImport: i0, template: "<div class=\"sb4UploadWidget\">\n <!-- IMAGE TYPE WIDGET -->\n <ng-container *ngIf=\"widgetNeeded(uploadWidgetType.IMAGE) || widgetNeeded(uploadWidgetType.ALL)\">\n <photo-capture-widget\n [maxFileSize]=\"maxSizeMb * 1024 * 1024\"\n (photoCaptured)=\"uploadImage($event)\"\n >\n </photo-capture-widget>\n </ng-container>\n\n <!-- SOUND TYPE WIDGET -->\n <ng-container *ngIf=\"widgetNeeded(uploadWidgetType.SOUND) || widgetNeeded(uploadWidgetType.ALL)\">\n <voice-record-widget (recordingSaved)=\"uploadRecording($event)\"> </voice-record-widget>\n </ng-container>\n @if(compLib === componentLibrary.PRIMENG) {\n <prime-file-uploader\n #fileUploadPrimeNg\n [isMultiple]=\"isMultiple\"\n [autoUpload]=\"autoUpload\"\n [fileFormats]=\"fileFormats\"\n [maxSizeMb]=\"maxSizeMb\"\n [title]=\"uploadDescriptor?.title\"\n [subTitle]=\"uploadDescriptor?.description\"\n [isDisabled]=\"isDisabled\"\n (uploadFilesEvent)=\"uploadFiles($event)\"\n />\n }@else{\n <smartfileuploader\n #fileUploadMaterial\n [i18n]=\"i18n\"\n [fileFormats]=\"fileFormats\"\n [maxSizeMb]=\"maxSizeMb\"\n [uploadCallback]=\"upload.bind(this)\"\n [isMultiple]=\"isMultiple\"\n [autoUpload]=\"autoUpload\"\n [isDisabled]=\"isDisabled\"\n ></smartfileuploader>\n }\n</div>\n", styles: ["photo-capture-widget{width:100%;max-width:100%;overflow:hidden;display:flex;flex-direction:column;align-items:center}@media (max-width: 900px){:host{width:100%}}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.SmartfileuploaderComponent, selector: "smartfileuploader", inputs: ["uploadCallback", "fileFormats", "maxSizeMb", "i18n", "useIconButton", "isMultiple", "autoUpload", "isDisabled"] }, { kind: "component", type: i3.VoiceRecordWidgetComponent, selector: "voice-record-widget", outputs: ["recordingSaved"] }, { kind: "component", type: i4.PhotoCaptureWidgetComponent, selector: "photo-capture-widget", inputs: ["maxFileSize"], outputs: ["photoCaptured"] }, { kind: "component", type: i5.PrimeFileUploaderComponent, selector: "prime-file-uploader", inputs: ["isMultiple", "autoUpload", "maxSizeMb", "fileFormats", "title", "subTitle", "isDisabled"], outputs: ["uploadFilesEvent"] }] }); }
|
|
109
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.11", type: UploadWidgetComponent, selector: "smart-upload-widget", inputs: { uploadDescriptor: "uploadDescriptor", isMultiple: "isMultiple", isDisabled: "isDisabled" }, outputs: { uploadFilesEvent: "uploadFilesEvent" }, viewQueries: [{ propertyName: "fileUploadPrime", first: true, predicate: ["fileUploadPrimeNg"], descendants: true }, { propertyName: "fileUploadMaterial", first: true, predicate: ["fileUploadMaterial"], descendants: true }], ngImport: i0, template: "<div class=\"sb4UploadWidget\">\r\n <!-- IMAGE TYPE WIDGET -->\r\n <ng-container *ngIf=\"widgetNeeded(uploadWidgetType.IMAGE) || widgetNeeded(uploadWidgetType.ALL)\">\r\n <photo-capture-widget\r\n [maxFileSize]=\"maxSizeMb * 1024 * 1024\"\r\n (photoCaptured)=\"uploadImage($event)\"\r\n >\r\n </photo-capture-widget>\r\n </ng-container>\r\n\r\n <!-- SOUND TYPE WIDGET -->\r\n <ng-container *ngIf=\"widgetNeeded(uploadWidgetType.SOUND) || widgetNeeded(uploadWidgetType.ALL)\">\r\n <voice-record-widget (recordingSaved)=\"uploadRecording($event)\"> </voice-record-widget>\r\n </ng-container>\r\n @if(compLib === componentLibrary.PRIMENG) {\r\n <prime-file-uploader\r\n #fileUploadPrimeNg\r\n [isMultiple]=\"isMultiple\"\r\n [autoUpload]=\"autoUpload\"\r\n [fileFormats]=\"fileFormats\"\r\n [maxSizeMb]=\"maxSizeMb\"\r\n [title]=\"uploadDescriptor?.title\"\r\n [subTitle]=\"uploadDescriptor?.description\"\r\n [isDisabled]=\"isDisabled\"\r\n (uploadFilesEvent)=\"uploadFiles($event)\"\r\n />\r\n }@else{\r\n <smartfileuploader\r\n #fileUploadMaterial\r\n [i18n]=\"i18n\"\r\n [fileFormats]=\"fileFormats\"\r\n [maxSizeMb]=\"maxSizeMb\"\r\n [uploadCallback]=\"upload.bind(this)\"\r\n [isMultiple]=\"isMultiple\"\r\n [autoUpload]=\"autoUpload\"\r\n [isDisabled]=\"isDisabled\"\r\n ></smartfileuploader>\r\n }\r\n</div>\r\n", styles: ["photo-capture-widget{width:100%;max-width:100%;overflow:hidden;display:flex;flex-direction:column;align-items:center}@media (max-width: 900px){:host{width:100%}}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.SmartfileuploaderComponent, selector: "smartfileuploader", inputs: ["uploadCallback", "fileFormats", "maxSizeMb", "i18n", "useIconButton", "isMultiple", "autoUpload", "isDisabled"] }, { kind: "component", type: i3.VoiceRecordWidgetComponent, selector: "voice-record-widget", outputs: ["recordingSaved"] }, { kind: "component", type: i4.PhotoCaptureWidgetComponent, selector: "photo-capture-widget", inputs: ["maxFileSize"], outputs: ["photoCaptured"] }, { kind: "component", type: i5.PrimeFileUploaderComponent, selector: "prime-file-uploader", inputs: ["isMultiple", "autoUpload", "maxSizeMb", "fileFormats", "title", "subTitle", "isDisabled"], outputs: ["uploadFilesEvent"] }] }); }
|
|
110
110
|
}
|
|
111
111
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: UploadWidgetComponent, decorators: [{
|
|
112
112
|
type: Component,
|
|
113
|
-
args: [{ selector: 'smart-upload-widget', template: "<div class=\"sb4UploadWidget\">\n <!-- IMAGE TYPE WIDGET -->\n <ng-container *ngIf=\"widgetNeeded(uploadWidgetType.IMAGE) || widgetNeeded(uploadWidgetType.ALL)\">\n <photo-capture-widget\n [maxFileSize]=\"maxSizeMb * 1024 * 1024\"\n (photoCaptured)=\"uploadImage($event)\"\n >\n </photo-capture-widget>\n </ng-container>\n\n <!-- SOUND TYPE WIDGET -->\n <ng-container *ngIf=\"widgetNeeded(uploadWidgetType.SOUND) || widgetNeeded(uploadWidgetType.ALL)\">\n <voice-record-widget (recordingSaved)=\"uploadRecording($event)\"> </voice-record-widget>\n </ng-container>\n @if(compLib === componentLibrary.PRIMENG) {\n <prime-file-uploader\n #fileUploadPrimeNg\n [isMultiple]=\"isMultiple\"\n [autoUpload]=\"autoUpload\"\n [fileFormats]=\"fileFormats\"\n [maxSizeMb]=\"maxSizeMb\"\n [title]=\"uploadDescriptor?.title\"\n [subTitle]=\"uploadDescriptor?.description\"\n [isDisabled]=\"isDisabled\"\n (uploadFilesEvent)=\"uploadFiles($event)\"\n />\n }@else{\n <smartfileuploader\n #fileUploadMaterial\n [i18n]=\"i18n\"\n [fileFormats]=\"fileFormats\"\n [maxSizeMb]=\"maxSizeMb\"\n [uploadCallback]=\"upload.bind(this)\"\n [isMultiple]=\"isMultiple\"\n [autoUpload]=\"autoUpload\"\n [isDisabled]=\"isDisabled\"\n ></smartfileuploader>\n }\n</div>\n", styles: ["photo-capture-widget{width:100%;max-width:100%;overflow:hidden;display:flex;flex-direction:column;align-items:center}@media (max-width: 900px){:host{width:100%}}\n"] }]
|
|
113
|
+
args: [{ selector: 'smart-upload-widget', template: "<div class=\"sb4UploadWidget\">\r\n <!-- IMAGE TYPE WIDGET -->\r\n <ng-container *ngIf=\"widgetNeeded(uploadWidgetType.IMAGE) || widgetNeeded(uploadWidgetType.ALL)\">\r\n <photo-capture-widget\r\n [maxFileSize]=\"maxSizeMb * 1024 * 1024\"\r\n (photoCaptured)=\"uploadImage($event)\"\r\n >\r\n </photo-capture-widget>\r\n </ng-container>\r\n\r\n <!-- SOUND TYPE WIDGET -->\r\n <ng-container *ngIf=\"widgetNeeded(uploadWidgetType.SOUND) || widgetNeeded(uploadWidgetType.ALL)\">\r\n <voice-record-widget (recordingSaved)=\"uploadRecording($event)\"> </voice-record-widget>\r\n </ng-container>\r\n @if(compLib === componentLibrary.PRIMENG) {\r\n <prime-file-uploader\r\n #fileUploadPrimeNg\r\n [isMultiple]=\"isMultiple\"\r\n [autoUpload]=\"autoUpload\"\r\n [fileFormats]=\"fileFormats\"\r\n [maxSizeMb]=\"maxSizeMb\"\r\n [title]=\"uploadDescriptor?.title\"\r\n [subTitle]=\"uploadDescriptor?.description\"\r\n [isDisabled]=\"isDisabled\"\r\n (uploadFilesEvent)=\"uploadFiles($event)\"\r\n />\r\n }@else{\r\n <smartfileuploader\r\n #fileUploadMaterial\r\n [i18n]=\"i18n\"\r\n [fileFormats]=\"fileFormats\"\r\n [maxSizeMb]=\"maxSizeMb\"\r\n [uploadCallback]=\"upload.bind(this)\"\r\n [isMultiple]=\"isMultiple\"\r\n [autoUpload]=\"autoUpload\"\r\n [isDisabled]=\"isDisabled\"\r\n ></smartfileuploader>\r\n }\r\n</div>\r\n", styles: ["photo-capture-widget{width:100%;max-width:100%;overflow:hidden;display:flex;flex-direction:column;align-items:center}@media (max-width: 900px){:host{width:100%}}\n"] }]
|
|
114
114
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i6.ComponentLibrary, decorators: [{
|
|
115
115
|
type: Inject,
|
|
116
116
|
args: [COMPONENT_LIBRARY]
|
|
@@ -131,4 +131,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
|
|
|
131
131
|
}], uploadFilesEvent: [{
|
|
132
132
|
type: Output
|
|
133
133
|
}] } });
|
|
134
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLXdpZGdldC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi92aWV3LWNvbnRleHQvc21hcnQtdWktYWN0aW9uL2NvbXBvbmVudHMvdXBsb2FkLXdpZGdldC91cGxvYWQtd2lkZ2V0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LW5nLWNsaWVudC9zcmMvbGliL3ZpZXctY29udGV4dC9zbWFydC11aS1hY3Rpb24vY29tcG9uZW50cy91cGxvYWQtd2lkZ2V0L3VwbG9hZC13aWRnZXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQTRCLGdCQUFnQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7Ozs7OztBQVV4RixNQUFNLE9BQU8scUJBQXFCO0lBb0JoQyxZQUNVLEdBQXNCLEVBQ2dCLE9BQTBCO1FBRGhFLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ2dCLFlBQU8sR0FBUCxPQUFPLENBQW1CO1FBbEJqRSxxQkFBZ0IsR0FBOEIsSUFBSSxDQUFDLHVCQUF1QixDQUFDO1FBRTNFLGVBQVUsR0FBYSxLQUFLLENBQUM7UUFFNUIscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBR3pDLENBQUM7UUFFTCxxQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztRQUNwQyxxQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztRQUVwQyxjQUFTLEdBQVcsRUFBRSxDQUFDO1FBUXJCLElBQUks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Z0JBRXRCLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBRUksZ0JBQWdCO3NCQUF6QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPcHRpb25hbCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVWlBY3Rpb25VcGxvYWREZXNjcmlwdG9yLCBVcGxvYWRXaWRnZXRUeXBlIH0gZnJvbSAnLi4vLi4vLi4vYXBpJztcbmltcG9ydCB7IENPTVBPTkVOVF9MSUJSQVJZLCBDb21wb25lbnRMaWJyYXJ5IH0gZnJvbSAnLi4vLi4vLi4vdXRpbGl0eS9jb21wb25lbnRMaWJyYXJ5JztcbmltcG9ydCB7IFNtYXJ0ZmlsZXVwbG9hZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vc21hcnQtZm9ybS9zbWFydGZpbGV1cGxvYWRlci9zbWFydGZpbGV1cGxvYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgU21hcnRGaWxlVXBsb2FkZXJJMThuIH0gZnJvbSAnLi4vLi4vLi4vLi4vc21hcnQtZm9ybS9zbWFydGZpbGV1cGxvYWRlci9zbWFydGZpbGV1cGxvYWRlci5tb2RlbCc7XG5pbXBvcnQgeyBQcmltZUZpbGVVcGxvYWRlckNvbXBvbmVudCB9IGZyb20gJy4vcHJpbWUtZmlsZS11cGxvYWRlci9wcmltZS1maWxlLXVwbG9hZGVyLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NtYXJ0LXVwbG9hZC13aWRnZXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vdXBsb2FkLXdpZGdldC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi91cGxvYWQtd2lkZ2V0LmNvbXBvbmVudC5jc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBVcGxvYWRXaWRnZXRDb21wb25lbnQge1xuICBAVmlld0NoaWxkKCdmaWxlVXBsb2FkUHJpbWVOZycpIGZpbGVVcGxvYWRQcmltZSE6IFByaW1lRmlsZVVwbG9hZGVyQ29tcG9uZW50O1xuICBAVmlld0NoaWxkKCdmaWxlVXBsb2FkTWF0ZXJpYWwnKSBmaWxlVXBsb2FkTWF0ZXJpYWwhOiBTbWFydGZpbGV1cGxvYWRlckNvbXBvbmVudDtcblxuICBASW5wdXQoKSB1cGxvYWREZXNjcmlwdG9yPzogVWlBY3Rpb25VcGxvYWREZXNjcmlwdG9yID0gdGhpcy5kZWZhdWx0VXBsb2FkRGVzY3JpcHRvcjtcbiAgQElucHV0KCkgaXNNdWx0aXBsZSE6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGlzRGlzYWJsZWQ/OiBib29sZWFuID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpIHVwbG9hZEZpbGVzRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPHtcbiAgICBmaWxlczogYW55W107XG4gICAgdXBsb2FkRGVzY3JpcHRvcj86IFVpQWN0aW9uVXBsb2FkRGVzY3JpcHRvcjtcbiAgfT4oKTtcblxuICBjb21wb25lbnRMaWJyYXJ5ID0gQ29tcG9uZW50TGlicmFyeTtcbiAgdXBsb2FkV2lkZ2V0VHlwZSA9IFVwbG9hZFdpZGdldFR5cGU7XG4gIGkxOG4/OiBTbWFydEZpbGVVcGxvYWRlckkxOG47XG4gIG1heFNpemVNYjogbnVtYmVyID0gMjU7XG4gIGZpbGVGb3JtYXRzPzogc3RyaW5nW107XG4gIGF1dG9VcGxvYWQ/OiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBASW5qZWN0KENPTVBPTkVOVF9MSUJSQVJZKSBAT3B0aW9uYWwoKSBwdWJsaWMgY29tcExpYj86IENvbXBvbmVudExpYnJhcnlcbiAgKSB7XG4gICAgdGhpcy5jb21wTGliID0gY29tcExpYiA/PyBDb21wb25lbnRMaWJyYXJ5LlBSSU1FTkc7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmF1dG9VcGxvYWQgPSB0aGlzLnVwbG9hZERlc2NyaXB0b3I/LmF1dG9VcGxvYWQgPz8gZmFsc2U7XG4gICAgdGhpcy5zZXRVcCgpO1xuICB9XG5cbiAgaXNNb2JpbGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIC9pUGhvbmV8aVBhZHxpUG9kfEFuZHJvaWQvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpO1xuICB9XG5cbiAgYXN5bmMgc2V0VXAoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy5tYXhTaXplTWIgPSBOdW1iZXIodGhpcy51cGxvYWREZXNjcmlwdG9yPy5tYXhTaXplID8/IDI1KTtcbiAgICBpZiAodGhpcy51cGxvYWREZXNjcmlwdG9yPy5mb3JtYXRzKSB7XG4gICAgICB0aGlzLmZpbGVGb3JtYXRzID0gW3RoaXMudXBsb2FkRGVzY3JpcHRvciEuZm9ybWF0c107XG4gICAgfVxuXG4gICAgLy8gZmlsZUZvcm1hdHMgPSB0aGlzLmRlc2NyaXB0b3IudXBsb2FkPy5mb3JtYXRzO1xuICAgIHRoaXMuaTE4biA9IHtcbiAgICAgIGFkZEZpbGU6IHRoaXMudXBsb2FkRGVzY3JpcHRvcj8udGl0bGUgPz8gJ0Rva3VtZW50dW0gaG96esOhYWTDoXNhJyxcbiAgICAgIGJyb3dzZU9yRHJhZzogdGhpcy51cGxvYWREZXNjcmlwdG9yPy5kZXNjcmlwdGlvbiA/PyAndGFsbMOzesOhcyB2YWd5IGJlaMO6esOhcycsXG4gICAgICBmb3JtYXRzOiB0aGlzLnVwbG9hZERlc2NyaXB0b3I/LmZvcm1hdHMgPz8gJycsXG4gICAgICBtYXhTaXplOiBgbWF4LiAke3RoaXMubWF4U2l6ZU1ifSBNQmAsXG4gICAgICB1cGxvYWQ6IHRoaXMudXBsb2FkRGVzY3JpcHRvcj8udXBsb2FkQnV0dG9uVGl0bGUgPz8gJ0ZlbHTDtmx0w6lzJyxcbiAgICB9O1xuICB9XG5cbiAgdXBsb2FkKGZpbGVzOiBhbnlbXSk6IHZvaWQge1xuICAgIHRoaXMudXBsb2FkRmlsZXNFdmVudC5lbWl0KHtcbiAgICAgIGZpbGVzLFxuICAgICAgdXBsb2FkRGVzY3JpcHRvcjogdGhpcy51cGxvYWREZXNjcmlwdG9yLFxuICAgIH0pO1xuXG4gICAgdGhpcy5maWxlVXBsb2FkTWF0ZXJpYWwuZmlsZXMgPSBbXTtcbiAgfVxuXG4gIHVwbG9hZEZpbGVzKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnVwbG9hZEZpbGVzRXZlbnQuZW1pdCh7XG4gICAgICBmaWxlczogZXZlbnQuZmlsZXMsXG4gICAgICB1cGxvYWREZXNjcmlwdG9yOiBldmVudC51cGxvYWREZXNjcmlwdG9yLFxuICAgIH0pO1xuICB9XG5cbiAgdXBsb2FkUmVjb3JkaW5nKGZpbGU6IGFueSkge1xuICAgIHRoaXMubG9hZEZpbGVzSW50b1dpZGdldChbZmlsZV0pO1xuICB9XG5cbiAgdXBsb2FkSW1hZ2UoZmlsZXM6IGFueSkge1xuICAgIHRoaXMubG9hZEZpbGVzSW50b1dpZGdldChmaWxlcyk7XG4gIH1cblxuICBsb2FkRmlsZXNJbnRvV2lkZ2V0KGZpbGVzOiBGaWxlW10pIHtcbiAgICBpZiAoQ29tcG9uZW50TGlicmFyeS5QUklNRU5HID09PSB0aGlzLmNvbXBMaWIpIHtcbiAgICAgIGNvbnN0IGRhdGFUcmFuc2ZlciA9IG5ldyBEYXRhVHJhbnNmZXIoKTtcbiAgICAgIGNvbnN0IGV4aXN0aW5nRmlsZXMgPSBBcnJheS5mcm9tKHRoaXMuZmlsZVVwbG9hZFByaW1lLmZpbGVzKTtcblxuICAgICAgZXhpc3RpbmdGaWxlcy5mb3JFYWNoKChmaWxlKSA9PiB7XG4gICAgICAgIGRhdGFUcmFuc2Zlci5pdGVtcy5hZGQoZmlsZSk7XG4gICAgICB9KTtcblxuICAgICAgZm9yIChjb25zdCBmaWxlIG9mIGZpbGVzKSB7XG4gICAgICAgIGRhdGFUcmFuc2Zlci5pdGVtcy5hZGQoZmlsZSk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGZpbGVMaXN0OiBGaWxlTGlzdCA9IGRhdGFUcmFuc2Zlci5maWxlcztcblxuICAgICAgY29uc3QgZmFrZUV2ZW50ID0ge1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBmaWxlczogZmlsZUxpc3QsXG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6ICdjaGFuZ2UnLFxuICAgICAgfTtcblxuICAgICAgdGhpcy5maWxlVXBsb2FkUHJpbWUub25GaWxlU2VsZWN0KGZha2VFdmVudCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLmF1dG9VcGxvYWQpIHtcbiAgICAgICAgdGhpcy51cGxvYWRGaWxlc0V2ZW50LmVtaXQoe1xuICAgICAgICAgIGZpbGVzOiBmaWxlcyxcbiAgICAgICAgICB1cGxvYWREZXNjcmlwdG9yOiB0aGlzLnVwbG9hZERlc2NyaXB0b3IsXG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5maWxlVXBsb2FkTWF0ZXJpYWwuZmlsZXMucHVzaCguLi5maWxlcyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgd2lkZ2V0TmVlZGVkKHR5cGU6IFVwbG9hZFdpZGdldFR5cGUpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy51cGxvYWREZXNjcmlwdG9yPy51cGxvYWRXaWRnZXRzPy5pbmNsdWRlcyh0eXBlKSA/PyBmYWxzZTtcbiAgfVxuXG4gIGNob29zZShldmVudDogYW55LCBjYWxsYmFjazogYW55KSB7XG4gICAgY2FsbGJhY2soKTtcbiAgfVxuXG4gIGdldCBkZWZhdWx0VXBsb2FkRGVzY3JpcHRvcigpOiBVaUFjdGlvblVwbG9hZERlc2NyaXB0b3Ige1xuICAgIHJldHVybiB7XG4gICAgICB0aXRsZTogJ0Rva3VtZW50dW0gaG96esOhYWTDoXNhJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAndGFsbMOzesOhcyB2YWd5IGJlaMO6esOhcycsXG4gICAgICBtYXhTaXplOiAnMjUnLFxuICAgICAgYXV0b1VwbG9hZDogZmFsc2UsXG4gICAgfTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInNiNFVwbG9hZFdpZGdldFwiPlxuICA8IS0tIElNQUdFIFRZUEUgV0lER0VUIC0tPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwid2lkZ2V0TmVlZGVkKHVwbG9hZFdpZGdldFR5cGUuSU1BR0UpIHx8IHdpZGdldE5lZWRlZCh1cGxvYWRXaWRnZXRUeXBlLkFMTClcIj5cbiAgICA8cGhvdG8tY2FwdHVyZS13aWRnZXRcbiAgICAgIFttYXhGaWxlU2l6ZV09XCJtYXhTaXplTWIgKiAxMDI0ICogMTAyNFwiXG4gICAgICAocGhvdG9DYXB0dXJlZCk9XCJ1cGxvYWRJbWFnZSgkZXZlbnQpXCJcbiAgICA+XG4gICAgPC9waG90by1jYXB0dXJlLXdpZGdldD5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPCEtLSBTT1VORCBUWVBFIFdJREdFVCAtLT5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIndpZGdldE5lZWRlZCh1cGxvYWRXaWRnZXRUeXBlLlNPVU5EKSB8fCB3aWRnZXROZWVkZWQodXBsb2FkV2lkZ2V0VHlwZS5BTEwpXCI+XG4gICAgPHZvaWNlLXJlY29yZC13aWRnZXQgKHJlY29yZGluZ1NhdmVkKT1cInVwbG9hZFJlY29yZGluZygkZXZlbnQpXCI+IDwvdm9pY2UtcmVjb3JkLXdpZGdldD5cbiAgPC9uZy1jb250YWluZXI+XG4gIEBpZihjb21wTGliID09PSBjb21wb25lbnRMaWJyYXJ5LlBSSU1FTkcpIHtcbiAgPHByaW1lLWZpbGUtdXBsb2FkZXJcbiAgICAjZmlsZVVwbG9hZFByaW1lTmdcbiAgICBbaXNNdWx0aXBsZV09XCJpc011bHRpcGxlXCJcbiAgICBbYXV0b1VwbG9hZF09XCJhdXRvVXBsb2FkXCJcbiAgICBbZmlsZUZvcm1hdHNdPVwiZmlsZUZvcm1hdHNcIlxuICAgIFttYXhTaXplTWJdPVwibWF4U2l6ZU1iXCJcbiAgICBbdGl0bGVdPVwidXBsb2FkRGVzY3JpcHRvcj8udGl0bGVcIlxuICAgIFtzdWJUaXRsZV09XCJ1cGxvYWREZXNjcmlwdG9yPy5kZXNjcmlwdGlvblwiXG4gICAgW2lzRGlzYWJsZWRdPVwiaXNEaXNhYmxlZFwiXG4gICAgKHVwbG9hZEZpbGVzRXZlbnQpPVwidXBsb2FkRmlsZXMoJGV2ZW50KVwiXG4gIC8+XG4gIH1AZWxzZXtcbiAgPHNtYXJ0ZmlsZXVwbG9hZGVyXG4gICAgI2ZpbGVVcGxvYWRNYXRlcmlhbFxuICAgIFtpMThuXT1cImkxOG5cIlxuICAgIFtmaWxlRm9ybWF0c109XCJmaWxlRm9ybWF0c1wiXG4gICAgW21heFNpemVNYl09XCJtYXhTaXplTWJcIlxuICAgIFt1cGxvYWRDYWxsYmFja109XCJ1cGxvYWQuYmluZCh0aGlzKVwiXG4gICAgW2lzTXVsdGlwbGVdPVwiaXNNdWx0aXBsZVwiXG4gICAgW2F1dG9VcGxvYWRdPVwiYXV0b1VwbG9hZFwiXG4gICAgW2lzRGlzYWJsZWRdPVwiaXNEaXNhYmxlZFwiXG4gID48L3NtYXJ0ZmlsZXVwbG9hZGVyPlxuICB9XG48L2Rpdj5cbiJdfQ==
|
|
134
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLXdpZGdldC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi92aWV3LWNvbnRleHQvc21hcnQtdWktYWN0aW9uL2NvbXBvbmVudHMvdXBsb2FkLXdpZGdldC91cGxvYWQtd2lkZ2V0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LW5nLWNsaWVudC9zcmMvbGliL3ZpZXctY29udGV4dC9zbWFydC11aS1hY3Rpb24vY29tcG9uZW50cy91cGxvYWQtd2lkZ2V0L3VwbG9hZC13aWRnZXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQTRCLGdCQUFnQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7Ozs7OztBQVV4RixNQUFNLE9BQU8scUJBQXFCO0lBb0JoQyxZQUNVLEdBQXNCLEVBQ2dCLE9BQTBCO1FBRGhFLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ2dCLFlBQU8sR0FBUCxPQUFPLENBQW1CO1FBbEJqRSxxQkFBZ0IsR0FBOEIsSUFBSSxDQUFDLHVCQUF1QixDQUFDO1FBRTNFLGVBQVUsR0FBYSxLQUFLLENBQUM7UUFFNUIscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBR3pDLENBQUM7UUFFTCxxQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztRQUNwQyxxQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztRQUVwQyxjQUFTLEdBQVcsRUFBRSxDQUFDO1FBUXJCLElBQUks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Z0JBRXRCLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBRUksZ0JBQWdCO3NCQUF6QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEluamVjdCxcclxuICBJbnB1dCxcclxuICBPcHRpb25hbCxcclxuICBPdXRwdXQsXHJcbiAgVmlld0NoaWxkLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBVaUFjdGlvblVwbG9hZERlc2NyaXB0b3IsIFVwbG9hZFdpZGdldFR5cGUgfSBmcm9tICcuLi8uLi8uLi9hcGknO1xyXG5pbXBvcnQgeyBDT01QT05FTlRfTElCUkFSWSwgQ29tcG9uZW50TGlicmFyeSB9IGZyb20gJy4uLy4uLy4uL3V0aWxpdHkvY29tcG9uZW50TGlicmFyeSc7XHJcbmltcG9ydCB7IFNtYXJ0ZmlsZXVwbG9hZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vc21hcnQtZm9ybS9zbWFydGZpbGV1cGxvYWRlci9zbWFydGZpbGV1cGxvYWRlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTbWFydEZpbGVVcGxvYWRlckkxOG4gfSBmcm9tICcuLi8uLi8uLi8uLi9zbWFydC1mb3JtL3NtYXJ0ZmlsZXVwbG9hZGVyL3NtYXJ0ZmlsZXVwbG9hZGVyLm1vZGVsJztcclxuaW1wb3J0IHsgUHJpbWVGaWxlVXBsb2FkZXJDb21wb25lbnQgfSBmcm9tICcuL3ByaW1lLWZpbGUtdXBsb2FkZXIvcHJpbWUtZmlsZS11cGxvYWRlci5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzbWFydC11cGxvYWQtd2lkZ2V0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdXBsb2FkLXdpZGdldC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL3VwbG9hZC13aWRnZXQuY29tcG9uZW50LmNzcycsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVcGxvYWRXaWRnZXRDb21wb25lbnQge1xyXG4gIEBWaWV3Q2hpbGQoJ2ZpbGVVcGxvYWRQcmltZU5nJykgZmlsZVVwbG9hZFByaW1lITogUHJpbWVGaWxlVXBsb2FkZXJDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgnZmlsZVVwbG9hZE1hdGVyaWFsJykgZmlsZVVwbG9hZE1hdGVyaWFsITogU21hcnRmaWxldXBsb2FkZXJDb21wb25lbnQ7XHJcblxyXG4gIEBJbnB1dCgpIHVwbG9hZERlc2NyaXB0b3I/OiBVaUFjdGlvblVwbG9hZERlc2NyaXB0b3IgPSB0aGlzLmRlZmF1bHRVcGxvYWREZXNjcmlwdG9yO1xyXG4gIEBJbnB1dCgpIGlzTXVsdGlwbGUhOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGlzRGlzYWJsZWQ/OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBPdXRwdXQoKSB1cGxvYWRGaWxlc0V2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjx7XHJcbiAgICBmaWxlczogYW55W107XHJcbiAgICB1cGxvYWREZXNjcmlwdG9yPzogVWlBY3Rpb25VcGxvYWREZXNjcmlwdG9yO1xyXG4gIH0+KCk7XHJcblxyXG4gIGNvbXBvbmVudExpYnJhcnkgPSBDb21wb25lbnRMaWJyYXJ5O1xyXG4gIHVwbG9hZFdpZGdldFR5cGUgPSBVcGxvYWRXaWRnZXRUeXBlO1xyXG4gIGkxOG4/OiBTbWFydEZpbGVVcGxvYWRlckkxOG47XHJcbiAgbWF4U2l6ZU1iOiBudW1iZXIgPSAyNTtcclxuICBmaWxlRm9ybWF0cz86IHN0cmluZ1tdO1xyXG4gIGF1dG9VcGxvYWQ/OiBib29sZWFuO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIEBJbmplY3QoQ09NUE9ORU5UX0xJQlJBUlkpIEBPcHRpb25hbCgpIHB1YmxpYyBjb21wTGliPzogQ29tcG9uZW50TGlicmFyeVxyXG4gICkge1xyXG4gICAgdGhpcy5jb21wTGliID0gY29tcExpYiA/PyBDb21wb25lbnRMaWJyYXJ5LlBSSU1FTkc7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuYXV0b1VwbG9hZCA9IHRoaXMudXBsb2FkRGVzY3JpcHRvcj8uYXV0b1VwbG9hZCA/PyBmYWxzZTtcclxuICAgIHRoaXMuc2V0VXAoKTtcclxuICB9XHJcblxyXG4gIGlzTW9iaWxlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIC9pUGhvbmV8aVBhZHxpUG9kfEFuZHJvaWQvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgc2V0VXAoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLm1heFNpemVNYiA9IE51bWJlcih0aGlzLnVwbG9hZERlc2NyaXB0b3I/Lm1heFNpemUgPz8gMjUpO1xyXG4gICAgaWYgKHRoaXMudXBsb2FkRGVzY3JpcHRvcj8uZm9ybWF0cykge1xyXG4gICAgICB0aGlzLmZpbGVGb3JtYXRzID0gW3RoaXMudXBsb2FkRGVzY3JpcHRvciEuZm9ybWF0c107XHJcbiAgICB9XHJcblxyXG4gICAgLy8gZmlsZUZvcm1hdHMgPSB0aGlzLmRlc2NyaXB0b3IudXBsb2FkPy5mb3JtYXRzO1xyXG4gICAgdGhpcy5pMThuID0ge1xyXG4gICAgICBhZGRGaWxlOiB0aGlzLnVwbG9hZERlc2NyaXB0b3I/LnRpdGxlID8/ICdEb2t1bWVudHVtIGhvenrDoWFkw6FzYScsXHJcbiAgICAgIGJyb3dzZU9yRHJhZzogdGhpcy51cGxvYWREZXNjcmlwdG9yPy5kZXNjcmlwdGlvbiA/PyAndGFsbMOzesOhcyB2YWd5IGJlaMO6esOhcycsXHJcbiAgICAgIGZvcm1hdHM6IHRoaXMudXBsb2FkRGVzY3JpcHRvcj8uZm9ybWF0cyA/PyAnJyxcclxuICAgICAgbWF4U2l6ZTogYG1heC4gJHt0aGlzLm1heFNpemVNYn0gTUJgLFxyXG4gICAgICB1cGxvYWQ6IHRoaXMudXBsb2FkRGVzY3JpcHRvcj8udXBsb2FkQnV0dG9uVGl0bGUgPz8gJ0ZlbHTDtmx0w6lzJyxcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICB1cGxvYWQoZmlsZXM6IGFueVtdKTogdm9pZCB7XHJcbiAgICB0aGlzLnVwbG9hZEZpbGVzRXZlbnQuZW1pdCh7XHJcbiAgICAgIGZpbGVzLFxyXG4gICAgICB1cGxvYWREZXNjcmlwdG9yOiB0aGlzLnVwbG9hZERlc2NyaXB0b3IsXHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmZpbGVVcGxvYWRNYXRlcmlhbC5maWxlcyA9IFtdO1xyXG4gIH1cclxuXHJcbiAgdXBsb2FkRmlsZXMoZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy51cGxvYWRGaWxlc0V2ZW50LmVtaXQoe1xyXG4gICAgICBmaWxlczogZXZlbnQuZmlsZXMsXHJcbiAgICAgIHVwbG9hZERlc2NyaXB0b3I6IGV2ZW50LnVwbG9hZERlc2NyaXB0b3IsXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHVwbG9hZFJlY29yZGluZyhmaWxlOiBhbnkpIHtcclxuICAgIHRoaXMubG9hZEZpbGVzSW50b1dpZGdldChbZmlsZV0pO1xyXG4gIH1cclxuXHJcbiAgdXBsb2FkSW1hZ2UoZmlsZXM6IGFueSkge1xyXG4gICAgdGhpcy5sb2FkRmlsZXNJbnRvV2lkZ2V0KGZpbGVzKTtcclxuICB9XHJcblxyXG4gIGxvYWRGaWxlc0ludG9XaWRnZXQoZmlsZXM6IEZpbGVbXSkge1xyXG4gICAgaWYgKENvbXBvbmVudExpYnJhcnkuUFJJTUVORyA9PT0gdGhpcy5jb21wTGliKSB7XHJcbiAgICAgIGNvbnN0IGRhdGFUcmFuc2ZlciA9IG5ldyBEYXRhVHJhbnNmZXIoKTtcclxuICAgICAgY29uc3QgZXhpc3RpbmdGaWxlcyA9IEFycmF5LmZyb20odGhpcy5maWxlVXBsb2FkUHJpbWUuZmlsZXMpO1xyXG5cclxuICAgICAgZXhpc3RpbmdGaWxlcy5mb3JFYWNoKChmaWxlKSA9PiB7XHJcbiAgICAgICAgZGF0YVRyYW5zZmVyLml0ZW1zLmFkZChmaWxlKTtcclxuICAgICAgfSk7XHJcblxyXG4gICAgICBmb3IgKGNvbnN0IGZpbGUgb2YgZmlsZXMpIHtcclxuICAgICAgICBkYXRhVHJhbnNmZXIuaXRlbXMuYWRkKGZpbGUpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBjb25zdCBmaWxlTGlzdDogRmlsZUxpc3QgPSBkYXRhVHJhbnNmZXIuZmlsZXM7XHJcblxyXG4gICAgICBjb25zdCBmYWtlRXZlbnQgPSB7XHJcbiAgICAgICAgdGFyZ2V0OiB7XHJcbiAgICAgICAgICBmaWxlczogZmlsZUxpc3QsXHJcbiAgICAgICAgfSxcclxuICAgICAgICB0eXBlOiAnY2hhbmdlJyxcclxuICAgICAgfTtcclxuXHJcbiAgICAgIHRoaXMuZmlsZVVwbG9hZFByaW1lLm9uRmlsZVNlbGVjdChmYWtlRXZlbnQpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKHRoaXMuYXV0b1VwbG9hZCkge1xyXG4gICAgICAgIHRoaXMudXBsb2FkRmlsZXNFdmVudC5lbWl0KHtcclxuICAgICAgICAgIGZpbGVzOiBmaWxlcyxcclxuICAgICAgICAgIHVwbG9hZERlc2NyaXB0b3I6IHRoaXMudXBsb2FkRGVzY3JpcHRvcixcclxuICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmZpbGVVcGxvYWRNYXRlcmlhbC5maWxlcy5wdXNoKC4uLmZpbGVzKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgd2lkZ2V0TmVlZGVkKHR5cGU6IFVwbG9hZFdpZGdldFR5cGUpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLnVwbG9hZERlc2NyaXB0b3I/LnVwbG9hZFdpZGdldHM/LmluY2x1ZGVzKHR5cGUpID8/IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgY2hvb3NlKGV2ZW50OiBhbnksIGNhbGxiYWNrOiBhbnkpIHtcclxuICAgIGNhbGxiYWNrKCk7XHJcbiAgfVxyXG5cclxuICBnZXQgZGVmYXVsdFVwbG9hZERlc2NyaXB0b3IoKTogVWlBY3Rpb25VcGxvYWREZXNjcmlwdG9yIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIHRpdGxlOiAnRG9rdW1lbnR1bSBob3p6w6FhZMOhc2EnLFxyXG4gICAgICBkZXNjcmlwdGlvbjogJ3RhbGzDs3rDoXMgdmFneSBiZWjDunrDoXMnLFxyXG4gICAgICBtYXhTaXplOiAnMjUnLFxyXG4gICAgICBhdXRvVXBsb2FkOiBmYWxzZSxcclxuICAgIH07XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJzYjRVcGxvYWRXaWRnZXRcIj5cclxuICA8IS0tIElNQUdFIFRZUEUgV0lER0VUIC0tPlxyXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJ3aWRnZXROZWVkZWQodXBsb2FkV2lkZ2V0VHlwZS5JTUFHRSkgfHwgd2lkZ2V0TmVlZGVkKHVwbG9hZFdpZGdldFR5cGUuQUxMKVwiPlxyXG4gICAgPHBob3RvLWNhcHR1cmUtd2lkZ2V0XHJcbiAgICAgIFttYXhGaWxlU2l6ZV09XCJtYXhTaXplTWIgKiAxMDI0ICogMTAyNFwiXHJcbiAgICAgIChwaG90b0NhcHR1cmVkKT1cInVwbG9hZEltYWdlKCRldmVudClcIlxyXG4gICAgPlxyXG4gICAgPC9waG90by1jYXB0dXJlLXdpZGdldD5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgPCEtLSBTT1VORCBUWVBFIFdJREdFVCAtLT5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwid2lkZ2V0TmVlZGVkKHVwbG9hZFdpZGdldFR5cGUuU09VTkQpIHx8IHdpZGdldE5lZWRlZCh1cGxvYWRXaWRnZXRUeXBlLkFMTClcIj5cclxuICAgIDx2b2ljZS1yZWNvcmQtd2lkZ2V0IChyZWNvcmRpbmdTYXZlZCk9XCJ1cGxvYWRSZWNvcmRpbmcoJGV2ZW50KVwiPiA8L3ZvaWNlLXJlY29yZC13aWRnZXQ+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcbiAgQGlmKGNvbXBMaWIgPT09IGNvbXBvbmVudExpYnJhcnkuUFJJTUVORykge1xyXG4gIDxwcmltZS1maWxlLXVwbG9hZGVyXHJcbiAgICAjZmlsZVVwbG9hZFByaW1lTmdcclxuICAgIFtpc011bHRpcGxlXT1cImlzTXVsdGlwbGVcIlxyXG4gICAgW2F1dG9VcGxvYWRdPVwiYXV0b1VwbG9hZFwiXHJcbiAgICBbZmlsZUZvcm1hdHNdPVwiZmlsZUZvcm1hdHNcIlxyXG4gICAgW21heFNpemVNYl09XCJtYXhTaXplTWJcIlxyXG4gICAgW3RpdGxlXT1cInVwbG9hZERlc2NyaXB0b3I/LnRpdGxlXCJcclxuICAgIFtzdWJUaXRsZV09XCJ1cGxvYWREZXNjcmlwdG9yPy5kZXNjcmlwdGlvblwiXHJcbiAgICBbaXNEaXNhYmxlZF09XCJpc0Rpc2FibGVkXCJcclxuICAgICh1cGxvYWRGaWxlc0V2ZW50KT1cInVwbG9hZEZpbGVzKCRldmVudClcIlxyXG4gIC8+XHJcbiAgfUBlbHNle1xyXG4gIDxzbWFydGZpbGV1cGxvYWRlclxyXG4gICAgI2ZpbGVVcGxvYWRNYXRlcmlhbFxyXG4gICAgW2kxOG5dPVwiaTE4blwiXHJcbiAgICBbZmlsZUZvcm1hdHNdPVwiZmlsZUZvcm1hdHNcIlxyXG4gICAgW21heFNpemVNYl09XCJtYXhTaXplTWJcIlxyXG4gICAgW3VwbG9hZENhbGxiYWNrXT1cInVwbG9hZC5iaW5kKHRoaXMpXCJcclxuICAgIFtpc011bHRpcGxlXT1cImlzTXVsdGlwbGVcIlxyXG4gICAgW2F1dG9VcGxvYWRdPVwiYXV0b1VwbG9hZFwiXHJcbiAgICBbaXNEaXNhYmxlZF09XCJpc0Rpc2FibGVkXCJcclxuICA+PC9zbWFydGZpbGV1cGxvYWRlcj5cclxuICB9XHJcbjwvZGl2PlxyXG4iXX0=
|
package/esm2022/lib/view-context/smart-ui-action/components/upload-widget/upload-widget.utils.mjs
CHANGED
|
@@ -9,4 +9,4 @@ export class UploadWidgetUtils {
|
|
|
9
9
|
return `${value} ${sizes[i]}`;
|
|
10
10
|
}
|
|
11
11
|
}
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLXdpZGdldC51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LW5nLWNsaWVudC9zcmMvbGliL3ZpZXctY29udGV4dC9zbWFydC11aS1hY3Rpb24vY29tcG9uZW50cy91cGxvYWQtd2lkZ2V0L3VwbG9hZC13aWRnZXQudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLGlCQUFpQjtJQUM1QixNQUFNLENBQUMsVUFBVSxDQUFDLEtBQWE7UUFDN0IsSUFBSSxDQUFDLEtBQUssSUFBSSxLQUFLLEtBQUssQ0FBQztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ3hDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQztRQUNmLE1BQU0sS0FBSyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzVDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEQsTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDOUQsT0FBTyxHQUFHLEtBQUssSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgVXBsb2FkV2lkZ2V0VXRpbHMge1xyXG4gIHN0YXRpYyBmb3JtYXRTaXplKGJ5dGVzOiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgaWYgKCFieXRlcyB8fCBieXRlcyA9PT0gMCkgcmV0dXJuICcwIEInO1xyXG4gICAgY29uc3QgayA9IDEwMjQ7XHJcbiAgICBjb25zdCBzaXplcyA9IFsnQicsICdLQicsICdNQicsICdHQicsICdUQiddO1xyXG4gICAgY29uc3QgaSA9IE1hdGguZmxvb3IoTWF0aC5sb2coYnl0ZXMpIC8gTWF0aC5sb2coaykpO1xyXG4gICAgY29uc3QgdmFsdWUgPSBwYXJzZUZsb2F0KChieXRlcyAvIE1hdGgucG93KGssIGkpKS50b0ZpeGVkKDEpKTtcclxuICAgIHJldHVybiBgJHt2YWx1ZX0gJHtzaXplc1tpXX1gO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -167,11 +167,11 @@ export class VoiceRecordWidgetComponent {
|
|
|
167
167
|
return hexColor;
|
|
168
168
|
}
|
|
169
169
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: VoiceRecordWidgetComponent, deps: [{ token: COMPONENT_LIBRARY, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
170
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: VoiceRecordWidgetComponent, selector: "voice-record-widget", outputs: { recordingSaved: "recordingSaved" }, viewQueries: [{ propertyName: "waveformRef", first: true, predicate: ["waveform"], descendants: true }], ngImport: i0, template: "<div class=\"recorderContainer\">\n <div class=\"recorderToolbar\">\n <!-- Start Recording -->\n <ui-action-button\n *ngIf=\"!isRecording\"\n [descriptor]=\"micButton\"\n (actionClick)=\"startRecording()\"\n >\n </ui-action-button>\n\n <!-- Stop Recording -->\n <ui-action-button *ngIf=\"isRecording\" [descriptor]=\"stopButton\" (actionClick)=\"stopRecording()\">\n </ui-action-button>\n\n <div class=\"progress\">{{ time }}</div>\n </div>\n <div class=\"waveform\" #waveform></div>\n <div class=\"endBar\">\n <!-- Save Recording -->\n <ui-action-button\n *ngIf=\"recordedBlob\"\n [descriptor]=\"saveButton\"\n (actionClick)=\"saveRecording()\"\n >\n </ui-action-button>\n\n <!-- Start Play -->\n <ui-action-button\n *ngIf=\"recordedBlob && !isPlaying\"\n [descriptor]=\"playButton\"\n (actionClick)=\"replayRecording()\"\n ></ui-action-button>\n\n <!-- Stop Play -->\n <ui-action-button\n *ngIf=\"recordedBlob && isPlaying\"\n [descriptor]=\"stopPlaybackButton\"\n (actionClick)=\"replayRecording()\"\n ></ui-action-button>\n </div>\n</div>\n", styles: [".recorderContainer{border:1px solid #dee2e6;background:#fff;border-radius:5px;display:flex;flex-direction:row;padding:.2rem;align-items:center}.waveform{flex:1;align-content:center;padding-right:1rem}.recorderToolbar{display:flex;flex-direction:row;gap:.2rem;padding:0 .5rem;align-items:center}.recorderToolbar ::ng-deep .p-button.p-button-icon-only{width:fit-content;padding:.2rem}.recorderToolbar ::ng-deep .mdc-button{min-width:unset;font-size:1.5rem;margin:unset}.recorderToolbar ::ng-deep .mat-mdc-button>.mat-icon{font-size:unset;width:unset;height:unset;padding:.2rem;margin:unset}.recorderToolbar ::ng-deep .p-button-text{background-color:transparent;border:unset;box-shadow:unset;padding:.2rem}.progress{align-content:center;font-size:1rem;height:100%;color:#6b7280}.recorderToolbar ::ng-deep .p-button-primary{color:var(--primary-color);border:unset}.endBar{display:flex;flex-direction:row;align-items:center;padding:unset;border-radius:5px;height:fit-content;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.endBar ::ng-deep button{background-color:transparent;border:unset;padding:.5rem;box-shadow:unset}.endBar ::ng-deep button:hover{background-color:rgba(from var(--primary-color) r g b/.1)}.endBar>:first-child ::ng-deep button{border-radius:5px;border-top-right-radius:unset;border-bottom-right-radius:unset;border-right:1px solid #dee2e6;color:var(--primary-color)}.endBar>:last-child ::ng-deep button{border-radius:5px;border-top-left-radius:unset;border-bottom-left-radius:unset;color:var(--primary-color)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.UiActionButtonComponent, selector: "ui-action-button", inputs: ["disabled", "descriptor", "code", "addedCssClass", "addBasicClasses"], outputs: ["actionClick", "actionDoubleClick"] }] }); }
|
|
170
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: VoiceRecordWidgetComponent, selector: "voice-record-widget", outputs: { recordingSaved: "recordingSaved" }, viewQueries: [{ propertyName: "waveformRef", first: true, predicate: ["waveform"], descendants: true }], ngImport: i0, template: "<div class=\"recorderContainer\">\r\n <div class=\"recorderToolbar\">\r\n <!-- Start Recording -->\r\n <ui-action-button\r\n *ngIf=\"!isRecording\"\r\n [descriptor]=\"micButton\"\r\n (actionClick)=\"startRecording()\"\r\n >\r\n </ui-action-button>\r\n\r\n <!-- Stop Recording -->\r\n <ui-action-button *ngIf=\"isRecording\" [descriptor]=\"stopButton\" (actionClick)=\"stopRecording()\">\r\n </ui-action-button>\r\n\r\n <div class=\"progress\">{{ time }}</div>\r\n </div>\r\n <div class=\"waveform\" #waveform></div>\r\n <div class=\"endBar\">\r\n <!-- Save Recording -->\r\n <ui-action-button\r\n *ngIf=\"recordedBlob\"\r\n [descriptor]=\"saveButton\"\r\n (actionClick)=\"saveRecording()\"\r\n >\r\n </ui-action-button>\r\n\r\n <!-- Start Play -->\r\n <ui-action-button\r\n *ngIf=\"recordedBlob && !isPlaying\"\r\n [descriptor]=\"playButton\"\r\n (actionClick)=\"replayRecording()\"\r\n ></ui-action-button>\r\n\r\n <!-- Stop Play -->\r\n <ui-action-button\r\n *ngIf=\"recordedBlob && isPlaying\"\r\n [descriptor]=\"stopPlaybackButton\"\r\n (actionClick)=\"replayRecording()\"\r\n ></ui-action-button>\r\n </div>\r\n</div>\r\n", styles: [".recorderContainer{border:1px solid #dee2e6;background:#fff;border-radius:5px;display:flex;flex-direction:row;padding:.2rem;align-items:center}.waveform{flex:1;align-content:center;padding-right:1rem}.recorderToolbar{display:flex;flex-direction:row;gap:.2rem;padding:0 .5rem;align-items:center}.recorderToolbar ::ng-deep .p-button.p-button-icon-only{width:fit-content;padding:.2rem}.recorderToolbar ::ng-deep .mdc-button{min-width:unset;font-size:1.5rem;margin:unset}.recorderToolbar ::ng-deep .mat-mdc-button>.mat-icon{font-size:unset;width:unset;height:unset;padding:.2rem;margin:unset}.recorderToolbar ::ng-deep .p-button-text{background-color:transparent;border:unset;box-shadow:unset;padding:.2rem}.progress{align-content:center;font-size:1rem;height:100%;color:#6b7280}.recorderToolbar ::ng-deep .p-button-primary{color:var(--primary-color);border:unset}.endBar{display:flex;flex-direction:row;align-items:center;padding:unset;border-radius:5px;height:fit-content;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.endBar ::ng-deep button{background-color:transparent;border:unset;padding:.5rem;box-shadow:unset}.endBar ::ng-deep button:hover{background-color:rgba(from var(--primary-color) r g b/.1)}.endBar>:first-child ::ng-deep button{border-radius:5px;border-top-right-radius:unset;border-bottom-right-radius:unset;border-right:1px solid #dee2e6;color:var(--primary-color)}.endBar>:last-child ::ng-deep button{border-radius:5px;border-top-left-radius:unset;border-bottom-left-radius:unset;color:var(--primary-color)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.UiActionButtonComponent, selector: "ui-action-button", inputs: ["disabled", "descriptor", "code", "addedCssClass", "addBasicClasses"], outputs: ["actionClick", "actionDoubleClick"] }] }); }
|
|
171
171
|
}
|
|
172
172
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: VoiceRecordWidgetComponent, decorators: [{
|
|
173
173
|
type: Component,
|
|
174
|
-
args: [{ selector: 'voice-record-widget', template: "<div class=\"recorderContainer\">\n <div class=\"recorderToolbar\">\n <!-- Start Recording -->\n <ui-action-button\n *ngIf=\"!isRecording\"\n [descriptor]=\"micButton\"\n (actionClick)=\"startRecording()\"\n >\n </ui-action-button>\n\n <!-- Stop Recording -->\n <ui-action-button *ngIf=\"isRecording\" [descriptor]=\"stopButton\" (actionClick)=\"stopRecording()\">\n </ui-action-button>\n\n <div class=\"progress\">{{ time }}</div>\n </div>\n <div class=\"waveform\" #waveform></div>\n <div class=\"endBar\">\n <!-- Save Recording -->\n <ui-action-button\n *ngIf=\"recordedBlob\"\n [descriptor]=\"saveButton\"\n (actionClick)=\"saveRecording()\"\n >\n </ui-action-button>\n\n <!-- Start Play -->\n <ui-action-button\n *ngIf=\"recordedBlob && !isPlaying\"\n [descriptor]=\"playButton\"\n (actionClick)=\"replayRecording()\"\n ></ui-action-button>\n\n <!-- Stop Play -->\n <ui-action-button\n *ngIf=\"recordedBlob && isPlaying\"\n [descriptor]=\"stopPlaybackButton\"\n (actionClick)=\"replayRecording()\"\n ></ui-action-button>\n </div>\n</div>\n", styles: [".recorderContainer{border:1px solid #dee2e6;background:#fff;border-radius:5px;display:flex;flex-direction:row;padding:.2rem;align-items:center}.waveform{flex:1;align-content:center;padding-right:1rem}.recorderToolbar{display:flex;flex-direction:row;gap:.2rem;padding:0 .5rem;align-items:center}.recorderToolbar ::ng-deep .p-button.p-button-icon-only{width:fit-content;padding:.2rem}.recorderToolbar ::ng-deep .mdc-button{min-width:unset;font-size:1.5rem;margin:unset}.recorderToolbar ::ng-deep .mat-mdc-button>.mat-icon{font-size:unset;width:unset;height:unset;padding:.2rem;margin:unset}.recorderToolbar ::ng-deep .p-button-text{background-color:transparent;border:unset;box-shadow:unset;padding:.2rem}.progress{align-content:center;font-size:1rem;height:100%;color:#6b7280}.recorderToolbar ::ng-deep .p-button-primary{color:var(--primary-color);border:unset}.endBar{display:flex;flex-direction:row;align-items:center;padding:unset;border-radius:5px;height:fit-content;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.endBar ::ng-deep button{background-color:transparent;border:unset;padding:.5rem;box-shadow:unset}.endBar ::ng-deep button:hover{background-color:rgba(from var(--primary-color) r g b/.1)}.endBar>:first-child ::ng-deep button{border-radius:5px;border-top-right-radius:unset;border-bottom-right-radius:unset;border-right:1px solid #dee2e6;color:var(--primary-color)}.endBar>:last-child ::ng-deep button{border-radius:5px;border-top-left-radius:unset;border-bottom-left-radius:unset;color:var(--primary-color)}\n"] }]
|
|
174
|
+
args: [{ selector: 'voice-record-widget', template: "<div class=\"recorderContainer\">\r\n <div class=\"recorderToolbar\">\r\n <!-- Start Recording -->\r\n <ui-action-button\r\n *ngIf=\"!isRecording\"\r\n [descriptor]=\"micButton\"\r\n (actionClick)=\"startRecording()\"\r\n >\r\n </ui-action-button>\r\n\r\n <!-- Stop Recording -->\r\n <ui-action-button *ngIf=\"isRecording\" [descriptor]=\"stopButton\" (actionClick)=\"stopRecording()\">\r\n </ui-action-button>\r\n\r\n <div class=\"progress\">{{ time }}</div>\r\n </div>\r\n <div class=\"waveform\" #waveform></div>\r\n <div class=\"endBar\">\r\n <!-- Save Recording -->\r\n <ui-action-button\r\n *ngIf=\"recordedBlob\"\r\n [descriptor]=\"saveButton\"\r\n (actionClick)=\"saveRecording()\"\r\n >\r\n </ui-action-button>\r\n\r\n <!-- Start Play -->\r\n <ui-action-button\r\n *ngIf=\"recordedBlob && !isPlaying\"\r\n [descriptor]=\"playButton\"\r\n (actionClick)=\"replayRecording()\"\r\n ></ui-action-button>\r\n\r\n <!-- Stop Play -->\r\n <ui-action-button\r\n *ngIf=\"recordedBlob && isPlaying\"\r\n [descriptor]=\"stopPlaybackButton\"\r\n (actionClick)=\"replayRecording()\"\r\n ></ui-action-button>\r\n </div>\r\n</div>\r\n", styles: [".recorderContainer{border:1px solid #dee2e6;background:#fff;border-radius:5px;display:flex;flex-direction:row;padding:.2rem;align-items:center}.waveform{flex:1;align-content:center;padding-right:1rem}.recorderToolbar{display:flex;flex-direction:row;gap:.2rem;padding:0 .5rem;align-items:center}.recorderToolbar ::ng-deep .p-button.p-button-icon-only{width:fit-content;padding:.2rem}.recorderToolbar ::ng-deep .mdc-button{min-width:unset;font-size:1.5rem;margin:unset}.recorderToolbar ::ng-deep .mat-mdc-button>.mat-icon{font-size:unset;width:unset;height:unset;padding:.2rem;margin:unset}.recorderToolbar ::ng-deep .p-button-text{background-color:transparent;border:unset;box-shadow:unset;padding:.2rem}.progress{align-content:center;font-size:1rem;height:100%;color:#6b7280}.recorderToolbar ::ng-deep .p-button-primary{color:var(--primary-color);border:unset}.endBar{display:flex;flex-direction:row;align-items:center;padding:unset;border-radius:5px;height:fit-content;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.endBar ::ng-deep button{background-color:transparent;border:unset;padding:.5rem;box-shadow:unset}.endBar ::ng-deep button:hover{background-color:rgba(from var(--primary-color) r g b/.1)}.endBar>:first-child ::ng-deep button{border-radius:5px;border-top-right-radius:unset;border-bottom-right-radius:unset;border-right:1px solid #dee2e6;color:var(--primary-color)}.endBar>:last-child ::ng-deep button{border-radius:5px;border-top-left-radius:unset;border-bottom-left-radius:unset;color:var(--primary-color)}\n"] }]
|
|
175
175
|
}], ctorParameters: () => [{ type: i3.ComponentLibrary, decorators: [{
|
|
176
176
|
type: Inject,
|
|
177
177
|
args: [COMPONENT_LIBRARY]
|
|
@@ -183,4 +183,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
|
|
|
183
183
|
}], recordingSaved: [{
|
|
184
184
|
type: Output
|
|
185
185
|
}] } });
|
|
186
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidm9pY2UtcmVjb3JkLXdpZGdldC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi92aWV3LWNvbnRleHQvc21hcnQtdWktYWN0aW9uL2NvbXBvbmVudHMvdXBsb2FkLXdpZGdldC92b2ljZS1yZWNvcmQtd2lkZ2V0L3ZvaWNlLXJlY29yZC13aWRnZXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvdmlldy1jb250ZXh0L3NtYXJ0LXVpLWFjdGlvbi9jb21wb25lbnRzL3VwbG9hZC13aWRnZXQvdm9pY2UtcmVjb3JkLXdpZGdldC92b2ljZS1yZWNvcmQtd2lkZ2V0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBR1QsU0FBUyxFQUdULE1BQU0sRUFDTixRQUFRLEVBQ1IsWUFBWSxFQUNaLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLFVBQVUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxZQUFZLE1BQU0sc0NBQXNDLENBQUM7QUFDaEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFM0YsT0FBTyxFQUFFLFlBQVksRUFBRSxrQkFBa0IsRUFBc0IsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7QUFPdkYsTUFBTSxPQUFPLDBCQUEwQjtJQTRDckMsWUFBbUQsT0FBMEI7UUF6Q25FLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQU1wRCxxQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztRQUVwQyxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUNwQixpQkFBWSxHQUFnQixJQUFJLENBQUM7UUFDakMsU0FBSSxHQUFXLE9B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ZixcbiAgT25EZXN0cm95LFxuICBWaWV3Q2hpbGQsXG4gIEFmdGVyVmlld0luaXQsXG4gIElucHV0LFxuICBJbmplY3QsXG4gIE9wdGlvbmFsLFxuICBFdmVudEVtaXR0ZXIsXG4gIE91dHB1dCxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBXYXZlU3VyZmVyIGZyb20gJ3dhdmVzdXJmZXIuanMnO1xuaW1wb3J0IFJlY29yZFBsdWdpbiBmcm9tICd3YXZlc3VyZmVyLmpzL2Rpc3QvcGx1Z2lucy9yZWNvcmQuanMnO1xuaW1wb3J0IHsgQ09NUE9ORU5UX0xJQlJBUlksIENvbXBvbmVudExpYnJhcnkgfSBmcm9tICcuLi8uLi8uLi8uLi91dGlsaXR5L2NvbXBvbmVudExpYnJhcnknO1xuaW1wb3J0IHsgVWlBY3Rpb25Nb2RlbCB9IGZyb20gJy4uLy4uLy4uL3VpLWFjdGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBJY29uUG9zaXRpb24sIFVpQWN0aW9uQnV0dG9uVHlwZSwgVWlBY3Rpb25EZXNjcmlwdG9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vYXBpJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndm9pY2UtcmVjb3JkLXdpZGdldCcsXG4gIHRlbXBsYXRlVXJsOiAnLi92b2ljZS1yZWNvcmQtd2lkZ2V0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdm9pY2UtcmVjb3JkLXdpZGdldC5jb21wb25lbnQuY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFZvaWNlUmVjb3JkV2lkZ2V0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBAVmlld0NoaWxkKCd3YXZlZm9ybScpIHdhdmVmb3JtUmVmITogRWxlbWVudFJlZjtcblxuICBAT3V0cHV0KCkgcmVjb3JkaW5nU2F2ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEJsb2I+KCk7XG5cbiAgcHJpdmF0ZSB3YXZlc3VyZmVyITogV2F2ZVN1cmZlcjtcbiAgcHJpdmF0ZSByZWNvcmQhOiBSZWNvcmRQbHVnaW47XG5cbiAgY29tcExpYjogQ29tcG9uZW50TGlicmFyeTtcbiAgY29tcG9uZW50TGlicmFyeSA9IENvbXBvbmVudExpYnJhcnk7XG5cbiAgaXNSZWNvcmRpbmcgPSBmYWxzZTtcbiAgcmVjb3JkZWRCbG9iOiBCbG9iIHwgbnVsbCA9IG51bGw7XG4gIHRpbWU6IHN0cmluZyA9ICcwMDowMCc7XG4gIGlzUGxheWluZyA9IGZhbHNlO1xuXG4gIG1pY0J1dHRvbjogVWlBY3Rpb25EZXNjcmlwdG9yID0ge1xuICAgIHRpdGxlOiAnJyxcbiAgICB0eXBlOiBVaUFjdGlvbkJ1dHRvblR5cGUuSUNPTixcbiAgICBpY29uOiAnbWljcm9waG9uZScsXG4gICAgaWNvblBvc2l0aW9uOiBJY29uUG9zaXRpb24uUFJFLFxuICAgIGNvbG9yOiAncHJpbWFyeScsXG4gIH07XG5cbiAgc3RvcEJ1dHRvbjogVWlBY3Rpb25EZXNjcmlwdG9yID0ge1xuICAgIHRpdGxlOiAnJyxcbiAgICB0eXBlOiBVaUFjdGlvbkJ1dHRvblR5cGUuSUNPTixcbiAgICBpY29uOiAnc3RvcC1jaXJjbGUnLFxuICAgIGljb25Qb3NpdGlvbjogSWNvblBvc2l0aW9uLlBSRSxcbiAgICBpY29uQ29sb3I6ICdyZWQnLFxuICAgIGNvbG9yOiAncHJpbWFyeScsXG4gIH07XG5cbiAgc2F2ZUJ1dHRvbjogVWlBY3Rpb25EZXNjcmlwdG9yID0ge1xuICAgIHRpdGxlOiAnJyxcbiAgICB0eXBlOiBVaUFjdGlvbkJ1dHRvblR5cGUuSUNPTixcbiAgICBpY29uOiAnc2F2ZScsXG4gICAgaWNvblBvc2l0aW9uOiBJY29uUG9zaXRpb24uUFJFLFxuICAgIGNvbG9yOiAncHJpbWFyeScsXG4gIH07XG5cbiAgcGxheUJ1dHRvbiE6IFVpQWN0aW9uRGVzY3JpcHRvcjtcbiAgc3RvcFBsYXliYWNrQnV0dG9uITogVWlBY3Rpb25EZXNjcmlwdG9yO1xuXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoQ09NUE9ORU5UX0xJQlJBUlkpIEBPcHRpb25hbCgpIGNvbXBMaWI/OiBDb21wb25lbnRMaWJyYXJ5KSB7XG4gICAgdGhpcy5jb21wTGliID0gY29tcExpYiA/PyBDb21wb25lbnRMaWJyYXJ5LlBSSU1FTkc7XG4gIH1cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5wbGF5QnV0dG9uID0ge1xuICAgICAgdGl0bGU6ICcnLFxuICAgICAgdHlwZTogVWlBY3Rpb25CdXR0b25UeXBlLklDT04sXG4gICAgICBpY29uOiB0aGlzLmNvbXBMaWIgPT09IENvbXBvbmVudExpYnJhcnkuUFJJTUVORyA/ICdwbGF5LWNpcmNsZScgOiAncGxheV9jaXJjbGUnLFxuICAgICAgaWNvblBvc2l0aW9uOiBJY29uUG9zaXRpb24uUFJFLFxuICAgICAgY29sb3I6ICdwcmltYXJ5JyxcbiAgICB9O1xuICAgIHRoaXMuc3RvcFBsYXliYWNrQnV0dG9uID0ge1xuICAgICAgdGl0bGU6ICcnLFxuICAgICAgdHlwZTogVWlBY3Rpb25CdXR0b25UeXBlLklDT04sXG4gICAgICBpY29uOiB0aGlzLmNvbXBMaWIgPT09IENvbXBvbmVudExpYnJhcnkuUFJJTUVORyA/ICdzdG9wLWNpcmNsZScgOiAnc3RvcF9jaXJjbGUnLFxuICAgICAgaWNvblBvc2l0aW9uOiBJY29uUG9zaXRpb24uUFJFLFxuICAgICAgY29sb3I6ICdyZWQnLFxuICAgIH07XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgbGV0IGJvZHkgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdib2R5Jyk7XG4gICAgbGV0IHByaW1hcnlDb2xvciA9IGdldENvbXB1dGVkU3R5bGUoYm9keSEpLmdldFByb3BlcnR5VmFsdWUoJy0tcHJpbWFyeS1jb2xvcicpLnRyaW0oKTtcblxuICAgIHRoaXMud2F2ZXN1cmZlciA9IFdhdmVTdXJmZXIuY3JlYXRlKHtcbiAgICAgIGNvbnRhaW5lcjogdGhpcy53YXZlZm9ybVJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgd2F2ZUNvbG9yOiBwcmltYXJ5Q29sb3IsXG4gICAgICBwcm9ncmVzc0NvbG9yOiB0aGlzLmFkZEFscGhhVG9Db2xvcihwcmltYXJ5Q29sb3IhLCAwLjUpLFxuICAgICAgaGVpZ2h0OiA0NSxcbiAgICAgIGJhcldpZHRoOiA1LFxuICAgICAgYmFyR2FwOiAxLFxuICAgICAgYmFyUmFkaXVzOiA1LFxuICAgICAgcGx1Z2luczogW1xuICAgICAgICBSZWNvcmRQbHVnaW4uY3JlYXRlKHtcbiAgICAgICAgICByZW5kZXJSZWNvcmRlZEF1ZGlvOiB0cnVlLFxuICAgICAgICAgIHNjcm9sbGluZ1dhdmVmb3JtOiB0cnVlLFxuICAgICAgICAgIG1pbWVUeXBlOiAnYXVkaW8vd2VibScsXG4gICAgICAgIH0pLFxuICAgICAgXSxcbiAgICB9KTtcblxuICAgIHRoaXMud2F2ZXN1cmZlci5zZXRWb2x1bWUoMSk7XG5cbiAgICB0aGlzLnJlY29yZCA9IHRoaXMud2F2ZXN1cmZlci5yZWdpc3RlclBsdWdpbihcbiAgICAgIFJlY29yZFBsdWdpbi5jcmVhdGUoe1xuICAgICAgICByZW5kZXJSZWNvcmRlZEF1ZGlvOiB0cnVlLFxuICAgICAgICBzY3JvbGxpbmdXYXZlZm9ybTogdHJ1ZSxcbiAgICAgICAgY29udGludW91c1dhdmVmb3JtOiBmYWxzZSxcbiAgICAgICAgY29udGludW91c1dhdmVmb3JtRHVyYXRpb246IDE1LFxuICAgICAgfSlcbiAgICApO1xuXG4gICAgdGhpcy53YXZlc3VyZmVyLm9uKCdkYmxjbGljaycsICgpID0+IHtcbiAgICAgIHRoaXMud2F2ZXN1cmZlci5wbGF5KCk7XG4gICAgICB0aGlzLmlzUGxheWluZyA9IHRydWU7XG4gICAgfSk7XG4gICAgdGhpcy5yZWNvcmQub24oJ3JlY29yZC1lbmQnLCAoYmxvYjogQmxvYikgPT4ge1xuICAgICAgdGhpcy5yZWNvcmRlZEJsb2IgPSBibG9iO1xuICAgIH0pO1xuICAgIHRoaXMucmVjb3JkLm9uKCdyZWNvcmQtcHJvZ3Jlc3MnLCAodGltZSkgPT4ge1xuICAgICAgdGhpcy51cGRhdGVQcm9ncmVzcyh0aW1lKTtcbiAgICB9KTtcbiAgICB0aGlzLndhdmVzdXJmZXIub24oJ2ZpbmlzaCcsICgpID0+IHtcbiAgICAgIHRoaXMuaXNQbGF5aW5nID0gZmFsc2U7XG4gICAgfSk7XG4gIH1cblxuICBhc3luYyBzdGFydFJlY29yZGluZygpIHtcbiAgICBjb25zdCBjb25maXJtZWQgPSBhd2FpdCB0aGlzLmNoZWNrSGFzUmVjb3JkZWQoKTtcbiAgICBpZiAoIWNvbmZpcm1lZCkgcmV0dXJuO1xuXG4gICAgaWYgKHRoaXMucmVjb3JkICYmICF0aGlzLmlzUmVjb3JkaW5nKSB7XG4gICAgICB0aGlzLnJlY29yZC5zdGFydFJlY29yZGluZygpO1xuICAgICAgdGhpcy5pc1JlY29yZGluZyA9IHRydWU7XG4gICAgfVxuICB9XG4gIHByaXZhdGUgYXN5bmMgY2hlY2tIYXNSZWNvcmRlZCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBpZiAodGhpcy5yZWNvcmRlZEJsb2IpIHtcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHVwZGF0ZVByb2dyZXNzKHRpbWU6IG51bWJlcikge1xuICAgIGxldCBmb3JtYXR0ZWRUaW1lID0gW01hdGguZmxvb3IoKHRpbWUgJSAzNjAwMDAwKSAvIDYwMDAwKSwgTWF0aC5mbG9vcigodGltZSAlIDYwMDAwKSAvIDEwMDApXVxuICAgICAgLm1hcCgodikgPT4gKHYgPCAxMCA/ICcwJyArIHYgOiB2KSlcbiAgICAgIC5qb2luKCc6Jyk7XG4gICAgdGhpcy50aW1lID0gZm9ybWF0dGVkVGltZTtcbiAgfVxuXG4gIHN0b3BSZWNvcmRpbmcoKSB7XG4gICAgaWYgKHRoaXMucmVjb3JkICYmIHRoaXMuaXNSZWNvcmRpbmcpIHtcbiAgICAgIHRoaXMucmVjb3JkLnN0b3BSZWNvcmRpbmcoKTtcbiAgICAgIHRoaXMuaXNSZWNvcmRpbmcgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBzYXZlUmVjb3JkaW5nKCkge1xuICAgIGlmICh0aGlzLnJlY29yZGVkQmxvYikge1xuICAgICAgY29uc3Qgbm93ID0gbmV3IERhdGUoKTtcbiAgICAgIGNvbnN0IGZvcm1hdHRlZERhdGUgPSBub3cudG9Mb2NhbGVTdHJpbmcoJ3N2LVNFJykucmVwbGFjZSgnICcsICdfJykucmVwbGFjZSgvOi9nLCAnLScpO1xuXG4gICAgICBjb25zdCBmaWxlTmFtZSA9IGByZWNvcmRpbmdfJHtmb3JtYXR0ZWREYXRlfS53ZWJtYDtcbiAgICAgIGNvbnN0IGZpbGUgPSBuZXcgRmlsZShbdGhpcy5yZWNvcmRlZEJsb2JdLCBmaWxlTmFtZSwgeyB0eXBlOiAnYXVkaW8vd2VibScgfSk7XG5cbiAgICAgIHRoaXMucmVjb3JkaW5nU2F2ZWQuZW1pdChmaWxlKTtcblxuICAgICAgdGhpcy5yZWNvcmRlZEJsb2IgPSBudWxsO1xuICAgICAgdGhpcy50aW1lID0gJzAwOjAwJztcbiAgICAgIHRoaXMuaXNQbGF5aW5nID0gZmFsc2U7XG4gICAgICB0aGlzLndhdmVzdXJmZXIuZW1wdHkoKTtcbiAgICB9XG4gIH1cblxuICByZXBsYXlSZWNvcmRpbmcoKSB7XG4gICAgaWYgKHRoaXMucmVjb3JkZWRCbG9iKSB7XG4gICAgICB0aGlzLmlzUGxheWluZyA9ICF0aGlzLmlzUGxheWluZztcbiAgICAgIHRoaXMud2F2ZXN1cmZlci5wbGF5UGF1c2UoKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICBpZiAodGhpcy53YXZlc3VyZmVyKSB7XG4gICAgICB0aGlzLndhdmVzdXJmZXIuZGVzdHJveSgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYWRkQWxwaGFUb0NvbG9yKGhleENvbG9yOiBzdHJpbmcsIGFscGhhOiBudW1iZXIpOiBzdHJpbmcge1xuICAgIGlmICgvXiMoW2EtZlxcZF0pKFthLWZcXGRdKShbYS1mXFxkXSkkL2kudGVzdChoZXhDb2xvcikpIHtcbiAgICAgIGhleENvbG9yID0gaGV4Q29sb3IucmVwbGFjZShcbiAgICAgICAgL14jKFthLWZcXGRdKShbYS1mXFxkXSkoW2EtZlxcZF0pJC9pLFxuICAgICAgICAoXywgciwgZywgYikgPT4gYCMke3J9JHtyfSR7Z30ke2d9JHtifSR7Yn1gXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IGhleE1hdGNoID0gL14jPyhbYS1mXFxkXXsyfSkoW2EtZlxcZF17Mn0pKFthLWZcXGRdezJ9KSQvaS5leGVjKGhleENvbG9yKTtcbiAgICBpZiAoaGV4TWF0Y2gpIHtcbiAgICAgIGNvbnN0IFssIHIsIGcsIGJdID0gaGV4TWF0Y2g7XG4gICAgICByZXR1cm4gYHJnYmEoJHtwYXJzZUludChyLCAxNil9LCAke3BhcnNlSW50KGcsIDE2KX0sICR7cGFyc2VJbnQoYiwgMTYpfSwgJHthbHBoYX0pYDtcbiAgICB9XG5cbiAgICBjb25zdCBjdHggPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKS5nZXRDb250ZXh0KCcyZCcpO1xuICAgIGlmIChjdHgpIHtcbiAgICAgIGN0eC5maWxsU3R5bGUgPSBoZXhDb2xvcjtcbiAgICAgIGNvbnN0IHBhcnNlZCA9IGN0eC5maWxsU3R5bGU7XG4gICAgICBjb25zdCByZ2JNYXRjaCA9IC9ecmdiXFwoKFxcZCspLFxccyooXFxkKyksXFxzKihcXGQrKVxcKSQvLmV4ZWMocGFyc2VkKTtcbiAgICAgIGlmIChyZ2JNYXRjaCkge1xuICAgICAgICBjb25zdCBbLCByLCBnLCBiXSA9IHJnYk1hdGNoO1xuICAgICAgICByZXR1cm4gYHJnYmEoJHtyfSwgJHtnfSwgJHtifSwgJHthbHBoYX0pYDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gaGV4Q29sb3I7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJyZWNvcmRlckNvbnRhaW5lclwiPlxuICA8ZGl2IGNsYXNzPVwicmVjb3JkZXJUb29sYmFyXCI+XG4gICAgPCEtLSBTdGFydCBSZWNvcmRpbmcgLS0+XG4gICAgPHVpLWFjdGlvbi1idXR0b25cbiAgICAgICpuZ0lmPVwiIWlzUmVjb3JkaW5nXCJcbiAgICAgIFtkZXNjcmlwdG9yXT1cIm1pY0J1dHRvblwiXG4gICAgICAoYWN0aW9uQ2xpY2spPVwic3RhcnRSZWNvcmRpbmcoKVwiXG4gICAgPlxuICAgIDwvdWktYWN0aW9uLWJ1dHRvbj5cblxuICAgIDwhLS0gU3RvcCBSZWNvcmRpbmcgLS0+XG4gICAgPHVpLWFjdGlvbi1idXR0b24gKm5nSWY9XCJpc1JlY29yZGluZ1wiIFtkZXNjcmlwdG9yXT1cInN0b3BCdXR0b25cIiAoYWN0aW9uQ2xpY2spPVwic3RvcFJlY29yZGluZygpXCI+XG4gICAgPC91aS1hY3Rpb24tYnV0dG9uPlxuXG4gICAgPGRpdiBjbGFzcz1cInByb2dyZXNzXCI+e3sgdGltZSB9fTwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cIndhdmVmb3JtXCIgI3dhdmVmb3JtPjwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiZW5kQmFyXCI+XG4gICAgPCEtLSBTYXZlIFJlY29yZGluZyAtLT5cbiAgICA8dWktYWN0aW9uLWJ1dHRvblxuICAgICAgKm5nSWY9XCJyZWNvcmRlZEJsb2JcIlxuICAgICAgW2Rlc2NyaXB0b3JdPVwic2F2ZUJ1dHRvblwiXG4gICAgICAoYWN0aW9uQ2xpY2spPVwic2F2ZVJlY29yZGluZygpXCJcbiAgICA+XG4gICAgPC91aS1hY3Rpb24tYnV0dG9uPlxuXG4gICAgPCEtLSBTdGFydCBQbGF5ICAtLT5cbiAgICA8dWktYWN0aW9uLWJ1dHRvblxuICAgICAgKm5nSWY9XCJyZWNvcmRlZEJsb2IgJiYgIWlzUGxheWluZ1wiXG4gICAgICBbZGVzY3JpcHRvcl09XCJwbGF5QnV0dG9uXCJcbiAgICAgIChhY3Rpb25DbGljayk9XCJyZXBsYXlSZWNvcmRpbmcoKVwiXG4gICAgPjwvdWktYWN0aW9uLWJ1dHRvbj5cblxuICAgIDwhLS0gU3RvcCBQbGF5ICAtLT5cbiAgICA8dWktYWN0aW9uLWJ1dHRvblxuICAgICAgKm5nSWY9XCJyZWNvcmRlZEJsb2IgJiYgaXNQbGF5aW5nXCJcbiAgICAgIFtkZXNjcmlwdG9yXT1cInN0b3BQbGF5YmFja0J1dHRvblwiXG4gICAgICAoYWN0aW9uQ2xpY2spPVwicmVwbGF5UmVjb3JkaW5nKClcIlxuICAgID48L3VpLWFjdGlvbi1idXR0b24+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
186
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidm9pY2UtcmVjb3JkLXdpZGdldC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi92aWV3LWNvbnRleHQvc21hcnQtdWktYWN0aW9uL2NvbXBvbmVudHMvdXBsb2FkLXdpZGdldC92b2ljZS1yZWNvcmQtd2lkZ2V0L3ZvaWNlLXJlY29yZC13aWRnZXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvdmlldy1jb250ZXh0L3NtYXJ0LXVpLWFjdGlvbi9jb21wb25lbnRzL3VwbG9hZC13aWRnZXQvdm9pY2UtcmVjb3JkLXdpZGdldC92b2ljZS1yZWNvcmQtd2lkZ2V0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBR1QsU0FBUyxFQUdULE1BQU0sRUFDTixRQUFRLEVBQ1IsWUFBWSxFQUNaLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLFVBQVUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxZQUFZLE1BQU0sc0NBQXNDLENBQUM7QUFDaEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFM0YsT0FBTyxFQUFFLFlBQVksRUFBRSxrQkFBa0IsRUFBc0IsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7QUFPdkYsTUFBTSxPQUFPLDBCQUEwQjtJQTRDckMsWUFBbUQsT0FBMEI7UUF6Q25FLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQU1wRCxxQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztRQUVwQyxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUNwQixpQkFBWSxHQUFnQixJQUFJLENBQUM7UUFDakMsU0FBSSxHQUFXLE9B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bnRSZWYsXHJcbiAgT25EZXN0cm95LFxyXG4gIFZpZXdDaGlsZCxcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIElucHV0LFxyXG4gIEluamVjdCxcclxuICBPcHRpb25hbCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgT3V0cHV0LFxyXG4gIE9uSW5pdCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IFdhdmVTdXJmZXIgZnJvbSAnd2F2ZXN1cmZlci5qcyc7XHJcbmltcG9ydCBSZWNvcmRQbHVnaW4gZnJvbSAnd2F2ZXN1cmZlci5qcy9kaXN0L3BsdWdpbnMvcmVjb3JkLmpzJztcclxuaW1wb3J0IHsgQ09NUE9ORU5UX0xJQlJBUlksIENvbXBvbmVudExpYnJhcnkgfSBmcm9tICcuLi8uLi8uLi8uLi91dGlsaXR5L2NvbXBvbmVudExpYnJhcnknO1xyXG5pbXBvcnQgeyBVaUFjdGlvbk1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vdWktYWN0aW9uLm1vZGVsJztcclxuaW1wb3J0IHsgSWNvblBvc2l0aW9uLCBVaUFjdGlvbkJ1dHRvblR5cGUsIFVpQWN0aW9uRGVzY3JpcHRvciB9IGZyb20gJy4uLy4uLy4uLy4uL2FwaSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3ZvaWNlLXJlY29yZC13aWRnZXQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi92b2ljZS1yZWNvcmQtd2lkZ2V0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi92b2ljZS1yZWNvcmQtd2lkZ2V0LmNvbXBvbmVudC5jc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFZvaWNlUmVjb3JkV2lkZ2V0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xyXG4gIEBWaWV3Q2hpbGQoJ3dhdmVmb3JtJykgd2F2ZWZvcm1SZWYhOiBFbGVtZW50UmVmO1xyXG5cclxuICBAT3V0cHV0KCkgcmVjb3JkaW5nU2F2ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEJsb2I+KCk7XHJcblxyXG4gIHByaXZhdGUgd2F2ZXN1cmZlciE6IFdhdmVTdXJmZXI7XHJcbiAgcHJpdmF0ZSByZWNvcmQhOiBSZWNvcmRQbHVnaW47XHJcblxyXG4gIGNvbXBMaWI6IENvbXBvbmVudExpYnJhcnk7XHJcbiAgY29tcG9uZW50TGlicmFyeSA9IENvbXBvbmVudExpYnJhcnk7XHJcblxyXG4gIGlzUmVjb3JkaW5nID0gZmFsc2U7XHJcbiAgcmVjb3JkZWRCbG9iOiBCbG9iIHwgbnVsbCA9IG51bGw7XHJcbiAgdGltZTogc3RyaW5nID0gJzAwOjAwJztcclxuICBpc1BsYXlpbmcgPSBmYWxzZTtcclxuXHJcbiAgbWljQnV0dG9uOiBVaUFjdGlvbkRlc2NyaXB0b3IgPSB7XHJcbiAgICB0aXRsZTogJycsXHJcbiAgICB0eXBlOiBVaUFjdGlvbkJ1dHRvblR5cGUuSUNPTixcclxuICAgIGljb246ICdtaWNyb3Bob25lJyxcclxuICAgIGljb25Qb3NpdGlvbjogSWNvblBvc2l0aW9uLlBSRSxcclxuICAgIGNvbG9yOiAncHJpbWFyeScsXHJcbiAgfTtcclxuXHJcbiAgc3RvcEJ1dHRvbjogVWlBY3Rpb25EZXNjcmlwdG9yID0ge1xyXG4gICAgdGl0bGU6ICcnLFxyXG4gICAgdHlwZTogVWlBY3Rpb25CdXR0b25UeXBlLklDT04sXHJcbiAgICBpY29uOiAnc3RvcC1jaXJjbGUnLFxyXG4gICAgaWNvblBvc2l0aW9uOiBJY29uUG9zaXRpb24uUFJFLFxyXG4gICAgaWNvbkNvbG9yOiAncmVkJyxcclxuICAgIGNvbG9yOiAncHJpbWFyeScsXHJcbiAgfTtcclxuXHJcbiAgc2F2ZUJ1dHRvbjogVWlBY3Rpb25EZXNjcmlwdG9yID0ge1xyXG4gICAgdGl0bGU6ICcnLFxyXG4gICAgdHlwZTogVWlBY3Rpb25CdXR0b25UeXBlLklDT04sXHJcbiAgICBpY29uOiAnc2F2ZScsXHJcbiAgICBpY29uUG9zaXRpb246IEljb25Qb3NpdGlvbi5QUkUsXHJcbiAgICBjb2xvcjogJ3ByaW1hcnknLFxyXG4gIH07XHJcblxyXG4gIHBsYXlCdXR0b24hOiBVaUFjdGlvbkRlc2NyaXB0b3I7XHJcbiAgc3RvcFBsYXliYWNrQnV0dG9uITogVWlBY3Rpb25EZXNjcmlwdG9yO1xyXG5cclxuICBjb25zdHJ1Y3RvcihASW5qZWN0KENPTVBPTkVOVF9MSUJSQVJZKSBAT3B0aW9uYWwoKSBjb21wTGliPzogQ29tcG9uZW50TGlicmFyeSkge1xyXG4gICAgdGhpcy5jb21wTGliID0gY29tcExpYiA/PyBDb21wb25lbnRMaWJyYXJ5LlBSSU1FTkc7XHJcbiAgfVxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5wbGF5QnV0dG9uID0ge1xyXG4gICAgICB0aXRsZTogJycsXHJcbiAgICAgIHR5cGU6IFVpQWN0aW9uQnV0dG9uVHlwZS5JQ09OLFxyXG4gICAgICBpY29uOiB0aGlzLmNvbXBMaWIgPT09IENvbXBvbmVudExpYnJhcnkuUFJJTUVORyA/ICdwbGF5LWNpcmNsZScgOiAncGxheV9jaXJjbGUnLFxyXG4gICAgICBpY29uUG9zaXRpb246IEljb25Qb3NpdGlvbi5QUkUsXHJcbiAgICAgIGNvbG9yOiAncHJpbWFyeScsXHJcbiAgICB9O1xyXG4gICAgdGhpcy5zdG9wUGxheWJhY2tCdXR0b24gPSB7XHJcbiAgICAgIHRpdGxlOiAnJyxcclxuICAgICAgdHlwZTogVWlBY3Rpb25CdXR0b25UeXBlLklDT04sXHJcbiAgICAgIGljb246IHRoaXMuY29tcExpYiA9PT0gQ29tcG9uZW50TGlicmFyeS5QUklNRU5HID8gJ3N0b3AtY2lyY2xlJyA6ICdzdG9wX2NpcmNsZScsXHJcbiAgICAgIGljb25Qb3NpdGlvbjogSWNvblBvc2l0aW9uLlBSRSxcclxuICAgICAgY29sb3I6ICdyZWQnLFxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIGxldCBib2R5ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignYm9keScpO1xyXG4gICAgbGV0IHByaW1hcnlDb2xvciA9IGdldENvbXB1dGVkU3R5bGUoYm9keSEpLmdldFByb3BlcnR5VmFsdWUoJy0tcHJpbWFyeS1jb2xvcicpLnRyaW0oKTtcclxuXHJcbiAgICB0aGlzLndhdmVzdXJmZXIgPSBXYXZlU3VyZmVyLmNyZWF0ZSh7XHJcbiAgICAgIGNvbnRhaW5lcjogdGhpcy53YXZlZm9ybVJlZi5uYXRpdmVFbGVtZW50LFxyXG4gICAgICB3YXZlQ29sb3I6IHByaW1hcnlDb2xvcixcclxuICAgICAgcHJvZ3Jlc3NDb2xvcjogdGhpcy5hZGRBbHBoYVRvQ29sb3IocHJpbWFyeUNvbG9yISwgMC41KSxcclxuICAgICAgaGVpZ2h0OiA0NSxcclxuICAgICAgYmFyV2lkdGg6IDUsXHJcbiAgICAgIGJhckdhcDogMSxcclxuICAgICAgYmFyUmFkaXVzOiA1LFxyXG4gICAgICBwbHVnaW5zOiBbXHJcbiAgICAgICAgUmVjb3JkUGx1Z2luLmNyZWF0ZSh7XHJcbiAgICAgICAgICByZW5kZXJSZWNvcmRlZEF1ZGlvOiB0cnVlLFxyXG4gICAgICAgICAgc2Nyb2xsaW5nV2F2ZWZvcm06IHRydWUsXHJcbiAgICAgICAgICBtaW1lVHlwZTogJ2F1ZGlvL3dlYm0nLFxyXG4gICAgICAgIH0pLFxyXG4gICAgICBdLFxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy53YXZlc3VyZmVyLnNldFZvbHVtZSgxKTtcclxuXHJcbiAgICB0aGlzLnJlY29yZCA9IHRoaXMud2F2ZXN1cmZlci5yZWdpc3RlclBsdWdpbihcclxuICAgICAgUmVjb3JkUGx1Z2luLmNyZWF0ZSh7XHJcbiAgICAgICAgcmVuZGVyUmVjb3JkZWRBdWRpbzogdHJ1ZSxcclxuICAgICAgICBzY3JvbGxpbmdXYXZlZm9ybTogdHJ1ZSxcclxuICAgICAgICBjb250aW51b3VzV2F2ZWZvcm06IGZhbHNlLFxyXG4gICAgICAgIGNvbnRpbnVvdXNXYXZlZm9ybUR1cmF0aW9uOiAxNSxcclxuICAgICAgfSlcclxuICAgICk7XHJcblxyXG4gICAgdGhpcy53YXZlc3VyZmVyLm9uKCdkYmxjbGljaycsICgpID0+IHtcclxuICAgICAgdGhpcy53YXZlc3VyZmVyLnBsYXkoKTtcclxuICAgICAgdGhpcy5pc1BsYXlpbmcgPSB0cnVlO1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLnJlY29yZC5vbigncmVjb3JkLWVuZCcsIChibG9iOiBCbG9iKSA9PiB7XHJcbiAgICAgIHRoaXMucmVjb3JkZWRCbG9iID0gYmxvYjtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5yZWNvcmQub24oJ3JlY29yZC1wcm9ncmVzcycsICh0aW1lKSA9PiB7XHJcbiAgICAgIHRoaXMudXBkYXRlUHJvZ3Jlc3ModGltZSk7XHJcbiAgICB9KTtcclxuICAgIHRoaXMud2F2ZXN1cmZlci5vbignZmluaXNoJywgKCkgPT4ge1xyXG4gICAgICB0aGlzLmlzUGxheWluZyA9IGZhbHNlO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBhc3luYyBzdGFydFJlY29yZGluZygpIHtcclxuICAgIGNvbnN0IGNvbmZpcm1lZCA9IGF3YWl0IHRoaXMuY2hlY2tIYXNSZWNvcmRlZCgpO1xyXG4gICAgaWYgKCFjb25maXJtZWQpIHJldHVybjtcclxuXHJcbiAgICBpZiAodGhpcy5yZWNvcmQgJiYgIXRoaXMuaXNSZWNvcmRpbmcpIHtcclxuICAgICAgdGhpcy5yZWNvcmQuc3RhcnRSZWNvcmRpbmcoKTtcclxuICAgICAgdGhpcy5pc1JlY29yZGluZyA9IHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHByaXZhdGUgYXN5bmMgY2hlY2tIYXNSZWNvcmRlZCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgIGlmICh0aGlzLnJlY29yZGVkQmxvYikge1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlUHJvZ3Jlc3ModGltZTogbnVtYmVyKSB7XHJcbiAgICBsZXQgZm9ybWF0dGVkVGltZSA9IFtNYXRoLmZsb29yKCh0aW1lICUgMzYwMDAwMCkgLyA2MDAwMCksIE1hdGguZmxvb3IoKHRpbWUgJSA2MDAwMCkgLyAxMDAwKV1cclxuICAgICAgLm1hcCgodikgPT4gKHYgPCAxMCA/ICcwJyArIHYgOiB2KSlcclxuICAgICAgLmpvaW4oJzonKTtcclxuICAgIHRoaXMudGltZSA9IGZvcm1hdHRlZFRpbWU7XHJcbiAgfVxyXG5cclxuICBzdG9wUmVjb3JkaW5nKCkge1xyXG4gICAgaWYgKHRoaXMucmVjb3JkICYmIHRoaXMuaXNSZWNvcmRpbmcpIHtcclxuICAgICAgdGhpcy5yZWNvcmQuc3RvcFJlY29yZGluZygpO1xyXG4gICAgICB0aGlzLmlzUmVjb3JkaW5nID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzYXZlUmVjb3JkaW5nKCkge1xyXG4gICAgaWYgKHRoaXMucmVjb3JkZWRCbG9iKSB7XHJcbiAgICAgIGNvbnN0IG5vdyA9IG5ldyBEYXRlKCk7XHJcbiAgICAgIGNvbnN0IGZvcm1hdHRlZERhdGUgPSBub3cudG9Mb2NhbGVTdHJpbmcoJ3N2LVNFJykucmVwbGFjZSgnICcsICdfJykucmVwbGFjZSgvOi9nLCAnLScpO1xyXG5cclxuICAgICAgY29uc3QgZmlsZU5hbWUgPSBgcmVjb3JkaW5nXyR7Zm9ybWF0dGVkRGF0ZX0ud2VibWA7XHJcbiAgICAgIGNvbnN0IGZpbGUgPSBuZXcgRmlsZShbdGhpcy5yZWNvcmRlZEJsb2JdLCBmaWxlTmFtZSwgeyB0eXBlOiAnYXVkaW8vd2VibScgfSk7XHJcblxyXG4gICAgICB0aGlzLnJlY29yZGluZ1NhdmVkLmVtaXQoZmlsZSk7XHJcblxyXG4gICAgICB0aGlzLnJlY29yZGVkQmxvYiA9IG51bGw7XHJcbiAgICAgIHRoaXMudGltZSA9ICcwMDowMCc7XHJcbiAgICAgIHRoaXMuaXNQbGF5aW5nID0gZmFsc2U7XHJcbiAgICAgIHRoaXMud2F2ZXN1cmZlci5lbXB0eSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVwbGF5UmVjb3JkaW5nKCkge1xyXG4gICAgaWYgKHRoaXMucmVjb3JkZWRCbG9iKSB7XHJcbiAgICAgIHRoaXMuaXNQbGF5aW5nID0gIXRoaXMuaXNQbGF5aW5nO1xyXG4gICAgICB0aGlzLndhdmVzdXJmZXIucGxheVBhdXNlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIGlmICh0aGlzLndhdmVzdXJmZXIpIHtcclxuICAgICAgdGhpcy53YXZlc3VyZmVyLmRlc3Ryb3koKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYWRkQWxwaGFUb0NvbG9yKGhleENvbG9yOiBzdHJpbmcsIGFscGhhOiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgaWYgKC9eIyhbYS1mXFxkXSkoW2EtZlxcZF0pKFthLWZcXGRdKSQvaS50ZXN0KGhleENvbG9yKSkge1xyXG4gICAgICBoZXhDb2xvciA9IGhleENvbG9yLnJlcGxhY2UoXHJcbiAgICAgICAgL14jKFthLWZcXGRdKShbYS1mXFxkXSkoW2EtZlxcZF0pJC9pLFxyXG4gICAgICAgIChfLCByLCBnLCBiKSA9PiBgIyR7cn0ke3J9JHtnfSR7Z30ke2J9JHtifWBcclxuICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBoZXhNYXRjaCA9IC9eIz8oW2EtZlxcZF17Mn0pKFthLWZcXGRdezJ9KShbYS1mXFxkXXsyfSkkL2kuZXhlYyhoZXhDb2xvcik7XHJcbiAgICBpZiAoaGV4TWF0Y2gpIHtcclxuICAgICAgY29uc3QgWywgciwgZywgYl0gPSBoZXhNYXRjaDtcclxuICAgICAgcmV0dXJuIGByZ2JhKCR7cGFyc2VJbnQociwgMTYpfSwgJHtwYXJzZUludChnLCAxNil9LCAke3BhcnNlSW50KGIsIDE2KX0sICR7YWxwaGF9KWA7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgY3R4ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJykuZ2V0Q29udGV4dCgnMmQnKTtcclxuICAgIGlmIChjdHgpIHtcclxuICAgICAgY3R4LmZpbGxTdHlsZSA9IGhleENvbG9yO1xyXG4gICAgICBjb25zdCBwYXJzZWQgPSBjdHguZmlsbFN0eWxlO1xyXG4gICAgICBjb25zdCByZ2JNYXRjaCA9IC9ecmdiXFwoKFxcZCspLFxccyooXFxkKyksXFxzKihcXGQrKVxcKSQvLmV4ZWMocGFyc2VkKTtcclxuICAgICAgaWYgKHJnYk1hdGNoKSB7XHJcbiAgICAgICAgY29uc3QgWywgciwgZywgYl0gPSByZ2JNYXRjaDtcclxuICAgICAgICByZXR1cm4gYHJnYmEoJHtyfSwgJHtnfSwgJHtifSwgJHthbHBoYX0pYDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBoZXhDb2xvcjtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInJlY29yZGVyQ29udGFpbmVyXCI+XHJcbiAgPGRpdiBjbGFzcz1cInJlY29yZGVyVG9vbGJhclwiPlxyXG4gICAgPCEtLSBTdGFydCBSZWNvcmRpbmcgLS0+XHJcbiAgICA8dWktYWN0aW9uLWJ1dHRvblxyXG4gICAgICAqbmdJZj1cIiFpc1JlY29yZGluZ1wiXHJcbiAgICAgIFtkZXNjcmlwdG9yXT1cIm1pY0J1dHRvblwiXHJcbiAgICAgIChhY3Rpb25DbGljayk9XCJzdGFydFJlY29yZGluZygpXCJcclxuICAgID5cclxuICAgIDwvdWktYWN0aW9uLWJ1dHRvbj5cclxuXHJcbiAgICA8IS0tIFN0b3AgUmVjb3JkaW5nIC0tPlxyXG4gICAgPHVpLWFjdGlvbi1idXR0b24gKm5nSWY9XCJpc1JlY29yZGluZ1wiIFtkZXNjcmlwdG9yXT1cInN0b3BCdXR0b25cIiAoYWN0aW9uQ2xpY2spPVwic3RvcFJlY29yZGluZygpXCI+XHJcbiAgICA8L3VpLWFjdGlvbi1idXR0b24+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cInByb2dyZXNzXCI+e3sgdGltZSB9fTwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJ3YXZlZm9ybVwiICN3YXZlZm9ybT48L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwiZW5kQmFyXCI+XHJcbiAgICA8IS0tIFNhdmUgUmVjb3JkaW5nIC0tPlxyXG4gICAgPHVpLWFjdGlvbi1idXR0b25cclxuICAgICAgKm5nSWY9XCJyZWNvcmRlZEJsb2JcIlxyXG4gICAgICBbZGVzY3JpcHRvcl09XCJzYXZlQnV0dG9uXCJcclxuICAgICAgKGFjdGlvbkNsaWNrKT1cInNhdmVSZWNvcmRpbmcoKVwiXHJcbiAgICA+XHJcbiAgICA8L3VpLWFjdGlvbi1idXR0b24+XHJcblxyXG4gICAgPCEtLSBTdGFydCBQbGF5ICAtLT5cclxuICAgIDx1aS1hY3Rpb24tYnV0dG9uXHJcbiAgICAgICpuZ0lmPVwicmVjb3JkZWRCbG9iICYmICFpc1BsYXlpbmdcIlxyXG4gICAgICBbZGVzY3JpcHRvcl09XCJwbGF5QnV0dG9uXCJcclxuICAgICAgKGFjdGlvbkNsaWNrKT1cInJlcGxheVJlY29yZGluZygpXCJcclxuICAgID48L3VpLWFjdGlvbi1idXR0b24+XHJcblxyXG4gICAgPCEtLSBTdG9wIFBsYXkgIC0tPlxyXG4gICAgPHVpLWFjdGlvbi1idXR0b25cclxuICAgICAgKm5nSWY9XCJyZWNvcmRlZEJsb2IgJiYgaXNQbGF5aW5nXCJcclxuICAgICAgW2Rlc2NyaXB0b3JdPVwic3RvcFBsYXliYWNrQnV0dG9uXCJcclxuICAgICAgKGFjdGlvbkNsaWNrKT1cInJlcGxheVJlY29yZGluZygpXCJcclxuICAgID48L3VpLWFjdGlvbi1idXR0b24+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
|