@acorex/modules 21.0.0-next.59 → 21.0.0-next.64

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 (89) hide show
  1. package/assessment-management/README.md +4 -4
  2. package/fesm2022/{acorex-modules-assessment-management-acorex-modules-assessment-management-o8aFazwA.mjs → acorex-modules-assessment-management-acorex-modules-assessment-management-DqmJVJ0z.mjs} +3599 -373
  3. package/fesm2022/acorex-modules-assessment-management-acorex-modules-assessment-management-DqmJVJ0z.mjs.map +1 -0
  4. package/fesm2022/{acorex-modules-assessment-management-assessment-case.entity-yrc_Yybq.mjs → acorex-modules-assessment-management-assessment-case.entity-DhVwPz0T.mjs} +45 -29
  5. package/fesm2022/acorex-modules-assessment-management-assessment-case.entity-DhVwPz0T.mjs.map +1 -0
  6. package/fesm2022/{acorex-modules-assessment-management-assessment-session.entity-Cwf30iuu.mjs → acorex-modules-assessment-management-assessment-session.entity-BvV2Qgw1.mjs} +19 -3
  7. package/fesm2022/acorex-modules-assessment-management-assessment-session.entity-BvV2Qgw1.mjs.map +1 -0
  8. package/fesm2022/{acorex-modules-assessment-management-fill-assessment-session.command-CJieLR5g.mjs → acorex-modules-assessment-management-fill-assessment-session.command-4fkaeAG-.mjs} +2 -2
  9. package/fesm2022/acorex-modules-assessment-management-fill-assessment-session.command-4fkaeAG-.mjs.map +1 -0
  10. package/fesm2022/{acorex-modules-assessment-management-preview-question.command-D0-FB1HH.mjs → acorex-modules-assessment-management-preview-question.command-6IGOdVVZ.mjs} +2 -2
  11. package/fesm2022/acorex-modules-assessment-management-preview-question.command-6IGOdVVZ.mjs.map +1 -0
  12. package/fesm2022/{acorex-modules-assessment-management-preview-questionnaire.command-wqPNgv7q.mjs → acorex-modules-assessment-management-preview-questionnaire.command-CRDBe_BS.mjs} +2 -2
  13. package/fesm2022/{acorex-modules-assessment-management-preview-questionnaire.command-wqPNgv7q.mjs.map → acorex-modules-assessment-management-preview-questionnaire.command-CRDBe_BS.mjs.map} +1 -1
  14. package/fesm2022/{acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-DYyUhSWd.mjs → acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-B2ES-zcL.mjs} +2 -2
  15. package/fesm2022/acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-B2ES-zcL.mjs.map +1 -0
  16. package/fesm2022/{acorex-modules-assessment-management-question-bank-item.entity-DUf2ceKY.mjs → acorex-modules-assessment-management-question-bank-item.entity-Cw2WCdYK.mjs} +2 -2
  17. package/fesm2022/{acorex-modules-assessment-management-question-bank-item.entity-DUf2ceKY.mjs.map → acorex-modules-assessment-management-question-bank-item.entity-Cw2WCdYK.mjs.map} +1 -1
  18. package/fesm2022/{acorex-modules-assessment-management-questionnaire-viewer-popup.component-Cy5ElBmU.mjs → acorex-modules-assessment-management-questionnaire-viewer-popup.component-D9I3S-ZT.mjs} +125 -124
  19. package/fesm2022/acorex-modules-assessment-management-questionnaire-viewer-popup.component-D9I3S-ZT.mjs.map +1 -0
  20. package/fesm2022/{acorex-modules-assessment-management-questionnaire.entity-RWSkzNbA.mjs → acorex-modules-assessment-management-questionnaire.entity-D9nHUmQB.mjs} +12 -36
  21. package/fesm2022/acorex-modules-assessment-management-questionnaire.entity-D9nHUmQB.mjs.map +1 -0
  22. package/fesm2022/acorex-modules-assessment-management-view-session-answers.command-BOeO3Dit.mjs +350 -0
  23. package/fesm2022/acorex-modules-assessment-management-view-session-answers.command-BOeO3Dit.mjs.map +1 -0
  24. package/fesm2022/acorex-modules-assessment-management.mjs +1 -1
  25. package/fesm2022/acorex-modules-common.mjs +1 -8
  26. package/fesm2022/acorex-modules-common.mjs.map +1 -1
  27. package/fesm2022/{acorex-modules-human-capital-management-acorex-modules-human-capital-management-BWezAea1.mjs → acorex-modules-human-capital-management-acorex-modules-human-capital-management-uRz1c5Km.mjs} +20 -20
  28. package/fesm2022/{acorex-modules-human-capital-management-acorex-modules-human-capital-management-BWezAea1.mjs.map → acorex-modules-human-capital-management-acorex-modules-human-capital-management-uRz1c5Km.mjs.map} +1 -1
  29. package/fesm2022/{acorex-modules-human-capital-management-approve-leave-request.command-Bh_Bbq5-.mjs → acorex-modules-human-capital-management-approve-leave-request.command-23klKnTy.mjs} +2 -2
  30. package/fesm2022/{acorex-modules-human-capital-management-approve-leave-request.command-Bh_Bbq5-.mjs.map → acorex-modules-human-capital-management-approve-leave-request.command-23klKnTy.mjs.map} +1 -1
  31. package/fesm2022/{acorex-modules-human-capital-management-assign-position-assignment.command-BpDdDG9i.mjs → acorex-modules-human-capital-management-assign-position-assignment.command-BJ8xUiR2.mjs} +2 -2
  32. package/fesm2022/{acorex-modules-human-capital-management-assign-position-assignment.command-BpDdDG9i.mjs.map → acorex-modules-human-capital-management-assign-position-assignment.command-BJ8xUiR2.mjs.map} +1 -1
  33. package/fesm2022/{acorex-modules-human-capital-management-cancel-leave-request.command-CjtKaKFw.mjs → acorex-modules-human-capital-management-cancel-leave-request.command-B3u1gXWI.mjs} +2 -2
  34. package/fesm2022/{acorex-modules-human-capital-management-cancel-leave-request.command-CjtKaKFw.mjs.map → acorex-modules-human-capital-management-cancel-leave-request.command-B3u1gXWI.mjs.map} +1 -1
  35. package/fesm2022/{acorex-modules-human-capital-management-employee.entity-Cx_oY2aK.mjs → acorex-modules-human-capital-management-employee.entity-uhwOOw_y.mjs} +11 -3
  36. package/fesm2022/acorex-modules-human-capital-management-employee.entity-uhwOOw_y.mjs.map +1 -0
  37. package/fesm2022/{acorex-modules-human-capital-management-employment-type.entity-B20Taa5x.mjs → acorex-modules-human-capital-management-employment-type.entity-BQe82rsr.mjs} +2 -2
  38. package/fesm2022/{acorex-modules-human-capital-management-employment-type.entity-B20Taa5x.mjs.map → acorex-modules-human-capital-management-employment-type.entity-BQe82rsr.mjs.map} +1 -1
  39. package/fesm2022/{acorex-modules-human-capital-management-leave-request.entity-BO8QXpZE.mjs → acorex-modules-human-capital-management-leave-request.entity-CE4hs4C8.mjs} +2 -2
  40. package/fesm2022/{acorex-modules-human-capital-management-leave-request.entity-BO8QXpZE.mjs.map → acorex-modules-human-capital-management-leave-request.entity-CE4hs4C8.mjs.map} +1 -1
  41. package/fesm2022/{acorex-modules-human-capital-management-leave-type.entity-CQwSWqSh.mjs → acorex-modules-human-capital-management-leave-type.entity-DJ4EEUKg.mjs} +2 -2
  42. package/fesm2022/{acorex-modules-human-capital-management-leave-type.entity-CQwSWqSh.mjs.map → acorex-modules-human-capital-management-leave-type.entity-DJ4EEUKg.mjs.map} +1 -1
  43. package/fesm2022/{acorex-modules-human-capital-management-lifecycle-event-type.entity-BPWJrvbN.mjs → acorex-modules-human-capital-management-lifecycle-event-type.entity-CB2hlyOP.mjs} +2 -2
  44. package/fesm2022/{acorex-modules-human-capital-management-lifecycle-event-type.entity-BPWJrvbN.mjs.map → acorex-modules-human-capital-management-lifecycle-event-type.entity-CB2hlyOP.mjs.map} +1 -1
  45. package/fesm2022/{acorex-modules-human-capital-management-lifecycle-event.entity-ZZuPu9KQ.mjs → acorex-modules-human-capital-management-lifecycle-event.entity-DWonFZpU.mjs} +2 -2
  46. package/fesm2022/{acorex-modules-human-capital-management-lifecycle-event.entity-ZZuPu9KQ.mjs.map → acorex-modules-human-capital-management-lifecycle-event.entity-DWonFZpU.mjs.map} +1 -1
  47. package/fesm2022/{acorex-modules-human-capital-management-position-assignment.entity-BN1y0qhi.mjs → acorex-modules-human-capital-management-position-assignment.entity-o8PjggiT.mjs} +2 -2
  48. package/fesm2022/{acorex-modules-human-capital-management-position-assignment.entity-BN1y0qhi.mjs.map → acorex-modules-human-capital-management-position-assignment.entity-o8PjggiT.mjs.map} +1 -1
  49. package/fesm2022/{acorex-modules-human-capital-management-reject-leave-request.command-LczqOHP-.mjs → acorex-modules-human-capital-management-reject-leave-request.command-B6sr7oey.mjs} +2 -2
  50. package/fesm2022/{acorex-modules-human-capital-management-reject-leave-request.command-LczqOHP-.mjs.map → acorex-modules-human-capital-management-reject-leave-request.command-B6sr7oey.mjs.map} +1 -1
  51. package/fesm2022/{acorex-modules-human-capital-management-revoke-position-assignment.command-Dm8YacDI.mjs → acorex-modules-human-capital-management-revoke-position-assignment.command-aH7qTRnr.mjs} +2 -2
  52. package/fesm2022/{acorex-modules-human-capital-management-revoke-position-assignment.command-Dm8YacDI.mjs.map → acorex-modules-human-capital-management-revoke-position-assignment.command-aH7qTRnr.mjs.map} +1 -1
  53. package/fesm2022/{acorex-modules-human-capital-management-start-lifecycle-event-flow.command-DPwuyFz2.mjs → acorex-modules-human-capital-management-start-lifecycle-event-flow.command-B-VsXS4c.mjs} +2 -2
  54. package/fesm2022/{acorex-modules-human-capital-management-start-lifecycle-event-flow.command-DPwuyFz2.mjs.map → acorex-modules-human-capital-management-start-lifecycle-event-flow.command-B-VsXS4c.mjs.map} +1 -1
  55. package/fesm2022/acorex-modules-human-capital-management.mjs +1 -1
  56. package/fesm2022/acorex-modules-report-management.mjs +1 -1
  57. package/fesm2022/acorex-modules-report-management.mjs.map +1 -1
  58. package/fesm2022/{acorex-modules-task-management-acorex-modules-task-management--mdNdYIs.mjs → acorex-modules-task-management-acorex-modules-task-management-DAh3IByo.mjs} +37 -19
  59. package/fesm2022/acorex-modules-task-management-acorex-modules-task-management-DAh3IByo.mjs.map +1 -0
  60. package/fesm2022/{acorex-modules-task-management-task-board.page-BIZ1qH7m.mjs → acorex-modules-task-management-task-board.page-C2hB9JPM.mjs} +21 -12
  61. package/fesm2022/acorex-modules-task-management-task-board.page-C2hB9JPM.mjs.map +1 -0
  62. package/fesm2022/acorex-modules-task-management.mjs +1 -1
  63. package/package.json +2 -2
  64. package/types/acorex-modules-assessment-management.d.ts +391 -271
  65. package/types/acorex-modules-common.d.ts +1 -0
  66. package/types/acorex-modules-task-management.d.ts +14 -1
  67. package/fesm2022/acorex-modules-assessment-management-acorex-modules-assessment-management-o8aFazwA.mjs.map +0 -1
  68. package/fesm2022/acorex-modules-assessment-management-assessment-case.entity-yrc_Yybq.mjs.map +0 -1
  69. package/fesm2022/acorex-modules-assessment-management-assessment-session-answers-view.util-BUQa_TSY.mjs +0 -47
  70. package/fesm2022/acorex-modules-assessment-management-assessment-session-answers-view.util-BUQa_TSY.mjs.map +0 -1
  71. package/fesm2022/acorex-modules-assessment-management-assessment-session.entity-Cwf30iuu.mjs.map +0 -1
  72. package/fesm2022/acorex-modules-assessment-management-fill-assessment-session.command-CJieLR5g.mjs.map +0 -1
  73. package/fesm2022/acorex-modules-assessment-management-index-D8KjfHAH.mjs +0 -1509
  74. package/fesm2022/acorex-modules-assessment-management-index-D8KjfHAH.mjs.map +0 -1
  75. package/fesm2022/acorex-modules-assessment-management-preview-question.command-D0-FB1HH.mjs.map +0 -1
  76. package/fesm2022/acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-DYyUhSWd.mjs.map +0 -1
  77. package/fesm2022/acorex-modules-assessment-management-questionnaire-calculation.entity-CYF0k42_.mjs +0 -236
  78. package/fesm2022/acorex-modules-assessment-management-questionnaire-calculation.entity-CYF0k42_.mjs.map +0 -1
  79. package/fesm2022/acorex-modules-assessment-management-questionnaire-viewer-popup.component-Cy5ElBmU.mjs.map +0 -1
  80. package/fesm2022/acorex-modules-assessment-management-questionnaire.entity-RWSkzNbA.mjs.map +0 -1
  81. package/fesm2022/acorex-modules-assessment-management-save-questionnaire-questions.command-koGmUbNE.mjs +0 -61
  82. package/fesm2022/acorex-modules-assessment-management-save-questionnaire-questions.command-koGmUbNE.mjs.map +0 -1
  83. package/fesm2022/acorex-modules-assessment-management-view-case-last-session-answers.command-NTuDdoYk.mjs +0 -157
  84. package/fesm2022/acorex-modules-assessment-management-view-case-last-session-answers.command-NTuDdoYk.mjs.map +0 -1
  85. package/fesm2022/acorex-modules-assessment-management-view-session-answers.command-0btGV66_.mjs +0 -172
  86. package/fesm2022/acorex-modules-assessment-management-view-session-answers.command-0btGV66_.mjs.map +0 -1
  87. package/fesm2022/acorex-modules-human-capital-management-employee.entity-Cx_oY2aK.mjs.map +0 -1
  88. package/fesm2022/acorex-modules-task-management-acorex-modules-task-management--mdNdYIs.mjs.map +0 -1
  89. package/fesm2022/acorex-modules-task-management-task-board.page-BIZ1qH7m.mjs.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-modules-assessment-management-questionnaire-calculation.entity-CYF0k42_.mjs","sources":["../../../../libs/modules/assessment-management/src/lib/entities/questionnaire-calculation/questionnaire-calculation.entity.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPWidgetsList } from '@acorex/modules/common';\nimport { AXPEntity, createAllQueryView } from '@acorex/platform/common';\nimport { entityDetailsCrudActions, entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/layout/entity';\nimport { Injector } from '@angular/core';\nimport { RootConfig } from '../../const';\n\n//#endregion\n\n//#region ---- Entity Factory ----\n\nconst I18N = '@assessment-management:questionnaire-calculations.entities.questionnaire-calculation';\n\nexport async function factory(_injector: Injector): Promise<AXPEntity | null> {\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: RootConfig.entities.questionnaireCalculation.name,\n title: RootConfig.entities.questionnaireCalculation.title,\n icon: RootConfig.entities.questionnaireCalculation.icon,\n plugins: [\n { name: 'history' },\n { name: 'unique-fields', options: { fields: 'name', scope: 'parent', parentField: 'questionnaireId' } },\n ],\n formats: {\n individual: RootConfig.entities.questionnaireCalculation.title,\n plural: RootConfig.entities.questionnaireCalculation.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: '{{ questionnaire.title }}',\n },\n },\n groups: [\n { id: 'basic-info', title: '@general:terms.interface.basic-info' },\n { id: 'result', title: `${I18N}.groups.result` },\n ],\n properties: [\n {\n name: 'id',\n title: 'ID',\n groupId: 'basic-info',\n schema: { dataType: 'uuid', visible: false, nullable: false, readonly: true, unique: { enabled: true } },\n },\n {\n name: 'questionnaireId',\n title: `${I18N}.fields.questionnaire.title`,\n groupId: 'basic-info',\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.LookupBox,\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.questionnaire.name}`,\n textField: 'title',\n valueField: 'id',\n look: 'select',\n columns: ['title', 'type'],\n expose: [\n { source: 'id', target: 'questionnaire.id' },\n { source: 'title', target: 'questionnaire.title' },\n { source: 'type', target: 'questionnaire.type' },\n ],\n },\n },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'name',\n title: `${I18N}.fields.name.title`,\n groupId: 'basic-info',\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: { placeholder: `${I18N}.fields.name.placeholder` },\n },\n },\n validations: [\n { rule: 'required' },\n { rule: 'variable-name' },\n ],\n },\n {\n name: 'title',\n title: `${I18N}.fields.title.title`,\n groupId: 'basic-info',\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: { placeholder: `${I18N}.fields.title.placeholder` },\n },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'description',\n title: `${I18N}.fields.description.title`,\n groupId: 'basic-info',\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: true }, inline: { enabled: false } },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.LargeTextBox,\n options: {\n rows: 3,\n placeholder: `${I18N}.fields.description.placeholder`,\n },\n },\n },\n },\n {\n name: 'resultKind',\n title: `${I18N}.fields.result-kind.title`,\n groupId: 'result',\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.SelectBox,\n options: {\n valueField: 'id',\n textField: 'title',\n dataSource: [\n { id: 'number', title: `${I18N}.fields.result-kind.options.number` },\n { id: 'string', title: `${I18N}.fields.result-kind.options.string` },\n { id: 'boolean', title: `${I18N}.fields.result-kind.options.boolean` },\n ],\n placeholder: `${I18N}.fields.result-kind.placeholder`,\n },\n },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'expression',\n title: `${I18N}.fields.expression.title`,\n groupId: 'result',\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: false }, inline: { enabled: false } },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Advanced.CodeEditor,\n options: {\n language: 'javascript',\n lineNumbers: true,\n height: 'min-h-72',\n placeholder: `${I18N}.fields.expression.placeholder`,\n },\n },\n },\n validations: [{ rule: 'required' }],\n },\n ],\n columns: [\n { name: 'name' },\n { name: 'title' },\n { name: 'resultKind' },\n { name: 'description' },\n ],\n interfaces: {\n master: {\n create: {\n sections: [\n { id: 'basic-info', order: 1, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'result', order: 2, layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n properties: [\n { name: 'questionnaireId', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'name', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'resultKind', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'expression', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n },\n update: {\n sections: [\n { id: 'basic-info', order: 1, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'result', order: 2, layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n properties: [\n { name: 'questionnaireId', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'name', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'resultKind', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'expression', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n { id: 'basic-info', order: 1, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'result', order: 2, layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n properties: [\n { name: 'questionnaireId', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'name', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'resultKind', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'expression', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [...entityMasterCrudActions()],\n views: [createAllQueryView({ sorts: [{ name: 'name', dir: 'asc' }] })],\n },\n },\n },\n };\n\n return entityDef;\n}\n\n//#endregion\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-modules-assessment-management-questionnaire-viewer-popup.component-Cy5ElBmU.mjs","sources":["../../../../libs/modules/assessment-management/src/lib/features/questionnaire-viewer/utils/assessment-session-persistence.util.ts","../../../../libs/modules/assessment-management/src/lib/features/questionnaire-viewer/pages/viewer-popup/questionnaire-viewer-popup.component.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPSystemStatusType } from '@acorex/platform/common';\nimport { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { defaultTo, first, get, isEmpty } from 'lodash-es';\nimport { QuestionnaireBuilderValue } from '../../questionnaire-builder/questionnaire-builder.types';\nimport type { AXMAssessmentManagementAssessmentCaseEntityModel } from '../../../entities/assessment-case/assessment-case.types';\nimport type { AXMAssessmentManagementAssessmentSessionEntityModel } from '../../../entities/assessment-session/assessment-session.types';\nimport { RootConfig } from '../../../const';\nimport { AXMQuestionnaireViewerService } from '../questionnaire-viewer.service';\n\n//#endregion\n\n//#region ---- Types ----\n\nexport interface PersistAssessmentSessionProgressMetrics {\n answeredQuestionsCount: number;\n progressPercentage: number;\n}\n\nexport interface PersistAssessmentSessionInput {\n entityService: AXPEntityService;\n questionnaireViewerService: AXMQuestionnaireViewerService;\n caseId: string;\n sessionId: string | null;\n existingSession: AXMAssessmentManagementAssessmentSessionEntityModel | null;\n responderId: string;\n role: AXMAssessmentManagementAssessmentSessionEntityModel['role'];\n structure: QuestionnaireBuilderValue;\n questionnaireId: string;\n answers: Record<string, unknown>;\n finalize: boolean;\n /** When provided (e.g. from live viewer), overrides structure-based progress calculation. */\n progressMetrics?: PersistAssessmentSessionProgressMetrics;\n /** Elapsed seconds from questionnaire viewer timer. */\n timeSpentSeconds?: number;\n}\n\nexport interface PersistAssessmentSessionResult {\n sessionId: string;\n}\n\n//#endregion\n\n//#region ---- Persistence ----\n\n/**\n * Loads a session by id using list query first, then byKey.\n */\nasync function loadSessionById(\n entityService: AXPEntityService,\n sessionId: string,\n): Promise<AXMAssessmentManagementAssessmentSessionEntityModel | null> {\n const sessionAccessor = 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 assessment case by id using query first, then byKey.\n */\nasync function loadCaseById(\n entityService: AXPEntityService,\n caseId: string,\n): Promise<AXMAssessmentManagementAssessmentCaseEntityModel | null> {\n const caseAccessor = 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 * Bumps case audit metadata by performing a domain update (history middleware sets auditInfo.updated.at).\n */\nasync function touchAssessmentCaseActivity(\n entityService: AXPEntityService,\n caseId: string,\n): Promise<void> {\n const assessmentCase = await loadCaseById(entityService, caseId);\n if (!assessmentCase) {\n return;\n }\n\n const caseAccessor = entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.assessmentCase.name)\n .data<string, AXMAssessmentManagementAssessmentCaseEntityModel>();\n\n const caseStatus = assessmentCase.statusId;\n const nextCaseStatus =\n caseStatus === AXPSystemStatusType.Closed || caseStatus === AXPSystemStatusType.Cancelled\n ? caseStatus\n : AXPSystemStatusType.InProgress;\n\n await caseAccessor.update(caseId, { statusId: nextCaseStatus });\n}\n\n/**\n * Upserts assessment session answers and status; moves case to in-progress when saving or submitting.\n */\nexport async function persistAssessmentSession(\n input: PersistAssessmentSessionInput,\n): Promise<PersistAssessmentSessionResult> {\n const {\n entityService,\n questionnaireViewerService,\n caseId,\n sessionId,\n existingSession,\n responderId,\n role,\n structure,\n answers,\n finalize,\n progressMetrics,\n timeSpentSeconds,\n } = input;\n\n const calculatedProgress = questionnaireViewerService.calculateProgressFromStructure(structure, answers);\n const answeredQuestionsCount = defaultTo(\n get(progressMetrics, 'answeredQuestionsCount'),\n calculatedProgress.answeredQuestionsCount,\n );\n const progressPercentage = defaultTo(\n get(progressMetrics, 'progressPercentage'),\n calculatedProgress.progressPercentage,\n );\n const now = new Date();\n\n const sessionAccessor = entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.assessmentSession.name)\n .data<string, AXMAssessmentManagementAssessmentSessionEntityModel>();\n\n let resolvedSessionId = sessionId;\n let currentSession = existingSession;\n\n if (resolvedSessionId && !currentSession) {\n currentSession = await loadSessionById(entityService, resolvedSessionId);\n }\n\n const sessionStatusId = finalize\n ? 'submitted'\n : get(currentSession, 'statusId') === 'submitted'\n ? 'submitted'\n : AXPSystemStatusType.InProgress;\n\n const sessionData: Record<string, unknown> = {\n caseId,\n responderId,\n role,\n answers,\n progressPercentage,\n answeredQuestionsCount,\n lastSavedAt: now,\n statusId: sessionStatusId,\n };\n\n if (isEmpty(get(currentSession, 'startedAt'))) {\n sessionData['startedAt'] = now;\n }\n\n if (timeSpentSeconds != null && timeSpentSeconds >= 0) {\n sessionData['timeSpent'] = timeSpentSeconds;\n }\n\n if (resolvedSessionId) {\n await sessionAccessor.update(resolvedSessionId, sessionData);\n } else {\n sessionData['startedAt'] = now;\n resolvedSessionId = await sessionAccessor.create(\n sessionData as Omit<AXMAssessmentManagementAssessmentSessionEntityModel, 'id'>,\n );\n }\n\n await touchAssessmentCaseActivity(entityService, caseId);\n\n return { sessionId: resolvedSessionId! };\n}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { AXTranslationModule, AXTranslationService } from '@acorex/core/translation';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXToastService } from '@acorex/components/toast';\nimport { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPStopwatchComponent } from '@acorex/platform/layout/components';\nimport { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n effect,\n inject,\n input,\n signal,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { first } from 'lodash-es';\nimport { QuestionnaireBuilderValue } from '../../../questionnaire-builder/questionnaire-builder.types';\nimport {\n QuestionnaireAssessmentFillContext,\n QuestionnaireViewerConfig,\n} from '../../questionnaire-viewer.types';\nimport type { AXMAssessmentManagementAssessmentSessionEntityModel } from '../../../../entities/assessment-session/assessment-session.types';\nimport { RootConfig } from '../../../../const';\nimport { persistAssessmentSession } from '../../utils/assessment-session-persistence.util';\nimport type { PrePostConfig } from '../../../../entities/questionnaire/questionnaire.types';\nimport type { SummaryPlaceholderValues } from '../../utils/pre-post-content.utils';\nimport { AXMQuestionnaireViewerService } from '../../questionnaire-viewer.service';\nimport { AXMQuestionnaireViewerComponent } from '../../components/viewer-container';\nimport { AXMPreQuestionnaireContentComponent } from '../../components/pre-questionnaire-content';\nimport {\n AXMPostQuestionnaireContentComponent,\n type QuestionWithAnswer,\n} from '../../components/post-questionnaire-content';\n\n//#endregion\n\n//#region ---- Types ----\n\ntype FlowStep = 'pre' | 'questions' | 'review' | 'summary' | 'results';\n\n//#endregion\n\n//#region ---- Component ----\n\n@Component({\n selector: 'axm-questionnaire-viewer-popup',\n template: `\n \n <div\n class=\"__content-area ax-flex ax-flex-1 ax-min-h-0 ax-flex-col\"\n [class.ax-overflow-hidden]=\"flowStep() === 'questions'\"\n [class.ax-overflow-y-auto]=\"flowStep() !== 'questions'\"\n >\n @if (flowStep() === 'pre') {\n <axm-pre-questionnaire-content\n [content]=\"prePostConfigValue()?.pre?.content\"\n ></axm-pre-questionnaire-content>\n } @else if (flowStep() === 'results') {\n <axm-post-questionnaire-content mode=\"results\" [placeholderValues]=\"submitResult()\"></axm-post-questionnaire-content>\n } @else if (flowStep() === 'summary') {\n <axm-post-questionnaire-content\n mode=\"summary\"\n [summaryContent]=\"prePostConfigValue()?.post?.summaryContent\"\n [placeholderValues]=\"submitResult()\"\n ></axm-post-questionnaire-content>\n } @else {\n @if (flowStep() === 'review') {\n <axm-post-questionnaire-content\n mode=\"review\"\n [questionsWithAnswers]=\"reviewSnapshot()\"\n [reviewContext]=\"reviewContext()\"\n [showQuestionNumbers]=\"configValue()?.showQuestionNumbers ?? true\"\n ></axm-post-questionnaire-content>\n }\n <div\n class=\"__questions ax-flex ax-flex-col ax-flex-1 ax-min-h-0 ax-overflow-hidden\"\n [class.ax-invisible]=\"flowStep() === 'review'\"\n [style.position]=\"flowStep() === 'review' ? 'fixed' : null\"\n [style.left]=\"flowStep() === 'review' ? '-9999px' : null\"\n [class.ax-size-0]=\"flowStep() === 'review'\"\n [class.ax-overflow-hidden]=\"flowStep() === 'review'\"\n >\n <!-- <div class=\"__header ax-flex-shrink-0 ax-p-4 ax-border-b ax-border-surface\">\n <div class=\"ax-flex ax-justify-between ax-items-center\">\n <div class=\"__toolbar-meta ax-flex ax-items-center ax-gap-4 ax-text-sm\">\n @if (totalQuestionsCount() > 0) {\n <span><i class=\"fa-light fa-list-check\"></i> {{ totalQuestionsCount() }} {{ totalQuestionsCount() === 1 ? 'Question' : 'Questions' }}</span>\n }\n @if (showTimer()) {\n <axp-stopwatch\n [mode]=\"'count-down'\"\n [timeLimit]=\"timerTimeLimit()\"\n [format]=\"timerTimeLimit() && timerTimeLimit()! >= 3600 ? 'hh:mm:ss' : 'mm:ss'\"\n [autoStart]=\"true\"\n [showControls]=\"false\"\n [value]=\"timerElapsed()\"\n (valueChange)=\"viewerViewModel()!.updateTimerElapsed($event)\"\n ></axp-stopwatch>\n }\n </div>\n </div>\n </div> -->\n <div class=\"__content ax-flex ax-flex-1 ax-min-h-0 ax-flex-col ax-overflow-y-auto ax-overflow-x-hidden\">\n <axm-questionnaire-viewer\n #viewer\n [structure]=\"structureValue()\"\n [config]=\"configValue()\"\n [initialAnswers]=\"effectiveInitialAnswers()\"\n ></axm-questionnaire-viewer>\n </div>\n </div>\n }\n </div>\n @if (showFooter()) {\n <ax-footer class=\"__popup-footer ax-flex-shrink-0 ax-border-t ax-px-4 ax-py-3\">\n <ax-prefix>\n @if (flowStep() === 'questions') {\n <div class=\"__footer-progress ax-text-sm ax-font-mono ax-tabular-nums\" dir=\"ltr\">{{ answeredQuestionsCount() }} / {{ totalQuestionsCount() }}</div>\n }\n </ax-prefix>\n <ax-suffix>\n @if (flowStep() === 'pre') {\n <ax-button look=\"solid\" color=\"primary\" [text]=\"'@assessment-management:questionnaires.components.questionnaire-viewer.flow.start' | translate | async\" (onClick)=\"flowStep.set('questions')\"></ax-button>\n } @else if (flowStep() === 'questions') {\n @if (showSaveButton()) {\n <ax-button\n look=\"outline\"\n color=\"primary\"\n [text]=\"'@assessment-management:questionnaires.components.questionnaire-viewer.actions.save-as-draft.title' | translate | async\"\n [disabled]=\"isSubmitting() || isReadonly()\"\n (onClick)=\"handleSaveClick()\"\n ></ax-button>\n }\n @if (showNavigationButtons()) {\n <ax-button look=\"solid\" [disabled]=\"!canNavigatePrevious()\" [text]=\"'@general:actions.previous.title' | translate | async\" (onClick)=\"handlePreviousClick()\"></ax-button>\n @if (!isLastStep()) {\n <ax-button look=\"solid\" color=\"primary\" [disabled]=\"!canNavigateNext()\" [text]=\"'@general:actions.next.title' | translate | async\" (onClick)=\"handleNextClick()\"></ax-button>\n }\n }\n @if (isLastStep() && showReviewButton()) {\n <ax-button look=\"solid\" color=\"primary\" [text]=\"'@assessment-management:questionnaires.components.questionnaire-viewer.flow.review' | translate | async\" [disabled]=\"isReadonly() || !areAllRequiredQuestionsAnswered()\" (onClick)=\"handleReviewClick()\"></ax-button>\n }\n @if (isLastStep() && !showReviewButton() && showSubmitButton()) {\n <ax-button look=\"solid\" color=\"primary\" [text]=\"'@general:actions.submit.title' | translate | async\" [disabled]=\"isSubmitting() || isReadonly() || !areAllRequiredQuestionsAnswered()\" (onClick)=\"handleSubmitClick()\"></ax-button>\n }\n } @else if (flowStep() === 'review') {\n <ax-button look=\"outline\" [text]=\"'@assessment-management:questionnaires.components.questionnaire-viewer.flow.edit' | translate | async\" (onClick)=\"flowStep.set('questions')\"></ax-button>\n <ax-button look=\"solid\" color=\"primary\" [text]=\"'@general:actions.submit.title' | translate | async\" [disabled]=\"isSubmitting()\" (onClick)=\"handleReviewSubmit()\"></ax-button>\n } @else if (flowStep() === 'results') {\n @if (prePostConfigValue()?.post?.summaryEnabled) {\n <ax-button look=\"solid\" color=\"primary\" [text]=\"'@general:actions.next.title' | translate | async\" (onClick)=\"flowStep.set('summary')\"></ax-button>\n } @else {\n <ax-button look=\"solid\" color=\"primary\" [text]=\"'@assessment-management:questionnaires.components.questionnaire-viewer.flow.done' | translate | async\" (onClick)=\"handleDone()\"></ax-button>\n }\n } @else if (flowStep() === 'summary') {\n <ax-button look=\"solid\" color=\"primary\" [text]=\"'@assessment-management:questionnaires.components.questionnaire-viewer.flow.done' | translate | async\" (onClick)=\"handleDone()\"></ax-button>\n }\n </ax-suffix>\n </ax-footer>\n }\n `,\n styleUrl: './questionnaire-viewer-popup.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n\n imports: [\n CommonModule,\n AXTranslationModule,\n AXButtonModule,\n AXDecoratorModule,\n //AXPStopwatchComponent,\n AXMQuestionnaireViewerComponent,\n AXMPreQuestionnaireContentComponent,\n AXMPostQuestionnaireContentComponent,\n ],\n encapsulation: ViewEncapsulation.None,\n})\nexport class AXMQuestionnaireViewerPopupComponent extends AXBasePageComponent {\n //#region ---- Services & Dependencies ----\n\n private readonly questionnaireViewerService = inject(AXMQuestionnaireViewerService);\n private readonly entityService = inject(AXPEntityService);\n private readonly toastService = inject(AXToastService);\n private readonly translationService = inject(AXTranslationService);\n\n //#endregion\n\n //#region ---- Inputs ----\n\n structure = input.required<QuestionnaireBuilderValue>();\n prePostConfig = input<PrePostConfig | null>(null);\n config = input<QuestionnaireViewerConfig | undefined>(undefined);\n initialAnswers = input<Record<string, any>>({});\n submitHandler = input<\n ((answers: Record<string, any>) => Promise<SummaryPlaceholderValues | null | void>) | undefined\n >();\n saveHandler = input<((answers: Record<string, any>) => Promise<void>) | undefined>();\n assessmentFillContext = input<QuestionnaireAssessmentFillContext | undefined>(undefined);\n questionnaireId = input<string | undefined>(undefined);\n\n /** Safe accessors: popup framework may overwrite inputs with plain values. */\n protected readonly prePostConfigValue = computed(() => this.safeInputValue(this.prePostConfig));\n protected readonly structureValue = computed(() => this.safeInputValue(this.structure));\n protected readonly configValue = computed(() => this.safeInputValue(this.config));\n protected readonly initialAnswersValue = computed(() => this.safeInputValue(this.initialAnswers));\n protected readonly questionnaireIdValue = computed(() => this.safeInputValue(this.questionnaireId));\n protected readonly assessmentFillContextValue = computed((): QuestionnaireAssessmentFillContext | null => {\n const raw = this.safeInputValue(this.assessmentFillContext);\n if (raw && typeof raw === 'object' && typeof (raw as QuestionnaireAssessmentFillContext).caseId === 'string') {\n return raw as QuestionnaireAssessmentFillContext;\n }\n return null;\n });\n\n protected readonly submitHandlerValue = computed(() => {\n const handler = this.safeInputValue(this.submitHandler);\n if (typeof handler === 'function') return handler;\n if (this.assessmentFillContextValue()) {\n return (answers: Record<string, unknown>) => this.persistAssessmentAnswers(answers, true);\n }\n return this.getDefaultSubmitHandler();\n });\n\n protected readonly explicitSaveHandler = computed(() => {\n const handler = this.safeInputValue(this.saveHandler);\n return typeof handler === 'function' ? handler : undefined;\n });\n\n protected readonly isReadonly = computed(() => this.configValue()?.readonly === true);\n protected readonly completionMode = computed(() => {\n const fromConfig = this.configValue()?.completionMode;\n if (fromConfig) {\n return fromConfig;\n }\n return this.structureValue()?.displaySettings?.completionMode ?? 'submit-only';\n });\n protected readonly showSaveButton = computed(() => {\n if (this.isReadonly() || this.completionMode() !== 'save-and-continue') {\n return false;\n }\n return !!this.assessmentFillContextValue() || !!this.explicitSaveHandler();\n });\n protected readonly showSubmitButton = computed(() => !this.isReadonly());\n\n /** Session row loaded for fill persistence (popup cannot use command closures). */\n protected readonly existingSession = signal<AXMAssessmentManagementAssessmentSessionEntityModel | null>(null);\n protected readonly activeSessionId = signal<string | null>(null);\n\n /** Use answers from review context when returning from review; otherwise use initial input. */\n protected readonly effectiveInitialAnswers = computed(() => {\n const ctx = this.reviewContext();\n if (!ctx) return this.initialAnswersValue();\n return (ctx as { answers?: Record<string, any> }).answers ?? ctx;\n });\n\n private safeInputValue<T>(inputOrValue: T | (() => T)): T {\n return typeof inputOrValue === 'function' ? (inputOrValue as () => T)() : (inputOrValue as T);\n }\n\n /** Fallback when submitHandler is not passed (e.g. popup framework does not pass functions). */\n private getDefaultSubmitHandler(): (answers: Record<string, any>) => Promise<SummaryPlaceholderValues | null> {\n return async (answers: Record<string, any>) => {\n return this.questionnaireViewerService.buildSummaryPlaceholderValues(this.structureValue(), answers, {\n questionnaireId: this.questionnaireIdValue(),\n elapsedSeconds: this.timerElapsed(),\n });\n };\n }\n\n /**\n * First step after submit: outcomes (if enabled), else summary (if enabled), else close. Summary is always last when both are on.\n */\n protected resolvePostSubmitFirstStep(summary: SummaryPlaceholderValues | null): 'summary' | 'results' | null {\n if (!summary) return null;\n const cfg = this.prePostConfigValue();\n if (cfg?.post.showCalculationResults === true) return 'results';\n if (cfg?.post.summaryEnabled === true) return 'summary';\n return null;\n }\n\n //#endregion\n\n //#region ---- State ----\n\n protected readonly flowStep = signal<FlowStep>('questions');\n protected readonly reviewSnapshot = signal<QuestionWithAnswer[]>([]);\n protected readonly reviewContext = signal<Record<string, any> | null>(null);\n protected readonly submitResult = signal<SummaryPlaceholderValues | null>(null);\n protected readonly lastSubmittedAnswers = signal<Record<string, any>>({});\n protected readonly lastSubmittedQuestions = signal<Array<{ name: string; title: string; answer: any }>>([]);\n protected readonly isSubmitting = signal(false);\n protected readonly canNavigatePrevious = signal(false);\n protected readonly canNavigateNext = signal(false);\n protected readonly showNavigationButtons = signal(false);\n protected readonly isLastStep = signal(false);\n protected readonly areAllRequiredQuestionsAnswered = signal(false);\n\n //#endregion\n\n //#region ---- View References ----\n\n protected readonly viewer = viewChild<AXMQuestionnaireViewerComponent>('viewer');\n\n //#endregion\n\n //#region ---- Computed ----\n\n protected readonly viewerViewModel = computed(() => this.viewer()?.viewmodel);\n protected readonly totalQuestionsCount = computed(() => this.viewerViewModel()?.totalQuestionsCount() ?? 0);\n protected readonly showTimer = computed(() => this.viewerViewModel()?.showTimer() ?? false);\n protected readonly timerTimeLimit = computed(() => this.viewerViewModel()?.timerTimeLimit());\n protected readonly timerElapsed = computed(() => this.viewerViewModel()?.timerElapsed() ?? 0);\n protected readonly answeredQuestionsCount = computed(() => this.viewerViewModel()?.answeredQuestionsCount() ?? 0);\n\n protected readonly showReviewButton = computed(\n () => this.isLastStep() && (this.prePostConfigValue()?.post?.reviewEnabled ?? false) && this.flowStep() === 'questions'\n );\n protected readonly showFooter = computed(() =>\n ['pre', 'questions', 'review', 'summary', 'results'].includes(this.flowStep())\n );\n\n //#endregion\n\n //#region ---- Lifecycle ----\n\n constructor() {\n super();\n effect(() => {\n const cfg = this.prePostConfigValue();\n this.flowStep.set(cfg?.pre.enabled === true ? 'pre' : 'questions');\n });\n effect(() => {\n const ctx = this.assessmentFillContextValue();\n const sessionId = ctx?.sessionId;\n if (sessionId) {\n this.activeSessionId.set(sessionId);\n void this.loadExistingSession(sessionId);\n }\n });\n effect(() => {\n const v = this.viewer();\n if (v) {\n const vm = v.viewmodel;\n this.canNavigatePrevious.set(vm.canNavigatePrevious());\n this.canNavigateNext.set(vm.canNavigateNext());\n const viewMode = v.viewMode;\n this.showNavigationButtons.set(viewMode === 'page-per-group' || viewMode === 'page-per-question' || viewMode === 'side-menu');\n this.isLastStep.set(v.isLastStep);\n this.areAllRequiredQuestionsAnswered.set(v.areAllRequiredQuestionsAnswered);\n }\n });\n }\n\n //#endregion\n\n //#region ---- Assessment persistence ----\n\n private async loadExistingSession(sessionId: string): Promise<void> {\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 this.existingSession.set(fromQuery);\n return;\n }\n\n const session = await sessionAccessor.byKey(sessionId);\n if (session) {\n this.existingSession.set(session);\n }\n }\n\n private async persistAssessmentAnswers(\n answers: Record<string, unknown>,\n finalize: boolean,\n ): Promise<SummaryPlaceholderValues | null> {\n const ctx = this.assessmentFillContextValue();\n const questionnaireId = this.questionnaireIdValue();\n if (!ctx || !questionnaireId) {\n return null;\n }\n\n const vm = this.viewerViewModel();\n const progressMetrics =\n vm != null\n ? {\n answeredQuestionsCount: vm.answeredQuestionsCount(),\n progressPercentage: vm.progressPercentage(),\n }\n : undefined;\n\n const result = await persistAssessmentSession({\n entityService: this.entityService,\n questionnaireViewerService: this.questionnaireViewerService,\n caseId: ctx.caseId,\n sessionId: this.activeSessionId() ?? ctx.sessionId ?? null,\n existingSession: this.existingSession(),\n responderId: ctx.responderId,\n role: ctx.role,\n structure: this.structureValue(),\n questionnaireId,\n answers,\n finalize,\n progressMetrics,\n timeSpentSeconds: vm?.timerElapsed(),\n });\n this.activeSessionId.set(result.sessionId);\n await this.loadExistingSession(result.sessionId);\n if (!finalize) {\n this.toastService.show({\n color: 'success',\n title: await this.translationService.translateAsync('@general:messages.form.saved.success.title'),\n content: await this.translationService.translateAsync(\n '@assessment-management:questionnaires.components.questionnaire-viewer.actions.save-as-draft.success',\n ),\n });\n return null;\n }\n return this.questionnaireViewerService.buildSummaryPlaceholderValues(this.structureValue(), answers, {\n questionnaireId,\n elapsedSeconds: this.timerElapsed(),\n });\n }\n\n //#endregion\n\n //#region ---- Event Handlers ----\n\n protected handleReviewClick(): void {\n const viewer = this.viewer();\n const items = viewer?.getQuestionsWithAnswers() ?? [];\n const context = viewer?.getReviewContext() ?? null;\n this.reviewSnapshot.set(\n items.map((q) => ({\n name: q.name,\n title: q.title,\n answer: q.answer,\n question: q.question,\n sectionName: q.sectionName,\n sectionOrder: q.sectionOrder,\n sectionTitle: q.sectionTitle,\n sectionDescription: q.sectionDescription,\n })),\n );\n this.reviewContext.set(context);\n this.flowStep.set('review');\n }\n\n protected async handleSaveClick(): Promise<void> {\n const viewer = this.viewer();\n if (!viewer || !this.showSaveButton()) {\n return;\n }\n this.isSubmitting.set(true);\n try {\n const result = viewer.saveDraft();\n if (result.success && result.answers) {\n const explicit = this.explicitSaveHandler();\n if (explicit) {\n await explicit(result.answers);\n } else {\n await this.persistAssessmentAnswers(result.answers, false);\n }\n this.close({\n answers: result.answers,\n questions: viewer.getQuestionsWithAnswers(),\n submitted: false,\n saved: true,\n });\n }\n } finally {\n this.isSubmitting.set(false);\n }\n }\n\n protected async handleReviewSubmit(): Promise<void> {\n const viewer = this.viewer();\n const handler = this.submitHandlerValue();\n if (!viewer || !handler) return;\n this.isSubmitting.set(true);\n try {\n const result = await viewer.submit();\n if (result.success && result.answers) {\n const summary = await handler(result.answers);\n const questions = viewer.getQuestionsWithAnswers();\n this.submitResult.set(summary ?? null);\n this.lastSubmittedAnswers.set(result.answers);\n this.lastSubmittedQuestions.set(questions);\n const step = this.resolvePostSubmitFirstStep(summary ?? null);\n if (step) {\n this.flowStep.set(step);\n } else {\n this.close({ answers: result.answers, questions, submitted: true });\n }\n }\n } finally {\n this.isSubmitting.set(false);\n }\n }\n\n protected async handlePreviousClick(): Promise<void> {\n await this.viewer()?.navigatePrevious();\n }\n\n protected async handleNextClick(): Promise<void> {\n await this.viewer()?.navigateNext();\n }\n\n protected async handleSubmitClick(): Promise<void> {\n const viewer = this.viewer();\n const handler = this.submitHandlerValue();\n if (!viewer || !handler) return;\n this.isSubmitting.set(true);\n try {\n const result = await viewer.submit();\n if (result.success && result.answers) {\n const summary = await handler(result.answers);\n const questions = viewer.getQuestionsWithAnswers();\n this.submitResult.set(summary ?? null);\n this.lastSubmittedAnswers.set(result.answers);\n this.lastSubmittedQuestions.set(questions);\n const step = this.resolvePostSubmitFirstStep(summary ?? null);\n if (step) {\n this.flowStep.set(step);\n } else {\n this.close({ answers: result.answers, questions, submitted: true });\n }\n }\n } finally {\n this.isSubmitting.set(false);\n }\n }\n\n protected handleDone(): void {\n const answers = this.lastSubmittedAnswers();\n const questions = this.lastSubmittedQuestions();\n this.close({ answers, questions, submitted: true });\n }\n\n //#endregion\n}\n\n//#endregion\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-modules-assessment-management-questionnaire.entity-RWSkzNbA.mjs","sources":["../../../../libs/modules/assessment-management/src/lib/entities/questionnaire/questionnaire.entity.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPWidgetsList } from '@acorex/modules/common';\nimport {\n AXPEntity,\n AXPEntityAction,\n AXPEntityCommandScope,\n createAllQueryView,\n createQueryView,\n} from '@acorex/platform/common';\nimport { AXPSystemActionType } from '@acorex/platform/core';\nimport {\n entityDetailsCrudActions,\n entityMasterCrudActions,\n entityMasterRecordActions,\n} from '@acorex/platform/layout/entity';\nimport { QUESTIONNAIRE_QUESTIONS_PAGE_COMPONENT_KEY } from '../../features/questionnaire-builder/pages/questionnaire-questions-page';\nimport { RootConfig } from '../../const';\n\n//#endregion\n\n//#region ---- Entity Factory ----\n\nexport async function factory(): Promise<AXPEntity | null> {\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: RootConfig.entities.questionnaire.name,\n title: RootConfig.entities.questionnaire.title,\n icon: RootConfig.entities.questionnaire.icon,\n plugins: [\n { name: 'history' },\n { name: 'category' },\n { name: 'lock' },\n { name: 'archive' },\n { name: 'clone' },\n {\n name: 'automation',\n options: {\n title: '@assessment-management:questionnaires.entities.questionnaire.related-entities.automations.title',\n layoutType: 'page-list',\n position: 'after',\n order: 2,\n icon: 'fa-light fa-bolt',\n },\n },\n ],\n formats: {\n individual: RootConfig.entities.questionnaire.title,\n plural: RootConfig.entities.questionnaire.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: '{{ type }}',\n },\n },\n pages: [\n {\n componentKey: QUESTIONNAIRE_QUESTIONS_PAGE_COMPONENT_KEY,\n field: 'questions',\n title: '@assessment-management:questionnaires.entities.questionnaire.fields.questions.title',\n icon: 'fa-light fa-list-check',\n layout: { order: 1, position: 'after' },\n },\n ],\n relatedEntities: [\n {\n entity: `${RootConfig.module.name}.${RootConfig.entities.questionnaireCalculation.name}`,\n title:\n '@assessment-management:questionnaires.entities.questionnaire.related-entities.questionnaire-calculations.title',\n icon: RootConfig.entities.questionnaireCalculation.icon,\n columns: ['name', 'title', 'description'],\n conditions: [{ name: 'questionnaireId', operator: { type: 'equal' }, value: '{{context.eval(\"id\")}}' }],\n actions: [\n ...entityDetailsCrudActions('questionnaireId').filter((a) => a.command !== 'Entity:Update'),\n {\n title: '@general:actions.edit.title',\n command: {\n name: 'Entity:Update',\n options: {\n layout: {\n size: 'lg',\n },\n },\n },\n priority: 'secondary',\n type: AXPSystemActionType.Update,\n default: true,\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n layout: { type: 'page-list', position: 'after', order: 1 },\n excludeProperties: ['questionnaireId'],\n },\n ],\n groups: [\n { id: 'basic-info', title: '@general:terms.interface.basic-info' },\n { id: 'questions', title: '@assessment-management:questionnaires.entities.questionnaire.groups.questions' },\n {\n id: 'pre-questionnaire',\n title: '@assessment-management:questionnaires.entities.questionnaire.groups.pre-questionnaire',\n },\n {\n id: 'post-questionnaire',\n title: '@assessment-management:questionnaires.entities.questionnaire.groups.post-questionnaire',\n },\n {\n id: 'display',\n title: '@assessment-management:questionnaires.entities.questionnaire.groups.display',\n },\n ],\n properties: [\n {\n name: 'id',\n title: 'ID',\n groupId: 'basic-info',\n schema: { dataType: 'uuid', visible: false, nullable: false, readonly: true, unique: { enabled: true } },\n },\n {\n name: 'title',\n title: '@assessment-management:questionnaires.entities.questionnaire.fields.title.title',\n groupId: 'basic-info',\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: { placeholder: 'Questionnaire title...' },\n },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'type',\n title: '@assessment-management:questionnaires.entities.questionnaire.fields.type.title',\n groupId: 'basic-info',\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n schema: {\n dataType: 'string',\n defaultValue: 'questionnaire',\n interface: {\n type: AXPWidgetsList.Editors.SelectBox,\n options: {\n valueField: 'id',\n dataSource: [\n {\n id: 'questionnaire',\n title:\n '@assessment-management:questionnaires.entities.questionnaire.fields.type.options.questionnaire',\n },\n {\n id: 'survey',\n title: '@assessment-management:questionnaires.entities.questionnaire.fields.type.options.survey',\n },\n {\n id: 'checklist',\n title: '@assessment-management:questionnaires.entities.questionnaire.fields.type.options.checklist',\n },\n {\n id: 'test',\n title: '@assessment-management:questionnaires.entities.questionnaire.fields.type.options.test',\n },\n {\n id: 'evaluation',\n title: '@assessment-management:questionnaires.entities.questionnaire.fields.type.options.evaluation',\n },\n ],\n },\n },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'description',\n title: '@assessment-management:questionnaires.entities.questionnaire.fields.description.title',\n groupId: 'basic-info',\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: true }, inline: { enabled: false } },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.LargeTextBox,\n options: { rows: 3 },\n },\n },\n },\n\n {\n name: 'pre',\n title: '@assessment-management:questionnaires.entities.questionnaire.groups.pre-questionnaire',\n groupId: 'pre-questionnaire',\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: false }, inline: { enabled: false } },\n },\n schema: {\n dataType: 'object',\n nullable: true,\n defaultValue: { enabled: false },\n interface: {\n type: AXPWidgetsList.Layouts.GridLayout,\n mode: 'edit',\n options: {\n grid: {\n default: {\n columns: 12,\n gap: '1rem',\n },\n },\n },\n children: [\n {\n type: AXPWidgetsList.Layouts.GridItemLayout,\n mode: 'edit',\n options: { colSpan: 12 },\n children: [\n {\n type: AXPWidgetsList.Layouts.FormField,\n mode: 'edit',\n options: {\n label: '@assessment-management:questionnaires.entities.questionnaire.fields.pre-enabled.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n path: 'pre.enabled',\n mode: 'edit',\n options: {\n description:\n '@assessment-management:questionnaires.entities.questionnaire.fields.pre-enabled.description',\n },\n },\n ],\n },\n ],\n },\n {\n type: AXPWidgetsList.Layouts.GridItemLayout,\n mode: 'edit',\n options: {\n colSpan: 12,\n visible: `{{ context.eval('pre.enabled') === true }}`,\n },\n children: [\n {\n type: AXPWidgetsList.Layouts.FormField,\n mode: 'edit',\n options: {\n label: '@assessment-management:questionnaires.entities.questionnaire.fields.pre-content.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.RichText,\n path: 'pre.content',\n mode: 'edit',\n options: {\n placeholder:\n '@assessment-management:questionnaires.entities.questionnaire.fields.pre-content.placeholder',\n },\n },\n ],\n },\n ],\n },\n ],\n },\n },\n },\n {\n name: 'post',\n title: '@assessment-management:questionnaires.entities.questionnaire.groups.post-questionnaire',\n groupId: 'post-questionnaire',\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: false }, inline: { enabled: false } },\n },\n schema: {\n dataType: 'object',\n nullable: true,\n defaultValue: { reviewEnabled: false, summaryEnabled: false, showCalculationResults: false },\n interface: {\n type: AXPWidgetsList.Layouts.GridLayout,\n mode: 'edit',\n options: {\n grid: {\n default: {\n columns: 12,\n gap: '1rem',\n },\n },\n },\n children: [\n {\n type: AXPWidgetsList.Layouts.GridItemLayout,\n mode: 'edit',\n options: { colSpan: 4 },\n children: [\n {\n type: AXPWidgetsList.Layouts.FormField,\n mode: 'edit',\n options: {\n label:\n '@assessment-management:questionnaires.entities.questionnaire.fields.post-review-enabled.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n path: 'post.reviewEnabled',\n mode: 'edit',\n options: {\n description:\n '@assessment-management:questionnaires.entities.questionnaire.fields.post-review-enabled.description',\n },\n },\n ],\n },\n ],\n },\n {\n type: AXPWidgetsList.Layouts.GridItemLayout,\n mode: 'edit',\n options: { colSpan: 4 },\n children: [\n {\n type: AXPWidgetsList.Layouts.FormField,\n mode: 'edit',\n options: {\n label:\n '@assessment-management:questionnaires.entities.questionnaire.fields.post-summary-enabled.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n path: 'post.summaryEnabled',\n mode: 'edit',\n options: {\n description:\n '@assessment-management:questionnaires.entities.questionnaire.fields.post-summary-enabled.description',\n },\n },\n ],\n },\n ],\n },\n {\n type: AXPWidgetsList.Layouts.GridItemLayout,\n mode: 'edit',\n options: { colSpan: 4 },\n children: [\n {\n type: AXPWidgetsList.Layouts.FormField,\n mode: 'edit',\n options: {\n label:\n '@assessment-management:questionnaires.entities.questionnaire.fields.post-show-calculation-results.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n path: 'post.showCalculationResults',\n mode: 'edit',\n options: {\n description:\n '@assessment-management:questionnaires.entities.questionnaire.fields.post-show-calculation-results.description',\n },\n },\n ],\n },\n ],\n },\n {\n type: AXPWidgetsList.Layouts.GridItemLayout,\n mode: 'edit',\n options: {\n colSpan: 12,\n visible: `{{ context.eval('post.summaryEnabled') === true }}`,\n },\n children: [\n {\n type: AXPWidgetsList.Layouts.FormField,\n mode: 'edit',\n options: {\n label:\n '@assessment-management:questionnaires.entities.questionnaire.fields.post-summary-content.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.RichText,\n path: 'post.summaryContent',\n mode: 'edit',\n options: {\n placeholder:\n '@assessment-management:questionnaires.entities.questionnaire.fields.post-summary-content.placeholder',\n },\n },\n ],\n },\n ],\n },\n ],\n },\n },\n },\n {\n name: 'display',\n title: '@assessment-management:questionnaires.entities.questionnaire.groups.display',\n groupId: 'display',\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: false }, inline: { enabled: false } },\n },\n schema: {\n dataType: 'object',\n nullable: true,\n defaultValue: {\n viewMode: 'single-page',\n showProgressBar: true,\n showTimer: false,\n showQuestionNumbers: true,\n validationStrategy: 'step',\n completionMode: 'submit-only',\n },\n interface: {\n type: AXPWidgetsList.Layouts.GridLayout,\n mode: 'edit',\n options: {\n grid: {\n default: {\n columns: 12,\n gap: '1rem',\n },\n },\n },\n children: [\n {\n type: AXPWidgetsList.Layouts.GridItemLayout,\n mode: 'edit',\n options: { colSpan: 6 },\n children: [\n {\n type: AXPWidgetsList.Layouts.FormField,\n mode: 'edit',\n options: {\n label:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.view-mode.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.SelectBox,\n path: 'display.viewMode',\n mode: 'edit',\n options: {\n valueField: 'id',\n textField: 'title',\n dataSource: [\n {\n id: 'single-page',\n title:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.view-mode.options.single-page',\n },\n {\n id: 'page-per-group',\n title:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.view-mode.options.page-per-group',\n },\n {\n id: 'page-per-question',\n title:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.view-mode.options.page-per-question',\n },\n {\n id: 'side-menu',\n title:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.view-mode.options.side-menu',\n },\n ],\n },\n },\n ],\n },\n ],\n },\n {\n type: AXPWidgetsList.Layouts.GridItemLayout,\n mode: 'edit',\n options: { colSpan: 6 },\n children: [\n {\n type: AXPWidgetsList.Layouts.FormField,\n mode: 'edit',\n options: {\n label: '@assessment-management:questionnaires.components.questionnaire-viewer.fields.validation-strategy.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.SelectBox,\n path: 'display.validationStrategy',\n mode: 'edit',\n options: {\n valueField: 'id',\n textField: 'title',\n dataSource: [\n {\n id: 'step',\n title:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.validation-strategy.options.step',\n },\n {\n id: 'end',\n title:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.validation-strategy.options.end',\n },\n ],\n },\n },\n ],\n },\n ],\n },\n {\n type: AXPWidgetsList.Layouts.GridItemLayout,\n mode: 'edit',\n options: { colSpan: 4 },\n children: [\n {\n type: AXPWidgetsList.Layouts.FormField,\n mode: 'edit',\n options: {\n label: '@assessment-management:questionnaires.components.questionnaire-viewer.fields.show-progress-bar.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n path: 'display.showProgressBar',\n mode: 'edit',\n },\n ],\n },\n ],\n },\n {\n type: AXPWidgetsList.Layouts.GridItemLayout,\n mode: 'edit',\n options: { colSpan: 4 },\n children: [\n {\n type: AXPWidgetsList.Layouts.FormField,\n mode: 'edit',\n options: {\n label: '@assessment-management:questionnaires.components.questionnaire-viewer.fields.show-timer.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n path: 'display.showTimer',\n mode: 'edit',\n },\n ],\n },\n ],\n },\n {\n type: AXPWidgetsList.Layouts.GridItemLayout,\n mode: 'edit',\n options: { colSpan: 4 },\n children: [\n {\n type: AXPWidgetsList.Layouts.FormField,\n mode: 'edit',\n options: {\n label: '@assessment-management:questionnaires.components.questionnaire-viewer.fields.show-question-numbers.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n path: 'display.showQuestionNumbers',\n mode: 'edit',\n },\n ],\n },\n ],\n },\n {\n type: AXPWidgetsList.Layouts.GridItemLayout,\n mode: 'edit',\n options: { colSpan: 6 },\n children: [\n {\n type: AXPWidgetsList.Layouts.FormField,\n mode: 'edit',\n options: {\n label:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.completion-mode.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.SelectBox,\n path: 'display.completionMode',\n mode: 'edit',\n options: {\n valueField: 'id',\n textField: 'title',\n dataSource: [\n {\n id: 'submit-only',\n title:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.completion-mode.options.submit-only',\n },\n {\n id: 'save-and-continue',\n title:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.completion-mode.options.save-and-continue',\n },\n ],\n },\n },\n ],\n },\n ],\n },\n ],\n },\n },\n },\n ],\n columns: [{ name: 'title' }, { name: 'description' }, { name: 'type' }],\n\n interfaces: {\n master: {\n create: {\n sections: [{ id: 'basic-info', order: 1, layout: { positions: { lg: { colSpan: 12 } } } }],\n properties: [\n { name: 'title', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'type', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n },\n update: {\n sections: [\n { id: 'basic-info', order: 1, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'pre-questionnaire', order: 2, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'post-questionnaire', order: 3, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'display', order: 4, layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n properties: [\n { name: 'title', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },\n { name: 'type', layout: { positions: { lg: { colSpan: 6, order: 2 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12, order: 3 } } } },\n { name: 'pre', layout: { label: { visible: false }, positions: { lg: { colSpan: 12, order: 4 } } } },\n { name: 'post', layout: { label: { visible: false }, positions: { lg: { colSpan: 12, order: 5 } } } },\n { name: 'display', layout: { label: { visible: false }, positions: { lg: { colSpan: 12, order: 6 } } } },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n { id: 'basic-info', order: 1, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'pre-questionnaire', order: 2, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'post-questionnaire', order: 3, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'display', order: 4, layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n properties: [\n { name: 'title', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },\n { name: 'type', layout: { positions: { lg: { colSpan: 6, order: 2 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12, order: 3 } } } },\n { name: 'pre', layout: { label: { visible: false }, positions: { lg: { colSpan: 12, order: 4 } } } },\n { name: 'post', layout: { label: { visible: false }, positions: { lg: { colSpan: 12, order: 5 } } } },\n { name: 'display', layout: { label: { visible: false }, positions: { lg: { colSpan: 12, order: 6 } } } },\n ],\n actions: [\n ...entityMasterRecordActions(),\n {\n title: '@assessment-management:questionnaires.entities.questionnaire.actions.preview.title',\n command: {\n name: `${RootConfig.module.name}.${RootConfig.entities.questionnaire.name}:Preview`,\n options: {\n questionnaireId: '{{ context.eval(\"id\") }}',\n questionnaireTitle: '{{ context.eval(\"title\") }}',\n },\n },\n priority: 'primary',\n type: 'action',\n icon: 'fa-light fa-eye',\n scope: AXPEntityCommandScope.Individual,\n } as AXPEntityAction,\n ],\n },\n list: {\n actions: [\n ...entityMasterCrudActions(),\n {\n title: '@assessment-management:questionnaires.entities.questionnaire.actions.preview.title',\n command: {\n name: `${RootConfig.module.name}.${RootConfig.entities.questionnaire.name}:Preview`,\n options: {\n questionnaireId: '{{ context.eval(\"id\") }}',\n questionnaireTitle: '{{ context.eval(\"title\") }}',\n },\n },\n priority: 'primary',\n type: 'action',\n icon: 'fa-light fa-eye',\n scope: AXPEntityCommandScope.Individual,\n } as AXPEntityAction,\n ],\n views: [\n createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] }),\n createQueryView(\n 'questionnaire',\n '@assessment-management:questionnaires.entities.questionnaire.fields.type.options.questionnaire',\n true,\n {\n conditions: [{ name: 'type', operator: { type: 'equal' }, value: 'questionnaire' }],\n },\n ),\n createQueryView(\n 'survey',\n '@assessment-management:questionnaires.entities.questionnaire.fields.type.options.survey',\n true,\n {\n conditions: [{ name: 'type', operator: { type: 'equal' }, value: 'survey' }],\n },\n ),\n createQueryView(\n 'checklist',\n '@assessment-management:questionnaires.entities.questionnaire.fields.type.options.checklist',\n true,\n {\n conditions: [{ name: 'type', operator: { type: 'equal' }, value: 'checklist' }],\n },\n ),\n createQueryView(\n 'test',\n '@assessment-management:questionnaires.entities.questionnaire.fields.type.options.test',\n true,\n {\n conditions: [{ name: 'type', operator: { type: 'equal' }, value: 'test' }],\n },\n ),\n createQueryView(\n 'evaluation',\n '@assessment-management:questionnaires.entities.questionnaire.fields.type.options.evaluation',\n true,\n {\n conditions: [{ name: 'type', operator: { type: 'equal' }, value: 'evaluation' }],\n },\n ),\n ],\n },\n },\n },\n };\n\n return entityDef;\n}\n\n//#endregion\n"],"names":[],"mappings":";;;;;;;AAAA;AAmBA;AAEA;AAEO,eAAe,OAAO,GAAA;AAC3B,IAAA,MAAM,SAAS,GAAc;AAC3B,QAAA,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI;AAC9B,QAAA,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI;AAC5C,QAAA,KAAK,EAAE,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK;AAC9C,QAAA,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI;AAC5C,QAAA,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,SAAS,EAAE;YACnB,EAAE,IAAI,EAAE,UAAU,EAAE;YACpB,EAAE,IAAI,EAAE,MAAM,EAAE;YAChB,EAAE,IAAI,EAAE,SAAS,EAAE;YACnB,EAAE,IAAI,EAAE,OAAO,EAAE;AACjB,YAAA;AACE,gBAAA,IAAI,EAAE,YAAY;AAClB,gBAAA,OAAO,EAAE;AACP,oBAAA,KAAK,EAAE,iGAAiG;AACxG,oBAAA,UAAU,EAAE,WAAW;AACvB,oBAAA,QAAQ,EAAE,OAAO;AACjB,oBAAA,KAAK,EAAE,CAAC;AACR,oBAAA,IAAI,EAAE,kBAAkB;AACzB,iBAAA;AACF,aAAA;AACF,SAAA;AACD,QAAA,OAAO,EAAE;AACP,YAAA,UAAU,EAAE,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK;AACnD,YAAA,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,WAAW;AACrD,YAAA,YAAY,EAAE;AACZ,gBAAA,KAAK,EAAE,aAAa;AACpB,gBAAA,WAAW,EAAE,YAAY;AAC1B,aAAA;AACF,SAAA;AACD,QAAA,KAAK,EAAE;AACL,YAAA;AACE,gBAAA,YAAY,EAAE,0CAA0C;AACxD,gBAAA,KAAK,EAAE,WAAW;AAClB,gBAAA,KAAK,EAAE,qFAAqF;AAC5F,gBAAA,IAAI,EAAE,wBAAwB;gBAC9B,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE;AACxC,aAAA;AACF,SAAA;AACD,QAAA,eAAe,EAAE;AACf,YAAA;AACE,gBAAA,MAAM,EAAE,CAAA,EAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAA,CAAA,EAAI,UAAU,CAAC,QAAQ,CAAC,wBAAwB,CAAC,IAAI,CAAA,CAAE;AACxF,gBAAA,KAAK,EACH,gHAAgH;AAClH,gBAAA,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,wBAAwB,CAAC,IAAI;AACvD,gBAAA,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC;AACzC,gBAAA,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,wBAAwB,EAAE,CAAC;AACvG,gBAAA,OAAO,EAAE;AACP,oBAAA,GAAG,wBAAwB,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,KAAK,eAAe,CAAC;AAC3F,oBAAA;AACE,wBAAA,KAAK,EAAE,6BAA6B;AACpC,wBAAA,OAAO,EAAE;AACP,4BAAA,IAAI,EAAE,eAAe;AACrB,4BAAA,OAAO,EAAE;AACP,gCAAA,MAAM,EAAE;AACN,oCAAA,IAAI,EAAE,IAAI;AACX,iCAAA;AACF,6BAAA;AACF,yBAAA;AACD,wBAAA,QAAQ,EAAE,WAAW;wBACrB,IAAI,EAAE,mBAAmB,CAAC,MAAM;AAChC,wBAAA,OAAO,EAAE,IAAI;wBACb,KAAK,EAAE,qBAAqB,CAAC,UAAU;AACxC,qBAAA;AACF,iBAAA;AACD,gBAAA,MAAM,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE;gBAC1D,iBAAiB,EAAE,CAAC,iBAAiB,CAAC;AACvC,aAAA;AACF,SAAA;AACD,QAAA,MAAM,EAAE;AACN,YAAA,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,qCAAqC,EAAE;AAClE,YAAA,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,+EAA+E,EAAE;AAC3G,YAAA;AACE,gBAAA,EAAE,EAAE,mBAAmB;AACvB,gBAAA,KAAK,EAAE,uFAAuF;AAC/F,aAAA;AACD,YAAA;AACE,gBAAA,EAAE,EAAE,oBAAoB;AACxB,gBAAA,KAAK,EAAE,wFAAwF;AAChG,aAAA;AACD,YAAA;AACE,gBAAA,EAAE,EAAE,SAAS;AACb,gBAAA,KAAK,EAAE,6EAA6E;AACrF,aAAA;AACF,SAAA;AACD,QAAA,UAAU,EAAE;AACV,YAAA;AACE,gBAAA,IAAI,EAAE,IAAI;AACV,gBAAA,KAAK,EAAE,IAAI;AACX,gBAAA,OAAO,EAAE,YAAY;gBACrB,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;AACzG,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,OAAO;AACb,gBAAA,KAAK,EAAE,iFAAiF;AACxF,gBAAA,OAAO,EAAE,YAAY;AACrB,gBAAA,OAAO,EAAE;AACP,oBAAA,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;AACvB,oBAAA,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;AAClE,iBAAA;AACD,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,QAAQ;AAClB,oBAAA,SAAS,EAAE;AACT,wBAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,OAAO;AACpC,wBAAA,OAAO,EAAE,EAAE,WAAW,EAAE,wBAAwB,EAAE;AACnD,qBAAA;AACF,iBAAA;AACD,gBAAA,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;AACpC,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,MAAM;AACZ,gBAAA,KAAK,EAAE,gFAAgF;AACvF,gBAAA,OAAO,EAAE,YAAY;AACrB,gBAAA,OAAO,EAAE;AACP,oBAAA,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;AACvB,oBAAA,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;AAClE,iBAAA;AACD,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,QAAQ;AAClB,oBAAA,YAAY,EAAE,eAAe;AAC7B,oBAAA,SAAS,EAAE;AACT,wBAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS;AACtC,wBAAA,OAAO,EAAE;AACP,4BAAA,UAAU,EAAE,IAAI;AAChB,4BAAA,UAAU,EAAE;AACV,gCAAA;AACE,oCAAA,EAAE,EAAE,eAAe;AACnB,oCAAA,KAAK,EACH,gGAAgG;AACnG,iCAAA;AACD,gCAAA;AACE,oCAAA,EAAE,EAAE,QAAQ;AACZ,oCAAA,KAAK,EAAE,yFAAyF;AACjG,iCAAA;AACD,gCAAA;AACE,oCAAA,EAAE,EAAE,WAAW;AACf,oCAAA,KAAK,EAAE,4FAA4F;AACpG,iCAAA;AACD,gCAAA;AACE,oCAAA,EAAE,EAAE,MAAM;AACV,oCAAA,KAAK,EAAE,uFAAuF;AAC/F,iCAAA;AACD,gCAAA;AACE,oCAAA,EAAE,EAAE,YAAY;AAChB,oCAAA,KAAK,EAAE,6FAA6F;AACrG,iCAAA;AACF,6BAAA;AACF,yBAAA;AACF,qBAAA;AACF,iBAAA;AACD,gBAAA,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;AACpC,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,aAAa;AACnB,gBAAA,KAAK,EAAE,uFAAuF;AAC9F,gBAAA,OAAO,EAAE,YAAY;AACrB,gBAAA,OAAO,EAAE;AACP,oBAAA,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;AACxB,oBAAA,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;AACnE,iBAAA;AACD,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,QAAQ;AAClB,oBAAA,SAAS,EAAE;AACT,wBAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,YAAY;AACzC,wBAAA,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE;AACrB,qBAAA;AACF,iBAAA;AACF,aAAA;AAED,YAAA;AACE,gBAAA,IAAI,EAAE,KAAK;AACX,gBAAA,KAAK,EAAE,uFAAuF;AAC9F,gBAAA,OAAO,EAAE,mBAAmB;AAC5B,gBAAA,OAAO,EAAE;AACP,oBAAA,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;AACxB,oBAAA,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;AACpE,iBAAA;AACD,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,QAAQ;AAClB,oBAAA,QAAQ,EAAE,IAAI;AACd,oBAAA,YAAY,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;AAChC,oBAAA,SAAS,EAAE;AACT,wBAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,UAAU;AACvC,wBAAA,IAAI,EAAE,MAAM;AACZ,wBAAA,OAAO,EAAE;AACP,4BAAA,IAAI,EAAE;AACJ,gCAAA,OAAO,EAAE;AACP,oCAAA,OAAO,EAAE,EAAE;AACX,oCAAA,GAAG,EAAE,MAAM;AACZ,iCAAA;AACF,6BAAA;AACF,yBAAA;AACD,wBAAA,QAAQ,EAAE;AACR,4BAAA;AACE,gCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,cAAc;AAC3C,gCAAA,IAAI,EAAE,MAAM;AACZ,gCAAA,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;AACxB,gCAAA,QAAQ,EAAE;AACR,oCAAA;AACE,wCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS;AACtC,wCAAA,IAAI,EAAE,MAAM;AACZ,wCAAA,OAAO,EAAE;AACP,4CAAA,KAAK,EAAE,uFAAuF;AAC9F,4CAAA,SAAS,EAAE,IAAI;AAChB,yCAAA;AACD,wCAAA,QAAQ,EAAE;AACR,4CAAA;AACE,gDAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,YAAY;AACzC,gDAAA,IAAI,EAAE,aAAa;AACnB,gDAAA,IAAI,EAAE,MAAM;AACZ,gDAAA,OAAO,EAAE;AACP,oDAAA,WAAW,EACT,6FAA6F;AAChG,iDAAA;AACF,6CAAA;AACF,yCAAA;AACF,qCAAA;AACF,iCAAA;AACF,6BAAA;AACD,4BAAA;AACE,gCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,cAAc;AAC3C,gCAAA,IAAI,EAAE,MAAM;AACZ,gCAAA,OAAO,EAAE;AACP,oCAAA,OAAO,EAAE,EAAE;AACX,oCAAA,OAAO,EAAE,CAAA,0CAAA,CAA4C;AACtD,iCAAA;AACD,gCAAA,QAAQ,EAAE;AACR,oCAAA;AACE,wCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS;AACtC,wCAAA,IAAI,EAAE,MAAM;AACZ,wCAAA,OAAO,EAAE;AACP,4CAAA,KAAK,EAAE,uFAAuF;AAC9F,4CAAA,SAAS,EAAE,IAAI;AAChB,yCAAA;AACD,wCAAA,QAAQ,EAAE;AACR,4CAAA;AACE,gDAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,QAAQ;AACrC,gDAAA,IAAI,EAAE,aAAa;AACnB,gDAAA,IAAI,EAAE,MAAM;AACZ,gDAAA,OAAO,EAAE;AACP,oDAAA,WAAW,EACT,6FAA6F;AAChG,iDAAA;AACF,6CAAA;AACF,yCAAA;AACF,qCAAA;AACF,iCAAA;AACF,6BAAA;AACF,yBAAA;AACF,qBAAA;AACF,iBAAA;AACF,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,MAAM;AACZ,gBAAA,KAAK,EAAE,wFAAwF;AAC/F,gBAAA,OAAO,EAAE,oBAAoB;AAC7B,gBAAA,OAAO,EAAE;AACP,oBAAA,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;AACxB,oBAAA,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;AACpE,iBAAA;AACD,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,QAAQ;AAClB,oBAAA,QAAQ,EAAE,IAAI;AACd,oBAAA,YAAY,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE;AAC5F,oBAAA,SAAS,EAAE;AACT,wBAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,UAAU;AACvC,wBAAA,IAAI,EAAE,MAAM;AACZ,wBAAA,OAAO,EAAE;AACP,4BAAA,IAAI,EAAE;AACJ,gCAAA,OAAO,EAAE;AACP,oCAAA,OAAO,EAAE,EAAE;AACX,oCAAA,GAAG,EAAE,MAAM;AACZ,iCAAA;AACF,6BAAA;AACF,yBAAA;AACD,wBAAA,QAAQ,EAAE;AACR,4BAAA;AACE,gCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,cAAc;AAC3C,gCAAA,IAAI,EAAE,MAAM;AACZ,gCAAA,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE;AACvB,gCAAA,QAAQ,EAAE;AACR,oCAAA;AACE,wCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS;AACtC,wCAAA,IAAI,EAAE,MAAM;AACZ,wCAAA,OAAO,EAAE;AACP,4CAAA,KAAK,EACH,+FAA+F;AACjG,4CAAA,SAAS,EAAE,IAAI;AAChB,yCAAA;AACD,wCAAA,QAAQ,EAAE;AACR,4CAAA;AACE,gDAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,YAAY;AACzC,gDAAA,IAAI,EAAE,oBAAoB;AAC1B,gDAAA,IAAI,EAAE,MAAM;AACZ,gDAAA,OAAO,EAAE;AACP,oDAAA,WAAW,EACT,qGAAqG;AACxG,iDAAA;AACF,6CAAA;AACF,yCAAA;AACF,qCAAA;AACF,iCAAA;AACF,6BAAA;AACD,4BAAA;AACE,gCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,cAAc;AAC3C,gCAAA,IAAI,EAAE,MAAM;AACZ,gCAAA,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE;AACvB,gCAAA,QAAQ,EAAE;AACR,oCAAA;AACE,wCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS;AACtC,wCAAA,IAAI,EAAE,MAAM;AACZ,wCAAA,OAAO,EAAE;AACP,4CAAA,KAAK,EACH,gGAAgG;AAClG,4CAAA,SAAS,EAAE,IAAI;AAChB,yCAAA;AACD,wCAAA,QAAQ,EAAE;AACR,4CAAA;AACE,gDAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,YAAY;AACzC,gDAAA,IAAI,EAAE,qBAAqB;AAC3B,gDAAA,IAAI,EAAE,MAAM;AACZ,gDAAA,OAAO,EAAE;AACP,oDAAA,WAAW,EACT,sGAAsG;AACzG,iDAAA;AACF,6CAAA;AACF,yCAAA;AACF,qCAAA;AACF,iCAAA;AACF,6BAAA;AACD,4BAAA;AACE,gCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,cAAc;AAC3C,gCAAA,IAAI,EAAE,MAAM;AACZ,gCAAA,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE;AACvB,gCAAA,QAAQ,EAAE;AACR,oCAAA;AACE,wCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS;AACtC,wCAAA,IAAI,EAAE,MAAM;AACZ,wCAAA,OAAO,EAAE;AACP,4CAAA,KAAK,EACH,yGAAyG;AAC3G,4CAAA,SAAS,EAAE,IAAI;AAChB,yCAAA;AACD,wCAAA,QAAQ,EAAE;AACR,4CAAA;AACE,gDAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,YAAY;AACzC,gDAAA,IAAI,EAAE,6BAA6B;AACnC,gDAAA,IAAI,EAAE,MAAM;AACZ,gDAAA,OAAO,EAAE;AACP,oDAAA,WAAW,EACT,+GAA+G;AAClH,iDAAA;AACF,6CAAA;AACF,yCAAA;AACF,qCAAA;AACF,iCAAA;AACF,6BAAA;AACD,4BAAA;AACE,gCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,cAAc;AAC3C,gCAAA,IAAI,EAAE,MAAM;AACZ,gCAAA,OAAO,EAAE;AACP,oCAAA,OAAO,EAAE,EAAE;AACX,oCAAA,OAAO,EAAE,CAAA,kDAAA,CAAoD;AAC9D,iCAAA;AACD,gCAAA,QAAQ,EAAE;AACR,oCAAA;AACE,wCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS;AACtC,wCAAA,IAAI,EAAE,MAAM;AACZ,wCAAA,OAAO,EAAE;AACP,4CAAA,KAAK,EACH,gGAAgG;AAClG,4CAAA,SAAS,EAAE,IAAI;AAChB,yCAAA;AACD,wCAAA,QAAQ,EAAE;AACR,4CAAA;AACE,gDAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,QAAQ;AACrC,gDAAA,IAAI,EAAE,qBAAqB;AAC3B,gDAAA,IAAI,EAAE,MAAM;AACZ,gDAAA,OAAO,EAAE;AACP,oDAAA,WAAW,EACT,sGAAsG;AACzG,iDAAA;AACF,6CAAA;AACF,yCAAA;AACF,qCAAA;AACF,iCAAA;AACF,6BAAA;AACF,yBAAA;AACF,qBAAA;AACF,iBAAA;AACF,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,SAAS;AACf,gBAAA,KAAK,EAAE,6EAA6E;AACpF,gBAAA,OAAO,EAAE,SAAS;AAClB,gBAAA,OAAO,EAAE;AACP,oBAAA,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;AACxB,oBAAA,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;AACpE,iBAAA;AACD,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,QAAQ;AAClB,oBAAA,QAAQ,EAAE,IAAI;AACd,oBAAA,YAAY,EAAE;AACZ,wBAAA,QAAQ,EAAE,aAAa;AACvB,wBAAA,eAAe,EAAE,IAAI;AACrB,wBAAA,SAAS,EAAE,KAAK;AAChB,wBAAA,mBAAmB,EAAE,IAAI;AACzB,wBAAA,kBAAkB,EAAE,MAAM;AAC1B,wBAAA,cAAc,EAAE,aAAa;AAC9B,qBAAA;AACD,oBAAA,SAAS,EAAE;AACT,wBAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,UAAU;AACvC,wBAAA,IAAI,EAAE,MAAM;AACZ,wBAAA,OAAO,EAAE;AACP,4BAAA,IAAI,EAAE;AACJ,gCAAA,OAAO,EAAE;AACP,oCAAA,OAAO,EAAE,EAAE;AACX,oCAAA,GAAG,EAAE,MAAM;AACZ,iCAAA;AACF,6BAAA;AACF,yBAAA;AACD,wBAAA,QAAQ,EAAE;AACR,4BAAA;AACE,gCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,cAAc;AAC3C,gCAAA,IAAI,EAAE,MAAM;AACZ,gCAAA,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE;AACvB,gCAAA,QAAQ,EAAE;AACR,oCAAA;AACE,wCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS;AACtC,wCAAA,IAAI,EAAE,MAAM;AACZ,wCAAA,OAAO,EAAE;AACP,4CAAA,KAAK,EACH,8FAA8F;AAChG,4CAAA,SAAS,EAAE,IAAI;AAChB,yCAAA;AACD,wCAAA,QAAQ,EAAE;AACR,4CAAA;AACE,gDAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS;AACtC,gDAAA,IAAI,EAAE,kBAAkB;AACxB,gDAAA,IAAI,EAAE,MAAM;AACZ,gDAAA,OAAO,EAAE;AACP,oDAAA,UAAU,EAAE,IAAI;AAChB,oDAAA,SAAS,EAAE,OAAO;AAClB,oDAAA,UAAU,EAAE;AACV,wDAAA;AACE,4DAAA,EAAE,EAAE,aAAa;AACjB,4DAAA,KAAK,EACH,4GAA4G;AAC/G,yDAAA;AACD,wDAAA;AACE,4DAAA,EAAE,EAAE,gBAAgB;AACpB,4DAAA,KAAK,EACH,+GAA+G;AAClH,yDAAA;AACD,wDAAA;AACE,4DAAA,EAAE,EAAE,mBAAmB;AACvB,4DAAA,KAAK,EACH,kHAAkH;AACrH,yDAAA;AACD,wDAAA;AACE,4DAAA,EAAE,EAAE,WAAW;AACf,4DAAA,KAAK,EACH,0GAA0G;AAC7G,yDAAA;AACF,qDAAA;AACF,iDAAA;AACF,6CAAA;AACF,yCAAA;AACF,qCAAA;AACF,iCAAA;AACF,6BAAA;AACD,4BAAA;AACE,gCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,cAAc;AAC3C,gCAAA,IAAI,EAAE,MAAM;AACZ,gCAAA,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE;AACvB,gCAAA,QAAQ,EAAE;AACR,oCAAA;AACE,wCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS;AACtC,wCAAA,IAAI,EAAE,MAAM;AACZ,wCAAA,OAAO,EAAE;AACP,4CAAA,KAAK,EAAE,wGAAwG;AAC/G,4CAAA,SAAS,EAAE,IAAI;AAChB,yCAAA;AACD,wCAAA,QAAQ,EAAE;AACR,4CAAA;AACE,gDAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS;AACtC,gDAAA,IAAI,EAAE,4BAA4B;AAClC,gDAAA,IAAI,EAAE,MAAM;AACZ,gDAAA,OAAO,EAAE;AACP,oDAAA,UAAU,EAAE,IAAI;AAChB,oDAAA,SAAS,EAAE,OAAO;AAClB,oDAAA,UAAU,EAAE;AACV,wDAAA;AACE,4DAAA,EAAE,EAAE,MAAM;AACV,4DAAA,KAAK,EACH,+GAA+G;AAClH,yDAAA;AACD,wDAAA;AACE,4DAAA,EAAE,EAAE,KAAK;AACT,4DAAA,KAAK,EACH,8GAA8G;AACjH,yDAAA;AACF,qDAAA;AACF,iDAAA;AACF,6CAAA;AACF,yCAAA;AACF,qCAAA;AACF,iCAAA;AACF,6BAAA;AACD,4BAAA;AACE,gCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,cAAc;AAC3C,gCAAA,IAAI,EAAE,MAAM;AACZ,gCAAA,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE;AACvB,gCAAA,QAAQ,EAAE;AACR,oCAAA;AACE,wCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS;AACtC,wCAAA,IAAI,EAAE,MAAM;AACZ,wCAAA,OAAO,EAAE;AACP,4CAAA,KAAK,EAAE,sGAAsG;AAC7G,4CAAA,SAAS,EAAE,IAAI;AAChB,yCAAA;AACD,wCAAA,QAAQ,EAAE;AACR,4CAAA;AACE,gDAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,YAAY;AACzC,gDAAA,IAAI,EAAE,yBAAyB;AAC/B,gDAAA,IAAI,EAAE,MAAM;AACb,6CAAA;AACF,yCAAA;AACF,qCAAA;AACF,iCAAA;AACF,6BAAA;AACD,4BAAA;AACE,gCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,cAAc;AAC3C,gCAAA,IAAI,EAAE,MAAM;AACZ,gCAAA,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE;AACvB,gCAAA,QAAQ,EAAE;AACR,oCAAA;AACE,wCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS;AACtC,wCAAA,IAAI,EAAE,MAAM;AACZ,wCAAA,OAAO,EAAE;AACP,4CAAA,KAAK,EAAE,+FAA+F;AACtG,4CAAA,SAAS,EAAE,IAAI;AAChB,yCAAA;AACD,wCAAA,QAAQ,EAAE;AACR,4CAAA;AACE,gDAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,YAAY;AACzC,gDAAA,IAAI,EAAE,mBAAmB;AACzB,gDAAA,IAAI,EAAE,MAAM;AACb,6CAAA;AACF,yCAAA;AACF,qCAAA;AACF,iCAAA;AACF,6BAAA;AACD,4BAAA;AACE,gCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,cAAc;AAC3C,gCAAA,IAAI,EAAE,MAAM;AACZ,gCAAA,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE;AACvB,gCAAA,QAAQ,EAAE;AACR,oCAAA;AACE,wCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS;AACtC,wCAAA,IAAI,EAAE,MAAM;AACZ,wCAAA,OAAO,EAAE;AACP,4CAAA,KAAK,EAAE,0GAA0G;AACjH,4CAAA,SAAS,EAAE,IAAI;AAChB,yCAAA;AACD,wCAAA,QAAQ,EAAE;AACR,4CAAA;AACE,gDAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,YAAY;AACzC,gDAAA,IAAI,EAAE,6BAA6B;AACnC,gDAAA,IAAI,EAAE,MAAM;AACb,6CAAA;AACF,yCAAA;AACF,qCAAA;AACF,iCAAA;AACF,6BAAA;AACD,4BAAA;AACE,gCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,cAAc;AAC3C,gCAAA,IAAI,EAAE,MAAM;AACZ,gCAAA,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE;AACvB,gCAAA,QAAQ,EAAE;AACR,oCAAA;AACE,wCAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS;AACtC,wCAAA,IAAI,EAAE,MAAM;AACZ,wCAAA,OAAO,EAAE;AACP,4CAAA,KAAK,EACH,oGAAoG;AACtG,4CAAA,SAAS,EAAE,IAAI;AAChB,yCAAA;AACD,wCAAA,QAAQ,EAAE;AACR,4CAAA;AACE,gDAAA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS;AACtC,gDAAA,IAAI,EAAE,wBAAwB;AAC9B,gDAAA,IAAI,EAAE,MAAM;AACZ,gDAAA,OAAO,EAAE;AACP,oDAAA,UAAU,EAAE,IAAI;AAChB,oDAAA,SAAS,EAAE,OAAO;AAClB,oDAAA,UAAU,EAAE;AACV,wDAAA;AACE,4DAAA,EAAE,EAAE,aAAa;AACjB,4DAAA,KAAK,EACH,kHAAkH;AACrH,yDAAA;AACD,wDAAA;AACE,4DAAA,EAAE,EAAE,mBAAmB;AACvB,4DAAA,KAAK,EACH,wHAAwH;AAC3H,yDAAA;AACF,qDAAA;AACF,iDAAA;AACF,6CAAA;AACF,yCAAA;AACF,qCAAA;AACF,iCAAA;AACF,6BAAA;AACF,yBAAA;AACF,qBAAA;AACF,iBAAA;AACF,aAAA;AACF,SAAA;AACD,QAAA,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AAEvE,QAAA,UAAU,EAAE;AACV,YAAA,MAAM,EAAE;AACN,gBAAA,MAAM,EAAE;oBACN,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;AAC1F,oBAAA,UAAU,EAAE;AACV,wBAAA,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AACjE,wBAAA,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AAChE,wBAAA,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AACxE,qBAAA;AACF,iBAAA;AACD,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE;wBACR,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;wBAC9E,EAAE,EAAE,EAAE,mBAAmB,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;wBACrF,EAAE,EAAE,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;wBACtF,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AAC5E,qBAAA;AACD,oBAAA,UAAU,EAAE;wBACV,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;wBAC1E,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;wBACzE,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;AACjF,wBAAA,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;AACpG,wBAAA,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;AACrG,wBAAA,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;AACzG,qBAAA;AACF,iBAAA;AACD,gBAAA,MAAM,EAAE;AACN,oBAAA,KAAK,EAAE,WAAW;AAClB,oBAAA,QAAQ,EAAE;wBACR,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;wBAC9E,EAAE,EAAE,EAAE,mBAAmB,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;wBACrF,EAAE,EAAE,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;wBACtF,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AAC5E,qBAAA;AACD,oBAAA,UAAU,EAAE;wBACV,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;wBAC1E,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;wBACzE,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;AACjF,wBAAA,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;AACpG,wBAAA,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;AACrG,wBAAA,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;AACzG,qBAAA;AACD,oBAAA,OAAO,EAAE;AACP,wBAAA,GAAG,yBAAyB,EAAE;AAC9B,wBAAA;AACE,4BAAA,KAAK,EAAE,oFAAoF;AAC3F,4BAAA,OAAO,EAAE;AACP,gCAAA,IAAI,EAAE,CAAA,EAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAA,CAAA,EAAI,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAA,QAAA,CAAU;AACnF,gCAAA,OAAO,EAAE;AACP,oCAAA,eAAe,EAAE,0BAA0B;AAC3C,oCAAA,kBAAkB,EAAE,6BAA6B;AAClD,iCAAA;AACF,6BAAA;AACD,4BAAA,QAAQ,EAAE,SAAS;AACnB,4BAAA,IAAI,EAAE,QAAQ;AACd,4BAAA,IAAI,EAAE,iBAAiB;4BACvB,KAAK,EAAE,qBAAqB,CAAC,UAAU;AACrB,yBAAA;AACrB,qBAAA;AACF,iBAAA;AACD,gBAAA,IAAI,EAAE;AACJ,oBAAA,OAAO,EAAE;AACP,wBAAA,GAAG,uBAAuB,EAAE;AAC5B,wBAAA;AACE,4BAAA,KAAK,EAAE,oFAAoF;AAC3F,4BAAA,OAAO,EAAE;AACP,gCAAA,IAAI,EAAE,CAAA,EAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAA,CAAA,EAAI,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAA,QAAA,CAAU;AACnF,gCAAA,OAAO,EAAE;AACP,oCAAA,eAAe,EAAE,0BAA0B;AAC3C,oCAAA,kBAAkB,EAAE,6BAA6B;AAClD,iCAAA;AACF,6BAAA;AACD,4BAAA,QAAQ,EAAE,SAAS;AACnB,4BAAA,IAAI,EAAE,QAAQ;AACd,4BAAA,IAAI,EAAE,iBAAiB;4BACvB,KAAK,EAAE,qBAAqB,CAAC,UAAU;AACrB,yBAAA;AACrB,qBAAA;AACD,oBAAA,KAAK,EAAE;AACL,wBAAA,kBAAkB,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;AAC9D,wBAAA,eAAe,CACb,eAAe,EACf,gGAAgG,EAChG,IAAI,EACJ;AACE,4BAAA,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC;yBACpF,CACF;AACD,wBAAA,eAAe,CACb,QAAQ,EACR,yFAAyF,EACzF,IAAI,EACJ;AACE,4BAAA,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;yBAC7E,CACF;AACD,wBAAA,eAAe,CACb,WAAW,EACX,4FAA4F,EAC5F,IAAI,EACJ;AACE,4BAAA,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;yBAChF,CACF;AACD,wBAAA,eAAe,CACb,MAAM,EACN,uFAAuF,EACvF,IAAI,EACJ;AACE,4BAAA,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;yBAC3E,CACF;AACD,wBAAA,eAAe,CACb,YAAY,EACZ,6FAA6F,EAC7F,IAAI,EACJ;AACE,4BAAA,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;yBACjF,CACF;AACF,qBAAA;AACF,iBAAA;AACF,aAAA;AACF,SAAA;KACF;AAED,IAAA,OAAO,SAAS;AAClB;AAEA;;;;"}
@@ -1,61 +0,0 @@
1
- import { AXTranslationService } from '@acorex/core/translation';
2
- import { AXPEntityService } from '@acorex/platform/layout/entity';
3
- import * as i0 from '@angular/core';
4
- import { inject, Injectable } from '@angular/core';
5
- import { R as RootConfig } from './acorex-modules-assessment-management-acorex-modules-assessment-management-o8aFazwA.mjs';
6
-
7
- const QUESTIONNAIRE_QUESTIONS_SAVE_COMMAND = 'Questionnaire:Questions:Save';
8
- /**
9
- * Command to save the questionnaire questions field.
10
- * By default uses entity update (patch) with { questions }.
11
- * Can be overridden for custom API logic.
12
- */
13
- class AXMSaveQuestionnaireQuestionsCommand {
14
- constructor() {
15
- this.entityService = inject(AXPEntityService);
16
- this.translationService = inject(AXTranslationService);
17
- }
18
- async execute(input) {
19
- const { id, questions } = input;
20
- if (!id) {
21
- return {
22
- success: false,
23
- message: {
24
- text: await this.translationService.translateAsync('@general:messages.entity.invalid-data'),
25
- },
26
- };
27
- }
28
- try {
29
- const entityRef = `${RootConfig.module.name}.${RootConfig.entities.questionnaire.name}`;
30
- const dataAccessor = this.entityService.withEntity(entityRef).data();
31
- await dataAccessor.update(id, { questions });
32
- return {
33
- success: true,
34
- data: { id, questions },
35
- message: {
36
- text: await this.translationService.translateAsync('@general:messages.generic.success.description'),
37
- },
38
- };
39
- }
40
- catch (error) {
41
- const message = error instanceof Error
42
- ? error.message
43
- : await this.translationService.translateAsync('@general:messages.generic.error.description');
44
- return {
45
- success: false,
46
- message: { text: message },
47
- };
48
- }
49
- }
50
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMSaveQuestionnaireQuestionsCommand, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
51
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMSaveQuestionnaireQuestionsCommand, providedIn: 'root' }); }
52
- }
53
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMSaveQuestionnaireQuestionsCommand, decorators: [{
54
- type: Injectable,
55
- args: [{
56
- providedIn: 'root',
57
- }]
58
- }] });
59
-
60
- export { AXMSaveQuestionnaireQuestionsCommand, QUESTIONNAIRE_QUESTIONS_SAVE_COMMAND };
61
- //# sourceMappingURL=acorex-modules-assessment-management-save-questionnaire-questions.command-koGmUbNE.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-modules-assessment-management-save-questionnaire-questions.command-koGmUbNE.mjs","sources":["../../../../libs/modules/assessment-management/src/lib/features/questionnaire-builder/pages/questionnaire-questions-page/save-questionnaire-questions.command.ts"],"sourcesContent":["import { AXTranslationService } from '@acorex/core/translation';\nimport { AXPExecuteCommandResult } from '@acorex/platform/core';\nimport { AXPCommand } from '@acorex/platform/runtime';\nimport { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { inject, Injectable } from '@angular/core';\nimport { RootConfig } from '../../../../const';\nimport type { QuestionnaireBuilderValue } from '../../questionnaire-builder.types';\n\nexport const QUESTIONNAIRE_QUESTIONS_SAVE_COMMAND = 'Questionnaire:Questions:Save';\n\nexport interface SaveQuestionnaireQuestionsInput {\n id: string;\n questions: QuestionnaireBuilderValue;\n __context__?: Record<string, unknown>;\n}\n\n/**\n * Command to save the questionnaire questions field.\n * By default uses entity update (patch) with { questions }.\n * Can be overridden for custom API logic.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class AXMSaveQuestionnaireQuestionsCommand implements AXPCommand<SaveQuestionnaireQuestionsInput, unknown> {\n private readonly entityService = inject(AXPEntityService);\n private readonly translationService = inject(AXTranslationService);\n\n async execute(input: SaveQuestionnaireQuestionsInput): Promise<AXPExecuteCommandResult<unknown>> {\n const { id, questions } = input;\n\n if (!id) {\n return {\n success: false,\n message: {\n text: await this.translationService.translateAsync('@general:messages.entity.invalid-data'),\n },\n };\n }\n\n try {\n const entityRef = `${RootConfig.module.name}.${RootConfig.entities.questionnaire.name}`;\n const dataAccessor = this.entityService.withEntity(entityRef).data<any, any>();\n\n await dataAccessor.update(id, { questions });\n\n return {\n success: true,\n data: { id, questions },\n message: {\n text: await this.translationService.translateAsync('@general:messages.generic.success.description'),\n },\n };\n } catch (error) {\n const message =\n error instanceof Error\n ? error.message\n : await this.translationService.translateAsync('@general:messages.generic.error.description');\n\n return {\n success: false,\n message: { text: message },\n };\n }\n }\n}\n"],"names":[],"mappings":";;;;;;AAQO,MAAM,oCAAoC,GAAG;AAQpD;;;;AAIG;MAIU,oCAAoC,CAAA;AAHjD,IAAA,WAAA,GAAA;AAImB,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,gBAAgB,CAAC;AACxC,QAAA,IAAA,CAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC;AAuCnE,IAAA;IArCC,MAAM,OAAO,CAAC,KAAsC,EAAA;AAClD,QAAA,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,KAAK;QAE/B,IAAI,CAAC,EAAE,EAAE;YACP,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE;oBACP,IAAI,EAAE,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,uCAAuC,CAAC;AAC5F,iBAAA;aACF;QACH;AAEA,QAAA,IAAI;AACF,YAAA,MAAM,SAAS,GAAG,CAAA,EAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAA,CAAA,EAAI,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE;AACvF,YAAA,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,IAAI,EAAY;YAE9E,MAAM,YAAY,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC;YAE5C,OAAO;AACL,gBAAA,OAAO,EAAE,IAAI;AACb,gBAAA,IAAI,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE;AACvB,gBAAA,OAAO,EAAE;oBACP,IAAI,EAAE,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,+CAA+C,CAAC;AACpG,iBAAA;aACF;QACH;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,MAAM,OAAO,GACX,KAAK,YAAY;kBACb,KAAK,CAAC;kBACN,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,6CAA6C,CAAC;YAEjG,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;aAC3B;QACH;IACF;8GAxCW,oCAAoC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAApC,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oCAAoC,cAFnC,MAAM,EAAA,CAAA,CAAA;;2FAEP,oCAAoC,EAAA,UAAA,EAAA,CAAA;kBAHhD,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;;;"}
@@ -1,157 +0,0 @@
1
- import { AXTranslationService } from '@acorex/core/translation';
2
- import * as i0 from '@angular/core';
3
- import { inject, Injectable } from '@angular/core';
4
- import { AXPEntityService } from '@acorex/platform/layout/entity';
5
- import { isString, isEmpty, toString, get, first, defaultTo } from 'lodash-es';
6
- import { A as AXMQuestionnaireViewerService, R as RootConfig } from './acorex-modules-assessment-management-acorex-modules-assessment-management-o8aFazwA.mjs';
7
- import { o as openAssessmentSessionAnswersView } from './acorex-modules-assessment-management-assessment-session-answers-view.util-BUQa_TSY.mjs';
8
-
9
- //#endregion
10
- //#region ---- View Case Last Session Answers Command ----
11
- /**
12
- * Opens a readonly view of the most recent assessment session answers for a case.
13
- */
14
- class ViewCaseLastSessionAnswersCommand {
15
- constructor() {
16
- //#region ---- Services & Dependencies ----
17
- this.entityService = inject(AXPEntityService);
18
- this.questionnaireViewerService = inject(AXMQuestionnaireViewerService);
19
- this.translationService = inject(AXTranslationService);
20
- }
21
- //#endregion
22
- //#region ---- Command Implementation ----
23
- /**
24
- * Returns a non-empty string or undefined.
25
- */
26
- asNonEmptyString(value) {
27
- if (isString(value) && !isEmpty(value)) {
28
- return value;
29
- }
30
- if (value != null && !isString(value)) {
31
- const normalized = toString(value).trim();
32
- return isEmpty(normalized) ? undefined : normalized;
33
- }
34
- return undefined;
35
- }
36
- /**
37
- * Resolves case id from root input, action options, or list row data.
38
- */
39
- resolveCaseId(input) {
40
- const candidates = [
41
- get(input, 'caseId'),
42
- get(input, 'options.caseId'),
43
- get(input, '__context__.options.caseId'),
44
- get(input, '__context__.data.id'),
45
- ];
46
- for (const candidate of candidates) {
47
- const resolved = this.asNonEmptyString(candidate);
48
- if (resolved) {
49
- return resolved;
50
- }
51
- }
52
- return null;
53
- }
54
- /**
55
- * Loads case by id using query first, then byKey.
56
- */
57
- async loadCase(caseId) {
58
- const caseAccessor = this.entityService
59
- .withEntity(RootConfig.module.name, RootConfig.entities.assessmentCase.name)
60
- .data();
61
- const listMatch = await caseAccessor.query({
62
- skip: 0,
63
- take: 1,
64
- filter: {
65
- field: 'id',
66
- operator: { type: 'equal' },
67
- value: caseId,
68
- },
69
- });
70
- const fromQuery = first(listMatch.items);
71
- if (fromQuery) {
72
- return fromQuery;
73
- }
74
- return defaultTo(await caseAccessor.byKey(caseId), null);
75
- }
76
- /**
77
- * Finds the latest session record for a case (by lastSavedAt, then createdAt).
78
- */
79
- async findLatestSession(caseId) {
80
- const sessionAccessor = this.entityService
81
- .withEntity(RootConfig.module.name, RootConfig.entities.assessmentSession.name)
82
- .data();
83
- const listMatch = await sessionAccessor.query({
84
- skip: 0,
85
- take: 1,
86
- sort: [
87
- { field: 'lastSavedAt', dir: 'desc' },
88
- { field: 'createdAt', dir: 'desc' },
89
- ],
90
- filter: {
91
- field: 'caseId',
92
- operator: { type: 'equal' },
93
- value: caseId,
94
- },
95
- });
96
- return first(listMatch.items) ?? null;
97
- }
98
- async execute(input) {
99
- try {
100
- const caseId = this.resolveCaseId(input);
101
- if (!caseId) {
102
- return {
103
- success: false,
104
- message: {
105
- text: 'Assessment case ID is required',
106
- },
107
- };
108
- }
109
- const assessmentCase = await this.loadCase(caseId);
110
- if (!assessmentCase) {
111
- return {
112
- success: false,
113
- message: {
114
- text: `Assessment case with ID ${caseId} not found`,
115
- },
116
- };
117
- }
118
- const session = await this.findLatestSession(caseId);
119
- if (!session) {
120
- const messageKey = '@assessment-management:cases.actions.view-last-session-answers.no-session';
121
- const messageText = (await this.translationService.translateAsync(messageKey)) ||
122
- 'No assessment session found for this case';
123
- return {
124
- success: false,
125
- message: {
126
- text: messageText,
127
- },
128
- };
129
- }
130
- await openAssessmentSessionAnswersView({
131
- entityService: this.entityService,
132
- questionnaireViewerService: this.questionnaireViewerService,
133
- translationService: this.translationService,
134
- }, session, assessmentCase);
135
- return {
136
- success: true,
137
- };
138
- }
139
- catch (error) {
140
- const message = error instanceof Error ? error.message : 'Unknown error';
141
- return {
142
- success: false,
143
- message: {
144
- text: `Error viewing last session answers: ${message}`,
145
- },
146
- };
147
- }
148
- }
149
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: ViewCaseLastSessionAnswersCommand, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
150
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: ViewCaseLastSessionAnswersCommand }); }
151
- }
152
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: ViewCaseLastSessionAnswersCommand, decorators: [{
153
- type: Injectable
154
- }] });
155
-
156
- export { ViewCaseLastSessionAnswersCommand };
157
- //# sourceMappingURL=acorex-modules-assessment-management-view-case-last-session-answers.command-NTuDdoYk.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-modules-assessment-management-view-case-last-session-answers.command-NTuDdoYk.mjs","sources":["../../../../libs/modules/assessment-management/src/lib/features/questionnaire-viewer/commands/view-case-last-session-answers.command.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPExecuteCommandResult } from '@acorex/platform/core';\nimport { AXPCommand } from '@acorex/platform/runtime';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { Injectable, inject } from '@angular/core';\nimport { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { defaultTo, first, get, isEmpty, isString, toString } from 'lodash-es';\nimport { AXMQuestionnaireViewerService } from '../questionnaire-viewer.service';\nimport type { AXMAssessmentManagementAssessmentCaseEntityModel } from '../../../entities/assessment-case/assessment-case.types';\nimport type { AXMAssessmentManagementAssessmentSessionEntityModel } from '../../../entities/assessment-session/assessment-session.types';\nimport { RootConfig } from '../../../const';\nimport { openAssessmentSessionAnswersView } from '../utils/assessment-session-answers-view.util';\n\n//#endregion\n\n//#region ---- Command Input/Output Types ----\n\n/**\n * Input for ViewCaseLastSessionAnswers command.\n */\nexport interface ViewCaseLastSessionAnswersCommandInput {\n /** Assessment Case ID to resolve the latest session for. */\n caseId: string;\n}\n\n/** Entity list passes evaluated action options on `__context__.options` / row `data`. */\ntype ViewCaseLastSessionAnswersCommandInvocation = ViewCaseLastSessionAnswersCommandInput & {\n options?: Partial<ViewCaseLastSessionAnswersCommandInput>;\n __context__?: {\n options?: Partial<ViewCaseLastSessionAnswersCommandInput>;\n data?: Record<string, unknown>;\n };\n};\n\n//#endregion\n\n//#region ---- View Case Last Session Answers Command ----\n\n/**\n * Opens a readonly view of the most recent assessment session answers for a case.\n */\n@Injectable()\nexport class ViewCaseLastSessionAnswersCommand implements AXPCommand<ViewCaseLastSessionAnswersCommandInput, 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 case id from root input, action options, or list row data.\n */\n private resolveCaseId(input: ViewCaseLastSessionAnswersCommandInvocation): string | null {\n const candidates = [\n get(input, 'caseId'),\n get(input, 'options.caseId'),\n get(input, '__context__.options.caseId'),\n get(input, '__context__.data.id'),\n ];\n\n for (const candidate of candidates) {\n const resolved = this.asNonEmptyString(candidate);\n if (resolved) {\n return resolved;\n }\n }\n\n return 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: ViewCaseLastSessionAnswersCommandInvocation): Promise<AXPExecuteCommandResult<void>> {\n try {\n const caseId = this.resolveCaseId(input);\n if (!caseId) {\n return {\n success: false,\n message: {\n text: 'Assessment case ID is required',\n },\n };\n }\n\n const 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 const 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 await openAssessmentSessionAnswersView(\n {\n entityService: this.entityService,\n questionnaireViewerService: this.questionnaireViewerService,\n translationService: this.translationService,\n },\n session,\n assessmentCase,\n );\n\n return {\n success: true,\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 last session answers: ${message}`,\n },\n };\n }\n }\n\n //#endregion\n}\n\n//#endregion\n"],"names":[],"mappings":"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"}