@acorex/modules 20.3.0-next.7 → 20.3.0-next.8

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 (96) hide show
  1. package/common/index.d.ts +1 -0
  2. package/data-management/index.d.ts +22 -3
  3. package/fesm2022/acorex-modules-common.mjs +97 -6
  4. package/fesm2022/acorex-modules-common.mjs.map +1 -1
  5. package/fesm2022/{acorex-modules-contact-management-emergency-contact.entity-D75qsDor.mjs → acorex-modules-contact-management-emergency-contact.entity-3vnkpSvv.mjs} +10 -9
  6. package/fesm2022/acorex-modules-contact-management-emergency-contact.entity-3vnkpSvv.mjs.map +1 -0
  7. package/fesm2022/acorex-modules-contact-management.mjs +1 -1
  8. package/fesm2022/acorex-modules-content-management.mjs +6 -0
  9. package/fesm2022/acorex-modules-content-management.mjs.map +1 -1
  10. package/fesm2022/acorex-modules-conversation.mjs +3 -3
  11. package/fesm2022/acorex-modules-conversation.mjs.map +1 -1
  12. package/fesm2022/acorex-modules-dashboard-management.mjs +11 -11
  13. package/fesm2022/acorex-modules-dashboard-management.mjs.map +1 -1
  14. package/fesm2022/acorex-modules-data-management.mjs +924 -8
  15. package/fesm2022/acorex-modules-data-management.mjs.map +1 -1
  16. package/fesm2022/{acorex-modules-document-management-acorex-modules-document-management-DhEDQZru.mjs → acorex-modules-document-management-acorex-modules-document-management-DUkSbCDD.mjs} +91 -58
  17. package/fesm2022/{acorex-modules-document-management-acorex-modules-document-management-DhEDQZru.mjs.map → acorex-modules-document-management-acorex-modules-document-management-DUkSbCDD.mjs.map} +1 -1
  18. package/fesm2022/{acorex-modules-document-management-attachment-widget.component-Bx2Ps7uX.mjs → acorex-modules-document-management-attachment-widget.component-Ded4rmGD.mjs} +2 -2
  19. package/fesm2022/{acorex-modules-document-management-attachment-widget.component-Bx2Ps7uX.mjs.map → acorex-modules-document-management-attachment-widget.component-Ded4rmGD.mjs.map} +1 -1
  20. package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-B26m8qWj.mjs → acorex-modules-document-management-create-folder-dialog.component-DdN8ilG4.mjs} +9 -9
  21. package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-B26m8qWj.mjs.map → acorex-modules-document-management-create-folder-dialog.component-DdN8ilG4.mjs.map} +1 -1
  22. package/fesm2022/{acorex-modules-document-management-details-view.component-3DmulyK_.mjs → acorex-modules-document-management-details-view.component-DkeoYFvx.mjs} +2 -2
  23. package/fesm2022/{acorex-modules-document-management-details-view.component-3DmulyK_.mjs.map → acorex-modules-document-management-details-view.component-DkeoYFvx.mjs.map} +1 -1
  24. package/fesm2022/{acorex-modules-document-management-document-signature-popup.component-DmR6gFdD.mjs → acorex-modules-document-management-document-signature-popup.component-DuPMRUTY.mjs} +2 -2
  25. package/fesm2022/{acorex-modules-document-management-document-signature-popup.component-DmR6gFdD.mjs.map → acorex-modules-document-management-document-signature-popup.component-DuPMRUTY.mjs.map} +1 -1
  26. package/fesm2022/{acorex-modules-document-management-drive-choose.component-BNyPOrzl.mjs → acorex-modules-document-management-drive-choose.component-CKMMZHrc.mjs} +2 -2
  27. package/fesm2022/{acorex-modules-document-management-drive-choose.component-BNyPOrzl.mjs.map → acorex-modules-document-management-drive-choose.component-CKMMZHrc.mjs.map} +1 -1
  28. package/fesm2022/{acorex-modules-document-management-drive.component-D5X_bI5D.mjs → acorex-modules-document-management-drive.component-Dh2hcCpJ.mjs} +2 -2
  29. package/fesm2022/{acorex-modules-document-management-drive.component-D5X_bI5D.mjs.map → acorex-modules-document-management-drive.component-Dh2hcCpJ.mjs.map} +1 -1
  30. package/fesm2022/{acorex-modules-document-management-large-icons-view.component-AzDtXQqt.mjs → acorex-modules-document-management-large-icons-view.component-DGUbA3xa.mjs} +2 -2
  31. package/fesm2022/{acorex-modules-document-management-large-icons-view.component-AzDtXQqt.mjs.map → acorex-modules-document-management-large-icons-view.component-DGUbA3xa.mjs.map} +1 -1
  32. package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-DCG_v9JT.mjs → acorex-modules-document-management-large-tiles-view.component-Bt6Py82M.mjs} +2 -2
  33. package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-DCG_v9JT.mjs.map → acorex-modules-document-management-large-tiles-view.component-Bt6Py82M.mjs.map} +1 -1
  34. package/fesm2022/{acorex-modules-document-management-list-view.component-Cb2OVElN.mjs → acorex-modules-document-management-list-view.component-DQllDW_Q.mjs} +2 -2
  35. package/fesm2022/{acorex-modules-document-management-list-view.component-Cb2OVElN.mjs.map → acorex-modules-document-management-list-view.component-DQllDW_Q.mjs.map} +1 -1
  36. package/fesm2022/{acorex-modules-document-management-meta-choose-popup.component-DsSo9G8S.mjs → acorex-modules-document-management-meta-choose-popup.component-BSYX7W79.mjs} +4 -4
  37. package/fesm2022/acorex-modules-document-management-meta-choose-popup.component-BSYX7W79.mjs.map +1 -0
  38. package/fesm2022/{acorex-modules-document-management-small-icons-view.component-EN4ttbvx.mjs → acorex-modules-document-management-small-icons-view.component-Umh8Z9qn.mjs} +2 -2
  39. package/fesm2022/{acorex-modules-document-management-small-icons-view.component-EN4ttbvx.mjs.map → acorex-modules-document-management-small-icons-view.component-Umh8Z9qn.mjs.map} +1 -1
  40. package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-C-HjbNwe.mjs → acorex-modules-document-management-small-tiles-view.component-CBgWWCdt.mjs} +2 -2
  41. package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-C-HjbNwe.mjs.map → acorex-modules-document-management-small-tiles-view.component-CBgWWCdt.mjs.map} +1 -1
  42. package/fesm2022/acorex-modules-document-management.mjs +1 -1
  43. package/fesm2022/{acorex-modules-human-capital-management-acorex-modules-human-capital-management-BQ_KNd7M.mjs → acorex-modules-human-capital-management-acorex-modules-human-capital-management-CdAtMLlz.mjs} +93 -213
  44. package/fesm2022/acorex-modules-human-capital-management-acorex-modules-human-capital-management-CdAtMLlz.mjs.map +1 -0
  45. package/fesm2022/{acorex-modules-human-capital-management-employee-skill.entity-3wofaUXu.mjs → acorex-modules-human-capital-management-employee-skill.entity-BllN9Giu.mjs} +2 -2
  46. package/fesm2022/{acorex-modules-human-capital-management-employee-skill.entity-3wofaUXu.mjs.map → acorex-modules-human-capital-management-employee-skill.entity-BllN9Giu.mjs.map} +1 -1
  47. package/fesm2022/{acorex-modules-human-capital-management-employee.entity-1fVathnk.mjs → acorex-modules-human-capital-management-employee.entity-CKofleq7.mjs} +2 -2
  48. package/fesm2022/{acorex-modules-human-capital-management-employee.entity-1fVathnk.mjs.map → acorex-modules-human-capital-management-employee.entity-CKofleq7.mjs.map} +1 -1
  49. package/fesm2022/{acorex-modules-human-capital-management-employment-type.entity-BWrwli0P.mjs → acorex-modules-human-capital-management-employment-type.entity-DfrErkOs.mjs} +2 -2
  50. package/fesm2022/{acorex-modules-human-capital-management-employment-type.entity-BWrwli0P.mjs.map → acorex-modules-human-capital-management-employment-type.entity-DfrErkOs.mjs.map} +1 -1
  51. package/fesm2022/{acorex-modules-human-capital-management-leave-request.entity-4ddc6R_K.mjs → acorex-modules-human-capital-management-leave-request.entity-Bz_4gE7D.mjs} +2 -2
  52. package/fesm2022/{acorex-modules-human-capital-management-leave-request.entity-4ddc6R_K.mjs.map → acorex-modules-human-capital-management-leave-request.entity-Bz_4gE7D.mjs.map} +1 -1
  53. package/fesm2022/{acorex-modules-human-capital-management-leave-type.entity-DYYJVRju.mjs → acorex-modules-human-capital-management-leave-type.entity-CFqmKzkn.mjs} +2 -2
  54. package/fesm2022/{acorex-modules-human-capital-management-leave-type.entity-DYYJVRju.mjs.map → acorex-modules-human-capital-management-leave-type.entity-CFqmKzkn.mjs.map} +1 -1
  55. package/fesm2022/{acorex-modules-human-capital-management-position-assignment.entity-DIqdhqk4.mjs → acorex-modules-human-capital-management-position-assignment.entity-BYqhKD95.mjs} +36 -4
  56. package/fesm2022/acorex-modules-human-capital-management-position-assignment.entity-BYqhKD95.mjs.map +1 -0
  57. package/fesm2022/{acorex-modules-human-capital-management-skill-level.entity-BN67pBaa.mjs → acorex-modules-human-capital-management-skill-level.entity-D4WoE6MR.mjs} +2 -2
  58. package/fesm2022/{acorex-modules-human-capital-management-skill-level.entity-BN67pBaa.mjs.map → acorex-modules-human-capital-management-skill-level.entity-D4WoE6MR.mjs.map} +1 -1
  59. package/fesm2022/{acorex-modules-human-capital-management-skill.entity-D4CglCC7.mjs → acorex-modules-human-capital-management-skill.entity-DqUyAAgW.mjs} +2 -2
  60. package/fesm2022/{acorex-modules-human-capital-management-skill.entity-D4CglCC7.mjs.map → acorex-modules-human-capital-management-skill.entity-DqUyAAgW.mjs.map} +1 -1
  61. package/fesm2022/acorex-modules-human-capital-management.mjs +1 -1
  62. package/fesm2022/acorex-modules-notification-management.mjs +5 -5
  63. package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
  64. package/fesm2022/{acorex-modules-organization-management-org-chart.page-keZ4Gk7y.mjs → acorex-modules-organization-management-org-chart.page-Caboa2La.mjs} +75 -23
  65. package/fesm2022/acorex-modules-organization-management-org-chart.page-Caboa2La.mjs.map +1 -0
  66. package/fesm2022/acorex-modules-organization-management.mjs +5 -2
  67. package/fesm2022/acorex-modules-organization-management.mjs.map +1 -1
  68. package/fesm2022/acorex-modules-project-management-email-jsa.command-DS9XIlQ0.mjs +91 -0
  69. package/fesm2022/acorex-modules-project-management-email-jsa.command-DS9XIlQ0.mjs.map +1 -0
  70. package/fesm2022/acorex-modules-project-management-reassign-jsa.command-DbxxI3e3.mjs +88 -0
  71. package/fesm2022/acorex-modules-project-management-reassign-jsa.command-DbxxI3e3.mjs.map +1 -0
  72. package/fesm2022/acorex-modules-project-management-sign-jsa.command-cRf0DeTE.mjs +75 -0
  73. package/fesm2022/acorex-modules-project-management-sign-jsa.command-cRf0DeTE.mjs.map +1 -0
  74. package/fesm2022/acorex-modules-project-management.mjs +6 -6
  75. package/fesm2022/acorex-modules-report-management.mjs +4 -2
  76. package/fesm2022/acorex-modules-report-management.mjs.map +1 -1
  77. package/fesm2022/acorex-modules-security-management.mjs +347 -3
  78. package/fesm2022/acorex-modules-security-management.mjs.map +1 -1
  79. package/fesm2022/acorex-modules-task-management.mjs +18 -11
  80. package/fesm2022/acorex-modules-task-management.mjs.map +1 -1
  81. package/human-capital-management/index.d.ts +1 -1
  82. package/package.json +1 -1
  83. package/security-management/index.d.ts +42 -3
  84. package/fesm2022/acorex-modules-contact-management-emergency-contact.entity-D75qsDor.mjs.map +0 -1
  85. package/fesm2022/acorex-modules-document-management-meta-choose-popup.component-DsSo9G8S.mjs.map +0 -1
  86. package/fesm2022/acorex-modules-document-management-rename-node-dialog.component-B7gcoDDb.mjs +0 -101
  87. package/fesm2022/acorex-modules-document-management-rename-node-dialog.component-B7gcoDDb.mjs.map +0 -1
  88. package/fesm2022/acorex-modules-human-capital-management-acorex-modules-human-capital-management-BQ_KNd7M.mjs.map +0 -1
  89. package/fesm2022/acorex-modules-human-capital-management-position-assignment.entity-DIqdhqk4.mjs.map +0 -1
  90. package/fesm2022/acorex-modules-organization-management-org-chart.page-keZ4Gk7y.mjs.map +0 -1
  91. package/fesm2022/acorex-modules-project-management-email-jsa.command-BuT5Vj4Y.mjs +0 -115
  92. package/fesm2022/acorex-modules-project-management-email-jsa.command-BuT5Vj4Y.mjs.map +0 -1
  93. package/fesm2022/acorex-modules-project-management-reassign-jsa.command-B3OsacOq.mjs +0 -113
  94. package/fesm2022/acorex-modules-project-management-reassign-jsa.command-B3OsacOq.mjs.map +0 -1
  95. package/fesm2022/acorex-modules-project-management-sign-jsa.command-CJWg6Ntg.mjs +0 -77
  96. package/fesm2022/acorex-modules-project-management-sign-jsa.command-CJWg6Ntg.mjs.map +0 -1
@@ -1,113 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { inject, Injectable } from '@angular/core';
3
- import { AXMProjectManagementJsaService } from './acorex-modules-project-management.mjs';
4
- import { AXPDynamicDialogService } from '@acorex/platform/layout/components';
5
- import { AXTranslationService } from '@acorex/core/translation';
6
- import { AXPWidgetsList } from '@acorex/modules/common';
7
-
8
- class AXPReassignJsaCommand {
9
- constructor() {
10
- //#region ---- Services & Dependencies ----
11
- this.jsaService = inject(AXMProjectManagementJsaService);
12
- this.dialogService = inject(AXPDynamicDialogService);
13
- this.translationService = inject(AXTranslationService);
14
- }
15
- //#endregion
16
- //#region ---- Command Execution ----
17
- async execute(input) {
18
- // Get current JSA data to show current assignee
19
- const currentJsa = await this.jsaService.getOne(input.id);
20
- // Show dialog to select new assignee
21
- const dialogResult = await this.showReassignDialog(currentJsa);
22
- if (dialogResult.cancelled) {
23
- return { success: false };
24
- }
25
- // Update JSA with new assigned user
26
- await this.jsaService.updateOne(input.id, {
27
- assignedToUserId: dialogResult.user?.id,
28
- assignedToUser: {
29
- id: dialogResult.user?.id,
30
- displayName: dialogResult.user?.displayName,
31
- },
32
- });
33
- return { success: true };
34
- }
35
- //#endregion
36
- //#region ---- Dialog Logic ----
37
- async showReassignDialog(currentJsa) {
38
- const title = await this.translationService.translateAsync('@project-management:jsa.reassign-dialog.title');
39
- const message = await this.translationService.translateAsync('@project-management:jsa.reassign-dialog.message');
40
- const currentAssigneeLabel = await this.translationService.translateAsync('@project-management:jsa.reassign-dialog.current-assignee-label');
41
- const assigneeLabel = await this.translationService.translateAsync('@project-management:jsa.reassign-dialog.assignee-label');
42
- const config = {
43
- title,
44
- message,
45
- formDefinition: {
46
- groups: [{
47
- name: 'form',
48
- parameters: [
49
- {
50
- path: 'currentAssignee',
51
- title: currentAssigneeLabel,
52
- widget: {
53
- type: AXPWidgetsList.Editors.TextBox,
54
- path: 'currentAssignee',
55
- options: {
56
- disabled: true,
57
- }
58
- }
59
- },
60
- {
61
- path: 'assignedToUserId',
62
- title: assigneeLabel,
63
- widget: {
64
- type: AXPWidgetsList.Editors.LookupBox,
65
- path: 'assignedToUserId',
66
- options: {
67
- entity: 'SecurityManagement.User',
68
- textField: 'displayName',
69
- valueField: 'id',
70
- look: 'select',
71
- columns: ['displayName'],
72
- expose: [
73
- { source: 'id', target: 'user.id' },
74
- { source: 'displayName', target: 'user.displayName' },
75
- ],
76
- validations: [
77
- {
78
- rule: 'required',
79
- options: { message: 'Please select a new assignee' }
80
- }
81
- ]
82
- }
83
- }
84
- },
85
- ]
86
- }]
87
- },
88
- context: {
89
- user: { id: currentJsa?.assignedToUser?.id, displayName: currentJsa?.assignedToUser?.displayName },
90
- currentAssignee: currentJsa?.assignedToUser?.displayName ?? 'Unassigned'
91
- },
92
- actions: {
93
- footer: {
94
- suffix: [
95
- { title: await this.translationService.translateAsync('@general:actions.cancel.title'), icon: 'fa-times', color: 'default', command: { name: 'cancel' } },
96
- { title: await this.translationService.translateAsync('@project-management:jsa.reassign-dialog.submit-text'), icon: 'fa-user-arrow-left', color: 'primary', command: { name: 'reassign-jsa', options: { validate: true } } },
97
- ]
98
- }
99
- },
100
- };
101
- const result = await this.dialogService.showDialog(config);
102
- return { user: result.context['user'], cancelled: result.action === 'cancel' };
103
- }
104
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPReassignJsaCommand, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
105
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPReassignJsaCommand, providedIn: 'root' }); }
106
- }
107
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPReassignJsaCommand, decorators: [{
108
- type: Injectable,
109
- args: [{ providedIn: 'root' }]
110
- }] });
111
-
112
- export { AXPReassignJsaCommand };
113
- //# sourceMappingURL=acorex-modules-project-management-reassign-jsa.command-B3OsacOq.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-modules-project-management-reassign-jsa.command-B3OsacOq.mjs","sources":["../tmp-esm2022/project-management/lib/features/jsa/commands/reassign-jsa.command.js"],"sourcesContent":["import { inject, Injectable } from '@angular/core';\nimport { AXMProjectManagementJsaService } from '../../../entities/jsa/jsa.service';\nimport { AXPDynamicDialogService } from '@acorex/platform/layout/components';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPWidgetsList } from '@acorex/modules/common';\nimport * as i0 from \"@angular/core\";\nexport class AXPReassignJsaCommand {\n constructor() {\n //#region ---- Services & Dependencies ----\n this.jsaService = inject(AXMProjectManagementJsaService);\n this.dialogService = inject(AXPDynamicDialogService);\n this.translationService = inject(AXTranslationService);\n }\n //#endregion\n //#region ---- Command Execution ----\n async execute(input) {\n // Get current JSA data to show current assignee\n const currentJsa = await this.jsaService.getOne(input.id);\n // Show dialog to select new assignee\n const dialogResult = await this.showReassignDialog(currentJsa);\n if (dialogResult.cancelled) {\n return { success: false };\n }\n // Update JSA with new assigned user\n await this.jsaService.updateOne(input.id, {\n assignedToUserId: dialogResult.user?.id,\n assignedToUser: {\n id: dialogResult.user?.id,\n displayName: dialogResult.user?.displayName,\n },\n });\n return { success: true };\n }\n //#endregion\n //#region ---- Dialog Logic ----\n async showReassignDialog(currentJsa) {\n const title = await this.translationService.translateAsync('@project-management:jsa.reassign-dialog.title');\n const message = await this.translationService.translateAsync('@project-management:jsa.reassign-dialog.message');\n const currentAssigneeLabel = await this.translationService.translateAsync('@project-management:jsa.reassign-dialog.current-assignee-label');\n const assigneeLabel = await this.translationService.translateAsync('@project-management:jsa.reassign-dialog.assignee-label');\n const config = {\n title,\n message,\n formDefinition: {\n groups: [{\n name: 'form',\n parameters: [\n {\n path: 'currentAssignee',\n title: currentAssigneeLabel,\n widget: {\n type: AXPWidgetsList.Editors.TextBox,\n path: 'currentAssignee',\n options: {\n disabled: true,\n }\n }\n },\n {\n path: 'assignedToUserId',\n title: assigneeLabel,\n widget: {\n type: AXPWidgetsList.Editors.LookupBox,\n path: 'assignedToUserId',\n options: {\n entity: 'SecurityManagement.User',\n textField: 'displayName',\n valueField: 'id',\n look: 'select',\n columns: ['displayName'],\n expose: [\n { source: 'id', target: 'user.id' },\n { source: 'displayName', target: 'user.displayName' },\n ],\n validations: [\n {\n rule: 'required',\n options: { message: 'Please select a new assignee' }\n }\n ]\n }\n }\n },\n ]\n }]\n },\n context: {\n user: { id: currentJsa?.assignedToUser?.id, displayName: currentJsa?.assignedToUser?.displayName },\n currentAssignee: currentJsa?.assignedToUser?.displayName ?? 'Unassigned'\n },\n actions: {\n footer: {\n suffix: [\n { title: await this.translationService.translateAsync('@general:actions.cancel.title'), icon: 'fa-times', color: 'default', command: { name: 'cancel' } },\n { title: await this.translationService.translateAsync('@project-management:jsa.reassign-dialog.submit-text'), icon: 'fa-user-arrow-left', color: 'primary', command: { name: 'reassign-jsa', options: { validate: true } } },\n ]\n }\n },\n };\n const result = await this.dialogService.showDialog(config);\n return { user: result.context['user'], cancelled: result.action === 'cancel' };\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXPReassignJsaCommand, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXPReassignJsaCommand, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXPReassignJsaCommand, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhc3NpZ24tanNhLmNvbW1hbmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvcHJvamVjdC1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvanNhL2NvbW1hbmRzL3JlYXNzaWduLWpzYS5jb21tYW5kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSx1QkFBdUIsRUFBMEIsTUFBTSxvQ0FBb0MsQ0FBQztBQUNyRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBV3hELE1BQU0sT0FBTyxxQkFBcUI7SUFEbEM7UUFHSSwrQ0FBK0M7UUFFOUIsZUFBVSxHQUFHLE1BQU0sQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO1FBQ3BELGtCQUFhLEdBQUcsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFDaEQsdUJBQWtCLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7S0F3R3RFO0lBdEdHLFlBQVk7SUFFWix5Q0FBeUM7SUFFekMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFpQztRQUMzQyxnREFBZ0Q7UUFDaEQsTUFBTSxVQUFVLEdBQUcsTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFMUQscUNBQXFDO1FBQ3JDLE1BQU0sWUFBWSxHQUFHLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRS9ELElBQUksWUFBWSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3pCLE9BQU8sRUFBRSxP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Q0FBQywrQkFBK0IsQ0FBQyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLEVBQUU7d0JBQ3pKLEVBQUUsS0FBSyxFQUFFLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxxREFBcUQsQ0FBQyxFQUFFLElBQUksRUFBRSxvQkFBb0IsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsT0FBTyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUU7cUJBQy9OO2lCQUNKO2FBQ0o7U0FDSixDQUFDO1FBRUYsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMzRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQyxNQUFNLEtBQUssUUFBUSxFQUFFLENBQUM7SUFDbkYsQ0FBQzs4R0EzR1EscUJBQXFCO2tIQUFyQixxQkFBcUIsY0FEUixNQUFNOzsyRkFDbkIscUJBQXFCO2tCQURqQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUENvbW1hbmQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL3J1bnRpbWUnO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWE1Qcm9qZWN0TWFuYWdlbWVudEpzYVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9lbnRpdGllcy9qc2EvanNhLnNlcnZpY2UnO1xuaW1wb3J0IHsgQVhQRHluYW1pY0RpYWxvZ1NlcnZpY2UsIEFYUER5bmFtaWNEaWFsb2dDb25maWcgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9jb21wb25lbnRzJztcbmltcG9ydCB7IEFYVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7IEFYUFdpZGdldHNMaXN0IH0gZnJvbSAnQGFjb3JleC9tb2R1bGVzL2NvbW1vbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhQUmVhc3NpZ25Kc2FDb21tYW5kSW5wdXQge1xuICAgIGlkOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhQUmVhc3NpZ25Kc2FDb21tYW5kUmVzdWx0IHtcbiAgICBzdWNjZXNzOiBib29sZWFuO1xufVxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEFYUFJlYXNzaWduSnNhQ29tbWFuZCBpbXBsZW1lbnRzIEFYUENvbW1hbmQ8QVhQUmVhc3NpZ25Kc2FDb21tYW5kSW5wdXQsIEFYUFJlYXNzaWduSnNhQ29tbWFuZFJlc3VsdD4ge1xuXG4gICAgLy8jcmVnaW9uIC0tLS0gICBTZXJ2aWNlcyAmIERlcGVuZGVuY2llcyAgIC0tLS1cblxuICAgIHByaXZhdGUgcmVhZG9ubHkganNhU2VydmljZSA9IGluamVjdChBWE1Qcm9qZWN0TWFuYWdlbWVudEpzYVNlcnZpY2UpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZGlhbG9nU2VydmljZSA9IGluamVjdChBWFBEeW5hbWljRGlhbG9nU2VydmljZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGlvblNlcnZpY2UgPSBpbmplY3QoQVhUcmFuc2xhdGlvblNlcnZpY2UpO1xuXG4gICAgLy8jZW5kcmVnaW9uXG5cbiAgICAvLyNyZWdpb24gLS0tLSAgIENvbW1hbmQgRXhlY3V0aW9uICAgLS0tLVxuXG4gICAgYXN5bmMgZXhlY3V0ZShpbnB1dDogQVhQUmVhc3NpZ25Kc2FDb21tYW5kSW5wdXQpOiBQcm9taXNlPEFYUFJlYXNzaWduSnNhQ29tbWFuZFJlc3VsdD4ge1xuICAgICAgICAvLyBHZXQgY3VycmVudCBKU0EgZGF0YSB0byBzaG93IGN1cnJlbnQgYXNzaWduZWVcbiAgICAgICAgY29uc3QgY3VycmVudEpzYSA9IGF3YWl0IHRoaXMuanNhU2VydmljZS5nZXRPbmUoaW5wdXQuaWQpO1xuXG4gICAgICAgIC8vIFNob3cgZGlhbG9nIHRvIHNlbGVjdCBuZXcgYXNzaWduZWVcbiAgICAgICAgY29uc3QgZGlhbG9nUmVzdWx0ID0gYXdhaXQgdGhpcy5zaG93UmVhc3NpZ25EaWFsb2coY3VycmVudEpzYSk7XG5cbiAgICAgICAgaWYgKGRpYWxvZ1Jlc3VsdC5jYW5jZWxsZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB7IHN1Y2Nlc3M6IGZhbHNlIH07XG4gICAgICAgIH1cblxuICAgICAgICAvLyBVcGRhdGUgSlNBIHdpdGggbmV3IGFzc2lnbmVkIHVzZXJcbiAgICAgICAgYXdhaXQgdGhpcy5qc2FTZXJ2aWNlLnVwZGF0ZU9uZShpbnB1dC5pZCwge1xuICAgICAgICAgICAgYXNzaWduZWRUb1VzZXJJZDogZGlhbG9nUmVzdWx0LnVzZXI/LmlkLFxuICAgICAgICAgICAgYXNzaWduZWRUb1VzZXI6IHtcbiAgICAgICAgICAgICAgICBpZDogZGlhbG9nUmVzdWx0LnVzZXI/LmlkLFxuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiBkaWFsb2dSZXN1bHQudXNlcj8uZGlzcGxheU5hbWUsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9IGFzIGFueSk7XG5cbiAgICAgICAgcmV0dXJuIHsgc3VjY2VzczogdHJ1ZSB9O1xuICAgIH1cblxuICAgIC8vI2VuZHJlZ2lvblxuXG4gICAgLy8jcmVnaW9uIC0tLS0gICBEaWFsb2cgTG9naWMgICAtLS0tXG5cbiAgICBwcml2YXRlIGFzeW5jIHNob3dSZWFzc2lnbkRpYWxvZyhjdXJyZW50SnNhOiBhbnkpOiBQcm9taXNlPHsgdXNlcj86IHsgaWQ6IHN0cmluZzsgZGlzcGxheU5hbWU6IHN0cmluZyB9OyBjYW5jZWxsZWQ6IGJvb2xlYW4gfT4ge1xuICAgICAgICBjb25zdCB0aXRsZSA9IGF3YWl0IHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLnRyYW5zbGF0ZUFzeW5jKCdAcHJvamVjdC1tYW5hZ2VtZW50OmpzYS5yZWFzc2lnbi1kaWFsb2cudGl0bGUnKTtcbiAgICAgICAgY29uc3QgbWVzc2FnZSA9IGF3YWl0IHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLnRyYW5zbGF0ZUFzeW5jKCdAcHJvamVjdC1tYW5hZ2VtZW50OmpzYS5yZWFzc2lnbi1kaWFsb2cubWVzc2FnZScpO1xuICAgICAgICBjb25zdCBjdXJyZW50QXNzaWduZWVMYWJlbCA9IGF3YWl0IHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLnRyYW5zbGF0ZUFzeW5jKCdAcHJvamVjdC1tYW5hZ2VtZW50OmpzYS5yZWFzc2lnbi1kaWFsb2cuY3VycmVudC1hc3NpZ25lZS1sYWJlbCcpO1xuICAgICAgICBjb25zdCBhc3NpZ25lZUxhYmVsID0gYXdhaXQgdGhpcy50cmFuc2xhdGlvblNlcnZpY2UudHJhbnNsYXRlQXN5bmMoJ0Bwcm9qZWN0LW1hbmFnZW1lbnQ6anNhLnJlYXNzaWduLWRpYWxvZy5hc3NpZ25lZS1sYWJlbCcpO1xuXG4gICAgICAgIGNvbnN0IGNvbmZpZzogQVhQRHluYW1pY0RpYWxvZ0NvbmZpZyA9IHtcbiAgICAgICAgICAgIHRpdGxlLFxuICAgICAgICAgICAgbWVzc2FnZSxcbiAgICAgICAgICAgIGZvcm1EZWZpbml0aW9uOiB7XG4gICAgICAgICAgICAgICAgZ3JvdXBzOiBbe1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnZm9ybScsXG4gICAgICAgICAgICAgICAgICAgIHBhcmFtZXRlcnM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoOiAnY3VycmVudEFzc2lnbmVlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogY3VycmVudEFzc2lnbmVlTGFiZWwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkZ2V0OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuVGV4dEJveCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aDogJ2N1cnJlbnRBc3NpZ25lZScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoOiAnYXNzaWduZWRUb1VzZXJJZCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IGFzc2lnbmVlTGFiZWwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkZ2V0OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuTG9va3VwQm94LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoOiAnYXNzaWduZWRUb1VzZXJJZCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudGl0eTogJ1NlY3VyaXR5TWFuYWdlbWVudC5Vc2VyJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHRGaWVsZDogJ2Rpc3BsYXlOYW1lJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlRmllbGQ6ICdpZCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb29rOiAnc2VsZWN0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbHVtbnM6IFsnZGlzcGxheU5hbWUnXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cG9zZTogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgc291cmNlOiAnaWQnLCB0YXJnZXQ6ICd1c2VyLmlkJyB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgc291cmNlOiAnZGlzcGxheU5hbWUnLCB0YXJnZXQ6ICd1c2VyLmRpc3BsYXlOYW1lJyB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiB7IG1lc3NhZ2U6ICdQbGVhc2Ugc2VsZWN0IGEgbmV3IGFzc2lnbmVlJyB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgIH1dXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgY29udGV4dDoge1xuICAgICAgICAgICAgICAgIHVzZXI6IHsgaWQ6IGN1cnJlbnRKc2E/LmFzc2lnbmVkVG9Vc2VyPy5pZCwgZGlzcGxheU5hbWU6IGN1cnJlbnRKc2E/LmFzc2lnbmVkVG9Vc2VyPy5kaXNwbGF5TmFtZSB9LFxuICAgICAgICAgICAgICAgIGN1cnJlbnRBc3NpZ25lZTogY3VycmVudEpzYT8uYXNzaWduZWRUb1VzZXI/LmRpc3BsYXlOYW1lID8/ICdVbmFzc2lnbmVkJ1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGFjdGlvbnM6IHtcbiAgICAgICAgICAgICAgICBmb290ZXI6IHtcbiAgICAgICAgICAgICAgICAgICAgc3VmZml4OiBbXG4gICAgICAgICAgICAgICAgICAgICAgICB7IHRpdGxlOiBhd2FpdCB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS50cmFuc2xhdGVBc3luYygnQGdlbmVyYWw6YWN0aW9ucy5jYW5jZWwudGl0bGUnKSwgaWNvbjogJ2ZhLXRpbWVzJywgY29sb3I6ICdkZWZhdWx0JywgY29tbWFuZDogeyBuYW1lOiAnY2FuY2VsJyB9IH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB7IHRpdGxlOiBhd2FpdCB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS50cmFuc2xhdGVBc3luYygnQHByb2plY3QtbWFuYWdlbWVudDpqc2EucmVhc3NpZ24tZGlhbG9nLnN1Ym1pdC10ZXh0JyksIGljb246ICdmYS11c2VyLWFycm93LWxlZnQnLCBjb2xvcjogJ3ByaW1hcnknLCBjb21tYW5kOiB7IG5hbWU6ICdyZWFzc2lnbi1qc2EnLCBvcHRpb25zOiB7IHZhbGlkYXRlOiB0cnVlIH0gfSB9LFxuICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgfTtcblxuICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLmRpYWxvZ1NlcnZpY2Uuc2hvd0RpYWxvZyhjb25maWcpO1xuICAgICAgICByZXR1cm4geyB1c2VyOiByZXN1bHQuY29udGV4dFsndXNlciddLCBjYW5jZWxsZWQ6IHJlc3VsdC5hY3Rpb24gPT09ICdjYW5jZWwnIH07XG4gICAgfVxuXG4gICAgLy8jZW5kcmVnaW9uXG59XG4iXX0="],"names":[],"mappings":"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"}
@@ -1,77 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { inject, Injectable } from '@angular/core';
3
- import { AXMProjectManagementJsaService } from './acorex-modules-project-management.mjs';
4
- import { AXPDynamicDialogService } from '@acorex/platform/layout/components';
5
- import { AXTranslationService } from '@acorex/core/translation';
6
- import { AXPWidgetsList } from '@acorex/modules/common';
7
-
8
- class AXPSignJsaCommand {
9
- constructor() {
10
- //#region ---- Services & Dependencies ----
11
- this.jsaService = inject(AXMProjectManagementJsaService);
12
- this.dialogService = inject(AXPDynamicDialogService);
13
- this.translationService = inject(AXTranslationService);
14
- }
15
- //#endregion
16
- //#region ---- Command Execution ----
17
- async execute(input) {
18
- // Show dialog to collect signature data
19
- const dialogResult = await this.showSignDialog();
20
- if (dialogResult.cancelled) {
21
- return { success: false };
22
- }
23
- // Update JSA with signature data
24
- await this.jsaService.updateOne(input.id, {
25
- status: 'Signed',
26
- // Add signature fields when they exist in the entity
27
- // signatureNote: dialogResult.note,
28
- // signature: dialogResult.signature,
29
- // signedAt: new Date().toISOString(),
30
- });
31
- return { success: true };
32
- }
33
- //#endregion
34
- //#region ---- Dialog Logic ----
35
- async showSignDialog() {
36
- const title = await this.translationService.translateAsync('@project-management:jsa.sign-dialog.title');
37
- const message = await this.translationService.translateAsync('@project-management:jsa.sign-dialog.message');
38
- const noteLabel = await this.translationService.translateAsync('@project-management:jsa.sign-dialog.note-label');
39
- const notePlaceholder = await this.translationService.translateAsync('@project-management:jsa.sign-dialog.note-placeholder');
40
- const signatureLabel = await this.translationService.translateAsync('@project-management:jsa.sign-dialog.signature-label');
41
- const config = {
42
- title,
43
- message,
44
- formDefinition: {
45
- groups: [
46
- {
47
- name: 'form',
48
- parameters: [
49
- { path: 'note', title: noteLabel, widget: { type: AXPWidgetsList.Editors.LargeTextBox, path: 'note', options: { placeholder: notePlaceholder, maxLength: 1000 } } },
50
- { path: 'signature', title: signatureLabel, widget: { type: AXPWidgetsList.Editors.SignatureBox, path: 'signature', options: { validations: [{ rule: 'required', options: { message: 'Please sign the JSA' } }] } } },
51
- ],
52
- },
53
- ],
54
- },
55
- context: { note: '', signature: '' },
56
- actions: {
57
- footer: {
58
- suffix: [
59
- { title: await this.translationService.translateAsync('@general:actions.cancel.title'), icon: 'fa-times', color: 'default', command: { name: 'cancel' } },
60
- { title: await this.translationService.translateAsync('@project-management:jsa.sign-dialog.submit-text'), icon: 'fa-signature', color: 'primary', command: { name: 'sign-jsa', options: { validate: true } } },
61
- ]
62
- }
63
- },
64
- };
65
- const result = await this.dialogService.showDialog(config);
66
- return { note: result.context['note'], signature: result.context['signature'], cancelled: result.action === 'cancel' };
67
- }
68
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPSignJsaCommand, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
69
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPSignJsaCommand, providedIn: 'root' }); }
70
- }
71
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPSignJsaCommand, decorators: [{
72
- type: Injectable,
73
- args: [{ providedIn: 'root' }]
74
- }] });
75
-
76
- export { AXPSignJsaCommand };
77
- //# sourceMappingURL=acorex-modules-project-management-sign-jsa.command-CJWg6Ntg.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-modules-project-management-sign-jsa.command-CJWg6Ntg.mjs","sources":["../tmp-esm2022/project-management/lib/features/jsa/commands/sign-jsa.command.js"],"sourcesContent":["import { inject, Injectable } from '@angular/core';\nimport { AXMProjectManagementJsaService } from '../../../entities/jsa/jsa.service';\nimport { AXPDynamicDialogService } from '@acorex/platform/layout/components';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPWidgetsList } from '@acorex/modules/common';\nimport * as i0 from \"@angular/core\";\nexport class AXPSignJsaCommand {\n constructor() {\n //#region ---- Services & Dependencies ----\n this.jsaService = inject(AXMProjectManagementJsaService);\n this.dialogService = inject(AXPDynamicDialogService);\n this.translationService = inject(AXTranslationService);\n }\n //#endregion\n //#region ---- Command Execution ----\n async execute(input) {\n // Show dialog to collect signature data\n const dialogResult = await this.showSignDialog();\n if (dialogResult.cancelled) {\n return { success: false };\n }\n // Update JSA with signature data\n await this.jsaService.updateOne(input.id, {\n status: 'Signed',\n // Add signature fields when they exist in the entity\n // signatureNote: dialogResult.note,\n // signature: dialogResult.signature,\n // signedAt: new Date().toISOString(),\n });\n return { success: true };\n }\n //#endregion\n //#region ---- Dialog Logic ----\n async showSignDialog() {\n const title = await this.translationService.translateAsync('@project-management:jsa.sign-dialog.title');\n const message = await this.translationService.translateAsync('@project-management:jsa.sign-dialog.message');\n const noteLabel = await this.translationService.translateAsync('@project-management:jsa.sign-dialog.note-label');\n const notePlaceholder = await this.translationService.translateAsync('@project-management:jsa.sign-dialog.note-placeholder');\n const signatureLabel = await this.translationService.translateAsync('@project-management:jsa.sign-dialog.signature-label');\n const config = {\n title,\n message,\n formDefinition: {\n groups: [\n {\n name: 'form',\n parameters: [\n { path: 'note', title: noteLabel, widget: { type: AXPWidgetsList.Editors.LargeTextBox, path: 'note', options: { placeholder: notePlaceholder, maxLength: 1000 } } },\n { path: 'signature', title: signatureLabel, widget: { type: AXPWidgetsList.Editors.SignatureBox, path: 'signature', options: { validations: [{ rule: 'required', options: { message: 'Please sign the JSA' } }] } } },\n ],\n },\n ],\n },\n context: { note: '', signature: '' },\n actions: {\n footer: {\n suffix: [\n { title: await this.translationService.translateAsync('@general:actions.cancel.title'), icon: 'fa-times', color: 'default', command: { name: 'cancel' } },\n { title: await this.translationService.translateAsync('@project-management:jsa.sign-dialog.submit-text'), icon: 'fa-signature', color: 'primary', command: { name: 'sign-jsa', options: { validate: true } } },\n ]\n }\n },\n };\n const result = await this.dialogService.showDialog(config);\n return { note: result.context['note'], signature: result.context['signature'], cancelled: result.action === 'cancel' };\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXPSignJsaCommand, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXPSignJsaCommand, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXPSignJsaCommand, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbi1qc2EuY29tbWFuZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9wcm9qZWN0LW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9qc2EvY29tbWFuZHMvc2lnbi1qc2EuY29tbWFuZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNuRixPQUFPLEVBQUUsdUJBQXVCLEVBQTBCLE1BQU0sb0NBQW9DLENBQUM7QUFDckcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQVl4RCxNQUFNLE9BQU8saUJBQWlCO0lBRDlCO1FBR0ksK0NBQStDO1FBRTlCLGVBQVUsR0FBRyxNQUFNLENBQUMsOEJBQThCLENBQUMsQ0FBQztRQUNwRCxrQkFBYSxHQUFHLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBQ2hELHVCQUFrQixHQUFHLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0tBbUV0RTtJQWpFRyxZQUFZO0lBRVoseUNBQXlDO0lBRXpDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBNkI7UUFDdkMsd0NBQXdDO1FBQ3hDLE1BQU0sWUFBWSxHQUFHLE1BQU0sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBRWpELElBQUksWUFBWSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3pCLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUM7UUFDOUIsQ0FBQztRQUVELGlDQUFpQztRQUNqQyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUU7WUFDdEMs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LE1BQU0sQ0FBQyxNQUFNLEtBQUssUUFBUSxFQUFFLENBQUM7SUFDM0gsQ0FBQzs4R0F0RVEsaUJBQWlCO2tIQUFqQixpQkFBaUIsY0FESixNQUFNOzsyRkFDbkIsaUJBQWlCO2tCQUQ3QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUENvbW1hbmQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL3J1bnRpbWUnO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWE1Qcm9qZWN0TWFuYWdlbWVudEpzYVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9lbnRpdGllcy9qc2EvanNhLnNlcnZpY2UnO1xuaW1wb3J0IHsgQVhQRHluYW1pY0RpYWxvZ1NlcnZpY2UsIEFYUER5bmFtaWNEaWFsb2dDb25maWcgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9jb21wb25lbnRzJztcbmltcG9ydCB7IEFYVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7IEFYUFdpZGdldHNMaXN0IH0gZnJvbSAnQGFjb3JleC9tb2R1bGVzL2NvbW1vbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhQU2lnbkpzYUNvbW1hbmRJbnB1dCB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBzaG93RGlhbG9nPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWFBTaWduSnNhQ29tbWFuZFJlc3VsdCB7XG4gICAgc3VjY2VzczogYm9vbGVhbjtcbn1cblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBBWFBTaWduSnNhQ29tbWFuZCBpbXBsZW1lbnRzIEFYUENvbW1hbmQ8QVhQU2lnbkpzYUNvbW1hbmRJbnB1dCwgQVhQU2lnbkpzYUNvbW1hbmRSZXN1bHQ+IHtcblxuICAgIC8vI3JlZ2lvbiAtLS0tICAgU2VydmljZXMgJiBEZXBlbmRlbmNpZXMgICAtLS0tXG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGpzYVNlcnZpY2UgPSBpbmplY3QoQVhNUHJvamVjdE1hbmFnZW1lbnRKc2FTZXJ2aWNlKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRpYWxvZ1NlcnZpY2UgPSBpbmplY3QoQVhQRHluYW1pY0RpYWxvZ1NlcnZpY2UpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRpb25TZXJ2aWNlID0gaW5qZWN0KEFYVHJhbnNsYXRpb25TZXJ2aWNlKTtcblxuICAgIC8vI2VuZHJlZ2lvblxuXG4gICAgLy8jcmVnaW9uIC0tLS0gICBDb21tYW5kIEV4ZWN1dGlvbiAgIC0tLS1cblxuICAgIGFzeW5jIGV4ZWN1dGUoaW5wdXQ6IEFYUFNpZ25Kc2FDb21tYW5kSW5wdXQpOiBQcm9taXNlPEFYUFNpZ25Kc2FDb21tYW5kUmVzdWx0PiB7XG4gICAgICAgIC8vIFNob3cgZGlhbG9nIHRvIGNvbGxlY3Qgc2lnbmF0dXJlIGRhdGFcbiAgICAgICAgY29uc3QgZGlhbG9nUmVzdWx0ID0gYXdhaXQgdGhpcy5zaG93U2lnbkRpYWxvZygpO1xuXG4gICAgICAgIGlmIChkaWFsb2dSZXN1bHQuY2FuY2VsbGVkKSB7XG4gICAgICAgICAgICByZXR1cm4geyBzdWNjZXNzOiBmYWxzZSB9O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gVXBkYXRlIEpTQSB3aXRoIHNpZ25hdHVyZSBkYXRhXG4gICAgICAgIGF3YWl0IHRoaXMuanNhU2VydmljZS51cGRhdGVPbmUoaW5wdXQuaWQsIHtcbiAgICAgICAgICAgIHN0YXR1czogJ1NpZ25lZCcsXG4gICAgICAgICAgICAvLyBBZGQgc2lnbmF0dXJlIGZpZWxkcyB3aGVuIHRoZXkgZXhpc3QgaW4gdGhlIGVudGl0eVxuICAgICAgICAgICAgLy8gc2lnbmF0dXJlTm90ZTogZGlhbG9nUmVzdWx0Lm5vdGUsXG4gICAgICAgICAgICAvLyBzaWduYXR1cmU6IGRpYWxvZ1Jlc3VsdC5zaWduYXR1cmUsXG4gICAgICAgICAgICAvLyBzaWduZWRBdDogbmV3IERhdGUoKS50b0lTT1N0cmluZygpLFxuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4geyBzdWNjZXNzOiB0cnVlIH07XG4gICAgfVxuXG4gICAgLy8jZW5kcmVnaW9uXG5cbiAgICAvLyNyZWdpb24gLS0tLSAgIERpYWxvZyBMb2dpYyAgIC0tLS1cblxuICAgIHByaXZhdGUgYXN5bmMgc2hvd1NpZ25EaWFsb2coKTogUHJvbWlzZTx7IG5vdGU/OiBzdHJpbmc7IHNpZ25hdHVyZT86IHN0cmluZzsgY2FuY2VsbGVkOiBib29sZWFuIH0+IHtcbiAgICAgICAgY29uc3QgdGl0bGUgPSBhd2FpdCB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS50cmFuc2xhdGVBc3luYygnQHByb2plY3QtbWFuYWdlbWVudDpqc2Euc2lnbi1kaWFsb2cudGl0bGUnKTtcbiAgICAgICAgY29uc3QgbWVzc2FnZSA9IGF3YWl0IHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLnRyYW5zbGF0ZUFzeW5jKCdAcHJvamVjdC1tYW5hZ2VtZW50OmpzYS5zaWduLWRpYWxvZy5tZXNzYWdlJyk7XG4gICAgICAgIGNvbnN0IG5vdGVMYWJlbCA9IGF3YWl0IHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLnRyYW5zbGF0ZUFzeW5jKCdAcHJvamVjdC1tYW5hZ2VtZW50OmpzYS5zaWduLWRpYWxvZy5ub3RlLWxhYmVsJyk7XG4gICAgICAgIGNvbnN0IG5vdGVQbGFjZWhvbGRlciA9IGF3YWl0IHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLnRyYW5zbGF0ZUFzeW5jKCdAcHJvamVjdC1tYW5hZ2VtZW50OmpzYS5zaWduLWRpYWxvZy5ub3RlLXBsYWNlaG9sZGVyJyk7XG4gICAgICAgIGNvbnN0IHNpZ25hdHVyZUxhYmVsID0gYXdhaXQgdGhpcy50cmFuc2xhdGlvblNlcnZpY2UudHJhbnNsYXRlQXN5bmMoJ0Bwcm9qZWN0LW1hbmFnZW1lbnQ6anNhLnNpZ24tZGlhbG9nLnNpZ25hdHVyZS1sYWJlbCcpO1xuXG4gICAgICAgIGNvbnN0IGNvbmZpZzogQVhQRHluYW1pY0RpYWxvZ0NvbmZpZyA9IHtcbiAgICAgICAgICAgIHRpdGxlLFxuICAgICAgICAgICAgbWVzc2FnZSxcbiAgICAgICAgICAgIGZvcm1EZWZpbml0aW9uOiB7XG4gICAgICAgICAgICAgICAgZ3JvdXBzOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdmb3JtJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtZXRlcnM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IHBhdGg6ICdub3RlJywgdGl0bGU6IG5vdGVMYWJlbCwgd2lkZ2V0OiB7IHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuTGFyZ2VUZXh0Qm94LCBwYXRoOiAnbm90ZScsIG9wdGlvbnM6IHsgcGxhY2Vob2xkZXI6IG5vdGVQbGFjZWhvbGRlciwgbWF4TGVuZ3RoOiAxMDAwIH0gfSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgcGF0aDogJ3NpZ25hdHVyZScsIHRpdGxlOiBzaWduYXR1cmVMYWJlbCwgd2lkZ2V0OiB7IHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuU2lnbmF0dXJlQm94LCBwYXRoOiAnc2lnbmF0dXJlJywgb3B0aW9uczogeyB2YWxpZGF0aW9uczogW3sgcnVsZTogJ3JlcXVpcmVkJywgb3B0aW9uczogeyBtZXNzYWdlOiAnUGxlYXNlIHNpZ24gdGhlIEpTQScgfSB9XSB9IH0gfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBjb250ZXh0OiB7IG5vdGU6ICcnLCBzaWduYXR1cmU6ICcnIH0sXG4gICAgICAgICAgICBhY3Rpb25zOiB7XG4gICAgICAgICAgICAgICAgZm9vdGVyOiB7XG4gICAgICAgICAgICAgICAgICAgIHN1ZmZpeDogW1xuICAgICAgICAgICAgICAgICAgICAgICAgeyB0aXRsZTogYXdhaXQgdGhpcy50cmFuc2xhdGlvblNlcnZpY2UudHJhbnNsYXRlQXN5bmMoJ0BnZW5lcmFsOmFjdGlvbnMuY2FuY2VsLnRpdGxlJyksIGljb246ICdmYS10aW1lcycsIGNvbG9yOiAnZGVmYXVsdCcsIGNvbW1hbmQ6IHsgbmFtZTogJ2NhbmNlbCcgfSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgeyB0aXRsZTogYXdhaXQgdGhpcy50cmFuc2xhdGlvblNlcnZpY2UudHJhbnNsYXRlQXN5bmMoJ0Bwcm9qZWN0LW1hbmFnZW1lbnQ6anNhLnNpZ24tZGlhbG9nLnN1Ym1pdC10ZXh0JyksIGljb246ICdmYS1zaWduYXR1cmUnLCBjb2xvcjogJ3ByaW1hcnknLCBjb21tYW5kOiB7IG5hbWU6ICdzaWduLWpzYScsIG9wdGlvbnM6IHsgdmFsaWRhdGU6IHRydWUgfSB9IH0sXG4gICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LFxuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuZGlhbG9nU2VydmljZS5zaG93RGlhbG9nKGNvbmZpZyk7XG4gICAgICAgIHJldHVybiB7IG5vdGU6IHJlc3VsdC5jb250ZXh0Wydub3RlJ10sIHNpZ25hdHVyZTogcmVzdWx0LmNvbnRleHRbJ3NpZ25hdHVyZSddLCBjYW5jZWxsZWQ6IHJlc3VsdC5hY3Rpb24gPT09ICdjYW5jZWwnIH07XG4gICAgfVxuXG4gICAgLy8jZW5kcmVnaW9uXG59XG4iXX0="],"names":[],"mappings":"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"}