@anglr/common 18.2.0 → 19.0.0-beta.20231109102631

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 (213) hide show
  1. package/changelog.md +18 -0
  2. package/es2022/floating-ui/src/services/floatingUiDomPosition.service.js +6 -7
  3. package/es2022/floating-ui/src/services/floatingUiDomPosition.service.js.map +1 -1
  4. package/es2022/forms/src/components/defaultValidationErrors/defaultValidationErrors.component.js +5 -6
  5. package/es2022/forms/src/components/defaultValidationErrors/defaultValidationErrors.component.js.map +1 -1
  6. package/es2022/forms/src/components/defaultValidationErrorsContainer/defaultValidationErrorsContainer.component.js +5 -6
  7. package/es2022/forms/src/components/defaultValidationErrorsContainer/defaultValidationErrorsContainer.component.js.map +1 -1
  8. package/es2022/forms/src/components/reservedSpaceValidationErrorsContainer/reservedSpaceValidationErrorsContainer.component.js +4 -5
  9. package/es2022/forms/src/components/reservedSpaceValidationErrorsContainer/reservedSpaceValidationErrorsContainer.component.js.map +1 -1
  10. package/es2022/forms/src/directives/groupHasError/groupHasError.directive.js +5 -6
  11. package/es2022/forms/src/directives/groupHasError/groupHasError.directive.js.map +1 -1
  12. package/es2022/forms/src/directives/groupHasErrorContainer/groupHasErrorContainer.directive.js +4 -5
  13. package/es2022/forms/src/directives/groupHasErrorContainer/groupHasErrorContainer.directive.js.map +1 -1
  14. package/es2022/forms/src/directives/hasError/hasError.directive.js +6 -7
  15. package/es2022/forms/src/directives/hasError/hasError.directive.js.map +1 -1
  16. package/es2022/forms/src/directives/numberInput/maxValueNumberValidator.directive.js +6 -7
  17. package/es2022/forms/src/directives/numberInput/maxValueNumberValidator.directive.js.map +1 -1
  18. package/es2022/forms/src/directives/numberInput/minValueNumberValidator.directive.js +6 -7
  19. package/es2022/forms/src/directives/numberInput/minValueNumberValidator.directive.js.map +1 -1
  20. package/es2022/forms/src/directives/numberInput/numberInputControlValueAccessor.directive.js +5 -6
  21. package/es2022/forms/src/directives/numberInput/numberInputControlValueAccessor.directive.js.map +1 -1
  22. package/es2022/forms/src/directives/numberInput/numberInputValidator.directive.js +4 -5
  23. package/es2022/forms/src/directives/numberInput/numberInputValidator.directive.js.map +1 -1
  24. package/es2022/forms/src/directives/requiredClass/requiredClass.directive.js +6 -7
  25. package/es2022/forms/src/directives/requiredClass/requiredClass.directive.js.map +1 -1
  26. package/es2022/forms/src/directives/validationErrorsContainer/validationErrorsContainer.directive.js +6 -7
  27. package/es2022/forms/src/directives/validationErrorsContainer/validationErrorsContainer.directive.js.map +1 -1
  28. package/es2022/forms/src/modules/errorMessage/components/groupErrors/groupErrors.component.js +6 -7
  29. package/es2022/forms/src/modules/errorMessage/components/groupErrors/groupErrors.component.js.map +1 -1
  30. package/es2022/forms/src/modules/errorMessage/directives/errorMessage/errorMessage.directive.js +6 -7
  31. package/es2022/forms/src/modules/errorMessage/directives/errorMessage/errorMessage.directive.js.map +1 -1
  32. package/es2022/forms/src/modules/errorMessage/directives/groupErrorsTemplate/groupErrorsTemplate.directive.js +5 -6
  33. package/es2022/forms/src/modules/errorMessage/directives/groupErrorsTemplate/groupErrorsTemplate.directive.js.map +1 -1
  34. package/es2022/forms/src/modules/errorMessage/modules/errorMessage.module.js +5 -6
  35. package/es2022/forms/src/modules/errorMessage/modules/errorMessage.module.js.map +1 -1
  36. package/es2022/forms/src/modules/errorMessage/pipes/withErrorMessage/withErrorMessage.pipe.js +6 -7
  37. package/es2022/forms/src/modules/errorMessage/pipes/withErrorMessage/withErrorMessage.pipe.js.map +1 -1
  38. package/es2022/forms/src/modules/formPipes/modules/formPipes.module.js +5 -6
  39. package/es2022/forms/src/modules/formPipes/modules/formPipes.module.js.map +1 -1
  40. package/es2022/forms/src/modules/formPipes/pipes/asFormArray/asFormArray.pipe.js +6 -7
  41. package/es2022/forms/src/modules/formPipes/pipes/asFormArray/asFormArray.pipe.js.map +1 -1
  42. package/es2022/forms/src/modules/formPipes/pipes/asFormControl/asFormControl.pipe.js +6 -7
  43. package/es2022/forms/src/modules/formPipes/pipes/asFormControl/asFormControl.pipe.js.map +1 -1
  44. package/es2022/forms/src/modules/formPipes/pipes/asFormGroup/asFormGroup.pipe.js +6 -7
  45. package/es2022/forms/src/modules/formPipes/pipes/asFormGroup/asFormGroup.pipe.js.map +1 -1
  46. package/es2022/forms/src/modules/formPipes/pipes/getControl/getControl.pipe.js +4 -5
  47. package/es2022/forms/src/modules/formPipes/pipes/getControl/getControl.pipe.js.map +1 -1
  48. package/es2022/forms/src/modules/hasError.module.js +5 -6
  49. package/es2022/forms/src/modules/hasError.module.js.map +1 -1
  50. package/es2022/forms/src/modules/numberInput.module.js +5 -6
  51. package/es2022/forms/src/modules/numberInput.module.js.map +1 -1
  52. package/es2022/forms/src/modules/requiredClass.module.js +5 -6
  53. package/es2022/forms/src/modules/requiredClass.module.js.map +1 -1
  54. package/es2022/forms/src/services/errorMessagesExtractor/errorMessagesExtractor.service.js +6 -7
  55. package/es2022/forms/src/services/errorMessagesExtractor/errorMessagesExtractor.service.js.map +1 -1
  56. package/es2022/forms/src/services/formModelBuilder/formModelBuilder.service.js +5 -6
  57. package/es2022/forms/src/services/formModelBuilder/formModelBuilder.service.js.map +1 -1
  58. package/es2022/forms/src/services/submitted/submitted.service.js +4 -5
  59. package/es2022/forms/src/services/submitted/submitted.service.js.map +1 -1
  60. package/es2022/forms/src/services/validationErrorRenderer/validationErrorRenderer.service.js +6 -7
  61. package/es2022/forms/src/services/validationErrorRenderer/validationErrorRenderer.service.js.map +1 -1
  62. package/es2022/hotkeys/src/components/cheatSheet/cheatSheet.component.js +5 -6
  63. package/es2022/hotkeys/src/components/cheatSheet/cheatSheet.component.js.map +1 -1
  64. package/es2022/hotkeys/src/services/appHotkeys.service.js +5 -6
  65. package/es2022/hotkeys/src/services/appHotkeys.service.js.map +1 -1
  66. package/es2022/material/src/components/confirmationDialog/confirmationDialog.component.js +6 -7
  67. package/es2022/material/src/components/confirmationDialog/confirmationDialog.component.js.map +1 -1
  68. package/es2022/material/src/components/movableTitledDialog/movableTitledDialog.component.js +4 -5
  69. package/es2022/material/src/components/movableTitledDialog/movableTitledDialog.component.js.map +1 -1
  70. package/es2022/material/src/components/titledDialog/titledDialog.component.js +6 -7
  71. package/es2022/material/src/components/titledDialog/titledDialog.component.js.map +1 -1
  72. package/es2022/material/src/directives/confirmationDialog/confirmationDialog.directive.js +5 -6
  73. package/es2022/material/src/directives/confirmationDialog/confirmationDialog.directive.js.map +1 -1
  74. package/es2022/material/src/directives/debugDataCopyClick/debugDataCopyClick.directive.js +5 -6
  75. package/es2022/material/src/directives/debugDataCopyClick/debugDataCopyClick.directive.js.map +1 -1
  76. package/es2022/material/src/modules/confirmationDialog.module.js +5 -6
  77. package/es2022/material/src/modules/confirmationDialog.module.js.map +1 -1
  78. package/es2022/material/src/modules/debugDataCopyClick.module.js +5 -6
  79. package/es2022/material/src/modules/debugDataCopyClick.module.js.map +1 -1
  80. package/es2022/material/src/modules/movableTitledDialog.module.js +5 -6
  81. package/es2022/material/src/modules/movableTitledDialog.module.js.map +1 -1
  82. package/es2022/material/src/modules/titledDialog.module.js +5 -6
  83. package/es2022/material/src/modules/titledDialog.module.js.map +1 -1
  84. package/es2022/material/src/services/titledDialog/titledDialog.service.js +6 -7
  85. package/es2022/material/src/services/titledDialog/titledDialog.service.js.map +1 -1
  86. package/es2022/moment/src/modules/moment.module.js +5 -6
  87. package/es2022/moment/src/modules/moment.module.js.map +1 -1
  88. package/es2022/moment/src/pipes/momentConvert/momentConvert.pipe.js +4 -5
  89. package/es2022/moment/src/pipes/momentConvert/momentConvert.pipe.js.map +1 -1
  90. package/es2022/moment/src/pipes/momentFormat/momentFormat.pipe.js +4 -5
  91. package/es2022/moment/src/pipes/momentFormat/momentFormat.pipe.js.map +1 -1
  92. package/es2022/numeral/src/pipes/numeral.pipe.js +5 -6
  93. package/es2022/numeral/src/pipes/numeral.pipe.js.map +1 -1
  94. package/es2022/router/src/services/routing/dataRouter.js +5 -6
  95. package/es2022/router/src/services/routing/dataRouter.js.map +1 -1
  96. package/es2022/router/src/services/routing/dataRouterData.js +5 -6
  97. package/es2022/router/src/services/routing/dataRouterData.js.map +1 -1
  98. package/es2022/src/components/collapsibleIcon/collapsibleIcon.component.js +4 -5
  99. package/es2022/src/components/collapsibleIcon/collapsibleIcon.component.js.map +1 -1
  100. package/es2022/src/components/collapsibleTitle/collapsibleTitle.component.js +4 -5
  101. package/es2022/src/components/collapsibleTitle/collapsibleTitle.component.js.map +1 -1
  102. package/es2022/src/directives/bodyRender/bodyRender.directive.js +6 -7
  103. package/es2022/src/directives/bodyRender/bodyRender.directive.js.map +1 -1
  104. package/es2022/src/directives/clickOutside/clickOutside.directive.js +6 -7
  105. package/es2022/src/directives/clickOutside/clickOutside.directive.js.map +1 -1
  106. package/es2022/src/directives/goBack/goBack.directive.js +5 -6
  107. package/es2022/src/directives/goBack/goBack.directive.js.map +1 -1
  108. package/es2022/src/directives/ngComponentOutletEx/ngComponentOutletEx.directive.js +5 -7
  109. package/es2022/src/directives/ngComponentOutletEx/ngComponentOutletEx.directive.js.map +1 -1
  110. package/es2022/src/directives/positionTo/positionTo.directive.js +6 -7
  111. package/es2022/src/directives/positionTo/positionTo.directive.js.map +1 -1
  112. package/es2022/src/modules/castPipes/modules/castPipes.module.js +5 -6
  113. package/es2022/src/modules/castPipes/modules/castPipes.module.js.map +1 -1
  114. package/es2022/src/modules/castPipes/pipes/asHtmlElement/asHtmlElement.pipe.js +4 -5
  115. package/es2022/src/modules/castPipes/pipes/asHtmlElement/asHtmlElement.pipe.js.map +1 -1
  116. package/es2022/src/modules/castPipes/pipes/asNgClassRequired/asNgClassRequired.pipe.js +4 -5
  117. package/es2022/src/modules/castPipes/pipes/asNgClassRequired/asNgClassRequired.pipe.js.map +1 -1
  118. package/es2022/src/modules/castPipes/pipes/asRequired/asRequired.pipe.js +4 -5
  119. package/es2022/src/modules/castPipes/pipes/asRequired/asRequired.pipe.js.map +1 -1
  120. package/es2022/src/modules/castPipes/pipes/castType/castType.pipe.js +6 -7
  121. package/es2022/src/modules/castPipes/pipes/castType/castType.pipe.js.map +1 -1
  122. package/es2022/src/modules/commonDynamic.module.js +5 -6
  123. package/es2022/src/modules/commonDynamic.module.js.map +1 -1
  124. package/es2022/src/modules/commonLocalize.module.js +5 -6
  125. package/es2022/src/modules/commonLocalize.module.js.map +1 -1
  126. package/es2022/src/modules/commonUtils.module.js +5 -6
  127. package/es2022/src/modules/commonUtils.module.js.map +1 -1
  128. package/es2022/src/modules/debugData/components/debugData/debugData.component.js +5 -6
  129. package/es2022/src/modules/debugData/components/debugData/debugData.component.js.map +1 -1
  130. package/es2022/src/modules/debugData/modules/debugData.module.js +5 -6
  131. package/es2022/src/modules/debugData/modules/debugData.module.js.map +1 -1
  132. package/es2022/src/modules/debugData/services/debugDataEnabled/debugDataEnabled.service.js +4 -5
  133. package/es2022/src/modules/debugData/services/debugDataEnabled/debugDataEnabled.service.js.map +1 -1
  134. package/es2022/src/modules/logger/components/console/console.component.js +5 -6
  135. package/es2022/src/modules/logger/components/console/console.component.js.map +1 -1
  136. package/es2022/src/modules/logger/services/console/consoleComponent.service.js +4 -5
  137. package/es2022/src/modules/logger/services/console/consoleComponent.service.js.map +1 -1
  138. package/es2022/src/modules/logger/services/console/consoleComponent.sink.js.map +1 -1
  139. package/es2022/src/modules/logger/services/console/consoleComponentService.options.js +5 -6
  140. package/es2022/src/modules/logger/services/console/consoleComponentService.options.js.map +1 -1
  141. package/es2022/src/modules/logger/services/developmentConsoleSink/developmentConsole.sink.js.map +1 -1
  142. package/es2022/src/modules/logger/services/logger/logger.service.js +5 -6
  143. package/es2022/src/modules/logger/services/logger/logger.service.js.map +1 -1
  144. package/es2022/src/modules/logger/services/rest/rest.sink.js.map +1 -1
  145. package/es2022/src/modules/logger/services/rest/restSink.options.js +5 -6
  146. package/es2022/src/modules/logger/services/rest/restSink.options.js.map +1 -1
  147. package/es2022/src/modules/logger/types/loggerOptions.js +4 -5
  148. package/es2022/src/modules/logger/types/loggerOptions.js.map +1 -1
  149. package/es2022/src/modules/multiButton/components/multiButton/multiButton.component.js +6 -7
  150. package/es2022/src/modules/multiButton/components/multiButton/multiButton.component.js.map +1 -1
  151. package/es2022/src/modules/multiButton/modules/multiButton.module.js +5 -6
  152. package/es2022/src/modules/multiButton/modules/multiButton.module.js.map +1 -1
  153. package/es2022/src/modules/progressIndicator/components/progressIndicator/progressIndicator.component.js +5 -6
  154. package/es2022/src/modules/progressIndicator/components/progressIndicator/progressIndicator.component.js.map +1 -1
  155. package/es2022/src/modules/progressIndicator/directives/progressOverlay/progressOverlay.directive.js +6 -7
  156. package/es2022/src/modules/progressIndicator/directives/progressOverlay/progressOverlay.directive.js.map +1 -1
  157. package/es2022/src/modules/progressIndicator/interceptors/progressInterceptor.js +5 -6
  158. package/es2022/src/modules/progressIndicator/interceptors/progressInterceptor.js.map +1 -1
  159. package/es2022/src/modules/progressIndicator/modules/progressIndicator.module.js +5 -6
  160. package/es2022/src/modules/progressIndicator/modules/progressIndicator.module.js.map +1 -1
  161. package/es2022/src/modules/progressIndicator/services/progressIndicator.service.js +10 -16
  162. package/es2022/src/modules/progressIndicator/services/progressIndicator.service.js.map +1 -1
  163. package/es2022/src/modules/tooltip/components/tooltip/tooltip.component.js +5 -6
  164. package/es2022/src/modules/tooltip/components/tooltip/tooltip.component.js.map +1 -1
  165. package/es2022/src/modules/tooltip/directives/tooltip/tooltip.directive.js +6 -7
  166. package/es2022/src/modules/tooltip/directives/tooltip/tooltip.directive.js.map +1 -1
  167. package/es2022/src/modules/tooltip/directives/tooltipTemplate/tooltipTemplate.directive.js +5 -6
  168. package/es2022/src/modules/tooltip/directives/tooltipTemplate/tooltipTemplate.directive.js.map +1 -1
  169. package/es2022/src/modules/tooltip/modules/tooltip.module.js +5 -6
  170. package/es2022/src/modules/tooltip/modules/tooltip.module.js.map +1 -1
  171. package/es2022/src/pipes/displayProperties/displayProperties.pipe.js +4 -5
  172. package/es2022/src/pipes/displayProperties/displayProperties.pipe.js.map +1 -1
  173. package/es2022/src/pipes/firstUppercase/firstUppercase.pipe.js +4 -5
  174. package/es2022/src/pipes/firstUppercase/firstUppercase.pipe.js.map +1 -1
  175. package/es2022/src/pipes/firstUppercaseLocalize/firstUppercaseLocalize.pipe.js +6 -7
  176. package/es2022/src/pipes/firstUppercaseLocalize/firstUppercaseLocalize.pipe.js.map +1 -1
  177. package/es2022/src/pipes/isNaN/isNaN.pipe.js +4 -5
  178. package/es2022/src/pipes/isNaN/isNaN.pipe.js.map +1 -1
  179. package/es2022/src/pipes/isPresent/isPresent.pipe.js +4 -5
  180. package/es2022/src/pipes/isPresent/isPresent.pipe.js.map +1 -1
  181. package/es2022/src/pipes/keys/keys.pipe.js +4 -5
  182. package/es2022/src/pipes/keys/keys.pipe.js.map +1 -1
  183. package/es2022/src/pipes/localize/localize.pipe.js +6 -7
  184. package/es2022/src/pipes/localize/localize.pipe.js.map +1 -1
  185. package/es2022/src/pipes/mergeCssClasses/mergeCssClasses.pipe.js +8 -6
  186. package/es2022/src/pipes/mergeCssClasses/mergeCssClasses.pipe.js.map +1 -1
  187. package/es2022/src/pipes/urlEncode/urlEncode.pipe.js +4 -5
  188. package/es2022/src/pipes/urlEncode/urlEncode.pipe.js.map +1 -1
  189. package/es2022/src/services/cookies/cookies.service.js +6 -7
  190. package/es2022/src/services/cookies/cookies.service.js.map +1 -1
  191. package/es2022/src/services/notifications/defaultNotifications.service.js +6 -7
  192. package/es2022/src/services/notifications/defaultNotifications.service.js.map +1 -1
  193. package/es2022/src/services/permanentStorage/cookiePermanentStorage.service.js +7 -8
  194. package/es2022/src/services/permanentStorage/cookiePermanentStorage.service.js.map +1 -1
  195. package/es2022/src/services/statusCode/statusCode.service.js +4 -5
  196. package/es2022/src/services/statusCode/statusCode.service.js.map +1 -1
  197. package/es2022/src/services/stringLocalization/noStringLocalization.service.js +4 -5
  198. package/es2022/src/services/stringLocalization/noStringLocalization.service.js.map +1 -1
  199. package/es2022/src/services/temporaryStorage/memoryTemporaryStorage.service.js +4 -5
  200. package/es2022/src/services/temporaryStorage/memoryTemporaryStorage.service.js.map +1 -1
  201. package/es2022/store/src/services/permanentStorage/localPermanentStorage.service.js +7 -8
  202. package/es2022/store/src/services/permanentStorage/localPermanentStorage.service.js.map +1 -1
  203. package/es2022/store/src/services/temporaryStorage/sessionTemporaryStorage.service.js +6 -7
  204. package/es2022/store/src/services/temporaryStorage/sessionTemporaryStorage.service.js.map +1 -1
  205. package/package.json +41 -42
  206. package/src/directives/ngComponentOutletEx/ngComponentOutletEx.directive.d.ts.map +1 -1
  207. package/src/modules/progressIndicator/services/progressIndicator.service.d.ts +2 -3
  208. package/src/modules/progressIndicator/services/progressIndicator.service.d.ts.map +1 -1
  209. package/src/pipes/mergeCssClasses/mergeCssClasses.pipe.d.ts +1 -1
  210. package/src/pipes/mergeCssClasses/mergeCssClasses.pipe.d.ts.map +1 -1
  211. package/styles/themes/dark.scss +6 -0
  212. package/styles/themes/light.scss +0 -6
  213. package/version.bak +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"consoleComponent.sink.js","sourceRoot":"","sources":["../../../../../../src/modules/logger/services/console/consoleComponent.sink.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AAGrC,OAAO,EAAC,QAAQ,EAA4B,MAAM,aAAa,CAAC;AAChE,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAC,uBAAuB,EAAC,MAAM,4BAA4B,CAAC;AAEnE;;GAEG;AAEH,IAAa,oBAAoB,GAAjC,MAAa,oBAAoB;IAE7B,sEAAsE;IAEtE;;OAEG;IACO,mBAAmB,GAA4B,MAAM,CAAC,uBAAuB,CAAC,CAAC;IAEzF,mGAAmG;IAEnG;;OAEG;IACI,GAAG,CAAC,OAAsB,EAAE,gBAAyC,EAAE,UAA+C;QAEzH,MAAM,WAAW,GAAG,GAAG,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,eAAe,IAAI,gBAAgB,EAAE,gBAAgB,CAAC,EAAE,CAAC;QAEhH,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAC5B;YACI,IAAI,EAAE,WAAW;YACjB,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC;SAC1C,CAAC,CAAC;IACP,CAAC;CACJ,CAAA;AAxBY,oBAAoB;IADhC,QAAQ,EAAE;GACE,oBAAoB,CAwBhC;SAxBY,oBAAoB","sourcesContent":["import {inject} from '@angular/core';\n\nimport {LoggerSink} from '../../interfaces';\nimport {LogLevel, LoggerOptions, MessageLog} from '../../types';\nimport {SinkType} from '../../decorators';\nimport {ConsoleComponentService} from './consoleComponent.service';\n\n/**\n * Sink that is used for storing logs in `ConsoleComponent`\n */\n@SinkType()\nexport class ConsoleComponentSink implements LoggerSink\n{\n //######################### protected fields #########################\n\n /**\n * Options for this sink\n */\n protected consoleComponentSvc: ConsoleComponentService = inject(ConsoleComponentService);\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 const fullMessage = `${messageLog.buildMessage(options.messageTemplate ?? '{{messageLog}}', loggerProperties)}`;\n\n this.consoleComponentSvc.log(\n {\n text: fullMessage,\n logLevel: LogLevel[messageLog.logLevel],\n });\n }\n}"]}
1
+ {"version":3,"file":"consoleComponent.sink.js","sourceRoot":"","sources":["../../../../../../src/modules/logger/services/console/consoleComponent.sink.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AAGrC,OAAO,EAAC,QAAQ,EAA4B,MAAM,aAAa,CAAC;AAChE,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAC,uBAAuB,EAAC,MAAM,4BAA4B,CAAC;AAEnE;;GAEG;AAEI,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAE7B,sEAAsE;IAEtE;;OAEG;IACO,mBAAmB,GAA4B,MAAM,CAAC,uBAAuB,CAAC,CAAC;IAEzF,mGAAmG;IAEnG;;OAEG;IACI,GAAG,CAAC,OAAsB,EAAE,gBAAyC,EAAE,UAA+C;QAEzH,MAAM,WAAW,GAAG,GAAG,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,eAAe,IAAI,gBAAgB,EAAE,gBAAgB,CAAC,EAAE,CAAC;QAEhH,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAC5B;YACI,IAAI,EAAE,WAAW;YACjB,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC;SAC1C,CAAC,CAAC;IACP,CAAC;CACJ,CAAA;AAxBY,oBAAoB;IADhC,QAAQ,EAAE;GACE,oBAAoB,CAwBhC","sourcesContent":["import {inject} from '@angular/core';\n\nimport {LoggerSink} from '../../interfaces';\nimport {LogLevel, LoggerOptions, MessageLog} from '../../types';\nimport {SinkType} from '../../decorators';\nimport {ConsoleComponentService} from './consoleComponent.service';\n\n/**\n * Sink that is used for storing logs in `ConsoleComponent`\n */\n@SinkType()\nexport class ConsoleComponentSink implements LoggerSink\n{\n //######################### protected fields #########################\n\n /**\n * Options for this sink\n */\n protected consoleComponentSvc: ConsoleComponentService = inject(ConsoleComponentService);\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 const fullMessage = `${messageLog.buildMessage(options.messageTemplate ?? '{{messageLog}}', loggerProperties)}`;\n\n this.consoleComponentSvc.log(\n {\n text: fullMessage,\n logLevel: LogLevel[messageLog.logLevel],\n });\n }\n}"]}
@@ -8,7 +8,7 @@ const MAX_LOGS = 1500;
8
8
  /**
9
9
  * Options for *console component service*
10
10
  */
11
- class ConsoleComponentServiceOptions {
11
+ export class ConsoleComponentServiceOptions {
12
12
  //######################### public properties #########################
13
13
  /**
14
14
  * Maximal number of logs that can be stored
@@ -20,12 +20,11 @@ class ConsoleComponentServiceOptions {
20
20
  this.maxLogsCount = maxLogsCount;
21
21
  }
22
22
  }
23
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: ConsoleComponentServiceOptions, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable });
24
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: ConsoleComponentServiceOptions, providedIn: 'root', useFactory: () => new ConsoleComponentServiceOptions() });
23
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: ConsoleComponentServiceOptions, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable });
24
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: ConsoleComponentServiceOptions, providedIn: 'root', useFactory: () => new ConsoleComponentServiceOptions() });
25
25
  }
26
- export { ConsoleComponentServiceOptions };
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: ConsoleComponentServiceOptions, decorators: [{
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: ConsoleComponentServiceOptions, decorators: [{
28
27
  type: Injectable,
29
28
  args: [{ providedIn: 'root', useFactory: () => new ConsoleComponentServiceOptions() }]
30
- }], ctorParameters: function () { return [{ type: undefined }]; } });
29
+ }], ctorParameters: () => [{ type: undefined }] });
31
30
  //# sourceMappingURL=consoleComponentService.options.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"consoleComponentService.options.js","sourceRoot":"","sources":["../../../../../../src/modules/logger/services/console/consoleComponentService.options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AACzC,OAAO,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;;AAEzC;;GAEG;AACH,MAAM,QAAQ,GAAW,IAAI,CAAC;AAE9B;;GAEG;AACH,MACa,8BAA8B;IAEvC,uEAAuE;IAEvE;;OAEG;IACI,YAAY,GAAW,QAAQ,CAAC;IAEvC,iEAAiE;IACjE,YAAY,YAAqB;QAE7B,IAAG,SAAS,CAAC,YAAY,CAAC,EAC1B;YACI,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;SACpC;IACL,CAAC;uGAhBQ,8BAA8B;2GAA9B,8BAA8B,cADlB,MAAM,cAAc,GAAG,EAAE,CAAC,IAAI,8BAA8B,EAAE;;SAC1E,8BAA8B;2FAA9B,8BAA8B;kBAD1C,UAAU;mBAAC,EAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,oCAAoC,EAAC","sourcesContent":["import {Injectable} from '@angular/core';\nimport {isPresent} from '@jscrpt/common';\n\n/**\n * Maximal number of logs that can be stored\n */\nconst MAX_LOGS: number = 1500;\n\n/**\n * Options for *console component service*\n */\n@Injectable({providedIn: 'root', useFactory: () => new ConsoleComponentServiceOptions()})\nexport class ConsoleComponentServiceOptions\n{\n //######################### public properties #########################\n\n /**\n * Maximal number of logs that can be stored\n */\n public maxLogsCount: number = MAX_LOGS;\n\n //######################### constructor #########################\n constructor(maxLogsCount?: number)\n {\n if(isPresent(maxLogsCount))\n {\n this.maxLogsCount = maxLogsCount;\n }\n }\n}\n"]}
1
+ {"version":3,"file":"consoleComponentService.options.js","sourceRoot":"","sources":["../../../../../../src/modules/logger/services/console/consoleComponentService.options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AACzC,OAAO,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;;AAEzC;;GAEG;AACH,MAAM,QAAQ,GAAW,IAAI,CAAC;AAE9B;;GAEG;AAEH,MAAM,OAAO,8BAA8B;IAEvC,uEAAuE;IAEvE;;OAEG;IACI,YAAY,GAAW,QAAQ,CAAC;IAEvC,iEAAiE;IACjE,YAAY,YAAqB;QAE7B,IAAG,SAAS,CAAC,YAAY,CAAC,EAC1B;YACI,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;SACpC;IACL,CAAC;uGAhBQ,8BAA8B;2GAA9B,8BAA8B,cADlB,MAAM,cAAc,GAAG,EAAE,CAAC,IAAI,8BAA8B,EAAE;;2FAC1E,8BAA8B;kBAD1C,UAAU;mBAAC,EAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,oCAAoC,EAAC","sourcesContent":["import {Injectable} from '@angular/core';\nimport {isPresent} from '@jscrpt/common';\n\n/**\n * Maximal number of logs that can be stored\n */\nconst MAX_LOGS: number = 1500;\n\n/**\n * Options for *console component service*\n */\n@Injectable({providedIn: 'root', useFactory: () => new ConsoleComponentServiceOptions()})\nexport class ConsoleComponentServiceOptions\n{\n //######################### public properties #########################\n\n /**\n * Maximal number of logs that can be stored\n */\n public maxLogsCount: number = MAX_LOGS;\n\n //######################### constructor #########################\n constructor(maxLogsCount?: number)\n {\n if(isPresent(maxLogsCount))\n {\n this.maxLogsCount = maxLogsCount;\n }\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"developmentConsole.sink.js","sourceRoot":"","sources":["../../../../../../src/modules/logger/services/developmentConsoleSink/developmentConsole.sink.ts"],"names":[],"mappings":";AACA,OAAO,EAAC,QAAQ,EAA4B,MAAM,aAAa,CAAC;AAChE,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAE1C;;GAEG;AAEH,IAAa,oBAAoB,GAAjC,MAAa,oBAAoB;IAE7B,mGAAmG;IAEnG;;OAEG;IACI,GAAG,CAAC,OAAsB,EAAE,gBAAyC,EAAE,UAAsB;QAEhG,MAAM,WAAW,GAAG,KAAK,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,eAAe,IAAI,gBAAgB,EAAE,gBAAgB,CAAC,EAAE,CAAC;QAElH,QAAO,UAAU,CAAC,QAAQ,EAC1B;YACI,QAAQ;YACR,KAAK,QAAQ,CAAC,GAAG;gBACjB;oBACI,MAAM;iBACT;YACD,KAAK,QAAQ,CAAC,KAAK,CAAC;YACpB,KAAK,QAAQ,CAAC,KAAK;gBACnB;oBACI,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;oBAErC,MAAM;iBACT;YACD,KAAK,QAAQ,CAAC,OAAO,CAAC;YACtB,KAAK,QAAQ,CAAC,KAAK;gBACnB;oBACI,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;oBAErC,MAAM;iBACT;YACD,KAAK,QAAQ,CAAC,WAAW;gBACzB;oBACI,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;oBAErC,MAAM;iBACT;YACD,KAAK,QAAQ,CAAC,OAAO;gBACrB;oBACI,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;oBAErC,MAAM;iBACT;SACJ;IACL,CAAC;IAED,uEAAuE;IAEvE;;;;OAIG;IACO,QAAQ,CAAC,WAAmB,EAAE,KAAa;QAEjD,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAExC,IAAG,KAAK,IAAI,CAAC,EACb;YACI,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAC9C,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YAE/C,OAAO,CAAC,cAAc,CAAC,SAAS,EAAG,WAAW,KAAK,GAAG,CAAC,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,EAAE,WAAW,KAAK,GAAG,CAAC,CAAC;YACnD,OAAO,CAAC,QAAQ,EAAE,CAAC;SACtB;aAED;YACI,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,KAAK,GAAG,CAAC,CAAC;SACjD;IACL,CAAC;CACJ,CAAA;AAxEY,oBAAoB;IADhC,QAAQ,EAAE;GACE,oBAAoB,CAwEhC;SAxEY,oBAAoB","sourcesContent":["import {LoggerSink} from '../../interfaces';\nimport {LogLevel, LoggerOptions, MessageLog} from '../../types';\nimport {SinkType} from '../../decorators';\n\n/**\n * Sink that is used for storing logs using browser developer console\n */\n@SinkType()\nexport class DeveloperConsoleSink implements LoggerSink\n{\n //######################### public methods - implementation of LoggerSink #########################\n\n /**\n * @inheritdoc\n */\n public log(options: LoggerOptions, loggerProperties: Record<string, unknown>, messageLog: MessageLog): void\n {\n const fullMessage = `%c${messageLog.buildMessage(options.messageTemplate ?? '{{messageLog}}', loggerProperties)}`;\n \n switch(messageLog.logLevel)\n {\n default:\n case LogLevel.Off:\n {\n break;\n }\n case LogLevel.Error:\n case LogLevel.Fatal:\n {\n this.writeLog(fullMessage, 'FF3131');\n\n break;\n }\n case LogLevel.Verbose:\n case LogLevel.Debug:\n {\n this.writeLog(fullMessage, '31A1FF');\n\n break;\n }\n case LogLevel.Information:\n {\n this.writeLog(fullMessage, 'ffffff');\n\n break;\n }\n case LogLevel.Warning:\n {\n this.writeLog(fullMessage, 'FFC531');\n\n break;\n }\n }\n }\n\n //######################### protected methods #########################\n\n /**\n * Writes message to log\n * @param fullMessage - Full message to be written\n * @param color - Color of message\n */\n protected writeLog(fullMessage: string, color: string): void\n {\n const index = fullMessage.indexOf('\\n');\n\n if(index >= 0)\n {\n const firstLine = fullMessage.slice(0, index);\n const restLines = fullMessage.slice(index + 1);\n\n console.groupCollapsed(firstLine, `color: #${color};`);\n console.log(`%c${restLines}`, `color: #${color};`);\n console.groupEnd();\n }\n else\n {\n console.log(fullMessage, `color: #${color};`);\n }\n }\n}"]}
1
+ {"version":3,"file":"developmentConsole.sink.js","sourceRoot":"","sources":["../../../../../../src/modules/logger/services/developmentConsoleSink/developmentConsole.sink.ts"],"names":[],"mappings":";AACA,OAAO,EAAC,QAAQ,EAA4B,MAAM,aAAa,CAAC;AAChE,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAE1C;;GAEG;AAEI,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAE7B,mGAAmG;IAEnG;;OAEG;IACI,GAAG,CAAC,OAAsB,EAAE,gBAAyC,EAAE,UAAsB;QAEhG,MAAM,WAAW,GAAG,KAAK,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,eAAe,IAAI,gBAAgB,EAAE,gBAAgB,CAAC,EAAE,CAAC;QAElH,QAAO,UAAU,CAAC,QAAQ,EAC1B;YACI,QAAQ;YACR,KAAK,QAAQ,CAAC,GAAG;gBACjB;oBACI,MAAM;iBACT;YACD,KAAK,QAAQ,CAAC,KAAK,CAAC;YACpB,KAAK,QAAQ,CAAC,KAAK;gBACnB;oBACI,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;oBAErC,MAAM;iBACT;YACD,KAAK,QAAQ,CAAC,OAAO,CAAC;YACtB,KAAK,QAAQ,CAAC,KAAK;gBACnB;oBACI,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;oBAErC,MAAM;iBACT;YACD,KAAK,QAAQ,CAAC,WAAW;gBACzB;oBACI,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;oBAErC,MAAM;iBACT;YACD,KAAK,QAAQ,CAAC,OAAO;gBACrB;oBACI,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;oBAErC,MAAM;iBACT;SACJ;IACL,CAAC;IAED,uEAAuE;IAEvE;;;;OAIG;IACO,QAAQ,CAAC,WAAmB,EAAE,KAAa;QAEjD,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAExC,IAAG,KAAK,IAAI,CAAC,EACb;YACI,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAC9C,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YAE/C,OAAO,CAAC,cAAc,CAAC,SAAS,EAAG,WAAW,KAAK,GAAG,CAAC,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,EAAE,WAAW,KAAK,GAAG,CAAC,CAAC;YACnD,OAAO,CAAC,QAAQ,EAAE,CAAC;SACtB;aAED;YACI,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,KAAK,GAAG,CAAC,CAAC;SACjD;IACL,CAAC;CACJ,CAAA;AAxEY,oBAAoB;IADhC,QAAQ,EAAE;GACE,oBAAoB,CAwEhC","sourcesContent":["import {LoggerSink} from '../../interfaces';\nimport {LogLevel, LoggerOptions, MessageLog} from '../../types';\nimport {SinkType} from '../../decorators';\n\n/**\n * Sink that is used for storing logs using browser developer console\n */\n@SinkType()\nexport class DeveloperConsoleSink implements LoggerSink\n{\n //######################### public methods - implementation of LoggerSink #########################\n\n /**\n * @inheritdoc\n */\n public log(options: LoggerOptions, loggerProperties: Record<string, unknown>, messageLog: MessageLog): void\n {\n const fullMessage = `%c${messageLog.buildMessage(options.messageTemplate ?? '{{messageLog}}', loggerProperties)}`;\n \n switch(messageLog.logLevel)\n {\n default:\n case LogLevel.Off:\n {\n break;\n }\n case LogLevel.Error:\n case LogLevel.Fatal:\n {\n this.writeLog(fullMessage, 'FF3131');\n\n break;\n }\n case LogLevel.Verbose:\n case LogLevel.Debug:\n {\n this.writeLog(fullMessage, '31A1FF');\n\n break;\n }\n case LogLevel.Information:\n {\n this.writeLog(fullMessage, 'ffffff');\n\n break;\n }\n case LogLevel.Warning:\n {\n this.writeLog(fullMessage, 'FFC531');\n\n break;\n }\n }\n }\n\n //######################### protected methods #########################\n\n /**\n * Writes message to log\n * @param fullMessage - Full message to be written\n * @param color - Color of message\n */\n protected writeLog(fullMessage: string, color: string): void\n {\n const index = fullMessage.indexOf('\\n');\n\n if(index >= 0)\n {\n const firstLine = fullMessage.slice(0, index);\n const restLines = fullMessage.slice(index + 1);\n\n console.groupCollapsed(firstLine, `color: #${color};`);\n console.log(`%c${restLines}`, `color: #${color};`);\n console.groupEnd();\n }\n else\n {\n console.log(fullMessage, `color: #${color};`);\n }\n }\n}"]}
@@ -7,7 +7,7 @@ import * as i1 from "../../types";
7
7
  /**
8
8
  * Default implementation of `Logger`
9
9
  */
10
- class DefaultLogger {
10
+ export class DefaultLogger {
11
11
  options;
12
12
  //######################### constructor #########################
13
13
  constructor(options) {
@@ -89,11 +89,10 @@ class DefaultLogger {
89
89
  }
90
90
  }
91
91
  }
92
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DefaultLogger, deps: [{ token: i1.LoggerOptions }], target: i0.ɵɵFactoryTarget.Injectable });
93
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DefaultLogger });
92
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: DefaultLogger, deps: [{ token: i1.LoggerOptions }], target: i0.ɵɵFactoryTarget.Injectable });
93
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: DefaultLogger });
94
94
  }
95
- export { DefaultLogger };
96
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DefaultLogger, decorators: [{
95
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: DefaultLogger, decorators: [{
97
96
  type: Injectable
98
- }], ctorParameters: function () { return [{ type: i1.LoggerOptions }]; } });
97
+ }], ctorParameters: () => [{ type: i1.LoggerOptions }] });
99
98
  //# sourceMappingURL=logger.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"logger.service.js","sourceRoot":"","sources":["../../../../../../src/modules/logger/services/logger/logger.service.ts"],"names":[],"mappings":"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","sourcesContent":["import {Injectable} from '@angular/core';\nimport {isBlank} from '@jscrpt/common';\n\nimport {LogLevel, LoggerOptions, MessageLog} from '../../types';\nimport {loggerEnabled, useEnrichers} from '../../misc';\nimport {Logger} from './logger.interface';\n\n/**\n * Default implementation of `Logger`\n */\n@Injectable()\nexport class DefaultLogger implements Logger\n{\n //######################### constructor #########################\n constructor(protected options: LoggerOptions,)\n {\n }\n\n //######################### public methods - implementation of Logger #########################\n\n /**\n * @inheritdoc\n */\n public fatal(messageTemplate: string, properties?: Record<string, unknown>): void\n {\n this.log(messageTemplate, LogLevel.Fatal, properties);\n }\n\n /**\n * @inheritdoc\n */\n public error(messageTemplate: string, properties?: Record<string, unknown>): void\n {\n this.log(messageTemplate, LogLevel.Error, properties);\n }\n\n /**\n * @inheritdoc\n */\n public warn(messageTemplate: string, properties?: Record<string, unknown>): void\n {\n this.log(messageTemplate, LogLevel.Warning, properties);\n }\n\n /**\n * @inheritdoc\n */\n public info(messageTemplate: string, properties?: Record<string, unknown>): void\n {\n this.log(messageTemplate, LogLevel.Information, properties);\n }\n\n /**\n * @inheritdoc\n */\n public debug(messageTemplate: string, properties?: Record<string, unknown>): void\n {\n this.log(messageTemplate, LogLevel.Debug, properties);\n }\n\n /**\n * @inheritdoc\n */\n public verbose(messageTemplate: string, properties?: Record<string, unknown>): void\n {\n this.log(messageTemplate, LogLevel.Verbose, properties);\n }\n\n //######################### protected methods #########################\n\n /**\n * Performs log logic\n * @param messageTemplate - Message template of log to be used for logging\n * @param level - Log level to be logged\n * @param properties - Properties provided by message log\n */\n protected log(messageTemplate: string, level: LogLevel, properties?: Record<string, unknown>): void\n {\n const defaultLogLevelSinks = this.options.loggerSinks.filter(itm => isBlank(itm.minimumLogLevel));\n const customLogLevelSinks = this.options.loggerSinks.filter(itm => !isBlank(itm.minimumLogLevel));\n let loggerProperties: Record<string, unknown>;\n const messageLog = new MessageLog(messageTemplate, level, properties ?? {});\n let loggerFilterResult: boolean;\n\n //only if logger is enabled\n if(loggerEnabled(this.options.minimumLogLevel, level))\n {\n loggerProperties ??= useEnrichers(messageLog, this.options.enrichers);\n loggerFilterResult = (!this.options.filter || this.options.filter(loggerProperties, messageLog));\n\n if(loggerFilterResult)\n {\n for(const sink of defaultLogLevelSinks)\n {\n sink.log(this.options, loggerProperties, messageLog);\n }\n }\n }\n\n //custom log level loggers\n for(const sink of customLogLevelSinks)\n {\n if(loggerEnabled(sink.minimumLogLevel, level))\n {\n loggerProperties ??= useEnrichers(messageLog, this.options.enrichers);\n loggerFilterResult ??= (!this.options.filter || this.options.filter(loggerProperties, messageLog));\n const sinkProperties =\n {\n ...loggerProperties,\n ...useEnrichers(messageLog, sink.enrichers ?? []),\n };\n const filter = loggerFilterResult && (!sink.filter || sink.filter(sinkProperties, messageLog));\n\n if(filter)\n {\n sink.log(this.options, loggerProperties, messageLog);\n }\n }\n }\n }\n}"]}
1
+ {"version":3,"file":"logger.service.js","sourceRoot":"","sources":["../../../../../../src/modules/logger/services/logger/logger.service.ts"],"names":[],"mappings":"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","sourcesContent":["import {Injectable} from '@angular/core';\nimport {isBlank} from '@jscrpt/common';\n\nimport {LogLevel, LoggerOptions, MessageLog} from '../../types';\nimport {loggerEnabled, useEnrichers} from '../../misc';\nimport {Logger} from './logger.interface';\n\n/**\n * Default implementation of `Logger`\n */\n@Injectable()\nexport class DefaultLogger implements Logger\n{\n //######################### constructor #########################\n constructor(protected options: LoggerOptions,)\n {\n }\n\n //######################### public methods - implementation of Logger #########################\n\n /**\n * @inheritdoc\n */\n public fatal(messageTemplate: string, properties?: Record<string, unknown>): void\n {\n this.log(messageTemplate, LogLevel.Fatal, properties);\n }\n\n /**\n * @inheritdoc\n */\n public error(messageTemplate: string, properties?: Record<string, unknown>): void\n {\n this.log(messageTemplate, LogLevel.Error, properties);\n }\n\n /**\n * @inheritdoc\n */\n public warn(messageTemplate: string, properties?: Record<string, unknown>): void\n {\n this.log(messageTemplate, LogLevel.Warning, properties);\n }\n\n /**\n * @inheritdoc\n */\n public info(messageTemplate: string, properties?: Record<string, unknown>): void\n {\n this.log(messageTemplate, LogLevel.Information, properties);\n }\n\n /**\n * @inheritdoc\n */\n public debug(messageTemplate: string, properties?: Record<string, unknown>): void\n {\n this.log(messageTemplate, LogLevel.Debug, properties);\n }\n\n /**\n * @inheritdoc\n */\n public verbose(messageTemplate: string, properties?: Record<string, unknown>): void\n {\n this.log(messageTemplate, LogLevel.Verbose, properties);\n }\n\n //######################### protected methods #########################\n\n /**\n * Performs log logic\n * @param messageTemplate - Message template of log to be used for logging\n * @param level - Log level to be logged\n * @param properties - Properties provided by message log\n */\n protected log(messageTemplate: string, level: LogLevel, properties?: Record<string, unknown>): void\n {\n const defaultLogLevelSinks = this.options.loggerSinks.filter(itm => isBlank(itm.minimumLogLevel));\n const customLogLevelSinks = this.options.loggerSinks.filter(itm => !isBlank(itm.minimumLogLevel));\n let loggerProperties: Record<string, unknown>;\n const messageLog = new MessageLog(messageTemplate, level, properties ?? {});\n let loggerFilterResult: boolean;\n\n //only if logger is enabled\n if(loggerEnabled(this.options.minimumLogLevel, level))\n {\n loggerProperties ??= useEnrichers(messageLog, this.options.enrichers);\n loggerFilterResult = (!this.options.filter || this.options.filter(loggerProperties, messageLog));\n\n if(loggerFilterResult)\n {\n for(const sink of defaultLogLevelSinks)\n {\n sink.log(this.options, loggerProperties, messageLog);\n }\n }\n }\n\n //custom log level loggers\n for(const sink of customLogLevelSinks)\n {\n if(loggerEnabled(sink.minimumLogLevel, level))\n {\n loggerProperties ??= useEnrichers(messageLog, this.options.enrichers);\n loggerFilterResult ??= (!this.options.filter || this.options.filter(loggerProperties, messageLog));\n const sinkProperties =\n {\n ...loggerProperties,\n ...useEnrichers(messageLog, sink.enrichers ?? []),\n };\n const filter = loggerFilterResult && (!sink.filter || sink.filter(sinkProperties, messageLog));\n\n if(filter)\n {\n sink.log(this.options, loggerProperties, messageLog);\n }\n }\n }\n }\n}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"rest.sink.js","sourceRoot":"","sources":["../../../../../../src/modules/logger/services/rest/rest.sink.ts"],"names":[],"mappings":"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","sourcesContent":["import {inject} from '@angular/core';\nimport {isPresent} from '@jscrpt/common';\nimport {lastValueFrom} from 'rxjs';\n\nimport {RestSinkOptions} from './restSink.options';\nimport {SinkType} from '../../decorators';\nimport {LoggerRestClient, LoggerSink, RestLog} from '../../interfaces';\nimport {APP_STABLE} from '../../../../utils';\nimport {LOGGER_REST_CLIENT, loggerEnabled} from '../../misc';\nimport {LogLevel, LoggerOptions, MessageLog} from '../../types';\n\n/**\n * Sink that is used for storing logs using REST\n */\n@SinkType()\nexport class RestSink implements LoggerSink\n{\n //######################### protected fields #########################\n\n /**\n * Array of unflushed logs\n */\n protected logs: RestLog[] = [];\n\n /**\n * Interval timer id\n */\n protected timer: number|undefined|null;\n\n /**\n * Configuration options for rest sink\n */\n protected options: RestSinkOptions = inject(RestSinkOptions);\n\n /**\n * Indication whether is app stable\n */\n protected isStable: Promise<void> = inject(APP_STABLE);\n\n /**\n * Rest client used for sending logs through REST\n */\n protected restClient: LoggerRestClient = inject(LOGGER_REST_CLIENT);\n\n //######################### constructor #########################\n constructor()\n {\n if(!(this.options instanceof RestSinkOptions))\n {\n this.options = new RestSinkOptions();\n }\n\n this.isStable.then(() =>\n {\n this.timer = setInterval(() =>\n {\n this.flush();\n }, (this.options.secondsToFlushAfter ?? 0) * 1000) as any;\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(isPresent(this.timer))\n {\n clearInterval(this.timer);\n }\n\n this.flush();\n }\n\n //######################### public methods - implementation of Sink #########################\n\n /**\n * @inheritdoc\n */\n public log(options: LoggerOptions, loggerProperties: Record<string, unknown>, messageLog: MessageLog): void\n {\n let forceFlush = false;\n\n const fullMessage = `${messageLog.buildMessage(options.messageTemplate ?? '{{messageLog}}', loggerProperties)}`;\n\n this.logs.push(\n {\n logLevel: LogLevel[messageLog.logLevel].toUpperCase(),\n message: fullMessage,\n timestamp: messageLog.timestamp,\n });\n\n if(loggerEnabled(() => this.options.immediateFlushMinLevel, messageLog.logLevel))\n {\n forceFlush = true;\n }\n\n //flush if number of records is bigger than max or flush is required\n if(forceFlush || this.logs.length >= this.options.flushAfterNumberOfLogs)\n {\n this.flush();\n }\n }\n\n /**\n * Flushes logs\n */\n protected flush(): Promise<void>\n {\n let promise: Promise<void>|undefined;\n\n //no logs available\n if(!this.logs.length)\n {\n return Promise.resolve();\n }\n\n try\n {\n promise = lastValueFrom(this.restClient.log(this.logs));\n }\n catch(e)\n {\n console.log(e);\n }\n\n this.logs = [];\n\n return promise ?? Promise.resolve();\n }\n}"]}
1
+ {"version":3,"file":"rest.sink.js","sourceRoot":"","sources":["../../../../../../src/modules/logger/services/rest/rest.sink.ts"],"names":[],"mappings":"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","sourcesContent":["import {inject} from '@angular/core';\nimport {isPresent} from '@jscrpt/common';\nimport {lastValueFrom} from 'rxjs';\n\nimport {RestSinkOptions} from './restSink.options';\nimport {SinkType} from '../../decorators';\nimport {LoggerRestClient, LoggerSink, RestLog} from '../../interfaces';\nimport {APP_STABLE} from '../../../../utils';\nimport {LOGGER_REST_CLIENT, loggerEnabled} from '../../misc';\nimport {LogLevel, LoggerOptions, MessageLog} from '../../types';\n\n/**\n * Sink that is used for storing logs using REST\n */\n@SinkType()\nexport class RestSink implements LoggerSink\n{\n //######################### protected fields #########################\n\n /**\n * Array of unflushed logs\n */\n protected logs: RestLog[] = [];\n\n /**\n * Interval timer id\n */\n protected timer: number|undefined|null;\n\n /**\n * Configuration options for rest sink\n */\n protected options: RestSinkOptions = inject(RestSinkOptions);\n\n /**\n * Indication whether is app stable\n */\n protected isStable: Promise<void> = inject(APP_STABLE);\n\n /**\n * Rest client used for sending logs through REST\n */\n protected restClient: LoggerRestClient = inject(LOGGER_REST_CLIENT);\n\n //######################### constructor #########################\n constructor()\n {\n if(!(this.options instanceof RestSinkOptions))\n {\n this.options = new RestSinkOptions();\n }\n\n this.isStable.then(() =>\n {\n this.timer = setInterval(() =>\n {\n this.flush();\n }, (this.options.secondsToFlushAfter ?? 0) * 1000) as any;\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(isPresent(this.timer))\n {\n clearInterval(this.timer);\n }\n\n this.flush();\n }\n\n //######################### public methods - implementation of Sink #########################\n\n /**\n * @inheritdoc\n */\n public log(options: LoggerOptions, loggerProperties: Record<string, unknown>, messageLog: MessageLog): void\n {\n let forceFlush = false;\n\n const fullMessage = `${messageLog.buildMessage(options.messageTemplate ?? '{{messageLog}}', loggerProperties)}`;\n\n this.logs.push(\n {\n logLevel: LogLevel[messageLog.logLevel].toUpperCase(),\n message: fullMessage,\n timestamp: messageLog.timestamp,\n });\n\n if(loggerEnabled(() => this.options.immediateFlushMinLevel, messageLog.logLevel))\n {\n forceFlush = true;\n }\n\n //flush if number of records is bigger than max or flush is required\n if(forceFlush || this.logs.length >= this.options.flushAfterNumberOfLogs)\n {\n this.flush();\n }\n }\n\n /**\n * Flushes logs\n */\n protected flush(): Promise<void>\n {\n let promise: Promise<void>|undefined;\n\n //no logs available\n if(!this.logs.length)\n {\n return Promise.resolve();\n }\n\n try\n {\n promise = lastValueFrom(this.restClient.log(this.logs));\n }\n catch(e)\n {\n console.log(e);\n }\n\n this.logs = [];\n\n return promise ?? Promise.resolve();\n }\n}"]}
@@ -6,7 +6,7 @@ import * as i1 from "../../types";
6
6
  /**
7
7
  * Options for rest sink
8
8
  */
9
- class RestSinkOptions {
9
+ export class RestSinkOptions {
10
10
  //######################### public properties #########################
11
11
  /**
12
12
  * Number of seconds after which should be flush called
@@ -32,12 +32,11 @@ class RestSinkOptions {
32
32
  this.immediateFlushMinLevel = immediateFlushMinLevel;
33
33
  }
34
34
  }
35
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: RestSinkOptions, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable });
36
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: RestSinkOptions, providedIn: 'root', useFactory: () => new RestSinkOptions() });
35
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: RestSinkOptions, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable });
36
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: RestSinkOptions, providedIn: 'root', useFactory: () => new RestSinkOptions() });
37
37
  }
38
- export { RestSinkOptions };
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: RestSinkOptions, decorators: [{
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: RestSinkOptions, decorators: [{
40
39
  type: Injectable,
41
40
  args: [{ providedIn: 'root', useFactory: () => new RestSinkOptions() }]
42
- }], ctorParameters: function () { return [{ type: undefined }, { type: undefined }, { type: i1.LogLevel }]; } });
41
+ }], ctorParameters: () => [{ type: undefined }, { type: undefined }, { type: i1.LogLevel }] });
43
42
  //# sourceMappingURL=restSink.options.js.map
@@ -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;AACH,MACa,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;;SAC3D,eAAe;2FAAf,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;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"]}
@@ -4,7 +4,7 @@ import * as i0 from "@angular/core";
4
4
  /**
5
5
  * Options for logger that are used during logging
6
6
  */
7
- class LoggerOptions {
7
+ export class LoggerOptions {
8
8
  //######################### public properties #########################
9
9
  /**
10
10
  * Minimal log level, that is used for logging, logs with lower log level are ignored
@@ -30,11 +30,10 @@ class LoggerOptions {
30
30
  * Array of logger sinks that do actual logging
31
31
  */
32
32
  loggerSinks = [];
33
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: LoggerOptions, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
34
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: LoggerOptions, providedIn: 'root' });
33
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: LoggerOptions, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
34
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: LoggerOptions, providedIn: 'root' });
35
35
  }
36
- export { LoggerOptions };
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: LoggerOptions, decorators: [{
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: LoggerOptions, decorators: [{
38
37
  type: Injectable,
39
38
  args: [{ providedIn: 'root' }]
40
39
  }] });
@@ -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;AACH,MACa,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;;SAClB,aAAa;2FAAb,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;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}"]}
@@ -15,7 +15,7 @@ const defaultCssClasses = {
15
15
  /**
16
16
  * Component used for displaying multibutton
17
17
  */
18
- class MultiButtonComponent {
18
+ export class MultiButtonComponent {
19
19
  _document;
20
20
  _element;
21
21
  _changeDetector;
@@ -105,14 +105,13 @@ class MultiButtonComponent {
105
105
  _removeRegistration() {
106
106
  this._document.removeEventListener('click', this._handleClickOutside);
107
107
  }
108
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", 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: "16.1.4", 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 });
108
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.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 });
109
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.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
110
  }
111
- export { MultiButtonComponent };
112
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: MultiButtonComponent, decorators: [{
111
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: MultiButtonComponent, decorators: [{
113
112
  type: Component,
114
113
  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}"] }]
115
- }], ctorParameters: function () { return [{ type: Document, decorators: [{
114
+ }], ctorParameters: () => [{ type: Document, decorators: [{
116
115
  type: Inject,
117
116
  args: [DOCUMENT]
118
117
  }] }, { type: undefined, decorators: [{
@@ -120,7 +119,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImpor
120
119
  args: [MULTI_BUTTON_CSS_CLASSES]
121
120
  }, {
122
121
  type: Optional
123
- }] }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { cssClass: [{
122
+ }] }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }], propDecorators: { cssClass: [{
124
123
  type: Input
125
124
  }], cssClasses: [{
126
125
  type: Input
@@ -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>"]}
@@ -5,13 +5,12 @@ import * as i0 from "@angular/core";
5
5
  /**
6
6
  * Module containing components for displaying multi button
7
7
  */
8
- class MultiButtonModule {
9
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: MultiButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.4", ngImport: i0, type: MultiButtonModule, declarations: [MultiButtonComponent], imports: [CommonModule], exports: [MultiButtonComponent] });
11
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: MultiButtonModule, imports: [CommonModule] });
8
+ export class MultiButtonModule {
9
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: MultiButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.1", ngImport: i0, type: MultiButtonModule, declarations: [MultiButtonComponent], imports: [CommonModule], exports: [MultiButtonComponent] });
11
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: MultiButtonModule, imports: [CommonModule] });
12
12
  }
13
- export { MultiButtonModule };
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: MultiButtonModule, decorators: [{
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: MultiButtonModule, decorators: [{
15
14
  type: NgModule,
16
15
  args: [{
17
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;AACH,MAea,iBAAiB;uGAAjB,iBAAiB;wGAAjB,iBAAiB,iBAPtB,oBAAoB,aAJpB,YAAY,aAQZ,oBAAoB;wGAGf,iBAAiB,YAXtB,YAAY;;SAWP,iBAAiB;2FAAjB,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;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}"]}
@@ -7,7 +7,7 @@ import * as i3 from "../../../../pipes/localize/localize.pipe";
7
7
  /**
8
8
  * Component that is used for displaying global progress indicator
9
9
  */
10
- class ProgressIndicatorComponent {
10
+ export class ProgressIndicatorComponent {
11
11
  _service;
12
12
  _changeDetector;
13
13
  //######################### private fields #########################
@@ -66,14 +66,13 @@ class ProgressIndicatorComponent {
66
66
  this._subscription = null;
67
67
  }
68
68
  }
69
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", 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: "16.1.4", 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 });
69
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.1", 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.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
71
  }
72
- export { ProgressIndicatorComponent };
73
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: ProgressIndicatorComponent, decorators: [{
72
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: ProgressIndicatorComponent, decorators: [{
74
73
  type: Component,
75
74
  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}"] }]
76
- }], ctorParameters: function () { return [{ type: i1.ProgressIndicatorService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { cssClass: [{
75
+ }], ctorParameters: () => [{ type: i1.ProgressIndicatorService }, { type: i0.ChangeDetectorRef }], propDecorators: { cssClass: [{
77
76
  type: Input
78
77
  }] } });
79
78
  //# sourceMappingURL=progressIndicator.component.js.map
@@ -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;AACH,MAOa,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;;SDSO,0BAA0B;2FAA1B,0BAA0B;kBAPtC,SAAS;+BAEI,oBAAoB,mBAGb,uBAAuB,CAAC,MAAM;+IA+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;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>"]}
@@ -7,7 +7,7 @@ import * as i1 from "../../services/progressIndicator.service";
7
7
  /**
8
8
  * Directive that is used for displaying progress indicator as overlay
9
9
  */
10
- class ProgressOverlayDirective {
10
+ export class ProgressOverlayDirective {
11
11
  _service;
12
12
  _element;
13
13
  _document;
@@ -141,22 +141,21 @@ class ProgressOverlayDirective {
141
141
  });
142
142
  }
143
143
  }
144
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: ProgressOverlayDirective, deps: [{ token: i1.ProgressIndicatorService }, { token: i0.ElementRef }, { token: DOCUMENT }, { token: STRING_LOCALIZATION }], target: i0.ɵɵFactoryTarget.Directive });
145
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.4", type: ProgressOverlayDirective, selector: "[progressOverlay]", inputs: { name: ["progressOverlay", "name"] }, ngImport: i0 });
144
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: ProgressOverlayDirective, deps: [{ token: i1.ProgressIndicatorService }, { token: i0.ElementRef }, { token: DOCUMENT }, { token: STRING_LOCALIZATION }], target: i0.ɵɵFactoryTarget.Directive });
145
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.1", type: ProgressOverlayDirective, selector: "[progressOverlay]", inputs: { name: ["progressOverlay", "name"] }, ngImport: i0 });
146
146
  }
147
- export { ProgressOverlayDirective };
148
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: ProgressOverlayDirective, decorators: [{
147
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: ProgressOverlayDirective, decorators: [{
149
148
  type: Directive,
150
149
  args: [{
151
150
  selector: '[progressOverlay]'
152
151
  }]
153
- }], ctorParameters: function () { return [{ type: i1.ProgressIndicatorService }, { type: i0.ElementRef }, { type: Document, decorators: [{
152
+ }], ctorParameters: () => [{ type: i1.ProgressIndicatorService }, { type: i0.ElementRef }, { type: Document, decorators: [{
154
153
  type: Inject,
155
154
  args: [DOCUMENT]
156
155
  }] }, { type: undefined, decorators: [{
157
156
  type: Inject,
158
157
  args: [STRING_LOCALIZATION]
159
- }] }]; }, propDecorators: { name: [{
158
+ }] }], propDecorators: { name: [{
160
159
  type: Input,
161
160
  args: ['progressOverlay']
162
161
  }] } });
@@ -1 +1 @@
1
- {"version":3,"file":"progressOverlay.directive.js","sourceRoot":"","sources":["../../../../../../src/modules/progressIndicator/directives/progressOverlay/progressOverlay.directive.ts"],"names":[],"mappings":"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","sourcesContent":["import {Directive, Input, OnInit, OnDestroy, ElementRef, Inject} from '@angular/core';\nimport {DOCUMENT} from '@angular/common';\nimport {Subscription} from 'rxjs';\n\nimport {ProgressIndicatorService} from '../../services/progressIndicator.service';\nimport {STRING_LOCALIZATION} from '../../../../types/tokens';\nimport {StringLocalization} from '../../../../services/stringLocalization';\n\n/**\n * Directive that is used for displaying progress indicator as overlay\n */\n@Directive(\n{\n selector: '[progressOverlay]'\n})\nexport class ProgressOverlayDirective implements OnInit, OnDestroy\n{\n //######################### private fields #########################\n \n /**\n * Previous css position value\n */\n private _notRunningCssPosition: string;\n\n /**\n * Previous css overflow value\n */\n private _notRunningOverflow: string;\n\n /**\n * Subscription for changes in ProgressIndicatorService\n */\n private _subscription: Subscription|null;\n\n /**\n * Array of messages that should be displayed\n */\n private _messages: string[];\n\n /**\n * Indication that this progress indicator is running\n */\n private _running: boolean;\n\n /**\n * Element that is displaying progress indicator overlay\n */\n private _progressElement: HTMLDivElement;\n\n /**\n * Html messages element\n */\n private _messagesElement: HTMLDivElement;\n\n /**\n * Html message elements, last three\n */\n private _lastThreeMessages: HTMLDivElement[] = [];\n\n //######################### public properties - inputs #########################\n\n /**\n * Name of progress indicator group\n */\n @Input('progressOverlay')\n public name: string;\n\n //######################### constructor #########################\n constructor(private _service: ProgressIndicatorService,\n private _element: ElementRef<HTMLElement>,\n @Inject(DOCUMENT) private _document: Document,\n @Inject(STRING_LOCALIZATION) private _localizationSvc: StringLocalization)\n {\n }\n\n //######################### public methods - implementation of OnInit #########################\n \n /**\n * Initialize component\n */\n public ngOnInit(): void\n {\n this._service.registerOverlayGroup(this.name);\n\n this._running = this._service.running[this.name];\n this._messages = this._service.messages[this.name] || [];\n this._renderProgressOverlay();\n\n this._subscription = this._service.stateChange.subscribe(name => \n {\n if(name == this.name)\n {\n this._running = this._service.running[this.name];\n this._messages = this._service.messages[this.name] || [];\n this._renderProgressOverlay();\n }\n });\n }\n\n //######################### public methods - implementation of OnDestroy #########################\n \n /**\n * Called when component is destroyed\n */\n public ngOnDestroy(): void\n {\n this._service.unregisterOverlayGroup(this.name);\n\n if(this._subscription)\n {\n this._subscription.unsubscribe();\n this._subscription = null;\n }\n }\n\n //######################### private methods #########################\n\n /**\n * Renders progress overlay\n */\n private _renderProgressOverlay()\n {\n //removes progress indicator\n if(this._progressElement && !this._running)\n {\n this._progressElement.remove();\n this._progressElement = null;\n this._messagesElement = null;\n this._lastThreeMessages = [];\n\n this._element.nativeElement.style.position = this._notRunningCssPosition;\n this._notRunningCssPosition = null;\n this._element.nativeElement.style.overflow = this._notRunningOverflow;\n this._notRunningOverflow = null;\n }\n //adds progress indicator\n else if(!this._progressElement && this._running)\n {\n this._notRunningCssPosition = this._element.nativeElement.style.position;\n this._element.nativeElement.style.position = 'relative';\n this._notRunningOverflow = this._element.nativeElement.style.overflow;\n this._element.nativeElement.style.overflow = 'hidden';\n\n this._progressElement = this._document.createElement('div');\n this._progressElement.className = 'progress-overlay-div';\n\n const spinner = this._document.createElement('div');\n spinner.className = 'spinner';\n this._progressElement.append(spinner);\n\n this._messagesElement = this._document.createElement('div');\n this._messagesElement.className = 'messages';\n this._progressElement.append(this._messagesElement);\n\n this._element.nativeElement.append(this._progressElement);\n\n }\n\n this._renderProgressMessages();\n }\n\n /**\n * Renders messages to progress overlay\n */\n private _renderProgressMessages()\n {\n if(!this._messagesElement)\n {\n return;\n }\n\n const newMessages = this._messages.slice(this._messagesElement.childNodes.length);\n\n for(const message of newMessages)\n {\n const messageDiv = this._document.createElement('div');\n messageDiv.textContent = this._localizationSvc.get(message);\n\n this._lastThreeMessages.unshift(messageDiv);\n this._messagesElement.append(messageDiv);\n \n const outMessagesDiv = this._lastThreeMessages.splice(3);\n\n outMessagesDiv.forEach(outMsg =>\n {\n outMsg.className = 'message-out';\n });\n\n this._lastThreeMessages.forEach((msg, index) =>\n {\n msg.className = `message-${index}`;\n });\n }\n }\n}"]}
1
+ {"version":3,"file":"progressOverlay.directive.js","sourceRoot":"","sources":["../../../../../../src/modules/progressIndicator/directives/progressOverlay/progressOverlay.directive.ts"],"names":[],"mappings":"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","sourcesContent":["import {Directive, Input, OnInit, OnDestroy, ElementRef, Inject} from '@angular/core';\nimport {DOCUMENT} from '@angular/common';\nimport {Subscription} from 'rxjs';\n\nimport {ProgressIndicatorService} from '../../services/progressIndicator.service';\nimport {STRING_LOCALIZATION} from '../../../../types/tokens';\nimport {StringLocalization} from '../../../../services/stringLocalization';\n\n/**\n * Directive that is used for displaying progress indicator as overlay\n */\n@Directive(\n{\n selector: '[progressOverlay]'\n})\nexport class ProgressOverlayDirective implements OnInit, OnDestroy\n{\n //######################### private fields #########################\n \n /**\n * Previous css position value\n */\n private _notRunningCssPosition: string;\n\n /**\n * Previous css overflow value\n */\n private _notRunningOverflow: string;\n\n /**\n * Subscription for changes in ProgressIndicatorService\n */\n private _subscription: Subscription|null;\n\n /**\n * Array of messages that should be displayed\n */\n private _messages: string[];\n\n /**\n * Indication that this progress indicator is running\n */\n private _running: boolean;\n\n /**\n * Element that is displaying progress indicator overlay\n */\n private _progressElement: HTMLDivElement;\n\n /**\n * Html messages element\n */\n private _messagesElement: HTMLDivElement;\n\n /**\n * Html message elements, last three\n */\n private _lastThreeMessages: HTMLDivElement[] = [];\n\n //######################### public properties - inputs #########################\n\n /**\n * Name of progress indicator group\n */\n @Input('progressOverlay')\n public name: string;\n\n //######################### constructor #########################\n constructor(private _service: ProgressIndicatorService,\n private _element: ElementRef<HTMLElement>,\n @Inject(DOCUMENT) private _document: Document,\n @Inject(STRING_LOCALIZATION) private _localizationSvc: StringLocalization)\n {\n }\n\n //######################### public methods - implementation of OnInit #########################\n \n /**\n * Initialize component\n */\n public ngOnInit(): void\n {\n this._service.registerOverlayGroup(this.name);\n\n this._running = this._service.running[this.name];\n this._messages = this._service.messages[this.name] || [];\n this._renderProgressOverlay();\n\n this._subscription = this._service.stateChange.subscribe(name => \n {\n if(name == this.name)\n {\n this._running = this._service.running[this.name];\n this._messages = this._service.messages[this.name] || [];\n this._renderProgressOverlay();\n }\n });\n }\n\n //######################### public methods - implementation of OnDestroy #########################\n \n /**\n * Called when component is destroyed\n */\n public ngOnDestroy(): void\n {\n this._service.unregisterOverlayGroup(this.name);\n\n if(this._subscription)\n {\n this._subscription.unsubscribe();\n this._subscription = null;\n }\n }\n\n //######################### private methods #########################\n\n /**\n * Renders progress overlay\n */\n private _renderProgressOverlay()\n {\n //removes progress indicator\n if(this._progressElement && !this._running)\n {\n this._progressElement.remove();\n this._progressElement = null;\n this._messagesElement = null;\n this._lastThreeMessages = [];\n\n this._element.nativeElement.style.position = this._notRunningCssPosition;\n this._notRunningCssPosition = null;\n this._element.nativeElement.style.overflow = this._notRunningOverflow;\n this._notRunningOverflow = null;\n }\n //adds progress indicator\n else if(!this._progressElement && this._running)\n {\n this._notRunningCssPosition = this._element.nativeElement.style.position;\n this._element.nativeElement.style.position = 'relative';\n this._notRunningOverflow = this._element.nativeElement.style.overflow;\n this._element.nativeElement.style.overflow = 'hidden';\n\n this._progressElement = this._document.createElement('div');\n this._progressElement.className = 'progress-overlay-div';\n\n const spinner = this._document.createElement('div');\n spinner.className = 'spinner';\n this._progressElement.append(spinner);\n\n this._messagesElement = this._document.createElement('div');\n this._messagesElement.className = 'messages';\n this._progressElement.append(this._messagesElement);\n\n this._element.nativeElement.append(this._progressElement);\n\n }\n\n this._renderProgressMessages();\n }\n\n /**\n * Renders messages to progress overlay\n */\n private _renderProgressMessages()\n {\n if(!this._messagesElement)\n {\n return;\n }\n\n const newMessages = this._messages.slice(this._messagesElement.childNodes.length);\n\n for(const message of newMessages)\n {\n const messageDiv = this._document.createElement('div');\n messageDiv.textContent = this._localizationSvc.get(message);\n\n this._lastThreeMessages.unshift(messageDiv);\n this._messagesElement.append(messageDiv);\n \n const outMessagesDiv = this._lastThreeMessages.splice(3);\n\n outMessagesDiv.forEach(outMsg =>\n {\n outMsg.className = 'message-out';\n });\n\n this._lastThreeMessages.forEach((msg, index) =>\n {\n msg.className = `message-${index}`;\n });\n }\n }\n}"]}
@@ -9,7 +9,7 @@ import * as i1 from "../services/progressIndicator.service";
9
9
  /**
10
10
  * ProgressInterceptor used for intercepting http requests and displaying progress indicatior
11
11
  */
12
- class ProgressInterceptor {
12
+ export class ProgressInterceptor {
13
13
  _indicatorSvc;
14
14
  //######################### constructors #########################
15
15
  constructor(_indicatorSvc) {
@@ -38,13 +38,12 @@ class ProgressInterceptor {
38
38
  }
39
39
  }, () => this._indicatorSvc.hideProgress(req.context.get(PROGRESS_INDICATOR_GROUP_NAME))));
40
40
  }
41
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: ProgressInterceptor, deps: [{ token: i1.ProgressIndicatorService }], target: i0.ɵɵFactoryTarget.Injectable });
42
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: ProgressInterceptor });
41
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: ProgressInterceptor, deps: [{ token: i1.ProgressIndicatorService }], target: i0.ɵɵFactoryTarget.Injectable });
42
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: ProgressInterceptor });
43
43
  }
44
- export { ProgressInterceptor };
45
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: ProgressInterceptor, decorators: [{
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: ProgressInterceptor, decorators: [{
46
45
  type: Injectable
47
- }], ctorParameters: function () { return [{ type: i1.ProgressIndicatorService }]; } });
46
+ }], ctorParameters: () => [{ type: i1.ProgressIndicatorService }] });
48
47
  /**
49
48
  * Progress interceptor provider
50
49
  */