@mediusinc/mng-commons 5.4.0 → 5.5.0-rc.1

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 (166) hide show
  1. package/core/descriptors/table.descriptor.d.ts +4 -2
  2. package/core/directives/rerender.directive.d.ts +9 -0
  3. package/core/helpers/route.d.ts +25 -25
  4. package/core/index.d.ts +2 -0
  5. package/core/models/version.model.d.ts +16 -4
  6. package/core/reactivity/effect.d.ts +16 -0
  7. package/esm2022/core/components/notification/notification-wrapper.component.mjs +4 -4
  8. package/esm2022/core/components/pages/error/error.page.component.mjs +4 -4
  9. package/esm2022/core/components/pages/not-found/not-found.page.component.mjs +4 -4
  10. package/esm2022/core/data-list/data-list-params-helpers.mjs +18 -3
  11. package/esm2022/core/descriptors/table.descriptor.mjs +1 -1
  12. package/esm2022/core/directives/component.directive.mjs +4 -4
  13. package/esm2022/core/directives/rerender.directive.mjs +25 -0
  14. package/esm2022/core/directives/template.directive.mjs +4 -4
  15. package/esm2022/core/index.mjs +4 -1
  16. package/esm2022/core/models/version.model.mjs +1 -1
  17. package/esm2022/core/pipes/boolean.pipe.mjs +6 -6
  18. package/esm2022/core/pipes/class-map.pipe.mjs +4 -4
  19. package/esm2022/core/pipes/enum.pipe.mjs +4 -4
  20. package/esm2022/core/pipes/enumerate-async.pipe.mjs +4 -4
  21. package/esm2022/core/pipes/enumerate.pipe.mjs +4 -4
  22. package/esm2022/core/pipes/getter.pipe.mjs +5 -5
  23. package/esm2022/core/pipes/i18n-property.pipe.mjs +4 -4
  24. package/esm2022/core/pipes/json-path.pipe.mjs +4 -4
  25. package/esm2022/core/pipes/parametrize.pipe.mjs +4 -4
  26. package/esm2022/core/pipes/template.pipe.mjs +4 -4
  27. package/esm2022/core/reactivity/effect.mjs +22 -0
  28. package/esm2022/core/security/permission.service.mjs +4 -4
  29. package/esm2022/core/services/commons-init.service.mjs +4 -4
  30. package/esm2022/core/services/commons-router.service.mjs +4 -4
  31. package/esm2022/core/services/commons-storage.service.mjs +4 -4
  32. package/esm2022/core/services/commons.service.mjs +8 -8
  33. package/esm2022/filter/descriptors/filter-lookup.descriptor.mjs +32 -25
  34. package/esm2022/filter/descriptors/filter.descriptor.mjs +53 -1
  35. package/esm2022/form/components/autocomplete/autocomplete.component.mjs +4 -4
  36. package/esm2022/form/components/date-range/date-range.component.mjs +4 -4
  37. package/esm2022/form/components/dropdown/dropdown.component.mjs +4 -4
  38. package/esm2022/form/components/number-range/number-range.component.mjs +4 -4
  39. package/esm2022/form/directives/input-trim.directive.mjs +4 -4
  40. package/esm2022/table/api/descriptors/sort.descriptor.mjs +2 -2
  41. package/esm2022/table/api/descriptors/table.descriptor.mjs +31 -7
  42. package/esm2022/table/components/column-filter/column-filter.component.mjs +33 -40
  43. package/esm2022/table/components/column-value/column-value.component.mjs +6 -6
  44. package/esm2022/table/components/filter/filter-active-tag/filter-active-tag.component.mjs +7 -7
  45. package/esm2022/table/components/filter/filter-form/filter-form.component.mjs +28 -35
  46. package/esm2022/table/components/filter/filter-overlay-with-tag/filter-overlay-with-tag.component.mjs +44 -45
  47. package/esm2022/table/components/table/table.component.mjs +114 -430
  48. package/esm2022/table/helpers/filters.mjs +9 -25
  49. package/esm2022/table/helpers/table.mjs +24 -0
  50. package/esm2022/table/index.mjs +2 -2
  51. package/esm2022/table/models/column-preferences.model.mjs +1 -1
  52. package/esm2022/table/models/filter.model.mjs +1 -1
  53. package/esm2022/table/pipes/filter-value.pipe.mjs +4 -4
  54. package/esm2022/table/pipes/locale-default-row-class.pipe.mjs +4 -4
  55. package/esm2022/table/pipes/table-column-filter-class.pipe.mjs +4 -4
  56. package/esm2022/table/services/table-data.service.mjs +194 -0
  57. package/esm2022/table/services/table-metadata.service.mjs +136 -0
  58. package/esm2022/table/services/table-preferences.service.mjs +142 -0
  59. package/esm2022/tableview/action/components/action/action.component.mjs +6 -7
  60. package/esm2022/tableview/action/components/editor/action-editor.component.mjs +4 -4
  61. package/esm2022/tableview/action/components/editor/injector-context/action-editor-injector-context.component.mjs +69 -46
  62. package/esm2022/tableview/action/components/localization/data-language-dropdown.component.mjs +4 -4
  63. package/esm2022/tableview/action/components/route/action-route.component.mjs +5 -6
  64. package/esm2022/tableview/action/components/table/action-table.component.mjs +6 -6
  65. package/esm2022/tableview/action/helpers/action-execution.mjs +25 -0
  66. package/esm2022/tableview/action/models/execution/action-instance.model.mjs +2 -3
  67. package/esm2022/tableview/action/services/action-executor.service.mjs +12 -79
  68. package/esm2022/tableview/action/services/component-action-executor.service.mjs +4 -4
  69. package/esm2022/tableview/action/services/data-provider-executor.service.mjs +4 -4
  70. package/esm2022/tableview/action/services/navigation.service.mjs +4 -4
  71. package/esm2022/tableview/action/services/root-action-executor.service.mjs +4 -4
  72. package/esm2022/tableview/action/services/view-container.service.mjs +4 -4
  73. package/esm2022/tableview/api/action/descriptors/action-confirmation.descriptor.mjs +13 -1
  74. package/esm2022/tableview/api/action/descriptors/action-editor.descriptor.mjs +67 -10
  75. package/esm2022/tableview/api/action/descriptors/action-link-descriptor.factory.mjs +2 -2
  76. package/esm2022/tableview/api/action/descriptors/action-link.descriptor.mjs +17 -1
  77. package/esm2022/tableview/api/action/descriptors/action.descriptor.mjs +32 -7
  78. package/esm2022/tableview/api/action/models/execution/action-instance-state.model.mjs +2 -2
  79. package/esm2022/tableview/api/editor/descriptors/field-many.descriptor.mjs +2 -1
  80. package/esm2022/tableview/api/editor/models/formly-custom-field.model.mjs +4 -4
  81. package/esm2022/tableview/api/tableview/descriptors/tableview.descriptor.mjs +13 -5
  82. package/esm2022/tableview/api/tableview/helpers/tableview-default-actions.mjs +3 -2
  83. package/esm2022/tableview/api/tableview/helpers/tableview-descriptor-helpers.mjs +2 -2
  84. package/esm2022/tableview/editor/components/editor/auto-save-status/auto-save-status.component.mjs +4 -4
  85. package/esm2022/tableview/editor/components/editor/form-editor.component.mjs +31 -38
  86. package/esm2022/tableview/editor/components/formly/fields/formly-field-action/formly-field-action.component.mjs +4 -4
  87. package/esm2022/tableview/editor/components/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.mjs +7 -5
  88. package/esm2022/tableview/editor/components/formly/fields/formly-field-custom/formly-field-custom.component.mjs +4 -4
  89. package/esm2022/tableview/editor/components/formly/fields/formly-field-datepicker/formly-field-datepicker.component.mjs +7 -5
  90. package/esm2022/tableview/editor/components/formly/fields/formly-field-dropdown/formly-field-dropdown.component.mjs +7 -5
  91. package/esm2022/tableview/editor/components/formly/fields/formly-field-fieldset/formly-field-fieldset.component.mjs +4 -4
  92. package/esm2022/tableview/editor/components/formly/fields/formly-field-input/formly-field-input.component.mjs +5 -5
  93. package/esm2022/tableview/editor/components/formly/fields/formly-field-label/formly-field-label.component.mjs +4 -4
  94. package/esm2022/tableview/editor/components/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.mjs +5 -6
  95. package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +5 -6
  96. package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.mjs +6 -7
  97. package/esm2022/tableview/editor/components/formly/fields/formly-field-tabs/formly-field-tabs.component.mjs +4 -4
  98. package/esm2022/tableview/editor/components/formly/fields/formly-field-type.abstract.component.mjs +6 -5
  99. package/esm2022/tableview/editor/components/formly/pipes/formly-field-label.pipe.mjs +4 -4
  100. package/esm2022/tableview/editor/components/formly/wrappers/formly-field-no-label-wrapper/formly-field-no-label-wrapper.component.mjs +4 -4
  101. package/esm2022/tableview/editor/components/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.mjs +4 -4
  102. package/esm2022/tableview/editor/helpers/editor-autosave.mjs +2 -2
  103. package/esm2022/tableview/editor/services/form-editor.service.mjs +4 -4
  104. package/esm2022/tableview/index.mjs +1 -2
  105. package/esm2022/tableview/tableview/components/route/tableview-route.component.mjs +4 -4
  106. package/esm2022/tableview/tableview/components/tableview/tableview.component.mjs +4 -4
  107. package/fesm2022/mediusinc-mng-commons-core.mjs +130 -71
  108. package/fesm2022/mediusinc-mng-commons-core.mjs.map +1 -1
  109. package/fesm2022/mediusinc-mng-commons-filter.mjs +83 -24
  110. package/fesm2022/mediusinc-mng-commons-filter.mjs.map +1 -1
  111. package/fesm2022/mediusinc-mng-commons-form-api.mjs.map +1 -1
  112. package/fesm2022/mediusinc-mng-commons-form.mjs +15 -15
  113. package/fesm2022/mediusinc-mng-commons-form.mjs.map +1 -1
  114. package/fesm2022/mediusinc-mng-commons-model.mjs.map +1 -1
  115. package/fesm2022/mediusinc-mng-commons-table-api.mjs +31 -7
  116. package/fesm2022/mediusinc-mng-commons-table-api.mjs.map +1 -1
  117. package/fesm2022/mediusinc-mng-commons-table.mjs +704 -606
  118. package/fesm2022/mediusinc-mng-commons-table.mjs.map +1 -1
  119. package/fesm2022/mediusinc-mng-commons-tableview-api.mjs +146 -26
  120. package/fesm2022/mediusinc-mng-commons-tableview-api.mjs.map +1 -1
  121. package/fesm2022/mediusinc-mng-commons-tableview.mjs +260 -317
  122. package/fesm2022/mediusinc-mng-commons-tableview.mjs.map +1 -1
  123. package/fesm2022/mediusinc-mng-commons.mjs.map +1 -1
  124. package/filter/descriptors/filter-lookup.descriptor.d.ts +17 -20
  125. package/filter/descriptors/filter.descriptor.d.ts +32 -2
  126. package/form/components/date-range/date-range.component.d.ts +3 -3
  127. package/form/components/number-range/number-range.component.d.ts +2 -2
  128. package/package.json +4 -4
  129. package/table/api/descriptors/column.descriptor.d.ts +1 -1
  130. package/table/api/descriptors/sort.descriptor.d.ts +2 -2
  131. package/table/api/descriptors/table.descriptor.d.ts +20 -6
  132. package/table/components/column-filter/column-filter.component.d.ts +8 -14
  133. package/table/components/filter/filter-active-tag/filter-active-tag.component.d.ts +5 -5
  134. package/table/components/filter/filter-form/filter-form.component.d.ts +10 -19
  135. package/table/components/filter/filter-overlay-with-tag/filter-overlay-with-tag.component.d.ts +11 -13
  136. package/table/components/table/table.component.d.ts +20 -64
  137. package/table/helpers/filters.d.ts +4 -7
  138. package/table/helpers/table.d.ts +6 -0
  139. package/table/index.d.ts +1 -1
  140. package/table/models/column-preferences.model.d.ts +2 -2
  141. package/table/models/filter.model.d.ts +14 -2
  142. package/table/services/table-data.service.d.ts +36 -0
  143. package/table/services/table-metadata.service.d.ts +31 -0
  144. package/table/services/table-preferences.service.d.ts +25 -0
  145. package/tableview/action/components/editor/injector-context/action-editor-injector-context.component.d.ts +4 -7
  146. package/tableview/action/components/localization/data-language-dropdown.component.d.ts +1 -1
  147. package/tableview/action/helpers/action-execution.d.ts +7 -0
  148. package/tableview/action/models/execution/action-instance.model.d.ts +1 -2
  149. package/tableview/action/services/action-executor.service.d.ts +1 -2
  150. package/tableview/api/action/descriptors/action-confirmation.descriptor.d.ts +1 -0
  151. package/tableview/api/action/descriptors/action-editor.descriptor.d.ts +12 -4
  152. package/tableview/api/action/descriptors/action-link.descriptor.d.ts +1 -0
  153. package/tableview/api/action/descriptors/action.descriptor.d.ts +5 -3
  154. package/tableview/api/action/models/execution/action-instance-state.model.d.ts +1 -1
  155. package/tableview/api/editor/descriptors/field-base.descriptor.d.ts +4 -10
  156. package/tableview/api/editor/descriptors/field-group.descriptor.d.ts +1 -1
  157. package/tableview/api/tableview/descriptors/tableview.descriptor.d.ts +6 -4
  158. package/tableview/editor/components/editor/form-editor.component.d.ts +3 -2
  159. package/tableview/editor/components/formly/fields/formly-field-fieldset/formly-field-fieldset.component.d.ts +1 -1
  160. package/tableview/editor/components/formly/fields/formly-field-type.abstract.component.d.ts +2 -1
  161. package/tableview/index.d.ts +0 -1
  162. package/version-info.json +6 -6
  163. package/esm2022/table/services/data-list.service.mjs +0 -29
  164. package/esm2022/tableview/action/models/execution/action-instance-state.model.mjs +0 -32
  165. package/table/services/data-list.service.d.ts +0 -19
  166. package/tableview/action/models/execution/action-instance-state.model.d.ts +0 -30
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { computed, signal, Component, ChangeDetectionStrategy, InjectionToken, inject, DestroyRef, effect, Injectable, Injector, ElementRef, ApplicationRef, ViewContainerRef, EventEmitter, EnvironmentInjector, createComponent, Directive, Input, Output, TemplateRef, booleanAttribute, numberAttribute, Pipe, APP_INITIALIZER, ErrorHandler } from '@angular/core';
2
+ import { computed, signal, Component, ChangeDetectionStrategy, InjectionToken, inject, DestroyRef, effect, Injectable, Injector, ElementRef, ApplicationRef, ViewContainerRef, EventEmitter, EnvironmentInjector, createComponent, Directive, Input, Output, TemplateRef, input, booleanAttribute, numberAttribute, Pipe, untracked, APP_INITIALIZER, ErrorHandler } from '@angular/core';
3
3
  import * as i3$1 from '@ngx-translate/core';
4
4
  import { TranslateModule, TranslateService } from '@ngx-translate/core';
5
5
  import * as i3 from 'primeng/confirmdialog';
@@ -53,10 +53,10 @@ class NotificationWrapperComponent {
53
53
  this.dialogNotification.set(null);
54
54
  }
55
55
  }
56
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: NotificationWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
57
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.5", 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 ' + getMessageIcon(message)\"></span>\n <div class=\"p-toast-message-text\">\n <div class=\"p-toast-summary\">{{ message.summary }}</div>\n @if (message.detail) {\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 }\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 appendTo=\"body\"\n draggable=\"false\"\n modal=\"true\">\n <ng-template pTemplate=\"header\" mngDialogKeydownHandler>\n <span class=\"p-dialog-title font-bold mng-dialog-success\">\n <span [class]=\"'mr-2 pi ' + dialogNotificationIconClass()\"></span>\n {{ dialogNotification()?.summary ?? '' }}\n </span>\n </ng-template>\n <div class=\"mng-notification-details\">\n {{ dialogNotification()?.detail ?? '' }}\n </div>\n</p-dialog>\n", styles: [".mng-notification-details{white-space:pre-wrap;word-wrap:break-word}\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"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
56
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NotificationWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
57
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.12", 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 ' + getMessageIcon(message)\"></span>\n <div class=\"p-toast-message-text\">\n <div class=\"p-toast-summary\">{{ message.summary }}</div>\n @if (message.detail) {\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 }\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 appendTo=\"body\"\n draggable=\"false\"\n modal=\"true\">\n <ng-template pTemplate=\"header\" mngDialogKeydownHandler>\n <span class=\"p-dialog-title font-bold mng-dialog-success\">\n <span [class]=\"'mr-2 pi ' + dialogNotificationIconClass()\"></span>\n {{ dialogNotification()?.summary ?? '' }}\n </span>\n </ng-template>\n <div class=\"mng-notification-details\">\n {{ dialogNotification()?.detail ?? '' }}\n </div>\n</p-dialog>\n", styles: [".mng-notification-details{white-space:pre-wrap;word-wrap:break-word}\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"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
58
58
  }
59
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: NotificationWrapperComponent, decorators: [{
59
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NotificationWrapperComponent, decorators: [{
60
60
  type: Component,
61
61
  args: [{ selector: 'mng-notification-wrapper', standalone: true, imports: [ToastModule, ConfirmDialogModule, TranslateModule, DialogModule], 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 ' + getMessageIcon(message)\"></span>\n <div class=\"p-toast-message-text\">\n <div class=\"p-toast-summary\">{{ message.summary }}</div>\n @if (message.detail) {\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 }\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 appendTo=\"body\"\n draggable=\"false\"\n modal=\"true\">\n <ng-template pTemplate=\"header\" mngDialogKeydownHandler>\n <span class=\"p-dialog-title font-bold mng-dialog-success\">\n <span [class]=\"'mr-2 pi ' + dialogNotificationIconClass()\"></span>\n {{ dialogNotification()?.summary ?? '' }}\n </span>\n </ng-template>\n <div class=\"mng-notification-details\">\n {{ dialogNotification()?.detail ?? '' }}\n </div>\n</p-dialog>\n", styles: [".mng-notification-details{white-space:pre-wrap;word-wrap:break-word}\n"] }]
62
62
  }] });
@@ -437,11 +437,11 @@ class CommonsService {
437
437
  /**
438
438
  * @deprecated Use layout app logo instead.
439
439
  */
440
- this.appLogoLight = signal(this.moduleConfig?.app?.logoPathLight ? this.moduleConfig.app.logoPathLight : this.moduleConfig?.app?.logoPath ?? 'assets/layout/images/logo.png');
440
+ this.appLogoLight = signal(this.moduleConfig?.app?.logoPathLight ? this.moduleConfig.app.logoPathLight : (this.moduleConfig?.app?.logoPath ?? 'assets/layout/images/logo.png'));
441
441
  /**
442
442
  * @deprecated Use layout app logo instead.
443
443
  */
444
- this.appLogoDark = signal(this.moduleConfig?.app?.logoPathDark ? this.moduleConfig.app.logoPathDark : this.moduleConfig?.app?.logoPath ?? 'assets/layout/images/logo.png');
444
+ this.appLogoDark = signal(this.moduleConfig?.app?.logoPathDark ? this.moduleConfig.app.logoPathDark : (this.moduleConfig?.app?.logoPath ?? 'assets/layout/images/logo.png'));
445
445
  /**
446
446
  * @deprecated Use layout app logo instead.
447
447
  */
@@ -449,11 +449,11 @@ class CommonsService {
449
449
  /**
450
450
  * @deprecated Use layout app logo instead.
451
451
  */
452
- this.appLogoNameLight = signal(this.moduleConfig?.app?.logoNamePathLight ? this.moduleConfig.app.logoNamePathLight : this.moduleConfig?.app?.logoNamePath ?? 'assets/layout/images/logo-appname.png');
452
+ this.appLogoNameLight = signal(this.moduleConfig?.app?.logoNamePathLight ? this.moduleConfig.app.logoNamePathLight : (this.moduleConfig?.app?.logoNamePath ?? 'assets/layout/images/logo-appname.png'));
453
453
  /**
454
454
  * @deprecated Use layout app logo instead.
455
455
  */
456
- this.appLogoNameDark = signal(this.moduleConfig?.app?.logoNamePathDark ? this.moduleConfig.app.logoNamePathDark : this.moduleConfig?.app?.logoNamePath ?? 'assets/layout/images/logo-appname.png');
456
+ this.appLogoNameDark = signal(this.moduleConfig?.app?.logoNamePathDark ? this.moduleConfig.app.logoNamePathDark : (this.moduleConfig?.app?.logoNamePath ?? 'assets/layout/images/logo-appname.png'));
457
457
  /**
458
458
  * @deprecated Use layout app logo instead.
459
459
  */
@@ -693,10 +693,10 @@ class CommonsService {
693
693
  titlePieces.push(this.translate.instant('app.name'));
694
694
  return titlePieces.join(' - ');
695
695
  }
696
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: CommonsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
697
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: CommonsService }); }
696
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CommonsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
697
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CommonsService }); }
698
698
  }
699
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: CommonsService, decorators: [{
699
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CommonsService, decorators: [{
700
700
  type: Injectable
701
701
  }], ctorParameters: () => [] });
702
702
 
@@ -707,10 +707,10 @@ class ErrorPageComponent {
707
707
  constructor(commons) {
708
708
  this.commons = commons;
709
709
  }
710
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: ErrorPageComponent, deps: [{ token: CommonsService }], target: i0.ɵɵFactoryTarget.Component }); }
711
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.5", type: ErrorPageComponent, isStandalone: true, selector: "mng-error-page-deprecated", 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.appLogo()\" class=\"exception-logo\" alt=\"App logo\" />\n <img [src]=\"commons.appLogoName()\" 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", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }, { 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 }); }
710
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ErrorPageComponent, deps: [{ token: CommonsService }], target: i0.ɵɵFactoryTarget.Component }); }
711
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: ErrorPageComponent, isStandalone: true, selector: "mng-error-page-deprecated", 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.appLogo()\" class=\"exception-logo\" alt=\"App logo\" />\n <img [src]=\"commons.appLogoName()\" 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", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }, { 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 }); }
712
712
  }
713
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: ErrorPageComponent, decorators: [{
713
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ErrorPageComponent, decorators: [{
714
714
  type: Component,
715
715
  args: [{ standalone: true, selector: 'mng-error-page-deprecated', 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.appLogo()\" class=\"exception-logo\" alt=\"App logo\" />\n <img [src]=\"commons.appLogoName()\" 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"] }]
716
716
  }], ctorParameters: () => [{ type: CommonsService }] });
@@ -722,10 +722,10 @@ class NotFoundPageComponent {
722
722
  constructor(commons) {
723
723
  this.commons = commons;
724
724
  }
725
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: NotFoundPageComponent, deps: [{ token: CommonsService }], target: i0.ɵɵFactoryTarget.Component }); }
726
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.5", type: NotFoundPageComponent, isStandalone: true, selector: "mng-not-found-page-deprecated", 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.appLogo()\" class=\"exception-logo\" alt=\"App logo\" />\n <img [src]=\"commons.appLogoName()\" 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", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }, { 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 }); }
725
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NotFoundPageComponent, deps: [{ token: CommonsService }], target: i0.ɵɵFactoryTarget.Component }); }
726
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: NotFoundPageComponent, isStandalone: true, selector: "mng-not-found-page-deprecated", 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.appLogo()\" class=\"exception-logo\" alt=\"App logo\" />\n <img [src]=\"commons.appLogoName()\" 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", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }, { 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 }); }
727
727
  }
728
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: NotFoundPageComponent, decorators: [{
728
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NotFoundPageComponent, decorators: [{
729
729
  type: Component,
730
730
  args: [{ standalone: true, selector: 'mng-not-found-page-deprecated', 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.appLogo()\" class=\"exception-logo\" alt=\"App logo\" />\n <img [src]=\"commons.appLogoName()\" 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"] }]
731
731
  }], ctorParameters: () => [{ type: CommonsService }] });
@@ -946,6 +946,13 @@ function dataListParamsToUrlQuery(params, defaults = {
946
946
  paramFilter.matchMode !== FilterMatchMode.DoesNotExist) {
947
947
  return;
948
948
  }
949
+ if (paramFilter.value == null &&
950
+ defaultFilter?.value != null &&
951
+ paramFilter.matchMode !== FilterMatchMode.Exists &&
952
+ paramFilter.matchMode !== FilterMatchMode.DoesNotExist) {
953
+ urlParams[`${opts?.prependFilterName ?? ''}${k}`] = 'null';
954
+ return;
955
+ }
949
956
  urlParams[`${opts?.prependFilterName ?? ''}${k}`] = dataListParamsFiltersToUrlQuery(params, k, true);
950
957
  });
951
958
  }
@@ -1109,15 +1116,24 @@ function fromUrlQueryToDataListParams(urlParams, opts) {
1109
1116
  // empty string should be ignored
1110
1117
  return;
1111
1118
  }
1119
+ const filterKey = opts?.prependFilterName ? urlParamKey.substring(opts.prependFilterName.length) : urlParamKey;
1112
1120
  const filterParts = urlParamValue.split(':');
1113
1121
  let partIdx = 0;
1122
+ // removed default filter
1123
+ if (filterParts[partIdx] === 'null') {
1124
+ if (!params.filters) {
1125
+ params.filters = {};
1126
+ }
1127
+ params.filters[filterKey] = { value: null };
1128
+ return;
1129
+ }
1114
1130
  // case sensitive
1115
1131
  let caseSensitive = undefined;
1116
1132
  if (filterParts[partIdx] === 'cs' || filterParts[partIdx] === 'ci') {
1117
1133
  caseSensitive = filterParts[partIdx++] === 'cs';
1118
1134
  }
1119
1135
  // match mode
1120
- const matchMode = filterParts[partIdx] ? FilterMatchMode.fromAbbreviation(filterParts[partIdx]) ?? filterParts[partIdx] : FilterMatchMode.Equals;
1136
+ const matchMode = filterParts[partIdx] ? (FilterMatchMode.fromAbbreviation(filterParts[partIdx]) ?? filterParts[partIdx]) : FilterMatchMode.Equals;
1121
1137
  partIdx++;
1122
1138
  const noVal = matchMode === FilterMatchMode.Exists || matchMode === FilterMatchMode.DoesNotExist;
1123
1139
  // value
@@ -1218,7 +1234,6 @@ function fromUrlQueryToDataListParams(urlParams, opts) {
1218
1234
  if (!params.filters) {
1219
1235
  params.filters = {};
1220
1236
  }
1221
- const filterKey = opts?.prependFilterName ? urlParamKey.substring(opts.prependFilterName.length) : urlParamKey;
1222
1237
  params.filters[filterKey] = { value: value, matchMode: matchMode, caseSensitive: caseSensitive };
1223
1238
  }
1224
1239
  });
@@ -1373,10 +1388,10 @@ class ComponentDirective {
1373
1388
  }
1374
1389
  this.componentInstanceEventEmitter.next(this.componentRef.instance);
1375
1390
  }
1376
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: ComponentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1377
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.5", type: ComponentDirective, isStandalone: true, selector: "[mngComponent]", inputs: { component: ["mngComponent", "component"], componentIt: ["injectionToken", "componentIt"], inputs: "inputs", attachToHost: "attachToHost", parentInjector: "parentInjector" }, outputs: { componentInstanceEventEmitter: "instanceCreated" }, ngImport: i0 }); }
1391
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ComponentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1392
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.12", type: ComponentDirective, isStandalone: true, selector: "[mngComponent]", inputs: { component: ["mngComponent", "component"], componentIt: ["injectionToken", "componentIt"], inputs: "inputs", attachToHost: "attachToHost", parentInjector: "parentInjector" }, outputs: { componentInstanceEventEmitter: "instanceCreated" }, ngImport: i0 }); }
1378
1393
  }
1379
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: ComponentDirective, decorators: [{
1394
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ComponentDirective, decorators: [{
1380
1395
  type: Directive,
1381
1396
  args: [{
1382
1397
  standalone: true,
@@ -1399,6 +1414,29 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImpor
1399
1414
  args: ['instanceCreated']
1400
1415
  }] } });
1401
1416
 
1417
+ class RerenderDirective {
1418
+ constructor() {
1419
+ this.templateRef = inject((TemplateRef));
1420
+ this.viewContainerRef = inject(ViewContainerRef);
1421
+ this.mngRerender = input.required();
1422
+ effect(() => {
1423
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
1424
+ const doRerender = this.mngRerender();
1425
+ this.viewContainerRef.clear();
1426
+ this.viewContainerRef.createEmbeddedView(this.templateRef);
1427
+ });
1428
+ }
1429
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: RerenderDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1430
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.12", type: RerenderDirective, isStandalone: true, selector: "[mngRerender]", inputs: { mngRerender: { classPropertyName: "mngRerender", publicName: "mngRerender", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0 }); }
1431
+ }
1432
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: RerenderDirective, decorators: [{
1433
+ type: Directive,
1434
+ args: [{
1435
+ standalone: true,
1436
+ selector: '[mngRerender]'
1437
+ }]
1438
+ }], ctorParameters: () => [] });
1439
+
1402
1440
  class TemplateDirective {
1403
1441
  constructor() {
1404
1442
  this.template = inject((TemplateRef));
@@ -1410,10 +1448,10 @@ class TemplateDirective {
1410
1448
  getViewContainerRef() {
1411
1449
  return this.viewContainerRef;
1412
1450
  }
1413
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: TemplateDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1414
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.5", type: TemplateDirective, isStandalone: true, selector: "[mngTemplate]", inputs: { type: "type", name: ["mngTemplate", "name"] }, ngImport: i0 }); }
1451
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TemplateDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1452
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.12", type: TemplateDirective, isStandalone: true, selector: "[mngTemplate]", inputs: { type: "type", name: ["mngTemplate", "name"] }, ngImport: i0 }); }
1415
1453
  }
1416
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: TemplateDirective, decorators: [{
1454
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TemplateDirective, decorators: [{
1417
1455
  type: Directive,
1418
1456
  args: [{
1419
1457
  standalone: true,
@@ -2285,20 +2323,20 @@ class BooleanPipe {
2285
2323
  }
2286
2324
  if (typeof value === 'boolean') {
2287
2325
  if (icon) {
2288
- return value ? yes ?? 'pi pi-check' : no ?? 'pi pi-times';
2326
+ return value ? (yes ?? 'pi pi-check') : (no ?? 'pi pi-times');
2289
2327
  }
2290
2328
  else {
2291
- return value ? yes ?? 'general.yes' : no ?? 'general.no';
2329
+ return value ? (yes ?? 'general.yes') : (no ?? 'general.no');
2292
2330
  }
2293
2331
  }
2294
2332
  else {
2295
2333
  return value;
2296
2334
  }
2297
2335
  }
2298
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: BooleanPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2299
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.0.5", ngImport: i0, type: BooleanPipe, isStandalone: true, name: "mngBoolean" }); }
2336
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: BooleanPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2337
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.12", ngImport: i0, type: BooleanPipe, isStandalone: true, name: "mngBoolean" }); }
2300
2338
  }
2301
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: BooleanPipe, decorators: [{
2339
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: BooleanPipe, decorators: [{
2302
2340
  type: Pipe,
2303
2341
  args: [{
2304
2342
  standalone: true,
@@ -2316,10 +2354,10 @@ class ClassMapPipe {
2316
2354
  return className ?? '';
2317
2355
  }
2318
2356
  }
2319
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: ClassMapPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2320
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.0.5", ngImport: i0, type: ClassMapPipe, isStandalone: true, name: "mngClassMap" }); }
2357
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ClassMapPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2358
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.12", ngImport: i0, type: ClassMapPipe, isStandalone: true, name: "mngClassMap" }); }
2321
2359
  }
2322
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: ClassMapPipe, decorators: [{
2360
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ClassMapPipe, decorators: [{
2323
2361
  type: Pipe,
2324
2362
  args: [{
2325
2363
  standalone: true,
@@ -2410,10 +2448,10 @@ class EnumPipe {
2410
2448
  }
2411
2449
  return i18nPath ? `${i18nPath}.${enumValue}` : enumValue;
2412
2450
  }
2413
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: EnumPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2414
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.0.5", ngImport: i0, type: EnumPipe, isStandalone: true, name: "mngEnum" }); }
2451
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: EnumPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2452
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.12", ngImport: i0, type: EnumPipe, isStandalone: true, name: "mngEnum" }); }
2415
2453
  }
2416
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: EnumPipe, decorators: [{
2454
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: EnumPipe, decorators: [{
2417
2455
  type: Pipe,
2418
2456
  args: [{
2419
2457
  standalone: true,
@@ -2432,10 +2470,10 @@ class JsonPathPipe {
2432
2470
  transform(value, path = '') {
2433
2471
  return getObjectPropertyByPath(value, path);
2434
2472
  }
2435
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: JsonPathPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2436
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.0.5", ngImport: i0, type: JsonPathPipe, isStandalone: true, name: "mngJsonPath" }); }
2473
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: JsonPathPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2474
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.12", ngImport: i0, type: JsonPathPipe, isStandalone: true, name: "mngJsonPath" }); }
2437
2475
  }
2438
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: JsonPathPipe, decorators: [{
2476
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: JsonPathPipe, decorators: [{
2439
2477
  type: Pipe,
2440
2478
  args: [{
2441
2479
  standalone: true,
@@ -2462,10 +2500,10 @@ class EnumeratePipe {
2462
2500
  })
2463
2501
  .join(valueSeparator);
2464
2502
  }
2465
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: EnumeratePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2466
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.0.5", ngImport: i0, type: EnumeratePipe, isStandalone: true, name: "mngEnumerate" }); }
2503
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: EnumeratePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2504
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.12", ngImport: i0, type: EnumeratePipe, isStandalone: true, name: "mngEnumerate" }); }
2467
2505
  }
2468
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: EnumeratePipe, decorators: [{
2506
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: EnumeratePipe, decorators: [{
2469
2507
  type: Pipe,
2470
2508
  args: [{
2471
2509
  standalone: true,
@@ -2507,10 +2545,10 @@ class EnumerateAsyncPipe {
2507
2545
  }))));
2508
2546
  }), map(i => i.join(valueSeparator)));
2509
2547
  }
2510
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: EnumerateAsyncPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2511
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.0.5", ngImport: i0, type: EnumerateAsyncPipe, isStandalone: true, name: "mngEnumerateAsync" }); }
2548
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: EnumerateAsyncPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2549
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.12", ngImport: i0, type: EnumerateAsyncPipe, isStandalone: true, name: "mngEnumerateAsync" }); }
2512
2550
  }
2513
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: EnumerateAsyncPipe, decorators: [{
2551
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: EnumerateAsyncPipe, decorators: [{
2514
2552
  type: Pipe,
2515
2553
  args: [{
2516
2554
  standalone: true,
@@ -2522,14 +2560,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImpor
2522
2560
  class GetterPipe {
2523
2561
  transform(value, getterFn, item) {
2524
2562
  if (typeof getterFn === 'function') {
2525
- return getterFn(item, value);
2563
+ return getterFn(value, item);
2526
2564
  }
2527
2565
  return value;
2528
2566
  }
2529
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: GetterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2530
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.0.5", ngImport: i0, type: GetterPipe, isStandalone: true, name: "mngGetter" }); }
2567
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: GetterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2568
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.12", ngImport: i0, type: GetterPipe, isStandalone: true, name: "mngGetter" }); }
2531
2569
  }
2532
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: GetterPipe, decorators: [{
2570
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: GetterPipe, decorators: [{
2533
2571
  type: Pipe,
2534
2572
  args: [{
2535
2573
  standalone: true,
@@ -2542,10 +2580,10 @@ class I18nPropertyPipe {
2542
2580
  transform(property, model) {
2543
2581
  return getI18nTypePropertyKey(model.i18nBaseKey, property);
2544
2582
  }
2545
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: I18nPropertyPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2546
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.0.5", ngImport: i0, type: I18nPropertyPipe, isStandalone: true, name: "mngI18nProperty" }); }
2583
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: I18nPropertyPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2584
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.12", ngImport: i0, type: I18nPropertyPipe, isStandalone: true, name: "mngI18nProperty" }); }
2547
2585
  }
2548
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: I18nPropertyPipe, decorators: [{
2586
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: I18nPropertyPipe, decorators: [{
2549
2587
  type: Pipe,
2550
2588
  args: [{
2551
2589
  standalone: true,
@@ -2624,10 +2662,10 @@ class ParametrizePipe {
2624
2662
  parametrizeString(s, params) {
2625
2663
  return s.replace(/{{\s?([^{}\s]*)\s?}}/g, (subs, key) => this.jsonPath.transform(params, key) ?? subs);
2626
2664
  }
2627
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: ParametrizePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2628
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.0.5", ngImport: i0, type: ParametrizePipe, isStandalone: true, name: "mngParametrize" }); }
2665
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ParametrizePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2666
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.12", ngImport: i0, type: ParametrizePipe, isStandalone: true, name: "mngParametrize" }); }
2629
2667
  }
2630
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: ParametrizePipe, decorators: [{
2668
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ParametrizePipe, decorators: [{
2631
2669
  type: Pipe,
2632
2670
  args: [{
2633
2671
  standalone: true,
@@ -2646,10 +2684,10 @@ class TemplatePipe {
2646
2684
  }
2647
2685
  return value;
2648
2686
  }
2649
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: TemplatePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2650
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.0.5", ngImport: i0, type: TemplatePipe, isStandalone: true, name: "template" }); }
2687
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TemplatePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2688
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.12", ngImport: i0, type: TemplatePipe, isStandalone: true, name: "template" }); }
2651
2689
  }
2652
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: TemplatePipe, decorators: [{
2690
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TemplatePipe, decorators: [{
2653
2691
  type: Pipe,
2654
2692
  args: [{
2655
2693
  standalone: true,
@@ -2658,6 +2696,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImpor
2658
2696
  }]
2659
2697
  }] });
2660
2698
 
2699
+ /**
2700
+ * Effect function with explicit declaration of dependencies. Dependencies will be tracked, whereas the main execution will not be.
2701
+ *
2702
+ * @param deps Array of dependencies to be tracked.
2703
+ * @param fn Function where dependencies will no longer be tracked.
2704
+ * @param opts Additional options:
2705
+ * - firstOnly Executes effect only once, then destroy it.
2706
+ */
2707
+ function effectWithDeps(deps, fn, opts) {
2708
+ const ref = effect(() => {
2709
+ if (opts?.firstOnly) {
2710
+ ref.destroy();
2711
+ }
2712
+ const depsValues = deps.map(s => s());
2713
+ untracked(() => {
2714
+ fn(depsValues);
2715
+ });
2716
+ });
2717
+ return ref;
2718
+ }
2719
+
2661
2720
  function TypeName(typeName) {
2662
2721
  return function (target) {
2663
2722
  defineReflectTypeName(target, typeName);
@@ -2962,10 +3021,10 @@ class PermissionService {
2962
3021
  }
2963
3022
  return serviceInstance.isActionVisible(actionCtx, route);
2964
3023
  }
2965
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: PermissionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2966
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: PermissionService }); }
3024
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: PermissionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3025
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: PermissionService }); }
2967
3026
  }
2968
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: PermissionService, decorators: [{
3027
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: PermissionService, decorators: [{
2969
3028
  type: Injectable
2970
3029
  }] });
2971
3030
 
@@ -3841,10 +3900,10 @@ class CommonsRouterService {
3841
3900
  getModulePathFromRouterLink(path) {
3842
3901
  return ('/' + (Array.isArray(path) ? path.join('/') : path)).replace(/\/\//g, '/');
3843
3902
  }
3844
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: CommonsRouterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3845
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: CommonsRouterService }); }
3903
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CommonsRouterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3904
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CommonsRouterService }); }
3846
3905
  }
3847
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: CommonsRouterService, decorators: [{
3906
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CommonsRouterService, decorators: [{
3848
3907
  type: Injectable
3849
3908
  }], ctorParameters: () => [] });
3850
3909
 
@@ -3940,10 +3999,10 @@ class CommonsInitService {
3940
3999
  return throwError$1(() => err);
3941
4000
  }));
3942
4001
  }
3943
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: CommonsInitService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3944
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: CommonsInitService }); }
4002
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CommonsInitService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4003
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CommonsInitService }); }
3945
4004
  }
3946
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: CommonsInitService, decorators: [{
4005
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CommonsInitService, decorators: [{
3947
4006
  type: Injectable
3948
4007
  }] });
3949
4008
 
@@ -3968,10 +4027,10 @@ class CommonsStorageService {
3968
4027
  removeItem(type, key) {
3969
4028
  this.localStorage.removeItem(this.buildLocalStorageKey(type, key));
3970
4029
  }
3971
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: CommonsStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3972
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: CommonsStorageService }); }
4030
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CommonsStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4031
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CommonsStorageService }); }
3973
4032
  }
3974
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: CommonsStorageService, decorators: [{
4033
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CommonsStorageService, decorators: [{
3975
4034
  type: Injectable
3976
4035
  }] });
3977
4036
 
@@ -4073,5 +4132,5 @@ function provideCommons(config, ...features) {
4073
4132
  * Generated bundle index. Do not edit.
4074
4133
  */
4075
4134
 
4076
- export { ACommonsErrorBase, APermissions, BROWSER_STORAGE_IT, BooleanPipe, COMMONS_INITIALIZER_IT, COMMONS_MODULE_CONFIG_IT, ClassMapPipe, CommonsConfigurationService, CommonsErrorHandler, CommonsFeatureTypeEnum, CommonsHttpError, CommonsInitEventEnum, CommonsInitService, CommonsInternalError, CommonsRouterService, CommonsService, CommonsStorageService, ComponentDirective, DataProvider, DataProviderInst, EnumName, EnumPipe, EnumerateAsyncPipe, EnumeratePipe, ErrorPageComponent, FilterMatchMode, GetterPipe, I18nPropertyPipe, JsonPathPipe, LOG_PUBLISHERS, LogLevelEnum, LogPublisherConsoleService, LoggerService, NotFoundPageComponent, NotificationWrapperComponent, ParametrizePipe, PermissionService, PermissionTypeEnum, Permissions, RouteBuilder, RoutesBuilder, StyleLevelEnum, StyleSizeEnum, Styles, TemplateDirective, TemplatePipe, TypeName, TypeRegistry, adjustRouteMenuLazyChildrenRouterLinks, angularDateFormatHasSeconds, angularDateFormatHasTime, appendRoutePathToBasePath, boolean$Attribute, booleanOrUndefinedAttribute, commonsActionErrorContextToString, commonsErrorToString, commonsInitializerProvider, copyDataListParams, createLazyChildrenRoute, createLazyRoute, createRoute, createRouteRedirect, createRoutes, dataListParamsFilterToUrlQuery, dataListParamsFilterValueToUrlString, dataListParamsFiltersToUrlQuery, dataListParamsSortToUrlQuery, dataListParamsToUrlQuery, dataProviderBase, dataProviderFromClass, dataProviderWithService, dateToIsoString, defineReflectEnumName, defineReflectTypeName, doesUrlMatchRouterLink, errorCauseToString, errorToString, escapeHtml, escapeHtmlAny, findReflectEnumName, findReflectTypeName, findTemplateByName, flattenObjectKeys, fromAngularDateFormatToPrime, fromAngularNumberFormatToFractions, fromEnumConstantsAsValueArray, fromEnumValuesAsValueArray, fromSubscribeError, fromTableLoadToDataListParams, fromUrlQueryToDataListParams, getEnumConstantName, getEnumConstantNameFromObject, getEnumConstantNames, getEnumConstantNamesFromObject, getEnumConstantValues, getEnumConstantValuesAsNumber, getEnumConstantValuesAsString, getEnumerationI18nBaseKey, getErrorLogLevel, getErrorName, getHttpErrorResponse, getHttpErrorResponseStatus, getHttpErrorResponseStatusText, getI18n, getI18nAsync, 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, throwError, toEnumerationI18nEnumerate, toObservable, toastMessage, valueToDefined };
4135
+ export { ACommonsErrorBase, APermissions, BROWSER_STORAGE_IT, BooleanPipe, COMMONS_INITIALIZER_IT, COMMONS_MODULE_CONFIG_IT, ClassMapPipe, CommonsConfigurationService, CommonsErrorHandler, CommonsFeatureTypeEnum, CommonsHttpError, CommonsInitEventEnum, CommonsInitService, CommonsInternalError, CommonsRouterService, CommonsService, CommonsStorageService, ComponentDirective, DataProvider, DataProviderInst, EnumName, EnumPipe, EnumerateAsyncPipe, EnumeratePipe, ErrorPageComponent, FilterMatchMode, GetterPipe, I18nPropertyPipe, JsonPathPipe, LOG_PUBLISHERS, LogLevelEnum, LogPublisherConsoleService, LoggerService, NotFoundPageComponent, NotificationWrapperComponent, ParametrizePipe, PermissionService, PermissionTypeEnum, Permissions, RerenderDirective, RouteBuilder, RoutesBuilder, StyleLevelEnum, StyleSizeEnum, Styles, TemplateDirective, TemplatePipe, TypeName, TypeRegistry, adjustRouteMenuLazyChildrenRouterLinks, angularDateFormatHasSeconds, angularDateFormatHasTime, appendRoutePathToBasePath, boolean$Attribute, booleanOrUndefinedAttribute, commonsActionErrorContextToString, commonsErrorToString, commonsInitializerProvider, copyDataListParams, createLazyChildrenRoute, createLazyRoute, createRoute, createRouteRedirect, createRoutes, dataListParamsFilterToUrlQuery, dataListParamsFilterValueToUrlString, dataListParamsFiltersToUrlQuery, dataListParamsSortToUrlQuery, dataListParamsToUrlQuery, dataProviderBase, dataProviderFromClass, dataProviderWithService, dateToIsoString, defineReflectEnumName, defineReflectTypeName, doesUrlMatchRouterLink, effectWithDeps, errorCauseToString, errorToString, escapeHtml, escapeHtmlAny, findReflectEnumName, findReflectTypeName, findTemplateByName, flattenObjectKeys, fromAngularDateFormatToPrime, fromAngularNumberFormatToFractions, fromEnumConstantsAsValueArray, fromEnumValuesAsValueArray, fromSubscribeError, fromTableLoadToDataListParams, fromUrlQueryToDataListParams, getEnumConstantName, getEnumConstantNameFromObject, getEnumConstantNames, getEnumConstantNamesFromObject, getEnumConstantValues, getEnumConstantValuesAsNumber, getEnumConstantValuesAsString, getEnumerationI18nBaseKey, getErrorLogLevel, getErrorName, getHttpErrorResponse, getHttpErrorResponseStatus, getHttpErrorResponseStatusText, getI18n, getI18nAsync, 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, throwError, toEnumerationI18nEnumerate, toObservable, toastMessage, valueToDefined };
4077
4136
  //# sourceMappingURL=mediusinc-mng-commons-core.mjs.map