@anglr/common 14.2.0-beta.20221025042231 → 15.0.0-beta.20221026052356
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/changelog.md +44 -0
- package/es2015/floating-ui/src/services/floatingUiDomPosition.service.js +83 -65
- package/es2015/floating-ui/src/services/floatingUiDomPosition.service.js.map +1 -1
- package/es2015/forms/src/components/defaultValidationErrors/defaultValidationErrors.component.js +3 -3
- package/es2015/forms/src/components/defaultValidationErrorsContainer/defaultValidationErrorsContainer.component.js +3 -3
- package/es2015/forms/src/components/reservedSpaceValidationErrorsContainer/reservedSpaceValidationErrorsContainer.component.js +3 -3
- package/es2015/forms/src/directives/groupHasError/groupHasError.directive.js +3 -3
- package/es2015/forms/src/directives/groupHasErrorContainer/groupHasErrorContainer.directive.js +3 -3
- package/es2015/forms/src/directives/hasError/hasError.directive.js +3 -3
- package/es2015/forms/src/directives/hasError/hasError.directive.js.map +1 -1
- package/es2015/forms/src/directives/numberInput/maxValueNumberValidator.directive.js +3 -3
- package/es2015/forms/src/directives/numberInput/minValueNumberValidator.directive.js +3 -3
- package/es2015/forms/src/directives/numberInput/numberInputControlValueAccessor.directive.js +3 -3
- package/es2015/forms/src/directives/numberInput/numberInputValidator.directive.js +3 -3
- package/es2015/forms/src/directives/requiredClass/requiredClass.directive.js +3 -3
- package/es2015/forms/src/directives/validationErrorsContainer/validationErrorsContainer.directive.js +3 -3
- package/es2015/forms/src/modules/errorMessage/components/groupErrors/groupErrors.component.js +3 -3
- package/es2015/forms/src/modules/errorMessage/directives/errorMessage/errorMessage.directive.js +3 -3
- package/es2015/forms/src/modules/errorMessage/directives/groupErrorsTemplate/groupErrorsTemplate.directive.js +3 -3
- package/es2015/forms/src/modules/errorMessage/modules/errorMessage.module.js +4 -4
- package/es2015/forms/src/modules/errorMessage/pipes/withErrorMessage/withErrorMessage.pipe.js +3 -3
- package/es2015/forms/src/modules/formPipes/modules/formPipes.module.js +4 -4
- package/es2015/forms/src/modules/formPipes/pipes/asFormArray/asFormArray.pipe.js +3 -3
- package/es2015/forms/src/modules/formPipes/pipes/asFormControl/asFormControl.pipe.js +3 -3
- package/es2015/forms/src/modules/formPipes/pipes/asFormGroup/asFormGroup.pipe.js +3 -3
- package/es2015/forms/src/modules/formPipes/pipes/getControl/getControl.pipe.js +3 -3
- package/es2015/forms/src/modules/hasError.module.js +4 -4
- package/es2015/forms/src/modules/numberInput.module.js +4 -4
- package/es2015/forms/src/modules/requiredClass.module.js +4 -4
- package/es2015/forms/src/services/errorMessagesExtractor/errorMessagesExtractor.service.js +3 -3
- package/es2015/forms/src/services/formModelBuilder/formModelBuilder.service.js +3 -3
- package/es2015/forms/src/services/submitted/submitted.service.js +3 -3
- package/es2015/forms/src/services/validationErrorRenderer/validationErrorRenderer.service.js +3 -3
- package/es2015/hotkeys/src/services/appHotkeys.service.js +3 -3
- package/es2015/material/src/components/confirmationDialog/confirmationDialog.component.js +3 -3
- package/es2015/material/src/components/movableTitledDialog/movableTitledDialog.component.js +3 -3
- package/es2015/material/src/components/titledDialog/titledDialog.component.js +3 -3
- package/es2015/material/src/directives/confirmationDialog/confirmationDialog.directive.js +10 -8
- package/es2015/material/src/directives/confirmationDialog/confirmationDialog.directive.js.map +1 -1
- package/es2015/material/src/directives/debugDataCopyClick/debugDataCopyClick.directive.js +3 -3
- package/es2015/material/src/modules/confirmationDialog.module.js +4 -4
- package/es2015/material/src/modules/debugDataCopyClick.module.js +4 -4
- package/es2015/material/src/modules/movableTitledDialog.module.js +4 -4
- package/es2015/material/src/modules/titledDialog.module.js +4 -4
- package/es2015/material/src/services/titledDialog/titledDialog.service.js +3 -3
- package/es2015/moment/src/modules/moment.module.js +4 -4
- package/es2015/moment/src/pipes/momentConvert/momentConvert.pipe.js +3 -3
- package/es2015/moment/src/pipes/momentFormat/momentFormat.pipe.js +3 -3
- package/es2015/numeral/src/modules/numeral.module.js +4 -4
- package/es2015/numeral/src/pipes/numeral.pipe.js +3 -3
- package/es2015/router/src/services/routing/dataRouter.js +3 -3
- package/es2015/router/src/services/routing/dataRouterData.js +3 -3
- package/es2015/src/directives/bodyRender/bodyRender.directive.js +3 -3
- package/es2015/src/directives/bodyRender/bodyRender.directive.js.map +1 -1
- package/es2015/src/directives/ngComponentOutletEx/ngComponentOutletEx.directive.js +3 -3
- package/es2015/src/modules/castPipes/modules/castPipes.module.js +4 -4
- package/es2015/src/modules/castPipes/pipes/asHtmlElement/asHtmlElement.pipe.js +3 -3
- package/es2015/src/modules/castPipes/pipes/asNgClassRequired/asNgClassRequired.pipe.js +3 -3
- package/es2015/src/modules/castPipes/pipes/asRequired/asRequired.pipe.js +3 -3
- package/es2015/src/modules/castPipes/pipes/castType/castType.pipe.js +3 -3
- package/es2015/src/modules/clickOutside/directives/clickOutside/clickOutside.directive.js +3 -3
- package/es2015/src/modules/clickOutside/directives/clickOutside/clickOutside.directive.js.map +1 -1
- package/es2015/src/modules/clickOutside/modules/clickOutside.module.js +4 -4
- package/es2015/src/modules/commonDynamic.module.js +4 -4
- package/es2015/src/modules/commonLocalize.module.js +4 -4
- package/es2015/src/modules/commonUtils.module.js +4 -4
- package/es2015/src/modules/debugData/components/debugData/debugData.component.js +3 -3
- package/es2015/src/modules/debugData/modules/debugData.module.js +4 -4
- package/es2015/src/modules/debugData/services/debugDataEnabled/debugDataEnabled.service.js +3 -3
- package/es2015/src/modules/goBack/directives/goBack/goBack.directive.js +3 -3
- package/es2015/src/modules/goBack/modules/goBack.module.js +4 -4
- package/es2015/src/modules/multiButton/components/multiButton/multiButton.component.js +3 -3
- package/es2015/src/modules/multiButton/components/multiButton/multiButton.component.js.map +1 -1
- package/es2015/src/modules/multiButton/modules/multiButton.module.js +4 -4
- package/es2015/src/modules/position/directives/positionTo/positionTo.directive.js +57 -21
- package/es2015/src/modules/position/directives/positionTo/positionTo.directive.js.map +1 -1
- package/es2015/src/modules/position/modules/position.module.js +4 -4
- package/es2015/src/modules/progressIndicator/components/progressIndicator/progressIndicator.component.js +3 -3
- package/es2015/src/modules/progressIndicator/directives/progressOverlay/progressOverlay.directive.js +3 -3
- package/es2015/src/modules/progressIndicator/directives/progressOverlay/progressOverlay.directive.js.map +1 -1
- package/es2015/src/modules/progressIndicator/interceptors/progressInterceptor.js +4 -4
- package/es2015/src/modules/progressIndicator/interceptors/progressInterceptor.js.map +1 -1
- package/es2015/src/modules/progressIndicator/modules/progressIndicator.module.js +4 -4
- package/es2015/src/modules/progressIndicator/services/progressIndicator.service.js +3 -3
- package/es2015/src/modules/progressIndicator/services/progressIndicator.service.js.map +1 -1
- package/es2015/src/modules/tooltip/components/tooltip/tooltip.component.js +3 -3
- package/es2015/src/modules/tooltip/directives/tooltip/tooltip.directive.js +9 -9
- package/es2015/src/modules/tooltip/directives/tooltip/tooltip.directive.js.map +1 -1
- package/es2015/src/modules/tooltip/directives/tooltipTemplate/tooltipTemplate.directive.js +3 -3
- package/es2015/src/modules/tooltip/modules/tooltip.module.js +4 -4
- package/es2015/src/pipes/isNaN/isNaN.pipe.js +3 -3
- package/es2015/src/pipes/isPresent/isPresent.pipe.js +3 -3
- package/es2015/src/pipes/keys/keys.pipe.js +3 -3
- package/es2015/src/pipes/localize/localize.pipe.js +3 -3
- package/es2015/src/pipes/mergeCssClasses/mergeCssClasses.pipe.js +3 -3
- package/es2015/src/pipes/urlEncode/urlEncode.pipe.js +3 -3
- package/es2015/src/services/cookies/cookies.service.js +3 -3
- package/es2015/src/services/cookies/cookies.service.js.map +1 -1
- package/es2015/src/services/notifications/defaultNotifications.service.js +3 -3
- package/es2015/src/services/permanentStorage/cookiePermanentStorage.service.js +3 -3
- package/es2015/src/services/position/position.interface.js.map +1 -1
- package/es2015/src/services/position/position.types.js.map +1 -1
- package/es2015/src/services/statusCode/statusCode.service.js +3 -3
- package/es2015/src/services/stringLocalization/noStringLocalization.service.js +3 -3
- package/es2015/src/services/temporaryStorage/memoryTemporaryStorage.service.js +3 -3
- package/es2015/src/utils/index.js +1 -1
- package/es2015/src/utils/index.js.map +1 -1
- package/es2015/store/src/services/permanentStorage/localPermanentStorage.service.js +3 -3
- package/es2015/store/src/services/temporaryStorage/sessionTemporaryStorage.service.js +3 -3
- package/es2015/structured-log/src/components/console/console.component.js +3 -3
- package/es2015/structured-log/src/modules/consoleLog.module.js +4 -4
- package/es2015/structured-log/src/services/console/consoleComponentSink.service.js +3 -3
- package/es2015/structured-log/src/services/console/consoleSinkConfig.service.js +3 -3
- package/es2015/structured-log/src/services/logger.service.js +3 -3
- package/es2015/structured-log/src/services/rest/restSink.service.js +7 -5
- package/es2015/structured-log/src/services/rest/restSink.service.js.map +1 -1
- package/es2015/structured-log/src/services/rest/restSinkConfig.service.js +3 -3
- package/es2020/floating-ui/src/services/floatingUiDomPosition.service.js +83 -65
- package/es2020/floating-ui/src/services/floatingUiDomPosition.service.js.map +1 -1
- package/es2020/forms/src/components/defaultValidationErrors/defaultValidationErrors.component.js +3 -3
- package/es2020/forms/src/components/defaultValidationErrorsContainer/defaultValidationErrorsContainer.component.js +3 -3
- package/es2020/forms/src/components/reservedSpaceValidationErrorsContainer/reservedSpaceValidationErrorsContainer.component.js +3 -3
- package/es2020/forms/src/directives/groupHasError/groupHasError.directive.js +3 -3
- package/es2020/forms/src/directives/groupHasErrorContainer/groupHasErrorContainer.directive.js +3 -3
- package/es2020/forms/src/directives/hasError/hasError.directive.js +3 -3
- package/es2020/forms/src/directives/hasError/hasError.directive.js.map +1 -1
- package/es2020/forms/src/directives/numberInput/maxValueNumberValidator.directive.js +3 -3
- package/es2020/forms/src/directives/numberInput/minValueNumberValidator.directive.js +3 -3
- package/es2020/forms/src/directives/numberInput/numberInputControlValueAccessor.directive.js +3 -3
- package/es2020/forms/src/directives/numberInput/numberInputValidator.directive.js +3 -3
- package/es2020/forms/src/directives/requiredClass/requiredClass.directive.js +3 -3
- package/es2020/forms/src/directives/validationErrorsContainer/validationErrorsContainer.directive.js +3 -3
- package/es2020/forms/src/modules/errorMessage/components/groupErrors/groupErrors.component.js +3 -3
- package/es2020/forms/src/modules/errorMessage/directives/errorMessage/errorMessage.directive.js +3 -3
- package/es2020/forms/src/modules/errorMessage/directives/groupErrorsTemplate/groupErrorsTemplate.directive.js +3 -3
- package/es2020/forms/src/modules/errorMessage/modules/errorMessage.module.js +4 -4
- package/es2020/forms/src/modules/errorMessage/pipes/withErrorMessage/withErrorMessage.pipe.js +3 -3
- package/es2020/forms/src/modules/formPipes/modules/formPipes.module.js +4 -4
- package/es2020/forms/src/modules/formPipes/pipes/asFormArray/asFormArray.pipe.js +3 -3
- package/es2020/forms/src/modules/formPipes/pipes/asFormControl/asFormControl.pipe.js +3 -3
- package/es2020/forms/src/modules/formPipes/pipes/asFormGroup/asFormGroup.pipe.js +3 -3
- package/es2020/forms/src/modules/formPipes/pipes/getControl/getControl.pipe.js +3 -3
- package/es2020/forms/src/modules/hasError.module.js +4 -4
- package/es2020/forms/src/modules/numberInput.module.js +4 -4
- package/es2020/forms/src/modules/requiredClass.module.js +4 -4
- package/es2020/forms/src/services/errorMessagesExtractor/errorMessagesExtractor.service.js +3 -3
- package/es2020/forms/src/services/formModelBuilder/formModelBuilder.service.js +3 -3
- package/es2020/forms/src/services/submitted/submitted.service.js +3 -3
- package/es2020/forms/src/services/validationErrorRenderer/validationErrorRenderer.service.js +3 -3
- package/es2020/hotkeys/src/services/appHotkeys.service.js +3 -3
- package/es2020/material/src/components/confirmationDialog/confirmationDialog.component.js +3 -3
- package/es2020/material/src/components/movableTitledDialog/movableTitledDialog.component.js +3 -3
- package/es2020/material/src/components/titledDialog/titledDialog.component.js +3 -3
- package/es2020/material/src/directives/confirmationDialog/confirmationDialog.directive.js +9 -8
- package/es2020/material/src/directives/confirmationDialog/confirmationDialog.directive.js.map +1 -1
- package/es2020/material/src/directives/debugDataCopyClick/debugDataCopyClick.directive.js +3 -3
- package/es2020/material/src/modules/confirmationDialog.module.js +4 -4
- package/es2020/material/src/modules/debugDataCopyClick.module.js +4 -4
- package/es2020/material/src/modules/movableTitledDialog.module.js +4 -4
- package/es2020/material/src/modules/titledDialog.module.js +4 -4
- package/es2020/material/src/services/titledDialog/titledDialog.service.js +3 -3
- package/es2020/moment/src/modules/moment.module.js +4 -4
- package/es2020/moment/src/pipes/momentConvert/momentConvert.pipe.js +3 -3
- package/es2020/moment/src/pipes/momentFormat/momentFormat.pipe.js +3 -3
- package/es2020/numeral/src/modules/numeral.module.js +4 -4
- package/es2020/numeral/src/pipes/numeral.pipe.js +3 -3
- package/es2020/router/src/services/routing/dataRouter.js +3 -3
- package/es2020/router/src/services/routing/dataRouterData.js +3 -3
- package/es2020/src/directives/bodyRender/bodyRender.directive.js +3 -3
- package/es2020/src/directives/bodyRender/bodyRender.directive.js.map +1 -1
- package/es2020/src/directives/ngComponentOutletEx/ngComponentOutletEx.directive.js +3 -3
- package/es2020/src/modules/castPipes/modules/castPipes.module.js +4 -4
- package/es2020/src/modules/castPipes/pipes/asHtmlElement/asHtmlElement.pipe.js +3 -3
- package/es2020/src/modules/castPipes/pipes/asNgClassRequired/asNgClassRequired.pipe.js +3 -3
- package/es2020/src/modules/castPipes/pipes/asRequired/asRequired.pipe.js +3 -3
- package/es2020/src/modules/castPipes/pipes/castType/castType.pipe.js +3 -3
- package/es2020/src/modules/clickOutside/directives/clickOutside/clickOutside.directive.js +3 -3
- package/es2020/src/modules/clickOutside/directives/clickOutside/clickOutside.directive.js.map +1 -1
- package/es2020/src/modules/clickOutside/modules/clickOutside.module.js +4 -4
- package/es2020/src/modules/commonDynamic.module.js +4 -4
- package/es2020/src/modules/commonLocalize.module.js +4 -4
- package/es2020/src/modules/commonUtils.module.js +4 -4
- package/es2020/src/modules/debugData/components/debugData/debugData.component.js +3 -3
- package/es2020/src/modules/debugData/modules/debugData.module.js +4 -4
- package/es2020/src/modules/debugData/services/debugDataEnabled/debugDataEnabled.service.js +3 -3
- package/es2020/src/modules/goBack/directives/goBack/goBack.directive.js +3 -3
- package/es2020/src/modules/goBack/modules/goBack.module.js +4 -4
- package/es2020/src/modules/multiButton/components/multiButton/multiButton.component.js +3 -3
- package/es2020/src/modules/multiButton/components/multiButton/multiButton.component.js.map +1 -1
- package/es2020/src/modules/multiButton/modules/multiButton.module.js +4 -4
- package/es2020/src/modules/position/directives/positionTo/positionTo.directive.js +58 -21
- package/es2020/src/modules/position/directives/positionTo/positionTo.directive.js.map +1 -1
- package/es2020/src/modules/position/modules/position.module.js +4 -4
- package/es2020/src/modules/progressIndicator/components/progressIndicator/progressIndicator.component.js +3 -3
- package/es2020/src/modules/progressIndicator/directives/progressOverlay/progressOverlay.directive.js +3 -3
- package/es2020/src/modules/progressIndicator/directives/progressOverlay/progressOverlay.directive.js.map +1 -1
- package/es2020/src/modules/progressIndicator/interceptors/progressInterceptor.js +4 -4
- package/es2020/src/modules/progressIndicator/interceptors/progressInterceptor.js.map +1 -1
- package/es2020/src/modules/progressIndicator/modules/progressIndicator.module.js +4 -4
- package/es2020/src/modules/progressIndicator/services/progressIndicator.service.js +3 -3
- package/es2020/src/modules/progressIndicator/services/progressIndicator.service.js.map +1 -1
- package/es2020/src/modules/tooltip/components/tooltip/tooltip.component.js +3 -3
- package/es2020/src/modules/tooltip/directives/tooltip/tooltip.directive.js +9 -9
- package/es2020/src/modules/tooltip/directives/tooltip/tooltip.directive.js.map +1 -1
- package/es2020/src/modules/tooltip/directives/tooltipTemplate/tooltipTemplate.directive.js +3 -3
- package/es2020/src/modules/tooltip/modules/tooltip.module.js +4 -4
- package/es2020/src/pipes/isNaN/isNaN.pipe.js +3 -3
- package/es2020/src/pipes/isPresent/isPresent.pipe.js +3 -3
- package/es2020/src/pipes/keys/keys.pipe.js +3 -3
- package/es2020/src/pipes/localize/localize.pipe.js +3 -3
- package/es2020/src/pipes/mergeCssClasses/mergeCssClasses.pipe.js +3 -3
- package/es2020/src/pipes/urlEncode/urlEncode.pipe.js +3 -3
- package/es2020/src/services/cookies/cookies.service.js +3 -3
- package/es2020/src/services/cookies/cookies.service.js.map +1 -1
- package/es2020/src/services/notifications/defaultNotifications.service.js +3 -3
- package/es2020/src/services/permanentStorage/cookiePermanentStorage.service.js +3 -3
- package/es2020/src/services/position/position.interface.js.map +1 -1
- package/es2020/src/services/position/position.types.js.map +1 -1
- package/es2020/src/services/statusCode/statusCode.service.js +3 -3
- package/es2020/src/services/stringLocalization/noStringLocalization.service.js +3 -3
- package/es2020/src/services/temporaryStorage/memoryTemporaryStorage.service.js +3 -3
- package/es2020/src/utils/index.js +1 -1
- package/es2020/src/utils/index.js.map +1 -1
- package/es2020/store/src/services/permanentStorage/localPermanentStorage.service.js +3 -3
- package/es2020/store/src/services/temporaryStorage/sessionTemporaryStorage.service.js +3 -3
- package/es2020/structured-log/src/components/console/console.component.js +3 -3
- package/es2020/structured-log/src/modules/consoleLog.module.js +4 -4
- package/es2020/structured-log/src/services/console/consoleComponentSink.service.js +3 -3
- package/es2020/structured-log/src/services/console/consoleSinkConfig.service.js +3 -3
- package/es2020/structured-log/src/services/logger.service.js +3 -3
- package/es2020/structured-log/src/services/rest/restSink.service.js +6 -5
- package/es2020/structured-log/src/services/rest/restSink.service.js.map +1 -1
- package/es2020/structured-log/src/services/rest/restSinkConfig.service.js +3 -3
- package/floating-ui/src/services/floatingUiDomPosition.service.d.ts.map +1 -1
- package/material/src/directives/confirmationDialog/confirmationDialog.directive.d.ts +4 -4
- package/material/src/directives/confirmationDialog/confirmationDialog.directive.d.ts.map +1 -1
- package/package.json +31 -28
- package/src/modules/position/directives/positionTo/positionTo.directive.d.ts +35 -14
- package/src/modules/position/directives/positionTo/positionTo.directive.d.ts.map +1 -1
- package/src/modules/progressIndicator/interceptors/progressInterceptor.d.ts.map +1 -1
- package/src/modules/tooltip/directives/tooltip/tooltip.directive.d.ts.map +1 -1
- package/src/services/position/position.interface.d.ts +51 -3
- package/src/services/position/position.interface.d.ts.map +1 -1
- package/src/services/position/position.types.d.ts +4 -0
- package/src/services/position/position.types.d.ts.map +1 -1
- package/structured-log/src/services/rest/restSink.service.d.ts.map +1 -1
- package/{positions/src/types/positions.typings.d.ts → typings/positions/index.d.ts} +12 -4
- package/typings/store/index.d.ts +5 -0
- package/{structured-log/src/types/structured-log.typings.d.ts → typings/structured-log/index.d.ts} +49 -13
- package/version.bak +1 -1
- package/es2015/positions/src/types/positions.typings.js +0 -2
- package/es2015/positions/src/types/positions.typings.js.map +0 -1
- package/es2015/store/src/types/store.typings.js +0 -2
- package/es2015/store/src/types/store.typings.js.map +0 -1
- package/es2015/structured-log/src/types/structured-log.typings.js +0 -2
- package/es2015/structured-log/src/types/structured-log.typings.js.map +0 -1
- package/es2020/positions/src/types/positions.typings.js +0 -2
- package/es2020/positions/src/types/positions.typings.js.map +0 -1
- package/es2020/store/src/types/store.typings.js +0 -2
- package/es2020/store/src/types/store.typings.js.map +0 -1
- package/es2020/structured-log/src/types/structured-log.typings.js +0 -2
- package/es2020/structured-log/src/types/structured-log.typings.js.map +0 -1
- package/positions/src/types/positions.typings.d.ts.map +0 -1
- package/store/src/types/store.typings.d.ts +0 -4
- package/store/src/types/store.typings.d.ts.map +0 -1
- package/structured-log/src/types/structured-log.typings.d.ts.map +0 -1
|
@@ -7,10 +7,10 @@ import * as i0 from "@angular/core";
|
|
|
7
7
|
*/
|
|
8
8
|
export class MultiButtonModule {
|
|
9
9
|
}
|
|
10
|
-
MultiButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
11
|
-
MultiButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.
|
|
12
|
-
MultiButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.
|
|
13
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
10
|
+
MultiButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: MultiButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
11
|
+
MultiButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.7", ngImport: i0, type: MultiButtonModule, declarations: [MultiButtonComponent], imports: [CommonModule], exports: [MultiButtonComponent] });
|
|
12
|
+
MultiButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: MultiButtonModule, imports: [CommonModule] });
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: MultiButtonModule, decorators: [{
|
|
14
14
|
type: NgModule,
|
|
15
15
|
args: [{
|
|
16
16
|
imports: [
|
|
@@ -8,41 +8,53 @@ import * as i0 from "@angular/core";
|
|
|
8
8
|
*/
|
|
9
9
|
export class PositionToDirective {
|
|
10
10
|
//######################### constructor #########################
|
|
11
|
-
constructor(
|
|
12
|
-
this.
|
|
13
|
-
this.
|
|
14
|
-
|
|
11
|
+
constructor(target, position) {
|
|
12
|
+
this.target = target;
|
|
13
|
+
this.position = position;
|
|
14
|
+
/**
|
|
15
|
+
* Offset which allows moving target element along the cross axis of placement, or any chosed direction
|
|
16
|
+
*/
|
|
17
|
+
this.offset = 'None';
|
|
18
|
+
/**
|
|
19
|
+
* Indication whether set up 'auto updating' of position
|
|
20
|
+
*/
|
|
21
|
+
this.autoUpdate = true;
|
|
22
|
+
//######################### public properties - outputs #########################
|
|
15
23
|
/**
|
|
16
24
|
* Occurs when flip occurs during positioning
|
|
17
25
|
*/
|
|
18
26
|
this.flip = new EventEmitter();
|
|
27
|
+
/**
|
|
28
|
+
* Occurs when element was positioned
|
|
29
|
+
*/
|
|
30
|
+
this.done = new EventEmitter();
|
|
19
31
|
}
|
|
20
32
|
//######################### public properties - inputs #########################
|
|
21
33
|
/**
|
|
22
34
|
* Gets or sets html element which is used as source for positioning
|
|
23
35
|
*/
|
|
24
36
|
get source() {
|
|
25
|
-
return this
|
|
37
|
+
return this.ɵSource;
|
|
26
38
|
}
|
|
27
39
|
set source(value) {
|
|
28
40
|
if (value instanceof ElementRef) {
|
|
29
|
-
this
|
|
41
|
+
this.ɵSource = value.nativeElement;
|
|
30
42
|
return;
|
|
31
43
|
}
|
|
32
|
-
this
|
|
44
|
+
this.ɵSource = value;
|
|
33
45
|
}
|
|
34
46
|
/**
|
|
35
47
|
* Gets or sets position placement value
|
|
36
48
|
*/
|
|
37
49
|
get placement() {
|
|
38
|
-
return this
|
|
50
|
+
return this.ɵPlacement;
|
|
39
51
|
}
|
|
40
52
|
set placement(value) {
|
|
41
53
|
if (isString(value)) {
|
|
42
|
-
this
|
|
54
|
+
this.ɵPlacement = PositionPlacement[value];
|
|
43
55
|
return;
|
|
44
56
|
}
|
|
45
|
-
this
|
|
57
|
+
this.ɵPlacement = value;
|
|
46
58
|
}
|
|
47
59
|
//######################### public methods - implementation of OnChanges #########################
|
|
48
60
|
/**
|
|
@@ -55,25 +67,44 @@ export class PositionToDirective {
|
|
|
55
67
|
this._applyPosition();
|
|
56
68
|
}
|
|
57
69
|
}
|
|
70
|
+
//######################### public methods - implementation of OnDestroy #########################
|
|
71
|
+
/**
|
|
72
|
+
* Called when component is destroyed
|
|
73
|
+
*/
|
|
74
|
+
ngOnDestroy() {
|
|
75
|
+
this.dispose?.();
|
|
76
|
+
}
|
|
58
77
|
//######################### protected methods #########################
|
|
59
78
|
/**
|
|
60
79
|
* Applies position according to specified parameters to specified elements
|
|
61
80
|
*/
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
options.placement = this._placement;
|
|
81
|
+
_applyPosition() {
|
|
82
|
+
if (!this.ɵSource) {
|
|
83
|
+
return;
|
|
66
84
|
}
|
|
67
|
-
const
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
this.
|
|
85
|
+
const options = {
|
|
86
|
+
flip: true,
|
|
87
|
+
autoUpdate: this.autoUpdate,
|
|
88
|
+
offset: this.offset,
|
|
89
|
+
};
|
|
90
|
+
if (this.ɵPlacement) {
|
|
91
|
+
options.placement = this.ɵPlacement;
|
|
71
92
|
}
|
|
93
|
+
this.dispose?.();
|
|
94
|
+
this.position.placeElement(this.target.nativeElement, this.ɵSource, options)
|
|
95
|
+
.subscribe(result => {
|
|
96
|
+
this.dispose = result.dispose;
|
|
97
|
+
applyPositionResult(result);
|
|
98
|
+
if (result.flip) {
|
|
99
|
+
this.flip.emit();
|
|
100
|
+
}
|
|
101
|
+
this.done.emit();
|
|
102
|
+
});
|
|
72
103
|
}
|
|
73
104
|
}
|
|
74
|
-
PositionToDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
75
|
-
PositionToDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.
|
|
76
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
105
|
+
PositionToDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: PositionToDirective, deps: [{ token: i0.ElementRef }, { token: POSITION }], target: i0.ɵɵFactoryTarget.Directive });
|
|
106
|
+
PositionToDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.7", type: PositionToDirective, selector: "[positionTo]", inputs: { source: ["positionTo", "source"], placement: "placement", offset: "offset", autoUpdate: "autoUpdate" }, outputs: { flip: "flip", done: "done" }, usesOnChanges: true, ngImport: i0 });
|
|
107
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: PositionToDirective, decorators: [{
|
|
77
108
|
type: Directive,
|
|
78
109
|
args: [{
|
|
79
110
|
selector: '[positionTo]'
|
|
@@ -86,7 +117,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImpor
|
|
|
86
117
|
args: ['positionTo']
|
|
87
118
|
}], placement: [{
|
|
88
119
|
type: Input
|
|
120
|
+
}], offset: [{
|
|
121
|
+
type: Input
|
|
122
|
+
}], autoUpdate: [{
|
|
123
|
+
type: Input
|
|
89
124
|
}], flip: [{
|
|
90
125
|
type: Output
|
|
126
|
+
}], done: [{
|
|
127
|
+
type: Output
|
|
91
128
|
}] } });
|
|
92
129
|
//# sourceMappingURL=positionTo.directive.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"positionTo.directive.js","sourceRoot":"","sources":["../../../../../../src/modules/position/directives/positionTo/positionTo.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAE,KAAK,EAAE,UAAU,EAA4B,MAAM,EAAE,MAAM,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"positionTo.directive.js","sourceRoot":"","sources":["../../../../../../src/modules/position/directives/positionTo/positionTo.directive.ts"],"names":[],"mappings":"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","sourcesContent":["import {Directive, Input, ElementRef, OnChanges, SimpleChanges, Inject, Output, EventEmitter, OnDestroy} from '@angular/core';\nimport {nameof, isPresent, isString, Func1, NoopAction} from '@jscrpt/common';\n\nimport {applyPositionResult, Position, PositionPlacement, PositionOptions, PositionOffsetString, PositionOffsets, PositionArguments, AutoUpdateOptions} from '../../../../services/position';\nimport {POSITION} from '../../../../types/tokens';\n\n/**\n * Sets position of attached element relative to provided element\n */\n@Directive(\n{\n selector: '[positionTo]'\n})\nexport class PositionToDirective implements OnChanges, OnDestroy\n{\n //######################### protected fields #########################\n\n /**\n * Position placement value\n */\n protected ɵPlacement: PositionPlacement|undefined|null;\n\n /**\n * Html element which is used as source for positioning\n */\n protected ɵSource: HTMLElement|undefined|null;\n\n /**\n * Method used for disposing auto positioning\n */\n protected dispose: NoopAction|undefined|null;\n\n //######################### public properties - inputs #########################\n\n /**\n * Gets or sets html element which is used as source for positioning\n */\n @Input('positionTo')\n public get source(): HTMLElement|undefined|null\n {\n return this.ɵSource;\n }\n public set source(value: HTMLElement|undefined|null)\n {\n if(value instanceof ElementRef)\n {\n this.ɵSource = (value as ElementRef).nativeElement;\n\n return;\n }\n\n this.ɵSource = value;\n }\n\n /**\n * Gets or sets position placement value\n */\n @Input()\n public get placement(): PositionPlacement|undefined|null\n {\n return this.ɵPlacement;\n }\n public set placement(value: PositionPlacement|undefined|null)\n {\n if(isString(value))\n {\n this.ɵPlacement = PositionPlacement[value as keyof typeof PositionPlacement];\n\n return;\n }\n\n this.ɵPlacement = value;\n }\n\n /**\n * Offset which allows moving target element along the cross axis of placement, or any chosed direction\n */\n @Input()\n public offset: PositionOffsetString|number|PositionOffsets|Func1<number|PositionOffsets, PositionArguments> = 'None';\n\n /**\n * Indication whether set up 'auto updating' of position\n */\n @Input()\n public autoUpdate: boolean|AutoUpdateOptions = true;\n\n //######################### public properties - outputs #########################\n\n /**\n * Occurs when flip occurs during positioning\n */\n @Output()\n public flip: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * Occurs when element was positioned\n */\n @Output()\n public done: EventEmitter<void> = new EventEmitter<void>();\n\n //######################### constructor #########################\n constructor(protected target: ElementRef<HTMLElement>,\n @Inject(POSITION) protected position: Position)\n {\n }\n\n //######################### public methods - implementation of OnChanges #########################\n\n /**\n * Called when input value changes\n */\n public ngOnChanges(changes: SimpleChanges): void\n {\n if((nameof<PositionToDirective>('source') in changes ||\n nameof<PositionToDirective>('placement') in changes) &&\n isPresent(this.source))\n {\n this._applyPosition();\n }\n }\n\n //######################### public methods - implementation of OnDestroy #########################\n \n /**\n * Called when component is destroyed\n */\n public ngOnDestroy(): void\n {\n this.dispose?.();\n }\n\n //######################### protected methods #########################\n\n /**\n * Applies position according to specified parameters to specified elements\n */\n protected _applyPosition(): void\n {\n if(!this.ɵSource)\n {\n return;\n }\n\n const options: Partial<PositionOptions> =\n {\n flip: true,\n autoUpdate: this.autoUpdate,\n offset: this.offset,\n };\n\n if(this.ɵPlacement)\n {\n options.placement = this.ɵPlacement;\n }\n\n this.dispose?.();\n\n this.position.placeElement(this.target.nativeElement,\n this.ɵSource,\n options)\n .subscribe(result =>\n {\n this.dispose = result.dispose;\n\n applyPositionResult(result);\n\n if(result.flip)\n {\n this.flip.emit();\n }\n\n this.done.emit();\n });\n }\n\n //######################### ng language server #########################\n\n /**\n * Custom input type for `placement` input\n */\n public static ngAcceptInputType_placement: PositionPlacement|undefined|null|keyof typeof PositionPlacement;\n\n //######################### ng language server #########################\n\n /**\n * Custom input type for `source` input\n */\n public static ngAcceptInputType_source: HTMLElement|ElementRef<HTMLElement>;\n}\n"]}
|
|
@@ -6,10 +6,10 @@ import * as i0 from "@angular/core";
|
|
|
6
6
|
*/
|
|
7
7
|
export class PositionModule {
|
|
8
8
|
}
|
|
9
|
-
PositionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
10
|
-
PositionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.
|
|
11
|
-
PositionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
9
|
+
PositionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: PositionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
10
|
+
PositionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.7", ngImport: i0, type: PositionModule, declarations: [PositionToDirective], exports: [PositionToDirective] });
|
|
11
|
+
PositionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: PositionModule });
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: PositionModule, decorators: [{
|
|
13
13
|
type: NgModule,
|
|
14
14
|
args: [{
|
|
15
15
|
imports: [],
|
|
@@ -55,9 +55,9 @@ export class ProgressIndicatorComponent {
|
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
|
-
ProgressIndicatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
59
|
-
ProgressIndicatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.
|
|
60
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
58
|
+
ProgressIndicatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ProgressIndicatorComponent, deps: [{ token: i1.ProgressIndicatorService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
59
|
+
ProgressIndicatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: ProgressIndicatorComponent, selector: "progress-indicator", inputs: { cssClass: "cssClass" }, ngImport: i0, template: "<div [ngClass]=\"appliedClass\">\n <div class=\"spinner\"></div>\n\n <div class=\"messages\">\n <div *ngFor=\"let msg of messages; let index = index\" [ngClass]=\"'message-' + ((messages.length - index) > 3 ? 'out' : (messages.length - index - 1))\">{{msg | localize}}</div>\n </div>\n</div>", styles: ["\n.progress-indicator\n{\n transition: all 250ms linear;\n background-color: rgba(0, 0, 0, 0.45);\n height: 100%;\n width: 100%;\n position: fixed;\n top: 0;\n left: 0;\n z-index: 23456;\n opacity: 0;\n visibility: hidden;\n}\n.progress-indicator.running\n{\n visibility: visible;\n opacity: 1;\n}\n.progress-indicator.running > .spinner\n{\n border: 4px solid #eee;\n border-bottom: none;\n border-top-left-radius: 48px;\n border-top-right-radius: 48px;\n height: 24px;\n margin-left: auto;\n margin-right: auto;\n position: relative;\n top: 50%;\n width: 48px;\n animation-name: rotate-progress;\n animation-duration: 450ms;\n animation-iteration-count: infinite;\n animation-timing-function: linear;\n transform-origin: calc(50%) calc(50% + 12px);\n}\n\n.progress-indicator.running > .messages\n{\n color: #eee;\n top: calc(50% + 25px);\n position: relative;\n text-align: center;\n font-weight: bold;\n font-size: 1.25em;\n display: flex;\n flex-direction: column-reverse;\n}\n\n.progress-indicator.running > .messages .message-0,\n.progress-indicator.running > .messages .message-1,\n.progress-indicator.running > .messages .message-2,\n.progress-indicator.running > .messages .message-out\n{\n transition: all 500ms;\n position: absolute;\n width: 100%;\n top: 0;\n}\n\n.progress-indicator.running > .messages .message-1\n{\n transform: scale3d(0.7, 0.7, 0.7) translateZ(-20px) translateY(30px);\n opacity: 0.8;\n}\n\n.progress-indicator.running > .messages .message-2\n{\n transform: scale3d(0.35, 0.35, 0.35) translateZ(-40px) translateY(100px);\n opacity: 0.5;\n}\n\n.progress-indicator.running > .messages .message-out\n{\n transform: scale3d(0, 0, 0) translateZ(-100px) translateY(200px);\n}\n\n@keyframes rotate-progress\n{\n from\n {\n transform: rotate(0deg);\n }\n to\n {\n transform: rotate(360deg);\n }\n}"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: i3.LocalizePipe, name: "localize" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
60
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ProgressIndicatorComponent, decorators: [{
|
|
61
61
|
type: Component,
|
|
62
62
|
args: [{ selector: 'progress-indicator', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"appliedClass\">\n <div class=\"spinner\"></div>\n\n <div class=\"messages\">\n <div *ngFor=\"let msg of messages; let index = index\" [ngClass]=\"'message-' + ((messages.length - index) > 3 ? 'out' : (messages.length - index - 1))\">{{msg | localize}}</div>\n </div>\n</div>", styles: ["\n.progress-indicator\n{\n transition: all 250ms linear;\n background-color: rgba(0, 0, 0, 0.45);\n height: 100%;\n width: 100%;\n position: fixed;\n top: 0;\n left: 0;\n z-index: 23456;\n opacity: 0;\n visibility: hidden;\n}\n.progress-indicator.running\n{\n visibility: visible;\n opacity: 1;\n}\n.progress-indicator.running > .spinner\n{\n border: 4px solid #eee;\n border-bottom: none;\n border-top-left-radius: 48px;\n border-top-right-radius: 48px;\n height: 24px;\n margin-left: auto;\n margin-right: auto;\n position: relative;\n top: 50%;\n width: 48px;\n animation-name: rotate-progress;\n animation-duration: 450ms;\n animation-iteration-count: infinite;\n animation-timing-function: linear;\n transform-origin: calc(50%) calc(50% + 12px);\n}\n\n.progress-indicator.running > .messages\n{\n color: #eee;\n top: calc(50% + 25px);\n position: relative;\n text-align: center;\n font-weight: bold;\n font-size: 1.25em;\n display: flex;\n flex-direction: column-reverse;\n}\n\n.progress-indicator.running > .messages .message-0,\n.progress-indicator.running > .messages .message-1,\n.progress-indicator.running > .messages .message-2,\n.progress-indicator.running > .messages .message-out\n{\n transition: all 500ms;\n position: absolute;\n width: 100%;\n top: 0;\n}\n\n.progress-indicator.running > .messages .message-1\n{\n transform: scale3d(0.7, 0.7, 0.7) translateZ(-20px) translateY(30px);\n opacity: 0.8;\n}\n\n.progress-indicator.running > .messages .message-2\n{\n transform: scale3d(0.35, 0.35, 0.35) translateZ(-40px) translateY(100px);\n opacity: 0.5;\n}\n\n.progress-indicator.running > .messages .message-out\n{\n transform: scale3d(0, 0, 0) translateZ(-100px) translateY(200px);\n}\n\n@keyframes rotate-progress\n{\n from\n {\n transform: rotate(0deg);\n }\n to\n {\n transform: rotate(360deg);\n }\n}"] }]
|
|
63
63
|
}], ctorParameters: function () { return [{ type: i1.ProgressIndicatorService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { cssClass: [{
|
package/es2020/src/modules/progressIndicator/directives/progressOverlay/progressOverlay.directive.js
CHANGED
|
@@ -104,9 +104,9 @@ export class ProgressOverlayDirective {
|
|
|
104
104
|
}
|
|
105
105
|
}
|
|
106
106
|
}
|
|
107
|
-
ProgressOverlayDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
108
|
-
ProgressOverlayDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.
|
|
109
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
107
|
+
ProgressOverlayDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ProgressOverlayDirective, deps: [{ token: i1.ProgressIndicatorService }, { token: i0.ElementRef }, { token: DOCUMENT }, { token: STRING_LOCALIZATION }], target: i0.ɵɵFactoryTarget.Directive });
|
|
108
|
+
ProgressOverlayDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.7", type: ProgressOverlayDirective, selector: "[progressOverlay]", inputs: { name: ["progressOverlay", "name"] }, ngImport: i0 });
|
|
109
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ProgressOverlayDirective, decorators: [{
|
|
110
110
|
type: Directive,
|
|
111
111
|
args: [{
|
|
112
112
|
selector: '[progressOverlay]'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progressOverlay.directive.js","sourceRoot":"","sources":["../../../../../../src/modules/progressIndicator/directives/progressOverlay/progressOverlay.directive.ts"],"names":[],"mappings":"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","sourcesContent":["import {Directive, Input, OnInit, OnDestroy, ElementRef, Inject} from '@angular/core';\nimport {DOCUMENT} from '@angular/common';\nimport {Subscription} from 'rxjs';\n\nimport {ProgressIndicatorService} from '../../services/progressIndicator.service';\nimport {STRING_LOCALIZATION} from '../../../../types/tokens';\nimport {StringLocalization} from '../../../../services/stringLocalization';\n\n/**\n * Directive that is used for displaying progress indicator as overlay\n */\n@Directive(\n{\n selector: '[progressOverlay]'\n})\nexport class ProgressOverlayDirective implements OnInit, OnDestroy\n{\n //######################### private fields #########################\n \n /**\n * Previous css position value\n */\n private _notRunningCssPosition: string;\n\n /**\n * Previous css overflow value\n */\n private _notRunningOverflow: string;\n\n /**\n * Subscription for changes in ProgressIndicatorService\n */\n private _subscription: Subscription|null;\n\n /**\n * Array of messages that should be displayed\n */\n private _messages: string[];\n\n /**\n * Indication that this progress indicator is running\n */\n private _running: boolean;\n\n /**\n * Element that is displaying progress indicator overlay\n */\n private _progressElement: HTMLDivElement;\n\n /**\n * Html messages element\n */\n private _messagesElement: HTMLDivElement;\n\n /**\n * Html message elements, last three\n */\n private _lastThreeMessages: HTMLDivElement[] = [];\n\n //######################### public properties - inputs #########################\n\n /**\n * Name of progress indicator group\n */\n @Input('progressOverlay')\n public name: string;\n\n //######################### constructor #########################\n constructor(private _service: ProgressIndicatorService,\n private _element: ElementRef<HTMLElement>,\n @Inject(DOCUMENT) private _document: Document,\n @Inject(STRING_LOCALIZATION) private _localizationSvc: StringLocalization)\n {\n }\n\n //######################### public methods - implementation of OnInit #########################\n \n /**\n * Initialize component\n */\n public ngOnInit(): void\n {\n this._service.registerOverlayGroup(this.name);\n\n this._running = this._service.running[this.name];\n this._messages = this._service.messages[this.name] || [];\n this._renderProgressOverlay();\n\n this._subscription = this._service.stateChange.subscribe(name => \n {\n if(name == this.name)\n {\n this._running = this._service.running[this.name];\n this._messages = this._service.messages[this.name] || [];\n this._renderProgressOverlay();\n }\n });\n }\n\n //######################### public methods - implementation of OnDestroy #########################\n \n /**\n * Called when component is destroyed\n */\n public ngOnDestroy(): void\n {\n this._service.unregisterOverlayGroup(this.name);\n\n if(this._subscription)\n {\n this._subscription.unsubscribe();\n this._subscription = null;\n }\n }\n\n //######################### private methods #########################\n\n /**\n * Renders progress overlay\n */\n private _renderProgressOverlay()\n {\n //removes progress indicator\n if(this._progressElement && !this._running)\n {\n this._progressElement.remove();\n this._progressElement = null;\n this._messagesElement = null;\n this._lastThreeMessages = [];\n\n this._element.nativeElement.style.position = this._notRunningCssPosition;\n this._notRunningCssPosition = null;\n this._element.nativeElement.style.overflow = this._notRunningOverflow;\n this._notRunningOverflow = null;\n }\n //adds progress indicator\n else if(!this._progressElement && this._running)\n {\n this._notRunningCssPosition = this._element.nativeElement.style.position;\n this._element.nativeElement.style.position = 'relative';\n this._notRunningOverflow = this._element.nativeElement.style.overflow;\n this._element.nativeElement.style.overflow = 'hidden';\n\n this._progressElement = this._document.createElement('div');\n this._progressElement.className = 'progress-overlay-div';\n\n const spinner = this._document.createElement('div');\n spinner.className = 'spinner';\n this._progressElement.append(spinner);\n\n this._messagesElement = this._document.createElement('div');\n this._messagesElement.className = 'messages';\n this._progressElement.append(this._messagesElement);\n\n this._element.nativeElement.append(this._progressElement);\n\n }\n\n this._renderProgressMessages();\n }\n\n /**\n * Renders messages to progress overlay\n */\n private _renderProgressMessages()\n {\n if(!this._messagesElement)\n {\n return;\n }\n\n const newMessages = this._messages.slice(this._messagesElement.childNodes.length);\n\n for(const message of newMessages)\n {\n const messageDiv = this._document.createElement('div');\n messageDiv.textContent = this._localizationSvc.get(message);\n\n this._lastThreeMessages.unshift(messageDiv);\n this._messagesElement.append(messageDiv);\n \n const outMessagesDiv = this._lastThreeMessages.splice(3);\n\n outMessagesDiv.forEach(outMsg =>\n {\n outMsg.className = 'message-out';\n });\n\n this._lastThreeMessages.forEach((msg, index) =>\n {\n msg.className = `message-${index}`;\n });\n }\n }\n}"]}
|
|
1
|
+
{"version":3,"file":"progressOverlay.directive.js","sourceRoot":"","sources":["../../../../../../src/modules/progressIndicator/directives/progressOverlay/progressOverlay.directive.ts"],"names":[],"mappings":"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","sourcesContent":["import {Directive, Input, OnInit, OnDestroy, ElementRef, Inject} from '@angular/core';\nimport {DOCUMENT} from '@angular/common';\nimport {Subscription} from 'rxjs';\n\nimport {ProgressIndicatorService} from '../../services/progressIndicator.service';\nimport {STRING_LOCALIZATION} from '../../../../types/tokens';\nimport {StringLocalization} from '../../../../services/stringLocalization';\n\n/**\n * Directive that is used for displaying progress indicator as overlay\n */\n@Directive(\n{\n selector: '[progressOverlay]'\n})\nexport class ProgressOverlayDirective implements OnInit, OnDestroy\n{\n //######################### private fields #########################\n \n /**\n * Previous css position value\n */\n private _notRunningCssPosition: string;\n\n /**\n * Previous css overflow value\n */\n private _notRunningOverflow: string;\n\n /**\n * Subscription for changes in ProgressIndicatorService\n */\n private _subscription: Subscription|null;\n\n /**\n * Array of messages that should be displayed\n */\n private _messages: string[];\n\n /**\n * Indication that this progress indicator is running\n */\n private _running: boolean;\n\n /**\n * Element that is displaying progress indicator overlay\n */\n private _progressElement: HTMLDivElement;\n\n /**\n * Html messages element\n */\n private _messagesElement: HTMLDivElement;\n\n /**\n * Html message elements, last three\n */\n private _lastThreeMessages: HTMLDivElement[] = [];\n\n //######################### public properties - inputs #########################\n\n /**\n * Name of progress indicator group\n */\n @Input('progressOverlay')\n public name: string;\n\n //######################### constructor #########################\n constructor(private _service: ProgressIndicatorService,\n private _element: ElementRef<HTMLElement>,\n @Inject(DOCUMENT) private _document: Document,\n @Inject(STRING_LOCALIZATION) private _localizationSvc: StringLocalization)\n {\n }\n\n //######################### public methods - implementation of OnInit #########################\n \n /**\n * Initialize component\n */\n public ngOnInit(): void\n {\n this._service.registerOverlayGroup(this.name);\n\n this._running = this._service.running[this.name];\n this._messages = this._service.messages[this.name] || [];\n this._renderProgressOverlay();\n\n this._subscription = this._service.stateChange.subscribe(name => \n {\n if(name == this.name)\n {\n this._running = this._service.running[this.name];\n this._messages = this._service.messages[this.name] || [];\n this._renderProgressOverlay();\n }\n });\n }\n\n //######################### public methods - implementation of OnDestroy #########################\n \n /**\n * Called when component is destroyed\n */\n public ngOnDestroy(): void\n {\n this._service.unregisterOverlayGroup(this.name);\n\n if(this._subscription)\n {\n this._subscription.unsubscribe();\n this._subscription = null;\n }\n }\n\n //######################### private methods #########################\n\n /**\n * Renders progress overlay\n */\n private _renderProgressOverlay()\n {\n //removes progress indicator\n if(this._progressElement && !this._running)\n {\n this._progressElement.remove();\n this._progressElement = null;\n this._messagesElement = null;\n this._lastThreeMessages = [];\n\n this._element.nativeElement.style.position = this._notRunningCssPosition;\n this._notRunningCssPosition = null;\n this._element.nativeElement.style.overflow = this._notRunningOverflow;\n this._notRunningOverflow = null;\n }\n //adds progress indicator\n else if(!this._progressElement && this._running)\n {\n this._notRunningCssPosition = this._element.nativeElement.style.position;\n this._element.nativeElement.style.position = 'relative';\n this._notRunningOverflow = this._element.nativeElement.style.overflow;\n this._element.nativeElement.style.overflow = 'hidden';\n\n this._progressElement = this._document.createElement('div');\n this._progressElement.className = 'progress-overlay-div';\n\n const spinner = this._document.createElement('div');\n spinner.className = 'spinner';\n this._progressElement.append(spinner);\n\n this._messagesElement = this._document.createElement('div');\n this._messagesElement.className = 'messages';\n this._progressElement.append(this._messagesElement);\n\n this._element.nativeElement.append(this._progressElement);\n\n }\n\n this._renderProgressMessages();\n }\n\n /**\n * Renders messages to progress overlay\n */\n private _renderProgressMessages()\n {\n if(!this._messagesElement)\n {\n return;\n }\n\n const newMessages = this._messages.slice(this._messagesElement.childNodes.length);\n\n for(const message of newMessages)\n {\n const messageDiv = this._document.createElement('div');\n messageDiv.textContent = this._localizationSvc.get(message);\n\n this._lastThreeMessages.unshift(messageDiv);\n this._messagesElement.append(messageDiv);\n \n const outMessagesDiv = this._lastThreeMessages.splice(3);\n\n outMessagesDiv.forEach(outMsg =>\n {\n outMsg.className = 'message-out';\n });\n\n this._lastThreeMessages.forEach((msg, index) =>\n {\n msg.className = `message-${index}`;\n });\n }\n }\n}"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
2
|
import { HttpEventType, HTTP_INTERCEPTORS } from '@angular/common/http';
|
|
3
|
-
import { tap } from 'rxjs
|
|
3
|
+
import { tap } from 'rxjs';
|
|
4
4
|
import { ProgressIndicatorService } from '../services/progressIndicator.service';
|
|
5
5
|
import { PROGRESS_INDICATOR_GROUP_NAME } from '../misc/tokens';
|
|
6
6
|
import { IGNORED_INTERCEPTORS } from '../../../types/tokens';
|
|
@@ -38,9 +38,9 @@ export class ProgressInterceptor {
|
|
|
38
38
|
}, () => this._indicatorSvc.hideProgress(req.context.get(PROGRESS_INDICATOR_GROUP_NAME))));
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
|
-
ProgressInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
42
|
-
ProgressInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.
|
|
43
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
41
|
+
ProgressInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ProgressInterceptor, deps: [{ token: i1.ProgressIndicatorService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
42
|
+
ProgressInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ProgressInterceptor });
|
|
43
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ProgressInterceptor, decorators: [{
|
|
44
44
|
type: Injectable
|
|
45
45
|
}], ctorParameters: function () { return [{ type: i1.ProgressIndicatorService }]; } });
|
|
46
46
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progressInterceptor.js","sourceRoot":"","sources":["../../../../../src/modules/progressIndicator/interceptors/progressInterceptor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAgB,MAAM,eAAe,CAAC;AACxD,OAAO,EAA0C,aAAa,EAAE,iBAAiB,EAAc,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"progressInterceptor.js","sourceRoot":"","sources":["../../../../../src/modules/progressIndicator/interceptors/progressInterceptor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAgB,MAAM,eAAe,CAAC;AACxD,OAAO,EAA0C,aAAa,EAAE,iBAAiB,EAAc,MAAM,sBAAsB,CAAC;AAC5H,OAAO,EAAa,GAAG,EAAC,MAAM,MAAM,CAAC;AAErC,OAAO,EAAC,wBAAwB,EAAC,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAC,6BAA6B,EAAC,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAC,oBAAoB,EAAC,MAAM,uBAAuB,CAAC;;;AAE3D;;GAEG;AAEH,MAAM,OAAO,mBAAmB;IAE5B,kEAAkE;IAClE,YAAoB,aAAuC;QAAvC,kBAAa,GAAb,aAAa,CAA0B;IAE3D,CAAC;IAED,wGAAwG;IAExG;;;;OAIG;IACI,SAAS,CAAC,GAAyB,EAAE,IAAiB;QAEzD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;aAClB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YAEd,wBAAwB;YACxB,IAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,mBAAmB,CAAC,EAChF;gBACI,OAAO;aACV;YAED,iBAAiB;YACjB,IAAG,KAAK,CAAC,IAAI,IAAI,aAAa,CAAC,IAAI,EACnC;gBACI,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC,CAAC;aACnF;YACD,mBAAmB;iBACd,IAAG,KAAK,CAAC,IAAI,IAAI,aAAa,CAAC,QAAQ,EAC5C;gBACI,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC,CAAC;aACnF;QACL,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC,CAAC,CAAC,CAAC;IACnG,CAAC;;gHApCQ,mBAAmB;oHAAnB,mBAAmB;2FAAnB,mBAAmB;kBAD/B,UAAU;;AAwCX;;GAEG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAC1C;IACI,OAAO,EAAE,iBAAiB;IAC1B,QAAQ,EAAE,mBAAmB;IAC7B,KAAK,EAAE,IAAI;CACd,CAAC","sourcesContent":["import {Injectable, ClassProvider} from '@angular/core';\nimport {HttpEvent, HttpInterceptor, HttpHandler, HttpEventType, HTTP_INTERCEPTORS, HttpRequest} from '@angular/common/http';\nimport {Observable, tap} from 'rxjs';\n\nimport {ProgressIndicatorService} from '../services/progressIndicator.service';\nimport {PROGRESS_INDICATOR_GROUP_NAME} from '../misc/tokens';\nimport {IGNORED_INTERCEPTORS} from '../../../types/tokens';\n\n/**\n * ProgressInterceptor used for intercepting http requests and displaying progress indicatior\n */\n@Injectable()\nexport class ProgressInterceptor implements HttpInterceptor\n{\n //######################### constructors #########################\n constructor(private _indicatorSvc: ProgressIndicatorService)\n {\n }\n\n //######################### public methods - implementation of HttpInterceptor #########################\n\n /**\n * Intercepts http request\n * @param req - Request to be intercepted\n * @param next - Next middleware that can be called for next processing\n */\n public intercept(req: HttpRequest<unknown>, next: HttpHandler): Observable<HttpEvent<unknown>>\n {\n return next.handle(req)\n .pipe(tap(event =>\n {\n //interceptor is ignored\n if(req.context.get(IGNORED_INTERCEPTORS).some(itm => itm == ProgressInterceptor))\n {\n return;\n }\n\n //request started\n if(event.type == HttpEventType.Sent)\n {\n this._indicatorSvc.showProgress(req.context.get(PROGRESS_INDICATOR_GROUP_NAME));\n }\n //response received\n else if(event.type == HttpEventType.Response)\n {\n this._indicatorSvc.hideProgress(req.context.get(PROGRESS_INDICATOR_GROUP_NAME));\n }\n }, () => this._indicatorSvc.hideProgress(req.context.get(PROGRESS_INDICATOR_GROUP_NAME))));\n }\n}\n\n/**\n * Progress interceptor provider\n */\nexport const PROGRESS_INTERCEPTOR_PROVIDER: ClassProvider = \n{\n provide: HTTP_INTERCEPTORS, \n useClass: ProgressInterceptor, \n multi: true\n};"]}
|
|
@@ -9,14 +9,14 @@ import * as i0 from "@angular/core";
|
|
|
9
9
|
*/
|
|
10
10
|
export class ProgressIndicatorModule {
|
|
11
11
|
}
|
|
12
|
-
ProgressIndicatorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
13
|
-
ProgressIndicatorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.
|
|
12
|
+
ProgressIndicatorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ProgressIndicatorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
13
|
+
ProgressIndicatorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.7", ngImport: i0, type: ProgressIndicatorModule, declarations: [ProgressIndicatorComponent,
|
|
14
14
|
ProgressOverlayDirective], imports: [CommonModule,
|
|
15
15
|
CommonLocalizeModule], exports: [ProgressIndicatorComponent,
|
|
16
16
|
ProgressOverlayDirective] });
|
|
17
|
-
ProgressIndicatorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.
|
|
17
|
+
ProgressIndicatorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ProgressIndicatorModule, imports: [CommonModule,
|
|
18
18
|
CommonLocalizeModule] });
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ProgressIndicatorModule, decorators: [{
|
|
20
20
|
type: NgModule,
|
|
21
21
|
args: [{
|
|
22
22
|
imports: [
|
|
@@ -241,9 +241,9 @@ export class ProgressIndicatorService {
|
|
|
241
241
|
return group;
|
|
242
242
|
}
|
|
243
243
|
}
|
|
244
|
-
ProgressIndicatorService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
245
|
-
ProgressIndicatorService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.
|
|
246
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
244
|
+
ProgressIndicatorService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ProgressIndicatorService, deps: [{ token: PLATFORM_ID }, { token: i1.ProgressIndicatorOptions, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
245
|
+
ProgressIndicatorService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ProgressIndicatorService, providedIn: 'root' });
|
|
246
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ProgressIndicatorService, decorators: [{
|
|
247
247
|
type: Injectable,
|
|
248
248
|
args: [{ providedIn: 'root' }]
|
|
249
249
|
}], ctorParameters: function () { return [{ type: Object, decorators: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progressIndicator.service.js","sourceRoot":"","sources":["../../../../../src/modules/progressIndicator/services/progressIndicator.service.ts"],"names":[],"mappings":"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","sourcesContent":["import {Optional, Injectable, PLATFORM_ID, Inject} from '@angular/core';\nimport {isPlatformBrowser} from '@angular/common';\nimport {isPresent, isBoolean, isBlank} from '@jscrpt/common';\nimport {Observable, Subject} from 'rxjs';\n\nimport {ProgressIndicatorOptions} from './progressIndicatorOptions';\n\n/**\n * Name of group for global progress indicator\n */\nexport const DEFAULT_PROGRESS_NAME = 'GLOBAL_PROGRESS';\n\n/**\n * Description of running requests group\n */\ninterface RunningProgressGroup\n{\n /**\n * Number of currently running requests for this progress group\n */\n runningRequests: number;\n\n /**\n * Indication that progress is running for this progress group\n */\n running: boolean;\n\n /**\n * Array of messages to be displayed for this progress group\n */\n messages?: string[];\n\n /**\n * Id of running timeout for this progress group\n */\n timeout?: any;\n}\n\n/**\n * Service that is used for displaying and hiding progress indicator\n */\n@Injectable({providedIn: 'root'})\nexport class ProgressIndicatorService\n{\n //######################### private fields #########################\n\n /**\n * Indication that current code is running in browser\n */\n private _isBrowser: boolean = isPlatformBrowser(this._platformId);\n\n /**\n * Information about running progress for each group\n */\n private _runningRequests: {[group: string]: RunningProgressGroup} = {};\n\n /**\n * Used for invoking stateChange when state of one of progress groups have changed, passing name of group as parameter\n */\n private _stateChange: Subject<string> = new Subject<string>();\n\n /**\n * Object storing registered overlay groups\n */\n private _registeredOverlays: {[group: string]: number} = {};\n\n //######################### public properties #########################\n\n /**\n * Indications that progress is running for each group\n */\n public running: {[group: string]: boolean} = {};\n\n /**\n * Messages for each group\n */\n public messages: {[group: string]: string[]} = {};\n\n /**\n * Occurs when state of one of progress groups have changed, passing name of group as parameter\n */\n public get stateChange(): Observable<string>\n {\n return this._stateChange.asObservable();\n }\n\n //######################### constructors #########################\n constructor(@Inject(PLATFORM_ID) private _platformId: Object,\n @Optional() public config?: ProgressIndicatorOptions)\n {\n if(config && !(config instanceof ProgressIndicatorOptions))\n {\n this.config = undefined;\n console.warn('Provided configuration for \\'ProgressIndicatorService\\' is not of type \\'ProgressIndicatorOptions\\' and will be ignored!');\n }\n\n this._runningRequests[DEFAULT_PROGRESS_NAME] =\n {\n runningRequests: 0,\n running: false,\n messages: null,\n timeout: null\n };\n\n this._updateState();\n\n this.config = config || new ProgressIndicatorOptions();\n }\n\n //######################### public methods #########################\n\n /**\n * Displays progress indicator after short delay\n */\n public showProgress(): void;\n\n /**\n * Displays progress indicator after short delay\n * @param name - Name of progress group (separate counter)\n */\n public showProgress(name: string): void;\n\n /**\n * Displays progress indicator after short delay\n * @param messages - Array of messages to display what is happening\n */\n public showProgress(messages: string[]): void;\n\n /**\n * Displays progress indicator after short delay\n * @param name - Name of progress group (separate counter)\n * @param messages - Array of messages to display what is happening\n */\n public showProgress(name: string, messages: string[]): void;\n\n /**\n * Displays progress indicator after short delay\n * @param nameOrMessages - Name of progress group (separate counter) or Array of messages to display what is happening\n * @param messages - Array of messages to display what is happening\n */\n public showProgress(nameOrMessages?: string|string[], messages?: string[]): void\n {\n if(!this._isBrowser)\n {\n return;\n }\n\n let name: string = DEFAULT_PROGRESS_NAME;\n\n //first parameter is present\n if(isPresent(nameOrMessages))\n {\n if(Array.isArray(nameOrMessages))\n {\n messages = nameOrMessages;\n }\n else\n {\n name = nameOrMessages;\n }\n }\n\n name = this._getName(name);\n\n const group = this._getGroup(name);\n\n group.messages = [...(group.messages || []), ...(messages && messages.length ? messages : [])];\n\n if(!group.timeout && group.runningRequests < 1)\n {\n group.timeout = setTimeout(() =>\n {\n this._onRunning(name, true, group.messages);\n\n clearTimeout(group.timeout);\n group.timeout = null;\n }, this.config.timeout);\n }\n\n group.runningRequests++;\n }\n\n /**\n * Hides progress indicator\n */\n public hideProgress(): void;\n\n /**\n * Hides progress indicator\n * @param name - Name of progress group (separate counter)\n */\n public hideProgress(name: string): void;\n\n /**\n * Hides progress indicator\n * @param force - Indication that indicator should be hidden even if some processes are running\n */\n public hideProgress(force: boolean): void;\n\n /**\n * Hides progress indicator\n * @param name - Name of progress group (separate counter)\n * @param force - Indication that indicator should be hidden even if some processes are running\n */\n public hideProgress(name: string, force: boolean): void;\n\n /**\n * Hides progress indicator\n * @param nameOrForce - Name of progress group (separate counter) or Indication that indicator should be hidden even if some processes are running\n * @param force - Indication that indicator should be hidden even if some processes are running\n */\n public hideProgress(nameOrForce?: boolean | string, force?: boolean): void\n {\n if(!this._isBrowser)\n {\n return;\n }\n\n let name: string = DEFAULT_PROGRESS_NAME;\n\n //first parameter is present\n if(isPresent(nameOrForce))\n {\n if(isBoolean(nameOrForce))\n {\n force = nameOrForce as boolean;\n }\n else\n {\n name = nameOrForce as string;\n }\n }\n\n name = this._getName(name);\n\n const group = this._getGroup(name);\n\n if(force)\n {\n group.runningRequests = 0;\n }\n\n if(group.runningRequests > 0)\n {\n group.runningRequests--;\n }\n\n if(group.runningRequests < 1)\n {\n clearTimeout(group.timeout);\n group.timeout = null;\n this._onRunning(name, false, null);\n }\n }\n\n /**\n * Adds message to progress indicator group\n * @param message - Message to display what is happening\n */\n public addMessage(message: string): void;\n\n /**\n * Adds message to progress indicator group\n * @param name - Name of progress group (separate counter)\n * @param message - Message to display what is happening\n */\n public addMessage(name: string, message?: string): void;\n\n /**\n * Adds message to progress indicator group\n * @param nameOrMessage - Name of progress group (separate counter) or Message to display what is happening\n * @param message - Message to display what is happening\n */\n public addMessage(nameOrMessage?: string, message?: string): void\n {\n let name: string = DEFAULT_PROGRESS_NAME;\n\n if(isPresent(message))\n {\n name = nameOrMessage;\n }\n else\n {\n message = nameOrMessage;\n }\n\n name = this._getName(name);\n\n const group = this._getGroup(name);\n\n this._onRunning(name, group.running, [...(group.messages || []), message]);\n }\n\n /**\n * Clears all messages for progress group\n * @param name - Name of progress group (separate counter)\n */\n public clearMessages(name?: string): void\n {\n if(isBlank(name))\n {\n name = DEFAULT_PROGRESS_NAME;\n }\n\n name = this._getName(name);\n\n const group = this._getGroup(name);\n\n this._onRunning(name, group.running, null);\n }\n\n /**\n * Registers overlay group\n * @param name - Name of group to be registered\n * @internal\n */\n public registerOverlayGroup(name: string): void\n {\n if(!this._registeredOverlays[name])\n {\n this._registeredOverlays[name] = 0;\n }\n\n this._registeredOverlays[name]++;\n }\n\n /**\n * Unregisters overlay group\n * @param name - Name of group to be unregistered\n * @internal\n */\n public unregisterOverlayGroup(name: string): void\n {\n if(!this._registeredOverlays[name])\n {\n return;\n }\n\n this._registeredOverlays[name]--;\n\n if(this._registeredOverlays[name] <= 0)\n {\n delete this._registeredOverlays[name];\n }\n }\n\n //######################### private methods #########################\n\n /**\n * Gets name of group based on existance of this group\n * @param name - Name of group that is requested\n */\n private _getName(name: string): string\n {\n if(name == DEFAULT_PROGRESS_NAME || !this.config.fallbackToDefault)\n {\n return name;\n }\n\n if(this._registeredOverlays[name])\n {\n return name;\n }\n\n return DEFAULT_PROGRESS_NAME;\n }\n\n /**\n * Used for invoking 'stateChange' event\n * @param name - Name of group which has changes its state\n * @param value - Value whether is progress running\n * @param messages - Messages to be displayed for this group\n */\n private _onRunning(name: string, value: boolean, messages: string[])\n {\n const group = this._getGroup(name);\n\n group.running = value;\n group.messages = messages;\n\n this._updateState();\n this._stateChange.next(name);\n }\n\n /**\n * Updates state of progress indicator service\n */\n private _updateState()\n {\n const running: {[group: string]: boolean} = {};\n const messages: {[group: string]: string[]} = {};\n\n Object.keys(this._runningRequests).forEach(group =>\n {\n running[group] = this._runningRequests[group].running;\n messages[group] = this._runningRequests[group].messages;\n });\n\n this.running = running;\n this.messages = messages;\n }\n\n /**\n * Gets object for progress group\n * @param name - Name of group to be obtained\n */\n private _getGroup(name: string): RunningProgressGroup\n {\n let group = this._runningRequests[name];\n\n if(isPresent(group))\n {\n return group;\n }\n\n group =\n {\n runningRequests: 0,\n running: false,\n messages: null,\n timeout: null\n };\n\n this._runningRequests[name] = group;\n\n return group;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"progressIndicator.service.js","sourceRoot":"","sources":["../../../../../src/modules/progressIndicator/services/progressIndicator.service.ts"],"names":[],"mappings":"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","sourcesContent":["import {Optional, Injectable, PLATFORM_ID, Inject} from '@angular/core';\nimport {isPlatformBrowser} from '@angular/common';\nimport {isPresent, isBoolean, isBlank} from '@jscrpt/common';\nimport {Observable, Subject} from 'rxjs';\n\nimport {ProgressIndicatorOptions} from './progressIndicatorOptions';\n\n/**\n * Name of group for global progress indicator\n */\nexport const DEFAULT_PROGRESS_NAME = 'GLOBAL_PROGRESS';\n\n/**\n * Description of running requests group\n */\ninterface RunningProgressGroup\n{\n /**\n * Number of currently running requests for this progress group\n */\n runningRequests: number;\n\n /**\n * Indication that progress is running for this progress group\n */\n running: boolean;\n\n /**\n * Array of messages to be displayed for this progress group\n */\n messages?: string[];\n\n /**\n * Id of running timeout for this progress group\n */\n timeout?: any;\n}\n\n/**\n * Service that is used for displaying and hiding progress indicator\n */\n@Injectable({providedIn: 'root'})\nexport class ProgressIndicatorService\n{\n //######################### private fields #########################\n\n /**\n * Indication that current code is running in browser\n */\n private _isBrowser: boolean = isPlatformBrowser(this._platformId);\n\n /**\n * Information about running progress for each group\n */\n private _runningRequests: {[group: string]: RunningProgressGroup} = {};\n\n /**\n * Used for invoking stateChange when state of one of progress groups have changed, passing name of group as parameter\n */\n private _stateChange: Subject<string> = new Subject<string>();\n\n /**\n * Object storing registered overlay groups\n */\n private _registeredOverlays: {[group: string]: number} = {};\n\n //######################### public properties #########################\n\n /**\n * Indications that progress is running for each group\n */\n public running: {[group: string]: boolean} = {};\n\n /**\n * Messages for each group\n */\n public messages: {[group: string]: string[]} = {};\n\n /**\n * Occurs when state of one of progress groups have changed, passing name of group as parameter\n */\n public get stateChange(): Observable<string>\n {\n return this._stateChange.asObservable();\n }\n\n //######################### constructors #########################\n constructor(@Inject(PLATFORM_ID) private _platformId: Object,\n @Optional() public config?: ProgressIndicatorOptions)\n {\n if(config && !(config instanceof ProgressIndicatorOptions))\n {\n this.config = undefined;\n console.warn('Provided configuration for \\'ProgressIndicatorService\\' is not of type \\'ProgressIndicatorOptions\\' and will be ignored!');\n }\n\n this._runningRequests[DEFAULT_PROGRESS_NAME] =\n {\n runningRequests: 0,\n running: false,\n messages: null,\n timeout: null\n };\n\n this._updateState();\n\n this.config = config || new ProgressIndicatorOptions();\n }\n\n //######################### public methods #########################\n\n /**\n * Displays progress indicator after short delay\n */\n public showProgress(): void;\n\n /**\n * Displays progress indicator after short delay\n * @param name - Name of progress group (separate counter)\n */\n public showProgress(name: string): void;\n\n /**\n * Displays progress indicator after short delay\n * @param messages - Array of messages to display what is happening\n */\n public showProgress(messages: string[]): void;\n\n /**\n * Displays progress indicator after short delay\n * @param name - Name of progress group (separate counter)\n * @param messages - Array of messages to display what is happening\n */\n public showProgress(name: string, messages: string[]): void;\n\n /**\n * Displays progress indicator after short delay\n * @param nameOrMessages - Name of progress group (separate counter) or Array of messages to display what is happening\n * @param messages - Array of messages to display what is happening\n */\n public showProgress(nameOrMessages?: string|string[], messages?: string[]): void\n {\n if(!this._isBrowser)\n {\n return;\n }\n\n let name: string = DEFAULT_PROGRESS_NAME;\n\n //first parameter is present\n if(isPresent(nameOrMessages))\n {\n if(Array.isArray(nameOrMessages))\n {\n messages = nameOrMessages;\n }\n else\n {\n name = nameOrMessages;\n }\n }\n\n name = this._getName(name);\n\n const group = this._getGroup(name);\n\n group.messages = [...(group.messages || []), ...(messages && messages.length ? messages : [])];\n\n if(!group.timeout && group.runningRequests < 1)\n {\n group.timeout = setTimeout(() =>\n {\n this._onRunning(name, true, group.messages);\n\n clearTimeout(group.timeout);\n group.timeout = null;\n }, this.config.timeout);\n }\n\n group.runningRequests++;\n }\n\n /**\n * Hides progress indicator\n */\n public hideProgress(): void;\n\n /**\n * Hides progress indicator\n * @param name - Name of progress group (separate counter)\n */\n public hideProgress(name: string): void;\n\n /**\n * Hides progress indicator\n * @param force - Indication that indicator should be hidden even if some processes are running\n */\n public hideProgress(force: boolean): void;\n\n /**\n * Hides progress indicator\n * @param name - Name of progress group (separate counter)\n * @param force - Indication that indicator should be hidden even if some processes are running\n */\n public hideProgress(name: string, force: boolean): void;\n\n /**\n * Hides progress indicator\n * @param nameOrForce - Name of progress group (separate counter) or Indication that indicator should be hidden even if some processes are running\n * @param force - Indication that indicator should be hidden even if some processes are running\n */\n public hideProgress(nameOrForce?: boolean | string, force?: boolean): void\n {\n if(!this._isBrowser)\n {\n return;\n }\n\n let name: string = DEFAULT_PROGRESS_NAME;\n\n //first parameter is present\n if(isPresent(nameOrForce))\n {\n if(isBoolean(nameOrForce))\n {\n force = nameOrForce as boolean;\n }\n else\n {\n name = nameOrForce as string;\n }\n }\n\n name = this._getName(name);\n\n const group = this._getGroup(name);\n\n if(force)\n {\n group.runningRequests = 0;\n }\n\n if(group.runningRequests > 0)\n {\n group.runningRequests--;\n }\n\n if(group.runningRequests < 1)\n {\n clearTimeout(group.timeout);\n group.timeout = null;\n this._onRunning(name, false, null);\n }\n }\n\n /**\n * Adds message to progress indicator group\n * @param message - Message to display what is happening\n */\n public addMessage(message: string): void;\n\n /**\n * Adds message to progress indicator group\n * @param name - Name of progress group (separate counter)\n * @param message - Message to display what is happening\n */\n public addMessage(name: string, message?: string): void;\n\n /**\n * Adds message to progress indicator group\n * @param nameOrMessage - Name of progress group (separate counter) or Message to display what is happening\n * @param message - Message to display what is happening\n */\n public addMessage(nameOrMessage?: string, message?: string): void\n {\n let name: string = DEFAULT_PROGRESS_NAME;\n\n if(isPresent(message))\n {\n name = nameOrMessage;\n }\n else\n {\n message = nameOrMessage;\n }\n\n name = this._getName(name);\n\n const group = this._getGroup(name);\n\n this._onRunning(name, group.running, [...(group.messages || []), message]);\n }\n\n /**\n * Clears all messages for progress group\n * @param name - Name of progress group (separate counter)\n */\n public clearMessages(name?: string): void\n {\n if(isBlank(name))\n {\n name = DEFAULT_PROGRESS_NAME;\n }\n\n name = this._getName(name);\n\n const group = this._getGroup(name);\n\n this._onRunning(name, group.running, null);\n }\n\n /**\n * Registers overlay group\n * @param name - Name of group to be registered\n * @internal\n */\n public registerOverlayGroup(name: string): void\n {\n if(!this._registeredOverlays[name])\n {\n this._registeredOverlays[name] = 0;\n }\n\n this._registeredOverlays[name]++;\n }\n\n /**\n * Unregisters overlay group\n * @param name - Name of group to be unregistered\n * @internal\n */\n public unregisterOverlayGroup(name: string): void\n {\n if(!this._registeredOverlays[name])\n {\n return;\n }\n\n this._registeredOverlays[name]--;\n\n if(this._registeredOverlays[name] <= 0)\n {\n delete this._registeredOverlays[name];\n }\n }\n\n //######################### private methods #########################\n\n /**\n * Gets name of group based on existance of this group\n * @param name - Name of group that is requested\n */\n private _getName(name: string): string\n {\n if(name == DEFAULT_PROGRESS_NAME || !this.config.fallbackToDefault)\n {\n return name;\n }\n\n if(this._registeredOverlays[name])\n {\n return name;\n }\n\n return DEFAULT_PROGRESS_NAME;\n }\n\n /**\n * Used for invoking 'stateChange' event\n * @param name - Name of group which has changes its state\n * @param value - Value whether is progress running\n * @param messages - Messages to be displayed for this group\n */\n private _onRunning(name: string, value: boolean, messages: string[])\n {\n const group = this._getGroup(name);\n\n group.running = value;\n group.messages = messages;\n\n this._updateState();\n this._stateChange.next(name);\n }\n\n /**\n * Updates state of progress indicator service\n */\n private _updateState()\n {\n const running: {[group: string]: boolean} = {};\n const messages: {[group: string]: string[]} = {};\n\n Object.keys(this._runningRequests).forEach(group =>\n {\n running[group] = this._runningRequests[group].running;\n messages[group] = this._runningRequests[group].messages;\n });\n\n this.running = running;\n this.messages = messages;\n }\n\n /**\n * Gets object for progress group\n * @param name - Name of group to be obtained\n */\n private _getGroup(name: string): RunningProgressGroup\n {\n let group = this._runningRequests[name];\n\n if(isPresent(group))\n {\n return group;\n }\n\n group =\n {\n runningRequests: 0,\n running: false,\n messages: null,\n timeout: null\n };\n\n this._runningRequests[name] = group;\n\n return group;\n }\n}\n"]}
|
|
@@ -58,9 +58,9 @@ export class TooltipComponent {
|
|
|
58
58
|
this._leaveFn();
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
|
-
TooltipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
62
|
-
TooltipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.
|
|
63
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
61
|
+
TooltipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: TooltipComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
62
|
+
TooltipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: TooltipComponent, selector: "tooltip-popup", host: { listeners: { "mouseenter": "mouseEnter()", "mouseleave": "mouseLeave()" } }, ngImport: i0, template: "<div *ngIf=\"!template && !allowHtml\">{{data}}</div>\r\n<div *ngIf=\"!template && allowHtml\" [innerHTML]=\"data\"></div>\r\n\r\n<ng-template [ngIf]=\"template\">\r\n <ng-container *ngTemplateOutlet=\"template; context: {$implicit: data}\"></ng-container>\r\n</ng-template>", styles: [":host\r\n{\r\n display: block;\r\n position: absolute;\r\n padding: 2px 4px;\r\n border-radius: 3px;\r\n font-size: 0.9em;\r\n max-width: 300px;\r\n user-select: text;\r\n}"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
63
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: TooltipComponent, decorators: [{
|
|
64
64
|
type: Component,
|
|
65
65
|
args: [{ selector: 'tooltip-popup', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"!template && !allowHtml\">{{data}}</div>\r\n<div *ngIf=\"!template && allowHtml\" [innerHTML]=\"data\"></div>\r\n\r\n<ng-template [ngIf]=\"template\">\r\n <ng-container *ngTemplateOutlet=\"template; context: {$implicit: data}\"></ng-container>\r\n</ng-template>", styles: [":host\r\n{\r\n display: block;\r\n position: absolute;\r\n padding: 2px 4px;\r\n border-radius: 3px;\r\n font-size: 0.9em;\r\n max-width: 300px;\r\n user-select: text;\r\n}"] }]
|
|
66
66
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }]; }, propDecorators: { mouseEnter: [{
|
|
@@ -3,9 +3,10 @@ import { AnimationBuilder } from '@angular/animations';
|
|
|
3
3
|
import { DOCUMENT } from '@angular/common';
|
|
4
4
|
import { fadeInAnimation, fadeOutAnimation } from '@anglr/animations';
|
|
5
5
|
import { extend, isBlank, isPresent, nameof } from '@jscrpt/common';
|
|
6
|
+
import { lastValueFrom } from 'rxjs';
|
|
6
7
|
import { TooltipComponent } from '../../components/tooltip/tooltip.component';
|
|
7
8
|
import { TOOLTIP_OPTIONS } from '../../misc/tokens';
|
|
8
|
-
import { applyPositionResult,
|
|
9
|
+
import { applyPositionResult, PositionPlacement } from '../../../../services/position';
|
|
9
10
|
import { TooltipTemplateDirective } from '../tooltipTemplate/tooltipTemplate.directive';
|
|
10
11
|
import { POSITION } from '../../../../types/tokens';
|
|
11
12
|
import * as i0 from "@angular/core";
|
|
@@ -16,8 +17,8 @@ import * as i1 from "@angular/animations";
|
|
|
16
17
|
const defaultOptions = {
|
|
17
18
|
delay: 200,
|
|
18
19
|
position: {
|
|
19
|
-
offset:
|
|
20
|
-
placement: PositionPlacement.TopStart
|
|
20
|
+
offset: nameof('MouseEnter'),
|
|
21
|
+
placement: PositionPlacement.TopStart,
|
|
21
22
|
},
|
|
22
23
|
allowSelection: false,
|
|
23
24
|
tooltipRenderer: TooltipComponent,
|
|
@@ -149,14 +150,13 @@ export class TooltipDirective {
|
|
|
149
150
|
return;
|
|
150
151
|
}
|
|
151
152
|
this._showData();
|
|
152
|
-
this._position.placeElement(this._tooltipElement, this._element.nativeElement, {
|
|
153
|
+
lastValueFrom(this._position.placeElement(this._tooltipElement, this._element.nativeElement, {
|
|
153
154
|
placement: this._options.position.placement,
|
|
154
155
|
offset: this._options.position.offset,
|
|
155
156
|
flip: true,
|
|
156
157
|
mouseEvent: event,
|
|
157
158
|
autoUpdate: false
|
|
158
|
-
})
|
|
159
|
-
.toPromise()
|
|
159
|
+
}))
|
|
160
160
|
.then(result => applyPositionResult(result));
|
|
161
161
|
}
|
|
162
162
|
/**
|
|
@@ -227,9 +227,9 @@ export class TooltipDirective {
|
|
|
227
227
|
}
|
|
228
228
|
}
|
|
229
229
|
}
|
|
230
|
-
TooltipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
231
|
-
TooltipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.
|
|
232
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
230
|
+
TooltipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: TooltipDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.Injector }, { token: i0.ElementRef }, { token: i1.AnimationBuilder }, { token: DOCUMENT }, { token: POSITION }, { token: TOOLTIP_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
231
|
+
TooltipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.7", type: TooltipDirective, selector: "[tooltip]", inputs: { tooltip: "tooltip", allowHtml: "allowHtml", template: "template", tooltipOptions: "tooltipOptions", tooltipVisible: "tooltipVisible" }, host: { listeners: { "mouseleave": "mouseLeave($event)", "mousemove": "mouseMove($event)" } }, queries: [{ propertyName: "tooltipTemplateChild", first: true, predicate: TooltipTemplateDirective, descendants: true }], usesOnChanges: true, ngImport: i0 });
|
|
232
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: TooltipDirective, decorators: [{
|
|
233
233
|
type: Directive,
|
|
234
234
|
args: [{
|
|
235
235
|
selector: '[tooltip]'
|