@mediusinc/mng-commons 5.0.0-rc.1 → 5.0.0-rc.2

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 (123) hide show
  1. package/core/router/route-builder.d.ts +149 -26
  2. package/core/router/routes-builder.d.ts +28 -13
  3. package/esm2022/core/components/notification/notification-wrapper.component.mjs +3 -3
  4. package/esm2022/core/components/pages/error/error.page.component.mjs +3 -3
  5. package/esm2022/core/components/pages/not-found/not-found.page.component.mjs +3 -3
  6. package/esm2022/core/directives/component.directive.mjs +3 -3
  7. package/esm2022/core/directives/dialog-keydown-handler.directive.mjs +3 -3
  8. package/esm2022/core/directives/template.directive.mjs +3 -3
  9. package/esm2022/core/pipes/boolean.pipe.mjs +3 -3
  10. package/esm2022/core/pipes/class-map.pipe.mjs +3 -3
  11. package/esm2022/core/pipes/enum.pipe.mjs +3 -3
  12. package/esm2022/core/pipes/enumerate-async.pipe.mjs +3 -3
  13. package/esm2022/core/pipes/enumerate.pipe.mjs +3 -3
  14. package/esm2022/core/pipes/getter.pipe.mjs +3 -3
  15. package/esm2022/core/pipes/i18n-property.pipe.mjs +3 -3
  16. package/esm2022/core/pipes/json-path.pipe.mjs +3 -3
  17. package/esm2022/core/pipes/parametrize.pipe.mjs +3 -3
  18. package/esm2022/core/pipes/template.pipe.mjs +3 -3
  19. package/esm2022/core/router/route-builder.mjs +211 -84
  20. package/esm2022/core/router/routes-builder.mjs +41 -43
  21. package/esm2022/core/security/permission.service.mjs +3 -3
  22. package/esm2022/core/services/commons-init.service.mjs +3 -3
  23. package/esm2022/core/services/commons-router.service.mjs +3 -3
  24. package/esm2022/core/services/commons.service.mjs +3 -3
  25. package/esm2022/core/services/local-storage-config.service.mjs +3 -3
  26. package/esm2022/form/components/autocomplete/autocomplete.component.mjs +36 -42
  27. package/esm2022/form/components/date-range/date-range.component.mjs +3 -3
  28. package/esm2022/form/components/dropdown/dropdown.component.mjs +3 -3
  29. package/esm2022/form/directives/input-trim.directive.mjs +3 -3
  30. package/esm2022/table/components/column-filter-full/column-filter-full.component.mjs +3 -3
  31. package/esm2022/table/components/column-value/column-value.component.mjs +3 -3
  32. package/esm2022/table/components/table/table.component.mjs +3 -3
  33. package/esm2022/table/pipes/locale-default-row-class.pipe.mjs +3 -3
  34. package/esm2022/table/pipes/table-column-filter-class.pipe.mjs +3 -3
  35. package/esm2022/table/services/data-list.service.mjs +3 -3
  36. package/esm2022/tableview/action/components/action/action.component.mjs +3 -3
  37. package/esm2022/tableview/action/components/editor/action-editor.component.mjs +3 -3
  38. package/esm2022/tableview/action/components/editor/injector-context/action-editor-injector-context.component.mjs +20 -19
  39. package/esm2022/tableview/action/components/localization/data-language-dropdown.component.mjs +3 -3
  40. package/esm2022/tableview/action/components/route/action-route.component.mjs +6 -5
  41. package/esm2022/tableview/action/components/table/action-table.component.mjs +3 -3
  42. package/esm2022/tableview/action/models/execution/action-instance.model.mjs +1 -1
  43. package/esm2022/tableview/action/services/action-executor.service.mjs +2 -2
  44. package/esm2022/tableview/action/services/component-action-executor.service.mjs +3 -3
  45. package/esm2022/tableview/action/services/data-provider-executor.service.mjs +3 -3
  46. package/esm2022/tableview/action/services/navigation.service.mjs +3 -3
  47. package/esm2022/tableview/action/services/root-action-executor.service.mjs +3 -3
  48. package/esm2022/tableview/action/services/view-container.service.mjs +3 -3
  49. package/esm2022/tableview/api/action/descriptors/action-editor.descriptor.mjs +9 -1
  50. package/esm2022/tableview/api/action/models/execution/action-instance.model.mjs +1 -1
  51. package/esm2022/tableview/api/editor/descriptors/editor.descriptor.mjs +18 -29
  52. package/esm2022/tableview/api/editor/descriptors/field-base.descriptor.mjs +1 -1
  53. package/esm2022/tableview/api/editor/descriptors/field-group.descriptor.mjs +3 -3
  54. package/esm2022/tableview/api/editor/descriptors/field-validation.descriptor.mjs +1 -1
  55. package/esm2022/tableview/api/editor/descriptors/field.descriptor.mjs +36 -7
  56. package/esm2022/tableview/api/editor/helpers/field-validators.mjs +15 -25
  57. package/esm2022/tableview/api/editor/models/editor-fields.model.mjs +1 -1
  58. package/esm2022/tableview/api/editor/models/field.model.mjs +1 -1
  59. package/esm2022/tableview/api/editor/models/form-editor.event.mjs +1 -1
  60. package/esm2022/tableview/api/editor/models/form-editor.interface.mjs +1 -1
  61. package/esm2022/tableview/api/editor/models/formly-custom-field.model.mjs +3 -3
  62. package/esm2022/tableview/api/editor/models/formly-field.model.mjs +1 -1
  63. package/esm2022/tableview/api/tableview/descriptors/tableview.descriptor.mjs +12 -19
  64. package/esm2022/tableview/editor/components/editor/form-editor.component.mjs +157 -137
  65. package/esm2022/tableview/editor/components/formly/fields/formly-field-action/formly-field-action.component.mjs +3 -3
  66. package/esm2022/tableview/editor/components/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.mjs +5 -7
  67. package/esm2022/tableview/editor/components/formly/fields/formly-field-custom/formly-field-custom.component.mjs +3 -3
  68. package/esm2022/tableview/editor/components/formly/fields/formly-field-datepicker/formly-field-datepicker.component.mjs +103 -0
  69. package/esm2022/tableview/editor/components/formly/fields/formly-field-dropdown/formly-field-dropdown.component.mjs +5 -7
  70. package/esm2022/tableview/editor/components/formly/fields/formly-field-fieldset/formly-field-fieldset.component.mjs +3 -3
  71. package/esm2022/tableview/editor/components/formly/fields/formly-field-input/formly-field-input.component.mjs +33 -50
  72. package/esm2022/tableview/editor/components/formly/fields/formly-field-label/formly-field-label.component.mjs +3 -3
  73. package/esm2022/tableview/editor/components/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.mjs +5 -7
  74. package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +6 -8
  75. package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.mjs +14 -13
  76. package/esm2022/tableview/editor/components/formly/fields/formly-field-tabs/formly-field-tabs.component.mjs +3 -3
  77. package/esm2022/tableview/editor/components/formly/wrappers/formly-field-no-label-wrapper/formly-field-no-label-wrapper.component.mjs +3 -3
  78. package/esm2022/tableview/editor/components/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.mjs +3 -3
  79. package/esm2022/tableview/editor/helpers/editor-formly.mjs +62 -54
  80. package/esm2022/tableview/editor/helpers/formly-config.mjs +5 -3
  81. package/esm2022/tableview/editor/models/formly-config.model.mjs +1 -1
  82. package/esm2022/tableview/tableview/components/route/tableview-route.component.mjs +10 -10
  83. package/esm2022/tableview/tableview/components/tableview/tableview.component.mjs +26 -43
  84. package/esm2022/tableview/tableview/router/tableview-route-builder.mjs +17 -43
  85. package/fesm2022/mediusinc-mng-commons-core.mjs +311 -186
  86. package/fesm2022/mediusinc-mng-commons-core.mjs.map +1 -1
  87. package/fesm2022/mediusinc-mng-commons-form.mjs +46 -51
  88. package/fesm2022/mediusinc-mng-commons-form.mjs.map +1 -1
  89. package/fesm2022/mediusinc-mng-commons-table.mjs +18 -18
  90. package/fesm2022/mediusinc-mng-commons-tableview-api.mjs +89 -80
  91. package/fesm2022/mediusinc-mng-commons-tableview-api.mjs.map +1 -1
  92. package/fesm2022/mediusinc-mng-commons-tableview.mjs +497 -435
  93. package/fesm2022/mediusinc-mng-commons-tableview.mjs.map +1 -1
  94. package/form/components/autocomplete/autocomplete.component.d.ts +8 -7
  95. package/package.json +1 -1
  96. package/tableview/action/components/editor/injector-context/action-editor-injector-context.component.d.ts +1 -3
  97. package/tableview/action/components/route/action-route.component.d.ts +1 -1
  98. package/tableview/action/models/execution/action-instance.model.d.ts +2 -1
  99. package/tableview/api/action/descriptors/action-editor.descriptor.d.ts +8 -0
  100. package/tableview/api/action/models/execution/action-instance.model.d.ts +2 -1
  101. package/tableview/api/editor/descriptors/editor.descriptor.d.ts +14 -19
  102. package/tableview/api/editor/descriptors/field-base.descriptor.d.ts +24 -24
  103. package/tableview/api/editor/descriptors/field-group.descriptor.d.ts +5 -5
  104. package/tableview/api/editor/descriptors/field-validation.descriptor.d.ts +10 -13
  105. package/tableview/api/editor/descriptors/field.descriptor.d.ts +15 -0
  106. package/tableview/api/editor/helpers/field-validators.d.ts +6 -2
  107. package/tableview/api/editor/models/editor-fields.model.d.ts +6 -4
  108. package/tableview/api/editor/models/field.model.d.ts +16 -7
  109. package/tableview/api/editor/models/form-editor.event.d.ts +6 -4
  110. package/tableview/api/editor/models/form-editor.interface.d.ts +37 -8
  111. package/tableview/api/editor/models/formly-custom-field.model.d.ts +1 -1
  112. package/tableview/api/editor/models/formly-field.model.d.ts +9 -7
  113. package/tableview/api/tableview/descriptors/tableview.descriptor.d.ts +6 -7
  114. package/tableview/editor/components/editor/form-editor.component.d.ts +51 -35
  115. package/tableview/editor/components/formly/fields/formly-field-datepicker/formly-field-datepicker.component.d.ts +22 -0
  116. package/tableview/editor/components/formly/fields/formly-field-input/formly-field-input.component.d.ts +5 -7
  117. package/tableview/editor/components/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.d.ts +0 -1
  118. package/tableview/editor/helpers/editor-formly.d.ts +11 -10
  119. package/tableview/editor/models/formly-config.model.d.ts +1 -1
  120. package/tableview/tableview/components/route/tableview-route.component.d.ts +2 -2
  121. package/tableview/tableview/components/tableview/tableview.component.d.ts +11 -10
  122. package/tableview/tableview/router/tableview-route-builder.d.ts +7 -13
  123. package/version-info.json +11 -0
@@ -56,10 +56,10 @@ class DialogKeydownHandlerDirective {
56
56
  }
57
57
  this.dialogsWithKeydownListener.forEach(c => c.bindDocumentKeydownListener());
58
58
  }
59
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: DialogKeydownHandlerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
60
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.2", type: DialogKeydownHandlerDirective, isStandalone: true, selector: "[mngDialogKeydownHandler]", ngImport: i0 }); }
59
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: DialogKeydownHandlerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
60
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.4", type: DialogKeydownHandlerDirective, isStandalone: true, selector: "[mngDialogKeydownHandler]", ngImport: i0 }); }
61
61
  }
62
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: DialogKeydownHandlerDirective, decorators: [{
62
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: DialogKeydownHandlerDirective, decorators: [{
63
63
  type: Directive,
64
64
  args: [{
65
65
  standalone: true,
@@ -97,10 +97,10 @@ class NotificationWrapperComponent {
97
97
  this.dialogNotification.set(null);
98
98
  }
99
99
  }
100
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NotificationWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
101
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.2", type: NotificationWrapperComponent, isStandalone: true, selector: "mng-notification-wrapper", ngImport: i0, template: "<ng-content></ng-content>\n<p-confirmDialog appendTo=\"body\" [baseZIndex]=\"50\"></p-confirmDialog>\n\n<p-toast [baseZIndex]=\"50\">\n <ng-template let-message pTemplate=\"message\">\n <span [class]=\"'p-toast-message-icon pi ' + getNotificationIconClass(message)\"></span>\n <div class=\"p-toast-message-text\">\n <div class=\"p-toast-summary\">{{ message.summary }}</div>\n <div class=\"p-toast-detail\">{{ message.detail.slice(0, notificationCutoff) + (message.detail.length > notificationCutoff ? '...' : '') }}</div>\n @if (message.detail.length > notificationCutoff) {\n <div (click)=\"onShowNotificationInDialog(message)\" class=\"p-link font-semibold text-sm mt-2 flex align-items-center\">\n <i class=\"pi pi-chevron-down mr-1\"></i>{{ 'notification.details' | translate }}\n </div>\n }\n </div>\n </ng-template>\n</p-toast>\n\n<p-dialog\n [visible]=\"isDialogNotificationVisible()\"\n (visibleChange)=\"onDialogNotificationVisibilityChange($event)\"\n [styleClass]=\"'p-fluid mng-dialog mng-dialog-xs ' + 'mng-message-detail-dialog mng-message-detail-dialog-' + (dialogNotification()?.severity ?? '')\">\n <ng-template pTemplate=\"header\" mngDialogKeydownHandler>\n <span class=\"p-dialog-title font-bold mng-dialog-success\">\n <span [class]=\"'mr-2 pi ' + getNotificationIconClass(dialogNotification())\"></span>\n {{ dialogNotification()?.summary ?? '' }}\n </span>\n </ng-template>\n <div>\n {{ dialogNotification()?.detail ?? '' }}\n </div>\n</p-dialog>\n", dependencies: [{ kind: "ngmodule", type: ToastModule }, { kind: "component", type: i1.Toast, selector: "p-toast", inputs: ["key", "autoZIndex", "baseZIndex", "life", "style", "styleClass", "position", "preventOpenDuplicates", "preventDuplicates", "showTransformOptions", "hideTransformOptions", "showTransitionOptions", "hideTransitionOptions", "breakpoints"], outputs: ["onClose"] }, { kind: "directive", type: i2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: ConfirmDialogModule }, { kind: "component", type: i3.ConfirmDialog, selector: "p-confirmDialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "visible", "position"], outputs: ["onHide"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3$1.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: DialogModule }, { kind: "component", type: i5.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "visible", "style", "position"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "directive", type: DialogKeydownHandlerDirective, selector: "[mngDialogKeydownHandler]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
100
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: NotificationWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
101
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.4", type: NotificationWrapperComponent, isStandalone: true, selector: "mng-notification-wrapper", ngImport: i0, template: "<ng-content></ng-content>\n<p-confirmDialog appendTo=\"body\" [baseZIndex]=\"50\"></p-confirmDialog>\n\n<p-toast [baseZIndex]=\"50\">\n <ng-template let-message pTemplate=\"message\">\n <span [class]=\"'p-toast-message-icon pi ' + getNotificationIconClass(message)\"></span>\n <div class=\"p-toast-message-text\">\n <div class=\"p-toast-summary\">{{ message.summary }}</div>\n <div class=\"p-toast-detail\">{{ message.detail.slice(0, notificationCutoff) + (message.detail.length > notificationCutoff ? '...' : '') }}</div>\n @if (message.detail.length > notificationCutoff) {\n <div (click)=\"onShowNotificationInDialog(message)\" class=\"p-link font-semibold text-sm mt-2 flex align-items-center\">\n <i class=\"pi pi-chevron-down mr-1\"></i>{{ 'notification.details' | translate }}\n </div>\n }\n </div>\n </ng-template>\n</p-toast>\n\n<p-dialog\n [visible]=\"isDialogNotificationVisible()\"\n (visibleChange)=\"onDialogNotificationVisibilityChange($event)\"\n [styleClass]=\"'p-fluid mng-dialog mng-dialog-xs ' + 'mng-message-detail-dialog mng-message-detail-dialog-' + (dialogNotification()?.severity ?? '')\">\n <ng-template pTemplate=\"header\" mngDialogKeydownHandler>\n <span class=\"p-dialog-title font-bold mng-dialog-success\">\n <span [class]=\"'mr-2 pi ' + getNotificationIconClass(dialogNotification())\"></span>\n {{ dialogNotification()?.summary ?? '' }}\n </span>\n </ng-template>\n <div>\n {{ dialogNotification()?.detail ?? '' }}\n </div>\n</p-dialog>\n", dependencies: [{ kind: "ngmodule", type: ToastModule }, { kind: "component", type: i1.Toast, selector: "p-toast", inputs: ["key", "autoZIndex", "baseZIndex", "life", "style", "styleClass", "position", "preventOpenDuplicates", "preventDuplicates", "showTransformOptions", "hideTransformOptions", "showTransitionOptions", "hideTransitionOptions", "breakpoints"], outputs: ["onClose"] }, { kind: "directive", type: i2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: ConfirmDialogModule }, { kind: "component", type: i3.ConfirmDialog, selector: "p-confirmDialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "visible", "position"], outputs: ["onHide"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3$1.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: DialogModule }, { kind: "component", type: i5.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "visible", "style", "position"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "directive", type: DialogKeydownHandlerDirective, selector: "[mngDialogKeydownHandler]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
102
102
  }
103
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NotificationWrapperComponent, decorators: [{
103
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: NotificationWrapperComponent, decorators: [{
104
104
  type: Component,
105
105
  args: [{ selector: 'mng-notification-wrapper', standalone: true, imports: [ToastModule, ConfirmDialogModule, TranslateModule, DialogModule, DialogKeydownHandlerDirective], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n<p-confirmDialog appendTo=\"body\" [baseZIndex]=\"50\"></p-confirmDialog>\n\n<p-toast [baseZIndex]=\"50\">\n <ng-template let-message pTemplate=\"message\">\n <span [class]=\"'p-toast-message-icon pi ' + getNotificationIconClass(message)\"></span>\n <div class=\"p-toast-message-text\">\n <div class=\"p-toast-summary\">{{ message.summary }}</div>\n <div class=\"p-toast-detail\">{{ message.detail.slice(0, notificationCutoff) + (message.detail.length > notificationCutoff ? '...' : '') }}</div>\n @if (message.detail.length > notificationCutoff) {\n <div (click)=\"onShowNotificationInDialog(message)\" class=\"p-link font-semibold text-sm mt-2 flex align-items-center\">\n <i class=\"pi pi-chevron-down mr-1\"></i>{{ 'notification.details' | translate }}\n </div>\n }\n </div>\n </ng-template>\n</p-toast>\n\n<p-dialog\n [visible]=\"isDialogNotificationVisible()\"\n (visibleChange)=\"onDialogNotificationVisibilityChange($event)\"\n [styleClass]=\"'p-fluid mng-dialog mng-dialog-xs ' + 'mng-message-detail-dialog mng-message-detail-dialog-' + (dialogNotification()?.severity ?? '')\">\n <ng-template pTemplate=\"header\" mngDialogKeydownHandler>\n <span class=\"p-dialog-title font-bold mng-dialog-success\">\n <span [class]=\"'mr-2 pi ' + getNotificationIconClass(dialogNotification())\"></span>\n {{ dialogNotification()?.summary ?? '' }}\n </span>\n </ng-template>\n <div>\n {{ dialogNotification()?.detail ?? '' }}\n </div>\n</p-dialog>\n" }]
106
106
  }] });
@@ -769,10 +769,10 @@ class CommonsService {
769
769
  titlePieces.push(this.translate.instant('app.name'));
770
770
  return titlePieces.join(' - ');
771
771
  }
772
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: CommonsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
773
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: CommonsService }); }
772
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CommonsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
773
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CommonsService }); }
774
774
  }
775
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: CommonsService, decorators: [{
775
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CommonsService, decorators: [{
776
776
  type: Injectable
777
777
  }] });
778
778
 
@@ -780,10 +780,10 @@ class ErrorPageComponent {
780
780
  constructor(commons) {
781
781
  this.commons = commons;
782
782
  }
783
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ErrorPageComponent, deps: [{ token: CommonsService }], target: i0.ɵɵFactoryTarget.Component }); }
784
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: ErrorPageComponent, isStandalone: true, selector: "mng-error-page", ngImport: i0, template: "<div [class]=\"'exception-body min-h-screen ' + (commons.colorSchemeIsLight ? 'layout-light' : 'layout-dark')\">\n <div class=\"exception-container min-h-screen flex align-items-center justify-content-center flex-column bg-auto md:bg-contain bg-no-repeat\">\n <div class=\"exception-panel text-center flex align-items-center justify-content-center flex-column\">\n <h1 class=\"text-red-400 mb-0\">{{ 'pages.notFound.title' | translate }}</h1>\n <h3 class=\"text-red-300\">{{ 'pages.notFound.subtitle' | translate }}</h3>\n <button type=\"button\" pButton [label]=\"'general.returnHome' | translate\" [routerLink]=\"['/']\"></button>\n </div>\n <div class=\"exception-footer align-items-center flex\">\n <img [src]=\"commons.colorSchemeIsLight ? commons.appLogoDark : commons.appLogoLight\" class=\"exception-logo\" alt=\"App logo\" />\n <img [src]=\"commons.colorSchemeIsLight ? commons.appLogoNameDark : commons.appLogoNameLight\" class=\"exception-appname ml-3\" alt=\"App name\" />\n </div>\n </div>\n</div>\n", styles: [".exception-body{background:var(--surface-ground)}.exception-body .exception-container{background:var(--exception-pages-image);background-repeat:no-repeat;background-size:contain;box-sizing:border-box}.exception-body .exception-container .exception-panel{box-sizing:border-box;flex-grow:1;margin-top:3rem;margin-bottom:3rem}.exception-body .exception-container .exception-panel h1{font-size:140px;font-weight:900;text-shadow:0 0 50px rgba(252,97,97,.2)}.exception-body .exception-container .exception-panel h3{font-size:80px;font-weight:900;margin-top:-90px;margin-bottom:50px}.exception-body .exception-container .exception-panel button{margin-top:50px}.exception-body .exception-container .exception-footer{margin-bottom:2rem}.exception-body .exception-container .exception-footer .exception-logo{width:34px}.exception-body .exception-container .exception-footer .exception-appname{width:72px}\n"], dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i2$1.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3$1.TranslatePipe, name: "translate" }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
783
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ErrorPageComponent, deps: [{ token: CommonsService }], target: i0.ɵɵFactoryTarget.Component }); }
784
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ErrorPageComponent, isStandalone: true, selector: "mng-error-page", ngImport: i0, template: "<div [class]=\"'exception-body min-h-screen ' + (commons.colorSchemeIsLight ? 'layout-light' : 'layout-dark')\">\n <div class=\"exception-container min-h-screen flex align-items-center justify-content-center flex-column bg-auto md:bg-contain bg-no-repeat\">\n <div class=\"exception-panel text-center flex align-items-center justify-content-center flex-column\">\n <h1 class=\"text-red-400 mb-0\">{{ 'pages.notFound.title' | translate }}</h1>\n <h3 class=\"text-red-300\">{{ 'pages.notFound.subtitle' | translate }}</h3>\n <button type=\"button\" pButton [label]=\"'general.returnHome' | translate\" [routerLink]=\"['/']\"></button>\n </div>\n <div class=\"exception-footer align-items-center flex\">\n <img [src]=\"commons.colorSchemeIsLight ? commons.appLogoDark : commons.appLogoLight\" class=\"exception-logo\" alt=\"App logo\" />\n <img [src]=\"commons.colorSchemeIsLight ? commons.appLogoNameDark : commons.appLogoNameLight\" class=\"exception-appname ml-3\" alt=\"App name\" />\n </div>\n </div>\n</div>\n", styles: [".exception-body{background:var(--surface-ground)}.exception-body .exception-container{background:var(--exception-pages-image);background-repeat:no-repeat;background-size:contain;box-sizing:border-box}.exception-body .exception-container .exception-panel{box-sizing:border-box;flex-grow:1;margin-top:3rem;margin-bottom:3rem}.exception-body .exception-container .exception-panel h1{font-size:140px;font-weight:900;text-shadow:0 0 50px rgba(252,97,97,.2)}.exception-body .exception-container .exception-panel h3{font-size:80px;font-weight:900;margin-top:-90px;margin-bottom:50px}.exception-body .exception-container .exception-panel button{margin-top:50px}.exception-body .exception-container .exception-footer{margin-bottom:2rem}.exception-body .exception-container .exception-footer .exception-logo{width:34px}.exception-body .exception-container .exception-footer .exception-appname{width:72px}\n"], dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i2$1.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3$1.TranslatePipe, name: "translate" }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
785
785
  }
786
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ErrorPageComponent, decorators: [{
786
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ErrorPageComponent, decorators: [{
787
787
  type: Component,
788
788
  args: [{ standalone: true, selector: 'mng-error-page', imports: [ButtonModule, TranslateModule, RouterLink], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [class]=\"'exception-body min-h-screen ' + (commons.colorSchemeIsLight ? 'layout-light' : 'layout-dark')\">\n <div class=\"exception-container min-h-screen flex align-items-center justify-content-center flex-column bg-auto md:bg-contain bg-no-repeat\">\n <div class=\"exception-panel text-center flex align-items-center justify-content-center flex-column\">\n <h1 class=\"text-red-400 mb-0\">{{ 'pages.notFound.title' | translate }}</h1>\n <h3 class=\"text-red-300\">{{ 'pages.notFound.subtitle' | translate }}</h3>\n <button type=\"button\" pButton [label]=\"'general.returnHome' | translate\" [routerLink]=\"['/']\"></button>\n </div>\n <div class=\"exception-footer align-items-center flex\">\n <img [src]=\"commons.colorSchemeIsLight ? commons.appLogoDark : commons.appLogoLight\" class=\"exception-logo\" alt=\"App logo\" />\n <img [src]=\"commons.colorSchemeIsLight ? commons.appLogoNameDark : commons.appLogoNameLight\" class=\"exception-appname ml-3\" alt=\"App name\" />\n </div>\n </div>\n</div>\n", styles: [".exception-body{background:var(--surface-ground)}.exception-body .exception-container{background:var(--exception-pages-image);background-repeat:no-repeat;background-size:contain;box-sizing:border-box}.exception-body .exception-container .exception-panel{box-sizing:border-box;flex-grow:1;margin-top:3rem;margin-bottom:3rem}.exception-body .exception-container .exception-panel h1{font-size:140px;font-weight:900;text-shadow:0 0 50px rgba(252,97,97,.2)}.exception-body .exception-container .exception-panel h3{font-size:80px;font-weight:900;margin-top:-90px;margin-bottom:50px}.exception-body .exception-container .exception-panel button{margin-top:50px}.exception-body .exception-container .exception-footer{margin-bottom:2rem}.exception-body .exception-container .exception-footer .exception-logo{width:34px}.exception-body .exception-container .exception-footer .exception-appname{width:72px}\n"] }]
789
789
  }], ctorParameters: () => [{ type: CommonsService }] });
@@ -792,10 +792,10 @@ class NotFoundPageComponent {
792
792
  constructor(commons) {
793
793
  this.commons = commons;
794
794
  }
795
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NotFoundPageComponent, deps: [{ token: CommonsService }], target: i0.ɵɵFactoryTarget.Component }); }
796
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: NotFoundPageComponent, isStandalone: true, selector: "mng-not-found-page", ngImport: i0, template: "<div [class]=\"'exception-body min-h-screen ' + (commons.colorSchemeIsLight ? 'layout-light' : 'layout-dark')\">\n <div class=\"exception-container min-h-screen flex align-items-center justify-content-center flex-column bg-auto md:bg-contain bg-no-repeat\">\n <div class=\"exception-panel text-center flex align-items-center justify-content-center flex-column\">\n <h1 class=\"text-red-400 mb-0\">{{ 'pages.notFound.title' | translate }}</h1>\n <h3 class=\"text-red-300\">{{ 'pages.notFound.subtitle' | translate }}</h3>\n <p>{{ 'pages.notFound.message' | translate }}</p>\n <button type=\"button\" pButton [label]=\"'general.returnHome' | translate\" [routerLink]=\"['/']\"></button>\n </div>\n <div class=\"exception-footer align-items-center flex\">\n <img [src]=\"commons.colorSchemeIsLight ? commons.appLogoDark : commons.appLogoLight\" class=\"exception-logo\" alt=\"App logo\" />\n <img [src]=\"commons.colorSchemeIsLight ? commons.appLogoNameDark : commons.appLogoNameLight\" class=\"exception-appname ml-3\" alt=\"App name\" />\n </div>\n </div>\n</div>\n", styles: [".exception-body{background:var(--surface-ground)}.exception-body .exception-container{background:var(--exception-pages-image);background-repeat:no-repeat;background-size:contain;box-sizing:border-box}.exception-body .exception-container .exception-panel{box-sizing:border-box;flex-grow:1;margin-top:3rem;margin-bottom:3rem}.exception-body .exception-container .exception-panel h1{font-size:140px;font-weight:900;text-shadow:0 0 50px rgba(252,97,97,.2)}.exception-body .exception-container .exception-panel h3{font-size:80px;font-weight:900;margin-top:-90px;margin-bottom:50px}.exception-body .exception-container .exception-panel p{font-size:24px;font-weight:400;max-width:320px}.exception-body .exception-container .exception-panel button{margin-top:50px}.exception-body .exception-container .exception-footer{margin-bottom:2rem}.exception-body .exception-container .exception-footer .exception-logo{width:34px}.exception-body .exception-container .exception-footer .exception-appname{width:72px}\n"], dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i2$1.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
795
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: NotFoundPageComponent, deps: [{ token: CommonsService }], target: i0.ɵɵFactoryTarget.Component }); }
796
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: NotFoundPageComponent, isStandalone: true, selector: "mng-not-found-page", ngImport: i0, template: "<div [class]=\"'exception-body min-h-screen ' + (commons.colorSchemeIsLight ? 'layout-light' : 'layout-dark')\">\n <div class=\"exception-container min-h-screen flex align-items-center justify-content-center flex-column bg-auto md:bg-contain bg-no-repeat\">\n <div class=\"exception-panel text-center flex align-items-center justify-content-center flex-column\">\n <h1 class=\"text-red-400 mb-0\">{{ 'pages.notFound.title' | translate }}</h1>\n <h3 class=\"text-red-300\">{{ 'pages.notFound.subtitle' | translate }}</h3>\n <p>{{ 'pages.notFound.message' | translate }}</p>\n <button type=\"button\" pButton [label]=\"'general.returnHome' | translate\" [routerLink]=\"['/']\"></button>\n </div>\n <div class=\"exception-footer align-items-center flex\">\n <img [src]=\"commons.colorSchemeIsLight ? commons.appLogoDark : commons.appLogoLight\" class=\"exception-logo\" alt=\"App logo\" />\n <img [src]=\"commons.colorSchemeIsLight ? commons.appLogoNameDark : commons.appLogoNameLight\" class=\"exception-appname ml-3\" alt=\"App name\" />\n </div>\n </div>\n</div>\n", styles: [".exception-body{background:var(--surface-ground)}.exception-body .exception-container{background:var(--exception-pages-image);background-repeat:no-repeat;background-size:contain;box-sizing:border-box}.exception-body .exception-container .exception-panel{box-sizing:border-box;flex-grow:1;margin-top:3rem;margin-bottom:3rem}.exception-body .exception-container .exception-panel h1{font-size:140px;font-weight:900;text-shadow:0 0 50px rgba(252,97,97,.2)}.exception-body .exception-container .exception-panel h3{font-size:80px;font-weight:900;margin-top:-90px;margin-bottom:50px}.exception-body .exception-container .exception-panel p{font-size:24px;font-weight:400;max-width:320px}.exception-body .exception-container .exception-panel button{margin-top:50px}.exception-body .exception-container .exception-footer{margin-bottom:2rem}.exception-body .exception-container .exception-footer .exception-logo{width:34px}.exception-body .exception-container .exception-footer .exception-appname{width:72px}\n"], dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i2$1.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
797
797
  }
798
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: NotFoundPageComponent, decorators: [{
798
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: NotFoundPageComponent, decorators: [{
799
799
  type: Component,
800
800
  args: [{ standalone: true, selector: 'mng-not-found-page', imports: [ButtonModule, RouterLink, TranslateModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [class]=\"'exception-body min-h-screen ' + (commons.colorSchemeIsLight ? 'layout-light' : 'layout-dark')\">\n <div class=\"exception-container min-h-screen flex align-items-center justify-content-center flex-column bg-auto md:bg-contain bg-no-repeat\">\n <div class=\"exception-panel text-center flex align-items-center justify-content-center flex-column\">\n <h1 class=\"text-red-400 mb-0\">{{ 'pages.notFound.title' | translate }}</h1>\n <h3 class=\"text-red-300\">{{ 'pages.notFound.subtitle' | translate }}</h3>\n <p>{{ 'pages.notFound.message' | translate }}</p>\n <button type=\"button\" pButton [label]=\"'general.returnHome' | translate\" [routerLink]=\"['/']\"></button>\n </div>\n <div class=\"exception-footer align-items-center flex\">\n <img [src]=\"commons.colorSchemeIsLight ? commons.appLogoDark : commons.appLogoLight\" class=\"exception-logo\" alt=\"App logo\" />\n <img [src]=\"commons.colorSchemeIsLight ? commons.appLogoNameDark : commons.appLogoNameLight\" class=\"exception-appname ml-3\" alt=\"App name\" />\n </div>\n </div>\n</div>\n", styles: [".exception-body{background:var(--surface-ground)}.exception-body .exception-container{background:var(--exception-pages-image);background-repeat:no-repeat;background-size:contain;box-sizing:border-box}.exception-body .exception-container .exception-panel{box-sizing:border-box;flex-grow:1;margin-top:3rem;margin-bottom:3rem}.exception-body .exception-container .exception-panel h1{font-size:140px;font-weight:900;text-shadow:0 0 50px rgba(252,97,97,.2)}.exception-body .exception-container .exception-panel h3{font-size:80px;font-weight:900;margin-top:-90px;margin-bottom:50px}.exception-body .exception-container .exception-panel p{font-size:24px;font-weight:400;max-width:320px}.exception-body .exception-container .exception-panel button{margin-top:50px}.exception-body .exception-container .exception-footer{margin-bottom:2rem}.exception-body .exception-container .exception-footer .exception-logo{width:34px}.exception-body .exception-container .exception-footer .exception-appname{width:72px}\n"] }]
801
801
  }], ctorParameters: () => [{ type: CommonsService }] });
@@ -1408,10 +1408,10 @@ class ComponentDirective {
1408
1408
  }
1409
1409
  this.componentInstanceEventEmitter.next(this.componentRef.instance);
1410
1410
  }
1411
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ComponentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1412
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.2", type: ComponentDirective, isStandalone: true, selector: "[mngComponent]", inputs: { component: ["mngComponent", "component"], componentIt: ["injectionToken", "componentIt"], inputs: "inputs", attachToHost: "attachToHost", nodeInjector: "nodeInjector" }, outputs: { componentInstanceEventEmitter: "instanceCreated" }, ngImport: i0 }); }
1411
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ComponentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1412
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.4", type: ComponentDirective, isStandalone: true, selector: "[mngComponent]", inputs: { component: ["mngComponent", "component"], componentIt: ["injectionToken", "componentIt"], inputs: "inputs", attachToHost: "attachToHost", nodeInjector: "nodeInjector" }, outputs: { componentInstanceEventEmitter: "instanceCreated" }, ngImport: i0 }); }
1413
1413
  }
1414
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ComponentDirective, decorators: [{
1414
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ComponentDirective, decorators: [{
1415
1415
  type: Directive,
1416
1416
  args: [{
1417
1417
  standalone: true,
@@ -1445,10 +1445,10 @@ class TemplateDirective {
1445
1445
  getViewContainerRef() {
1446
1446
  return this.viewContainerRef;
1447
1447
  }
1448
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: TemplateDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1449
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.2", type: TemplateDirective, isStandalone: true, selector: "[mngTemplate]", inputs: { type: "type", name: ["mngTemplate", "name"] }, ngImport: i0 }); }
1448
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TemplateDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1449
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.4", type: TemplateDirective, isStandalone: true, selector: "[mngTemplate]", inputs: { type: "type", name: ["mngTemplate", "name"] }, ngImport: i0 }); }
1450
1450
  }
1451
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: TemplateDirective, decorators: [{
1451
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TemplateDirective, decorators: [{
1452
1452
  type: Directive,
1453
1453
  args: [{
1454
1454
  standalone: true,
@@ -2352,10 +2352,10 @@ class BooleanPipe {
2352
2352
  return value;
2353
2353
  }
2354
2354
  }
2355
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: BooleanPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2356
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.2", ngImport: i0, type: BooleanPipe, isStandalone: true, name: "mngBoolean" }); }
2355
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: BooleanPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2356
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: BooleanPipe, isStandalone: true, name: "mngBoolean" }); }
2357
2357
  }
2358
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: BooleanPipe, decorators: [{
2358
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: BooleanPipe, decorators: [{
2359
2359
  type: Pipe,
2360
2360
  args: [{
2361
2361
  standalone: true,
@@ -2373,10 +2373,10 @@ class ClassMapPipe {
2373
2373
  return className ?? '';
2374
2374
  }
2375
2375
  }
2376
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ClassMapPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2377
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.2", ngImport: i0, type: ClassMapPipe, isStandalone: true, name: "mngClassMap" }); }
2376
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ClassMapPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2377
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: ClassMapPipe, isStandalone: true, name: "mngClassMap" }); }
2378
2378
  }
2379
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ClassMapPipe, decorators: [{
2379
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ClassMapPipe, decorators: [{
2380
2380
  type: Pipe,
2381
2381
  args: [{
2382
2382
  standalone: true,
@@ -2396,10 +2396,10 @@ class EnumPipe {
2396
2396
  }
2397
2397
  return i18nPath ? `${i18nPath}.${enumConstantName}` : enumConstantName;
2398
2398
  }
2399
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: EnumPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2400
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.2", ngImport: i0, type: EnumPipe, isStandalone: true, name: "mngEnum" }); }
2399
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: EnumPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2400
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: EnumPipe, isStandalone: true, name: "mngEnum" }); }
2401
2401
  }
2402
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: EnumPipe, decorators: [{
2402
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: EnumPipe, decorators: [{
2403
2403
  type: Pipe,
2404
2404
  args: [{
2405
2405
  standalone: true,
@@ -2418,10 +2418,10 @@ class JsonPathPipe {
2418
2418
  transform(value, path = '') {
2419
2419
  return getObjectPropertyByPath(value, path);
2420
2420
  }
2421
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: JsonPathPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2422
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.2", ngImport: i0, type: JsonPathPipe, isStandalone: true, name: "mngJsonPath" }); }
2421
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: JsonPathPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2422
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: JsonPathPipe, isStandalone: true, name: "mngJsonPath" }); }
2423
2423
  }
2424
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: JsonPathPipe, decorators: [{
2424
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: JsonPathPipe, decorators: [{
2425
2425
  type: Pipe,
2426
2426
  args: [{
2427
2427
  standalone: true,
@@ -2448,10 +2448,10 @@ class EnumeratePipe {
2448
2448
  })
2449
2449
  .join(valueSeparator);
2450
2450
  }
2451
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: EnumeratePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2452
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.2", ngImport: i0, type: EnumeratePipe, isStandalone: true, name: "mngEnumerate" }); }
2451
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: EnumeratePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2452
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: EnumeratePipe, isStandalone: true, name: "mngEnumerate" }); }
2453
2453
  }
2454
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: EnumeratePipe, decorators: [{
2454
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: EnumeratePipe, decorators: [{
2455
2455
  type: Pipe,
2456
2456
  args: [{
2457
2457
  standalone: true,
@@ -2493,10 +2493,10 @@ class EnumerateAsyncPipe {
2493
2493
  }))));
2494
2494
  }), map(i => i.join(valueSeparator)));
2495
2495
  }
2496
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: EnumerateAsyncPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2497
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.2", ngImport: i0, type: EnumerateAsyncPipe, isStandalone: true, name: "mngEnumerateAsync" }); }
2496
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: EnumerateAsyncPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2497
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: EnumerateAsyncPipe, isStandalone: true, name: "mngEnumerateAsync" }); }
2498
2498
  }
2499
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: EnumerateAsyncPipe, decorators: [{
2499
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: EnumerateAsyncPipe, decorators: [{
2500
2500
  type: Pipe,
2501
2501
  args: [{
2502
2502
  standalone: true,
@@ -2512,10 +2512,10 @@ class GetterPipe {
2512
2512
  }
2513
2513
  return value;
2514
2514
  }
2515
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: GetterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2516
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.2", ngImport: i0, type: GetterPipe, isStandalone: true, name: "mngGetter" }); }
2515
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GetterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2516
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: GetterPipe, isStandalone: true, name: "mngGetter" }); }
2517
2517
  }
2518
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: GetterPipe, decorators: [{
2518
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GetterPipe, decorators: [{
2519
2519
  type: Pipe,
2520
2520
  args: [{
2521
2521
  standalone: true,
@@ -2528,10 +2528,10 @@ class I18nPropertyPipe {
2528
2528
  transform(property, model) {
2529
2529
  return getI18nTypePropertyKey(model.i18nBaseKey, property);
2530
2530
  }
2531
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: I18nPropertyPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2532
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.2", ngImport: i0, type: I18nPropertyPipe, isStandalone: true, name: "mngI18nProperty" }); }
2531
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: I18nPropertyPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2532
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: I18nPropertyPipe, isStandalone: true, name: "mngI18nProperty" }); }
2533
2533
  }
2534
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: I18nPropertyPipe, decorators: [{
2534
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: I18nPropertyPipe, decorators: [{
2535
2535
  type: Pipe,
2536
2536
  args: [{
2537
2537
  standalone: true,
@@ -2610,10 +2610,10 @@ class ParametrizePipe {
2610
2610
  parametrizeString(s, params) {
2611
2611
  return s.replace(/{{\s?([^{}\s]*)\s?}}/g, (subs, key) => this.jsonPath.transform(params, key) ?? subs);
2612
2612
  }
2613
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ParametrizePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2614
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.2", ngImport: i0, type: ParametrizePipe, isStandalone: true, name: "mngParametrize" }); }
2613
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ParametrizePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2614
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: ParametrizePipe, isStandalone: true, name: "mngParametrize" }); }
2615
2615
  }
2616
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ParametrizePipe, decorators: [{
2616
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ParametrizePipe, decorators: [{
2617
2617
  type: Pipe,
2618
2618
  args: [{
2619
2619
  standalone: true,
@@ -2632,10 +2632,10 @@ class TemplatePipe {
2632
2632
  }
2633
2633
  return value;
2634
2634
  }
2635
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: TemplatePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2636
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.2", ngImport: i0, type: TemplatePipe, isStandalone: true, name: "template" }); }
2635
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TemplatePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2636
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: TemplatePipe, isStandalone: true, name: "template" }); }
2637
2637
  }
2638
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: TemplatePipe, decorators: [{
2638
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TemplatePipe, decorators: [{
2639
2639
  type: Pipe,
2640
2640
  args: [{
2641
2641
  standalone: true,
@@ -2896,10 +2896,10 @@ class PermissionService {
2896
2896
  }
2897
2897
  return serviceInstance.isPermitted(route, this.router.routerState.snapshot, actionCtx);
2898
2898
  }
2899
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: PermissionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2900
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: PermissionService }); }
2899
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: PermissionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2900
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: PermissionService }); }
2901
2901
  }
2902
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: PermissionService, decorators: [{
2902
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: PermissionService, decorators: [{
2903
2903
  type: Injectable
2904
2904
  }] });
2905
2905
 
@@ -2926,89 +2926,95 @@ class RouteBuilder {
2926
2926
  this.routePath = [this.route.path];
2927
2927
  }
2928
2928
  }
2929
- static create(path, component) {
2930
- return new RouteBuilder({
2931
- path: path,
2932
- component: component
2933
- });
2934
- }
2935
- static createRedirect(path, redirectTo, pathMatch = 'prefix') {
2936
- return new RouteBuilder({
2937
- path: path,
2938
- redirectTo: redirectTo,
2939
- pathMatch: pathMatch
2940
- });
2941
- }
2942
- static createLazyRouteModule(path, loadChildren, canMatch) {
2943
- const route = { path: path, loadChildren: loadChildren };
2944
- if (canMatch?.length) {
2945
- route.canMatch = canMatch;
2946
- }
2947
- return new RouteBuilder(route);
2948
- }
2949
- static createLazyRouteComponent(path, loadComponent, canMatch) {
2950
- const route = { path: path, loadComponent: loadComponent };
2951
- if (canMatch?.length) {
2952
- route.canMatch = canMatch;
2953
- }
2954
- return new RouteBuilder(route);
2955
- }
2956
- static createFromRoute(route) {
2957
- return new RouteBuilder(route);
2958
- }
2929
+ /**
2930
+ * Sets the link to root Routes builder.
2931
+ *
2932
+ * @param {RoutesBuilder} routesBuilder - The routes builder to set as the root.
2933
+ */
2959
2934
  withRoot(routesBuilder) {
2960
2935
  this.root = routesBuilder;
2961
2936
  return this;
2962
2937
  }
2938
+ /**
2939
+ * Sets the link to parent Route builder.
2940
+ *
2941
+ * @param {RouteBuilder} parent - The parent route builder.
2942
+ */
2963
2943
  withParent(parent) {
2964
2944
  this.parent = parent;
2965
2945
  this.routePath = removeRouteEmptyPathSegments([...this.parent.routePath, this.route.path ?? '']);
2966
2946
  return this;
2967
2947
  }
2948
+ /**
2949
+ * Sets the breadcrumb.
2950
+ *
2951
+ * @param {BreadcrumbType} breadcrumb - Breadcrumb configuration.
2952
+ */
2968
2953
  withBreadcrumb(breadcrumb) {
2969
- this.breadcrumb = breadcrumb;
2970
2954
  this.routeData.breadcrumb = breadcrumb;
2971
2955
  return this;
2972
2956
  }
2957
+ /**
2958
+ * Sets the page title for the current route.
2959
+ *
2960
+ * @param {string} pageTitle - The title of the page.
2961
+ */
2973
2962
  withPageTitle(pageTitle) {
2974
- this.pageTitle = pageTitle;
2975
2963
  this.routeData.pageTitle = pageTitle;
2976
2964
  return this;
2977
2965
  }
2978
- withRedirectTo(redirectTo) {
2979
- this.route.redirectTo = redirectTo;
2980
- return this;
2981
- }
2982
- withPathMatch(pathMatch) {
2983
- this.route.pathMatch = pathMatch;
2984
- return this;
2985
- }
2966
+ /**
2967
+ * Sets the page title and the breadcrumb.
2968
+ *
2969
+ * @param {string} title - The title of the page and breadcrumb.
2970
+ */
2986
2971
  withTitle(title) {
2987
2972
  this.withPageTitle(title);
2988
2973
  this.withBreadcrumb(title);
2989
2974
  return this;
2990
2975
  }
2991
- withCanActivate(diToken) {
2976
+ /**
2977
+ * Adds a can activate guard to route.
2978
+ *
2979
+ * @param {CanActivateFn} fn - The CanActivate function to be added.
2980
+ */
2981
+ withCanActivate(fn) {
2992
2982
  if (!this.route.canActivate) {
2993
2983
  this.route.canActivate = [];
2994
2984
  }
2995
- this.route.canActivate.push(diToken);
2985
+ this.route.canActivate.push(fn);
2996
2986
  return this;
2997
2987
  }
2998
- withCanDeactivate(diToken) {
2988
+ /**
2989
+ * Adds a can deactivate guard to route.
2990
+ *
2991
+ * @param {CanDeactivateFn} fn - The CanActivate function to be added.
2992
+ */
2993
+ withCanDeactivate(fn) {
2999
2994
  if (!this.route.canDeactivate) {
3000
2995
  this.route.canDeactivate = [];
3001
2996
  }
3002
- this.route.canDeactivate.push(diToken);
2997
+ this.route.canDeactivate.push(fn);
3003
2998
  return this;
3004
2999
  }
3005
- withResolver(diToken, name) {
3000
+ /**
3001
+ * Adds a resolver to route.
3002
+ *
3003
+ * @param {string} name - Name of the resolver.
3004
+ * @param {CanDeactivateFn} fn - The CanActivate function to be added.
3005
+ */
3006
+ withResolver(name, fn) {
3006
3007
  if (!this.route.resolve) {
3007
3008
  this.route.resolve = {};
3008
3009
  }
3009
- this.route.resolve[name] = diToken;
3010
+ this.route.resolve[name] = fn;
3010
3011
  return this;
3011
3012
  }
3013
+ /**
3014
+ * Adds a provider to the route.
3015
+ *
3016
+ * @param {Provider | EnvironmentProviders} provider - The provider to add.
3017
+ */
3012
3018
  withProvider(provider) {
3013
3019
  if (!this.route.providers) {
3014
3020
  this.route.providers = [];
@@ -3016,19 +3022,49 @@ class RouteBuilder {
3016
3022
  this.route.providers.push(provider);
3017
3023
  return this;
3018
3024
  }
3019
- withData(data) {
3020
- if (!data.breadcrumb) {
3021
- data.breadcrumb = null;
3022
- }
3023
- this.routeData = data;
3025
+ /**
3026
+ * Sets the data for the route.
3027
+ *
3028
+ * @param {CommonsRouteData} data - The data to set for the route.
3029
+ * @param {boolean} [merge=true] - If the data should be merged with current data setup (true by default) - page title and breadcrumb config are carried over.
3030
+ */
3031
+ withData(data, merge = true) {
3032
+ this.routeData = merge
3033
+ ? {
3034
+ ...this.routeData,
3035
+ ...data
3036
+ }
3037
+ : {
3038
+ breadcrumb: null,
3039
+ ...data
3040
+ };
3024
3041
  return this;
3025
3042
  }
3026
- withCommonsMenuItem(menuItem) {
3027
- this.menuItem = menuItem;
3043
+ /**
3044
+ * Updates the menu item of route. Merging with current configuration (set with {withMenuItem}) takes place.
3045
+ *
3046
+ * @param {CommonsMenuItem} opts - The opts properties to be merged on existing menu item for route.
3047
+ */
3048
+ withMenuItemOpts(opts) {
3049
+ if (!this.menuItem) {
3050
+ this.menuItem = {};
3051
+ }
3052
+ this.menuItem = {
3053
+ ...this.menuItem,
3054
+ ...opts
3055
+ };
3028
3056
  return this;
3029
3057
  }
3058
+ /**
3059
+ * Sets the menu item (basic). For more options, see the {withMenuItemFromOpts}.
3060
+ *
3061
+ * @param {string} [icon] - The icon for the menu item.
3062
+ * @param {string} [label] - The label for the menu item.
3063
+ * @param {Array<string>} [routerLink] - The router link for the menu item.
3064
+ * @param {boolean} [breadcrumb=false] - Indicates whether to display breadcrumb for the menu item.
3065
+ */
3030
3066
  withMenuItem(icon, label, routerLink, breadcrumb = false) {
3031
- this.menuItem = this.createMenuItem(icon, label, routerLink);
3067
+ this.menuItem = createMenuItem(icon, label, routerLink);
3032
3068
  if (breadcrumb && label) {
3033
3069
  this.withBreadcrumb({
3034
3070
  label: label
@@ -3037,35 +3073,40 @@ class RouteBuilder {
3037
3073
  return this;
3038
3074
  }
3039
3075
  /**
3040
- * Adds menu item child to this instance of menu item.
3041
- * @param label Label.
3042
- * @param icon Icon.
3043
- * @param routerLink Router link.
3044
- * @param afterRouteChildren If false, menu item child will be appended before route children menu items, at the end otherwise.
3076
+ * Adds menu item child to route's menu item. If no menu item is present, children will be appended directly to parent/root menu item.
3077
+ *
3078
+ * @param {string} [icon] - The icon for the menu item.
3079
+ * @param {string} [label] - The label for the menu item.
3080
+ * @param {Array<string>} [routerLink] - The router link for the menu item.
3081
+ * @param {boolean} [afterRouteChildren=false] If false, menu item child will be appended before route's children menu items, at the end otherwise.
3045
3082
  */
3046
- withMenuItemChild(label, icon, routerLink, afterRouteChildren = false) {
3083
+ withMenuItemChild(icon, label, routerLink, afterRouteChildren = false) {
3047
3084
  if (afterRouteChildren) {
3048
- this.menuItemChildrenAfter.push(this.createMenuItem(icon, label, routerLink));
3085
+ this.menuItemChildrenAfter.push(createMenuItem(icon, label, routerLink));
3049
3086
  }
3050
3087
  else {
3051
- this.menuItemChildren.push(this.createMenuItem(icon, label, routerLink));
3088
+ this.menuItemChildren.push(createMenuItem(icon, label, routerLink));
3052
3089
  }
3053
3090
  return this;
3054
3091
  }
3055
3092
  /**
3056
- * Adds menu item child to this instance of menu item.
3057
- * @param menuItem Configuration object for menu item.
3058
- * @param afterRouteChildren If false, menu item child will be appended before route children menu items, at the end otherwise.
3093
+ * Adds menu item child from opts to route's menu item. If no menu item is present, children will be appended directly to parent/root menu item.
3094
+ *
3095
+ * @param {CommonsMenuItem} opts - The opts properties to be merged on existing menu item for route.
3096
+ * @param {boolean} [afterRouteChildren=false] If false, menu item child will be appended before route's children menu items, at the end otherwise.
3059
3097
  */
3060
- withCommonsMenuItemChild(menuItem, afterRouteChildren = false) {
3098
+ withMenuItemChildFromOpts(opts, afterRouteChildren = false) {
3061
3099
  if (afterRouteChildren) {
3062
- this.menuItemChildrenAfter.push(menuItem);
3100
+ this.menuItemChildrenAfter.push(opts);
3063
3101
  }
3064
3102
  else {
3065
- this.menuItemChildren.push(menuItem);
3103
+ this.menuItemChildren.push(opts);
3066
3104
  }
3067
3105
  return this;
3068
3106
  }
3107
+ /**
3108
+ * Sets the menu item's children to be generated lazily from route's lazy loaded routes after the chunk is loaded to runtime.
3109
+ */
3069
3110
  withMenuItemLazyChildren() {
3070
3111
  if (!this.menuItem) {
3071
3112
  this.menuItem = {};
@@ -3073,16 +3114,34 @@ class RouteBuilder {
3073
3114
  this.menuItem.lazyChildren = true;
3074
3115
  return this;
3075
3116
  }
3117
+ /**
3118
+ * Sets the permissions on the route.
3119
+ *
3120
+ * @param {APermissions} permissions - The permissions to be set on the route.
3121
+ */
3076
3122
  withPermissions(permissions) {
3077
3123
  this.permissions = permissions;
3078
3124
  this.withCanActivate(permissionGuard);
3079
3125
  return this;
3080
3126
  }
3127
+ /**
3128
+ * Adds a child route to the current route.
3129
+ *
3130
+ * @param {string} path - The path of the child route.
3131
+ * @param {Type<any>} component - The component associated with the child route.
3132
+ * @param {RouteBuilderAdjustFnType} [adjustFn] - An optional function to adjust the child route builder.
3133
+ */
3081
3134
  addChild(path, component, adjustFn) {
3082
- const childRouteBuilder = RouteBuilder.create(path, component);
3135
+ const childRouteBuilder = createRoute(path, component);
3083
3136
  adjustFn?.(childRouteBuilder);
3084
3137
  return this.addChildBuilder(childRouteBuilder);
3085
3138
  }
3139
+ /**
3140
+ * Adds a child builder to the current route.
3141
+ *
3142
+ * @param {RouteBuilder} builder - The child builder to be added.
3143
+ * @return {this} - The current builder with the added child builder.
3144
+ */
3086
3145
  addChildBuilder(builder) {
3087
3146
  builder.withParent(this);
3088
3147
  if (this.root) {
@@ -3091,6 +3150,11 @@ class RouteBuilder {
3091
3150
  this.children.push(builder);
3092
3151
  return this;
3093
3152
  }
3153
+ /**
3154
+ * Builds an Angular route based on configurations.
3155
+ *
3156
+ * @returns {Route} The built Angular route.
3157
+ */
3094
3158
  build() {
3095
3159
  const angularRoute = {
3096
3160
  ...this.route
@@ -3141,6 +3205,11 @@ class RouteBuilder {
3141
3205
  }
3142
3206
  return angularRoute;
3143
3207
  }
3208
+ /**
3209
+ * Builds the menu items.
3210
+ *
3211
+ * @returns {Array<CommonsMenuItem>} - The built menu items.
3212
+ */
3144
3213
  buildMenu() {
3145
3214
  const menuItemBuild = this.menuItem ? { ...this.menuItem } : null;
3146
3215
  const routeChildrenMenuItems = this.children.flatMap(child => child.buildMenu());
@@ -3168,7 +3237,7 @@ class RouteBuilder {
3168
3237
  if (!menuItemBuild) {
3169
3238
  return menuItemChildrenBuild;
3170
3239
  }
3171
- menuItemBuild.label = menuItemBuild.label ?? this.pageTitle;
3240
+ menuItemBuild.label = menuItemBuild.label ?? this.routeData.pageTitle;
3172
3241
  if (typeof menuItemBuild.routerLink === 'string') {
3173
3242
  menuItemBuild.routerLink = [menuItemBuild.routerLink];
3174
3243
  }
@@ -3187,19 +3256,6 @@ class RouteBuilder {
3187
3256
  }
3188
3257
  return [menuItemBuild];
3189
3258
  }
3190
- createMenuItem(icon, label, routerLink) {
3191
- const menuItem = {};
3192
- if (icon) {
3193
- menuItem.icon = icon;
3194
- }
3195
- if (label) {
3196
- menuItem.label = label;
3197
- }
3198
- if (routerLink) {
3199
- menuItem.routerLink = routerLink;
3200
- }
3201
- return menuItem;
3202
- }
3203
3259
  findMenuItemGuards() {
3204
3260
  const guards = [];
3205
3261
  if (this.route.canActivate?.length) {
@@ -3231,59 +3287,128 @@ class RouteBuilder {
3231
3287
  return undefined;
3232
3288
  }
3233
3289
  }
3234
-
3235
- class RoutesBuilder {
3236
- constructor(layoutRoute) {
3237
- this.routes = [];
3238
- this.layoutRoute = layoutRoute?.withRoot(this);
3239
- this.currentRoute = layoutRoute;
3290
+ function createMenuItem(icon, label, routerLink) {
3291
+ const menuItem = {};
3292
+ if (icon) {
3293
+ menuItem.icon = icon;
3240
3294
  }
3241
- static create() {
3242
- return new RoutesBuilder();
3295
+ if (label) {
3296
+ menuItem.label = label;
3243
3297
  }
3244
- addAngularRoute(route, builderAdjustFn) {
3245
- const builder = RouteBuilder.createFromRoute(route);
3246
- builderAdjustFn?.(builder);
3247
- return this.addRouteBuilder(builder);
3298
+ if (routerLink) {
3299
+ menuItem.routerLink = routerLink;
3248
3300
  }
3249
- addRouteRedirect(path, redirectTo, pathMatch = 'prefix') {
3250
- return this.addRouteBuilder(RouteBuilder.createRedirect(path, redirectTo, pathMatch));
3301
+ return menuItem;
3302
+ }
3303
+ /**
3304
+ * Creates a new instance of RouteBuilder with the given path and component.
3305
+ *
3306
+ * @param {string} path - The path for the route.
3307
+ * @param {Type<any>} component - The component for the route.
3308
+ * @return {RouteBuilder} - A new instance of RouteBuilder.
3309
+ */
3310
+ function createRoute(path, component) {
3311
+ return new RouteBuilder({
3312
+ path: path,
3313
+ component: component
3314
+ });
3315
+ }
3316
+ /**
3317
+ * Creates a redirect route for the given path.
3318
+ *
3319
+ * @param {string} path - The path to match against.
3320
+ * @param {string} redirectTo - The URL path to redirect to.
3321
+ * @param {'full' | 'prefix'} [pathMatch='prefix'] - The path matching strategy ('full' or 'prefix').
3322
+ * @return {RouteBuilder} - A new instance of the RouteBuilder class with the redirect route configuration.
3323
+ */
3324
+ function createRouteRedirect(path, redirectTo, pathMatch = 'prefix') {
3325
+ return new RouteBuilder({
3326
+ path: path,
3327
+ redirectTo: redirectTo,
3328
+ pathMatch: pathMatch
3329
+ });
3330
+ }
3331
+ /**
3332
+ * Creates a lazy route module (or routes).
3333
+ *
3334
+ * @param {string} path - The path for the route.
3335
+ * @param {LoadChildren} loadChildren - The function that loads the lazy module (or routes).
3336
+ * @param {Array<any>} [canMatch] - An optional array of objects that can match the route.
3337
+ * @returns {RouteBuilder} - A new instance of RouteBuilder class.
3338
+ */
3339
+ function createLazyChildrenRoute(path, loadChildren, canMatch) {
3340
+ const route = { path: path, loadChildren: loadChildren };
3341
+ if (canMatch?.length) {
3342
+ route.canMatch = canMatch;
3251
3343
  }
3252
- addLazyRouteComponent(path, loadComponent, canMatch, builderAdjustFn) {
3253
- const builder = RouteBuilder.createLazyRouteComponent(path, loadComponent, canMatch);
3254
- builderAdjustFn?.(builder);
3255
- return this.addRouteBuilder(builder);
3344
+ return new RouteBuilder(route);
3345
+ }
3346
+ /**
3347
+ * Creates a lazy route component.
3348
+ *
3349
+ * @param {string} path - The path for the route.
3350
+ * @param {() => Type<unknown> | Observable<Type<unknown> | DefaultExport<Type<unknown>>> | Promise<Type<unknown> | DefaultExport<Type<unknown>>>} loadComponent - The function that loads the component for the route.
3351
+ * @param {Array<any>} [canMatch] - The array of values that determine if the route can match.
3352
+ * @returns {RouteBuilder} - An instance of RouteBuilder with the created route.
3353
+ */
3354
+ function createLazyRoute(path, loadComponent, canMatch) {
3355
+ const route = { path: path, loadComponent: loadComponent };
3356
+ if (canMatch?.length) {
3357
+ route.canMatch = canMatch;
3256
3358
  }
3257
- addLazyRouteModule(path, loadChildren, canMatch, builderAdjustFn) {
3258
- const builder = RouteBuilder.createLazyRouteModule(path, loadChildren, canMatch);
3259
- builderAdjustFn?.(builder);
3260
- return this.addRouteBuilder(builder);
3359
+ return new RouteBuilder(route);
3360
+ }
3361
+
3362
+ class RoutesBuilder {
3363
+ constructor() {
3364
+ this.routes = [];
3261
3365
  }
3262
- addRoute(path, component, builderAdjustFn) {
3263
- const builder = RouteBuilder.create(path, component);
3366
+ /**
3367
+ * Adds an Angular route to the current route configuration.
3368
+ *
3369
+ * @param {Route} route - The Angular route object to be added.
3370
+ * @param {RouteBuilderAdjustFnType} [builderAdjustFn] - Optional function to adjust the route builder before adding.
3371
+ */
3372
+ addFromNgRoute(route, builderAdjustFn) {
3373
+ const builder = new RouteBuilder(route);
3264
3374
  builderAdjustFn?.(builder);
3265
- return this.addRouteBuilder(builder);
3375
+ return this.add(builder);
3376
+ }
3377
+ /**
3378
+ * Adds a route redirect to the Angular route.
3379
+ *
3380
+ * @param {string} path - The path for the redirect.
3381
+ * @param {string} redirectTo - The target route to redirect.
3382
+ * @param {'full' | 'prefix'} pathMatch - The matching strategy for the redirect. Default is 'prefix'.
3383
+ */
3384
+ addRedirect(path, redirectTo, pathMatch = 'prefix') {
3385
+ return this.addFromNgRoute({
3386
+ path: path,
3387
+ redirectTo: redirectTo,
3388
+ pathMatch: pathMatch
3389
+ });
3266
3390
  }
3267
- addRouteBuilder(routeBuilder) {
3268
- this.currentRoute = routeBuilder.withRoot(this);
3391
+ /**
3392
+ * Adds a route to the routes.
3393
+ *
3394
+ * @param {RouteBuilder} routeBuilder - The route builder object representing the route to be added.
3395
+ */
3396
+ add(routeBuilder) {
3269
3397
  this.routes.push(routeBuilder);
3270
3398
  return this;
3271
3399
  }
3272
3400
  build() {
3273
- let angularRoutes = [];
3274
- for (const route of this.routes) {
3275
- angularRoutes.push(route.build());
3276
- }
3277
- if (this.layoutRoute) {
3278
- const layoutAngularRoute = this.layoutRoute.build();
3279
- if (angularRoutes.length > 0) {
3280
- layoutAngularRoute.children = angularRoutes;
3281
- }
3282
- angularRoutes = [layoutAngularRoute];
3283
- }
3284
- return angularRoutes;
3401
+ return this.routes.map(r => r.build());
3285
3402
  }
3286
3403
  }
3404
+ /**
3405
+ * Creates a new instance of the RoutesBuilder class.
3406
+ *
3407
+ * @return {RoutesBuilder} A new instance of the RoutesBuilder class.
3408
+ */
3409
+ function createRoutes() {
3410
+ return new RoutesBuilder();
3411
+ }
3287
3412
 
3288
3413
  /**
3289
3414
  * Maps an Observable of data with optional totalCount and data to a data list result object with provided defaults of empty array and count 0.
@@ -3648,10 +3773,10 @@ class CommonsRouterService {
3648
3773
  getModulePathFromRouterLink(path) {
3649
3774
  return ('/' + (Array.isArray(path) ? path.join('/') : path)).replace(/\/\//g, '/');
3650
3775
  }
3651
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: CommonsRouterService, deps: [{ token: i1$1.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
3652
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: CommonsRouterService }); }
3776
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CommonsRouterService, deps: [{ token: i1$1.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
3777
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CommonsRouterService }); }
3653
3778
  }
3654
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: CommonsRouterService, decorators: [{
3779
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CommonsRouterService, decorators: [{
3655
3780
  type: Injectable
3656
3781
  }], ctorParameters: () => [{ type: i1$1.Router }] });
3657
3782
 
@@ -3747,10 +3872,10 @@ class CommonsInitService {
3747
3872
  return throwError(() => err);
3748
3873
  }));
3749
3874
  }
3750
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: CommonsInitService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3751
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: CommonsInitService }); }
3875
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CommonsInitService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3876
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CommonsInitService }); }
3752
3877
  }
3753
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: CommonsInitService, decorators: [{
3878
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CommonsInitService, decorators: [{
3754
3879
  type: Injectable
3755
3880
  }] });
3756
3881
 
@@ -3774,10 +3899,10 @@ class LocalStorageService {
3774
3899
  removeItem(type, key) {
3775
3900
  localStorage.removeItem(this.buildLocalStorageKey(type, key));
3776
3901
  }
3777
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: LocalStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3778
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: LocalStorageService }); }
3902
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: LocalStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3903
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: LocalStorageService }); }
3779
3904
  }
3780
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: LocalStorageService, decorators: [{
3905
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: LocalStorageService, decorators: [{
3781
3906
  type: Injectable
3782
3907
  }] });
3783
3908
 
@@ -3878,5 +4003,5 @@ function provideCommons(config, ...features) {
3878
4003
  * Generated bundle index. Do not edit.
3879
4004
  */
3880
4005
 
3881
- export { ACommonsErrorBase, APermissions, BROWSER_STORAGE_IT, BooleanPipe, COMMONS_INITIALIZER_IT, COMMONS_MODULE_CONFIG_IT, ClassMapPipe, CommonsConfigurationService, CommonsErrorHandler, CommonsFeatureTypeEnum, CommonsHttpError, CommonsInitEventEnum, CommonsInitService, CommonsInternalError, CommonsRouterService, CommonsService, ComponentDirective, DataProvider, DataProviderInst, DialogKeydownHandlerDirective, EnumName, EnumPipe, EnumerateAsyncPipe, EnumeratePipe, ErrorPageComponent, FilterMatchMode, GetterPipe, I18nPropertyPipe, JsonPathPipe, LOG_PUBLISHERS, LocalStorageService, LogLevelEnum, LogPublisherConsoleService, LoggerService, NotFoundPageComponent, NotificationWrapperComponent, ParametrizePipe, PermissionService, PermissionTypeEnum, Permissions, RouteBuilder, RoutesBuilder, StyleLevelEnum, StyleSizeEnum, Styles, TemplateDirective, TemplatePipe, TypeName, TypeRegistry, adjustRouteMenuLazyChildrenRouterLinks, angularDateFormatHasSeconds, angularDateFormatHasTime, appendRoutePathToBasePath, boolean$Attribute, commonsActionErrorContextToString, commonsErrorToString, commonsInitializerProvider, copyDataListParams, dataListParamsFilterToUrlQuery, dataListParamsFilterValueToUrlString, dataListParamsFiltersToUrlQuery, dataListParamsSortToUrlQuery, dataListParamsToUrlQuery, dateToIsoString, defineReflectEnumName, defineReflectTypeName, doesUrlMatchRouterLink, errorCauseToString, errorToString, escapeHtml, escapeHtmlAny, findReflectEnumName, findReflectTypeName, findTemplateByName, flattenObjectKeys, fromAngularDateFormatToPrime, fromEnumConstantsAsValueArray, fromEnumValuesAsValueArray, fromSubscribeError, fromTableLoadToDataListParams, fromUrlQueryToDataListParams, getEnumConstantName, getEnumConstantNameFromObject, getEnumConstantNames, getEnumConstantNamesFromObject, getEnumConstantValuesAsNumber, getEnumConstantValuesAsString, getEnumerationI18nBaseKey, getErrorLogLevel, getErrorName, getHttpErrorResponse, getHttpErrorResponseStatus, getI18n, getI18nAsync, getI18nClassGroupKey, getI18nClassKeyBasePath, getI18nClassName, getI18nClassNameAsync, getI18nClassParams, getI18nClassParamsAsync, getI18nClassPropertyKey, getI18nClassTabKey, getI18nErrorParams, getI18nForError, getI18nTypeGroupKey, getI18nTypeKeyBasePath, getI18nTypeName, getI18nTypeNameAsync, getI18nTypeParams, getI18nTypeParamsAsync, getI18nTypePropertyKey, getI18nTypeTabKey, getObjectGetters, getObjectProperties, getObjectPropertyByPath, httpErrorResponseToString, isHttpErrorResponse, isPermitted, isRbacPermitted, itemIdToDefined, itemIdToNumber, itemIdToString, mapToDataList, mergeDataListParamsWithDefaults, number$Attribute, objectDeepCopy, objectDeepMerge, permissionGuard, populateI18nParams, populateI18nTypeParams, provideCommons, reflectEnumNameKey, reflectTypeNameExists, reflectTypeNameKey, removeRouteEmptyPathSegments, selectEnumerationI18n, selectI18n, stringify, toEnumerationI18nEnumerate, toObservable, toastMessage, valueToDefined };
4006
+ export { ACommonsErrorBase, APermissions, BROWSER_STORAGE_IT, BooleanPipe, COMMONS_INITIALIZER_IT, COMMONS_MODULE_CONFIG_IT, ClassMapPipe, CommonsConfigurationService, CommonsErrorHandler, CommonsFeatureTypeEnum, CommonsHttpError, CommonsInitEventEnum, CommonsInitService, CommonsInternalError, CommonsRouterService, CommonsService, ComponentDirective, DataProvider, DataProviderInst, DialogKeydownHandlerDirective, EnumName, EnumPipe, EnumerateAsyncPipe, EnumeratePipe, ErrorPageComponent, FilterMatchMode, GetterPipe, I18nPropertyPipe, JsonPathPipe, LOG_PUBLISHERS, LocalStorageService, LogLevelEnum, LogPublisherConsoleService, LoggerService, NotFoundPageComponent, NotificationWrapperComponent, ParametrizePipe, PermissionService, PermissionTypeEnum, Permissions, RouteBuilder, RoutesBuilder, StyleLevelEnum, StyleSizeEnum, Styles, TemplateDirective, TemplatePipe, TypeName, TypeRegistry, adjustRouteMenuLazyChildrenRouterLinks, angularDateFormatHasSeconds, angularDateFormatHasTime, appendRoutePathToBasePath, boolean$Attribute, commonsActionErrorContextToString, commonsErrorToString, commonsInitializerProvider, copyDataListParams, createLazyChildrenRoute, createLazyRoute, createRoute, createRouteRedirect, createRoutes, dataListParamsFilterToUrlQuery, dataListParamsFilterValueToUrlString, dataListParamsFiltersToUrlQuery, dataListParamsSortToUrlQuery, dataListParamsToUrlQuery, dateToIsoString, defineReflectEnumName, defineReflectTypeName, doesUrlMatchRouterLink, errorCauseToString, errorToString, escapeHtml, escapeHtmlAny, findReflectEnumName, findReflectTypeName, findTemplateByName, flattenObjectKeys, fromAngularDateFormatToPrime, fromEnumConstantsAsValueArray, fromEnumValuesAsValueArray, fromSubscribeError, fromTableLoadToDataListParams, fromUrlQueryToDataListParams, getEnumConstantName, getEnumConstantNameFromObject, getEnumConstantNames, getEnumConstantNamesFromObject, getEnumConstantValuesAsNumber, getEnumConstantValuesAsString, getEnumerationI18nBaseKey, getErrorLogLevel, getErrorName, getHttpErrorResponse, getHttpErrorResponseStatus, getI18n, getI18nAsync, getI18nClassGroupKey, getI18nClassKeyBasePath, getI18nClassName, getI18nClassNameAsync, getI18nClassParams, getI18nClassParamsAsync, getI18nClassPropertyKey, getI18nClassTabKey, getI18nErrorParams, getI18nForError, getI18nTypeGroupKey, getI18nTypeKeyBasePath, getI18nTypeName, getI18nTypeNameAsync, getI18nTypeParams, getI18nTypeParamsAsync, getI18nTypePropertyKey, getI18nTypeTabKey, getObjectGetters, getObjectProperties, getObjectPropertyByPath, httpErrorResponseToString, isHttpErrorResponse, isPermitted, isRbacPermitted, itemIdToDefined, itemIdToNumber, itemIdToString, mapToDataList, mergeDataListParamsWithDefaults, number$Attribute, objectDeepCopy, objectDeepMerge, permissionGuard, populateI18nParams, populateI18nTypeParams, provideCommons, reflectEnumNameKey, reflectTypeNameExists, reflectTypeNameKey, removeRouteEmptyPathSegments, selectEnumerationI18n, selectI18n, stringify, toEnumerationI18nEnumerate, toObservable, toastMessage, valueToDefined };
3882
4007
  //# sourceMappingURL=mediusinc-mng-commons-core.mjs.map