@acorex-platform/module-maintenance-management-client 2.0.0-next.1 → 2.0.0-next.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/fesm2022/{acorex-platform-module-maintenance-management-client-acorex-platform-module-maintenance-management-client-CGjcOjjv.mjs → acorex-platform-module-maintenance-management-client-acorex-platform-module-maintenance-management-client-gUetoBL2.mjs} +115 -29
  2. package/fesm2022/acorex-platform-module-maintenance-management-client-acorex-platform-module-maintenance-management-client-gUetoBL2.mjs.map +1 -0
  3. package/fesm2022/acorex-platform-module-maintenance-management-client-contracts-entities-maintenance-plan.mjs +26 -3
  4. package/fesm2022/acorex-platform-module-maintenance-management-client-contracts-entities-maintenance-plan.mjs.map +1 -1
  5. package/fesm2022/acorex-platform-module-maintenance-management-client-contracts-entities-work-order.mjs +1 -1
  6. package/fesm2022/acorex-platform-module-maintenance-management-client-contracts-entities-work-order.mjs.map +1 -1
  7. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-acorex-platform-module-maintenance-management-client-contracts-entity-catalog-Dgu63wyv.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-acorex-platform-module-maintenance-management-client-contracts-entity-catalog-B3VyUXZS.mjs} +27 -27
  8. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-acorex-platform-module-maintenance-management-client-contracts-entity-catalog-Dgu63wyv.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-acorex-platform-module-maintenance-management-client-contracts-entity-catalog-B3VyUXZS.mjs.map} +1 -1
  9. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-activity-type-asset-type.entity-CePSpBHM.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-activity-type-asset-type.entity-CsYZTxT_.mjs} +2 -2
  10. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-activity-type-asset-type.entity-CePSpBHM.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-activity-type-asset-type.entity-CsYZTxT_.mjs.map} +1 -1
  11. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-activity-type-resource.entity-Bfvk4GcQ.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-activity-type-resource.entity-Bh5dBgpo.mjs} +2 -2
  12. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-activity-type-resource.entity-Bfvk4GcQ.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-activity-type-resource.entity-Bh5dBgpo.mjs.map} +1 -1
  13. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-activity-type.entity-Jy3BDuNN.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-activity-type.entity-DvO6Fzyy.mjs} +2 -2
  14. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-activity-type.entity-Jy3BDuNN.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-activity-type.entity-DvO6Fzyy.mjs.map} +1 -1
  15. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-cause.entity-CCgWn686.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-cause.entity-PdvjV4lk.mjs} +2 -2
  16. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-cause.entity-CCgWn686.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-cause.entity-PdvjV4lk.mjs.map} +1 -1
  17. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-detection.entity-r_GaKV4C.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-detection.entity-BV-O5oRI.mjs} +2 -2
  18. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-detection.entity-r_GaKV4C.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-detection.entity-BV-O5oRI.mjs.map} +1 -1
  19. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-effect.entity-BC8cmP-E.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-effect.entity-GqFBuuiR.mjs} +2 -2
  20. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-effect.entity-BC8cmP-E.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-effect.entity-GqFBuuiR.mjs.map} +1 -1
  21. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-mechanism.entity-DkyVyX8d.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-mechanism.entity-CiqHDstL.mjs} +2 -2
  22. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-mechanism.entity-DkyVyX8d.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-mechanism.entity-CiqHDstL.mjs.map} +1 -1
  23. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-mode-asset-type.entity-WxiHq42o.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-mode-asset-type.entity-TcC_1stz.mjs} +2 -2
  24. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-mode-asset-type.entity-WxiHq42o.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-mode-asset-type.entity-TcC_1stz.mjs.map} +1 -1
  25. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-mode-mechanism.entity-B1yGBbFQ.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-mode-mechanism.entity-q2O4YHPk.mjs} +2 -2
  26. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-mode-mechanism.entity-B1yGBbFQ.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-mode-mechanism.entity-q2O4YHPk.mjs.map} +1 -1
  27. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-mode-solution.entity-Bquvs5zg.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-mode-solution.entity-CeyOYGAL.mjs} +2 -2
  28. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-mode-solution.entity-Bquvs5zg.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-mode-solution.entity-CeyOYGAL.mjs.map} +1 -1
  29. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-mode.entity-DU4i03Hi.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-mode.entity-CDWqPcEx.mjs} +2 -2
  30. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-mode.entity-DU4i03Hi.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-mode.entity-CDWqPcEx.mjs.map} +1 -1
  31. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-register-cause.entity-DvO7KoEq.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-register-cause.entity-6GS66uos.mjs} +2 -2
  32. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-register-cause.entity-DvO7KoEq.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-register-cause.entity-6GS66uos.mjs.map} +1 -1
  33. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-register-effect.entity-DK702y8j.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-register-effect.entity-BDsiwqyj.mjs} +2 -2
  34. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-register-effect.entity-DK702y8j.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-register-effect.entity-BDsiwqyj.mjs.map} +1 -1
  35. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-register-mechanism.entity-Dua1ufeE.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-register-mechanism.entity-DYX8gBDO.mjs} +2 -2
  36. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-register-mechanism.entity-Dua1ufeE.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-register-mechanism.entity-DYX8gBDO.mjs.map} +1 -1
  37. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-register.entity-Cs-SLfHm.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-register.entity-DWKPDUB7.mjs} +2 -2
  38. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-register.entity-Cs-SLfHm.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-register.entity-DWKPDUB7.mjs.map} +1 -1
  39. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-severity.entity-C-vkhC0g.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-severity.entity-wHk-6VCb.mjs} +2 -2
  40. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-severity.entity-C-vkhC0g.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-severity.entity-wHk-6VCb.mjs.map} +1 -1
  41. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-type.entity-DEcLe9MD.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-type.entity-tTg4D_-N.mjs} +2 -2
  42. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-type.entity-DEcLe9MD.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-failure-type.entity-tTg4D_-N.mjs.map} +1 -1
  43. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-plan.entity-R0UVSWKi.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-plan.entity-BwsjdQur.mjs} +28 -5
  44. package/fesm2022/acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-plan.entity-BwsjdQur.mjs.map +1 -0
  45. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-template-activity-type.entity-C3KERG4U.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-template-activity-type.entity-CCx9h8Gq.mjs} +2 -2
  46. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-template-activity-type.entity-C3KERG4U.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-template-activity-type.entity-CCx9h8Gq.mjs.map} +1 -1
  47. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-template-failure-mode.entity-EXXJjDYH.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-template-failure-mode.entity-BlfNXvBw.mjs} +2 -2
  48. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-template-failure-mode.entity-EXXJjDYH.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-template-failure-mode.entity-BlfNXvBw.mjs.map} +1 -1
  49. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-template-resource.entity-CrMPuOD8.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-template-resource.entity-2lGT7_Xi.mjs} +2 -2
  50. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-template-resource.entity-CrMPuOD8.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-template-resource.entity-2lGT7_Xi.mjs.map} +1 -1
  51. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-template.entity-Bn2DAaNN.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-template.entity-bJKzxAis.mjs} +2 -2
  52. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-template.entity-Bn2DAaNN.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-template.entity-bJKzxAis.mjs.map} +1 -1
  53. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-type.entity-DS8_oRB7.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-type.entity-j2eyDg9O.mjs} +2 -2
  54. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-type.entity-DS8_oRB7.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-type.entity-j2eyDg9O.mjs.map} +1 -1
  55. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-work-order.entity-DS1RPQ-I.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-work-order.entity-DFJdx9Km.mjs} +3 -3
  56. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-work-order.entity-DS1RPQ-I.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-work-order.entity-DFJdx9Km.mjs.map} +1 -1
  57. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-work-package.entity-BUMsgLTC.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-work-package.entity-DM60G8nP.mjs} +2 -2
  58. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-work-package.entity-BUMsgLTC.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-work-package.entity-DM60G8nP.mjs.map} +1 -1
  59. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-work-report.entity-V0CqICBq.mjs → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-work-report.entity-DOvNijen.mjs} +2 -2
  60. package/fesm2022/{acorex-platform-module-maintenance-management-client-contracts-entity-catalog-work-report.entity-V0CqICBq.mjs.map → acorex-platform-module-maintenance-management-client-contracts-entity-catalog-work-report.entity-DOvNijen.mjs.map} +1 -1
  61. package/fesm2022/acorex-platform-module-maintenance-management-client-contracts-entity-catalog.mjs +1 -1
  62. package/fesm2022/acorex-platform-module-maintenance-management-client-contracts.mjs +475 -3
  63. package/fesm2022/acorex-platform-module-maintenance-management-client-contracts.mjs.map +1 -1
  64. package/fesm2022/{acorex-platform-module-maintenance-management-client-create-or-get-work-report-draft.activity-BXKKfu4I.mjs → acorex-platform-module-maintenance-management-client-create-or-get-work-report-draft.activity-ByaIojAq.mjs} +2 -2
  65. package/fesm2022/{acorex-platform-module-maintenance-management-client-create-or-get-work-report-draft.activity-BXKKfu4I.mjs.map → acorex-platform-module-maintenance-management-client-create-or-get-work-report-draft.activity-ByaIojAq.mjs.map} +1 -1
  66. package/fesm2022/{acorex-platform-module-maintenance-management-client-maintenance-interval-widget-edit.component-Be1Nup4H.mjs → acorex-platform-module-maintenance-management-client-maintenance-interval-widget-edit.component-C-fjBgRp.mjs} +2 -2
  67. package/fesm2022/{acorex-platform-module-maintenance-management-client-maintenance-interval-widget-edit.component-Be1Nup4H.mjs.map → acorex-platform-module-maintenance-management-client-maintenance-interval-widget-edit.component-C-fjBgRp.mjs.map} +1 -1
  68. package/fesm2022/acorex-platform-module-maintenance-management-client-open-work-order-checklist-form.command-B-6cnmrR.mjs +597 -0
  69. package/fesm2022/acorex-platform-module-maintenance-management-client-open-work-order-checklist-form.command-B-6cnmrR.mjs.map +1 -0
  70. package/fesm2022/{acorex-platform-module-maintenance-management-client-record-work-report-assessment.activity-BJUgm59a.mjs → acorex-platform-module-maintenance-management-client-record-work-report-assessment.activity-B1MzM5zk.mjs} +2 -2
  71. package/fesm2022/{acorex-platform-module-maintenance-management-client-record-work-report-assessment.activity-BJUgm59a.mjs.map → acorex-platform-module-maintenance-management-client-record-work-report-assessment.activity-B1MzM5zk.mjs.map} +1 -1
  72. package/fesm2022/acorex-platform-module-maintenance-management-client-sign-off-work-order.command-Ca8WbM3R.mjs +217 -0
  73. package/fesm2022/acorex-platform-module-maintenance-management-client-sign-off-work-order.command-Ca8WbM3R.mjs.map +1 -0
  74. package/fesm2022/acorex-platform-module-maintenance-management-client-start-work-order-flow-id.util-CuUi8LBT.mjs +123 -0
  75. package/fesm2022/acorex-platform-module-maintenance-management-client-start-work-order-flow-id.util-CuUi8LBT.mjs.map +1 -0
  76. package/fesm2022/{acorex-platform-module-maintenance-management-client-start-work-order-flow.command-Bg1do_Uu.mjs → acorex-platform-module-maintenance-management-client-start-work-order-flow.command-0Grjl6rZ.mjs} +249 -129
  77. package/fesm2022/acorex-platform-module-maintenance-management-client-start-work-order-flow.command-0Grjl6rZ.mjs.map +1 -0
  78. package/fesm2022/{acorex-platform-module-maintenance-management-client-update-work-order-in-progress.activity-B8vjsOI_.mjs → acorex-platform-module-maintenance-management-client-update-work-order-in-progress.activity-DXhNeYyx.mjs} +2 -2
  79. package/fesm2022/{acorex-platform-module-maintenance-management-client-update-work-order-in-progress.activity-B8vjsOI_.mjs.map → acorex-platform-module-maintenance-management-client-update-work-order-in-progress.activity-DXhNeYyx.mjs.map} +1 -1
  80. package/fesm2022/{acorex-platform-module-maintenance-management-client-work-order-workflow-column.component-DG80hqRj.mjs → acorex-platform-module-maintenance-management-client-work-order-workflow-column.component-ClRITLiw.mjs} +2 -2
  81. package/fesm2022/{acorex-platform-module-maintenance-management-client-work-order-workflow-column.component-DG80hqRj.mjs.map → acorex-platform-module-maintenance-management-client-work-order-workflow-column.component-ClRITLiw.mjs.map} +1 -1
  82. package/fesm2022/acorex-platform-module-maintenance-management-client.mjs +1 -1
  83. package/i18n/en-AU/maintenance-management.json +52 -5
  84. package/i18n/en-US/maintenance-management.json +52 -5
  85. package/i18n/fa-IR/maintenance-management.json +52 -5
  86. package/package.json +2 -2
  87. package/types/acorex-platform-module-maintenance-management-client-contracts.d.ts +153 -2
  88. package/types/acorex-platform-module-maintenance-management-client.d.ts +3 -2
  89. package/fesm2022/acorex-platform-module-maintenance-management-client-acorex-platform-module-maintenance-management-client-CGjcOjjv.mjs.map +0 -1
  90. package/fesm2022/acorex-platform-module-maintenance-management-client-contracts-entity-catalog-maintenance-plan.entity-R0UVSWKi.mjs.map +0 -1
  91. package/fesm2022/acorex-platform-module-maintenance-management-client-start-work-order-flow.command-Bg1do_Uu.mjs.map +0 -1
@@ -1,5 +1,5 @@
1
- import * as i2 from '@acorex/components/check-box';
2
- import { AXCheckBoxModule } from '@acorex/components/check-box';
1
+ import * as i2 from '@acorex/components/switch';
2
+ import { AXSwitchModule } from '@acorex/components/switch';
3
3
  import * as i6 from '@acorex/components/datetime-box';
4
4
  import { AXDateTimeBoxModule } from '@acorex/components/datetime-box';
5
5
  import * as i2$1 from '@acorex/components/decorators';
@@ -12,7 +12,7 @@ import * as i5 from '@acorex/components/selection-list';
12
12
  import { AXSelectionListModule } from '@acorex/components/selection-list';
13
13
  import * as i7 from '@acorex/core/translation';
14
14
  import { AXTranslationModule, isValidMultiLanguageObject, resolveMultiLanguageString, AXTranslationService, createMultiLanguageString } from '@acorex/core/translation';
15
- import { AXMMaintenanceIntervalUnit, emptyAXMMaintenanceIntervalConfig, AXMMaintenanceIntervalTriggerLogic, emptyAXMMaintenanceIntervalDraft, buildAXMMaintenanceIntervalConfig, draftFromAXMMaintenanceIntervalConfig, isAXMMaintenanceMeterKind, isAXMMaintenanceIntervalUnitForKind, readIntervalDate, isAXMMaintenanceIntervalKind, readMaintenancePlanCalendarSchedule, AXMWorkOrderSourceType, AXMWorkOrderStatus, RootConfig, readMaintenanceIntervalStates, resolveMaintenanceIntervalStates, AXM_MAINTENANCE_INTERVAL_STATE_ERRORS, AXMMaintenanceManagementCommandKeys, MM_CATALOG_SCOPE_MN, AXM_MAINTENANCE_INTERVAL_WIDGET, AXPAssetsMaintenancePermissionKeys, AXMMaintenanceManagementMenuKeys } from '@acorex-platform/module-maintenance-management-client/contracts';
15
+ import { AXMMaintenanceIntervalUnit, readIntervalDate, emptyAXMMaintenanceIntervalConfig, AXMMaintenanceIntervalTriggerLogic, emptyAXMMaintenanceIntervalDraft, buildAXMMaintenanceIntervalConfig, draftFromAXMMaintenanceIntervalConfig, isAXMMaintenanceMeterKind, isAXMMaintenanceIntervalUnitForKind, isAXMMaintenanceIntervalKind, readMaintenancePlanCalendarSchedule, AXMWorkOrderSourceType, AXMWorkOrderStatus, RootConfig, readMaintenanceIntervalStates, resolveMaintenanceIntervalStates, AXM_MAINTENANCE_INTERVAL_STATE_ERRORS, resolveIntervalChecklistViewerMode, AXMMaintenanceManagementCommandKeys, MM_CATALOG_SCOPE_MN, AXM_MAINTENANCE_INTERVAL_WIDGET, AXPAssetsMaintenancePermissionKeys, AXMMaintenanceManagementMenuKeys } from '@acorex-platform/module-maintenance-management-client/contracts';
16
16
  import { AsyncPipe } from '@angular/common';
17
17
  import * as i0 from '@angular/core';
18
18
  import { input, output, signal, computed, effect, ChangeDetectionStrategy, Component, inject, Injectable, NgModule } from '@angular/core';
@@ -41,7 +41,16 @@ const AXM_WORK_ORDER_WORKFLOW_DEBUG_NAMESPACE = 'maintenance-management';
41
41
  //#region ----- Constants -----
42
42
  const I18N$2 = '@maintenance-management:maintenance-interval';
43
43
  const KIND_ORDER = ['schedule', 'date', 'distance', 'operating-hours', 'operation-count'];
44
- const SCHEDULE_MODES = ['hourly', 'daily', 'weekly', 'monthly', 'yearly'];
44
+ const SCHEDULE_MODES = [
45
+ 'hourly',
46
+ 'daily',
47
+ 'weekly',
48
+ 'monthly',
49
+ 'yearly',
50
+ 'specific-date',
51
+ ];
52
+ /** Shown in the Schedule section. Hourly and Yearly stay readable so existing rows still load. */
53
+ const VISIBLE_SCHEDULE_MODES = ['daily', 'weekly', 'monthly', 'specific-date'];
45
54
  const LABEL_KEYS = {
46
55
  schedule: `${I18N$2}.kinds.schedule`,
47
56
  date: `${I18N$2}.kinds.date`,
@@ -67,10 +76,14 @@ const SCHEDULE_MODE_LABEL_KEYS = {
67
76
  weekly: `${I18N$2}.recurrence-unit.weekly`,
68
77
  monthly: `${I18N$2}.recurrence-unit.monthly`,
69
78
  yearly: `${I18N$2}.recurrence-unit.yearly`,
79
+ 'specific-date': `${I18N$2}.recurrence-unit.specific-date`,
70
80
  };
71
81
  function isScheduleMode(value) {
72
82
  return typeof value === 'string' && SCHEDULE_MODES.includes(value);
73
83
  }
84
+ function isPickerScheduleMode(value) {
85
+ return isScheduleMode(value) && value !== 'specific-date';
86
+ }
74
87
  /** Existing schedules without a mode stay daily so legacy daily rows keep working. */
75
88
  function readScheduleMode(schedule) {
76
89
  if (schedule && typeof schedule === 'object' && 'mode' in schedule) {
@@ -82,6 +95,15 @@ function readScheduleMode(schedule) {
82
95
  return 'daily';
83
96
  }
84
97
  function createScheduleSettings(mode) {
98
+ if (mode === 'specific-date') {
99
+ return {
100
+ mode: 'daily',
101
+ showStartCondition: false,
102
+ showEndConditions: false,
103
+ showExclusions: false,
104
+ showInclusions: false,
105
+ };
106
+ }
85
107
  const shared = {
86
108
  mode,
87
109
  showStartCondition: true,
@@ -131,6 +153,22 @@ function withScheduleMode(schedule, mode) {
131
153
  recurrence: {},
132
154
  };
133
155
  }
156
+ /** One calendar day, stored on the existing schedule start date. */
157
+ function withSpecificDate(date) {
158
+ return {
159
+ mode: 'specific-date',
160
+ interval: 1,
161
+ startCondition: { type: 'byDate', ...(date ? { startDate: date } : {}) },
162
+ endCondition: { type: 'never' },
163
+ };
164
+ }
165
+ function readScheduleStartDate(schedule) {
166
+ if (!schedule || typeof schedule !== 'object') {
167
+ return null;
168
+ }
169
+ const start = schedule.startCondition?.startDate;
170
+ return readIntervalDate(start);
171
+ }
134
172
  function stable(value) {
135
173
  return JSON.stringify(value, (_key, item) => (item instanceof Date ? item.toISOString() : item));
136
174
  }
@@ -174,7 +212,6 @@ class AXMMaintenanceIntervalComponent {
174
212
  this.titleKey = `${I18N$2}.title`;
175
213
  this.everyKey = `${I18N$2}.every`;
176
214
  this.emptyKey = `${I18N$2}.empty`;
177
- this.recurrenceUnitKey = `${I18N$2}.recurrence-unit.title`;
178
215
  this.triggerLogicTitleKey = `${I18N$2}.trigger-logic.title`;
179
216
  this.triggerLogic = AXMMaintenanceIntervalTriggerLogic;
180
217
  this.distanceUnits = [
@@ -185,7 +222,7 @@ class AXMMaintenanceIntervalComponent {
185
222
  { id: AXMMaintenanceIntervalTriggerLogic.Any, text: `${I18N$2}.trigger-logic.any` },
186
223
  { id: AXMMaintenanceIntervalTriggerLogic.All, text: `${I18N$2}.trigger-logic.all` },
187
224
  ];
188
- this.scheduleModeItems = SCHEDULE_MODES.map((mode) => ({
225
+ this.scheduleModeItems = VISIBLE_SCHEDULE_MODES.map((mode) => ({
189
226
  id: mode,
190
227
  text: SCHEDULE_MODE_LABEL_KEYS[mode],
191
228
  }));
@@ -204,6 +241,8 @@ class AXMMaintenanceIntervalComponent {
204
241
  ...(ngDevMode ? [{ debugName: "scheduleValue" }] : /* istanbul ignore next */ []));
205
242
  this.selectedScheduleMode = computed(() => readScheduleMode(this.draft().schedule), /* @ts-ignore */
206
243
  ...(ngDevMode ? [{ debugName: "selectedScheduleMode" }] : /* istanbul ignore next */ []));
244
+ this.specificDate = computed(() => readScheduleStartDate(this.draft().schedule), /* @ts-ignore */
245
+ ...(ngDevMode ? [{ debugName: "specificDate" }] : /* istanbul ignore next */ []));
207
246
  this.scheduleSettings = computed(() => createScheduleSettings(this.selectedScheduleMode()), /* @ts-ignore */
208
247
  ...(ngDevMode ? [{ debugName: "scheduleSettings" }] : /* istanbul ignore next */ []));
209
248
  this.sections = computed(() => {
@@ -320,7 +359,12 @@ class AXMMaintenanceIntervalComponent {
320
359
  }
321
360
  const draft = this.draft();
322
361
  const mode = this.selectedScheduleMode();
323
- const next = value ? withScheduleMode(value, isScheduleMode(value.mode) ? value.mode : mode) : value;
362
+ const picked = value && isPickerScheduleMode(value.mode)
363
+ ? value.mode
364
+ : isPickerScheduleMode(mode)
365
+ ? mode
366
+ : 'daily';
367
+ const next = value ? withScheduleMode(value, picked) : value;
324
368
  if (stable(draft.schedule) === stable(next)) {
325
369
  return;
326
370
  }
@@ -335,13 +379,31 @@ class AXMMaintenanceIntervalComponent {
335
379
  return;
336
380
  }
337
381
  const draft = this.draft();
338
- const current = draft.schedule;
339
- if (!current || readScheduleMode(current) === mode) {
382
+ const current = draft.schedule ?? createDefaultSchedule();
383
+ if (readScheduleMode(current) === mode) {
384
+ return;
385
+ }
386
+ const next = mode === 'specific-date'
387
+ ? withSpecificDate(readScheduleStartDate(current))
388
+ : withScheduleMode(current, mode);
389
+ this.commit({
390
+ ...draft,
391
+ schedule: next,
392
+ });
393
+ }
394
+ onSpecificDate(event) {
395
+ if (!event.isUserInteraction || this.disabled()) {
396
+ return;
397
+ }
398
+ const date = readIntervalDate(event.value);
399
+ const draft = this.draft();
400
+ const current = draft.schedule ?? createDefaultSchedule();
401
+ if (readScheduleMode(current) === 'specific-date' && readScheduleStartDate(current) === date) {
340
402
  return;
341
403
  }
342
404
  this.commit({
343
405
  ...draft,
344
- schedule: withScheduleMode(current, mode),
406
+ schedule: withSpecificDate(date),
345
407
  });
346
408
  }
347
409
  onTriggerLogic(event) {
@@ -433,7 +495,7 @@ class AXMMaintenanceIntervalComponent {
433
495
  this.valueChange.emit(config);
434
496
  }
435
497
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMMaintenanceIntervalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
436
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: AXMMaintenanceIntervalComponent, isStandalone: true, selector: "axm-maintenance-interval", inputs: { supportedIntervalKinds: { classPropertyName: "supportedIntervalKinds", publicName: "supportedIntervalKinds", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange" }, host: { classAttribute: "block" }, ngImport: i0, template: "<div class=\"flex flex-col gap-4\">\n <span class=\"text-sm font-medium\">{{ titleKey | translate | async }}</span>\n\n <!-- ----- No interval sections when the asset type supports none ----- -->\n @if (sections().length === 0) {\n <p class=\"ax-text-muted\">{{ emptyKey | translate | async }}</p>\n }\n\n @for (section of sections(); track section.kind) {\n <div class=\"flex flex-col gap-2\">\n <div class=\"flex items-center gap-2\">\n <ax-check-box\n [ngModel]=\"section.enabled\"\n [disabled]=\"disabled()\"\n (onValueChanged)=\"onEnabled(section.kind, $event)\"\n ></ax-check-box>\n <ax-label>{{ section.labelKey | translate | async }}</ax-label>\n </div>\n\n <!-- ----- Schedule interval reuses the scheduler picker ----- -->\n @if (section.enabled && section.editor === 'schedule') {\n <div class=\"flex flex-col gap-3 ps-7\">\n <div class=\"flex flex-wrap items-center gap-3\">\n <ax-label>{{ recurrenceUnitKey | translate | async }}</ax-label>\n <ax-selection-list\n [items]=\"scheduleModeItems\"\n [ngModel]=\"selectedScheduleMode()\"\n [disabled]=\"disabled()\"\n direction=\"horizontal\"\n [multiple]=\"false\"\n [showControl]=\"true\"\n valueField=\"id\"\n textField=\"text\"\n (onValueChanged)=\"onScheduleMode($event)\"\n >\n <ng-template #itemTemplate let-item>\n <span>{{ item.text | translate | async }}</span>\n </ng-template>\n </ax-selection-list>\n </div>\n <ax-scheduler-picker\n [config]=\"scheduleSettings()\"\n [ngModel]=\"scheduleValue()\"\n [disabled]=\"disabled()\"\n (ngModelChange)=\"onSchedule($event)\"\n />\n <!-- ----- Schedule is required while Schedule is enabled ----- -->\n @if (section.errorKey; as errorKey) {\n <p class=\"text-sm text-danger\">{{ errorKey | translate | async }}</p>\n }\n </div>\n }\n <!-- ----- Date interval is a single date ----- -->\n @else if (section.enabled && section.editor === 'date') {\n <div class=\"ps-7\">\n <ax-datetime-box\n picker=\"date\"\n [ngModel]=\"section.date\"\n [disabled]=\"disabled()\"\n (onValueChanged)=\"onDate($event)\"\n ></ax-datetime-box>\n <!-- ----- A date is required while Date is enabled ----- -->\n @if (section.errorKey; as errorKey) {\n <p class=\"text-sm text-danger\">{{ errorKey | translate | async }}</p>\n }\n </div>\n }\n <!-- ----- Distance interval with a kilometer or mile choice ----- -->\n @else if (section.enabled && section.editor === 'distance') {\n <div class=\"flex flex-wrap items-end gap-3 ps-7\">\n <span>{{ everyKey | translate | async }}</span>\n <ax-number-box\n class=\"w-36\"\n [minValue]=\"0\"\n [decimals]=\"section.decimals\"\n [ngModel]=\"section.interval\"\n [disabled]=\"disabled()\"\n [showSpinButtons]=\"false\"\n (onValueChanged)=\"onInterval('distance', $event)\"\n ></ax-number-box>\n <ax-selection-list\n [items]=\"distanceUnits\"\n [ngModel]=\"section.unitId\"\n [disabled]=\"disabled()\"\n direction=\"horizontal\"\n [multiple]=\"false\"\n [showControl]=\"true\"\n valueField=\"id\"\n textField=\"text\"\n (onValueChanged)=\"onDistanceUnit($event)\"\n >\n <ng-template #itemTemplate let-item>\n <span>{{ item.text | translate | async }}</span>\n </ng-template>\n </ax-selection-list>\n </div>\n <!-- ----- Positive distance is required while the section is enabled ----- -->\n @if (section.errorKey; as errorKey) {\n <p class=\"ps-7 text-sm text-danger\">{{ errorKey | translate | async }}</p>\n }\n }\n <!-- ----- Operating hours or operation count with a fixed unit ----- -->\n @else if (section.enabled && section.editor === 'meter') {\n <div class=\"flex flex-wrap items-end gap-3 ps-7\">\n <span>{{ everyKey | translate | async }}</span>\n <ax-number-box\n class=\"w-36\"\n [minValue]=\"0\"\n [decimals]=\"section.decimals\"\n [ngModel]=\"section.interval\"\n [disabled]=\"disabled()\"\n [showSpinButtons]=\"false\"\n (onValueChanged)=\"onInterval(section.meterKind ?? 'operating-hours', $event)\"\n >\n <ax-suffix>{{ section.unitLabelKey | translate | async }}</ax-suffix>\n </ax-number-box>\n </div>\n <!-- ----- Positive meter interval is required while the section is enabled ----- -->\n @if (section.errorKey; as errorKey) {\n <p class=\"ps-7 text-sm text-danger\">{{ errorKey | translate | async }}</p>\n }\n }\n </div>\n }\n\n <!-- ----- Trigger condition when more than one interval is enabled ----- -->\n @if (showTriggerLogic()) {\n <div class=\"flex flex-col gap-2\">\n <ax-label>{{ triggerLogicTitleKey | translate | async }}</ax-label>\n <ax-selection-list\n [items]=\"triggerLogicItems\"\n [ngModel]=\"selectedTriggerLogic()\"\n [disabled]=\"disabled()\"\n direction=\"vertical\"\n [multiple]=\"false\"\n [showControl]=\"true\"\n valueField=\"id\"\n textField=\"text\"\n (onValueChanged)=\"onTriggerLogic($event)\"\n >\n <ng-template #itemTemplate let-item>\n <span>{{ item.text | translate | async }}</span>\n </ng-template>\n </ax-selection-list>\n </div>\n }\n</div>\n", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "ngmodule", type: AXCheckBoxModule }, { kind: "component", type: i2.AXCheckBoxComponent, selector: "ax-check-box", inputs: ["disabled", "tabIndex", "readonly", "color", "value", "name", "id", "isLoading", "indeterminate"], outputs: ["onBlur", "onFocus", "valueChange", "onValueChanged"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2$1.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "component", type: AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXNumberBoxModule }, { kind: "component", type: i4.AXNumberBoxComponent, selector: "ax-number-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "minValue", "maxValue", "showSpinButtons", "thousandsSeparator", "decimals", "changeOnScroll", "step"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress", "thousandsSeparatorChange"] }, { kind: "ngmodule", type: AXSelectionListModule }, { kind: "component", type: i5.AXSelectionListComponent, selector: "ax-selection-list", inputs: ["id", "name", "disabled", "readonly", "tabIndex", "value", "valueField", "textField", "disabledField", "readonlyField", "multiple", "direction", "customTemplate", "showControl", "items", "look"], outputs: ["onValueChanged", "onBlur", "onFocus"] }, { kind: "component", type: AXSchedulerPickerComponent, selector: "ax-scheduler-picker", inputs: ["disabled", "readonly", "tabIndex", "value", "state", "name", "id", "config"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "summaryChange"] }, { kind: "ngmodule", type: AXDateTimeBoxModule }, { kind: "component", type: i6.AXDateTimeBoxComponent, selector: "ax-datetime-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "depth", "id", "type", "look", "holidayDates", "allowTyping", "picker", "calendar", "weekend", "weekdays", "calendarLook", "yearRange", "boxLook", "format"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "onOpened", "onClosed", "readonlyChange", "disabledChange", "formatChange"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: i7.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
498
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: AXMMaintenanceIntervalComponent, isStandalone: true, selector: "axm-maintenance-interval", inputs: { supportedIntervalKinds: { classPropertyName: "supportedIntervalKinds", publicName: "supportedIntervalKinds", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange" }, host: { classAttribute: "block" }, ngImport: i0, template: "<div class=\"flex flex-col gap-4\">\n <span class=\"text-sm font-medium\">{{ titleKey | translate | async }}</span>\n\n <!-- ----- No interval sections when the asset type supports none ----- -->\n @if (sections().length === 0) {\n <p class=\"ax-text-muted\">{{ emptyKey | translate | async }}</p>\n }\n\n @for (section of sections(); track section.kind) {\n <div class=\"flex flex-col gap-2\">\n <div class=\"flex items-center gap-2\">\n <ax-switch\n class=\"ax-sm\"\n [ngModel]=\"section.enabled\"\n [disabled]=\"disabled()\"\n (onValueChanged)=\"onEnabled(section.kind, $event)\"\n ></ax-switch>\n <ax-label>{{ section.labelKey | translate | async }}</ax-label>\n </div>\n\n <!-- ----- Schedule interval reuses the scheduler picker ----- -->\n @if (section.enabled && section.editor === 'schedule') {\n <div class=\"flex flex-col gap-3 ps-7\">\n <ax-selection-list\n [items]=\"scheduleModeItems\"\n [ngModel]=\"selectedScheduleMode()\"\n [disabled]=\"disabled()\"\n direction=\"horizontal\"\n [multiple]=\"false\"\n [showControl]=\"true\"\n valueField=\"id\"\n textField=\"text\"\n (onValueChanged)=\"onScheduleMode($event)\"\n >\n <ng-template #itemTemplate let-item>\n <span>{{ item.text | translate | async }}</span>\n </ng-template>\n </ax-selection-list>\n <!-- ----- Specific Date uses the date box; other modes keep the scheduler picker ----- -->\n @if (selectedScheduleMode() === 'specific-date') {\n <ax-datetime-box\n picker=\"date\"\n [ngModel]=\"specificDate()\"\n [disabled]=\"disabled()\"\n (onValueChanged)=\"onSpecificDate($event)\"\n ></ax-datetime-box>\n }\n <!-- ----- Daily, weekly, and monthly recurrence stay on the scheduler picker ----- -->\n @else {\n <ax-scheduler-picker\n [config]=\"scheduleSettings()\"\n [ngModel]=\"scheduleValue()\"\n [disabled]=\"disabled()\"\n (ngModelChange)=\"onSchedule($event)\"\n />\n }\n <!-- ----- Schedule is required while Schedule is enabled ----- -->\n @if (section.errorKey; as errorKey) {\n <p class=\"text-sm text-danger\">{{ errorKey | translate | async }}</p>\n }\n </div>\n }\n <!-- ----- Date interval is a single date ----- -->\n @else if (section.enabled && section.editor === 'date') {\n <div class=\"ps-7\">\n <ax-datetime-box\n picker=\"date\"\n [ngModel]=\"section.date\"\n [disabled]=\"disabled()\"\n (onValueChanged)=\"onDate($event)\"\n ></ax-datetime-box>\n <!-- ----- A date is required while Date is enabled ----- -->\n @if (section.errorKey; as errorKey) {\n <p class=\"text-sm text-danger\">{{ errorKey | translate | async }}</p>\n }\n </div>\n }\n <!-- ----- Distance interval with a kilometer or mile choice ----- -->\n @else if (section.enabled && section.editor === 'distance') {\n <div class=\"flex flex-nowrap items-center gap-3 overflow-x-auto ps-7\">\n <span class=\"shrink-0\">{{ everyKey | translate | async }}</span>\n <ax-number-box\n class=\"w-36 shrink-0\"\n [minValue]=\"0\"\n [decimals]=\"section.decimals\"\n [ngModel]=\"section.interval\"\n [disabled]=\"disabled()\"\n [showSpinButtons]=\"false\"\n (onValueChanged)=\"onInterval('distance', $event)\"\n ></ax-number-box>\n <ax-selection-list\n class=\"!w-fit shrink-0 [&_ul]:!flex-nowrap\"\n [items]=\"distanceUnits\"\n [ngModel]=\"section.unitId\"\n [disabled]=\"disabled()\"\n direction=\"horizontal\"\n [multiple]=\"false\"\n [showControl]=\"true\"\n valueField=\"id\"\n textField=\"text\"\n (onValueChanged)=\"onDistanceUnit($event)\"\n >\n <ng-template #itemTemplate let-item>\n <span>{{ item.text | translate | async }}</span>\n </ng-template>\n </ax-selection-list>\n </div>\n <!-- ----- Positive distance is required while the section is enabled ----- -->\n @if (section.errorKey; as errorKey) {\n <p class=\"ps-7 text-sm text-danger\">{{ errorKey | translate | async }}</p>\n }\n }\n <!-- ----- Operating hours or operation count with a fixed unit ----- -->\n @else if (section.enabled && section.editor === 'meter') {\n <div class=\"flex flex-col gap-1 ps-7\">\n <div class=\"flex flex-nowrap items-center gap-3\">\n <span class=\"shrink-0\">{{ everyKey | translate | async }}</span>\n <ax-number-box\n class=\"w-36 shrink-0\"\n [minValue]=\"0\"\n [decimals]=\"section.decimals\"\n [ngModel]=\"section.interval\"\n [disabled]=\"disabled()\"\n [showSpinButtons]=\"false\"\n (onValueChanged)=\"onInterval(section.meterKind ?? 'operating-hours', $event)\"\n >\n <ax-suffix>{{ section.unitLabelKey | translate | async }}</ax-suffix>\n </ax-number-box>\n </div>\n <!-- ----- Positive meter interval is required while the section is enabled ----- -->\n @if (section.errorKey; as errorKey) {\n <p class=\"text-sm text-danger\">{{ errorKey | translate | async }}</p>\n }\n </div>\n }\n </div>\n }\n\n <!-- ----- Trigger condition when more than one interval is enabled ----- -->\n @if (showTriggerLogic()) {\n <div class=\"flex flex-col gap-2\">\n <ax-label>{{ triggerLogicTitleKey | translate | async }}</ax-label>\n <ax-selection-list\n [items]=\"triggerLogicItems\"\n [ngModel]=\"selectedTriggerLogic()\"\n [disabled]=\"disabled()\"\n direction=\"vertical\"\n [multiple]=\"false\"\n [showControl]=\"true\"\n valueField=\"id\"\n textField=\"text\"\n (onValueChanged)=\"onTriggerLogic($event)\"\n >\n <ng-template #itemTemplate let-item>\n <span>{{ item.text | translate | async }}</span>\n </ng-template>\n </ax-selection-list>\n </div>\n }\n</div>\n", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "ngmodule", type: AXSwitchModule }, { kind: "component", type: i2.AXSwitchComponent, selector: "ax-switch", inputs: ["disabled", "readonly", "color", "tabIndex", "value", "name", "isLoading"], outputs: ["onBlur", "onFocus", "valueChange", "onValueChanged", "readonlyChange", "disabledChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2$1.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "component", type: AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXNumberBoxModule }, { kind: "component", type: i4.AXNumberBoxComponent, selector: "ax-number-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "minValue", "maxValue", "showSpinButtons", "thousandsSeparator", "decimals", "changeOnScroll", "step"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress", "thousandsSeparatorChange"] }, { kind: "ngmodule", type: AXSelectionListModule }, { kind: "component", type: i5.AXSelectionListComponent, selector: "ax-selection-list", inputs: ["id", "name", "disabled", "readonly", "tabIndex", "value", "valueField", "textField", "disabledField", "readonlyField", "multiple", "direction", "customTemplate", "showControl", "items", "look"], outputs: ["onValueChanged", "onBlur", "onFocus"] }, { kind: "component", type: AXSchedulerPickerComponent, selector: "ax-scheduler-picker", inputs: ["disabled", "readonly", "tabIndex", "value", "state", "name", "id", "config"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "summaryChange"] }, { kind: "ngmodule", type: AXDateTimeBoxModule }, { kind: "component", type: i6.AXDateTimeBoxComponent, selector: "ax-datetime-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "depth", "id", "type", "look", "holidayDates", "allowTyping", "picker", "calendar", "weekend", "weekdays", "calendarLook", "yearRange", "boxLook", "format"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "onOpened", "onClosed", "readonlyChange", "disabledChange", "formatChange"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: i7.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
437
499
  }
438
500
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMMaintenanceIntervalComponent, decorators: [{
439
501
  type: Component,
@@ -441,14 +503,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
441
503
  AsyncPipe,
442
504
  FormsModule,
443
505
  AXTranslationModule,
444
- AXCheckBoxModule,
506
+ AXSwitchModule,
445
507
  AXDecoratorModule,
446
508
  AXLabelComponent,
447
509
  AXNumberBoxModule,
448
510
  AXSelectionListModule,
449
511
  AXSchedulerPickerComponent,
450
512
  AXDateTimeBoxModule,
451
- ], host: { class: 'block' }, template: "<div class=\"flex flex-col gap-4\">\n <span class=\"text-sm font-medium\">{{ titleKey | translate | async }}</span>\n\n <!-- ----- No interval sections when the asset type supports none ----- -->\n @if (sections().length === 0) {\n <p class=\"ax-text-muted\">{{ emptyKey | translate | async }}</p>\n }\n\n @for (section of sections(); track section.kind) {\n <div class=\"flex flex-col gap-2\">\n <div class=\"flex items-center gap-2\">\n <ax-check-box\n [ngModel]=\"section.enabled\"\n [disabled]=\"disabled()\"\n (onValueChanged)=\"onEnabled(section.kind, $event)\"\n ></ax-check-box>\n <ax-label>{{ section.labelKey | translate | async }}</ax-label>\n </div>\n\n <!-- ----- Schedule interval reuses the scheduler picker ----- -->\n @if (section.enabled && section.editor === 'schedule') {\n <div class=\"flex flex-col gap-3 ps-7\">\n <div class=\"flex flex-wrap items-center gap-3\">\n <ax-label>{{ recurrenceUnitKey | translate | async }}</ax-label>\n <ax-selection-list\n [items]=\"scheduleModeItems\"\n [ngModel]=\"selectedScheduleMode()\"\n [disabled]=\"disabled()\"\n direction=\"horizontal\"\n [multiple]=\"false\"\n [showControl]=\"true\"\n valueField=\"id\"\n textField=\"text\"\n (onValueChanged)=\"onScheduleMode($event)\"\n >\n <ng-template #itemTemplate let-item>\n <span>{{ item.text | translate | async }}</span>\n </ng-template>\n </ax-selection-list>\n </div>\n <ax-scheduler-picker\n [config]=\"scheduleSettings()\"\n [ngModel]=\"scheduleValue()\"\n [disabled]=\"disabled()\"\n (ngModelChange)=\"onSchedule($event)\"\n />\n <!-- ----- Schedule is required while Schedule is enabled ----- -->\n @if (section.errorKey; as errorKey) {\n <p class=\"text-sm text-danger\">{{ errorKey | translate | async }}</p>\n }\n </div>\n }\n <!-- ----- Date interval is a single date ----- -->\n @else if (section.enabled && section.editor === 'date') {\n <div class=\"ps-7\">\n <ax-datetime-box\n picker=\"date\"\n [ngModel]=\"section.date\"\n [disabled]=\"disabled()\"\n (onValueChanged)=\"onDate($event)\"\n ></ax-datetime-box>\n <!-- ----- A date is required while Date is enabled ----- -->\n @if (section.errorKey; as errorKey) {\n <p class=\"text-sm text-danger\">{{ errorKey | translate | async }}</p>\n }\n </div>\n }\n <!-- ----- Distance interval with a kilometer or mile choice ----- -->\n @else if (section.enabled && section.editor === 'distance') {\n <div class=\"flex flex-wrap items-end gap-3 ps-7\">\n <span>{{ everyKey | translate | async }}</span>\n <ax-number-box\n class=\"w-36\"\n [minValue]=\"0\"\n [decimals]=\"section.decimals\"\n [ngModel]=\"section.interval\"\n [disabled]=\"disabled()\"\n [showSpinButtons]=\"false\"\n (onValueChanged)=\"onInterval('distance', $event)\"\n ></ax-number-box>\n <ax-selection-list\n [items]=\"distanceUnits\"\n [ngModel]=\"section.unitId\"\n [disabled]=\"disabled()\"\n direction=\"horizontal\"\n [multiple]=\"false\"\n [showControl]=\"true\"\n valueField=\"id\"\n textField=\"text\"\n (onValueChanged)=\"onDistanceUnit($event)\"\n >\n <ng-template #itemTemplate let-item>\n <span>{{ item.text | translate | async }}</span>\n </ng-template>\n </ax-selection-list>\n </div>\n <!-- ----- Positive distance is required while the section is enabled ----- -->\n @if (section.errorKey; as errorKey) {\n <p class=\"ps-7 text-sm text-danger\">{{ errorKey | translate | async }}</p>\n }\n }\n <!-- ----- Operating hours or operation count with a fixed unit ----- -->\n @else if (section.enabled && section.editor === 'meter') {\n <div class=\"flex flex-wrap items-end gap-3 ps-7\">\n <span>{{ everyKey | translate | async }}</span>\n <ax-number-box\n class=\"w-36\"\n [minValue]=\"0\"\n [decimals]=\"section.decimals\"\n [ngModel]=\"section.interval\"\n [disabled]=\"disabled()\"\n [showSpinButtons]=\"false\"\n (onValueChanged)=\"onInterval(section.meterKind ?? 'operating-hours', $event)\"\n >\n <ax-suffix>{{ section.unitLabelKey | translate | async }}</ax-suffix>\n </ax-number-box>\n </div>\n <!-- ----- Positive meter interval is required while the section is enabled ----- -->\n @if (section.errorKey; as errorKey) {\n <p class=\"ps-7 text-sm text-danger\">{{ errorKey | translate | async }}</p>\n }\n }\n </div>\n }\n\n <!-- ----- Trigger condition when more than one interval is enabled ----- -->\n @if (showTriggerLogic()) {\n <div class=\"flex flex-col gap-2\">\n <ax-label>{{ triggerLogicTitleKey | translate | async }}</ax-label>\n <ax-selection-list\n [items]=\"triggerLogicItems\"\n [ngModel]=\"selectedTriggerLogic()\"\n [disabled]=\"disabled()\"\n direction=\"vertical\"\n [multiple]=\"false\"\n [showControl]=\"true\"\n valueField=\"id\"\n textField=\"text\"\n (onValueChanged)=\"onTriggerLogic($event)\"\n >\n <ng-template #itemTemplate let-item>\n <span>{{ item.text | translate | async }}</span>\n </ng-template>\n </ax-selection-list>\n </div>\n }\n</div>\n" }]
513
+ ], host: { class: 'block' }, template: "<div class=\"flex flex-col gap-4\">\n <span class=\"text-sm font-medium\">{{ titleKey | translate | async }}</span>\n\n <!-- ----- No interval sections when the asset type supports none ----- -->\n @if (sections().length === 0) {\n <p class=\"ax-text-muted\">{{ emptyKey | translate | async }}</p>\n }\n\n @for (section of sections(); track section.kind) {\n <div class=\"flex flex-col gap-2\">\n <div class=\"flex items-center gap-2\">\n <ax-switch\n class=\"ax-sm\"\n [ngModel]=\"section.enabled\"\n [disabled]=\"disabled()\"\n (onValueChanged)=\"onEnabled(section.kind, $event)\"\n ></ax-switch>\n <ax-label>{{ section.labelKey | translate | async }}</ax-label>\n </div>\n\n <!-- ----- Schedule interval reuses the scheduler picker ----- -->\n @if (section.enabled && section.editor === 'schedule') {\n <div class=\"flex flex-col gap-3 ps-7\">\n <ax-selection-list\n [items]=\"scheduleModeItems\"\n [ngModel]=\"selectedScheduleMode()\"\n [disabled]=\"disabled()\"\n direction=\"horizontal\"\n [multiple]=\"false\"\n [showControl]=\"true\"\n valueField=\"id\"\n textField=\"text\"\n (onValueChanged)=\"onScheduleMode($event)\"\n >\n <ng-template #itemTemplate let-item>\n <span>{{ item.text | translate | async }}</span>\n </ng-template>\n </ax-selection-list>\n <!-- ----- Specific Date uses the date box; other modes keep the scheduler picker ----- -->\n @if (selectedScheduleMode() === 'specific-date') {\n <ax-datetime-box\n picker=\"date\"\n [ngModel]=\"specificDate()\"\n [disabled]=\"disabled()\"\n (onValueChanged)=\"onSpecificDate($event)\"\n ></ax-datetime-box>\n }\n <!-- ----- Daily, weekly, and monthly recurrence stay on the scheduler picker ----- -->\n @else {\n <ax-scheduler-picker\n [config]=\"scheduleSettings()\"\n [ngModel]=\"scheduleValue()\"\n [disabled]=\"disabled()\"\n (ngModelChange)=\"onSchedule($event)\"\n />\n }\n <!-- ----- Schedule is required while Schedule is enabled ----- -->\n @if (section.errorKey; as errorKey) {\n <p class=\"text-sm text-danger\">{{ errorKey | translate | async }}</p>\n }\n </div>\n }\n <!-- ----- Date interval is a single date ----- -->\n @else if (section.enabled && section.editor === 'date') {\n <div class=\"ps-7\">\n <ax-datetime-box\n picker=\"date\"\n [ngModel]=\"section.date\"\n [disabled]=\"disabled()\"\n (onValueChanged)=\"onDate($event)\"\n ></ax-datetime-box>\n <!-- ----- A date is required while Date is enabled ----- -->\n @if (section.errorKey; as errorKey) {\n <p class=\"text-sm text-danger\">{{ errorKey | translate | async }}</p>\n }\n </div>\n }\n <!-- ----- Distance interval with a kilometer or mile choice ----- -->\n @else if (section.enabled && section.editor === 'distance') {\n <div class=\"flex flex-nowrap items-center gap-3 overflow-x-auto ps-7\">\n <span class=\"shrink-0\">{{ everyKey | translate | async }}</span>\n <ax-number-box\n class=\"w-36 shrink-0\"\n [minValue]=\"0\"\n [decimals]=\"section.decimals\"\n [ngModel]=\"section.interval\"\n [disabled]=\"disabled()\"\n [showSpinButtons]=\"false\"\n (onValueChanged)=\"onInterval('distance', $event)\"\n ></ax-number-box>\n <ax-selection-list\n class=\"!w-fit shrink-0 [&_ul]:!flex-nowrap\"\n [items]=\"distanceUnits\"\n [ngModel]=\"section.unitId\"\n [disabled]=\"disabled()\"\n direction=\"horizontal\"\n [multiple]=\"false\"\n [showControl]=\"true\"\n valueField=\"id\"\n textField=\"text\"\n (onValueChanged)=\"onDistanceUnit($event)\"\n >\n <ng-template #itemTemplate let-item>\n <span>{{ item.text | translate | async }}</span>\n </ng-template>\n </ax-selection-list>\n </div>\n <!-- ----- Positive distance is required while the section is enabled ----- -->\n @if (section.errorKey; as errorKey) {\n <p class=\"ps-7 text-sm text-danger\">{{ errorKey | translate | async }}</p>\n }\n }\n <!-- ----- Operating hours or operation count with a fixed unit ----- -->\n @else if (section.enabled && section.editor === 'meter') {\n <div class=\"flex flex-col gap-1 ps-7\">\n <div class=\"flex flex-nowrap items-center gap-3\">\n <span class=\"shrink-0\">{{ everyKey | translate | async }}</span>\n <ax-number-box\n class=\"w-36 shrink-0\"\n [minValue]=\"0\"\n [decimals]=\"section.decimals\"\n [ngModel]=\"section.interval\"\n [disabled]=\"disabled()\"\n [showSpinButtons]=\"false\"\n (onValueChanged)=\"onInterval(section.meterKind ?? 'operating-hours', $event)\"\n >\n <ax-suffix>{{ section.unitLabelKey | translate | async }}</ax-suffix>\n </ax-number-box>\n </div>\n <!-- ----- Positive meter interval is required while the section is enabled ----- -->\n @if (section.errorKey; as errorKey) {\n <p class=\"text-sm text-danger\">{{ errorKey | translate | async }}</p>\n }\n </div>\n }\n </div>\n }\n\n <!-- ----- Trigger condition when more than one interval is enabled ----- -->\n @if (showTriggerLogic()) {\n <div class=\"flex flex-col gap-2\">\n <ax-label>{{ triggerLogicTitleKey | translate | async }}</ax-label>\n <ax-selection-list\n [items]=\"triggerLogicItems\"\n [ngModel]=\"selectedTriggerLogic()\"\n [disabled]=\"disabled()\"\n direction=\"vertical\"\n [multiple]=\"false\"\n [showControl]=\"true\"\n valueField=\"id\"\n textField=\"text\"\n (onValueChanged)=\"onTriggerLogic($event)\"\n >\n <ng-template #itemTemplate let-item>\n <span>{{ item.text | translate | async }}</span>\n </ng-template>\n </ax-selection-list>\n </div>\n }\n</div>\n" }]
452
514
  }], ctorParameters: () => [], propDecorators: { supportedIntervalKinds: [{ type: i0.Input, args: [{ isSignal: true, alias: "supportedIntervalKinds", required: false }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], valueChange: [{ type: i0.Output, args: ["valueChange"] }] } });
453
515
 
454
516
  //#region ---- Imports ----
@@ -620,6 +682,9 @@ function resolveWorkOrderScheduledStarts(schedule, referenceDate = new Date()) {
620
682
  if (!anchor) {
621
683
  return [];
622
684
  }
685
+ if (get(calendar, 'mode') === 'specific-date') {
686
+ return [anchor];
687
+ }
623
688
  const mode = inferScheduleMode(calendar);
624
689
  const interval = resolveScheduleInterval(calendar);
625
690
  const endType = defaultTo(get(calendar, 'endCondition.type'), 'never');
@@ -1089,7 +1154,7 @@ function resolveNextWorkOrderOccurrenceAfterSignedOff(plan, signedOffWorkOrder,
1089
1154
  return null;
1090
1155
  }
1091
1156
  const startType = get(schedule, 'startCondition.type');
1092
- if (startType === 'onDemand') {
1157
+ if (startType === 'onDemand' || get(schedule, 'mode') === 'specific-date') {
1093
1158
  return null;
1094
1159
  }
1095
1160
  const anchor = toDate(signedOffWorkOrder.scheduledStart) ?? resolveScheduleAnchorDate(schedule, referenceDate);
@@ -1701,7 +1766,9 @@ const workOrderChecklistFillMiddleware = async (context, next) => {
1701
1766
  return next(context);
1702
1767
  }
1703
1768
  const sessionId = resolveText$1(get(input, 'sessionId'));
1704
- if (sessionId) {
1769
+ const answersLocked = get(input, 'readonly') === true ||
1770
+ resolveIntervalChecklistViewerMode(get(workOrder, 'statusId')) === 'readonly';
1771
+ if (sessionId && !answersLocked) {
1705
1772
  const session = await entityService.withEntity('AssessmentManagement', 'AssessmentSession').data().byKey(sessionId);
1706
1773
  const existingAnswers = defaultTo(get(session, 'answers'), {});
1707
1774
  const { merged, changed } = mergeMissingAnswers(existingAnswers, prefillAnswers);
@@ -1784,7 +1851,7 @@ const workOrderChecklistPostSubmitMiddleware = async (context, next) => {
1784
1851
  //#endregion
1785
1852
  //#region ---- Post-submit effects ----
1786
1853
  async function applyWorkOrderChecklistPostSubmitEffects(input, result, services) {
1787
- if (!result?.success) {
1854
+ if (!result?.success || get(input, 'readonly') === true) {
1788
1855
  return;
1789
1856
  }
1790
1857
  const caseId = resolveText(get(input, 'caseId'));
@@ -1812,6 +1879,9 @@ async function applyWorkOrderChecklistPostSubmitEffects(input, result, services)
1812
1879
  if (!workOrder?.id) {
1813
1880
  return;
1814
1881
  }
1882
+ if (resolveIntervalChecklistViewerMode(workOrder.statusId) === 'readonly') {
1883
+ return;
1884
+ }
1815
1885
  const performedById = await resolveEmployeeIdByPersonId(entityService, resolveText(workOrder.assignedToId));
1816
1886
  const completedById = resolveText(sessionService.user?.id);
1817
1887
  const activityKeys = AXMMaintenanceManagementCommandKeys.WorkflowActivity;
@@ -2227,10 +2297,10 @@ const AXMMaintenanceIntervalWidget = {
2227
2297
  component: () => import('./acorex-platform-module-maintenance-management-client-maintenance-interval-widget-view.component-B0vjGln5.mjs').then((c) => c.AXMMaintenanceIntervalWidgetViewComponent),
2228
2298
  },
2229
2299
  edit: {
2230
- component: () => import('./acorex-platform-module-maintenance-management-client-maintenance-interval-widget-edit.component-Be1Nup4H.mjs').then((c) => c.AXMMaintenanceIntervalWidgetEditComponent),
2300
+ component: () => import('./acorex-platform-module-maintenance-management-client-maintenance-interval-widget-edit.component-C-fjBgRp.mjs').then((c) => c.AXMMaintenanceIntervalWidgetEditComponent),
2231
2301
  },
2232
2302
  designer: {
2233
- component: () => import('./acorex-platform-module-maintenance-management-client-maintenance-interval-widget-edit.component-Be1Nup4H.mjs').then((c) => c.AXMMaintenanceIntervalWidgetEditComponent),
2303
+ component: () => import('./acorex-platform-module-maintenance-management-client-maintenance-interval-widget-edit.component-C-fjBgRp.mjs').then((c) => c.AXMMaintenanceIntervalWidgetEditComponent),
2234
2304
  },
2235
2305
  },
2236
2306
  };
@@ -2263,7 +2333,7 @@ const AXMWorkOrderWorkflowColumnWidget = {
2263
2333
  properties: [],
2264
2334
  components: {
2265
2335
  column: {
2266
- component: () => import('./acorex-platform-module-maintenance-management-client-work-order-workflow-column.component-DG80hqRj.mjs').then((c) => c.AXMWorkOrderWorkflowColumnComponent),
2336
+ component: () => import('./acorex-platform-module-maintenance-management-client-work-order-workflow-column.component-ClRITLiw.mjs').then((c) => c.AXMWorkOrderWorkflowColumnComponent),
2267
2337
  },
2268
2338
  },
2269
2339
  };
@@ -2398,7 +2468,15 @@ class AXMMaintenanceManagementModule {
2398
2468
  },
2399
2469
  {
2400
2470
  key: AXMMaintenanceManagementCommandKeys.WorkOrder.StartFlow,
2401
- command: () => import('./acorex-platform-module-maintenance-management-client-start-work-order-flow.command-Bg1do_Uu.mjs').then((c) => c.StartWorkOrderFlowCommand),
2471
+ command: () => import('./acorex-platform-module-maintenance-management-client-start-work-order-flow.command-0Grjl6rZ.mjs').then((c) => c.StartWorkOrderFlowCommand),
2472
+ },
2473
+ {
2474
+ key: AXMMaintenanceManagementCommandKeys.WorkOrder.OpenForm,
2475
+ command: () => import('./acorex-platform-module-maintenance-management-client-open-work-order-checklist-form.command-B-6cnmrR.mjs').then((c) => c.OpenWorkOrderChecklistFormCommand),
2476
+ },
2477
+ {
2478
+ key: AXMMaintenanceManagementCommandKeys.WorkOrder.SignOff,
2479
+ command: () => import('./acorex-platform-module-maintenance-management-client-sign-off-work-order.command-Ca8WbM3R.mjs').then((c) => c.SignOffWorkOrderCommand),
2402
2480
  },
2403
2481
  {
2404
2482
  key: AXMMaintenanceManagementCommandKeys.WorkflowActivity.ResolveWorkOrder,
@@ -2410,11 +2488,11 @@ class AXMMaintenanceManagementModule {
2410
2488
  },
2411
2489
  {
2412
2490
  key: AXMMaintenanceManagementCommandKeys.WorkflowActivity.CreateOrGetWorkReportDraft,
2413
- command: () => import('./acorex-platform-module-maintenance-management-client-create-or-get-work-report-draft.activity-BXKKfu4I.mjs').then((c) => c.CreateOrGetWorkReportDraftActivity),
2491
+ command: () => import('./acorex-platform-module-maintenance-management-client-create-or-get-work-report-draft.activity-ByaIojAq.mjs').then((c) => c.CreateOrGetWorkReportDraftActivity),
2414
2492
  },
2415
2493
  {
2416
2494
  key: AXMMaintenanceManagementCommandKeys.WorkflowActivity.UpdateWorkOrderInProgress,
2417
- command: () => import('./acorex-platform-module-maintenance-management-client-update-work-order-in-progress.activity-B8vjsOI_.mjs').then((c) => c.UpdateWorkOrderInProgressActivity),
2495
+ command: () => import('./acorex-platform-module-maintenance-management-client-update-work-order-in-progress.activity-DXhNeYyx.mjs').then((c) => c.UpdateWorkOrderInProgressActivity),
2418
2496
  },
2419
2497
  {
2420
2498
  key: AXMMaintenanceManagementCommandKeys.WorkflowActivity.ValidateWorkOrderCompletion,
@@ -2426,7 +2504,7 @@ class AXMMaintenanceManagementModule {
2426
2504
  },
2427
2505
  {
2428
2506
  key: AXMMaintenanceManagementCommandKeys.WorkflowActivity.RecordWorkReportAssessment,
2429
- command: () => import('./acorex-platform-module-maintenance-management-client-record-work-report-assessment.activity-BJUgm59a.mjs').then((c) => c.RecordWorkReportAssessmentActivity),
2507
+ command: () => import('./acorex-platform-module-maintenance-management-client-record-work-report-assessment.activity-B1MzM5zk.mjs').then((c) => c.RecordWorkReportAssessmentActivity),
2430
2508
  },
2431
2509
  {
2432
2510
  key: AXMMaintenanceManagementCommandKeys.WorkflowActivity.UpdateWorkOrderCompleted,
@@ -2521,7 +2599,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
2521
2599
  },
2522
2600
  {
2523
2601
  key: AXMMaintenanceManagementCommandKeys.WorkOrder.StartFlow,
2524
- command: () => import('./acorex-platform-module-maintenance-management-client-start-work-order-flow.command-Bg1do_Uu.mjs').then((c) => c.StartWorkOrderFlowCommand),
2602
+ command: () => import('./acorex-platform-module-maintenance-management-client-start-work-order-flow.command-0Grjl6rZ.mjs').then((c) => c.StartWorkOrderFlowCommand),
2603
+ },
2604
+ {
2605
+ key: AXMMaintenanceManagementCommandKeys.WorkOrder.OpenForm,
2606
+ command: () => import('./acorex-platform-module-maintenance-management-client-open-work-order-checklist-form.command-B-6cnmrR.mjs').then((c) => c.OpenWorkOrderChecklistFormCommand),
2607
+ },
2608
+ {
2609
+ key: AXMMaintenanceManagementCommandKeys.WorkOrder.SignOff,
2610
+ command: () => import('./acorex-platform-module-maintenance-management-client-sign-off-work-order.command-Ca8WbM3R.mjs').then((c) => c.SignOffWorkOrderCommand),
2525
2611
  },
2526
2612
  {
2527
2613
  key: AXMMaintenanceManagementCommandKeys.WorkflowActivity.ResolveWorkOrder,
@@ -2533,11 +2619,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
2533
2619
  },
2534
2620
  {
2535
2621
  key: AXMMaintenanceManagementCommandKeys.WorkflowActivity.CreateOrGetWorkReportDraft,
2536
- command: () => import('./acorex-platform-module-maintenance-management-client-create-or-get-work-report-draft.activity-BXKKfu4I.mjs').then((c) => c.CreateOrGetWorkReportDraftActivity),
2622
+ command: () => import('./acorex-platform-module-maintenance-management-client-create-or-get-work-report-draft.activity-ByaIojAq.mjs').then((c) => c.CreateOrGetWorkReportDraftActivity),
2537
2623
  },
2538
2624
  {
2539
2625
  key: AXMMaintenanceManagementCommandKeys.WorkflowActivity.UpdateWorkOrderInProgress,
2540
- command: () => import('./acorex-platform-module-maintenance-management-client-update-work-order-in-progress.activity-B8vjsOI_.mjs').then((c) => c.UpdateWorkOrderInProgressActivity),
2626
+ command: () => import('./acorex-platform-module-maintenance-management-client-update-work-order-in-progress.activity-DXhNeYyx.mjs').then((c) => c.UpdateWorkOrderInProgressActivity),
2541
2627
  },
2542
2628
  {
2543
2629
  key: AXMMaintenanceManagementCommandKeys.WorkflowActivity.ValidateWorkOrderCompletion,
@@ -2549,7 +2635,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
2549
2635
  },
2550
2636
  {
2551
2637
  key: AXMMaintenanceManagementCommandKeys.WorkflowActivity.RecordWorkReportAssessment,
2552
- command: () => import('./acorex-platform-module-maintenance-management-client-record-work-report-assessment.activity-BJUgm59a.mjs').then((c) => c.RecordWorkReportAssessmentActivity),
2638
+ command: () => import('./acorex-platform-module-maintenance-management-client-record-work-report-assessment.activity-B1MzM5zk.mjs').then((c) => c.RecordWorkReportAssessmentActivity),
2553
2639
  },
2554
2640
  {
2555
2641
  key: AXMMaintenanceManagementCommandKeys.WorkflowActivity.UpdateWorkOrderCompleted,
@@ -3271,5 +3357,5 @@ const workOrderExecutionWorkflowDefinition = createWorkOrderExecutionWorkflowDef
3271
3357
  * Generated bundle index. Do not edit.
3272
3358
  */
3273
3359
 
3274
- export { AXM_WORK_ORDER_WORKFLOW_DEBUG_NAMESPACE as A, AXMMaintenanceIntervalComponent as a, AXMMaintenanceManagementMenuProvider as b, AXMMaintenanceManagementModule as c, AXMMaintenanceManagementPermissionDefinitionProvider as d, AXMMaintenanceManagementSearchCommandProvider as e, createWorkOrderExecutionWorkflowDefinition as f, workOrderExecutionWorkflowName as g, queryWorkflowTemplatesForAsset as q, resolveDisplayLabel as r, workOrderExecutionWorkflowDefinition as w };
3275
- //# sourceMappingURL=acorex-platform-module-maintenance-management-client-acorex-platform-module-maintenance-management-client-CGjcOjjv.mjs.map
3360
+ export { AXM_WORK_ORDER_WORKFLOW_DEBUG_NAMESPACE as A, WORK_ORDER_CHECKLIST_ASSET_PREFILL_KEYS as W, AXMMaintenanceIntervalComponent as a, AXMMaintenanceManagementMenuProvider as b, AXMMaintenanceManagementModule as c, AXMMaintenanceManagementPermissionDefinitionProvider as d, AXMMaintenanceManagementSearchCommandProvider as e, createWorkOrderExecutionWorkflowDefinition as f, workOrderExecutionWorkflowName as g, queryWorkflowTemplatesForAsset as q, resolveDisplayLabel as r, workOrderExecutionWorkflowDefinition as w };
3361
+ //# sourceMappingURL=acorex-platform-module-maintenance-management-client-acorex-platform-module-maintenance-management-client-gUetoBL2.mjs.map