@anglr/common 20.0.0-beta.20240529082303 → 20.0.0-beta.20240530105358

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.
Files changed (326) hide show
  1. package/changelog.md +68 -0
  2. package/es2022/date-fns/src/misc/utils.js.map +1 -1
  3. package/es2022/floating-ui/src/services/floatingUiDomPosition.service.js +3 -3
  4. package/es2022/floating-ui/src/services/floatingUiDomPosition.service.js.map +1 -1
  5. package/es2022/forms/src/components/defaultValidationErrors/defaultValidationErrors.component.js +14 -24
  6. package/es2022/forms/src/components/defaultValidationErrors/defaultValidationErrors.component.js.map +1 -1
  7. package/es2022/forms/src/components/defaultValidationErrorsContainer/defaultValidationErrorsContainer.component.js +4 -24
  8. package/es2022/forms/src/components/defaultValidationErrorsContainer/defaultValidationErrorsContainer.component.js.map +1 -1
  9. package/es2022/forms/src/components/reservedSpaceValidationErrorsContainer/reservedSpaceValidationErrorsContainer.component.js +4 -28
  10. package/es2022/forms/src/components/reservedSpaceValidationErrorsContainer/reservedSpaceValidationErrorsContainer.component.js.map +1 -1
  11. package/es2022/forms/src/directives/groupHasError/groupHasError.directive.js +14 -14
  12. package/es2022/forms/src/directives/groupHasError/groupHasError.directive.js.map +1 -1
  13. package/es2022/forms/src/directives/groupHasErrorContainer/groupHasErrorContainer.directive.js +5 -4
  14. package/es2022/forms/src/directives/groupHasErrorContainer/groupHasErrorContainer.directive.js.map +1 -1
  15. package/es2022/forms/src/directives/hasError/hasError.directive.js +72 -111
  16. package/es2022/forms/src/directives/hasError/hasError.directive.js.map +1 -1
  17. package/es2022/forms/src/directives/numberInput/maxValueNumberValidator.directive.js +7 -21
  18. package/es2022/forms/src/directives/numberInput/maxValueNumberValidator.directive.js.map +1 -1
  19. package/es2022/forms/src/directives/numberInput/minValueNumberValidator.directive.js +7 -21
  20. package/es2022/forms/src/directives/numberInput/minValueNumberValidator.directive.js.map +1 -1
  21. package/es2022/forms/src/directives/numberInput/numberInputControlValueAccessor.directive.js +13 -15
  22. package/es2022/forms/src/directives/numberInput/numberInputControlValueAccessor.directive.js.map +1 -1
  23. package/es2022/forms/src/directives/numberInput/numberInputValidator.directive.js +3 -3
  24. package/es2022/forms/src/directives/numberInput/numberInputValidator.directive.js.map +1 -1
  25. package/es2022/forms/src/directives/requiredClass/requiredClass.directive.js +32 -27
  26. package/es2022/forms/src/directives/requiredClass/requiredClass.directive.js.map +1 -1
  27. package/es2022/forms/src/directives/validationErrorsContainer/validationErrorsContainer.directive.js +5 -4
  28. package/es2022/forms/src/directives/validationErrorsContainer/validationErrorsContainer.directive.js.map +1 -1
  29. package/es2022/forms/src/index.js +0 -1
  30. package/es2022/forms/src/index.js.map +1 -1
  31. package/es2022/forms/src/misc/formModel/decorators/formGroupAsyncValidator.decorator.js.map +1 -1
  32. package/es2022/forms/src/misc/formModel/decorators/formGroupValidator.decorator.js.map +1 -1
  33. package/es2022/forms/src/misc/formModel/decorators/invalidateOnChange.decorator.js.map +1 -1
  34. package/es2022/forms/src/misc/formModel/decorators/modelPropertyMetadata.decorator.js.map +1 -1
  35. package/es2022/forms/src/misc/formModel/decorators/requiredIf.decorator.js.map +1 -1
  36. package/es2022/forms/src/misc/formModel/misc/currentValue.js +0 -1
  37. package/es2022/forms/src/misc/formModel/misc/currentValue.js.map +1 -1
  38. package/es2022/forms/src/misc/formModel/misc/utils.js.map +1 -1
  39. package/es2022/forms/src/misc/formModel/misc/validatorFactories.js +0 -4
  40. package/es2022/forms/src/misc/formModel/misc/validatorFactories.js.map +1 -1
  41. package/es2022/forms/src/misc/utils.js.map +1 -1
  42. package/es2022/forms/src/misc/validationErrorsContainerView.js +7 -9
  43. package/es2022/forms/src/misc/validationErrorsContainerView.js.map +1 -1
  44. package/es2022/forms/src/misc/validators.js.map +1 -1
  45. package/es2022/forms/src/modules/errorMessage/components/groupErrors/groupErrors.component.js +7 -29
  46. package/es2022/forms/src/modules/errorMessage/components/groupErrors/groupErrors.component.js.map +1 -1
  47. package/es2022/forms/src/modules/errorMessage/directives/errorMessage/errorMessage.directive.js +8 -20
  48. package/es2022/forms/src/modules/errorMessage/directives/errorMessage/errorMessage.directive.js.map +1 -1
  49. package/es2022/forms/src/modules/errorMessage/directives/groupErrorsTemplate/groupErrorsTemplate.directive.js +3 -4
  50. package/es2022/forms/src/modules/errorMessage/directives/groupErrorsTemplate/groupErrorsTemplate.directive.js.map +1 -1
  51. package/es2022/forms/src/modules/errorMessage/modules/errorMessage.module.js +6 -6
  52. package/es2022/forms/src/modules/errorMessage/modules/errorMessage.module.js.map +1 -1
  53. package/es2022/forms/src/modules/errorMessage/pipes/withErrorMessage/withErrorMessage.pipe.js +3 -4
  54. package/es2022/forms/src/modules/errorMessage/pipes/withErrorMessage/withErrorMessage.pipe.js.map +1 -1
  55. package/es2022/forms/src/modules/formPipes/modules/formPipes.module.js +5 -5
  56. package/es2022/forms/src/modules/formPipes/modules/formPipes.module.js.map +1 -1
  57. package/es2022/forms/src/modules/formPipes/pipes/asFormArray/asFormArray.pipe.js +3 -4
  58. package/es2022/forms/src/modules/formPipes/pipes/asFormArray/asFormArray.pipe.js.map +1 -1
  59. package/es2022/forms/src/modules/formPipes/pipes/asFormControl/asFormControl.pipe.js +3 -4
  60. package/es2022/forms/src/modules/formPipes/pipes/asFormControl/asFormControl.pipe.js.map +1 -1
  61. package/es2022/forms/src/modules/formPipes/pipes/asFormGroup/asFormGroup.pipe.js +3 -4
  62. package/es2022/forms/src/modules/formPipes/pipes/asFormGroup/asFormGroup.pipe.js.map +1 -1
  63. package/es2022/forms/src/modules/formPipes/pipes/getControl/getControl.pipe.js +3 -3
  64. package/es2022/forms/src/modules/formPipes/pipes/getControl/getControl.pipe.js.map +1 -1
  65. package/es2022/forms/src/modules/hasError.module.js +6 -17
  66. package/es2022/forms/src/modules/hasError.module.js.map +1 -1
  67. package/es2022/forms/src/modules/numberInput.module.js +5 -5
  68. package/es2022/forms/src/modules/numberInput.module.js.map +1 -1
  69. package/es2022/forms/src/services/errorMessagesExtractor/errorMessagesExtractor.service.js +3 -10
  70. package/es2022/forms/src/services/errorMessagesExtractor/errorMessagesExtractor.service.js.map +1 -1
  71. package/es2022/forms/src/services/formModelBuilder/formModelBuilder.service.js +3 -4
  72. package/es2022/forms/src/services/formModelBuilder/formModelBuilder.service.js.map +1 -1
  73. package/es2022/forms/src/services/submitted/submitted.service.js +14 -12
  74. package/es2022/forms/src/services/submitted/submitted.service.js.map +1 -1
  75. package/es2022/forms/src/services/validationErrorRenderer/validationErrorRenderer.service.js +3 -24
  76. package/es2022/forms/src/services/validationErrorRenderer/validationErrorRenderer.service.js.map +1 -1
  77. package/es2022/hotkeys/src/components/cheatSheet/cheatSheet.component.js +18 -21
  78. package/es2022/hotkeys/src/components/cheatSheet/cheatSheet.component.js.map +1 -1
  79. package/es2022/hotkeys/src/services/appHotkeys.service.js +20 -26
  80. package/es2022/hotkeys/src/services/appHotkeys.service.js.map +1 -1
  81. package/es2022/material/src/components/confirmationDialog/confirmationDialog.component.js +3 -10
  82. package/es2022/material/src/components/confirmationDialog/confirmationDialog.component.js.map +1 -1
  83. package/es2022/material/src/components/movableTitledDialog/movableTitledDialog.component.js +3 -3
  84. package/es2022/material/src/components/movableTitledDialog/movableTitledDialog.component.js.map +1 -1
  85. package/es2022/material/src/components/titledDialog/titledDialog.component.js +3 -10
  86. package/es2022/material/src/components/titledDialog/titledDialog.component.js.map +1 -1
  87. package/es2022/material/src/directives/confirmationDialog/confirmationDialog.directive.js +37 -38
  88. package/es2022/material/src/directives/confirmationDialog/confirmationDialog.directive.js.map +1 -1
  89. package/es2022/material/src/directives/debugDataCopyClick/debugDataCopyClick.directive.js +10 -16
  90. package/es2022/material/src/directives/debugDataCopyClick/debugDataCopyClick.directive.js.map +1 -1
  91. package/es2022/material/src/modules/confirmationDialog.module.js +6 -6
  92. package/es2022/material/src/modules/confirmationDialog.module.js.map +1 -1
  93. package/es2022/material/src/modules/debugDataCopyClick.module.js +5 -5
  94. package/es2022/material/src/modules/debugDataCopyClick.module.js.map +1 -1
  95. package/es2022/material/src/modules/movableTitledDialog.module.js +6 -6
  96. package/es2022/material/src/modules/movableTitledDialog.module.js.map +1 -1
  97. package/es2022/material/src/modules/titledDialog.module.js +6 -6
  98. package/es2022/material/src/modules/titledDialog.module.js.map +1 -1
  99. package/es2022/material/src/services/titledDialog/titledDialog.service.js +3 -5
  100. package/es2022/material/src/services/titledDialog/titledDialog.service.js.map +1 -1
  101. package/es2022/material/src/services/titledDialog/titledDialogService.options.js +5 -5
  102. package/es2022/material/src/services/titledDialog/titledDialogService.options.js.map +1 -1
  103. package/es2022/moment/src/misc/utils.js.map +1 -1
  104. package/es2022/moment/src/modules/moment.module.js +5 -5
  105. package/es2022/moment/src/modules/moment.module.js.map +1 -1
  106. package/es2022/moment/src/pipes/momentConvert/momentConvert.pipe.js +3 -3
  107. package/es2022/moment/src/pipes/momentConvert/momentConvert.pipe.js.map +1 -1
  108. package/es2022/moment/src/pipes/momentFormat/momentFormat.pipe.js +3 -3
  109. package/es2022/moment/src/pipes/momentFormat/momentFormat.pipe.js.map +1 -1
  110. package/es2022/router/src/decorators/componentRedirectRoute.decorator.js.map +1 -1
  111. package/es2022/router/src/decorators/componentRoute.decorator.js.map +1 -1
  112. package/es2022/router/src/decorators/moduleRoutes.decorator.js.map +1 -1
  113. package/es2022/router/src/misc/utils.js.map +1 -1
  114. package/es2022/router/src/services/routing/dataRouter.js +16 -17
  115. package/es2022/router/src/services/routing/dataRouter.js.map +1 -1
  116. package/es2022/router/src/services/routing/dataRouterData.js +3 -8
  117. package/es2022/router/src/services/routing/dataRouterData.js.map +1 -1
  118. package/es2022/src/components/collapsibleIcon/collapsibleIcon.component.js +20 -22
  119. package/es2022/src/components/collapsibleIcon/collapsibleIcon.component.js.map +1 -1
  120. package/es2022/src/components/collapsibleTitle/collapsibleTitle.component.js +18 -20
  121. package/es2022/src/components/collapsibleTitle/collapsibleTitle.component.js.map +1 -1
  122. package/es2022/src/decorators/asSignal/asSignal.decorator.js.map +1 -1
  123. package/es2022/src/decorators/componentHostStyle/componentHostStyle.decorator.js.map +1 -1
  124. package/es2022/src/decorators/typeProvider/typeProvider.decorator.js.map +1 -1
  125. package/es2022/src/directives/bodyRender/bodyRender.directive.js +4 -23
  126. package/es2022/src/directives/bodyRender/bodyRender.directive.js.map +1 -1
  127. package/es2022/src/directives/clickOutside/clickOutside.directive.js +27 -39
  128. package/es2022/src/directives/clickOutside/clickOutside.directive.js.map +1 -1
  129. package/es2022/src/directives/ellipsisTooltip/ellipsisTooltip.directive.js +33 -48
  130. package/es2022/src/directives/ellipsisTooltip/ellipsisTooltip.directive.js.map +1 -1
  131. package/es2022/src/directives/goBack/goBack.directive.js +4 -5
  132. package/es2022/src/directives/goBack/goBack.directive.js.map +1 -1
  133. package/es2022/src/directives/ngComponentOutletEx/ngComponentOutletEx.directive.js +13 -27
  134. package/es2022/src/directives/ngComponentOutletEx/ngComponentOutletEx.directive.js.map +1 -1
  135. package/es2022/src/directives/positionTo/positionTo.directive.js +20 -45
  136. package/es2022/src/directives/positionTo/positionTo.directive.js.map +1 -1
  137. package/es2022/src/modules/castPipes/modules/castPipes.module.js +5 -5
  138. package/es2022/src/modules/castPipes/modules/castPipes.module.js.map +1 -1
  139. package/es2022/src/modules/castPipes/pipes/asHtmlElement/asHtmlElement.pipe.js +3 -3
  140. package/es2022/src/modules/castPipes/pipes/asHtmlElement/asHtmlElement.pipe.js.map +1 -1
  141. package/es2022/src/modules/castPipes/pipes/asNgClassRequired/asNgClassRequired.pipe.js +3 -3
  142. package/es2022/src/modules/castPipes/pipes/asNgClassRequired/asNgClassRequired.pipe.js.map +1 -1
  143. package/es2022/src/modules/castPipes/pipes/asRequired/asRequired.pipe.js +3 -3
  144. package/es2022/src/modules/castPipes/pipes/asRequired/asRequired.pipe.js.map +1 -1
  145. package/es2022/src/modules/castPipes/pipes/castType/castType.pipe.js +8 -9
  146. package/es2022/src/modules/castPipes/pipes/castType/castType.pipe.js.map +1 -1
  147. package/es2022/src/modules/commonDynamic.module.js +4 -4
  148. package/es2022/src/modules/commonDynamic.module.js.map +1 -1
  149. package/es2022/src/modules/commonLocalize.module.js +4 -4
  150. package/es2022/src/modules/commonLocalize.module.js.map +1 -1
  151. package/es2022/src/modules/commonUtils.module.js +21 -21
  152. package/es2022/src/modules/commonUtils.module.js.map +1 -1
  153. package/es2022/src/modules/debugData/components/debugData/debugData.component.js +3 -5
  154. package/es2022/src/modules/debugData/components/debugData/debugData.component.js.map +1 -1
  155. package/es2022/src/modules/debugData/modules/debugData.module.js +4 -4
  156. package/es2022/src/modules/debugData/modules/debugData.module.js.map +1 -1
  157. package/es2022/src/modules/debugData/services/debugDataEnabled/debugDataEnabled.service.js +10 -8
  158. package/es2022/src/modules/debugData/services/debugDataEnabled/debugDataEnabled.service.js.map +1 -1
  159. package/es2022/src/modules/logger/components/console/console.component.js +16 -23
  160. package/es2022/src/modules/logger/components/console/console.component.js.map +1 -1
  161. package/es2022/src/modules/logger/decorators/loggerSink.decorator.js.map +1 -1
  162. package/es2022/src/modules/logger/misc/utils.js.map +1 -1
  163. package/es2022/src/modules/logger/services/console/consoleComponent.service.js +18 -16
  164. package/es2022/src/modules/logger/services/console/consoleComponent.service.js.map +1 -1
  165. package/es2022/src/modules/logger/services/console/consoleComponent.sink.js +7 -5
  166. package/es2022/src/modules/logger/services/console/consoleComponent.sink.js.map +1 -1
  167. package/es2022/src/modules/logger/services/console/consoleComponentService.options.js +8 -8
  168. package/es2022/src/modules/logger/services/console/consoleComponentService.options.js.map +1 -1
  169. package/es2022/src/modules/logger/services/developmentConsoleSink/developmentConsole.sink.js.map +1 -1
  170. package/es2022/src/modules/logger/services/logLevelEnricher/logLevelEnricher.enricher.js.map +1 -1
  171. package/es2022/src/modules/logger/services/logger/logger.service.js +3 -4
  172. package/es2022/src/modules/logger/services/logger/logger.service.js.map +1 -1
  173. package/es2022/src/modules/logger/services/rest/rest.sink.js +17 -21
  174. package/es2022/src/modules/logger/services/rest/rest.sink.js.map +1 -1
  175. package/es2022/src/modules/logger/services/rest/restSink.options.js +16 -16
  176. package/es2022/src/modules/logger/services/rest/restSink.options.js.map +1 -1
  177. package/es2022/src/modules/logger/services/subLoggerSink/subLogger.sink.js +0 -1
  178. package/es2022/src/modules/logger/services/subLoggerSink/subLogger.sink.js.map +1 -1
  179. package/es2022/src/modules/logger/types/loggerConfiguration.js +8 -17
  180. package/es2022/src/modules/logger/types/loggerConfiguration.js.map +1 -1
  181. package/es2022/src/modules/logger/types/loggerOptions.js +30 -28
  182. package/es2022/src/modules/logger/types/loggerOptions.js.map +1 -1
  183. package/es2022/src/modules/logger/types/messageLog.js +5 -18
  184. package/es2022/src/modules/logger/types/messageLog.js.map +1 -1
  185. package/es2022/src/modules/multiButton/components/multiButton/multiButton.component.js +33 -46
  186. package/es2022/src/modules/multiButton/components/multiButton/multiButton.component.js.map +1 -1
  187. package/es2022/src/modules/multiButton/modules/multiButton.module.js +4 -4
  188. package/es2022/src/modules/multiButton/modules/multiButton.module.js.map +1 -1
  189. package/es2022/src/modules/progressIndicator/components/progressIndicator/progressIndicator.component.js +9 -21
  190. package/es2022/src/modules/progressIndicator/components/progressIndicator/progressIndicator.component.js.map +1 -1
  191. package/es2022/src/modules/progressIndicator/directives/progressOverlay/progressOverlay.directive.js +7 -45
  192. package/es2022/src/modules/progressIndicator/directives/progressOverlay/progressOverlay.directive.js.map +1 -1
  193. package/es2022/src/modules/progressIndicator/interceptors/progressInterceptor.js +3 -4
  194. package/es2022/src/modules/progressIndicator/interceptors/progressInterceptor.js.map +1 -1
  195. package/es2022/src/modules/progressIndicator/modules/progressIndicator.module.js +6 -6
  196. package/es2022/src/modules/progressIndicator/modules/progressIndicator.module.js.map +1 -1
  197. package/es2022/src/modules/progressIndicator/services/progressIndicator.service.js +29 -30
  198. package/es2022/src/modules/progressIndicator/services/progressIndicator.service.js.map +1 -1
  199. package/es2022/src/modules/progressIndicator/services/progressIndicatorOptions.js +9 -9
  200. package/es2022/src/modules/progressIndicator/services/progressIndicatorOptions.js.map +1 -1
  201. package/es2022/src/modules/tooltip/components/tooltip/tooltip.component.js +16 -31
  202. package/es2022/src/modules/tooltip/components/tooltip/tooltip.component.js.map +1 -1
  203. package/es2022/src/modules/tooltip/directives/tooltip/tooltip.directive.js +20 -77
  204. package/es2022/src/modules/tooltip/directives/tooltip/tooltip.directive.js.map +1 -1
  205. package/es2022/src/modules/tooltip/directives/tooltipTemplate/tooltipTemplate.directive.js +3 -4
  206. package/es2022/src/modules/tooltip/directives/tooltipTemplate/tooltipTemplate.directive.js.map +1 -1
  207. package/es2022/src/modules/tooltip/modules/tooltip.module.js +5 -5
  208. package/es2022/src/modules/tooltip/modules/tooltip.module.js.map +1 -1
  209. package/es2022/src/pipes/displayProperties/displayProperties.pipe.js +4 -4
  210. package/es2022/src/pipes/displayProperties/displayProperties.pipe.js.map +1 -1
  211. package/es2022/src/pipes/firstUppercase/firstUppercase.pipe.js +3 -3
  212. package/es2022/src/pipes/firstUppercase/firstUppercase.pipe.js.map +1 -1
  213. package/es2022/src/pipes/firstUppercaseLocalize/firstUppercaseLocalize.pipe.js +3 -18
  214. package/es2022/src/pipes/firstUppercaseLocalize/firstUppercaseLocalize.pipe.js.map +1 -1
  215. package/es2022/src/pipes/index.js +1 -0
  216. package/es2022/src/pipes/index.js.map +1 -1
  217. package/es2022/src/pipes/isNaN/isNaN.pipe.js +4 -4
  218. package/es2022/src/pipes/isNaN/isNaN.pipe.js.map +1 -1
  219. package/es2022/src/pipes/isPresent/isPresent.pipe.js +4 -4
  220. package/es2022/src/pipes/isPresent/isPresent.pipe.js.map +1 -1
  221. package/es2022/src/pipes/keys/keys.pipe.js +4 -4
  222. package/es2022/src/pipes/keys/keys.pipe.js.map +1 -1
  223. package/es2022/src/pipes/localize/localize.pipe.js +3 -10
  224. package/es2022/src/pipes/localize/localize.pipe.js.map +1 -1
  225. package/es2022/src/pipes/mergeCssClasses/mergeCssClasses.pipe.js +3 -3
  226. package/es2022/src/pipes/mergeCssClasses/mergeCssClasses.pipe.js.map +1 -1
  227. package/es2022/{numeral/src/pipes → src/pipes/numeral}/numeral.pipe.js +8 -15
  228. package/es2022/src/pipes/numeral/numeral.pipe.js.map +1 -0
  229. package/es2022/src/pipes/trimText/trimText.pipe.js +3 -3
  230. package/es2022/src/pipes/trimText/trimText.pipe.js.map +1 -1
  231. package/es2022/src/pipes/urlEncode/urlEncode.pipe.js +4 -4
  232. package/es2022/src/pipes/urlEncode/urlEncode.pipe.js.map +1 -1
  233. package/es2022/src/services/cookies/cookies.service.js +8 -9
  234. package/es2022/src/services/cookies/cookies.service.js.map +1 -1
  235. package/es2022/src/services/notifications/defaultNotifications.service.js +24 -25
  236. package/es2022/src/services/notifications/defaultNotifications.service.js.map +1 -1
  237. package/es2022/src/services/notifications/notifications.interface.js +0 -3
  238. package/es2022/src/services/notifications/notifications.interface.js.map +1 -1
  239. package/es2022/src/services/notifications/notificationsOptions.js +5 -5
  240. package/es2022/src/services/notifications/notificationsOptions.js.map +1 -1
  241. package/es2022/src/services/permanentStorage/cookiePermanentStorage.service.js +3 -4
  242. package/es2022/src/services/permanentStorage/cookiePermanentStorage.service.js.map +1 -1
  243. package/es2022/src/services/position/position.interface.js.map +1 -1
  244. package/es2022/src/services/statusCode/statusCode.service.js +3 -8
  245. package/es2022/src/services/statusCode/statusCode.service.js.map +1 -1
  246. package/es2022/src/services/stringLocalization/noStringLocalization.service.js +10 -8
  247. package/es2022/src/services/stringLocalization/noStringLocalization.service.js.map +1 -1
  248. package/es2022/src/services/temporaryStorage/memoryTemporaryStorage.service.js +10 -8
  249. package/es2022/src/services/temporaryStorage/memoryTemporaryStorage.service.js.map +1 -1
  250. package/es2022/src/utils/index.js.map +1 -1
  251. package/es2022/store/src/services/permanentStorage/localPermanentStorage.service.js +3 -3
  252. package/es2022/store/src/services/permanentStorage/localPermanentStorage.service.js.map +1 -1
  253. package/es2022/store/src/services/temporaryStorage/sessionTemporaryStorage.service.js +3 -3
  254. package/es2022/store/src/services/temporaryStorage/sessionTemporaryStorage.service.js.map +1 -1
  255. package/floating-ui/src/services/floatingUiDomPosition.service.d.ts +5 -5
  256. package/floating-ui/src/services/floatingUiDomPosition.service.d.ts.map +1 -1
  257. package/forms/src/components/defaultValidationErrors/defaultValidationErrors.component.d.ts +1 -1
  258. package/forms/src/components/defaultValidationErrors/defaultValidationErrors.component.d.ts.map +1 -1
  259. package/forms/src/components/defaultValidationErrors/defaultValidationErrors.component.html +9 -3
  260. package/forms/src/components/defaultValidationErrorsContainer/defaultValidationErrorsContainer.component.d.ts +1 -1
  261. package/forms/src/components/defaultValidationErrorsContainer/defaultValidationErrorsContainer.component.d.ts.map +1 -1
  262. package/forms/src/components/reservedSpaceValidationErrorsContainer/reservedSpaceValidationErrorsContainer.component.d.ts +1 -1
  263. package/forms/src/components/reservedSpaceValidationErrorsContainer/reservedSpaceValidationErrorsContainer.component.d.ts.map +1 -1
  264. package/forms/src/directives/groupHasError/groupHasError.directive.d.ts +1 -1
  265. package/forms/src/directives/groupHasError/groupHasError.directive.d.ts.map +1 -1
  266. package/forms/src/directives/groupHasErrorContainer/groupHasErrorContainer.directive.d.ts +1 -1
  267. package/forms/src/directives/groupHasErrorContainer/groupHasErrorContainer.directive.d.ts.map +1 -1
  268. package/forms/src/directives/hasError/hasError.directive.d.ts +24 -32
  269. package/forms/src/directives/hasError/hasError.directive.d.ts.map +1 -1
  270. package/forms/src/directives/requiredClass/requiredClass.directive.d.ts +14 -12
  271. package/forms/src/directives/requiredClass/requiredClass.directive.d.ts.map +1 -1
  272. package/forms/src/directives/validationErrorsContainer/validationErrorsContainer.directive.d.ts +1 -1
  273. package/forms/src/directives/validationErrorsContainer/validationErrorsContainer.directive.d.ts.map +1 -1
  274. package/forms/src/index.d.ts +0 -1
  275. package/forms/src/index.d.ts.map +1 -1
  276. package/forms/src/modules/hasError.module.d.ts +1 -5
  277. package/forms/src/modules/hasError.module.d.ts.map +1 -1
  278. package/hotkeys/src/components/cheatSheet/cheatSheet.component.d.ts +3 -3
  279. package/hotkeys/src/components/cheatSheet/cheatSheet.component.d.ts.map +1 -1
  280. package/hotkeys/src/components/cheatSheet/cheatSheet.component.html +13 -7
  281. package/lerna.json +4 -0
  282. package/package.json +54 -57
  283. package/readme.md +0 -1
  284. package/router/src/decorators/moduleRoutes.decorator.d.ts.map +1 -1
  285. package/src/components/collapsibleIcon/collapsibleIcon.component.d.ts +3 -3
  286. package/src/components/collapsibleIcon/collapsibleIcon.component.d.ts.map +1 -1
  287. package/src/components/collapsibleTitle/collapsibleTitle.component.d.ts +3 -3
  288. package/src/components/collapsibleTitle/collapsibleTitle.component.d.ts.map +1 -1
  289. package/src/directives/bodyRender/bodyRender.directive.d.ts +3 -3
  290. package/src/directives/bodyRender/bodyRender.directive.d.ts.map +1 -1
  291. package/src/directives/ellipsisTooltip/ellipsisTooltip.directive.d.ts +3 -3
  292. package/src/directives/ellipsisTooltip/ellipsisTooltip.directive.d.ts.map +1 -1
  293. package/src/directives/goBack/goBack.directive.d.ts +3 -3
  294. package/src/directives/goBack/goBack.directive.d.ts.map +1 -1
  295. package/src/directives/positionTo/positionTo.directive.d.ts +2 -2
  296. package/src/directives/positionTo/positionTo.directive.d.ts.map +1 -1
  297. package/src/modules/commonUtils.module.d.ts +1 -1
  298. package/src/modules/tooltip/directives/tooltip/tooltip.directive.d.ts +3 -3
  299. package/src/modules/tooltip/directives/tooltip/tooltip.directive.d.ts.map +1 -1
  300. package/src/pipes/displayProperties/displayProperties.pipe.d.ts +3 -3
  301. package/src/pipes/displayProperties/displayProperties.pipe.d.ts.map +1 -1
  302. package/src/pipes/index.d.ts +1 -0
  303. package/src/pipes/index.d.ts.map +1 -1
  304. package/src/pipes/isNaN/isNaN.pipe.d.ts +3 -3
  305. package/src/pipes/isNaN/isNaN.pipe.d.ts.map +1 -1
  306. package/src/pipes/isPresent/isPresent.pipe.d.ts +3 -3
  307. package/src/pipes/isPresent/isPresent.pipe.d.ts.map +1 -1
  308. package/src/pipes/keys/keys.pipe.d.ts +3 -3
  309. package/src/pipes/keys/keys.pipe.d.ts.map +1 -1
  310. package/{numeral/src/pipes → src/pipes/numeral}/numeral.pipe.d.ts +4 -4
  311. package/{numeral/src/pipes → src/pipes/numeral}/numeral.pipe.d.ts.map +1 -1
  312. package/src/pipes/urlEncode/urlEncode.pipe.d.ts +3 -3
  313. package/src/pipes/urlEncode/urlEncode.pipe.d.ts.map +1 -1
  314. package/src/services/position/position.interface.d.ts +10 -10
  315. package/src/services/position/position.interface.d.ts.map +1 -1
  316. package/version.bak +1 -1
  317. package/es2022/forms/src/modules/requiredClass.module.js +0 -19
  318. package/es2022/forms/src/modules/requiredClass.module.js.map +0 -1
  319. package/es2022/numeral/src/index.js +0 -2
  320. package/es2022/numeral/src/index.js.map +0 -1
  321. package/es2022/numeral/src/pipes/numeral.pipe.js.map +0 -1
  322. package/forms/src/modules/requiredClass.module.d.ts +0 -11
  323. package/forms/src/modules/requiredClass.module.d.ts.map +0 -1
  324. package/numeral/package.json +0 -8
  325. package/numeral/src/index.d.ts +0 -2
  326. package/numeral/src/index.d.ts.map +0 -1
@@ -7,21 +7,21 @@ import * as i1 from "../../types";
7
7
  * Options for rest sink
8
8
  */
9
9
  export class RestSinkOptions {
10
- //######################### public properties #########################
11
- /**
12
- * Number of seconds after which should be flush called
13
- */
14
- secondsToFlushAfter = 300;
15
- /**
16
- * Number of logs after which should be flush called
17
- */
18
- flushAfterNumberOfLogs = 50;
19
- /**
20
- * Minimal log level that will be flushed immediately
21
- */
22
- immediateFlushMinLevel = LogLevel.Error;
23
10
  //######################### constructor #########################
24
11
  constructor(secondsToFlushAfter, flushAfterNumberOfLogs, immediateFlushMinLevel) {
12
+ //######################### public properties #########################
13
+ /**
14
+ * Number of seconds after which should be flush called
15
+ */
16
+ this.secondsToFlushAfter = 300;
17
+ /**
18
+ * Number of logs after which should be flush called
19
+ */
20
+ this.flushAfterNumberOfLogs = 50;
21
+ /**
22
+ * Minimal log level that will be flushed immediately
23
+ */
24
+ this.immediateFlushMinLevel = LogLevel.Error;
25
25
  if (isPresent(secondsToFlushAfter)) {
26
26
  this.secondsToFlushAfter = secondsToFlushAfter;
27
27
  }
@@ -32,10 +32,10 @@ export class RestSinkOptions {
32
32
  this.immediateFlushMinLevel = immediateFlushMinLevel;
33
33
  }
34
34
  }
35
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: RestSinkOptions, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable });
36
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: RestSinkOptions, providedIn: 'root', useFactory: () => new RestSinkOptions() });
35
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: RestSinkOptions, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable }); }
36
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: RestSinkOptions, providedIn: 'root', useFactory: () => new RestSinkOptions() }); }
37
37
  }
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: RestSinkOptions, decorators: [{
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: RestSinkOptions, decorators: [{
39
39
  type: Injectable,
40
40
  args: [{ providedIn: 'root', useFactory: () => new RestSinkOptions() }]
41
41
  }], ctorParameters: () => [{ type: undefined }, { type: undefined }, { type: i1.LogLevel }] });
@@ -1 +1 @@
1
- {"version":3,"file":"restSink.options.js","sourceRoot":"","sources":["../../../../../../src/modules/logger/services/rest/restSink.options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AACzC,OAAO,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;AAEzC,OAAO,EAAC,QAAQ,EAAC,MAAM,aAAa,CAAC;;;AAErC;;GAEG;AAEH,MAAM,OAAO,eAAe;IAExB,uEAAuE;IAEvE;;OAEG;IACI,mBAAmB,GAAW,GAAG,CAAC;IAEzC;;OAEG;IACI,sBAAsB,GAAW,EAAE,CAAC;IAE3C;;OAEG;IACI,sBAAsB,GAAa,QAAQ,CAAC,KAAK,CAAC;IAEzD,iEAAiE;IACjE,YAAY,mBAA4B,EAC5B,sBAA+B,EAC/B,sBAAiC;QAEzC,IAAG,SAAS,CAAC,mBAAmB,CAAC,EACjC;YACI,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;SAClD;QAED,IAAG,SAAS,CAAC,sBAAsB,CAAC,EACpC;YACI,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;SACxD;QAED,IAAG,SAAS,CAAC,sBAAsB,CAAC,EACpC;YACI,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;SACxD;IACL,CAAC;uGAtCQ,eAAe;2GAAf,eAAe,cADH,MAAM,cAAc,GAAG,EAAE,CAAC,IAAI,eAAe,EAAE;;2FAC3D,eAAe;kBAD3B,UAAU;mBAAC,EAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,qBAAqB,EAAC","sourcesContent":["import {Injectable} from '@angular/core';\nimport {isPresent} from '@jscrpt/common';\n\nimport {LogLevel} from '../../types';\n\n/**\n * Options for rest sink\n */\n@Injectable({providedIn: 'root', useFactory: () => new RestSinkOptions()})\nexport class RestSinkOptions\n{\n //######################### public properties #########################\n\n /**\n * Number of seconds after which should be flush called\n */\n public secondsToFlushAfter: number = 300;\n\n /**\n * Number of logs after which should be flush called\n */\n public flushAfterNumberOfLogs: number = 50;\n\n /**\n * Minimal log level that will be flushed immediately\n */\n public immediateFlushMinLevel: LogLevel = LogLevel.Error;\n\n //######################### constructor #########################\n constructor(secondsToFlushAfter?: number,\n flushAfterNumberOfLogs?: number,\n immediateFlushMinLevel?: LogLevel,)\n {\n if(isPresent(secondsToFlushAfter))\n {\n this.secondsToFlushAfter = secondsToFlushAfter;\n }\n\n if(isPresent(flushAfterNumberOfLogs))\n {\n this.flushAfterNumberOfLogs = flushAfterNumberOfLogs;\n }\n\n if(isPresent(immediateFlushMinLevel))\n {\n this.immediateFlushMinLevel = immediateFlushMinLevel;\n }\n }\n}\n"]}
1
+ {"version":3,"file":"restSink.options.js","sourceRoot":"","sources":["../../../../../../src/modules/logger/services/rest/restSink.options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AACzC,OAAO,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;AAEzC,OAAO,EAAC,QAAQ,EAAC,MAAM,aAAa,CAAC;;;AAErC;;GAEG;AAEH,MAAM,OAAO,eAAe;IAmBxB,iEAAiE;IACjE,YAAY,mBAA4B,EAC5B,sBAA+B,EAC/B,sBAAiC;QApB7C,uEAAuE;QAEvE;;WAEG;QACI,wBAAmB,GAAW,GAAG,CAAC;QAEzC;;WAEG;QACI,2BAAsB,GAAW,EAAE,CAAC;QAE3C;;WAEG;QACI,2BAAsB,GAAa,QAAQ,CAAC,KAAK,CAAC;QAOrD,IAAG,SAAS,CAAC,mBAAmB,CAAC,EACjC,CAAC;YACG,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;QACnD,CAAC;QAED,IAAG,SAAS,CAAC,sBAAsB,CAAC,EACpC,CAAC;YACG,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;QACzD,CAAC;QAED,IAAG,SAAS,CAAC,sBAAsB,CAAC,EACpC,CAAC;YACG,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;QACzD,CAAC;IACL,CAAC;8GAtCQ,eAAe;kHAAf,eAAe,cADH,MAAM,cAAc,GAAG,EAAE,CAAC,IAAI,eAAe,EAAE;;2FAC3D,eAAe;kBAD3B,UAAU;mBAAC,EAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,qBAAqB,EAAC","sourcesContent":["import {Injectable} from '@angular/core';\nimport {isPresent} from '@jscrpt/common';\n\nimport {LogLevel} from '../../types';\n\n/**\n * Options for rest sink\n */\n@Injectable({providedIn: 'root', useFactory: () => new RestSinkOptions()})\nexport class RestSinkOptions\n{\n //######################### public properties #########################\n\n /**\n * Number of seconds after which should be flush called\n */\n public secondsToFlushAfter: number = 300;\n\n /**\n * Number of logs after which should be flush called\n */\n public flushAfterNumberOfLogs: number = 50;\n\n /**\n * Minimal log level that will be flushed immediately\n */\n public immediateFlushMinLevel: LogLevel = LogLevel.Error;\n\n //######################### constructor #########################\n constructor(secondsToFlushAfter?: number,\n flushAfterNumberOfLogs?: number,\n immediateFlushMinLevel?: LogLevel,)\n {\n if(isPresent(secondsToFlushAfter))\n {\n this.secondsToFlushAfter = secondsToFlushAfter;\n }\n\n if(isPresent(flushAfterNumberOfLogs))\n {\n this.flushAfterNumberOfLogs = flushAfterNumberOfLogs;\n }\n\n if(isPresent(immediateFlushMinLevel))\n {\n this.immediateFlushMinLevel = immediateFlushMinLevel;\n }\n }\n}\n"]}
@@ -2,7 +2,6 @@
2
2
  * Sink that is used as sub logger
3
3
  */
4
4
  export class SubLoggerSink {
5
- loggerOptions;
6
5
  //######################### public properties - implementation of LoggerSink #########################
7
6
  /**
8
7
  * @inheritdoc
@@ -1 +1 @@
1
- {"version":3,"file":"subLogger.sink.js","sourceRoot":"","sources":["../../../../../../src/modules/logger/services/subLoggerSink/subLogger.sink.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,OAAO,aAAa;IA6BA;IA3BtB,sGAAsG;IAEtG;;OAEG;IACH,IAAW,SAAS;QAEhB,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,IAAW,MAAM;QAEb,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,IAAW,eAAe;QAEtB,OAAO,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC;IAC9C,CAAC;IAED,iEAAiE;IACjE,YAAsB,aAA4B;QAA5B,kBAAa,GAAb,aAAa,CAAe;IAGlD,CAAC;IAED,mGAAmG;IAEnG;;OAEG;IACI,GAAG,CAAC,OAAsB,EAAE,gBAAyC,EAAE,UAA+C;QAEzH,KAAI,MAAM,IAAI,IAAI,IAAI,CAAC,aAAa,CAAC,WAAW,EAChD;YACI,IAAI,CAAC,GAAG,CAAC;gBACI,SAAS,EAAE,EAAE;gBACb,MAAM,EAAE,SAAS;gBACjB,WAAW,EAAE,EAAE;gBACf,kBAAkB,EAAE,IAAI,CAAC,aAAa,CAAC,kBAAkB,IAAI,OAAO,CAAC,kBAAkB;gBACvF,eAAe,EAAE,IAAI,CAAC,aAAa,CAAC,eAAe,IAAI,OAAO,CAAC,eAAe;gBAC9E,eAAe,EAAE,SAAS;aAC7B,EACD,gBAAgB,EAChB,UAAU,CAAE,CAAC;SACzB;IACL,CAAC;CACJ","sourcesContent":["import {LoggerEnricher, LoggerFilter, LoggerSink} from '../../interfaces';\nimport {MinLogLevelGetter} from '../../misc';\nimport {LoggerOptions, MessageLog} from '../../types';\n\n/**\n * Sink that is used as sub logger\n */\nexport class SubLoggerSink implements LoggerSink\n{\n //######################### public properties - implementation of LoggerSink #########################\n\n /**\n * @inheritdoc\n */\n public get enrichers(): LoggerEnricher[]\n {\n return this.loggerOptions.enrichers;\n }\n\n /**\n * @inheritdoc\n */\n public get filter(): LoggerFilter|undefined|null\n {\n return this.loggerOptions.filter;\n }\n\n /**\n * @inheritdoc\n */\n public get minimumLogLevel(): MinLogLevelGetter|undefined|null\n {\n return this.loggerOptions.minimumLogLevel;\n }\n\n //######################### constructor #########################\n constructor(protected loggerOptions: LoggerOptions,)\n {\n\n }\n\n //######################### public methods - implementation of LoggerSink #########################\n\n /**\n * @inheritdoc\n */\n public log(options: LoggerOptions, loggerProperties: Record<string, unknown>, messageLog: MessageLog<Record<string, unknown>>): void\n {\n for(const sink of this.loggerOptions.loggerSinks)\n {\n sink.log({\n enrichers: [],\n filter: undefined,\n loggerSinks: [],\n messageLengthLimit: this.loggerOptions.messageLengthLimit ?? options.messageLengthLimit,\n messageTemplate: this.loggerOptions.messageTemplate ?? options.messageTemplate,\n minimumLogLevel: undefined,\n },\n loggerProperties,\n messageLog,);\n }\n }\n}"]}
1
+ {"version":3,"file":"subLogger.sink.js","sourceRoot":"","sources":["../../../../../../src/modules/logger/services/subLoggerSink/subLogger.sink.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,OAAO,aAAa;IAEtB,sGAAsG;IAEtG;;OAEG;IACH,IAAW,SAAS;QAEhB,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,IAAW,MAAM;QAEb,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,IAAW,eAAe;QAEtB,OAAO,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC;IAC9C,CAAC;IAED,iEAAiE;IACjE,YAAsB,aAA4B;QAA5B,kBAAa,GAAb,aAAa,CAAe;IAGlD,CAAC;IAED,mGAAmG;IAEnG;;OAEG;IACI,GAAG,CAAC,OAAsB,EAAE,gBAAyC,EAAE,UAA+C;QAEzH,KAAI,MAAM,IAAI,IAAI,IAAI,CAAC,aAAa,CAAC,WAAW,EAChD,CAAC;YACG,IAAI,CAAC,GAAG,CAAC;gBACI,SAAS,EAAE,EAAE;gBACb,MAAM,EAAE,SAAS;gBACjB,WAAW,EAAE,EAAE;gBACf,kBAAkB,EAAE,IAAI,CAAC,aAAa,CAAC,kBAAkB,IAAI,OAAO,CAAC,kBAAkB;gBACvF,eAAe,EAAE,IAAI,CAAC,aAAa,CAAC,eAAe,IAAI,OAAO,CAAC,eAAe;gBAC9E,eAAe,EAAE,SAAS;aAC7B,EACD,gBAAgB,EAChB,UAAU,CAAE,CAAC;QAC1B,CAAC;IACL,CAAC;CACJ","sourcesContent":["import {LoggerEnricher, LoggerFilter, LoggerSink} from '../../interfaces';\nimport {MinLogLevelGetter} from '../../misc';\nimport {LoggerOptions, MessageLog} from '../../types';\n\n/**\n * Sink that is used as sub logger\n */\nexport class SubLoggerSink implements LoggerSink\n{\n //######################### public properties - implementation of LoggerSink #########################\n\n /**\n * @inheritdoc\n */\n public get enrichers(): LoggerEnricher[]\n {\n return this.loggerOptions.enrichers;\n }\n\n /**\n * @inheritdoc\n */\n public get filter(): LoggerFilter|undefined|null\n {\n return this.loggerOptions.filter;\n }\n\n /**\n * @inheritdoc\n */\n public get minimumLogLevel(): MinLogLevelGetter|undefined|null\n {\n return this.loggerOptions.minimumLogLevel;\n }\n\n //######################### constructor #########################\n constructor(protected loggerOptions: LoggerOptions,)\n {\n\n }\n\n //######################### public methods - implementation of LoggerSink #########################\n\n /**\n * @inheritdoc\n */\n public log(options: LoggerOptions, loggerProperties: Record<string, unknown>, messageLog: MessageLog<Record<string, unknown>>): void\n {\n for(const sink of this.loggerOptions.loggerSinks)\n {\n sink.log({\n enrichers: [],\n filter: undefined,\n loggerSinks: [],\n messageLengthLimit: this.loggerOptions.messageLengthLimit ?? options.messageLengthLimit,\n messageTemplate: this.loggerOptions.messageTemplate ?? options.messageTemplate,\n minimumLogLevel: undefined,\n },\n loggerProperties,\n messageLog,);\n }\n }\n}"]}
@@ -6,25 +6,16 @@ import { SubLoggerSink } from '../services';
6
6
  * Implementation of logger configuration
7
7
  */
8
8
  export class LoggerConfigurationImpl {
9
- //######################### protected fields #########################
10
- /**
11
- * Configuration for minimum log level
12
- */
13
- config;
14
- /**
15
- * Logger enricher types
16
- */
17
- loggerEnricherTypes = [];
18
- /**
19
- * Array of logger sinks configs
20
- */
21
- sinks = [];
22
- /**
23
- * Options that are currently configured
24
- */
25
- options;
26
9
  //######################### constructor #########################
27
10
  constructor(options = new LoggerOptions()) {
11
+ /**
12
+ * Logger enricher types
13
+ */
14
+ this.loggerEnricherTypes = [];
15
+ /**
16
+ * Array of logger sinks configs
17
+ */
18
+ this.sinks = [];
28
19
  this.options = options;
29
20
  }
30
21
  //######################### public methods - implementation of LoggerConfiguration #########################
@@ -1 +1 @@
1
- {"version":3,"file":"loggerConfiguration.js","sourceRoot":"","sources":["../../../../../src/modules/logger/types/loggerConfiguration.ts"],"names":[],"mappings":"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","sourcesContent":["import {isFunction, isPresent} from '@jscrpt/common';\n\nimport {LoggerConfiguration, LoggerEnricherType, LoggerFilter} from '../interfaces';\nimport {MinimumLevelConfig, WriteToConfig} from '../misc';\nimport {LoggerOptions} from './loggerOptions';\nimport {isLoggerSinkType} from '../decorators';\nimport {SubLoggerSink} from '../services';\n\n/**\n * Implementation of logger configuration\n */\nexport class LoggerConfigurationImpl implements LoggerConfiguration\n{\n //######################### protected fields #########################\n\n /**\n * Configuration for minimum log level\n */\n protected config: MinimumLevelConfig|undefined|null;\n\n /**\n * Logger enricher types\n */\n protected loggerEnricherTypes: LoggerEnricherType[] = [];\n\n /**\n * Array of logger sinks configs\n */\n protected sinks: WriteToConfig[] = [];\n\n /**\n * Options that are currently configured\n */\n protected options: LoggerOptions;\n\n //######################### constructor #########################\n constructor(options: LoggerOptions = new LoggerOptions())\n {\n this.options = options;\n }\n\n //######################### public methods - implementation of LoggerConfiguration #########################\n\n /**\n * @inheritdoc\n */\n public minimumLevel(config: MinimumLevelConfig): LoggerConfiguration\n {\n this.config = config;\n\n return this;\n }\n\n /**\n * @inheritdoc\n */\n public messageTemplate(template: string): LoggerConfiguration\n {\n this.options.messageTemplate = template;\n\n return this;\n }\n\n /**\n * @inheritdoc\n */\n public messageLengthLimit(limit: number|null|undefined): LoggerConfiguration\n {\n this.options.messageLengthLimit = limit;\n\n return this;\n }\n\n /**\n * @inheritdoc\n */\n public enrichWith(loggerEnricherType: LoggerEnricherType): LoggerConfiguration\n {\n this.loggerEnricherTypes.push(loggerEnricherType);\n\n return this;\n }\n\n /**\n * @inheritdoc\n */\n public filter(filter: LoggerFilter|null|undefined): LoggerConfiguration\n {\n this.options.filter = filter;\n\n return this;\n }\n\n /**\n * @inheritdoc\n */\n public writeTo(config: WriteToConfig): LoggerConfiguration\n {\n this.sinks.push(config);\n\n return this;\n }\n\n //######################### public methods #########################\n\n /**\n * Builds logger options from configuration\n */\n public buildOptions(): LoggerOptions\n {\n if(isPresent(this.config))\n {\n const config = this.config;\n\n if(isFunction(config))\n {\n const minLevelCfg = config();\n\n if(isFunction(minLevelCfg))\n {\n this.options.minimumLogLevel = minLevelCfg;\n }\n else\n {\n this.options.minimumLogLevel = () => minLevelCfg;\n }\n }\n else\n {\n this.options.minimumLogLevel = () => config;\n }\n }\n\n this.options.enrichers.push(...this.loggerEnricherTypes.map(type => new type()));\n\n this.options.loggerSinks.push(...this.sinks.map(config =>\n {\n if(isLoggerSinkType(config))\n {\n return new config();\n }\n else\n {\n const cfg = new LoggerConfigurationImpl(\n {\n enrichers: [],\n loggerSinks: [],\n filter: undefined,\n messageLengthLimit: undefined,\n messageTemplate: undefined,\n minimumLogLevel: undefined,\n });\n\n config(cfg);\n\n return new SubLoggerSink(cfg.buildOptions());\n }\n }));\n\n return this.options;\n }\n}"]}
1
+ {"version":3,"file":"loggerConfiguration.js","sourceRoot":"","sources":["../../../../../src/modules/logger/types/loggerConfiguration.ts"],"names":[],"mappings":"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","sourcesContent":["import {isFunction, isPresent} from '@jscrpt/common';\n\nimport {LoggerConfiguration, LoggerEnricherType, LoggerFilter} from '../interfaces';\nimport {MinimumLevelConfig, WriteToConfig} from '../misc';\nimport {LoggerOptions} from './loggerOptions';\nimport {isLoggerSinkType} from '../decorators';\nimport {SubLoggerSink} from '../services';\n\n/**\n * Implementation of logger configuration\n */\nexport class LoggerConfigurationImpl implements LoggerConfiguration\n{\n //######################### protected fields #########################\n\n /**\n * Configuration for minimum log level\n */\n protected config: MinimumLevelConfig|undefined|null;\n\n /**\n * Logger enricher types\n */\n protected loggerEnricherTypes: LoggerEnricherType[] = [];\n\n /**\n * Array of logger sinks configs\n */\n protected sinks: WriteToConfig[] = [];\n\n /**\n * Options that are currently configured\n */\n protected options: LoggerOptions;\n\n //######################### constructor #########################\n constructor(options: LoggerOptions = new LoggerOptions())\n {\n this.options = options;\n }\n\n //######################### public methods - implementation of LoggerConfiguration #########################\n\n /**\n * @inheritdoc\n */\n public minimumLevel(config: MinimumLevelConfig): LoggerConfiguration\n {\n this.config = config;\n\n return this;\n }\n\n /**\n * @inheritdoc\n */\n public messageTemplate(template: string): LoggerConfiguration\n {\n this.options.messageTemplate = template;\n\n return this;\n }\n\n /**\n * @inheritdoc\n */\n public messageLengthLimit(limit: number|null|undefined): LoggerConfiguration\n {\n this.options.messageLengthLimit = limit;\n\n return this;\n }\n\n /**\n * @inheritdoc\n */\n public enrichWith(loggerEnricherType: LoggerEnricherType): LoggerConfiguration\n {\n this.loggerEnricherTypes.push(loggerEnricherType);\n\n return this;\n }\n\n /**\n * @inheritdoc\n */\n public filter(filter: LoggerFilter|null|undefined): LoggerConfiguration\n {\n this.options.filter = filter;\n\n return this;\n }\n\n /**\n * @inheritdoc\n */\n public writeTo(config: WriteToConfig): LoggerConfiguration\n {\n this.sinks.push(config);\n\n return this;\n }\n\n //######################### public methods #########################\n\n /**\n * Builds logger options from configuration\n */\n public buildOptions(): LoggerOptions\n {\n if(isPresent(this.config))\n {\n const config = this.config;\n\n if(isFunction(config))\n {\n const minLevelCfg = config();\n\n if(isFunction(minLevelCfg))\n {\n this.options.minimumLogLevel = minLevelCfg;\n }\n else\n {\n this.options.minimumLogLevel = () => minLevelCfg;\n }\n }\n else\n {\n this.options.minimumLogLevel = () => config;\n }\n }\n\n this.options.enrichers.push(...this.loggerEnricherTypes.map(type => new type()));\n\n this.options.loggerSinks.push(...this.sinks.map(config =>\n {\n if(isLoggerSinkType(config))\n {\n return new config();\n }\n else\n {\n const cfg = new LoggerConfigurationImpl(\n {\n enrichers: [],\n loggerSinks: [],\n filter: undefined,\n messageLengthLimit: undefined,\n messageTemplate: undefined,\n minimumLogLevel: undefined,\n });\n\n config(cfg);\n\n return new SubLoggerSink(cfg.buildOptions());\n }\n }));\n\n return this.options;\n }\n}"]}
@@ -5,35 +5,37 @@ import * as i0 from "@angular/core";
5
5
  * Options for logger that are used during logging
6
6
  */
7
7
  export class LoggerOptions {
8
- //######################### public properties #########################
9
- /**
10
- * Minimal log level, that is used for logging, logs with lower log level are ignored
11
- */
12
- minimumLogLevel = () => LogLevel.Information;
13
- /**
14
- * Maximal allowed length of message, if it is exceeded it is trimmed
15
- */
16
- messageLengthLimit = 500;
17
- /**
18
- * Logger message template that is used for creating message log, message log itself is inside `messageLog` property
19
- */
20
- messageTemplate = '{{messageLog}}';
21
- /**
22
- * Array of enrichers that allows extending logger properties
23
- */
24
- enrichers = [];
25
- /**
26
- * Filter that filters out message logs
27
- */
28
- filter = undefined;
29
- /**
30
- * Array of logger sinks that do actual logging
31
- */
32
- loggerSinks = [];
33
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: LoggerOptions, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
34
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: LoggerOptions, providedIn: 'root' });
8
+ constructor() {
9
+ //######################### public properties #########################
10
+ /**
11
+ * Minimal log level, that is used for logging, logs with lower log level are ignored
12
+ */
13
+ this.minimumLogLevel = () => LogLevel.Information;
14
+ /**
15
+ * Maximal allowed length of message, if it is exceeded it is trimmed
16
+ */
17
+ this.messageLengthLimit = 500;
18
+ /**
19
+ * Logger message template that is used for creating message log, message log itself is inside `messageLog` property
20
+ */
21
+ this.messageTemplate = '{{messageLog}}';
22
+ /**
23
+ * Array of enrichers that allows extending logger properties
24
+ */
25
+ this.enrichers = [];
26
+ /**
27
+ * Filter that filters out message logs
28
+ */
29
+ this.filter = undefined;
30
+ /**
31
+ * Array of logger sinks that do actual logging
32
+ */
33
+ this.loggerSinks = [];
34
+ }
35
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: LoggerOptions, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
36
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: LoggerOptions, providedIn: 'root' }); }
35
37
  }
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: LoggerOptions, decorators: [{
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: LoggerOptions, decorators: [{
37
39
  type: Injectable,
38
40
  args: [{ providedIn: 'root' }]
39
41
  }] });
@@ -1 +1 @@
1
- {"version":3,"file":"loggerOptions.js","sourceRoot":"","sources":["../../../../../src/modules/logger/types/loggerOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AAIzC,OAAO,EAAC,QAAQ,EAAC,MAAM,iBAAiB,CAAC;;AAEzC;;GAEG;AAEH,MAAM,OAAO,aAAa;IAEtB,uEAAuE;IAEvE;;OAEG;IACI,eAAe,GAAqC,GAAG,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;IAEtF;;OAEG;IACI,kBAAkB,GAA0B,GAAG,CAAC;IAEvD;;OAEG;IACI,eAAe,GAA0B,gBAAgB,CAAC;IAEjE;;OAEG;IACI,SAAS,GAAqB,EAAE,CAAC;IAExC;;OAEG;IACI,MAAM,GAAgC,SAAS,CAAC;IAEvD;;OAEG;IACI,WAAW,GAAiB,EAAE,CAAC;uGAhC7B,aAAa;2GAAb,aAAa,cADD,MAAM;;2FAClB,aAAa;kBADzB,UAAU;mBAAC,EAAC,UAAU,EAAE,MAAM,EAAC","sourcesContent":["import {Injectable} from '@angular/core';\n\nimport {LoggerEnricher, LoggerFilter, LoggerSink} from '../interfaces';\nimport {MinLogLevelGetter} from '../misc';\nimport {LogLevel} from './logLevel.enum';\n\n/**\n * Options for logger that are used during logging\n */\n@Injectable({providedIn: 'root'})\nexport class LoggerOptions\n{\n //######################### public properties #########################\n\n /**\n * Minimal log level, that is used for logging, logs with lower log level are ignored\n */\n public minimumLogLevel: MinLogLevelGetter|undefined|null = () => LogLevel.Information;\n\n /**\n * Maximal allowed length of message, if it is exceeded it is trimmed\n */\n public messageLengthLimit: number|undefined|null = 500;\n\n /**\n * Logger message template that is used for creating message log, message log itself is inside `messageLog` property\n */\n public messageTemplate: string|undefined|null = '{{messageLog}}';\n\n /**\n * Array of enrichers that allows extending logger properties\n */\n public enrichers: LoggerEnricher[] = [];\n\n /**\n * Filter that filters out message logs\n */\n public filter: LoggerFilter|undefined|null = undefined;\n\n /**\n * Array of logger sinks that do actual logging\n */\n public loggerSinks: LoggerSink[] = [];\n}"]}
1
+ {"version":3,"file":"loggerOptions.js","sourceRoot":"","sources":["../../../../../src/modules/logger/types/loggerOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AAIzC,OAAO,EAAC,QAAQ,EAAC,MAAM,iBAAiB,CAAC;;AAEzC;;GAEG;AAEH,MAAM,OAAO,aAAa;IAD1B;QAGI,uEAAuE;QAEvE;;WAEG;QACI,oBAAe,GAAqC,GAAG,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;QAEtF;;WAEG;QACI,uBAAkB,GAA0B,GAAG,CAAC;QAEvD;;WAEG;QACI,oBAAe,GAA0B,gBAAgB,CAAC;QAEjE;;WAEG;QACI,cAAS,GAAqB,EAAE,CAAC;QAExC;;WAEG;QACI,WAAM,GAAgC,SAAS,CAAC;QAEvD;;WAEG;QACI,gBAAW,GAAiB,EAAE,CAAC;KACzC;8GAjCY,aAAa;kHAAb,aAAa,cADD,MAAM;;2FAClB,aAAa;kBADzB,UAAU;mBAAC,EAAC,UAAU,EAAE,MAAM,EAAC","sourcesContent":["import {Injectable} from '@angular/core';\n\nimport {LoggerEnricher, LoggerFilter, LoggerSink} from '../interfaces';\nimport {MinLogLevelGetter} from '../misc';\nimport {LogLevel} from './logLevel.enum';\n\n/**\n * Options for logger that are used during logging\n */\n@Injectable({providedIn: 'root'})\nexport class LoggerOptions\n{\n //######################### public properties #########################\n\n /**\n * Minimal log level, that is used for logging, logs with lower log level are ignored\n */\n public minimumLogLevel: MinLogLevelGetter|undefined|null = () => LogLevel.Information;\n\n /**\n * Maximal allowed length of message, if it is exceeded it is trimmed\n */\n public messageLengthLimit: number|undefined|null = 500;\n\n /**\n * Logger message template that is used for creating message log, message log itself is inside `messageLog` property\n */\n public messageTemplate: string|undefined|null = '{{messageLog}}';\n\n /**\n * Array of enrichers that allows extending logger properties\n */\n public enrichers: LoggerEnricher[] = [];\n\n /**\n * Filter that filters out message logs\n */\n public filter: LoggerFilter|undefined|null = undefined;\n\n /**\n * Array of logger sinks that do actual logging\n */\n public loggerSinks: LoggerSink[] = [];\n}"]}
@@ -3,24 +3,6 @@ import { formatString } from '@jscrpt/common';
3
3
  * Message log that contains all information that are used for displaying log
4
4
  */
5
5
  export class MessageLog {
6
- //######################### protected fields #########################
7
- /**
8
- * Datetime when was message created
9
- */
10
- now = new Date();
11
- //######################### public properties #########################
12
- /**
13
- * Message that is used as message template for log itself
14
- */
15
- message;
16
- /**
17
- * Log level of current message log
18
- */
19
- logLevel;
20
- /**
21
- * Properties that are "replaced" inside message
22
- */
23
- properties;
24
6
  /**
25
7
  * Gets timestamp as ISO string
26
8
  */
@@ -29,6 +11,11 @@ export class MessageLog {
29
11
  }
30
12
  //######################### constructor #########################
31
13
  constructor(message, logLevel, properties) {
14
+ //######################### protected fields #########################
15
+ /**
16
+ * Datetime when was message created
17
+ */
18
+ this.now = new Date();
32
19
  this.message = message;
33
20
  this.logLevel = logLevel;
34
21
  this.properties = properties;
@@ -1 +1 @@
1
- {"version":3,"file":"messageLog.js","sourceRoot":"","sources":["../../../../../src/modules/logger/types/messageLog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAI5C;;GAEG;AACH,MAAM,OAAO,UAAU;IAEnB,sEAAsE;IAEtE;;OAEG;IACO,GAAG,GAAS,IAAI,IAAI,EAAE,CAAC;IAEjC,uEAAuE;IAEvE;;OAEG;IACa,OAAO,CAAS;IAEhC;;OAEG;IACa,QAAQ,CAAW;IAEnC;;OAEG;IACa,UAAU,CAAc;IAExC;;OAEG;IACH,IAAW,SAAS;QAEhB,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;IAClC,CAAC;IAED,iEAAiE;IACjE,YAAY,OAAe,EAAE,QAAkB,EAAE,UAAuB;QAEpE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAED,oEAAoE;IAEpE;;;;OAIG;IACI,YAAY,CAAC,eAAuB,EAAE,gBAAyC;QAElF,MAAM,UAAU,GAAG,EAAC,GAAG,IAAI,CAAC,UAAU,EAAC,CAAC;QAExC,KAAI,MAAM,QAAQ,IAAI,gBAAgB,EACtC;YACI,uDAAuD;YACvD,IAAG,CAAC,CAAC,QAAQ,IAAI,UAAU,CAAC,EAC5B;gBACK,UAAsC,CAAC,QAAQ,CAAC,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;aAClF;SACJ;QAED,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAC1D,gBAAgB,CAAC,UAAU,GAAG,UAAU,CAAC;QAEzC,OAAO,YAAY,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC;IAC3D,CAAC;CACJ","sourcesContent":["import {formatString} from '@jscrpt/common';\n\nimport {LogLevel} from './logLevel.enum';\n\n/**\n * Message log that contains all information that are used for displaying log\n */\nexport class MessageLog<TProperties extends Record<string, unknown> = Record<string, unknown>>\n{\n //######################### protected fields #########################\n\n /**\n * Datetime when was message created\n */\n protected now: Date = new Date();\n\n //######################### public properties #########################\n\n /**\n * Message that is used as message template for log itself\n */\n public readonly message: string;\n\n /**\n * Log level of current message log\n */\n public readonly logLevel: LogLevel;\n\n /**\n * Properties that are \"replaced\" inside message\n */\n public readonly properties: TProperties;\n\n /**\n * Gets timestamp as ISO string\n */\n public get timestamp(): string\n {\n return this.now.toISOString();\n }\n\n //######################### constructor #########################\n constructor(message: string, logLevel: LogLevel, properties: TProperties)\n {\n this.message = message;\n this.logLevel = logLevel;\n this.properties = properties;\n }\n\n //######################### public methods #########################\n\n /**\n * Builds message that will be logged in logger sink\n * @param messageTemplate - Global message template for log\n * @param loggerProperties - Properties that are coming from logger itself\n */\n public buildMessage(messageTemplate: string, loggerProperties: Record<string, unknown>): string\n {\n const properties = {...this.properties};\n\n for(const property in loggerProperties)\n {\n //only add new properties, do not replace existing ones\n if(!(property in properties))\n {\n (properties as Record<string, unknown>)[property] = loggerProperties[property];\n }\n }\n\n const messageLog = formatString(this.message, properties);\n loggerProperties.messageLog = messageLog;\n \n return formatString(messageTemplate, loggerProperties);\n }\n}"]}
1
+ {"version":3,"file":"messageLog.js","sourceRoot":"","sources":["../../../../../src/modules/logger/types/messageLog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAI5C;;GAEG;AACH,MAAM,OAAO,UAAU;IA0BnB;;OAEG;IACH,IAAW,SAAS;QAEhB,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;IAClC,CAAC;IAED,iEAAiE;IACjE,YAAY,OAAe,EAAE,QAAkB,EAAE,UAAuB;QAjCxE,sEAAsE;QAEtE;;WAEG;QACO,QAAG,GAAS,IAAI,IAAI,EAAE,CAAC;QA8B7B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAED,oEAAoE;IAEpE;;;;OAIG;IACI,YAAY,CAAC,eAAuB,EAAE,gBAAyC;QAElF,MAAM,UAAU,GAAG,EAAC,GAAG,IAAI,CAAC,UAAU,EAAC,CAAC;QAExC,KAAI,MAAM,QAAQ,IAAI,gBAAgB,EACtC,CAAC;YACG,uDAAuD;YACvD,IAAG,CAAC,CAAC,QAAQ,IAAI,UAAU,CAAC,EAC5B,CAAC;gBACI,UAAsC,CAAC,QAAQ,CAAC,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;YACnF,CAAC;QACL,CAAC;QAED,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAC1D,gBAAgB,CAAC,UAAU,GAAG,UAAU,CAAC;QAEzC,OAAO,YAAY,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC;IAC3D,CAAC;CACJ","sourcesContent":["import {formatString} from '@jscrpt/common';\n\nimport {LogLevel} from './logLevel.enum';\n\n/**\n * Message log that contains all information that are used for displaying log\n */\nexport class MessageLog<TProperties extends Record<string, unknown> = Record<string, unknown>>\n{\n //######################### protected fields #########################\n\n /**\n * Datetime when was message created\n */\n protected now: Date = new Date();\n\n //######################### public properties #########################\n\n /**\n * Message that is used as message template for log itself\n */\n public readonly message: string;\n\n /**\n * Log level of current message log\n */\n public readonly logLevel: LogLevel;\n\n /**\n * Properties that are \"replaced\" inside message\n */\n public readonly properties: TProperties;\n\n /**\n * Gets timestamp as ISO string\n */\n public get timestamp(): string\n {\n return this.now.toISOString();\n }\n\n //######################### constructor #########################\n constructor(message: string, logLevel: LogLevel, properties: TProperties)\n {\n this.message = message;\n this.logLevel = logLevel;\n this.properties = properties;\n }\n\n //######################### public methods #########################\n\n /**\n * Builds message that will be logged in logger sink\n * @param messageTemplate - Global message template for log\n * @param loggerProperties - Properties that are coming from logger itself\n */\n public buildMessage(messageTemplate: string, loggerProperties: Record<string, unknown>): string\n {\n const properties = {...this.properties};\n\n for(const property in loggerProperties)\n {\n //only add new properties, do not replace existing ones\n if(!(property in properties))\n {\n (properties as Record<string, unknown>)[property] = loggerProperties[property];\n }\n }\n\n const messageLog = formatString(this.message, properties);\n loggerProperties.messageLog = messageLog;\n \n return formatString(messageTemplate, loggerProperties);\n }\n}"]}
@@ -16,30 +16,6 @@ const defaultCssClasses = {
16
16
  * Component used for displaying multibutton
17
17
  */
18
18
  export class MultiButtonComponent {
19
- _document;
20
- _element;
21
- _changeDetector;
22
- //######################### protected fields #########################
23
- /**
24
- * Used css classes within component
25
- */
26
- _usedCssClasses;
27
- //######################### public properties - template bindings #########################
28
- /**
29
- * Indication whether are sub buttons visible
30
- * @internal
31
- */
32
- subButtonsVisible = false;
33
- /**
34
- * Sub buttons div top offset
35
- * @internal
36
- */
37
- subButtonsOffset = 0;
38
- //######################### public properties - inputs #########################
39
- /**
40
- * Css class applied to main displayed element
41
- */
42
- cssClass = '';
43
19
  /**
44
20
  * Css classes used within component, allows to change specific class
45
21
  */
@@ -49,21 +25,41 @@ export class MultiButtonComponent {
49
25
  set cssClasses(classes) {
50
26
  this._usedCssClasses = extend({}, this._usedCssClasses, classes);
51
27
  }
52
- //######################### public properties - outputs #########################
53
- /**
54
- * Occurs when user clicks on button
55
- */
56
- click = new EventEmitter();
57
- //######################### public properties - children #########################
58
- /**
59
- * Template that is used for rendering sub buttons content
60
- */
61
- subButtonsContent;
62
28
  //######################### constructor #########################
63
29
  constructor(_document, _cssClasess, _element, _changeDetector) {
64
30
  this._document = _document;
65
31
  this._element = _element;
66
32
  this._changeDetector = _changeDetector;
33
+ //######################### public properties - template bindings #########################
34
+ /**
35
+ * Indication whether are sub buttons visible
36
+ * @internal
37
+ */
38
+ this.subButtonsVisible = false;
39
+ /**
40
+ * Sub buttons div top offset
41
+ * @internal
42
+ */
43
+ this.subButtonsOffset = 0;
44
+ //######################### public properties - inputs #########################
45
+ /**
46
+ * Css class applied to main displayed element
47
+ */
48
+ this.cssClass = '';
49
+ //######################### public properties - outputs #########################
50
+ /**
51
+ * Occurs when user clicks on button
52
+ */
53
+ this.click = new EventEmitter();
54
+ //######################### protected methods #########################
55
+ /**
56
+ * Handles click outside of multi button element
57
+ */
58
+ this._handleClickOutside = () => {
59
+ this.subButtonsVisible = false;
60
+ this._removeRegistration();
61
+ this._changeDetector.detectChanges();
62
+ };
67
63
  this._usedCssClasses = extend({}, defaultCssClasses, _cssClasess);
68
64
  }
69
65
  //######################### public methods - implementation of OnDestroy #########################
@@ -90,25 +86,16 @@ export class MultiButtonComponent {
90
86
  this._removeRegistration();
91
87
  }
92
88
  }
93
- //######################### protected methods #########################
94
- /**
95
- * Handles click outside of multi button element
96
- */
97
- _handleClickOutside = () => {
98
- this.subButtonsVisible = false;
99
- this._removeRegistration();
100
- this._changeDetector.detectChanges();
101
- };
102
89
  /**
103
90
  * Removes event registration
104
91
  */
105
92
  _removeRegistration() {
106
93
  this._document.removeEventListener('click', this._handleClickOutside);
107
94
  }
108
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: MultiButtonComponent, deps: [{ token: DOCUMENT }, { token: MULTI_BUTTON_CSS_CLASSES, optional: true }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
109
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.5", type: MultiButtonComponent, selector: "multi-button", inputs: { cssClass: "cssClass", cssClasses: "cssClasses" }, outputs: { click: "click" }, queries: [{ propertyName: "subButtonsContent", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: "<div [ngClass]=\"[cssClass, cssClasses?.mainButtonDiv]\">\r\n <div (click)=\"click.emit($event)\" [ngClass]=\"cssClasses?.mainButtonContentDiv\">\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n <span [ngClass]=\"cssClasses?.mainButtonSeparatorDiv\"></span>\r\n\r\n <div [ngClass]=\"cssClasses?.mainButtonClickAreaDiv\" (click)=\"showSubButtons($event)\">\r\n <div [ngClass]=\"cssClasses?.mainButtonMultiOptionDiv\"></div>\r\n </div>\r\n</div>\r\n\r\n<div [ngClass]=\"cssClasses?.subButtonsDiv\" *ngIf=\"subButtonsVisible\" [style.top.px]=\"subButtonsOffset\">\r\n <ng-container *ngTemplateOutlet=\"subButtonsContent\"></ng-container>\r\n</div>", styles: [":host\r\n{\r\n display: flex;\r\n position: relative;\r\n}\r\n\r\n.multi-option\r\n{\r\n align-self: center;\r\n text-align: center;\r\n flex: 1;\r\n min-width: 0;\r\n}\r\n\r\n.multi-button-content\r\n{\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n padding: 3px 8px;\r\n}\r\n\r\n.multi-option-separator\r\n{\r\n border-left-style: solid;\r\n border-left-width: 1px;\r\n margin-top: -1px;\r\n margin-bottom: -1px;\r\n}\r\n\r\n.multi-option-click\r\n{\r\n width: 1.6em;\r\n display: flex;\r\n flex-direction: row;\r\n}\r\n\r\n.sub-buttons\r\n{\r\n display: flex;\r\n flex-direction: column;\r\n position: absolute;\r\n min-width: 100%;\r\n padding: 4px 0;\r\n border-radius: 4px;\r\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"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
95
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: MultiButtonComponent, deps: [{ token: DOCUMENT }, { token: MULTI_BUTTON_CSS_CLASSES, optional: true }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
96
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: MultiButtonComponent, selector: "multi-button", inputs: { cssClass: "cssClass", cssClasses: "cssClasses" }, outputs: { click: "click" }, queries: [{ propertyName: "subButtonsContent", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: "<div [ngClass]=\"[cssClass, cssClasses?.mainButtonDiv]\">\r\n <div (click)=\"click.emit($event)\" [ngClass]=\"cssClasses?.mainButtonContentDiv\">\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n <span [ngClass]=\"cssClasses?.mainButtonSeparatorDiv\"></span>\r\n\r\n <div [ngClass]=\"cssClasses?.mainButtonClickAreaDiv\" (click)=\"showSubButtons($event)\">\r\n <div [ngClass]=\"cssClasses?.mainButtonMultiOptionDiv\"></div>\r\n </div>\r\n</div>\r\n\r\n<div [ngClass]=\"cssClasses?.subButtonsDiv\" *ngIf=\"subButtonsVisible\" [style.top.px]=\"subButtonsOffset\">\r\n <ng-container *ngTemplateOutlet=\"subButtonsContent\"></ng-container>\r\n</div>", styles: [":host\r\n{\r\n display: flex;\r\n position: relative;\r\n}\r\n\r\n.multi-option\r\n{\r\n align-self: center;\r\n text-align: center;\r\n flex: 1;\r\n min-width: 0;\r\n}\r\n\r\n.multi-button-content\r\n{\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n padding: 3px 8px;\r\n}\r\n\r\n.multi-option-separator\r\n{\r\n border-left-style: solid;\r\n border-left-width: 1px;\r\n margin-top: -1px;\r\n margin-bottom: -1px;\r\n}\r\n\r\n.multi-option-click\r\n{\r\n width: 1.6em;\r\n display: flex;\r\n flex-direction: row;\r\n}\r\n\r\n.sub-buttons\r\n{\r\n display: flex;\r\n flex-direction: column;\r\n position: absolute;\r\n min-width: 100%;\r\n padding: 4px 0;\r\n border-radius: 4px;\r\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"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
110
97
  }
111
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: MultiButtonComponent, decorators: [{
98
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: MultiButtonComponent, decorators: [{
112
99
  type: Component,
113
100
  args: [{ selector: 'multi-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"[cssClass, cssClasses?.mainButtonDiv]\">\r\n <div (click)=\"click.emit($event)\" [ngClass]=\"cssClasses?.mainButtonContentDiv\">\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n <span [ngClass]=\"cssClasses?.mainButtonSeparatorDiv\"></span>\r\n\r\n <div [ngClass]=\"cssClasses?.mainButtonClickAreaDiv\" (click)=\"showSubButtons($event)\">\r\n <div [ngClass]=\"cssClasses?.mainButtonMultiOptionDiv\"></div>\r\n </div>\r\n</div>\r\n\r\n<div [ngClass]=\"cssClasses?.subButtonsDiv\" *ngIf=\"subButtonsVisible\" [style.top.px]=\"subButtonsOffset\">\r\n <ng-container *ngTemplateOutlet=\"subButtonsContent\"></ng-container>\r\n</div>", styles: [":host\r\n{\r\n display: flex;\r\n position: relative;\r\n}\r\n\r\n.multi-option\r\n{\r\n align-self: center;\r\n text-align: center;\r\n flex: 1;\r\n min-width: 0;\r\n}\r\n\r\n.multi-button-content\r\n{\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n padding: 3px 8px;\r\n}\r\n\r\n.multi-option-separator\r\n{\r\n border-left-style: solid;\r\n border-left-width: 1px;\r\n margin-top: -1px;\r\n margin-bottom: -1px;\r\n}\r\n\r\n.multi-option-click\r\n{\r\n width: 1.6em;\r\n display: flex;\r\n flex-direction: row;\r\n}\r\n\r\n.sub-buttons\r\n{\r\n display: flex;\r\n flex-direction: column;\r\n position: absolute;\r\n min-width: 100%;\r\n padding: 4px 0;\r\n border-radius: 4px;\r\n}"] }]
114
101
  }], ctorParameters: () => [{ type: Document, decorators: [{
@@ -1 +1 @@
1
- {"version":3,"file":"multiButton.component.js","sourceRoot":"","sources":["../../../../../../src/modules/multiButton/components/multiButton/multiButton.component.ts","../../../../../../src/modules/multiButton/components/multiButton/multiButton.component.html"],"names":[],"mappings":"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","sourcesContent":["import {Component, ChangeDetectionStrategy, Input, EventEmitter, Output, ContentChild, TemplateRef, Inject, OnDestroy, ChangeDetectorRef, Optional, ElementRef} from '@angular/core';\nimport {DOCUMENT} from '@angular/common';\nimport {extend} from '@jscrpt/common';\n\nimport {MultiButtonCssClasses} from './multiButton.interface';\nimport {MULTI_BUTTON_CSS_CLASSES} from '../../misc/tokens';\n\nconst defaultCssClasses: MultiButtonCssClasses =\n{\n mainButtonDiv: 'flex-row',\n mainButtonContentDiv: 'multi-button-content',\n mainButtonSeparatorDiv: 'fa multi-option-separator',\n mainButtonClickAreaDiv: 'multi-option-click',\n mainButtonMultiOptionDiv: 'multi-option fa fa-angle-down',\n subButtonsDiv: 'sub-buttons'\n};\n\n/**\n * Component used for displaying multibutton\n */\n@Component(\n{\n selector: 'multi-button',\n templateUrl: 'multiButton.component.html',\n styleUrls: ['multiButton.component.css'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class MultiButtonComponent implements OnDestroy\n{\n //######################### protected fields #########################\n\n /**\n * Used css classes within component\n */\n protected _usedCssClasses: MultiButtonCssClasses;\n\n //######################### public properties - template bindings #########################\n\n /**\n * Indication whether are sub buttons visible\n * @internal\n */\n public subButtonsVisible: boolean = false;\n\n /**\n * Sub buttons div top offset\n * @internal\n */\n public subButtonsOffset: number = 0;\n\n //######################### public properties - inputs #########################\n\n /**\n * Css class applied to main displayed element\n */\n @Input()\n public cssClass: string = '';\n\n /**\n * Css classes used within component, allows to change specific class\n */\n @Input()\n public get cssClasses(): MultiButtonCssClasses\n {\n return this._usedCssClasses;\n }\n public set cssClasses(classes: MultiButtonCssClasses)\n {\n this._usedCssClasses = extend({}, this._usedCssClasses, classes);\n }\n\n //######################### public properties - outputs #########################\n\n /**\n * Occurs when user clicks on button\n */\n @Output()\n public click: EventEmitter<MouseEvent> = new EventEmitter<MouseEvent>();\n\n //######################### public properties - children #########################\n\n /**\n * Template that is used for rendering sub buttons content\n */\n @ContentChild(TemplateRef)\n public subButtonsContent: TemplateRef<void>;\n\n //######################### constructor #########################\n constructor(@Inject(DOCUMENT) protected _document: Document,\n @Inject(MULTI_BUTTON_CSS_CLASSES) @Optional() _cssClasess: MultiButtonCssClasses,\n protected _element: ElementRef<HTMLElement>,\n protected _changeDetector: ChangeDetectorRef)\n {\n this._usedCssClasses = extend({}, defaultCssClasses, _cssClasess);\n }\n\n //######################### public methods - implementation of OnDestroy #########################\n \n /**\n * Called when component is destroyed\n */\n public ngOnDestroy(): void\n {\n this._removeRegistration();\n }\n\n //######################### public methods - template bindings #########################\n\n /**\n * Method called when sub buttons should be shown\n */\n public showSubButtons(event: MouseEvent): void\n {\n event.preventDefault();\n event.stopPropagation();\n\n this.subButtonsVisible = !this.subButtonsVisible;\n this.subButtonsOffset = this._element.nativeElement.clientHeight + 2;\n\n if(this.subButtonsVisible)\n {\n this._document.addEventListener('click', this._handleClickOutside);\n }\n //unregister handle click outside\n else\n {\n this._removeRegistration();\n }\n }\n\n //######################### protected methods #########################\n\n /**\n * Handles click outside of multi button element\n */\n protected _handleClickOutside = () =>\n {\n this.subButtonsVisible = false;\n this._removeRegistration();\n this._changeDetector.detectChanges();\n }\n\n /**\n * Removes event registration\n */\n protected _removeRegistration(): void\n {\n this._document.removeEventListener('click', this._handleClickOutside);\n }\n}","<div [ngClass]=\"[cssClass, cssClasses?.mainButtonDiv]\">\r\n <div (click)=\"click.emit($event)\" [ngClass]=\"cssClasses?.mainButtonContentDiv\">\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n <span [ngClass]=\"cssClasses?.mainButtonSeparatorDiv\"></span>\r\n\r\n <div [ngClass]=\"cssClasses?.mainButtonClickAreaDiv\" (click)=\"showSubButtons($event)\">\r\n <div [ngClass]=\"cssClasses?.mainButtonMultiOptionDiv\"></div>\r\n </div>\r\n</div>\r\n\r\n<div [ngClass]=\"cssClasses?.subButtonsDiv\" *ngIf=\"subButtonsVisible\" [style.top.px]=\"subButtonsOffset\">\r\n <ng-container *ngTemplateOutlet=\"subButtonsContent\"></ng-container>\r\n</div>"]}
1
+ {"version":3,"file":"multiButton.component.js","sourceRoot":"","sources":["../../../../../../src/modules/multiButton/components/multiButton/multiButton.component.ts","../../../../../../src/modules/multiButton/components/multiButton/multiButton.component.html"],"names":[],"mappings":"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","sourcesContent":["import {Component, ChangeDetectionStrategy, Input, EventEmitter, Output, ContentChild, TemplateRef, Inject, OnDestroy, ChangeDetectorRef, Optional, ElementRef} from '@angular/core';\nimport {DOCUMENT} from '@angular/common';\nimport {extend} from '@jscrpt/common';\n\nimport {MultiButtonCssClasses} from './multiButton.interface';\nimport {MULTI_BUTTON_CSS_CLASSES} from '../../misc/tokens';\n\nconst defaultCssClasses: MultiButtonCssClasses =\n{\n mainButtonDiv: 'flex-row',\n mainButtonContentDiv: 'multi-button-content',\n mainButtonSeparatorDiv: 'fa multi-option-separator',\n mainButtonClickAreaDiv: 'multi-option-click',\n mainButtonMultiOptionDiv: 'multi-option fa fa-angle-down',\n subButtonsDiv: 'sub-buttons'\n};\n\n/**\n * Component used for displaying multibutton\n */\n@Component(\n{\n selector: 'multi-button',\n templateUrl: 'multiButton.component.html',\n styleUrls: ['multiButton.component.css'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class MultiButtonComponent implements OnDestroy\n{\n //######################### protected fields #########################\n\n /**\n * Used css classes within component\n */\n protected _usedCssClasses: MultiButtonCssClasses;\n\n //######################### public properties - template bindings #########################\n\n /**\n * Indication whether are sub buttons visible\n * @internal\n */\n public subButtonsVisible: boolean = false;\n\n /**\n * Sub buttons div top offset\n * @internal\n */\n public subButtonsOffset: number = 0;\n\n //######################### public properties - inputs #########################\n\n /**\n * Css class applied to main displayed element\n */\n @Input()\n public cssClass: string = '';\n\n /**\n * Css classes used within component, allows to change specific class\n */\n @Input()\n public get cssClasses(): MultiButtonCssClasses\n {\n return this._usedCssClasses;\n }\n public set cssClasses(classes: MultiButtonCssClasses)\n {\n this._usedCssClasses = extend({}, this._usedCssClasses, classes);\n }\n\n //######################### public properties - outputs #########################\n\n /**\n * Occurs when user clicks on button\n */\n @Output()\n public click: EventEmitter<MouseEvent> = new EventEmitter<MouseEvent>();\n\n //######################### public properties - children #########################\n\n /**\n * Template that is used for rendering sub buttons content\n */\n @ContentChild(TemplateRef)\n public subButtonsContent: TemplateRef<void>;\n\n //######################### constructor #########################\n constructor(@Inject(DOCUMENT) protected _document: Document,\n @Inject(MULTI_BUTTON_CSS_CLASSES) @Optional() _cssClasess: MultiButtonCssClasses,\n protected _element: ElementRef<HTMLElement>,\n protected _changeDetector: ChangeDetectorRef)\n {\n this._usedCssClasses = extend({}, defaultCssClasses, _cssClasess);\n }\n\n //######################### public methods - implementation of OnDestroy #########################\n \n /**\n * Called when component is destroyed\n */\n public ngOnDestroy(): void\n {\n this._removeRegistration();\n }\n\n //######################### public methods - template bindings #########################\n\n /**\n * Method called when sub buttons should be shown\n */\n public showSubButtons(event: MouseEvent): void\n {\n event.preventDefault();\n event.stopPropagation();\n\n this.subButtonsVisible = !this.subButtonsVisible;\n this.subButtonsOffset = this._element.nativeElement.clientHeight + 2;\n\n if(this.subButtonsVisible)\n {\n this._document.addEventListener('click', this._handleClickOutside);\n }\n //unregister handle click outside\n else\n {\n this._removeRegistration();\n }\n }\n\n //######################### protected methods #########################\n\n /**\n * Handles click outside of multi button element\n */\n protected _handleClickOutside = () =>\n {\n this.subButtonsVisible = false;\n this._removeRegistration();\n this._changeDetector.detectChanges();\n }\n\n /**\n * Removes event registration\n */\n protected _removeRegistration(): void\n {\n this._document.removeEventListener('click', this._handleClickOutside);\n }\n}","<div [ngClass]=\"[cssClass, cssClasses?.mainButtonDiv]\">\r\n <div (click)=\"click.emit($event)\" [ngClass]=\"cssClasses?.mainButtonContentDiv\">\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n <span [ngClass]=\"cssClasses?.mainButtonSeparatorDiv\"></span>\r\n\r\n <div [ngClass]=\"cssClasses?.mainButtonClickAreaDiv\" (click)=\"showSubButtons($event)\">\r\n <div [ngClass]=\"cssClasses?.mainButtonMultiOptionDiv\"></div>\r\n </div>\r\n</div>\r\n\r\n<div [ngClass]=\"cssClasses?.subButtonsDiv\" *ngIf=\"subButtonsVisible\" [style.top.px]=\"subButtonsOffset\">\r\n <ng-container *ngTemplateOutlet=\"subButtonsContent\"></ng-container>\r\n</div>"]}
@@ -6,11 +6,11 @@ import * as i0 from "@angular/core";
6
6
  * Module containing components for displaying multi button
7
7
  */
8
8
  export class MultiButtonModule {
9
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: MultiButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.5", ngImport: i0, type: MultiButtonModule, declarations: [MultiButtonComponent], imports: [CommonModule], exports: [MultiButtonComponent] });
11
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: MultiButtonModule, imports: [CommonModule] });
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: MultiButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.1", ngImport: i0, type: MultiButtonModule, declarations: [MultiButtonComponent], imports: [CommonModule], exports: [MultiButtonComponent] }); }
11
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: MultiButtonModule, imports: [CommonModule] }); }
12
12
  }
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: MultiButtonModule, decorators: [{
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: MultiButtonModule, decorators: [{
14
14
  type: NgModule,
15
15
  args: [{
16
16
  imports: [
@@ -1 +1 @@
1
- {"version":3,"file":"multiButton.module.js","sourceRoot":"","sources":["../../../../../src/modules/multiButton/modules/multiButton.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AACvC,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAC,oBAAoB,EAAC,MAAM,iDAAiD,CAAC;;AAErF;;GAEG;AAgBH,MAAM,OAAO,iBAAiB;uGAAjB,iBAAiB;wGAAjB,iBAAiB,iBAPtB,oBAAoB,aAJpB,YAAY,aAQZ,oBAAoB;wGAGf,iBAAiB,YAXtB,YAAY;;2FAWP,iBAAiB;kBAf7B,QAAQ;mBACT;oBACI,OAAO,EACP;wBACI,YAAY;qBACf;oBACD,YAAY,EACZ;wBACI,oBAAoB;qBACvB;oBACD,OAAO,EACP;wBACI,oBAAoB;qBACvB;iBACJ","sourcesContent":["import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\n\nimport {MultiButtonComponent} from '../components/multiButton/multiButton.component';\n\n/**\n * Module containing components for displaying multi button\n */\n@NgModule(\n{\n imports:\n [\n CommonModule\n ],\n declarations:\n [\n MultiButtonComponent\n ],\n exports:\n [\n MultiButtonComponent\n ]\n})\nexport class MultiButtonModule\n{\n}"]}
1
+ {"version":3,"file":"multiButton.module.js","sourceRoot":"","sources":["../../../../../src/modules/multiButton/modules/multiButton.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AACvC,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAC,oBAAoB,EAAC,MAAM,iDAAiD,CAAC;;AAErF;;GAEG;AAgBH,MAAM,OAAO,iBAAiB;8GAAjB,iBAAiB;+GAAjB,iBAAiB,iBAPtB,oBAAoB,aAJpB,YAAY,aAQZ,oBAAoB;+GAGf,iBAAiB,YAXtB,YAAY;;2FAWP,iBAAiB;kBAf7B,QAAQ;mBACT;oBACI,OAAO,EACP;wBACI,YAAY;qBACf;oBACD,YAAY,EACZ;wBACI,oBAAoB;qBACvB;oBACD,OAAO,EACP;wBACI,oBAAoB;qBACvB;iBACJ","sourcesContent":["import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\n\nimport {MultiButtonComponent} from '../components/multiButton/multiButton.component';\n\n/**\n * Module containing components for displaying multi button\n */\n@NgModule(\n{\n imports:\n [\n CommonModule\n ],\n declarations:\n [\n MultiButtonComponent\n ],\n exports:\n [\n MultiButtonComponent\n ]\n})\nexport class MultiButtonModule\n{\n}"]}
@@ -8,24 +8,6 @@ import * as i3 from "../../../../pipes/localize/localize.pipe";
8
8
  * Component that is used for displaying global progress indicator
9
9
  */
10
10
  export class ProgressIndicatorComponent {
11
- _service;
12
- _changeDetector;
13
- //######################### private fields #########################
14
- /**
15
- * Subscription for changes in ProgressIndicatorService
16
- */
17
- _subscription;
18
- //######################### public properties - template bindings #########################
19
- /**
20
- * Applied css classes
21
- * @internal
22
- */
23
- appliedClass = { 'progress-indicator': true };
24
- /**
25
- * Array of messages that should be displayed
26
- * @internal
27
- */
28
- messages;
29
11
  //######################### public properties - inputs #########################
30
12
  /**
31
13
  * Sets css classes that will be applied to indicator
@@ -46,6 +28,12 @@ export class ProgressIndicatorComponent {
46
28
  constructor(_service, _changeDetector) {
47
29
  this._service = _service;
48
30
  this._changeDetector = _changeDetector;
31
+ //######################### public properties - template bindings #########################
32
+ /**
33
+ * Applied css classes
34
+ * @internal
35
+ */
36
+ this.appliedClass = { 'progress-indicator': true };
49
37
  this.running = this._service.running[DEFAULT_PROGRESS_NAME];
50
38
  this.messages = this._service.messages[DEFAULT_PROGRESS_NAME] || [];
51
39
  this._subscription = this._service.stateChange.subscribe(name => {
@@ -66,10 +54,10 @@ export class ProgressIndicatorComponent {
66
54
  this._subscription = null;
67
55
  }
68
56
  }
69
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: ProgressIndicatorComponent, deps: [{ token: i1.ProgressIndicatorService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
70
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.5", 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.LocalizeSAPipe, name: "localize" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
57
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ProgressIndicatorComponent, deps: [{ token: i1.ProgressIndicatorService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
58
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", 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.LocalizeSAPipe, name: "localize" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
71
59
  }
72
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: ProgressIndicatorComponent, decorators: [{
60
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ProgressIndicatorComponent, decorators: [{
73
61
  type: Component,
74
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}"] }]
75
63
  }], ctorParameters: () => [{ type: i1.ProgressIndicatorService }, { type: i0.ChangeDetectorRef }], propDecorators: { cssClass: [{
@@ -1 +1 @@
1
- {"version":3,"file":"progressIndicator.component.js","sourceRoot":"","sources":["../../../../../../src/modules/progressIndicator/components/progressIndicator/progressIndicator.component.ts","../../../../../../src/modules/progressIndicator/components/progressIndicator/progressIndicator.component.html"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAE,KAAK,EAAa,uBAAuB,EAAE,iBAAiB,EAAC,MAAM,eAAe,CAAC;AAGtG,OAAO,EAAC,wBAAwB,EAAE,qBAAqB,EAAC,MAAM,0CAA0C,CAAC;;;;;AAEzG;;GAEG;AAQH,MAAM,OAAO,0BAA0B;IA+Cf;IACA;IA9CpB,oEAAoE;IAEpE;;OAEG;IACK,aAAa,CAAoB;IAEzC,2FAA2F;IAE3F;;;OAGG;IACI,YAAY,GAA6B,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC;IAE/E;;;OAGG;IACI,QAAQ,CAAW;IAE1B,gFAAgF;IAEhF;;OAEG;IACH,IACW,QAAQ,CAAC,QAAgB;QAEhC,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;QACnC,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC;IACzC,CAAC;IAED,wEAAwE;IAExE;;OAEG;IACH,IAAY,OAAO,CAAC,OAAgB;QAEhC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC;IAC3C,CAAC;IAED,iEAAiE;IACjE,YAAoB,QAAkC,EAClC,eAAkC;QADlC,aAAQ,GAAR,QAAQ,CAA0B;QAClC,oBAAe,GAAf,eAAe,CAAmB;QAElD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAC5D,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,qBAAqB,CAAC,IAAI,EAAE,CAAC;QAEpE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;YAE5D,IAAG,IAAI,IAAI,qBAAqB,EAChC;gBACI,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;gBAC5D,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,qBAAqB,CAAC,IAAI,EAAE,CAAC;gBAEpE,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC;aACxC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,kGAAkG;IAElG;;OAEG;IACI,WAAW;QAEd,IAAG,IAAI,CAAC,aAAa,EACrB;YACI,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;YACjC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;SAC7B;IACL,CAAC;uGA7EQ,0BAA0B;2FAA1B,0BAA0B,4FCfvC,qTAMM;;2FDSO,0BAA0B;kBAPtC,SAAS;+BAEI,oBAAoB,mBAGb,uBAAuB,CAAC,MAAM;6HA+BpC,QAAQ;sBADlB,KAAK","sourcesContent":["import {Component, Input, OnDestroy, ChangeDetectionStrategy, ChangeDetectorRef} from '@angular/core';\nimport {Subscription} from 'rxjs';\n\nimport {ProgressIndicatorService, DEFAULT_PROGRESS_NAME} from '../../services/progressIndicator.service';\n\n/**\n * Component that is used for displaying global progress indicator\n */\n@Component(\n{\n selector: 'progress-indicator',\n templateUrl: 'progressIndicator.component.html',\n styleUrls: ['progressIndicator.component.css'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ProgressIndicatorComponent implements OnDestroy\n{\n //######################### private fields #########################\n \n /**\n * Subscription for changes in ProgressIndicatorService\n */\n private _subscription: Subscription|null;\n \n //######################### public properties - template bindings #########################\n\n /**\n * Applied css classes\n * @internal\n */\n public appliedClass: {[key: string]: boolean} = { 'progress-indicator': true };\n\n /**\n * Array of messages that should be displayed\n * @internal\n */\n public messages: string[];\n\n //######################### public properties - inputs #########################\n\n /**\n * Sets css classes that will be applied to indicator\n */\n @Input()\n public set cssClass(cssClass: string)\n {\n this.appliedClass = {};\n this.appliedClass[cssClass] = true;\n this._changeDetector.detectChanges();\n }\n\n //######################### private properties #########################\n \n /**\n * Sets indication that progress indicator is running\n */\n private set running(running: boolean)\n {\n this.appliedClass['running'] = running;\n }\n\n //######################### constructor #########################\n constructor(private _service: ProgressIndicatorService,\n private _changeDetector: ChangeDetectorRef)\n {\n this.running = this._service.running[DEFAULT_PROGRESS_NAME];\n this.messages = this._service.messages[DEFAULT_PROGRESS_NAME] || [];\n\n this._subscription = this._service.stateChange.subscribe(name => \n {\n if(name == DEFAULT_PROGRESS_NAME)\n {\n this.running = this._service.running[DEFAULT_PROGRESS_NAME];\n this.messages = this._service.messages[DEFAULT_PROGRESS_NAME] || [];\n\n this._changeDetector.detectChanges();\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 if(this._subscription)\n {\n this._subscription.unsubscribe();\n this._subscription = null;\n }\n }\n}\n","<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>"]}
1
+ {"version":3,"file":"progressIndicator.component.js","sourceRoot":"","sources":["../../../../../../src/modules/progressIndicator/components/progressIndicator/progressIndicator.component.ts","../../../../../../src/modules/progressIndicator/components/progressIndicator/progressIndicator.component.html"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAE,KAAK,EAAa,uBAAuB,EAAE,iBAAiB,EAAC,MAAM,eAAe,CAAC;AAGtG,OAAO,EAAC,wBAAwB,EAAE,qBAAqB,EAAC,MAAM,0CAA0C,CAAC;;;;;AAEzG;;GAEG;AAQH,MAAM,OAAO,0BAA0B;IAuBnC,gFAAgF;IAEhF;;OAEG;IACH,IACW,QAAQ,CAAC,QAAgB;QAEhC,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;QACnC,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC;IACzC,CAAC;IAED,wEAAwE;IAExE;;OAEG;IACH,IAAY,OAAO,CAAC,OAAgB;QAEhC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC;IAC3C,CAAC;IAED,iEAAiE;IACjE,YAAoB,QAAkC,EAClC,eAAkC;QADlC,aAAQ,GAAR,QAAQ,CAA0B;QAClC,oBAAe,GAAf,eAAe,CAAmB;QAvCtD,2FAA2F;QAE3F;;;WAGG;QACI,iBAAY,GAA6B,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC;QAmC3E,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAC5D,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,qBAAqB,CAAC,IAAI,EAAE,CAAC;QAEpE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;YAE5D,IAAG,IAAI,IAAI,qBAAqB,EAChC,CAAC;gBACG,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;gBAC5D,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,qBAAqB,CAAC,IAAI,EAAE,CAAC;gBAEpE,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC;YACzC,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,kGAAkG;IAElG;;OAEG;IACI,WAAW;QAEd,IAAG,IAAI,CAAC,aAAa,EACrB,CAAC;YACG,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;YACjC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC9B,CAAC;IACL,CAAC;8GA7EQ,0BAA0B;kGAA1B,0BAA0B,4FCfvC,qTAMM;;2FDSO,0BAA0B;kBAPtC,SAAS;+BAEI,oBAAoB,mBAGb,uBAAuB,CAAC,MAAM;6HA+BpC,QAAQ;sBADlB,KAAK","sourcesContent":["import {Component, Input, OnDestroy, ChangeDetectionStrategy, ChangeDetectorRef} from '@angular/core';\nimport {Subscription} from 'rxjs';\n\nimport {ProgressIndicatorService, DEFAULT_PROGRESS_NAME} from '../../services/progressIndicator.service';\n\n/**\n * Component that is used for displaying global progress indicator\n */\n@Component(\n{\n selector: 'progress-indicator',\n templateUrl: 'progressIndicator.component.html',\n styleUrls: ['progressIndicator.component.css'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ProgressIndicatorComponent implements OnDestroy\n{\n //######################### private fields #########################\n \n /**\n * Subscription for changes in ProgressIndicatorService\n */\n private _subscription: Subscription|null;\n \n //######################### public properties - template bindings #########################\n\n /**\n * Applied css classes\n * @internal\n */\n public appliedClass: {[key: string]: boolean} = { 'progress-indicator': true };\n\n /**\n * Array of messages that should be displayed\n * @internal\n */\n public messages: string[];\n\n //######################### public properties - inputs #########################\n\n /**\n * Sets css classes that will be applied to indicator\n */\n @Input()\n public set cssClass(cssClass: string)\n {\n this.appliedClass = {};\n this.appliedClass[cssClass] = true;\n this._changeDetector.detectChanges();\n }\n\n //######################### private properties #########################\n \n /**\n * Sets indication that progress indicator is running\n */\n private set running(running: boolean)\n {\n this.appliedClass['running'] = running;\n }\n\n //######################### constructor #########################\n constructor(private _service: ProgressIndicatorService,\n private _changeDetector: ChangeDetectorRef)\n {\n this.running = this._service.running[DEFAULT_PROGRESS_NAME];\n this.messages = this._service.messages[DEFAULT_PROGRESS_NAME] || [];\n\n this._subscription = this._service.stateChange.subscribe(name => \n {\n if(name == DEFAULT_PROGRESS_NAME)\n {\n this.running = this._service.running[DEFAULT_PROGRESS_NAME];\n this.messages = this._service.messages[DEFAULT_PROGRESS_NAME] || [];\n\n this._changeDetector.detectChanges();\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 if(this._subscription)\n {\n this._subscription.unsubscribe();\n this._subscription = null;\n }\n }\n}\n","<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>"]}