@acorex-platform/module-common-client 0.0.18 → 0.0.21

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 (66) hide show
  1. package/fesm2022/{acorex-platform-module-common-client-acorex-platform-module-common-client-rqWzT7RI.mjs → acorex-platform-module-common-client-acorex-platform-module-common-client-CkeshVWo.mjs} +765 -417
  2. package/fesm2022/acorex-platform-module-common-client-acorex-platform-module-common-client-CkeshVWo.mjs.map +1 -0
  3. package/fesm2022/{acorex-platform-module-common-client-archive-entity.command-CKENj9Od.mjs → acorex-platform-module-common-client-archive-entity.command-BZgNdxFS.mjs} +9 -13
  4. package/fesm2022/acorex-platform-module-common-client-archive-entity.command-BZgNdxFS.mjs.map +1 -0
  5. package/fesm2022/{acorex-platform-module-common-client-archive-entity.command.util-BZrXDNGP.mjs → acorex-platform-module-common-client-archive-entity.command.util-BVrK8ZGy.mjs} +52 -40
  6. package/fesm2022/acorex-platform-module-common-client-archive-entity.command.util-BVrK8ZGy.mjs.map +1 -0
  7. package/fesm2022/{acorex-platform-module-common-client-audit-info-column.component-DuZUwD31.mjs → acorex-platform-module-common-client-audit-info-column.component-CsqKKwwF.mjs} +27 -16
  8. package/fesm2022/acorex-platform-module-common-client-audit-info-column.component-CsqKKwwF.mjs.map +1 -0
  9. package/fesm2022/{acorex-platform-module-common-client-audit-info-edit.component-CSsCG6Dz.mjs → acorex-platform-module-common-client-audit-info-edit.component-COMMBgsX.mjs} +20 -18
  10. package/fesm2022/acorex-platform-module-common-client-audit-info-edit.component-COMMBgsX.mjs.map +1 -0
  11. package/fesm2022/{acorex-platform-module-common-client-audit-info-view.component-WYXsZcLg.mjs → acorex-platform-module-common-client-audit-info-view.component-UOTT-ir_.mjs} +20 -18
  12. package/fesm2022/acorex-platform-module-common-client-audit-info-view.component-UOTT-ir_.mjs.map +1 -0
  13. package/fesm2022/acorex-platform-module-common-client-bulk-archive-entity.command-EIlMyuII.mjs +66 -0
  14. package/fesm2022/acorex-platform-module-common-client-bulk-archive-entity.command-EIlMyuII.mjs.map +1 -0
  15. package/fesm2022/acorex-platform-module-common-client-bulk-disable-entity.command-DgoZVXQA.mjs +65 -0
  16. package/fesm2022/acorex-platform-module-common-client-bulk-disable-entity.command-DgoZVXQA.mjs.map +1 -0
  17. package/fesm2022/acorex-platform-module-common-client-bulk-enable-entity.command-C6fba__g.mjs +65 -0
  18. package/fesm2022/acorex-platform-module-common-client-bulk-enable-entity.command-C6fba__g.mjs.map +1 -0
  19. package/fesm2022/acorex-platform-module-common-client-bulk-restore-archive-entity.command-C8T0gUAH.mjs +65 -0
  20. package/fesm2022/acorex-platform-module-common-client-bulk-restore-archive-entity.command-C8T0gUAH.mjs.map +1 -0
  21. package/fesm2022/{acorex-platform-module-common-client-clone-entity.command-DFgIeWxX.mjs → acorex-platform-module-common-client-clone-entity.command-rTasIhWx.mjs} +26 -27
  22. package/fesm2022/acorex-platform-module-common-client-clone-entity.command-rTasIhWx.mjs.map +1 -0
  23. package/fesm2022/acorex-platform-module-common-client-contracts.mjs +420 -8
  24. package/fesm2022/acorex-platform-module-common-client-contracts.mjs.map +1 -1
  25. package/fesm2022/{acorex-platform-module-common-client-disable-entity.command-DWyqAAwo.mjs → acorex-platform-module-common-client-disable-entity.command-Bc1uH38V.mjs} +8 -13
  26. package/fesm2022/acorex-platform-module-common-client-disable-entity.command-Bc1uH38V.mjs.map +1 -0
  27. package/fesm2022/{acorex-platform-module-common-client-disable-entity.command.util-BBwY9Q30.mjs → acorex-platform-module-common-client-disable-entity.command.util-DQl6u2nj.mjs} +49 -44
  28. package/fesm2022/acorex-platform-module-common-client-disable-entity.command.util-DQl6u2nj.mjs.map +1 -0
  29. package/fesm2022/{acorex-platform-module-common-client-enable-entity.command-BP30gOku.mjs → acorex-platform-module-common-client-enable-entity.command-DeTumWIj.mjs} +8 -13
  30. package/fesm2022/acorex-platform-module-common-client-enable-entity.command-DeTumWIj.mjs.map +1 -0
  31. package/fesm2022/{acorex-platform-module-common-client-get-current-time.command-B7hJTMzT.mjs → acorex-platform-module-common-client-get-current-time.command-Ck_SC5Bu.mjs} +6 -8
  32. package/fesm2022/acorex-platform-module-common-client-get-current-time.command-Ck_SC5Bu.mjs.map +1 -0
  33. package/fesm2022/{acorex-platform-module-common-client-restore-archive-entity.command-B0JFf8ms.mjs → acorex-platform-module-common-client-restore-archive-entity.command-Dr1GcC8a.mjs} +8 -13
  34. package/fesm2022/acorex-platform-module-common-client-restore-archive-entity.command-Dr1GcC8a.mjs.map +1 -0
  35. package/fesm2022/acorex-platform-module-common-client-search-popup.component-DH0OQYoQ.mjs +139 -0
  36. package/fesm2022/acorex-platform-module-common-client-search-popup.component-DH0OQYoQ.mjs.map +1 -0
  37. package/fesm2022/acorex-platform-module-common-client-timeline-version-history-popup.component-BqTLeGtG.mjs +63 -0
  38. package/fesm2022/acorex-platform-module-common-client-timeline-version-history-popup.component-BqTLeGtG.mjs.map +1 -0
  39. package/fesm2022/acorex-platform-module-common-client.mjs +1 -1
  40. package/package.json +3 -3
  41. package/types/acorex-platform-module-common-client-contracts.d.ts +207 -3
  42. package/types/acorex-platform-module-common-client.d.ts +9 -13
  43. package/fesm2022/acorex-platform-module-common-client-acorex-platform-module-common-client-rqWzT7RI.mjs.map +0 -1
  44. package/fesm2022/acorex-platform-module-common-client-archive-entity.command-CKENj9Od.mjs.map +0 -1
  45. package/fesm2022/acorex-platform-module-common-client-archive-entity.command.util-BZrXDNGP.mjs.map +0 -1
  46. package/fesm2022/acorex-platform-module-common-client-audit-info-column.component-DuZUwD31.mjs.map +0 -1
  47. package/fesm2022/acorex-platform-module-common-client-audit-info-edit.component-CSsCG6Dz.mjs.map +0 -1
  48. package/fesm2022/acorex-platform-module-common-client-audit-info-view.component-WYXsZcLg.mjs.map +0 -1
  49. package/fesm2022/acorex-platform-module-common-client-bulk-archive-entity.command-CPqLp9Ci.mjs +0 -75
  50. package/fesm2022/acorex-platform-module-common-client-bulk-archive-entity.command-CPqLp9Ci.mjs.map +0 -1
  51. package/fesm2022/acorex-platform-module-common-client-bulk-disable-entity.command-0J4vgsFL.mjs +0 -75
  52. package/fesm2022/acorex-platform-module-common-client-bulk-disable-entity.command-0J4vgsFL.mjs.map +0 -1
  53. package/fesm2022/acorex-platform-module-common-client-bulk-enable-entity.command-DsVuaInC.mjs +0 -75
  54. package/fesm2022/acorex-platform-module-common-client-bulk-enable-entity.command-DsVuaInC.mjs.map +0 -1
  55. package/fesm2022/acorex-platform-module-common-client-bulk-restore-archive-entity.command-D2y8h15u.mjs +0 -75
  56. package/fesm2022/acorex-platform-module-common-client-bulk-restore-archive-entity.command-D2y8h15u.mjs.map +0 -1
  57. package/fesm2022/acorex-platform-module-common-client-clone-entity.command-DFgIeWxX.mjs.map +0 -1
  58. package/fesm2022/acorex-platform-module-common-client-disable-entity.command-DWyqAAwo.mjs.map +0 -1
  59. package/fesm2022/acorex-platform-module-common-client-disable-entity.command.util-BBwY9Q30.mjs.map +0 -1
  60. package/fesm2022/acorex-platform-module-common-client-enable-entity.command-BP30gOku.mjs.map +0 -1
  61. package/fesm2022/acorex-platform-module-common-client-get-current-time.command-B7hJTMzT.mjs.map +0 -1
  62. package/fesm2022/acorex-platform-module-common-client-restore-archive-entity.command-B0JFf8ms.mjs.map +0 -1
  63. package/fesm2022/acorex-platform-module-common-client-search-popup.component-BjGrZHnB.mjs +0 -136
  64. package/fesm2022/acorex-platform-module-common-client-search-popup.component-BjGrZHnB.mjs.map +0 -1
  65. package/fesm2022/acorex-platform-module-common-client-timeline-version-history-popup.component-BwGLuNhW.mjs +0 -59
  66. package/fesm2022/acorex-platform-module-common-client-timeline-version-history-popup.component-BwGLuNhW.mjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-module-common-client-search-popup.component-DH0OQYoQ.mjs","sources":["../../../../libs/modules/common/client/src/lib/features/global-search/search-popup.component.ts","../../../../libs/modules/common/client/src/lib/features/global-search/search-popup.component.html"],"sourcesContent":["import {\n AXListNavigationDirective,\n AXListNavigationItemDirective,\n AXListNavigationModule,\n} from '@acorex/cdk/list-navigation';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXChipsModule } from '@acorex/components/chips';\nimport { AXClickEvent, AXCommonModule, AXHtmlEvent, AXValueChangedEvent } from '@acorex/cdk/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { AXSearchBoxComponent, AXSearchBoxModule } from '@acorex/components/search-box';\nimport { AXSkeletonModule } from '@acorex/components/skeleton';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPSearchDisplayResult } from '@acorex-platform/framework-client/common';\nimport {\n AXPThemeLayoutBlockComponent,\n AXPThemeLayoutHeaderComponent,\n AXPThemeLayoutListComponent,\n AXPThemeLayoutListItemComponent,\n AXPThemeLayoutListItemsGroupComponent,\n AXPStateMessageComponent,\n} from '@acorex-platform/framework-client/layout/components';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject, viewChild, viewChildren } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { first } from 'rxjs';\nimport { AXPGlobalSearchViewModel } from './search.viewmodel';\n\n@Component({\n templateUrl: 'search-popup.component.html',\n styleUrl: 'search-popup.component.css',\n imports: [\n CommonModule,\n FormsModule,\n //\n AXSearchBoxModule,\n AXCommonModule,\n AXDecoratorModule,\n AXTranslationModule,\n AXListNavigationModule,\n AXButtonModule,\n //\n AXSkeletonModule,\n AXChipsModule,\n AXPThemeLayoutBlockComponent,\n AXPThemeLayoutListComponent,\n AXPThemeLayoutListItemComponent,\n AXPThemeLayoutListItemsGroupComponent,\n AXPThemeLayoutHeaderComponent,\n AXPStateMessageComponent,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [AXPGlobalSearchViewModel],\n})\nexport class AXPGlobalSearchPopupComponent extends AXBasePageComponent {\n protected i18nScope = 'global-search';\n\n protected vm = inject(AXPGlobalSearchViewModel);\n\n protected text: string | null = null;\n\n private list = viewChild(AXListNavigationDirective);\n private searchBox = viewChild(AXSearchBoxComponent);\n private items = viewChildren(AXListNavigationItemDirective);\n\n async handleTextChanged(e: AXValueChangedEvent<string>) {\n if (e.isUserInteraction) {\n await this.vm.search(e.value!);\n }\n }\n\n protected override ngOnInit() {\n super.ngOnInit();\n //\n this.vm.onItemSelected.pipe(first()).subscribe((item) => {\n this.close(item);\n });\n }\n\n protected handleSearchKeyDown(e: AXHtmlEvent<KeyboardEvent>) {\n const event = e.nativeEvent!;\n switch (event.code) {\n case 'ArrowDown':\n const item = this.items()[0];\n if (item && this.list()) {\n this.list()?.navigateTo(item);\n }\n event.preventDefault();\n event.stopPropagation();\n break;\n }\n }\n\n protected handleClearClick($event: AXClickEvent) {\n this.vm.clearRecentItems();\n }\n\n protected handleListKeyDown(e: KeyboardEvent) {\n switch (e.code) {\n case 'ArrowUp': {\n const item = this.items()[0];\n if (item && this.list() && item.isActive()) {\n this.searchBox()?.focus();\n }\n break;\n }\n case 'Escape': {\n this.searchBox()?.focus();\n e.preventDefault();\n e.stopPropagation();\n break;\n }\n }\n }\n\n protected handleItemKeyDown(e: KeyboardEvent, item: AXPSearchDisplayResult) {\n switch (e.code) {\n case 'Enter':\n case 'Space': {\n e.preventDefault();\n e.stopPropagation();\n this.vm.execute(item);\n break;\n }\n }\n }\n\n protected handlePinClick(e: Event, item: any) {\n e.stopPropagation();\n this.vm.togglePin(item);\n }\n\n protected searchListItemIcon(item: AXPSearchDisplayResult): string {\n const icon = item.icon?.trim();\n if (!icon) {\n return 'fa-light fa-circle';\n }\n return icon.includes(' ') ? icon : `fa-light ${icon}`;\n }\n}\n","<axp-layout-content>\n <axp-layout-header class=\"ax-lg\">\n <axp-layout-prefix class=\"min-w-0 flex-1\">\n <ax-search-box\n class=\"__search-box w-full\"\n [axAutoFocus]\n [axAutoFocusTime]=\"500\"\n [look]=\"'none'\"\n [ngModel]=\"vm.text()\"\n (onValueChanged)=\"handleTextChanged($event)\"\n [placeholder]=\"'@global-search:terms.search-anything' | translate | async\"\n (onKeyDown)=\"handleSearchKeyDown($event)\"\n >\n <ax-clear-button class=\"__clear-button\"></ax-clear-button>\n </ax-search-box>\n </axp-layout-prefix>\n <axp-layout-suffix class=\"__close-button\">\n <ax-button [look]=\"'solid'\" class=\"ax-sm\" (onClick)=\"close()\">\n <ax-icon icon=\"fa-light fa-xmark leading-[0]!\"></ax-icon>\n </ax-button>\n </axp-layout-suffix>\n </axp-layout-header>\n\n <!-- Results Area -->\n <axp-layout-body>\n @if (vm.isBusy()) {\n <ng-container *ngTemplateOutlet=\"skeleton\"></ng-container>\n } @else if (vm.isEmpty()) {\n <ng-container *ngTemplateOutlet=\"empty\"></ng-container>\n } @else if (vm.isWelcome()) {\n <ng-container *ngTemplateOutlet=\"welcome\"></ng-container>\n } @else if (vm.isStart()) {\n <ng-container *ngTemplateOutlet=\"start\"></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"result\"></ng-container>\n }\n </axp-layout-body>\n\n <!-- Skeleton Template -->\n <ng-template #skeleton>\n <div class=\"flex flex-col gap-10 p-8\">\n @for (item of [1, 2, 3, 4, 5]; track $index) {\n <div class=\"flex items-center gap-4\">\n <ax-skeleton [animated]=\"true\" class=\"w-4 h-4 rounded-full\"></ax-skeleton>\n <div class=\"flex flex-col gap-2 flex-1\">\n <ax-skeleton [animated]=\"true\" class=\"w-1/4 h-2 rounded\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"w-1/2 h-2 rounded\"></ax-skeleton>\n </div>\n </div>\n }\n </div>\n </ng-template>\n\n <!-- Empty Template -->\n <ng-template #empty>\n <axp-state-message icon=\"fa-light fa-search\" [title]=\"'@global-search:components.search-box.empty-states.no-result.title'\" [description]=\"'@global-search:components.search-box.empty-states.no-result.description'\"></axp-state-message>\n </ng-template>\n\n <!-- Welcome Template -->\n <ng-template #welcome>\n <axp-state-message icon=\"fa-light fa-search\" [title]=\"'@global-search:components.search-box.empty-states.start.title'\" [description]=\"'@global-search:components.search-box.empty-states.start.description'\"></axp-state-message>\n </ng-template>\n\n <!-- Start Template -->\n <ng-template #start>\n <!-- Pinned Items -->\n <axp-layout-list class=\"p-4 divide-none\" (keydown)=\"handleListKeyDown($event)\" axListNavigation #list=\"axListNavigation\">\n @if (vm.pinnedItems().length > 0) {\n <axp-layout-list-group>\n <axp-layout-title>{{ '@global-search:terms.pinned' | translate | async }}</axp-layout-title>\n @for (item of vm.pinnedItems(); track $index) {\n <axp-layout-list-item (click)=\"vm.execute(item)\" (keydown)=\"handleItemKeyDown($event, item)\" class=\"group\" axListNavigationItem #i=\"axListNavigationItem\" [class.axp-state-focused]=\"i.isActive()\">\n <ng-container [ngTemplateOutlet]=\"listItem\" [ngTemplateOutletContext]=\"{ item }\"></ng-container>\n </axp-layout-list-item>\n }\n </axp-layout-list-group>\n }\n <!-- Recent Items -->\n @if (vm.recentItems().length > 0) {\n <axp-layout-list-group>\n <axp-layout-header>\n <axp-layout-prefix>\n <axp-layout-title>{{ '@global-search:terms.recent' | translate | async }}</axp-layout-title>\n </axp-layout-prefix>\n <axp-layout-prefix class=\"ax-sm\">\n <ax-button [text]=\"'@global-search:terms.clear' | translate | async\" look=\"blank\" [color]=\"'default'\" (onClick)=\"handleClearClick($event)\"></ax-button>\n </axp-layout-prefix>\n </axp-layout-header>\n @for (item of vm.recentItems(); track $index) {\n <axp-layout-list-item (click)=\"vm.execute(item)\" (keydown)=\"handleItemKeyDown($event, item)\" class=\"group\" axListNavigationItem #i=\"axListNavigationItem\" [class.axp-state-focused]=\"i.isActive()\">\n <ng-container [ngTemplateOutlet]=\"listItem\" [ngTemplateOutletContext]=\"{ item }\"></ng-container>\n </axp-layout-list-item>\n }\n </axp-layout-list-group>\n }\n </axp-layout-list>\n </ng-template>\n\n <!-- Result Template -->\n <ng-template #result>\n <axp-layout-list class=\"p-4 divide-none\" (keydown)=\"handleListKeyDown($event)\" axListNavigation #list=\"axListNavigation\">\n @for (group of vm.results(); track $index) {\n <axp-layout-list-group>\n <axp-layout-title>{{ group.title | translate | async }}</axp-layout-title>\n @for (item of group.children; track $index) {\n <axp-layout-list-item (click)=\"vm.execute(item)\" (keydown)=\"handleItemKeyDown($event, item)\" class=\"group\" axListNavigationItem #i=\"axListNavigationItem\" [class.axp-state-focused]=\"i.isActive()\">\n <ng-container [ngTemplateOutlet]=\"listItem\" [ngTemplateOutletContext]=\"{ item }\"></ng-container>\n </axp-layout-list-item>\n }\n </axp-layout-list-group>\n }\n </axp-layout-list>\n </ng-template>\n\n <ng-template #listItem let-item=\"item\">\n <axp-layout-prefix>\n <ax-icon [icon]=\"searchListItemIcon(item)\"></ax-icon>\n </axp-layout-prefix>\n <axp-layout-content>\n <axp-layout-title class=\"group\">\n <span>{{ item.title | translate | async }}</span>\n <span class=\"ms-3\" (click)=\"handlePinClick($event, item)\">\n <i [class.invisible]=\"!vm.isPinned(item)\" class=\"fa-light fa-thumbtack rotate-45 group-hover:!visible\" [class.fa-solid]=\"vm.isPinned(item)\"></i>\n </span>\n </axp-layout-title>\n @if (item.parent) {\n <axp-layout-description>\n {{ item.parent.title | translate | async }}\n </axp-layout-description>\n } @else if (item.description) {\n <axp-layout-description>\n {{ item.description | translate | async }}\n </axp-layout-description>\n }\n </axp-layout-content>\n <axp-layout-suffix>\n <i class=\"far fa-chevron-right rtl:rotate-180\"></i>\n </axp-layout-suffix>\n </ng-template>\n</axp-layout-content>\n"],"names":["i7","i9"],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ import * as i0 from '@angular/core';
2
+ import { signal, inject, Injector, computed, ViewEncapsulation, ChangeDetectionStrategy, Component } from '@angular/core';
3
+ import * as i1$1 from '@angular/common';
4
+ import { CommonModule } from '@angular/common';
5
+ import * as i2 from '@acorex/components/button';
6
+ import { AXButtonModule } from '@acorex/components/button';
7
+ import { AXBasePageComponent } from '@acorex/components/page';
8
+ import * as i1 from '@acorex/components/decorators';
9
+ import { AXDecoratorModule } from '@acorex/components/decorators';
10
+ import { AXPActivityLogComponent } from '@acorex-platform/framework-client/layout/components';
11
+ import { AXPVersioningService } from '@acorex-platform/framework-client/common';
12
+ import * as i4 from '@acorex/core/translation';
13
+ import { AXTranslationService, AXTranslationModule } from '@acorex/core/translation';
14
+ import { v as versionEntriesToActivityLogs, o as openActivityLogVersionCompare } from './acorex-platform-module-common-client-acorex-platform-module-common-client-CkeshVWo.mjs';
15
+
16
+ class AXMTimelineVersionHistoryPopupComponent extends AXBasePageComponent {
17
+ constructor() {
18
+ super(...arguments);
19
+ this.isBusy = signal(false, /* @ts-ignore */
20
+ ...(ngDevMode ? [{ debugName: "isBusy" }] : /* istanbul ignore next */ []));
21
+ this.versioning = inject(AXPVersioningService);
22
+ this.injector = inject(Injector);
23
+ this.translation = inject(AXTranslationService);
24
+ this.versions = signal([], /* @ts-ignore */
25
+ ...(ngDevMode ? [{ debugName: "versions" }] : /* istanbul ignore next */ []));
26
+ this.activities = computed(() => versionEntriesToActivityLogs(this.versions(), this.refId, this.refType, this.fieldTitles, undefined, this.translation.getActiveLang?.() ?? 'en-US'), /* @ts-ignore */
27
+ ...(ngDevMode ? [{ debugName: "activities" }] : /* istanbul ignore next */ []));
28
+ }
29
+ async ngOnInit() {
30
+ this.isBusy.set(true);
31
+ super.ngOnInit();
32
+ const streamId = await this.versioning.getStreamIdIfExists(this.refType, this.refId);
33
+ if (streamId) {
34
+ const entries = await this.versioning.listEntries(streamId, {
35
+ limit: this.limit,
36
+ offset: this.offset,
37
+ });
38
+ this.versions.set(entries);
39
+ }
40
+ else {
41
+ this.versions.set([]);
42
+ }
43
+ this.isBusy.set(false);
44
+ }
45
+ async onCompareRequested(event) {
46
+ await openActivityLogVersionCompare(this.injector, event);
47
+ }
48
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMTimelineVersionHistoryPopupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
49
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.8", type: AXMTimelineVersionHistoryPopupComponent, isStandalone: true, selector: "axp-timeline-version-history-popup", usesInheritance: true, ngImport: i0, template: "<ax-content>\n <div class=\"p-6 min-h-[30vh] overflow-y-auto\">\n <axp-activity-log\n [activities]=\"activities()\"\n [loading]=\"isBusy()\"\n [enableCompare]=\"true\"\n [showActionType]=\"false\"\n (compareRequested)=\"onCompareRequested($event)\"\n ></axp-activity-log>\n </div>\n</ax-content>\n<ax-footer>\n <ax-prefix></ax-prefix>\n <ax-suffix>\n <ax-button\n [text]=\"'@general:actions.close.title' | translate | async\"\n look=\"solid\"\n color=\"primary\"\n (onClick)=\"close()\"\n >\n </ax-button>\n </ax-suffix>\n</ax-footer>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i1.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "component", type: AXPActivityLogComponent, selector: "axp-activity-log", inputs: ["activities", "loading", "enableCompare", "showActionType"], outputs: ["compareRequested"] }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.Eager, encapsulation: i0.ViewEncapsulation.None }); }
50
+ }
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMTimelineVersionHistoryPopupComponent, decorators: [{
52
+ type: Component,
53
+ args: [{ selector: 'axp-timeline-version-history-popup', imports: [
54
+ CommonModule,
55
+ AXDecoratorModule,
56
+ AXButtonModule,
57
+ AXTranslationModule,
58
+ AXPActivityLogComponent,
59
+ ], changeDetection: ChangeDetectionStrategy.Eager, encapsulation: ViewEncapsulation.None, template: "<ax-content>\n <div class=\"p-6 min-h-[30vh] overflow-y-auto\">\n <axp-activity-log\n [activities]=\"activities()\"\n [loading]=\"isBusy()\"\n [enableCompare]=\"true\"\n [showActionType]=\"false\"\n (compareRequested)=\"onCompareRequested($event)\"\n ></axp-activity-log>\n </div>\n</ax-content>\n<ax-footer>\n <ax-prefix></ax-prefix>\n <ax-suffix>\n <ax-button\n [text]=\"'@general:actions.close.title' | translate | async\"\n look=\"solid\"\n color=\"primary\"\n (onClick)=\"close()\"\n >\n </ax-button>\n </ax-suffix>\n</ax-footer>\n" }]
60
+ }] });
61
+
62
+ export { AXMTimelineVersionHistoryPopupComponent };
63
+ //# sourceMappingURL=acorex-platform-module-common-client-timeline-version-history-popup.component-BqTLeGtG.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-module-common-client-timeline-version-history-popup.component-BqTLeGtG.mjs","sources":["../../../../libs/modules/common/client/src/lib/features/history-plugin/components/timeline-version-history-popup/timeline-version-history-popup.component.ts","../../../../libs/modules/common/client/src/lib/features/history-plugin/components/timeline-version-history-popup/timeline-version-history-popup.component.html"],"sourcesContent":["import { Component, inject, Injector, signal, ViewEncapsulation, computed, ChangeDetectionStrategy } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport {\n AXPActivityLogCompareRequest,\n AXPActivityLogComponent,\n} from '@acorex-platform/framework-client/layout/components';\nimport { AXPVersionEntry, AXPVersioningService } from '@acorex-platform/framework-client/common';\nimport { AXTranslationModule, AXTranslationService } from '@acorex/core/translation';\nimport { versionEntriesToActivityLogs } from '../../utils/version-history.utils';\nimport { openActivityLogVersionCompare } from '../../utils/open-activity-log-compare.util';\n\n@Component({\n selector: 'axp-timeline-version-history-popup',\n templateUrl: './timeline-version-history-popup.component.html',\n imports: [\n CommonModule,\n AXDecoratorModule,\n AXButtonModule,\n AXTranslationModule,\n AXPActivityLogComponent,\n ],\n changeDetection: ChangeDetectionStrategy.Eager,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AXMTimelineVersionHistoryPopupComponent extends AXBasePageComponent {\n refId!: string;\n refType!: string;\n fieldTitles?: Record<string, string>;\n fromDate!: Date;\n toDate!: Date;\n limit!: number;\n offset!: number;\n\n protected isBusy = signal(false);\n\n protected versioning = inject(AXPVersioningService);\n private readonly injector = inject(Injector);\n private readonly translation = inject(AXTranslationService);\n protected versions = signal<AXPVersionEntry[]>([]);\n protected activities = computed(() =>\n versionEntriesToActivityLogs(\n this.versions(),\n this.refId,\n this.refType,\n this.fieldTitles,\n undefined,\n this.translation.getActiveLang?.() ?? 'en-US',\n )\n );\n\n override async ngOnInit(): Promise<void> {\n this.isBusy.set(true);\n super.ngOnInit();\n const streamId = await this.versioning.getStreamIdIfExists(this.refType, this.refId);\n if (streamId) {\n const entries = await this.versioning.listEntries(streamId, {\n limit: this.limit,\n offset: this.offset,\n });\n this.versions.set(entries);\n } else {\n this.versions.set([]);\n }\n this.isBusy.set(false);\n }\n\n protected async onCompareRequested(event: AXPActivityLogCompareRequest): Promise<void> {\n await openActivityLogVersionCompare(this.injector, event);\n }\n}\n","<ax-content>\n <div class=\"p-6 min-h-[30vh] overflow-y-auto\">\n <axp-activity-log\n [activities]=\"activities()\"\n [loading]=\"isBusy()\"\n [enableCompare]=\"true\"\n [showActionType]=\"false\"\n (compareRequested)=\"onCompareRequested($event)\"\n ></axp-activity-log>\n </div>\n</ax-content>\n<ax-footer>\n <ax-prefix></ax-prefix>\n <ax-suffix>\n <ax-button\n [text]=\"'@general:actions.close.title' | translate | async\"\n look=\"solid\"\n color=\"primary\"\n (onClick)=\"close()\"\n >\n </ax-button>\n </ax-suffix>\n</ax-footer>\n"],"names":["i3"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export { b as AXMCommonModule, c as AXMMenuProvider, d as AXMSettingProvider, e as AXMVersionHistoryPageComponent, f as AXPArchivePluginModule, g as AXPCommonFeatureDefinitionProvider, h as AXPDerivedNamePluginModule, j as AXPDisablePluginModule, k as AXPGlobalSearchModule, a as AXPGlobalSearchViewModel, l as AXPHistoryAuditInfoWidget, m as AXPHistoryModule, n as AXPLockEntityCommand, p as AXPResourceAppointmentPageComponent, q as AXPStatusPluginModule, r as AXPUniqueFieldsPluginModule, s as AXPUnlockEntityCommand, u as AXPValidationRulesModule, A as AXP_ENTITY_ARCHIVE_OVERRIDES, w as AXP_GLOBAL_SEARCH_CONFIG_TOKEN, x as AXP_RESOURCE_APPOINTMENT_PAGE_CONFIG, y as ApprovalStatusProvider, z as AtLeastOneOfValidationRule, C as CommonManifest, H as HISTORY_PAGE_COMPONENT_KEY, S as ShowVersionHistoryPopupCommand, B as StateStatusProvider, T as TaskStatusProvider, U as UniqueValidationRule, V as VARIABLE_NAME_VALIDATION_PATTERN, D as VariableNameValidationRule, E as aggregateVersionHistoryBarChartItems, F as archivePlugin, G as buildEntityFieldHistoryLineChartSeries, I as buildProductBasePriceHistoryLineChartSeries, J as derivedNamePlugin, K as disablePlugin, L as getActiveStatuses, M as getFinalStatuses, N as getInitialStatuses, O as getStatusByName, P as getTransitionsFromStatus, Q as getTransitionsToStatus, R as historyPlugin, W as humanizeChange, X as isValidTransition, i as isValidVariableName, Y as mapChangeType, Z as mapOpToAction, _ as resolvePathKey, $ as statusPlugin, t as toVariableName, a0 as uniqueFieldsPlugin, v as versionEntriesToActivityLogs } from './acorex-platform-module-common-client-acorex-platform-module-common-client-rqWzT7RI.mjs';
1
+ export { b as AXMCommonModule, c as AXMMenuProvider, d as AXMSettingProvider, e as AXMVersionHistoryPageComponent, f as AXPArchivePluginModule, g as AXPCommonFeatureDefinitionProvider, h as AXPDerivedNamePluginModule, j as AXPDisablePluginModule, k as AXPGlobalSearchModule, a as AXPGlobalSearchViewModel, l as AXPHistoryAuditInfoWidget, m as AXPHistoryModule, n as AXPLockEntityCommand, p as AXPResourceAppointmentPageComponent, q as AXPStatusPluginModule, r as AXPUniqueFieldsPluginModule, s as AXPUnlockEntityCommand, u as AXPValidationRulesModule, A as AXP_ENTITY_ARCHIVE_OVERRIDES, w as AXP_GLOBAL_SEARCH_CONFIG_TOKEN, x as AXP_RESOURCE_APPOINTMENT_PAGE_CONFIG, y as ApprovalStatusProvider, z as AtLeastOneOfValidationRule, C as CommonManifest, H as HISTORY_PAGE_COMPONENT_KEY, S as ShowVersionHistoryPopupCommand, B as StateStatusProvider, T as TaskStatusProvider, U as UniqueValidationRule, V as VARIABLE_NAME_VALIDATION_PATTERN, D as VariableNameValidationRule, E as aggregateVersionHistoryBarChartItems, F as archivePlugin, G as buildEntityFieldHistoryLineChartSeries, I as buildProductBasePriceHistoryLineChartSeries, J as derivedNamePlugin, K as disablePlugin, L as getActiveStatuses, M as getFinalStatuses, N as getInitialStatuses, O as getStatusByName, P as getTransitionsFromStatus, Q as getTransitionsToStatus, R as historyPlugin, W as humanizeChange, X as isValidTransition, i as isValidVariableName, Y as mapChangeType, Z as mapOpToAction, _ as resolvePathKey, $ as statusPlugin, t as toVariableName, a0 as uniqueFieldsPlugin, v as versionEntriesToActivityLogs } from './acorex-platform-module-common-client-acorex-platform-module-common-client-CkeshVWo.mjs';
2
2
  //# sourceMappingURL=acorex-platform-module-common-client.mjs.map
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@acorex-platform/module-common-client",
3
- "version": "0.0.18",
3
+ "version": "0.0.21",
4
4
  "sideEffects": false,
5
5
  "peerDependencies": {
6
6
  "@acorex/cdk": "20.7.33",
7
- "@acorex/core": "20.7.33",
8
7
  "@acorex/components": "20.7.33",
9
- "@angular/core": "^21.0.0",
8
+ "@acorex/core": "20.7.33",
10
9
  "@angular/common": "^21.0.0",
10
+ "@angular/core": "^21.0.0",
11
11
  "@ngrx/signals": "^21.0.0"
12
12
  },
13
13
  "dependencies": {
@@ -47,8 +47,10 @@ declare const AXPCommonMenuKeys: {
47
47
  readonly Configuration: "Common:Menu:Configuration";
48
48
  readonly Contacts: "Common:Menu:Contacts";
49
49
  readonly Platform: "Common:Menu:Platform";
50
- /** Administration > Content (Promotions, Page Builder, Dashboards) */
50
+ /** Administration > Publishing (Promotions, Page Builder, Dashboards, Announcements) */
51
51
  readonly Content: "Common:Menu:Administration:Content";
52
+ /** Administration > Monitoring (Communications, Jobs) */
53
+ readonly Monitoring: "Common:Menu:Administration:Monitoring";
52
54
  /** Administration > Workflows (Workflow Definitions, Instances, Studio, Activities) */
53
55
  readonly Workflows: "Common:Menu:Administration:Workflows";
54
56
  /** Commerce (Products, Orders, Supplier Products) */
@@ -81,12 +83,176 @@ declare const AXPCommonMenuKeys: {
81
83
  readonly SchedulingAndEvents: "Common:Menu:Configuration:SchedulingAndEvents";
82
84
  /** Configuration > Data and Content (Documents + Data Definitions) */
83
85
  readonly DataAndContent: "Common:Menu:Configuration:DataAndContent";
86
+ /** Configuration > Platform Definitions (Entity / Command / Query / Plugin / Widget catalogs) */
87
+ readonly PlatformDefinitions: "Common:Menu:Configuration:PlatformDefinitions";
84
88
  /** Configuration > Intelligence (AI Management) */
85
89
  readonly AiManagementConfig: "Common:Menu:Configuration:AiManagement";
86
90
  /** Plant & Equipment (top-level menu group) */
87
91
  readonly PlantEquipment: "Common:Menu:PlantEquipment";
88
92
  };
89
93
 
94
+ /**
95
+ * Shared permission group ids for the role UI.
96
+ * Modules contribute capabilities via addGroup(these keys) so domains stay aligned
97
+ * (same nesting idea as {@link AXPCommonCommandKeys}).
98
+ *
99
+ * Format: `Common:PermissionGroup:{Domain}` or `Common:PermissionGroup:{Root}:{Section}`
100
+ * - `Domain.Root` — left-nav root group id
101
+ * - `Domain.Section` — optional right-panel section under that root
102
+ * Root `order` values follow the catalog in permission-design.mdc (lower first).
103
+ * See `.cursor/rules/core-rules/permission-design.mdc`.
104
+ *
105
+ * @example
106
+ * groups.SalesCustomers.Root
107
+ * groups.SalesCustomers.Customers
108
+ * groups.SuppliersProcurement.Root
109
+ * groups.Administration.SecurityAccess
110
+ */
111
+ declare const AXPCommonPermissionGroupKeys: {
112
+ readonly PeopleOrganization: {
113
+ readonly Root: "Common:PermissionGroup:PeopleOrganization";
114
+ readonly Structure: "Common:PermissionGroup:PeopleOrganization:Structure";
115
+ readonly Workforce: "Common:PermissionGroup:PeopleOrganization:Workforce";
116
+ readonly Attendance: "Common:PermissionGroup:PeopleOrganization:Attendance";
117
+ };
118
+ readonly Learning: {
119
+ readonly Root: "Common:PermissionGroup:Learning";
120
+ };
121
+ readonly SafetyRisk: {
122
+ readonly Root: "Common:PermissionGroup:SafetyRisk";
123
+ readonly WorkplaceSafety: "Common:PermissionGroup:SafetyRisk:WorkplaceSafety";
124
+ readonly Risk: "Common:PermissionGroup:SafetyRisk:Risk";
125
+ readonly Health: "Common:PermissionGroup:SafetyRisk:Health";
126
+ readonly Assessments: "Common:PermissionGroup:SafetyRisk:Assessments";
127
+ };
128
+ readonly Finance: {
129
+ readonly Root: "Common:PermissionGroup:Finance";
130
+ };
131
+ readonly SalesCustomers: {
132
+ readonly Root: "Common:PermissionGroup:SalesCustomers";
133
+ readonly Customers: "Common:PermissionGroup:SalesCustomers:Customers";
134
+ readonly Sales: "Common:PermissionGroup:SalesCustomers:Sales";
135
+ readonly Products: "Common:PermissionGroup:SalesCustomers:Products";
136
+ readonly Orders: "Common:PermissionGroup:SalesCustomers:Orders";
137
+ readonly Subscriptions: "Common:PermissionGroup:SalesCustomers:Subscriptions";
138
+ };
139
+ readonly SuppliersProcurement: {
140
+ readonly Root: "Common:PermissionGroup:SuppliersProcurement";
141
+ readonly SuppliersSubcontractors: "Common:PermissionGroup:SuppliersProcurement:SuppliersSubcontractors";
142
+ };
143
+ readonly ProjectsWork: {
144
+ readonly Root: "Common:PermissionGroup:ProjectsWork";
145
+ readonly Projects: "Common:PermissionGroup:ProjectsWork:Projects";
146
+ readonly Tasks: "Common:PermissionGroup:ProjectsWork:Tasks";
147
+ readonly TimeTracking: "Common:PermissionGroup:ProjectsWork:TimeTracking";
148
+ };
149
+ readonly AssetsMaintenance: {
150
+ readonly Root: "Common:PermissionGroup:AssetsMaintenance";
151
+ readonly Assets: "Common:PermissionGroup:AssetsMaintenance:Assets";
152
+ readonly Maintenance: "Common:PermissionGroup:AssetsMaintenance:Maintenance";
153
+ };
154
+ readonly Collaboration: {
155
+ readonly Root: "Common:PermissionGroup:Collaboration";
156
+ readonly Conversations: "Common:PermissionGroup:Collaboration:Conversations";
157
+ readonly Scheduling: "Common:PermissionGroup:Collaboration:Scheduling";
158
+ readonly Communications: "Common:PermissionGroup:Collaboration:Communications";
159
+ readonly HelpDesk: "Common:PermissionGroup:Collaboration:HelpDesk";
160
+ };
161
+ readonly ContentDocuments: {
162
+ readonly Root: "Common:PermissionGroup:ContentDocuments";
163
+ readonly Documents: "Common:PermissionGroup:ContentDocuments:Documents";
164
+ readonly Content: "Common:PermissionGroup:ContentDocuments:Content";
165
+ readonly FormTemplates: "Common:PermissionGroup:ContentDocuments:FormTemplates";
166
+ };
167
+ readonly InsightsReporting: {
168
+ readonly Root: "Common:PermissionGroup:InsightsReporting";
169
+ readonly Reports: "Common:PermissionGroup:InsightsReporting:Reports";
170
+ readonly ActivityInsight: "Common:PermissionGroup:InsightsReporting:ActivityInsight";
171
+ readonly Data: "Common:PermissionGroup:InsightsReporting:Data";
172
+ };
173
+ readonly ApplicationsPlatform: {
174
+ readonly Root: "Common:PermissionGroup:ApplicationsPlatform";
175
+ readonly Applications: "Common:PermissionGroup:ApplicationsPlatform:Applications";
176
+ readonly TenancyShell: "Common:PermissionGroup:ApplicationsPlatform:TenancyShell";
177
+ readonly Configuration: "Common:PermissionGroup:ApplicationsPlatform:Configuration";
178
+ readonly DevTools: "Common:PermissionGroup:ApplicationsPlatform:DevTools";
179
+ };
180
+ readonly Administration: {
181
+ readonly Root: "Common:PermissionGroup:Administration";
182
+ readonly SecurityAccess: "Common:PermissionGroup:Administration:SecurityAccess";
183
+ readonly Settings: "Common:PermissionGroup:Administration:Settings";
184
+ readonly Integrations: "Common:PermissionGroup:Administration:Integrations";
185
+ readonly Workflow: "Common:PermissionGroup:Administration:Workflow";
186
+ readonly Rules: "Common:PermissionGroup:Administration:Rules";
187
+ readonly Ai: "Common:PermissionGroup:Administration:Ai";
188
+ readonly Dashboards: "Common:PermissionGroup:Administration:Dashboards";
189
+ readonly Jobs: "Common:PermissionGroup:Administration:Jobs";
190
+ readonly Observability: "Common:PermissionGroup:Administration:Observability";
191
+ };
192
+ };
193
+
194
+ /**
195
+ * Maps conceptual permission keys (`Domain:Permission:Capability`) to the
196
+ * shared `@common:{domain}.permissions.{capability}.(title|description)` i18n
197
+ * keys used by client permission-definition providers.
198
+ */
199
+ declare function resolvePermissionI18nKeys(permissionKey: string): {
200
+ titleKey: string;
201
+ descriptionKey: string;
202
+ } | null;
203
+ /** Fallback label when no i18n key can be derived (last capability segment). */
204
+ declare function humanizePermissionCapability(permissionKey: string): string;
205
+ /**
206
+ * Value for report/UI display columns: prefer the i18n title key (translated by
207
+ * text widgets), otherwise a humanized capability label.
208
+ */
209
+ declare function resolvePermissionTitleDisplay(permissionKey: string): string;
210
+
211
+ /**
212
+ * Resolves which edition module name(s) a conceptual permission key belongs to.
213
+ * Used to filter role grants / permission editor by application edition modules.
214
+ */
215
+ type AXPPermissionModulesResolver = (permissionKey: string) => readonly string[];
216
+ /**
217
+ * Contributing Nx / edition module names per conceptual domain prefix.
218
+ * Access and Setup keys use this full list (match if ANY module is enabled).
219
+ */
220
+ declare const AXPPermissionDomainModules: {
221
+ readonly Administration: readonly ["SecurityManagement", "IntegrationManagement", "WorkflowManagement", "RuleEngineManagement", "AiManagement", "DashboardManagement", "BackgroundJobManagement", "SystemInsight"];
222
+ /**
223
+ * Platform Console catalog modules for Access ANY-match.
224
+ * SettingsManagement is intentionally omitted — product apps enable it for
225
+ * MaintainTenantSettings without unlocking Applications & Platform Access.
226
+ */
227
+ readonly ApplicationsPlatform: readonly ["ApplicationManagement", "TenantManagement", "PlatformManagement", "AppBuilder", "IdentifierManagement", "LocaleManagement", "PlatformDevTools"];
228
+ readonly PeopleOrganization: readonly ["OrganizationManagement", "HumanCapitalManagement", "PersonCore", "AttendanceManagement", "LocationManagement"];
229
+ readonly SafetyRisk: readonly ["WorkplaceSafetyManagement", "RiskManagement", "HealthCore", "AssessmentManagement"];
230
+ readonly ProjectsWork: readonly ["ProjectManagement", "TaskManagement", "TimesheetManagement"];
231
+ readonly AssetsMaintenance: readonly ["AssetManagement", "MaintenanceManagement", "MeasurementCore"];
232
+ readonly Collaboration: readonly ["Conversation", "CalendarManagement", "MeetingManagement", "CommunicationManagement", "BulletinManagement", "ReservationManagement", "HelpDesk", "ContactCore"];
233
+ readonly ContentDocuments: readonly ["DocumentManagement", "ContentManagement", "FormTemplateManagement"];
234
+ readonly InsightsReporting: readonly ["ReportManagement", "DataManagement", "ActivityInsight"];
235
+ readonly SalesCustomers: readonly ["CustomerManagement", "ProductCatalog", "OrderManagement", "SubscriptionManagement", "BusinessCore"];
236
+ readonly Procurement: readonly ["SupplierManagement", "ProcurementManagement"];
237
+ readonly Learning: readonly ["LearningManagement"];
238
+ readonly Finance: readonly ["FinancialCore"];
239
+ };
240
+ /**
241
+ * Owner / contributing modules for each conceptual permission key.
242
+ * - Access & Setup → all domain modules (any-module match)
243
+ * - Unique Maintain/Manage/View/… → registering owner module only
244
+ */
245
+ declare const AXPPermissionKeyModules: Readonly<Record<string, readonly string[]>>;
246
+ /**
247
+ * Returns edition module names for a permission key.
248
+ * Unknown keys fall back to the legacy `{Prefix}:…` module-prefix convention.
249
+ */
250
+ declare function resolvePermissionModules(permissionKey: string): readonly string[];
251
+ /**
252
+ * True when the permission is available for the enabled edition modules (ANY match).
253
+ */
254
+ declare function isPermissionEnabledForModules(permissionKey: string, enabledModules: readonly string[]): boolean;
255
+
90
256
  declare enum AXMLockSystemSettings {
91
257
  LockSystem = "Common:Setting:LockSystem.Enabled"
92
258
  }
@@ -94,6 +260,21 @@ declare enum AXMCommonSettings {
94
260
  QuickSearchEnabled = "Common:Setting:Entity.QuickSearchEnabled"
95
261
  }
96
262
 
263
+ declare enum AXPVersionHistorySettings {
264
+ RetentionEnabled = "Common:Setting:VersionHistory.Retention.Enabled",
265
+ RetentionPeriodDays = "Common:Setting:VersionHistory.Retention.PeriodDays",
266
+ RetentionBatchSize = "Common:Setting:VersionHistory.Retention.BatchSize",
267
+ RetentionPurgeCron = "Common:Setting:VersionHistory.Retention.PurgeCron",
268
+ SkipEmptyPatches = "Common:Setting:VersionHistory.SkipEmptyPatches"
269
+ }
270
+ declare const AXP_VERSION_HISTORY_SETTING_DEFAULTS: {
271
+ readonly "Common:Setting:VersionHistory.Retention.Enabled": true;
272
+ readonly "Common:Setting:VersionHistory.Retention.PeriodDays": 365;
273
+ readonly "Common:Setting:VersionHistory.Retention.BatchSize": 500;
274
+ readonly "Common:Setting:VersionHistory.Retention.PurgeCron": "0 3 * * *";
275
+ readonly "Common:Setting:VersionHistory.SkipEmptyPatches": true;
276
+ };
277
+
97
278
  declare const RootConfig: {
98
279
  readonly config: {
99
280
  i18n: string;
@@ -105,7 +286,30 @@ declare const RootConfig: {
105
286
  readonly title: "@general:common.module.title";
106
287
  readonly icon: "fa-light fa-file-invoice";
107
288
  };
108
- readonly entities: {};
289
+ readonly entities: {
290
+ readonly recordLock: {
291
+ readonly name: "RecordLock";
292
+ readonly title: "Record Lock";
293
+ readonly titlePlural: "Record Locks";
294
+ readonly icon: "fa-light fa-lock";
295
+ readonly source: `${string}.RecordLock`;
296
+ };
297
+ readonly versionStream: {
298
+ readonly name: "VersionStream";
299
+ readonly title: "Version Stream";
300
+ readonly titlePlural: "Version Streams";
301
+ readonly icon: "fa-light fa-code-branch";
302
+ readonly source: `${string}.VersionStream`;
303
+ };
304
+ readonly versionEntry: {
305
+ readonly name: "VersionEntry";
306
+ readonly title: "Version Entry";
307
+ readonly titlePlural: "Version Entries";
308
+ readonly icon: "fa-light fa-clock-rotate-left";
309
+ readonly source: `${string}.VersionEntry`;
310
+ };
311
+ };
109
312
  };
110
313
 
111
- export { AXMCommonSettings, AXMLockSystemSettings, AXPCommonCommandKeys, AXPCommonFeatureKeys, AXPCommonMenuKeys, COMMON_CATALOG_SCOPE_GENERAL, RootConfig };
314
+ export { AXMCommonSettings, AXMLockSystemSettings, AXPCommonCommandKeys, AXPCommonFeatureKeys, AXPCommonMenuKeys, AXPCommonPermissionGroupKeys, AXPPermissionDomainModules, AXPPermissionKeyModules, AXPVersionHistorySettings, AXP_VERSION_HISTORY_SETTING_DEFAULTS, COMMON_CATALOG_SCOPE_GENERAL, RootConfig, humanizePermissionCapability, isPermissionEnabledForModules, resolvePermissionI18nKeys, resolvePermissionModules, resolvePermissionTitleDisplay };
315
+ export type { AXPPermissionModulesResolver };
@@ -11,10 +11,10 @@ import { AXPFeatureDefinitionProvider, AXPFeatureDefinitionProviderContext, AXPM
11
11
  import { Subject } from 'rxjs';
12
12
  import { AXPEntityActionPlugin } from '@acorex-platform/framework-client/layout/entity';
13
13
  import { AXPWidgetConfig } from '@acorex-platform/framework-shared/widget-core';
14
- import { AXPCommand } from '@acorex-platform/framework-shared/runtime';
15
- import { AXPExecuteCommandResult, AXPSystemActionType, AXPMultiLanguageString, AXPContextData, AXPStatusProvider, AXPStatusDefinition, AXPStatusTransition, AXPSystemStatusType, AXPBreadcrumbItem } from '@acorex-platform/framework-shared/core';
14
+ import { AXPCommand, AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';
16
15
  import * as dist_libs_framework_client_types_acorex_platform_framework_client_core from 'dist/libs/framework/client/types/acorex-platform-framework-client-core';
17
16
  import { AXPPageLayoutBaseComponent } from '@acorex-platform/framework-client/layout/views';
17
+ import { AXPSystemActionType, AXPMultiLanguageString, AXPContextData, AXPStatusProvider, AXPStatusDefinition, AXPStatusTransition, AXPSystemStatusType, AXPBreadcrumbItem } from '@acorex-platform/framework-shared/core';
18
18
 
19
19
  declare class AXPCategoryModule {
20
20
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPCategoryModule, never>;
@@ -198,7 +198,7 @@ declare class AXMMenuProvider implements AXPMenuProvider {
198
198
  }
199
199
 
200
200
  declare class AXMSettingProvider implements AXPSettingDefinitionProvider {
201
- provide(_context: AXPSettingDefinitionProviderContext): Promise<void>;
201
+ provide(context: AXPSettingDefinitionProviderContext): Promise<void>;
202
202
  static ɵfac: i0.ɵɵFactoryDeclaration<AXMSettingProvider, never>;
203
203
  static ɵprov: i0.ɵɵInjectableDeclaration<AXMSettingProvider>;
204
204
  }
@@ -289,21 +289,16 @@ interface ShowVersionHistoryPopupInput {
289
289
  toDate?: Date;
290
290
  limit?: number;
291
291
  offset?: number;
292
- /** When invoked from entity action, options may be under __context__.options or options */
293
- __context__?: {
294
- options?: Partial<ShowVersionHistoryPopupInput>;
295
- data?: Record<string, unknown>;
296
- };
292
+ /** When invoked from entity action, fields may be under root or options */
297
293
  options?: Partial<ShowVersionHistoryPopupInput>;
298
294
  }
299
295
  /**
300
296
  * Opens the version history timeline popup for a given entity reference.
301
- * Opens the version history popup for an entity record.
302
297
  */
303
298
  declare class ShowVersionHistoryPopupCommand implements AXPCommand<ShowVersionHistoryPopupInput, void> {
304
299
  private readonly popupService;
305
300
  private readonly translate;
306
- execute(input: ShowVersionHistoryPopupInput | Record<string, unknown>): Promise<AXPExecuteCommandResult<void>>;
301
+ execute(input: ShowVersionHistoryPopupInput | Record<string, unknown>): AXPCommandExecuteResultPromise<void>;
307
302
  private normalizeInput;
308
303
  static ɵfac: i0.ɵɵFactoryDeclaration<ShowVersionHistoryPopupCommand, never>;
309
304
  static ɵprov: i0.ɵɵInjectableDeclaration<ShowVersionHistoryPopupCommand>;
@@ -329,6 +324,7 @@ declare class AXMVersionHistoryPageComponent extends AXPPageLayoutBaseComponent
329
324
  private readonly widgetRegistry;
330
325
  private readonly injector;
331
326
  private readonly route;
327
+ private readonly translation;
332
328
  /** Resolves custom history layout for a change path via property -> widget config -> historyLayout. */
333
329
  private resolveHistoryLayout;
334
330
  ngOnInit(): Promise<void>;
@@ -355,7 +351,7 @@ declare function humanizeChange(path: string, op: string, fieldTitles?: Record<s
355
351
  * When the page provides this, it can resolve path -> property -> widget config -> historyLayout.
356
352
  */
357
353
  type GetHistoryLayoutResolver = (path: string) => unknown | undefined;
358
- declare function versionEntriesToActivityLogs(entries: AXPVersionEntry[], refId: string, refType: string, fieldTitles?: Record<string, string>, getHistoryLayout?: GetHistoryLayoutResolver): AXPActivityLog[];
354
+ declare function versionEntriesToActivityLogs(entries: AXPVersionEntry[], refId: string, refType: string, fieldTitles?: Record<string, string>, getHistoryLayout?: GetHistoryLayoutResolver, locale?: string): AXPActivityLog[];
359
355
 
360
356
  interface AXPEntityHistoryBarChartItem {
361
357
  id: string;
@@ -405,7 +401,7 @@ declare class AXPLockEntityCommand implements AXPCommand<AXPContextData, AXPLock
405
401
  private readonly lockService;
406
402
  private readonly sessionService;
407
403
  private readonly helper;
408
- execute(input: AXPContextData): Promise<AXPExecuteCommandResult<AXPLockEntityCommandOutput>>;
404
+ execute(input: AXPContextData): AXPCommandExecuteResultPromise<AXPLockEntityCommandOutput>;
409
405
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPLockEntityCommand, never>;
410
406
  static ɵprov: i0.ɵɵInjectableDeclaration<AXPLockEntityCommand>;
411
407
  }
@@ -418,7 +414,7 @@ declare class AXPUnlockEntityCommand implements AXPCommand<AXPContextData, AXPUn
418
414
  private readonly translationService;
419
415
  private readonly lockService;
420
416
  private readonly helper;
421
- execute(input: AXPContextData): Promise<AXPExecuteCommandResult<AXPUnlockEntityCommandOutput>>;
417
+ execute(input: AXPContextData): AXPCommandExecuteResultPromise<AXPUnlockEntityCommandOutput>;
422
418
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPUnlockEntityCommand, never>;
423
419
  static ɵprov: i0.ɵɵInjectableDeclaration<AXPUnlockEntityCommand>;
424
420
  }