@acorex-platform/module-workplacesafety-management-client 0.0.32 → 0.0.37

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 (126) hide show
  1. package/fesm2022/{acorex-platform-module-workplacesafety-management-client-acorex-platform-module-workplacesafety-management-client-isnVDChu.mjs → acorex-platform-module-workplacesafety-management-client-acorex-platform-module-workplacesafety-management-client-Ds0Fkspp.mjs} +20 -12
  2. package/fesm2022/{acorex-platform-module-workplacesafety-management-client-acorex-platform-module-workplacesafety-management-client-isnVDChu.mjs.map → acorex-platform-module-workplacesafety-management-client-acorex-platform-module-workplacesafety-management-client-Ds0Fkspp.mjs.map} +1 -1
  3. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-control-hierarchy-levels.mjs +509 -0
  4. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-control-hierarchy-levels.mjs.map +1 -0
  5. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-control-measure.mjs +297 -0
  6. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-control-measure.mjs.map +1 -0
  7. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-hazard-ppe-rule.mjs +431 -0
  8. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-hazard-ppe-rule.mjs.map +1 -0
  9. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-hazard-register.mjs +416 -0
  10. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-hazard-register.mjs.map +1 -0
  11. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-hazard-risk.mjs +476 -0
  12. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-hazard-risk.mjs.map +1 -0
  13. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-hazard.mjs +465 -0
  14. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-hazard.mjs.map +1 -0
  15. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-ppe-item.mjs +345 -0
  16. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-ppe-item.mjs.map +1 -0
  17. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan-section.mjs +1492 -0
  18. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan-section.mjs.map +1 -0
  19. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan-type-section.mjs +1347 -0
  20. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan-type-section.mjs.map +1 -0
  21. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan-type.mjs +295 -0
  22. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan-type.mjs.map +1 -0
  23. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan-work-step.mjs +542 -0
  24. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan-work-step.mjs.map +1 -0
  25. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan.mjs +529 -0
  26. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan.mjs.map +1 -0
  27. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-template.mjs +369 -0
  28. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-template.mjs.map +1 -0
  29. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-section-type.mjs +299 -0
  30. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-section-type.mjs.map +1 -0
  31. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-work-step-type.mjs +1392 -0
  32. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-work-step-type.mjs.map +1 -0
  33. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-BI4TLvSE.mjs +170 -0
  34. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-BI4TLvSE.mjs.map +1 -0
  35. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-control-hierarchy-levels.entity-COlCNnyK.mjs +372 -0
  36. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-control-hierarchy-levels.entity-COlCNnyK.mjs.map +1 -0
  37. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-control-measure.entity-BrXGzqZU.mjs +160 -0
  38. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-control-measure.entity-BrXGzqZU.mjs.map +1 -0
  39. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-hazard-ppe-rule.entity-DHJus7OP.mjs +294 -0
  40. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-hazard-ppe-rule.entity-DHJus7OP.mjs.map +1 -0
  41. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-hazard-register.entity-CogjoDox.mjs +279 -0
  42. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-hazard-register.entity-CogjoDox.mjs.map +1 -0
  43. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-hazard-risk.entity-9UWHmIXV.mjs +339 -0
  44. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-hazard-risk.entity-9UWHmIXV.mjs.map +1 -0
  45. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-hazard.entity-CNPbxULL.mjs +328 -0
  46. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-hazard.entity-CNPbxULL.mjs.map +1 -0
  47. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-ppe-item.entity-D5iOBl3P.mjs +208 -0
  48. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-ppe-item.entity-D5iOBl3P.mjs.map +1 -0
  49. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-safety-plan-section-dependency-TdIMIkM7.mjs +1005 -0
  50. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-safety-plan-section-dependency-TdIMIkM7.mjs.map +1 -0
  51. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-safety-plan-section.entity-DJAI-7lB.mjs +356 -0
  52. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-safety-plan-section.entity-DJAI-7lB.mjs.map +1 -0
  53. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-safety-plan-type-section.entity-BGZ1VAW3.mjs +211 -0
  54. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-safety-plan-type-section.entity-BGZ1VAW3.mjs.map +1 -0
  55. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-safety-plan-type.entity-B6NYL4xi.mjs +158 -0
  56. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-safety-plan-type.entity-B6NYL4xi.mjs.map +1 -0
  57. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-safety-plan-work-step.entity-BlCbf5qP.mjs +405 -0
  58. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-safety-plan-work-step.entity-BlCbf5qP.mjs.map +1 -0
  59. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-safety-plan.entity-BSUR9jqs.mjs +392 -0
  60. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-safety-plan.entity-BSUR9jqs.mjs.map +1 -0
  61. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-safety-template.entity-CIHy_hLh.mjs +232 -0
  62. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-safety-template.entity-CIHy_hLh.mjs.map +1 -0
  63. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-section-type.entity-Cs4nIHou.mjs +162 -0
  64. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-section-type.entity-Cs4nIHou.mjs.map +1 -0
  65. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-work-step-type.entity-CJFWDOoh.mjs +256 -0
  66. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog-work-step-type.entity-CJFWDOoh.mjs.map +1 -0
  67. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog.mjs +2 -0
  68. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog.mjs.map +1 -0
  69. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts.mjs +38 -3
  70. package/fesm2022/acorex-platform-module-workplacesafety-management-client-contracts.mjs.map +1 -1
  71. package/fesm2022/{acorex-platform-module-workplacesafety-management-client-control-hierarchy-diagram-widget-view.component-CZFCMX6R.mjs → acorex-platform-module-workplacesafety-management-client-control-hierarchy-diagram-widget-view.component-eDWG-sJ7.mjs} +2 -2
  72. package/fesm2022/{acorex-platform-module-workplacesafety-management-client-control-hierarchy-diagram-widget-view.component-CZFCMX6R.mjs.map → acorex-platform-module-workplacesafety-management-client-control-hierarchy-diagram-widget-view.component-eDWG-sJ7.mjs.map} +1 -1
  73. package/fesm2022/acorex-platform-module-workplacesafety-management-client-control-hierarchy-diagram.component-CfxHwZtH.mjs +117 -0
  74. package/fesm2022/acorex-platform-module-workplacesafety-management-client-control-hierarchy-diagram.component-CfxHwZtH.mjs.map +1 -0
  75. package/fesm2022/acorex-platform-module-workplacesafety-management-client-control-hierarchy-diagram.service-tMrUDnCb.mjs.map +1 -1
  76. package/fesm2022/{acorex-platform-module-workplacesafety-management-client-hazard-ppe-rule-status.provider-o4bAwYcq.mjs → acorex-platform-module-workplacesafety-management-client-hazard-ppe-rule-status.provider-6ZWaO5DG.mjs} +3 -3
  77. package/fesm2022/acorex-platform-module-workplacesafety-management-client-hazard-ppe-rule-status.provider-6ZWaO5DG.mjs.map +1 -0
  78. package/fesm2022/acorex-platform-module-workplacesafety-management-client-hazard-risk-status.provider-B6IkRYbW.mjs.map +1 -1
  79. package/fesm2022/{acorex-platform-module-workplacesafety-management-client-index-yxxC7i6A.mjs → acorex-platform-module-workplacesafety-management-client-index-gbDgxqrV.mjs} +316 -375
  80. package/fesm2022/acorex-platform-module-workplacesafety-management-client-index-gbDgxqrV.mjs.map +1 -0
  81. package/fesm2022/acorex-platform-module-workplacesafety-management-client-local-entities.mjs +43 -0
  82. package/fesm2022/acorex-platform-module-workplacesafety-management-client-local-entities.mjs.map +1 -0
  83. package/fesm2022/acorex-platform-module-workplacesafety-management-client-ppe-item-viewer-widget-column.component-D2Mmow12.mjs.map +1 -1
  84. package/fesm2022/{acorex-platform-module-workplacesafety-management-client-ppe-item-viewer-widget-edit.component-CQtVhCgw.mjs → acorex-platform-module-workplacesafety-management-client-ppe-item-viewer-widget-edit.component-BqHXrGn9.mjs} +2 -2
  85. package/fesm2022/{acorex-platform-module-workplacesafety-management-client-ppe-item-viewer-widget-edit.component-CQtVhCgw.mjs.map → acorex-platform-module-workplacesafety-management-client-ppe-item-viewer-widget-edit.component-BqHXrGn9.mjs.map} +1 -1
  86. package/fesm2022/{acorex-platform-module-workplacesafety-management-client-ppe-item-viewer.service-YS8FHiRu.mjs → acorex-platform-module-workplacesafety-management-client-ppe-item-viewer.service-BxcGph1I.mjs} +3 -3
  87. package/fesm2022/{acorex-platform-module-workplacesafety-management-client-ppe-item-viewer.service-YS8FHiRu.mjs.map → acorex-platform-module-workplacesafety-management-client-ppe-item-viewer.service-BxcGph1I.mjs.map} +1 -1
  88. package/fesm2022/acorex-platform-module-workplacesafety-management-client-ppe-item-viewer.util-2Kl3_3sg.mjs.map +1 -1
  89. package/fesm2022/acorex-platform-module-workplacesafety-management-client-preview-control-hierarchy-diagram.command-Dd9xdo_y.mjs.map +1 -1
  90. package/fesm2022/acorex-platform-module-workplacesafety-management-client-preview-safety-plan.command-BU95c4xb.mjs +254 -0
  91. package/fesm2022/acorex-platform-module-workplacesafety-management-client-preview-safety-plan.command-BU95c4xb.mjs.map +1 -0
  92. package/fesm2022/acorex-platform-module-workplacesafety-management-client-publish-safety-plan.command-Ci-zcrmO.mjs.map +1 -1
  93. package/fesm2022/{acorex-platform-module-workplacesafety-management-client-safety-plan-preview-modal.component-C7IojUT9.mjs → acorex-platform-module-workplacesafety-management-client-safety-plan-preview-modal.component-CQ2xB7Va.mjs} +10 -10
  94. package/fesm2022/{acorex-platform-module-workplacesafety-management-client-safety-plan-preview-modal.component-C7IojUT9.mjs.map → acorex-platform-module-workplacesafety-management-client-safety-plan-preview-modal.component-CQ2xB7Va.mjs.map} +1 -1
  95. package/fesm2022/acorex-platform-module-workplacesafety-management-client-safety-plan-preview.service-DJP41MuL.mjs +36 -0
  96. package/fesm2022/acorex-platform-module-workplacesafety-management-client-safety-plan-preview.service-DJP41MuL.mjs.map +1 -0
  97. package/fesm2022/acorex-platform-module-workplacesafety-management-client-safety-plan-section-builder.types-LaN1NIgc.mjs +204 -0
  98. package/fesm2022/acorex-platform-module-workplacesafety-management-client-safety-plan-section-builder.types-LaN1NIgc.mjs.map +1 -0
  99. package/fesm2022/acorex-platform-module-workplacesafety-management-client-safety-plan-status.provider-BpWx3gIf.mjs.map +1 -1
  100. package/fesm2022/{acorex-platform-module-workplacesafety-management-client-save-safety-plan-sections.command-BlPzzCc2.mjs → acorex-platform-module-workplacesafety-management-client-save-safety-plan-sections.command-CLj3y_JD.mjs} +4 -209
  101. package/fesm2022/acorex-platform-module-workplacesafety-management-client-save-safety-plan-sections.command-CLj3y_JD.mjs.map +1 -0
  102. package/fesm2022/acorex-platform-module-workplacesafety-management-client.mjs +1 -1
  103. package/package.json +70 -2
  104. package/types/acorex-platform-module-workplacesafety-management-client-contracts-entities-control-hierarchy-levels.d.ts +5 -0
  105. package/types/acorex-platform-module-workplacesafety-management-client-contracts-entities-control-measure.d.ts +5 -0
  106. package/types/acorex-platform-module-workplacesafety-management-client-contracts-entities-hazard-ppe-rule.d.ts +5 -0
  107. package/types/acorex-platform-module-workplacesafety-management-client-contracts-entities-hazard-register.d.ts +5 -0
  108. package/types/acorex-platform-module-workplacesafety-management-client-contracts-entities-hazard-risk.d.ts +5 -0
  109. package/types/acorex-platform-module-workplacesafety-management-client-contracts-entities-hazard.d.ts +5 -0
  110. package/types/acorex-platform-module-workplacesafety-management-client-contracts-entities-ppe-item.d.ts +5 -0
  111. package/types/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan-section.d.ts +9 -0
  112. package/types/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan-type-section.d.ts +5 -0
  113. package/types/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan-type.d.ts +5 -0
  114. package/types/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan-work-step.d.ts +5 -0
  115. package/types/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan.d.ts +5 -0
  116. package/types/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-template.d.ts +5 -0
  117. package/types/acorex-platform-module-workplacesafety-management-client-contracts-entities-section-type.d.ts +5 -0
  118. package/types/acorex-platform-module-workplacesafety-management-client-contracts-entities-work-step-type.d.ts +5 -0
  119. package/types/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog.d.ts +10 -0
  120. package/types/acorex-platform-module-workplacesafety-management-client-contracts.d.ts +26 -3
  121. package/types/acorex-platform-module-workplacesafety-management-client-local-entities.d.ts +12 -0
  122. package/fesm2022/acorex-platform-module-workplacesafety-management-client-control-hierarchy-diagram.component-D7hofHR0.mjs +0 -118
  123. package/fesm2022/acorex-platform-module-workplacesafety-management-client-control-hierarchy-diagram.component-D7hofHR0.mjs.map +0 -1
  124. package/fesm2022/acorex-platform-module-workplacesafety-management-client-hazard-ppe-rule-status.provider-o4bAwYcq.mjs.map +0 -1
  125. package/fesm2022/acorex-platform-module-workplacesafety-management-client-index-yxxC7i6A.mjs.map +0 -1
  126. package/fesm2022/acorex-platform-module-workplacesafety-management-client-save-safety-plan-sections.command-BlPzzCc2.mjs.map +0 -1
@@ -0,0 +1,204 @@
1
+ import { AXPDataGenerator } from '@acorex-platform/framework-client/core';
2
+ import { resolveEntityRefId, enrichSectionTypeSnapshot, isStepTableSectionType, normalizeStepTableColumns, normalizeStepTableRows, stepTableColumnTitle } from '@acorex-platform/module-workplacesafety-management-client/contracts';
3
+
4
+ function createSafetyPlanSectionBuilderDefaultValue() {
5
+ return { sections: [] };
6
+ }
7
+ function normalizeSafetyPlanSectionBuilderValue(value) {
8
+ if (!value || !Array.isArray(value.sections)) {
9
+ return createSafetyPlanSectionBuilderDefaultValue();
10
+ }
11
+ return {
12
+ sections: value.sections.map((section, index) => normalizeSection(section, index)),
13
+ };
14
+ }
15
+ function safetyPlanSectionsToBuilderValue(rows) {
16
+ const ordered = [...rows].sort((a, b) => (a.sortOrder ?? 0) - (b.sortOrder ?? 0) || String(a.code ?? '').localeCompare(String(b.code ?? '')));
17
+ return {
18
+ sections: ordered.map((row, index) => {
19
+ const legacyItem = row.items?.[0];
20
+ const sectionTypeId = resolveEntityRefId(legacyItem?.sectionTypeId) ??
21
+ resolveEntityRefId(legacyItem?.sectionType) ??
22
+ '';
23
+ const workStepTypeId = resolveEntityRefId(legacyItem?.workStepTypeId) ??
24
+ resolveEntityRefId(legacyItem?.workStepType) ??
25
+ undefined;
26
+ return {
27
+ id: row.id,
28
+ sectionTypeId,
29
+ sectionType: enrichSectionTypeSnapshot(sectionTypeId, legacyItem?.sectionType),
30
+ title: row.title,
31
+ description: row.description ?? '',
32
+ safetyPlanId: row.safetyPlanId,
33
+ code: row.code,
34
+ sourceSafetyPlanTypeSectionId: row.sourceSafetyPlanTypeSectionId,
35
+ sortOrder: row.sortOrder ?? index + 1,
36
+ workStepTypeId,
37
+ workStepType: legacyItem?.workStepType,
38
+ widgetOptions: normalizeWidgetOptions(row.widgetOptions),
39
+ columns: [],
40
+ items: (row.items ?? []).map((item, itemIndex) => ({
41
+ id: `${row.id}__item_${itemIndex + 1}`,
42
+ itemIds: [...(item.itemIds ?? [])],
43
+ items: item.items ? [...item.items] : [],
44
+ })),
45
+ };
46
+ }),
47
+ };
48
+ }
49
+ /** Merges SafetyPlanWorkStep row entities into Step Table sections. */
50
+ function hydrateStepTableSectionsWithWorkSteps(value, workSteps, columnsByWorkStepTypeId) {
51
+ const bySection = new Map();
52
+ for (const step of workSteps) {
53
+ const sectionId = resolveEntityRefId(step.safetyPlanSectionId) ?? '';
54
+ if (!sectionId) {
55
+ continue;
56
+ }
57
+ const list = bySection.get(sectionId) ?? [];
58
+ list.push(step);
59
+ bySection.set(sectionId, list);
60
+ }
61
+ return {
62
+ sections: value.sections.map((section) => {
63
+ if (!isStepTableSectionType(section.sectionTypeId, section.sectionType)) {
64
+ return section;
65
+ }
66
+ const steps = [...(bySection.get(section.id) ?? [])].sort((a, b) => (a.sortOrder ?? 0) - (b.sortOrder ?? 0) || String(a.code ?? '').localeCompare(String(b.code ?? '')));
67
+ const workStepTypeId = section.workStepTypeId ||
68
+ (steps[0] ? resolveEntityRefId(steps[0].workStepTypeId) ?? undefined : undefined);
69
+ const columns = (workStepTypeId && columnsByWorkStepTypeId?.get(workStepTypeId)) ||
70
+ normalizeStepTableColumns(steps[0]?.columns) ||
71
+ section.columns ||
72
+ [];
73
+ return {
74
+ ...section,
75
+ workStepTypeId,
76
+ workStepType: section.workStepType ?? steps[0]?.workStepType,
77
+ columns,
78
+ items: steps.map((step) => toBuilderItemFromWorkStepRow(step, columns)),
79
+ };
80
+ }),
81
+ };
82
+ }
83
+ function builderValueToSafetyPlanSectionPayloads(value, safetyPlanId) {
84
+ return value.sections.map((section, index) => ({
85
+ id: section.id,
86
+ safetyPlanId,
87
+ title: section.title,
88
+ description: section.description?.trim() ? section.description.trim() : undefined,
89
+ sectionTypeId: section.sectionTypeId,
90
+ sectionType: section.sectionType,
91
+ sourceSafetyPlanTypeSectionId: section.sourceSafetyPlanTypeSectionId,
92
+ sortOrder: typeof section.sortOrder === 'number' ? section.sortOrder : index + 1,
93
+ workStepTypeId: section.workStepTypeId,
94
+ workStepType: section.workStepType,
95
+ columns: section.columns,
96
+ widgetOptions: section.widgetOptions,
97
+ items: section.items.map((item) => ({
98
+ ...item,
99
+ itemIds: [...(item.itemIds ?? [])],
100
+ items: item.items ? [...item.items] : [],
101
+ stepTableRow: item.stepTableRow ? normalizeStepTableRowPayload(item.stepTableRow) : undefined,
102
+ })),
103
+ }));
104
+ }
105
+ function toBuilderItemFromWorkStepRow(step, columns) {
106
+ const normalizedColumns = normalizeStepTableColumns(columns.length ? columns : step.columns);
107
+ const cells = normalizeStepTableRows([{ id: step.id, sortOrder: step.sortOrder ?? 1, cells: step.cells ?? [] }], normalizedColumns)[0]?.cells ??
108
+ step.cells ??
109
+ [];
110
+ const title = step.title?.trim() || summarizeStepTableRow(cells, normalizedColumns);
111
+ return {
112
+ id: step.id,
113
+ itemIds: [step.id],
114
+ items: [{ id: step.id, title, code: step.code }],
115
+ stepTableRow: {
116
+ cells,
117
+ code: step.code,
118
+ sortOrder: step.sortOrder,
119
+ title,
120
+ },
121
+ };
122
+ }
123
+ function summarizeStepTableRow(cells, columns) {
124
+ for (const column of columns) {
125
+ const key = column.sectionTypeId;
126
+ const cell = cells.find((entry) => entry.columnKey === key);
127
+ if (!cell) {
128
+ continue;
129
+ }
130
+ const fromRefs = cell.refs?.[0]?.title || cell.refs?.[0]?.code;
131
+ if (fromRefs) {
132
+ return fromRefs;
133
+ }
134
+ if (cell.textValue?.trim()) {
135
+ return cell.textValue.trim();
136
+ }
137
+ }
138
+ return columns[0] ? stepTableColumnTitle(columns[0]) : 'Row';
139
+ }
140
+ function normalizeSection(section, index) {
141
+ const id = typeof section.id === 'string' && section.id ? section.id : AXPDataGenerator.uuid();
142
+ const sectionTypeId = resolveEntityRefId(section.sectionTypeId) ?? '';
143
+ const workStepTypeId = resolveEntityRefId(section.workStepTypeId) ?? undefined;
144
+ return {
145
+ id,
146
+ sectionTypeId,
147
+ sectionType: enrichSectionTypeSnapshot(sectionTypeId, section.sectionType),
148
+ title: typeof section.title === 'string' ? section.title : '',
149
+ description: typeof section.description === 'string' ? section.description : '',
150
+ safetyPlanId: typeof section.safetyPlanId === 'string' ? section.safetyPlanId : undefined,
151
+ code: typeof section.code === 'string' ? section.code : undefined,
152
+ sourceSafetyPlanTypeSectionId: typeof section.sourceSafetyPlanTypeSectionId === 'string'
153
+ ? section.sourceSafetyPlanTypeSectionId
154
+ : undefined,
155
+ sortOrder: typeof section.sortOrder === 'number' ? section.sortOrder : index + 1,
156
+ required: section.required === true,
157
+ workStepTypeId,
158
+ workStepType: section.workStepType,
159
+ columns: normalizeStepTableColumns(section.columns),
160
+ widgetOptions: normalizeWidgetOptions(section.widgetOptions),
161
+ items: Array.isArray(section.items)
162
+ ? section.items.map((item) => normalizeItem(item, id, sectionTypeId, section.sectionType))
163
+ : [],
164
+ };
165
+ }
166
+ function normalizeWidgetOptions(value) {
167
+ if (!value || typeof value !== 'object' || Array.isArray(value)) {
168
+ return undefined;
169
+ }
170
+ return { ...value };
171
+ }
172
+ function normalizeItem(item, sectionId, sectionTypeId, sectionType) {
173
+ const isStepTable = isStepTableSectionType(sectionTypeId, sectionType);
174
+ if (isStepTable && item.stepTableRow) {
175
+ const stepTableRow = normalizeStepTableRowPayload(item.stepTableRow);
176
+ const stepId = typeof item.id === 'string' && item.id && !item.id.includes('__item_') && !item.id.includes('__entity_')
177
+ ? item.id
178
+ : AXPDataGenerator.uuid();
179
+ const title = stepTableRow.title?.trim() || 'Row';
180
+ return {
181
+ id: stepId,
182
+ itemIds: [stepId],
183
+ items: [{ id: stepId, title, code: stepTableRow.code }],
184
+ stepTableRow,
185
+ };
186
+ }
187
+ const id = typeof item.id === 'string' && item.id ? item.id : AXPDataGenerator.uuid();
188
+ return {
189
+ id: id.includes('__item_') || id.includes('__entity_') ? id : `${sectionId}__item_${id}`,
190
+ itemIds: Array.isArray(item.itemIds) ? item.itemIds.filter((x) => typeof x === 'string') : [],
191
+ items: Array.isArray(item.items) ? item.items : [],
192
+ };
193
+ }
194
+ function normalizeStepTableRowPayload(payload) {
195
+ return {
196
+ cells: Array.isArray(payload.cells) ? payload.cells : [],
197
+ code: typeof payload.code === 'string' ? payload.code : undefined,
198
+ sortOrder: typeof payload.sortOrder === 'number' ? payload.sortOrder : undefined,
199
+ title: typeof payload.title === 'string' ? payload.title : undefined,
200
+ };
201
+ }
202
+
203
+ export { safetyPlanSectionsToBuilderValue as a, builderValueToSafetyPlanSectionPayloads as b, hydrateStepTableSectionsWithWorkSteps as h, normalizeSafetyPlanSectionBuilderValue as n, summarizeStepTableRow as s };
204
+ //# sourceMappingURL=acorex-platform-module-workplacesafety-management-client-safety-plan-section-builder.types-LaN1NIgc.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-module-workplacesafety-management-client-safety-plan-section-builder.types-LaN1NIgc.mjs","sources":["../../../../libs/modules/workplacesafety-management/client/src/lib/features/safety-plan-sections-page/safety-plan-section-builder.types.ts"],"sourcesContent":["import { AXPDataGenerator } from '@acorex-platform/framework-client/core';\nimport {\n enrichSectionTypeSnapshot,\n isStepTableSectionType,\n normalizeStepTableColumns,\n normalizeStepTableRows,\n resolveEntityRefId,\n stepTableColumnTitle,\n type AXMSafetyPlanSectionBuilderItemValue,\n type AXMSafetyPlanSectionBuilderSectionValue,\n type AXMSafetyPlanSectionBuilderValue,\n type AXMSafetyPlanStepTableRowBuilderPayload,\n type AXMStepTableCellValue,\n type AXMStepTableColumnDef,\n type AXMWorkplaceSafetyManagementSafetyPlanSectionEntityModel,\n type AXMWorkplaceSafetyManagementSafetyPlanWorkStepEntityModel,\n} from '@acorex-platform/module-workplacesafety-management-client/contracts';\n\nexport function createSafetyPlanSectionBuilderDefaultValue(): AXMSafetyPlanSectionBuilderValue {\n return { sections: [] };\n}\n\nexport function normalizeSafetyPlanSectionBuilderValue(\n value: AXMSafetyPlanSectionBuilderValue | null | undefined,\n): AXMSafetyPlanSectionBuilderValue {\n if (!value || !Array.isArray(value.sections)) {\n return createSafetyPlanSectionBuilderDefaultValue();\n }\n\n return {\n sections: value.sections.map((section, index) => normalizeSection(section, index)),\n };\n}\n\nexport function safetyPlanSectionsToBuilderValue(\n rows: AXMWorkplaceSafetyManagementSafetyPlanSectionEntityModel[],\n): AXMSafetyPlanSectionBuilderValue {\n const ordered = [...rows].sort(\n (a, b) => (a.sortOrder ?? 0) - (b.sortOrder ?? 0) || String(a.code ?? '').localeCompare(String(b.code ?? '')),\n );\n return {\n sections: ordered.map((row, index) => {\n const legacyItem = row.items?.[0];\n const sectionTypeId =\n resolveEntityRefId(legacyItem?.sectionTypeId) ??\n resolveEntityRefId(legacyItem?.sectionType) ??\n '';\n const workStepTypeId =\n resolveEntityRefId(legacyItem?.workStepTypeId) ??\n resolveEntityRefId(legacyItem?.workStepType) ??\n undefined;\n return {\n id: row.id,\n sectionTypeId,\n sectionType: enrichSectionTypeSnapshot(sectionTypeId, legacyItem?.sectionType),\n title: row.title,\n description: row.description ?? '',\n safetyPlanId: row.safetyPlanId,\n code: row.code,\n sourceSafetyPlanTypeSectionId: row.sourceSafetyPlanTypeSectionId,\n sortOrder: row.sortOrder ?? index + 1,\n workStepTypeId,\n workStepType: legacyItem?.workStepType,\n widgetOptions: normalizeWidgetOptions(row.widgetOptions),\n columns: [],\n items: (row.items ?? []).map((item, itemIndex) => ({\n id: `${row.id}__item_${itemIndex + 1}`,\n itemIds: [...(item.itemIds ?? [])],\n items: item.items ? [...item.items] : [],\n })),\n };\n }),\n };\n}\n\n/** Merges SafetyPlanWorkStep row entities into Step Table sections. */\nexport function hydrateStepTableSectionsWithWorkSteps(\n value: AXMSafetyPlanSectionBuilderValue,\n workSteps: AXMWorkplaceSafetyManagementSafetyPlanWorkStepEntityModel[],\n columnsByWorkStepTypeId?: ReadonlyMap<string, AXMStepTableColumnDef[]>,\n): AXMSafetyPlanSectionBuilderValue {\n const bySection = new Map<string, AXMWorkplaceSafetyManagementSafetyPlanWorkStepEntityModel[]>();\n for (const step of workSteps) {\n const sectionId = resolveEntityRefId(step.safetyPlanSectionId) ?? '';\n if (!sectionId) {\n continue;\n }\n const list = bySection.get(sectionId) ?? [];\n list.push(step);\n bySection.set(sectionId, list);\n }\n\n return {\n sections: value.sections.map((section) => {\n if (!isStepTableSectionType(section.sectionTypeId, section.sectionType)) {\n return section;\n }\n const steps = [...(bySection.get(section.id) ?? [])].sort(\n (a, b) => (a.sortOrder ?? 0) - (b.sortOrder ?? 0) || String(a.code ?? '').localeCompare(String(b.code ?? '')),\n );\n const workStepTypeId =\n section.workStepTypeId ||\n (steps[0] ? resolveEntityRefId(steps[0].workStepTypeId) ?? undefined : undefined);\n const columns =\n (workStepTypeId && columnsByWorkStepTypeId?.get(workStepTypeId)) ||\n normalizeStepTableColumns(steps[0]?.columns) ||\n section.columns ||\n [];\n return {\n ...section,\n workStepTypeId,\n workStepType: section.workStepType ?? steps[0]?.workStepType,\n columns,\n items: steps.map((step) => toBuilderItemFromWorkStepRow(step, columns)),\n };\n }),\n };\n}\n\nexport function builderValueToSafetyPlanSectionPayloads(\n value: AXMSafetyPlanSectionBuilderValue,\n safetyPlanId: string,\n): Array<{\n id: string;\n safetyPlanId: string;\n title: string;\n description?: string;\n sectionTypeId: string;\n sectionType?: AXMSafetyPlanSectionBuilderSectionValue['sectionType'];\n sourceSafetyPlanTypeSectionId?: string;\n sortOrder: number;\n workStepTypeId?: string;\n workStepType?: AXMSafetyPlanSectionBuilderSectionValue['workStepType'];\n columns?: AXMStepTableColumnDef[];\n widgetOptions?: AXMSafetyPlanSectionBuilderSectionValue['widgetOptions'];\n items: AXMSafetyPlanSectionBuilderItemValue[];\n}> {\n return value.sections.map((section, index) => ({\n id: section.id,\n safetyPlanId,\n title: section.title,\n description: section.description?.trim() ? section.description.trim() : undefined,\n sectionTypeId: section.sectionTypeId,\n sectionType: section.sectionType,\n sourceSafetyPlanTypeSectionId: section.sourceSafetyPlanTypeSectionId,\n sortOrder: typeof section.sortOrder === 'number' ? section.sortOrder : index + 1,\n workStepTypeId: section.workStepTypeId,\n workStepType: section.workStepType,\n columns: section.columns,\n widgetOptions: section.widgetOptions,\n items: section.items.map((item) => ({\n ...item,\n itemIds: [...(item.itemIds ?? [])],\n items: item.items ? [...item.items] : [],\n stepTableRow: item.stepTableRow ? normalizeStepTableRowPayload(item.stepTableRow) : undefined,\n })),\n }));\n}\n\nfunction toBuilderItemFromWorkStepRow(\n step: AXMWorkplaceSafetyManagementSafetyPlanWorkStepEntityModel,\n columns: AXMStepTableColumnDef[],\n): AXMSafetyPlanSectionBuilderItemValue {\n const normalizedColumns = normalizeStepTableColumns(columns.length ? columns : step.columns);\n const cells =\n normalizeStepTableRows(\n [{ id: step.id, sortOrder: step.sortOrder ?? 1, cells: step.cells ?? [] }],\n normalizedColumns,\n )[0]?.cells ??\n step.cells ??\n [];\n const title = step.title?.trim() || summarizeStepTableRow(cells, normalizedColumns);\n return {\n id: step.id,\n itemIds: [step.id],\n items: [{ id: step.id, title, code: step.code }],\n stepTableRow: {\n cells,\n code: step.code,\n sortOrder: step.sortOrder,\n title,\n },\n };\n}\n\nexport function summarizeStepTableRow(\n cells: AXMStepTableCellValue[],\n columns: AXMStepTableColumnDef[],\n): string {\n for (const column of columns) {\n const key = column.sectionTypeId;\n const cell = cells.find((entry) => entry.columnKey === key);\n if (!cell) {\n continue;\n }\n const fromRefs = cell.refs?.[0]?.title || cell.refs?.[0]?.code;\n if (fromRefs) {\n return fromRefs;\n }\n if (cell.textValue?.trim()) {\n return cell.textValue.trim();\n }\n }\n return columns[0] ? stepTableColumnTitle(columns[0]) : 'Row';\n}\n\nfunction normalizeSection(\n section: Partial<AXMSafetyPlanSectionBuilderSectionValue>,\n index: number,\n): AXMSafetyPlanSectionBuilderSectionValue {\n const id = typeof section.id === 'string' && section.id ? section.id : AXPDataGenerator.uuid();\n const sectionTypeId = resolveEntityRefId(section.sectionTypeId) ?? '';\n const workStepTypeId = resolveEntityRefId(section.workStepTypeId) ?? undefined;\n return {\n id,\n sectionTypeId,\n sectionType: enrichSectionTypeSnapshot(sectionTypeId, section.sectionType),\n title: typeof section.title === 'string' ? section.title : '',\n description: typeof section.description === 'string' ? section.description : '',\n safetyPlanId: typeof section.safetyPlanId === 'string' ? section.safetyPlanId : undefined,\n code: typeof section.code === 'string' ? section.code : undefined,\n sourceSafetyPlanTypeSectionId:\n typeof section.sourceSafetyPlanTypeSectionId === 'string'\n ? section.sourceSafetyPlanTypeSectionId\n : undefined,\n sortOrder: typeof section.sortOrder === 'number' ? section.sortOrder : index + 1,\n required: section.required === true,\n workStepTypeId,\n workStepType: section.workStepType,\n columns: normalizeStepTableColumns(section.columns),\n widgetOptions: normalizeWidgetOptions(section.widgetOptions),\n items: Array.isArray(section.items)\n ? section.items.map((item) => normalizeItem(item, id, sectionTypeId, section.sectionType))\n : [],\n };\n}\n\nfunction normalizeWidgetOptions(\n value: AXMSafetyPlanSectionBuilderSectionValue['widgetOptions'] | unknown,\n): AXMSafetyPlanSectionBuilderSectionValue['widgetOptions'] | undefined {\n if (!value || typeof value !== 'object' || Array.isArray(value)) {\n return undefined;\n }\n return { ...(value as NonNullable<AXMSafetyPlanSectionBuilderSectionValue['widgetOptions']>) };\n}\n\nfunction normalizeItem(\n item: Partial<AXMSafetyPlanSectionBuilderItemValue>,\n sectionId: string,\n sectionTypeId: string,\n sectionType: AXMSafetyPlanSectionBuilderSectionValue['sectionType'],\n): AXMSafetyPlanSectionBuilderItemValue {\n const isStepTable = isStepTableSectionType(sectionTypeId, sectionType);\n if (isStepTable && item.stepTableRow) {\n const stepTableRow = normalizeStepTableRowPayload(item.stepTableRow);\n const stepId =\n typeof item.id === 'string' && item.id && !item.id.includes('__item_') && !item.id.includes('__entity_')\n ? item.id\n : AXPDataGenerator.uuid();\n const title = stepTableRow.title?.trim() || 'Row';\n return {\n id: stepId,\n itemIds: [stepId],\n items: [{ id: stepId, title, code: stepTableRow.code }],\n stepTableRow,\n };\n }\n\n const id = typeof item.id === 'string' && item.id ? item.id : AXPDataGenerator.uuid();\n return {\n id: id.includes('__item_') || id.includes('__entity_') ? id : `${sectionId}__item_${id}`,\n itemIds: Array.isArray(item.itemIds) ? item.itemIds.filter((x): x is string => typeof x === 'string') : [],\n items: Array.isArray(item.items) ? item.items : [],\n };\n}\n\nfunction normalizeStepTableRowPayload(\n payload: AXMSafetyPlanStepTableRowBuilderPayload,\n): AXMSafetyPlanStepTableRowBuilderPayload {\n return {\n cells: Array.isArray(payload.cells) ? payload.cells : [],\n code: typeof payload.code === 'string' ? payload.code : undefined,\n sortOrder: typeof payload.sortOrder === 'number' ? payload.sortOrder : undefined,\n title: typeof payload.title === 'string' ? payload.title : undefined,\n };\n}\n\nexport type {\n AXMSafetyPlanSectionBuilderItemValue,\n AXMSafetyPlanSectionBuilderSectionValue,\n AXMSafetyPlanSectionBuilderValue,\n AXMSafetyPlanStepTableRowBuilderPayload,\n};\n"],"names":[],"mappings":";;;SAkBgB,0CAA0C,GAAA;AACxD,IAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;AACzB;AAEM,SAAU,sCAAsC,CACpD,KAA0D,EAAA;AAE1D,IAAA,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;QAC5C,OAAO,0CAA0C,EAAE;IACrD;IAEA,OAAO;QACL,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,KAAK,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;KACnF;AACH;AAEM,SAAU,gCAAgC,CAC9C,IAAgE,EAAA;IAEhE,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,CAC5B,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAC9G;IACD,OAAO;QACL,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,KAAI;YACnC,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC;AACjC,YAAA,MAAM,aAAa,GACjB,kBAAkB,CAAC,UAAU,EAAE,aAAa,CAAC;AAC7C,gBAAA,kBAAkB,CAAC,UAAU,EAAE,WAAW,CAAC;AAC3C,gBAAA,EAAE;AACJ,YAAA,MAAM,cAAc,GAClB,kBAAkB,CAAC,UAAU,EAAE,cAAc,CAAC;AAC9C,gBAAA,kBAAkB,CAAC,UAAU,EAAE,YAAY,CAAC;AAC5C,gBAAA,SAAS;YACX,OAAO;gBACL,EAAE,EAAE,GAAG,CAAC,EAAE;gBACV,aAAa;gBACb,WAAW,EAAE,yBAAyB,CAAC,aAAa,EAAE,UAAU,EAAE,WAAW,CAAC;gBAC9E,KAAK,EAAE,GAAG,CAAC,KAAK;AAChB,gBAAA,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,EAAE;gBAClC,YAAY,EAAE,GAAG,CAAC,YAAY;gBAC9B,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,6BAA6B,EAAE,GAAG,CAAC,6BAA6B;AAChE,gBAAA,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,KAAK,GAAG,CAAC;gBACrC,cAAc;gBACd,YAAY,EAAE,UAAU,EAAE,YAAY;AACtC,gBAAA,aAAa,EAAE,sBAAsB,CAAC,GAAG,CAAC,aAAa,CAAC;AACxD,gBAAA,OAAO,EAAE,EAAE;AACX,gBAAA,KAAK,EAAE,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,SAAS,MAAM;oBACjD,EAAE,EAAE,GAAG,GAAG,CAAC,EAAE,CAAA,OAAA,EAAU,SAAS,GAAG,CAAC,CAAA,CAAE;oBACtC,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;AAClC,oBAAA,KAAK,EAAE,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;AACzC,iBAAA,CAAC,CAAC;aACJ;AACH,QAAA,CAAC,CAAC;KACH;AACH;AAEA;SACgB,qCAAqC,CACnD,KAAuC,EACvC,SAAsE,EACtE,uBAAsE,EAAA;AAEtE,IAAA,MAAM,SAAS,GAAG,IAAI,GAAG,EAAuE;AAChG,IAAA,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE;QAC5B,MAAM,SAAS,GAAG,kBAAkB,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE;QACpE,IAAI,CAAC,SAAS,EAAE;YACd;QACF;QACA,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE;AAC3C,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;AACf,QAAA,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC;IAChC;IAEA,OAAO;QACL,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,KAAI;AACvC,YAAA,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE;AACvE,gBAAA,OAAO,OAAO;YAChB;AACA,YAAA,MAAM,KAAK,GAAG,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CACvD,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAC9G;AACD,YAAA,MAAM,cAAc,GAClB,OAAO,CAAC,cAAc;iBACrB,KAAK,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,SAAS,GAAG,SAAS,CAAC;YACnF,MAAM,OAAO,GACX,CAAC,cAAc,IAAI,uBAAuB,EAAE,GAAG,CAAC,cAAc,CAAC;AAC/D,gBAAA,yBAAyB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;AAC5C,gBAAA,OAAO,CAAC,OAAO;AACf,gBAAA,EAAE;YACJ,OAAO;AACL,gBAAA,GAAG,OAAO;gBACV,cAAc;gBACd,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,YAAY;gBAC5D,OAAO;AACP,gBAAA,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,4BAA4B,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;aACxE;AACH,QAAA,CAAC,CAAC;KACH;AACH;AAEM,SAAU,uCAAuC,CACrD,KAAuC,EACvC,YAAoB,EAAA;AAgBpB,IAAA,OAAO,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,MAAM;QAC7C,EAAE,EAAE,OAAO,CAAC,EAAE;QACd,YAAY;QACZ,KAAK,EAAE,OAAO,CAAC,KAAK;AACpB,QAAA,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,SAAS;QACjF,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,6BAA6B,EAAE,OAAO,CAAC,6BAA6B;AACpE,QAAA,SAAS,EAAE,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,GAAG,OAAO,CAAC,SAAS,GAAG,KAAK,GAAG,CAAC;QAChF,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,aAAa,EAAE,OAAO,CAAC,aAAa;AACpC,QAAA,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,MAAM;AAClC,YAAA,GAAG,IAAI;YACP,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;AAClC,YAAA,KAAK,EAAE,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;AACxC,YAAA,YAAY,EAAE,IAAI,CAAC,YAAY,GAAG,4BAA4B,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,SAAS;AAC9F,SAAA,CAAC,CAAC;AACJ,KAAA,CAAC,CAAC;AACL;AAEA,SAAS,4BAA4B,CACnC,IAA+D,EAC/D,OAAgC,EAAA;AAEhC,IAAA,MAAM,iBAAiB,GAAG,yBAAyB,CAAC,OAAO,CAAC,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;AAC5F,IAAA,MAAM,KAAK,GACT,sBAAsB,CACpB,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC,EAC1E,iBAAiB,CAClB,CAAC,CAAC,CAAC,EAAE,KAAK;AACX,QAAA,IAAI,CAAC,KAAK;AACV,QAAA,EAAE;AACJ,IAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,qBAAqB,CAAC,KAAK,EAAE,iBAAiB,CAAC;IACnF,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,EAAE;AACX,QAAA,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;AAClB,QAAA,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;AAChD,QAAA,YAAY,EAAE;YACZ,KAAK;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,KAAK;AACN,SAAA;KACF;AACH;AAEM,SAAU,qBAAqB,CACnC,KAA8B,EAC9B,OAAgC,EAAA;AAEhC,IAAA,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;AAC5B,QAAA,MAAM,GAAG,GAAG,MAAM,CAAC,aAAa;AAChC,QAAA,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,SAAS,KAAK,GAAG,CAAC;QAC3D,IAAI,CAAC,IAAI,EAAE;YACT;QACF;QACA,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,EAAE,KAAK,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,EAAE,IAAI;QAC9D,IAAI,QAAQ,EAAE;AACZ,YAAA,OAAO,QAAQ;QACjB;AACA,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE;AAC1B,YAAA,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;QAC9B;IACF;AACA,IAAA,OAAO,OAAO,CAAC,CAAC,CAAC,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK;AAC9D;AAEA,SAAS,gBAAgB,CACvB,OAAyD,EACzD,KAAa,EAAA;IAEb,MAAM,EAAE,GAAG,OAAO,OAAO,CAAC,EAAE,KAAK,QAAQ,IAAI,OAAO,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,GAAG,gBAAgB,CAAC,IAAI,EAAE;IAC9F,MAAM,aAAa,GAAG,kBAAkB,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE;IACrE,MAAM,cAAc,GAAG,kBAAkB,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,SAAS;IAC9E,OAAO;QACL,EAAE;QACF,aAAa;QACb,WAAW,EAAE,yBAAyB,CAAC,aAAa,EAAE,OAAO,CAAC,WAAW,CAAC;AAC1E,QAAA,KAAK,EAAE,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,GAAG,OAAO,CAAC,KAAK,GAAG,EAAE;AAC7D,QAAA,WAAW,EAAE,OAAO,OAAO,CAAC,WAAW,KAAK,QAAQ,GAAG,OAAO,CAAC,WAAW,GAAG,EAAE;AAC/E,QAAA,YAAY,EAAE,OAAO,OAAO,CAAC,YAAY,KAAK,QAAQ,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS;AACzF,QAAA,IAAI,EAAE,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,GAAG,OAAO,CAAC,IAAI,GAAG,SAAS;AACjE,QAAA,6BAA6B,EAC3B,OAAO,OAAO,CAAC,6BAA6B,KAAK;cAC7C,OAAO,CAAC;AACV,cAAE,SAAS;AACf,QAAA,SAAS,EAAE,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,GAAG,OAAO,CAAC,SAAS,GAAG,KAAK,GAAG,CAAC;AAChF,QAAA,QAAQ,EAAE,OAAO,CAAC,QAAQ,KAAK,IAAI;QACnC,cAAc;QACd,YAAY,EAAE,OAAO,CAAC,YAAY;AAClC,QAAA,OAAO,EAAE,yBAAyB,CAAC,OAAO,CAAC,OAAO,CAAC;AACnD,QAAA,aAAa,EAAE,sBAAsB,CAAC,OAAO,CAAC,aAAa,CAAC;QAC5D,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK;cAC9B,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,IAAI,EAAE,EAAE,EAAE,aAAa,EAAE,OAAO,CAAC,WAAW,CAAC;AACzF,cAAE,EAAE;KACP;AACH;AAEA,SAAS,sBAAsB,CAC7B,KAAyE,EAAA;AAEzE,IAAA,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AAC/D,QAAA,OAAO,SAAS;IAClB;AACA,IAAA,OAAO,EAAE,GAAI,KAA+E,EAAE;AAChG;AAEA,SAAS,aAAa,CACpB,IAAmD,EACnD,SAAiB,EACjB,aAAqB,EACrB,WAAmE,EAAA;IAEnE,MAAM,WAAW,GAAG,sBAAsB,CAAC,aAAa,EAAE,WAAW,CAAC;AACtE,IAAA,IAAI,WAAW,IAAI,IAAI,CAAC,YAAY,EAAE;QACpC,MAAM,YAAY,GAAG,4BAA4B,CAAC,IAAI,CAAC,YAAY,CAAC;AACpE,QAAA,MAAM,MAAM,GACV,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ,IAAI,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,WAAW;cACnG,IAAI,CAAC;AACP,cAAE,gBAAgB,CAAC,IAAI,EAAE;QAC7B,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,KAAK;QACjD,OAAO;AACL,YAAA,EAAE,EAAE,MAAM;YACV,OAAO,EAAE,CAAC,MAAM,CAAC;AACjB,YAAA,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC;YACvD,YAAY;SACb;IACH;IAEA,MAAM,EAAE,GAAG,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ,IAAI,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,gBAAgB,CAAC,IAAI,EAAE;IACrF,OAAO;QACL,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAA,EAAG,SAAS,CAAA,OAAA,EAAU,EAAE,CAAA,CAAE;AACxF,QAAA,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAkB,OAAO,CAAC,KAAK,QAAQ,CAAC,GAAG,EAAE;AAC1G,QAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,GAAG,EAAE;KACnD;AACH;AAEA,SAAS,4BAA4B,CACnC,OAAgD,EAAA;IAEhD,OAAO;AACL,QAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,GAAG,EAAE;AACxD,QAAA,IAAI,EAAE,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,GAAG,OAAO,CAAC,IAAI,GAAG,SAAS;AACjE,QAAA,SAAS,EAAE,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS;AAChF,QAAA,KAAK,EAAE,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,GAAG,OAAO,CAAC,KAAK,GAAG,SAAS;KACrE;AACH;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-workplacesafety-management-client-safety-plan-status.provider-BpWx3gIf.mjs","sources":["../../../../libs/modules/workplacesafety-management/client/src/lib/features/safety-plan-status.provider.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPStatusProvider, AXPStatusTransition, AXPSystemStatusType, systemStatusToDefinition } from '@acorex-platform/framework-shared/core';\n\n//#endregion\n\n//#region ---- Safety plan status provider ----\n\n/**\n * Safety plan lifecycle statuses: Draft, Published, Archived.\n * Used by the status plugin (`workplacesafety-management.status.safety-plan`).\n */\nexport class AXMWorkplaceSafetyManagementSafetyPlanStatusProvider extends AXPStatusProvider {\n readonly key = 'workplacesafety-management.status.safety-plan';\n\n readonly defaultStatus = AXPSystemStatusType.Draft;\n\n readonly statuses = [\n systemStatusToDefinition(AXPSystemStatusType.Draft, {\n title: '@workplacesafety-management:safety-plans.entities.safety-plan.fields.status.options.draft',\n generateView: true,\n }),\n systemStatusToDefinition(AXPSystemStatusType.Published, {\n title: '@workplacesafety-management:safety-plans.entities.safety-plan.fields.status.options.published',\n generateView: true,\n }),\n systemStatusToDefinition(AXPSystemStatusType.Archived, {\n title: '@workplacesafety-management:safety-plans.entities.safety-plan.fields.status.options.archived',\n generateView: true,\n }),\n ];\n\n readonly transitions: AXPStatusTransition[] = [\n // {\n // from: AXPSystemStatusType.Draft,\n // to: AXPSystemStatusType.Published,\n // title: '@general:statuses.transitions.publish',\n // },\n {\n from: AXPSystemStatusType.Published,\n to: AXPSystemStatusType.Archived,\n title: '@general:statuses.transitions.archive',\n },\n {\n from: AXPSystemStatusType.Archived,\n to: AXPSystemStatusType.Draft,\n title: '@general:statuses.transitions.reopen',\n },\n ];\n}\n\n//#endregion\n"],"names":[],"mappings":";;AAAA;AAIA;AAEA;AAEA;;;AAGG;AACG,MAAO,oDAAqD,SAAQ,iBAAiB,CAAA;AAA3F,IAAA,WAAA,GAAA;;QACW,IAAA,CAAA,GAAG,GAAG,+CAA+C;AAErD,QAAA,IAAA,CAAA,aAAa,GAAG,mBAAmB,CAAC,KAAK;AAEzC,QAAA,IAAA,CAAA,QAAQ,GAAG;AAClB,YAAA,wBAAwB,CAAC,mBAAmB,CAAC,KAAK,EAAE;AAClD,gBAAA,KAAK,EAAE,2FAA2F;AAClG,gBAAA,YAAY,EAAE,IAAI;aACnB,CAAC;AACF,YAAA,wBAAwB,CAAC,mBAAmB,CAAC,SAAS,EAAE;AACtD,gBAAA,KAAK,EAAE,+FAA+F;AACtG,gBAAA,YAAY,EAAE,IAAI;aACnB,CAAC;AACF,YAAA,wBAAwB,CAAC,mBAAmB,CAAC,QAAQ,EAAE;AACrD,gBAAA,KAAK,EAAE,8FAA8F;AACrG,gBAAA,YAAY,EAAE,IAAI;aACnB,CAAC;SACH;AAEQ,QAAA,IAAA,CAAA,WAAW,GAA0B;;;;;;AAM5C,YAAA;gBACE,IAAI,EAAE,mBAAmB,CAAC,SAAS;gBACnC,EAAE,EAAE,mBAAmB,CAAC,QAAQ;AAChC,gBAAA,KAAK,EAAE,uCAAuC;AAC/C,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,mBAAmB,CAAC,QAAQ;gBAClC,EAAE,EAAE,mBAAmB,CAAC,KAAK;AAC7B,gBAAA,KAAK,EAAE,sCAAsC;AAC9C,aAAA;SACF;IACH;AAAC;AAED;;;;"}
1
+ {"version":3,"file":"acorex-platform-module-workplacesafety-management-client-safety-plan-status.provider-BpWx3gIf.mjs","sources":["../../../../libs/modules/workplacesafety-management/client/src/lib/features/safety-plan-status.provider.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPStatusProvider, AXPStatusTransition, AXPSystemStatusType, systemStatusToDefinition } from '@acorex-platform/framework-shared/core';\n\n//#endregion\n\n//#region ---- Safety plan status provider ----\n\n/**\n * Safety plan lifecycle statuses: Draft, Published, Archived.\n * Used by the status plugin (`workplacesafety-management.status.safety-plan`).\n */\nexport class AXMWorkplaceSafetyManagementSafetyPlanStatusProvider extends AXPStatusProvider {\n readonly key = 'workplacesafety-management.status.safety-plan';\n\n readonly defaultStatus = AXPSystemStatusType.Draft;\n\n readonly statuses = [\n systemStatusToDefinition(AXPSystemStatusType.Draft, {\n title: '@workplacesafety-management:safety-plans.entities.safety-plan.fields.status.options.draft',\n generateView: true,\n }),\n systemStatusToDefinition(AXPSystemStatusType.Published, {\n title: '@workplacesafety-management:safety-plans.entities.safety-plan.fields.status.options.published',\n generateView: true,\n }),\n systemStatusToDefinition(AXPSystemStatusType.Archived, {\n title: '@workplacesafety-management:safety-plans.entities.safety-plan.fields.status.options.archived',\n generateView: true,\n }),\n ];\n\n readonly transitions: AXPStatusTransition[] = [\n // {\n // from: AXPSystemStatusType.Draft,\n // to: AXPSystemStatusType.Published,\n // title: '@general:statuses.transitions.publish',\n // },\n {\n from: AXPSystemStatusType.Published,\n to: AXPSystemStatusType.Archived,\n title: '@general:statuses.transitions.archive',\n },\n {\n from: AXPSystemStatusType.Archived,\n to: AXPSystemStatusType.Draft,\n title: '@general:statuses.transitions.reopen',\n },\n ];\n}\n\n//#endregion\n"],"names":[],"mappings":";;AAAA;AAIA;AAEA;AAEA;;;AAGG;AACG,MAAO,oDAAqD,SAAQ,iBAAiB,CAAA;AAA3F,IAAA,WAAA,GAAA;;QACW,IAAA,CAAA,GAAG,GAAG,+CAA+C;AAErD,QAAA,IAAA,CAAA,aAAa,GAAG,mBAAmB,CAAC,KAAK;AAEzC,QAAA,IAAA,CAAA,QAAQ,GAAG;AAClB,YAAA,wBAAwB,CAAC,mBAAmB,CAAC,KAAK,EAAE;AAClD,gBAAA,KAAK,EAAE,2FAA2F;AAClG,gBAAA,YAAY,EAAE,IAAI;aACnB,CAAC;AACF,YAAA,wBAAwB,CAAC,mBAAmB,CAAC,SAAS,EAAE;AACtD,gBAAA,KAAK,EAAE,+FAA+F;AACtG,gBAAA,YAAY,EAAE,IAAI;aACnB,CAAC;AACF,YAAA,wBAAwB,CAAC,mBAAmB,CAAC,QAAQ,EAAE;AACrD,gBAAA,KAAK,EAAE,8FAA8F;AACrG,gBAAA,YAAY,EAAE,IAAI;aACnB,CAAC;SACH;AAEQ,QAAA,IAAA,CAAA,WAAW,GAA0B;;;;;;AAM5C,YAAA;gBACE,IAAI,EAAE,mBAAmB,CAAC,SAAS;gBACnC,EAAE,EAAE,mBAAmB,CAAC,QAAQ;AAChC,gBAAA,KAAK,EAAE,uCAAuC;AAC/C,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,mBAAmB,CAAC,QAAQ;gBAClC,EAAE,EAAE,mBAAmB,CAAC,KAAK;AAC7B,gBAAA,KAAK,EAAE,sCAAsC;AAC9C,aAAA;SACF;IACH;AAAC;AAED;;"}
@@ -3,207 +3,8 @@ import { extractRequestErrorInfo } from '@acorex-platform/framework-client/commo
3
3
  import { AXTranslationService } from '@acorex/core/translation';
4
4
  import * as i0 from '@angular/core';
5
5
  import { inject, Injectable } from '@angular/core';
6
- import { resolveEntityRefId, enrichSectionTypeSnapshot, isStepTableSectionType, normalizeStepTableColumns, normalizeStepTableRows, stepTableColumnTitle, RootConfig, dedupeSafetyPlanSectionStructure, collectBuiltInRepeatableSectionTypeIds } from '@acorex-platform/module-workplacesafety-management-client/contracts';
7
- import { AXPDataGenerator } from '@acorex-platform/framework-client/core';
8
-
9
- function createSafetyPlanSectionBuilderDefaultValue() {
10
- return { sections: [] };
11
- }
12
- function normalizeSafetyPlanSectionBuilderValue(value) {
13
- if (!value || !Array.isArray(value.sections)) {
14
- return createSafetyPlanSectionBuilderDefaultValue();
15
- }
16
- return {
17
- sections: value.sections.map((section, index) => normalizeSection(section, index)),
18
- };
19
- }
20
- function safetyPlanSectionsToBuilderValue(rows) {
21
- const ordered = [...rows].sort((a, b) => (a.sortOrder ?? 0) - (b.sortOrder ?? 0) || String(a.code ?? '').localeCompare(String(b.code ?? '')));
22
- return {
23
- sections: ordered.map((row, index) => {
24
- const legacyItem = row.items?.[0];
25
- const sectionTypeId = resolveEntityRefId(legacyItem?.sectionTypeId) ??
26
- resolveEntityRefId(legacyItem?.sectionType) ??
27
- '';
28
- const workStepTypeId = resolveEntityRefId(legacyItem?.workStepTypeId) ??
29
- resolveEntityRefId(legacyItem?.workStepType) ??
30
- undefined;
31
- return {
32
- id: row.id,
33
- sectionTypeId,
34
- sectionType: enrichSectionTypeSnapshot(sectionTypeId, legacyItem?.sectionType),
35
- title: row.title,
36
- description: row.description ?? '',
37
- safetyPlanId: row.safetyPlanId,
38
- code: row.code,
39
- sourceSafetyPlanTypeSectionId: row.sourceSafetyPlanTypeSectionId,
40
- sortOrder: row.sortOrder ?? index + 1,
41
- workStepTypeId,
42
- workStepType: legacyItem?.workStepType,
43
- widgetOptions: normalizeWidgetOptions(row.widgetOptions),
44
- columns: [],
45
- items: (row.items ?? []).map((item, itemIndex) => ({
46
- id: `${row.id}__item_${itemIndex + 1}`,
47
- itemIds: [...(item.itemIds ?? [])],
48
- items: item.items ? [...item.items] : [],
49
- })),
50
- };
51
- }),
52
- };
53
- }
54
- /** Merges SafetyPlanWorkStep row entities into Step Table sections. */
55
- function hydrateStepTableSectionsWithWorkSteps(value, workSteps, columnsByWorkStepTypeId) {
56
- const bySection = new Map();
57
- for (const step of workSteps) {
58
- const sectionId = resolveEntityRefId(step.safetyPlanSectionId) ?? '';
59
- if (!sectionId) {
60
- continue;
61
- }
62
- const list = bySection.get(sectionId) ?? [];
63
- list.push(step);
64
- bySection.set(sectionId, list);
65
- }
66
- return {
67
- sections: value.sections.map((section) => {
68
- if (!isStepTableSectionType(section.sectionTypeId, section.sectionType)) {
69
- return section;
70
- }
71
- const steps = [...(bySection.get(section.id) ?? [])].sort((a, b) => (a.sortOrder ?? 0) - (b.sortOrder ?? 0) || String(a.code ?? '').localeCompare(String(b.code ?? '')));
72
- const workStepTypeId = section.workStepTypeId ||
73
- (steps[0] ? resolveEntityRefId(steps[0].workStepTypeId) ?? undefined : undefined);
74
- const columns = (workStepTypeId && columnsByWorkStepTypeId?.get(workStepTypeId)) ||
75
- normalizeStepTableColumns(steps[0]?.columns) ||
76
- section.columns ||
77
- [];
78
- return {
79
- ...section,
80
- workStepTypeId,
81
- workStepType: section.workStepType ?? steps[0]?.workStepType,
82
- columns,
83
- items: steps.map((step) => toBuilderItemFromWorkStepRow(step, columns)),
84
- };
85
- }),
86
- };
87
- }
88
- function builderValueToSafetyPlanSectionPayloads(value, safetyPlanId) {
89
- return value.sections.map((section, index) => ({
90
- id: section.id,
91
- safetyPlanId,
92
- title: section.title,
93
- description: section.description?.trim() ? section.description.trim() : undefined,
94
- sectionTypeId: section.sectionTypeId,
95
- sectionType: section.sectionType,
96
- sourceSafetyPlanTypeSectionId: section.sourceSafetyPlanTypeSectionId,
97
- sortOrder: typeof section.sortOrder === 'number' ? section.sortOrder : index + 1,
98
- workStepTypeId: section.workStepTypeId,
99
- workStepType: section.workStepType,
100
- columns: section.columns,
101
- widgetOptions: section.widgetOptions,
102
- items: section.items.map((item) => ({
103
- ...item,
104
- itemIds: [...(item.itemIds ?? [])],
105
- items: item.items ? [...item.items] : [],
106
- stepTableRow: item.stepTableRow ? normalizeStepTableRowPayload(item.stepTableRow) : undefined,
107
- })),
108
- }));
109
- }
110
- function toBuilderItemFromWorkStepRow(step, columns) {
111
- const normalizedColumns = normalizeStepTableColumns(columns.length ? columns : step.columns);
112
- const cells = normalizeStepTableRows([{ id: step.id, sortOrder: step.sortOrder ?? 1, cells: step.cells ?? [] }], normalizedColumns)[0]?.cells ??
113
- step.cells ??
114
- [];
115
- const title = step.title?.trim() || summarizeStepTableRow(cells, normalizedColumns);
116
- return {
117
- id: step.id,
118
- itemIds: [step.id],
119
- items: [{ id: step.id, title, code: step.code }],
120
- stepTableRow: {
121
- cells,
122
- code: step.code,
123
- sortOrder: step.sortOrder,
124
- title,
125
- },
126
- };
127
- }
128
- function summarizeStepTableRow(cells, columns) {
129
- for (const column of columns) {
130
- const key = column.sectionTypeId;
131
- const cell = cells.find((entry) => entry.columnKey === key);
132
- if (!cell) {
133
- continue;
134
- }
135
- const fromRefs = cell.refs?.[0]?.title || cell.refs?.[0]?.code;
136
- if (fromRefs) {
137
- return fromRefs;
138
- }
139
- if (cell.textValue?.trim()) {
140
- return cell.textValue.trim();
141
- }
142
- }
143
- return columns[0] ? stepTableColumnTitle(columns[0]) : 'Row';
144
- }
145
- function normalizeSection(section, index) {
146
- const id = typeof section.id === 'string' && section.id ? section.id : AXPDataGenerator.uuid();
147
- const sectionTypeId = resolveEntityRefId(section.sectionTypeId) ?? '';
148
- const workStepTypeId = resolveEntityRefId(section.workStepTypeId) ?? undefined;
149
- return {
150
- id,
151
- sectionTypeId,
152
- sectionType: enrichSectionTypeSnapshot(sectionTypeId, section.sectionType),
153
- title: typeof section.title === 'string' ? section.title : '',
154
- description: typeof section.description === 'string' ? section.description : '',
155
- safetyPlanId: typeof section.safetyPlanId === 'string' ? section.safetyPlanId : undefined,
156
- code: typeof section.code === 'string' ? section.code : undefined,
157
- sourceSafetyPlanTypeSectionId: typeof section.sourceSafetyPlanTypeSectionId === 'string'
158
- ? section.sourceSafetyPlanTypeSectionId
159
- : undefined,
160
- sortOrder: typeof section.sortOrder === 'number' ? section.sortOrder : index + 1,
161
- required: section.required === true,
162
- workStepTypeId,
163
- workStepType: section.workStepType,
164
- columns: normalizeStepTableColumns(section.columns),
165
- widgetOptions: normalizeWidgetOptions(section.widgetOptions),
166
- items: Array.isArray(section.items)
167
- ? section.items.map((item) => normalizeItem(item, id, sectionTypeId, section.sectionType))
168
- : [],
169
- };
170
- }
171
- function normalizeWidgetOptions(value) {
172
- if (!value || typeof value !== 'object' || Array.isArray(value)) {
173
- return undefined;
174
- }
175
- return { ...value };
176
- }
177
- function normalizeItem(item, sectionId, sectionTypeId, sectionType) {
178
- const isStepTable = isStepTableSectionType(sectionTypeId, sectionType);
179
- if (isStepTable && item.stepTableRow) {
180
- const stepTableRow = normalizeStepTableRowPayload(item.stepTableRow);
181
- const stepId = typeof item.id === 'string' && item.id && !item.id.includes('__item_') && !item.id.includes('__entity_')
182
- ? item.id
183
- : AXPDataGenerator.uuid();
184
- const title = stepTableRow.title?.trim() || 'Row';
185
- return {
186
- id: stepId,
187
- itemIds: [stepId],
188
- items: [{ id: stepId, title, code: stepTableRow.code }],
189
- stepTableRow,
190
- };
191
- }
192
- const id = typeof item.id === 'string' && item.id ? item.id : AXPDataGenerator.uuid();
193
- return {
194
- id: id.includes('__item_') || id.includes('__entity_') ? id : `${sectionId}__item_${id}`,
195
- itemIds: Array.isArray(item.itemIds) ? item.itemIds.filter((x) => typeof x === 'string') : [],
196
- items: Array.isArray(item.items) ? item.items : [],
197
- };
198
- }
199
- function normalizeStepTableRowPayload(payload) {
200
- return {
201
- cells: Array.isArray(payload.cells) ? payload.cells : [],
202
- code: typeof payload.code === 'string' ? payload.code : undefined,
203
- sortOrder: typeof payload.sortOrder === 'number' ? payload.sortOrder : undefined,
204
- title: typeof payload.title === 'string' ? payload.title : undefined,
205
- };
206
- }
6
+ import { RootConfig, dedupeSafetyPlanSectionStructure, isStepTableSectionType, normalizeStepTableColumns, collectBuiltInRepeatableSectionTypeIds, resolveEntityRefId } from '@acorex-platform/module-workplacesafety-management-client/contracts';
7
+ import { b as builderValueToSafetyPlanSectionPayloads, s as summarizeStepTableRow, a as safetyPlanSectionsToBuilderValue } from './acorex-platform-module-workplacesafety-management-client-safety-plan-section-builder.types-LaN1NIgc.mjs';
207
8
 
208
9
  const SAFETY_PLAN_SECTIONS_SAVE_COMMAND = 'SafetyPlan:Sections:Save';
209
10
  class AXMSaveSafetyPlanSectionsCommand {
@@ -439,11 +240,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
439
240
  }]
440
241
  }] });
441
242
 
442
- var saveSafetyPlanSections_command = /*#__PURE__*/Object.freeze({
443
- __proto__: null,
444
- AXMSaveSafetyPlanSectionsCommand: AXMSaveSafetyPlanSectionsCommand,
445
- SAFETY_PLAN_SECTIONS_SAVE_COMMAND: SAFETY_PLAN_SECTIONS_SAVE_COMMAND
446
- });
447
-
448
- export { AXMSaveSafetyPlanSectionsCommand as A, SAFETY_PLAN_SECTIONS_SAVE_COMMAND as S, safetyPlanSectionsToBuilderValue as a, saveSafetyPlanSections_command as b, hydrateStepTableSectionsWithWorkSteps as h, normalizeSafetyPlanSectionBuilderValue as n, summarizeStepTableRow as s };
449
- //# sourceMappingURL=acorex-platform-module-workplacesafety-management-client-save-safety-plan-sections.command-BlPzzCc2.mjs.map
243
+ export { AXMSaveSafetyPlanSectionsCommand, SAFETY_PLAN_SECTIONS_SAVE_COMMAND };
244
+ //# sourceMappingURL=acorex-platform-module-workplacesafety-management-client-save-safety-plan-sections.command-CLj3y_JD.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-module-workplacesafety-management-client-save-safety-plan-sections.command-CLj3y_JD.mjs","sources":["../../../../libs/modules/workplacesafety-management/client/src/lib/features/safety-plan-sections-page/save-safety-plan-sections.command.ts"],"sourcesContent":["import {\n AXPEntityService,\n isAXPMiddlewareAbortError,\n mapEntityStorageErrorToCommandResult,\n} from '@acorex-platform/framework-client/layout/entity';\nimport { extractRequestErrorInfo } from '@acorex-platform/framework-client/common';\nimport { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { inject, Injectable } from '@angular/core';\nimport {\n AXMSafetyPlanSectionBuilderValue,\n RootConfig,\n collectBuiltInRepeatableSectionTypeIds,\n dedupeSafetyPlanSectionStructure,\n isStepTableSectionType,\n normalizeStepTableColumns,\n resolveEntityRefId,\n} from '@acorex-platform/module-workplacesafety-management-client/contracts';\nimport {\n builderValueToSafetyPlanSectionPayloads,\n safetyPlanSectionsToBuilderValue,\n summarizeStepTableRow,\n} from './safety-plan-section-builder.types';\n\nexport const SAFETY_PLAN_SECTIONS_SAVE_COMMAND = 'SafetyPlan:Sections:Save';\n\nexport interface SaveSafetyPlanSectionsInput {\n id: string;\n value: AXMSafetyPlanSectionBuilderValue;\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AXMSaveSafetyPlanSectionsCommand implements AXPCommand<SaveSafetyPlanSectionsInput, unknown> {\n private readonly entityService = inject(AXPEntityService);\n private readonly translationService = inject(AXTranslationService);\n\n async execute(input: SaveSafetyPlanSectionsInput): AXPCommandExecuteResultPromise<unknown> {\n const safetyPlanId = input?.id;\n const rawValue = input?.value ?? { sections: [] };\n\n if (!safetyPlanId) {\n return {\n success: false,\n message: {\n text: await this.translationService.translateAsync('@general:messages.entity.invalid-data'),\n },\n };\n }\n\n const sectionEntityRef = `${RootConfig.module.name}.${RootConfig.entities.safetyPlanSection.name}`;\n const sectionTypeEntityRef = `${RootConfig.module.name}.${RootConfig.entities.sectionType.name}`;\n const workStepEntityRef = `${RootConfig.module.name}.${RootConfig.entities.safetyPlanWorkStep.name}`;\n const sectionData = this.entityService.withEntity(sectionEntityRef).data();\n const workStepData = this.entityService.withEntity(workStepEntityRef).data();\n\n try {\n const repeatableSectionTypeIds = await this.loadRepeatableSectionTypeIds(sectionTypeEntityRef);\n\n // Dedupe accidental ghost rows (same type-section source materialized twice).\n const value = dedupeSafetyPlanSectionStructure(rawValue, { repeatableSectionTypeIds });\n\n const existing = await this.queryPlanSections(sectionData, safetyPlanId);\n const existingRows = existing.items ?? [];\n const existingIds = new Set(existingRows.map((row) => String((row as { id?: string }).id ?? '')));\n const nextIds = new Set(value.sections.map((section) => section.id));\n\n for (const row of existingRows) {\n const rowId = String((row as { id?: string }).id ?? '');\n if (rowId && !nextIds.has(rowId)) {\n await this.deleteWorkStepsForSection(workStepData, rowId);\n await sectionData.delete(rowId);\n }\n }\n\n const payloads = builderValueToSafetyPlanSectionPayloads(value, safetyPlanId);\n for (const payload of payloads) {\n const isStepTable = isStepTableSectionType(payload.sectionTypeId, payload.sectionType);\n const columns = normalizeStepTableColumns(payload.columns);\n\n if (isStepTable) {\n await this.syncWorkStepsForSection(\n workStepData,\n safetyPlanId,\n payload.id,\n payload.workStepTypeId,\n payload.workStepType,\n columns,\n payload.items,\n );\n }\n\n const itemRows = isStepTable\n ? [\n {\n sectionTypeId: payload.sectionTypeId,\n sectionType: payload.sectionType,\n workStepTypeId: payload.workStepTypeId,\n workStepType: payload.workStepType,\n itemIds: payload.items\n .map((item) => item.id)\n .filter((id): id is string => typeof id === 'string' && id.length > 0),\n items: payload.items.map((item) => ({\n id: item.id,\n title:\n item.stepTableRow?.title ??\n summarizeStepTableRow(item.stepTableRow?.cells ?? [], columns) ??\n item.items?.[0]?.title,\n code: item.stepTableRow?.code ?? item.items?.[0]?.code,\n })),\n },\n ]\n : payload.items.length > 0\n ? payload.items.map(({ itemIds, items }) => ({\n sectionTypeId: payload.sectionTypeId,\n sectionType: payload.sectionType,\n itemIds,\n items,\n }))\n : [\n {\n sectionTypeId: payload.sectionTypeId,\n sectionType: payload.sectionType,\n itemIds: [] as string[],\n items: [] as { id: string; title?: string; code?: string }[],\n },\n ];\n\n const entityPayload = {\n safetyPlanId: payload.safetyPlanId,\n title: payload.title,\n description: payload.description,\n sourceSafetyPlanTypeSectionId: payload.sourceSafetyPlanTypeSectionId,\n sortOrder: payload.sortOrder,\n items: itemRows,\n ...(payload.widgetOptions !== undefined ? { widgetOptions: payload.widgetOptions } : {}),\n };\n\n if (existingIds.has(payload.id)) {\n await sectionData.update(payload.id, entityPayload as never);\n } else {\n await sectionData.create({ ...entityPayload, id: payload.id } as never);\n }\n }\n\n const refreshed = await this.queryPlanSections(sectionData, safetyPlanId);\n const deduped = dedupeSafetyPlanSectionStructure(\n safetyPlanSectionsToBuilderValue(\n (refreshed.items ?? []) as Parameters<typeof safetyPlanSectionsToBuilderValue>[0],\n ),\n { repeatableSectionTypeIds },\n );\n const keepIds = new Set(deduped.sections.map((section) => section.id));\n\n for (const row of refreshed.items ?? []) {\n const rowId = String((row as { id?: string }).id ?? '');\n if (rowId && !keepIds.has(rowId)) {\n await this.deleteWorkStepsForSection(workStepData, rowId);\n await sectionData.delete(rowId);\n }\n }\n\n const cleaned =\n keepIds.size === (refreshed.items ?? []).length\n ? refreshed\n : await this.queryPlanSections(sectionData, safetyPlanId);\n\n const sections = (cleaned.items ?? []).filter((row) =>\n keepIds.has(String((row as { id?: string }).id ?? '')),\n );\n\n return {\n success: true,\n kind: 'object',\n data: { id: safetyPlanId, value, sections },\n message: {\n text: await this.translationService.translateAsync('@general:messages.generic.success.description'),\n },\n };\n } catch (error) {\n if (isAXPMiddlewareAbortError(error)) {\n return mapEntityStorageErrorToCommandResult(error);\n }\n\n const httpInfo = extractRequestErrorInfo(error);\n const text =\n (typeof httpInfo?.message === 'string' && httpInfo.message.startsWith('@')\n ? httpInfo.message\n : null) ??\n (error instanceof Error && error.message.startsWith('@') ? error.message : null) ??\n (await this.translationService.translateAsync('@general:messages.generic.error.description'));\n\n return {\n success: false,\n message: { type: 'error', text },\n };\n }\n }\n\n private async syncWorkStepsForSection(\n workStepData: ReturnType<ReturnType<AXPEntityService['withEntity']>['data']>,\n safetyPlanId: string,\n sectionId: string,\n workStepTypeId: string | undefined,\n workStepType: { id: string; title?: string; code?: string } | undefined,\n columns: ReturnType<typeof normalizeStepTableColumns>,\n items: ReturnType<typeof builderValueToSafetyPlanSectionPayloads>[number]['items'],\n ): Promise<void> {\n const existing = await workStepData.query({\n skip: 0,\n take: 1000,\n filter: {\n logic: 'and',\n filters: [{ field: 'safetyPlanSectionId', operator: { type: 'equal' }, value: sectionId }],\n },\n } as never);\n\n const existingRows = existing.items ?? [];\n const existingIds = new Set(existingRows.map((row) => String((row as { id?: string }).id ?? '')));\n const nextIds = new Set(\n items.map((item) => item.id).filter((id): id is string => typeof id === 'string' && id.length > 0),\n );\n\n for (const row of existingRows) {\n const rowId = String((row as { id?: string }).id ?? '');\n if (rowId && !nextIds.has(rowId)) {\n await workStepData.delete(rowId);\n }\n }\n\n if (!workStepTypeId) {\n return;\n }\n\n for (const [index, item] of items.entries()) {\n const stepTableRow = item.stepTableRow;\n if (!stepTableRow || !item.id) {\n continue;\n }\n const title =\n stepTableRow.title?.trim() ||\n summarizeStepTableRow(stepTableRow.cells ?? [], columns) ||\n item.items?.[0]?.title;\n const entityPayload = {\n safetyPlanId,\n safetyPlanSectionId: sectionId,\n workStepTypeId,\n workStepType: workStepType ?? { id: workStepTypeId },\n title,\n columns,\n cells: stepTableRow.cells ?? [],\n sortOrder: stepTableRow.sortOrder ?? index + 1,\n };\n\n if (existingIds.has(item.id)) {\n await workStepData.update(item.id, entityPayload as never);\n } else {\n await workStepData.create({ ...entityPayload, id: item.id } as never);\n }\n }\n }\n\n private async deleteWorkStepsForSection(\n workStepData: ReturnType<ReturnType<AXPEntityService['withEntity']>['data']>,\n sectionId: string,\n ): Promise<void> {\n const existing = await workStepData.query({\n skip: 0,\n take: 1000,\n filter: {\n logic: 'and',\n filters: [{ field: 'safetyPlanSectionId', operator: { type: 'equal' }, value: sectionId }],\n },\n } as never);\n for (const row of existing.items ?? []) {\n const rowId = String((row as { id?: string }).id ?? '');\n if (rowId) {\n await workStepData.delete(rowId);\n }\n }\n }\n\n private async loadRepeatableSectionTypeIds(sectionTypeEntityRef: string): Promise<string[]> {\n const builtIn = collectBuiltInRepeatableSectionTypeIds();\n try {\n // Prefer client-side filtering — boolean equality filters can miss stored values.\n const result = await this.entityService.withEntity(sectionTypeEntityRef).data().query({\n skip: 0,\n take: 1000,\n } as never);\n const fromQuery = (result.items ?? [])\n .filter((row) => (row as { isRepeatable?: unknown }).isRepeatable === true)\n .map((row) => resolveEntityRefId((row as { id?: unknown }).id))\n .filter((id): id is string => !!id);\n return [...new Set([...fromQuery, ...builtIn])];\n } catch {\n return builtIn;\n }\n }\n\n private queryPlanSections(\n sectionData: ReturnType<ReturnType<AXPEntityService['withEntity']>['data']>,\n safetyPlanId: string,\n ) {\n return sectionData.query({\n skip: 0,\n take: 1000,\n filter: {\n logic: 'and',\n filters: [{ field: 'safetyPlanId', operator: { type: 'equal' }, value: safetyPlanId }],\n },\n } as never);\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export { A as AXMWorkplaceSafetyManagementMenuProvider, a as AXMWorkplaceSafetyManagementModule, b as AXMWorkplaceSafetyManagementSearchCommandProvider } from './acorex-platform-module-workplacesafety-management-client-acorex-platform-module-workplacesafety-management-client-isnVDChu.mjs';
1
+ export { A as AXMWorkplaceSafetyManagementMenuProvider, a as AXMWorkplaceSafetyManagementModule, b as AXMWorkplaceSafetyManagementSearchCommandProvider } from './acorex-platform-module-workplacesafety-management-client-acorex-platform-module-workplacesafety-management-client-Ds0Fkspp.mjs';
2
2
  //# sourceMappingURL=acorex-platform-module-workplacesafety-management-client.mjs.map
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@acorex-platform/module-workplacesafety-management-client",
3
- "version": "0.0.32",
3
+ "version": "0.0.37",
4
4
  "sideEffects": false,
5
5
  "peerDependencies": {
6
- "@acorex-platform/module-data-management-client": "0.0.32",
6
+ "@acorex-platform/module-data-management-client": "0.0.37",
7
7
  "@angular/common": "^21.0.0 || ^22.0.0",
8
8
  "@angular/core": "^21.0.0 || ^22.0.0"
9
9
  },
@@ -23,6 +23,74 @@
23
23
  "./contracts": {
24
24
  "types": "./types/acorex-platform-module-workplacesafety-management-client-contracts.d.ts",
25
25
  "default": "./fesm2022/acorex-platform-module-workplacesafety-management-client-contracts.mjs"
26
+ },
27
+ "./contracts/entities/control-hierarchy-levels": {
28
+ "types": "./types/acorex-platform-module-workplacesafety-management-client-contracts-entities-control-hierarchy-levels.d.ts",
29
+ "default": "./fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-control-hierarchy-levels.mjs"
30
+ },
31
+ "./contracts/entities/control-measure": {
32
+ "types": "./types/acorex-platform-module-workplacesafety-management-client-contracts-entities-control-measure.d.ts",
33
+ "default": "./fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-control-measure.mjs"
34
+ },
35
+ "./contracts/entities/hazard": {
36
+ "types": "./types/acorex-platform-module-workplacesafety-management-client-contracts-entities-hazard.d.ts",
37
+ "default": "./fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-hazard.mjs"
38
+ },
39
+ "./contracts/entities/hazard-ppe-rule": {
40
+ "types": "./types/acorex-platform-module-workplacesafety-management-client-contracts-entities-hazard-ppe-rule.d.ts",
41
+ "default": "./fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-hazard-ppe-rule.mjs"
42
+ },
43
+ "./contracts/entities/hazard-register": {
44
+ "types": "./types/acorex-platform-module-workplacesafety-management-client-contracts-entities-hazard-register.d.ts",
45
+ "default": "./fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-hazard-register.mjs"
46
+ },
47
+ "./contracts/entities/hazard-risk": {
48
+ "types": "./types/acorex-platform-module-workplacesafety-management-client-contracts-entities-hazard-risk.d.ts",
49
+ "default": "./fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-hazard-risk.mjs"
50
+ },
51
+ "./contracts/entities/ppe-item": {
52
+ "types": "./types/acorex-platform-module-workplacesafety-management-client-contracts-entities-ppe-item.d.ts",
53
+ "default": "./fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-ppe-item.mjs"
54
+ },
55
+ "./contracts/entities/safety-plan": {
56
+ "types": "./types/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan.d.ts",
57
+ "default": "./fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan.mjs"
58
+ },
59
+ "./contracts/entities/safety-plan-section": {
60
+ "types": "./types/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan-section.d.ts",
61
+ "default": "./fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan-section.mjs"
62
+ },
63
+ "./contracts/entities/safety-plan-type": {
64
+ "types": "./types/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan-type.d.ts",
65
+ "default": "./fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan-type.mjs"
66
+ },
67
+ "./contracts/entities/safety-plan-type-section": {
68
+ "types": "./types/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan-type-section.d.ts",
69
+ "default": "./fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan-type-section.mjs"
70
+ },
71
+ "./contracts/entities/safety-plan-work-step": {
72
+ "types": "./types/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan-work-step.d.ts",
73
+ "default": "./fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-plan-work-step.mjs"
74
+ },
75
+ "./contracts/entities/safety-template": {
76
+ "types": "./types/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-template.d.ts",
77
+ "default": "./fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-safety-template.mjs"
78
+ },
79
+ "./contracts/entities/section-type": {
80
+ "types": "./types/acorex-platform-module-workplacesafety-management-client-contracts-entities-section-type.d.ts",
81
+ "default": "./fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-section-type.mjs"
82
+ },
83
+ "./contracts/entities/work-step-type": {
84
+ "types": "./types/acorex-platform-module-workplacesafety-management-client-contracts-entities-work-step-type.d.ts",
85
+ "default": "./fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entities-work-step-type.mjs"
86
+ },
87
+ "./contracts/entity-catalog": {
88
+ "types": "./types/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog.d.ts",
89
+ "default": "./fesm2022/acorex-platform-module-workplacesafety-management-client-contracts-entity-catalog.mjs"
90
+ },
91
+ "./local-entities": {
92
+ "types": "./types/acorex-platform-module-workplacesafety-management-client-local-entities.d.ts",
93
+ "default": "./fesm2022/acorex-platform-module-workplacesafety-management-client-local-entities.mjs"
26
94
  }
27
95
  },
28
96
  "type": "module"
@@ -0,0 +1,5 @@
1
+ import { AXPEntity } from '@acorex-platform/framework-shared/entity';
2
+
3
+ declare function controlHierarchyLevelsEntityFactory(): Promise<AXPEntity | null>;
4
+
5
+ export { controlHierarchyLevelsEntityFactory };