@acorex-platform/module-assessment-management-client 0.0.53 → 0.0.56

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 (74) hide show
  1. package/fesm2022/{acorex-platform-module-assessment-management-client-acorex-platform-module-assessment-management-client-CZtfv53E.mjs → acorex-platform-module-assessment-management-client-acorex-platform-module-assessment-management-client-juxXq2pM.mjs} +42 -42
  2. package/fesm2022/{acorex-platform-module-assessment-management-client-acorex-platform-module-assessment-management-client-CZtfv53E.mjs.map → acorex-platform-module-assessment-management-client-acorex-platform-module-assessment-management-client-juxXq2pM.mjs.map} +1 -1
  3. package/fesm2022/{acorex-platform-module-assessment-management-client-assessment-voice.commands-DvD4E7zS.mjs → acorex-platform-module-assessment-management-client-assessment-voice.commands-CaElbuNh.mjs} +2 -2
  4. package/fesm2022/{acorex-platform-module-assessment-management-client-assessment-voice.commands-DvD4E7zS.mjs.map → acorex-platform-module-assessment-management-client-assessment-voice.commands-CaElbuNh.mjs.map} +1 -1
  5. package/fesm2022/acorex-platform-module-assessment-management-client-contracts-entities-assessment-case.mjs +1 -1
  6. package/fesm2022/acorex-platform-module-assessment-management-client-contracts-entities-assessment-case.mjs.map +1 -1
  7. package/fesm2022/acorex-platform-module-assessment-management-client-contracts-entities-assessment-session.mjs +1 -1
  8. package/fesm2022/acorex-platform-module-assessment-management-client-contracts-entities-assessment-session.mjs.map +1 -1
  9. package/fesm2022/acorex-platform-module-assessment-management-client-contracts-entities-question-bank-item.mjs +1 -1
  10. package/fesm2022/acorex-platform-module-assessment-management-client-contracts-entities-question-bank-item.mjs.map +1 -1
  11. package/fesm2022/acorex-platform-module-assessment-management-client-contracts-entities-questionnaire.mjs +1 -1
  12. package/fesm2022/acorex-platform-module-assessment-management-client-contracts-entities-questionnaire.mjs.map +1 -1
  13. package/fesm2022/{acorex-platform-module-assessment-management-client-contracts-entity-catalog-acorex-platform-module-assessment-management-client-contracts-entity-catalog-Pa8mdKRV.mjs → acorex-platform-module-assessment-management-client-contracts-entity-catalog-acorex-platform-module-assessment-management-client-contracts-entity-catalog-DYpWu3Vx.mjs} +6 -6
  14. package/fesm2022/{acorex-platform-module-assessment-management-client-contracts-entity-catalog-acorex-platform-module-assessment-management-client-contracts-entity-catalog-Pa8mdKRV.mjs.map → acorex-platform-module-assessment-management-client-contracts-entity-catalog-acorex-platform-module-assessment-management-client-contracts-entity-catalog-DYpWu3Vx.mjs.map} +1 -1
  15. package/fesm2022/{acorex-platform-module-assessment-management-client-contracts-entity-catalog-assessment-case.entity-DJeaqilT.mjs → acorex-platform-module-assessment-management-client-contracts-entity-catalog-assessment-case.entity-CUctZ-0K.mjs} +3 -3
  16. package/fesm2022/acorex-platform-module-assessment-management-client-contracts-entity-catalog-assessment-case.entity-CUctZ-0K.mjs.map +1 -0
  17. package/fesm2022/{acorex-platform-module-assessment-management-client-contracts-entity-catalog-assessment-session.entity-BSP4UQ47.mjs → acorex-platform-module-assessment-management-client-contracts-entity-catalog-assessment-session.entity-C2JJw_JJ.mjs} +3 -3
  18. package/fesm2022/acorex-platform-module-assessment-management-client-contracts-entity-catalog-assessment-session.entity-C2JJw_JJ.mjs.map +1 -0
  19. package/fesm2022/{acorex-platform-module-assessment-management-client-contracts-entity-catalog-question-bank-item.entity-CVgepxbX.mjs → acorex-platform-module-assessment-management-client-contracts-entity-catalog-question-bank-item.entity-D3y_rWUI.mjs} +3 -3
  20. package/fesm2022/acorex-platform-module-assessment-management-client-contracts-entity-catalog-question-bank-item.entity-D3y_rWUI.mjs.map +1 -0
  21. package/fesm2022/{acorex-platform-module-assessment-management-client-contracts-entity-catalog-questionnaire.entity-8Dqdbm6i.mjs → acorex-platform-module-assessment-management-client-contracts-entity-catalog-questionnaire.entity-CVz5W0fF.mjs} +3 -3
  22. package/fesm2022/acorex-platform-module-assessment-management-client-contracts-entity-catalog-questionnaire.entity-CVz5W0fF.mjs.map +1 -0
  23. package/fesm2022/{acorex-platform-module-assessment-management-client-contracts-entity-catalog-template.entity-BTDJAnF1.mjs → acorex-platform-module-assessment-management-client-contracts-entity-catalog-template.entity-C01AW5NW.mjs} +2 -2
  24. package/fesm2022/{acorex-platform-module-assessment-management-client-contracts-entity-catalog-template.entity-BTDJAnF1.mjs.map → acorex-platform-module-assessment-management-client-contracts-entity-catalog-template.entity-C01AW5NW.mjs.map} +1 -1
  25. package/fesm2022/acorex-platform-module-assessment-management-client-contracts-entity-catalog.mjs +1 -1
  26. package/fesm2022/{acorex-platform-module-assessment-management-client-fill-assessment-session.command-Dp6gSQWO.mjs → acorex-platform-module-assessment-management-client-fill-assessment-session.command-CMIq-DDl.mjs} +15 -8
  27. package/fesm2022/acorex-platform-module-assessment-management-client-fill-assessment-session.command-CMIq-DDl.mjs.map +1 -0
  28. package/fesm2022/{acorex-platform-module-assessment-management-client-form-template-viewer-popup.component-B94T15Vb.mjs → acorex-platform-module-assessment-management-client-form-template-viewer-popup.component-COZcUPEj.mjs} +2 -2
  29. package/fesm2022/{acorex-platform-module-assessment-management-client-form-template-viewer-popup.component-B94T15Vb.mjs.map → acorex-platform-module-assessment-management-client-form-template-viewer-popup.component-COZcUPEj.mjs.map} +1 -1
  30. package/fesm2022/{acorex-platform-module-assessment-management-client-form-template-viewer.service-DpEeqw34.mjs → acorex-platform-module-assessment-management-client-form-template-viewer.service-CvSRpoos.mjs} +3 -3
  31. package/fesm2022/{acorex-platform-module-assessment-management-client-form-template-viewer.service-DpEeqw34.mjs.map → acorex-platform-module-assessment-management-client-form-template-viewer.service-CvSRpoos.mjs.map} +1 -1
  32. package/fesm2022/{acorex-platform-module-assessment-management-client-open-form-template.command-5E3IK-OG.mjs → acorex-platform-module-assessment-management-client-open-form-template.command-CmR-xFHE.mjs} +3 -3
  33. package/fesm2022/{acorex-platform-module-assessment-management-client-open-form-template.command-5E3IK-OG.mjs.map → acorex-platform-module-assessment-management-client-open-form-template.command-CmR-xFHE.mjs.map} +1 -1
  34. package/fesm2022/{acorex-platform-module-assessment-management-client-preview-form-template.command-COIcfqBQ.mjs → acorex-platform-module-assessment-management-client-preview-form-template.command-BEzE0620.mjs} +2 -2
  35. package/fesm2022/{acorex-platform-module-assessment-management-client-preview-form-template.command-COIcfqBQ.mjs.map → acorex-platform-module-assessment-management-client-preview-form-template.command-BEzE0620.mjs.map} +1 -1
  36. package/fesm2022/{acorex-platform-module-assessment-management-client-preview-question.command-ZTIjmXdy.mjs → acorex-platform-module-assessment-management-client-preview-question.command-BGT8qB1_.mjs} +10 -7
  37. package/fesm2022/acorex-platform-module-assessment-management-client-preview-question.command-BGT8qB1_.mjs.map +1 -0
  38. package/fesm2022/{acorex-platform-module-assessment-management-client-preview-questionnaire.command-CyiaPtLs.mjs → acorex-platform-module-assessment-management-client-preview-questionnaire.command-duK7Tjjp.mjs} +8 -10
  39. package/fesm2022/acorex-platform-module-assessment-management-client-preview-questionnaire.command-duK7Tjjp.mjs.map +1 -0
  40. package/fesm2022/{acorex-platform-module-assessment-management-client-preview-session-pdf.command-BsiJU6ep.mjs → acorex-platform-module-assessment-management-client-preview-session-pdf.command-DjBxg7Yn.mjs} +2 -2
  41. package/fesm2022/acorex-platform-module-assessment-management-client-preview-session-pdf.command-DjBxg7Yn.mjs.map +1 -0
  42. package/fesm2022/{acorex-platform-module-assessment-management-client-question-bank-interface-editor-widget-edit.component-CRRrPiJ9.mjs → acorex-platform-module-assessment-management-client-question-bank-interface-editor-widget-edit.component-B7_G_C5B.mjs} +2 -2
  43. package/fesm2022/{acorex-platform-module-assessment-management-client-question-bank-interface-editor-widget-edit.component-CRRrPiJ9.mjs.map → acorex-platform-module-assessment-management-client-question-bank-interface-editor-widget-edit.component-B7_G_C5B.mjs.map} +1 -1
  44. package/fesm2022/{acorex-platform-module-assessment-management-client-questionnaire-viewer-popup.component-Cn3kk7b6.mjs → acorex-platform-module-assessment-management-client-questionnaire-viewer-popup.component-daQL4OD_.mjs} +2 -2
  45. package/fesm2022/{acorex-platform-module-assessment-management-client-questionnaire-viewer-popup.component-Cn3kk7b6.mjs.map → acorex-platform-module-assessment-management-client-questionnaire-viewer-popup.component-daQL4OD_.mjs.map} +1 -1
  46. package/fesm2022/{acorex-platform-module-assessment-management-client-review-assessment-session.command-Cf6SKE8F.mjs → acorex-platform-module-assessment-management-client-review-assessment-session.command-CPeFh1m7.mjs} +12 -7
  47. package/fesm2022/acorex-platform-module-assessment-management-client-review-assessment-session.command-CPeFh1m7.mjs.map +1 -0
  48. package/fesm2022/{acorex-platform-module-assessment-management-client-template-picker.component-RFv42PnE.mjs → acorex-platform-module-assessment-management-client-template-picker.component-D_UCdFOH.mjs} +3 -3
  49. package/fesm2022/acorex-platform-module-assessment-management-client-template-picker.component-D_UCdFOH.mjs.map +1 -0
  50. package/fesm2022/{acorex-platform-module-assessment-management-client-template-widget-edit.component-D3XNxDqe.mjs → acorex-platform-module-assessment-management-client-template-widget-edit.component-DERabYdH.mjs} +2 -2
  51. package/fesm2022/{acorex-platform-module-assessment-management-client-template-widget-edit.component-D3XNxDqe.mjs.map → acorex-platform-module-assessment-management-client-template-widget-edit.component-DERabYdH.mjs.map} +1 -1
  52. package/fesm2022/{acorex-platform-module-assessment-management-client-view-session-answers.command-DlnnmAlD.mjs → acorex-platform-module-assessment-management-client-view-session-answers.command-DjJajIkL.mjs} +2 -2
  53. package/fesm2022/{acorex-platform-module-assessment-management-client-view-session-answers.command-DlnnmAlD.mjs.map → acorex-platform-module-assessment-management-client-view-session-answers.command-DjJajIkL.mjs.map} +1 -1
  54. package/fesm2022/acorex-platform-module-assessment-management-client.mjs +1 -1
  55. package/i18n/en-AU/assessment-management.json +1083 -0
  56. package/i18n/en-AU/form-template-management.json +322 -0
  57. package/i18n/en-AU/questionnaire.json +195 -0
  58. package/i18n/en-US/assessment-management.json +1083 -0
  59. package/i18n/en-US/form-template-management.json +322 -0
  60. package/i18n/en-US/questionnaire.json +195 -0
  61. package/i18n/fa-IR/assessment-management.json +1118 -0
  62. package/i18n/fa-IR/form-template-management.json +322 -0
  63. package/i18n/fa-IR/questionnaire.json +195 -0
  64. package/package.json +3 -3
  65. package/fesm2022/acorex-platform-module-assessment-management-client-contracts-entity-catalog-assessment-case.entity-DJeaqilT.mjs.map +0 -1
  66. package/fesm2022/acorex-platform-module-assessment-management-client-contracts-entity-catalog-assessment-session.entity-BSP4UQ47.mjs.map +0 -1
  67. package/fesm2022/acorex-platform-module-assessment-management-client-contracts-entity-catalog-question-bank-item.entity-CVgepxbX.mjs.map +0 -1
  68. package/fesm2022/acorex-platform-module-assessment-management-client-contracts-entity-catalog-questionnaire.entity-8Dqdbm6i.mjs.map +0 -1
  69. package/fesm2022/acorex-platform-module-assessment-management-client-fill-assessment-session.command-Dp6gSQWO.mjs.map +0 -1
  70. package/fesm2022/acorex-platform-module-assessment-management-client-preview-question.command-ZTIjmXdy.mjs.map +0 -1
  71. package/fesm2022/acorex-platform-module-assessment-management-client-preview-questionnaire.command-CyiaPtLs.mjs.map +0 -1
  72. package/fesm2022/acorex-platform-module-assessment-management-client-preview-session-pdf.command-BsiJU6ep.mjs.map +0 -1
  73. package/fesm2022/acorex-platform-module-assessment-management-client-review-assessment-session.command-Cf6SKE8F.mjs.map +0 -1
  74. package/fesm2022/acorex-platform-module-assessment-management-client-template-picker.component-RFv42PnE.mjs.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-platform-module-assessment-management-client-contracts-entity-catalog-question-bank-item.entity-CVgepxbX.mjs","sources":["../../../../libs/modules/assessment-management/contracts/src/entities/question-bank-item/question-bank-item.entity.ts"],"sourcesContent":["import { AXPWidgetsList } from '@acorex-platform/framework-shared/core';\nimport { AXPEntity, AXPEntityAction, AXPEntityCommandScope, createAllQueryView, entityMasterCrudActions, entityMasterRecordActions } from '@acorex-platform/framework-shared/entity';\n//#region ---- Imports ----\nimport { RootConfig } from '../../root-config';\n\n//#endregion\n\n//#region ---- Entity Factory ----\n\nexport async function factoryQuestionBankItem(): Promise<AXPEntity | null> {\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: RootConfig.entities.questionBankItem.name,\n title: RootConfig.entities.questionBankItem.title,\n icon: RootConfig.entities.questionBankItem.icon,\n searchTags: [\n 'assessment',\n 'question',\n 'question-bank',\n 'question-bank-item',\n 'survey-item',\n 'quiz',\n 'reusable-question',\n 'form-field',\n 'سؤال',\n 'بانک سؤالات',\n 'پرسشنامه',\n 'ارزیابی',\n ],\n plugins: [\n { name: 'category' },\n { name: 'catalog-scope' },\n { name: 'tags' },\n { name: 'history' },\n { name: 'lock' },\n { name: 'compare' },\n { name: 'archive' },\n { name: 'clone' },\n { name: 'attachments', options: { display: 'page' } },\n //{ name: 'attachments' },\n { name: 'unique-fields', options: { fields: ['name'], scope: 'global' } },\n ],\n formats: {\n individual: RootConfig.entities.questionBankItem.title,\n plural: RootConfig.entities.questionBankItem.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: RootConfig.module.title,\n },\n },\n groups: [\n { id: 'basic-info', title: '@general:terms.interface.basic-info' },\n {\n id: 'question-content',\n title: '@assessment-management:question-bank.entities.question-bank-item.groups.content',\n },\n {\n id: 'presentation',\n title: '@assessment-management:question-bank.entities.question-bank-item.groups.presentation',\n },\n {\n id: 'question-properties',\n title: '@assessment-management:question-bank.entities.question-bank-item.groups.settings',\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:question-bank.entities.question-bank-item.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: {\n placeholder: '@assessment-management:question-bank.entities.question-bank-item.fields.title.placeholder',\n },\n },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'name',\n title: '@assessment-management:question-bank.entities.question-bank-item.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: {\n placeholder: '@assessment-management:question-bank.entities.question-bank-item.fields.name.placeholder',\n },\n },\n },\n validations: [\n { rule: 'required' },\n { rule: 'variable-name' },\n ],\n },\n {\n name: 'question',\n title: '@assessment-management:question-bank.entities.question-bank-item.fields.question.title',\n groupId: 'question-content',\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.Editors.RichText,\n options: {\n height: 160,\n placeholder: '@assessment-management:question-bank.entities.question-bank-item.fields.question.placeholder',\n },\n },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'note',\n title: '@assessment-management:question-bank.entities.question-bank-item.fields.note.title',\n groupId: 'question-content',\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.RichText,\n options: {\n height: 120,\n placeholder: '@assessment-management:question-bank.entities.question-bank-item.fields.note.placeholder',\n },\n },\n },\n },\n {\n name: 'interface',\n title: `@assessment-management:question-bank.entities.question-bank-item.fields.interface.title`,\n groupId: 'presentation',\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: false }, inline: { enabled: false } },\n },\n schema: {\n dataType: 'object',\n interface: {\n type: 'question-bank-interface-editor',\n options: {\n fieldName: \"{{ context.eval('title', { pipes: ['translate'] }) }}\",\n label: '@general:terms.common.widget',\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'difficulty',\n title: '@assessment-management:question-bank.entities.question-bank-item.fields.difficulty.title',\n groupId: 'question-properties',\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: 'AssessmentManagement:ListQuestionDifficultyOptions',\n },\n },\n },\n },\n {\n name: 'estimatedTime',\n title: '@assessment-management:question-bank.entities.question-bank-item.fields.estimated-time.title',\n groupId: 'question-properties',\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: false } },\n },\n schema: {\n dataType: 'number',\n interface: {\n type: AXPWidgetsList.Editors.NumberBox,\n options: {\n minValue: 0,\n placeholder: 'Estimated time in seconds',\n },\n },\n },\n },\n {\n name: 'hint',\n title: '@assessment-management:question-bank.entities.question-bank-item.fields.hint.title',\n groupId: 'question-properties',\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: { mode: 'off' },\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: {\n colSpan: 12,\n },\n children: [\n {\n type: AXPWidgetsList.Layouts.FormField,\n mode: 'edit',\n options: {\n label: '@assessment-management:question-bank.entities.question-bank-item.fields.hint-mode.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.SelectBox,\n path: 'hint.mode',\n mode: 'edit',\n options: {\n valueField: 'id',\n textField: 'title',\n dataSource: [\n {\n id: 'off',\n title: '@assessment-management:question-bank.entities.question-bank-item.fields.hint-mode.options.off',\n },\n { id: 'info', title: '@assessment-management:question-bank.entities.question-bank-item.fields.hint-mode.options.info' },\n { id: 'warning', title: '@assessment-management:question-bank.entities.question-bank-item.fields.hint-mode.options.warning' },\n { id: 'danger', title: '@assessment-management:question-bank.entities.question-bank-item.fields.hint-mode.options.danger' },\n { id: 'success', title: '@assessment-management:question-bank.entities.question-bank-item.fields.hint-mode.options.success' },\n { id: 'neutral', title: '@assessment-management:question-bank.entities.question-bank-item.fields.hint-mode.options.neutral' },\n ],\n },\n },\n ],\n },\n ],\n },\n {\n type: AXPWidgetsList.Layouts.GridItemLayout,\n mode: 'edit',\n options: {\n colSpan: 12,\n visible: `{{ context.eval('hint.mode') && (context.eval('hint.mode').id || context.eval('hint.mode')) != 'off' }}`,\n },\n children: [\n {\n type: AXPWidgetsList.Layouts.FormField,\n mode: 'edit',\n options: {\n label: '@assessment-management:question-bank.entities.question-bank-item.fields.hint-content.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.RichText,\n path: 'hint.content',\n mode: 'edit',\n options: { height: 120 },\n },\n ],\n },\n ],\n },\n ],\n },\n },\n },\n {\n name: 'comment',\n title: '@assessment-management:question-bank.entities.question-bank-item.fields.comment.title',\n groupId: 'question-properties',\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, required: 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: {\n colSpan: 3,\n },\n children: [\n {\n type: AXPWidgetsList.Layouts.FormField,\n mode: 'edit',\n options: {\n label: '@assessment-management:question-bank.entities.question-bank-item.fields.comment.enabled',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n path: 'comment.enabled',\n mode: 'edit',\n },\n ],\n },\n ],\n },\n {\n type: AXPWidgetsList.Layouts.GridItemLayout,\n mode: 'edit',\n options: {\n colSpan: 3,\n visible: `{{ context.eval('comment.enabled') === true }}`,\n },\n children: [\n {\n type: AXPWidgetsList.Layouts.FormField,\n mode: 'edit',\n options: {\n label: '@assessment-management:question-bank.entities.question-bank-item.fields.comment.required',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n path: 'comment.required',\n mode: 'edit',\n },\n ],\n },\n ],\n },\n ],\n },\n },\n },\n ],\n columns: [\n { name: 'title' },\n { name: 'name' },\n { name: 'difficulty' },\n { name: 'estimatedTime' },\n { name: 'interface' },\n ],\n interfaces: {\n master: {\n create: {\n sections: [\n { id: 'basic-info', order: 1, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'question-content', order: 2, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'presentation', order: 3, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'question-properties', order: 4, layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n properties: [\n { name: 'title', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'name', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'question', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'note', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'difficulty', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'estimatedTime', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'hint', layout: { label: { visible: false }, positions: { lg: { colSpan: 12 } } } },\n { name: 'comment', layout: { label: { visible: false }, positions: { lg: { colSpan: 12 } } } },\n { name: 'interface', layout: { label: { visible: false }, positions: { lg: { colSpan: 12 } } } },\n ],\n },\n update: {\n sections: [\n { id: 'basic-info', order: 1, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'question-content', order: 2, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'presentation', order: 3, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'question-properties', order: 4, layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n properties: [\n { name: 'title', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'name', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'question', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'note', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'difficulty', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'estimatedTime', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'hint', layout: { label: { visible: false }, positions: { lg: { colSpan: 12 } } } },\n { name: 'comment', layout: { label: { visible: false }, positions: { lg: { colSpan: 12 } } } },\n { name: 'interface', layout: { label: { visible: false }, 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: 'question-content', order: 2, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'presentation', order: 3, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'question-properties', order: 4, layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n properties: [\n { name: 'title', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'name', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'question', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'note', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'difficulty', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'estimatedTime', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'hint', layout: { label: { visible: false }, positions: { lg: { colSpan: 12 } } } },\n { name: 'comment', layout: { label: { visible: false }, positions: { lg: { colSpan: 12 } } } },\n { name: 'interface', layout: { label: { visible: false }, positions: { lg: { colSpan: 12 } } } },\n ],\n actions: [\n ...entityMasterRecordActions(),\n {\n title: '@assessment-management:question-bank.entities.question-bank-item.actions.preview.title',\n command: {\n name: `${RootConfig.module.name}.${RootConfig.entities.questionBankItem.name}:Preview`,\n options: {\n id: '{{ context.eval(\"id\") }}',\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:question-bank.entities.question-bank-item.actions.preview.title',\n command: {\n name: `${RootConfig.module.name}.${RootConfig.entities.questionBankItem.name}:Preview`,\n options: {\n id: '{{ context.eval(\"id\") }}',\n },\n },\n priority: 'primary',\n type: 'action',\n icon: 'fa-light fa-eye',\n scope: AXPEntityCommandScope.Individual,\n } as AXPEntityAction,\n ],\n views: [createAllQueryView({ sorts: [{ name: 'title', 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-platform-module-assessment-management-client-contracts-entity-catalog-questionnaire.entity-8Dqdbm6i.mjs","sources":["../../../../libs/modules/assessment-management/contracts/src/QUESTIONNAIRE_QUESTIONS_PAGE_COMPONENT_KEY.ts","../../../../libs/modules/assessment-management/contracts/src/entities/questionnaire/questionnaire.entity.ts"],"sourcesContent":["/** Component key for the questionnaire Questions page tab. Register via AXP_PAGE_COMPONENT_PROVIDER. */\nexport const QUESTIONNAIRE_QUESTIONS_PAGE_COMPONENT_KEY = 'questionnaire-questions-page';\n","import { AXPWidgetsList } from '@acorex-platform/framework-shared/core';\nimport { AXPEntity, AXPEntityAction, AXPEntityCommandScope, createAllQueryView, createQueryView, entityMasterCrudActions, entityMasterRecordActions } from '@acorex-platform/framework-shared/entity';\n//#region ---- Imports ----\nimport { QUESTIONNAIRE_OUTCOMES_PAGE_COMPONENT_KEY } from '../../QUESTIONNAIRE_OUTCOMES_PAGE_COMPONENT_KEY';\nimport { QUESTIONNAIRE_QUESTIONS_PAGE_COMPONENT_KEY } from '../../QUESTIONNAIRE_QUESTIONS_PAGE_COMPONENT_KEY';\nimport { assessmentPrePostProperties } from '../../assessment-pre-post.properties';\nimport { RootConfig } from '../../root-config';\nimport {\n AXM_TEXT_TEMPLATE_IDS,\n AXM_TEXT_TEMPLATE_KIND,\n} from '@acorex-platform/module-content-management-client/contracts';\n\n//#endregion\n\n//#region ---- Entity Factory ----\n\nexport async function factoryQuestionnaire(): 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 searchTags: [\n 'assessment',\n 'questionnaire',\n 'survey',\n 'form',\n 'checklist',\n 'quiz',\n 'evaluation',\n 'questions',\n 'پرسشنامه',\n 'پرسشنامه‌ها',\n 'ارزیابی',\n 'نظرسنجی',\n ],\n plugins: [\n { name: 'history' },\n { name: 'category' },\n { name: 'catalog-scope' },\n { name: 'lock' },\n { name: 'archive' },\n { name: 'clone' },\n { name: 'attachments', options: { display: 'page' } },\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 appearOn: { create: true, update: true },\n },\n {\n componentKey: QUESTIONNAIRE_OUTCOMES_PAGE_COMPONENT_KEY,\n field: 'outcomes',\n title: '@assessment-management:questionnaires.entities.questionnaire.fields.outcomes.title',\n icon: 'fa-light fa-calculator',\n layout: { order: 2, position: 'after' },\n appearOn: { create: true, update: true },\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 id: 'print',\n title: '@assessment-management:questionnaires.entities.questionnaire.groups.print',\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 ...assessmentPrePostProperties(),\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 name: 'printTemplateId',\n title: '@assessment-management:questionnaires.entities.questionnaire.fields.print-template-id.title',\n groupId: 'print',\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: true }, inline: { enabled: false } },\n },\n schema: {\n dataType: 'string',\n nullable: true,\n defaultValue: AXM_TEXT_TEMPLATE_IDS.questionnairePrint,\n interface: {\n type: AXPWidgetsList.Editors.LookupBox,\n options: {\n entity: 'ContentManagement.TextTemplate',\n textField: 'title',\n valueField: 'id',\n look: 'select',\n columns: ['title', 'kind'],\n filter: {\n logic: 'and',\n filters: [\n {\n field: 'kind',\n operator: { type: 'equal' },\n value: AXM_TEXT_TEMPLATE_KIND.Content,\n },\n ],\n },\n },\n },\n },\n },\n {\n name: 'print',\n title: '@assessment-management:questionnaires.entities.questionnaire.groups.print',\n groupId: 'print',\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 paperSize: 'A4',\n orientation: 'portrait',\n watermark: '',\n showQuestionNumbers: true,\n showWelcomeScreen: false,\n showSummaryAfterSubmit: false,\n showOutcomeResults: false,\n showUnansweredQuestions: true,\n showComments: true,\n showAttachments: true,\n showHints: true,\n showNotes: true,\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.print-paper-size.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.SelectBox,\n path: 'print.paperSize',\n mode: 'edit',\n options: {\n valueField: 'id',\n textField: 'title',\n dataSource: [\n {\n id: 'A4',\n title:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.print-paper-size.options.a4',\n },\n {\n id: 'Letter',\n title:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.print-paper-size.options.letter',\n },\n {\n id: 'Legal',\n title:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.print-paper-size.options.legal',\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:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.print-orientation.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.SelectBox,\n path: 'print.orientation',\n mode: 'edit',\n options: {\n valueField: 'id',\n textField: 'title',\n dataSource: [\n {\n id: 'portrait',\n title:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.print-orientation.options.portrait',\n },\n {\n id: 'landscape',\n title:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.print-orientation.options.landscape',\n },\n ],\n },\n },\n ],\n },\n ],\n },\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:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.print-watermark.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.TextBox,\n path: 'print.watermark',\n mode: 'edit',\n options: {\n placeholder:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.print-watermark.placeholder',\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.components.questionnaire-viewer.fields.print-show-welcome-screen.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n path: 'print.showWelcomeScreen',\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:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.print-show-summary-after-submit.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n path: 'print.showSummaryAfterSubmit',\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:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.print-show-outcome-results.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n path: 'print.showOutcomeResults',\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:\n '@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: 'print.showQuestionNumbers',\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:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.print-show-unanswered-questions.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n path: 'print.showUnansweredQuestions',\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:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.print-show-comments.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n path: 'print.showComments',\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:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.print-show-attachments.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n path: 'print.showAttachments',\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:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.print-show-hints.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n path: 'print.showHints',\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:\n '@assessment-management:questionnaires.components.questionnaire-viewer.fields.print-show-notes.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n path: 'print.showNotes',\n mode: 'edit',\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 { id: 'print', order: 5, 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 { name: 'printTemplateId', layout: { positions: { lg: { colSpan: 12, order: 7 } } } },\n { name: 'print', layout: { label: { visible: false }, positions: { lg: { colSpan: 12, order: 8 } } } },\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 { id: 'print', order: 5, 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 { name: 'printTemplateId', layout: { positions: { lg: { colSpan: 12, order: 7 } } } },\n { name: 'print', layout: { label: { visible: false }, positions: { lg: { colSpan: 12, order: 8 } } } },\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\", { pipes: [\"translate\"] }) }}',\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\", { pipes: [\"translate\"] }) }}',\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":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-platform-module-assessment-management-client-fill-assessment-session.command-Dp6gSQWO.mjs","sources":["../../../../libs/modules/assessment-management/client/src/lib/features/questionnaire-viewer/commands/fill-assessment-session.command.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { AXPRuntimeCommandResult, type AXPMultiLanguageString } from '@acorex-platform/framework-shared/core';\n\nimport { AXTranslationService, resolveMultiLanguageString } from '@acorex/core/translation';\nimport { AXPSessionService } from '@acorex-platform/framework-client/auth';\nimport { AXPDebugService } from '@acorex-platform/framework-client/core';\nimport { Injectable, inject } from '@angular/core';\nimport { defaultTo, first, get, isString } from 'lodash';\nimport { Router } from '@angular/router';\nimport { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\nimport { AXMQuestionnaireViewerService } from '../questionnaire-viewer.service';\nimport type { AXMAssessmentManagementAssessmentCaseEntityModel } from '@acorex-platform/module-assessment-management-client/contracts';\nimport type { AXMAssessmentManagementAssessmentSessionEntityModel } from '@acorex-platform/module-assessment-management-client/contracts';\nimport type { AXMAssessmentManagementQuestionnaireEntityModel } from '@acorex-platform/module-assessment-management-client/contracts';\nimport {\n normalizeCompletionMode,\n toDisplaySettings,\n toPrePostConfig,\n toPrintSettings,\n} from '@acorex-platform/module-assessment-management-client/contracts';\nimport {\n RootConfig,\n type QuestionnaireCompletionMode,\n type QuestionnaireBuilderValue,\n} from '@acorex-platform/module-assessment-management-client/contracts';\n\n//#endregion\n\n//#region ---- Command Input/Output Types ----\n\n/**\n * How to show the questionnaire viewer when filling an assessment session.\n */\nexport type FillAssessmentSessionShowAs = 'popup' | 'page' | 'standalone';\n\nexport type FillAssessmentSessionOutcome = 'Submitted' | 'Saved' | 'Cancelled';\n\n/**\n * Input for FillAssessmentSession command.\n */\nexport interface FillAssessmentSessionCommandInput {\n caseId: string;\n sessionId?: string;\n /** Popup viewer title; falls back to assessment case title when omitted. */\n title?: AXPMultiLanguageString;\n showAs?: FillAssessmentSessionShowAs;\n responderId?: string;\n role?: 'responder' | 'supervisor' | 'reviewer';\n /** Overrides questionnaire display.completionMode when set. */\n completionMode?: QuestionnaireCompletionMode;\n /** Question answer keys that must stay readonly (e.g. asset prefill on work-order checklists). */\n readonlyAnswerKeys?: string[];\n}\n\n//#endregion\n\n//#region ---- Fill Assessment Session Command ----\n\n/**\n * Opens questionnaire viewer for filling/editing assessment session with draft save and workflow outcomes.\n */\n@Injectable()\nexport class FillAssessmentSessionCommand implements AXPCommand<FillAssessmentSessionCommandInput, void> {\n //#region ---- Services & Dependencies ----\n\n private readonly sessionService = inject(AXPSessionService);\n private readonly router = inject(Router);\n private readonly entityService = inject(AXPEntityService);\n private readonly questionnaireViewerService = inject(AXMQuestionnaireViewerService);\n private readonly translationService = inject(AXTranslationService);\n private readonly debug = inject(AXPDebugService);\n\n //#endregion\n\n //#region ---- Command Implementation ----\n\n async execute(input: FillAssessmentSessionCommandInput): AXPCommandExecuteResultPromise<void> {\n try {\n const assessmentCase = await this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.assessmentCase.name)\n .data<string, AXMAssessmentManagementAssessmentCaseEntityModel>()\n .byKey(input.caseId);\n if (!assessmentCase) {\n return {\n success: false,\n message: { text: `Assessment case with ID ${input.caseId} not found` },\n metadata: { outcome: 'Cancelled' },\n };\n }\n\n const questionnaire = await this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.questionnaire.name)\n .data<string, AXMAssessmentManagementQuestionnaireEntityModel>()\n .byKey(assessmentCase.questionnaireId);\n if (!questionnaire) {\n return {\n success: false,\n message: { text: `Questionnaire with ID ${assessmentCase.questionnaireId} not found` },\n metadata: { outcome: 'Cancelled' },\n };\n }\n\n const questions = questionnaire.questions ?? { sections: [] };\n const structure: QuestionnaireBuilderValue = {\n ...questions,\n sections: questions.sections ?? [],\n displaySettings: toDisplaySettings(questionnaire) ?? undefined,\n printSettings: toPrintSettings(questionnaire) ?? undefined,\n };\n if (!structure.sections.length) {\n return {\n success: false,\n message: { text: 'Questionnaire has no questions to display' },\n metadata: { outcome: 'Cancelled' },\n };\n }\n\n const currentUser = this.sessionService.user;\n const responderId = input.responderId || currentUser?.id;\n if (!responderId) {\n return {\n success: false,\n message: { text: 'No responder ID provided and no current user found' },\n metadata: { outcome: 'Cancelled' },\n };\n }\n\n const role = input.role || 'responder';\n const displaySettings = toDisplaySettings(questionnaire);\n const completionMode: QuestionnaireCompletionMode =\n input.completionMode ?? normalizeCompletionMode(displaySettings?.completionMode);\n\n let existingSession: AXMAssessmentManagementAssessmentSessionEntityModel | null = null;\n let sessionId = input.sessionId ?? null;\n let initialAnswers: Record<string, unknown> = {};\n\n if (sessionId) {\n existingSession = await this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.assessmentSession.name)\n .data<string, AXMAssessmentManagementAssessmentSessionEntityModel>()\n .byKey(sessionId);\n if (existingSession) {\n initialAnswers = (existingSession.answers as Record<string, unknown>) || {};\n }\n }\n\n const sessionSubmitted = existingSession?.statusId === 'submitted';\n\n const showAs = input.showAs ?? 'popup';\n const appName = this.sessionService.application?.name ?? 'demo';\n const moduleRoute = (RootConfig.module as { route?: string }).route ?? 'assessment-management';\n\n if (showAs === 'page') {\n const path = `/${appName}/${moduleRoute}/questionnaire/fill/${input.caseId}`;\n const url = sessionId ? `${path}?sessionId=${encodeURIComponent(sessionId)}` : path;\n this.router.navigateByUrl(url);\n return { success: true, kind: 'object', data: undefined, metadata: { outcome: 'Cancelled' } };\n }\n\n if (showAs === 'standalone') {\n let sessionIdToOpen = sessionId;\n if (!sessionIdToOpen) {\n const now = new Date();\n sessionIdToOpen = await this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.assessmentSession.name)\n .data<string, AXMAssessmentManagementAssessmentSessionEntityModel>()\n .create({\n caseId: input.caseId,\n responderId,\n role,\n answers: {},\n progressPercentage: 0,\n answeredQuestionsCount: 0,\n lastSavedAt: now,\n startedAt: now,\n statusId: 'not-started',\n } as Omit<AXMAssessmentManagementAssessmentSessionEntityModel, 'id'>);\n }\n if (sessionIdToOpen) {\n this.router.navigateByUrl(`/assessment/fill/${sessionIdToOpen}`);\n }\n return { success: true, kind: 'object', data: undefined, metadata: { outcome: 'Cancelled' } };\n }\n\n const viewerTitle = await this.resolveViewerTitle(input.title, assessmentCase.title);\n\n const viewerConfig = {\n readonly: sessionSubmitted,\n completionMode,\n validationStrategy: displaySettings?.validationStrategy,\n viewMode: displaySettings?.viewMode,\n showProgressBar: displaySettings?.showProgressBar,\n timer: { showTimer: displaySettings?.showTimer ?? false },\n showQuestionNumbers: displaySettings?.showQuestionNumbers,\n readonlyAnswerKeys: input.readonlyAnswerKeys,\n };\n\n const result = await this.questionnaireViewerService.open({\n title: viewerTitle,\n structure,\n prePostConfig: toPrePostConfig(questionnaire),\n config: viewerConfig,\n initialAnswers,\n questionnaireId: questionnaire.id,\n assessmentFillContext: sessionSubmitted\n ? undefined\n : {\n caseId: input.caseId,\n sessionId: sessionId ?? null,\n responderId,\n role,\n },\n });\n\n const outcome = await this.resolveFillOutcome(input.caseId, input.sessionId ?? sessionId, result);\n this.debug.trace(\n 'assessment-management',\n 'fill-assessment-session',\n 'Resolved fill workflow outcome',\n () => ({\n caseId: input.caseId,\n sessionId: input.sessionId ?? sessionId,\n popupResult: {\n saved: result?.saved === true,\n submitted: result?.submitted === true,\n hasPayload: result != null,\n },\n outcome,\n }),\n );\n return { success: true, kind: 'object', data: undefined, metadata: { outcome },\n };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Unknown error';\n console.error('Error filling assessment session:', error);\n return {\n success: false,\n message: { text: `Error filling assessment session: ${message}` },\n metadata: { outcome: 'Cancelled' },\n };\n }\n }\n\n //#endregion\n\n //#region ---- Helpers ----\n\n /**\n * Resolves popup title: explicit input, then case title, then translated default.\n */\n private async resolveViewerTitle(\n inputTitle: AXPMultiLanguageString | undefined,\n caseTitle: string | undefined,\n ): Promise<string> {\n const explicit = this.normalizeTitle(inputTitle);\n if (explicit) {\n return explicit;\n }\n\n const fromCase = this.normalizeTitle(caseTitle);\n if (fromCase) {\n return fromCase;\n }\n\n const fillTitleKey = '@assessment-management:cases.actions.fill-assessment.title';\n const fillTitleBase = await this.translationService.translateAsync(fillTitleKey);\n return fillTitleBase || 'Fill Assessment';\n }\n\n /** Resolves a multi-language or plain string title for the active locale. */\n private normalizeTitle(value: AXPMultiLanguageString | string | undefined | null | false): string {\n if (value == null || value === false) {\n return '';\n }\n if (typeof value === 'string') {\n return value.trim();\n }\n const locale = this.translationService.getActiveLang();\n return resolveMultiLanguageString(value, locale).trim();\n }\n\n /**\n * Resolves workflow outcome from popup result, falling back to persisted session status only\n * when the popup is dismissed without an explicit close payload.\n * After submit the viewer may show a summary step; closing via X without \"Done\" still leaves\n * the session submitted and must advance the workflow. Save-as-draft always sends an explicit\n * payload ({ saved: true }); inferring Submitted from the DB when a payload exists can wrongly\n * advance the workflow if flags are missing or a stale submitted session is resolved.\n */\n private async resolveFillOutcome(\n caseId: string,\n sessionId: string | null | undefined,\n result: { submitted?: boolean; saved?: boolean } | null | undefined,\n ): Promise<FillAssessmentSessionOutcome> {\n if (result?.saved) {\n return 'Saved';\n }\n if (result?.submitted) {\n return 'Submitted';\n }\n\n if (result != null) {\n return 'Cancelled';\n }\n\n const sessionSubmitted = await this.isAssessmentSessionSubmitted(caseId, sessionId);\n if (sessionSubmitted) {\n return 'Submitted';\n }\n\n return 'Cancelled';\n }\n\n private async isAssessmentSessionSubmitted(\n caseId: string,\n sessionId: string | null | undefined,\n ): Promise<boolean> {\n const resolvedSessionId = this.resolveText(sessionId) || (await this.findLatestSessionIdForCase(caseId));\n if (!resolvedSessionId) {\n return false;\n }\n\n const session = await this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.assessmentSession.name)\n .data<string, AXMAssessmentManagementAssessmentSessionEntityModel>()\n .byKey(resolvedSessionId);\n\n return get(session, 'statusId') === 'submitted';\n }\n\n private async findLatestSessionIdForCase(caseId: string): Promise<string> {\n const page = await this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.assessmentSession.name)\n .data<string, AXMAssessmentManagementAssessmentSessionEntityModel>()\n .query({\n skip: 0,\n take: 1,\n sort: [{ field: 'lastSavedAt', direction: 'desc' }],\n filter: {\n logic: 'and',\n filters: [{ field: 'caseId', operator: { type: 'equal' }, value: caseId }],\n },\n } as never);\n\n const session = first(defaultTo(get(page, 'items'), []));\n return this.resolveText(get(session, 'id'));\n }\n\n private resolveText(value: unknown): string {\n if (!isString(value)) {\n return '';\n }\n return value.trim();\n }\n\n //#endregion\n}\n\n//#endregion\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-platform-module-assessment-management-client-preview-question.command-ZTIjmXdy.mjs","sources":["../../../../libs/modules/assessment-management/client/src/lib/features/questionnaire-viewer/commands/preview-question.command.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { AXTranslationService, resolveMultiLanguageString } from '@acorex/core/translation';\nimport { AXPRuntimeCommandResult } from '@acorex-platform/framework-shared/core';\nimport { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\n\nimport { Injectable, inject } from '@angular/core';\nimport { RootConfig } from '@acorex-platform/module-assessment-management-client/contracts';\nimport type { AXMAssessmentManagementQuestionBankItemEntityModel } from '@acorex-platform/module-assessment-management-client/contracts';\nimport { QuestionnaireBuilderValue } from '@acorex-platform/module-assessment-management-client/contracts';\nimport { AXMQuestionnaireViewerService } from '../questionnaire-viewer.service';\n\n//#endregion\n\n//#region ---- Command Input/Output Types ----\n\n/**\n * Input for PreviewQuestion command.\n * Pass id to load the question bank item (title and structure come from the item).\n * Or pass pre-built structure (e.g. from builder) with optional title.\n */\nexport interface PreviewQuestionCommandInput {\n /** Question bank item id. */\n id?: string;\n /** Pre-built structure; when set, id is not required. */\n structure?: QuestionnaireBuilderValue;\n /** Dialog title when using pre-built structure. */\n title?: string;\n data?: Record<string, unknown>;\n options?: Record<string, unknown>;\n}\n\n//#endregion\n\n//#region ---- Preview Question Command ----\n\n/**\n * Command that opens a preview of a single question in a dialog.\n * Used from the questionnaire builder per-question primary action.\n */\n@Injectable()\nexport class PreviewQuestionCommand implements AXPCommand<PreviewQuestionCommandInput, void> {\n //#region ---- Services & Dependencies ----\n\n private readonly questionnaireViewerService = inject(AXMQuestionnaireViewerService);\n private readonly entityService = inject(AXPEntityService);\n private readonly translationService = inject(AXTranslationService);\n\n //#endregion\n\n //#region ---- Command Implementation ----\n\n private resolveId(input: PreviewQuestionCommandInput): string | undefined {\n const record = input as Record<string, unknown>;\n const ctxData = input.data as Record<string, unknown> | undefined;\n const ctxOptions = input.options as Record<string, unknown> | undefined;\n const asString = (v: unknown): string | undefined => (typeof v === 'string' && v.length > 0 ? v : undefined);\n return (\n asString(input.id) ??\n asString(record['questionBankItemId']) ??\n asString(ctxOptions?.['questionBankItemId']) ??\n asString(ctxData?.['id']) ??\n asString(record['id'])\n );\n }\n\n async execute(input: PreviewQuestionCommandInput): AXPCommandExecuteResultPromise<void> {\n try {\n const id = this.resolveId(input);\n let structure: QuestionnaireBuilderValue | undefined = input.structure;\n let title = input.title;\n\n if (id) {\n const item = await this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.questionBankItem.name)\n .data<string, AXMAssessmentManagementQuestionBankItemEntityModel>()\n .byKey(id);\n if (!item) {\n return {\n success: false,\n message: { text: 'Question not found' },\n };\n }\n const locale = this.translationService.getActiveLang?.() ?? 'en-US';\n const resolvedListTitle = resolveMultiLanguageString(item.title, locale);\n structure = {\n sections: [\n {\n name: `preview-section-${item.id}`,\n title: resolvedListTitle || 'Question',\n description: undefined,\n order: 0,\n items: [\n {\n name: String(item.id),\n questionBankItemId: item.id,\n order: 0,\n isRequired: false,\n interfaceOverride: item.interface,\n } as QuestionnaireBuilderValue['sections'][0]['items'][0],\n ],\n },\n ],\n displaySettings: {\n viewMode: 'single-page',\n showProgressBar: false,\n showQuestionNumbers: false,\n },\n };\n title = resolvedListTitle || undefined;\n }\n\n if (!structure?.sections?.length) {\n return {\n success: false,\n message: { text: 'No question structure to preview' },\n };\n }\n\n const totalQuestions =\n structure.sections?.reduce((s: number, sec: { items?: unknown[] }) => s + (sec.items?.length ?? 0), 0) ?? 0;\n if (totalQuestions === 0) {\n return {\n success: false,\n message: { text: 'No question to preview' },\n };\n }\n\n const previewTitleKey = '@assessment-management:question-bank.entities.question-bank-item.actions.preview.title';\n const defaultTitle = (await this.translationService.translateAsync(previewTitleKey)) || 'Preview';\n const dialogTitle = title?.trim() || defaultTitle;\n\n await this.questionnaireViewerService.open({\n title: dialogTitle,\n structure,\n config: { previewMode: true },\n });\n\n return {\n success: true,\n kind: 'object',\n data: undefined,\n message: { text: '' },\n metadata: { refresh: false },\n };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Unknown error';\n return {\n success: false,\n message: { text: `Error previewing question: ${message}` },\n };\n }\n }\n\n //#endregion\n}\n\n//#endregion\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-platform-module-assessment-management-client-preview-questionnaire.command-CyiaPtLs.mjs","sources":["../../../../libs/modules/assessment-management/client/src/lib/features/questionnaire-viewer/commands/preview-questionnaire.command.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { AXPRuntimeCommandResult } from '@acorex-platform/framework-shared/core';\n\nimport { AXTranslationService, resolveMultiLanguageString } from '@acorex/core/translation';\nimport { Injectable, inject } from '@angular/core';\nimport { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\nimport { AXMQuestionnaireViewerService } from '../../../features/questionnaire-viewer/questionnaire-viewer.service';\nimport {\n type AXMAssessmentManagementQuestionnaireEntityModel,\n toDisplaySettings,\n toPrePostConfig,\n toPrintSettings,\n} from '@acorex-platform/module-assessment-management-client/contracts';\nimport { RootConfig } from '@acorex-platform/module-assessment-management-client/contracts';\nimport { formatQuestionnairePreviewDialogTitle } from '../utils/questionnaire-preview-title.util';\n\n//#endregion\n\n//#region ---- Command Input/Output Types ----\n\n/**\n * Input for PreviewQuestionnaire command.\n */\nexport interface AXPPreviewQuestionnaireCommandInput {\n /**\n * Questionnaire ID to preview.\n */\n questionnaireId: string;\n\n /**\n * Questionnaire title (for display).\n */\n questionnaireTitle?: string;\n}\n\n/** Entity list passes evaluated action options on `options` (see entity-master-list view model). */\ntype AXPPreviewQuestionnaireCommandInvocation = AXPPreviewQuestionnaireCommandInput & {\n data?: Record<string, unknown>;\n options?: Partial<AXPPreviewQuestionnaireCommandInput> & Record<string, unknown>;\n};\n\n//#endregion\n\n//#region ---- Preview Questionnaire Command ----\n\n/**\n * Command that opens a preview of a questionnaire in a dialog.\n */\n@Injectable()\nexport class AXPPreviewQuestionnaireCommand implements AXPCommand<AXPPreviewQuestionnaireCommandInput, 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 * Resolves questionnaire id/title from root input or from entity action payload (`options` / row `data`).\n */\n private resolvePayload(input: AXPPreviewQuestionnaireCommandInvocation): AXPPreviewQuestionnaireCommandInput | null {\n const ctxOpts = input.options;\n const ctxData = input.data;\n\n const asNonEmptyString = (v: unknown): string | undefined =>\n typeof v === 'string' && v.length > 0 ? v : undefined;\n\n const asDisplayTitle = (v: unknown): string | undefined => {\n const s = asNonEmptyString(v);\n if (s) return s;\n if (v && typeof v === 'object') {\n const o = v as Record<string, unknown>;\n const fromTitle = o['title'];\n if (typeof fromTitle === 'string' && fromTitle.trim()) return fromTitle.trim();\n const fromName = o['name'];\n if (typeof fromName === 'string' && fromName.trim()) return fromName.trim();\n }\n return undefined;\n };\n\n const questionnaireId =\n asNonEmptyString(input.questionnaireId) ??\n asNonEmptyString(ctxOpts?.questionnaireId) ??\n (ctxData?.['id'] != null ? String(ctxData['id']) : undefined);\n\n if (!questionnaireId) {\n return null;\n }\n\n const questionnaireTitle =\n asDisplayTitle(input.questionnaireTitle) ??\n asDisplayTitle(ctxOpts?.questionnaireTitle) ??\n asDisplayTitle(ctxData?.['title']) ??\n asDisplayTitle(ctxData?.['name']);\n\n return { questionnaireId, questionnaireTitle };\n }\n\n async execute(input: AXPPreviewQuestionnaireCommandInvocation): AXPCommandExecuteResultPromise<void> {\n try {\n const resolved = this.resolvePayload(input);\n if (!resolved) {\n return {\n success: false,\n message: {\n text: 'Questionnaire id is missing (could not resolve from command context).',\n },\n };\n }\n\n const { questionnaireId, questionnaireTitle } = resolved;\n\n // Get questionnaire data\n const questionnaire = await this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.questionnaire.name)\n .data<string, AXMAssessmentManagementQuestionnaireEntityModel>()\n .byKey(questionnaireId);\n\n if (!questionnaire) {\n return {\n success: false,\n message: {\n text: `Questionnaire with ID ${questionnaireId} not found`,\n },\n };\n }\n\n // Check if questionnaire has questions\n if (!questionnaire.questions || !questionnaire.questions.sections || questionnaire.questions.sections.length === 0) {\n return {\n success: false,\n message: {\n text: 'Questionnaire has no questions to preview',\n },\n };\n }\n\n // Get preview title\n const previewTitleKey = '@assessment-management:questionnaires.entities.questionnaire.actions.preview.title';\n const previewTitleBase = (await this.translationService.translateAsync(previewTitleKey)) || 'Preview';\n const locale = this.translationService.getActiveLang?.() ?? 'en-US';\n const entityTitle = resolveMultiLanguageString(questionnaire.title, locale).trim();\n const displayTitle = questionnaireTitle?.trim() || entityTitle || undefined;\n const previewTitle = formatQuestionnairePreviewDialogTitle(previewTitleBase, displayTitle);\n\n const cfg = toPrePostConfig(questionnaire);\n const displaySettings = toDisplaySettings(questionnaire);\n const questions = questionnaire.questions;\n const structure = {\n sections: questions?.sections ?? [],\n displaySettings: displaySettings ?? undefined,\n printSettings: toPrintSettings(questionnaire) ?? undefined,\n };\n const result = await this.questionnaireViewerService.open({\n title: previewTitle,\n structure,\n prePostConfig: cfg,\n config: {\n previewMode: true,\n completionMode: 'submit-only',\n viewMode: displaySettings?.viewMode,\n showProgressBar: displaySettings?.showProgressBar,\n timer: { showTimer: displaySettings?.showTimer ?? false },\n showQuestionNumbers: displaySettings?.showQuestionNumbers,\n validationStrategy: displaySettings?.validationStrategy,\n },\n questionnaireId,\n printTemplateId: asEntityId(questionnaire.printTemplateId),\n submitHandler: async (answers: Record<string, any>) =>\n this.questionnaireViewerService.buildSummaryPlaceholderValues(structure, answers, {\n questionnaireId,\n }),\n });\n\n if (result?.submitted && result.answers) {\n return {\n success: true,\n kind: 'object',\n data: undefined,\n metadata: { outcome: 'Previewed', refresh: false },\n };\n }\n return {\n success: true,\n kind: 'object',\n data: undefined,\n metadata: { outcome: 'Cancelled', refresh: false },\n };\n } catch (error: any) {\n return {\n success: false,\n message: {\n text: `Error previewing questionnaire: ${error.message || 'Unknown error'}`,\n },\n };\n }\n }\n\n //#endregion\n}\n\nfunction asEntityId(value: unknown): string | undefined {\n if (typeof value === 'string' && value.trim()) {\n return value.trim();\n }\n if (value && typeof value === 'object' && 'id' in value) {\n return asEntityId((value as { id: unknown }).id);\n }\n return undefined;\n}\n\n//#endregion\n\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-platform-module-assessment-management-client-preview-session-pdf.command-BsiJU6ep.mjs","sources":["../../../../libs/modules/assessment-management/client/src/lib/features/questionnaire-viewer/commands/preview-session-pdf.command.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { runtimeCommandPayloadData } from '@acorex-platform/framework-shared/core';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { Injectable, inject } from '@angular/core';\nimport { get, isEmpty, isString, toString } from 'lodash';\nimport { AXPCommandService } from '@acorex-platform/framework-client/runtime';\nimport {\n AXM_ASSESSMENT_SESSION_PREVIEW_PDF_COMMAND_KEY,\n type AXMAssessmentSessionPreviewPdfRequest,\n type AXMAssessmentSessionPreviewPdfResult,\n} from '@acorex-platform/module-assessment-management-client/contracts';\n\n//#endregion\n\n//#region ---- Types ----\n\nexport interface PreviewSessionPdfCommandInput {\n caseId?: string;\n sessionId?: string;\n questionnaireId?: string;\n locale?: string;\n printHtmlGzip?: string;\n title?: string;\n printTemplateId?: string;\n paperSize?: 'A4' | 'Letter' | 'Legal';\n orientation?: 'portrait' | 'landscape';\n watermark?: string;\n}\n\ntype PreviewSessionPdfCommandInvocation = PreviewSessionPdfCommandInput & {\n data?: Record<string, unknown>;\n options?: Partial<PreviewSessionPdfCommandInput>;\n /** Reserved tab from the click handler so popup blockers do not hide the PDF. */\n previewWindow?: Window | null;\n};\n\n//#endregion\n\n//#region ---- Preview session PDF command ----\n\n@Injectable()\nexport class PreviewSessionPdfCommand implements AXPCommand<PreviewSessionPdfCommandInput, void> {\n private readonly commandService = inject(AXPCommandService);\n private readonly translationService = inject(AXTranslationService);\n\n async execute(input: PreviewSessionPdfCommandInvocation): AXPCommandExecuteResultPromise<void> {\n const previewWindow = input.previewWindow ?? this.openPreviewWindow();\n this.writePreviewPlaceholder(previewWindow);\n try {\n const printHtmlGzip = this.asNonEmptyString(input.printHtmlGzip);\n const sessionId = this.resolveSessionId(input);\n const caseId = this.resolveCaseId(input);\n const questionnaireId = this.asEntityId(input.questionnaireId);\n const printTemplateId = this.asEntityId(input.printTemplateId);\n if (!printHtmlGzip && !sessionId && !caseId) {\n this.closePreviewWindow(previewWindow);\n return {\n success: false,\n message: { text: 'Assessment case ID, session ID, or print HTML is required' },\n };\n }\n\n const locale =\n this.asNonEmptyString(input.locale) ??\n this.asNonEmptyString(this.translationService.getActiveLang()) ??\n 'en-US';\n const documentTitle = this.asNonEmptyString(input.title);\n\n const result = await this.commandService.executeRemote<\n AXMAssessmentSessionPreviewPdfRequest,\n AXMAssessmentSessionPreviewPdfResult\n >(AXM_ASSESSMENT_SESSION_PREVIEW_PDF_COMMAND_KEY, {\n ...(printHtmlGzip ? { printHtmlGzip } : {}),\n ...(documentTitle ? { title: documentTitle } : {}),\n ...(sessionId ? { sessionId } : {}),\n ...(caseId ? { caseId } : {}),\n ...(questionnaireId ? { questionnaireId } : {}),\n ...(printTemplateId ? { printTemplateId } : {}),\n ...(this.asNonEmptyString(input.paperSize) ? { paperSize: input.paperSize } : {}),\n ...(this.asNonEmptyString(input.orientation) ? { orientation: input.orientation } : {}),\n ...(input.watermark != null ? { watermark: input.watermark } : {}),\n locale,\n });\n\n const pdf = runtimeCommandPayloadData(result);\n if (!pdf?.base64) {\n this.closePreviewWindow(previewWindow);\n const message =\n (typeof result?.message?.text === 'string' && result.message.text.trim()) ||\n (await this.translationService.translateAsync(\n '@assessment-management:sessions.actions.preview-pdf.failed',\n )) ||\n 'Failed to preview assessment session PDF.';\n return { success: false, message: { text: message } };\n }\n\n this.showPdfInBrowser(previewWindow, pdf.base64, pdf.filename || 'questionnaire.pdf');\n return { success: true, kind: 'object', data: undefined };\n } catch (error: unknown) {\n this.closePreviewWindow(previewWindow);\n return {\n success: false,\n message: {\n text: error instanceof Error ? error.message : 'Failed to preview assessment session PDF.',\n },\n };\n }\n }\n\n private openPreviewWindow(): Window | null {\n if (typeof window === 'undefined') {\n return null;\n }\n const preview = window.open('about:blank', '_blank');\n this.writePreviewPlaceholder(preview);\n window.focus();\n return preview;\n }\n\n private writePreviewPlaceholder(preview: Window | null): void {\n if (!preview || preview.closed) {\n return;\n }\n try {\n preview.document.title = 'Preview PDF';\n preview.document.body.innerHTML =\n '<p style=\"font-family:sans-serif;padding:24px;color:#64748b\">Generating PDF…</p>';\n } catch {\n // about:blank can be briefly cross-origin in some browsers\n }\n }\n\n private showPdfInBrowser(preview: Window | null, base64: string, filename: string): void {\n const bytes = Uint8Array.from(atob(base64), (char) => char.charCodeAt(0));\n const blob = new Blob([bytes], { type: 'application/pdf' });\n const url = URL.createObjectURL(blob);\n if (preview && !preview.closed) {\n preview.location.replace(url);\n try {\n preview.focus();\n } catch {\n // some browsers block focus from a backgrounded opener\n }\n window.setTimeout(() => URL.revokeObjectURL(url), 60_000);\n return;\n }\n const opened = window.open(url, '_blank', 'noopener');\n if (opened) {\n window.setTimeout(() => URL.revokeObjectURL(url), 60_000);\n return;\n }\n const link = document.createElement('a');\n link.href = url;\n link.download = filename;\n link.rel = 'noopener';\n link.click();\n window.setTimeout(() => URL.revokeObjectURL(url), 60_000);\n }\n\n private closePreviewWindow(preview: Window | null): void {\n if (preview && !preview.closed) {\n preview.close();\n }\n }\n\n private resolveSessionId(input: PreviewSessionPdfCommandInvocation): string | undefined {\n const candidates = [get(input, 'sessionId'), get(input, 'options.sessionId')];\n for (const candidate of candidates) {\n const resolved = this.asNonEmptyString(candidate);\n if (resolved) {\n return resolved;\n }\n }\n const row = get(input, 'data') as Record<string, unknown> | undefined;\n if (row && this.asNonEmptyString(get(row, 'caseId'))) {\n return this.asNonEmptyString(get(row, 'id'));\n }\n return undefined;\n }\n\n private resolveCaseId(input: PreviewSessionPdfCommandInvocation): string | undefined {\n const candidates = [get(input, 'caseId'), get(input, 'options.caseId')];\n for (const candidate of candidates) {\n const resolved = this.asNonEmptyString(candidate);\n if (resolved) {\n return resolved;\n }\n }\n const row = get(input, 'data') as Record<string, unknown> | undefined;\n if (row && !this.asNonEmptyString(get(row, 'caseId'))) {\n return this.asNonEmptyString(get(row, 'id'));\n }\n return undefined;\n }\n\n private asEntityId(value: unknown): string | undefined {\n if (isString(value) && !isEmpty(value.trim())) {\n return value.trim();\n }\n if (value && typeof value === 'object' && 'id' in value) {\n return this.asEntityId((value as { id: unknown }).id);\n }\n return undefined;\n }\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//#endregion\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-platform-module-assessment-management-client-review-assessment-session.command-Cf6SKE8F.mjs","sources":["../../../../libs/modules/assessment-management/client/src/lib/features/questionnaire-viewer/commands/review-assessment-session.command.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { AXPRuntimeCommandResult, type AXPMultiLanguageString } from '@acorex-platform/framework-shared/core';\n\nimport { AXTranslationService, resolveMultiLanguageString } from '@acorex/core/translation';\nimport { Injectable, inject } from '@angular/core';\nimport { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\nimport { defaultTo, first, get, isEmpty, isString, toString } from 'lodash';\nimport { AXMQuestionnaireViewerService } from '../questionnaire-viewer.service';\nimport type { AXMAssessmentManagementAssessmentCaseEntityModel } from '@acorex-platform/module-assessment-management-client/contracts';\nimport type { AXMAssessmentManagementAssessmentSessionEntityModel } from '@acorex-platform/module-assessment-management-client/contracts';\nimport { RootConfig } from '@acorex-platform/module-assessment-management-client/contracts';\nimport { openAssessmentSessionAnswersReviewDecision } from '../utils/assessment-session-answers-view.util';\nimport type { AXMQuestionnaireViewerServiceResult } from '../questionnaire-viewer.service';\n\n//#endregion\n\n//#region ---- Command Input/Output Types ----\n\nexport type ReviewAssessmentSessionOutcome = 'SignedOff' | 'Rejected' | 'Cancelled';\n\nexport interface ReviewAssessmentSessionCommandInput {\n caseId: string;\n sessionId?: string;\n title?: AXPMultiLanguageString | string;\n showAs?: 'popup';\n}\n\nexport interface ReviewAssessmentSessionCommandOutput {\n caseId: string;\n sessionId: string;\n answers: Record<string, unknown>;\n questions: AXMQuestionnaireViewerServiceResult['questions'];\n}\n\ntype ReviewAssessmentSessionCommandInvocation = ReviewAssessmentSessionCommandInput & {\n data?: Record<string, unknown>;\n options?: Partial<ReviewAssessmentSessionCommandInput>;\n};\n\n//#endregion\n\n//#region ---- Review Assessment Session Command ----\n\n/**\n * Opens a readonly answers viewer with Sign off / Reject for workflow manager review.\n */\n@Injectable()\nexport class ReviewAssessmentSessionCommand\n implements AXPCommand<ReviewAssessmentSessionCommandInput, ReviewAssessmentSessionCommandOutput>\n{\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 async execute(\n input: ReviewAssessmentSessionCommandInvocation,\n ): AXPCommandExecuteResultPromise<ReviewAssessmentSessionCommandOutput> {\n try {\n const caseId = this.resolveCaseId(input);\n const sessionId = this.resolveSessionId(input);\n\n if (!caseId) {\n return {\n success: false,\n message: { text: 'Assessment case ID is required' },\n metadata: { outcome: 'Cancelled' },\n };\n }\n\n const assessmentCase = await this.loadCase(caseId);\n if (!assessmentCase) {\n return {\n success: false,\n message: { text: `Assessment case with ID ${caseId} not found` },\n metadata: { outcome: 'Cancelled' },\n };\n }\n\n let session: AXMAssessmentManagementAssessmentSessionEntityModel | null = null;\n if (sessionId) {\n session = await this.loadSession(sessionId, input);\n } else {\n session = await this.findLatestSession(caseId);\n }\n\n if (!session) {\n return {\n success: false,\n message: { text: 'Assessment session not found for review' },\n metadata: { outcome: 'Cancelled' },\n };\n }\n\n const resolvedSessionId = session.id;\n const viewerTitle = await this.resolveViewerTitle(input.title, assessmentCase.title);\n\n const popupResult = await openAssessmentSessionAnswersReviewDecision(\n {\n entityService: this.entityService,\n questionnaireViewerService: this.questionnaireViewerService,\n translationService: this.translationService,\n },\n session,\n assessmentCase,\n { title: viewerTitle },\n );\n\n const outcome = this.resolveOutcome(popupResult);\n const answers = defaultTo(get(popupResult, 'answers'), {}) as Record<string, unknown>;\n const questions = defaultTo(get(popupResult, 'questions'), []);\n\n return { success: true, kind: 'object',\n data: {\n caseId,\n sessionId: resolvedSessionId,\n answers,\n questions,\n },\n metadata: { outcome },\n };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Unknown error';\n return {\n success: false,\n message: { text: `Error reviewing assessment session: ${message}` },\n metadata: { outcome: 'Cancelled' },\n };\n }\n }\n\n //#endregion\n\n //#region ---- Resolution helpers ----\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 private resolveSessionId(input: ReviewAssessmentSessionCommandInvocation): string | null {\n const candidates = [\n get(input, 'sessionId'),\n get(input, 'options.sessionId'),\n get(input, 'options.sessionId'),\n ];\n for (const candidate of candidates) {\n const resolved = this.asNonEmptyString(candidate);\n if (resolved) {\n return resolved;\n }\n }\n return null;\n }\n\n private resolveCaseId(input: ReviewAssessmentSessionCommandInvocation): string | null {\n const candidates = [get(input, 'caseId'), get(input, 'options.caseId'), get(input, 'options.caseId')];\n for (const candidate of candidates) {\n const resolved = this.asNonEmptyString(candidate);\n if (resolved) {\n return resolved;\n }\n }\n return null;\n }\n\n private async loadSession(\n sessionId: string,\n input: ReviewAssessmentSessionCommandInvocation,\n ): Promise<AXMAssessmentManagementAssessmentSessionEntityModel | null> {\n const row = get(input, 'data') as Record<string, unknown> | undefined;\n const rowCaseId = this.asNonEmptyString(get(row, 'caseId'));\n\n if (row && rowCaseId) {\n return {\n ...(row as unknown as AXMAssessmentManagementAssessmentSessionEntityModel),\n id: sessionId,\n answers: defaultTo(get(row, 'answers') as Record<string, unknown> | undefined, {}),\n };\n }\n\n const sessionAccessor = this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.assessmentSession.name)\n .data<string, AXMAssessmentManagementAssessmentSessionEntityModel>();\n\n const listMatch = await sessionAccessor.query({\n skip: 0,\n take: 1,\n filter: {\n field: 'id',\n operator: { type: 'equal' },\n value: sessionId,\n },\n });\n\n const fromQuery = first(listMatch.items);\n if (fromQuery) {\n return fromQuery;\n }\n\n return defaultTo(await sessionAccessor.byKey(sessionId), null);\n }\n\n 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 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 private async resolveViewerTitle(\n inputTitle: AXPMultiLanguageString | string | undefined,\n caseTitle: string | undefined,\n ): Promise<string> {\n const explicit = this.normalizeTitle(inputTitle);\n if (explicit) {\n return explicit;\n }\n\n const fromCase = this.normalizeTitle(caseTitle);\n if (fromCase) {\n return fromCase;\n }\n\n const reviewTitleKey = '@assessment-management:sessions.actions.review-answers.title';\n const reviewTitleBase = await this.translationService.translateAsync(reviewTitleKey);\n return reviewTitleBase || 'Review answers';\n }\n\n private normalizeTitle(value: AXPMultiLanguageString | string | undefined | null | false): string {\n if (value == null || value === false) {\n return '';\n }\n if (typeof value === 'string') {\n return value.trim();\n }\n const locale = this.translationService.getActiveLang();\n return resolveMultiLanguageString(value, locale).trim();\n }\n\n private resolveOutcome(result: AXMQuestionnaireViewerServiceResult | null | undefined): ReviewAssessmentSessionOutcome {\n if (result?.decision === 'signed-off') {\n return 'SignedOff';\n }\n if (result?.decision === 'rejected') {\n return 'Rejected';\n }\n return 'Cancelled';\n }\n\n //#endregion\n}\n\n//#endregion\n"],"names":[],"mappings":";;;;;;;;;AAyCA;AAEA;AAEA;;AAEG;MAEU,8BAA8B,CAAA;AAD3C,IAAA,WAAA,GAAA;;AAMmB,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,gBAAgB,CAAC;AACxC,QAAA,IAAA,CAAA,0BAA0B,GAAG,MAAM,CAAC,6BAA6B,CAAC;AAClE,QAAA,IAAA,CAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC;AAwPnE,IAAA;;;IAlPC,MAAM,OAAO,CACX,KAA+C,EAAA;AAE/C,QAAA,IAAI;YACF,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;YACxC,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;YAE9C,IAAI,CAAC,MAAM,EAAE;gBACX,OAAO;AACL,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,OAAO,EAAE,EAAE,IAAI,EAAE,gCAAgC,EAAE;AACnD,oBAAA,QAAQ,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE;iBACnC;YACH;YAEA,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YAClD,IAAI,CAAC,cAAc,EAAE;gBACnB,OAAO;AACL,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,OAAO,EAAE,EAAE,IAAI,EAAE,CAAA,wBAAA,EAA2B,MAAM,YAAY,EAAE;AAChE,oBAAA,QAAQ,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE;iBACnC;YACH;YAEA,IAAI,OAAO,GAA+D,IAAI;YAC9E,IAAI,SAAS,EAAE;gBACb,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC;YACpD;iBAAO;gBACL,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC;YAChD;YAEA,IAAI,CAAC,OAAO,EAAE;gBACZ,OAAO;AACL,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,OAAO,EAAE,EAAE,IAAI,EAAE,yCAAyC,EAAE;AAC5D,oBAAA,QAAQ,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE;iBACnC;YACH;AAEA,YAAA,MAAM,iBAAiB,GAAG,OAAO,CAAC,EAAE;AACpC,YAAA,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC;AAEpF,YAAA,MAAM,WAAW,GAAG,MAAM,0CAA0C,CAClE;gBACE,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,0BAA0B,EAAE,IAAI,CAAC,0BAA0B;gBAC3D,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;aAC5C,EACD,OAAO,EACP,cAAc,EACd,EAAE,KAAK,EAAE,WAAW,EAAE,CACvB;YAED,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC;AAChD,YAAA,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,EAAE,CAA4B;AACrF,YAAA,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC;AAE9D,YAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ;AACpC,gBAAA,IAAI,EAAE;oBACJ,MAAM;AACN,oBAAA,SAAS,EAAE,iBAAiB;oBAC5B,OAAO;oBACP,SAAS;AACV,iBAAA;gBACD,QAAQ,EAAE,EAAE,OAAO,EAAE;aACtB;QACH;QAAE,OAAO,KAAc,EAAE;AACvB,YAAA,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,eAAe;YACxE,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE,EAAE,IAAI,EAAE,CAAA,oCAAA,EAAuC,OAAO,EAAE,EAAE;AACnE,gBAAA,QAAQ,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE;aACnC;QACH;IACF;;;AAMQ,IAAA,gBAAgB,CAAC,KAAc,EAAA;QACrC,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACtC,YAAA,OAAO,KAAK;QACd;QACA,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YACrC,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE;AACzC,YAAA,OAAO,OAAO,CAAC,UAAU,CAAC,GAAG,SAAS,GAAG,UAAU;QACrD;AACA,QAAA,OAAO,SAAS;IAClB;AAEQ,IAAA,gBAAgB,CAAC,KAA+C,EAAA;AACtE,QAAA,MAAM,UAAU,GAAG;AACjB,YAAA,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC;AACvB,YAAA,GAAG,CAAC,KAAK,EAAE,mBAAmB,CAAC;AAC/B,YAAA,GAAG,CAAC,KAAK,EAAE,mBAAmB,CAAC;SAChC;AACD,QAAA,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;YAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC;YACjD,IAAI,QAAQ,EAAE;AACZ,gBAAA,OAAO,QAAQ;YACjB;QACF;AACA,QAAA,OAAO,IAAI;IACb;AAEQ,IAAA,aAAa,CAAC,KAA+C,EAAA;QACnE,MAAM,UAAU,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,GAAG,CAAC,KAAK,EAAE,gBAAgB,CAAC,EAAE,GAAG,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;AACrG,QAAA,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;YAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC;YACjD,IAAI,QAAQ,EAAE;AACZ,gBAAA,OAAO,QAAQ;YACjB;QACF;AACA,QAAA,OAAO,IAAI;IACb;AAEQ,IAAA,MAAM,WAAW,CACvB,SAAiB,EACjB,KAA+C,EAAA;QAE/C,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,EAAE,MAAM,CAAwC;AACrE,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;AAE3D,QAAA,IAAI,GAAG,IAAI,SAAS,EAAE;YACpB,OAAO;AACL,gBAAA,GAAI,GAAsE;AAC1E,gBAAA,EAAE,EAAE,SAAS;gBACb,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAwC,EAAE,EAAE,CAAC;aACnF;QACH;AAEA,QAAA,MAAM,eAAe,GAAG,IAAI,CAAC;AAC1B,aAAA,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI;AAC7E,aAAA,IAAI,EAA+D;AAEtE,QAAA,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,KAAK,CAAC;AAC5C,YAAA,IAAI,EAAE,CAAC;AACP,YAAA,IAAI,EAAE,CAAC;AACP,YAAA,MAAM,EAAE;AACN,gBAAA,KAAK,EAAE,IAAI;AACX,gBAAA,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;AAC3B,gBAAA,KAAK,EAAE,SAAS;AACjB,aAAA;AACF,SAAA,CAAC;QAEF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC;QACxC,IAAI,SAAS,EAAE;AACb,YAAA,OAAO,SAAS;QAClB;AAEA,QAAA,OAAO,SAAS,CAAC,MAAM,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC;IAChE;IAEQ,MAAM,QAAQ,CAAC,MAAc,EAAA;AACnC,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC;AACvB,aAAA,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI;AAC1E,aAAA,IAAI,EAA4D;AAEnE,QAAA,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC;AACzC,YAAA,IAAI,EAAE,CAAC;AACP,YAAA,IAAI,EAAE,CAAC;AACP,YAAA,MAAM,EAAE;AACN,gBAAA,KAAK,EAAE,IAAI;AACX,gBAAA,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;AAC3B,gBAAA,KAAK,EAAE,MAAM;AACd,aAAA;AACF,SAAA,CAAC;QAEF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC;QACxC,IAAI,SAAS,EAAE;AACb,YAAA,OAAO,SAAS;QAClB;AAEA,QAAA,OAAO,SAAS,CAAC,MAAM,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC;IAC1D;IAEQ,MAAM,iBAAiB,CAC7B,MAAc,EAAA;AAEd,QAAA,MAAM,eAAe,GAAG,IAAI,CAAC;AAC1B,aAAA,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI;AAC7E,aAAA,IAAI,EAA+D;AAEtE,QAAA,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,KAAK,CAAC;AAC5C,YAAA,IAAI,EAAE,CAAC;AACP,YAAA,IAAI,EAAE,CAAC;AACP,YAAA,IAAI,EAAE;AACJ,gBAAA,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,EAAE;AACrC,gBAAA,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE;AACpC,aAAA;AACD,YAAA,MAAM,EAAE;AACN,gBAAA,KAAK,EAAE,QAAQ;AACf,gBAAA,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;AAC3B,gBAAA,KAAK,EAAE,MAAM;AACd,aAAA;AACF,SAAA,CAAC;QAEF,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,IAAI;IACvC;AAEQ,IAAA,MAAM,kBAAkB,CAC9B,UAAuD,EACvD,SAA6B,EAAA;QAE7B,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC;QAChD,IAAI,QAAQ,EAAE;AACZ,YAAA,OAAO,QAAQ;QACjB;QAEA,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC;QAC/C,IAAI,QAAQ,EAAE;AACZ,YAAA,OAAO,QAAQ;QACjB;QAEA,MAAM,cAAc,GAAG,8DAA8D;QACrF,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,cAAc,CAAC;QACpF,OAAO,eAAe,IAAI,gBAAgB;IAC5C;AAEQ,IAAA,cAAc,CAAC,KAAiE,EAAA;QACtF,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,KAAK,EAAE;AACpC,YAAA,OAAO,EAAE;QACX;AACA,QAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AAC7B,YAAA,OAAO,KAAK,CAAC,IAAI,EAAE;QACrB;QACA,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE;QACtD,OAAO,0BAA0B,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE;IACzD;AAEQ,IAAA,cAAc,CAAC,MAA8D,EAAA;AACnF,QAAA,IAAI,MAAM,EAAE,QAAQ,KAAK,YAAY,EAAE;AACrC,YAAA,OAAO,WAAW;QACpB;AACA,QAAA,IAAI,MAAM,EAAE,QAAQ,KAAK,UAAU,EAAE;AACnC,YAAA,OAAO,UAAU;QACnB;AACA,QAAA,OAAO,WAAW;IACpB;8GA5PW,8BAA8B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAA9B,8BAA8B,EAAA,CAAA,CAAA;;2FAA9B,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAD1C;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-platform-module-assessment-management-client-template-picker.component-RFv42PnE.mjs","sources":["../../../../libs/modules/assessment-management/client/src/lib/features/form-template/designer/components/template-picker/template-picker.component.ts","../../../../libs/modules/assessment-management/client/src/lib/features/form-template/designer/components/template-picker/template-picker.component.html"],"sourcesContent":["import { AXCommonModule } from '@acorex/cdk/common';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { AXSearchBoxModule } from '@acorex/components/search-box';\nimport { AXPSettingsService } from '@acorex-platform/framework-client/common';\nimport { AXPPlatformScope } from '@acorex-platform/framework-shared/core';\nimport { CommonModule } from '@angular/common';\nimport {\n Component,\n computed,\n inject,\n model,\n signal,\n ViewEncapsulation,\n ChangeDetectionStrategy\n} from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { orderBy } from 'lodash';\nimport { AXPTemplateWidgetListItem } from './template.provider';\n\nimport { AXTreeViewComponent, AXTreeViewNode, AXTreeViewNodeClickEvent, AXTreeViewNodeToggleEvent } from '@acorex/components/tree-view';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport {\n AXPStateMessageComponent,\n AXPWidgetItemClickEvent,\n AXPWidgetItemComponent,\n AXPWidgetItemData,\n} from '@acorex-platform/framework-client/layout/components';\nimport { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\nimport { RootConfig } from '@acorex-platform/module-assessment-management-client/contracts';\n\nexport interface AXPDisplayWidgetProvided extends AXPTemplateWidgetListItem {\n pinned: boolean;\n}\n\nexport interface AXPCategoryDisplayModel extends AXTreeViewNode {\n id: string;\n title: string;\n parentId?: string;\n childrenCount: number;\n expanded?: boolean;\n}\n\n/**\n * Maps AXPDisplayWidgetProvided to generic AXPWidgetItemData\n */\nfunction mapToWidgetItemData(widget: AXPDisplayWidgetProvided): AXPWidgetItemData {\n return {\n title: widget.title,\n description: widget.description,\n icon: widget.icon ?? 'fa-solid fa-cube',\n isPinned: widget.pinned,\n data: widget,\n };\n}\n\n@Component({\n imports: [\n CommonModule,\n FormsModule,\n //\n AXCommonModule,\n AXButtonModule,\n AXDecoratorModule,\n AXSearchBoxModule,\n AXTreeViewComponent,\n AXTranslationModule,\n AXPWidgetItemComponent,\n AXPStateMessageComponent,\n ],\n templateUrl: './template-picker.component.html',\n changeDetection: ChangeDetectionStrategy.Eager,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AXPTemplateWidgetPickerComponent extends AXBasePageComponent {\n private settingsService = inject(AXPSettingsService);\n private entityService = inject(AXPEntityService);\n private categoryEntityDataAccessor = this.entityService\n .withEntity(RootConfig.module.name, 'Category')\n .data<any, any>();\n\n private readonly expandedCategoriesKey = 'forms:templates:picker:expandedCategories';\n\n // Track expanded category IDs\n private expandedCategoryIds = signal<string[]>([]);\n\n protected override async ngOnInit() {\n super.ngOnInit();\n // Load expanded categories from settings\n const savedExpandedIds = (await this.settingsService.get<string[]>(this.expandedCategoriesKey)) || [];\n this.expandedCategoryIds.set(savedExpandedIds);\n //\n const pinnedWidgets = (await this.settingsService.get<string[]>(this.pinnedSettingKey)) || [];\n this.displayWidgets.set(\n this.widgets.map((c) => ({\n ...c,\n pinned: pinnedWidgets.includes(c.id),\n icon: c.icon ?? 'fa-solid fa-file-invoice',\n })),\n );\n }\n\n private readonly pinnedSettingKey = 'forms:templates:picker:pinned';\n\n protected searchTerm = model('');\n\n // Data properties - populated by popup service\n widgets: AXPTemplateWidgetListItem[] = [];\n\n // Signals\n private displayWidgets = signal<AXPDisplayWidgetProvided[]>([]);\n\n // Signal to track selected widgets\n protected selectedWidgets = signal<AXPDisplayWidgetProvided[]>([]);\n\n // Computed for filtered and ordered widget list\n private orderedList = computed(() => {\n const search = this.searchTerm().toLowerCase();\n const selectedCategory = this.selectedCategory();\n const selectedCategoryId = selectedCategory ? selectedCategory.id : null;\n\n const filterByCategory = (widget: AXPDisplayWidgetProvided) => {\n if (!selectedCategoryId || selectedCategoryId == 'all') return true;\n return selectedCategoryId === widget.group.name;\n };\n\n return orderBy(\n this.displayWidgets().filter((w) => {\n const matchesCategory = filterByCategory(w);\n const matchesSearch =\n !search || w.title.toLowerCase().includes(search) || w.description?.toLowerCase().includes(search);\n return matchesCategory && matchesSearch;\n }),\n ['pinned', 'title'],\n ['desc', 'asc'],\n );\n });\n\n // Pinned and regular lists\n protected pinnedList = computed(() => this.orderedList().filter((c) => c.pinned));\n protected regularList = computed(() => this.orderedList().filter((c) => !c.pinned));\n\n // Mapped data for generic widget items\n protected pinnedWidgetItems = computed(() => this.pinnedList().map(mapToWidgetItemData));\n protected regularWidgetItems = computed(() => this.regularList().map(mapToWidgetItemData));\n\n // Computed property to check if we're in search mode\n protected isSearchMode = computed(() => this.searchTerm().trim().length > 0);\n\n // Computed property to check if there are any results\n protected hasResults = computed(() => this.orderedList().length > 0);\n\n protected handleWidgetClick(clickEvent: AXPWidgetItemClickEvent): void {\n const { event, widget } = clickEvent;\n const originalWidget = widget.data as AXPDisplayWidgetProvided;\n\n if (event.ctrlKey) {\n const currentSelection = this.selectedWidgets();\n const isAlreadySelected = currentSelection.some((w) => w === originalWidget);\n\n if (isAlreadySelected) {\n // Deselect widget if already selected\n this.selectedWidgets.set(currentSelection.filter((w) => w !== originalWidget));\n } else {\n // Add widget to selection\n this.selectedWidgets.set([...currentSelection, originalWidget]);\n }\n } else {\n // If CTRL is not pressed, select only the clicked widget\n this.close({ widgets: [originalWidget] });\n }\n }\n\n protected async handleWidgetPinClick(clickEvent: AXPWidgetItemClickEvent): Promise<void> {\n const { widget } = clickEvent;\n const originalWidget = widget.data as AXPDisplayWidgetProvided;\n\n originalWidget.pinned = !originalWidget.pinned;\n\n // Get the current list of pinned widgets from settings\n let pinnedWidgets = (await this.settingsService.get<string[]>(this.pinnedSettingKey)) || [];\n\n // Update the list of pinned widgets based on the pinned status\n if (originalWidget.pinned) {\n if (!pinnedWidgets.includes(originalWidget.id)) {\n pinnedWidgets.push(originalWidget.id);\n }\n } else {\n pinnedWidgets = pinnedWidgets.filter((name) => name !== originalWidget.id);\n }\n\n // Save the updated list of pinned widgets\n await this.settingsService.scope(AXPPlatformScope.User).set(this.pinnedSettingKey, pinnedWidgets);\n\n // Trigger a re-render of the widgets\n this.displayWidgets.set([...this.displayWidgets()]);\n }\n\n // Check if a widget is selected\n protected isWidgetSelected(widget: AXPDisplayWidgetProvided): boolean {\n return this.selectedWidgets().includes(widget);\n }\n\n // Check if a generic widget item is selected\n protected isWidgetItemSelected(widgetItem: AXPWidgetItemData): boolean {\n const originalWidget = widgetItem.data as AXPDisplayWidgetProvided;\n return this.isWidgetSelected(originalWidget);\n }\n\n protected handleConfirmSelection(): void {\n this.close({ widgets: this.selectedWidgets() });\n }\n\n //#region Category Tree\n\n protected provideLazyTreeView = async (selectedItemId?: string | number): Promise<AXTreeViewNode[]> => {\n if (selectedItemId == 'all') {\n const categories = await this.categoryEntityDataAccessor.query({\n skip: 0,\n take: 1000,\n filter: {\n field: 'parentId',\n operator: {\n type: 'isEmpty',\n },\n value: true,\n },\n });\n const items = categories.items.map((item: any) => ({\n id: item.id,\n title: item.title,\n childrenCount: item.childrenCount ?? 0,\n expanded: this.expandedCategoryIds().includes(item.id),\n }));\n return items;\n } else if (selectedItemId) {\n const categories = await this.categoryEntityDataAccessor.query({\n skip: 0,\n take: 1000,\n filter: {\n field: 'parentId',\n operator: {\n type: 'equal',\n },\n value: selectedItemId as string,\n },\n });\n return categories.items.map((item: any) => ({\n id: item.id,\n title: item.title,\n parentId: item.parentId,\n childrenCount: item.childrenCount ?? 0,\n expanded: this.expandedCategoryIds().includes(item.id),\n }));\n } else {\n return [\n {\n childrenCount: 1,\n id: 'all',\n title: 'All Items',\n expanded: true,\n } as AXPCategoryDisplayModel,\n ];\n }\n };\n\n protected selectedCategory = signal<AXPCategoryDisplayModel | null>(null);\n\n protected handleNodeClick(event: AXTreeViewNodeClickEvent) {\n const item = event.node as AXPCategoryDisplayModel;\n this.selectedCategory.set(item);\n }\n\n protected async handleNodeToggle(event: AXTreeViewNodeToggleEvent) {\n const item = event.node as AXPCategoryDisplayModel;\n const isExpanded = event.node['expanded'] === true;\n const currentExpanded = this.expandedCategoryIds();\n\n if (isExpanded) {\n // Category was expanded - add to expanded list\n if (!currentExpanded.includes(item.id)) {\n const newExpanded = [...currentExpanded, item.id];\n this.expandedCategoryIds.set(newExpanded);\n await this.settingsService.scope(AXPPlatformScope.User).set(this.expandedCategoriesKey, newExpanded);\n }\n } else {\n // Category was collapsed - remove from expanded list\n const newExpanded = currentExpanded.filter((id) => id !== item.id);\n this.expandedCategoryIds.set(newExpanded);\n await this.settingsService.scope(AXPPlatformScope.User).set(this.expandedCategoriesKey, newExpanded);\n }\n }\n\n //#end region\n}\n","<div class=\"flex flex-col lg:h-[60vh]\">\n <div class=\"p-2 surface-lowest border-b flex-none\">\n <ax-search-box\n look=\"fill\"\n placeholder=\"e.g. Button, Text, ...\"\n class=\"ax-sm\"\n [(ngModel)]=\"searchTerm\"\n [delayTime]=\"300\"\n >\n <ax-clear-button></ax-clear-button>\n </ax-search-box>\n </div>\n <div class=\"flex flex-grow h-full\">\n <!-- Category Tree - Hidden in search mode -->\n @if (!isSearchMode()) {\n <div\n class=\"flex h-full p-2 overflow-auto w-1/3 justify-start items-start surface-lowest border-e\"\n >\n <ax-tree-view\n [selectMode]=\"'none'\"\n [dragBehavior]=\"'none'\"\n [showIcons]=\"false\"\n [showChildrenBadge]=\"false\"\n [nodeTemplate]=\"categoryTemplate\"\n [titleField]=\"'title'\"\n [idField]=\"'id'\"\n [expandedField]=\"'expanded'\"\n [datasource]=\"provideLazyTreeView\"\n (onNodeClick)=\"handleNodeClick($event)\"\n (onNodeToggle)=\"handleNodeToggle($event)\"\n class=\"w-full\"\n >\n </ax-tree-view>\n\n <ng-template #categoryTemplate let-node=\"node\">\n @let item = node;\n <ax-icon class=\"fa-solid fa-folder text-yellow-500 fa-fw\"></ax-icon>\n {{ item.title | translate | async }}\n </ng-template>\n </div>\n }\n\n <!-- Widget Grid - Full width in search mode, 2/3 width otherwise -->\n <div\n [class]=\"\n isSearchMode()\n ? 'flex h-full flex-col w-full overflow-hidden'\n : 'flex h-full flex-col w-2/3 overflow-hidden'\n \"\n >\n @if (hasResults()) {\n <div class=\"flex flex-col p-4\">\n <div class=\"grid grid-cols-2 gap-2\">\n @for (widgetItem of pinnedWidgetItems(); track widgetItem.title) {\n <axp-widget-item\n [widget]=\"widgetItem\"\n [isSelected]=\"isWidgetItemSelected(widgetItem)\"\n (onWidgetClick)=\"handleWidgetClick($event)\"\n (onPinClick)=\"handleWidgetPinClick($event)\"\n >\n </axp-widget-item>\n }\n </div>\n @if (pinnedWidgetItems().length) {\n <hr class=\"my-4 border-dashed\" />\n }\n <div class=\"grid grid-cols-2 gap-2\">\n @for (widgetItem of regularWidgetItems(); track widgetItem.title) {\n <axp-widget-item\n [widget]=\"widgetItem\"\n [isSelected]=\"isWidgetItemSelected(widgetItem)\"\n (onWidgetClick)=\"handleWidgetClick($event)\"\n (onPinClick)=\"handleWidgetPinClick($event)\"\n >\n </axp-widget-item>\n }\n </div>\n </div>\n } @else {\n <!-- Empty State -->\n <axp-state-message\n icon=\"fa-light fa-search\"\n [title]=\"\n isSearchMode()\n ? '@form-template-management:designer.components.template-picker.empty-states.no-search-results.title'\n : '@form-template-management:designer.components.template-picker.empty-states.no-category-results.title'\n \"\n [description]=\"\n isSearchMode()\n ? '@form-template-management:designer.components.template-picker.empty-states.no-search-results.description'\n : '@form-template-management:designer.components.template-picker.empty-states.no-category-results.description'\n \"\n >\n @if (isSearchMode()) {\n <ax-button\n look=\"blank\"\n [text]=\"'@form-template-management:designer.components.template-picker.clear-search' | translate | async\"\n class=\"mt-4\"\n (onClick)=\"searchTerm.set('')\"\n ></ax-button>\n }\n </axp-state-message>\n }\n </div>\n </div>\n</div>\n\n@if (selectedWidgets().length) {\n <ax-footer>\n <ax-suffix>\n <ax-button\n look=\"solid\"\n color=\"primary\"\n text=\"{{ selectedWidgets().length }} Selected\"\n (onClick)=\"handleConfirmSelection()\"\n ></ax-button>\n </ax-suffix>\n </ax-footer>\n}\n"],"names":["i1","i2","i3","i5","i6"],"mappings":"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"}