@acorex/modules 21.0.0-next.89 → 21.0.0-next.90

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 (91) hide show
  1. package/fesm2022/acorex-modules-common.mjs +9 -9
  2. package/fesm2022/acorex-modules-common.mjs.map +1 -1
  3. package/fesm2022/{acorex-modules-conversation-acorex-modules-conversation-B_JcAHvL.mjs → acorex-modules-conversation-acorex-modules-conversation-Dc8te-PO.mjs} +364 -237
  4. package/fesm2022/acorex-modules-conversation-acorex-modules-conversation-Dc8te-PO.mjs.map +1 -0
  5. package/fesm2022/{acorex-modules-conversation-after-message-sent.command-DcrS7_vV.mjs → acorex-modules-conversation-after-message-sent.command-DxDe6o9N.mjs} +2 -2
  6. package/fesm2022/{acorex-modules-conversation-after-message-sent.command-DcrS7_vV.mjs.map → acorex-modules-conversation-after-message-sent.command-DxDe6o9N.mjs.map} +1 -1
  7. package/fesm2022/{acorex-modules-conversation-assist-delegated-agent-detail-popup.component-BCkJEAmX.mjs → acorex-modules-conversation-assist-delegated-agent-detail-popup.component-Dyx_n0bi.mjs} +3 -3
  8. package/fesm2022/{acorex-modules-conversation-assist-delegated-agent-detail-popup.component-BCkJEAmX.mjs.map → acorex-modules-conversation-assist-delegated-agent-detail-popup.component-Dyx_n0bi.mjs.map} +1 -1
  9. package/fesm2022/{acorex-modules-conversation-comments-page.component-B6TJhe4T.mjs → acorex-modules-conversation-comments-page.component--g4ugC_L.mjs} +2 -2
  10. package/fesm2022/{acorex-modules-conversation-comments-page.component-B6TJhe4T.mjs.map → acorex-modules-conversation-comments-page.component--g4ugC_L.mjs.map} +1 -1
  11. package/fesm2022/{acorex-modules-conversation-emit-typing-indicator.command-CWRdPl-S.mjs → acorex-modules-conversation-emit-typing-indicator.command-BOldPLQ0.mjs} +2 -2
  12. package/fesm2022/{acorex-modules-conversation-emit-typing-indicator.command-CWRdPl-S.mjs.map → acorex-modules-conversation-emit-typing-indicator.command-BOldPLQ0.mjs.map} +1 -1
  13. package/fesm2022/{acorex-modules-conversation-mark-conversation-unread.command-CZlsLAsb.mjs → acorex-modules-conversation-mark-conversation-unread.command-O_zPrBQ0.mjs} +2 -2
  14. package/fesm2022/{acorex-modules-conversation-mark-conversation-unread.command-CZlsLAsb.mjs.map → acorex-modules-conversation-mark-conversation-unread.command-O_zPrBQ0.mjs.map} +1 -1
  15. package/fesm2022/{acorex-modules-conversation-retry-assist-response.command-Cly1-RKt.mjs → acorex-modules-conversation-retry-assist-response.command-DsB-CP3R.mjs} +2 -2
  16. package/fesm2022/{acorex-modules-conversation-retry-assist-response.command-Cly1-RKt.mjs.map → acorex-modules-conversation-retry-assist-response.command-DsB-CP3R.mjs.map} +1 -1
  17. package/fesm2022/{acorex-modules-conversation-send-assist-chat-message.command-D5QWTKqh.mjs → acorex-modules-conversation-send-assist-chat-message.command-g_NgPuxP.mjs} +2 -2
  18. package/fesm2022/{acorex-modules-conversation-send-assist-chat-message.command-D5QWTKqh.mjs.map → acorex-modules-conversation-send-assist-chat-message.command-g_NgPuxP.mjs.map} +1 -1
  19. package/fesm2022/{acorex-modules-conversation-start-assist-chat.command-DkSZj8fj.mjs → acorex-modules-conversation-start-assist-chat.command-DeMmJdd6.mjs} +2 -2
  20. package/fesm2022/{acorex-modules-conversation-start-assist-chat.command-DkSZj8fj.mjs.map → acorex-modules-conversation-start-assist-chat.command-DeMmJdd6.mjs.map} +1 -1
  21. package/fesm2022/{acorex-modules-conversation-sync-read-state.command-jiEsdxUB.mjs → acorex-modules-conversation-sync-read-state.command-4YxdwLaE.mjs} +2 -2
  22. package/fesm2022/{acorex-modules-conversation-sync-read-state.command-jiEsdxUB.mjs.map → acorex-modules-conversation-sync-read-state.command-4YxdwLaE.mjs.map} +1 -1
  23. package/fesm2022/acorex-modules-conversation.mjs +1 -1
  24. package/fesm2022/{acorex-modules-dashboard-management-acorex-modules-dashboard-management-DLuhOPFz.mjs → acorex-modules-dashboard-management-acorex-modules-dashboard-management-kph3UxDu.mjs} +94 -41
  25. package/fesm2022/acorex-modules-dashboard-management-acorex-modules-dashboard-management-kph3UxDu.mjs.map +1 -0
  26. package/fesm2022/{acorex-modules-dashboard-management-index-gjCiELmH.mjs → acorex-modules-dashboard-management-index-rp9dgARq.mjs} +2 -2
  27. package/fesm2022/{acorex-modules-dashboard-management-index-gjCiELmH.mjs.map → acorex-modules-dashboard-management-index-rp9dgARq.mjs.map} +1 -1
  28. package/fesm2022/acorex-modules-dashboard-management.mjs +1 -1
  29. package/fesm2022/{acorex-modules-document-management-drive-choose.component-DyJoXajP.mjs → acorex-modules-document-management-drive-choose.component-Dx1slMSA.mjs} +3 -3
  30. package/fesm2022/{acorex-modules-document-management-drive-choose.component-DyJoXajP.mjs.map → acorex-modules-document-management-drive-choose.component-Dx1slMSA.mjs.map} +1 -1
  31. package/fesm2022/acorex-modules-document-management.mjs +268 -351
  32. package/fesm2022/acorex-modules-document-management.mjs.map +1 -1
  33. package/fesm2022/{acorex-modules-human-capital-management-acorex-modules-human-capital-management-VJ2NUSm1.mjs → acorex-modules-human-capital-management-acorex-modules-human-capital-management-BZwLfZkb.mjs} +42 -21
  34. package/fesm2022/acorex-modules-human-capital-management-acorex-modules-human-capital-management-BZwLfZkb.mjs.map +1 -0
  35. package/fesm2022/{acorex-modules-human-capital-management-approve-leave-request.command-FgXkyZR_.mjs → acorex-modules-human-capital-management-approve-leave-request.command-B_EBDijL.mjs} +2 -2
  36. package/fesm2022/{acorex-modules-human-capital-management-approve-leave-request.command-FgXkyZR_.mjs.map → acorex-modules-human-capital-management-approve-leave-request.command-B_EBDijL.mjs.map} +1 -1
  37. package/fesm2022/{acorex-modules-human-capital-management-assign-position-assignment.command-D2yCvifI.mjs → acorex-modules-human-capital-management-assign-position-assignment.command-ZzWBeTv1.mjs} +2 -2
  38. package/fesm2022/{acorex-modules-human-capital-management-assign-position-assignment.command-D2yCvifI.mjs.map → acorex-modules-human-capital-management-assign-position-assignment.command-ZzWBeTv1.mjs.map} +1 -1
  39. package/fesm2022/{acorex-modules-human-capital-management-cancel-leave-request.command-DnmsVNwU.mjs → acorex-modules-human-capital-management-cancel-leave-request.command-Bd3RvlNm.mjs} +2 -2
  40. package/fesm2022/{acorex-modules-human-capital-management-cancel-leave-request.command-DnmsVNwU.mjs.map → acorex-modules-human-capital-management-cancel-leave-request.command-Bd3RvlNm.mjs.map} +1 -1
  41. package/fesm2022/{acorex-modules-human-capital-management-edit-personal-info.command-B0ZUfbqn.mjs → acorex-modules-human-capital-management-edit-personal-info.command-Drbi1WMd.mjs} +2 -2
  42. package/fesm2022/{acorex-modules-human-capital-management-edit-personal-info.command-B0ZUfbqn.mjs.map → acorex-modules-human-capital-management-edit-personal-info.command-Drbi1WMd.mjs.map} +1 -1
  43. package/fesm2022/{acorex-modules-human-capital-management-edit-signature.command-h2kTqSg0.mjs → acorex-modules-human-capital-management-edit-signature.command-CRPqnXIj.mjs} +2 -2
  44. package/fesm2022/{acorex-modules-human-capital-management-edit-signature.command-h2kTqSg0.mjs.map → acorex-modules-human-capital-management-edit-signature.command-CRPqnXIj.mjs.map} +1 -1
  45. package/fesm2022/{acorex-modules-human-capital-management-reject-leave-request.command-BdrdgvbN.mjs → acorex-modules-human-capital-management-reject-leave-request.command-BC-1Kixd.mjs} +2 -2
  46. package/fesm2022/{acorex-modules-human-capital-management-reject-leave-request.command-BdrdgvbN.mjs.map → acorex-modules-human-capital-management-reject-leave-request.command-BC-1Kixd.mjs.map} +1 -1
  47. package/fesm2022/{acorex-modules-human-capital-management-revoke-position-assignment.command-S7Px6Y4B.mjs → acorex-modules-human-capital-management-revoke-position-assignment.command-Caylq9Rv.mjs} +2 -2
  48. package/fesm2022/{acorex-modules-human-capital-management-revoke-position-assignment.command-S7Px6Y4B.mjs.map → acorex-modules-human-capital-management-revoke-position-assignment.command-Caylq9Rv.mjs.map} +1 -1
  49. package/fesm2022/{acorex-modules-human-capital-management-start-leave-request-flow.command-C_tE-D_Y.mjs → acorex-modules-human-capital-management-start-leave-request-flow.command-BsEwA1VM.mjs} +2 -2
  50. package/fesm2022/{acorex-modules-human-capital-management-start-leave-request-flow.command-C_tE-D_Y.mjs.map → acorex-modules-human-capital-management-start-leave-request-flow.command-BsEwA1VM.mjs.map} +1 -1
  51. package/fesm2022/{acorex-modules-human-capital-management-start-lifecycle-event-flow.command-mMP3Yy01.mjs → acorex-modules-human-capital-management-start-lifecycle-event-flow.command-B8xK2iTn.mjs} +2 -2
  52. package/fesm2022/{acorex-modules-human-capital-management-start-lifecycle-event-flow.command-mMP3Yy01.mjs.map → acorex-modules-human-capital-management-start-lifecycle-event-flow.command-B8xK2iTn.mjs.map} +1 -1
  53. package/fesm2022/acorex-modules-human-capital-management.mjs +1 -1
  54. package/fesm2022/acorex-modules-platform-dev-tools.mjs +2 -2
  55. package/fesm2022/acorex-modules-platform-dev-tools.mjs.map +1 -1
  56. package/fesm2022/acorex-modules-project-management.mjs +707 -424
  57. package/fesm2022/acorex-modules-project-management.mjs.map +1 -1
  58. package/fesm2022/acorex-modules-report-management.mjs +1 -1
  59. package/fesm2022/acorex-modules-report-management.mjs.map +1 -1
  60. package/fesm2022/acorex-modules-task-management-start-task-flow.command-HYdQOWDe.mjs +115 -0
  61. package/fesm2022/acorex-modules-task-management-start-task-flow.command-HYdQOWDe.mjs.map +1 -0
  62. package/fesm2022/{acorex-modules-task-management-task-board.page-DTWxd_vG.mjs → acorex-modules-task-management-task-board.page-BMTjJlry.mjs} +3 -3
  63. package/fesm2022/{acorex-modules-task-management-task-board.page-DTWxd_vG.mjs.map → acorex-modules-task-management-task-board.page-BMTjJlry.mjs.map} +1 -1
  64. package/fesm2022/acorex-modules-task-management.mjs +433 -460
  65. package/fesm2022/acorex-modules-task-management.mjs.map +1 -1
  66. package/fesm2022/{acorex-modules-timesheet-management-report-hours-by-project.query-z38wZLKJ.mjs → acorex-modules-timesheet-management-report-hours-by-project.query-CGc1Q6aB.mjs} +2 -2
  67. package/fesm2022/acorex-modules-timesheet-management-report-hours-by-project.query-CGc1Q6aB.mjs.map +1 -0
  68. package/fesm2022/{acorex-modules-timesheet-management-resolve-work-item-from-jira-issue.command-BDfvz6fH.mjs → acorex-modules-timesheet-management-resolve-work-item-from-jira-issue.command-AIcAUd3s.mjs} +2 -2
  69. package/fesm2022/{acorex-modules-timesheet-management-resolve-work-item-from-jira-issue.command-BDfvz6fH.mjs.map → acorex-modules-timesheet-management-resolve-work-item-from-jira-issue.command-AIcAUd3s.mjs.map} +1 -1
  70. package/fesm2022/acorex-modules-timesheet-management.mjs +8 -8
  71. package/fesm2022/acorex-modules-timesheet-management.mjs.map +1 -1
  72. package/fesm2022/acorex-modules-workplacesafety-management-control-hierarchy-diagram-widget-edit.component-CFF7X1MO.mjs +70 -0
  73. package/fesm2022/acorex-modules-workplacesafety-management-control-hierarchy-diagram-widget-edit.component-CFF7X1MO.mjs.map +1 -0
  74. package/fesm2022/acorex-modules-workplacesafety-management-control-hierarchy-diagram-widget-view.component-DwC2aHVt.mjs +70 -0
  75. package/fesm2022/acorex-modules-workplacesafety-management-control-hierarchy-diagram-widget-view.component-DwC2aHVt.mjs.map +1 -0
  76. package/fesm2022/acorex-modules-workplacesafety-management-control-hierarchy-diagram.types-DmzV305e.mjs +195 -0
  77. package/fesm2022/acorex-modules-workplacesafety-management-control-hierarchy-diagram.types-DmzV305e.mjs.map +1 -0
  78. package/fesm2022/acorex-modules-workplacesafety-management.mjs +139 -16
  79. package/fesm2022/acorex-modules-workplacesafety-management.mjs.map +1 -1
  80. package/package.json +2 -2
  81. package/types/acorex-modules-dashboard-management.d.ts +30 -11
  82. package/types/acorex-modules-document-management.d.ts +21 -5
  83. package/types/acorex-modules-human-capital-management.d.ts +4 -0
  84. package/types/acorex-modules-project-management.d.ts +46 -23
  85. package/types/acorex-modules-task-management.d.ts +80 -11
  86. package/types/acorex-modules-timesheet-management.d.ts +2 -2
  87. package/types/acorex-modules-workplacesafety-management.d.ts +7 -2
  88. package/fesm2022/acorex-modules-conversation-acorex-modules-conversation-B_JcAHvL.mjs.map +0 -1
  89. package/fesm2022/acorex-modules-dashboard-management-acorex-modules-dashboard-management-DLuhOPFz.mjs.map +0 -1
  90. package/fesm2022/acorex-modules-human-capital-management-acorex-modules-human-capital-management-VJ2NUSm1.mjs.map +0 -1
  91. package/fesm2022/acorex-modules-timesheet-management-report-hours-by-project.query-z38wZLKJ.mjs.map +0 -1
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@acorex/modules",
3
- "version": "21.0.0-next.89",
3
+ "version": "21.0.0-next.90",
4
4
  "peerDependencies": {
5
- "@acorex/platform": "21.0.0-next.89",
5
+ "@acorex/platform": "21.0.0-next.90",
6
6
  "@angular/service-worker": "^20.0.0",
7
7
  "d3": "^7.0.0",
8
8
  "html2canvas": "^1.0.0",
@@ -92,9 +92,8 @@ interface AXMDashboardTenantScopeRef {
92
92
  tenantId: string;
93
93
  roleIds: string[];
94
94
  }
95
- /** Scope reference for entity dashboards. */
95
+ /** Scope reference for entity-type dashboards (one layout shared by all records of the type). */
96
96
  interface AXMDashboardEntityScopeRef {
97
- entityId: string;
98
97
  entityType: string;
99
98
  }
100
99
  /**
@@ -122,7 +121,7 @@ interface AXMCommonDashboardEntityModel extends AXPEntityModel<string> {
122
121
  locked?: boolean;
123
122
  /** Dashboard scope (`T` tenant, `U` personal, `E` entity). */
124
123
  scope: AXMDashboardScope;
125
- /** Scope-specific reference (userId, tenantId+roleIds, or entityId+entityType). */
124
+ /** Scope-specific reference (userId, tenantId+roleIds, or entityType). */
126
125
  scopeRef: AXMDashboardScopeRef;
127
126
  /** Assigned by the category plugin (`categoryIds` property). */
128
127
  categoryIds?: string[];
@@ -130,14 +129,11 @@ interface AXMCommonDashboardEntityModel extends AXPEntityModel<string> {
130
129
 
131
130
  declare function buildUserScopeRef(userId: string): AXMDashboardUserScopeRef;
132
131
  declare function buildTenantScopeRef(tenantId: string, roleIds: readonly string[]): AXMDashboardTenantScopeRef;
133
- declare function buildEntityScopeRef(entityType: string, entityId: string): AXMDashboardEntityScopeRef;
132
+ declare function buildEntityScopeRef(entityType: string): AXMDashboardEntityScopeRef;
134
133
  declare function readScopeUserId(scopeRef: AXMDashboardScopeRef | undefined): string | undefined;
135
134
  declare function readScopeTenantId(scopeRef: AXMDashboardScopeRef | undefined): string | undefined;
136
135
  declare function readScopeRoleIds(scopeRef: AXMDashboardScopeRef | undefined): string[];
137
- declare function readScopeEntityRef(scopeRef: AXMDashboardScopeRef | undefined): {
138
- entityId: string;
139
- entityType: string;
140
- } | undefined;
136
+ declare function readScopeEntityType(scopeRef: AXMDashboardScopeRef | undefined): string | undefined;
141
137
  /**
142
138
  * Ensures {@link scopeRef} matches {@link scope} and strips incompatible keys.
143
139
  */
@@ -145,7 +141,6 @@ declare function normalizeDashboardScopeRef(scope: AXMDashboardScope, scopeRef:
145
141
  userId: string;
146
142
  tenantId: string;
147
143
  roleIds: readonly string[];
148
- entityId: string;
149
144
  entityType: string;
150
145
  }>): AXMDashboardScopeRef;
151
146
 
@@ -519,16 +514,40 @@ declare class AXMDashboardWidgetWrapperComponent {
519
514
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXMDashboardWidgetWrapperComponent, "axm-dashboard-widget-wrapper", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "hasConfiguration": { "alias": "hasConfiguration"; "required": false; "isSignal": true; }; "isLocked": { "alias": "isLocked"; "required": false; "isSignal": true; }; }, { "onDelete": "onDelete"; "onConfiguration": "onConfiguration"; "onValueChanged": "onValueChanged"; "onOptionsChanged": "onOptionsChanged"; }, ["widget"], ["*"], true, never>;
520
515
  }
521
516
 
517
+ /** Reserved widgets-container key for runtime entity detail context (entity dashboard plugin). */
518
+ declare const AXPDASHBOARD_ENTITY_CONTEXT_KEY = "__dashboardEntityContext";
522
519
  /** Content-box size of the widget host element (from ResizeObserver). */
523
520
  interface AXPDashboardWidgetContainerSize {
524
521
  width: number;
525
522
  height: number;
526
523
  }
524
+ /** Runtime entity record context passed to dashboard widgets on entity detail views. */
525
+ interface AXPDashboardEntityContext {
526
+ entityType: string;
527
+ entityId: string;
528
+ /** Full entity record from the detail view (rootContext). */
529
+ data: Record<string, unknown>;
530
+ }
531
+ /**
532
+ * Merges a persisted dashboard model with optional runtime entity context for widget rendering.
533
+ */
534
+ declare function buildDashboardWidgetsContext(dashboardModel: Record<string, unknown>, entityContext?: AXPDashboardEntityContext): Record<string, unknown>;
535
+ /**
536
+ * Reads {@link AXPDashboardEntityContext} from a widgets-container context object.
537
+ */
538
+ declare function readDashboardEntityContext(context: unknown): AXPDashboardEntityContext | undefined;
527
539
  /**
528
540
  * Base class for dashboard widgets ({@link AXPBaseWidgetComponent}).
529
541
  * Extend this to add shared dashboard logic and helpers.
530
542
  */
531
543
  declare abstract class AXPDashboardWidgetComponent<TOptions extends Record<string, unknown> = AXPOptionsData> extends AXPBaseWidgetComponent<TOptions> {
544
+ /**
545
+ * Runtime entity detail context when the dashboard is shown on an entity record (dashboard plugin).
546
+ * Undefined on home/tenant dashboards.
547
+ */
548
+ protected readonly entityContext: _angular_core.Signal<AXPDashboardEntityContext | undefined>;
549
+ /** True when {@link entityContext} is available for dynamic, record-scoped widget data. */
550
+ protected hasEntityContext(): boolean;
532
551
  private readonly containerResizeRawSubject;
533
552
  private readonly containerSizeSubject;
534
553
  /**
@@ -1569,5 +1588,5 @@ declare const AXP_DASHBOARD_SHARED_SUB_UTILITY_TIME: AXPDefinitionCategory;
1569
1588
  declare const AXP_DASHBOARD_SHARED_SUB_UTILITY_WEATHER: AXPDefinitionCategory;
1570
1589
  declare const AXP_DASHBOARD_SHARED_SUB_UTILITY_NOTES: AXPDefinitionCategory;
1571
1590
 
1572
- export { AXMAddDashboardPopup, AXMAdvancedWeatherViewComponent, AXMAnalogClockComponent, AXMClockWidgetViewComponent, AXMConfigurationPopup, AXMDashboardHomeComponent, AXMDashboardManagementModule, AXMDashboardPopupService, AXMDashboardStore, AXMDashboardWidgetWrapperComponent, AXMMinimalWeatherViewComponent, AXPAdvancedWeatherWidget, AXPAnalogClockWidget, AXPBarChartWidget, AXPBarChartWidgetViewComponent, AXPClockCalendarWidget, AXPClockCalendarWidgetViewComponent, AXPDashboardWidgetComponent, AXPDonutChartWidget, AXPDonutChartWidgetViewComponent, AXPFunnelChartWidget, AXPFunnelChartWidgetViewComponent, AXPGaugeChartWidget, AXPGaugeChartWidgetViewComponent, AXPHeatmapChartWidget, AXPHeatmapChartWidgetViewComponent, AXPHomeDashboardSetting, AXPKpiDetailsWidget, AXPKpiDetailsWidgetViewComponent, AXPKpiProgressWidget, AXPKpiProgressWidgetViewComponent, AXPKpiSegmentedWidget, AXPKpiSegmentedWidgetViewComponent, AXPKpiStatCardWidget, AXPKpiStatCardWidgetViewComponent, AXPLineChartWidget, AXPLineChartWidgetViewComponent, AXPMinimalWeatherWidget, AXPShortcutWidget, AXPShortcutWidgetViewComponent, AXPStickyNoteWidget, AXPStickyNoteWidgetViewComponent, AXPWeatherApiAbstract, AXPWeatherApiMockService, AXPWeatherApiService, AXPWeatherWidget, AXPWeatherWidgetViewComponent, AXP_DASHBOARD_SHARED_SUB_CHART_CARTESIAN, AXP_DASHBOARD_SHARED_SUB_CHART_KPI, AXP_DASHBOARD_SHARED_SUB_CHART_RADIAL, AXP_DASHBOARD_SHARED_SUB_CHART_SPECIALIZED, AXP_DASHBOARD_SHARED_SUB_UTILITY_NOTES, AXP_DASHBOARD_SHARED_SUB_UTILITY_SHORTCUT, AXP_DASHBOARD_SHARED_SUB_UTILITY_TIME, AXP_DASHBOARD_SHARED_SUB_UTILITY_WEATHER, AXP_DATE_FORMAT_OPTIONS, AXP_TIMEZONE_OPTIONS, AXP_WIDGETS_CHART_CATEGORY, AXP_WIDGETS_UTILITY_CATEGORY, RootConfig, buildEntityScopeRef, buildTenantScopeRef, buildUserScopeRef, dashboardFactory, normalizeDashboardScopeRef, readScopeEntityRef, readScopeRoleIds, readScopeTenantId, readScopeUserId };
1573
- export type { AXMCommonDashboardEntityModel, AXMDashboardBreakpoint, AXMDashboardEntityScopeRef, AXMDashboardLayout, AXMDashboardLayoutDialogOptions, AXMDashboardScope, AXMDashboardScopeRef, AXMDashboardTenantScopeRef, AXMDashboardUserScopeRef, AXMDashboardWidgetData, AXMDashboardWidgetLayoutMap, AXPClockCalendarOptions, AXPClockLayout, AXPDashboardWidgetContainerSize, AXPDateFormatOption, AXPHourNumber, AXPKpiDetailItem, AXPKpiDetailsData, AXPKpiIconTone, AXPKpiProgressData, AXPKpiSegmentItem, AXPKpiSegmentedData, AXPKpiStatCardData, AXPKpiTextValueFormat, AXPKpiTitleBadge, AXPKpiTitleBadgeTone, AXPKpiTrendStatus, AXPShortcutItem, AXPTimezoneOption, AXPWeatherCondition, AXPWeatherConditionDisplay, AXPWeatherData, AXPWeatherForecastDay, AXPWeatherHour, AXPWeatherLocation, AXPWeatherRequestOptions };
1591
+ export { AXMAddDashboardPopup, AXMAdvancedWeatherViewComponent, AXMAnalogClockComponent, AXMClockWidgetViewComponent, AXMConfigurationPopup, AXMDashboardHomeComponent, AXMDashboardManagementModule, AXMDashboardPopupService, AXMDashboardStore, AXMDashboardWidgetWrapperComponent, AXMMinimalWeatherViewComponent, AXPAdvancedWeatherWidget, AXPAnalogClockWidget, AXPBarChartWidget, AXPBarChartWidgetViewComponent, AXPClockCalendarWidget, AXPClockCalendarWidgetViewComponent, AXPDASHBOARD_ENTITY_CONTEXT_KEY, AXPDashboardWidgetComponent, AXPDonutChartWidget, AXPDonutChartWidgetViewComponent, AXPFunnelChartWidget, AXPFunnelChartWidgetViewComponent, AXPGaugeChartWidget, AXPGaugeChartWidgetViewComponent, AXPHeatmapChartWidget, AXPHeatmapChartWidgetViewComponent, AXPHomeDashboardSetting, AXPKpiDetailsWidget, AXPKpiDetailsWidgetViewComponent, AXPKpiProgressWidget, AXPKpiProgressWidgetViewComponent, AXPKpiSegmentedWidget, AXPKpiSegmentedWidgetViewComponent, AXPKpiStatCardWidget, AXPKpiStatCardWidgetViewComponent, AXPLineChartWidget, AXPLineChartWidgetViewComponent, AXPMinimalWeatherWidget, AXPShortcutWidget, AXPShortcutWidgetViewComponent, AXPStickyNoteWidget, AXPStickyNoteWidgetViewComponent, AXPWeatherApiAbstract, AXPWeatherApiMockService, AXPWeatherApiService, AXPWeatherWidget, AXPWeatherWidgetViewComponent, AXP_DASHBOARD_SHARED_SUB_CHART_CARTESIAN, AXP_DASHBOARD_SHARED_SUB_CHART_KPI, AXP_DASHBOARD_SHARED_SUB_CHART_RADIAL, AXP_DASHBOARD_SHARED_SUB_CHART_SPECIALIZED, AXP_DASHBOARD_SHARED_SUB_UTILITY_NOTES, AXP_DASHBOARD_SHARED_SUB_UTILITY_SHORTCUT, AXP_DASHBOARD_SHARED_SUB_UTILITY_TIME, AXP_DASHBOARD_SHARED_SUB_UTILITY_WEATHER, AXP_DATE_FORMAT_OPTIONS, AXP_TIMEZONE_OPTIONS, AXP_WIDGETS_CHART_CATEGORY, AXP_WIDGETS_UTILITY_CATEGORY, RootConfig, buildDashboardWidgetsContext, buildEntityScopeRef, buildTenantScopeRef, buildUserScopeRef, dashboardFactory, normalizeDashboardScopeRef, readDashboardEntityContext, readScopeEntityType, readScopeRoleIds, readScopeTenantId, readScopeUserId };
1592
+ export type { AXMCommonDashboardEntityModel, AXMDashboardBreakpoint, AXMDashboardEntityScopeRef, AXMDashboardLayout, AXMDashboardLayoutDialogOptions, AXMDashboardScope, AXMDashboardScopeRef, AXMDashboardTenantScopeRef, AXMDashboardUserScopeRef, AXMDashboardWidgetData, AXMDashboardWidgetLayoutMap, AXPClockCalendarOptions, AXPClockLayout, AXPDashboardEntityContext, AXPDashboardWidgetContainerSize, AXPDateFormatOption, AXPHourNumber, AXPKpiDetailItem, AXPKpiDetailsData, AXPKpiIconTone, AXPKpiProgressData, AXPKpiSegmentItem, AXPKpiSegmentedData, AXPKpiStatCardData, AXPKpiTextValueFormat, AXPKpiTitleBadge, AXPKpiTitleBadgeTone, AXPKpiTrendStatus, AXPShortcutItem, AXPTimezoneOption, AXPWeatherCondition, AXPWeatherConditionDisplay, AXPWeatherData, AXPWeatherForecastDay, AXPWeatherHour, AXPWeatherLocation, AXPWeatherRequestOptions };
@@ -6,7 +6,7 @@ import * as i3 from '@acorex/components/media-viewer';
6
6
  import * as i4 from '@acorex/platform/workflow';
7
7
  import { AXPWorkflowService } from '@acorex/platform/workflow';
8
8
  import { AXPEntity, AXPEntityModel } from '@acorex/platform/layout/entity-contracts';
9
- import { AXPFileListItem, AXPMetaData, AXPCategoryEntity, AXPPlatformScope, AXPFilterQuery, AXPBackButton, AXPBreadcrumbItem, AXPExecuteCommand, AXPFilterDefinition } from '@acorex/platform/contracts';
9
+ import { AXPMultiLanguageString, AXPFileListItem, AXPMetaData, AXPCategoryEntity, AXPPlatformScope, AXPFilterQuery, AXPExpression, AXPBackButton, AXPBreadcrumbItem, AXPExecuteCommand, AXPFilterDefinition } from '@acorex/platform/contracts';
10
10
  import { AXMMetaDataBuilderValue } from '@acorex/modules/data-management/contracts';
11
11
  import * as _acorex_platform_common from '@acorex/platform/common';
12
12
  import { AXPEntity as AXPEntity$1, AXPFileStorageService, AXPFilterOperatorMiddlewareService, AXPFileType, AXPFileTypeInfoProvider, AXPFileTypeProviderService, AXPMenuProvider, AXPMenuProviderContext, AXPSearchCommandProvider, AXPSettingDefinitionProvider, AXPSettingDefinitionProviderContext } from '@acorex/platform/common';
@@ -119,7 +119,7 @@ interface AXMDocumentDto extends AXPEntityModel<string> {
119
119
  interface AXMDocumentDocDto {
120
120
  id: string;
121
121
  name: string;
122
- title: string;
122
+ title: AXPMultiLanguageString;
123
123
  }
124
124
 
125
125
  /**
@@ -174,7 +174,8 @@ interface DocumentTypeFileOutput {
174
174
  }
175
175
  interface AXMDocumentManagementDocumentTypeEntityModel extends AXPEntityModel<string> {
176
176
  name: string;
177
- title: string;
177
+ title: AXPMultiLanguageString;
178
+ description?: AXPMultiLanguageString;
178
179
  maxSize: number;
179
180
  isEncrypted: boolean;
180
181
  enableVersioning: boolean;
@@ -753,6 +754,8 @@ declare class AXMDocumentManagerServiceImpl extends AXMDocumentManagerService {
753
754
  * catalog entry whose programmatic name is `any` (mock title "Document").
754
755
  */
755
756
  private initialFolderDialogDocumentTypes;
757
+ private mapDocumentTypesForPicker;
758
+ private resolveDocumentTypeLabel;
756
759
  /**
757
760
  * Shows folder edit dialog
758
761
  */
@@ -1262,7 +1265,7 @@ type DocumentPluginOptions = {
1262
1265
  * Restrict document types for this entity: only these types can be selected when creating a folder
1263
1266
  * or uploading. User cannot see or select other document types.
1264
1267
  */
1265
- documentTypeNames?: string[];
1268
+ documentTypeNames?: string[] | AXPExpression;
1266
1269
  /** Visibility condition for the Documents page (boolean or expression string). */
1267
1270
  hidden?: boolean | string;
1268
1271
  };
@@ -1478,6 +1481,9 @@ declare class AXMDocumentDrivePageComponent extends AXPPageLayoutBaseComponent i
1478
1481
  allowedDocumentTypeNames: string[] | null;
1479
1482
  }>;
1480
1483
  private readonly route;
1484
+ private readonly expressionEvaluator;
1485
+ /** Resolved restriction list; null = not configured (allow all). */
1486
+ private readonly resolvedAllowedDocumentTypeNames;
1481
1487
  protected readonly filterItems: _angular_core.WritableSignal<{
1482
1488
  key: string;
1483
1489
  textKey: string;
@@ -1519,7 +1525,12 @@ declare class AXMDocumentDrivePageComponent extends AXPPageLayoutBaseComponent i
1519
1525
  icon: string;
1520
1526
  }>;
1521
1527
  ngOnInit(): Promise<void>;
1522
- /** Allowed document type names from pageConfig (when plugin is configured with documentTypeNames). */
1528
+ /**
1529
+ * Resolves allowed document type names from static plugin config or an expression evaluated against rootContext.
1530
+ * Returns null when not configured (no restriction).
1531
+ */
1532
+ private resolveAllowedDocumentTypeNames;
1533
+ private applyAllowedDocumentTypeNames;
1523
1534
  private getAllowedDocumentTypeNames;
1524
1535
  /**
1525
1536
  * Resolves refType and refId for getRootByEntityRef from pageConfig, rootContext, or route.
@@ -1885,6 +1896,7 @@ declare class AXMFileTypeExtensionWidgetDesignerComponent extends AXPValueWidget
1885
1896
 
1886
1897
  declare class AXMFileTypeExtensionWidgetEditComponent extends AXPValueWidgetComponent<any> {
1887
1898
  protected fileTypeService: AXPFileTypeProviderService;
1899
+ protected searchValue: _angular_core.WritableSignal<string | undefined>;
1888
1900
  protected dataSource: AXDataSource<unknown>;
1889
1901
  selectedItems: _angular_core.WritableSignal<AXPFileType[]>;
1890
1902
  selectedItemsNotEmpty: _angular_core.WritableSignal<AXPFileType[]>;
@@ -1892,6 +1904,10 @@ declare class AXMFileTypeExtensionWidgetEditComponent extends AXPValueWidgetComp
1892
1904
  ngOnInit(): void;
1893
1905
  protected outputs(): string[];
1894
1906
  protected handleOnContextChange(e: AXPContextChangeEvent): void;
1907
+ protected handleSearchQueryChange(value: unknown): void;
1908
+ protected handleSearchValueChange(e: AXValueChangedEvent): void;
1909
+ private applySearchQuery;
1910
+ private normalizeSearchQuery;
1895
1911
  protected handleValueChange(e: AXValueChangedEvent): Promise<void>;
1896
1912
  protected getNode(meta: any): AXPWidgetNode;
1897
1913
  protected filedIsRequired(meta: any): boolean;
@@ -376,6 +376,10 @@ declare class AXMLeaveRequestBadgeProvider extends AXPTaskBadgeProvider {
376
376
  * Forces badge count recalculation by querying the leave request entity service.
377
377
  */
378
378
  refresh(): Promise<void>;
379
+ /**
380
+ * Returns true when the command event targets the leave request entity.
381
+ */
382
+ private isLeaveRequestCommandEvent;
379
383
  /**
380
384
  * Handles command execution events and refreshes the badge when targeted leave request commands succeed.
381
385
  */
@@ -1,7 +1,8 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import * as i1 from '@acorex/platform/runtime';
3
3
  import { AXPEntity, AXPEntityModel } from '@acorex/platform/layout/entity-contracts';
4
- import { AXPSystemStatuses } from '@acorex/platform/contracts';
4
+ import { AXPSystemStatuses, AXPCategoryListItem } from '@acorex/platform/contracts';
5
+ import { AXMMetaDataBuilderValue } from '@acorex/modules/data-management/contracts';
5
6
  import * as _acorex_platform_common from '@acorex/platform/common';
6
7
  import { AXPEntity as AXPEntity$1, AXPMenuProvider, AXPMenuProviderContext, AXPSearchCommandProvider, AXPSettingDefinitionProvider, AXPSettingDefinitionProviderContext } from '@acorex/platform/common';
7
8
  import { AXPEntityDefinitionLoader, AXPEntityDefinitionPreloader, AXPEntityPreloadEntity } from '@acorex/platform/layout/entity';
@@ -42,8 +43,15 @@ declare const RootConfig: {
42
43
  titlePlural: string;
43
44
  icon: string;
44
45
  };
46
+ projectTypeCategory: {
47
+ name: string;
48
+ title: string;
49
+ titlePlural: string;
50
+ icon: string;
51
+ };
45
52
  project: {
46
53
  name: string;
54
+ source: string;
47
55
  title: string;
48
56
  titlePlural: string;
49
57
  icon: string;
@@ -55,32 +63,42 @@ declare function projectFactory(): Promise<AXPEntity | null>;
55
63
 
56
64
  type AXMProjectmanagementProjectStatus = typeof AXPSystemStatuses.Draft.name | typeof AXPSystemStatuses.Active.name | typeof AXPSystemStatuses.Inactive.name | typeof AXPSystemStatuses.Archived.name;
57
65
  interface AXMProjectManagementProjectEntityModel extends AXPEntityModel<string> {
58
- customerId: string;
59
- customer?: {
66
+ code: string;
67
+ title: string;
68
+ description?: string;
69
+ startDate?: string | Date;
70
+ endDate?: string | Date;
71
+ dueDate?: string | Date;
72
+ actualStartDate?: string | Date;
73
+ actualEndDate?: string | Date;
74
+ projectTypeId: string;
75
+ projectType?: {
60
76
  id: string;
61
77
  title?: string;
62
- displayName?: string;
63
78
  };
64
- partyLocationId: string;
65
- partyLocation?: {
79
+ projectStatusId?: AXMProjectmanagementProjectStatus | string;
80
+ projectStatus?: AXMProjectmanagementProjectStatus | {
66
81
  id: string;
67
82
  title?: string;
68
- displayName?: string;
69
83
  };
70
- projectNo: string;
71
- projectName: string;
72
- description: string;
73
- projectTypeId: string;
74
- projectType?: {
84
+ customerId?: string;
85
+ customer?: {
75
86
  id: string;
76
87
  title?: string;
88
+ partyId?: string;
77
89
  };
78
- projectStatusId: AXMProjectmanagementProjectStatus;
79
- projectStatus: {
80
- id: AXMProjectmanagementProjectStatus;
90
+ partyLocationId?: string;
91
+ partyLocation?: {
92
+ id: string;
81
93
  title?: string;
94
+ location?: {
95
+ street1?: string;
96
+ city?: {
97
+ title?: string;
98
+ };
99
+ };
82
100
  };
83
- duedate: Date;
101
+ metaDataForm?: Record<string, unknown>;
84
102
  }
85
103
 
86
104
  declare function projectMemeberFactory(): Promise<AXPEntity | null>;
@@ -108,14 +126,19 @@ interface AXMProjectManagementProjectMemeberEntityModel extends AXPEntityModel<s
108
126
 
109
127
  declare function projectTypeFactory(): Promise<AXPEntity | null>;
110
128
 
129
+ interface AXMProjectManagementProjectTypeAllowedTaskTypeRef {
130
+ id: string;
131
+ title?: string;
132
+ name?: string;
133
+ }
111
134
  interface AXMProjectManagementProjectTypeEntityModel extends AXPEntityModel<string> {
112
135
  title: string;
113
- description: string;
114
- taskTypeIds?: string[];
115
- workflows?: {
116
- name: string;
117
- title?: string;
118
- }[];
136
+ description?: string;
137
+ metaDataList?: AXMMetaDataBuilderValue;
138
+ allowedTaskTypeIds?: string[];
139
+ allowedTaskTypes?: AXMProjectManagementProjectTypeAllowedTaskTypeRef[];
140
+ categoryIds?: string[];
141
+ categories?: AXPCategoryListItem[];
119
142
  }
120
143
 
121
144
  declare function projectTypeRoleTypeFactory(): Promise<AXPEntity | null>;
@@ -155,4 +178,4 @@ declare class AXMSettingProvider implements AXPSettingDefinitionProvider {
155
178
  }
156
179
 
157
180
  export { AXMEntityProvider, AXMMenuProvider, AXMProjectManagementModule, AXMSearchCommandProvider, AXMSettingProvider, RootConfig, projectFactory, projectMemeberFactory, projectTypeFactory, projectTypeRoleTypeFactory };
158
- export type { AXMProjectManagementProjectEntityModel, AXMProjectManagementProjectMemeberEntityModel, AXMProjectManagementProjectTypeEntityModel, AXMProjectManagementProjectTypeRoleTypeEntityModel, AXMProjectmanagementProjectStatus };
181
+ export type { AXMProjectManagementProjectEntityModel, AXMProjectManagementProjectMemeberEntityModel, AXMProjectManagementProjectTypeAllowedTaskTypeRef, AXMProjectManagementProjectTypeEntityModel, AXMProjectManagementProjectTypeRoleTypeEntityModel, AXMProjectmanagementProjectStatus };
@@ -4,8 +4,10 @@ import * as i1 from '@angular/common';
4
4
  import * as i3 from '@acorex/modules/calendar-management';
5
5
  import * as i4 from '@acorex/platform/layout/widget-core';
6
6
  import { AXPWidgetColumnNode, AXPWidgetNode, AXPLayoutBaseWidgetComponent, AXPWidgetConfig } from '@acorex/platform/layout/widget-core';
7
+ import * as i2 from '@acorex/platform/runtime';
7
8
  import { AXPEntity, AXPEntityModel } from '@acorex/platform/layout/entity-contracts';
8
- import { AXPMultiSourceRef, AXPUserReference, AXPExecuteCommand, AXPExecuteCommandResult, AXPDefinitionCategory } from '@acorex/platform/contracts';
9
+ import { AXPEntityReference, AXPMultiSourceRef, AXPCategoryListItem, AXPUserReference, AXPExecuteCommand, AXPExecuteCommandResult, AXPDefinitionCategory } from '@acorex/platform/contracts';
10
+ import { AXMMetaDataBuilderValue } from '@acorex/modules/data-management/contracts';
9
11
  import { AXPEntity as AXPEntity$1, AXPMenuProvider, AXPMenuProviderContext, AXPSearchCommandProvider, AXPSearchResult, AXPSettingDefinitionProvider, AXPSettingDefinitionProviderContext, AXPSettingsService } from '@acorex/platform/common';
10
12
  import { AXPEntityDefinitionLoader, AXPEntityDefinitionPreloader, AXPEntityPreloadEntity } from '@acorex/platform/layout/entity';
11
13
  import { AXMSecurityManagementUsersEntityModel } from '@acorex/modules/security-management';
@@ -26,12 +28,27 @@ declare class AXPTaskBoardModule {
26
28
  static ɵinj: _angular_core.ɵɵInjectorDeclaration<AXPTaskBoardModule>;
27
29
  }
28
30
 
31
+ declare class AXMTaskFeatureModule {
32
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXMTaskFeatureModule, never>;
33
+ static ɵmod: _angular_core.ɵɵNgModuleDeclaration<AXMTaskFeatureModule, never, [typeof i1.CommonModule, typeof i2.AXPRuntimeModule], never>;
34
+ static ɵinj: _angular_core.ɵɵInjectorDeclaration<AXMTaskFeatureModule>;
35
+ }
36
+
29
37
  declare class AXMTaskManagementModule {
30
38
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXMTaskManagementModule, never>;
31
- static ɵmod: _angular_core.ɵɵNgModuleDeclaration<AXMTaskManagementModule, never, [typeof i1.CommonModule, typeof AXPTaskBoardModule, typeof i3.AXMCalendarManagementModule, typeof i4.AXPWidgetCoreModule], never>;
39
+ static ɵmod: _angular_core.ɵɵNgModuleDeclaration<AXMTaskManagementModule, never, [typeof i1.CommonModule, typeof AXPTaskBoardModule, typeof i3.AXMCalendarManagementModule, typeof i4.AXPWidgetCoreModule, typeof AXMTaskFeatureModule], never>;
32
40
  static ɵinj: _angular_core.ɵɵInjectorDeclaration<AXMTaskManagementModule>;
33
41
  }
34
42
 
43
+ /** Catalog scope for task-management–scoped workflow definitions and related catalogs. */
44
+ declare const TASK_MANAGEMENT_CATALOG_SCOPE_TASKS = "task-management.tasks";
45
+
46
+ declare const AXPTaskManagementCommandKeys: {
47
+ readonly Task: {
48
+ readonly StartFlow: "TaskManagement.Task:StartFlow";
49
+ };
50
+ };
51
+
35
52
  /** Task Management datasource registry names. */
36
53
  declare const AXMTaskManagementDataSourceKeys: {
37
54
  readonly TaskTypes: "task-types";
@@ -80,6 +97,11 @@ declare enum AXMTaskBoardSettings {
80
97
  SelectedTaskTypeNames = "taskboard.filter.selectedTaskTypeNames"
81
98
  }
82
99
 
100
+ /** Canonical {@link AXPEntityReference.type} values for common task subjects. */
101
+ declare const AXPTaskManagementSubjectTypes: {
102
+ readonly Project: "ProjectManagement.Project";
103
+ };
104
+
83
105
  declare const RootConfig: {
84
106
  config: {
85
107
  readonly i18n: "task-management";
@@ -97,6 +119,12 @@ declare const RootConfig: {
97
119
  titlePlural: string;
98
120
  icon: string;
99
121
  };
122
+ taskTypeCategory: {
123
+ name: string;
124
+ title: string;
125
+ titlePlural: string;
126
+ icon: string;
127
+ };
100
128
  taskStatus: {
101
129
  name: string;
102
130
  title: string;
@@ -169,11 +197,11 @@ interface AXMTaskManagementTaskEntityModel extends AXPEntityModel<string> {
169
197
  order: number;
170
198
  tags?: string[];
171
199
  isArchived: boolean;
172
- contextType?: string;
173
- contextId?: string;
200
+ /** Primary business subject (project, meeting, etc.). */
201
+ subjectRef?: AXPEntityReference;
174
202
  parentTaskId?: string;
175
203
  formTemplateId?: string;
176
- dynamicFields?: Record<string, any>;
204
+ dynamicFields?: Record<string, unknown>;
177
205
  }
178
206
 
179
207
  declare function taskAssignmentFactory(): Promise<AXPEntity | null>;
@@ -264,21 +292,33 @@ interface AXMTaskManagementTaskTemplateEntityModel extends AXPEntityModel<string
264
292
 
265
293
  declare function taskTypeFactory(): Promise<AXPEntity | null>;
266
294
 
295
+ /** Workflow template binding and admin-configured default inputs for task types. */
296
+ interface AXMTaskManagementTaskTypeWorkflowConfig {
297
+ workflowDefinitionId: string;
298
+ workflowName: string;
299
+ defaultInput?: Record<string, unknown>;
300
+ }
267
301
  interface AXMTaskManagementTaskTypeEntityModel extends AXPEntityModel<string> {
268
- name: string;
269
302
  title: string;
270
303
  description?: string;
271
304
  icon?: string;
272
305
  color?: string;
273
306
  isActive: boolean;
274
- allowedContextTypes?: string[];
275
- formTemplateId?: string;
276
- defaultStatusId?: string;
307
+ workflowConfig?: AXMTaskManagementTaskTypeWorkflowConfig | null;
308
+ metaDataList?: AXMMetaDataBuilderValue;
309
+ categoryIds?: string[];
310
+ categories?: AXPCategoryListItem[];
277
311
  hasChecklist: boolean;
278
312
  hasTimeTracking: boolean;
279
313
  hasAttachments: boolean;
280
314
  hasDependencies: boolean;
281
315
  hasSubtasks: boolean;
316
+ documentTypeIds?: string[];
317
+ documentTypes?: Array<{
318
+ id: string;
319
+ name?: string;
320
+ title?: string;
321
+ }>;
282
322
  }
283
323
 
284
324
  declare function timeLogFactory(): Promise<AXPEntity | null>;
@@ -470,6 +510,10 @@ interface AXPTaskFilter {
470
510
  take?: number;
471
511
  priorities?: Array<AXPTaskPriority | 'no_priority'>;
472
512
  dueStatusKeys?: AXPTaskDueStatusFilterKey[];
513
+ /** Filter by {@link AXPEntityReference.type} entity sources (e.g. `ProjectManagement.Project`). */
514
+ subjectRefTypes?: string[];
515
+ /** Filter by {@link AXPEntityReference.id} values. */
516
+ subjectRefIds?: string[];
473
517
  }
474
518
  /**
475
519
  * Represents an action performed on a task.
@@ -917,6 +961,31 @@ declare class AXMTaskBoardTaskPopoverShellComponent {
917
961
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXMTaskBoardTaskPopoverShellComponent, "axm-task-board-task-popover-shell", never, { "task": { "alias": "task"; "required": true; "isSignal": true; }; "bodyComponent": { "alias": "bodyComponent"; "required": true; "isSignal": true; }; "requestClose": { "alias": "requestClose"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
918
962
  }
919
963
 
964
+ /**
965
+ * Feeds the platform task board from persisted {@link TaskManagement.Task} rows.
966
+ */
967
+ declare class AXPTaskManagementEntityTaskProvider extends AXPWorkflowTaskProvider<Record<string, unknown>> {
968
+ getTitle(): Promise<string>;
969
+ getIcon(): Promise<string>;
970
+ private readonly entityService;
971
+ private readonly calendarService;
972
+ private readonly dueStatusProviderService;
973
+ get name(): string;
974
+ getTasks(options?: AXPTaskFilter): Promise<{
975
+ items: AXPTask<Record<string, unknown>>[];
976
+ total: number;
977
+ }>;
978
+ updateTasks(tasksToUpdate: AXPTask<Record<string, unknown>>[]): Promise<AXPTask<Record<string, unknown>>[]>;
979
+ getStatuses(): Promise<AXPTaskStatus[]>;
980
+ getExtraFields(): Promise<AXPExtraField[]>;
981
+ executeCommand(command: AXPExecuteCommand): Promise<AXPExecuteCommandResult>;
982
+ getActions(task?: AXPTask<Record<string, unknown>>): Promise<AXPActionMenuItem[]>;
983
+ private mapRowToTask;
984
+ private mapPriority;
985
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPTaskManagementEntityTaskProvider, never>;
986
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPTaskManagementEntityTaskProvider>;
987
+ }
988
+
920
989
  type TaskPriority = NonNullable<AXPTask['priority']>;
921
990
  type PriorityFilterKey = TaskPriority | 'no_priority';
922
991
  type Priority = {
@@ -1038,5 +1107,5 @@ declare const AXP_TASK_MANAGEMENT_DASHBOARD_WIDGET_CATEGORY: AXPDefinitionCatego
1038
1107
  declare const AXP_TASK_MANAGEMENT_DASHBOARD_SUB_SHORTCUT: AXPDefinitionCategory;
1039
1108
  declare const AXP_TASK_MANAGEMENT_DASHBOARD_SUB_BOARD: AXPDefinitionCategory;
1040
1109
 
1041
- export { AXMDefaultDueStatusProvider, AXMPermissionsKeys, AXMSearchCommandProvider, AXMSettingProvider, AXMTaskBoardDefaultTaskPopoverComponent, AXMTaskBoardSettings, AXMTaskBoardTaskPopoverOverlayService, AXMTaskBoardTaskPopoverShellComponent, AXMTaskManagementDataSourceKeys, AXMTaskManagementEntityProvider, AXMTaskManagementMenuProvider, AXMTaskManagementModule, AXM_TASK_BOARD_UNASSIGNED_ASSIGNEE_ID, AXM_TASK_VIEW_ALL_PERMISSION, AXPDueStatusProvider, AXPDueStatusProviderService, AXPTASK_PRIORITIES, AXPTaskBoardModule, AXPTaskBoardService, AXPTaskBoardShortcut, AXPTaskBoardShortcutViewComponent, AXPTaskBoardWidget, AXPTaskBoardWidgetViewComponent, AXPTaskManagementMenuKeys, AXPTaskPopoverComponent, AXPTaskTypeDataSourceDefinition, AXPWorkflowTaskProvider, AXP_DUE_STATUS_PROVIDERS, AXP_TASK_MANAGEMENT_DASHBOARD_SUB_BOARD, AXP_TASK_MANAGEMENT_DASHBOARD_SUB_SHORTCUT, AXP_TASK_MANAGEMENT_DASHBOARD_WIDGET_CATEGORY, AXP_WORKFLOW_TASK_PROVIDER, AXP_WORKFLOW_TASK_PROVIDER_RESOLVER, RootConfig, TASK_BOARD_GRID_ROW_ACTION_COLUMN_WIDTH, TASK_BOARD_GRID_ROW_ACTION_ITEMS, TASK_BOARD_GRID_ROW_VIEW_ACTION, TASK_PRIORITY_ORDER, buildTaskAccentCssClass, buildTaskAccentSurfaceCssClass, buildTaskSurfaceCssClass, canViewAllTaskAssignees, enrichTaskBoardTasks, filterTasksOverlappingRange, formatTaskI18nParamsForTranslate, getDefaultDueStatusDefinitions, getTaskDueStatusKey, getTaskPriorityColor, getTaskPriorityFilterKey, getTaskTranslationKey, hasTaskBoardSavedAssigneePreference, isTaskBoardUnassignedAssigneeId, mapEntityStatusColorForBadge, matchesTaskBoardAssigneeFilter, matchesTaskBoardAssigneeUserIdsFilter, matchesTaskDueStatusFilter, matchesTaskPriorityFilter, normalizePriorityFilterKey, normalizePriorityFilterKeys, normalizeTaskBoardAssigneeIds, normalizeTaskPriority, resolveDefaultTaskStatusColor, resolveDueStatusFromDefinitions, resolveTaskBoardAccentColor, resolveTaskBoardCalendarPlacement, resolveTaskBoardCurrentUserAssigneeItem, resolveTaskBoardSavedAssigneeIds, resolveTaskBoardSchedulerLabels, resolveTaskBoardSchedulingRange, resolveTaskBoardStatusColor, resolveTaskPopoverComponent, taskAssignmentFactory, taskChecklistItemFactory, taskContextFactory, taskDependencyFactory, taskFactory, taskOverlapsFilterRange, taskStatusFactory, taskTemplateFactory, taskTypeFactory, timeLogFactory };
1042
- export type { AXMOpenTaskPopoverOverlayOptions, AXMTaskManagementTaskAssignmentEntityModel, AXMTaskManagementTaskChecklistItemEntityModel, AXMTaskManagementTaskContextEntityModel, AXMTaskManagementTaskDependencyEntityModel, AXMTaskManagementTaskEntityModel, AXMTaskManagementTaskStatusEntityModel, AXMTaskManagementTaskTemplateEntityModel, AXMTaskManagementTaskTypeEntityModel, AXMTaskManagementTimeLogEntityModel, AXMTaskPopoverAnchor, AXPDueStatusDefinition, AXPDueStatusEvaluationContext, AXPDueStatusFilterKey, AXPDueStatusKey, AXPDueStatusPresentation, AXPDueStatusResolveOptions, AXPExtraField, AXPPriorityFilterKey, AXPResource, AXPTask, AXPTaskAction, AXPTaskActionMenuItem, AXPTaskBoardColorBy, AXPTaskBoardTaskTypeOption, AXPTaskDueStatusFilterKey, AXPTaskDueStatusPresentation, AXPTaskFilter, AXPTaskPopoverMetadata, AXPTaskPopoverMetadataField, AXPTaskPriority, AXPTaskStatus, AXPWorkflowTaskProviderResolveOptions };
1110
+ export { AXMDefaultDueStatusProvider, AXMPermissionsKeys, AXMSearchCommandProvider, AXMSettingProvider, AXMTaskBoardDefaultTaskPopoverComponent, AXMTaskBoardSettings, AXMTaskBoardTaskPopoverOverlayService, AXMTaskBoardTaskPopoverShellComponent, AXMTaskManagementDataSourceKeys, AXMTaskManagementEntityProvider, AXMTaskManagementMenuProvider, AXMTaskManagementModule, AXM_TASK_BOARD_UNASSIGNED_ASSIGNEE_ID, AXM_TASK_VIEW_ALL_PERMISSION, AXPDueStatusProvider, AXPDueStatusProviderService, AXPTASK_PRIORITIES, AXPTaskBoardModule, AXPTaskBoardService, AXPTaskBoardShortcut, AXPTaskBoardShortcutViewComponent, AXPTaskBoardWidget, AXPTaskBoardWidgetViewComponent, AXPTaskManagementCommandKeys, AXPTaskManagementEntityTaskProvider, AXPTaskManagementMenuKeys, AXPTaskManagementSubjectTypes, AXPTaskPopoverComponent, AXPTaskTypeDataSourceDefinition, AXPWorkflowTaskProvider, AXP_DUE_STATUS_PROVIDERS, AXP_TASK_MANAGEMENT_DASHBOARD_SUB_BOARD, AXP_TASK_MANAGEMENT_DASHBOARD_SUB_SHORTCUT, AXP_TASK_MANAGEMENT_DASHBOARD_WIDGET_CATEGORY, AXP_WORKFLOW_TASK_PROVIDER, AXP_WORKFLOW_TASK_PROVIDER_RESOLVER, RootConfig, TASK_BOARD_GRID_ROW_ACTION_COLUMN_WIDTH, TASK_BOARD_GRID_ROW_ACTION_ITEMS, TASK_BOARD_GRID_ROW_VIEW_ACTION, TASK_MANAGEMENT_CATALOG_SCOPE_TASKS, TASK_PRIORITY_ORDER, buildTaskAccentCssClass, buildTaskAccentSurfaceCssClass, buildTaskSurfaceCssClass, canViewAllTaskAssignees, enrichTaskBoardTasks, filterTasksOverlappingRange, formatTaskI18nParamsForTranslate, getDefaultDueStatusDefinitions, getTaskDueStatusKey, getTaskPriorityColor, getTaskPriorityFilterKey, getTaskTranslationKey, hasTaskBoardSavedAssigneePreference, isTaskBoardUnassignedAssigneeId, mapEntityStatusColorForBadge, matchesTaskBoardAssigneeFilter, matchesTaskBoardAssigneeUserIdsFilter, matchesTaskDueStatusFilter, matchesTaskPriorityFilter, normalizePriorityFilterKey, normalizePriorityFilterKeys, normalizeTaskBoardAssigneeIds, normalizeTaskPriority, resolveDefaultTaskStatusColor, resolveDueStatusFromDefinitions, resolveTaskBoardAccentColor, resolveTaskBoardCalendarPlacement, resolveTaskBoardCurrentUserAssigneeItem, resolveTaskBoardSavedAssigneeIds, resolveTaskBoardSchedulerLabels, resolveTaskBoardSchedulingRange, resolveTaskBoardStatusColor, resolveTaskPopoverComponent, taskAssignmentFactory, taskChecklistItemFactory, taskContextFactory, taskDependencyFactory, taskFactory, taskOverlapsFilterRange, taskStatusFactory, taskTemplateFactory, taskTypeFactory, timeLogFactory };
1111
+ export type { AXMOpenTaskPopoverOverlayOptions, AXMTaskManagementTaskAssignmentEntityModel, AXMTaskManagementTaskChecklistItemEntityModel, AXMTaskManagementTaskContextEntityModel, AXMTaskManagementTaskDependencyEntityModel, AXMTaskManagementTaskEntityModel, AXMTaskManagementTaskStatusEntityModel, AXMTaskManagementTaskTemplateEntityModel, AXMTaskManagementTaskTypeEntityModel, AXMTaskManagementTaskTypeWorkflowConfig, AXMTaskManagementTimeLogEntityModel, AXMTaskPopoverAnchor, AXPDueStatusDefinition, AXPDueStatusEvaluationContext, AXPDueStatusFilterKey, AXPDueStatusKey, AXPDueStatusPresentation, AXPDueStatusResolveOptions, AXPExtraField, AXPPriorityFilterKey, AXPResource, AXPTask, AXPTaskAction, AXPTaskActionMenuItem, AXPTaskBoardColorBy, AXPTaskBoardTaskTypeOption, AXPTaskDueStatusFilterKey, AXPTaskDueStatusPresentation, AXPTaskFilter, AXPTaskPopoverMetadata, AXPTaskPopoverMetadataField, AXPTaskPriority, AXPTaskStatus, AXPWorkflowTaskProviderResolveOptions };
@@ -196,7 +196,7 @@ interface AXMTimesheetManagementWorkItemEntityModel extends AXPEntityModel<strin
196
196
  projectId?: string;
197
197
  project?: {
198
198
  id: string;
199
- projectName?: string;
199
+ title?: string;
200
200
  };
201
201
  }
202
202
 
@@ -260,7 +260,7 @@ interface AXMTimesheetManagementTimeEntryEntityModel extends AXPEntityModel<stri
260
260
  projectId?: string;
261
261
  project?: {
262
262
  id: string;
263
- projectName?: string;
263
+ title?: string;
264
264
  };
265
265
  startedAt?: string;
266
266
  endedAt?: string;
@@ -1,13 +1,14 @@
1
1
  import * as i0 from '@angular/core';
2
+ import * as i1 from '@acorex/platform/layout/widget-core';
2
3
  import { AXPEntity, AXPMenuProvider, AXPMenuProviderContext, AXPSearchCommandProvider, AXPSearchResult } from '@acorex/platform/common';
3
4
  import { AXPEntityDefinitionLoader, AXPEntityDefinitionPreloader, AXPEntityPreloadEntity } from '@acorex/platform/layout/entity';
4
5
  import { AXPEntity as AXPEntity$1, AXPEntityModel } from '@acorex/platform/layout/entity-contracts';
5
- import { AXPMultiLanguageString, AXPSystemStatusType, AXPCategoryListItem } from '@acorex/platform/contracts';
6
+ import { AXPMultiLanguageString, AXPCategoryListItem, AXPSystemStatusType } from '@acorex/platform/contracts';
6
7
  import { AXMMetaDataBuilderValue } from '@acorex/modules/data-management/contracts';
7
8
 
8
9
  declare class AXMWorkplaceSafetyManagementModule {
9
10
  static ɵfac: i0.ɵɵFactoryDeclaration<AXMWorkplaceSafetyManagementModule, never>;
10
- static ɵmod: i0.ɵɵNgModuleDeclaration<AXMWorkplaceSafetyManagementModule, never, never, never>;
11
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AXMWorkplaceSafetyManagementModule, never, [typeof i1.AXPWidgetCoreModule], never>;
11
12
  static ɵinj: i0.ɵɵInjectorDeclaration<AXMWorkplaceSafetyManagementModule>;
12
13
  }
13
14
 
@@ -116,6 +117,10 @@ interface AXMWorkplaceSafetyManagementControlHierarchyLevelsEntityModel extends
116
117
  description?: AXPMultiLanguageString;
117
118
  /** Relative control effectiveness (higher is more effective). */
118
119
  effectivenessLevel: number;
120
+ /** Display color for hierarchy diagram visualizations. */
121
+ color?: string;
122
+ categoryIds?: string[];
123
+ categories?: AXPCategoryListItem[];
119
124
  status?: string;
120
125
  }
121
126