@acorex-platform/module-assessment-management-client 2.0.0-next.15 → 2.0.0-next.17

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 (82) hide show
  1. package/fesm2022/{acorex-platform-module-assessment-management-client-acorex-platform-module-assessment-management-client-B1yNgUHo.mjs → acorex-platform-module-assessment-management-client-acorex-platform-module-assessment-management-client-5wbq3eEn.mjs} +67 -69
  2. package/fesm2022/acorex-platform-module-assessment-management-client-acorex-platform-module-assessment-management-client-5wbq3eEn.mjs.map +1 -0
  3. package/fesm2022/{acorex-platform-module-assessment-management-client-assessment-session-answers-view.util-42ZcOY2C.mjs → acorex-platform-module-assessment-management-client-assessment-session-answers-view.util-D5gUv0HJ.mjs} +4 -4
  4. package/fesm2022/acorex-platform-module-assessment-management-client-assessment-session-answers-view.util-D5gUv0HJ.mjs.map +1 -0
  5. package/fesm2022/{acorex-platform-module-assessment-management-client-assessment-voice.commands-BSQkFj76.mjs → acorex-platform-module-assessment-management-client-assessment-voice.commands-C05ceRIS.mjs} +2 -2
  6. package/fesm2022/{acorex-platform-module-assessment-management-client-assessment-voice.commands-BSQkFj76.mjs.map → acorex-platform-module-assessment-management-client-assessment-voice.commands-C05ceRIS.mjs.map} +1 -1
  7. package/fesm2022/acorex-platform-module-assessment-management-client-contracts-entities-assessment-session.mjs +1 -1
  8. package/fesm2022/acorex-platform-module-assessment-management-client-contracts-entities-assessment-session.mjs.map +1 -1
  9. package/fesm2022/{acorex-platform-module-assessment-management-client-contracts-entity-catalog-acorex-platform-module-assessment-management-client-contracts-entity-catalog-Buqp2FnP.mjs → acorex-platform-module-assessment-management-client-contracts-entity-catalog-acorex-platform-module-assessment-management-client-contracts-entity-catalog-CgUoWW8B.mjs} +6 -6
  10. package/fesm2022/{acorex-platform-module-assessment-management-client-contracts-entity-catalog-acorex-platform-module-assessment-management-client-contracts-entity-catalog-Buqp2FnP.mjs.map → acorex-platform-module-assessment-management-client-contracts-entity-catalog-acorex-platform-module-assessment-management-client-contracts-entity-catalog-CgUoWW8B.mjs.map} +1 -1
  11. package/fesm2022/{acorex-platform-module-assessment-management-client-contracts-entity-catalog-assessment-case.entity-IAO_eHLl.mjs → acorex-platform-module-assessment-management-client-contracts-entity-catalog-assessment-case.entity-GDJX71dY.mjs} +2 -2
  12. package/fesm2022/{acorex-platform-module-assessment-management-client-contracts-entity-catalog-assessment-case.entity-IAO_eHLl.mjs.map → acorex-platform-module-assessment-management-client-contracts-entity-catalog-assessment-case.entity-GDJX71dY.mjs.map} +1 -1
  13. package/fesm2022/{acorex-platform-module-assessment-management-client-contracts-entity-catalog-assessment-session.entity-BVVzsiLh.mjs → acorex-platform-module-assessment-management-client-contracts-entity-catalog-assessment-session.entity-tP9SU7u8.mjs} +3 -3
  14. package/fesm2022/acorex-platform-module-assessment-management-client-contracts-entity-catalog-assessment-session.entity-tP9SU7u8.mjs.map +1 -0
  15. package/fesm2022/{acorex-platform-module-assessment-management-client-contracts-entity-catalog-question-bank-item.entity-WON7pvW1.mjs → acorex-platform-module-assessment-management-client-contracts-entity-catalog-question-bank-item.entity-BSXs6_z8.mjs} +2 -2
  16. package/fesm2022/{acorex-platform-module-assessment-management-client-contracts-entity-catalog-question-bank-item.entity-WON7pvW1.mjs.map → acorex-platform-module-assessment-management-client-contracts-entity-catalog-question-bank-item.entity-BSXs6_z8.mjs.map} +1 -1
  17. package/fesm2022/{acorex-platform-module-assessment-management-client-contracts-entity-catalog-questionnaire.entity-BZ5FdPuP.mjs → acorex-platform-module-assessment-management-client-contracts-entity-catalog-questionnaire.entity-a63MvFoX.mjs} +2 -2
  18. package/fesm2022/{acorex-platform-module-assessment-management-client-contracts-entity-catalog-questionnaire.entity-BZ5FdPuP.mjs.map → acorex-platform-module-assessment-management-client-contracts-entity-catalog-questionnaire.entity-a63MvFoX.mjs.map} +1 -1
  19. package/fesm2022/{acorex-platform-module-assessment-management-client-contracts-entity-catalog-template.entity-L_p7_kL1.mjs → acorex-platform-module-assessment-management-client-contracts-entity-catalog-template.entity-DWRFJCah.mjs} +2 -2
  20. package/fesm2022/{acorex-platform-module-assessment-management-client-contracts-entity-catalog-template.entity-L_p7_kL1.mjs.map → acorex-platform-module-assessment-management-client-contracts-entity-catalog-template.entity-DWRFJCah.mjs.map} +1 -1
  21. package/fesm2022/acorex-platform-module-assessment-management-client-contracts-entity-catalog.mjs +1 -1
  22. package/fesm2022/acorex-platform-module-assessment-management-client-contracts.mjs +205 -1
  23. package/fesm2022/acorex-platform-module-assessment-management-client-contracts.mjs.map +1 -1
  24. package/fesm2022/{acorex-platform-module-assessment-management-client-fill-assessment-session.command-CElnTi9H.mjs → acorex-platform-module-assessment-management-client-fill-assessment-session.command-xJKBN_ld.mjs} +5 -5
  25. package/fesm2022/acorex-platform-module-assessment-management-client-fill-assessment-session.command-xJKBN_ld.mjs.map +1 -0
  26. package/fesm2022/{acorex-platform-module-assessment-management-client-form-template-viewer-popup.component-kpTxVOy6.mjs → acorex-platform-module-assessment-management-client-form-template-viewer-popup.component-BJR4IfPd.mjs} +2 -2
  27. package/fesm2022/{acorex-platform-module-assessment-management-client-form-template-viewer-popup.component-kpTxVOy6.mjs.map → acorex-platform-module-assessment-management-client-form-template-viewer-popup.component-BJR4IfPd.mjs.map} +1 -1
  28. package/fesm2022/{acorex-platform-module-assessment-management-client-form-template-viewer.service-C3wctwpK.mjs → acorex-platform-module-assessment-management-client-form-template-viewer.service-R-ggiWLO.mjs} +3 -3
  29. package/fesm2022/{acorex-platform-module-assessment-management-client-form-template-viewer.service-C3wctwpK.mjs.map → acorex-platform-module-assessment-management-client-form-template-viewer.service-R-ggiWLO.mjs.map} +1 -1
  30. package/fesm2022/{acorex-platform-module-assessment-management-client-index-CCA6Wa_b.mjs → acorex-platform-module-assessment-management-client-index-BZtiVD2e.mjs} +2 -2
  31. package/fesm2022/{acorex-platform-module-assessment-management-client-index-CCA6Wa_b.mjs.map → acorex-platform-module-assessment-management-client-index-BZtiVD2e.mjs.map} +1 -1
  32. package/fesm2022/{acorex-platform-module-assessment-management-client-open-form-template.command-BxT0-1T5.mjs → acorex-platform-module-assessment-management-client-open-form-template.command-C4081c1C.mjs} +3 -3
  33. package/fesm2022/{acorex-platform-module-assessment-management-client-open-form-template.command-BxT0-1T5.mjs.map → acorex-platform-module-assessment-management-client-open-form-template.command-C4081c1C.mjs.map} +1 -1
  34. package/fesm2022/{acorex-platform-module-assessment-management-client-preview-form-template.command-Co5Y4isL.mjs → acorex-platform-module-assessment-management-client-preview-form-template.command-CBmZ-Bmy.mjs} +2 -2
  35. package/fesm2022/{acorex-platform-module-assessment-management-client-preview-form-template.command-Co5Y4isL.mjs.map → acorex-platform-module-assessment-management-client-preview-form-template.command-CBmZ-Bmy.mjs.map} +1 -1
  36. package/fesm2022/{acorex-platform-module-assessment-management-client-preview-question.command-D_taUb7J.mjs → acorex-platform-module-assessment-management-client-preview-question.command-DVnUPcnM.mjs} +2 -2
  37. package/fesm2022/{acorex-platform-module-assessment-management-client-preview-question.command-D_taUb7J.mjs.map → acorex-platform-module-assessment-management-client-preview-question.command-DVnUPcnM.mjs.map} +1 -1
  38. package/fesm2022/{acorex-platform-module-assessment-management-client-preview-questionnaire.command-DgGL1AS5.mjs → acorex-platform-module-assessment-management-client-preview-questionnaire.command-ZDwi_ANo.mjs} +2 -2
  39. package/fesm2022/{acorex-platform-module-assessment-management-client-preview-questionnaire.command-DgGL1AS5.mjs.map → acorex-platform-module-assessment-management-client-preview-questionnaire.command-ZDwi_ANo.mjs.map} +1 -1
  40. package/fesm2022/{acorex-platform-module-assessment-management-client-question-bank-interface-editor-widget-edit.component-BYMExvs2.mjs → acorex-platform-module-assessment-management-client-question-bank-interface-editor-widget-edit.component-xVopqBXb.mjs} +2 -2
  41. package/fesm2022/{acorex-platform-module-assessment-management-client-question-bank-interface-editor-widget-edit.component-BYMExvs2.mjs.map → acorex-platform-module-assessment-management-client-question-bank-interface-editor-widget-edit.component-xVopqBXb.mjs.map} +1 -1
  42. package/fesm2022/{acorex-platform-module-assessment-management-client-questionnaire-questions-editor-edit.component-pxzk1zlT.mjs → acorex-platform-module-assessment-management-client-questionnaire-questions-editor-edit.component-CzBwueq5.mjs} +2 -2
  43. package/fesm2022/{acorex-platform-module-assessment-management-client-questionnaire-questions-editor-edit.component-pxzk1zlT.mjs.map → acorex-platform-module-assessment-management-client-questionnaire-questions-editor-edit.component-CzBwueq5.mjs.map} +1 -1
  44. package/fesm2022/{acorex-platform-module-assessment-management-client-questionnaire-viewer-edit.component-CFm6Qm1N.mjs → acorex-platform-module-assessment-management-client-questionnaire-viewer-edit.component-dQVv8Byi.mjs} +2 -2
  45. package/fesm2022/{acorex-platform-module-assessment-management-client-questionnaire-viewer-edit.component-CFm6Qm1N.mjs.map → acorex-platform-module-assessment-management-client-questionnaire-viewer-edit.component-dQVv8Byi.mjs.map} +1 -1
  46. package/fesm2022/{acorex-platform-module-assessment-management-client-questionnaire-viewer-popup.component-Cm-HOUyp.mjs → acorex-platform-module-assessment-management-client-questionnaire-viewer-popup.component-C7NKQ3JK.mjs} +2 -2
  47. package/fesm2022/{acorex-platform-module-assessment-management-client-questionnaire-viewer-popup.component-Cm-HOUyp.mjs.map → acorex-platform-module-assessment-management-client-questionnaire-viewer-popup.component-C7NKQ3JK.mjs.map} +1 -1
  48. package/fesm2022/{acorex-platform-module-assessment-management-client-related-content-viewer-page-component.provider-6A3qpuk_.mjs → acorex-platform-module-assessment-management-client-related-content-viewer-page-component.provider-C30AdJgp.mjs} +2 -2
  49. package/fesm2022/{acorex-platform-module-assessment-management-client-related-content-viewer-page-component.provider-6A3qpuk_.mjs.map → acorex-platform-module-assessment-management-client-related-content-viewer-page-component.provider-C30AdJgp.mjs.map} +1 -1
  50. package/fesm2022/{acorex-platform-module-assessment-management-client-review-assessment-session.command-t6HEIXBh.mjs → acorex-platform-module-assessment-management-client-review-assessment-session.command-CUgxOyhV.mjs} +5 -5
  51. package/fesm2022/acorex-platform-module-assessment-management-client-review-assessment-session.command-CUgxOyhV.mjs.map +1 -0
  52. package/fesm2022/{acorex-platform-module-assessment-management-client-show-form-template-viewer-popup.command-CCo55_Qy.mjs → acorex-platform-module-assessment-management-client-show-form-template-viewer-popup.command-D4XOgSLK.mjs} +3 -3
  53. package/fesm2022/{acorex-platform-module-assessment-management-client-show-form-template-viewer-popup.command-CCo55_Qy.mjs.map → acorex-platform-module-assessment-management-client-show-form-template-viewer-popup.command-D4XOgSLK.mjs.map} +1 -1
  54. package/fesm2022/{acorex-platform-module-assessment-management-client-show-questionnaire-questions-popup.command-D4lNjvkc.mjs → acorex-platform-module-assessment-management-client-show-questionnaire-questions-popup.command-HMUwV7JV.mjs} +2 -2
  55. package/fesm2022/{acorex-platform-module-assessment-management-client-show-questionnaire-questions-popup.command-D4lNjvkc.mjs.map → acorex-platform-module-assessment-management-client-show-questionnaire-questions-popup.command-HMUwV7JV.mjs.map} +1 -1
  56. package/fesm2022/{acorex-platform-module-assessment-management-client-show-questionnaire-viewer-popup.command-Dmpq5r8w.mjs → acorex-platform-module-assessment-management-client-show-questionnaire-viewer-popup.command-qxFtVjPL.mjs} +2 -2
  57. package/fesm2022/{acorex-platform-module-assessment-management-client-show-questionnaire-viewer-popup.command-Dmpq5r8w.mjs.map → acorex-platform-module-assessment-management-client-show-questionnaire-viewer-popup.command-qxFtVjPL.mjs.map} +1 -1
  58. package/fesm2022/{acorex-platform-module-assessment-management-client-template-widget-edit.component-DjRhnQ_2.mjs → acorex-platform-module-assessment-management-client-template-widget-edit.component-ToNSOrm0.mjs} +2 -2
  59. package/fesm2022/{acorex-platform-module-assessment-management-client-template-widget-edit.component-DjRhnQ_2.mjs.map → acorex-platform-module-assessment-management-client-template-widget-edit.component-ToNSOrm0.mjs.map} +1 -1
  60. package/fesm2022/{acorex-platform-module-assessment-management-client-test-sheet-cell-type-widget-edit.component-bqMfQX5s.mjs → acorex-platform-module-assessment-management-client-test-sheet-cell-type-widget-edit.component-IrGyg6gp.mjs} +2 -2
  61. package/fesm2022/{acorex-platform-module-assessment-management-client-test-sheet-cell-type-widget-edit.component-bqMfQX5s.mjs.map → acorex-platform-module-assessment-management-client-test-sheet-cell-type-widget-edit.component-IrGyg6gp.mjs.map} +1 -1
  62. package/fesm2022/{acorex-platform-module-assessment-management-client-test-sheet-grid.component-DNvmkJMG.mjs → acorex-platform-module-assessment-management-client-test-sheet-grid.component-YuI3fd0M.mjs} +3 -3
  63. package/fesm2022/{acorex-platform-module-assessment-management-client-test-sheet-grid.component-DNvmkJMG.mjs.map → acorex-platform-module-assessment-management-client-test-sheet-grid.component-YuI3fd0M.mjs.map} +1 -1
  64. package/fesm2022/{acorex-platform-module-assessment-management-client-test-sheet-schema-widget-edit.component-DFZHs-Hw.mjs → acorex-platform-module-assessment-management-client-test-sheet-schema-widget-edit.component-Bj3yQcnK.mjs} +3 -3
  65. package/fesm2022/{acorex-platform-module-assessment-management-client-test-sheet-schema-widget-edit.component-DFZHs-Hw.mjs.map → acorex-platform-module-assessment-management-client-test-sheet-schema-widget-edit.component-Bj3yQcnK.mjs.map} +1 -1
  66. package/fesm2022/{acorex-platform-module-assessment-management-client-test-sheet-widget-edit.component-C2Z07VIS.mjs → acorex-platform-module-assessment-management-client-test-sheet-widget-edit.component-jiWQ9kKS.mjs} +3 -3
  67. package/fesm2022/{acorex-platform-module-assessment-management-client-test-sheet-widget-edit.component-C2Z07VIS.mjs.map → acorex-platform-module-assessment-management-client-test-sheet-widget-edit.component-jiWQ9kKS.mjs.map} +1 -1
  68. package/fesm2022/{acorex-platform-module-assessment-management-client-test-sheet-widget-view.component-BiwpePsD.mjs → acorex-platform-module-assessment-management-client-test-sheet-widget-view.component-DKTfJTSJ.mjs} +3 -3
  69. package/fesm2022/{acorex-platform-module-assessment-management-client-test-sheet-widget-view.component-BiwpePsD.mjs.map → acorex-platform-module-assessment-management-client-test-sheet-widget-view.component-DKTfJTSJ.mjs.map} +1 -1
  70. package/fesm2022/{acorex-platform-module-assessment-management-client-test-sheet.util-BJ6fQUri.mjs → acorex-platform-module-assessment-management-client-test-sheet.util-Dtmdv9Za.mjs} +2 -2
  71. package/fesm2022/{acorex-platform-module-assessment-management-client-test-sheet.util-BJ6fQUri.mjs.map → acorex-platform-module-assessment-management-client-test-sheet.util-Dtmdv9Za.mjs.map} +1 -1
  72. package/fesm2022/{acorex-platform-module-assessment-management-client-view-session-answers.command-C008SY9U.mjs → acorex-platform-module-assessment-management-client-view-session-answers.command-Dkv_lnpQ.mjs} +6 -6
  73. package/fesm2022/acorex-platform-module-assessment-management-client-view-session-answers.command-Dkv_lnpQ.mjs.map +1 -0
  74. package/fesm2022/acorex-platform-module-assessment-management-client.mjs +1 -1
  75. package/package.json +3 -3
  76. package/types/acorex-platform-module-assessment-management-client-contracts.d.ts +36 -3
  77. package/fesm2022/acorex-platform-module-assessment-management-client-acorex-platform-module-assessment-management-client-B1yNgUHo.mjs.map +0 -1
  78. package/fesm2022/acorex-platform-module-assessment-management-client-assessment-session-answers-view.util-42ZcOY2C.mjs.map +0 -1
  79. package/fesm2022/acorex-platform-module-assessment-management-client-contracts-entity-catalog-assessment-session.entity-BVVzsiLh.mjs.map +0 -1
  80. package/fesm2022/acorex-platform-module-assessment-management-client-fill-assessment-session.command-CElnTi9H.mjs.map +0 -1
  81. package/fesm2022/acorex-platform-module-assessment-management-client-review-assessment-session.command-t6HEIXBh.mjs.map +0 -1
  82. package/fesm2022/acorex-platform-module-assessment-management-client-view-session-answers.command-C008SY9U.mjs.map +0 -1
@@ -2,10 +2,10 @@ import { AXTranslationService } from '@acorex/core/translation';
2
2
  import * as i0 from '@angular/core';
3
3
  import { inject, Injectable } from '@angular/core';
4
4
  import { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';
5
- import { isString, isEmpty, toString, get, defaultTo, first } from 'lodash';
6
- import { h as AXMQuestionnaireViewerService } from './acorex-platform-module-assessment-management-client-acorex-platform-module-assessment-management-client-B1yNgUHo.mjs';
7
- import { RootConfig } from '@acorex-platform/module-assessment-management-client/contracts';
8
- import { o as openAssessmentSessionAnswersView } from './acorex-platform-module-assessment-management-client-assessment-session-answers-view.util-42ZcOY2C.mjs';
5
+ import { isString, isEmpty, toString, get, first, defaultTo } from 'lodash';
6
+ import { h as AXMQuestionnaireViewerService } from './acorex-platform-module-assessment-management-client-acorex-platform-module-assessment-management-client-5wbq3eEn.mjs';
7
+ import { toPersistedAnswers, RootConfig } from '@acorex-platform/module-assessment-management-client/contracts';
8
+ import { o as openAssessmentSessionAnswersView } from './acorex-platform-module-assessment-management-client-assessment-session-answers-view.util-D5gUv0HJ.mjs';
9
9
 
10
10
  //#endregion
11
11
  //#region ---- View Session Answers Command ----
@@ -103,7 +103,7 @@ class ViewSessionAnswersCommand {
103
103
  return {
104
104
  ...row,
105
105
  id: sessionId,
106
- answers: defaultTo(get(row, 'answers'), {}),
106
+ answers: toPersistedAnswers(get(row, 'answers')),
107
107
  };
108
108
  }
109
109
  const sessionAccessor = this.entityService
@@ -277,4 +277,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
277
277
  }] });
278
278
 
279
279
  export { ViewSessionAnswersCommand };
280
- //# sourceMappingURL=acorex-platform-module-assessment-management-client-view-session-answers.command-C008SY9U.mjs.map
280
+ //# sourceMappingURL=acorex-platform-module-assessment-management-client-view-session-answers.command-Dkv_lnpQ.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-module-assessment-management-client-view-session-answers.command-Dkv_lnpQ.mjs","sources":["../../../../libs/modules/assessment-management/client/src/lib/features/questionnaire-viewer/commands/view-session-answers.command.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { AXPRuntimeCommandResult } from '@acorex-platform/framework-shared/core';\n\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { Injectable, inject } from '@angular/core';\nimport { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\nimport { defaultTo, first, get, isEmpty, isString, toString } from 'lodash';\nimport { AXMQuestionnaireViewerService } from '../questionnaire-viewer.service';\nimport type { AXMAssessmentManagementAssessmentCaseEntityModel } from '@acorex-platform/module-assessment-management-client/contracts';\nimport type { AXMAssessmentManagementAssessmentSessionEntityModel } from '@acorex-platform/module-assessment-management-client/contracts';\nimport { RootConfig, toPersistedAnswers } from '@acorex-platform/module-assessment-management-client/contracts';\nimport { openAssessmentSessionAnswersView, type OpenAssessmentSessionAnswersInitialStep } from '../utils/assessment-session-answers-view.util';\n\n//#endregion\n\n//#region ---- Command Input/Output Types ----\n\n/**\n * Input for ViewSessionAnswers command.\n */\nexport interface ViewSessionAnswersCommandInput {\n /**\n * Assessment Case ID. Required when `sessionId` is omitted; used to resolve the latest session.\n */\n caseId?: string;\n\n /**\n * Assessment Session ID to view answers for. When omitted, the latest session for `caseId` is used.\n */\n sessionId?: string;\n\n /**\n * When `results`, opens the readonly viewer on the outcome results step (requires stored session outcomes).\n */\n initialStep?: OpenAssessmentSessionAnswersInitialStep;\n}\n\n/** Entity list passes evaluated action options on `options` / row `data`. */\ntype ViewSessionAnswersCommandInvocation = ViewSessionAnswersCommandInput & {\n data?: Record<string, unknown>;\n options?: Partial<ViewSessionAnswersCommandInput>;\n};\n\n//#endregion\n\n//#region ---- View Session Answers Command ----\n\n/**\n * Command that opens a readonly view of assessment session answers in a dialog.\n */\n@Injectable()\nexport class ViewSessionAnswersCommand implements AXPCommand<ViewSessionAnswersCommandInput, void> {\n //#region ---- Services & Dependencies ----\n\n private readonly entityService = inject(AXPEntityService);\n private readonly questionnaireViewerService = inject(AXMQuestionnaireViewerService);\n private readonly translationService = inject(AXTranslationService);\n\n //#endregion\n\n //#region ---- Command Implementation ----\n\n /**\n * Returns a non-empty string or undefined.\n */\n private asNonEmptyString(value: unknown): string | undefined {\n if (isString(value) && !isEmpty(value)) {\n return value;\n }\n if (value != null && !isString(value)) {\n const normalized = toString(value).trim();\n return isEmpty(normalized) ? undefined : normalized;\n }\n return undefined;\n }\n\n /**\n * Resolves session id from root input, action options, or related-list row data.\n */\n private resolveSessionId(input: ViewSessionAnswersCommandInvocation): string | null {\n const candidates = [\n get(input, 'sessionId'),\n get(input, 'options.sessionId'),\n get(input, 'options.sessionId'),\n ];\n\n for (const candidate of candidates) {\n const resolved = this.asNonEmptyString(candidate);\n if (resolved) {\n return resolved;\n }\n }\n\n const row = get(input, 'data') as Record<string, unknown> | undefined;\n if (row && this.asNonEmptyString(get(row, 'caseId'))) {\n return this.asNonEmptyString(get(row, 'id')) ?? null;\n }\n\n return null;\n }\n\n /**\n * Resolves case id from root input, action options, or list row data.\n */\n private resolveCaseId(input: ViewSessionAnswersCommandInvocation): string | null {\n const candidates = [\n get(input, 'caseId'),\n get(input, 'options.caseId'),\n get(input, 'options.caseId'),\n ];\n\n for (const candidate of candidates) {\n const resolved = this.asNonEmptyString(candidate);\n if (resolved) {\n return resolved;\n }\n }\n\n const row = get(input, 'data') as Record<string, unknown> | undefined;\n if (row && !this.asNonEmptyString(get(row, 'caseId'))) {\n return this.asNonEmptyString(get(row, 'id')) ?? null;\n }\n\n return null;\n }\n\n /**\n * Resolves initial viewer step from root input or action options.\n */\n private resolveInitialStep(input: ViewSessionAnswersCommandInvocation): OpenAssessmentSessionAnswersInitialStep {\n const candidates = [\n get(input, 'initialStep'),\n get(input, 'options.initialStep'),\n get(input, 'options.initialStep'),\n ];\n\n for (const candidate of candidates) {\n const normalized = this.asNonEmptyString(candidate);\n if (normalized === 'results') {\n return 'results';\n }\n }\n\n return 'answers';\n }\n\n /**\n * Loads session from related-list row data, list query, or byKey (in that order).\n */\n private async loadSession(\n sessionId: string,\n input: ViewSessionAnswersCommandInvocation,\n ): Promise<AXMAssessmentManagementAssessmentSessionEntityModel | null> {\n const row = get(input, 'data') as Record<string, unknown> | undefined;\n const rowCaseId = this.asNonEmptyString(get(row, 'caseId'));\n\n if (row && rowCaseId) {\n return {\n ...(row as unknown as AXMAssessmentManagementAssessmentSessionEntityModel),\n id: sessionId,\n answers: toPersistedAnswers(get(row, 'answers')),\n };\n }\n\n const sessionAccessor = this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.assessmentSession.name)\n .data<string, AXMAssessmentManagementAssessmentSessionEntityModel>();\n\n const listMatch = await sessionAccessor.query({\n skip: 0,\n take: 1,\n filter: {\n field: 'id',\n operator: { type: 'equal' },\n value: sessionId,\n },\n });\n\n const fromQuery = first(listMatch.items);\n if (fromQuery) {\n return fromQuery;\n }\n\n return defaultTo(await sessionAccessor.byKey(sessionId), null);\n }\n\n /**\n * Loads case by id using query first, then byKey.\n */\n private async loadCase(caseId: string): Promise<AXMAssessmentManagementAssessmentCaseEntityModel | null> {\n const caseAccessor = this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.assessmentCase.name)\n .data<string, AXMAssessmentManagementAssessmentCaseEntityModel>();\n\n const listMatch = await caseAccessor.query({\n skip: 0,\n take: 1,\n filter: {\n field: 'id',\n operator: { type: 'equal' },\n value: caseId,\n },\n });\n\n const fromQuery = first(listMatch.items);\n if (fromQuery) {\n return fromQuery;\n }\n\n return defaultTo(await caseAccessor.byKey(caseId), null);\n }\n\n /**\n * Finds the latest session record for a case (by lastSavedAt, then createdAt).\n */\n private async findLatestSession(\n caseId: string,\n ): Promise<AXMAssessmentManagementAssessmentSessionEntityModel | null> {\n const sessionAccessor = this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.assessmentSession.name)\n .data<string, AXMAssessmentManagementAssessmentSessionEntityModel>();\n\n const listMatch = await sessionAccessor.query({\n skip: 0,\n take: 1,\n sort: [\n { field: 'lastSavedAt', dir: 'desc' },\n { field: 'createdAt', dir: 'desc' },\n ],\n filter: {\n field: 'caseId',\n operator: { type: 'equal' },\n value: caseId,\n },\n });\n\n return first(listMatch.items) ?? null;\n }\n\n async execute(input: ViewSessionAnswersCommandInvocation): AXPCommandExecuteResultPromise<void> {\n try {\n const sessionId = this.resolveSessionId(input);\n const caseId = this.resolveCaseId(input);\n\n if (!sessionId && !caseId) {\n return {\n success: false,\n message: {\n text: 'Assessment case ID or session ID is required',\n },\n };\n }\n\n let session: AXMAssessmentManagementAssessmentSessionEntityModel | null = null;\n let assessmentCase: AXMAssessmentManagementAssessmentCaseEntityModel | null = null;\n\n if (sessionId) {\n session = await this.loadSession(sessionId, input);\n if (!session) {\n return {\n success: false,\n message: {\n text: `Assessment session with ID ${sessionId} not found`,\n },\n };\n }\n\n const resolvedCaseId = this.asNonEmptyString(get(session, 'caseId')) ?? caseId;\n if (!resolvedCaseId) {\n return {\n success: false,\n message: {\n text: 'Assessment session is missing caseId',\n },\n };\n }\n\n assessmentCase = await this.loadCase(resolvedCaseId);\n if (!assessmentCase) {\n return {\n success: false,\n message: {\n text: `Assessment case with ID ${resolvedCaseId} not found`,\n },\n };\n }\n } else if (caseId) {\n assessmentCase = await this.loadCase(caseId);\n if (!assessmentCase) {\n return {\n success: false,\n message: {\n text: `Assessment case with ID ${caseId} not found`,\n },\n };\n }\n\n session = await this.findLatestSession(caseId);\n if (!session) {\n const messageKey = '@assessment-management:cases.actions.view-last-session-answers.no-session';\n const messageText =\n (await this.translationService.translateAsync(messageKey)) ||\n 'No assessment session found for this case';\n return {\n success: false,\n message: {\n text: messageText,\n },\n };\n }\n }\n\n if (!session || !assessmentCase) {\n return {\n success: false,\n message: {\n text: 'Unable to resolve assessment session answers',\n },\n };\n }\n\n const initialStep = this.resolveInitialStep(input);\n if (initialStep === 'results' && isEmpty(get(session, 'outcomes'))) {\n return {\n success: false,\n message: {\n text: await this.translationService.translateAsync(\n '@assessment-management:sessions.actions.view-outcomes.empty',\n ),\n },\n };\n }\n\n await openAssessmentSessionAnswersView(\n {\n entityService: this.entityService,\n questionnaireViewerService: this.questionnaireViewerService,\n translationService: this.translationService,\n },\n session,\n assessmentCase,\n { initialStep },\n );\n\n return { success: true, kind: 'object', data: undefined,\n };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Unknown error';\n return {\n success: false,\n message: {\n text: `Error viewing session answers: ${message}`,\n },\n };\n }\n }\n\n //#endregion\n}\n\n//#endregion\n"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export { C as AXMAssessmentManagementFeatureDefinitionProvider, D as AXMAssessmentManagementMenuProvider, E as AXMAssessmentManagementModule, G as AXMAssessmentManagementPermissionDefinitionProvider, H as AXMAssessmentManagementSearchCommandProvider, I as AXMQuestionnaireViewerPageComponent, h as AXMQuestionnaireViewerService, J as AXMQuestionnaireViewerStandalonePageComponent, w as resolveWidgetNodeFromMetaDataDefinitionInterface, v as stripQuestionBankInterfaceMetadata } from './acorex-platform-module-assessment-management-client-acorex-platform-module-assessment-management-client-B1yNgUHo.mjs';
1
+ export { C as AXMAssessmentManagementFeatureDefinitionProvider, D as AXMAssessmentManagementMenuProvider, E as AXMAssessmentManagementModule, G as AXMAssessmentManagementPermissionDefinitionProvider, H as AXMAssessmentManagementSearchCommandProvider, I as AXMQuestionnaireViewerPageComponent, h as AXMQuestionnaireViewerService, J as AXMQuestionnaireViewerStandalonePageComponent, w as resolveWidgetNodeFromMetaDataDefinitionInterface, v as stripQuestionBankInterfaceMetadata } from './acorex-platform-module-assessment-management-client-acorex-platform-module-assessment-management-client-5wbq3eEn.mjs';
2
2
  //# sourceMappingURL=acorex-platform-module-assessment-management-client.mjs.map
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@acorex-platform/module-assessment-management-client",
3
- "version": "2.0.0-next.15",
3
+ "version": "2.0.0-next.17",
4
4
  "sideEffects": false,
5
5
  "peerDependencies": {
6
- "@acorex-platform/extension-ai-voice-shell-client": "2.0.0-next.15",
7
- "@acorex-platform/module-content-management-client": "2.0.0-next.15",
6
+ "@acorex-platform/extension-ai-voice-shell-client": "2.0.0-next.17",
7
+ "@acorex-platform/module-content-management-client": "2.0.0-next.17",
8
8
  "@angular/common": "^21.0.0 || ^22.0.0",
9
9
  "@angular/core": "^21.0.0 || ^22.0.0"
10
10
  },
@@ -497,6 +497,38 @@ interface AXMAssessmentManagementAssessmentCaseEntityModel extends AXPEntityMode
497
497
  statusId?: AXMAssessmentCaseStatus;
498
498
  }
499
499
 
500
+ /**
501
+ * One saved questionnaire answer on an assessment session.
502
+ * `key` is the question item name. `order` is that item's `order`.
503
+ */
504
+ interface AXMAssessmentSessionAnswer {
505
+ key: string;
506
+ order: number;
507
+ value: unknown;
508
+ comment?: string;
509
+ }
510
+ /**
511
+ * Viewer context map (`answers.<key>`, plus `answers.comments.<key>`).
512
+ * Accepts the persisted array and the older object document.
513
+ */
514
+ declare function toViewerAnswers(stored: unknown): Record<string, unknown>;
515
+ /**
516
+ * Persists the viewer map as an ordered answer array.
517
+ * Question `order` comes from `structure`. Keys already stored keep their order when the structure has no match.
518
+ * Empty answers are omitted. A comment without a value is kept.
519
+ */
520
+ declare function toPersistedAnswers(viewerOrStored: unknown, structure?: QuestionnaireBuilderValue | null, previousStored?: unknown): AXMAssessmentSessionAnswer[];
521
+ /** True when the stored document has at least one answer or comment. */
522
+ declare function storedAnswersHaveContent(stored: unknown): boolean;
523
+ /**
524
+ * Fills missing answer keys and always returns the persisted array.
525
+ * Existing values, including `false` and `0`, are left in place.
526
+ */
527
+ declare function mergeMissingPersistedAnswers(stored: unknown, prefill: Record<string, unknown>, structure?: QuestionnaireBuilderValue | null): {
528
+ answers: AXMAssessmentSessionAnswer[];
529
+ changed: boolean;
530
+ };
531
+
500
532
  type AXMAssessmentSessionRole = 'responder' | 'supervisor' | 'reviewer';
501
533
  type AXMAssessmentSessionStatus = 'not-started' | 'in-progress' | 'submitted' | 'under-review' | 'approved' | 'rejected' | 'completed';
502
534
  interface AXMAssessmentManagementAssessmentSessionEntityModel extends AXPEntityModel<string> {
@@ -510,7 +542,8 @@ interface AXMAssessmentManagementAssessmentSessionEntityModel extends AXPEntityM
510
542
  timeSpent?: number;
511
543
  progressPercentage: number;
512
544
  answeredQuestionsCount: number;
513
- answers: Record<string, unknown>;
545
+ /** Saved answers, ordered like the questionnaire items (`key` + `order` + `value`). */
546
+ answers: AXMAssessmentSessionAnswer[];
514
547
  /**
515
548
  * Evaluated questionnaire outcome values (rule `name` → value), snapshot at submit.
516
549
  */
@@ -896,5 +929,5 @@ interface AXMFormTemplateListItemDto extends AXPEntityListItemDto<string> {
896
929
  }[];
897
930
  }
898
931
 
899
- export { ASSESSMENT_PRINT_CONTENT_WIDTH_MM, ASSESSMENT_PRINT_HTML_GZIP_ENCODING, ASSESSMENT_PRINT_PAGE_FORMAT, AXMAssessmentManagementFeatureKeys, AXMAssessmentManagementPermissionKeys, AXMFormTemplateTypes, AXM_ASSESSMENT_PRINT_MERGE_KEYS, AXM_ASSESSMENT_SESSION_PREVIEW_PDF_CLIENT_COMMAND_KEY, AXM_ASSESSMENT_SESSION_PREVIEW_PDF_COMMAND_KEY, AXPAssessmentManagementMenuKeys, AXPContentDocumentsPermissionKeys, AXPFormTemplateManagementMenuKeys, AXPFormTemplateManagementPermissionKeys, AXPFormTemplateSettings, AXPSafetyRiskPermissionKeys, AssessmentManagementManifest, DEFAULT_POST_QUESTIONNAIRE_CONFIG, DEFAULT_PRE_QUESTIONNAIRE_CONFIG, DEFAULT_QUESTIONNAIRE_ENTITY_DISPLAY, DEFAULT_QUESTIONNAIRE_ENTITY_PRINT, DEFAULT_QUESTIONNAIRE_OUTCOMES, DEFAULT_QUESTIONNAIRE_PRINT_SETTINGS, DEFAULT_QUESTION_COMMENT_CONFIG, DEFAULT_QUESTION_HINT_CONFIG, PRINT_PAGE_LETTERHEAD_BOTTOM_MARGIN_MM, PRINT_PAGE_LETTERHEAD_TOP_MARGIN_MM, PRINT_PAGE_SIDE_MARGIN_MM, QUESTIONNAIRE_ITEM_COL_SPANS, QUESTIONNAIRE_OUTCOMES_PAGE_COMPONENT_KEY, QUESTIONNAIRE_QUESTIONS_PAGE_COMPONENT_KEY, RootConfig, applyQuestionnairePrintHeader, buildQuestionnairePrintBodyHtml, buildQuestionnairePrintHeaderRegion, buildQuestionnaireQuestionCardHtml, buildQuestionnaireSessionBodyHtml, coerceQuestionnaireItemColSpan, commentConfigForEditForm, diffQuestionCommentOverride, diffQuestionHintOverride, escapePrintDocumentText, extractPrintDocumentBodyHtml, findDuplicateOutcomeNames, flattenQuestionnaireOutcomeItems, formatPrintAnswerText, getQuestionAnswerCommentStoragePath, getQuestionCommentVisibilityFlag, isQuestionnaireOutcomeDisplayColorHex, matchesQuestionnaireOutcomeDisplayRule, mergeQuestionCommentConfig, mergeQuestionHintForViewer, minifyPrintHtml, normalizeCompletionMode, normalizePrintOrientation, normalizePrintPaperSize, normalizePrintWatermark, normalizeQuestionCommentConfig, normalizeQuestionHintConfig, normalizeQuestionHintFromEntityRow, normalizeQuestionHintMode, normalizeQuestionnaireOutcomeDisplayRules, normalizeQuestionnaireOutcomesValue, normalizeValidationStrategy, normalizeViewMode, parseQuestionHintPartialFromRecord, parseQuestionnaireOutcomeDisplayColor, questionnaireItemLayoutOverride, readHintFieldsFromRecord, readQuestionnaireItemColSpan, resolvePrintContentWidthMm, resolvePrintLetterheadPdfMargin, resolvePrintPaging, resolvePrintPdfPageOptions, resolvePrintPlainText, resolvePrintSettings, toDisplaySettings, toPrePostConfig, toPrintSettings, wrapPrintDocument };
900
- export type { AXMAssessmentCaseStatus, AXMAssessmentManagementAssessmentCaseEntityModel, AXMAssessmentManagementAssessmentSessionEntityModel, AXMAssessmentManagementQuestionBankItemEntityModel, AXMAssessmentManagementQuestionnaireEntityModel, AXMAssessmentPrintMergeKey, AXMAssessmentQuestionCommentConfig, AXMAssessmentQuestionHintConfig, AXMAssessmentQuestionHintConfigOff, AXMAssessmentQuestionHintConfigShown, AXMAssessmentQuestionHintMode, AXMAssessmentQuestionHintPartial, AXMAssessmentQuestionHintVisualMode, AXMAssessmentSessionPreviewPdfRequest, AXMAssessmentSessionPreviewPdfResult, AXMAssessmentSessionRole, AXMAssessmentSessionStatus, AXMCreateFormTemplateDto, AXMFormTemplateDetailDto, AXMFormTemplateListItemDto, AXMFormTemplateType, AXMFormTemplateTypeOption, AXMQuestionBankItemInterfaceMetadata, AXMQuestionBankItemInterfaceValue, AXMUpdateFormTemplateDto, AssessmentOutcomeItem, AssessmentOutcomesValue, AssessmentPostContent, AssessmentPreContent, PostQuestionnaireConfig, PrePostConfig, PrePostContentValue, PreQuestionnaireConfig, QuestionnaireBuilderValue, QuestionnaireCompletionMode, QuestionnaireDisplaySettings, QuestionnaireEntityDisplaySettings, QuestionnaireEntityPrintSettings, QuestionnaireItemColSpan, QuestionnaireOutcomeDisplayColor, QuestionnaireOutcomeDisplayEmphasis, QuestionnaireOutcomeDisplayIcon, QuestionnaireOutcomeDisplayOperator, QuestionnaireOutcomeDisplayRule, QuestionnaireOutcomeItem, QuestionnaireOutcomeResultKind, QuestionnaireOutcomeSection, QuestionnaireOutcomesValue, QuestionnairePrintBodySection, QuestionnairePrintHeaderInput, QuestionnairePrintOrientation, QuestionnairePrintPaging, QuestionnairePrintPaperSize, QuestionnairePrintQuestionHtml, QuestionnairePrintSettings };
932
+ export { ASSESSMENT_PRINT_CONTENT_WIDTH_MM, ASSESSMENT_PRINT_HTML_GZIP_ENCODING, ASSESSMENT_PRINT_PAGE_FORMAT, AXMAssessmentManagementFeatureKeys, AXMAssessmentManagementPermissionKeys, AXMFormTemplateTypes, AXM_ASSESSMENT_PRINT_MERGE_KEYS, AXM_ASSESSMENT_SESSION_PREVIEW_PDF_CLIENT_COMMAND_KEY, AXM_ASSESSMENT_SESSION_PREVIEW_PDF_COMMAND_KEY, AXPAssessmentManagementMenuKeys, AXPContentDocumentsPermissionKeys, AXPFormTemplateManagementMenuKeys, AXPFormTemplateManagementPermissionKeys, AXPFormTemplateSettings, AXPSafetyRiskPermissionKeys, AssessmentManagementManifest, DEFAULT_POST_QUESTIONNAIRE_CONFIG, DEFAULT_PRE_QUESTIONNAIRE_CONFIG, DEFAULT_QUESTIONNAIRE_ENTITY_DISPLAY, DEFAULT_QUESTIONNAIRE_ENTITY_PRINT, DEFAULT_QUESTIONNAIRE_OUTCOMES, DEFAULT_QUESTIONNAIRE_PRINT_SETTINGS, DEFAULT_QUESTION_COMMENT_CONFIG, DEFAULT_QUESTION_HINT_CONFIG, PRINT_PAGE_LETTERHEAD_BOTTOM_MARGIN_MM, PRINT_PAGE_LETTERHEAD_TOP_MARGIN_MM, PRINT_PAGE_SIDE_MARGIN_MM, QUESTIONNAIRE_ITEM_COL_SPANS, QUESTIONNAIRE_OUTCOMES_PAGE_COMPONENT_KEY, QUESTIONNAIRE_QUESTIONS_PAGE_COMPONENT_KEY, RootConfig, applyQuestionnairePrintHeader, buildQuestionnairePrintBodyHtml, buildQuestionnairePrintHeaderRegion, buildQuestionnaireQuestionCardHtml, buildQuestionnaireSessionBodyHtml, coerceQuestionnaireItemColSpan, commentConfigForEditForm, diffQuestionCommentOverride, diffQuestionHintOverride, escapePrintDocumentText, extractPrintDocumentBodyHtml, findDuplicateOutcomeNames, flattenQuestionnaireOutcomeItems, formatPrintAnswerText, getQuestionAnswerCommentStoragePath, getQuestionCommentVisibilityFlag, isQuestionnaireOutcomeDisplayColorHex, matchesQuestionnaireOutcomeDisplayRule, mergeMissingPersistedAnswers, mergeQuestionCommentConfig, mergeQuestionHintForViewer, minifyPrintHtml, normalizeCompletionMode, normalizePrintOrientation, normalizePrintPaperSize, normalizePrintWatermark, normalizeQuestionCommentConfig, normalizeQuestionHintConfig, normalizeQuestionHintFromEntityRow, normalizeQuestionHintMode, normalizeQuestionnaireOutcomeDisplayRules, normalizeQuestionnaireOutcomesValue, normalizeValidationStrategy, normalizeViewMode, parseQuestionHintPartialFromRecord, parseQuestionnaireOutcomeDisplayColor, questionnaireItemLayoutOverride, readHintFieldsFromRecord, readQuestionnaireItemColSpan, resolvePrintContentWidthMm, resolvePrintLetterheadPdfMargin, resolvePrintPaging, resolvePrintPdfPageOptions, resolvePrintPlainText, resolvePrintSettings, storedAnswersHaveContent, toDisplaySettings, toPersistedAnswers, toPrePostConfig, toPrintSettings, toViewerAnswers, wrapPrintDocument };
933
+ export type { AXMAssessmentCaseStatus, AXMAssessmentManagementAssessmentCaseEntityModel, AXMAssessmentManagementAssessmentSessionEntityModel, AXMAssessmentManagementQuestionBankItemEntityModel, AXMAssessmentManagementQuestionnaireEntityModel, AXMAssessmentPrintMergeKey, AXMAssessmentQuestionCommentConfig, AXMAssessmentQuestionHintConfig, AXMAssessmentQuestionHintConfigOff, AXMAssessmentQuestionHintConfigShown, AXMAssessmentQuestionHintMode, AXMAssessmentQuestionHintPartial, AXMAssessmentQuestionHintVisualMode, AXMAssessmentSessionAnswer, AXMAssessmentSessionPreviewPdfRequest, AXMAssessmentSessionPreviewPdfResult, AXMAssessmentSessionRole, AXMAssessmentSessionStatus, AXMCreateFormTemplateDto, AXMFormTemplateDetailDto, AXMFormTemplateListItemDto, AXMFormTemplateType, AXMFormTemplateTypeOption, AXMQuestionBankItemInterfaceMetadata, AXMQuestionBankItemInterfaceValue, AXMUpdateFormTemplateDto, AssessmentOutcomeItem, AssessmentOutcomesValue, AssessmentPostContent, AssessmentPreContent, PostQuestionnaireConfig, PrePostConfig, PrePostContentValue, PreQuestionnaireConfig, QuestionnaireBuilderValue, QuestionnaireCompletionMode, QuestionnaireDisplaySettings, QuestionnaireEntityDisplaySettings, QuestionnaireEntityPrintSettings, QuestionnaireItemColSpan, QuestionnaireOutcomeDisplayColor, QuestionnaireOutcomeDisplayEmphasis, QuestionnaireOutcomeDisplayIcon, QuestionnaireOutcomeDisplayOperator, QuestionnaireOutcomeDisplayRule, QuestionnaireOutcomeItem, QuestionnaireOutcomeResultKind, QuestionnaireOutcomeSection, QuestionnaireOutcomesValue, QuestionnairePrintBodySection, QuestionnairePrintHeaderInput, QuestionnairePrintOrientation, QuestionnairePrintPaging, QuestionnairePrintPaperSize, QuestionnairePrintQuestionHtml, QuestionnairePrintSettings };